@sap-ux/odata-vocabularies 0.1.5 → 0.2.0

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.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export * from './types/vocabulary-service';
2
2
  export { VocabularyNamespace, VocabularyAlias } from './resources/index';
3
- export { Namespace, COMPLEX_TYPE_KIND, ENUM_TYPE_KIND, TERM_KIND, TYPE_DEFINITION_KIND } from './types/base-types';
3
+ export { Namespace, COMPLEX_TYPE_KIND, ENUM_TYPE_KIND, TERM_KIND, TYPE_DEFINITION_KIND } from '@sap-ux/odata-annotation-core-types';
4
4
  export { VocabularyService } from './vocabulary-service';
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACnH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EACH,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,SAAS,EACT,oBAAoB,EACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -16,11 +16,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.VocabularyService = exports.TYPE_DEFINITION_KIND = exports.TERM_KIND = exports.ENUM_TYPE_KIND = exports.COMPLEX_TYPE_KIND = void 0;
18
18
  __exportStar(require("./types/vocabulary-service"), exports);
19
- var base_types_1 = require("./types/base-types");
20
- Object.defineProperty(exports, "COMPLEX_TYPE_KIND", { enumerable: true, get: function () { return base_types_1.COMPLEX_TYPE_KIND; } });
21
- Object.defineProperty(exports, "ENUM_TYPE_KIND", { enumerable: true, get: function () { return base_types_1.ENUM_TYPE_KIND; } });
22
- Object.defineProperty(exports, "TERM_KIND", { enumerable: true, get: function () { return base_types_1.TERM_KIND; } });
23
- Object.defineProperty(exports, "TYPE_DEFINITION_KIND", { enumerable: true, get: function () { return base_types_1.TYPE_DEFINITION_KIND; } });
19
+ var odata_annotation_core_types_1 = require("@sap-ux/odata-annotation-core-types");
20
+ Object.defineProperty(exports, "COMPLEX_TYPE_KIND", { enumerable: true, get: function () { return odata_annotation_core_types_1.COMPLEX_TYPE_KIND; } });
21
+ Object.defineProperty(exports, "ENUM_TYPE_KIND", { enumerable: true, get: function () { return odata_annotation_core_types_1.ENUM_TYPE_KIND; } });
22
+ Object.defineProperty(exports, "TERM_KIND", { enumerable: true, get: function () { return odata_annotation_core_types_1.TERM_KIND; } });
23
+ Object.defineProperty(exports, "TYPE_DEFINITION_KIND", { enumerable: true, get: function () { return odata_annotation_core_types_1.TYPE_DEFINITION_KIND; } });
24
24
  var vocabulary_service_1 = require("./vocabulary-service");
25
25
  Object.defineProperty(exports, "VocabularyService", { enumerable: true, get: function () { return vocabulary_service_1.VocabularyService; } });
26
26
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAA2C;AAE3C,iDAAmH;AAA/F,+GAAA,iBAAiB,OAAA;AAAE,4GAAA,cAAc,OAAA;AAAE,uGAAA,SAAS,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AACtF,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAA2C;AAE3C,mFAM6C;AAJzC,gIAAA,iBAAiB,OAAA;AACjB,6HAAA,cAAc,OAAA;AACd,wHAAA,SAAS,OAAA;AACT,mIAAA,oBAAoB,OAAA;AAExB,2DAAyD;AAAhD,uHAAA,iBAAiB,OAAA"}
package/dist/loader.d.ts CHANGED
@@ -8,6 +8,7 @@ import type { EnumType, VocabulariesInformation } from './types';
8
8
  */
9
9
  export declare function parseEnumTypeDefinition(name: string, raw: EnumTypeBase): EnumType;
