@sap/ux-specification 1.71.66 → 1.71.67

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 (474) 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/index-min.js +83 -24668
  9. package/dist/index-min.js.map +3 -3
  10. package/dist/schemas/v2/ListReportConfig.json +83 -83
  11. package/dist/scripts/extractDocu.d.ts +2 -0
  12. package/dist/scripts/extractDocu.d.ts.map +1 -0
  13. package/dist/scripts/extractDocu.js +494 -0
  14. package/dist/scripts/extractDocu.js.map +1 -0
  15. package/dist/scripts/runDocu.d.ts +2 -0
  16. package/dist/scripts/runDocu.d.ts.map +1 -0
  17. package/dist/scripts/runDocu.js +579 -0
  18. package/dist/scripts/runDocu.js.map +1 -0
  19. package/dist/scripts/spec.d.ts +2 -0
  20. package/dist/scripts/spec.d.ts.map +1 -0
  21. package/dist/scripts/spec.js +114 -0
  22. package/dist/scripts/spec.js.map +1 -0
  23. package/dist/scripts/to-json-schema.d.ts +11 -0
  24. package/dist/scripts/to-json-schema.d.ts.map +1 -0
  25. package/dist/scripts/to-json-schema.js +120 -0
  26. package/dist/scripts/to-json-schema.js.map +1 -0
  27. package/dist/{types → src}/api.d.ts +1 -1
  28. package/dist/{types → src}/api.d.ts.map +1 -1
  29. package/dist/src/api.js +122 -0
  30. package/dist/src/api.js.map +1 -0
  31. package/dist/{types → src}/apiTypes.d.ts +9 -12
  32. package/dist/src/apiTypes.d.ts.map +1 -0
  33. package/dist/src/apiTypes.js +3 -0
  34. package/dist/src/apiTypes.js.map +1 -0
  35. package/dist/{types → src}/extensionLogger.d.ts +0 -0
  36. package/dist/{types → src}/extensionLogger.d.ts.map +0 -0
  37. package/dist/src/extensionLogger.js +34 -0
  38. package/dist/src/extensionLogger.js.map +1 -0
  39. package/dist/{types → src}/i18n/i18n.d.ts +0 -0
  40. package/dist/{types → src}/i18n/i18n.d.ts.map +0 -0
  41. package/dist/src/i18n/i18n.js +25 -0
  42. package/dist/src/i18n/i18n.js.map +1 -0
  43. package/dist/{types → src}/index.d.ts +2 -2
  44. package/dist/src/index.d.ts.map +1 -0
  45. package/dist/src/index.js +12 -0
  46. package/dist/src/index.js.map +1 -0
  47. package/dist/{types → src}/project.d.ts +2 -1
  48. package/dist/src/project.d.ts.map +1 -0
  49. package/dist/src/project.js +149 -0
  50. package/dist/src/project.js.map +1 -0
  51. package/dist/{types → src}/specification/schemaAccess.d.ts +2 -11
  52. package/dist/src/specification/schemaAccess.d.ts.map +1 -0
  53. package/dist/src/specification/schemaAccess.js +60 -0
  54. package/dist/src/specification/schemaAccess.js.map +1 -0
  55. package/dist/{types → src}/sync/common/appProvider.d.ts +4 -5
  56. package/dist/src/sync/common/appProvider.d.ts.map +1 -0
  57. package/dist/src/sync/common/appProvider.js +59 -0
  58. package/dist/src/sync/common/appProvider.js.map +1 -0
  59. package/dist/{types → src}/sync/common/decoration/control.d.ts +0 -0
  60. package/dist/{types → src}/sync/common/decoration/control.d.ts.map +0 -0
  61. package/dist/src/sync/common/decoration/control.js +211 -0
  62. package/dist/src/sync/common/decoration/control.js.map +1 -0
  63. package/dist/{types → src}/sync/common/decoration/decorators.d.ts +0 -0
  64. package/dist/{types → src}/sync/common/decoration/decorators.d.ts.map +0 -0
  65. package/dist/src/sync/common/decoration/decorators.js +45 -0
  66. package/dist/src/sync/common/decoration/decorators.js.map +1 -0
  67. package/dist/{types → src}/sync/common/decoration/factory.d.ts +1 -1
  68. package/dist/{types → src}/sync/common/decoration/factory.d.ts.map +1 -1
  69. package/dist/src/sync/common/decoration/factory.js +48 -0
  70. package/dist/src/sync/common/decoration/factory.js.map +1 -0
  71. package/dist/{types → src}/sync/common/decoration/flex.d.ts +1 -3
  72. package/dist/{types → src}/sync/common/decoration/flex.d.ts.map +1 -1
  73. package/dist/src/sync/common/decoration/flex.js +8 -0
  74. package/dist/src/sync/common/decoration/flex.js.map +1 -0
  75. package/dist/{types → src}/sync/common/decoration/index.d.ts +0 -0
  76. package/dist/{types → src}/sync/common/decoration/index.d.ts.map +0 -0
  77. package/dist/src/sync/common/decoration/index.js +9 -0
  78. package/dist/src/sync/common/decoration/index.js.map +1 -0
  79. package/dist/{types → src}/sync/common/flexUtils.d.ts +2 -3
  80. package/dist/src/sync/common/flexUtils.d.ts.map +1 -0
  81. package/dist/src/sync/common/flexUtils.js +94 -0
  82. package/dist/src/sync/common/flexUtils.js.map +1 -0
  83. package/dist/{types → src}/sync/common/generate/index.d.ts +0 -0
  84. package/dist/{types → src}/sync/common/generate/index.d.ts.map +0 -0
  85. package/dist/src/sync/common/generate/index.js +8 -0
  86. package/dist/src/sync/common/generate/index.js.map +1 -0
  87. package/dist/{types → src}/sync/common/generate/objectPage.d.ts +1 -2
  88. package/dist/src/sync/common/generate/objectPage.d.ts.map +1 -0
  89. package/dist/src/sync/common/generate/objectPage.js +355 -0
  90. package/dist/src/sync/common/generate/objectPage.js.map +1 -0
  91. package/dist/{types → src}/sync/common/generate/utils.d.ts +2 -1
  92. package/dist/src/sync/common/generate/utils.d.ts.map +1 -0
  93. package/dist/src/sync/common/generate/utils.js +382 -0
  94. package/dist/src/sync/common/generate/utils.js.map +1 -0
  95. package/dist/src/sync/common/i18n.json +21 -0
  96. package/dist/{types → src}/sync/common/import/utils.d.ts +0 -0
  97. package/dist/{types → src}/sync/common/import/utils.d.ts.map +0 -0
  98. package/dist/src/sync/common/import/utils.js +92 -0
  99. package/dist/src/sync/common/import/utils.js.map +1 -0
  100. package/dist/{types → src}/sync/common/importProject.d.ts +0 -0
  101. package/dist/{types → src}/sync/common/importProject.d.ts.map +1 -1
  102. package/dist/src/sync/common/importProject.js +254 -0
  103. package/dist/src/sync/common/importProject.js.map +1 -0
  104. package/dist/{types → src}/sync/common/index.d.ts +0 -0
  105. package/dist/{types → src}/sync/common/index.d.ts.map +0 -0
  106. package/dist/src/sync/common/index.js +15 -0
  107. package/dist/src/sync/common/index.js.map +1 -0
  108. package/dist/{types → src}/sync/common/types.d.ts +5 -55
  109. package/dist/src/sync/common/types.d.ts.map +1 -0
  110. package/dist/src/sync/common/types.js +165 -0
  111. package/dist/src/sync/common/types.js.map +1 -0
  112. package/dist/{types → src}/sync/common/utils.d.ts +7 -8
  113. package/dist/src/sync/common/utils.d.ts.map +1 -0
  114. package/dist/src/sync/common/utils.js +1066 -0
  115. package/dist/src/sync/common/utils.js.map +1 -0
  116. package/dist/{types → src}/sync/i18n.d.ts +0 -0
  117. package/dist/{types → src}/sync/i18n.d.ts.map +0 -0
  118. package/dist/src/sync/i18n.js +15 -0
  119. package/dist/src/sync/i18n.js.map +1 -0
  120. package/dist/{types → src}/sync/v2/application.d.ts +6 -6
  121. package/dist/src/sync/v2/application.d.ts.map +1 -0
  122. package/dist/src/sync/v2/application.js +154 -0
  123. package/dist/src/sync/v2/application.js.map +1 -0
  124. package/dist/src/sync/v2/export/controls/Action.d.ts +29 -0
  125. package/dist/src/sync/v2/export/controls/Action.d.ts.map +1 -0
  126. package/dist/src/sync/v2/export/controls/Action.js +127 -0
  127. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  128. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts +9 -0
  129. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +1 -0
  130. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js +62 -0
  131. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js.map +1 -0
  132. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +10 -0
  133. package/dist/{types → src}/sync/v2/export/controls/AnalyticalListPageKPI.d.ts.map +1 -1
  134. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js +56 -0
  135. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js.map +1 -0
  136. package/dist/{types → src}/sync/v2/export/controls/Card.d.ts +30 -30
  137. package/dist/src/sync/v2/export/controls/Card.d.ts.map +1 -0
  138. package/dist/src/sync/v2/export/controls/Card.js +655 -0
  139. package/dist/src/sync/v2/export/controls/Card.js.map +1 -0
  140. package/dist/src/sync/v2/export/controls/Field.d.ts +5 -0
  141. package/dist/src/sync/v2/export/controls/Field.d.ts.map +1 -0
  142. package/dist/src/sync/v2/export/controls/Field.js +41 -0
  143. package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
  144. package/dist/{types → src}/sync/v2/export/controls/FilterBar.d.ts +3 -3
  145. package/dist/src/sync/v2/export/controls/FilterBar.d.ts.map +1 -0
  146. package/dist/src/sync/v2/export/controls/FilterBar.js +107 -0
  147. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -0
  148. package/dist/src/sync/v2/export/controls/FormAction.d.ts +16 -0
  149. package/dist/src/sync/v2/export/controls/FormAction.d.ts.map +1 -0
  150. package/dist/src/sync/v2/export/controls/FormAction.js +128 -0
  151. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
  152. package/dist/{types → src}/sync/v2/export/controls/Fragment.d.ts +5 -5
  153. package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -0
  154. package/dist/src/sync/v2/export/controls/Fragment.js +580 -0
  155. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -0
  156. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts +18 -0
  157. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
  158. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js +110 -0
  159. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js.map +1 -0
  160. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +9 -0
  161. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +1 -0
  162. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +62 -0
  163. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  164. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +9 -0
  165. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -0
  166. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js +61 -0
  167. package/dist/src/sync/v2/export/controls/ObjectPageHeader.js.map +1 -0
  168. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +9 -0
  169. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -0
  170. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +62 -0
  171. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -0
  172. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts +8 -0
  173. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts.map +1 -0
  174. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js +59 -0
  175. package/dist/src/sync/v2/export/controls/ObjectPageLayout.js.map +1 -0
  176. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +45 -0
  177. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +1 -0
  178. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +194 -0
  179. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
  180. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +41 -0
  181. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -0
  182. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +278 -0
  183. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -0
  184. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +9 -0
  185. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
  186. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +61 -0
  187. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  188. package/dist/{types → src}/sync/v2/export/controls/Table.d.ts +22 -23
  189. package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -0
  190. package/dist/src/sync/v2/export/controls/Table.js +593 -0
  191. package/dist/src/sync/v2/export/controls/Table.js.map +1 -0
  192. package/dist/src/sync/v2/export/controls/TableColumn.d.ts +38 -0
  193. package/dist/src/sync/v2/export/controls/TableColumn.d.ts.map +1 -0
  194. package/dist/src/sync/v2/export/controls/TableColumn.js +166 -0
  195. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -0
  196. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +5 -0
  197. package/dist/src/sync/v2/export/controls/ToolBar.d.ts.map +1 -0
  198. package/dist/src/sync/v2/export/controls/ToolBar.js +6 -0
  199. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  200. package/dist/{types → src}/sync/v2/export/controls/index.d.ts +0 -0
  201. package/dist/{types → src}/sync/v2/export/controls/index.d.ts.map +0 -0
  202. package/dist/src/sync/v2/export/controls/index.js +25 -0
  203. package/dist/src/sync/v2/export/controls/index.js.map +1 -0
  204. package/dist/{types → src}/sync/v2/export/export.d.ts +1 -1
  205. package/dist/{types → src}/sync/v2/export/export.d.ts.map +1 -1
  206. package/dist/src/sync/v2/export/export.js +681 -0
  207. package/dist/src/sync/v2/export/export.js.map +1 -0
  208. package/dist/{types → src}/sync/v2/export/exportPage.d.ts +2 -1
  209. package/dist/src/sync/v2/export/exportPage.d.ts.map +1 -0
  210. package/dist/src/sync/v2/export/exportPage.js +304 -0
  211. package/dist/src/sync/v2/export/exportPage.js.map +1 -0
  212. package/dist/{types → src}/sync/v2/export/factory.d.ts +0 -0
  213. package/dist/{types → src}/sync/v2/export/factory.d.ts.map +1 -1
  214. package/dist/src/sync/v2/export/factory.js +55 -0
  215. package/dist/src/sync/v2/export/factory.js.map +1 -0
  216. package/dist/{types → src}/sync/v2/export/manifest.d.ts +2 -2
  217. package/dist/src/sync/v2/export/manifest.d.ts.map +1 -0
  218. package/dist/src/sync/v2/export/manifest.js +168 -0
  219. package/dist/src/sync/v2/export/manifest.js.map +1 -0
  220. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +13 -0
  221. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts.map +1 -0
  222. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +42 -0
  223. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -0
  224. package/dist/src/sync/v2/export/pages/ListReport.d.ts +11 -0
  225. package/dist/src/sync/v2/export/pages/ListReport.d.ts.map +1 -0
  226. package/dist/src/sync/v2/export/pages/ListReport.js +39 -0
  227. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -0
  228. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts +15 -0
  229. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -0
  230. package/dist/src/sync/v2/export/pages/ObjectPage.js +74 -0
  231. package/dist/src/sync/v2/export/pages/ObjectPage.js.map +1 -0
  232. package/dist/{types → src}/sync/v2/export/pages/OverviewPage.d.ts +3 -3
  233. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts.map +1 -0
  234. package/dist/src/sync/v2/export/pages/OverviewPage.js +118 -0
  235. package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -0
  236. package/dist/{types → src}/sync/v2/export/pages/index.d.ts +0 -0
  237. package/dist/{types → src}/sync/v2/export/pages/index.d.ts.map +0 -0
  238. package/dist/src/sync/v2/export/pages/index.js +10 -0
  239. package/dist/src/sync/v2/export/pages/index.js.map +1 -0
  240. package/dist/{types → src}/sync/v2/export/view-controller-generator.d.ts +4 -4
  241. package/dist/src/sync/v2/export/view-controller-generator.d.ts.map +1 -0
  242. package/dist/src/sync/v2/export/view-controller-generator.js +141 -0
  243. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -0
  244. package/dist/{types → src}/sync/v2/generate/analyticalListReport.d.ts +1 -1
  245. package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -0
  246. package/dist/src/sync/v2/generate/analyticalListReport.js +84 -0
  247. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -0
  248. package/dist/{types → src}/sync/v2/generate/generate.d.ts +1 -1
  249. package/dist/src/sync/v2/generate/generate.d.ts.map +1 -0
  250. package/dist/src/sync/v2/generate/generate.js +99 -0
  251. package/dist/src/sync/v2/generate/generate.js.map +1 -0
  252. package/dist/{types → src}/sync/v2/generate/index.d.ts +0 -0
  253. package/dist/{types → src}/sync/v2/generate/index.d.ts.map +0 -0
  254. package/dist/src/sync/v2/generate/index.js +14 -0
  255. package/dist/src/sync/v2/generate/index.js.map +1 -0
  256. package/dist/{types → src}/sync/v2/generate/listReport.d.ts +1 -1
  257. package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -0
  258. package/dist/src/sync/v2/generate/listReport.js +116 -0
  259. package/dist/src/sync/v2/generate/listReport.js.map +1 -0
  260. package/dist/{types → src}/sync/v2/generate/objectPage.d.ts +1 -1
  261. package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -0
  262. package/dist/src/sync/v2/generate/objectPage.js +537 -0
  263. package/dist/src/sync/v2/generate/objectPage.js.map +1 -0
  264. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts +1 -1
  265. package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts.map +1 -1
  266. package/dist/src/sync/v2/generate/overviewPage.js +70 -0
  267. package/dist/src/sync/v2/generate/overviewPage.js.map +1 -0
  268. package/dist/{types → src}/sync/v2/generate/utils.d.ts +3 -4
  269. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -0
  270. package/dist/src/sync/v2/generate/utils.js +527 -0
  271. package/dist/src/sync/v2/generate/utils.js.map +1 -0
  272. package/dist/{types → src}/sync/v2/import/app/appProvider.d.ts +4 -4
  273. package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -0
  274. package/dist/src/sync/v2/import/app/appProvider.js +136 -0
  275. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -0
  276. package/dist/{types → src}/sync/v2/import/app/ovpProvider.d.ts +1 -1
  277. package/dist/src/sync/v2/import/app/ovpProvider.d.ts.map +1 -0
  278. package/dist/src/sync/v2/import/app/ovpProvider.js +32 -0
  279. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -0
  280. package/dist/{types → src}/sync/v2/import/common/index.d.ts +6 -9
  281. package/dist/src/sync/v2/import/common/index.d.ts.map +1 -0
  282. package/dist/src/sync/v2/import/common/index.js +393 -0
  283. package/dist/src/sync/v2/import/common/index.js.map +1 -0
  284. package/dist/{types → src}/sync/v2/import/controls/table.d.ts +2 -2
  285. package/dist/src/sync/v2/import/controls/table.d.ts.map +1 -0
  286. package/dist/src/sync/v2/import/controls/table.js +33 -0
  287. package/dist/src/sync/v2/import/controls/table.js.map +1 -0
  288. package/dist/{types → src}/sync/v2/import/getPageType.d.ts +0 -0
  289. package/dist/{types → src}/sync/v2/import/getPageType.d.ts.map +0 -0
  290. package/dist/src/sync/v2/import/getPageType.js +1 -0
  291. package/dist/src/sync/v2/import/getPageType.js.map +1 -0
  292. package/dist/{types → src}/sync/v2/import/index.d.ts +0 -0
  293. package/dist/{types → src}/sync/v2/import/index.d.ts.map +0 -0
  294. package/dist/src/sync/v2/import/index.js +11 -0
  295. package/dist/src/sync/v2/import/index.js.map +1 -0
  296. package/dist/{types → src}/sync/v2/import/pages/analyticalListPage.d.ts +2 -2
  297. package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts.map +1 -0
  298. package/dist/src/sync/v2/import/pages/analyticalListPage.js +119 -0
  299. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -0
  300. package/dist/{types → src}/sync/v2/import/pages/listReport.d.ts +2 -2
  301. package/dist/src/sync/v2/import/pages/listReport.d.ts.map +1 -0
  302. package/dist/src/sync/v2/import/pages/listReport.js +143 -0
  303. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -0
  304. package/dist/{types → src}/sync/v2/import/pages/objectPage.d.ts +3 -2
  305. package/dist/src/sync/v2/import/pages/objectPage.d.ts.map +1 -0
  306. package/dist/src/sync/v2/import/pages/objectPage.js +744 -0
  307. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -0
  308. package/dist/{types → src}/sync/v2/import/pages/overviewPage.d.ts +2 -3
  309. package/dist/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -0
  310. package/dist/src/sync/v2/import/pages/overviewPage.js +104 -0
  311. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -0
  312. package/dist/{types → src}/sync/v2/import/utils.d.ts +5 -5
  313. package/dist/src/sync/v2/import/utils.d.ts.map +1 -0
  314. package/dist/src/sync/v2/import/utils.js +171 -0
  315. package/dist/src/sync/v2/import/utils.js.map +1 -0
  316. package/dist/{types → src}/sync/v2/types.d.ts +5 -6
  317. package/dist/src/sync/v2/types.d.ts.map +1 -0
  318. package/dist/src/sync/v2/types.js +36 -0
  319. package/dist/src/sync/v2/types.js.map +1 -0
  320. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts +0 -0
  321. package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts.map +0 -0
  322. package/dist/src/sync/v4/utils/StableIdHelper.js +156 -0
  323. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -0
  324. package/package.json +9 -9
  325. package/CHANGELOG.md +0 -1079
  326. package/dist/types/apiTypes.d.ts.map +0 -1
  327. package/dist/types/index.d.ts.map +0 -1
  328. package/dist/types/project.d.ts.map +0 -1
  329. package/dist/types/specification/common/Application.d.ts +0 -16
  330. package/dist/types/specification/common/Application.d.ts.map +0 -1
  331. package/dist/types/specification/common/index.d.ts +0 -6
  332. package/dist/types/specification/common/index.d.ts.map +0 -1
  333. package/dist/types/specification/common/page.d.ts +0 -42
  334. package/dist/types/specification/common/page.d.ts.map +0 -1
  335. package/dist/types/specification/common/types.d.ts +0 -21
  336. package/dist/types/specification/common/types.d.ts.map +0 -1
  337. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts +0 -49
  338. package/dist/types/specification/common/webapp/manifest/Manifest.d.ts.map +0 -1
  339. package/dist/types/specification/common/webapp/manifest/index.d.ts +0 -4
  340. package/dist/types/specification/common/webapp/manifest/index.d.ts.map +0 -1
  341. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts +0 -376
  342. package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts.map +0 -1
  343. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts +0 -34
  344. package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts.map +0 -1
  345. package/dist/types/specification/schemaAccess.d.ts.map +0 -1
  346. package/dist/types/specification/v2/ApplicationV2.d.ts +0 -31
  347. package/dist/types/specification/v2/ApplicationV2.d.ts.map +0 -1
  348. package/dist/types/specification/v2/controls/Action.d.ts +0 -83
  349. package/dist/types/specification/v2/controls/Action.d.ts.map +0 -1
  350. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts +0 -55
  351. package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts.map +0 -1
  352. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts +0 -31
  353. package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts.map +0 -1
  354. package/dist/types/specification/v2/controls/Card.d.ts +0 -626
  355. package/dist/types/specification/v2/controls/Card.d.ts.map +0 -1
  356. package/dist/types/specification/v2/controls/Facets.d.ts +0 -18
  357. package/dist/types/specification/v2/controls/Facets.d.ts.map +0 -1
  358. package/dist/types/specification/v2/controls/Field.d.ts +0 -11
  359. package/dist/types/specification/v2/controls/Field.d.ts.map +0 -1
  360. package/dist/types/specification/v2/controls/FilterBar.d.ts +0 -81
  361. package/dist/types/specification/v2/controls/FilterBar.d.ts.map +0 -1
  362. package/dist/types/specification/v2/controls/Footer.d.ts +0 -21
  363. package/dist/types/specification/v2/controls/Footer.d.ts.map +0 -1
  364. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts +0 -17
  365. package/dist/types/specification/v2/controls/ObjectPageChart.d.ts.map +0 -1
  366. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts +0 -16
  367. package/dist/types/specification/v2/controls/ObjectPageForm.d.ts.map +0 -1
  368. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts +0 -35
  369. package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts.map +0 -1
  370. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts +0 -23
  371. package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts.map +0 -1
  372. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts +0 -121
  373. package/dist/types/specification/v2/controls/ObjectPageSection.d.ts.map +0 -1
  374. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts +0 -131
  375. package/dist/types/specification/v2/controls/ObjectPageTable.d.ts.map +0 -1
  376. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts +0 -16
  377. package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts.map +0 -1
  378. package/dist/types/specification/v2/controls/Table.d.ts +0 -402
  379. package/dist/types/specification/v2/controls/Table.d.ts.map +0 -1
  380. package/dist/types/specification/v2/controls/ToolBar.d.ts +0 -9
  381. package/dist/types/specification/v2/controls/ToolBar.d.ts.map +0 -1
  382. package/dist/types/specification/v2/controls/index.d.ts +0 -18
  383. package/dist/types/specification/v2/controls/index.d.ts.map +0 -1
  384. package/dist/types/specification/v2/index.d.ts +0 -6
  385. package/dist/types/specification/v2/index.d.ts.map +0 -1
  386. package/dist/types/specification/v2/page.d.ts +0 -8
  387. package/dist/types/specification/v2/page.d.ts.map +0 -1
  388. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts +0 -22
  389. package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts.map +0 -1
  390. package/dist/types/specification/v2/pages/ListReportConfig.d.ts +0 -13
  391. package/dist/types/specification/v2/pages/ListReportConfig.d.ts.map +0 -1
  392. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts +0 -25
  393. package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts.map +0 -1
  394. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts +0 -83
  395. package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts.map +0 -1
  396. package/dist/types/specification/v2/pages/index.d.ts +0 -5
  397. package/dist/types/specification/v2/pages/index.d.ts.map +0 -1
  398. package/dist/types/specification/v2/webapp/index.d.ts +0 -2
  399. package/dist/types/specification/v2/webapp/index.d.ts.map +0 -1
  400. package/dist/types/specification/v2/webapp/manifest/index.d.ts +0 -3
  401. package/dist/types/specification/v2/webapp/manifest/index.d.ts.map +0 -1
  402. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts +0 -11
  403. package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts.map +0 -1
  404. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts +0 -99
  405. package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts.map +0 -1
  406. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts +0 -32
  407. package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts.map +0 -1
  408. package/dist/types/sync/common/appProvider.d.ts.map +0 -1
  409. package/dist/types/sync/common/flexUtils.d.ts.map +0 -1
  410. package/dist/types/sync/common/generate/objectPage.d.ts.map +0 -1
  411. package/dist/types/sync/common/generate/utils.d.ts.map +0 -1
  412. package/dist/types/sync/common/types.d.ts.map +0 -1
  413. package/dist/types/sync/common/utils.d.ts.map +0 -1
  414. package/dist/types/sync/v2/application.d.ts.map +0 -1
  415. package/dist/types/sync/v2/export/controls/Action.d.ts +0 -29
  416. package/dist/types/sync/v2/export/controls/Action.d.ts.map +0 -1
  417. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts +0 -9
  418. package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +0 -1
  419. package/dist/types/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +0 -10
  420. package/dist/types/sync/v2/export/controls/Card.d.ts.map +0 -1
  421. package/dist/types/sync/v2/export/controls/Field.d.ts +0 -5
  422. package/dist/types/sync/v2/export/controls/Field.d.ts.map +0 -1
  423. package/dist/types/sync/v2/export/controls/FilterBar.d.ts.map +0 -1
  424. package/dist/types/sync/v2/export/controls/FormAction.d.ts +0 -16
  425. package/dist/types/sync/v2/export/controls/FormAction.d.ts.map +0 -1
  426. package/dist/types/sync/v2/export/controls/Fragment.d.ts.map +0 -1
  427. package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts +0 -20
  428. package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
  429. package/dist/types/sync/v2/export/controls/ObjectPageFooterAction.d.ts +0 -9
  430. package/dist/types/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +0 -1
  431. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts +0 -9
  432. package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts.map +0 -1
  433. package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +0 -9
  434. package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +0 -1
  435. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts +0 -8
  436. package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts.map +0 -1
  437. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +0 -45
  438. package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +0 -1
  439. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts +0 -43
  440. package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts.map +0 -1
  441. package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +0 -9
  442. package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
  443. package/dist/types/sync/v2/export/controls/Table.d.ts.map +0 -1
  444. package/dist/types/sync/v2/export/controls/TableColumn.d.ts +0 -39
  445. package/dist/types/sync/v2/export/controls/TableColumn.d.ts.map +0 -1
  446. package/dist/types/sync/v2/export/controls/ToolBar.d.ts +0 -5
  447. package/dist/types/sync/v2/export/controls/ToolBar.d.ts.map +0 -1
  448. package/dist/types/sync/v2/export/exportPage.d.ts.map +0 -1
  449. package/dist/types/sync/v2/export/manifest.d.ts.map +0 -1
  450. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts +0 -15
  451. package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts.map +0 -1
  452. package/dist/types/sync/v2/export/pages/ListReport.d.ts +0 -11
  453. package/dist/types/sync/v2/export/pages/ListReport.d.ts.map +0 -1
  454. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts +0 -16
  455. package/dist/types/sync/v2/export/pages/ObjectPage.d.ts.map +0 -1
  456. package/dist/types/sync/v2/export/pages/OverviewPage.d.ts.map +0 -1
  457. package/dist/types/sync/v2/export/view-controller-generator.d.ts.map +0 -1
  458. package/dist/types/sync/v2/generate/analyticalListReport.d.ts.map +0 -1
  459. package/dist/types/sync/v2/generate/generate.d.ts.map +0 -1
  460. package/dist/types/sync/v2/generate/listReport.d.ts.map +0 -1
  461. package/dist/types/sync/v2/generate/objectPage.d.ts.map +0 -1
  462. package/dist/types/sync/v2/generate/utils.d.ts.map +0 -1
  463. package/dist/types/sync/v2/import/app/appProvider.d.ts.map +0 -1
  464. package/dist/types/sync/v2/import/app/ovpProvider.d.ts.map +0 -1
  465. package/dist/types/sync/v2/import/common/index.d.ts.map +0 -1
  466. package/dist/types/sync/v2/import/controls/table.d.ts.map +0 -1
  467. package/dist/types/sync/v2/import/pages/analyticalListPage.d.ts.map +0 -1
  468. package/dist/types/sync/v2/import/pages/listReport.d.ts.map +0 -1
  469. package/dist/types/sync/v2/import/pages/objectPage.d.ts.map +0 -1
  470. package/dist/types/sync/v2/import/pages/overviewPage.d.ts.map +0 -1
  471. package/dist/types/sync/v2/import/utils.d.ts.map +0 -1
  472. package/dist/types/sync/v2/types.d.ts.map +0 -1
  473. package/dist/types/v2.d.ts +0 -3
  474. package/dist/types/v2.d.ts.map +0 -1
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
4
+ const appProvider_1 = require("../../../common/appProvider");
5
+ const common_1 = require("../common");
6
+ const listReport_1 = require("../pages/listReport");
7
+ const analyticalListPage_1 = require("../pages/analyticalListPage");
8
+ const objectPage_1 = require("../pages/objectPage");
9
+ const application_1 = require("../../application");
10
+ const common_2 = require("../../../common");
11
+ /**
12
+ * Method which generates id for passed page
13
+ * @param page - Generic Page object.
14
+ * @returns {string} Generated page id
15
+ */
16
+ function generateId(page) {
17
+ return common_2.generatePageId(common_2.getPageTypeV2(page.component.name), page.entitySet);
18
+ }
19
+ function getPageConfigsAndNavigations(page, v2Page, flex, manifest, schemas, fragments, pages) {
20
+ page.navigation = {};
21
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
22
+ const targets = getPagesAndConfigs(v2Page.pages, flex, manifest, schemas, fragments);
23
+ for (const pageId in targets) {
24
+ const target = targets[pageId];
25
+ pages[pageId] = target;
26
+ }
27
+ for (const v2ChildPageName in v2Page.pages) {
28
+ const id = generateId(v2Page.pages[v2ChildPageName]);
29
+ page.navigation[id] = targets[id].navigationProperty
30
+ ? `${page.entitySet}.${targets[id].navigationProperty}`
31
+ : page.entitySet;
32
+ }
33
+ }
34
+ /**
35
+ * Sets up page definitions, including the configurations for them
36
+ * @param {SapUiAppPagesV2} v2Pages - lisr of all pages
37
+ * @param flex - list of flexibility changes
38
+ * @param manifest - manifest.json of the app
39
+ * @param schemas - list of all app-specific schemas
40
+ * @param fragments - list of fragments
41
+ * @param {ExtensionLogger} logger - logger for messages
42
+ * @returns an index table of page definitions
43
+ */
44
+ function getPagesAndConfigs(v2Pages, flex, manifest, schemas, fragments, logger) {
45
+ const pages = {};
46
+ for (const v2PageName in v2Pages) {
47
+ const v2Page = v2Pages[v2PageName];
48
+ const id = generateId(v2Page);
49
+ const page = Object.assign(Object.assign({ pageType: common_2.getPageTypeV2(v2Page.component.name), entitySet: v2Page.entitySet }, (v2Page.navigationProperty && { navigationProperty: v2Page.navigationProperty })), (v2Page.defaultLayoutType && { defaultLayoutType: v2Page.defaultLayoutType }));
50
+ pages[id] = page;
51
+ // Get the JSON schema for the page. If no page specific schema exists, fall back top the generic schema for the page type
52
+ const jsonSchema = Object.keys(schemas).find((element) => element.includes(id)) ||
53
+ Object.keys(schemas).find((element) => element.includes(id.slice(0, -1))) ||
54
+ Object.keys(schemas).find((element) => element.includes(page.pageType));
55
+ // convert settings to config
56
+ if (jsonSchema) {
57
+ if (page.pageType === ux_specification_types_1.PageType.ListReport) {
58
+ const importParameters = {
59
+ manifest,
60
+ flex,
61
+ jsonSchema: schemas[jsonSchema],
62
+ fragments,
63
+ logger
64
+ };
65
+ page.config = listReport_1.createListReportConfig(importParameters);
66
+ }
67
+ else if (page.pageType === ux_specification_types_1.PageType.AnalyticalListPage) {
68
+ const importParameters = {
69
+ manifest,
70
+ flex,
71
+ jsonSchema: schemas[jsonSchema],
72
+ fragments,
73
+ logger
74
+ };
75
+ page.config = analyticalListPage_1.createAnalyticalListPageConfig(importParameters);
76
+ }
77
+ else {
78
+ const importParameters = {
79
+ manifest,
80
+ flex,
81
+ jsonSchema: schemas[jsonSchema],
82
+ entitySet: page.entitySet,
83
+ fragments,
84
+ logger
85
+ };
86
+ page.config = objectPage_1.createObjectPageConfigV2(importParameters);
87
+ }
88
+ }
89
+ if (v2Page.pages) {
90
+ getPageConfigsAndNavigations(page, v2Page, flex, manifest, schemas, fragments, pages);
91
+ }
92
+ }
93
+ return pages;
94
+ }
95
+ /**
96
+ * The V2AppProvider collects all the app information for a Fiori Elements V2 app
97
+ */
98
+ class V2AppProvider extends appProvider_1.AppProvider {
99
+ constructor(manifest, changes, schemas, fragments, logger) {
100
+ const v2Pages = manifest[ux_specification_types_1.ManifestSection.generic].pages;
101
+ const pageKey = Object.keys(v2Pages)[0];
102
+ // Import settings
103
+ const appSettings = new application_1.AppSettings();
104
+ const schemaFile = common_2.getSchemaFilePath(ux_specification_types_1.SchemaType.Application);
105
+ const appSchema = schemas[schemaFile.filename];
106
+ common_1.transferSettingsOfObject(appSettings, manifest, appSchema['definitions']['AppSettings'], undefined);
107
+ // Call base
108
+ super(manifest, schemas, generateId(v2Pages[pageKey]), getPagesAndConfigs(v2Pages, changes, manifest, schemas, fragments, logger), ux_specification_types_1.FioriElementsVersion.v2, appSettings);
109
+ }
110
+ }
111
+ exports.V2AppProvider = V2AppProvider;
112
+ /**
113
+ * Collects all pages of a V2 app from the manifest, by traversing the V2 page hierarchy.
114
+ * @param v2Pages - entry point = complex page definition in manifest
115
+ * @param componentName - Component name
116
+ * @returns index table of pages
117
+ */
118
+ function getPages(v2Pages, componentName) {
119
+ const pages = {};
120
+ for (const v2PageName in v2Pages) {
121
+ const v2Page = v2Pages[v2PageName];
122
+ if (v2Page.component.name === componentName) {
123
+ const id = generateId(v2Page);
124
+ pages[id] = v2Page;
125
+ }
126
+ if (componentName === ux_specification_types_1.v2.FE_TEMPLATE_V2_OBJECT_PAGE && v2Page.pages) {
127
+ const subPages = getPages(v2Page.pages, componentName);
128
+ for (const subPageId in subPages) {
129
+ pages[subPageId] = subPages[subPageId];
130
+ }
131
+ }
132
+ }
133
+ return pages;
134
+ }
135
+ exports.getPages = getPages;
136
+ //# sourceMappingURL=appProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appProvider.js","sourceRoot":"","sources":["../../../../../../src/sync/v2/import/app/appProvider.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Manifest } from '../../../../specification/common';
1
+ import type { Manifest } from '@sap/ux-specification-types';
2
2
  import { AppProvider } from '../../../common/appProvider';
