UNPKG

angular-odata

Version:

Client side OData typescript library for Angular

49 lines 2.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CsdlEntityContainer = void 0; const csdl_entity_set_1 = require("./csdl-entity-set"); const csdl_singleton_1 = require("./csdl-singleton"); const csdl_function_action_1 = require("./csdl-function-action"); const csdl_annotation_1 = require("./csdl-annotation"); class CsdlEntityContainer extends csdl_annotation_1.CsdlAnnotable { constructor(schema, { Name, Extend, EntitySet, Singleton, FunctionImport, ActionImport, Annotation, }) { super({ Annotation }); this.schema = schema; this.Name = Name; this.Extend = Extend; this.EntitySet = EntitySet === null || EntitySet === void 0 ? void 0 : EntitySet.map((e) => new csdl_entity_set_1.CsdlEntitySet(this, e)); this.Singleton = Singleton === null || Singleton === void 0 ? void 0 : Singleton.map((s) => new csdl_singleton_1.CsdlSingleton(this, s)); this.FunctionImport = FunctionImport === null || FunctionImport === void 0 ? void 0 : FunctionImport.map((f) => new csdl_function_action_1.CsdlFunctionImport(this, f)); this.ActionImport = ActionImport === null || ActionImport === void 0 ? void 0 : ActionImport.map((a) => new csdl_function_action_1.CsdlActionImport(this, a)); } toJson() { const json = Object.assign({}, super.toJson()); if (this.Extend !== undefined) { json['Extend'] = this.Extend; } if (Array.isArray(this.EntitySet) && this.EntitySet.length > 0) { json['EntitySet'] = this.EntitySet.map((a) => a.toJson()); } if (Array.isArray(this.Singleton) && this.Singleton.length > 0) { json['Singleton'] = this.Singleton.map((a) => a.toJson()); } if (Array.isArray(this.FunctionImport) && this.FunctionImport.length > 0) { json['FunctionImport'] = this.FunctionImport.map((a) => a.toJson()); } if (Array.isArray(this.ActionImport) && this.ActionImport.length > 0) { json['ActionImport'] = this.ActionImport.map((a) => a.toJson()); } return json; } name() { return `${this.Name}`; } namespace() { return `${this.schema.Namespace}`; } fullName() { return `${this.schema.Namespace}.${this.Name}`; } } exports.CsdlEntityContainer = CsdlEntityContainer; //# sourceMappingURL=csdl-entity-container.js.map