@sapui5/sap.ushell 1.111.0 → 1.112.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/main/js/sap/ushell/.library +1 -1
- package/src/main/js/sap/ushell/AppInfoParameters.js +104 -4
- package/src/main/js/sap/ushell/ApplicationType.js +11 -4
- package/src/main/js/sap/ushell/Container.js +0 -32
- 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 +51 -21
- 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 +24 -158
- 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 -2
- package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +22 -140
- 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 +2 -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 +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 +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 +12 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +10 -0
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +28 -4
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +7 -5
- 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 +1 -0
- package/src/main/js/sap/ushell/bootstrap/common/common.read.ushell.config.from.url.js +26 -23
- package/src/main/js/sap/ushell/components/appfinder/AppFinderView.js +69 -33
- package/src/main/js/sap/ushell/components/appfinder/VisualizationOrganizerHelper.js +3 -0
- package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +17 -4
- package/src/main/js/sap/ushell/components/applicationIntegration/Storage.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +29 -18
- package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
- package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +21 -2
- package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +9 -4
- 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/cepsearchresult/app/Main.controller.js +1 -7
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/controls/Paginator.css +14 -3
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/controls/Paginator.js +57 -11
- package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +16 -3
- package/src/main/js/sap/ushell/components/contentFinder/Component.js +470 -23
- package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +308 -6
- package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +83 -12
- package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +33 -6
- package/src/main/js/sap/ushell/components/contentFinder/manifest.json +7 -7
- package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +96 -0
- package/src/main/js/sap/ushell/components/contentFinder/resources/resources.properties +44 -14
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +82 -25
- package/src/main/js/sap/ushell/components/contentFinder/view/ContentFinderDialog.view.xml +18 -10
- package/src/main/js/sap/ushell/components/contentFinder/view/WidgetGallery.view.xml +52 -1
- package/src/main/js/sap/ushell/components/contentFinderAppSearch/Component.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinderAppSearch/controller/ContentFinderAppSearch.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinderAppSearch/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.view.js +1 -1
- package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +116 -40
- 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/Notifications/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +17 -6
- 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/ContentWrapper.fragment.xml +7 -1
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsForm.js +9 -10
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +49 -57
- 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/cdm/applauncherdynamic/DynamicTile.controller.js +4 -1
- package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +26 -27
- package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +23 -4
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/ContentFinderDialog.controller.js +12 -9
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +67 -16
- 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 +3 -0
- 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/workPageBuilder/resources/resources.properties +5 -3
- package/src/main/js/sap/ushell/components/workPageBuilder/view/WorkPageBuilder.view.xml +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 +4 -262
- 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 -170
- package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
- package/src/main/js/sap/ushell/library.js +1 -3
- 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/AccessKeysHandler.js +3 -1
- package/src/main/js/sap/ushell/renderers/fiori2/Renderer.js +2 -2
- package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyApps.controller.js +2 -1
- package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyApps.view.xml +10 -1
- package/src/main/js/sap/ushell/renderers/fiori2/resources/resources.properties +15 -5
- package/src/main/js/sap/ushell/renderers/fiori2/resources/resources_de.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 +0 -37
- package/src/main/js/sap/ushell/services/AppLifeCycle.js +50 -3
- package/src/main/js/sap/ushell/services/AppState.js +1 -1
- package/src/main/js/sap/ushell/services/Bookmark.js +93 -30
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
- package/src/main/js/sap/ushell/services/CommonDataModel.js +5 -243
- 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 +1 -1
- package/src/main/js/sap/ushell/services/Menu.js +1 -1
- package/src/main/js/sap/ushell/services/Message.js +1 -1
- package/src/main/js/sap/ushell/services/MessageBroker.js +31 -12
- package/src/main/js/sap/ushell/services/NavTargetResolution.js +4 -2
- 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 +21 -3
- package/src/main/js/sap/ushell/services/Personalization.js +1 -1
- package/src/main/js/sap/ushell/services/PluginManager.js +1 -3
- package/src/main/js/sap/ushell/services/ReferenceResolver.js +178 -125
- 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/ShellNavigationHashChanger.js +15 -18
- package/src/main/js/sap/ushell/services/SmartNavigation.js +32 -6
- 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 +5 -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 +2 -2
- 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 +131 -135
- package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
- package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +341 -308
- 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/Catalog.less +4 -0
- package/src/main/js/sap/ushell/themes/base/ContentFinder.less +5 -1
- package/src/main/js/sap/ushell/themes/base/SearchFLP.less +0 -5
- package/src/main/js/sap/ushell/themes/base/ShellAppTitle.less +6 -9
- package/src/main/js/sap/ushell/themes/base/WorkPageCell.less +2 -2
- package/src/main/js/sap/ushell/themes/base/WorkPageColumn.less +8 -0
- package/src/main/js/sap/ushell/themes/base/WorkPageRow.less +2 -2
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.eot +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.json +16 -1
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.ttf +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff2 +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.eot +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.ttf +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.woff +0 -0
- package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.woff2 +0 -0
- package/src/main/js/sap/ushell/themes/base/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_belize/ShellHeader.less +0 -9
- package/src/main/js/sap/ushell/themes/sap_belize/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_belize_hcb/ShellHeader.less +0 -27
- package/src/main/js/sap/ushell/themes/sap_belize_hcb/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_belize_hcw/ShellHeader.less +0 -25
- package/src/main/js/sap/ushell/themes/sap_belize_hcw/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_bluecrystal/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +2 -11
- package/src/main/js/sap/ushell/themes/sap_fiori_3/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellHeader.less +2 -11
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellHeader.less +0 -25
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellHeader.less +0 -25
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_hcb/ShellHeader.less +0 -24
- package/src/main/js/sap/ushell/themes/sap_hcb/library.source.less +0 -2
- package/src/main/js/sap/ushell/themes/sap_horizon/ShellAppTitle.less +2 -12
- package/src/main/js/sap/ushell/themes/sap_horizon/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_dark/ShellAppTitle.less +2 -12
- package/src/main/js/sap/ushell/themes/sap_horizon_dark/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/ShellAppTitle.less +0 -25
- package/src/main/js/sap/ushell/themes/sap_horizon_hcb/library.source.less +0 -1
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/ShellAppTitle.less +0 -25
- package/src/main/js/sap/ushell/themes/sap_horizon_hcw/library.source.less +0 -1
- package/src/main/js/sap/ushell/ui/appfinder/AppBoxRenderer.js +0 -15
- package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +199 -0
- package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +202 -0
- package/src/main/js/sap/ushell/ui/contentFinder/AppBox.js +17 -2
- package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/LoadingDialogRenderer.js +2 -45
- package/src/main/js/sap/ushell/ui/launchpad/Page.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/Section.js +2 -2
- package/src/main/js/sap/ushell/ui/launchpad/TileRenderer.js +4 -21
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +6 -8
- package/src/main/js/sap/ushell/ui/shell/ShellHeadItem.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellLayout.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellNavigationMenu.js +21 -62
- package/src/main/js/sap/ushell/ui/shell/SplitContainer.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/DynamicTileRequest.js +25 -5
- package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
- package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
- package/ui5.yaml +53 -51
- package/src/main/js/sap/ushell/services/ContentExtension.js +0 -114
- package/src/main/js/sap/ushell/themes/base/UserPreferencesButton.less +0 -35
- package/src/main/js/sap/ushell/themes/base/flower-standalone.less +0 -774
- package/src/main/js/sap/ushell/themes/sap_belize/UserPreferencesButton.less +0 -7
- package/src/main/js/sap/ushell/themes/sap_belize_hcb/UserPreferencesButton.less +0 -7
- package/src/main/js/sap/ushell/themes/sap_belize_hcb/flower-standalone.less +0 -34
- package/src/main/js/sap/ushell/themes/sap_belize_hcw/UserPreferencesButton.less +0 -7
- package/src/main/js/sap/ushell/themes/sap_belize_hcw/flower-standalone.less +0 -34
- package/src/main/js/sap/ushell/themes/sap_bluecrystal/UserPreferencesButton.less +0 -7
- package/src/main/js/sap/ushell/themes/sap_bluecrystal/flower-standalone.less +0 -23
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/flower-standalone.less +0 -34
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/flower-standalone.less +0 -33
- package/src/main/js/sap/ushell/themes/sap_hcb/UserPreferencesButton.less +0 -7
- package/src/main/js/sap/ushell/themes/sap_hcb/flower-standalone.less +0 -34
- package/src/main/js/sap/ushell/themes/sap_horizon/UserPreferencesButton.less +0 -9
- package/src/main/js/sap/ushell/themes/sap_horizon_dark/UserPreferencesButton.less +0 -8
- package/src/main/js/sap/ushell/ui/footerbar/SettingsButton.js +0 -90
- package/src/main/js/sap/ushell/ui/footerbar/UserPreferencesButton.js +0 -505
- package/src/main/js/sap/ushell/ui5service/CardNavigation.js +0 -131
- package/src/main/js/sap/ushell/ui5service/CardUserFrequents.js +0 -138
- package/src/main/js/sap/ushell/ui5service/CardUserRecents.js +0 -101
- package/src/main/js/sap/ushell/ui5service/_CardUserRecents/CardUserRecentsBase.js +0 -108
|
@@ -1,32 +1,95 @@
|
|
|
1
1
|
//Copyright (c) 2009-2022 SAP SE, All Rights Reserved
|
|
2
2
|
/**
|
|
3
3
|
* @fileOverview ContentFinder Component
|
|
4
|
-
* This UIComponent gets initialized by the FLP renderer upon opening a contentFinder instance
|
|
5
|
-
* (visiting a work page if work pages are enabled (/core/workPages/enabled).
|
|
6
4
|
*
|
|
7
|
-
* @version 1.
|
|
5
|
+
* @version 1.112.0
|
|
8
6
|
*/
|
|
9
7
|
|
|
10
8
|
sap.ui.define([
|
|
11
|
-
"sap/
|
|
12
|
-
"sap/
|
|
13
|
-
"sap/
|
|
14
|
-
"sap/
|
|
15
|
-
"sap/ui/core/UIComponent"
|
|
16
|
-
|
|
9
|
+
"sap/base/Log",
|
|
10
|
+
"sap/base/util/deepExtend",
|
|
11
|
+
"sap/base/util/ObjectPath",
|
|
12
|
+
"sap/m/library",
|
|
13
|
+
"sap/ui/core/UIComponent",
|
|
14
|
+
"sap/ui/model/json/JSONModel",
|
|
15
|
+
"sap/ushell/library"
|
|
16
|
+
], function (Log, deepExtend, ObjectPath, mobileLibrary, UIComponent, JSONModel, ushellLibrary) {
|
|
17
17
|
"use strict";
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
20
|
+
* Event for the visualizations to be added
|
|
21
|
+
*
|
|
22
|
+
* @event sap.ushell.components.contentFinder.Component#visualizationsAdded
|
|
23
|
+
* @type {object}
|
|
24
|
+
* @property {array} visualizationIds The list of visualization IDs to be added.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Event if a widget (type) without target was selected in the widget gallery.
|
|
21
29
|
*
|
|
22
|
-
* @
|
|
23
|
-
* @
|
|
30
|
+
* @event sap.ushell.components.contentFinder.Component#visualizationsAdded
|
|
31
|
+
* @type {object}
|
|
32
|
+
* @property {string} widgetId The ID of the selected widget type
|
|
33
|
+
*/
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* The available navigation targets
|
|
37
|
+
*/
|
|
38
|
+
var oNavigationTargets = {
|
|
39
|
+
widgetGallery: "widgetGallery",
|
|
40
|
+
appSearchTiles: "appSearch_tiles",
|
|
41
|
+
appSearchCards: "appSearch_cards"
|
|
42
|
+
// TODO: appSearch_mixed: "appSearch_cards"
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Initial data to be set to the ContentFinder model.
|
|
24
47
|
*
|
|
48
|
+
* @type {object}
|
|
49
|
+
*/
|
|
50
|
+
var oInitialData = {
|
|
51
|
+
navigationTargets: oNavigationTargets,
|
|
52
|
+
|
|
53
|
+
// The current/active navigation target within the ContentFinderDialog
|
|
54
|
+
activeNavigationTarget: oNavigationTargets.widgetGallery,
|
|
55
|
+
|
|
56
|
+
// A content finder in restricted mode shows no widget Gallery and starts directly with the appSearch.
|
|
57
|
+
// Additionally no "Back" button is rendered, as the end user cannot navigate to the WidgetGallery.
|
|
58
|
+
restrictedMode: false,
|
|
59
|
+
|
|
60
|
+
widgetGallery: {
|
|
61
|
+
widgetGroups: []
|
|
62
|
+
},
|
|
63
|
+
|
|
64
|
+
appSearch: {
|
|
65
|
+
appBoxCount: 0,
|
|
66
|
+
selectedAppCount: 0,
|
|
67
|
+
hasSelectables: true,
|
|
68
|
+
currentSelectedTreeNode: "",
|
|
69
|
+
searchTerm: "",
|
|
70
|
+
showSelectedPressed: false,
|
|
71
|
+
originalVisualizations: {
|
|
72
|
+
cards: [],
|
|
73
|
+
tiles: []
|
|
74
|
+
},
|
|
75
|
+
visualizations: {
|
|
76
|
+
cards: [],
|
|
77
|
+
tiles: []
|
|
78
|
+
},
|
|
79
|
+
originalRestrictedVisualizations: [],
|
|
80
|
+
restrictedVisualizations: []
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Component of the ContentFinder view.
|
|
86
|
+
*
|
|
87
|
+
* @param {string} sId Component id.
|
|
88
|
+
* @param {object} mSettings Optional map for component settings.
|
|
25
89
|
* @class
|
|
26
90
|
* @extends sap.ui.core.UIComponent
|
|
27
|
-
*
|
|
28
91
|
* @private
|
|
29
|
-
* @since 1.
|
|
92
|
+
* @since 1.113.0
|
|
30
93
|
* @alias sap.ushell.components.contentFinder.Component
|
|
31
94
|
*/
|
|
32
95
|
return UIComponent.extend("sap.ushell.components.contentFinder.Component", /** @lends sap.ushell.components.contentFinder.Component */{
|
|
@@ -35,11 +98,30 @@ sap.ui.define([
|
|
|
35
98
|
library: "sap.ushell"
|
|
36
99
|
},
|
|
37
100
|
|
|
101
|
+
/**
|
|
102
|
+
* The string of the current contentFinder component for usage in Error Logs
|
|
103
|
+
* @type {string}
|
|
104
|
+
*/
|
|
105
|
+
logComponent: "sap.ushell.components.ContentFinder.Component",
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* The init function called when the component is initialized.
|
|
109
|
+
*
|
|
110
|
+
* @since 1.113.0
|
|
111
|
+
* @private
|
|
112
|
+
*/
|
|
38
113
|
init: function () {
|
|
39
114
|
UIComponent.prototype.init.apply(this, arguments);
|
|
40
|
-
|
|
115
|
+
|
|
116
|
+
this.oResourceBundle = this.getModel("i18n").getResourceBundle();
|
|
41
117
|
this.oRootView = this.getRootControl();
|
|
42
|
-
|
|
118
|
+
|
|
119
|
+
var oModel = new JSONModel();
|
|
120
|
+
oModel.setSizeLimit(Infinity);
|
|
121
|
+
this.setModel(oModel);
|
|
122
|
+
this._initializeModel();
|
|
123
|
+
|
|
124
|
+
this._oRootControlLoadedPromise = this.rootControlLoaded().then(function () {
|
|
43
125
|
this.oNavContainer = this.oRootView.byId("contentFinderNavContainer");
|
|
44
126
|
this.oContentFinderWidgetGalleryPage = this.oRootView.byId("contentFinderWidgetGalleryPage");
|
|
45
127
|
this.oContentFinderAppSearchPage = this.oRootView.byId("contentFinderAppSearchPage");
|
|
@@ -47,15 +129,380 @@ sap.ui.define([
|
|
|
47
129
|
}.bind(this));
|
|
48
130
|
},
|
|
49
131
|
|
|
132
|
+
/**
|
|
133
|
+
* Opens the content finder and shows the provided target (WidgetGallery or AppSearch).
|
|
134
|
+
* Possible targets are: Widget Gallery (default): <code>widgetGallery</code>, App Search: <code>appSearch_tiles</code>.
|
|
135
|
+
*
|
|
136
|
+
* @param {string} [sTarget] Target view which is navigated to.
|
|
137
|
+
*
|
|
138
|
+
* @since 1.113.0
|
|
139
|
+
* @returns {Promise<undefined>} Resolves with <code>undefined</code>.
|
|
140
|
+
* @public
|
|
141
|
+
*/
|
|
50
142
|
show: function (sTarget) {
|
|
51
|
-
if (sTarget
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
143
|
+
if (sTarget && !Object.values(oNavigationTargets).includes(sTarget)) {
|
|
144
|
+
return Promise.reject(new Error("Invalid navigation target provided. Could not open ContentFinder dialog."));
|
|
145
|
+
}
|
|
146
|
+
sTarget = sTarget || oNavigationTargets.widgetGallery;
|
|
147
|
+
|
|
148
|
+
return this.navigate(sTarget).then(function () {
|
|
149
|
+
this.oDialog.open();
|
|
150
|
+
}.bind(this));
|
|
151
|
+
},
|
|
152
|
+
|
|
153
|
+
/**
|
|
154
|
+
* Sets the widget groups (e.g. applications, premium widgets) for the content finder instance.
|
|
155
|
+
*
|
|
156
|
+
* A row of the VBox as part of the WidgetGallery represents a single widget group.
|
|
157
|
+
* A widget type represents a specific widget type like tiles or cards.
|
|
158
|
+
*
|
|
159
|
+
* @param {array} aWidgetGroups An array of widget groups.
|
|
160
|
+
* @since 1.113.0
|
|
161
|
+
* @public
|
|
162
|
+
*/
|
|
163
|
+
setWidgetGroups: function (aWidgetGroups) {
|
|
164
|
+
this.getModel().setProperty("/widgetGallery/widgetGroups", aWidgetGroups);
|
|
165
|
+
},
|
|
166
|
+
|
|
167
|
+
/**
|
|
168
|
+
* Sets the visualization data for the Content Finder model.
|
|
169
|
+
*
|
|
170
|
+
* @param {object} oVisualizationData An object containing all the visualization data as arrays.
|
|
171
|
+
* @since 1.113.0
|
|
172
|
+
* @public
|
|
173
|
+
*/
|
|
174
|
+
setVisualizationData: function (oVisualizationData) {
|
|
175
|
+
var aVisualizations = ObjectPath.get("Visualizations.nodes", oVisualizationData) || [];
|
|
176
|
+
var oModel = this.getModel();
|
|
177
|
+
|
|
178
|
+
// Prepare AppBox object structure for tiles and cards
|
|
179
|
+
var aTiles = this._prepareTiles(aVisualizations);
|
|
180
|
+
var aCards = this._prepareCards(aVisualizations);
|
|
181
|
+
|
|
182
|
+
// Set data to the main model
|
|
183
|
+
oModel.setProperty("/appSearch/originalVisualizations/tiles", deepExtend([], aTiles));
|
|
184
|
+
oModel.setProperty("/appSearch/originalVisualizations/cards", deepExtend([], aCards));
|
|
185
|
+
|
|
186
|
+
oModel.setProperty("/appSearch/visualizations/tiles", deepExtend([], aTiles));
|
|
187
|
+
oModel.setProperty("/appSearch/visualizations/cards", deepExtend([], aCards));
|
|
188
|
+
|
|
189
|
+
this._updateVisualizationsRestricted();
|
|
190
|
+
},
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Sets the restricted mode for the Content Finder.
|
|
194
|
+
*
|
|
195
|
+
* A content finder in restricted mode shows no "Back" button as part of the AppSearch view.
|
|
196
|
+
*
|
|
197
|
+
* @param {boolean} bRestrictedMode A boolean representring whether the content finder is restricted or not.
|
|
198
|
+
* @since 1.113.0
|
|
199
|
+
* @public
|
|
200
|
+
*/
|
|
201
|
+
setRestrictedMode: function (bRestrictedMode) {
|
|
202
|
+
this.getModel().setProperty("/restrictedMode", !!bRestrictedMode);
|
|
203
|
+
},
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
* Adds context data to visualization data.
|
|
207
|
+
*
|
|
208
|
+
* This context can be used to set restricted visualizations.
|
|
209
|
+
* Restricted visualizations are non-selectable widgets which are already present on the page.
|
|
210
|
+
*
|
|
211
|
+
* @param {object} oContextData The context data with the restricted visualizations.
|
|
212
|
+
* @since 1.113.0
|
|
213
|
+
* @public
|
|
214
|
+
*/
|
|
215
|
+
setContextData: function (oContextData) {
|
|
216
|
+
var aRestrictedVisualizations = ObjectPath.get("restrictedVisualizations", oContextData) || [];
|
|
217
|
+
var oModel = this.getModel();
|
|
218
|
+
|
|
219
|
+
oModel.setProperty("/appSearch/originalRestrictedVisualizations", deepExtend([], aRestrictedVisualizations));
|
|
220
|
+
|
|
221
|
+
oModel.setProperty("/appSearch/restrictedVisualizations", deepExtend([], aRestrictedVisualizations));
|
|
222
|
+
|
|
223
|
+
this._updateVisualizationsRestricted();
|
|
224
|
+
},
|
|
225
|
+
|
|
226
|
+
/**
|
|
227
|
+
* Returns the NavContainer.
|
|
228
|
+
*
|
|
229
|
+
* @returns {Promise<sap.m.NavContainer>} Resolves with the NavContainer.
|
|
230
|
+
* @since 1.113.0
|
|
231
|
+
* @private
|
|
232
|
+
*/
|
|
233
|
+
getNavContainer: function () {
|
|
234
|
+
return this._oRootControlLoadedPromise.then(function () {
|
|
235
|
+
return this.oNavContainer;
|
|
236
|
+
}.bind(this));
|
|
237
|
+
},
|
|
238
|
+
|
|
239
|
+
/**
|
|
240
|
+
* Returns all selected app boxes.
|
|
241
|
+
*
|
|
242
|
+
* @param {boolean} [bDisabled] In case this parameter is provided, the "disabled" property is checked, too.
|
|
243
|
+
* @returns {array} Returns an array containing all selected app boxes.
|
|
244
|
+
* @since 1.113.0
|
|
245
|
+
* @private
|
|
246
|
+
*/
|
|
247
|
+
getSelectedAppBoxes: function (bDisabled) {
|
|
248
|
+
var oVisualizations = this.getModel().getProperty("/appSearch/visualizations");
|
|
249
|
+
var aAllSelectedAppBoxes = [];
|
|
250
|
+
|
|
251
|
+
Object.values(oVisualizations).forEach(function (aWidgetTypeData) {
|
|
252
|
+
var aSelectedAppBoxes = aWidgetTypeData.filter(function (oAppBox) {
|
|
253
|
+
return oAppBox.selected
|
|
254
|
+
&& (typeof bDisabled !== "boolean" || oAppBox.disabled === bDisabled);
|
|
255
|
+
});
|
|
256
|
+
|
|
257
|
+
aAllSelectedAppBoxes = aAllSelectedAppBoxes.concat(aSelectedAppBoxes);
|
|
258
|
+
});
|
|
259
|
+
|
|
260
|
+
return aAllSelectedAppBoxes;
|
|
261
|
+
},
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* Fires the <code>visualizationAdded</code> event which provides the added visualizations.
|
|
265
|
+
*
|
|
266
|
+
* @fires sap.ushell.components.contentFinder.Component#visualizationsAdded
|
|
267
|
+
* @since 1.113.0
|
|
268
|
+
* @private
|
|
269
|
+
*/
|
|
270
|
+
addVisualizations: function () {
|
|
271
|
+
var aSelectedAppBoxes = this.getSelectedAppBoxes(false);
|
|
272
|
+
if (aSelectedAppBoxes.length > 0) {
|
|
273
|
+
this.fireEvent("visualizationsAdded", {
|
|
274
|
+
visualizations: aSelectedAppBoxes
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* Attaches an event handler to the 'contentFinderClosed' event.
|
|
281
|
+
*
|
|
282
|
+
* When called, the context of the event handler will be bound to 'oListener' if specified, otherwise it will be bound to this.
|
|
283
|
+
*
|
|
284
|
+
* @param {function} fnFunction The callback to be called, when the event is triggered
|
|
285
|
+
* @param {object} [oListener] Context object to call the event handler with. Defaults to this.
|
|
286
|
+
* @returns {this} Reference to 'this' in order to allow method chaining
|
|
287
|
+
* @since 1.113.0
|
|
288
|
+
* @private
|
|
289
|
+
*/
|
|
290
|
+
attachContentFinderClosed: function (fnFunction, oListener) {
|
|
291
|
+
this.attachEventOnce("contentFinderClosed", fnFunction, oListener);
|
|
292
|
+
return this;
|
|
293
|
+
},
|
|
294
|
+
|
|
295
|
+
/**
|
|
296
|
+
* Attaches an event handler to the 'widgetSelected' event.
|
|
297
|
+
*
|
|
298
|
+
* When called, the context of the event handler will be bound to 'oListener' if specified, otherwise it will be bound to this.
|
|
299
|
+
*
|
|
300
|
+
* @param {object} oData] An application-specific payload object that will be passed to the event handler.
|
|
301
|
+
* @param {function} fnFunction The callback to be called, when the event is triggered
|
|
302
|
+
* @param {object} [oListener] Context object to call the event handler with. Defaults to this.
|
|
303
|
+
* @returns {this} Reference to 'this' in order to allow method chaining
|
|
304
|
+
* @since 1.113.0
|
|
305
|
+
* @private
|
|
306
|
+
*/
|
|
307
|
+
attachWidgetSelected: function (oData, fnFunction, oListener) {
|
|
308
|
+
this.attachEventOnce("widgetSelected", oData, fnFunction, oListener);
|
|
309
|
+
return this;
|
|
310
|
+
},
|
|
311
|
+
|
|
312
|
+
/**
|
|
313
|
+
* Attaches an event handler to the 'visualizationsAdded' event.
|
|
314
|
+
*
|
|
315
|
+
* When called, the context of the event handler will be bound to 'oListener' if specified, otherwise it will be bound to this.
|
|
316
|
+
*
|
|
317
|
+
* @param {object} oData] An application-specific payload object that will be passed to the event handler.
|
|
318
|
+
* @param {function} fnFunction The callback to be called, when the event is triggered
|
|
319
|
+
* @param {object} [oListener] Context object to call the event handler with. Defaults to this.
|
|
320
|
+
* @returns {this} Reference to 'this' in order to allow method chaining
|
|
321
|
+
* @since 1.113.0
|
|
322
|
+
* @private
|
|
323
|
+
*/
|
|
324
|
+
attachVisualizationsAdded: function (oData, fnFunction, oListener) {
|
|
325
|
+
this.attachEventOnce("visualizationsAdded", oData, fnFunction, oListener);
|
|
326
|
+
return this;
|
|
327
|
+
},
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Resets the AppSearch, but keeps originally passed visualizations in the model.
|
|
331
|
+
*
|
|
332
|
+
* Resetting the AppSearch is necessary when navigating away from the AppSearch.
|
|
333
|
+
*
|
|
334
|
+
* @since 1.113.0
|
|
335
|
+
* @private
|
|
336
|
+
*/
|
|
337
|
+
resetAppSearch: function () {
|
|
338
|
+
var oData = this.getModel().getData();
|
|
339
|
+
|
|
340
|
+
var oInitialDataTmp = deepExtend({}, oInitialData.appSearch);
|
|
341
|
+
oInitialDataTmp.originalVisualizations = deepExtend({}, oData.appSearch.originalVisualizations);
|
|
342
|
+
oInitialDataTmp.originalRestrictedVisualizations = [].concat(oData.appSearch.originalRestrictedVisualizations);
|
|
343
|
+
|
|
344
|
+
oInitialDataTmp.visualizations = deepExtend({}, oData.appSearch.originalVisualizations);
|
|
345
|
+
oInitialDataTmp.restrictedVisualizations = [].concat(oData.appSearch.originalRestrictedVisualizations);
|
|
346
|
+
|
|
347
|
+
oData.appSearch = oInitialDataTmp;
|
|
348
|
+
|
|
349
|
+
this.getModel().setData(oData);
|
|
350
|
+
},
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* Executes the navigation from one view to another view.
|
|
354
|
+
*
|
|
355
|
+
* @param {string} [sTarget] Target view which is navigated to.
|
|
356
|
+
* @since 1.113.0
|
|
357
|
+
* @returns {Promise<undefined>} Resolves with <code>undefined</code>.
|
|
358
|
+
* @private
|
|
359
|
+
*/
|
|
360
|
+
navigate: function (sTarget) {
|
|
361
|
+
var oModel = this.getModel();
|
|
362
|
+
|
|
363
|
+
oModel.setProperty("/activeNavigationTarget", sTarget);
|
|
364
|
+
|
|
365
|
+
if (sTarget === oNavigationTargets.appSearchTiles || sTarget === oNavigationTargets.appSearchCards) {
|
|
366
|
+
return this.getNavContainer().then(function (oNavContainer) {
|
|
367
|
+
oNavContainer.to(this.oContentFinderAppSearchPage);
|
|
368
|
+
}.bind(this));
|
|
57
369
|
}
|
|
58
|
-
|
|
370
|
+
|
|
371
|
+
return this.getNavContainer().then(function (oNavContainer) {
|
|
372
|
+
oNavContainer.to(this.oContentFinderWidgetGalleryPage);
|
|
373
|
+
}.bind(this));
|
|
374
|
+
},
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* Initializes the content finder model.
|
|
378
|
+
*
|
|
379
|
+
* It is also called again after closing the dialog.
|
|
380
|
+
*
|
|
381
|
+
* @since 1.113.0
|
|
382
|
+
* @private
|
|
383
|
+
*/
|
|
384
|
+
_initializeModel: function () {
|
|
385
|
+
this.getModel().setData(deepExtend({}, oInitialData));
|
|
386
|
+
},
|
|
387
|
+
|
|
388
|
+
/**
|
|
389
|
+
* Prepares tiles from the visualizationData and enriches them for the appBoxes.
|
|
390
|
+
*
|
|
391
|
+
* @param {array} aVisualizationData The visualizationData from the consumer
|
|
392
|
+
* @returns {object} oData The prepared and filtered tiles
|
|
393
|
+
* @since 1.113.0
|
|
394
|
+
* @private
|
|
395
|
+
*/
|
|
396
|
+
_prepareTiles: function (aVisualizationData) {
|
|
397
|
+
var aTilesData = aVisualizationData.filter(function (tile) {
|
|
398
|
+
return [
|
|
399
|
+
"sap.ushell.StaticAppLauncher",
|
|
400
|
+
"sap.ushell.DynamicAppLauncher"
|
|
401
|
+
].indexOf(tile.Type) > -1;
|
|
402
|
+
});
|
|
403
|
+
|
|
404
|
+
var oData = [];
|
|
405
|
+
aTilesData.forEach(function (oTile, iIndex) {
|
|
406
|
+
if (!oTile.Descriptor) {
|
|
407
|
+
Log.error("No Descriptor available. Cannot load this tile!", null, this.logComponent);
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
var oTileSapApp = oTile.Descriptor["sap.app"];
|
|
412
|
+
var oTileSapFiori = oTile.Descriptor["sap.fiori"];
|
|
413
|
+
var sAppID = "";
|
|
414
|
+
|
|
415
|
+
if (oTileSapFiori) {
|
|
416
|
+
sAppID = oTileSapFiori.registrationIds[0];
|
|
417
|
+
} else if (oTileSapApp && oTileSapApp.hasOwnProperty("id")) {
|
|
418
|
+
sAppID = oTileSapApp.id;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
oData.push({
|
|
422
|
+
id: oTile.Id,
|
|
423
|
+
appId: sAppID,
|
|
424
|
+
icon: ObjectPath.get("icons.icon", oTile.Descriptor["sap.ui"]) || "",
|
|
425
|
+
info: oTileSapApp && oTileSapApp.info || "",
|
|
426
|
+
launchUrl: oTile.Descriptor["sap.flp"] && oTile.Descriptor["sap.flp"].target || "",
|
|
427
|
+
previewSize: ushellLibrary.AppBoxPreviewSize.Small,
|
|
428
|
+
posinset: iIndex + 1,
|
|
429
|
+
setsize: aTilesData.length,
|
|
430
|
+
subtitle: oTileSapApp && oTileSapApp.subTitle || "",
|
|
431
|
+
title: oTileSapApp && oTileSapApp.title || "",
|
|
432
|
+
type: oTile.Type,
|
|
433
|
+
frameType: mobileLibrary.FrameType.OneByOne,
|
|
434
|
+
vizData: oTile,
|
|
435
|
+
selected: false,
|
|
436
|
+
disabled: false
|
|
437
|
+
});
|
|
438
|
+
}.bind(this));
|
|
439
|
+
return oData;
|
|
440
|
+
},
|
|
441
|
+
|
|
442
|
+
/**
|
|
443
|
+
* Prepares cards from the visualizationData and enriches them for the appBoxes.
|
|
444
|
+
*
|
|
445
|
+
* @param {array} aVisualizationData The visualizationData from the consumer
|
|
446
|
+
* @returns {object} oData The prepared and filtered tiles
|
|
447
|
+
* @since 1.113.0
|
|
448
|
+
* @private
|
|
449
|
+
*/
|
|
450
|
+
_prepareCards: function (aVisualizationData) {
|
|
451
|
+
var aCardsData = aVisualizationData.filter(function (tile) {
|
|
452
|
+
return tile.Type === "sap.card";
|
|
453
|
+
});
|
|
454
|
+
|
|
455
|
+
var oData = [];
|
|
456
|
+
aCardsData.forEach(function (oCard, iIndex) {
|
|
457
|
+
if (!oCard.Descriptor) {
|
|
458
|
+
Log.error("No Descriptor available. Cannot load this card!", null, this.logComponent);
|
|
459
|
+
return;
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
var oCardSapApp = oCard.Descriptor["sap.app"];
|
|
463
|
+
var sAppID = oCardSapApp && oCardSapApp.id || "";
|
|
464
|
+
|
|
465
|
+
oData.push({
|
|
466
|
+
id: oCard.Id,
|
|
467
|
+
appId: sAppID,
|
|
468
|
+
icon: ObjectPath.get("icons.icon", oCard.Descriptor["sap.ui"]) || "",
|
|
469
|
+
info: oCardSapApp && oCardSapApp.info || "",
|
|
470
|
+
previewSize: ushellLibrary.AppBoxPreviewSize.Large,
|
|
471
|
+
posinset: iIndex + 1,
|
|
472
|
+
setsize: aCardsData.length,
|
|
473
|
+
subtitle: oCardSapApp && oCardSapApp.subTitle || "",
|
|
474
|
+
title: oCardSapApp && oCardSapApp.title || "",
|
|
475
|
+
type: oCard.Type,
|
|
476
|
+
manifest: oCard.Descriptor,
|
|
477
|
+
vizData: oCard,
|
|
478
|
+
selected: false,
|
|
479
|
+
disabled: false
|
|
480
|
+
});
|
|
481
|
+
}.bind(this));
|
|
482
|
+
return oData;
|
|
483
|
+
},
|
|
484
|
+
|
|
485
|
+
/**
|
|
486
|
+
* Updates the restricted state of the currently available visualizations.
|
|
487
|
+
*
|
|
488
|
+
* @since 1.113.0
|
|
489
|
+
* @private
|
|
490
|
+
*/
|
|
491
|
+
_updateVisualizationsRestricted: function () {
|
|
492
|
+
var aRestrictedVisualizations = this.getModel().getProperty("/appSearch/restrictedVisualizations");
|
|
493
|
+
var oVisualizations = this.getModel().getProperty("/appSearch/visualizations");
|
|
494
|
+
|
|
495
|
+
Object.values(oVisualizations).forEach(function (aWidgetTypeData) {
|
|
496
|
+
aWidgetTypeData.forEach(function (oWidget) {
|
|
497
|
+
if (aRestrictedVisualizations.includes(oWidget.id)) {
|
|
498
|
+
oWidget.selected = true;
|
|
499
|
+
oWidget.disabled = true;
|
|
500
|
+
} else {
|
|
501
|
+
oWidget.selected = false;
|
|
502
|
+
oWidget.disabled = false;
|
|
503
|
+
}
|
|
504
|
+
});
|
|
505
|
+
});
|
|
59
506
|
}
|
|
60
507
|
});
|
|
61
508
|
});
|