3
3
  import type { Files } from '../../../common';
4
4
  import type { ExtensionLogger } from '../../../..';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ovpProvider.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v2/import/app/ovpProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAM,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAI1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAkC,MAAM,aAAa,CAAC;AAEnF,qBAAa,aAAc,SAAQ,WAAW;gBACvB,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,eAAe;CAyBlF"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
4
+ const appProvider_1 = require("../../../common/appProvider");
5
+ const common_1 = require("../common");
6
+ const overviewPage_1 = require("../pages/overviewPage");
7
+ const application_1 = require("../../application");
8
+ const common_2 = require("../../../common");
9
+ class V2OvpProvider extends appProvider_1.AppProvider {
10
+ constructor(manifest, schemas, logger) {
11
+ const pages = {};
12
+ const sapOvp = manifest[ux_specification_types_1.ManifestSection.ovp];
13
+ const appSettings = new application_1.AppSettings();
14
+ const schemaFile = common_2.getSchemaFilePath(ux_specification_types_1.SchemaType.Application);
15
+ common_1.transferSettingsOfObject(appSettings, manifest, schemas[schemaFile.filename]['definitions']['AppSettings'], undefined);
16
+ const jsonSchema = Object.keys(schemas).find((element) => element.includes(ux_specification_types_1.PageType.OverviewPage));
17
+ const parameters = {
18
+ manifest,
19
+ jsonSchema: schemas[jsonSchema]
20
+ };
21
+ const page = {
22
+ pageType: ux_specification_types_1.PageType.OverviewPage,
23
+ config: overviewPage_1.createOverviewPageConfig(parameters),
24
+ entitySet: sapOvp.globalFilterEntitySet
25
+ };
26
+ const id = common_2.generatePageId(page.pageType, page.entitySet);
27
+ pages[id] = page;
28
+ super(manifest, schemas, id, pages, ux_specification_types_1.FioriElementsVersion.v2, appSettings, logger);
29
+ }
30
+ }
31
+ exports.V2OvpProvider = V2OvpProvider;
32
+ //# sourceMappingURL=ovpProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ovpProvider.js","sourceRoot":"","sources":["../../../../../../src/sync/v2/import/app/ovpProvider.ts"],"names":[],"mappings":";;AACA,wEAA0G;AAC1G,6DAA0D;AAC1D,sCAAqD;AACrD,wDAAiE;AACjE,mDAAgD;AAEhD,4CAAoE;AAGpE,MAAa,aAAc,SAAQ,yBAAW;IAC1C,YAAmB,QAAkB,EAAE,OAAc,EAAE,MAAwB;QAC3E,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,QAAQ,CAAC,wCAAe,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;QACtC,MAAM,UAAU,GAAG,0BAAiB,CAAC,mCAAU,CAAC,WAAW,CAAC,CAAC;QAC7D,iCAAwB,CACpB,WAAW,EACX,QAAQ,EACR,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC,EAC1D,SAAS,CACZ,CAAC;QACF,MAAM,UAAU,GAAW,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,iCAAQ,CAAC,YAAY,CAAC,CAAC,CAAC;QAC3G,MAAM,UAAU,GAAmC;YAC/C,QAAQ;YACR,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC;SAClC,CAAC;QACF,MAAM,IAAI,GAAY;YAClB,QAAQ,EAAE,iCAAQ,CAAC,YAAY;YAC/B,MAAM,EAAE,uCAAwB,CAAC,UAAU,CAAC;YAC5C,SAAS,EAAE,MAAM,CAAC,qBAAqB;SAC1C,CAAC;QACF,MAAM,EAAE,GAAG,uBAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACzD,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;QACjB,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,6CAAoB,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;IACtF,CAAC;CACJ;AA1BD,sCA0BC"}
@@ -1,11 +1,8 @@
1
- import { PageType } from '../../../../specification/common/page';
2
- import type { ListReportConfig, AnalyticalListPageConfig, ObjectPageConfig } from '../../../../specification/v2/pages';
1
+ import { v2, PageType } from '@sap/ux-specification-types';
3
2
  import type { FileData, ObjectPageSectionData } from '../../../common';
