@sapui5/sap.ushell 1.114.0 → 1.114.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/main/js/sap/ushell/.library +1 -1
- package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
- package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
- package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
- package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
- package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
- package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
- package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/DependencyGraph.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/Functions.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/Resolvers.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/TemplateParameterParser.js +1 -1
- package/src/main/js/sap/ushell/_URLTemplateProcessor/utils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +2 -2
- package/src/main/js/sap/ushell/adapters/local/MenuAdapter.js +35 -0
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +50 -26
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntimeContext.js +43 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Trigger.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/Component.js +8 -8
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +9 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +81 -24
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +6 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +18 -7
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +99 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +14 -7
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +15 -8
- package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +5 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/logger.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/state.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +17 -0
- package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +76 -76
- package/src/main/js/sap/ushell/components/applicationIntegration/Storage.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +4 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +19 -5
- package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +16 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/elements/model.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/relatedShellElements/RelatedShellElements.js +1 -1
- package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +7 -1
- package/src/main/js/sap/ushell/components/contentFinder/Component.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.controller.js +25 -0
- 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 +1 -1
- package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
- package/src/main/js/sap/ushell/components/pages/Component.js +1 -1
- package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
- package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +1 -1
- package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
- package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +191 -58
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/CustomTreeItem.fragment.xml +4 -4
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenu.view.xml +2 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenuPopover.fragment.xml +8 -1
- package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +1 -3
- package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/NavigationSvcSearchProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsForm.js +5 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +20 -2
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
- package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +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 +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/services/NavigationResolver.js +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/services/WorkPage.js +1 -1
- package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
- package/src/main/js/sap/ushell/library.js +1 -1
- package/src/main/js/sap/ushell/navigationMode.js +1 -1
- package/src/main/js/sap/ushell/performance/ShellAnalytics.js +1 -1
- package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
- package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/Renderer.js +2 -2
- package/src/main/js/sap/ushell/renderers/fiori2/Shell.controller.js +5 -4
- package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +7 -1
- package/src/main/js/sap/ushell/renderers/fiori2/ShellAsync.view.js +7 -1
- package/src/main/js/sap/ushell/renderers/fiori2/ShellLayout.js +20 -16
- package/src/main/js/sap/ushell/renderers/fiori2/resources/resources.properties +2 -0
- package/src/main/js/sap/ushell/renderers/fiori2/search/searchComponent/manifest.json +1 -1
- package/src/main/js/sap/ushell/services/AppConfiguration.js +24 -2
- package/src/main/js/sap/ushell/services/AppLifeCycle.js +36 -9
- package/src/main/js/sap/ushell/services/AppState.js +13 -1
- package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
- package/src/main/js/sap/ushell/services/CommonDataModel.js +1 -1
- 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/LaunchPage.js +3 -3
- package/src/main/js/sap/ushell/services/Menu.js +5 -1
- package/src/main/js/sap/ushell/services/Message.js +1 -1
- package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
- package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
- package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
- package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
- package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
- package/src/main/js/sap/ushell/services/Pages.js +1 -1
- package/src/main/js/sap/ushell/services/Personalization.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager.js +1 -1
- package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
- package/src/main/js/sap/ushell/services/Search.js +1 -1
- package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
- package/src/main/js/sap/ushell/services/SearchableContent.js +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/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/_ClientSideTargetResolution/Formatter.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundIndex.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundProvider.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/StagedLogger.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/SystemContext.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Utils.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +1 -1
- package/src/main/js/sap/ushell/services/_CommonDataModel/SiteConverter.js +1 -1
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
- package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
- package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
- package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
- package/src/main/js/sap/ushell/services/_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/_Ui5ComponentLoader/utils.js +1 -1
- package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstanceLink.js +1 -1
- package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
- package/src/main/js/sap/ushell/themes/base/ShellAppTitle.less +10 -27
- package/src/main/js/sap/ushell/themes/sap_belize/ShellHeader.less +1 -11
- package/src/main/js/sap/ushell/themes/sap_belize_hcb/ShellHeader.less +0 -11
- package/src/main/js/sap/ushell/themes/sap_belize_hcw/ShellHeader.less +1 -13
- package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +1 -9
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellHeader.less +1 -9
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellHeader.less +1 -10
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellHeader.less +0 -12
- package/src/main/js/sap/ushell/themes/sap_hcb/ShellHeader.less +0 -12
- package/src/main/js/sap/ushell/themes/sap_horizon/ShellAppTitle.less +1 -9
- package/src/main/js/sap/ushell/themes/sap_horizon_dark/ShellAppTitle.less +1 -7
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/ShellAppTitle.less +0 -9
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/ShellAppTitle.less +0 -11
- package/src/main/js/sap/ushell/ui/ShellHeader.fragment.xml +5 -1
- package/src/main/js/sap/ushell/ui/ShellHeader.js +5 -1
- package/src/main/js/sap/ushell/ui/ShellHeaderRenderer.js +1 -1
- package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
- package/src/main/js/sap/ushell/ui/contentFinder/AppBox.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/Page.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/Section.js +11 -3
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +115 -63
- package/src/main/js/sap/ushell/ui/shell/ShellHeadItem.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellNavigationMenu.js +30 -62
- package/src/main/js/sap/ushell/ui/shell/SysInfoBar.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +1 -1
- package/src/main/js/sap/ushell/ui/utils.js +1 -1
- package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
- package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
- package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
- package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n.properties +0 -5
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ar.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_bg.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ca.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_cs.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_cy.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_da.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_de.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_el.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_GB.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_US_sappsd.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_US_saprigi.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_US_saptrc.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_es.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_es_MX.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_et.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_fi.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_fr.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_fr_CA.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_hi.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_hr.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_hu.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_id.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_it.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_iw.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ja.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_kk.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ko.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_lt.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_lv.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ms.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_nl.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_no.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_pl.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_pt.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_pt_PT.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ro.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ru.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sh.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sk.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sl.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sv.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_th.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_tr.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_uk.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_vi.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_zh_CN.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_zh_TW.properties +0 -2
- package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/manifest.json +0 -66
|
@@ -111,7 +111,7 @@ sap.ui.define([
|
|
|
111
111
|
bValue: true
|
|
112
112
|
});
|
|
113
113
|
|
|
114
|
-
this.getPageConfig();
|
|
114
|
+
this.getPageConfig(oUrlData);
|
|
115
115
|
_that.setModulePaths();
|
|
116
116
|
arrPrimisesInit = _that.loadAdditionalLibs();
|
|
117
117
|
|
|
@@ -287,6 +287,11 @@ sap.ui.define([
|
|
|
287
287
|
return new jQuery.Deferred().resolve().promise();
|
|
288
288
|
}
|
|
289
289
|
},
|
|
290
|
+
executeLogoutFunctions: {
|
|
291
|
+
executeServiceCallFn: function (oServiceParams) {
|
|
292
|
+
return sap.ushell.Container.executeAsyncAndSyncLogoutFunctions();
|
|
293
|
+
}
|
|
294
|
+
},
|
|
290
295
|
uiDensityChange: {
|
|
291
296
|
executeServiceCallFn: function (oServiceParams) {
|
|
292
297
|
var isTouch = oServiceParams.oMessageData.body.isTouch;
|
|
@@ -337,7 +342,7 @@ sap.ui.define([
|
|
|
337
342
|
// and we will be the one to handle the opening of the link (with 'window.open').
|
|
338
343
|
event.preventDefault();
|
|
339
344
|
}
|
|
340
|
-
} else if (oTarget.target === undefined || oTarget.target === "") {
|
|
345
|
+
} else if (oTarget.target === undefined || oTarget.target === "" || (AppRuntimeContext.getIsScube() && (oTarget.target === "_top" || oTarget.target === "_self"))) {
|
|
341
346
|
//if the new hash is different than the current one, this is a cross application navigation
|
|
342
347
|
// and we will use the ushell service for that in order to properly create a new browser history
|
|
343
348
|
// entry
|
|
@@ -381,7 +386,7 @@ sap.ui.define([
|
|
|
381
386
|
/**
|
|
382
387
|
* @private
|
|
383
388
|
*/
|
|
384
|
-
this.getPageConfig = function () {
|
|
389
|
+
this.getPageConfig = function (oUrlData) {
|
|
385
390
|
var metaData,
|
|
386
391
|
shellConfig = {};
|
|
387
392
|
|
|
@@ -399,6 +404,15 @@ sap.ui.define([
|
|
|
399
404
|
}
|
|
400
405
|
}
|
|
401
406
|
window["sap-ushell-config"] = deepExtend({}, getDefaultShellConfig(), shellConfig);
|
|
407
|
+
|
|
408
|
+
//temp code for allways loading the web assistance plugin in the
|
|
409
|
+
//scube scenario. will be removed in the next release of s4 hana cloud
|
|
410
|
+
if (oUrlData.hasOwnProperty("sap-remote-intent")) {
|
|
411
|
+
var oPlugins = window["sap-ushell-config"].bootstrapPlugins;
|
|
412
|
+
if (oPlugins && oPlugins.hasOwnProperty("WAPluginAgent") && oPlugins["WAPluginAgent"].hasOwnProperty("config")) {
|
|
413
|
+
delete oPlugins["WAPluginAgent"].config["sap-plugin-agent"];
|
|
414
|
+
}
|
|
415
|
+
}
|
|
402
416
|
};
|
|
403
417
|
|
|
404
418
|
/**
|
|
@@ -625,7 +639,14 @@ sap.ui.define([
|
|
|
625
639
|
(AppRuntimeContext.getIsScube() ? Promise.resolve("") : AppLifeCycleAgent.getApplicationParameters(oURLParameters)).then(function (sParams) {
|
|
626
640
|
oAppInfo.url += sParams;
|
|
627
641
|
_that.setHashChangedCallback();
|
|
628
|
-
|
|
642
|
+
|
|
643
|
+
Promise.all([
|
|
644
|
+
sap.ushell.Container.getServiceAsync("Ui5ComponentLoader"),
|
|
645
|
+
sap.ushell.Container.getServiceAsync("AppLifeCycle")
|
|
646
|
+
]).then(function (values) {
|
|
647
|
+
var oUi5ComponentLoader = values[0];
|
|
648
|
+
var oAppLifeCycleService = values[1];
|
|
649
|
+
|
|
629
650
|
//remove the "sap.ushell" from libs to be loaded as it is not needed (its already
|
|
630
651
|
//loaded as part of the appruntime bundle)
|
|
631
652
|
if (oAppInfo.asyncHints && Array.isArray(oAppInfo.asyncHints.libs)) {
|
|
@@ -657,7 +678,9 @@ sap.ui.define([
|
|
|
657
678
|
if (sHash && sHash.indexOf("Shell-startIntent") === 0) {
|
|
658
679
|
sAppTitle = oResolutionResultWithComponentHandle.componentHandle.getMetadata().getManifestEntry("/sap.app/title");
|
|
659
680
|
if (typeof sAppTitle === "string") {
|
|
660
|
-
|
|
681
|
+
setTimeout(function () {
|
|
682
|
+
AppRuntimeService.sendMessageToOuterShell("sap.ushell.services.ShellUIService.setTitle", {sTitle: sAppTitle});
|
|
683
|
+
}, 2000);
|
|
661
684
|
}
|
|
662
685
|
}
|
|
663
686
|
} catch (error) {
|
|
@@ -665,29 +688,30 @@ sap.ui.define([
|
|
|
665
688
|
}
|
|
666
689
|
}
|
|
667
690
|
oComponentContainer.setComponent(oResolutionResultWithComponentHandle.componentHandle.getInstance());
|
|
668
|
-
AppLifeCycleAgent.
|
|
691
|
+
AppLifeCycleAgent.setCurrentApp(oComponentContainer, sAppIntent || "", oAppProperties.ui5ComponentName);
|
|
669
692
|
FesrEnhancer.setAppShortId(oResolutionResultWithComponentHandle.componentHandle);
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
delete (oAppInfo[sParameter]);
|
|
682
|
-
}
|
|
693
|
+
oAppLifeCycleService.prepareCurrentAppObject(
|
|
694
|
+
"UI5",
|
|
695
|
+
oResolutionResultWithComponentHandle.componentHandle.getInstance(),
|
|
696
|
+
false,
|
|
697
|
+
undefined
|
|
698
|
+
);
|
|
699
|
+
var oCurrentApp = oAppLifeCycleService.getCurrentApplication();
|
|
700
|
+
oCurrentApp.getInfo(["appFrameworkVersion", "appSupportInfo", "appId", "appVersion"]).then(function (oAppInfo) {
|
|
701
|
+
for (var sParameter in oAppInfo) {
|
|
702
|
+
if (oAppInfo[sParameter] === undefined || oAppInfo[sParameter] === "") {
|
|
703
|
+
delete (oAppInfo[sParameter]);
|
|
683
704
|
}
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
705
|
+
}
|
|
706
|
+
oAppInfo.appFrameworkId = "UI5";
|
|
707
|
+
oAppInfo.technicalAppComponentId = oAppProperties.ui5ComponentName;
|
|
708
|
+
if (typeof sAppTitle === "string") {
|
|
709
|
+
oAppInfo.appTitle = sAppTitle;
|
|
710
|
+
}
|
|
711
|
+
AppLifeCycleAgent.setCurrentAppAttributes(oAppInfo);
|
|
712
|
+
setTimeout(function () {
|
|
713
|
+
AppRuntimeService.sendMessageToOuterShell("sap.ushell.services.AppLifeCycle.updateCurrentAppInfo", {info: oAppInfo});
|
|
714
|
+
}, 500);
|
|
691
715
|
});
|
|
692
716
|
_that.considerChangingTheDefaultFullWidthVal(oResolutionResultWithComponentHandle);
|
|
693
717
|
_that.overrideUrlHelperFuncs();
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
// Copyright (c) 2009-2023 SAP SE, All Rights Reserved
|
|
2
2
|
sap.ui.define([
|
|
3
|
-
"sap/base/assert"
|
|
4
|
-
|
|
3
|
+
"sap/base/assert",
|
|
4
|
+
"sap/ushell/utils/UrlParsing",
|
|
5
|
+
"sap/ushell/utils/clone"
|
|
6
|
+
], function (assert, UrlParsing, clone) {
|
|
5
7
|
"use strict";
|
|
6
8
|
|
|
7
9
|
function AppRuntimeContext () {
|
|
@@ -32,6 +34,45 @@ sap.ui.define([
|
|
|
32
34
|
this.checkDataLossAndContinue = function () {
|
|
33
35
|
return (_AppLifeCycleAgent ? _AppLifeCycleAgent.checkDataLossAndContinue() : true);
|
|
34
36
|
};
|
|
37
|
+
|
|
38
|
+
this.checkIntentsConversionForScube = function (aAppsIntents) {
|
|
39
|
+
var that = this;
|
|
40
|
+
|
|
41
|
+
if (!this.getIsScube() || !aAppsIntents || aAppsIntents.length === 0) {
|
|
42
|
+
return Promise.resolve(aAppsIntents);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
return new Promise(function (fnResolve) {
|
|
46
|
+
var aAppsIntentsCopy = clone(aAppsIntents);
|
|
47
|
+
var aIntents = [];
|
|
48
|
+
var oParsedHash;
|
|
49
|
+
|
|
50
|
+
aIntents = aAppsIntentsCopy.map(function (oApp) {
|
|
51
|
+
return {
|
|
52
|
+
target: {
|
|
53
|
+
shellHash: oApp.intent
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
sap.ushell.Container.getServiceAsync("CrossApplicationNavigation").then(function (oCrossAppNavService) {
|
|
59
|
+
oCrossAppNavService.isNavigationSupported(aIntents, undefined, true).then(function (aIntentsSupported) {
|
|
60
|
+
for (var i = 0; i < aIntentsSupported.length; i++) {
|
|
61
|
+
if (!aIntentsSupported[i].supported) {
|
|
62
|
+
oParsedHash = UrlParsing.parseShellHash(aAppsIntentsCopy[i].intent);
|
|
63
|
+
oParsedHash.params["sap-shell-so"] = oParsedHash.semanticObject;
|
|
64
|
+
oParsedHash.params["sap-shell-action"] = oParsedHash.action;
|
|
65
|
+
oParsedHash.params["sap-remote-system"] = that.getRemoteSystemId();
|
|
66
|
+
oParsedHash.semanticObject = "Shell";
|
|
67
|
+
oParsedHash.action = "startIntent";
|
|
68
|
+
aAppsIntentsCopy[i].intent = "#" + UrlParsing.constructShellHash(oParsedHash);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
fnResolve(aAppsIntentsCopy);
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
};
|
|
35
76
|
}
|
|
36
77
|
|
|
37
78
|
return new AppRuntimeContext();
|
|
@@ -11,6 +11,14 @@ function (
|
|
|
11
11
|
"use strict";
|
|
12
12
|
|
|
13
13
|
return Component.extend("sap.ushell.appRuntime.ui5.plugins.scriptAgent.Component", {
|
|
14
|
+
metadata: {
|
|
15
|
+
version: "1.0.0",
|
|
16
|
+
dependencies: {
|
|
17
|
+
libs: [ "sap.m" ],
|
|
18
|
+
components: []
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
|
|
14
22
|
init: function () {
|
|
15
23
|
var mConfig = this.getComponentData(),
|
|
16
24
|
oPageUriParams = new URI().search(true),
|
|
@@ -32,19 +40,11 @@ function (
|
|
|
32
40
|
scriptURL = mConfig.config.url;
|
|
33
41
|
}
|
|
34
42
|
|
|
35
|
-
jQuery.ajaxSetup({
|
|
36
|
-
cache: true
|
|
37
|
-
});
|
|
38
|
-
|
|
39
43
|
try {
|
|
40
44
|
jQuery.getScript(scriptURL);
|
|
41
45
|
} catch (ex) {
|
|
42
46
|
Log.error(ex);
|
|
43
47
|
}
|
|
44
|
-
|
|
45
|
-
jQuery.ajaxSetup({
|
|
46
|
-
cache: false
|
|
47
|
-
});
|
|
48
48
|
}
|
|
49
49
|
});
|
|
50
50
|
});
|
|
@@ -5,13 +5,15 @@ sap.ui.define([
|
|
|
5
5
|
"sap/base/util/uid",
|
|
6
6
|
"sap/ushell/EventHub",
|
|
7
7
|
"sap/ushell/appRuntime/ui5/AppRuntimeService",
|
|
8
|
-
"sap/ui/core/Core"
|
|
8
|
+
"sap/ui/core/Core",
|
|
9
|
+
"sap/ushell/appRuntime/ui5/AppRuntimeContext"
|
|
9
10
|
], function (
|
|
10
11
|
ObjectPath,
|
|
11
12
|
fnGetUid,
|
|
12
13
|
EventHub,
|
|
13
14
|
AppRuntimeService,
|
|
14
|
-
Core
|
|
15
|
+
Core,
|
|
16
|
+
AppRuntimeContext
|
|
15
17
|
) {
|
|
16
18
|
"use strict";
|
|
17
19
|
|
|
@@ -104,7 +106,11 @@ sap.ui.define([
|
|
|
104
106
|
//sap.ushell.Container.getRenderer("fiori2").hideHeaderEndItem(oItem.getId(), false, [sLaunchpadState1, sLaunchpadState2]);
|
|
105
107
|
}
|
|
106
108
|
function _getConfiguration () {
|
|
107
|
-
|
|
109
|
+
if (AppRuntimeContext.getIsScube()) {
|
|
110
|
+
return {
|
|
111
|
+
enablePersonalization: true
|
|
112
|
+
};
|
|
113
|
+
}
|
|
108
114
|
return {};
|
|
109
115
|
}
|
|
110
116
|
function _setHeaderItemVisibility (sItem, sLaunchpadState, bToLocal, bIsVisible) {
|
|
@@ -59,6 +59,7 @@ sap.ui.define([
|
|
|
59
59
|
* @private
|
|
60
60
|
*/
|
|
61
61
|
this.init = function (sModule, ofnCreateApplication, ofnRenderApp, bEnableCache, sAppId, oAppInfo) {
|
|
62
|
+
this.resetCurrentApp();
|
|
62
63
|
sAppResolutionModule = sModule;
|
|
63
64
|
fnCreateApplication = ofnCreateApplication;
|
|
64
65
|
fnRenderApp = ofnRenderApp;
|
|
@@ -133,7 +134,10 @@ sap.ui.define([
|
|
|
133
134
|
return new Promise(function (fnResolve, fnReject) {
|
|
134
135
|
var sUrl,
|
|
135
136
|
sAppId,
|
|
136
|
-
sAppIntent
|
|
137
|
+
sAppIntent,
|
|
138
|
+
oParsedShellIntent,
|
|
139
|
+
sScubeAppIntent = "",
|
|
140
|
+
sKeepAliveAppKey;
|
|
137
141
|
|
|
138
142
|
AppRuntimeService.sendMessageToOuterShell(
|
|
139
143
|
"sap.ushell.appRuntime.iframeIsBusy", {
|
|
@@ -145,6 +149,10 @@ sap.ui.define([
|
|
|
145
149
|
if (AppRuntimeContext.getIsScube()) {
|
|
146
150
|
sAppIntent = UriParameters.fromURL(sUrl).get("sap-remote-intent");
|
|
147
151
|
assert(typeof sAppIntent === "string", "AppLifeCycleAgent::create - sAppIntent must be string");
|
|
152
|
+
if (oMsg.body.sHash.indexOf("Shell-startIntent") === 0) {
|
|
153
|
+
oParsedShellIntent = oUrlParsing.parseShellHash(oMsg.body.sHash);
|
|
154
|
+
sScubeAppIntent = oParsedShellIntent.params["sap-shell-so"] + "-" + oParsedShellIntent.params["sap-shell-action"];
|
|
155
|
+
}
|
|
148
156
|
} else {
|
|
149
157
|
sAppId = UriParameters.fromURL(sUrl).get("sap-ui-app-id");
|
|
150
158
|
assert(typeof sAppId === "string", "AppLifeCycleAgent::create - sAppId must be string");
|
|
@@ -163,6 +171,18 @@ sap.ui.define([
|
|
|
163
171
|
}
|
|
164
172
|
Core.getEventBus().publish("launchpad", "appOpening", {});
|
|
165
173
|
that.getAppInfo(sAppId, sUrl, sAppIntent).then(function (values) {
|
|
174
|
+
if (AppRuntimeContext.getIsScube() && sScubeAppIntent.length > 0) {
|
|
175
|
+
sKeepAliveAppKey = Object.keys(oCachedApplications).find(function (sCachedKey) {
|
|
176
|
+
return oCachedApplications[sCachedKey].sAppIntent === sScubeAppIntent && oCachedApplications[sCachedKey].ui5ComponentName === values.oResolvedHashFragment.ui5ComponentName;
|
|
177
|
+
});
|
|
178
|
+
if (sKeepAliveAppKey) {
|
|
179
|
+
that.destroy({
|
|
180
|
+
body: {
|
|
181
|
+
sCacheId: sKeepAliveAppKey
|
|
182
|
+
}
|
|
183
|
+
}, true);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
166
186
|
that.expandSapIntentParams(new URI(sUrl).query(true)).then(function (oURLParameters) {
|
|
167
187
|
fnCreateApplication(sAppId, oURLParameters, values.oResolvedHashFragment, sAppIntent, values.oParsedHash)
|
|
168
188
|
.then(function (oResolutionResult) {
|
|
@@ -172,7 +192,9 @@ sap.ui.define([
|
|
|
172
192
|
bValue: false
|
|
173
193
|
});
|
|
174
194
|
Core.getEventBus().publish("sap.ushell", "appOpened", {});
|
|
175
|
-
fnResolve(
|
|
195
|
+
fnResolve({
|
|
196
|
+
deletedKeepAliveId: sKeepAliveAppKey
|
|
197
|
+
});
|
|
176
198
|
});
|
|
177
199
|
});
|
|
178
200
|
});
|
|
@@ -182,7 +204,7 @@ sap.ui.define([
|
|
|
182
204
|
/**
|
|
183
205
|
* @private
|
|
184
206
|
*/
|
|
185
|
-
this.destroy = function (oMsg) {
|
|
207
|
+
this.destroy = function (oMsg, bDestroyKeepAlive) {
|
|
186
208
|
function appDestroy (oApplication) {
|
|
187
209
|
var sAppId = oApplication.sId || "<unkown>";
|
|
188
210
|
try {
|
|
@@ -196,7 +218,7 @@ sap.ui.define([
|
|
|
196
218
|
}
|
|
197
219
|
}
|
|
198
220
|
|
|
199
|
-
if (oRunningApp === undefined) {
|
|
221
|
+
if (oRunningApp.oApp === undefined && bDestroyKeepAlive !== true) {
|
|
200
222
|
AppRuntimeService.sendMessageToOuterShell("sap.ushell.appRuntime.isInvalidIframe", {bValue: true});
|
|
201
223
|
return Promise.resolve();
|
|
202
224
|
}
|
|
@@ -204,16 +226,16 @@ sap.ui.define([
|
|
|
204
226
|
var sStorageKey = oMsg.body.sCacheId;
|
|
205
227
|
|
|
206
228
|
if (sStorageKey && oCachedApplications[sStorageKey]) {
|
|
207
|
-
if (oCachedApplications[sStorageKey] === oRunningApp) {
|
|
208
|
-
|
|
229
|
+
if (oCachedApplications[sStorageKey].oApp === oRunningApp.oApp) {
|
|
230
|
+
this.resetCurrentApp();
|
|
209
231
|
}
|
|
210
|
-
delete oRouterDisableRetriggerApplications[oCachedApplications[sStorageKey].sId];
|
|
211
|
-
appDestroy(oCachedApplications[sStorageKey]);
|
|
232
|
+
delete oRouterDisableRetriggerApplications[oCachedApplications[sStorageKey].oApp.sId];
|
|
233
|
+
appDestroy(oCachedApplications[sStorageKey].oApp);
|
|
212
234
|
delete oCachedApplications[sStorageKey];
|
|
213
|
-
} else if (oRunningApp) {
|
|
214
|
-
delete oRouterDisableRetriggerApplications[oRunningApp.sId];
|
|
215
|
-
appDestroy(oRunningApp);
|
|
216
|
-
|
|
235
|
+
} else if (oRunningApp.oApp) {
|
|
236
|
+
delete oRouterDisableRetriggerApplications[oRunningApp.oApp.sId];
|
|
237
|
+
appDestroy(oRunningApp.oApp);
|
|
238
|
+
this.resetCurrentApp();
|
|
217
239
|
}
|
|
218
240
|
sap.ushell.Container.cleanDirtyStateProviderArray();
|
|
219
241
|
if (oShellUIService) {
|
|
@@ -230,10 +252,10 @@ sap.ui.define([
|
|
|
230
252
|
*/
|
|
231
253
|
this.store = function (oMsg) {
|
|
232
254
|
var sStorageKey = oMsg.body.sCacheId,
|
|
233
|
-
oCachedEntry = oRunningApp,
|
|
255
|
+
oCachedEntry = this.cloneCurrentAppEntry(oRunningApp),
|
|
234
256
|
oApp;
|
|
235
257
|
|
|
236
|
-
if (oRunningApp === undefined) {
|
|
258
|
+
if (oRunningApp.oApp === undefined) {
|
|
237
259
|
AppRuntimeService.sendMessageToOuterShell("sap.ushell.appRuntime.isInvalidIframe", {bValue: true});
|
|
238
260
|
return Promise.resolve();
|
|
239
261
|
}
|
|
@@ -243,8 +265,8 @@ sap.ui.define([
|
|
|
243
265
|
oAppBackNavigationFunc[sStorageKey] = oShellUIService._getBackNavigationCallback();
|
|
244
266
|
}
|
|
245
267
|
|
|
246
|
-
oApp = oCachedEntry.getComponentInstance();
|
|
247
|
-
oCachedEntry.setVisible(false);
|
|
268
|
+
oApp = oCachedEntry.oApp.getComponentInstance();
|
|
269
|
+
oCachedEntry.oApp.setVisible(false);
|
|
248
270
|
|
|
249
271
|
// keep application's dirty state providers when stored
|
|
250
272
|
if (sap.ushell.Container) {
|
|
@@ -275,15 +297,15 @@ sap.ui.define([
|
|
|
275
297
|
this.restore = function (oMsg) {
|
|
276
298
|
var sStorageKey = oMsg.body.sCacheId,
|
|
277
299
|
oCachedEntry = oCachedApplications[sStorageKey],
|
|
278
|
-
oApp = oCachedEntry.getComponentInstance(),
|
|
279
|
-
bRouterDisableRetrigger = oRouterDisableRetriggerApplications[oCachedEntry.sId];
|
|
300
|
+
oApp = oCachedEntry.oApp.getComponentInstance(),
|
|
301
|
+
bRouterDisableRetrigger = oRouterDisableRetriggerApplications[oCachedEntry.oApp.sId];
|
|
280
302
|
|
|
281
303
|
hasher.disableCFLPUpdate = true;
|
|
282
304
|
hasher.replaceHash(oMsg.body.sHash);
|
|
283
305
|
hasher.disableCFLPUpdate = false;
|
|
284
306
|
|
|
285
307
|
Core.getEventBus().publish("launchpad", "appOpening", {});
|
|
286
|
-
oCachedEntry.setVisible(true);
|
|
308
|
+
oCachedEntry.oApp.setVisible(true);
|
|
287
309
|
|
|
288
310
|
// re-register application's dirty state providers when restored
|
|
289
311
|
if (oAppDirtyStateProviders[sStorageKey] && sap.ushell.Container) {
|
|
@@ -309,10 +331,14 @@ sap.ui.define([
|
|
|
309
331
|
}
|
|
310
332
|
}
|
|
311
333
|
|
|
312
|
-
oRunningApp = oCachedEntry;
|
|
334
|
+
oRunningApp = this.cloneCurrentAppEntry(oCachedEntry);
|
|
313
335
|
}
|
|
314
336
|
Core.getEventBus().publish("sap.ushell", "appOpened", {});
|
|
315
337
|
|
|
338
|
+
setTimeout(function () {
|
|
339
|
+
AppRuntimeService.sendMessageToOuterShell("sap.ushell.services.AppLifeCycle.setNewAppInfo", {info: oCachedEntry.oAppAttributes});
|
|
340
|
+
}, 500);
|
|
341
|
+
|
|
316
342
|
return Promise.resolve();
|
|
317
343
|
};
|
|
318
344
|
|
|
@@ -460,14 +486,45 @@ sap.ui.define([
|
|
|
460
486
|
/**
|
|
461
487
|
* @private
|
|
462
488
|
*/
|
|
463
|
-
this.
|
|
464
|
-
|
|
489
|
+
this.setCurrentApp = function (oApp, sAppIntent, ui5ComponentName) {
|
|
490
|
+
this.resetCurrentApp();
|
|
491
|
+
oRunningApp.oApp = oApp;
|
|
492
|
+
oRunningApp.sAppIntent = sAppIntent;
|
|
493
|
+
oRunningApp.ui5ComponentName = ui5ComponentName;
|
|
465
494
|
// Initializing the disableKeepAliveRestoreRouterRetrigger flag to true
|
|
466
|
-
if (oRunningApp) {
|
|
467
|
-
oRouterDisableRetriggerApplications[oRunningApp.sId] = true;
|
|
495
|
+
if (oRunningApp.oApp) {
|
|
496
|
+
oRouterDisableRetriggerApplications[oRunningApp.oApp.sId] = true;
|
|
468
497
|
}
|
|
469
498
|
};
|
|
470
499
|
|
|
500
|
+
/**
|
|
501
|
+
* @private
|
|
502
|
+
*/
|
|
503
|
+
this.setCurrentAppAttributes = function (oAppInfo) {
|
|
504
|
+
oRunningApp.oAppAttributes = oAppInfo;
|
|
505
|
+
};
|
|
506
|
+
|
|
507
|
+
/**
|
|
508
|
+
* @private
|
|
509
|
+
*/
|
|
510
|
+
this.resetCurrentApp = function () {
|
|
511
|
+
oRunningApp = {
|
|
512
|
+
oApp: undefined,
|
|
513
|
+
sAppIntent: undefined,
|
|
514
|
+
ui5ComponentName: undefined,
|
|
515
|
+
oAppAttributes: {}
|
|
516
|
+
};
|
|
517
|
+
};
|
|
518
|
+
|
|
519
|
+
this.cloneCurrentAppEntry = function (oEntry) {
|
|
520
|
+
return {
|
|
521
|
+
oApp: oEntry.oApp,
|
|
522
|
+
sAppIntent: oEntry.sAppIntent,
|
|
523
|
+
ui5ComponentName: oEntry.ui5ComponentName,
|
|
524
|
+
oAppAttributes: oEntry.oAppAttributes
|
|
525
|
+
};
|
|
526
|
+
};
|
|
527
|
+
|
|
471
528
|
/**
|
|
472
529
|
* @private
|
|
473
530
|
*/
|
|
@@ -5,8 +5,9 @@ sap.ui.define([
|
|
|
5
5
|
"sap/ushell/appRuntime/ui5/AppRuntimeService",
|
|
6
6
|
"sap/ushell/services/_AppState/AppState",
|
|
7
7
|
"sap/ushell/utils",
|
|
8
|
-
"sap/ui/thirdparty/jquery"
|
|
9
|
-
|
|
8
|
+
"sap/ui/thirdparty/jquery",
|
|
9
|
+
"sap/ushell/appRuntime/ui5/AppRuntimeContext"
|
|
10
|
+
], function (AppState, AppRuntimeService, AppStateAppState, utils, jQuery, AppRuntimeContext) {
|
|
10
11
|
"use strict";
|
|
11
12
|
|
|
12
13
|
function AppStateProxy (oAdapter, oContainerInterface, sParameter, oConfig) {
|
|
@@ -14,6 +15,9 @@ sap.ui.define([
|
|
|
14
15
|
|
|
15
16
|
this.createEmptyAppStateOrig = this.createEmptyAppState;
|
|
16
17
|
this.createEmptyAppState = function (oComponent, bTransientEnforced, sPersistencyMethod, oPersistencySettings) {
|
|
18
|
+
if (AppRuntimeContext.getIsScube()) {
|
|
19
|
+
bTransientEnforced = false;
|
|
20
|
+
}
|
|
17
21
|
var oAppState = this.createEmptyAppStateOrig(oComponent, bTransientEnforced, sPersistencyMethod, oPersistencySettings);
|
|
18
22
|
if (typeof bTransientEnforced === "boolean" && oAppState._bTransient !== bTransientEnforced) {
|
|
19
23
|
oAppState._bTransient = bTransientEnforced;
|
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
sap.ui.define([
|
|
4
4
|
"sap/ushell/services/Bookmark",
|
|
5
|
-
"sap/ushell/appRuntime/ui5/AppRuntimeService"
|
|
6
|
-
|
|
5
|
+
"sap/ushell/appRuntime/ui5/AppRuntimeService",
|
|
6
|
+
"sap/ushell/appRuntime/ui5/AppRuntimeContext"
|
|
7
|
+
], function (Bookmark, AppRuntimeService, AppRuntimeContext) {
|
|
7
8
|
"use strict";
|
|
8
9
|
|
|
9
10
|
function BookmarkProxy (oContainerInterface, sParameters, oServiceConfiguration) {
|
|
@@ -12,11 +13,21 @@ sap.ui.define([
|
|
|
12
13
|
//addBookmark(oParameters, vContainer?) : object - jQuery.Deferred promise
|
|
13
14
|
//Adds a bookmark tile to one of the user's classic homepage groups or to multiple provided content nodes.
|
|
14
15
|
this.addBookmark = function (oParameters, vContainer) {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
var fnAddBookmark = function () {
|
|
17
|
+
return AppRuntimeService.sendMessageToOuterShell(
|
|
18
|
+
"sap.ushell.services.Bookmark.addBookmarkUI5", {
|
|
19
|
+
oParameters: oParameters,
|
|
20
|
+
vContainer: vContainer
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
if (oParameters.url.startsWith("#")) {
|
|
25
|
+
return AppRuntimeContext.checkIntentsConversionForScube([{ intent: oParameters.url }]).then(function (aIntentResult) {
|
|
26
|
+
oParameters.url = aIntentResult[0].intent;
|
|
27
|
+
return fnAddBookmark();
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
return fnAddBookmark();
|
|
20
31
|
};
|
|
21
32
|
|
|
22
33
|
this.getShellGroupIDs = function () {
|
|
@@ -4,14 +4,18 @@ sap.ui.define([
|
|
|
4
4
|
"sap/ushell/appRuntime/ui5/AppRuntimeService",
|
|
5
5
|
"sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer",
|
|
6
6
|
"sap/ushell/appRuntime/ui5/ui/UIProxy",
|
|
7
|
-
"sap/ushell/appRuntime/ui5/SessionHandlerAgent"
|
|
8
|
-
|
|
7
|
+
"sap/ushell/appRuntime/ui5/SessionHandlerAgent",
|
|
8
|
+
"sap/base/assert"
|
|
9
|
+
], function (oContainer, AppRuntimeService, Renderer, UIProxy, SessionHandlerAgent, assert) {
|
|
9
10
|
"use strict";
|
|
10
11
|
|
|
11
12
|
function ContainerProxy () {
|
|
12
13
|
var oAdapter,
|
|
13
14
|
isDirty = false,
|
|
14
|
-
aRegisteredDirtyMethods = []
|
|
15
|
+
aRegisteredDirtyMethods = [],
|
|
16
|
+
aAsyncLogoutEventFunctions = [],
|
|
17
|
+
aSyncLogoutEventFunctions = [],
|
|
18
|
+
bRegistered = false;
|
|
15
19
|
|
|
16
20
|
this.bootstrap = function (sPlatform, mAdapterPackagesByPlatform) {
|
|
17
21
|
return sap.ushell.bootstrap(sPlatform, mAdapterPackagesByPlatform).then(function (Container) {
|
|
@@ -115,6 +119,98 @@ sap.ui.define([
|
|
|
115
119
|
sap.ushell.Container.setAsyncDirtyStateProviders = function (aDirtyStateProviders) {
|
|
116
120
|
aRegisteredDirtyMethods = aDirtyStateProviders;
|
|
117
121
|
};
|
|
122
|
+
|
|
123
|
+
function _insertFunction(aFunctionsArray, fnFunction) {
|
|
124
|
+
var bFound = false;
|
|
125
|
+
|
|
126
|
+
for (var i = 0; i < aFunctionsArray.length; i++) {
|
|
127
|
+
if (aFunctionsArray[i] === fnFunction) {
|
|
128
|
+
bFound = true;
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
if (!bFound) {
|
|
133
|
+
aFunctionsArray.push(fnFunction);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// Attaches a listener to the logout event.
|
|
138
|
+
// The fnFunction must return a promise. FLP will wait for the promise
|
|
139
|
+
// to be resolved before doing the actual logout.
|
|
140
|
+
sap.ushell.Container.attachLogoutEvent = function (fnFunction, bAsyncFunction) {
|
|
141
|
+
assert(typeof (fnFunction) === "function", "Container.attachLogoutEvent: fnFunction must be a function");
|
|
142
|
+
|
|
143
|
+
if (bAsyncFunction === true) {
|
|
144
|
+
_insertFunction(aAsyncLogoutEventFunctions, fnFunction);
|
|
145
|
+
} else {
|
|
146
|
+
_insertFunction(aSyncLogoutEventFunctions, fnFunction);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
if (!bRegistered) {
|
|
150
|
+
bRegistered = true;
|
|
151
|
+
|
|
152
|
+
return AppRuntimeService.sendMessageToOuterShell(
|
|
153
|
+
"sap.ushell.services.Container.attachLogoutEvent", {});
|
|
154
|
+
}
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
sap.ushell.Container._getAsyncFunctionsArray = function () {
|
|
158
|
+
return aAsyncLogoutEventFunctions;
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
sap.ushell.Container._getSyncFunctionsArray = function () {
|
|
162
|
+
return aAsyncLogoutEventFunctions;
|
|
163
|
+
};
|
|
164
|
+
|
|
165
|
+
sap.ushell.Container.executeAsyncAndSyncLogoutFunctions = function () {
|
|
166
|
+
return new Promise(function (fnResolve, fnReject) {
|
|
167
|
+
var arrAsyncLogoutEventsPromises = [];
|
|
168
|
+
|
|
169
|
+
if (aSyncLogoutEventFunctions.length > 0) {
|
|
170
|
+
for (var i = 0; i < aSyncLogoutEventFunctions.length; i++) {
|
|
171
|
+
aSyncLogoutEventFunctions[i]();
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
if (aAsyncLogoutEventFunctions.length > 0) {
|
|
176
|
+
for (var j = 0; j < aAsyncLogoutEventFunctions.length; j++) {
|
|
177
|
+
arrAsyncLogoutEventsPromises.push(aAsyncLogoutEventFunctions[j]());
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
Promise.all(arrAsyncLogoutEventsPromises).then(fnResolve);
|
|
182
|
+
});
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
function _detachFunction (aFunctionArray, fnFunction) {
|
|
186
|
+
for (var i = 0; i < aFunctionArray.length; i++) {
|
|
187
|
+
if (aFunctionArray[i] === fnFunction) {
|
|
188
|
+
aFunctionArray.splice(i, 1);
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
sap.ushell.Container.detachLogoutEvent = function (fnFunction) {
|
|
195
|
+
_detachFunction(aSyncLogoutEventFunctions, fnFunction);
|
|
196
|
+
_detachFunction(aAsyncLogoutEventFunctions, fnFunction);
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
sap.ushell.Container._getAsyncFunctionsArray = function () {
|
|
200
|
+
return aAsyncLogoutEventFunctions;
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
sap.ushell.Container._getSyncFunctionsArray = function () {
|
|
204
|
+
return aSyncLogoutEventFunctions;
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
sap.ushell.Container._clearAsyncFunctionsArray = function () {
|
|
208
|
+
aAsyncLogoutEventFunctions = [];
|
|
209
|
+
};
|
|
210
|
+
|
|
211
|
+
sap.ushell.Container._clearSyncFunctionsArray = function () {
|
|
212
|
+
aSyncLogoutEventFunctions = [];
|
|
213
|
+
};
|
|
118
214
|
});
|
|
119
215
|
};
|
|
120
216
|
}
|