@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.
- 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/_ApplicationType/urlTemplateResolution.js +10 -3
- 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 +304 -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/URLParsing.js +16 -0
- 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/UrlParsing.js +22 -0
- 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.1",
|
|
85
104
|
dependencies: {
|
|
86
|
-
version: "1.
|
|
105
|
+
version: "1.127.1",
|
|
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,60 @@ 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
|
+
const oShallowCopy = { ...oControlProperties };
|
|
1617
|
+
delete oShallowCopy.id;
|
|
1618
|
+
oControlInstance = new ActionItem(oShallowCopy);
|
|
1619
|
+
|
|
1620
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1658
1621
|
}
|
|
1659
1622
|
|
|
1660
1623
|
if (bIsVisible) {
|
|
1661
1624
|
that.showActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1662
1625
|
}
|
|
1663
1626
|
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
that.oShellModel.setModelToUpdate(oOrigShellModel, false);
|
|
1668
|
-
}
|
|
1627
|
+
return oDeferred.promise();
|
|
1628
|
+
}
|
|
1629
|
+
}
|
|
1669
1630
|
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
} else {
|
|
1673
|
-
var sNoControlTypeErrorMessage = "You must specify control type in order to create it";
|
|
1631
|
+
if (!controlType) {
|
|
1632
|
+
const sNoControlTypeErrorMessage = "You must specify control type in order to create it";
|
|
1674
1633
|
Log.warning(sNoControlTypeErrorMessage);
|
|
1675
1634
|
oDeferred.reject(sNoControlTypeErrorMessage);
|
|
1635
|
+
return oDeferred.promise();
|
|
1676
1636
|
}
|
|
1637
|
+
|
|
1638
|
+
const sControlType = controlType === "sap.m.Button" ? "sap.ushell.ui.launchpad.ActionItem" : controlType;
|
|
1639
|
+
var sControlResource = sControlType.replace(/\./g, "/");
|
|
1640
|
+
sap.ui.require([sControlResource], (ControlClass) => {
|
|
1641
|
+
oControlInstance = new ControlClass(oControlProperties);
|
|
1642
|
+
|
|
1643
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1644
|
+
|
|
1645
|
+
if (bIsVisible) {
|
|
1646
|
+
that.showActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1647
|
+
}
|
|
1648
|
+
|
|
1649
|
+
oDeferred.resolve(oControlInstance);
|
|
1650
|
+
}, function () {
|
|
1651
|
+
var sControlTypeErrorMessage = "The control type " + sControlType + " is not available.";
|
|
1652
|
+
Log.error(sControlTypeErrorMessage);
|
|
1653
|
+
oDeferred.reject(sControlTypeErrorMessage);
|
|
1654
|
+
});
|
|
1677
1655
|
return oDeferred.promise();
|
|
1678
1656
|
};
|
|
1679
1657
|
|
|
@@ -1698,7 +1676,7 @@ sap.ui.define([
|
|
|
1698
1676
|
* (you can use showActionButton to display the control when needed).
|
|
1699
1677
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
1700
1678
|
* Once the user navigates to another app or back to the home page, this control will be removed.
|
|
1701
|
-
* @param {string[]}
|
|
1679
|
+
* @param {string[]} vStates List of the launchpad states (sap.ushell.renderer.Renderer.LaunchpadState) in which to add the control.
|
|
1702
1680
|
* Valid only if bCurrentState is set to false.
|
|
1703
1681
|
* @see sap.ushell.renderer.Renderer.LaunchpadState
|
|
1704
1682
|
* If no launchpad state is provided, the content is added in all states.
|
|
@@ -1707,7 +1685,8 @@ sap.ui.define([
|
|
|
1707
1685
|
* @deprecated since 1.48. Please use {@link #addUserAction} instead.
|
|
1708
1686
|
* @private
|
|
1709
1687
|
*/
|
|
1710
|
-
Renderer.prototype.addActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1688
|
+
Renderer.prototype.addActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1689
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1711
1690
|
var bResourceLoadedAsObject = false;
|
|
1712
1691
|
|
|
1713
1692
|
if (controlType === "sap.m.Button") {
|
|
@@ -1795,7 +1774,6 @@ sap.ui.define([
|
|
|
1795
1774
|
if (oControlInstance) {
|
|
1796
1775
|
if (bIsVisible) {
|
|
1797
1776
|
that.showFloatingActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1798
|
-
that.oShellModel.addElementToManagedQueue(oControlInstance);
|
|
1799
1777
|
}
|
|
1800
1778
|
oDeferred.resolve(oControlInstance);
|
|
1801
1779
|
}
|
|
@@ -1807,9 +1785,11 @@ sap.ui.define([
|
|
|
1807
1785
|
sControlResource = "sap/m/Button";
|
|
1808
1786
|
}
|
|
1809
1787
|
|
|
1810
|
-
sap.ui.require([sControlResource],
|
|
1811
|
-
function (ControlObject) {
|
|
1788
|
+
sap.ui.require([sControlResource], function (ControlObject) {
|
|
1812
1789
|
oControlInstance = new ControlObject(oControlProperties);
|
|
1790
|
+
|
|
1791
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1792
|
+
|
|
1813
1793
|
if (bIsVisible) {
|
|
1814
1794
|
that.showFloatingActionButton(oControlInstance.getId(), bCurrentState, aStates);
|
|
1815
1795
|
}
|
|
@@ -1838,7 +1818,7 @@ sap.ui.define([
|
|
|
1838
1818
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
1839
1819
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
1840
1820
|
* Once the user navigates to another app or back to the Home page, this control will be removed.
|
|
1841
|
-
* @param {string[]}
|
|
1821
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to false) -
|
|
1842
1822
|
* list of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
1843
1823
|
* @see LaunchpadState
|
|
1844
1824
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -1847,7 +1827,8 @@ sap.ui.define([
|
|
|
1847
1827
|
* @deprecated since 1.48. Please use {@link #addFloatingButton} instead.
|
|
1848
1828
|
* @private
|
|
1849
1829
|
*/
|
|
1850
|
-
Renderer.prototype.addFloatingActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1830
|
+
Renderer.prototype.addFloatingActionButton = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1831
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1851
1832
|
var bResourceLoadedAsObject = false;
|
|
1852
1833
|
|
|
1853
1834
|
if (!controlType) {
|
|
@@ -1948,11 +1929,12 @@ sap.ui.define([
|
|
|
1948
1929
|
|
|
1949
1930
|
if (controlType) {
|
|
1950
1931
|
var sControlResource = controlType.replace(/\./g, "/");
|
|
1951
|
-
sap.ui.require([sControlResource],
|
|
1952
|
-
function (ControlObject) {
|
|
1932
|
+
sap.ui.require([sControlResource], function (ControlObject) {
|
|
1953
1933
|
oControlInstance = new ControlObject(oControlProperties);
|
|
1934
|
+
|
|
1935
|
+
StateManager.addManagedControl(oControlInstance.getId(), !bCurrentState);
|
|
1936
|
+
|
|
1954
1937
|
if (bIsVisible) {
|
|
1955
|
-
that.oShellModel.addElementToManagedQueue(oControlInstance);
|
|
1956
1938
|
that.showLeftPaneContent(oControlInstance.getId(), bCurrentState, aStates);
|
|
1957
1939
|
}
|
|
1958
1940
|
oDeferred.resolve(oControlInstance);
|
|
@@ -1982,7 +1964,7 @@ sap.ui.define([
|
|
|
1982
1964
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
1983
1965
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
1984
1966
|
* Once the user navigates to another app or back to the Home page, this control will be removed.
|
|
1985
|
-
* @param {string[]}
|
|
1967
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to false) -
|
|
1986
1968
|
* list of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
1987
1969
|
* @see LaunchpadState
|
|
1988
1970
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -1991,7 +1973,8 @@ sap.ui.define([
|
|
|
1991
1973
|
* @deprecated since 1.48. Please use {@link #addSidePaneContent} instead.
|
|
1992
1974
|
* @private
|
|
1993
1975
|
*/
|
|
1994
|
-
Renderer.prototype.addLeftPaneContent = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
1976
|
+
Renderer.prototype.addLeftPaneContent = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
1977
|
+
const aStates = this._sanitizeStates(vStates);
|
|
1995
1978
|
var sControlResource = controlType.replace(/\./g, "/");
|
|
1996
1979
|
// Try to require the control in case it is already loaded
|
|
1997
1980
|
var ControlObject = sap.ui.require(sControlResource);
|
|
@@ -2057,7 +2040,7 @@ sap.ui.define([
|
|
|
2057
2040
|
* @param {boolean} bCurrentState If <code>true</code> then the new created control is added to the current rendered shell state.<br>
|
|
2058
2041
|
* When the user navigates to a different state including a different application then the control will be removed.<br>
|
|
2059
2042
|
* If <code>false</code> then add the control to the LaunchPadState itself.<br>
|
|
2060
|
-
* @param {string[]}
|
|
2043
|
+
* @param {string[]} vStates (Valid only if bCurrentState is <code>false</code>)<br>
|
|
2061
2044
|
* A list of shell states (i.e. sap.ushell.renderer.Renderer.LaunchpadState) in which the control is added.<br>
|
|
2062
2045
|
* If no launchpad state is provided the control is added in all states.
|
|
2063
2046
|
* @see LaunchpadState
|
|
@@ -2065,18 +2048,20 @@ sap.ui.define([
|
|
|
2065
2048
|
* @since 1.30
|
|
2066
2049
|
* @private
|
|
2067
2050
|
*/
|
|
2068
|
-
Renderer.prototype.addHeaderItem = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
2051
|
+
Renderer.prototype.addHeaderItem = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2069
2052
|
// in order to support deprecation of the never used argument: 'controlType' , we'll need to check whether it was passed to
|
|
2070
2053
|
// the function by checking the types of the first two arguments
|
|
2071
2054
|
if (typeof (arguments[0]) === "object" && typeof (arguments[1]) === "boolean") {
|
|
2072
2055
|
oControlProperties = arguments[0];
|
|
2073
2056
|
bIsVisible = arguments[1];
|
|
2074
2057
|
bCurrentState = arguments[2];
|
|
2075
|
-
|
|
2058
|
+
vStates = arguments[3];
|
|
2076
2059
|
} else {
|
|
2077
2060
|
Log.error("sap.ushell.renderer.Renderer: The parameter 'controlType' of the function 'addHeaderItem' is deprecated. Usage will be ignored!");
|
|
2078
2061
|
}
|
|
2079
2062
|
|
|
2063
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2064
|
+
|
|
2080
2065
|
var oItem = this.createItem(oControlProperties, bCurrentState, function (oProperties) {
|
|
2081
2066
|
return new ShellHeadItem(oProperties);
|
|
2082
2067
|
});
|
|
@@ -2111,7 +2096,7 @@ sap.ui.define([
|
|
|
2111
2096
|
* @see sap.ushell.ui.shell.RightFloatingContainerItem
|
|
2112
2097
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
2113
2098
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
2114
|
-
* @param {string[]}
|
|
2099
|
+
* @param {string[]} vStates List of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
2115
2100
|
* Only valid if bCurrentState is set to false.
|
|
2116
2101
|
* @see LaunchpadState
|
|
2117
2102
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -2119,7 +2104,8 @@ sap.ui.define([
|
|
|
2119
2104
|
* @since 1.30
|
|
2120
2105
|
* @private
|
|
2121
2106
|
*/
|
|
2122
|
-
Renderer.prototype.addRightFloatingContainerItem = function (oControlProperties, bIsVisible, bCurrentState,
|
|
2107
|
+
Renderer.prototype.addRightFloatingContainerItem = function (oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2108
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2123
2109
|
var oItem = this.createItem(oControlProperties, bCurrentState, function (oProperties) {
|
|
2124
2110
|
return new NotificationListItem(oProperties);
|
|
2125
2111
|
});
|
|
@@ -2158,7 +2144,7 @@ sap.ui.define([
|
|
|
2158
2144
|
* @param {boolean} bCurrentState If <code>true</code>, add the item to the currently rendered shell.
|
|
2159
2145
|
* If <code>false</code>, add the item to the given LaunchPadStates
|
|
2160
2146
|
* This causes the items to be rendered every time the given states are active.
|
|
2161
|
-
* @param {string[]}
|
|
2147
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to <code>false</code>) -
|
|
2162
2148
|
* An array of shell states (i.e. sap.ushell.renderer.Renderer.LaunchpadState) in which the controls are added.
|
|
2163
2149
|
* If no launchpad state is provided the items are added in all states.
|
|
2164
2150
|
* @see sap.ushell.renderer.Renderer.LaunchpadState.
|
|
@@ -2166,7 +2152,8 @@ sap.ui.define([
|
|
|
2166
2152
|
* @since 1.30
|
|
2167
2153
|
* @private
|
|
2168
2154
|
*/
|
|
2169
|
-
Renderer.prototype.addToolAreaItem = function (oControlProperties, bIsVisible, bCurrentState,
|
|
2155
|
+
Renderer.prototype.addToolAreaItem = function (oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2156
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2170
2157
|
if (bIsVisible !== null) { // ExtensionService case: do not overwrite control properties;
|
|
2171
2158
|
oControlProperties.visible = !!bIsVisible;
|
|
2172
2159
|
}
|
|
@@ -2176,7 +2163,19 @@ sap.ui.define([
|
|
|
2176
2163
|
};
|
|
2177
2164
|
var oItem = this.createItem(oControlProperties, bCurrentState, fnCreate);
|
|
2178
2165
|
|
|
2179
|
-
|
|
2166
|
+
if (bIsVisible) {
|
|
2167
|
+
this.showToolAreaItem([oItem.getId()], bCurrentState, aStates);
|
|
2168
|
+
|
|
2169
|
+
// turn on tool area visibility
|
|
2170
|
+
if (bCurrentState) {
|
|
2171
|
+
const sCurrentLaunchpadState = StateManager.getLaunchpadState();
|
|
2172
|
+
this.showToolArea(sCurrentLaunchpadState, true);
|
|
2173
|
+
} else {
|
|
2174
|
+
aStates.forEach((sLaunchpadState) => {
|
|
2175
|
+
this.showToolArea(sLaunchpadState, true);
|
|
2176
|
+
});
|
|
2177
|
+
}
|
|
2178
|
+
}
|
|
2180
2179
|
|
|
2181
2180
|
return oItem;
|
|
2182
2181
|
};
|
|
@@ -2230,7 +2229,7 @@ sap.ui.define([
|
|
|
2230
2229
|
* @param {boolean} bIsVisible Specify whether to display the control.
|
|
2231
2230
|
* @param {boolean} bCurrentState If true, add the current control only to the current rendered shell state.
|
|
2232
2231
|
* Once the user navigates to another app or back to the Home page, this control will be removed.
|
|
2233
|
-
* @param {string[]}
|
|
2232
|
+
* @param {string[]} vStates (only valid if bCurrentState is set to false) -
|
|
2234
2233
|
* list of the sap.ushell.renderer.Renderer.LaunchpadState in which to add the control.
|
|
2235
2234
|
* @see LaunchpadState
|
|
2236
2235
|
* If no launchpad state is provided the content is added in all states.
|
|
@@ -2238,15 +2237,17 @@ sap.ui.define([
|
|
|
2238
2237
|
* @since 1.30
|
|
2239
2238
|
* @private
|
|
2240
2239
|
*/
|
|
2241
|
-
Renderer.prototype.addHeaderEndItem = function (controlType, oControlProperties, bIsVisible, bCurrentState,
|
|
2240
|
+
Renderer.prototype.addHeaderEndItem = function (controlType, oControlProperties, bIsVisible, bCurrentState, vStates) {
|
|
2242
2241
|
// in order to support deprecation of the never used argument: 'controlType' , we'll need to check whether it was passed to
|
|
2243
2242
|
// the function by checking the types of the first two arguments
|
|
2244
2243
|
if (typeof (arguments[0]) === "object" && typeof (arguments[1]) === "boolean") {
|
|
2245
2244
|
oControlProperties = arguments[0];
|
|
2246
2245
|
bIsVisible = arguments[1];
|
|
2247
2246
|
bCurrentState = arguments[2];
|
|
2248
|
-
|
|
2247
|
+
vStates = arguments[3];
|
|
2249
2248
|
}
|
|
2249
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2250
|
+
|
|
2250
2251
|
var oItem = this.createItem(oControlProperties, bCurrentState, function (oProperties) {
|
|
2251
2252
|
return new ShellHeadItem(oProperties);
|
|
2252
2253
|
});
|
|
@@ -2404,7 +2405,10 @@ sap.ui.define([
|
|
|
2404
2405
|
* @private
|
|
2405
2406
|
*/
|
|
2406
2407
|
Renderer.prototype.setLeftPaneVisibility = function (sLaunchpadState, bVisible) {
|
|
2407
|
-
|
|
2408
|
+
if (!sLaunchpadState) {
|
|
2409
|
+
sLaunchpadState = this.LaunchpadState.Home;
|
|
2410
|
+
}
|
|
2411
|
+
StateManager.updateBaseStates([sLaunchpadState], "sidePane.visible", Operation.Set, bVisible);
|
|
2408
2412
|
};
|
|
2409
2413
|
|
|
2410
2414
|
/**
|
|
@@ -2416,11 +2420,19 @@ sap.ui.define([
|
|
|
2416
2420
|
* @private
|
|
2417
2421
|
*/
|
|
2418
2422
|
Renderer.prototype.showToolArea = function (sLaunchpadState, bVisible) {
|
|
2419
|
-
|
|
2423
|
+
if (!sLaunchpadState) {
|
|
2424
|
+
sLaunchpadState = this.LaunchpadState.Home;
|
|
2425
|
+
}
|
|
2426
|
+
StateManager.updateBaseStates([sLaunchpadState], "toolArea.visible", Operation.Set, bVisible);
|
|
2420
2427
|
};
|
|
2421
2428
|
|
|
2429
|
+
/**
|
|
2430
|
+
* Hides the header
|
|
2431
|
+
* @param {boolean} bHiding Whether to hide the header
|
|
2432
|
+
* @deprecated since 1.120. Functionality was discontinued.
|
|
2433
|
+
*/
|
|
2422
2434
|
Renderer.prototype.setHeaderHiding = function (bHiding) {
|
|
2423
|
-
|
|
2435
|
+
Log.error("sap.ushell.Renderer.setHeaderHiding: Functionality was discontinued.");
|
|
2424
2436
|
};
|
|
2425
2437
|
|
|
2426
2438
|
/**
|
|
@@ -2451,7 +2463,7 @@ sap.ui.define([
|
|
|
2451
2463
|
* @private
|
|
2452
2464
|
*/
|
|
2453
2465
|
Renderer.prototype.setFloatingContainerContent = function (oControl, bCurrentState, aStates) {
|
|
2454
|
-
this.
|
|
2466
|
+
this._updateItemStates([oControl.getId()], bCurrentState, aStates, "floatingContainer.items", Operation.Add);
|
|
2455
2467
|
};
|
|
2456
2468
|
|
|
2457
2469
|
/**
|
|
@@ -2524,13 +2536,15 @@ sap.ui.define([
|
|
|
2524
2536
|
|
|
2525
2537
|
/*---------------Conditional----------------*/
|
|
2526
2538
|
|
|
2527
|
-
Renderer.prototype.createTriggers = function (aTriggers, bCurrentState,
|
|
2528
|
-
|
|
2539
|
+
Renderer.prototype.createTriggers = function (aTriggers, bCurrentState, vStates) {
|
|
2540
|
+
Log.error("'createTriggers' was discontinued.");
|
|
2529
2541
|
};
|
|
2530
2542
|
|
|
2531
2543
|
/*---------------Generic--------------------*/
|
|
2532
2544
|
|
|
2533
|
-
Renderer.prototype.convertButtonsToActions = function (aIds, bCurrentState,
|
|
2545
|
+
Renderer.prototype.convertButtonsToActions = function (aIds, bCurrentState, vStates) {
|
|
2546
|
+
const aStates = this._sanitizeStates(vStates);
|
|
2547
|
+
|
|
2534
2548
|
var oProperties = {};
|
|
2535
2549
|
var that = this;
|
|
2536
2550
|
aIds.forEach(function (sId) {
|
|
@@ -2551,40 +2565,42 @@ sap.ui.define([
|
|
|
2551
2565
|
|
|
2552
2566
|
Renderer.prototype.createItem = function (oControlProperties, bCurrentState, fnCreateItem) {
|
|
2553
2567
|
// create the object
|
|
2554
|
-
var
|
|
2568
|
+
var oControl;
|
|
2555
2569
|
if (oControlProperties && oControlProperties.id) {
|
|
2556
|
-
|
|
2570
|
+
oControl = Element.getElementById(oControlProperties.id);
|
|
2557
2571
|
}
|
|
2558
|
-
if (!
|
|
2559
|
-
|
|
2560
|
-
|
|
2561
|
-
this.oShellModel.addElementToManagedQueue(oItem);
|
|
2562
|
-
}
|
|
2572
|
+
if (!oControl) {
|
|
2573
|
+
oControl = fnCreateItem(oControlProperties);
|
|
2574
|
+
StateManager.addManagedControl(oControl.getId(), !bCurrentState);
|
|
2563
2575
|
}
|
|
2564
2576
|
|
|
2565
|
-
return
|
|
2577
|
+
return oControl;
|
|
2566
2578
|
};
|
|
2567
2579
|
|
|
2568
2580
|
/*------------Custom State Entry------------------------------*/
|
|
2569
2581
|
|
|
2582
|
+
/**
|
|
2583
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
2584
|
+
* @private
|
|
2585
|
+
*/
|
|
2570
2586
|
Renderer.prototype.addEntryInShellStates = function (sName, entrySuffix, fnAdd, fnRemove, oStateConfiguration) {
|
|
2571
|
-
|
|
2587
|
+
Log.error("'addEntryInShellStates' was deprecated and discontinued.");
|
|
2572
2588
|
};
|
|
2573
2589
|
|
|
2574
|
-
|
|
2575
|
-
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
|
|
2579
|
-
|
|
2590
|
+
/**
|
|
2591
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
2592
|
+
* @private
|
|
2593
|
+
*/
|
|
2594
|
+
Renderer.prototype.removeCustomItems = function (sStateEntry, vIds, bCurrentState, vStates) {
|
|
2595
|
+
Log.error("'removeCustomItems' was deprecated and discontinued.");
|
|
2580
2596
|
};
|
|
2581
2597
|
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2598
|
+
/**
|
|
2599
|
+
* @deprecated since 1.120 Deprecated without successor.
|
|
2600
|
+
* @private
|
|
2601
|
+
*/
|
|
2602
|
+
Renderer.prototype.addCustomItems = function (sStateEntry, vIds, bCurrentState, vStates) {
|
|
2603
|
+
Log.error("'addCustomItems' was deprecated and discontinued.");
|
|
2588
2604
|
};
|
|
2589
2605
|
|
|
2590
2606
|
/**
|
|
@@ -2753,11 +2769,12 @@ sap.ui.define([
|
|
|
2753
2769
|
* @private
|
|
2754
2770
|
* @since 1.108.0
|
|
2755
2771
|
*/
|
|
2756
|
-
Renderer.prototype.destroyButton = function (
|
|
2757
|
-
if (!
|
|
2772
|
+
Renderer.prototype.destroyButton = function (vIds) {
|
|
2773
|
+
if (!vIds) {
|
|
2758
2774
|
return;
|
|
2759
2775
|
}
|
|
2760
|
-
aIds =
|
|
2776
|
+
const aIds = Array.isArray(vIds) ? vIds : [vIds];
|
|
2777
|
+
|
|
2761
2778
|
aIds.forEach(function (sId) {
|
|
2762
2779
|
var oButton = Element.getElementById(sId);
|
|
2763
2780
|
if (oButton) {
|