@sapui5/sap.ushell 1.126.1 → 1.127.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 (401) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell/.library +1 -1
  3. package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
  4. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
  5. package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
  6. package/src/main/js/sap/ushell/SessionHandler.js +2 -2
  7. package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
  8. package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
  9. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
  10. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
  11. package/src/main/js/sap/ushell/User.js +7 -7
  12. package/src/main/js/sap/ushell/UserActivityLog.js +8 -13
  13. package/src/main/js/sap/ushell/_Config/utils.js +18 -0
  14. package/src/main/js/sap/ushell/_URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
  15. package/src/main/js/sap/ushell/_URLTemplateProcessor/DependencyGraph.js +1 -1
  16. package/src/main/js/sap/ushell/_URLTemplateProcessor/Functions.js +1 -1
  17. package/src/main/js/sap/ushell/_URLTemplateProcessor/Resolvers.js +1 -1
  18. package/src/main/js/sap/ushell/_URLTemplateProcessor/TemplateParameterParser.js +1 -1
  19. package/src/main/js/sap/ushell/_URLTemplateProcessor/utils.js +1 -1
  20. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  21. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  22. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  23. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +28 -9
  24. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
  25. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +4 -3
  26. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  27. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
  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 -1
  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 +1 -1
  44. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/cdm/v3/utilsCdm.js +6 -1
  46. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  47. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +1 -1
  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/appRuntime/neo/AppInfoService.js +1 -0
  69. package/src/main/js/sap/ushell/appRuntime/neo/AppRuntimeNeo.js +1 -0
  70. package/src/main/js/sap/ushell/appRuntime/neo/ProxyAppUtils.js +1 -0
  71. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +6 -0
  72. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer.js +19 -0
  73. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
  74. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
  75. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +51 -0
  76. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -1
  77. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
  78. package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +6 -6
  79. package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
  80. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
  81. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +1 -1
  82. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
  83. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +1 -1
  84. package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
  85. package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
  86. package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
  87. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
  88. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
  89. package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +1 -1
  90. package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
  91. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
  92. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
  93. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +1 -1
  94. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
  95. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  96. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/FLPScheduler.js +47 -16
  97. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/StepConfiguration.json +10 -3
  98. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/logger.js +1 -1
  99. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/state.js +1 -1
  100. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.js +9 -0
  101. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  102. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +13 -33
  103. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +1 -1
  104. package/src/main/js/sap/ushell/components/_HeaderManager/ShellHeader.controller.js +135 -8
  105. package/src/main/js/sap/ushell/components/_HomepageManager/DashboardLoadingManager.js +1 -1
  106. package/src/main/js/sap/ushell/components/_HomepageManager/PagingManager.js +1 -1
  107. package/src/main/js/sap/ushell/components/_HomepageManager/PersistentPageOperationAdapter.js +1 -1
  108. package/src/main/js/sap/ushell/components/_HomepageManager/TransientPageOperationAdapter.js +1 -1
  109. package/src/main/js/sap/ushell/components/appfinder/AppFinder.controller.js +0 -6
  110. package/src/main/js/sap/ushell/components/appfinder/Component.js +1 -1
  111. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  112. package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +74 -72
  113. package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +1 -1
  114. package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
  115. package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +35 -18
  116. package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +42 -27
  117. package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
  118. package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +1 -1
  119. package/src/main/js/sap/ushell/components/contentFinder/Component.js +19 -12
  120. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +24 -5
  121. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  122. package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
  123. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  124. package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +47 -7
  125. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +7 -6
  126. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchBox.fragment.xml +5 -4
  127. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTree.view.xml +34 -22
  128. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +7 -6
  129. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +3 -1
  130. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +1 -1
  131. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifestAppSearch.json +1 -1
  132. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  133. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  134. package/src/main/js/sap/ushell/components/homepage/Component.js +1 -1
  135. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
  136. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +29 -24
  137. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
  138. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  139. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  140. package/src/main/js/sap/ushell/components/pages/Component.js +10 -3
  141. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  142. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +26 -5
  143. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  144. package/src/main/js/sap/ushell/components/runtimeSwitcher/Component.js +3 -2
  145. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
  146. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  147. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  148. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +19 -3
  149. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  150. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenu.view.xml +1 -0
  151. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +24 -22
  152. package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +1 -1
  153. package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +80 -17
  154. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  155. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  156. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
  157. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  158. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  159. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
  160. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
  161. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +12 -16
  162. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +9 -4
  163. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +9 -9
  164. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +3 -45
  165. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +31 -23
  166. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenuPopover.fragment.xml +7 -2
  167. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +3 -3
  168. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +0 -4
  169. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +0 -1
  170. package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +1 -1
  171. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  172. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +2 -1
  173. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
  174. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1939 -1946
  175. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
  176. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
  177. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
  178. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
  179. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
  180. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
  181. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  182. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +3 -2
  183. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +1 -1
  184. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  185. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  186. package/src/main/js/sap/ushell/library.js +1 -1
  187. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  188. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +15 -12
  189. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
  190. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  191. package/src/main/js/sap/ushell/renderer/AccessKeysHandler.js +31 -9
  192. package/src/main/js/sap/ushell/renderer/Renderer.js +303 -287
  193. package/src/main/js/sap/ushell/renderer/Shell.controller.js +99 -101
  194. package/src/main/js/sap/ushell/renderer/Shell.view.js +110 -89
  195. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.controller.js +29 -15
  196. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.view.xml +2 -2
  197. package/src/main/js/sap/ushell/renderer/resources/resources.properties +2 -0
  198. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  199. package/src/main/js/sap/ushell/renderers/fiori2/History.js +1 -0
  200. package/src/main/js/sap/ushell/renderers/fiori2/LogonFrameProvider.js +1 -0
  201. package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +108 -87
  202. package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyAppsManager.js +1 -0
  203. package/src/main/js/sap/ushell/services/AppLifeCycle.js +1 -1
  204. package/src/main/js/sap/ushell/services/AppState.js +1 -1
  205. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  206. package/src/main/js/sap/ushell/services/BookmarkV2.js +1 -1
  207. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
  208. package/src/main/js/sap/ushell/services/CommonDataModel.js +2 -15
  209. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  210. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  211. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
  212. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +1 -1
  213. package/src/main/js/sap/ushell/services/DarkModeSupport.js +11 -5
  214. package/src/main/js/sap/ushell/services/Extension/Item.js +4 -4
  215. package/src/main/js/sap/ushell/services/Extension.js +36 -2
  216. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +1 -1
  217. package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +1 -1
  218. package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +1 -1
  219. package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +4 -4
  220. package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +18 -2
  221. package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +20 -2
  222. package/src/main/js/sap/ushell/services/FrameBoundExtension.js +96 -2
  223. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
  224. package/src/main/js/sap/ushell/services/Menu.js +1 -1
  225. package/src/main/js/sap/ushell/services/Message.js +1 -1
  226. package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
  227. package/src/main/js/sap/ushell/services/MessageInternal.js +13 -8
  228. package/src/main/js/sap/ushell/services/Navigation/compatibility.js +1 -1
  229. package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
  230. package/src/main/js/sap/ushell/services/Navigation.js +1 -1
  231. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  232. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  233. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  234. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  235. package/src/main/js/sap/ushell/services/Pages.js +4 -3
  236. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  237. package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
  238. package/src/main/js/sap/ushell/services/PluginManager.js +1 -1
  239. package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
  240. package/src/main/js/sap/ushell/services/Search.js +1 -1
  241. package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
  242. package/src/main/js/sap/ushell/services/SearchableContent.js +6 -5
  243. package/src/main/js/sap/ushell/services/ShellNavigation.js +1 -1
  244. package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
  245. package/src/main/js/sap/ushell/services/SpaceContent.js +1 -1
  246. package/src/main/js/sap/ushell/services/UITracer.js +1 -1
  247. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  248. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  249. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +3 -3
  250. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
  251. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
  252. package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
  253. package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
  254. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  255. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  256. package/src/main/js/sap/ushell/services/_AppState/AppStatePersistencyMethod.js +1 -1
  257. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Formatter.js +1 -1
  258. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundIndex.js +1 -1
  259. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundProvider.js +1 -1
  260. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +1 -1
  261. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +1 -1
  262. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/StagedLogger.js +1 -1
  263. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/SystemContext.js +1 -1
  264. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Utils.js +1 -1
  265. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
  266. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +1 -1
  267. package/src/main/js/sap/ushell/services/_CommonDataModel/SiteConverter.js +1 -1
  268. package/src/main/js/sap/ushell/services/_CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
  269. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +2 -2
  270. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  271. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  272. package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
  273. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  274. package/src/main/js/sap/ushell/services/_Personalization/VariantSetAdapter.js +1 -0
  275. package/src/main/js/sap/ushell/services/_Personalization/WindowAdapter.js +1 -0
  276. package/src/main/js/sap/ushell/services/_Personalization/WindowAdapterContainer.js +1 -0
  277. package/src/main/js/sap/ushell/services/_Personalization/constants.js +1 -0
  278. package/src/main/js/sap/ushell/services/_Personalization/constants.private.js +1 -0
  279. package/src/main/js/sap/ushell/services/_Personalization/utils.js +1 -0
  280. package/src/main/js/sap/ushell/services/_PluginManager/Extensions.js +1 -1
  281. package/src/main/js/sap/ushell/services/_PluginManager/HeaderExtensions.js +2 -2
  282. package/src/main/js/sap/ushell/services/_PluginManager/MenuExtensions.js +1 -1
  283. package/src/main/js/sap/ushell/services/_Ui5ComponentLoader/utils.js +1 -1
  284. package/src/main/js/sap/ushell/state/BaseState.js +79 -0
  285. package/src/main/js/sap/ushell/state/ControlManager.js +209 -0
  286. package/src/main/js/sap/ushell/state/CurrentState.js +180 -0
  287. package/src/main/js/sap/ushell/state/KeepAlive.js +75 -0
  288. package/src/main/js/sap/ushell/state/ShellModel.js +112 -0
  289. package/src/main/js/sap/ushell/state/StateManager/LaunchpadState.js +40 -0
  290. package/src/main/js/sap/ushell/state/StateManager/Operation.js +42 -0
  291. package/src/main/js/sap/ushell/state/StateManager/ShellMode.js +86 -0
  292. package/src/main/js/sap/ushell/state/StateManager.js +648 -0
  293. package/src/main/js/sap/ushell/state/StateRules.js +295 -0
  294. package/src/main/js/sap/ushell/state/StrategyFactory/DefaultStrategy.js +74 -0
  295. package/src/main/js/sap/ushell/state/StrategyFactory/FloatingActionsStrategy.js +78 -0
  296. package/src/main/js/sap/ushell/state/StrategyFactory/HeadEndItemsStrategy.js +130 -0
  297. package/src/main/js/sap/ushell/state/StrategyFactory/HeadItemsStrategy.js +104 -0
  298. package/src/main/js/sap/ushell/state/StrategyFactory/SidePaneStrategy.js +78 -0
  299. package/src/main/js/sap/ushell/state/StrategyFactory/SubHeaderStrategy.js +78 -0
  300. package/src/main/js/sap/ushell/state/StrategyFactory/UserActionsStrategy.js +60 -0
  301. package/src/main/js/sap/ushell/state/StrategyFactory.js +168 -0
  302. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
  303. package/src/main/js/sap/ushell/themes/base/UserSettings.less +1 -5
  304. package/src/main/js/sap/ushell/themes/base/WorkPageCell.less +45 -49
  305. package/src/main/js/sap/ushell/themes/sap_belize_base/UserSettings.less +1 -5
  306. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/UserSettings.less +1 -5
  307. package/src/main/js/sap/ushell/themes/sap_hcb/base_ActionMode.less +107 -0
  308. package/src/main/js/sap/ushell/themes/sap_hcb/base_AddBookmarkButton.less +37 -0
  309. package/src/main/js/sap/ushell/themes/sap_hcb/base_AnchorItem.less +81 -0
  310. package/src/main/js/sap/ushell/themes/sap_hcb/base_AnchorNavigationBar.less +86 -0
  311. package/src/main/js/sap/ushell/themes/sap_hcb/base_AppearanceView.less +213 -0
  312. package/src/main/js/sap/ushell/themes/sap_hcb/base_ApplicationContainer.less +37 -0
  313. package/src/main/js/sap/ushell/themes/sap_hcb/base_Catalog.less +387 -0
  314. package/src/main/js/sap/ushell/themes/sap_hcb/base_ContactSupport.less +12 -0
  315. package/src/main/js/sap/ushell/themes/sap_hcb/base_ContentFinder.less +26 -0
  316. package/src/main/js/sap/ushell/themes/sap_hcb/base_CustomGroupHeaderListItem.less +10 -0
  317. package/src/main/js/sap/ushell/themes/sap_hcb/base_Dashboard.less +66 -0
  318. package/src/main/js/sap/ushell/themes/sap_hcb/base_DynamicTile.less +114 -0
  319. package/src/main/js/sap/ushell/themes/sap_hcb/base_Factsheet.less +225 -0
  320. package/src/main/js/sap/ushell/themes/sap_hcb/base_FloatingContainer.less +125 -0
  321. package/src/main/js/sap/ushell/themes/sap_hcb/base_FlpSettings.less +83 -0
  322. package/src/main/js/sap/ushell/themes/sap_hcb/base_GroupList.less +68 -0
  323. package/src/main/js/sap/ushell/themes/sap_hcb/base_GroupListItem.less +54 -0
  324. package/src/main/js/sap/ushell/themes/sap_hcb/base_IconFonts.less +21 -0
  325. package/src/main/js/sap/ushell/themes/sap_hcb/base_ImageTile.less +23 -0
  326. package/src/main/js/sap/ushell/themes/sap_hcb/base_LoadingDialog.less +47 -0
  327. package/src/main/js/sap/ushell/themes/sap_hcb/base_MenuBar.less +23 -0
  328. package/src/main/js/sap/ushell/themes/sap_hcb/base_Notifications.less +135 -0
  329. package/src/main/js/sap/ushell/themes/sap_hcb/base_Page.less +49 -0
  330. package/src/main/js/sap/ushell/themes/sap_hcb/base_PictureTile.less +119 -0
  331. package/src/main/js/sap/ushell/themes/sap_hcb/base_PictureViewer.less +25 -0
  332. package/src/main/js/sap/ushell/themes/sap_hcb/base_PlusTile.less +38 -0
  333. package/src/main/js/sap/ushell/themes/sap_hcb/base_QuickAccess.less +18 -0
  334. package/src/main/js/sap/ushell/themes/sap_hcb/base_RightFloatingContainerItem.less +82 -0
  335. package/src/main/js/sap/ushell/themes/sap_hcb/base_SearchCEP.less +121 -0
  336. package/src/main/js/sap/ushell/themes/sap_hcb/base_SearchFLP.less +10 -0
  337. package/src/main/js/sap/ushell/themes/sap_hcb/base_Section.less +60 -0
  338. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellAppTitle.less +207 -0
  339. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellFloatingAction.less +61 -0
  340. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellFloatingActions.less +14 -0
  341. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +389 -0
  342. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellLayout.less +168 -0
  343. package/src/main/js/sap/ushell/themes/sap_hcb/base_SidePane.less +8 -0
  344. package/src/main/js/sap/ushell/themes/sap_hcb/base_StaticTile.less +9 -0
  345. package/src/main/js/sap/ushell/themes/sap_hcb/base_SubHeader.less +3 -0
  346. package/src/main/js/sap/ushell/themes/sap_hcb/base_SysInfoBar.less +164 -0
  347. package/src/main/js/sap/ushell/themes/sap_hcb/base_TargetMappingConfiguration.less +8 -0
  348. package/src/main/js/sap/ushell/themes/sap_hcb/base_Tile.less +223 -0
  349. package/src/main/js/sap/ushell/themes/sap_hcb/base_TileBase.less +152 -0
  350. package/src/main/js/sap/ushell/themes/sap_hcb/base_TileContainer.less +495 -0
  351. package/src/main/js/sap/ushell/themes/sap_hcb/base_TilePlaceholder.less +75 -0
  352. package/src/main/js/sap/ushell/themes/sap_hcb/base_TileState.less +62 -0
  353. package/src/main/js/sap/ushell/themes/sap_hcb/base_ToolAreaItem.less +85 -0
  354. package/src/main/js/sap/ushell/themes/sap_hcb/base_UserActionsMenu.less +23 -0
  355. package/src/main/js/sap/ushell/themes/sap_hcb/base_UserConsentDialog.less +52 -0
  356. package/src/main/js/sap/ushell/themes/sap_hcb/base_UserSettings.less +109 -0
  357. package/src/main/js/sap/ushell/themes/sap_hcb/base_ViewPortContainer.less +28 -0
  358. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPage.less +58 -0
  359. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageButton.less +60 -0
  360. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageCell.less +144 -0
  361. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageColumn.less +39 -0
  362. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageColumnResizer.less +128 -0
  363. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageRow.less +987 -0
  364. package/src/main/js/sap/ushell/themes/sap_hcb/base_shared.less +40 -0
  365. package/src/main/js/sap/ushell/themes/sap_hcb/library.source.less +70 -1
  366. package/src/main/js/sap/ushell/ui/ShellHeader.fragment.xml +17 -11
  367. package/src/main/js/sap/ushell/ui/ShellHeader.js +10 -3
  368. package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +0 -4
  369. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -5
  370. package/src/main/js/sap/ushell/ui/footerbar/AddBookmarkButton.js +19 -5
  371. package/src/main/js/sap/ushell/ui/footerbar/ContactSupportDialog.controller.js +9 -3
  372. package/src/main/js/sap/ushell/ui/footerbar/SendAsEmailButton.js +5 -5
  373. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  374. package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
  375. package/src/main/js/sap/ushell/ui/launchpad/TileContainer.js +17 -12
  376. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  377. package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +50 -35
  378. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +2 -2
  379. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  380. package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
  381. package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
  382. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  383. package/src/main/js/sap/ushell/utils/WindowUtils.js +3 -3
  384. package/src/main/js/sap/ushell/utils/workpage/DestinationResolver.js +89 -0
  385. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +51 -47
  386. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +32 -1
  387. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +1 -1
  388. package/src/main/js/sap/ushell/utils.js +26 -2
  389. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  390. package/src/main/js/sap/ushell/bootstrap/common/common.load.ui5theme.js +0 -67
  391. package/src/main/js/sap/ushell/components/HeaderManager.js +0 -547
  392. package/src/main/js/sap/ushell/components/StateHelper.js +0 -70
  393. package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadEndItemsStrategy.js +0 -105
  394. package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadItemsStrategy.js +0 -75
  395. package/src/main/js/sap/ushell/components/_HeaderManager/ControlManager.js +0 -70
  396. package/src/main/js/sap/ushell/components/_HeaderManager/ExtendApplicationPropertyStrategy.js +0 -18
  397. package/src/main/js/sap/ushell/components/_HeaderManager/PropertyStrategiesFactory.js +0 -58
  398. package/src/main/js/sap/ushell/components/_HeaderManager/RemoveItemsStrategy.js +0 -46
  399. package/src/main/js/sap/ushell/components/_HeaderManager/SetHeadPropertyStrategy.js +0 -19
  400. package/src/main/js/sap/ushell/components/applicationIntegration/elements/model.js +0 -1309
  401. package/src/main/js/sap/ushell/components/applicationIntegration/relatedShellElements/RelatedShellElements.js +0 -363
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file PageRuntime controller for PageRuntime view
5
- * @version 1.126.1
5
+ * @version 1.127.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ui/core/Element",
@@ -286,6 +286,21 @@ sap.ui.define([
286
286
  EventHub.emit("firstSegmentCompleteLoaded", true);
287
287
  },
288
288
 
289
+ /**
290
+ * Updates the homeUri in the shell header
291
+ * @param {object} oCurrentSpaceAndPage The current space and page
292
+ *
293
+ * @since 1.127.0
294
+ * @private
295
+ */
296
+ _updateHomeUri: function (oCurrentSpaceAndPage) {
297
+ const sRootIntent = Config.last("/core/shellHeader/rootIntent");
298
+ if (Config.last("/core/spaces/homeNavigationTarget") === "origin_page") {
299
+ var sNewHash = oCurrentSpaceAndPage ? encodeURI(oCurrentSpaceAndPage.hash) : sRootIntent;
300
+ Config.emit("/core/shellHeader/homeUri", "#" + sNewHash);
301
+ }
302
+ },
303
+
289
304
  /**
290
305
  * Handles the route matching for the "home" and "openFLPPage" route
291
306
  *
@@ -309,7 +324,10 @@ sap.ui.define([
309
324
  this.oPagesRuntimeNavContainer.to(this.oEmptyPage);
310
325
  // Reset spacePage for hierarchy and home button
311
326
  // BCP: 2270105250
312
- Config.emit("/core/shell/model/currentSpaceAndPage", undefined);
327
+ this._updateHomeUri(undefined);
328
+
329
+ // Needed for Hierarchy Menu in Spaces mode - see sap/ushell/components/applicationIntegration/AppMeta
330
+ Config.emit("/core/spaces/currentSpaceAndPage", undefined);
313
331
  }
314
332
 
315
333
  // Hide "[Edit Current Page]" button of page`s runtime
@@ -558,14 +576,17 @@ sap.ui.define([
558
576
  }
559
577
  oFLPPageControl.setShowTitle(bShowTitle);
560
578
 
561
- // Needed for Hierarchy Menu in Spaces mode - see sap/ushell/components/applicationIntegration/AppMeta
562
- // Needed for navigation target of the header Logo in Spaces mode - see sap/ushell/components/HeaderManager
563
579
  var oSpacePageData = {
564
580
  pageTitle: oTitles.pageTitle,
565
581
  spaceTitle: oTitles.spaceTitle,
566
582
  hash: hasher.getHash()
567
583
  };
568
- Config.emit("/core/shell/model/currentSpaceAndPage", oSpacePageData);
584
+
585
+ // Needed for navigation target of the header Logo in Spaces mode
586
+ this._updateHomeUri(oSpacePageData);
587
+
588
+ // Needed for Hierarchy Menu in Spaces mode - see sap/ushell/components/applicationIntegration/AppMeta
589
+ Config.emit("/core/spaces/currentSpaceAndPage", oSpacePageData);
569
590
  }.bind(this));
570
591
  }.bind(this));
571
592
  },
@@ -3,7 +3,7 @@
3
3
  "sap.app": {
4
4
  "id": "sap.ushell.components.pages",
5
5
  "applicationVersion": {
6
- "version": "1.126.1"
6
+ "version": "1.127.0"
7
7
  },
8
8
  "i18n": {
9
9
  "bundleUrl": "../../renderer/resources/resources.properties",
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
 
3
3
  sap.ui.define([
4
- "sap/ui/core/UIComponent"
4
+ "sap/ui/core/UIComponent"
5
5
 
6
6
  ], function (UIComponent) {
7
7
  "use strict";
@@ -9,7 +9,8 @@ sap.ui.define([
9
9
  return UIComponent.extend("sap.ushell.components.runtimeSwitcher.Component", {
10
10
  metadata: {
11
11
  manifest: "json",
12
- library: "sap.ushell"
12
+ library: "sap.ushell",
13
+ interfaces: ["sap.ui.core.IAsyncContentCreation"]
13
14
  }
14
15
 
15
16
  });
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file RuntimeSwitcher's controller for RuntimeSwitcher's view
5
- * @version 1.126.1
5
+ * @version 1.127.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ui/core/mvc/Controller",
@@ -3,7 +3,7 @@
3
3
  "sap.app": {
4
4
  "id": "sap.ushell.components.runtimeSwitcher",
5
5
  "applicationVersion": {
6
- "version": "1.126.1"
6
+ "version": "1.127.0"
7
7
  },
8
8
  "ach": "CA-FLP-FE-COR",
9
9
  "type": "component",
@@ -3,7 +3,7 @@
3
3
  "sap.app": {
4
4
  "id": "sap.ushell.components.shell.MenuBar",
5
5
  "applicationVersion": {
6
- "version": "1.126.1"
6
+ "version": "1.127.0"
7
7
  },
8
8
  "i18n": {
9
9
  "bundleUrl": "../../../renderer/resources/resources.properties",
@@ -4,7 +4,7 @@
4
4
  * @fileOverview Controller for the NavigationBarMenu Popover. It is responsible for Popover handling, model binding, persistence
5
5
  * logic to pin, unpin and rearrange pinned spaces as well as executing navigation.
6
6
  *
7
- * @version 1.126.1
7
+ * @version 1.127.0
8
8
  * @private
9
9
  */
10
10
  sap.ui.define([
@@ -17,7 +17,9 @@ sap.ui.define([
17
17
  "sap/ui/model/Sorter",
18
18
  "sap/ushell/resources",
19
19
  "sap/ushell/utils/WindowUtils",
20
- "sap/ushell/Container"
20
+ "sap/ushell/Container",
21
+ "sap/ushell/EventHub",
22
+ "sap/ui/model/json/JSONModel"
21
23
  ], function (
22
24
  InvisibleMessage,
23
25
  coreLibrary,
@@ -28,7 +30,9 @@ sap.ui.define([
28
30
  Sorter,
29
31
  resources,
30
32
  WindowUtils,
31
- Container
33
+ Container,
34
+ EventHub,
35
+ JSONModel
32
36
  ) {
33
37
  "use strict";
34
38
 
@@ -62,6 +66,16 @@ sap.ui.define([
62
66
  onInit: function () {
63
67
  this.pMenuServicePromise = Container.getServiceAsync("Menu");
64
68
  this._oInvisibleMessageInstance = InvisibleMessage.getInstance();
69
+
70
+ const oViewConfigurationModel = new JSONModel({
71
+ enableMenuBarNavigation: true
72
+ });
73
+ this.getView().setModel(oViewConfigurationModel, "viewConfiguration");
74
+
75
+ this._oEventHubListener = EventHub.on("enableMenuBarNavigation").do((bEnableMenuBarNavigation) => {
76
+ this.getView().getModel("viewConfiguration").setProperty("/enableMenuBarNavigation", bEnableMenuBarNavigation);
77
+ });
78
+
65
79
  },
66
80
 
67
81
  /**
@@ -74,6 +88,8 @@ sap.ui.define([
74
88
  if (this._oInvisibleMessageInstance) {
75
89
  this._oInvisibleMessageInstance.destroy();
76
90
  }
91
+
92
+ this._oEventHubListener.off();
77
93
  },
78
94
 
79
95
  /**
@@ -3,7 +3,7 @@
3
3
  "sap.app": {
4
4
  "id": "sap.ushell.components.shell.NavigationBarMenu",
5
5
  "applicationVersion": {
6
- "version": "1.126.1"
6
+ "version": "1.127.0"
7
7
  },
8
8
  "i18n": {
9
9
  "bundleUrl": "../../../renderer/resources/resources.properties",
@@ -7,6 +7,7 @@
7
7
  <Button
8
8
  id="navigationBarMenuButton"
9
9
  icon="sap-icon://menu2"
10
+ enabled="{viewConfiguration>/enableMenuBarNavigation}"
10
11
  press=".openNavigationBarMenuPopover"
11
12
  tooltip="{i18n>NavigationBarMenu.Button.OpenPopover}"
12
13
  ariaHasPopup="Dialog">
@@ -15,7 +15,8 @@ sap.ui.define([
15
15
  "sap/ushell/resources",
16
16
  "sap/ushell/utils",
17
17
  "sap/ushell/ui/shell/ShellHeadItem",
18
- "sap/ushell/Container"
18
+ "sap/ushell/Container",
19
+ "sap/ushell/state/ShellModel"
19
20
  ], function (
20
21
  Log,
21
22
  Element,
@@ -31,7 +32,8 @@ sap.ui.define([
31
32
  resources,
32
33
  utils,
33
34
  ShellHeadItem,
34
- Container
35
+ Container,
36
+ ShellModel
35
37
  ) {
36
38
  "use strict";
37
39
 
@@ -41,14 +43,13 @@ sap.ui.define([
41
43
  // shortcut for sap.ushell.FloatingNumberType
42
44
  var FloatingNumberType = ushellLibrary.FloatingNumberType;
43
45
 
44
-
45
46
  function getNotificationButton () {
46
47
  return Element.getElementById("NotificationsCountButton");
47
48
  }
48
49
 
49
50
  return UIComponent.extend("sap.ushell.components.shell.Notifications.Component", {
50
51
  metadata: {
51
- version: "1.126.1",
52
+ version: "1.127.0",
52
53
  library: "sap.ushell.components.shell.Notifications",
53
54
  dependencies: {
54
55
  libs: ["sap.m"]
@@ -58,33 +59,30 @@ sap.ui.define([
58
59
  createContent: function () {
59
60
  this._aTimeouts = [];
60
61
  this.oRenderer = Container.getRendererInternal("fiori2");
61
- this.oShellModel = this.oRenderer.shellCtrl.getModel();
62
+ this.oConfigModel = ShellModel.getConfigModel();
62
63
  Container.getServiceAsync("NotificationsV2").then(function (oNotificationsService) {
63
64
 
64
65
  this.oNotificationsService = oNotificationsService;
65
66
 
66
67
  if (this.oNotificationsService.isEnabled() === true) {
67
68
  EventBus.getInstance().subscribe("sap.ushell.services.Notifications", "onNewNotifications", this._handleAlerts, this);
68
- this.oShellModel.setProperty("/enableNotifications", true);
69
+ this.oConfigModel.setProperty("/enableNotifications", true);
69
70
  this.oNotificationsService.init();
70
71
  if (this.oRenderer.getShellConfig().enableNotificationsUI === true) {
71
- this.oShellModel.setProperty("/enableNotificationsUI", true);
72
+ this.oConfigModel.setProperty("/enableNotificationsUI", true);
72
73
  this.oNotificationsService.registerNotificationsUpdateCallback(this._updateCount.bind(this), true);
73
74
  }
74
- this._createNotificationButton(this.oShellModel);
75
- //ElementsModel, not shell model. Need only 3 state, for this reason call directly
76
- this.oRenderer.oShellModel.addHeaderEndItem(["NotificationsCountButton"], false, ["home", "app", "minimal"], true);
75
+ this._createNotificationButton(this.oConfigModel);
77
76
 
78
77
  EventHub.on("showNotifications").do(this._toggleNotifications.bind(this));
79
78
  }
80
79
  }.bind(this));
81
80
  },
82
81
 
83
- _createNotificationButton: function (oShellModel) {
82
+ _createNotificationButton: function (oConfigModel) {
84
83
  // The press handler is added in the Notification Component
85
- var sId = "NotificationsCountButton";
86
84
  var oNotificationToggleButton = new ShellHeadItem({
87
- id: sId,
85
+ id: "NotificationsCountButton",
88
86
  tooltip: resources.i18n.getText("notificationsBtn_title"),
89
87
  icon: IconPool.getIconURI("bell"),
90
88
  text: resources.i18n.getText("notificationsBtn_title"),
@@ -92,16 +90,18 @@ sap.ui.define([
92
90
  ariaHaspopup: "dialog",
93
91
  enabled: true,
94
92
  selected: false,
95
- visible: "{/enableNotifications}",
96
- floatingNumber: "{/notificationsCount}",
93
+ visible: "{configModel>/enableNotifications}",
94
+ floatingNumber: "{configModel>/notificationsCount}",
97
95
  floatingNumberMaxValue: Device.system.phone ? 99 : 999, // according to the UX specification
98
96
  floatingNumberType: FloatingNumberType.Notifications,
99
97
  press: function () {
100
98
  EventHub.emit("showNotifications", Date.now());
101
99
  }
102
100
  });
103
- oNotificationToggleButton.setModel(oShellModel);
101
+ oNotificationToggleButton.setModel(oConfigModel, "configModel");
104
102
  oNotificationToggleButton.setModel(resources.i18nModel, "i18n");
103
+
104
+ this.oRenderer.showHeaderEndItem([oNotificationToggleButton.getId()], false, ["home", "app"]);
105
105
  },
106
106
 
107
107
  _handleAlerts: function (sChannelId, sEventId, aNewNotifications) {
@@ -147,11 +147,13 @@ sap.ui.define([
147
147
  // Update the notifications count in the UI
148
148
  // The new count is also displayed when the notifications popover is already opened
149
149
  _updateCount: function () {
150
- this.oNotificationsService.getUnseenNotificationsCount().then(function (iNumberOfNotifications) {
151
- this.oShellModel.setProperty("/notificationsCount", parseInt(iNumberOfNotifications, 10));
152
- }.bind(this)).catch(function (data) {
153
- Log.error("Notifications - call to notificationsService.getCount failed: ", data);
154
- });
150
+ this.oNotificationsService.getUnseenNotificationsCount()
151
+ .then(function (iNumberOfNotifications) {
152
+ this.oConfigModel.setProperty("/notificationsCount", parseInt(iNumberOfNotifications, 10));
153
+ }.bind(this))
154
+ .catch(function (data) {
155
+ Log.error("Notifications - call to notificationsService.getCount failed: ", data);
156
+ });
155
157
  },
156
158
 
157
159
  _getPopover: function () {
@@ -228,7 +230,7 @@ sap.ui.define([
228
230
  },
229
231
 
230
232
  _resetCount: function () {
231
- this.oShellModel.setProperty("/notificationsCount", 0);
233
+ this.oConfigModel.setProperty("/notificationsCount", 0);
232
234
  this.oNotificationsService.notificationsSeen();
233
235
  },
234
236
 
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  oMessageService.error(sText);
50
50
  }
51
51
 
52
- Controller.extend("sap.ushell.components.shell.Notifications.Notifications", {
52
+ return Controller.extend("sap.ushell.components.shell.Notifications.Notifications", {
53
53
  oPagingConfiguration: {
54
54
  MAX_NOTIFICATION_ITEMS_DESKTOP: 400,
55
55
  MAX_NOTIFICATION_ITEMS_MOBILE: 100,
@@ -12,7 +12,10 @@ sap.ui.define([
12
12
  "sap/ushell/library",
13
13
  "sap/ushell/resources",
14
14
  "sap/ushell/ui/shell/ShellHeadItem",
15
- "sap/ushell/Container"
15
+ "sap/ushell/state/ShellModel",
16
+ "sap/ushell/state/StateManager",
17
+ "sap/ushell/Container",
18
+ "sap/ushell/utils/UrlParsing"
16
19
  ], function (
17
20
  Localization,
18
21
  Device,
@@ -25,7 +28,10 @@ sap.ui.define([
25
28
  ushellLibrary,
26
29
  resources,
27
30
  ShellHeadItem,
28
- Container
31
+ ShellModel,
32
+ StateManager,
33
+ Container,
34
+ UrlParsing
29
35
  ) {
30
36
  "use strict";
31
37
 
@@ -35,6 +41,22 @@ sap.ui.define([
35
41
  // shortcut for sap.ushell.FloatingNumberType
36
42
  var FloatingNumberType = ushellLibrary.FloatingNumberType;
37
43
 
44
+ // shortcut for sap.ushell.state.StateManager.LaunchpadState
45
+ const LaunchpadState = StateManager.LaunchpadState;
46
+
47
+ // shortcut for sap.ushell.state.StateManager.Operation
48
+ const Operation = StateManager.Operation;
49
+
50
+ // shortcut for sap.ushell.state.StateManager.ShellMode
51
+ const ShellMode = StateManager.ShellMode;
52
+ const {
53
+ Default,
54
+ Standalone,
55
+ Embedded,
56
+ Lean,
57
+ Merged
58
+ } = ShellMode;
59
+
38
60
  var aCreatedControlIds = [];
39
61
 
40
62
  return Component.extend("sap.ushell.components.shell.PostLoadingHeaderEnhancement.Component", {
@@ -57,7 +79,7 @@ sap.ui.define([
57
79
  });
58
80
  }
59
81
 
60
- this._createShellNavigationMenu(oShellConfig);
82
+ this._createShellNavigationMenu();
61
83
 
62
84
  var oShellHeader = Element.getElementById("shell-header");
63
85
  oShellHeader.updateAggregation("headItems");
@@ -66,6 +88,8 @@ sap.ui.define([
66
88
 
67
89
  _createBackButton: function () {
68
90
  var sBackButtonIcon = Localization.getRTL() ? "feeder-arrow" : "nav-back";
91
+ const sCurrentShellMode = StateManager.getShellMode();
92
+
69
93
  var oBackButton = new ShellHeadItem({
70
94
  id: "backBtn",
71
95
  tooltip: resources.i18n.getText("backBtn_tooltip"),
@@ -75,15 +99,45 @@ sap.ui.define([
75
99
  EventHub.emit("navigateBack", Date.now());
76
100
  }
77
101
  });
102
+
103
+ if ([Default, Standalone, Embedded, Merged].includes(sCurrentShellMode)) {
104
+ StateManager.updateBaseStates([LaunchpadState.App], "header.headItems", Operation.Add, oBackButton.getId());
105
+ } else if (sCurrentShellMode === Lean) {
106
+ // only show btn after a navigation happened
107
+ this._boundSetBackButtonVisibilityAfterHashChanged = this._setBackButtonVisibilityAfterHashChanged.bind(this);
108
+ window.addEventListener("hashchange", this._boundSetBackButtonVisibilityAfterHashChanged);
109
+ }
110
+ /*
111
+ * minimal:
112
+ * only show btn in case a custom back navigation was registered
113
+ * handled in Shell.controller@onBackNavigationChange
114
+ */
115
+
78
116
  return oBackButton.getId();
79
117
  },
80
118
 
119
+ _setBackButtonVisibilityAfterHashChanged: function (oHashChangeEvent) {
120
+ const { oldURL, newURL } = oHashChangeEvent;
121
+ const sOldHash = UrlParsing.getHash(oldURL);
122
+ const sNewHash = UrlParsing.getHash(newURL);
123
+ const sOldInnerAppRoute = UrlParsing.parseShellHash(sOldHash).appSpecificRoute;
124
+ const sNewInnerAppRoute = UrlParsing.parseShellHash(sNewHash).appSpecificRoute;
125
+
126
+ const bInnerAppNavigationOccurred = sOldInnerAppRoute !== sNewInnerAppRoute;
127
+
128
+ if (bInnerAppNavigationOccurred) {
129
+ StateManager.updateBaseStates([LaunchpadState.App], "header.headItems", Operation.Add, "backBtn");
130
+
131
+ window.removeEventListener("hashchange", this._boundSetBackButtonVisibilityAfterHashChanged);
132
+ delete this._boundSetBackButtonVisibilityAfterHashChanged;
133
+ }
134
+ },
135
+
81
136
  _createOverflowButton: function () {
82
- var oShellModel = Container.getRendererInternal("fiori2").getShellController().getModel();
83
137
  var oEndItemsOverflowBtn = new ShellHeadItem({
84
138
  id: "endItemsOverflowBtn",
85
139
  tooltip: {
86
- path: "/notificationsCount",
140
+ path: "configModel>/notificationsCount",
87
141
  formatter: function (notificationsCount) {
88
142
  return this.tooltipFormatter(notificationsCount);
89
143
  }
@@ -91,14 +145,14 @@ sap.ui.define([
91
145
  ariaLabel: resources.i18n.getText("shellHeaderOverflowBtn_tooltip"),
92
146
  ariaHaspopup: "dialog",
93
147
  icon: "sap-icon://overflow",
94
- floatingNumber: "{/notificationsCount}",
148
+ floatingNumber: "{configModel>/notificationsCount}",
95
149
  floatingNumberMaxValue: Device.system.phone ? 99 : 999, // according to the UX specification
96
150
  floatingNumberType: FloatingNumberType.OverflowButton,
97
151
  press: function (oEvent) {
98
152
  EventHub.emit("showEndItemOverflow", oEvent.getSource().getId(), true);
99
153
  }
100
154
  });
101
- oEndItemsOverflowBtn.setModel(oShellModel);
155
+ oEndItemsOverflowBtn.setModel(ShellModel.getConfigModel(), "configModel");
102
156
  return oEndItemsOverflowBtn.getId();
103
157
  },
104
158
 
@@ -123,6 +177,9 @@ sap.ui.define([
123
177
  if (Config.last("/core/extension/enableHelp")) {
124
178
  oOpenCatalogButton.addStyleClass("help-id-openCatalogActionItem"); // xRay help ID
125
179
  }
180
+
181
+ // Add to userActions. The actual move happens within the state management
182
+ StateManager.updateAllBaseStates("userActions.items", Operation.Add, oOpenCatalogButton.getId());
126
183
  return oOpenCatalogButton.getId();
127
184
  },
128
185
 
@@ -153,12 +210,15 @@ sap.ui.define([
153
210
  }
154
211
  });
155
212
  }
213
+
214
+ // Add to userActions. The actual move happens within the state management
215
+ StateManager.updateAllBaseStates("userActions.items", Operation.Add, sButtonName);
156
216
  fnResolve(sButtonName);
157
217
  });
158
218
  });
159
219
  },
160
220
 
161
- _createShellNavigationMenu: function (oShellConfig) {
221
+ _createShellNavigationMenu: function () {
162
222
  return new Promise(function (resolve) {
163
223
  sap.ui.require([
164
224
  "sap/m/StandardListItem",
@@ -214,30 +274,29 @@ sap.ui.define([
214
274
  };
215
275
 
216
276
  var oShellNavigationMenu = new ShellNavigationMenu(sMenuId, {
217
- showRelatedApps: oShellConfig.appState !== "lean",
277
+ showRelatedApps: StateManager.getShellMode() !== Lean,
218
278
  items: {
219
- path: "/application/hierarchy",
279
+ path: "shellModel>/application/hierarchy",
220
280
  factory: oHierarchyTemplateFunction.bind(this)
221
281
  },
222
282
  miniTiles: {
223
- path: "/application/relatedApps",
283
+ path: "shellModel>/application/relatedApps",
224
284
  factory: oRelatedAppsTemplateFunction.bind(this)
225
285
  },
226
286
  visible: {
227
- path: "/ShellAppTitleState",
228
- formatter: function (oCurrentState) {
229
- return oCurrentState === AppTitleState.ShellNavMenu;
287
+ path: "configModel>/shellAppTitleState",
288
+ formatter: function (sCurrentState) {
289
+ return sCurrentState === AppTitleState.ShellNavMenu;
230
290
  }
231
291
  }
232
292
  });
233
293
 
234
- var oShellHeader = Element.getElementById("shell-header");
235
- oShellNavigationMenu.setModel(oShellHeader.getModel());
294
+ oShellNavigationMenu.setModel(ShellModel.getModel(), "shellModel");
295
+ oShellNavigationMenu.setModel(ShellModel.getConfigModel(), "configModel");
236
296
 
237
297
  var oShellAppTitle = Element.getElementById("shellAppTitle");
238
298
  if (oShellAppTitle) {
239
299
  oShellAppTitle.setNavigationMenu(oShellNavigationMenu);
240
- oShellAppTitle.setModel(oShellHeader.getModel());
241
300
  }
242
301
  aCreatedControlIds.push(sMenuId);
243
302
 
@@ -254,6 +313,10 @@ sap.ui.define([
254
313
  }
255
314
  });
256
315
  aCreatedControlIds = [];
316
+
317
+ if (this._boundSetBackButtonVisibilityAfterHashChanged) {
318
+ window.removeEventListener("hashchange", this._boundSetBackButtonVisibilityAfterHashChanged);
319
+ }
257
320
  }
258
321
  });
259
322
  });
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  return UIComponent.extend("sap.ushell.components.shell.ProductSwitch.Component", {
36
36
 
37
37
  metadata: {
38
- version: "1.126.1",
38
+ version: "1.127.0",
39
39
  library: "sap.ushell.components.shell.ProductSwitch",
40
40
  dependencies: {
41
41
  libs: {
@@ -4,7 +4,7 @@
4
4
  "id": "sap.ushell.components.shell.Search",
5
5
 
6
6
  "applicationVersion": {
7
- "version": "1.126.1"
7
+ "version": "1.127.0"
8
8
  },
9
9
  "i18n": {
10
10
  "bundleUrl": "../../../renderer/resources/resources.properties",
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
 
32
32
  return UIComponent.extend("sap.ushell.components.shell.SearchCEP.Component", {
33
33
  metadata: {
34
- version: "1.126.1",
34
+ version: "1.127.0",
35
35
  library: ["sap.ushell", "sap.ushell.components.shell"],
36
36
  dependencies: {
37
37
  libs: ["sap.m"]
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview
5
- * @version 1.126.1
5
+ * @version 1.127.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/base/Log",
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview
5
- * @version 1.126.1
5
+ * @version 1.127.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/base/Log",
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview This module is the search provider main interface
5
- * @version 1.126.1
5
+ * @version 1.127.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ushell/resources",
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview This module handles the navigation service search actions
5
- * @version 1.126.1
5
+ * @version 1.127.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/base/Log",