@sap/ux-specification 1.96.29 → 1.96.30

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 (264) hide show
  1. package/dist/documentation/runDocu-min.js.map +1 -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-ObjectPage.html +2 -2
  6. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  7. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  8. package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
  9. package/dist/documentation/v4/v4-FreestylePage.html +2 -2
  10. package/dist/documentation/v4/v4-ListReport.html +2 -2
  11. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  12. package/dist/index-min.js +114 -114
  13. package/dist/index-min.js.map +3 -3
  14. package/dist/package.json +7 -6
  15. package/dist/schemas/v2/ApplicationV2.json +5 -2
  16. package/dist/schemas/v2/ObjectPageConfig.json +4 -4
  17. package/dist/schemas/v4/ApplicationV4.json +16 -13
  18. package/dist/schemas/v4/BuildingBlocksConfig.json +37 -22
  19. package/dist/schemas/v4/ListReportConfig.json +192 -24
  20. package/dist/schemas/v4/ObjectPageConfig.json +9 -9
  21. package/dist/src/api.d.ts.map +1 -1
  22. package/dist/src/api.js +9 -9
  23. package/dist/src/api.js.map +1 -1
  24. package/dist/src/sync/common/appProvider.d.ts +1 -0
  25. package/dist/src/sync/common/appProvider.d.ts.map +1 -1
  26. package/dist/src/sync/common/appProvider.js +5 -3
  27. package/dist/src/sync/common/appProvider.js.map +1 -1
  28. package/dist/src/sync/common/decoration/factory.d.ts +7 -7
  29. package/dist/src/sync/common/decoration/factory.d.ts.map +1 -1
  30. package/dist/src/sync/common/decoration/factory.js +2 -2
  31. package/dist/src/sync/common/decoration/factory.js.map +1 -1
  32. package/dist/src/sync/common/generate/objectPage.js +3 -3
  33. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  34. package/dist/src/sync/common/generate/utils.d.ts +9 -2
  35. package/dist/src/sync/common/generate/utils.d.ts.map +1 -1
  36. package/dist/src/sync/common/generate/utils.js +28 -3
  37. package/dist/src/sync/common/generate/utils.js.map +1 -1
  38. package/dist/src/sync/common/i18n.json +2 -1
  39. package/dist/src/sync/common/importProject.d.ts +15 -2
  40. package/dist/src/sync/common/importProject.d.ts.map +1 -1
  41. package/dist/src/sync/common/importProject.js +71 -35
  42. package/dist/src/sync/common/importProject.js.map +1 -1
  43. package/dist/src/sync/common/utils.d.ts +8 -8
  44. package/dist/src/sync/common/utils.d.ts.map +1 -1
  45. package/dist/src/sync/common/utils.js +10 -10
  46. package/dist/src/sync/common/utils.js.map +1 -1
  47. package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -1
  48. package/dist/src/sync/v2/export/controls/Fragment.js +2 -1
  49. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  50. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +1 -1
  51. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -1
  52. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +1 -1
  53. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -1
  54. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +8 -8
  55. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  56. package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -1
  57. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  58. package/dist/src/sync/v2/export/export.js +1 -1
  59. package/dist/src/sync/v2/export/export.js.map +1 -1
  60. package/dist/src/sync/v2/export/exportPage.js +9 -9
  61. package/dist/src/sync/v2/export/exportPage.js.map +1 -1
  62. package/dist/src/sync/v2/export/factory.js +4 -4
  63. package/dist/src/sync/v2/export/factory.js.map +1 -1
  64. package/dist/src/sync/v2/export/manifest.d.ts.map +1 -1
  65. package/dist/src/sync/v2/export/manifest.js +2 -2
  66. package/dist/src/sync/v2/export/manifest.js.map +1 -1
  67. package/dist/src/sync/v2/generate/analyticalListReport.d.ts +1 -1
  68. package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -1
  69. package/dist/src/sync/v2/generate/analyticalListReport.js +20 -27
  70. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  71. package/dist/src/sync/v2/generate/generate.d.ts +12 -12
  72. package/dist/src/sync/v2/generate/generate.d.ts.map +1 -1
  73. package/dist/src/sync/v2/generate/generate.js +61 -45
  74. package/dist/src/sync/v2/generate/generate.js.map +1 -1
  75. package/dist/src/sync/v2/generate/listReport.d.ts +1 -3
  76. package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -1
  77. package/dist/src/sync/v2/generate/listReport.js +5 -11
  78. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  79. package/dist/src/sync/v2/generate/objectPage.d.ts +1 -2
  80. package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -1
  81. package/dist/src/sync/v2/generate/objectPage.js +68 -81
  82. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  83. package/dist/src/sync/v2/generate/utils.d.ts +2 -2
  84. package/dist/src/sync/v2/generate/utils.d.ts.map +1 -1
  85. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  86. package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -1
  87. package/dist/src/sync/v2/import/app/appProvider.js +2 -2
  88. package/dist/src/sync/v2/import/app/appProvider.js.map +1 -1
  89. package/dist/src/sync/v2/import/app/ovpProvider.js +2 -2
  90. package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -1
  91. package/dist/src/sync/v2/import/common/index.d.ts +2 -2
  92. package/dist/src/sync/v2/import/common/index.d.ts.map +1 -1
  93. package/dist/src/sync/v2/import/common/index.js +3 -3
  94. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  95. package/dist/src/sync/v2/import/pages/analyticalListPage.js +12 -12
  96. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
  97. package/dist/src/sync/v2/import/pages/listReport.js +9 -9
  98. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  99. package/dist/src/sync/v2/import/pages/objectPage.js +16 -16
  100. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  101. package/dist/src/sync/v2/import/pages/overviewPage.js +1 -1
  102. package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  103. package/dist/src/sync/v2/import/utils.d.ts.map +1 -1
  104. package/dist/src/sync/v2/import/utils.js +3 -3
  105. package/dist/src/sync/v2/import/utils.js.map +1 -1
  106. package/dist/src/sync/v2/types.d.ts +3 -3
  107. package/dist/src/sync/v2/types.d.ts.map +1 -1
  108. package/dist/src/sync/v2/types.js +1 -1
  109. package/dist/src/sync/v2/types.js.map +1 -1
  110. package/dist/src/sync/v4/application.d.ts +2 -0
  111. package/dist/src/sync/v4/application.d.ts.map +1 -1
  112. package/dist/src/sync/v4/application.js +10 -2
  113. package/dist/src/sync/v4/application.js.map +1 -1
  114. package/dist/src/sync/v4/export/controls/FilterBar.d.ts +8 -2
  115. package/dist/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -1
  116. package/dist/src/sync/v4/export/controls/FilterBar.js +48 -4
  117. package/dist/src/sync/v4/export/controls/FilterBar.js.map +1 -1
  118. package/dist/src/sync/v4/export/controls/Header.d.ts +9 -0
  119. package/dist/src/sync/v4/export/controls/Header.d.ts.map +1 -0
  120. package/dist/src/sync/v4/export/controls/Header.js +10 -0
  121. package/dist/src/sync/v4/export/controls/Header.js.map +1 -0
  122. package/dist/src/sync/v4/export/controls/HeaderAction.d.ts +16 -0
  123. package/dist/src/sync/v4/export/controls/HeaderAction.d.ts.map +1 -0
  124. package/dist/src/sync/v4/export/controls/HeaderAction.js +94 -0
  125. package/dist/src/sync/v4/export/controls/HeaderAction.js.map +1 -0
  126. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +2 -2
  127. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -1
  128. package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts +1 -1
  129. package/dist/src/sync/v4/export/controls/ObjectPageFooterAction.d.ts.map +1 -1
  130. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +3 -3
  131. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -1
  132. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +2 -2
  133. package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -1
  134. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts +5 -6
  135. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.d.ts.map +1 -1
  136. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js +11 -29
  137. package/dist/src/sync/v4/export/controls/ObjectPageHeaderAction.js.map +1 -1
  138. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js +1 -1
  139. package/dist/src/sync/v4/export/controls/ObjectPageLayout.js.map +1 -1
  140. package/dist/src/sync/v4/export/controls/Table.js +6 -6
  141. package/dist/src/sync/v4/export/controls/Table.js.map +1 -1
  142. package/dist/src/sync/v4/export/controls/index.d.ts +2 -0
  143. package/dist/src/sync/v4/export/controls/index.d.ts.map +1 -1
  144. package/dist/src/sync/v4/export/controls/index.js +2 -0
  145. package/dist/src/sync/v4/export/controls/index.js.map +1 -1
  146. package/dist/src/sync/v4/export/export.d.ts +1 -1
  147. package/dist/src/sync/v4/export/export.d.ts.map +1 -1
  148. package/dist/src/sync/v4/export/export.js +62 -34
  149. package/dist/src/sync/v4/export/export.js.map +1 -1
  150. package/dist/src/sync/v4/export/factory.js +3 -3
  151. package/dist/src/sync/v4/export/factory.js.map +1 -1
  152. package/dist/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
  153. package/dist/src/sync/v4/export/fpmCustomPage.js +5 -5
  154. package/dist/src/sync/v4/export/fpmCustomPage.js.map +1 -1
  155. package/dist/src/sync/v4/export/manifest.d.ts +1 -1
  156. package/dist/src/sync/v4/export/manifest.d.ts.map +1 -1
  157. package/dist/src/sync/v4/export/manifest.js +40 -30
  158. package/dist/src/sync/v4/export/manifest.js.map +1 -1
  159. package/dist/src/sync/v4/export/pages/ListReport.d.ts +2 -1
  160. package/dist/src/sync/v4/export/pages/ListReport.d.ts.map +1 -1
  161. package/dist/src/sync/v4/export/pages/ListReport.js +7 -4
  162. package/dist/src/sync/v4/export/pages/ListReport.js.map +1 -1
  163. package/dist/src/sync/v4/export/pages/ObjectPage.js +1 -1
  164. package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -1
  165. package/dist/src/sync/v4/export/types.d.ts +2 -2
  166. package/dist/src/sync/v4/export/types.d.ts.map +1 -1
  167. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.d.ts +17 -0
  168. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.d.ts.map +1 -0
  169. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.js +71 -0
  170. package/dist/src/sync/v4/generate/fpm-custom-page/annotations.js.map +1 -0
  171. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.d.ts +11 -0
  172. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.d.ts.map +1 -0
  173. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.js +169 -0
  174. package/dist/src/sync/v4/generate/fpm-custom-page/extensions.js.map +1 -0
  175. package/dist/src/sync/v4/generate/fpm-custom-page/generator.d.ts +13 -0
  176. package/dist/src/sync/v4/generate/fpm-custom-page/generator.d.ts.map +1 -0
  177. package/dist/src/sync/v4/generate/{fpmCustomPage.js → fpm-custom-page/generator.js} +57 -33
  178. package/dist/src/sync/v4/generate/fpm-custom-page/generator.js.map +1 -0
  179. package/dist/src/sync/v4/generate/fpm-custom-page/utils.d.ts +3 -0
  180. package/dist/src/sync/v4/generate/fpm-custom-page/utils.d.ts.map +1 -0
  181. package/dist/src/sync/v4/generate/fpm-custom-page/utils.js +8 -0
  182. package/dist/src/sync/v4/generate/fpm-custom-page/utils.js.map +1 -0
  183. package/dist/src/sync/v4/generate/generate.d.ts +3 -3
  184. package/dist/src/sync/v4/generate/generate.d.ts.map +1 -1
  185. package/dist/src/sync/v4/generate/generate.js +19 -10
  186. package/dist/src/sync/v4/generate/generate.js.map +1 -1
  187. package/dist/src/sync/v4/generate/index.d.ts +1 -1
  188. package/dist/src/sync/v4/generate/index.d.ts.map +1 -1
  189. package/dist/src/sync/v4/generate/index.js +2 -2
  190. package/dist/src/sync/v4/generate/index.js.map +1 -1
  191. package/dist/src/sync/v4/generate/listReport.d.ts +13 -3
  192. package/dist/src/sync/v4/generate/listReport.d.ts.map +1 -1
  193. package/dist/src/sync/v4/generate/listReport.js +146 -24
  194. package/dist/src/sync/v4/generate/listReport.js.map +1 -1
  195. package/dist/src/sync/v4/generate/objectPage.d.ts +2 -2
  196. package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  197. package/dist/src/sync/v4/generate/objectPage.js +18 -28
  198. package/dist/src/sync/v4/generate/objectPage.js.map +1 -1
  199. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts +1 -1
  200. package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -1
  201. package/dist/src/sync/v4/import/app/baseAppProvider.js +5 -7
  202. package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -1
  203. package/dist/src/sync/v4/import/pages/fpmCustomPage.js +3 -3
  204. package/dist/src/sync/v4/import/pages/fpmCustomPage.js.map +1 -1
  205. package/dist/src/sync/v4/import/pages/listReport.d.ts.map +1 -1
  206. package/dist/src/sync/v4/import/pages/listReport.js +57 -0
  207. package/dist/src/sync/v4/import/pages/listReport.js.map +1 -1
  208. package/dist/src/sync/v4/import/pages/objectPage.js +8 -8
  209. package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -1
  210. package/dist/src/sync/v4/sync-rules/controllerExtensions.d.ts.map +1 -1
  211. package/dist/src/sync/v4/sync-rules/controllerExtensions.js +3 -3
  212. package/dist/src/sync/v4/sync-rules/controllerExtensions.js.map +1 -1
  213. package/dist/src/sync/v4/types.d.ts +9 -0
  214. package/dist/src/sync/v4/types.d.ts.map +1 -1
  215. package/dist/src/sync/v4/utils/StableIdHelper.js +1 -1
  216. package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -1
  217. package/dist/src/sync/v4/utils/utils.d.ts +26 -4
  218. package/dist/src/sync/v4/utils/utils.d.ts.map +1 -1
  219. package/dist/src/sync/v4/utils/utils.js +50 -17
  220. package/dist/src/sync/v4/utils/utils.js.map +1 -1
  221. package/package.json +7 -6
  222. package/dist/scripts/extractDocu.d.ts +0 -2
  223. package/dist/scripts/extractDocu.d.ts.map +0 -1
  224. package/dist/scripts/extractDocu.js +0 -514
  225. package/dist/scripts/extractDocu.js.map +0 -1
  226. package/dist/scripts/macros/api.d.ts +0 -9
  227. package/dist/scripts/macros/api.d.ts.map +0 -1
  228. package/dist/scripts/macros/api.js +0 -161
  229. package/dist/scripts/macros/api.js.map +0 -1
  230. package/dist/scripts/macros/cmd.d.ts +0 -7
  231. package/dist/scripts/macros/cmd.d.ts.map +0 -1
  232. package/dist/scripts/macros/cmd.js +0 -49
  233. package/dist/scripts/macros/cmd.js.map +0 -1
  234. package/dist/scripts/macros/corrections.d.ts +0 -18
  235. package/dist/scripts/macros/corrections.d.ts.map +0 -1
  236. package/dist/scripts/macros/corrections.js +0 -188
  237. package/dist/scripts/macros/corrections.js.map +0 -1
  238. package/dist/scripts/macros/index.d.ts +0 -2
  239. package/dist/scripts/macros/index.d.ts.map +0 -1
  240. package/dist/scripts/macros/index.js +0 -8
  241. package/dist/scripts/macros/index.js.map +0 -1
  242. package/dist/scripts/macros/schema.d.ts +0 -9
  243. package/dist/scripts/macros/schema.d.ts.map +0 -1
  244. package/dist/scripts/macros/schema.js +0 -201
  245. package/dist/scripts/macros/schema.js.map +0 -1
  246. package/dist/scripts/macros/types.d.ts +0 -77
  247. package/dist/scripts/macros/types.d.ts.map +0 -1
  248. package/dist/scripts/macros/types.js +0 -14
  249. package/dist/scripts/macros/types.js.map +0 -1
  250. package/dist/scripts/runDocu.d.ts +0 -2
  251. package/dist/scripts/runDocu.d.ts.map +0 -1
  252. package/dist/scripts/runDocu.js +0 -581
  253. package/dist/scripts/runDocu.js.map +0 -1
  254. package/dist/scripts/spec.d.ts +0 -2
  255. package/dist/scripts/spec.d.ts.map +0 -1
  256. package/dist/scripts/spec.js +0 -113
  257. package/dist/scripts/spec.js.map +0 -1
  258. package/dist/scripts/to-json-schema.d.ts +0 -11
  259. package/dist/scripts/to-json-schema.d.ts.map +0 -1
  260. package/dist/scripts/to-json-schema.js +0 -154
  261. package/dist/scripts/to-json-schema.js.map +0 -1
  262. package/dist/src/sync/v4/generate/fpmCustomPage.d.ts +0 -10
  263. package/dist/src/sync/v4/generate/fpmCustomPage.d.ts.map +0 -1
  264. package/dist/src/sync/v4/generate/fpmCustomPage.js.map +0 -1
