@sapui5/sap.fe.core 1.99.0 → 1.100.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 (246) hide show
  1. package/package.json +4 -2
  2. package/src/sap/fe/core/.library +1 -1
  3. package/src/sap/fe/core/AnnotationHelper.js +1 -69
  4. package/src/sap/fe/core/AnnotationHelper.ts +0 -70
  5. package/src/sap/fe/core/AppComponent.js +388 -399
  6. package/src/sap/fe/core/AppComponent.ts +403 -0
  7. package/src/sap/fe/core/AppStateHandler.js +127 -158
  8. package/src/sap/fe/core/BaseController.js +82 -58
  9. package/src/sap/fe/core/BaseController.ts +68 -0
  10. package/src/sap/fe/core/CommonUtils.js +111 -20
  11. package/src/sap/fe/core/CommonUtils.ts +131 -32
  12. package/src/sap/fe/core/ExtensionAPI.js +278 -274
  13. package/src/sap/fe/core/ExtensionAPI.ts +250 -0
  14. package/src/sap/fe/core/PageController.js +157 -29
  15. package/src/sap/fe/core/PageController.ts +60 -32
  16. package/src/sap/fe/core/RouterProxy.js +694 -756
  17. package/src/sap/fe/core/RouterProxy.ts +11 -9
  18. package/src/sap/fe/core/Synchronization.js +21 -31
  19. package/src/sap/fe/core/TemplateComponent.js +1 -1
  20. package/src/sap/fe/core/TemplateComponent.ts +10 -3
  21. package/src/sap/fe/core/TemplateModel.js +20 -38
  22. package/src/sap/fe/core/TemplateModel.ts +1 -1
  23. package/src/sap/fe/core/TransactionHelper.js +1354 -1370
  24. package/src/sap/fe/core/TransactionHelper.ts +33 -22
  25. package/src/sap/fe/core/actions/collaboration/ActivitySync.js +392 -0
  26. package/src/sap/fe/core/actions/collaboration/ActivitySync.ts +355 -0
  27. package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +136 -0
  28. package/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +119 -0
  29. package/src/sap/fe/core/actions/collaboration/Manage.js +262 -0
  30. package/src/sap/fe/core/actions/collaboration/Manage.ts +244 -0
  31. package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +103 -0
  32. package/src/sap/fe/core/actions/collaboration/UserDetails.fragment.xml +13 -0
  33. package/src/sap/fe/core/actions/draft.js +30 -68
  34. package/src/sap/fe/core/actions/draft.ts +44 -71
  35. package/src/sap/fe/core/actions/messageHandling.js +55 -36
  36. package/src/sap/fe/core/actions/messageHandling.ts +66 -46
  37. package/src/sap/fe/core/actions/operations.js +34 -15
  38. package/src/sap/fe/core/actions/operations.ts +48 -18
  39. package/src/sap/fe/core/actions/sticky.js +17 -4
  40. package/src/sap/fe/core/actions/sticky.ts +21 -4
  41. package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +69 -66
  42. package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +65 -0
  43. package/src/sap/fe/core/controllerextensions/EditFlow.js +1593 -1669
  44. package/src/sap/fe/core/controllerextensions/EditFlow.ts +1672 -0
  45. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +79 -54
  46. package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +61 -0
  47. package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +718 -779
  48. package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +783 -0
  49. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +796 -816
  50. package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +803 -0
  51. package/src/sap/fe/core/controllerextensions/InternalRouting.js +1004 -1005
  52. package/src/sap/fe/core/controllerextensions/InternalRouting.ts +978 -0
  53. package/src/sap/fe/core/controllerextensions/KPIManagement.js +487 -521
  54. package/src/sap/fe/core/controllerextensions/KPIManagement.ts +2 -2
  55. package/src/sap/fe/core/controllerextensions/MassEdit.js +141 -169
  56. package/src/sap/fe/core/controllerextensions/MassEdit.ts +156 -0
  57. package/src/sap/fe/core/controllerextensions/MessageHandler.js +233 -244
  58. package/src/sap/fe/core/controllerextensions/MessageHandler.ts +225 -0
  59. package/src/sap/fe/core/controllerextensions/PageReady.js +301 -336
  60. package/src/sap/fe/core/controllerextensions/PageReady.ts +12 -10
  61. package/src/sap/fe/core/controllerextensions/Paginator.js +188 -175
  62. package/src/sap/fe/core/controllerextensions/Paginator.ts +163 -0
  63. package/src/sap/fe/core/controllerextensions/Placeholder.js +157 -149
  64. package/src/sap/fe/core/controllerextensions/Placeholder.ts +151 -0
  65. package/src/sap/fe/core/controllerextensions/Routing.js +144 -125
  66. package/src/sap/fe/core/controllerextensions/Routing.ts +132 -0
  67. package/src/sap/fe/core/controllerextensions/RoutingListener.js +7 -6
  68. package/src/sap/fe/core/controllerextensions/RoutingListener.ts +3 -0
  69. package/src/sap/fe/core/controllerextensions/Share.js +230 -268
  70. package/src/sap/fe/core/controllerextensions/Share.ts +231 -0
  71. package/src/sap/fe/core/controllerextensions/SideEffects.js +592 -633
  72. package/src/sap/fe/core/controllerextensions/SideEffects.ts +8 -7
  73. package/src/sap/fe/core/controllerextensions/ViewState.js +788 -806
  74. package/src/sap/fe/core/controllerextensions/ViewState.ts +805 -0
  75. package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -2
  76. package/src/sap/fe/core/controls/ActionPartial.fragment.xml +2 -2
  77. package/src/sap/fe/core/controls/CommandExecution.js +67 -66
  78. package/src/sap/fe/core/controls/CommandExecution.ts +72 -0
  79. package/src/sap/fe/core/controls/ConditionalWrapper.js +90 -75
  80. package/src/sap/fe/core/controls/ConditionalWrapper.ts +83 -0
  81. package/src/sap/fe/core/controls/CustomQuickViewPage.js +130 -125
  82. package/src/sap/fe/core/controls/CustomQuickViewPage.ts +126 -0
  83. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +103 -112
  84. package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +101 -0
  85. package/src/sap/fe/core/controls/FieldWrapper.js +122 -135
  86. package/src/sap/fe/core/controls/FieldWrapper.ts +115 -0
  87. package/src/sap/fe/core/controls/FilterBar.js +162 -159
  88. package/src/sap/fe/core/controls/FilterBar.ts +143 -0
  89. package/src/sap/fe/core/controls/FormElementWrapper.js +45 -39
  90. package/src/sap/fe/core/controls/FormElementWrapper.ts +40 -0
  91. package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +37 -42
  92. package/src/sap/fe/core/controls/MultiValueParameterDelegate.ts +31 -0
  93. package/src/sap/fe/core/controls/filterbar/FilterContainer.js +126 -116
  94. package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +98 -0
  95. package/src/sap/fe/core/controls/filterbar/VisualFilter.js +241 -255
  96. package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +245 -0
  97. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +150 -141
  98. package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +125 -0
  99. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +335 -322
  100. package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +337 -0
  101. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +74 -74
  102. package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +70 -0
  103. package/src/sap/fe/core/converters/ConverterContext.js +348 -379
  104. package/src/sap/fe/core/converters/ConverterContext.ts +19 -16
  105. package/src/sap/fe/core/converters/ManifestSettings.js +12 -1
  106. package/src/sap/fe/core/converters/ManifestSettings.ts +12 -1
  107. package/src/sap/fe/core/converters/ManifestWrapper.js +354 -378
  108. package/src/sap/fe/core/converters/ManifestWrapper.ts +10 -0
  109. package/src/sap/fe/core/converters/MetaModelConverter.js +6 -4
  110. package/src/sap/fe/core/converters/MetaModelConverter.ts +5 -2
  111. package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
  112. package/src/sap/fe/core/converters/TemplateConverter.ts +2 -1
  113. package/src/sap/fe/core/converters/annotations/DataField.js +26 -12
  114. package/src/sap/fe/core/converters/annotations/DataField.ts +37 -13
  115. package/src/sap/fe/core/converters/controls/Common/Form.js +2 -2
  116. package/src/sap/fe/core/converters/controls/Common/Form.ts +4 -2
  117. package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
  118. package/src/sap/fe/core/converters/controls/Common/KPI.ts +3 -2
  119. package/src/sap/fe/core/converters/controls/Common/Table.js +130 -23
  120. package/src/sap/fe/core/converters/controls/Common/Table.ts +134 -29
  121. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +118 -53
  122. package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +156 -93
  123. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +161 -207
  124. package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +148 -206
  125. package/src/sap/fe/core/converters/helpers/Aggregation.js +115 -133
  126. package/src/sap/fe/core/converters/helpers/BindingHelper.js +20 -6
  127. package/src/sap/fe/core/converters/helpers/BindingHelper.ts +16 -4
  128. package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +12 -1
  129. package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +11 -0
  130. package/src/sap/fe/core/converters/helpers/Key.js +42 -57
  131. package/src/sap/fe/core/converters/helpers/Key.ts +1 -1
  132. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +25 -4
  133. package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +20 -3
  134. package/src/sap/fe/core/converters/templates/ListReportConverter.js +10 -4
  135. package/src/sap/fe/core/converters/templates/ListReportConverter.ts +15 -4
  136. package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +7 -5
  137. package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +5 -1
  138. package/src/sap/fe/core/designtime/AppComponent.designtime.js +92 -98
  139. package/src/sap/fe/core/designtime/AppComponent.designtime.ts +91 -0
  140. package/src/sap/fe/core/formatters/CollaborationFormatter.js +104 -0
  141. package/src/sap/fe/core/formatters/CollaborationFormatter.ts +60 -0
  142. package/src/sap/fe/core/formatters/TableFormatter.js +53 -2
  143. package/src/sap/fe/core/formatters/TableFormatter.ts +51 -0
  144. package/src/sap/fe/core/fpm/Component.js +50 -54
  145. package/src/sap/fe/core/fpm/Component.ts +48 -0
  146. package/src/sap/fe/core/helpers/AppStartupHelper.js +323 -309
  147. package/src/sap/fe/core/helpers/AppStartupHelper.ts +363 -337
  148. package/src/sap/fe/core/helpers/BindingExpression.js +7 -7
  149. package/src/sap/fe/core/helpers/BindingExpression.ts +7 -7
  150. package/src/sap/fe/core/helpers/ClassSupport.js +186 -62
  151. package/src/sap/fe/core/helpers/ClassSupport.ts +168 -52
  152. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +5 -4
  153. package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -5
  154. package/src/sap/fe/core/helpers/FPMHelper.js +1 -1
  155. package/src/sap/fe/core/helpers/FPMHelper.ts +1 -1
  156. package/src/sap/fe/core/helpers/MassEditHelper.js +601 -684
  157. package/src/sap/fe/core/helpers/MassEditHelper.ts +699 -0
  158. package/src/sap/fe/core/helpers/ModelHelper.js +25 -1
  159. package/src/sap/fe/core/helpers/ModelHelper.ts +23 -0
  160. package/src/sap/fe/core/helpers/SemanticDateOperators.js +5 -1
  161. package/src/sap/fe/core/helpers/SemanticDateOperators.ts +4 -0
  162. package/src/sap/fe/core/library.js +426 -451
  163. package/src/sap/fe/core/library.support.js +22 -33
  164. package/src/sap/fe/core/library.support.ts +23 -0
  165. package/src/sap/fe/core/library.ts +420 -0
  166. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +5 -3
  167. package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +4 -1
  168. package/src/sap/fe/core/messagebundle.properties +22 -5
  169. package/src/sap/fe/core/messagebundle_ar.properties +27 -7
  170. package/src/sap/fe/core/messagebundle_bg.properties +27 -7
  171. package/src/sap/fe/core/messagebundle_ca.properties +27 -7
  172. package/src/sap/fe/core/messagebundle_cs.properties +27 -7
  173. package/src/sap/fe/core/messagebundle_cy.properties +27 -7
  174. package/src/sap/fe/core/messagebundle_da.properties +27 -7
  175. package/src/sap/fe/core/messagebundle_de.properties +27 -7
  176. package/src/sap/fe/core/messagebundle_el.properties +27 -7
  177. package/src/sap/fe/core/messagebundle_en.properties +27 -7
  178. package/src/sap/fe/core/messagebundle_en_GB.properties +27 -7
  179. package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +27 -7
  180. package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +27 -7
  181. package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +27 -7
  182. package/src/sap/fe/core/messagebundle_es.properties +27 -7
  183. package/src/sap/fe/core/messagebundle_es_MX.properties +27 -7
  184. package/src/sap/fe/core/messagebundle_et.properties +27 -7
  185. package/src/sap/fe/core/messagebundle_fi.properties +28 -8
  186. package/src/sap/fe/core/messagebundle_fr.properties +28 -8
  187. package/src/sap/fe/core/messagebundle_fr_CA.properties +29 -9
  188. package/src/sap/fe/core/messagebundle_hi.properties +27 -7
  189. package/src/sap/fe/core/messagebundle_hr.properties +27 -7
  190. package/src/sap/fe/core/messagebundle_hu.properties +27 -7
  191. package/src/sap/fe/core/messagebundle_id.properties +27 -7
  192. package/src/sap/fe/core/messagebundle_it.properties +27 -7
  193. package/src/sap/fe/core/messagebundle_iw.properties +27 -7
  194. package/src/sap/fe/core/messagebundle_ja.properties +26 -6
  195. package/src/sap/fe/core/messagebundle_kk.properties +27 -7
  196. package/src/sap/fe/core/messagebundle_ko.properties +27 -7
  197. package/src/sap/fe/core/messagebundle_lt.properties +27 -7
  198. package/src/sap/fe/core/messagebundle_lv.properties +28 -8
  199. package/src/sap/fe/core/messagebundle_ms.properties +27 -7
  200. package/src/sap/fe/core/messagebundle_nl.properties +27 -7
  201. package/src/sap/fe/core/messagebundle_no.properties +27 -7
  202. package/src/sap/fe/core/messagebundle_pl.properties +27 -7
  203. package/src/sap/fe/core/messagebundle_pt.properties +28 -8
  204. package/src/sap/fe/core/messagebundle_pt_PT.properties +27 -7
  205. package/src/sap/fe/core/messagebundle_ro.properties +27 -7
  206. package/src/sap/fe/core/messagebundle_ru.properties +27 -7
  207. package/src/sap/fe/core/messagebundle_sh.properties +27 -7
  208. package/src/sap/fe/core/messagebundle_sk.properties +27 -7
  209. package/src/sap/fe/core/messagebundle_sl.properties +27 -7
  210. package/src/sap/fe/core/messagebundle_sv.properties +27 -7
  211. package/src/sap/fe/core/messagebundle_th.properties +26 -6
  212. package/src/sap/fe/core/messagebundle_tr.properties +30 -10
  213. package/src/sap/fe/core/messagebundle_uk.properties +27 -7
  214. package/src/sap/fe/core/messagebundle_vi.properties +27 -7
  215. package/src/sap/fe/core/messagebundle_zh_CN.properties +27 -7
  216. package/src/sap/fe/core/messagebundle_zh_TW.properties +27 -7
  217. package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +45 -71
  218. package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +154 -192
  219. package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +4 -4
  220. package/src/sap/fe/core/services/EnvironmentServiceFactory.js +66 -92
  221. package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +1 -1
  222. package/src/sap/fe/core/services/NavigationServiceFactory.js +284 -339
  223. package/src/sap/fe/core/services/NavigationServiceFactory.ts +10 -13
  224. package/src/sap/fe/core/services/ResourceModelServiceFactory.js +67 -102
  225. package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +5 -2
  226. package/src/sap/fe/core/services/RoutingServiceFactory.js +754 -814
  227. package/src/sap/fe/core/services/RoutingServiceFactory.ts +13 -13
  228. package/src/sap/fe/core/services/ShellServicesFactory.js +649 -736
  229. package/src/sap/fe/core/services/ShellServicesFactory.ts +7 -4
  230. package/src/sap/fe/core/services/SideEffectsServiceFactory.js +567 -592
  231. package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +22 -3
  232. package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +354 -386
  233. package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +21 -14
  234. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +1 -1
  235. package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +1 -1
  236. package/src/sap/fe/core/support/CommonHelper.js +1 -1
  237. package/src/sap/fe/core/support/CommonHelper.ts +1 -1
  238. package/src/sap/fe/core/support/Diagnostics.js +36 -48
  239. package/src/sap/fe/core/templating/DataModelPathHelper.js +93 -85
  240. package/src/sap/fe/core/templating/DataModelPathHelper.ts +104 -95
  241. package/src/sap/fe/core/templating/FilterHelper.js +25 -32
  242. package/src/sap/fe/core/templating/FilterHelper.ts +36 -35
  243. package/src/sap/fe/core/templating/PropertyHelper.js +2 -2
  244. package/src/sap/fe/core/templating/PropertyHelper.ts +1 -1
  245. package/src/sap/fe/core/templating/UIFormatters.js +32 -26
  246. package/src/sap/fe/core/templating/UIFormatters.ts +37 -24
