@sap-ux/odata-vocabularies 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +66 -0
  3. package/dist/src/index.d.ts +5 -0
  4. package/dist/src/index.d.ts.map +1 -0
  5. package/dist/src/index.js +26 -0
  6. package/dist/src/index.js.map +1 -0
  7. package/dist/src/loader.d.ts +16 -0
  8. package/dist/src/loader.d.ts.map +1 -0
  9. package/dist/src/loader.js +513 -0
  10. package/dist/src/loader.js.map +1 -0
  11. package/dist/src/resources/Org.OData.Aggregation.V1.d.ts +4 -0
  12. package/dist/src/resources/Org.OData.Aggregation.V1.d.ts.map +1 -0
  13. package/dist/src/resources/Org.OData.Aggregation.V1.js +642 -0
  14. package/dist/src/resources/Org.OData.Aggregation.V1.js.map +1 -0
  15. package/dist/src/resources/Org.OData.Authorization.V1.d.ts +4 -0
  16. package/dist/src/resources/Org.OData.Authorization.V1.d.ts.map +1 -0
  17. package/dist/src/resources/Org.OData.Authorization.V1.js +179 -0
  18. package/dist/src/resources/Org.OData.Authorization.V1.js.map +1 -0
  19. package/dist/src/resources/Org.OData.Capabilities.V1.d.ts +4 -0
  20. package/dist/src/resources/Org.OData.Capabilities.V1.d.ts.map +1 -0
  21. package/dist/src/resources/Org.OData.Capabilities.V1.js +1320 -0
  22. package/dist/src/resources/Org.OData.Capabilities.V1.js.map +1 -0
  23. package/dist/src/resources/Org.OData.Core.V1.d.ts +4 -0
  24. package/dist/src/resources/Org.OData.Core.V1.d.ts.map +1 -0
  25. package/dist/src/resources/Org.OData.Core.V1.js +655 -0
  26. package/dist/src/resources/Org.OData.Core.V1.js.map +1 -0
  27. package/dist/src/resources/Org.OData.JSON.V1.d.ts +4 -0
  28. package/dist/src/resources/Org.OData.JSON.V1.d.ts.map +1 -0
  29. package/dist/src/resources/Org.OData.JSON.V1.js +49 -0
  30. package/dist/src/resources/Org.OData.JSON.V1.js.map +1 -0
  31. package/dist/src/resources/Org.OData.Measures.V1.d.ts +4 -0
  32. package/dist/src/resources/Org.OData.Measures.V1.d.ts.map +1 -0
  33. package/dist/src/resources/Org.OData.Measures.V1.js +90 -0
  34. package/dist/src/resources/Org.OData.Measures.V1.js.map +1 -0
  35. package/dist/src/resources/Org.OData.Repeatability.V1.d.ts +4 -0
  36. package/dist/src/resources/Org.OData.Repeatability.V1.d.ts.map +1 -0
  37. package/dist/src/resources/Org.OData.Repeatability.V1.js +58 -0
  38. package/dist/src/resources/Org.OData.Repeatability.V1.js.map +1 -0
  39. package/dist/src/resources/Org.OData.Temporal.V1.d.ts +4 -0
  40. package/dist/src/resources/Org.OData.Temporal.V1.d.ts.map +1 -0
  41. package/dist/src/resources/Org.OData.Temporal.V1.js +219 -0
  42. package/dist/src/resources/Org.OData.Temporal.V1.js.map +1 -0
  43. package/dist/src/resources/Org.OData.Validation.V1.d.ts +4 -0
  44. package/dist/src/resources/Org.OData.Validation.V1.d.ts.map +1 -0
  45. package/dist/src/resources/Org.OData.Validation.V1.js +176 -0
  46. package/dist/src/resources/Org.OData.Validation.V1.js.map +1 -0
  47. package/dist/src/resources/com.sap.vocabularies.Analytics.v1.d.ts +4 -0
  48. package/dist/src/resources/com.sap.vocabularies.Analytics.v1.d.ts.map +1 -0
  49. package/dist/src/resources/com.sap.vocabularies.Analytics.v1.js +204 -0
  50. package/dist/src/resources/com.sap.vocabularies.Analytics.v1.js.map +1 -0
  51. package/dist/src/resources/com.sap.vocabularies.CDS.v1.d.ts +154 -0
  52. package/dist/src/resources/com.sap.vocabularies.CDS.v1.d.ts.map +1 -0
  53. package/dist/src/resources/com.sap.vocabularies.CDS.v1.js +287 -0
  54. package/dist/src/resources/com.sap.vocabularies.CDS.v1.js.map +1 -0
  55. package/dist/src/resources/com.sap.vocabularies.CodeList.v1.d.ts +4 -0
  56. package/dist/src/resources/com.sap.vocabularies.CodeList.v1.d.ts.map +1 -0
  57. package/dist/src/resources/com.sap.vocabularies.CodeList.v1.js +88 -0
  58. package/dist/src/resources/com.sap.vocabularies.CodeList.v1.js.map +1 -0
  59. package/dist/src/resources/com.sap.vocabularies.Common.v1.d.ts +4 -0
  60. package/dist/src/resources/com.sap.vocabularies.Common.v1.d.ts.map +1 -0
  61. package/dist/src/resources/com.sap.vocabularies.Common.v1.js +1418 -0
  62. package/dist/src/resources/com.sap.vocabularies.Common.v1.js.map +1 -0
  63. package/dist/src/resources/com.sap.vocabularies.Communication.v1.d.ts +4 -0
  64. package/dist/src/resources/com.sap.vocabularies.Communication.v1.d.ts.map +1 -0
  65. package/dist/src/resources/com.sap.vocabularies.Communication.v1.js +482 -0
  66. package/dist/src/resources/com.sap.vocabularies.Communication.v1.js.map +1 -0
  67. package/dist/src/resources/com.sap.vocabularies.DataIntegration.v1.d.ts +4 -0
  68. package/dist/src/resources/com.sap.vocabularies.DataIntegration.v1.d.ts.map +1 -0
  69. package/dist/src/resources/com.sap.vocabularies.DataIntegration.v1.js +90 -0
  70. package/dist/src/resources/com.sap.vocabularies.DataIntegration.v1.js.map +1 -0
  71. package/dist/src/resources/com.sap.vocabularies.DirectEdit.v1.d.ts +4 -0
  72. package/dist/src/resources/com.sap.vocabularies.DirectEdit.v1.d.ts.map +1 -0
  73. package/dist/src/resources/com.sap.vocabularies.DirectEdit.v1.js +72 -0
  74. package/dist/src/resources/com.sap.vocabularies.DirectEdit.v1.js.map +1 -0
  75. package/dist/src/resources/com.sap.vocabularies.Graph.v1.d.ts +4 -0
  76. package/dist/src/resources/com.sap.vocabularies.Graph.v1.d.ts.map +1 -0
  77. package/dist/src/resources/com.sap.vocabularies.Graph.v1.js +90 -0
  78. package/dist/src/resources/com.sap.vocabularies.Graph.v1.js.map +1 -0
  79. package/dist/src/resources/com.sap.vocabularies.HTML5.v1.d.ts +4 -0
  80. package/dist/src/resources/com.sap.vocabularies.HTML5.v1.d.ts.map +1 -0
  81. package/dist/src/resources/com.sap.vocabularies.HTML5.v1.js +98 -0
  82. package/dist/src/resources/com.sap.vocabularies.HTML5.v1.js.map +1 -0
  83. package/dist/src/resources/com.sap.vocabularies.Hierarchy.v1.d.ts +4 -0
  84. package/dist/src/resources/com.sap.vocabularies.Hierarchy.v1.d.ts.map +1 -0
  85. package/dist/src/resources/com.sap.vocabularies.Hierarchy.v1.js +285 -0
  86. package/dist/src/resources/com.sap.vocabularies.Hierarchy.v1.js.map +1 -0
  87. package/dist/src/resources/com.sap.vocabularies.ODM.v1.d.ts +4 -0
  88. package/dist/src/resources/com.sap.vocabularies.ODM.v1.d.ts.map +1 -0
  89. package/dist/src/resources/com.sap.vocabularies.ODM.v1.js +88 -0
  90. package/dist/src/resources/com.sap.vocabularies.ODM.v1.js.map +1 -0
  91. package/dist/src/resources/com.sap.vocabularies.PDF.v1.d.ts +4 -0
  92. package/dist/src/resources/com.sap.vocabularies.PDF.v1.d.ts.map +1 -0
  93. package/dist/src/resources/com.sap.vocabularies.PDF.v1.js +136 -0
  94. package/dist/src/resources/com.sap.vocabularies.PDF.v1.js.map +1 -0
  95. package/dist/src/resources/com.sap.vocabularies.PersonalData.v1.d.ts +4 -0
  96. package/dist/src/resources/com.sap.vocabularies.PersonalData.v1.d.ts.map +1 -0
  97. package/dist/src/resources/com.sap.vocabularies.PersonalData.v1.js +169 -0
  98. package/dist/src/resources/com.sap.vocabularies.PersonalData.v1.js.map +1 -0
  99. package/dist/src/resources/com.sap.vocabularies.Session.v1.d.ts +4 -0
  100. package/dist/src/resources/com.sap.vocabularies.Session.v1.d.ts.map +1 -0
  101. package/dist/src/resources/com.sap.vocabularies.Session.v1.js +89 -0
  102. package/dist/src/resources/com.sap.vocabularies.Session.v1.js.map +1 -0
  103. package/dist/src/resources/com.sap.vocabularies.UI.v1.d.ts +4 -0
  104. package/dist/src/resources/com.sap.vocabularies.UI.v1.d.ts.map +1 -0
  105. package/dist/src/resources/com.sap.vocabularies.UI.v1.js +2021 -0
  106. package/dist/src/resources/com.sap.vocabularies.UI.v1.js.map +1 -0
  107. package/dist/src/resources/index.d.ts +12 -0
  108. package/dist/src/resources/index.d.ts.map +1 -0
  109. package/dist/src/resources/index.js +110 -0
  110. package/dist/src/resources/index.js.map +1 -0
  111. package/dist/src/types/base-types.d.ts +47 -0
  112. package/dist/src/types/base-types.d.ts.map +1 -0
  113. package/dist/src/types/base-types.js +34 -0
  114. package/dist/src/types/base-types.js.map +1 -0
  115. package/dist/src/types/index.d.ts +4 -0
  116. package/dist/src/types/index.d.ts.map +1 -0
  117. package/dist/src/types/index.js +20 -0
  118. package/dist/src/types/index.js.map +1 -0
  119. package/dist/src/types/names.d.ts +133 -0
  120. package/dist/src/types/names.d.ts.map +1 -0
  121. package/dist/src/types/names.js +136 -0
  122. package/dist/src/types/names.js.map +1 -0
  123. package/dist/src/types/vocabulary-service.d.ts +164 -0
  124. package/dist/src/types/vocabulary-service.d.ts.map +1 -0
  125. package/dist/src/types/vocabulary-service.js +19 -0
  126. package/dist/src/types/vocabulary-service.js.map +1 -0
  127. package/dist/src/vocabulary-service.d.ts +251 -0
  128. package/dist/src/vocabulary-service.d.ts.map +1 -0
  129. package/dist/src/vocabulary-service.js +732 -0
  130. package/dist/src/vocabulary-service.js.map +1 -0
  131. package/dist/tsconfig.build.tsbuildinfo +1 -0
  132. package/package.json +65 -0