@@ -21,14 +21,14 @@ const createRoute = (pattern, name, target) => {
21
21
  };
22
22
  /**
23
23
  * Method returns SapUi5RoutingTargetBase.options object.
24
- * @param {string} [entitySet] - Entity set.
24
+ * @param {object} [property] - Entity set or any other property in object form {'entitySet': 'value'}.
25
25
  * @param {string} [variantManagement] - Variant management string.
26
26
  * @return {{settings: SapUi5RoutingTargetSettings}} Returns object for SapUi5RoutingTargetBase.options.
27
27
  */
28
- const createTargetOption = (entitySet, variantManagement) => {
28
+ const createTargetOption = (property, variantManagement) => {
29
29
  return {
30
30
  settings: {
31
- ...(entitySet && { entitySet }),
31
+ ...property,
32
32
  ...(variantManagement && { variantManagement }),
33
33
  navigation: {}
34
34
  }
@@ -63,20 +63,18 @@ function setTargetOptions(target, keyInManifest, navigationEntry) {
63
63
  /**
64
64
  * Calculates the query pattern for new target entries of the manifest
65
65
  * @param parts - array of strings, each entry represents one navigation
66
- * @param pages - list of all pages
66
+ * @param targetPage - page that is being navigated to
67
67
  * @returns the query pattern for the new target
68
68
  */
69
- function calculateQueryPattern(parts, pages) {
69
+ function calculateQueryPattern(parts, targetPage) {
70
70
  let pattern = '';
71
71
  parts.forEach((part, index) => {
72
- const targetPage = pages[part];
73
72
  let key = '';
74
- if (targetPage?.pageType !== ux_specification_types_1.PageTypeV4.ListReport) {
73
+ if (targetPage && targetPage.pageType !== ux_specification_types_1.PageTypeV4.ListReport) {
75
74
  // Keys should be like - 'key', 'key2', 'key3'
76
75
  key = `({key${index ? index + 1 : ''}})`;
77
76
  }
78
- const partToInsert = targetPage?.entitySet ? targetPage.entitySet : part;
79
- pattern += `${pattern ? '/' : ''}${partToInsert}${key}`;
77
+ pattern += `${pattern ? '/' : ''}${part}${key}`;
80
78
  });
81
79
  return `${pattern}${Constants.OptionalQuery}`;
82
80
  }
@@ -86,9 +84,15 @@ function calculateQueryPattern(parts, pages) {
86
84
  * @param navKey - the key of the given routing navigation entry
87
85
  * @param pages - list of all pages
88
86
  * @param pageId - key of the current page
87
+ * @param contextPath - contextPath of the page
89
88
  */
90
- function getAllNavigationParts(parts, navKey, pages, pageId) {
91
- parts.push(navKey);
89
+ function fillNavigationParts(parts, navKey, pages, pageId, contextPath) {
90
+ if (contextPath) {
91
+ parts.push(...contextPath.split('/'));
92
+ parts.shift();
93
+ return;
94
+ }
95
+ parts.unshift(navKey);
92
96
  let referringPage;
93
97
  for (const key in pages) {
94
98
  if (typeof pages[key].navigation === 'object') {
@@ -99,8 +103,8 @@ function getAllNavigationParts(parts, navKey, pages, pageId) {
99
103
  }
100
104
  }
101
105
  if (referringPage) {
102
- getAllNavigationParts(parts, navKey, pages, key);
103
- break;
106
+ fillNavigationParts(parts, navKey, pages, key);
107
+ return;
104
108
  }
105
109
  }
106
110
  }
@@ -113,20 +117,17 @@ function getAllNavigationParts(parts, navKey, pages, pageId) {
113
117
  * @param pageId - key of the page in manifest
114
118
  */
115
119
  function handlePageNavigation(page, pages, target, routing, pageId) {
116
- if (page.navigation) {
117
- for (const keyInManifest in page.navigation) {
118
- const navigationEntry = page.navigation[keyInManifest];
119
- setTargetOptions(target, keyInManifest, navigationEntry);
120
- if (navigationEntry?.['route']) {
121
- if (!routing.routes.some((routingRoute) => routingRoute.name === navigationEntry['route'])) {
122
- const parts = [];
123
- getAllNavigationParts(parts, keyInManifest, pages, pageId);
124
- const partsInRightOrder = [...parts].reverse();
125
- const pattern = calculateQueryPattern(partsInRightOrder, pages);
126
- // Make sure there no route duplication
127
- routing.routes.push(createRoute(pattern, navigationEntry['route'], navigationEntry['route']));
128
- }
129
- }
120
+ for (const keyInManifest in page.navigation) {
121
+ const navigationEntry = page.navigation[keyInManifest];
122
+ const navPage = pages[navigationEntry['route']];
123
+ setTargetOptions(target, keyInManifest, navigationEntry);
124
+ if (navigationEntry?.['route'] &&
125
+ !routing.routes.some((routingRoute) => routingRoute.name === navigationEntry['route'])) {
126
+ const parts = [];
127
+ fillNavigationParts(parts, keyInManifest, pages, pageId, navPage?.contextPath);
128
+ const pattern = calculateQueryPattern(parts, navPage);
129
+ // Make sure there no route duplication
130
+ routing.routes.push(createRoute(pattern, navigationEntry['route'], navigationEntry['route']));
130
131
  }
131
132
  }
132
133
  }
@@ -143,16 +144,25 @@ function removeDeletedPages(routing, pages) {
143
144
  }
144
145
  }
145
146
  }
146
- function transferEntitySet(page, target) {
147
+ function transferEntitySetandContextPath(page, target) {
147
148
  if (page.entitySet) {
148
149
  if (!target.options) {
149
- target.options = createTargetOption(page.entitySet, page.variantManagement);
150
+ target.options = createTargetOption({ entitySet: page.entitySet }, page.variantManagement);
150
151
  }
151
152
  target.options.settings.entitySet = page.entitySet;
152
153
  }
153
154
  else {
154
155
  delete target.options?.settings?.entitySet;
155
156
  }
157
+ if (page.contextPath) {
158
+ if (!target.options) {
159
+ target.options = createTargetOption({ contextPath: page.contextPath }, page.variantManagement);
160
+ }
161
+ target.options.settings.contextPath = page.contextPath;
162
+ }
163
+ else {
164
+ delete target.options?.settings?.contextPath;
165
+ }
156
166
  }
157
167
  /**
158
168
  * Method detects removed custom sections and deletes removed custom sections from manifest.
@@ -256,7 +266,7 @@ function transformRoutingV4(homePage, pages, manifest) {
256
266
  target = routing.targets[id];
257
267
  }
258
268
  target = fillTarget(page, target, id, pages);
259
- transferEntitySet(page, target);
269
+ transferEntitySetandContextPath(page, target);
260
270
  deleteRemovedCustomSections(page, target);
261
271
  if (target && !page.controlAggregation) {
262
272
  delete target.contextPattern;
@@ -1 +1 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../../../src/sync/v4/export/manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../../../src/sync/v4/export/manifest.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { v4 } from '@sap/ux-specification-types';
2
- import type { Table, FilterBar } from '../controls';
2
+ import type { Table, FilterBar, Header } from '../controls';
3
3
  /**
4
4
  * Sync class for import and export of V4 list report
5
5
  */
@@ -9,6 +9,7 @@ export declare class ListReport implements v4.ListReportConfigV4 {
9
9
  variantManagement?: v4.VariantManagementTypeListReport;
10
10
  defaultPath?: v4.DefaultPathType;
11
11
  defaultTemplateAnnotationPath?: string;
12
+ header?: Header;
12
13
  filterBar?: FilterBar;
13
14
  }
14
15
  //# sourceMappingURL=ListReport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ListReport.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/export/pages/ListReport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA4BpD;;GAEG;AACH,qBAIa,UAAW,YAAW,EAAE,CAAC,kBAAkB;IASpD,KAAK,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;IAOxB,KAAK,CAAC,EAAE,EAAE,CAAC,YAAY,GAAG,KAAK,CAAC;IAUhC,iBAAiB,CAAC,EAAE,EAAE,CAAC,+BAA+B,CAAC;IAOvD,WAAW,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;IAOjC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IAIvC,SAAS,CAAC,EAAE,SAAS,CAAC;CACzB"}
1
+ {"version":3,"file":"ListReport.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/export/pages/ListReport.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA4B5D;;GAEG;AACH,qBAIa,UAAW,YAAW,EAAE,CAAC,kBAAkB;IASpD,KAAK,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC;IAOxB,KAAK,CAAC,EAAE,EAAE,CAAC,YAAY,GAAG,KAAK,CAAC;IAUhC,iBAAiB,CAAC,EAAE,EAAE,CAAC,+BAA+B,CAAC;IAOvD,WAAW,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;IAOjC,6BAA6B,CAAC,EAAE,MAAM,CAAC;IAGvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,SAAS,CAAC,EAAE,SAAS,CAAC;CACzB"}
@@ -38,7 +38,7 @@ let ListReport = class ListReport {
38
38
  __decorate([
39
39
  decorators_1.syncRule({
40
40
  manifest: {
41
- path: (entitySet) => application_1.getSettingsPathForPage(entitySet) + '/views',
41
+ path: (pageName) => application_1.getSettingsPathForPage(pageName) + '/views',
42
42
  import: doNotImport,
43
43
  export: doNotExport,
44
44
  delete: deleteAllALPViews
@@ -48,7 +48,7 @@ __decorate([
48
48
  __decorate([
49
49
  decorators_1.syncRule({
50
50
  manifest: {
51
- path: (entitySet) => application_1.getSettingsPathForPage(entitySet)
51
+ path: (pageName) => application_1.getSettingsPathForPage(pageName)
52
52
  }
53
53
  }),
54
54
  decorators_1.validity({
@@ -58,17 +58,20 @@ __decorate([
58
58
  __decorate([
59
59
  decorators_1.syncRule({
60
60
  manifest: {
61
- path: (entitySet) => application_1.getSettingsPathForPage(entitySet) + '/views/paths/[]/0'
61
+ path: (pageName) => application_1.getSettingsPathForPage(pageName) + '/views/paths/[]/0'
62
62
  }
63
63
  })
64
64
  ], ListReport.prototype, "defaultPath", void 0);
65
65
  __decorate([
66
66
  decorators_1.syncRule({
67
67
  manifest: {
68
- path: (entitySet) => application_1.getSettingsPathForPage(entitySet)
68
+ path: (pageName) => application_1.getSettingsPathForPage(pageName)
69
69
  }
70
70
  })
71
71
  ], ListReport.prototype, "defaultTemplateAnnotationPath", void 0);
72
+ __decorate([
73
+ decorators_1.childId('header')
74
+ ], ListReport.prototype, "header", void 0);
72
75
  __decorate([
73
76
  decorators_1.childId('fe::FilterBar')
74
77
  ], ListReport.prototype, "filterBar", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"ListReport.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/export/pages/ListReport.ts"],"names":[],"mappings":";;;;;;;;;AAEA,sEAA2G;AAC3G,mDAA2D;AAE3D;;;GAGG;AACH,SAAS,iBAAiB,CAAC,eAAuB;IAC9C,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE;QACpF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;KAC9E;AACL,CAAC;AAED;;GAEG;AACH,SAAS,WAAW;IAChB,OAAO;AACX,CAAC;AAED;;GAEG;AACH,SAAS,WAAW;IAChB,OAAO;AACX,CAAC;AAED;;GAEG;AAKH,IAAa,UAAU,GAAvB,MAAa,UAAU;CA6CtB,CAAA;AApCG;IARC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,SAAS,EAAU,EAAE,CAAC,oCAAsB,CAAC,SAAS,CAAC,GAAG,QAAQ;YACzE,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,iBAAiB;SAC5B;KACJ,CAAC;yCACsB;AAiBxB;IARC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,SAAmB,EAAU,EAAE,CAAC,oCAAsB,CAAC,SAAS,CAAC;SAC3E;KACJ,CAAC;IACD,qBAAQ,CAAC;QACN,KAAK,EAAE,QAAQ;KAClB,CAAC;qDACqD;AAOvD;IALC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,SAAS,EAAU,EAAE,CAAC,oCAAsB,CAAC,SAAS,CAAC,GAAG,mBAAmB;SACvF;KACJ,CAAC;+CAC+B;AAOjC;IALC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,SAAS,EAAU,EAAE,CAAC,oCAAsB,CAAC,SAAS,CAAC;SACjE;KACJ,CAAC;iEACqC;AAIvC;IADC,oBAAO,CAAC,eAAe,CAAC;6CACH;AA5Cb,UAAU;IAJtB,kCAAqB,CAAC;QACnB,EAAE,EAAE,0DAA0D;QAC9D,MAAM,EAAE,0CAA0C;KACrD,CAAC;GACW,UAAU,CA6CtB;AA7CY,gCAAU"}
1
+ {"version":3,"file":"ListReport.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/export/pages/ListReport.ts"],"names":[],"mappings":";;;;;;;;;AAEA,sEAA2G;AAC3G,mDAA2D;AAE3D;;;GAGG;AACH,SAAS,iBAAiB,CAAC,eAAuB;IAC9C,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE;QACpF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;KAC9E;AACL,CAAC;AAED;;GAEG;AACH,SAAS,WAAW;IAChB,OAAO;AACX,CAAC;AAED;;GAEG;AACH,SAAS,WAAW;IAChB,OAAO;AACX,CAAC;AAED;;GAEG;AAKH,IAAa,UAAU,GAAvB,MAAa,UAAU;CAgDtB,CAAA;AAvCG;IARC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,QAAQ,EAAU,EAAE,CAAC,oCAAsB,CAAC,QAAQ,CAAC,GAAG,QAAQ;YACvE,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,WAAW;YACnB,MAAM,EAAE,iBAAiB;SAC5B;KACJ,CAAC;yCACsB;AAiBxB;IARC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,QAAkB,EAAU,EAAE,CAAC,oCAAsB,CAAC,QAAQ,CAAC;SACzE;KACJ,CAAC;IACD,qBAAQ,CAAC;QACN,KAAK,EAAE,QAAQ;KAClB,CAAC;qDACqD;AAOvD;IALC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,QAAQ,EAAU,EAAE,CAAC,oCAAsB,CAAC,QAAQ,CAAC,GAAG,mBAAmB;SACrF;KACJ,CAAC;+CAC+B;AAOjC;IALC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,QAAQ,EAAU,EAAE,CAAC,oCAAsB,CAAC,QAAQ,CAAC;SAC/D;KACJ,CAAC;iEACqC;AAGvC;IADC,oBAAO,CAAC,QAAQ,CAAC;0CACF;AAIhB;IADC,oBAAO,CAAC,eAAe,CAAC;6CACH;AA/Cb,UAAU;IAJtB,kCAAqB,CAAC;QACnB,EAAE,EAAE,0DAA0D;QAC9D,MAAM,EAAE,0CAA0C;KACrD,CAAC;GACW,UAAU,CAgDtB;AAhDY,gCAAU"}
@@ -21,7 +21,7 @@ __decorate([
21
21
  __decorate([
22
22
  decorators_1.syncRule({
23
23
  manifest: {
24
- path: (entitySet) => application_1.getSettingsPathForPage(entitySet)
24
+ path: (pageName) => application_1.getSettingsPathForPage(pageName)
25
25
  }
26
26
  }),
27
27
  decorators_1.validity({
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectPage.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/export/pages/ObjectPage.ts"],"names":[],"mappings":";;;;;;;;;AACA,wEAAiD;AACjD,sEAA2G;AAC3G,mDAA2D;AAM3D,IAAa,UAAU,GAAvB,MAAa,UAAU;CAqBtB,CAAA;AAnBG;IADC,oBAAO,CAAC,QAAQ,CAAC;0CACQ;AAG1B;IADC,oBAAO,CAAC,QAAQ,CAAC;0CACQ;AAU1B;IARC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,SAAmB,EAAU,EAAE,CAAC,oCAAsB,CAAC,SAAS,CAAC;SAC3E;KACJ,CAAC;IACD,qBAAQ,CAAC;QACN,KAAK,EAAE,QAAQ;KAClB,CAAC;qDACqD;AAGvD;IADC,oBAAO,CAAC,UAAU,CAAC;4CAC8B;AAlBzC,UAAU;IAJtB,kCAAqB,CAAC;QACnB,EAAE,EAAE,GAAG,2BAAE,CAAC,0BAA0B,eAAe;QACnD,MAAM,EAAE,2BAAE,CAAC,0BAA0B;KACxC,CAAC;GACW,UAAU,CAqBtB;AArBY,gCAAU"}
1
+ {"version":3,"file":"ObjectPage.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/export/pages/ObjectPage.ts"],"names":[],"mappings":";;;;;;;;;AACA,wEAAiD;AACjD,sEAA2G;AAC3G,mDAA2D;AAM3D,IAAa,UAAU,GAAvB,MAAa,UAAU;CAqBtB,CAAA;AAnBG;IADC,oBAAO,CAAC,QAAQ,CAAC;0CACQ;AAG1B;IADC,oBAAO,CAAC,QAAQ,CAAC;0CACQ;AAU1B;IARC,qBAAQ,CAAC;QACN,QAAQ,EAAE;YACN,IAAI,EAAE,CAAC,QAAkB,EAAU,EAAE,CAAC,oCAAsB,CAAC,QAAQ,CAAC;SACzE;KACJ,CAAC;IACD,qBAAQ,CAAC;QACN,KAAK,EAAE,QAAQ;KAClB,CAAC;qDACqD;AAGvD;IADC,oBAAO,CAAC,UAAU,CAAC;4CAC8B;AAlBzC,UAAU;IAJtB,kCAAqB,CAAC;QACnB,EAAE,EAAE,GAAG,2BAAE,CAAC,0BAA0B,eAAe;QACnD,MAAM,EAAE,2BAAE,CAAC,0BAA0B;KACxC,CAAC;GACW,UAAU,CAqBtB;AArBY,gCAAU"}
@@ -1,6 +1,6 @@
1
1
  import type { Definition } from 'typescript-json-schema';
2
2
  import type { MetadataFactory } from '../../common/decoration/factory';
3
- import type { ExportResults, FlexAdapter, TemplateType, PageType, ExtensionLogger, UI5Version } from '@sap/ux-specification-types';
3
+ import type { ExportResults, FlexAdapter, TemplateType, PageTypeV4, ExtensionLogger, UI5Version } from '@sap/ux-specification-types';
4
4
  export declare type ManifestPathSection = (path: string, targetAnnotationPath: string) => string;
5
5
  export interface ManifestConverter4Section {
6
6
  path: ManifestPathSection;
@@ -18,7 +18,7 @@ export declare type TransferParameterTypeV4 = {
18
18
  ui5Version: UI5Version;
19
19
  factory: MetadataFactory;
20
20
  pageNameArray: string[];
21
- pageType: PageType;
21
+ pageType: PageTypeV4;
22
22
  title: string;
23
23
  appRootPath?: string;
24
24
  logger?: ExtensionLogger;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/sync/v4/export/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EACR,aAAa,EACb,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,UAAU,EACb,MAAM,6BAA6B,CAAC;AAErC,oBAAY,mBAAmB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,KAAK,MAAM,CAAC;AAEzF,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,mBAAmB,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,yBAAyB,CAAC;CACxC;AAED,oBAAY,uBAAuB,GAAG;IAClC,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,UAAU,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;CAC9B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/sync/v4/export/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EACR,aAAa,EACb,WAAW,EACX,YAAY,EACZ,UAAU,EACV,eAAe,EACf,UAAU,EACb,MAAM,6BAA6B,CAAC;AAErC,oBAAY,mBAAmB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,KAAK,MAAM,CAAC;AAEzF,MAAM,WAAW,yBAAyB;IACtC,IAAI,EAAE,mBAAmB,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,yBAAyB,CAAC;CACxC;AAED,oBAAY,uBAAuB,GAAG;IAClC,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,UAAU,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,eAAe,CAAC;IACzB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,UAAU,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;CAC9B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { ConvertedMetadata } from '@sap-ux/vocabularies-types';
2
+ import type { XMLElement } from '@xml-tools/ast';
3
+ import type { SchemaDefinition } from '@sap/ux-specification-types';
4
+ import type { CustomPageConnection } from '../../types';
5
+ interface HandlerParams {
6
+ serviceAVT: ConvertedMetadata;
7
+ node: XMLElement;
8
+ schema: SchemaDefinition;
9
+ rootSchema: SchemaDefinition;
10
+ connectionContext: CustomPageConnection;
11
+ }
12
+ declare type AnnotationMacrosHandler = (params: HandlerParams) => void;
13
+ export declare const annotationMacrosHandlers: {
14
+ [key: string]: AnnotationMacrosHandler;
15
+ };
16
+ export {};
17
+ //# sourceMappingURL=annotations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/fpm-custom-page/annotations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiD,MAAM,4BAA4B,CAAC;AACnH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAKxD,UAAU,aAAa;IACnB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,IAAI,EAAE,UAAU,CAAC;IAEjB,MAAM,EAAE,gBAAgB,CAAC;IAEzB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,iBAAiB,EAAE,oBAAoB,CAAC;CAC3C;AAED,aAAK,uBAAuB,GAAG,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;AAiD/D,eAAO,MAAM,wBAAwB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB,CAAA;CAmB9E,CAAC"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.annotationMacrosHandlers = void 0;
4
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
5
+ const listReport_1 = require("../listReport");
6
+ const common_1 = require("../../../common");
7
+ const utils_1 = require("./utils");
8
+ /**
9
+ * Method returns entity type for passed macros annotation handler params.
10
+ * @param {HandlerParams} params Macros annotation handler params containing serviceAvt and connection context information.
11
+ * @returns {EntityType | undefined} EntityType for passed connection.
12
+ */
13
+ function getEntityTypeResolution(params) {
14
+ const { node, serviceAVT, connectionContext } = params;
15
+ const contextPath = utils_1.getAttribute(node, 'contextPath') || connectionContext.contextPath;
16
+ const entitySet = connectionContext.entitySet;
17
+ if (!contextPath && !entitySet) {
18
+ return undefined;
19
+ }
20
+ const resolvedContextPath = serviceAVT?.resolvePath(contextPath || `/${entitySet}`);
21
+ let entityType;
22
+ switch (resolvedContextPath?.target?.['_type']) {
23
+ case 'EntitySet': {
24
+ entityType = resolvedContextPath.target.entityType;
25
+ break;
26
+ }
27
+ case 'NavigationProperty': {
28
+ entityType = resolvedContextPath.target.targetType;
29
+ break;
30
+ }
31
+ case 'EntityType': {
32
+ entityType = resolvedContextPath.target;
33
+ break;
34
+ }
35
+ }
36
+ return entityType;
37
+ }
38
+ /**
39
+ * Method applies annotation path for passed XML node's schema.
40
+ * @param {HandlerParams} schema Schema to update with "annotationPath".
41
+ * @param {XMLElement} node XML node of macro element.
42
+ * @param {EntityType} [entityType] Entity type object.
43
+ */
44
+ function applyAnnotationPath(schema, node, entityType) {
45
+ const metaPath = utils_1.getAttribute(node, 'metaPath');
46
+ if (metaPath && entityType) {
47
+ schema.annotationPath = `/${entityType.fullyQualifiedName}/${metaPath}`;
48
+ }
49
+ }
50
+ // Handlers map for macros controls
51
+ exports.annotationMacrosHandlers = {
52
+ 'sap.fe.macros.Chart': (params) => {
53
+ const entityType = getEntityTypeResolution(params);
54
+ applyAnnotationPath(params.schema, params.node, entityType);
55
+ },
56
+ 'sap.fe.macros.FilterBar': (params) => {
57
+ const { schema, serviceAVT, rootSchema } = params;
58
+ const entityType = getEntityTypeResolution(params);
59
+ // Handler selection fields
60
+ const filterFieldsDefinition = schema.properties?.filterFields;
61
+ if (typeof filterFieldsDefinition === 'object' && entityType) {
62
+ if (!filterFieldsDefinition.properties) {
63
+ filterFieldsDefinition.properties = {};
64
+ }
65
+ const alias = common_1.findAlias(ux_specification_types_1.UIVOCABULARY, serviceAVT);
66
+ const selectionFieldAnnotation = alias && entityType.annotations?.[alias]?.SelectionFields;
67
+ listReport_1.addSelectionFields(entityType, rootSchema, selectionFieldAnnotation, filterFieldsDefinition);
68
+ }
69
+ }
70
+ };
71
+ //# sourceMappingURL=annotations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/fpm-custom-page/annotations.ts"],"names":[],"mappings":";;;AAGA,wEAA2D;AAE3D,8CAAmD;AACnD,4CAA4C;AAC5C,mCAAuC;AAcvC;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,MAAqB;IAClD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC;IACvD,MAAM,WAAW,GAAG,oBAAY,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,iBAAiB,CAAC,WAAW,CAAC;IACvF,MAAM,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;IAC9C,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,EAAE;QAC5B,OAAO,SAAS,CAAC;KACpB;IACD,MAAM,mBAAmB,GAAG,UAAU,EAAE,WAAW,CAC/C,WAAW,IAAI,IAAI,SAAS,EAAE,CACjC,CAAC;IACF,IAAI,UAAkC,CAAC;IACvC,QAAQ,mBAAmB,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE;QAC5C,KAAK,WAAW,CAAC,CAAC;YACd,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC;YACnD,MAAM;SACT;QACD,KAAK,oBAAoB,CAAC,CAAC;YACvB,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC;YACnD,MAAM;SACT;QACD,KAAK,YAAY,CAAC,CAAC;YACf,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC;YACxC,MAAM;SACT;KACJ;IACD,OAAO,UAAU,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,MAAwB,EAAE,IAAgB,EAAE,UAAuB;IAC5F,MAAM,QAAQ,GAAG,oBAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChD,IAAI,QAAQ,IAAI,UAAU,EAAE;QACxB,MAAM,CAAC,cAAc,GAAG,IAAI,UAAU,CAAC,kBAAkB,IAAI,QAAQ,EAAE,CAAC;KAC3E;AACL,CAAC;AAED,mCAAmC;AACtB,QAAA,wBAAwB,GAA+C;IAChF,qBAAqB,EAAE,CAAC,MAAqB,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;QACnD,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAChE,CAAC;IACD,yBAAyB,EAAE,CAAC,MAAqB,EAAE,EAAE;QACjD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAClD,MAAM,UAAU,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;QACnD,2BAA2B;QAC3B,MAAM,sBAAsB,GAAG,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC;QAC/D,IAAI,OAAO,sBAAsB,KAAK,QAAQ,IAAI,UAAU,EAAE;YAC1D,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE;gBACpC,sBAAsB,CAAC,UAAU,GAAG,EAAE,CAAC;aAC1C;YACD,MAAM,KAAK,GAAG,kBAAS,CAAC,qCAAY,EAAE,UAAU,CAAC,CAAC;YAClD,MAAM,wBAAwB,GAAG,KAAK,IAAI,UAAU,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC;YAC3F,+BAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,wBAAwB,EAAE,sBAAsB,CAAC,CAAC;SAChG;IACL,CAAC;CACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { SchemaDefinition } from '@sap/ux-specification-types';
2
+ import type { XMLElement } from '@xml-tools/ast';
3
+ /**
4
+ * Method handles custom extension - resolve positions and ordering.
5
+ * Currently it handles `sap.fe.macros.FilterField`, but code is generic and can handle also other extensions - method relies on 'anchor' and 'placement' properties.
6
+ * @param {XMLElement} node Parsed XML element.
7
+ * @param {SchemaDefinition} schema Schema object which contains custom extensions and annotation elements.
8
+ * @param {SchemaDefinition} appSchema Full app schema.
9
+ */
10
+ export declare function handleExtensions(node: XMLElement, schema: SchemaDefinition, appSchema: SchemaDefinition): void;
11
+ //# sourceMappingURL=extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/fpm-custom-page/extensions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAIpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAqKjD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAU9G"}
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleExtensions = void 0;
4
+ const ux_specification_types_1 = require("@sap/ux-specification-types");
5
+ const utils_1 = require("../../../common/utils");
6
+ const utils_2 = require("../../../common/generate/utils");
7
+ const utils_3 = require("./utils");
8
+ const utils_4 = require("../../utils/utils");
9
+ const ANNOTATION_PREFIX_MAP = new Map([['filterFields', 'SelectionField::']]);
10
+ const PLACEMENT_PROPERTIES = {
11
+ anchor: 'anchor',
12
+ placement: 'placement',
13
+ key: 'key'
14
+ };
15
+ /**
16
+ * Method checks if passed schema definition is custom extension.
17
+ * @param {XMLElement} node Parsed XML element.
18
+ * @param {SchemaDefinition} schema Schema object which contains custom extensions and annotation elements.
19
+ * @param {SchemaDefinition} appSchema Full app schema.
20
+ * @returns {string} Added property name.
21
+ */
22
+ function isCustomExtensionSchema(schema, appSchema) {
23
+ if (typeof schema.additionalProperties === 'object' && schema.additionalProperties.$ref) {
24
+ const definition = appSchema.definitions?.[utils_1.getDefinitionKey(schema.additionalProperties.$ref)];
25
+ const additionalProperties = typeof definition === 'object' ? definition.properties || {} : {};
26
+ return (PLACEMENT_PROPERTIES.anchor in additionalProperties &&
27
+ PLACEMENT_PROPERTIES.placement in additionalProperties);
28
+ }
29
+ return false;
30
+ }
31
+ /**
32
+ * Method returns annotation prefix for passed macro node name.
33
+ * @param {string} nodeName Macros node name.
34
+ * @returns {string} Annotation prefix.
35
+ */
36
+ function getAnnotationPrefix(nodeName) {
37
+ return ANNOTATION_PREFIX_MAP.get(nodeName) || '';
38
+ }
39
+ /**
40
+ * Method returns proxy extension object by parsing XML node.
41
+ * Proxy object is required to be able to reuse 'utils.addExtensionToArray' method to recalculate order of annotation and custom extensions.
42
+ * @param {XMLElement} node Parsed XML element.
43
+ * @param {SchemaDefinition} schema Schema object which contains custom extensions and annotation elements.
44
+ * @param {string} property Custom extension key in schema's properties.
45
+ * @returns {ExtensionData} Proxy extension object.
46
+ */
47
+ function getExtensionData(node, schema, property) {
48
+ const schemaNode = schema.properties[property];
49
+ const annotationPrefix = getAnnotationPrefix(node.name);
50
+ // Custom extension node
51
+ const xmlPath = schemaNode.metadata.path;
52
+ const xmlExtension = node.subElements[xmlPath[xmlPath.length - 1].index];
53
+ const key = utils_3.getAttribute(xmlExtension, PLACEMENT_PROPERTIES.key) || property;
54
+ const anchor = utils_3.getAttribute(xmlExtension, PLACEMENT_PROPERTIES.anchor);
55
+ const placement = utils_3.getAttribute(xmlExtension, PLACEMENT_PROPERTIES.placement) || ux_specification_types_1.v4.Placement.After;
56
+ const annotationAnchor = `${annotationPrefix}${anchor}`;
57
+ const extension = {
58
+ position: {
59
+ anchor: annotationAnchor in schema.properties ? annotationAnchor : anchor,
60
+ placement
61
+ }
62
+ };
63
+ return { key, extension };
64
+ }
65
+ /**
66
+ * Method updates 'propertyIndex' for passed schema's properties.
67
+ * Method prepares proxy objects and reuses 'utils.addExtensionToArray' method to recalculate order of annotation and custom extensions.
68
+ * @param {XMLElement} node Parsed XML element.
69
+ * @param {SchemaDefinition} schema Schema object which contains custom extensions and annotation elements.
70
+ */
71
+ function updatePropertyIndices(node, schema) {
72
+ // Reuse "addExtensionToArray" method for calculating extensions position as it is done for manifest based extensions
73
+ // Logic requires to create 2 proxy objects to be able to reuse same logic
74
+ // Custom extension entries
75
+ const extensions = {};
76
+ // Annotation entries
77
+ const sortedExtensionsArray = [];
78
+ // Custom extension mapping between schema property key and extension key in xml
79
+ const extensionSchemaKeyMap = {};
80
+ // Populate annotation and custom extension entries
81
+ for (const property in schema.properties) {
82
+ const schemaNode = schema.properties[property];
83
+ if ('metadata' in schemaNode) {
84
+ // Custom extension node
85
+ const { extension, key } = getExtensionData(node, schema, property);
86
+ extensions[key] = extension;
87
+ // Mapping between extension key in xml and key in schema
88
+ extensionSchemaKeyMap[key] = property;
89
+ }
90
+ else {
91
+ // Annotation based node
92
+ sortedExtensionsArray.push([property, schemaNode]);
93
+ }
94
+ }
95
+ // Reuse method to calculate order
96
+ utils_4.addExtensionToArray(extensions, sortedExtensionsArray, '', 'position');
97
+ // Apply order to 'propertyIndex' properties in schema
98
+ for (let i = 0; i < sortedExtensionsArray.length; i++) {
99
+ const key = sortedExtensionsArray[i][0];
100
+ let schemaNode = schema.properties[key];
101
+ if (sortedExtensionsArray[i][1].$ref === '#/definitions/' && key in extensionSchemaKeyMap) {
102
+ // Entry of custom extension
103
+ schemaNode = schema.properties[extensionSchemaKeyMap[key]];
104
+ }
105
+ if (schemaNode) {
106
+ // Update index to affect ordering
107
+ schemaNode.propertyIndex = i;
108
+ }
109
+ }
110
+ }
111
+ /**
112
+ * Method refreshes custom extension schema's 'anchor' property with 'oneOf' enum entires.
113
+ * @param {XMLElement} node Parsed XML element.
114
+ * @param {SchemaDefinition} schema Schema object which contains custom extensions and annotation elements.
115
+ * @param {SchemaDefinition} appSchema Full app schema.
116
+ */
117
+ function applyEnumsForAnchors(node, schema, appSchema) {
118
+ const annotationPrefix = getAnnotationPrefix(node.name);
119
+ for (const name in schema.properties) {
120
+ const anchorProperty = 'anchor';
121
+ const property = schema.properties[name];
122
+ if (!property.metadata) {
123
+ continue;
124
+ }
125
+ utils_2.addDescriptiveEnumDefinition(appSchema, schema, {
126
+ property: anchorProperty,
127
+ schema: property
128
+ }, {
129
+ excludeKey: name,
130
+ resolveDefinition: true
131
+ });
132
+ // Remove annotation prefix from anchor enum entries - it is difference between manifest and macros anchering
133
+ const oneOf = property.properties?.[anchorProperty]?.oneOf || [];
134
+ for (const entry of oneOf) {
135
+ if (typeof entry !== 'object' || typeof entry.const !== 'string') {
136
+ continue;
137
+ }
138
+ const property = schema.properties[entry.const];
139
+ if (entry.const.startsWith(annotationPrefix)) {
140
+ // Remove annotation prefix - it is not required for macros
141
+ entry.const = entry.const.replace(annotationPrefix, '');
142
+ }
143
+ else if (property?.metadata?.path) {
144
+ // Reference to custom extension - use key for enum value
145
+ const index = property.metadata.path[property.metadata.path.length - 1].index;
146
+ entry.const = utils_3.getAttribute(node.subElements[index], 'key') || entry.const;
147
+ }
148
+ }
149
+ }
150
+ }
151
+ /**
152
+ * Method handles custom extension - resolve positions and ordering.
153
+ * Currently it handles `sap.fe.macros.FilterField`, but code is generic and can handle also other extensions - method relies on 'anchor' and 'placement' properties.
154
+ * @param {XMLElement} node Parsed XML element.
155
+ * @param {SchemaDefinition} schema Schema object which contains custom extensions and annotation elements.
156
+ * @param {SchemaDefinition} appSchema Full app schema.
157
+ */
158
+ function handleExtensions(node, schema, appSchema) {
159
+ if (!isCustomExtensionSchema(schema, appSchema)) {
160
+ // Schema does not support custom extensions
161
+ return;
162
+ }
163
+ // Update ordering of nodes by updating 'propertyIndex' for each node
164
+ updatePropertyIndices(node, schema);
165
+ // Enhance anchor property to add enum
166
+ applyEnumsForAnchors(node, schema, appSchema);
167
+ }
168
+ exports.handleExtensions = handleExtensions;
169
+ //# sourceMappingURL=extensions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/fpm-custom-page/extensions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { ConvertedMetadata } from '@sap-ux/vocabularies-types';
2
+ import type { ExtensionLogger, SchemaDefinition } from '@sap/ux-specification-types';
3
+ import type { CustomPageCustomViewData } from '../../types';
4
+ /**
5
+ * Method generates schema for passed XML content.
6
+ * @param {SchemaDefinition} genericSchema Generic schema of "sap.fe.macros".
7
+ * @param {string} xmlFile Object with xml file.
8
+ * @param {ConvertedMetadata} serviceAVT OData metadata.
9
+ * @param {ExtensionLogger} [logger] - Logger class for logging messages.
10
+ * @returns {SchemaDefinition} Generated schema for passed XML content.
11
+ */
12
+ export declare function generateCustomPageSchemaV4(genericSchema: SchemaDefinition, xmlFile: CustomPageCustomViewData, serviceAVT: ConvertedMetadata, logger?: ExtensionLogger): SchemaDefinition | undefined;
13
+ //# sourceMappingURL=generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/generate/fpm-custom-page/generator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EACR,eAAe,EAEf,gBAAgB,EAEnB,MAAM,6BAA6B,CAAC;AAOrC,OAAO,KAAK,EAAE,wBAAwB,EAAwB,MAAM,aAAa,CAAC;AAyQlF;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACtC,aAAa,EAAE,gBAAgB,EAC/B,OAAO,EAAE,wBAAwB,EACjC,UAAU,EAAE,iBAAiB,EAC7B,MAAM,CAAC,EAAE,eAAe,GACzB,gBAAgB,GAAG,SAAS,CAoC9B"}