UNPKG

pailingual-odata

Version:

TypeScript client for OData v4 services

47 lines (46 loc) 1.82 kB
import { Query } from "./query"; import { CollectionSource } from "./collectionSource"; import { SingleSource } from "./singleSource"; import { generateOperations } from "./utils"; var ApiContextImpl = /** @class */ (function () { function ApiContextImpl(__metadata, __options) { this.__metadata = __metadata; this.__options = __options; this.generate(); } ApiContextImpl.prototype.generate = function () { var apiMetaData = this.__metadata; var opt = this.__options; var _loop_1 = function (p) { var esMetadata = apiMetaData.entitySets[p]; Object.defineProperty(this_1, p, { get: function () { var query = Query.create(apiMetaData, esMetadata, opt); query = query.navigate(p, esMetadata); return new CollectionSource(esMetadata, apiMetaData, query); } }); }; var this_1 = this; for (var p in apiMetaData.entitySets) { _loop_1(p); } var _loop_2 = function (p) { var sMetadata = apiMetaData.singletons[p]; Object.defineProperty(this_2, p, { get: function () { var query = Query.create(apiMetaData, sMetadata, opt) .navigate(p, sMetadata); return new SingleSource(sMetadata, apiMetaData, query); } }); }; var this_2 = this; for (var p in apiMetaData.singletons) { _loop_2(p); } generateOperations(this, function () { return Query.create(apiMetaData, null, opt); }, apiMetaData, undefined); }; return ApiContextImpl; }()); export { ApiContextImpl };