@sapui5/sap.fe.core 1.102.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 (311) 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 +62 -26
  4. package/src/sap/fe/core/AppComponent.ts +56 -40
  5. package/src/sap/fe/core/AppStateHandler.js +10 -10
  6. package/src/sap/fe/core/AppStateHandler.ts +9 -9
  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 +236 -109
  10. package/src/sap/fe/core/CommonUtils.ts +252 -136
  11. package/src/sap/fe/core/ExtensionAPI.js +24 -27
  12. package/src/sap/fe/core/ExtensionAPI.ts +36 -38
  13. package/src/sap/fe/core/PageController.js +4 -4
  14. package/src/sap/fe/core/PageController.ts +4 -5
  15. package/src/sap/fe/core/TemplateComponent.js +1 -1
  16. package/src/sap/fe/core/TemplateComponent.ts +6 -6
  17. package/src/sap/fe/core/TemplateModel.js +1 -1
  18. package/src/sap/fe/core/TemplateModel.ts +1 -1
  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 +8 -8
  22. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +11 -10
  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/controllerextensions/EditFlow.js +129 -118
  26. package/src/sap/fe/core/controllerextensions/EditFlow.ts +154 -141
  27. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +9 -9
  28. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +10 -10
  29. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +31 -26
  30. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +34 -35
  31. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +70 -70
  32. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +77 -77
  33. package/src/sap/fe/core/controllerextensions/InternalRouting.js +84 -78
  34. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +105 -101
  35. package/src/sap/fe/core/controllerextensions/KPIManagement.js +66 -68
  36. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +106 -123
  37. package/src/sap/fe/core/controllerextensions/MassEdit.js +8 -8
  38. package/src/sap/fe/core/controllerextensions/MassEdit.ts +19 -26
  39. package/src/sap/fe/core/controllerextensions/MessageHandler.js +20 -12
  40. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +29 -14
  41. package/src/sap/fe/core/controllerextensions/PageReady.js +97 -25
  42. package/src/sap/fe/core/controllerextensions/PageReady.ts +94 -34
  43. package/src/sap/fe/core/controllerextensions/Paginator.js +21 -22
  44. package/src/sap/fe/core/controllerextensions/Paginator.ts +24 -25
  45. package/src/sap/fe/core/controllerextensions/Placeholder.js +4 -6
  46. package/src/sap/fe/core/controllerextensions/Placeholder.ts +12 -14
  47. package/src/sap/fe/core/controllerextensions/Routing.js +10 -11
  48. package/src/sap/fe/core/controllerextensions/Routing.ts +12 -13
  49. package/src/sap/fe/core/controllerextensions/Share.js +22 -22
  50. package/src/sap/fe/core/controllerextensions/Share.ts +30 -29
  51. package/src/sap/fe/core/controllerextensions/SideEffects.js +46 -50
  52. package/src/sap/fe/core/controllerextensions/SideEffects.ts +56 -60
  53. package/src/sap/fe/core/controllerextensions/ViewState.js +65 -62
  54. package/src/sap/fe/core/controllerextensions/ViewState.ts +68 -63
  55. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +5 -5
  56. package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +8 -7
  57. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +6 -6
  58. package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.ts +12 -17
  59. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +2 -2
  60. package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +4 -4
  61. package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +7 -9
  62. package/src/sap/fe/core/controllerextensions/collaboration/Manage.ts +18 -19
  63. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +184 -137
  64. package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +253 -206
  65. package/src/sap/fe/core/controllerextensions/editFlow/draft.js +113 -121
  66. package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +148 -158
  67. package/src/sap/fe/core/controllerextensions/editFlow/operations.js +198 -148
  68. package/src/sap/fe/core/controllerextensions/editFlow/operations.ts +223 -159
  69. package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +24 -26
  70. package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +35 -33
  71. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +78 -44
  72. package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +90 -60
  73. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +52 -55
  74. package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +55 -58
  75. package/src/sap/fe/core/controls/Any.js +9 -5
  76. package/src/sap/fe/core/controls/Any.ts +10 -4
  77. package/src/sap/fe/core/controls/CommandExecution.js +11 -25
  78. package/src/sap/fe/core/controls/CommandExecution.ts +11 -25
  79. package/src/sap/fe/core/controls/ConditionalWrapper.js +2 -2
  80. package/src/sap/fe/core/controls/ConditionalWrapper.ts +3 -3
  81. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +22 -22
  82. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +25 -24
  83. package/src/sap/fe/core/controls/CustomQuickViewPage.js +2 -2
  84. package/src/sap/fe/core/controls/CustomQuickViewPage.ts +2 -2
  85. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +3 -3
  86. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +5 -5
  87. package/src/sap/fe/core/controls/FieldWrapper.js +2 -2
  88. package/src/sap/fe/core/controls/FieldWrapper.ts +3 -3
  89. package/src/sap/fe/core/controls/FileWrapper.js +2 -2
  90. package/src/sap/fe/core/controls/FileWrapper.ts +11 -11
  91. package/src/sap/fe/core/controls/FilterBar.js +6 -2
  92. package/src/sap/fe/core/controls/FilterBar.ts +13 -9
  93. package/src/sap/fe/core/controls/FormElementWrapper.js +1 -1
  94. package/src/sap/fe/core/controls/FormElementWrapper.ts +2 -2
  95. package/src/sap/fe/core/controls/MassEditSelect.js +1 -1
  96. package/src/sap/fe/core/controls/MassEditSelect.ts +0 -4
  97. package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +3 -3
  98. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +16 -12
  99. package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +20 -22
  100. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -3
  101. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +8 -8
  102. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +47 -47
  103. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +52 -52
  104. package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +8 -2
  105. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +89 -88
  106. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +107 -106
  107. package/src/sap/fe/core/converters/ConverterContext.js +26 -33
  108. package/src/sap/fe/core/converters/ConverterContext.ts +51 -60
  109. package/src/sap/fe/core/converters/ManifestSettings.js +1 -1
  110. package/src/sap/fe/core/converters/ManifestSettings.ts +14 -14
  111. package/src/sap/fe/core/converters/ManifestWrapper.js +59 -45
  112. package/src/sap/fe/core/converters/ManifestWrapper.ts +55 -45
  113. package/src/sap/fe/core/converters/MetaModelConverter.js +50 -32
  114. package/src/sap/fe/core/converters/MetaModelConverter.ts +145 -127
  115. package/src/sap/fe/core/converters/TemplateConverter.js +21 -20
  116. package/src/sap/fe/core/converters/TemplateConverter.ts +27 -24
  117. package/src/sap/fe/core/converters/annotations/DataField.js +54 -34
  118. package/src/sap/fe/core/converters/annotations/DataField.ts +97 -75
  119. package/src/sap/fe/core/converters/common/AnnotationConverter.js +1911 -1495
  120. package/src/sap/fe/core/converters/controls/Common/Action.js +50 -41
  121. package/src/sap/fe/core/converters/controls/Common/Action.ts +56 -46
  122. package/src/sap/fe/core/converters/controls/Common/Chart.js +14 -14
  123. package/src/sap/fe/core/converters/controls/Common/Chart.ts +23 -26
  124. package/src/sap/fe/core/converters/controls/Common/Criticality.js +3 -3
  125. package/src/sap/fe/core/converters/controls/Common/Criticality.ts +4 -4
  126. package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +28 -28
  127. package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +40 -36
  128. package/src/sap/fe/core/converters/controls/Common/Form.js +25 -27
  129. package/src/sap/fe/core/converters/controls/Common/Form.ts +37 -45
  130. package/src/sap/fe/core/converters/controls/Common/KPI.js +11 -11
  131. package/src/sap/fe/core/converters/controls/Common/KPI.ts +35 -39
  132. package/src/sap/fe/core/converters/controls/Common/Table.js +174 -183
  133. package/src/sap/fe/core/converters/controls/Common/Table.ts +237 -250
  134. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +119 -119
  135. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +144 -141
  136. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +45 -41
  137. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +64 -57
  138. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +28 -26
  139. package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +46 -43
  140. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +9 -9
  141. package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.ts +14 -13
  142. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +67 -64
  143. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +69 -66
  144. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +73 -72
  145. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +98 -96
  146. package/src/sap/fe/core/converters/helpers/Aggregation.js +2 -4
  147. package/src/sap/fe/core/converters/helpers/Aggregation.ts +10 -13
  148. package/src/sap/fe/core/converters/helpers/BindingHelper.js +31 -31
  149. package/src/sap/fe/core/converters/helpers/BindingHelper.ts +30 -29
  150. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +4 -4
  151. package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +9 -9
  152. package/src/sap/fe/core/converters/helpers/ID.js +46 -46
  153. package/src/sap/fe/core/converters/helpers/ID.ts +25 -25
  154. package/src/sap/fe/core/converters/helpers/Key.js +7 -7
  155. package/src/sap/fe/core/converters/helpers/Key.ts +7 -7
  156. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +1 -1
  157. package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.ts +4 -4
  158. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +6 -6
  159. package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +10 -10
  160. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +46 -62
  161. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +54 -82
  162. package/src/sap/fe/core/converters/templates/ListReportConverter.js +30 -29
  163. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +40 -40
  164. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +39 -38
  165. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +52 -61
  166. package/src/sap/fe/core/designtime/AppComponent.designtime.js +4 -4
  167. package/src/sap/fe/core/designtime/AppComponent.designtime.ts +4 -4
  168. package/src/sap/fe/core/formatters/CollaborationFormatter.js +2 -2
  169. package/src/sap/fe/core/formatters/CollaborationFormatter.ts +3 -3
  170. package/src/sap/fe/core/formatters/FPMFormatter.js +5 -5
  171. package/src/sap/fe/core/formatters/FPMFormatter.ts +10 -10
  172. package/src/sap/fe/core/formatters/KPIFormatter.js +7 -7
  173. package/src/sap/fe/core/formatters/KPIFormatter.ts +10 -10
  174. package/src/sap/fe/core/formatters/StandardFormatter.js +89 -0
  175. package/src/sap/fe/core/formatters/StandardFormatter.ts +64 -0
  176. package/src/sap/fe/core/formatters/TableFormatter.js +11 -11
  177. package/src/sap/fe/core/formatters/TableFormatter.ts +12 -12
  178. package/src/sap/fe/core/formatters/ValueFormatter.js +8 -8
  179. package/src/sap/fe/core/formatters/ValueFormatter.ts +9 -9
  180. package/src/sap/fe/core/helpers/AppStartupHelper.js +15 -15
  181. package/src/sap/fe/core/helpers/AppStartupHelper.ts +37 -40
  182. package/src/sap/fe/core/helpers/BindingToolkit.js +1809 -0
  183. package/src/sap/fe/core/helpers/{BindingExpression.ts → BindingToolkit.ts} +365 -264
  184. package/src/sap/fe/core/helpers/ClassSupport.js +20 -11
  185. package/src/sap/fe/core/helpers/ClassSupport.ts +14 -10
  186. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +2 -2
  187. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -1
  188. package/src/sap/fe/core/helpers/EditState.js +1 -6
  189. package/src/sap/fe/core/helpers/EditState.ts +5 -10
  190. package/src/sap/fe/core/helpers/ExcelFormatHelper.js +2 -2
  191. package/src/sap/fe/core/helpers/ExcelFormatHelper.ts +4 -4
  192. package/src/sap/fe/core/helpers/FPMHelper.js +1 -1
  193. package/src/sap/fe/core/helpers/FPMHelper.ts +2 -2
  194. package/src/sap/fe/core/helpers/KeepAliveHelper.js +31 -31
  195. package/src/sap/fe/core/helpers/KeepAliveHelper.ts +52 -56
  196. package/src/sap/fe/core/helpers/MassEditHelper.js +281 -254
  197. package/src/sap/fe/core/helpers/MassEditHelper.ts +337 -289
  198. package/src/sap/fe/core/helpers/ModelHelper.js +25 -25
  199. package/src/sap/fe/core/helpers/ModelHelper.ts +34 -32
  200. package/src/sap/fe/core/helpers/PasteHelper.js +3 -10
  201. package/src/sap/fe/core/helpers/PasteHelper.ts +20 -25
  202. package/src/sap/fe/core/helpers/SemanticDateOperators.js +1 -1
  203. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +11 -11
  204. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +3 -3
  205. package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +8 -8
  206. package/src/sap/fe/core/helpers/StableIdHelper.js +12 -12
  207. package/src/sap/fe/core/helpers/StableIdHelper.ts +12 -12
  208. package/src/sap/fe/core/jsx-runtime/jsx.js +1 -1
  209. package/src/sap/fe/core/jsx-runtime/jsx.ts +8 -8
  210. package/src/sap/fe/core/library.js +42 -3
  211. package/src/sap/fe/core/library.ts +38 -0
  212. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +3 -3
  213. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +2 -2
  214. package/src/sap/fe/core/messagebundle.properties +49 -35
  215. package/src/sap/fe/core/messagebundle_ar.properties +13 -5
  216. package/src/sap/fe/core/messagebundle_bg.properties +13 -5
  217. package/src/sap/fe/core/messagebundle_ca.properties +13 -5
  218. package/src/sap/fe/core/messagebundle_cs.properties +13 -5
  219. package/src/sap/fe/core/messagebundle_cy.properties +14 -6
  220. package/src/sap/fe/core/messagebundle_da.properties +13 -5
  221. package/src/sap/fe/core/messagebundle_de.properties +15 -7
  222. package/src/sap/fe/core/messagebundle_el.properties +14 -6
  223. package/src/sap/fe/core/messagebundle_en.properties +9 -1
  224. package/src/sap/fe/core/messagebundle_en_GB.properties +11 -3
  225. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +7 -1
  226. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +9 -1
  227. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +44 -85
  228. package/src/sap/fe/core/messagebundle_es.properties +13 -5
  229. package/src/sap/fe/core/messagebundle_es_MX.properties +13 -5
  230. package/src/sap/fe/core/messagebundle_et.properties +13 -5
  231. package/src/sap/fe/core/messagebundle_fi.properties +14 -6
  232. package/src/sap/fe/core/messagebundle_fr.properties +14 -6
  233. package/src/sap/fe/core/messagebundle_fr_CA.properties +14 -6
  234. package/src/sap/fe/core/messagebundle_hi.properties +14 -6
  235. package/src/sap/fe/core/messagebundle_hr.properties +14 -6
  236. package/src/sap/fe/core/messagebundle_hu.properties +13 -5
  237. package/src/sap/fe/core/messagebundle_id.properties +13 -5
  238. package/src/sap/fe/core/messagebundle_it.properties +33 -25
  239. package/src/sap/fe/core/messagebundle_iw.properties +13 -5
  240. package/src/sap/fe/core/messagebundle_ja.properties +14 -6
  241. package/src/sap/fe/core/messagebundle_kk.properties +13 -5
  242. package/src/sap/fe/core/messagebundle_ko.properties +13 -5
  243. package/src/sap/fe/core/messagebundle_lt.properties +13 -5
  244. package/src/sap/fe/core/messagebundle_lv.properties +14 -6
  245. package/src/sap/fe/core/messagebundle_ms.properties +13 -5
  246. package/src/sap/fe/core/messagebundle_nl.properties +13 -5
  247. package/src/sap/fe/core/messagebundle_no.properties +13 -5
  248. package/src/sap/fe/core/messagebundle_pl.properties +13 -5
  249. package/src/sap/fe/core/messagebundle_pt.properties +13 -5
  250. package/src/sap/fe/core/messagebundle_pt_PT.properties +14 -6
  251. package/src/sap/fe/core/messagebundle_ro.properties +13 -5
  252. package/src/sap/fe/core/messagebundle_ru.properties +13 -5
  253. package/src/sap/fe/core/messagebundle_sh.properties +13 -5
  254. package/src/sap/fe/core/messagebundle_sk.properties +13 -5
  255. package/src/sap/fe/core/messagebundle_sl.properties +17 -9
  256. package/src/sap/fe/core/messagebundle_sv.properties +14 -6
  257. package/src/sap/fe/core/messagebundle_th.properties +13 -5
  258. package/src/sap/fe/core/messagebundle_tr.properties +13 -5
  259. package/src/sap/fe/core/messagebundle_uk.properties +13 -5
  260. package/src/sap/fe/core/messagebundle_vi.properties +13 -5
  261. package/src/sap/fe/core/messagebundle_zh_CN.properties +14 -6
  262. package/src/sap/fe/core/messagebundle_zh_TW.properties +13 -5
  263. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +2 -2
  264. package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +5 -5
  265. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +2 -2
  266. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +14 -14
  267. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
  268. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +3 -2
  269. package/src/sap/fe/core/services/NavigationServiceFactory.js +53 -44
  270. package/src/sap/fe/core/services/NavigationServiceFactory.ts +54 -46
  271. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +2 -2
  272. package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +4 -4
  273. package/src/sap/fe/core/services/RoutingServiceFactory.js +55 -55
  274. package/src/sap/fe/core/services/RoutingServiceFactory.ts +67 -65
  275. package/src/sap/fe/core/services/ShellServicesFactory.js +72 -76
  276. package/src/sap/fe/core/services/ShellServicesFactory.ts +76 -82
  277. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +61 -61
  278. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +102 -92
  279. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +20 -15
  280. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +26 -21
  281. package/src/sap/fe/core/support/CommonHelper.js +3 -2
  282. package/src/sap/fe/core/support/CommonHelper.ts +9 -13
  283. package/src/sap/fe/core/support/Diagnostics.js +1 -1
  284. package/src/sap/fe/core/support/Diagnostics.ts +5 -5
  285. package/src/sap/fe/core/templating/CommonFormatters.js +84 -0
  286. package/src/sap/fe/core/templating/CommonFormatters.ts +86 -0
  287. package/src/sap/fe/core/templating/CriticalityFormatters.js +31 -31
  288. package/src/sap/fe/core/templating/CriticalityFormatters.ts +42 -40
  289. package/src/sap/fe/core/templating/DataFieldFormatters.js +8 -8
  290. package/src/sap/fe/core/templating/DataFieldFormatters.ts +13 -10
  291. package/src/sap/fe/core/templating/DataModelPathHelper.js +16 -15
  292. package/src/sap/fe/core/templating/DataModelPathHelper.ts +42 -32
  293. package/src/sap/fe/core/templating/DisplayModeFormatter.js +1 -1
  294. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +2 -3
  295. package/src/sap/fe/core/templating/EntitySetHelper.js +7 -7
  296. package/src/sap/fe/core/templating/EntitySetHelper.ts +6 -8
  297. package/src/sap/fe/core/templating/FieldControlHelper.js +35 -34
  298. package/src/sap/fe/core/templating/FieldControlHelper.ts +29 -46
  299. package/src/sap/fe/core/templating/FilterHelper.js +10 -9
  300. package/src/sap/fe/core/templating/FilterHelper.ts +13 -13
  301. package/src/sap/fe/core/templating/FilterTemplating.js +1 -1
  302. package/src/sap/fe/core/templating/FilterTemplating.ts +3 -3
  303. package/src/sap/fe/core/templating/PropertyFormatters.js +7 -7
  304. package/src/sap/fe/core/templating/PropertyFormatters.ts +21 -19
  305. package/src/sap/fe/core/templating/PropertyHelper.js +25 -25
  306. package/src/sap/fe/core/templating/PropertyHelper.ts +25 -26
  307. package/src/sap/fe/core/templating/UIFormatters.js +148 -93
  308. package/src/sap/fe/core/templating/UIFormatters.ts +196 -124
  309. package/src/sap/fe/core/type/Email.js +2 -2
  310. package/src/sap/fe/core/type/Email.ts +2 -2
  311. package/src/sap/fe/core/helpers/BindingExpression.js +0 -1732
