@sap/ux-specification 1.139.5 → 1.139.6

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 (163) hide show
  1. package/CHANGELOG.md +36 -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 +247 -247
  14. package/dist/index-min.js.map +4 -4
  15. package/dist/schemas/v2/ApplicationV2.json +28 -3
  16. package/dist/schemas/v2/ListReportNewConfig.json +45 -0
  17. package/dist/schemas/v2/ObjectPageConfig.json +11 -5
  18. package/dist/schemas/v4/ApplicationV4.json +18 -12
  19. package/dist/schemas/v4/BuildingBlocksConfig.json +48 -591
  20. package/dist/schemas/v4/ListReportConfig.json +48 -0
  21. package/dist/schemas/v4/ObjectPageConfig.json +24 -0
  22. package/dist/specification/package.json +16 -16
  23. package/dist/specification/scripts/schema/to-json-schema.d.ts.map +1 -1
  24. package/dist/specification/scripts/schema/to-json-schema.js +23 -13
  25. package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
  26. package/dist/specification/src/sync/common/decoration/decorators.d.ts +65 -4
  27. package/dist/specification/src/sync/common/decoration/decorators.d.ts.map +1 -1
  28. package/dist/specification/src/sync/common/decoration/decorators.js +138 -8
  29. package/dist/specification/src/sync/common/decoration/decorators.js.map +1 -1
  30. package/dist/specification/src/sync/common/distTagEvaluator.d.ts +10 -3
  31. package/dist/specification/src/sync/common/distTagEvaluator.d.ts.map +1 -1
  32. package/dist/specification/src/sync/common/distTagEvaluator.js +14 -4
  33. package/dist/specification/src/sync/common/distTagEvaluator.js.map +1 -1
  34. package/dist/specification/src/sync/common/generate/utils.d.ts +11 -4
  35. package/dist/specification/src/sync/common/generate/utils.d.ts.map +1 -1
  36. package/dist/specification/src/sync/common/generate/utils.js +32 -20
  37. package/dist/specification/src/sync/common/generate/utils.js.map +1 -1
  38. package/dist/specification/src/sync/common/i18n.json +5 -3
  39. package/dist/specification/src/sync/common/rules.js +15 -11
  40. package/dist/specification/src/sync/common/rules.js.map +1 -1
  41. package/dist/specification/src/sync/common/utils.d.ts +39 -0
  42. package/dist/specification/src/sync/common/utils.d.ts.map +1 -1
  43. package/dist/specification/src/sync/common/utils.js +93 -2
  44. package/dist/specification/src/sync/common/utils.js.map +1 -1
  45. package/dist/specification/src/sync/v2/application.d.ts +1 -0
  46. package/dist/specification/src/sync/v2/application.d.ts.map +1 -1
  47. package/dist/specification/src/sync/v2/application.js +18 -0
  48. package/dist/specification/src/sync/v2/application.js.map +1 -1
  49. package/dist/specification/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -1
  50. package/dist/specification/src/sync/v2/export/exportPage.d.ts.map +1 -1
  51. package/dist/specification/src/sync/v2/export/exportPage.js +15 -4
  52. package/dist/specification/src/sync/v2/export/exportPage.js.map +1 -1
  53. package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts.map +1 -1
  54. package/dist/specification/src/sync/v2/export/exportPageGeneric.js +5 -2
  55. package/dist/specification/src/sync/v2/export/exportPageGeneric.js.map +1 -1
  56. package/dist/specification/src/sync/v2/export/factory.d.ts +26 -0
  57. package/dist/specification/src/sync/v2/export/factory.d.ts.map +1 -1
  58. package/dist/specification/src/sync/v2/export/factory.js +3 -3
  59. package/dist/specification/src/sync/v2/export/factory.js.map +1 -1
  60. package/dist/specification/src/sync/v2/export/pages/ObjectPage.d.ts +1 -0
  61. package/dist/specification/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -1
  62. package/dist/specification/src/sync/v2/export/pages/ObjectPage.js +11 -0
  63. package/dist/specification/src/sync/v2/export/pages/ObjectPage.js.map +1 -1
  64. package/dist/specification/src/sync/v2/generate/listReport.d.ts.map +1 -1
  65. package/dist/specification/src/sync/v2/generate/listReport.js +46 -1
  66. package/dist/specification/src/sync/v2/generate/listReport.js.map +1 -1
  67. package/dist/specification/src/sync/v2/generate/objectPage.d.ts.map +1 -1
  68. package/dist/specification/src/sync/v2/generate/objectPage.js +63 -13
  69. package/dist/specification/src/sync/v2/generate/objectPage.js.map +1 -1
  70. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.d.ts +22 -0
  71. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.d.ts.map +1 -0
  72. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.js +124 -0
  73. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.js.map +1 -0
  74. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts +1 -0
  75. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts.map +1 -1
  76. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js +4 -0
  77. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js.map +1 -1
  78. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts +1 -0
  79. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts.map +1 -1
  80. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js +1 -0
  81. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js.map +1 -1
  82. package/dist/specification/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -1
  83. package/dist/specification/src/sync/v2/import/pages/overviewPage.js +4 -0
  84. package/dist/specification/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  85. package/dist/specification/src/sync/v2/utils.d.ts +17 -1
  86. package/dist/specification/src/sync/v2/utils.d.ts.map +1 -1
  87. package/dist/specification/src/sync/v2/utils.js +57 -0
  88. package/dist/specification/src/sync/v2/utils.js.map +1 -1
  89. package/dist/specification/src/sync/v4/export/controls/Header.d.ts +3 -2
  90. package/dist/specification/src/sync/v4/export/controls/Header.d.ts.map +1 -1
  91. package/dist/specification/src/sync/v4/export/controls/Header.js +14 -2
  92. package/dist/specification/src/sync/v4/export/controls/Header.js.map +1 -1
  93. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts +2 -1
  94. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts.map +1 -1
  95. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js +7 -2
  96. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js.map +1 -1
  97. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +4 -0
  98. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -1
  99. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.js +30 -0
  100. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
  101. package/dist/specification/src/sync/v4/export/controls/TableColumn.d.ts +7 -0
  102. package/dist/specification/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -1
  103. package/dist/specification/src/sync/v4/export/controls/TableColumn.js +60 -0
  104. package/dist/specification/src/sync/v4/export/controls/TableColumn.js.map +1 -1
  105. package/dist/specification/src/sync/v4/export/pages/ListReport.d.ts.map +1 -1
  106. package/dist/specification/src/sync/v4/export/pages/ListReport.js +2 -1
  107. package/dist/specification/src/sync/v4/export/pages/ListReport.js.map +1 -1
  108. package/dist/specification/src/sync/v4/generate/ListReportUtils.d.ts +107 -0
  109. package/dist/specification/src/sync/v4/generate/ListReportUtils.d.ts.map +1 -0
  110. package/dist/specification/src/sync/v4/generate/ListReportUtils.js +392 -0
  111. package/dist/specification/src/sync/v4/generate/ListReportUtils.js.map +1 -0
  112. package/dist/specification/src/sync/v4/generate/listReport.d.ts +107 -2
  113. package/dist/specification/src/sync/v4/generate/listReport.d.ts.map +1 -1
  114. package/dist/specification/src/sync/v4/generate/listReport.js +98 -106
  115. package/dist/specification/src/sync/v4/generate/listReport.js.map +1 -1
  116. package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  117. package/dist/specification/src/sync/v4/generate/objectPage.js +7 -7
  118. package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
  119. package/dist/specification/src/sync/v4/sync-rules/App.d.ts +141 -0
  120. package/dist/specification/src/sync/v4/sync-rules/App.d.ts.map +1 -0
  121. package/dist/specification/src/sync/v4/sync-rules/App.js +208 -0
  122. package/dist/specification/src/sync/v4/sync-rules/App.js.map +1 -0
  123. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts +193 -0
  124. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts.map +1 -0
  125. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js +384 -0
  126. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js.map +1 -0
  127. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts +172 -0
  128. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts.map +1 -0
  129. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js +410 -0
  130. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js.map +1 -0
  131. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts +70 -0
  132. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts.map +1 -0
  133. package/dist/specification/src/sync/v4/sync-rules/Page.js +73 -0
  134. package/dist/specification/src/sync/v4/sync-rules/Page.js.map +1 -0
  135. package/dist/specification/src/sync/v4/sync-rules/utils.d.ts +9 -0
  136. package/dist/specification/src/sync/v4/sync-rules/utils.d.ts.map +1 -0
  137. package/dist/specification/src/sync/v4/sync-rules/utils.js +43 -0
  138. package/dist/specification/src/sync/v4/sync-rules/utils.js.map +1 -0
  139. package/dist/specification/src/sync/v4/utils/utils.d.ts +5 -27
  140. package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
  141. package/dist/specification/src/sync/v4/utils/utils.js +6 -53
  142. package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
  143. package/dist/types/src/common/types.d.ts +104 -1
  144. package/dist/types/src/common/types.d.ts.map +1 -1
  145. package/dist/types/src/common/types.js +1 -0
  146. package/dist/types/src/common/types.js.map +1 -1
  147. package/dist/types/src/common/webapp/manifest/Manifest.d.ts +1 -1
  148. package/dist/types/src/common/webapp/manifest/Manifest.d.ts.map +1 -1
  149. package/dist/types/src/v2/application.d.ts +18 -0
  150. package/dist/types/src/v2/application.d.ts.map +1 -1
  151. package/dist/types/src/v2/controls/ObjectPageHeaderSection.d.ts.map +1 -1
  152. package/dist/types/src/v2/controls/ObjectPageTable.d.ts +4 -4
  153. package/dist/types/src/v2/controls/ObjectPageTable.d.ts.map +1 -1
  154. package/dist/types/src/v2/controls/Table.d.ts.map +1 -1
  155. package/dist/types/src/v2/pages/ObjectPageConfigV2.d.ts +10 -1
  156. package/dist/types/src/v2/pages/ObjectPageConfigV2.d.ts.map +1 -1
  157. package/dist/types/src/v4/application.d.ts +6 -6
  158. package/dist/types/src/v4/controls/ObjectPageHeaderSection.d.ts.map +1 -1
  159. package/dist/types/src/v4/controls/ObjectPageSection.d.ts.map +1 -1
  160. package/dist/types/src/v4/webapp/manifest/ManifestSettings.d.ts +59 -0
  161. package/dist/types/src/v4/webapp/manifest/ManifestSettings.d.ts.map +1 -1
  162. package/dist/types/src/v4/webapp/manifest/ManifestSettings.js.map +1 -1
  163. package/package.json +16 -16
