@sapui5/sap.ushell 1.126.1 → 1.127.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) 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/_ApplicationType/urlTemplateResolution.js +10 -3
  14. package/src/main/js/sap/ushell/_Config/utils.js +18 -0
  15. package/src/main/js/sap/ushell/_URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
  16. package/src/main/js/sap/ushell/_URLTemplateProcessor/DependencyGraph.js +1 -1
  17. package/src/main/js/sap/ushell/_URLTemplateProcessor/Functions.js +1 -1
  18. package/src/main/js/sap/ushell/_URLTemplateProcessor/Resolvers.js +1 -1
  19. package/src/main/js/sap/ushell/_URLTemplateProcessor/TemplateParameterParser.js +1 -1
  20. package/src/main/js/sap/ushell/_URLTemplateProcessor/utils.js +1 -1
  21. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  22. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  23. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  24. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +28 -9
  25. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
  26. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +4 -3
  27. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  28. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
  29. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
  30. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
  31. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
  32. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
  33. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
  34. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
  35. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
  36. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
  37. package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
  38. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
  39. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
  40. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
  41. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
  42. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
  43. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
  44. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  46. package/src/main/js/sap/ushell/adapters/cdm/v3/utilsCdm.js +6 -1
  47. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  48. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +1 -1
  49. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
  50. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
  51. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
  52. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
  53. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
  54. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
  55. package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
  56. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
  57. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
  58. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +1 -1
  59. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
  60. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
  61. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
  62. package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
  63. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
  64. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
  65. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
  66. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
  67. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
  68. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
  69. package/src/main/js/sap/ushell/appRuntime/neo/AppInfoService.js +1 -0
  70. package/src/main/js/sap/ushell/appRuntime/neo/AppRuntimeNeo.js +1 -0
  71. package/src/main/js/sap/ushell/appRuntime/neo/ProxyAppUtils.js +1 -0
  72. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +6 -0
  73. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer.js +19 -0
  74. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
  75. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
  76. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +51 -0
  77. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -1
  78. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
  79. package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +6 -6
  80. package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
  81. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
  82. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +1 -1
  83. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
  84. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +1 -1
  85. package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
  86. package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
  87. package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
  88. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
  89. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
  90. package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +1 -1
  91. package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
  92. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
  93. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
  94. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +1 -1
  95. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
  96. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  97. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/FLPScheduler.js +47 -16
  98. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/StepConfiguration.json +10 -3
  99. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/logger.js +1 -1
  100. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/state.js +1 -1
  101. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.js +9 -0
  102. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  103. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +13 -33
  104. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +1 -1
  105. package/src/main/js/sap/ushell/components/_HeaderManager/ShellHeader.controller.js +135 -8
  106. package/src/main/js/sap/ushell/components/_HomepageManager/DashboardLoadingManager.js +1 -1
  107. package/src/main/js/sap/ushell/components/_HomepageManager/PagingManager.js +1 -1
  108. package/src/main/js/sap/ushell/components/_HomepageManager/PersistentPageOperationAdapter.js +1 -1
  109. package/src/main/js/sap/ushell/components/_HomepageManager/TransientPageOperationAdapter.js +1 -1
  110. package/src/main/js/sap/ushell/components/appfinder/AppFinder.controller.js +0 -6
  111. package/src/main/js/sap/ushell/components/appfinder/Component.js +1 -1
  112. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  113. package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +74 -72
  114. package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +1 -1
  115. package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
  116. package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +35 -18
  117. package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +42 -27
  118. package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
  119. package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +1 -1
  120. package/src/main/js/sap/ushell/components/contentFinder/Component.js +19 -12
  121. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +24 -5
  122. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  123. package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
  124. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  125. package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +47 -7
  126. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +7 -6
  127. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchBox.fragment.xml +5 -4
  128. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTree.view.xml +34 -22
  129. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +7 -6
  130. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +3 -1
  131. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +1 -1
  132. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifestAppSearch.json +1 -1
  133. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  134. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  135. package/src/main/js/sap/ushell/components/homepage/Component.js +1 -1
  136. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
  137. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +29 -24
  138. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
  139. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  140. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  141. package/src/main/js/sap/ushell/components/pages/Component.js +10 -3
  142. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  143. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +26 -5
  144. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  145. package/src/main/js/sap/ushell/components/runtimeSwitcher/Component.js +3 -2
  146. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
  147. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  148. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  149. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +19 -3
  150. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  151. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenu.view.xml +1 -0
  152. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +24 -22
  153. package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +1 -1
  154. package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +80 -17
  155. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  156. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  157. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
  158. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  159. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  160. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
  161. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
  162. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +12 -16
  163. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +9 -4
  164. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +9 -9
  165. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +3 -45
  166. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +31 -23
  167. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenuPopover.fragment.xml +7 -2
  168. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +3 -3
  169. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +0 -4
  170. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +0 -1
  171. package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +1 -1
  172. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  173. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +2 -1
  174. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
  175. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1939 -1946
  176. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
  177. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
  178. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
  179. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
  180. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
  181. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
  182. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  183. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +3 -2
  184. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +1 -1
  185. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  186. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  187. package/src/main/js/sap/ushell/library.js +1 -1
  188. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  189. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +15 -12
  190. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
  191. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  192. package/src/main/js/sap/ushell/renderer/AccessKeysHandler.js +31 -9
  193. package/src/main/js/sap/ushell/renderer/Renderer.js +304 -287
  194. package/src/main/js/sap/ushell/renderer/Shell.controller.js +99 -101
  195. package/src/main/js/sap/ushell/renderer/Shell.view.js +110 -89
  196. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.controller.js +29 -15
  197. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.view.xml +2 -2
  198. package/src/main/js/sap/ushell/renderer/resources/resources.properties +2 -0
  199. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  200. package/src/main/js/sap/ushell/renderers/fiori2/History.js +1 -0
  201. package/src/main/js/sap/ushell/renderers/fiori2/LogonFrameProvider.js +1 -0
  202. package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +108 -87
  203. package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyAppsManager.js +1 -0
  204. package/src/main/js/sap/ushell/services/AppLifeCycle.js +1 -1
  205. package/src/main/js/sap/ushell/services/AppState.js +1 -1
  206. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  207. package/src/main/js/sap/ushell/services/BookmarkV2.js +1 -1
  208. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
  209. package/src/main/js/sap/ushell/services/CommonDataModel.js +2 -15
  210. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  211. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  212. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
  213. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +1 -1
  214. package/src/main/js/sap/ushell/services/DarkModeSupport.js +11 -5
  215. package/src/main/js/sap/ushell/services/Extension/Item.js +4 -4
  216. package/src/main/js/sap/ushell/services/Extension.js +36 -2
  217. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +1 -1
  218. package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +1 -1
  219. package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +1 -1
  220. package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +4 -4
  221. package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +18 -2
  222. package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +20 -2
  223. package/src/main/js/sap/ushell/services/FrameBoundExtension.js +96 -2
  224. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
  225. package/src/main/js/sap/ushell/services/Menu.js +1 -1
  226. package/src/main/js/sap/ushell/services/Message.js +1 -1
  227. package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
  228. package/src/main/js/sap/ushell/services/MessageInternal.js +13 -8
  229. package/src/main/js/sap/ushell/services/Navigation/compatibility.js +1 -1
  230. package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
  231. package/src/main/js/sap/ushell/services/Navigation.js +1 -1
  232. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  233. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  234. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  235. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  236. package/src/main/js/sap/ushell/services/Pages.js +4 -3
  237. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  238. package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
  239. package/src/main/js/sap/ushell/services/PluginManager.js +1 -1
  240. package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
  241. package/src/main/js/sap/ushell/services/Search.js +1 -1
  242. package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
  243. package/src/main/js/sap/ushell/services/SearchableContent.js +6 -5
  244. package/src/main/js/sap/ushell/services/ShellNavigation.js +1 -1
  245. package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
  246. package/src/main/js/sap/ushell/services/SpaceContent.js +1 -1
  247. package/src/main/js/sap/ushell/services/UITracer.js +1 -1
  248. package/src/main/js/sap/ushell/services/URLParsing.js +16 -0
  249. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  250. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  251. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +3 -3
  252. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
  253. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
  254. package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
  255. package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
  256. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  257. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  258. package/src/main/js/sap/ushell/services/_AppState/AppStatePersistencyMethod.js +1 -1
  259. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Formatter.js +1 -1
  260. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundIndex.js +1 -1
  261. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundProvider.js +1 -1
  262. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +1 -1
  263. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +1 -1
  264. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/StagedLogger.js +1 -1
  265. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/SystemContext.js +1 -1
  266. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Utils.js +1 -1
  267. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
  268. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +1 -1
  269. package/src/main/js/sap/ushell/services/_CommonDataModel/SiteConverter.js +1 -1
  270. package/src/main/js/sap/ushell/services/_CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
  271. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +2 -2
  272. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  273. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  274. package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
  275. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  276. package/src/main/js/sap/ushell/services/_Personalization/VariantSetAdapter.js +1 -0
  277. package/src/main/js/sap/ushell/services/_Personalization/WindowAdapter.js +1 -0
  278. package/src/main/js/sap/ushell/services/_Personalization/WindowAdapterContainer.js +1 -0
  279. package/src/main/js/sap/ushell/services/_Personalization/constants.js +1 -0
  280. package/src/main/js/sap/ushell/services/_Personalization/constants.private.js +1 -0
  281. package/src/main/js/sap/ushell/services/_Personalization/utils.js +1 -0
  282. package/src/main/js/sap/ushell/services/_PluginManager/Extensions.js +1 -1
  283. package/src/main/js/sap/ushell/services/_PluginManager/HeaderExtensions.js +2 -2
  284. package/src/main/js/sap/ushell/services/_PluginManager/MenuExtensions.js +1 -1
  285. package/src/main/js/sap/ushell/services/_Ui5ComponentLoader/utils.js +1 -1
  286. package/src/main/js/sap/ushell/state/BaseState.js +79 -0
  287. package/src/main/js/sap/ushell/state/ControlManager.js +209 -0
  288. package/src/main/js/sap/ushell/state/CurrentState.js +180 -0
  289. package/src/main/js/sap/ushell/state/KeepAlive.js +75 -0
  290. package/src/main/js/sap/ushell/state/ShellModel.js +112 -0
  291. package/src/main/js/sap/ushell/state/StateManager/LaunchpadState.js +40 -0
  292. package/src/main/js/sap/ushell/state/StateManager/Operation.js +42 -0
  293. package/src/main/js/sap/ushell/state/StateManager/ShellMode.js +86 -0
  294. package/src/main/js/sap/ushell/state/StateManager.js +648 -0
  295. package/src/main/js/sap/ushell/state/StateRules.js +295 -0
  296. package/src/main/js/sap/ushell/state/StrategyFactory/DefaultStrategy.js +74 -0
  297. package/src/main/js/sap/ushell/state/StrategyFactory/FloatingActionsStrategy.js +78 -0
  298. package/src/main/js/sap/ushell/state/StrategyFactory/HeadEndItemsStrategy.js +130 -0
  299. package/src/main/js/sap/ushell/state/StrategyFactory/HeadItemsStrategy.js +104 -0
  300. package/src/main/js/sap/ushell/state/StrategyFactory/SidePaneStrategy.js +78 -0
  301. package/src/main/js/sap/ushell/state/StrategyFactory/SubHeaderStrategy.js +78 -0
  302. package/src/main/js/sap/ushell/state/StrategyFactory/UserActionsStrategy.js +60 -0
  303. package/src/main/js/sap/ushell/state/StrategyFactory.js +168 -0
  304. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
  305. package/src/main/js/sap/ushell/themes/base/UserSettings.less +1 -5
  306. package/src/main/js/sap/ushell/themes/base/WorkPageCell.less +45 -49
  307. package/src/main/js/sap/ushell/themes/sap_belize_base/UserSettings.less +1 -5
  308. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/UserSettings.less +1 -5
  309. package/src/main/js/sap/ushell/themes/sap_hcb/base_ActionMode.less +107 -0
  310. package/src/main/js/sap/ushell/themes/sap_hcb/base_AddBookmarkButton.less +37 -0
  311. package/src/main/js/sap/ushell/themes/sap_hcb/base_AnchorItem.less +81 -0
  312. package/src/main/js/sap/ushell/themes/sap_hcb/base_AnchorNavigationBar.less +86 -0
  313. package/src/main/js/sap/ushell/themes/sap_hcb/base_AppearanceView.less +213 -0
  314. package/src/main/js/sap/ushell/themes/sap_hcb/base_ApplicationContainer.less +37 -0
  315. package/src/main/js/sap/ushell/themes/sap_hcb/base_Catalog.less +387 -0
  316. package/src/main/js/sap/ushell/themes/sap_hcb/base_ContactSupport.less +12 -0
  317. package/src/main/js/sap/ushell/themes/sap_hcb/base_ContentFinder.less +26 -0
  318. package/src/main/js/sap/ushell/themes/sap_hcb/base_CustomGroupHeaderListItem.less +10 -0
  319. package/src/main/js/sap/ushell/themes/sap_hcb/base_Dashboard.less +66 -0
  320. package/src/main/js/sap/ushell/themes/sap_hcb/base_DynamicTile.less +114 -0
  321. package/src/main/js/sap/ushell/themes/sap_hcb/base_Factsheet.less +225 -0
  322. package/src/main/js/sap/ushell/themes/sap_hcb/base_FloatingContainer.less +125 -0
  323. package/src/main/js/sap/ushell/themes/sap_hcb/base_FlpSettings.less +83 -0
  324. package/src/main/js/sap/ushell/themes/sap_hcb/base_GroupList.less +68 -0
  325. package/src/main/js/sap/ushell/themes/sap_hcb/base_GroupListItem.less +54 -0
  326. package/src/main/js/sap/ushell/themes/sap_hcb/base_IconFonts.less +21 -0
  327. package/src/main/js/sap/ushell/themes/sap_hcb/base_ImageTile.less +23 -0
  328. package/src/main/js/sap/ushell/themes/sap_hcb/base_LoadingDialog.less +47 -0
  329. package/src/main/js/sap/ushell/themes/sap_hcb/base_MenuBar.less +23 -0
  330. package/src/main/js/sap/ushell/themes/sap_hcb/base_Notifications.less +135 -0
  331. package/src/main/js/sap/ushell/themes/sap_hcb/base_Page.less +49 -0
  332. package/src/main/js/sap/ushell/themes/sap_hcb/base_PictureTile.less +119 -0
  333. package/src/main/js/sap/ushell/themes/sap_hcb/base_PictureViewer.less +25 -0
  334. package/src/main/js/sap/ushell/themes/sap_hcb/base_PlusTile.less +38 -0
  335. package/src/main/js/sap/ushell/themes/sap_hcb/base_QuickAccess.less +18 -0
  336. package/src/main/js/sap/ushell/themes/sap_hcb/base_RightFloatingContainerItem.less +82 -0
  337. package/src/main/js/sap/ushell/themes/sap_hcb/base_SearchCEP.less +121 -0
  338. package/src/main/js/sap/ushell/themes/sap_hcb/base_SearchFLP.less +10 -0
  339. package/src/main/js/sap/ushell/themes/sap_hcb/base_Section.less +60 -0
  340. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellAppTitle.less +207 -0
  341. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellFloatingAction.less +61 -0
  342. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellFloatingActions.less +14 -0
  343. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +389 -0
  344. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellLayout.less +168 -0
  345. package/src/main/js/sap/ushell/themes/sap_hcb/base_SidePane.less +8 -0
  346. package/src/main/js/sap/ushell/themes/sap_hcb/base_StaticTile.less +9 -0
  347. package/src/main/js/sap/ushell/themes/sap_hcb/base_SubHeader.less +3 -0
  348. package/src/main/js/sap/ushell/themes/sap_hcb/base_SysInfoBar.less +164 -0
  349. package/src/main/js/sap/ushell/themes/sap_hcb/base_TargetMappingConfiguration.less +8 -0
  350. package/src/main/js/sap/ushell/themes/sap_hcb/base_Tile.less +223 -0
  351. package/src/main/js/sap/ushell/themes/sap_hcb/base_TileBase.less +152 -0
  352. package/src/main/js/sap/ushell/themes/sap_hcb/base_TileContainer.less +495 -0
  353. package/src/main/js/sap/ushell/themes/sap_hcb/base_TilePlaceholder.less +75 -0
  354. package/src/main/js/sap/ushell/themes/sap_hcb/base_TileState.less +62 -0
  355. package/src/main/js/sap/ushell/themes/sap_hcb/base_ToolAreaItem.less +85 -0
  356. package/src/main/js/sap/ushell/themes/sap_hcb/base_UserActionsMenu.less +23 -0
  357. package/src/main/js/sap/ushell/themes/sap_hcb/base_UserConsentDialog.less +52 -0
  358. package/src/main/js/sap/ushell/themes/sap_hcb/base_UserSettings.less +109 -0
  359. package/src/main/js/sap/ushell/themes/sap_hcb/base_ViewPortContainer.less +28 -0
  360. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPage.less +58 -0
  361. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageButton.less +60 -0
  362. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageCell.less +144 -0
  363. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageColumn.less +39 -0
  364. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageColumnResizer.less +128 -0
  365. package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageRow.less +987 -0
  366. package/src/main/js/sap/ushell/themes/sap_hcb/base_shared.less +40 -0
  367. package/src/main/js/sap/ushell/themes/sap_hcb/library.source.less +70 -1
  368. package/src/main/js/sap/ushell/ui/ShellHeader.fragment.xml +17 -11
  369. package/src/main/js/sap/ushell/ui/ShellHeader.js +10 -3
  370. package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +0 -4
  371. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -5
  372. package/src/main/js/sap/ushell/ui/footerbar/AddBookmarkButton.js +19 -5
  373. package/src/main/js/sap/ushell/ui/footerbar/ContactSupportDialog.controller.js +9 -3
  374. package/src/main/js/sap/ushell/ui/footerbar/SendAsEmailButton.js +5 -5
  375. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  376. package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
  377. package/src/main/js/sap/ushell/ui/launchpad/TileContainer.js +17 -12
  378. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  379. package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +50 -35
  380. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +2 -2
  381. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  382. package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
  383. package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
  384. package/src/main/js/sap/ushell/utils/UrlParsing.js +22 -0
  385. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  386. package/src/main/js/sap/ushell/utils/WindowUtils.js +3 -3
  387. package/src/main/js/sap/ushell/utils/workpage/DestinationResolver.js +89 -0
  388. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +51 -47
  389. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +32 -1
  390. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +1 -1
  391. package/src/main/js/sap/ushell/utils.js +26 -2
  392. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  393. package/src/main/js/sap/ushell/bootstrap/common/common.load.ui5theme.js +0 -67
  394. package/src/main/js/sap/ushell/components/HeaderManager.js +0 -547
  395. package/src/main/js/sap/ushell/components/StateHelper.js +0 -70
  396. package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadEndItemsStrategy.js +0 -105
  397. package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadItemsStrategy.js +0 -75
  398. package/src/main/js/sap/ushell/components/_HeaderManager/ControlManager.js +0 -70
  399. package/src/main/js/sap/ushell/components/_HeaderManager/ExtendApplicationPropertyStrategy.js +0 -18
  400. package/src/main/js/sap/ushell/components/_HeaderManager/PropertyStrategiesFactory.js +0 -58
  401. package/src/main/js/sap/ushell/components/_HeaderManager/RemoveItemsStrategy.js +0 -46
  402. package/src/main/js/sap/ushell/components/_HeaderManager/SetHeadPropertyStrategy.js +0 -19
  403. package/src/main/js/sap/ushell/components/applicationIntegration/elements/model.js +0 -1309
  404. package/src/main/js/sap/ushell/components/applicationIntegration/relatedShellElements/RelatedShellElements.js +0 -363
