@sap/ux-specification 1.96.101 → 1.96.103

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 (179) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/dist/documentation/v2/v2-AnalyticalListPage.html +2 -2
  3. package/dist/documentation/v2/v2-ApplicationV2.html +2 -2
  4. package/dist/documentation/v2/v2-ListReport.html +2 -2
  5. package/dist/documentation/v2/v2-ListReportNew.html +2 -2
  6. package/dist/documentation/v2/v2-ObjectPage.html +2 -2
  7. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  8. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  9. package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
  10. package/dist/documentation/v4/v4-FreestylePage.html +2 -2
  11. package/dist/documentation/v4/v4-ListReport.html +2 -2
  12. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  13. package/dist/index-min.js +248 -251
  14. package/dist/index-min.js.map +4 -4
  15. package/dist/schemas/v2/ApplicationV2.json +42 -12
  16. package/dist/schemas/v2/ListReportNewConfig.json +135 -0
  17. package/dist/schemas/v2/ObjectPageConfig.json +12 -5
  18. package/dist/schemas/v4/ApplicationV4.json +30 -15
  19. package/dist/schemas/v4/BuildingBlocksConfig.json +4 -6
  20. package/dist/specification/package.json +16 -16
  21. package/dist/specification/scripts/macros/schema.d.ts +7 -0
  22. package/dist/specification/scripts/macros/schema.d.ts.map +1 -1
  23. package/dist/specification/scripts/macros/schema.js +61 -14
  24. package/dist/specification/scripts/macros/schema.js.map +1 -1
  25. package/dist/specification/scripts/macros/types.d.ts +1 -0
  26. package/dist/specification/scripts/macros/types.d.ts.map +1 -1
  27. package/dist/specification/scripts/schema/to-json-schema.d.ts.map +1 -1
  28. package/dist/specification/scripts/schema/to-json-schema.js +63 -7
  29. package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
  30. package/dist/specification/src/sync/common/decoration/decorators.d.ts +65 -4
  31. package/dist/specification/src/sync/common/decoration/decorators.d.ts.map +1 -1
  32. package/dist/specification/src/sync/common/decoration/decorators.js +138 -8
  33. package/dist/specification/src/sync/common/decoration/decorators.js.map +1 -1
  34. package/dist/specification/src/sync/common/distTagEvaluator.d.ts +7 -0
  35. package/dist/specification/src/sync/common/distTagEvaluator.d.ts.map +1 -1
  36. package/dist/specification/src/sync/common/distTagEvaluator.js +10 -0
  37. package/dist/specification/src/sync/common/distTagEvaluator.js.map +1 -1
  38. package/dist/specification/src/sync/common/dist_tag.json +17 -18
  39. package/dist/specification/src/sync/common/generate/objectPage.js +3 -1
  40. package/dist/specification/src/sync/common/generate/objectPage.js.map +1 -1
  41. package/dist/specification/src/sync/common/generate/utils.d.ts +13 -4
  42. package/dist/specification/src/sync/common/generate/utils.d.ts.map +1 -1
  43. package/dist/specification/src/sync/common/generate/utils.js +35 -20
  44. package/dist/specification/src/sync/common/generate/utils.js.map +1 -1
  45. package/dist/specification/src/sync/common/i18n.json +13 -1
  46. package/dist/specification/src/sync/common/utils.d.ts +64 -0
  47. package/dist/specification/src/sync/common/utils.d.ts.map +1 -1
  48. package/dist/specification/src/sync/common/utils.js +147 -1
  49. package/dist/specification/src/sync/common/utils.js.map +1 -1
  50. package/dist/specification/src/sync/v2/application.d.ts +1 -0
  51. package/dist/specification/src/sync/v2/application.d.ts.map +1 -1
  52. package/dist/specification/src/sync/v2/application.js +18 -0
  53. package/dist/specification/src/sync/v2/application.js.map +1 -1
  54. package/dist/specification/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -1
  55. package/dist/specification/src/sync/v2/export/exportPage.d.ts.map +1 -1
  56. package/dist/specification/src/sync/v2/export/exportPage.js +15 -4
  57. package/dist/specification/src/sync/v2/export/exportPage.js.map +1 -1
  58. package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts.map +1 -1
  59. package/dist/specification/src/sync/v2/export/exportPageGeneric.js +6 -12
  60. package/dist/specification/src/sync/v2/export/exportPageGeneric.js.map +1 -1
  61. package/dist/specification/src/sync/v2/export/factory.d.ts +26 -0
  62. package/dist/specification/src/sync/v2/export/factory.d.ts.map +1 -1
  63. package/dist/specification/src/sync/v2/export/factory.js +3 -3
  64. package/dist/specification/src/sync/v2/export/factory.js.map +1 -1
  65. package/dist/specification/src/sync/v2/export/pages/ObjectPage.d.ts +1 -0
  66. package/dist/specification/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -1
  67. package/dist/specification/src/sync/v2/export/pages/ObjectPage.js +11 -0
  68. package/dist/specification/src/sync/v2/export/pages/ObjectPage.js.map +1 -1
  69. package/dist/specification/src/sync/v2/generate/listReport.d.ts.map +1 -1
  70. package/dist/specification/src/sync/v2/generate/listReport.js +46 -1
  71. package/dist/specification/src/sync/v2/generate/listReport.js.map +1 -1
  72. package/dist/specification/src/sync/v2/generate/manifestPropertyUtils.d.ts +1 -2
  73. package/dist/specification/src/sync/v2/generate/manifestPropertyUtils.d.ts.map +1 -1
  74. package/dist/specification/src/sync/v2/generate/objectPage.d.ts.map +1 -1
  75. package/dist/specification/src/sync/v2/generate/objectPage.js +63 -13
  76. package/dist/specification/src/sync/v2/generate/objectPage.js.map +1 -1
  77. package/dist/specification/src/sync/v2/generate/schemaAdaptation.d.ts +1 -1
  78. package/dist/specification/src/sync/v2/generate/schemaAdaptation.d.ts.map +1 -1
  79. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js +4 -1
  80. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js.map +1 -1
  81. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts +8 -0
  82. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts.map +1 -1
  83. package/dist/specification/src/sync/v2/generate/stableIdUtils.js +1 -0
  84. package/dist/specification/src/sync/v2/generate/stableIdUtils.js.map +1 -1
  85. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js +3 -2
  86. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js.map +1 -1
  87. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.d.ts +78 -0
  88. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.d.ts.map +1 -0
  89. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js +454 -0
  90. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js.map +1 -0
  91. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.d.ts +22 -0
  92. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.d.ts.map +1 -0
  93. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.js +124 -0
  94. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.js.map +1 -0
  95. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts +55 -0
  96. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts.map +1 -0
  97. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js +152 -0
  98. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js.map +1 -0
  99. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts +3 -0
  100. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts.map +1 -1
  101. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js +3 -0
  102. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js.map +1 -1
  103. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.d.ts +4 -2
  104. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.d.ts.map +1 -1
  105. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.js +61 -23
  106. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.js.map +1 -1
  107. package/dist/specification/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -1
  108. package/dist/specification/src/sync/v2/import/pages/overviewPage.js +32 -13
  109. package/dist/specification/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  110. package/dist/specification/src/sync/v2/utils.d.ts +23 -0
  111. package/dist/specification/src/sync/v2/utils.d.ts.map +1 -1
  112. package/dist/specification/src/sync/v2/utils.js +67 -0
  113. package/dist/specification/src/sync/v2/utils.js.map +1 -1
  114. package/dist/specification/src/sync/v4/export/controls/Header.d.ts +3 -2
  115. package/dist/specification/src/sync/v4/export/controls/Header.d.ts.map +1 -1
  116. package/dist/specification/src/sync/v4/export/controls/Header.js +14 -2
  117. package/dist/specification/src/sync/v4/export/controls/Header.js.map +1 -1
  118. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts +2 -1
  119. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts.map +1 -1
  120. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js +7 -2
  121. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js.map +1 -1
  122. package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
  123. package/dist/specification/src/sync/v4/export/fpmCustomPage.js +13 -3
  124. package/dist/specification/src/sync/v4/export/fpmCustomPage.js.map +1 -1
  125. package/dist/specification/src/sync/v4/export/pages/ListReport.d.ts.map +1 -1
  126. package/dist/specification/src/sync/v4/export/pages/ListReport.js +2 -1
  127. package/dist/specification/src/sync/v4/export/pages/ListReport.js.map +1 -1
  128. package/dist/specification/src/sync/v4/generate/ListReportUtils.d.ts +107 -0
  129. package/dist/specification/src/sync/v4/generate/ListReportUtils.d.ts.map +1 -0
  130. package/dist/specification/src/sync/v4/generate/ListReportUtils.js +374 -0
  131. package/dist/specification/src/sync/v4/generate/ListReportUtils.js.map +1 -0
  132. package/dist/specification/src/sync/v4/generate/listReport.d.ts +100 -2
  133. package/dist/specification/src/sync/v4/generate/listReport.d.ts.map +1 -1
  134. package/dist/specification/src/sync/v4/generate/listReport.js +174 -109
  135. package/dist/specification/src/sync/v4/generate/listReport.js.map +1 -1
  136. package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  137. package/dist/specification/src/sync/v4/generate/objectPage.js +55 -10
  138. package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
  139. package/dist/specification/src/sync/v4/sync-rules/App.d.ts +141 -0
  140. package/dist/specification/src/sync/v4/sync-rules/App.d.ts.map +1 -0
  141. package/dist/specification/src/sync/v4/sync-rules/App.js +208 -0
  142. package/dist/specification/src/sync/v4/sync-rules/App.js.map +1 -0
  143. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts +193 -0
  144. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts.map +1 -0
  145. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js +384 -0
  146. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js.map +1 -0
  147. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts +172 -0
  148. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts.map +1 -0
  149. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js +410 -0
  150. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js.map +1 -0
  151. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts +70 -0
  152. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts.map +1 -0
  153. package/dist/specification/src/sync/v4/sync-rules/Page.js +73 -0
  154. package/dist/specification/src/sync/v4/sync-rules/Page.js.map +1 -0
  155. package/dist/specification/src/sync/v4/sync-rules/utils.d.ts +9 -0
  156. package/dist/specification/src/sync/v4/sync-rules/utils.d.ts.map +1 -0
  157. package/dist/specification/src/sync/v4/sync-rules/utils.js +43 -0
  158. package/dist/specification/src/sync/v4/sync-rules/utils.js.map +1 -0
  159. package/dist/specification/src/sync/v4/utils/utils.d.ts +15 -4
  160. package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
  161. package/dist/specification/src/sync/v4/utils/utils.js +54 -6
  162. package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
  163. package/dist/types/src/common/types.d.ts +110 -1
  164. package/dist/types/src/common/types.d.ts.map +1 -1
  165. package/dist/types/src/common/types.js +6 -0
  166. package/dist/types/src/common/types.js.map +1 -1
  167. package/dist/types/src/common/webapp/manifest/Manifest.d.ts +1 -1
  168. package/dist/types/src/common/webapp/manifest/Manifest.d.ts.map +1 -1
  169. package/dist/types/src/v2/application.d.ts +18 -0
  170. package/dist/types/src/v2/application.d.ts.map +1 -1
  171. package/dist/types/src/v2/controls/ObjectPageHeaderSection.d.ts.map +1 -1
  172. package/dist/types/src/v2/controls/ObjectPageTable.d.ts +4 -4
  173. package/dist/types/src/v2/controls/ObjectPageTable.d.ts.map +1 -1
  174. package/dist/types/src/v2/controls/Table.d.ts.map +1 -1
  175. package/dist/types/src/v2/pages/ObjectPageConfigV2.d.ts +10 -1
  176. package/dist/types/src/v2/pages/ObjectPageConfigV2.d.ts.map +1 -1
  177. package/dist/types/src/v4/controls/ObjectPageHeaderSection.d.ts.map +1 -1
  178. package/dist/types/src/v4/controls/ObjectPageSection.d.ts.map +1 -1
  179. package/package.json +16 -16
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UI5_TO_JSON_SCHEMA_TYPE_MAP = void 0;
3
+ exports.PROPERTY_SEMANTICS = exports.UI5_TO_JSON_SCHEMA_TYPE_MAP = void 0;
4
4
  exports.generateSchema = generateSchema;
