@sap/ux-specification 1.84.46 → 1.84.50

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 (740) 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-ListReport.html +1 -1
  10. package/dist/documentation/v4/v4-ObjectPage.html +1 -1
  11. package/dist/index-min.js +83 -29544
  12. package/dist/index-min.js.map +3 -3
  13. package/dist/schemas/v2/AnalyticalListPageConfig.json +11 -8
  14. package/dist/schemas/v2/ListReportConfig.json +132 -129
  15. package/dist/schemas/v4/ApplicationV4.json +1 -1
  16. package/dist/schemas/v4/ListReportConfig.json +21 -22
  17. package/dist/scripts/extractDocu.d.ts +2 -0
  18. package/dist/scripts/extractDocu.d.ts.map +1 -0
  19. package/dist/scripts/extractDocu.js +507 -0
  20. package/dist/scripts/extractDocu.js.map +1 -0
  21. package/dist/scripts/runDocu.d.ts +2 -0
  22. package/dist/scripts/runDocu.d.ts.map +1 -0
  23. package/dist/scripts/runDocu.js +579 -0
  24. package/dist/scripts/runDocu.js.map +1 -0
  25. package/dist/scripts/spec.d.ts +2 -0
  26. package/dist/scripts/spec.d.ts.map +1 -0
  27. package/dist/scripts/spec.js +113 -0
  28. package/dist/scripts/spec.js.map +1 -0
  29. package/dist/scripts/to-json-schema.d.ts +11 -0
  30. package/dist/scripts/to-json-schema.d.ts.map +1 -0
  31. package/dist/scripts/to-json-schema.js +146 -0
  32. package/dist/scripts/to-json-schema.js.map +1 -0
  33. package/dist/{types → src}/api.d.ts +1 -1
  34. package/dist/{types → src}/api.d.ts.map +1 -1
  35. package/dist/src/api.js +171 -0
  36. package/dist/src/api.js.map +1 -0
  37. package/dist/{types → src}/apiTypes.d.ts +13 -18
  38. package/dist/src/apiTypes.d.ts.map +1 -0
  39. package/dist/src/apiTypes.js +3 -0
  40. package/dist/src/apiTypes.js.map +1 -0
  41. package/dist/{types → src}/extensionLogger.d.ts +1 -1
  42. package/dist/{types → src}/extensionLogger.d.ts.map +1 -1
  43. package/dist/src/extensionLogger.js +41 -0
  44. package/dist/src/extensionLogger.js.map +1 -0
  45. package/dist/{types → src}/i18n/i18n.d.ts +0 -0
  46. package/dist/{types → src}/i18n/i18n.d.ts.map +0 -0
  47. package/dist/src/i18n/i18n.js +26 -0
  48. package/dist/src/i18n/i18n.js.map +1 -0
  49. package/dist/{types → src}/index.d.ts +2 -2
  50. package/dist/src/index.d.ts.map +1 -0
  51. package/dist/src/index.js +20 -0
  52. package/dist/src/index.js.map +1 -0
  53. package/dist/{types → src}/project.d.ts +2 -1
  54. package/dist/src/project.d.ts.map +1 -0
  55. package/dist/src/project.js +153 -0
  56. package/dist/src/project.js.map +1 -0
  57. package/dist/{types → src}/specification/schemaAccess.d.ts +3 -13
  58. package/dist/src/specification/schemaAccess.d.ts.map +1 -0
  59. package/dist/src/specification/schemaAccess.js +63 -0
  60. package/dist/src/specification/schemaAccess.js.map +1 -0
  61. package/dist/{types → src}/sync/common/appProvider.d.ts +4 -6
  62. package/dist/src/sync/common/appProvider.d.ts.map +1 -0
  63. package/dist/src/sync/common/appProvider.js +65 -0
  64. package/dist/src/sync/common/appProvider.js.map +1 -0
  65. package/dist/{types → src}/sync/common/decoration/control.d.ts +2 -2
  66. package/dist/src/sync/common/decoration/control.d.ts.map +1 -0
  67. package/dist/src/sync/common/decoration/control.js +219 -0
  68. package/dist/src/sync/common/decoration/control.js.map +1 -0
  69. package/dist/{types → src}/sync/common/decoration/decorators.d.ts +0 -0
  70. package/dist/src/sync/common/decoration/decorators.d.ts.map +1 -0
  71. package/dist/src/sync/common/decoration/decorators.js +52 -0
  72. package/dist/src/sync/common/decoration/decorators.js.map +1 -0
  73. package/dist/{types → src}/sync/common/decoration/factory.d.ts +1 -1
  74. package/dist/{types → src}/sync/common/decoration/factory.d.ts.map +1 -1
  75. package/dist/src/sync/common/decoration/factory.js +49 -0
  76. package/dist/src/sync/common/decoration/factory.js.map +1 -0
  77. package/dist/src/sync/common/decoration/flex.d.ts +4 -0
  78. package/dist/src/sync/common/decoration/flex.d.ts.map +1 -0
  79. package/dist/src/sync/common/decoration/flex.js +9 -0
  80. package/dist/src/sync/common/decoration/flex.js.map +1 -0
  81. package/dist/{types → src}/sync/common/decoration/index.d.ts +0 -0
  82. package/dist/{types → src}/sync/common/decoration/index.d.ts.map +0 -0
  83. package/dist/src/sync/common/decoration/index.js +16 -0
  84. package/dist/src/sync/common/decoration/index.js.map +1 -0
  85. package/dist/{types → src}/sync/common/flexUtils.d.ts +2 -4
  86. package/dist/src/sync/common/flexUtils.d.ts.map +1 -0
  87. package/dist/src/sync/common/flexUtils.js +107 -0
  88. package/dist/src/sync/common/flexUtils.js.map +1 -0
  89. package/dist/{types → src}/sync/common/generate/index.d.ts +0 -0
  90. package/dist/{types → src}/sync/common/generate/index.d.ts.map +0 -0
  91. package/dist/src/sync/common/generate/index.js +15 -0
  92. package/dist/src/sync/common/generate/index.js.map +1 -0
  93. package/dist/{types → src}/sync/common/generate/objectPage.d.ts +1 -2
  94. package/dist/src/sync/common/generate/objectPage.d.ts.map +1 -0
  95. package/dist/src/sync/common/generate/objectPage.js +380 -0
  96. package/dist/src/sync/common/generate/objectPage.js.map +1 -0
  97. package/dist/{types → src}/sync/common/generate/utils.d.ts +2 -1
  98. package/dist/src/sync/common/generate/utils.d.ts.map +1 -0
  99. package/dist/src/sync/common/generate/utils.js +417 -0
  100. package/dist/src/sync/common/generate/utils.js.map +1 -0
  101. package/dist/src/sync/common/i18n.json +23 -0
  102. package/dist/{types → src}/sync/common/import/utils.d.ts +0 -0
  103. package/dist/{types → src}/sync/common/import/utils.d.ts.map +0 -0
  104. package/dist/src/sync/common/import/utils.js +107 -0
  105. package/dist/src/sync/common/import/utils.js.map +1 -0
  106. package/dist/{types → src}/sync/common/importProject.d.ts +0 -0
  107. package/dist/src/sync/common/importProject.d.ts.map +1 -0
  108. package/dist/src/sync/common/importProject.js +336 -0
  109. package/dist/src/sync/common/importProject.js.map +1 -0
  110. package/dist/{types → src}/sync/common/index.d.ts +0 -0
  111. package/dist/{types → src}/sync/common/index.d.ts.map +0 -0
  112. package/dist/src/sync/common/index.js +23 -0
  113. package/dist/src/sync/common/index.js.map +1 -0
  114. package/dist/{types → src}/sync/common/types.d.ts +6 -56
  115. package/dist/src/sync/common/types.d.ts.map +1 -0
  116. package/dist/src/sync/common/types.js +170 -0
  117. package/dist/src/sync/common/types.js.map +1 -0
  118. package/dist/{types → src}/sync/common/utils.d.ts +8 -10
  119. package/dist/src/sync/common/utils.d.ts.map +1 -0
  120. package/dist/src/sync/common/utils.js +1245 -0
  121. package/dist/src/sync/common/utils.js.map +1 -0
  122. package/dist/{types → src}/sync/i18n.d.ts +0 -0
  123. package/dist/{types → src}/sync/i18n.d.ts.map +0 -0
  124. package/dist/src/sync/i18n.js +28 -0
  125. package/dist/src/sync/i18n.js.map +1 -0
  126. package/dist/{types → src}/sync/v2/application.d.ts +7 -7
  127. package/dist/src/sync/v2/application.d.ts.map +1 -0
  128. package/dist/src/sync/v2/application.js +186 -0
  129. package/dist/src/sync/v2/application.js.map +1 -0
  130. package/dist/src/sync/v2/export/controls/Action.d.ts +29 -0
  131. package/dist/src/sync/v2/export/controls/Action.d.ts.map +1 -0
  132. package/dist/src/sync/v2/export/controls/Action.js +129 -0
  133. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  134. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts +10 -0
  135. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +1 -0
  136. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js +75 -0
  137. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js.map +1 -0
  138. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +10 -0
  139. package/dist/{types → src}/sync/v2/export/controls/AnalyticalListPageKPI.d.ts.map +1 -1
  140. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js +57 -0
  141. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js.map +1 -0
  142. package/dist/{types → src}/sync/v2/export/controls/Card.d.ts +30 -30
  143. package/dist/src/sync/v2/export/controls/Card.d.ts.map +1 -0
  144. package/dist/src/sync/v2/export/controls/Card.js +656 -0
  145. package/dist/src/sync/v2/export/controls/Card.js.map +1 -0
  146. package/dist/src/sync/v2/export/controls/Field.d.ts +5 -0
  147. package/dist/src/sync/v2/export/controls/Field.d.ts.map +1 -0
  148. package/dist/src/sync/v2/export/controls/Field.js +42 -0
  149. package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
  150. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +34 -0
  151. package/dist/src/sync/v2/export/controls/FilterBar.d.ts.map +1 -0
  152. package/dist/src/sync/v2/export/controls/FilterBar.js +257 -0
  153. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -0
  154. package/dist/src/sync/v2/export/controls/FormAction.d.ts +16 -0
  155. package/dist/src/sync/v2/export/controls/FormAction.d.ts.map +1 -0
  156. package/dist/src/sync/v2/export/controls/FormAction.js +135 -0
  157. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
  158. package/dist/{types → src}/sync/v2/export/controls/Fragment.d.ts +5 -5
  159. package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -0
  160. package/dist/src/sync/v2/export/controls/Fragment.js +580 -0
  161. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -0
  162. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts +8 -0
  163. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts.map +1 -0
  164. package/dist/src/sync/v2/export/controls/ObjectPageChart.js +38 -0
  165. package/dist/src/sync/v2/export/controls/ObjectPageChart.js.map +1 -0
  166. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts +18 -0
  167. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  168. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js +111 -0
  169. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js.map +1 -0
  170. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +9 -0
  171. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +1 -0
  172. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +63 -0
  173. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  174. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +9 -0
  175. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -0
  176. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js +62 -0
  177. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js.map +1 -0
  178. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +9 -0
  179. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -0
  180. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +63 -0
  181. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -0
  182. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts +8 -0
  183. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts.map +1 -0
  184. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js +60 -0
  185. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js.map +1 -0
  186. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +45 -0
  187. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +1 -0
  188. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +200 -0
  189. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
  190. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +49 -0
  191. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -0
  192. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +337 -0
  193. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -0
  194. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +9 -0
  195. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
  196. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +62 -0
  197. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  198. package/dist/{types → src}/sync/v2/export/controls/Table.d.ts +26 -26
  199. package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -0
  200. package/dist/src/sync/v2/export/controls/Table.js +709 -0
  201. package/dist/src/sync/v2/export/controls/Table.js.map +1 -0
  202. package/dist/src/sync/v2/export/controls/TableColumn.d.ts +38 -0
  203. package/dist/src/sync/v2/export/controls/TableColumn.d.ts.map +1 -0
  204. package/dist/src/sync/v2/export/controls/TableColumn.js +173 -0
  205. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -0
  206. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +5 -0
  207. package/dist/src/sync/v2/export/controls/ToolBar.d.ts.map +1 -0
  208. package/dist/src/sync/v2/export/controls/ToolBar.js +7 -0
  209. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  210. package/dist/{types → src}/sync/v2/export/controls/index.d.ts +0 -0
  211. package/dist/{types → src}/sync/v2/export/controls/index.d.ts.map +0 -0
  212. package/dist/src/sync/v2/export/controls/index.js +33 -0
  213. package/dist/src/sync/v2/export/controls/index.js.map +1 -0
  214. package/dist/{types → src}/sync/v2/export/export.d.ts +1 -1
  215. package/dist/{types → src}/sync/v2/export/export.d.ts.map +1 -1
  216. package/dist/src/sync/v2/export/export.js +678 -0
  217. package/dist/src/sync/v2/export/export.js.map +1 -0
  218. package/dist/{types → src}/sync/v2/export/exportPage.d.ts +2 -1
  219. package/dist/src/sync/v2/export/exportPage.d.ts.map +1 -0
  220. package/dist/src/sync/v2/export/exportPage.js +304 -0
  221. package/dist/src/sync/v2/export/exportPage.js.map +1 -0
  222. package/dist/{types → src}/sync/v2/export/factory.d.ts +0 -0
  223. package/dist/{types → src}/sync/v2/export/factory.d.ts.map +1 -1
  224. package/dist/src/sync/v2/export/factory.js +71 -0
  225. package/dist/src/sync/v2/export/factory.js.map +1 -0
  226. package/dist/{types → src}/sync/v2/export/manifest.d.ts +3 -3
  227. package/dist/src/sync/v2/export/manifest.d.ts.map +1 -0
  228. package/dist/src/sync/v2/export/manifest.js +159 -0
  229. package/dist/src/sync/v2/export/manifest.js.map +1 -0
  230. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +13 -0
  231. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts.map +1 -0
  232. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +43 -0
  233. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -0
  234. package/dist/src/sync/v2/export/pages/ListReport.d.ts +11 -0
  235. package/dist/src/sync/v2/export/pages/ListReport.d.ts.map +1 -0
  236. package/dist/src/sync/v2/export/pages/ListReport.js +40 -0
  237. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -0
  238. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts +18 -0
  239. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -0
  240. package/dist/src/sync/v2/export/pages/ObjectPage.js +101 -0
  241. package/dist/src/sync/v2/export/pages/ObjectPage.js.map +1 -0
  242. package/dist/{types → src}/sync/v2/export/pages/OverviewPage.d.ts +7 -7
  243. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts.map +1 -0
  244. package/dist/src/sync/v2/export/pages/OverviewPage.js +214 -0
  245. package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -0
  246. package/dist/{types → src}/sync/v2/export/pages/index.d.ts +0 -0
  247. package/dist/{types → src}/sync/v2/export/pages/index.d.ts.map +0 -0
  248. package/dist/src/sync/v2/export/pages/index.js +17 -0
  249. package/dist/src/sync/v2/export/pages/index.js.map +1 -0
  250. package/dist/{types → src}/sync/v2/export/view-controller-generator.d.ts +4 -4
  251. package/dist/src/sync/v2/export/view-controller-generator.d.ts.map +1 -0
  252. package/dist/src/sync/v2/export/view-controller-generator.js +150 -0
  253. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -0
  254. package/dist/{types → src}/sync/v2/generate/analyticalListReport.d.ts +1 -1
  255. package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -0
  256. package/dist/src/sync/v2/generate/analyticalListReport.js +86 -0
  257. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -0
  258. package/dist/{types → src}/sync/v2/generate/generate.d.ts +1 -1
  259. package/dist/src/sync/v2/generate/generate.d.ts.map +1 -0
  260. package/dist/src/sync/v2/generate/generate.js +100 -0
  261. package/dist/src/sync/v2/generate/generate.js.map +1 -0
  262. package/dist/{types → src}/sync/v2/generate/index.d.ts +0 -0
  263. package/dist/{types → src}/sync/v2/generate/index.d.ts.map +0 -0
  264. package/dist/src/sync/v2/generate/index.js +15 -0
  265. package/dist/src/sync/v2/generate/index.js.map +1 -0
  266. package/dist/{types → src}/sync/v2/generate/listReport.d.ts +2 -2
  267. package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -0
  268. package/dist/src/sync/v2/generate/listReport.js +120 -0
  269. package/dist/src/sync/v2/generate/listReport.js.map +1 -0
  270. package/dist/{types → src}/sync/v2/generate/objectPage.d.ts +1 -1
  271. package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -0
  272. package/dist/src/sync/v2/generate/objectPage.js +547 -0
  273. package/dist/src/sync/v2/generate/objectPage.js.map +1 -0
  274. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts +1 -1
  275. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts.map +1 -1
  276. package/dist/src/sync/v2/generate/overviewPage.js +71 -0
  277. package/dist/src/sync/v2/generate/overviewPage.js.map +1 -0
  278. package/dist/{types → src}/sync/v2/generate/utils.d.ts +3 -4
  279. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -0
  280. package/dist/src/sync/v2/generate/utils.js +540 -0
  281. package/dist/src/sync/v2/generate/utils.js.map +1 -0
  282. package/dist/{types → src}/sync/v2/import/app/appProvider.d.ts +4 -4
  283. package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -0
  284. package/dist/src/sync/v2/import/app/appProvider.js +142 -0
  285. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -0
  286. package/dist/{types → src}/sync/v2/import/app/ovpProvider.d.ts +1 -1
  287. package/dist/src/sync/v2/import/app/ovpProvider.d.ts.map +1 -0
  288. package/dist/src/sync/v2/import/app/ovpProvider.js +33 -0
  289. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -0
  290. package/dist/{types → src}/sync/v2/import/common/index.d.ts +6 -9
  291. package/dist/src/sync/v2/import/common/index.d.ts.map +1 -0
  292. package/dist/src/sync/v2/import/common/index.js +420 -0
  293. package/dist/src/sync/v2/import/common/index.js.map +1 -0
  294. package/dist/{types → src}/sync/v2/import/controls/table.d.ts +2 -2
  295. package/dist/src/sync/v2/import/controls/table.d.ts.map +1 -0
  296. package/dist/src/sync/v2/import/controls/table.js +34 -0
  297. package/dist/src/sync/v2/import/controls/table.js.map +1 -0
  298. package/dist/{types → src}/sync/v2/import/getPageType.d.ts +0 -0
  299. package/dist/{types → src}/sync/v2/import/getPageType.d.ts.map +0 -0
  300. package/dist/src/sync/v2/import/getPageType.js +1 -0
  301. package/dist/src/sync/v2/import/getPageType.js.map +1 -0
  302. package/dist/{types → src}/sync/v2/import/index.d.ts +0 -0
  303. package/dist/{types → src}/sync/v2/import/index.d.ts.map +0 -0
  304. package/dist/src/sync/v2/import/index.js +18 -0
  305. package/dist/src/sync/v2/import/index.js.map +1 -0
  306. package/dist/{types → src}/sync/v2/import/pages/analyticalListPage.d.ts +2 -2
  307. package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts.map +1 -0
  308. package/dist/src/sync/v2/import/pages/analyticalListPage.js +129 -0
  309. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -0
  310. package/dist/{types → src}/sync/v2/import/pages/listReport.d.ts +2 -2
  311. package/dist/src/sync/v2/import/pages/listReport.d.ts.map +1 -0
  312. package/dist/src/sync/v2/import/pages/listReport.js +160 -0
  313. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -0
  314. package/dist/{types → src}/sync/v2/import/pages/objectPage.d.ts +3 -2
  315. package/dist/src/sync/v2/import/pages/objectPage.d.ts.map +1 -0
  316. package/dist/src/sync/v2/import/pages/objectPage.js +746 -0
  317. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -0
  318. package/dist/{types → src}/sync/v2/import/pages/overviewPage.d.ts +2 -3
  319. package/dist/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -0
  320. package/dist/src/sync/v2/import/pages/overviewPage.js +112 -0
  321. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -0
  322. package/dist/{types → src}/sync/v2/import/utils.d.ts +5 -5
  323. package/dist/src/sync/v2/import/utils.d.ts.map +1 -0
  324. package/dist/src/sync/v2/import/utils.js +169 -0
  325. package/dist/src/sync/v2/import/utils.js.map +1 -0
  326. package/dist/{types → src}/sync/v2/types.d.ts +5 -6
  327. package/dist/src/sync/v2/types.d.ts.map +1 -0
  328. package/dist/src/sync/v2/types.js +38 -0
  329. package/dist/src/sync/v2/types.js.map +1 -0
  330. package/dist/{types → src}/sync/v4/application.d.ts +5 -9
  331. package/dist/src/sync/v4/application.d.ts.map +1 -0
  332. package/dist/src/sync/v4/application.js +153 -0
  333. package/dist/src/sync/v4/application.js.map +1 -0
  334. package/dist/src/sync/v4/export/controls/FilterBar.d.ts +6 -0
  335. package/dist/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -0
  336. package/dist/src/sync/v4/export/controls/FilterBar.js +25 -0
  337. package/dist/src/sync/v4/export/controls/FilterBar.js.map +1 -0
  338. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +11 -0
  339. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  340. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +132 -0
  341. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -0
  342. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +9 -0
  343. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -0
  344. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +55 -0
  345. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -0
  346. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +22 -0
  347. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +1 -0
  348. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js +66 -0
  349. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js.map +1 -0
  350. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts +5 -0
  351. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts.map +1 -0
  352. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js +25 -0
  353. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js.map +1 -0
  354. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts +23 -0
  355. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -0
  356. package/dist/src/sync/v4/export/controls/ObjectPageTable.js +181 -0
  357. package/dist/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -0
  358. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +13 -0
  359. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -0
  360. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +65 -0
  361. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -0
  362. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +5 -0
  363. package/dist/{types → src}/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +1 -1
  364. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js +22 -0
  365. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -0
  366. package/dist/{types → src}/sync/v4/export/controls/Table.d.ts +53 -31
  367. package/dist/src/sync/v4/export/controls/Table.d.ts.map +1 -0
  368. package/dist/src/sync/v4/export/controls/Table.js +743 -0
  369. package/dist/src/sync/v4/export/controls/Table.js.map +1 -0
  370. package/dist/src/sync/v4/export/controls/TableColumn.d.ts +64 -0
  371. package/dist/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -0
  372. package/dist/src/sync/v4/export/controls/TableColumn.js +311 -0
  373. package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -0
  374. package/dist/src/sync/v4/export/controls/ToolBar.d.ts +9 -0
  375. package/dist/src/sync/v4/export/controls/ToolBar.d.ts.map +1 -0
  376. package/dist/src/sync/v4/export/controls/ToolBar.js +10 -0
  377. package/dist/src/sync/v4/export/controls/ToolBar.js.map +1 -0
  378. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts +8 -0
  379. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -0
  380. package/dist/src/sync/v4/export/controls/ToolBarAction.js +32 -0
  381. package/dist/src/sync/v4/export/controls/ToolBarAction.js.map +1 -0
  382. package/dist/{types → src}/sync/v4/export/controls/index.d.ts +0 -0
  383. package/dist/{types → src}/sync/v4/export/controls/index.d.ts.map +0 -0
  384. package/dist/src/sync/v4/export/controls/index.js +25 -0
  385. package/dist/src/sync/v4/export/controls/index.js.map +1 -0
  386. package/dist/{types → src}/sync/v4/export/export.d.ts +3 -2
  387. package/dist/src/sync/v4/export/export.d.ts.map +1 -0
  388. package/dist/src/sync/v4/export/export.js +797 -0
  389. package/dist/src/sync/v4/export/export.js.map +1 -0
  390. package/dist/{types → src}/sync/v4/export/factory.d.ts +0 -0
  391. package/dist/{types → src}/sync/v4/export/factory.d.ts.map +0 -0
  392. package/dist/src/sync/v4/export/factory.js +57 -0
  393. package/dist/src/sync/v4/export/factory.js.map +1 -0
  394. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts +9 -0
  395. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts.map +1 -0
  396. package/dist/src/sync/v4/export/flexibleColumnLayout.js +126 -0
  397. package/dist/src/sync/v4/export/flexibleColumnLayout.js.map +1 -0
  398. package/dist/{types → src}/sync/v4/export/manifest.d.ts +2 -2
  399. package/dist/src/sync/v4/export/manifest.d.ts.map +1 -0
  400. package/dist/src/sync/v4/export/manifest.js +260 -0
  401. package/dist/src/sync/v4/export/manifest.js.map +1 -0
  402. package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts +0 -0
  403. package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts.map +0 -0
  404. package/dist/src/sync/v4/export/pages/FreestylePage.js +10 -0
  405. package/dist/src/sync/v4/export/pages/FreestylePage.js.map +1 -0
  406. package/dist/src/sync/v4/export/pages/ListReport.d.ts +14 -0
  407. package/dist/src/sync/v4/export/pages/ListReport.d.ts.map +1 -0
  408. package/dist/src/sync/v4/export/pages/ListReport.js +82 -0
  409. package/dist/src/sync/v4/export/pages/ListReport.js.map +1 -0
  410. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +9 -0
  411. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts.map +1 -0
  412. package/dist/src/sync/v4/export/pages/ObjectPage.js +41 -0
  413. package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -0
  414. package/dist/{types → src}/sync/v4/export/pages/index.d.ts +0 -0
  415. package/dist/{types → src}/sync/v4/export/pages/index.d.ts.map +0 -0
  416. package/dist/src/sync/v4/export/pages/index.js +16 -0
  417. package/dist/src/sync/v4/export/pages/index.js.map +1 -0
  418. package/dist/{types → src}/sync/v4/export/types.d.ts +1 -1
  419. package/dist/{types → src}/sync/v4/export/types.d.ts.map +1 -1
  420. package/dist/src/sync/v4/export/types.js +3 -0
  421. package/dist/src/sync/v4/export/types.js.map +1 -0
  422. package/dist/{types → src}/sync/v4/export/utils.d.ts +2 -2
  423. package/dist/src/sync/v4/export/utils.d.ts.map +1 -0
  424. package/dist/src/sync/v4/export/utils.js +44 -0
  425. package/dist/src/sync/v4/export/utils.js.map +1 -0
  426. package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts +0 -0
  427. package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts.map +0 -0
  428. package/dist/src/sync/v4/generate/freestylePage.js +16 -0
  429. package/dist/src/sync/v4/generate/freestylePage.js.map +1 -0
  430. package/dist/{types → src}/sync/v4/generate/generate.d.ts +1 -1
  431. package/dist/src/sync/v4/generate/generate.d.ts.map +1 -0
  432. package/dist/src/sync/v4/generate/generate.js +82 -0
  433. package/dist/src/sync/v4/generate/generate.js.map +1 -0
  434. package/dist/{types → src}/sync/v4/generate/index.d.ts +0 -0
  435. package/dist/{types → src}/sync/v4/generate/index.d.ts.map +0 -0
  436. package/dist/src/sync/v4/generate/index.js +14 -0
  437. package/dist/src/sync/v4/generate/index.js.map +1 -0
  438. package/dist/{types → src}/sync/v4/generate/listReport.d.ts +0 -0
  439. package/dist/{types → src}/sync/v4/generate/listReport.d.ts.map +1 -1
  440. package/dist/src/sync/v4/generate/listReport.js +651 -0
  441. package/dist/src/sync/v4/generate/listReport.js.map +1 -0
  442. package/dist/{types → src}/sync/v4/generate/objectPage.d.ts +0 -0
  443. package/dist/{types → src}/sync/v4/generate/objectPage.d.ts.map +1 -1
  444. package/dist/src/sync/v4/generate/objectPage.js +566 -0
  445. package/dist/src/sync/v4/generate/objectPage.js.map +1 -0
  446. package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts +2 -2
  447. package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts.map +1 -1
  448. package/dist/src/sync/v4/import/app/appProvider.js +11 -0
  449. package/dist/src/sync/v4/import/app/appProvider.js.map +1 -0
  450. package/dist/{types → src}/sync/v4/import/app/baseAppProvider.d.ts +9 -9
  451. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -0
  452. package/dist/src/sync/v4/import/app/baseAppProvider.js +352 -0
  453. package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -0
  454. package/dist/{types → src}/sync/v4/import/app/freestyleProvider.d.ts +2 -2
  455. package/dist/src/sync/v4/import/app/freestyleProvider.d.ts.map +1 -0
  456. package/dist/src/sync/v4/import/app/freestyleProvider.js +12 -0
  457. package/dist/src/sync/v4/import/app/freestyleProvider.js.map +1 -0
  458. package/dist/{types → src}/sync/v4/import/app/index.d.ts +0 -0
  459. package/dist/{types → src}/sync/v4/import/app/index.d.ts.map +0 -0
  460. package/dist/src/sync/v4/import/app/index.js +13 -0
  461. package/dist/src/sync/v4/import/app/index.js.map +1 -0
  462. package/dist/{types → src}/sync/v4/import/fragment.d.ts +1 -1
  463. package/dist/src/sync/v4/import/fragment.d.ts.map +1 -0
  464. package/dist/src/sync/v4/import/fragment.js +128 -0
  465. package/dist/src/sync/v4/import/fragment.js.map +1 -0
  466. package/dist/{types → src}/sync/v4/import/index.d.ts +0 -0
  467. package/dist/{types → src}/sync/v4/import/index.d.ts.map +0 -0
  468. package/dist/src/sync/v4/import/index.js +15 -0
  469. package/dist/src/sync/v4/import/index.js.map +1 -0
  470. package/dist/{types → src}/sync/v4/import/pages/listReport.d.ts +4 -4
  471. package/dist/src/sync/v4/import/pages/listReport.d.ts.map +1 -0
  472. package/dist/src/sync/v4/import/pages/listReport.js +270 -0
  473. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -0
  474. package/dist/{types → src}/sync/v4/import/pages/objectPage.d.ts +2 -2
  475. package/dist/src/sync/v4/import/pages/objectPage.d.ts.map +1 -0
  476. package/dist/src/sync/v4/import/pages/objectPage.js +261 -0
  477. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -0
  478. package/dist/{types → src}/sync/v4/import/utils.d.ts +1 -1
  479. package/dist/{types → src}/sync/v4/import/utils.d.ts.map +1 -1
  480. package/dist/src/sync/v4/import/utils.js +35 -0
  481. package/dist/src/sync/v4/import/utils.js.map +1 -0
  482. package/dist/{types → src}/sync/v4/types.d.ts +0 -0
  483. package/dist/{types → src}/sync/v4/types.d.ts.map +0 -0
  484. package/dist/src/sync/v4/types.js +3 -0
  485. package/dist/src/sync/v4/types.js.map +1 -0
  486. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts +1 -1
  487. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts.map +1 -1
  488. package/dist/src/sync/v4/utils/StableIdHelper.js +145 -0
  489. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -0
  490. package/dist/src/sync/v4/utils/utils.d.ts +42 -0
  491. package/dist/src/sync/v4/utils/utils.d.ts.map +1 -0
  492. package/dist/src/sync/v4/utils/utils.js +175 -0
  493. package/dist/src/sync/v4/utils/utils.js.map +1 -0
  494. package/package.json +14 -14
  495. package/CHANGELOG.md +0 -925
  496. package/dist/types/apiTypes.d.ts.map +0 -1
  497. package/dist/types/index.d.ts.map +0 -1
  498. package/dist/types/project.d.ts.map +0 -1
  499. package/dist/types/specification/common/Application.d.ts +0 -37
  500. package/dist/types/specification/common/Application.d.ts.map +0 -1
  501. package/dist/types/specification/common/index.d.ts +0 -6
  502. package/dist/types/specification/common/index.d.ts.map +0 -1
  503. package/dist/types/specification/common/page.d.ts +0 -48
  504. package/dist/types/specification/common/page.d.ts.map +0 -1
  505. package/dist/types/specification/common/types.d.ts +0 -17
  506. package/dist/types/specification/common/types.d.ts.map +0 -1
  507. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts +0 -50
  508. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts.map +0 -1
  509. package/dist/types/specification/common/webapp/manifest/index.d.ts +0 -4
  510. package/dist/types/specification/common/webapp/manifest/index.d.ts.map +0 -1
  511. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts +0 -376
  512. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts.map +0 -1
  513. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts +0 -34
  514. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts.map +0 -1
  515. package/dist/types/specification/schemaAccess.d.ts.map +0 -1
  516. package/dist/types/specification/v2/ApplicationV2.d.ts +0 -26
  517. package/dist/types/specification/v2/ApplicationV2.d.ts.map +0 -1
  518. package/dist/types/specification/v2/controls/Action.d.ts +0 -88
  519. package/dist/types/specification/v2/controls/Action.d.ts.map +0 -1
  520. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts +0 -59
  521. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts.map +0 -1
  522. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts +0 -31
  523. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts.map +0 -1
  524. package/dist/types/specification/v2/controls/Card.d.ts +0 -656
  525. package/dist/types/specification/v2/controls/Card.d.ts.map +0 -1
  526. package/dist/types/specification/v2/controls/Facets.d.ts +0 -18
  527. package/dist/types/specification/v2/controls/Facets.d.ts.map +0 -1
  528. package/dist/types/specification/v2/controls/Field.d.ts +0 -11
  529. package/dist/types/specification/v2/controls/Field.d.ts.map +0 -1
  530. package/dist/types/specification/v2/controls/FilterBar.d.ts +0 -196
  531. package/dist/types/specification/v2/controls/FilterBar.d.ts.map +0 -1
  532. package/dist/types/specification/v2/controls/Footer.d.ts +0 -21
  533. package/dist/types/specification/v2/controls/Footer.d.ts.map +0 -1
  534. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts +0 -17
  535. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts.map +0 -1
  536. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts +0 -16
  537. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts.map +0 -1
  538. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts +0 -35
  539. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts.map +0 -1
  540. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts +0 -23
  541. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts.map +0 -1
  542. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts +0 -121
  543. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts.map +0 -1
  544. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts +0 -184
  545. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts.map +0 -1
  546. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts +0 -16
  547. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts.map +0 -1
  548. package/dist/types/specification/v2/controls/Table.d.ts +0 -496
  549. package/dist/types/specification/v2/controls/Table.d.ts.map +0 -1
  550. package/dist/types/specification/v2/controls/ToolBar.d.ts +0 -9
  551. package/dist/types/specification/v2/controls/ToolBar.d.ts.map +0 -1
  552. package/dist/types/specification/v2/controls/index.d.ts +0 -18
  553. package/dist/types/specification/v2/controls/index.d.ts.map +0 -1
  554. package/dist/types/specification/v2/index.d.ts +0 -6
  555. package/dist/types/specification/v2/index.d.ts.map +0 -1
  556. package/dist/types/specification/v2/page.d.ts +0 -8
  557. package/dist/types/specification/v2/page.d.ts.map +0 -1
  558. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts +0 -22
  559. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts.map +0 -1
  560. package/dist/types/specification/v2/pages/ListReportConfig.d.ts +0 -13
  561. package/dist/types/specification/v2/pages/ListReportConfig.d.ts.map +0 -1
  562. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts +0 -34
  563. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts.map +0 -1
  564. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts +0 -128
  565. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts.map +0 -1
  566. package/dist/types/specification/v2/pages/index.d.ts +0 -5
  567. package/dist/types/specification/v2/pages/index.d.ts.map +0 -1
  568. package/dist/types/specification/v2/webapp/index.d.ts +0 -2
  569. package/dist/types/specification/v2/webapp/index.d.ts.map +0 -1
  570. package/dist/types/specification/v2/webapp/manifest/index.d.ts +0 -3
  571. package/dist/types/specification/v2/webapp/manifest/index.d.ts.map +0 -1
  572. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts +0 -11
  573. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts.map +0 -1
  574. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts +0 -99
  575. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts.map +0 -1
  576. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts +0 -32
  577. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts.map +0 -1
  578. package/dist/types/specification/v4/ApplicationV4.d.ts +0 -32
  579. package/dist/types/specification/v4/ApplicationV4.d.ts.map +0 -1
  580. package/dist/types/specification/v4/controls/FilterBar.d.ts +0 -19
  581. package/dist/types/specification/v4/controls/FilterBar.d.ts.map +0 -1
  582. package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts +0 -12
  583. package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts.map +0 -1
  584. package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts +0 -30
  585. package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts.map +0 -1
  586. package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts +0 -47
  587. package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts.map +0 -1
  588. package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts +0 -15
  589. package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts.map +0 -1
  590. package/dist/types/specification/v4/controls/ObjectPageSection.d.ts +0 -99
  591. package/dist/types/specification/v4/controls/ObjectPageSection.d.ts.map +0 -1
  592. package/dist/types/specification/v4/controls/ObjectPageTable.d.ts +0 -71
  593. package/dist/types/specification/v4/controls/ObjectPageTable.d.ts.map +0 -1
  594. package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts +0 -26
  595. package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts.map +0 -1
  596. package/dist/types/specification/v4/controls/Table.d.ts +0 -311
  597. package/dist/types/specification/v4/controls/Table.d.ts.map +0 -1
  598. package/dist/types/specification/v4/controls/ToolBar.d.ts +0 -54
  599. package/dist/types/specification/v4/controls/ToolBar.d.ts.map +0 -1
  600. package/dist/types/specification/v4/controls/index.d.ts +0 -11
  601. package/dist/types/specification/v4/controls/index.d.ts.map +0 -1
  602. package/dist/types/specification/v4/index.d.ts +0 -6
  603. package/dist/types/specification/v4/index.d.ts.map +0 -1
  604. package/dist/types/specification/v4/page.d.ts +0 -20
  605. package/dist/types/specification/v4/page.d.ts.map +0 -1
  606. package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts +0 -3
  607. package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts.map +0 -1
  608. package/dist/types/specification/v4/pages/ListReportConfig.d.ts +0 -37
  609. package/dist/types/specification/v4/pages/ListReportConfig.d.ts.map +0 -1
  610. package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts +0 -19
  611. package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts.map +0 -1
  612. package/dist/types/specification/v4/pages/index.d.ts +0 -4
  613. package/dist/types/specification/v4/pages/index.d.ts.map +0 -1
  614. package/dist/types/specification/v4/webapp/index.d.ts +0 -2
  615. package/dist/types/specification/v4/webapp/index.d.ts.map +0 -1
  616. package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts +0 -225
  617. package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts.map +0 -1
  618. package/dist/types/specification/v4/webapp/manifest/index.d.ts +0 -5
  619. package/dist/types/specification/v4/webapp/manifest/index.d.ts.map +0 -1
  620. package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts +0 -103
  621. package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts.map +0 -1
  622. package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts +0 -83
  623. package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts.map +0 -1
  624. package/dist/types/sync/common/appProvider.d.ts.map +0 -1
  625. package/dist/types/sync/common/decoration/control.d.ts.map +0 -1
  626. package/dist/types/sync/common/decoration/decorators.d.ts.map +0 -1
  627. package/dist/types/sync/common/decoration/flex.d.ts +0 -7
  628. package/dist/types/sync/common/decoration/flex.d.ts.map +0 -1
  629. package/dist/types/sync/common/flexUtils.d.ts.map +0 -1
  630. package/dist/types/sync/common/generate/objectPage.d.ts.map +0 -1
  631. package/dist/types/sync/common/generate/utils.d.ts.map +0 -1
  632. package/dist/types/sync/common/importProject.d.ts.map +0 -1
  633. package/dist/types/sync/common/types.d.ts.map +0 -1
  634. package/dist/types/sync/common/utils.d.ts.map +0 -1
  635. package/dist/types/sync/v2/application.d.ts.map +0 -1
  636. package/dist/types/sync/v2/export/controls/Action.d.ts +0 -29
  637. package/dist/types/sync/v2/export/controls/Action.d.ts.map +0 -1
  638. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts +0 -10
  639. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +0 -1
  640. package/dist/types/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +0 -10
  641. package/dist/types/sync/v2/export/controls/Card.d.ts.map +0 -1
  642. package/dist/types/sync/v2/export/controls/Field.d.ts +0 -5
  643. package/dist/types/sync/v2/export/controls/Field.d.ts.map +0 -1
  644. package/dist/types/sync/v2/export/controls/FilterBar.d.ts +0 -35
  645. package/dist/types/sync/v2/export/controls/FilterBar.d.ts.map +0 -1
  646. package/dist/types/sync/v2/export/controls/FormAction.d.ts +0 -16
  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 +0 -9
  654. package/dist/types/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +0 -1
  655. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts +0 -9
  656. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts.map +0 -1
  657. package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +0 -9
  658. package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +0 -1
  659. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts +0 -8
  660. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts.map +0 -1
  661. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +0 -45
  662. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +0 -1
  663. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts +0 -50
  664. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts.map +0 -1
  665. package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +0 -9
  666. package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
  667. package/dist/types/sync/v2/export/controls/Table.d.ts.map +0 -1
  668. package/dist/types/sync/v2/export/controls/TableColumn.d.ts +0 -39
  669. package/dist/types/sync/v2/export/controls/TableColumn.d.ts.map +0 -1
  670. package/dist/types/sync/v2/export/controls/ToolBar.d.ts +0 -5
  671. package/dist/types/sync/v2/export/controls/ToolBar.d.ts.map +0 -1
  672. package/dist/types/sync/v2/export/exportPage.d.ts.map +0 -1
  673. package/dist/types/sync/v2/export/manifest.d.ts.map +0 -1
  674. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts +0 -15
  675. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts.map +0 -1
  676. package/dist/types/sync/v2/export/pages/ListReport.d.ts +0 -11
  677. package/dist/types/sync/v2/export/pages/ListReport.d.ts.map +0 -1
  678. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts +0 -19
  679. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts.map +0 -1
  680. package/dist/types/sync/v2/export/pages/OverviewPage.d.ts.map +0 -1
  681. package/dist/types/sync/v2/export/view-controller-generator.d.ts.map +0 -1
  682. package/dist/types/sync/v2/generate/analyticalListReport.d.ts.map +0 -1
  683. package/dist/types/sync/v2/generate/generate.d.ts.map +0 -1
  684. package/dist/types/sync/v2/generate/listReport.d.ts.map +0 -1
  685. package/dist/types/sync/v2/generate/objectPage.d.ts.map +0 -1
  686. package/dist/types/sync/v2/generate/utils.d.ts.map +0 -1
  687. package/dist/types/sync/v2/import/app/appProvider.d.ts.map +0 -1
  688. package/dist/types/sync/v2/import/app/ovpProvider.d.ts.map +0 -1
  689. package/dist/types/sync/v2/import/common/index.d.ts.map +0 -1
  690. package/dist/types/sync/v2/import/controls/table.d.ts.map +0 -1
  691. package/dist/types/sync/v2/import/pages/analyticalListPage.d.ts.map +0 -1
  692. package/dist/types/sync/v2/import/pages/listReport.d.ts.map +0 -1
  693. package/dist/types/sync/v2/import/pages/objectPage.d.ts.map +0 -1
  694. package/dist/types/sync/v2/import/pages/overviewPage.d.ts.map +0 -1
  695. package/dist/types/sync/v2/import/utils.d.ts.map +0 -1
  696. package/dist/types/sync/v2/types.d.ts.map +0 -1
  697. package/dist/types/sync/v4/application.d.ts.map +0 -1
  698. package/dist/types/sync/v4/export/controls/FilterBar.d.ts +0 -5
  699. package/dist/types/sync/v4/export/controls/FilterBar.d.ts.map +0 -1
  700. package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts +0 -13
  701. package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
  702. package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts +0 -9
  703. package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts.map +0 -1
  704. package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +0 -22
  705. package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +0 -1
  706. package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts +0 -5
  707. package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts.map +0 -1
  708. package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts +0 -23
  709. package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts.map +0 -1
  710. package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts +0 -13
  711. package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +0 -1
  712. package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +0 -5
  713. package/dist/types/sync/v4/export/controls/Table.d.ts.map +0 -1
  714. package/dist/types/sync/v4/export/controls/TableColumn.d.ts +0 -64
  715. package/dist/types/sync/v4/export/controls/TableColumn.d.ts.map +0 -1
  716. package/dist/types/sync/v4/export/controls/ToolBar.d.ts +0 -9
  717. package/dist/types/sync/v4/export/controls/ToolBar.d.ts.map +0 -1
  718. package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts +0 -8
  719. package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts.map +0 -1
  720. package/dist/types/sync/v4/export/export.d.ts.map +0 -1
  721. package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts +0 -8
  722. package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts.map +0 -1
  723. package/dist/types/sync/v4/export/manifest.d.ts.map +0 -1
  724. package/dist/types/sync/v4/export/pages/ListReport.d.ts +0 -14
  725. package/dist/types/sync/v4/export/pages/ListReport.d.ts.map +0 -1
  726. package/dist/types/sync/v4/export/pages/ObjectPage.d.ts +0 -9
  727. package/dist/types/sync/v4/export/pages/ObjectPage.d.ts.map +0 -1
  728. package/dist/types/sync/v4/export/utils.d.ts.map +0 -1
  729. package/dist/types/sync/v4/generate/generate.d.ts.map +0 -1
  730. package/dist/types/sync/v4/import/app/baseAppProvider.d.ts.map +0 -1
  731. package/dist/types/sync/v4/import/app/freestyleProvider.d.ts.map +0 -1
  732. package/dist/types/sync/v4/import/fragment.d.ts.map +0 -1
  733. package/dist/types/sync/v4/import/pages/listReport.d.ts.map +0 -1
  734. package/dist/types/sync/v4/import/pages/objectPage.d.ts.map +0 -1
  735. package/dist/types/sync/v4/utils/utils.d.ts +0 -44
  736. package/dist/types/sync/v4/utils/utils.d.ts.map +0 -1
  737. package/dist/types/v2.d.ts +0 -3
  738. package/dist/types/v2.d.ts.map +0 -1
  739. package/dist/types/v4.d.ts +0 -3
  740. package/dist/types/v4.d.ts.map +0 -1
