@sap/ux-specification 1.142.7 → 1.142.9

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 (212) hide show
  1. package/CHANGELOG.md +44 -4
  2. package/dist/documentation/{runDocu-min.js → runDocu-min.mjs} +6 -6
  3. package/dist/documentation/{runDocu-min.js.map → runDocu-min.mjs.map} +2 -2
  4. package/dist/documentation/v2/v2-AnalyticalListPage.html +4 -4
  5. package/dist/documentation/v2/v2-ApplicationV2.html +4 -4
  6. package/dist/documentation/v2/v2-ListReport.html +4 -4
  7. package/dist/documentation/v2/v2-ListReportNew.html +4 -4
  8. package/dist/documentation/v2/v2-ObjectPage.html +4 -4
  9. package/dist/documentation/v2/v2-OverviewPage.html +4 -4
  10. package/dist/documentation/v4/v4-ApplicationV4.html +4 -4
  11. package/dist/documentation/v4/v4-BuildingBlocks.html +4 -4
  12. package/dist/documentation/v4/v4-FreestylePage.html +4 -4
  13. package/dist/documentation/v4/v4-ListReport.html +4 -4
  14. package/dist/documentation/v4/v4-ObjectPage.html +4 -4
  15. package/dist/index-min.mjs +1300 -0
  16. package/dist/index-min.mjs.map +7 -0
  17. package/dist/schemas/v2/ListReportNewConfig.json +143 -0
  18. package/dist/schemas/v4/BuildingBlocksConfig.json +62 -10
  19. package/dist/specification/package.json +14 -7
  20. package/dist/specification/scripts/macros/corrections.d.ts.map +1 -1
  21. package/dist/specification/scripts/macros/corrections.js +35 -3
  22. package/dist/specification/scripts/macros/corrections.js.map +1 -1
  23. package/dist/specification/scripts/macros/schema.d.ts +9 -0
  24. package/dist/specification/scripts/macros/schema.d.ts.map +1 -1
  25. package/dist/specification/scripts/macros/schema.js +21 -4
  26. package/dist/specification/scripts/macros/schema.js.map +1 -1
  27. package/dist/specification/scripts/schema/to-json-schema.js +1 -1
  28. package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
  29. package/dist/specification/src/api.d.ts.map +1 -1
  30. package/dist/specification/src/api.js +6 -6
  31. package/dist/specification/src/api.js.map +1 -1
  32. package/dist/specification/src/ftfs/ftfs.d.ts.map +1 -1
  33. package/dist/specification/src/ftfs/ftfs.js +25 -1
  34. package/dist/specification/src/ftfs/ftfs.js.map +1 -1
  35. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.d.ts +21 -0
  36. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.d.ts.map +1 -1
  37. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.js +35 -0
  38. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.js.map +1 -1
  39. package/dist/specification/src/ftfs/parser/model/TreeModel.d.ts.map +1 -1
  40. package/dist/specification/src/ftfs/parser/model/TreeModel.js +3 -2
  41. package/dist/specification/src/ftfs/parser/model/TreeModel.js.map +1 -1
  42. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.d.ts +0 -3
  43. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.d.ts.map +1 -1
  44. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.js +6 -4
  45. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.js.map +1 -1
  46. package/dist/specification/src/ftfs/parser/model/actions/ActionGroupAggregation.d.ts +86 -0
  47. package/dist/specification/src/ftfs/parser/model/actions/ActionGroupAggregation.d.ts.map +1 -0
  48. package/dist/specification/src/ftfs/parser/model/actions/ActionGroupAggregation.js +139 -0
  49. package/dist/specification/src/ftfs/parser/model/actions/ActionGroupAggregation.js.map +1 -0
  50. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.d.ts +11 -52
  51. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.d.ts.map +1 -1
  52. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.js +15 -81
  53. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.js.map +1 -1
  54. package/dist/specification/src/ftfs/parser/model/actions/ActionsContainerAggregation.d.ts +46 -0
  55. package/dist/specification/src/ftfs/parser/model/actions/ActionsContainerAggregation.d.ts.map +1 -0
  56. package/dist/specification/src/ftfs/parser/model/actions/ActionsContainerAggregation.js +81 -0
  57. package/dist/specification/src/ftfs/parser/model/actions/ActionsContainerAggregation.js.map +1 -0
  58. package/dist/specification/src/ftfs/parser/model/actions/index.d.ts +2 -0
  59. package/dist/specification/src/ftfs/parser/model/actions/index.d.ts.map +1 -1
  60. package/dist/specification/src/ftfs/parser/model/actions/index.js +2 -0
  61. package/dist/specification/src/ftfs/parser/model/actions/index.js.map +1 -1
  62. package/dist/specification/src/i18n/i18n.js +35 -2
  63. package/dist/specification/src/i18n/i18n.js.map +1 -1
  64. package/dist/specification/src/index.d.ts +1 -0
  65. package/dist/specification/src/index.d.ts.map +1 -1
  66. package/dist/specification/src/index.js +4 -0
  67. package/dist/specification/src/index.js.map +1 -1
  68. package/dist/specification/src/sync/common/decoration/decorator-paths.d.ts +37 -3
  69. package/dist/specification/src/sync/common/decoration/decorator-paths.d.ts.map +1 -1
  70. package/dist/specification/src/sync/common/decoration/decorator-paths.js +18 -1
  71. package/dist/specification/src/sync/common/decoration/decorator-paths.js.map +1 -1
  72. package/dist/specification/src/sync/common/decoration/decorators.d.ts +8 -5
  73. package/dist/specification/src/sync/common/decoration/decorators.d.ts.map +1 -1
  74. package/dist/specification/src/sync/common/decoration/decorators.js +4 -1
  75. package/dist/specification/src/sync/common/decoration/decorators.js.map +1 -1
  76. package/dist/specification/src/sync/common/decoration/steps/Enums.d.ts.map +1 -1
  77. package/dist/specification/src/sync/common/decoration/steps/Enums.js +47 -8
  78. package/dist/specification/src/sync/common/decoration/steps/Enums.js.map +1 -1
  79. package/dist/specification/src/sync/common/generate/utils.d.ts +8 -0
  80. package/dist/specification/src/sync/common/generate/utils.d.ts.map +1 -1
  81. package/dist/specification/src/sync/common/generate/utils.js +56 -34
  82. package/dist/specification/src/sync/common/generate/utils.js.map +1 -1
  83. package/dist/specification/src/sync/common/i18n.json +3 -1
  84. package/dist/specification/src/sync/common/utils.d.ts +9 -2
  85. package/dist/specification/src/sync/common/utils.d.ts.map +1 -1
  86. package/dist/specification/src/sync/common/utils.js +10 -0
  87. package/dist/specification/src/sync/common/utils.js.map +1 -1
  88. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts +14 -1
  89. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts.map +1 -1
  90. package/dist/specification/src/sync/v2/generate/stableIdUtils.js +110 -0
  91. package/dist/specification/src/sync/v2/generate/stableIdUtils.js.map +1 -1
  92. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.d.ts.map +1 -1
  93. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js +1 -1
  94. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js.map +1 -1
  95. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts +1 -0
  96. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts.map +1 -1
  97. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js +4 -0
  98. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js.map +1 -1
  99. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/TableColumn.d.ts +32 -0
  100. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/TableColumn.d.ts.map +1 -0
  101. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/TableColumn.js +274 -0
  102. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/TableColumn.js.map +1 -0
  103. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts +1 -0
  104. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts.map +1 -1
  105. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js +1 -0
  106. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js.map +1 -1
  107. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -1
  108. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.js +25 -11
  109. package/dist/specification/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -1
  110. package/dist/specification/src/sync/v4/export/controls/Table.d.ts.map +1 -1
  111. package/dist/specification/src/sync/v4/export/controls/Table.js +21 -9
  112. package/dist/specification/src/sync/v4/export/controls/Table.js.map +1 -1
  113. package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
  114. package/dist/specification/src/sync/v4/export/fpmCustomPage.js +141 -72
  115. package/dist/specification/src/sync/v4/export/fpmCustomPage.js.map +1 -1
  116. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.d.ts.map +1 -1
  117. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.js +14 -1
  118. package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.js.map +1 -1
  119. package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.d.ts.map +1 -1
  120. package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.js +66 -4
  121. package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.js.map +1 -1
  122. package/dist/specification/src/sync/v4/generate/generate.d.ts +4 -2
  123. package/dist/specification/src/sync/v4/generate/generate.d.ts.map +1 -1
  124. package/dist/specification/src/sync/v4/generate/generate.js +8 -4
  125. package/dist/specification/src/sync/v4/generate/generate.js.map +1 -1
  126. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.d.ts.map +1 -1
  127. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.js +1 -0
  128. package/dist/specification/src/sync/v4/generate/list-report/ListReportUtils.js.map +1 -1
  129. package/dist/specification/src/sync/v4/generate/list-report/listReport.d.ts +1 -0
  130. package/dist/specification/src/sync/v4/generate/list-report/listReport.d.ts.map +1 -1
  131. package/dist/specification/src/sync/v4/generate/list-report/listReport.js +15 -5
  132. package/dist/specification/src/sync/v4/generate/list-report/listReport.js.map +1 -1
  133. package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  134. package/dist/specification/src/sync/v4/generate/objectPage.js +20 -4
  135. package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
  136. package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.d.ts.map +1 -1
  137. package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.js +70 -19
  138. package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.js.map +1 -1
  139. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts +6 -0
  140. package/dist/specification/src/sync/v4/sync-rules/Page.d.ts.map +1 -1
  141. package/dist/specification/src/sync/v4/sync-rules/Page.js +8 -0
  142. package/dist/specification/src/sync/v4/sync-rules/Page.js.map +1 -1
  143. package/dist/specification/src/sync/v4/utils/utils.d.ts +125 -0
  144. package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
  145. package/dist/specification/src/sync/v4/utils/utils.js +252 -1
  146. package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
  147. package/dist/templates/action/manifest.action-menu.json +10 -0
  148. package/dist/templates/action/manifest.action.json +13 -0
  149. package/dist/templates/app/Component.js +13 -0
  150. package/dist/templates/app/Component.ts +11 -0
  151. package/dist/templates/building-block/action/View.xml +30 -0
  152. package/dist/templates/building-block/chart/View.xml +9 -0
  153. package/dist/templates/building-block/common/manifest.json +7 -0
  154. package/dist/templates/building-block/custom-column/View.xml +5 -0
  155. package/dist/templates/building-block/custom-filter-field/View.xml +12 -0
  156. package/dist/templates/building-block/custom-form-field/View.xml +12 -0
  157. package/dist/templates/building-block/field/View.xml +8 -0
  158. package/dist/templates/building-block/filter-bar/View.xml +10 -0
  159. package/dist/templates/building-block/form/View.xml +4 -0
  160. package/dist/templates/building-block/page/View.xml +5 -0
  161. package/dist/templates/building-block/rich-text-editor/View.xml +3 -0
  162. package/dist/templates/building-block/rich-text-editor-button-groups/View.xml +18 -0
  163. package/dist/templates/building-block/table/View.xml +19 -0
  164. package/dist/templates/column/1.84/manifest.json +28 -0
  165. package/dist/templates/column/1.85/manifest.json +31 -0
  166. package/dist/templates/column/1.86/manifest.json +43 -0
  167. package/dist/templates/common/EventHandler.js +25 -0
  168. package/dist/templates/common/EventHandler.ts +28 -0
  169. package/dist/templates/common/Fragment.xml +3 -0
  170. package/dist/templates/common/FragmentWithForm.xml +7 -0
  171. package/dist/templates/common/FragmentWithVBox.xml +5 -0
  172. package/dist/templates/common/sap.fe.d.ts +43 -0
  173. package/dist/templates/controller-extension/Controller.js +18 -0
  174. package/dist/templates/controller-extension/Controller.ts +20 -0
  175. package/dist/templates/controller-extension/ControllerExtension.d.ts +11 -0
  176. package/dist/templates/controller-extension/manifest.json +14 -0
  177. package/dist/templates/field/manifest.json +32 -0
  178. package/dist/templates/filter/Controller.js +21 -0
  179. package/dist/templates/filter/Controller.ts +24 -0
  180. package/dist/templates/filter/fragment.xml +15 -0
  181. package/dist/templates/filter/manifest.json +12 -0
  182. package/dist/templates/header-section/1.85/manifest.json +43 -0
  183. package/dist/templates/header-section/1.86/manifest.json +45 -0
  184. package/dist/templates/page/custom/1.84/ext/Controller.js +45 -0
  185. package/dist/templates/page/custom/1.84/ext/Controller.ts +42 -0
  186. package/dist/templates/page/custom/1.84/ext/View.xml +6 -0
  187. package/dist/templates/page/custom/1.84/i18n/i18n.properties +2 -0
  188. package/dist/templates/page/custom/1.84/manifest.json +32 -0
  189. package/dist/templates/page/custom/1.94/ext/Controller.js +45 -0
  190. package/dist/templates/page/custom/1.94/ext/Controller.ts +42 -0
  191. package/dist/templates/page/custom/1.94/ext/View.xml +6 -0
  192. package/dist/templates/page/custom/1.94/i18n/i18n.properties +2 -0
  193. package/dist/templates/page/custom/1.94/manifest.json +33 -0
  194. package/dist/templates/page/custom/i18n/i18n.properties +2 -0
  195. package/dist/templates/page/list/manifest.json +20 -0
  196. package/dist/templates/page/object/manifest.json +33 -0
  197. package/dist/templates/section/1.85/manifest.json +33 -0
  198. package/dist/templates/section/1.86/manifest.json +32 -0
  199. package/dist/templates/subsection/1.85/manifest.json +37 -0
  200. package/dist/templates/subsection/1.86/manifest.json +36 -0
  201. package/dist/templates/view/ext/CustomViewWithTable.xml +3 -0
  202. package/dist/templates/view/manifest.json +41 -0
  203. package/dist/types/src/apiTypes.d.ts +3 -0
  204. package/dist/types/src/apiTypes.d.ts.map +1 -1
  205. package/dist/types/src/apiTypes.js.map +1 -1
  206. package/dist/types/src/common/types.d.ts +2 -0
  207. package/dist/types/src/common/types.d.ts.map +1 -1
  208. package/dist/types/src/common/types.js +2 -0
  209. package/dist/types/src/common/types.js.map +1 -1
  210. package/package.json +14 -7
  211. package/dist/index-min.js +0 -647
  212. package/dist/index-min.js.map +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"fpmCustomPage.js","sourceRoot":"","sources":["../../../../../../../src/sync/v4/import/pages/fpmCustomPage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fpmCustomPage.js","sourceRoot":"","sources":["../../../../../../../src/sync/v4/import/pages/fpmCustomPage.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,12 @@ export declare class Page<Config extends PageContext = PageContext> {
41
41
  * @returns The entity type, or undefined if not found
42
42
  */
43
43
  getEntityType(): EntityType | undefined;
44
+ /**
45
+ * Gets the entity set associated with this page.
46
+ *
47
+ * @returns The entity set, or undefined if not found
48
+ */
49
+ getEntitySet(): EntitySet | undefined;
44
50
  /**
45
51
  * Gets the UI annotations for the entity type associated with this page.
46
52
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/sync-rules/Page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD;;;GAGG;AACH,qBAAa,IAAI,CAAC,MAAM,SAAS,WAAW,GAAG,WAAW;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC;IACpC,QAAQ,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,YAAY,CAAC;KACtB,CAAC;IACF,MAAM,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,GAAG,CAAC,EAAE,SAAS,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;OAUG;gBAEC,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,YAAY,CAAA;KAAE,EAC9C,SAAS,CAAC,EAAE,SAAS,EACrB,UAAU,CAAC,EAAE,UAAU,EACvB,WAAW,CAAC,EAAE,MAAM;IAaxB;;;;OAIG;IACH,aAAa,IAAI,UAAU,GAAG,SAAS;IAIvC;;;;OAIG;IACH,gBAAgB,IAAI,wBAAwB,GAAG,SAAS;IAIxD;;;;OAIG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGlC"}
1
+ {"version":3,"file":"Page.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/sync-rules/Page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AAEpE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD;;;GAGG;AACH,qBAAa,IAAI,CAAC,MAAM,SAAS,WAAW,GAAG,WAAW;IACtD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC;IACpC,QAAQ,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,YAAY,CAAC;KACtB,CAAC;IACF,MAAM,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,UAAU,CAAC;QAClB,GAAG,CAAC,EAAE,SAAS,CAAC;QAChB,WAAW,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;;;;;;;OAUG;gBAEC,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,YAAY,CAAA;KAAE,EAC9C,SAAS,CAAC,EAAE,SAAS,EACrB,UAAU,CAAC,EAAE,UAAU,EACvB,WAAW,CAAC,EAAE,MAAM;IAaxB;;;;OAIG;IACH,aAAa,IAAI,UAAU,GAAG,SAAS;IAIvC;;;;OAIG;IACH,YAAY,IAAI,SAAS,GAAG,SAAS;IAIrC;;;;OAIG;IACH,gBAAgB,IAAI,wBAAwB,GAAG,SAAS;IAIxD;;;;OAIG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGlC"}
@@ -37,6 +37,14 @@ class Page {
37
37
  getEntityType() {
38
38
  return this.entity.type;
39
39
  }
40
+ /**
41
+ * Gets the entity set associated with this page.
42
+ *
43
+ * @returns The entity set, or undefined if not found
44
+ */
45
+ getEntitySet() {
46
+ return this.entity.set;
47
+ }
40
48
  /**
41
49
  * Gets the UI annotations for the entity type associated with this page.
42
50
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/sync-rules/Page.ts"],"names":[],"mappings":";;;AAEA,0CAA4C;AAK5C;;;GAGG;AACH,MAAa,IAAI;IAcb;;;;;;;;;;OAUG;IACH,YACI,GAAQ,EACR,QAA8C,EAC9C,SAAqB,EACrB,UAAuB,EACvB,WAAoB;QAEpB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG;YACV,WAAW,EAAE,WAAW;YACxB,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,UAAU,IAAI,SAAS,EAAE,UAAU;SAC5C,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,gCAAgC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/E,CAAC;IAED;;;;OAIG;IACH,aAAa;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACH,oBAAoB;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,IAAI,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAc;QACpB,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;CACJ;AA9ED,oBA8EC"}
1
+ {"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../../../../src/sync/v4/sync-rules/Page.ts"],"names":[],"mappings":";;;AAEA,0CAA4C;AAK5C;;;GAGG;AACH,MAAa,IAAI;IAcb;;;;;;;;;;OAUG;IACH,YACI,GAAQ,EACR,QAA8C,EAC9C,SAAqB,EACrB,UAAuB,EACvB,WAAoB;QAEpB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG;YACV,WAAW,EAAE,WAAW;YACxB,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,UAAU,IAAI,SAAS,EAAE,UAAU;SAC5C,CAAC;QACF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,gCAAgC;QAChC,IAAI,CAAC,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/E,CAAC;IAED;;;;OAIG;IACH,aAAa;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,YAAY;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,gBAAgB;QACZ,OAAO,IAAI,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACH,oBAAoB;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,IAAI,CAAC;IACnD,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,MAAc;QACpB,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IAChD,CAAC;CACJ;AAvFD,oBAuFC"}
@@ -5,10 +5,29 @@ import type { Definition, DefinitionOrBoolean } from 'typescript-json-schema';
5
5
  import { DefinitionName, type ExtensionLogger, type FileData, type Manifest, TemplatePropertyName, TemplateType, v4 } from '@sap/ux-specification-types';
6
6
  import { type ExtensionFileData } from '../types';
7
7
  import type { MetadataInstanceInterface } from '../../common/decoration/factory';
8
+ import { TableTypeV4 } from '@sap/ux-specification-types/src/v4';
8
9
  export type CustomExtension = v4.TableCustomColumn | v4.CustomAction | v4.CustomActionMenu | v4.SapUi5RoutingTargetContentSection | v4.SapUiGenericAppPageCustomFilterField;
9
10
  export interface CustomExtensions {
10
11
  [key: string]: CustomExtension;
11
12
  }
13
+ export type TableTypeOptionsResult = {
14
+ options: TableTypeV4[];
15
+ defaultType: TableTypeV4;
16
+ };
17
+ /**
18
+ * Minimum UI5 version that supports capability-based table type restrictions.
19
+ *
20
+ * Before 1.142.0:
21
+ * - Table type was optional
22
+ * - All table types were available regardless of service capabilities
23
+ * - No warning messages for missing table type or type-dependent properties
24
+ *
25
+ * From 1.142.0 onwards:
26
+ * - Table type options are restricted based on entity set capabilities (analytical/hierarchical/standard)
27
+ * - Warning messages are shown when table type is missing but type-dependent properties exist
28
+ * - Schema enum values are dynamically restricted to match detected capabilities
29
+ */
30
+ export declare const MIN_UI5_VERSION_FOR_TABLE_TYPE_RESTRICTIONS = "1.142.0";
12
31
  /**
13
32
  * Parameter object used while generating/appending LineItem entries (columns and actions) into the app schema.
14
33
  *
@@ -425,6 +444,112 @@ export declare function addManifestPathsToProperties(appSchema: Definition, defi
425
444
  * @returns A boolean indicating whether insertion is allowed. Returns true if the insertability is Path-based (dynamic) or undefined.
426
445
  */
427
446
  export declare function getInsertableForEntitySet(entitySet: EntitySet, navigationPath?: string): boolean;
447
+ /**
448
+ * Determines the default OData V4 table type for an entity set based on its metadata capabilities.
449
+ *
450
+ * The decision follows a strict priority order:
451
+ * 1) Analytical tables take precedence when aggregate transformations are present and the
452
+ * analytical requirements are satisfied.
453
+ * 2) Hierarchical tables are selected when a recursive hierarchy is defined and analytical
454
+ * conditions are not met.
455
+ * 3) Responsive tables are used as a safe fallback when neither analytical nor hierarchical
456
+ * characteristics apply.
457
+ *
458
+ * The evaluation of analytical suitability differs between CAP and non-CAP services:
459
+ * - **CAP services**: Require both service-level AND entity-level aggregation annotations.
460
+ * - **Non-CAP services**: Service-level aggregation annotations are sufficient.
461
+ *
462
+ * @param entitySet The entity set whose annotations are evaluated.
463
+ * @param isCapService Indicates whether the service is a CAP service, affecting analytical requirements.
464
+ * @returns The default {@link TableTypeV4} to be used for the entity set.
465
+ */
466
+ export declare function getDefaultTableType(entitySet?: EntitySet, isCapService?: boolean): TableTypeV4;
467
+ /**
468
+ * Determines the available table type options and recommended default type for an entity set
469
+ * based on its metadata capabilities.
470
+ *
471
+ * This function analyzes the entity set's capabilities and returns both the list of suitable
472
+ * table types and the recommended default type. The available options are restricted based
473
+ * on the detected service characteristics:
474
+ *
475
+ * - **Analytical services**: AnalyticalTable, ResponsiveTable, GridTable (default: AnalyticalTable).
476
+ * - **Hierarchical services**: TreeTable, ResponsiveTable, GridTable (default: TreeTable).
477
+ * - **Standard services**: ResponsiveTable, GridTable (default: ResponsiveTable).
478
+ *
479
+ * **Version gating**: Capability-based restrictions are only applied for UI5 1.142.0+.
480
+ * For earlier versions, all table types are available (ResponsiveTable, GridTable, AnalyticalTable, TreeTable)
481
+ * with ResponsiveTable as the default.
482
+ *
483
+ * @param entitySet The entity set whose capabilities determine the available table types.
484
+ * @param isCapService Indicates whether the service is a CAP service, affecting analytical
485
+ * capability detection.
486
+ * @param minUI5Version The minimum UI5 version from manifest. Capability-based restrictions
487
+ * require UI5 1.142.0+.
488
+ * @returns An object containing:
489
+ * - `options`: Array of suitable {@link TableTypeV4} values for the entity set
490
+ * - `defaultType`: The recommended {@link TableTypeV4} as the default choice
491
+ * @example
492
+ * // For an entity set with analytical capabilities (UI5 1.142+)
493
+ * const result = getTableTypeOptions(analyticalEntitySet, true, '1.142.0');
494
+ * // Returns: { options: [AnalyticalTable, ResponsiveTable, GridTable], defaultType: AnalyticalTable }
495
+ *
496
+ * // For the same entity set on UI5 1.120 (all types available, no restrictions)
497
+ * const result = getTableTypeOptions(analyticalEntitySet, true, '1.120.0');
498
+ * // Returns: { options: [ResponsiveTable, GridTable, AnalyticalTable, TreeTable], defaultType: ResponsiveTable }
499
+ */
500
+ export declare function getTableTypeOptions(entitySet?: EntitySet, isCapService?: boolean, minUI5Version?: string): TableTypeOptionsResult;
501
+ /**
502
+ * Creates a virtual EntitySet for capability detection when the entitySet.entityType
503
+ * doesn't match the actual target EntityType (e.g., for contained navigation).
504
+ *
505
+ * This is needed for contained navigation (ContainsTarget=true) where there is no
506
+ * physical EntitySet in the metadata, but the target EntityType has important
507
+ * annotations like RecursiveHierarchy.
508
+ *
509
+ * @param entitySet - The base entity set (may have wrong entityType for contained navigation)
510
+ * @param targetEntityType - The actual entity type with correct annotations
511
+ * @returns EntitySet with correct entityType for capability detection, or original if types match
512
+ * @example
513
+ * // For contained navigation "/ZZZC_FINANCIAL_TREE/Set"
514
+ * const entitySetForCapabilities = ensureEntitySetWithCorrectType(
515
+ * entitySet, // ZZZC_FINANCIAL_TREE (type: Parameters)
516
+ * lineItemFacet.entityType // ZZZC_FINANCIAL_TREEType (with RecursiveHierarchy)
517
+ * );
518
+ * const options = getTableTypeOptions(entitySetForCapabilities, isCapService);
519
+ */
520
+ export declare function ensureEntitySetWithCorrectType(entitySet: EntitySet | undefined, targetEntityType: EntityType | undefined): EntitySet | undefined;
521
+ /**
522
+ * Determines table type options based on context path by resolving the entity set internally.
523
+ *
524
+ * This is a wrapper function that handles the complexity of entity set resolution from annotation files.
525
+ * It parses the annotation files, resolves the entity set from the context path, and returns the
526
+ * appropriate table type options.
527
+ *
528
+ * **Version gating**: Capability-based restrictions are only applied for UI5 1.142.0+.
529
+ * For earlier versions, all table types are available.
530
+ *
531
+ * @param annotationFiles - Array of annotation files containing metadata
532
+ * @param contextPath - Context path or navigation property. Can be:
533
+ * - Full path starting with "/" (e.g., "/Travel", "/Travel/to_Booking")
534
+ * - Navigation property without "/" (e.g., "to_Booking") - requires entitySetName
535
+ * - Entity set name (e.g., "Travel")
536
+ * @param entitySetName - Optional entity set name. Required when contextPath is a navigation property without "/"
537
+ * @param isCapService - Indicates whether the service is a CAP service
538
+ * @param logger - Optional logger for debugging
539
+ * @param minUI5Version - Optional minimum UI5 version. Capability-based restrictions require UI5 1.142.0+
540
+ * @returns An object containing:
541
+ * - `options`: Array of suitable {@link TableTypeV4} values for the entity set
542
+ * - `defaultType`: The recommended {@link TableTypeV4} as the default choice
543
+ * @example
544
+ * // For an analytical service with full path (UI5 1.142+)
545
+ * const result = getTableTypeOptionsByContext(annotationFiles, "/Travel/to_Booking", undefined, true, logger, '1.142.0');
546
+ * // Returns: { options: [AnalyticalTable, ResponsiveTable, GridTable], defaultType: AnalyticalTable }
547
+ * @example
548
+ * // For navigation property with entity set name (UI5 1.120)
549
+ * const result = getTableTypeOptionsByContext(annotationFiles, "to_Booking", "Travel", true, logger, '1.120.0');
550
+ * // Returns: { options: [ResponsiveTable, GridTable, AnalyticalTable, TreeTable], defaultType: ResponsiveTable }
551
+ */
552
+ export declare function getTableTypeOptionsByContext(annotationFiles: FileData[], contextPath: string, entitySetName?: string, isCapService?: boolean, logger?: ExtensionLogger, minUI5Version?: string): TableTypeOptionsResult;
428
553
  /**
429
554
  * Returns the manifest path for a given page based on the provided path parameters.
430
555
  *
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAER,+BAA+B,EAC/B,QAAQ,EACX,MAAM,4CAA4C,CAAC;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC3G,OAAO,EAOH,KAAK,kBAAkB,EAC1B,MAAM,oBAAoB,CAAC;AAsB5B,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAIH,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,QAAQ,EAUb,oBAAoB,EACpB,YAAY,EAEZ,EAAE,EACL,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,iCAAiC,CAAC;AASjF,MAAM,MAAM,eAAe,GACrB,EAAE,CAAC,iBAAiB,GACpB,EAAE,CAAC,YAAY,GACf,EAAE,CAAC,gBAAgB,GACnB,EAAE,CAAC,iCAAiC,GACpC,EAAE,CAAC,oCAAoC,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;CAClC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,2BAA2B;IACxC,YAAY,EAAE,qBAAqB,CAAC;IACpC,OAAO,EAAE,UAAU,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,+BAA+B,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,UAAU,CAAC;IAChC,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,qCAAqC;IAClD,wBAAwB,EAAE,UAAU,CAAC;IACrC,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,yBAAyB,CAAC;IACnC,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAuCD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACjC,kBAAkB,EAAE,cAAc,CAAC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;AAE1D,eAAO,MAAM,2BAA2B,4BAA4B,CAAC;AAErE,eAAO,MAAM,eAAe,OAAO,CAAC;AACpC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAiiBvC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAC/B,UAAU,EAAE,gBAAgB,EAC5B,qBAAqB,EAAE,aAAa,EAAE,EACtC,uBAAuB,EAAE,MAAM,EAC/B,oBAAoB,GAAE,oBAAoB,GAAG,oBAAoB,EAAkC,EACnG,MAAM,CAAC,EAAE,eAAe,EACxB,uBAAuB,UAAQ,EAC/B,SAAS,CAAC,EAAE,UAAU,GACvB,aAAa,EAAE,CAqFjB;AAqBD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,EAAE,CAcxE;AA8DD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,OAAO,GAAG,UAAU,EAAE,sBAAsB,EAAE,UAAU,QAIvG;AAgCD;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACrC,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,MAAM,EAAE,eAAe,EACvB,0BAA0B,GAAE,MAAoC,EAChE,SAAS,CAAC,EAAE,MAAM,EAClB,mBAAmB,CAAC,EAAE,MAAM,GAC7B,IAAI,CA0BN;AAkED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACnC,wBAAwB,EAAE,2BAA2B,EACrD,SAAS,UAAO,EAChB,aAAa,UAAQ,GACtB,IAAI,CAmEN;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CACxC,wBAAwB,EAAE,2BAA2B,EACrD,SAAS,UAAO,GACjB,IAAI,CA0CN;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,2BAA2B,QAQ5E;AACD;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,wBAAwB,EAAE,2BAA2B,QAqC9F;AAED,MAAM,MAAM,qBAAqB,GAAG;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,UAAU,CAAC;IACtB,kBAAkB,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC7C,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,iBAAiB,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACnC,IAAI,EAAE,qBAAqB,EAC3B,OAAO,EAAE,UAAU,EACnB,YAAY,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,UAAU,EAC/B,oBAAoB,GAAE,MAAmC,GAC1D,IAAI,CAoBN;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACpC,IAAI,EAAE,qBAAqB,EAC3B,oBAAoB,GAAE,MAAmC,EACzD,0BAA0B,GAAE,MAAoC,EAChE,0BAA0B,GAAE,MAAyC,GACtE,IAAI,CAYN;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,YAAY,GAAE,MAAgC,EAC9C,mBAAmB,CAAC,EAAE,MAAM,GAC7B,IAAI,CAuBN;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAClC,SAAS,EAAE,UAAU,EACrB,YAAY,EAAE,MAAM,EACpB,YAAY,GAAE,MAA4C,GAC3D,IAAI,CAYN;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,UAAU,EACrB,mBAAmB,EAAE,MAAM,EAC3B,qBAAqB,EAAE,MAAM,EAC7B,UAAU,CAAC,EAAE,UAAU,GACxB,IAAI,CAoCN;AAiCD;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CACxC,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,UA+BzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACrC,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,GACnB,IAAI,CAUN;AAED;;;;;;;;;GASG;AACH,wBAAgB,+BAA+B,CAC3C,SAAS,EAAE,UAAU,EACrB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,mBAAmB,EAAE,MAAM,GAC5B,MAAM,CAyBR;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACtB,KAAK,EAAE,EAAE,CAAC,cAAc,EAAE,EAC1B,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,SAAS,EACrB,WAAW,CAAC,EAAE,MAAM,GACrB,EAAE,CAAC,cAAc,GAAG,SAAS,CAkB/B;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACvC,SAAS,EAAE,UAAU,EACrB,YAAY,EAAE,YAAY,GAC3B,cAAc,CAAC,KAAK,GAAG,cAAc,CAAC,YAAY,CAwBpD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,yBAAyB,CACrC,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,MAAM,EAAE,eAAe,EACvB,0BAA0B,GAAE,MAAyC,EACrE,qBAAqB,SAAK,EAC1B,mBAAmB,SAAK,EACxB,UAAU,CAAC,EAAE,MAAM,GACpB,IAAI,CAmDN;AAED;;;;;;;;GAQG;AACH,wBAAgB,qCAAqC,CACjD,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,MAAM,EAAE,eAAe,EACvB,0BAA0B,GAAE,cAAoD,EAChF,SAAS,SAAK,GACf,IAAI,CAiCN;AA+HD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,SAAK,GAAG,oBAAoB,CAY7E;AAuHD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC3B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,eAAe,GACzB,EAAE,CAAC,oBAAoB,GAAG,SAAS,CA8BrC;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACtC,KAAK,EAAE,QAAQ,EAAE,EACjB,IAAI,EAAE,EAAE,CAAC,oBAAoB,EAC7B,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,aAAa,EAAE,MAAM,GACtB,iBAAiB,GAAG,SAAS,CA0B/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACjC,KAAK,EAAE,QAAQ,EAAE,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,MAAM,CAAC,EAAE,eAAe,GACzB,iBAAiB,GAAG,SAAS,CAM/B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACtC,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,OAAO,EACzB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,eAAe,GACzB,IAAI,CAiEN;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC1C,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,EAAE,CAAC,cAAc,GAC1B,IAAI,CAkCN;AA+BD;;;;;GAKG;AACH,wBAAgB,qCAAqC,CACjD,kBAAkB,EAAE,qCAAqC,EACzD,qBAAqB,EAAE,UAAU,QAMpC;AAED;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CAChD,kBAAkB,EAAE,qCAAqC,EACzD,qBAAqB,EAAE,UAAU,EACjC,aAAa,CAAC,EAAE,MAAM,QAqCzB;AAED;;;;;GAKG;AACH,wBAAgB,gDAAgD,CAC5D,kBAAkB,EAAE,qCAAqC,EACzD,qBAAqB,EAAE,UAAU,QAmCpC;AAcD;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,kBAAkB,EAAE,qCAAqC,QAUxG;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACpC,SAAS,EAAE,UAAU,EACrB,MAAM,EAAE,EAAE,CAAC,cAAc,EACzB,oBAAoB,EAAE,MAAM,EAC5B,MAAM,EAAE,eAAe,EACvB,yBAAyB,EAAE,MAAM,EACjC,oBAAoB,EAAE,MAAM,GAC7B,IAAI,CA2BN;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CACxC,SAAS,EAAE,UAAU,EACrB,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,kBAAkB,EAC9B,cAAc,UAAQ,GACvB,IAAI,CAUN;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,OAAO,CAmDhG;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAKtF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../src/sync/v4/utils/utils.ts"],"names":[],"mappings":"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"}
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.QUALIFIER_SEPARATOR = exports.FIELD_SEPARATOR = exports.DATA_FIELD_FOR_ACTION_GROUP = void 0;
39
+ exports.QUALIFIER_SEPARATOR = exports.FIELD_SEPARATOR = exports.DATA_FIELD_FOR_ACTION_GROUP = exports.MIN_UI5_VERSION_FOR_TABLE_TYPE_RESTRICTIONS = void 0;
40
40
  exports.addExtensionToArray = addExtensionToArray;
41
41
  exports.getColumnsEnum = getColumnsEnum;
42
42
  exports.addEnumForProperties = addEnumForProperties;
@@ -70,8 +70,13 @@ exports.importActionSettingsOfReference = importActionSettingsOfReference;
70
70
  exports.addCustomFieldDefinition = addCustomFieldDefinition;
71
71
  exports.addManifestPathsToProperties = addManifestPathsToProperties;
72
72
  exports.getInsertableForEntitySet = getInsertableForEntitySet;
73
+ exports.getDefaultTableType = getDefaultTableType;
74
+ exports.getTableTypeOptions = getTableTypeOptions;
75
+ exports.ensureEntitySetWithCorrectType = ensureEntitySetWithCorrectType;
76
+ exports.getTableTypeOptionsByContext = getTableTypeOptionsByContext;
73
77
  exports.getPageManifestPath = getPageManifestPath;
74
78
  const utils_1 = require("../../common/utils");
79
+ const importProject_1 = require("../../common/importProject");
75
80
  const StableIdHelper_1 = require("./StableIdHelper");
76
81
  const common_1 = require("../../common");
77
82
  const i18next_1 = __importDefault(require("i18next"));
@@ -83,8 +88,65 @@ const utils_2 = require("../import/utils");
83
88
  const src_1 = require("@sap/ux-specification-types/src");
84
89
  const v4controls = __importStar(require("../export/controls"));
85
90
  const pages = __importStar(require("../export/pages"));
91
+ const v4_1 = require("@sap/ux-specification-types/src/v4");
92
+ const project_access_1 = require("@sap-ux/project-access");
86
93
  const application_1 = require("../application");
87
94
  const propertiesForEdit_1 = require("../generate/utils/propertiesForEdit");
95
+ const utils_3 = require("../sync-rules/utils");
96
+ /**
97
+ * Map of table type options based on the detected default table type.
98
+ * Each table type has a predefined set of compatible options and a default type.
99
+ */
100
+ const TABLE_TYPE_OPTIONS_MAP = {
101
+ [v4_1.TableTypeV4.AnalyticalTable]: {
102
+ options: [v4_1.TableTypeV4.AnalyticalTable, v4_1.TableTypeV4.ResponsiveTable, v4_1.TableTypeV4.GridTable],
103
+ defaultType: v4_1.TableTypeV4.AnalyticalTable
104
+ },
105
+ [v4_1.TableTypeV4.TreeTable]: {
106
+ options: [v4_1.TableTypeV4.TreeTable, v4_1.TableTypeV4.ResponsiveTable, v4_1.TableTypeV4.GridTable],
107
+ defaultType: v4_1.TableTypeV4.TreeTable
108
+ },
109
+ [v4_1.TableTypeV4.ResponsiveTable]: {
110
+ options: [v4_1.TableTypeV4.ResponsiveTable, v4_1.TableTypeV4.GridTable],
111
+ defaultType: v4_1.TableTypeV4.ResponsiveTable
112
+ },
113
+ [v4_1.TableTypeV4.GridTable]: {
114
+ options: [v4_1.TableTypeV4.ResponsiveTable, v4_1.TableTypeV4.GridTable],
115
+ defaultType: v4_1.TableTypeV4.ResponsiveTable
116
+ }
117
+ };
118
+ /**
119
+ * Default table type used as a fallback when entity set is undefined or capabilities cannot be determined.
120
+ * ResponsiveTable is chosen as the safest and most universally applicable option.
121
+ */
122
+ const FALLBACK_TABLE_TYPE = v4_1.TableTypeV4.ResponsiveTable;
123
+ /**
124
+ * Fallback table type options used when entity set capabilities cannot be determined.
125
+ * Derives from FALLBACK_TABLE_TYPE to ensure consistency across fallback scenarios.
126
+ */
127
+ const FALLBACK_TABLE_TYPE_OPTIONS = TABLE_TYPE_OPTIONS_MAP[FALLBACK_TABLE_TYPE];
128
+ /**
129
+ * Minimum UI5 version that supports capability-based table type restrictions.
130
+ *
131
+ * Before 1.142.0:
132
+ * - Table type was optional
133
+ * - All table types were available regardless of service capabilities
134
+ * - No warning messages for missing table type or type-dependent properties
135
+ *
136
+ * From 1.142.0 onwards:
137
+ * - Table type options are restricted based on entity set capabilities (analytical/hierarchical/standard)
138
+ * - Warning messages are shown when table type is missing but type-dependent properties exist
139
+ * - Schema enum values are dynamically restricted to match detected capabilities
140
+ */
141
+ exports.MIN_UI5_VERSION_FOR_TABLE_TYPE_RESTRICTIONS = '1.142.0';
142
+ /**
143
+ * Table type options for UI5 versions before 1.142.0, where capability-based restrictions
144
+ * are not supported. All table types are available, with ResponsiveTable as the default.
145
+ */
146
+ const LEGACY_VERSION_TABLE_TYPE_OPTIONS = {
147
+ options: [v4_1.TableTypeV4.ResponsiveTable, v4_1.TableTypeV4.GridTable, v4_1.TableTypeV4.AnalyticalTable, v4_1.TableTypeV4.TreeTable],
148
+ defaultType: v4_1.TableTypeV4.ResponsiveTable
149
+ };
88
150
  exports.DATA_FIELD_FOR_ACTION_GROUP = 'DataFieldForActionGroup';
89
151
  const UI_ANNOTATION_KEY = 'UI';
90
152
  exports.FIELD_SEPARATOR = '::';
@@ -1995,6 +2057,195 @@ function getInsertableForEntitySet(entitySet, navigationPath) {
1995
2057
  }
1996
2058
  return entitySetInsertable;
1997
2059
  }
2060
+ /**
2061
+ * Determines the default OData V4 table type for an entity set based on its metadata capabilities.
2062
+ *
2063
+ * The decision follows a strict priority order:
2064
+ * 1) Analytical tables take precedence when aggregate transformations are present and the
2065
+ * analytical requirements are satisfied.
2066
+ * 2) Hierarchical tables are selected when a recursive hierarchy is defined and analytical
2067
+ * conditions are not met.
2068
+ * 3) Responsive tables are used as a safe fallback when neither analytical nor hierarchical
2069
+ * characteristics apply.
2070
+ *
2071
+ * The evaluation of analytical suitability differs between CAP and non-CAP services:
2072
+ * - **CAP services**: Require both service-level AND entity-level aggregation annotations.
2073
+ * - **Non-CAP services**: Service-level aggregation annotations are sufficient.
2074
+ *
2075
+ * @param entitySet The entity set whose annotations are evaluated.
2076
+ * @param isCapService Indicates whether the service is a CAP service, affecting analytical requirements.
2077
+ * @returns The default {@link TableTypeV4} to be used for the entity set.
2078
+ */
2079
+ function getDefaultTableType(entitySet, isCapService) {
2080
+ if (!entitySet) {
2081
+ // Fallback when entitySet is not provided
2082
+ return FALLBACK_TABLE_TYPE;
2083
+ }
2084
+ const { hasRecursiveHierarchyForEntitySet, hasAggregateTransformations, hasAggregateTransformationsForEntitySet } = (0, project_access_1.getTableCapabilitiesByEntitySet)(entitySet);
2085
+ // Check for analytical capabilities first (highest priority)
2086
+ // Requires service-level aggregate transformations (hasAggregateTransformations) as a prerequisite
2087
+ // For CAP services: both service-level and entity-level transformations must be present
2088
+ // For non-CAP services: service-level transformations alone are sufficient
2089
+ if (hasAggregateTransformations && (hasAggregateTransformationsForEntitySet || !isCapService)) {
2090
+ return v4_1.TableTypeV4.AnalyticalTable;
2091
+ }
2092
+ // Check for hierarchical data only (no analytical data or analytical requirements not met)
2093
+ if (hasRecursiveHierarchyForEntitySet) {
2094
+ return v4_1.TableTypeV4.TreeTable;
2095
+ }
2096
+ // Default for standard entity sets without analytical or hierarchical capabilities
2097
+ return v4_1.TableTypeV4.ResponsiveTable;
2098
+ }
2099
+ /**
2100
+ * Determines the available table type options and recommended default type for an entity set
2101
+ * based on its metadata capabilities.
2102
+ *
2103
+ * This function analyzes the entity set's capabilities and returns both the list of suitable
2104
+ * table types and the recommended default type. The available options are restricted based
2105
+ * on the detected service characteristics:
2106
+ *
2107
+ * - **Analytical services**: AnalyticalTable, ResponsiveTable, GridTable (default: AnalyticalTable).
2108
+ * - **Hierarchical services**: TreeTable, ResponsiveTable, GridTable (default: TreeTable).
2109
+ * - **Standard services**: ResponsiveTable, GridTable (default: ResponsiveTable).
2110
+ *
2111
+ * **Version gating**: Capability-based restrictions are only applied for UI5 1.142.0+.
2112
+ * For earlier versions, all table types are available (ResponsiveTable, GridTable, AnalyticalTable, TreeTable)
2113
+ * with ResponsiveTable as the default.
2114
+ *
2115
+ * @param entitySet The entity set whose capabilities determine the available table types.
2116
+ * @param isCapService Indicates whether the service is a CAP service, affecting analytical
2117
+ * capability detection.
2118
+ * @param minUI5Version The minimum UI5 version from manifest. Capability-based restrictions
2119
+ * require UI5 1.142.0+.
2120
+ * @returns An object containing:
2121
+ * - `options`: Array of suitable {@link TableTypeV4} values for the entity set
2122
+ * - `defaultType`: The recommended {@link TableTypeV4} as the default choice
2123
+ * @example
2124
+ * // For an entity set with analytical capabilities (UI5 1.142+)
2125
+ * const result = getTableTypeOptions(analyticalEntitySet, true, '1.142.0');
2126
+ * // Returns: { options: [AnalyticalTable, ResponsiveTable, GridTable], defaultType: AnalyticalTable }
2127
+ *
2128
+ * // For the same entity set on UI5 1.120 (all types available, no restrictions)
2129
+ * const result = getTableTypeOptions(analyticalEntitySet, true, '1.120.0');
2130
+ * // Returns: { options: [ResponsiveTable, GridTable, AnalyticalTable, TreeTable], defaultType: ResponsiveTable }
2131
+ */
2132
+ function getTableTypeOptions(entitySet, isCapService, minUI5Version) {
2133
+ // Capability-based restrictions are only available in UI5 1.142.0+
2134
+ // For earlier versions, all table types are available
2135
+ if (minUI5Version && !(0, utils_3.compareUI5Versions)(minUI5Version, exports.MIN_UI5_VERSION_FOR_TABLE_TYPE_RESTRICTIONS)) {
2136
+ return LEGACY_VERSION_TABLE_TYPE_OPTIONS;
2137
+ }
2138
+ const detectedType = getDefaultTableType(entitySet, isCapService);
2139
+ return TABLE_TYPE_OPTIONS_MAP[detectedType];
2140
+ }
2141
+ /**
2142
+ * Creates a virtual EntitySet for capability detection when the entitySet.entityType
2143
+ * doesn't match the actual target EntityType (e.g., for contained navigation).
2144
+ *
2145
+ * This is needed for contained navigation (ContainsTarget=true) where there is no
2146
+ * physical EntitySet in the metadata, but the target EntityType has important
2147
+ * annotations like RecursiveHierarchy.
2148
+ *
2149
+ * @param entitySet - The base entity set (may have wrong entityType for contained navigation)
2150
+ * @param targetEntityType - The actual entity type with correct annotations
2151
+ * @returns EntitySet with correct entityType for capability detection, or original if types match
2152
+ * @example
2153
+ * // For contained navigation "/ZZZC_FINANCIAL_TREE/Set"
2154
+ * const entitySetForCapabilities = ensureEntitySetWithCorrectType(
2155
+ * entitySet, // ZZZC_FINANCIAL_TREE (type: Parameters)
2156
+ * lineItemFacet.entityType // ZZZC_FINANCIAL_TREEType (with RecursiveHierarchy)
2157
+ * );
2158
+ * const options = getTableTypeOptions(entitySetForCapabilities, isCapService);
2159
+ */
2160
+ function ensureEntitySetWithCorrectType(entitySet, targetEntityType) {
2161
+ if (!entitySet || !targetEntityType) {
2162
+ return entitySet;
2163
+ }
2164
+ // If entityType already matches, return as-is
2165
+ if (entitySet.entityType === targetEntityType) {
2166
+ return entitySet;
2167
+ }
2168
+ // Create virtual EntitySet with correct entityType and its annotations
2169
+ return {
2170
+ ...entitySet,
2171
+ entityType: targetEntityType,
2172
+ annotations: targetEntityType.annotations || entitySet.annotations
2173
+ };
2174
+ }
2175
+ /**
2176
+ * Returns the appropriate fallback table type options based on UI5 version.
2177
+ * For UI5 < 1.142.0, returns all table types (legacy behavior).
2178
+ * For UI5 >= 1.142.0, returns restricted fallback options.
2179
+ *
2180
+ * @param minUI5Version - Optional minimum UI5 version
2181
+ * @returns Table type options with all types for legacy versions, or restricted options for modern versions
2182
+ */
2183
+ function getFallbackTableTypeOptions(minUI5Version) {
2184
+ if (minUI5Version && !(0, utils_3.compareUI5Versions)(minUI5Version, exports.MIN_UI5_VERSION_FOR_TABLE_TYPE_RESTRICTIONS)) {
2185
+ return LEGACY_VERSION_TABLE_TYPE_OPTIONS;
2186
+ }
2187
+ return FALLBACK_TABLE_TYPE_OPTIONS;
2188
+ }
2189
+ /**
2190
+ * Determines table type options based on context path by resolving the entity set internally.
2191
+ *
2192
+ * This is a wrapper function that handles the complexity of entity set resolution from annotation files.
2193
+ * It parses the annotation files, resolves the entity set from the context path, and returns the
2194
+ * appropriate table type options.
2195
+ *
2196
+ * **Version gating**: Capability-based restrictions are only applied for UI5 1.142.0+.
2197
+ * For earlier versions, all table types are available.
2198
+ *
2199
+ * @param annotationFiles - Array of annotation files containing metadata
2200
+ * @param contextPath - Context path or navigation property. Can be:
2201
+ * - Full path starting with "/" (e.g., "/Travel", "/Travel/to_Booking")
2202
+ * - Navigation property without "/" (e.g., "to_Booking") - requires entitySetName
2203
+ * - Entity set name (e.g., "Travel")
2204
+ * @param entitySetName - Optional entity set name. Required when contextPath is a navigation property without "/"
2205
+ * @param isCapService - Indicates whether the service is a CAP service
2206
+ * @param logger - Optional logger for debugging
2207
+ * @param minUI5Version - Optional minimum UI5 version. Capability-based restrictions require UI5 1.142.0+
2208
+ * @returns An object containing:
2209
+ * - `options`: Array of suitable {@link TableTypeV4} values for the entity set
2210
+ * - `defaultType`: The recommended {@link TableTypeV4} as the default choice
2211
+ * @example
2212
+ * // For an analytical service with full path (UI5 1.142+)
2213
+ * const result = getTableTypeOptionsByContext(annotationFiles, "/Travel/to_Booking", undefined, true, logger, '1.142.0');
2214
+ * // Returns: { options: [AnalyticalTable, ResponsiveTable, GridTable], defaultType: AnalyticalTable }
2215
+ * @example
2216
+ * // For navigation property with entity set name (UI5 1.120)
2217
+ * const result = getTableTypeOptionsByContext(annotationFiles, "to_Booking", "Travel", true, logger, '1.120.0');
2218
+ * // Returns: { options: [ResponsiveTable, GridTable, AnalyticalTable, TreeTable], defaultType: ResponsiveTable }
2219
+ */
2220
+ function getTableTypeOptionsByContext(annotationFiles, contextPath, entitySetName, isCapService, logger, minUI5Version) {
2221
+ try {
2222
+ // 1. Parse and convert annotation files to ConvertedMetadata
2223
+ const convertedMetadata = (0, utils_1.parseAndMergeAndConvert)(annotationFiles, logger);
2224
+ if (!convertedMetadata) {
2225
+ logger?.info('Could not parse annotation files, returning default table type options');
2226
+ return getFallbackTableTypeOptions(minUI5Version);
2227
+ }
2228
+ // 2. Build full context path if needed
2229
+ // If contextPath doesn't start with "/" and entitySetName is provided, combine them
2230
+ let fullContextPath = contextPath;
2231
+ if (entitySetName && contextPath && !contextPath.startsWith('/')) {
2232
+ fullContextPath = `/${entitySetName}/${contextPath}`;
2233
+ }
2234
+ // 3. Resolve entity set from context path
2235
+ const { entitySet } = (0, importProject_1.getEntityTypeEntitySetFromContextPath)(convertedMetadata, fullContextPath, entitySetName, logger);
2236
+ if (!entitySet) {
2237
+ logger?.info(`Could not resolve entity set for context path: ${fullContextPath}, returning default table type options`);
2238
+ return getFallbackTableTypeOptions(minUI5Version);
2239
+ }
2240
+ // 4. Call existing getTableTypeOptions with resolved entitySet
2241
+ return getTableTypeOptions(entitySet, isCapService, minUI5Version);
2242
+ }
2243
+ catch (error) {
2244
+ logger?.error('Error in getTableTypeOptionsByContext', error);
2245
+ // Fallback to default options on error
2246
+ return getFallbackTableTypeOptions(minUI5Version);
2247
+ }
2248
+ }
1998
2249
  /**
1999
2250
  * Returns the manifest path for a given page based on the provided path parameters.
2000
2251
  *