@@ -7,38 +7,51 @@
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/base/Log",
10
+ "sap/m/Avatar",
11
+ "sap/m/library",
10
12
  "sap/ui/Device",
11
- "sap/ushell/components/_HeaderManager/ControlManager",
12
13
  "sap/ushell/components/_HeaderManager/ShellHeader.controller",
13
14
  "sap/ushell/ui/launchpad/AccessibilityCustomData",
14
15
  "sap/ushell/EventHub",
15
16
  "sap/ushell/resources",
16
17
  "sap/ushell/utils",
17
- "sap/ushell/Config",
18
- "sap/ui/model/json/JSONModel",
19
18
  "sap/ui/core/mvc/XMLView",
20
19
  "sap/ui/core/Core",
21
- "sap/ushell/renderer/ShellLayout"
20
+ "sap/ushell/Container",
21
+ "sap/ushell/renderer/ShellLayout",
22
+ "sap/ushell/state/ShellModel",
23
+ "sap/ushell/state/StateManager"
22
24
  ], function (
23
25
  Log,
26
+ Avatar,
27
+ mobileLibrary,
24
28
  Device,
25
- HeaderControlManager,
26
29
  ShellHeaderController,
27
30
  AccessibilityCustomData,
28
31
  EventHub,
29
- resources,
32
+ ushellResources,
30
33
  utils,
31
- Config,
32
- JSONModel,
33
34
  XMLView,
34
35
  Core,
35
- ShellLayout
36
+ Container,
37
+ ShellLayout,
38
+ ShellModel,
39
+ StateManager
36
40
  ) {
37
41
  "use strict";
38
42
 
39
- var ShellLayoutMapping = ShellLayout.LAYOUT_MAPPING;
43
+ // shortcut for sap.m.AvatarSize
44
+ const AvatarSize = mobileLibrary.AvatarSize;
40
45
 
41
- var BINDING_TYPE = {
46
+ // shortcut for sap.ushell.state.StateManager.Operation
47
+ const Operation = StateManager.Operation;
48
+
49
+ // shortcut for sap.ushell.state.StateManager.ShellMode
50
+ const ShellMode = StateManager.ShellMode;
51
+
52
+ const ShellLayoutMapping = ShellLayout.LAYOUT_MAPPING;
53
+
54
+ const BINDING_TYPE = {
42
55
  Property: "Property",
43
56
  List: "List"
44
57
  };
@@ -62,14 +75,6 @@ sap.ui.define([
62
75
  return this._oShellLayoutPromise;
63
76
  },
64
77
 
65
- getShellModel: function () {
66
- return this.getViewData().shellModel;
67
- },
68
-
69
- getHelperModel: function () {
70
- return this.getViewData().helperModel;
71
- },
72
-
73
78
  getViewDataConfig: function () {
74
79
  var oViewData = this.getViewData() || {};
75
80
  var oConfig = oViewData.config || {};
@@ -85,8 +90,11 @@ sap.ui.define([
85
90
  * @deprecated since 1.99. Please use {@link sap.ushell.renderer.Shell.view} instead.
86
91
  */
87
92
  createContent: function () {
93
+ this._createUserActionsMenuButton(ShellModel.getConfigModel());
94
+
88
95
  // Change config if more then three buttons moved to the header
89
96
  this._allowUpToThreeActionInShellHeader();
97
+ StateManager.init(this.getViewDataConfig());
90
98
 
91
99
  // BackgroundImage
92
100
  this.initBackgroundImage();
@@ -128,31 +136,25 @@ sap.ui.define([
128
136
  var oRendererRootView = sap.ui.xmlfragment("sap.ushell.ui.RendererRootView", oController); // LEGACY API (deprecated)
129
137
  oRendererRootView.updateAggregation = this.updateShellAggregation;
130
138
 
131
- sap.ui.getCore().byId("viewPortContainer");
132
-
133
139
  return oRendererRootView;
134
140
  },
135
141
 
136
142
  createShellHeaderSync: function () {
137
- var oConfig = this.getViewDataConfig();
138
- var oShellModel = this.getShellModel();
139
143
  // Create own model for the header
140
- var oShellHeaderModel = Config.createModel("/core/shellHeader", JSONModel);
141
144
  var oHeaderController = new ShellHeaderController();
142
145
  oHeaderController.onInit();
143
146
 
144
147
  // eslint-disable-next-line ushell/no-deprecated
145
148
  var oShellHeader = sap.ui.xmlfragment("sap.ushell.ui.ShellHeader", oHeaderController); // LEGACY API (deprecated)
146
149
  oShellHeader.updateAggregation = this.updateShellAggregation;
147
- HeaderControlManager.init(oConfig, oHeaderController, oShellModel);
148
150
 
149
- if (oConfig.appState === "embedded") {
151
+ if (StateManager.getShellMode() === ShellMode.Embedded) {
150
152
  oShellHeader.setNoLogo();
151
153
  }
152
154
 
153
155
  // Assign models to the Shell Header
154
- oShellHeader.setModel(oShellHeaderModel);
155
- oShellHeader.setModel(resources.i18nModel, "i18n");
156
+ oShellHeader.setModel(ShellModel.getModel(), "shellModel");
157
+ oShellHeader.setModel(ushellResources.i18nModel, "i18n");
156
158
  this.addDanglingControl(oShellHeader);
157
159
  // save for later use
158
160
  this._oShellHeader = oShellHeader;
@@ -188,15 +190,15 @@ sap.ui.define([
188
190
  id: "right-floating-container",
189
191
  top: "2",
190
192
  hideItemsAfterPresentation: true,
191
- visible: "{/currentState/showRightFloatingContainer}",
193
+ visible: "{shellModel>/rightFloatingContainer/visible}",
192
194
  floatingContainerItems: {
193
- path: "/currentState/RightFloatingContainerItems",
195
+ path: "shellModel>/rightFloatingContainer/items",
194
196
  factory: fnShellUpdateAggItem
195
197
  }
196
198
  });
197
199
  oRightFloatingContainer.updateAggregation = this.updateShellAggregation;
198
200
 
199
- oRightFloatingContainer.setModel(this.getShellModel());
201
+ oRightFloatingContainer.setModel(ShellModel.getModel(), "shellModel");
200
202
  this.addDanglingControl(oRightFloatingContainer);
201
203
  // save for later use
202
204
  this._oRightFloatingContainer = oRightFloatingContainer;
@@ -209,7 +211,7 @@ sap.ui.define([
209
211
 
210
212
  initCanvasShapesManager: function () {
211
213
  this.bindFactory({
212
- model: this.getShellModel(),
214
+ model: ShellModel.getConfigModel(),
213
215
  factory: this.createCanvasShapesManager.bind(this),
214
216
  bindingPath: "/enableBackGroundShapes",
215
217
  bindingType: BINDING_TYPE.Property,
@@ -235,13 +237,13 @@ sap.ui.define([
235
237
  var oSubHeader = new SubHeader({
236
238
  id: "subhdr",
237
239
  content: {
238
- path: "/currentState/subHeader",
240
+ path: "shellModel>/subHeader/items",
239
241
  factory: fnShellUpdateAggItem
240
242
  }
241
243
  });
242
244
  oSubHeader.updateAggregation = this.updateShellAggregation;
243
245
 
244
- oSubHeader.setModel(this.getShellModel());
246
+ oSubHeader.setModel(ShellModel.getModel(), "shellModel");
245
247
  this.addDanglingControl(oSubHeader);
246
248
 
247
249
  this.waitForShellLayout().then(function () {
@@ -258,9 +260,9 @@ sap.ui.define([
258
260
  ], function (FloatingContainer, Storage) {
259
261
  var oFloatingContainer = new FloatingContainer({
260
262
  id: "shell-floatingContainer",
261
- visible: "{helper>/shell/floatingContainerVisible}",
263
+ visible: "{shellModel>/floatingContainer/visible}",
262
264
  content: {
263
- path: "/currentState/floatingContainerContent",
265
+ path: "shellModel>/floatingContainer/items",
264
266
  factory: fnShellUpdateAggItem
265
267
  }
266
268
  });
@@ -275,8 +277,7 @@ sap.ui.define([
275
277
  }));
276
278
  }
277
279
 
278
- oFloatingContainer.setModel(this.getShellModel());
279
- oFloatingContainer.setModel(this.getHelperModel(), "helper");
280
+ oFloatingContainer.setModel(ShellModel.getModel(), "shellModel");
280
281
  this.addDanglingControl(oFloatingContainer);
281
282
 
282
283
  this.waitForShellLayout().then(function () {
@@ -313,15 +314,15 @@ sap.ui.define([
313
314
  sap.ui.require(["sap/ushell/ui/shell/SidePane"], function (SidePane) {
314
315
  var oSidePane = new SidePane({
315
316
  id: "shell-sidePane",
316
- visible: "{/currentState/showPane}",
317
+ visible: "{shellModel>/sidePane/visible}",
317
318
  content: {
318
- path: "/currentState/paneContent",
319
+ path: "shellModel>/sidePane/items",
319
320
  factory: fnShellUpdateAggItem
320
321
  }
321
322
  });
322
323
  oSidePane.updateAggregation = this.updateShellAggregation;
323
324
 
324
- oSidePane.setModel(this.getShellModel());
325
+ oSidePane.setModel(ShellModel.getModel(), "shellModel");
325
326
  this.addDanglingControl(oSidePane);
326
327
 
327
328
  this.waitForShellLayout().then(function () {
@@ -334,15 +335,15 @@ sap.ui.define([
334
335
  sap.ui.require(["sap/ushell/ui/shell/ToolArea"], function (ToolArea) {
335
336
  var oShellToolArea = new ToolArea({
336
337
  id: "shell-toolArea",
337
- visible: "{/currentState/toolAreaVisible}",
338
+ visible: "{shellModel>/toolArea/visible}",
338
339
  toolAreaItems: {
339
- path: "/currentState/toolAreaItems",
340
+ path: "shellModel>/toolArea/items",
340
341
  factory: fnShellUpdateAggItem
341
342
  }
342
343
  });
343
344
  oShellToolArea.updateAggregation = this.updateShellAggregation;
344
345
 
345
- oShellToolArea.setModel(this.getShellModel());
346
+ oShellToolArea.setModel(ShellModel.getModel(), "shellModel");
346
347
  this.addDanglingControl(oShellToolArea);
347
348
 
348
349
  this.waitForShellLayout().then(function () {
@@ -356,13 +357,13 @@ sap.ui.define([
356
357
  var oShellFloatingActions = new ShellFloatingActions({
357
358
  id: "shell-floatingActions",
358
359
  floatingActions: {
359
- path: "/currentState/floatingActions",
360
+ path: "shellModel>/floatingActions/items",
360
361
  factory: fnShellUpdateAggItem
361
362
  }
362
363
  });
363
364
  oShellFloatingActions.updateAggregation = this.updateShellAggregation;
364
365
 
365
- oShellFloatingActions.setModel(this.getShellModel());
366
+ oShellFloatingActions.setModel(ShellModel.getModel(), "shellModel");
366
367
  this.addDanglingControl(oShellFloatingActions);
367
368
 
368
369
  this.waitForShellLayout().then(function () {
@@ -384,11 +385,11 @@ sap.ui.define([
384
385
  id: "allMyAppsView",
385
386
  viewName: "sap.ushell.renderer.allMyApps.AllMyApps"
386
387
  }).then(function (allMyAppsView) {
387
- allMyAppsView.setModel(this.getShellModel());
388
- allMyAppsView.setModel(resources.i18nModel, "i18n");
388
+ allMyAppsView.setModel(ShellModel.getConfigModel(), "configModel");
389
+ allMyAppsView.setModel(ushellResources.i18nModel, "i18n");
389
390
  allMyAppsView.addCustomData(new AccessibilityCustomData({
390
391
  key: "aria-label",
391
- value: resources.i18n.getText("allMyApps_headerTitle"),
392
+ value: ushellResources.i18n.getText("allMyApps_headerTitle"),
392
393
  writeToDom: true
393
394
  }));
394
395
  this.addDanglingControl(allMyAppsView);
@@ -400,7 +401,7 @@ sap.ui.define([
400
401
  * Begin factory functions for lazy instantiation of Shell Layout controls
401
402
  */
402
403
  createPostCoreExtControls: function () {
403
- var oShellModel = this.getShellModel();
404
+ var oShellModel = ShellModel.getModel();
404
405
 
405
406
  // apply the highest z-index used by the shell
406
407
  sap.ui.require(["sap/ui/core/Popup"], function (Popup) {
@@ -411,7 +412,7 @@ sap.ui.define([
411
412
  this.bindFactory({
412
413
  model: oShellModel,
413
414
  factory: this.createRightFloatingContainer.bind(this),
414
- bindingPath: "/currentState/showRightFloatingContainer",
415
+ bindingPath: "/rightFloatingContainer/visible",
415
416
  bindingType: BINDING_TYPE.Property,
416
417
  valueCheck: function (bValue) {
417
418
  return !!bValue;
@@ -422,7 +423,7 @@ sap.ui.define([
422
423
  this.bindFactory({
423
424
  model: oShellModel,
424
425
  factory: this.createSubHeader.bind(this),
425
- bindingPath: "/currentState/subHeader",
426
+ bindingPath: "/subHeader/items",
426
427
  bindingType: BINDING_TYPE.List,
427
428
  valueCheck: function (aValues) {
428
429
  return !!aValues.length;
@@ -433,7 +434,7 @@ sap.ui.define([
433
434
  this.bindFactory({
434
435
  model: oShellModel,
435
436
  factory: this.createToolArea.bind(this),
436
- bindingPath: "/currentState/toolAreaVisible",
437
+ bindingPath: "/toolArea/visible",
437
438
  bindingType: BINDING_TYPE.Property,
438
439
  valueCheck: function (bValue) {
439
440
  return !!bValue;
@@ -444,7 +445,7 @@ sap.ui.define([
444
445
  this.bindFactory({
445
446
  model: oShellModel,
446
447
  factory: this.createSidePane.bind(this),
447
- bindingPath: "/currentState/showPane",
448
+ bindingPath: "/sidePane/visible",
448
449
  bindingType: BINDING_TYPE.Property,
449
450
  valueCheck: function (bValue) {
450
451
  return !!bValue;
@@ -455,7 +456,7 @@ sap.ui.define([
455
456
  this.bindFactory({
456
457
  model: oShellModel,
457
458
  factory: this.createFloatingActions.bind(this),
458
- bindingPath: "/currentState/floatingActions",
459
+ bindingPath: "/floatingActions/items",
459
460
  bindingType: BINDING_TYPE.List,
460
461
  valueCheck: function (aValues) {
461
462
  return !!aValues.length;
@@ -469,29 +470,44 @@ sap.ui.define([
469
470
  * allow up to 3 actions in shell header
470
471
  */
471
472
  _allowUpToThreeActionInShellHeader: function () {
472
- var oConfig = this.getViewDataConfig();
473
- // in order to save performance time when these properties are not defined
474
- if (Object.keys(oConfig).length > 3) {
475
- var aParameter = [
476
- "moveAppFinderActionToShellHeader",
477
- "moveUserSettingsActionToShellHeader",
478
- "moveContactSupportActionToShellHeader",
479
- "moveEditHomePageActionToShellHeader"
480
- ];
481
- var count = 0;
482
- var sParameter;
483
-
484
- // count the number of "true" values, once get to three, force the other to be "false"
485
- for (var index = 0; index < 5; index++) {
486
- sParameter = aParameter[index];
487
- if (count === 3) {
488
- // if 3 user actions have already been moved to the shell header, assign false to every other parameter
489
- oConfig[sParameter] = false;
490
- } else if (oConfig[sParameter]) {
491
- count++;
492
- }
473
+ const aParameter = [
474
+ "moveAppFinderActionToShellHeader",
475
+ "moveUserSettingsActionToShellHeader",
476
+ "moveContactSupportActionToShellHeader",
477
+ "moveEditHomePageActionToShellHeader"
478
+ ];
479
+ const oConfig = this.getViewDataConfig();
480
+
481
+ // only allow the first three actions to be moved to the shell header
482
+ aParameter.reduce((iCount, sParam) => {
483
+ if (oConfig[sParam]) {
484
+ iCount++;
485
+ } else {
486
+ oConfig[sParam] = false;
493
487
  }
494
- }
488
+ return iCount;
489
+ }, 0);
490
+ },
491
+
492
+ _createUserActionsMenuButton: function (oConfigModel) {
493
+ const oUser = Container.getUser();
494
+ const sTooltip = ushellResources.i18n.getText("UserActionsMenuToggleButtonAria", [oUser.getFullName() || oUser.getId()]);
495
+
496
+ const oUserActionsMenuAvatar = new Avatar({
497
+ id: "userActionsMenuHeaderButton",
498
+ src: "{configModel>/userImage/personPlaceHolder}",
499
+ initials: oUser.getInitials(),
500
+ ariaHasPopup: "Menu",
501
+ displaySize: AvatarSize.XS,
502
+ tooltip: sTooltip,
503
+ press: function () {
504
+ EventHub.emit("showUserActionsMenu", Date.now());
505
+ }
506
+ });
507
+ oUserActionsMenuAvatar.setModel(oConfigModel, "configModel");
508
+ this.addDanglingControl(oUserActionsMenuAvatar);
509
+
510
+ StateManager.updateAllBaseStates("header.headEndItems", Operation.Add, "userActionsMenuHeaderButton");
495
511
  },
496
512
 
497
513
  /**
@@ -510,19 +526,24 @@ sap.ui.define([
510
526
  },
511
527
 
512
528
  updateShellAggregation: function (sName) {
513
- var oBindingInfo = this.mBindingInfos[sName];
514
- var oAggregationInfo = this.getMetadata().getJSONKeys()[sName];
515
- var oClone;
529
+ const oBindingInfo = this.mBindingInfos[sName];
530
+ const oAggregationInfo = this.getMetadata().getJSONKeys()[sName];
531
+ const fnGet = this[oAggregationInfo._sGetter].bind(this);
532
+ const fnRemove = this[oAggregationInfo._sRemoveMutator].bind(this);
533
+ const fnUpdate = this[oAggregationInfo._sMutator].bind(this);
534
+
535
+ const aControls = fnGet() || [];
536
+ // make a shallow copy to avoid issues with iteration on the original array
537
+ [...aControls].forEach((oControlToRemove) => {
538
+ fnRemove(oControlToRemove);
539
+ });
516
540
 
517
- this[oAggregationInfo._sGetter]().forEach(function (v) {
518
- this[oAggregationInfo._sRemoveMutator](v);
519
- }.bind(this));
520
- oBindingInfo.binding.getContexts().forEach(function (v, i) {
521
- oClone = oBindingInfo.factory(this.getId() + "-" + i, v)
541
+ oBindingInfo.binding.getContexts().forEach((v, i) => {
542
+ const oClone = oBindingInfo.factory(this.getId() + "-" + i, v)
522
543
  ? oBindingInfo.factory(this.getId() + "-" + i, v).setBindingContext(v, oBindingInfo.model)
523
544
  : "";
524
- this[oAggregationInfo._sMutator](oClone);
525
- }.bind(this));
545
+ fnUpdate(oClone);
546
+ });
526
547
  },
527
548
 
528
549
  /**
@@ -2,6 +2,7 @@
2
2
 
3
3
  /**
4
4
  * File was moved to sap/ushell/renderer/allMyApps/AllMyAppsManager
5
+ * @fileoverview AllMyAppsManager
5
6
  * @deprecated since 1.120.0
6
7
  */
7
8
  sap.ui.define([
@@ -4,7 +4,7 @@
4
4
  * @fileOverview The Unified Shell's AppLifeCycle service enables plug-ins to enquire the which
5
5
  * application is currently displayed and listen to life cycle events.
6
6
  *
7
- * @version 1.126.1
7
+ * @version 1.127.1
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/base/Log",
@@ -6,7 +6,7 @@
6
6
  * This is *not* an application facing service, but for Shell Internal usage.
7
7
  * This service should be accessed by the application via the CrossApplicationNavigation service.
8
8
  *
9
- * @version 1.126.1
9
+ * @version 1.127.1
10
10
  */
11
11
  sap.ui.define([
12
12
  "sap/ui/base/Object",
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The Unified Shell's bookmark service. Allows creating shortcuts on the user's home page.
5
5
  *
6
- * @version 1.126.1
6
+ * @version 1.127.1
7
7
  * @deprecated As of version 1.120
8
8
  */
9
9
  sap.ui.define([
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The Unified Shell's bookmark service. Allows creating shortcuts on the user's home page.
5
5
  *
6
- * @version 1.126.1
6
+ * @version 1.127.1
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ui/core/EventBus",
@@ -29,7 +29,7 @@
29
29
  * In the future, the custom resolver mechanism should be probably moved towards modifying (or only adding to the list of Inbounds),
30
30
  * this way a single data source has to be altered to support consistently getLinks, isIntentSupported.
31
31
  *
32
- * @version 1.126.1
32
+ * @version 1.127.1
33
33
  */
34
34
  sap.ui.define([
35
35
  "sap/base/Log",
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file Exposes a CommonDataModel-based site document in a platform-neutral format to it's clients
5
- * @version 1.126.1
5
+ * @version 1.127.1
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ushell/services/_CommonDataModel/PersonalizationProcessor",
@@ -1239,19 +1239,6 @@ sap.ui.define([
1239
1239
  );
1240
1240
  };
1241
1241
 
1242
- // Recursively freezes an object.
1243
- var fnDeepFreeze = function (o) {
1244
- Object.keys(o)
1245
- .filter(function (sProperty) {
1246
- return typeof o[sProperty] === "object";
1247
- })
1248
- .forEach(function (sProperty) {
1249
- o[sProperty] = fnDeepFreeze(o[sProperty]);
1250
- });
1251
-
1252
- return Object.freeze(o);
1253
- };
1254
-
1255
1242
  var oPluginSets;
1256
1243
  return function (oPluginSetsCache) {
1257
1244
  if (oPluginSetsCache !== undefined) {
@@ -1325,7 +1312,7 @@ sap.ui.define([
1325
1312
  }
1326
1313
  }, oApplications);
1327
1314
 
1328
- return fnDeepFreeze(oPluginSets);
1315
+ return ushellUtils.deepFreeze(oPluginSets);
1329
1316
  }, function (vError) {
1330
1317
  return vError;
1331
1318
  });
@@ -4,7 +4,7 @@
4
4
  * @fileOverview The Unified Shell's Configuration service enables Components of any kind to consume parts of Configuration
5
5
  * provided by the shell. It allows to attach on updates and receive the current values
6
6
  *
7
- * @version 1.126.1
7
+ * @version 1.127.1
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/ushell/Config",
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The Unified Shell's Configuration Defaults service exposes default configurations set in the code base.
5
5
  *
6
- * @version 1.126.1
6
+ * @version 1.127.1
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/base/Log",
@@ -4,7 +4,7 @@
4
4
  * default adapter.
5
5
  * Once instantiated, returns a map of adapters to be used by the LaunchPage Service
6
6
  *
7
- * @version 1.126.1
7
+ * @version 1.127.1
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/ushell/Config",
@@ -6,7 +6,7 @@
6
6
  * It exposes interfaces to perform a hash change and/or trigger an external navigation.
7
7
  *
8
8
  * @deprecated since 1.120 Please use {@link sap.ushell.services.Navigation} instead
9
- * @version 1.126.1
9
+ * @version 1.127.1
10
10
  */
11
11
  sap.ui.define([
12
12
  "sap/ushell/services/AppConfiguration",
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * The service provide dark mode support functionality
7
7
  *
8
- * @version 1.126.1
8
+ * @version 1.127.1
9
9
  */
10
10
  sap.ui.define([
11
11
  "sap/base/Log",
@@ -113,17 +113,23 @@ sap.ui.define([
113
113
 
114
114
  /**
115
115
  * The method returns true if prefers-color-scheme query is supported and
116
- * there is no the "sap-theme" parameter in URL.
116
+ * there is no the "sap-theme" or "sap-ui-theme" parameter in URL.
117
117
  *
118
118
  * @returns {boolean} true is when prefers-color-scheme query is supported and
119
- * there is no the "sap-theme" parameter in URL.
119
+ * there is no the "sap-theme" or "sap-ui-theme" parameter in URL.
120
120
  *
121
121
  * @private
122
122
  */
123
123
  DarkModeSupport.prototype.canAutomaticallyToggleDarkMode = function () {
124
124
  //not all browser supported "(prefers-color-scheme: dark)" query
125
- var isColorSchemeQuerySupported = this.darkMediaQueryList.media === PREFERS_DARK_COLOR_QUERY;
126
- return isColorSchemeQuerySupported && !new URLSearchParams(window.location.search).get("sap-theme");
125
+ if (this.darkMediaQueryList.media !== PREFERS_DARK_COLOR_QUERY) {
126
+ return false;
127
+ }
128
+ const oUrlSearch = new URLSearchParams(window.location.search);
129
+ if (oUrlSearch.get("sap-theme") || oUrlSearch.get("sap-ui-theme")) {
130
+ return false;
131
+ }
132
+ return true;
127
133
  };
128
134
 
129
135
  /**
@@ -3,14 +3,14 @@
3
3
  /**
4
4
  * @fileOverview Defines a generic interface for extension items in ShellAreas.
5
5
  *
6
- * @version 1.126.1
6
+ * @version 1.127.1
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/base/Log",
10
- "sap/ushell/Config"
10
+ "sap/ushell/state/StateManager"
11
11
  ], function (
12
12
  Log,
13
- Config
13
+ StateManager
14
14
  ) {
15
15
  "use strict";
16
16
 
@@ -177,7 +177,7 @@ sap.ui.define([
177
177
  * @private
178
178
  */
179
179
  #getCurrentState () {
180
- const sCurrentState = Config.last("/core/shell/model/currentState/stateName");
180
+ const sCurrentState = StateManager.getLaunchpadState();
181
181
  return sCurrentState;
182
182
  }
183
183
  }