@sap/ux-specification 1.84.126 → 1.84.128

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 (334) hide show
  1. package/CHANGELOG.md +49 -1
  2. package/dist/documentation/v2/v2-AnalyticalListPage.html +2 -2
  3. package/dist/documentation/v2/v2-ApplicationV2.html +2 -2
  4. package/dist/documentation/v2/v2-ListReport.html +2 -2
  5. package/dist/documentation/v2/v2-ListReportNew.html +2 -2
  6. package/dist/documentation/v2/v2-ObjectPage.html +2 -2
  7. package/dist/documentation/v2/v2-OverviewPage.html +2 -2
  8. package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
  9. package/dist/documentation/v4/v4-ListReport.html +2 -2
  10. package/dist/documentation/v4/v4-ObjectPage.html +2 -2
  11. package/dist/index-min.js +223 -223
  12. package/dist/index-min.js.map +4 -4
  13. package/dist/schemas/v2/ApplicationV2.json +14 -7
  14. package/dist/schemas/v2/ListReportNewConfig.json +167 -0
  15. package/dist/schemas/v4/ApplicationV4.json +10 -5
  16. package/dist/specification/package.json +9 -8
  17. package/dist/specification/scripts/schema/to-json-schema.d.ts.map +1 -1
  18. package/dist/specification/scripts/schema/to-json-schema.js +62 -6
  19. package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
  20. package/dist/specification/src/api.js +1 -1
  21. package/dist/specification/src/ftfs/ftfs.d.ts +1 -1
  22. package/dist/specification/src/ftfs/ftfs.d.ts.map +1 -1
  23. package/dist/specification/src/ftfs/ftfs.js +38 -5
  24. package/dist/specification/src/ftfs/ftfs.js.map +1 -1
  25. package/dist/specification/src/ftfs/parser/annotations.d.ts +9 -0
  26. package/dist/specification/src/ftfs/parser/annotations.d.ts.map +1 -0
  27. package/dist/specification/src/ftfs/parser/annotations.js +13 -0
  28. package/dist/specification/src/ftfs/parser/annotations.js.map +1 -0
  29. package/dist/specification/src/ftfs/parser/index.d.ts +15 -0
  30. package/dist/specification/src/ftfs/parser/index.d.ts.map +1 -0
  31. package/dist/specification/src/ftfs/parser/index.js +35 -0
  32. package/dist/specification/src/ftfs/parser/index.js.map +1 -0
  33. package/dist/specification/src/ftfs/parser/model/AggregationValidator.d.ts +65 -0
  34. package/dist/specification/src/ftfs/parser/model/AggregationValidator.d.ts.map +1 -0
  35. package/dist/specification/src/ftfs/parser/model/AggregationValidator.js +209 -0
  36. package/dist/specification/src/ftfs/parser/model/AggregationValidator.js.map +1 -0
  37. package/dist/specification/src/ftfs/parser/model/ArrayAggregation.d.ts +49 -0
  38. package/dist/specification/src/ftfs/parser/model/ArrayAggregation.d.ts.map +1 -0
  39. package/dist/specification/src/ftfs/parser/model/ArrayAggregation.js +122 -0
  40. package/dist/specification/src/ftfs/parser/model/ArrayAggregation.js.map +1 -0
  41. package/dist/specification/src/ftfs/parser/model/NodeProperty.d.ts +38 -0
  42. package/dist/specification/src/ftfs/parser/model/NodeProperty.d.ts.map +1 -0
  43. package/dist/specification/src/ftfs/parser/model/NodeProperty.js +25 -0
  44. package/dist/specification/src/ftfs/parser/model/NodeProperty.js.map +1 -0
  45. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.d.ts +339 -0
  46. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.d.ts.map +1 -0
  47. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.js +682 -0
  48. package/dist/specification/src/ftfs/parser/model/ObjectAggregation.js.map +1 -0
  49. package/dist/specification/src/ftfs/parser/model/RootAggregation.d.ts +24 -0
  50. package/dist/specification/src/ftfs/parser/model/RootAggregation.d.ts.map +1 -0
  51. package/dist/specification/src/ftfs/parser/model/RootAggregation.js +57 -0
  52. package/dist/specification/src/ftfs/parser/model/RootAggregation.js.map +1 -0
  53. package/dist/specification/src/ftfs/parser/model/TreeModel.d.ts +223 -0
  54. package/dist/specification/src/ftfs/parser/model/TreeModel.d.ts.map +1 -0
  55. package/dist/specification/src/ftfs/parser/model/TreeModel.js +947 -0
  56. package/dist/specification/src/ftfs/parser/model/TreeModel.js.map +1 -0
  57. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.d.ts +34 -0
  58. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.d.ts.map +1 -0
  59. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.js +94 -0
  60. package/dist/specification/src/ftfs/parser/model/actions/ActionAggregation.js.map +1 -0
  61. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.d.ts +67 -0
  62. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.d.ts.map +1 -0
  63. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.js +113 -0
  64. package/dist/specification/src/ftfs/parser/model/actions/ActionsAggregation.js.map +1 -0
  65. package/dist/specification/src/ftfs/parser/model/actions/index.d.ts +3 -0
  66. package/dist/specification/src/ftfs/parser/model/actions/index.d.ts.map +1 -0
  67. package/dist/specification/src/ftfs/parser/model/actions/index.js +19 -0
  68. package/dist/specification/src/ftfs/parser/model/actions/index.js.map +1 -0
  69. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectAggregation.d.ts +17 -0
  70. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectAggregation.d.ts.map +1 -0
  71. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectAggregation.js +29 -0
  72. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectAggregation.js.map +1 -0
  73. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectsAggregation.d.ts +46 -0
  74. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectsAggregation.d.ts.map +1 -0
  75. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectsAggregation.js +66 -0
  76. package/dist/specification/src/ftfs/parser/model/additionalObjects/AdditionalObjectsAggregation.js.map +1 -0
  77. package/dist/specification/src/ftfs/parser/model/additionalObjects/index.d.ts +3 -0
  78. package/dist/specification/src/ftfs/parser/model/additionalObjects/index.d.ts.map +1 -0
  79. package/dist/specification/src/ftfs/parser/model/additionalObjects/index.js +19 -0
  80. package/dist/specification/src/ftfs/parser/model/additionalObjects/index.js.map +1 -0
  81. package/dist/specification/src/ftfs/parser/model/chart/ChartAggregation.d.ts +21 -0
  82. package/dist/specification/src/ftfs/parser/model/chart/ChartAggregation.d.ts.map +1 -0
  83. package/dist/specification/src/ftfs/parser/model/chart/ChartAggregation.js +30 -0
  84. package/dist/specification/src/ftfs/parser/model/chart/ChartAggregation.js.map +1 -0
  85. package/dist/specification/src/ftfs/parser/model/chart/index.d.ts +2 -0
  86. package/dist/specification/src/ftfs/parser/model/chart/index.d.ts.map +1 -0
  87. package/dist/specification/src/ftfs/parser/model/chart/index.js +18 -0
  88. package/dist/specification/src/ftfs/parser/model/chart/index.js.map +1 -0
  89. package/dist/specification/src/ftfs/parser/model/fields/ConnectedFieldsAggregation.d.ts +9 -0
  90. package/dist/specification/src/ftfs/parser/model/fields/ConnectedFieldsAggregation.d.ts.map +1 -0
  91. package/dist/specification/src/ftfs/parser/model/fields/ConnectedFieldsAggregation.js +16 -0
  92. package/dist/specification/src/ftfs/parser/model/fields/ConnectedFieldsAggregation.js.map +1 -0
  93. package/dist/specification/src/ftfs/parser/model/fields/FieldAggregation.d.ts +25 -0
  94. package/dist/specification/src/ftfs/parser/model/fields/FieldAggregation.d.ts.map +1 -0
  95. package/dist/specification/src/ftfs/parser/model/fields/FieldAggregation.js +45 -0
  96. package/dist/specification/src/ftfs/parser/model/fields/FieldAggregation.js.map +1 -0
  97. package/dist/specification/src/ftfs/parser/model/fields/FieldsAggregation.d.ts +22 -0
  98. package/dist/specification/src/ftfs/parser/model/fields/FieldsAggregation.d.ts.map +1 -0
  99. package/dist/specification/src/ftfs/parser/model/fields/FieldsAggregation.js +37 -0
  100. package/dist/specification/src/ftfs/parser/model/fields/FieldsAggregation.js.map +1 -0
  101. package/dist/specification/src/ftfs/parser/model/fields/index.d.ts +4 -0
  102. package/dist/specification/src/ftfs/parser/model/fields/index.d.ts.map +1 -0
  103. package/dist/specification/src/ftfs/parser/model/fields/index.js +20 -0
  104. package/dist/specification/src/ftfs/parser/model/fields/index.js.map +1 -0
  105. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldAggregation.d.ts +39 -0
  106. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldAggregation.d.ts.map +1 -0
  107. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldAggregation.js +97 -0
  108. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldAggregation.js.map +1 -0
  109. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldsAggregation.d.ts +36 -0
  110. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldsAggregation.d.ts.map +1 -0
  111. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldsAggregation.js +59 -0
  112. package/dist/specification/src/ftfs/parser/model/filter-fields/FilterFieldsAggregation.js.map +1 -0
  113. package/dist/specification/src/ftfs/parser/model/filter-fields/index.d.ts +3 -0
  114. package/dist/specification/src/ftfs/parser/model/filter-fields/index.d.ts.map +1 -0
  115. package/dist/specification/src/ftfs/parser/model/filter-fields/index.js +19 -0
  116. package/dist/specification/src/ftfs/parser/model/filter-fields/index.js.map +1 -0
  117. package/dist/specification/src/ftfs/parser/model/index.d.ts +19 -0
  118. package/dist/specification/src/ftfs/parser/model/index.d.ts.map +1 -0
  119. package/dist/specification/src/ftfs/parser/model/index.js +35 -0
  120. package/dist/specification/src/ftfs/parser/model/index.js.map +1 -0
  121. package/dist/specification/src/ftfs/parser/model/macros/MacrosRoot.d.ts +29 -0
  122. package/dist/specification/src/ftfs/parser/model/macros/MacrosRoot.d.ts.map +1 -0
  123. package/dist/specification/src/ftfs/parser/model/macros/MacrosRoot.js +50 -0
  124. package/dist/specification/src/ftfs/parser/model/macros/MacrosRoot.js.map +1 -0
  125. package/dist/specification/src/ftfs/parser/model/macros/index.d.ts +2 -0
  126. package/dist/specification/src/ftfs/parser/model/macros/index.d.ts.map +1 -0
  127. package/dist/specification/src/ftfs/parser/model/macros/index.js +18 -0
  128. package/dist/specification/src/ftfs/parser/model/macros/index.js.map +1 -0
  129. package/dist/specification/src/ftfs/parser/model/sections/HeaderSectionsAggregation.d.ts +31 -0
  130. package/dist/specification/src/ftfs/parser/model/sections/HeaderSectionsAggregation.d.ts.map +1 -0
  131. package/dist/specification/src/ftfs/parser/model/sections/HeaderSectionsAggregation.js +82 -0
  132. package/dist/specification/src/ftfs/parser/model/sections/HeaderSectionsAggregation.js.map +1 -0
  133. package/dist/specification/src/ftfs/parser/model/sections/SectionAggregation.d.ts +78 -0
  134. package/dist/specification/src/ftfs/parser/model/sections/SectionAggregation.d.ts.map +1 -0
  135. package/dist/specification/src/ftfs/parser/model/sections/SectionAggregation.js +126 -0
  136. package/dist/specification/src/ftfs/parser/model/sections/SectionAggregation.js.map +1 -0
  137. package/dist/specification/src/ftfs/parser/model/sections/SectionsAggregation.d.ts +135 -0
  138. package/dist/specification/src/ftfs/parser/model/sections/SectionsAggregation.d.ts.map +1 -0
  139. package/dist/specification/src/ftfs/parser/model/sections/SectionsAggregation.js +402 -0
  140. package/dist/specification/src/ftfs/parser/model/sections/SectionsAggregation.js.map +1 -0
  141. package/dist/specification/src/ftfs/parser/model/sections/SectionsObjectAggregation.d.ts +50 -0
  142. package/dist/specification/src/ftfs/parser/model/sections/SectionsObjectAggregation.d.ts.map +1 -0
  143. package/dist/specification/src/ftfs/parser/model/sections/SectionsObjectAggregation.js +120 -0
  144. package/dist/specification/src/ftfs/parser/model/sections/SectionsObjectAggregation.js.map +1 -0
  145. package/dist/specification/src/ftfs/parser/model/sections/SubSectionsAggregation.d.ts +39 -0
  146. package/dist/specification/src/ftfs/parser/model/sections/SubSectionsAggregation.d.ts.map +1 -0
  147. package/dist/specification/src/ftfs/parser/model/sections/SubSectionsAggregation.js +70 -0
  148. package/dist/specification/src/ftfs/parser/model/sections/SubSectionsAggregation.js.map +1 -0
  149. package/dist/specification/src/ftfs/parser/model/sections/index.d.ts +6 -0
  150. package/dist/specification/src/ftfs/parser/model/sections/index.d.ts.map +1 -0
  151. package/dist/specification/src/ftfs/parser/model/sections/index.js +22 -0
  152. package/dist/specification/src/ftfs/parser/model/sections/index.js.map +1 -0
  153. package/dist/specification/src/ftfs/parser/model/table/ColumnAggregation.d.ts +89 -0
  154. package/dist/specification/src/ftfs/parser/model/table/ColumnAggregation.d.ts.map +1 -0
  155. package/dist/specification/src/ftfs/parser/model/table/ColumnAggregation.js +175 -0
  156. package/dist/specification/src/ftfs/parser/model/table/ColumnAggregation.js.map +1 -0
  157. package/dist/specification/src/ftfs/parser/model/table/ColumnsAggregation.d.ts +113 -0
  158. package/dist/specification/src/ftfs/parser/model/table/ColumnsAggregation.d.ts.map +1 -0
  159. package/dist/specification/src/ftfs/parser/model/table/ColumnsAggregation.js +290 -0
  160. package/dist/specification/src/ftfs/parser/model/table/ColumnsAggregation.js.map +1 -0
  161. package/dist/specification/src/ftfs/parser/model/table/TableAggregation.d.ts +13 -0
  162. package/dist/specification/src/ftfs/parser/model/table/TableAggregation.d.ts.map +1 -0
  163. package/dist/specification/src/ftfs/parser/model/table/TableAggregation.js +21 -0
  164. package/dist/specification/src/ftfs/parser/model/table/TableAggregation.js.map +1 -0
  165. package/dist/specification/src/ftfs/parser/model/table/ToolbarAggregation.d.ts +15 -0
  166. package/dist/specification/src/ftfs/parser/model/table/ToolbarAggregation.d.ts.map +1 -0
  167. package/dist/specification/src/ftfs/parser/model/table/ToolbarAggregation.js +22 -0
  168. package/dist/specification/src/ftfs/parser/model/table/ToolbarAggregation.js.map +1 -0
  169. package/dist/specification/src/ftfs/parser/model/table/index.d.ts +5 -0
  170. package/dist/specification/src/ftfs/parser/model/table/index.d.ts.map +1 -0
  171. package/dist/specification/src/ftfs/parser/model/table/index.js +21 -0
  172. package/dist/specification/src/ftfs/parser/model/table/index.js.map +1 -0
  173. package/dist/specification/src/ftfs/parser/model/table/utils.d.ts +12 -0
  174. package/dist/specification/src/ftfs/parser/model/table/utils.d.ts.map +1 -0
  175. package/dist/specification/src/ftfs/parser/model/table/utils.js +44 -0
  176. package/dist/specification/src/ftfs/parser/model/table/utils.js.map +1 -0
  177. package/dist/specification/src/ftfs/parser/model/types/annotations.d.ts +63 -0
  178. package/dist/specification/src/ftfs/parser/model/types/annotations.d.ts.map +1 -0
  179. package/dist/specification/src/ftfs/parser/model/types/annotations.js +29 -0
  180. package/dist/specification/src/ftfs/parser/model/types/annotations.js.map +1 -0
  181. package/dist/specification/src/ftfs/parser/model/types/common.d.ts +13 -0
  182. package/dist/specification/src/ftfs/parser/model/types/common.d.ts.map +1 -0
  183. package/dist/specification/src/ftfs/parser/model/types/common.js +3 -0
  184. package/dist/specification/src/ftfs/parser/model/types/common.js.map +1 -0
  185. package/dist/specification/src/ftfs/parser/model/types/index.d.ts +219 -0
  186. package/dist/specification/src/ftfs/parser/model/types/index.d.ts.map +1 -0
  187. package/dist/specification/src/ftfs/parser/model/types/index.js +156 -0
  188. package/dist/specification/src/ftfs/parser/model/types/index.js.map +1 -0
  189. package/dist/specification/src/ftfs/parser/model/utils/annotations.d.ts +38 -0
  190. package/dist/specification/src/ftfs/parser/model/utils/annotations.d.ts.map +1 -0
  191. package/dist/specification/src/ftfs/parser/model/utils/annotations.js +120 -0
  192. package/dist/specification/src/ftfs/parser/model/utils/annotations.js.map +1 -0
  193. package/dist/specification/src/ftfs/parser/model/utils/i18n.d.ts +33 -0
  194. package/dist/specification/src/ftfs/parser/model/utils/i18n.d.ts.map +1 -0
  195. package/dist/specification/src/ftfs/parser/model/utils/i18n.js +69 -0
  196. package/dist/specification/src/ftfs/parser/model/utils/i18n.js.map +1 -0
  197. package/dist/specification/src/ftfs/parser/model/utils/index.d.ts +6 -0
  198. package/dist/specification/src/ftfs/parser/model/utils/index.d.ts.map +1 -0
  199. package/dist/specification/src/ftfs/parser/model/utils/index.js +22 -0
  200. package/dist/specification/src/ftfs/parser/model/utils/index.js.map +1 -0
  201. package/dist/specification/src/ftfs/parser/model/utils/object.d.ts +25 -0
  202. package/dist/specification/src/ftfs/parser/model/utils/object.d.ts.map +1 -0
  203. package/dist/specification/src/ftfs/parser/model/utils/object.js +68 -0
  204. package/dist/specification/src/ftfs/parser/model/utils/object.js.map +1 -0
  205. package/dist/specification/src/ftfs/parser/model/utils/sort.d.ts +31 -0
  206. package/dist/specification/src/ftfs/parser/model/utils/sort.d.ts.map +1 -0
  207. package/dist/specification/src/ftfs/parser/model/utils/sort.js +18 -0
  208. package/dist/specification/src/ftfs/parser/model/utils/sort.js.map +1 -0
  209. package/dist/specification/src/ftfs/parser/model/utils/utils.d.ts +95 -0
  210. package/dist/specification/src/ftfs/parser/model/utils/utils.d.ts.map +1 -0
  211. package/dist/specification/src/ftfs/parser/model/utils/utils.js +267 -0
  212. package/dist/specification/src/ftfs/parser/model/utils/utils.js.map +1 -0
  213. package/dist/specification/src/ftfs/parser/model/views/ViewAggregation.d.ts +62 -0
  214. package/dist/specification/src/ftfs/parser/model/views/ViewAggregation.d.ts.map +1 -0
  215. package/dist/specification/src/ftfs/parser/model/views/ViewAggregation.js +111 -0
  216. package/dist/specification/src/ftfs/parser/model/views/ViewAggregation.js.map +1 -0
  217. package/dist/specification/src/ftfs/parser/model/views/ViewsAggregation.d.ts +54 -0
  218. package/dist/specification/src/ftfs/parser/model/views/ViewsAggregation.d.ts.map +1 -0
  219. package/dist/specification/src/ftfs/parser/model/views/ViewsAggregation.js +144 -0
  220. package/dist/specification/src/ftfs/parser/model/views/ViewsAggregation.js.map +1 -0
  221. package/dist/specification/src/ftfs/parser/model/views/index.d.ts +3 -0
  222. package/dist/specification/src/ftfs/parser/model/views/index.d.ts.map +1 -0
  223. package/dist/specification/src/ftfs/parser/model/views/index.js +19 -0
  224. package/dist/specification/src/ftfs/parser/model/views/index.js.map +1 -0
  225. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFilterAggregation.d.ts +11 -0
  226. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFilterAggregation.d.ts.map +1 -0
  227. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFilterAggregation.js +18 -0
  228. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFilterAggregation.js.map +1 -0
  229. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFiltersAggregation.d.ts +11 -0
  230. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFiltersAggregation.d.ts.map +1 -0
  231. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFiltersAggregation.js +18 -0
  232. package/dist/specification/src/ftfs/parser/model/visual-filters/VisualFiltersAggregation.js.map +1 -0
  233. package/dist/specification/src/ftfs/parser/model/visual-filters/index.d.ts +3 -0
  234. package/dist/specification/src/ftfs/parser/model/visual-filters/index.d.ts.map +1 -0
  235. package/dist/specification/src/ftfs/parser/model/visual-filters/index.js +19 -0
  236. package/dist/specification/src/ftfs/parser/model/visual-filters/index.js.map +1 -0
  237. package/dist/specification/src/sync/common/dist_tag.json +17 -18
  238. package/dist/specification/src/sync/common/i18n.json +17 -3
  239. package/dist/specification/src/sync/common/utils.d.ts +25 -0
  240. package/dist/specification/src/sync/common/utils.d.ts.map +1 -1
  241. package/dist/specification/src/sync/common/utils.js +55 -0
  242. package/dist/specification/src/sync/common/utils.js.map +1 -1
  243. package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts.map +1 -1
  244. package/dist/specification/src/sync/v2/export/exportPageGeneric.js +1 -10
  245. package/dist/specification/src/sync/v2/export/exportPageGeneric.js.map +1 -1
  246. package/dist/specification/src/sync/v2/generate/listReport.d.ts.map +1 -1
  247. package/dist/specification/src/sync/v2/generate/listReport.js.map +1 -1
  248. package/dist/specification/src/sync/v2/generate/manifestPropertyUtils.d.ts +1 -2
  249. package/dist/specification/src/sync/v2/generate/manifestPropertyUtils.d.ts.map +1 -1
  250. package/dist/specification/src/sync/v2/generate/schemaAdaptation.d.ts +1 -1
  251. package/dist/specification/src/sync/v2/generate/schemaAdaptation.d.ts.map +1 -1
  252. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js +6 -18
  253. package/dist/specification/src/sync/v2/generate/schemaAdaptation.js.map +1 -1
  254. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts +48 -0
  255. package/dist/specification/src/sync/v2/generate/stableIdUtils.d.ts.map +1 -0
  256. package/dist/specification/src/sync/v2/generate/stableIdUtils.js +180 -0
  257. package/dist/specification/src/sync/v2/generate/stableIdUtils.js.map +1 -0
  258. package/dist/specification/src/sync/v2/generate/utils.d.ts +70 -2
  259. package/dist/specification/src/sync/v2/generate/utils.d.ts.map +1 -1
  260. package/dist/specification/src/sync/v2/generate/utils.js +207 -7
  261. package/dist/specification/src/sync/v2/generate/utils.js.map +1 -1
  262. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Action.d.ts +57 -0
  263. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Action.d.ts.map +1 -1
  264. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Action.js +194 -4
  265. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Action.js.map +1 -1
  266. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js +3 -2
  267. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/FilterBar.js.map +1 -1
  268. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.d.ts +78 -0
  269. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.d.ts.map +1 -0
  270. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js +454 -0
  271. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/MultiTable.js.map +1 -0
  272. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts +53 -0
  273. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.d.ts.map +1 -0
  274. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js +149 -0
  275. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/Table.js.map +1 -0
  276. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts +2 -0
  277. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.d.ts.map +1 -1
  278. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js +2 -0
  279. package/dist/specification/src/sync/v2/genericSchemaHandling/controls/index.js.map +1 -1
  280. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.d.ts +10 -0
  281. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.d.ts.map +1 -1
  282. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.js +90 -7
  283. package/dist/specification/src/sync/v2/genericSchemaHandling/pages/ListReportNew.js.map +1 -1
  284. package/dist/specification/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -1
  285. package/dist/specification/src/sync/v2/import/pages/overviewPage.js +36 -20
  286. package/dist/specification/src/sync/v2/import/pages/overviewPage.js.map +1 -1
  287. package/dist/specification/src/sync/v2/utils.d.ts +7 -0
  288. package/dist/specification/src/sync/v2/utils.d.ts.map +1 -1
  289. package/dist/specification/src/sync/v2/utils.js +10 -0
  290. package/dist/specification/src/sync/v2/utils.js.map +1 -1
  291. package/dist/specification/src/sync/v4/export/manifest.js +1 -1
  292. package/dist/specification/src/sync/v4/export/manifest.js.map +1 -1
  293. package/dist/specification/src/sync/v4/generate/listReport.d.ts.map +1 -1
  294. package/dist/specification/src/sync/v4/generate/listReport.js +75 -8
  295. package/dist/specification/src/sync/v4/generate/listReport.js.map +1 -1
  296. package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
  297. package/dist/specification/src/sync/v4/generate/objectPage.js +81 -32
  298. package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
  299. package/dist/specification/src/sync/v4/import/app/appProvider.d.ts.map +1 -1
  300. package/dist/specification/src/sync/v4/import/app/appProvider.js +3 -0
  301. package/dist/specification/src/sync/v4/import/app/appProvider.js.map +1 -1
  302. package/dist/specification/src/sync/v4/import/pages/listReport.d.ts.map +1 -1
  303. package/dist/specification/src/sync/v4/import/pages/listReport.js +3 -1
  304. package/dist/specification/src/sync/v4/import/pages/listReport.js.map +1 -1
  305. package/dist/specification/src/sync/v4/utils/utils.d.ts +34 -1
  306. package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
  307. package/dist/specification/src/sync/v4/utils/utils.js +95 -0
  308. package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
  309. package/dist/types/src/apiTypes.d.ts +22 -0
  310. package/dist/types/src/apiTypes.d.ts.map +1 -1
  311. package/dist/types/src/apiTypes.js.map +1 -1
  312. package/dist/types/src/common/types.d.ts +1 -0
  313. package/dist/types/src/common/types.d.ts.map +1 -1
  314. package/dist/types/src/index.d.ts +1 -0
  315. package/dist/types/src/index.d.ts.map +1 -1
  316. package/dist/types/src/index.js +2 -1
  317. package/dist/types/src/index.js.map +1 -1
  318. package/dist/types/src/parser/application.d.ts +22 -0
  319. package/dist/types/src/parser/application.d.ts.map +1 -0
  320. package/dist/types/src/parser/application.js +3 -0
  321. package/dist/types/src/parser/application.js.map +1 -0
  322. package/dist/types/src/parser/index.d.ts +3 -0
  323. package/dist/types/src/parser/index.d.ts.map +1 -0
  324. package/dist/types/src/parser/index.js +18 -0
  325. package/dist/types/src/parser/index.js.map +1 -0
  326. package/dist/types/src/parser/model.d.ts +17 -0
  327. package/dist/types/src/parser/model.d.ts.map +1 -0
  328. package/dist/types/src/parser/model.js +3 -0
  329. package/dist/types/src/parser/model.js.map +1 -0
  330. package/package.json +9 -8
  331. package/dist/specification/src/ftfs/annotations.d.ts +0 -12
  332. package/dist/specification/src/ftfs/annotations.d.ts.map +0 -1
  333. package/dist/specification/src/ftfs/annotations.js +0 -50
  334. package/dist/specification/src/ftfs/annotations.js.map +0 -1
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAnnotationNodeById = getAnnotationNodeById;
4
+ exports.getNodeLocations = getNodeLocations;
5
+ exports.nodeMatcher = nodeMatcher;
6
+ exports.getMatchingNode = getMatchingNode;
7
+ const types_1 = require("../types");
8
+ const annotations_1 = require("../../annotations");
9
+ // terms of special parent child relations generated by specification
10
+ // (parent child relations in specification which are not found in anno libs ui nodes)
11
+ const SPECIAL_CHILD_NODES = new Map();
12
+ SPECIAL_CHILD_NODES.set('com.sap.vocabularies.UI.v1.HeaderInfo', new Set(['com.sap.vocabularies.UI.v1.HeaderFacets', 'com.sap.vocabularies.UI.v1.Identification']));
13
+ const GENERIC_ACTION_TERMS = ['com.sap.vocabularies.UI.v1.DeleteHidden', 'com.sap.vocabularies.UI.v1.UpdateHidden'];
14
+ const stripTarget = (annotationPath) => (annotationPath || '').split('/@').pop() || '';
15
+ /**
16
+ * Retrieves a `UINode` from the given annotations by its hierarchical node ID.
17
+ *
18
+ * @param annotations The annotations object containing nodes.
19
+ * @param id The hierarchical node ID to search for.
20
+ * @returns The matching `UINode` if found, otherwise `undefined`.
21
+ */
22
+ function getAnnotationNodeById(annotations, id) {
23
+ let node = annotations.nodes.find((node) => node?.nodeId && node.nodeId[0] === id[0]);
24
+ for (let i = 1; i < id.length; i++) {
25
+ if (node && (0, annotations_1.isTooComplex)(node)) {
26
+ return node;
27
+ }
28
+ node = 'subnodes' in node ? node?.subnodes.find((node) => node.nodeId[i] === id[i]) : undefined;
29
+ }
30
+ return node;
31
+ }
32
+ /**
33
+ * Returns all locations for the given node.
34
+ *
35
+ * @param node Annotation node.
36
+ * @returns All locations for the given node.
37
+ */
38
+ function getNodeLocations(node) {
39
+ if ((0, annotations_1.isTooComplex)(node)) {
40
+ return node.tooComplexLocations ?? [];
41
+ }
42
+ if (node.location) {
43
+ return [node.location];
44
+ }
45
+ return [];
46
+ }
47
+ /**
48
+ * Finds a `UINode` within a tree of nodes that matches the given annotation path.
49
+ *
50
+ * @param annotationPath - The annotation path to match.
51
+ * @param nodes - The list of nodes to search within.
52
+ * @param shallow - If true, only searches the top-level nodes.
53
+ * @param lookUpIndex - Optional index hint to optimize search order.
54
+ * @returns The matching node if found, otherwise `undefined`.
55
+ */
56
+ function nodeMatcher(annotationPath, nodes, shallow, lookUpIndex) {
57
+ const indexes = getNodeMatcherIndexes(nodes, lookUpIndex);
58
+ for (const index of indexes) {
59
+ const element = nodes[index];
60
+ const adjustedAnnotationPath = element.annotationPath
61
+ .split('/')
62
+ .map((segment, i) => (i === 1 ? (segment.split('.').slice(-1)[0] ?? segment) : segment))
63
+ .join('/');
64
+ if (annotationPath === element.annotationPath || annotationPath === adjustedAnnotationPath) {
65
+ return element;
66
+ }
67
+ else if (!shallow && !(0, annotations_1.isTooComplex)(element) && element.subnodes.length > 0) {
68
+ const result = nodeMatcher(annotationPath, element.subnodes, undefined, lookUpIndex);
69
+ if (result) {
70
+ return result;
71
+ }
72
+ }
73
+ }
74
+ }
75
+ /**
76
+ * Method finds matching node using passed schema annotation path and tree object nested nodes and full nodes.
77
+ *
78
+ * @param schemaAnnotationPath Annotation path from schema to look up in annotation nodes.
79
+ * @param annotationNodes Full annotation nodes tree.
80
+ * @param childAnnotationNodes Current level's annotation nodes - mainly nested nodes are used to look up, but there is special cases when nodes are not on same level as schema.
81
+ * @param nodeAnnotationPath Current annotation node path.
82
+ * @param index Node index to look.
83
+ * @returns Matching annotation node.
84
+ */
85
+ function getMatchingNode(schemaAnnotationPath, annotationNodes, childAnnotationNodes, nodeAnnotationPath, index) {
86
+ const schemaAnnotationPathTerm = stripTarget(schemaAnnotationPath);
87
+ let matchedNode = nodeMatcher(schemaAnnotationPath, childAnnotationNodes, undefined, index);
88
+ // Special matching of generic action nodes
89
+ if (!matchedNode && GENERIC_ACTION_TERMS.includes(schemaAnnotationPathTerm)) {
90
+ const genericActionsNode = annotationNodes.find((node) => node.nodeType === types_1.UI_NODE_TYPE_GENERIC_ACTIONS);
91
+ matchedNode = genericActionsNode?.subnodes.find((node) => node.annotationPath === schemaAnnotationPath);
92
+ }
93
+ if (!matchedNode && SPECIAL_CHILD_NODES.get(stripTarget(nodeAnnotationPath))?.has(schemaAnnotationPathTerm)) {
94
+ matchedNode = nodeMatcher(schemaAnnotationPath, annotationNodes, true, index);
95
+ }
96
+ return matchedNode;
97
+ }
98
+ /**
99
+ * Method prepares array with indexes to loop through.
100
+ * If index is passed as param, then we need place it first.
101
+ * It is used for cases when nodes can have same path, but different order indexes.
102
+ *
103
+ * @param nodes Nodes to loop.
104
+ * @param index Index to place as very first.
105
+ * @returns Array of index to loop.
106
+ */
107
+ function getNodeMatcherIndexes(nodes, index) {
108
+ const indexes = [];
109
+ if (index !== undefined && nodes.length > index) {
110
+ // Place passed index as first
111
+ indexes.push(index);
112
+ }
113
+ for (let i = 0; i < nodes.length; i++) {
114
+ if (i !== index) {
115
+ indexes.push(i);
116
+ }
117
+ }
118
+ return indexes;
119
+ }
120
+ //# sourceMappingURL=annotations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/annotations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import type { I18nBundle } from '@sap-ux/i18n';
2
+ import type { ProjectType } from '@sap-ux/project-access';
3
+ import type { TranslationBundles, TranslationBundleKeys } from '../types';
4
+ import type { ObjectAggregation } from '../ObjectAggregation';
5
+ /**
6
+ * Method extracts i18n binding and returns key of i18n entry.
7
+ *
8
+ * @param input - Binding value.
9
+ * @param resolveAnnotationBinding - Check if method should resolve syntax annotation based i18n binding.
10
+ * @param forceKeyExtraction - Optional parameter to force key extraction in case of {{key}} format.
11
+ * @returns I18n entry key or undefined if input does not matches i18n binding pattern.
12
+ */
13
+ export declare const extractI18nKey: (input?: string, resolveAnnotationBinding?: boolean, forceKeyExtraction?: boolean) => string | undefined;
14
+ /**
15
+ * Method to resolve passed i18n binding value into value from i18n bundle.
16
+ *
17
+ * @param value Binding value like `{i18n>key}`.
18
+ * @param i18nBundle I18n bundle data.
19
+ * @returns Resolved value from i18n bundle.
20
+ */
21
+ export declare const resolveI18nValue: (value: string, i18nBundle?: I18nBundle) => string | undefined;
22
+ /**
23
+ * Method returns name of i18n bundle depending on passed project type and entity.
24
+ *
25
+ * @param isCustom Is custom extension.
26
+ * @param isViewNode Is visible node.
27
+ * @param isAnnotation Node has mapping to annotation.
28
+ * @param projectType Project type.
29
+ * @returns I18n bundle name.
30
+ */
31
+ export declare const getI18nBundleName: (isCustom?: boolean, isViewNode?: boolean, isAnnotation?: boolean, projectType?: ProjectType) => TranslationBundleKeys;
32
+ export declare const getRelevantI18nBundle: (aggregation: ObjectAggregation, bundle?: TranslationBundles, projectType?: ProjectType) => I18nBundle | undefined;
33
+ //# sourceMappingURL=i18n.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI9D;;;;;;;GAOG;AACH,eAAO,MAAM,cAAc,GACvB,cAAU,EACV,kCAAgC,EAChC,qBAAqB,OAAO,KAC7B,MAAM,GAAG,SAUX,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,EAAE,aAAY,UAAe,KAAG,MAAM,GAAG,SAQtF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,GAC1B,WAAW,OAAO,EAClB,aAAa,OAAO,EACpB,eAAe,OAAO,EACtB,cAAa,WAA2B,KACzC,qBASF,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAC9B,aAAa,iBAAiB,EAC9B,SAAS,kBAAkB,EAC3B,cAAc,WAAW,KAC1B,UAAU,GAAG,SAMf,CAAC"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getRelevantI18nBundle = exports.getI18nBundleName = exports.resolveI18nValue = exports.extractI18nKey = void 0;
4
+ const types_1 = require("../types");
5
+ const I18N_BINDING_PREFIX = 'i18n';
6
+ /**
7
+ * Method extracts i18n binding and returns key of i18n entry.
8
+ *
9
+ * @param input - Binding value.
10
+ * @param resolveAnnotationBinding - Check if method should resolve syntax annotation based i18n binding.
11
+ * @param forceKeyExtraction - Optional parameter to force key extraction in case of {{key}} format.
12
+ * @returns I18n entry key or undefined if input does not matches i18n binding pattern.
13
+ */
14
+ const extractI18nKey = (input = '', resolveAnnotationBinding = false, forceKeyExtraction) => {
15
+ if (/^{{[^\\{}:]+}}$/.exec(input) && (!resolveAnnotationBinding || forceKeyExtraction)) {
16
+ return input.toString().substring(2, input.length - 2);
17
+ }
18
+ const prefixRegex = resolveAnnotationBinding
19
+ ? `(${I18N_BINDING_PREFIX}|@${I18N_BINDING_PREFIX})`
20
+ : `${I18N_BINDING_PREFIX}`;
21
+ const mathIndex = resolveAnnotationBinding ? 2 : 1;
22
+ const i18nMatch = new RegExp(`^{${prefixRegex}>([^\\{}:]+)}$`).exec(input);
23
+ return i18nMatch ? i18nMatch[mathIndex] : undefined;
24
+ };
25
+ exports.extractI18nKey = extractI18nKey;
26
+ /**
27
+ * Method to resolve passed i18n binding value into value from i18n bundle.
28
+ *
29
+ * @param value Binding value like `{i18n>key}`.
30
+ * @param i18nBundle I18n bundle data.
31
+ * @returns Resolved value from i18n bundle.
32
+ */
33
+ const resolveI18nValue = (value, i18nBundle = {}) => {
34
+ const key = (0, exports.extractI18nKey)(value, true, true);
35
+ if (key) {
36
+ const entries = i18nBundle[key];
37
+ if (entries?.length > 0) {
38
+ return entries[0].value?.value;
39
+ }
40
+ }
41
+ };
42
+ exports.resolveI18nValue = resolveI18nValue;
43
+ /**
44
+ * Method returns name of i18n bundle depending on passed project type and entity.
45
+ *
46
+ * @param isCustom Is custom extension.
47
+ * @param isViewNode Is visible node.
48
+ * @param isAnnotation Node has mapping to annotation.
49
+ * @param projectType Project type.
50
+ * @returns I18n bundle name.
51
+ */
52
+ const getI18nBundleName = (isCustom, isViewNode, isAnnotation, projectType = 'EDMXBackend') => {
53
+ if (['CAPJava', 'CAPNodejs'].includes(projectType) && !isCustom && isViewNode) {
54
+ // CAP project - for non custom view nodes like fields, sections, columns we need use translation from service bundle
55
+ return types_1.TRANSLATION_BUNDLE_SERVICE;
56
+ }
57
+ if (isAnnotation) {
58
+ return types_1.TRANSLATION_BUNDLE_ANNOTATION;
59
+ }
60
+ return types_1.TRANSLATION_BUNDLE_UI5;
61
+ };
62
+ exports.getI18nBundleName = getI18nBundleName;
63
+ const getRelevantI18nBundle = (aggregation, bundle, projectType) => {
64
+ return bundle
65
+ ? bundle[(0, exports.getI18nBundleName)(aggregation.custom, aggregation.isViewNode, !!aggregation.annotationNodeId, projectType)]
66
+ : {};
67
+ };
68
+ exports.getRelevantI18nBundle = getRelevantI18nBundle;
69
+ //# sourceMappingURL=i18n.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/i18n.ts"],"names":[],"mappings":";;;AAGA,oCAA6G;AAG7G,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEnC;;;;;;;GAOG;AACI,MAAM,cAAc,GAAG,CAC1B,KAAK,GAAG,EAAE,EACV,wBAAwB,GAAG,KAAK,EAChC,kBAA4B,EACV,EAAE;IACpB,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,wBAAwB,IAAI,kBAAkB,CAAC,EAAE,CAAC;QACrF,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,WAAW,GAAG,wBAAwB;QACxC,CAAC,CAAC,IAAI,mBAAmB,KAAK,mBAAmB,GAAG;QACpD,CAAC,CAAC,GAAG,mBAAmB,EAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,KAAK,WAAW,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3E,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC,CAAC;AAdW,QAAA,cAAc,kBAczB;AAEF;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,aAAyB,EAAE,EAAsB,EAAE;IAC/F,MAAM,GAAG,GAAG,IAAA,sBAAc,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9C,IAAI,GAAG,EAAE,CAAC;QACN,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC;QACnC,CAAC;IACL,CAAC;AACL,CAAC,CAAC;AARW,QAAA,gBAAgB,oBAQ3B;AAEF;;;;;;;;GAQG;AACI,MAAM,iBAAiB,GAAG,CAC7B,QAAkB,EAClB,UAAoB,EACpB,YAAsB,EACtB,cAA2B,aAAa,EACnB,EAAE;IACvB,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,IAAI,UAAU,EAAE,CAAC;QAC5E,qHAAqH;QACrH,OAAO,kCAA0B,CAAC;IACtC,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACf,OAAO,qCAA6B,CAAC;IACzC,CAAC;IACD,OAAO,8BAAsB,CAAC;AAClC,CAAC,CAAC;AAdW,QAAA,iBAAiB,qBAc5B;AAEK,MAAM,qBAAqB,GAAG,CACjC,WAA8B,EAC9B,MAA2B,EAC3B,WAAyB,EACH,EAAE;IACxB,OAAO,MAAM;QACT,CAAC,CAAC,MAAM,CACF,IAAA,yBAAiB,EAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAC7G;QACH,CAAC,CAAC,EAAE,CAAC;AACb,CAAC,CAAC;AAVW,QAAA,qBAAqB,yBAUhC"}
@@ -0,0 +1,6 @@
1
+ export * from './annotations';
2
+ export * from './i18n';
3
+ export * from './object';
4
+ export * from './sort';
5
+ export * from './utils';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./annotations"), exports);
18
+ __exportStar(require("./i18n"), exports);
19
+ __exportStar(require("./object"), exports);
20
+ __exportStar(require("./sort"), exports);
21
+ __exportStar(require("./utils"), exports);
22
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,yCAAuB;AACvB,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Method checks if arrays are same - check is performed without deep equality.
3
+ *
4
+ * @param arr1 - First array.
5
+ * @param arr2 - Second array.
6
+ * @returns Is arrays are same.
7
+ */
8
+ export declare const isArrayEqual: (arr1: Array<unknown> | null | undefined, arr2: Array<unknown> | null | undefined) => boolean;
9
+ /**
10
+ * Method checks if array 'arr1' ends with all entries from 'arr2'.
11
+ *
12
+ * @param arr1 - First array.
13
+ * @param arr2 - Second array.
14
+ * @returns Is 'arr1' ends with entries from 'arr2'.
15
+ */
16
+ export declare const isArrayEndsWith: <T>(arr1: Array<T> | null, arr2: Array<T> | null) => boolean;
17
+ /**
18
+ * Method to get value for passed path in passed object.
19
+ *
20
+ * @param obj - Object to use.
21
+ * @param paths - Path for searching property/value.
22
+ * @returns Found value for passed path.
23
+ */
24
+ export declare const getProperty: (obj: object, paths: Array<string | number>) => unknown;
25
+ //# sourceMappingURL=object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/object.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GACrB,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,EACvC,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,KACxC,OAUF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,CAAC,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,KAAG,OAcjF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,EAAE,OAAO,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAG,OAcxE,CAAC"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getProperty = exports.isArrayEndsWith = exports.isArrayEqual = void 0;
4
+ /**
5
+ * Method checks if arrays are same - check is performed without deep equality.
6
+ *
7
+ * @param arr1 - First array.
8
+ * @param arr2 - Second array.
9
+ * @returns Is arrays are same.
10
+ */
11
+ const isArrayEqual = (arr1, arr2) => {
12
+ if (!arr1 || !arr2) {
13
+ return arr1 === arr2;
14
+ }
15
+ return (arr1.length === arr2.length &&
16
+ arr1.every(function (value, index) {
17
+ return value === arr2[index];
18
+ }));
19
+ };
20
+ exports.isArrayEqual = isArrayEqual;
21
+ /**
22
+ * Method checks if array 'arr1' ends with all entries from 'arr2'.
23
+ *
24
+ * @param arr1 - First array.
25
+ * @param arr2 - Second array.
26
+ * @returns Is 'arr1' ends with entries from 'arr2'.
27
+ */
28
+ const isArrayEndsWith = (arr1, arr2) => {
29
+ if (!arr1 || !arr2 || arr2.length > arr1.length) {
30
+ return false;
31
+ }
32
+ let index1 = arr1.length - 1;
33
+ let index2 = arr2.length - 1;
34
+ while (index2 >= 0) {
35
+ if (arr2[index2] !== arr1[index1]) {
36
+ return false;
37
+ }
38
+ index1--;
39
+ index2--;
40
+ }
41
+ return true;
42
+ };
43
+ exports.isArrayEndsWith = isArrayEndsWith;
44
+ /**
45
+ * Method to get value for passed path in passed object.
46
+ *
47
+ * @param obj - Object to use.
48
+ * @param paths - Path for searching property/value.
49
+ * @returns Found value for passed path.
50
+ */
51
+ const getProperty = (obj, paths) => {
52
+ let current = obj;
53
+ for (const path of paths) {
54
+ if (path === undefined) {
55
+ continue;
56
+ }
57
+ if (typeof current === 'object' && path in current) {
58
+ // found and continue
59
+ current = current[path];
60
+ }
61
+ else {
62
+ return undefined;
63
+ }
64
+ }
65
+ return current;
66
+ };
67
+ exports.getProperty = getProperty;
68
+ //# sourceMappingURL=object.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/object.ts"],"names":[],"mappings":";;;AAAA;;;;;;GAMG;AACI,MAAM,YAAY,GAAG,CACxB,IAAuC,EACvC,IAAuC,EAChC,EAAE;IACT,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,IAAI,KAAK,IAAI,CAAC;IACzB,CAAC;IACD,OAAO,CACH,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;QAC3B,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,EAAE,KAAK;YAC7B,OAAO,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC,CACL,CAAC;AACN,CAAC,CAAC;AAbW,QAAA,YAAY,gBAavB;AAEF;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,CAAI,IAAqB,EAAE,IAAqB,EAAW,EAAE;IACxF,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9C,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;IACb,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B;AAEF;;;;;;GAMG;AACI,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,KAA6B,EAAW,EAAE;IAC/E,IAAI,OAAO,GAAG,GAAG,CAAC;IAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACrB,SAAS;QACb,CAAC;QACD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YACjD,qBAAqB;YACrB,OAAO,GAAI,OAAqC,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACJ,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC,CAAC;AAdW,QAAA,WAAW,eActB"}
@@ -0,0 +1,31 @@
1
+ import type { ObjectAggregation } from '../ObjectAggregation';
2
+ export declare enum SortReferencePosition {
3
+ After = "After",
4
+ Before = "Before",
5
+ Replace = "Replace"
6
+ }
7
+ export interface ReordableAggregations<T extends ObjectAggregation> {
8
+ [key: string]: T;
9
+ }
10
+ export interface RelationPosition {
11
+ anchor?: string | null;
12
+ placement?: string | null;
13
+ position?: SortReferencePosition;
14
+ }
15
+ export interface SiblingPosition<T extends ObjectAggregation> {
16
+ id: string;
17
+ order: number;
18
+ aggregation: T;
19
+ }
20
+ export interface DefaultExtensionPosition {
21
+ position?: {
22
+ anchor?: string | null;
23
+ placement?: string | null;
24
+ };
25
+ }
26
+ export declare enum SortingApproach {
27
+ Normal = "Normal",
28
+ WithIds = "WithIds",
29
+ WithIndices = "WithIndices"
30
+ }
31
+ //# sourceMappingURL=sort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort.d.ts","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/sort.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,oBAAY,qBAAqB;IAC7B,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,OAAO,YAAY;CACtB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,iBAAiB;IAC9D,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC7B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,qBAAqB,CAAC;CACpC;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,iBAAiB;IACxD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC7B,CAAC;CACL;AAID,oBAAY,eAAe;IACvB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,WAAW,gBAAgB;CAC9B"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SortingApproach = exports.SortReferencePosition = void 0;
4
+ var SortReferencePosition;
5
+ (function (SortReferencePosition) {
6
+ SortReferencePosition["After"] = "After";
7
+ SortReferencePosition["Before"] = "Before";
8
+ SortReferencePosition["Replace"] = "Replace";
9
+ })(SortReferencePosition || (exports.SortReferencePosition = SortReferencePosition = {}));
10
+ // In V2 we can not reffer custom extenstion to another custom extension
11
+ // In result we have two sorting approaches
12
+ var SortingApproach;
13
+ (function (SortingApproach) {
14
+ SortingApproach["Normal"] = "Normal";
15
+ SortingApproach["WithIds"] = "WithIds";
16
+ SortingApproach["WithIndices"] = "WithIndices";
17
+ })(SortingApproach || (exports.SortingApproach = SortingApproach = {}));
18
+ //# sourceMappingURL=sort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/sort.ts"],"names":[],"mappings":";;;AAEA,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,wCAAe,CAAA;IACf,0CAAiB,CAAA;IACjB,4CAAmB,CAAA;AACvB,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAyBD,wEAAwE;AACxE,2CAA2C;AAC3C,IAAY,eAIX;AAJD,WAAY,eAAe;IACvB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,8CAA2B,CAAA;AAC/B,CAAC,EAJW,eAAe,+BAAf,eAAe,QAI1B"}
@@ -0,0 +1,95 @@
1
+ import type { TranslationBundles, PropertyMessage } from '../types';
2
+ import type { JSONSchema4 } from 'json-schema';
3
+ import type { ObjectAggregation } from '../ObjectAggregation';
4
+ import type { ProjectType } from '@sap-ux/project-access';
5
+ import type { Parser } from '@sap/ux-specification-types';
6
+ export interface AppTranslationBundleData {
7
+ bundles: TranslationBundles;
8
+ projectType?: ProjectType;
9
+ }
10
+ /**
11
+ * Method returns application specific i18n bundle data.
12
+ *
13
+ * @returns i18n bundle data.
14
+ */
15
+ export declare const getAppI18nBundle: () => AppTranslationBundleData;
16
+ export declare const getTechnicalIdFromPath: (path: Parser.PropertyPath, firstOnly?: boolean) => string | undefined;
17
+ /**
18
+ * Method disables deletion of last annotation node if there is any custom nodes.
19
+ * There can be cases when custom nodes referenced to last annotation node and by deleting last annotation node, we can not provide correct order.
20
+ *
21
+ * @param aggregation Container aggregation.
22
+ * @param text I18n key for disabled deletion explanation.
23
+ */
24
+ export declare const ensureLastNodeIsUndeletable: (aggregation: ObjectAggregation, text: string) => void;
25
+ /**
26
+ * Function validates extension using validation parameter by setting warning message to aggregation.
27
+ *
28
+ * @param aggregation aggregation for which to set warning message.
29
+ * @param isValid validation result.
30
+ * @param description description to show in case extension is invalid.
31
+ * @param property name of the property
32
+ */
33
+ export declare const validateExtension: (aggregation: ObjectAggregation, isValid: boolean, description: string, property?: string) => void;
34
+ /**
35
+ * Function validates macros extension key by checking aggregation value of it.
36
+ *
37
+ * @param aggregation aggregation for which to set warning message.
38
+ * @param value value of custom extension aggregation.
39
+ */
40
+ export declare const validateMacrosExtension: (aggregation: ObjectAggregation, value?: unknown) => void;
41
+ /**
42
+ * Method which formats and returns display/description text for anchor selection option.
43
+ * Method resolves i18n translation for text if translation exists.
44
+ *
45
+ * @param i18nKey I18n entry for option.
46
+ * @param aggregation Object aggregation.
47
+ * @param text Anchor label without i18n resolution.
48
+ * @param id Anchor ID.
49
+ * @returns Formatted text for related anchor option.
50
+ */
51
+ export declare const formatAnchorDescriptionText: (i18nKey: string, aggregation: ObjectAggregation, text: string, id?: string) => string;
52
+ /**
53
+ * Method which receives 'oneOf' entries from schema and converts to dropdown option entries.
54
+ *
55
+ * @param i18nKey I18n entry for option.
56
+ * @param aggregation Object aggregation.
57
+ * @param oneOf One of entries from schema.
58
+ * @returns Options for dropdown.
59
+ */
60
+ export declare const oneOfToDropdownOptions: (i18nKey: string, aggregation: ObjectAggregation, oneOf?: JSONSchema4[]) => {
61
+ key: string;
62
+ text: string;
63
+ }[];
64
+ /**
65
+ * Method returns updated schema for anchor property.
66
+ * Method hides enum entry which is associated with passed aggregation to avoid anchoring extension to itself.
67
+ *
68
+ * @param aggregation Aggregation object.
69
+ * @param originalSchema Schema of anchor property.
70
+ * @returns Modified schema.
71
+ */
72
+ export declare const updateAnchorSchema: (aggregation: ObjectAggregation, originalSchema: JSONSchema4) => JSONSchema4;
73
+ /**
74
+ * Method adds validation message to property or node instance.
75
+ *
76
+ * @param instance Property or node instance.
77
+ * @param instance.messages Messages of instance.
78
+ * @param messages Array of validation messages.
79
+ */
80
+ export declare function addValidationMessages(instance: {
81
+ messages?: PropertyMessage[];
82
+ }, messages: PropertyMessage[]): void;
83
+ /**
84
+ * Converts a string into "Start Case" format.
85
+ *
86
+ * - Splits words on underscores (`_`), hyphens (`-`), and spaces.
87
+ * - Detects camelCase boundaries (`fooBar` → `Foo Bar`).
88
+ * - Capitalizes the first character of each word.
89
+ * - Preserves acronyms (`FCL`, `WORLD`) when they appear in uppercase.
90
+ *
91
+ * @param text - The input string to convert.
92
+ * @returns The formatted string in start case.
93
+ */
94
+ export declare function startCase(text: string): string;
95
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../../src/ftfs/parser/model/utils/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAA8B,eAAe,EAAE,MAAM,UAAU,CAAC;AAChG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE1D,MAAM,WAAW,wBAAwB;IACrC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,WAAW,CAAC,EAAE,WAAW,CAAC;CAC7B;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,QAAO,wBASnC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,CAAC,YAAY,EAAE,mBAAiB,KAAG,MAAM,GAAG,SAgB9F,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,GAAI,aAAa,iBAAiB,EAAE,MAAM,MAAM,KAAG,IAqC1F,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAC1B,aAAa,iBAAiB,EAC9B,SAAS,OAAO,EAChB,aAAa,MAAM,EACnB,WAAW,MAAM,KAClB,IAcF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB,GAAI,aAAa,iBAAiB,EAAE,eAAyB,KAAG,IAKnG,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,2BAA2B,GACpC,SAAS,MAAM,EACf,aAAa,iBAAiB,EAC9B,MAAM,MAAM,EACZ,KAAK,MAAM,KACZ,MAUF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,GAC/B,SAAS,MAAM,EACf,aAAa,iBAAiB,EAC9B,QAAO,WAAW,EAAO,KAC1B;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAU/B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,GAAI,aAAa,iBAAiB,EAAE,gBAAgB,WAAW,KAAG,WA8BhG,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE;IAAE,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAA;CAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,IAAI,CAGnH;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAyC9C"}