@@ -1,37 +1,31 @@
1
1
  import Log from "sap/base/Log";
2
- import AppComponent from "sap/fe/core/AppComponent";
2
+ import type AppComponent from "sap/fe/core/AppComponent";
3
3
  import CommonUtils from "sap/fe/core/CommonUtils";
4
4
  import BusyLocker from "sap/fe/core/controllerextensions/BusyLocker";
5
5
  import ActivitySync from "sap/fe/core/controllerextensions/collaboration/ActivitySync";
6
6
  import draft from "sap/fe/core/controllerextensions/editFlow/draft";
7
- import RouterProxy from "sap/fe/core/controllerextensions/routing/RouterProxy";
8
- import {
9
- defineUI5Class,
10
- EnhanceWithUI5,
11
- extensible,
12
- finalExtension,
13
- methodOverride,
14
- publicExtension
15
- } from "sap/fe/core/helpers/ClassSupport";
7
+ import type RouterProxy from "sap/fe/core/controllerextensions/routing/RouterProxy";
8
+ import type { EnhanceWithUI5 } from "sap/fe/core/helpers/ClassSupport";
9
+ import { defineUI5Class, extensible, finalExtension, methodOverride, publicExtension } from "sap/fe/core/helpers/ClassSupport";
16
10
  import EditState from "sap/fe/core/helpers/EditState";
