UNPKG

pailingual-odata

Version:

TypeScript client for OData v4 services

50 lines 2.25 kB
(function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "./query", "./collectionSource", "./singleSource", "./utils"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const query_1 = require("./query"); const collectionSource_1 = require("./collectionSource"); const singleSource_1 = require("./singleSource"); const utils_1 = require("./utils"); class ApiContextImpl { constructor(__metadata, __options) { this.__metadata = __metadata; this.__options = __options; this.generate(); } generate() { const apiMetaData = this.__metadata; const opt = this.__options; for (let p in apiMetaData.entitySets) { const esMetadata = apiMetaData.entitySets[p]; Object.defineProperty(this, p, { get() { let query = query_1.Query.create(apiMetaData, esMetadata, opt); query = query.navigate(p, esMetadata); return new collectionSource_1.CollectionSource(esMetadata, apiMetaData, query); } }); } for (let p in apiMetaData.singletons) { const sMetadata = apiMetaData.singletons[p]; Object.defineProperty(this, p, { get() { let query = query_1.Query.create(apiMetaData, sMetadata, opt) .navigate(p, sMetadata); return new singleSource_1.SingleSource(sMetadata, apiMetaData, query); } }); } utils_1.generateOperations(this, () => query_1.Query.create(apiMetaData, null, opt), apiMetaData, undefined); } } exports.ApiContextImpl = ApiContextImpl; }); //# sourceMappingURL=apiContext.js.map