@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,651 @@
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.generateListReportSchemaV4 = void 0;
7
+ const utils_1 = require("../utils/utils");
8
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
9
+ const i18next_1 = __importDefault(require("i18next"));
10
+ const extensionLogger_1 = require("../../../extensionLogger");
11
+ const common_1 = require("../../common");
12
+ /**
13
+ * Adds the selection fields to the app schema, as properties of the FilterBar
14
+ * @param entityType - the entity type as part of the AVT ConvertedMetadata
15
+ * @param appSchema - the app specific schema that shall get enhanced
16
+ * @param selectionFieldsAnnotation - the UI.SelectionField annotation
17
+ */
18
+ function addSelectionFields(entityType, appSchema, selectionFieldsAnnotation) {
19
+ const selectionFieldsDefinition = appSchema['definitions'].SelectionFields;
20
+ selectionFieldsDefinition.additionalProperties = false;
21
+ selectionFieldsDefinition.properties = {};
22
+ if (!entityType) {
23
+ return;
24
+ }
25
+ selectionFieldsDefinition[common_1.SchemaTag.annotationPath] = common_1.createAnnotationPath(entityType.fullyQualifiedName, "com.sap.vocabularies.UI.v1.SelectionFields" /* SelectionFields */);
26
+ if (!selectionFieldsAnnotation) {
27
+ return;
28
+ }
29
+ let i = 0;
30
+ selectionFieldsAnnotation.forEach((selectionField) => {
31
+ let description = selectionField.value;
32
+ const fieldDefinition = 'SelectionField::' + common_1.prepareRef(selectionField.value);
33
+ if (selectionField.type === 'PropertyPath') {
34
+ description = common_1.getLabelForPropertyPath(selectionField, entityType);
35
+ }
36
+ selectionFieldsDefinition['properties'][fieldDefinition] = {
37
+ $ref: common_1.DEFINITION_LINK_PREFIX + fieldDefinition
38
+ };
39
+ selectionFieldsDefinition['properties'][fieldDefinition][common_1.SchemaTag.propertyIndex] = i;
40
+ const dataType = common_1.determineDataType(selectionField);
41
+ appSchema['definitions'][fieldDefinition] = {
42
+ type: 'object',
43
+ properties: {},
44
+ description,
45
+ annotationPath: `${selectionFieldsDefinition[common_1.SchemaTag.annotationPath]}/${i}`,
46
+ isViewNode: true,
47
+ additionalProperties: false,
48
+ annotationType: selectionField?.type,
49
+ ...(dataType && { dataType })
50
+ };
51
+ i++;
52
+ });
53
+ }
54
+ /**
55
+ * Convert alias prefix of visualization if different from @UI (e.g. SAP__UI)
56
+ * @param visualization visualization of an (Selection)PresentationVariant
57
+ * @param alias - the given alias or namespace of the OData annotations
58
+ * @returns the converted visualization
59
+ */
60
+ function convertVisualization(visualization, alias) {
61
+ if (visualization && !visualization.startsWith(`@${alias}`)) {
62
+ return visualization.replace(visualization.split('.')[0], '@UI');
63
+ }
64
+ else {
65
+ return visualization;
66
+ }
67
+ }
68
+ function defineActions(appSchema, schemaIdForActions, annotations, targetAnnotation, entityType) {
69
+ appSchema.definitions[schemaIdForActions] = JSON.parse(JSON.stringify(appSchema.definitions['Actions']));
70
+ const actions = appSchema.definitions[schemaIdForActions];
71
+ actions.properties = {};
72
+ actions.additionalProperties = false;
73
+ const chartAnnotation = annotations[targetAnnotation?.split(`${common_1.UIVOCABULARY}.`)[1]];
74
+ if (chartAnnotation && chartAnnotation.Actions) {
75
+ let i = 0;
76
+ chartAnnotation.Actions.forEach((actionRecord) => {
77
+ const actionDefinition = common_1.prepareRef(`${common_1.DefinitionName.ChartToolBarAction}<${actionRecord.Action}>`);
78
+ const description = common_1.getDataFieldDescription(actionRecord, entityType);
79
+ const prefix = actionRecord.$Type.split(`${common_1.UIVOCABULARY}.`)[1];
80
+ const action = (actions.properties[`${prefix}::${actionRecord.Action}`] = {
81
+ $ref: common_1.DEFINITION_LINK_PREFIX + actionDefinition,
82
+ description
83
+ });
84
+ //Add tags
85
+ action[common_1.SchemaTag.propertyIndex] = i;
86
+ action[common_1.SchemaTag.annotationType] = actionRecord.$Type;
87
+ action[common_1.SchemaTag.annotationPath] = `/${actionRecord.fullyQualifiedName}`;
88
+ //as ChartToolBarAction is an empty object, copy ViewToolBarAction and remove properties
89
+ appSchema.definitions[actionDefinition] = JSON.parse(JSON.stringify(appSchema.definitions[common_1.DefinitionName.ViewToolBarAction]));
90
+ appSchema.definitions[actionDefinition].properties = {};
91
+ appSchema.definitions[actionDefinition][common_1.SchemaTag.annotationPath] = actionRecord.fullyQualifiedName;
92
+ i++;
93
+ });
94
+ }
95
+ }
96
+ /**
97
+ * Finds the right visualization for a given view
98
+ * @param allVisualizations - list of visualizations for the given (S)PV
99
+ * @param alias - alias definition for the relevant namespace
100
+ * @param namespace - namespace for the UI annotations
101
+ * @param viewKey - view key: primary, secondary, or anything else; may also be undefined. The first visualization is taken in this case.
102
+ * @param visualizationType - allows to find the right visualization if there are many.
103
+ * @returns the value of the first fitting visualization
104
+ */
105
+ function findTheRightVisualization(allVisualizations, alias, namespace, viewKey, visualizationType) {
106
+ let visualization, visualizationObject, targetAnnotation;
107
+ if (allVisualizations) {
108
+ if (viewKey === 'primary') {
109
+ visualizationObject = allVisualizations.find((vis) => {
110
+ return vis['value'].indexOf('Chart') > -1;
111
+ });
112
+ }
113
+ else if (viewKey === 'secondary') {
114
+ visualizationObject = allVisualizations.find((vis) => {
115
+ return vis['value'].indexOf(common_1.FacetBase.LineItem) > -1;
116
+ });
117
+ }
118
+ else {
119
+ if (visualizationType) {
120
+ visualizationObject = allVisualizations.find((v) => v['value'].indexOf(visualizationType) > -1);
121
+ }
122
+ else {
123
+ visualizationObject = allVisualizations[0];
124
+ }
125
+ }
126
+ visualization = convertVisualization(visualizationObject?.['value'], alias);
127
+ if (visualizationObject?.['$target']?.fullyQualifiedName) {
128
+ targetAnnotation = `/${namespace}/${visualizationObject['$target'].fullyQualifiedName.split(namespace)[1]}`;
129
+ }
130
+ else if (visualization) {
131
+ targetAnnotation = `/${namespace}/` + visualization.replace(`UI`, common_1.UIVOCABULARY);
132
+ }
133
+ }
134
+ return { visualization, targetAnnotation };
135
+ }
136
+ /**
137
+ * An annotationPath must be analyzed, to find the right target annotation and visualization
138
+ *
139
+ */
140
+ function analyzeChartAnnotation(namespace, annotationPath, annotationAVT, viewKey) {
141
+ const visualization = '@UI.Chart';
142
+ const targetAnnotationFullName = `/${namespace}/@${annotationPath}`;
143
+ let chartTitle;
144
+ if (annotationAVT['Title']) {
145
+ chartTitle = annotationAVT['Title'];
146
+ }
147
+ else {
148
+ chartTitle = `Chart View (${viewKey})`;
149
+ }
150
+ return { visualization, targetAnnotation: targetAnnotationFullName, chartTitle };
151
+ }
152
+ /**
153
+ * An annotationPath must be analyzed, to find the right target annotation and visualization
154
+ * @param annotationPath - given annotationPath
155
+ * @param uIAnnotations - annotations of UI namespace of the given entityType
156
+ * @param generateParameters - parameters required to generate app schema
157
+ * @param viewKey - allows to distinguish the different view types (LR or ALP)
158
+ * @param visualizationType - allows to find the right visualization if there are many.
159
+ * @returns { visualization: string describing the visualization of the annotation,
160
+ * targetAnnotation: the target annotation behind the visualization
161
+ * namespace: namespace of the annotation,
162
+ * title: title to be shown, derived from the annotation }
163
+ */
164
+ function analyzeViewAnnotation(annotationPath, uIAnnotations, generateParameters, viewKey, visualizationType) {
165
+ let namespace = undefined, title;
166
+ const UILINEITEM = '@UI.LineItem';
167
+ const annotationInManifest = annotationPath?.split(`${common_1.UIVOCABULARY}.`)[1];
168
+ const annotationAVT = annotationInManifest && uIAnnotations[annotationInManifest];
169
+ if (!annotationAVT) {
170
+ return { visualization: undefined, targetAnnotation: undefined, namespace, title: `View (${viewKey})` };
171
+ }
172
+ title = annotationAVT.Text;
173
+ namespace = annotationAVT.fullyQualifiedName.split('@com.sap.vocabularies.UI.v1.')[0];
174
+ const alias = common_1.findAlias(common_1.UIVOCABULARY, generateParameters.serviceAVT);
175
+ if (annotationInManifest.startsWith('PresentationVariant')) {
176
+ const { visualization, targetAnnotation } = findTheRightVisualization(annotationAVT.Visualizations, alias, namespace, viewKey, visualizationType);
177
+ title = title || `View (${viewKey})`;
178
+ return { visualization, targetAnnotation, namespace, title };
179
+ }
180
+ else if (annotationInManifest.startsWith('SelectionPresentationVariant')) {
181
+ let { visualization, targetAnnotation } = findTheRightVisualization(annotationAVT.PresentationVariant.Visualizations, alias, namespace, viewKey, visualizationType);
182
+ if (!visualization) {
183
+ visualization = UILINEITEM; // default visualization
184
+ targetAnnotation = `/${namespace}/` + visualization.replace(`UI`, common_1.UIVOCABULARY); // default targetAnnotation
185
+ }
186
+ title = title || `View (${viewKey})`;
187
+ return { visualization, targetAnnotation, namespace, title };
188
+ }
189
+ else if (annotationInManifest.startsWith('SelectionVariant')) {
190
+ const visualization = UILINEITEM;
191
+ const targetAnnotation = `/${namespace}/@com.sap.vocabularies.UI.v1.LineItem`;
192
+ title = title || `Table View (${viewKey})`;
193
+ return { visualization, targetAnnotation, namespace, title };
194
+ }
195
+ else if (annotationInManifest.startsWith('LineItem')) {
196
+ const visualization = UILINEITEM;
197
+ const targetAnnotation = `/${namespace}/@${annotationPath}`;
198
+ title = title || `Table View (${viewKey})`;
199
+ return { visualization, targetAnnotation, namespace, title };
200
+ }
201
+ else if (annotationInManifest.startsWith('Chart')) {
202
+ const { visualization, targetAnnotation, chartTitle } = analyzeChartAnnotation(namespace, annotationPath, annotationAVT, viewKey);
203
+ return { visualization, targetAnnotation, namespace, title: chartTitle };
204
+ }
205
+ return { visualization: undefined, targetAnnotation: undefined, namespace, title: `View (${viewKey})` };
206
+ }
207
+ /**
208
+ * Adds the ALP chart view to the app-specific schema
209
+ * @param {Definition} appSchema - app-specific JSON schema
210
+ * @param targetAnnotation - target annotation of the chart view, as determined by analyzeViewAnnotation
211
+ * @param annotations - UI annotations, as determined by AVT
212
+ */
213
+ function addALPChartView(appSchema, chartAnnotationPath, targetAnnotation, annotations) {
214
+ const chartView = appSchema.definitions[common_1.DefinitionName.ALPChartView];
215
+ appSchema.definitions[common_1.DefinitionName.ALPChart] = JSON.parse(JSON.stringify(chartView));
216
+ delete appSchema.definitions[common_1.DefinitionName.ALPChart][common_1.SchemaTag.isViewNode];
217
+ if (targetAnnotation) {
218
+ appSchema.definitions[common_1.DefinitionName.ALPChart][common_1.SchemaTag.annotationPath] = targetAnnotation;
219
+ }
220
+ appSchema.definitions[common_1.DefinitionName.ALPChart].properties.annotationPath[common_1.SchemaTag.hidden] = true;
221
+ chartView.properties.annotationPath[common_1.SchemaTag.hidden] = true;
222
+ chartView.additionalProperties = false;
223
+ chartView.description = `Chart (key: primary)`;
224
+ chartView.title = `Chart`;
225
+ chartView.$ref = `${common_1.DEFINITION_LINK_PREFIX}${common_1.DefinitionName.ALPChart}`;
226
+ if (chartAnnotationPath) {
227
+ const viewAnnotation = chartAnnotationPath.split(common_1.UIVOCABULARYDOT)[1];
228
+ const pathParts = annotations[viewAnnotation].fullyQualifiedName.split('@');
229
+ chartView[common_1.SchemaTag.annotationPath] = `/${pathParts[0]}/@${pathParts[1]}`;
230
+ }
231
+ chartView[common_1.SchemaTag.artifactType] = ux_specification_types_1.ArtifactType.Manifest;
232
+ chartView[common_1.SchemaTag.key] = 'primary';
233
+ }
234
+ /**
235
+ * Adds the ALP views to the app-specific schema
236
+ * @param {Definition} appSchema - app-specific JSON schema
237
+ * @param {Array<Object>} viewsPaths - views' paths' section in the manifest
238
+ * @param {EntityType} entityType - actual entity type of the page's entitySet
239
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
240
+ * @param templateAnnotation - defaultTemplateAnnotationPath as registered in manifest
241
+ */
242
+ function addALPViews(appSchema, viewsPaths, entityType, generateParameters, templateAnnotation, tableDefinitionName) {
243
+ const annotations = entityType.annotations.UI;
244
+ //1. Chart View
245
+ const chartAnnotationPath = viewsPaths?.[0]?.['primary']?.[0]?.[common_1.SchemaTag.annotationPath];
246
+ const { targetAnnotation } = analyzeViewAnnotation(chartAnnotationPath, annotations, generateParameters, 'primary');
247
+ addALPChartView(appSchema, chartAnnotationPath, targetAnnotation, annotations);
248
+ // Copy toolbar
249
+ const schemaIdForActions = `Actions<ALPChart>`;
250
+ appSchema.definitions[common_1.DefinitionName.ViewChartToolBar].properties.actions['$ref'] =
251
+ common_1.DEFINITION_LINK_PREFIX + schemaIdForActions;
252
+ defineActions(appSchema, schemaIdForActions, annotations, targetAnnotation, entityType);
253
+ //2. Table View
254
+ const { visualization: tableVisualization, targetAnnotation: target } = analyzeViewAnnotation(viewsPaths?.[0]?.['secondary']?.[0]?.[common_1.SchemaTag.annotationPath], annotations, generateParameters, 'secondary');
255
+ const tableDefinition = appSchema.definitions[tableDefinitionName];
256
+ if (tableVisualization || templateAnnotation) {
257
+ tableDefinition.properties.toolBar['$ref'] = `${common_1.DEFINITION_LINK_PREFIX}${common_1.DefinitionName.ToolBarLR}`;
258
+ // Switch from generic column to specific definition
259
+ tableDefinition.properties['columns'] = {
260
+ $ref: common_1.DEFINITION_LINK_PREFIX + common_1.DefinitionName.LineItems
261
+ };
262
+ tableDefinition.properties.annotationPath[common_1.SchemaTag.hidden] = true;
263
+ }
264
+ else {
265
+ tableDefinition.properties = {};
266
+ }
267
+ const tableView = appSchema.definitions[common_1.DefinitionName.ALPTableView];
268
+ appSchema.definitions[common_1.DefinitionName.ALPTable] = JSON.parse(JSON.stringify(tableView));
269
+ delete appSchema.definitions[common_1.DefinitionName.ALPTable][common_1.SchemaTag.isViewNode];
270
+ tableView.additionalProperties = false;
271
+ tableView.description = `Table (key: secondary)`;
272
+ tableView.title = `Table`;
273
+ if (tableVisualization) {
274
+ delete tableView.properties;
275
+ tableView.$ref = `${common_1.DEFINITION_LINK_PREFIX}${common_1.DefinitionName.ALPTable}`;
276
+ }
277
+ else if (!templateAnnotation) {
278
+ tableView.properties = {};
279
+ }
280
+ tableView[common_1.SchemaTag.artifactType] = ux_specification_types_1.ArtifactType.Manifest;
281
+ let annotationTerm, viewAnnotation;
282
+ if (tableVisualization && tableVisualization.indexOf(common_1.FacetBase.LineItem) > -1) {
283
+ annotationTerm = tableVisualization.split('.')[1];
284
+ viewAnnotation = viewsPaths[0]['secondary'][0].annotationPath.split(common_1.UIVOCABULARYDOT)[1];
285
+ }
286
+ else if (templateAnnotation) {
287
+ annotationTerm = viewAnnotation = templateAnnotation.split(common_1.UIVOCABULARYDOT)[1];
288
+ }
289
+ if (annotationTerm) {
290
+ const dataForLineItem = {
291
+ appSchema,
292
+ lineItemAnnotation: entityType.annotations.UI[annotationTerm],
293
+ entityType,
294
+ oDataServiceAVT: generateParameters.serviceAVT,
295
+ lineItemId: common_1.DefinitionName.LineItems
296
+ };
297
+ utils_1.addLineItemsTypeToSchema(dataForLineItem, common_1.DefinitionName.ViewTableColumn);
298
+ appSchema.definitions[common_1.DefinitionName.ALPTable][common_1.SchemaTag.annotationPath] = target;
299
+ const pathParts = annotations[viewAnnotation].fullyQualifiedName.split('@');
300
+ tableView[common_1.SchemaTag.annotationPath] = `/${pathParts[0]}/@${pathParts[1]}`;
301
+ tableView[common_1.SchemaTag.key] = 'secondary';
302
+ }
303
+ }
304
+ /**
305
+ * Modifies the app schema, adds the right line chart settings
306
+ * @param inputParameters - list of input parameters as collected by the calling instance
307
+ * @param annotations - UI annotations of the given entityType
308
+ * @returns the ID for the chart view in schema
309
+ */
310
+ function addViewChartDefinitions(inputParameters, annotations) {
311
+ const idForChart = `${common_1.DefinitionName.LRChartView}<${inputParameters.viewKey}>`;
312
+ inputParameters.appSchema.definitions[idForChart] = JSON.parse(JSON.stringify(inputParameters.appSchema.definitions[common_1.DefinitionName.LRChartView]));
313
+ delete inputParameters.appSchema.definitions[idForChart][common_1.SchemaTag.isViewNode];
314
+ inputParameters.appSchema.definitions[idForChart][common_1.SchemaTag.annotationPath] = inputParameters.targetAnnotation;
315
+ if (inputParameters.navPropName) {
316
+ inputParameters.appSchema.definitions[idForChart]['navigationProperty'] = inputParameters.navPropName;
317
+ }
318
+ //Copy toolbar
319
+ const idForToolbar = `${common_1.DefinitionName.ViewChartToolBar}<${inputParameters.viewKey}>`;
320
+ inputParameters.appSchema.definitions[idForToolbar] = JSON.parse(JSON.stringify(inputParameters.appSchema.definitions[common_1.DefinitionName.ViewChartToolBar]));
321
+ inputParameters.appSchema.definitions[idForChart]['properties'].toolBar.$ref = `${common_1.DEFINITION_LINK_PREFIX}${idForToolbar}`;
322
+ //Copy actions
323
+ const schemaIdForActions = `${common_1.DefinitionName.Actions}<${inputParameters.viewKey}>`;
324
+ defineActions(inputParameters.appSchema, schemaIdForActions, annotations, inputParameters.targetAnnotation, inputParameters.targetEntityType);
325
+ inputParameters.appSchema.definitions[idForToolbar]['properties'][common_1.PropertyName.actions]['$ref'] = `${common_1.DEFINITION_LINK_PREFIX}${schemaIdForActions}`;
326
+ return idForChart;
327
+ }
328
+ /**
329
+ * Adds the definition of a chart view to the app schema
330
+ * @param inputParameters - list of input parameters as collected by the calling instance
331
+ * @param UIAnnotations - AVT UI annotations of the given entity type
332
+ * @param appSchema - app schema
333
+ * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
334
+ * @param viewKey - view key
335
+ * @param title - view title
336
+ */
337
+ function addViewChart(inputParameters, UIAnnotations, appSchema, viewsDefinition, viewKey, title) {
338
+ const idForChart = addViewChartDefinitions(inputParameters, UIAnnotations);
339
+ appSchema.definitions[idForChart].properties.annotationPath[common_1.SchemaTag.hidden] = true;
340
+ appSchema.definitions[idForChart].properties.index[common_1.SchemaTag.hidden] = true;
341
+ appSchema.definitions[idForChart].properties.entitySet[common_1.SchemaTag.hidden] = true;
342
+ const titleOnHover = `Chart View (key: ${viewKey})`;
343
+ viewsDefinition.properties[viewKey] = {
344
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${idForChart}`,
345
+ description: title ? title : titleOnHover,
346
+ title: titleOnHover
347
+ };
348
+ }
349
+ /**
350
+ * Modifies the app schema, adds the right line item settings as derived from the visualization
351
+ * @param inputParameters - list of input parameters as collected by the calling instance
352
+ * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
353
+ * @param visualization - visualization from the given (S)PV
354
+ * @param templateAnnotation - defaultTemplateAnnotationPath as registered in manifest
355
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
356
+ */
357
+ function addViewLineItems(inputParameters, viewsDefinition, visualization, templateAnnotation, generateParameters) {
358
+ const tableId = `${common_1.DefinitionName.LRTableView}<${inputParameters.viewKey}>`;
359
+ const viewId = `${common_1.DefinitionName.LineItemsOfView}::${inputParameters.viewKey}`;
360
+ const lrTableView = common_1.parseSchemaDefinition(common_1.DefinitionName.LRTableView, inputParameters.viewKey, inputParameters.appSchema);
361
+ delete lrTableView[common_1.SchemaTag.isViewNode];
362
+ lrTableView[common_1.SchemaTag.annotationPath] = inputParameters.targetAnnotation;
363
+ if (inputParameters.navPropName) {
364
+ lrTableView['navigationProperty'] = inputParameters.navPropName;
365
+ }
366
+ //Copy toolbar
367
+ common_1.addDefinitionRef(lrTableView.properties.toolBar, common_1.DefinitionName.ToolBar, viewId);
368
+ const title = `Table View (key: ${inputParameters.viewKey})`;
369
+ viewsDefinition.properties[inputParameters.viewKey] = {
370
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${tableId}`,
371
+ description: inputParameters.title || title,
372
+ title
373
+ };
374
+ common_1.addDefinitionRef(lrTableView.properties.columns, viewId);
375
+ lrTableView.properties.annotationPath[common_1.SchemaTag.hidden] = true;
376
+ lrTableView.properties.index[common_1.SchemaTag.hidden] = true;
377
+ lrTableView.properties.entitySet[common_1.SchemaTag.hidden] = true;
378
+ const annotationTerm = visualization?.split('.')[1] || templateAnnotation.split(common_1.UIVOCABULARYDOT)[1];
379
+ const dataForLineItem = {
380
+ appSchema: inputParameters.appSchema,
381
+ lineItemAnnotation: inputParameters.targetEntityType.annotations.UI[annotationTerm],
382
+ entityType: inputParameters.targetEntityType,
383
+ oDataServiceAVT: generateParameters.serviceAVT,
384
+ lineItemId: viewId
385
+ };
386
+ utils_1.addLineItemsTypeToSchema(dataForLineItem, common_1.DefinitionName.ViewTableColumn);
387
+ }
388
+ /**
389
+ * Adds the schema tags to a given view
390
+ * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
391
+ * @param viewKey - key property of the view
392
+ * @param namespace - target namespace for annotations
393
+ * @param view - the given view
394
+ */
395
+ function addTagsToView(viewsDefinition, viewKey, namespace, view) {
396
+ viewsDefinition.properties[viewKey][common_1.SchemaTag.isViewNode] = true;
397
+ viewsDefinition.properties[viewKey][common_1.SchemaTag.annotationPath] = namespace
398
+ ? `/${namespace}/@${view[common_1.SchemaTag.annotationPath]}`
399
+ : undefined;
400
+ viewsDefinition.properties[viewKey][common_1.SchemaTag.artifactType] = ux_specification_types_1.ArtifactType.Manifest;
401
+ viewsDefinition.properties[viewKey][common_1.SchemaTag.key] = viewKey;
402
+ }
403
+ /**
404
+ * Adjusts the entity type if a different entity set is maintained for a view
405
+ * @param {EntitySet} entitySet - actual entity set (AVT information)
406
+ * @param view - the current view in manifest
407
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
408
+ * @param {EntityType} entityType - actual entity type of the page's entitySet
409
+ * @returns the target entity type
410
+ */
411
+ function getTargetEntityType(entitySet, view, generateParameters, entityType) {
412
+ let targetEntityType = entityType;
413
+ let viewEntitySet = entitySet;
414
+ if (view['entitySet'] && view['entitySet'] !== entitySet.name) {
415
+ viewEntitySet = generateParameters.serviceAVT.entitySets.find((es) => {
416
+ return es.name === view['entitySet'];
417
+ });
418
+ targetEntityType = viewEntitySet.entityType;
419
+ }
420
+ return targetEntityType;
421
+ }
422
+ /**
423
+ * Adds definition parts to a LR View (LineItem/Chart)
424
+ * @param {string} templateAnnotation - defaultTemplateAnnotationPath as registered in manifest
425
+ * @param {string} visualization - visualization of the annotation
426
+ * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
427
+ * @param {object} commonInputParameters - list of input parameters as collected by the calling instance
428
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
429
+ * @param {SapUiAppPageV4} v4Page - the given page in manifest
430
+ * @param uiAnnotations - UI annotations of the given entityType
431
+ * @paran view - the given view
432
+ */
433
+ function addLRViewParts(visualization, viewsDefinition, commonInputParameters, generateParameters, v4Page, uiAnnotations, view) {
434
+ if (visualization?.indexOf(ux_specification_types_1.Visualization.LineItem) > -1) {
435
+ //Add Line item view
436
+ addViewLineItems(commonInputParameters, viewsDefinition, visualization, commonInputParameters.targetAnnotation, generateParameters);
437
+ }
438
+ else if (visualization?.indexOf('Chart') > -1) {
439
+ //Add Chart view
440
+ addViewChart(commonInputParameters, uiAnnotations, commonInputParameters.appSchema, viewsDefinition, commonInputParameters.viewKey, commonInputParameters.title);
441
+ }
442
+ else if (view['template']) {
443
+ const titleOnHover = view['label'] || `Custom View (key: ${commonInputParameters.viewKey})`;
444
+ viewsDefinition.properties[commonInputParameters.viewKey] = {
445
+ description: commonInputParameters.title || titleOnHover,
446
+ title: titleOnHover,
447
+ // Default view - use table view reference as default
448
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${common_1.DefinitionName.TableViewExtension}`
449
+ };
450
+ }
451
+ else {
452
+ const titleOnHover = `View (key: ${commonInputParameters.viewKey})`;
453
+ viewsDefinition.properties[commonInputParameters.viewKey] = {
454
+ description: commonInputParameters.title || titleOnHover,
455
+ title: titleOnHover,
456
+ // Default view - use table view reference as default
457
+ $ref: `${common_1.DEFINITION_LINK_PREFIX}${common_1.DefinitionName.LRTableView}`
458
+ };
459
+ }
460
+ }
461
+ /**
462
+ * Add list report views to the app-specific schema
463
+ * @param {Definition} appSchema - app-specific JSON schema
464
+ * @param {Array<Object>} viewsPaths - views' paths' section in the manifest
465
+ * @param {EntityType} entityType - actual entity type of the page's entitySet
466
+ * @param {EntitySet} entitySet - actual entity set (AVT information)
467
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
468
+ * @param {string} templateAnnotation - defaultTemplateAnnotationPath as registered in manifest
469
+ * @param {SapUiAppPageV4} v4Page - the given page in manifest
470
+ */
471
+ function addLRViews(appSchema, viewsPaths, entityType, entitySet, generateParameters, v4Page, tableDefinitionName) {
472
+ const tableDefinition = appSchema.definitions[tableDefinitionName];
473
+ tableDefinition.properties = {
474
+ annotationPath: tableDefinition.properties.annotationPath,
475
+ initialLoad: tableDefinition.properties.initialLoad,
476
+ views: tableDefinition.properties.views
477
+ };
478
+ const viewsDefinition = appSchema.definitions.MultiTableModeV4;
479
+ for (const view of viewsPaths) {
480
+ if (!view[common_1.SchemaTag.key]) {
481
+ continue;
482
+ }
483
+ let navPropName = undefined;
484
+ const targetEntityType = getTargetEntityType(entitySet, view, generateParameters, entityType);
485
+ const uiAnnotations = targetEntityType.annotations.UI;
486
+ const { visualization, targetAnnotation, namespace, title } = analyzeViewAnnotation(view?.[common_1.SchemaTag.annotationPath], uiAnnotations, generateParameters, view[common_1.SchemaTag.key]);
487
+ if (view['entitySet']) {
488
+ navPropName = entityType.navigationProperties.find((np) => {
489
+ return np.targetTypeName === namespace;
490
+ })?.name;
491
+ }
492
+ const viewKey = common_1.prepareRef(view[common_1.SchemaTag.key]);
493
+ const commonInputParameters = {
494
+ viewKey,
495
+ appSchema,
496
+ targetAnnotation,
497
+ navPropName,
498
+ targetEntityType,
499
+ title
500
+ };
501
+ addLRViewParts(visualization, viewsDefinition, commonInputParameters, generateParameters, v4Page, uiAnnotations, view);
502
+ addTagsToView(viewsDefinition, viewKey, namespace, view);
503
+ }
504
+ }
505
+ /**
506
+ * Adapts the table definition in schema.
507
+ * Evaluates the path depending on if defaultTemplateAnnotationPath or Selection-/PresentationVariant is present.
508
+ * @param {SapUiAppPageV4} v4Page - the given page in manifest
509
+ * @param {EntityType} entityType - the current entity type, as defined in AVT
510
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
511
+ * @param appSchema - the app-specific JSON schema
512
+ * @param alias - alias definition for the UI vocabulary
513
+ */
514
+ function adaptTableDefinition(appSchema, entityType, generateParameters, templateAnnotation, v4Page, alias, tableDefinitionName) {
515
+ //here: tableDefinitionName = DefinitionName.Table
516
+ const tableDefinition = appSchema.definitions[tableDefinitionName];
517
+ const { visualization, targetAnnotation, namespace } = analyzeViewAnnotation(templateAnnotation, entityType.annotations.UI, generateParameters, undefined, ux_specification_types_1.Visualization.LineItem);
518
+ if (visualization) {
519
+ const annotationTerm = visualization.split('.')[1];
520
+ const annotationTermInSchema = `${common_1.DefinitionName.LineItems}OfSPV::${common_1.prepareRef(annotationTerm)}`;
521
+ const spvTable = (appSchema.definitions[`${tableDefinitionName}SPV`] = JSON.parse(JSON.stringify(appSchema.definitions[tableDefinitionName])));
522
+ delete spvTable[common_1.SchemaTag.isViewNode];
523
+ common_1.addDefinitionRef(spvTable.properties.toolBar, common_1.DefinitionName.ToolBar, annotationTermInSchema);
524
+ // Switch from generic column to specific definition
525
+ spvTable[common_1.SchemaTag.annotationPath] = targetAnnotation;
526
+ spvTable.properties.columns = {};
527
+ common_1.addDefinitionRef(spvTable.properties.columns, annotationTermInSchema);
528
+ delete tableDefinition.properties;
529
+ common_1.addDefinitionRef(tableDefinition, `${tableDefinitionName}SPV`);
530
+ tableDefinition[common_1.SchemaTag.annotationPath] = `/${namespace}/@${templateAnnotation}`;
531
+ const lineItemAnnotation = entityType.annotations.UI[annotationTerm];
532
+ const dataForLineItem = {
533
+ appSchema,
534
+ lineItemAnnotation,
535
+ entityType,
536
+ oDataServiceAVT: generateParameters.serviceAVT,
537
+ lineItemId: annotationTermInSchema
538
+ };
539
+ utils_1.addLineItemsTypeToSchema(dataForLineItem);
540
+ }
541
+ else {
542
+ tableDefinition.properties.toolBar['$ref'] = `${common_1.DEFINITION_LINK_PREFIX}${common_1.DefinitionName.ToolBarLR}`;
543
+ // Switch from generic column to specific definition
544
+ common_1.addDefinitionRef(tableDefinition.properties.columns, common_1.DefinitionName.LineItems);
545
+ const lineItemAnnotation = entityType?.annotations?.[alias]?.LineItem;
546
+ const dataForLineItem = {
547
+ appSchema,
548
+ lineItemAnnotation,
549
+ entityType,
550
+ oDataServiceAVT: generateParameters.serviceAVT,
551
+ lineItemId: common_1.DefinitionName.LineItems
552
+ };
553
+ utils_1.addLineItemsTypeToSchema(dataForLineItem);
554
+ if (lineItemAnnotation) {
555
+ tableDefinition[common_1.SchemaTag.annotationPath] = common_1.createAnnotationPath(entityType.fullyQualifiedName, lineItemAnnotation.term, lineItemAnnotation.qualifier);
556
+ }
557
+ }
558
+ }
559
+ /**
560
+ * Checks for the default annotation path to use for LR table
561
+ * @param {SapUiAppPageV4} v4Page - actual page in the manifest
562
+ * @param {EntityType} entityType - actual entity type (AVT information)
563
+ * @returns {string} annotation term
564
+ */
565
+ function getDefaultAnnotationPath(v4Page, entityType, templateType) {
566
+ if (v4Page.options.settings?.views?.paths && templateType === common_1.TemplateType.ListReportObjectPageV4) {
567
+ return;
568
+ }
569
+ if (v4Page.options.settings?.defaultTemplateAnnotationPath) {
570
+ return v4Page.options.settings.defaultTemplateAnnotationPath;
571
+ }
572
+ if (templateType === common_1.TemplateType.ListReportObjectPageV4) {
573
+ return (entityType.annotations.UI?.SelectionPresentationVariant?.term ||
574
+ entityType.annotations.UI?.PresentationVariant?.term);
575
+ }
576
+ }
577
+ /**
578
+ * Add views to schema (LR or ALP)
579
+ * @param {Definition} appSchema - app-specific JSON schema
580
+ * @param {SapUiAppPageV4} v4Page - actual page in the manifest
581
+ * @param {EntityType} entityType - actual entity type (AVT information)
582
+ * @param {EntitySet} entitySet - actual entity set (AVT information)
583
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
584
+ */
585
+ function addTableAndViews(appSchema, v4Page, entityType, entitySet, generateParameters, alias) {
586
+ const viewsPaths = v4Page.options?.settings?.views?.paths;
587
+ const defaultAnnotation = getDefaultAnnotationPath(v4Page, entityType, generateParameters.templateType);
588
+ const tableDefinitionName = utils_1.alignSchemaWithTemplateType(appSchema, generateParameters);
589
+ if (generateParameters.templateType === common_1.TemplateType.ListReportObjectPageV4) {
590
+ if (viewsPaths) {
591
+ addLRViews(appSchema, viewsPaths, entityType, entitySet, generateParameters, v4Page, tableDefinitionName);
592
+ }
593
+ else {
594
+ if (!v4Page.options?.settings?.views) {
595
+ appSchema.definitions.MultiTableModeV4.properties = {};
596
+ }
597
+ adaptTableDefinition(appSchema, entityType, generateParameters, defaultAnnotation, v4Page, alias, tableDefinitionName);
598
+ }
599
+ appSchema.properties[common_1.PropertyName.chart][common_1.SchemaTag.hidden] = true;
600
+ }
601
+ else if (generateParameters.templateType === common_1.TemplateType.AnalyticalListPageV4) {
602
+ addALPViews(appSchema, viewsPaths, entityType, generateParameters, defaultAnnotation, tableDefinitionName);
603
+ }
604
+ }
605
+ /**
606
+ * Generates an app specific schema for the FE V4 ListReport from the generic schema.
607
+ * Generic types are replaced by information from the app specific annotations.
608
+ * @param {GenerateAppSchemaParameters} generateParameters - list of API input parameters
609
+ * @param genericSchema - generic JSON schema of an object page
610
+ * @param {EntitySet} entitySet - entity set (AVT object) that is relevant for the given page
611
+ * @param {string} templateName - allows to distinguish list report from ALP
612
+ *
613
+ * @returns {object} application-specific schema of the list report
614
+ */
615
+ function generateListReportSchemaV4(generateParameters, genericSchema, entitySet, templateName) {
616
+ const appSchema = JSON.parse(JSON.stringify(genericSchema));
617
+ const entityType = entitySet?.entityType;
618
+ const alias = generateParameters.serviceAVT && common_1.findAlias(common_1.UIVOCABULARY, generateParameters.serviceAVT);
619
+ //Add selection fields
620
+ const selectionFieldAnnotation = alias && entityType?.annotations?.[alias]?.SelectionFields;
621
+ addSelectionFields(entityType, appSchema, selectionFieldAnnotation);
622
+ appSchema.properties[common_1.PropertyName.defaultTemplateAnnotationPath][common_1.SchemaTag.hidden] = true;
623
+ //enum for annotation path as part of QuickVariantSelection
624
+ common_1.addEnumForSingleTabVariant(entityType, appSchema, common_1.DefinitionName.AnnotationPathAsObject);
625
+ if (generateParameters.manifest) {
626
+ //Find page in targets
627
+ const pages = generateParameters.manifest[ux_specification_types_1.ManifestSection.ui5].routing
628
+ .targets;
629
+ if (!pages) {
630
+ extensionLogger_1.log(generateParameters.logger, {
631
+ severity: "error" /* Error */,
632
+ message: i18next_1.default.t('NOPAGES', { appId: generateParameters.manifest['sap.app']['id'] }),
633
+ location: {
634
+ path: common_1.MANIFESTPATH,
635
+ range: [ux_specification_types_1.ManifestSection.generic]
636
+ }
637
+ });
638
+ return appSchema;
639
+ }
640
+ const v4Page = utils_1.findPageV4(pages, templateName, entitySet, generateParameters.logger);
641
+ if (!v4Page) {
642
+ return appSchema;
643
+ }
644
+ addTableAndViews(appSchema, v4Page, entityType, entitySet, generateParameters, alias);
645
+ }
646
+ delete appSchema.definitions.GenericColumns;
647
+ delete appSchema.definitions.Action;
648
+ return appSchema;
649
+ }
650
+ exports.generateListReportSchemaV4 = generateListReportSchemaV4;
651
+ //# sourceMappingURL=listReport.js.map