5
5
  const ux_specification_types_1 = require("@sap/ux-specification-types");
6
6
  const ux_specification_types_2 = require("@sap/ux-specification-types");
@@ -9,6 +9,13 @@ const corrections_1 = require("./corrections");
9
9
  const common_1 = require("../../src/sync/common");
10
10
  const TYPES_MAP = new Map([['sap.ui.model.Context', 'string']]);
11
11
  exports.UI5_TO_JSON_SCHEMA_TYPE_MAP = new Map([['int', 'number']]);
12
+ /**
13
+ * Semantic classification patterns for properties
14
+ * Used to determine if a property should be visible (isViewNode = true/false)
15
+ */
16
+ exports.PROPERTY_SEMANTICS = {
17
+ AGGREGATIONS: [/^(columns?|actions?|items?|content|filters?)/i, /buttonGroups/]
18
+ };
12
19
  /**
13
20
  * Method checks if passed type is atomic type like 'boolean', 'string', 'number', etc.
14
21
  *
@@ -64,16 +71,20 @@ function formatDescription(description) {
64
71
  * @param {MacrosPropertyType} metadataType Metadata property type.
65
72
  * @param {string} [description] Description of definition.
66
73
  * @param {string} defaultAggreation Default aggregation.
74
+ * @param {string} symbolName Name of the symbol.
67
75
  * @returns {SchemaDefinition} JSON schema for definition.
68
76
  */
