pailingual-odata
Version:
TypeScript client for OData v4 services
49 lines (48 loc) • 1.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var query_1 = require("./query");
var collectionSource_1 = require("./collectionSource");
var singleSource_1 = require("./singleSource");
var utils_1 = require("./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_1.Query.create(apiMetaData, esMetadata, opt);
query = query.navigate(p, esMetadata);
return new collectionSource_1.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_1.Query.create(apiMetaData, sMetadata, opt)
.navigate(p, sMetadata);
return new singleSource_1.SingleSource(sMetadata, apiMetaData, query);
}
});
};
var this_2 = this;
for (var p in apiMetaData.singletons) {
_loop_2(p);
}
utils_1.generateOperations(this, function () { return query_1.Query.create(apiMetaData, null, opt); }, apiMetaData, undefined);
};
return ApiContextImpl;
}());
exports.ApiContextImpl = ApiContextImpl;