@sap/ux-specification 1.96.20 → 1.96.21

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 (737) hide show
  1. package/dist/documentation/runDocu-min.js +5 -9623
  2. package/dist/documentation/runDocu-min.js.map +1 -1
  3. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  4. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  5. package/dist/documentation/v2/v2-ListReport.html +1 -1
  6. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  7. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  8. package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
  9. package/dist/documentation/v4/v4-FreestylePage.html +1 -1
  10. package/dist/documentation/v4/v4-ListReport.html +1 -1
  11. package/dist/documentation/v4/v4-ObjectPage.html +1 -1
  12. package/dist/index-min.js +83 -30542
  13. package/dist/index-min.js.map +3 -3
  14. package/dist/schemas/v2/AnalyticalListPageConfig.json +11 -8
  15. package/dist/schemas/v2/ListReportConfig.json +132 -129
  16. package/dist/schemas/v4/ListReportConfig.json +1 -2
  17. package/dist/schemas/v4/ObjectPageConfig.json +1 -2
  18. package/dist/scripts/extractDocu.d.ts +2 -0
  19. package/dist/scripts/extractDocu.d.ts.map +1 -0
  20. package/dist/scripts/extractDocu.js +495 -0
  21. package/dist/scripts/extractDocu.js.map +1 -0
  22. package/dist/scripts/runDocu.d.ts +2 -0
  23. package/dist/scripts/runDocu.d.ts.map +1 -0
  24. package/dist/scripts/runDocu.js +579 -0
  25. package/dist/scripts/runDocu.js.map +1 -0
  26. package/dist/scripts/spec.d.ts +2 -0
  27. package/dist/scripts/spec.d.ts.map +1 -0
  28. package/dist/scripts/spec.js +114 -0
  29. package/dist/scripts/spec.js.map +1 -0
  30. package/dist/scripts/to-json-schema.d.ts +11 -0
  31. package/dist/scripts/to-json-schema.d.ts.map +1 -0
  32. package/dist/scripts/to-json-schema.js +132 -0
  33. package/dist/scripts/to-json-schema.js.map +1 -0
  34. package/dist/{types → src}/api.d.ts +1 -1
  35. package/dist/{types → src}/api.d.ts.map +1 -1
  36. package/dist/src/api.js +190 -0
  37. package/dist/src/api.js.map +1 -0
  38. package/dist/{types → src}/apiTypes.d.ts +13 -18
  39. package/dist/src/apiTypes.d.ts.map +1 -0
  40. package/dist/src/apiTypes.js +22 -0
  41. package/dist/src/apiTypes.js.map +1 -0
  42. package/dist/{types → src}/extensionLogger.d.ts +0 -0
  43. package/dist/{types → src}/extensionLogger.d.ts.map +0 -0
  44. package/dist/src/extensionLogger.js +39 -0
  45. package/dist/src/extensionLogger.js.map +1 -0
  46. package/dist/{types → src}/i18n/i18n.d.ts +0 -0
  47. package/dist/{types → src}/i18n/i18n.d.ts.map +0 -0
  48. package/dist/src/i18n/i18n.js +25 -0
  49. package/dist/src/i18n/i18n.js.map +1 -0
  50. package/dist/{types → src}/index.d.ts +2 -2
  51. package/dist/src/index.d.ts.map +1 -0
  52. package/dist/src/index.js +13 -0
  53. package/dist/src/index.js.map +1 -0
  54. package/dist/{types → src}/project.d.ts +2 -1
  55. package/dist/src/project.d.ts.map +1 -0
  56. package/dist/src/project.js +149 -0
  57. package/dist/src/project.js.map +1 -0
  58. package/dist/{types → src}/specification/schemaAccess.d.ts +2 -12
  59. package/dist/src/specification/schemaAccess.d.ts.map +1 -0
  60. package/dist/src/specification/schemaAccess.js +60 -0
  61. package/dist/src/specification/schemaAccess.js.map +1 -0
  62. package/dist/{types → src}/sync/common/appProvider.d.ts +3 -5
  63. package/dist/src/sync/common/appProvider.d.ts.map +1 -0
  64. package/dist/src/sync/common/appProvider.js +133 -0
  65. package/dist/src/sync/common/appProvider.js.map +1 -0
  66. package/dist/{types → src}/sync/common/decoration/control.d.ts +0 -0
  67. package/dist/{types → src}/sync/common/decoration/control.d.ts.map +0 -0
  68. package/dist/src/sync/common/decoration/control.js +211 -0
  69. package/dist/src/sync/common/decoration/control.js.map +1 -0
  70. package/dist/{types → src}/sync/common/decoration/decorators.d.ts +0 -0
  71. package/dist/{types → src}/sync/common/decoration/decorators.d.ts.map +0 -0
  72. package/dist/src/sync/common/decoration/decorators.js +45 -0
  73. package/dist/src/sync/common/decoration/decorators.js.map +1 -0
  74. package/dist/{types → src}/sync/common/decoration/factory.d.ts +1 -1
  75. package/dist/{types → src}/sync/common/decoration/factory.d.ts.map +1 -1
  76. package/dist/src/sync/common/decoration/factory.js +48 -0
  77. package/dist/src/sync/common/decoration/factory.js.map +1 -0
  78. package/dist/src/sync/common/decoration/flex.d.ts +4 -0
  79. package/dist/src/sync/common/decoration/flex.d.ts.map +1 -0
  80. package/dist/src/sync/common/decoration/flex.js +8 -0
  81. package/dist/src/sync/common/decoration/flex.js.map +1 -0
  82. package/dist/{types → src}/sync/common/decoration/index.d.ts +0 -0
  83. package/dist/{types → src}/sync/common/decoration/index.d.ts.map +0 -0
  84. package/dist/src/sync/common/decoration/index.js +9 -0
  85. package/dist/src/sync/common/decoration/index.js.map +1 -0
  86. package/dist/{types → src}/sync/common/flexUtils.d.ts +2 -4
  87. package/dist/src/sync/common/flexUtils.d.ts.map +1 -0
  88. package/dist/src/sync/common/flexUtils.js +94 -0
  89. package/dist/src/sync/common/flexUtils.js.map +1 -0
  90. package/dist/{types → src}/sync/common/generate/index.d.ts +0 -0
  91. package/dist/{types → src}/sync/common/generate/index.d.ts.map +0 -0
  92. package/dist/src/sync/common/generate/index.js +8 -0
  93. package/dist/src/sync/common/generate/index.js.map +1 -0
  94. package/dist/{types → src}/sync/common/generate/objectPage.d.ts +1 -2
  95. package/dist/src/sync/common/generate/objectPage.d.ts.map +1 -0
  96. package/dist/src/sync/common/generate/objectPage.js +378 -0
  97. package/dist/src/sync/common/generate/objectPage.js.map +1 -0
  98. package/dist/{types → src}/sync/common/generate/utils.d.ts +2 -1
  99. package/dist/src/sync/common/generate/utils.d.ts.map +1 -0
  100. package/dist/src/sync/common/generate/utils.js +487 -0
  101. package/dist/src/sync/common/generate/utils.js.map +1 -0
  102. package/dist/src/sync/common/i18n.json +23 -0
  103. package/dist/{types → src}/sync/common/import/utils.d.ts +0 -0
  104. package/dist/{types → src}/sync/common/import/utils.d.ts.map +0 -0
  105. package/dist/src/sync/common/import/utils.js +106 -0
  106. package/dist/src/sync/common/import/utils.js.map +1 -0
  107. package/dist/{types → src}/sync/common/importProject.d.ts +0 -0
  108. package/dist/src/sync/common/importProject.d.ts.map +1 -0
  109. package/dist/src/sync/common/importProject.js +339 -0
  110. package/dist/src/sync/common/importProject.js.map +1 -0
  111. package/dist/{types → src}/sync/common/index.d.ts +0 -0
  112. package/dist/{types → src}/sync/common/index.d.ts.map +0 -0
  113. package/dist/src/sync/common/index.js +15 -0
  114. package/dist/src/sync/common/index.js.map +1 -0
  115. package/dist/{types → src}/sync/common/types.d.ts +5 -55
  116. package/dist/src/sync/common/types.d.ts.map +1 -0
  117. package/dist/src/sync/common/types.js +175 -0
  118. package/dist/src/sync/common/types.js.map +1 -0
  119. package/dist/{types → src}/sync/common/utils.d.ts +5 -7
  120. package/dist/{types → src}/sync/common/utils.d.ts.map +1 -1
  121. package/dist/src/sync/common/utils.js +1244 -0
  122. package/dist/src/sync/common/utils.js.map +1 -0
  123. package/dist/{types → src}/sync/i18n.d.ts +0 -0
  124. package/dist/{types → src}/sync/i18n.d.ts.map +0 -0
  125. package/dist/src/sync/i18n.js +15 -0
  126. package/dist/src/sync/i18n.js.map +1 -0
  127. package/dist/{types → src}/sync/v2/application.d.ts +7 -7
  128. package/dist/src/sync/v2/application.d.ts.map +1 -0
  129. package/dist/src/sync/v2/application.js +189 -0
  130. package/dist/src/sync/v2/application.js.map +1 -0
  131. package/dist/{types → src}/sync/v2/export/controls/Action.d.ts +4 -4
  132. package/dist/src/sync/v2/export/controls/Action.d.ts.map +1 -0
  133. package/dist/src/sync/v2/export/controls/Action.js +127 -0
  134. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  135. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts +10 -0
  136. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +1 -0
  137. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js +73 -0
  138. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js.map +1 -0
  139. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +10 -0
  140. package/dist/{types → src}/sync/v2/export/controls/AnalyticalListPageKPI.d.ts.map +1 -1
  141. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js +56 -0
  142. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js.map +1 -0
  143. package/dist/{types → src}/sync/v2/export/controls/Card.d.ts +30 -30
  144. package/dist/src/sync/v2/export/controls/Card.d.ts.map +1 -0
  145. package/dist/src/sync/v2/export/controls/Card.js +655 -0
  146. package/dist/src/sync/v2/export/controls/Card.js.map +1 -0
  147. package/dist/src/sync/v2/export/controls/Field.d.ts +5 -0
  148. package/dist/src/sync/v2/export/controls/Field.d.ts.map +1 -0
  149. package/dist/src/sync/v2/export/controls/Field.js +41 -0
  150. package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
  151. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +41 -0
  152. package/dist/src/sync/v2/export/controls/FilterBar.d.ts.map +1 -0
  153. package/dist/src/sync/v2/export/controls/FilterBar.js +283 -0
  154. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -0
  155. package/dist/{types → src}/sync/v2/export/controls/FormAction.d.ts +3 -3
  156. package/dist/src/sync/v2/export/controls/FormAction.d.ts.map +1 -0
  157. package/dist/src/sync/v2/export/controls/FormAction.js +96 -0
  158. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
  159. package/dist/{types → src}/sync/v2/export/controls/Fragment.d.ts +5 -5
  160. package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -0
  161. package/dist/src/sync/v2/export/controls/Fragment.js +580 -0
  162. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -0
  163. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts +8 -0
  164. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts.map +1 -0
  165. package/dist/src/sync/v2/export/controls/ObjectPageChart.js +37 -0
  166. package/dist/src/sync/v2/export/controls/ObjectPageChart.js.map +1 -0
  167. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts +18 -0
  168. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  169. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js +110 -0
  170. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js.map +1 -0
  171. package/dist/{types → src}/sync/v2/export/controls/ObjectPageFooterAction.d.ts +2 -2
  172. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +1 -0
  173. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +62 -0
  174. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  175. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +11 -0
  176. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -0
  177. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js +61 -0
  178. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js.map +1 -0
  179. package/dist/{types → src}/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +2 -2
  180. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -0
  181. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +62 -0
  182. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -0
  183. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts +8 -0
  184. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts.map +1 -0
  185. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js +59 -0
  186. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js.map +1 -0
  187. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +45 -0
  188. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +1 -0
  189. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +194 -0
  190. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
  191. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +52 -0
  192. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -0
  193. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +336 -0
  194. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -0
  195. package/dist/{types → src}/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +2 -2
  196. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
  197. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +61 -0
  198. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  199. package/dist/{types → src}/sync/v2/export/controls/Table.d.ts +24 -24
  200. package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -0
  201. package/dist/src/sync/v2/export/controls/Table.js +709 -0
  202. package/dist/src/sync/v2/export/controls/Table.js.map +1 -0
  203. package/dist/{types → src}/sync/v2/export/controls/TableColumn.d.ts +5 -6
  204. package/dist/src/sync/v2/export/controls/TableColumn.d.ts.map +1 -0
  205. package/dist/src/sync/v2/export/controls/TableColumn.js +166 -0
  206. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -0
  207. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +5 -0
  208. package/dist/src/sync/v2/export/controls/ToolBar.d.ts.map +1 -0
  209. package/dist/src/sync/v2/export/controls/ToolBar.js +6 -0
  210. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  211. package/dist/{types → src}/sync/v2/export/controls/index.d.ts +0 -0
  212. package/dist/{types → src}/sync/v2/export/controls/index.d.ts.map +0 -0
  213. package/dist/src/sync/v2/export/controls/index.js +26 -0
  214. package/dist/src/sync/v2/export/controls/index.js.map +1 -0
  215. package/dist/{types → src}/sync/v2/export/export.d.ts +1 -1
  216. package/dist/{types → src}/sync/v2/export/export.d.ts.map +1 -1
  217. package/dist/src/sync/v2/export/export.js +681 -0
  218. package/dist/src/sync/v2/export/export.js.map +1 -0
  219. package/dist/{types → src}/sync/v2/export/exportPage.d.ts +2 -1
  220. package/dist/src/sync/v2/export/exportPage.d.ts.map +1 -0
  221. package/dist/src/sync/v2/export/exportPage.js +304 -0
  222. package/dist/src/sync/v2/export/exportPage.js.map +1 -0
  223. package/dist/{types → src}/sync/v2/export/factory.d.ts +0 -0
  224. package/dist/{types → src}/sync/v2/export/factory.d.ts.map +1 -1
  225. package/dist/src/sync/v2/export/factory.js +58 -0
  226. package/dist/src/sync/v2/export/factory.js.map +1 -0
  227. package/dist/{types → src}/sync/v2/export/manifest.d.ts +2 -2
  228. package/dist/src/sync/v2/export/manifest.d.ts.map +1 -0
  229. package/dist/src/sync/v2/export/manifest.js +155 -0
  230. package/dist/src/sync/v2/export/manifest.js.map +1 -0
  231. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +13 -0
  232. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts.map +1 -0
  233. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +42 -0
  234. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -0
  235. package/dist/src/sync/v2/export/pages/ListReport.d.ts +11 -0
  236. package/dist/src/sync/v2/export/pages/ListReport.d.ts.map +1 -0
  237. package/dist/src/sync/v2/export/pages/ListReport.js +39 -0
  238. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -0
  239. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts +18 -0
  240. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -0
  241. package/dist/src/sync/v2/export/pages/ObjectPage.js +100 -0
  242. package/dist/src/sync/v2/export/pages/ObjectPage.js.map +1 -0
  243. package/dist/{types → src}/sync/v2/export/pages/OverviewPage.d.ts +7 -7
  244. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts.map +1 -0
  245. package/dist/src/sync/v2/export/pages/OverviewPage.js +213 -0
  246. package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -0
  247. package/dist/{types → src}/sync/v2/export/pages/index.d.ts +0 -0
  248. package/dist/{types → src}/sync/v2/export/pages/index.d.ts.map +0 -0
  249. package/dist/src/sync/v2/export/pages/index.js +10 -0
  250. package/dist/src/sync/v2/export/pages/index.js.map +1 -0
  251. package/dist/{types → src}/sync/v2/export/view-controller-generator.d.ts +4 -4
  252. package/dist/src/sync/v2/export/view-controller-generator.d.ts.map +1 -0
  253. package/dist/src/sync/v2/export/view-controller-generator.js +140 -0
  254. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -0
  255. package/dist/{types → src}/sync/v2/generate/analyticalListReport.d.ts +1 -1
  256. package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -0
  257. package/dist/src/sync/v2/generate/analyticalListReport.js +86 -0
  258. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -0
  259. package/dist/{types → src}/sync/v2/generate/generate.d.ts +1 -1
  260. package/dist/src/sync/v2/generate/generate.d.ts.map +1 -0
  261. package/dist/src/sync/v2/generate/generate.js +99 -0
  262. package/dist/src/sync/v2/generate/generate.js.map +1 -0
  263. package/dist/{types → src}/sync/v2/generate/index.d.ts +0 -0
  264. package/dist/{types → src}/sync/v2/generate/index.d.ts.map +0 -0
  265. package/dist/src/sync/v2/generate/index.js +14 -0
  266. package/dist/src/sync/v2/generate/index.js.map +1 -0
  267. package/dist/{types → src}/sync/v2/generate/listReport.d.ts +1 -1
  268. package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -0
  269. package/dist/src/sync/v2/generate/listReport.js +124 -0
  270. package/dist/src/sync/v2/generate/listReport.js.map +1 -0
  271. package/dist/{types → src}/sync/v2/generate/objectPage.d.ts +1 -1
  272. package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -0
  273. package/dist/src/sync/v2/generate/objectPage.js +545 -0
  274. package/dist/src/sync/v2/generate/objectPage.js.map +1 -0
  275. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts +1 -1
  276. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts.map +1 -1
  277. package/dist/src/sync/v2/generate/overviewPage.js +70 -0
  278. package/dist/src/sync/v2/generate/overviewPage.js.map +1 -0
  279. package/dist/{types → src}/sync/v2/generate/utils.d.ts +3 -4
  280. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -0
  281. package/dist/src/sync/v2/generate/utils.js +531 -0
  282. package/dist/src/sync/v2/generate/utils.js.map +1 -0
  283. package/dist/{types → src}/sync/v2/import/app/appProvider.d.ts +4 -4
  284. package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -0
  285. package/dist/src/sync/v2/import/app/appProvider.js +136 -0
  286. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -0
  287. package/dist/{types → src}/sync/v2/import/app/ovpProvider.d.ts +1 -1
  288. package/dist/src/sync/v2/import/app/ovpProvider.d.ts.map +1 -0
  289. package/dist/src/sync/v2/import/app/ovpProvider.js +32 -0
  290. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -0
  291. package/dist/{types → src}/sync/v2/import/common/index.d.ts +6 -9
  292. package/dist/src/sync/v2/import/common/index.d.ts.map +1 -0
  293. package/dist/src/sync/v2/import/common/index.js +413 -0
  294. package/dist/src/sync/v2/import/common/index.js.map +1 -0
  295. package/dist/{types → src}/sync/v2/import/controls/table.d.ts +2 -2
  296. package/dist/src/sync/v2/import/controls/table.d.ts.map +1 -0
  297. package/dist/src/sync/v2/import/controls/table.js +33 -0
  298. package/dist/src/sync/v2/import/controls/table.js.map +1 -0
  299. package/dist/{types → src}/sync/v2/import/getPageType.d.ts +0 -0
  300. package/dist/{types → src}/sync/v2/import/getPageType.d.ts.map +0 -0
  301. package/dist/src/sync/v2/import/getPageType.js +1 -0
  302. package/dist/src/sync/v2/import/getPageType.js.map +1 -0
  303. package/dist/{types → src}/sync/v2/import/index.d.ts +0 -0
  304. package/dist/{types → src}/sync/v2/import/index.d.ts.map +0 -0
  305. package/dist/src/sync/v2/import/index.js +11 -0
  306. package/dist/src/sync/v2/import/index.js.map +1 -0
  307. package/dist/{types → src}/sync/v2/import/pages/analyticalListPage.d.ts +2 -2
  308. package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts.map +1 -0
  309. package/dist/src/sync/v2/import/pages/analyticalListPage.js +128 -0
  310. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -0
  311. package/dist/{types → src}/sync/v2/import/pages/listReport.d.ts +2 -2
  312. package/dist/src/sync/v2/import/pages/listReport.d.ts.map +1 -0
  313. package/dist/src/sync/v2/import/pages/listReport.js +156 -0
  314. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -0
  315. package/dist/{types → src}/sync/v2/import/pages/objectPage.d.ts +3 -2
  316. package/dist/src/sync/v2/import/pages/objectPage.d.ts.map +1 -0
  317. package/dist/src/sync/v2/import/pages/objectPage.js +746 -0
  318. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -0
  319. package/dist/{types → src}/sync/v2/import/pages/overviewPage.d.ts +2 -3
  320. package/dist/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -0
  321. package/dist/src/sync/v2/import/pages/overviewPage.js +111 -0
  322. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -0
  323. package/dist/{types → src}/sync/v2/import/utils.d.ts +5 -5
  324. package/dist/src/sync/v2/import/utils.d.ts.map +1 -0
  325. package/dist/src/sync/v2/import/utils.js +171 -0
  326. package/dist/src/sync/v2/import/utils.js.map +1 -0
  327. package/dist/{types → src}/sync/v2/types.d.ts +5 -6
  328. package/dist/src/sync/v2/types.d.ts.map +1 -0
  329. package/dist/src/sync/v2/types.js +37 -0
  330. package/dist/src/sync/v2/types.js.map +1 -0
  331. package/dist/{types → src}/sync/v4/application.d.ts +4 -7
  332. package/dist/src/sync/v4/application.d.ts.map +1 -0
  333. package/dist/src/sync/v4/application.js +164 -0
  334. package/dist/src/sync/v4/application.js.map +1 -0
  335. package/dist/src/sync/v4/export/controls/FilterBar.d.ts +6 -0
  336. package/dist/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -0
  337. package/dist/src/sync/v4/export/controls/FilterBar.js +24 -0
  338. package/dist/src/sync/v4/export/controls/FilterBar.js.map +1 -0
  339. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +11 -0
  340. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  341. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +135 -0
  342. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -0
  343. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +9 -0
  344. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -0
  345. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +54 -0
  346. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -0
  347. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +22 -0
  348. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +1 -0
  349. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js +65 -0
  350. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js.map +1 -0
  351. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts +5 -0
  352. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts.map +1 -0
  353. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js +24 -0
  354. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js.map +1 -0
  355. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts +29 -0
  356. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -0
  357. package/dist/src/sync/v4/export/controls/ObjectPageTable.js +233 -0
  358. package/dist/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -0
  359. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +26 -0
  360. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -0
  361. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +160 -0
  362. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -0
  363. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +20 -0
  364. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
  365. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js +113 -0
  366. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -0
  367. package/dist/{types → src}/sync/v4/export/controls/Table.d.ts +27 -28
  368. package/dist/src/sync/v4/export/controls/Table.d.ts.map +1 -0
  369. package/dist/src/sync/v4/export/controls/Table.js +784 -0
  370. package/dist/src/sync/v4/export/controls/Table.js.map +1 -0
  371. package/dist/src/sync/v4/export/controls/TableColumn.d.ts +64 -0
  372. package/dist/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -0
  373. package/dist/src/sync/v4/export/controls/TableColumn.js +310 -0
  374. package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -0
  375. package/dist/src/sync/v4/export/controls/ToolBar.d.ts +9 -0
  376. package/dist/src/sync/v4/export/controls/ToolBar.d.ts.map +1 -0
  377. package/dist/src/sync/v4/export/controls/ToolBar.js +9 -0
  378. package/dist/src/sync/v4/export/controls/ToolBar.js.map +1 -0
  379. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts +38 -0
  380. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -0
  381. package/dist/src/sync/v4/export/controls/ToolBarAction.js +214 -0
  382. package/dist/src/sync/v4/export/controls/ToolBarAction.js.map +1 -0
  383. package/dist/{types → src}/sync/v4/export/controls/index.d.ts +0 -0
  384. package/dist/{types → src}/sync/v4/export/controls/index.d.ts.map +0 -0
  385. package/dist/src/sync/v4/export/controls/index.js +18 -0
  386. package/dist/src/sync/v4/export/controls/index.js.map +1 -0
  387. package/dist/{types → src}/sync/v4/export/export.d.ts +0 -0
  388. package/dist/src/sync/v4/export/export.d.ts.map +1 -0
  389. package/dist/src/sync/v4/export/export.js +846 -0
  390. package/dist/src/sync/v4/export/export.js.map +1 -0
  391. package/dist/{types → src}/sync/v4/export/exportCustomColumn.d.ts +0 -0
  392. package/dist/{types → src}/sync/v4/export/exportCustomColumn.d.ts.map +0 -0
  393. package/dist/src/sync/v4/export/exportCustomColumn.js +49 -0
  394. package/dist/src/sync/v4/export/exportCustomColumn.js.map +1 -0
  395. package/dist/{types → src}/sync/v4/export/factory.d.ts +0 -0
  396. package/dist/{types → src}/sync/v4/export/factory.d.ts.map +0 -0
  397. package/dist/src/sync/v4/export/factory.js +44 -0
  398. package/dist/src/sync/v4/export/factory.js.map +1 -0
  399. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts +9 -0
  400. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts.map +1 -0
  401. package/dist/src/sync/v4/export/flexibleColumnLayout.js +125 -0
  402. package/dist/src/sync/v4/export/flexibleColumnLayout.js.map +1 -0
  403. package/dist/{types → src}/sync/v4/export/manifest.d.ts +2 -2
  404. package/dist/src/sync/v4/export/manifest.d.ts.map +1 -0
  405. package/dist/src/sync/v4/export/manifest.js +235 -0
  406. package/dist/src/sync/v4/export/manifest.js.map +1 -0
  407. package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts +0 -0
  408. package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts.map +0 -0
  409. package/dist/src/sync/v4/export/pages/FreestylePage.js +9 -0
  410. package/dist/src/sync/v4/export/pages/FreestylePage.js.map +1 -0
  411. package/dist/src/sync/v4/export/pages/ListReport.d.ts +14 -0
  412. package/dist/src/sync/v4/export/pages/ListReport.d.ts.map +1 -0
  413. package/dist/src/sync/v4/export/pages/ListReport.js +82 -0
  414. package/dist/src/sync/v4/export/pages/ListReport.js.map +1 -0
  415. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +9 -0
  416. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts.map +1 -0
  417. package/dist/src/sync/v4/export/pages/ObjectPage.js +40 -0
  418. package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -0
  419. package/dist/{types → src}/sync/v4/export/pages/index.d.ts +0 -0
  420. package/dist/{types → src}/sync/v4/export/pages/index.d.ts.map +0 -0
  421. package/dist/src/sync/v4/export/pages/index.js +9 -0
  422. package/dist/src/sync/v4/export/pages/index.js.map +1 -0
  423. package/dist/{types → src}/sync/v4/export/types.d.ts +1 -1
  424. package/dist/{types → src}/sync/v4/export/types.d.ts.map +1 -1
  425. package/dist/src/sync/v4/export/types.js +3 -0
  426. package/dist/src/sync/v4/export/types.js.map +1 -0
  427. package/dist/{types → src}/sync/v4/export/utils.d.ts +2 -2
  428. package/dist/src/sync/v4/export/utils.d.ts.map +1 -0
  429. package/dist/src/sync/v4/export/utils.js +43 -0
  430. package/dist/src/sync/v4/export/utils.js.map +1 -0
  431. package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts +0 -0
  432. package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts.map +0 -0
  433. package/dist/src/sync/v4/generate/freestylePage.js +15 -0
  434. package/dist/src/sync/v4/generate/freestylePage.js.map +1 -0
  435. package/dist/{types → src}/sync/v4/generate/generate.d.ts +1 -1
  436. package/dist/src/sync/v4/generate/generate.d.ts.map +1 -0
  437. package/dist/src/sync/v4/generate/generate.js +81 -0
  438. package/dist/src/sync/v4/generate/generate.js.map +1 -0
  439. package/dist/{types → src}/sync/v4/generate/index.d.ts +0 -0
  440. package/dist/{types → src}/sync/v4/generate/index.d.ts.map +0 -0
  441. package/dist/src/sync/v4/generate/index.js +13 -0
  442. package/dist/src/sync/v4/generate/index.js.map +1 -0
  443. package/dist/{types → src}/sync/v4/generate/listReport.d.ts +0 -0
  444. package/dist/{types → src}/sync/v4/generate/listReport.d.ts.map +1 -1
  445. package/dist/src/sync/v4/generate/listReport.js +680 -0
  446. package/dist/src/sync/v4/generate/listReport.js.map +1 -0
  447. package/dist/{types → src}/sync/v4/generate/objectPage.d.ts +0 -0
  448. package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -0
  449. package/dist/src/sync/v4/generate/objectPage.js +618 -0
  450. package/dist/src/sync/v4/generate/objectPage.js.map +1 -0
  451. package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts +2 -2
  452. package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts.map +1 -1
  453. package/dist/src/sync/v4/import/app/appProvider.js +10 -0
  454. package/dist/src/sync/v4/import/app/appProvider.js.map +1 -0
  455. package/dist/{types → src}/sync/v4/import/app/baseAppProvider.d.ts +9 -9
  456. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -0
  457. package/dist/src/sync/v4/import/app/baseAppProvider.js +330 -0
  458. package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -0
  459. package/dist/{types → src}/sync/v4/import/app/freestyleProvider.d.ts +2 -2
  460. package/dist/src/sync/v4/import/app/freestyleProvider.d.ts.map +1 -0
  461. package/dist/src/sync/v4/import/app/freestyleProvider.js +11 -0
  462. package/dist/src/sync/v4/import/app/freestyleProvider.js.map +1 -0
  463. package/dist/{types → src}/sync/v4/import/app/index.d.ts +0 -0
  464. package/dist/{types → src}/sync/v4/import/app/index.d.ts.map +0 -0
  465. package/dist/src/sync/v4/import/app/index.js +12 -0
  466. package/dist/src/sync/v4/import/app/index.js.map +1 -0
  467. package/dist/{types → src}/sync/v4/import/fragment.d.ts +1 -1
  468. package/dist/src/sync/v4/import/fragment.d.ts.map +1 -0
  469. package/dist/src/sync/v4/import/fragment.js +130 -0
  470. package/dist/src/sync/v4/import/fragment.js.map +1 -0
  471. package/dist/{types → src}/sync/v4/import/index.d.ts +0 -0
  472. package/dist/{types → src}/sync/v4/import/index.d.ts.map +0 -0
  473. package/dist/src/sync/v4/import/index.js +8 -0
  474. package/dist/src/sync/v4/import/index.js.map +1 -0
  475. package/dist/{types → src}/sync/v4/import/pages/listReport.d.ts +4 -4
  476. package/dist/src/sync/v4/import/pages/listReport.d.ts.map +1 -0
  477. package/dist/src/sync/v4/import/pages/listReport.js +287 -0
  478. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -0
  479. package/dist/{types → src}/sync/v4/import/pages/objectPage.d.ts +2 -2
  480. package/dist/src/sync/v4/import/pages/objectPage.d.ts.map +1 -0
  481. package/dist/src/sync/v4/import/pages/objectPage.js +267 -0
  482. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -0
  483. package/dist/{types → src}/sync/v4/import/utils.d.ts +1 -1
  484. package/dist/{types → src}/sync/v4/import/utils.d.ts.map +1 -1
  485. package/dist/src/sync/v4/import/utils.js +34 -0
  486. package/dist/src/sync/v4/import/utils.js.map +1 -0
  487. package/dist/{types → src}/sync/v4/types.d.ts +0 -0
  488. package/dist/{types → src}/sync/v4/types.d.ts.map +0 -0
  489. package/dist/src/sync/v4/types.js +3 -0
  490. package/dist/src/sync/v4/types.js.map +1 -0
  491. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts +0 -0
  492. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts.map +0 -0
  493. package/dist/src/sync/v4/utils/StableIdHelper.js +156 -0
  494. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -0
  495. package/dist/{types → src}/sync/v4/utils/utils.d.ts +7 -7
  496. package/dist/src/sync/v4/utils/utils.d.ts.map +1 -0
  497. package/dist/src/sync/v4/utils/utils.js +442 -0
  498. package/dist/src/sync/v4/utils/utils.js.map +1 -0
  499. package/package.json +9 -9
  500. package/CHANGELOG.md +0 -458
  501. package/dist/types/apiTypes.d.ts.map +0 -1
  502. package/dist/types/index.d.ts.map +0 -1
  503. package/dist/types/project.d.ts.map +0 -1
  504. package/dist/types/specification/common/Application.d.ts +0 -37
  505. package/dist/types/specification/common/Application.d.ts.map +0 -1
  506. package/dist/types/specification/common/index.d.ts +0 -6
  507. package/dist/types/specification/common/index.d.ts.map +0 -1
  508. package/dist/types/specification/common/page.d.ts +0 -51
  509. package/dist/types/specification/common/page.d.ts.map +0 -1
  510. package/dist/types/specification/common/types.d.ts +0 -17
  511. package/dist/types/specification/common/types.d.ts.map +0 -1
  512. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts +0 -50
  513. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts.map +0 -1
  514. package/dist/types/specification/common/webapp/manifest/index.d.ts +0 -4
  515. package/dist/types/specification/common/webapp/manifest/index.d.ts.map +0 -1
  516. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts +0 -376
  517. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts.map +0 -1
  518. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts +0 -36
  519. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts.map +0 -1
  520. package/dist/types/specification/schemaAccess.d.ts.map +0 -1
  521. package/dist/types/specification/v2/ApplicationV2.d.ts +0 -47
  522. package/dist/types/specification/v2/ApplicationV2.d.ts.map +0 -1
  523. package/dist/types/specification/v2/controls/Action.d.ts +0 -74
  524. package/dist/types/specification/v2/controls/Action.d.ts.map +0 -1
  525. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts +0 -59
  526. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts.map +0 -1
  527. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts +0 -31
  528. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts.map +0 -1
  529. package/dist/types/specification/v2/controls/Card.d.ts +0 -658
  530. package/dist/types/specification/v2/controls/Card.d.ts.map +0 -1
  531. package/dist/types/specification/v2/controls/Facets.d.ts +0 -18
  532. package/dist/types/specification/v2/controls/Facets.d.ts.map +0 -1
  533. package/dist/types/specification/v2/controls/Field.d.ts +0 -11
  534. package/dist/types/specification/v2/controls/Field.d.ts.map +0 -1
  535. package/dist/types/specification/v2/controls/FilterBar.d.ts +0 -235
  536. package/dist/types/specification/v2/controls/FilterBar.d.ts.map +0 -1
  537. package/dist/types/specification/v2/controls/Footer.d.ts +0 -21
  538. package/dist/types/specification/v2/controls/Footer.d.ts.map +0 -1
  539. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts +0 -17
  540. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts.map +0 -1
  541. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts +0 -16
  542. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts.map +0 -1
  543. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts +0 -33
  544. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts.map +0 -1
  545. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts +0 -23
  546. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts.map +0 -1
  547. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts +0 -121
  548. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts.map +0 -1
  549. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts +0 -187
  550. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts.map +0 -1
  551. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts +0 -16
  552. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts.map +0 -1
  553. package/dist/types/specification/v2/controls/Table.d.ts +0 -483
  554. package/dist/types/specification/v2/controls/Table.d.ts.map +0 -1
  555. package/dist/types/specification/v2/controls/ToolBar.d.ts +0 -9
  556. package/dist/types/specification/v2/controls/ToolBar.d.ts.map +0 -1
  557. package/dist/types/specification/v2/controls/index.d.ts +0 -18
  558. package/dist/types/specification/v2/controls/index.d.ts.map +0 -1
  559. package/dist/types/specification/v2/index.d.ts +0 -6
  560. package/dist/types/specification/v2/index.d.ts.map +0 -1
  561. package/dist/types/specification/v2/page.d.ts +0 -8
  562. package/dist/types/specification/v2/page.d.ts.map +0 -1
  563. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts +0 -22
  564. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts.map +0 -1
  565. package/dist/types/specification/v2/pages/ListReportConfig.d.ts +0 -13
  566. package/dist/types/specification/v2/pages/ListReportConfig.d.ts.map +0 -1
  567. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts +0 -34
  568. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts.map +0 -1
  569. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts +0 -132
  570. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts.map +0 -1
  571. package/dist/types/specification/v2/pages/index.d.ts +0 -5
  572. package/dist/types/specification/v2/pages/index.d.ts.map +0 -1
  573. package/dist/types/specification/v2/webapp/index.d.ts +0 -2
  574. package/dist/types/specification/v2/webapp/index.d.ts.map +0 -1
  575. package/dist/types/specification/v2/webapp/manifest/index.d.ts +0 -3
  576. package/dist/types/specification/v2/webapp/manifest/index.d.ts.map +0 -1
  577. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts +0 -11
  578. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts.map +0 -1
  579. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts +0 -99
  580. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts.map +0 -1
  581. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts +0 -32
  582. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts.map +0 -1
  583. package/dist/types/specification/v4/ApplicationV4.d.ts +0 -36
  584. package/dist/types/specification/v4/ApplicationV4.d.ts.map +0 -1
  585. package/dist/types/specification/v4/controls/FilterBar.d.ts +0 -19
  586. package/dist/types/specification/v4/controls/FilterBar.d.ts.map +0 -1
  587. package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts +0 -12
  588. package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts.map +0 -1
  589. package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts +0 -30
  590. package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts.map +0 -1
  591. package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts +0 -47
  592. package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts.map +0 -1
  593. package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts +0 -15
  594. package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts.map +0 -1
  595. package/dist/types/specification/v4/controls/ObjectPageSection.d.ts +0 -99
  596. package/dist/types/specification/v4/controls/ObjectPageSection.d.ts.map +0 -1
  597. package/dist/types/specification/v4/controls/ObjectPageTable.d.ts +0 -107
  598. package/dist/types/specification/v4/controls/ObjectPageTable.d.ts.map +0 -1
  599. package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts +0 -38
  600. package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts.map +0 -1
  601. package/dist/types/specification/v4/controls/Table.d.ts +0 -352
  602. package/dist/types/specification/v4/controls/Table.d.ts.map +0 -1
  603. package/dist/types/specification/v4/controls/ToolBar.d.ts +0 -111
  604. package/dist/types/specification/v4/controls/ToolBar.d.ts.map +0 -1
  605. package/dist/types/specification/v4/controls/index.d.ts +0 -11
  606. package/dist/types/specification/v4/controls/index.d.ts.map +0 -1
  607. package/dist/types/specification/v4/index.d.ts +0 -6
  608. package/dist/types/specification/v4/index.d.ts.map +0 -1
  609. package/dist/types/specification/v4/page.d.ts +0 -21
  610. package/dist/types/specification/v4/page.d.ts.map +0 -1
  611. package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts +0 -3
  612. package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts.map +0 -1
  613. package/dist/types/specification/v4/pages/ListReportConfig.d.ts +0 -37
  614. package/dist/types/specification/v4/pages/ListReportConfig.d.ts.map +0 -1
  615. package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts +0 -19
  616. package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts.map +0 -1
  617. package/dist/types/specification/v4/pages/index.d.ts +0 -4
  618. package/dist/types/specification/v4/pages/index.d.ts.map +0 -1
  619. package/dist/types/specification/v4/webapp/index.d.ts +0 -2
  620. package/dist/types/specification/v4/webapp/index.d.ts.map +0 -1
  621. package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts +0 -225
  622. package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts.map +0 -1
  623. package/dist/types/specification/v4/webapp/manifest/index.d.ts +0 -5
  624. package/dist/types/specification/v4/webapp/manifest/index.d.ts.map +0 -1
  625. package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts +0 -110
  626. package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts.map +0 -1
  627. package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts +0 -84
  628. package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts.map +0 -1
  629. package/dist/types/sync/common/appProvider.d.ts.map +0 -1
  630. package/dist/types/sync/common/decoration/flex.d.ts +0 -7
  631. package/dist/types/sync/common/decoration/flex.d.ts.map +0 -1
  632. package/dist/types/sync/common/flexUtils.d.ts.map +0 -1
  633. package/dist/types/sync/common/generate/objectPage.d.ts.map +0 -1
  634. package/dist/types/sync/common/generate/utils.d.ts.map +0 -1
  635. package/dist/types/sync/common/importProject.d.ts.map +0 -1
  636. package/dist/types/sync/common/types.d.ts.map +0 -1
  637. package/dist/types/sync/v2/application.d.ts.map +0 -1
  638. package/dist/types/sync/v2/export/controls/Action.d.ts.map +0 -1
  639. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts +0 -10
  640. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +0 -1
  641. package/dist/types/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +0 -10
  642. package/dist/types/sync/v2/export/controls/Card.d.ts.map +0 -1
  643. package/dist/types/sync/v2/export/controls/Field.d.ts +0 -5
  644. package/dist/types/sync/v2/export/controls/Field.d.ts.map +0 -1
  645. package/dist/types/sync/v2/export/controls/FilterBar.d.ts +0 -42
  646. package/dist/types/sync/v2/export/controls/FilterBar.d.ts.map +0 -1
  647. package/dist/types/sync/v2/export/controls/FormAction.d.ts.map +0 -1
  648. package/dist/types/sync/v2/export/controls/Fragment.d.ts.map +0 -1
  649. package/dist/types/sync/v2/export/controls/ObjectPageChart.d.ts +0 -8
  650. package/dist/types/sync/v2/export/controls/ObjectPageChart.d.ts.map +0 -1
  651. package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts +0 -20
  652. package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
  653. package/dist/types/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +0 -1
  654. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts +0 -11
  655. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts.map +0 -1
  656. package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +0 -1
  657. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts +0 -8
  658. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts.map +0 -1
  659. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +0 -45
  660. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +0 -1
  661. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts +0 -53
  662. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts.map +0 -1
  663. package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
  664. package/dist/types/sync/v2/export/controls/Table.d.ts.map +0 -1
  665. package/dist/types/sync/v2/export/controls/TableColumn.d.ts.map +0 -1
  666. package/dist/types/sync/v2/export/controls/ToolBar.d.ts +0 -5
  667. package/dist/types/sync/v2/export/controls/ToolBar.d.ts.map +0 -1
  668. package/dist/types/sync/v2/export/exportPage.d.ts.map +0 -1
  669. package/dist/types/sync/v2/export/manifest.d.ts.map +0 -1
  670. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts +0 -15
  671. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts.map +0 -1
  672. package/dist/types/sync/v2/export/pages/ListReport.d.ts +0 -11
  673. package/dist/types/sync/v2/export/pages/ListReport.d.ts.map +0 -1
  674. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts +0 -19
  675. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts.map +0 -1
  676. package/dist/types/sync/v2/export/pages/OverviewPage.d.ts.map +0 -1
  677. package/dist/types/sync/v2/export/view-controller-generator.d.ts.map +0 -1
  678. package/dist/types/sync/v2/generate/analyticalListReport.d.ts.map +0 -1
  679. package/dist/types/sync/v2/generate/generate.d.ts.map +0 -1
  680. package/dist/types/sync/v2/generate/listReport.d.ts.map +0 -1
  681. package/dist/types/sync/v2/generate/objectPage.d.ts.map +0 -1
  682. package/dist/types/sync/v2/generate/utils.d.ts.map +0 -1
  683. package/dist/types/sync/v2/import/app/appProvider.d.ts.map +0 -1
  684. package/dist/types/sync/v2/import/app/ovpProvider.d.ts.map +0 -1
  685. package/dist/types/sync/v2/import/common/index.d.ts.map +0 -1
  686. package/dist/types/sync/v2/import/controls/table.d.ts.map +0 -1
  687. package/dist/types/sync/v2/import/pages/analyticalListPage.d.ts.map +0 -1
  688. package/dist/types/sync/v2/import/pages/listReport.d.ts.map +0 -1
  689. package/dist/types/sync/v2/import/pages/objectPage.d.ts.map +0 -1
  690. package/dist/types/sync/v2/import/pages/overviewPage.d.ts.map +0 -1
  691. package/dist/types/sync/v2/import/utils.d.ts.map +0 -1
  692. package/dist/types/sync/v2/types.d.ts.map +0 -1
  693. package/dist/types/sync/v4/application.d.ts.map +0 -1
  694. package/dist/types/sync/v4/export/controls/FilterBar.d.ts +0 -5
  695. package/dist/types/sync/v4/export/controls/FilterBar.d.ts.map +0 -1
  696. package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts +0 -13
  697. package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
  698. package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts +0 -9
  699. package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts.map +0 -1
  700. package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +0 -22
  701. package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +0 -1
  702. package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts +0 -5
  703. package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts.map +0 -1
  704. package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts +0 -29
  705. package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts.map +0 -1
  706. package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts +0 -26
  707. package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +0 -1
  708. package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +0 -20
  709. package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
  710. package/dist/types/sync/v4/export/controls/Table.d.ts.map +0 -1
  711. package/dist/types/sync/v4/export/controls/TableColumn.d.ts +0 -64
  712. package/dist/types/sync/v4/export/controls/TableColumn.d.ts.map +0 -1
  713. package/dist/types/sync/v4/export/controls/ToolBar.d.ts +0 -9
  714. package/dist/types/sync/v4/export/controls/ToolBar.d.ts.map +0 -1
  715. package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts +0 -38
  716. package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts.map +0 -1
  717. package/dist/types/sync/v4/export/export.d.ts.map +0 -1
  718. package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts +0 -8
  719. package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts.map +0 -1
  720. package/dist/types/sync/v4/export/manifest.d.ts.map +0 -1
  721. package/dist/types/sync/v4/export/pages/ListReport.d.ts +0 -14
  722. package/dist/types/sync/v4/export/pages/ListReport.d.ts.map +0 -1
  723. package/dist/types/sync/v4/export/pages/ObjectPage.d.ts +0 -9
  724. package/dist/types/sync/v4/export/pages/ObjectPage.d.ts.map +0 -1
  725. package/dist/types/sync/v4/export/utils.d.ts.map +0 -1
  726. package/dist/types/sync/v4/generate/generate.d.ts.map +0 -1
  727. package/dist/types/sync/v4/generate/objectPage.d.ts.map +0 -1
  728. package/dist/types/sync/v4/import/app/baseAppProvider.d.ts.map +0 -1
  729. package/dist/types/sync/v4/import/app/freestyleProvider.d.ts.map +0 -1
  730. package/dist/types/sync/v4/import/fragment.d.ts.map +0 -1
  731. package/dist/types/sync/v4/import/pages/listReport.d.ts.map +0 -1
  732. package/dist/types/sync/v4/import/pages/objectPage.d.ts.map +0 -1
  733. package/dist/types/sync/v4/utils/utils.d.ts.map +0 -1
  734. package/dist/types/v2.d.ts +0 -3
  735. package/dist/types/v2.d.ts.map +0 -1
  736. package/dist/types/v4.d.ts +0 -3
  737. package/dist/types/v4.d.ts.map +0 -1
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const common_1 = require("../../common");
4
+ /**
5
+ * Method returns array of card definition names.
6
+ * @param genericSchema - Generic schema of Overview Page.
7
+ *
8
+ * @returns Array of definition names
9
+ */
10
+ function getCardDefinitionNames(genericSchema) {
11
+ // Apply enum to all card properties
12
+ const properties = genericSchema['properties'];
13
+ const cardProperties = (properties['cards'] &&
14
+ properties['cards']['additionalProperties'] &&
15
+ properties['cards']['additionalProperties']['anyOf']) ||
16
+ [];
17
+ return cardProperties.map((cardProperty) => {
18
+ // Resolve ref
19
+ const refParts = cardProperty['$ref'].split('/');
20
+ return refParts[refParts.length - 1];
21
+ });
22
+ }
23
+ exports.getCardDefinitionNames = getCardDefinitionNames;
24
+ /**
25
+ * Defines and adds enum entries for 'model' property of Cards.
26
+ * @param appSchema - the app specific schema that shall get enhanced
27
+ * @param manifest - manifest.json of the app
28
+ */
29
+ function addModelsEnum(appSchema, manifest) {
30
+ const dataSources = (manifest && manifest['sap.app'] && manifest['sap.app'].dataSources) || {};
31
+ const serviceKeys = Object.keys(dataSources);
32
+ const models = (manifest && manifest['sap.ui5'] && manifest['sap.ui5'].models) || {};
33
+ let enumValues = [];
34
+ enumValues = enumValues.concat(Object.keys(models).filter((model) => serviceKeys.includes(models[model].dataSource)));
35
+ // Define enum
36
+ const definition = appSchema['definitions'];
37
+ definition['CardModel'] = {
38
+ enum: enumValues,
39
+ type: 'string'
40
+ };
41
+ // Apply enum to all card properties
42
+ const cards = getCardDefinitionNames(appSchema);
43
+ for (const card of cards) {
44
+ const property = definition[card]['properties']['model'];
45
+ delete property.type;
46
+ property['$ref'] = common_1.DEFINITION_LINK_PREFIX + 'CardModel';
47
+ }
48
+ }
49
+ exports.addModelsEnum = addModelsEnum;
50
+ /**
51
+ * Generates an app specific schema out of the generic schema.
52
+ * Generic types are replaced by information from the app manifest.
53
+ *
54
+ * @param genericSchema - generic JSON schema of an object page
55
+ * @param manifest - manifest.json of the app
56
+ *
57
+ * @returns the app specific JSON schema
58
+ */
59
+ function generateOverviewPageSchemaV2(genericSchema, manifest) {
60
+ const appSchema = JSON.parse(JSON.stringify(genericSchema));
61
+ // schema validation for card name
62
+ appSchema['properties']['cards']['propertyNames'] = {
63
+ pattern: '^[a-zA-Z0-9_\\.\\-]+$'
64
+ };
65
+ // Enhance 'model' property with enum entries
66
+ addModelsEnum(appSchema, manifest);
67
+ return appSchema;
68
+ }
69
+ exports.generateOverviewPageSchemaV2 = generateOverviewPageSchemaV2;
70
+ //# sourceMappingURL=overviewPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"overviewPage.js","sourceRoot":"","sources":["../../../../../src/sync/v2/generate/overviewPage.ts"],"names":[],"mappings":";;AACA,yCAAsD;AAEtD;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,aAAqB;IACxD,oCAAoC;IACpC,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,cAAc,GAChB,CAAC,UAAU,CAAC,OAAO,CAAC;QAChB,UAAU,CAAC,OAAO,CAAC,CAAC,sBAAsB,CAAC;QAC3C,UAAU,CAAC,OAAO,CAAC,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,EAAE,CAAC;IACP,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,YAAoB,EAAE,EAAE;QAC/C,cAAc;QACd,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjD,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACP,CAAC;AAbD,wDAaC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,SAAiB,EAAE,QAAkB;IAC/D,MAAM,WAAW,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC/F,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACrF,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,UAAU,GAAG,UAAU,CAAC,MAAM,CAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAE,MAAM,CAAC,KAAK,CAAsB,CAAC,UAAU,CAAC,CAAC,CAC9G,CAAC;IAEF,cAAc;IACd,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;IAC5C,UAAU,CAAC,WAAW,CAAC,GAAG;QACtB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,QAAQ;KACjB,CAAC;IACF,oCAAoC;IACpC,MAAM,KAAK,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;IAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACtB,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACrB,QAAQ,CAAC,MAAM,CAAC,GAAG,+BAAsB,GAAG,WAAW,CAAC;KAC3D;AACL,CAAC;AAtBD,sCAsBC;AAED;;;;;;;;GAQG;AACH,SAAgB,4BAA4B,CAAC,aAAqB,EAAE,QAAkB;IAClF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;IAC5D,kCAAkC;IAClC,SAAS,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,GAAG;QAChD,OAAO,EAAE,uBAAuB;KACnC,CAAC;IACF,6CAA6C;IAC7C,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnC,OAAO,SAAS,CAAC;AACrB,CAAC;AATD,oEASC"}
@@ -1,8 +1,7 @@
1
1
  import type { Definition } from 'typescript-json-schema';
