@sap/ux-specification 1.96.29 → 1.96.31

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 (264) hide show
  1. package/dist/documentation/runDocu-min.js.map +1 -1
  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-ObjectPage.html +2 -2
  6. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  7. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  8. package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
  9. package/dist/documentation/v4/v4-FreestylePage.html +2 -2
  10. package/dist/documentation/v4/v4-ListReport.html +2 -2
  11. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  12. package/dist/index-min.js +114 -114
  13. package/dist/index-min.js.map +3 -3
  14. package/dist/package.json +7 -6
  15. package/dist/schemas/v2/ApplicationV2.json +5 -2
  16. package/dist/schemas/v2/ObjectPageConfig.json +4 -4
  17. package/dist/schemas/v4/ApplicationV4.json +16 -13
  18. package/dist/schemas/v4/BuildingBlocksConfig.json +37 -22
  19. package/dist/schemas/v4/ListReportConfig.json +192 -24
  20. package/dist/schemas/v4/ObjectPageConfig.json +9 -9
  21. package/dist/src/api.d.ts.map +1 -1
  22. package/dist/src/api.js +9 -9
  23. package/dist/src/api.js.map +1 -1
  24. package/dist/src/sync/common/appProvider.d.ts +1 -0
  25. package/dist/src/sync/common/appProvider.d.ts.map +1 -1
  26. package/dist/src/sync/common/appProvider.js +5 -3
  27. package/dist/src/sync/common/appProvider.js.map +1 -1
  28. package/dist/src/sync/common/decoration/factory.d.ts +7 -7
  29. package/dist/src/sync/common/decoration/factory.d.ts.map +1 -1
  30. package/dist/src/sync/common/decoration/factory.js +2 -2
  31. package/dist/src/sync/common/decoration/factory.js.map +1 -1
  32. package/dist/src/sync/common/generate/objectPage.js +3 -3
  33. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  34. package/dist/src/sync/common/generate/utils.d.ts +9 -2
  35. package/dist/src/sync/common/generate/utils.d.ts.map +1 -1
  36. package/dist/src/sync/common/generate/utils.js +28 -3
  37. package/dist/src/sync/common/generate/utils.js.map +1 -1
  38. package/dist/src/sync/common/i18n.json +2 -1
  39. package/dist/src/sync/common/importProject.d.ts +15 -2
  40. package/dist/src/sync/common/importProject.d.ts.map +1 -1
  41. package/dist/src/sync/common/importProject.js +71 -35
  42. package/dist/src/sync/common/importProject.js.map +1 -1
  43. package/dist/src/sync/common/utils.d.ts +16 -8
  44. package/dist/src/sync/common/utils.d.ts.map +1 -1
  45. package/dist/src/sync/common/utils.js +26 -11
  46. package/dist/src/sync/common/utils.js.map +1 -1
  47. package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -1
  48. package/dist/src/sync/v2/export/controls/Fragment.js +2 -1
  49. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  50. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +1 -1
  51. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -1
  52. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +1 -1
  53. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -1
  54. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +8 -8
  55. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  56. package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -1
  57. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  58. package/dist/src/sync/v2/export/export.js +1 -1
  59. package/dist/src/sync/v2/export/export.js.map +1 -1
  60. package/dist/src/sync/v2/export/exportPage.js +9 -9
  61. package/dist/src/sync/v2/export/exportPage.js.map +1 -1
  62. package/dist/src/sync/v2/export/factory.js +4 -4
  63. package/dist/src/sync/v2/export/factory.js.map +1 -1
  64. package/dist/src/sync/v2/export/manifest.d.ts.map +1 -1
  65. package/dist/src/sync/v2/export/manifest.js +2 -2
  66. package/dist/src/sync/v2/export/manifest.js.map +1 -1
  67. package/dist/src/sync/v2/generate/analyticalListReport.d.ts +1 -1
  68. package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -1
  69. package/dist/src/sync/v2/generate/analyticalListReport.js +22 -27
  70. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  71. package/dist/src/sync/v2/generate/generate.d.ts +12 -12
  72. package/dist/src/sync/v2/generate/generate.d.ts.map +1 -1
  73. package/dist/src/sync/v2/generate/generate.js +61 -45
  74. package/dist/src/sync/v2/generate/generate.js.map +1 -1
  75. package/dist/src/sync/v2/generate/listReport.d.ts +1 -3
  76. package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -1
  77. package/dist/src/sync/v2/generate/listReport.js +7 -11
  78. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  79. package/dist/src/sync/v2/generate/objectPage.d.ts +1 -2
  80. package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -1
  81. package/dist/src/sync/v2/generate/objectPage.js +70 -81
  82. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  83. package/dist/src/sync/v2/generate/utils.d.ts +2 -2
  84. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -1
  85. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  86. package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -1
  87. package/dist/src/sync/v2/import/app/appProvider.js +2 -2
  88. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -1
  89. package/dist/src/sync/v2/import/app/ovpProvider.js +2 -2
  90. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -1
  91. package/dist/src/sync/v2/import/common/index.d.ts +2 -2
  92. package/dist/src/sync/v2/import/common/index.d.ts.map +1 -1
  93. package/dist/src/sync/v2/import/common/index.js +3 -3
  94. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  95. package/dist/src/sync/v2/import/pages/analyticalListPage.js +12 -12
  96. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
  97. package/dist/src/sync/v2/import/pages/listReport.js +9 -9
  98. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  99. package/dist/src/sync/v2/import/pages/objectPage.js +16 -16
  100. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  101. package/dist/src/sync/v2/import/pages/overviewPage.js +1 -1
  102. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  103. package/dist/src/sync/v2/import/utils.d.ts.map +1 -1
  104. package/dist/src/sync/v2/import/utils.js +3 -3
  105. package/dist/src/sync/v2/import/utils.js.map +1 -1
  106. package/dist/src/sync/v2/types.d.ts +3 -3
  107. package/dist/src/sync/v2/types.d.ts.map +1 -1
  108. package/dist/src/sync/v2/types.js +1 -1
  109. package/dist/src/sync/v2/types.js.map +1 -1
  110. package/dist/src/sync/v4/application.d.ts +2 -0
  111. package/dist/src/sync/v4/application.d.ts.map +1 -1
  112. package/dist/src/sync/v4/application.js +10 -2
  113. package/dist/src/sync/v4/application.js.map +1 -1
  114. package/dist/src/sync/v4/export/controls/FilterBar.d.ts +8 -2
  115. package/dist/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -1
  116. package/dist/src/sync/v4/export/controls/FilterBar.js +48 -4
  117. package/dist/src/sync/v4/export/controls/FilterBar.js.map +1 -1
  118. package/dist/src/sync/v4/export/controls/Header.d.ts +9 -0
  119. package/dist/src/sync/v4/export/controls/Header.d.ts.map +1 -0
  120. package/dist/src/sync/v4/export/controls/Header.js +10 -0
  121. package/dist/src/sync/v4/export/controls/Header.js.map +1 -0
  122. package/dist/src/sync/v4/export/controls/HeaderAction.d.ts +16 -0
  123. package/dist/src/sync/v4/export/controls/HeaderAction.d.ts.map +1 -0
  124. package/dist/src/sync/v4/export/controls/HeaderAction.js +94 -0
  125. package/dist/src/sync/v4/export/controls/HeaderAction.js.map +1 -0
  126. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +2 -2
  127. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -1
  128. package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts +1 -1
  129. package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts.map +1 -1
  130. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +3 -3
  131. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -1
  132. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +2 -2
  133. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -1
  134. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts +5 -6
  135. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts.map +1 -1
  136. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js +11 -29
  137. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js.map +1 -1
  138. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js +1 -1
  139. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js.map +1 -1
  140. package/dist/src/sync/v4/export/controls/Table.js +6 -6
  141. package/dist/src/sync/v4/export/controls/Table.js.map +1 -1
  142. package/dist/src/sync/v4/export/controls/index.d.ts +2 -0
  143. package/dist/src/sync/v4/export/controls/index.d.ts.map +1 -1
  144. package/dist/src/sync/v4/export/controls/index.js +2 -0
  145. package/dist/src/sync/v4/export/controls/index.js.map +1 -1
  146. package/dist/src/sync/v4/export/export.d.ts +1 -1
  147. package/dist/src/sync/v4/export/export.d.ts.map +1 -1
  148. package/dist/src/sync/v4/export/export.js +62 -34
  149. package/dist/src/sync/v4/export/export.js.map +1 -1
  150. package/dist/src/sync/v4/export/factory.js +3 -3
  151. package/dist/src/sync/v4/export/factory.js.map +1 -1
  152. package/dist/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
  153. package/dist/src/sync/v4/export/fpmCustomPage.js +5 -5
  154. package/dist/src/sync/v4/export/fpmCustomPage.js.map +1 -1
  155. package/dist/src/sync/v4/export/manifest.d.ts +1 -1
  156. package/dist/src/sync/v4/export/manifest.d.ts.map +1 -1
  157. package/dist/src/sync/v4/export/manifest.js +40 -30
  158. package/dist/src/sync/v4/export/manifest.js.map +1 -1
  159. package/dist/src/sync/v4/export/pages/ListReport.d.ts +2 -1
  160. package/dist/src/sync/v4/export/pages/ListReport.d.ts.map +1 -1
  161. package/dist/src/sync/v4/export/pages/ListReport.js +7 -4
  162. package/dist/src/sync/v4/export/pages/ListReport.js.map +1 -1
  163. package/dist/src/sync/v4/export/pages/ObjectPage.js +1 -1
  164. package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -1
  165. package/dist/src/sync/v4/export/types.d.ts +2 -2
  166. package/dist/src/sync/v4/export/types.d.ts.map +1 -1
  167. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.d.ts +17 -0
  168. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.d.ts.map +1 -0
  169. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.js +71 -0
  170. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.js.map +1 -0
  171. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.d.ts +11 -0
  172. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.d.ts.map +1 -0
  173. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.js +169 -0
  174. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.js.map +1 -0
  175. package/dist/src/sync/v4/generate/fpm-custom-page/generator.d.ts +13 -0
  176. package/dist/src/sync/v4/generate/fpm-custom-page/generator.d.ts.map +1 -0
  177. package/dist/src/sync/v4/generate/{fpmCustomPage.js → fpm-custom-page/generator.js} +57 -33
  178. package/dist/src/sync/v4/generate/fpm-custom-page/generator.js.map +1 -0
  179. package/dist/src/sync/v4/generate/fpm-custom-page/utils.d.ts +3 -0
  180. package/dist/src/sync/v4/generate/fpm-custom-page/utils.d.ts.map +1 -0
  181. package/dist/src/sync/v4/generate/fpm-custom-page/utils.js +8 -0
  182. package/dist/src/sync/v4/generate/fpm-custom-page/utils.js.map +1 -0
  183. package/dist/src/sync/v4/generate/generate.d.ts +3 -3
  184. package/dist/src/sync/v4/generate/generate.d.ts.map +1 -1
  185. package/dist/src/sync/v4/generate/generate.js +19 -10
  186. package/dist/src/sync/v4/generate/generate.js.map +1 -1
  187. package/dist/src/sync/v4/generate/index.d.ts +1 -1
  188. package/dist/src/sync/v4/generate/index.d.ts.map +1 -1
  189. package/dist/src/sync/v4/generate/index.js +2 -2
  190. package/dist/src/sync/v4/generate/index.js.map +1 -1
  191. package/dist/src/sync/v4/generate/listReport.d.ts +13 -3
  192. package/dist/src/sync/v4/generate/listReport.d.ts.map +1 -1
  193. package/dist/src/sync/v4/generate/listReport.js +148 -24
  194. package/dist/src/sync/v4/generate/listReport.js.map +1 -1
  195. package/dist/src/sync/v4/generate/objectPage.d.ts +2 -2
  196. package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  197. package/dist/src/sync/v4/generate/objectPage.js +20 -28
  198. package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
  199. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts +1 -1
  200. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -1
  201. package/dist/src/sync/v4/import/app/baseAppProvider.js +5 -7
  202. package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -1
  203. package/dist/src/sync/v4/import/pages/fpmCustomPage.js +3 -3
  204. package/dist/src/sync/v4/import/pages/fpmCustomPage.js.map +1 -1
  205. package/dist/src/sync/v4/import/pages/listReport.d.ts.map +1 -1
  206. package/dist/src/sync/v4/import/pages/listReport.js +57 -0
  207. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -1
  208. package/dist/src/sync/v4/import/pages/objectPage.js +8 -8
  209. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
  210. package/dist/src/sync/v4/sync-rules/controllerExtensions.d.ts.map +1 -1
  211. package/dist/src/sync/v4/sync-rules/controllerExtensions.js +3 -3
  212. package/dist/src/sync/v4/sync-rules/controllerExtensions.js.map +1 -1
  213. package/dist/src/sync/v4/types.d.ts +9 -0
  214. package/dist/src/sync/v4/types.d.ts.map +1 -1
  215. package/dist/src/sync/v4/utils/StableIdHelper.js +1 -1
  216. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -1
  217. package/dist/src/sync/v4/utils/utils.d.ts +26 -4
  218. package/dist/src/sync/v4/utils/utils.d.ts.map +1 -1
  219. package/dist/src/sync/v4/utils/utils.js +50 -17
  220. package/dist/src/sync/v4/utils/utils.js.map +1 -1
  221. package/package.json +7 -6
  222. package/dist/scripts/extractDocu.d.ts +0 -2
  223. package/dist/scripts/extractDocu.d.ts.map +0 -1
  224. package/dist/scripts/extractDocu.js +0 -514
  225. package/dist/scripts/extractDocu.js.map +0 -1
  226. package/dist/scripts/macros/api.d.ts +0 -9
  227. package/dist/scripts/macros/api.d.ts.map +0 -1
  228. package/dist/scripts/macros/api.js +0 -161
  229. package/dist/scripts/macros/api.js.map +0 -1
  230. package/dist/scripts/macros/cmd.d.ts +0 -7
  231. package/dist/scripts/macros/cmd.d.ts.map +0 -1
  232. package/dist/scripts/macros/cmd.js +0 -49
  233. package/dist/scripts/macros/cmd.js.map +0 -1
  234. package/dist/scripts/macros/corrections.d.ts +0 -18
  235. package/dist/scripts/macros/corrections.d.ts.map +0 -1
  236. package/dist/scripts/macros/corrections.js +0 -188
  237. package/dist/scripts/macros/corrections.js.map +0 -1
  238. package/dist/scripts/macros/index.d.ts +0 -2
  239. package/dist/scripts/macros/index.d.ts.map +0 -1
  240. package/dist/scripts/macros/index.js +0 -8
  241. package/dist/scripts/macros/index.js.map +0 -1
  242. package/dist/scripts/macros/schema.d.ts +0 -9
  243. package/dist/scripts/macros/schema.d.ts.map +0 -1
  244. package/dist/scripts/macros/schema.js +0 -201
  245. package/dist/scripts/macros/schema.js.map +0 -1
  246. package/dist/scripts/macros/types.d.ts +0 -77
  247. package/dist/scripts/macros/types.d.ts.map +0 -1
  248. package/dist/scripts/macros/types.js +0 -14
  249. package/dist/scripts/macros/types.js.map +0 -1
  250. package/dist/scripts/runDocu.d.ts +0 -2
  251. package/dist/scripts/runDocu.d.ts.map +0 -1
  252. package/dist/scripts/runDocu.js +0 -581
  253. package/dist/scripts/runDocu.js.map +0 -1
  254. package/dist/scripts/spec.d.ts +0 -2
  255. package/dist/scripts/spec.d.ts.map +0 -1
  256. package/dist/scripts/spec.js +0 -113
  257. package/dist/scripts/spec.js.map +0 -1
  258. package/dist/scripts/to-json-schema.d.ts +0 -11
  259. package/dist/scripts/to-json-schema.d.ts.map +0 -1
  260. package/dist/scripts/to-json-schema.js +0 -154
  261. package/dist/scripts/to-json-schema.js.map +0 -1
  262. package/dist/src/sync/v4/generate/fpmCustomPage.d.ts +0 -10
  263. package/dist/src/sync/v4/generate/fpmCustomPage.d.ts.map +0 -1
  264. package/dist/src/sync/v4/generate/fpmCustomPage.js.map +0 -1
