@sapui5/sap.ushell 1.118.0 → 1.119.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 +6 -5
- package/src/main/js/sap/ushell/.library +1 -1
- package/src/main/js/sap/ushell/ApplicationType.js +1 -1
- package/src/main/js/sap/ushell/CanvasShapesManager.js +13 -7
- package/src/main/js/sap/ushell/Config.js +1 -1
- package/src/main/js/sap/ushell/Container.js +255 -185
- package/src/main/js/sap/ushell/EventHub.js +1 -1
- package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
- package/src/main/js/sap/ushell/Fiori20AdapterTest.js +2 -2
- package/src/main/js/sap/ushell/Layout.js +3 -3
- package/src/main/js/sap/ushell/NWBCInterface.js +3 -3
- package/src/main/js/sap/ushell/TechnicalParameters.js +3 -3
- package/src/main/js/sap/ushell/UIActions.js +44 -44
- 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 +4 -4
- package/src/main/js/sap/ushell/User.js +1 -1
- package/src/main/js/sap/ushell/UserActivityLog.js +8 -8
- package/src/main/js/sap/ushell/_ApplicationType/guiResolution.js +5 -5
- package/src/main/js/sap/ushell/_ApplicationType/systemAlias.js +1 -1
- package/src/main/js/sap/ushell/_ApplicationType/urlTemplateResolution.js +16 -11
- package/src/main/js/sap/ushell/_Config/utils.js +5 -5
- 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 +14 -8
- package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +4 -5
- package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -2
- package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +12 -13
- package/src/main/js/sap/ushell/adapters/cdm/MenuAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +4 -3
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +2 -2
- 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/_Personalization/internals.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +5 -2
- package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +4 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +3 -4
- package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +10 -11
- package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/utilsCdm.js +2 -2
- package/src/main/js/sap/ushell/adapters/cep/MenuAdapter.js +0 -1
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +3 -4
- package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +3 -2
- package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +2 -3
- package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +3 -3
- package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -3
- package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +2 -3
- package/src/main/js/sap/ushell/adapters/local/MenuAdapter.js +1 -1
- 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 +2 -2
- package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -2
- 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 -2
- package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +5 -9
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer.js +5 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +31 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +2 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +7 -3
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/FLPLoader.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 +3 -3
- package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.js +2 -2
- 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 +1 -0
- package/src/main/js/sap/ushell/bootstrap/common/common.load.core-min.js +2 -2
- package/src/main/js/sap/ushell/bootstrap/common/common.load.launchpad.js +7 -3
- package/src/main/js/sap/ushell/bootstrap/common/common.load.script.js +4 -4
- package/src/main/js/sap/ushell/bootstrap/common/common.util.js +7 -7
- package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxConfig.json +214 -0
- package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxSite.json +511 -0
- package/src/main/js/sap/ushell/bootstrap/sandbox2.js +398 -0
- package/src/main/js/sap/ushell/components/CatalogsManager.js +26 -25
- package/src/main/js/sap/ushell/components/ComponentKeysHandler.js +20 -15
- package/src/main/js/sap/ushell/components/DestroyHelper.js +2 -2
- package/src/main/js/sap/ushell/components/HomepageManager.js +6 -6
- package/src/main/js/sap/ushell/components/_HeaderManager/ControlManager.js +1 -1
- package/src/main/js/sap/ushell/components/_HomepageManager/PagingManager.js +5 -5
- package/src/main/js/sap/ushell/components/appfinder/AppFinder.controller.js +19 -15
- package/src/main/js/sap/ushell/components/appfinder/AppFinderView.js +12 -12
- package/src/main/js/sap/ushell/components/appfinder/Catalog.controller.js +18 -18
- package/src/main/js/sap/ushell/components/appfinder/CatalogView.js +1 -1
- package/src/main/js/sap/ushell/components/appfinder/EasyAccess.controller.js +2 -2
- package/src/main/js/sap/ushell/components/appfinder/HierarchyApps.controller.js +6 -6
- package/src/main/js/sap/ushell/components/appfinder/VisualizationOrganizerHelper.js +4 -4
- package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +8 -6
- package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +2 -2
- package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/WebGUIStatefulHandler.js +5 -5
- package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +21 -26
- 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/cards/Configuration.controller.js +2 -2
- package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.controller.js +6 -2
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.js +44 -6
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Application.js +22 -9
- package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +23 -16
- 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/factsheet/controls/PictureTile.js +1 -2
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewer.js +5 -6
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewerItem.js +1 -2
- package/src/main/js/sap/ushell/components/factsheet/factory/ThingInspector.js +3 -3
- package/src/main/js/sap/ushell/components/homeApp/error/HomeAppError.controller.js +0 -1
- package/src/main/js/sap/ushell/components/homeApp/error/HomeAppError.view.xml +7 -6
- package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.controller.js +2 -7
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +13 -13
- 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 +10 -10
- 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/StateManager.js +2 -2
- package/src/main/js/sap/ushell/components/pages/controller/ImportDialog.controller.js +12 -12
- package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +93 -95
- package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/pages/view/PageRuntime.view.xml +31 -23
- 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/controller/MenuBar.controller.js +7 -6
- 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 +1 -3
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +2 -2
- package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +2 -2
- package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Search/ESearch.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 +2 -2
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchCEP.controller.js +74 -16
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchFieldFragment.fragment.xml +2 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -2
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -2
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -2
- package/src/main/js/sap/ushell/components/shell/Settings/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/ErrorMessageHelper.js +8 -9
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +53 -13
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +5 -0
- package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +41 -38
- package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.controller.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.controller.js +2 -2
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsForm.js +1 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +7 -3
- 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/tiles/applauncher/StaticTile.view.js +0 -2
- package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTileTmp.view.js +0 -2
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTileTmp.view.js +0 -2
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/StaticTile.view.js +0 -2
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.controller.js +1 -1
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.view.js +0 -2
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/oData4Analytics.js +41 -48
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/smartBusinessUtil.js +3 -3
- package/src/main/js/sap/ushell/components/tiles/utils.js +1 -1
- package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +5 -18
- package/src/main/js/sap/ushell/components/visualizationOrganizer/VisualizationOrganizerPopover.fragment.xml +3 -3
- 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 +65 -95
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.layout.js +182 -90
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageHost.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/WorkPageColumnRenderer.js +0 -2
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +53 -3
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRowRenderer.js +3 -0
- package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/workPageBuilder/view/WorkPageBuilder.view.xml +1 -0
- package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +6 -2
- package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/services/NavigationResolver.js +1 -2
- package/src/main/js/sap/ushell/components/workPageRuntime/services/WorkPage.js +1 -2
- package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
- package/src/main/js/sap/ushell/library.js +4 -2
- package/src/main/js/sap/ushell/navigationMode.js +10 -5
- package/src/main/js/sap/ushell/override.js +1 -1
- package/src/main/js/sap/ushell/performance/FesrEnhancer.js +248 -187
- package/src/main/js/sap/ushell/performance/ShellAnalytics.js +206 -207
- package/src/main/js/sap/ushell/performance/StatisticalRecord.js +366 -230
- package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/Renderer.js +39 -23
- package/src/main/js/sap/ushell/renderers/fiori2/RendererExtensions.js +105 -25
- package/src/main/js/sap/ushell/renderers/fiori2/Shell.controller.js +63 -52
- package/src/main/js/sap/ushell/renderers/fiori2/ShellLayout.js +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/resources/resources.properties +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/resources/resources_ko.properties +1 -1
- package/src/main/js/sap/ushell/renderers/fiori2/search/searchComponent/manifest.json +1 -1
- package/src/main/js/sap/ushell/services/AppConfiguration.js +3 -3
- package/src/main/js/sap/ushell/services/AppLifeCycle.js +1 -1
- package/src/main/js/sap/ushell/services/AppState.js +2 -3
- 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 +4 -5
- package/src/main/js/sap/ushell/services/Configuration.js +1 -2
- package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +2 -2
- package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
- package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +36 -33
- package/src/main/js/sap/ushell/services/DarkModeSupport.js +2 -2
- package/src/main/js/sap/ushell/services/EndUserFeedback.js +2 -2
- package/src/main/js/sap/ushell/services/LaunchPage.js +11 -8
- package/src/main/js/sap/ushell/services/Menu.js +31 -37
- package/src/main/js/sap/ushell/services/Message.js +1 -2
- package/src/main/js/sap/ushell/services/MessageBroker.js +1 -2
- package/src/main/js/sap/ushell/services/NavTargetResolution.js +58 -9
- package/src/main/js/sap/ushell/services/Navigation.js +1356 -0
- package/src/main/js/sap/ushell/services/NavigationDataProvider.js +7 -5
- package/src/main/js/sap/ushell/services/Notifications.js +16 -16
- package/src/main/js/sap/ushell/services/PageBuilding.js +1 -2
- package/src/main/js/sap/ushell/services/PagePersistence.js +6 -6
- package/src/main/js/sap/ushell/services/PageReferencing.js +2 -2
- package/src/main/js/sap/ushell/services/Pages.js +24 -25
- package/src/main/js/sap/ushell/services/Personalization.js +5 -5
- package/src/main/js/sap/ushell/services/PluginManager.js +1 -2
- 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 +2 -1
- package/src/main/js/sap/ushell/services/SearchableContent.js +85 -59
- package/src/main/js/sap/ushell/services/ShellNavigation.js +59 -17
- package/src/main/js/sap/ushell/services/ShellNavigationHashChanger.js +115 -39
- package/src/main/js/sap/ushell/services/SmartNavigation.js +4 -4
- package/src/main/js/sap/ushell/services/SpaceContent.js +5 -6
- package/src/main/js/sap/ushell/services/SupportTicket.js +1 -1
- package/src/main/js/sap/ushell/services/UITracer.js +5 -3
- package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
- package/src/main/js/sap/ushell/services/URLTemplate.js +2 -2
- package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +7 -7
- package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -2
- 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 +91 -69
- package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +10 -6
- package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -3
- 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 +2 -5
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +2 -2
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +11 -11
- 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 +6 -6
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
- package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +2 -2
- package/src/main/js/sap/ushell/services/_CommonDataModel/PersonalizationProcessor.js +1 -2
- 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 +9 -14
- package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
- package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
- package/src/main/js/sap/ushell/services/_Personalization/ContextContainer.js +34 -21
- package/src/main/js/sap/ushell/services/_Personalization/Variant.js +5 -2
- package/src/main/js/sap/ushell/services/_Personalization/VariantSet.js +18 -12
- package/src/main/js/sap/ushell/services/_Personalization/utils.js +2 -2
- package/src/main/js/sap/ushell/services/_PluginManager/Extensions.js +1 -1
- package/src/main/js/sap/ushell/services/_PluginManager/HeaderExtensions.js +3 -3
- 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/_UserRecents/RecentActivity.js +206 -214
- package/src/main/js/sap/ushell/services/_UserRecents/RecentAppsUsage.js +46 -54
- package/src/main/js/sap/ushell/services/_UserRecents/RecentsList.js +39 -40
- package/src/main/js/sap/ushell/services/_UserRecents/UserRecentsBase.js +29 -36
- package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstance.js +1 -1
- package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstanceAbap.js +1 -1
- package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstanceCdm.js +1 -1
- package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstanceLaunchPage.js +10 -8
- package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstanceLink.js +2 -2
- package/src/main/js/sap/ushell/services/appstate/LimitedBuffer.js +1 -2
- package/src/main/js/sap/ushell/services/appstate/Sequentializer.js +1 -1
- package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
- package/src/main/js/sap/ushell/themes/base/SearchCEP.less +8 -0
- package/src/main/js/sap/ushell/themes/base/ShellHeader.less +12 -6
- package/src/main/js/sap/ushell/themes/base/WorkPage.less +34 -4
- package/src/main/js/sap/ushell/themes/base/WorkPageCell.less +3 -1
- package/src/main/js/sap/ushell/themes/base/WorkPageColumn.less +3 -76
- package/src/main/js/sap/ushell/themes/base/WorkPageColumnResizer.less +2 -1
- package/src/main/js/sap/ushell/themes/base/WorkPageRow.less +822 -6
- package/src/main/js/sap/ushell/themes/sap_horizon/SearchCEP.less +4 -0
- package/src/main/js/sap/ushell/themes/sap_horizon/ToolAreaItem.less +1 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_dark/SearchCEP.less +4 -0
- package/src/main/js/sap/ushell/themes/sap_horizon_dark/ToolAreaItem.less +1 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/SearchCEP.less +5 -0
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/SearchCEP.less +5 -0
- package/src/main/js/sap/ushell/ui/AppContainer.js +0 -1
- package/src/main/js/sap/ushell/ui/ContentNodeSelector.js +1 -1
- package/src/main/js/sap/ushell/ui/QuickAccess.js +2 -2
- package/src/main/js/sap/ushell/ui/ShellHeader.js +21 -5
- package/src/main/js/sap/ushell/ui/ShellHeaderRenderer.js +1 -0
- package/src/main/js/sap/ushell/ui/appfinder/AppBox.js +0 -1
- package/src/main/js/sap/ushell/ui/bookmark/SaveOnPage.view.xml +6 -6
- package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +1 -1
- package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
- package/src/main/js/sap/ushell/ui/footerbar/AboutButton.js +0 -1
- package/src/main/js/sap/ushell/ui/footerbar/AddBookmarkButton.js +32 -17
- package/src/main/js/sap/ushell/ui/footerbar/ContactSupportButton.js +0 -1
- package/src/main/js/sap/ushell/ui/footerbar/JamDiscussButton.js +0 -1
- package/src/main/js/sap/ushell/ui/footerbar/JamShareButton.js +0 -1
- package/src/main/js/sap/ushell/ui/footerbar/LogoutButton.js +0 -1
- package/src/main/js/sap/ushell/ui/footerbar/SaveAsTile.view.js +1 -12
- package/src/main/js/sap/ushell/ui/footerbar/SendAsEmailButton.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/ActionItem.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/AnchorItem.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/AnchorNavigationBar.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/FailedTileDialog.js +4 -4
- package/src/main/js/sap/ushell/ui/launchpad/GroupHeaderActions.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/GroupListItem.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/LinkTileWrapper.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/LoadingDialog.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/Page.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/PlusTile.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/Section.js +3 -3
- package/src/main/js/sap/ushell/ui/launchpad/Tile.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/TileContainer.js +0 -1
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +4 -5
- package/src/main/js/sap/ushell/ui/shell/RightFloatingContainer.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellHeadItem.js +7 -8
- package/src/main/js/sap/ushell/ui/shell/SysInfoBar.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +1 -2
- package/src/main/js/sap/ushell/ui/tile/DynamicTile.js +0 -1
- package/src/main/js/sap/ushell/ui/tile/ImageTile.js +0 -1
- package/src/main/js/sap/ushell/ui/tile/StaticTile.js +0 -1
- package/src/main/js/sap/ushell/ui/tile/TileBase.js +0 -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/ui5service/_ShellUIService/shelluiservice.class.factory.js +1 -1
- package/src/main/js/sap/ushell/utils/HttpClient.js +0 -1
- package/src/main/js/sap/ushell/utils/RestrictedJSONModel.js +1 -1
- package/src/main/js/sap/ushell/utils/UrlParsing.js +18 -14
- package/src/main/js/sap/ushell/utils/UrlShortening.js +2 -2
- package/src/main/js/sap/ushell/utils/objectOperations.js +1 -1
- package/src/main/js/sap/ushell/utils/type.js +1 -1
- package/src/main/js/sap/ushell/utils/utilsCdm.js +3 -3
- package/src/main/js/sap/ushell/utils.js +128 -21
- package/src/test/js/sap/ushell/bootstrap/sandbox.js +2 -2
- package/ui5.yaml +1 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Menu.js +0 -22
|
@@ -5,7 +5,6 @@ sap.ui.define([
|
|
|
5
5
|
"sap/base/Log",
|
|
6
6
|
"sap/base/util/extend",
|
|
7
7
|
"sap/ui/Device",
|
|
8
|
-
"sap/ui/thirdparty/jquery",
|
|
9
8
|
"sap/ushell/EventHub",
|
|
10
9
|
"sap/ushell/library"
|
|
11
10
|
], function (
|
|
@@ -13,7 +12,6 @@ sap.ui.define([
|
|
|
13
12
|
Log,
|
|
14
13
|
extend,
|
|
15
14
|
Device,
|
|
16
|
-
jQuery,
|
|
17
15
|
EventHub,
|
|
18
16
|
ushellLibrary
|
|
19
17
|
) {
|
|
@@ -23,7 +21,7 @@ sap.ui.define([
|
|
|
23
21
|
var AppType = ushellLibrary.AppType;
|
|
24
22
|
|
|
25
23
|
/**
|
|
26
|
-
* @
|
|
24
|
+
* @class
|
|
27
25
|
* @private
|
|
28
26
|
*/
|
|
29
27
|
var RecentActivity = UserRecentsBase.extend("sap.ushell.services.RecentActivity", {
|
|
@@ -127,38 +125,37 @@ sap.ui.define([
|
|
|
127
125
|
};
|
|
128
126
|
|
|
129
127
|
RecentActivity.prototype.newItem = function (oItem) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
bAlreadyIn = this._updateIfAlreadyIn(oItem, iTimestampNow);
|
|
147
|
-
if (!bAlreadyIn) {
|
|
148
|
-
this._insertNew(oItem, iTimestampNow, sIcon);
|
|
149
|
-
}
|
|
128
|
+
const iTimestampNow = Date.now();
|
|
129
|
+
const sIcon = this.getActivityIcon(oItem.appType, oItem.icon);
|
|
130
|
+
let bAlreadyIn;
|
|
131
|
+
const currentDay = this.getDayFromDateObj(new Date());
|
|
132
|
+
|
|
133
|
+
return new Promise((resolve, reject) => {
|
|
134
|
+
this._load()
|
|
135
|
+
.then((aLoadedRecents) => {
|
|
136
|
+
this.oRecentActivities = this.getRecentActivitiesFromLoadedData(aLoadedRecents);
|
|
137
|
+
// If the current day is different than the recent one -
|
|
138
|
+
// add a new entry (for the current day's usage) to each usage array
|
|
139
|
+
if (currentDay !== this.oRecentActivities.recentDay) {
|
|
140
|
+
this.addNewDay();
|
|
141
|
+
this.oRecentActivities.recentDay = currentDay;
|
|
142
|
+
}
|
|
150
143
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
}.bind(this))
|
|
156
|
-
.fail(function () {
|
|
157
|
-
oDeferred.reject();
|
|
158
|
-
});
|
|
159
|
-
}.bind(this));
|
|
144
|
+
bAlreadyIn = this._updateIfAlreadyIn(oItem, iTimestampNow);
|
|
145
|
+
if (!bAlreadyIn) {
|
|
146
|
+
this._insertNew(oItem, iTimestampNow, sIcon);
|
|
147
|
+
}
|
|
160
148
|
|
|
161
|
-
|
|
149
|
+
this._save(this.oRecentActivities)
|
|
150
|
+
.then(() => {
|
|
151
|
+
EventHub.emit("newUserRecentsItem", this.oRecentActivities);
|
|
152
|
+
resolve();
|
|
153
|
+
})
|
|
154
|
+
.catch(errorMessage => {
|
|
155
|
+
reject(errorMessage);
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
});
|
|
162
159
|
};
|
|
163
160
|
|
|
164
161
|
RecentActivity.prototype.getActivityIcon = function (sAppType, sIcon) {
|
|
@@ -175,18 +172,16 @@ sap.ui.define([
|
|
|
175
172
|
};
|
|
176
173
|
|
|
177
174
|
RecentActivity.prototype.clearAllActivities = function () {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
return oDeferred.promise();
|
|
175
|
+
return new Promise((resolve, reject) => {
|
|
176
|
+
this._save([])
|
|
177
|
+
.then(() => {
|
|
178
|
+
EventHub.emit("userRecentsCleared", Date.now());
|
|
179
|
+
resolve();
|
|
180
|
+
})
|
|
181
|
+
.catch(errorMessage => {
|
|
182
|
+
reject(errorMessage);
|
|
183
|
+
});
|
|
184
|
+
});
|
|
190
185
|
};
|
|
191
186
|
|
|
192
187
|
/*
|
|
@@ -197,14 +192,13 @@ sap.ui.define([
|
|
|
197
192
|
* - return the last <maxNumOfActivities> entries or all entries supported by current device (if maxNumOfActivities was not provided).
|
|
198
193
|
*/
|
|
199
194
|
RecentActivity.prototype.getRecentItemsHelper = function (maxNumOfActivities) {
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
var currentDay = this.getDayFromDateObj(new Date());
|
|
195
|
+
let activityIndex;
|
|
196
|
+
let oActivity;
|
|
197
|
+
let sCurrentDevice;
|
|
198
|
+
let bIsResolved = false;
|
|
199
|
+
const aIntentsToResolve = [];
|
|
200
|
+
const aURL = [];
|
|
201
|
+
const currentDay = this.getDayFromDateObj(new Date());
|
|
208
202
|
|
|
209
203
|
if (Device.system.desktop) {
|
|
210
204
|
sCurrentDevice = "desktop";
|
|
@@ -214,131 +208,137 @@ sap.ui.define([
|
|
|
214
208
|
sCurrentDevice = "mobile";
|
|
215
209
|
}
|
|
216
210
|
|
|
217
|
-
|
|
218
|
-
.
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
this.
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
211
|
+
return new Promise((resolve, reject) => {
|
|
212
|
+
this._load()
|
|
213
|
+
.then((aLoadedRecents) => {
|
|
214
|
+
this.oRecentActivities = this.getRecentActivitiesFromLoadedData(aLoadedRecents);
|
|
215
|
+
// If the current day is different than the recent one -
|
|
216
|
+
// add a new entry (for the current day's usage) to each usage array
|
|
217
|
+
var bNewDayAdded = false;
|
|
218
|
+
var sMandatoryParams;
|
|
219
|
+
if (currentDay !== this.oRecentActivities.recentDay) {
|
|
220
|
+
this.addNewDay();
|
|
221
|
+
this.oRecentActivities.recentDay = currentDay;
|
|
222
|
+
bNewDayAdded = true;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
//collect all unresolved activities for current device.
|
|
226
|
+
for (activityIndex = 0; activityIndex < this.oRecentActivities.recentUsageArray.length && !bIsResolved; activityIndex++) {
|
|
227
|
+
const oIntent = {
|
|
228
|
+
target: {
|
|
229
|
+
shellHash: ""
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
oActivity = this.oRecentActivities.recentUsageArray[activityIndex];
|
|
233
|
+
if (oActivity[sCurrentDevice] === undefined) {
|
|
234
|
+
// collect URLs without intent
|
|
235
|
+
if (!(oActivity.oItem.url[0] === "#")) {
|
|
236
|
+
aURL.push(oActivity.oItem.url);
|
|
237
|
+
// check if url contains the mandatory parameters then add it to intents
|
|
238
|
+
} else if (oActivity.oItem.url.indexOf("?") > -1) {
|
|
239
|
+
sMandatoryParams = oActivity.oItem.url.substring(oActivity.oItem.url.indexOf("?"));
|
|
240
|
+
// remove search app parameters
|
|
241
|
+
if (sMandatoryParams.indexOf("&/") > -1) {
|
|
242
|
+
sMandatoryParams = sMandatoryParams.substring(0, sMandatoryParams.indexOf("&/"));
|
|
243
|
+
}
|
|
244
|
+
const sShellHash = oActivity.oItem.appId.split("#")[1];
|
|
245
|
+
oIntent.target.shellHash = sShellHash + sMandatoryParams;
|
|
246
|
+
aIntentsToResolve.push(oIntent);
|
|
247
|
+
} else {
|
|
248
|
+
const sShellHash = oActivity.oItem.appId.split("#")[1];
|
|
249
|
+
oIntent.target.shellHash = sShellHash;
|
|
250
|
+
aIntentsToResolve.push(oIntent);
|
|
229
251
|
|
|
230
|
-
//collect all unresolved activities for current device.
|
|
231
|
-
for (activityIndex = 0; activityIndex < this.oRecentActivities.recentUsageArray.length && !bIsResolved; activityIndex++) {
|
|
232
|
-
oActivity = this.oRecentActivities.recentUsageArray[activityIndex];
|
|
233
|
-
if (oActivity[sCurrentDevice] === undefined) {
|
|
234
|
-
// collect URLs without intent
|
|
235
|
-
if (!(oActivity.oItem.url[0] === "#")) {
|
|
236
|
-
aURL.push(oActivity.oItem.url);
|
|
237
|
-
// check if url contains the mandatory parameters then add it to intents
|
|
238
|
-
} else if (oActivity.oItem.url.indexOf("?") > -1) {
|
|
239
|
-
sMandatoryParams = oActivity.oItem.url.substring(oActivity.oItem.url.indexOf("?"));
|
|
240
|
-
// remove search app parameters
|
|
241
|
-
if (sMandatoryParams.indexOf("&/") > -1) {
|
|
242
|
-
sMandatoryParams = sMandatoryParams.substring(0, sMandatoryParams.indexOf("&/"));
|
|
243
252
|
}
|
|
244
|
-
aIntentsToResolve.push(oActivity.oItem.appId + sMandatoryParams);
|
|
245
253
|
} else {
|
|
246
|
-
|
|
254
|
+
//we have resolved the activities from here, no need to continue.
|
|
255
|
+
bIsResolved = true;
|
|
247
256
|
}
|
|
248
|
-
} else {
|
|
249
|
-
//we have resolved the activities from here, no need to continue.
|
|
250
|
-
bIsResolved = true;
|
|
251
257
|
}
|
|
252
|
-
}
|
|
253
258
|
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
259
|
+
// update current device for URLs without intent
|
|
260
|
+
if (aURL.length > 0) {
|
|
261
|
+
var urlItem;
|
|
262
|
+
for (activityIndex = 0; activityIndex < this.oRecentActivities.recentUsageArray.length; activityIndex++) {
|
|
263
|
+
if (!(this.oRecentActivities.recentUsageArray[activityIndex].oItem.url[0] === "#")) {
|
|
264
|
+
urlItem = this.oRecentActivities.recentUsageArray[activityIndex];
|
|
265
|
+
urlItem[sCurrentDevice] = true;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
if (aIntentsToResolve.length <= 0) {
|
|
269
|
+
// persist it.
|
|
270
|
+
this._save(this.oRecentActivities)
|
|
271
|
+
.then(() => {
|
|
272
|
+
const aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
273
|
+
resolve(aItems);
|
|
274
|
+
})
|
|
275
|
+
.catch(errorMessage => {
|
|
276
|
+
reject(errorMessage);
|
|
277
|
+
});
|
|
261
278
|
}
|
|
262
279
|
}
|
|
263
|
-
if (aIntentsToResolve.length <= 0) {
|
|
264
|
-
// persist it.
|
|
265
|
-
this._save(this.oRecentActivities)
|
|
266
|
-
.done(function () {
|
|
267
|
-
var aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
268
|
-
|
|
269
|
-
oDeferred.resolve(aItems);
|
|
270
|
-
}.bind(this))
|
|
271
|
-
.fail(function () {
|
|
272
|
-
oDeferred.reject();
|
|
273
|
-
});
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
280
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
281
|
+
if (aIntentsToResolve.length > 0) {
|
|
282
|
+
sap.ushell.Container.getServiceAsync("CrossApplicationNavigation")
|
|
283
|
+
.then(CrossApplicationNavigationService => {
|
|
284
|
+
//resolve intent support for current device.
|
|
285
|
+
CrossApplicationNavigationService.isNavigationSupported(aIntentsToResolve)
|
|
286
|
+
.done(aResolved => {
|
|
287
|
+
//save resolutions in aLoadedRecents
|
|
288
|
+
bIsResolved = false;
|
|
289
|
+
for (activityIndex = 0; activityIndex < this.oRecentActivities.recentUsageArray.length && !bIsResolved; activityIndex++) {
|
|
290
|
+
oActivity = this.oRecentActivities.recentUsageArray[activityIndex];
|
|
291
|
+
if (oActivity[sCurrentDevice] === undefined) {
|
|
292
|
+
sMandatoryParams = "";
|
|
293
|
+
if (oActivity.oItem.url.indexOf("?") > -1) {
|
|
294
|
+
sMandatoryParams = oActivity.oItem.url.substring(oActivity.oItem.url.indexOf("?"));
|
|
295
|
+
// remove search app parameters
|
|
296
|
+
if (sMandatoryParams.indexOf("&/") > -1) {
|
|
297
|
+
sMandatoryParams = sMandatoryParams.substring(0, sMandatoryParams.indexOf("&/"));
|
|
298
|
+
}
|
|
294
299
|
}
|
|
300
|
+
var oItem = aResolved[activityIndex];
|
|
301
|
+
oActivity[sCurrentDevice] = !!(oItem && oItem.supported);
|
|
302
|
+
} else if (oActivity.oItem.url[0] === "#") {
|
|
303
|
+
bIsResolved = true;
|
|
295
304
|
}
|
|
296
|
-
var oItem = oResolved[oActivity.oItem.appId + sMandatoryParams];
|
|
297
|
-
oActivity[sCurrentDevice] = !!(oItem && oItem.supported);
|
|
298
|
-
} else if (oActivity.oItem.url[0] === "#") {
|
|
299
|
-
bIsResolved = true;
|
|
300
305
|
}
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
// persist it.
|
|
304
|
-
this._save(this.oRecentActivities)
|
|
305
|
-
.done(function () {
|
|
306
|
-
var aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
307
|
-
|
|
308
|
-
oDeferred.resolve(aItems);
|
|
309
|
-
}.bind(this))
|
|
310
|
-
.fail(function () {
|
|
311
|
-
oDeferred.reject();
|
|
312
|
-
});
|
|
313
|
-
}.bind(this))
|
|
314
|
-
.fail(function (sMsg) {
|
|
315
|
-
oDeferred.reject(sMsg);
|
|
316
|
-
});
|
|
317
|
-
}.bind(this));
|
|
318
|
-
} else if ((aIntentsToResolve.length <= 0) && (aURL.length <= 0)) {
|
|
319
|
-
if (bNewDayAdded) {
|
|
320
|
-
// If a new day was added, persist it.
|
|
321
|
-
this._save(this.oRecentActivities)
|
|
322
|
-
.done(function () {
|
|
323
|
-
var aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
324
|
-
|
|
325
|
-
oDeferred.resolve(aItems);
|
|
326
|
-
}.bind(this))
|
|
327
|
-
.fail(function () {
|
|
328
|
-
oDeferred.reject();
|
|
329
|
-
});
|
|
330
|
-
} else {
|
|
331
|
-
var aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
332
306
|
|
|
333
|
-
|
|
307
|
+
// persist it.
|
|
308
|
+
this._save(this.oRecentActivities)
|
|
309
|
+
.then(() => {
|
|
310
|
+
const aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
311
|
+
resolve(aItems);
|
|
312
|
+
})
|
|
313
|
+
.catch(errorMessage => {
|
|
314
|
+
reject(errorMessage);
|
|
315
|
+
});
|
|
316
|
+
})
|
|
317
|
+
.catch(sMsg => {
|
|
318
|
+
reject(sMsg);
|
|
319
|
+
});
|
|
320
|
+
});
|
|
321
|
+
} else if ((aIntentsToResolve.length <= 0) && (aURL.length <= 0)) {
|
|
322
|
+
if (bNewDayAdded) {
|
|
323
|
+
// If a new day was added, persist it.
|
|
324
|
+
this._save(this.oRecentActivities)
|
|
325
|
+
.then(() => {
|
|
326
|
+
const aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
327
|
+
resolve(aItems);
|
|
328
|
+
})
|
|
329
|
+
.catch(errorMessage => {
|
|
330
|
+
reject(errorMessage);
|
|
331
|
+
});
|
|
332
|
+
} else {
|
|
333
|
+
const aItems = this._getRecentItemsForDevice(sCurrentDevice, this.oRecentActivities, maxNumOfActivities);
|
|
334
|
+
resolve(aItems);
|
|
335
|
+
}
|
|
334
336
|
}
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
return oDeferred.promise();
|
|
337
|
+
})
|
|
338
|
+
.catch((errormessage) => {
|
|
339
|
+
reject(errormessage);
|
|
340
|
+
});
|
|
341
|
+
});
|
|
342
342
|
};
|
|
343
343
|
|
|
344
344
|
RecentActivity.prototype._getRecentItemsForDevice = function (device, recents, maxNumOfActivities) {
|
|
@@ -361,61 +361,53 @@ sap.ui.define([
|
|
|
361
361
|
};
|
|
362
362
|
|
|
363
363
|
RecentActivity.prototype.getRecentItems = function () {
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
oDeferred.reject();
|
|
374
|
-
});
|
|
375
|
-
|
|
376
|
-
return oDeferred.promise();
|
|
364
|
+
return new Promise((resolve, reject) => {
|
|
365
|
+
this.getRecentItemsHelper(RecentActivity.ITEM_COUNT)
|
|
366
|
+
.then(recentItems => {
|
|
367
|
+
resolve(recentItems.map(oRecentEntry => oRecentEntry.oItem));
|
|
368
|
+
})
|
|
369
|
+
.catch(errorMessage => {
|
|
370
|
+
reject(errorMessage);
|
|
371
|
+
});
|
|
372
|
+
});
|
|
377
373
|
};
|
|
378
374
|
|
|
379
375
|
RecentActivity.prototype.getFrequentItems = function () {
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
376
|
+
return new Promise((resolve, reject) => {
|
|
377
|
+
this.getRecentItemsHelper()
|
|
378
|
+
.then(recentItems => {
|
|
379
|
+
var activityIndex;
|
|
380
|
+
var iWorkingDaysCounter = 0;
|
|
381
|
+
var aFrequentActivity = [];
|
|
382
|
+
var oActivity;
|
|
383
|
+
var previousActivityDate = recentItems[0] ? new Date(recentItems[0].iTimestamp) : undefined;
|
|
384
|
+
var currentActivityDate;
|
|
385
|
+
// Go through the recent activities list and leave only activities from the last MAX_DAYS working days
|
|
386
|
+
for (activityIndex = 0; activityIndex < recentItems.length && iWorkingDaysCounter < RecentActivity.MAX_DAYS; activityIndex++) {
|
|
387
|
+
oActivity = recentItems[activityIndex];
|
|
388
|
+
// Add only activities that happened more than once
|
|
389
|
+
if (oActivity.iCount > 1) {
|
|
390
|
+
aFrequentActivity.push(oActivity);
|
|
391
|
+
}
|
|
392
|
+
currentActivityDate = new Date(oActivity.iTimestamp);
|
|
393
|
+
if (previousActivityDate.toDateString() !== currentActivityDate.toDateString()) {
|
|
394
|
+
// If found an activity with a different date than the previous one, increase the days counter
|
|
395
|
+
iWorkingDaysCounter++;
|
|
396
|
+
previousActivityDate = currentActivityDate;
|
|
397
|
+
}
|
|
402
398
|
}
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
399
|
+
// Sort in descending order according to the count
|
|
400
|
+
aFrequentActivity.sort(function (a, b) {
|
|
401
|
+
return b.iCount - a.iCount;
|
|
402
|
+
});
|
|
403
|
+
// Take only first items (ITEM_COUNT most frequent items)
|
|
404
|
+
aFrequentActivity = aFrequentActivity.slice(0, RecentActivity.ITEM_COUNT);
|
|
405
|
+
resolve(aFrequentActivity.map(oRecentEntry => oRecentEntry.oItem));
|
|
406
|
+
})
|
|
407
|
+
.catch(errorMessage => {
|
|
408
|
+
reject(errorMessage);
|
|
407
409
|
});
|
|
408
|
-
|
|
409
|
-
aFrequentActivity = aFrequentActivity.slice(0, RecentActivity.ITEM_COUNT);
|
|
410
|
-
oDeferred.resolve(jQuery.map(aFrequentActivity, function (oRecentEntry) {
|
|
411
|
-
return oRecentEntry.oItem;
|
|
412
|
-
}));
|
|
413
|
-
})
|
|
414
|
-
.fail(function () {
|
|
415
|
-
oDeferred.reject();
|
|
416
|
-
});
|
|
417
|
-
|
|
418
|
-
return oDeferred.promise();
|
|
410
|
+
});
|
|
419
411
|
};
|
|
420
412
|
|
|
421
413
|
RecentActivity.prototype.addNewDay = function () {
|