2
2
  import type { FileData } from '../../common';
3
3
  import type { MetadataInstanceInterface } from '../../common/decoration/factory';
4
- import type { PageType, PageTypeV4 } from '../../../specification/common';
5
- import type { SapUiAppPageV2 } from '../../../specification/v2';
4
+ import type { v2, PageType, PageTypeV4 } from '@sap/ux-specification-types';
6
5
  import type { AnnotationTerm, EntityType } from '@sap-ux/vocabularies-types';
7
6
  import type { LineItem, SelectionFields } from '@sap-ux/vocabularies-types/vocabularies/UI';
8
7
  import { ActionTypeV2 } from '../types';
@@ -44,7 +43,7 @@ export declare function addListReportLeadingProperties(appSchema: object, entity
44
43
  * @param definitionName - definition name of CustomColumn definition
45
44
  * @param page - sapui5 page object
46
45
  */
47
- export declare function addTabkeyEnum(appSchema: object, definitionName: string, page?: SapUiAppPageV2): void;
46
+ export declare function addTabkeyEnum(appSchema: object, definitionName: string, page?: v2.SapUiAppPageV2): void;
48
47
  /**
49
48
  * Adds enum entries of posible fragment entries.
50
49
  * @param {object} appSchema The app specific schema that shall get enhanced.
@@ -64,7 +63,7 @@ export declare function addFragmentEnum(appSchema: Definition, fragments: FileDa
64
63
  * @param {string} [customColumnsDefinitionName=DefinitionName.CustomColumns] Definition name of Custom Columns definition.
65
64
  * @param {string} [customColumnDefinitionName=DefinitionName.CustomColumn] Definition name of Custom Column definition.
66
65
  */
67
- export declare function addTableColumnExtensions(appSchema: object, entityType: EntityType, page: SapUiAppPageV2, manifest: object, fragments?: FileData[], customColumnsDefinitionName?: string, customColumnDefinitionName?: string): void;
66
+ export declare function addTableColumnExtensions(appSchema: object, entityType: EntityType, page: v2.SapUiAppPageV2, manifest: object, fragments?: FileData[], customColumnsDefinitionName?: string, customColumnDefinitionName?: string): void;
68
67
  /**
69
68
  * Apply post-processing rules as specified in form of "generate" at the syncRule
70
69
  * @param schema - given app schema, to be adapted
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/sync/v2/generate/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,cAAc,CAAC;AACvD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7E,OAAO,KAAK,EAA0B,QAAQ,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAmBpH,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAgExC;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAC9B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE;IAAE,YAAY,MAAC;IAAC,cAAc,MAAC;IAAC,UAAU,MAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,EACnF,UAAU,EAAE,YAAY,EACxB,WAAW,EAAE,MAAM,GACpB,IAAI,CAwCN;AAiID;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC5B,SAAS,EAAE,UAAU,EACrB,kBAAkB,EAAE,cAAc,CAAC,QAAQ,CAAC,EAC5C,UAAU,EAAE,UAAU,EACtB,UAAU,CAAC,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,GACzB,IAAI,CAuCN;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC1C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,GACvB,IAAI,CAoBN;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,cAAc,GAAG,IAAI,CA2BvG;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC3B,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,QAAQ,EAAE,EACrB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,GACvB,IAAI,CA8BN;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,QAAQ,EAAE,EACtB,2BAA2B,GAAE,MAAqC,EAClE,0BAA0B,GAAE,MAAoC,GACjE,IAAI,CAWN;AAiJD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC3B,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,MAAM,EACxB,kBAAkB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAC1C,QAAQ,EAAE,QAAQ,GAAG,UAAU,EAC/B,OAAO,EAAE,yBAAyB,GACnC,IAAI,CAIN;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAQnG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAC9B,SAAS,EAAE,MAAM,EACjB,yBAAyB,EAAE,cAAc,CAAC,eAAe,CAAC,EAC1D,UAAU,EAAE,UAAU,GACvB,IAAI,CAsCN"}
@@ -0,0 +1,531 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
4
+ const common_1 = require("../../common");
5
+ const decorators_1 = require("../../common/decoration/decorators");
6
+ const path_1 = require("path");
7
+ const xml_js_1 = require("xml-js");
8
+ const types_1 = require("../types");
9
+ /**
10
+ * Common function for enhancing the LineItems definiton of app schema by custom columns
11
+ * @param appSchema - app-specific JSON schema
12
+ * @param customColumnsDefinitionName - custom column definition name (plural)
13
+ * @param customColumnDefinitionName - custom column definition name (singular)
14
+ */
15
+ function addCustomColumnDefinition(appSchema, customColumnsDefinitionName, customColumnDefinitionName) {
16
+ if (appSchema.definitions[common_1.DefinitionName.LineItems]) {
17
+ appSchema.definitions[common_1.DefinitionName.LineItems]['properties']['custom'] = {
18
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnsDefinitionName}`
19
+ };
20
+ }
21
+ appSchema['definitions'][customColumnsDefinitionName] = {
22
+ type: 'array',
23
+ items: {
24
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnDefinitionName}`
25
+ },
26
+ description: 'Custom Columns'
27
+ };
28
+ appSchema['definitions'][customColumnsDefinitionName][common_1.SchemaTag.isViewNode] = true;
29
+ const columnDefinition = appSchema['definitions'][customColumnDefinitionName];
30
+ for (const id in columnDefinition.properties) {
31
+ columnDefinition.properties[id][common_1.SchemaTag.artifactType] = ux_specification_types_1.ArtifactType.Manifest;
32
+ }
33
+ }
34
+ /**
35
+ * Prepares and returns id of action for further use and reference
36
+ * @param actionType - type of action
37
+ * @param lineItemProperties - properties of the line item collection: lineItemPath, lineItemRecord, lineItemId
38
+ * @returns {string} actionId
39
+ */
40
+ function getActionId(actionType, lineItemProperties) {
41
+ let actionId;
42
+ if (actionType === types_1.ActionTypeV2.ColumnIntentBased) {
43
+ actionId = common_1.getSchemaKeyOfLineItemRecord(lineItemProperties.lineItemRecord);
44
+ }
45
+ else if (actionType === types_1.ActionTypeV2.ToolBarIntentBased || actionType === types_1.ActionTypeV2.FooterIntentBased) {
46
+ actionId = common_1.prepareRef(`${lineItemProperties.lineItemRecord.SemanticObject}::${lineItemProperties.lineItemRecord.Action}`);
47
+ }
48
+ else if (actionType === types_1.ActionTypeV2.Column &&
49
+ lineItemProperties.lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
50
+ actionId = common_1.prepareRef(`DataFieldForAction:::sAction::${lineItemProperties.lineItemRecord.Action}`);
51
+ }
52
+ else {
53
+ actionId = common_1.prepareRef(lineItemProperties.lineItemRecord.Action);
54
+ }
55
+ if (lineItemProperties.lineItemId && lineItemProperties.lineItemId !== 'LineItems') {
56
+ return `${lineItemProperties.lineItemId}??${actionId}`;
57
+ }
58
+ else {
59
+ return actionId;
60
+ }
61
+ }
62
+ /**
63
+ * Processes a LineItem record of type DataFieldForAction and DataFieldForIntentBasedNavigation during app schema generation
64
+ * @param appSchema - the app specific schema that shall get enhanced
65
+ * @param entityType - the entity type as part of the AVT ConvertedMetadata
66
+ * @param actions - actions definition in schema, parent object
67
+ * @param lineItemProperties - properties of the line item collection: lineItemPath, lineItemRecord, lineItemId
68
+ * @param actionType - type of action
69
+ * @param recordIndex - record index in the collection
70
+ */
71
+ function handleActionRecord(appSchema, actions, lineItemProps, actionType, recordIndex) {
72
+ let actionReferenceType;
73
+ const actionTemplate = lineItemProps.lineItemId === common_1.DefinitionName.LineItems ? '' : 'ObjectPage';
74
+ const actionId = getActionId(actionType, lineItemProps);
75
+ if (actionType === types_1.ActionTypeV2.Footer || actionType === types_1.ActionTypeV2.FooterIntentBased) {
76
+ actionReferenceType = `Action`;
77
+ actionType = types_1.ActionTypeV2.Footer;
78
+ }
79
+ else if (actionType === types_1.ActionTypeV2.Column || actionType === types_1.ActionTypeV2.ColumnIntentBased) {
80
+ actionReferenceType = `TableColumnAction`;
81
+ }
82
+ else {
83
+ actionReferenceType = actionTemplate !== '' ? `${actionTemplate}${actionType}` : `Action`;
84
+ actionType = types_1.ActionTypeV2.ToolBar;
85
+ }
86
+ const actionDefinition = `${actionTemplate}${actionType}<${actionId}>`;
87
+ const description = common_1.getDataFieldDescription(lineItemProps.lineItemRecord, lineItemProps.entityType);
88
+ actions['properties'][actionId] = {
89
+ $ref: common_1.DEFINITION_LINK_PREFIX + actionDefinition,
90
+ description,
91
+ propertyIndex: recordIndex
92
+ };
93
+ if (appSchema['definitions'][actionReferenceType]) {
94
+ appSchema['definitions'][actionDefinition] = Object.assign(Object.assign({}, JSON.parse(JSON.stringify(appSchema['definitions'][actionReferenceType]))), { description, annotationPath: `${lineItemProps.lineItemPath}/${recordIndex}` });
95
+ }
96
+ else {
97
+ appSchema['definitions'][actionDefinition] = {
98
+ type: 'object',
99
+ properties: {},
100
+ description,
101
+ annotationPath: `${lineItemProps.lineItemPath}/${recordIndex}`,
102
+ isViewNode: true,
103
+ additionalProperties: false
104
+ };
105
+ }
106
+ }
107
+ exports.handleActionRecord = handleActionRecord;
108
+ /**
109
+ * Returns the type of a column lineItem action
110
+ * @param lineItemId - optional: in case of OP the parameter must be passed to distinguish the OP tables;
111
+ * @param {object} lineItemRecord - actual record of the line item collection
112
+ * @param actionTypes - array of action types to be filled
113
+ */
114
+ function getColumnActionType(lineItemId, lineItemRecord, actionTypes) {
115
+ if (lineItemId !== common_1.DefinitionName.LineItems &&
116
+ lineItemRecord.Inline === true &&
117
+ (lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */ ||
118
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */)) {
119
+ actionTypes.push(types_1.ActionTypeV2.OPColumn);
120
+ }
121
+ else if (lineItemRecord.Inline === true && lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
122
+ actionTypes.push(types_1.ActionTypeV2.Column);
123
+ }
124
+ else if (lineItemRecord.Inline === true &&
125
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
126
+ actionTypes.push(types_1.ActionTypeV2.ColumnIntentBased);
127
+ }
128
+ }
129
+ /**
130
+ * Returns the type of a lineItem action
131
+ * @param {object} lineItemRecord - actual record of the line item collection
132
+ * @returns {string[] | undefined } ActionTypeV2[] - action type(s) of the lineItem
133
+ */
134
+ function getActionType(lineItemRecord, lineItemId) {
135
+ const actionTypes = [];
136
+ if (lineItemRecord.$Type !== "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */ &&
137
+ lineItemRecord.$Type !== "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
138
+ return undefined;
139
+ }
140
+ if (lineItemRecord.Inline !== true &&
141
+ lineItemRecord.Determining !== true &&
142
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
143
+ actionTypes.push(types_1.ActionTypeV2.ToolBar);
144
+ }
145
+ else if (lineItemRecord.Inline !== true &&
146
+ lineItemRecord.Determining !== true &&
147
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
148
+ actionTypes.push(types_1.ActionTypeV2.ToolBarIntentBased);
149
+ }
150
+ else if (lineItemRecord.Determining === true && lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForAction" /* DataFieldForAction */) {
151
+ actionTypes.push(types_1.ActionTypeV2.Footer);
152
+ }
153
+ else if (lineItemRecord.Determining === true &&
154
+ lineItemRecord.$Type === "com.sap.vocabularies.UI.v1.DataFieldForIntentBasedNavigation" /* DataFieldForIntentBasedNavigation */) {
155
+ actionTypes.push(types_1.ActionTypeV2.FooterIntentBased);
156
+ }
157
+ getColumnActionType(lineItemId, lineItemRecord, actionTypes);
158
+ return actionTypes;
159
+ }
160
+ function generateGenericColumn(lineItemProperties, appSchema, recordIndex) {
161
+ const schemaKey = common_1.getSchemaKeyOfLineItemRecord(lineItemProperties.lineItemRecord);
162
+ if (schemaKey) {
163
+ const lineItemDefinition = appSchema.definitions[lineItemProperties.lineItemId];
164
+ lineItemDefinition.properties[schemaKey] = {
165
+ $ref: common_1.DEFINITION_LINK_PREFIX + common_1.DefinitionName.TableColumn,
166
+ description: common_1.getDataFieldDescription(lineItemProperties.lineItemRecord, lineItemProperties.entityType)
167
+ // Custom property in schema - for object properties ordering purpose
168
+ };
169
+ lineItemDefinition.properties[schemaKey][common_1.SchemaTag.propertyIndex] = recordIndex;
170
+ lineItemDefinition.properties[schemaKey][common_1.SchemaTag.annotationPath] = `${lineItemProperties.lineItemPath}/${recordIndex}`;
171
+ common_1.addDataTypeToDefinition(lineItemDefinition.properties[schemaKey], lineItemProperties.lineItemRecord);
172
+ }
173
+ }
174
+ function handleAnyAction(actionType, appSchema, actions, lineItemProperties, recordIndex, footerActions, lineItemId) {
175
+ switch (actionType) {
176
+ case types_1.ActionTypeV2.ToolBar:
177
+ case types_1.ActionTypeV2.ToolBarIntentBased: {
178
+ handleActionRecord(appSchema, actions, lineItemProperties, actionType, recordIndex);
179
+ break;
180
+ }
181
+ case types_1.ActionTypeV2.Footer:
182
+ case types_1.ActionTypeV2.FooterIntentBased: {
183
+ if (footerActions) {
184
+ handleActionRecord(appSchema, footerActions, lineItemProperties, actionType, recordIndex);
185
+ }
186
+ break;
187
+ }
188
+ case types_1.ActionTypeV2.Column:
189
+ case types_1.ActionTypeV2.ColumnIntentBased: {
190
+ handleActionRecord(appSchema, appSchema.definitions[lineItemId], lineItemProperties, actionType, recordIndex);
191
+ break;
192
+ }
193
+ case types_1.ActionTypeV2.OPColumn: {
194
+ generateGenericColumn(lineItemProperties, appSchema, recordIndex);
195
+ }
196
+ }
197
+ }
198
+ /**
199
+ * Adds the line item records to the app schema (for the list report or an object page section comprising a table)
200
+ * @param appSchema - the app specific schema that shall get enhanced
201
+ * @param lineItemAnnotation - the UI.LineItem annotation, comprising all records
202
+ * @param entityType - the entity type as part of the AVT ConvertedMetadata
203
+ * @param lineItemId - optional: in case of OP the parameter must be passed to distinguish the OP tables;
204
+ * in case of LR or ALP no ID is passed, 'LineItems' is taken then.
205
+ * @param customColumnRef - schema reference to custom column definition.
206
+ */
207
+ function addLineItemsType(appSchema, lineItemAnnotation, entityType, lineItemId, customColumnRef) {
208
+ // Add the correct lineItem definition
209
+ lineItemId = lineItemId || common_1.DefinitionName.LineItems;
210
+ const { actions, footerActions, lineItemPath } = common_1.addCommonLineItemDefinitions(appSchema, lineItemAnnotation, entityType, lineItemId);
211
+ if (lineItemAnnotation) {
212
+ let recordIndex = 0;
213
+ lineItemAnnotation.forEach((lineItemRecord) => {
214
+ const lineItemProperties = { lineItemPath, lineItemRecord, lineItemId, entityType };
215
+ const actionTypes = getActionType(lineItemRecord, lineItemId);
216
+ if (actionTypes) {
217
+ actionTypes.forEach((actionType) => {
218
+ handleAnyAction(actionType, appSchema, actions, lineItemProperties, recordIndex, footerActions, lineItemId);
219
+ });
220
+ }
221
+ else {
222
+ generateGenericColumn(lineItemProperties, appSchema, recordIndex);
223
+ }
224
+ recordIndex++;
225
+ });
226
+ }
227
+ if (customColumnRef) {
228
+ appSchema.definitions[lineItemId].properties['custom'] = {
229
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${customColumnRef}`
230
+ };
231
+ }
232
+ }
233
+ exports.addLineItemsType = addLineItemsType;
234
+ /**
235
+ * Adds enum entries of possible leading properties for 'leadingProperty' property in TableCustomColumn properties.
236
+ * @param appSchema - the app specific schema that shall get enhanced
237
+ * @param entityType - the entity type as part of the AVT ConvertedMetadata
238
+ * @param definitionName - definition name of CustomColumn definition
239
+ */
240
+ function addListReportLeadingProperties(appSchema, entityType, definitionName) {
241
+ // Leading Property
242
+ const leadingPropertySchema = appSchema['definitions'][definitionName] &&
243
+ appSchema['definitions'][definitionName]['properties'] &&
244
+ appSchema['definitions'][definitionName]['properties']['leadingProperty'];
245
+ if (leadingPropertySchema) {
246
+ const properties = [
247
+ // Entity properties
248
+ ...((entityType === null || entityType === void 0 ? void 0 : entityType.entityProperties) || []),
249
+ // Navigation Properties
250
+ ...((entityType === null || entityType === void 0 ? void 0 : entityType.navigationProperties) || [])
251
+ ];
252
+ leadingPropertySchema['enum'] = properties === null || properties === void 0 ? void 0 : properties.reduce((result, property) => {
253
+ if (!result.includes(property.name)) {
254
+ result.push(property.name);
255
+ }
256
+ return result;
257
+ }, []);
258
+ }
259
+ }
260
+ exports.addListReportLeadingProperties = addListReportLeadingProperties;
261
+ /**
262
+ * Adds enum entries of posible tabKey properties for 'leadingProperty' property in TableCustomColumn properties.
263
+ * @param appSchema - the app specific schema that shall get enhanced
264
+ * @param definitionName - definition name of CustomColumn definition
265
+ * @param page - sapui5 page object
266
+ */
267
+ function addTabkeyEnum(appSchema, definitionName, page) {
268
+ const tabkeyPropertySchema = appSchema['definitions'][definitionName] &&
269
+ appSchema['definitions'][definitionName]['properties'] &&
270
+ appSchema['definitions'][definitionName]['properties']['tabKey'];
271
+ if (page) {
272
+ const quickVariantsX = page.component &&
273
+ page.component.settings &&
274
+ page.component.settings.quickVariantSelectionX &&
275
+ page.component.settings.quickVariantSelectionX['variants'];
276
+ if (quickVariantsX) {
277
+ const enumEntries = [];
278
+ Object.keys(quickVariantsX).reduce((result, variant) => {
279
+ const key = quickVariantsX[variant] && quickVariantsX[variant]['key'] !== undefined
280
+ ? quickVariantsX[variant]['key']
281
+ : undefined;
282
+ // Avoid duplicates
283
+ if (key !== undefined && !result.includes(key)) {
284
+ result.push(key);
285
+ }
286
+ return result;
287
+ }, enumEntries);
288
+ tabkeyPropertySchema['enum'] = enumEntries;
289
+ }
290
+ }
291
+ }
292
+ exports.addTabkeyEnum = addTabkeyEnum;
293
+ /**
294
+ * Adds enum entries of posible fragment entries.
295
+ * @param {object} appSchema The app specific schema that shall get enhanced.
296
+ * @param {FileData[]} fragments Array of fragments.
297
+ * @param {string[]} appId Application id.
298
+ * @param {string} property Property name.
299
+ * @param {string} definitionName Definition name of CustomColumn definition.
300
+ */
301
+ function addFragmentEnum(appSchema, fragments, appId, property, definitionName) {
302
+ var _a, _b;
303
+ if (!fragments || !appId || appId.startsWith('${')) {
304
+ return;
305
+ }
306
+ const enumEntries = [];
307
+ fragments.forEach((fragment) => {
308
+ let relPath = fragment.dataSourceUri.split('webapp')[1];
309
+ if (relPath && relPath.indexOf('.fragment.xml') > 0) {
310
+ const fragmentJson = JSON.parse(xml_js_1.xml2json(fragment.fileContent, { compact: true }))['core:FragmentDefinition'];
311
+ if ((property === 'fragmentName' &&
312
+ (!fragmentJson || fragmentJson.Column || fragmentJson['table:Column'])) ||
313
+ (property === 'cellsFragmentName' &&
314
+ (!fragmentJson ||
315
+ (!fragmentJson.Column &&
316
+ !fragmentJson['table:Column'] &&
317
+ !fragmentJson['smartfilterbar:ControlConfiguration'])))) {
318
+ relPath = relPath.replace(new RegExp('\\' + path_1.sep, 'g'), '/');
319
+ const fragmentName = appId + relPath.split('.fragment.xml')[0].replace(/\//g, '.');
320
+ enumEntries.push(fragmentName);
321
+ }
322
+ }
323
+ });
324
+ if (enumEntries.length > 0) {
325
+ const fragmentPropertySchema = (_b = (_a = appSchema.definitions[definitionName]) === null || _a === void 0 ? void 0 : _a['properties']) === null || _b === void 0 ? void 0 : _b[property];
326
+ fragmentPropertySchema['enum'] = enumEntries;
327
+ }
328
+ }
329
+ exports.addFragmentEnum = addFragmentEnum;
330
+ /**
331
+ * Adds the custom columns to the line item records of the app schema (for the list report comprising a table).
332
+ * @param {object} appSchema The app specific schema that shall get enhanced.
333
+ * @param {EntityType} entityType The entity type as part of the AVT ConvertedMetadata.
334
+ * @param {SapUiAppPageV2} page Sapui5 page object.
335
+ * @param {object} manifest Application manifest.
336
+ * @param {FileData[]} [fragments] Array of fragments.
337
+ * @param {string} [customColumnsDefinitionName=DefinitionName.CustomColumns] Definition name of Custom Columns definition.
338
+ * @param {string} [customColumnDefinitionName=DefinitionName.CustomColumn] Definition name of Custom Column definition.
339
+ */
340
+ function addTableColumnExtensions(appSchema, entityType, page, manifest, fragments, customColumnsDefinitionName = common_1.DefinitionName.CustomColumns, customColumnDefinitionName = common_1.DefinitionName.CustomColumn) {
341
+ addCustomColumnDefinition(appSchema, customColumnsDefinitionName, customColumnDefinitionName);
342
+ // Leading Property
343
+ addListReportLeadingProperties(appSchema, entityType, customColumnDefinitionName);
344
+ // Tab key property
345
+ addTabkeyEnum(appSchema, customColumnDefinitionName, page);
346
+ // Fragment property
347
+ const appId = manifest && manifest['sap.app'] && manifest['sap.app']['id'];
348
+ addFragmentEnum(appSchema, fragments, appId, 'fragmentName', customColumnDefinitionName);
349
+ addFragmentEnum(appSchema, fragments, appId, 'cellsFragmentName', customColumnDefinitionName);
350
+ }
351
+ exports.addTableColumnExtensions = addTableColumnExtensions;
352
+ /**
353
+ * Processes an anyOf definition of the generic schema
354
+ * @param propertyDefinition - current definition in the generic schema
355
+ * @param schema - the app-specific schema
356
+ * @param propertyKey - key of the single property
357
+ * @param factory - factory for creating metadata instances
358
+ * @param pageType - page type
359
+ */
360
+ function processAnyOf(propertyDefinition, schema, propertyKey, factory, pageType) {
361
+ propertyDefinition['anyOf'].forEach((element) => {
362
+ const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, element, propertyKey, factory, pageType);
363
+ if (nextDefinition) {
364
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
365
+ processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
366
+ }
367
+ });
368
+ }
369
+ /**
370
+ * Processes an object reference of the generic schema
371
+ * @param schema
372
+ * @param propertyDefinition - current definition in the generic schema
373
+ * @param propertyKey - key of the single property
374
+ * @param factory - factory for creating metadata instances
375
+ * @param pageType - page type
376
+ */
377
+ function processObject(schema, propertyDefinition, propertyKey, factory, pageType) {
378
+ const nextDefinition = common_1.getNextTargetDefinition(schema, '', {}, propertyDefinition, propertyKey, factory, pageType);
379
+ if (nextDefinition) {
380
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
381
+ processMetadata(schema, nextDefinition.targetDefinition, nextDefinition.configObject, pageType, factory);
382
+ }
383
+ }
384
+ /**
385
+ * Determines the artifact type of a property and adds it to the property definition in schema
386
+ * @param syncRule - sync rule of the current property
387
+ * @param propertyDefinition - current definition in the generic schema
388
+ */
389
+ function addArtifactType(syncRule, propertyDefinition) {
390
+ if (syncRule.manifest !== undefined) {
391
+ propertyDefinition.artifactType = ux_specification_types_1.ArtifactType.Manifest;
392
+ }
393
+ else if (syncRule.flex !== undefined) {
394
+ propertyDefinition.artifactType = ux_specification_types_1.ArtifactType.FlexChange;
395
+ //Add control type
396
+ if (syncRule.flex.controlType) {
397
+ propertyDefinition.controlType = syncRule.flex.controlType();
398
+ }
399
+ }
400
+ else {
401
+ propertyDefinition.artifactType = ux_specification_types_1.ArtifactType.Annotation;
402
+ }
403
+ }
404
+ /**
405
+ * After the generation of a generic schema, apply post-generation rule to a single property
406
+ * @param metaDataDefinition
407
+ * @param schema - given app schema, to be adapted
408
+ * @param pageType - page type
409
+ * @param factory - factory for creating metadata instances
410
+ * @param propertyDefinition - definition of the single property
411
+ * @param propertyKey - key of the single property
412
+ * @param schemaDefinition - the current entry point or definition in the app schema
413
+ */
414
+ function processSingleProperty(metaDataDefinition, schema, pageType, factory, propertyDefinition, propertyKey, schemaDefinition) {
415
+ if (metaDataDefinition) {
416
+ const syncRule = decorators_1.getReflectMetadata(metaDataDefinition, propertyKey);
417
+ if (syncRule) {
418
+ if (typeof syncRule.generate === 'function') {
419
+ syncRule.generate(schema, schemaDefinition, propertyKey);
420
+ propertyDefinition = schemaDefinition['properties'][propertyKey];
421
+ }
422
+ //Add artifact type
423
+ addArtifactType(syncRule, propertyDefinition);
424
+ }
425
+ if (propertyDefinition.type === 'object' || propertyDefinition.$ref) {
426
+ processObject(schema, propertyDefinition, propertyKey, factory, pageType);
427
+ }
428
+ else if (propertyDefinition['anyOf']) {
429
+ processAnyOf(propertyDefinition, schema, propertyKey, factory, pageType);
430
+ }
431
+ }
432
+ }
433
+ /**
434
+ * After the generation of a generic schema, apply rules to a list of properties of the given schema section
435
+ * @param schema - given app schema, to be adapted
436
+ * @param schemaDefinition - the current entry point or definition in the app schema
437
+ * @param pageType - page type
438
+ * @param factory - factory for creating metadata instances
439
+ */
440
+ function processProperties(schema, schemaDefinition, metaDataDefinition, propertiesSection, pageType, factory) {
441
+ if (schemaDefinition[propertiesSection]) {
442
+ for (const propertyKey in schemaDefinition[propertiesSection]) {
443
+ if (propertyKey === 'anyOf') {
444
+ processAnyOf(schemaDefinition[propertiesSection], schema, propertyKey, factory, pageType);
445
+ }
446
+ else {
447
+ const propertyDefinition = schemaDefinition[propertiesSection][propertyKey];
448
+ if (propertyDefinition['anyOf']) {
449
+ processAnyOf(propertyDefinition, schema, propertyKey, factory, pageType);
450
+ }
451
+ else if (propertyKey === '$ref') {
452
+ processObject(schema, schemaDefinition[propertiesSection], propertyKey, factory, pageType);
453
+ }
454
+ else {
455
+ processSingleProperty(metaDataDefinition, schema, pageType, factory, propertyDefinition, propertyKey, schemaDefinition);
456
+ }
457
+ }
458
+ }
459
+ }
460
+ }
461
+ /**
462
+ * Apply post-processing rules as specified in form of "generate" at the syncRule
463
+ * @param schema - given app schema, to be adapted
464
+ * @param schemaDefinition - the current entry point or definition in the app schema
465
+ * @param pageType - page type
466
+ * @param factory - factory for creating metadata instances
467
+ */
468
+ function processMetadata(schema, schemaDefinition, metaDataDefinition, pageType, factory) {
469
+ processProperties(schema, schemaDefinition, metaDataDefinition, 'properties', pageType, factory);
470
+ processProperties(schema, schemaDefinition, metaDataDefinition, 'additionalProperties', pageType, factory);
471
+ processProperties(schema, schemaDefinition, metaDataDefinition, 'patternProperties', pageType, factory);
472
+ }
473
+ exports.processMetadata = processMetadata;
474
+ /**
475
+ * Method updates passed 'enum' array by removing passed matching entries.
476
+ * @param {Array<unknown>} values Array of values.
477
+ * @param {Array<unknown>} valuesToRemove Array of values to remove.
478
+ */
479
+ function removeElementsFromEnum(values, valuesToRemove) {
480
+ for (const value of valuesToRemove) {
481
+ const index = values.indexOf(value);
482
+ if (index !== -1) {
483
+ // Value exists - remove it
484
+ values.splice(index, 1);
485
+ }
486
+ }
487
+ }
488
+ exports.removeElementsFromEnum = removeElementsFromEnum;
489
+ /**
490
+ * Adds the selection fields to the app schema, as properties of the Filterbar
491
+ * @param entityType - the entity type as part of the AVT ConvertedMetadata
492
+ * @param appSchema - the app specific schema that shall get enhanced
493
+ * @param selectionFieldsAnnotation - the UI.SelectionField annotation
494
+ */
495
+ function addSelectionFields(appSchema, selectionFieldsAnnotation, entityType) {
496
+ const selectionFieldsDefinition = (appSchema['definitions'].SelectionFields = Object.assign(Object.assign({}, appSchema['definitions'].SelectionFields), { properties: {}, additionalProperties: false, annotationPath: common_1.createAnnotationPath(entityType.fullyQualifiedName, "com.sap.vocabularies.UI.v1.SelectionFields" /* SelectionFields */) }));
497
+ if (!selectionFieldsAnnotation) {
498
+ return;
499
+ }
500
+ let i = 0;
501
+ selectionFieldsAnnotation.forEach((selectionField) => {
502
+ let description = selectionField.value;
503
+ const fieldDefinition = `SelectionField<${common_1.prepareRef(selectionField.value)}>`;
504
+ const dataType = common_1.determineDataType(selectionField);
505
+ if (selectionField.type === 'PropertyPath') {
506
+ description = common_1.getLabelForPropertyPath(selectionField, entityType);
507
+ }
508
+ selectionFieldsDefinition['properties'][selectionField.value] = {
509
+ $ref: common_1.DEFINITION_LINK_PREFIX + fieldDefinition,
510
+ propertyIndex: i
511
+ };
512
+ appSchema['definitions'][fieldDefinition] = {
513
+ type: 'object',
514
+ description,
515
+ annotationPath: `${selectionFieldsDefinition.annotationPath}/${i}`,
516
+ isViewNode: true,
517
+ additionalProperties: false,
518
+ annotationType: selectionField === null || selectionField === void 0 ? void 0 : selectionField.type,
519
+ dataType
520
+ };
521
+ if (['Date', 'DateTime', 'DateTimeOffset'].includes(dataType)) {
522
+ appSchema['definitions'][fieldDefinition]['$ref'] = `${common_1.DEFINITION_LINK_PREFIX}SelectionFieldDateSettings`;
523
+ }
524
+ else {
525
+ appSchema['definitions'][fieldDefinition].properties = {};
526
+ }
527
+ i++;
528
+ });
529
+ }
530
+ exports.addSelectionFields = addSelectionFields;
531
+ //# sourceMappingURL=utils.js.map