@sap/ux-specification 1.139.4 → 1.139.6

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 (272) hide show
  1. package/CHANGELOG.md +66 -1
  2. package/dist/documentation/v2/v2-AnalyticalListPage.html +2 -2
  3. package/dist/documentation/v2/v2-ApplicationV2.html +2 -2
  4. package/dist/documentation/v2/v2-ListReport.html +2 -2
  5. package/dist/documentation/v2/v2-ListReportNew.html +2 -2
  6. package/dist/documentation/v2/v2-ObjectPage.html +2 -2
  7. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  8. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  9. package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
  10. package/dist/documentation/v4/v4-FreestylePage.html +2 -2
  11. package/dist/documentation/v4/v4-ListReport.html +2 -2
  12. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  13. package/dist/index-min.js +251 -254
  14. package/dist/index-min.js.map +4 -4
  15. package/dist/schemas/v2/ApplicationV2.json +46 -12
  16. package/dist/schemas/v2/ListReportNewConfig.json +136 -0
  17. package/dist/schemas/v2/ObjectPageConfig.json +11 -5
  18. package/dist/schemas/v4/ApplicationV4.json +61 -28
  19. package/dist/schemas/v4/BuildingBlocksConfig.json +163 -640
  20. package/dist/schemas/v4/ListReportConfig.json +248 -9
  21. package/dist/schemas/v4/ObjectPageConfig.json +269 -3
  22. package/dist/specification/package.json +16 -16
  23. package/dist/specification/scripts/macros/schema.d.ts +7 -0
  24. package/dist/specification/scripts/macros/schema.d.ts.map +1 -1
  25. package/dist/specification/scripts/macros/schema.js +61 -14
  26. package/dist/specification/scripts/macros/schema.js.map +1 -1
  27. package/dist/specification/scripts/macros/types.d.ts +1 -0
  28. package/dist/specification/scripts/macros/types.d.ts.map +1 -1
  29. package/dist/specification/scripts/schema/to-json-schema.d.ts.map +1 -1
  30. package/dist/specification/scripts/schema/to-json-schema.js +64 -9
  31. package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
  32. package/dist/specification/src/sync/common/ManifestDrivenSchemaProcessor.d.ts.map +1 -1
  33. package/dist/specification/src/sync/common/ManifestDrivenSchemaProcessor.js +1 -0
  34. package/dist/specification/src/sync/common/ManifestDrivenSchemaProcessor.js.map +1 -1
  35. package/dist/specification/src/sync/common/decoration/decorators.d.ts +65 -4
  36. package/dist/specification/src/sync/common/decoration/decorators.d.ts.map +1 -1
  37. package/dist/specification/src/sync/common/decoration/decorators.js +138 -8
  38. package/dist/specification/src/sync/common/decoration/decorators.js.map +1 -1
  39. package/dist/specification/src/sync/common/distTagEvaluator.d.ts +10 -3
  40. package/dist/specification/src/sync/common/distTagEvaluator.d.ts.map +1 -1
  41. package/dist/specification/src/sync/common/distTagEvaluator.js +14 -4
  42. package/dist/specification/src/sync/common/distTagEvaluator.js.map +1 -1
  43. package/dist/specification/src/sync/common/dist_tag.json +9 -5
  44. package/dist/specification/src/sync/common/generate/objectPage.d.ts +10 -1
  45. package/dist/specification/src/sync/common/generate/objectPage.d.ts.map +1 -1
  46. package/dist/specification/src/sync/common/generate/objectPage.js +63 -7
  47. package/dist/specification/src/sync/common/generate/objectPage.js.map +1 -1
  48. package/dist/specification/src/sync/common/generate/utils.d.ts +11 -4
  49. package/dist/specification/src/sync/common/generate/utils.d.ts.map +1 -1
  50. package/dist/specification/src/sync/common/generate/utils.js +32 -20
  51. package/dist/specification/src/sync/common/generate/utils.js.map +1 -1
  52. package/dist/specification/src/sync/common/i18n.json +9 -2
  53. package/dist/specification/src/sync/common/rules.d.ts +1 -0
  54. package/dist/specification/src/sync/common/rules.d.ts.map +1 -1
  55. package/dist/specification/src/sync/common/rules.js +38 -13
  56. package/dist/specification/src/sync/common/rules.js.map +1 -1
  57. package/dist/specification/src/sync/common/utils.d.ts +64 -0
  58. package/dist/specification/src/sync/common/utils.d.ts.map +1 -1
  59. package/dist/specification/src/sync/common/utils.js +149 -15
  60. package/dist/specification/src/sync/common/utils.js.map +1 -1
  61. package/dist/specification/src/sync/v2/application.d.ts +1 -0
  62. package/dist/specification/src/sync/v2/application.d.ts.map +1 -1
  63. package/dist/specification/src/sync/v2/application.js +18 -0
  64. package/dist/specification/src/sync/v2/application.js.map +1 -1
  65. package/dist/specification/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -1
  66. package/dist/specification/src/sync/v2/export/exportPage.d.ts.map +1 -1
  67. package/dist/specification/src/sync/v2/export/exportPage.js +15 -4
  68. package/dist/specification/src/sync/v2/export/exportPage.js.map +1 -1
  69. package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts.map +1 -1
  70. package/dist/specification/src/sync/v2/export/exportPageGeneric.js +6 -12
  71. package/dist/specification/src/sync/v2/export/exportPageGeneric.js.map +1 -1
  72. package/dist/specification/src/sync/v2/export/factory.d.ts +26 -0
  73. package/dist/specification/src/sync/v2/export/factory.d.ts.map +1 -1
  74. package/dist/specification/src/sync/v2/export/factory.js +3 -3
  75. package/dist/specification/src/sync/v2/export/factory.js.map +1 -1
  76. package/dist/specification/src/sync/v2/export/pages/ObjectPage.d.ts +1 -0
  77. package/dist/specification/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -1
  78. package/dist/specification/src/sync/v2/export/pages/ObjectPage.js +11 -0
  79. package/dist/specification/src/sync/v2/export/pages/ObjectPage.js.map +1 -1
  80. package/dist/specification/src/sync/v2/generate/listReport.d.ts.map +1 -1
  81. package/dist/specification/src/sync/v2/generate/listReport.js +46 -1
  82. package/dist/specification/src/sync/v2/generate/listReport.js.map +1 -1
  83. package/dist/specification/src/sync/v2/generate/manifestPropertyUtils.d.ts +1 -2
  84. package/dist/specification/src/sync/v2/generate/manifestPropertyUtils.d.ts.map +1 -1
  85. package/dist/specification/src/sync/v2/generate/objectPage.d.ts.map +1 -1
  86. package/dist/specification/src/sync/v2/generate/objectPage.js +63 -13
  87. package/dist/specification/src/sync/v2/generate/objectPage.js.map +1 -1
  88. package/dist/specification/src/sync/v2/generate/schemaAdaptation.d.ts +1 -1
  89. package/dist/specification/src/sync/v2/generate/schemaAdaptation.d.ts.map +1 -1
  90. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js +4 -1
  91. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js.map +1 -1
  92. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts +8 -0
  93. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts.map +1 -1
  94. package/dist/specification/src/sync/v2/generate/stableIdUtils.js +1 -0
  95. package/dist/specification/src/sync/v2/generate/stableIdUtils.js.map +1 -1
  96. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js +3 -2
  97. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js.map +1 -1
  98. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.d.ts +78 -0
  99. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.d.ts.map +1 -0
  100. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js +454 -0
  101. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js.map +1 -0
  102. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.d.ts +22 -0
  103. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.d.ts.map +1 -0
  104. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.js +124 -0
  105. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiViewSingleTable.js.map +1 -0
  106. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts +55 -0
  107. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts.map +1 -0
  108. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js +152 -0
  109. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js.map +1 -0
  110. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts +3 -0
  111. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts.map +1 -1
  112. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js +3 -0
  113. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js.map +1 -1
  114. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.d.ts +4 -2
  115. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.d.ts.map +1 -1
  116. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.js +61 -23
  117. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.js.map +1 -1
  118. package/dist/specification/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -1
  119. package/dist/specification/src/sync/v2/import/pages/overviewPage.js +32 -13
  120. package/dist/specification/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  121. package/dist/specification/src/sync/v2/utils.d.ts +23 -0
  122. package/dist/specification/src/sync/v2/utils.d.ts.map +1 -1
  123. package/dist/specification/src/sync/v2/utils.js +67 -0
  124. package/dist/specification/src/sync/v2/utils.js.map +1 -1
  125. package/dist/specification/src/sync/v4/application.d.ts +4 -0
  126. package/dist/specification/src/sync/v4/application.d.ts.map +1 -1
  127. package/dist/specification/src/sync/v4/application.js +51 -1
  128. package/dist/specification/src/sync/v4/application.js.map +1 -1
  129. package/dist/specification/src/sync/v4/export/controls/Header.d.ts +3 -2
  130. package/dist/specification/src/sync/v4/export/controls/Header.d.ts.map +1 -1
  131. package/dist/specification/src/sync/v4/export/controls/Header.js +14 -2
  132. package/dist/specification/src/sync/v4/export/controls/Header.js.map +1 -1
  133. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts +3 -1
  134. package/dist/specification/src/sync/v4/export/controls/HeaderAction.d.ts.map +1 -1
  135. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js +17 -2
  136. package/dist/specification/src/sync/v4/export/controls/HeaderAction.js.map +1 -1
  137. package/dist/specification/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts +3 -1
  138. package/dist/specification/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts.map +1 -1
  139. package/dist/specification/src/sync/v4/export/controls/ObjectPageFooterAction.js +20 -0
  140. package/dist/specification/src/sync/v4/export/controls/ObjectPageFooterAction.js.map +1 -1
  141. package/dist/specification/src/sync/v4/export/controls/ObjectPageForm.d.ts +6 -2
  142. package/dist/specification/src/sync/v4/export/controls/ObjectPageForm.d.ts.map +1 -1
  143. package/dist/specification/src/sync/v4/export/controls/ObjectPageForm.js +27 -4
  144. package/dist/specification/src/sync/v4/export/controls/ObjectPageForm.js.map +1 -1
  145. package/dist/specification/src/sync/v4/export/controls/ObjectPageFormAction.d.ts +1 -0
  146. package/dist/specification/src/sync/v4/export/controls/ObjectPageFormAction.d.ts.map +1 -1
  147. package/dist/specification/src/sync/v4/export/controls/ObjectPageFormAction.js +10 -0
  148. package/dist/specification/src/sync/v4/export/controls/ObjectPageFormAction.js.map +1 -1
  149. package/dist/specification/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts +7 -2
  150. package/dist/specification/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts.map +1 -1
  151. package/dist/specification/src/sync/v4/export/controls/ObjectPageHeaderAction.js +37 -4
  152. package/dist/specification/src/sync/v4/export/controls/ObjectPageHeaderAction.js.map +1 -1
  153. package/dist/specification/src/sync/v4/export/controls/ObjectPageSectionAction.d.ts +1 -0
  154. package/dist/specification/src/sync/v4/export/controls/ObjectPageSectionAction.d.ts.map +1 -1
  155. package/dist/specification/src/sync/v4/export/controls/ObjectPageSectionAction.js +10 -0
  156. package/dist/specification/src/sync/v4/export/controls/ObjectPageSectionAction.js.map +1 -1
  157. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.d.ts +2 -0
  158. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -1
  159. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.js +10 -0
  160. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -1
  161. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +4 -0
  162. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -1
  163. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.js +30 -0
  164. package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
  165. package/dist/specification/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +7 -2
  166. package/dist/specification/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +1 -1
  167. package/dist/specification/src/sync/v4/export/controls/ObjectPageToolBarAction.js +36 -3
  168. package/dist/specification/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -1
  169. package/dist/specification/src/sync/v4/export/controls/Table.d.ts +3 -0
  170. package/dist/specification/src/sync/v4/export/controls/Table.d.ts.map +1 -1
  171. package/dist/specification/src/sync/v4/export/controls/Table.js +40 -23
  172. package/dist/specification/src/sync/v4/export/controls/Table.js.map +1 -1
  173. package/dist/specification/src/sync/v4/export/controls/TableColumn.d.ts +7 -0
  174. package/dist/specification/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -1
  175. package/dist/specification/src/sync/v4/export/controls/TableColumn.js +60 -0
  176. package/dist/specification/src/sync/v4/export/controls/TableColumn.js.map +1 -1
  177. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.d.ts +14 -4
  178. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -1
  179. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.js +75 -9
  180. package/dist/specification/src/sync/v4/export/controls/ToolBarAction.js.map +1 -1
  181. package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
  182. package/dist/specification/src/sync/v4/export/fpmCustomPage.js +13 -3
  183. package/dist/specification/src/sync/v4/export/fpmCustomPage.js.map +1 -1
  184. package/dist/specification/src/sync/v4/export/pages/ListReport.d.ts.map +1 -1
  185. package/dist/specification/src/sync/v4/export/pages/ListReport.js +2 -1
  186. package/dist/specification/src/sync/v4/export/pages/ListReport.js.map +1 -1
  187. package/dist/specification/src/sync/v4/generate/ListReportUtils.d.ts +107 -0
  188. package/dist/specification/src/sync/v4/generate/ListReportUtils.d.ts.map +1 -0
  189. package/dist/specification/src/sync/v4/generate/ListReportUtils.js +392 -0
  190. package/dist/specification/src/sync/v4/generate/ListReportUtils.js.map +1 -0
  191. package/dist/specification/src/sync/v4/generate/listReport.d.ts +107 -2
  192. package/dist/specification/src/sync/v4/generate/listReport.d.ts.map +1 -1
  193. package/dist/specification/src/sync/v4/generate/listReport.js +176 -91
  194. package/dist/specification/src/sync/v4/generate/listReport.js.map +1 -1
  195. package/dist/specification/src/sync/v4/generate/objectPage.d.ts +1 -0
  196. package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  197. package/dist/specification/src/sync/v4/generate/objectPage.js +64 -8
  198. package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
  199. package/dist/specification/src/sync/v4/sync-rules/App.d.ts +141 -0
  200. package/dist/specification/src/sync/v4/sync-rules/App.d.ts.map +1 -0
  201. package/dist/specification/src/sync/v4/sync-rules/App.js +208 -0
  202. package/dist/specification/src/sync/v4/sync-rules/App.js.map +1 -0
  203. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts +193 -0
  204. package/dist/specification/src/sync/v4/sync-rules/AppSchema.d.ts.map +1 -0
  205. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js +384 -0
  206. package/dist/specification/src/sync/v4/sync-rules/AppSchema.js.map +1 -0
  207. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts +172 -0
  208. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.d.ts.map +1 -0
  209. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js +410 -0
  210. package/dist/specification/src/sync/v4/sync-rules/DecoratorClass.js.map +1 -0
  211. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts +70 -0
  212. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts.map +1 -0
  213. package/dist/specification/src/sync/v4/sync-rules/Page.js +73 -0
  214. package/dist/specification/src/sync/v4/sync-rules/Page.js.map +1 -0
  215. package/dist/specification/src/sync/v4/sync-rules/utils.d.ts +9 -0
  216. package/dist/specification/src/sync/v4/sync-rules/utils.d.ts.map +1 -0
  217. package/dist/specification/src/sync/v4/sync-rules/utils.js +43 -0
  218. package/dist/specification/src/sync/v4/sync-rules/utils.js.map +1 -0
  219. package/dist/specification/src/sync/v4/utils/utils.d.ts +16 -4
  220. package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
  221. package/dist/specification/src/sync/v4/utils/utils.js +100 -26
  222. package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
  223. package/dist/types/src/common/types.d.ts +114 -3
  224. package/dist/types/src/common/types.d.ts.map +1 -1
  225. package/dist/types/src/common/types.js +8 -0
  226. package/dist/types/src/common/types.js.map +1 -1
  227. package/dist/types/src/common/webapp/manifest/Manifest.d.ts +1 -1
  228. package/dist/types/src/common/webapp/manifest/Manifest.d.ts.map +1 -1
  229. package/dist/types/src/v2/application.d.ts +18 -0
  230. package/dist/types/src/v2/application.d.ts.map +1 -1
  231. package/dist/types/src/v2/controls/ObjectPageHeaderSection.d.ts.map +1 -1
  232. package/dist/types/src/v2/controls/ObjectPageTable.d.ts +4 -4
  233. package/dist/types/src/v2/controls/ObjectPageTable.d.ts.map +1 -1
  234. package/dist/types/src/v2/controls/Table.d.ts.map +1 -1
  235. package/dist/types/src/v2/pages/ObjectPageConfigV2.d.ts +10 -1
  236. package/dist/types/src/v2/pages/ObjectPageConfigV2.d.ts.map +1 -1
  237. package/dist/types/src/v4/application.d.ts +13 -6
  238. package/dist/types/src/v4/application.d.ts.map +1 -1
  239. package/dist/types/src/v4/controls/Action.d.ts +16 -0
  240. package/dist/types/src/v4/controls/Action.d.ts.map +1 -0
  241. package/dist/types/src/v4/controls/Action.js +11 -0
  242. package/dist/types/src/v4/controls/Action.js.map +1 -0
  243. package/dist/types/src/v4/controls/CustomAction.d.ts +2 -1
  244. package/dist/types/src/v4/controls/CustomAction.d.ts.map +1 -1
  245. package/dist/types/src/v4/controls/CustomAction.js.map +1 -1
  246. package/dist/types/src/v4/controls/ObjectPageFooter.d.ts +2 -1
  247. package/dist/types/src/v4/controls/ObjectPageFooter.d.ts.map +1 -1
  248. package/dist/types/src/v4/controls/ObjectPageForm.d.ts +6 -3
  249. package/dist/types/src/v4/controls/ObjectPageForm.d.ts.map +1 -1
  250. package/dist/types/src/v4/controls/ObjectPageHeader.d.ts +6 -3
  251. package/dist/types/src/v4/controls/ObjectPageHeader.d.ts.map +1 -1
  252. package/dist/types/src/v4/controls/ObjectPageHeaderSection.d.ts.map +1 -1
  253. package/dist/types/src/v4/controls/ObjectPageSection.d.ts.map +1 -1
  254. package/dist/types/src/v4/controls/ObjectPageTable.d.ts +7 -0
  255. package/dist/types/src/v4/controls/ObjectPageTable.d.ts.map +1 -1
  256. package/dist/types/src/v4/controls/ObjectPageTable.js.map +1 -1
  257. package/dist/types/src/v4/controls/ObjectPageToolBar.d.ts +10 -7
  258. package/dist/types/src/v4/controls/ObjectPageToolBar.d.ts.map +1 -1
  259. package/dist/types/src/v4/controls/Table.d.ts +14 -1
  260. package/dist/types/src/v4/controls/Table.d.ts.map +1 -1
  261. package/dist/types/src/v4/controls/Table.js.map +1 -1
  262. package/dist/types/src/v4/controls/ToolBar.d.ts +32 -10
  263. package/dist/types/src/v4/controls/ToolBar.d.ts.map +1 -1
  264. package/dist/types/src/v4/controls/ToolBar.js.map +1 -1
  265. package/dist/types/src/v4/controls/index.d.ts +1 -0
  266. package/dist/types/src/v4/controls/index.d.ts.map +1 -1
  267. package/dist/types/src/v4/controls/index.js +1 -0
  268. package/dist/types/src/v4/controls/index.js.map +1 -1
  269. package/dist/types/src/v4/webapp/manifest/ManifestSettings.d.ts +59 -0
  270. package/dist/types/src/v4/webapp/manifest/ManifestSettings.d.ts.map +1 -1
  271. package/dist/types/src/v4/webapp/manifest/ManifestSettings.js.map +1 -1
  272. package/package.json +16 -16
