@sapui5/sap.fe.core 1.101.0 → 1.103.0

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 (339) hide show
  1. package/package.json +5 -5
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/AppComponent.js +66 -30
  4. package/src/sap/fe/core/AppComponent.ts +68 -51
  5. package/src/sap/fe/core/AppStateHandler.js +13 -13
  6. package/src/sap/fe/core/AppStateHandler.ts +18 -18
  7. package/src/sap/fe/core/BaseController.js +11 -9
  8. package/src/sap/fe/core/BaseController.ts +15 -13
  9. package/src/sap/fe/core/CommonUtils.js +279 -188
  10. package/src/sap/fe/core/CommonUtils.ts +306 -215
  11. package/src/sap/fe/core/ExtensionAPI.js +25 -30
  12. package/src/sap/fe/core/ExtensionAPI.ts +37 -41
  13. package/src/sap/fe/core/PageController.js +12 -7
  14. package/src/sap/fe/core/PageController.ts +10 -5
  15. package/src/sap/fe/core/TemplateComponent.js +6 -6
  16. package/src/sap/fe/core/TemplateComponent.ts +11 -11
  17. package/src/sap/fe/core/TemplateModel.js +2 -2
  18. package/src/sap/fe/core/TemplateModel.ts +3 -3
  19. package/src/sap/fe/core/buildingBlocks/AttributeModel.js +1 -1
  20. package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +1 -1
  21. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +306 -78
  22. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +280 -70
  23. package/src/sap/fe/core/buildingBlocks/TraceInfo.js +27 -27
  24. package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +28 -26
  25. package/src/sap/fe/core/{BusyLocker.js → controllerextensions/BusyLocker.js} +1 -1
  26. package/src/sap/fe/core/{BusyLocker.ts → controllerextensions/BusyLocker.ts} +7 -7
  27. package/src/sap/fe/core/controllerextensions/EditFlow.js +351 -229
  28. package/src/sap/fe/core/controllerextensions/EditFlow.ts +321 -246
  29. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +9 -9
  30. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +10 -10
  31. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +59 -34
  32. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +71 -45
  33. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +72 -72
  34. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +82 -80
  35. package/src/sap/fe/core/controllerextensions/InternalRouting.js +152 -131
  36. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +171 -152
  37. package/src/sap/fe/core/controllerextensions/KPIManagement.js +66 -68
  38. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +106 -123
  39. package/src/sap/fe/core/controllerextensions/MassEdit.js +11 -10
  40. package/src/sap/fe/core/controllerextensions/MassEdit.ts +31 -37
  41. package/src/sap/fe/core/controllerextensions/MessageHandler.js +21 -13
  42. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +30 -15
  43. package/src/sap/fe/core/controllerextensions/PageReady.js +97 -25
  44. package/src/sap/fe/core/controllerextensions/PageReady.ts +94 -34
  45. package/src/sap/fe/core/controllerextensions/Paginator.js +19 -11
  46. package/src/sap/fe/core/controllerextensions/Paginator.ts +22 -14
  47. package/src/sap/fe/core/controllerextensions/Placeholder.js +4 -6
  48. package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
  49. package/src/sap/fe/core/controllerextensions/Routing.js +10 -11
  50. package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
  51. package/src/sap/fe/core/controllerextensions/Share.js +39 -21
  52. package/src/sap/fe/core/controllerextensions/Share.ts +45 -26
  53. package/src/sap/fe/core/controllerextensions/SideEffects.js +47 -51
  54. package/src/sap/fe/core/controllerextensions/SideEffects.ts +58 -62
  55. package/src/sap/fe/core/controllerextensions/ViewState.js +75 -62
  56. package/src/sap/fe/core/controllerextensions/ViewState.ts +78 -63
  57. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +105 -0
  58. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +99 -0
  59. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +360 -0
  60. package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ActivitySync.ts +58 -112
  61. package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.js +2 -2
  62. package/src/sap/fe/core/{actions → controllerextensions}/collaboration/CollaborationCommon.ts +7 -7
  63. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +262 -0
  64. package/src/sap/fe/core/{actions → controllerextensions}/collaboration/Manage.ts +20 -21
  65. package/src/sap/fe/core/{actions → controllerextensions}/collaboration/ManageDialog.fragment.xml +0 -0
  66. package/src/sap/fe/core/{actions → controllerextensions}/collaboration/UserDetails.fragment.xml +5 -7
  67. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +1631 -0
  68. package/src/sap/fe/core/{TransactionHelper.ts → controllerextensions/editFlow/TransactionHelper.ts} +270 -211
  69. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +772 -0
  70. package/src/sap/fe/core/{actions → controllerextensions/editFlow}/draft.ts +240 -100
  71. package/src/sap/fe/core/controllerextensions/editFlow/operations.js +1199 -0
  72. package/src/sap/fe/core/{actions → controllerextensions/editFlow}/operations.ts +364 -229
  73. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +188 -0
  74. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +185 -0
  75. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +626 -0
  76. package/src/sap/fe/core/{actions → controllerextensions/messageHandler}/messageHandling.ts +112 -69
  77. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +937 -0
  78. package/src/sap/fe/core/{RouterProxy.ts → controllerextensions/routing/RouterProxy.ts} +72 -73
  79. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +21 -18
  80. package/src/sap/fe/core/controls/Any.js +9 -5
  81. package/src/sap/fe/core/controls/Any.ts +10 -4
  82. package/src/sap/fe/core/controls/CommandExecution.js +21 -24
  83. package/src/sap/fe/core/controls/CommandExecution.ts +19 -24
  84. package/src/sap/fe/core/controls/ConditionalWrapper.js +2 -2
  85. package/src/sap/fe/core/controls/ConditionalWrapper.ts +3 -3
  86. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +48 -43
  87. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +51 -46
  88. package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -2
  89. package/src/sap/fe/core/controls/CustomQuickViewPage.ts +3 -2
  90. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +11 -3
  91. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +19 -9
  92. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +14 -8
  93. package/src/sap/fe/core/controls/FieldWrapper.js +2 -2
  94. package/src/sap/fe/core/controls/FieldWrapper.ts +3 -3
  95. package/src/sap/fe/core/controls/FileWrapper.js +50 -3
  96. package/src/sap/fe/core/controls/FileWrapper.ts +45 -12
  97. package/src/sap/fe/core/controls/FilterBar.js +6 -2
  98. package/src/sap/fe/core/controls/FilterBar.ts +13 -9
  99. package/src/sap/fe/core/controls/FormElementWrapper.js +12 -2
  100. package/src/sap/fe/core/controls/FormElementWrapper.ts +14 -3
  101. package/src/sap/fe/core/controls/MassEditSelect.js +33 -0
  102. package/src/sap/fe/core/controls/MassEditSelect.ts +41 -0
  103. package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +3 -3
  104. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +16 -12
  105. package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +20 -22
  106. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -3
  107. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +8 -8
  108. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +48 -48
  109. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +71 -76
  110. package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +36 -65
  111. package/src/sap/fe/core/controls/massEdit/MassEditField.fragment.xml +107 -0
  112. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +551 -36
  113. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +605 -36
  114. package/src/sap/fe/core/converters/ConverterContext.js +26 -33
  115. package/src/sap/fe/core/converters/ConverterContext.ts +51 -60
  116. package/src/sap/fe/core/converters/ManifestSettings.js +2 -1
  117. package/src/sap/fe/core/converters/ManifestSettings.ts +17 -14
  118. package/src/sap/fe/core/converters/ManifestWrapper.js +59 -45
  119. package/src/sap/fe/core/converters/ManifestWrapper.ts +55 -45
  120. package/src/sap/fe/core/converters/MetaModelConverter.js +56 -67
  121. package/src/sap/fe/core/converters/MetaModelConverter.ts +183 -193
  122. package/src/sap/fe/core/converters/TemplateConverter.js +21 -20
  123. package/src/sap/fe/core/converters/TemplateConverter.ts +27 -24
  124. package/src/sap/fe/core/converters/annotations/DataField.js +73 -37
  125. package/src/sap/fe/core/converters/annotations/DataField.ts +121 -77
  126. package/src/sap/fe/core/converters/common/AnnotationConverter.js +1911 -1495
  127. package/src/sap/fe/core/converters/controls/Common/Action.js +51 -49
  128. package/src/sap/fe/core/converters/controls/Common/Action.ts +58 -54
  129. package/src/sap/fe/core/converters/controls/Common/Chart.js +22 -15
  130. package/src/sap/fe/core/converters/controls/Common/Chart.ts +29 -27
  131. package/src/sap/fe/core/converters/controls/Common/Criticality.js +3 -3
  132. package/src/sap/fe/core/converters/controls/Common/Criticality.ts +4 -4
  133. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +28 -28
  134. package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +40 -36
  135. package/src/sap/fe/core/converters/controls/Common/Form.js +30 -34
  136. package/src/sap/fe/core/converters/controls/Common/Form.ts +48 -58
  137. package/src/sap/fe/core/converters/controls/Common/KPI.js +11 -11
  138. package/src/sap/fe/core/converters/controls/Common/KPI.ts +35 -39
  139. package/src/sap/fe/core/converters/controls/Common/Table.js +318 -244
  140. package/src/sap/fe/core/converters/controls/Common/Table.ts +368 -297
  141. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +135 -125
  142. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +162 -148
  143. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +51 -45
  144. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +79 -67
  145. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +28 -26
  146. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +46 -43
  147. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +9 -9
  148. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.ts +14 -13
  149. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +67 -64
  150. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +69 -66
  151. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +92 -89
  152. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +124 -120
  153. package/src/sap/fe/core/converters/helpers/Aggregation.js +11 -5
  154. package/src/sap/fe/core/converters/helpers/Aggregation.ts +25 -23
  155. package/src/sap/fe/core/converters/helpers/BindingHelper.js +31 -30
  156. package/src/sap/fe/core/converters/helpers/BindingHelper.ts +31 -29
  157. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +4 -4
  158. package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +9 -9
  159. package/src/sap/fe/core/converters/helpers/ID.js +46 -46
  160. package/src/sap/fe/core/converters/helpers/ID.ts +25 -25
  161. package/src/sap/fe/core/converters/helpers/Key.js +7 -7
  162. package/src/sap/fe/core/converters/helpers/Key.ts +7 -7
  163. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +1 -1
  164. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.ts +4 -4
  165. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +6 -6
  166. package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +10 -10
  167. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +46 -62
  168. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +54 -82
  169. package/src/sap/fe/core/converters/templates/ListReportConverter.js +30 -29
  170. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +40 -40
  171. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +56 -55
  172. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +65 -77
  173. package/src/sap/fe/core/designtime/AppComponent.designtime.js +6 -6
  174. package/src/sap/fe/core/designtime/AppComponent.designtime.ts +10 -8
  175. package/src/sap/fe/core/formatters/CollaborationFormatter.js +2 -2
  176. package/src/sap/fe/core/formatters/CollaborationFormatter.ts +3 -3
  177. package/src/sap/fe/core/formatters/FPMFormatter.js +5 -5
  178. package/src/sap/fe/core/formatters/FPMFormatter.ts +10 -10
  179. package/src/sap/fe/core/formatters/KPIFormatter.js +7 -7
  180. package/src/sap/fe/core/formatters/KPIFormatter.ts +10 -10
  181. package/src/sap/fe/core/formatters/StandardFormatter.js +89 -0
  182. package/src/sap/fe/core/formatters/StandardFormatter.ts +64 -0
  183. package/src/sap/fe/core/formatters/TableFormatter.js +83 -22
  184. package/src/sap/fe/core/formatters/TableFormatter.ts +80 -25
  185. package/src/sap/fe/core/formatters/ValueFormatter.js +8 -8
  186. package/src/sap/fe/core/formatters/ValueFormatter.ts +9 -9
  187. package/src/sap/fe/core/fpm/Component.js +2 -2
  188. package/src/sap/fe/core/fpm/Component.ts +1 -1
  189. package/src/sap/fe/core/helpers/AppStartupHelper.js +15 -15
  190. package/src/sap/fe/core/helpers/AppStartupHelper.ts +37 -40
  191. package/src/sap/fe/core/helpers/BindingToolkit.js +1809 -0
  192. package/src/sap/fe/core/helpers/{BindingExpression.ts → BindingToolkit.ts} +388 -285
  193. package/src/sap/fe/core/helpers/ClassSupport.js +20 -11
  194. package/src/sap/fe/core/helpers/ClassSupport.ts +15 -10
  195. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +2 -2
  196. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -1
  197. package/src/sap/fe/core/helpers/EditState.js +1 -6
  198. package/src/sap/fe/core/helpers/EditState.ts +5 -10
  199. package/src/sap/fe/core/helpers/ExcelFormatHelper.js +2 -2
  200. package/src/sap/fe/core/helpers/ExcelFormatHelper.ts +4 -4
  201. package/src/sap/fe/core/helpers/FPMHelper.js +3 -2
  202. package/src/sap/fe/core/helpers/FPMHelper.ts +10 -9
  203. package/src/sap/fe/core/helpers/KeepAliveHelper.js +31 -31
  204. package/src/sap/fe/core/helpers/KeepAliveHelper.ts +52 -56
  205. package/src/sap/fe/core/helpers/MassEditHelper.js +532 -264
  206. package/src/sap/fe/core/helpers/MassEditHelper.ts +560 -289
  207. package/src/sap/fe/core/helpers/ModelHelper.js +25 -25
  208. package/src/sap/fe/core/helpers/ModelHelper.ts +50 -58
  209. package/src/sap/fe/core/helpers/PasteHelper.js +3 -10
  210. package/src/sap/fe/core/helpers/PasteHelper.ts +20 -25
  211. package/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
  212. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +11 -11
  213. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +3 -3
  214. package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +8 -8
  215. package/src/sap/fe/core/helpers/StableIdHelper.js +16 -12
  216. package/src/sap/fe/core/helpers/StableIdHelper.ts +20 -16
  217. package/src/sap/fe/core/{Synchronization.js → helpers/Synchronization.js} +1 -1
  218. package/src/sap/fe/core/{Synchronization.ts → helpers/Synchronization.ts} +1 -1
  219. package/src/sap/fe/core/jsx-runtime/jsx.js +1 -1
  220. package/src/sap/fe/core/jsx-runtime/jsx.ts +8 -8
  221. package/src/sap/fe/core/library.js +51 -3
  222. package/src/sap/fe/core/library.ts +47 -0
  223. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +3 -3
  224. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +2 -2
  225. package/src/sap/fe/core/messagebundle.properties +151 -197
  226. package/src/sap/fe/core/messagebundle_ar.properties +36 -63
  227. package/src/sap/fe/core/messagebundle_bg.properties +36 -63
  228. package/src/sap/fe/core/messagebundle_ca.properties +36 -63
  229. package/src/sap/fe/core/messagebundle_cs.properties +36 -63
  230. package/src/sap/fe/core/messagebundle_cy.properties +36 -63
  231. package/src/sap/fe/core/messagebundle_da.properties +37 -64
  232. package/src/sap/fe/core/messagebundle_de.properties +36 -63
  233. package/src/sap/fe/core/messagebundle_el.properties +38 -65
  234. package/src/sap/fe/core/messagebundle_en.properties +37 -64
  235. package/src/sap/fe/core/messagebundle_en_GB.properties +37 -64
  236. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +44 -73
  237. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +37 -64
  238. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +52 -81
  239. package/src/sap/fe/core/messagebundle_es.properties +36 -63
  240. package/src/sap/fe/core/messagebundle_es_MX.properties +36 -63
  241. package/src/sap/fe/core/messagebundle_et.properties +36 -63
  242. package/src/sap/fe/core/messagebundle_fi.properties +36 -63
  243. package/src/sap/fe/core/messagebundle_fr.properties +39 -66
  244. package/src/sap/fe/core/messagebundle_fr_CA.properties +36 -63
  245. package/src/sap/fe/core/messagebundle_hi.properties +36 -63
  246. package/src/sap/fe/core/messagebundle_hr.properties +36 -63
  247. package/src/sap/fe/core/messagebundle_hu.properties +35 -62
  248. package/src/sap/fe/core/messagebundle_id.properties +37 -64
  249. package/src/sap/fe/core/messagebundle_it.properties +54 -81
  250. package/src/sap/fe/core/messagebundle_iw.properties +36 -63
  251. package/src/sap/fe/core/messagebundle_ja.properties +36 -63
  252. package/src/sap/fe/core/messagebundle_kk.properties +36 -63
  253. package/src/sap/fe/core/messagebundle_ko.properties +36 -63
  254. package/src/sap/fe/core/messagebundle_lt.properties +36 -63
  255. package/src/sap/fe/core/messagebundle_lv.properties +36 -63
  256. package/src/sap/fe/core/messagebundle_ms.properties +37 -64
  257. package/src/sap/fe/core/messagebundle_nl.properties +37 -64
  258. package/src/sap/fe/core/messagebundle_no.properties +36 -63
  259. package/src/sap/fe/core/messagebundle_pl.properties +37 -64
  260. package/src/sap/fe/core/messagebundle_pt.properties +37 -64
  261. package/src/sap/fe/core/messagebundle_pt_PT.properties +36 -63
  262. package/src/sap/fe/core/messagebundle_ro.properties +36 -63
  263. package/src/sap/fe/core/messagebundle_ru.properties +36 -63
  264. package/src/sap/fe/core/messagebundle_sh.properties +36 -63
  265. package/src/sap/fe/core/messagebundle_sk.properties +36 -63
  266. package/src/sap/fe/core/messagebundle_sl.properties +38 -65
  267. package/src/sap/fe/core/messagebundle_sv.properties +36 -63
  268. package/src/sap/fe/core/messagebundle_th.properties +36 -63
  269. package/src/sap/fe/core/messagebundle_tr.properties +36 -63
  270. package/src/sap/fe/core/messagebundle_uk.properties +37 -64
  271. package/src/sap/fe/core/messagebundle_vi.properties +37 -64
  272. package/src/sap/fe/core/messagebundle_zh_CN.properties +36 -63
  273. package/src/sap/fe/core/messagebundle_zh_TW.properties +37 -64
  274. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +2 -2
  275. package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +5 -5
  276. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +2 -2
  277. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +14 -14
  278. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +6 -3
  279. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +12 -10
  280. package/src/sap/fe/core/services/NavigationServiceFactory.js +54 -45
  281. package/src/sap/fe/core/services/NavigationServiceFactory.ts +61 -49
  282. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +2 -2
  283. package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +4 -4
  284. package/src/sap/fe/core/services/RoutingServiceFactory.js +63 -60
  285. package/src/sap/fe/core/services/RoutingServiceFactory.ts +76 -73
  286. package/src/sap/fe/core/services/ShellServicesFactory.js +102 -71
  287. package/src/sap/fe/core/services/ShellServicesFactory.ts +109 -78
  288. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +61 -61
  289. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +102 -92
  290. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +24 -18
  291. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +53 -50
  292. package/src/sap/fe/core/support/CommonHelper.js +3 -2
  293. package/src/sap/fe/core/support/CommonHelper.ts +9 -13
  294. package/src/sap/fe/core/support/Diagnostics.js +1 -1
  295. package/src/sap/fe/core/support/Diagnostics.ts +5 -5
  296. package/src/sap/fe/core/templating/CommonFormatters.js +84 -0
  297. package/src/sap/fe/core/templating/CommonFormatters.ts +86 -0
  298. package/src/sap/fe/core/templating/CriticalityFormatters.js +31 -31
  299. package/src/sap/fe/core/templating/CriticalityFormatters.ts +42 -40
  300. package/src/sap/fe/core/templating/DataFieldFormatters.js +8 -8
  301. package/src/sap/fe/core/templating/DataFieldFormatters.ts +13 -10
  302. package/src/sap/fe/core/templating/DataModelPathHelper.js +16 -15
  303. package/src/sap/fe/core/templating/DataModelPathHelper.ts +42 -32
  304. package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
  305. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +3 -4
  306. package/src/sap/fe/core/templating/EntitySetHelper.js +7 -15
  307. package/src/sap/fe/core/templating/EntitySetHelper.ts +14 -18
  308. package/src/sap/fe/core/templating/FieldControlHelper.js +35 -34
  309. package/src/sap/fe/core/templating/FieldControlHelper.ts +29 -46
  310. package/src/sap/fe/core/templating/FilterHelper.js +12 -11
  311. package/src/sap/fe/core/templating/FilterHelper.ts +17 -16
  312. package/src/sap/fe/core/templating/FilterTemplating.js +1 -1
  313. package/src/sap/fe/core/templating/FilterTemplating.ts +3 -3
  314. package/src/sap/fe/core/templating/PropertyFormatters.js +7 -7
  315. package/src/sap/fe/core/templating/PropertyFormatters.ts +21 -19
  316. package/src/sap/fe/core/templating/PropertyHelper.js +79 -56
  317. package/src/sap/fe/core/templating/PropertyHelper.ts +41 -27
  318. package/src/sap/fe/core/templating/UIFormatters.js +163 -97
  319. package/src/sap/fe/core/templating/UIFormatters.ts +210 -129
  320. package/src/sap/fe/core/type/DateTimeWithTimezone.js +47 -0
  321. package/src/sap/fe/core/type/DateTimeWithTimezone.ts +23 -0
  322. package/src/sap/fe/core/type/Email.js +2 -2
  323. package/src/sap/fe/core/type/Email.ts +2 -2
  324. package/src/sap/fe/core/AnnotationHelper.js +0 -331
  325. package/src/sap/fe/core/AnnotationHelper.ts +0 -321
  326. package/src/sap/fe/core/RouterProxy.js +0 -938
  327. package/src/sap/fe/core/TransactionHelper.js +0 -1577
  328. package/src/sap/fe/core/actions/collaboration/ActivitySync.js +0 -406
  329. package/src/sap/fe/core/actions/collaboration/Manage.js +0 -264
  330. package/src/sap/fe/core/actions/draft.js +0 -665
  331. package/src/sap/fe/core/actions/messageHandling.js +0 -579
  332. package/src/sap/fe/core/actions/nonDraft.js +0 -20
  333. package/src/sap/fe/core/actions/nonDraft.ts +0 -12
  334. package/src/sap/fe/core/actions/operations.js +0 -1096
  335. package/src/sap/fe/core/actions/sticky.js +0 -130
  336. package/src/sap/fe/core/actions/sticky.ts +0 -119
  337. package/src/sap/fe/core/formatters/CriticalityFormatter.js +0 -77
  338. package/src/sap/fe/core/formatters/CriticalityFormatter.ts +0 -58
  339. package/src/sap/fe/core/helpers/BindingExpression.js +0 -1729