17
11
  import ModelHelper from "sap/fe/core/helpers/ModelHelper";
18
12
  import SemanticKeyHelper from "sap/fe/core/helpers/SemanticKeyHelper";
19
13
  import FELibrary from "sap/fe/core/library";
20
- import PageController from "sap/fe/core/PageController";
21
- import { RoutingService } from "sap/fe/core/services/RoutingServiceFactory";
22
- import TemplateComponent from "sap/fe/core/TemplateComponent";
23
- import Event from "sap/ui/base/Event";
14
+ import type PageController from "sap/fe/core/PageController";
15
+ import type { RoutingService } from "sap/fe/core/services/RoutingServiceFactory";
16
+ import type TemplateComponent from "sap/fe/core/TemplateComponent";
17
+ import type Event from "sap/ui/base/Event";
24
18
  import Component from "sap/ui/core/Component";
25
19
  import Core from "sap/ui/core/Core";
26
20
  import ControllerExtension from "sap/ui/core/mvc/ControllerExtension";
27
21
  import OverrideExecution from "sap/ui/core/mvc/OverrideExecution";
28
- import View from "sap/ui/core/mvc/View";
29
- import Router from "sap/ui/core/routing/Router";
22
+ import type View from "sap/ui/core/mvc/View";
23
+ import type Router from "sap/ui/core/routing/Router";
30
24
  import Filter from "sap/ui/model/Filter";
