@sap/ux-specification 1.96.20 → 1.96.24

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 (745) hide show
  1. package/dist/documentation/runDocu-min.js +5 -9623
  2. package/dist/documentation/runDocu-min.js.map +1 -1
  3. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  4. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  5. package/dist/documentation/v2/v2-ListReport.html +1 -1
  6. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  7. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  8. package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
  9. package/dist/documentation/v4/v4-FreestylePage.html +1 -1
  10. package/dist/documentation/v4/v4-ListReport.html +1 -1
  11. package/dist/documentation/v4/v4-ObjectPage.html +1 -1
  12. package/dist/index-min.js +83 -30542
  13. package/dist/index-min.js.map +3 -3
  14. package/dist/schemas/v2/AnalyticalListPageConfig.json +11 -8
  15. package/dist/schemas/v2/ListReportConfig.json +132 -129
  16. package/dist/schemas/v4/ApplicationV4.json +26 -0
  17. package/dist/schemas/v4/ListReportConfig.json +21 -22
  18. package/dist/schemas/v4/ObjectPageConfig.json +1 -2
  19. package/dist/scripts/extractDocu.d.ts +2 -0
  20. package/dist/scripts/extractDocu.d.ts.map +1 -0
  21. package/dist/scripts/extractDocu.js +507 -0
  22. package/dist/scripts/extractDocu.js.map +1 -0
  23. package/dist/scripts/runDocu.d.ts +2 -0
  24. package/dist/scripts/runDocu.d.ts.map +1 -0
  25. package/dist/scripts/runDocu.js +579 -0
  26. package/dist/scripts/runDocu.js.map +1 -0
  27. package/dist/scripts/spec.d.ts +2 -0
  28. package/dist/scripts/spec.d.ts.map +1 -0
  29. package/dist/scripts/spec.js +113 -0
  30. package/dist/scripts/spec.js.map +1 -0
  31. package/dist/scripts/to-json-schema.d.ts +11 -0
  32. package/dist/scripts/to-json-schema.d.ts.map +1 -0
  33. package/dist/scripts/to-json-schema.js +146 -0
  34. package/dist/scripts/to-json-schema.js.map +1 -0
  35. package/dist/{types → src}/api.d.ts +1 -1
  36. package/dist/{types → src}/api.d.ts.map +1 -1
  37. package/dist/src/api.js +191 -0
  38. package/dist/src/api.js.map +1 -0
  39. package/dist/{types → src}/apiTypes.d.ts +17 -21
  40. package/dist/src/apiTypes.d.ts.map +1 -0
  41. package/dist/src/apiTypes.js +25 -0
  42. package/dist/src/apiTypes.js.map +1 -0
  43. package/dist/{types → src}/extensionLogger.d.ts +1 -1
  44. package/dist/{types → src}/extensionLogger.d.ts.map +1 -1
  45. package/dist/src/extensionLogger.js +41 -0
  46. package/dist/src/extensionLogger.js.map +1 -0
  47. package/dist/{types → src}/i18n/i18n.d.ts +0 -0
  48. package/dist/{types → src}/i18n/i18n.d.ts.map +0 -0
  49. package/dist/src/i18n/i18n.js +26 -0
  50. package/dist/src/i18n/i18n.js.map +1 -0
  51. package/dist/{types → src}/index.d.ts +2 -2
  52. package/dist/src/index.d.ts.map +1 -0
  53. package/dist/src/index.js +20 -0
  54. package/dist/src/index.js.map +1 -0
  55. package/dist/{types → src}/project.d.ts +2 -1
  56. package/dist/src/project.d.ts.map +1 -0
  57. package/dist/src/project.js +153 -0
  58. package/dist/src/project.js.map +1 -0
  59. package/dist/{types → src}/specification/schemaAccess.d.ts +3 -13
  60. package/dist/src/specification/schemaAccess.d.ts.map +1 -0
  61. package/dist/src/specification/schemaAccess.js +63 -0
  62. package/dist/src/specification/schemaAccess.js.map +1 -0
  63. package/dist/{types → src}/sync/common/appProvider.d.ts +3 -5
  64. package/dist/src/sync/common/appProvider.d.ts.map +1 -0
  65. package/dist/src/sync/common/appProvider.js +124 -0
  66. package/dist/src/sync/common/appProvider.js.map +1 -0
  67. package/dist/{types → src}/sync/common/decoration/control.d.ts +2 -2
  68. package/dist/src/sync/common/decoration/control.d.ts.map +1 -0
  69. package/dist/src/sync/common/decoration/control.js +219 -0
  70. package/dist/src/sync/common/decoration/control.js.map +1 -0
  71. package/dist/{types → src}/sync/common/decoration/decorators.d.ts +0 -0
  72. package/dist/src/sync/common/decoration/decorators.d.ts.map +1 -0
  73. package/dist/src/sync/common/decoration/decorators.js +52 -0
  74. package/dist/src/sync/common/decoration/decorators.js.map +1 -0
  75. package/dist/{types → src}/sync/common/decoration/factory.d.ts +1 -1
  76. package/dist/{types → src}/sync/common/decoration/factory.d.ts.map +1 -1
  77. package/dist/src/sync/common/decoration/factory.js +49 -0
  78. package/dist/src/sync/common/decoration/factory.js.map +1 -0
  79. package/dist/src/sync/common/decoration/flex.d.ts +4 -0
  80. package/dist/src/sync/common/decoration/flex.d.ts.map +1 -0
  81. package/dist/src/sync/common/decoration/flex.js +9 -0
  82. package/dist/src/sync/common/decoration/flex.js.map +1 -0
  83. package/dist/{types → src}/sync/common/decoration/index.d.ts +0 -0
  84. package/dist/{types → src}/sync/common/decoration/index.d.ts.map +0 -0
  85. package/dist/src/sync/common/decoration/index.js +16 -0
  86. package/dist/src/sync/common/decoration/index.js.map +1 -0
  87. package/dist/{types → src}/sync/common/flexUtils.d.ts +2 -4
  88. package/dist/src/sync/common/flexUtils.d.ts.map +1 -0
  89. package/dist/src/sync/common/flexUtils.js +107 -0
  90. package/dist/src/sync/common/flexUtils.js.map +1 -0
  91. package/dist/{types → src}/sync/common/generate/index.d.ts +0 -0
  92. package/dist/{types → src}/sync/common/generate/index.d.ts.map +0 -0
  93. package/dist/src/sync/common/generate/index.js +15 -0
  94. package/dist/src/sync/common/generate/index.js.map +1 -0
  95. package/dist/{types → src}/sync/common/generate/objectPage.d.ts +1 -2
  96. package/dist/src/sync/common/generate/objectPage.d.ts.map +1 -0
  97. package/dist/src/sync/common/generate/objectPage.js +380 -0
  98. package/dist/src/sync/common/generate/objectPage.js.map +1 -0
  99. package/dist/{types → src}/sync/common/generate/utils.d.ts +2 -1
  100. package/dist/src/sync/common/generate/utils.d.ts.map +1 -0
  101. package/dist/src/sync/common/generate/utils.js +490 -0
  102. package/dist/src/sync/common/generate/utils.js.map +1 -0
  103. package/dist/src/sync/common/i18n.json +23 -0
  104. package/dist/{types → src}/sync/common/import/utils.d.ts +0 -0
  105. package/dist/{types → src}/sync/common/import/utils.d.ts.map +0 -0
  106. package/dist/src/sync/common/import/utils.js +107 -0
  107. package/dist/src/sync/common/import/utils.js.map +1 -0
  108. package/dist/{types → src}/sync/common/importProject.d.ts +0 -0
  109. package/dist/src/sync/common/importProject.d.ts.map +1 -0
  110. package/dist/src/sync/common/importProject.js +336 -0
  111. package/dist/src/sync/common/importProject.js.map +1 -0
  112. package/dist/{types → src}/sync/common/index.d.ts +0 -0
  113. package/dist/{types → src}/sync/common/index.d.ts.map +0 -0
  114. package/dist/src/sync/common/index.js +23 -0
  115. package/dist/src/sync/common/index.js.map +1 -0
  116. package/dist/{types → src}/sync/common/types.d.ts +6 -56
  117. package/dist/src/sync/common/types.d.ts.map +1 -0
  118. package/dist/src/sync/common/types.js +176 -0
  119. package/dist/src/sync/common/types.js.map +1 -0
  120. package/dist/{types → src}/sync/common/utils.d.ts +8 -10
  121. package/dist/src/sync/common/utils.d.ts.map +1 -0
  122. package/dist/src/sync/common/utils.js +1263 -0
  123. package/dist/src/sync/common/utils.js.map +1 -0
  124. package/dist/{types → src}/sync/i18n.d.ts +0 -0
  125. package/dist/{types → src}/sync/i18n.d.ts.map +0 -0
  126. package/dist/src/sync/i18n.js +28 -0
  127. package/dist/src/sync/i18n.js.map +1 -0
  128. package/dist/{types → src}/sync/v2/application.d.ts +7 -7
  129. package/dist/src/sync/v2/application.d.ts.map +1 -0
  130. package/dist/src/sync/v2/application.js +206 -0
  131. package/dist/src/sync/v2/application.js.map +1 -0
  132. package/dist/{types → src}/sync/v2/export/controls/Action.d.ts +4 -4
  133. package/dist/src/sync/v2/export/controls/Action.d.ts.map +1 -0
  134. package/dist/src/sync/v2/export/controls/Action.js +129 -0
  135. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  136. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts +10 -0
  137. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +1 -0
  138. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js +75 -0
  139. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js.map +1 -0
  140. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +10 -0
  141. package/dist/{types → src}/sync/v2/export/controls/AnalyticalListPageKPI.d.ts.map +1 -1
  142. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js +57 -0
  143. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js.map +1 -0
  144. package/dist/{types → src}/sync/v2/export/controls/Card.d.ts +30 -30
  145. package/dist/src/sync/v2/export/controls/Card.d.ts.map +1 -0
  146. package/dist/src/sync/v2/export/controls/Card.js +656 -0
  147. package/dist/src/sync/v2/export/controls/Card.js.map +1 -0
  148. package/dist/src/sync/v2/export/controls/Field.d.ts +5 -0
  149. package/dist/src/sync/v2/export/controls/Field.d.ts.map +1 -0
  150. package/dist/src/sync/v2/export/controls/Field.js +42 -0
  151. package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
  152. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +41 -0
  153. package/dist/src/sync/v2/export/controls/FilterBar.d.ts.map +1 -0
  154. package/dist/src/sync/v2/export/controls/FilterBar.js +289 -0
  155. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -0
  156. package/dist/{types → src}/sync/v2/export/controls/FormAction.d.ts +3 -3
  157. package/dist/src/sync/v2/export/controls/FormAction.d.ts.map +1 -0
  158. package/dist/src/sync/v2/export/controls/FormAction.js +97 -0
  159. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
  160. package/dist/{types → src}/sync/v2/export/controls/Fragment.d.ts +5 -5
  161. package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -0
  162. package/dist/src/sync/v2/export/controls/Fragment.js +580 -0
  163. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -0
  164. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts +8 -0
  165. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts.map +1 -0
  166. package/dist/src/sync/v2/export/controls/ObjectPageChart.js +38 -0
  167. package/dist/src/sync/v2/export/controls/ObjectPageChart.js.map +1 -0
  168. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts +18 -0
  169. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  170. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js +111 -0
  171. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js.map +1 -0
  172. package/dist/{types → src}/sync/v2/export/controls/ObjectPageFooterAction.d.ts +2 -2
  173. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +1 -0
  174. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +63 -0
  175. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  176. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +11 -0
  177. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -0
  178. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js +62 -0
  179. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js.map +1 -0
  180. package/dist/{types → src}/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +2 -2
  181. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -0
  182. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +63 -0
  183. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -0
  184. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts +8 -0
  185. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts.map +1 -0
  186. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js +60 -0
  187. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js.map +1 -0
  188. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +45 -0
  189. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +1 -0
  190. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +200 -0
  191. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
  192. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +52 -0
  193. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -0
  194. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +337 -0
  195. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -0
  196. package/dist/{types → src}/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +2 -2
  197. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
  198. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +62 -0
  199. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  200. package/dist/{types → src}/sync/v2/export/controls/Table.d.ts +24 -24
  201. package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -0
  202. package/dist/src/sync/v2/export/controls/Table.js +709 -0
  203. package/dist/src/sync/v2/export/controls/Table.js.map +1 -0
  204. package/dist/{types → src}/sync/v2/export/controls/TableColumn.d.ts +5 -6
  205. package/dist/src/sync/v2/export/controls/TableColumn.d.ts.map +1 -0
  206. package/dist/src/sync/v2/export/controls/TableColumn.js +173 -0
  207. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -0
  208. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +5 -0
  209. package/dist/src/sync/v2/export/controls/ToolBar.d.ts.map +1 -0
  210. package/dist/src/sync/v2/export/controls/ToolBar.js +7 -0
  211. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  212. package/dist/{types → src}/sync/v2/export/controls/index.d.ts +0 -0
  213. package/dist/{types → src}/sync/v2/export/controls/index.d.ts.map +0 -0
  214. package/dist/src/sync/v2/export/controls/index.js +33 -0
  215. package/dist/src/sync/v2/export/controls/index.js.map +1 -0
  216. package/dist/{types → src}/sync/v2/export/export.d.ts +1 -1
  217. package/dist/{types → src}/sync/v2/export/export.d.ts.map +1 -1
  218. package/dist/src/sync/v2/export/export.js +678 -0
  219. package/dist/src/sync/v2/export/export.js.map +1 -0
  220. package/dist/{types → src}/sync/v2/export/exportPage.d.ts +2 -1
  221. package/dist/src/sync/v2/export/exportPage.d.ts.map +1 -0
  222. package/dist/src/sync/v2/export/exportPage.js +304 -0
  223. package/dist/src/sync/v2/export/exportPage.js.map +1 -0
  224. package/dist/{types → src}/sync/v2/export/factory.d.ts +0 -0
  225. package/dist/{types → src}/sync/v2/export/factory.d.ts.map +1 -1
  226. package/dist/src/sync/v2/export/factory.js +71 -0
  227. package/dist/src/sync/v2/export/factory.js.map +1 -0
  228. package/dist/{types → src}/sync/v2/export/manifest.d.ts +3 -3
  229. package/dist/src/sync/v2/export/manifest.d.ts.map +1 -0
  230. package/dist/src/sync/v2/export/manifest.js +159 -0
  231. package/dist/src/sync/v2/export/manifest.js.map +1 -0
  232. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +13 -0
  233. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts.map +1 -0
  234. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +43 -0
  235. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -0
  236. package/dist/src/sync/v2/export/pages/ListReport.d.ts +11 -0
  237. package/dist/src/sync/v2/export/pages/ListReport.d.ts.map +1 -0
  238. package/dist/src/sync/v2/export/pages/ListReport.js +40 -0
  239. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -0
  240. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts +18 -0
  241. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -0
  242. package/dist/src/sync/v2/export/pages/ObjectPage.js +101 -0
  243. package/dist/src/sync/v2/export/pages/ObjectPage.js.map +1 -0
  244. package/dist/{types → src}/sync/v2/export/pages/OverviewPage.d.ts +7 -7
  245. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts.map +1 -0
  246. package/dist/src/sync/v2/export/pages/OverviewPage.js +214 -0
  247. package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -0
  248. package/dist/{types → src}/sync/v2/export/pages/index.d.ts +0 -0
  249. package/dist/{types → src}/sync/v2/export/pages/index.d.ts.map +0 -0
  250. package/dist/src/sync/v2/export/pages/index.js +17 -0
  251. package/dist/src/sync/v2/export/pages/index.js.map +1 -0
  252. package/dist/{types → src}/sync/v2/export/view-controller-generator.d.ts +4 -4
  253. package/dist/src/sync/v2/export/view-controller-generator.d.ts.map +1 -0
  254. package/dist/src/sync/v2/export/view-controller-generator.js +149 -0
  255. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -0
  256. package/dist/{types → src}/sync/v2/generate/analyticalListReport.d.ts +1 -1
  257. package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -0
  258. package/dist/src/sync/v2/generate/analyticalListReport.js +86 -0
  259. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -0
  260. package/dist/{types → src}/sync/v2/generate/generate.d.ts +1 -1
  261. package/dist/src/sync/v2/generate/generate.d.ts.map +1 -0
  262. package/dist/src/sync/v2/generate/generate.js +100 -0
  263. package/dist/src/sync/v2/generate/generate.js.map +1 -0
  264. package/dist/{types → src}/sync/v2/generate/index.d.ts +0 -0
  265. package/dist/{types → src}/sync/v2/generate/index.d.ts.map +0 -0
  266. package/dist/src/sync/v2/generate/index.js +15 -0
  267. package/dist/src/sync/v2/generate/index.js.map +1 -0
  268. package/dist/{types → src}/sync/v2/generate/listReport.d.ts +2 -2
  269. package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -0
  270. package/dist/src/sync/v2/generate/listReport.js +121 -0
  271. package/dist/src/sync/v2/generate/listReport.js.map +1 -0
  272. package/dist/{types → src}/sync/v2/generate/objectPage.d.ts +1 -1
  273. package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -0
  274. package/dist/src/sync/v2/generate/objectPage.js +547 -0
  275. package/dist/src/sync/v2/generate/objectPage.js.map +1 -0
  276. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts +1 -1
  277. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts.map +1 -1
  278. package/dist/src/sync/v2/generate/overviewPage.js +71 -0
  279. package/dist/src/sync/v2/generate/overviewPage.js.map +1 -0
  280. package/dist/{types → src}/sync/v2/generate/utils.d.ts +3 -4
  281. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -0
  282. package/dist/src/sync/v2/generate/utils.js +540 -0
  283. package/dist/src/sync/v2/generate/utils.js.map +1 -0
  284. package/dist/{types → src}/sync/v2/import/app/appProvider.d.ts +4 -4
  285. package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -0
  286. package/dist/src/sync/v2/import/app/appProvider.js +142 -0
  287. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -0
  288. package/dist/{types → src}/sync/v2/import/app/ovpProvider.d.ts +1 -1
  289. package/dist/src/sync/v2/import/app/ovpProvider.d.ts.map +1 -0
  290. package/dist/src/sync/v2/import/app/ovpProvider.js +33 -0
  291. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -0
  292. package/dist/{types → src}/sync/v2/import/common/index.d.ts +6 -9
  293. package/dist/src/sync/v2/import/common/index.d.ts.map +1 -0
  294. package/dist/src/sync/v2/import/common/index.js +420 -0
  295. package/dist/src/sync/v2/import/common/index.js.map +1 -0
  296. package/dist/{types → src}/sync/v2/import/controls/table.d.ts +2 -2
  297. package/dist/src/sync/v2/import/controls/table.d.ts.map +1 -0
  298. package/dist/src/sync/v2/import/controls/table.js +34 -0
  299. package/dist/src/sync/v2/import/controls/table.js.map +1 -0
  300. package/dist/{types → src}/sync/v2/import/getPageType.d.ts +0 -0
  301. package/dist/{types → src}/sync/v2/import/getPageType.d.ts.map +0 -0
  302. package/dist/src/sync/v2/import/getPageType.js +1 -0
  303. package/dist/src/sync/v2/import/getPageType.js.map +1 -0
  304. package/dist/{types → src}/sync/v2/import/index.d.ts +0 -0
  305. package/dist/{types → src}/sync/v2/import/index.d.ts.map +0 -0
  306. package/dist/src/sync/v2/import/index.js +18 -0
  307. package/dist/src/sync/v2/import/index.js.map +1 -0
  308. package/dist/{types → src}/sync/v2/import/pages/analyticalListPage.d.ts +2 -2
  309. package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts.map +1 -0
  310. package/dist/src/sync/v2/import/pages/analyticalListPage.js +129 -0
  311. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -0
  312. package/dist/{types → src}/sync/v2/import/pages/listReport.d.ts +2 -2
  313. package/dist/src/sync/v2/import/pages/listReport.d.ts.map +1 -0
  314. package/dist/src/sync/v2/import/pages/listReport.js +160 -0
  315. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -0
  316. package/dist/{types → src}/sync/v2/import/pages/objectPage.d.ts +3 -2
  317. package/dist/src/sync/v2/import/pages/objectPage.d.ts.map +1 -0
  318. package/dist/src/sync/v2/import/pages/objectPage.js +746 -0
  319. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -0
  320. package/dist/{types → src}/sync/v2/import/pages/overviewPage.d.ts +2 -3
  321. package/dist/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -0
  322. package/dist/src/sync/v2/import/pages/overviewPage.js +112 -0
  323. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -0
  324. package/dist/{types → src}/sync/v2/import/utils.d.ts +5 -5
  325. package/dist/src/sync/v2/import/utils.d.ts.map +1 -0
  326. package/dist/src/sync/v2/import/utils.js +169 -0
  327. package/dist/src/sync/v2/import/utils.js.map +1 -0
  328. package/dist/{types → src}/sync/v2/types.d.ts +5 -6
  329. package/dist/src/sync/v2/types.d.ts.map +1 -0
  330. package/dist/src/sync/v2/types.js +38 -0
  331. package/dist/src/sync/v2/types.js.map +1 -0
  332. package/dist/{types → src}/sync/v4/application.d.ts +6 -9
  333. package/dist/src/sync/v4/application.d.ts.map +1 -0
  334. package/dist/src/sync/v4/application.js +171 -0
  335. package/dist/src/sync/v4/application.js.map +1 -0
  336. package/dist/src/sync/v4/export/controls/FilterBar.d.ts +6 -0
  337. package/dist/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -0
  338. package/dist/src/sync/v4/export/controls/FilterBar.js +25 -0
  339. package/dist/src/sync/v4/export/controls/FilterBar.js.map +1 -0
  340. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +11 -0
  341. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  342. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +136 -0
  343. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -0
  344. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +9 -0
  345. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -0
  346. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +55 -0
  347. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -0
  348. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +22 -0
  349. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +1 -0
  350. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js +66 -0
  351. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js.map +1 -0
  352. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts +5 -0
  353. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts.map +1 -0
  354. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js +25 -0
  355. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js.map +1 -0
  356. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts +29 -0
  357. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -0
  358. package/dist/src/sync/v4/export/controls/ObjectPageTable.js +234 -0
  359. package/dist/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -0
  360. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +26 -0
  361. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -0
  362. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +161 -0
  363. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -0
  364. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +20 -0
  365. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
  366. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js +114 -0
  367. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -0
  368. package/dist/{types → src}/sync/v4/export/controls/Table.d.ts +49 -35
  369. package/dist/src/sync/v4/export/controls/Table.d.ts.map +1 -0
  370. package/dist/src/sync/v4/export/controls/Table.js +847 -0
  371. package/dist/src/sync/v4/export/controls/Table.js.map +1 -0
  372. package/dist/src/sync/v4/export/controls/TableColumn.d.ts +64 -0
  373. package/dist/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -0
  374. package/dist/src/sync/v4/export/controls/TableColumn.js +311 -0
  375. package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -0
  376. package/dist/src/sync/v4/export/controls/ToolBar.d.ts +9 -0
  377. package/dist/src/sync/v4/export/controls/ToolBar.d.ts.map +1 -0
  378. package/dist/src/sync/v4/export/controls/ToolBar.js +10 -0
  379. package/dist/src/sync/v4/export/controls/ToolBar.js.map +1 -0
  380. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts +38 -0
  381. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -0
  382. package/dist/src/sync/v4/export/controls/ToolBarAction.js +215 -0
  383. package/dist/src/sync/v4/export/controls/ToolBarAction.js.map +1 -0
  384. package/dist/{types → src}/sync/v4/export/controls/index.d.ts +0 -0
  385. package/dist/{types → src}/sync/v4/export/controls/index.d.ts.map +0 -0
  386. package/dist/src/sync/v4/export/controls/index.js +25 -0
  387. package/dist/src/sync/v4/export/controls/index.js.map +1 -0
  388. package/dist/{types → src}/sync/v4/export/export.d.ts +3 -2
  389. package/dist/src/sync/v4/export/export.d.ts.map +1 -0
  390. package/dist/src/sync/v4/export/export.js +854 -0
  391. package/dist/src/sync/v4/export/export.js.map +1 -0
  392. package/dist/{types → src}/sync/v4/export/exportCustomColumn.d.ts +0 -0
  393. package/dist/{types → src}/sync/v4/export/exportCustomColumn.d.ts.map +0 -0
  394. package/dist/src/sync/v4/export/exportCustomColumn.js +59 -0
  395. package/dist/src/sync/v4/export/exportCustomColumn.js.map +1 -0
  396. package/dist/{types → src}/sync/v4/export/factory.d.ts +0 -0
  397. package/dist/{types → src}/sync/v4/export/factory.d.ts.map +0 -0
  398. package/dist/src/sync/v4/export/factory.js +57 -0
  399. package/dist/src/sync/v4/export/factory.js.map +1 -0
  400. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts +9 -0
  401. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts.map +1 -0
  402. package/dist/src/sync/v4/export/flexibleColumnLayout.js +126 -0
  403. package/dist/src/sync/v4/export/flexibleColumnLayout.js.map +1 -0
  404. package/dist/{types → src}/sync/v4/export/manifest.d.ts +2 -2
  405. package/dist/src/sync/v4/export/manifest.d.ts.map +1 -0
  406. package/dist/src/sync/v4/export/manifest.js +280 -0
  407. package/dist/src/sync/v4/export/manifest.js.map +1 -0
  408. package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts +0 -0
  409. package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts.map +0 -0
  410. package/dist/src/sync/v4/export/pages/FreestylePage.js +10 -0
  411. package/dist/src/sync/v4/export/pages/FreestylePage.js.map +1 -0
  412. package/dist/src/sync/v4/export/pages/ListReport.d.ts +14 -0
  413. package/dist/src/sync/v4/export/pages/ListReport.d.ts.map +1 -0
  414. package/dist/src/sync/v4/export/pages/ListReport.js +82 -0
  415. package/dist/src/sync/v4/export/pages/ListReport.js.map +1 -0
  416. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +9 -0
  417. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts.map +1 -0
  418. package/dist/src/sync/v4/export/pages/ObjectPage.js +41 -0
  419. package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -0
  420. package/dist/{types → src}/sync/v4/export/pages/index.d.ts +0 -0
  421. package/dist/{types → src}/sync/v4/export/pages/index.d.ts.map +0 -0
  422. package/dist/src/sync/v4/export/pages/index.js +16 -0
  423. package/dist/src/sync/v4/export/pages/index.js.map +1 -0
  424. package/dist/{types → src}/sync/v4/export/types.d.ts +1 -1
  425. package/dist/{types → src}/sync/v4/export/types.d.ts.map +1 -1
  426. package/dist/src/sync/v4/export/types.js +3 -0
  427. package/dist/src/sync/v4/export/types.js.map +1 -0
  428. package/dist/{types → src}/sync/v4/export/utils.d.ts +2 -2
  429. package/dist/src/sync/v4/export/utils.d.ts.map +1 -0
  430. package/dist/src/sync/v4/export/utils.js +44 -0
  431. package/dist/src/sync/v4/export/utils.js.map +1 -0
  432. package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts +0 -0
  433. package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts.map +0 -0
  434. package/dist/src/sync/v4/generate/freestylePage.js +16 -0
  435. package/dist/src/sync/v4/generate/freestylePage.js.map +1 -0
  436. package/dist/{types → src}/sync/v4/generate/generate.d.ts +1 -1
  437. package/dist/src/sync/v4/generate/generate.d.ts.map +1 -0
  438. package/dist/src/sync/v4/generate/generate.js +82 -0
  439. package/dist/src/sync/v4/generate/generate.js.map +1 -0
  440. package/dist/{types → src}/sync/v4/generate/index.d.ts +0 -0
  441. package/dist/{types → src}/sync/v4/generate/index.d.ts.map +0 -0
  442. package/dist/src/sync/v4/generate/index.js +14 -0
  443. package/dist/src/sync/v4/generate/index.js.map +1 -0
  444. package/dist/{types → src}/sync/v4/generate/listReport.d.ts +0 -0
  445. package/dist/{types → src}/sync/v4/generate/listReport.d.ts.map +1 -1
  446. package/dist/src/sync/v4/generate/listReport.js +712 -0
  447. package/dist/src/sync/v4/generate/listReport.js.map +1 -0
  448. package/dist/{types → src}/sync/v4/generate/objectPage.d.ts +0 -0
  449. package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -0
  450. package/dist/src/sync/v4/generate/objectPage.js +628 -0
  451. package/dist/src/sync/v4/generate/objectPage.js.map +1 -0
  452. package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts +2 -2
  453. package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts.map +1 -1
  454. package/dist/src/sync/v4/import/app/appProvider.js +11 -0
  455. package/dist/src/sync/v4/import/app/appProvider.js.map +1 -0
  456. package/dist/{types → src}/sync/v4/import/app/baseAppProvider.d.ts +9 -9
  457. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -0
  458. package/dist/src/sync/v4/import/app/baseAppProvider.js +358 -0
  459. package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -0
  460. package/dist/{types → src}/sync/v4/import/app/freestyleProvider.d.ts +2 -2
  461. package/dist/src/sync/v4/import/app/freestyleProvider.d.ts.map +1 -0
  462. package/dist/src/sync/v4/import/app/freestyleProvider.js +12 -0
  463. package/dist/src/sync/v4/import/app/freestyleProvider.js.map +1 -0
  464. package/dist/{types → src}/sync/v4/import/app/index.d.ts +0 -0
  465. package/dist/{types → src}/sync/v4/import/app/index.d.ts.map +0 -0
  466. package/dist/src/sync/v4/import/app/index.js +13 -0
  467. package/dist/src/sync/v4/import/app/index.js.map +1 -0
  468. package/dist/{types → src}/sync/v4/import/fragment.d.ts +1 -1
  469. package/dist/src/sync/v4/import/fragment.d.ts.map +1 -0
  470. package/dist/src/sync/v4/import/fragment.js +128 -0
  471. package/dist/src/sync/v4/import/fragment.js.map +1 -0
  472. package/dist/{types → src}/sync/v4/import/index.d.ts +0 -0
  473. package/dist/{types → src}/sync/v4/import/index.d.ts.map +0 -0
  474. package/dist/src/sync/v4/import/index.js +15 -0
  475. package/dist/src/sync/v4/import/index.js.map +1 -0
  476. package/dist/{types → src}/sync/v4/import/pages/listReport.d.ts +4 -4
  477. package/dist/src/sync/v4/import/pages/listReport.d.ts.map +1 -0
  478. package/dist/src/sync/v4/import/pages/listReport.js +287 -0
  479. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -0
  480. package/dist/{types → src}/sync/v4/import/pages/objectPage.d.ts +2 -2
  481. package/dist/src/sync/v4/import/pages/objectPage.d.ts.map +1 -0
  482. package/dist/src/sync/v4/import/pages/objectPage.js +265 -0
  483. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -0
  484. package/dist/{types → src}/sync/v4/import/utils.d.ts +1 -1
  485. package/dist/{types → src}/sync/v4/import/utils.d.ts.map +1 -1
  486. package/dist/src/sync/v4/import/utils.js +35 -0
  487. package/dist/src/sync/v4/import/utils.js.map +1 -0
  488. package/dist/src/sync/v4/sync-rules/controllerExtensions.d.ts +9 -0
  489. package/dist/src/sync/v4/sync-rules/controllerExtensions.d.ts.map +1 -0
  490. package/dist/src/sync/v4/sync-rules/controllerExtensions.js +104 -0
  491. package/dist/src/sync/v4/sync-rules/controllerExtensions.js.map +1 -0
  492. package/dist/{types → src}/sync/v4/types.d.ts +0 -0
  493. package/dist/{types → src}/sync/v4/types.d.ts.map +0 -0
  494. package/dist/src/sync/v4/types.js +3 -0
  495. package/dist/src/sync/v4/types.js.map +1 -0
  496. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts +1 -1
  497. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts.map +1 -1
  498. package/dist/src/sync/v4/utils/StableIdHelper.js +145 -0
  499. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -0
  500. package/dist/{types → src}/sync/v4/utils/utils.d.ts +23 -25
  501. package/dist/src/sync/v4/utils/utils.d.ts.map +1 -0
  502. package/dist/src/sync/v4/utils/utils.js +432 -0
  503. package/dist/src/sync/v4/utils/utils.js.map +1 -0
  504. package/package.json +15 -15
  505. package/CHANGELOG.md +0 -458
  506. package/dist/types/apiTypes.d.ts.map +0 -1
  507. package/dist/types/index.d.ts.map +0 -1
  508. package/dist/types/project.d.ts.map +0 -1
  509. package/dist/types/specification/common/Application.d.ts +0 -37
  510. package/dist/types/specification/common/Application.d.ts.map +0 -1
  511. package/dist/types/specification/common/index.d.ts +0 -6
  512. package/dist/types/specification/common/index.d.ts.map +0 -1
  513. package/dist/types/specification/common/page.d.ts +0 -51
  514. package/dist/types/specification/common/page.d.ts.map +0 -1
  515. package/dist/types/specification/common/types.d.ts +0 -17
  516. package/dist/types/specification/common/types.d.ts.map +0 -1
  517. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts +0 -50
  518. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts.map +0 -1
  519. package/dist/types/specification/common/webapp/manifest/index.d.ts +0 -4
  520. package/dist/types/specification/common/webapp/manifest/index.d.ts.map +0 -1
  521. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts +0 -376
  522. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts.map +0 -1
  523. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts +0 -36
  524. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts.map +0 -1
  525. package/dist/types/specification/schemaAccess.d.ts.map +0 -1
  526. package/dist/types/specification/v2/ApplicationV2.d.ts +0 -47
  527. package/dist/types/specification/v2/ApplicationV2.d.ts.map +0 -1
  528. package/dist/types/specification/v2/controls/Action.d.ts +0 -74
  529. package/dist/types/specification/v2/controls/Action.d.ts.map +0 -1
  530. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts +0 -59
  531. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts.map +0 -1
  532. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts +0 -31
  533. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts.map +0 -1
  534. package/dist/types/specification/v2/controls/Card.d.ts +0 -658
  535. package/dist/types/specification/v2/controls/Card.d.ts.map +0 -1
  536. package/dist/types/specification/v2/controls/Facets.d.ts +0 -18
  537. package/dist/types/specification/v2/controls/Facets.d.ts.map +0 -1
  538. package/dist/types/specification/v2/controls/Field.d.ts +0 -11
  539. package/dist/types/specification/v2/controls/Field.d.ts.map +0 -1
  540. package/dist/types/specification/v2/controls/FilterBar.d.ts +0 -235
  541. package/dist/types/specification/v2/controls/FilterBar.d.ts.map +0 -1
  542. package/dist/types/specification/v2/controls/Footer.d.ts +0 -21
  543. package/dist/types/specification/v2/controls/Footer.d.ts.map +0 -1
  544. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts +0 -17
  545. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts.map +0 -1
  546. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts +0 -16
  547. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts.map +0 -1
  548. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts +0 -33
  549. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts.map +0 -1
  550. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts +0 -23
  551. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts.map +0 -1
  552. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts +0 -121
  553. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts.map +0 -1
  554. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts +0 -187
  555. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts.map +0 -1
  556. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts +0 -16
  557. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts.map +0 -1
  558. package/dist/types/specification/v2/controls/Table.d.ts +0 -483
  559. package/dist/types/specification/v2/controls/Table.d.ts.map +0 -1
  560. package/dist/types/specification/v2/controls/ToolBar.d.ts +0 -9
  561. package/dist/types/specification/v2/controls/ToolBar.d.ts.map +0 -1
  562. package/dist/types/specification/v2/controls/index.d.ts +0 -18
  563. package/dist/types/specification/v2/controls/index.d.ts.map +0 -1
  564. package/dist/types/specification/v2/index.d.ts +0 -6
  565. package/dist/types/specification/v2/index.d.ts.map +0 -1
  566. package/dist/types/specification/v2/page.d.ts +0 -8
  567. package/dist/types/specification/v2/page.d.ts.map +0 -1
  568. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts +0 -22
  569. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts.map +0 -1
  570. package/dist/types/specification/v2/pages/ListReportConfig.d.ts +0 -13
  571. package/dist/types/specification/v2/pages/ListReportConfig.d.ts.map +0 -1
  572. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts +0 -34
  573. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts.map +0 -1
  574. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts +0 -132
  575. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts.map +0 -1
  576. package/dist/types/specification/v2/pages/index.d.ts +0 -5
  577. package/dist/types/specification/v2/pages/index.d.ts.map +0 -1
  578. package/dist/types/specification/v2/webapp/index.d.ts +0 -2
  579. package/dist/types/specification/v2/webapp/index.d.ts.map +0 -1
  580. package/dist/types/specification/v2/webapp/manifest/index.d.ts +0 -3
  581. package/dist/types/specification/v2/webapp/manifest/index.d.ts.map +0 -1
  582. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts +0 -11
  583. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts.map +0 -1
  584. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts +0 -99
  585. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts.map +0 -1
  586. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts +0 -32
  587. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts.map +0 -1
  588. package/dist/types/specification/v4/ApplicationV4.d.ts +0 -36
  589. package/dist/types/specification/v4/ApplicationV4.d.ts.map +0 -1
  590. package/dist/types/specification/v4/controls/FilterBar.d.ts +0 -19
  591. package/dist/types/specification/v4/controls/FilterBar.d.ts.map +0 -1
  592. package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts +0 -12
  593. package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts.map +0 -1
  594. package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts +0 -30
  595. package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts.map +0 -1
  596. package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts +0 -47
  597. package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts.map +0 -1
  598. package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts +0 -15
  599. package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts.map +0 -1
  600. package/dist/types/specification/v4/controls/ObjectPageSection.d.ts +0 -99
  601. package/dist/types/specification/v4/controls/ObjectPageSection.d.ts.map +0 -1
  602. package/dist/types/specification/v4/controls/ObjectPageTable.d.ts +0 -107
  603. package/dist/types/specification/v4/controls/ObjectPageTable.d.ts.map +0 -1
  604. package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts +0 -38
  605. package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts.map +0 -1
  606. package/dist/types/specification/v4/controls/Table.d.ts +0 -352
  607. package/dist/types/specification/v4/controls/Table.d.ts.map +0 -1
  608. package/dist/types/specification/v4/controls/ToolBar.d.ts +0 -111
  609. package/dist/types/specification/v4/controls/ToolBar.d.ts.map +0 -1
  610. package/dist/types/specification/v4/controls/index.d.ts +0 -11
  611. package/dist/types/specification/v4/controls/index.d.ts.map +0 -1
  612. package/dist/types/specification/v4/index.d.ts +0 -6
  613. package/dist/types/specification/v4/index.d.ts.map +0 -1
  614. package/dist/types/specification/v4/page.d.ts +0 -21
  615. package/dist/types/specification/v4/page.d.ts.map +0 -1
  616. package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts +0 -3
  617. package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts.map +0 -1
  618. package/dist/types/specification/v4/pages/ListReportConfig.d.ts +0 -37
  619. package/dist/types/specification/v4/pages/ListReportConfig.d.ts.map +0 -1
  620. package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts +0 -19
  621. package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts.map +0 -1
  622. package/dist/types/specification/v4/pages/index.d.ts +0 -4
  623. package/dist/types/specification/v4/pages/index.d.ts.map +0 -1
  624. package/dist/types/specification/v4/webapp/index.d.ts +0 -2
  625. package/dist/types/specification/v4/webapp/index.d.ts.map +0 -1
  626. package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts +0 -225
  627. package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts.map +0 -1
  628. package/dist/types/specification/v4/webapp/manifest/index.d.ts +0 -5
  629. package/dist/types/specification/v4/webapp/manifest/index.d.ts.map +0 -1
  630. package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts +0 -110
  631. package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts.map +0 -1
  632. package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts +0 -84
  633. package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts.map +0 -1
  634. package/dist/types/sync/common/appProvider.d.ts.map +0 -1
  635. package/dist/types/sync/common/decoration/control.d.ts.map +0 -1
  636. package/dist/types/sync/common/decoration/decorators.d.ts.map +0 -1
  637. package/dist/types/sync/common/decoration/flex.d.ts +0 -7
  638. package/dist/types/sync/common/decoration/flex.d.ts.map +0 -1
  639. package/dist/types/sync/common/flexUtils.d.ts.map +0 -1
  640. package/dist/types/sync/common/generate/objectPage.d.ts.map +0 -1
  641. package/dist/types/sync/common/generate/utils.d.ts.map +0 -1
  642. package/dist/types/sync/common/importProject.d.ts.map +0 -1
  643. package/dist/types/sync/common/types.d.ts.map +0 -1
  644. package/dist/types/sync/common/utils.d.ts.map +0 -1
  645. package/dist/types/sync/v2/application.d.ts.map +0 -1
  646. package/dist/types/sync/v2/export/controls/Action.d.ts.map +0 -1
  647. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts +0 -10
  648. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +0 -1
  649. package/dist/types/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +0 -10
  650. package/dist/types/sync/v2/export/controls/Card.d.ts.map +0 -1
  651. package/dist/types/sync/v2/export/controls/Field.d.ts +0 -5
  652. package/dist/types/sync/v2/export/controls/Field.d.ts.map +0 -1
  653. package/dist/types/sync/v2/export/controls/FilterBar.d.ts +0 -42
  654. package/dist/types/sync/v2/export/controls/FilterBar.d.ts.map +0 -1
  655. package/dist/types/sync/v2/export/controls/FormAction.d.ts.map +0 -1
  656. package/dist/types/sync/v2/export/controls/Fragment.d.ts.map +0 -1
  657. package/dist/types/sync/v2/export/controls/ObjectPageChart.d.ts +0 -8
  658. package/dist/types/sync/v2/export/controls/ObjectPageChart.d.ts.map +0 -1
  659. package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts +0 -20
  660. package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
  661. package/dist/types/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +0 -1
  662. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts +0 -11
  663. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts.map +0 -1
  664. package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +0 -1
  665. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts +0 -8
  666. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts.map +0 -1
  667. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +0 -45
  668. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +0 -1
  669. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts +0 -53
  670. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts.map +0 -1
  671. package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
  672. package/dist/types/sync/v2/export/controls/Table.d.ts.map +0 -1
  673. package/dist/types/sync/v2/export/controls/TableColumn.d.ts.map +0 -1
  674. package/dist/types/sync/v2/export/controls/ToolBar.d.ts +0 -5
  675. package/dist/types/sync/v2/export/controls/ToolBar.d.ts.map +0 -1
  676. package/dist/types/sync/v2/export/exportPage.d.ts.map +0 -1
  677. package/dist/types/sync/v2/export/manifest.d.ts.map +0 -1
  678. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts +0 -15
  679. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts.map +0 -1
  680. package/dist/types/sync/v2/export/pages/ListReport.d.ts +0 -11
  681. package/dist/types/sync/v2/export/pages/ListReport.d.ts.map +0 -1
  682. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts +0 -19
  683. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts.map +0 -1
  684. package/dist/types/sync/v2/export/pages/OverviewPage.d.ts.map +0 -1
  685. package/dist/types/sync/v2/export/view-controller-generator.d.ts.map +0 -1
  686. package/dist/types/sync/v2/generate/analyticalListReport.d.ts.map +0 -1
  687. package/dist/types/sync/v2/generate/generate.d.ts.map +0 -1
  688. package/dist/types/sync/v2/generate/listReport.d.ts.map +0 -1
  689. package/dist/types/sync/v2/generate/objectPage.d.ts.map +0 -1
  690. package/dist/types/sync/v2/generate/utils.d.ts.map +0 -1
  691. package/dist/types/sync/v2/import/app/appProvider.d.ts.map +0 -1
  692. package/dist/types/sync/v2/import/app/ovpProvider.d.ts.map +0 -1
  693. package/dist/types/sync/v2/import/common/index.d.ts.map +0 -1
  694. package/dist/types/sync/v2/import/controls/table.d.ts.map +0 -1
  695. package/dist/types/sync/v2/import/pages/analyticalListPage.d.ts.map +0 -1
  696. package/dist/types/sync/v2/import/pages/listReport.d.ts.map +0 -1
  697. package/dist/types/sync/v2/import/pages/objectPage.d.ts.map +0 -1
  698. package/dist/types/sync/v2/import/pages/overviewPage.d.ts.map +0 -1
  699. package/dist/types/sync/v2/import/utils.d.ts.map +0 -1
  700. package/dist/types/sync/v2/types.d.ts.map +0 -1
  701. package/dist/types/sync/v4/application.d.ts.map +0 -1
  702. package/dist/types/sync/v4/export/controls/FilterBar.d.ts +0 -5
  703. package/dist/types/sync/v4/export/controls/FilterBar.d.ts.map +0 -1
  704. package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts +0 -13
  705. package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
  706. package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts +0 -9
  707. package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts.map +0 -1
  708. package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +0 -22
  709. package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +0 -1
  710. package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts +0 -5
  711. package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts.map +0 -1
  712. package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts +0 -29
  713. package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts.map +0 -1
  714. package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts +0 -26
  715. package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +0 -1
  716. package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +0 -20
  717. package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
  718. package/dist/types/sync/v4/export/controls/Table.d.ts.map +0 -1
  719. package/dist/types/sync/v4/export/controls/TableColumn.d.ts +0 -64
  720. package/dist/types/sync/v4/export/controls/TableColumn.d.ts.map +0 -1
  721. package/dist/types/sync/v4/export/controls/ToolBar.d.ts +0 -9
  722. package/dist/types/sync/v4/export/controls/ToolBar.d.ts.map +0 -1
  723. package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts +0 -38
  724. package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts.map +0 -1
  725. package/dist/types/sync/v4/export/export.d.ts.map +0 -1
  726. package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts +0 -8
  727. package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts.map +0 -1
  728. package/dist/types/sync/v4/export/manifest.d.ts.map +0 -1
  729. package/dist/types/sync/v4/export/pages/ListReport.d.ts +0 -14
  730. package/dist/types/sync/v4/export/pages/ListReport.d.ts.map +0 -1
  731. package/dist/types/sync/v4/export/pages/ObjectPage.d.ts +0 -9
  732. package/dist/types/sync/v4/export/pages/ObjectPage.d.ts.map +0 -1
  733. package/dist/types/sync/v4/export/utils.d.ts.map +0 -1
  734. package/dist/types/sync/v4/generate/generate.d.ts.map +0 -1
  735. package/dist/types/sync/v4/generate/objectPage.d.ts.map +0 -1
  736. package/dist/types/sync/v4/import/app/baseAppProvider.d.ts.map +0 -1
  737. package/dist/types/sync/v4/import/app/freestyleProvider.d.ts.map +0 -1
  738. package/dist/types/sync/v4/import/fragment.d.ts.map +0 -1
  739. package/dist/types/sync/v4/import/pages/listReport.d.ts.map +0 -1
  740. package/dist/types/sync/v4/import/pages/objectPage.d.ts.map +0 -1
  741. package/dist/types/sync/v4/utils/utils.d.ts.map +0 -1
  742. package/dist/types/v2.d.ts +0 -3
  743. package/dist/types/v2.d.ts.map +0 -1
  744. package/dist/types/v4.d.ts +0 -3
  745. package/dist/types/v4.d.ts.map +0 -1