10
10
  /**
11
+ * Loads vocbulary information.
11
12
  *
12
13
  * @param includeCds Flag indicating if CDS vocabularies should be loaded
13
14
  * @returns Vocabularies
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKR,YAAY,EAIf,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAKR,QAAQ,EAWR,uBAAuB,EAC1B,MAAM,SAAS,CAAC;AAyMjB;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,QAAQ,CA6BjF;AA0HD;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,gBAAiB,OAAO,KAAG,uBA6IlE,CAAC"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAKR,YAAY,EAIf,MAAM,2BAA2B,CAAC;AAInC,OAAO,KAAK,EAGR,QAAQ,EASR,uBAAuB,EAC1B,MAAM,SAAS,CAAC;AA6MjB;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,QAAQ,CA6BjF;AAoUD;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,gBAAiB,OAAO,KAAG,uBA8ClE,CAAC"}
package/dist/loader.js CHANGED
@@ -26,6 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.loadVocabulariesInformation = exports.parseEnumTypeDefinition = void 0;
27
27
  const resources_1 = __importStar(require("./resources"));
28
28
  const types_1 = require("./types");
29
+ const odata_annotation_core_types_1 = require("@sap-ux/odata-annotation-core-types");
29
30
  const PROPERTY_PATTERN = /^(\w){1,128}$/;
30
31
  const SUPPORTED_VOCABULARY_NAMESPACES = new Set([
31
32
  'Org.OData.Aggregation.V1',
@@ -53,8 +54,7 @@ const SUPPORTED_VOCABULARY_NAMESPACES = new Set([
53
54
  'com.sap.vocabularies.UI.v1',
54
55
  'com.sap.vocabularies.HTML5.v1'
55
56
  ]);
56
- let vocabulariesInformationStatic;
57
- let vocabulariesInformationStaticCds;
57
+ const vocabulariesInformationStatic = new Map();
58
58
  /**
59
59
  *
60
60
  * @param base Vocabulary object
@@ -183,7 +183,7 @@ function getConstraints(raw) {
183
183
  * @returns Vocabulary Object
184
184
  */