@@ -1124,6 +1124,30 @@
1124
1124
  "items": {
1125
1125
  "type": "string"
1126
1126
  }
1127
+ },
1128
+ "required": {
1129
+ "description": "Determines whether a custom column is required.\nIf set to true, an asterisk is displayed in the column header.",
1130
+ "artifactType": "Manifest",
1131
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1132
+ "type": "boolean"
1133
+ },
1134
+ "importance": {
1135
+ "description": "The responsive table provides a feature where the table automatically moves columns to the pop-in area in the following order based on their importance:\n- Columns with \"Low\" importance are hidden first.\n- Columns with \"Medium\" importance are hidden next.\n- Columns with \"High\" importance are always displayed.",
1136
+ "artifactType": "Manifest",
1137
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1138
+ "enum": [
1139
+ "High",
1140
+ "Low",
1141
+ "Medium"
1142
+ ],
1143
+ "type": "string"
1144
+ },
1145
+ "tooltip": {
1146
+ "description": "The tooltip is shown on the header of a custom column when a user hovers over it.",
1147
+ "i18nClassification": "COL: Custom column tooltip text",
1148
+ "artifactType": "Manifest",
1149
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1150
+ "type": "string"
1127
1151
  }
1128
1152
  },
1129
1153
  "additionalProperties": false,