31
25
  import FilterOperator from "sap/ui/model/FilterOperator";
32
- import JSONModel from "sap/ui/model/json/JSONModel";
33
- import Context from "sap/ui/model/odata/v4/Context";
34
- import { CoreEx } from "types/extension_types";
26
+ import type JSONModel from "sap/ui/model/json/JSONModel";
27
+ import type Context from "sap/ui/model/odata/v4/Context";
28
+ import type { CoreEx } from "types/extension_types";
35
29
 
36
30
  /**
37
31
  * {@link sap.ui.core.mvc.ControllerExtension Controller extension}
@@ -55,7 +49,9 @@ class InternalRouting extends ControllerExtension {
55
49
 
56
50
  @methodOverride()
57
51
  onExit() {
58
- this._oRoutingService && this._oRoutingService.detachRouteMatched(this._fnRouteMatchedBound);
52
+ if (this._oRoutingService) {
53
+ this._oRoutingService.detachRouteMatched(this._fnRouteMatchedBound);
54
+ }
59
55
  }
60
56
 
61
57
  @methodOverride()
@@ -133,10 +129,10 @@ class InternalRouting extends ControllerExtension {
133
129
  /**
134
130
  * Navigates to the specified navigation target.
135
131
  *
136
- * @param {sap.ui.model.odata.v4.Context} oContext Context instance
137
- * @param {string} sNavigationTargetName Navigation target name
138
- * @param {object} oSemanticObject Semantic object
139
- * @param {boolean} bPreserveHistory True to force the new URL to be added at the end of the browser history (no replace)
132
+ * @param oContext Context instance
133
+ * @param sNavigationTargetName Navigation target name
134
+ * @param oSemanticObject Semantic object
135
+ * @param bPreserveHistory True to force the new URL to be added at the end of the browser history (no replace)
140
136
  * @ui5-restricted
141
137
  */