@@ -0,0 +1,678 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.transferManifestEntriesAndFlexChange = exports.assignReflectMetadataRules = exports.transferManifestEntriesOVP = void 0;
7
+ // Note: the main functions or entry points reside in ./exportPage.ts
8
+ const deepmerge_1 = __importDefault(require("deepmerge"));
9
+ const controls_1 = require("./controls");
10
+ const common_1 = require("../../common");
11
+ const application_1 = require("../application");
12
+ const manifest_1 = require("./manifest");
13
+ const utils_1 = require("../import/utils");
14
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
15
+ /**
16
+ * Create missing card from the manifest
17
+ * @param key - card name
18
+ * @param ovp - OVP section of manifest, to be updated
19
+ */
20
+ function createCard(key, ovp) {
21
+ if (!ovp.cards) {
22
+ ovp.cards = {};
23
+ }
24
+ if (!(key in ovp.cards)) {
25
+ ovp.cards[key] = {};
26
+ }
27
+ }
28
+ /**
29
+ * Recursive function that searches for next avaialble id by increasing number by 1.
30
+ * @param {boolean} sectionIds All ids in use.
31
+ * @param {string} candidateId Candidate id to check if it is available.
32
+ * @return {string} Id string.
33
+ */
34
+ function findAvailableId(sectionIds, candidateId) {
35
+ if (sectionIds.includes(candidateId)) {
36
+ const idParts = candidateId.split('|');
37
+ if (idParts.length === 3) {
38
+ idParts.push('1');
39
+ }
40
+ else {
41
+ idParts[3] = (parseInt(idParts[3]) + 1).toString();
42
+ }
43
+ return findAvailableId(sectionIds, idParts.join('|'));
44
+ }
45
+ return candidateId;
46
+ }
47
+ /**
48
+ * Private recursive function that traverses the content of the current object. It reads decorators and fills manifest entries and flex changes
49
+ * @param configObject - current object to traverse
50
+ * @param exportResults - object with all collected manifest entries and flex changes
51
+ * @param jsonSchema - application specific schema
52
+ * @param targetDefinition - the current entry point or definition in the app schema
53
+ * @param {MetadataInstanceInterface} factory - factory for creating metadata instances
54
+ * @param pathHierarchy - elements of the path indicating the hierarchical level
55
+ */
56
+ function transferManifestEntriesOVP(configObject, exportResults, jsonSchema, targetDefinition, factory, pathHierarchy) {
57
+ if (targetDefinition) {
58
+ if (targetDefinition['properties']) {
59
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
60
+ processProperties(configObject, exportResults, jsonSchema, targetDefinition['properties'], factory, pathHierarchy);
61
+ }
62
+ else if (targetDefinition['additionalProperties']) {
63
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
64
+ processProperties(configObject, exportResults, jsonSchema, targetDefinition['additionalProperties'], factory, pathHierarchy);
65
+ }
66
+ }
67
+ }
68
+ exports.transferManifestEntriesOVP = transferManifestEntriesOVP;
69
+ /**
70
+ * Assign sync rules to {currentObject}
71
+ * @param {string} structureName - name of the complex structure in schema
72
+ * @param {object} currentObject - the given part of the configuration
73
+ * @param {string} defaultTypeName - name of the default type that shall be taken if no class is registered for structureName
74
+ */
75
+ function assignReflectMetadataRules(factory, structureName, currentObject, defaultTypeName) {
76
+ return factory.createInstance(ux_specification_types_1.PageType.OverviewPage, defaultTypeName, currentObject, structureName);
77
+ }
78
+ exports.assignReflectMetadataRules = assignReflectMetadataRules;
79
+ function processAnyOfDefinitionsOfOVP(params) {
80
+ params.pathHierarchy.pop();
81
+ let newConfigObject = params.currentObject;
82
+ for (const anyOfKey in params.propertyList['anyOf']) {
83
+ if (params.propertyList['anyOf'][anyOfKey].$ref) {
84
+ const definitionArray = params.propertyList['anyOf'][anyOfKey].$ref.split(common_1.DEFINITION_LINK_PREFIX);
85
+ const nextTargetDefinition = params.appSchema['definitions'][definitionArray[definitionArray.length - 1]];
86
+ const cardSettingsType = params.pathHierarchy[1];
87
+ params.currentObject = params.configObject[cardSettingsType];
88
+ newConfigObject = assignReflectMetadataRules(params.factory, cardSettingsType, params.currentObject, 'CustomCard');
89
+ transferManifestEntriesOVP(newConfigObject, params.exportResults, params.appSchema, nextTargetDefinition, params.factory, [...params.pathHierarchy]);
90
+ }
91
+ else if (typeof params.propertyList['anyOf'][anyOfKey] === 'object') {
92
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
93
+ processProperties(params.configObject, params.exportResults, params.appSchema, params.propertyList['anyOf'][anyOfKey].properties, params.factory, [...params.pathHierarchy, 'anyOfObject']);
94
+ }
95
+ }
96
+ return newConfigObject;
97
+ }
98
+ function checkSyncRuleForExport(exportHandler, manifestSection, configObject, key, currentObject, exceptionList) {
99
+ if (exportHandler && typeof exportHandler === 'function') {
100
+ exportHandler(manifestSection, configObject, key);
101
+ }
102
+ else if (typeof currentObject === 'object' && !exceptionList.includes(key)) {
103
+ // colorPalette is an exception as it can contain anything as per our schema, so just replace the object
104
+ manifestSection[key] = deepmerge_1.default(manifestSection[key] || {}, currentObject || {}, {
105
+ arrayMerge: common_1.arrayCombineMerge
106
+ });
107
+ }
108
+ else {
109
+ manifestSection[key] = currentObject;
110
+ }
111
+ }
112
+ /**
113
+ * Transfer manifest settings from config to manifest
114
+ * @param syncRule - metadata rule used for import and export
115
+ * @param pathHierarchy - elements of the path indicating the hierarchical level
116
+ * @param key
117
+ * @param exportResults - overall result list, to be updated
118
+ * @param currentObject
119
+ * @param configObject
120
+ */
121
+ function transferToManifest(syncRule, pathHierarchy, key, exportResults, currentObject, configObject) {
122
+ const exceptionList = ['colorPalette', 'tabs'];
123
+ const path = syncRule.manifest.path([...pathHierarchy, key]);
124
+ const manifestSection = manifest_1.ensureManifestSectionByPathV2(exportResults.manifest, path);
125
+ if (key in ux_specification_types_1.v2.CardSettingsType || key === 'settings') {
126
+ manifestSection['settings'] = deepmerge_1.default(manifestSection['settings'] || {}, currentObject || {}, {
127
+ arrayMerge: common_1.arrayCombineMerge
128
+ });
129
+ }
130
+ else if (currentObject !== undefined) {
131
+ const exportHandler = syncRule.manifest.export;
132
+ if (exportHandler !== false) {
133
+ checkSyncRuleForExport(exportHandler, manifestSection, configObject, key, currentObject, exceptionList);
134
+ }
135
+ }
136
+ else if (manifestSection[key] !== undefined) {
137
+ delete manifestSection[key];
138
+ }
139
+ }
140
+ function transferCards(currentObject, appSchema, factory, exportResults) {
141
+ Object.keys(currentObject).forEach((cardKey) => {
142
+ const cardType = currentObject[cardKey].template;
143
+ //Determine target defintion
144
+ let targetDefinition;
145
+ if (!Object.values(ux_specification_types_1.v2.CardTemplateType).includes(cardType)) {
146
+ targetDefinition = ['CustomCard'];
147
+ }
148
+ else {
149
+ targetDefinition = Object.keys(appSchema.definitions).filter((definition) => appSchema.definitions[definition].properties?.template?.enum?.indexOf(currentObject[cardKey].template) > -1);
150
+ }
151
+ //Get metadata
152
+ currentObject[cardKey] = assignReflectMetadataRules(factory, targetDefinition[0], currentObject[cardKey], 'CustomCard');
153
+ createCard(cardKey, exportResults['manifest'][ux_specification_types_1.ManifestSection.ovp]);
154
+ transferManifestEntriesOVP(currentObject[cardKey], exportResults, appSchema, appSchema.definitions[targetDefinition[0]], factory, [cardKey]);
155
+ });
156
+ //check for deletions:
157
+ Object.keys(exportResults.manifest[ux_specification_types_1.ManifestSection.ovp].cards).forEach((manifestCard) => {
158
+ if (!currentObject[manifestCard]) {
159
+ delete exportResults.manifest[ux_specification_types_1.ManifestSection.ovp].cards[manifestCard];
160
+ }
161
+ });
162
+ }
163
+ function exportOfObject(params, key, factory) {
164
+ if (key === 'cards') {
165
+ //inserts and updates:
166
+ transferCards(params.currentObject, params.appSchema, factory, params.exportResults);
167
+ }
168
+ else if (params.propertyList[key].$ref) {
169
+ const definitionArray = params.propertyList[key].$ref.split(common_1.DEFINITION_LINK_PREFIX);
170
+ const nextTargetDefinition = params.appSchema.definitions[definitionArray[definitionArray.length - 1]];
171
+ params.currentObject = assignReflectMetadataRules(params.factory, key, params.currentObject, key === 'settings' ? 'CustomCard' : '');
172
+ transferManifestEntriesOVP(params.currentObject, params.exportResults, params.appSchema, nextTargetDefinition, factory, [...params.pathHierarchy, key]);
173
+ }
174
+ else if (params.propertyList[key].anyOf) {
175
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
176
+ processProperties(params.configObject, params.exportResults, params.appSchema, params.propertyList[key], factory, [...params.pathHierarchy, key, 'anyOf']);
177
+ }
178
+ else if (params.propertyList[key]['properties'] !== undefined) {
179
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
180
+ processProperties(params.configObject, params.exportResults, params.appSchema, params.propertyList[key].properties, params.factory, [...params.pathHierarchy, key, 'objectProperties']);
181
+ }
182
+ }
183
+ /**
184
+ * Recursive function that transfers the content of a list of properties of a configuration to the overall exportResults
185
+ * @param configObject - the given part of the configuration
186
+ * @param exportResults - overall result list, to be updated
187
+ * @param appSchema - app-specific JSON schema
188
+ * @param propertyList - current property list of the config (properties or additional properties)
189
+ * @param {MetadataInstanceInterface} factory - factory for creating metadata instances
190
+ * @param pathHierarchy - elements of the path indicating the hierarchical level
191
+ */
192
+ function processProperties(configObject, exportResults, appSchema, propertyList, factory, pathHierarchy) {
193
+ let isAnyOfObject = false;
194
+ let isObjectProperty = false;
195
+ for (const key in propertyList) {
196
+ let currentObject = configObject[key];
197
+ let syncRule = common_1.getReflectMetadata(configObject, key);
198
+ if (pathHierarchy[pathHierarchy.length - 1] === 'anyOfObject') {
199
+ isAnyOfObject = true;
200
+ pathHierarchy.pop();
201
+ }
202
+ if (isAnyOfObject) {
203
+ currentObject = configObject[pathHierarchy[pathHierarchy.length - 1]][key];
204
+ syncRule = common_1.getReflectMetadata(configObject, pathHierarchy[pathHierarchy.length - 1]);
205
+ }
206
+ if (pathHierarchy[pathHierarchy.length - 1] === 'objectProperties') {
207
+ isObjectProperty = true;
208
+ pathHierarchy.pop();
209
+ }
210
+ if (isObjectProperty) {
211
+ currentObject = configObject[pathHierarchy[pathHierarchy.length - 1]][key];
212
+ syncRule = common_1.getReflectMetadata(configObject, pathHierarchy[pathHierarchy.length - 1]);
213
+ }
214
+ const processDefinitionParams = {
215
+ pathHierarchy,
216
+ propertyList,
217
+ appSchema,
218
+ currentObject,
219
+ configObject,
220
+ factory,
221
+ exportResults
222
+ };
223
+ if (pathHierarchy[pathHierarchy.length - 1] === 'anyOf') {
224
+ currentObject = processAnyOfDefinitionsOfOVP(processDefinitionParams);
225
+ }
226
+ if (syncRule?.manifest) {
227
+ transferToManifest(syncRule, pathHierarchy, key, exportResults, currentObject, configObject);
228
+ }
229
+ if (currentObject && typeof currentObject === 'object' && propertyList[key]) {
230
+ exportOfObject(processDefinitionParams, key, factory);
231
+ }
232
+ }
233
+ }
234
+ /**
235
+ * Evaluates an export rule for a property, transfers to flex change
236
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
237
+ * @param breadcrumbs - list of breadcrumbs, i.e. ID parts for building the stable ID
238
+ * @param syncRule - export rule from the object classes decorator
239
+ * @param configObject - current (sub)object of the configuration file
240
+ * @param ids - list of parent & child ids
241
+ * @param title - title from the app schema (comprising for instance the facet ID)
242
+ * @param key - key of the given property
243
+ */
244
+ function evaluateFlexRule(transferParameters, breadcrumbs, syncRule, ids, title, configObject, key) {
245
+ let localBreadcrumbs;
246
+ if (breadcrumbs.length === 0) {
247
+ //only added on top = page level, do not forward
248
+ localBreadcrumbs = ['page'];
249
+ }
250
+ else {
251
+ localBreadcrumbs = breadcrumbs;
252
+ }
253
+ const controlId = syncRule.flex.controlId(transferParameters.baseId, ids, localBreadcrumbs, syncRule.flex.controlType, title);
254
+ const flexChange = common_1.fillFlexChangeContent(configObject, syncRule, transferParameters.ui5Version, key, controlId);
255
+ const localManifest = JSON.parse(JSON.stringify(transferParameters.exportResults.manifest));
256
+ localManifest['sap.app'].id = transferParameters.appId;
257
+ const completeFlexChange = syncRule.flex.createFlexChange(flexChange, localManifest);
258
+ const flexChangeExists = transferParameters.exportResults.flexChanges.find((change) => {
259
+ let result = false, oldChange = JSON.parse(change);
260
+ oldChange = {
261
+ content: oldChange['content'],
262
+ selector: oldChange['selector']
263
+ };
264
+ let newChange = JSON.parse(completeFlexChange);
265
+ newChange = {
266
+ content: newChange['content'],
267
+ selector: newChange['selector']
268
+ };
269
+ if (JSON.stringify(oldChange) === JSON.stringify(newChange)) {
270
+ result = true;
271
+ }
272
+ return result;
273
+ });
274
+ if (!flexChangeExists) {
275
+ transferParameters.exportResults.flexChanges.push(completeFlexChange);
276
+ }
277
+ }
278
+ /**
279
+ * Exports a given config property value to manifest
280
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
281
+ * @param syncRule - export rule from the object classes decorator
282
+ * @param manifestSection - current section in manifest.json
283
+ * @param configObject - current (sub)object of the configuration file
284
+ * @param key - key of the given property in the config
285
+ * @param manifestKey - key of the given property in manifest
286
+ */
287
+ function exportConfigValue(transferParameters, syncRule, manifestSection, configObject, key, manifestKey) {
288
+ if (
289
+ // In case of arrays we take over complete array
290
+ !(transferParameters.propertyDefinition['type'] !== 'array' &&
291
+ transferParameters.nextDefinition &&
292
+ transferParameters.nextDefinition['targetDefinition'].type === 'object' &&
293
+ transferParameters.nextDefinition['targetDefinition'].properties)) {
294
+ const exportHandler = syncRule.manifest.export;
295
+ if (exportHandler && typeof exportHandler === 'function') {
296
+ exportHandler(manifestSection, configObject, key, manifestKey);
297
+ }
298
+ else if (exportHandler !== false) {
299
+ manifestSection[manifestKey] = configObject[key];
300
+ }
301
+ }
302
+ else if (transferParameters.propertyDefinition['type'] !== 'array' &&
303
+ manifestSection[manifestKey] === undefined) {
304
+ manifestSection[manifestKey] = {};
305
+ }
306
+ }
307
+ /**
308
+ * Evaluates an export rule for a property, transfers to manifest setting
309
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
310
+ * @param syncRule - export rule from the object classes decorator
311
+ * @param configObject - current (sub)object of the configuration file
312
+ * @param ids - list of parent & child ids
313
+ * @param title - title from the app schema (comprising for instance the facet ID)
314
+ * @param key - key of the given property
315
+ */
316
+ function evaluateManifestRule(transferParameters, path, syncRule, key, configObject) {
317
+ const manifestSection = manifest_1.ensureManifestSectionByPathV2(transferParameters.exportResults.manifest, path);
318
+ const manifestKey = syncRule.manifest.key || key;
319
+ if (configObject[key] !== undefined) {
320
+ exportConfigValue(transferParameters, syncRule, manifestSection, configObject, key, manifestKey);
321
+ }
322
+ else {
323
+ //delete value
324
+ const deleteHandler = syncRule.manifest.delete;
325
+ if (deleteHandler && typeof deleteHandler === 'function') {
326
+ deleteHandler(manifestSection, configObject, key, manifestKey);
327
+ }
328
+ else if (Object.prototype.hasOwnProperty.call(manifestSection, manifestKey)) {
329
+ delete manifestSection[manifestKey];
330
+ }
331
+ }
332
+ common_1.deleteEmptyStructure(transferParameters.exportResults.manifest, path);
333
+ }
334
+ function getManifestPathOfSections(breadcrumbs, path, syncRule, transferParameters, title) {
335
+ if (breadcrumbs[1] === 'custom') {
336
+ path = syncRule.manifest.path(transferParameters.pageKeys, {}, breadcrumbs[2]);
337
+ }
338
+ else {
339
+ path = syncRule.manifest.path(transferParameters.pageKeys, {}, title?.startsWith(common_1.FacetTitlePrefix) ? title.split(common_1.FacetTitlePrefix)[1] : breadcrumbs[1], breadcrumbs[breadcrumbs.length - 1]);
340
+ path = path.replace('/@', '::').replace(/VOCWITHCOLONS/g, '::com.sap.vocabularies');
341
+ }
342
+ return path;
343
+ }
344
+ function getManifestPathOfTable(breadcrumbs, path, syncRule, transferParameters, configObject) {
345
+ if (breadcrumbs[1] === 'columns' && breadcrumbs[2] === 'custom') {
346
+ path = syncRule.manifest.path(transferParameters.pageKeys, transferParameters.exportResults.manifest, configObject['tabKey']);
347
+ }
348
+ else {
349
+ path = syncRule.manifest.path(transferParameters.pageKeys, {}, breadcrumbs[breadcrumbs.length - 1]);
350
+ }
351
+ return path;
352
+ }
353
+ /**
354
+ * Determines the path to a manifest setting, based on the syncRule
355
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
356
+ * @param breadcrumbs - list of breadcrumbs, i.e. ID parts for building the stable ID
357
+ * @param {SyncRule} syncRule - export rule from the object classes decorator
358
+ * @param configObject - current (sub)object of the configuration file
359
+ * @param title - title from the app schema (comprising for instance the facet ID)
360
+ * @returns the path to the manifest setting
361
+ */
362
+ function getManifestPath(transferParameters, breadcrumbs, syncRule, configObject, title) {
363
+ let path;
364
+ if (breadcrumbs[0] === common_1.PropertyName.sections) {
365
+ path = getManifestPathOfSections(breadcrumbs, path, syncRule, transferParameters, title);
366
+ }
367
+ else if (breadcrumbs[0] === common_1.PropertyName.table) {
368
+ path = getManifestPathOfTable(breadcrumbs, path, syncRule, transferParameters, configObject);
369
+ }
370
+ else if (breadcrumbs[0] === 'keyPerformanceIndicators') {
371
+ path = syncRule.manifest.path(transferParameters.pageKeys, transferParameters.exportResults.manifest, title);
372
+ }
373
+ else if (breadcrumbs[0] === 'filterBar' && breadcrumbs[1] === 'selectionFields') {
374
+ path = syncRule.manifest.path(transferParameters.pageKeys, transferParameters.exportResults.manifest, breadcrumbs.slice(2).join('/'));
375
+ }
376
+ else {
377
+ path = syncRule.manifest.path(transferParameters.pageKeys);
378
+ }
379
+ return path;
380
+ }
381
+ /**
382
+ * Evaluates an export rule for a property or object, transfers to flex change or manifest setting
383
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
384
+ * @param {SyncRule} syncRule - export rule from the object classes decorator
385
+ * @param configObject - current (sub)object of the configuration file
386
+ * @param breadcrumbs - list of breadcrumbs, i.e. ID parts for building the stable ID
387
+ * @param ids - list of parent & child ids
388
+ * @param title - title from the app schema (comprising for instance the facet ID)
389
+ * @param key - key of the given property
390
+ */
391
+ function evaluateExportRule(transferParameters, syncRule, configObject, breadcrumbs, ids, title, key) {
392
+ if (!syncRule) {
393
+ return;
394
+ }
395
+ //eliminate subsections' hierarchy
396
+ let index = breadcrumbs.indexOf('subsections');
397
+ while (index > -1) {
398
+ breadcrumbs.splice(index - 1, 2);
399
+ index = breadcrumbs.indexOf('subsections');
400
+ }
401
+ if (syncRule.flex) {
402
+ evaluateFlexRule(transferParameters, breadcrumbs, syncRule, ids, title, configObject, key);
403
+ }
404
+ else if (syncRule.manifest) {
405
+ const path = getManifestPath(transferParameters, breadcrumbs, syncRule, configObject, title);
406
+ evaluateManifestRule(transferParameters, path, syncRule, key, configObject);
407
+ }
408
+ }
409
+ /**
410
+ * Deletes an obsolete custom column from manifest
411
+ */
412
+ function deleteObsoleteColumn(key, columnParams, manifestSection) {
413
+ const keyParts = key.split('|');
414
+ const keyEntitySet = keyParts[1];
415
+ const keyTab = keyParts[2];
416
+ if (keyEntitySet === columnParams.entitySet) {
417
+ //relevant extension. still present in config?
418
+ const existingConfigEntries = columnParams.config?.filter((column) => (column.tabKey === keyTab ||
419
+ (keyTab === undefined && column.tabKey === '') ||
420
+ (keyTab && columnParams.sectionKey === keyTab)) &&
421
+ column.extensionType === columnParams.extensionType);
422
+ if (!existingConfigEntries || existingConfigEntries.length === 0) {
423
+ controls_1.deleteColumnFromFragment(manifestSection, key, columnParams.appId, columnParams.exportResults.fragments);
424
+ // delete from manifest
425
+ delete manifestSection[key];
426
+ // delete cells entry
427
+ if (key.startsWith(common_1.ViewTemplateType.ResponsiveTableColumnsExtension)) {
428
+ const cellsPattern = key.replace(common_1.ViewTemplateType.ResponsiveTableColumnsExtension, common_1.ViewTemplateType.ResponsiveTableCellsExtension);
429
+ controls_1.deleteColumnFromFragment(manifestSection, cellsPattern, columnParams.appId, columnParams.exportResults.fragments);
430
+ // delete from manifest
431
+ delete manifestSection[cellsPattern];
432
+ }
433
+ }
434
+ }
435
+ }
436
+ /**
437
+ * Walks through the extensions registered in manifest and compares the columns of the fragment with the ones present in config.
438
+ * If not present anymore, the extension column gets deleted from fragment.
439
+ * @param path - path to extesnions section in manifest
440
+ * @param exportResults - result structure, including the fragments that may get updated
441
+ * @param entitySet - current entity set
442
+ * @param config - current config JSON
443
+ * @param sectionKey - section key
444
+ * @param extensionType - extensionType
445
+ * @param appId - application ID
446
+ */
447
+ function deleteObsoleteColumnsFromFragment(columnParams) {
448
+ const folderPath = columnParams.path.substring(0, columnParams.path.lastIndexOf('/'));
449
+ const manifestSection = manifest_1.getManifestSectionByPathV2(columnParams.exportResults.manifest, folderPath);
450
+ const extensionPattern = columnParams.path.substring(columnParams.path.lastIndexOf('/') + 1);
451
+ for (const key in manifestSection) {
452
+ if (key.startsWith(extensionPattern)) {
453
+ deleteObsoleteColumn(key, columnParams, manifestSection);
454
+ }
455
+ }
456
+ }
457
+ /**
458
+ * Clusters the custom columns if a config by the extension's path in manifest
459
+ * @param customColumnsInConfig - list of all custom columns in config
460
+ * @param schemaDefinition - schema definition of the table custom column
461
+ * @param v2Page - current page in manifest
462
+ * @param entitySet - current entity set
463
+ * @param sectionKey key of the section (in case of OP)
464
+ * @returns the custom columns, clustered by the manifest path
465
+ */
466
+ function clusterConfigColumnsByPath(customColumnsInConfig, schemaDefinition, v2Page, entitySet, sectionKey) {
467
+ const cluster = {};
468
+ for (const customColumn of customColumnsInConfig) {
469
+ //verify that mandatory parameters are filled
470
+ if (!customColumn['className'] ||
471
+ !customColumn['fragmentName'] ||
472
+ !customColumn['columnKey'] ||
473
+ !customColumn['extensionType']) {
474
+ continue;
475
+ }
476
+ //check fragment name
477
+ if (schemaDefinition['properties']['fragmentName']['pattern']) {
478
+ const namePattern = new RegExp(schemaDefinition['properties']['fragmentName']['pattern']);
479
+ if (namePattern.test(customColumn['fragmentName']) === false) {
480
+ continue;
481
+ }
482
+ }
483
+ const { path, viewTemplateType } = controls_1.getCustomColumnPath(v2Page, entitySet, customColumn.tabKey || sectionKey, customColumn['extensionType']);
484
+ if (!cluster[path]) {
485
+ cluster[path] = {
486
+ viewTemplateType: viewTemplateType,
487
+ columns: []
488
+ };
489
+ }
490
+ cluster[path].columns.push(customColumn);
491
+ }
492
+ return cluster;
493
+ }
494
+ /**
495
+ * Transfers column extensions to manifest and fragment files
496
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
497
+ * @param {TableCustomColumns} customColumnsInConfig - config part comprising the table custom columns
498
+ * @param {object} schemaDefinition - Column schema definition
499
+ * @param {ObjectPageSectionData} [objectPageSectionData] - Object Page section's data containing target and key options.
500
+ */
501
+ function transferColumnExtensions(transferParameters, customColumnsInConfig, schemaDefinition, objectPageSectionData) {
502
+ const sectionKey = objectPageSectionData ? objectPageSectionData.key : undefined;
503
+ const sectionTarget = objectPageSectionData ? objectPageSectionData.target : undefined;
504
+ const entitySet = sectionTarget || transferParameters.v2Page.entitySet;
505
+ for (const extensionType in ux_specification_types_1.v2.TableColumnExtensionTypeV2) {
506
+ const { path } = controls_1.getCustomColumnPath(transferParameters.v2Page, entitySet, sectionKey, extensionType);
507
+ if (!path) {
508
+ continue;
509
+ }
510
+ const columParams = {
511
+ path,
512
+ exportResults: transferParameters.exportResults,
513
+ entitySet,
514
+ config: customColumnsInConfig,
515
+ sectionKey,
516
+ extensionType,
517
+ appId: transferParameters.appId
518
+ };
519
+ deleteObsoleteColumnsFromFragment(columParams);
520
+ }
521
+ if (customColumnsInConfig) {
522
+ //cluster existing custom columns by manifest path (or tab key)
523
+ const cluster = clusterConfigColumnsByPath(customColumnsInConfig, schemaDefinition, transferParameters.v2Page, entitySet, sectionKey);
524
+ //Export to fragment
525
+ for (const path in cluster) {
526
+ controls_1.exportCustomColumnsToFragment(transferParameters.exportResults, path, cluster[path].columns, transferParameters.appId, cluster[path].viewTemplateType, transferParameters.logger);
527
+ }
528
+ }
529
+ }
530
+ /**
531
+ * Recursive function that traverses the content of the current object. It reads decorators and fills manifest entries and flex changes
532
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
533
+ * @param configSections - sections from configuration object
534
+ * @param pageKey - page key
535
+ * @param parentIds - array of collected parent ids
536
+ * @param breadcrumbs - array of properties that we are currently processing. Required for instance for table column name
537
+ * @param targetDefinition - the current entry point or definition in the app schema
538
+ */
539
+ function transferManifestExtensions(transferParameters, configSections, pageKey, parentIds, breadcrumbs, targetDefinition) {
540
+ const sectionIds = [];
541
+ const entity = pageKey.split('|')[1];
542
+ if (!configSections) {
543
+ return;
544
+ }
545
+ for (const section of configSections) {
546
+ const id = findAvailableId(sectionIds, [section.relativePosition, entity, section.relatedFacet].join('|'));
547
+ sectionIds.push(id);
548
+ }
549
+ for (let index = 0; index < sectionIds.length; index++) {
550
+ const definition = targetDefinition['anyOf'].find((element) => element.$ref.includes(configSections[index].constructor.name));
551
+ const definitionArray = definition.$ref.split(common_1.DEFINITION_LINK_PREFIX);
552
+ const nextTargetDefinition = transferParameters.appSchema['definitions'][definitionArray[definitionArray.length - 1]];
553
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
554
+ transferManifestEntriesAndFlexChange(transferParameters, configSections[index], parentIds, [...breadcrumbs, sectionIds[index]], nextTargetDefinition);
555
+ }
556
+ // Delete removed manifest entries
557
+ const manifestSections = manifest_1.ensureManifestSectionByPathV2(transferParameters.exportResults.manifest, application_1.getViewExtensionsPath());
558
+ for (const key in manifestSections) {
559
+ if (utils_1.isAssociatedCustomSection(key, entity) && !sectionIds.includes(key)) {
560
+ delete manifestSections[key];
561
+ }
562
+ }
563
+ }
564
+ /**
565
+ * Method returns converted section id by resolving passed section id and title from schema.
566
+ * @param {string[]} breadcrumbs Array of properties that we are currently processing. Required for instance for table column name.
567
+ * @param {string} title Title from JSON schema, comprising the facet ID
568
+ * @returns {string | undefined} Resolved section id.
569
+ */
570
+ function getSectionId(breadcrumbs, title) {
571
+ let sectionId = undefined;
572
+ for (let i = breadcrumbs.length - 1; i >= 0; i--) {
573
+ if (breadcrumbs[i] === common_1.PropertyName.table) {
574
+ sectionId = breadcrumbs[i - 1];
575
+ break;
576
+ }
577
+ }
578
+ return common_1.convertSectionId(sectionId, title);
579
+ }
580
+ /**
581
+ * Processes index tables in schema
582
+ */
583
+ function transferIndexTable(currentConfigObject, transferParameters, title, key, ids, breadcrumbs) {
584
+ const propertyDefinition = transferParameters.propertyDefinition;
585
+ if (!currentConfigObject || !propertyDefinition?.additionalProperties) {
586
+ return;
587
+ }
588
+ Object.keys(currentConfigObject).forEach((newKey) => {
589
+ const nextDefinition = common_1.getNextTargetDefinition(transferParameters.appSchema, title, currentConfigObject[newKey], propertyDefinition.additionalProperties, key, transferParameters.factory, transferParameters.pageType);
590
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
591
+ transferManifestEntriesAndFlexChange(transferParameters, nextDefinition.configObject, ids, [...breadcrumbs, key], nextDefinition.targetDefinition, newKey);
592
+ });
593
+ }
594
+ /**
595
+ * Transfers custom columns of schema
596
+ */
597
+ function transferCustomColumns(propertyDefinition, breadcrumbs, title, transferParameters, configObject, nextDefinition) {
598
+ let objectPageSectionData;
599
+ const target = common_1.getTargetFromCustomColumnRef(propertyDefinition.$ref);
600
+ if (target) {
601
+ objectPageSectionData = {
602
+ target,
603
+ key: getSectionId(breadcrumbs, title)
604
+ };
605
+ }
606
+ transferColumnExtensions(transferParameters, configObject?.custom, nextDefinition.targetDefinition, objectPageSectionData);
607
+ }
608
+ /**
609
+ * Processes anyOf definitions of schema
610
+ */
611
+ function handleAnyOfDefinitions(propertyDefinition, transferParameters, title, currentConfigObject, key, ids, breadcrumbs) {
612
+ propertyDefinition['anyOf'].forEach((element) => {
613
+ const nextDefinition = common_1.getNextTargetDefinition(transferParameters.appSchema, title, currentConfigObject, element, key, transferParameters.factory, transferParameters.pageType);
614
+ if (nextDefinition) {
615
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
616
+ transferManifestEntriesAndFlexChange(transferParameters, nextDefinition.configObject, ids, [...breadcrumbs, key], nextDefinition.targetDefinition, nextDefinition.title);
617
+ }
618
+ });
619
+ }
620
+ /**
621
+ * Processes complex definitions of schema
622
+ */
623
+ function transferComplexProperty(transferParameters, breadcrumbs, configObject, ids, propertyKey, nextDefinition, title) {
624
+ const propertyDefinition = transferParameters.propertyDefinition;
625
+ if (propertyDefinition?.type === 'array' &&
626
+ (breadcrumbs[0] === 'sections' || breadcrumbs[0] === 'subsections') &&
627
+ propertyKey === 'custom') {
628
+ transferManifestExtensions(transferParameters, configObject[propertyKey], transferParameters.pageKeys[transferParameters.pageKeys.length - 1], ids, [...breadcrumbs, propertyKey], propertyDefinition?.items);
629
+ }
630
+ else if (nextDefinition && propertyKey === 'custom') {
631
+ transferCustomColumns(propertyDefinition, breadcrumbs, title, transferParameters, configObject, nextDefinition);
632
+ return;
633
+ }
634
+ else if (nextDefinition) {
635
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
636
+ transferManifestEntriesAndFlexChange(transferParameters, nextDefinition.configObject, ids, [...breadcrumbs, propertyKey], nextDefinition.targetDefinition, nextDefinition.title);
637
+ }
638
+ else if (propertyDefinition['anyOf']) {
639
+ handleAnyOfDefinitions(propertyDefinition, transferParameters, title, configObject?.[propertyKey], propertyKey, ids, breadcrumbs);
640
+ }
641
+ }
642
+ /**
643
+ * Function that traverses the content of the current object. It reads decorators and fills manifest entries and flex changes
644
+ * @param {TransferParameterTypeV2} transferParameters - list of input parameters for the recursive function call
645
+ * @param configObject - current (sub)object of the configuration file
646
+ * @param parentIds - array of collected parent ids
647
+ * @param breadcrumbs - array of properties that we are currently processing. Required for instance for table column name
648
+ * @param schemaDefinition - the current entry point or definition in the app schema
649
+ * @param title - title from the app schema (comprising for instance the facet ID)
650
+ */
651
+ function transferManifestEntriesAndFlexChange(transferParameters, configObject, parentIds, breadcrumbs, schemaDefinition, title) {
652
+ let currentConfigObject;
653
+ if (!schemaDefinition?.properties) {
654
+ return;
655
+ }
656
+ for (const propertyKey in schemaDefinition.properties) {
657
+ currentConfigObject = configObject?.[propertyKey];
658
+ const childId = configObject && common_1.getChildId(configObject, propertyKey);
659
+ const ids = childId ? [...parentIds, childId] : parentIds;
660
+ const syncRule = common_1.getReflectMetadata(configObject, propertyKey);
661
+ const propertyDefinition = (transferParameters.propertyDefinition = schemaDefinition.properties[propertyKey]);
662
+ const nextDefinition = (transferParameters.nextDefinition = common_1.getNextTargetDefinition(transferParameters.appSchema, title, currentConfigObject, propertyDefinition, propertyKey, transferParameters.factory, transferParameters.pageType));
663
+ //Evaluate sync rule for the export
664
+ evaluateExportRule(transferParameters, syncRule, configObject, [...breadcrumbs], ids, title, propertyKey);
665
+ //index table
666
+ transferIndexTable(currentConfigObject, transferParameters, title, propertyKey, ids, breadcrumbs);
667
+ if (currentConfigObject === undefined || typeof currentConfigObject === 'object') {
668
+ transferComplexProperty(transferParameters, breadcrumbs, configObject, ids, propertyKey, nextDefinition, title);
669
+ }
670
+ else if (propertyDefinition?.$ref === common_1.DEFINITION_LINK_PREFIX + 'TableCustomColumns') {
671
+ //empty config ==> delete all given extensions
672
+ transferColumnExtensions(transferParameters, [], transferParameters.appSchema['definitions']['TableCustomColumn']);
673
+ continue;
674
+ }
675
+ }
676
+ }
677
+ exports.transferManifestEntriesAndFlexChange = transferManifestEntriesAndFlexChange;
678
+ //# sourceMappingURL=export.js.map