@@ -1886,6 +1910,30 @@
1886
1910
  "items": {
1887
1911
  "type": "string"
1888
1912
  }
1913
+ },
1914
+ "required": {
1915
+ "description": "Determines whether a custom column is required.\nIf set to true, an asterisk is displayed in the column header.",
1916
+ "artifactType": "Manifest",
1917
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1918
+ "type": "boolean"
1919
+ },
1920
+ "importance": {
1921
+ "description": "The responsive table provides a feature where the table automatically moves columns to the pop-in area in the following order based on their importance:\n- Columns with \"Low\" importance are hidden first.\n- Columns with \"Medium\" importance are hidden next.\n- Columns with \"High\" importance are always displayed.",
1922
+ "artifactType": "Manifest",
1923
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1924
+ "enum": [
1925
+ "High",
1926
+ "Low",
1927
+ "Medium"
1928
+ ],
1929
+ "type": "string"
1930
+ },
1931
+ "tooltip": {
1932
+ "description": "The tooltip is shown on the header of a custom column when a user hovers over it.",
1933
+ "i18nClassification": "COL: Custom column tooltip text",
1934
+ "artifactType": "Manifest",
1935
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1936
+ "type": "string"
1889
1937
  }
1890
1938
  },
1891
1939
  "additionalProperties": false,