@@ -1,201 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.generateSchema = void 0;
4
- const ux_specification_types_1 = require("@sap/ux-specification-types");
5
- const types_1 = require("./types");
6
- const corrections_1 = require("./corrections");
7
- /**
8
- * Method checks if passed type is atomic type like 'boolean', 'string', 'number', etc.
9
- * @param {string} type Type to check.
10
- * @returns {boolean} Is atomic type.
11
- */
12
- function isAtomicType(type) {
13
- return ['string', 'number', 'integer', 'boolean', 'object', 'array', 'null', 'any'].includes(type);
14
- }
15
- /**
16
- * Method returns base/skeleton schema.
17
- * @returns {SchemaDefinition} JSON schema.
18
- */
19
- function getRootSchema() {
20
- const hiddenProperty = { type: 'string', hidden: true };
21
- return {
22
- type: 'object',
23
- properties: {
24
- $filePath: hiddenProperty,
25
- $schema: hiddenProperty
26
- },
27
- additionalProperties: false,
28
- definitions: {},
29
- $schema: 'http://json-schema.org/draft-07/schema#'
30
- };
31
- }
32
- /**
33
- * Method formats description text before storing it into schema.
34
- * Currently method removes HTML markup from text.
35
- * @param {string} [description] Description to format.
36
- * @returns {string} Formatted description.
37
- */
38
- function formatDescription(description) {
39
- return description ? description.replace(/<\/?[^>]+(>|$)/g, '') : '';
40
- }
41
- /**
42
- * Method prepares schema definition object.
43
- * @param {MacrosPropertyType} metadataType Metadata property type.
44
- * @param {string} [description] Description of definition.
45
- * @returns {SchemaDefinition} JSON schema for definition.
46
- */
47
- function prepareDefinition(metadataType, description) {
48
- if (description) {
49
- // Remove html markup from description
50
- description = formatDescription(description);
51
- }
52
- return {
53
- description,
54
- isViewNode: true,
55
- type: 'object',
56
- properties: {},
57
- additionalProperties: false,
58
- metadata: {
59
- path: [],
60
- type: metadataType
61
- }
62
- };
63
- }
64
- /**
65
- * Method prepares schema object for passed type.
66
- * @param {string} type Type of target property or object.
67
- * @returns {SchemaDefinition} JSON schema.
68
- */
69
- function getSchemaForType(type) {
70
- const schema = {};
71
- if (isAtomicType(type)) {
72
- schema.type = type;
73
- }
74
- else {
75
- schema.$ref = `#/definitions/${type}`;
76
- }
77
- return schema;
78
- }
79
- /**
80
- * Method prepares schema object for passed types.
81
- * @param {string} [type] Type of target property or object.
82
- * @param {UI5PropertyType[]} [types] Types of target property or object.
83
- * @returns {SchemaDefinition} JSON schema.
84
- */
85
- function getTypes(type, types) {
86
- let result = [];
87
- if (type) {
88
- result = type.split('|');
89
- }
90
- else if (types) {
91
- result = types.map((propertyType) => propertyType.value);
92
- }
93
- return result.map((propertyType) => {
94
- return getSchemaForType(propertyType);
95
- });
96
- }
97
- /**
98
- * Method prepares schema property object for passed generic property.
99
- * @param {UI5Property} property SAPUI5 property.
100
- * @param {MacrosPropertyType} metadataType Metadata property type.
101
- * @param {string} [type] Type of target property or object.
102
- * @param {UI5PropertyType[]} [types] Types of target property or object.
103
- * @returns {SchemaDefinition} JSON schema.
104
- */
105
- function prepareSchemaProperty(property, metadataType, type, types) {
106
- const schemaTypes = getTypes(type, types);
107
- const isViewNode = schemaTypes.some((schemaType) => !!schemaType.$ref);
108
- // Define result
109
- const propertySchema = schemaTypes.length === 1
110
- ? { ...schemaTypes[0] }
111
- : {
112
- anyOf: schemaTypes
113
- };
114
- propertySchema.description = formatDescription(property.description);
115
- if (isViewNode) {
116
- propertySchema.description = property.name;
117
- propertySchema.isViewNode = true;
118
- }
119
- propertySchema.metadata = {
120
- type: metadataType
121
- };
122
- return propertySchema;
123
- }
124
- /**
125
- * Method prepares schema object for passed SAPUI5 property.
126
- * @param {UI5Property} property SAPUI5 property.
127
- * @returns {SchemaDefinition} JSON schema.
128
- */
129
- function prepareProperty(property) {
130
- return prepareSchemaProperty(property, ux_specification_types_1.MacrosPropertyType.Property, property.type, property.types);
131
- }
132
- /**
133
- * Method prepares schema object for passed SAPUI5 event.
134
- * @param {UI5Property} property SAPUI5 event.
135
- * @returns {SchemaDefinition} JSON schema.
136
- */
137
- function prepareEvent(property) {
138
- return prepareSchemaProperty(property, ux_specification_types_1.MacrosPropertyType.Event, 'string');
139
- }
140
- /**
141
- * Method prepares schema object for passed SAPUI5 aggregation.
142
- * @param {UI5Property} property SAPUI5 aggregation.
143
- * @returns {SchemaDefinition} JSON schema.
144
- */
145
- function prepareAggregations(aggregation) {
146
- const schemaTypes = getTypes(aggregation.type);
147
- return {
148
- description: aggregation.name,
149
- type: 'object',
150
- additionalProperties: schemaTypes.length ? schemaTypes[0] : { anyOf: schemaTypes },
151
- isViewNode: true,
152
- metadata: {
153
- path: [],
154
- type: ux_specification_types_1.MacrosPropertyType.Aggregation
155
- }
156
- };
157
- }
158
- /**
159
- * Method generates generic schema for passed "sap.fe.macros" api.
160
- * @param {MacrosAPI} api SAPUI5 "sap.fe.macros" api.
161
- * @returns {SchemaDefinition} JSON schema for "sap.fe.macros" api.
162
- */
163
- function generateSchema(api) {
164
- // Apply corrections for macros API - there is some missing information in api.json
165
- corrections_1.applyCorrections(api);
166
- const schema = getRootSchema();
167
- const { definitions } = schema;
168
- // Handle classes
169
- const classSymbols = api.symbols.filter((symbol) => symbol.kind === types_1.SYMBOL_KIND_CLASS);
170
- for (const symbol of classSymbols) {
171
- const definition = prepareDefinition(ux_specification_types_1.MacrosPropertyType.Control, symbol.description);
172
- definitions[symbol.name] = definition;
173
- const events = symbol.events || [];
174
- const { properties = [], aggregations = [] } = symbol[types_1.CLASS_SYMBOL_METADATA_PROPERTY] || {};
175
- // Handle properties
176
- for (const property of properties) {
177
- definition.properties[property.name] = prepareProperty(property);
178
- }
179
- // Handle aggregations
180
- for (const aggregation of aggregations) {
181
- definition.properties[aggregation.name] = prepareAggregations(aggregation);
182
- }
183
- // Handle events
184
- for (const event of events) {
185
- definition.properties[event.name] = prepareEvent(event);
186
- }
187
- }
188
- // Handle typedefs
189
- const typedefSymbols = api.symbols.filter((symbol) => symbol.kind === types_1.SYMBOL_KIND_TYPEDEF);
190
- for (const symbol of typedefSymbols) {
191
- const definition = prepareDefinition(ux_specification_types_1.MacrosPropertyType.Control, symbol.description);
192
- definitions[symbol.name] = definition;
193
- const properties = symbol.properties || [];
194
- for (const property of properties) {
195
- definition.properties[property.name] = prepareProperty(property);
196
- }
197
- }
198
- return schema;
199
- }
200
- exports.generateSchema = generateSchema;
201
- //# sourceMappingURL=schema.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../scripts/macros/schema.ts"],"names":[],"mappings":"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"}
@@ -1,77 +0,0 @@
1
- export declare const SYMBOL_KIND_NAMESPACE = "namespace";
2
- export declare const SYMBOL_KIND_CLASS = "class";
3
- export declare const SYMBOL_KIND_TYPEDEF = "typedef";
4
- export declare const CLASS_SYMBOL_METADATA_PROPERTY = "ui5-metadata";
5
- export declare type SYMBOL_KIND = typeof SYMBOL_KIND_NAMESPACE | typeof SYMBOL_KIND_CLASS | typeof SYMBOL_KIND_TYPEDEF;
6
- export interface MacrosAPI {
7
- symbols: UI5Symbol[];
8
- }
9
- export declare enum UI5Visibility {
10
- public = "public",
11
- restricted = "restricted",
12
- hidden = "hidden"
13
- }
14
- export interface BaseSymbol {
15
- name: string;
16
- basename: string;
17
- resource: string;
18
- module: string;
19
- static: boolean;
20
- visibility: UI5Visibility;
21
- description: string;
22
- displayName: string;
23
- title: string;
24
- subTitle: string;
25
- }
26
- export declare type UI5Symbol = NamespaceSymbol | ClassSymbol | TypedefSymbol;
27
- export interface NamespaceSymbol extends BaseSymbol {
28
- kind: typeof SYMBOL_KIND_NAMESPACE;
29
- export: string;
30
- nodes: [];
31
- }
32
- export interface ClassSymbol extends BaseSymbol {
33
- kind: typeof SYMBOL_KIND_CLASS;
34
- since?: string;
35
- events?: UI5Event[];
36
- [CLASS_SYMBOL_METADATA_PROPERTY]?: SymbolMetadata;
37
- }
38
- export interface TypedefSymbol extends BaseSymbol {
39
- kind: typeof SYMBOL_KIND_TYPEDEF;
40
- properties: UI5Property[];
41
- aggregations?: UI5Aggregation[];
42
- }
43
- export interface SymbolMetadata {
44
- stereotype: string;
45
- properties: UI5Property[];
46
- aggregations: UI5Aggregation[];
47
- }
48
- export interface UI5PropertyGeneric {
49
- name: string;
50
- description: string;
51
- visibility: UI5Visibility;
52
- }
53
- export interface UI5PropertyCore extends UI5PropertyGeneric {
54
- methods: string[];
55
- }
56
- export interface UI5Event {
57
- name: string;
58
- description: string;
59
- visibility: UI5Visibility;
60
- }
61
- export interface UI5PropertyType {
62
- value: string;
63
- }
64
- export interface UI5Property extends UI5PropertyCore {
65
- bindable?: boolean;
66
- group: string;
67
- defaultValue: unknown;
68
- type?: string;
69
- types?: UI5PropertyType[];
70
- }
71
- export interface UI5Aggregation extends UI5PropertyCore {
72
- singularName: string;
73
- cardinality: string;
74
- linkEnabled: true;
75
- type: string;
76
- }
77
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
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,oBAAY,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;CACpB;AAED,oBAAY,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;CAClC;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,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;CAC7B;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,CAAC;CAChB"}
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UI5Visibility = exports.CLASS_SYMBOL_METADATA_PROPERTY = exports.SYMBOL_KIND_TYPEDEF = exports.SYMBOL_KIND_CLASS = exports.SYMBOL_KIND_NAMESPACE = void 0;
4
- exports.SYMBOL_KIND_NAMESPACE = 'namespace';
5
- exports.SYMBOL_KIND_CLASS = 'class';
6
- exports.SYMBOL_KIND_TYPEDEF = 'typedef';
7
- exports.CLASS_SYMBOL_METADATA_PROPERTY = 'ui5-metadata';
8
- var UI5Visibility;
9
- (function (UI5Visibility) {
10
- UI5Visibility["public"] = "public";
11
- UI5Visibility["restricted"] = "restricted";
12
- UI5Visibility["hidden"] = "hidden";
13
- })(UI5Visibility = exports.UI5Visibility || (exports.UI5Visibility = {}));
14
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../scripts/macros/types.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,iBAAiB,GAAG,OAAO,CAAC;AAC5B,QAAA,mBAAmB,GAAG,SAAS,CAAC;AAEhC,QAAA,8BAA8B,GAAG,cAAc,CAAC;AAQ7D,IAAY,aAIX;AAJD,WAAY,aAAa;IACrB,kCAAiB,CAAA;IACjB,0CAAyB,CAAA;IACzB,kCAAiB,CAAA;AACrB,CAAC,EAJW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAIxB"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=runDocu.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runDocu.d.ts","sourceRoot":"","sources":["../../scripts/runDocu.ts"],"names":[],"mappings":""}