185
185
  function parseTypeDefinition(name, raw) {
186
- const typeDef = { kind: types_1.TYPE_DEFINITION_KIND, name: name };
186
+ const typeDef = { kind: odata_annotation_core_types_1.TYPE_DEFINITION_KIND, name: name };
187
187
  fillPrimitiveTypeProperties(typeDef, raw);
188
188
  const facets = getFacets(raw);
189
189
  if (facets) {
@@ -204,7 +204,7 @@ function parseTypeDefinition(name, raw) {
204
204
  */
205
205
  function parseEnumTypeDefinition(name, raw) {
206
206
  const enumType = {
207
- kind: types_1.ENUM_TYPE_KIND,
207
+ kind: odata_annotation_core_types_1.ENUM_TYPE_KIND,
208
208
  name: name,
209
209
  isFlags: false,
210
210
  values: [],
@@ -240,7 +240,7 @@ exports.parseEnumTypeDefinition = parseEnumTypeDefinition;
240
240
  * @returns Vocabulary Object
241
241
  */
242
242
  function parseComplexType(name, raw) {
243
- const complexType = { kind: types_1.COMPLEX_TYPE_KIND, name: name, properties: new Map() };
243
+ const complexType = { kind: odata_annotation_core_types_1.COMPLEX_TYPE_KIND, name: name, properties: new Map() };
244
244
  fillPrimitiveTypeProperties(complexType, raw);
245
245
  if (raw.$BaseType !== undefined) {
246
246
  complexType.baseType = raw.$BaseType;
@@ -251,6 +251,10 @@ function parseComplexType(name, raw) {
251
251
  if (raw.$OpenType !== undefined) {
252
252
  complexType.isOpenType = !!raw.$OpenType;
253
253
  }
254
+ const constraints = getConstraints(raw);
255
+ if (Object.keys(constraints).length) {
256
+ complexType.constraints = constraints;
257
+ }
254
258
  // collect properties
255
259
  Object.keys(raw)
256
260
  .filter((key) => !isValidKey(key))
@@ -258,7 +262,7 @@ function parseComplexType(name, raw) {
258
262
  var _a;
259
263
  const propRaw = raw[key];
260
264
  const property = {
261
- kind: types_1.PROPERTY_KIND,
265
+ kind: odata_annotation_core_types_1.PROPERTY_KIND,
262
266
  name: key,
263
267
  type: (_a = propRaw.$Type) !== null && _a !== void 0 ? _a : 'Edm.String',
264
268
  isCollection: !!propRaw.$Collection
@@ -294,7 +298,7 @@ function parseComplexType(name, raw) {
294
298
  function parseTerm(name, raw) {
295
299
  var _a;
296
300
  const term = {
297
- kind: types_1.TERM_KIND,
301
+ kind: odata_annotation_core_types_1.TERM_KIND,
298
302
  name: name,
299
303
  type: (_a = raw.$Type) !== null && _a !== void 0 ? _a : 'Edm.String',
300
304
  isCollection: !!raw.$Collection
@@ -347,18 +351,194 @@ function parseSchemaElements(identifier, element) {
347
351
  return undefined;
348
352
  }
349
353
  /**
354
+ * Appends name and property name to the given uppercase names map.
355
+ *
356
+ * @param upperCaseNameMap map where keys are names in uppercase and value is the original name itself or a map with properties names where keys are property names in uppercase and values are original property names
357
+ * @param name vocabulary object name
358
+ * @param propertyName vocabulary object property name
359
+ */
360
+ const addToUpperCaseNameMap = (upperCaseNameMap, name, propertyName) => {
361
+ const upperCaseName = name.toUpperCase();
362
+ const currentEntry = upperCaseNameMap.get(upperCaseName);
363
+ if (!propertyName) {
364
+ if (!currentEntry || typeof currentEntry === 'string') {
365
+ upperCaseNameMap.set(upperCaseName, name);
366
+ }
367
+ else if (typeof currentEntry === 'object') {
368
+ upperCaseNameMap.set(upperCaseName, Object.assign(currentEntry, { $Self: name }));
369
+ }
370
+ }
371
+ else {
372
+ let newEntry = new Map();
373
+ if (!currentEntry) {
374
+ newEntry.set('$Self', name);
375
+ }
376
+ else if (typeof currentEntry === 'string') {
377
+ newEntry.set('$Self', currentEntry);
378
+ }
379
+ else {
380
+ newEntry = currentEntry;
381
+ }
382
+ newEntry.set(propertyName.toUpperCase(), propertyName);
383
+ upperCaseNameMap.set(upperCaseName, newEntry);
384
+ }
385
+ };
386
+ /**
387
+ * Extracts vocabulary url from links provided in the given vocabulary information.
388
+ *
389
+ * @param vocabulary vocabulary information object
390
+ * @returns url
391
+ */
392
+ const getVocabularyUri = (vocabulary) => {
393
+ var _a, _b, _c;
394
+ const links = (_a = vocabulary === null || vocabulary === void 0 ? void 0 : vocabulary['@Org.OData.Core.V1.Links']) !== null && _a !== void 0 ? _a : [];
395
+ const linkMap = new Map();
396
+ for (const link of links) {
397
+ linkMap.set((_b = link.rel) !== null && _b !== void 0 ? _b : '', (_c = link.href) !== null && _c !== void 0 ? _c : '');
398
+ }
399
+ // get url pointing to latest version xml - if not available use alternative
400
+ const latestVersion = linkMap.get('latest-version');
401
+ const alternate = linkMap.get('alternate');
402
+ if (latestVersion === null || latestVersion === void 0 ? void 0 : latestVersion.endsWith('.xml')) {
403
+ return latestVersion;
404
+ }
405
+ else if (alternate === null || alternate === void 0 ? void 0 : alternate.endsWith('.xml')) {
406
+ return alternate;
407
+ }
408
+ else if (latestVersion) {
409
+ return latestVersion;
410
+ }
411
+ else if (alternate) {
412
+ return alternate;
413
+ }
414
+ return '';
415
+ };
416
+ /**
417
+ * Prepares vocabulary object data loader.
418
+ *
419
+ * @param maps object with maps where data is loaded
420
+ * @param maps.byTarget definitions names grouped by target kind
421
+ * @param maps.derivedTypesPerType map with types derivation information
422
+ * @param maps.dictionary main vocabulary object map
423
+ * @param maps.upperCaseNameMap map with names in upperCase representation
424
+ * @param vocabulary vocabulary definitions
425
+ * @returns loader function
426
+ */
427
+ const getVocabularyObjectLoader = (maps, vocabulary) =>
428
+ /**
429
+ * Collects data of the given vocabulary object.
430
+ *
431
+ * @param vocabularyObject object to process
432
+ * @param fqName fully qualified object name
433
+ */
434
+ (vocabularyObject, fqName) => {
435
+ var _a, _b, _c, _d, _e, _f;
436
+ const { byTarget, derivedTypesPerType, dictionary, upperCaseNameMap } = maps;
437
+ dictionary.set(fqName, vocabularyObject);
438
+ addToUpperCaseNameMap(upperCaseNameMap, fqName);
439
+ switch (vocabularyObject.kind) {
440
+ case odata_annotation_core_types_1.TERM_KIND: {
441
+ for (const targetKind of (_a = vocabularyObject.appliesTo) !== null && _a !== void 0 ? _a : ['']) {
442
+ byTarget.set(targetKind, (_b = byTarget.get(targetKind)) !== null && _b !== void 0 ? _b : new Set());
443
+ (_c = byTarget.get(targetKind)) === null || _c === void 0 ? void 0 : _c.add(fqName);
444
+ }
445
+ break;
446
+ }
447
+ case odata_annotation_core_types_1.COMPLEX_TYPE_KIND: {
448
+ vocabularyObject.properties.forEach((property) => {
449
+ addToUpperCaseNameMap(upperCaseNameMap, fqName, property.name);
450
+ });
451
+ const baseType = vocabularyObject.baseType;
452
+ if (!baseType) {
453
+ break;
454
+ }
455
+ const baseName = (_d = baseType.split('.').pop()) !== null && _d !== void 0 ? _d : '';
456
+ const baseElement = vocabulary[baseName];
457
+ if (baseElement) {
458
+ const vocabularyBaseObject = parseSchemaElements(baseType, baseElement);
459
+ // add property of baseType to fqName
460
+ if ((vocabularyBaseObject === null || vocabularyBaseObject === void 0 ? void 0 : vocabularyBaseObject.kind) === odata_annotation_core_types_1.COMPLEX_TYPE_KIND) {
461
+ vocabularyBaseObject.properties.forEach((property) => {
462
+ addToUpperCaseNameMap(upperCaseNameMap, fqName, property.name);
463
+ });
464
+ }
465
+ }
466
+ derivedTypesPerType.set(baseType, (_e = derivedTypesPerType.get(baseType)) !== null && _e !== void 0 ? _e : new Map());
467
+ (_f = derivedTypesPerType.get(baseType)) === null || _f === void 0 ? void 0 : _f.set(fqName, !!vocabularyObject.isAbstract);
468
+ break;
469
+ }
470
+ case odata_annotation_core_types_1.ENUM_TYPE_KIND: {
471
+ vocabularyObject.values.forEach((value) => {
472
+ addToUpperCaseNameMap(upperCaseNameMap, fqName, value.name);
473
+ });
474
+ break;
475
+ }
476
+ default: {
477
+ return;
478
+ }
479
+ }
480
+ };
481
+ /**
482
+ * Prepares vocabulary data loader.
483
+ *
484
+ * @param maps object with maps where data is loaded
485
+ * @param maps.byTarget definitions names grouped by target kind
486
+ * @param maps.derivedTypesPerType map with types derivation information
487
+ * @param maps.dictionary main vocabulary object map
488
+ * @param maps.supportedVocabularies map of supported vocabularies
489
+ * @param maps.upperCaseNameMap map with names in upperCase representation
490
+ * @param includeCds flag indicating if CDS vocabularies should be loaded
491
+ * @returns loader function
492
+ */
493
+ const getVocabularyLoader = (maps, includeCds) =>
494
+ /**
495
+ * Vocabulary data loader for a specific namespace.
496
+ *
497
+ * @param namespace namespace name
498
+ */
499
+ (namespace) => {
500
+ const { supportedVocabularies } = maps;
501
+ if (!includeCds && namespace === types_1.CDS_VOCABULARY_NAMESPACE) {
502
+ return;
503
+ }
504
+ const alias = resources_1.NAMESPACE_TO_ALIAS.get(namespace);
505
+ if (!alias) {
506
+ return;
507
+ }
508
+ const document = resources_1.default[alias];
509
+ if (!document) {
510
+ return;
511
+ }
512
+ const vocabulary = document[namespace];
513
+ supportedVocabularies.set(namespace, {
514
+ namespace,
515
+ defaultAlias: alias,
516
+ defaultUri: getVocabularyUri(vocabulary)
517
+ });
518
+ const objectLoader = getVocabularyObjectLoader(maps, vocabulary);
519
+ const properties = Object.keys(vocabulary);
520
+ for (const identifier of properties.filter((property) => PROPERTY_PATTERN.test(property))) {
521
+ const fqName = namespace + '.' + identifier;
522
+ const element = vocabulary[identifier];
523
+ const vocabularyObject = parseSchemaElements(fqName, element);
524
+ if (!vocabularyObject) {
525
+ continue;
526
+ }
527
+ objectLoader(vocabularyObject, fqName);
528
+ }
529
+ };
530
+ /**
531
+ * Loads vocbulary information.
350
532
  *
351
533
  * @param includeCds Flag indicating if CDS vocabularies should be loaded
352
534
  * @returns Vocabularies
353
535
  */
354
536
  const loadVocabulariesInformation = (includeCds) => {
355
- var _a, _b, _c, _d, _e, _f;
356
537
  // try to use cache
357
- if (includeCds && vocabulariesInformationStaticCds) {
358
- return vocabulariesInformationStaticCds;
359
- }
360
- else if (!includeCds && vocabulariesInformationStatic) {
361
- return vocabulariesInformationStatic;
538
+ const cacheKey = includeCds ? 'withCDS' : '';
539
+ const cachedData = vocabulariesInformationStatic.get(cacheKey);
540
+ if (cachedData) {
541
+ return cachedData;
362
542
  }
363
543
  const dictionary = new Map();
364
544
  const byTarget = new Map();
@@ -366,119 +546,19 @@ const loadVocabulariesInformation = (includeCds) => {
366
546
  const namespaceByDefaultAlias = new Map();
367
547
  const derivedTypesPerType = new Map();
368
548
  const upperCaseNameMap = new Map();
369
- const addToUpperCaseNameMap = (name, propertyName) => {
370
- const upperCaseName = name.toUpperCase();
371
- const currentEntry = upperCaseNameMap.get(upperCaseName);
372
- if (!propertyName) {
373
- if (!currentEntry || typeof currentEntry === 'string') {
374
- upperCaseNameMap.set(upperCaseName, name);
375
- }
376
- else if (typeof currentEntry === 'object') {
377
- upperCaseNameMap.set(upperCaseName, Object.assign(currentEntry, { $Self: name }));
378
- }
379
- }
380
- else {
381
- const upperCasePropName = propertyName.toUpperCase();
382
- if (!currentEntry) {
383
- upperCaseNameMap.set(upperCaseName, new Map([['$Self', name]]));
384
- }
385
- else if (typeof currentEntry === 'string') {
386
- upperCaseNameMap.set(upperCaseName, new Map([['$Self', currentEntry]]));
387
- }
388
- upperCaseNameMap.get(upperCaseName).set(upperCasePropName, propertyName);
389
- }
390
- };
391
- const getVocabularyUri = (vocabulary) => {
392
- var _a, _b, _c;
393
- const links = (_a = vocabulary === null || vocabulary === void 0 ? void 0 : vocabulary['@Org.OData.Core.V1.Links']) !== null && _a !== void 0 ? _a : [];
394
- const linkMap = new Map();
395
- for (const link of links) {
396
- linkMap.set((_b = link.rel) !== null && _b !== void 0 ? _b : '', (_c = link.href) !== null && _c !== void 0 ? _c : '');
397
- }
398
- // get url pointing to latest version xml - if not available use alternative
399
- const latestVersion = linkMap.get('latest-version');
400
- const alternate = linkMap.get('alternate');
401
- if (latestVersion === null || latestVersion === void 0 ? void 0 : latestVersion.endsWith('.xml')) {
402
- return latestVersion;
403
- }
404
- else if (alternate === null || alternate === void 0 ? void 0 : alternate.endsWith('.xml')) {
405
- return alternate;
406
- }
407
- else if (latestVersion) {
408
- return latestVersion;
409
- }
410
- else if (alternate) {
411
- return alternate;
412
- }
413
- return '';
414
- };
415
549
  resources_1.NAMESPACE_TO_ALIAS.forEach((alias, namespace) => {
416
550
  if (!includeCds && alias === types_1.CDS_VOCABULARY_ALIAS) {
417
551
  return;
418
552
  }
419
- addToUpperCaseNameMap(alias);
420
- addToUpperCaseNameMap(namespace);
553
+ addToUpperCaseNameMap(upperCaseNameMap, alias);
554
+ addToUpperCaseNameMap(upperCaseNameMap, namespace);
421
555
  namespaceByDefaultAlias.set(alias, namespace);
422
556
  });
557
+ const vocabularyLoader = getVocabularyLoader({ byTarget, derivedTypesPerType, dictionary, supportedVocabularies, upperCaseNameMap }, includeCds);
423
558
  for (const namespace of SUPPORTED_VOCABULARY_NAMESPACES) {
424
- if (!includeCds && namespace === types_1.CDS_VOCABULARY_NAMESPACE) {
425
- continue;
426
- }
427
- const alias = resources_1.NAMESPACE_TO_ALIAS.get(namespace);
428
- if (alias) {
429
- const document = resources_1.default[alias];
430
- if (document) {
431
- const vocabulary = document[namespace];
432
- supportedVocabularies.set(namespace, {
433
- namespace: namespace,
434
- defaultAlias: alias,
435
- defaultUri: getVocabularyUri(vocabulary)
436
- });
437
- const properties = Object.keys(vocabulary);
438
- for (const identifier of properties.filter((property) => PROPERTY_PATTERN.test(property))) {
439
- const fqName = namespace + '.' + identifier;
440
- const element = vocabulary[identifier];
441
- const vocabularyObject = parseSchemaElements(fqName, element);
442
- if (vocabularyObject) {
443
- dictionary.set(fqName, vocabularyObject);
444
- addToUpperCaseNameMap(fqName);
445
- if (vocabularyObject.kind === types_1.TERM_KIND) {
446
- for (const targetKind of (_a = vocabularyObject.appliesTo) !== null && _a !== void 0 ? _a : ['']) {
447
- byTarget.set(targetKind, (_b = byTarget.get(targetKind)) !== null && _b !== void 0 ? _b : new Set());
448
- (_c = byTarget.get(targetKind)) === null || _c === void 0 ? void 0 : _c.add(fqName);
449
- }
450
- }
451
- else if (vocabularyObject.kind === types_1.COMPLEX_TYPE_KIND) {
452
- vocabularyObject.properties.forEach((property) => {
453
- addToUpperCaseNameMap(fqName, property.name);
454
- });
455
- const baseType = vocabularyObject.baseType;
456
- if (baseType) {
457
- const baseName = (_d = baseType.split('.').pop()) !== null && _d !== void 0 ? _d : '';
458
- const baseElement = vocabulary[baseName];
459
- if (baseElement) {
460
- const vocabularyBaseObject = parseSchemaElements(baseType, baseElement);
461
- // add property of baseType to fqName
462
- if ((vocabularyBaseObject === null || vocabularyBaseObject === void 0 ? void 0 : vocabularyBaseObject.kind) === types_1.COMPLEX_TYPE_KIND) {
463
- vocabularyBaseObject.properties.forEach((property) => {
464
- addToUpperCaseNameMap(fqName, property.name);
465
- });
466
- }
467
- }
468
- derivedTypesPerType.set(baseType, (_e = derivedTypesPerType.get(baseType)) !== null && _e !== void 0 ? _e : new Map());
469
- (_f = derivedTypesPerType.get(baseType)) === null || _f === void 0 ? void 0 : _f.set(fqName, !!vocabularyObject.isAbstract);
470
- }
471
- }
472
- if (vocabularyObject.kind === types_1.ENUM_TYPE_KIND) {
473
- vocabularyObject.values.forEach((value) => {
474
- addToUpperCaseNameMap(fqName, value.name);
475
- });
476
- }
477
- }
478
- }
479
- }
480
- }
559
+ vocabularyLoader(namespace);
481
560
  }
561
+ propagateConstraints(dictionary, derivedTypesPerType);
482
562
  const vocabulariesInformation = {
483
563
  dictionary,
484
564
  byTarget,
@@ -488,15 +568,51 @@ const loadVocabulariesInformation = (includeCds) => {
488
568
  upperCaseNameMap
489
569
  };
490
570
  // fill cache
491
- if (includeCds) {
492
- vocabulariesInformationStaticCds = vocabulariesInformation;
493
- }
494
- else {
495
- vocabulariesInformationStatic = vocabulariesInformation;
496
- }
571
+ vocabulariesInformationStatic.set(cacheKey, vocabulariesInformation);
497
572
  return vocabulariesInformation;
498
573
  };
499
574
  exports.loadVocabulariesInformation = loadVocabulariesInformation;
575
+ /**
576
+ * Propagates constraints from base types to derived types.
577
+ *
578
+ * @param dictionary dictionary map
579
+ * @param derivedTypesPerType map with types derivation information
580
+ */
581
+ function propagateConstraints(dictionary, derivedTypesPerType) {
582
+ for (const typeName of derivedTypesPerType.keys()) {
583
+ propagateConstraintsForType(typeName, dictionary, derivedTypesPerType);
584
+ }
585
+ }
586
+ /**
587
+ * Recursively propagates constraints of the given base type to its derived types based on derived types map.
588
+ *
589
+ * @param typeName base type name
590
+ * @param dictionary dictionary map
591
+ * @param derivedTypesPerType map with types derivation information
592
+ */
593
+ function propagateConstraintsForType(typeName, dictionary, derivedTypesPerType) {
594
+ const mergeConstraints = (constraints, derivationMap) => {
595
+ var _a;
596
+ for (const derivedTypeName of derivationMap.keys()) {
597
+ const derivedType = dictionary.get(derivedTypeName);
598
+ if ((derivedType === null || derivedType === void 0 ? void 0 : derivedType.kind) === odata_annotation_core_types_1.COMPLEX_TYPE_KIND) {
599
+ // merge base type constraints into the current type constraints
600
+ derivedType.constraints = Object.assign(Object.assign({}, constraints), ((_a = derivedType.constraints) !== null && _a !== void 0 ? _a : {}));
601
+ }
602
+ if (derivedTypesPerType.has(derivedTypeName)) {
603
+ propagateConstraintsForType(derivedTypeName, dictionary, derivedTypesPerType);
604
+ }
605
+ }
606
+ };
607
+ const typeDef = dictionary.get(typeName);
608
+ const derivationMap = derivedTypesPerType.get(typeName);
609
+ if ((typeDef === null || typeDef === void 0 ? void 0 : typeDef.kind) === odata_annotation_core_types_1.COMPLEX_TYPE_KIND &&
610
+ typeDef.constraints &&
611
+ Object.keys(typeDef.constraints).length &&
612
+ derivationMap) {
613
+ mergeConstraints(typeDef.constraints, derivationMap);
614
+ }
615
+ }
500
616
  /**
501
617
  *
502
618
  * @param allowedTerm Term name
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../src/loader.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,2 @@
1
- export * from './base-types';
2
- export * from './names';
3
1
  export * from './vocabulary-service';
4
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -14,7 +14,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./base-types"), exports);
18
- __exportStar(require("./names"), exports);
19
17
  __exportStar(require("./vocabulary-service"), exports);
20
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,0CAAwB;AACxB,uDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC"}