@@ -0,0 +1,513 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.loadVocabulariesInformation = exports.parseEnumTypeDefinition = void 0;
27
+ const resources_1 = __importStar(require("./resources"));
28
+ const types_1 = require("./types");
29
+ const PROPERTY_PATTERN = /^(\w){1,128}$/;
30
+ const SUPPORTED_VOCABULARY_NAMESPACES = new Set([
31
+ 'Org.OData.Aggregation.V1',
32
+ 'Org.OData.Authorization.V1',
33
+ 'Org.OData.Capabilities.V1',
34
+ 'Org.OData.Core.V1',
35
+ 'Org.OData.Measures.V1',
36
+ 'Org.OData.Repeatability.V1',
37
+ 'Org.OData.Temporal.V1',
38
+ 'Org.OData.Validation.V1',
39
+ 'Org.OData.JSON.V1',
40
+ 'com.sap.vocabularies.Analytics.v1',
41
+ 'com.sap.vocabularies.CDS.v1',
42
+ 'com.sap.vocabularies.CodeList.v1',
43
+ 'com.sap.vocabularies.Common.v1',
44
+ 'com.sap.vocabularies.Communication.v1',
45
+ 'com.sap.vocabularies.DataIntegration.v1',
46
+ 'com.sap.vocabularies.DirectEdit.v1',
47
+ 'com.sap.vocabularies.Graph.v1',
48
+ 'com.sap.vocabularies.ODM.v1',
49
+ 'com.sap.vocabularies.PDF.v1',
50
+ 'com.sap.vocabularies.PersonalData.v1',
51
+ 'com.sap.vocabularies.Hierarchy.v1',
52
+ 'com.sap.vocabularies.Session.v1',
53
+ 'com.sap.vocabularies.UI.v1',
54
+ 'com.sap.vocabularies.HTML5.v1'
55
+ ]);
56
+ let vocabulariesInformationStatic;
57
+ let vocabulariesInformationStaticCds;
58
+ /**
59
+ *
60
+ * @param base Vocabulary object
61
+ * @param raw CSDL object
62
+ * @param prefix Annotation prefix
63
+ */
64
+ function fillBaseProperties(base, raw, prefix = '') {
65
+ var _a;
66
+ const description = raw[`${prefix}@Org.OData.Core.V1.Description`];
67
+ if (description !== undefined) {
68
+ base.description = description;
69
+ }
70
+ const longDescription = raw[`${prefix}@Org.OData.Core.V1.LongDescription`];
71
+ if (longDescription !== undefined) {
72
+ base.longDescription = longDescription;
73
+ }
74
+ const experimental = raw[`${prefix}@com.sap.vocabularies.Common.v1.Experimental`];
75
+ if (experimental !== undefined) {
76
+ base.experimental = experimental;
77
+ }
78
+ // deprecated status
79
+ const revisions = (_a = raw[`${prefix}@Org.OData.Core.V1.Revisions`]) !== null && _a !== void 0 ? _a : [];
80
+ const deprecatedRevisions = revisions.find((revision) => revision.Kind === 'Deprecated');
81
+ if (deprecatedRevisions) {
82
+ base.deprecated = true;
83
+ base.deprecatedDescription = deprecatedRevisions.Description;
84
+ }
85
+ }
86
+ /**
87
+ *
88
+ * @param primitiveType Vocabulary Object
89
+ * @param raw CSDL Object
90
+ */
91
+ function fillPrimitiveTypeProperties(primitiveType, raw) {
92
+ fillBaseProperties(primitiveType, raw);
93
+ if (raw.$UnderlyingType !== undefined) {
94
+ primitiveType.underlyingType = raw.$UnderlyingType;
95
+ }
96
+ }
97
+ /**
98
+ *
99
+ * @param raw CSDL Object
100
+ * @returns Facets
101
+ */
102
+ function getFacets(raw) {
103
+ const facets = {};
104
+ if (raw.$Nullable !== undefined) {
105
+ facets.isNullable = !!raw.$Nullable;
106
+ }
107
+ if (raw.$Precision !== undefined && Number.isInteger(raw.$Precision)) {
108
+ facets.precision = raw.$Precision;
109
+ }
110
+ return Object.keys(facets).length ? facets : undefined;
111
+ }
112
+ /**
113
+ *
114
+ * @param raw CSDL Object
115
+ * @returns Allowed values
116
+ */
117
+ function parseAllowedValues(raw) {
118
+ const rawAllowedValue = raw['@Org.OData.Validation.V1.AllowedValues'];
119
+ if (rawAllowedValue === null || rawAllowedValue === void 0 ? void 0 : rawAllowedValue.length) {
120
+ return rawAllowedValue.map((rawValue) => {
121
+ var _a;
122
+ return ({
123
+ value: rawValue.Value,
124
+ description: rawValue['@Org.OData.Core.V1.Description'],
125
+ longDescription: (_a = rawValue['@Org.OData.Core.V1.LongDescription']) !== null && _a !== void 0 ? _a : ''
126
+ });
127
+ });
128
+ }
129
+ return [];
130
+ }
131
+ /**
132
+ *
133
+ * @param key string
134
+ * @returns boolean
135
+ */
136
+ const isValidKey = (key) => {
137
+ const maxLength = 512;
138
+ if (key.startsWith('$') && key.length <= maxLength) {
139
+ return true;
140
+ }
141
+ if (key.indexOf('@') >= 0 && key.length <= maxLength) {
142
+ return true;
143
+ }
144
+ return false;
145
+ };
146
+ /**
147
+ *
148
+ * @param raw CSDL Object
149
+ * @returns Constraints
150
+ */
151
+ function getConstraints(raw) {
152
+ const constraints = {};
153
+ const allowedValues = parseAllowedValues(raw);
154
+ if (allowedValues === null || allowedValues === void 0 ? void 0 : allowedValues.length) {
155
+ constraints.allowedValues = allowedValues;
156
+ }
157
+ const allowedTerms = raw['@Org.OData.Validation.V1.AllowedTerms'];
158
+ if (allowedTerms === null || allowedTerms === void 0 ? void 0 : allowedTerms.length) {
159
+ constraints.allowedTerms = allowedTerms.map(getFullyQualifiedAllowedTermName);
160
+ }
161
+ const isLanguageDependent = raw['@Org.OData.Core.V1.IsLanguageDependent'];
162
+ if (isLanguageDependent !== undefined) {
163
+ constraints.isLanguageDependent = !!isLanguageDependent;
164
+ }
165
+ const requiresType = raw['@Org.OData.Core.V1.RequiresType'];
166
+ if (requiresType) {
167
+ constraints.requiresType = requiresType;
168
+ }
169
+ const openPropertyTypeConstraints = raw['@Org.OData.Validation.V1.OpenPropertyTypeConstraint'];
170
+ if (openPropertyTypeConstraints) {
171
+ constraints.openPropertyTypeConstraints = openPropertyTypeConstraints;
172
+ }
173
+ return constraints;
174
+ }
175
+ /**
176
+ *
177
+ * @param name Name of the type definition
178
+ * @param raw CSDL Object
179
+ * @returns Vocabulary Object
180
+ */
181
+ function parseTypeDefinition(name, raw) {
182
+ const typeDef = { kind: types_1.TYPE_DEFINITION_KIND, name: name };
183
+ fillPrimitiveTypeProperties(typeDef, raw);
184
+ const facets = getFacets(raw);
185
+ if (facets) {
186
+ typeDef.facets = facets;
187
+ }
188
+ // constraints
189
+ const constraints = getConstraints(raw);
190
+ if (Object.keys(constraints).length) {
191
+ typeDef.constraints = constraints;
192
+ }
193
+ return typeDef;
194
+ }
195
+ /**
196
+ *
197
+ * @param name Name of the enum
198
+ * @param raw CSDL Object
199
+ * @returns Vocabulary Object
200
+ */
201
+ function parseEnumTypeDefinition(name, raw) {
202
+ const enumType = {
203
+ kind: types_1.ENUM_TYPE_KIND,
204
+ name: name,
205
+ isFlags: false,
206
+ values: [],
207
+ deprecated: false
208
+ };
209
+ try {
210
+ fillPrimitiveTypeProperties(enumType, raw);
211
+ enumType.isFlags = raw.$IsFlags === true;
212
+ // scan for enum values
213
+ enumType.values = Object.keys(raw)
214
+ .filter((key) => !isValidKey(key))
215
+ .map((key) => {
216
+ const value = parseInt(raw[key], 10);
217
+ const enumValue = {
218
+ kind: types_1.ENUM_VALUE_KIND,
219
+ name: key,
220
+ value
221
+ };
222
+ fillBaseProperties(enumValue, raw, key);
223
+ return enumValue;
224
+ });
225
+ }
226
+ catch (e) {
227
+ return enumType;
228
+ }
229
+ return enumType;
230
+ }
231
+ exports.parseEnumTypeDefinition = parseEnumTypeDefinition;
232
+ /**
233
+ *
234
+ * @param name Name of the complex type
235
+ * @param raw CSDL Object
236
+ * @returns Vocabulary Object
237
+ */
238
+ function parseComplexType(name, raw) {
239
+ const complexType = { kind: types_1.COMPLEX_TYPE_KIND, name: name, properties: new Map() };
240
+ fillPrimitiveTypeProperties(complexType, raw);
241
+ if (raw.$BaseType !== undefined) {
242
+ complexType.baseType = raw.$BaseType;
243
+ }
244
+ if (raw.$Abstract !== undefined) {
245
+ complexType.isAbstract = !!raw.$Abstract;
246
+ }
247
+ if (raw.$OpenType !== undefined) {
248
+ complexType.isOpenType = !!raw.$OpenType;
249
+ }
250
+ // collect properties
251
+ Object.keys(raw)
252
+ .filter((key) => !isValidKey(key))
253
+ .forEach((key) => {
254
+ var _a;
255
+ const propRaw = raw[key];
256
+ const property = {
257
+ kind: types_1.PROPERTY_KIND,
258
+ name: key,
259
+ type: (_a = propRaw.$Type) !== null && _a !== void 0 ? _a : 'Edm.String',
260
+ isCollection: !!propRaw.$Collection
261
+ };
262
+ fillBaseProperties(property, propRaw);
263
+ if (propRaw.$DefaultValue !== undefined) {
264
+ property.defaultValue = propRaw.$DefaultValue;
265
+ }
266
+ // facets
267
+ const facets = getFacets(propRaw);
268
+ if (facets) {
269
+ property.facets = facets;
270
+ }
271
+ // constraints
272
+ const constraints = getConstraints(propRaw);
273
+ const derivedTypeConstraints = propRaw['@Org.OData.Validation.V1.DerivedTypeConstraint'];
274
+ if (derivedTypeConstraints === null || derivedTypeConstraints === void 0 ? void 0 : derivedTypeConstraints.length) {
275
+ constraints.derivedTypeConstraints = derivedTypeConstraints;
276
+ }
277
+ if (Object.keys(constraints).length) {
278
+ property.constraints = constraints;
279
+ }
280
+ complexType.properties.set(property.name, property);
281
+ });
282
+ return complexType;
283
+ }
284
+ /**
285
+ *
286
+ * @param name Name of the term
287
+ * @param raw CSDL Object
288
+ * @returns Vocabulary Object
289
+ */
290
+ function parseTerm(name, raw) {
291
+ var _a;
292
+ const term = {
293
+ kind: types_1.TERM_KIND,
294
+ name: name,
295
+ type: (_a = raw.$Type) !== null && _a !== void 0 ? _a : 'Edm.String',
296
+ isCollection: !!raw.$Collection
297
+ };
298
+ fillBaseProperties(term, raw);
299
+ if (raw.$DefaultValue !== undefined) {
300
+ term.defaultValue = raw.$DefaultValue;
301
+ }
302
+ if (raw.$AppliesTo !== undefined) {
303
+ term.appliesTo = raw.$AppliesTo;
304
+ }
305
+ if (raw.$BaseTerm !== undefined) {
306
+ term.baseTerm = raw.$BaseTerm;
307
+ }
308
+ if (raw.$CdsName !== undefined) {
309
+ term.cdsName = raw.$CdsName;
310
+ }
311
+ // facets
312
+ const facets = getFacets(raw);
313
+ if (facets) {
314
+ term.facets = facets;
315
+ }
316
+ // constraints
317
+ const constraints = getConstraints(raw);
318
+ if (Object.keys(constraints).length) {
319
+ term.constraints = constraints;
320
+ }
321
+ return term;
322
+ }
323
+ /**
324
+ *
325
+ * @param identifier Name
326
+ * @param element CSDL Object
327
+ * @returns Vocabulary Object
328
+ */
329
+ function parseSchemaElements(identifier, element) {
330
+ if (element.$Kind !== undefined) {
331
+ switch (element.$Kind) {
332
+ case 'EnumType':
333
+ return parseEnumTypeDefinition(identifier, element);
334
+ case 'TypeDefinition':
335
+ return parseTypeDefinition(identifier, element);
336
+ case 'ComplexType':
337
+ return parseComplexType(identifier, element);
338
+ case 'Term':
339
+ return parseTerm(identifier, element);
340
+ default:
341
+ }
342
+ }
343
+ return undefined;
344
+ }
345
+ /**
346
+ *
347
+ * @param includeCds Flag indicating if CDS vocabularies should be loaded
348
+ * @returns Vocabularies
349
+ */
350
+ const loadVocabulariesInformation = (includeCds) => {
351
+ var _a, _b, _c, _d, _e, _f;
352
+ // try to use cache
353
+ if (includeCds && vocabulariesInformationStaticCds) {
354
+ return vocabulariesInformationStaticCds;
355
+ }
356
+ else if (!includeCds && vocabulariesInformationStatic) {
357
+ return vocabulariesInformationStatic;
358
+ }
359
+ const dictionary = new Map();
360
+ const byTarget = new Map();
361
+ const supportedVocabularies = new Map();
362
+ const namespaceByDefaultAlias = new Map();
363
+ const derivedTypesPerType = new Map();
364
+ const upperCaseNameMap = new Map();
365
+ const addToUpperCaseNameMap = (name, propertyName) => {
366
+ const upperCaseName = name.toUpperCase();
367
+ const currentEntry = upperCaseNameMap.get(upperCaseName);
368
+ if (!propertyName) {
369
+ if (!currentEntry || typeof currentEntry === 'string') {
370
+ upperCaseNameMap.set(upperCaseName, name);
371
+ }
372
+ else if (typeof currentEntry === 'object') {
373
+ upperCaseNameMap.set(upperCaseName, Object.assign(currentEntry, { $Self: name }));
374
+ }
375
+ }
376
+ else {
377
+ const upperCasePropName = propertyName.toUpperCase();
378
+ if (!currentEntry) {
379
+ upperCaseNameMap.set(upperCaseName, new Map([['$Self', name]]));
380
+ }
381
+ else if (typeof currentEntry === 'string') {
382
+ upperCaseNameMap.set(upperCaseName, new Map([['$Self', currentEntry]]));
383
+ }
384
+ upperCaseNameMap.get(upperCaseName).set(upperCasePropName, propertyName);
385
+ }
386
+ };
387
+ const getVocabularyUri = (vocabulary) => {
388
+ var _a, _b, _c;
389
+ const links = (_a = vocabulary === null || vocabulary === void 0 ? void 0 : vocabulary['@Org.OData.Core.V1.Links']) !== null && _a !== void 0 ? _a : [];
390
+ const linkMap = new Map();
391
+ for (const link of links) {
392
+ linkMap.set((_b = link.rel) !== null && _b !== void 0 ? _b : '', (_c = link.href) !== null && _c !== void 0 ? _c : '');
393
+ }
394
+ // get url pointing to latest version xml - if not available use alternative
395
+ const latestVersion = linkMap.get('latest-version');
396
+ const alternate = linkMap.get('alternate');
397
+ if (latestVersion === null || latestVersion === void 0 ? void 0 : latestVersion.endsWith('.xml')) {
398
+ return latestVersion;
399
+ }
400
+ else if (alternate === null || alternate === void 0 ? void 0 : alternate.endsWith('.xml')) {
401
+ return alternate;
402
+ }
403
+ else if (latestVersion) {
404
+ return latestVersion;
405
+ }
406
+ else if (alternate) {
407
+ return alternate;
408
+ }
409
+ return '';
410
+ };
411
+ resources_1.NAMESPACE_TO_ALIAS.forEach((alias, namespace) => {
412
+ if (!includeCds && alias === types_1.CDS_VOCABULARY_ALIAS) {
413
+ return;
414
+ }
415
+ addToUpperCaseNameMap(alias);
416
+ addToUpperCaseNameMap(namespace);
417
+ namespaceByDefaultAlias.set(alias, namespace);
418
+ });
419
+ for (const namespace of SUPPORTED_VOCABULARY_NAMESPACES) {
420
+ if (!includeCds && namespace === types_1.CDS_VOCABULARY_NAMESPACE) {
421
+ continue;
422
+ }
423
+ const alias = resources_1.NAMESPACE_TO_ALIAS.get(namespace);
424
+ if (alias) {
425
+ const document = resources_1.default[alias];
426
+ if (document) {
427
+ const vocabulary = document[namespace];
428
+ supportedVocabularies.set(namespace, {
429
+ namespace: namespace,
430
+ defaultAlias: alias,
431
+ defaultUri: getVocabularyUri(vocabulary)
432
+ });
433
+ const properties = Object.keys(vocabulary);
434
+ for (const identifier of properties.filter((property) => PROPERTY_PATTERN.test(property))) {
435
+ const fqName = namespace + '.' + identifier;
436
+ const element = vocabulary[identifier];
437
+ const vocabularyObject = parseSchemaElements(fqName, element);
438
+ if (vocabularyObject) {
439
+ dictionary.set(fqName, vocabularyObject);
440
+ addToUpperCaseNameMap(fqName);
441
+ if (vocabularyObject.kind === types_1.TERM_KIND) {
442
+ for (const targetKind of (_a = vocabularyObject.appliesTo) !== null && _a !== void 0 ? _a : ['']) {
443
+ byTarget.set(targetKind, (_b = byTarget.get(targetKind)) !== null && _b !== void 0 ? _b : new Set());
444
+ (_c = byTarget.get(targetKind)) === null || _c === void 0 ? void 0 : _c.add(fqName);
445
+ }
446
+ }
447
+ else if (vocabularyObject.kind === types_1.COMPLEX_TYPE_KIND) {
448
+ vocabularyObject.properties.forEach((property) => {
449
+ addToUpperCaseNameMap(fqName, property.name);
450
+ });
451
+ const baseType = vocabularyObject.baseType;
452
+ if (baseType) {
453
+ const baseName = (_d = baseType.split('.').pop()) !== null && _d !== void 0 ? _d : '';
454
+ const baseElement = vocabulary[baseName];
455
+ if (baseElement) {
456
+ const vocabularyBaseObject = parseSchemaElements(baseType, baseElement);
457
+ // add property of baseType to fqName
458
+ if ((vocabularyBaseObject === null || vocabularyBaseObject === void 0 ? void 0 : vocabularyBaseObject.kind) === types_1.COMPLEX_TYPE_KIND) {
459
+ vocabularyBaseObject.properties.forEach((property) => {
460
+ addToUpperCaseNameMap(fqName, property.name);
461
+ });
462
+ }
463
+ }
464
+ derivedTypesPerType.set(baseType, (_e = derivedTypesPerType.get(baseType)) !== null && _e !== void 0 ? _e : new Map());
465
+ (_f = derivedTypesPerType.get(baseType)) === null || _f === void 0 ? void 0 : _f.set(fqName, !!vocabularyObject.isAbstract);
466
+ }
467
+ }
468
+ if (vocabularyObject.kind === types_1.ENUM_TYPE_KIND) {
469
+ vocabularyObject.values.forEach((value) => {
470
+ addToUpperCaseNameMap(fqName, value.name);
471
+ });
472
+ }
473
+ }
474
+ }
475
+ }
476
+ }
477
+ }
478
+ const vocabulariesInformation = {
479
+ dictionary,
480
+ byTarget,
481
+ derivedTypesPerType,
482
+ supportedVocabularies,
483
+ namespaceByDefaultAlias,
484
+ upperCaseNameMap
485
+ };
486
+ // fill cache
487
+ if (includeCds) {
488
+ vocabulariesInformationStaticCds = vocabulariesInformation;
489
+ }
490
+ else {
491
+ vocabulariesInformationStatic = vocabulariesInformation;
492
+ }
493
+ return vocabulariesInformation;
494
+ };
495
+ exports.loadVocabulariesInformation = loadVocabulariesInformation;
496
+ /**
497
+ *
498
+ * @param allowedTerm Term name
499
+ * @returns fully qualified term name
500
+ */
501
+ function getFullyQualifiedAllowedTermName(allowedTerm) {
502
+ const segments = allowedTerm.split('.');
503
+ if (segments.length !== 2) {
504
+ return allowedTerm;
505
+ }
506
+ const namespace = resources_1.ALIAS_TO_NAMESPACE.get(segments[0]);
507
+ if (!namespace) {
508
+ return allowedTerm;
509
+ }
510
+ segments[0] = namespace;
511
+ return segments.join('.');
512
+ }
513
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/loader.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,yDAAmF;AAmBnF,mCASiB;AAEjB,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEzC,MAAM,+BAA+B,GAA6B,IAAI,GAAG,CAAC;IACtE,0BAA0B;IAC1B,4BAA4B;IAC5B,2BAA2B;IAC3B,mBAAmB;IACnB,uBAAuB;IACvB,4BAA4B;IAC5B,uBAAuB;IACvB,yBAAyB;IACzB,mBAAmB;IACnB,mCAAmC;IACnC,6BAA6B;IAC7B,kCAAkC;IAClC,gCAAgC;IAChC,uCAAuC;IACvC,yCAAyC;IACzC,oCAAoC;IACpC,+BAA+B;IAC/B,6BAA6B;IAC7B,6BAA6B;IAC7B,sCAAsC;IACtC,mCAAmC;IACnC,iCAAiC;IACjC,4BAA4B;IAC5B,+BAA+B;CAClC,CAAC,CAAC;AAEH,IAAI,6BAAkE,CAAC;AACvE,IAAI,gCAAqE,CAAC;AAE1E;;;;;GAKG;AACH,SAAS,kBAAkB,CACvB,IAA0B,EAC1B,GAAM,EACN,SAAiB,EAAE;;IAEnB,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,MAAM,gCAAgC,CAAC,CAAC;IACnE,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;KAClC;IACD,MAAM,eAAe,GAAG,GAAG,CAAC,GAAG,MAAM,oCAAoC,CAAC,CAAC;IAC3E,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;KAC1C;IACD,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,MAAM,8CAA8C,CAAC,CAAC;IAClF,IAAI,YAAY,KAAK,SAAS,EAAE;QAC5B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;KACpC;IAED,oBAAoB;IACpB,MAAM,SAAS,GAAG,MAAA,GAAG,CAAC,GAAG,MAAM,8BAA8B,CAAC,mCAAI,EAAE,CAAC;IACrE,MAAM,mBAAmB,GAAG,SAAS,CAAC,IAAI,CACtC,CAAC,QAA+C,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,CACtF,CAAC;IACF,IAAI,mBAAmB,EAAE;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,qBAAqB,GAAG,mBAAmB,CAAC,WAAW,CAAC;KAChE;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,2BAA2B,CAAC,aAA4B,EAAE,GAAkB;IACjF,kBAAkB,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IACvC,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE;QACnC,aAAa,CAAC,cAAc,GAAG,GAAG,CAAC,eAAe,CAAC;KACtD;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,GAAkB;IACjC,MAAM,MAAM,GAAW,EAAE,CAAC;IAC1B,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE;QAC7B,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;KACvC;IACD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;QAClE,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC;KACrC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,GAAkC;IAC1D,MAAM,eAAe,GAAG,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtE,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,MAAM,EAAE;QACzB,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,QAA4D,EAAE,EAAE;;YAAC,OAAA,CAAC;gBAC1F,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,WAAW,EAAE,QAAQ,CAAC,gCAAgC,CAAC;gBACvD,eAAe,EAAE,MAAA,QAAQ,CAAC,oCAAoC,CAAC,mCAAI,EAAE;aACxE,CAAC,CAAA;SAAA,CAAC,CAAC;KACP;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;IAC/B,MAAM,SAAS,GAAG,GAAG,CAAC;IACtB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,EAAE;QAChD,OAAO,IAAI,CAAC;KACf;IAED,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,EAAE;QAClD,OAAO,IAAI,CAAC;KACf;IAED,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF;;;;GAIG;AACH,SAAS,cAAc,CAAC,GAAkC;IACtD,MAAM,WAAW,GAAgB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAoB,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC/D,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,MAAM,EAAE;QACvB,WAAW,CAAC,aAAa,GAAG,aAAa,CAAC;KAC7C;IAED,MAAM,YAAY,GAAG,GAAG,CAAC,uCAAuC,CAAC,CAAC;IAClE,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,EAAE;QACtB,WAAW,CAAC,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;KACjF;IAED,MAAM,mBAAmB,GAAG,GAAG,CAAC,wCAAwC,CAAC,CAAC;IAC1E,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACnC,WAAW,CAAC,mBAAmB,GAAG,CAAC,CAAC,mBAAmB,CAAC;KAC3D;IAED,MAAM,YAAY,GAAG,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC5D,IAAI,YAAY,EAAE;QACd,WAAW,CAAC,YAAY,GAAG,YAAY,CAAC;KAC3C;IACD,MAAM,2BAA2B,GAAG,GAAG,CAAC,qDAAqD,CAAC,CAAC;IAC/F,IAAI,2BAA2B,EAAE;QAC7B,WAAW,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;KACzE;IACD,OAAO,WAAW,CAAC;AACvB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,IAAY,EAAE,GAAuB;IAC9D,MAAM,OAAO,GAAmB,EAAE,IAAI,EAAE,4BAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC3E,2BAA2B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,MAAM,EAAE;QACR,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;KAC3B;IACD,cAAc;IACd,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE;QACjC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;KACrC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CAAC,IAAY,EAAE,GAAiB;IACnE,MAAM,QAAQ,GAAa;QACvB,IAAI,EAAE,sBAAc;QACpB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,KAAK;KACpB,CAAC;IACF,IAAI;QACA,2BAA2B,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC3C,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,KAAK,IAAI,CAAC;QAEzC,uBAAuB;QACvB,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;aAC7B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aACjC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YACrC,MAAM,SAAS,GAAc;gBACzB,IAAI,EAAE,uBAAe;gBACrB,IAAI,EAAE,GAAG;gBACT,KAAK;aACR,CAAC;YACF,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACxC,OAAO,SAAS,CAAC;QACrB,CAAC,CAAC,CAAC;KACV;IAAC,OAAO,CAAC,EAAE;QACR,OAAO,QAAQ,CAAC;KACnB;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AA7BD,0DA6BC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,IAAY,EAAE,GAAoB;IACxD,MAAM,WAAW,GAAgB,EAAE,IAAI,EAAE,yBAAiB,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;IAChG,2BAA2B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE;QAC7B,WAAW,CAAC,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC;KACxC;IACD,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE;QAC7B,WAAW,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;KAC5C;IACD,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE;QAC7B,WAAW,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC;KAC5C;IAED,qBAAqB;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACX,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACjC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;;QACb,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,MAAM,QAAQ,GAAwB;YAClC,IAAI,EAAE,qBAAa;YACnB,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,YAAY;YACnC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW;SACtC,CAAC;QACF,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE;YACrC,QAAQ,CAAC,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;SACjD;QACD,SAAS;QACT,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,MAAM,EAAE;YACR,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;SAC5B;QACD,cAAc;QACd,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;QAC5C,MAAM,sBAAsB,GAAG,OAAO,CAAC,gDAAgD,CAAC,CAAC;QACzF,IAAI,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,MAAM,EAAE;YAChC,WAAW,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;SAC/D;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE;YACjC,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;SACtC;QACD,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IACP,OAAO,WAAW,CAAC;AACvB,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,IAAY,EAAE,GAAa;;IAC1C,MAAM,IAAI,GAAS;QACf,IAAI,EAAE,iBAAS;QACf,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,MAAA,GAAG,CAAC,KAAK,mCAAI,YAAY;QAC/B,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW;KAClC,CAAC;IACF,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC9B,IAAI,GAAG,CAAC,aAAa,KAAK,SAAS,EAAE;QACjC,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,aAAa,CAAC;KACzC;IACD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE;QAC9B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC;KACnC;IACD,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,EAAE;QAC7B,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC;KACjC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE;QAC5B,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC;KAC/B;IAED,SAAS;IACT,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,MAAM,EAAE;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;KACxB;IACD,cAAc;IACd,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,EAAE;QACjC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;KAClC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,UAAkB,EAAE,OAAsB;IACnE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;QAC7B,QAAQ,OAAO,CAAC,KAAK,EAAE;YACnB,KAAK,UAAU;gBACX,OAAO,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAExD,KAAK,gBAAgB;gBACjB,OAAO,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAEpD,KAAK,aAAa;gBACd,OAAO,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAEjD,KAAK,MAAM;gBACP,OAAO,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAE1C,QAAQ;SACX;KACJ;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;;;GAIG;AACI,MAAM,2BAA2B,GAAG,CAAC,UAAoB,EAA2B,EAAE;;IACzF,mBAAmB;IACnB,IAAI,UAAU,IAAI,gCAAgC,EAAE;QAChD,OAAO,gCAAgC,CAAC;KAC3C;SAAM,IAAI,CAAC,UAAU,IAAI,6BAA6B,EAAE;QACrD,OAAO,6BAA6B,CAAC;KACxC;IAED,MAAM,UAAU,GAA0D,IAAI,GAAG,EAAE,CAAC;IACpF,MAAM,QAAQ,GAAmE,IAAI,GAAG,EAAE,CAAC;IAC3F,MAAM,qBAAqB,GAAyC,IAAI,GAAG,EAAE,CAAC;IAC9E,MAAM,uBAAuB,GAA2D,IAAI,GAAG,EAAE,CAAC;IAClG,MAAM,mBAAmB,GAGrB,IAAI,GAAG,EAAE,CAAC;IACd,MAAM,gBAAgB,GAA8C,IAAI,GAAG,EAAE,CAAC;IAE9E,MAAM,qBAAqB,GAAG,CAAC,IAAY,EAAE,YAAqB,EAAQ,EAAE;QACxE,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACzD,IAAI,CAAC,YAAY,EAAE;YACf,IAAI,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;gBACnD,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;aAC7C;iBAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;gBACzC,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aACrF;SACJ;aAAM;YACH,MAAM,iBAAiB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;YACrD,IAAI,CAAC,YAAY,EAAE;gBACf,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;aACnE;iBAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;gBACzC,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3E;YACA,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAyB,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;SACrG;IACL,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,UAAe,EAAU,EAAE;;QACjD,MAAM,KAAK,GAAsC,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,0BAA0B,CAAC,mCAAI,EAAE,CAAC;QAChG,MAAM,OAAO,GAAwB,IAAI,GAAG,EAAE,CAAC;QAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,MAAA,IAAI,CAAC,GAAG,mCAAI,EAAE,EAAE,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC;SAChD;QACD,4EAA4E;QAC5E,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,CAAC,MAAM,CAAC,EAAE;YACjC,OAAO,aAAa,CAAC;SACxB;aAAM,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,CAAC,MAAM,CAAC,EAAE;YACpC,OAAO,SAAS,CAAC;SACpB;aAAM,IAAI,aAAa,EAAE;YACtB,OAAO,aAAa,CAAC;SACxB;aAAM,IAAI,SAAS,EAAE;YAClB,OAAO,SAAS,CAAC;SACpB;QACD,OAAO,EAAE,CAAC;IACd,CAAC,CAAC;IAEF,8BAAkB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QAC5C,IAAI,CAAC,UAAU,IAAI,KAAK,KAAK,4BAAoB,EAAE;YAC/C,OAAO;SACV;QACD,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7B,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACjC,uBAAuB,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,KAAK,MAAM,SAAS,IAAI,+BAA+B,EAAE;QACrD,IAAI,CAAC,UAAU,IAAI,SAAS,KAAK,gCAAwB,EAAE;YACvD,SAAS;SACZ;QACD,MAAM,KAAK,GAAG,8BAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,KAAK,EAAE;YACP,MAAM,QAAQ,GAAS,mBAAY,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,QAAQ,EAAE;gBACV,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACvC,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE;oBACjC,SAAS,EAAE,SAAS;oBACpB,YAAY,EAAE,KAAK;oBACnB,UAAU,EAAE,gBAAgB,CAAC,UAAU,CAAC;iBAC3C,CAAC,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC3C,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE;oBACvF,MAAM,MAAM,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,CAAC;oBAC5C,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;oBACvC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;oBAC9D,IAAI,gBAAgB,EAAE;wBAClB,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;wBACzC,qBAAqB,CAAC,MAAM,CAAC,CAAC;wBAC9B,IAAI,gBAAgB,CAAC,IAAI,KAAK,iBAAS,EAAE;4BACrC,KAAK,MAAM,UAAU,IAAI,MAAA,gBAAgB,CAAC,SAAS,mCAAI,CAAC,EAAE,CAAC,EAAE;gCACzD,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE,MAAA,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC,CAAC;gCAChE,MAAA,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,0CAAE,GAAG,CAAC,MAAM,CAAC,CAAC;6BACzC;yBACJ;6BAAM,IAAI,gBAAgB,CAAC,IAAI,KAAK,yBAAiB,EAAE;4BACpD,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gCAC7C,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;4BACjD,CAAC,CAAC,CAAC;4BACH,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC;4BAC3C,IAAI,QAAQ,EAAE;gCACV,MAAM,QAAQ,GAAG,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,mCAAI,EAAE,CAAC;gCACjD,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;gCACzC,IAAI,WAAW,EAAE;oCACb,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oCACxE,qCAAqC;oCACrC,IAAI,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,MAAK,yBAAiB,EAAE;wCAClD,oBAAoB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;4CACjD,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;wCACjD,CAAC,CAAC,CAAC;qCACN;iCACJ;gCACD,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAA,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC,CAAC;gCAClF,MAAA,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,0CAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;6BACjF;yBACJ;wBACD,IAAI,gBAAgB,CAAC,IAAI,KAAK,sBAAc,EAAE;4BAC1C,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gCACtC,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC9C,CAAC,CAAC,CAAC;yBACN;qBACJ;iBACJ;aACJ;SACJ;KACJ;IACD,MAAM,uBAAuB,GAA4B;QACrD,UAAU;QACV,QAAQ;QACR,mBAAmB;QACnB,qBAAqB;QACrB,uBAAuB;QACvB,gBAAgB;KACnB,CAAC;IACF,aAAa;IACb,IAAI,UAAU,EAAE;QACZ,gCAAgC,GAAG,uBAAuB,CAAC;KAC9D;SAAM;QACH,6BAA6B,GAAG,uBAAuB,CAAC;KAC3D;IACD,OAAO,uBAAuB,CAAC;AACnC,CAAC,CAAC;AA7IW,QAAA,2BAA2B,+BA6ItC;AAEF;;;;GAIG;AACH,SAAS,gCAAgC,CAAC,WAAmB;IACzD,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,WAAW,CAAC;KACtB;IACD,MAAM,SAAS,GAAG,8BAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAoB,CAAC,CAAC;IACzE,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,WAAW,CAAC;KACtB;IACD,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IACxB,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { CSDL } from '@sap-ux/vocabularies/CSDL';
2
+ declare const _default: CSDL;
3
+ export default _default;
4
+ //# sourceMappingURL=Org.OData.Aggregation.V1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Org.OData.Aggregation.V1.d.ts","sourceRoot":"","sources":["../../../src/resources/Org.OData.Aggregation.V1.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;;AAEtD,wBA+qBU"}