@sapui5/sap.ushell 1.136.3 → 1.138.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 +2 -2
- package/src/main/js/sap/ushell/.library +1 -1
- package/src/main/js/sap/ushell/AppInfoParameters.js +4 -5
- package/src/main/js/sap/ushell/ApplicationType/guiResolution.js +677 -695
- package/src/main/js/sap/ushell/ApplicationType/systemAlias.js +612 -623
- package/src/main/js/sap/ushell/ApplicationType/ui5Resolution.js +14 -16
- package/src/main/js/sap/ushell/ApplicationType/urlResolution.js +19 -21
- package/src/main/js/sap/ushell/ApplicationType/urlTemplateResolution.js +486 -468
- package/src/main/js/sap/ushell/ApplicationType/utils.js +46 -46
- package/src/main/js/sap/ushell/ApplicationType/wcfResolution.js +24 -29
- package/src/main/js/sap/ushell/ApplicationType/wdaResolution.js +47 -55
- package/src/main/js/sap/ushell/ApplicationType.js +34 -34
- package/src/main/js/sap/ushell/Config/utils.js +45 -45
- package/src/main/js/sap/ushell/Config.js +4 -4
- package/src/main/js/sap/ushell/Container.js +359 -357
- package/src/main/js/sap/ushell/EventHub.js +216 -212
- package/src/main/js/sap/ushell/Fiori20Adapter.js +59 -98
- package/src/main/js/sap/ushell/Fiori20AdapterTest.js +23 -26
- package/src/main/js/sap/ushell/Layout.js +264 -291
- package/src/main/js/sap/ushell/NWBCInterface.js +8 -8
- package/src/main/js/sap/ushell/SessionHandler.js +8 -8
- package/src/main/js/sap/ushell/System.js +6 -6
- package/src/main/js/sap/ushell/TechnicalParameters.js +95 -96
- package/src/main/js/sap/ushell/UI5ComponentType.js +1 -1
- package/src/main/js/sap/ushell/UIActions.js +189 -188
- package/src/main/js/sap/ushell/URLTemplateProcessor/DefinitionParameterSetBuilder.js +21 -24
- package/src/main/js/sap/ushell/URLTemplateProcessor/DependencyGraph.js +29 -29
- package/src/main/js/sap/ushell/URLTemplateProcessor/Functions.js +96 -96
- package/src/main/js/sap/ushell/URLTemplateProcessor/Resolvers.js +58 -55
- package/src/main/js/sap/ushell/URLTemplateProcessor/TemplateParameterParser.js +201 -200
- package/src/main/js/sap/ushell/URLTemplateProcessor/utils.js +8 -8
- package/src/main/js/sap/ushell/URLTemplateProcessor.js +65 -65
- package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +30 -33
- package/src/main/js/sap/ushell/Ui5ServiceFactory.js +30 -43
- package/src/main/js/sap/ushell/User.js +114 -116
- package/src/main/js/sap/ushell/UserActivityLog.js +63 -63
- package/src/main/js/sap/ushell/adapters/AppVariantPersonalizationAdapter.js +46 -47
- package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +34 -34
- package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +56 -57
- package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +3 -4
- package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +144 -146
- package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +569 -602
- package/src/main/js/sap/ushell/adapters/cdm/MenuAdapter.js +25 -25
- package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +120 -119
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +2 -2
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegion.controller.js +57 -53
- package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegion.view.xml +5 -2
- package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegionEntry.js +6 -6
- package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +2 -3
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +21 -21
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +2 -2
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +28 -37
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +89 -90
- package/src/main/js/sap/ushell/adapters/cdm/_Personalization/internals.js +179 -190
- package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +12 -12
- package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +16 -17
- package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +144 -151
- package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +527 -526
- package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +2 -2
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +6 -6
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +3 -4
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +22 -28
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +9 -9
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +27 -27
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +15 -18
- package/src/main/js/sap/ushell/adapters/cdm/v3/utilsCdm.js +67 -67
- package/src/main/js/sap/ushell/adapters/cep/MenuAdapter.js +17 -20
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +25 -25
- package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +42 -43
- package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +45 -45
- package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +29 -29
- package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +41 -37
- package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +25 -28
- package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +70 -72
- package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +450 -474
- package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/local/MenuAdapter.js +20 -22
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +44 -43
- package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +12 -12
- package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +16 -16
- package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +19 -17
- package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +5 -6
- package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +10 -10
- package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +5 -5
- package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +2 -3
- package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +26 -26
- package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +28 -29
- package/src/main/js/sap/ushell/api/BootstrapObserver.js +2 -3
- package/src/main/js/sap/ushell/api/Copilot.js +2 -4
- package/src/main/js/sap/ushell/api/DWS.js +2 -3
- package/src/main/js/sap/ushell/api/Inbox.js +2 -3
- package/src/main/js/sap/ushell/api/NewExperience/CustomOverflowListItem.js +2 -3
- package/src/main/js/sap/ushell/api/NewExperience.js +8 -8
- package/src/main/js/sap/ushell/api/RTA.js +27 -59
- package/src/main/js/sap/ushell/api/S4MyHome.js +3 -3
- package/src/main/js/sap/ushell/api/SAPBusinessClient.js +6 -36
- package/src/main/js/sap/ushell/api/common/ComponentInstantiation.js +5 -8
- package/src/main/js/sap/ushell/api/workpage/Designtime.js +2 -3
- package/src/main/js/sap/ushell/api/workpage/Runtime.js +2 -4
- package/src/main/js/sap/ushell/appIntegration/AppLifeCycle/KeepAliveMode.js +2 -2
- package/src/main/js/sap/ushell/appIntegration/AppLifeCycle.js +69 -88
- package/src/main/js/sap/ushell/appIntegration/ApplicationContainer.js +2 -4
- package/src/main/js/sap/ushell/appIntegration/ApplicationContainerCache.js +9 -9
- package/src/main/js/sap/ushell/appIntegration/ApplicationContainerRenderer.js +0 -1
- package/src/main/js/sap/ushell/appIntegration/ApplicationHandle.js +2 -2
- package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainer.js +1 -3
- package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainerRenderer.js +2 -4
- package/src/main/js/sap/ushell/appIntegration/KeepAliveApps.js +6 -6
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/AppruntimeHandler.js +7 -7
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ExtensionItems.js +2 -2
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/LifecycleHandler.js +58 -59
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/MessageBrokerHandler.js +2 -3
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/NWBCHandler.js +2 -2
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ServiceHandler.js +91 -91
- package/src/main/js/sap/ushell/appIntegration/UI5ApplicationContainerRenderer.js +0 -1
- package/src/main/js/sap/ushell/appIntegration/contracts/EmbeddedUI5Handler.js +3 -4
- package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV1Handler.js +3 -3
- package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV2Handler.js +1 -2
- package/src/main/js/sap/ushell/appRuntime/neo/AppInfoService.js +85 -74
- package/src/main/js/sap/ushell/appRuntime/neo/AppRuntimeNeo.js +2 -2
- package/src/main/js/sap/ushell/appRuntime/neo/ProxyAppUtils.js +8 -9
- package/src/main/js/sap/ushell/appRuntime/ui5/AppCommunicationMgr.js +57 -57
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +660 -662
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntimeContext.js +14 -14
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntimeService.js +11 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/SessionHandlerAgent.js +21 -25
- package/src/main/js/sap/ushell/appRuntime/ui5/performance/FesrEnhancer.js +11 -5
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/AppLifeCycleUtils.js +31 -31
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/BaseRTAPluginStatus.js +9 -10
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/CheckConditions.js +56 -56
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Renderer.js +34 -34
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Trigger.js +222 -249
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/rtaAgent/Component.js +213 -207
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/rtaShell/Component.js +121 -129
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/Component.js +19 -19
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/AccessKeysAgent.js +9 -9
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer.js +84 -29
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +34 -34
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +12 -12
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +7 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +127 -102
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +11 -6
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +35 -29
- package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +30 -26
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +8 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +26 -26
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +41 -38
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +4 -4
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +9 -23
- package/src/main/js/sap/ushell/appRuntime/ui5/services/FlpLaunchPage.js +3 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +3 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +7 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +16 -17
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +21 -17
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +22 -17
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +31 -28
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +4 -4
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +10 -6
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +10 -6
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +9 -9
- package/src/main/js/sap/ushell/appRuntime/ui5/services/UserDefaultParameters.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +10 -6
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/ContainerAdapter.js +40 -43
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/EmptyAdapter.js +6 -6
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +2 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/ui/UIProxy.js +4 -4
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/EventProcessor.js +9 -9
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/FLPLoader.js +8 -9
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/FLPScheduler.js +40 -42
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/LoadingConfiguration.json +1 -1
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/StepConfiguration.json +1 -6
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/logger.js +13 -13
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/state.js +19 -19
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent.js +23 -32
- package/src/main/js/sap/ushell/bootstrap/cdm/cdm-def-dev.js +3 -4
- package/src/main/js/sap/ushell/bootstrap/cdm/cdm-def-loader.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/cdm/cdm-def.js +3 -3
- package/src/main/js/sap/ushell/bootstrap/cdm/cdm.boot.task.js +3 -3
- package/src/main/js/sap/ushell/bootstrap/cdm/cdm.constants.js +5 -4
- package/src/main/js/sap/ushell/bootstrap/cdm.js +11 -12
- package/src/main/js/sap/ushell/bootstrap/common/common.boot.path.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.boot.script.js +2 -2
- package/src/main/js/sap/ushell/bootstrap/common/common.boot.task.js +3 -3
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.extractLibs.js +1 -2
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.js +13 -13
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +9 -9
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5language.js +3 -3
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5theme.js +13 -15
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ushell.js +4 -9
- package/src/main/js/sap/ushell/bootstrap/common/common.constants.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +0 -13
- package/src/main/js/sap/ushell/bootstrap/common/common.debug.mode.js +3 -3
- package/src/main/js/sap/ushell/bootstrap/common/common.load.bootstrapExtension.js +3 -4
- package/src/main/js/sap/ushell/bootstrap/common/common.load.core-min.js +5 -7
- package/src/main/js/sap/ushell/bootstrap/common/common.load.launchpad.js +6 -8
- package/src/main/js/sap/ushell/bootstrap/common/common.load.model.js +6 -6
- package/src/main/js/sap/ushell/bootstrap/common/common.load.script.js +3 -3
- package/src/main/js/sap/ushell/bootstrap/common/common.override.registermodulepath.js +37 -38
- package/src/main/js/sap/ushell/bootstrap/common/common.read.metatags.js +6 -6
- package/src/main/js/sap/ushell/bootstrap/common/common.read.ui5theme.from.config.js +11 -11
- package/src/main/js/sap/ushell/bootstrap/common/common.read.ushell.config.from.url.js +22 -25
- package/src/main/js/sap/ushell/bootstrap/common/common.util.js +10 -12
- package/src/main/js/sap/ushell/bootstrap/sandbox2/sandbox.js +11 -10
- package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxBootTask.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxConfig.json +8 -24
- package/src/main/js/sap/ushell/bootstrap/sandbox2.js +13 -13
- package/src/main/js/sap/ushell/bootstrap/ui5loader-config.js +7 -7
- package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/cards/Card.controller.js +2 -2
- package/src/main/js/sap/ushell/components/cepsearchresult/app/Component.js +57 -30
- package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.controller.js +330 -312
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Component.js +171 -154
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Config.js +236 -233
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Extension.js +35 -33
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/manifest.json +4 -1
- package/src/main/js/sap/ushell/components/cepsearchresult/app/manifest.json +4 -6
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/AdvancedFormatters.js +64 -60
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/Edition.js +139 -141
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/EditionAdvanced.js +8 -9
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/EditionStandard.js +4 -4
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/appendStyleVars.js +37 -34
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.js +694 -646
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Highlighter.js +220 -223
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Paginator.css +2 -2
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Paginator.js +258 -225
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/All.js +58 -49
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Application.js +200 -203
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Event.js +129 -131
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/People.js +91 -92
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Workpage.js +18 -18
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n.properties +5 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ar.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_bg.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ca.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_cnr.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_cs.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_cy.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_da.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_de.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_el.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_en.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_en_GB.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_en_US_saprigi.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_es.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_es_MX.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_et.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_fi.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_fr.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_fr_CA.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_hi.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_hr.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_hu.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_id.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_it.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_iw.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ja.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_kk.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ko.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_lt.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_lv.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_mk.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ms.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_nl.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_no.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_pl.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_pt.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_pt_PT.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ro.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ru.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sh.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sk.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sl.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sr.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sv.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_th.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_tr.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_uk.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_vi.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_zh_CN.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_zh_TW.properties +3 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/resources.js +30 -0
- package/src/main/js/sap/ushell/components/contentFinder/CatalogService.js +3 -3
- package/src/main/js/sap/ushell/components/contentFinder/Component.js +34 -15
- package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +22 -12
- package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +4 -5
- package/src/main/js/sap/ushell/components/contentFinder/dialog/Component.js +26 -5
- package/src/main/js/sap/ushell/components/contentFinder/dialog/manifest.json +5 -2
- package/src/main/js/sap/ushell/components/contentFinder/manifest.json +5 -7
- package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +22 -8
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +6 -5
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchBox.fragment.xml +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTreeTable.fragment.xml +10 -4
- package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +31 -10
- package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +214 -214
- package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +6 -9
- package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewer.js +6 -6
- package/src/main/js/sap/ushell/components/factsheet/factory/ThingInspector.js +4 -4
- 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.controller.js +4 -4
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +2 -2
- 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 +28 -3
- package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
- package/src/main/js/sap/ushell/components/pages/StateManager.js +4 -3
- package/src/main/js/sap/ushell/components/pages/controller/ImportDialog.controller.js +182 -202
- package/src/main/js/sap/ushell/components/pages/controller/MyHome.controller.js +3 -3
- package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +1 -1
- package/src/main/js/sap/ushell/components/pages/controller/PagesAndSpaceId.js +10 -7
- package/src/main/js/sap/ushell/components/pages/manifest.json +2 -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/FloatingContainer/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/MenuBar/Component.js +26 -3
- package/src/main/js/sap/ushell/components/shell/MenuBar/controller/MenuBar.controller.js +3 -1
- package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +2 -2
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +13 -31
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenuButton.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +5 -6
- package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsListPopoverContent.view.xml +1 -1
- package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Search/ESearch.js +3 -0
- package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +17 -15
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchCEP.controller.js +3 -3
- 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 +84 -67
- 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 +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/ContentWrapper.fragment.xml +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +10 -23
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +59 -69
- package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +1 -2
- package/src/main/js/sap/ushell/components/shell/Settings/homepage/HomepageEntry.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/homepage/HomepageSetting.view.xml +28 -35
- package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.view.xml +5 -9
- package/src/main/js/sap/ushell/components/shell/Settings/spaces/SpacesSetting.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSelector.controller.js +1 -2
- package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSelector.view.xml +2 -2
- package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSetting.fragment.xml +2 -4
- package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.view.xml +6 -12
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/LanguageRegionSelector.view.xml +2 -4
- package/src/main/js/sap/ushell/components/shell/ShellBar/Component.js +17 -10
- package/src/main/js/sap/ushell/components/shell/ShellBar/controller/ShellBar.controller.js +23 -115
- package/src/main/js/sap/ushell/components/shell/ShellBar/manifest.json +4 -3
- package/src/main/js/sap/ushell/components/shell/ShellBar/view/ShellBar.view.xml +2 -7
- package/src/main/js/sap/ushell/components/shell/SideNavigation/Component.js +4 -1
- package/src/main/js/sap/ushell/components/shell/SideNavigation/controller/SideNavigation.controller.js +0 -31
- package/src/main/js/sap/ushell/components/shell/SideNavigation/manifest.json +5 -2
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/Favorites.js +1 -1
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +14 -19
- package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
- package/src/main/js/sap/ushell/components/tiles/action/ActionTile.controller.js +16 -16
- package/src/main/js/sap/ushell/components/tiles/action/Configuration.controller.js +20 -20
- package/src/main/js/sap/ushell/components/tiles/applauncher/Configuration.controller.js +18 -18
- package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +15 -15
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Configuration.controller.js +18 -18
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +20 -20
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/manifest.json +1 -6
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.controller.js +2 -2
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/manifest.json +1 -6
- package/src/main/js/sap/ushell/components/tiles/generic.js +8 -8
- package/src/main/js/sap/ushell/components/tiles/indicatorArea/AreaChartTile.controller.js +6 -8
- package/src/main/js/sap/ushell/components/tiles/indicatorDual/DualTile.controller.js +2 -2
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/smartBusinessUtil.js +5 -5
- package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +2 -6
- package/src/main/js/sap/ushell/components/tiles/indicatorcontribution/ContributionTile.controller.js +2 -4
- package/src/main/js/sap/ushell/components/tiles/utils.js +46 -22
- package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +2 -3
- 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 +1 -1
- 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 +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +8 -10
- package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
- package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +2 -2
- package/src/main/js/sap/ushell/functionBindPrototype.js +1 -1
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Avatar.js +1 -7
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/MenuItem.js +0 -10
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-base.js +1 -1
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori.js +1 -81
- package/src/main/js/sap/ushell/gen/ui5/webcomponents.js +2 -80
- package/src/main/js/sap/ushell/library.js +5 -5
- package/src/main/js/sap/ushell/modules/NavigationMenu.js +3 -4
- package/src/main/js/sap/ushell/navigationMode.js +40 -43
- package/src/main/js/sap/ushell/override.js +53 -53
- package/src/main/js/sap/ushell/performance/FesrEnhancer.js +7 -9
- package/src/main/js/sap/ushell/performance/ShellAnalytics.js +48 -52
- package/src/main/js/sap/ushell/performance/StatisticalRecord.js +9 -11
- package/src/main/js/sap/ushell/plugins/BaseRTAPlugin.js +106 -107
- package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +17 -17
- package/src/main/js/sap/ushell/plugins/appwarmup/ShellUIService.js +1 -1
- package/src/main/js/sap/ushell/plugins/appwarmup/manifest.json +0 -4
- package/src/main/js/sap/ushell/plugins/ghostapp/Component.js +1 -1
- package/src/main/js/sap/ushell/plugins/ghostapp/FakeModel.js +5 -5
- package/src/main/js/sap/ushell/plugins/ghostapp/manifest.json +1 -2
- package/src/main/js/sap/ushell/plugins/rta/Component.js +51 -51
- package/src/main/js/sap/ushell/plugins/rta/manifest.json +0 -4
- package/src/main/js/sap/ushell/plugins/rta-personalize/Component.js +3 -3
- package/src/main/js/sap/ushell/plugins/rta-personalize/manifest.json +0 -4
- package/src/main/js/sap/ushell/renderer/AccessKeysHandler.js +81 -79
- package/src/main/js/sap/ushell/renderer/History.js +6 -6
- package/src/main/js/sap/ushell/renderer/LogonFrameProvider.js +27 -27
- package/src/main/js/sap/ushell/renderer/NavContainerRenderer.js +3 -3
- package/src/main/js/sap/ushell/renderer/Renderer.js +77 -74
- package/src/main/js/sap/ushell/renderer/RendererAppContainer.js +5 -5
- package/src/main/js/sap/ushell/renderer/Shell.controller.js +28 -28
- package/src/main/js/sap/ushell/renderer/Shell.view.js +63 -91
- package/src/main/js/sap/ushell/renderer/ShellLayout.js +0 -12
- package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.controller.js +100 -100
- package/src/main/js/sap/ushell/renderer/allMyApps/AllMyAppsManager.js +103 -93
- package/src/main/js/sap/ushell/renderer/rendererTargetWrapper/Component.js +2 -2
- package/src/main/js/sap/ushell/renderer/rendererTargetWrapper/RendererTarget.controller.js +3 -3
- package/src/main/js/sap/ushell/renderer/resources/resources.properties +4 -2
- package/src/main/js/sap/ushell/renderer/resources/resources_ar.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_bg.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ca.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_cnr.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_cs.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_cy.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_da.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_de.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_el.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_en.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_en_GB.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_en_US_saprigi.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_es.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_es_MX.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_et.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_fi.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_fr.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_fr_CA.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_hi.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_hr.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_hu.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_id.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_it.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_iw.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ja.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_kk.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ko.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_lt.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_lv.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_mk.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ms.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_nl.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_no.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_pl.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_pt.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_pt_PT.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ro.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ru.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_sh.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_sk.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_sl.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_sr.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_sv.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_th.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_tr.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_uk.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_vi.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_zh_CN.properties +0 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_zh_TW.properties +0 -1
- package/src/main/js/sap/ushell/renderer/search/searchComponent/Component.js +5 -5
- package/src/main/js/sap/ushell/renderer/search/searchComponent/controller/CEPSearchApp.controller.js +3 -5
- package/src/main/js/sap/ushell/renderer/search/searchComponent/controller/SearchApp.controller.js +5 -8
- package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
- package/src/main/js/sap/ushell/renderer/search/searchComponent/view/CEPSearchApp.view.js +2 -2
- package/src/main/js/sap/ushell/renderer/search/searchComponent/view/SearchApp.view.js +2 -2
- package/src/main/js/sap/ushell/renderer/search/util.js +5 -6
- package/src/main/js/sap/ushell/renderer/shellHeader/ShellHeader.controller.js +42 -41
- package/src/main/js/sap/ushell/renderer/shellHeader/ShellHeader.fragment.xml +2 -1
- package/src/main/js/sap/ushell/renderer/utils.js +4 -4
- package/src/main/js/sap/ushell/renderers/fiori2/History.js +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/LogonFrameProvider.js +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/RendererExtensions.js +6 -7
- package/src/main/js/sap/ushell/renderers/fiori2/Shell.controller.js +2 -2
- package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +55 -87
- package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyAppsManager.js +1 -1
- package/src/main/js/sap/ushell/resources.js +18 -22
- package/src/main/js/sap/ushell/services/AppConfiguration.js +1 -1
- 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/Formatter.js +142 -158
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundIndex.js +11 -13
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundProvider.js +3 -4
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/ParameterMapping.js +38 -38
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/PrelaunchOperations.js +72 -72
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Search.js +229 -247
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/StagedLogger.js +29 -41
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/SystemContext.js +10 -10
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Utils.js +26 -31
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/VirtualInbounds.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/XAppStateProcessing.js +204 -206
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
- package/src/main/js/sap/ushell/services/CommonDataModel/PersonalizationProcessor.js +115 -118
- package/src/main/js/sap/ushell/services/CommonDataModel/SiteConverter.js +20 -20
- package/src/main/js/sap/ushell/services/CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +3 -5
- package/src/main/js/sap/ushell/services/CommonDataModel.js +2 -2
- 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 +1 -1
- package/src/main/js/sap/ushell/services/Extension/Item.js +2 -2
- package/src/main/js/sap/ushell/services/Extension.js +1 -1
- package/src/main/js/sap/ushell/services/FlpLaunchPage.js +2 -2
- 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 +2 -2
- package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +4 -4
- package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +2 -2
- package/src/main/js/sap/ushell/services/FrameBoundExtension/UserSettingsEntry.js +1 -1
- package/src/main/js/sap/ushell/services/FrameBoundExtension.js +1 -1
- package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
- package/src/main/js/sap/ushell/services/Menu.js +13 -8
- package/src/main/js/sap/ushell/services/Message.js +1 -1
- package/src/main/js/sap/ushell/services/MessageBroker/MessageBrokerEngine.js +1 -1
- package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
- package/src/main/js/sap/ushell/services/MessageInternal.js +1 -1
- 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/NotificationsV2.js +1 -14
- 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 +8 -12
- 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/Extensions.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager/HeaderExtensions.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager/MenuExtensions.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager/SimpleExpression.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager.js +17 -14
- package/src/main/js/sap/ushell/services/ReferenceResolver.js +2 -2
- 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 +1 -1
- package/src/main/js/sap/ushell/services/ShellNavigation.js +2 -2
- package/src/main/js/sap/ushell/services/ShellNavigationInternal.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 +18 -22
- 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 +1 -1
- 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 +2 -2
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +9 -9
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +21 -14
- package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +66 -67
- package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +15 -15
- package/src/main/js/sap/ushell/services/_Personalization/ContextContainer.js +65 -79
- package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainer.js +58 -57
- package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainerVariant.js +17 -14
- package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainerVariantSet.js +30 -28
- package/src/main/js/sap/ushell/services/_Personalization/Personalizer.js +38 -24
- package/src/main/js/sap/ushell/services/_Personalization/TransientPersonalizer.js +4 -10
- package/src/main/js/sap/ushell/services/_Personalization/Variant.js +23 -23
- package/src/main/js/sap/ushell/services/_Personalization/VariantSet.js +39 -38
- package/src/main/js/sap/ushell/services/_Personalization/VariantSetAdapter.js +2 -2
- package/src/main/js/sap/ushell/services/_Personalization/WindowAdapter.js +1 -1
- package/src/main/js/sap/ushell/services/_Personalization/WindowAdapterContainer.js +1 -1
- package/src/main/js/sap/ushell/services/_Personalization/constants.js +5 -5
- package/src/main/js/sap/ushell/services/_Personalization/constants.private.js +1 -1
- package/src/main/js/sap/ushell/services/_Personalization/utils.js +13 -13
- package/src/main/js/sap/ushell/services/appstate/AppState.js +26 -26
- package/src/main/js/sap/ushell/services/appstate/AppStatePersistencyMethod.js +1 -1
- package/src/main/js/sap/ushell/services/appstate/AppStatePersistencySettings.js +4 -4
- package/src/main/js/sap/ushell/services/appstate/LimitedBuffer.js +9 -7
- package/src/main/js/sap/ushell/services/appstate/Sequentializer.js +5 -6
- package/src/main/js/sap/ushell/services/appstate/SequentializingAdapter.js +6 -3
- package/src/main/js/sap/ushell/services/appstate/WindowAdapter.js +20 -16
- package/src/main/js/sap/ushell/state/StateManager.js +3 -2
- package/src/main/js/sap/ushell/state/StateRules.js +9 -4
- package/src/main/js/sap/ushell/state/{BackNavigation.js → modules/BackNavigation.js} +1 -1
- package/src/main/js/sap/ushell/state/{ContentDensity.js → modules/ContentDensity.js} +1 -1
- package/src/main/js/sap/ushell/state/{Favicon.js → modules/Favicon.js} +1 -1
- package/src/main/js/sap/ushell/state/modules/HeaderLogo.js +181 -0
- package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +100 -92
- package/src/main/js/sap/ushell/support/plugins/flpConfig/i18n/FlpConfigurationPlugin.properties +0 -3
- package/src/main/js/sap/ushell/support/plugins/flpConfig/i18n/FlpConfigurationPlugin_de.properties +0 -3
- package/src/main/js/sap/ushell/support/plugins/flpConfig/i18n/FlpConfigurationPlugin_en.properties +0 -3
- package/src/main/js/sap/ushell/themes/base/AddBookmarkButton.less +5 -0
- package/src/main/js/sap/ushell/themes/base/Factsheet.less +0 -2
- package/src/main/js/sap/ushell/themes/base/ShellBar.less +1 -2
- package/src/main/js/sap/ushell/themes/base/ShellHeader.less +1 -1
- package/src/main/js/sap/ushell/themes/base/ToolAreaItem.less +0 -1
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.json +3 -0
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.ttf +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff2 +0 -0
- package/src/main/js/sap/ushell/themes/sap_belize_base/AddBookmarkButton.less +5 -0
- package/src/main/js/sap/ushell/themes/sap_belize_base/Factsheet.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_belize_hcb/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_belize_hcw/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_bluecrystal/AnchorNavigationBar.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/AddBookmarkButton.less +5 -0
- package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/Factsheet.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +0 -6
- package/src/main/js/sap/ushell/themes/sap_fiori_3/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_hcb/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_hcb/base_AddBookmarkButton.less +5 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_Factsheet.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +1 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/FloatingContainer.less +8 -0
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/library.source.less +1 -0
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/AnchorItem.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/FloatingContainer.less +8 -0
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/library.source.less +1 -0
- package/src/main/js/sap/ushell/thirdparty/Avatar.js +12 -79
- package/src/main/js/sap/ushell/thirdparty/BusyIndicator.js +9 -15
- package/src/main/js/sap/ushell/thirdparty/Button2.js +6 -25
- package/src/main/js/sap/ushell/thirdparty/Icon.js +5 -5
- package/src/main/js/sap/ushell/thirdparty/Icons.js +68 -69
- package/src/main/js/sap/ushell/thirdparty/Link.js +2 -2
- package/src/main/js/sap/ushell/thirdparty/List.js +4 -4
- package/src/main/js/sap/ushell/thirdparty/ListItemCustom.js +95 -0
- package/src/main/js/sap/ushell/thirdparty/{ResponsivePopover.js → ListItemTemplate.js} +2876 -3032
- package/src/main/js/sap/ushell/thirdparty/Menu.js +76 -65
- package/src/main/js/sap/ushell/thirdparty/MenuItem.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/MenuItem2.js +34 -342
- package/src/main/js/sap/ushell/thirdparty/NotificationListGroupItem.js +6 -6
- package/src/main/js/sap/ushell/thirdparty/NotificationListItem.js +5 -5
- package/src/main/js/sap/ushell/thirdparty/ShellBar.js +79 -112
- package/src/main/js/sap/ushell/thirdparty/Tag.js +6 -6
- package/src/main/js/sap/ushell/thirdparty/Text.js +4 -4
- package/src/main/js/sap/ushell/thirdparty/UserMenu.js +22 -22
- package/src/main/js/sap/ushell/thirdparty/UserMenuItem.js +2 -2
- package/src/main/js/sap/ushell/thirdparty/_dynamics/ListItemStandardExpandableTextTemplate.js +3 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en2.js +0 -27
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en3.js +8 -23
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi2.js +0 -27
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi3.js +8 -20
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id3.js +1 -4
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it2.js +4 -4
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it3.js +2 -5
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW3.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css10.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css11.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css12.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css13.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css14.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css15.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css16.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css17.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css18.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css19.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css20.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css21.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css22.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css23.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css24.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css25.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/i18n-defaults.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/information.js +10 -10
- package/src/main/js/sap/ushell/thirdparty/overflow.js +2 -2
- package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/toLowercaseEnumValue.js +0 -3
- package/src/main/js/sap/ushell/thirdparty/webcomponents-base.js +13 -13
- package/src/main/js/sap/ushell/ui/ContentNodeSelector.js +72 -73
- package/src/main/js/sap/ushell/ui/ContentNodeSelectorRenderer.js +3 -3
- package/src/main/js/sap/ushell/ui/ContentNodeTreeItem.js +2 -2
- package/src/main/js/sap/ushell/ui/CustomGroupHeaderListItem.js +6 -6
- package/src/main/js/sap/ushell/ui/CustomGroupHeaderListItemRenderer.js +5 -5
- package/src/main/js/sap/ushell/ui/QuickAccess.js +15 -13
- package/src/main/js/sap/ushell/ui/ShellHeader.js +68 -152
- package/src/main/js/sap/ushell/ui/ShellHeaderRenderer.js +1 -1
- package/src/main/js/sap/ushell/ui/appfinder/AppBox.js +1 -1
- package/src/main/js/sap/ushell/ui/appfinder/AppBoxInternal.js +4 -4
- package/src/main/js/sap/ushell/ui/appfinder/AppBoxInternalRenderer.js +7 -9
- package/src/main/js/sap/ushell/ui/appfinder/AppBoxRenderer.js +1 -1
- package/src/main/js/sap/ushell/ui/appfinder/PinButton.js +2 -2
- package/src/main/js/sap/ushell/ui/appfinder/PinButtonRenderer.js +2 -4
- package/src/main/js/sap/ushell/ui/bookmark/SaveOnPage.controller.js +25 -13
- package/src/main/js/sap/ushell/ui/bookmark/SaveOnPage.view.xml +44 -48
- package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +22 -22
- package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +23 -23
- package/src/main/js/sap/ushell/ui/footerbar/AboutButton.js +5 -5
- package/src/main/js/sap/ushell/ui/footerbar/AboutDialog.controller.js +0 -3
- package/src/main/js/sap/ushell/ui/footerbar/AddBookmarkButton.js +86 -103
- package/src/main/js/sap/ushell/ui/footerbar/ContactSupportButton.js +4 -4
- package/src/main/js/sap/ushell/ui/footerbar/ContactSupportDialog.controller.js +3 -3
- package/src/main/js/sap/ushell/ui/footerbar/JamDiscussButton.js +6 -7
- package/src/main/js/sap/ushell/ui/footerbar/JamShareButton.js +12 -12
- package/src/main/js/sap/ushell/ui/footerbar/LogoutButton.js +12 -12
- package/src/main/js/sap/ushell/ui/footerbar/SaveAsTile.controller.js +21 -21
- package/src/main/js/sap/ushell/ui/footerbar/SaveAsTile.view.js +57 -55
- package/src/main/js/sap/ushell/ui/footerbar/SendAsEmailButton.js +13 -13
- package/src/main/js/sap/ushell/ui/launchpad/AccessibilityCustomData.js +4 -4
- package/src/main/js/sap/ushell/ui/launchpad/ActionItem.js +4 -4
- package/src/main/js/sap/ushell/ui/launchpad/AnchorItem.js +3 -3
- package/src/main/js/sap/ushell/ui/launchpad/AnchorItemRenderer.js +5 -5
- package/src/main/js/sap/ushell/ui/launchpad/AnchorNavigationBar.js +56 -57
- package/src/main/js/sap/ushell/ui/launchpad/AnchorNavigationBarRenderer.js +8 -8
- package/src/main/js/sap/ushell/ui/launchpad/CatalogEntryContainer.js +36 -38
- package/src/main/js/sap/ushell/ui/launchpad/CatalogsContainer.js +40 -45
- package/src/main/js/sap/ushell/ui/launchpad/DashboardGroupsContainer.js +18 -18
- package/src/main/js/sap/ushell/ui/launchpad/DashboardGroupsContainerRenderer.js +5 -7
- package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +33 -33
- package/src/main/js/sap/ushell/ui/launchpad/FailedTileDialog.js +13 -13
- package/src/main/js/sap/ushell/ui/launchpad/GroupHeaderActions.js +13 -13
- package/src/main/js/sap/ushell/ui/launchpad/GroupListItem.js +5 -7
- package/src/main/js/sap/ushell/ui/launchpad/GroupListItemRenderer.js +2 -2
- package/src/main/js/sap/ushell/ui/launchpad/LinkTileWrapper.js +18 -18
- package/src/main/js/sap/ushell/ui/launchpad/LinkTileWrapperRenderer.js +9 -9
- package/src/main/js/sap/ushell/ui/launchpad/LoadingDialog.js +7 -7
- package/src/main/js/sap/ushell/ui/launchpad/LoadingDialogRenderer.js +4 -4
- package/src/main/js/sap/ushell/ui/launchpad/Page.js +56 -59
- package/src/main/js/sap/ushell/ui/launchpad/PageRenderer.js +3 -3
- package/src/main/js/sap/ushell/ui/launchpad/PlusTile.js +5 -5
- package/src/main/js/sap/ushell/ui/launchpad/PlusTileRenderer.js +2 -2
- package/src/main/js/sap/ushell/ui/launchpad/Section.js +142 -142
- package/src/main/js/sap/ushell/ui/launchpad/SectionRenderer.js +8 -8
- package/src/main/js/sap/ushell/ui/launchpad/Tile.js +48 -49
- package/src/main/js/sap/ushell/ui/launchpad/TileContainer.js +60 -57
- package/src/main/js/sap/ushell/ui/launchpad/TileContainerRenderer.js +31 -31
- package/src/main/js/sap/ushell/ui/launchpad/TileContainerUtils.js +71 -71
- package/src/main/js/sap/ushell/ui/launchpad/TileRenderer.js +8 -8
- package/src/main/js/sap/ushell/ui/launchpad/TileState.js +3 -3
- package/src/main/js/sap/ushell/ui/launchpad/TileStateInternal.js +7 -7
- package/src/main/js/sap/ushell/ui/launchpad/TileStateInternalRenderer.js +8 -8
- package/src/main/js/sap/ushell/ui/launchpad/TileStateRenderer.js +1 -2
- package/src/main/js/sap/ushell/ui/launchpad/ViewPortState.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/VizInstance.js +41 -42
- package/src/main/js/sap/ushell/ui/launchpad/VizInstanceAbap.js +25 -25
- package/src/main/js/sap/ushell/ui/launchpad/VizInstanceBase.js +3 -3
- package/src/main/js/sap/ushell/ui/launchpad/VizInstanceCdm.js +25 -25
- package/src/main/js/sap/ushell/ui/launchpad/VizInstanceLaunchPage.js +6 -6
- package/src/main/js/sap/ushell/ui/launchpad/VizInstanceLink.js +11 -11
- package/src/main/js/sap/ushell/ui/launchpad/VizInstanceRenderer.js +7 -7
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +18 -18
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactAreaRenderer.js +2 -2
- package/src/main/js/sap/ushell/ui/shell/ContentRenderer.js +8 -8
- package/src/main/js/sap/ushell/ui/shell/NavigationMiniTile.js +7 -7
- package/src/main/js/sap/ushell/ui/shell/OverflowListItem.js +5 -5
- package/src/main/js/sap/ushell/ui/shell/RightFloatingContainer.js +55 -55
- package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +47 -45
- package/src/main/js/sap/ushell/ui/shell/ShellFloatingAction.js +5 -6
- package/src/main/js/sap/ushell/ui/shell/ShellFloatingActionRenderer.js +3 -4
- package/src/main/js/sap/ushell/ui/shell/ShellFloatingActions.js +18 -18
- package/src/main/js/sap/ushell/ui/shell/ShellHeadItem.js +28 -28
- package/src/main/js/sap/ushell/ui/shell/ShellNavigationMenu.js +33 -35
- package/src/main/js/sap/ushell/ui/shell/SidePane.js +9 -10
- package/src/main/js/sap/ushell/ui/shell/SubHeader.js +3 -3
- package/src/main/js/sap/ushell/ui/shell/SysInfoBar.js +12 -13
- package/src/main/js/sap/ushell/ui/shell/SysInfoBarRenderer.js +7 -7
- package/src/main/js/sap/ushell/ui/shell/ToolArea.js +10 -10
- package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +10 -13
- package/src/main/js/sap/ushell/ui/tile/DynamicTile.js +5 -5
- package/src/main/js/sap/ushell/ui/tile/DynamicTileRenderer.js +29 -31
- package/src/main/js/sap/ushell/ui/tile/ImageTile.js +3 -4
- package/src/main/js/sap/ushell/ui/tile/ImageTileRenderer.js +2 -4
- package/src/main/js/sap/ushell/ui/tile/StaticTile.js +3 -3
- package/src/main/js/sap/ushell/ui/tile/StaticTileRenderer.js +2 -4
- package/src/main/js/sap/ushell/ui/tile/TileBase.js +4 -6
- package/src/main/js/sap/ushell/ui/tile/TileBaseRenderer.js +20 -21
- package/src/main/js/sap/ushell/ui/utils.js +20 -21
- package/src/main/js/sap/ushell/ui5service/ShellUIService.js +0 -1
- package/src/main/js/sap/ushell/ui5service/ShellUIServiceFactory.js +2 -2
- package/src/main/js/sap/ushell/ui5service/UserStatus.js +4 -4
- package/src/main/js/sap/ushell/utils/AppType.js +4 -4
- package/src/main/js/sap/ushell/utils/Deferred.js +2 -3
- package/src/main/js/sap/ushell/utils/DynamicTileRequest.js +6 -9
- package/src/main/js/sap/ushell/utils/HttpClient.js +33 -35
- package/src/main/js/sap/ushell/utils/RestrictedJSONModel.js +3 -3
- package/src/main/js/sap/ushell/utils/UriParameters.js +35 -35
- package/src/main/js/sap/ushell/utils/UrlParsing.js +5 -10
- package/src/main/js/sap/ushell/utils/UrlShortening.js +45 -58
- package/src/main/js/sap/ushell/utils/WindowUtils.js +17 -17
- package/src/main/js/sap/ushell/utils/chipsUtils.js +53 -54
- package/src/main/js/sap/ushell/utils/objectOperations.js +14 -15
- package/src/main/js/sap/ushell/utils/tilecard/TileCard.js +168 -171
- package/src/main/js/sap/ushell/utils/tilecard/TileCardExtension.js +238 -240
- package/src/main/js/sap/ushell/utils/type.js +1 -2
- package/src/main/js/sap/ushell/utils/utilsCdm.js +37 -46
- package/src/main/js/sap/ushell/utils/workpage/DestinationResolver.js +3 -4
- package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +29 -34
- package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +18 -20
- package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +5 -6
- package/src/main/js/sap/ushell/utils.js +195 -221
- package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
- package/ui5.yaml +0 -1
- package/src/main/js/sap/ushell/CanvasShapesManager.js +0 -392
- package/src/main/js/sap/ushell/components/shell/SearchCEP/ProvidersExecuter.js +0 -49
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/Avatar.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/Button.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/Label.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/Menu.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/MenuItem.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/NotificationList.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/NotificationListGroupItem.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/NotificationListItem.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/ShellBar.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/ShellBarItem.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/ShellBarSpacer.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/UserMenu.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/UserMenuAccount.js +0 -4
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/UserMenuItem.js +0 -4
- package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellBar.less +0 -9
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellBar.less +0 -9
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellBar.less +0 -9
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellBar.less +0 -9
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @fileOverview The Unified Shell's LaunchPageAdapter for the
|
|
5
5
|
* 'CDM' platform - Version 3 (V3)
|
|
6
6
|
*
|
|
7
|
-
* @version 1.
|
|
7
|
+
* @version 1.138.0
|
|
8
8
|
*/
|
|
9
9
|
sap.ui.define([
|
|
10
10
|
"sap/ushell/adapters/cdm/v3/_LaunchPage/readHome",
|
|
@@ -29,7 +29,7 @@ sap.ui.define([
|
|
|
29
29
|
"sap/base/Log",
|
|
30
30
|
"sap/ushell/EventHub",
|
|
31
31
|
"sap/ushell/Container"
|
|
32
|
-
],
|
|
32
|
+
], (
|
|
33
33
|
oReadHomePageUtils,
|
|
34
34
|
oModifyHomePageUtils,
|
|
35
35
|
oReadCatalog,
|
|
@@ -52,16 +52,16 @@ sap.ui.define([
|
|
|
52
52
|
Log,
|
|
53
53
|
EventHub,
|
|
54
54
|
Container
|
|
55
|
-
) {
|
|
55
|
+
) => {
|
|
56
56
|
"use strict";
|
|
57
57
|
|
|
58
58
|
// shortcut for sap.m.GenericTileMode
|
|
59
|
-
|
|
59
|
+
const oGenericTileMode = mobileLibrary.GenericTileMode;
|
|
60
60
|
|
|
61
61
|
/* global hasher */
|
|
62
62
|
|
|
63
|
-
|
|
64
|
-
|
|
63
|
+
const STATIC_TILE_COMPONENT_NAME = "sap.ushell.components.tiles.cdm.applauncher";
|
|
64
|
+
const DYNAMIC_TILE_COMPONENT_NAME = "sap.ushell.components.tiles.cdm.applauncherdynamic";
|
|
65
65
|
|
|
66
66
|
/**
|
|
67
67
|
* This method MUST be called by the Unified Shell's container only.
|
|
@@ -83,10 +83,10 @@ sap.ui.define([
|
|
|
83
83
|
Promise.all([
|
|
84
84
|
Container.getServiceAsync("URLParsing"),
|
|
85
85
|
this.oCDMServicePromise
|
|
86
|
-
]).then(
|
|
86
|
+
]).then((aServices) => {
|
|
87
87
|
this.oURLParsingService = aServices[0]; // It is not used internally. Keep it for back compatibility.
|
|
88
88
|
this.oCDMService = aServices[1];
|
|
89
|
-
}
|
|
89
|
+
});
|
|
90
90
|
|
|
91
91
|
/**
|
|
92
92
|
* Returns the tile resolution result in the context of a given site.
|
|
@@ -111,8 +111,8 @@ sap.ui.define([
|
|
|
111
111
|
* @deprecated since 1.120
|
|
112
112
|
*/
|
|
113
113
|
this._getTileFromHashInContextOfSite = function (fnResolver, oCatalogTilePromiseCache, sIntent) {
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
const oDeferred = new jQuery.Deferred();
|
|
115
|
+
let oCatalogTilePromise = oCatalogTilePromiseCache[sIntent];
|
|
116
116
|
|
|
117
117
|
if (!oCatalogTilePromise) {
|
|
118
118
|
// only call resolve if it was not resolved before
|
|
@@ -122,15 +122,15 @@ sap.ui.define([
|
|
|
122
122
|
oCatalogTilePromiseCache[sIntent] = oCatalogTilePromise;
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
oCatalogTilePromise.done(
|
|
126
|
-
|
|
125
|
+
oCatalogTilePromise.done((oTileIntentResolutionResult) => {
|
|
126
|
+
const oTileResolutionResult = {
|
|
127
127
|
tileIntent: sIntent,
|
|
128
128
|
tileResolutionResult: oTileIntentResolutionResult
|
|
129
129
|
};
|
|
130
130
|
|
|
131
131
|
oDeferred.resolve(oTileResolutionResult);
|
|
132
|
-
}).fail(
|
|
133
|
-
oDeferred.reject(
|
|
132
|
+
}).fail((sErrorMsg) => {
|
|
133
|
+
oDeferred.reject(`Hash '${sIntent}' could not be resolved to a tile. ${sErrorMsg}`);
|
|
134
134
|
});
|
|
135
135
|
|
|
136
136
|
return oDeferred.promise();
|
|
@@ -150,9 +150,9 @@ sap.ui.define([
|
|
|
150
150
|
* @deprecated since 1.120
|
|
151
151
|
*/
|
|
152
152
|
this._getTileFromHash = function (sIntent) {
|
|
153
|
-
|
|
153
|
+
const oDeferred = new jQuery.Deferred();
|
|
154
154
|
|
|
155
|
-
Container.getServiceAsync("ClientSideTargetResolution").then(
|
|
155
|
+
Container.getServiceAsync("ClientSideTargetResolution").then((oCstrService) => {
|
|
156
156
|
function fnResolveTile (...args) {
|
|
157
157
|
const oDeferred = new jQuery.Deferred();
|
|
158
158
|
oCstrService.resolveTileIntent(...args)
|
|
@@ -167,7 +167,7 @@ sap.ui.define([
|
|
|
167
167
|
this._getTileFromHashInContextOfSite(fnResolveTile, this._mCatalogTilePromises, sIntent)
|
|
168
168
|
.done(oDeferred.resolve)
|
|
169
169
|
.fail(oDeferred.reject);
|
|
170
|
-
}
|
|
170
|
+
});
|
|
171
171
|
|
|
172
172
|
return oDeferred.promise();
|
|
173
173
|
};
|
|
@@ -182,7 +182,7 @@ sap.ui.define([
|
|
|
182
182
|
* @deprecated since 1.120
|
|
183
183
|
*/
|
|
184
184
|
this._getTileForUrl = function (oTile) {
|
|
185
|
-
|
|
185
|
+
const oTileComponentLoadInfo = {
|
|
186
186
|
componentName: oTile.indicatorDataSource ? DYNAMIC_TILE_COMPONENT_NAME : STATIC_TILE_COMPONENT_NAME
|
|
187
187
|
};
|
|
188
188
|
return {
|
|
@@ -206,7 +206,7 @@ sap.ui.define([
|
|
|
206
206
|
* @deprecated since 1.120
|
|
207
207
|
*/
|
|
208
208
|
this._prepareTileHash = function (oTile) {
|
|
209
|
-
|
|
209
|
+
const oParams = {};
|
|
210
210
|
|
|
211
211
|
if (this._isCatalogTile(oTile)) {
|
|
212
212
|
return oTile.tileIntent;
|
|
@@ -214,14 +214,14 @@ sap.ui.define([
|
|
|
214
214
|
|
|
215
215
|
if (this._isGroupTile(oTile) && oTile.target) {
|
|
216
216
|
// TODO use hash from _mResolvedTiles if tile has been already resolved
|
|
217
|
-
|
|
218
|
-
aRawParams.forEach(
|
|
217
|
+
const aRawParams = oTile.target.parameters || [];
|
|
218
|
+
aRawParams.forEach((oParameter) => {
|
|
219
219
|
if (oParameter.name && oParameter.value) {
|
|
220
220
|
oParams[oParameter.name] = [oParameter.value];
|
|
221
221
|
}
|
|
222
222
|
});
|
|
223
223
|
|
|
224
|
-
|
|
224
|
+
const oTarget = {
|
|
225
225
|
target: {
|
|
226
226
|
semanticObject: oTile.target.semanticObject,
|
|
227
227
|
action: oTile.target.action
|
|
@@ -230,7 +230,7 @@ sap.ui.define([
|
|
|
230
230
|
appSpecificRoute: oTile.target.appSpecificRoute
|
|
231
231
|
};
|
|
232
232
|
|
|
233
|
-
return
|
|
233
|
+
return `#${urlParsing.constructShellHash(oTarget)}`;
|
|
234
234
|
}
|
|
235
235
|
return undefined;
|
|
236
236
|
};
|
|
@@ -244,9 +244,9 @@ sap.ui.define([
|
|
|
244
244
|
* @deprecated since 1.120
|
|
245
245
|
*/
|
|
246
246
|
this.getDefaultGroup = function () {
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
247
|
+
const oDeferred = new jQuery.Deferred();
|
|
248
|
+
let oAssureLoadedPromise;
|
|
249
|
+
const that = this;
|
|
250
250
|
// check whether assureLoaded was already called.
|
|
251
251
|
// The default group is not set before.
|
|
252
252
|
if (!this._oDefaultGroup) {
|
|
@@ -255,11 +255,11 @@ sap.ui.define([
|
|
|
255
255
|
|
|
256
256
|
if (oAssureLoadedPromise) {
|
|
257
257
|
oAssureLoadedPromise
|
|
258
|
-
.then(
|
|
258
|
+
.then(() => {
|
|
259
259
|
oDeferred.resolve(that._oDefaultGroup);
|
|
260
260
|
})
|
|
261
|
-
.catch(
|
|
262
|
-
oDeferred.reject(
|
|
261
|
+
.catch((sMessage) => {
|
|
262
|
+
oDeferred.reject(`Failed to access default group. ${sMessage}`);
|
|
263
263
|
});
|
|
264
264
|
} else {
|
|
265
265
|
oDeferred.resolve(that._oDefaultGroup);
|
|
@@ -283,19 +283,19 @@ sap.ui.define([
|
|
|
283
283
|
* @deprecated since 1.120
|
|
284
284
|
*/
|
|
285
285
|
this.addGroup = function (sTitle) {
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
286
|
+
const oDeferred = new jQuery.Deferred();
|
|
287
|
+
let sGeneratedId;
|
|
288
|
+
const that = this;
|
|
289
289
|
|
|
290
290
|
if (!this._isValidTitle(sTitle)) {
|
|
291
291
|
return oDeferred.reject("No valid group title").promise();
|
|
292
292
|
}
|
|
293
293
|
|
|
294
|
-
|
|
294
|
+
const sGenericErrorMessage = `Failed to add the group with title '${sTitle}' to the homepage. `;
|
|
295
295
|
|
|
296
296
|
// add group to site
|
|
297
297
|
this.oCDMService.getSite()
|
|
298
|
-
.done(
|
|
298
|
+
.done((oSite) => {
|
|
299
299
|
sGeneratedId = oUshellUtils.generateUniqueId(oReadHomePageUtils.getGroupIdsFromSite(oSite));
|
|
300
300
|
|
|
301
301
|
// append the group at the end
|
|
@@ -303,15 +303,15 @@ sap.ui.define([
|
|
|
303
303
|
|
|
304
304
|
// store personalization
|
|
305
305
|
that.oCDMService.save()
|
|
306
|
-
.done(
|
|
306
|
+
.done(() => {
|
|
307
307
|
delete that._ensureLoadedDeferred;
|
|
308
308
|
oDeferred.resolve(oSite.groups[sGeneratedId], sGeneratedId);
|
|
309
309
|
})
|
|
310
|
-
.fail(
|
|
310
|
+
.fail((sErrorMsg0) => {
|
|
311
311
|
oDeferred.reject(sErrorMsg0);
|
|
312
312
|
});
|
|
313
313
|
})
|
|
314
|
-
.fail(
|
|
314
|
+
.fail((sErrorMsg) => {
|
|
315
315
|
oDeferred.reject(sGenericErrorMessage + sErrorMsg);
|
|
316
316
|
});
|
|
317
317
|
|
|
@@ -331,8 +331,8 @@ sap.ui.define([
|
|
|
331
331
|
* @deprecated since 1.120
|
|
332
332
|
*/
|
|
333
333
|
this.setGroupTitle = function (oGroup, sNewTitle) {
|
|
334
|
-
|
|
335
|
-
|
|
334
|
+
const that = this;
|
|
335
|
+
const oDeferred = new jQuery.Deferred();
|
|
336
336
|
|
|
337
337
|
if (typeof oGroup !== "object" || !oReadHomePageUtils.getGroupId(oGroup)) {
|
|
338
338
|
return oDeferred.reject("Unexpected group value").promise();
|
|
@@ -340,29 +340,29 @@ sap.ui.define([
|
|
|
340
340
|
if (!that._isValidTitle(sNewTitle)) {
|
|
341
341
|
return oDeferred.reject("Unexpected oGroup title value").promise();
|
|
342
342
|
}
|
|
343
|
-
|
|
344
|
-
oReadHomePageUtils.getGroupId(oGroup)
|
|
343
|
+
const sGenericErrorMessage = `Failed to set new title for group with id '${
|
|
344
|
+
oReadHomePageUtils.getGroupId(oGroup)}'. `;
|
|
345
345
|
|
|
346
346
|
// necessary in case the renaming operation fails
|
|
347
|
-
|
|
347
|
+
const sOldTitle = oReadHomePageUtils.getGroupTitle(oGroup);
|
|
348
348
|
|
|
349
349
|
this.oCDMService.getSite()
|
|
350
|
-
.done(
|
|
350
|
+
.done((oSite) => {
|
|
351
351
|
// adapt title
|
|
352
352
|
if (oGroup) {
|
|
353
353
|
oModifyHomePageUtils.setGroupTitle(oGroup, sNewTitle);
|
|
354
354
|
}
|
|
355
355
|
// save personalization
|
|
356
356
|
that.oCDMService.save()
|
|
357
|
-
.done(
|
|
357
|
+
.done(() => {
|
|
358
358
|
oDeferred.resolve();
|
|
359
359
|
})
|
|
360
|
-
.fail(
|
|
360
|
+
.fail((sErrorMsg) => {
|
|
361
361
|
Log.error(sErrorMsg);
|
|
362
362
|
oDeferred.reject(sOldTitle);
|
|
363
363
|
});
|
|
364
364
|
})
|
|
365
|
-
.fail(
|
|
365
|
+
.fail((sError) => {
|
|
366
366
|
oDeferred.reject(sOldTitle, sGenericErrorMessage + sError);
|
|
367
367
|
});
|
|
368
368
|
|
|
@@ -383,28 +383,28 @@ sap.ui.define([
|
|
|
383
383
|
* @deprecated since 1.120
|
|
384
384
|
*/
|
|
385
385
|
this.hideGroups = function (aHiddenGroupIds) {
|
|
386
|
-
|
|
387
|
-
|
|
386
|
+
const oDeferred = new jQuery.Deferred();
|
|
387
|
+
const oCdmSiteService = this.oCDMService;
|
|
388
388
|
|
|
389
389
|
if (aHiddenGroupIds && Array.isArray(aHiddenGroupIds)) {
|
|
390
|
-
|
|
390
|
+
const sGenericErrorMessage = "Failed to hide group. ";
|
|
391
391
|
oCdmSiteService.getSite()
|
|
392
|
-
.done(
|
|
393
|
-
oReadHomePageUtils.getGroupsArrayFromSite(oSite).forEach(
|
|
394
|
-
|
|
392
|
+
.done((oSite) => {
|
|
393
|
+
oReadHomePageUtils.getGroupsArrayFromSite(oSite).forEach((oGroup) => {
|
|
394
|
+
const bIsInList = Array.prototype.indexOf.call(aHiddenGroupIds, oReadHomePageUtils.getGroupId(oGroup)) === -1;
|
|
395
395
|
oModifyHomePageUtils.setGroupVisibility(oGroup, bIsInList);
|
|
396
396
|
});
|
|
397
397
|
|
|
398
398
|
// persist personalization
|
|
399
399
|
oCdmSiteService.save()
|
|
400
|
-
.done(
|
|
400
|
+
.done(() => {
|
|
401
401
|
oDeferred.resolve();
|
|
402
402
|
})
|
|
403
|
-
.fail(
|
|
404
|
-
oDeferred.reject(
|
|
403
|
+
.fail((oErrorMsg0) => {
|
|
404
|
+
oDeferred.reject(`Hiding of groups did not work as expected - ${oErrorMsg0}`);
|
|
405
405
|
});
|
|
406
406
|
})
|
|
407
|
-
.fail(
|
|
407
|
+
.fail((sError) => {
|
|
408
408
|
oDeferred.reject(sGenericErrorMessage + sError);
|
|
409
409
|
});
|
|
410
410
|
} else {
|
|
@@ -427,19 +427,19 @@ sap.ui.define([
|
|
|
427
427
|
* @deprecated since 1.120
|
|
428
428
|
*/
|
|
429
429
|
this.moveGroup = function (oGroup, nNewIndex) {
|
|
430
|
-
|
|
431
|
-
|
|
430
|
+
const oDeferred = new jQuery.Deferred();
|
|
431
|
+
const oCdmSiteService = this.oCDMService;
|
|
432
432
|
|
|
433
433
|
if (!oGroup || !oReadHomePageUtils.getGroupId(oGroup) || nNewIndex < 0) {
|
|
434
434
|
return oDeferred.reject("Unable to move groups - invalid parameters").promise();
|
|
435
435
|
}
|
|
436
436
|
|
|
437
|
-
|
|
437
|
+
const sGenericErrorMessage = `Failed to move group with id '${oGroup.identification.id}'. `;
|
|
438
438
|
// move group inside the site object
|
|
439
439
|
oCdmSiteService.getSite()
|
|
440
|
-
.done(
|
|
441
|
-
|
|
442
|
-
|
|
440
|
+
.done((oSite) => {
|
|
441
|
+
const aGroupsOrder = oReadHomePageUtils.getGroupIdsFromSite(oSite);
|
|
442
|
+
const sGroupId = oReadHomePageUtils.getGroupId(oGroup);
|
|
443
443
|
|
|
444
444
|
if (!aGroupsOrder) {
|
|
445
445
|
return oDeferred.reject("groupsOrder not found - abort operation of adding a group.");
|
|
@@ -448,7 +448,7 @@ sap.ui.define([
|
|
|
448
448
|
}
|
|
449
449
|
|
|
450
450
|
// move group inside the groupsOrder array
|
|
451
|
-
|
|
451
|
+
const aGroupsOrderAfterMove = oUshellUtils.moveElementInsideOfArray(aGroupsOrder, aGroupsOrder.indexOf(sGroupId), nNewIndex);
|
|
452
452
|
|
|
453
453
|
if (!aGroupsOrderAfterMove) {
|
|
454
454
|
return oDeferred.reject("invalid move group operation - abort.");
|
|
@@ -458,15 +458,15 @@ sap.ui.define([
|
|
|
458
458
|
|
|
459
459
|
// store personalization
|
|
460
460
|
oCdmSiteService.save()
|
|
461
|
-
.done(
|
|
461
|
+
.done(() => {
|
|
462
462
|
oDeferred.resolve();
|
|
463
463
|
})
|
|
464
|
-
.fail(
|
|
464
|
+
.fail((sErrorMsg) => {
|
|
465
465
|
oDeferred.reject(sErrorMsg);
|
|
466
466
|
});
|
|
467
467
|
return undefined;
|
|
468
468
|
})
|
|
469
|
-
.fail(
|
|
469
|
+
.fail((sError) => {
|
|
470
470
|
oDeferred.reject(sGenericErrorMessage + sError);
|
|
471
471
|
});
|
|
472
472
|
return oDeferred.promise();
|
|
@@ -483,33 +483,33 @@ sap.ui.define([
|
|
|
483
483
|
* @deprecated since 1.120
|
|
484
484
|
*/
|
|
485
485
|
this.removeGroup = function (oGroup) {
|
|
486
|
-
|
|
487
|
-
|
|
486
|
+
const oDeferred = new jQuery.Deferred();
|
|
487
|
+
const oCdmSiteService = this.oCDMService;
|
|
488
488
|
|
|
489
489
|
if (typeof oGroup !== "object") {
|
|
490
490
|
return oDeferred.reject("invalid group parameter").promise();
|
|
491
491
|
}
|
|
492
|
-
|
|
492
|
+
const sGroupId = oReadHomePageUtils.getGroupId(oGroup);
|
|
493
493
|
if (!sGroupId) {
|
|
494
494
|
return oDeferred.reject("group without id given").promise();
|
|
495
495
|
}
|
|
496
496
|
|
|
497
|
-
|
|
497
|
+
const sGenericErrorMessage = `Failed to remove group with id '${sGroupId}'. `;
|
|
498
498
|
|
|
499
499
|
// remove group from site object
|
|
500
500
|
oCdmSiteService.getSite()
|
|
501
|
-
.done(
|
|
501
|
+
.done((oSite) => {
|
|
502
502
|
oModifyHomePageUtils.removeGroupFromSite(oSite, oGroup);
|
|
503
503
|
|
|
504
504
|
oCdmSiteService.save()
|
|
505
|
-
.done(
|
|
505
|
+
.done(() => {
|
|
506
506
|
oDeferred.resolve();
|
|
507
507
|
})
|
|
508
|
-
.fail(
|
|
508
|
+
.fail((sErrorMsg) => {
|
|
509
509
|
oDeferred.reject(sErrorMsg);
|
|
510
510
|
});
|
|
511
511
|
})
|
|
512
|
-
.fail(
|
|
512
|
+
.fail((sError) => {
|
|
513
513
|
oDeferred.reject(sGenericErrorMessage + sError);
|
|
514
514
|
});
|
|
515
515
|
|
|
@@ -529,22 +529,22 @@ sap.ui.define([
|
|
|
529
529
|
* @deprecated since 1.120
|
|
530
530
|
*/
|
|
531
531
|
this.resetGroup = function (oGroup) {
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
532
|
+
const oDeferred = new jQuery.Deferred();
|
|
533
|
+
const oCdmSiteService = this.oCDMService;
|
|
534
|
+
const aSiteGroupsBackup = [];
|
|
535
|
+
const that = this;
|
|
536
536
|
|
|
537
537
|
if (typeof oGroup === "object" && oReadHomePageUtils.getGroupId(oGroup)) {
|
|
538
|
-
|
|
539
|
-
|
|
538
|
+
const sGroupId = oReadHomePageUtils.getGroupId(oGroup);
|
|
539
|
+
const sGenericErrorMessage = `Failed to reset group with id '${sGroupId}'. `;
|
|
540
540
|
|
|
541
541
|
oCdmSiteService.getSite()
|
|
542
|
-
.done(
|
|
542
|
+
.done((oSite) => {
|
|
543
543
|
deepExtend(aSiteGroupsBackup, oReadHomePageUtils.getGroupsArrayFromSite(oSite));
|
|
544
544
|
|
|
545
545
|
if (that.isGroupRemovable(oGroup) === false) {
|
|
546
546
|
oCdmSiteService.getGroupFromOriginalSite(sGroupId)
|
|
547
|
-
.done(
|
|
547
|
+
.done((oGroupFromOriginalSite) => {
|
|
548
548
|
// overwrite respective group in site with the one returned by the original site
|
|
549
549
|
if (typeof oSite === "object" && oReadHomePageUtils.getGroupFromSite(oSite, sGroupId)) {
|
|
550
550
|
oModifyHomePageUtils.overwriteGroup(oSite, oGroupFromOriginalSite, sGroupId);
|
|
@@ -552,21 +552,21 @@ sap.ui.define([
|
|
|
552
552
|
|
|
553
553
|
// persist personalization
|
|
554
554
|
oCdmSiteService.save()
|
|
555
|
-
.done(
|
|
555
|
+
.done(() => {
|
|
556
556
|
oDeferred.resolve(oGroupFromOriginalSite);
|
|
557
557
|
})
|
|
558
|
-
.fail(
|
|
559
|
-
oDeferred.reject(
|
|
558
|
+
.fail((sErrorMsg1) => {
|
|
559
|
+
oDeferred.reject(`Group could not be reset - ${sErrorMsg1}`, aSiteGroupsBackup);
|
|
560
560
|
});
|
|
561
561
|
})
|
|
562
|
-
.fail(
|
|
563
|
-
oDeferred.reject(
|
|
562
|
+
.fail((sErrorMsg) => {
|
|
563
|
+
oDeferred.reject(`Group could not be reset - ${sErrorMsg}`, aSiteGroupsBackup);
|
|
564
564
|
});
|
|
565
565
|
} else {
|
|
566
566
|
oDeferred.reject("Group could not be reset as it was created by the user", aSiteGroupsBackup);
|
|
567
567
|
}
|
|
568
568
|
})
|
|
569
|
-
.fail(
|
|
569
|
+
.fail((sError) => {
|
|
570
570
|
// reject with the original groups cannot be done in this case as
|
|
571
571
|
// loading of site failed
|
|
572
572
|
oDeferred.reject(sGenericErrorMessage + sError, []);
|
|
@@ -602,7 +602,7 @@ sap.ui.define([
|
|
|
602
602
|
* supported, and <code>false</code> if not.
|
|
603
603
|
* @deprecated since 1.120
|
|
604
604
|
*/
|
|
605
|
-
this.isLinkPersonalizationSupported = function (/*oTile*/) {
|
|
605
|
+
this.isLinkPersonalizationSupported = function (/* oTile */) {
|
|
606
606
|
return true;
|
|
607
607
|
};
|
|
608
608
|
|
|
@@ -629,7 +629,7 @@ sap.ui.define([
|
|
|
629
629
|
* @deprecated since 1.120
|
|
630
630
|
*/
|
|
631
631
|
this.refreshTile = function (oTile) {
|
|
632
|
-
|
|
632
|
+
const oResolvedTile = this._mResolvedTiles[oTile.id];
|
|
633
633
|
|
|
634
634
|
if (oResolvedTile) {
|
|
635
635
|
if (oResolvedTile.tileComponent) {
|
|
@@ -670,12 +670,12 @@ sap.ui.define([
|
|
|
670
670
|
* @deprecated since 1.120
|
|
671
671
|
*/
|
|
672
672
|
this.getTileView = function (oGroupTile) {
|
|
673
|
-
|
|
674
|
-
return new jQuery.Deferred(
|
|
675
|
-
return that._getTileView(oGroupTile, false).then(
|
|
673
|
+
const that = this;
|
|
674
|
+
return new jQuery.Deferred((oDeferred) => {
|
|
675
|
+
return that._getTileView(oGroupTile, false).then((oTileUI) => {
|
|
676
676
|
oDeferred.resolve(oTileUI);
|
|
677
|
-
},
|
|
678
|
-
|
|
677
|
+
}, (sReason) => {
|
|
678
|
+
const sErrorMessage = `Tile with ID '${oGroupTile.id}' could not be initialized${sReason ? `:\n${sReason}` : "."}`;
|
|
679
679
|
|
|
680
680
|
Log.error(sErrorMessage, null, oGroupTile.tileType);
|
|
681
681
|
oDeferred.reject(sErrorMessage);
|
|
@@ -695,10 +695,10 @@ sap.ui.define([
|
|
|
695
695
|
* @private
|
|
696
696
|
*/
|
|
697
697
|
this._getCatalogTileViewControl = function (oCatalogTile) {
|
|
698
|
-
|
|
698
|
+
const oDeferred = new jQuery.Deferred();
|
|
699
699
|
|
|
700
700
|
if (typeof oCatalogTile !== "object") {
|
|
701
|
-
|
|
701
|
+
const sErrorMessage = `Invalid input parameter passed to _getCatalogTileView: ${oCatalogTile}`;
|
|
702
702
|
Log.error(sErrorMessage);
|
|
703
703
|
return oDeferred.reject(sErrorMessage).promise();
|
|
704
704
|
}
|
|
@@ -727,10 +727,10 @@ sap.ui.define([
|
|
|
727
727
|
* @private
|
|
728
728
|
*/
|
|
729
729
|
this._createLinkInstance = function (oTile, bIsCatalogTile, sNavigationMode, fnGenericTile, oResources) {
|
|
730
|
-
|
|
731
|
-
|
|
730
|
+
let sTileTitle;
|
|
731
|
+
const sTileSubTitle = this.getTileSubtitle(oTile);
|
|
732
732
|
|
|
733
|
-
|
|
733
|
+
const GenericTile = fnGenericTile;
|
|
734
734
|
|
|
735
735
|
// should only be called after tile has been resolved
|
|
736
736
|
if (bIsCatalogTile === true) {
|
|
@@ -740,27 +740,27 @@ sap.ui.define([
|
|
|
740
740
|
}
|
|
741
741
|
|
|
742
742
|
// By using the LineMode, the GenericTile is displayed as a Link
|
|
743
|
-
|
|
743
|
+
const linkTileControl = new GenericTile({
|
|
744
744
|
mode: oGenericTileMode.LineMode,
|
|
745
745
|
subheader: sTileSubTitle,
|
|
746
746
|
header: sTileTitle,
|
|
747
747
|
url: WindowUtils.getLeanURL(this.getTileTarget(oTile)),
|
|
748
|
-
//TODO: The below code is for POC only, should be removed once UI5 provide action buttons for line mode
|
|
748
|
+
// TODO: The below code is for POC only, should be removed once UI5 provide action buttons for line mode
|
|
749
749
|
press: function (oEvent) {
|
|
750
750
|
this._genericTilePressHandler(oTile, oEvent);
|
|
751
751
|
}.bind(this)
|
|
752
752
|
});
|
|
753
753
|
if (sNavigationMode) {
|
|
754
|
-
|
|
755
|
-
//According to ACC-257 aria-label should start with the navigation mode, then the tile content
|
|
756
|
-
linkTileControl.setAriaLabel(sTranslatedNavMode
|
|
754
|
+
const sTranslatedNavMode = oResources.i18n.getText(`${sNavigationMode}NavigationMode`);
|
|
755
|
+
// According to ACC-257 aria-label should start with the navigation mode, then the tile content
|
|
756
|
+
linkTileControl.setAriaLabel(`${sTranslatedNavMode} ${sTileTitle} ${sTileSubTitle}`);
|
|
757
757
|
}
|
|
758
758
|
this._mResolvedTiles[oTile.id].linkTileControl = linkTileControl;
|
|
759
759
|
return linkTileControl;
|
|
760
760
|
};
|
|
761
761
|
|
|
762
762
|
this._genericTilePressHandler = function (oTile, oEvent) {
|
|
763
|
-
|
|
763
|
+
let sTargetURL;
|
|
764
764
|
|
|
765
765
|
if (oEvent.getSource().getScope && oEvent.getSource().getScope() === "Display") {
|
|
766
766
|
sTargetURL = this.getTileTarget(oTile);
|
|
@@ -781,6 +781,85 @@ sap.ui.define([
|
|
|
781
781
|
}
|
|
782
782
|
};
|
|
783
783
|
|
|
784
|
+
/**
|
|
785
|
+
* Updates the properties of a bookmark tile during its composition.
|
|
786
|
+
* @param {object} oTile JSON Object that holds the properties of a bookmark tile.
|
|
787
|
+
* @param {object} oParameters Properties to merge into the bookmark tile
|
|
788
|
+
* @param {object} oTarget The navigation target as a JSON object.
|
|
789
|
+
*
|
|
790
|
+
* @deprecated since 1.120
|
|
791
|
+
*/
|
|
792
|
+
function updateTileComposition (oTile, oParameters, oTarget) {
|
|
793
|
+
// Avoid modifying callers reference.
|
|
794
|
+
oParameters = deepExtend({}, oParameters);
|
|
795
|
+
|
|
796
|
+
if (oTarget) {
|
|
797
|
+
oTile.target = oTarget;
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
if (oParameters.title || oParameters.title === "") {
|
|
801
|
+
oTile.title = oParameters.title;
|
|
802
|
+
}
|
|
803
|
+
|
|
804
|
+
if (oParameters.icon || oParameters.icon === "") {
|
|
805
|
+
oTile.icon = oParameters.icon;
|
|
806
|
+
}
|
|
807
|
+
|
|
808
|
+
if (oParameters.subtitle || oParameters.subtitle === "") {
|
|
809
|
+
oTile.subTitle = oParameters.subtitle;
|
|
810
|
+
}
|
|
811
|
+
|
|
812
|
+
if (oParameters.info || oParameters.info === "") {
|
|
813
|
+
oTile.info = oParameters.info;
|
|
814
|
+
}
|
|
815
|
+
|
|
816
|
+
if (oParameters.numberUnit || oParameters.numberUnit === "") {
|
|
817
|
+
oTile.numberUnit = oParameters.numberUnit;
|
|
818
|
+
}
|
|
819
|
+
|
|
820
|
+
if (oParameters.dataSource) {
|
|
821
|
+
oTile.dataSource = {
|
|
822
|
+
type: oParameters.dataSource.type,
|
|
823
|
+
settings: {
|
|
824
|
+
odataVersion: ObjectPath.get(["dataSource", "settings", "odataVersion"], oParameters)
|
|
825
|
+
}
|
|
826
|
+
};
|
|
827
|
+
}
|
|
828
|
+
|
|
829
|
+
if (oParameters.serviceUrl) {
|
|
830
|
+
oTile.indicatorDataSource = {
|
|
831
|
+
path: oParameters.serviceUrl
|
|
832
|
+
};
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
if (oTile.indicatorDataSource && (oParameters.serviceRefreshInterval || oParameters.serviceRefreshInterval === 0)) {
|
|
836
|
+
oTile.indicatorDataSource.refresh = oParameters.serviceRefreshInterval;
|
|
837
|
+
}
|
|
838
|
+
|
|
839
|
+
if (oParameters.vizConfig) {
|
|
840
|
+
oTile.vizConfig = oParameters.vizConfig;
|
|
841
|
+
}
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
/**
|
|
845
|
+
* Compose a new tile
|
|
846
|
+
* @param {object} oParameters Parameters
|
|
847
|
+
* @param {object} oTarget Target
|
|
848
|
+
* @returns {object} Tile
|
|
849
|
+
* @deprecated since 1.120
|
|
850
|
+
*/
|
|
851
|
+
function composeNewTile (oParameters, oTarget) {
|
|
852
|
+
// TODO Collect all tile ids to pass them as an arry to
|
|
853
|
+
// generateUniqueId
|
|
854
|
+
const oTile = {
|
|
855
|
+
id: oUshellUtils.generateUniqueId([])
|
|
856
|
+
};
|
|
857
|
+
|
|
858
|
+
updateTileComposition(oTile, oParameters, oTarget);
|
|
859
|
+
|
|
860
|
+
return oTile;
|
|
861
|
+
}
|
|
862
|
+
|
|
784
863
|
/**
|
|
785
864
|
* Adds a tile to the homepage. Furthermore the personalization will be
|
|
786
865
|
* persisted for the end user.
|
|
@@ -797,14 +876,14 @@ sap.ui.define([
|
|
|
797
876
|
* @deprecated since 1.120
|
|
798
877
|
*/
|
|
799
878
|
this.addTile = function (oCatalogTile, oGroup) {
|
|
800
|
-
|
|
801
|
-
|
|
879
|
+
const oDeferred = new jQuery.Deferred();
|
|
880
|
+
const oCdmSiteService = this.oCDMService;
|
|
802
881
|
|
|
803
882
|
if (!oGroup) {
|
|
804
883
|
oGroup = this._oDefaultGroup;
|
|
805
884
|
}
|
|
806
885
|
|
|
807
|
-
|
|
886
|
+
const oGroupTile = composeNewTile();
|
|
808
887
|
oGroupTile.vizId = oCatalogTile.vizId;
|
|
809
888
|
|
|
810
889
|
// add new tile to list of resolved tiles
|
|
@@ -814,22 +893,22 @@ sap.ui.define([
|
|
|
814
893
|
isLink: false
|
|
815
894
|
};
|
|
816
895
|
oCdmSiteService.getSite()
|
|
817
|
-
.done(
|
|
896
|
+
.done((oSite) => {
|
|
818
897
|
// We should think about the reasons why it's not safe to
|
|
819
898
|
// do the following, even though it's more succint:
|
|
820
899
|
// oGroup.payload.tiles.push(oTile);
|
|
821
900
|
oSite.groups[oGroup.identification.id].payload.tiles.push(oGroupTile);
|
|
822
901
|
oCdmSiteService.save()
|
|
823
|
-
.done(
|
|
902
|
+
.done(() => {
|
|
824
903
|
oDeferred.resolve(oGroupTile);
|
|
825
904
|
})
|
|
826
|
-
.fail(
|
|
905
|
+
.fail((sReason) => {
|
|
827
906
|
oDeferred.reject(sReason);
|
|
828
907
|
});
|
|
829
908
|
})
|
|
830
|
-
.fail(
|
|
831
|
-
|
|
832
|
-
|
|
909
|
+
.fail((sError) => {
|
|
910
|
+
const sGenericErrorMessage = `Failed to add tile with id '${oGroupTile.id
|
|
911
|
+
}' to group with id '${oGroup.identification.id}'. `;
|
|
833
912
|
oDeferred.reject(sGenericErrorMessage + sError);
|
|
834
913
|
});
|
|
835
914
|
|
|
@@ -852,20 +931,20 @@ sap.ui.define([
|
|
|
852
931
|
* @deprecated since 1.120
|
|
853
932
|
*/
|
|
854
933
|
this.removeTile = function (oGroup, oTile, iIndex) {
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
934
|
+
const oCdmSiteService = this.oCDMService;
|
|
935
|
+
const oDeferred = new jQuery.Deferred();
|
|
936
|
+
const that = this;
|
|
858
937
|
|
|
859
938
|
if (!oGroup || typeof oGroup !== "object" || !oGroup.identification || !oGroup.identification.id ||
|
|
860
939
|
!oTile || typeof oTile !== "object" || !oTile.id) {
|
|
861
940
|
return oDeferred.reject({}, "Failed to remove tile. No valid input parameters passed to removeTile method.").promise();
|
|
862
941
|
}
|
|
863
942
|
|
|
864
|
-
|
|
943
|
+
const sGenericErrorMessage = `Failed to remove tile with id '${oTile.id}' from group with id '${oGroup.identification.id}'. `;
|
|
865
944
|
|
|
866
945
|
oCdmSiteService.getSite()
|
|
867
|
-
.done(
|
|
868
|
-
|
|
946
|
+
.done((oSite) => {
|
|
947
|
+
let oPayload;
|
|
869
948
|
|
|
870
949
|
// succinctly convert iIndex to number
|
|
871
950
|
iIndex = +iIndex;
|
|
@@ -876,10 +955,10 @@ sap.ui.define([
|
|
|
876
955
|
oDeferred.reject(oSite.groups[oGroup.identification.id], sGenericErrorMessage);
|
|
877
956
|
}
|
|
878
957
|
|
|
879
|
-
//according to the tile type set oPayload tile / links to be truncated.
|
|
880
|
-
|
|
958
|
+
// according to the tile type set oPayload tile / links to be truncated.
|
|
959
|
+
const sPayloadType = that.getTileType(oTile) === that.TileType.Link ? "links" : "tiles";
|
|
881
960
|
|
|
882
|
-
//In case the target is a link convert the iTargetIndex to the index of links payload.
|
|
961
|
+
// In case the target is a link convert the iTargetIndex to the index of links payload.
|
|
883
962
|
if (that.getTileType(oTile) === that.TileType.Link) {
|
|
884
963
|
iIndex -= oPayload.tiles.length;
|
|
885
964
|
}
|
|
@@ -888,21 +967,21 @@ sap.ui.define([
|
|
|
888
967
|
// remove element in group
|
|
889
968
|
oPayload[sPayloadType].splice(iIndex, 1);
|
|
890
969
|
} else {
|
|
891
|
-
oPayload[sPayloadType] = oPayload[sPayloadType].filter(
|
|
970
|
+
oPayload[sPayloadType] = oPayload[sPayloadType].filter((oGroupElement) => {
|
|
892
971
|
return oGroupElement.id !== oTile.id;
|
|
893
972
|
});
|
|
894
973
|
}
|
|
895
974
|
|
|
896
975
|
oCdmSiteService.save()
|
|
897
|
-
.done(
|
|
976
|
+
.done(() => {
|
|
898
977
|
oDeferred.resolve();
|
|
899
978
|
})
|
|
900
|
-
.fail(
|
|
979
|
+
.fail((sErrorMsg) => {
|
|
901
980
|
Log.error(sErrorMsg);
|
|
902
981
|
oDeferred.reject(oSite.groups[oGroup.identification.id], sErrorMsg);
|
|
903
982
|
});
|
|
904
983
|
})
|
|
905
|
-
.fail(
|
|
984
|
+
.fail((sError) => {
|
|
906
985
|
// Reject an empty group object, as site with correct group data could not get accessed
|
|
907
986
|
oDeferred.reject({}, sGenericErrorMessage + sError);
|
|
908
987
|
});
|
|
@@ -932,9 +1011,9 @@ sap.ui.define([
|
|
|
932
1011
|
* @deprecated since 1.120
|
|
933
1012
|
*/
|
|
934
1013
|
this.moveTile = function (oTile, iSourceIndex, iTargetIndex, oSourceGroup, oTargetGroup, newTileType) {
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
1014
|
+
const oDeferred = new jQuery.Deferred();
|
|
1015
|
+
const oCdmSiteService = this.oCDMService;
|
|
1016
|
+
const that = this;
|
|
938
1017
|
|
|
939
1018
|
if (!oTile || isEmptyObject(oTile) ||
|
|
940
1019
|
iSourceIndex === undefined || iSourceIndex < 0 ||
|
|
@@ -944,30 +1023,30 @@ sap.ui.define([
|
|
|
944
1023
|
return oDeferred.reject("Invalid input parameters").promise();
|
|
945
1024
|
}
|
|
946
1025
|
|
|
947
|
-
|
|
1026
|
+
const sGenericErrorMessage = `Failed to move tile with id '${oTile.id}'. `;
|
|
948
1027
|
|
|
949
1028
|
oCdmSiteService.getSite()
|
|
950
|
-
.done(
|
|
951
|
-
|
|
1029
|
+
.done((oSite) => {
|
|
1030
|
+
const sOrigTileType = that.getTileType(oTile) === that.TileType.Link ? "links" : "tiles";
|
|
952
1031
|
|
|
953
|
-
//if newTileType is not defined convert to the same type.
|
|
1032
|
+
// if newTileType is not defined convert to the same type.
|
|
954
1033
|
if (!newTileType) {
|
|
955
1034
|
newTileType = that._mResolvedTiles[oTile.id].isLink ? "link" : "tile";
|
|
956
1035
|
}
|
|
957
1036
|
|
|
958
|
-
|
|
1037
|
+
const sTargetPayloadType = newTileType === "link" ? "links" : "tiles";
|
|
959
1038
|
|
|
960
1039
|
// change the _mResolvedTiles tile type.
|
|
961
1040
|
if (sOrigTileType !== sTargetPayloadType && that._mResolvedTiles[oTile.id]) {
|
|
962
1041
|
that._mResolvedTiles[oTile.id].isLink = newTileType === "link"; // currently only bookmark tiles can be created
|
|
963
1042
|
}
|
|
964
1043
|
|
|
965
|
-
//In case the target is a link convert the iTargetIndex to the index of links payload.
|
|
1044
|
+
// In case the target is a link convert the iTargetIndex to the index of links payload.
|
|
966
1045
|
if (sTargetPayloadType === "links") {
|
|
967
1046
|
iTargetIndex -= oSite.groups[oTargetGroup.identification.id].payload.tiles.length;
|
|
968
1047
|
}
|
|
969
1048
|
|
|
970
|
-
//In case the source is a link convert the index to the index of links payload.
|
|
1049
|
+
// In case the source is a link convert the index to the index of links payload.
|
|
971
1050
|
if (sOrigTileType === "links") {
|
|
972
1051
|
iSourceIndex -= oSite.groups[oSourceGroup.identification.id].payload.tiles.length;
|
|
973
1052
|
}
|
|
@@ -976,7 +1055,7 @@ sap.ui.define([
|
|
|
976
1055
|
if (oSourceGroup.identification.id === oTargetGroup.identification.id) {
|
|
977
1056
|
// within a group
|
|
978
1057
|
if (iSourceIndex !== iTargetIndex || sOrigTileType !== sTargetPayloadType) {
|
|
979
|
-
|
|
1058
|
+
const oGroupPayload = oSite.groups[oTargetGroup.identification.id].payload;
|
|
980
1059
|
oGroupPayload[sOrigTileType].splice(iSourceIndex, 1); // remove tile at source index
|
|
981
1060
|
oGroupPayload[sTargetPayloadType].splice(iTargetIndex, 0, oTile); // add tile at target index
|
|
982
1061
|
} else {
|
|
@@ -990,16 +1069,16 @@ sap.ui.define([
|
|
|
990
1069
|
}
|
|
991
1070
|
|
|
992
1071
|
oCdmSiteService.save()
|
|
993
|
-
.done(
|
|
1072
|
+
.done(() => {
|
|
994
1073
|
oDeferred.resolve(oTile);
|
|
995
1074
|
})
|
|
996
|
-
.fail(
|
|
1075
|
+
.fail((sError) => {
|
|
997
1076
|
Log.error(sGenericErrorMessage + sError);
|
|
998
1077
|
oDeferred.reject(sGenericErrorMessage + sError);
|
|
999
1078
|
});
|
|
1000
1079
|
return undefined;
|
|
1001
1080
|
})
|
|
1002
|
-
.fail(
|
|
1081
|
+
.fail((sError) => {
|
|
1003
1082
|
Log.error(sGenericErrorMessage + sError);
|
|
1004
1083
|
oDeferred.reject(sGenericErrorMessage + sError);
|
|
1005
1084
|
});
|
|
@@ -1033,21 +1112,21 @@ sap.ui.define([
|
|
|
1033
1112
|
* the order with which the catalogs are returned.
|
|
1034
1113
|
*/
|
|
1035
1114
|
this.getCatalogs = function () {
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1115
|
+
const that = this;
|
|
1116
|
+
const oDeferred = new jQuery.Deferred();
|
|
1117
|
+
const aCatalogs = [];
|
|
1039
1118
|
|
|
1040
1119
|
function processCatalog (oCdmSite, sCatalogId, aCatalogs, oGetCatalogsDeferred) {
|
|
1041
|
-
|
|
1120
|
+
const oCatalog = oCdmSite.catalogs[sCatalogId];
|
|
1042
1121
|
aCatalogs.push(oCatalog);
|
|
1043
1122
|
oGetCatalogsDeferred.notify(oCatalog);
|
|
1044
1123
|
}
|
|
1045
1124
|
|
|
1046
1125
|
// setTimeout is required here. Otherwise the the oDeferred.notify() would
|
|
1047
1126
|
// be a synchronous call, which would cause wrong behavior in some scenarios
|
|
1048
|
-
Container.getServiceAsync("CommonDataModel").then(
|
|
1049
|
-
oCDMSiteService.getSite().done(
|
|
1050
|
-
Object.keys(oSite.catalogs).forEach(
|
|
1127
|
+
Container.getServiceAsync("CommonDataModel").then((oCDMSiteService) => {
|
|
1128
|
+
oCDMSiteService.getSite().done((oSite) => {
|
|
1129
|
+
Object.keys(oSite.catalogs).forEach((sCatalogId) => {
|
|
1051
1130
|
processCatalog(oSite, sCatalogId, aCatalogs, oDeferred);
|
|
1052
1131
|
});
|
|
1053
1132
|
// In our tests we use indices to access specific
|
|
@@ -1079,11 +1158,11 @@ sap.ui.define([
|
|
|
1079
1158
|
return false;
|
|
1080
1159
|
}
|
|
1081
1160
|
|
|
1082
|
-
|
|
1161
|
+
const aNonStartableInbounds = [
|
|
1083
1162
|
"Shell-plugin",
|
|
1084
1163
|
"Shell-bootConfig" // just in case
|
|
1085
1164
|
];
|
|
1086
|
-
if (aNonStartableInbounds.indexOf(oInbound.semanticObject
|
|
1165
|
+
if (aNonStartableInbounds.indexOf(`${oInbound.semanticObject}-${oInbound.action}`) > -1) {
|
|
1087
1166
|
// This is a special intent which is not startable
|
|
1088
1167
|
return false;
|
|
1089
1168
|
}
|
|
@@ -1104,16 +1183,16 @@ sap.ui.define([
|
|
|
1104
1183
|
* @private
|
|
1105
1184
|
*/
|
|
1106
1185
|
this._isStartableVisualization = function (oVisualization, oInbound) {
|
|
1107
|
-
|
|
1186
|
+
const oInboundParameters = ObjectPath.get("signature.parameters", oInbound);
|
|
1108
1187
|
if (!oInboundParameters) {
|
|
1109
1188
|
return true;
|
|
1110
1189
|
}
|
|
1111
1190
|
|
|
1112
|
-
|
|
1191
|
+
const oVisualizationParameters = ObjectPath.get("parameters", oReadVisualization.getTarget(oVisualization));
|
|
1113
1192
|
|
|
1114
1193
|
// check for matching filter parameters
|
|
1115
|
-
return Object.keys(oInboundParameters).every(
|
|
1116
|
-
|
|
1194
|
+
return Object.keys(oInboundParameters).every((sInboundParameter) => {
|
|
1195
|
+
const oInboundParameter = oInboundParameters[sInboundParameter];
|
|
1117
1196
|
|
|
1118
1197
|
// don't filter out legacy URL applications that use the intent Shell-launchURL to model URL tiles
|
|
1119
1198
|
if (sInboundParameter === "sap-external-url") {
|
|
@@ -1126,8 +1205,8 @@ sap.ui.define([
|
|
|
1126
1205
|
return true;
|
|
1127
1206
|
}
|
|
1128
1207
|
|
|
1129
|
-
|
|
1130
|
-
|
|
1208
|
+
const sExpectedFilterValue = oInboundParameter.filter.value;
|
|
1209
|
+
const sSuppliedParameterValue = ObjectPath.get([sInboundParameter, "value", "value"], oVisualizationParameters);
|
|
1131
1210
|
|
|
1132
1211
|
if (sExpectedFilterValue !== sSuppliedParameterValue) {
|
|
1133
1212
|
return false;
|
|
@@ -1154,12 +1233,12 @@ sap.ui.define([
|
|
|
1154
1233
|
* @private
|
|
1155
1234
|
*/
|
|
1156
1235
|
this._toHashFromInbound = function (oInbound) {
|
|
1157
|
-
|
|
1236
|
+
const sConstructedHash = oUtilsCdm.toHashFromInbound(oInbound);
|
|
1158
1237
|
|
|
1159
1238
|
if (!sConstructedHash) {
|
|
1160
1239
|
return undefined;
|
|
1161
1240
|
}
|
|
1162
|
-
return
|
|
1241
|
+
return `#${sConstructedHash}`;
|
|
1163
1242
|
};
|
|
1164
1243
|
|
|
1165
1244
|
/**
|
|
@@ -1191,88 +1270,49 @@ sap.ui.define([
|
|
|
1191
1270
|
* @private
|
|
1192
1271
|
*/
|
|
1193
1272
|
this._toHashFromOutbound = function (oOutbound) {
|
|
1194
|
-
|
|
1273
|
+
const sConstructedHash = oUtilsCdm.toHashFromOutbound(oOutbound);
|
|
1195
1274
|
|
|
1196
1275
|
if (!sConstructedHash) {
|
|
1197
1276
|
return undefined;
|
|
1198
1277
|
}
|
|
1199
|
-
return
|
|
1200
|
-
};
|
|
1201
|
-
|
|
1202
|
-
/**
|
|
1203
|
-
* Delivers the catalog tiles for a given catalog
|
|
1204
|
-
*
|
|
1205
|
-
* @param {object} oCatalog
|
|
1206
|
-
* Catalog
|
|
1207
|
-
* @returns {jQuery.Promise}
|
|
1208
|
-
* In case of success the done handler will be called with an array
|
|
1209
|
-
* of catalog tiles.
|
|
1210
|
-
*/
|
|
1211
|
-
this.getCatalogTiles = function (oCatalog) {
|
|
1212
|
-
var that = this;
|
|
1213
|
-
var oDeferred = new jQuery.Deferred();
|
|
1214
|
-
|
|
1215
|
-
if (typeof oCatalog !== "object" || oCatalog === null) {
|
|
1216
|
-
return oDeferred.reject("Invalid input parameter '" + oCatalog + "' passed to getCatalogTiles.").promise();
|
|
1217
|
-
}
|
|
1218
|
-
|
|
1219
|
-
// Direct open of search calls getCatalogTiles before the adapter is intialized, do not use this.oCDMService
|
|
1220
|
-
this.oCDMServicePromise.then(function (oCDMService) {
|
|
1221
|
-
oCDMService.getSite()
|
|
1222
|
-
.done(function (oSite) {
|
|
1223
|
-
getCatalogTilesFromSite.call(that, oCatalog, oSite)
|
|
1224
|
-
.done(oDeferred.resolve)
|
|
1225
|
-
.fail(oDeferred.reject);
|
|
1226
|
-
})
|
|
1227
|
-
.fail(function (sErrorMessage2) {
|
|
1228
|
-
oDeferred.reject("Failed to get site: " + sErrorMessage2);
|
|
1229
|
-
});
|
|
1230
|
-
});
|
|
1231
|
-
|
|
1232
|
-
return oDeferred.promise();
|
|
1278
|
+
return `#${sConstructedHash}`;
|
|
1233
1279
|
};
|
|
1234
1280
|
|
|
1235
1281
|
function getCatalogTilesFromSite (oCatalog, oSite) {
|
|
1236
|
-
|
|
1237
|
-
|
|
1282
|
+
const that = this;
|
|
1283
|
+
const oDeferred = new jQuery.Deferred();
|
|
1238
1284
|
|
|
1239
|
-
setTimeout(
|
|
1285
|
+
setTimeout(() => {
|
|
1240
1286
|
// calculate async
|
|
1241
|
-
|
|
1242
|
-
.reduce(
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
var sExternalUrl;
|
|
1256
|
-
var sApplicationType;
|
|
1257
|
-
var sAdditionalInformation;
|
|
1258
|
-
var bIsApplicationTypeConfiguredInPlace;
|
|
1259
|
-
var oEnableInPlaceForClassicUIsConfig;
|
|
1260
|
-
var aTechnicalAttributes;
|
|
1287
|
+
const aCatalogTiles = ((oCatalog.payload && oCatalog.payload.viz) || [])
|
|
1288
|
+
.reduce((aReturnedCatalogTiles, sVisualizationId) => {
|
|
1289
|
+
let oAppDescriptor;
|
|
1290
|
+
let oInboundResult;
|
|
1291
|
+
let sHash;
|
|
1292
|
+
let oMapped;
|
|
1293
|
+
let sNavigationMode;
|
|
1294
|
+
let oOutbound;
|
|
1295
|
+
let sExternalUrl;
|
|
1296
|
+
let sApplicationType;
|
|
1297
|
+
let sAdditionalInformation;
|
|
1298
|
+
let bIsApplicationTypeConfiguredInPlace;
|
|
1299
|
+
let oEnableInPlaceForClassicUIsConfig;
|
|
1300
|
+
let aTechnicalAttributes;
|
|
1261
1301
|
|
|
1262
1302
|
// Get visualization and type
|
|
1263
1303
|
if (!sVisualizationId) {
|
|
1264
1304
|
return aReturnedCatalogTiles;
|
|
1265
1305
|
}
|
|
1266
1306
|
|
|
1267
|
-
oVisualization = oReadVisualization.get(oSite, sVisualizationId);
|
|
1307
|
+
const oVisualization = oReadVisualization.get(oSite, sVisualizationId);
|
|
1268
1308
|
if (!oVisualization) {
|
|
1269
1309
|
return aReturnedCatalogTiles;
|
|
1270
1310
|
}
|
|
1271
1311
|
|
|
1272
|
-
sVisualizationTypeId = oReadVisualization.getTypeId(oVisualization);
|
|
1273
|
-
oVisualizationType = oReadVisualization.getType(oSite, sVisualizationTypeId);
|
|
1312
|
+
const sVisualizationTypeId = oReadVisualization.getTypeId(oVisualization);
|
|
1313
|
+
const oVisualizationType = oReadVisualization.getType(oSite, sVisualizationTypeId);
|
|
1274
1314
|
|
|
1275
|
-
sAppId = oReadVisualization.getAppId(oVisualization);
|
|
1315
|
+
const sAppId = oReadVisualization.getAppId(oVisualization);
|
|
1276
1316
|
|
|
1277
1317
|
if (sAppId) {
|
|
1278
1318
|
// Read its target app descriptor and inbound
|
|
@@ -1311,7 +1351,7 @@ sap.ui.define([
|
|
|
1311
1351
|
aTechnicalAttributes = oReadApplications.getTechnicalAttributes(oAppDescriptor);
|
|
1312
1352
|
} else {
|
|
1313
1353
|
// Resolve tile via visualization's configuration
|
|
1314
|
-
|
|
1354
|
+
const oConfig = oReadVisualization.getConfig(oVisualization);
|
|
1315
1355
|
if (oConfig === undefined) {
|
|
1316
1356
|
return aReturnedCatalogTiles;
|
|
1317
1357
|
}
|
|
@@ -1323,7 +1363,7 @@ sap.ui.define([
|
|
|
1323
1363
|
}
|
|
1324
1364
|
}
|
|
1325
1365
|
|
|
1326
|
-
oTileResolutionResult = oMapped.tileResolutionResult;
|
|
1366
|
+
const oTileResolutionResult = oMapped.tileResolutionResult;
|
|
1327
1367
|
oTileResolutionResult.navigationMode = sNavigationMode;
|
|
1328
1368
|
oTileResolutionResult.technicalAttributes = aTechnicalAttributes;
|
|
1329
1369
|
|
|
@@ -1341,7 +1381,7 @@ sap.ui.define([
|
|
|
1341
1381
|
);
|
|
1342
1382
|
}
|
|
1343
1383
|
|
|
1344
|
-
oCatalogTile = {
|
|
1384
|
+
const oCatalogTile = {
|
|
1345
1385
|
id: sVisualizationId, // reuse the vizId as it is stable and unique
|
|
1346
1386
|
vizId: sVisualizationId,
|
|
1347
1387
|
tileIntent: sExternalUrl || sHash,
|
|
@@ -1367,6 +1407,39 @@ sap.ui.define([
|
|
|
1367
1407
|
return oDeferred.promise();
|
|
1368
1408
|
}
|
|
1369
1409
|
|
|
1410
|
+
/**
|
|
1411
|
+
* Delivers the catalog tiles for a given catalog
|
|
1412
|
+
*
|
|
1413
|
+
* @param {object} oCatalog
|
|
1414
|
+
* Catalog
|
|
1415
|
+
* @returns {jQuery.Promise}
|
|
1416
|
+
* In case of success the done handler will be called with an array
|
|
1417
|
+
* of catalog tiles.
|
|
1418
|
+
*/
|
|
1419
|
+
this.getCatalogTiles = function (oCatalog) {
|
|
1420
|
+
const that = this;
|
|
1421
|
+
const oDeferred = new jQuery.Deferred();
|
|
1422
|
+
|
|
1423
|
+
if (typeof oCatalog !== "object" || oCatalog === null) {
|
|
1424
|
+
return oDeferred.reject(`Invalid input parameter '${oCatalog}' passed to getCatalogTiles.`).promise();
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1427
|
+
// Direct open of search calls getCatalogTiles before the adapter is intialized, do not use this.oCDMService
|
|
1428
|
+
this.oCDMServicePromise.then((oCDMService) => {
|
|
1429
|
+
oCDMService.getSite()
|
|
1430
|
+
.done((oSite) => {
|
|
1431
|
+
getCatalogTilesFromSite.call(that, oCatalog, oSite)
|
|
1432
|
+
.done(oDeferred.resolve)
|
|
1433
|
+
.fail(oDeferred.reject);
|
|
1434
|
+
})
|
|
1435
|
+
.fail((sErrorMessage2) => {
|
|
1436
|
+
oDeferred.reject(`Failed to get site: ${sErrorMessage2}`);
|
|
1437
|
+
});
|
|
1438
|
+
});
|
|
1439
|
+
|
|
1440
|
+
return oDeferred.promise();
|
|
1441
|
+
};
|
|
1442
|
+
|
|
1370
1443
|
/**
|
|
1371
1444
|
* Returns the catalog's technical error message in case it could not be loaded.
|
|
1372
1445
|
* <p>
|
|
@@ -1552,8 +1625,8 @@ sap.ui.define([
|
|
|
1552
1625
|
* Keywords of respective catalog tile
|
|
1553
1626
|
*/
|
|
1554
1627
|
this.getCatalogTileKeywords = function (oGroupTileOrCatalogTile) {
|
|
1555
|
-
|
|
1556
|
-
|
|
1628
|
+
const aKeywords = [];
|
|
1629
|
+
let oResolvedTile = oGroupTileOrCatalogTile;
|
|
1557
1630
|
|
|
1558
1631
|
if (!oResolvedTile) {
|
|
1559
1632
|
Log.error(
|
|
@@ -1594,8 +1667,8 @@ sap.ui.define([
|
|
|
1594
1667
|
* Technical attributes of respective catalog tile
|
|
1595
1668
|
*/
|
|
1596
1669
|
this.getCatalogTileTechnicalAttributes = function (oGroupTileOrCatalogTile) {
|
|
1597
|
-
|
|
1598
|
-
|
|
1670
|
+
const aTechnicalAttributes = [];
|
|
1671
|
+
let oResolvedTile = oGroupTileOrCatalogTile;
|
|
1599
1672
|
|
|
1600
1673
|
if (!oResolvedTile) {
|
|
1601
1674
|
Log.error(
|
|
@@ -1619,6 +1692,114 @@ sap.ui.define([
|
|
|
1619
1692
|
return aTechnicalAttributes;
|
|
1620
1693
|
};
|
|
1621
1694
|
|
|
1695
|
+
/**
|
|
1696
|
+
* Create tile parameters
|
|
1697
|
+
* @param {object} oIntentParams Intent parameters
|
|
1698
|
+
* @returns {object} Tile parameters
|
|
1699
|
+
* @deprecated since 1.120
|
|
1700
|
+
*/
|
|
1701
|
+
function createTileParametersFromIntentParams (oIntentParams) {
|
|
1702
|
+
return Object.keys(oIntentParams).map((sKey) => {
|
|
1703
|
+
const sValue = oIntentParams[sKey] && oIntentParams[sKey][0];
|
|
1704
|
+
|
|
1705
|
+
return {
|
|
1706
|
+
name: sKey,
|
|
1707
|
+
// sValue maybe undefined.
|
|
1708
|
+
value: sValue || ""
|
|
1709
|
+
};
|
|
1710
|
+
});
|
|
1711
|
+
}
|
|
1712
|
+
|
|
1713
|
+
/**
|
|
1714
|
+
* Create a new target
|
|
1715
|
+
* @param {object} oIntent Intent
|
|
1716
|
+
* @returns {object} Target
|
|
1717
|
+
* @deprecated since 1.120
|
|
1718
|
+
*/
|
|
1719
|
+
function createNewTargetFromIntent (oIntent) {
|
|
1720
|
+
const oTarget = {
|
|
1721
|
+
semanticObject: oIntent.semanticObject,
|
|
1722
|
+
action: oIntent.action,
|
|
1723
|
+
parameters: createTileParametersFromIntentParams(oIntent.params)
|
|
1724
|
+
};
|
|
1725
|
+
|
|
1726
|
+
if (oIntent.appSpecificRoute) {
|
|
1727
|
+
// do not loose the inner-app hash (e.g. &/ShoppingCart(12345))
|
|
1728
|
+
// BCP 1670533333
|
|
1729
|
+
oTarget.appSpecificRoute = oIntent.appSpecificRoute;
|
|
1730
|
+
}
|
|
1731
|
+
|
|
1732
|
+
return oTarget;
|
|
1733
|
+
}
|
|
1734
|
+
|
|
1735
|
+
/**
|
|
1736
|
+
* Create a new target
|
|
1737
|
+
* @param {string} sUrl Url
|
|
1738
|
+
* @returns {object} target to the given URL.
|
|
1739
|
+
* @deprecated since 1.120
|
|
1740
|
+
*/
|
|
1741
|
+
function createNewTargetFromUrl (sUrl) {
|
|
1742
|
+
return { url: sUrl };
|
|
1743
|
+
}
|
|
1744
|
+
|
|
1745
|
+
/**
|
|
1746
|
+
* Convert parameters to a string
|
|
1747
|
+
* @param {Array} aList List of parameters
|
|
1748
|
+
* @returns {string} a string, combining each of the given parameters and values, sorted.
|
|
1749
|
+
* @deprecated since 1.120
|
|
1750
|
+
*/
|
|
1751
|
+
function transformParameterListToString (aList) {
|
|
1752
|
+
return aList
|
|
1753
|
+
.map((oParameter) => {
|
|
1754
|
+
return oParameter.name + oParameter.value;
|
|
1755
|
+
})
|
|
1756
|
+
.sort()
|
|
1757
|
+
.join();
|
|
1758
|
+
}
|
|
1759
|
+
|
|
1760
|
+
/**
|
|
1761
|
+
* Compare parameters
|
|
1762
|
+
* @param {Array} aParameters Array of parameters
|
|
1763
|
+
* @param {Array} aOthers Array of parameters
|
|
1764
|
+
* @returns {boolean} whether the parameters are the same (perhaps in a different order)
|
|
1765
|
+
* @deprecated since 1.120
|
|
1766
|
+
*/
|
|
1767
|
+
function isSameParameters (aParameters, aOthers) {
|
|
1768
|
+
aParameters = aParameters || [];
|
|
1769
|
+
aOthers = aOthers || [];
|
|
1770
|
+
|
|
1771
|
+
if (aParameters.length === aOthers.length) {
|
|
1772
|
+
const sFirst = transformParameterListToString(aParameters);
|
|
1773
|
+
const sOther = transformParameterListToString(aOthers);
|
|
1774
|
+
return sFirst === sOther;
|
|
1775
|
+
}
|
|
1776
|
+
|
|
1777
|
+
return false;
|
|
1778
|
+
}
|
|
1779
|
+
|
|
1780
|
+
/**
|
|
1781
|
+
* Check if the same target
|
|
1782
|
+
* @param {object} oTarget Target
|
|
1783
|
+
* @param {object} oOther Other target
|
|
1784
|
+
* @returns {boolean} whether the target is the same
|
|
1785
|
+
* @deprecated since 1.120
|
|
1786
|
+
*/
|
|
1787
|
+
function isSameTarget (oTarget, oOther) {
|
|
1788
|
+
if (oTarget && oOther) {
|
|
1789
|
+
if (oTarget.url) {
|
|
1790
|
+
// url bookmark tile
|
|
1791
|
+
return oTarget.url === oOther.url;
|
|
1792
|
+
}
|
|
1793
|
+
|
|
1794
|
+
return oTarget.semanticObject === oOther.semanticObject
|
|
1795
|
+
&& oTarget.action === oOther.action
|
|
1796
|
+
&& isSameParameters(oTarget.parameters, oOther.parameters)
|
|
1797
|
+
&& oTarget.appSpecificRoute === oOther.appSpecificRoute;
|
|
1798
|
+
}
|
|
1799
|
+
|
|
1800
|
+
return oTarget === oOther;
|
|
1801
|
+
}
|
|
1802
|
+
|
|
1622
1803
|
/**
|
|
1623
1804
|
* Counts <b>all</b> bookmarks pointing to the given URL from all of the user's groups.
|
|
1624
1805
|
* The count is performed by visiting each matching bookmark and executing the optional
|
|
@@ -1636,6 +1817,8 @@ sap.ui.define([
|
|
|
1636
1817
|
* the respective tile as argument.
|
|
1637
1818
|
* @param {string} [sVizType]
|
|
1638
1819
|
* (added with 1.83) The visualization type (viz type) which was used to create the bookmark using {@link #addCustomBookmark}.
|
|
1820
|
+
* @param {string} [sContentProviderId]
|
|
1821
|
+
* the content provider id.
|
|
1639
1822
|
*
|
|
1640
1823
|
* @returns {object}
|
|
1641
1824
|
* A <code>jQuery.Deferred</code> object's promise which informs about success or failure
|
|
@@ -1649,8 +1832,8 @@ sap.ui.define([
|
|
|
1649
1832
|
* @deprecated since 1.120
|
|
1650
1833
|
*/
|
|
1651
1834
|
this._visitBookmarks = function (sUrl, fnVisitor, sVizType, sContentProviderId) {
|
|
1652
|
-
|
|
1653
|
-
|
|
1835
|
+
let oReferenceTarget;
|
|
1836
|
+
const oIntent = urlParsing.parseShellHash(sUrl);
|
|
1654
1837
|
|
|
1655
1838
|
if (oIntent) {
|
|
1656
1839
|
// oUrlParser.parseShellHash was successful
|
|
@@ -1660,16 +1843,16 @@ sap.ui.define([
|
|
|
1660
1843
|
oReferenceTarget = createNewTargetFromUrl(sUrl);
|
|
1661
1844
|
}
|
|
1662
1845
|
|
|
1663
|
-
return this.oCDMService.getSite().then(
|
|
1664
|
-
|
|
1846
|
+
return this.oCDMService.getSite().then((oSite) => {
|
|
1847
|
+
const oGroups = oSite.groups;
|
|
1665
1848
|
|
|
1666
|
-
|
|
1667
|
-
.filter(
|
|
1849
|
+
const aTiles = Object.keys(oGroups)
|
|
1850
|
+
.filter((sKey) => {
|
|
1668
1851
|
// Always ignore locked groups.
|
|
1669
1852
|
return !oGroups[sKey].payload.locked;
|
|
1670
1853
|
})
|
|
1671
|
-
.map(
|
|
1672
|
-
return oGroups[sKey].payload.tiles.filter(
|
|
1854
|
+
.map((sKey) => {
|
|
1855
|
+
return oGroups[sKey].payload.tiles.filter((oTile) => {
|
|
1673
1856
|
// Consider only matching bookmark tiles. VizType is only set for custom bookmark tiles.
|
|
1674
1857
|
return oTile.isBookmark
|
|
1675
1858
|
&& oTile.vizType === sVizType
|
|
@@ -1677,7 +1860,7 @@ sap.ui.define([
|
|
|
1677
1860
|
&& isSameTarget(oReferenceTarget, oTile.target);
|
|
1678
1861
|
});
|
|
1679
1862
|
})
|
|
1680
|
-
.reduce(
|
|
1863
|
+
.reduce((aAllTiles, aCurrentGroupTiles) => {
|
|
1681
1864
|
Array.prototype.push.apply(aAllTiles, aCurrentGroupTiles);
|
|
1682
1865
|
return aAllTiles;
|
|
1683
1866
|
}, []);
|
|
@@ -1686,12 +1869,31 @@ sap.ui.define([
|
|
|
1686
1869
|
return aTiles.length;
|
|
1687
1870
|
}
|
|
1688
1871
|
|
|
1689
|
-
return jQuery.when(aTiles.map(fnVisitor)).then(
|
|
1872
|
+
return jQuery.when(aTiles.map(fnVisitor)).then(() => {
|
|
1690
1873
|
return aTiles.length;
|
|
1691
1874
|
});
|
|
1692
1875
|
});
|
|
1693
1876
|
};
|
|
1694
1877
|
|
|
1878
|
+
/**
|
|
1879
|
+
* Compose a new bookmark tile in home mode
|
|
1880
|
+
* @param {object} oParameters Parameters
|
|
1881
|
+
* @param {object} oTarget Target
|
|
1882
|
+
* @param {string} sContentProviderId Content provider ID
|
|
1883
|
+
* @returns {object} bookmark tile object.
|
|
1884
|
+
* @deprecated since 1.120
|
|
1885
|
+
*/
|
|
1886
|
+
function composeNewBookmarkTile (oParameters, oTarget, sContentProviderId) {
|
|
1887
|
+
const oTile = composeNewTile(oParameters, oTarget);
|
|
1888
|
+
|
|
1889
|
+
oTile.isBookmark = true;
|
|
1890
|
+
if (sContentProviderId) {
|
|
1891
|
+
oTile.contentProvider = sContentProviderId;
|
|
1892
|
+
}
|
|
1893
|
+
|
|
1894
|
+
return oTile;
|
|
1895
|
+
}
|
|
1896
|
+
|
|
1695
1897
|
/**
|
|
1696
1898
|
* Adds a bookmark to the user's home page.
|
|
1697
1899
|
* Given a specific group the bookmark is added to the group,
|
|
@@ -1770,17 +1972,17 @@ sap.ui.define([
|
|
|
1770
1972
|
* @deprecated since 1.120
|
|
1771
1973
|
*/
|
|
1772
1974
|
this.addBookmark = function (oParameters, oGroup, sContentProviderId) {
|
|
1773
|
-
|
|
1975
|
+
const that = this;
|
|
1774
1976
|
|
|
1775
|
-
return new jQuery.Deferred(
|
|
1776
|
-
|
|
1977
|
+
return new jQuery.Deferred((oDeferred) => {
|
|
1978
|
+
const oCdmSiteService = that.oCDMService;
|
|
1777
1979
|
|
|
1778
1980
|
jQuery.when(oGroup || that.getDefaultGroup(), oCdmSiteService.getSite())
|
|
1779
|
-
.done(
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1981
|
+
.done((oGroup, oSite) => {
|
|
1982
|
+
let oTarget;
|
|
1983
|
+
const oIntent = urlParsing.parseShellHash(oParameters.url);
|
|
1984
|
+
let oResolveTilePromise;
|
|
1985
|
+
let bIsUrlBookmarkTile = false;
|
|
1784
1986
|
|
|
1785
1987
|
if (!oIntent) {
|
|
1786
1988
|
oTarget = createNewTargetFromUrl(oParameters.url);
|
|
@@ -1789,7 +1991,7 @@ sap.ui.define([
|
|
|
1789
1991
|
oTarget = createNewTargetFromIntent(oIntent);
|
|
1790
1992
|
}
|
|
1791
1993
|
|
|
1792
|
-
|
|
1994
|
+
const oTile = composeNewBookmarkTile(
|
|
1793
1995
|
oParameters,
|
|
1794
1996
|
oTarget,
|
|
1795
1997
|
sContentProviderId
|
|
@@ -1804,27 +2006,27 @@ sap.ui.define([
|
|
|
1804
2006
|
}
|
|
1805
2007
|
|
|
1806
2008
|
oResolveTilePromise
|
|
1807
|
-
.done(
|
|
2009
|
+
.done((oNewResolvedTile) => {
|
|
1808
2010
|
oNewResolvedTile.isLink = false; // currently only bookmark tiles can be created
|
|
1809
2011
|
that._mResolvedTiles[oTile.id] = oNewResolvedTile;
|
|
1810
2012
|
|
|
1811
2013
|
// add tile to the side and save
|
|
1812
2014
|
oSite.groups[oGroup.identification.id].payload.tiles.push(oTile);
|
|
1813
2015
|
oCdmSiteService.save()
|
|
1814
|
-
.done(
|
|
2016
|
+
.done(() => {
|
|
1815
2017
|
oDeferred.resolve(oTile);
|
|
1816
2018
|
})
|
|
1817
|
-
.fail(
|
|
2019
|
+
.fail((sReason) => {
|
|
1818
2020
|
oDeferred.reject(sReason);
|
|
1819
2021
|
});
|
|
1820
2022
|
})
|
|
1821
|
-
.fail(
|
|
2023
|
+
.fail((sErrorMsg) => {
|
|
1822
2024
|
// Note: do not add error message to that._mFailedResolvedTiles[oTile.id]
|
|
1823
2025
|
// as the tile was not created which makes the cache useless
|
|
1824
|
-
oDeferred.reject(
|
|
2026
|
+
oDeferred.reject(`Bookmark creation failed because: ${sErrorMsg}`);
|
|
1825
2027
|
});
|
|
1826
2028
|
})
|
|
1827
|
-
.fail(
|
|
2029
|
+
.fail((sReason) => {
|
|
1828
2030
|
oDeferred.reject(sReason);
|
|
1829
2031
|
});
|
|
1830
2032
|
}).promise();
|
|
@@ -1868,24 +2070,24 @@ sap.ui.define([
|
|
|
1868
2070
|
* @deprecated since 1.120
|
|
1869
2071
|
*/
|
|
1870
2072
|
this.addCustomBookmark = function (oBookmarkConfig, oTargetGroup, sContentProviderId) {
|
|
1871
|
-
|
|
2073
|
+
const oDeferred = new jQuery.Deferred();
|
|
1872
2074
|
|
|
1873
2075
|
Promise.all([
|
|
1874
2076
|
Container.getServiceAsync("URLParsing"),
|
|
1875
2077
|
Container.getServiceAsync("CommonDataModel")
|
|
1876
|
-
]).then(
|
|
1877
|
-
|
|
1878
|
-
|
|
2078
|
+
]).then((aResults) => {
|
|
2079
|
+
const oUrlParsing = aResults[0];
|
|
2080
|
+
const oCdmSiteService = aResults[1];
|
|
1879
2081
|
|
|
1880
2082
|
jQuery.when(oTargetGroup || this.getDefaultGroup(), oCdmSiteService.getSite())
|
|
1881
|
-
.done(
|
|
1882
|
-
|
|
1883
|
-
|
|
2083
|
+
.done((oGroup, oSite) => {
|
|
2084
|
+
const oIntent = oUrlParsing.parseShellHash(oBookmarkConfig.url);
|
|
2085
|
+
const bIsUrlBookmarkTile = (oIntent === undefined);
|
|
1884
2086
|
|
|
1885
|
-
|
|
2087
|
+
const oTarget = bIsUrlBookmarkTile ? createNewTargetFromUrl(oBookmarkConfig.url) : createNewTargetFromIntent(oIntent);
|
|
1886
2088
|
|
|
1887
2089
|
// building a grouptile but with vizConfig like a visualization
|
|
1888
|
-
|
|
2090
|
+
const oTile = {
|
|
1889
2091
|
id: oUshellUtils.generateUniqueId([]),
|
|
1890
2092
|
vizType: oBookmarkConfig.vizType,
|
|
1891
2093
|
title: oBookmarkConfig.title,
|
|
@@ -1907,26 +2109,26 @@ sap.ui.define([
|
|
|
1907
2109
|
}
|
|
1908
2110
|
|
|
1909
2111
|
this._resolveTileByVizId(oTile, oSite)
|
|
1910
|
-
.done(
|
|
2112
|
+
.done((oNewResolvedTile) => {
|
|
1911
2113
|
oNewResolvedTile.isLink = false; // currently only bookmark tiles can be created
|
|
1912
2114
|
this._mResolvedTiles[oTile.id] = oNewResolvedTile;
|
|
1913
2115
|
|
|
1914
2116
|
// add tile to the site and save
|
|
1915
2117
|
oSite.groups[oGroup.identification.id].payload.tiles.push(oTile);
|
|
1916
2118
|
oCdmSiteService.save()
|
|
1917
|
-
.done(
|
|
2119
|
+
.done(() => {
|
|
1918
2120
|
oDeferred.resolve(oTile);
|
|
1919
2121
|
})
|
|
1920
2122
|
.fail(oDeferred.reject);
|
|
1921
|
-
}
|
|
1922
|
-
.fail(
|
|
2123
|
+
})
|
|
2124
|
+
.fail((sErrorMsg) => {
|
|
1923
2125
|
// Note: do not add error message to that._mFailedResolvedTiles[oTile.id]
|
|
1924
2126
|
// as the tile was not created which makes the cache useless
|
|
1925
|
-
oDeferred.reject(
|
|
2127
|
+
oDeferred.reject(`Bookmark creation failed because: ${sErrorMsg}`);
|
|
1926
2128
|
});
|
|
1927
|
-
}
|
|
2129
|
+
})
|
|
1928
2130
|
.fail(oDeferred.reject);
|
|
1929
|
-
}
|
|
2131
|
+
});
|
|
1930
2132
|
|
|
1931
2133
|
return oDeferred.promise();
|
|
1932
2134
|
};
|
|
@@ -1940,6 +2142,8 @@ sap.ui.define([
|
|
|
1940
2142
|
*
|
|
1941
2143
|
* @param {string} sUrl
|
|
1942
2144
|
* The URL of the bookmarks to be counted, exactly as specified to {@link #addBookmark}.
|
|
2145
|
+
* @param {string} [sContentProviderId]
|
|
2146
|
+
* the content provider id.
|
|
1943
2147
|
* @returns {object}
|
|
1944
2148
|
* A <code>jQuery.Deferred</code> object's promise which informs about success or failure
|
|
1945
2149
|
* of this asynchronous operation. In case of success, the count of existing bookmarks
|
|
@@ -1975,9 +2179,9 @@ sap.ui.define([
|
|
|
1975
2179
|
return Promise.reject("countCustomBookmarks: Required parameter is missing: oIdentifier.vizType");
|
|
1976
2180
|
}
|
|
1977
2181
|
|
|
1978
|
-
return new Promise(
|
|
2182
|
+
return new Promise((resolve, reject) => {
|
|
1979
2183
|
this._visitBookmarks(oIdentifier.url, undefined, oIdentifier.vizType, oIdentifier.contentProviderId).done(resolve).fail(reject);
|
|
1980
|
-
}
|
|
2184
|
+
});
|
|
1981
2185
|
};
|
|
1982
2186
|
|
|
1983
2187
|
/**
|
|
@@ -2004,7 +2208,8 @@ sap.ui.define([
|
|
|
2004
2208
|
*
|
|
2005
2209
|
* @param {string} [sVizType]
|
|
2006
2210
|
* (added with 1.83) The visualization type (viz type) which was used to create the bookmark using {@link #addCustomBookmark}.
|
|
2007
|
-
*
|
|
2211
|
+
* @param {string} [sContentProviderId]
|
|
2212
|
+
* the content provider id.
|
|
2008
2213
|
* @returns {object}
|
|
2009
2214
|
* A <code>jQuery.Deferred</code> object's promise which informs about success or failure
|
|
2010
2215
|
* of this asynchronous operation. In case of success, the number of updated bookmarks
|
|
@@ -2018,19 +2223,19 @@ sap.ui.define([
|
|
|
2018
2223
|
* @deprecated since 1.120
|
|
2019
2224
|
*/
|
|
2020
2225
|
this.updateBookmarks = function (sUrl, oParameters, sVizType, sContentProviderId) {
|
|
2021
|
-
|
|
2226
|
+
const oCdmSiteService = this.oCDMService;
|
|
2022
2227
|
|
|
2023
|
-
|
|
2228
|
+
const mResolvedTiles = this._mResolvedTiles;
|
|
2024
2229
|
|
|
2025
2230
|
// Visitor function that updates each encountered bookmark tile as necessary.
|
|
2026
2231
|
function updateEach (oTile) {
|
|
2027
|
-
return new jQuery.Deferred(
|
|
2028
|
-
|
|
2029
|
-
|
|
2030
|
-
|
|
2232
|
+
return new jQuery.Deferred((oDeferred) => {
|
|
2233
|
+
let oNewTarget;
|
|
2234
|
+
let bTileViewPropertiesChanged = false;
|
|
2235
|
+
const oChangedTileViewProperties = {};
|
|
2031
2236
|
|
|
2032
2237
|
if (oParameters.url || oParameters.url === "") {
|
|
2033
|
-
|
|
2238
|
+
const oIntent = urlParsing.parseShellHash(oParameters.url);
|
|
2034
2239
|
if (!oIntent) {
|
|
2035
2240
|
// url bookmark tile
|
|
2036
2241
|
oNewTarget = createNewTargetFromUrl(oParameters.url);
|
|
@@ -2071,8 +2276,8 @@ sap.ui.define([
|
|
|
2071
2276
|
updateTileComposition(oTile, oParameters, oNewTarget);
|
|
2072
2277
|
|
|
2073
2278
|
if (bTileViewPropertiesChanged && mResolvedTiles[oTile.id]) {
|
|
2074
|
-
|
|
2075
|
-
//tileComponent is defined in the getTileView method. In case of the direct start, tileComponent is not defined
|
|
2279
|
+
const oTileComponent = mResolvedTiles[oTile.id].tileComponent;
|
|
2280
|
+
// tileComponent is defined in the getTileView method. In case of the direct start, tileComponent is not defined
|
|
2076
2281
|
if (oTileComponent) {
|
|
2077
2282
|
oTileComponent.tileSetVisualProperties(oChangedTileViewProperties);
|
|
2078
2283
|
}
|
|
@@ -2085,8 +2290,8 @@ sap.ui.define([
|
|
|
2085
2290
|
// When save is successful, return count of updated bookmarks,
|
|
2086
2291
|
// otherwise the rejected promise due to the failed save operation is returned.
|
|
2087
2292
|
return this._visitBookmarks(sUrl, updateEach, sVizType, sContentProviderId)
|
|
2088
|
-
.then(
|
|
2089
|
-
return oCdmSiteService.save().then(
|
|
2293
|
+
.then((iUpdatedCount) => {
|
|
2294
|
+
return oCdmSiteService.save().then(() => {
|
|
2090
2295
|
return iUpdatedCount;
|
|
2091
2296
|
});
|
|
2092
2297
|
});
|
|
@@ -2142,9 +2347,9 @@ sap.ui.define([
|
|
|
2142
2347
|
return Promise.reject("updateCustomBookmarks: The bookmark url cannot be an empty string");
|
|
2143
2348
|
}
|
|
2144
2349
|
|
|
2145
|
-
return new Promise(
|
|
2350
|
+
return new Promise((resolve, reject) => {
|
|
2146
2351
|
this.updateBookmarks(oIdentifier.url, oBookmarkConfig, oIdentifier.vizType, oIdentifier.contentProviderId).done(resolve).fail(reject);
|
|
2147
|
-
}
|
|
2352
|
+
});
|
|
2148
2353
|
};
|
|
2149
2354
|
|
|
2150
2355
|
/**
|
|
@@ -2154,6 +2359,8 @@ sap.ui.define([
|
|
|
2154
2359
|
* The URL of the bookmarks to be deleted, exactly as specified to {@link #addBookmark}.
|
|
2155
2360
|
* @param {string} [sVizType]
|
|
2156
2361
|
* (added with 1.83) The visualization type (viz type) which was used to create the bookmark using {@link #addCustomBookmark}.
|
|
2362
|
+
* @param {string} [sContentProviderId]
|
|
2363
|
+
* the content provider id.
|
|
2157
2364
|
*
|
|
2158
2365
|
* @returns {object}
|
|
2159
2366
|
* A <code>jQuery.Deferred</code> object's promise which informs about success or failure
|
|
@@ -2166,9 +2373,9 @@ sap.ui.define([
|
|
|
2166
2373
|
* @deprecated since 1.120
|
|
2167
2374
|
*/
|
|
2168
2375
|
this.deleteBookmarks = function (sUrl, sVizType, sContentProviderId) {
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2376
|
+
const oCDMService = this.oCDMService;
|
|
2377
|
+
const oIntent = urlParsing.parseShellHash(sUrl);
|
|
2378
|
+
let oReferenceTarget;
|
|
2172
2379
|
|
|
2173
2380
|
if (oIntent) {
|
|
2174
2381
|
// oUrlParser.parseShellHash was successful
|
|
@@ -2178,15 +2385,15 @@ sap.ui.define([
|
|
|
2178
2385
|
oReferenceTarget = createNewTargetFromUrl(sUrl);
|
|
2179
2386
|
}
|
|
2180
2387
|
|
|
2181
|
-
return oCDMService.getSite().then(
|
|
2182
|
-
|
|
2388
|
+
return oCDMService.getSite().then((oSite) => {
|
|
2389
|
+
const oGroups = oSite.groups;
|
|
2183
2390
|
|
|
2184
|
-
|
|
2185
|
-
.map(
|
|
2186
|
-
|
|
2187
|
-
|
|
2391
|
+
const iDeletedTiles = Object.keys(oGroups)
|
|
2392
|
+
.map((sKey) => {
|
|
2393
|
+
const oPayload = oGroups[sKey].payload;
|
|
2394
|
+
let iCountGroupTilesToDelete = 0;
|
|
2188
2395
|
|
|
2189
|
-
oPayload.tiles = oPayload.tiles.filter(
|
|
2396
|
+
oPayload.tiles = oPayload.tiles.filter((oTile) => {
|
|
2190
2397
|
if (oTile.isBookmark
|
|
2191
2398
|
&& oTile.vizType === sVizType // vizType is only set for custom bookmark tiles.
|
|
2192
2399
|
&& (oTile.contentProvider || "") === (sContentProviderId || "")
|
|
@@ -2200,13 +2407,13 @@ sap.ui.define([
|
|
|
2200
2407
|
|
|
2201
2408
|
return iCountGroupTilesToDelete;
|
|
2202
2409
|
})
|
|
2203
|
-
.reduce(
|
|
2410
|
+
.reduce((aggregateSum, groupSum) => {
|
|
2204
2411
|
aggregateSum += groupSum;
|
|
2205
2412
|
|
|
2206
2413
|
return aggregateSum;
|
|
2207
2414
|
}, 0);
|
|
2208
2415
|
|
|
2209
|
-
return oCDMService.save().then(
|
|
2416
|
+
return oCDMService.save().then(() => {
|
|
2210
2417
|
return iDeletedTiles;
|
|
2211
2418
|
});
|
|
2212
2419
|
});
|
|
@@ -2236,9 +2443,9 @@ sap.ui.define([
|
|
|
2236
2443
|
return Promise.reject("deleteCustomBookmarks: Required parameter is missing: oIdentifier.vizType");
|
|
2237
2444
|
}
|
|
2238
2445
|
|
|
2239
|
-
return new Promise(
|
|
2446
|
+
return new Promise((resolve, reject) => {
|
|
2240
2447
|
this.deleteBookmarks(oIdentifier.url, oIdentifier.vizType, oIdentifier.contentProviderId).done(resolve).fail(reject);
|
|
2241
|
-
}
|
|
2448
|
+
});
|
|
2242
2449
|
};
|
|
2243
2450
|
|
|
2244
2451
|
/**
|
|
@@ -2277,18 +2484,18 @@ sap.ui.define([
|
|
|
2277
2484
|
* @private
|
|
2278
2485
|
*/
|
|
2279
2486
|
this._onTileSettingsSave = function (oTile, oSettingsView) {
|
|
2280
|
-
|
|
2487
|
+
const oDeferred = new jQuery.Deferred();
|
|
2281
2488
|
|
|
2282
2489
|
if (!oTile || !oTile.id || !oSettingsView) {
|
|
2283
2490
|
return oDeferred.reject().promise();
|
|
2284
2491
|
}
|
|
2285
2492
|
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2493
|
+
const sNewTitle = oSettingsView.oTitleInput.getValue();
|
|
2494
|
+
const sNewSubtitle = oSettingsView.oSubTitleInput.getValue();
|
|
2495
|
+
const sNewInfo = oSettingsView.oInfoInput.getValue();
|
|
2496
|
+
const sOldTitle = this.getTileTitle(oTile);
|
|
2497
|
+
const sOldInfo = this.getTileInfo(oTile);
|
|
2498
|
+
const sOldSubtitle = this.getTileSubtitle(oTile);
|
|
2292
2499
|
|
|
2293
2500
|
// Check whether the end user changed the title or subtitle.
|
|
2294
2501
|
// If nothing changed, return.
|
|
@@ -2299,7 +2506,7 @@ sap.ui.define([
|
|
|
2299
2506
|
return oDeferred.resolve().promise();
|
|
2300
2507
|
}
|
|
2301
2508
|
|
|
2302
|
-
|
|
2509
|
+
const oUpdatedVisualTileProperties = {};
|
|
2303
2510
|
if (sOldTitle !== sNewTitle) {
|
|
2304
2511
|
oUpdatedVisualTileProperties.title = sNewTitle;
|
|
2305
2512
|
// Add new properties also to tile for next startup
|
|
@@ -2334,20 +2541,20 @@ sap.ui.define([
|
|
|
2334
2541
|
this._mResolvedTiles[oTile.id].linkTileControl.setSubheader(oUpdatedVisualTileProperties.subtitle);
|
|
2335
2542
|
}
|
|
2336
2543
|
if ((oUpdatedVisualTileProperties.title) || (oUpdatedVisualTileProperties.subtitle)) {
|
|
2337
|
-
//rerender the link to see the changes immediately
|
|
2544
|
+
// rerender the link to see the changes immediately
|
|
2338
2545
|
this._mResolvedTiles[oTile.id].linkTileControl.invalidate();
|
|
2339
2546
|
}
|
|
2340
2547
|
}
|
|
2341
2548
|
|
|
2342
2549
|
// Persist personalization changes
|
|
2343
2550
|
Container.getServiceAsync("CommonDataModel")
|
|
2344
|
-
.then(
|
|
2551
|
+
.then((oCdmService) => {
|
|
2345
2552
|
oCdmService.save()
|
|
2346
|
-
.fail(
|
|
2553
|
+
.fail((sErrorMsg0) => {
|
|
2347
2554
|
Log.error(sErrorMsg0);
|
|
2348
|
-
oDeferred.reject(
|
|
2555
|
+
oDeferred.reject(`Could not save personalization changes: ${sErrorMsg0}`);
|
|
2349
2556
|
})
|
|
2350
|
-
.done(
|
|
2557
|
+
.done(() => {
|
|
2351
2558
|
oDeferred.resolve();
|
|
2352
2559
|
});
|
|
2353
2560
|
});
|
|
@@ -2365,11 +2572,11 @@ sap.ui.define([
|
|
|
2365
2572
|
*
|
|
2366
2573
|
*/
|
|
2367
2574
|
this.getTileActions = function (oTile) {
|
|
2368
|
-
|
|
2575
|
+
const aTileActions = [];
|
|
2369
2576
|
|
|
2370
2577
|
if (this._isGroupTile(oTile) && !this._isFailedGroupTile(oTile)) {
|
|
2371
2578
|
// Create necessary model for dialog to pass actual properties
|
|
2372
|
-
|
|
2579
|
+
const oModel = new JSONModel({
|
|
2373
2580
|
config: {
|
|
2374
2581
|
display_title_text: this.getTileTitle(oTile),
|
|
2375
2582
|
display_subtitle_text: this.getTileSubtitle(oTile),
|
|
@@ -2378,226 +2585,20 @@ sap.ui.define([
|
|
|
2378
2585
|
});
|
|
2379
2586
|
|
|
2380
2587
|
// Get tile settings action
|
|
2381
|
-
|
|
2588
|
+
const oTileSettingsAction = oUtils.getTileSettingsAction(oModel, this._onTileSettingsSave.bind(this, oTile), this.getTileType(oTile));
|
|
2382
2589
|
aTileActions.push(oTileSettingsAction);
|
|
2383
2590
|
}
|
|
2384
2591
|
return aTileActions;
|
|
2385
2592
|
};
|
|
2386
2593
|
|
|
2387
|
-
/**
|
|
2388
|
-
* Compose a new bookmark tile in home mode
|
|
2389
|
-
* @param {object} oParameters Parameters
|
|
2390
|
-
* @param {object} oTarget Target
|
|
2391
|
-
* @param {string} sContentProviderId Content provider ID
|
|
2392
|
-
* @returns {object}
|
|
2393
|
-
* @deprecated since 1.120
|
|
2394
|
-
*/
|
|
2395
|
-
function composeNewBookmarkTile (oParameters, oTarget, sContentProviderId) {
|
|
2396
|
-
var oTile = composeNewTile(oParameters, oTarget);
|
|
2397
|
-
|
|
2398
|
-
oTile.isBookmark = true;
|
|
2399
|
-
if (sContentProviderId) {
|
|
2400
|
-
oTile.contentProvider = sContentProviderId;
|
|
2401
|
-
}
|
|
2402
|
-
|
|
2403
|
-
return oTile;
|
|
2404
|
-
}
|
|
2405
|
-
|
|
2406
|
-
/**
|
|
2407
|
-
* Compose a new tile
|
|
2408
|
-
* @param {object} oParameters Parameters
|
|
2409
|
-
* @param {object} oTarget Target
|
|
2410
|
-
* @returns {object} Tile
|
|
2411
|
-
* @deprecated since 1.120
|
|
2412
|
-
*/
|
|
2413
|
-
function composeNewTile (oParameters, oTarget) {
|
|
2414
|
-
// TODO Collect all tile ids to pass them as an arry to
|
|
2415
|
-
// generateUniqueId
|
|
2416
|
-
var oTile = {
|
|
2417
|
-
id: oUshellUtils.generateUniqueId([])
|
|
2418
|
-
};
|
|
2419
|
-
|
|
2420
|
-
updateTileComposition(oTile, oParameters, oTarget);
|
|
2421
|
-
|
|
2422
|
-
return oTile;
|
|
2423
|
-
}
|
|
2424
|
-
|
|
2425
|
-
/**
|
|
2426
|
-
* Updates the properties of a bookmark tile during its composition.
|
|
2427
|
-
* @param {object} oTile JSON Object that holds the properties of a bookmark tile.
|
|
2428
|
-
* @param {object} oParameters Properties to merge into the bookmark tile
|
|
2429
|
-
* @param {object} oTarget The navigation target as a JSON object.
|
|
2430
|
-
*
|
|
2431
|
-
* @deprecated since 1.120
|
|
2432
|
-
*/
|
|
2433
|
-
function updateTileComposition (oTile, oParameters, oTarget) {
|
|
2434
|
-
// Avoid modifying callers reference.
|
|
2435
|
-
oParameters = deepExtend({}, oParameters);
|
|
2436
|
-
|
|
2437
|
-
if (oTarget) {
|
|
2438
|
-
oTile.target = oTarget;
|
|
2439
|
-
}
|
|
2440
|
-
|
|
2441
|
-
if (oParameters.title || oParameters.title === "") {
|
|
2442
|
-
oTile.title = oParameters.title;
|
|
2443
|
-
}
|
|
2444
|
-
|
|
2445
|
-
if (oParameters.icon || oParameters.icon === "") {
|
|
2446
|
-
oTile.icon = oParameters.icon;
|
|
2447
|
-
}
|
|
2448
|
-
|
|
2449
|
-
if (oParameters.subtitle || oParameters.subtitle === "") {
|
|
2450
|
-
oTile.subTitle = oParameters.subtitle;
|
|
2451
|
-
}
|
|
2452
|
-
|
|
2453
|
-
if (oParameters.info || oParameters.info === "") {
|
|
2454
|
-
oTile.info = oParameters.info;
|
|
2455
|
-
}
|
|
2456
|
-
|
|
2457
|
-
if (oParameters.numberUnit || oParameters.numberUnit === "") {
|
|
2458
|
-
oTile.numberUnit = oParameters.numberUnit;
|
|
2459
|
-
}
|
|
2460
|
-
|
|
2461
|
-
if (oParameters.dataSource) {
|
|
2462
|
-
oTile.dataSource = {
|
|
2463
|
-
type: oParameters.dataSource.type,
|
|
2464
|
-
settings: {
|
|
2465
|
-
odataVersion: ObjectPath.get(["dataSource", "settings", "odataVersion"], oParameters)
|
|
2466
|
-
}
|
|
2467
|
-
};
|
|
2468
|
-
}
|
|
2469
|
-
|
|
2470
|
-
if (oParameters.serviceUrl) {
|
|
2471
|
-
oTile.indicatorDataSource = {
|
|
2472
|
-
path: oParameters.serviceUrl
|
|
2473
|
-
};
|
|
2474
|
-
}
|
|
2475
|
-
|
|
2476
|
-
if (oTile.indicatorDataSource && (oParameters.serviceRefreshInterval || oParameters.serviceRefreshInterval === 0)) {
|
|
2477
|
-
oTile.indicatorDataSource.refresh = oParameters.serviceRefreshInterval;
|
|
2478
|
-
}
|
|
2479
|
-
|
|
2480
|
-
if (oParameters.vizConfig) {
|
|
2481
|
-
oTile.vizConfig = oParameters.vizConfig;
|
|
2482
|
-
}
|
|
2483
|
-
}
|
|
2484
|
-
|
|
2485
|
-
/**
|
|
2486
|
-
* Check if the same target
|
|
2487
|
-
* @param {object} oTarget Target
|
|
2488
|
-
* @param {object} oOther Other target
|
|
2489
|
-
* @returns {boolean}
|
|
2490
|
-
* @deprecated since 1.120
|
|
2491
|
-
*/
|
|
2492
|
-
function isSameTarget (oTarget, oOther) {
|
|
2493
|
-
if (oTarget && oOther) {
|
|
2494
|
-
if (oTarget.url) {
|
|
2495
|
-
// url bookmark tile
|
|
2496
|
-
return oTarget.url === oOther.url;
|
|
2497
|
-
}
|
|
2498
|
-
|
|
2499
|
-
return oTarget.semanticObject === oOther.semanticObject
|
|
2500
|
-
&& oTarget.action === oOther.action
|
|
2501
|
-
&& isSameParameters(oTarget.parameters, oOther.parameters)
|
|
2502
|
-
&& oTarget.appSpecificRoute === oOther.appSpecificRoute;
|
|
2503
|
-
}
|
|
2504
|
-
|
|
2505
|
-
return oTarget === oOther;
|
|
2506
|
-
}
|
|
2507
|
-
|
|
2508
|
-
/**
|
|
2509
|
-
* Compare parameters
|
|
2510
|
-
* @param {Array} aParameters Array of parameters
|
|
2511
|
-
* @param {Array} aOthers Array of parameters
|
|
2512
|
-
* @returns {boolean}
|
|
2513
|
-
* @deprecated since 1.120
|
|
2514
|
-
*/
|
|
2515
|
-
function isSameParameters (aParameters, aOthers) {
|
|
2516
|
-
aParameters = aParameters || [];
|
|
2517
|
-
aOthers = aOthers || [];
|
|
2518
|
-
|
|
2519
|
-
if (aParameters.length === aOthers.length) {
|
|
2520
|
-
var sFirst = transformParameterListToString(aParameters);
|
|
2521
|
-
var sOther = transformParameterListToString(aOthers);
|
|
2522
|
-
return sFirst === sOther;
|
|
2523
|
-
}
|
|
2524
|
-
|
|
2525
|
-
return false;
|
|
2526
|
-
}
|
|
2527
|
-
|
|
2528
|
-
/**
|
|
2529
|
-
* Convert parameters to a string
|
|
2530
|
-
* @param {Array} aList List of parameters
|
|
2531
|
-
* @returns {string}
|
|
2532
|
-
* @deprecated since 1.120
|
|
2533
|
-
*/
|
|
2534
|
-
function transformParameterListToString (aList) {
|
|
2535
|
-
return aList
|
|
2536
|
-
.map(function (oParameter) {
|
|
2537
|
-
return oParameter.name + oParameter.value;
|
|
2538
|
-
})
|
|
2539
|
-
.sort()
|
|
2540
|
-
.join();
|
|
2541
|
-
}
|
|
2542
|
-
|
|
2543
|
-
/**
|
|
2544
|
-
* Create a new target
|
|
2545
|
-
* @param {string} sUrl Url
|
|
2546
|
-
* @returns {string}
|
|
2547
|
-
* @deprecated since 1.120
|
|
2548
|
-
*/
|
|
2549
|
-
function createNewTargetFromUrl (sUrl) {
|
|
2550
|
-
return { url: sUrl };
|
|
2551
|
-
}
|
|
2552
|
-
|
|
2553
|
-
/**
|
|
2554
|
-
* Create a new target
|
|
2555
|
-
* @param {object} oIntent Intent
|
|
2556
|
-
* @returns {object} Target
|
|
2557
|
-
* @deprecated since 1.120
|
|
2558
|
-
*/
|
|
2559
|
-
function createNewTargetFromIntent (oIntent) {
|
|
2560
|
-
var oTarget = {
|
|
2561
|
-
semanticObject: oIntent.semanticObject,
|
|
2562
|
-
action: oIntent.action,
|
|
2563
|
-
parameters: createTileParametersFromIntentParams(oIntent.params)
|
|
2564
|
-
};
|
|
2565
|
-
|
|
2566
|
-
if (oIntent.appSpecificRoute) {
|
|
2567
|
-
// do not loose the inner-app hash (e.g. &/ShoppingCart(12345))
|
|
2568
|
-
// BCP 1670533333
|
|
2569
|
-
oTarget.appSpecificRoute = oIntent.appSpecificRoute;
|
|
2570
|
-
}
|
|
2571
|
-
|
|
2572
|
-
return oTarget;
|
|
2573
|
-
}
|
|
2574
|
-
|
|
2575
|
-
/**
|
|
2576
|
-
* Create tile parameters
|
|
2577
|
-
* @param {object} oIntentParams Intent parameters
|
|
2578
|
-
* @returns {object} Tile parameters
|
|
2579
|
-
* @deprecated since 1.120
|
|
2580
|
-
*/
|
|
2581
|
-
function createTileParametersFromIntentParams (oIntentParams) {
|
|
2582
|
-
return Object.keys(oIntentParams).map(function (sKey) {
|
|
2583
|
-
var sValue = oIntentParams[sKey] && oIntentParams[sKey][0];
|
|
2584
|
-
|
|
2585
|
-
return {
|
|
2586
|
-
name: sKey,
|
|
2587
|
-
// sValue maybe undefined.
|
|
2588
|
-
value: sValue || ""
|
|
2589
|
-
};
|
|
2590
|
-
});
|
|
2591
|
-
}
|
|
2592
|
-
|
|
2593
2594
|
/**
|
|
2594
2595
|
* Get site data (used in home page mode only)
|
|
2595
|
-
* @returns {Promise}
|
|
2596
|
+
* @returns {Promise} the site data inside a promise.
|
|
2596
2597
|
* @deprecated since 1.120
|
|
2597
2598
|
*/
|
|
2598
2599
|
this._getSiteData = function () {
|
|
2599
|
-
|
|
2600
|
-
Container.getServiceAsync("CommonDataModel").then(
|
|
2600
|
+
const oPromise = new Promise((fnResolve, fnReject) => {
|
|
2601
|
+
Container.getServiceAsync("CommonDataModel").then((oCDMService) => {
|
|
2601
2602
|
oCDMService.getSite()
|
|
2602
2603
|
.done(fnResolve)
|
|
2603
2604
|
.fail(fnReject);
|
|
@@ -2615,7 +2616,7 @@ sap.ui.define([
|
|
|
2615
2616
|
* @deprecated since 1.120
|
|
2616
2617
|
*/
|
|
2617
2618
|
this._addDefaultGroup = function (aGroups, oSite) {
|
|
2618
|
-
|
|
2619
|
+
let oDefaultGroup = oReadHomePageUtils.getDefaultGroup(aGroups);
|
|
2619
2620
|
|
|
2620
2621
|
if (!oDefaultGroup) {
|
|
2621
2622
|
// the default group is not added by an admin but must be automatically
|
|
@@ -2628,7 +2629,7 @@ sap.ui.define([
|
|
|
2628
2629
|
// the FLP, oCdmSiteService.save() is skipped. This means the default
|
|
2629
2630
|
// group is added on EVERY start-up until save() is called in a different use case
|
|
2630
2631
|
// e.g. a tile was added.
|
|
2631
|
-
oSite = oModifyHomePageUtils.addGroupToSite(oSite, oDefaultGroup, /*index*/ 0);
|
|
2632
|
+
oSite = oModifyHomePageUtils.addGroupToSite(oSite, oDefaultGroup, /* index */ 0);
|
|
2632
2633
|
|
|
2633
2634
|
// get groups again as the default group was just added
|
|
2634
2635
|
aGroups = oReadHomePageUtils.getGroupsArrayFromSite(oSite);
|