@@ -0,0 +1,797 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.exportPageV4 = void 0;
4
+ const common_1 = require("../../common");
5
+ const application_1 = require("../application");
6
+ const manifest_1 = require("./manifest");
7
+ const flexibleColumnLayout_1 = require("./flexibleColumnLayout");
8
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
9
+ const utils_1 = require("../../common/utils");
10
+ const factory_1 = require("./factory");
11
+ const utils_2 = require("./utils");
12
+ /**
13
+ * Return the skeleton of a new routing target for the manifest, pre-filled with some values
14
+ * @param name - name of the template, e.g. "sap.suite.ui.generic.template.ObjectPage"
15
+ * @param entitySet - the main entity set
16
+ * @param navigationProperty - navigation property
17
+ */
18
+ const getNewRoutingTarget = (name, entitySet) => {
19
+ return {
20
+ type: 'Component',
21
+ id: '',
22
+ name: name,
23
+ options: {
24
+ settings: {
25
+ entitySet: entitySet,
26
+ navigation: {},
27
+ controlConfiguration: {}
28
+ }
29
+ }
30
+ };
31
+ };
32
+ const defaultExportResult = {
33
+ flexChanges: [],
34
+ manifest: {
35
+ 'sap.ui5': {
36
+ flexEnabled: true,
37
+ routing: {
38
+ targets: {}
39
+ }
40
+ },
41
+ 'sap.app': {}
42
+ },
43
+ fragments: []
44
+ };
45
+ /**
46
+ * Applies the sync rule for a flex change during export
47
+ * @param syncRule - export rule from the object classes decorator
48
+ * @param transferParameters - list of parameters passed from API
49
+ * @param ids - list of parent & child ids
50
+ * @param breadcrumbs - list of breadcrumbs, i.e. ID parts for building the stable ID
51
+ * @param title - title from the app schema (comprising for instance the facet ID)
52
+ * @param configObject - current (sub)object of the configuration file
53
+ * @param key - key of the given property
54
+ */
55
+ function exportFlexChange(syncRule, transferParameters, ids, breadcrumbs, configObject, key) {
56
+ const controlId = syncRule.flex.controlId(transferParameters.baseId, ids, breadcrumbs, syncRule.flex.controlType, transferParameters.title);
57
+ const flexChange = common_1.fillFlexChangeContent(configObject, syncRule, transferParameters.ui5Version, key, controlId);
58
+ transferParameters.exportResults.flexChanges.push(syncRule.flex.createFlexChange(flexChange, transferParameters.exportResults.manifest));
59
+ }
60
+ function determineTargetAnnotationOfTable(ids, transferParameters, configObject) {
61
+ let targetAnnotationEncoded = '@com.sap.vocabularies.UI.v1.LineItem';
62
+ let targetAnnotation = '@com.sap.vocabularies.UI.v1.LineItem';
63
+ const annotationPath = transferParameters.appSchema.definitions[common_1.DefinitionName.TableSPV]?.[common_1.SchemaTag.annotationPath];
64
+ if (ids.length > 1 && transferParameters.config['table'].annotationPath) {
65
+ const annoPath = transferParameters.appSchema.definitions[common_1.DefinitionName.ALPTable]?.[common_1.SchemaTag.annotationPath];
66
+ targetAnnotationEncoded = targetAnnotation = annoPath && annoPath.substr(annoPath.lastIndexOf('@'));
67
+ }
68
+ else if (configObject.table?.annotationPath) {
69
+ //view definition
70
+ targetAnnotationEncoded = targetAnnotation = `@${configObject.table.annotationPath}`;
71
+ }
72
+ else if (ids[0] === common_1.PropertyName.table && annotationPath) {
73
+ const annotationPathArray = annotationPath.split('/');
74
+ targetAnnotationEncoded = targetAnnotation = annotationPathArray[annotationPathArray.length - 1];
75
+ }
76
+ return { targetAnnotationEncoded, targetAnnotation };
77
+ }
78
+ function determineTargetAnnotationOfChart(ids, transferParameters, targetAnnotationEncoded, targetAnnotation, configObject) {
79
+ if (ids.length > 1) {
80
+ const annoPath = transferParameters.appSchema.definitions[common_1.DefinitionName.ALPChart]?.[common_1.SchemaTag.annotationPath];
81
+ targetAnnotationEncoded = targetAnnotation = annoPath && annoPath.substr(annoPath.lastIndexOf('@'));
82
+ }
83
+ else {
84
+ //chart level
85
+ targetAnnotationEncoded = targetAnnotation = `@${configObject.chart?.annotationPath}`;
86
+ }
87
+ return { targetAnnotationEncoded, targetAnnotation };
88
+ }
89
+ function determineTargetAnnotationOfViews(transferParameters, ids, targetAnnotation, targetAnnotationEncoded) {
90
+ const parentDefinition = transferParameters.appSchema.definitions['MultiTableModeV4']?.properties[ids[2]];
91
+ if (parentDefinition) {
92
+ if (ids.length === 3) {
93
+ //the parent definition comprises the annotation of the visualization of the (Selection)PresentationVariant.
94
+ targetAnnotation = targetAnnotationEncoded =
95
+ parentDefinition[common_1.SchemaTag.annotationPath] &&
96
+ parentDefinition[common_1.SchemaTag.annotationPath].substr(parentDefinition[common_1.SchemaTag.annotationPath].lastIndexOf('@'));
97
+ }
98
+ else if (ids.length > 3) {
99
+ //the own definition comprises the lineItem or chart annotation from the visualization
100
+ const ownDefinitionName = parentDefinition.$ref?.split(utils_1.DEFINITION_LINK_PREFIX)[1];
101
+ const ownDefinition = ownDefinitionName && transferParameters.appSchema.definitions[ownDefinitionName];
102
+ const annotation = ownDefinition?.[common_1.SchemaTag.annotationPath] &&
103
+ ownDefinition[common_1.SchemaTag.annotationPath].substr(ownDefinition[common_1.SchemaTag.annotationPath].lastIndexOf('@'));
104
+ targetAnnotation = targetAnnotationEncoded = ownDefinition['navigationProperty']
105
+ ? `${ownDefinition['navigationProperty']}/${annotation}`
106
+ : annotation;
107
+ }
108
+ }
109
+ return { targetAnnotation, targetAnnotationEncoded };
110
+ }
111
+ function determineTargetAnnotationOfSections(ids, custom, targetAnnotationEncoded, targetAnnotation) {
112
+ if (ids[1] === 'custom' && ids[2] !== ids[ids.length - 1]) {
113
+ custom = true;
114
+ targetAnnotationEncoded = ids[2];
115
+ targetAnnotation = targetAnnotationEncoded && targetAnnotationEncoded.replace(/::/g, '/');
116
+ }
117
+ else {
118
+ const sectionId = utils_2.extractLastIdPart(ids[1]);
119
+ targetAnnotationEncoded = sectionId && sectionId.replace(/\//g, '::');
120
+ targetAnnotation = targetAnnotationEncoded && targetAnnotationEncoded.replace(/::/g, '/');
121
+ }
122
+ return { custom, targetAnnotationEncoded, targetAnnotation };
123
+ }
124
+ /**
125
+ * Determines the target annotation that is relevant for the sync rule
126
+ * @param {string[]} ids - list of ids of parent elements
127
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
128
+ * @param { [key: string]: any } configObject - the given config.json, to be exported
129
+ * @returns { targetAnnotationEncoded, targetAnnotation, custom }
130
+ */
131
+ function determineTargetAnnotation(ids, transferParameters, configObject) {
132
+ let targetAnnotation, targetAnnotationEncoded, custom = false;
133
+ if (ids[0] === common_1.PropertyName.table && ids[1] !== common_1.PropertyName.views) {
134
+ ({ targetAnnotationEncoded, targetAnnotation } = determineTargetAnnotationOfTable(ids, transferParameters, configObject));
135
+ }
136
+ else if (ids[0] === common_1.PropertyName.chart && transferParameters.templateType === utils_1.TemplateType.AnalyticalListPageV4) {
137
+ ({ targetAnnotationEncoded, targetAnnotation } = determineTargetAnnotationOfChart(ids, transferParameters, targetAnnotationEncoded, targetAnnotation, configObject));
138
+ }
139
+ else if (ids[0] === common_1.PropertyName.sections) {
140
+ ({ custom, targetAnnotationEncoded, targetAnnotation } = determineTargetAnnotationOfSections(ids, custom, targetAnnotationEncoded, targetAnnotation));
141
+ }
142
+ else if (ids[1] === common_1.PropertyName.sections) {
143
+ //header sections
144
+ if (transferParameters.title && transferParameters.title.indexOf(common_1.FacetTitlePrefix) > -1) {
145
+ targetAnnotation = targetAnnotationEncoded = transferParameters.title.split(common_1.FacetTitlePrefix)[1];
146
+ }
147
+ else if (ids[2]) {
148
+ targetAnnotation = targetAnnotationEncoded = ids[2].split('@')[1];
149
+ }
150
+ else if (targetAnnotationEncoded) {
151
+ targetAnnotation = targetAnnotationEncoded = targetAnnotationEncoded.replace(/::/g, '/');
152
+ }
153
+ }
154
+ else if (ids[1] === common_1.PropertyName.views) {
155
+ ({ targetAnnotation, targetAnnotationEncoded } = determineTargetAnnotationOfViews(transferParameters, ids, targetAnnotation, targetAnnotationEncoded));
156
+ }
157
+ return { targetAnnotationEncoded, targetAnnotation, custom };
158
+ }
159
+ /**
160
+ * Calculates an additional key for the sync rule from the given ID's
161
+ * @param {string[]} ids - list of ids of parent elements
162
+ * @returns the key for the sync rule
163
+ */
164
+ function determineKeyForSyncRule(ids) {
165
+ let idIndex = 0;
166
+ for (let index = ids.length - 1; index > -1; index--) {
167
+ const element = ids[index];
168
+ if (element === 'columns' || element === common_1.PropertyName.actions || element === 'views') {
169
+ idIndex = index + 1;
170
+ break;
171
+ }
172
+ }
173
+ return idIndex > 0 ? ids[idIndex].replace(/\//gi, '??') : undefined;
174
+ }
175
+ /**
176
+ * Creates a new object in manifest
177
+ * @param {ExportToManifestParams} params - list of parameters
178
+ */
179
+ function createNewObjectInManifest(params) {
180
+ if (params.exportHandler && typeof params.exportHandler === 'function') {
181
+ params.exportHandler(params.manifestSection, params.configObject, params.configPropertyKey, params.manifestKey, params.syncRuleKey);
182
+ }
183
+ else if (!params.manifestSection[params.manifestKey]) {
184
+ params.manifestSection[params.manifestKey] = {};
185
+ }
186
+ }
187
+ /**
188
+ * Transfers a property value from config to manifest
189
+ * @param {ExportToManifestParams} params - list of parameters
190
+ * @param propertyDefinition - schema definition of a particular property
191
+ * @param nextDefinition - schema definition referred by $ref
192
+ */
193
+ function transferPropertyToManifest(params, propertyDefinition, nextDefinition) {
194
+ if (!(propertyDefinition['type'] !== 'array' &&
195
+ nextDefinition?.['targetDefinition']?.type === 'object' &&
196
+ nextDefinition?.['targetDefinition']?.properties)) {
197
+ if (params.exportHandler !== false) {
198
+ if (params.exportHandler && typeof params.exportHandler === 'function') {
199
+ params.exportHandler(params.manifestSection, params.configObject, params.configPropertyKey, params.manifestKey, params.syncRuleKey);
200
+ }
201
+ else if (Array.isArray(params.configObject[params.configPropertyKey]) &&
202
+ !params.configObject[params.configPropertyKey].length) {
203
+ delete params.manifestSection[params.manifestKey];
204
+ }
205
+ else {
206
+ params.manifestSection[params.manifestKey] = params.configObject[params.configPropertyKey];
207
+ }
208
+ }
209
+ }
210
+ else if (propertyDefinition['type'] !== 'array' && params.manifestSection[params.manifestKey] === undefined) {
211
+ createNewObjectInManifest(params);
212
+ }
213
+ }
214
+ /**
215
+ * Transfers a change in config.json to manifest
216
+ * @param ids - list of parent & child ids
217
+ * @param {SyncRule} syncRule - syncRule (metadata)
218
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
219
+ * @param {string} configPropertyKey - key of property in the config
220
+ * @param { [key: string]: any } configObject - the given config.json, to be exported
221
+ * @param propertyDefinition - schema definition of a particular property
222
+ * @param nextDefinition - schema definition referred by $ref
223
+ */
224
+ function exportManifestChange(ids, syncRule, transferParameters, configPropertyKey, configObject, propertyDefinition, nextDefinition) {
225
+ //eliminate subsections' hierarchy
226
+ let index = ids.indexOf('subsections');
227
+ while (index > -1) {
228
+ ids.splice(index - 1, 2);
229
+ index = ids.indexOf('subsections');
230
+ }
231
+ const { targetAnnotationEncoded, targetAnnotation, custom } = determineTargetAnnotation(ids, transferParameters, configObject);
232
+ const syncRuleKey = determineKeyForSyncRule(ids);
233
+ const path = syncRule.manifest.path(transferParameters.pageNameArray, transferParameters.exportResults.manifest, targetAnnotationEncoded, syncRuleKey, targetAnnotation, configObject);
234
+ const manifestSection = common_1.getManifestSectionByPathV4(transferParameters.exportResults.manifest, path, targetAnnotation, custom ? undefined : targetAnnotationEncoded);
235
+ if (manifestSection) {
236
+ const manifestKey = syncRule.manifest.key || configPropertyKey;
237
+ if (configObject[configPropertyKey] !== undefined) {
238
+ // In case of arrays we take over complete array
239
+ const exportParams = {
240
+ exportHandler: syncRule.manifest.export,
241
+ manifestSection,
242
+ configObject,
243
+ configPropertyKey,
244
+ manifestKey,
245
+ syncRuleKey
246
+ };
247
+ transferPropertyToManifest(exportParams, propertyDefinition, nextDefinition);
248
+ }
249
+ else if (syncRule.manifest.delete) {
250
+ const deleteHandler = syncRule.manifest.delete;
251
+ if (typeof deleteHandler === 'function') {
252
+ deleteHandler(manifestSection, configObject, configPropertyKey, manifestKey, syncRuleKey, transferParameters.config);
253
+ }
254
+ }
255
+ else if (manifestSection[manifestKey] !== undefined) {
256
+ delete manifestSection[manifestKey];
257
+ }
258
+ }
259
+ utils_1.deleteEmptyStructure(transferParameters.exportResults.manifest, path, targetAnnotation, targetAnnotationEncoded);
260
+ }
261
+ /**
262
+ * Evaluates an export rule for a property or object, transfers to flex change or manifest setting
263
+ * @param transferParameters - list of parameters passed from API
264
+ * @param breadcrumbs - list of breadcrumbs, i.e. ID parts for building the stable ID
265
+ * @param key - key of the given property
266
+ * @param configObject - current (sub)object of the configuration file
267
+ * @param ids - list of parent & child ids
268
+ * @param title - title from the app schema (comprising for instance the facet ID)
269
+ * @param propertyDefinition - schema definition of a particular property
270
+ * @param nextDefinition - schema definition referred by $ref
271
+ */
272
+ function evaluateExportRule(transferParameters, breadcrumbs, key, configObject, ids, propertyDefinition, nextDefinition) {
273
+ const syncRule = common_1.getReflectMetadata(configObject, key);
274
+ if (syncRule) {
275
+ if (syncRule.flex) {
276
+ exportFlexChange(syncRule, transferParameters, ids, breadcrumbs, configObject, key);
277
+ }
278
+ else if (syncRule.manifest) {
279
+ exportManifestChange(ids, syncRule, transferParameters, key, configObject, propertyDefinition, nextDefinition);
280
+ }
281
+ }
282
+ }
283
+ /**
284
+ * Processes an (object-like) sub-object of the app schema and transfer all connected config entries to manifest
285
+ * @param {TransferEntryParameters} parameters - list of parameters
286
+ * @param {NextDefinition} nextDefinition - the next definition in app schema to be processed
287
+ * @param currentConfigObject - current config object
288
+ * @param ids - list of parent & child ID's
289
+ * @param localIdParts - list of ID parts for building the stable ID
290
+ */
291
+ function transferSubObject(parameters, nextDefinition, currentConfigObject, ids, localIdParts) {
292
+ let objects = [], isArray = false;
293
+ if (parameters.propertyDefinition.$ref && nextDefinition) {
294
+ objects.push(nextDefinition.configObject);
295
+ }
296
+ else if (parameters.propertyDefinition['anyOf']) {
297
+ objects.push(currentConfigObject);
298
+ }
299
+ else if (parameters.propertyDefinition.type === 'array') {
300
+ objects = currentConfigObject;
301
+ isArray = true;
302
+ }
303
+ else {
304
+ objects.push(currentConfigObject);
305
+ }
306
+ parameters.index = 0;
307
+ for (const innerObject of objects) {
308
+ const additionalIds = [];
309
+ if (parameters.breadcrumbs[0] === common_1.PropertyName.sections && parameters.key === 'custom' && isArray) {
310
+ // We need add custom section 'id' into breadcrumbs to retrieve correct path to manifest
311
+ additionalIds.push(innerObject['id']);
312
+ }
313
+ parameters.transferParameters.title = nextDefinition.title;
314
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
315
+ transferManifestEntriesAndFlexChange(parameters.transferParameters, innerObject, [...ids, ...additionalIds], localIdParts, [...parameters.breadcrumbs, parameters.key], nextDefinition.targetDefinition);
316
+ parameters.index++;
317
+ }
318
+ }
319
+ /**
320
+ * Creates an ALP 'views' entry in the resulting manifest if not yet existing yet.
321
+ * Adds the secondary = table view if missing.
322
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
323
+ * @param configObject - current object in config.json
324
+ * @returns
325
+ * - a boolean indicating that the views entry got created.
326
+ * - a boolean indicating if the processing of sub-objects shall be stopped
327
+ **/
328
+ function createALPTableView(transferParameters, configObject, key) {
329
+ let newElementCreated = false;
330
+ if (!configObject[key] || Object.keys(configObject[key]).length === 0 || !configObject.chart) {
331
+ return { newElementCreated, stopProcessing: true };
332
+ }
333
+ const path = application_1.getSettingsPathForPage(transferParameters.pageNameArray) + `/views`;
334
+ const views = common_1.getManifestSectionByPathV4(transferParameters.exportResults.manifest, path);
335
+ if (!views['paths'] || Object.keys(views['paths']).length === 0) {
336
+ views['paths'] = [
337
+ {
338
+ secondary: [
339
+ {
340
+ annotationPath: configObject[key].annotationPath
341
+ }
342
+ ]
343
+ }
344
+ ];
345
+ newElementCreated = true;
346
+ }
347
+ else if (!views['paths'][0].secondary) {
348
+ views['paths'][0].secondary = [
349
+ {
350
+ annotationPath: configObject[key].annotationPath
351
+ }
352
+ ];
353
+ newElementCreated = true;
354
+ }
355
+ return { newElementCreated, stopProcessing: false };
356
+ }
357
+ /**
358
+ * Creates an ALP 'views' entry in the resulting manifest if not yet existing yet
359
+ * Adds the primary = chart view if missing.
360
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
361
+ * @param configObject - current object in config.json
362
+ * @returns
363
+ * - a boolean indicating that the views entry got created.
364
+ * - a boolean indicating if the processing of sub-objects shall be stopped
365
+ */
366
+ function createALPChartView(transferParameters, configObject, key) {
367
+ let newElementCreated = false;
368
+ if (!configObject[key] || Object.keys(configObject[key]).length === 0) {
369
+ return { newElementCreated, stopProcessing: true };
370
+ }
371
+ const path = application_1.getSettingsPathForPage(transferParameters.pageNameArray) + `/views`;
372
+ const views = common_1.getManifestSectionByPathV4(transferParameters.exportResults.manifest, path);
373
+ if (!views['paths'] || Object.keys(views['paths']).length === 0) {
374
+ views['paths'] = [
375
+ {
376
+ primary: [
377
+ {
378
+ annotationPath: configObject[key].annotationPath
379
+ }
380
+ ]
381
+ }
382
+ ];
383
+ newElementCreated = true;
384
+ }
385
+ else if (!views['paths'][0].primary) {
386
+ views['paths'][0].primary = [
387
+ {
388
+ annotationPath: configObject[key].annotationPath
389
+ }
390
+ ];
391
+ newElementCreated = true;
392
+ }
393
+ if (!views['paths'][0].secondary) {
394
+ views['paths'][0].secondary = [
395
+ {
396
+ annotationPath: configObject?.table?.annotationPath || 'com.sap.vocabularies.UI.v1.LineItem'
397
+ }
398
+ ];
399
+ }
400
+ return { newElementCreated, stopProcessing: false };
401
+ }
402
+ /**
403
+ * Creates an LR 'views' entry in the resulting manifest if not yet existing yet.
404
+ * Adds the current table view if missing.
405
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
406
+ * @param configObject - current object in config.json
407
+ * @returns a boolean indicating that the views entry got created.
408
+ */
409
+ function createLRTableView(index, transferParameters, key, configObject) {
410
+ if (!configObject || Object.keys(configObject).length === 0) {
411
+ return false;
412
+ }
413
+ let newElementCreated = false;
414
+ const path = application_1.getSettingsPathForPage(transferParameters.pageNameArray) + `/views`;
415
+ const views = common_1.getManifestSectionByPathV4(transferParameters.exportResults.manifest, path);
416
+ const newEntry = {
417
+ key: configObject['key'],
418
+ annotationPath: configObject.annotationPath
419
+ };
420
+ if (!views['paths'] || Object.keys(views['paths']).length === 0) {
421
+ //No views yet
422
+ views['paths'] = [newEntry];
423
+ newElementCreated = true;
424
+ }
425
+ else {
426
+ const existingIndex = views['paths'].findIndex((view) => view.key === configObject['key'] || view.key === key);
427
+ if (existingIndex === -1) {
428
+ //Given view does not exist yet
429
+ views['paths'].push(newEntry);
430
+ newElementCreated = true;
431
+ }
432
+ else if (existingIndex !== configObject.index) {
433
+ //Reordering scenario
434
+ const savedContent = JSON.parse(JSON.stringify(views['paths'][existingIndex]));
435
+ views['paths'].splice(existingIndex, 1);
436
+ views['paths'].splice(index, 0, savedContent);
437
+ newElementCreated = true;
438
+ }
439
+ }
440
+ return newElementCreated;
441
+ }
442
+ /**
443
+ * Special logic to create new elements in manifest
444
+ * @param definitionName - schema definition name of the current object
445
+ * @param key - key of the current object
446
+ * @param configObject - current object in config.json
447
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
448
+ * @returns newElementCreated - boolean value to indicate that a new element was created ==> no further sync rule on this level
449
+ */
450
+ function createNewElement(index, definitionName, key, configObject, transferParameters, preprocessed = false) {
451
+ let newElementCreated = false;
452
+ const stopProcessing = false;
453
+ if (!preprocessed) {
454
+ if (definitionName === common_1.DefinitionName.ALPChartView && key === common_1.PropertyName.chart && configObject) {
455
+ return createALPChartView(transferParameters, configObject, key);
456
+ }
457
+ else if (definitionName === common_1.DefinitionName.ALPTableView && key === common_1.PropertyName.table && configObject) {
458
+ return createALPTableView(transferParameters, configObject, key);
459
+ }
460
+ else if (key &&
461
+ definitionName &&
462
+ (definitionName.startsWith(common_1.DefinitionName.LRTableView) ||
463
+ definitionName.startsWith(common_1.DefinitionName.LRChartView))) {
464
+ newElementCreated = createLRTableView(index, transferParameters, key, configObject[key]);
465
+ }
466
+ }
467
+ return { newElementCreated, stopProcessing };
468
+ }
469
+ /**
470
+ * Transfers one entry of a list (aka one property of the config) to the manifest
471
+ * @param {TransferEntryParameters} parameters - list of parameters
472
+ * @param parentIds - array of collected parent ids
473
+ * @param stableIdParts - list of parts of the stable ID for flex changes
474
+ * @param preprocessed - indicates that the list was already preprocessed by following the config order
475
+ */
476
+ function transferSortedListEntry(parameters, parentIds, stableIdParts, preprocessed = false) {
477
+ const currentConfigObject = parameters.configObject[parameters.key];
478
+ const childId = common_1.getChildId(parameters.configObject, parameters.key);
479
+ const nextDefinition = utils_1.getNextTargetDefinition(parameters.transferParameters.appSchema, parameters.transferParameters.title, currentConfigObject, parameters.propertyDefinition, parameters.key, parameters.transferParameters.factory, parameters.transferParameters.pageType);
480
+ const { newElementCreated, stopProcessing } = createNewElement(parameters.index, parameters.propertyDefinition.$ref?.split(utils_1.DEFINITION_LINK_PREFIX)[1], parameters.key, parameters.configObject, parameters.transferParameters, preprocessed);
481
+ const ids = childId ? [...parentIds, childId] : [...parentIds, parameters.key];
482
+ if (!newElementCreated) {
483
+ evaluateExportRule(parameters.transferParameters, parameters.breadcrumbs, parameters.key, parameters.configObject, ids, parameters.propertyDefinition, nextDefinition);
484
+ }
485
+ if (parameters.propertyDefinition &&
486
+ ((typeof currentConfigObject === 'object' && Object.keys(currentConfigObject).length !== 0) ||
487
+ (parameters.propertyDefinition.$ref && nextDefinition.configObject)) &&
488
+ !stopProcessing) {
489
+ const localIdParts = childId ? [...stableIdParts, childId] : stableIdParts;
490
+ transferSubObject(parameters, nextDefinition, currentConfigObject, ids, localIdParts);
491
+ }
492
+ }
493
+ /**
494
+ * Function for special handling of anyOf definitions during the export
495
+ * @param {TransferEntryParameters} parameters - list of parameters
496
+ * @param anyOfDefinitions - the array of definitions from the anyOf (of additionalProperties)
497
+ * @param schemaDefinition - parent definition, comprising properties as well as additionalProperties
498
+ * @param parentIds - array of collected parent ids
499
+ * @param stableIdParts - list of parts of the stable ID for flex changes
500
+ * @returns
501
+ */
502
+ function transferConfigEntriesWithAnyOfDefinitions(transferEntryParameters, anyOfDefinitions, schemaDefinition, parentIds, stableIdParts) {
503
+ let preprocessed = false;
504
+ if (anyOfDefinitions) {
505
+ const configEntries = Object.entries(transferEntryParameters.configObject);
506
+ if (!configEntries || configEntries.length < 1) {
507
+ return preprocessed;
508
+ }
509
+ configEntries.sort((a, b) => a[1]['index'] - b[1]['index']);
510
+ //follow the config order, to support reordering
511
+ configEntries.forEach((configEntry) => {
512
+ if (schemaDefinition.properties[configEntry[0]]) {
513
+ transferEntryParameters.key = configEntry[0];
514
+ transferEntryParameters.propertyDefinition = schemaDefinition.properties[configEntry[0]];
515
+ //already part of schema
516
+ transferSortedListEntry(transferEntryParameters, parentIds, stableIdParts);
517
+ preprocessed = true;
518
+ }
519
+ else if (typeof configEntry[1] === 'object') {
520
+ //match against potential schema definitions
521
+ anyOfDefinitions.forEach((anyOfDefinition) => {
522
+ if (anyOfDefinition.$ref) {
523
+ transferEntryParameters.key = configEntry[0];
524
+ transferEntryParameters.propertyDefinition = anyOfDefinition;
525
+ transferSortedListEntry(transferEntryParameters, parentIds, stableIdParts);
526
+ preprocessed = true;
527
+ }
528
+ });
529
+ }
530
+ transferEntryParameters.index++;
531
+ });
532
+ }
533
+ return preprocessed;
534
+ }
535
+ /**
536
+ * Recursive function that traverses the content of the current object. It reads decorators and fills exportResultManifest entries and flex changes
537
+ * @param {TransferParameterTypeV4} transferParameters - list of parameters passed from API
538
+ * @param configObject - current object to traverse
539
+ * @param parentIds - array of collected parent ids
540
+ * @param stableIdParts - list of parts of the stable ID for flex changes
541
+ * @param breadcrumbs - array of sequence of properties that we are currently processing. Required for instance for table column name
542
+ * @param schemaDefinition - the current entry point or definition in the app schema
543
+ * @param title - the title to be used for the given schema definition
544
+ */
545
+ function transferManifestEntriesAndFlexChange(transferParameters, configObject, parentIds, stableIdParts, breadcrumbs, schemaDefinition) {
546
+ if (!schemaDefinition?.properties) {
547
+ return;
548
+ }
549
+ let index = 0;
550
+ //In case of additionalProperties = flexible array definition ==> new entries from the config shall be exported too
551
+ const transferEntryParameters = {
552
+ transferParameters,
553
+ breadcrumbs,
554
+ key: undefined,
555
+ index,
556
+ configObject,
557
+ propertyDefinition: undefined
558
+ };
559
+ const anyOfDefinitions = schemaDefinition.additionalProperties?.anyOf;
560
+ const preprocessed = transferConfigEntriesWithAnyOfDefinitions(transferEntryParameters, anyOfDefinitions, schemaDefinition, parentIds, stableIdParts);
561
+ //Sort if there is a propertyIndex, so that the exported list ends up in manifest in the right order
562
+ let sortedList = schemaDefinition.properties && Object.entries(schemaDefinition.properties);
563
+ if (sortedList) {
564
+ if (sortedList[0]?.[1][common_1.SchemaTag.propertyIndex]) {
565
+ sortedList = Object.entries(schemaDefinition.properties).sort((a, b) => a[1][common_1.SchemaTag.propertyIndex] - b[1][common_1.SchemaTag.propertyIndex]);
566
+ }
567
+ index = 0;
568
+ sortedList.forEach((element) => {
569
+ transferEntryParameters.key = element[0];
570
+ transferEntryParameters.propertyDefinition = element[1];
571
+ transferEntryParameters.index = index;
572
+ transferSortedListEntry(transferEntryParameters, parentIds, stableIdParts, preprocessed);
573
+ if (element[1].$ref) {
574
+ index++;
575
+ }
576
+ });
577
+ }
578
+ }
579
+ /**
580
+ * Instantiates the export classes for a single object page section
581
+ * @param sectionId - Current section ID
582
+ */
583
+ function getClassesForSingleSection(objectPageConfig, sectionId, factory) {
584
+ if (sectionId === 'custom' && Array.isArray(objectPageConfig.sections[sectionId])) {
585
+ // Custom sections
586
+ const customSections = objectPageConfig.sections
587
+ .custom;
588
+ for (let index = 0; index < customSections.length; index++) {
589
+ customSections[index] = factory.createInstance(ux_specification_types_1.PageType.ObjectPage, 'ObjectPageCustomSectionView', customSections[index], customSections[index].className);
590
+ }
591
+ }
592
+ }
593
+ /**
594
+ * Recursive sub-function for handling subsections
595
+ * @param section - Object page section in config
596
+ */
597
+ function getSubsectionClasses(section, factory) {
598
+ if (section['subsections']) {
599
+ let subSection;
600
+ for (const subSectionId in section['subsections']) {
601
+ subSection = section['subsections'][subSectionId];
602
+ getClassesForSingleSection(subSection, subSectionId, factory);
603
+ getSubsectionClasses(subSection, factory);
604
+ }
605
+ }
606
+ }
607
+ /**
608
+ * Instantiates the export classes for the object page section
609
+ * @param objectPageConfig - the given object page configuration
610
+ * @param objectPage - the overall object page export class where the sections shall be included
611
+ */
612
+ function getExportClassesForSections(objectPageConfig, objectPage, factory) {
613
+ let section;
614
+ for (const sectionId in objectPageConfig.sections) {
615
+ section = objectPage.sections[sectionId];
616
+ getClassesForSingleSection(objectPageConfig, sectionId, factory);
617
+ getSubsectionClasses(section, factory);
618
+ }
619
+ }
620
+ /**
621
+ * Run through the given ObjectPage config and return respective exportResultManifest entry and flex changes
622
+ * @param appId - id of the Fiori elements app, which is usually namespace.appid
623
+ * @param objectPageConfig - content of the src/ObjectPage_<entity_set>.json file
624
+ * @param manifest - manifest of the application
625
+ * @param pageName - routing target defined in manifest
626
+ */
627
+ const exportObjectPage = (exportParameters, ui5Version) => {
628
+ const exportResults = defaultExportResult;
629
+ exportResults.manifest = JSON.parse(JSON.stringify(exportParameters.manifest));
630
+ const factory = new factory_1.MetadataInstanceFactoryV4();
631
+ const objectPage = factory.createPageInstance(ux_specification_types_1.PageType.ObjectPage, exportParameters.page.config);
632
+ const pageLayoutInformation = common_1.getPageLayoutInformation(objectPage);
633
+ const pageName = exportParameters.page.name;
634
+ const baseId = `${exportParameters.appId}::${pageLayoutInformation.id}::${pageName}--`;
635
+ if (exportParameters.page.config?.[common_1.PropertyName.sections]) {
636
+ getExportClassesForSections(exportParameters.page.config, objectPage, factory);
637
+ }
638
+ const transferParameters = {
639
+ exportResults,
640
+ appId: exportParameters.appId,
641
+ appRootPath: exportParameters.appRootPath,
642
+ baseId,
643
+ appSchema: exportParameters.jsonSchema,
644
+ config: objectPage,
645
+ ui5Version,
646
+ factory,
647
+ pageNameArray: [pageName],
648
+ pageType: ux_specification_types_1.PageType.ObjectPage,
649
+ title: undefined,
650
+ templateType: utils_1.TemplateType.ListReportObjectPageV4
651
+ };
652
+ transferManifestEntriesAndFlexChange(transferParameters, objectPage, [], //no parentIds
653
+ [], // no stableIds
654
+ [], // no breadcrumbs
655
+ exportParameters.jsonSchema //starting point for target definition
656
+ );
657
+ return exportResults;
658
+ };
659
+ /**
660
+ * Run through the given List Page (LR or ALP) config and return respective exportResultManifest entry and flex changes
661
+ * @param {ExportListReportV4Parameters} exportParameters - all API parameters needed for the export
662
+ * @param config - content of the config file
663
+ * @param {PageTypeV4} - pageType - Page type
664
+ * @param ui5Version - SAP UI5 version
665
+ */
666
+ const exportListPage = (exportParameters, factory, config, pageType, ui5Version, templateType) => {
667
+ const exportResults = defaultExportResult;
668
+ exportResults.manifest = JSON.parse(JSON.stringify(exportParameters.manifest));
669
+ const appSchema = exportParameters.jsonSchema;
670
+ const definitionName = config.table?.[common_1.PropertyName.annotationPath]
671
+ ? common_1.DefinitionName.ALPTableView
672
+ : common_1.DefinitionName.Table;
673
+ const tableDefinition = (config.table = factory.createInstance(pageType, definitionName, config.table));
674
+ let tableDefinitionName = common_1.DefinitionName.LineItems;
675
+ if (appSchema.definitions[common_1.DefinitionName.TableSPV]) {
676
+ const tableRef = appSchema.definitions[common_1.DefinitionName.TableSPV].properties.columns['$ref'];
677
+ tableDefinitionName = tableRef.split(utils_1.DEFINITION_LINK_PREFIX)[1];
678
+ }
679
+ const appSchemaActions = appSchema.definitions[`${common_1.DefinitionName.Actions}<${tableDefinitionName}>`];
680
+ if (tableDefinition.toolBar?.actions && appSchemaActions) {
681
+ for (const actionKey in appSchemaActions.properties) {
682
+ tableDefinition.toolBar.actions[actionKey] = factory.createInstance(pageType, common_1.DefinitionName.ToolBarAction, tableDefinition.toolBar.actions[actionKey]);
683
+ }
684
+ }
685
+ const pageLayoutInformation = common_1.getPageLayoutInformation(config);
686
+ const pageName = exportParameters.page.name;
687
+ const baseId = `${exportParameters.appId}::${pageLayoutInformation.id}::${pageName}--`;
688
+ if (!exportResults.manifest[ux_specification_types_1.ManifestSection.ui5].routing.targets[pageName]) {
689
+ const newTarget = getNewRoutingTarget(pageLayoutInformation.pageId, pageName);
690
+ exportResults.manifest[ux_specification_types_1.ManifestSection.ui5].routing.targets[pageName] = newTarget;
691
+ }
692
+ const transferParameters = {
693
+ exportResults,
694
+ appId: exportParameters.appId,
695
+ appRootPath: exportParameters.appRootPath,
696
+ baseId,
697
+ appSchema,
698
+ config,
699
+ ui5Version,
700
+ factory,
701
+ pageNameArray: [pageName],
702
+ pageType: ux_specification_types_1.PageType.ListReport,
703
+ title: undefined,
704
+ logger: exportParameters.logger,
705
+ templateType
706
+ };
707
+ transferManifestEntriesAndFlexChange(transferParameters, config, [], //no parentIds
708
+ [], // no stableIds
709
+ [], // no breadcrumbs
710
+ appSchema //starting point for target definition
711
+ );
712
+ return exportResults;
713
+ };
714
+ /**
715
+ * Run through the given ListReport config and return respective exportResultManifest entry and flex changes
716
+ * @param {ExportListReportV4Parameters} exportParameters - all API parameters needed for the export
717
+ * @param ui5Version - SAP UI5 version
718
+ * @returns ExportResults - The export result comprises the enhanced manifest as well as a list of flex changes.
719
+ */
720
+ const exportListReportPage = (exportParameters, ui5Version, templateType) => {
721
+ const factory = new factory_1.MetadataInstanceFactoryV4();
722
+ const listReport = factory.createPageInstance(ux_specification_types_1.PageType.ListReport, exportParameters.page.config);
723
+ return exportListPage(exportParameters, factory, listReport, ux_specification_types_1.PageTypeV4.ListReport, ui5Version, templateType);
724
+ };
725
+ /**
726
+ * Run through the given Analytical List Page config and return respective exportResultManifest entry and flex changes
727
+ * @param {ExportAnalyticalListPageV4Parameters} exportParameters - all API parameters needed for the export
728
+ * @param ui5Version - SAP UI5 version
729
+ * @returns ExportResults - The export result comprises the enhanced manifest as well as a list of flex changes.
730
+ *
731
+ * @returns ExportResults - The export result comprises the enhanced manifest as well as a list of flex changes.
732
+ */
733
+ const exportAnalyticalListPage = (exportParameters, ui5Version) => {
734
+ return exportListReportPage(exportParameters, ui5Version, utils_1.TemplateType.AnalyticalListPageV4);
735
+ };
736
+ /**
737
+ * API for the export of a V4 app configuration
738
+ * Export means the transfer of the properties and values of the given config to manifest entries or flex changes
739
+ * @param application - V4 application (app.json config file)
740
+ * @param manifest - Manifest of the given app
741
+ * @param appSchema - App schema
742
+ *
743
+ * @returns ExportResults = object comprising the updated manifest and a list of flex changes
744
+ */
745
+ const exportApplicationV4 = (application, manifest, appSchema) => {
746
+ const exportResults = defaultExportResult;
747
+ exportResults.manifest = JSON.parse(JSON.stringify(manifest));
748
+ const applicationV4 = Object.assign(new application_1.ApplicationV4(), application);
749
+ //transform application settings
750
+ applicationV4.settings = Object.assign(new application_1.AppSettings(), applicationV4.settings);
751
+ for (const key in appSchema.definitions.AppSettings.properties) {
752
+ const syncRule = common_1.getReflectMetadata(applicationV4.settings, key);
753
+ if (syncRule && syncRule.manifest) {
754
+ const path = syncRule.manifest.path();
755
+ const manifestSection = common_1.getManifestSectionByPathV4(exportResults.manifest, path);
756
+ if (application.settings?.[key] !== undefined) {
757
+ manifestSection[key] = application.settings[key];
758
+ }
759
+ else {
760
+ delete manifestSection[key];
761
+ }
762
+ utils_1.deleteEmptyStructure(exportResults.manifest, path);
763
+ }
764
+ }
765
+ //transform routing
766
+ exportResults.manifest[ux_specification_types_1.ManifestSection.ui5].routing = manifest_1.transformRoutingV4(application['home'], application['pages'], exportResults.manifest);
767
+ // Update FCL data
768
+ flexibleColumnLayout_1.updateFcl(exportResults.manifest[ux_specification_types_1.ManifestSection.ui5], application);
769
+ return exportResults;
770
+ };
771
+ /**
772
+ * General API for the export of a V4 config page
773
+ * Export means the transfer of the properties and values of the given config to manifest entries or flex changes
774
+ * @param appId - Application ID
775
+ * @param page - Current page (config)
776
+ * @param manifest - Manifest of the given app
777
+ * @param jsonSchema - App schema
778
+ *
779
+ * @returns ExportResults = object comprising the updated manifest and a list of flex changes
780
+ */
781
+ const exportPageV4 = (exportParametersV4, ui5Version) => {
782
+ if (exportParametersV4[ux_specification_types_1.SchemaType.ListReport]) {
783
+ return exportListReportPage(exportParametersV4[ux_specification_types_1.SchemaType.ListReport], ui5Version, utils_1.TemplateType.ListReportObjectPageV4);
784
+ }
785
+ else if (exportParametersV4[ux_specification_types_1.SchemaType.ObjectPage]) {
786
+ return exportObjectPage(exportParametersV4[ux_specification_types_1.SchemaType.ObjectPage], ui5Version);
787
+ }
788
+ else if (exportParametersV4[ux_specification_types_1.SchemaType.Application]) {
789
+ const { application, manifest, jsonSchema } = exportParametersV4[ux_specification_types_1.SchemaType.Application];
790
+ return exportApplicationV4(application, manifest, jsonSchema);
791
+ }
792
+ else if (exportParametersV4[ux_specification_types_1.SchemaType.AnalyticalListPage]) {
793
+ return exportAnalyticalListPage(exportParametersV4[ux_specification_types_1.SchemaType.AnalyticalListPage], ui5Version);
794
+ }
795
+ };
796
+ exports.exportPageV4 = exportPageV4;
797
+ //# sourceMappingURL=export.js.map