@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,22 +1,26 @@
1
- import { EntityType, NavigationProperty, Property } from "@sap-ux/annotation-converter";
2
- import { AnnotationTerm, DataFieldAbstractTypes, DataFieldTypes, ReferenceFacetTypes, UIAnnotationTerms } from "@sap-ux/vocabularies-types";
3
- import { PropertyPath } from "@sap-ux/vocabularies-types/dist/Edm";
4
- import { FieldGroup, FieldGroupType, SelectOptionType } from "@sap-ux/vocabularies-types/dist/generated/UI";
5
- import { ChartVisualization } from "sap/fe/core/converters/controls/Common/Chart";
6
- import {
7
- getSelectionVariantConfiguration,
8
- getTypeConfig,
9
- isFilteringCaseSensitive,
10
- SelectionVariantConfiguration,
11
- TableVisualization
12
- } from "sap/fe/core/converters/controls/Common/Table";
13
- import { getVisualFilters, VisualFilters } from "sap/fe/core/converters/controls/ListReport/VisualFilters";
14
- import ConverterContext from "sap/fe/core/converters/ConverterContext";
15
- import { ConfigurableObject, CustomElement, insertCustomElements, Placement } from "sap/fe/core/converters/helpers/ConfigurableObject";
1
+ import type { AnnotationTerm, EntityType, NavigationProperty, Property, PropertyPath } from "@sap-ux/vocabularies-types";
2
+ import type {
3
+ DataFieldAbstractTypes,
4
+ DataFieldTypes,
5
+ FieldGroup,
6
+ FieldGroupType,
7
+ ReferenceFacetTypes,
8
+ SelectOptionType
9
+ } from "@sap-ux/vocabularies-types/vocabularies/UI";
10
+ import { UIAnnotationTerms } from "@sap-ux/vocabularies-types/vocabularies/UI";
11
+ import type { ChartVisualization } from "sap/fe/core/converters/controls/Common/Chart";
12
+ import type { SelectionVariantConfiguration, TableVisualization } from "sap/fe/core/converters/controls/Common/Table";
13
+ import { getSelectionVariantConfiguration, getTypeConfig, isFilteringCaseSensitive } from "sap/fe/core/converters/controls/Common/Table";
14
+ import type { VisualFilters } from "sap/fe/core/converters/controls/ListReport/VisualFilters";
15
+ import { getVisualFilters } from "sap/fe/core/converters/controls/ListReport/VisualFilters";
16
+ import type ConverterContext from "sap/fe/core/converters/ConverterContext";
17
+ import type { ConfigurableObject, CustomElement } from "sap/fe/core/converters/helpers/ConfigurableObject";
18
+ import { insertCustomElements, Placement } from "sap/fe/core/converters/helpers/ConfigurableObject";
16
19
  import { IssueCategory, IssueSeverity, IssueType } from "sap/fe/core/converters/helpers/IssueManager";
17
20
  import { KeyHelper } from "sap/fe/core/converters/helpers/Key";
18
- import { annotationExpression, compileBinding } from "sap/fe/core/helpers/BindingExpression";
19
- import { AvailabilityType, FilterFieldManifestConfiguration, FilterManifestConfiguration, FilterSettings } from "../../ManifestSettings";
21
+ import { compileExpression, getExpressionFromAnnotation } from "sap/fe/core/helpers/BindingToolkit";
22
+ import type { FilterFieldManifestConfiguration, FilterManifestConfiguration, FilterSettings } from "../../ManifestSettings";
23
+ import { AvailabilityType } from "../../ManifestSettings";
20
24
  import { getSelectionVariant } from "../Common/DataVisualization";
21
25
  //import { hasValueHelp } from "sap/fe/core/templating/PropertyHelper";
22
26
 
@@ -53,8 +57,8 @@ export type CustomElementFilterField = CustomElement<FilterField>;
53
57
  /**
54
58
  * Enter all DataFields of a given FieldGroup into the filterFacetMap.
55
59
  *
56
- * @param {AnnotationTerm<FieldGroupType>} fieldGroup
57
- * @returns {Record<string, FilterGroup>} The map of facets for the given FieldGroup
60
+ * @param fieldGroup
61
+ * @returns The map of facets for the given FieldGroup
58
62
  */
