@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,8 +1,8 @@
1
1
  import { NavigationHandler } from "sap/fe/navigation";
2
- import SelectionVariant from "sap/fe/navigation/SelectionVariant";
2
+ import type SelectionVariant from "sap/fe/navigation/SelectionVariant";
3
3
  import Service from "sap/ui/core/service/Service";
4
4
  import ServiceFactory from "sap/ui/core/service/ServiceFactory";
5
- import { ServiceContext } from "types/extension_types";
5
+ import type { ServiceContext } from "types/extension_types";
6
6
 
7
7
  type NavigationServiceSettings = {};
8
8
  export class NavigationService extends Service<NavigationServiceSettings> {
@@ -22,20 +22,21 @@ export class NavigationService extends Service<NavigationServiceSettings> {
22
22
 
23
23
  /**
24
24
  * Triggers a cross-app navigation after saving the inner and the cross-app states.
25
+ *
25
26
  * @private
26
27
  * @ui5-restricted
27
- * @param {string} sSemanticObject Semantic object of the target app
28
- * @param {string} sActionName Action of the target app
29
- * @param {object | string } [vNavigationParameters] Navigation parameters as an object with key/value pairs or as a string representation of
28
+ * @param sSemanticObject Semantic object of the target app
29
+ * @param sActionName Action of the target app
30
+ * @param [vNavigationParameters] Navigation parameters as an object with key/value pairs or as a string representation of
30
31
  * such an object. If passed as an object, the properties are not checked against the <code>IsPotentialSensitive</code> or
31
32
  * <code>Measure</code> type.
32
- * @param {object} [oInnerAppData] Object for storing current state of the app
33
- * @param {Function} [fnOnError] Callback that is called if an error occurs during navigation <br>
34
- * @param {object} [oExternalAppData] Object for storing the state which will be forwarded to the target component.
35
- * @param {string} [sNavMode] Argument is used to overwrite the FLP-configured target for opening a URL. If used, only the
33
+ * @param [oInnerAppData] Object for storing current state of the app
34
+ * @param [fnOnError] Callback that is called if an error occurs during navigation <br>
35
+ * @param [oExternalAppData] Object for storing the state which will be forwarded to the target component.
36
+ * @param [sNavMode] Argument is used to overwrite the FLP-configured target for opening a URL. If used, only the
36
37
  * <code>explace</code> or <code>inplace</code> values are allowed. Any other value will lead to an exception
37
38
  * <code>NavigationHandler.INVALID_NAV_MODE</code>.
38
- **/
39
+ */
39
40
  navigate(
40
41
  sSemanticObject: string,
41
42
  sActionName: string,
@@ -60,23 +61,24 @@ export class NavigationService extends Service<NavigationServiceSettings> {
60
61
  }
61
62
  /**
62
63
  * Parses the incoming URL and returns a Promise.
63
- * @returns {object} A Promise object which returns the
64
+ *
65
+ * @returns A Promise object which returns the
64
66
  * extracted app state, the startup parameters, and the type of navigation when execution is successful,
65
67
  * @private
66
68
  * @ui5-restricted
67
- **/
69
+ */
68
70
  parseNavigation() {
69
71
  return this.oNavHandler.parseNavigation();
70
72
  }
71
73
  /**
72
74
  * Processes navigation-related tasks related to beforePopoverOpens event handling for the SmartLink control and returns a Promise object.
73
75
  *
74
- * @param {object} oTableEventParameters The parameters made available by the SmartTable control when the SmartLink control has been clicked,
76
+ * @param oTableEventParameters The parameters made available by the SmartTable control when the SmartLink control has been clicked,
75
77
  * an instance of a PopOver object
76
- * @param {string} sSelectionVariant Stringified JSON object as returned, for example, from getDataSuiteFormat() of the SmartFilterBar control
77
- * @param {object} [mInnerAppData] Object containing the current state of the app. If provided, opening the Popover is deferred until the
78
+ * @param sSelectionVariant Stringified JSON object as returned, for example, from getDataSuiteFormat() of the SmartFilterBar control
79
+ * @param [mInnerAppData] Object containing the current state of the app. If provided, opening the Popover is deferred until the
78
80
  * inner app data is saved in a consistent way.
79
- * @returns {Promise} A Promise object to monitor when all actions of the function have been executed; if the execution is successful, the
81
+ * @returns A Promise object to monitor when all actions of the function have been executed; if the execution is successful, the
80
82
  * modified oTableEventParameters is returned; if an error occurs, an error object of type
81
83
  * {@link sap.fe.navigation.NavError} is returned
82
84
  * @private
@@ -87,8 +89,9 @@ export class NavigationService extends Service<NavigationServiceSettings> {
87
89
 
88
90
  /**
89
91
  * Processes selectionVariant string and returns a Promise object (semanticAttributes and AppStateKey).
90
- * @param {string} sSelectionVariant Stringified JSON object
91
- * @returns {object} A Promise object to monitor when all actions of the function have been executed; if the execution is successful, the
92
+ *
93
+ * @param sSelectionVariant Stringified JSON object
94
+ * @returns A Promise object to monitor when all actions of the function have been executed; if the execution is successful, the
92
95
  * semanticAttributes as well as the appStateKey are returned; if an error occurs, an error object of type
93
96
  * {@link sap.fe.navigation.NavError} is returned
94
97
  * <br>
@@ -120,7 +123,8 @@ export class NavigationService extends Service<NavigationServiceSettings> {
120
123
 
121
124
  /**
122
125
  * Gets the application specific technical parameters.
123
- * @returns {Array} Containing the technical parameters.
126
+ *
127
+ * @returns Containing the technical parameters.
124
128
  * @private
125
129
  * @ui5-restricted
126
130
  */
@@ -131,7 +135,8 @@ export class NavigationService extends Service<NavigationServiceSettings> {
131
135
  * Sets the application specific technical parameters. Technical parameters will not be added to the selection variant passed to the
132
136
  * application.
133
137
  * As a default sap-system, sap-ushell-defaultedParameterNames and hcpApplicationId are considered as technical parameters.
134
- * @param {Array} aTechnicalParameters List of parameter names to be considered as technical parameters. <code>null</code> or
138
+ *
139
+ * @param aTechnicalParameters List of parameter names to be considered as technical parameters. <code>null</code> or
135
140
  * <code>undefined</code> may be used to reset the complete list.
136
141
  * @private
137
142
  * @ui5-restricted
@@ -142,44 +147,47 @@ export class NavigationService extends Service<NavigationServiceSettings> {
142
147
  /**
143
148
  * Sets the model that is used for verification of sensitive information. If the model is not set, the unnamed component model is used for the
144
149
  * verification of sensitive information.
150
+ *
145
151
  * @private
146
152
  * @ui5-restricted
147
- * @param {sap.ui.model.odata.v2.ODataModel} oModel Model For checking sensitive information
153
+ * @param oModel Model For checking sensitive information
148
154
  */
149
155
  setModel(oModel: any) {
150
156
  this.oNavHandler.setModel(oModel);
151
157
  }
152
158
  /**
153
159
  * Changes the URL according to the current app state and stores the app state for later retrieval.
160
+ *
154
161
  * @private
155
162
  * @ui5-restricted
156
- * @param {object} mInnerAppData Object containing the current state of the app
157
- * @returns {object} A Promise object to monitor when all the actions of the function have been executed; if the execution is successful, the
163
+ * @param mInnerAppData Object containing the current state of the app
164
+ * @returns A Promise object to monitor when all the actions of the function have been executed; if the execution is successful, the
158
165
  * app state key is returned; if an error occurs, an object of type {@link sap.fe.navigation.NavError} is
159
166
  * returned
160
- **/
167
+ */
161
168
  storeInnerAppState(mInnerAppData: object) {
162
169
  return this.oNavHandler.storeInnerAppState(mInnerAppData);
163
170
  }
164
171
  /**
165
- * Changes the URL according to the current app state and stores the app state for later retrieval.
166
- * @private
167
- * @ui5-restricted
168
- * @param {object} mInnerAppData Object containing the current state of the app
169
- * @param {boolean} [bImmediateHashReplace=false] If set to false, the inner app hash will not be replaced until storing is successful; do not
170
- * @param bNotLegacy
171
-
172
- * @returns {object} An object containing the appStateId and a promise object to monitor when all the actions of the function have been
173
- * executed; Please note that the appStateKey may be undefined or empty.
174
- */
172
+ * Changes the URL according to the current app state and stores the app state for later retrieval.
173
+ *
174
+ * @private
175
+ * @ui5-restricted
176
+ * @param mInnerAppData Object containing the current state of the app
177
+ * @param [bImmediateHashReplace=false] If set to false, the inner app hash will not be replaced until storing is successful; do not
178
+ * @param bNotLegacy
179
+ * @returns An object containing the appStateId and a promise object to monitor when all the actions of the function have been
180
+ * executed; Please note that the appStateKey may be undefined or empty.
181
+ */
175
182
  storeInnerAppStateWithImmediateReturn(mInnerAppData: object, bImmediateHashReplace: boolean | undefined, bNotLegacy: any) {
176
183
  return this.oNavHandler.storeInnerAppStateWithImmediateReturn(mInnerAppData, bImmediateHashReplace, bNotLegacy);
177
184
  }
178
185
  /**
179
186
  * Changes the URL according to the current sAppStateKey. As an reaction route change event will be triggered.
187
+ *
180
188
  * @private
181
189
  * @ui5-restricted
182
- * @param {string} sAppStateKey The new app state key.
190
+ * @param sAppStateKey The new app state key.
183
191
  */
184
192
  replaceHash(sAppStateKey: string) {
185
193
  this.oNavHandler.replaceHash(sAppStateKey);
@@ -192,9 +200,9 @@ export class NavigationService extends Service<NavigationServiceSettings> {
192
200
  *
193
201
  * @private
194
202
  * @ui5-restricted
195
- * @param {object | string } [vSelectionVariant]
196
- * @param {object} [vSelectionVariant.oUrlParamaters]
197
- * @returns {pbject}
203
+ * @param [vSelectionVariant]
204
+ * @param [vSelectionVariant.oUrlParamaters]
205
+ * @returns The url parameters
198
206
  */
199
207
  getUrlParametersFromSelectionVariant(vSelectionVariant: string | object | undefined) {
200
208
  return this.oNavHandler._getURLParametersFromSelectionVariant(vSelectionVariant);
@@ -205,8 +213,8 @@ export class NavigationService extends Service<NavigationServiceSettings> {
205
213
  *
206
214
  * @private
207
215
  * @ui5-restricted
208
- * @param {object} oInSelectionVariant Instance of sap.fe.navigation.SelectionVariant
209
- * @returns {string} AppState key
216
+ * @param oInSelectionVariant Instance of sap.fe.navigation.SelectionVariant
217
+ * @returns AppState key
210
218
  */
211
219
  saveAppStateWithImmediateReturn(oInSelectionVariant: SelectionVariant) {
212
220
  if (oInSelectionVariant) {
@@ -223,14 +231,14 @@ export class NavigationService extends Service<NavigationServiceSettings> {
223
231
  /**
224
232
  * Mix Attributes and selectionVariant.
225
233
  *
226
- * @param {object|Array} vSemanticAttributes Object/(Array of Objects) containing key/value pairs
227
- * @param {string} sSelectionVariant The selection variant in string format as provided by the SmartFilterBar control
228
- * @param {int} [iSuppressionBehavior=sap.fe.navigation.SuppressionBehavior.standard] Indicates whether semantic
234
+ * @param vSemanticAttributes Object/(Array of Objects) containing key/value pairs
235
+ * @param sSelectionVariant The selection variant in string format as provided by the SmartFilterBar control
236
+ * @param [iSuppressionBehavior=sap.fe.navigation.SuppressionBehavior.standard] Indicates whether semantic
229
237
  * attributes with special values (see {@link sap.fe.navigation.SuppressionBehavior suppression behavior}) must be
230
238
  * suppressed before they are combined with the selection variant; several
231
239
  * {@link sap.fe.navigation.SuppressionBehavior suppression behaviors} can be combined with the bitwise OR operator
232
240
  * (|)
233
- * @returns {object} Instance of {@link sap.fe.navigation.SelectionVariant}
241
+ * @returns Instance of {@link sap.fe.navigation.SelectionVariant}
234
242
  */
235
243
  mixAttributesAndSelectionVariant(
236
244
  vSemanticAttributes: object | any[],
@@ -243,9 +251,9 @@ export class NavigationService extends Service<NavigationServiceSettings> {
243
251
  /**
244
252
  * The method creates a context url based on provided data. This context url can either be used as.
245
253
  *
246
- * @param {string} sEntitySetName Used for url determination
254
+ * @param sEntitySetName Used for url determination
247
255
  * @param [oModel] The ODataModel used for url determination. If omitted, the NavigationHandler model is used.
248
- * @returns {string} The context url for the given entities
256
+ * @returns The context url for the given entities
249
257
  */
250
258
  constructContextUrl(sEntitySetName: string, oModel: any) {
251
259
  return this.oNavHandler.constructContextUrl(sEntitySetName, oModel);
@@ -93,7 +93,7 @@ sap.ui.define(["sap/ui/core/service/Service", "sap/ui/core/service/ServiceFactor
93
93
  var _proto2 = ResourceModelServiceFactory.prototype;
94
94
 
95
95
  _proto2.createInstance = function createInstance(oServiceContext) {
96
- var sKey = oServiceContext.settings.bundles.join(",") + (oServiceContext.settings.enhanceI18n ? "," + oServiceContext.settings.enhanceI18n.join(",") : "");
96
+ var sKey = oServiceContext.settings.bundles.join(",") + (oServiceContext.settings.enhanceI18n ? ",".concat(oServiceContext.settings.enhanceI18n.join(",")) : "");
97
97
 
98
98
  if (!this._oInstances[sKey]) {
99
99
  this._oInstances[sKey] = new ResourceModelService(Object.assign({
@@ -113,4 +113,4 @@ sap.ui.define(["sap/ui/core/service/Service", "sap/ui/core/service/ServiceFactor
113
113
 
114
114
  return ResourceModelServiceFactory;
115
115
  }, false);
116
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeS50cyJdLCJuYW1lcyI6WyJSZXNvdXJjZU1vZGVsU2VydmljZSIsImluaXQiLCJvQ29udGV4dCIsImdldENvbnRleHQiLCJtU2V0dGluZ3MiLCJzZXR0aW5ncyIsIm9GYWN0b3J5IiwiZmFjdG9yeSIsImFCdW5kbGVzIiwiYnVuZGxlcyIsImNvbmNhdCIsImVuaGFuY2VJMThuIiwibWFwIiwidkkxOG4iLCJpc0EiLCJnZXRSZXNvdXJjZUJ1bmRsZSIsImJ1bmRsZU5hbWUiLCJyZXBsYWNlIiwib1Jlc291cmNlTW9kZWwiLCJSZXNvdXJjZU1vZGVsIiwiZW5oYW5jZVdpdGgiLCJzbGljZSIsImFzeW5jIiwic2NvcGVUeXBlIiwib0NvbXBvbmVudCIsInNjb3BlT2JqZWN0Iiwic2V0TW9kZWwiLCJtb2RlbE5hbWUiLCJpbml0UHJvbWlzZSIsIlByb21pc2UiLCJhbGwiLCJfcEVuaGFuY2VkIiwicmVzb2x2ZSIsInRoZW4iLCJvQnVuZGxlIiwiX19idW5kbGUiLCJnZXRSZXNvdXJjZU1vZGVsIiwiZ2V0SW50ZXJmYWNlIiwiZXhpdCIsInJlbW92ZUdsb2JhbEluc3RhbmNlIiwiU2VydmljZSIsIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeSIsIl9vSW5zdGFuY2VzIiwiY3JlYXRlSW5zdGFuY2UiLCJvU2VydmljZUNvbnRleHQiLCJzS2V5Iiwiam9pbiIsIk9iamVjdCIsImFzc2lnbiIsIlNlcnZpY2VGYWN0b3J5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7O01BT2FBLG9COzs7Ozs7Ozs7O1dBSVpDLEksR0FBQSxnQkFBTztBQUFBOztBQUNOLFVBQU1DLFFBQVEsR0FBRyxLQUFLQyxVQUFMLEVBQWpCO0FBQ0EsVUFBTUMsU0FBUyxHQUFHRixRQUFRLENBQUNHLFFBQTNCO0FBQ0EsV0FBS0MsUUFBTCxHQUFnQkosUUFBUSxDQUFDSyxPQUF6QixDQUhNLENBS047QUFDQTtBQUNBO0FB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Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU2VydmljZSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlXCI7XG5pbXBvcnQgU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBSZXNvdXJjZU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvcmVzb3VyY2UvUmVzb3VyY2VNb2RlbFwiO1xuaW1wb3J0IFJlc291cmNlQnVuZGxlIGZyb20gXCJzYXAvYmFzZS9pMThuL1Jlc291cmNlQnVuZGxlXCI7XG5pbXBvcnQgeyBTZXJ2aWNlQ29udGV4dCB9IGZyb20gXCJ0eXBlcy9leHRlbnNpb25fdHlwZXNcIjtcbnR5cGUgUmVzb3VyY2VNb2RlbFNlcnZpY2VTZXR0aW5ncyA9IHtcblx0YnVuZGxlczogUmVzb3VyY2VCdW5kbGVbXTtcblx0ZW5oYW5jZUkxOG46IHN0cmluZ1tdO1xufTtcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZU1vZGVsU2VydmljZSBleHRlbmRzIFNlcnZpY2U8UmVzb3VyY2VNb2RlbFNlcnZpY2VTZXR0aW5ncz4ge1xuXHRpbml0UHJvbWlzZSE6IFByb21pc2U8YW55Pjtcblx0b0ZhY3RvcnkhOiBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3Rvcnk7XG5cdG9SZXNvdXJjZU1vZGVsITogUmVzb3VyY2VNb2RlbDtcblx0aW5pdCgpIHtcblx0XHRjb25zdCBvQ29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpO1xuXHRcdGNvbnN0IG1TZXR0aW5ncyA9IG9Db250ZXh0LnNldHRpbmdzO1xuXHRcdHRoaXMub0ZhY3RvcnkgPSBvQ29udGV4dC5mYWN0b3J5O1xuXG5cdFx0Ly8gV2hlbiBlbmhhbmNpbmcgaTE4biBrZXlzIHRoZSB2YWx1ZSBpbiB0aGUgbGFzdCByZXNvdXJjZSBidW5kbGUgdGFrZXMgcHJlY2VkZW5jZVxuXHRcdC8vIGhlbmNlIGFycmFuZ2UgdmFyaW91cyByZXNvdXJjZSBidW5kbGVzIHNvIHRoYXQgZW5oYW5jZUkxOG4gcHJvdmlkZWQgYnkgdGhlIGFwcGxpY2F0aW9uIGlzIHRoZSBsYXN0LlxuXHRcdC8vIFRoZSBmb2xsb3dpbmcgb3JkZXIgaXMgdXNlZCA6XG5cdFx0Ly8gMS4gc2FwLmZlIGJ1bmRsZSAtIHNhcC5mZS5jb3JlLm1lc3NhZ2VidW5kbGUgKHBhc3NlZCB3aXRoIG1TZXR0aW5ncy5idW5kbGVzKVxuXHRcdC8vIDIuIHNhcC5mZSBidW5kbGUgLSBzYXAuZmUudGVtcGxhdGVzLm1lc3NhZ2VidW5kbGUgKHBhc3NlZCB3aXRoIG1TZXR0aW5ncy5idW5kbGVzKVxuXHRcdC8vIDMuIE11bHRpcGxlIGJ1bmRsZXMgcGFzc2VkIGJ5IHRoZSBhcHBsaWNhdGlvbiBhcyBwYXJ0IG9mIGVuaGFuY2VJMThuXG5cdFx0Y29uc3QgYUJ1bmRsZXMgPSBtU2V0dGluZ3MuYnVuZGxlcy5jb25jYXQobVNldHRpbmdzLmVuaGFuY2VJMThuIHx8IFtdKS5tYXAoZnVuY3Rpb24odkkxOG46IGFueSkge1xuXHRcdFx0Ly8gaWYgdmFsdWUgcGFzc2VkIGZvciBlbmhhbmNlSTE4biBpcyBhIFJlc291cmNlIE1vZGVsLCByZXR1cm4gdGhlIGFzc29jaWF0ZWQgYnVuZGxlXG5cdFx0XHQvLyBlbHNlIHRoZSB2YWx1ZSBpcyBhIGJ1bmRsZVVybCwgcmV0dXJuIFJlc291cmNlIEJ1bmRsZSBjb25maWd1cmF0aW9uIHNvIHRoYXQgYSBidW5kbGUgY2FuIGJlIGNyZWF0ZWRcblx0XHRcdHJldHVybiB0eXBlb2YgdkkxOG4uaXNBID09PSBcImZ1bmN0aW9uXCIgJiYgdkkxOG4uaXNBKFwic2FwLnVpLm1vZGVsLnJlc291cmNlLlJlc291cmNlTW9kZWxcIilcblx0XHRcdFx0PyB2STE4bi5nZXRSZXNvdXJjZUJ1bmRsZSgpXG5cdFx0XHRcdDogeyBidW5kbGVOYW1lOiB2STE4bi5yZXBsYWNlKC9cXC8vZywgXCIuXCIpIH07XG5cdFx0fSk7XG5cblx0XHR0aGlzLm9SZXNvdXJjZU1vZGVsID0gbmV3IFJlc291cmNlTW9kZWwoe1xuXHRcdFx0YnVuZGxlTmFtZTogYUJ1bmRsZXNbMF0uYnVuZGxlTmFtZSxcblx0XHRcdGVuaGFuY2VXaXRoOiBhQnVuZGxlcy5zbGljZSgxKSxcblx0XHRcdGFzeW5jOiB0cnVlXG5cdFx0fSk7XG5cblx0XHRpZiAob0NvbnRleHQuc2NvcGVUeXBlID09PSBcImNvbXBvbmVudFwiKSB7XG5cdFx0XHRjb25zdCBvQ29tcG9uZW50ID0gb0NvbnRleHQuc2NvcGVPYmplY3Q7XG5cdFx0XHRvQ29tcG9uZW50LnNldE1vZGVsKHRoaXMub1Jlc291cmNlTW9kZWwsIG1TZXR0aW5ncy5tb2RlbE5hbWUpO1xuXHRcdH1cblxuXHRcdHRoaXMuaW5pdFByb21pc2UgPSBQcm9taXNlLmFsbChbXG5cdFx0XHR0aGlzLm9SZXNvdXJjZU1vZGVsLmdldFJlc291cmNlQnVuZGxlKCkgYXMgUHJvbWlzZTxSZXNvdXJjZUJ1bmRsZT4sXG5cdFx0XHQodGhpcy5vUmVzb3VyY2VNb2RlbCBhcyBhbnkpLl9wRW5oYW5jZWQgfHwgUHJvbWlzZS5yZXNvbHZlKClcblx0XHRdKS50aGVuKChvQnVuZGxlOiBhbnlbXSkgPT4ge1xuXHRcdFx0KHRoaXMub1Jlc291cmNlTW9kZWwgYXMgYW55KS5fX2J1bmRsZSA9IG9CdW5kbGVbMF07XG5cdFx0XHRyZXR1cm4gdGhpcztcblx0XHR9KTtcblx0fVxuXG5cdGdldFJlc291cmNlTW9kZWwoKSB7XG5cdFx0cmV0dXJuIHRoaXMub1Jlc291cmNlTW9kZWw7XG5cdH1cblx0Z2V0SW50ZXJmYWNlKCk6IGFueSB7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblx0ZXhpdCgpIHtcblx0XHQvLyBEZXJlZ2lzdGVyIGdsb2JhbCBpbnN0YW5jZVxuXHRcdHRoaXMub0ZhY3RvcnkucmVtb3ZlR2xvYmFsSW5zdGFuY2UoKTtcblx0fVxufVxuXG5jbGFzcyBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkgZXh0ZW5kcyBTZXJ2aWNlRmFjdG9yeTxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPiB7XG5cdF9vSW5zdGFuY2VzOiBSZWNvcmQ8c3RyaW5nLCBSZXNvdXJjZU1vZGVsU2VydmljZT4gPSB7fTtcblx0Y3JlYXRlSW5zdGFuY2Uob1NlcnZpY2VDb250ZXh0OiBTZXJ2aWNlQ29udGV4dDxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPikge1xuXHRcdGNvbnN0IHNLZXkgPVxuXHRcdFx0b1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmJ1bmRsZXMuam9pbihcIixcIikgK1xuXHRcdFx0KG9TZXJ2aWNlQ29udGV4dC5zZXR0aW5ncy5lbmhhbmNlSTE4biA/IFwiLFwiICsgb1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmVuaGFuY2VJMThuLmpvaW4oXCIsXCIpIDogXCJcIik7XG5cblx0XHRpZiAoIXRoaXMuX29JbnN0YW5jZXNbc0tleV0pIHtcblx0XHRcdHRoaXMuX29JbnN0YW5jZXNbc0tleV0gPSBuZXcgUmVzb3VyY2VNb2RlbFNlcnZpY2UoT2JqZWN0LmFzc2lnbih7IGZhY3Rvcnk6IHRoaXMgfSwgb1NlcnZpY2VDb250ZXh0KSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMuX29JbnN0YW5jZXNbc0tleV0uaW5pdFByb21pc2U7XG5cdH1cblx0cmVtb3ZlR2xvYmFsSW5zdGFuY2UoKSB7XG5cdFx0dGhpcy5fb0luc3RhbmNlcyA9IHt9O1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeTtcbiJdfQ==
116
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeS50cyJdLCJuYW1lcyI6WyJSZXNvdXJjZU1vZGVsU2VydmljZSIsImluaXQiLCJvQ29udGV4dCIsImdldENvbnRleHQiLCJtU2V0dGluZ3MiLCJzZXR0aW5ncyIsIm9GYWN0b3J5IiwiZmFjdG9yeSIsImFCdW5kbGVzIiwiYnVuZGxlcyIsImNvbmNhdCIsImVuaGFuY2VJMThuIiwibWFwIiwidkkxOG4iLCJpc0EiLCJnZXRSZXNvdXJjZUJ1bmRsZSIsImJ1bmRsZU5hbWUiLCJyZXBsYWNlIiwib1Jlc291cmNlTW9kZWwiLCJSZXNvdXJjZU1vZGVsIiwiZW5oYW5jZVdpdGgiLCJzbGljZSIsImFzeW5jIiwic2NvcGVUeXBlIiwib0NvbXBvbmVudCIsInNjb3BlT2JqZWN0Iiwic2V0TW9kZWwiLCJtb2RlbE5hbWUiLCJpbml0UHJvbWlzZSIsIlByb21pc2UiLCJhbGwiLCJfcEVuaGFuY2VkIiwicmVzb2x2ZSIsInRoZW4iLCJvQnVuZGxlIiwiX19idW5kbGUiLCJnZXRSZXNvdXJjZU1vZGVsIiwiZ2V0SW50ZXJmYWNlIiwiZXhpdCIsInJlbW92ZUdsb2JhbEluc3RhbmNlIiwiU2VydmljZSIsIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeSIsIl9vSW5zdGFuY2VzIiwiY3JlYXRlSW5zdGFuY2UiLCJvU2VydmljZUNvbnRleHQiLCJzS2V5Iiwiam9pbiIsIk9iamVjdCIsImFzc2lnbiIsIlNlcnZpY2VGYWN0b3J5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7O01BT2FBLG9COzs7Ozs7Ozs7O1dBSVpDLEksR0FBQSxnQkFBTztBQUFBOztBQUNOLFVBQU1DLFFBQVEsR0FBRyxLQUFLQyxVQUFMLEVBQWpCO0FBQ0EsVUFBTUMsU0FBUyxHQUFHRixRQUFRLENBQUNHLFFBQTNCO0FBQ0EsV0FBS0MsUUFBTCxHQUFnQkosUUFBUSxDQUFDSyxPQUF6QixDQUhNLENBS047QUFDQTtBQUNBO0FB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c291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgUmVzb3VyY2VCdW5kbGUgZnJvbSBcInNhcC9iYXNlL2kxOG4vUmVzb3VyY2VCdW5kbGVcIjtcbmltcG9ydCBTZXJ2aWNlIGZyb20gXCJzYXAvdWkvY29yZS9zZXJ2aWNlL1NlcnZpY2VcIjtcbmltcG9ydCBTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFJlc291cmNlTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9yZXNvdXJjZS9SZXNvdXJjZU1vZGVsXCI7XG5pbXBvcnQgdHlwZSB7IFNlcnZpY2VDb250ZXh0IH0gZnJvbSBcInR5cGVzL2V4dGVuc2lvbl90eXBlc1wiO1xudHlwZSBSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzID0ge1xuXHRidW5kbGVzOiBSZXNvdXJjZUJ1bmRsZVtdO1xuXHRlbmhhbmNlSTE4bjogc3RyaW5nW107XG59O1xuZXhwb3J0IGNsYXNzIFJlc291cmNlTW9kZWxTZXJ2aWNlIGV4dGVuZHMgU2VydmljZTxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPiB7XG5cdGluaXRQcm9taXNlITogUHJvbWlzZTxhbnk+O1xuXHRvRmFjdG9yeSE6IFJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeTtcblx0b1Jlc291cmNlTW9kZWwhOiBSZXNvdXJjZU1vZGVsO1xuXHRpbml0KCkge1xuXHRcdGNvbnN0IG9Db250ZXh0ID0gdGhpcy5nZXRDb250ZXh0KCk7XG5cdFx0Y29uc3QgbVNldHRpbmdzID0gb0NvbnRleHQuc2V0dGluZ3M7XG5cdFx0dGhpcy5vRmFjdG9yeSA9IG9Db250ZXh0LmZhY3Rvcnk7XG5cblx0XHQvLyBXaGVuIGVuaGFuY2luZyBpMThuIGtleXMgdGhlIHZhbHVlIGluIHRoZSBsYXN0IHJlc291cmNlIGJ1bmRsZSB0YWtlcyBwcmVjZWRlbmNlXG5cdFx0Ly8gaGVuY2UgYXJyYW5nZSB2YXJpb3VzIHJlc291cmNlIGJ1bmRsZXMgc28gdGhhdCBlbmhhbmNlSTE4biBwcm92aWRlZCBieSB0aGUgYXBwbGljYXRpb24gaXMgdGhlIGxhc3QuXG5cdFx0Ly8gVGhlIGZvbGxvd2luZyBvcmRlciBpcyB1c2VkIDpcblx0XHQvLyAxLiBzYXAuZmUgYnVuZGxlIC0gc2FwLmZlLmNvcmUubWVzc2FnZWJ1bmRsZSAocGFzc2VkIHdpdGggbVNldHRpbmdzLmJ1bmRsZXMpXG5cdFx0Ly8gMi4gc2FwLmZlIGJ1bmRsZSAtIHNhcC5mZS50ZW1wbGF0ZXMubWVzc2FnZWJ1bmRsZSAocGFzc2VkIHdpdGggbVNldHRpbmdzLmJ1bmRsZXMpXG5cdFx0Ly8gMy4gTXVsdGlwbGUgYnVuZGxlcyBwYXNzZWQgYnkgdGhlIGFwcGxpY2F0aW9uIGFzIHBhcnQgb2YgZW5oYW5jZUkxOG5cblx0XHRjb25zdCBhQnVuZGxlcyA9IG1TZXR0aW5ncy5idW5kbGVzLmNvbmNhdChtU2V0dGluZ3MuZW5oYW5jZUkxOG4gfHwgW10pLm1hcChmdW5jdGlvbiAodkkxOG46IGFueSkge1xuXHRcdFx0Ly8gaWYgdmFsdWUgcGFzc2VkIGZvciBlbmhhbmNlSTE4biBpcyBhIFJlc291cmNlIE1vZGVsLCByZXR1cm4gdGhlIGFzc29jaWF0ZWQgYnVuZGxlXG5cdFx0XHQvLyBlbHNlIHRoZSB2YWx1ZSBpcyBhIGJ1bmRsZVVybCwgcmV0dXJuIFJlc291cmNlIEJ1bmRsZSBjb25maWd1cmF0aW9uIHNvIHRoYXQgYSBidW5kbGUgY2FuIGJlIGNyZWF0ZWRcblx0XHRcdHJldHVybiB0eXBlb2YgdkkxOG4uaXNBID09PSBcImZ1bmN0aW9uXCIgJiYgdkkxOG4uaXNBKFwic2FwLnVpLm1vZGVsLnJlc291cmNlLlJlc291cmNlTW9kZWxcIilcblx0XHRcdFx0PyB2STE4bi5nZXRSZXNvdXJjZUJ1bmRsZSgpXG5cdFx0XHRcdDogeyBidW5kbGVOYW1lOiB2STE4bi5yZXBsYWNlKC9cXC8vZywgXCIuXCIpIH07XG5cdFx0fSk7XG5cblx0XHR0aGlzLm9SZXNvdXJjZU1vZGVsID0gbmV3IFJlc291cmNlTW9kZWwoe1xuXHRcdFx0YnVuZGxlTmFtZTogYUJ1bmRsZXNbMF0uYnVuZGxlTmFtZSxcblx0XHRcdGVuaGFuY2VXaXRoOiBhQnVuZGxlcy5zbGljZSgxKSxcblx0XHRcdGFzeW5jOiB0cnVlXG5cdFx0fSk7XG5cblx0XHRpZiAob0NvbnRleHQuc2NvcGVUeXBlID09PSBcImNvbXBvbmVudFwiKSB7XG5cdFx0XHRjb25zdCBvQ29tcG9uZW50ID0gb0NvbnRleHQuc2NvcGVPYmplY3Q7XG5cdFx0XHRvQ29tcG9uZW50LnNldE1vZGVsKHRoaXMub1Jlc291cmNlTW9kZWwsIG1TZXR0aW5ncy5tb2RlbE5hbWUpO1xuXHRcdH1cblxuXHRcdHRoaXMuaW5pdFByb21pc2UgPSBQcm9taXNlLmFsbChbXG5cdFx0XHR0aGlzLm9SZXNvdXJjZU1vZGVsLmdldFJlc291cmNlQnVuZGxlKCkgYXMgUHJvbWlzZTxSZXNvdXJjZUJ1bmRsZT4sXG5cdFx0XHQodGhpcy5vUmVzb3VyY2VNb2RlbCBhcyBhbnkpLl9wRW5oYW5jZWQgfHwgUHJvbWlzZS5yZXNvbHZlKClcblx0XHRdKS50aGVuKChvQnVuZGxlOiBhbnlbXSkgPT4ge1xuXHRcdFx0KHRoaXMub1Jlc291cmNlTW9kZWwgYXMgYW55KS5fX2J1bmRsZSA9IG9CdW5kbGVbMF07XG5cdFx0XHRyZXR1cm4gdGhpcztcblx0XHR9KTtcblx0fVxuXG5cdGdldFJlc291cmNlTW9kZWwoKSB7XG5cdFx0cmV0dXJuIHRoaXMub1Jlc291cmNlTW9kZWw7XG5cdH1cblx0Z2V0SW50ZXJmYWNlKCk6IGFueSB7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblx0ZXhpdCgpIHtcblx0XHQvLyBEZXJlZ2lzdGVyIGdsb2JhbCBpbnN0YW5jZVxuXHRcdHRoaXMub0ZhY3RvcnkucmVtb3ZlR2xvYmFsSW5zdGFuY2UoKTtcblx0fVxufVxuXG5jbGFzcyBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkgZXh0ZW5kcyBTZXJ2aWNlRmFjdG9yeTxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPiB7XG5cdF9vSW5zdGFuY2VzOiBSZWNvcmQ8c3RyaW5nLCBSZXNvdXJjZU1vZGVsU2VydmljZT4gPSB7fTtcblx0Y3JlYXRlSW5zdGFuY2Uob1NlcnZpY2VDb250ZXh0OiBTZXJ2aWNlQ29udGV4dDxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPikge1xuXHRcdGNvbnN0IHNLZXkgPVxuXHRcdFx0b1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmJ1bmRsZXMuam9pbihcIixcIikgK1xuXHRcdFx0KG9TZXJ2aWNlQ29udGV4dC5zZXR0aW5ncy5lbmhhbmNlSTE4biA/IGAsJHtvU2VydmljZUNvbnRleHQuc2V0dGluZ3MuZW5oYW5jZUkxOG4uam9pbihcIixcIil9YCA6IFwiXCIpO1xuXG5cdFx0aWYgKCF0aGlzLl9vSW5zdGFuY2VzW3NLZXldKSB7XG5cdFx0XHR0aGlzLl9vSW5zdGFuY2VzW3NLZXldID0gbmV3IFJlc291cmNlTW9kZWxTZXJ2aWNlKE9iamVjdC5hc3NpZ24oeyBmYWN0b3J5OiB0aGlzIH0sIG9TZXJ2aWNlQ29udGV4dCkpO1xuXHRcdH1cblxuXHRcdHJldHVybiB0aGlzLl9vSW5zdGFuY2VzW3NLZXldLmluaXRQcm9taXNlO1xuXHR9XG5cdHJlbW92ZUdsb2JhbEluc3RhbmNlKCkge1xuXHRcdHRoaXMuX29JbnN0YW5jZXMgPSB7fTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3Rvcnk7XG4iXX0=
@@ -1,8 +1,8 @@
1
+ import type ResourceBundle from "sap/base/i18n/ResourceBundle";
1
2
  import Service from "sap/ui/core/service/Service";
2
3
  import ServiceFactory from "sap/ui/core/service/ServiceFactory";
3
4
  import ResourceModel from "sap/ui/model/resource/ResourceModel";
4
- import ResourceBundle from "sap/base/i18n/ResourceBundle";
5
- import { ServiceContext } from "types/extension_types";
5
+ import type { ServiceContext } from "types/extension_types";
6
6
  type ResourceModelServiceSettings = {
7
7
  bundles: ResourceBundle[];
8
8
  enhanceI18n: string[];
@@ -22,7 +22,7 @@ export class ResourceModelService extends Service<ResourceModelServiceSettings>
22
22
  // 1. sap.fe bundle - sap.fe.core.messagebundle (passed with mSettings.bundles)
23
23
  // 2. sap.fe bundle - sap.fe.templates.messagebundle (passed with mSettings.bundles)
24
24
  // 3. Multiple bundles passed by the application as part of enhanceI18n
25
- const aBundles = mSettings.bundles.concat(mSettings.enhanceI18n || []).map(function(vI18n: any) {
25
+ const aBundles = mSettings.bundles.concat(mSettings.enhanceI18n || []).map(function (vI18n: any) {
26
26
  // if value passed for enhanceI18n is a Resource Model, return the associated bundle
27
27
  // else the value is a bundleUrl, return Resource Bundle configuration so that a bundle can be created
28
28
  return typeof vI18n.isA === "function" && vI18n.isA("sap.ui.model.resource.ResourceModel")
@@ -67,7 +67,7 @@ class ResourceModelServiceFactory extends ServiceFactory<ResourceModelServiceSet
67
67
  createInstance(oServiceContext: ServiceContext<ResourceModelServiceSettings>) {
68
68
  const sKey =
69
69
  oServiceContext.settings.bundles.join(",") +
70
- (oServiceContext.settings.enhanceI18n ? "," + oServiceContext.settings.enhanceI18n.join(",") : "");
70
+ (oServiceContext.settings.enhanceI18n ? `,${oServiceContext.settings.enhanceI18n.join(",")}` : "");
71
71
 
72
72
  if (!this._oInstances[sKey]) {
73
73
  this._oInstances[sKey] = new ResourceModelService(Object.assign({ factory: this }, oServiceContext));