angular-odata
Version:
Client side OData typescript library for Angular
76 lines • 9.08 kB
JavaScript
import { CsdlAnnotable } from './csdl-annotation';
export class CsdlReference extends CsdlAnnotable {
Uri;
Include;
IncludeAnnotations;
constructor({ Uri, Include, IncludeAnnotations, Annotation, }) {
super({ Annotation });
this.Uri = Uri;
this.Include = Include?.map((i) => new CsdlInclude(i));
this.IncludeAnnotations = IncludeAnnotations?.map((i) => new CsdlIncludeAnnotations(i));
}
toJson() {
const json = { ...super.toJson(), Uri: this.Uri };
if (Array.isArray(this.Include) && this.Include.length > 0) {
json['Include'] = this.Include.map((i) => i.toJson());
}
if (Array.isArray(this.IncludeAnnotations) &&
this.IncludeAnnotations.length > 0) {
json['IncludeAnnotations'] = this.IncludeAnnotations.map((i) => i.toJson());
}
return json;
}
toConfig(base) {
return {
...super.toConfig(),
uri: this.Uri,
includes: this.Include?.map((i) => i.toConfig()),
includeAnnotations: this.IncludeAnnotations?.map((i) => i.toConfig()),
};
}
}
export class CsdlInclude {
Namespace;
Alias;
constructor({ Namespace, Alias }) {
this.Namespace = Namespace;
this.Alias = Alias;
}
toJson() {
return {
Namespace: this.Namespace,
Alias: this.Alias,
};
}
toConfig() {
return {
namespace: this.Namespace,
alias: this.Alias,
};
}
}
export class CsdlIncludeAnnotations {
TermNamespace;
Qualifier;
TargetNamespace;
constructor({ TermNamespace, Qualifier, TargetNamespace, }) {
this.TermNamespace = TermNamespace;
this.Qualifier = Qualifier;
this.TargetNamespace = TargetNamespace;
}
toJson() {
return {
TermNamespace: this.TermNamespace,
Qualifier: this.Qualifier,
TargetNamespace: this.TargetNamespace,
};
}
toConfig() {
return {
termNamespace: this.TermNamespace,
qualifier: this.Qualifier,
targetNamespace: this.TargetNamespace,
};
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NkbC1yZWZlcmVuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLW9kYXRhL3NyYy9saWIvbWV0YWRhdGEvY3NkbC9jc2RsLXJlZmVyZW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLGFBQWMsU0FBUSxhQUFhO0lBQzlDLEdBQUcsQ0FBUztJQUNaLE9BQU8sQ0FBaUI7SUFDeEIsa0JBQWtCLENBQTRCO0lBQzlDLFlBQVksRUFDVixHQUFHLEVBQ0gsT0FBTyxFQUNQLGtCQUFrQixFQUNsQixVQUFVLEdBTVg7UUFDQyxLQUFLLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxrQkFBa0IsRUFBRSxHQUFHLENBQy9DLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUNyQyxDQUFDO0lBQ0osQ0FBQztJQUVRLE1BQU07UUFDYixNQUFNLElBQUksR0FBMkIsRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzFFLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDM0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsSUFDRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztZQUN0QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDbEMsQ0FBQztZQUNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUM3RCxDQUFDLENBQUMsTUFBTSxFQUFFLENBQ1gsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFUSxRQUFRLENBQUMsSUFBK0I7UUFDL0MsT0FBTztZQUNMLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRTtZQUNuQixHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUc7WUFDYixRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoRCxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDbkQsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sV0FBVztJQUN0QixTQUFTLENBQVM7SUFDbEIsS0FBSyxDQUFVO0lBQ2YsWUFBWSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXlDO1FBQ3JFLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTztZQUNMLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztZQUN6QixLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7U0FDbEIsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsYUFBYSxDQUFTO0lBQ3RCLFNBQVMsQ0FBVTtJQUNuQixlQUFlLENBQVU7SUFDekIsWUFBWSxFQUNWLGFBQWEsRUFDYixTQUFTLEVBQ1QsZUFBZSxHQUtoQjtRQUNDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNqQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDekIsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1NBQ3RDLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU87WUFDTCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDakMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3pCLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtTQUN0QyxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVmZXJlbmNlQ29uZmlnIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgQ3NkbEFubm90YWJsZSB9IGZyb20gJy4vY3NkbC1hbm5vdGF0aW9uJztcblxuZXhwb3J0IGNsYXNzIENzZGxSZWZlcmVuY2UgZXh0ZW5kcyBDc2RsQW5ub3RhYmxlIHtcbiAgVXJpOiBzdHJpbmc7XG4gIEluY2x1ZGU/OiBDc2RsSW5jbHVkZVtdO1xuICBJbmNsdWRlQW5ub3RhdGlvbnM/OiBDc2RsSW5jbHVkZUFubm90YXRpb25zW107XG4gIGNvbnN0cnVjdG9yKHtcbiAgICBVcmksXG4gICAgSW5jbHVkZSxcbiAgICBJbmNsdWRlQW5ub3RhdGlvbnMsXG4gICAgQW5ub3RhdGlvbixcbiAgfToge1xuICAgIFVyaTogc3RyaW5nO1xuICAgIEluY2x1ZGU/OiBhbnlbXTtcbiAgICBJbmNsdWRlQW5ub3RhdGlvbnM/OiBhbnlbXTtcbiAgICBBbm5vdGF0aW9uPzogYW55W107XG4gIH0pIHtcbiAgICBzdXBlcih7IEFubm90YXRpb24gfSk7XG4gICAgdGhpcy5VcmkgPSBVcmk7XG4gICAgdGhpcy5JbmNsdWRlID0gSW5jbHVkZT8ubWFwKChpKSA9PiBuZXcgQ3NkbEluY2x1ZGUoaSkpO1xuICAgIHRoaXMuSW5jbHVkZUFubm90YXRpb25zID0gSW5jbHVkZUFubm90YXRpb25zPy5tYXAoXG4gICAgICAoaSkgPT4gbmV3IENzZGxJbmNsdWRlQW5ub3RhdGlvbnMoaSksXG4gICAgKTtcbiAgfVxuXG4gIG92ZXJyaWRlIHRvSnNvbigpIHtcbiAgICBjb25zdCBqc29uOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0geyAuLi5zdXBlci50b0pzb24oKSwgVXJpOiB0aGlzLlVyaSB9O1xuICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMuSW5jbHVkZSkgJiYgdGhpcy5JbmNsdWRlLmxlbmd0aCA+IDApIHtcbiAgICAgIGpzb25bJ0luY2x1ZGUnXSA9IHRoaXMuSW5jbHVkZS5tYXAoKGkpID0+IGkudG9Kc29uKCkpO1xuICAgIH1cbiAgICBpZiAoXG4gICAgICBBcnJheS5pc0FycmF5KHRoaXMuSW5jbHVkZUFubm90YXRpb25zKSAmJlxuICAgICAgdGhpcy5JbmNsdWRlQW5ub3RhdGlvbnMubGVuZ3RoID4gMFxuICAgICkge1xuICAgICAganNvblsnSW5jbHVkZUFubm90YXRpb25zJ10gPSB0aGlzLkluY2x1ZGVBbm5vdGF0aW9ucy5tYXAoKGkpID0+XG4gICAgICAgIGkudG9Kc29uKCksXG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4ganNvbjtcbiAgfVxuXG4gIG92ZXJyaWRlIHRvQ29uZmlnKGJhc2U/OiBQYXJ0aWFsPFJlZmVyZW5jZUNvbmZpZz4pIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4uc3VwZXIudG9Db25maWcoKSxcbiAgICAgIHVyaTogdGhpcy5VcmksXG4gICAgICBpbmNsdWRlczogdGhpcy5JbmNsdWRlPy5tYXAoKGkpID0+IGkudG9Db25maWcoKSksXG4gICAgICBpbmNsdWRlQW5ub3RhdGlvbnM6IHRoaXMuSW5jbHVkZUFubm90YXRpb25zPy5tYXAoKGkpID0+IGkudG9Db25maWcoKSksXG4gICAgfSBhcyBSZWZlcmVuY2VDb25maWc7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENzZGxJbmNsdWRlIHtcbiAgTmFtZXNwYWNlOiBzdHJpbmc7XG4gIEFsaWFzPzogc3RyaW5nO1xuICBjb25zdHJ1Y3Rvcih7IE5hbWVzcGFjZSwgQWxpYXMgfTogeyBOYW1lc3BhY2U6IHN0cmluZzsgQWxpYXM/OiBzdHJpbmcgfSkge1xuICAgIHRoaXMuTmFtZXNwYWNlID0gTmFtZXNwYWNlO1xuICAgIHRoaXMuQWxpYXMgPSBBbGlhcztcbiAgfVxuXG4gIHRvSnNvbigpIHtcbiAgICByZXR1cm4ge1xuICAgICAgTmFtZXNwYWNlOiB0aGlzLk5hbWVzcGFjZSxcbiAgICAgIEFsaWFzOiB0aGlzLkFsaWFzLFxuICAgIH07XG4gIH1cblxuICB0b0NvbmZpZygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbmFtZXNwYWNlOiB0aGlzLk5hbWVzcGFjZSxcbiAgICAgIGFsaWFzOiB0aGlzLkFsaWFzLFxuICAgIH07XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIENzZGxJbmNsdWRlQW5ub3RhdGlvbnMge1xuICBUZXJtTmFtZXNwYWNlOiBzdHJpbmc7XG4gIFF1YWxpZmllcj86IHN0cmluZztcbiAgVGFyZ2V0TmFtZXNwYWNlPzogc3RyaW5nO1xuICBjb25zdHJ1Y3Rvcih7XG4gICAgVGVybU5hbWVzcGFjZSxcbiAgICBRdWFsaWZpZXIsXG4gICAgVGFyZ2V0TmFtZXNwYWNlLFxuICB9OiB7XG4gICAgVGVybU5hbWVzcGFjZTogc3RyaW5nO1xuICAgIFF1YWxpZmllcj86IHN0cmluZztcbiAgICBUYXJnZXROYW1lc3BhY2U/OiBzdHJpbmc7XG4gIH0pIHtcbiAgICB0aGlzLlRlcm1OYW1lc3BhY2UgPSBUZXJtTmFtZXNwYWNlO1xuICAgIHRoaXMuUXVhbGlmaWVyID0gUXVhbGlmaWVyO1xuICAgIHRoaXMuVGFyZ2V0TmFtZXNwYWNlID0gVGFyZ2V0TmFtZXNwYWNlO1xuICB9XG5cbiAgdG9Kc29uKCkge1xuICAgIHJldHVybiB7XG4gICAgICBUZXJtTmFtZXNwYWNlOiB0aGlzLlRlcm1OYW1lc3BhY2UsXG4gICAgICBRdWFsaWZpZXI6IHRoaXMuUXVhbGlmaWVyLFxuICAgICAgVGFyZ2V0TmFtZXNwYWNlOiB0aGlzLlRhcmdldE5hbWVzcGFjZSxcbiAgICB9O1xuICB9XG5cbiAgdG9Db25maWcoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRlcm1OYW1lc3BhY2U6IHRoaXMuVGVybU5hbWVzcGFjZSxcbiAgICAgIHF1YWxpZmllcjogdGhpcy5RdWFsaWZpZXIsXG4gICAgICB0YXJnZXROYW1lc3BhY2U6IHRoaXMuVGFyZ2V0TmFtZXNwYWNlLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==