angular-odata-es5
Version:
OData service for Angular (es5 version)
51 lines • 1.79 kB
JavaScript
var ODataUtils = /** @class */ (function () {
function ODataUtils() {
}
ODataUtils.convertObjectToString = function (obj) {
var properties = [];
for (var prop in obj) {
if (obj.hasOwnProperty(prop) && obj[prop] !== undefined) {
var value = ODataUtils.quoteValue(obj[prop]);
properties.push(prop + "=" + value);
}
}
return properties.join(', ');
};
ODataUtils.quoteValue = function (value) {
// check if GUID (UUID) type
if (/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(value)) {
return value;
}
// check if string
if (typeof value === 'string') {
var escaped = value.replace(/'/g, '\'\'');
return "'" + escaped + "'";
}
// check if boolean or number
if (typeof value === 'boolean' || typeof value === 'number') {
return "" + value;
}
var parts = [];
Object.getOwnPropertyNames(value).forEach(function (propertyName) {
var propertyValue = value[propertyName];
parts.push(propertyName + "=" + ODataUtils.quoteValue(propertyValue));
});
return parts.length > 0 ? parts.join(', ') : "" + value;
};
ODataUtils.tryParseInt = function (input) {
if (input !== null && !isNaN(input)) {
var parsed = parseInt(input, 10);
return {
valid: !isNaN(parsed),
value: parsed
};
}
return {
valid: false,
value: NaN
};
};
return ODataUtils;
}());
export { ODataUtils };
//# sourceMappingURL=angularODataUtils.js.map