142
138
  @publicExtension()
@@ -159,9 +155,9 @@ class InternalRouting extends ControllerExtension {
159
155
  /**
160
156
  * Navigates to the specified navigation target route.
161
157
  *
162
- * @param {string} sTargetRouteName Name of the target route
163
- * @param {object} [oParameters] Parameters to be used with route to create the target hash
164
- * @returns {Promise} Promise that is resolved when the navigation is finalized
158
+ * @param sTargetRouteName Name of the target route
159
+ * @param [oParameters] Parameters to be used with route to create the target hash
160
+ * @returns Promise that is resolved when the navigation is finalized
165
161
  * @ui5-restricted
166
162
  */
167
163
  @publicExtension()
@@ -172,9 +168,9 @@ class InternalRouting extends ControllerExtension {
172
168
  /**
173
169
  * Navigates to a specific context.
174
170
  *
175
- * @param {sap.ui.model.odata.v4.Context} oContext The context to be navigated to
176
- * @param {object} [mParameters] Optional navigation parameters
177
- * @returns {Promise} Promise resolved when the navigation has been triggered
171
+ * @param oContext The context to be navigated to
172
+ * @param [mParameters] Optional navigation parameters
173
+ * @returns Promise resolved when the navigation has been triggered
178
174
  * @ui5-restricted
179
175
  */
180
176
  @publicExtension()
@@ -191,9 +187,9 @@ class InternalRouting extends ControllerExtension {
191
187
  this._oRouterProxy.activateRouteMatchSynchronization();
192
188
 
193
189
  mParameters.asyncContext
194
- .then((oContext: any) => {
190
+ .then((asyncContext: any) => {
195
191
  // once the context is returned we navigate into it
196
- this.navigateToContext(oContext, {
192
+ this.navigateToContext(asyncContext, {
197
193
  checkNoHashChange: mParameters.checkNoHashChange,
198
194
  editable: mParameters.editable,
199
195
  bPersistOPScroll: mParameters.bPersistOPScroll,
@@ -235,9 +231,9 @@ class InternalRouting extends ControllerExtension {
235
231
  /**
236
232
  * Navigates backwards from a context.
237
233
  *
238
- * @param {sap.ui.model.odata.v4.Context} oContext Context to be navigated from
239
- * @param {object} [mParameters] Optional navigation parameters
240
- * @returns {Promise} Promise resolved when the navigation has been triggered
234
+ * @param oContext Context to be navigated from
235
+ * @param [mParameters] Optional navigation parameters
236
+ * @returns Promise resolved when the navigation has been triggered
241
237
  * @ui5-restricted
242
238
  */
243
239
  @publicExtension()
@@ -252,9 +248,9 @@ class InternalRouting extends ControllerExtension {
252
248
  /**
253
249
  * Navigates forwards to a context.
254
250
  *
255
- * @param {sap.ui.model.odata.v4.Context} oContext Context to be navigated to
256
- * @param {object} mParameters Optional navigation parameters
257
- * @returns {Promise} Promise resolved when the navigation has been triggered
251
+ * @param oContext Context to be navigated to
252
+ * @param mParameters Optional navigation parameters
253
+ * @returns Promise resolved when the navigation has been triggered
258
254
  * @ui5-restricted
259
255
  */
260
256
  @publicExtension()
@@ -299,8 +295,8 @@ class InternalRouting extends ControllerExtension {
299
295
  /**
300
296
  * Checks if one of the current views on the screen is bound to a given context.
301
297
  *
302
- * @param {sap.ui.model.odata.v4.Context} oContext
303
- * @returns {boolean}
298
+ * @param oContext
299
+ * @returns `true` if the state is impacted by the context
304
300
  * @ui5-restricted
305
301
  */
306
302
  @publicExtension()
@@ -317,7 +313,7 @@ class InternalRouting extends ControllerExtension {
317
313
  * Called when a route is matched.
318
314
  * Builds the binding context from the navigation parameters, and bind the page accordingly.
319
315
  *
320
- * @param {object} oEvent
316
+ * @param oEvent
321
317
  * @ui5-restricted
322
318
  */
323
319
  _onRouteMatched(oEvent: Event) {
@@ -347,14 +343,14 @@ class InternalRouting extends ControllerExtension {
347
343
 
348
344
  for (const sKey in mArguments) {
349
345
  const sValue = mArguments[sKey];
350
- if (sValue === "..." && sTarget.indexOf("{" + sKey + "}") >= 0) {
346
+ if (sValue === "..." && sTarget.indexOf(`{${sKey}}`) >= 0) {
351
347
  bDeferred = true;
352
348
  // Sometimes in preferredMode = create, the edit button is shown in background when the
353
349
  // action parameter dialog shows up, setting bTargetEditable passes editable as true
354
350
  // to onBeforeBinding in _bindTargetPage function
355
351
  oNavigationParameters.bTargetEditable = true;
356
352
  }
357
- sTarget = sTarget.replace("{" + sKey + "}", sValue);
353
+ sTarget = sTarget.replace(`{${sKey}}`, sValue);
358
354
  }
359
355
  if (mArguments["?query"] && mArguments["?query"].hasOwnProperty("i-action")) {
360
356
  oNavigationParameters.bActionCreate = true;
@@ -362,7 +358,7 @@ class InternalRouting extends ControllerExtension {
362
358
 
363
359
  // the binding target is always absolute
364
360
  if (sTarget && sTarget[0] !== "/") {
365
- sTarget = "/" + sTarget;
361
+ sTarget = `/${sTarget}`;
366
362
  }
367
363
 
368
364
  this.onRouteMatched();
@@ -385,9 +381,9 @@ class InternalRouting extends ControllerExtension {
385
381
  /**
386
382
  * Deferred binding (during object creation).
387
383
  *
388
- * @param {string} sTargetPath The path to the deffered context
389
- * @param {object} oNavigationParameters Navigation parameters
390
- * @returns {Promise}
384
+ * @param sTargetPath The path to the deffered context
385
+ * @param oNavigationParameters Navigation parameters
386
+ * @returns A Promise
391
387
  * @ui5-restricted
392
388
  */
393
389
  _bindDeferred(sTargetPath: string, oNavigationParameters: any) {
@@ -423,10 +419,10 @@ class InternalRouting extends ControllerExtension {
423
419
  /**
424
420
  * Sets the binding context of the page from a path.
425
421
  *
426
- * @param {string} sTargetPath The path to the context
427
- * @param {sap.ui.model.odata.v4.ODataModel} oModel The OData model
428
- * @param {object} oNavigationParameters Navigation parameters
429
- * @returns {Promise}
422
+ * @param sTargetPath The path to the context
423
+ * @param oModel The OData model
424
+ * @param oNavigationParameters Navigation parameters
425
+ * @returns A Promise resolved once the binding has been set on the page
430
426
  * @ui5-restricted
431
427
  */
432
428
  _bindPage(sTargetPath: string, oModel: any, oNavigationParameters: object) {
@@ -452,10 +448,10 @@ class InternalRouting extends ControllerExtension {
452
448
  /**
453
449
  * Creates the filter to retrieve a context corresponding to a semantic path.
454
450
  *
455
- * @param {string} sSemanticPath The semantic path
456
- * @param {Array} aSemanticKeys The semantic keys for the path
457
- * @param {object} oMetaModel The instance of the meta model
458
- * @returns {sap.ui.model.Filter} The filter
451
+ * @param sSemanticPath The semantic path
452
+ * @param aSemanticKeys The semantic keys for the path
453
+ * @param oMetaModel The instance of the meta model
454
+ * @returns The filter
459
455
  * @ui5-restricted
460
456
  */
461
457
  _createFilterFromSemanticPath(sSemanticPath: string, aSemanticKeys: any[], oMetaModel: object) {
@@ -529,17 +525,16 @@ class InternalRouting extends ControllerExtension {
529
525
  });
530
526
  aFilters.push(oDraftFilter);
531
527
 
532
- const oCombinedFilter = new Filter(aFilters, true);
533
- return oCombinedFilter;
528
+ return new Filter(aFilters, true);
534
529
  }
535
530
 
536
531
  /**
537
532
  * Converts a path with semantic keys to a path with technical keys.
538
533
  *
539
- * @param {string} sSemanticPath The path with semantic keys
540
- * @param {sap.ui.model.odata.v4.ODataModel} oModel The model for the path
541
- * @param {Array} aSemanticKeys The semantic keys for the path
542
- * @returns {Promise} A Promise containing the path with technical keys if sSemanticPath could be interpreted as a semantic path, null otherwise
534
+ * @param sSemanticPath The path with semantic keys
535
+ * @param oModel The model for the path
536
+ * @param aSemanticKeys The semantic keys for the path
537
+ * @returns A Promise containing the path with technical keys if sSemanticPath could be interpreted as a semantic path, null otherwise
543
538
  * @ui5-restricted
544
539
  */
545
540
  _getTechnicalPathFromSemanticPath(sSemanticPath: string, oModel: any, aSemanticKeys: any[]) {
@@ -560,7 +555,7 @@ class InternalRouting extends ControllerExtension {
560
555
 
561
556
  // Load the corresponding object
562
557
  if (!sEntitySetPath?.startsWith("/")) {
563
- sEntitySetPath = "/" + sEntitySetPath;
558
+ sEntitySetPath = `/${sEntitySetPath}`;
564
559
  }
565
560
  const oListBinding = oModel.bindList(sEntitySetPath, undefined, undefined, oFilter, {
566
561
  "$$groupId": "$auto.Heroes"
@@ -579,9 +574,9 @@ class InternalRouting extends ControllerExtension {
579
574
  /**
580
575
  * Checks if a path is eligible for semantic bookmarking.
581
576
  *
582
- * @param {string} sPath The path to test
583
- * @param {sap.ui.model.odata.v4.ODataMetaModel} oMetaModel The associated metadata model
584
- * @returns {boolean} `true` if the path is eligible
577
+ * @param sPath The path to test
578
+ * @param oMetaModel The associated metadata model
579
+ * @returns `true` if the path is eligible
585
580
  * @ui5-restricted
586
581
  */
587
582
  _checkPathForSemanticBookmarking(sPath: string, oMetaModel: any) {
@@ -591,19 +586,19 @@ class InternalRouting extends ControllerExtension {
591
586
  return false;
592
587
  }
593
588
  // Get the entitySet name
594
- const sEntitySetPath = "/" + aMatches[1];
589
+ const sEntitySetPath = `/${aMatches[1]}`;
595
590
  // Check the entity set supports draft (otherwise we don't support semantic bookmarking)
596
- const oDraftRoot = oMetaModel.getObject(sEntitySetPath + "@com.sap.vocabularies.Common.v1.DraftRoot");
597
- const oDraftNode = oMetaModel.getObject(sEntitySetPath + "@com.sap.vocabularies.Common.v1.DraftNode");
591
+ const oDraftRoot = oMetaModel.getObject(`${sEntitySetPath}@com.sap.vocabularies.Common.v1.DraftRoot`);
592
+ const oDraftNode = oMetaModel.getObject(`${sEntitySetPath}@com.sap.vocabularies.Common.v1.DraftNode`);
598
593
  return oDraftRoot || oDraftNode ? true : false;
599
594
  }
600
595
 
601
596
  /**
602
597
  * Builds a path with semantic keys from a path with technical keys.
603
598
  *
604
- * @param {string} sPathToResolve The path to be transformed
599
+ * @param sPathToResolve The path to be transformed
605
600
  * @param oModel The OData model
606
- * @returns {Promise} String promise for the new path. If sPathToResolved couldn't be interpreted as a semantic path, it is returned as is.
601
+ * @returns String promise for the new path. If sPathToResolved couldn't be interpreted as a semantic path, it is returned as is.
607
602
  * @ui5-restricted
608
603
  */
609
604
  _resolveSemanticPath(sPathToResolve: string, oModel: any): Promise<string> {
@@ -648,9 +643,9 @@ class InternalRouting extends ControllerExtension {
648
643
  /**
649
644
  * Sets the binding context of the page from a path.
650
645
  *
651
- * @param {string} sTargetPath The path to build the context. Needs to contain technical keys only.
652
- * @param {sap.ui.model.odata.v4.ODataModel} oModel The OData model
653
- * @param {object} oNavigationParameters Navigation parameters
646
+ * @param sTargetPath The path to build the context. Needs to contain technical keys only.
647
+ * @param oModel The OData model
648
+ * @param oNavigationParameters Navigation parameters
654
649
  * @ui5-restricted
655
650
  */
656
651
  _bindPageToPath(sTargetPath: string, oModel: any, oNavigationParameters: any) {
@@ -680,9 +675,9 @@ class InternalRouting extends ControllerExtension {
680
675
  /**
681
676
  * Binds the page to a context.
682
677
  *
683
- * @param {sap.ui.model.odata.v4.Context} oContext Context to be bound
684
- * @param {sap.ui.model.odata.v4.ODataModel} oModel The OData model
685
- * @param {object} oNavigationParameters Navigation parameters
678
+ * @param oContext Context to be bound
679
+ * @param oModel The OData model
680
+ * @param oNavigationParameters Navigation parameters
686
681
  * @ui5-restricted
687
682
  */
688
683
  _bindPageToContext(oContext: any, oModel: any, oNavigationParameters: any) {
@@ -701,12 +696,16 @@ class InternalRouting extends ControllerExtension {
701
696
  // if the parentBinding is not a listBinding or the transient one from the create, we create a new context
702
697
  oContext = this._createContext(oContext.getPath(), oModel);
703
698
  }
704
- oContext.setKeepAlive(true, () => {
705
- // it is possible that the context is no longer kept alive
706
- if (oContext.isKeepAlive() && oRootViewController.isContextUsedInPages(oContext)) {
707
- this.navigateBackFromContext(oContext);
708
- }
709
- });
699
+ oContext.setKeepAlive(
700
+ true,
701
+ () => {
702
+ // it is possible that the context is no longer kept alive
703
+ if (oContext.isKeepAlive() && oRootViewController.isContextUsedInPages(oContext)) {
704
+ this.navigateBackFromContext(oContext);
705
+ }
706
+ },
707
+ true
708
+ );
710
709
  } else if (!oParentListBinding || oParentListBinding.isA("sap.ui.model.odata.v4.ODataListBinding")) {
711
710
  // We need to recreate the context otherwise we get errors
712
711
  oContext = this._createContext(oContext.getPath(), oModel, oNavigationParameters.bNavigateToSiblingEntity);
@@ -729,10 +728,10 @@ class InternalRouting extends ControllerExtension {
729
728
  /**
730
729
  * Creates a context from a path.
731
730
  *
732
- * @param {string} sPath The path
733
- * @param {sap.ui.model.odata.v4.ODataModel} oModel The OData model
734
- * @param {boolean} navigateToSiblingEntity A parameter that tells whether to navigate to the context on data received
735
- * @returns {sap.ui.model.odata.v4.Context} The created context
731
+ * @param sPath The path
732
+ * @param oModel The OData model
733
+ * @param navigateToSiblingEntity A parameter that determines whether to navigate to the context on data received
734
+ * @returns The created context
736
735
  * @ui5-restricted
737
736
  */
738
737
  @publicExtension()
@@ -740,7 +739,7 @@ class InternalRouting extends ControllerExtension {
740
739
  const oPageComponent = this._oPageComponent,
741
740
  sEntitySet = oPageComponent && oPageComponent.getEntitySet && oPageComponent.getEntitySet(),
742
741
  sContextPath =
743
- (oPageComponent && oPageComponent.getContextPath && oPageComponent.getContextPath()) || (sEntitySet && "/" + sEntitySet),
742
+ (oPageComponent && oPageComponent.getContextPath && oPageComponent.getContextPath()) || (sEntitySet && `/${sEntitySet}`),
744
743
  oMetaModel = oModel.getMetaModel(),
745
744
  mParameters: any = {
746
745
  $$groupId: "$auto.Heroes",
@@ -748,21 +747,26 @@ class InternalRouting extends ControllerExtension {
748
747
  $$patchWithoutSideEffects: true
749
748
  };
750
749
  // In case of draft: $select the state flags (HasActiveEntity, HasDraftEntity, and IsActiveEntity)
751
- const oDraftRoot = oMetaModel.getObject(sContextPath + "@com.sap.vocabularies.Common.v1.DraftRoot");
752
- const oDraftNode = oMetaModel.getObject(sContextPath + "@com.sap.vocabularies.Common.v1.DraftNode");
750
+ const oDraftRoot = oMetaModel.getObject(`${sContextPath}@com.sap.vocabularies.Common.v1.DraftRoot`);
751
+ const oDraftNode = oMetaModel.getObject(`${sContextPath}@com.sap.vocabularies.Common.v1.DraftNode`);
753
752
  const oRootViewController = (this._oAppComponent as any).getRootViewController();
754
753
  if (oRootViewController.isFclEnabled()) {
755
754
  const oContext = oModel.getKeepAliveContext(sPath, false, mParameters);
756
755
  if (oDraftRoot || oDraftNode) {
757
- // when switching between draft and edit we need to ensure those properties are requested again even if they are in the binding's cache
758
- // otherwise when you edit and go to the saved version you have no way of switching back to the edit version
759
- oContext.requestSideEffects(["HasActiveEntity", "HasDraftEntity", "IsActiveEntity", "DraftAdministrativeData"]);
756
+ if (!oContext.getBinding().oCache) {
757
+ oContext.requestProperty(["HasActiveEntity", "HasDraftEntity", "IsActiveEntity"]);
758
+ oContext.requestObject("DraftAdministrativeData");
759
+ } else {
760
+ // when switching between draft and edit we need to ensure those properties are requested again even if they are in the binding's cache
761
+ // otherwise when you edit and go to the saved version you have no way of switching back to the edit version
762
+ oContext.requestSideEffects(["HasActiveEntity", "HasDraftEntity", "IsActiveEntity", "DraftAdministrativeData"]);
763
+ }
760
764
  }
761
765
 
762
766
  return oContext;
763
767
  } else {
764
768
  if (sEntitySet) {
765
- const sMessagesPath = oMetaModel.getObject(sContextPath + "/@com.sap.vocabularies.Common.v1.Messages/$Path");
769
+ const sMessagesPath = oMetaModel.getObject(`${sContextPath}/@com.sap.vocabularies.Common.v1.Messages/$Path`);
766
770
  if (sMessagesPath) {
767
771
  mParameters.$select = sMessagesPath;
768
772
  }
@@ -820,7 +824,7 @@ class InternalRouting extends ControllerExtension {
820
824
  };
821
825
  } else {
822
826
  mParams = {
823
- title: oResourceBundle.getText("SAPFE_ERROR"),
827
+ title: oResourceBundle.getText("C_COMMON_SAPFE_ERROR"),
824
828
  description: sErrorDescription,
825
829
  isDataReceivedError: true,
826
830
  shellBack: true
@@ -841,7 +845,7 @@ class InternalRouting extends ControllerExtension {
841
845
  * therefore we get all dependent bindings (via private model method) to determine all paths and then
842
846
  * request them.
843
847
  *
844
- * @param {sap.ui.model.odata.v4.Context} oBindingContext Context to be refreshed
848
+ * @param oBindingContext Context to be refreshed
845
849
  * @ui5-restricted
846
850
  */
847
851
  _refreshBindingContext(oBindingContext: any) {
@@ -850,7 +854,7 @@ class InternalRouting extends ControllerExtension {
850
854
  const sRootContextPath = oBindingContext.getPath();
851
855
  const sEntitySet = oPageComponent && oPageComponent.getEntitySet && oPageComponent.getEntitySet();
852
856
  const sContextPath =
853
- (oPageComponent && oPageComponent.getContextPath && oPageComponent.getContextPath()) || (sEntitySet && "/" + sEntitySet);
857
+ (oPageComponent && oPageComponent.getContextPath && oPageComponent.getContextPath()) || (sEntitySet && `/${sEntitySet}`);
854
858
  const oMetaModel = this._oView.getModel().getMetaModel();
855
859
  let sMessagesPath;
856
860
  const aNavigationPropertyPaths: any[] = [];
@@ -863,7 +867,7 @@ class InternalRouting extends ControllerExtension {
863
867
  function getBindingPaths(oBinding: any) {
864
868
  let aDependentBindings;
865
869
  const sRelativePath = ((oBinding.getContext() && oBinding.getContext().getPath()) || "").replace(sRootContextPath, ""); // If no context, this is an absolute binding so no relative path
866
- const sPath = (sRelativePath ? sRelativePath.slice(1) + "/" : sRelativePath) + oBinding.getPath();
870
+ const sPath = (sRelativePath ? `${sRelativePath.slice(1)}/` : sRelativePath) + oBinding.getPath();
867
871
 
868
872
  if (oBinding.isA("sap.ui.model.odata.v4.ODataContextBinding")) {
869
873
  // if (sPath === "") {
@@ -890,7 +894,7 @@ class InternalRouting extends ControllerExtension {
890
894
  }
891
895
 
892
896
  if (sContextPath) {
893
- sMessagesPath = oMetaModel.getObject(sContextPath + "/@com.sap.vocabularies.Common.v1.Messages/$Path");
897
+ sMessagesPath = oMetaModel.getObject(`${sContextPath}/@com.sap.vocabularies.Common.v1.Messages/$Path`);
894
898
  }
895
899
 
896
900
  // binding of the context must have $$PatchWithoutSideEffects true, this bound context may be needed to be fetched from the dependent binding
@@ -914,7 +918,7 @@ class InternalRouting extends ControllerExtension {
914
918
  /**
915
919
  * Gets the binding context of the page or the component.
916
920
  *
917
- * @returns {sap.ui.model.odata.v4.Context} The binding context
921
+ * @returns The binding context
918
922
  * @ui5-restricted
919
923
  */
920
924
  _getBindingContext(): Context {
@@ -928,7 +932,7 @@ class InternalRouting extends ControllerExtension {
928
932
  /**
929
933
  * Sets the binding context of the page or the component.
930
934
  *
931
- * @param {sap.ui.model.odata.v4.Context} oContext The binding context
935
+ * @param oContext The binding context
932
936
  * @ui5-restricted
933
937
  */
934
938
  _setBindingContext(oContext: any) {
@@ -951,7 +955,7 @@ class InternalRouting extends ControllerExtension {
951
955
  /**
952
956
  * Gets the flexible column layout (FCL) level corresponding to the view (-1 if the app is not FCL).
953
957
  *
954
- * @returns {number} The level
958
+ * @returns The level
955
959
  * @ui5-restricted
956
960
  */
957
961
  _getFCLLevel() {