@@ -1,10 +1,12 @@
1
- import { ConfigurableRecord } from "sap/fe/core/converters/helpers/ConfigurableObject";
2
- import {
1
+ import type { ConfigurableRecord } from "sap/fe/core/converters/helpers/ConfigurableObject";
2
+ import type {
3
3
  BaseManifestSettings,
4
4
  CombinedViewPathConfiguration,
5
5
  ContentDensitiesType,
6
+ CustomViewTemplateConfiguration,
6
7
  FilterManifestConfiguration,
7
8
  FormManifestConfiguration,
9
+ KPIConfiguration,
8
10
  ListReportManifestSettings,
9
11
  ManifestAction,
10
12
  ManifestHeaderFacet,
@@ -13,13 +15,11 @@ import {
13
15
  NavigationSettingsConfiguration,
14
16
  ObjectPageManifestSettings,
15
17
  SingleViewPathConfiguration,
16
- ViewPathConfiguration,
17
18
  TemplateType,
18
- VariantManagementType,
19
- CustomViewTemplateConfiguration,
20
19
  ViewConfiguration,
21
- KPIConfiguration
20
+ ViewPathConfiguration
22
21
  } from "sap/fe/core/converters/ManifestSettings";
22
+ import { VariantManagementType } from "sap/fe/core/converters/ManifestSettings";
23
23
 
24
24
  /**
25
25
  *
@@ -28,9 +28,9 @@ class ManifestWrapper {
28
28
  /**
29
29
  * Creates a wrapper object to ensure the data returned from the manifest is consistent and everything is merged correctly.
30
30
  *
31
- * @param {BaseManifestSettings} oManifestSettings The manifest settings for the current page
32
- * @param {Function} mergeFn A function that will be used to perform the merge
33
- * @returns {ManifestWrapper} The manifest wrapper object
31
+ * @param oManifestSettings The manifest settings for the current page
32
+ * @param mergeFn A function that will be used to perform the merge
33
+ * @returns The manifest wrapper object
34
34
  */
35
35
  constructor(private oManifestSettings: BaseManifestSettings, private mergeFn: Function) {}
36
36
 
@@ -46,7 +46,7 @@ class ManifestWrapper {
46
46
  /**
47
47
  * Checks whether the current template should display the filter bar.
48
48
  *
49
- * @returns {boolean} `true` if the filter bar should be hidden
49
+ * @returns `true` if the filter bar should be hidden
50
50
  */
51
51
  isFilterBarHidden(): boolean {
52
52
  return !!(this.oManifestSettings as ListReportManifestSettings)?.hideFilterBar;
@@ -55,7 +55,7 @@ class ManifestWrapper {
55
55
  /**
56
56
  * Checks whether the current environment is a desktop or not.
57
57
  *
58
- * @returns {boolean} `true` if we are on a desktop
58
+ * @returns `true` if we are on a desktop
59
59
  */
60
60
  isDesktop(): boolean {
61
61
  return !!this.oManifestSettings.isDesktop;
@@ -64,7 +64,7 @@ class ManifestWrapper {
64
64
  /**
65
65
  * Checks whether the current environment is a mobile phone or not.
66
66
  *
67
- * @returns {boolean} `true` if we are on a mobile phone
67
+ * @returns `true` if we are on a mobile phone
68
68
  */
69
69
  isPhone(): boolean {
70
70
  return !!this.oManifestSettings.isPhone;
@@ -73,8 +73,8 @@ class ManifestWrapper {
73
73
  /**
74
74
  * Retrieves the form containers (field groups or identification) defined in the manifest.
75
75
  *
76
- * @param {string} facetTarget The target annotation path for this form
77
- * @returns {FormManifestConfiguration} A set of form containers defined in the manifest indexed by an iterable key
76
+ * @param facetTarget The target annotation path for this form
77
+ * @returns A set of form containers defined in the manifest indexed by an iterable key
78
78
  */
79
79
  getFormContainer(facetTarget: string): FormManifestConfiguration {
80
80
  return this.oManifestSettings.controlConfiguration?.[facetTarget] as FormManifestConfiguration;
@@ -82,7 +82,7 @@ class ManifestWrapper {
82
82
  /**
83
83
  * Retrieves the header facets defined in the manifest.
84
84
  *
85
- * @returns {ConfigurableRecord<ManifestHeaderFacet>} A set of header facets defined in the manifest indexed by an iterable key
85
+ * @returns A set of header facets defined in the manifest indexed by an iterable key
86
86
  */
87
87
  getHeaderFacets(): ConfigurableRecord<ManifestHeaderFacet> {
88
88
  return this.mergeFn(
@@ -94,7 +94,7 @@ class ManifestWrapper {
94
94
  /**
95
95
  * Retrieves the header actions defined in the manifest.
96
96
  *
97
- * @returns {ConfigurableRecord<ManifestAction>} A set of actions defined in the manifest indexed by an iterable key
97
+ * @returns A set of actions defined in the manifest indexed by an iterable key
98
98
  */
99
99
  getHeaderActions(): ConfigurableRecord<ManifestAction> {
100
100
  return this.oManifestSettings.content?.header?.actions || {};
@@ -102,7 +102,7 @@ class ManifestWrapper {
102
102
  /**
103
103
  * Retrieves the footer actions defined in the manifest.
104
104
  *
105
- * @returns {ConfigurableRecord<ManifestAction>} A set of actions defined in the manifest indexed by an iterable key
105
+ * @returns A set of actions defined in the manifest indexed by an iterable key
106
106
  */
107
107
  getFooterActions(): ConfigurableRecord<ManifestAction> {
108
108
  return this.oManifestSettings.content?.footer?.actions || {};
@@ -111,7 +111,7 @@ class ManifestWrapper {
111
111
  /**
112
112
  * Retrieves the variant management as defined in the manifest.
113
113
  *
114
- * @returns {VariantManagementType} A type of variant management
114
+ * @returns A type of variant management
115
115
  */
116
116
  getVariantManagement(): VariantManagementType {
117
117
  return this.oManifestSettings.variantManagement || VariantManagementType.None;
@@ -120,7 +120,7 @@ class ManifestWrapper {
120
120
  /**
121
121
  * Retrieves the annotation Path for the SPV in the manifest.
122
122
  *
123
- * @returns {string|undefined} The annotation path for the default SPV or undefined.
123
+ * @returns The annotation path for the default SPV or undefined.
124
124
  */
125
125
  getDefaultTemplateAnnotationPath(): string | undefined {
126
126
  return this.oManifestSettings.defaultTemplateAnnotationPath;
@@ -129,9 +129,9 @@ class ManifestWrapper {
129
129
  /**
130
130
  * Retrieves the control configuration as defined in the manifest for a specific annotation path.
131
131
  *
132
- * @param {string} sAnnotationPath The relative annotation path
132
+ * @param sAnnotationPath The relative annotation path
133
133
  * @private
134
- * @returns {object} The control configuration
134
+ * @returns The control configuration
135
135
  */
136
136
  getControlConfiguration(sAnnotationPath: string): any {
137
137
  return this.oManifestSettings?.controlConfiguration?.[sAnnotationPath] || {};
@@ -139,8 +139,8 @@ class ManifestWrapper {
139
139
  /**
140
140
  * Retrieves the configured settings for a given navigation target.
141
141
  *
142
- * @param {string} navigationOrCollectionName The name of the navigation to check
143
- * @returns {NavigationSettingsConfiguration} The navigation settings configuration
142
+ * @param navigationOrCollectionName The name of the navigation to check
143
+ * @returns The navigation settings configuration
144
144
  */
145
145
  getNavigationConfiguration(navigationOrCollectionName: string): NavigationSettingsConfiguration {
146
146
  return this.oManifestSettings?.navigation?.[navigationOrCollectionName] || {};
@@ -149,7 +149,7 @@ class ManifestWrapper {
149
149
  /**
150
150
  * Retrieves the view level.
151
151
  *
152
- * @returns {number} The current view level
152
+ * @returns The current view level
153
153
  */
154
154
  getViewLevel(): number {
155
155
  return this.oManifestSettings?.viewLevel || -1;
@@ -158,7 +158,7 @@ class ManifestWrapper {
158
158
  /**
159
159
  * Retrieves the contentDensities setting of the application.
160
160
  *
161
- * @returns {ContentDensitiesType} The current content density
161
+ * @returns The current content density
162
162
  */
163
163
  getContentDensities(): ContentDensitiesType {
164
164
  return (
@@ -172,7 +172,7 @@ class ManifestWrapper {
172
172
  /**
173
173
  * Checks whether we are in FCL mode or not.
174
174
  *
175
- * @returns {boolean} `true` if we are in FCL
175
+ * @returns `true` if we are in FCL
176
176
  */
177
177
  isFclEnabled(): boolean {
178
178
  return !!this.oManifestSettings?.fclEnabled;
@@ -181,7 +181,7 @@ class ManifestWrapper {
181
181
  /**
182
182
  * Checks whether the current settings (application / shell) allows us to use condensed layout.
183
183
  *
184
- * @returns {boolean} `true` if we can use the condensed layout, false otherwise
184
+ * @returns `true` if we can use the condensed layout, false otherwise
185
185
  */
186
186
  isCondensedLayoutCompliant(): boolean {
187
187
  const manifestContentDensity = this.oManifestSettings?.contentDensities || {
@@ -195,13 +195,23 @@ class ManifestWrapper {
195
195
  }
196
196
  return isCondensedLayoutCompliant;
197
197
  }
198
+ /**
199
+ * Checks whether the current settings (application / shell) uses compact mode as content density.
200
+ *
201
+ * @returns `true` if compact mode is set as content density, false otherwise
202
+ */
203
+ isCompactType(): boolean {
204
+ const manifestContentDensity = this.getContentDensities();
205
+ const shellContentDensity = this.oManifestSettings?.shellContentDensity || "compact";
206
+ return manifestContentDensity.compact !== false || shellContentDensity === "compact" ? true : false;
207
+ }
198
208
 
199
209
  //region OP Specific
200
210
 
201
211
  /**
202
212
  * Retrieves the sections defined in the manifest.
203
213
  *
204
- * @returns {ConfigurableRecord<ManifestSection>} A set of manifest sections indexed by an iterable key
214
+ * @returns A set of manifest sections indexed by an iterable key
205
215
  */
206
216
  getSections(): ConfigurableRecord<ManifestSection> {
207
217
  return this.mergeFn(
@@ -214,7 +224,7 @@ class ManifestWrapper {
214
224
  /**
215
225
  * Returns true of the header of the application is editable and should appear in the facets.
216
226
  *
217
- * @returns {boolean} `true` if the header if editable
227
+ * @returns `true` if the header if editable
218
228
  */
219
229
  isHeaderEditable(): boolean {
220
230
  return this.getShowObjectPageHeader() && (this.oManifestSettings as ObjectPageManifestSettings).editableHeaderContent;
@@ -222,7 +232,7 @@ class ManifestWrapper {
222
232
  /**
223
233
  * Returns true if we should show the object page header.
224
234
  *
225
- * @returns {boolean} `true` if the header should be displayed
235
+ * @returns `true` if the header should be displayed
226
236
  */
227
237
  getShowAnchorBar(): boolean {
228
238
  return (this.oManifestSettings as ObjectPageManifestSettings).content?.header?.anchorBarVisible !== undefined
@@ -233,7 +243,7 @@ class ManifestWrapper {
233
243
  /**
234
244
  * Defines whether or not the section will be displayed in different tabs.
235
245
  *
236
- * @returns {boolean} `true` if the icon tab bar should be used instead of scrolling
246
+ * @returns `true` if the icon tab bar should be used instead of scrolling
237
247
  */
238
248
  useIconTabBar(): boolean {
239
249
  return this.getShowAnchorBar() && (this.oManifestSettings as ObjectPageManifestSettings).sectionLayout === "Tabs";
@@ -242,7 +252,7 @@ class ManifestWrapper {
242
252
  /**
243
253
  * Returns true if the object page header is to be shown.
244
254
  *
245
- * @returns {boolean} `true` if the object page header is to be displayed
255
+ * @returns `true` if the object page header is to be displayed
246
256
  */
247
257
  getShowObjectPageHeader(): boolean {
248
258
  return (this.oManifestSettings as ObjectPageManifestSettings).content?.header?.visible !== undefined
@@ -257,7 +267,7 @@ class ManifestWrapper {
257
267
  /**
258
268
  * Retrieves the multiple view configuration from the manifest.
259
269
  *
260
- * @returns {MultipleViewsConfiguration} The views that represent the manifest object
270
+ * @returns The views that represent the manifest object
261
271
  */
262
272
  getViewConfiguration(): MultipleViewsConfiguration | undefined {
263
273
  return (this.oManifestSettings as ListReportManifestSettings).views;
@@ -266,7 +276,7 @@ class ManifestWrapper {
266
276
  /**
267
277
  * Retrieves the stickyMultiTabHeader configuration from the manifest.
268
278
  *
269
- * @returns {boolean} Returns True if stickyMultiTabHeader is enabled or undefined
279
+ * @returns Returns True if stickyMultiTabHeader is enabled or undefined
270
280
  */
271
281
  getStickyMultiTabHeaderConfiguration(): boolean {
272
282
  const bStickyMultiTabHeader = (this.oManifestSettings as ListReportManifestSettings).stickyMultiTabHeader;
@@ -276,7 +286,7 @@ class ManifestWrapper {
276
286
  /**
277
287
  * Retrieves the KPI configuration from the manifest.
278
288
  *
279
- * @returns {object} Returns a map between KPI names and their respective configuration
289
+ * @returns Returns a map between KPI names and their respective configuration
280
290
  */
281
291
  getKPIConfiguration(): { [kpiName: string]: KPIConfiguration } {
282
292
  return (this.oManifestSettings as ListReportManifestSettings).keyPerformanceIndicators || {};
@@ -285,7 +295,7 @@ class ManifestWrapper {
285
295
  /**
286
296
  * Retrieves the filter configuration from the manifest.
287
297
  *
288
- * @returns {FilterManifestConfiguration} The filter configuration from the manifest
298
+ * @returns The filter configuration from the manifest
289
299
  */
290
300
  getFilterConfiguration(): FilterManifestConfiguration {
291
301
  return this.getControlConfiguration("@com.sap.vocabularies.UI.v1.SelectionFields");
@@ -293,7 +303,7 @@ class ManifestWrapper {
293
303
  /**
294
304
  * Returns true if there are multiple entity sets to be displayed.
295
305
  *
296
- * @returns {boolean} `true` if there are multiple entity sets
306
+ * @returns `true` if there are multiple entity sets
297
307
  */
298
308
  hasMultipleEntitySets(): boolean {
299
309
  const viewConfig = this.getViewConfiguration() || { paths: [] };
@@ -305,8 +315,8 @@ class ManifestWrapper {
305
315
  } else if (this.hasMultipleVisualizations(path as CombinedViewPathConfiguration)) {
306
316
  const { primary, secondary } = path as CombinedViewPathConfiguration;
307
317
  return (
308
- primary.some(path => path.entitySet && path.entitySet !== manifestEntitySet) ||
309
- secondary.some(path => path.entitySet && path.entitySet !== manifestEntitySet)
318
+ primary.some((primaryPath) => primaryPath.entitySet && primaryPath.entitySet !== manifestEntitySet) ||
319
+ secondary.some((secondaryPath) => secondaryPath.entitySet && secondaryPath.entitySet !== manifestEntitySet)
310
320
  );
311
321
  } else {
312
322
  path = path as SingleViewPathConfiguration;
@@ -319,7 +329,7 @@ class ManifestWrapper {
319
329
  /**
320
330
  * Returns the context path for the template if it is specified in the manifest.
321
331
  *
322
- * @returns {string} The context path for the template
332
+ * @returns The context path for the template
323
333
  */
324
334
  getContextPath(): string | undefined {
325
335
  return this.oManifestSettings?.contextPath;
@@ -328,16 +338,16 @@ class ManifestWrapper {
328
338
  /**
329
339
  * Returns true if there are multiple visualizations.
330
340
  *
331
- * @param {ViewPathConfiguration} path The path from the view
332
- * @returns {boolean} `true` if there are multiple visualizations
341
+ * @param path The path from the view
342
+ * @returns `true` if there are multiple visualizations
333
343
  */
334
344
  hasMultipleVisualizations(path?: ViewPathConfiguration): boolean {
335
345
  if (!path) {
336
346
  const viewConfig = this.getViewConfiguration() || { paths: [] };
337
- return viewConfig.paths.some(path => {
347
+ return viewConfig.paths.some((viewPath) => {
338
348
  return (
339
- (path as CombinedViewPathConfiguration).primary?.length > 0 &&
340
- (path as CombinedViewPathConfiguration).secondary?.length > 0
349
+ (viewPath as CombinedViewPathConfiguration).primary?.length > 0 &&
350
+ (viewPath as CombinedViewPathConfiguration).secondary?.length > 0
341
351
  );
342
352
  });
343
353
  }