@sapui5/sap.ushell 1.141.3 → 1.143.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 (688) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell/.library +1 -7
  3. package/src/main/js/sap/ushell/ApplicationType/UrlPostProcessing.js +7 -11
  4. package/src/main/js/sap/ushell/ApplicationType/utils.js +9 -9
  5. package/src/main/js/sap/ushell/ApplicationType/wdaResolution.js +18 -0
  6. package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
  7. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
  8. package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
  9. package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
  10. package/src/main/js/sap/ushell/URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
  11. package/src/main/js/sap/ushell/URLTemplateProcessor/DependencyGraph.js +1 -1
  12. package/src/main/js/sap/ushell/URLTemplateProcessor/Functions.js +1 -1
  13. package/src/main/js/sap/ushell/URLTemplateProcessor/Resolvers.js +1 -1
  14. package/src/main/js/sap/ushell/URLTemplateProcessor/TemplateParameterParser.js +1 -1
  15. package/src/main/js/sap/ushell/URLTemplateProcessor/utils.js +1 -1
  16. package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
  17. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
  18. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
  19. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  20. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  21. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  22. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -1
  23. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -3
  24. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
  25. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  26. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
  27. package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegion.view.xml +5 -12
  28. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
  29. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
  30. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
  31. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
  32. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
  33. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
  34. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
  35. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -2
  36. package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
  37. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
  38. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
  39. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
  40. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
  41. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
  42. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
  43. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +2 -3
  44. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/cep/MenuAdapter.js +41 -24
  46. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  47. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +3 -2
  48. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
  49. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
  50. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
  51. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
  52. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
  53. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
  54. package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
  55. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
  56. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
  57. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +1 -1
  58. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
  59. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
  60. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
  61. package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
  62. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
  63. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
  64. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
  65. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
  66. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
  67. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
  68. package/src/main/js/sap/ushell/appIntegration/AppLifeCycle.js +94 -114
  69. package/src/main/js/sap/ushell/appIntegration/ApplicationContainer.js +43 -20
  70. package/src/main/js/sap/ushell/appIntegration/ApplicationContainerRenderer.js +0 -11
  71. package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainer.js +89 -32
  72. package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainerRenderer.js +53 -52
  73. package/src/main/js/sap/ushell/appIntegration/PostMessageHandler/LifecycleHandler.js +1 -3
  74. package/src/main/js/sap/ushell/appIntegration/PostMessageHandler/NWBCHandler.js +1 -1
  75. package/src/main/js/sap/ushell/appIntegration/PostMessageHandler/NavigationHandler.js +4 -4
  76. package/src/main/js/sap/ushell/appIntegration/PostMessageManager.js +58 -17
  77. package/src/main/js/sap/ushell/appIntegration/PostMessagePluginInterface.js +4 -0
  78. package/src/main/js/sap/ushell/appIntegration/UI5ApplicationContainer.js +15 -28
  79. package/src/main/js/sap/ushell/appIntegration/contracts/EmbeddedUI5Handler.js +16 -27
  80. package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV2Handler.js +2 -2
  81. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +6 -5
  82. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/CheckConditions.js +0 -12
  83. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
  84. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
  85. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +20 -3
  86. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +17 -6
  87. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -1
  88. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
  89. package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +1 -1
  90. package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
  91. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
  92. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +2 -2
  93. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
  94. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +1 -1
  95. package/src/main/js/sap/ushell/appRuntime/ui5/services/FlpLaunchPage.js +1 -1
  96. package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
  97. package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
  98. package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
  99. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
  100. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
  101. package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +2 -2
  102. package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
  103. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
  104. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
  105. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +1 -1
  106. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
  107. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  108. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/LoadingConfiguration.json +4 -0
  109. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/StepConfiguration.json +35 -17
  110. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/logger.js +1 -1
  111. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/state.js +1 -1
  112. package/src/main/js/sap/ushell/bootstrap/cdm/cdm.constants.js +0 -1
  113. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  114. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +29 -5
  115. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +1 -1
  116. package/src/main/js/sap/ushell/components/appfinder/Component.js +2 -2
  117. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  118. package/src/main/js/sap/ushell/components/contentFinder/CatalogService.js +1 -1
  119. package/src/main/js/sap/ushell/components/contentFinder/Component.js +5 -5
  120. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +1 -1
  121. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  122. package/src/main/js/sap/ushell/components/contentFinder/dialog/Component.js +1 -1
  123. package/src/main/js/sap/ushell/components/contentFinder/dialog/manifest.json +1 -1
  124. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  125. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +1 -1
  126. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +1 -1
  127. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +1 -1
  128. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  129. package/src/main/js/sap/ushell/components/factsheet/factory/ThingInspector.js +2 -2
  130. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  131. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +3 -3
  132. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +10 -10
  133. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
  134. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  135. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  136. package/src/main/js/sap/ushell/components/pages/Component.js +1 -1
  137. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  138. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +3 -3
  139. package/src/main/js/sap/ushell/components/pages/controller/PagesAndSpaceId.js +4 -4
  140. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  141. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
  142. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  143. package/src/main/js/sap/ushell/components/shell/FloatingContainer/manifest.json +1 -1
  144. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  145. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +1 -1
  146. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenuButton.controller.js +1 -1
  147. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  148. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +25 -50
  149. package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsList.controller.js +1 -1
  150. package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsListPopoverContent.view.xml +2 -2
  151. package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsListPopoverHeader.fragment.xml +1 -1
  152. package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsModule.js +169 -0
  153. package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +4 -4
  154. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  155. package/src/main/js/sap/ushell/components/shell/Search/Component.js +6 -2
  156. package/src/main/js/sap/ushell/components/shell/Search/SearchModule.js +58 -0
  157. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  158. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
  159. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  160. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  161. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
  162. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
  163. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/Component.js +33 -22
  164. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/FrequentActivityProvider.js +1 -1
  165. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/RecentSearchProvider.js +1 -1
  166. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/SearchProvider.js +1 -1
  167. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/SearchServiceProvider.js +1 -1
  168. package/src/main/js/sap/ushell/components/shell/SearchCEPNew/manifest.json +1 -1
  169. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +2 -2
  170. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +0 -1
  171. package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +35 -7
  172. package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.view.xml +1 -1
  173. package/src/main/js/sap/ushell/components/shell/ShellBar/Component.js +14 -9
  174. package/src/main/js/sap/ushell/components/shell/ShellBar/controller/ShellBar.controller.js +15 -21
  175. package/src/main/js/sap/ushell/components/shell/ShellBar/manifest.json +1 -1
  176. package/src/main/js/sap/ushell/components/shell/ShellBar/view/ShellBar.view.xml +23 -18
  177. package/src/main/js/sap/ushell/components/shell/SideNavigation/Component.js +1 -1
  178. package/src/main/js/sap/ushell/components/shell/SideNavigation/manifest.json +1 -1
  179. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
  180. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +5 -5
  181. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.fragment.xml +2 -2
  182. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
  183. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +6 -6
  184. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +6 -6
  185. package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/StaticTile.controller.js +6 -6
  186. package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.controller.js +6 -6
  187. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  188. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  189. package/src/main/js/sap/ushell/library.js +1 -8
  190. package/src/main/js/sap/ushell/modules/Assistant/AssistantAPI.js +94 -0
  191. package/src/main/js/sap/ushell/modules/Assistant/AssistantProvider.js +50 -0
  192. package/src/main/js/sap/ushell/modules/Assistant/VisualConfiguration.js +41 -0
  193. package/src/main/js/sap/ushell/modules/Assistant.js +56 -0
  194. package/src/main/js/sap/ushell/modules/BaseAPI.js +107 -0
  195. package/src/main/js/sap/ushell/modules/BaseProvider.js +43 -0
  196. package/src/main/js/sap/ushell/modules/Notifications/NotificationsAPI.js +253 -0
  197. package/src/main/js/sap/ushell/modules/Notifications/NotificationsProvider.js +50 -0
  198. package/src/main/js/sap/ushell/modules/Notifications.js +53 -0
  199. package/src/main/js/sap/ushell/modules/Search/SearchAPI.js +271 -0
  200. package/src/main/js/sap/ushell/modules/Search/SearchProvider.js +50 -0
  201. package/src/main/js/sap/ushell/modules/Search.js +56 -0
  202. package/src/main/js/sap/ushell/modules/loader/AbstractLoader.js +95 -0
  203. package/src/main/js/sap/ushell/modules/loader/AssistantLoader.js +156 -0
  204. package/src/main/js/sap/ushell/modules/loader/NotificationsLoader.js +148 -0
  205. package/src/main/js/sap/ushell/modules/loader/SearchLoader.js +153 -0
  206. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  207. package/src/main/js/sap/ushell/performance/FesrEnhancer.js +136 -40
  208. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +1 -1
  209. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +26 -1
  210. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  211. package/src/main/js/sap/ushell/plugins/ghostapp/FakeModel.js +19 -14
  212. package/src/main/js/sap/ushell/renderer/Renderer.js +6 -7
  213. package/src/main/js/sap/ushell/renderer/Shell.controller.js +204 -102
  214. package/src/main/js/sap/ushell/renderer/Shell.view.js +1 -1
  215. package/src/main/js/sap/ushell/renderer/resources/resources.properties +7 -9
  216. package/src/main/js/sap/ushell/renderer/resources/resources_ar.properties +3 -4
  217. package/src/main/js/sap/ushell/renderer/resources/resources_bg.properties +3 -4
  218. package/src/main/js/sap/ushell/renderer/resources/resources_ca.properties +3 -4
  219. package/src/main/js/sap/ushell/renderer/resources/resources_cnr.properties +3 -4
  220. package/src/main/js/sap/ushell/renderer/resources/resources_cs.properties +3 -4
  221. package/src/main/js/sap/ushell/renderer/resources/resources_cy.properties +3 -4
  222. package/src/main/js/sap/ushell/renderer/resources/resources_da.properties +3 -4
  223. package/src/main/js/sap/ushell/renderer/resources/resources_de.properties +3 -4
  224. package/src/main/js/sap/ushell/renderer/resources/resources_el.properties +3 -4
  225. package/src/main/js/sap/ushell/renderer/resources/resources_en.properties +3 -4
  226. package/src/main/js/sap/ushell/renderer/resources/resources_en_GB.properties +3 -4
  227. package/src/main/js/sap/ushell/renderer/resources/resources_en_US_saprigi.properties +3 -4
  228. package/src/main/js/sap/ushell/renderer/resources/resources_es.properties +4 -5
  229. package/src/main/js/sap/ushell/renderer/resources/resources_es_MX.properties +5 -6
  230. package/src/main/js/sap/ushell/renderer/resources/resources_et.properties +3 -4
  231. package/src/main/js/sap/ushell/renderer/resources/resources_fi.properties +4 -5
  232. package/src/main/js/sap/ushell/renderer/resources/resources_fr.properties +5 -6
  233. package/src/main/js/sap/ushell/renderer/resources/resources_fr_CA.properties +1 -2
  234. package/src/main/js/sap/ushell/renderer/resources/resources_hi.properties +3 -4
  235. package/src/main/js/sap/ushell/renderer/resources/resources_hr.properties +3 -4
  236. package/src/main/js/sap/ushell/renderer/resources/resources_hu.properties +3 -4
  237. package/src/main/js/sap/ushell/renderer/resources/resources_id.properties +5 -6
  238. package/src/main/js/sap/ushell/renderer/resources/resources_it.properties +4 -5
  239. package/src/main/js/sap/ushell/renderer/resources/resources_iw.properties +3 -4
  240. package/src/main/js/sap/ushell/renderer/resources/resources_ja.properties +3 -4
  241. package/src/main/js/sap/ushell/renderer/resources/resources_kk.properties +3 -4
  242. package/src/main/js/sap/ushell/renderer/resources/resources_ko.properties +5 -6
  243. package/src/main/js/sap/ushell/renderer/resources/resources_lt.properties +3 -4
  244. package/src/main/js/sap/ushell/renderer/resources/resources_lv.properties +3 -4
  245. package/src/main/js/sap/ushell/renderer/resources/resources_mk.properties +3 -4
  246. package/src/main/js/sap/ushell/renderer/resources/resources_ms.properties +3 -4
  247. package/src/main/js/sap/ushell/renderer/resources/resources_nl.properties +3 -4
  248. package/src/main/js/sap/ushell/renderer/resources/resources_no.properties +3 -4
  249. package/src/main/js/sap/ushell/renderer/resources/resources_pl.properties +3 -4
  250. package/src/main/js/sap/ushell/renderer/resources/resources_pt.properties +3 -4
  251. package/src/main/js/sap/ushell/renderer/resources/resources_pt_PT.properties +3 -4
  252. package/src/main/js/sap/ushell/renderer/resources/resources_ro.properties +5 -6
  253. package/src/main/js/sap/ushell/renderer/resources/resources_ru.properties +3 -4
  254. package/src/main/js/sap/ushell/renderer/resources/resources_sh.properties +3 -4
  255. package/src/main/js/sap/ushell/renderer/resources/resources_sk.properties +3 -4
  256. package/src/main/js/sap/ushell/renderer/resources/resources_sl.properties +3 -4
  257. package/src/main/js/sap/ushell/renderer/resources/resources_sr.properties +3 -4
  258. package/src/main/js/sap/ushell/renderer/resources/resources_sv.properties +3 -4
  259. package/src/main/js/sap/ushell/renderer/resources/resources_th.properties +6 -7
  260. package/src/main/js/sap/ushell/renderer/resources/resources_tr.properties +3 -4
  261. package/src/main/js/sap/ushell/renderer/resources/resources_uk.properties +13 -14
  262. package/src/main/js/sap/ushell/renderer/resources/resources_vi.properties +3 -4
  263. package/src/main/js/sap/ushell/renderer/resources/resources_zh_CN.properties +3 -4
  264. package/src/main/js/sap/ushell/renderer/resources/resources_zh_TW.properties +3 -4
  265. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  266. package/src/main/js/sap/ushell/renderer/shellHeader/ShellHeader.controller.js +0 -14
  267. package/src/main/js/sap/ushell/renderer/shellHeader/ShellHeader.fragment.xml +0 -1
  268. package/src/main/js/sap/ushell/services/AppConfiguration.js +5 -63
  269. package/src/main/js/sap/ushell/services/AppLifeCycle.js +45 -37
  270. package/src/main/js/sap/ushell/services/AppState.js +1 -1
  271. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  272. package/src/main/js/sap/ushell/services/BookmarkV2.js +1 -1
  273. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Formatter.js +1 -1
  274. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundIndex.js +1 -1
  275. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundProvider.js +1 -1
  276. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/PrelaunchOperations.js +1 -1
  277. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Search.js +1 -1
  278. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/StagedLogger.js +1 -1
  279. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/SystemContext.js +1 -1
  280. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Utils.js +1 -1
  281. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/VirtualInbounds.js +1 -1
  282. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/XAppStateProcessing.js +1 -1
  283. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +6 -5
  284. package/src/main/js/sap/ushell/services/CommonDataModel/SiteConverter.js +1 -1
  285. package/src/main/js/sap/ushell/services/CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
  286. package/src/main/js/sap/ushell/services/CommonDataModel.js +1 -1
  287. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  288. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  289. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
  290. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +13 -13
  291. package/src/main/js/sap/ushell/services/DarkModeSupport.js +1 -1
  292. package/src/main/js/sap/ushell/services/Extension/Item.js +1 -1
  293. package/src/main/js/sap/ushell/services/Extension.js +15 -3
  294. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +1 -1
  295. package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +1 -1
  296. package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +1 -1
  297. package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +1 -1
  298. package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +1 -1
  299. package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +1 -1
  300. package/src/main/js/sap/ushell/services/FrameBoundExtension/UserSettingsEntry.js +1 -1
  301. package/src/main/js/sap/ushell/services/FrameBoundExtension.js +21 -8
  302. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
  303. package/src/main/js/sap/ushell/services/Menu.js +1 -181
  304. package/src/main/js/sap/ushell/services/Message.js +1 -1
  305. package/src/main/js/sap/ushell/services/MessageBroker/MessageBrokerEngine.js +3 -3
  306. package/src/main/js/sap/ushell/services/MessageBroker.js +3 -3
  307. package/src/main/js/sap/ushell/services/MessageInternal.js +1 -1
  308. package/src/main/js/sap/ushell/services/NavTargetResolutionInternal.js +3 -3
  309. package/src/main/js/sap/ushell/services/Navigation/compatibility.js +1 -1
  310. package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
  311. package/src/main/js/sap/ushell/services/Navigation.js +20 -20
  312. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  313. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  314. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  315. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  316. package/src/main/js/sap/ushell/services/Pages.js +1 -1
  317. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  318. package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
  319. package/src/main/js/sap/ushell/services/PluginManager/SimpleExpression.js +1 -1
  320. package/src/main/js/sap/ushell/services/PluginManager.js +2 -6
  321. package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
  322. package/src/main/js/sap/ushell/services/Search.js +1 -1
  323. package/src/main/js/sap/ushell/services/SearchCEP.js +6 -7
  324. package/src/main/js/sap/ushell/services/SearchableContent.js +3 -5
  325. package/src/main/js/sap/ushell/services/ShellNavigation.js +1 -1
  326. package/src/main/js/sap/ushell/services/ShellNavigationHashChanger.js +52 -73
  327. package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
  328. package/src/main/js/sap/ushell/services/SpaceContent.js +1 -1
  329. package/src/main/js/sap/ushell/services/UITracer.js +1 -1
  330. package/src/main/js/sap/ushell/services/URLParsing.js +65 -47
  331. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  332. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  333. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +6 -44
  334. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
  335. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
  336. package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
  337. package/src/main/js/sap/ushell/services/UserRecents/RecentActivity.js +2 -2
  338. package/src/main/js/sap/ushell/services/UserRecents/RecentsList.js +1 -1
  339. package/src/main/js/sap/ushell/services/UserRecents.js +5 -5
  340. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  341. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  342. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
  343. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  344. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  345. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  346. package/src/main/js/sap/ushell/state/StateManager.js +14 -5
  347. package/src/main/js/sap/ushell/state/StateRules.js +10 -1
  348. package/src/main/js/sap/ushell/state/modules/BackNavigation.js +1 -1
  349. package/src/main/js/sap/ushell/state/modules/ContentDensity.js +1 -1
  350. package/src/main/js/sap/ushell/state/modules/Favicon.js +1 -1
  351. package/src/main/js/sap/ushell/state/modules/HeaderLogo.js +1 -1
  352. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
  353. package/src/main/js/sap/ushell/themes/base/ApplicationContainer.less +0 -9
  354. package/src/main/js/sap/ushell/themes/base/ShellHeader.less +0 -14
  355. package/src/main/js/sap/ushell/themes/sap_belize_base/ApplicationContainer.less +0 -9
  356. package/src/main/js/sap/ushell/themes/sap_belize_base/ShellHeader.less +0 -14
  357. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/ApplicationContainer.less +0 -9
  358. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/ShellHeader.less +0 -14
  359. package/src/main/js/sap/ushell/themes/sap_hcb/base_ApplicationContainer.less +0 -9
  360. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +0 -14
  361. package/src/main/js/sap/ushell/ui/ShellHeader.js +4 -29
  362. package/src/main/js/sap/ushell/ui/ShellHeaderRenderer.js +0 -14
  363. package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +11 -11
  364. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +12 -12
  365. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  366. package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
  367. package/src/main/js/sap/ushell/ui/launchpad/VizInstance.js +113 -22
  368. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceCdm.js +0 -2
  369. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  370. package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +0 -8
  371. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +1 -1
  372. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  373. package/src/main/js/sap/ushell/ui5service/ShellUIServiceFactory.js +1 -1
  374. package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
  375. package/src/main/js/sap/ushell/utils/SmartBusiness.js +139 -0
  376. package/src/main/js/sap/ushell/utils/UrlParsing.js +335 -208
  377. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  378. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +1 -1
  379. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +1 -1
  380. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +1 -1
  381. package/src/main/js/sap/ushell/utils.js +36 -56
  382. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  383. package/ui5.yaml +19 -34
  384. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +0 -228
  385. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +0 -277
  386. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +0 -2128
  387. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.layout.js +0 -462
  388. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +0 -182
  389. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +0 -135
  390. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +0 -400
  391. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +0 -345
  392. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnRenderer.js +0 -103
  393. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +0 -147
  394. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRenderer.js +0 -60
  395. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +0 -277
  396. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRowRenderer.js +0 -96
  397. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +0 -59
  398. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources.properties +0 -177
  399. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ar.properties +0 -93
  400. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_bg.properties +0 -93
  401. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ca.properties +0 -93
  402. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_cnr.properties +0 -93
  403. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_cs.properties +0 -93
  404. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_cy.properties +0 -93
  405. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_da.properties +0 -93
  406. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_de.properties +0 -93
  407. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_el.properties +0 -93
  408. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_en_GB.properties +0 -93
  409. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_en_US_sappsd.properties +0 -79
  410. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_en_US_saprigi.properties +0 -93
  411. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_en_US_saptrc.properties +0 -90
  412. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_es.properties +0 -93
  413. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_es_MX.properties +0 -93
  414. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_et.properties +0 -93
  415. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_fi.properties +0 -93
  416. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_fr.properties +0 -93
  417. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_fr_CA.properties +0 -93
  418. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_hi.properties +0 -93
  419. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_hr.properties +0 -93
  420. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_hu.properties +0 -93
  421. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_id.properties +0 -93
  422. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_it.properties +0 -93
  423. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_iw.properties +0 -93
  424. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ja.properties +0 -93
  425. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_kk.properties +0 -93
  426. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ko.properties +0 -93
  427. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_lt.properties +0 -93
  428. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_lv.properties +0 -93
  429. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_mk.properties +0 -93
  430. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ms.properties +0 -93
  431. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_nl.properties +0 -93
  432. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_no.properties +0 -93
  433. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_pl.properties +0 -93
  434. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_pt.properties +0 -93
  435. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_pt_PT.properties +0 -93
  436. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ro.properties +0 -93
  437. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_ru.properties +0 -93
  438. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_sh.properties +0 -93
  439. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_sk.properties +0 -93
  440. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_sl.properties +0 -93
  441. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_sr.properties +0 -93
  442. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_sv.properties +0 -93
  443. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_th.properties +0 -93
  444. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_tr.properties +0 -93
  445. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_uk.properties +0 -93
  446. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_vi.properties +0 -93
  447. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_zh_CN.properties +0 -93
  448. package/src/main/js/sap/ushell/components/workPageBuilder/resources/resources_zh_TW.properties +0 -93
  449. package/src/main/js/sap/ushell/components/workPageBuilder/view/WorkPageBuilder.view.xml +0 -248
  450. package/src/main/js/sap/ushell/components/workPageBuilder/view/WorkPageCellDeleteDialog.fragment.xml +0 -25
  451. package/src/main/js/sap/ushell/components/workPageBuilder/view/WorkPageRowDeleteDialog.fragment.xml +0 -25
  452. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +0 -67
  453. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +0 -176
  454. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +0 -50
  455. package/src/main/js/sap/ushell/components/workPageRuntime/view/WorkPageRuntime.view.xml +0 -37
  456. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Avatar.js +0 -119
  457. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Button.js +0 -219
  458. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Label.js +0 -75
  459. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItem.js +0 -76
  460. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItemBase.js +0 -39
  461. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItemGroup.js +0 -153
  462. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Menu.js +0 -185
  463. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/MenuItem.js +0 -198
  464. package/src/main/js/sap/ushell/gen/ui5/webcomponents-base.js +0 -576
  465. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/IllustratedMessage.js +0 -98
  466. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationList.js +0 -135
  467. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListGroupItem.js +0 -91
  468. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListItem.js +0 -134
  469. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListItemBase.js +0 -55
  470. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/Search.js +0 -163
  471. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchItem.js +0 -83
  472. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchItemGroup.js +0 -36
  473. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchMessageArea.js +0 -53
  474. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchScope.js +0 -55
  475. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBar.js +0 -380
  476. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarBranding.js +0 -78
  477. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarItem.js +0 -88
  478. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarSearch.js +0 -157
  479. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarSpacer.js +0 -49
  480. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenu.js +0 -197
  481. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenuAccount.js +0 -83
  482. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenuItem.js +0 -42
  483. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori.js +0 -1652
  484. package/src/main/js/sap/ushell/gen/ui5/webcomponents.js +0 -2823
  485. package/src/main/js/sap/ushell/services/PluginManager/Extensions.js +0 -58
  486. package/src/main/js/sap/ushell/services/PluginManager/HeaderExtensions.js +0 -35
  487. package/src/main/js/sap/ushell/services/PluginManager/MenuExtensions.js +0 -65
  488. package/src/main/js/sap/ushell/thirdparty/AccessibilityTextsHelper.js +0 -13
  489. package/src/main/js/sap/ushell/thirdparty/Avatar.js +0 -453
  490. package/src/main/js/sap/ushell/thirdparty/BusyIndicator.js +0 -233
  491. package/src/main/js/sap/ushell/thirdparty/Button.js +0 -7
  492. package/src/main/js/sap/ushell/thirdparty/Button2.js +0 -656
  493. package/src/main/js/sap/ushell/thirdparty/FocusableElements.js +0 -10
  494. package/src/main/js/sap/ushell/thirdparty/Icon.js +0 -313
  495. package/src/main/js/sap/ushell/thirdparty/Icons.js +0 -234
  496. package/src/main/js/sap/ushell/thirdparty/IllustratedMessage.js +0 -1297
  497. package/src/main/js/sap/ushell/thirdparty/Label.js +0 -115
  498. package/src/main/js/sap/ushell/thirdparty/Link.js +0 -316
  499. package/src/main/js/sap/ushell/thirdparty/List.js +0 -1253
  500. package/src/main/js/sap/ushell/thirdparty/ListBoxItemGroupTemplate.js +0 -14
  501. package/src/main/js/sap/ushell/thirdparty/ListItemAdditionalText.css.js +0 -10
  502. package/src/main/js/sap/ushell/thirdparty/ListItemBase.js +0 -251
  503. package/src/main/js/sap/ushell/thirdparty/ListItemCustom.js +0 -1689
  504. package/src/main/js/sap/ushell/thirdparty/ListItemGroup.js +0 -637
  505. package/src/main/js/sap/ushell/thirdparty/Menu.js +0 -389
  506. package/src/main/js/sap/ushell/thirdparty/MenuItem.js +0 -10
  507. package/src/main/js/sap/ushell/thirdparty/MenuItem2.js +0 -762
  508. package/src/main/js/sap/ushell/thirdparty/NotificationList.js +0 -291
  509. package/src/main/js/sap/ushell/thirdparty/NotificationListGroupItem.js +0 -310
  510. package/src/main/js/sap/ushell/thirdparty/NotificationListItem.js +0 -534
  511. package/src/main/js/sap/ushell/thirdparty/NotificationListItemBase.js +0 -98
  512. package/src/main/js/sap/ushell/thirdparty/ResponsivePopover.js +0 -2312
  513. package/src/main/js/sap/ushell/thirdparty/SearchItem.js +0 -157
  514. package/src/main/js/sap/ushell/thirdparty/SearchItemGroup.js +0 -44
  515. package/src/main/js/sap/ushell/thirdparty/SearchMessageArea.js +0 -49
  516. package/src/main/js/sap/ushell/thirdparty/SearchScope.js +0 -39
  517. package/src/main/js/sap/ushell/thirdparty/ShellBar.js +0 -1809
  518. package/src/main/js/sap/ushell/thirdparty/ShellBarBranding.js +0 -119
  519. package/src/main/js/sap/ushell/thirdparty/ShellBarItem.js +0 -89
  520. package/src/main/js/sap/ushell/thirdparty/ShellBarSearch.js +0 -7
  521. package/src/main/js/sap/ushell/thirdparty/ShellBarSearch2.js +0 -3453
  522. package/src/main/js/sap/ushell/thirdparty/ShellBarSpacer.js +0 -40
  523. package/src/main/js/sap/ushell/thirdparty/Tag.js +0 -302
  524. package/src/main/js/sap/ushell/thirdparty/Text.js +0 -127
  525. package/src/main/js/sap/ushell/thirdparty/Title.js +0 -167
  526. package/src/main/js/sap/ushell/thirdparty/UserMenu.js +0 -950
  527. package/src/main/js/sap/ushell/thirdparty/UserMenuAccount.js +0 -114
  528. package/src/main/js/sap/ushell/thirdparty/UserMenuItem.js +0 -61
  529. package/src/main/js/sap/ushell/thirdparty/ValueState.js +0 -7
  530. package/src/main/js/sap/ushell/thirdparty/WrappingType.js +0 -24
  531. package/src/main/js/sap/ushell/thirdparty/_dynamics/InputComposition.js +0 -35
  532. package/src/main/js/sap/ushell/thirdparty/_dynamics/InputSuggestions.js +0 -397
  533. package/src/main/js/sap/ushell/thirdparty/_dynamics/ListItemStandardExpandableTextTemplate.js +0 -193
  534. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-TNT.js +0 -585
  535. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-TNT2.js +0 -585
  536. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-business-suite.js +0 -1194
  537. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-business-suite2.js +0 -1194
  538. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons.js +0 -2509
  539. package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons2.js +0 -2509
  540. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar.js +0 -866
  541. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar2.js +0 -611
  542. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg.js +0 -866
  543. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg2.js +0 -611
  544. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca.js +0 -866
  545. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca2.js +0 -611
  546. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr.js +0 -866
  547. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr2.js +0 -611
  548. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs.js +0 -866
  549. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs2.js +0 -611
  550. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy.js +0 -866
  551. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy2.js +0 -611
  552. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da.js +0 -866
  553. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da2.js +0 -611
  554. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de.js +0 -866
  555. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de2.js +0 -611
  556. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el.js +0 -866
  557. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el2.js +0 -611
  558. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en.js +0 -866
  559. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en2.js +0 -611
  560. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB.js +0 -866
  561. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB2.js +0 -611
  562. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd.js +0 -866
  563. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd2.js +0 -611
  564. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi.js +0 -866
  565. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi2.js +0 -611
  566. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc.js +0 -866
  567. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc2.js +0 -611
  568. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es.js +0 -866
  569. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es2.js +0 -611
  570. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX.js +0 -866
  571. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX2.js +0 -611
  572. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et.js +0 -866
  573. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et2.js +0 -611
  574. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi.js +0 -866
  575. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi2.js +0 -611
  576. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr.js +0 -866
  577. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr2.js +0 -611
  578. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA.js +0 -866
  579. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA2.js +0 -611
  580. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi.js +0 -866
  581. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi2.js +0 -611
  582. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr.js +0 -866
  583. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr2.js +0 -611
  584. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu.js +0 -866
  585. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu2.js +0 -611
  586. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id.js +0 -866
  587. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id2.js +0 -611
  588. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it.js +0 -866
  589. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it2.js +0 -611
  590. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw.js +0 -866
  591. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw2.js +0 -611
  592. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja.js +0 -866
  593. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja2.js +0 -611
  594. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk.js +0 -866
  595. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk2.js +0 -611
  596. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko.js +0 -866
  597. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko2.js +0 -611
  598. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt.js +0 -866
  599. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt2.js +0 -611
  600. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv.js +0 -866
  601. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv2.js +0 -611
  602. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk.js +0 -866
  603. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk2.js +0 -611
  604. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms.js +0 -866
  605. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms2.js +0 -611
  606. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl.js +0 -866
  607. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl2.js +0 -611
  608. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no.js +0 -866
  609. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no2.js +0 -611
  610. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl.js +0 -866
  611. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl2.js +0 -611
  612. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt.js +0 -866
  613. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt2.js +0 -611
  614. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT.js +0 -866
  615. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT2.js +0 -611
  616. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro.js +0 -866
  617. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro2.js +0 -611
  618. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru.js +0 -866
  619. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru2.js +0 -611
  620. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh.js +0 -866
  621. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh2.js +0 -611
  622. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk.js +0 -866
  623. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk2.js +0 -611
  624. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl.js +0 -866
  625. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl2.js +0 -611
  626. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr.js +0 -866
  627. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr2.js +0 -611
  628. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv.js +0 -866
  629. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv2.js +0 -611
  630. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th.js +0 -866
  631. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th2.js +0 -611
  632. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr.js +0 -866
  633. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr2.js +0 -611
  634. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk.js +0 -866
  635. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk2.js +0 -611
  636. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi.js +0 -866
  637. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi2.js +0 -611
  638. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN.js +0 -866
  639. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN2.js +0 -611
  640. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW.js +0 -866
  641. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW2.js +0 -611
  642. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css10.js +0 -7
  643. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css11.js +0 -7
  644. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css12.js +0 -7
  645. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css13.js +0 -7
  646. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css14.js +0 -7
  647. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css15.js +0 -7
  648. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css16.js +0 -7
  649. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css17.js +0 -7
  650. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css18.js +0 -7
  651. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css19.js +0 -7
  652. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css20.js +0 -7
  653. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css21.js +0 -7
  654. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css22.js +0 -7
  655. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css23.js +0 -7
  656. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css24.js +0 -7
  657. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css25.js +0 -7
  658. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css26.js +0 -7
  659. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css27.js +0 -7
  660. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css4.js +0 -7
  661. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css5.js +0 -7
  662. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css6.js +0 -7
  663. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css7.js +0 -7
  664. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css8.js +0 -7
  665. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css9.js +0 -7
  666. package/src/main/js/sap/ushell/thirdparty/encodeXML.js +0 -87
  667. package/src/main/js/sap/ushell/thirdparty/event-strict.js +0 -7
  668. package/src/main/js/sap/ushell/thirdparty/generateHighlightedMarkup.js +0 -9
  669. package/src/main/js/sap/ushell/thirdparty/i18n-defaults.js +0 -115
  670. package/src/main/js/sap/ushell/thirdparty/i18n-defaults2.js +0 -159
  671. package/src/main/js/sap/ushell/thirdparty/information.js +0 -100
  672. package/src/main/js/sap/ushell/thirdparty/information2.js +0 -13
  673. package/src/main/js/sap/ushell/thirdparty/overflow.js +0 -25
  674. package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css.js +0 -11
  675. package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css2.js +0 -44
  676. package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css3.js +0 -8
  677. package/src/main/js/sap/ushell/thirdparty/query.js +0 -7
  678. package/src/main/js/sap/ushell/thirdparty/slim-arrow-down.js +0 -44
  679. package/src/main/js/sap/ushell/thirdparty/sys-enter-2.js +0 -7
  680. package/src/main/js/sap/ushell/thirdparty/toLowercaseEnumValue.js +0 -7
  681. package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons/AllIcons.js +0 -26
  682. package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons-business-suite/AllIcons.js +0 -26
  683. package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons-tnt/AllIcons.js +0 -26
  684. package/src/main/js/sap/ushell/thirdparty/webcomponents-base.js +0 -4301
  685. package/src/main/js/sap/ushell/thirdparty/webcomponents-base2.js +0 -7
  686. package/src/main/js/sap/ushell/thirdparty/webcomponents-fiori.js +0 -146
  687. package/src/main/js/sap/ushell/thirdparty/webcomponents.js +0 -170
  688. package/src/main/js/sap/ushell/thirdparty/willShowContent.js +0 -7