4
- import type { Manifest } from '../../../../specification/common/webapp/manifest/Manifest';
5
- import type { SapUiAppPageV2 } from '../../../../specification/v2';
6
- import { TableTypeV2 } from '../../../../specification/v2';
3
+ import type { Manifest } from '@sap/ux-specification-types';
7
4
  import type { ExtensionLogger } from '../../../../apiTypes';
8
- export declare type LROPConfigsType = ListReportConfig | AnalyticalListPageConfig | ObjectPageConfig;
5
+ export declare type LROPConfigsType = v2.ListReportConfigV2 | v2.AnalyticalListPageConfigV2 | v2.ObjectPageConfigV2;
9
6
  export declare function convertActionKey(actionProperty: string): string;
10
7
  /**
11
8
  * Unescapes the selector ID of a flex change
@@ -20,7 +17,7 @@ export declare function convertSelector(selectorId: string): string;
20
17
  * @param {object} appSchema - application specific schema
21
18
  * @param {ExtensionLogger} logger - Logger class for logging messages
22
19
  */
23
- export declare function addFlex(config: ListReportConfig | AnalyticalListPageConfig, changeString: string, appSchema: object, logger?: ExtensionLogger): void;
20
+ export declare function addFlex(config: v2.ListReportConfigV2 | v2.AnalyticalListPageConfigV2, changeString: string, appSchema: object, logger?: ExtensionLogger): void;
24
21
  /**
25
22
  * Transfers settings from manifest to object page config
26
23
  * @param configPart - part of the configuration to be filled
@@ -39,7 +36,7 @@ export declare function transferSettingsOfObject(configPart: {
39
36
  * @param manifest - manifest.json file content of the app
40
37
  * @param pageKey - key of the page in the manifest
41
38
  */