@@ -1185,6 +1185,30 @@
1185
1185
  "items": {
1186
1186
  "type": "string"
1187
1187
  }
1188
+ },
1189
+ "required": {
1190
+ "description": "Determines whether a custom column is required.\nIf set to true, an asterisk is displayed in the column header.",
1191
+ "artifactType": "Manifest",
1192
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1193
+ "type": "boolean"
1194
+ },
1195
+ "importance": {
1196
+ "description": "The responsive table provides a feature where the table automatically moves columns to the pop-in area in the following order based on their importance:\n- Columns with \"Low\" importance are hidden first.\n- Columns with \"Medium\" importance are hidden next.\n- Columns with \"High\" importance are always displayed.",
1197
+ "artifactType": "Manifest",
1198
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1199
+ "enum": [
1200
+ "High",
1201
+ "Low",
1202
+ "Medium"
1203
+ ],
1204
+ "type": "string"
1205
+ },
1206
+ "tooltip": {
1207
+ "description": "The tooltip is shown on the header of a custom column when a user hovers over it.",
1208
+ "i18nClassification": "COL: Custom column tooltip text",
1209
+ "artifactType": "Manifest",
1210
+ "descriptionSrcURL": "https://ui5.sap.com/sdk/#/topic/d525522c1bf54672ae4e02d66b38e60c",
1211
+ "type": "string"
1188
1212
  }
1189
1213
  },
1190
1214
  "additionalProperties": false,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap/ux-specification",
3
- "version": "1.139.5",
3
+ "version": "1.139.6",
4
4
  "displayName": "SAP Fiori tools - Specification",
5
5
  "description": "SAP Fiori tools - Specification",
