@sapui5/sap.fe.core 1.99.0 → 1.101.1

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 (289) hide show
  1. package/package.json +6 -4
  2. package/src/sap/fe/core/.library +2 -3
  3. package/src/sap/fe/core/AnnotationHelper.js +43 -92
  4. package/src/sap/fe/core/AnnotationHelper.ts +43 -107
  5. package/src/sap/fe/core/AppComponent.js +381 -399
  6. package/src/sap/fe/core/AppComponent.ts +397 -0
  7. package/src/sap/fe/core/AppStateHandler.js +131 -162
  8. package/src/sap/fe/core/AppStateHandler.ts +2 -2
  9. package/src/sap/fe/core/BaseController.js +82 -58
  10. package/src/sap/fe/core/BaseController.ts +67 -0
  11. package/src/sap/fe/core/CommonUtils.js +179 -31
  12. package/src/sap/fe/core/CommonUtils.ts +295 -125
  13. package/src/sap/fe/core/ExtensionAPI.js +279 -274
  14. package/src/sap/fe/core/ExtensionAPI.ts +242 -0
  15. package/src/sap/fe/core/PageController.js +158 -29
  16. package/src/sap/fe/core/PageController.ts +65 -37
  17. package/src/sap/fe/core/RouterProxy.js +700 -750
  18. package/src/sap/fe/core/RouterProxy.ts +47 -31
  19. package/src/sap/fe/core/Synchronization.js +21 -31
  20. package/src/sap/fe/core/TemplateComponent.js +193 -118
  21. package/src/sap/fe/core/TemplateComponent.ts +104 -109
  22. package/src/sap/fe/core/TemplateModel.js +24 -44
  23. package/src/sap/fe/core/TemplateModel.ts +3 -3
  24. package/src/sap/fe/core/TransactionHelper.js +1368 -1369
  25. package/src/sap/fe/core/TransactionHelper.ts +201 -171
  26. package/src/sap/fe/core/actions/collaboration/ActivitySync.js +406 -0
  27. package/src/sap/fe/core/actions/collaboration/ActivitySync.ts +362 -0
  28. package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +146 -0
  29. package/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +129 -0
  30. package/src/sap/fe/core/actions/collaboration/Manage.js +264 -0
  31. package/src/sap/fe/core/actions/collaboration/Manage.ts +246 -0
  32. package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +100 -0
  33. package/src/sap/fe/core/actions/collaboration/UserDetails.fragment.xml +13 -0
  34. package/src/sap/fe/core/actions/draft.js +324 -220
  35. package/src/sap/fe/core/actions/draft.ts +209 -133
  36. package/src/sap/fe/core/actions/messageHandling.js +79 -48
  37. package/src/sap/fe/core/actions/messageHandling.ts +113 -83
  38. package/src/sap/fe/core/actions/operations.js +37 -18
  39. package/src/sap/fe/core/actions/operations.ts +51 -20
  40. package/src/sap/fe/core/actions/sticky.js +17 -4
  41. package/src/sap/fe/core/actions/sticky.ts +21 -4
  42. package/src/sap/fe/core/buildingBlocks/AttributeModel.js +60 -0
  43. package/src/sap/fe/core/buildingBlocks/AttributeModel.ts +37 -0
  44. package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +165 -0
  45. package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +178 -0
  46. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +707 -0
  47. package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +628 -0
  48. package/src/sap/fe/core/buildingBlocks/TraceInfo.js +436 -0
  49. package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +431 -0
  50. package/src/sap/fe/core/controllerextensions/EditFlow.js +1854 -1669
  51. package/src/sap/fe/core/controllerextensions/EditFlow.ts +1792 -0
  52. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +79 -54
  53. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +60 -0
  54. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +716 -779
  55. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +785 -0
  56. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +796 -816
  57. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +810 -0
  58. package/src/sap/fe/core/controllerextensions/InternalRouting.js +1056 -1005
  59. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +1001 -0
  60. package/src/sap/fe/core/controllerextensions/KPIManagement.js +498 -532
  61. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +13 -12
  62. package/src/sap/fe/core/controllerextensions/MassEdit.js +141 -169
  63. package/src/sap/fe/core/controllerextensions/MassEdit.ts +155 -0
  64. package/src/sap/fe/core/controllerextensions/MessageHandler.js +221 -244
  65. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +215 -0
  66. package/src/sap/fe/core/controllerextensions/PageReady.js +312 -345
  67. package/src/sap/fe/core/controllerextensions/PageReady.ts +57 -53
  68. package/src/sap/fe/core/controllerextensions/Paginator.js +188 -175
  69. package/src/sap/fe/core/controllerextensions/Paginator.ts +169 -0
  70. package/src/sap/fe/core/controllerextensions/Placeholder.js +157 -149
  71. package/src/sap/fe/core/controllerextensions/Placeholder.ts +149 -0
  72. package/src/sap/fe/core/controllerextensions/Routing.js +144 -125
  73. package/src/sap/fe/core/controllerextensions/Routing.ts +131 -0
  74. package/src/sap/fe/core/controllerextensions/RoutingListener.js +7 -6
  75. package/src/sap/fe/core/controllerextensions/RoutingListener.ts +3 -0
  76. package/src/sap/fe/core/controllerextensions/Share.js +230 -268
  77. package/src/sap/fe/core/controllerextensions/Share.ts +231 -0
  78. package/src/sap/fe/core/controllerextensions/SideEffects.js +603 -644
  79. package/src/sap/fe/core/controllerextensions/SideEffects.ts +68 -68
  80. package/src/sap/fe/core/controllerextensions/ViewState.js +774 -806
  81. package/src/sap/fe/core/controllerextensions/ViewState.ts +796 -0
  82. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -2
  83. package/src/sap/fe/core/controls/ActionPartial.fragment.xml +2 -2
  84. package/src/sap/fe/core/controls/Any.js +28 -0
  85. package/src/sap/fe/core/controls/Any.ts +30 -0
  86. package/src/sap/fe/core/controls/CommandExecution.js +92 -68
  87. package/src/sap/fe/core/controls/CommandExecution.ts +72 -0
  88. package/src/sap/fe/core/controls/ConditionalWrapper.js +165 -79
  89. package/src/sap/fe/core/controls/ConditionalWrapper.ts +74 -0
  90. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +366 -0
  91. package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.ts +278 -0
  92. package/src/sap/fe/core/controls/CustomQuickViewPage.js +167 -125
  93. package/src/sap/fe/core/controls/CustomQuickViewPage.ts +116 -0
  94. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossDraft.fragment.xml +44 -5
  95. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +163 -122
  96. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +155 -0
  97. package/src/sap/fe/core/controls/FieldWrapper.js +212 -141
  98. package/src/sap/fe/core/controls/FieldWrapper.ts +104 -0
  99. package/src/sap/fe/core/controls/FileWrapper.js +313 -0
  100. package/src/sap/fe/core/controls/FileWrapper.ts +169 -0
  101. package/src/sap/fe/core/controls/FilterBar.js +197 -159
  102. package/src/sap/fe/core/controls/FilterBar.ts +148 -0
  103. package/src/sap/fe/core/controls/FormElementWrapper.js +100 -39
  104. package/src/sap/fe/core/controls/FormElementWrapper.ts +37 -0
  105. package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +37 -42
  106. package/src/sap/fe/core/controls/MultiValueParameterDelegate.ts +31 -0
  107. package/src/sap/fe/core/controls/filterbar/FilterContainer.js +147 -115
  108. package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +102 -0
  109. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +300 -265
  110. package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +252 -0
  111. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +185 -140
  112. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +125 -0
  113. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +335 -322
  114. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +337 -0
  115. package/src/sap/fe/core/controls/massEdit/MassEditDialog.fragment.xml +37 -42
  116. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +75 -74
  117. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +71 -0
  118. package/src/sap/fe/core/converters/ConverterContext.js +348 -379
  119. package/src/sap/fe/core/converters/ConverterContext.ts +19 -16
  120. package/src/sap/fe/core/converters/ManifestSettings.js +13 -1
  121. package/src/sap/fe/core/converters/ManifestSettings.ts +17 -2
  122. package/src/sap/fe/core/converters/ManifestWrapper.js +354 -378
  123. package/src/sap/fe/core/converters/ManifestWrapper.ts +10 -0
  124. package/src/sap/fe/core/converters/MetaModelConverter.js +6 -4
  125. package/src/sap/fe/core/converters/MetaModelConverter.ts +5 -2
  126. package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
  127. package/src/sap/fe/core/converters/TemplateConverter.ts +2 -1
  128. package/src/sap/fe/core/converters/annotations/DataField.js +26 -13
  129. package/src/sap/fe/core/converters/annotations/DataField.ts +40 -17
  130. package/src/sap/fe/core/converters/controls/Common/Action.js +10 -10
  131. package/src/sap/fe/core/converters/controls/Common/Action.ts +20 -19
  132. package/src/sap/fe/core/converters/controls/Common/Chart.js +8 -8
  133. package/src/sap/fe/core/converters/controls/Common/Chart.ts +12 -11
  134. package/src/sap/fe/core/converters/controls/Common/Form.js +6 -6
  135. package/src/sap/fe/core/converters/controls/Common/Form.ts +7 -3
  136. package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
  137. package/src/sap/fe/core/converters/controls/Common/KPI.ts +2 -2
  138. package/src/sap/fe/core/converters/controls/Common/Table.js +326 -86
  139. package/src/sap/fe/core/converters/controls/Common/Table.ts +384 -167
  140. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +120 -55
  141. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +158 -98
  142. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +206 -223
  143. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +263 -287
  144. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +6 -6
  145. package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.ts +20 -18
  146. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +5 -2
  147. package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +4 -1
  148. package/src/sap/fe/core/converters/helpers/Aggregation.js +115 -133
  149. package/src/sap/fe/core/converters/helpers/BindingHelper.js +20 -6
  150. package/src/sap/fe/core/converters/helpers/BindingHelper.ts +16 -4
  151. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +12 -1
  152. package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +11 -0
  153. package/src/sap/fe/core/converters/helpers/Key.js +42 -57
  154. package/src/sap/fe/core/converters/helpers/Key.ts +1 -1
  155. package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +1 -1
  156. package/src/sap/fe/core/converters/objectPage/FormMenuActions.ts +0 -4
  157. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +51 -27
  158. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +69 -43
  159. package/src/sap/fe/core/converters/templates/ListReportConverter.js +42 -25
  160. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +91 -65
  161. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +11 -9
  162. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +8 -8
  163. package/src/sap/fe/core/designtime/AppComponent.designtime.js +92 -98
  164. package/src/sap/fe/core/designtime/AppComponent.designtime.ts +91 -0
  165. package/src/sap/fe/core/formatters/CollaborationFormatter.js +104 -0
  166. package/src/sap/fe/core/formatters/CollaborationFormatter.ts +60 -0
  167. package/src/sap/fe/core/formatters/KPIFormatter.js +3 -12
  168. package/src/sap/fe/core/formatters/KPIFormatter.ts +3 -2
  169. package/src/sap/fe/core/formatters/TableFormatter.js +53 -2
  170. package/src/sap/fe/core/formatters/TableFormatter.ts +51 -0
  171. package/src/sap/fe/core/formatters/ValueFormatter.js +4 -4
  172. package/src/sap/fe/core/formatters/ValueFormatter.ts +4 -7
  173. package/src/sap/fe/core/fpm/Component.js +80 -55
  174. package/src/sap/fe/core/fpm/Component.ts +43 -0
  175. package/src/sap/fe/core/helpers/AppStartupHelper.js +323 -309
  176. package/src/sap/fe/core/helpers/AppStartupHelper.ts +363 -337
  177. package/src/sap/fe/core/helpers/BindingExpression.js +7 -7
  178. package/src/sap/fe/core/helpers/BindingExpression.ts +7 -7
  179. package/src/sap/fe/core/helpers/ClassSupport.js +307 -166
  180. package/src/sap/fe/core/helpers/ClassSupport.ts +348 -155
  181. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +5 -4
  182. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -5
  183. package/src/sap/fe/core/helpers/FPMHelper.js +1 -1
  184. package/src/sap/fe/core/helpers/FPMHelper.ts +1 -1
  185. package/src/sap/fe/core/helpers/MassEditHelper.js +735 -684
  186. package/src/sap/fe/core/helpers/MassEditHelper.ts +803 -0
  187. package/src/sap/fe/core/helpers/ModelHelper.js +53 -1
  188. package/src/sap/fe/core/helpers/ModelHelper.ts +46 -0
  189. package/src/sap/fe/core/helpers/PasteHelper.js +4 -4
  190. package/src/sap/fe/core/helpers/PasteHelper.ts +4 -3
  191. package/src/sap/fe/core/helpers/SemanticDateOperators.js +7 -3
  192. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +7 -1
  193. package/src/sap/fe/core/helpers/SemanticKeyHelper.js +1 -1
  194. package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +1 -1
  195. package/src/sap/fe/core/helpers/StableIdHelper.js +1 -7
  196. package/src/sap/fe/core/helpers/StableIdHelper.ts +0 -4
  197. package/src/sap/fe/core/jsx-runtime/jsx.js +35 -5
  198. package/src/sap/fe/core/jsx-runtime/jsx.ts +22 -8
  199. package/src/sap/fe/core/library.js +425 -451
  200. package/src/sap/fe/core/library.support.js +22 -33
  201. package/src/sap/fe/core/library.support.ts +23 -0
  202. package/src/sap/fe/core/library.ts +420 -0
  203. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +5 -3
  204. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +4 -4
  205. package/src/sap/fe/core/messagebundle.properties +45 -13
  206. package/src/sap/fe/core/messagebundle_ar.properties +29 -7
  207. package/src/sap/fe/core/messagebundle_bg.properties +29 -7
  208. package/src/sap/fe/core/messagebundle_ca.properties +29 -7
  209. package/src/sap/fe/core/messagebundle_cs.properties +29 -7
  210. package/src/sap/fe/core/messagebundle_cy.properties +29 -7
  211. package/src/sap/fe/core/messagebundle_da.properties +29 -7
  212. package/src/sap/fe/core/messagebundle_de.properties +29 -7
  213. package/src/sap/fe/core/messagebundle_el.properties +29 -7
  214. package/src/sap/fe/core/messagebundle_en.properties +29 -7
  215. package/src/sap/fe/core/messagebundle_en_GB.properties +29 -7
  216. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +29 -7
  217. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +29 -7
  218. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +29 -7
  219. package/src/sap/fe/core/messagebundle_es.properties +29 -7
  220. package/src/sap/fe/core/messagebundle_es_MX.properties +29 -7
  221. package/src/sap/fe/core/messagebundle_et.properties +29 -7
  222. package/src/sap/fe/core/messagebundle_fi.properties +30 -8
  223. package/src/sap/fe/core/messagebundle_fr.properties +31 -9
  224. package/src/sap/fe/core/messagebundle_fr_CA.properties +31 -9
  225. package/src/sap/fe/core/messagebundle_hi.properties +29 -7
  226. package/src/sap/fe/core/messagebundle_hr.properties +29 -7
  227. package/src/sap/fe/core/messagebundle_hu.properties +29 -7
  228. package/src/sap/fe/core/messagebundle_id.properties +29 -7
  229. package/src/sap/fe/core/messagebundle_it.properties +29 -7
  230. package/src/sap/fe/core/messagebundle_iw.properties +29 -7
  231. package/src/sap/fe/core/messagebundle_ja.properties +28 -6
  232. package/src/sap/fe/core/messagebundle_kk.properties +29 -7
  233. package/src/sap/fe/core/messagebundle_ko.properties +29 -7
  234. package/src/sap/fe/core/messagebundle_lt.properties +29 -7
  235. package/src/sap/fe/core/messagebundle_lv.properties +30 -8
  236. package/src/sap/fe/core/messagebundle_ms.properties +29 -7
  237. package/src/sap/fe/core/messagebundle_nl.properties +29 -7
  238. package/src/sap/fe/core/messagebundle_no.properties +29 -7
  239. package/src/sap/fe/core/messagebundle_pl.properties +29 -7
  240. package/src/sap/fe/core/messagebundle_pt.properties +30 -8
  241. package/src/sap/fe/core/messagebundle_pt_PT.properties +29 -7
  242. package/src/sap/fe/core/messagebundle_ro.properties +29 -7
  243. package/src/sap/fe/core/messagebundle_ru.properties +29 -7
  244. package/src/sap/fe/core/messagebundle_sh.properties +29 -7
  245. package/src/sap/fe/core/messagebundle_sk.properties +29 -7
  246. package/src/sap/fe/core/messagebundle_sl.properties +29 -7
  247. package/src/sap/fe/core/messagebundle_sv.properties +30 -8
  248. package/src/sap/fe/core/messagebundle_th.properties +28 -6
  249. package/src/sap/fe/core/messagebundle_tr.properties +32 -10
  250. package/src/sap/fe/core/messagebundle_uk.properties +29 -7
  251. package/src/sap/fe/core/messagebundle_vi.properties +29 -7
  252. package/src/sap/fe/core/messagebundle_zh_CN.properties +29 -7
  253. package/src/sap/fe/core/messagebundle_zh_TW.properties +29 -7
  254. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +47 -73
  255. package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +1 -1
  256. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +158 -196
  257. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +5 -6
  258. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +70 -96
  259. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +7 -6
  260. package/src/sap/fe/core/services/NavigationServiceFactory.js +287 -342
  261. package/src/sap/fe/core/services/NavigationServiceFactory.ts +11 -14
  262. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +70 -105
  263. package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +6 -3
  264. package/src/sap/fe/core/services/RoutingServiceFactory.js +796 -820
  265. package/src/sap/fe/core/services/RoutingServiceFactory.ts +62 -53
  266. package/src/sap/fe/core/services/ShellServicesFactory.js +694 -741
  267. package/src/sap/fe/core/services/ShellServicesFactory.ts +33 -33
  268. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +570 -595
  269. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +23 -4
  270. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +357 -389
  271. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +25 -29
  272. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +43 -5
  273. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +7 -4
  274. package/src/sap/fe/core/support/CommonHelper.js +1 -1
  275. package/src/sap/fe/core/support/CommonHelper.ts +1 -4
  276. package/src/sap/fe/core/support/Diagnostics.js +36 -48
  277. package/src/sap/fe/core/templating/DataModelPathHelper.js +91 -90
  278. package/src/sap/fe/core/templating/DataModelPathHelper.ts +126 -123
  279. package/src/sap/fe/core/templating/DisplayModeFormatter.js +23 -3
  280. package/src/sap/fe/core/templating/DisplayModeFormatter.ts +26 -5
  281. package/src/sap/fe/core/templating/FilterHelper.js +25 -32
  282. package/src/sap/fe/core/templating/FilterHelper.ts +36 -35
  283. package/src/sap/fe/core/templating/PropertyHelper.js +16 -2
  284. package/src/sap/fe/core/templating/PropertyHelper.ts +31 -24
  285. package/src/sap/fe/core/templating/UIFormatters.js +150 -44
  286. package/src/sap/fe/core/templating/UIFormatters.ts +165 -67
  287. package/src/sap/fe/core/type/Email.js +26 -8
  288. package/src/sap/fe/core/type/Email.ts +8 -7
  289. package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +0 -75