69
- function prepareDefinition(metadataType, description, defaultAggreation) {
77
+ function prepareDefinition(metadataType, description, defaultAggreation, symbolName) {
70
78
  if (description) {
71
79
  // Remove html markup from description
72
80
  description = formatDescription(description);
73
81
  }
82
+ // For main control definitions (classes), default to true as they are primary UI building blocks
83
+ // But exclude configuration objects (*Options classes)
84
+ const isViewNode = !symbolName.endsWith('Options');
74
85
  const definition = {
75
86
  description,
76
- isViewNode: true,
87
+ isViewNode,
77
88
  type: 'object',
78
89
  properties: {},
79
90
  additionalProperties: false,
@@ -146,7 +157,6 @@ function prepareSchemaProperty(property, metadataType, type, types) {
146
157
  pattern: "^{[A-Za-z0-9{}&$!@#%? _|,<>'()[\\]\\/:=.]+}$"
147
158
  });
148
159
  }
149
- const isViewNode = schemaTypes.some((schemaType) => !!schemaType.$ref);
150
160
  // Define result
151
161
  const propertySchema = schemaTypes.length === 1
152
162
  ? { ...schemaTypes[0] }
@@ -155,10 +165,6 @@ function prepareSchemaProperty(property, metadataType, type, types) {
155
165
  };
156
166
  propertySchema.description = formatDescription(property.description);
157
167
  propertySchema['artifactType'] = ux_specification_types_1.ArtifactType.XMLProperty;
158
- if (isViewNode) {
159
- propertySchema.description = property.name;
160
- propertySchema.isViewNode = true;
161
- }
162
168
  propertySchema.metadata = {
163
169
  type: metadataType
164
170
  };
@@ -203,14 +209,17 @@ function prepareEvent(property) {
203
209
  * Method prepares schema object for passed SAPUI5 aggregation.
204
210
  *
205
211
  * @param aggregation SAPUI5 aggregation.
212
+ * @param defaultAggregation The default aggregation name for the parent class.
206
213
  * @returns JSON schema.
207
214
  */
208
- function prepareAggregations(aggregation) {
215
+ function prepareAggregations(aggregation, defaultAggregation) {
209
216
  const schemaTypes = getTypes(aggregation.type);
217
+ const isViewNode = (defaultAggregation && aggregation.name === defaultAggregation) ||
218
+ exports.PROPERTY_SEMANTICS.AGGREGATIONS.some((pattern) => pattern.test(aggregation.name));
210
219
  return {
211
220
  type: 'object',
212
221
  additionalProperties: schemaTypes.length ? schemaTypes[0] : { anyOf: schemaTypes },
213
- isViewNode: true,
222
+ isViewNode,
214
223
  metadata: {
215
224
  path: [],
216
225
  type: ux_specification_types_2.MacrosPropertyType.Aggregation
@@ -230,6 +239,43 @@ function applyNamespaces(api, schema) {
230
239
  }
231
240
  }
232
241
  }
242
+ /**
243
+ * Collects metadata (properties and aggregations) from a class symbol and all of its base classes by walking up the inheritance chain.
244
+ *
245
+ * @param {ClassSymbol} symbol The class symbol whose metadata should be retrieved.
246
+ * @param {ClassSymbol[]} allSymbols A list of all class symbols, used to resolve the full inheritance chain.
247
+ * @returns {{ properties: UI5Property[], aggregations: UI5Aggregation[] }}
248
+ * An object containing merged properties and aggregations accumulated from
249
+ * the class and its inheritance hierarchy.
250
+ */
251
+ function getMetadata(symbol, allSymbols) {
252
+ const result = {
253
+ properties: [],
254
+ aggregations: []
255
+ };
256
+ // variable is used to prevent infinite loops
257
+ const visited = new Set();
258
+ let currentSymbol = symbol;
259
+ while (currentSymbol && !visited.has(currentSymbol.name)) {
260
+ visited.add(currentSymbol.name);
261
+ const { properties = [], aggregations = [] } = currentSymbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY] ?? {};
262
+ // Add properties without duplicates
263
+ for (const property of properties) {
264
+ if (!result.properties.some((existingProperty) => existingProperty.name === property.name)) {
265
+ result.properties.push(property);
266
+ }
267
+ }
268
+ // Add aggregations without duplicates
269
+ for (const aggregation of aggregations) {
270
+ if (!result.aggregations.some((existingAggregation) => existingAggregation.name === aggregation.name)) {
271
+ result.aggregations.push(aggregation);
272
+ }
273
+ }
274
+ // Go to next base class in inheritance chain
275
+ currentSymbol = currentSymbol.extends ? allSymbols.find((s) => s.name === currentSymbol.extends) : undefined;
276
+ }
277
+ return result;
278
+ }
233
279
  /**
234
280
  * Method generates generic schema for passed "sap.fe.macros" api.
235
281
  *
@@ -244,17 +290,18 @@ function generateSchema(api) {
244
290
  // Handle classes
245
291
  const classSymbols = api.symbols.filter((symbol) => symbol.kind === types_1.SYMBOL_KIND_CLASS);
246
292
  for (const symbol of classSymbols) {
247
- const definition = prepareDefinition(ux_specification_types_2.MacrosPropertyType.Control, symbol.description, symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY]?.defaultAggregation);
293
+ const definition = prepareDefinition(ux_specification_types_2.MacrosPropertyType.Control, symbol.description, symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY]?.defaultAggregation, symbol.name);
248
294
  definitions[symbol.name] = definition;
249
295
  const events = symbol.events || [];
250
- const { properties = [], aggregations = [] } = symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY] || {};
296
+ const { properties, aggregations } = getMetadata(symbol, classSymbols);
251
297
  // Handle properties
252
298
  for (const property of properties) {
253
299
  definition.properties[property.name] = prepareProperty(property);
254
300
  }
255
301
  // Handle aggregations
302
+ const defaultAggregation = symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY]?.defaultAggregation;
256
303
  for (const aggregation of aggregations) {
257
- definition.properties[aggregation.name] = prepareAggregations(aggregation);
304
+ definition.properties[aggregation.name] = prepareAggregations(aggregation, defaultAggregation);
258
305
  }
259
306
  // Handle events
260
307
  for (const event of events) {
@@ -266,7 +313,7 @@ function generateSchema(api) {
266
313
  // Handle typedefs
267
314
  const typedefSymbols = api.symbols.filter((symbol) => symbol.kind === types_1.SYMBOL_KIND_TYPEDEF);
268
315
  for (const symbol of typedefSymbols) {
269
- const definition = prepareDefinition(ux_specification_types_2.MacrosPropertyType.Control, symbol.description, symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY]?.defaultAggregation);
316
+ const definition = prepareDefinition(ux_specification_types_2.MacrosPropertyType.Control, symbol.description, symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY]?.defaultAggregation, symbol.name);
270
317
  definitions[symbol.name] = definition;
271
318
  const properties = symbol.properties || [];
272
319
  for (const property of properties) {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../scripts/macros/schema.ts"],"names":[],"mappings":";;;AAqQA,wCA+CC;AAnTD,wEAA2D;AAC3D,wEAAiE;AAEjE,mCAAwH;AACxH,+CAAiD;AAEjD,kDAAwD;AAExD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAiB,CAAC,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACnE,QAAA,2BAA2B,GAAqC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAE1G;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAAY;IAC9B,OAAO,CACH,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC3F,mCAA2B,CAAC,GAAG,CAAC,IAAI,CAAC,CACxC,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa;IAClB,MAAM,cAAc,GAAqB,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC1E,OAAO;QACH,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE;YACN,UAAU,EAAE,EAAE;SACjB;QACD,UAAU,EAAE;YACR,SAAS,EAAE,cAAc;YACzB,OAAO,EAAE,cAAc;SAC1B;QACD,oBAAoB,EAAE,KAAK;QAC3B,WAAW,EAAE,EAAE;QACf,OAAO,EAAE,yCAAyC;KACrD,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,WAAoB;IAC3C,IAAI,WAAW,EAAE,CAAC;QACd,kEAAkE;QAClE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACrD,sDAAsD;QACtD,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACnD,qBAAqB;QACrB,OAAO,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CACtB,YAAgC,EAChC,WAAoB,EACpB,iBAA0B;IAE1B,IAAI,WAAW,EAAE,CAAC;QACd,sCAAsC;QACtC,WAAW,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACjD,CAAC;IACD,MAAM,UAAU,GAAG;QACf,WAAW;QACX,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,oBAAoB,EAAE,KAAK;QAC3B,QAAQ,EAAE;YACN,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,YAAY;SACrB;KACgB,CAAC;IACtB,IAAI,iBAAiB,EAAE,CAAC;QACpB,UAAU,CAAC,QAAQ,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAC/D,CAAC;IACD,OAAO,UAAU,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,IAAY;IAClC,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,IAAI,aAAa,EAAE,CAAC;QAChB,IAAI,GAAG,aAAa,CAAC;IACzB,CAAC;IACD,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,GAAG,mCAA2B,CAAC,GAAG,CAAC,IAAI,CAAC;YAC/C,CAAC,CAAC,mCAA2B,CAAC,GAAG,CAAC,IAAI,CAAC;YACvC,CAAC,CAAE,IAA4B,CAAC;IACxC,CAAC;SAAM,CAAC;QACJ,MAAM,CAAC,IAAI,GAAG,iBAAiB,IAAI,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,QAAQ,CAAC,IAAwB,EAAE,aAAiC;IACzE,IAAI,MAAM,GAAa,EAAE,CAAC;IAC1B,IAAI,IAAI,EAAE,CAAC;QACP,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACnG,CAAC;SAAM,IAAI,aAAa,EAAE,CAAC;QACvB,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,YAA6B,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,YAAoB,EAAE,EAAE;QACvC,OAAO,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAC1B,QAA4B,EAC5B,YAAgC,EAChC,IAAa,EACb,KAAyB;IAEzB,MAAM,WAAW,GAAuB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC9D,mGAAmG;IACnG,IAAI,IAAI,KAAK,QAAQ,IAAI,UAAU,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACnE,WAAW,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,8CAA8C;SAC1D,CAAC,CAAC;IACP,CAAC;IACD,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvE,gBAAgB;IAChB,MAAM,cAAc,GAChB,WAAW,CAAC,MAAM,KAAK,CAAC;QACpB,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE;QACvB,CAAC,CAAC;YACI,KAAK,EAAE,WAAW;SACrB,CAAC;IACZ,cAAc,CAAC,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACrE,cAAc,CAAC,cAAc,CAAC,GAAG,qCAAY,CAAC,WAAW,CAAC;IAC1D,IAAI,UAAU,EAAE,CAAC;QACb,cAAc,CAAC,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3C,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC;IACrC,CAAC;IACD,cAAc,CAAC,QAAQ,GAAG;QACtB,IAAI,EAAE,YAAY;KACrB,CAAC;IACF,OAAO,cAAc,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,QAAqB;IAC3C,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAC,aAAa,CAAC;IAClC,CAAC;IACD,OAAO,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;AAC/D,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,QAAqB;IAC1C,MAAM,cAAc,GAAG,qBAAqB,CAAC,QAAQ,EAAE,2CAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnH,MAAM,aAAa,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,aAAa,IAAI,cAAc,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpD,IAAA,wBAAe,EAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,cAAc,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,QAAkB;IACpC,OAAO,qBAAqB,CAAC,QAAQ,EAAE,2CAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,WAA2B;IACpD,MAAM,WAAW,GAAuB,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnE,OAAO;QACH,IAAI,EAAE,QAAQ;QACd,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE;QAClF,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE;YACN,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,2CAAkB,CAAC,WAAW;SACvC;KACJ,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,GAAc,EAAE,MAAwB;IAC7D,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,MAAM,CAAC,IAAI,KAAK,6BAAqB,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnF,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;IACL,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAAC,GAAc;IACzC,mFAAmF;IACnF,IAAA,8BAAgB,EAAC,GAAG,CAAC,CAAC;IACtB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC;IAC/B,iBAAiB;IACjB,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,yBAAiB,CAAC,CAAC;IACvF,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,UAAU,GAAG,iBAAiB,CAChC,2CAAkB,CAAC,OAAO,EAC1B,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,sCAA8B,CAAC,EAAE,kBAAkB,CAC7D,CAAC;QACF,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;QACnC,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,YAAY,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,sCAA8B,CAAC,IAAI,EAAE,CAAC;QAC5F,oBAAoB;QACpB,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAChC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACrE,CAAC;QACD,sBAAsB;QACtB,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACrC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAC/E,CAAC;QACD,gBAAgB;QAChB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;IACL,CAAC;IACD,oBAAoB;IACpB,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC7B,kBAAkB;IAClB,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,2BAAmB,CAAC,CAAC;IAC3F,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,iBAAiB,CAChC,2CAAkB,CAAC,OAAO,EAC1B,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,sCAA8B,CAAC,EAAE,kBAAkB,CAC7D,CAAC;QACF,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC;QACtC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC3C,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAChC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACrE,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../scripts/macros/schema.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@ export interface ClassSymbol extends BaseSymbol {
34
34
  kind: typeof SYMBOL_KIND_CLASS;
35
35
  since?: string;
36
36
  events?: UI5Event[];
37
+ extends?: string;
37
38
  [CLASS_SYMBOL_METADATA_PROPERTY]?: SymbolMetadata;
38
39
  }
39
40
  export interface TypedefSymbol extends BaseSymbol {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../scripts/macros/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,cAAc,CAAC;AACjD,eAAO,MAAM,iBAAiB,UAAU,CAAC;AACzC,eAAO,MAAM,mBAAmB,YAAY,CAAC;AAE7C,eAAO,MAAM,8BAA8B,iBAAiB,CAAC;AAE7D,MAAM,MAAM,WAAW,GAAG,OAAO,qBAAqB,GAAG,OAAO,iBAAiB,GAAG,OAAO,mBAAmB,CAAC;AAE/G,MAAM,WAAW,SAAS;IACtB,OAAO,EAAE,SAAS,EAAE,CAAC;CACxB;AAED,oBAAY,aAAa;IACrB,MAAM,WAAW;IACjB,UAAU,eAAe;IACzB,MAAM,WAAW;CACpB;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,aAAa,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,WAAW,GAAG,aAAa,CAAC;AAEtE,MAAM,WAAW,eAAgB,SAAQ,UAAU;IAC/C,IAAI,EAAE,OAAO,qBAAqB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,EAAE,CAAC;CACb;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC3C,IAAI,EAAE,OAAO,iBAAiB,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC;IACpB,CAAC,8BAA8B,CAAC,CAAC,EAAE,cAAc,CAAC;CACrD;AAED,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC7C,IAAI,EAAE,OAAO,mBAAmB,CAAC;IACjC,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,YAAY,EAAE,cAAc,EAAE,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,CAAC;CAC7B;AAED,MAAM,WAAW,eAAgB,SAAQ,kBAAkB;IACvD,OAAO,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,aAAa,CAAC;CAC3B;AAED,MAAM,WAAW,WAAY,SAAQ,eAAe;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,WAAW,CAAC;CAChC;AAED,MAAM,WAAW,cAAe,SAAQ,eAAe;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../scripts/macros/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"to-json-schema.d.ts","sourceRoot":"","sources":["../../../../scripts/schema/to-json-schema.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAK1F,MAAM,MAAM,MAAM,GAAG;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AA6BhD;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,CAAC,EAAE,yBAAyB,QAErF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,GAAG,MAAM,EAAE,CA4BxG;AA8ED;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,yBAqBzC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAwBrD"}
1
+ {"version":3,"file":"to-json-schema.d.ts","sourceRoot":"","sources":["../../../../scripts/schema/to-json-schema.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAS1F,MAAM,MAAM,MAAM,GAAG;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AA6BhD;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,CAAC,EAAE,yBAAyB,QAErF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,oBAAoB,GAAG,MAAM,EAAE,CA4BxG;AAuID;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,yBAwBzC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CA0BrD"}
@@ -46,6 +46,10 @@ const factory_2 = require("../../src/sync/v4/export/factory");
46
46
  const ux_specification_types_1 = require("@sap/ux-specification-types");
47
47
  const ListReportNew_1 = require("../../src/sync/v2/genericSchemaHandling/pages/ListReportNew");
48
48
  const v2Controls = __importStar(require("../../src/sync/v2/genericSchemaHandling/controls"));
49
+ const decoration_1 = require("../../src/sync/common/decoration");
50
+ const utils_2 = require("../../src/sync/common/utils");
51
+ const application_1 = require("../../src/sync/v4/application");
52
+ const application_2 = require("../../src/sync/v2/application");
49
53
  //TS compiler options, compare with tsconfig
50
54
  const compilerOptions = {
51
55
  skipLibCheck: true,
@@ -184,6 +188,55 @@ function convertPagesOfFEVersion(paths, version, outputPath, factory) {
184
188
  function getPosition(string, subString, index) {
185
189
  return string.split(subString, index).join(subString).length;
186
190
  }
191
+ /**
192
+ * Performs post-processing on the provided array of schemas for V2 and V4 applications.
193
+ *
194
+ * @param schemas - An array of `Schema` objects to be post-processed.
195
+ */
196
+ function postProcessingApps(schemas) {
197
+ // Add manifest paths to V4 and V2
198
+ addManifestPathsToApplication(schemas['ApplicationV4.json'], application_1.AppSettings.prototype);
199
+ addManifestPathsToApplication(schemas['ApplicationV2.json'], application_2.AppSettings.prototype);
200
+ }
201
+ /**
202
+ * Adds `manifestPath` to the `AppSettings` properties inside a JSON schema.
203
+ *
204
+ * @param {JSONSchema4} schema - The JSON schema object to be updated.
205
+ * @param {object} classPrototype - The prototype object whose metadata is used to determine manifest path information for each property.
206
+ */
207
+ function addManifestPathsToApplication(schema, classPrototype) {
208
+ // Update schema with manifest path for properties in settings
209
+ for (const property in schema.definitions.AppSettings.properties) {
210
+ const propertySchema = schema.definitions.AppSettings.properties[property];
211
+ const rule = (0, decoration_1.getReflectMetadata)(classPrototype, property);
212
+ if (!rule?.manifest?.path) {
213
+ return;
214
+ }
215
+ const exportPropertyKey = rule?.manifest?.key ?? property;
216
+ const manifestPath = `${rule.manifest.path()}/${exportPropertyKey}`;
217
+ propertySchema.manifestPath = (0, utils_2.convertSyncRulePathToJsonPath)(manifestPath);
218
+ // Continue parsing of inner properties
219
+ // Handle anyOf with inner properties
220
+ if (propertySchema.anyOf) {
221
+ for (const innerSchema of propertySchema.anyOf) {
222
+ if (!innerSchema.properties) {
223
+ continue;
224
+ }
225
+ for (const property in innerSchema.properties) {
226
+ innerSchema.properties[property].manifestPath = (0, utils_2.appendJsonPathSegment)(propertySchema.manifestPath, property);
227
+ }
228
+ }
229
+ }
230
+ // Handle $ref with inner properties
231
+ if (propertySchema.manifestPath && propertySchema.$ref) {
232
+ const innerDefinitions = (0, utils_2.getDefinitionKey)(propertySchema.$ref);
233
+ const innerProperties = schema.definitions[innerDefinitions]?.properties ?? {};
234
+ for (const innerProperty in innerProperties) {
235
+ innerProperties[innerProperty].manifestPath = (0, utils_2.appendJsonPathSegment)(propertySchema.manifestPath, innerProperty);
236
+ }
237
+ }
238
+ }
239
+ }
187
240
  /**
188
241
  * Factory giving access to the metadata of the new v2 ListReport page.
189
242
  */
@@ -192,8 +245,9 @@ exports.FACTORY_FOR_LIST_REPORT_NEW = {
192
245
  const metadataClass = v2Controls[schemaPropertyName];
193
246
  // Naming convention: Types that are only introduced as host for enums have a name ending with 'Enum'.
194
247
  // They cannot be instantiated.
195
- // In addition to that ButtonType (imported from sap.m) is also an enum.
196
- if (schemaPropertyName.endsWith('Enum') || schemaPropertyName === 'ButtonType') {
248
+ // In addition to that some enums (ButtonType,...) are imported from sapui5.
249
+ if (schemaPropertyName.endsWith('Enum') ||
250
+ ['ButtonType', 'smarttable.ExportType'].includes(schemaPropertyName)) {
197
251
  return metadataClass;
198
252
  }
199
253
  let instance;
@@ -216,7 +270,6 @@ exports.FACTORY_FOR_LIST_REPORT_NEW = {
216
270
  * @param outputPath - The path to write the generated schemas to.
217
271
  */
218
272
  function toJsonSchema(outputPath) {
219
- let schemas = [];
220
273
  const rootName = __dirname.slice(0, getPosition(__dirname, 'specification', 2));
221
274
  const typesPath = (0, path_1.join)(rootName, 'types', 'src');
222
275
  //Pages V2
@@ -234,10 +287,13 @@ function toJsonSchema(outputPath) {
234
287
  paths.push((0, path_1.join)(typesPath, 'v4', 'pages'));
235
288
  convertPagesOfFEVersion(paths, ux_specification_types_1.FioriElementsVersion.v4, outputPath);
236
289
  //App V2
237
- schemas = convertInterfaces((0, path_1.join)(typesPath, 'v2'), ['ApplicationV2.ts'], ux_specification_types_1.FioriElementsVersion.v2);
238
- writeSchemasToFile(outputPath, schemas, 'v2');
290
+ const v2AppSchemas = convertInterfaces((0, path_1.join)(typesPath, 'v2'), ['ApplicationV2.ts'], ux_specification_types_1.FioriElementsVersion.v2);
239
291
  //App V4
240
- schemas = convertInterfaces((0, path_1.join)(typesPath, 'v4'), ['ApplicationV4.ts'], ux_specification_types_1.FioriElementsVersion.v4);
241
- writeSchemasToFile(outputPath, schemas, 'v4');
292
+ const v4AppSchemas = convertInterfaces((0, path_1.join)(typesPath, 'v4'), ['ApplicationV4.ts'], ux_specification_types_1.FioriElementsVersion.v4);
293
+ //App postprocessing of schema
294
+ postProcessingApps({ ...v2AppSchemas, ...v4AppSchemas });
295
+ //Write App schemas
296
+ writeSchemasToFile(outputPath, v2AppSchemas, 'v2');
297
+ writeSchemasToFile(outputPath, v4AppSchemas, 'v4');
242
298
  }
243
299
  //# sourceMappingURL=to-json-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"to-json-schema.js","sourceRoot":"","sources":["../../../../scripts/schema/to-json-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"to-json-schema.js","sourceRoot":"","sources":["../../../../scripts/schema/to-json-schema.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,13 @@
1
1
  import 'reflect-metadata';
2
- import type { SyncRule, PageLayoutInformation, ValidityInformation, SyncRuleProvider } from '@sap/ux-specification-types';
3
- export declare const reflectMetadataKey: unique symbol;
2
+ import type { SyncRule, PageLayoutInformation, ValidityInformation, SyncRuleProvider, Validity, BooleanCondition, DependsOnCondition, DependsOnMessage, MultiDependsOnCondition } from '@sap/ux-specification-types';
3
+ export declare const metadataKeys: {
4
+ description: symbol;
5
+ hidden: symbol;
6
+ isViewNode: symbol;
7
+ syncRule: symbol;
8
+ dependsOn: symbol;
9
+ validity: symbol;
10
+ };
4
11
  export declare const syncRule: (propSpec: SyncRule) => any;
5
12
  /**
6
13
  * Retrieves the metadata associated with a specific property of a target object.
@@ -24,8 +31,62 @@ export declare const getPageLayoutInformation: (target: any) => PageLayoutInform
24
31
  export declare const descriptionUrlMetadataKey: unique symbol;
25
32
  export declare const descriptionSrcURL: (id: string) => any;
26
33
  export declare const getDescriptionSrcURL: (target: any, propertyName: string) => string;
27
- export declare const validityMetadataKey: unique symbol;
28
- export declare const validity: (propSpec: ValidityInformation) => any;
34
+ export declare const validity: (validity: Validity) => any;
35
+ /**
36
+ * Retrieves the validity metadata associated with a specific property of a target object.
37
+ *
38
+ * @param target - The object containing the property.
39
+ * @param propertyName - The name of the property whose validity metadata is to be retrieved.
40
+ * @returns The validity information of the property, or undefined if no metadata is found.
41
+ */
42
+ export declare function getValidityMetadata(target: object, propertyName: string): ValidityInformation | undefined;
43
+ /**
44
+ * Mark the target class with a metadata flag indicating it is a view node.
45
+ *
46
+ * @param target - The constructor of the class to be marked as a view node
47
+ */
48
+ export declare function isViewNode(target: Function): void;
49
+ /**
50
+ * Decorator to add a description to a class or property in the schema.
51
+ *
52
+ * @param text - The description text
53
+ * @returns ClassDecorator
54
+ */
55
+ export declare function description(text: string): (target: Function) => void;
56
+ /**
57
+ * Decorator to conditionally hide a property in the schema based on a condition function.
58
+ * The condition function is evaluated during schema generation with the appropriate context.
59
+ *
60
+ * @param condition - A function that takes context and returns boolean indicating if property should be hidden
61
+ * @returns PropertyDecorator or ClassDecorator depending on usage
62
+ */
63
+ export declare function hidden(condition?: BooleanCondition): PropertyDecorator & ClassDecorator;
64
+ /**
65
+ * Helper function to create a DependsOnMessage object.
66
+ *
67
+ * @param text - The message text (can be true for default i18n message, a string, or a function)
68
+ * @param deletable - Whether the message can be deleted/dismissed in the UI
69
+ * @returns A DependsOnMessage object
70
+ */
71
+ export declare const dependsOnMessage: (text?: DependsOnMessage["text"], deletable?: boolean) => DependsOnMessage;
72
+ /**
73
+ * Decorator to conditionally show/hide a property based on one or more property values.
74
+ * The decorated property will be hidden if the dependency condition(s) are not met.
75
+ *
76
+ * @param pathOrConditions - A string property path or an array of condition objects (all must be met)
77
+ * @param conditionOrValueOrMessage - Single condition: condition/expected value/message; Multi-condition: message parameter
78
+ * @param message - Optional message parameter (only for single condition with condition/value)
79
+ * @returns PropertyDecorator
80
+ */
81
+ export declare function dependsOn(pathOrConditions: string | MultiDependsOnCondition, conditionOrValueOrMessage?: BooleanCondition | any | DependsOnMessage, message?: DependsOnMessage): PropertyDecorator;
82
+ /**
83
+ * Retrieves the dependsOn metadata associated with a specific property of a target object.
84
+ *
85
+ * @param target - The object containing the property.
86
+ * @param propertyName - The name of the property whose dependsOn metadata is to be retrieved.
87
+ * @returns The dependsOn information of the property, or undefined if no metadata is found.
88
+ */
89
+ export declare function getDependsOnMetadata(target: object, propertyName: string): DependsOnCondition | undefined;
29
90
  /**
30
91
  * Generates a deprecation message for a given key, optionally including additional validity information.
31
92
  *
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/common/decoration/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACR,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,6BAA6B,CAAC;AAErC,eAAO,MAAM,kBAAkB,eAAqC,CAAC;AACrE,eAAO,MAAM,QAAQ,GAAI,UAAU,QAAQ,KAAG,GAE7C,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAM7F;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAMlF;AAED,eAAO,MAAM,qBAAqB,GAC7B,UAAU,qBAAqB,MAC/B,aAAa,QAAQ,KAAG,IAExB,CAAC;AAGN,eAAO,MAAM,OAAO,GAAI,IAAI,MAAM,KAAG,GAEpC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,GAAG,EAAE,cAAc,MAAM,KAAG,MAE9D,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,QAAQ,GAAG,KAAG,qBAEtD,CAAC;AAKF,eAAO,MAAM,yBAAyB,eAA8B,CAAC;AACrE,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,KAAG,GAE9C,CAAC;AACF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,GAAG,EAAE,cAAc,MAAM,KAAG,MAExE,CAAC;AAMF,eAAO,MAAM,mBAAmB,eAAgC,CAAC;AACjE,eAAO,MAAM,QAAQ,GAAI,UAAU,mBAAmB,KAAG,GAExD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAQnG"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/common/decoration/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACR,QAAQ,EACR,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,uBAAuB,EAC1B,MAAM,6BAA6B,CAAC;AAGrC,eAAO,MAAM,YAAY;;;;;;;CAOxB,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,UAAU,QAAQ,KAAG,GAE7C,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAM7F;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,gBAAgB,GAAG,QAAQ,GAAG,SAAS,CAMlF;AAED,eAAO,MAAM,qBAAqB,GAC7B,UAAU,qBAAqB,MAC/B,aAAa,QAAQ,KAAG,IAExB,CAAC;AAGN,eAAO,MAAM,OAAO,GAAI,IAAI,MAAM,KAAG,GAEpC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,GAAG,EAAE,cAAc,MAAM,KAAG,MAE9D,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,QAAQ,GAAG,KAAG,qBAEtD,CAAC;AAKF,eAAO,MAAM,yBAAyB,eAA8B,CAAC;AACrE,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,KAAG,GAE9C,CAAC;AACF,eAAO,MAAM,oBAAoB,GAAI,QAAQ,GAAG,EAAE,cAAc,MAAM,KAAG,MAExE,CAAC;AAMF,eAAO,MAAM,QAAQ,GAAI,UAAU,QAAQ,KAAG,GAE7C,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAMzG;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAEjD;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,QAAQ,KAAK,IAAI,CAIpE;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,SAAS,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,GAAG,cAAc,CAUvF;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAM,gBAAgB,CAAC,MAAM,CAAQ,EAAE,mBAAgB,KAAG,gBAGzF,CAAC;AAEH;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACrB,gBAAgB,EAAE,MAAM,GAAG,uBAAuB,EAClD,yBAAyB,CAAC,EAAE,gBAAgB,GAAG,GAAG,GAAG,gBAAgB,EACrE,OAAO,CAAC,EAAE,gBAAgB,GAC3B,iBAAiB,CA6BnB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAMzG;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,mBAAmB,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAQnG"}
@@ -1,13 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validity = exports.validityMetadataKey = exports.getDescriptionSrcURL = exports.descriptionSrcURL = exports.descriptionUrlMetadataKey = exports.getPageLayoutInformation = exports.getChildId = exports.childId = exports.pageLayoutInformation = exports.syncRule = exports.reflectMetadataKey = void 0;
3
+ exports.dependsOnMessage = exports.validity = exports.getDescriptionSrcURL = exports.descriptionSrcURL = exports.descriptionUrlMetadataKey = exports.getPageLayoutInformation = exports.getChildId = exports.childId = exports.pageLayoutInformation = exports.syncRule = exports.metadataKeys = void 0;
4
4
  exports.getReflectMetadata = getReflectMetadata;
5
5
  exports.getReflectTypeMetadata = getReflectTypeMetadata;
6
+ exports.getValidityMetadata = getValidityMetadata;
7
+ exports.isViewNode = isViewNode;
8
+ exports.description = description;
9
+ exports.hidden = hidden;
10
+ exports.dependsOn = dependsOn;
11
+ exports.getDependsOnMetadata = getDependsOnMetadata;
6
12
  exports.getTextForDeprecated = getTextForDeprecated;
7
13
  require("reflect-metadata");
8
- exports.reflectMetadataKey = Symbol('specificationMetadataKey');
14
+ // Metadata keys for schema post-processing
15
+ exports.metadataKeys = {
16
+ description: Symbol('ui:description'),
17
+ hidden: Symbol('ui:hidden'),
18
+ isViewNode: Symbol('ui:isViewNode'),
19
+ syncRule: Symbol('sync:rule'),
20
+ dependsOn: Symbol('generate:dependsOn'),
21
+ validity: Symbol('generate:validity')
22
+ };
9
23
  const syncRule = (propSpec) => {
10
- return Reflect.metadata(exports.reflectMetadataKey, propSpec);
24
+ return Reflect.metadata(exports.metadataKeys.syncRule, propSpec);
11
25
  };
12
26
  exports.syncRule = syncRule;
13
27
  /**
@@ -20,7 +34,7 @@ exports.syncRule = syncRule;
20
34
  function getReflectMetadata(target, propertyName) {
21
35
  let rule;
22
36
  if (target) {
23
- rule = Reflect.getMetadata(exports.reflectMetadataKey, target, propertyName);
37
+ rule = Reflect.getMetadata(exports.metadataKeys.syncRule, target, propertyName);
24
38
  }
25
39
  return rule;
26
40
  }
@@ -33,7 +47,7 @@ function getReflectMetadata(target, propertyName) {
33
47
  function getReflectTypeMetadata(cls) {
34
48
  let rule;
35
49
  if (cls) {
36
- rule = Reflect.getMetadata(exports.reflectMetadataKey, cls);
50
+ rule = Reflect.getMetadata(exports.metadataKeys.syncRule, cls);
37
51
  }
38
52
  return rule;
39
53
  }
@@ -69,11 +83,127 @@ exports.getDescriptionSrcURL = getDescriptionSrcURL;
69
83
  /*
70
84
  * Validity decorator and functions for it
71
85
  */
72
- exports.validityMetadataKey = Symbol('validityMetadataKey');
73
- const validity = (propSpec) => {
74
- return Reflect.metadata(exports.validityMetadataKey, propSpec);
86
+ const validity = (validity) => {
87
+ return Reflect.metadata(exports.metadataKeys.validity, validity);
75
88
  };
76
89
  exports.validity = validity;
90
+ /**
91
+ * Retrieves the validity metadata associated with a specific property of a target object.
92
+ *
93
+ * @param target - The object containing the property.
94
+ * @param propertyName - The name of the property whose validity metadata is to be retrieved.
95
+ * @returns The validity information of the property, or undefined if no metadata is found.
96
+ */
97
+ function getValidityMetadata(target, propertyName) {
98
+ let validityInfo;
99
+ if (target) {
100
+ validityInfo = Reflect.getMetadata(exports.metadataKeys.validity, target, propertyName);
101
+ }
102
+ return validityInfo;
103
+ }
104
+ /**
105
+ * Mark the target class with a metadata flag indicating it is a view node.
106
+ *
107
+ * @param target - The constructor of the class to be marked as a view node
108
+ */
109
+ function isViewNode(target) {
110
+ Reflect.defineMetadata(exports.metadataKeys.isViewNode, true, target);
111
+ }
112
+ /**
113
+ * Decorator to add a description to a class or property in the schema.
114
+ *
115
+ * @param text - The description text
116
+ * @returns ClassDecorator
117
+ */
118
+ function description(text) {
119
+ return function (target) {
120
+ Reflect.defineMetadata(exports.metadataKeys.description, text, target);
121
+ };
122
+ }
123
+ /**
124
+ * Decorator to conditionally hide a property in the schema based on a condition function.
125
+ * The condition function is evaluated during schema generation with the appropriate context.
126
+ *
127
+ * @param condition - A function that takes context and returns boolean indicating if property should be hidden
128
+ * @returns PropertyDecorator or ClassDecorator depending on usage
129
+ */
130
+ function hidden(condition) {
131
+ return ((target, propertyKey) => {
132
+ if (propertyKey !== undefined) {
133
+ // Property decorator usage
134
+ Reflect.defineMetadata(exports.metadataKeys.hidden, condition, target, propertyKey);
135
+ }
136
+ else {
137
+ // Class decorator usage
138
+ Reflect.defineMetadata(exports.metadataKeys.hidden, condition, target);
139
+ }
140
+ });
141
+ }
142
+ /**
143
+ * Helper function to create a DependsOnMessage object.
144
+ *
145
+ * @param text - The message text (can be true for default i18n message, a string, or a function)
146
+ * @param deletable - Whether the message can be deleted/dismissed in the UI
147
+ * @returns A DependsOnMessage object
148
+ */
149
+ const dependsOnMessage = (text = true, deletable = true) => ({
150
+ text,
151
+ deletable
152
+ });
153
+ exports.dependsOnMessage = dependsOnMessage;
154
+ /**
155
+ * Decorator to conditionally show/hide a property based on one or more property values.
156
+ * The decorated property will be hidden if the dependency condition(s) are not met.
157
+ *
158
+ * @param pathOrConditions - A string property path or an array of condition objects (all must be met)
159
+ * @param conditionOrValueOrMessage - Single condition: condition/expected value/message; Multi-condition: message parameter
160
+ * @param message - Optional message parameter (only for single condition with condition/value)
161
+ * @returns PropertyDecorator
162
+ */
163
+ function dependsOn(pathOrConditions, conditionOrValueOrMessage, message) {
164
+ return (target, propertyKey) => {
165
+ let dependsOnInfo;
166
+ // Check if this is multi-condition (array) or single condition (string)
167
+ if (Array.isArray(pathOrConditions)) {
168
+ // Multi-condition case
169
+ dependsOnInfo = {
170
+ conditions: pathOrConditions,
171
+ message: conditionOrValueOrMessage
172
+ };
173
+ }
174
+ else {
175
+ dependsOnInfo = { path: pathOrConditions };
176
+ if (typeof conditionOrValueOrMessage === 'function') {
177
+ dependsOnInfo.dependsOn = conditionOrValueOrMessage;
178
+ }
179
+ else if (conditionOrValueOrMessage !== undefined && typeof conditionOrValueOrMessage === 'object') {
180
+ // It's a message object
181
+ dependsOnInfo.message = conditionOrValueOrMessage;
182
+ }
183
+ else if (conditionOrValueOrMessage !== undefined) {
184
+ dependsOnInfo.expectedValue = conditionOrValueOrMessage;
185
+ }
186
+ if (message !== undefined) {
187
+ dependsOnInfo.message = message;
188
+ }
189
+ }
190
+ Reflect.defineMetadata(exports.metadataKeys.dependsOn, dependsOnInfo, target, propertyKey);
191
+ };
192
+ }
193
+ /**
194
+ * Retrieves the dependsOn metadata associated with a specific property of a target object.
195
+ *
196
+ * @param target - The object containing the property.
197
+ * @param propertyName - The name of the property whose dependsOn metadata is to be retrieved.
198
+ * @returns The dependsOn information of the property, or undefined if no metadata is found.
199
+ */
200
+ function getDependsOnMetadata(target, propertyName) {
201
+ let dependsOnInfo;
202
+ if (target) {
203
+ dependsOnInfo = Reflect.getMetadata(exports.metadataKeys.dependsOn, target, propertyName);
204
+ }
205
+ return dependsOnInfo;
206
+ }
77
207
  /**
78
208
  * Generates a deprecation message for a given key, optionally including additional validity information.
79
209
  *