6
6
  "files": [
@@ -34,11 +34,11 @@
34
34
  "docuV4": "ts-node ./scripts/extractDocu.ts --version=v4 format=excel",
35
35
  "htmlV2": "ts-node ./scripts/extractDocu.ts --version=v2 --format=html",
36
36
  "htmlV4": "ts-node ./scripts/extractDocu.ts --version=v4 --format=html",
37
- "lint": "eslint . --ext .ts",
38
- "lint:summary": "eslint . --ext .ts -f summary",
39
- "lint:fix": "eslint . --ext .ts --fix",
40
- "lint:report": "eslint . --ext .ts -f multiple",
41
- "lint:report:jslint": "eslint . --ext .ts -o reports/lint/eslint.jslint.xml -f jslint-xml",
37
+ "lint": "eslint .",
38
+ "lint:summary": "eslint . -f summary",
39
+ "lint:fix": "eslint . --fix",
40
+ "lint:report": "eslint . -f multiple",
41
+ "lint:report:jslint": "eslint . -o reports/lint/eslint.jslint.xml -f jslint-xml",
42
42
  "macros": "ts-node ./scripts/macros/index.ts",
43
43
  "test": "jest && node ../../scripts/scov.js reports/test/unit/coverage/lcov.info",
44
44
  "test:ci": "jest --ci --forceExit --detectOpenHandles && node ../../scripts/scov.js reports/test/unit/coverage/lcov.info",
@@ -49,20 +49,20 @@
49
49
  "publisher": "SAPSE",
50
50
  "license": "SEE LICENSE IN LICENSE",
51
51
  "dependencies": {
52
- "@sap-ux/fe-fpm-writer": "0.40.2",
53
- "@sap-ux/vocabularies-types": "0.13.2"
52
+ "@sap-ux/fe-fpm-writer": "0.40.11",
53
+ "@sap-ux/vocabularies-types": "0.14.5"
54
54
  },
55
55
  "devDependencies": {
56
- "@sap-ux/annotation-converter": "0.10.9",
57
- "@sap-ux/edmx-parser": "0.9.6",
58
- "@sap-ux/project-access": "1.33.0",
59
- "@sap/ux-specification-types": "1.139.5",
56
+ "@sap-ux/annotation-converter": "0.10.19",
57
+ "@sap-ux/edmx-parser": "0.9.8",
58
+ "@sap-ux/project-access": "1.34.2",
59
+ "@sap/ux-specification-types": "1.139.6",
60
60
  "@sapui5/types": "latest-1.139",
61
61
  "@types/d3": "7.4.3",
62
62
  "@types/jquery": "3.5.33",
63
+ "@types/json-schema": "7.0.15",
63
64
  "@types/mem-fs": "1.1.5",
64
65
  "@types/mem-fs-editor": "7.0.1",
65
- "@types/json-schema": "7.0.5",
66
66
  "@ui5/flexibility-utils": "0.1.3",
67
67
  "@xml-tools/ast": "5.0.5",
68
68
  "@xml-tools/parser": "1.0.11",
@@ -71,17 +71,17 @@
71
71
  "d3": "7.9.0",
72
72
  "deepmerge": "4.3.1",
73
73
  "ejs": "3.1.10",
74
+ "eslint-formatter-checkstyle": "9.0.1",
74
75
  "excel4node": "1.8.2",
75
- "i18next": "25.7.3",
76
+ "i18next": "25.7.4",
76
77
  "jquery": "3.7.1",
77
78
  "jsdom": "25.0.1",
78
- "lodash.unset": "4.5.2",
79
79
  "mem-fs": "2.1.0",
80
80
  "mem-fs-editor": "9.7.0",
81
81
  "path": "0.12.7",
82
82
  "reflect-metadata": "0.2.2",
83
83
  "semver": "7.7.3",
84
- "typescript-json-schema": "0.65.1",
84
+ "typescript-json-schema": "0.67.1",
85
85
  "xml-js": "1.6.11"
86
86
  },
87
87
  "husky": {
@@ -1 +1 @@
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;AA8BhD;;;;;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;AAwID;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,yBAwBzC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CA0BrD"}
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;AA8BhD;;;;;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;AAqJD;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,yBAwBzC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CA0BrD"}
@@ -221,20 +221,30 @@ function addManifestPathsToApplication(schema, classPrototype) {
221
221
  for (const property in schema.definitions.AppSettings.properties) {
222
222
  const propertySchema = schema.definitions.AppSettings.properties[property];
223
223
  const rule = (0, decoration_1.getReflectMetadata)(classPrototype, property);
224
- const manifestPath = rule?.manifest?.path;
225
- if (manifestPath) {
226
- const manifestPath = `${rule.manifest.path()}/${property}`;
227
- propertySchema.manifestPath = (0, utils_2.convertSyncRulePathToJsonPath)(manifestPath);
228
- // Continue parsing of inner properties
229
- if (propertySchema.anyOf) {
230
- for (const innerSchema of propertySchema.anyOf) {
231
- if (!innerSchema.properties) {
232
- continue;
233
- }
234
- for (const property in innerSchema.properties) {
235
- innerSchema.properties[property].manifestPath = (0, utils_2.appendJsonPathSegment)(propertySchema.manifestPath, property);
236
- }
224
+ if (!rule?.manifest?.path) {
225
+ return;
226
+ }
227
+ const exportPropertyKey = rule?.manifest?.key ?? property;
228
+ const manifestPath = `${rule.manifest.path()}/${exportPropertyKey}`;
229
+ propertySchema.manifestPath = (0, utils_2.convertSyncRulePathToJsonPath)(manifestPath);
230
+ // Continue parsing of inner properties
231
+ // Handle anyOf with inner properties
232
+ if (propertySchema.anyOf) {
233
+ for (const innerSchema of propertySchema.anyOf) {
234
+ if (!innerSchema.properties) {
235
+ continue;
237
236
  }
237
+ for (const property in innerSchema.properties) {
238
+ innerSchema.properties[property].manifestPath = (0, utils_2.appendJsonPathSegment)(propertySchema.manifestPath, property);
239
+ }
240
+ }
241
+ }
242
+ // Handle $ref with inner properties
243
+ if (propertySchema.manifestPath && propertySchema.$ref) {
244
+ const innerDefinitions = (0, utils_2.getDefinitionKey)(propertySchema.$ref);
245
+ const innerProperties = schema.definitions[innerDefinitions]?.properties ?? {};
246
+ for (const innerProperty in innerProperties) {
247
+ innerProperties[innerProperty].manifestPath = (0, utils_2.appendJsonPathSegment)(propertySchema.manifestPath, innerProperty);
238
248
  }
239
249
  }
240
250
  }
@@ -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
  *
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../../../../src/sync/common/decoration/decorators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../../../../src/sync/common/decoration/decorators.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,11 @@
1
1
  import type { ExtensionLogger } from '@sap/ux-specification-types';
2
+ /**
3
+ * Checks if the provided minUI5Version is a variable (starts with '$').
4
+ *
5
+ * @param minUI5Version - The minimum UI5 version to check.
6
+ * @returns {boolean} - true if minUI5Version is a variable, false otherwise.
7
+ */
8
+ export declare function isMinUI5VersionVariable(minUI5Version: string): boolean;
2
9
  export declare class DistTagEvaluator {
3
10
  static distTagsOfSpec: string[];
4
11
  constructor();
@@ -28,11 +35,11 @@ export declare class DistTagEvaluator {
28
35
  */
29
36
  doesUi5VersionFitDistTags(minUI5Version: string | string[], logger: ExtensionLogger): void;
30
37
  /**
31
- * Checks if the given version name is valid.
38
+ * Basic check if the minUI5Version is set and not a variable in the manifest.json.
32
39
  *
33
40
  * @param minUI5Version - The minimum UI5 version to validate.
34
- * @param logger - The logger instance used for logging messages.
35
- * @returns {boolean} - Returns true if the version name is valid, otherwise false.
41
+ * @param logger - Instance of the extension logger
42
+ * @returns {boolean} - true if minUI5Version is set and not a variable
36
43
  */
37
44
  private checkVersionName;
38
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"distTagEvaluator.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/distTagEvaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAOnE,qBAAa,gBAAgB;IACzB,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,CAAM;;IAQrC;;OAEG;IACH,MAAM,CAAC,mBAAmB,IAAI,IAAI;IAIlC;;;;OAIG;IACI,cAAc,IAAI,MAAM,GAAG,SAAS;IAI3C;;;;;;OAMG;IACI,oBAAoB,IAAI,MAAM,EAAE;IAoBvC;;;;;OAKG;IACI,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IAsCjG;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;CAe3B"}
1
+ {"version":3,"file":"distTagEvaluator.d.ts","sourceRoot":"","sources":["../../../../../src/sync/common/distTagEvaluator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAOnE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAEtE;AAED,qBAAa,gBAAgB;IACzB,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,CAAM;;IAQrC;;OAEG;IACH,MAAM,CAAC,mBAAmB,IAAI,IAAI;IAIlC;;;;OAIG;IACI,cAAc,IAAI,MAAM,GAAG,SAAS;IAI3C;;;;;;OAMG;IACI,oBAAoB,IAAI,MAAM,EAAE;IAoBvC;;;;;OAKG;IACI,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IAsCjG;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;CAe3B"}
@@ -37,11 +37,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.DistTagEvaluator = void 0;
40
+ exports.isMinUI5VersionVariable = isMinUI5VersionVariable;
40
41
  const ux_specification_types_1 = require("@sap/ux-specification-types");
41
42
  const extensionLogger_1 = require("../../extensionLogger");
42
43
  const i18next_1 = __importDefault(require("i18next"));
43
44
  const distTagsJSON = __importStar(require("./dist_tag.json"));
44
45
  const package_json_1 = require("../../../package.json");
46
+ /**
47
+ * Checks if the provided minUI5Version is a variable (starts with '$').
48
+ *
49
+ * @param minUI5Version - The minimum UI5 version to check.
50
+ * @returns {boolean} - true if minUI5Version is a variable, false otherwise.
51
+ */
52
+ function isMinUI5VersionVariable(minUI5Version) {
53
+ return minUI5Version.startsWith('$');
54
+ }
45
55
  class DistTagEvaluator {
46
56
  static { this.distTagsOfSpec = []; }
47
57
  constructor() {
@@ -130,14 +140,14 @@ class DistTagEvaluator {
130
140
  }
131
141
  }
132
142
  /**
133
- * Checks if the given version name is valid.
143
+ * Basic check if the minUI5Version is set and not a variable in the manifest.json.
134
144
  *
135
145
  * @param minUI5Version - The minimum UI5 version to validate.
136
- * @param logger - The logger instance used for logging messages.
137
- * @returns {boolean} - Returns true if the version name is valid, otherwise false.
146
+ * @param logger - Instance of the extension logger
147
+ * @returns {boolean} - true if minUI5Version is set and not a variable
138
148
  */
139
149
  checkVersionName(minUI5Version, logger) {
140
- if (!minUI5Version || minUI5Version.startsWith('$')) {
150
+ if (!minUI5Version || isMinUI5VersionVariable(minUI5Version)) {
141
151
  const message = i18next_1.default.t('UNKNOWNMINUI5VERSION', { minUI5Version });
142
152
  (0, extensionLogger_1.log)(logger, {
143
153
  severity: "info" /* LogSeverity.Info */,