angular-odata
Version:
Client side OData typescript library for Angular
95 lines • 13.2 kB
JavaScript
export const $ID = '$id';
export const ODATA_ID = '@odata.id';
// SEGMENTS
export const $METADATA = '$metadata';
export const $BATCH = '$batch';
export const $REF = '$ref';
export const $VALUE = '$value';
export const $COUNT = '$count';
export const $QUERY = '$query';
export const $INLINECOUNT = '$inlinecount';
// HTTP HEADERS
export const IF_MATCH_HEADER = 'If-Match';
export const IF_NONE_MATCH_HEADER = 'If-None-Match';
export const CONTENT_TYPE = 'Content-Type';
export const HTTP11 = 'HTTP/1.1';
export const ACCEPT = 'Accept';
export const PREFER = 'Prefer';
export const CACHE_CONTROL = 'Cache-Control';
export const CACHE_CONTROL_HEADERS = [
CACHE_CONTROL,
CACHE_CONTROL.toLowerCase(),
];
export const ODATA_VERSION = 'OData-Version';
export const ODATA_VERSION_HEADERS = [
ODATA_VERSION,
ODATA_VERSION.toLowerCase(),
'dataserviceversion',
];
export const LOCATION_HEADER = 'Location';
export const LOCATION_HEADERS = [
LOCATION_HEADER,
LOCATION_HEADER.toLowerCase(),
];
export const ODATA_ENTITYID = 'OData-EntityId';
export const ODATA_ENTITYID_HEADERS = [
ODATA_ENTITYID,
ODATA_ENTITYID.toLowerCase(),
];
export const PREFERENCE_APPLIED = 'Preference-Applied';
export const PREFERENCE_APPLIED_HEADERS = [
PREFERENCE_APPLIED,
PREFERENCE_APPLIED.toLowerCase(),
];
export const ETAG_HEADER = 'ETag';
export const ETAG_HEADERS = [ETAG_HEADER, ETAG_HEADER.toLowerCase()];
export const RETRY_AFTER = 'Retry-After';
export const RETRY_AFTER_HEADERS = [RETRY_AFTER, RETRY_AFTER.toLowerCase()];
// HTTP HEADER VALUES
export const APPLICATION_JSON = 'application/json';
export const APPLICATION_HTTP = 'application/http';
export const APPLICATION_XHTML = 'application/xhtml+xml';
export const APPLICATION_XML = 'application/xml';
export const TEXT_PLAIN = 'text/plain';
export const CONTENT_TYPE_ANY = '*/*';
export const MULTIPART_MIXED = 'multipart/mixed';
export const MULTIPART_MIXED_BOUNDARY = 'multipart/mixed;boundary=';
export const CONTENT_TRANSFER_ENCODING = 'Content-Transfer-Encoding';
export const CONTENT_ID = 'Content-ID';
export const MAX_AGE = 'max-age';
// VERSIONS
export const VERSION_4_0 = '4.0';
export const VERSION_3_0 = '3.0';
export const VERSION_2_0 = '2.0';
export const DEFAULT_VERSION = VERSION_4_0;
export const BINARY = 'binary';
export const BOUNDARY_PREFIX_SUFFIX = '--';
export const BATCH_PREFIX = 'batch_';
export const CHANGESET_PREFIX = 'changeset_';
export const DEFAULT_METADATA = 'minimal';
export const DEFAULT_STRIP_METADATA = 'full';
export const DEFAULT_FETCH_POLICY = 'network-only';
export const DEFAULT_TIMEOUT = 60; // Time in seconds
export const CALLABLE_BINDING_PARAMETER = 'bindingParameter';
export const XSSI_PREFIX = /^\)\]\}',?\n/;
// URL PARTS
export const QUERY_SEPARATOR = '?';
export const PARAM_SEPARATOR = '&';
export const VALUE_SEPARATOR = '=';
export const PATH_SEPARATOR = '/';
export const ODATA_PARAM_PREFIX = '$';
export const ODATA_ALIAS_PREFIX = '@';
export const NEWLINE = '\r\n';
export const NEWLINE_REGEXP = /\r?\n/;
export const CACHE_KEY_SEPARATOR = ':';
// Models
export const CID_FIELD_NAME = '_cid';
export const EVENT_SPLITTER = /\s+/;
// Standard vocabularies for annotating OData services
// https://github.com/oasis-tcs/odata-vocabularies/blob/main/vocabularies/Org.OData.Core.V1.md
export const COMPUTED = /.*Computed$/;
export const OPTIMISTIC_CONCURRENCY = /.*OptimisticConcurrency$/;
export const DESCRIPTION = /.*Description$/;
export const LONG_DESCRIPTION = /.*LongDescription$/;
export const OPTIONARL_PARAMETER = /.*OptionalParameter$/;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1vZGF0YS9zcmMvbGliL2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDO0FBQ3pCLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUM7QUFFcEMsV0FBVztBQUNYLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUM7QUFDckMsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUMvQixNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDO0FBQzNCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUM7QUFDL0IsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUMvQixNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUM7QUFFM0MsZUFBZTtBQUNmLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxVQUFVLENBQUM7QUFDMUMsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsZUFBZSxDQUFDO0FBQ3BELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUM7QUFDM0MsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQztBQUNqQyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBQy9CLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUM7QUFDL0IsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQztBQUM3QyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUNuQyxhQUFhO0lBQ2IsYUFBYSxDQUFDLFdBQVcsRUFBRTtDQUM1QixDQUFD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QUM3RCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDO0FBRTFDLFlBQVk7QUFDWixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFDO0FBQ25DLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUM7QUFDbkMsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLEdBQUcsQ0FBQztBQUNuQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDO0FBQ2xDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQUN0QyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUM7QUFFdEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQztBQUM5QixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLEdBQUcsQ0FBQztBQUV2QyxTQUFTO0FBQ1QsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQztBQUNyQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDO0FBRXBDLHNEQUFzRDtBQUN0RCw4RkFBOEY7QUFFOUYsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQztBQUN0QyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRywwQkFBMEIsQ0FBQztBQUNqRSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFDNUMsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsb0JBQW9CLENBQUM7QUFDckQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgJElEID0gJyRpZCc7XG5leHBvcnQgY29uc3QgT0RBVEFfSUQgPSAnQG9kYXRhLmlkJztcblxuLy8gU0VHTUVOVFNcbmV4cG9ydCBjb25zdCAkTUVUQURBVEEgPSAnJG1ldGFkYXRhJztcbmV4cG9ydCBjb25zdCAkQkFUQ0ggPSAnJGJhdGNoJztcbmV4cG9ydCBjb25zdCAkUkVGID0gJyRyZWYnO1xuZXhwb3J0IGNvbnN0ICRWQUxVRSA9ICckdmFsdWUnO1xuZXhwb3J0IGNvbnN0ICRDT1VOVCA9ICckY291bnQnO1xuZXhwb3J0IGNvbnN0ICRRVUVSWSA9ICckcXVlcnknO1xuZXhwb3J0IGNvbnN0ICRJTkxJTkVDT1VOVCA9ICckaW5saW5lY291bnQnO1xuXG4vLyBIVFRQIEhFQURFUlNcbmV4cG9ydCBjb25zdCBJRl9NQVRDSF9IRUFERVIgPSAnSWYtTWF0Y2gnO1xuZXhwb3J0IGNvbnN0IElGX05PTkVfTUFUQ0hfSEVBREVSID0gJ0lmLU5vbmUtTWF0Y2gnO1xuZXhwb3J0IGNvbnN0IENPTlRFTlRfVFlQRSA9ICdDb250ZW50LVR5cGUnO1xuZXhwb3J0IGNvbnN0IEhUVFAxMSA9ICdIVFRQLzEuMSc7XG5leHBvcnQgY29uc3QgQUNDRVBUID0gJ0FjY2VwdCc7XG5leHBvcnQgY29uc3QgUFJFRkVSID0gJ1ByZWZlcic7XG5leHBvcnQgY29uc3QgQ0FDSEVfQ09OVFJPTCA9ICdDYWNoZS1Db250cm9sJztcbmV4cG9ydCBjb25zdCBDQUNIRV9DT05UUk9MX0hFQURFUlMgPSBbXG4gIENBQ0hFX0NPTlRST0wsXG4gIENBQ0hFX0NPTlRST0wudG9Mb3dlckNhc2UoKSxcbl07XG5leHBvcnQgY29uc3QgT0RBVEFfVkVSU0lPTiA9ICdPRGF0YS1WZXJzaW9uJztcbmV4cG9ydCBjb25zdCBPREFUQV9WRVJTSU9OX0hFQURFUlMgPSBbXG4gIE9EQVRBX1ZFUlNJT04sXG4gIE9EQVRBX1ZFUlNJT04udG9Mb3dlckNhc2UoKSxcbiAgJ2RhdGFzZXJ2aWNldmVyc2lvbicsXG5dO1xuZXhwb3J0IGNvbnN0IExPQ0FUSU9OX0hFQURFUiA9ICdMb2NhdGlvbic7XG5leHBvcnQgY29uc3QgTE9DQVRJT05fSEVBREVSUyA9IFtcbiAgTE9DQVRJT05fSEVBREVSLFxuICBMT0NBVElPTl9IRUFERVIudG9Mb3dlckNhc2UoKSxcbl07XG5leHBvcnQgY29uc3QgT0RBVEFfRU5USVRZSUQgPSAnT0RhdGEtRW50aXR5SWQnO1xuZXhwb3J0IGNvbnN0IE9EQVRBX0VOVElUWUlEX0hFQURFUlMgPSBbXG4gIE9EQVRBX0VOVElUWUlELFxuICBPREFUQV9FTlRJVFlJRC50b0xvd2VyQ2FzZSgpLFxuXTtcbmV4cG9ydCBjb25zdCBQUkVGRVJFTkNFX0FQUExJRUQgPSAnUHJlZmVyZW5jZS1BcHBsaWVkJztcbmV4cG9ydCBjb25zdCBQUkVGRVJFTkNFX0FQUExJRURfSEVBREVSUyA9IFtcbiAgUFJFRkVSRU5DRV9BUFBMSUVELFxuICBQUkVGRVJFTkNFX0FQUExJRUQudG9Mb3dlckNhc2UoKSxcbl07XG5leHBvcnQgY29uc3QgRVRBR19IRUFERVIgPSAnRVRhZyc7XG5leHBvcnQgY29uc3QgRVRBR19IRUFERVJTID0gW0VUQUdfSEVBREVSLCBFVEFHX0hFQURFUi50b0xvd2VyQ2FzZSgpXTtcblxuZXhwb3J0IGNvbnN0IFJFVFJZX0FGVEVSID0gJ1JldHJ5LUFmdGVyJztcbmV4cG9ydCBjb25zdCBSRVRSWV9BRlRFUl9IRUFERVJTID0gW1JFVFJZX0FGVEVSLCBSRVRSWV9BRlRFUi50b0xvd2VyQ2FzZSgpXTtcblxuLy8gSFRUUCBIRUFERVIgVkFMVUVTXG5leHBvcnQgY29uc3QgQVBQTElDQVRJT05fSlNPTiA9ICdhcHBsaWNhdGlvbi9qc29uJztcbmV4cG9ydCBjb25zdCBBUFBMSUNBVElPTl9IVFRQID0gJ2FwcGxpY2F0aW9uL2h0dHAnO1xuZXhwb3J0IGNvbnN0IEFQUExJQ0FUSU9OX1hIVE1MID0gJ2FwcGxpY2F0aW9uL3hodG1sK3htbCc7XG5leHBvcnQgY29uc3QgQVBQTElDQVRJT05fWE1MID0gJ2FwcGxpY2F0aW9uL3htbCc7XG5leHBvcnQgY29uc3QgVEVYVF9QTEFJTiA9ICd0ZXh0L3BsYWluJztcbmV4cG9ydCBjb25zdCBDT05URU5UX1RZUEVfQU5ZID0gJyovKic7XG5leHBvcnQgY29uc3QgTVVMVElQQVJUX01JWEVEID0gJ211bHRpcGFydC9taXhlZCc7XG5leHBvcnQgY29uc3QgTVVMVElQQVJUX01JWEVEX0JPVU5EQVJZID0gJ211bHRpcGFydC9taXhlZDtib3VuZGFyeT0nO1xuZXhwb3J0IGNvbnN0IENPTlRFTlRfVFJBTlNGRVJfRU5DT0RJTkcgPSAnQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZyc7XG5leHBvcnQgY29uc3QgQ09OVEVOVF9JRCA9ICdDb250ZW50LUlEJztcbmV4cG9ydCBjb25zdCBNQVhfQUdFID0gJ21heC1hZ2UnO1xuXG4vLyBWRVJTSU9OU1xuZXhwb3J0IGNvbnN0IFZFUlNJT05fNF8wID0gJzQuMCc7XG5leHBvcnQgY29uc3QgVkVSU0lPTl8zXzAgPSAnMy4wJztcbmV4cG9ydCBjb25zdCBWRVJTSU9OXzJfMCA9ICcyLjAnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfVkVSU0lPTiA9IFZFUlNJT05fNF8wO1xuXG5leHBvcnQgY29uc3QgQklOQVJZID0gJ2JpbmFyeSc7XG5leHBvcnQgY29uc3QgQk9VTkRBUllfUFJFRklYX1NVRkZJWCA9ICctLSc7XG5leHBvcnQgY29uc3QgQkFUQ0hfUFJFRklYID0gJ2JhdGNoXyc7XG5leHBvcnQgY29uc3QgQ0hBTkdFU0VUX1BSRUZJWCA9ICdjaGFuZ2VzZXRfJztcbmV4cG9ydCBjb25zdCBERUZBVUxUX01FVEFEQVRBID0gJ21pbmltYWwnO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfU1RSSVBfTUVUQURBVEEgPSAnZnVsbCc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9GRVRDSF9QT0xJQ1kgPSAnbmV0d29yay1vbmx5JztcbmV4cG9ydCBjb25zdCBERUZBVUxUX1RJTUVPVVQgPSA2MDsgLy8gVGltZSBpbiBzZWNvbmRzXG5leHBvcnQgY29uc3QgQ0FMTEFCTEVfQklORElOR19QQVJBTUVURVIgPSAnYmluZGluZ1BhcmFtZXRlcic7XG5leHBvcnQgY29uc3QgWFNTSV9QUkVGSVggPSAvXlxcKVxcXVxcfScsP1xcbi87XG5cbi8vIFVSTCBQQVJUU1xuZXhwb3J0IGNvbnN0IFFVRVJZX1NFUEFSQVRPUiA9ICc/JztcbmV4cG9ydCBjb25zdCBQQVJBTV9TRVBBUkFUT1IgPSAnJic7XG5leHBvcnQgY29uc3QgVkFMVUVfU0VQQVJBVE9SID0gJz0nO1xuZXhwb3J0IGNvbnN0IFBBVEhfU0VQQVJBVE9SID0gJy8nO1xuZXhwb3J0IGNvbnN0IE9EQVRBX1BBUkFNX1BSRUZJWCA9ICckJztcbmV4cG9ydCBjb25zdCBPREFUQV9BTElBU19QUkVGSVggPSAnQCc7XG5cbmV4cG9ydCBjb25zdCBORVdMSU5FID0gJ1xcclxcbic7XG5leHBvcnQgY29uc3QgTkVXTElORV9SRUdFWFAgPSAvXFxyP1xcbi87XG5leHBvcnQgY29uc3QgQ0FDSEVfS0VZX1NFUEFSQVRPUiA9ICc6JztcblxuLy8gTW9kZWxzXG5leHBvcnQgY29uc3QgQ0lEX0ZJRUxEX05BTUUgPSAnX2NpZCc7XG5leHBvcnQgY29uc3QgRVZFTlRfU1BMSVRURVIgPSAvXFxzKy87XG5cbi8vIFN0YW5kYXJkIHZvY2FidWxhcmllcyBmb3IgYW5ub3RhdGluZyBPRGF0YSBzZXJ2aWNlc1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL29hc2lzLXRjcy9vZGF0YS12b2NhYnVsYXJpZXMvYmxvYi9tYWluL3ZvY2FidWxhcmllcy9PcmcuT0RhdGEuQ29yZS5WMS5tZFxuXG5leHBvcnQgY29uc3QgQ09NUFVURUQgPSAvLipDb21wdXRlZCQvO1xuZXhwb3J0IGNvbnN0IE9QVElNSVNUSUNfQ09OQ1VSUkVOQ1kgPSAvLipPcHRpbWlzdGljQ29uY3VycmVuY3kkLztcbmV4cG9ydCBjb25zdCBERVNDUklQVElPTiA9IC8uKkRlc2NyaXB0aW9uJC87XG5leHBvcnQgY29uc3QgTE9OR19ERVNDUklQVElPTiA9IC8uKkxvbmdEZXNjcmlwdGlvbiQvO1xuZXhwb3J0IGNvbnN0IE9QVElPTkFSTF9QQVJBTUVURVIgPSAvLipPcHRpb25hbFBhcmFtZXRlciQvO1xuIl19