@@ -1,10 +1,11 @@
1
1
  import Service from "sap/ui/core/service/Service";
2
2
  import ServiceFactory from "sap/ui/core/service/ServiceFactory";
3
- import { ServiceContext } from "sap/ui/core/service";
4
- import { SelectionVariant, NavigationHandler } from "sap/fe/navigation";
3
+ import { NavigationHandler } from "sap/fe/navigation";
4
+ import SelectionVariant from "sap/fe/navigation/SelectionVariant";
5
+ import { ServiceContext } from "types/extension_types";
5
6
 
6
7
  type NavigationServiceSettings = {};
7
- class NavigationService extends Service<NavigationServiceSettings> {
8
+ export class NavigationService extends Service<NavigationServiceSettings> {
8
9
  initPromise!: Promise<any>;
9
10
  oNavHandler!: NavigationHandler;
10
11
  init() {
@@ -30,7 +31,7 @@ class NavigationService extends Service<NavigationServiceSettings> {
30
31
  * <code>Measure</code> type.
31
32
  * @param {object} [oInnerAppData] Object for storing current state of the app
32
33
  * @param {Function} [fnOnError] Callback that is called if an error occurs during navigation <br>
33
- * @param {object} oExternalAppData Object for storing the state which will be forwarded to the target component.
34
+ * @param {object} [oExternalAppData] Object for storing the state which will be forwarded to the target component.
34
35
  * @param {string} [sNavMode] Argument is used to overwrite the FLP-configured target for opening a URL. If used, only the
35
36
  * <code>explace</code> or <code>inplace</code> values are allowed. Any other value will lead to an exception
36
37
  * <code>NavigationHandler.INVALID_NAV_MODE</code>.
@@ -38,11 +39,11 @@ class NavigationService extends Service<NavigationServiceSettings> {
38
39
  navigate(
39
40
  sSemanticObject: string,
40
41
  sActionName: string,
41
- vNavigationParameters: string | object | undefined,
42
- oInnerAppData: object | undefined,
43
- fnOnError: Function | undefined,
44
- oExternalAppData: object,
45
- sNavMode: string | undefined
42
+ vNavigationParameters?: string | object,
43
+ oInnerAppData?: object,
44
+ fnOnError?: Function,
45
+ oExternalAppData?: object,
46
+ sNavMode?: string
46
47
  ) {
47
48
  // TODO: Navigation Handler does not handle navigation without a context
48
49
  // but in v4 DataFieldForIBN with requiresContext false can trigger a navigation without any context
@@ -231,11 +232,7 @@ class NavigationService extends Service<NavigationServiceSettings> {
231
232
  * (|)
232
233
  * @returns {object} Instance of {@link sap.fe.navigation.SelectionVariant}
233
234
  */
234
- mixAttributesAndSelectionVariant(
235
- vSemanticAttributes: object | any[],
236
- sSelectionVariant: string,
237
- iSuppressionBehavior: number | undefined
238
- ) {
235
+ mixAttributesAndSelectionVariant(vSemanticAttributes: object | any[], sSelectionVariant: string, iSuppressionBehavior?: number) {
239
236
  return this.oNavHandler.mixAttributesAndSelectionVariant(vSemanticAttributes, sSelectionVariant, iSuppressionBehavior);
240
237
  }
241
238
 
@@ -7,95 +7,68 @@ sap.ui.define(["sap/ui/core/service/Service", "sap/ui/core/service/ServiceFactor
7
7
 
8
8
  var _exports = {};
9
9
 
10
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
-
12
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
13
-
14
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
15
-
16
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
17
-
18
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
10
+ function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
19
11
 
20
12
  function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
21
13
 
22
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
23
-
24
- function _possibleConstructorReturn(self, call) { if (call && (typeof call === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
25
-
26
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
27
-
28
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
29
-
30
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
31
-
32
14
  var ResourceModelService = /*#__PURE__*/function (_Service) {
33
- _inherits(ResourceModelService, _Service);
34
-
35
- var _super = _createSuper(ResourceModelService);
15
+ _inheritsLoose(ResourceModelService, _Service);
36
16
 
37
17
  function ResourceModelService() {
38
- _classCallCheck(this, ResourceModelService);
39
-
40
- return _super.apply(this, arguments);
18
+ return _Service.apply(this, arguments) || this;
41
19
  }
42
20
 
43
21
  _exports.ResourceModelService = ResourceModelService;
44
-
45
- _createClass(ResourceModelService, [{
46
- key: "init",
47
- value: function init() {
48
- var _this = this;
49
-
50
- var oContext = this.getContext();
51
- var mSettings = oContext.settings;
52
- this.oFactory = oContext.factory; // When enhancing i18n keys the value in the last resource bundle takes precedence
53
- // hence arrange various resource bundles so that enhanceI18n provided by the application is the last.
54
- // The following order is used :
55
- // 1. sap.fe bundle - sap.fe.core.messagebundle (passed with mSettings.bundles)
56
- // 2. sap.fe bundle - sap.fe.templates.messagebundle (passed with mSettings.bundles)
57
- // 3. Multiple bundles passed by the application as part of enhanceI18n
58
-
59
- var aBundles = mSettings.bundles.concat(mSettings.enhanceI18n || []).map(function (vI18n) {
60
- // if value passed for enhanceI18n is a Resource Model, return the associated bundle
61
- // else the value is a bundleUrl, return Resource Bundle configuration so that a bundle can be created
62
- return typeof vI18n.isA === "function" && vI18n.isA("sap.ui.model.resource.ResourceModel") ? vI18n.getResourceBundle() : {
63
- bundleName: vI18n.replace(/\//g, ".")
64
- };
65
- });
66
- this.oResourceModel = new ResourceModel({
67
- bundleName: aBundles[0].bundleName,
68
- enhanceWith: aBundles.slice(1),
69
- async: true
70
- });
71
-
72
- if (oContext.scopeType === "component") {
73
- var oComponent = oContext.scopeObject;
74
- oComponent.setModel(this.oResourceModel, mSettings.modelName);
75
- }
76
-
77
- this.initPromise = this.oResourceModel.getResourceBundle().then(function (oBundle) {
78
- _this.oResourceModel.__bundle = oBundle;
79
- return _this;
80
- });
81
- }
82
- }, {
83
- key: "getResourceModel",
84
- value: function getResourceModel() {
85
- return this.oResourceModel;
22
+ var _proto = ResourceModelService.prototype;
23
+
24
+ _proto.init = function init() {
25
+ var _this = this;
26
+
27
+ var oContext = this.getContext();
28
+ var mSettings = oContext.settings;
29
+ this.oFactory = oContext.factory; // When enhancing i18n keys the value in the last resource bundle takes precedence
30
+ // hence arrange various resource bundles so that enhanceI18n provided by the application is the last.
31
+ // The following order is used :
32
+ // 1. sap.fe bundle - sap.fe.core.messagebundle (passed with mSettings.bundles)
33
+ // 2. sap.fe bundle - sap.fe.templates.messagebundle (passed with mSettings.bundles)
34
+ // 3. Multiple bundles passed by the application as part of enhanceI18n
35
+
36
+ var aBundles = mSettings.bundles.concat(mSettings.enhanceI18n || []).map(function (vI18n) {
37
+ // if value passed for enhanceI18n is a Resource Model, return the associated bundle
38
+ // else the value is a bundleUrl, return Resource Bundle configuration so that a bundle can be created
39
+ return typeof vI18n.isA === "function" && vI18n.isA("sap.ui.model.resource.ResourceModel") ? vI18n.getResourceBundle() : {
40
+ bundleName: vI18n.replace(/\//g, ".")
41
+ };
42
+ });
43
+ this.oResourceModel = new ResourceModel({
44
+ bundleName: aBundles[0].bundleName,
45
+ enhanceWith: aBundles.slice(1),
46
+ async: true
47
+ });
48
+
49
+ if (oContext.scopeType === "component") {
50
+ var oComponent = oContext.scopeObject;
51
+ oComponent.setModel(this.oResourceModel, mSettings.modelName);
86
52
  }
87
- }, {
88
- key: "getInterface",
89
- value: function getInterface() {
90
- return this;
91
- }
92
- }, {
93
- key: "exit",
94
- value: function exit() {
95
- // Deregister global instance
96
- this.oFactory.removeGlobalInstance();
97
- }
98
- }]);
53
+
54
+ this.initPromise = Promise.all([this.oResourceModel.getResourceBundle(), this.oResourceModel._pEnhanced || Promise.resolve()]).then(function (oBundle) {
55
+ _this.oResourceModel.__bundle = oBundle[0];
56
+ return _this;
57
+ });
58
+ };
59
+
60
+ _proto.getResourceModel = function getResourceModel() {
61
+ return this.oResourceModel;
62
+ };
63
+
64
+ _proto.getInterface = function getInterface() {
65
+ return this;
66
+ };
67
+
68
+ _proto.exit = function exit() {
69
+ // Deregister global instance
70
+ this.oFactory.removeGlobalInstance();
71
+ };
99
72
 
100
73
  return ResourceModelService;
101
74
  }(Service);
@@ -103,49 +76,41 @@ sap.ui.define(["sap/ui/core/service/Service", "sap/ui/core/service/ServiceFactor
103
76
  _exports.ResourceModelService = ResourceModelService;
104
77
 
105
78
  var ResourceModelServiceFactory = /*#__PURE__*/function (_ServiceFactory) {
106
- _inherits(ResourceModelServiceFactory, _ServiceFactory);
107
-
108
- var _super2 = _createSuper(ResourceModelServiceFactory);
79
+ _inheritsLoose(ResourceModelServiceFactory, _ServiceFactory);
109
80
 
110
81
  function ResourceModelServiceFactory() {
111
82
  var _this2;
112
83
 
113
- _classCallCheck(this, ResourceModelServiceFactory);
114
-
115
84
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
116
85
  args[_key] = arguments[_key];
117
86
  }
118
87
 
119
- _this2 = _super2.call.apply(_super2, [this].concat(args));
120
-
121
- _defineProperty(_assertThisInitialized(_this2), "_oInstances", {});
122
-
88
+ _this2 = _ServiceFactory.call.apply(_ServiceFactory, [this].concat(args)) || this;
89
+ _this2._oInstances = {};
123
90
  return _this2;
124
91
  }
125
92
 
126
- _createClass(ResourceModelServiceFactory, [{
127
- key: "createInstance",
128
- value: function createInstance(oServiceContext) {
129
- var sKey = oServiceContext.settings.bundles.join(",") + (oServiceContext.settings.enhanceI18n ? "," + oServiceContext.settings.enhanceI18n.join(",") : "");
93
+ var _proto2 = ResourceModelServiceFactory.prototype;
130
94
 
131
- if (!this._oInstances[sKey]) {
132
- this._oInstances[sKey] = new ResourceModelService(Object.assign({
133
- factory: this
134
- }, oServiceContext));
135
- }
95
+ _proto2.createInstance = function createInstance(oServiceContext) {
96
+ var sKey = oServiceContext.settings.bundles.join(",") + (oServiceContext.settings.enhanceI18n ? "," + oServiceContext.settings.enhanceI18n.join(",") : "");
136
97
 
137
- return this._oInstances[sKey].initPromise;
98
+ if (!this._oInstances[sKey]) {
99
+ this._oInstances[sKey] = new ResourceModelService(Object.assign({
100
+ factory: this
101
+ }, oServiceContext));
138
102
  }
139
- }, {
140
- key: "removeGlobalInstance",
141
- value: function removeGlobalInstance() {
142
- this._oInstances = {};
143
- }
144
- }]);
103
+
104
+ return this._oInstances[sKey].initPromise;
105
+ };
106
+
107
+ _proto2.removeGlobalInstance = function removeGlobalInstance() {
108
+ this._oInstances = {};
109
+ };
145
110
 
146
111
  return ResourceModelServiceFactory;
147
112
  }(ServiceFactory);
148
113
 
149
114
  return ResourceModelServiceFactory;
150
115
  }, false);
151
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeS50cyJdLCJuYW1lcyI6WyJSZXNvdXJjZU1vZGVsU2VydmljZSIsIm9Db250ZXh0IiwiZ2V0Q29udGV4dCIsIm1TZXR0aW5ncyIsInNldHRpbmdzIiwib0ZhY3RvcnkiLCJmYWN0b3J5IiwiYUJ1bmRsZXMiLCJidW5kbGVzIiwiY29uY2F0IiwiZW5oYW5jZUkxOG4iLCJtYXAiLCJ2STE4biIsImlzQSIsImdldFJlc291cmNlQnVuZGxlIiwiYnVuZGxlTmFtZSIsInJlcGxhY2UiLCJvUmVzb3VyY2VNb2RlbCIsIlJlc291cmNlTW9kZWwiLCJlbmhhbmNlV2l0aCIsInNsaWNlIiwiYXN5bmMiLCJzY29wZVR5cGUiLCJvQ29tcG9uZW50Iiwic2NvcGVPYmplY3QiLCJzZXRNb2RlbCIsIm1vZGVsTmFtZSIsImluaXRQcm9taXNlIiwidGhlbiIsIm9CdW5kbGUiLCJfX2J1bmRsZSIsInJlbW92ZUdsb2JhbEluc3RhbmNlIiwiU2VydmljZSIsIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeSIsIm9TZXJ2aWNlQ29udGV4dCIsInNLZXkiLCJqb2luIiwiX29JbnN0YW5jZXMiLCJPYmplY3QiLCJhc3NpZ24iLCJTZXJ2aWNlRmFjdG9yeSJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQU9hQSxvQjs7Ozs7Ozs7Ozs7Ozs7O2FBSVosZ0JBQU87QUFBQTs7QUFDTixZQUFNQyxRQUFRLEdBQUcsS0FBS0MsVUFBTCxFQUFqQjtBQUNBLFlBQU1DLFNBQVMsR0FBR0YsUUFBUSxDQUFDRyxRQUEzQjtBQUNBLGFBQUtDLFFBQUwsR0FBZ0JKLFFBQVEsQ0FBQ0ssT0FBekIsQ0FITSxDQUtOO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFDQSxZQUFNQyxRQUFRLEdBQUdKLFNBQVMsQ0FBQ0ssT0FBVixDQUFrQkMsTUFBbEIsQ0FBeUJOLFNBQVMsQ0FBQ08sV0FBVixJQUF5QixFQUFsRCxFQUFzREMsR0FBdEQsQ0FBMEQsVUFBU0MsS0FBVCxFQUFxQjtBQUMvRjtBQUNBO0FBQ0EsaUJBQU8sT0FBT0EsS0FBSyxDQUFDQyxHQUFiLEtBQXFCLFVBQXJCLElBQW1DRCxLQUFLLENBQUNDLEdBQU4sQ0FBVSxxQ0FBVixDQUFuQyxHQUNKRCxLQUFLLENBQUNFLGlCQUFOLEVBREksR0FFSjtBQUFFQyxZQUFBQSxVQUFVLEVBQUVILEtBQUssQ0FBQ0ksT0FBTixDQUFjLEtBQWQsRUFBcUIsR0FBckI7QUFBZCxXQUZIO0FBR0EsU0FOZ0IsQ0FBakI7QUFRQSxhQUFLQyxjQUFMLEdBQXNCLElBQUlDLGFBQUosQ0FBa0I7QUFDdkNILFVBQUFBLFVBQVUsRUFBRVIsUUFBUSxDQUFDLENBQUQsQ0FBUixDQUFZUSxVQURlO0FBRXZDSSxVQUFBQSxXQUFXLEVBQUVaLFFBQVEsQ0FBQ2EsS0FBVCxDQUFlLENBQWYsQ0FGMEI7QUFHdkNDLFVBQUFBLEtBQUssRUFBRTtBQUhnQyxTQUFsQixDQUF0Qjs7QUFNQSxZQUFJcEIsUUFBUSxDQUFDcUIsU0FBVCxLQUF1QixXQUEzQixFQUF3QztBQUN2QyxjQUFNQyxVQUFVLEdBQUd0QixRQUFRLENBQUN1QixXQUE1QjtBQUNBRCxVQUFBQSxVQUFVLENBQUNFLFFBQVgsQ0FBb0IsS0FBS1IsY0FBekIsRUFBeUNkLFNBQVMsQ0FBQ3VCLFNBQW5EO0FBQ0E7O0FBRUQsYUFBS0MsV0FBTCxHQUFvQixLQUFLVixjQUFMLENBQW9CSCxpQkFBcEIsRUFBRCxDQUFxRWMsSUFBckUsQ0FBMEUsVUFBQ0MsT0FBRCxFQUFrQjtBQUM3RyxVQUFBLEtBQUksQ0FBQ1osY0FBTixDQUE2QmEsUUFBN0IsR0FBd0NELE9BQXhDO0FBQ0EsaUJBQU8sS0FBUDtBQUNBLFNBSGtCLENBQW5CO0FBSUE7OzthQUVELDRCQUFtQjtBQUNsQixlQUFPLEtBQUtaLGNBQVo7QUFDQTs7O2FBQ0Qsd0JBQW9CO0FBQ25CLGVBQU8sSUFBUDtBQUNBOzs7YUFDRCxnQkFBTztBQUNOO0FBQ0EsYUFBS1osUUFBTCxDQUFjMEIsb0JBQWQ7QUFDQTs7OztJQWpEd0NDLE87Ozs7TUFvRHBDQywyQjs7Ozs7Ozs7Ozs7Ozs7OztxRUFDK0MsRTs7Ozs7OzthQUNwRCx3QkFBZUMsZUFBZixFQUE4RTtBQUM3RSxZQUFNQyxJQUFJLEdBQ1RELGVBQWUsQ0FBQzlCLFFBQWhCLENBQXlCSSxPQUF6QixDQUFpQzRCLElBQWpDLENBQXNDLEdBQXRDLEtBQ0NGLGVBQWUsQ0FBQzlCLFFBQWhCLENBQXlCTSxXQUF6QixHQUF1QyxNQUFNd0IsZUFBZSxDQUFDOUIsUUFBaEIsQ0FBeUJNLFdBQXpCLENBQXFDMEIsSUFBckMsQ0FBMEMsR0FBMUMsQ0FBN0MsR0FBOEYsRUFEL0YsQ0FERDs7QUFJQSxZQUFJLENBQUMsS0FBS0MsV0FBTCxDQUFpQkYsSUFBakIsQ0FBTCxFQUE2QjtBQUM1QixlQUFLRSxXQUFMLENBQWlCRixJQUFqQixJQUF5QixJQUFJbkMsb0JBQUosQ0FBeUJzQyxNQUFNLENBQUNDLE1BQVAsQ0FBYztBQUFFakMsWUFBQUEsT0FBTyxFQUFFO0FBQVgsV0FBZCxFQUFpQzRCLGVBQWpDLENBQXpCLENBQXpCO0FBQ0E7O0FBRUQsZUFBTyxLQUFLRyxXQUFMLENBQWlCRixJQUFqQixFQUF1QlIsV0FBOUI7QUFDQTs7O2FBQ0QsZ0NBQXVCO0FBQ3RCLGFBQUtVLFdBQUwsR0FBbUIsRUFBbkI7QUFDQTs7OztJQWZ3Q0csYzs7U0FrQjNCUCwyQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFNlcnZpY2UgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZVwiO1xuaW1wb3J0IFNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvdWkvY29yZS9zZXJ2aWNlL1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgUmVzb3VyY2VNb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL3Jlc291cmNlL1Jlc291cmNlTW9kZWxcIjtcbmltcG9ydCBSZXNvdXJjZUJ1bmRsZSBmcm9tIFwic2FwL2Jhc2UvaTE4bi9SZXNvdXJjZUJ1bmRsZVwiO1xuaW1wb3J0IHsgU2VydmljZUNvbnRleHQgfSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZVwiO1xudHlwZSBSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzID0ge1xuXHRidW5kbGVzOiBSZXNvdXJjZUJ1bmRsZVtdO1xuXHRlbmhhbmNlSTE4bjogc3RyaW5nW107XG59O1xuZXhwb3J0IGNsYXNzIFJlc291cmNlTW9kZWxTZXJ2aWNlIGV4dGVuZHMgU2VydmljZTxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPiB7XG5cdGluaXRQcm9taXNlITogUHJvbWlzZTxhbnk+O1xuXHRvRmFjdG9yeSE6IFJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeTtcblx0b1Jlc291cmNlTW9kZWwhOiBSZXNvdXJjZU1vZGVsO1xuXHRpbml0KCkge1xuXHRcdGNvbnN0IG9Db250ZXh0ID0gdGhpcy5nZXRDb250ZXh0KCk7XG5cdFx0Y29uc3QgbVNldHRpbmdzID0gb0NvbnRleHQuc2V0dGluZ3M7XG5cdFx0dGhpcy5vRmFjdG9yeSA9IG9Db250ZXh0LmZhY3Rvcnk7XG5cblx0XHQvLyBXaGVuIGVuaGFuY2luZyBpMThuIGtleXMgdGhlIHZhbHVlIGluIHRoZSBsYXN0IHJlc291cmNlIGJ1bmRsZSB0YWtlcyBwcmVjZWRlbmNlXG5cdFx0Ly8gaGVuY2UgYXJyYW5nZSB2YXJpb3VzIHJlc291cmNlIGJ1bmRsZXMgc28gdGhhdCBlbmhhbmNlSTE4biBwcm92aWRlZCBieSB0aGUgYXBwbGljYXRpb24gaXMgdGhlIGxhc3QuXG5cdFx0Ly8gVGhlIGZvbGxvd2luZyBvcmRlciBpcyB1c2VkIDpcblx0XHQvLyAxLiBzYXAuZmUgYnVuZGxlIC0gc2FwLmZlLmNvcmUubWVzc2FnZWJ1bmRsZSAocGFzc2VkIHdpdGggbVNldHRpbmdzLmJ1bmRsZXMpXG5cdFx0Ly8gMi4gc2FwLmZlIGJ1bmRsZSAtIHNhcC5mZS50ZW1wbGF0ZXMubWVzc2FnZWJ1bmRsZSAocGFzc2VkIHdpdGggbVNldHRpbmdzLmJ1bmRsZXMpXG5cdFx0Ly8gMy4gTXVsdGlwbGUgYnVuZGxlcyBwYXNzZWQgYnkgdGhlIGFwcGxpY2F0aW9uIGFzIHBhcnQgb2YgZW5oYW5jZUkxOG5cblx0XHRjb25zdCBhQnVuZGxlcyA9IG1TZXR0aW5ncy5idW5kbGVzLmNvbmNhdChtU2V0dGluZ3MuZW5oYW5jZUkxOG4gfHwgW10pLm1hcChmdW5jdGlvbih2STE4bjogYW55KSB7XG5cdFx0XHQvLyBpZiB2YWx1ZSBwYXNzZWQgZm9yIGVuaGFuY2VJMThuIGlzIGEgUmVzb3VyY2UgTW9kZWwsIHJldHVybiB0aGUgYXNzb2NpYXRlZCBidW5kbGVcblx0XHRcdC8vIGVsc2UgdGhlIHZhbHVlIGlzIGEgYnVuZGxlVXJsLCByZXR1cm4gUmVzb3VyY2UgQnVuZGxlIGNvbmZpZ3VyYXRpb24gc28gdGhhdCBhIGJ1bmRsZSBjYW4gYmUgY3JlYXRlZFxuXHRcdFx0cmV0dXJuIHR5cGVvZiB2STE4bi5pc0EgPT09IFwiZnVuY3Rpb25cIiAmJiB2STE4bi5pc0EoXCJzYXAudWkubW9kZWwucmVzb3VyY2UuUmVzb3VyY2VNb2RlbFwiKVxuXHRcdFx0XHQ/IHZJMThuLmdldFJlc291cmNlQnVuZGxlKClcblx0XHRcdFx0OiB7IGJ1bmRsZU5hbWU6IHZJMThuLnJlcGxhY2UoL1xcLy9nLCBcIi5cIikgfTtcblx0XHR9KTtcblxuXHRcdHRoaXMub1Jlc291cmNlTW9kZWwgPSBuZXcgUmVzb3VyY2VNb2RlbCh7XG5cdFx0XHRidW5kbGVOYW1lOiBhQnVuZGxlc1swXS5idW5kbGVOYW1lLFxuXHRcdFx0ZW5oYW5jZVdpdGg6IGFCdW5kbGVzLnNsaWNlKDEpLFxuXHRcdFx0YXN5bmM6IHRydWVcblx0XHR9KTtcblxuXHRcdGlmIChvQ29udGV4dC5zY29wZVR5cGUgPT09IFwiY29tcG9uZW50XCIpIHtcblx0XHRcdGNvbnN0IG9Db21wb25lbnQgPSBvQ29udGV4dC5zY29wZU9iamVjdDtcblx0XHRcdG9Db21wb25lbnQuc2V0TW9kZWwodGhpcy5vUmVzb3VyY2VNb2RlbCwgbVNldHRpbmdzLm1vZGVsTmFtZSk7XG5cdFx0fVxuXG5cdFx0dGhpcy5pbml0UHJvbWlzZSA9ICh0aGlzLm9SZXNvdXJjZU1vZGVsLmdldFJlc291cmNlQnVuZGxlKCkgYXMgUHJvbWlzZTxSZXNvdXJjZUJ1bmRsZT4pLnRoZW4oKG9CdW5kbGU6IGFueSkgPT4ge1xuXHRcdFx0KHRoaXMub1Jlc291cmNlTW9kZWwgYXMgYW55KS5fX2J1bmRsZSA9IG9CdW5kbGU7XG5cdFx0XHRyZXR1cm4gdGhpcztcblx0XHR9KTtcblx0fVxuXG5cdGdldFJlc291cmNlTW9kZWwoKSB7XG5cdFx0cmV0dXJuIHRoaXMub1Jlc291cmNlTW9kZWw7XG5cdH1cblx0Z2V0SW50ZXJmYWNlKCk6IGFueSB7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblx0ZXhpdCgpIHtcblx0XHQvLyBEZXJlZ2lzdGVyIGdsb2JhbCBpbnN0YW5jZVxuXHRcdHRoaXMub0ZhY3RvcnkucmVtb3ZlR2xvYmFsSW5zdGFuY2UoKTtcblx0fVxufVxuXG5jbGFzcyBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkgZXh0ZW5kcyBTZXJ2aWNlRmFjdG9yeTxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPiB7XG5cdF9vSW5zdGFuY2VzOiBSZWNvcmQ8c3RyaW5nLCBSZXNvdXJjZU1vZGVsU2VydmljZT4gPSB7fTtcblx0Y3JlYXRlSW5zdGFuY2Uob1NlcnZpY2VDb250ZXh0OiBTZXJ2aWNlQ29udGV4dDxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPikge1xuXHRcdGNvbnN0IHNLZXkgPVxuXHRcdFx0b1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmJ1bmRsZXMuam9pbihcIixcIikgK1xuXHRcdFx0KG9TZXJ2aWNlQ29udGV4dC5zZXR0aW5ncy5lbmhhbmNlSTE4biA/IFwiLFwiICsgb1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmVuaGFuY2VJMThuLmpvaW4oXCIsXCIpIDogXCJcIik7XG5cblx0XHRpZiAoIXRoaXMuX29JbnN0YW5jZXNbc0tleV0pIHtcblx0XHRcdHRoaXMuX29JbnN0YW5jZXNbc0tleV0gPSBuZXcgUmVzb3VyY2VNb2RlbFNlcnZpY2UoT2JqZWN0LmFzc2lnbih7IGZhY3Rvcnk6IHRoaXMgfSwgb1NlcnZpY2VDb250ZXh0KSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMuX29JbnN0YW5jZXNbc0tleV0uaW5pdFByb21pc2U7XG5cdH1cblx0cmVtb3ZlR2xvYmFsSW5zdGFuY2UoKSB7XG5cdFx0dGhpcy5fb0luc3RhbmNlcyA9IHt9O1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeTtcbiJdfQ==
116
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeS50cyJdLCJuYW1lcyI6WyJSZXNvdXJjZU1vZGVsU2VydmljZSIsImluaXQiLCJvQ29udGV4dCIsImdldENvbnRleHQiLCJtU2V0dGluZ3MiLCJzZXR0aW5ncyIsIm9GYWN0b3J5IiwiZmFjdG9yeSIsImFCdW5kbGVzIiwiYnVuZGxlcyIsImNvbmNhdCIsImVuaGFuY2VJMThuIiwibWFwIiwidkkxOG4iLCJpc0EiLCJnZXRSZXNvdXJjZUJ1bmRsZSIsImJ1bmRsZU5hbWUiLCJyZXBsYWNlIiwib1Jlc291cmNlTW9kZWwiLCJSZXNvdXJjZU1vZGVsIiwiZW5oYW5jZVdpdGgiLCJzbGljZSIsImFzeW5jIiwic2NvcGVUeXBlIiwib0NvbXBvbmVudCIsInNjb3BlT2JqZWN0Iiwic2V0TW9kZWwiLCJtb2RlbE5hbWUiLCJpbml0UHJvbWlzZSIsIlByb21pc2UiLCJhbGwiLCJfcEVuaGFuY2VkIiwicmVzb2x2ZSIsInRoZW4iLCJvQnVuZGxlIiwiX19idW5kbGUiLCJnZXRSZXNvdXJjZU1vZGVsIiwiZ2V0SW50ZXJmYWNlIiwiZXhpdCIsInJlbW92ZUdsb2JhbEluc3RhbmNlIiwiU2VydmljZSIsIlJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeSIsIl9vSW5zdGFuY2VzIiwiY3JlYXRlSW5zdGFuY2UiLCJvU2VydmljZUNvbnRleHQiLCJzS2V5Iiwiam9pbiIsIk9iamVjdCIsImFzc2lnbiIsIlNlcnZpY2VGYWN0b3J5Il0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7Ozs7Ozs7O01BT2FBLG9COzs7Ozs7Ozs7O1dBSVpDLEksR0FBQSxnQkFBTztBQUFBOztBQUNOLFVBQU1DLFFBQVEsR0FBRyxLQUFLQyxVQUFMLEVBQWpCO0FBQ0EsVUFBTUMsU0FBUyxHQUFHRixRQUFRLENBQUNHLFFBQTNCO0FBQ0EsV0FBS0MsUUFBTCxHQUFnQkosUUFBUSxDQUFDSyxPQUF6QixDQUhNLENBS047QUFDQTtBQUNBO0FB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Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgU2VydmljZSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlXCI7XG5pbXBvcnQgU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBSZXNvdXJjZU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvcmVzb3VyY2UvUmVzb3VyY2VNb2RlbFwiO1xuaW1wb3J0IFJlc291cmNlQnVuZGxlIGZyb20gXCJzYXAvYmFzZS9pMThuL1Jlc291cmNlQnVuZGxlXCI7XG5pbXBvcnQgeyBTZXJ2aWNlQ29udGV4dCB9IGZyb20gXCJ0eXBlcy9leHRlbnNpb25fdHlwZXNcIjtcbnR5cGUgUmVzb3VyY2VNb2RlbFNlcnZpY2VTZXR0aW5ncyA9IHtcblx0YnVuZGxlczogUmVzb3VyY2VCdW5kbGVbXTtcblx0ZW5oYW5jZUkxOG46IHN0cmluZ1tdO1xufTtcbmV4cG9ydCBjbGFzcyBSZXNvdXJjZU1vZGVsU2VydmljZSBleHRlbmRzIFNlcnZpY2U8UmVzb3VyY2VNb2RlbFNlcnZpY2VTZXR0aW5ncz4ge1xuXHRpbml0UHJvbWlzZSE6IFByb21pc2U8YW55Pjtcblx0b0ZhY3RvcnkhOiBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3Rvcnk7XG5cdG9SZXNvdXJjZU1vZGVsITogUmVzb3VyY2VNb2RlbDtcblx0aW5pdCgpIHtcblx0XHRjb25zdCBvQ29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpO1xuXHRcdGNvbnN0IG1TZXR0aW5ncyA9IG9Db250ZXh0LnNldHRpbmdzO1xuXHRcdHRoaXMub0ZhY3RvcnkgPSBvQ29udGV4dC5mYWN0b3J5O1xuXG5cdFx0Ly8gV2hlbiBlbmhhbmNpbmcgaTE4biBrZXlzIHRoZSB2YWx1ZSBpbiB0aGUgbGFzdCByZXNvdXJjZSBidW5kbGUgdGFrZXMgcHJlY2VkZW5jZVxuXHRcdC8vIGhlbmNlIGFycmFuZ2UgdmFyaW91cyByZXNvdXJjZSBidW5kbGVzIHNvIHRoYXQgZW5oYW5jZUkxOG4gcHJvdmlkZWQgYnkgdGhlIGFwcGxpY2F0aW9uIGlzIHRoZSBsYXN0LlxuXHRcdC8vIFRoZSBmb2xsb3dpbmcgb3JkZXIgaXMgdXNlZCA6XG5cdFx0Ly8gMS4gc2FwLmZlIGJ1bmRsZSAtIHNhcC5mZS5jb3JlLm1lc3NhZ2VidW5kbGUgKHBhc3NlZCB3aXRoIG1TZXR0aW5ncy5idW5kbGVzKVxuXHRcdC8vIDIuIHNhcC5mZSBidW5kbGUgLSBzYXAuZmUudGVtcGxhdGVzLm1lc3NhZ2VidW5kbGUgKHBhc3NlZCB3aXRoIG1TZXR0aW5ncy5idW5kbGVzKVxuXHRcdC8vIDMuIE11bHRpcGxlIGJ1bmRsZXMgcGFzc2VkIGJ5IHRoZSBhcHBsaWNhdGlvbiBhcyBwYXJ0IG9mIGVuaGFuY2VJMThuXG5cdFx0Y29uc3QgYUJ1bmRsZXMgPSBtU2V0dGluZ3MuYnVuZGxlcy5jb25jYXQobVNldHRpbmdzLmVuaGFuY2VJMThuIHx8IFtdKS5tYXAoZnVuY3Rpb24odkkxOG46IGFueSkge1xuXHRcdFx0Ly8gaWYgdmFsdWUgcGFzc2VkIGZvciBlbmhhbmNlSTE4biBpcyBhIFJlc291cmNlIE1vZGVsLCByZXR1cm4gdGhlIGFzc29jaWF0ZWQgYnVuZGxlXG5cdFx0XHQvLyBlbHNlIHRoZSB2YWx1ZSBpcyBhIGJ1bmRsZVVybCwgcmV0dXJuIFJlc291cmNlIEJ1bmRsZSBjb25maWd1cmF0aW9uIHNvIHRoYXQgYSBidW5kbGUgY2FuIGJlIGNyZWF0ZWRcblx0XHRcdHJldHVybiB0eXBlb2YgdkkxOG4uaXNBID09PSBcImZ1bmN0aW9uXCIgJiYgdkkxOG4uaXNBKFwic2FwLnVpLm1vZGVsLnJlc291cmNlLlJlc291cmNlTW9kZWxcIilcblx0XHRcdFx0PyB2STE4bi5nZXRSZXNvdXJjZUJ1bmRsZSgpXG5cdFx0XHRcdDogeyBidW5kbGVOYW1lOiB2STE4bi5yZXBsYWNlKC9cXC8vZywgXCIuXCIpIH07XG5cdFx0fSk7XG5cblx0XHR0aGlzLm9SZXNvdXJjZU1vZGVsID0gbmV3IFJlc291cmNlTW9kZWwoe1xuXHRcdFx0YnVuZGxlTmFtZTogYUJ1bmRsZXNbMF0uYnVuZGxlTmFtZSxcblx0XHRcdGVuaGFuY2VXaXRoOiBhQnVuZGxlcy5zbGljZSgxKSxcblx0XHRcdGFzeW5jOiB0cnVlXG5cdFx0fSk7XG5cblx0XHRpZiAob0NvbnRleHQuc2NvcGVUeXBlID09PSBcImNvbXBvbmVudFwiKSB7XG5cdFx0XHRjb25zdCBvQ29tcG9uZW50ID0gb0NvbnRleHQuc2NvcGVPYmplY3Q7XG5cdFx0XHRvQ29tcG9uZW50LnNldE1vZGVsKHRoaXMub1Jlc291cmNlTW9kZWwsIG1TZXR0aW5ncy5tb2RlbE5hbWUpO1xuXHRcdH1cblxuXHRcdHRoaXMuaW5pdFByb21pc2UgPSBQcm9taXNlLmFsbChbXG5cdFx0XHR0aGlzLm9SZXNvdXJjZU1vZGVsLmdldFJlc291cmNlQnVuZGxlKCkgYXMgUHJvbWlzZTxSZXNvdXJjZUJ1bmRsZT4sXG5cdFx0XHQodGhpcy5vUmVzb3VyY2VNb2RlbCBhcyBhbnkpLl9wRW5oYW5jZWQgfHwgUHJvbWlzZS5yZXNvbHZlKClcblx0XHRdKS50aGVuKChvQnVuZGxlOiBhbnlbXSkgPT4ge1xuXHRcdFx0KHRoaXMub1Jlc291cmNlTW9kZWwgYXMgYW55KS5fX2J1bmRsZSA9IG9CdW5kbGVbMF07XG5cdFx0XHRyZXR1cm4gdGhpcztcblx0XHR9KTtcblx0fVxuXG5cdGdldFJlc291cmNlTW9kZWwoKSB7XG5cdFx0cmV0dXJuIHRoaXMub1Jlc291cmNlTW9kZWw7XG5cdH1cblx0Z2V0SW50ZXJmYWNlKCk6IGFueSB7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblx0ZXhpdCgpIHtcblx0XHQvLyBEZXJlZ2lzdGVyIGdsb2JhbCBpbnN0YW5jZVxuXHRcdHRoaXMub0ZhY3RvcnkucmVtb3ZlR2xvYmFsSW5zdGFuY2UoKTtcblx0fVxufVxuXG5jbGFzcyBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkgZXh0ZW5kcyBTZXJ2aWNlRmFjdG9yeTxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPiB7XG5cdF9vSW5zdGFuY2VzOiBSZWNvcmQ8c3RyaW5nLCBSZXNvdXJjZU1vZGVsU2VydmljZT4gPSB7fTtcblx0Y3JlYXRlSW5zdGFuY2Uob1NlcnZpY2VDb250ZXh0OiBTZXJ2aWNlQ29udGV4dDxSZXNvdXJjZU1vZGVsU2VydmljZVNldHRpbmdzPikge1xuXHRcdGNvbnN0IHNLZXkgPVxuXHRcdFx0b1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmJ1bmRsZXMuam9pbihcIixcIikgK1xuXHRcdFx0KG9TZXJ2aWNlQ29udGV4dC5zZXR0aW5ncy5lbmhhbmNlSTE4biA/IFwiLFwiICsgb1NlcnZpY2VDb250ZXh0LnNldHRpbmdzLmVuaGFuY2VJMThuLmpvaW4oXCIsXCIpIDogXCJcIik7XG5cblx0XHRpZiAoIXRoaXMuX29JbnN0YW5jZXNbc0tleV0pIHtcblx0XHRcdHRoaXMuX29JbnN0YW5jZXNbc0tleV0gPSBuZXcgUmVzb3VyY2VNb2RlbFNlcnZpY2UoT2JqZWN0LmFzc2lnbih7IGZhY3Rvcnk6IHRoaXMgfSwgb1NlcnZpY2VDb250ZXh0KSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHRoaXMuX29JbnN0YW5jZXNbc0tleV0uaW5pdFByb21pc2U7XG5cdH1cblx0cmVtb3ZlR2xvYmFsSW5zdGFuY2UoKSB7XG5cdFx0dGhpcy5fb0luc3RhbmNlcyA9IHt9O1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFJlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeTtcbiJdfQ==
@@ -2,7 +2,7 @@ import Service from "sap/ui/core/service/Service";
2
2
  import ServiceFactory from "sap/ui/core/service/ServiceFactory";
3
3
  import ResourceModel from "sap/ui/model/resource/ResourceModel";
4
4
  import ResourceBundle from "sap/base/i18n/ResourceBundle";
5
- import { ServiceContext } from "sap/ui/core/service";
5
+ import { ServiceContext } from "types/extension_types";
6
6
  type ResourceModelServiceSettings = {
7
7
  bundles: ResourceBundle[];
8
8
  enhanceI18n: string[];
@@ -41,8 +41,11 @@ export class ResourceModelService extends Service<ResourceModelServiceSettings>
41
41
  oComponent.setModel(this.oResourceModel, mSettings.modelName);
42
42
  }
43
43
 
44
- this.initPromise = (this.oResourceModel.getResourceBundle() as Promise<ResourceBundle>).then((oBundle: any) => {
45
- (this.oResourceModel as any).__bundle = oBundle;
44
+ this.initPromise = Promise.all([
45
+ this.oResourceModel.getResourceBundle() as Promise<ResourceBundle>,
46
+ (this.oResourceModel as any)._pEnhanced || Promise.resolve()
47
+ ]).then((oBundle: any[]) => {
48
+ (this.oResourceModel as any).__bundle = oBundle[0];
46
49
  return this;
47
50
  });
48
51
  }