42
- export declare function determineTableType(manifest: Manifest, pageKey: string): TableTypeV2;
39
+ export declare function determineTableType(manifest: Manifest, pageKey: string): v2.TableTypeV2;
43
40
  /**
44
41
  * Adds custom column information from manifest and fragments to the configuration
45
42
  * @param config - configuration, to be enhanced
@@ -49,5 +46,5 @@ export declare function determineTableType(manifest: Manifest, pageKey: string):
49
46
  * @param fragments - list of all fragments
50
47
  * @param objectPageSectionData - optional information, for object page
51
48
  */
52
- export declare function addFragments(config: LROPConfigsType, manifest: object, v2Page: SapUiAppPageV2, pageType: PageType, fragments?: FileData[], objectPageSectionData?: ObjectPageSectionData): void;
49
+ export declare function addFragments(config: LROPConfigsType, manifest: object, v2Page: v2.SapUiAppPageV2, pageType: PageType, fragments?: FileData[], objectPageSectionData?: ObjectPageSectionData): void;
53
50
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v2/import/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,EAAE,EAEF,QAAQ,EAGX,MAAM,6BAA6B,CAAC;AAGrC,OAAO,KAAK,EAAoB,QAAQ,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAUzF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAQ5D,oBAAY,eAAe,GAAG,EAAE,CAAC,kBAAkB,GAAG,EAAE,CAAC,0BAA0B,GAAG,EAAE,CAAC,kBAAkB,CAAC;AAE5G,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,MAAM,UAEtD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE1D;AA0LD;;;;;;GAMG;AACH,wBAAgB,OAAO,CACnB,MAAM,EAAE,EAAE,CAAC,kBAAkB,GAAG,EAAE,CAAC,0BAA0B,EAC7D,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,eAAe,GACzB,IAAI,CA6CN;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACpC,UAAU,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAClC,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,eAAe,EACxB,MAAM,CAAC,EAAE,MAAM,GAChB,IAAI,CAkBN;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,EAAE,CAAC,WAAW,CActF;AA4JD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CACxB,MAAM,EAAE,eAAe,EACvB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,QAAQ,EAAE,QAAQ,EAClB,SAAS,CAAC,EAAE,QAAQ,EAAE,EACtB,qBAAqB,CAAC,EAAE,qBAAqB,GAC9C,IAAI,CAqBN"}
@@ -0,0 +1,393 @@
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
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
7
+ const table_1 = require("../controls/table");
8
+ const common_1 = require("../../../common");
9
+ const decorators_1 = require("../../../common/decoration/decorators");
10
+ const manifest_1 = require("../../export/manifest");
11
+ const extensionLogger_1 = require("../../../../extensionLogger");
12
+ const i18next_1 = __importDefault(require("i18next"));
13
+ const xml_js_1 = require("xml-js");
14
+ const controls_1 = require("../../export/controls");
15
+ const types_1 = require("../../types");
16
+ function convertActionKey(actionProperty) {
17
+ return actionProperty.replace('/', '::');
18
+ }
19
+ exports.convertActionKey = convertActionKey;
20
+ /**
21
+ * Unescapes the selector ID of a flex change
22
+ * @param selectorId - escaped selector ID
23
+ * @returns unescaped ID
24
+ */
25
+ function convertSelector(selectorId) {
26
+ return selectorId.replace(/:2f/g, '/').replace(/:23/g, '#').replace(/:40/g, '@');
27
+ }
28
+ exports.convertSelector = convertSelector;
29
+ /**
30
+ * Adds flex changes to Smart Filter Bar in config file
31
+ * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
32
+ * @param {string} changePropertyKey - property key of current change
33
+ * @param {ChangeDefinition} change - change definition
34
+ * @param {object} jsonSchema - application specific schema
35
+ */
36
+ function addSmartFilterBarFlex(config, changePropertyKey, change, jsonSchema) {
37
+ var _a, _b, _c, _d;
38
+ const schemaProperty = ((_b = (_a = jsonSchema['definitions']) === null || _a === void 0 ? void 0 : _a['ListReportFilterBar']) === null || _b === void 0 ? void 0 : _b.properties[changePropertyKey]) || ((_d = (_c = jsonSchema['definitions']) === null || _c === void 0 ? void 0 : _c['AnalyticalListPageFilterBar']) === null || _d === void 0 ? void 0 : _d.properties[changePropertyKey]);
39
+ if (schemaProperty) {
40
+ config.filterBar[changePropertyKey] = change.content.newBinding
41
+ ? change.content.newBinding
42
+ : change.content.newValue;
43
+ }
44
+ }
45
+ /**
46
+ * Creates a map to connect action types to the correct schema definition and config part
47
+ * @param definitionType action type that will be filtered for
48
+ * @param jsonSchema application specific schema
49
+ * @returns {Map} actionMap - mapping of actionId, id for schema reference and id for config
50
+ */
51
+ function filterActions(definitionType, jsonSchema) {
52
+ const actions = Object.keys(jsonSchema['definitions']).filter((definition) => definition.startsWith(`${definitionType}`) && definition.includes('<'));
53
+ const actionMap = new Map();
54
+ actions.forEach((definitionActionId) => {
55
+ var _a;
56
+ const fullActionId = common_1.convertActionKeyToStableId((_a = definitionActionId.split('<')[1]) === null || _a === void 0 ? void 0 : _a.split('>')[0]);
57
+ const splitPoint = fullActionId.indexOf(':::');
58
+ if (fullActionId.startsWith('DataField') && splitPoint > -1) {
59
+ const actionIdParts = fullActionId.split(':::');
60
+ const sSemanticObject = actionIdParts.find((part) => part.startsWith('sSemanticObject'));
61
+ const sAction = actionIdParts.find((part) => part.startsWith('sAction'));
62
+ const shortAction = sAction.split('sAction::')[1].replace(':2f', '::');
63
+ if (sSemanticObject) {
64
+ const shortActionId = `${sSemanticObject.split('::')[1]}::${shortAction}`;
65
+ const shortDefinitionActionId = `${actionIdParts[0]}:::${sSemanticObject}:::${sAction}`;
66
+ actionMap.set(shortActionId, definitionActionId);
67
+ actionMap.set(definitionActionId, shortDefinitionActionId);
68
+ }
69
+ else {
70
+ actionMap.set(shortAction, definitionActionId);
71
+ actionMap.set(definitionActionId, fullActionId);
72
+ }
73
+ }
74
+ else {
75
+ actionMap.set(fullActionId.replace(':2f', '::'), definitionActionId);
76
+ actionMap.set(definitionActionId, fullActionId);
77
+ }
78
+ });
79
+ return actionMap;
80
+ }
81
+ /**
82
+ * Adds a new action column to config
83
+ * @param action - action part of config to be filled
84
+ * @param config - the config of ALP/LR
85
+ * @param configId - id of action to be used in config
86
+ */
87
+ function addColumnActionConfigPart(action, config, configId) {
88
+ if (!action.configPart) {
89
+ action.configPart = config.table.columns = {};
90
+ }
91
+ if (!action.configPart[`${configId}`]) {
92
+ action.configPart[`${configId}`] = {};
93
+ }
94
+ }
95
+ /**
96
+ * Adds flex changes to Actions in config file
97
+ * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
98
+ * @param {string} changePropertyKey - property key of current change
99
+ * @param {ChangeDefinition} change - change definition
100
+ * @param {object} jsonSchema - application specific schema
101
+ */
102
+ function addActionFlex(config, changePropertyKey, change, jsonSchema) {
103
+ const controlId = change.controlId.split('--action::')[1];
104
+ if (!controlId) {
105
+ return;
106
+ }
107
+ const actionId = convertSelector(controlId);
108
+ const actionTypes = [
109
+ {
110
+ name: types_1.ActionTypeV2.Footer,
111
+ configPart: config.footer.actions,
112
+ id: actionId.includes('Determining') && actionId.split('::Determining')[0]
113
+ },
114
+ { name: types_1.ActionTypeV2.ToolBar, configPart: config.table.toolBar.actions, id: actionId },
115
+ { name: types_1.ActionTypeV2.Column, configPart: config.table.columns, id: actionId }
116
+ ];
117
+ actionTypes.forEach((action) => {
118
+ var _a, _b;
119
+ const schemaActions = filterActions(action.name, jsonSchema);
120
+ if (schemaActions.has(action.id)) {
121
+ const referenceId = schemaActions.get(action.id);
122
+ const configId = (_a = referenceId.split('<')[1]) === null || _a === void 0 ? void 0 : _a.split('>')[0];
123
+ if (action.name === types_1.ActionTypeV2.Column) {
124
+ addColumnActionConfigPart(action, config, configId);
125
+ }
126
+ const configPart = action.configPart[configId];
127
+ const schemaProperty = (_b = jsonSchema.definitions[referenceId]) === null || _b === void 0 ? void 0 : _b.properties[changePropertyKey];
128
+ if (schemaProperty && configPart) {
129
+ configPart[changePropertyKey] = change.content.newBinding
130
+ ? change.content.newBinding
131
+ : change.content.newValue;
132
+ }
133
+ }
134
+ });
135
+ }
136
+ /**
137
+ * Adds flex changes to Smart Chart in config file
138
+ * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
139
+ * @param {string} changePropertyKey - property key of current change
140
+ * @param {ChangeDefinition} change - change definition
141
+ * @param {object} jsonSchema - application specific schema
142
+ */
143
+ function addSmartChartFlex(config, changePropertyKey, change, jsonSchema) {
144
+ var _a;
145
+ const schemaProperty = jsonSchema['definitions']['ChartSettings'].properties[changePropertyKey];
146
+ if (schemaProperty) {
147
+ const syncRule = decorators_1.getReflectMetadata(config[common_1.PropertyName.chart], changePropertyKey);
148
+ if ((_a = syncRule === null || syncRule === void 0 ? void 0 : syncRule.flex) === null || _a === void 0 ? void 0 : _a.importFlexValue) {
149
+ syncRule.flex.importFlexValue(change, config[common_1.PropertyName.chart], changePropertyKey);
150
+ }
151
+ else {
152
+ config[common_1.PropertyName.chart][changePropertyKey] = change.content.newBinding
153
+ ? change.content.newBinding
154
+ : change.content.newValue;
155
+ }
156
+ }
157
+ }
158
+ /**
159
+ * Checks and adds further flex changes to in config file
160
+ * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
161
+ * @param {ChangeDefinition} change - change definition
162
+ * @param {object} jsonSchema - application specific schema
163
+ */
164
+ function addAdditionalFlexChanges(config, change, jsonSchema) {
165
+ const flexForTransfer = {
166
+ controlId: change.controlId,
167
+ propertyId: change.content.property,
168
+ newValue: change.content.newBinding ? change.content.newBinding : change.content.newValue,
169
+ controlType: change.controlType,
170
+ creation: change.creation
171
+ };
172
+ let constructorName;
173
+ if ((!config.table.type || config.table.type === ux_specification_types_1.v2.TableTypeV2.ResponsiveTable) &&
174
+ !flexForTransfer.controlId.includes(ux_specification_types_1.PAGETYPE_VIEW_EXTENSION_TEMPLATE_MAP.get(ux_specification_types_1.PageType.AnalyticalListPage))) {
175
+ constructorName = 'ResponsiveTable';
176
+ }
177
+ else {
178
+ constructorName = config.table.constructor.name;
179
+ }
180
+ const schemaProperty = jsonSchema['definitions'][`${constructorName}<LineItems>`].properties[flexForTransfer.propertyId];
181
+ if (schemaProperty || flexForTransfer.controlType === ux_specification_types_1.ControlType.TableColumn) {
182
+ table_1.addFlexForTable(config.table, flexForTransfer, jsonSchema);
183
+ }
184
+ }
185
+ /**
186
+ * Adds flex changes to config file
187
+ * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
188
+ * @param {string} changeString - change file as string
189
+ * @param {object} appSchema - application specific schema
190
+ * @param {ExtensionLogger} logger - Logger class for logging messages
191
+ */
192
+ function addFlex(config, changeString, appSchema, logger) {
193
+ var _a, _b;
194
+ try {
195
+ const change = common_1.parseChangeString(changeString);
196
+ const changePropertyKey = change.content.property;
197
+ if (((_a = change.controlId) === null || _a === void 0 ? void 0 : _a.includes(ux_specification_types_1.PageType.ListReport)) || ((_b = change.controlId) === null || _b === void 0 ? void 0 : _b.includes(ux_specification_types_1.PageType.AnalyticalListPage))) {
198
+ change.controlId = convertSelector(change.controlId);
199
+ switch (change.controlType) {
200
+ case ux_specification_types_1.ControlType.SmartFilterBar: {
201
+ addSmartFilterBarFlex(config, changePropertyKey, change, appSchema);
202
+ break;
203
+ }
204
+ case ux_specification_types_1.ControlType.DynamicPage: {
205
+ const schemaProperty = appSchema['properties'][changePropertyKey];
206
+ if (schemaProperty) {
207
+ config[change.content.property] = change.content.newValue;
208
+ }
209
+ break;
210
+ }
211
+ case ux_specification_types_1.ControlType.Button: {
212
+ addActionFlex(config, changePropertyKey, change, appSchema);
213
+ break;
214
+ }
215
+ case ux_specification_types_1.ControlType.SmartChart: {
216
+ addSmartChartFlex(config, changePropertyKey, change, appSchema);
217
+ break;
218
+ }
219
+ default: {
220
+ addAdditionalFlexChanges(config, change, appSchema);
221
+ break;
222
+ }
223
+ }
224
+ }
225
+ }
226
+ catch (error) {
227
+ extensionLogger_1.log(logger, {
228
+ severity: "error" /* Error */,
229
+ message: i18next_1.default.t('FLEXERROR')
230
+ }, ...error);
231
+ }
232
+ }
233
+ exports.addFlex = addFlex;
234
+ /**
235
+ * Transfers settings from manifest to object page config
236
+ * @param configPart - part of the configuration to be filled
237
+ * @param manifest - manifest.json of the app
238
+ * @param appSchema - app specific schema
239
+ * @param pageID - ID of the given object page
240
+ * @param sectionId (optional) - ID of the given section (optional)
241
+ * @param {ExtensionLogger} logger - Logger class for logging messages
242
+ */
243
+ function transferSettingsOfObject(configPart, manifest, appSchema, pageKey, logger, kpiKey) {
244
+ if (!appSchema) {
245
+ return;
246
+ }
247
+ let manifestSection = {};
248
+ const deprecatedProperties = configPart.getDeprecated ? configPart.getDeprecated() : undefined;
249
+ if (appSchema['properties']) {
250
+ for (const propertyKey in appSchema['properties']) {
251
+ const syncRule = decorators_1.getReflectMetadata(configPart, propertyKey);
252
+ if (syncRule === null || syncRule === void 0 ? void 0 : syncRule.manifest) {
253
+ const path = syncRule.manifest.path([pageKey], manifest, kpiKey);
254
+ manifestSection = manifest_1.ensureManifestSectionByPathV2(manifest, path);
255
+ common_1.importProperty(syncRule, manifestSection, propertyKey, configPart);
256
+ common_1.checkDeprecatedProperties(deprecatedProperties, manifestSection, path, logger);
257
+ }
258
+ }
259
+ }
260
+ }
261
+ exports.transferSettingsOfObject = transferSettingsOfObject;
262
+ /**
263
+ * Determines the table type for a given LR or ALP table, based on the component name and its table settings
264
+ * This does not exactly reflect the run time behavior of Fiori elements but a best guess and expectation.
265
+ * @param manifest - manifest.json file content of the app
266
+ * @param pageKey - key of the page in the manifest
267
+ */
268
+ function determineTableType(manifest, pageKey) {
269
+ var _a, _b;
270
+ const page = manifest[ux_specification_types_1.ManifestSection.generic].pages[pageKey];
271
+ let tableType = ux_specification_types_1.v2.TableTypeV2.ResponsiveTable;
272
+ if (manifest[ux_specification_types_1.ManifestSection.generic].pages[pageKey].component.settings &&
273
+ ((manifest[ux_specification_types_1.ManifestSection.generic].pages[pageKey].component.settings.tableSettings &&
274
+ manifest[ux_specification_types_1.ManifestSection.generic].pages[pageKey].component.settings.tableSettings['type']) ||
275
+ manifest[ux_specification_types_1.ManifestSection.generic].pages[pageKey].component.settings['tableType'])) {
276
+ tableType = ((_b = (_a = page.component.settings) === null || _a === void 0 ? void 0 : _a.tableSettings) === null || _b === void 0 ? void 0 : _b['type']) || page.component.settings['tableType'];
277
+ }
278
+ else if (page.component.name === 'sap.suite.ui.generic.template.AnalyticalListPage') {
279
+ tableType = ux_specification_types_1.v2.TableTypeV2.AnalyticalTable;
280
+ }
281
+ return tableType;
282
+ }
283
+ exports.determineTableType = determineTableType;
284
+ function evaluateFragmentColumn(column, viewExtensionsOfPage, manifestKey, keyPart3, config, extensionType, cellsFragmentName) {
285
+ if (column['customData'] || column['table:customData']) {
286
+ const p13nData = column['customData']
287
+ ? column['customData']['core:CustomData']._attributes.value
288
+ : column['table:customData']['core:CustomData']._attributes.value;
289
+ const columnParts = JSON.parse(p13nData.substr(1, p13nData.length));
290
+ let columnText = column['Text'] && column['Text']._attributes && column['Text']._attributes['text'];
291
+ if (!columnText) {
292
+ columnText = column['Label'] && column['Label']._attributes && column['Label']._attributes['text'];
293
+ }
294
+ const customElement = Object.assign(Object.assign({ id: column._attributes && column._attributes['id'], text: columnText }, columnParts), { columnKey: columnParts['columnKey'], columnIndex: columnParts['columnIndex'] !== undefined ? Number(columnParts['columnIndex']) : undefined, leadingProperty: columnParts['leadingProperty'], className: viewExtensionsOfPage[manifestKey].className, fragmentName: viewExtensionsOfPage[manifestKey].fragmentName, tabKey: keyPart3, extensionType });
295
+ if (cellsFragmentName) {
296
+ customElement.cellsFragmentName = cellsFragmentName;
297
+ }
298
+ if (!config.table['columns']['custom']) {
299
+ config.table['columns']['custom'] = [];
300
+ }
301
+ const customColumns = config.table['columns']['custom'];
302
+ customColumns.push(customElement);
303
+ }
304
+ }
305
+ function determineCellsFragmentName(extensionType, viewExtensionsOfPage, keyEntitySet, referenceId) {
306
+ let cellsFragmentName;
307
+ if (extensionType === common_1.ViewTemplateType.ResponsiveTableColumnsExtension) {
308
+ for (const cellsKey of Object.keys(viewExtensionsOfPage)) {
309
+ const [cellsKeyType, cellsKeyEntitySet, cellsKeyTab] = cellsKey.split('|');
310
+ if (cellsKeyType === common_1.ViewTemplateType.ResponsiveTableCellsExtension &&
311
+ cellsKeyEntitySet === keyEntitySet &&
312
+ cellsKeyTab === referenceId) {
313
+ cellsFragmentName = viewExtensionsOfPage[cellsKey].fragmentName;
314
+ }
315
+ }
316
+ }
317
+ return cellsFragmentName;
318
+ }
319
+ function analzyeFilteredFragments(filteredFragments, config, viewExtensionsOfPage, manifestKey, keyTab, extensionType, cellsFragmentName) {
320
+ var _a;
321
+ if (filteredFragments[0]) {
322
+ const fragmentJson = JSON.parse(xml_js_1.xml2json(filteredFragments[0].fileContent, { compact: true }));
323
+ const fragmentDefintion = fragmentJson[controls_1.FRAGMENT_DEFINITION];
324
+ const columnDefinition = controls_1.getRootCustomColumnFromFragmentJSON(fragmentDefintion);
325
+ if (columnDefinition) {
326
+ if (!((_a = config[common_1.PropertyName.table]) === null || _a === void 0 ? void 0 : _a['columns'])) {
327
+ config[common_1.PropertyName.table]['columns'] = {};
328
+ }
329
+ if (Array.isArray(columnDefinition)) {
330
+ for (const def of columnDefinition) {
331
+ evaluateFragmentColumn(def, viewExtensionsOfPage, manifestKey, keyTab, config, extensionType, cellsFragmentName);
332
+ }
333
+ }
334
+ else {
335
+ evaluateFragmentColumn(columnDefinition, viewExtensionsOfPage, manifestKey, keyTab, config, extensionType, cellsFragmentName);
336
+ }
337
+ }
338
+ }
339
+ }
340
+ function processViewExtensions(viewExtensionsOfPage, targetKeyEntitySet, objectPageSectionData, config, fragments) {
341
+ for (const manifestKey of Object.keys(viewExtensionsOfPage)) {
342
+ const manifestKeyParts = manifestKey.split('|');
343
+ const [keyExtensionType, keyEntitySet] = manifestKeyParts;
344
+ // If Object Page section have key, then Ignore it as it is not from QuickVariantSelectionX
345
+ const referenceId = manifestKeyParts[2];
346
+ const keyTab = objectPageSectionData && referenceId === objectPageSectionData.key ? undefined : referenceId;
347
+ const extensionType = common_1.ViewTemplateType[keyExtensionType];
348
+ if (extensionType && '|' + keyEntitySet === targetKeyEntitySet) {
349
+ const fragmentType = viewExtensionsOfPage[manifestKey].type
350
+ ? viewExtensionsOfPage[manifestKey].type.toLowerCase()
351
+ : 'xml';
352
+ let fragmentName = viewExtensionsOfPage[manifestKey].fragmentName;
353
+ if (!fragmentName) {
354
+ continue;
355
+ }
356
+ // Responsive Table ==> check cells' fragment name
357
+ const cellsFragmentName = determineCellsFragmentName(extensionType, viewExtensionsOfPage, keyEntitySet, referenceId);
358
+ // Retrieve information from fragment
359
+ const fragmentParts = fragmentName.split('.');
360
+ fragmentName = fragmentParts[fragmentParts.length - 1] + common_1.FRAGMENTNAMEPART + fragmentType;
361
+ const filteredFragments = fragments.filter((fragment) => fragment['dataSourceUri'].endsWith(fragmentName));
362
+ analzyeFilteredFragments(filteredFragments, config, viewExtensionsOfPage, manifestKey, keyTab, extensionType, cellsFragmentName);
363
+ }
364
+ }
365
+ }
366
+ /**
367
+ * Adds custom column information from manifest and fragments to the configuration
368
+ * @param config - configuration, to be enhanced
369
+ * @param manifest - actual manifest.json
370
+ * @param v2Page - actual page in the manifest
371
+ * @param pageType - type of the page
372
+ * @param fragments - list of all fragments
373
+ * @param objectPageSectionData - optional information, for object page
374
+ */
375
+ function addFragments(config, manifest, v2Page, pageType, fragments, objectPageSectionData) {
376
+ if (!fragments) {
377
+ return;
378
+ }
379
+ const targetKeyEntitySet = '|' + (objectPageSectionData && objectPageSectionData.target ? objectPageSectionData.target : v2Page.entitySet);
380
+ if (manifest[ux_specification_types_1.ManifestSection.ui5] &&
381
+ manifest[ux_specification_types_1.ManifestSection.ui5]['extends'] &&
382
+ manifest[ux_specification_types_1.ManifestSection.ui5]['extends']['extensions'] &&
383
+ manifest[ux_specification_types_1.ManifestSection.ui5]['extends']['extensions']['sap.ui.viewExtensions']) {
384
+ const viewExtension = ux_specification_types_1.PAGETYPE_VIEW_EXTENSION_TEMPLATE_MAP.get(pageType);
385
+ const viewExtensionsOfPage = manifest[ux_specification_types_1.ManifestSection.ui5]['extends']['extensions']['sap.ui.viewExtensions'][viewExtension];
386
+ if (!viewExtensionsOfPage) {
387
+ return;
388
+ }
389
+ processViewExtensions(viewExtensionsOfPage, targetKeyEntitySet, objectPageSectionData, config, fragments);
390
+ }
391
+ }
392
+ exports.addFragments = addFragments;
393
+ //# sourceMappingURL=index.js.map