@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.
- package/package.json +1 -1
- package/src/main/js/sap/ushell/.library +1 -1
- package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
- package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
- package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
- package/src/main/js/sap/ushell/SessionHandler.js +2 -2
- package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
- package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
- package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
- package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
- package/src/main/js/sap/ushell/User.js +7 -7
- package/src/main/js/sap/ushell/UserActivityLog.js +8 -13
- package/src/main/js/sap/ushell/_Config/utils.js +18 -0
- package/src/main/js/sap/ushell/_URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/DependencyGraph.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/Functions.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/Resolvers.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/TemplateParameterParser.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/utils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +28 -9
- package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +4 -3
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/utilsCdm.js +6 -1
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/neo/AppInfoService.js +1 -0
- package/src/main/js/sap/ushell/appRuntime/neo/AppRuntimeNeo.js +1 -0
- package/src/main/js/sap/ushell/appRuntime/neo/ProxyAppUtils.js +1 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +6 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer.js +19 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +51 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +6 -6
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/FLPScheduler.js +47 -16
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/StepConfiguration.json +10 -3
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/logger.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/state.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.js +9 -0
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +13 -33
- package/src/main/js/sap/ushell/bootstrap/sandbox2.js +1 -1
- package/src/main/js/sap/ushell/components/_HeaderManager/ShellHeader.controller.js +135 -8
- package/src/main/js/sap/ushell/components/_HomepageManager/DashboardLoadingManager.js +1 -1
- package/src/main/js/sap/ushell/components/_HomepageManager/PagingManager.js +1 -1
- package/src/main/js/sap/ushell/components/_HomepageManager/PersistentPageOperationAdapter.js +1 -1
- package/src/main/js/sap/ushell/components/_HomepageManager/TransientPageOperationAdapter.js +1 -1
- package/src/main/js/sap/ushell/components/appfinder/AppFinder.controller.js +0 -6
- package/src/main/js/sap/ushell/components/appfinder/Component.js +1 -1
- package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +74 -72
- package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +35 -18
- package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +42 -27
- package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
- package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/Component.js +19 -12
- package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +24 -5
- package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +47 -7
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +7 -6
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchBox.fragment.xml +5 -4
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTree.view.xml +34 -22
- package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +7 -6
- package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +3 -1
- package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/contentFinderStandalone/manifestAppSearch.json +1 -1
- package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/Component.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +29 -24
- package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
- package/src/main/js/sap/ushell/components/pages/Component.js +10 -3
- package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
- package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +26 -5
- package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/runtimeSwitcher/Component.js +3 -2
- package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
- package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +19 -3
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenu.view.xml +1 -0
- package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +24 -22
- package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +80 -17
- package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/Component.js +12 -16
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +9 -4
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +9 -9
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +3 -45
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +31 -23
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenuPopover.fragment.xml +7 -2
- package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +3 -3
- package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +0 -4
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +0 -1
- package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +1 -1
- package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +2 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1939 -1946
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +3 -2
- package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
- package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
- package/src/main/js/sap/ushell/library.js +1 -1
- package/src/main/js/sap/ushell/navigationMode.js +1 -1
- package/src/main/js/sap/ushell/performance/ShellAnalytics.js +15 -12
- package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
- package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
- package/src/main/js/sap/ushell/renderer/AccessKeysHandler.js +31 -9
- package/src/main/js/sap/ushell/renderer/Renderer.js +303 -287
- package/src/main/js/sap/ushell/renderer/Shell.controller.js +99 -101
- package/src/main/js/sap/ushell/renderer/Shell.view.js +110 -89
- package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.controller.js +29 -15
- package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.view.xml +2 -2
- package/src/main/js/sap/ushell/renderer/resources/resources.properties +2 -0
- package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/History.js +1 -0
- package/src/main/js/sap/ushell/renderers/fiori2/LogonFrameProvider.js +1 -0
- package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +108 -87
- package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyAppsManager.js +1 -0
- package/src/main/js/sap/ushell/services/AppLifeCycle.js +1 -1
- package/src/main/js/sap/ushell/services/AppState.js +1 -1
- package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
- package/src/main/js/sap/ushell/services/BookmarkV2.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
- package/src/main/js/sap/ushell/services/CommonDataModel.js +2 -15
- package/src/main/js/sap/ushell/services/Configuration.js +1 -1
- package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
- package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
- package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +1 -1
- package/src/main/js/sap/ushell/services/DarkModeSupport.js +11 -5
- package/src/main/js/sap/ushell/services/Extension/Item.js +4 -4
- package/src/main/js/sap/ushell/services/Extension.js +36 -2
- package/src/main/js/sap/ushell/services/FlpLaunchPage.js +1 -1
- package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +1 -1
- package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +1 -1
- package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +4 -4
- package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +18 -2
- package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +20 -2
- package/src/main/js/sap/ushell/services/FrameBoundExtension.js +96 -2
- package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
- package/src/main/js/sap/ushell/services/Menu.js +1 -1
- package/src/main/js/sap/ushell/services/Message.js +1 -1
- package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
- package/src/main/js/sap/ushell/services/MessageInternal.js +13 -8
- package/src/main/js/sap/ushell/services/Navigation/compatibility.js +1 -1
- package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
- package/src/main/js/sap/ushell/services/Navigation.js +1 -1
- package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
- package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
- package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
- package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
- package/src/main/js/sap/ushell/services/Pages.js +4 -3
- package/src/main/js/sap/ushell/services/Personalization.js +1 -1
- package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager.js +1 -1
- package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
- package/src/main/js/sap/ushell/services/Search.js +1 -1
- package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
- package/src/main/js/sap/ushell/services/SearchableContent.js +6 -5
- package/src/main/js/sap/ushell/services/ShellNavigation.js +1 -1
- package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
- package/src/main/js/sap/ushell/services/SpaceContent.js +1 -1
- package/src/main/js/sap/ushell/services/UITracer.js +1 -1
- package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
- package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
- package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +3 -3
- package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
- package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
- package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
- package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
- package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
- package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
- package/src/main/js/sap/ushell/services/_AppState/AppStatePersistencyMethod.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Formatter.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundIndex.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundProvider.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/StagedLogger.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/SystemContext.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Utils.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +1 -1
- package/src/main/js/sap/ushell/services/_CommonDataModel/SiteConverter.js +1 -1
- package/src/main/js/sap/ushell/services/_CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +2 -2
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
- package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
- package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
- package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
- package/src/main/js/sap/ushell/services/_Personalization/VariantSetAdapter.js +1 -0
- package/src/main/js/sap/ushell/services/_Personalization/WindowAdapter.js +1 -0
- package/src/main/js/sap/ushell/services/_Personalization/WindowAdapterContainer.js +1 -0
- package/src/main/js/sap/ushell/services/_Personalization/constants.js +1 -0
- package/src/main/js/sap/ushell/services/_Personalization/constants.private.js +1 -0
- package/src/main/js/sap/ushell/services/_Personalization/utils.js +1 -0
- package/src/main/js/sap/ushell/services/_PluginManager/Extensions.js +1 -1
- package/src/main/js/sap/ushell/services/_PluginManager/HeaderExtensions.js +2 -2
- package/src/main/js/sap/ushell/services/_PluginManager/MenuExtensions.js +1 -1
- package/src/main/js/sap/ushell/services/_Ui5ComponentLoader/utils.js +1 -1
- package/src/main/js/sap/ushell/state/BaseState.js +79 -0
- package/src/main/js/sap/ushell/state/ControlManager.js +209 -0
- package/src/main/js/sap/ushell/state/CurrentState.js +180 -0
- package/src/main/js/sap/ushell/state/KeepAlive.js +75 -0
- package/src/main/js/sap/ushell/state/ShellModel.js +112 -0
- package/src/main/js/sap/ushell/state/StateManager/LaunchpadState.js +40 -0
- package/src/main/js/sap/ushell/state/StateManager/Operation.js +42 -0
- package/src/main/js/sap/ushell/state/StateManager/ShellMode.js +86 -0
- package/src/main/js/sap/ushell/state/StateManager.js +648 -0
- package/src/main/js/sap/ushell/state/StateRules.js +295 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/DefaultStrategy.js +74 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/FloatingActionsStrategy.js +78 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/HeadEndItemsStrategy.js +130 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/HeadItemsStrategy.js +104 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/SidePaneStrategy.js +78 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/SubHeaderStrategy.js +78 -0
- package/src/main/js/sap/ushell/state/StrategyFactory/UserActionsStrategy.js +60 -0
- package/src/main/js/sap/ushell/state/StrategyFactory.js +168 -0
- package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
- package/src/main/js/sap/ushell/themes/base/UserSettings.less +1 -5
- package/src/main/js/sap/ushell/themes/base/WorkPageCell.less +45 -49
- package/src/main/js/sap/ushell/themes/sap_belize_base/UserSettings.less +1 -5
- package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/UserSettings.less +1 -5
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ActionMode.less +107 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_AddBookmarkButton.less +37 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_AnchorItem.less +81 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_AnchorNavigationBar.less +86 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_AppearanceView.less +213 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ApplicationContainer.less +37 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Catalog.less +387 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ContactSupport.less +12 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ContentFinder.less +26 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_CustomGroupHeaderListItem.less +10 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Dashboard.less +66 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_DynamicTile.less +114 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Factsheet.less +225 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_FloatingContainer.less +125 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_FlpSettings.less +83 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_GroupList.less +68 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_GroupListItem.less +54 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_IconFonts.less +21 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ImageTile.less +23 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_LoadingDialog.less +47 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_MenuBar.less +23 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Notifications.less +135 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Page.less +49 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_PictureTile.less +119 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_PictureViewer.less +25 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_PlusTile.less +38 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_QuickAccess.less +18 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_RightFloatingContainerItem.less +82 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_SearchCEP.less +121 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_SearchFLP.less +10 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Section.less +60 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellAppTitle.less +207 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellFloatingAction.less +61 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellFloatingActions.less +14 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +389 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellLayout.less +168 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_SidePane.less +8 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_StaticTile.less +9 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_SubHeader.less +3 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_SysInfoBar.less +164 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_TargetMappingConfiguration.less +8 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Tile.less +223 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_TileBase.less +152 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_TileContainer.less +495 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_TilePlaceholder.less +75 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_TileState.less +62 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ToolAreaItem.less +85 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_UserActionsMenu.less +23 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_UserConsentDialog.less +52 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_UserSettings.less +109 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ViewPortContainer.less +28 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPage.less +58 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageButton.less +60 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageCell.less +144 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageColumn.less +39 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageColumnResizer.less +128 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_WorkPageRow.less +987 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_shared.less +40 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/library.source.less +70 -1
- package/src/main/js/sap/ushell/ui/ShellHeader.fragment.xml +17 -11
- package/src/main/js/sap/ushell/ui/ShellHeader.js +10 -3
- package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +0 -4
- package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -5
- package/src/main/js/sap/ushell/ui/footerbar/AddBookmarkButton.js +19 -5
- package/src/main/js/sap/ushell/ui/footerbar/ContactSupportDialog.controller.js +9 -3
- package/src/main/js/sap/ushell/ui/footerbar/SendAsEmailButton.js +5 -5
- package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/TileContainer.js +17 -12
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +50 -35
- package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +2 -2
- package/src/main/js/sap/ushell/ui/utils.js +1 -1
- package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
- package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
- package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
- package/src/main/js/sap/ushell/utils/WindowUtils.js +3 -3
- package/src/main/js/sap/ushell/utils/workpage/DestinationResolver.js +89 -0
- package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +51 -47
- package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +32 -1
- package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +1 -1
- package/src/main/js/sap/ushell/utils.js +26 -2
- package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.load.ui5theme.js +0 -67
- package/src/main/js/sap/ushell/components/HeaderManager.js +0 -547
- package/src/main/js/sap/ushell/components/StateHelper.js +0 -70
- package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadEndItemsStrategy.js +0 -105
- package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadItemsStrategy.js +0 -75
- package/src/main/js/sap/ushell/components/_HeaderManager/ControlManager.js +0 -70
- package/src/main/js/sap/ushell/components/_HeaderManager/ExtendApplicationPropertyStrategy.js +0 -18
- package/src/main/js/sap/ushell/components/_HeaderManager/PropertyStrategiesFactory.js +0 -58
- package/src/main/js/sap/ushell/components/_HeaderManager/RemoveItemsStrategy.js +0 -46
- package/src/main/js/sap/ushell/components/_HeaderManager/SetHeadPropertyStrategy.js +0 -19
- package/src/main/js/sap/ushell/components/applicationIntegration/elements/model.js +0 -1309
- package/src/main/js/sap/ushell/components/applicationIntegration/relatedShellElements/RelatedShellElements.js +0 -363
|
@@ -32,7 +32,9 @@ sap.ui.define([
|
|
|
32
32
|
"sap/m/NotificationListItem",
|
|
33
33
|
"sap/ushell/renderer/ShellLayout",
|
|
34
34
|
"sap/ushell/renderer/utils",
|
|
35
|
-
"sap/ushell/ui/launchpad/ActionItem"
|
|
35
|
+
"sap/ushell/ui/launchpad/ActionItem",
|
|
36
|
+
"sap/ushell/state/StateManager",
|
|
37
|
+
"sap/ushell/state/ShellModel"
|
|
36
38
|
], function (
|
|
37
39
|
Component,
|
|
38
40
|
Element,
|
|
@@ -61,15 +63,32 @@ sap.ui.define([
|
|
|
61
63
|
NotificationListItem,
|
|
62
64
|
ShellLayout,
|
|
63
65
|
RendererUtils,
|
|
64
|
-
ActionItem
|
|
66
|
+
ActionItem,
|
|
67
|
+
StateManager,
|
|
68
|
+
ShellModel
|
|
65
69
|
) {
|
|
66
70
|
"use strict";
|
|
67
71
|
|
|
68
72
|
// shortcut for sap.ui.core.mvc.ViewType
|
|
69
|
-
|
|
73
|
+
const ViewType = coreLibrary.mvc.ViewType;
|
|
70
74
|
|
|
71
75
|
// shortcut for sap.ushell.AppType
|
|
72
|
-
|
|
76
|
+
const AppType = ushellLibrary.AppType;
|
|
77
|
+
|
|
78
|
+
// shortcut for sap.ushell.state.StateManager.LaunchpadState
|
|
79
|
+
const LaunchpadState = StateManager.LaunchpadState;
|
|
80
|
+
|
|
81
|
+
// shortcut for sap.ushell.state.StateManager.Operation
|
|
82
|
+
const Operation = StateManager.Operation;
|
|
83
|
+
|
|
84
|
+
// shortcut for sap.ushell.state.StateManager.ShellMode
|
|
85
|
+
const ShellMode = StateManager.ShellMode;
|
|
86
|
+
const {
|
|
87
|
+
Headerless,
|
|
88
|
+
Merged,
|
|
89
|
+
Blank,
|
|
90
|
+
Lean
|
|
91
|
+
} = ShellMode;
|
|
73
92
|
|
|
74
93
|
/**
|
|
75
94
|
* @alias sap.ushell.renderer.Renderer
|
|
@@ -81,9 +100,9 @@ sap.ui.define([
|
|
|
81
100
|
*/
|
|
82
101
|
var Renderer = UIComponent.extend("sap.ushell.renderer.Renderer", /** @lends sap.ushell.renderer.Renderer.prototype */ {
|
|
83
102
|
metadata: {
|
|
84
|
-
version: "1.
|
|
103
|
+
version: "1.127.0",
|
|
85
104
|
dependencies: {
|
|
86
|
-
version: "1.
|
|
105
|
+
version: "1.127.0",
|
|
87
106
|
libs: ["sap.ui.core", "sap.m"],
|
|
88
107
|
components: []
|
|
89
108
|
},
|
|
@@ -386,7 +405,7 @@ sap.ui.define([
|
|
|
386
405
|
var bIsRootIntentFlpHome = !sRootIntent || oUshellUtils.isFlpHomeIntent(sRootIntent);
|
|
387
406
|
|
|
388
407
|
// switch to home first so that #set calls below have effect
|
|
389
|
-
AppLifeCycleAI.switchViewState(bIsRootIntentFlpHome ?
|
|
408
|
+
AppLifeCycleAI.switchViewState(bIsRootIntentFlpHome ? LaunchpadState.Home : LaunchpadState.App, false, "Shell-home");
|
|
390
409
|
|
|
391
410
|
this.setCurrentCoreView("home");
|
|
392
411
|
AppConfiguration.setCurrentApplication(null);
|
|
@@ -443,46 +462,18 @@ sap.ui.define([
|
|
|
443
462
|
});
|
|
444
463
|
};
|
|
445
464
|
|
|
446
|
-
/**
|
|
447
|
-
* @returns {string|undefined} so-called "appState" (not to be confused with Internal or External App State)
|
|
448
|
-
* @private
|
|
449
|
-
*/
|
|
450
|
-
Renderer.prototype.getSapUshellConfigParam = function () {
|
|
451
|
-
let sState = new URLSearchParams(window.location.search).get("sap-ushell-config");
|
|
452
|
-
|
|
453
|
-
/**
|
|
454
|
-
* code shall be automatically removed by tooling
|
|
455
|
-
* @deprecated since 1.120.0
|
|
456
|
-
*/
|
|
457
|
-
if (!sState) {
|
|
458
|
-
sState = new URLSearchParams(window.location.search).get("appState");
|
|
459
|
-
if (sState) {
|
|
460
|
-
Log.error("URL parameter 'appState' is given, but deprecated. Please use 'sap-ushell-config' instead!", "sap.ushell.renderer.Renderer");
|
|
461
|
-
}
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
return sState && sState.toLowerCase();
|
|
465
|
-
};
|
|
466
|
-
|
|
467
465
|
/**
|
|
468
466
|
* @returns {object} an instance of Shell view
|
|
469
467
|
* @since 1.15.0
|
|
470
468
|
* @private
|
|
471
469
|
*/
|
|
472
470
|
Renderer.prototype.createContent = function () {
|
|
473
|
-
var sGivenState = Renderer.prototype.getSapUshellConfigParam();
|
|
474
471
|
var viewData = this.getComponentData() || {};
|
|
475
472
|
var oAppConfig = {
|
|
476
473
|
applications: { "Shell-home": {} },
|
|
477
474
|
rootIntent: "Shell-home"
|
|
478
475
|
};
|
|
479
|
-
|
|
480
|
-
if (sGivenState) {
|
|
481
|
-
if (!viewData.config) {
|
|
482
|
-
viewData.config = {};
|
|
483
|
-
}
|
|
484
|
-
viewData.config.appState = sGivenState;
|
|
485
|
-
}
|
|
476
|
+
const sCurrentShellMode = StateManager.getShellMode();
|
|
486
477
|
|
|
487
478
|
// the code below migrates a configuration structure from version 1.28 or older, to the default expected configuration structure in 1.30
|
|
488
479
|
if (viewData.config) {
|
|
@@ -503,13 +494,20 @@ sap.ui.define([
|
|
|
503
494
|
);
|
|
504
495
|
|
|
505
496
|
// handle the Personalization flag
|
|
506
|
-
if (
|
|
497
|
+
if ([Headerless, Merged, Blank].includes(sCurrentShellMode)) {
|
|
507
498
|
viewData.config.enablePersonalization = false;
|
|
508
499
|
Config.emit("/core/shell/enablePersonalization", false);
|
|
509
500
|
} else {
|
|
510
501
|
viewData.config.enablePersonalization = Config.last("/core/shell/enablePersonalization");
|
|
511
502
|
}
|
|
512
503
|
|
|
504
|
+
if ([Lean].includes(sCurrentShellMode)) {
|
|
505
|
+
viewData.config.showRecentActivity = false;
|
|
506
|
+
} else if (viewData.config.showRecentActivity === undefined) {
|
|
507
|
+
viewData.config.showRecentActivity = Config.last("/core/shell/model/showRecentActivity");
|
|
508
|
+
}
|
|
509
|
+
Config.emit("/core/shell/model/showRecentActivity", viewData.config.showRecentActivity);
|
|
510
|
+
|
|
513
511
|
// If the personalization is disabled, do not create the AppFinder and Edit buttons in the header
|
|
514
512
|
if (!viewData.config.enablePersonalization) {
|
|
515
513
|
viewData.config.moveEditHomePageActionToShellHeader = false;
|
|
@@ -520,14 +518,6 @@ sap.ui.define([
|
|
|
520
518
|
}
|
|
521
519
|
}
|
|
522
520
|
|
|
523
|
-
viewData.shellModel = Config.createModel("/core/shell/model", JSONModel);
|
|
524
|
-
viewData.helperModel = new JSONModel({
|
|
525
|
-
shell: {
|
|
526
|
-
floatingContainerVisible: false,
|
|
527
|
-
footerContent: ""
|
|
528
|
-
}
|
|
529
|
-
});
|
|
530
|
-
|
|
531
521
|
if (!this.getComponentData().async) {
|
|
532
522
|
let oView;
|
|
533
523
|
Log.error("sap/ushell/renderer/Renderer component is created synchronously. Synchronous instantiation is not allowed. Please use async:true in component data");
|
|
@@ -545,7 +535,6 @@ sap.ui.define([
|
|
|
545
535
|
}).then(function (oView) {
|
|
546
536
|
oView.addStyleClass("sapUshellRenderer");
|
|
547
537
|
this._oShellView = oView;
|
|
548
|
-
this.oShellModel = AppLifeCycleAI.getElementsModel();
|
|
549
538
|
|
|
550
539
|
// initialize the RendererExtensions after the view is created.
|
|
551
540
|
// This also publishes an external event that indicates that sap.ushell.renderer.RendererExtensions can be used.
|
|
@@ -573,7 +562,6 @@ sap.ui.define([
|
|
|
573
562
|
});
|
|
574
563
|
oSyncView.addStyleClass("sapUshellRenderer");
|
|
575
564
|
this._oShellView = oSyncView;
|
|
576
|
-
this.oShellModel = AppLifeCycleAI.getElementsModel();
|
|
577
565
|
|
|
578
566
|
oSyncView.loaded().then(function (oCreatedView) {
|
|
579
567
|
// initialize the RendererExtensions after the view is created.
|
|
@@ -608,10 +596,10 @@ sap.ui.define([
|
|
|
608
596
|
* @returns {object} Created Extended Shell State.
|
|
609
597
|
* @since 1.35
|
|
610
598
|
* @private
|
|
599
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
611
600
|
*/
|
|
612
601
|
Renderer.prototype.createExtendedShellState = function (sShellName, fnCreationInstructions) {
|
|
613
|
-
|
|
614
|
-
return AppLifeCycleAI.shellElements().createExtendedShellState(sShellName, fnCreationInstructions);
|
|
602
|
+
Log.error("The function createExtendedShellState was deprecated discontinued.");
|
|
615
603
|
};
|
|
616
604
|
|
|
617
605
|
/**
|
|
@@ -637,10 +625,10 @@ sap.ui.define([
|
|
|
637
625
|
* @param {function} fnCustomMerge fnCustomMerge
|
|
638
626
|
* @since 1.35
|
|
639
627
|
* @private
|
|
628
|
+
* @deprecated since 1.120. Functionality was discontinued.
|
|
640
629
|
*/
|
|
641
630
|
Renderer.prototype.applyExtendedShellState = function (sShellName, fnCustomMerge) {
|
|
642
|
-
|
|
643
|
-
this.oShellModel.applyExtendedShellState(sShellName, fnCustomMerge);
|
|
631
|
+
Log.error("The function applyExtendedShellState was discontinued.");
|
|
644
632
|
};
|
|
645
633
|
|
|
646
634
|
/**
|
|
@@ -655,7 +643,7 @@ sap.ui.define([
|
|
|
655
643
|
* oRenderer.showActionButton([oButton.getId()], false, ["home", "app"]);
|
|
656
644
|
* </pre>
|
|
657
645
|
*
|
|
658
|
-
* @param {string|string[]}
|
|
646
|
+
* @param {string|string[]} aIds Either ID or an array of IDs of elements to be added to the shell.
|
|
659
647
|
* @param {boolean} bCurrentState if true, add the current component only to the current instance of the rendering of the shell.
|
|
660
648
|
* if false, add the component to the LaunchPadState itself.
|
|
661
649
|
* @param {string[]} aStates (only valid if bCurrentState is set to false) -
|
|
@@ -663,14 +651,8 @@ sap.ui.define([
|
|
|
663
651
|
* @since 1.30
|
|
664
652
|
* @private
|
|
665
653
|
*/
|
|
666
|
-
Renderer.prototype.showLeftPaneContent = function (
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
if (bCurrentState) {
|
|
670
|
-
AppLifeCycleAI.shellElements().addShellModelForApplications("paneContent", aIds);
|
|
671
|
-
} else {
|
|
672
|
-
this.oShellModel.addLeftPaneContent(aIds, false, aStates);
|
|
673
|
-
}
|
|
654
|
+
Renderer.prototype.showLeftPaneContent = function (aIds, bCurrentState, aStates) {
|
|
655
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "sidePane.items", Operation.Add);
|
|
674
656
|
};
|
|
675
657
|
|
|
676
658
|
/**
|
|
@@ -699,14 +681,18 @@ sap.ui.define([
|
|
|
699
681
|
* @since 1.30
|
|
700
682
|
* @private
|
|
701
683
|
*/
|
|
702
|
-
Renderer.prototype.showHeaderItem = function (vIds, bCurrentState,
|
|
703
|
-
|
|
684
|
+
Renderer.prototype.showHeaderItem = function (vIds, bCurrentState, vStates) {
|
|
685
|
+
const aIds = Array.isArray(vIds) ? vIds : [vIds];
|
|
686
|
+
const aStates = this._sanitizeStates(vStates);
|
|
704
687
|
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
688
|
+
aIds.forEach((sId) => {
|
|
689
|
+
if (bCurrentState) {
|
|
690
|
+
StateManager.updateCurrentState("header.headItems", Operation.Add, sId);
|
|
691
|
+
return;
|
|
692
|
+
}
|
|
693
|
+
|
|
694
|
+
StateManager.updateBaseStates(aStates, "header.headItems", Operation.Add, sId);
|
|
695
|
+
});
|
|
710
696
|
};
|
|
711
697
|
|
|
712
698
|
/**
|
|
@@ -721,7 +707,7 @@ sap.ui.define([
|
|
|
721
707
|
* renderer.showRightFloatingContainerItem(button1.getId(), false, ["home", "app"]);
|
|
722
708
|
* </pre>
|
|
723
709
|
*
|
|
724
|
-
* @param {string|string[]}
|
|
710
|
+
* @param {string|string[]} aIds Either ID or an array of IDs of elements to be added to the Tool Area.
|
|
725
711
|
* @param {boolean} bCurrentState if true, add the current RightFloatingContainerItems only to the current instance of the rendering of the shell.
|
|
726
712
|
* if false, add the RightFloatingContainerItems to the LaunchPadState itself.
|
|
727
713
|
* @param {string[]} aStates Only valid if bCurrentState is set to false.
|
|
@@ -729,14 +715,8 @@ sap.ui.define([
|
|
|
729
715
|
* @since 1.37
|
|
730
716
|
* @private
|
|
731
717
|
*/
|
|
732
|
-
Renderer.prototype.showRightFloatingContainerItem = function (
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
if (bCurrentState) {
|
|
736
|
-
AppLifeCycleAI.shellElements().addShellModelForApplications("RightFloatingContainerItems", aIds);
|
|
737
|
-
} else {
|
|
738
|
-
this.oShellModel.addRightFloatingContainerItem(aIds, false, aStates);
|
|
739
|
-
}
|
|
718
|
+
Renderer.prototype.showRightFloatingContainerItem = function (aIds, bCurrentState, aStates) {
|
|
719
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "rightFloatingContainer.items", Operation.Add);
|
|
740
720
|
};
|
|
741
721
|
|
|
742
722
|
/**
|
|
@@ -747,7 +727,7 @@ sap.ui.define([
|
|
|
747
727
|
* @private
|
|
748
728
|
*/
|
|
749
729
|
Renderer.prototype.showRightFloatingContainer = function (bShow) {
|
|
750
|
-
|
|
730
|
+
StateManager.updateCurrentState("rightFloatingContainer.visible", Operation.Set, bShow);
|
|
751
731
|
};
|
|
752
732
|
|
|
753
733
|
/**
|
|
@@ -763,7 +743,7 @@ sap.ui.define([
|
|
|
763
743
|
* </pre>
|
|
764
744
|
*
|
|
765
745
|
* <br>Note: Was public with fiori2/Renderer
|
|
766
|
-
* @param {string|string[]}
|
|
746
|
+
* @param {string|string[]} aIds A single ID or an array of IDs to add to the Tool Area.
|
|
767
747
|
* @param {boolean} bCurrentState If <code>true</code>, add the items to the currently rendered shell.
|
|
768
748
|
* If <code>false</code>, add the items to the LaunchPadState itself,
|
|
769
749
|
* causing the items to be rendered every time the given states are active.
|
|
@@ -774,8 +754,8 @@ sap.ui.define([
|
|
|
774
754
|
* @since 1.30
|
|
775
755
|
* @private
|
|
776
756
|
*/
|
|
777
|
-
Renderer.prototype.showToolAreaItem = function (
|
|
778
|
-
this.
|
|
757
|
+
Renderer.prototype.showToolAreaItem = function (aIds, bCurrentState, aStates) {
|
|
758
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "toolArea.items", Operation.Add);
|
|
779
759
|
};
|
|
780
760
|
|
|
781
761
|
/**
|
|
@@ -792,7 +772,7 @@ sap.ui.define([
|
|
|
792
772
|
* </pre>
|
|
793
773
|
*
|
|
794
774
|
* <br>Note: Was public with fiori2/Renderer
|
|
795
|
-
* @param {string[]}
|
|
775
|
+
* @param {string[]} vIds List of ID elements to that should be added to the User Actions Menu options bar.
|
|
796
776
|
* @param {boolean} bCurrentState If true, add the created control to the current rendered shell state. When the user navigates to a
|
|
797
777
|
* different state, or to a different application, then the control is removed. If false, the control is added to the LaunchpadState.
|
|
798
778
|
* @param {string[]} aStates List of the launchpad states (sap.ushell.renderer.Renderer.LaunchpadState) in which to add the aIds.
|
|
@@ -802,34 +782,29 @@ sap.ui.define([
|
|
|
802
782
|
* @since 1.30
|
|
803
783
|
* @private
|
|
804
784
|
*/
|
|
805
|
-
Renderer.prototype.showActionButton = function (
|
|
806
|
-
|
|
807
|
-
var aActions = [];
|
|
808
|
-
var oButton;
|
|
785
|
+
Renderer.prototype.showActionButton = function (vIds, bCurrentState, aStates) {
|
|
786
|
+
const aIds = Array.isArray(vIds) ? vIds : [vIds];
|
|
809
787
|
|
|
810
|
-
if (typeof aIds === "string") {
|
|
811
|
-
aIds = [aIds];
|
|
812
|
-
}
|
|
813
788
|
// In case the method was called with instance of sap.m.Button, we need to convert it to
|
|
814
789
|
// sap.ushell.ui.launchpad.ActionItem in order to apply the action item behavior and styles to this control
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
return oButton instanceof ActionItem;
|
|
822
|
-
});
|
|
823
|
-
if (aButtons.length) {
|
|
824
|
-
this.convertButtonsToActions(aButtons, bCurrentState, aStates);
|
|
825
|
-
}
|
|
826
|
-
if (aActions.length) {
|
|
827
|
-
if (bCurrentState) {
|
|
828
|
-
AppLifeCycleAI.shellElements().addShellModelForApplications("actions", aIds);
|
|
790
|
+
const { buttons, actions } = aIds.reduce(function (oResult, sId) {
|
|
791
|
+
const oElement = Element.getElementById(sId);
|
|
792
|
+
const bIsButton = BaseObject.isObjectA(oElement, "sap.m.Button") && !(BaseObject.isObjectA(oElement, "sap.ushell.ui.launchpad.ActionItem"));
|
|
793
|
+
|
|
794
|
+
if (bIsButton) {
|
|
795
|
+
oResult.buttons.push(sId);
|
|
829
796
|
} else {
|
|
830
|
-
|
|
797
|
+
oResult.actions.push(sId);
|
|
831
798
|
}
|
|
799
|
+
|
|
800
|
+
return oResult;
|
|
801
|
+
}, { buttons: [], actions: [] });
|
|
802
|
+
|
|
803
|
+
if (buttons.length) {
|
|
804
|
+
this.convertButtonsToActions(buttons, bCurrentState, aStates);
|
|
832
805
|
}
|
|
806
|
+
|
|
807
|
+
this._updateItemStates(actions, bCurrentState, aStates, "userActions.items", Operation.Add);
|
|
833
808
|
};
|
|
834
809
|
|
|
835
810
|
/**
|
|
@@ -856,11 +831,7 @@ sap.ui.define([
|
|
|
856
831
|
* @deprecated since 1.52. Support for the FloatingActionButton has been discontinued.
|
|
857
832
|
*/
|
|
858
833
|
Renderer.prototype.showFloatingActionButton = function (aIds, bCurrentState, aStates) {
|
|
859
|
-
|
|
860
|
-
AppLifeCycleAI.shellElements().addShellModelForApplications("floatingActions", typeof aIds === "string" ? [aIds] : aIds);
|
|
861
|
-
} else {
|
|
862
|
-
this.oShellModel.addFloatingActionButton(typeof aIds === "string" ? [aIds] : aIds, false, aStates);
|
|
863
|
-
}
|
|
834
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "floatingActions.items", Operation.Add);
|
|
864
835
|
};
|
|
865
836
|
|
|
866
837
|
/**
|
|
@@ -887,11 +858,54 @@ sap.ui.define([
|
|
|
887
858
|
* @private
|
|
888
859
|
*/
|
|
889
860
|
Renderer.prototype.showHeaderEndItem = function (aIds, bCurrentState, aStates) {
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
861
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "header.headEndItems", Operation.Add);
|
|
862
|
+
};
|
|
863
|
+
|
|
864
|
+
/**
|
|
865
|
+
* Sanitizes the given list of launchpad states by removing any invalid states.
|
|
866
|
+
* For undefined or empty lists, all valid launchpad states are returned.
|
|
867
|
+
*
|
|
868
|
+
* @param {Array<sap.ushell.renderer.Renderer.LaunchpadState | string> | undefined} vLaunchpadStates A list of string which might not adhere to the LaunchpadState enum or undefined.
|
|
869
|
+
* @returns {sap.ushell.renderer.Renderer.LaunchpadState[]} The sanitized list of LaunchpadStates.
|
|
870
|
+
*
|
|
871
|
+
* @since 1.127
|
|
872
|
+
* @private
|
|
873
|
+
*/
|
|
874
|
+
Renderer.prototype._sanitizeStates = function (vLaunchpadStates) {
|
|
875
|
+
const aLaunchpadStates = Array.isArray(vLaunchpadStates) ? vLaunchpadStates : [];
|
|
876
|
+
|
|
877
|
+
const aFilteredLaunchpadStates = aLaunchpadStates
|
|
878
|
+
.filter((sLaunchpadState) => {
|
|
879
|
+
return sLaunchpadState !== undefined && sLaunchpadState !== null;
|
|
880
|
+
})
|
|
881
|
+
.filter((sLaunchpadState) => {
|
|
882
|
+
const bValidLaunchpadState = Object.values(this.LaunchpadState).includes(sLaunchpadState);
|
|
883
|
+
|
|
884
|
+
if (!bValidLaunchpadState) {
|
|
885
|
+
throw new Error(`Invalid launchpad state: ${sLaunchpadState}`);
|
|
886
|
+
}
|
|
887
|
+
return bValidLaunchpadState;
|
|
888
|
+
});
|
|
889
|
+
|
|
890
|
+
if (aFilteredLaunchpadStates.length === 0) {
|
|
891
|
+
return Object.values(this.LaunchpadState);
|
|
894
892
|
}
|
|
893
|
+
|
|
894
|
+
return aFilteredLaunchpadStates;
|
|
895
|
+
};
|
|
896
|
+
|
|
897
|
+
Renderer.prototype._updateItemStates = function (vIds, bCurrentState, vStates, sPath, sOperation) {
|
|
898
|
+
const aIds = Array.isArray(vIds) ? vIds : [vIds];
|
|
899
|
+
const aStates = this._sanitizeStates(vStates);
|
|
900
|
+
|
|
901
|
+
aIds.forEach((sId) => {
|
|
902
|
+
if (bCurrentState) {
|
|
903
|
+
StateManager.updateCurrentState(sPath, sOperation, sId);
|
|
904
|
+
return;
|
|
905
|
+
}
|
|
906
|
+
|
|
907
|
+
StateManager.updateBaseStates(aStates, sPath, sOperation, sId);
|
|
908
|
+
});
|
|
895
909
|
};
|
|
896
910
|
|
|
897
911
|
/**
|
|
@@ -909,19 +923,22 @@ sap.ui.define([
|
|
|
909
923
|
* @param {boolean} bCurrentState If <code>true</code> then the visibility is set only to the current rendered shell state.<br>
|
|
910
924
|
* When the user navigates to another application (including the Home page) then the visibility flag is reset.<br>
|
|
911
925
|
* If <code>false</code> then set the visibility according to the states provided in the aState parameter.<br>
|
|
912
|
-
* @param {string[]}
|
|
926
|
+
* @param {string[]} vStates (Valid only if bCurrentState is <code>false</code>)<br>
|
|
913
927
|
* A list of shell states (i.e. sap.ushell.renderer.Renderer.LaunchpadState) in which the header visibility flag should be set.<br>
|
|
914
928
|
* If no launchpad state is provided the visibility flag is set for all states.
|
|
915
929
|
* @see LaunchpadState
|
|
916
930
|
* @since 1.38
|
|
917
931
|
* @private
|
|
918
932
|
*/
|
|
919
|
-
Renderer.prototype.setHeaderVisibility = function (bVisible, bCurrentState,
|
|
933
|
+
Renderer.prototype.setHeaderVisibility = function (bVisible, bCurrentState, vStates) {
|
|
934
|
+
const aStates = this._sanitizeStates(vStates);
|
|
935
|
+
|
|
920
936
|
if (bCurrentState) {
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
this.oShellModel.setHeaderVisibility(bVisible, false, aStates);
|
|
937
|
+
StateManager.updateCurrentState("header.visible", Operation.Set, bVisible);
|
|
938
|
+
return;
|
|
924
939
|
}
|
|
940
|
+
|
|
941
|
+
StateManager.updateBaseStates(aStates, "header.visible", Operation.Set, bVisible);
|
|
925
942
|
};
|
|
926
943
|
|
|
927
944
|
/**
|
|
@@ -953,11 +970,7 @@ sap.ui.define([
|
|
|
953
970
|
* @private
|
|
954
971
|
*/
|
|
955
972
|
Renderer.prototype.showSubHeader = function (aIds, bCurrentState, aStates) {
|
|
956
|
-
|
|
957
|
-
AppLifeCycleAI.shellElements().addShellModelForApplications("subHeader", typeof aIds === "string" ? [aIds] : aIds);
|
|
958
|
-
} else {
|
|
959
|
-
this.oShellModel.addSubHeader(typeof aIds === "string" ? [aIds] : aIds, false, aStates);
|
|
960
|
-
}
|
|
973
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "subHeader.items", Operation.Add);
|
|
961
974
|
};
|
|
962
975
|
|
|
963
976
|
/**
|
|
@@ -980,11 +993,7 @@ sap.ui.define([
|
|
|
980
993
|
* @private
|
|
981
994
|
*/
|
|
982
995
|
Renderer.prototype.showSignOutItem = function (bCurrentState, aStates) {
|
|
983
|
-
|
|
984
|
-
AppLifeCycleAI.shellElements().addShellModelForApplications("actions", ["logoutBtn"], false);
|
|
985
|
-
} else {
|
|
986
|
-
this.oShellModel.showSignOutButton(bCurrentState, aStates);
|
|
987
|
-
}
|
|
996
|
+
this.showActionButton(["logoutBtn"], bCurrentState, aStates);
|
|
988
997
|
};
|
|
989
998
|
|
|
990
999
|
/**
|
|
@@ -1007,7 +1016,7 @@ sap.ui.define([
|
|
|
1007
1016
|
* @private
|
|
1008
1017
|
*/
|
|
1009
1018
|
Renderer.prototype.showSettingsItem = function (bCurrentState, aStates) {
|
|
1010
|
-
this.
|
|
1019
|
+
this.showActionButton(["userSettingsBtn"], bCurrentState, aStates);
|
|
1011
1020
|
};
|
|
1012
1021
|
|
|
1013
1022
|
/**
|
|
@@ -1208,21 +1217,17 @@ sap.ui.define([
|
|
|
1208
1217
|
* We do not recommend using it on a standard launchpad element, as this may interfere with the standard launchpad functionality.
|
|
1209
1218
|
*
|
|
1210
1219
|
* <br>Note: Was public with fiori2/Renderer
|
|
1211
|
-
* @param {string[]}
|
|
1220
|
+
* @param {string[]} vIds the Ids of the sap.ushell.ui.shell.ShellHeadItem to remove.
|
|
1212
1221
|
* @param {boolean} bCurrentState if true, remove the current control only from the current rendered shell state.
|
|
1213
|
-
* @param {string[]}
|
|
1222
|
+
* @param {string[]} vStates list of the sap.ushell.renderer.Renderer.LaunchpadState in which to remove the control.
|
|
1214
1223
|
* (Only valid if bCurrentState is set to false)
|
|
1215
1224
|
* @see LaunchpadState
|
|
1216
1225
|
* If no launchpad state is provided the content is removed in all states.
|
|
1217
1226
|
* @since 1.30
|
|
1218
1227
|
* @private
|
|
1219
1228
|
*/
|
|
1220
|
-
Renderer.prototype.hideHeaderItem = function (
|
|
1221
|
-
|
|
1222
|
-
this.oShellModel.removeHeaderItem([aIds], bCurrentState, aStates);
|
|
1223
|
-
} else {
|
|
1224
|
-
this.oShellModel.removeHeaderItem(aIds, bCurrentState, aStates);
|
|
1225
|
-
}
|
|
1229
|
+
Renderer.prototype.hideHeaderItem = function (vIds, bCurrentState, vStates) {
|
|
1230
|
+
this._updateItemStates(vIds, bCurrentState, vStates, "header.headItems", Operation.Remove);
|
|
1226
1231
|
};
|
|
1227
1232
|
|
|
1228
1233
|
/**
|
|
@@ -1231,7 +1236,7 @@ sap.ui.define([
|
|
|
1231
1236
|
* We do not recommend using it on a standard launchpad element, as this may interfere with the standard launchpad functionality.
|
|
1232
1237
|
*
|
|
1233
1238
|
* <br>Note: Was public with fiori2/Renderer
|
|
1234
|
-
* @param {string|string[]}
|
|
1239
|
+
* @param {string|string[]} aIds A single ID or an array of IDs to remove from the Tool Area.
|
|
1235
1240
|
* @param {boolean} bCurrentState If <code>true</code>, remove the items from the currently rendered shell.
|
|
1236
1241
|
* If <code>false</code>, remove the items from the LaunchPadState itself,
|
|
1237
1242
|
* causing the items to be removed every time the given states are active.
|
|
@@ -1242,11 +1247,8 @@ sap.ui.define([
|
|
|
1242
1247
|
* @since 1.30
|
|
1243
1248
|
* @private
|
|
1244
1249
|
*/
|
|
1245
|
-
Renderer.prototype.removeToolAreaItem = function (
|
|
1246
|
-
|
|
1247
|
-
vIds = [vIds];
|
|
1248
|
-
}
|
|
1249
|
-
this.oShellModel.removeToolAreaItem(vIds, bCurrentState, aStates);
|
|
1250
|
+
Renderer.prototype.removeToolAreaItem = function (aIds, bCurrentState, aStates) {
|
|
1251
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "toolArea.items", Operation.Remove);
|
|
1250
1252
|
};
|
|
1251
1253
|
|
|
1252
1254
|
/**
|
|
@@ -1262,11 +1264,7 @@ sap.ui.define([
|
|
|
1262
1264
|
* @private
|
|
1263
1265
|
*/
|
|
1264
1266
|
Renderer.prototype.removeRightFloatingContainerItem = function (aIds, bCurrentState, aStates) {
|
|
1265
|
-
|
|
1266
|
-
this.oShellModel.removeRightFloatingContainerItem([aIds], bCurrentState, aStates);
|
|
1267
|
-
} else {
|
|
1268
|
-
this.oShellModel.removeRightFloatingContainerItem(aIds, bCurrentState, aStates);
|
|
1269
|
-
}
|
|
1267
|
+
this._updateItemStates(aIds, bCurrentState, aStates, "rightFloatingContainer.items", Operation.Remove);
|
|
1270
1268
|
};
|
|
1271
1269
|
|
|
1272
1270
|
/**
|
|
@@ -1276,20 +1274,16 @@ sap.ui.define([
|
|
|
1276
1274
|
* We do not recommend using it on standard launchpad elements, as this may interfere with the standard launchpad functionality.
|
|
1277
1275
|
*
|
|
1278
1276
|
* <br>Note: Was public with fiori2/Renderer
|
|
1279
|
-
* @param {string[]}
|
|
1277
|
+
* @param {string[]} vIds IDs of the button controls that should hidden.
|
|
1280
1278
|
* @param {boolean} bCurrentState If true, removes the current control only from the current rendered shell state.
|
|
1281
|
-
* @param {string[]}
|
|
1279
|
+
* @param {string[]} vStates A list of the launchpad states in which to hide the control. Valid only if bCurrentState is set to false.
|
|
1282
1280
|
* @see sap.ushell.renderer.Renderer.LaunchpadState.
|
|
1283
1281
|
* If no launchpad state is provided, the content is hidden in all states.
|
|
1284
1282
|
* @since 1.30
|
|
1285
1283
|
* @private
|
|
1286
1284
|
*/
|
|
1287
|
-
Renderer.prototype.hideActionButton = function (
|
|
1288
|
-
|
|
1289
|
-
this.oShellModel.removeActionButton([aIds], bCurrentState, aStates);
|
|
1290
|
-
} else {
|
|
1291
|
-
this.oShellModel.removeActionButton(aIds, bCurrentState, aStates);
|
|
1292
|
-
}
|
|
1285
|
+
Renderer.prototype.hideActionButton = function (vIds, bCurrentState, vStates) {
|
|
1286
|
+
this._updateItemStates(vIds, bCurrentState, vStates, "userActions.items", Operation.Remove);
|
|
1293
1287
|
};
|
|
1294
1288
|
|
|
1295
1289
|
/**
|
|
@@ -1299,21 +1293,17 @@ sap.ui.define([
|
|
|
1299
1293
|
* We do not recommend using it on a standard launchpad element, as this may interfere with the standard launchpad functionality.
|
|
1300
1294
|
*
|
|
1301
1295
|
* <br>Note: Was public with fiori2/Renderer
|
|
1302
|
-
* @param {string[]}
|
|
1296
|
+
* @param {string[]} vIds the Ids of the controls to remove.
|
|
1303
1297
|
* @param {boolean} bCurrentState if true, remove the current control only from the current rendered shell state.
|
|
1304
|
-
* @param {string[]}
|
|
1298
|
+
* @param {string[]} vStates list of the sap.ushell.renderer.Renderer.LaunchpadState in which to remove the control.
|
|
1305
1299
|
* (Only valid if bCurrentState is set to false)
|
|
1306
1300
|
* @see LaunchpadState
|
|
1307
1301
|
* If no launchpad state is provided the content is removed in all states.
|
|
1308
1302
|
* @since 1.30
|
|
1309
1303
|
* @private
|
|
1310
1304
|
*/
|
|
1311
|
-
Renderer.prototype.hideLeftPaneContent = function (
|
|
1312
|
-
|
|
1313
|
-
this.oShellModel.removeLeftPaneContent([aIds], bCurrentState, aStates);
|
|
1314
|
-
} else {
|
|
1315
|
-
this.oShellModel.removeLeftPaneContent(aIds, bCurrentState, aStates);
|
|
1316
|
-
}
|
|
1305
|
+
Renderer.prototype.hideLeftPaneContent = function (vIds, bCurrentState, vStates) {
|
|
1306
|
+
this._updateItemStates(vIds, bCurrentState, vStates, "sidePane.items", Operation.Remove);
|
|
1317
1307
|
};
|
|
1318
1308
|
|
|
1319
1309
|
/**
|
|
@@ -1323,9 +1313,9 @@ sap.ui.define([
|
|
|
1323
1313
|
* We do not recommend using it on a standard launchpad element, as this may interfere with the standard launchpad functionality.
|
|
1324
1314
|
*
|
|
1325
1315
|
* <br>Note: Was public with fiori2/Renderer
|
|
1326
|
-
* @param {string[]}
|
|
1316
|
+
* @param {string[]} vIds the Ids of the sap.ushell.ui.shell.ShellFloatingAction to remove.
|
|
1327
1317
|
* @param {boolean} bCurrentState if true, remove the current control only from the current rendered shell state.
|
|
1328
|
-
* @param {string[]}
|
|
1318
|
+
* @param {string[]} vStates list of the sap.ushell.renderer.Renderer.LaunchpadState in which to remove the control.
|
|
1329
1319
|
* (Only valid if bCurrentState is set to false)
|
|
1330
1320
|
* @see LaunchpadState
|
|
1331
1321
|
* If no launchpad state is provided the content is removed in all states.
|
|
@@ -1333,12 +1323,8 @@ sap.ui.define([
|
|
|
1333
1323
|
* @private
|
|
1334
1324
|
* @deprecated since 1.52
|
|
1335
1325
|
*/
|
|
1336
|
-
Renderer.prototype.hideFloatingActionButton = function (
|
|
1337
|
-
|
|
1338
|
-
this.oShellModel.removeFloatingActionButton([aIds], bCurrentState, aStates);
|
|
1339
|
-
} else {
|
|
1340
|
-
this.oShellModel.removeFloatingActionButton(aIds, bCurrentState, aStates);
|
|
1341
|
-
}
|
|
1326
|
+
Renderer.prototype.hideFloatingActionButton = function (vIds, bCurrentState, vStates) {
|
|
1327
|
+
this._updateItemStates(vIds, bCurrentState, vStates, "floatingActions.items", Operation.Remove);
|
|
1342
1328
|
};
|
|
1343
1329
|
|
|
1344
1330
|
/**
|
|
@@ -1348,21 +1334,17 @@ sap.ui.define([
|
|
|
1348
1334
|
* We do not recommend using it on a standard launchpad element, as this may interfere with the standard launchpad functionality.
|
|
1349
1335
|
*
|
|
1350
1336
|
* <br>Note: Was public with fiori2/Renderer
|
|
1351
|
-
* @param {string[]}
|
|
1337
|
+
* @param {string[]} vIds the Ids of the sap.ushell.ui.shell.ShellHeadItem to remove.
|
|
1352
1338
|
* @param {boolean} bCurrentState if true, remove the current control only from the current rendered shell state.
|
|
1353
|
-
* @param {string[]}
|
|
1339
|
+
* @param {string[]} vStates list of the sap.ushell.renderer.Renderer.LaunchpadState in which to remove the control.
|
|
1354
1340
|
* (Only valid if bCurrentState is set to false)
|
|
1355
1341
|
* @see LaunchpadState
|
|
1356
1342
|
* If no launchpad state is provided the content is removed in all states.
|
|
1357
1343
|
* @since 1.30
|
|
1358
1344
|
* @private
|
|
1359
1345
|
*/
|
|
1360
|
-
Renderer.prototype.hideHeaderEndItem = function (
|
|
1361
|
-
|
|
1362
|
-
this.oShellModel.removeHeaderEndItem([aIds], bCurrentState, aStates);
|
|
1363
|
-
} else {
|
|
1364
|
-
this.oShellModel.removeHeaderEndItem(aIds, bCurrentState, aStates);
|
|
1365
|
-
}
|
|
1346
|
+
Renderer.prototype.hideHeaderEndItem = function (vIds, bCurrentState, vStates) {
|
|
1347
|
+
this._updateItemStates(vIds, bCurrentState, vStates, "header.headEndItems", Operation.Remove);
|
|
1366
1348
|
};
|
|
1367
1349
|
|
|
1368
1350
|
/**
|
|
@@ -1372,21 +1354,17 @@ sap.ui.define([
|
|
|
1372
1354
|
* We do not recommend using it on a standard launchpad element, as this may interfere with the standard launchpad functionality.
|
|
1373
1355
|
*
|
|
1374
1356
|
* <br>Note: Was public with fiori2/Renderer
|
|
1375
|
-
* @param {string[]}
|
|
1357
|
+
* @param {string[]} vIds the Ids of the controls to remove.
|
|
1376
1358
|
* @param {boolean} bCurrentState if true, remove the current control only from the current rendered shell state.
|
|
1377
|
-
* @param {string[]}
|
|
1359
|
+
* @param {string[]} vStates list of the sap.ushell.renderer.Renderer.LaunchpadState in which to remove the control.
|
|
1378
1360
|
* (Only valid if bCurrentState is set to false)
|
|
1379
1361
|
* @see LaunchpadState
|
|
1380
1362
|
* If no launchpad state is provided the content is removed in all states.
|
|
1381
1363
|
* @since 1.30
|
|
1382
1364
|
* @private
|
|
1383
1365
|
*/
|
|
1384
|
-
Renderer.prototype.hideSubHeader = function (
|
|
1385
|
-
|
|
1386
|
-
this.oShellModel.removeSubHeader([aIds], bCurrentState, aStates);
|
|
1387
|
-
} else {
|
|
1388
|
-
this.oShellModel.removeSubHeader(aIds, bCurrentState, aStates);
|
|
1389
|
-
}
|
|
1366
|
+
Renderer.prototype.hideSubHeader = function (vIds, bCurrentState, vStates) {
|
|
1367
|
+
this._updateItemStates(vIds, bCurrentState, vStates, "subHeader.items", Operation.Remove);
|
|
1390
1368
|
};
|
|
1391
1369
|
|
|
1392
1370
|
/**
|
|
@@ -1489,12 +1467,12 @@ sap.ui.define([
|
|
|
1489
1467
|
}
|
|
1490
1468
|
if (controlType) {
|
|
1491
1469
|
var sControlResource = controlType.replace(/\./g, "/");
|
|
1492
|
-
sap.ui.require([sControlResource],
|
|
1493
|
-
function (ControlObject) {
|
|
1470
|
+
sap.ui.require([sControlResource], function (ControlObject) {
|
|
1494
1471
|
oControlInstance = new ControlObject(oControlProperties);
|
|
1472
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1473
|
+
|
|
1495
1474
|
if (bIsVisible) {
|
|
1496
1475
|
that.showSubHeader(oControlInstance.getId(), bCurrentState, aStates);
|
|
1497
|
-
that.oShellModel.addElementToManagedQueue(oControlInstance);
|
|
1498
1476
|
}
|
|
1499
1477
|
oDeferred.resolve(oControlInstance);
|
|
1500
1478
|
});
|
|
@@ -1535,7 +1513,7 @@ sap.ui.define([
|
|
|
1535
1513
|
* @param {boolean} bCurrentState If <code>true</code> then the new created control is added to the current rendered shell state.<br>
|
|
1536
1514
|
* When the user navigates to another application (including the Home page) then the control will be removed.<br>
|
|
1537
1515
|
* If <code>false</code> then add the control to the LaunchPadState itself.<br>
|
|
1538
|
-
* @param {string[]}
|
|
1516
|
+
* @param {string[]} vStates (Valid only if bCurrentState is <code>false</code>)<br>
|
|
1539
1517
|
* A list of shell states (i.e. sap.ushell.renderer.Renderer.LaunchpadState) in which the control is added.<br>
|
|
1540
1518
|
* If no launchpad state is provided the control is added in all states.
|
|
1541
1519
|
* @see LaunchpadState
|
|
@@ -1544,7 +1522,9 @@ sap.ui.define([
|
|
|
1544
1522
|
* @deprecated since 1.48. Please use {@link #addShellSubHeader} instead.
|
|
1545
1523
|
* @private
|
|
1546
1524
|
*/
|
|
1547
|
-
Renderer.prototype.addSubHeader = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1525
|
+
Renderer.prototype.addSubHeader = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1526
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1527
|
+
|
|
1548
1528
|
var sControlResource = controlType.replace(/\./g, "/");
|
|
1549
1529
|
// Try to require the control in case it is already loaded
|
|
1550
1530
|
var ControlObject = sap.ui.require(sControlResource);
|
|
@@ -1618,62 +1598,59 @@ sap.ui.define([
|
|
|
1618
1598
|
var oDeferred = new jQuery.Deferred();
|
|
1619
1599
|
var that = this;
|
|
1620
1600
|
var oControlInstance;
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1601
|
+
const {
|
|
1602
|
+
controlType,
|
|
1603
|
+
oControlProperties,
|
|
1604
|
+
bIsVisible,
|
|
1605
|
+
bCurrentState,
|
|
1606
|
+
aStates
|
|
1607
|
+
} = oParameters;
|
|
1627
1608
|
|
|
1628
|
-
// If a control instance is already created - get it by its id
|
|
1629
1609
|
if (oControlProperties) {
|
|
1610
|
+
// If a control instance is already created - get it by its id
|
|
1630
1611
|
oControlInstance = Element.getElementById(oControlProperties.id);
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
if (oControlInstance) {
|
|
1634
|
-
oDeferred.resolve(oControlInstance);
|
|
1635
|
-
}
|
|
1636
|
-
|
|
1637
|
-
if (controlType) {
|
|
1638
|
-
if (controlType === "sap.m.Button") {
|
|
1639
|
-
controlType = "sap.ushell.ui.launchpad.ActionItem";
|
|
1640
|
-
}
|
|
1641
|
-
var sControlResource = controlType.replace(/\./g, "/");
|
|
1642
|
-
sap.ui.require([sControlResource], function (ControlClass) {
|
|
1643
|
-
// change model
|
|
1644
|
-
var oOrigShellModel;
|
|
1645
|
-
|
|
1646
|
-
if (bCurrentState) {
|
|
1647
|
-
oOrigShellModel = AppLifeCycleAI.shellElements().getStateModelToUpdate();
|
|
1648
|
-
AppLifeCycleAI.shellElements().setStateModelToUpdate(oModelToUpdate);
|
|
1649
|
-
} else {
|
|
1650
|
-
oOrigShellModel = that.oShellModel.getModelToUpdate();
|
|
1651
|
-
that.oShellModel.setModelToUpdate(oModelToUpdate, true);
|
|
1652
|
-
}
|
|
1653
|
-
|
|
1654
|
-
oControlInstance = oControlInstance || new ControlClass(oControlProperties);
|
|
1612
|
+
if (oControlInstance) {
|
|
1613
|
+
oDeferred.resolve(oControlInstance);
|
|
1655
1614
|
|
|
1656
1615
|
if (!oControlInstance.getActionType) {
|
|
1657
|
-
|
|
1616
|
+
delete oControlProperties.id;
|
|
1617
|
+
oControlInstance = new ActionItem(oControlProperties);
|
|
1618
|
+
|
|
1619
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1658
1620
|
}
|
|
1659
1621
|
|
|
1660
1622
|
if (bIsVisible) {
|
|
1661
1623
|
that.showActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1662
1624
|
}
|
|
1663
1625
|
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
that.oShellModel.setModelToUpdate(oOrigShellModel, false);
|
|
1668
|
-
}
|
|
1626
|
+
return oDeferred.promise();
|
|
1627
|
+
}
|
|
1628
|
+
}
|
|
1669
1629
|
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
} else {
|
|
1673
|
-
var sNoControlTypeErrorMessage = "You must specify control type in order to create it";
|
|
1630
|
+
if (!controlType) {
|
|
1631
|
+
const sNoControlTypeErrorMessage = "You must specify control type in order to create it";
|
|
1674
1632
|
Log.warning(sNoControlTypeErrorMessage);
|
|
1675
1633
|
oDeferred.reject(sNoControlTypeErrorMessage);
|
|
1634
|
+
return oDeferred.promise();
|
|
1676
1635
|
}
|
|
1636
|
+
|
|
1637
|
+
const sControlType = controlType === "sap.m.Button" ? "sap.ushell.ui.launchpad.ActionItem" : controlType;
|
|
1638
|
+
var sControlResource = sControlType.replace(/\./g, "/");
|
|
1639
|
+
sap.ui.require([sControlResource], (ControlClass) => {
|
|
1640
|
+
oControlInstance = new ControlClass(oControlProperties);
|
|
1641
|
+
|
|
1642
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1643
|
+
|
|
1644
|
+
if (bIsVisible) {
|
|
1645
|
+
that.showActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1646
|
+
}
|
|
1647
|
+
|
|
1648
|
+
oDeferred.resolve(oControlInstance);
|
|
1649
|
+
}, function () {
|
|
1650
|
+
var sControlTypeErrorMessage = "The control type " + sControlType + " is not available.";
|
|
1651
|
+
Log.error(sControlTypeErrorMessage);
|
|
1652
|
+
oDeferred.reject(sControlTypeErrorMessage);
|
|
1653
|
+
});
|
|
1677
1654
|
return oDeferred.promise();
|
|
1678
1655
|
};
|
|
1679
1656
|
|
|
@@ -1698,7 +1675,7 @@ sap.ui.define([
|
|
|
1698
1675
|
* (you can use showActionButton to display the control when needed).
|
|
1699
1676
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
1700
1677
|
* Once the user navigates to another app or back to the home page, this control will be removed.
|
|
1701
|
-
* @param {string[]}
|
|
1678
|
+
* @param {string[]} vStates List of the launchpad states (sap.ushell.renderer.Renderer.LaunchpadState) in which to add the control.
|
|
1702
1679
|
* Valid only if bCurrentState is set to false.
|
|
1703
1680
|
* @see sap.ushell.renderer.Renderer.LaunchpadState
|
|
1704
1681
|
* If no launchpad state is provided, the content is added in all states.
|
|
@@ -1707,7 +1684,8 @@ sap.ui.define([
|
|
|
1707
1684
|
* @deprecated since 1.48. Please use {@link #addUserAction} instead.
|
|
1708
1685
|
* @private
|
|
1709
1686
|
*/
|
|
1710
|
-
Renderer.prototype.addActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1687
|
+
Renderer.prototype.addActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1688
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1711
1689
|
var bResourceLoadedAsObject = false;
|
|
1712
1690
|
|
|
1713
1691
|
if (controlType === "sap.m.Button") {
|
|
@@ -1795,7 +1773,6 @@ sap.ui.define([
|
|
|
1795
1773
|
if (oControlInstance) {
|
|
1796
1774
|
if (bIsVisible) {
|
|
1797
1775
|
that.showFloatingActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1798
|
-
that.oShellModel.addElementToManagedQueue(oControlInstance);
|
|
1799
1776
|
}
|
|
1800
1777
|
oDeferred.resolve(oControlInstance);
|
|
1801
1778
|
}
|
|
@@ -1807,9 +1784,11 @@ sap.ui.define([
|
|
|
1807
1784
|
sControlResource = "sap/m/Button";
|
|
1808
1785
|
}
|
|
1809
1786
|
|
|
1810
|
-
sap.ui.require([sControlResource],
|
|
1811
|
-
function (ControlObject) {
|
|
1787
|
+
sap.ui.require([sControlResource], function (ControlObject) {
|
|
1812
1788
|
oControlInstance = new ControlObject(oControlProperties);
|
|
1789
|
+
|
|
1790
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1791
|
+
|
|
1813
1792
|
if (bIsVisible) {
|
|
1814
1793
|
that.showFloatingActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1815
1794
|
}
|
|
@@ -1838,7 +1817,7 @@ sap.ui.define([
|
|
|
1838
1817
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
1839
1818
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
1840
1819
|
* Once the user navigates to another app or back to the Home page, this control will be removed.
|
|
1841
|
-
* @param {string[]}
|
|
1820
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to false) -
|
|
1842
1821
|
* list of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
1843
1822
|
* @see LaunchpadState
|
|
1844
1823
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -1847,7 +1826,8 @@ sap.ui.define([
|
|
|
1847
1826
|
* @deprecated since 1.48. Please use {@link #addFloatingButton} instead.
|
|
1848
1827
|
* @private
|
|
1849
1828
|
*/
|
|
1850
|
-
Renderer.prototype.addFloatingActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1829
|
+
Renderer.prototype.addFloatingActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1830
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1851
1831
|
var bResourceLoadedAsObject = false;
|
|
1852
1832
|
|
|
1853
1833
|
if (!controlType) {
|
|
@@ -1948,11 +1928,12 @@ sap.ui.define([
|
|
|
1948
1928
|
|
|
1949
1929
|
if (controlType) {
|
|
1950
1930
|
var sControlResource = controlType.replace(/\./g, "/");
|
|
1951
|
-
sap.ui.require([sControlResource],
|
|
1952
|
-
function (ControlObject) {
|
|
1931
|
+
sap.ui.require([sControlResource], function (ControlObject) {
|
|
1953
1932
|
oControlInstance = new ControlObject(oControlProperties);
|
|
1933
|
+
|
|
1934
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1935
|
+
|
|
1954
1936
|
if (bIsVisible) {
|
|
1955
|
-
that.oShellModel.addElementToManagedQueue(oControlInstance);
|
|
1956
1937
|
that.showLeftPaneContent(oControlInstance.getId(), bCurrentState, aStates);
|
|
1957
1938
|
}
|
|
1958
1939
|
oDeferred.resolve(oControlInstance);
|
|
@@ -1982,7 +1963,7 @@ sap.ui.define([
|
|
|
1982
1963
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
1983
1964
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
1984
1965
|
* Once the user navigates to another app or back to the Home page, this control will be removed.
|
|
1985
|
-
* @param {string[]}
|
|
1966
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to false) -
|
|
1986
1967
|
* list of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
1987
1968
|
* @see LaunchpadState
|
|
1988
1969
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -1991,7 +1972,8 @@ sap.ui.define([
|
|
|
1991
1972
|
* @deprecated since 1.48. Please use {@link #addSidePaneContent} instead.
|
|
1992
1973
|
* @private
|
|
1993
1974
|
*/
|
|
1994
|
-
Renderer.prototype.addLeftPaneContent = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1975
|
+
Renderer.prototype.addLeftPaneContent = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1976
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1995
1977
|
var sControlResource = controlType.replace(/\./g, "/");
|
|
1996
1978
|
// Try to require the control in case it is already loaded
|
|
1997
1979
|
var ControlObject = sap.ui.require(sControlResource);
|
|
@@ -2057,7 +2039,7 @@ sap.ui.define([
|
|
|
2057
2039
|
* @param {boolean} bCurrentState If <code>true</code> then the new created control is added to the current rendered shell state.<br>
|
|
2058
2040
|
* When the user navigates to a different state including a different application then the control will be removed.<br>
|
|
2059
2041
|
* If <code>false</code> then add the control to the LaunchPadState itself.<br>
|
|
2060
|
-
* @param {string[]}
|
|
2042
|
+
* @param {string[]} vStates (Valid only if bCurrentState is <code>false</code>)<br>
|
|
2061
2043
|
* A list of shell states (i.e. sap.ushell.renderer.Renderer.LaunchpadState) in which the control is added.<br>
|
|
2062
2044
|
* If no launchpad state is provided the control is added in all states.
|
|
2063
2045
|
* @see LaunchpadState
|
|
@@ -2065,18 +2047,20 @@ sap.ui.define([
|
|
|
2065
2047
|
* @since 1.30
|
|
2066
2048
|
* @private
|
|
2067
2049
|
*/
|
|
2068
|
-
Renderer.prototype.addHeaderItem = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
2050
|
+
Renderer.prototype.addHeaderItem = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2069
2051
|
// in order to support deprecation of the never used argument: 'controlType' , we'll need to check whether it was passed to
|
|
2070
2052
|
// the function by checking the types of the first two arguments
|
|
2071
2053
|
if (typeof (arguments[0]) === "object" && typeof (arguments[1]) === "boolean") {
|
|
2072
2054
|
oControlProperties = arguments[0];
|
|
2073
2055
|
bIsVisible = arguments[1];
|
|
2074
2056
|
bCurrentState = arguments[2];
|
|
2075
|
-
|
|
2057
|
+
vStates = arguments[3];
|
|
2076
2058
|
} else {
|
|
2077
2059
|
Log.error("sap.ushell.renderer.Renderer: The parameter 'controlType' of the function 'addHeaderItem' is deprecated. Usage will be ignored!");
|
|
2078
2060
|
}
|
|
2079
2061
|
|
|
2062
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2063
|
+
|
|
2080
2064
|
var oItem = this.createItem(oControlProperties, bCurrentState, function (oProperties) {
|
|
2081
2065
|
return new ShellHeadItem(oProperties);
|
|
2082
2066
|
});
|
|
@@ -2111,7 +2095,7 @@ sap.ui.define([
|
|
|
2111
2095
|
* @see sap.ushell.ui.shell.RightFloatingContainerItem
|
|
2112
2096
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
2113
2097
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
2114
|
-
* @param {string[]}
|
|
2098
|
+
* @param {string[]} vStates List of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
2115
2099
|
* Only valid if bCurrentState is set to false.
|
|
2116
2100
|
* @see LaunchpadState
|
|
2117
2101
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -2119,7 +2103,8 @@ sap.ui.define([
|
|
|
2119
2103
|
* @since 1.30
|
|
2120
2104
|
* @private
|
|
2121
2105
|
*/
|
|
2122
|
-
Renderer.prototype.addRightFloatingContainerItem = function (oControlProperties, bIsVisible, bCurrentState,
|
|
2106
|
+
Renderer.prototype.addRightFloatingContainerItem = function (oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2107
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2123
2108
|
var oItem = this.createItem(oControlProperties, bCurrentState, function (oProperties) {
|
|
2124
2109
|
return new NotificationListItem(oProperties);
|
|
2125
2110
|
});
|
|
@@ -2158,7 +2143,7 @@ sap.ui.define([
|
|
|
2158
2143
|
* @param {boolean} bCurrentState If <code>true</code>, add the item to the currently rendered shell.
|
|
2159
2144
|
* If <code>false</code>, add the item to the given LaunchPadStates
|
|
2160
2145
|
* This causes the items to be rendered every time the given states are active.
|
|
2161
|
-
* @param {string[]}
|
|
2146
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to <code>false</code>) -
|
|
2162
2147
|
* An array of shell states (i.e. sap.ushell.renderer.Renderer.LaunchpadState) in which the controls are added.
|
|
2163
2148
|
* If no launchpad state is provided the items are added in all states.
|
|
2164
2149
|
* @see sap.ushell.renderer.Renderer.LaunchpadState.
|
|
@@ -2166,7 +2151,8 @@ sap.ui.define([
|
|
|
2166
2151
|
* @since 1.30
|
|
2167
2152
|
* @private
|
|
2168
2153
|
*/
|
|
2169
|
-
Renderer.prototype.addToolAreaItem = function (oControlProperties, bIsVisible, bCurrentState,
|
|
2154
|
+
Renderer.prototype.addToolAreaItem = function (oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2155
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2170
2156
|
if (bIsVisible !== null) { // ExtensionService case: do not overwrite control properties;
|
|
2171
2157
|
oControlProperties.visible = !!bIsVisible;
|
|
2172
2158
|
}
|
|
@@ -2176,7 +2162,19 @@ sap.ui.define([
|
|
|
2176
2162
|
};
|
|
2177
2163
|
var oItem = this.createItem(oControlProperties, bCurrentState, fnCreate);
|
|
2178
2164
|
|
|
2179
|
-
|
|
2165
|
+
if (bIsVisible) {
|
|
2166
|
+
this.showToolAreaItem([oItem.getId()], bCurrentState, aStates);
|
|
2167
|
+
|
|
2168
|
+
// turn on tool area visibility
|
|
2169
|
+
if (bCurrentState) {
|
|
2170
|
+
const sCurrentLaunchpadState = StateManager.getLaunchpadState();
|
|
2171
|
+
this.showToolArea(sCurrentLaunchpadState, true);
|
|
2172
|
+
} else {
|
|
2173
|
+
aStates.forEach((sLaunchpadState) => {
|
|
2174
|
+
this.showToolArea(sLaunchpadState, true);
|
|
2175
|
+
});
|
|
2176
|
+
}
|
|
2177
|
+
}
|
|
2180
2178
|
|
|
2181
2179
|
return oItem;
|
|
2182
2180
|
};
|
|
@@ -2230,7 +2228,7 @@ sap.ui.define([
|
|
|
2230
2228
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
2231
2229
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
2232
2230
|
* Once the user navigates to another app or back to the Home page, this control will be removed.
|
|
2233
|
-
* @param {string[]}
|
|
2231
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to false) -
|
|
2234
2232
|
* list of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
2235
2233
|
* @see LaunchpadState
|
|
2236
2234
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -2238,15 +2236,17 @@ sap.ui.define([
|
|
|
2238
2236
|
* @since 1.30
|
|
2239
2237
|
* @private
|
|
2240
2238
|
*/
|
|
2241
|
-
Renderer.prototype.addHeaderEndItem = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
2239
|
+
Renderer.prototype.addHeaderEndItem = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2242
2240
|
// in order to support deprecation of the never used argument: 'controlType' , we'll need to check whether it was passed to
|
|
2243
2241
|
// the function by checking the types of the first two arguments
|
|
2244
2242
|
if (typeof (arguments[0]) === "object" && typeof (arguments[1]) === "boolean") {
|
|
2245
2243
|
oControlProperties = arguments[0];
|
|
2246
2244
|
bIsVisible = arguments[1];
|
|
2247
2245
|
bCurrentState = arguments[2];
|
|
2248
|
-
|
|
2246
|
+
vStates = arguments[3];
|
|
2249
2247
|
}
|
|
2248
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2249
|
+
|
|
2250
2250
|
var oItem = this.createItem(oControlProperties, bCurrentState, function (oProperties) {
|
|
2251
2251
|
return new ShellHeadItem(oProperties);
|
|
2252
2252
|
});
|
|
@@ -2404,7 +2404,10 @@ sap.ui.define([
|
|
|
2404
2404
|
* @private
|
|
2405
2405
|
*/
|
|
2406
2406
|
Renderer.prototype.setLeftPaneVisibility = function (sLaunchpadState, bVisible) {
|
|
2407
|
-
|
|
2407
|
+
if (!sLaunchpadState) {
|
|
2408
|
+
sLaunchpadState = this.LaunchpadState.Home;
|
|
2409
|
+
}
|
|
2410
|
+
StateManager.updateBaseStates([sLaunchpadState], "sidePane.visible", Operation.Set, bVisible);
|
|
2408
2411
|
};
|
|
2409
2412
|
|
|
2410
2413
|
/**
|
|
@@ -2416,11 +2419,19 @@ sap.ui.define([
|
|
|
2416
2419
|
* @private
|
|
2417
2420
|
*/
|
|
2418
2421
|
Renderer.prototype.showToolArea = function (sLaunchpadState, bVisible) {
|
|
2419
|
-
|
|
2422
|
+
if (!sLaunchpadState) {
|
|
2423
|
+
sLaunchpadState = this.LaunchpadState.Home;
|
|
2424
|
+
}
|
|
2425
|
+
StateManager.updateBaseStates([sLaunchpadState], "toolArea.visible", Operation.Set, bVisible);
|
|
2420
2426
|
};
|
|
2421
2427
|
|
|
2428
|
+
/**
|
|
2429
|
+
* Hides the header
|
|
2430
|
+
* @param {boolean} bHiding Whether to hide the header
|
|
2431
|
+
* @deprecated since 1.120. Functionality was discontinued.
|
|
2432
|
+
*/
|
|
2422
2433
|
Renderer.prototype.setHeaderHiding = function (bHiding) {
|
|
2423
|
-
|
|
2434
|
+
Log.error("sap.ushell.Renderer.setHeaderHiding: Functionality was discontinued.");
|
|
2424
2435
|
};
|
|
2425
2436
|
|
|
2426
2437
|
/**
|
|
@@ -2451,7 +2462,7 @@ sap.ui.define([
|
|
|
2451
2462
|
* @private
|
|
2452
2463
|
*/
|
|
2453
2464
|
Renderer.prototype.setFloatingContainerContent = function (oControl, bCurrentState, aStates) {
|
|
2454
|
-
this.
|
|
2465
|
+
this._updateItemStates([oControl.getId()], bCurrentState, aStates, "floatingContainer.items", Operation.Add);
|
|
2455
2466
|
};
|
|
2456
2467
|
|
|
2457
2468
|
/**
|
|
@@ -2524,13 +2535,15 @@ sap.ui.define([
|
|
|
2524
2535
|
|
|
2525
2536
|
/*---------------Conditional----------------*/
|
|
2526
2537
|
|
|
2527
|
-
Renderer.prototype.createTriggers = function (aTriggers, bCurrentState,
|
|
2528
|
-
|
|
2538
|
+
Renderer.prototype.createTriggers = function (aTriggers, bCurrentState, vStates) {
|
|
2539
|
+
Log.error("'createTriggers' was discontinued.");
|
|
2529
2540
|
};
|
|
2530
2541
|
|
|
2531
2542
|
/*---------------Generic--------------------*/
|
|
2532
2543
|
|
|
2533
|
-
Renderer.prototype.convertButtonsToActions = function (aIds, bCurrentState,
|
|
2544
|
+
Renderer.prototype.convertButtonsToActions = function (aIds, bCurrentState, vStates) {
|
|
2545
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2546
|
+
|
|
2534
2547
|
var oProperties = {};
|
|
2535
2548
|
var that = this;
|
|
2536
2549
|
aIds.forEach(function (sId) {
|
|
@@ -2551,40 +2564,42 @@ sap.ui.define([
|
|
|
2551
2564
|
|
|
2552
2565
|
Renderer.prototype.createItem = function (oControlProperties, bCurrentState, fnCreateItem) {
|
|
2553
2566
|
// create the object
|
|
2554
|
-
var
|
|
2567
|
+
var oControl;
|
|
2555
2568
|
if (oControlProperties && oControlProperties.id) {
|
|
2556
|
-
|
|
2569
|
+
oControl = Element.getElementById(oControlProperties.id);
|
|
2557
2570
|
}
|
|
2558
|
-
if (!
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
this.oShellModel.addElementToManagedQueue(oItem);
|
|
2562
|
-
}
|
|
2571
|
+
if (!oControl) {
|
|
2572
|
+
oControl = fnCreateItem(oControlProperties);
|
|
2573
|
+
StateManager.addManagedControl(oControl.getId(), !bCurrentState);
|
|
2563
2574
|
}
|
|
2564
2575
|
|
|
2565
|
-
return
|
|
2576
|
+
return oControl;
|
|
2566
2577
|
};
|
|
2567
2578
|
|
|
2568
2579
|
/*------------Custom State Entry------------------------------*/
|
|
2569
2580
|
|
|
2581
|
+
/**
|
|
2582
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
2583
|
+
* @private
|
|
2584
|
+
*/
|
|
2570
2585
|
Renderer.prototype.addEntryInShellStates = function (sName, entrySuffix, fnAdd, fnRemove, oStateConfiguration) {
|
|
2571
|
-
|
|
2586
|
+
Log.error("'addEntryInShellStates' was deprecated and discontinued.");
|
|
2572
2587
|
};
|
|
2573
2588
|
|
|
2574
|
-
|
|
2575
|
-
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
|
|
2579
|
-
|
|
2589
|
+
/**
|
|
2590
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
2591
|
+
* @private
|
|
2592
|
+
*/
|
|
2593
|
+
Renderer.prototype.removeCustomItems = function (sStateEntry, vIds, bCurrentState, vStates) {
|
|
2594
|
+
Log.error("'removeCustomItems' was deprecated and discontinued.");
|
|
2580
2595
|
};
|
|
2581
2596
|
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2597
|
+
/**
|
|
2598
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
2599
|
+
* @private
|
|
2600
|
+
*/
|
|
2601
|
+
Renderer.prototype.addCustomItems = function (sStateEntry, vIds, bCurrentState, vStates) {
|
|
2602
|
+
Log.error("'addCustomItems' was deprecated and discontinued.");
|
|
2588
2603
|
};
|
|
2589
2604
|
|
|
2590
2605
|
/**
|
|
@@ -2753,11 +2768,12 @@ sap.ui.define([
|
|
|
2753
2768
|
* @private
|
|
2754
2769
|
* @since 1.108.0
|
|
2755
2770
|
*/
|
|
2756
|
-
Renderer.prototype.destroyButton = function (
|
|
2757
|
-
if (!
|
|
2771
|
+
Renderer.prototype.destroyButton = function (vIds) {
|
|
2772
|
+
if (!vIds) {
|
|
2758
2773
|
return;
|
|
2759
2774
|
}
|
|
2760
|
-
aIds =
|
|
2775
|
+
const aIds = Array.isArray(vIds) ? vIds : [vIds];
|
|
2776
|
+
|
|
2761
2777
|
aIds.forEach(function (sId) {
|
|
2762
2778
|
var oButton = Element.getElementById(sId);
|
|
2763
2779
|
if (oButton) {
|