@@ -1,128 +1,147 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- (c) Copyright 2009-2021 SAP SE. All rights reserved
4
-
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
5
4
  */
6
- sap.ui.define(["sap/ui/core/mvc/ControllerExtension", "sap/ui/core/mvc/OverrideExecution", "sap/fe/core/helpers/ModelHelper"], function(
7
- ControllerExtension,
8
- OverrideExecution,
9
- ModelHelper
10
- ) {
11
- "use strict";
12
-
13
- /**
14
- * @class A controller extension offering hooks into the routing flow of the application
15
- *
16
- * @name sap.fe.core.controllerextensions.Routing
17
- * @hideconstructor
18
- * @public
19
- * @since 1.86.0
20
- */
21
- return ControllerExtension.extend("sap.fe.core.controllerextensions.Routing", {
22
- metadata: {
23
- methods: {
24
- "onBeforeNavigation": { "public": true, "final": false, overrideExecution: OverrideExecution.After },
25
- "navigate": { "public": true, "final": true },
26
- "onBeforeBinding": { "public": true, "final": false, overrideExecution: OverrideExecution.After },
27
- "onAfterBinding": { "public": true, "final": false, overrideExecution: OverrideExecution.After },
28
- "navigateToRoute": { "public": true, "final": true }
29
- }
30
- },
31
-
32
- /**
33
- * @private
34
- * @name sap.fe.core.controllerextensions.Routing.getMetadata
35
- * @function
36
- */
37
- /**
38
- * @private
39
- * @name sap.fe.core.controllerextensions.Routing.extend
40
- * @function
41
- */
42
-
43
- /**
44
- * This function can be used to intercept the routing event happening during the normal process of navigating from one page to another.
45
- *
46
- * If declared as an extension, it allows you to intercept and change the normal navigation flow.
47
- * If you decide to do your own navigation processing, you can return `true` to prevent the default routing behavior.
48
- *
49
- * This function is meant to be individually overridden by consuming controllers, but not to be called directly.
50
- * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
51
- *
52
- * @param {object} mNavigationParameters Object containing row context and page context
53
- * @param {sap.ui.model.odata.v4.Context} mNavigationParameters.bindingContext The currently selected context
54
- * @returns {boolean} `true` to prevent the default execution, false to keep the standard behavior
55
- * @alias sap.fe.core.controllerextensions.Routing#onBeforeNavigation
56
- * @public
57
- * @since 1.86.0
58
- */
59
- onBeforeNavigation: function(mNavigationParameters) {
60
- // to be overriden by the application
61
- return false;
62
- },
63
-
64
- /**
65
- * Allows navigation to a specific context.
66
- *
67
- * @param {sap.ui.model.odata.v4.Context} oContext Object containing the context to be navigated
68
- * @alias sap.fe.core.controllerextensions.Routing#navigate
69
- * @public
70
- * @since 1.90.0
71
- */
72
- navigate: function(oContext) {
73
- this.base._routing.navigateToContext(oContext);
74
- },
75
-
76
- /**
77
- * This function is used to intercept the routing event before binding a page.
78
- *
79
- * If it is declared as an extension, it allows you to intercept and change the normal flow of binding.
80
- *
81
- * This function is not called directly, but overridden separately by consuming controllers.
82
- * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
83
- *
84
- * @param {object} oContext Object containing the context for the navigation
85
- * @alias sap.fe.core.controllerextensions.Routing#onBeforeBinding
86
- * @public
87
- * @since 1.90.0
88
- */
89
- onBeforeBinding: function(oContext) {
90
- // to be overriden by the application
91
- },
92
-
93
- /**
94
- * This function is used to intercept the routing event after binding a page.
95
- *
96
- * If it is declared as an extension, it allows you to intercept and change the normal flow of binding.
97
- *
98
- * This function is not called directly, but overridden separately by consuming controllers.
99
- * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
100
- *
101
- * @param {object} oContext Object containing the context to be navigated
102
- * @alias sap.fe.core.controllerextensions.Routing#onAfterBinding
103
- * @public
104
- * @since 1.90.0
105
- */
106
-
107
- onAfterBinding: function(oContext) {
108
- // to be overriden by the application
109
- },
110
-
111
- /**
112
- * Navigate to another target.
113
- *
114
- * @alias sap.fe.core.controllerextensions.Routing#navigateToRoute
115
- * @param {string} sTargetRouteName Name of the target route
116
- * @param {object} [oParameters] Parameters to be used with route to create the target hash
117
- * @returns {Promise} Promise that is resolved when the navigation is finalized
118
- *
119
- * @public
120
- */
121
- navigateToRoute: function(sTargetRouteName, oParameters) {
122
- var oMetaModel = this.base.getModel().getMetaModel();
123
- var bIsStickyMode = ModelHelper.isStickySessionSupported(oMetaModel);
124
- oParameters.bIsStickyMode = bIsStickyMode;
125
- return this.base._routing.navigateToRoute(sTargetRouteName, oParameters);
126
- }
127
- });
128
- });
5
+ sap.ui.define(["sap/ui/core/mvc/ControllerExtension", "sap/ui/core/mvc/OverrideExecution", "sap/fe/core/helpers/ModelHelper", "sap/fe/core/helpers/ClassSupport", "sap/fe/core/controllerextensions/ControllerExtensionMetadata"], function (ControllerExtension, OverrideExecution, ModelHelper, ClassSupport, ControllerExtensionMetadata) {
6
+ "use strict";
7
+
8
+ var _dec, _dec2, _dec3, _dec4, _class, _class2;
9
+
10
+ var UI5Class = ClassSupport.UI5Class;
11
+ var Public = ClassSupport.Public;
12
+ var Final = ClassSupport.Final;
13
+ var Extensible = ClassSupport.Extensible;
14
+
15
+ 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); }
16
+
17
+ function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
18
+
19
+ function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
20
+
21
+ /**
22
+ * A controller extension offering hooks into the routing flow of the application
23
+ *
24
+ * @hideconstructor
25
+ * @public
26
+ * @since 1.86.0
27
+ */
28
+ var Routing = (_dec = UI5Class("sap.fe.core.controllerextensions.Routing", ControllerExtensionMetadata), _dec2 = Extensible(OverrideExecution.After), _dec3 = Extensible(OverrideExecution.After), _dec4 = Extensible(OverrideExecution.After), _dec(_class = (_class2 = /*#__PURE__*/function (_ControllerExtension) {
29
+ _inherits(Routing, _ControllerExtension);
30
+
31
+ function Routing() {
32
+ return _ControllerExtension.apply(this, arguments) || this;
33
+ }
34
+
35
+ var _proto = Routing.prototype;
36
+
37
+ /**
38
+ * @private
39
+ * @name sap.fe.core.controllerextensions.Routing.getMetadata
40
+ * @function
41
+ */
42
+
43
+ /**
44
+ * @private
45
+ * @name sap.fe.core.controllerextensions.Routing.extend
46
+ * @function
47
+ */
48
+
49
+ /**
50
+ * This function can be used to intercept the routing event happening during the normal process of navigating from one page to another.
51
+ *
52
+ * If declared as an extension, it allows you to intercept and change the normal navigation flow.
53
+ * If you decide to do your own navigation processing, you can return `true` to prevent the default routing behavior.
54
+ *
55
+ * This function is meant to be individually overridden by consuming controllers, but not to be called directly.
56
+ * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
57
+ *
58
+ * @param {object} mNavigationParameters Object containing row context and page context
59
+ * @param {sap.ui.model.odata.v4.Context} mNavigationParameters.bindingContext The currently selected context
60
+ * @returns {boolean} `true` to prevent the default execution, false to keep the standard behavior
61
+ * @alias sap.fe.core.controllerextensions.Routing#onBeforeNavigation
62
+ * @public
63
+ * @since 1.86.0
64
+ */
65
+ _proto. // eslint-disable-next-line @typescript-eslint/no-unused-vars
66
+ onBeforeNavigation = function onBeforeNavigation(mNavigationParameters) {
67
+ // to be overriden by the application
68
+ return false;
69
+ }
70
+ /**
71
+ * Allows navigation to a specific context.
72
+ *
73
+ * @param {sap.ui.model.odata.v4.Context} oContext Object containing the context to be navigated
74
+ * @alias sap.fe.core.controllerextensions.Routing#navigate
75
+ * @public
76
+ * @since 1.90.0
77
+ */
78
+ ;
79
+
80
+ _proto.navigate = function navigate(oContext) {
81
+ this.base._routing.navigateToContext(oContext);
82
+ }
83
+ /**
84
+ * This function is used to intercept the routing event before binding a page.
85
+ *
86
+ * If it is declared as an extension, it allows you to intercept and change the normal flow of binding.
87
+ *
88
+ * This function is not called directly, but overridden separately by consuming controllers.
89
+ * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
90
+ *
91
+ * @param {object} oContext Object containing the context for the navigation
92
+ * @alias sap.fe.core.controllerextensions.Routing#onBeforeBinding
93
+ * @public
94
+ * @since 1.90.0
95
+ */
96
+ ;
97
+
98
+ _proto. // eslint-disable-next-line @typescript-eslint/no-unused-vars
99
+ onBeforeBinding = function onBeforeBinding(oContext) {// to be overriden by the application
100
+ }
101
+ /**
102
+ * This function is used to intercept the routing event after binding a page.
103
+ *
104
+ * If it is declared as an extension, it allows you to intercept and change the normal flow of binding.
105
+ *
106
+ * This function is not called directly, but overridden separately by consuming controllers.
107
+ * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
108
+ *
109
+ * @param {object} oContext Object containing the context to be navigated
110
+ * @alias sap.fe.core.controllerextensions.Routing#onAfterBinding
111
+ * @public
112
+ * @since 1.90.0
113
+ */
114
+ ;
115
+
116
+ _proto. // eslint-disable-next-line @typescript-eslint/no-unused-vars
117
+ onAfterBinding = function onAfterBinding(oContext) {// to be overriden by the application
118
+ }
119
+ /**
120
+ * Navigate to another target.
121
+ *
122
+ * @alias sap.fe.core.controllerextensions.Routing#navigateToRoute
123
+ * @param sTargetRouteName Name of the target route
124
+ * @param oParameters Parameters to be used with route to create the target hash
125
+ * @returns {Promise} Promise that is resolved when the navigation is finalized
126
+ *
127
+ * @public
128
+ */
129
+ ;
130
+
131
+ _proto.navigateToRoute = function navigateToRoute(sTargetRouteName, oParameters) {
132
+ var oMetaModel = this.base.getModel().getMetaModel();
133
+ var bIsStickyMode = ModelHelper.isStickySessionSupported(oMetaModel);
134
+
135
+ if (!oParameters) {
136
+ oParameters = {};
137
+ }
138
+
139
+ oParameters.bIsStickyMode = bIsStickyMode;
140
+ return this.base._routing.navigateToRoute(sTargetRouteName, oParameters);
141
+ };
142
+
143
+ return Routing;
144
+ }(ControllerExtension), (_applyDecoratedDescriptor(_class2.prototype, "onBeforeNavigation", [Public, _dec2], Object.getOwnPropertyDescriptor(_class2.prototype, "onBeforeNavigation"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "navigate", [Public, Final], Object.getOwnPropertyDescriptor(_class2.prototype, "navigate"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onBeforeBinding", [Public, _dec3], Object.getOwnPropertyDescriptor(_class2.prototype, "onBeforeBinding"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "onAfterBinding", [Public, _dec4], Object.getOwnPropertyDescriptor(_class2.prototype, "onAfterBinding"), _class2.prototype), _applyDecoratedDescriptor(_class2.prototype, "navigateToRoute", [Public, Final], Object.getOwnPropertyDescriptor(_class2.prototype, "navigateToRoute"), _class2.prototype)), _class2)) || _class);
145
+ return Routing;
146
+ }, false);
147
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJvdXRpbmcudHMiXSwibmFtZXMiOlsiUm91dGluZyIsIlVJNUNsYXNzIiwiQ29udHJvbGxlckV4dGVuc2lvbk1ldGFkYXRhIiwiRXh0ZW5zaWJsZSIsIk92ZXJyaWRlRXhlY3V0aW9uIiwiQWZ0ZXIiLCJvbkJlZm9yZU5hdmlnYXRpb24iLCJtTmF2aWdhdGlvblBhcmFtZXRlcnMiLCJuYXZpZ2F0ZSIsIm9Db250ZXh0IiwiYmFzZSIsIl9yb3V0aW5nIiwibmF2aWdhdGVUb0NvbnRleHQiLCJvbkJlZm9yZUJpbmRpbmciLCJvbkFmdGVyQmluZGluZyIsIm5hdmlnYXRlVG9Sb3V0ZSIsInNUYXJnZXRSb3V0ZU5hbWUiLCJvUGFyYW1ldGVycyIsIm9NZXRhTW9kZWwiLCJnZXRNb2RlbCIsImdldE1ldGFNb2RlbCIsImJJc1N0aWNreU1vZGUiLCJNb2RlbEhlbHBlciIsImlzU3RpY2t5U2Vzc2lvblN1cHBvcnRlZCIsIkNvbnRyb2xsZXJFeHRlbnNpb24iLCJQdWJsaWMiLCJGaW5hbCJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtNQUVNQSxPLFdBRExDLFFBQVEsQ0FBQywwQ0FBRCxFQUE2Q0MsMkJBQTdDLEMsVUErQlBDLFVBQVUsQ0FBQ0MsaUJBQWlCLENBQUNDLEtBQW5CLEMsVUFtQ1ZGLFVBQVUsQ0FBQ0MsaUJBQWlCLENBQUNDLEtBQW5CLEMsVUFvQlZGLFVBQVUsQ0FBQ0MsaUJBQWlCLENBQUNDLEtBQW5CLEM7Ozs7Ozs7OztBQW5GWDtBQUNEO0FBQ0E7QUFDQTtBQUNBOztBQUNDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7O0FBRUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7WUFHQztBQUNBQyxJQUFBQSxrQixHQUhBLDRCQUdtQkMscUJBSG5CLEVBR3VFO0FBQ3RFO0FBQ0EsYUFBTyxLQUFQO0FBQ0E7QUFFRDtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7V0FHQ0MsUSxHQUZBLGtCQUVTQyxRQUZULEVBRTRCO0FBQzNCLFdBQUtDLElBQUwsQ0FBVUMsUUFBVixDQUFtQkMsaUJBQW5CLENBQXFDSCxRQUFyQztBQUNBO0FBRUQ7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztZQUdDO0FBQ0FJLElBQUFBLGUsR0FIQSx5QkFHZ0JKLFFBSGhCLEVBR2tDLENBQ2pDO0FBQ0E7QUFFRDtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O1lBR0M7QUFDQUssSUFBQUEsYyxHQUhBLHdCQUdlTCxRQUhmLEVBR2lDLENBQ2hDO0FBQ0E7QUFFRDtBQUNEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O1dBR0NNLGUsR0FGQSx5QkFFZ0JDLGdCQUZoQixFQUUwQ0MsV0FGMUMsRUFFNkQ7QUFDNUQsVUFBTUMsVUFBVSxHQUFHLEtBQUtSLElBQUwsQ0FBVVMsUUFBVixHQUFxQkMsWUFBckIsRUFBbkI7QUFDQSxVQUFNQyxhQUFhLEdBQUdDLFdBQVcsQ0FBQ0Msd0JBQVosQ0FBcUNMLFVBQXJDLENBQXRCOztBQUNBLFVBQUksQ0FBQ0QsV0FBTCxFQUFrQjtBQUNqQkEsUUFBQUEsV0FBVyxHQUFHLEVBQWQ7QUFDQTs7QUFDREEsTUFBQUEsV0FBVyxDQUFDSSxhQUFaLEdBQTRCQSxhQUE1QjtBQUNBLGFBQU8sS0FBS1gsSUFBTCxDQUFVQyxRQUFWLENBQW1CSSxlQUFuQixDQUFtQ0MsZ0JBQW5DLEVBQXFEQyxXQUFyRCxDQUFQO0FBQ0EsSzs7O0lBL0dvQk8sbUIsd0VBNkJwQkMsTSxrS0FnQkFBLE0sRUFDQUMsSyx3SkFrQkFELE0scUtBb0JBQSxNLHFLQWlCQUEsTSxFQUNBQyxLO1NBWWExQixPIiwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ29udHJvbGxlckV4dGVuc2lvbiBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL0NvbnRyb2xsZXJFeHRlbnNpb25cIjtcbmltcG9ydCBPdmVycmlkZUV4ZWN1dGlvbiBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL092ZXJyaWRlRXhlY3V0aW9uXCI7XG5pbXBvcnQgTW9kZWxIZWxwZXIgZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvTW9kZWxIZWxwZXJcIjtcbmltcG9ydCB7IEV4dGVuc2libGUsIEZpbmFsLCBQdWJsaWMsIFVJNUNsYXNzIH0gZnJvbSBcInNhcC9mZS9jb3JlL2hlbHBlcnMvQ2xhc3NTdXBwb3J0XCI7XG5pbXBvcnQgQ29udHJvbGxlckV4dGVuc2lvbk1ldGFkYXRhIGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9Db250cm9sbGVyRXh0ZW5zaW9uTWV0YWRhdGFcIjtcbmltcG9ydCBQYWdlQ29udHJvbGxlciBmcm9tIFwic2FwL2ZlL2NvcmUvUGFnZUNvbnRyb2xsZXJcIjtcbmltcG9ydCBDb250ZXh0IGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvQ29udGV4dFwiO1xuaW1wb3J0IE9EYXRhTWV0YU1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvb2RhdGEvdjQvT0RhdGFNZXRhTW9kZWxcIjtcblxuLyoqXG4gKiBBIGNvbnRyb2xsZXIgZXh0ZW5zaW9uIG9mZmVyaW5nIGhvb2tzIGludG8gdGhlIHJvdXRpbmcgZmxvdyBvZiB0aGUgYXBwbGljYXRpb25cbiAqXG4gKiBAaGlkZWNvbnN0cnVjdG9yXG4gKiBAcHVibGljXG4gKiBAc2luY2UgMS44Ni4wXG4gKi9cbkBVSTVDbGFzcyhcInNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zLlJvdXRpbmdcIiwgQ29udHJvbGxlckV4dGVuc2lvbk1ldGFkYXRhKVxuY2xhc3MgUm91dGluZyBleHRlbmRzIENvbnRyb2xsZXJFeHRlbnNpb24ge1xuXHRwcml2YXRlIGJhc2UhOiBQYWdlQ29udHJvbGxlcjtcblx0LyoqXG5cdCAqIEBwcml2YXRlXG5cdCAqIEBuYW1lIHNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zLlJvdXRpbmcuZ2V0TWV0YWRhdGFcblx0ICogQGZ1bmN0aW9uXG5cdCAqL1xuXHQvKipcblx0ICogQHByaXZhdGVcblx0ICogQG5hbWUgc2FwLmZlLmNvcmUuY29udHJvbGxlcmV4dGVuc2lvbnMuUm91dGluZy5leHRlbmRcblx0ICogQGZ1bmN0aW9uXG5cdCAqL1xuXG5cdC8qKlxuXHQgKiBUaGlzIGZ1bmN0aW9uIGNhbiBiZSB1c2VkIHRvIGludGVyY2VwdCB0aGUgcm91dGluZyBldmVudCBoYXBwZW5pbmcgZHVyaW5nIHRoZSBub3JtYWwgcHJvY2VzcyBvZiBuYXZpZ2F0aW5nIGZyb20gb25lIHBhZ2UgdG8gYW5vdGhlci5cblx0ICpcblx0ICogSWYgZGVjbGFyZWQgYXMgYW4gZXh0ZW5zaW9uLCBpdCBhbGxvd3MgeW91IHRvIGludGVyY2VwdCBhbmQgY2hhbmdlIHRoZSBub3JtYWwgbmF2aWdhdGlvbiBmbG93LlxuXHQgKiBJZiB5b3UgZGVjaWRlIHRvIGRvIHlvdXIgb3duIG5hdmlnYXRpb24gcHJvY2Vzc2luZywgeW91IGNhbiByZXR1cm4gYHRydWVgIHRvIHByZXZlbnQgdGhlIGRlZmF1bHQgcm91dGluZyBiZWhhdmlvci5cblx0ICpcblx0ICogVGhpcyBmdW5jdGlvbiBpcyBtZWFudCB0byBiZSBpbmRpdmlkdWFsbHkgb3ZlcnJpZGRlbiBieSBjb25zdW1pbmcgY29udHJvbGxlcnMsIGJ1dCBub3QgdG8gYmUgY2FsbGVkIGRpcmVjdGx5LlxuXHQgKiBUaGUgb3ZlcnJpZGUgZXhlY3V0aW9uIGlzOiB7QGxpbmsgc2FwLnVpLmNvcmUubXZjLk92ZXJyaWRlRXhlY3V0aW9uLkFmdGVyfS5cblx0ICpcblx0ICogQHBhcmFtIHtvYmplY3R9IG1OYXZpZ2F0aW9uUGFyYW1ldGVycyBPYmplY3QgY29udGFpbmluZyByb3cgY29udGV4dCBhbmQgcGFnZSBjb250ZXh0XG5cdCAqIEBwYXJhbSB7c2FwLnVpLm1vZGVsLm9kYXRhLnY0LkNvbnRleHR9IG1OYXZpZ2F0aW9uUGFyYW1ldGVycy5iaW5kaW5nQ29udGV4dCBUaGUgY3VycmVudGx5IHNlbGVjdGVkIGNvbnRleHRcblx0ICogQHJldHVybnMge2Jvb2xlYW59IGB0cnVlYCB0byBwcmV2ZW50IHRoZSBkZWZhdWx0IGV4ZWN1dGlvbiwgZmFsc2UgdG8ga2VlcCB0aGUgc3RhbmRhcmQgYmVoYXZpb3Jcblx0ICogQGFsaWFzIHNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zLlJvdXRpbmcjb25CZWZvcmVOYXZpZ2F0aW9uXG5cdCAqIEBwdWJsaWNcblx0ICogQHNpbmNlIDEuODYuMFxuXHQgKi9cblx0QFB1YmxpY1xuXHRARXh0ZW5zaWJsZShPdmVycmlkZUV4ZWN1dGlvbi5BZnRlcilcblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuXHRvbkJlZm9yZU5hdmlnYXRpb24obU5hdmlnYXRpb25QYXJhbWV0ZXJzOiB7IGJpbmRpbmdDb250ZXh0OiBDb250ZXh0IH0pIHtcblx0XHQvLyB0byBiZSBvdmVycmlkZW4gYnkgdGhlIGFwcGxpY2F0aW9uXG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0LyoqXG5cdCAqIEFsbG93cyBuYXZpZ2F0aW9uIHRvIGEgc3BlY2lmaWMgY29udGV4dC5cblx0ICpcblx0ICogQHBhcmFtIHtzYXAudWkubW9kZWwub2RhdGEudjQuQ29udGV4dH0gb0NvbnRleHQgT2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbnRleHQgdG8gYmUgbmF2aWdhdGVkXG5cdCAqIEBhbGlhcyBzYXAuZmUuY29yZS5jb250cm9sbGVyZXh0ZW5zaW9ucy5Sb3V0aW5nI25hdmlnYXRlXG5cdCAqIEBwdWJsaWNcblx0ICogQHNpbmNlIDEuOTAuMFxuXHQgKi9cblx0QFB1YmxpY1xuXHRARmluYWxcblx0bmF2aWdhdGUob0NvbnRleHQ6IENvbnRleHQpIHtcblx0XHR0aGlzLmJhc2UuX3JvdXRpbmcubmF2aWdhdGVUb0NvbnRleHQob0NvbnRleHQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBpbnRlcmNlcHQgdGhlIHJvdXRpbmcgZXZlbnQgYmVmb3JlIGJpbmRpbmcgYSBwYWdlLlxuXHQgKlxuXHQgKiBJZiBpdCBpcyBkZWNsYXJlZCBhcyBhbiBleHRlbnNpb24sIGl0IGFsbG93cyB5b3UgdG8gaW50ZXJjZXB0IGFuZCBjaGFuZ2UgdGhlIG5vcm1hbCBmbG93IG9mIGJpbmRpbmcuXG5cdCAqXG5cdCAqIFRoaXMgZnVuY3Rpb24gaXMgbm90IGNhbGxlZCBkaXJlY3RseSwgYnV0IG92ZXJyaWRkZW4gc2VwYXJhdGVseSBieSBjb25zdW1pbmcgY29udHJvbGxlcnMuXG5cdCAqIFRoZSBvdmVycmlkZSBleGVjdXRpb24gaXM6IHtAbGluayBzYXAudWkuY29yZS5tdmMuT3ZlcnJpZGVFeGVjdXRpb24uQWZ0ZXJ9LlxuXHQgKlxuXHQgKiBAcGFyYW0ge29iamVjdH0gb0NvbnRleHQgT2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNvbnRleHQgZm9yIHRoZSBuYXZpZ2F0aW9uXG5cdCAqIEBhbGlhcyBzYXAuZmUuY29yZS5jb250cm9sbGVyZXh0ZW5zaW9ucy5Sb3V0aW5nI29uQmVmb3JlQmluZGluZ1xuXHQgKiBAcHVibGljXG5cdCAqIEBzaW5jZSAxLjkwLjBcblx0ICovXG5cdEBQdWJsaWNcblx0QEV4dGVuc2libGUoT3ZlcnJpZGVFeGVjdXRpb24uQWZ0ZXIpXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcblx0b25CZWZvcmVCaW5kaW5nKG9Db250ZXh0OiBvYmplY3QpIHtcblx0XHQvLyB0byBiZSBvdmVycmlkZW4gYnkgdGhlIGFwcGxpY2F0aW9uXG5cdH1cblxuXHQvKipcblx0ICogVGhpcyBmdW5jdGlvbiBpcyB1c2VkIHRvIGludGVyY2VwdCB0aGUgcm91dGluZyBldmVudCBhZnRlciBiaW5kaW5nIGEgcGFnZS5cblx0ICpcblx0ICogSWYgaXQgaXMgZGVjbGFyZWQgYXMgYW4gZXh0ZW5zaW9uLCBpdCBhbGxvd3MgeW91IHRvIGludGVyY2VwdCBhbmQgY2hhbmdlIHRoZSBub3JtYWwgZmxvdyBvZiBiaW5kaW5nLlxuXHQgKlxuXHQgKiBUaGlzIGZ1bmN0aW9uIGlzIG5vdCBjYWxsZWQgZGlyZWN0bHksIGJ1dCBvdmVycmlkZGVuIHNlcGFyYXRlbHkgYnkgY29uc3VtaW5nIGNvbnRyb2xsZXJzLlxuXHQgKiBUaGUgb3ZlcnJpZGUgZXhlY3V0aW9uIGlzOiB7QGxpbmsgc2FwLnVpLmNvcmUubXZjLk92ZXJyaWRlRXhlY3V0aW9uLkFmdGVyfS5cblx0ICpcblx0ICogQHBhcmFtIHtvYmplY3R9IG9Db250ZXh0IE9iamVjdCBjb250YWluaW5nIHRoZSBjb250ZXh0IHRvIGJlIG5hdmlnYXRlZFxuXHQgKiBAYWxpYXMgc2FwLmZlLmNvcmUuY29udHJvbGxlcmV4dGVuc2lvbnMuUm91dGluZyNvbkFmdGVyQmluZGluZ1xuXHQgKiBAcHVibGljXG5cdCAqIEBzaW5jZSAxLjkwLjBcblx0ICovXG5cdEBQdWJsaWNcblx0QEV4dGVuc2libGUoT3ZlcnJpZGVFeGVjdXRpb24uQWZ0ZXIpXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcblx0b25BZnRlckJpbmRpbmcob0NvbnRleHQ6IG9iamVjdCkge1xuXHRcdC8vIHRvIGJlIG92ZXJyaWRlbiBieSB0aGUgYXBwbGljYXRpb25cblx0fVxuXG5cdC8qKlxuXHQgKiBOYXZpZ2F0ZSB0byBhbm90aGVyIHRhcmdldC5cblx0ICpcblx0ICogQGFsaWFzIHNhcC5mZS5jb3JlLmNvbnRyb2xsZXJleHRlbnNpb25zLlJvdXRpbmcjbmF2aWdhdGVUb1JvdXRlXG5cdCAqIEBwYXJhbSBzVGFyZ2V0Um91dGVOYW1lIE5hbWUgb2YgdGhlIHRhcmdldCByb3V0ZVxuXHQgKiBAcGFyYW0gb1BhcmFtZXRlcnMgUGFyYW1ldGVycyB0byBiZSB1c2VkIHdpdGggcm91dGUgdG8gY3JlYXRlIHRoZSB0YXJnZXQgaGFzaFxuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX0gUHJvbWlzZSB0aGF0IGlzIHJlc29sdmVkIHdoZW4gdGhlIG5hdmlnYXRpb24gaXMgZmluYWxpemVkXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEBQdWJsaWNcblx0QEZpbmFsXG5cdG5hdmlnYXRlVG9Sb3V0ZShzVGFyZ2V0Um91dGVOYW1lOiBzdHJpbmcsIG9QYXJhbWV0ZXJzPzogYW55KSB7XG5cdFx0Y29uc3Qgb01ldGFNb2RlbCA9IHRoaXMuYmFzZS5nZXRNb2RlbCgpLmdldE1ldGFNb2RlbCgpIGFzIE9EYXRhTWV0YU1vZGVsO1xuXHRcdGNvbnN0IGJJc1N0aWNreU1vZGUgPSBNb2RlbEhlbHBlci5pc1N0aWNreVNlc3Npb25TdXBwb3J0ZWQob01ldGFNb2RlbCk7XG5cdFx0aWYgKCFvUGFyYW1ldGVycykge1xuXHRcdFx0b1BhcmFtZXRlcnMgPSB7fTtcblx0XHR9XG5cdFx0b1BhcmFtZXRlcnMuYklzU3RpY2t5TW9kZSA9IGJJc1N0aWNreU1vZGU7XG5cdFx0cmV0dXJuIHRoaXMuYmFzZS5fcm91dGluZy5uYXZpZ2F0ZVRvUm91dGUoc1RhcmdldFJvdXRlTmFtZSwgb1BhcmFtZXRlcnMpO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFJvdXRpbmc7XG4iXX0=
@@ -0,0 +1,132 @@
1
+ import ControllerExtension from "sap/ui/core/mvc/ControllerExtension";
2
+ import OverrideExecution from "sap/ui/core/mvc/OverrideExecution";
3
+ import ModelHelper from "sap/fe/core/helpers/ModelHelper";
4
+ import { Extensible, Final, Public, UI5Class } from "sap/fe/core/helpers/ClassSupport";
5
+ import ControllerExtensionMetadata from "sap/fe/core/controllerextensions/ControllerExtensionMetadata";
6
+ import PageController from "sap/fe/core/PageController";
7
+ import Context from "sap/ui/model/odata/v4/Context";
8
+ import ODataMetaModel from "sap/ui/model/odata/v4/ODataMetaModel";
9
+
10
+ /**
11
+ * A controller extension offering hooks into the routing flow of the application
12
+ *
13
+ * @hideconstructor
14
+ * @public
15
+ * @since 1.86.0
16
+ */
17
+ @UI5Class("sap.fe.core.controllerextensions.Routing", ControllerExtensionMetadata)
18
+ class Routing extends ControllerExtension {
19
+ private base!: PageController;
20
+ /**
21
+ * @private
22
+ * @name sap.fe.core.controllerextensions.Routing.getMetadata
23
+ * @function
24
+ */
25
+ /**
26
+ * @private
27
+ * @name sap.fe.core.controllerextensions.Routing.extend
28
+ * @function
29
+ */
30
+
31
+ /**
32
+ * This function can be used to intercept the routing event happening during the normal process of navigating from one page to another.
33
+ *
34
+ * If declared as an extension, it allows you to intercept and change the normal navigation flow.
35
+ * If you decide to do your own navigation processing, you can return `true` to prevent the default routing behavior.
36
+ *
37
+ * This function is meant to be individually overridden by consuming controllers, but not to be called directly.
38
+ * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
39
+ *
40
+ * @param {object} mNavigationParameters Object containing row context and page context
41
+ * @param {sap.ui.model.odata.v4.Context} mNavigationParameters.bindingContext The currently selected context
42
+ * @returns {boolean} `true` to prevent the default execution, false to keep the standard behavior
43
+ * @alias sap.fe.core.controllerextensions.Routing#onBeforeNavigation
44
+ * @public
45
+ * @since 1.86.0
46
+ */
47
+ @Public
48
+ @Extensible(OverrideExecution.After)
49
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
50
+ onBeforeNavigation(mNavigationParameters: { bindingContext: Context }) {
51
+ // to be overriden by the application
52
+ return false;
53
+ }
54
+
55
+ /**
56
+ * Allows navigation to a specific context.
57
+ *
58
+ * @param {sap.ui.model.odata.v4.Context} oContext Object containing the context to be navigated
59
+ * @alias sap.fe.core.controllerextensions.Routing#navigate
60
+ * @public
61
+ * @since 1.90.0
62
+ */
63
+ @Public
64
+ @Final
65
+ navigate(oContext: Context) {
66
+ this.base._routing.navigateToContext(oContext);
67
+ }
68
+
69
+ /**
70
+ * This function is used to intercept the routing event before binding a page.
71
+ *
72
+ * If it is declared as an extension, it allows you to intercept and change the normal flow of binding.
73
+ *
74
+ * This function is not called directly, but overridden separately by consuming controllers.
75
+ * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
76
+ *
77
+ * @param {object} oContext Object containing the context for the navigation
78
+ * @alias sap.fe.core.controllerextensions.Routing#onBeforeBinding
79
+ * @public
80
+ * @since 1.90.0
81
+ */
82
+ @Public
83
+ @Extensible(OverrideExecution.After)
84
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
85
+ onBeforeBinding(oContext: object) {
86
+ // to be overriden by the application
87
+ }
88
+
89
+ /**
90
+ * This function is used to intercept the routing event after binding a page.
91
+ *
92
+ * If it is declared as an extension, it allows you to intercept and change the normal flow of binding.
93
+ *
94
+ * This function is not called directly, but overridden separately by consuming controllers.
95
+ * The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
96
+ *
97
+ * @param {object} oContext Object containing the context to be navigated
98
+ * @alias sap.fe.core.controllerextensions.Routing#onAfterBinding
99
+ * @public
100
+ * @since 1.90.0
101
+ */
102
+ @Public
103
+ @Extensible(OverrideExecution.After)
104
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
105
+ onAfterBinding(oContext: object) {
106
+ // to be overriden by the application
107
+ }
108
+
109
+ /**
110
+ * Navigate to another target.
111
+ *
112
+ * @alias sap.fe.core.controllerextensions.Routing#navigateToRoute
113
+ * @param sTargetRouteName Name of the target route
114
+ * @param oParameters Parameters to be used with route to create the target hash
115
+ * @returns {Promise} Promise that is resolved when the navigation is finalized
116
+ *
117
+ * @public
118
+ */
119
+ @Public
120
+ @Final
121
+ navigateToRoute(sTargetRouteName: string, oParameters?: any) {
122
+ const oMetaModel = this.base.getModel().getMetaModel() as ODataMetaModel;
123
+ const bIsStickyMode = ModelHelper.isStickySessionSupported(oMetaModel);
124
+ if (!oParameters) {
125
+ oParameters = {};
126
+ }
127
+ oParameters.bIsStickyMode = bIsStickyMode;
128
+ return this.base._routing.navigateToRoute(sTargetRouteName, oParameters);
129
+ }
130
+ }
131
+
132
+ export default Routing;
@@ -1,9 +1,10 @@
1
1
  /*!
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
- (c) Copyright 2009-2021 SAP SE. All rights reserved
4
-
3
+ * (c) Copyright 2009-2021 SAP SE. All rights reserved
5
4
  */
6
- sap.ui.define(["sap/fe/core/controllerextensions/InternalRouting"], function(InternalRouting) {
7
- "use strict";
8
- return InternalRouting;
9
- });
5
+ sap.ui.define(["sap/fe/core/controllerextensions/InternalRouting"], function (InternalRouting) {
6
+ "use strict";
7
+
8
+ return InternalRouting;
9
+ }, false);
10
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlJvdXRpbmdMaXN0ZW5lci50cyJdLCJuYW1lcyI6WyJJbnRlcm5hbFJvdXRpbmciXSwibWFwcGluZ3MiOiI7QUFBQTtBQUNBO0FBQ0E7Ozs7U0FBZUEsZSIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEludGVybmFsUm91dGluZyBmcm9tIFwic2FwL2ZlL2NvcmUvY29udHJvbGxlcmV4dGVuc2lvbnMvSW50ZXJuYWxSb3V0aW5nXCI7XG5cbmV4cG9ydCBkZWZhdWx0IEludGVybmFsUm91dGluZztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ import InternalRouting from "sap/fe/core/controllerextensions/InternalRouting";
2
+
3
+ export default InternalRouting;