@@ -43,7 +43,8 @@ sap.ui.define([
43
43
  "sap/ushell/renderers/fiori2/History", // restore deprecated globals
44
44
  "sap/ushell/renderer/RendererManagedComponents",
45
45
  "sap/ushell/ui5service/ShellUIServiceFactory",
46
- "sap/ushell/navigation/NavigationState"
46
+ "sap/ushell/navigation/NavigationState",
47
+ "sap/ushell/utils/SmartBusiness"
47
48
  ], (
48
49
  History,
49
50
  Log,
@@ -84,7 +85,8 @@ sap.ui.define([
84
85
  DeprecatedHistory, // restore deprecated globals
85
86
  RendererManagedComponents,
86
87
  ShellUIServiceFactory,
87
- NavigationState
88
+ NavigationState,
89
+ SmartBusiness
88
90
  ) => {
89
91
  "use strict";
90
92
 
@@ -402,12 +404,23 @@ sap.ui.define([
402
404
  this.oShellNavigationInternal.registerExtraRouter(oRouter);
403
405
  this.oShellNavigationInternal.registerNavigationFilter(this._handleEmptyHash.bind(this));
404
406
  // must be after event registration (for synchronous nav target resolver calls)
407
+
408
+ // For the direct app start the Smart Business navigation filter has to be registered before the init
409
+ // as the init triggers the first treatHashChanged that runs the navigation filters
410
+ const fnHandleSmartBusiness = this._handleSmartBusiness.bind(this);
411
+ this.oShellNavigationInternal.registerNavigationFilter(fnHandleSmartBusiness);
412
+
405
413
  this.oShellNavigationInternal.init(this.doHashChange.bind(this));
406
414
 
415
+ // As the Smart Business navigation filter triggers a navigation it should run after the other
416
+ // navigation filters, so unregister it again and register at the last position.
417
+ this.oShellNavigationInternal.unregisterNavigationFilter(fnHandleSmartBusiness);
418
+
407
419
  this.oShellNavigationInternal.registerNavigationFilter(this._disableSourceAppRouter.bind(this));
408
420
 
409
421
  this.oShellNavigationInternal.registerNavigationFilter(this.handleDataLoss.bind(this));
410
422
  this.oShellNavigationInternal.registerNavigationFilter(this._unblockUI.bind(this));
423
+ this.oShellNavigationInternal.registerNavigationFilter(fnHandleSmartBusiness);
411
424
 
412
425
  AppLifeCycleAI.registerHandleHashChange(this.oShellNavigationInternal);
413
426
  // enable the direct app start and tests to wait for the initialization
@@ -614,6 +627,85 @@ sap.ui.define([
614
627
  return this.oShellNavigationInternal.NavigationFilterStatus.Continue;
615
628
  },
616
629
 
630
+ /**
631
+ * Navigation filter for Smart Business
632
+ * Changes the navigation parameters based on parameter sap-ssb-eval-id
633
+ *
634
+ * @param {string} sTargetIntent The target intent
635
+ * @returns {string} The NavigationFilterStatus
636
+ *
637
+ * @private
638
+ */
639
+ _handleSmartBusiness: function (sTargetIntent) {
640
+ if (!sTargetIntent.includes("sap-ssb-eval-id")) {
641
+ return this.oShellNavigationInternal.NavigationFilterStatus.Continue;
642
+ }
643
+
644
+ // the navigation filter has to return a status synchronously,
645
+ // therefore the filter function itself must not be async
646
+
647
+ // skip the next data loss filter as it was handled already before
648
+ this.bSkipNextDataLossCheck = true;
649
+
650
+ (async () => {
651
+ let oParsedShellHash = UrlParsing.parseShellHash(sTargetIntent);
652
+
653
+ try {
654
+ const Navigation = await Container.getServiceAsync("Navigation");
655
+ oParsedShellHash = await SmartBusiness.resolveEvaluationId(oParsedShellHash);
656
+
657
+ const oTarget = {
658
+ target: {
659
+ semanticObject: oParsedShellHash.semanticObject,
660
+ action: oParsedShellHash.action,
661
+ contextRaw: oParsedShellHash.contextRaw
662
+ },
663
+ params: oParsedShellHash.params,
664
+ appSpecificRoute: oParsedShellHash.appSpecificRoute,
665
+ writeHistory: false
666
+ };
667
+
668
+ Navigation.navigate(oTarget);
669
+ } catch (oError) {
670
+ this.bSkipNextDataLossCheck = false;
671
+
672
+ // If the resolution of the evaluation ID crashes during direct start,
673
+ // make sure that the direct start result is not used by the next navigation
674
+ if (window["sap-ushell-async-libs-promise-directstart"]) {
675
+ delete window["sap-ushell-async-libs-promise-directstart"];
676
+ }
677
+
678
+ const sEvaluationId = oParsedShellHash.params["sap-ssb-eval-id"] && oParsedShellHash.params["sap-ssb-eval-id"][0];
679
+ const sLogMessage = `Failed to execute Smart Business navigation for evaluation ID ${sEvaluationId}`;
680
+
681
+ // As this error handling is not part of the normal navigation flow's error handling
682
+ // this has to be triggered explicitly.
683
+ NavigationState.endNavigation();
684
+
685
+ // If the previous page was dirty the dirty state handler must not interfere with the back navigation
686
+ const bEnableHashChange = !bPreviousPageDirty;
687
+
688
+ this.hashChangeFailure(
689
+ this.history.getHistoryLength(),
690
+ {
691
+ title: ushellResources.i18n.getText("error"),
692
+ message: ushellResources.i18n.getText("failed_to_open_app_missing_configuration_or_role_assignment"),
693
+ technicalMessage: sLogMessage
694
+ },
695
+ {
696
+ info: ushellResources.i18n.getText("cannot_resolve_navigation_target_details", [sTargetIntent]),
697
+ technicalMessage: oError
698
+ },
699
+ "sap.ushell.renderer.Shell.controller",
700
+ bEnableHashChange
701
+ );
702
+ }
703
+ })();
704
+
705
+ // The navigation filter triggers the new navigation.
706
+ return this.oShellNavigationInternal.NavigationFilterStatus.Custom;
707
+ },
708
+
617
709
  // Make sure that UI is unblocked during navigation.
618
710
  // The header and menu are blocked when an embedded ui5 app shows a modal popup.
619
711
  // However, such a block does not prevent navigation via the browser url and back/forward button navigation.
@@ -834,6 +926,18 @@ sap.ui.define([
834
926
  * @private
835
927
  */
836
928
  handleDataLoss: function (targetIntent, currentIntent) {
929
+ /**
930
+ * This should be used if a different navigation filter does a custom navigation after the data loss check,
931
+ * to prevent a second data loss popup.
932
+ *
933
+ * Dirty state providers only get deregistered after the navigation (filters) are processed (application exit).
934
+ * Therefore a registered dirty state provider will be called a second time during the same navigation filter cycle.
935
+ */
936
+ if (this.bSkipNextDataLossCheck) {
937
+ this.bSkipNextDataLossCheck = false;
938
+ return this.oShellNavigationInternal.NavigationFilterStatus.Continue;
939
+ }
940
+
837
941
  const oShellNavigationHashChanger = this.oShellNavigationInternal.hashChanger;
838
942
  const bReloadApplication = oShellNavigationHashChanger.getReloadApplication();
839
943
 
@@ -883,6 +987,7 @@ sap.ui.define([
883
987
  // The OPA iframe handler overwrites some hasher methods which results in a confused ushell navigation flow.
884
988
  const bIsDirty = Container.getDirtyFlag();
885
989
  const bIsAsyncDirtyStateProviderSet = Container.isAsyncDirtyStateProviderSet();
990
+
886
991
  if (!bIsAsyncDirtyStateProviderSet && !bIsDirty) {
887
992
  bPreviousPageDirty = bIsDirty;
888
993
  return this.oShellNavigationInternal.NavigationFilterStatus.Continue;
@@ -1207,12 +1312,14 @@ sap.ui.define([
1207
1312
  return oDeferred.promise();
1208
1313
  }
1209
1314
 
1210
- const sFixedShellHash = UrlParsing.ensureLeadingHash(sShellHash);
1211
- const sFixedOldShellHash = UrlParsing.ensureLeadingHash(sOldShellHash);
1315
+ const sFullShellHash = `${sShellHash}${sInnerAppRoute ?? ""}`;
1316
+ const oParsedHash = UrlParsing.parseShellHash(sFullShellHash, true);
1317
+ const sOldFullShellHash = `${sOldShellHash}${sOldInnerAppRoute ?? ""}`;
1318
+ const oOldParsedHash = UrlParsing.parseShellHash(sOldFullShellHash, true);
1212
1319
 
1213
1320
  // todo [FLPCOREANDUX-10024] where does this oParseError come from?
1214
1321
  if (oParseError) {
1215
- Log.error(`Error when parsing the hash: '${sFixedShellHash}'`, oParseError);
1322
+ Log.error(`Error when parsing the hash: '${sFullShellHash}'`, oParseError);
1216
1323
  this.hashChangeFailure(
1217
1324
  this.history.getHistoryLength(),
1218
1325
  oParseError.message,
@@ -1228,7 +1335,7 @@ sap.ui.define([
1228
1335
 
1229
1336
  const fnResolveInteraction = this._notifyAsyncStep();
1230
1337
 
1231
- this._doHashChange(sFixedShellHash, sInnerAppRoute, sFixedOldShellHash)
1338
+ this._doHashChange(oParsedHash, oOldParsedHash)
1232
1339
  .catch(() => {
1233
1340
  EventHub.emit("doHashChangeError", Date.now());
1234
1341
  })
@@ -1243,12 +1350,21 @@ sap.ui.define([
1243
1350
  return oDeferred.promise();
1244
1351
  },
1245
1352
 
1246
- _doHashChange: async function (sShellHash, sInnerAppRoute, sOldShellHash) {
1353
+ _doHashChange: async function (oParsedHash, oOldParsedHash) {
1354
+ // todo: [FLPCOREANDUX-10024] simplify Renderer History
1247
1355
  // save current history length to handle errors (in case)
1248
1356
  const iOriginalHistoryLength = this.history.getHistoryLength();
1249
1357
 
1250
1358
  // track hash change
1251
- this.history.hashChange(sShellHash, sOldShellHash);
1359
+ const sShellHashWithoutAppRoute = UrlParsing.constructShellHash({
1360
+ ...oParsedHash,
1361
+ appSpecificRoute: undefined
1362
+ }, true);
1363
+ const sOldShellHashWithoutAppRoute = UrlParsing.constructShellHash({
1364
+ ...oOldParsedHash,
1365
+ appSpecificRoute: undefined
1366
+ }, true);
1367
+ this.history.hashChange(sShellHashWithoutAppRoute, sOldShellHashWithoutAppRoute);
1252
1368
 
1253
1369
  // we save the current-application before resolving the next navigation's fragment,
1254
1370
  // as in cases of navigation in a new window we need to set it back for the app-configuration to be consistent
@@ -1256,17 +1372,14 @@ sap.ui.define([
1256
1372
 
1257
1373
  try {
1258
1374
  // NOTE: AppConfiguration.setCurrentApplication was called with the currently resolved target.
1259
- const oResult = await this._resolveHashFragment(sShellHash, sInnerAppRoute);
1375
+ const oResolvedHashFragment = await this._resolveHashFragment(oParsedHash);
1260
1376
 
1261
1377
  // Only for testing
1262
- if (!oResult && window.QUnit !== undefined) {
1378
+ if (!oResolvedHashFragment && window.QUnit !== undefined) {
1263
1379
  // return without navigation if no result was returned.
1264
1380
  return;
1265
1381
  }
1266
1382
 
1267
- const oResolvedHashFragment = oResult.resolvedHashFragment;
1268
- const oParsedShellHash = oResult.parsedShellHash;
1269
-
1270
1383
  // todo: [FLPCOREANDUX-10024] is this a real life use case?
1271
1384
  /*
1272
1385
  * A null navigationMode indicates that no hashFragment was resolved.
@@ -1293,7 +1406,7 @@ sap.ui.define([
1293
1406
 
1294
1407
  const bOpenedViaNWBC = await this._openAppViaNWBC(oResolvedHashFragment, oOldResolvedHashFragment);
1295
1408
  if (bOpenedViaNWBC === true) {
1296
- this.logOpenAppAction(oResolvedHashFragment, sInnerAppRoute).catch(() => {
1409
+ this.logOpenAppAction(oResolvedHashFragment, oParsedHash).catch(() => {
1297
1410
  Log.info("NWBC application was not logged.", undefined, "sap.ushell.renderer.Shell.controller");
1298
1411
  });
1299
1412
 
@@ -1303,7 +1416,7 @@ sap.ui.define([
1303
1416
 
1304
1417
  if (oResolvedHashFragment.navigationMode === NavigationMode.newWindow) {
1305
1418
  // add the app to application usage log
1306
- this.logOpenAppAction(oResolvedHashFragment, sInnerAppRoute).catch(() => {
1419
+ this.logOpenAppAction(oResolvedHashFragment, oParsedHash).catch(() => {
1307
1420
  Log.info("Application in new window was not logged.", undefined, "sap.ushell.renderer.Shell.controller");
1308
1421
  });
1309
1422
  await this._openAppExplace(oResolvedHashFragment, oOldResolvedHashFragment);
@@ -1313,7 +1426,7 @@ sap.ui.define([
1313
1426
  }
1314
1427
 
1315
1428
  // Handle "/core/shell/model/migrationConfig"
1316
- const bHandledViaMigrationConfig = this._rewriteRootIntentForMigrationConfig(oResolvedHashFragment, sShellHash);
1429
+ const bHandledViaMigrationConfig = this._rewriteRootIntentForMigrationConfig(oResolvedHashFragment, oParsedHash);
1317
1430
  if (bHandledViaMigrationConfig) {
1318
1431
  StateManager.applyStalledChanges(); // no changes were done by the source application
1319
1432
  return;
@@ -1323,12 +1436,13 @@ sap.ui.define([
1323
1436
  try {
1324
1437
  const bPreviousIsInitialNavigation = this.oShellNavigationInternal.isInitialNavigation();
1325
1438
  try {
1326
- await this._openAppInplace(oParsedShellHash, sShellHash, oResolvedHashFragment, sOldShellHash, sInnerAppRoute, oOldResolvedHashFragment);
1439
+ await this._openAppInplace(oParsedHash, oResolvedHashFragment, oOldParsedHash, oOldResolvedHashFragment);
1327
1440
  } catch (oError) {
1441
+ const sShellHash = UrlParsing.constructShellHash(oParsedHash, true);
1328
1442
  Log.error(`Application initialization for intent "${sShellHash}" failed.`, oError);
1329
1443
 
1330
1444
  // assumption is that the resolvedHashFragment already contains the componentHandle
1331
- const oMetadata = AppConfiguration.getMetadata(oResolvedHashFragment);
1445
+ const oMetadata = AppConfiguration.getMetadata(oResolvedHashFragment, oParsedHash);
1332
1446
  this.oShellNavigationInternal.setIsInitialNavigation(bPreviousIsInitialNavigation);
1333
1447
  await this.hashChangeFailure(
1334
1448
  iOriginalHistoryLength,
@@ -1339,6 +1453,7 @@ sap.ui.define([
1339
1453
  );
1340
1454
  }
1341
1455
  } catch (oError) {
1456
+ const sShellHash = UrlParsing.constructShellHash(oParsedHash, true);
1342
1457
  Log.error("Failed to open application", oError, "sap.ushell.renderer.Shell.controller");
1343
1458
 
1344
1459
  const sErrorReason = ushellResources.i18n.getText("cannot_load_ui5_component_details", [sShellHash]);
@@ -1361,6 +1476,7 @@ sap.ui.define([
1361
1476
  );
1362
1477
  }
1363
1478
  } catch (oError) {
1479
+ const sShellHash = UrlParsing.constructShellHash(oParsedHash, true);
1364
1480
  Log.error("Hash change handling failed. Could not open app.", oError, "sap.ushell.renderer.Shell.controller");
1365
1481
  const sErrorReason = ushellResources.i18n.getText("cannot_resolve_navigation_target_details", [sShellHash]);
1366
1482
  // eslint-disable-next-line max-len
@@ -1386,22 +1502,24 @@ sap.ui.define([
1386
1502
  }
1387
1503
  },
1388
1504
 
1389
- _rewriteRootIntentForMigrationConfig: function (oResolvedHashFragment, sShellHash) {
1505
+ _rewriteRootIntentForMigrationConfig: function (oResolvedHashFragment, oParsedHash) {
1390
1506
  // In case of empty hash, if there is a resolved target, set the flag to false, from now on the rootIntent
1391
1507
  // will be an empty hash. Otherwise, change hash to rootIntent to trigger normal resolution.
1392
1508
  if (Config.last("/core/shell/model/migrationConfig")) {
1393
1509
  oConfig.migrationConfig = false;
1394
1510
  this._getConfigModel().setProperty("/migrationConfig", false);
1395
1511
 
1396
- // todo: [FLPCOREANDUX-10024] is this an actual use case? oResolvedHashFragment seems to be always defined
1397
- if (oResolvedHashFragment && sShellHash === "#") {
1398
- oConfig.rootIntent = "";
1399
- } else if (sShellHash === "#") {
1400
- window.setTimeout(() => {
1401
- hasher.setHash(oConfig.rootIntent);
1402
- }, 0);
1512
+ if (UrlParsing.isEmptyHash(oParsedHash)) {
1513
+ // todo: [FLPCOREANDUX-10024] is this an actual use case? oResolvedHashFragment seems to be always defined
1514
+ if (oResolvedHashFragment) {
1515
+ oConfig.rootIntent = "";
1516
+ } else {
1517
+ window.setTimeout(() => {
1518
+ hasher.setHash(oConfig.rootIntent);
1519
+ }, 0);
1403
1520
 
1404
- return true;
1521
+ return true;
1522
+ }
1405
1523
  }
1406
1524
  }
1407
1525
  return false;
@@ -1409,7 +1527,7 @@ sap.ui.define([
1409
1527
 
1410
1528
  _openAppExplace: async function (oResolvedHashFragment, oOldResolvedHashFragment) {
1411
1529
  // Call relevant for Legacy-UI apps that are launched "standalone"; in case of "embedded in new window", the URL doesn't need adaptions.
1412
- oResolvedHashFragment.url = UrlPostProcessing.processUrl(
1530
+ oResolvedHashFragment.url = await UrlPostProcessing.processUrl(
1413
1531
  oResolvedHashFragment.url,
1414
1532
  oResolvedHashFragment.applicationType,
1415
1533
  true, // bForExplaceNavigation
@@ -1443,15 +1561,12 @@ sap.ui.define([
1443
1561
  /**
1444
1562
  * Callback registered with NavService. Triggered on navigation requests
1445
1563
  *
1446
- * @param {string} sShellHash the hash fragment to parse (must start with "#")
1447
- * @param {string|null} sInnerAppRoute the inner app route starting with '&/'
1448
- * @returns {Promise<{ resolvedHashFragment: object , parsedShellHash: object }>} Resolves with an object containing the resolved hash fragment (i.e., the result of
1449
- * {@link sap.ushell.services.NavTargetResolutionInternal#resolveHashFragment}), the parsed shell hash obtained via
1450
- * {@link sap.ushell.services.URLParsing#parseShellHash}, and a boolean value indicating whether application dependencies
1451
- * <b>and</b> core-ext-light were loaded earlier. The promise is rejected with an error message in case errors occur.
1564
+ * @param {sap.ushell.services.URLParsing.DecomposedHash} oParsedHash The parsed shell hash
1565
+ * @returns {Promise<object>} Resolves with an object containing the resolved hash fragment (i.e., the result of
1566
+ * {@link sap.ushell.services.NavTargetResolutionInternal#resolveHashFragment})
1452
1567
  */
1453
- _resolveHashFragment: async function (sShellHash, sInnerAppRoute) {
1454
- const oParsedShellHash = UrlParsing.parseShellHash(sShellHash) || {}; // might be empty in tests
1568
+ _resolveHashFragment: async function (oParsedHash) {
1569
+ const sShellHash = UrlParsing.constructShellHash(oParsedHash, true);
1455
1570
  const oConfig = this._getConfig(); // for testing
1456
1571
  let oResolvedHashFragment;
1457
1572
 
@@ -1469,7 +1584,7 @@ sap.ui.define([
1469
1584
  } else {
1470
1585
  // Perform target resolution as normal...
1471
1586
  const NavTargetResolutionInternal = await Container.getServiceAsync("NavTargetResolutionInternal");
1472
- oResolvedHashFragment = await ushellUtils.promisify(NavTargetResolutionInternal.resolveHashFragment(sShellHash + (sInnerAppRoute ?? "")));
1587
+ oResolvedHashFragment = await ushellUtils.promisify(NavTargetResolutionInternal.resolveHashFragment(sShellHash));
1473
1588
  }
1474
1589
 
1475
1590
  // Only for testing: return without result if the NavTargetResolutionInternal resolved nothing
@@ -1487,7 +1602,7 @@ sap.ui.define([
1487
1602
  AppConfiguration.setCurrentApplication(oResolvedHashFragment);
1488
1603
 
1489
1604
  // add application config to the application properties
1490
- const sBasicHash = UrlParsing.getBasicHash(sShellHash);
1605
+ const sBasicHash = UrlParsing.constructBasicHash(oParsedHash);
1491
1606
  if (oConfig?.applications?.[sBasicHash]) {
1492
1607
  oResolvedHashFragment.applicationConfiguration = oConfig.applications[sBasicHash];
1493
1608
  }
@@ -1497,7 +1612,7 @@ sap.ui.define([
1497
1612
 
1498
1613
  // Override navigation mode for root intent.
1499
1614
  // Shell home should be opened in embedded mode to allow a new window to be opened from GUI applications.
1500
- if (`${oParsedShellHash.semanticObject}-${oParsedShellHash.action}` === oConfig.rootIntent) {
1615
+ if (UrlParsing.isRootIntent(oParsedHash)) {
1501
1616
  oResolvedHashFragment.navigationMode = NavigationMode.embedded;
1502
1617
  }
1503
1618
 
@@ -1515,10 +1630,7 @@ sap.ui.define([
1515
1630
 
1516
1631
  ushellUtils.setPerformanceMark("FLP-ShellController-resolveHashFragment-end");
1517
1632
 
1518
- return {
1519
- resolvedHashFragment: oResolvedHashFragment,
1520
- parsedShellHash: oParsedShellHash
1521
- };
1633
+ return oResolvedHashFragment;
1522
1634
  },
1523
1635
 
1524
1636
  /**
@@ -1586,15 +1698,13 @@ sap.ui.define([
1586
1698
  /**
1587
1699
  * Performs navigation based on the given resolved hash fragment.
1588
1700
  *
1589
- * @param {object} oParsedShellHash the parsed shell hash obtained via {@link sap.ushell.services.URLParsing} service.
1590
- * @param {string} sShellHash the hash fragment to navigate to. It must start with "#" (i.e., fixed).
1701
+ * @param {sap.ushell.services.URLParsing.DecomposedHash} oParsedHash the parsed shell hash.
1591
1702
  * @param {object} oResolvedHashFragment the hash fragment resolved via {@link sap.ushell.services.NavTargetResolutionInternal#resolveHashFragment}
1592
- * @param {string} sOldShellHash the old hash fragment. It must start with "#" (i.e., fixed).
1593
- * @param {string|null} sInnerAppRoute the inner app route.
1703
+ * @param {sap.ushell.services.URLParsing.DecomposedHash} oOldParsedShellHash the old parsed shell hash.
1594
1704
  *
1595
1705
  * @returns {Promise} Navigation Promise
1596
1706
  */
1597
- _openAppInplace: async function (oParsedShellHash, sShellHash, oResolvedHashFragment, sOldShellHash, sInnerAppRoute) {
1707
+ _openAppInplace: async function (oParsedHash, oResolvedHashFragment, oOldParsedShellHash) {
1598
1708
  // The url template resolution allows to set the appSpecificRoute to be set via parameter.
1599
1709
  // Therefore we need to update the innerAppRoute before actually opening the app.
1600
1710
  if (oResolvedHashFragment.replaceHashBeforeOpenAppInplace) {
@@ -1648,12 +1758,12 @@ sap.ui.define([
1648
1758
 
1649
1759
  AppLifeCycleAI.resetGlobalShellUIService();
1650
1760
 
1651
- const bNavigationFromHome = this._isFLPIntent(sOldShellHash);
1761
+ // historically this also includes the app finder
1762
+ const bNavigationFromHome = this._isFLPIntent(oOldParsedShellHash);
1652
1763
 
1653
1764
  const oApplicationHandle = await AppLifeCycleAI.startApplication(
1654
- oParsedShellHash,
1655
1765
  oResolvedHashFragment,
1656
- sInnerAppRoute || "",
1766
+ oParsedHash,
1657
1767
  bNavigationFromHome
1658
1768
  );
1659
1769
 
@@ -1667,11 +1777,8 @@ sap.ui.define([
1667
1777
  return ShellNavigationInternal.toExternal({ target: { shellHash: sNavigationRedirectHash } }, undefined, false);
1668
1778
  }
1669
1779
 
1670
- const oShellConfig = this._getConfig();
1671
-
1672
- const sBasicShellHash = UrlParsing.getBasicHash(sShellHash);
1673
1780
  // this only targets the overwritten rootIntent (e.g. workzone advanced)
1674
- const bIsNavToHome = sShellHash === "#" || (oShellConfig.rootIntent && sBasicShellHash === UrlParsing.getBasicHash(oShellConfig.rootIntent));
1781
+ const bIsNavToHome = UrlParsing.isEmptyHash(oParsedHash) || UrlParsing.isRootIntent(oParsedHash);
1675
1782
  await oApplicationHandle.navTo(bIsNavToHome); // todo: [FLPCOREANDUX-10024] triggers appLoaded event and switches the state
1676
1783
 
1677
1784
  // todo: [FLPCOREANDUX-10024] Move this into the regular flow
@@ -1680,7 +1787,7 @@ sap.ui.define([
1680
1787
  * Normally FESR record is closed on the "AppRendered" event, but for some cases (stateful container, etc.)
1681
1788
  * the application container is not re-rendered and EmbeddedNavigationDone is additionally fired to close the record.
1682
1789
  */
1683
- const oMetadata = AppConfiguration.getMetadata(oResolvedHashFragment);
1790
+ const oMetadata = AppConfiguration.getMetadata(oResolvedHashFragment, oParsedHash);
1684
1791
  EventHub.emit("CloseFesrRecord", { time: Date.now(), technicalName: oMetadata.technicalName });
1685
1792
  return;
1686
1793
  },
@@ -1839,10 +1946,6 @@ sap.ui.define([
1839
1946
  EventHub.emit("openedAppInNewWindow", Date.now());
1840
1947
  },
1841
1948
 
1842
- _isShellHomeIntent: function (sIntent) {
1843
- return sIntent === "#" || sIntent === oConfig.rootIntent;
1844
- },
1845
-
1846
1949
  /**
1847
1950
  * Shows an error message and navigates to the previous page.
1848
1951
  *
@@ -1956,14 +2059,14 @@ sap.ui.define([
1956
2059
  }
1957
2060
  this._setSideNavigationVisible(true);
1958
2061
 
1959
- const sAppHash = this.oShellNavigationInternal.hashChanger.getAppHash();
1960
- const sInnerAppRoute = sAppHash ? `&/${sAppHash}` : null;
2062
+ const sShellHash = oResolvedHashFragment.sFixedShellHash;
2063
+ const oParsedHash = UrlParsing.parseShellHash(sShellHash);
1961
2064
 
1962
- this.logOpenAppAction(oResolvedHashFragment, sInnerAppRoute).catch(() => {
1963
- Log.info("Opened application was not logged.", undefined, "sap.ushell.renderer.Shell.controller");
2065
+ this.logOpenAppAction(oResolvedHashFragment, oParsedHash).catch((oError) => {
2066
+ Log.info("Opened application was not logged.", oError, "sap.ushell.renderer.Shell.controller");
1964
2067
  });
1965
2068
 
1966
- this._notifyUITracer(oResolvedHashFragment);
2069
+ this._notifyUITracer(oResolvedHashFragment, oParsedHash);
1967
2070
  },
1968
2071
 
1969
2072
  externalSearchTriggered: function (sChannelId, sEventId, oData) {
@@ -1988,55 +2091,48 @@ sap.ui.define([
1988
2091
  * Logs an application to the recent activities.
1989
2092
  *
1990
2093
  * @param {object} oResolvedHashFragment The resolved target intent
1991
- * @param {string} sInnerAppRoute The inner app route part of the intent
2094
+ * @param {sap.ushell.services.URLParsing.DecomposedHash} oParsedHash The decomposed shell hash
1992
2095
  * @returns {Promise} A promise that is resolved once the action is logged
1993
2096
  * @throws {Error} If the application was not logged.
1994
2097
  */
1995
- logOpenAppAction: async function (oResolvedHashFragment, sInnerAppRoute) {
2098
+ logOpenAppAction: async function (oResolvedHashFragment, oParsedHash) {
1996
2099
  const bEnableRecentActivity = Config.last("/core/shell/enableRecentActivity") && Config.last("/core/shell/enableRecentActivityLogging");
1997
2100
  if (!bEnableRecentActivity) {
1998
2101
  throw new Error("Tracking of RecentActivity is disabled.");
1999
2102
  }
2000
2103
 
2001
- const oMetadata = AppConfiguration.getMetadata(oResolvedHashFragment);
2002
- // If the app is kept alive in the background, the fixedShellHash is often not supplied.
2003
- // In these cases, we then try to get the hash from the current location.
2004
- const sShellHash = oResolvedHashFragment.sFixedShellHash || this._getCurrentLocationHash();
2104
+ const oMetadata = AppConfiguration.getMetadata(oResolvedHashFragment, oParsedHash);
2105
+
2005
2106
  const oRecentEntry = {
2006
2107
  title: oMetadata.title,
2007
2108
  appType: AppType.APP, // default app type the shell adds is 'Application'
2008
- url: sInnerAppRoute ? sShellHash + sInnerAppRoute : sShellHash
2109
+ url: UrlParsing.constructShellHash(oParsedHash, true)
2009
2110
  };
2010
2111
 
2011
- const oParsed = UrlParsing.parseShellHash(sShellHash);
2012
- if (oParsed) {
2013
- // This is the key that determines whether an existing activity should be updated or added.
2112
+ // This is the key that determines whether an existing activity should be updated or added.
2014
2113
 
2015
- // In theory we could use the full hash without parameters here, however this causes the same application to be logged
2016
- // multiple times with the same title, confusing the user.
2114
+ // In theory we could use the full hash without parameters here, however this causes the same application to be logged
2115
+ // multiple times with the same title, confusing the user.
2017
2116
 
2018
- // Therefore we choose to update a previous entry in case just the parameters change. This might cause a bit of
2019
- // confusion in case another target mapping is opened, as the title of a previously logged entry would be updated
2020
- // instead of having a new title added to the recent activities (same target mapping but different title).
2117
+ // Therefore we choose to update a previous entry in case just the parameters change. This might cause a bit of
2118
+ // confusion in case another target mapping is opened, as the title of a previously logged entry would be updated
2119
+ // instead of having a new title added to the recent activities (same target mapping but different title).
2021
2120
 
2022
- // Perhaps this could be further fixed by hashing a target mapping on the client before returning the resolution
2023
- // result, and using the hash as the id.
2024
- oRecentEntry.appId = `#${UrlParsing.constructShellHash({
2025
- semanticObject: oParsed.semanticObject,
2026
- action: oParsed.action
2027
- })}`;
2028
- } else {
2029
- oRecentEntry.appId = sShellHash;
2030
- }
2121
+ // Perhaps this could be further fixed by hashing a target mapping on the client before returning the resolution
2122
+ // result, and using the hash as the id.
2123
+ oRecentEntry.appId = UrlParsing.constructBasicHash(oParsedHash, true);
2031
2124
 
2032
2125
  // The recent activity for searches is done in a different way, see this._logSearchActivity
2033
- if (sShellHash && sShellHash.indexOf("#Action-search") === -1 && sShellHash.indexOf("#Shell-startIntent") === -1) {
2034
- await ushellUtils.awaitTimeout(1500);
2035
- await this._logRecentActivity(oRecentEntry);
2036
- return;
2126
+ const aSpecialCases = [
2127
+ "#Action-search",
2128
+ "#Shell-startIntent"
2129
+ ];
2130
+ if (aSpecialCases.includes(oRecentEntry.appId)) {
2131
+ throw new Error("RecentActivity was not logged.");
2037
2132
  }
2038
2133
 
2039
- throw new Error("RecentActivity was not logged.");
2134
+ await ushellUtils.awaitTimeout(1500);
2135
+ await this._logRecentActivity(oRecentEntry);
2040
2136
  },
2041
2137
 
2042
2138
  /**
@@ -2044,13 +2140,19 @@ sap.ui.define([
2044
2140
  * a corresponding event on the event hub.
2045
2141
  *
2046
2142
  * @param {object} oResolvedHashFragment - the result of the NavTargetResolutionInternal service
2143
+ * @param {sap.ushell.services.URLParsing.DecomposedHash} oParsedHash - the parsed shell hash
2047
2144
  */
2048
- _notifyUITracer: function (oResolvedHashFragment) {
2145
+ _notifyUITracer: function (oResolvedHashFragment, oParsedHash) {
2049
2146
  try {
2050
- const sApplicationId =
2051
- oResolvedHashFragment.reservedParameters?.["sap-fiori-id"]?.[0] ||
2052
- oResolvedHashFragment.reservedParameters?.["sap-ui-app-id-hint"]?.[0] ||
2053
- oResolvedHashFragment.ui5ComponentName;
2147
+ const sApplicationId = oResolvedHashFragment.reservedParameters?.["sap-fiori-id"]?.[0]
2148
+ || oResolvedHashFragment.reservedParameters?.["sap-ui-app-id-hint"]?.[0]
2149
+ || oResolvedHashFragment.ui5ComponentName;
2150
+
2151
+ const oParsedHashWithoutInnerAppRoute = {
2152
+ ...oParsedHash,
2153
+ appSpecificRoute: undefined
2154
+ };
2155
+ const sHash = UrlParsing.constructShellHash(oParsedHashWithoutInnerAppRoute, true);
2054
2156
 
2055
2157
  EventHub.emit("UITracer.trace", {
2056
2158
  reason: "NavigateApp",
@@ -2058,7 +2160,7 @@ sap.ui.define([
2058
2160
  data: {
2059
2161
  applicationId: sApplicationId || "",
2060
2162
  applicationType: oResolvedHashFragment.applicationType || "",
2061
- hash: oResolvedHashFragment.sFixedShellHash || "",
2163
+ hash: sHash,
2062
2164
  targetNavigationMode: oResolvedHashFragment.targetNavigationMode || "",
2063
2165
  providerId: oResolvedHashFragment.contentProviderId || "",
2064
2166
  targetUrl: oResolvedHashFragment.url || ""
@@ -2436,8 +2538,8 @@ sap.ui.define([
2436
2538
  EventHub.emit("showNotifications", bSelected);
2437
2539
  },
2438
2540
 
2439
- _isFLPIntent: function (sHash) {
2440
- const sBasicHash = UrlParsing.getBasicHash(sHash);
2541
+ _isFLPIntent: function (oParsedHash) {
2542
+ const sBasicHash = UrlParsing.constructBasicHash(oParsedHash);
2441
2543
  const aFLPIntents = [
2442
2544
  "Shell-home",
2443
2545
  "Shell-appfinder",
@@ -489,7 +489,7 @@ sap.ui.define([
489
489
  const addDanglingControl = this.addDanglingControl.bind(this);
490
490
  let oUserActionsMenuAvatar;
491
491
  if (Config.last("/core/shellBar/enabled")) {
492
- sap.ui.require(["sap/ushell/gen/ui5/webcomponents/dist/Avatar", "sap/m/Image"], (AvatarWC, Image) => {
492
+ sap.ui.require(["sap/f/gen/ui5/webcomponents/dist/Avatar", "sap/m/Image"], (AvatarWC, Image) => {
493
493
  oUserActionsMenuAvatar = new AvatarWC({
494
494
  id: "userActionsMenuHeaderButton",
495
495
  icon: "sap-icon://person-placeholder",