59
63
  function getFieldGroupFilterGroups(fieldGroup: AnnotationTerm<FieldGroupType>): Record<string, FilterGroup> {
60
64
  const filterFacetMap: Record<string, FilterGroup> = {};
@@ -63,8 +67,8 @@ function getFieldGroupFilterGroups(fieldGroup: AnnotationTerm<FieldGroupType>):
63
67
  filterFacetMap[dataField.Value.path] = {
64
68
  group: fieldGroup.fullyQualifiedName,
65
69
  groupLabel:
66
- compileBinding(
67
- annotationExpression(fieldGroup.Label || fieldGroup.annotations?.Common?.Label || fieldGroup.qualifier)
70
+ compileExpression(
71
+ getExpressionFromAnnotation(fieldGroup.Label || fieldGroup.annotations?.Common?.Label || fieldGroup.qualifier)
68
72
  ) || fieldGroup.qualifier
69
73
  };
70
74
  }
@@ -83,9 +87,10 @@ function getExcludedFilterProperties(selectionVariants: SelectionVariantConfigur
83
87
 
84
88
  /**
85
89
  * Check that all the tables for a dedicated entity set are configured as analytical table.
86
- * @param {TableVisualization[]} listReportTables List report tables
87
- * @param {string} contextPath
88
- * @returns {boolean} Is FilterBar search field hidden or not
90
+ *
91
+ * @param listReportTables List report tables
92
+ * @param contextPath
93
+ * @returns Is FilterBar search field hidden or not
89
94
  */
90
95
  function checkAllTableForEntitySetAreAnalytical(listReportTables: TableVisualization[], contextPath: string | undefined) {
91
96
  if (contextPath && listReportTables.length > 0) {
@@ -130,7 +135,7 @@ function getSelectionVariants(
130
135
  *
131
136
  * @param entityType The root EntityType
132
137
  * @param propertyPath The full path to the target property
133
- * @returns {string} The formatted condition path
138
+ * @returns The formatted condition path
134
139
  */
135
140
  const _getConditionPath = function (entityType: EntityType, propertyPath: string): string {
136
141
  const parts = propertyPath.split("/");
@@ -138,12 +143,12 @@ const _getConditionPath = function (entityType: EntityType, propertyPath: string
138
143
  let key = "";
139
144
  while (parts.length) {
140
145
  let part = parts.shift() as string;
141
- partialPath = partialPath ? partialPath + "/" + part : part;
146
+ partialPath = partialPath ? `${partialPath}/${part}` : part;
142
147
  const property: Property | NavigationProperty = entityType.resolvePath(partialPath);
143
148
  if (property._type === "NavigationProperty" && property.isCollection) {
144
149
  part += "*";
145
150
  }
146
- key = key ? key + "/" + part : part;
151
+ key = key ? `${key}/${part}` : part;
147
152
  }
148
153
  return key;
149
154
  };
@@ -168,10 +173,10 @@ const _createFilterSelectionField = function (
168
173
  conditionPath: _getConditionPath(entityType, fullPropertyPath),
169
174
  availability:
170
175
  property.annotations?.UI?.HiddenFilter?.valueOf() === true ? AvailabilityType.Hidden : AvailabilityType.Adaptation,
171
- label: compileBinding(annotationExpression(property.annotations.Common?.Label?.valueOf() || property.name)),
176
+ label: compileExpression(getExpressionFromAnnotation(property.annotations.Common?.Label?.valueOf() || property.name)),
172
177
  group: targetEntityType.name,
173
- groupLabel: compileBinding(
174
- annotationExpression(targetEntityType?.annotations?.Common?.Label?.valueOf() || targetEntityType.name)
178
+ groupLabel: compileExpression(
179
+ getExpressionFromAnnotation(targetEntityType?.annotations?.Common?.Label?.valueOf() || targetEntityType.name)
175
180
  )
176
181
  };
177
182
  }
@@ -253,7 +258,7 @@ const _getSelectionFields = function (
253
258
  if (properties) {
254
259
  properties.forEach((property: Property) => {
255
260
  const propertyPath: string = property.name;
256
- const fullPath: string = (navigationPath ? navigationPath + "/" : "") + propertyPath;
261
+ const fullPath: string = (navigationPath ? `${navigationPath}/` : "") + propertyPath;
257
262
  const selectionField = _createFilterSelectionField(entityType, property, fullPath, includeHidden, converterContext);
258
263
  if (selectionField) {
259
264
  selectionFieldMap[fullPath] = selectionField;
@@ -352,12 +357,12 @@ const _getDefaultFilterFields = function (
352
357
  aSelectOptions?.forEach((selectOption: SelectOptionType) => {
353
358
  const propertyName: any = selectOption.PropertyName;
354
359
  const sPropertyPath: string = propertyName.value;
355
- const UISelectionFields: any = {};
360
+ const currentSelectionFields: any = {};
356
361
  annotatedSelectionFields?.forEach((SelectionField) => {
357
- UISelectionFields[SelectionField.value] = true;
362
+ currentSelectionFields[SelectionField.value] = true;
358
363
  });
359
364
  if (!(sPropertyPath in excludedFilterProperties)) {
360
- if (!(sPropertyPath in UISelectionFields)) {
365
+ if (!(sPropertyPath in currentSelectionFields)) {
361
366
  const FilterField: FilterField | undefined = getFilterField(sPropertyPath, converterContext, entityType);
362
367
  if (FilterField) {
363
368
  selectionFields.push(FilterField);
@@ -368,10 +373,10 @@ const _getDefaultFilterFields = function (
368
373
  } else if (properties) {
369
374
  properties.forEach((property: Property) => {
370
375
  const defaultFilterValue = property.annotations?.Common?.FilterDefaultValue;
371
- const PropertyPath = property.name;
372
- if (!(PropertyPath in excludedFilterProperties)) {
373
- if (defaultFilterValue && !(PropertyPath in UISelectionFields)) {
374
- const FilterField: FilterField | undefined = getFilterField(PropertyPath, converterContext, entityType);
376
+ const propertyPath = property.name;
377
+ if (!(propertyPath in excludedFilterProperties)) {
378
+ if (defaultFilterValue && !(propertyPath in UISelectionFields)) {
379
+ const FilterField: FilterField | undefined = getFilterField(propertyPath, converterContext, entityType);
375
380
  if (FilterField) {
376
381
  selectionFields.push(FilterField);
377
382
  }
@@ -384,17 +389,18 @@ const _getDefaultFilterFields = function (
384
389
 
385
390
  /**
386
391
  * Get all parameter filter fields in case of a parameterized service.
387
- * @param {ConverterContext} converterContext
388
- * @returns {FilterField[]} An array of parameter filterfields
392
+ *
393
+ * @param converterContext
394
+ * @returns An array of parameter filterfields
389
395
  */
390
396
  function _getParameterFields(converterContext: ConverterContext): FilterField[] {
391
397
  const dataModelObjectPath = converterContext.getDataModelObjectPath();
392
398
  const parameterEntityType = dataModelObjectPath.startingEntitySet.entityType;
393
- const isParameterized = !!parameterEntityType.annotations?.Common?.ResultContext;
399
+ const isParameterized = !!parameterEntityType.annotations?.Common?.ResultContext && !dataModelObjectPath.targetEntitySet;
394
400
  const parameterConverterContext =
395
- isParameterized && converterContext.getConverterContextFor("/" + dataModelObjectPath.startingEntitySet.name);
401
+ isParameterized && converterContext.getConverterContextFor(`/${dataModelObjectPath.startingEntitySet.name}`);
396
402
 
397
- const parameterFields = (
403
+ return (
398
404
  parameterConverterContext
399
405
  ? parameterEntityType.entityProperties.map(function (property) {
400
406
  return _getFilterField(
@@ -406,17 +412,15 @@ function _getParameterFields(converterContext: ConverterContext): FilterField[]
406
412
  })
407
413
  : []
408
414
  ) as FilterField[];
409
-
410
- return parameterFields;
411
415
  }
412
416
 
413
417
  /**
414
418
  * Determines if the FilterBar search field is hidden or not.
415
419
  *
416
- * @param {TableVisualization[]} listReportTables The list report tables
417
- * @param {ChartVisualization[]} charts The ALP charts
418
- * @param {ConverterContext} converterContext The converter context
419
- * @returns {boolean} The information if the FilterBar search field is hidden or not
420
+ * @param listReportTables The list report tables
421
+ * @param charts The ALP charts
422
+ * @param converterContext The converter context
423
+ * @returns The information if the FilterBar search field is hidden or not
420
424
  */
421
425
  export const getFilterBarhideBasicSearch = function (
422
426
  listReportTables: TableVisualization[],
@@ -443,7 +447,7 @@ export const getFilterBarhideBasicSearch = function (
443
447
  *
444
448
  * @param entityType The current entityType
445
449
  * @param converterContext The converter context
446
- * @returns {Record<string, CustomElementFilterField>} The filter fields defined in the manifest
450
+ * @returns The filter fields defined in the manifest
447
451
  */
448
452
  export const getManifestFilterFields = function (
449
453
  entityType: EntityType,
@@ -651,7 +655,8 @@ export const isMultiValue = function (oProperty: any) {
651
655
  const getAnnotatedSelectionFieldData = function (
652
656
  converterContext: ConverterContext,
653
657
  lrTables: TableVisualization[] = [],
654
- annotationPath: string = ""
658
+ annotationPath: string = "",
659
+ includeHidden: boolean = false
655
660
  ) {
656
661
  // Fetch all selectionVariants defined in the different visualizations and different views (multi table mode)
657
662
  const selectionVariants: SelectionVariantConfiguration[] = getSelectionVariants(lrTables, converterContext);
@@ -667,12 +672,12 @@ const getAnnotatedSelectionFieldData = function (
667
672
  // create a map of all potential filter fields based on...
668
673
  const filterFields: Record<string, FilterField> = {
669
674
  // ...non hidden properties of the entity
670
- ..._getSelectionFields(entityType, "", entityType.entityProperties, false, converterContext),
675
+ ..._getSelectionFields(entityType, "", entityType.entityProperties, includeHidden, converterContext),
671
676
  // ...additional manifest defined navigation properties
672
677
  ..._getSelectionFieldsByPath(
673
678
  entityType,
674
679
  converterContext.getManifestWrapper().getFilterConfiguration().navigationProperties,
675
- false,
680
+ includeHidden,
676
681
  converterContext
677
682
  )
678
683
  };
@@ -696,7 +701,7 @@ const getAnnotatedSelectionFieldData = function (
696
701
  return selectionFields;
697
702
  }, []) || [];
698
703
 
699
- let defaultFilterFields = _getDefaultFilterFields(
704
+ const defaultFilterFields = _getDefaultFilterFields(
700
705
  aSelectOptions,
701
706
  entityType,
702
707
  converterContext,
@@ -716,7 +721,7 @@ const getAnnotatedSelectionFieldData = function (
716
721
  export const processSelectionFields = function (
717
722
  propertyInfoFields: any,
718
723
  converterContext: ConverterContext,
719
- defaultValuePropertyFields: any
724
+ defaultValuePropertyFields?: any
720
725
  ) {
721
726
  //get TypeConfig function
722
727
  const selectionFieldTypes: any = [];
@@ -724,7 +729,10 @@ export const processSelectionFields = function (
724
729
  const _fnTypeConfig = function (property: Property, key: string) {
725
730
  const oTypeConfig = getTypeConfig(property, property?.type);
726
731
  selectionFieldTypes.push(property?.type);
727
- if (property?.type === sEdmString && (!oTypeConfig.constraints.nullable || oTypeConfig.constraints.nullable === true)) {
732
+ if (
733
+ property?.type === sEdmString &&
734
+ (oTypeConfig.constraints.nullable === undefined || oTypeConfig.constraints.nullable === true)
735
+ ) {
728
736
  oTypeConfig.formatOptions.parseKeepsEmptyString = false;
729
737
  }
730
738
  aTypeConfig[key] = oTypeConfig;
@@ -829,17 +837,20 @@ export const insertCustomManifestElements = function (
829
837
  /**
830
838
  * Retrieve the configuration for the selection fields that will be used within the filter bar
831
839
  * This configuration takes into account annotation and the selection variants.
832
- * @param {ConverterContext} converterContext
833
- * @param {TableVisualization[]} lrTables
834
- * @param {string} annotationPath
835
- * @returns {FilterSelectionField[]} An array of selection fields
840
+ *
841
+ * @param converterContext
842
+ * @param lrTables
843
+ * @param annotationPath
844
+ * @param [includeHidden]
845
+ * @returns An array of selection fields
836
846
  */
837
847
  export const getSelectionFields = function (
838
848
  converterContext: ConverterContext,
839
849
  lrTables: TableVisualization[] = [],
840
- annotationPath: string = ""
850
+ annotationPath: string = "",
851
+ includeHidden?: boolean
841
852
  ): any {
842
- const oAnnotatedSelectionFieldData = getAnnotatedSelectionFieldData(converterContext, lrTables, annotationPath);
853
+ const oAnnotatedSelectionFieldData = getAnnotatedSelectionFieldData(converterContext, lrTables, annotationPath, includeHidden);
843
854
  const parameterFields = _getParameterFields(converterContext);
844
855
  let propertyInfoFields: FilterField[] = JSON.parse(JSON.stringify(oAnnotatedSelectionFieldData.propertyInfoFields));
845
856
  const entityType = oAnnotatedSelectionFieldData.entityType;
@@ -944,12 +955,13 @@ export const getSelectionFields = function (
944
955
  * (1) a filter property is mandatory,
945
956
  * (2) no search field exists (entity isn't search enabled),
946
957
  * (3) when the data isn't loaded by default (annotation FetchValues = 2).
947
- * @param {ConverterContext} converterContext The converter context
948
- * @param {any} filterRestrictionsAnnotation The FilterRestriction annotation
949
- * @param {any} valueListAnnotation The ValueList annotation
950
- * @returns {boolean} The value for expandFilterFields
958
+ *
959
+ * @param converterContext The converter context
960
+ * @param filterRestrictionsAnnotation The FilterRestriction annotation
961
+ * @param valueListAnnotation The ValueList annotation
962
+ * @returns The value for expandFilterFields
951
963
  */
952
- export const getExpandFilterFields = function(
964
+ export const getExpandFilterFields = function (
953
965
  converterContext: ConverterContext,
954
966
  filterRestrictionsAnnotation: any,
955
967
  valueListAnnotation: any