@@ -1,11 +1,12 @@
1
1
  import { type LineItemDataForSchema } from '../utils/utils';
2
- import { Visualization } from '@sap/ux-specification-types';
2
+ import { TemplateType, Visualization } from '@sap/ux-specification-types';
3
3
  import type { ExtensionLogger, v4, GenerateAppSchemaParameters } from '@sap/ux-specification-types';
4
4
  import type { AnnotationTerm, EntityType, ConvertedMetadata } from '@sap-ux/vocabularies-types';
5
5
  import type { SelectionFields } from '@sap-ux/vocabularies-types/vocabularies/UI';
6
+ import { type ManifestPathParams } from '../../common';
6
7
  import type { Definition } from 'typescript-json-schema';
8
+ import { Page } from '../sync-rules/Page';
7
9
  export interface SchemaAdjustmentParameters {
8
- generateParameters: GenerateAppSchemaParameters;
9
10
  appSchema: Definition;
10
11
  v4Page: v4.SapUiAppPageV4;
11
12
  tableDefinitionId: string;
@@ -25,6 +26,32 @@ export interface SchemaAdjustmentParameters {
25
26
  * @returns {Definition} - the updated selection fields definition
26
27
  */
27
28
  export declare function addSelectionFields(entityType: EntityType, appSchema: Definition, selectionFieldsAnnotation: AnnotationTerm<SelectionFields>, selectionFieldsDefinition?: Definition, qualifier?: string): Definition;
29
+ /**
30
+ * Returns visual filters (if defined) from manifest page.
31
+ *
32
+ * @param v4Page - actual page in the manifest
33
+ * @returns - The visual filters object if defined, otherwise undefined.
34
+ */
35
+ export declare function getVisualFilters(v4Page: v4.SapUiAppPageV4): {} | undefined;
36
+ /**
37
+ * Adds visual filters to the app schema, as properties of the FilterBar.
38
+ *
39
+ * @param {EntityType} entityType - the entity type as part of the AVT ConvertedMetadata
40
+ * @param {Definition} appSchema - the app specific schema that shall get enhanced
41
+ * @param visualFiltersManifest - the UI.SelectionFields under controlConfiguration
42
+ * @param selectionFields - The selection fields annotation to be processed
43
+ */
44
+ export declare function addVisualFilters(entityType: EntityType, appSchema: Definition, visualFiltersManifest: any, selectionFields: AnnotationTerm<SelectionFields>): void;
45
+ /**
46
+ * Method updates schema for custom filter fields:
47
+ * 1. Enables creation of custom filter fields.
48
+ * 2. Populates custom filter fields from manifest to schema.
49
+ *
50
+ * @param appSchema - the app specific schema that shall get enhanced
51
+ * @param selectionFieldsDefinition - schema of selection fields which should contain custom filter fields
52
+ * @param v4Page - actual page in the manifest
53
+ */
54
+ export declare function applyCustomFilterFields(appSchema: Definition, selectionFieldsDefinition: Definition, v4Page: v4.SapUiAppPageV4): void;
28
55
  /**
29
56
  * An annotationPath must be analyzed, to find the right target annotation and visualization.
30
57
  *
@@ -45,6 +72,84 @@ export declare function analyzeViewAnnotation(annotationPath: string, uIAnnotati
45
72
  namespace: string;
46
73
  title: string;
47
74
  };
75
+ /**
76
+ * Adds the ALP views to the app-specific schema.
77
+ *
78
+ * @param appSchema - app-specific JSON schema
79
+ * @param viewsPaths - views' paths' section in the manifest
80
+ * @param generateParameters - list of API input parameters
81
+ * @param templateAnnotation - defaultTemplateAnnotationPath as registered in manifest
82
+ * @param v4Page - actual page in the manifest
83
+ * @param tableDefinitionName - The name of the table definition in the schema
84
+ */
85
+ export declare function addALPViews(appSchema: Definition, viewsPaths: Array<object>, generateParameters: GenerateAppSchemaParameters, templateAnnotation: string, v4Page: v4.SapUiAppPageV4, tableDefinitionName: string): void;
86
+ export type ViewsParameters = {
87
+ viewKey: string;
88
+ appSchema: Definition;
89
+ targetAnnotation: string;
90
+ navPropName: string;
91
+ targetEntityType: EntityType;
92
+ title: string;
93
+ entitySet?: string;
94
+ };
95
+ /**
96
+ * Adjusts the schema for a table by making necessary changes such as populating creation fields,
97
+ * adjusting creation field definitions, and adding enum mappings for mass edit functionalities.
98
+ *
99
+ * @param {SchemaAdjustmentParameters} schemaAdjustmentParameters - Object containing the parameters required for schema adjustments. Includes the generate parameters, application schema, table definition ID, and facet definition ID.
100
+ * @returns {void} This function does not return a value; it performs in-place adjustments to the schema provided through the input parameters.
101
+ */
102
+ export declare function applyLRTableSchemaAdjustments(schemaAdjustmentParameters: SchemaAdjustmentParameters): void;
103
+ /**
104
+ * Adds the schema tags to a given view.
105
+ *
106
+ * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
107
+ * @param viewKey - key property of the view
108
+ * @param namespace - target namespace for annotations
109
+ * @param view - the given view
110
+ */
111
+ export declare function addTagsToView(viewsDefinition: Definition, viewKey: string, namespace: string, view: object): void;
112
+ /**
113
+ * Adds definition parts to a LR View (LineItem/Chart).
114
+ *
115
+ * @param visualization - visualization of the annotation
116
+ * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
117
+ * @param commonInputParameters - list of input parameters as collected by the calling instance
118
+ * @param generateParameters - list of API input parameters
119
+ * @param generateParameters.serviceAVT - OData service AVT information
120
+ * @param generateParameters.entityType - entity type of the current page
121
+ * @param generateParameters.logger - extension logger
122
+ * @param page - the current page object
123
+ * @param uiAnnotations - UI annotations of the given entityType
124
+ * @param view - the given view
125
+ */
126
+ export declare function addLRViewParts(visualization: string, viewsDefinition: Definition, commonInputParameters: ViewsParameters, { serviceAVT, entityType, logger }: Partial<GenerateAppSchemaParameters>, page: Page, uiAnnotations: object, view: object): void;
127
+ /**
128
+ * Checks for the default annotation path to use for LR table.
129
+ *
130
+ * @param v4Page - actual page in the manifest
131
+ * @param entityType - actual entity type (AVT information)
132
+ * @param templateType - The type of template being used (e.g., ListReportObjectPageV4 or AnalyticalListPageV4)
133
+ * @returns annotation term
134
+ */
135
+ export declare function getDefaultAnnotationPath(v4Page: v4.SapUiAppPageV4, entityType: EntityType, templateType: TemplateType): string | undefined;
136
+ /**
137
+ * Adds header actions to schema (LR or ALP).
138
+ *
139
+ * @param appSchema - app-specific JSON schema
140
+ * @param v4Page - actual page in the manifest
141
+ * @param logger - Logger class for logging messages
142
+ */
143
+ export declare function addHeaderActions(appSchema: Definition, v4Page: v4.SapUiAppPageV4, logger: ExtensionLogger): void;
144
+ /**
145
+ * Adds 'manifestPath' to each property in a definition based on metadata sync rules.
146
+ *
147
+ * @param appSchema - Full schema.
148
+ * @param definitionName - The name of the definition/class whose properties are being processed.
149
+ * @param definition - The definition object containing property schemas.
150
+ * @param pathParams - Additional context required to compute manifest paths.
151
+ */
152
+ export declare function addManifestPathsToPropertiesLR(appSchema: Definition, definitionName: string | undefined, definition: Definition, pathParams: ManifestPathParams): void;
48
153
  /**
49
154
  * Generates an app specific schema for the FE V4 ListReport from the generic schema.
50
155
  * Generic types are replaced by information from the app specific annotations.
@@ -1 +1 @@
1
- {"version":3,"file":"listReport.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/listReport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAc1F,OAAO,EAKH,aAAa,EAWhB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AACpG,OAAO,KAAK,EAAE,cAAc,EAAa,UAAU,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC3G,OAAO,KAAK,EAAoC,eAAe,EAAE,MAAM,4CAA4C,CAAC;AA0BpH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMzD,MAAM,WAAW,0BAA0B;IACvC,kBAAkB,EAAE,2BAA2B,CAAC;IAChD,SAAS,EAAE,UAAU,CAAC;IACtB,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,eAAe,EAAE,qBAAqB,CAAC;CAC1C;AAKD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAC9B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,UAAU,EACrB,yBAAyB,EAAE,cAAc,CAAC,eAAe,CAAC,EAC1D,yBAAyB,CAAC,EAAE,UAAU,EACtC,SAAS,CAAC,EAAE,MAAM,GACnB,UAAU,CAsDZ;AA+SD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACjC,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,iBAAiB,EAC7B,OAAO,CAAC,EAAE,MAAM,EAChB,iBAAiB,CAAC,EAAE,aAAa,EACjC,MAAM,CAAC,EAAE,eAAe,GACzB;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAgDvF;AAo7BD;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACtC,kBAAkB,EAAE,2BAA2B,EAC/C,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GACpB,MAAM,CAqCR"}
1
+ {"version":3,"file":"listReport.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/listReport.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.addSelectionFields = addSelectionFields;
7
+ exports.getVisualFilters = getVisualFilters;
8
+ exports.addVisualFilters = addVisualFilters;
9
+ exports.applyCustomFilterFields = applyCustomFilterFields;
7
10
  exports.analyzeViewAnnotation = analyzeViewAnnotation;
11
+ exports.addALPViews = addALPViews;
12
+ exports.applyLRTableSchemaAdjustments = applyLRTableSchemaAdjustments;
13
+ exports.addTagsToView = addTagsToView;
14
+ exports.addLRViewParts = addLRViewParts;
15
+ exports.getDefaultAnnotationPath = getDefaultAnnotationPath;
16
+ exports.addHeaderActions = addHeaderActions;
17
+ exports.addManifestPathsToPropertiesLR = addManifestPathsToPropertiesLR;
8
18
  exports.generateListReportSchemaV4 = generateListReportSchemaV4;
9
19
  const utils_1 = require("../utils/utils");
10
20
  const utils_2 = require("../utils/utils");
@@ -12,6 +22,10 @@ const ux_specification_types_1 = require("@sap/ux-specification-types");
12
22
  const i18next_1 = __importDefault(require("i18next"));
13
23
  const extensionLogger_1 = require("../../../extensionLogger");
14
24
  const common_1 = require("../../common");
25
+ const AppSchema_1 = require("../sync-rules/AppSchema");
26
+ const App_1 = require("../sync-rules/App");
27
+ const Page_1 = require("../sync-rules/Page");
28
+ const ListReportUtils_1 = require("./ListReportUtils");
15
29
  const ROOT_PROPERTIES_ORDER = ['header', 'filterBar', 'chart', 'table'];
16
30
  const UILINEITEM = '@UI.LineItem';
17
31
  /**
@@ -406,7 +420,7 @@ function addALPChartView(appSchema, chartAnnotationPath, targetAnnotation, annot
406
420
  }
407
421
  else {
408
422
  // Add message about unexisting annotation path
409
- (0, common_1.addMessageToSchema)(chartView, i18next_1.default.t('UNEXISTING_ANNOTATION_PATH'));
423
+ (0, common_1.addMessageToSchema)(chartView, { text: i18next_1.default.t('UNEXISTING_ANNOTATION_PATH') });
410
424
  }
411
425
  }
412
426
  chartView[ux_specification_types_1.SchemaTag.artifactType] = ux_specification_types_1.ArtifactType.Manifest;
@@ -484,7 +498,6 @@ function addALPViews(appSchema, viewsPaths, generateParameters, templateAnnotati
484
498
  appSchema.definitions[ux_specification_types_1.DefinitionName.ALPTable][ux_specification_types_1.SchemaTag.annotationPath] = target;
485
499
  }
486
500
  const schemaAdjustmentParameters = {
487
- generateParameters,
488
501
  appSchema,
489
502
  v4Page,
490
503
  tableDefinitionId: ux_specification_types_1.DefinitionName.ALPTable,
@@ -502,6 +515,12 @@ function addALPViews(appSchema, viewsPaths, generateParameters, templateAnnotati
502
515
  const schemaIdForToolbarActions = `${ux_specification_types_1.DefinitionName.Actions}<${(0, common_1.prepareRef)(ux_specification_types_1.DefinitionName.LineItems)}>`;
503
516
  (0, utils_2.addCustomActionDefinition)(appSchema, v4Page, generateParameters.logger, undefined, schemaIdForToolbarActions);
504
517
  (0, utils_2.addEnumForActionAnchor)(appSchema, schemaIdForToolbarActions, ux_specification_types_1.DefinitionName.CustomActionPosition);
518
+ // Add "manifestPath" for table properties
519
+ addManifestPathsToPropertiesLR(appSchema, ux_specification_types_1.DefinitionName.ALPTable, tableDefinition, {
520
+ pageName: v4Page.id,
521
+ manifest: generateParameters.manifest,
522
+ targetAnnotation
523
+ });
505
524
  }
506
525
  /**
507
526
  * Modifies the app schema, adds the right line chart settings.
@@ -583,10 +602,9 @@ function getLineItemRef(v4Page, entityType, viewKey, lineItemTerm, lineItemQuali
583
602
  * @returns {void} This function does not return any value.
584
603
  */
585
604
  function adjustCreationFieldsDefinition(schemaAdjustmentParameters) {
586
- const { appSchema, tableDefinitionId, facetDefinitionId, v4Page, generateParameters, viewKey } = schemaAdjustmentParameters;
605
+ const { entityType, appSchema, tableDefinitionId, facetDefinitionId, v4Page, viewKey } = schemaAdjustmentParameters;
587
606
  // when the table view is created, the entity type may differ from the one used for the table
588
607
  // schemaAdjustmentParameters contains the entity type used for the view
589
- const entityType = schemaAdjustmentParameters.entityType ?? generateParameters.entityType;
590
608
  const lineItemRef = getLineItemRef(v4Page, entityType, viewKey, entityType?.annotations?.UI?.LineItem?.term);
591
609
  // set specific implementation for creation fields in the LR table
592
610
  const creationModeDefinitionKey = (0, common_1.getFacetDefinitionKey)(ux_specification_types_1.DefinitionName.TableCreationModeLR, facetDefinitionId);
@@ -619,10 +637,9 @@ function adjustCreationFieldsDefinition(schemaAdjustmentParameters) {
619
637
  * @returns {void} This function does not return any value.
620
638
  */
621
639
  function adjustAnalyticalConfiguration(schemaAdjustmentParameters) {
622
- const { appSchema, tableDefinitionId, facetDefinitionId, v4Page, generateParameters, viewKey, dataForLineItem } = schemaAdjustmentParameters;
640
+ const { entityType, appSchema, tableDefinitionId, facetDefinitionId, v4Page, viewKey, dataForLineItem } = schemaAdjustmentParameters;
623
641
  // when the table view is created, the entity type may differ from the one used for the table
624
642
  // schemaAdjustmentParameters contains the entity type used for the view
625
- const entityType = schemaAdjustmentParameters.entityType ?? generateParameters.entityType;
626
643
  const lineItemRef = getLineItemRef(v4Page, entityType, viewKey, entityType?.annotations?.UI?.LineItem?.term, dataForLineItem.lineItemAnnotation?.qualifier);
627
644
  // set specific implementation for analytical configuration in the LR table
628
645
  const tableDefinition = appSchema.definitions[tableDefinitionId];
@@ -642,6 +659,33 @@ function adjustAnalyticalConfiguration(schemaAdjustmentParameters) {
642
659
  // for the AnalyticalTable we set the analytical configuration property
643
660
  common_1.manifestDrivenSchemaProcessor.apply(ux_specification_types_1.RuleName.LRAnalyticalConfigurationForNonAnalyticalTable, context);
644
661
  }
662
+ /**
663
+ * Adjusts the schema definition related to the popin layout in the list report (LR) table.
664
+ * This function modifies the app schema to handle the popin layout and relevant settings for the table.
665
+ *
666
+ * @param {SchemaAdjustmentParameters} schemaAdjustmentParameters - An object containing parameters required for schema adjustments.
667
+ * It includes the application schema, table definition ID, facet definition ID, and the V4 page information.
668
+ * @returns {void} This function does not return any value.
669
+ */
670
+ function adjustPopinLayout(schemaAdjustmentParameters) {
671
+ const { entityType, appSchema, tableDefinitionId, v4Page, viewKey, dataForLineItem } = schemaAdjustmentParameters;
672
+ // when the table view is created, the entity type may differ from the one used for the table
673
+ // schemaAdjustmentParameters contains the entity type used for the view
674
+ const lineItemRef = getLineItemRef(v4Page, entityType, viewKey, entityType?.annotations?.UI?.LineItem?.term, dataForLineItem.lineItemAnnotation?.qualifier);
675
+ // set specific implementation for popinLayout in the LR table
676
+ const tableDefinition = appSchema.definitions[tableDefinitionId];
677
+ const popinLayoutDefinition = tableDefinition.properties['popinLayout'];
678
+ const context = {
679
+ page: v4Page,
680
+ schema: popinLayoutDefinition,
681
+ parameters: {
682
+ lineItemRef,
683
+ tableDefinition
684
+ }
685
+ };
686
+ // for the ResponsiveTable (default table type) we allow to set the popin layout property
687
+ common_1.manifestDrivenSchemaProcessor.apply(ux_specification_types_1.RuleName.LRPopinLayoutForNonResponsiveTable, context);
688
+ }
645
689
  /**
646
690
  * Adjusts the schema for a table by making necessary changes such as populating creation fields,
647
691
  * adjusting creation field definitions, and adding enum mappings for mass edit functionalities.
@@ -650,8 +694,7 @@ function adjustAnalyticalConfiguration(schemaAdjustmentParameters) {
650
694
  * @returns {void} This function does not return a value; it performs in-place adjustments to the schema provided through the input parameters.
651
695
  */
652
696
  function applyLRTableSchemaAdjustments(schemaAdjustmentParameters) {
653
- const { generateParameters, appSchema, tableDefinitionId, facetDefinitionId } = schemaAdjustmentParameters;
654
- const { entityType } = generateParameters;
697
+ const { entityType, appSchema, tableDefinitionId, facetDefinitionId } = schemaAdjustmentParameters;
655
698
  // in the future, all postgeneration adjustments for the LR Page should be done here
656
699
  // populate the creation fields for the table with the data from the columns
657
700
  (0, utils_1.initializeCreationModeSchema)(appSchema, facetDefinitionId, entityType, ux_specification_types_1.DefinitionName.TableCreationModeLR);
@@ -659,6 +702,7 @@ function applyLRTableSchemaAdjustments(schemaAdjustmentParameters) {
659
702
  adjustCreationFieldsDefinition(schemaAdjustmentParameters);
660
703
  // remove unnecessary properties from the analytical configuration aggregation according to the table type
661
704
  adjustAnalyticalConfiguration(schemaAdjustmentParameters);
705
+ adjustPopinLayout(schemaAdjustmentParameters);
662
706
  // add columns to a enum, in this case enableMassEdit -> visibleFields and ignoredFields
663
707
  (0, utils_2.addEnumForEnableMassEdit)(appSchema, tableDefinitionId, facetDefinitionId, entityType);
664
708
  }
@@ -670,10 +714,10 @@ function applyLRTableSchemaAdjustments(schemaAdjustmentParameters) {
670
714
  * @param {string} visualization - The visualization format or mode for the line items, used to determine the associated annotations.
671
715
  * @param {string} templateAnnotation - The template annotation to infer metadata for the line items.
672
716
  * @param {GenerateAppSchemaParameters} generateParameters - Parameters essential for schema generation, including OData service metadata.
673
- * @param {v4.SapUiAppPageV4} v4Page - The V4 application page configuration where adjustments and schema changes will apply.
717
+ * @param {Page} page - The page object representing the context in which the view is being generated.
674
718
  * @returns {void} No return value.
675
719
  */
676
- function addViewLineItems(inputParameters, viewsDefinition, visualization, templateAnnotation, generateParameters, v4Page) {
720
+ function addViewLineItems(inputParameters, viewsDefinition, visualization, templateAnnotation, { serviceAVT, entityType }, page) {
677
721
  const tableId = `${ux_specification_types_1.DefinitionName.LRTableView}<${inputParameters.viewKey}>`;
678
722
  const viewId = `${ux_specification_types_1.DefinitionName.LineItemsOfView}::${inputParameters.viewKey}`;
679
723
  const lrTableView = (0, common_1.parseSchemaDefinition)(ux_specification_types_1.DefinitionName.LRTableView, inputParameters.viewKey, inputParameters.appSchema);
@@ -703,21 +747,26 @@ function addViewLineItems(inputParameters, viewsDefinition, visualization, templ
703
747
  appSchema: inputParameters.appSchema,
704
748
  lineItemAnnotation: inputParameters.targetEntityType?.annotations.UI[annotationTerm],
705
749
  entityType: inputParameters.targetEntityType,
706
- oDataServiceAVT: generateParameters.serviceAVT,
750
+ oDataServiceAVT: serviceAVT,
707
751
  lineItemId: viewId
708
752
  };
709
753
  (0, utils_2.addLineItemsTypeToSchema)(dataForLineItem, ux_specification_types_1.DefinitionName.ViewTableColumn, ux_specification_types_1.DefinitionName.ViewCustomColumn, ux_specification_types_1.DefinitionName.ViewCustomAction);
710
754
  const schemaAdjustmentParameters = {
711
- generateParameters,
712
755
  appSchema: inputParameters.appSchema,
713
- v4Page,
756
+ v4Page: page.getPage(),
714
757
  tableDefinitionId: tableId,
715
758
  facetDefinitionId: viewId,
716
759
  viewKey: inputParameters.viewKey,
717
- entityType: inputParameters.targetEntityType,
760
+ entityType: inputParameters.targetEntityType || entityType,
718
761
  dataForLineItem
719
762
  };
720
763
  applyLRTableSchemaAdjustments(schemaAdjustmentParameters);
764
+ // Add "manifestPath" for table properties
765
+ addManifestPathsToPropertiesLR(inputParameters.appSchema, ux_specification_types_1.DefinitionName.LRTableView, lrTableView, {
766
+ pageName: page.getPage().id,
767
+ manifest: page.getApp().manifest,
768
+ targetAnnotation: inputParameters.targetAnnotation
769
+ });
721
770
  }
722
771
  /**
723
772
  * Adds the schema tags to a given view.
@@ -759,18 +808,18 @@ function getTargetEntityType(entitySet, view, generateParameters) {
759
808
  * Adds view custom extensions - custom column and custom action definitions.
760
809
  *
761
810
  * @param commonInputParameters - list of input parameters as collected by the calling instance
762
- * @param generateParameters - list of API input parameters
763
811
  * @param visualization - visualization of the annotation
764
812
  * @param v4Page - the given page in manifest
813
+ * @param logger - extension logger
765
814
  */
766
- function addViewCustomExtensions(commonInputParameters, generateParameters, visualization, v4Page) {
815
+ function addViewCustomExtensions(commonInputParameters, visualization, v4Page, logger) {
767
816
  const sectionId = `${ux_specification_types_1.DefinitionName.LineItemsOfView}::${commonInputParameters.viewKey}`;
768
817
  const sectionIdPrefix = commonInputParameters.entitySet ? `/${commonInputParameters.entitySet}/` : '';
769
818
  const sectionIdInManifest = `${sectionIdPrefix}@${"com.sap.vocabularies.UI.v1.LineItem" /* UIAnnotationTerms.LineItem */}${visualization.split(ux_specification_types_1.Visualization.LineItem)[1]}`;
770
819
  const viewColumnDefinition = (0, common_1.parseSchemaDefinition)(ux_specification_types_1.DefinitionName.ViewCustomColumn, sectionId, commonInputParameters.appSchema);
771
820
  (0, common_1.addDefinitionRef)(viewColumnDefinition.properties.position, ux_specification_types_1.DefinitionName.ViewPosition, sectionId);
772
821
  (0, common_1.parseSchemaDefinition)(ux_specification_types_1.DefinitionName.ViewPosition, sectionId, commonInputParameters.appSchema);
773
- (0, utils_2.addCustomColumnDefinition)(commonInputParameters.appSchema, v4Page, generateParameters.logger, `${ux_specification_types_1.DefinitionName.ViewCustomColumn}<${sectionId}>`, sectionId, sectionIdInManifest);
822
+ (0, utils_2.addCustomColumnDefinition)(commonInputParameters.appSchema, v4Page, logger, `${ux_specification_types_1.DefinitionName.ViewCustomColumn}<${sectionId}>`, sectionId, sectionIdInManifest);
774
823
  (0, utils_2.addFragmentEnumForAnchor)(commonInputParameters.appSchema, sectionId, v4Page, `${ux_specification_types_1.DefinitionName.ViewPosition}<${sectionId}>`, sectionIdInManifest);
775
824
  // Remove generic position
776
825
  if (commonInputParameters.appSchema.definitions.Position) {
@@ -779,7 +828,7 @@ function addViewCustomExtensions(commonInputParameters, generateParameters, visu
779
828
  // Table toolbar actions with custom actions
780
829
  const schemaIdForToolbarActions = `${ux_specification_types_1.DefinitionName.Actions}<${sectionId}>`;
781
830
  const customActionDefinitionKey = `${ux_specification_types_1.DefinitionName.ViewCustomAction}<${sectionId}>`;
782
- (0, utils_2.addCustomActionDefinition)(commonInputParameters.appSchema, v4Page, generateParameters.logger, customActionDefinitionKey, schemaIdForToolbarActions, sectionIdInManifest);
831
+ (0, utils_2.addCustomActionDefinition)(commonInputParameters.appSchema, v4Page, logger, customActionDefinitionKey, schemaIdForToolbarActions, sectionIdInManifest);
783
832
  // Anchor selection
784
833
  (0, common_1.parseSchemaDefinition)(ux_specification_types_1.DefinitionName.ViewCustomActionPosition, sectionId, commonInputParameters.appSchema);
785
834
  const customActionPositionDefinitionKey = `${ux_specification_types_1.DefinitionName.ViewCustomActionPosition}<${sectionId}>`;
@@ -795,15 +844,18 @@ function addViewCustomExtensions(commonInputParameters, generateParameters, visu
795
844
  * @param viewsDefinition - the views definition in app schema (MultiTableModeV4)
796
845
  * @param commonInputParameters - list of input parameters as collected by the calling instance
797
846
  * @param generateParameters - list of API input parameters
798
- * @param v4Page - the given page in manifest
847
+ * @param generateParameters.serviceAVT - OData service AVT information
848
+ * @param generateParameters.entityType - entity type of the current page
849
+ * @param generateParameters.logger - extension logger
850
+ * @param page - the current page object
799
851
  * @param uiAnnotations - UI annotations of the given entityType
800
852
  * @param view - the given view
801
853
  */
802
- function addLRViewParts(visualization, viewsDefinition, commonInputParameters, generateParameters, v4Page, uiAnnotations, view) {
854
+ function addLRViewParts(visualization, viewsDefinition, commonInputParameters, { serviceAVT, entityType, logger }, page, uiAnnotations, view) {
803
855
  if (visualization?.indexOf(ux_specification_types_1.Visualization.LineItem) > -1) {
804
856
  //Add Line item view
805
- addViewLineItems(commonInputParameters, viewsDefinition, visualization, commonInputParameters.targetAnnotation, generateParameters, v4Page);
806
- addViewCustomExtensions(commonInputParameters, generateParameters, visualization, v4Page);
857
+ addViewLineItems(commonInputParameters, viewsDefinition, visualization, commonInputParameters.targetAnnotation, { serviceAVT, entityType }, page);
858
+ addViewCustomExtensions(commonInputParameters, visualization, page.getPage(), logger);
807
859
  }
808
860
  else if (visualization?.indexOf('Chart') > -1) {
809
861
  //Add Chart view
@@ -834,10 +886,10 @@ function addLRViewParts(visualization, viewsDefinition, commonInputParameters, g
834
886
  * @param appSchema - app-specific JSON schema
835
887
  * @param viewsPaths - views' paths' section in the manifest
836
888
  * @param generateParameters - list of API input parameters
837
- * @param v4Page - the given page in manifest
889
+ * @param page - the current page object
838
890
  * @param tableDefinitionName - The name of the table definition in the schema
839
891
  */
840
- function addLRViews(appSchema, viewsPaths, generateParameters, v4Page, tableDefinitionName) {
892
+ function addLRViews(appSchema, viewsPaths, generateParameters, page, tableDefinitionName) {
841
893
  const tableDefinition = appSchema.definitions[tableDefinitionName];
842
894
  tableDefinition.properties = {
843
895
  annotationPath: tableDefinition.properties.annotationPath,
@@ -868,7 +920,7 @@ function addLRViews(appSchema, viewsPaths, generateParameters, v4Page, tableDefi
868
920
  title,
869
921
  entitySet: view['entitySet']
870
922
  };
871
- addLRViewParts(visualization, viewsDefinition, commonInputParameters, generateParameters, v4Page, uiAnnotations, view);
923
+ addLRViewParts(visualization, viewsDefinition, commonInputParameters, generateParameters, page, uiAnnotations, view);
872
924
  addTagsToView(viewsDefinition, viewKey, namespace, view);
873
925
  }
874
926
  }
@@ -923,7 +975,6 @@ function adaptTableDefinition(appSchema, generateParameters, templateAnnotation,
923
975
  (0, utils_2.addCustomColumnDefinition)(appSchema, v4Page, generateParameters.logger, undefined, annotationTermInSchema, sectionIdInManifest);
924
976
  (0, utils_2.addFragmentEnumForAnchor)(appSchema, annotationTermInSchema, v4Page, undefined, sectionIdInManifest);
925
977
  const schemaAdjustmentParameters = {
926
- generateParameters,
927
978
  appSchema,
928
979
  v4Page,
929
980
  tableDefinitionId: `${tableDefinitionName}SPV`,
@@ -960,7 +1011,6 @@ function adaptTableDefinition(appSchema, generateParameters, templateAnnotation,
960
1011
  (0, utils_2.addCustomColumnDefinition)(appSchema, v4Page, generateParameters.logger);
961
1012
  (0, utils_2.addFragmentEnumForAnchor)(appSchema, ux_specification_types_1.DefinitionName.LineItems, v4Page);
962
1013
  const schemaAdjustmentParameters = {
963
- generateParameters,
964
1014
  appSchema,
965
1015
  v4Page,
966
1016
  tableDefinitionId: tableDefinitionName,
@@ -976,6 +1026,12 @@ function adaptTableDefinition(appSchema, generateParameters, templateAnnotation,
976
1026
  (0, utils_2.addCustomActionDefinition)(appSchema, v4Page, generateParameters.logger, undefined, schemaIdForActions);
977
1027
  (0, utils_2.addEnumForActionAnchor)(appSchema, schemaIdForActions, ux_specification_types_1.DefinitionName.CustomActionPosition);
978
1028
  }
1029
+ // Add "manifestPath" for table properties
1030
+ addManifestPathsToPropertiesLR(appSchema, tableDefinitionName, tableDefinition, {
1031
+ pageName: v4Page.id,
1032
+ manifest: generateParameters.manifest,
1033
+ targetAnnotation
1034
+ });
979
1035
  }
980
1036
  /**
981
1037
  * Checks for the default annotation path to use for LR table.
@@ -997,39 +1053,6 @@ function getDefaultAnnotationPath(v4Page, entityType, templateType) {
997
1053
  entityType?.annotations.UI?.PresentationVariant?.term);
998
1054
  }
999
1055
  }
1000
- /**
1001
- * Add views to schema (LR or ALP).
1002
- *
1003
- * @param appSchema - app-specific JSON schema
1004
- * @param v4Page - actual page in the manifest
1005
- * @param generateParameters - list of API input parameters
1006
- * @param alias - The alias of the OData annotations
1007
- */
1008
- function addTableAndViews(appSchema, v4Page, generateParameters, alias) {
1009
- const viewsPaths = v4Page.options?.settings?.views?.paths;
1010
- const entityType = generateParameters.entityType;
1011
- const defaultAnnotation = getDefaultAnnotationPath(v4Page, generateParameters.entityType, generateParameters.templateType);
1012
- const tableDefinitionName = (0, utils_2.alignSchemaWithTemplateType)(appSchema, generateParameters);
1013
- // Add filter bar
1014
- addFilterBar(entityType, appSchema, v4Page, alias);
1015
- if (generateParameters.templateType === ux_specification_types_1.TemplateType.ListReportObjectPageV4) {
1016
- adaptTableDefinition(appSchema, generateParameters, defaultAnnotation, v4Page, alias, tableDefinitionName);
1017
- if (viewsPaths) {
1018
- delete appSchema.definitions['LineItems'];
1019
- delete appSchema.definitions['ToolBar<LineItems>'];
1020
- delete appSchema.definitions['Actions<LineItems>'];
1021
- addLRViews(appSchema, viewsPaths, generateParameters, v4Page, tableDefinitionName);
1022
- }
1023
- else if (!v4Page.options?.settings?.views) {
1024
- appSchema.definitions.MultiTableModeV4.properties = {};
1025
- }
1026
- appSchema.properties[ux_specification_types_1.PropertyName.chart][ux_specification_types_1.SchemaTag.hidden] = true;
1027
- }
1028
- else if (generateParameters.templateType === ux_specification_types_1.TemplateType.AnalyticalListPageV4) {
1029
- addALPViews(appSchema, viewsPaths, generateParameters, defaultAnnotation, v4Page, tableDefinitionName);
1030
- (0, utils_2.addFragmentEnumForAnchor)(appSchema, ux_specification_types_1.DefinitionName.LineItems, v4Page);
1031
- }
1032
- }
1033
1056
  /**
1034
1057
  * Adds header actions to schema (LR or ALP).
1035
1058
  *
@@ -1056,6 +1079,94 @@ function addHeaderActions(appSchema, v4Page, logger) {
1056
1079
  customActionDefinition.properties.position.$ref = `${common_1.DEFINITION_LINK_PREFIX}${facetKey}`;
1057
1080
  (0, utils_2.addEnumForActionAnchor)(appSchema, headerActionsDefinitionKey, facetKey);
1058
1081
  }
1082
+ /**
1083
+ * Adds 'manifestPath' to each property in a definition based on metadata sync rules.
1084
+ *
1085
+ * @param appSchema - Full schema.
1086
+ * @param definitionName - The name of the definition/class whose properties are being processed.
1087
+ * @param definition - The definition object containing property schemas.
1088
+ * @param pathParams - Additional context required to compute manifest paths.
1089
+ */
1090
+ function addManifestPathsToPropertiesLR(appSchema, definitionName, definition, pathParams) {
1091
+ let targetAnnotation = undefined;
1092
+ if (pathParams.targetAnnotation) {
1093
+ const annotationParts = pathParams.targetAnnotation?.split('/');
1094
+ targetAnnotation = annotationParts[annotationParts.length - 1];
1095
+ }
1096
+ else {
1097
+ // Default annotation path
1098
+ targetAnnotation = `@${"com.sap.vocabularies.UI.v1.LineItem" /* UIAnnotationTerms.LineItem */}`;
1099
+ }
1100
+ (0, utils_1.addManifestPathsToProperties)(appSchema, definitionName, definition, {
1101
+ ...pathParams,
1102
+ pathsParts: [targetAnnotation, '', targetAnnotation]
1103
+ });
1104
+ }
1105
+ /**
1106
+ * Adds 'manifestPath' to static nodes in schema.
1107
+ *
1108
+ * @param appSchema - Full schema.
1109
+ * @param pathParams - Additional context required to compute manifest paths.
1110
+ */
1111
+ function addManifestPathsToStaticNodes(appSchema, pathParams) {
1112
+ // Root level - rules stored on page class level
1113
+ addManifestPathsToPropertiesLR(appSchema, ux_specification_types_1.PageTypeV4.ListReport, appSchema, pathParams);
1114
+ // Other definitions
1115
+ const definitions = [ux_specification_types_1.DefinitionName.FilterBar, ux_specification_types_1.DefinitionName.MultiTableModeV4];
1116
+ for (const definitionName of definitions) {
1117
+ const definition = appSchema.definitions?.[definitionName];
1118
+ if (typeof definition === 'object') {
1119
+ addManifestPathsToPropertiesLR(appSchema, definitionName, definition, pathParams);
1120
+ }
1121
+ }
1122
+ }
1123
+ /**
1124
+ * Class to generate the List Report page schema.
1125
+ */
1126
+ class ListReportPage {
1127
+ /**
1128
+ * Constructor for ListReportPage.
1129
+ *
1130
+ * @param generateParameters - parameters for generating the app schema
1131
+ * @param schema - generic JSON schema of the List Report page
1132
+ * @param templateName - name of the template
1133
+ * @param contextPath - context path of the page
1134
+ */
1135
+ constructor(generateParameters, schema, templateName, contextPath) {
1136
+ this.schema = new AppSchema_1.AppSchema(schema);
1137
+ this.app = (0, App_1.createApp)(generateParameters.manifest, generateParameters.serviceAVT, generateParameters.logger);
1138
+ this.page = new Page_1.Page(this.app, { name: templateName, type: generateParameters.templateType }, generateParameters.entitySet, contextPath);
1139
+ }
1140
+ /**
1141
+ * Cleans up the schema by hiding specific properties and removing unnecessary definitions.
1142
+ */
1143
+ cleanup() {
1144
+ this.schema.hide(this.schema.getRootProperty([ux_specification_types_1.PropertyName.defaultTemplateAnnotationPath]));
1145
+ this.schema.cleanup(['GenericColumns', 'Action']);
1146
+ (0, common_1.updatePropertyIndices)(this.schema.getSchema(), ROOT_PROPERTIES_ORDER);
1147
+ }
1148
+ /**
1149
+ * Generates the finalized schema for the List Report page.
1150
+ *
1151
+ * @returns The finalized schema for List Report page
1152
+ */
1153
+ generate() {
1154
+ new ListReportUtils_1.GeneralListReportSettings(this.schema, this.page, this.app.getLogger()).instantiate();
1155
+ if (!this.page.getPage()) {
1156
+ return this.schema.finalize();
1157
+ }
1158
+ new ListReportUtils_1.Header(this.schema, this.page, this.app.getLogger()).instantiate();
1159
+ new ListReportUtils_1.FilterBar(this.schema, this.page, this.app.getLogger()).instantiate();
1160
+ new ListReportUtils_1.TableAndViews(this.schema, this.page, this.app.getLogger()).instantiate();
1161
+ // Add "manifestPath" for properties in static nodes
1162
+ addManifestPathsToStaticNodes(this.schema.getSchema(), {
1163
+ pageName: this.page.getPage().id,
1164
+ manifest: this.app.getManifest()
1165
+ });
1166
+ this.cleanup();
1167
+ return this.schema.finalize();
1168
+ }
1169
+ }
1059
1170
  /**
1060
1171
  * Generates an app specific schema for the FE V4 ListReport from the generic schema.
1061
1172
  * Generic types are replaced by information from the app specific annotations.
@@ -1067,37 +1178,11 @@ function addHeaderActions(appSchema, v4Page, logger) {
1067
1178
  * @returns {object} application-specific schema of the list report
1068
1179
  */
1069
1180
  function generateListReportSchemaV4(generateParameters, genericSchema, templateName, contextPath) {
1070
- const appSchema = JSON.parse(JSON.stringify(genericSchema));
1071
- const entityType = generateParameters.entityType;
1072
- const alias = generateParameters.serviceAVT && (0, common_1.findAlias)(ux_specification_types_1.UIVOCABULARY, generateParameters.serviceAVT);
1073
- appSchema.properties[ux_specification_types_1.PropertyName.defaultTemplateAnnotationPath][ux_specification_types_1.SchemaTag.hidden] = true;
1074
- //enum for annotation path as part of QuickVariantSelection
1075
- (0, common_1.addEnumForSingleTabVariant)(entityType, appSchema, ux_specification_types_1.DefinitionName.AnnotationPathAsObject);
1076
- if (generateParameters.manifest) {
1077
- //Find page in targets
1078
- const pages = generateParameters.manifest[ux_specification_types_1.ManifestSection.ui5].routing
1079
- .targets;
1080
- if (!pages) {
1081
- (0, extensionLogger_1.log)(generateParameters.logger, {
1082
- severity: "error" /* LogSeverity.Error */,
1083
- message: i18next_1.default.t('NOPAGES', { appId: generateParameters.manifest['sap.app']['id'] }),
1084
- location: {
1085
- path: ux_specification_types_1.MANIFESTPATH,
1086
- range: [ux_specification_types_1.ManifestSection.generic]
1087
- }
1088
- });
1089
- return appSchema;
1090
- }
1091
- const v4Page = (0, utils_2.findPageV4)(pages, templateName, generateParameters.entitySet, contextPath);
1092
- if (!v4Page) {
1093
- return appSchema;
1094
- }
1095
- addHeaderActions(appSchema, v4Page, generateParameters.logger);
1096
- addTableAndViews(appSchema, v4Page, generateParameters, alias);
1181
+ const listReport = new ListReportPage(generateParameters, genericSchema, templateName, contextPath);
1182
+ if (!listReport.app.getManifest()) {
1183
+ listReport.cleanup();
1184
+ return listReport.schema.finalize();
1097
1185
  }
1098
- delete appSchema.definitions.GenericColumns;
1099
- delete appSchema.definitions.Action;
1100
- (0, common_1.updatePropertyIndices)(appSchema, ROOT_PROPERTIES_ORDER);
1101
- return appSchema;
1186
+ return listReport.generate();
1102
1187
  }
1103
1188
  //# sourceMappingURL=listReport.js.map