@sapui5/sap.ushell 1.138.1 → 1.139.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/main/js/sap/ushell/.library +1 -1
- package/src/main/js/sap/ushell/ApplicationType/UrlPostProcessing.js +14 -10
- package/src/main/js/sap/ushell/ApplicationType/urlTemplateResolution.js +0 -9
- package/src/main/js/sap/ushell/ApplicationType/wcfResolution.js +32 -26
- package/src/main/js/sap/ushell/Container.js +0 -1
- package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
- package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
- package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
- package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
- package/src/main/js/sap/ushell/URLTemplateProcessor/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/URLTemplateProcessor.js +1 -1
- package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +12 -12
- package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
- package/src/main/js/sap/ushell/User.js +32 -12
- package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
- package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
- package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
- package/src/main/js/sap/ushell/appIntegration/AppLifeCycle.js +6 -5
- package/src/main/js/sap/ushell/appIntegration/ApplicationContainer.js +14 -1
- package/src/main/js/sap/ushell/appIntegration/ApplicationHandle.js +8 -3
- package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainer.js +8 -8
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/AppruntimeHandler.js +17 -12
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ExtensionItems.js +6 -23
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/LifecycleHandler.js +114 -91
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/NWBCHandler.js +15 -7
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ServiceHandler.js +257 -214
- package/src/main/js/sap/ushell/appIntegration/PostMessageManager.js +347 -117
- package/src/main/js/sap/ushell/appIntegration/UI5ApplicationContainer.js +1 -0
- package/src/main/js/sap/ushell/appIntegration/contracts/EmbeddedUI5Handler.js +15 -19
- package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV1Handler.js +15 -14
- package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV2Handler.js +38 -40
- package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -8
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +74 -17
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +25 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/FlpLaunchPage.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +17 -21
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +4 -4
- package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
- package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
- package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/StepConfiguration.json +0 -2
- 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 +4 -0
- package/src/main/js/sap/ushell/bootstrap/sandbox2.js +1 -1
- package/src/main/js/sap/ushell/components/CatalogsManager.js +157 -157
- package/src/main/js/sap/ushell/components/ComponentKeysHandler.js +180 -187
- package/src/main/js/sap/ushell/components/DestroyHelper.js +4 -4
- package/src/main/js/sap/ushell/components/GroupsHelper.js +21 -21
- package/src/main/js/sap/ushell/components/HomepageManager.js +465 -424
- package/src/main/js/sap/ushell/components/MessagingHelper.js +24 -24
- package/src/main/js/sap/ushell/components/SharedComponentUtils.js +16 -16
- package/src/main/js/sap/ushell/components/_HomepageManager/DashboardLoadingManager.js +43 -43
- package/src/main/js/sap/ushell/components/_HomepageManager/PagingManager.js +43 -39
- package/src/main/js/sap/ushell/components/_HomepageManager/PersistentPageOperationAdapter.js +166 -175
- package/src/main/js/sap/ushell/components/_HomepageManager/TransientPageOperationAdapter.js +57 -57
- package/src/main/js/sap/ushell/components/appfinder/AppFinder.controller.js +96 -99
- package/src/main/js/sap/ushell/components/appfinder/AppFinderView.js +27 -21
- package/src/main/js/sap/ushell/components/appfinder/Catalog.controller.js +180 -178
- package/src/main/js/sap/ushell/components/appfinder/CatalogView.js +56 -56
- package/src/main/js/sap/ushell/components/appfinder/Component.js +12 -16
- package/src/main/js/sap/ushell/components/appfinder/EasyAccess.controller.js +129 -133
- package/src/main/js/sap/ushell/components/appfinder/EasyAccessView.js +10 -10
- package/src/main/js/sap/ushell/components/appfinder/GroupListPopover.controller.js +22 -22
- package/src/main/js/sap/ushell/components/appfinder/GroupListPopoverView.js +14 -14
- package/src/main/js/sap/ushell/components/appfinder/HierarchyApps.controller.js +75 -78
- package/src/main/js/sap/ushell/components/appfinder/HierarchyAppsView.js +24 -27
- package/src/main/js/sap/ushell/components/appfinder/HierarchyFolders.controller.js +44 -46
- package/src/main/js/sap/ushell/components/appfinder/HierarchyFoldersView.js +22 -22
- package/src/main/js/sap/ushell/components/appfinder/VisualizationOrganizerHelper.js +28 -28
- package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/cards/Card.controller.js +16 -20
- package/src/main/js/sap/ushell/components/cards/Configuration.controller.js +35 -37
- package/src/main/js/sap/ushell/components/cards/ManifestPropertyHelper.js +32 -34
- package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.controller.js +7 -12
- package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.view.xml +2 -9
- package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Extension.js +0 -1
- package/src/main/js/sap/ushell/components/cepsearchresult/app/css/style.css +58 -0
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/AdvancedFormatters.js +0 -1
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/Edition.js +0 -1
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/EditionAdvanced.js +0 -1
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/appendStyleVars.js +0 -1
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.js +13 -13
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Highlighter.js +2 -5
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Paginator.js +0 -2
- package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Event.js +4 -3
- package/src/main/js/sap/ushell/components/contentFinder/CatalogService.js +8 -9
- package/src/main/js/sap/ushell/components/contentFinder/Component.js +2 -2
- package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +1 -3
- package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/dialog/Component.js +2 -2
- package/src/main/js/sap/ushell/components/contentFinder/dialog/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/model/GraphQLListBinding.js +3 -5
- package/src/main/js/sap/ushell/components/contentFinder/model/GraphQLModel.js +2 -2
- package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +13 -6
- package/src/main/js/sap/ushell/components/contentFinder/resources/resources.properties +3 -3
- package/src/main/js/sap/ushell/components/contentFinder/resources/resources_en_US_saprigi.properties +1 -1
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +2 -14
- package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTreeTable.fragment.xml +14 -7
- package/src/main/js/sap/ushell/components/contentFinder/view/VisualizationsNoDataIllustratedMessage.fragment.xml +1 -1
- package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +2 -2
- package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +2 -4
- package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/factsheet/Component.js +13 -8
- package/src/main/js/sap/ushell/components/factsheet/annotation/Mapping.js +166 -118
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureTile.js +20 -16
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureTileRenderer.js +3 -3
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewer.js +84 -77
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewerItem.js +4 -4
- package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewerRenderer.js +2 -2
- package/src/main/js/sap/ushell/components/factsheet/factory/ThingInspector.js +1356 -1139
- package/src/main/js/sap/ushell/components/factsheet/tools/ODataUrlTemplating.js +9 -5
- package/src/main/js/sap/ushell/components/factsheet/views/ThingViewer.controller.js +1 -1
- package/src/main/js/sap/ushell/components/factsheet/views/ThingViewer.view.js +9 -6
- package/src/main/js/sap/ushell/components/homeApp/error/Component.js +1 -1
- package/src/main/js/sap/ushell/components/homeApp/error/HomeAppError.controller.js +4 -4
- package/src/main/js/sap/ushell/components/homepage/ActionMode.js +51 -48
- package/src/main/js/sap/ushell/components/homepage/Component.js +11 -11
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.controller.js +185 -192
- package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +60 -50
- package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +199 -202
- package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +152 -160
- package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/pages/ActionMode.js +72 -74
- package/src/main/js/sap/ushell/components/pages/Component.js +7 -32
- package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +46 -46
- package/src/main/js/sap/ushell/components/pages/StateManager.js +9 -10
- package/src/main/js/sap/ushell/components/pages/controller/MyHome.controller.js +4 -4
- package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +243 -215
- package/src/main/js/sap/ushell/components/pages/controller/PagesAndSpaceId.js +23 -24
- package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/runtimeSwitcher/Component.js +1 -1
- package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +60 -70
- package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/FloatingContainer/Component.js +0 -5
- package/src/main/js/sap/ushell/components/shell/FloatingContainer/controls/FloatingContainer.js +3 -3
- package/src/main/js/sap/ushell/components/shell/FloatingContainer/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/MenuBar/Component.js +18 -50
- package/src/main/js/sap/ushell/components/shell/MenuBar/controller/MenuBar.controller.js +73 -83
- package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/Component.js +1 -1
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +49 -50
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenuButton.controller.js +5 -5
- package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +35 -33
- package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +8 -9
- package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsList.controller.js +5 -11
- package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +63 -42
- package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +20 -22
- package/src/main/js/sap/ushell/components/shell/Search/Component.js +20 -12
- package/src/main/js/sap/ushell/components/shell/Search/ESearch.js +18 -21
- package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +21 -14
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchCEP.controller.js +204 -250
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +25 -24
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +9 -9
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +4 -4
- package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +63 -65
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/Component.js +420 -0
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/FrequentActivityProvider.js +84 -0
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/RecentSearchProvider.js +63 -0
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/SearchProvider.js +141 -0
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/SearchProviders/SearchServiceProvider.js +177 -0
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/manifest.json +43 -0
- package/src/main/js/sap/ushell/components/shell/SearchCEPNew/resources/resources.properties +17 -0
- package/src/main/js/sap/ushell/components/shell/Settings/Component.js +50 -35
- package/src/main/js/sap/ushell/components/shell/Settings/ErrorMessageHelper.js +10 -10
- package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +150 -150
- package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +66 -63
- package/src/main/js/sap/ushell/components/shell/Settings/appearance/AppearanceEntry.js +12 -15
- package/src/main/js/sap/ushell/components/shell/Settings/homepage/HomepageEntry.js +34 -37
- package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsEntry.js +6 -7
- package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.controller.js +46 -48
- package/src/main/js/sap/ushell/components/shell/Settings/search/Search.controller.js +4 -4
- package/src/main/js/sap/ushell/components/shell/Settings/search/SearchEntry.js +13 -13
- package/src/main/js/sap/ushell/components/shell/Settings/spaces/SpacesEntry.js +11 -13
- package/src/main/js/sap/ushell/components/shell/Settings/spaces/SpacesSetting.controller.js +41 -42
- package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountEntry.js +11 -15
- package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSelector.controller.js +35 -37
- package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesEntry.js +6 -7
- package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.controller.js +7 -8
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/Component.js +2 -2
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsEntry.js +16 -16
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsForm.js +17 -17
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/ExtendedValueDialog.controller.js +21 -24
- package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +136 -137
- package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/LanguageRegionSelector.controller.js +73 -78
- package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/UserLanguageRegionEntry.js +8 -8
- package/src/main/js/sap/ushell/components/shell/ShellBar/Component.js +69 -24
- package/src/main/js/sap/ushell/components/shell/ShellBar/controller/ShellBar.controller.js +42 -22
- package/src/main/js/sap/ushell/components/shell/ShellBar/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/ShellBar/view/ShellBar.view.xml +24 -10
- package/src/main/js/sap/ushell/components/shell/SideNavigation/Component.js +7 -11
- package/src/main/js/sap/ushell/components/shell/SideNavigation/controller/SideNavigation.controller.js +3 -3
- package/src/main/js/sap/ushell/components/shell/SideNavigation/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/AllSpaces.js +3 -4
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/AppFinder.js +2 -2
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/Favorites.js +14 -4
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/GenericFixedNavigationListProvider.js +2 -2
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/GenericNavigationListProvider.js +2 -2
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/MyHome.js +2 -2
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/NavigationHelper.js +4 -4
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/RecentActivity.js +4 -4
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/Spaces.js +5 -6
- package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/SpacesNavigationListProvider.js +2 -3
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +3 -4
- package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +47 -48
- package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +27 -30
- package/src/main/js/sap/ushell/components/tiles/action/ActionTile.controller.js +55 -55
- package/src/main/js/sap/ushell/components/tiles/action/Configuration.controller.js +39 -41
- package/src/main/js/sap/ushell/components/tiles/applauncher/Component.js +3 -3
- package/src/main/js/sap/ushell/components/tiles/applauncher/Configuration.controller.js +26 -27
- package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +66 -66
- package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.view.js +5 -5
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Component.js +2 -2
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Configuration.controller.js +27 -27
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +107 -107
- package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.view.js +7 -7
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/Component.js +7 -7
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/StaticTile.controller.js +31 -31
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/StaticTile.view.js +2 -2
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/Component.js +15 -15
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.controller.js +85 -86
- package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.view.js +4 -4
- package/src/main/js/sap/ushell/components/tiles/generic.js +133 -131
- package/src/main/js/sap/ushell/components/tiles/indicatorArea/AreaChartTile.controller.js +71 -71
- package/src/main/js/sap/ushell/components/tiles/indicatorArea/AreaChartTile.view.js +17 -17
- package/src/main/js/sap/ushell/components/tiles/indicatorDual/DualTile.controller.js +49 -49
- package/src/main/js/sap/ushell/components/tiles/indicatorDual/DualTile.view.js +9 -9
- package/src/main/js/sap/ushell/components/tiles/indicatorDualComparison/DualComparison.controller.js +80 -80
- package/src/main/js/sap/ushell/components/tiles/indicatorDualComparison/DualComparison.view.js +3 -3
- package/src/main/js/sap/ushell/components/tiles/indicatorDualContribution/DualContribution.controller.js +74 -75
- package/src/main/js/sap/ushell/components/tiles/indicatorDualContribution/DualContribution.view.js +3 -3
- package/src/main/js/sap/ushell/components/tiles/indicatorDualDeviation/DualDeviation.controller.js +55 -55
- package/src/main/js/sap/ushell/components/tiles/indicatorDualDeviation/DualDeviation.view.js +12 -12
- package/src/main/js/sap/ushell/components/tiles/indicatorDualTrend/DualTrend.controller.js +83 -84
- package/src/main/js/sap/ushell/components/tiles/indicatorDualTrend/DualTrend.view.js +15 -15
- package/src/main/js/sap/ushell/components/tiles/indicatorHarveyBall/HarveyBallTile.controller.js +71 -71
- package/src/main/js/sap/ushell/components/tiles/indicatorHarveyBall/HarveyBallTile.view.js +7 -7
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/cache.js +4 -4
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/indicatorTileHelper.js +4 -4
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/oData4Analytics.js +230 -232
- package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/smartBusinessUtil.js +271 -272
- package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +55 -55
- package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.view.js +4 -4
- package/src/main/js/sap/ushell/components/tiles/indicatorcontribution/ContributionTile.controller.js +53 -53
- package/src/main/js/sap/ushell/components/tiles/indicatorcontribution/ContributionTile.view.js +5 -5
- package/src/main/js/sap/ushell/components/tiles/indicatordeviation/DeviationTile.controller.js +20 -20
- package/src/main/js/sap/ushell/components/tiles/indicatordeviation/DeviationTile.view.js +11 -11
- package/src/main/js/sap/ushell/components/tiles/indicatornumeric/NumericTile.controller.js +14 -15
- package/src/main/js/sap/ushell/components/tiles/indicatornumeric/NumericTile.view.js +10 -10
- package/src/main/js/sap/ushell/components/tiles/sbtilecontent.js +6 -6
- package/src/main/js/sap/ushell/components/tiles/utils.js +699 -664
- package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +217 -217
- package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +4 -8
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +40 -42
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +257 -262
- package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.layout.js +19 -20
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +6 -6
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +37 -38
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +97 -100
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +81 -82
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnRenderer.js +9 -9
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +38 -39
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRenderer.js +5 -5
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +8 -9
- package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRowRenderer.js +9 -9
- package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
- package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +4 -4
- package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +15 -15
- package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
- package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Avatar.js +111 -107
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Button.js +215 -137
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Label.js +68 -70
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItem.js +81 -80
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItemBase.js +40 -39
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/ListItemGroup.js +152 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Menu.js +178 -120
- package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/MenuItem.js +186 -146
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-base.js +517 -360
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationList.js +128 -79
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListGroupItem.js +76 -75
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListItem.js +119 -99
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/NotificationListItemBase.js +48 -46
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/Search.js +162 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchItem.js +74 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchItemGroup.js +35 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchMessageArea.js +52 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/SearchScope.js +54 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBar.js +373 -209
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarBranding.js +77 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarItem.js +81 -64
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarSearch.js +156 -0
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/ShellBarSpacer.js +42 -41
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenu.js +190 -137
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenuAccount.js +76 -75
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/dist/UserMenuItem.js +35 -34
- package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori.js +1706 -1307
- package/src/main/js/sap/ushell/gen/ui5/webcomponents.js +3011 -2372
- package/src/main/js/sap/ushell/library.js +1 -1
- package/src/main/js/sap/ushell/navigation/NavigationState.js +126 -0
- 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/renderer/AccessKeysHandler.js +25 -17
- package/src/main/js/sap/ushell/renderer/NavContainer.js +6 -0
- package/src/main/js/sap/ushell/renderer/Renderer.js +19 -7
- package/src/main/js/sap/ushell/renderer/Shell.controller.js +10 -21
- package/src/main/js/sap/ushell/renderer/Shell.view.js +4 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_ar.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_bg.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_ca.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_cnr.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_cs.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_cy.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_da.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_de.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_el.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_en.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_en_GB.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_en_US_saprigi.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_es.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_es_MX.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_et.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_fi.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_fr.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_fr_CA.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_hi.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_hr.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_hu.properties +3 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_id.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_it.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_iw.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_ja.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_kk.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_ko.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_lt.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_lv.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_mk.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_ms.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_nl.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_no.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_pl.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_pt.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_pt_PT.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_ro.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_ru.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_sh.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_sk.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_sl.properties +3 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_sr.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_sv.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_th.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_tr.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_uk.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_vi.properties +3 -1
- package/src/main/js/sap/ushell/renderer/resources/resources_zh_CN.properties +2 -0
- package/src/main/js/sap/ushell/renderer/resources/resources_zh_TW.properties +2 -0
- package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
- package/src/main/js/sap/ushell/services/AllMyApps.js +5 -5
- package/src/main/js/sap/ushell/services/AppConfiguration.js +3 -5
- package/src/main/js/sap/ushell/services/AppLifeCycle.js +27 -4
- package/src/main/js/sap/ushell/services/AppState.js +86 -102
- package/src/main/js/sap/ushell/services/AppType.js +2 -2
- package/src/main/js/sap/ushell/services/Bookmark.js +156 -164
- package/src/main/js/sap/ushell/services/BookmarkV2.js +10 -13
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Formatter.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundIndex.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundProvider.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/PrelaunchOperations.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Search.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/StagedLogger.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/SystemContext.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Utils.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/VirtualInbounds.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution/XAppStateProcessing.js +1 -1
- package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +27 -31
- package/src/main/js/sap/ushell/services/CommonDataModel/SiteConverter.js +1 -1
- package/src/main/js/sap/ushell/services/CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
- package/src/main/js/sap/ushell/services/CommonDataModel.js +295 -353
- package/src/main/js/sap/ushell/services/Configuration.js +14 -12
- package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +34 -35
- package/src/main/js/sap/ushell/services/Container.js +2 -2
- package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +29 -62
- package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +227 -266
- package/src/main/js/sap/ushell/services/DarkModeSupport.js +17 -16
- package/src/main/js/sap/ushell/services/EndUserFeedback.js +5 -4
- package/src/main/js/sap/ushell/services/Extension/Item.js +7 -12
- package/src/main/js/sap/ushell/services/Extension.js +54 -19
- package/src/main/js/sap/ushell/services/FlpLaunchPage.js +209 -213
- package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +3 -3
- package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +3 -3
- package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +6 -6
- package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +1 -1
- package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +1 -1
- package/src/main/js/sap/ushell/services/FrameBoundExtension/UserSettingsEntry.js +4 -4
- package/src/main/js/sap/ushell/services/FrameBoundExtension.js +3 -3
- package/src/main/js/sap/ushell/services/LaunchPage.js +1 -2
- package/src/main/js/sap/ushell/services/Menu.js +264 -289
- package/src/main/js/sap/ushell/services/Message.js +3 -3
- package/src/main/js/sap/ushell/services/MessageBroker/MessageBrokerEngine.js +6 -29
- package/src/main/js/sap/ushell/services/MessageBroker.js +14 -10
- package/src/main/js/sap/ushell/services/MessageInternal.js +37 -38
- package/src/main/js/sap/ushell/services/NavTargetResolution.js +2 -5
- package/src/main/js/sap/ushell/services/NavTargetResolutionInternal.js +153 -157
- package/src/main/js/sap/ushell/services/Navigation/compatibility.js +4 -6
- package/src/main/js/sap/ushell/services/Navigation/utils.js +62 -64
- package/src/main/js/sap/ushell/services/Navigation.js +10 -14
- package/src/main/js/sap/ushell/services/NavigationDataProvider.js +2 -2
- package/src/main/js/sap/ushell/services/Notifications.js +29 -15
- package/src/main/js/sap/ushell/services/NotificationsV2.js +86 -98
- package/src/main/js/sap/ushell/services/PageBuilding.js +9 -6
- package/src/main/js/sap/ushell/services/PagePersistence.js +3 -3
- package/src/main/js/sap/ushell/services/PageReferencing.js +4 -2
- package/src/main/js/sap/ushell/services/Pages.js +635 -683
- package/src/main/js/sap/ushell/services/Personalization.js +103 -134
- package/src/main/js/sap/ushell/services/PersonalizationV2/ContextContainer.js +29 -32
- package/src/main/js/sap/ushell/services/PersonalizationV2/Personalizer.js +21 -6
- package/src/main/js/sap/ushell/services/PersonalizationV2/TransientPersonalizer.js +1 -2
- package/src/main/js/sap/ushell/services/PersonalizationV2/Variant.js +5 -1
- package/src/main/js/sap/ushell/services/PersonalizationV2/VariantSet.js +5 -8
- package/src/main/js/sap/ushell/services/PersonalizationV2/VariantSetAdapter.js +2 -2
- package/src/main/js/sap/ushell/services/PersonalizationV2/WindowAdapter.js +10 -11
- package/src/main/js/sap/ushell/services/PersonalizationV2/WindowAdapterContainer.js +27 -27
- package/src/main/js/sap/ushell/services/PersonalizationV2/constants.js +1 -2
- package/src/main/js/sap/ushell/services/PersonalizationV2/constants.private.js +1 -1
- package/src/main/js/sap/ushell/services/PersonalizationV2/utils.js +5 -5
- package/src/main/js/sap/ushell/services/PersonalizationV2.js +92 -105
- package/src/main/js/sap/ushell/services/PluginManager/Extensions.js +9 -9
- package/src/main/js/sap/ushell/services/PluginManager/HeaderExtensions.js +2 -2
- package/src/main/js/sap/ushell/services/PluginManager/MenuExtensions.js +4 -4
- package/src/main/js/sap/ushell/services/PluginManager/SimpleExpression.js +5 -8
- package/src/main/js/sap/ushell/services/PluginManager.js +12 -8
- package/src/main/js/sap/ushell/services/ReferenceResolver.js +21 -28
- package/src/main/js/sap/ushell/services/Search.js +25 -21
- package/src/main/js/sap/ushell/services/SearchCEP.js +38 -32
- package/src/main/js/sap/ushell/services/SearchableContent.js +203 -223
- package/src/main/js/sap/ushell/services/ShellNavigation.js +5 -3
- package/src/main/js/sap/ushell/services/ShellNavigationHashChanger.js +160 -164
- package/src/main/js/sap/ushell/services/ShellNavigationInternal.js +23 -19
- package/src/main/js/sap/ushell/services/SmartNavigation.js +86 -82
- package/src/main/js/sap/ushell/services/SpaceContent.js +73 -106
- package/src/main/js/sap/ushell/services/SupportTicket.js +1 -1
- package/src/main/js/sap/ushell/services/UITracer.js +48 -62
- package/src/main/js/sap/ushell/services/URLShortening.js +2 -2
- package/src/main/js/sap/ushell/services/URLTemplate.js +7 -8
- package/src/main/js/sap/ushell/services/Ui5ComponentHandle.js +5 -5
- package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +1 -1
- package/src/main/js/sap/ushell/services/UsageAnalytics.js +2 -3
- package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +10 -10
- package/src/main/js/sap/ushell/services/UserDefaultParameters.js +12 -13
- package/src/main/js/sap/ushell/services/UserInfo.js +27 -15
- package/src/main/js/sap/ushell/services/UserRecents/RecentActivity.js +6 -7
- package/src/main/js/sap/ushell/services/UserRecents/RecentAppsUsage.js +5 -5
- package/src/main/js/sap/ushell/services/UserRecents/RecentsList.js +2 -2
- package/src/main/js/sap/ushell/services/UserRecents/UserRecentsBase.js +2 -2
- package/src/main/js/sap/ushell/services/UserRecents.js +3 -3
- package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +63 -66
- package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +11 -11
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
- package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
- package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
- package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
- package/src/main/js/sap/ushell/services/personalization/VariantSetAdapter.js +10 -10
- package/src/main/js/sap/ushell/state/BaseState.js +2 -3
- package/src/main/js/sap/ushell/state/BindingHelper.js +2 -4
- package/src/main/js/sap/ushell/state/ControlManager.js +2 -3
- package/src/main/js/sap/ushell/state/CurrentState.js +2 -2
- package/src/main/js/sap/ushell/state/KeepAlive.js +2 -2
- package/src/main/js/sap/ushell/state/ShellModel.js +2 -3
- package/src/main/js/sap/ushell/state/StateManager/LaunchpadState.js +2 -2
- package/src/main/js/sap/ushell/state/StateManager/Operation.js +2 -2
- package/src/main/js/sap/ushell/state/StateManager/ShellMode.js +2 -2
- package/src/main/js/sap/ushell/state/StateManager.js +3 -3
- package/src/main/js/sap/ushell/state/StateRules.js +2 -3
- package/src/main/js/sap/ushell/state/StrategyFactory/DefaultStrategy.js +2 -3
- package/src/main/js/sap/ushell/state/StrategyFactory/FloatingActionsStrategy.js +2 -3
- package/src/main/js/sap/ushell/state/StrategyFactory/FloatingContainerStrategy.js +2 -3
- package/src/main/js/sap/ushell/state/StrategyFactory/HeadEndItemsStrategy.js +10 -4
- package/src/main/js/sap/ushell/state/StrategyFactory/HeadItemsStrategy.js +3 -4
- package/src/main/js/sap/ushell/state/StrategyFactory/SidePaneStrategy.js +2 -3
- package/src/main/js/sap/ushell/state/StrategyFactory/SubHeaderStrategy.js +2 -3
- package/src/main/js/sap/ushell/state/StrategyFactory/UserActionsStrategy.js +3 -4
- package/src/main/js/sap/ushell/state/StrategyFactory.js +2 -3
- package/src/main/js/sap/ushell/state/modules/BackNavigation.js +2 -5
- package/src/main/js/sap/ushell/state/modules/ContentDensity.js +3 -3
- package/src/main/js/sap/ushell/state/modules/Favicon.js +3 -3
- package/src/main/js/sap/ushell/state/modules/HeaderLogo.js +3 -3
- package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +123 -123
- package/src/main/js/sap/ushell/themes/base/ShellBar.less +2 -1
- package/src/main/js/sap/ushell/themes/base/ShellHeader.less +1 -1
- package/src/main/js/sap/ushell/themes/base/ToolAreaItem.less +2 -1
- package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellBar.less +9 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +6 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3/library.source.less +1 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellBar.less +9 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/library.source.less +1 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellBar.less +9 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/library.source.less +1 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellBar.less +9 -0
- package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/library.source.less +1 -0
- package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +1 -1
- package/src/main/js/sap/ushell/thirdparty/Avatar.js +86 -19
- package/src/main/js/sap/ushell/thirdparty/BusyIndicator.js +23 -245
- package/src/main/js/sap/ushell/thirdparty/Button.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/Button2.js +100 -28
- package/src/main/js/sap/ushell/thirdparty/FocusableElements.js +10 -0
- package/src/main/js/sap/ushell/thirdparty/Icon.js +37 -20
- package/src/main/js/sap/ushell/thirdparty/Icons.js +151 -111
- package/src/main/js/sap/ushell/thirdparty/Label.js +6 -6
- package/src/main/js/sap/ushell/thirdparty/Link.js +14 -13
- package/src/main/js/sap/ushell/thirdparty/List.js +76 -549
- package/src/main/js/sap/ushell/thirdparty/ListBoxItemGroupTemplate.js +14 -0
- package/src/main/js/sap/ushell/thirdparty/ListItemAdditionalText.css.js +10 -0
- package/src/main/js/sap/ushell/thirdparty/ListItemBase.js +251 -0
- package/src/main/js/sap/ushell/thirdparty/ListItemCustom.js +1685 -91
- package/src/main/js/sap/ushell/thirdparty/ListItemGroup.js +637 -0
- package/src/main/js/sap/ushell/thirdparty/Menu.js +78 -90
- package/src/main/js/sap/ushell/thirdparty/MenuItem.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/MenuItem2.js +391 -49
- package/src/main/js/sap/ushell/thirdparty/NotificationList.js +10 -10
- package/src/main/js/sap/ushell/thirdparty/NotificationListGroupItem.js +21 -21
- package/src/main/js/sap/ushell/thirdparty/NotificationListItem.js +520 -517
- package/src/main/js/sap/ushell/thirdparty/NotificationListItemBase.js +6 -6
- package/src/main/js/sap/ushell/thirdparty/ResponsivePopover.js +2306 -0
- package/src/main/js/sap/ushell/thirdparty/SearchItem.js +128 -0
- package/src/main/js/sap/ushell/thirdparty/SearchItemGroup.js +44 -0
- package/src/main/js/sap/ushell/thirdparty/SearchMessageArea.js +49 -0
- package/src/main/js/sap/ushell/thirdparty/SearchScope.js +39 -0
- package/src/main/js/sap/ushell/thirdparty/ShellBar.js +226 -185
- package/src/main/js/sap/ushell/thirdparty/ShellBarBranding.js +119 -0
- package/src/main/js/sap/ushell/thirdparty/ShellBarSearch.js +7 -0
- package/src/main/js/sap/ushell/thirdparty/ShellBarSearch2.js +3380 -0
- package/src/main/js/sap/ushell/thirdparty/Tag.js +16 -15
- package/src/main/js/sap/ushell/thirdparty/Text.js +10 -10
- package/src/main/js/sap/ushell/thirdparty/Title.js +167 -0
- package/src/main/js/sap/ushell/thirdparty/UserMenu.js +60 -59
- package/src/main/js/sap/ushell/thirdparty/UserMenuItem.js +5 -5
- package/src/main/js/sap/ushell/thirdparty/ValueState.js +7 -0
- package/src/main/js/sap/ushell/thirdparty/WrappingType.js +24 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/InputSuggestions.js +397 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/ListItemStandardExpandableTextTemplate.js +8 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-TNT.js +202 -178
- package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons-TNT2.js +145 -121
- package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons.js +2 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/SAP-icons2.js +2 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg2.js +184 -19
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca2.js +185 -20
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca3.js +33 -9
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en.js +3 -174
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en2.js +174 -672
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en3.js +837 -564
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en4.js +602 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd.js +3 -174
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd2.js +174 -672
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd3.js +837 -564
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd4.js +596 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi.js +3 -174
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi2.js +174 -672
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi3.js +837 -567
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi4.js +602 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc.js +3 -174
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc2.js +174 -672
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc3.js +837 -564
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc4.js +596 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es2.js +185 -20
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es3.js +33 -9
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX2.js +185 -20
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX3.js +34 -10
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id2.js +184 -19
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id3.js +33 -9
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it2.js +186 -21
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it3.js +35 -11
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw3.js +33 -9
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv2.js +184 -19
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv3.js +33 -9
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms3.js +33 -9
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl2.js +185 -20
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk2.js +183 -18
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN2.js +182 -17
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN3.js +32 -8
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW2.js +184 -19
- package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW3.js +31 -7
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css10.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css11.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css12.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css13.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css14.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css15.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css16.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css17.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css18.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css19.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css20.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css21.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css22.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css23.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css24.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css25.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css26.js +7 -0
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css3.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css4.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css5.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css6.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css7.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css8.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css9.js +1 -1
- package/src/main/js/sap/ushell/thirdparty/encodeXML.js +87 -0
- package/src/main/js/sap/ushell/thirdparty/generateHighlightedMarkup.js +9 -0
- package/src/main/js/sap/ushell/thirdparty/i18n-defaults.js +157 -149
- package/src/main/js/sap/ushell/thirdparty/i18n-defaults2.js +18 -0
- package/src/main/js/sap/ushell/thirdparty/information.js +10 -13
- package/src/main/js/sap/ushell/thirdparty/information2.js +13 -0
- package/src/main/js/sap/ushell/thirdparty/overflow.js +16 -36
- package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css.js +40 -4
- package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css2.js +8 -0
- package/src/main/js/sap/ushell/thirdparty/query.js +1 -4
- package/src/main/js/sap/ushell/thirdparty/slim-arrow-down.js +44 -0
- package/src/main/js/sap/ushell/thirdparty/sys-enter-2.js +7 -0
- package/src/main/js/sap/ushell/thirdparty/toLowercaseEnumValue.js +0 -8
- package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons/AllIcons.js +2 -2
- package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons-business-suite/AllIcons.js +2 -2
- package/src/main/js/sap/ushell/thirdparty/ui5/webcomponents-icons-tnt/AllIcons.js +2 -2
- package/src/main/js/sap/ushell/thirdparty/webcomponents-base.js +96 -79
- package/src/main/js/sap/ushell/thirdparty/webcomponents-fiori.js +14 -14
- package/src/main/js/sap/ushell/thirdparty/webcomponents.js +29 -29
- package/src/main/js/sap/ushell/thirdparty/willShowContent.js +7 -0
- package/src/main/js/sap/ushell/ui/ShellHeader.js +0 -1
- package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
- package/src/main/js/sap/ushell/ui/launchpad/VizInstance.js +6 -1
- package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
- package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +1 -0
- package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +5 -2
- package/src/main/js/sap/ushell/ui/utils.js +1 -1
- package/src/main/js/sap/ushell/ui5service/ShellUIServiceFactory.js +1 -1
- package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
- package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
- package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +1 -1
- package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +1 -1
- package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +1 -1
- package/src/main/js/sap/ushell/utils.js +32 -1
- package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
- package/ui5.yaml +2 -0
- package/src/main/js/sap/ushell/thirdparty/ListItemTemplate.js +0 -3920
- package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css2.js +0 -7
- /package/src/main/js/sap/ushell/components/shell/SearchCEP/{SearchFieldFragment.fragment.xml → SearchField.fragment.xml} +0 -0
|
@@ -36,7 +36,7 @@ sap.ui.define([
|
|
|
36
36
|
"sap/ui/performance/Measurement",
|
|
37
37
|
"sap/ushell/Config",
|
|
38
38
|
"sap/ushell/Container"
|
|
39
|
-
],
|
|
39
|
+
], (
|
|
40
40
|
jQuery,
|
|
41
41
|
Core,
|
|
42
42
|
Theming,
|
|
@@ -67,13 +67,13 @@ sap.ui.define([
|
|
|
67
67
|
Measurement,
|
|
68
68
|
Config,
|
|
69
69
|
Container
|
|
70
|
-
) {
|
|
70
|
+
) => {
|
|
71
71
|
"use strict";
|
|
72
72
|
|
|
73
73
|
// shortcut for sap.m.GenericTileScope
|
|
74
|
-
|
|
74
|
+
const GenericTileScope = mobileLibrary.GenericTileScope;
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
const analyticsConstants = {
|
|
77
77
|
PERSONALIZATION: "FLP: Personalization",
|
|
78
78
|
RENAME_GROUP: "FLP: Rename Group",
|
|
79
79
|
MOVE_GROUP: "FLP: Move Group",
|
|
@@ -84,10 +84,10 @@ sap.ui.define([
|
|
|
84
84
|
MOVE_TILE: "FLP: Move Tile"
|
|
85
85
|
};
|
|
86
86
|
|
|
87
|
-
|
|
87
|
+
const aDoables = [];
|
|
88
88
|
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
let oHomepageManagerInstance;
|
|
90
|
+
const oHomepageManager = BaseObject.extend("sap.ushell.components.HomepageManager", {
|
|
91
91
|
metadata: {
|
|
92
92
|
publicMethods: [
|
|
93
93
|
"getModel",
|
|
@@ -111,13 +111,13 @@ sap.ui.define([
|
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
this.oServiceLoadingPromise = Container.getServiceAsync("FlpLaunchPage")
|
|
114
|
-
.then(
|
|
114
|
+
.then((oLaunchPageService) => {
|
|
115
115
|
this.oPageBuilderService = oLaunchPageService;
|
|
116
116
|
// add Remove action for all tiles
|
|
117
117
|
this.oPageBuilderService.registerTileActionsProvider(this._addFLPActionsToTile.bind(this));
|
|
118
118
|
this.oPageOperationAdapter = PersistentPageOperationAdapter.getInstance(oLaunchPageService);
|
|
119
119
|
this.bLinkPersonalizationSupported = this.oPageOperationAdapter.isLinkPersonalizationSupported();
|
|
120
|
-
}
|
|
120
|
+
});
|
|
121
121
|
|
|
122
122
|
// when the core theme changes, it's required to calculate again, which tiles are visible. In case of
|
|
123
123
|
// dynamic tiles, a request should be triggered. In some cases it can happen, that the tile visibility
|
|
@@ -150,24 +150,24 @@ sap.ui.define([
|
|
|
150
150
|
});
|
|
151
151
|
// get 'home' view from the router
|
|
152
152
|
if (this.oRouter) {
|
|
153
|
-
|
|
154
|
-
oTarget.attachDisplay(
|
|
153
|
+
const oTarget = this.oRouter.getTarget("home");
|
|
154
|
+
oTarget.attachDisplay((oEvent) => {
|
|
155
155
|
this.oDashboardView = oEvent.getParameter("view");
|
|
156
|
-
}
|
|
156
|
+
});
|
|
157
157
|
}
|
|
158
158
|
// Workaround:
|
|
159
159
|
// Event hub emits event when we register. It emits value 'false' and without the workaround it would trigger
|
|
160
160
|
// loading of the content again. So we keep the value when we register.
|
|
161
161
|
|
|
162
|
-
|
|
162
|
+
let bEnableTransientMode = oShellConfig.last("/core/home/enableTransientMode");
|
|
163
163
|
aDoables.push(oShellConfig.on("/core/home/enableTransientMode").do(
|
|
164
|
-
|
|
164
|
+
(bNewEnableTransientMode) => {
|
|
165
165
|
if (bEnableTransientMode === bNewEnableTransientMode) {
|
|
166
166
|
return;
|
|
167
167
|
}
|
|
168
168
|
bEnableTransientMode = bNewEnableTransientMode;
|
|
169
169
|
this._changeMode(bNewEnableTransientMode);
|
|
170
|
-
}
|
|
170
|
+
}
|
|
171
171
|
));
|
|
172
172
|
|
|
173
173
|
this.oModel.bindProperty("/tileActionModeActive").attachChange(this._changeLinksScope.bind(this));
|
|
@@ -200,7 +200,7 @@ sap.ui.define([
|
|
|
200
200
|
},
|
|
201
201
|
|
|
202
202
|
isBlindLoading: function () {
|
|
203
|
-
|
|
203
|
+
const homePageGroupDisplay = oShellConfig.last("/core/home/homePageGroupDisplay");
|
|
204
204
|
if ((homePageGroupDisplay === undefined || homePageGroupDisplay === "scroll") && this.bIsScrollModeAccordingKPI) {
|
|
205
205
|
Log.info("isBlindLoading reason IsScrollModeAccordingKPI and IsScrollMode: true");
|
|
206
206
|
return true;
|
|
@@ -213,18 +213,18 @@ sap.ui.define([
|
|
|
213
213
|
},
|
|
214
214
|
|
|
215
215
|
createMoveActionDialog: function (sId) {
|
|
216
|
-
|
|
216
|
+
const oMoveDialog = new SelectDialog(sId, {
|
|
217
217
|
title: oResources.i18n.getText("moveTileDialog_title"),
|
|
218
218
|
rememberSelections: false,
|
|
219
219
|
// search: a search handler is attached by the calling function
|
|
220
220
|
contentWidth: "400px",
|
|
221
221
|
contentHeight: "auto",
|
|
222
222
|
confirm: function (oEvent) {
|
|
223
|
-
|
|
223
|
+
const aContexts = oEvent.getParameter("selectedContexts");
|
|
224
224
|
this.publishMoveActionEvents(aContexts, sId);
|
|
225
225
|
}.bind(this),
|
|
226
226
|
cancel: function () {
|
|
227
|
-
|
|
227
|
+
const oCurrentlyFocusedTile = document.querySelector(".sapUshellTile[tabindex=\"0\"]");
|
|
228
228
|
if (oCurrentlyFocusedTile) {
|
|
229
229
|
oCurrentlyFocusedTile.focus();
|
|
230
230
|
}
|
|
@@ -241,11 +241,11 @@ sap.ui.define([
|
|
|
241
241
|
},
|
|
242
242
|
|
|
243
243
|
publishMoveActionEvents: function (aContexts, sSource) {
|
|
244
|
-
|
|
244
|
+
const oEventBus = Core.getEventBus();
|
|
245
245
|
if (aContexts.length) {
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
246
|
+
const stileType = this.tileType === "link" ? "links" : "tiles";
|
|
247
|
+
const sGroupId = aContexts[0].getObject().groupId;
|
|
248
|
+
const oEventData = {
|
|
249
249
|
sTileId: this.tileUuid,
|
|
250
250
|
sToItems: stileType,
|
|
251
251
|
sFromItems: stileType,
|
|
@@ -256,8 +256,8 @@ sap.ui.define([
|
|
|
256
256
|
};
|
|
257
257
|
|
|
258
258
|
if (Device.system.desktop) {
|
|
259
|
-
sap.ui.require(["sap/ushell/components/ComponentKeysHandler"],
|
|
260
|
-
ComponentKeysHandler.getInstance().then(
|
|
259
|
+
sap.ui.require(["sap/ushell/components/ComponentKeysHandler"], (ComponentKeysHandler) => {
|
|
260
|
+
ComponentKeysHandler.getInstance().then((ComponentKeysHandlerInstance) => {
|
|
261
261
|
oEventData.callBack = ComponentKeysHandlerInstance.callbackSetFocus.bind(ComponentKeysHandlerInstance);
|
|
262
262
|
oEventBus.publish("launchpad", "scrollToGroup", { groupId: sGroupId });
|
|
263
263
|
oEventBus.publish("launchpad", "movetile", oEventData);
|
|
@@ -271,10 +271,10 @@ sap.ui.define([
|
|
|
271
271
|
},
|
|
272
272
|
|
|
273
273
|
_changeLinksScope: function (oEvent) {
|
|
274
|
-
|
|
274
|
+
const that = this;
|
|
275
275
|
if (this.bLinkPersonalizationSupported) {
|
|
276
|
-
|
|
277
|
-
this.oModel.getProperty("/groups").forEach(
|
|
276
|
+
const bIsTileActionModeActive = oEvent.getSource().getValue();
|
|
277
|
+
this.oModel.getProperty("/groups").forEach((oGroup, index) => {
|
|
278
278
|
if (!oGroup.isGroupLocked) {
|
|
279
279
|
that._changeGroupLinksScope(oGroup, bIsTileActionModeActive ? "Actions" : "Display");
|
|
280
280
|
}
|
|
@@ -283,15 +283,15 @@ sap.ui.define([
|
|
|
283
283
|
},
|
|
284
284
|
|
|
285
285
|
_changeGroupLinksScope: function (oGroup, scope) {
|
|
286
|
-
|
|
286
|
+
const that = this;
|
|
287
287
|
|
|
288
|
-
oGroup.links.forEach(
|
|
288
|
+
oGroup.links.forEach((oLink, index) => {
|
|
289
289
|
that._changeLinkScope(oLink.content[0], scope);
|
|
290
290
|
});
|
|
291
291
|
},
|
|
292
292
|
|
|
293
293
|
_changeLinkScope: function (oLink, scope) {
|
|
294
|
-
|
|
294
|
+
let oLinkView;
|
|
295
295
|
if (oLink.getScope) {
|
|
296
296
|
oLinkView = oLink;
|
|
297
297
|
} else if (oLink.getContent) { // hack for demo content
|
|
@@ -305,7 +305,7 @@ sap.ui.define([
|
|
|
305
305
|
},
|
|
306
306
|
|
|
307
307
|
registerEvents: function () {
|
|
308
|
-
|
|
308
|
+
const oEventBus = Core.getEventBus();
|
|
309
309
|
oEventBus.subscribe("launchpad", "addBookmarkTile", this._createBookmark, this);
|
|
310
310
|
oEventBus.subscribe("launchpad", "tabSelected", this.getSegmentTabContentViews, this);
|
|
311
311
|
oEventBus.subscribe("sap.ushell.services.Bookmark", "bookmarkTileAdded", this._addBookmarkToModel, this);
|
|
@@ -327,11 +327,11 @@ sap.ui.define([
|
|
|
327
327
|
},
|
|
328
328
|
|
|
329
329
|
_changeMode: function (bTransientMode) {
|
|
330
|
-
|
|
330
|
+
const aGroups = this.getModel().getProperty("/groups");
|
|
331
331
|
if (bTransientMode) {
|
|
332
332
|
this.oPageOperationAdapter = TransientPageOperationAdapter.getInstance();
|
|
333
333
|
// remove all references to server object
|
|
334
|
-
|
|
334
|
+
const aTransformedGroupModel = this.oPageOperationAdapter.transformGroupModel(aGroups);
|
|
335
335
|
this.getModel().setProperty("/groups", aTransformedGroupModel);
|
|
336
336
|
} else {
|
|
337
337
|
this.oPageOperationAdapter = PersistentPageOperationAdapter.getInstance();
|
|
@@ -343,9 +343,9 @@ sap.ui.define([
|
|
|
343
343
|
},
|
|
344
344
|
|
|
345
345
|
_addFLPActionsToTile: function (oTile) {
|
|
346
|
-
|
|
346
|
+
const aActions = [];
|
|
347
347
|
if (oShellConfig.last("/core/shell/enablePersonalization")) {
|
|
348
|
-
|
|
348
|
+
const bLinkPersonalizationSupportedForTile = this.bLinkPersonalizationSupported
|
|
349
349
|
&& this.oPageOperationAdapter.isLinkPersonalizationSupported(oTile);
|
|
350
350
|
aActions.push(this._getMoveTileAction(oTile));
|
|
351
351
|
|
|
@@ -362,25 +362,25 @@ sap.ui.define([
|
|
|
362
362
|
* @since 1.107.0
|
|
363
363
|
*/
|
|
364
364
|
getPersonalizableGroups: function () {
|
|
365
|
-
|
|
366
|
-
return aGroups.filter(
|
|
365
|
+
const aGroups = this.getModel().getProperty("/groups");
|
|
366
|
+
return aGroups.filter((oGroup) => {
|
|
367
367
|
return !oGroup.isGroupLocked;
|
|
368
368
|
});
|
|
369
369
|
},
|
|
370
370
|
|
|
371
371
|
_getConvertTileAction: function (oTile) {
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
372
|
+
const oEventBus = Core.getEventBus();
|
|
373
|
+
const sTileType = this.oPageOperationAdapter.getTileType(oTile);
|
|
374
|
+
const sKey = ((sTileType === "tile") ? "ConvertToLink" : "ConvertToTile");
|
|
375
375
|
return {
|
|
376
376
|
id: sKey,
|
|
377
377
|
text: oResources.i18n.getText(sKey),
|
|
378
378
|
press: function (oSourceTile) {
|
|
379
|
-
|
|
379
|
+
const oConvertInfo = { tile: oSourceTile };
|
|
380
380
|
|
|
381
381
|
if (Device.system.desktop) {
|
|
382
|
-
sap.ui.require(["sap/ushell/components/ComponentKeysHandler"],
|
|
383
|
-
ComponentKeysHandler.getInstance().then(
|
|
382
|
+
sap.ui.require(["sap/ushell/components/ComponentKeysHandler"], (ComponentKeysHandler) => {
|
|
383
|
+
ComponentKeysHandler.getInstance().then((ComponentKeysHandlerInstance) => {
|
|
384
384
|
oConvertInfo.callBack = ComponentKeysHandlerInstance.callbackSetFocus.bind(ComponentKeysHandlerInstance);
|
|
385
385
|
oEventBus.publish("launchpad", "convertTile", oConvertInfo);
|
|
386
386
|
});
|
|
@@ -393,26 +393,26 @@ sap.ui.define([
|
|
|
393
393
|
},
|
|
394
394
|
|
|
395
395
|
_getMoveTileAction: function (oTile) {
|
|
396
|
-
|
|
396
|
+
const sKey = "moveTile_action";
|
|
397
397
|
return {
|
|
398
398
|
id: sKey,
|
|
399
399
|
text: oResources.i18n.getText(sKey),
|
|
400
400
|
press: function (oPressedTile) {
|
|
401
401
|
this.tileType = this.oPageOperationAdapter.getTileType(oTile);
|
|
402
|
-
|
|
402
|
+
const bIsTile = (this.tileType === "tile");
|
|
403
403
|
this.tileUuid = this.getModelTileById(this.oPageOperationAdapter.getTileId(oTile), (bIsTile ? "tiles" : "links")).uuid;
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
404
|
+
const sGroupId = oPressedTile.getParent().getProperty("groupId");
|
|
405
|
+
const oSameGroupFilter = new Filter("groupId", FilterOperator.NE, sGroupId);
|
|
406
|
+
const fnSearchHandler = function (oEvent) {
|
|
407
|
+
const sValue = oEvent.getParameter("value");
|
|
408
|
+
const oFilter = new Filter("title", FilterOperator.Contains, sValue);
|
|
409
|
+
const oBinding = oEvent.getSource().getBinding("items");
|
|
410
410
|
oBinding.filter([oFilter, this.oGroupNotLockedFilter, oSameGroupFilter]);
|
|
411
411
|
}.bind(this);
|
|
412
412
|
|
|
413
|
-
|
|
413
|
+
let oMoveDialog = (bIsTile ? this.moveTileDialog : this.moveLinkDialog);
|
|
414
414
|
if (!oMoveDialog) {
|
|
415
|
-
oMoveDialog = this.createMoveActionDialog(
|
|
415
|
+
oMoveDialog = this.createMoveActionDialog(`move${this.tileType}Dialog`);
|
|
416
416
|
oMoveDialog.setModel(this.oModel);
|
|
417
417
|
if (bIsTile) {
|
|
418
418
|
this.moveTileDialog = oMoveDialog;
|
|
@@ -434,11 +434,11 @@ sap.ui.define([
|
|
|
434
434
|
if (!oSourceTile) {
|
|
435
435
|
return;
|
|
436
436
|
}
|
|
437
|
-
|
|
437
|
+
const pfx = ["webkit", ""];
|
|
438
438
|
function prefixedEvent (element, type) {
|
|
439
|
-
for (
|
|
439
|
+
for (let i = 0; i < pfx.length; i++) {
|
|
440
440
|
type = type.toLowerCase();
|
|
441
|
-
oSourceTile.attachBrowserEvent(pfx[i] + type,
|
|
441
|
+
oSourceTile.attachBrowserEvent(pfx[i] + type, (oEvent) => {
|
|
442
442
|
if (oEvent.originalEvent && oEvent.originalEvent.animationName === "sapUshellTileEntranceAnimation") {
|
|
443
443
|
oSourceTile.removeStyleClass("sapUshellTileEntrance");
|
|
444
444
|
}
|
|
@@ -450,7 +450,7 @@ sap.ui.define([
|
|
|
450
450
|
},
|
|
451
451
|
|
|
452
452
|
destroy: function () {
|
|
453
|
-
|
|
453
|
+
const oEventBus = Core.getEventBus();
|
|
454
454
|
oEventBus.unsubscribe("launchpad", "addBookmarkTile", this._createBookmark, this);
|
|
455
455
|
oEventBus.unsubscribe("launchpad", "loadDashboardGroups", this.loadPersonalizedGroups, this);
|
|
456
456
|
oEventBus.unsubscribe("launchpad", "createGroupAt", this._createGroupAt, this);
|
|
@@ -465,7 +465,7 @@ sap.ui.define([
|
|
|
465
465
|
oEventBus.unsubscribe("launchpad", "dashboardModelContentLoaded", this._modelLoaded, this);
|
|
466
466
|
Theming.detachApplied(oUtils.handleTilesVisibility);
|
|
467
467
|
|
|
468
|
-
aDoables.forEach(
|
|
468
|
+
aDoables.forEach((oDoable) => {
|
|
469
469
|
oDoable.off();
|
|
470
470
|
});
|
|
471
471
|
|
|
@@ -481,18 +481,18 @@ sap.ui.define([
|
|
|
481
481
|
},
|
|
482
482
|
|
|
483
483
|
_createBookmark: function (sChannelId, sEventId, oData) {
|
|
484
|
-
|
|
484
|
+
const tileGroup = oData.group ? oData.group.object : "";
|
|
485
485
|
|
|
486
486
|
delete oData.group;
|
|
487
487
|
|
|
488
488
|
function addBookmark () {
|
|
489
|
-
Container.getServiceAsync("BookmarkV2").then(
|
|
489
|
+
Container.getServiceAsync("BookmarkV2").then((oBookmarkService) => {
|
|
490
490
|
oBookmarkService.addBookmark(oData, tileGroup)
|
|
491
|
-
.then(
|
|
491
|
+
.then(() => {
|
|
492
492
|
// the tile is added to our model in "_addBookmarkToModel" here we just show the success toast.
|
|
493
493
|
oMessagingHelper.showLocalizedMessage("tile_created_msg");
|
|
494
494
|
})
|
|
495
|
-
.catch(
|
|
495
|
+
.catch((sMsg) => {
|
|
496
496
|
Log.error(
|
|
497
497
|
"Failed to add bookmark",
|
|
498
498
|
sMsg,
|
|
@@ -501,7 +501,7 @@ sap.ui.define([
|
|
|
501
501
|
oMessagingHelper.showLocalizedError("fail_to_add_tile_msg");
|
|
502
502
|
})
|
|
503
503
|
.finally(this._checkRequestQueue.bind(this));
|
|
504
|
-
}
|
|
504
|
+
});
|
|
505
505
|
}
|
|
506
506
|
|
|
507
507
|
this._addRequest(addBookmark.bind(this));
|
|
@@ -513,10 +513,14 @@ sap.ui.define([
|
|
|
513
513
|
* This function will be called also if an application used the bookmark service directly to add a bookmark.
|
|
514
514
|
* the bookmark service publishes an event so that we will be able to update the model.
|
|
515
515
|
* This method doesn't display a success toast since the application should show success or failure messages
|
|
516
|
+
*
|
|
517
|
+
* @param {string} sChannelId the channel id.
|
|
518
|
+
* @param {string} sEventId the event id.
|
|
519
|
+
* @param {object} oData the event data.
|
|
516
520
|
*/
|
|
517
521
|
_addBookmarkToModel: function (sChannelId, sEventId, oData) {
|
|
518
|
-
|
|
519
|
-
|
|
522
|
+
const oTile = oData.tile;
|
|
523
|
+
let oGroup = oData.group;
|
|
520
524
|
|
|
521
525
|
if (!oData || !oTile) {
|
|
522
526
|
this.bIsGroupsModelDirty = true;
|
|
@@ -528,8 +532,8 @@ sap.ui.define([
|
|
|
528
532
|
|
|
529
533
|
// If no group was specified then the target group is the default one.
|
|
530
534
|
if (!oGroup) {
|
|
531
|
-
|
|
532
|
-
for (
|
|
535
|
+
const aGroups = this.getModel().getProperty("/groups");
|
|
536
|
+
for (let iIndex = 0; iIndex < aGroups.length; iIndex++) {
|
|
533
537
|
if (aGroups[iIndex].isDefaultGroup === true) {
|
|
534
538
|
oGroup = aGroups[iIndex].object;
|
|
535
539
|
break;
|
|
@@ -539,36 +543,36 @@ sap.ui.define([
|
|
|
539
543
|
|
|
540
544
|
// The create bookmark popup should not contain the locked groups anyway,
|
|
541
545
|
// so this call not suppose to happen for a target locked group (we may as well always send false)
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
546
|
+
const indexOfGroup = this._getIndexOfGroupByObject(oGroup);
|
|
547
|
+
const targetGroup = this.oModel.getProperty(`/groups/${indexOfGroup}`);
|
|
548
|
+
const newTile = this.oPageOperationAdapter.getPreparedTileModel(oTile, targetGroup.isGroupLocked);
|
|
545
549
|
this.getTileView(newTile);
|
|
546
550
|
|
|
547
551
|
// The function calcVisibilityModes requires the group from the model
|
|
548
552
|
targetGroup.tiles.push(newTile);
|
|
549
553
|
targetGroup.visibilityModes = oUtils.calcVisibilityModes(targetGroup, true);
|
|
550
|
-
|
|
554
|
+
const iNumTiles = targetGroup.tiles.length;
|
|
551
555
|
this._updateModelWithTileView(indexOfGroup, iNumTiles);
|
|
552
556
|
|
|
553
|
-
this.oModel.setProperty(
|
|
557
|
+
this.oModel.setProperty(`/groups/${indexOfGroup}`, targetGroup);
|
|
554
558
|
},
|
|
555
559
|
|
|
556
560
|
_refreshGroupInModel: function (sChannelId, sEventId, sGroupId) {
|
|
557
|
-
|
|
561
|
+
const that = this;
|
|
558
562
|
|
|
559
563
|
this.oPageOperationAdapter.refreshGroup(sGroupId).then(
|
|
560
|
-
|
|
564
|
+
(oGroupModel) => {
|
|
561
565
|
if (!oGroupModel) {
|
|
562
566
|
return;
|
|
563
567
|
}
|
|
564
|
-
|
|
568
|
+
const indexOfGroup = that._getIndexOfGroupByObject(oGroupModel.object);
|
|
565
569
|
|
|
566
570
|
oGroupModel.visibilityModes = oUtils.calcVisibilityModes(oGroupModel.object, true);
|
|
567
|
-
that.oModel.setProperty(
|
|
571
|
+
that.oModel.setProperty(`/groups/${indexOfGroup}`, oGroupModel);
|
|
568
572
|
|
|
569
573
|
// The old group tiles are lost, get the tile views
|
|
570
574
|
if (oGroupModel.tiles) {
|
|
571
|
-
oGroupModel.tiles.forEach(
|
|
575
|
+
oGroupModel.tiles.forEach((tile) => {
|
|
572
576
|
that.getTileView(tile);
|
|
573
577
|
});
|
|
574
578
|
}
|
|
@@ -582,8 +586,8 @@ sap.ui.define([
|
|
|
582
586
|
|
|
583
587
|
_handleAfterSortable: function (fFunc) {
|
|
584
588
|
return function () {
|
|
585
|
-
|
|
586
|
-
this.oSortableDeferred.done(
|
|
589
|
+
const outerArgs = Array.prototype.slice.call(arguments);
|
|
590
|
+
this.oSortableDeferred.done(() => {
|
|
587
591
|
fFunc.apply(null, outerArgs);
|
|
588
592
|
});
|
|
589
593
|
}.bind(this);
|
|
@@ -593,13 +597,17 @@ sap.ui.define([
|
|
|
593
597
|
* oData should have the following parameters:
|
|
594
598
|
* title
|
|
595
599
|
* location
|
|
600
|
+
*
|
|
601
|
+
* @param {string} sChannelId the channel id.
|
|
602
|
+
* @param {string} sEventId the event id.
|
|
603
|
+
* @param {object} oData the event data.
|
|
596
604
|
*/
|
|
597
605
|
_createGroupAt: function (sChannelId, sEventId, oData) {
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
606
|
+
const newGroupIndex = parseInt(oData.location, 10);
|
|
607
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
608
|
+
const oGroup = this.oPageOperationAdapter.getPreparedGroupModel(null, false, newGroupIndex === aGroups.length, oData);
|
|
609
|
+
const oModel = this.oModel;
|
|
610
|
+
let i;
|
|
603
611
|
|
|
604
612
|
oGroup.index = newGroupIndex;
|
|
605
613
|
|
|
@@ -616,7 +624,7 @@ sap.ui.define([
|
|
|
616
624
|
},
|
|
617
625
|
|
|
618
626
|
_getIndexOfGroupByObject: function (oServerGroupObject) {
|
|
619
|
-
|
|
627
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
620
628
|
return this.oPageOperationAdapter.getIndexOfGroup(aGroups, oServerGroupObject);
|
|
621
629
|
},
|
|
622
630
|
|
|
@@ -625,14 +633,14 @@ sap.ui.define([
|
|
|
625
633
|
},
|
|
626
634
|
|
|
627
635
|
addTileToGroup: function (sGroupPath, oTile) {
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
636
|
+
const sTilePath = `${sGroupPath}/tiles`;
|
|
637
|
+
const oGroup = this.oModel.getProperty(sGroupPath);
|
|
638
|
+
const iNumTiles = this.oModel.getProperty(sTilePath).length;
|
|
631
639
|
|
|
632
640
|
// Locked groups cannot be added with tiles,
|
|
633
641
|
// so the target group will not be locked, however just for safety we will check the target group locking state
|
|
634
|
-
|
|
635
|
-
|
|
642
|
+
const isGroupLocked = this.oModel.getProperty(`${sGroupPath}/isGroupLocked`);
|
|
643
|
+
const personalization = this.oModel.getProperty("/personalization");
|
|
636
644
|
|
|
637
645
|
oGroup.tiles[iNumTiles] = this.oPageOperationAdapter.getPreparedTileModel(oTile, isGroupLocked);
|
|
638
646
|
this.getTileView(oGroup.tiles[iNumTiles]);
|
|
@@ -648,9 +656,9 @@ sap.ui.define([
|
|
|
648
656
|
* @param {string[]} aCatalogTileIds Array of catalog tile ids
|
|
649
657
|
*/
|
|
650
658
|
addTilesToGroupByCatalogTileId: function (oGroup, aCatalogTileIds) {
|
|
651
|
-
|
|
659
|
+
const oGroupContext = oGroup.getBindingContext();
|
|
652
660
|
|
|
653
|
-
for (
|
|
661
|
+
for (let i = 0; i < aCatalogTileIds.length; i++) {
|
|
654
662
|
this.addTileToGroupByCatalogTileId(oGroupContext.sPath, aCatalogTileIds[i]);
|
|
655
663
|
}
|
|
656
664
|
},
|
|
@@ -660,34 +668,34 @@ sap.ui.define([
|
|
|
660
668
|
return;
|
|
661
669
|
}
|
|
662
670
|
|
|
663
|
-
|
|
671
|
+
const oTileModel = this.oPageOperationAdapter.getTileModelByCatalogTileId(sCatalogTileId);
|
|
664
672
|
|
|
665
673
|
if (!oTileModel) {
|
|
666
674
|
return;
|
|
667
675
|
}
|
|
668
676
|
this.oDashboardLoadingManager.setTileResolved(oTileModel);
|
|
669
|
-
|
|
670
|
-
|
|
677
|
+
const iNumTiles = this.oModel.getProperty(`${sGroupPath}/tiles`).length;
|
|
678
|
+
const oGroupModel = this.oModel.getProperty(sGroupPath);
|
|
671
679
|
oGroupModel.tiles[iNumTiles] = oTileModel;
|
|
672
680
|
this.oModel.setProperty(sGroupPath, oGroupModel);
|
|
673
681
|
},
|
|
674
682
|
|
|
675
683
|
_getPathOfTile: function (sTileId) {
|
|
676
|
-
|
|
684
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
677
685
|
|
|
678
|
-
for (
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
686
|
+
for (let nGroupIndex = 0; nGroupIndex < aGroups.length; ++nGroupIndex) {
|
|
687
|
+
const oGroup = aGroups[nGroupIndex];
|
|
688
|
+
const aTiles = oGroup.tiles;
|
|
689
|
+
const aLinks = oGroup.links;
|
|
682
690
|
|
|
683
|
-
for (
|
|
691
|
+
for (let nTileIndex = 0; nTileIndex < aTiles.length; ++nTileIndex) {
|
|
684
692
|
if (aTiles[nTileIndex].uuid === sTileId) {
|
|
685
|
-
return
|
|
693
|
+
return `/groups/${nGroupIndex}/tiles/${nTileIndex}`;
|
|
686
694
|
}
|
|
687
695
|
}
|
|
688
|
-
for (
|
|
696
|
+
for (let nLinkIndex = 0; nLinkIndex < aLinks.length; ++nLinkIndex) {
|
|
689
697
|
if (aLinks[nLinkIndex].uuid === sTileId) {
|
|
690
|
-
return
|
|
698
|
+
return `/groups/${nGroupIndex}/links/${nLinkIndex}`;
|
|
691
699
|
}
|
|
692
700
|
}
|
|
693
701
|
}
|
|
@@ -698,7 +706,7 @@ sap.ui.define([
|
|
|
698
706
|
// see http://stackoverflow.com/questions/5306680/move-an-array-element-from-one-array-position-to-another
|
|
699
707
|
_moveInArray: function (aArray, nFromIndex, nToIndex) {
|
|
700
708
|
if (nToIndex >= aArray.length) {
|
|
701
|
-
|
|
709
|
+
let k = nToIndex - aArray.length;
|
|
702
710
|
while ((k--) + 1) {
|
|
703
711
|
aArray.push(undefined);
|
|
704
712
|
}
|
|
@@ -707,7 +715,7 @@ sap.ui.define([
|
|
|
707
715
|
},
|
|
708
716
|
|
|
709
717
|
_updateGroupIndices: function (aArray) {
|
|
710
|
-
for (
|
|
718
|
+
for (let k = 0; k < aArray.length; k++) {
|
|
711
719
|
aArray[k].index = k;
|
|
712
720
|
}
|
|
713
721
|
},
|
|
@@ -715,28 +723,32 @@ sap.ui.define([
|
|
|
715
723
|
/**
|
|
716
724
|
* oData should have the following parameters
|
|
717
725
|
* groupId
|
|
726
|
+
*
|
|
727
|
+
* @param {string} sChannelId the channel id.
|
|
728
|
+
* @param {string} sEventId the event id.
|
|
729
|
+
* @param {object} oData the event data.
|
|
718
730
|
*/
|
|
719
731
|
_deleteGroup: function (sChannelId, sEventId, oData) {
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
oDestroyHelper.destroyFLPAggregationModel(oModel.getProperty(
|
|
732
|
+
const oModel = this.oModel;
|
|
733
|
+
const sGroupId = oData.groupId;
|
|
734
|
+
const aGroups = oModel.getProperty("/groups");
|
|
735
|
+
const nGroupIndex = oGroupsHelper.getIndexOfGroup(aGroups, sGroupId);
|
|
736
|
+
const bIsLast = aGroups.length - 1 === nGroupIndex;
|
|
737
|
+
|
|
738
|
+
const nextSelectedItemIndex = bIsLast ? nGroupIndex - 1 : nGroupIndex;
|
|
739
|
+
oDestroyHelper.destroyFLPAggregationModel(oModel.getProperty(`/groups/${nGroupIndex}`));
|
|
728
740
|
// remove deleted group from the model
|
|
729
|
-
|
|
741
|
+
const oDeletedGroupModel = aGroups.splice(nGroupIndex, 1)[0];
|
|
730
742
|
|
|
731
743
|
if (bIsLast) {
|
|
732
|
-
oModel.setProperty(
|
|
744
|
+
oModel.setProperty(`/groups/${nextSelectedItemIndex}/isLastGroup`, bIsLast);
|
|
733
745
|
}
|
|
734
746
|
|
|
735
747
|
oModel.setProperty("/groups", aGroups);
|
|
736
748
|
this._updateGroupIndices(aGroups);
|
|
737
749
|
|
|
738
750
|
if (nextSelectedItemIndex >= 0) {
|
|
739
|
-
window.setTimeout(
|
|
751
|
+
window.setTimeout(() => {
|
|
740
752
|
Core.getEventBus().publish("launchpad", "scrollToGroup", {
|
|
741
753
|
groupId: oModel.getProperty("/groups")[nextSelectedItemIndex].groupId
|
|
742
754
|
});
|
|
@@ -745,13 +757,13 @@ sap.ui.define([
|
|
|
745
757
|
|
|
746
758
|
function deleteGroup () {
|
|
747
759
|
this.oPageOperationAdapter.deleteGroup(oDeletedGroupModel).then(
|
|
748
|
-
|
|
760
|
+
() => {
|
|
749
761
|
oMessagingHelper.showLocalizedMessage("group_deleted_msg", [oDeletedGroupModel.title]);
|
|
750
762
|
this._checkRequestQueue();
|
|
751
|
-
}
|
|
752
|
-
|
|
763
|
+
},
|
|
764
|
+
() => {
|
|
753
765
|
this._resetGroupsOnFailure("fail_to_delete_group_msg");
|
|
754
|
-
}
|
|
766
|
+
}
|
|
755
767
|
);
|
|
756
768
|
}
|
|
757
769
|
|
|
@@ -761,31 +773,35 @@ sap.ui.define([
|
|
|
761
773
|
/**
|
|
762
774
|
* oData should have the following parameters
|
|
763
775
|
* groupId
|
|
776
|
+
*
|
|
777
|
+
* @param {string} sChannelId the channel id.
|
|
778
|
+
* @param {string} sEventId the event id.
|
|
779
|
+
* @param {object} oData the event data.
|
|
764
780
|
*/
|
|
765
781
|
_resetGroup: function (sChannelId, sEventId, oData) {
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
782
|
+
const that = this;
|
|
783
|
+
const sGroupId = oData.groupId;
|
|
784
|
+
const oModel = this.oModel;
|
|
785
|
+
const aGroups = oModel.getProperty("/groups");
|
|
786
|
+
const nGroupIndex = oGroupsHelper.getIndexOfGroup(aGroups, sGroupId);
|
|
787
|
+
const bDefaultGroup = that.oModel.getProperty("/groups/indexOfDefaultGroup") === nGroupIndex;
|
|
788
|
+
const oGroupModel = oModel.getProperty(`/groups/${nGroupIndex}`);
|
|
773
789
|
|
|
774
|
-
oModel.setProperty(
|
|
790
|
+
oModel.setProperty(`/groups/${nGroupIndex}/sortable`, false);
|
|
775
791
|
|
|
776
792
|
function resetGroup () {
|
|
777
793
|
that.oPageOperationAdapter.resetGroup(oGroupModel, bDefaultGroup).then(
|
|
778
|
-
|
|
779
|
-
that._handleAfterSortable(
|
|
780
|
-
|
|
781
|
-
|
|
794
|
+
(oResetedObject) => {
|
|
795
|
+
that._handleAfterSortable((sGroupId, oOldGroupModel, oResetedGroupModel) => {
|
|
796
|
+
const aGroups = that.oModel.getProperty("/groups");
|
|
797
|
+
const nGroupIndex = oGroupsHelper.getIndexOfGroup(aGroups, sGroupId);
|
|
782
798
|
|
|
783
799
|
that._loadGroup(nGroupIndex, oResetedGroupModel || oOldGroupModel);
|
|
784
800
|
oMessagingHelper.showLocalizedMessage("group_reset_msg", [oOldGroupModel.title]);
|
|
785
|
-
that.oModel.setProperty(
|
|
801
|
+
that.oModel.setProperty(`/groups/${nGroupIndex}/sortable`, true);
|
|
786
802
|
|
|
787
|
-
|
|
788
|
-
|
|
803
|
+
const oGroupControl = Core.byId("dashboardGroups").getGroupControlByGroupId(sGroupId);
|
|
804
|
+
const oLinks = oGroupControl.getBindingContext().getObject().links;
|
|
789
805
|
|
|
790
806
|
if (oLinks && oLinks.length && !oGroupControl.getIsGroupLocked()) {
|
|
791
807
|
that._changeGroupLinksScope(
|
|
@@ -802,7 +818,7 @@ sap.ui.define([
|
|
|
802
818
|
}
|
|
803
819
|
})(sGroupId, oGroupModel, oResetedObject);
|
|
804
820
|
that._checkRequestQueue();
|
|
805
|
-
},
|
|
821
|
+
}, () => {
|
|
806
822
|
that._resetGroupsOnFailure("fail_to_reset_group_msg");
|
|
807
823
|
}
|
|
808
824
|
);
|
|
@@ -814,6 +830,10 @@ sap.ui.define([
|
|
|
814
830
|
* oData should have the following parameters
|
|
815
831
|
* fromIndex
|
|
816
832
|
* toIndex
|
|
833
|
+
*
|
|
834
|
+
* @param {string} sChannelId the channel id.
|
|
835
|
+
* @param {string} sEventId the event id.
|
|
836
|
+
* @param {object} oData the event data.
|
|
817
837
|
*/
|
|
818
838
|
_moveGroup: function (sChannelId, sEventId, oData) {
|
|
819
839
|
if (isNaN(oData.fromIndex)) {
|
|
@@ -821,12 +841,12 @@ sap.ui.define([
|
|
|
821
841
|
return;
|
|
822
842
|
}
|
|
823
843
|
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
844
|
+
let iFromIndex = oData.fromIndex;
|
|
845
|
+
let iToIndex = oData.toIndex;
|
|
846
|
+
const oModel = this.oModel;
|
|
847
|
+
let aGroups = oModel.getProperty("/groups");
|
|
848
|
+
const bActionMode = oModel.getProperty("/tileActionModeActive");
|
|
849
|
+
const that = this;
|
|
830
850
|
|
|
831
851
|
// Fix the indices to support hidden groups
|
|
832
852
|
if (!bActionMode) {
|
|
@@ -834,32 +854,32 @@ sap.ui.define([
|
|
|
834
854
|
}
|
|
835
855
|
|
|
836
856
|
// Move var definition after fixing the from index.
|
|
837
|
-
|
|
838
|
-
|
|
857
|
+
const oGroup = aGroups[iFromIndex];
|
|
858
|
+
const sGroupId = oGroup.groupId;
|
|
839
859
|
// Fix the to index accordingly
|
|
840
860
|
if (!bActionMode) {
|
|
841
861
|
iToIndex = this._adjustToGroupIndex(iToIndex, aGroups, sGroupId);
|
|
842
862
|
}
|
|
843
863
|
|
|
844
|
-
|
|
864
|
+
const oDestinationGroup = aGroups[iToIndex];
|
|
845
865
|
this._moveInArray(aGroups, iFromIndex, iToIndex);
|
|
846
866
|
this._updateGroupIndices(aGroups);
|
|
847
|
-
for (
|
|
867
|
+
for (let i = 0; i < aGroups.length - 1; i++) {
|
|
848
868
|
aGroups[i].isLastGroup = false;
|
|
849
869
|
}
|
|
850
870
|
aGroups[aGroups.length - 1].isLastGroup = true;
|
|
851
871
|
oModel.setProperty("/groups", aGroups);
|
|
852
872
|
|
|
853
873
|
function moveGroup () {
|
|
854
|
-
aGroups = oModel.getProperty("/groups"); //Update aGroups. Can be change before callback
|
|
855
|
-
|
|
874
|
+
aGroups = oModel.getProperty("/groups"); // Update aGroups. Can be change before callback
|
|
875
|
+
const oGroup = oModel.getProperty(oGroupsHelper.getModelPathOfGroup(aGroups, sGroupId));
|
|
856
876
|
if (!oGroup.object) {
|
|
857
877
|
return;
|
|
858
878
|
}
|
|
859
879
|
|
|
860
880
|
that.oPageOperationAdapter.getOriginalGroupIndex(oDestinationGroup, aGroups).then(
|
|
861
|
-
|
|
862
|
-
|
|
881
|
+
(iIndexTo) => {
|
|
882
|
+
const oIndicesInModel = {
|
|
863
883
|
iFromIndex: iFromIndex,
|
|
864
884
|
iToIndex: iToIndex
|
|
865
885
|
};
|
|
@@ -867,7 +887,7 @@ sap.ui.define([
|
|
|
867
887
|
}
|
|
868
888
|
).then(
|
|
869
889
|
that._checkRequestQueue.bind(that),
|
|
870
|
-
|
|
890
|
+
() => {
|
|
871
891
|
that._resetGroupsOnFailure("fail_to_move_group_msg");
|
|
872
892
|
}
|
|
873
893
|
);
|
|
@@ -877,14 +897,18 @@ sap.ui.define([
|
|
|
877
897
|
},
|
|
878
898
|
|
|
879
899
|
/**
|
|
880
|
-
*
|
|
881
|
-
*
|
|
882
|
-
*
|
|
900
|
+
* The function returns the new index to be used in the model - since there might be hidden groups,
|
|
901
|
+
* that should be taken in account
|
|
902
|
+
*
|
|
903
|
+
* @param {int} toIndex The index in the UI of the required group new index. (it is not including the group itself)
|
|
904
|
+
* @param {object[]} groups The list of groups in the model. (including hidden and visible groups)
|
|
905
|
+
* @param {int} groupId The group id.
|
|
906
|
+
* @returns {int} the new index to be used in the model.
|
|
883
907
|
*/
|
|
884
908
|
_adjustToGroupIndex: function (toIndex, groups, groupId) {
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
909
|
+
let visibleCounter = 0;
|
|
910
|
+
let bIsGroupIncluded = false;
|
|
911
|
+
let i;
|
|
888
912
|
// In order to get the new index, count all groups (visible+hidden) up to the new index received from the UI.
|
|
889
913
|
for (i = 0; i < groups.length && visibleCounter < toIndex; i++) {
|
|
890
914
|
if (groups[i].isGroupVisible) {
|
|
@@ -902,8 +926,8 @@ sap.ui.define([
|
|
|
902
926
|
},
|
|
903
927
|
|
|
904
928
|
_adjustFromGroupIndex: function (index, groups) {
|
|
905
|
-
|
|
906
|
-
for (
|
|
929
|
+
let visibleGroupsCounter = 0;
|
|
930
|
+
for (let i = 0; i < groups.length; i++) {
|
|
907
931
|
if (groups[i].isGroupVisible) {
|
|
908
932
|
visibleGroupsCounter++;
|
|
909
933
|
}
|
|
@@ -919,47 +943,51 @@ sap.ui.define([
|
|
|
919
943
|
* oData should have the following parameters
|
|
920
944
|
* groupId
|
|
921
945
|
* newTitle
|
|
946
|
+
*
|
|
947
|
+
* @param {string} sChannelId the channel id.
|
|
948
|
+
* @param {string} sEventId the event id.
|
|
949
|
+
* @param {object} oData the event data.
|
|
922
950
|
*/
|
|
923
951
|
_changeGroupTitle: function (sChannelId, sEventId, oData) {
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
952
|
+
const that = this;
|
|
953
|
+
const sNewTitle = oData.newTitle;
|
|
954
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
955
|
+
const sModelGroupId = oData.groupId;
|
|
956
|
+
const nGroupIndex = oGroupsHelper.getIndexOfGroup(aGroups, sModelGroupId);
|
|
957
|
+
const bDefaultGroup = that.oModel.getProperty("/groups/indexOfDefaultGroup") === nGroupIndex;
|
|
958
|
+
const oGroupModel = this.oModel.getProperty(`/groups/${nGroupIndex}`);
|
|
959
|
+
const sOldTitle = oGroupModel.title;
|
|
932
960
|
|
|
933
|
-
this.oModel.setProperty(
|
|
961
|
+
this.oModel.setProperty(`/groups/${nGroupIndex}/title`, sNewTitle);
|
|
934
962
|
|
|
935
963
|
function addGroup () {
|
|
936
|
-
|
|
964
|
+
let oAddGroupPromise;
|
|
937
965
|
if (oGroupModel.isLastGroup) {
|
|
938
966
|
oAddGroupPromise = that.oPageOperationAdapter.addGroupAt(oGroupModel, undefined, bDefaultGroup);
|
|
939
967
|
} else {
|
|
940
|
-
|
|
968
|
+
const oNextGroup = that.oModel.getProperty("/groups")[nGroupIndex + 1];
|
|
941
969
|
// groups can be sorted in PageAdapter and have different order compare to the model
|
|
942
970
|
// For this reason we need firstly get the correct index of the next group and then add new group before it.
|
|
943
971
|
oAddGroupPromise = that.oPageOperationAdapter.getOriginalGroupIndex(oNextGroup, aGroups).then(
|
|
944
|
-
|
|
972
|
+
(iIndex) => {
|
|
945
973
|
return that.oPageOperationAdapter.addGroupAt(oGroupModel, iIndex, bDefaultGroup);
|
|
946
974
|
}
|
|
947
975
|
);
|
|
948
976
|
}
|
|
949
977
|
|
|
950
978
|
oAddGroupPromise.then(
|
|
951
|
-
|
|
979
|
+
(oNewPreparedGroupModel) => {
|
|
952
980
|
// Theoretically can be case that the server is slow and user start the dnd tiles.
|
|
953
|
-
that._handleAfterSortable(
|
|
981
|
+
that._handleAfterSortable((sGroupId, oNewGroupModel) => {
|
|
954
982
|
// group model can be changed
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
983
|
+
const aUpdatedGroups = that.oModel.getProperty("/groups");
|
|
984
|
+
const iGroupIndex = oGroupsHelper.getIndexOfGroup(aUpdatedGroups, sGroupId);
|
|
985
|
+
const oOldGroupModel = aUpdatedGroups[iGroupIndex];
|
|
958
986
|
|
|
959
987
|
// The group might be already further personalized therefore update all properties
|
|
960
988
|
// but the tiles and the links. Otherwise the tiles which were already added to model get removed
|
|
961
989
|
// BCP: 2030578465
|
|
962
|
-
Object.keys(oNewGroupModel).forEach(
|
|
990
|
+
Object.keys(oNewGroupModel).forEach((sKey) => {
|
|
963
991
|
if (sKey === "tiles" || sKey === "links") {
|
|
964
992
|
return;
|
|
965
993
|
}
|
|
@@ -969,7 +997,7 @@ sap.ui.define([
|
|
|
969
997
|
|
|
970
998
|
that._checkRequestQueue();
|
|
971
999
|
})(sModelGroupId, oNewPreparedGroupModel);
|
|
972
|
-
},
|
|
1000
|
+
}, () => {
|
|
973
1001
|
that._resetGroupsOnFailure("fail_to_create_group_msg");
|
|
974
1002
|
}
|
|
975
1003
|
);
|
|
@@ -977,9 +1005,9 @@ sap.ui.define([
|
|
|
977
1005
|
|
|
978
1006
|
function renameGroup () {
|
|
979
1007
|
this.oPageOperationAdapter.renameGroup(oGroupModel, sNewTitle, sOldTitle).then(
|
|
980
|
-
|
|
1008
|
+
() => {
|
|
981
1009
|
that._checkRequestQueue();
|
|
982
|
-
},
|
|
1010
|
+
}, () => {
|
|
983
1011
|
that._resetGroupsOnFailure("fail_to_rename_group_msg");
|
|
984
1012
|
}
|
|
985
1013
|
);
|
|
@@ -1004,9 +1032,9 @@ sap.ui.define([
|
|
|
1004
1032
|
* @returns {object} The group context
|
|
1005
1033
|
*/
|
|
1006
1034
|
addGroupToModel: function (oGroup) {
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1035
|
+
const oGroupModel = this.oPageOperationAdapter.getPreparedGroupModel(oGroup, false, true, { isRendered: true });
|
|
1036
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
1037
|
+
const nGroupIndex = aGroups.length; // push new group at the end of list
|
|
1010
1038
|
|
|
1011
1039
|
if (nGroupIndex > 0) {
|
|
1012
1040
|
aGroups[nGroupIndex - 1].isLastGroup = false;
|
|
@@ -1015,7 +1043,7 @@ sap.ui.define([
|
|
|
1015
1043
|
aGroups.push(oGroupModel);
|
|
1016
1044
|
this.oModel.setProperty("/groups/", aGroups);
|
|
1017
1045
|
|
|
1018
|
-
|
|
1046
|
+
const oContextGroup = new Context(this.oModel, `/groups/${nGroupIndex}`);
|
|
1019
1047
|
return oContextGroup;
|
|
1020
1048
|
},
|
|
1021
1049
|
|
|
@@ -1024,11 +1052,15 @@ sap.ui.define([
|
|
|
1024
1052
|
* oData should have the following parameters
|
|
1025
1053
|
* tileId
|
|
1026
1054
|
* groupId
|
|
1055
|
+
*
|
|
1056
|
+
* @param {string} sChannelId the channel id.
|
|
1057
|
+
* @param {string} sEventId the event id.
|
|
1058
|
+
* @param {object} oData the event data.
|
|
1027
1059
|
*/
|
|
1028
1060
|
_deleteTile: function (sChannelId, sEventId, oData) {
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1061
|
+
const sTileId = oData.tileId;
|
|
1062
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
1063
|
+
const sItems = oData.items || "tiles";
|
|
1032
1064
|
|
|
1033
1065
|
function deleteTile (group, tileModel) {
|
|
1034
1066
|
this.oPageOperationAdapter.removeTile(group, tileModel)
|
|
@@ -1045,9 +1077,9 @@ sap.ui.define([
|
|
|
1045
1077
|
* @param {string} tileType determines the aggregation, the tile was in (tiles or links)
|
|
1046
1078
|
*/
|
|
1047
1079
|
function focusNextTile (tileIndex, group, tileType) {
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1080
|
+
const oDashboardGroups = Core.byId("dashboardGroups");
|
|
1081
|
+
const oGroupControl = oDashboardGroups.getGroupControlByGroupId(group.groupId);
|
|
1082
|
+
let oNextTile;
|
|
1051
1083
|
|
|
1052
1084
|
if (tileType === "tiles") {
|
|
1053
1085
|
if (tileIndex + 1 === group[tileType].length) {
|
|
@@ -1055,7 +1087,7 @@ sap.ui.define([
|
|
|
1055
1087
|
}
|
|
1056
1088
|
// the tiles aggregation already behaves correctly in all other cases.
|
|
1057
1089
|
} else {
|
|
1058
|
-
|
|
1090
|
+
const aLinks = oGroupControl.getLinks();
|
|
1059
1091
|
|
|
1060
1092
|
if (tileIndex + 1 === aLinks.length) {
|
|
1061
1093
|
if (aLinks.length === 1) {
|
|
@@ -1068,29 +1100,29 @@ sap.ui.define([
|
|
|
1068
1100
|
}
|
|
1069
1101
|
}
|
|
1070
1102
|
if (oNextTile) {
|
|
1071
|
-
sap.ui.require(["sap/ushell/components/ComponentKeysHandler"],
|
|
1072
|
-
ComponentKeysHandler.getInstance().then(
|
|
1103
|
+
sap.ui.require(["sap/ushell/components/ComponentKeysHandler"], (ComponentKeysHandler) => {
|
|
1104
|
+
ComponentKeysHandler.getInstance().then((ComponentKeysHandlerInstance) => {
|
|
1073
1105
|
ComponentKeysHandlerInstance.moveScrollDashboard(oNextTile.$());
|
|
1074
1106
|
});
|
|
1075
1107
|
});
|
|
1076
1108
|
}
|
|
1077
1109
|
}
|
|
1078
1110
|
|
|
1079
|
-
for (
|
|
1080
|
-
|
|
1081
|
-
for (
|
|
1082
|
-
|
|
1111
|
+
for (let nGroupIndex = 0; nGroupIndex < aGroups.length; ++nGroupIndex) {
|
|
1112
|
+
const oGroup = aGroups[nGroupIndex];
|
|
1113
|
+
for (let nTileIndex = 0; nTileIndex < oGroup[sItems].length; ++nTileIndex) {
|
|
1114
|
+
const oTmpTile = oGroup[sItems][nTileIndex];
|
|
1083
1115
|
if (oTmpTile.uuid === sTileId) {
|
|
1084
1116
|
if (Device.system.desktop) {
|
|
1085
1117
|
focusNextTile(nTileIndex, oGroup, sItems);
|
|
1086
1118
|
}
|
|
1087
1119
|
// Remove tile from group.
|
|
1088
|
-
oDestroyHelper.destroyTileModel(this.oModel.getProperty(
|
|
1089
|
-
|
|
1090
|
-
|
|
1120
|
+
oDestroyHelper.destroyTileModel(this.oModel.getProperty(`/groups/${nGroupIndex}/${sItems}/${nTileIndex}`));
|
|
1121
|
+
const oTileModel = oGroup[sItems].splice(nTileIndex, 1)[0];
|
|
1122
|
+
const personalization = this.oModel.getProperty("/personalization");
|
|
1091
1123
|
|
|
1092
1124
|
oGroup.visibilityModes = oUtils.calcVisibilityModes(oGroup, personalization);
|
|
1093
|
-
this.oModel.setProperty(
|
|
1125
|
+
this.oModel.setProperty(`/groups/${nGroupIndex}`, oGroup);
|
|
1094
1126
|
this._addRequest(deleteTile.bind(this, oGroup, oTileModel));
|
|
1095
1127
|
oUtils.handleTilesVisibility();
|
|
1096
1128
|
return;
|
|
@@ -1106,25 +1138,25 @@ sap.ui.define([
|
|
|
1106
1138
|
* @param {string[]} aRemovedTilesIds Array of the tile uuids to remove
|
|
1107
1139
|
*/
|
|
1108
1140
|
deleteTilesFromGroup: function (sGroupId, aRemovedTilesIds) {
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1141
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
1142
|
+
const iGroupIndex = oGroupsHelper.getIndexOfGroup(aGroups, sGroupId);
|
|
1143
|
+
const oGroup = this.oModel.getProperty(`/groups/${iGroupIndex}`);
|
|
1144
|
+
let aFilteredTiles = [];
|
|
1113
1145
|
|
|
1114
|
-
["tiles", "links"].forEach(
|
|
1115
|
-
aFilteredTiles = oGroup[sAttribute].filter(
|
|
1146
|
+
["tiles", "links"].forEach((sAttribute) => {
|
|
1147
|
+
aFilteredTiles = oGroup[sAttribute].filter((oTile) => {
|
|
1116
1148
|
return aRemovedTilesIds.indexOf(oTile.uuid) < 0;
|
|
1117
1149
|
});
|
|
1118
1150
|
oGroup[sAttribute] = aFilteredTiles;
|
|
1119
1151
|
});
|
|
1120
1152
|
|
|
1121
1153
|
oGroup.visibilityModes = oUtils.calcVisibilityModes(oGroup, true);
|
|
1122
|
-
this.oModel.setProperty(
|
|
1154
|
+
this.oModel.setProperty(`/groups/${iGroupIndex}`, oGroup);
|
|
1123
1155
|
},
|
|
1124
1156
|
|
|
1125
1157
|
_getGroupIndex: function (sId) {
|
|
1126
|
-
|
|
1127
|
-
|
|
1158
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
1159
|
+
const oGroupInfo = this._getNewGroupInfo(aGroups, sId);
|
|
1128
1160
|
if (oGroupInfo) {
|
|
1129
1161
|
return oGroupInfo.newGroupIndex;
|
|
1130
1162
|
}
|
|
@@ -1141,24 +1173,24 @@ sap.ui.define([
|
|
|
1141
1173
|
* @deprecated since 1.112
|
|
1142
1174
|
*/
|
|
1143
1175
|
_convertTile: function (sChannelId, sEventId, oData) {
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
? this.oModel.getProperty(
|
|
1176
|
+
const oSourceTile = oData.tile ? oData.tile : oData;
|
|
1177
|
+
const nGroupIndex = oData.srcGroupId ? this._getGroupIndex(oData.srcGroupId) : undefined;
|
|
1178
|
+
const oSourceGroup = oData.srcGroupId
|
|
1179
|
+
? this.oModel.getProperty(`/groups/${nGroupIndex}`)
|
|
1148
1180
|
: oSourceTile.getParent().getBindingContext().getObject();
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1181
|
+
const aTileBindingContext = oSourceTile.getBindingContext().sPath.split("/");
|
|
1182
|
+
const oTileModel = oSourceTile.getBindingContext().getObject();
|
|
1183
|
+
const sOldType = aTileBindingContext[aTileBindingContext.length - 2];
|
|
1184
|
+
const sTileId = oTileModel.uuid;
|
|
1185
|
+
const curTileIndex = parseInt(aTileBindingContext[aTileBindingContext.length - 1], 10);
|
|
1186
|
+
const newTileIndex = oData.toIndex !== undefined ? oData.toIndex : undefined;
|
|
1187
|
+
const bActionMode = this.oModel.getProperty("/tileActionModeActive");
|
|
1188
|
+
const newGroupIndex = oData.toGroupId ? this._getGroupIndex(oData.toGroupId) : oSourceGroup.index;
|
|
1189
|
+
const oTargetGroup = oData.toGroupId ? this.oModel.getProperty(`/groups/${newGroupIndex}`) : oSourceGroup;
|
|
1190
|
+
const that = this;
|
|
1191
|
+
|
|
1192
|
+
const oIndexInfo = this._getIndexForConvert(sOldType, curTileIndex, newTileIndex, oSourceGroup, oTargetGroup);
|
|
1193
|
+
const sourceInfo = {
|
|
1162
1194
|
tileIndex: curTileIndex,
|
|
1163
1195
|
groupIndex: nGroupIndex,
|
|
1164
1196
|
group: oSourceGroup
|
|
@@ -1167,7 +1199,7 @@ sap.ui.define([
|
|
|
1167
1199
|
function convertTile () {
|
|
1168
1200
|
// setting a flag on the Tile's object to disable opening the Tile's action until backend requests finish (see DashboardContent.view)
|
|
1169
1201
|
oTileModel.tileIsBeingMoved = true;
|
|
1170
|
-
|
|
1202
|
+
const oResultPromise = this.oPageOperationAdapter.moveTile(
|
|
1171
1203
|
oTileModel,
|
|
1172
1204
|
oIndexInfo,
|
|
1173
1205
|
oSourceGroup,
|
|
@@ -1175,11 +1207,11 @@ sap.ui.define([
|
|
|
1175
1207
|
(sOldType === "links") ? "tile" : "link"
|
|
1176
1208
|
);
|
|
1177
1209
|
|
|
1178
|
-
oResultPromise.then(
|
|
1210
|
+
oResultPromise.then((oNewTileInfo) => {
|
|
1179
1211
|
// we call to _handleAfterSortable to handle the case in which convertTile is called by dragAndDrop flow
|
|
1180
|
-
that._handleAfterSortable(
|
|
1181
|
-
|
|
1182
|
-
|
|
1212
|
+
that._handleAfterSortable((sTileId, oNewTileInfo) => {
|
|
1213
|
+
const sTilePath = that._getPathOfTile(sTileId);
|
|
1214
|
+
const oView = oNewTileInfo.content;
|
|
1183
1215
|
|
|
1184
1216
|
// If we cannot find the tile, it might have been deleted -> Check!
|
|
1185
1217
|
if (sTilePath) {
|
|
@@ -1194,12 +1226,12 @@ sap.ui.define([
|
|
|
1194
1226
|
MessageToast.show(oResources.i18n.getText("PageRuntime.Message.VisualizationMovedAndConverted"));
|
|
1195
1227
|
}
|
|
1196
1228
|
|
|
1197
|
-
|
|
1229
|
+
const oTargetGroupInfo = {
|
|
1198
1230
|
tileIndex: newTileIndex,
|
|
1199
1231
|
groupIndex: newGroupIndex,
|
|
1200
1232
|
group: oTargetGroup
|
|
1201
1233
|
};
|
|
1202
|
-
|
|
1234
|
+
const tileInfo = {
|
|
1203
1235
|
tile: oTileModel,
|
|
1204
1236
|
view: oView,
|
|
1205
1237
|
type: sOldType,
|
|
@@ -1216,7 +1248,7 @@ sap.ui.define([
|
|
|
1216
1248
|
}
|
|
1217
1249
|
})(sTileId, oNewTileInfo);
|
|
1218
1250
|
that._checkRequestQueue();
|
|
1219
|
-
},
|
|
1251
|
+
}, () => {
|
|
1220
1252
|
that._handleAfterSortable(that._resetGroupsOnFailure.bind(that))("fail_to_move_tile_msg");
|
|
1221
1253
|
});
|
|
1222
1254
|
}
|
|
@@ -1225,8 +1257,8 @@ sap.ui.define([
|
|
|
1225
1257
|
|
|
1226
1258
|
replaceTileViewAfterConvert: function (oSourceInfo, oDstInfo, oTileInfo) {
|
|
1227
1259
|
// get the old view from tile's model
|
|
1228
|
-
|
|
1229
|
-
|
|
1260
|
+
const oTile = oTileInfo.tile;
|
|
1261
|
+
const oldViewContent = oTile.content;
|
|
1230
1262
|
// first we set new view, new tile object and new Id. And reset the move-scenario flag
|
|
1231
1263
|
oTile.tileIsBeingMoved = false;
|
|
1232
1264
|
oTile.content = [oTileInfo.view];
|
|
@@ -1241,8 +1273,8 @@ sap.ui.define([
|
|
|
1241
1273
|
oDstInfo.group[oTileInfo.type === "tiles" ? "links" : "tiles"].push(oTile);
|
|
1242
1274
|
}
|
|
1243
1275
|
|
|
1244
|
-
this.oModel.setProperty(
|
|
1245
|
-
this.oModel.setProperty(
|
|
1276
|
+
this.oModel.setProperty(`/groups/${oDstInfo.groupIndex}`, oDstInfo.group);
|
|
1277
|
+
this.oModel.setProperty(`/groups/${oSourceInfo.groupIndex}`, oSourceInfo.group);
|
|
1246
1278
|
|
|
1247
1279
|
// handle animation
|
|
1248
1280
|
if (oTileInfo.type === "links") {
|
|
@@ -1257,10 +1289,15 @@ sap.ui.define([
|
|
|
1257
1289
|
},
|
|
1258
1290
|
|
|
1259
1291
|
/**
|
|
1260
|
-
* sType
|
|
1292
|
+
* @param {string} sType the type of the tile (lineMode/ContentMode) before the convert action.
|
|
1293
|
+
* @param {int} curTileIndex the index of the current tile.
|
|
1294
|
+
* @param {int} newTileIndexInShellModel the index of the new tile.
|
|
1295
|
+
* @param {object} oGroup the group object.
|
|
1296
|
+
* @param {object} oDstGroup the destination group object.
|
|
1297
|
+
* @returns {object} that contains the current tile index and the new tile index.
|
|
1261
1298
|
*/
|
|
1262
1299
|
_getIndexForConvert: function (sType, curTileIndex, newTileIndexInShellModel, oGroup, oDstGroup) {
|
|
1263
|
-
|
|
1300
|
+
let nNewTileIndex;
|
|
1264
1301
|
if (sType === "tiles") {
|
|
1265
1302
|
// If we convert ContentMode-tile to link
|
|
1266
1303
|
// then we want to enter the new link to the end of the array or to provided newTileIndex
|
|
@@ -1281,7 +1318,7 @@ sap.ui.define([
|
|
|
1281
1318
|
},
|
|
1282
1319
|
|
|
1283
1320
|
_getIndexForMove: function (sType, curTileIndex, newTileIndexInShellModel, oDstGroup, oSourceGroup) {
|
|
1284
|
-
|
|
1321
|
+
let nNewTileIndex;
|
|
1285
1322
|
if (sType === "tiles") {
|
|
1286
1323
|
// case move tile
|
|
1287
1324
|
nNewTileIndex = newTileIndexInShellModel !== undefined ? newTileIndexInShellModel : oDstGroup[sType].length;
|
|
@@ -1298,10 +1335,10 @@ sap.ui.define([
|
|
|
1298
1335
|
},
|
|
1299
1336
|
|
|
1300
1337
|
_getTileInfo: function (aGroups, sTileId, sItems) {
|
|
1301
|
-
for (
|
|
1302
|
-
|
|
1303
|
-
for (
|
|
1304
|
-
|
|
1338
|
+
for (let nTmpGroupIndex = 0; nTmpGroupIndex < aGroups.length; ++nTmpGroupIndex) {
|
|
1339
|
+
const oTmpGroup = aGroups[nTmpGroupIndex];
|
|
1340
|
+
for (let nTmpTileIndex = 0; nTmpTileIndex < oTmpGroup[sItems].length; ++nTmpTileIndex) {
|
|
1341
|
+
const oTmpTile = oTmpGroup[sItems][nTmpTileIndex];
|
|
1305
1342
|
if (oTmpTile.uuid === sTileId) {
|
|
1306
1343
|
// the order is oTile, nTileIndex, oOldGroup, nOldGroupIndex
|
|
1307
1344
|
return {
|
|
@@ -1319,8 +1356,8 @@ sap.ui.define([
|
|
|
1319
1356
|
|
|
1320
1357
|
// should be considered to improve by inserting the logic into _getTileInfo function
|
|
1321
1358
|
_getNewGroupInfo: function (aGroups, sNewGroupId) {
|
|
1322
|
-
for (
|
|
1323
|
-
|
|
1359
|
+
for (let nTmpGroupIndex = 0; nTmpGroupIndex < aGroups.length; ++nTmpGroupIndex) {
|
|
1360
|
+
const oTmpGroup = aGroups[nTmpGroupIndex];
|
|
1324
1361
|
if (oTmpGroup.groupId === sNewGroupId) {
|
|
1325
1362
|
// order is oNewGroup, nNewGroupIndex
|
|
1326
1363
|
return {
|
|
@@ -1339,22 +1376,26 @@ sap.ui.define([
|
|
|
1339
1376
|
* toGroupId
|
|
1340
1377
|
* fromIndex
|
|
1341
1378
|
* toIndex can be null => append as last tile in group
|
|
1379
|
+
*
|
|
1380
|
+
* @param {string} sChannelId the channel id.
|
|
1381
|
+
* @param {string} sEventId the event id.
|
|
1382
|
+
* @param {object} oData the event data.
|
|
1342
1383
|
*/
|
|
1343
1384
|
_moveTile: function (sChannelId, sEventId, oData) {
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1347
|
-
|
|
1348
|
-
|
|
1349
|
-
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1385
|
+
let nNewIndex = oData.toIndex;
|
|
1386
|
+
const sNewGroupId = oData.toGroupId;
|
|
1387
|
+
const sTileId = oData.sTileId;
|
|
1388
|
+
const sSource = oData.source;
|
|
1389
|
+
const sType = oData.sTileType === "tiles" || oData.sTileType === "tile" ? "tile" : "link";
|
|
1390
|
+
const sToItems = oData.sToItems;
|
|
1391
|
+
const sFromItems = oData.sFromItems;
|
|
1392
|
+
const bActionMode = this.oModel.getProperty("/tileActionModeActive");
|
|
1393
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
1394
|
+
const oTileInfo = this._getTileInfo(aGroups, sTileId, sFromItems);
|
|
1395
|
+
const oGroupInfo = this._getNewGroupInfo(aGroups, sNewGroupId);
|
|
1396
|
+
const that = this;
|
|
1397
|
+
|
|
1398
|
+
const bIsLastTileMovingOverPlusButton = (oTileInfo.tileIndex === oGroupInfo.oNewGroup.tiles.length - 1) && (nNewIndex >= oGroupInfo.oNewGroup.tiles.length);
|
|
1358
1399
|
if ((oTileInfo.tileIndex === nNewIndex || bIsLastTileMovingOverPlusButton) && (oTileInfo.oGroup.groupId === oGroupInfo.oNewGroup.groupId)) {
|
|
1359
1400
|
return; // aborting because the action is not a real move
|
|
1360
1401
|
}
|
|
@@ -1393,13 +1434,13 @@ sap.ui.define([
|
|
|
1393
1434
|
this._moveInArray(oTileInfo.oGroup[sToItems], oTileInfo.tileIndex, nNewIndex);
|
|
1394
1435
|
}
|
|
1395
1436
|
|
|
1396
|
-
this.oModel.setProperty(
|
|
1437
|
+
this.oModel.setProperty(`/groups/${oTileInfo.groupIndex}/${sToItems}`, oTileInfo.oGroup[sToItems]);
|
|
1397
1438
|
} else {
|
|
1398
1439
|
// remove from old group
|
|
1399
|
-
|
|
1440
|
+
const personalization = this.oModel.getProperty("/personalization");
|
|
1400
1441
|
oTileInfo.oGroup[sFromItems].splice(oTileInfo.tileIndex, 1);
|
|
1401
1442
|
oTileInfo.oGroup.visibilityModes = oUtils.calcVisibilityModes(oTileInfo.oGroup, personalization);
|
|
1402
|
-
this.oModel.setProperty(
|
|
1443
|
+
this.oModel.setProperty(`/groups/${oTileInfo.groupIndex}/${sFromItems}`, oTileInfo.oGroup[sFromItems]);
|
|
1403
1444
|
|
|
1404
1445
|
// add to new group
|
|
1405
1446
|
if (nNewIndex === null || nNewIndex === undefined) {
|
|
@@ -1412,7 +1453,7 @@ sap.ui.define([
|
|
|
1412
1453
|
oGroupInfo.oNewGroup[sToItems].splice(nNewIndex, 0, oTileInfo.oTile);
|
|
1413
1454
|
}
|
|
1414
1455
|
oGroupInfo.oNewGroup.visibilityModes = oUtils.calcVisibilityModes(oGroupInfo.oNewGroup, personalization);
|
|
1415
|
-
this.oModel.setProperty(
|
|
1456
|
+
this.oModel.setProperty(`/groups/${oGroupInfo.newGroupIndex}/${sToItems}`, oGroupInfo.oNewGroup[sToItems]);
|
|
1416
1457
|
}
|
|
1417
1458
|
|
|
1418
1459
|
// recalculate the associated groups for catalog tiles
|
|
@@ -1422,9 +1463,9 @@ sap.ui.define([
|
|
|
1422
1463
|
|
|
1423
1464
|
// change in backend
|
|
1424
1465
|
function moveTile () {
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1466
|
+
const oSourceGroup = this.oModel.getProperty(`/groups/${oTileInfo.groupIndex}`);
|
|
1467
|
+
const oTargetGroup = this.oModel.getProperty(`/groups/${oGroupInfo.newGroupIndex}`);
|
|
1468
|
+
const oIndexInfo = this._getIndexForMove(sFromItems, oTileInfo.tileIndex, nNewIndex, oGroupInfo.oNewGroup, oSourceGroup);
|
|
1428
1469
|
|
|
1429
1470
|
// setting a flag on the Tile's object to disable opening the Tile's action until backend requests finish (see DashboardContent.view)
|
|
1430
1471
|
oTileInfo.oTile.tileIsBeingMoved = true;
|
|
@@ -1434,14 +1475,14 @@ sap.ui.define([
|
|
|
1434
1475
|
oSourceGroup,
|
|
1435
1476
|
oTargetGroup,
|
|
1436
1477
|
sType
|
|
1437
|
-
).then(
|
|
1438
|
-
|
|
1478
|
+
).then((oNewTileInfo) => {
|
|
1479
|
+
const sTilePath = that._getPathOfTile(sTileId);
|
|
1439
1480
|
if (sTilePath) {
|
|
1440
|
-
that.oModel.setProperty(sTilePath
|
|
1441
|
-
that.oModel.setProperty(sTilePath
|
|
1481
|
+
that.oModel.setProperty(`${sTilePath}/object`, oNewTileInfo.object);
|
|
1482
|
+
that.oModel.setProperty(`${sTilePath}/originalTileId`, oNewTileInfo.originalTileId);
|
|
1442
1483
|
|
|
1443
|
-
|
|
1444
|
-
|
|
1484
|
+
const oldViewContent = that.oModel.getProperty(`${sTilePath}/content`);
|
|
1485
|
+
const oView = oNewTileInfo.content;
|
|
1445
1486
|
|
|
1446
1487
|
// set the new view
|
|
1447
1488
|
if (sToItems === "links") {
|
|
@@ -1451,16 +1492,16 @@ sap.ui.define([
|
|
|
1451
1492
|
oTileInfo.oTile.content = [oView];
|
|
1452
1493
|
that.oModel.setProperty(sTilePath, extend({}, oTileInfo.oTile));
|
|
1453
1494
|
that.oModel.setProperty(
|
|
1454
|
-
|
|
1455
|
-
that.oModel.getProperty(
|
|
1495
|
+
`/groups/${oGroupInfo.newGroupIndex}/${sToItems}`,
|
|
1496
|
+
that.oModel.getProperty(`/groups/${oGroupInfo.newGroupIndex}/${sToItems}`)
|
|
1456
1497
|
);
|
|
1457
1498
|
} else {
|
|
1458
|
-
that.oModel.setProperty(sTilePath
|
|
1499
|
+
that.oModel.setProperty(`${sTilePath}/content`, [oView]);
|
|
1459
1500
|
}
|
|
1460
1501
|
|
|
1461
1502
|
// destroy the old view
|
|
1462
1503
|
if (oldViewContent && oldViewContent[0]) {
|
|
1463
|
-
|
|
1504
|
+
const origOnAfterRendering = oView.onAfterRendering;
|
|
1464
1505
|
oView.onAfterRendering = function () {
|
|
1465
1506
|
origOnAfterRendering.apply(this);
|
|
1466
1507
|
oldViewContent[0].destroy();
|
|
@@ -1469,7 +1510,7 @@ sap.ui.define([
|
|
|
1469
1510
|
}
|
|
1470
1511
|
|
|
1471
1512
|
// reset the move-scenario flag
|
|
1472
|
-
that.oModel.setProperty(sTilePath
|
|
1513
|
+
that.oModel.setProperty(`${sTilePath}/tileIsBeingMoved`, false);
|
|
1473
1514
|
if (oData.callBack) {
|
|
1474
1515
|
oData.callBack(oView);
|
|
1475
1516
|
}
|
|
@@ -1477,7 +1518,7 @@ sap.ui.define([
|
|
|
1477
1518
|
MessageToast.show(oResources.i18n.getText("PageRuntime.Message.VisualizationMoved"));
|
|
1478
1519
|
}
|
|
1479
1520
|
that._checkRequestQueue();
|
|
1480
|
-
},
|
|
1521
|
+
}, () => {
|
|
1481
1522
|
that._resetGroupsOnFailure("fail_to_move_tile_msg");
|
|
1482
1523
|
});
|
|
1483
1524
|
}
|
|
@@ -1486,9 +1527,9 @@ sap.ui.define([
|
|
|
1486
1527
|
|
|
1487
1528
|
// Adjust the moved-tile new index according to the visible+hidden tiles
|
|
1488
1529
|
_adjustTileIndex: function (newLocationIndex, oTile, newGroup, sItems) {
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1530
|
+
let visibleCounter = 0;
|
|
1531
|
+
let bIsTileIncluded = false;
|
|
1532
|
+
let i = 0;
|
|
1492
1533
|
// In order to get the new index, count all tiles (visible+hidden) up to the new index received from the UI.
|
|
1493
1534
|
for (i = 0; i < newGroup[sItems].length && visibleCounter < newLocationIndex; i++) {
|
|
1494
1535
|
if (newGroup[sItems][i].isTileIntentSupported) {
|
|
@@ -1561,10 +1602,10 @@ sap.ui.define([
|
|
|
1561
1602
|
},
|
|
1562
1603
|
|
|
1563
1604
|
_bindSegment: function (aGroups, segment) {
|
|
1564
|
-
for (
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1605
|
+
for (let segIndex = 0; segIndex < segment.length; segIndex++) {
|
|
1606
|
+
const oSegGroup = segment[segIndex];
|
|
1607
|
+
const groupIndex = oSegGroup.index;
|
|
1608
|
+
const oGrp = aGroups[groupIndex];
|
|
1568
1609
|
if (oGrp) {
|
|
1569
1610
|
oGrp.isRendered = true;
|
|
1570
1611
|
oGrp.tiles = oGrp.tiles.concat(oSegGroup.tiles);
|
|
@@ -1576,17 +1617,17 @@ sap.ui.define([
|
|
|
1576
1617
|
},
|
|
1577
1618
|
|
|
1578
1619
|
createGroupsModelFrame: function (aGroups, personalization) {
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1620
|
+
const aCloneGroups = [];
|
|
1621
|
+
function fnCreateFlatGroupClone (oGroup) {
|
|
1622
|
+
const clnGroup = extend({}, oGroup);
|
|
1582
1623
|
clnGroup.tiles = [];
|
|
1583
1624
|
clnGroup.pendingLinks = [];
|
|
1584
1625
|
clnGroup.links = [];
|
|
1585
1626
|
return clnGroup;
|
|
1586
|
-
}
|
|
1627
|
+
}
|
|
1587
1628
|
|
|
1588
|
-
for (
|
|
1589
|
-
|
|
1629
|
+
for (let iGroupIndex = 0; iGroupIndex < aGroups.length; iGroupIndex++) {
|
|
1630
|
+
const oOrgGroup = aGroups[iGroupIndex];
|
|
1590
1631
|
aCloneGroups[iGroupIndex] = fnCreateFlatGroupClone(oOrgGroup);
|
|
1591
1632
|
// group variable setup.
|
|
1592
1633
|
aCloneGroups[iGroupIndex].isRendered = false;
|
|
@@ -1597,16 +1638,16 @@ sap.ui.define([
|
|
|
1597
1638
|
},
|
|
1598
1639
|
|
|
1599
1640
|
_splitGroups: function (aGroups, iFirstVisibleGroupIndex) {
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1641
|
+
let tempSegment = [];
|
|
1642
|
+
let segmentHeight = 0;
|
|
1643
|
+
const bIsTabsMode = this.oModel.getProperty("/homePageGroupDisplay") === "tabs";
|
|
1644
|
+
const bEnablePersonalization = this.oModel.getProperty("/personalization");
|
|
1645
|
+
let iCurrentSegmentSize = 0;
|
|
1605
1646
|
|
|
1606
|
-
|
|
1647
|
+
const maxSegmentSize = 500;
|
|
1607
1648
|
|
|
1608
|
-
for (
|
|
1609
|
-
|
|
1649
|
+
for (let iGroupIndex = 0; iGroupIndex < aGroups.length; iGroupIndex++) {
|
|
1650
|
+
const oGroup = aGroups[iGroupIndex];
|
|
1610
1651
|
tempSegment.push(oGroup);
|
|
1611
1652
|
|
|
1612
1653
|
if (!this.segmentsStore.length) {
|
|
@@ -1647,7 +1688,7 @@ sap.ui.define([
|
|
|
1647
1688
|
* If segmentStore is empty, return the input model without changes.
|
|
1648
1689
|
*/
|
|
1649
1690
|
_processSegment: function (modelGroups) {
|
|
1650
|
-
|
|
1691
|
+
const groupSegment = this.segmentsStore.shift();
|
|
1651
1692
|
|
|
1652
1693
|
if (!groupSegment) {
|
|
1653
1694
|
return modelGroups;
|
|
@@ -1664,11 +1705,11 @@ sap.ui.define([
|
|
|
1664
1705
|
},
|
|
1665
1706
|
|
|
1666
1707
|
getSegmentContentViews: function (groupSegment) {
|
|
1667
|
-
|
|
1668
|
-
|
|
1708
|
+
let nTilesIndex;
|
|
1709
|
+
let oSegmentTile;
|
|
1669
1710
|
|
|
1670
|
-
for (
|
|
1671
|
-
|
|
1711
|
+
for (let nGroupSegmentIndex = 0; nGroupSegmentIndex < groupSegment.length; nGroupSegmentIndex++) {
|
|
1712
|
+
const oSegmentGroup = groupSegment[nGroupSegmentIndex];
|
|
1672
1713
|
for (nTilesIndex = 0; nTilesIndex < oSegmentGroup.tiles.length; nTilesIndex++) {
|
|
1673
1714
|
oSegmentTile = oSegmentGroup.tiles[nTilesIndex];
|
|
1674
1715
|
if (oSegmentTile.isTileIntentSupported) {
|
|
@@ -1687,10 +1728,10 @@ sap.ui.define([
|
|
|
1687
1728
|
},
|
|
1688
1729
|
|
|
1689
1730
|
getSegmentTabContentViews: function (sChannelId, sEventId, iProcessTileViewSegmentsForGroup) {
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1731
|
+
let nTilesIndex;
|
|
1732
|
+
let oSegmentTile;
|
|
1733
|
+
const iSegmentsGroup = iProcessTileViewSegmentsForGroup.iSelectedGroup;
|
|
1734
|
+
const oGroup = this.oModel.getProperty(`/groups/${iSegmentsGroup}`);
|
|
1694
1735
|
|
|
1695
1736
|
for (nTilesIndex = 0; nTilesIndex < oGroup.tiles.length; nTilesIndex++) {
|
|
1696
1737
|
oSegmentTile = oGroup.tiles[nTilesIndex];
|
|
@@ -1734,7 +1775,7 @@ sap.ui.define([
|
|
|
1734
1775
|
// Frames of the remain groups are copied to the model because:
|
|
1735
1776
|
// 1) To show the AnchorNavigationBar with all groups
|
|
1736
1777
|
// 2) Avoid rerendering of the DashboardContainer if there are > 2 segments (avoid "jumping" of the page)
|
|
1737
|
-
|
|
1778
|
+
const aGroupModel = this.oModel.getProperty("/groups");
|
|
1738
1779
|
|
|
1739
1780
|
if (this.aGroupsFrame) {
|
|
1740
1781
|
Array.prototype.push.apply(aGroupModel, this.aGroupsFrame);
|
|
@@ -1753,8 +1794,8 @@ sap.ui.define([
|
|
|
1753
1794
|
* @private
|
|
1754
1795
|
*/
|
|
1755
1796
|
_initializeAnchorNavigationBar: function () {
|
|
1756
|
-
|
|
1757
|
-
|
|
1797
|
+
const oDashboardView = oHomepageManagerInstance.getDashboardView();
|
|
1798
|
+
const oAnchorItemTemplate = oDashboardView.getAnchorItemTemplate();
|
|
1758
1799
|
this.oDashboardView.oAnchorNavigationBar.bindAggregation("groups", {
|
|
1759
1800
|
path: "/groups",
|
|
1760
1801
|
template: oAnchorItemTemplate
|
|
@@ -1770,22 +1811,22 @@ sap.ui.define([
|
|
|
1770
1811
|
* @private
|
|
1771
1812
|
*/
|
|
1772
1813
|
_processRemainingSegments: function () {
|
|
1773
|
-
|
|
1814
|
+
let aUpdatedGroupModel;
|
|
1774
1815
|
|
|
1775
1816
|
if (this.segmentsStore.length > 0) {
|
|
1776
|
-
window.setTimeout(
|
|
1817
|
+
window.setTimeout(() => {
|
|
1777
1818
|
aUpdatedGroupModel = this._processSegment(this.oModel.getProperty("/groups"));
|
|
1778
1819
|
this.oModel.setProperty("/groups", aUpdatedGroupModel);
|
|
1779
1820
|
this.bIsFirstSegment = false;
|
|
1780
1821
|
this._processRemainingSegments();
|
|
1781
|
-
}
|
|
1822
|
+
}, 0);
|
|
1782
1823
|
} else {
|
|
1783
|
-
//publish event dashboard model finished loading.
|
|
1824
|
+
// publish event dashboard model finished loading.
|
|
1784
1825
|
this.bIsGroupsModelLoading = false;
|
|
1785
1826
|
this._updateModelWithTileView(0, 0);
|
|
1786
1827
|
oUtils.handleTilesVisibility();
|
|
1787
1828
|
Core.getEventBus().publish("launchpad", "dashboardModelContentLoaded");
|
|
1788
|
-
//update pin in the AppFinder
|
|
1829
|
+
// update pin in the AppFinder
|
|
1789
1830
|
oEventHub.emit("updateGroups", Date.now());
|
|
1790
1831
|
}
|
|
1791
1832
|
},
|
|
@@ -1819,13 +1860,13 @@ sap.ui.define([
|
|
|
1819
1860
|
return;
|
|
1820
1861
|
}
|
|
1821
1862
|
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
|
|
1828
|
-
|
|
1863
|
+
let i = 0;
|
|
1864
|
+
let indexOfDefaultGroup;
|
|
1865
|
+
let iGroupsInModel = 0;
|
|
1866
|
+
let numberOfVisibleTiles = 0;
|
|
1867
|
+
let numberOfVisibleGroup = 0;
|
|
1868
|
+
let iFirstVisibleGroup = null;
|
|
1869
|
+
let aPreparedGroupModel = [];
|
|
1829
1870
|
|
|
1830
1871
|
this.bIsGroupsModelLoading = true;
|
|
1831
1872
|
try {
|
|
@@ -1835,16 +1876,16 @@ sap.ui.define([
|
|
|
1835
1876
|
}
|
|
1836
1877
|
|
|
1837
1878
|
for (i = aGroups.length; i < iGroupsInModel; ++i) {
|
|
1838
|
-
oDestroyHelper.destroyFLPAggregationModel(this.oModel.getProperty(
|
|
1879
|
+
oDestroyHelper.destroyFLPAggregationModel(this.oModel.getProperty(`/groups/${i}`));
|
|
1839
1880
|
}
|
|
1840
1881
|
|
|
1841
1882
|
if (!this.PagingManager) {
|
|
1842
|
-
|
|
1883
|
+
let iAvailableWidth = jQuery("#dashboardGroups").width();
|
|
1843
1884
|
if (!iAvailableWidth) {
|
|
1844
1885
|
iAvailableWidth = window.innerWidth;
|
|
1845
1886
|
}
|
|
1846
1887
|
|
|
1847
|
-
|
|
1888
|
+
let iAvailableHeight = jQuery("#sapUshellDashboardPage-cont").height();
|
|
1848
1889
|
if (iAvailableHeight < 100) {
|
|
1849
1890
|
iAvailableHeight = window.innerHeight;
|
|
1850
1891
|
}
|
|
@@ -1858,7 +1899,7 @@ sap.ui.define([
|
|
|
1858
1899
|
});
|
|
1859
1900
|
}
|
|
1860
1901
|
|
|
1861
|
-
aGroups.forEach(
|
|
1902
|
+
aGroups.forEach((oGroup) => {
|
|
1862
1903
|
if (oGroup.isGroupVisible) {
|
|
1863
1904
|
// Hidden tilesAndLinks not calculate for the bIsScrollModeAccordingKPI
|
|
1864
1905
|
numberOfVisibleTiles += oGroup.tiles.length;
|
|
@@ -1885,10 +1926,10 @@ sap.ui.define([
|
|
|
1885
1926
|
}
|
|
1886
1927
|
|
|
1887
1928
|
this._splitGroups(aGroups, iFirstVisibleGroup);
|
|
1888
|
-
|
|
1929
|
+
const iFirstSegmentSize = this.segmentsStore[0]
|
|
1889
1930
|
? this.segmentsStore[0].length
|
|
1890
1931
|
: 0;
|
|
1891
|
-
|
|
1932
|
+
const aFirstSegmentFrame = this.aGroupsFrame.splice(0, iFirstSegmentSize);
|
|
1892
1933
|
|
|
1893
1934
|
Measurement.start("FLP:DashboardManager._processSegment", "_processSegment", "FLP");
|
|
1894
1935
|
// remain frames will be added to the model in handleFirstSegmentLoaded,
|
|
@@ -1897,7 +1938,7 @@ sap.ui.define([
|
|
|
1897
1938
|
|
|
1898
1939
|
// save default group index
|
|
1899
1940
|
|
|
1900
|
-
aGroups.every(
|
|
1941
|
+
aGroups.every((oGroup, iGroupIndex) => {
|
|
1901
1942
|
if (oGroup.isDefaultGroup) {
|
|
1902
1943
|
indexOfDefaultGroup = iGroupIndex;
|
|
1903
1944
|
return false;
|
|
@@ -1907,10 +1948,10 @@ sap.ui.define([
|
|
|
1907
1948
|
aPreparedGroupModel.indexOfDefaultGroup = indexOfDefaultGroup;
|
|
1908
1949
|
|
|
1909
1950
|
if (this.oModel.getProperty("/homePageGroupDisplay") === "tabs") {
|
|
1910
|
-
|
|
1951
|
+
const oDashboardView = this.getDashboardView();
|
|
1911
1952
|
if (oDashboardView) { // oDashboardView may be not yet available if the AppFinder opens at start
|
|
1912
|
-
|
|
1913
|
-
|
|
1953
|
+
const oDashboardGroupsBox = oDashboardView.oDashboardGroupsBox;
|
|
1954
|
+
const oGroupsBinding = oDashboardGroupsBox.getBinding("groups");
|
|
1914
1955
|
if (oGroupsBinding) {
|
|
1915
1956
|
oGroupsBinding.filter([oDashboardView.oFilterSelectedGroup]);
|
|
1916
1957
|
}
|
|
@@ -1922,9 +1963,9 @@ sap.ui.define([
|
|
|
1922
1963
|
this.oModel.setProperty("/groups", aPreparedGroupModel);
|
|
1923
1964
|
this.aGroupModel = aPreparedGroupModel;
|
|
1924
1965
|
// start to load other segments when first segment was completely loaded (placeholders and static views)
|
|
1925
|
-
if (this.oDashboardView) { //Homepage start
|
|
1966
|
+
if (this.oDashboardView) { // Homepage start
|
|
1926
1967
|
oEventHub.once("firstSegmentCompleteLoaded")
|
|
1927
|
-
.do(
|
|
1968
|
+
.do(() => {
|
|
1928
1969
|
// the first segment has been loaded and rendered; this is valid with and without blind-loading
|
|
1929
1970
|
oUtils.setPerformanceMark("FLP-TTI-Homepage", { bUseUniqueMark: true });
|
|
1930
1971
|
})
|
|
@@ -1938,12 +1979,12 @@ sap.ui.define([
|
|
|
1938
1979
|
* For the cases different from homepage, we don't wait "firstSegmentCompleteLoaded" event and
|
|
1939
1980
|
* start to load remain segment.
|
|
1940
1981
|
*/
|
|
1941
|
-
setTimeout(
|
|
1982
|
+
setTimeout(() => {
|
|
1942
1983
|
Array.prototype.push.apply(this.aGroupModel, this.aGroupsFrame);
|
|
1943
1984
|
this.aGroupsFrame = null;
|
|
1944
1985
|
this.bStartLoadRemainSegment = true;
|
|
1945
1986
|
this._processRemainingSegments();
|
|
1946
|
-
}
|
|
1987
|
+
}, 0);
|
|
1947
1988
|
}
|
|
1948
1989
|
|
|
1949
1990
|
if (!this.bIsFirstSegmentViewLoaded && this.isBlindLoading()) {
|
|
@@ -1966,11 +2007,11 @@ sap.ui.define([
|
|
|
1966
2007
|
* @returns {boolean} whether at least one tile in the given Segment is visible.
|
|
1967
2008
|
*/
|
|
1968
2009
|
_isAtLeastOneTileVisibleInASegment: function (aSegment) {
|
|
1969
|
-
|
|
1970
|
-
|
|
1971
|
-
for (
|
|
2010
|
+
let oGroup;
|
|
2011
|
+
let oTile;
|
|
2012
|
+
for (let i = 0; i < aSegment.length; ++i) {
|
|
1972
2013
|
oGroup = aSegment[i];
|
|
1973
|
-
for (
|
|
2014
|
+
for (let j = 0; j < oGroup.tiles.length; ++j) {
|
|
1974
2015
|
oTile = oGroup.tiles[j];
|
|
1975
2016
|
if (oTile.isTileIntentSupported) {
|
|
1976
2017
|
return true;
|
|
@@ -1992,11 +2033,11 @@ sap.ui.define([
|
|
|
1992
2033
|
* The prepared group model
|
|
1993
2034
|
*/
|
|
1994
2035
|
_loadGroup: function (nIndex, oNewGroupModel) {
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
2036
|
+
const that = this;
|
|
2037
|
+
const sGroupPath = `/groups/${nIndex}`;
|
|
2038
|
+
const oOldGroupModel = that.oModel.getProperty(sGroupPath);
|
|
2039
|
+
const bIsLast = oOldGroupModel.isLastGroup;
|
|
2040
|
+
const sOldGroupId = oOldGroupModel.groupId;
|
|
2000
2041
|
|
|
2001
2042
|
oDestroyHelper.destroyFLPAggregationModel(oOldGroupModel);
|
|
2002
2043
|
|
|
@@ -2012,7 +2053,7 @@ sap.ui.define([
|
|
|
2012
2053
|
},
|
|
2013
2054
|
|
|
2014
2055
|
_hasPendingLinks: function (aModelLinks) {
|
|
2015
|
-
for (
|
|
2056
|
+
for (let i = 0; i < aModelLinks.length; i++) {
|
|
2016
2057
|
if (aModelLinks[i].content[0] === undefined) {
|
|
2017
2058
|
return true;
|
|
2018
2059
|
}
|
|
@@ -2026,7 +2067,7 @@ sap.ui.define([
|
|
|
2026
2067
|
},
|
|
2027
2068
|
|
|
2028
2069
|
_updateModelWithTileView: function (startGroup, startTile) {
|
|
2029
|
-
|
|
2070
|
+
const that = this;
|
|
2030
2071
|
|
|
2031
2072
|
/*
|
|
2032
2073
|
* in order to avoid many updates to the model we wait to allow
|
|
@@ -2037,24 +2078,24 @@ sap.ui.define([
|
|
|
2037
2078
|
if (this.tileViewUpdateTimeoutID) {
|
|
2038
2079
|
clearTimeout(this.tileViewUpdateTimeoutID);
|
|
2039
2080
|
}
|
|
2040
|
-
this.tileViewUpdateTimeoutID = window.setTimeout(
|
|
2081
|
+
this.tileViewUpdateTimeoutID = window.setTimeout(() => {
|
|
2041
2082
|
that.tileViewUpdateTimeoutID = undefined;
|
|
2042
2083
|
// wait to update until the personalization operation is done to avoid rendering the tiles during D&D operation
|
|
2043
|
-
that.oSortableDeferred.done(
|
|
2084
|
+
that.oSortableDeferred.done(() => {
|
|
2044
2085
|
that._updateModelWithTilesViews(startGroup, startTile);
|
|
2045
2086
|
});
|
|
2046
2087
|
}, 50);
|
|
2047
2088
|
},
|
|
2048
2089
|
|
|
2049
2090
|
_updateGroupModelWithTilesViews: function (aTiles, startTile, handledUpdatesIndex, isLink) {
|
|
2050
|
-
|
|
2091
|
+
const stTile = startTile || 0;
|
|
2051
2092
|
|
|
2052
|
-
for (
|
|
2093
|
+
for (let j = stTile; j < aTiles.length; j = j + 1) {
|
|
2053
2094
|
// group tiles loop - get the tile model
|
|
2054
|
-
|
|
2055
|
-
for (
|
|
2095
|
+
const oTileModel = aTiles[j];
|
|
2096
|
+
for (let q = 0; q < this.tileViewUpdateQueue.length; q++) {
|
|
2056
2097
|
// updated tiles view queue loop - check if the current tile was updated
|
|
2057
|
-
|
|
2098
|
+
const oUpdatedTile = this.tileViewUpdateQueue[q];
|
|
2058
2099
|
if (oTileModel.uuid === oUpdatedTile.uuid) {
|
|
2059
2100
|
// mark tileViewUpdate index for removal oUpdatedTile from tileViewUpdateQueue.
|
|
2060
2101
|
handledUpdatesIndex.push(q);
|
|
@@ -2070,8 +2111,8 @@ sap.ui.define([
|
|
|
2070
2111
|
this.oDashboardLoadingManager.setTileResolved(oTileModel);
|
|
2071
2112
|
|
|
2072
2113
|
// in some cases tile size can be different then the initial value, therefore we read and set the size again
|
|
2073
|
-
|
|
2074
|
-
|
|
2114
|
+
const sSize = this.oPageOperationAdapter.getTileSize(oTileModel.object);
|
|
2115
|
+
const bLong = ((sSize !== null) && (sSize === "1x2")) || false;
|
|
2075
2116
|
if (oTileModel.long !== bLong) {
|
|
2076
2117
|
oTileModel.long = bLong;
|
|
2077
2118
|
}
|
|
@@ -2086,9 +2127,9 @@ sap.ui.define([
|
|
|
2086
2127
|
},
|
|
2087
2128
|
|
|
2088
2129
|
_updateModelWithTilesViews: function (startGroup, startTile) {
|
|
2089
|
-
|
|
2090
|
-
|
|
2091
|
-
|
|
2130
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
2131
|
+
const stGroup = startGroup || 0;
|
|
2132
|
+
const handledUpdatesIndex = [];
|
|
2092
2133
|
|
|
2093
2134
|
if (!aGroups || this.tileViewUpdateQueue.length === 0) {
|
|
2094
2135
|
return;
|
|
@@ -2096,8 +2137,8 @@ sap.ui.define([
|
|
|
2096
2137
|
|
|
2097
2138
|
// go over the tiles in the model and search for tiles to update.
|
|
2098
2139
|
// tiles are identified using uuid
|
|
2099
|
-
for (
|
|
2100
|
-
//group loop - get the groups tiles
|
|
2140
|
+
for (let i = stGroup; i < aGroups.length; i = i + 1) {
|
|
2141
|
+
// group loop - get the groups tiles
|
|
2101
2142
|
this._updateGroupModelWithTilesViews(aGroups[i].tiles, startTile, handledUpdatesIndex);
|
|
2102
2143
|
if (aGroups[i].links) {
|
|
2103
2144
|
this._updateGroupModelWithTilesViews(aGroups[i].links, startTile, handledUpdatesIndex, true);
|
|
@@ -2112,7 +2153,7 @@ sap.ui.define([
|
|
|
2112
2153
|
}
|
|
2113
2154
|
|
|
2114
2155
|
// clear the handled updates from the tempTileViewUpdateQueue and set the model
|
|
2115
|
-
|
|
2156
|
+
const tempTileViewUpdateQueue = []; let tileViewUpdateQueueIndex;
|
|
2116
2157
|
for (tileViewUpdateQueueIndex = 0; tileViewUpdateQueueIndex < this.tileViewUpdateQueue.length; tileViewUpdateQueueIndex++) {
|
|
2117
2158
|
if (handledUpdatesIndex.indexOf(tileViewUpdateQueueIndex) === -1) {
|
|
2118
2159
|
tempTileViewUpdateQueue.push(this.tileViewUpdateQueue[tileViewUpdateQueueIndex]);
|
|
@@ -2124,11 +2165,11 @@ sap.ui.define([
|
|
|
2124
2165
|
},
|
|
2125
2166
|
|
|
2126
2167
|
getModelTileById: function (sId, sItems) {
|
|
2127
|
-
|
|
2128
|
-
|
|
2129
|
-
|
|
2130
|
-
aGroups.every(
|
|
2131
|
-
oGroup[sItems].every(
|
|
2168
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
2169
|
+
let oModelTile;
|
|
2170
|
+
let bFound = false;
|
|
2171
|
+
aGroups.every((oGroup) => {
|
|
2172
|
+
oGroup[sItems].every((oTile) => {
|
|
2132
2173
|
if (oTile.uuid === sId || oTile.originalTileId === sId) {
|
|
2133
2174
|
oModelTile = oTile;
|
|
2134
2175
|
bFound = true;
|
|
@@ -2141,16 +2182,16 @@ sap.ui.define([
|
|
|
2141
2182
|
},
|
|
2142
2183
|
|
|
2143
2184
|
_attachLinkPressHandlers: function (oView) {
|
|
2144
|
-
|
|
2145
|
-
|
|
2185
|
+
const oEventBus = Core.getEventBus();
|
|
2186
|
+
const oTileView = oView.attachPress ? oView : oView.getContent()[0]; // a hack to support demoContent
|
|
2146
2187
|
oTileView.attachPress(function (oEvent) {
|
|
2147
|
-
|
|
2188
|
+
const bTileBeingMoved = oView.getBindingContext().getObject().tileIsBeingMoved;
|
|
2148
2189
|
if (!bTileBeingMoved && this.getScope && this.getScope() === "Actions") {
|
|
2149
2190
|
switch (oEvent.getParameters().action) {
|
|
2150
2191
|
case "Press":
|
|
2151
|
-
|
|
2192
|
+
const sState = oView.getState ? oView.getState() : "";
|
|
2152
2193
|
if (sState !== "Failed") {
|
|
2153
|
-
|
|
2194
|
+
const oActionMode = sap.ui.require("sap/ushell/components/homepage/ActionMode");
|
|
2154
2195
|
|
|
2155
2196
|
if (oActionMode) {
|
|
2156
2197
|
oActionMode._openActionsMenu(oEvent);
|
|
@@ -2160,7 +2201,7 @@ sap.ui.define([
|
|
|
2160
2201
|
}
|
|
2161
2202
|
break;
|
|
2162
2203
|
case "Remove":
|
|
2163
|
-
|
|
2204
|
+
const tileUuid = oView.getBindingContext().getObject().uuid;
|
|
2164
2205
|
oEventBus.publish("launchpad", "deleteTile", { tileId: tileUuid, items: "links" });
|
|
2165
2206
|
break;
|
|
2166
2207
|
default: break;
|
|
@@ -2180,23 +2221,23 @@ sap.ui.define([
|
|
|
2180
2221
|
case "tabs":
|
|
2181
2222
|
this._handleDisplayModeChangeToTabs();
|
|
2182
2223
|
break;
|
|
2183
|
-
//no default
|
|
2224
|
+
// no default
|
|
2184
2225
|
}
|
|
2185
2226
|
},
|
|
2186
2227
|
|
|
2187
2228
|
_handleDisplayModeChangeToTabs: function () {
|
|
2188
|
-
|
|
2189
|
-
|
|
2229
|
+
const iSelectedGroup = this.oModel.getProperty("/iSelectedGroup");
|
|
2230
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
2190
2231
|
|
|
2191
2232
|
this.oDashboardLoadingManager.manageTilesView();
|
|
2192
2233
|
|
|
2193
2234
|
if (aGroups.length > 0) {
|
|
2194
2235
|
// update selected group based on selected anchor item
|
|
2195
|
-
for (
|
|
2196
|
-
this.oModel.setProperty(
|
|
2236
|
+
for (let i = 0; i < aGroups.length; i++) {
|
|
2237
|
+
this.oModel.setProperty(`/groups/${i}/isGroupSelected`, false);
|
|
2197
2238
|
}
|
|
2198
2239
|
|
|
2199
|
-
this.oModel.setProperty(
|
|
2240
|
+
this.oModel.setProperty(`/groups/${iSelectedGroup}/isGroupSelected`, true);
|
|
2200
2241
|
}
|
|
2201
2242
|
},
|
|
2202
2243
|
|
|
@@ -2205,15 +2246,15 @@ sap.ui.define([
|
|
|
2205
2246
|
return;
|
|
2206
2247
|
}
|
|
2207
2248
|
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2249
|
+
const aGroups = this.oModel.getProperty("/groups");
|
|
2250
|
+
let aLinks = [];
|
|
2251
|
+
let j;
|
|
2211
2252
|
|
|
2212
|
-
for (
|
|
2213
|
-
|
|
2214
|
-
|
|
2253
|
+
for (let i = 0; i < aGroups.length; i++) {
|
|
2254
|
+
const oGroup = aGroups[i];
|
|
2255
|
+
const aTiles = oGroup.tiles || [];
|
|
2215
2256
|
for (j = 0; j < aTiles.length; j++) {
|
|
2216
|
-
|
|
2257
|
+
const oTile = aTiles[j];
|
|
2217
2258
|
if (oTile.content.length === 0) {
|
|
2218
2259
|
this.getTileView(oTile, i);
|
|
2219
2260
|
}
|
|
@@ -2226,10 +2267,10 @@ sap.ui.define([
|
|
|
2226
2267
|
}
|
|
2227
2268
|
this.oModel.refresh(false);
|
|
2228
2269
|
|
|
2229
|
-
|
|
2270
|
+
const iSelectedGroupIndex = this.oModel.getProperty("/iSelectedGroup");
|
|
2230
2271
|
|
|
2231
2272
|
if (iSelectedGroupIndex) {
|
|
2232
|
-
setTimeout(
|
|
2273
|
+
setTimeout(() => {
|
|
2233
2274
|
Core.getEventBus().publish("launchpad", "scrollToGroup", {
|
|
2234
2275
|
groupId: aGroups[iSelectedGroupIndex].groupId
|
|
2235
2276
|
});
|
|
@@ -2238,12 +2279,12 @@ sap.ui.define([
|
|
|
2238
2279
|
},
|
|
2239
2280
|
|
|
2240
2281
|
getTileViewsFromArray: function (aRequestTileViews) {
|
|
2241
|
-
|
|
2282
|
+
const that = this;
|
|
2242
2283
|
|
|
2243
2284
|
if (aRequestTileViews.length === 0) {
|
|
2244
2285
|
return;
|
|
2245
2286
|
}
|
|
2246
|
-
aRequestTileViews.forEach(
|
|
2287
|
+
aRequestTileViews.forEach((oRequestTileView) => {
|
|
2247
2288
|
that.getTileView(oRequestTileView.oTile, oRequestTileView.iGroup);
|
|
2248
2289
|
});
|
|
2249
2290
|
// trigger to refresh binding.
|
|
@@ -2264,7 +2305,7 @@ sap.ui.define([
|
|
|
2264
2305
|
* @private
|
|
2265
2306
|
*/
|
|
2266
2307
|
getTileView: function (tileOrCard, groupPosition) {
|
|
2267
|
-
|
|
2308
|
+
const sType = this.oPageOperationAdapter.getTileType(tileOrCard.object);
|
|
2268
2309
|
|
|
2269
2310
|
if (this.oDashboardLoadingManager.isTileViewRequestIssued(tileOrCard)) {
|
|
2270
2311
|
// No need to get the tile view, the request was already issued.
|
|
@@ -2286,7 +2327,7 @@ sap.ui.define([
|
|
|
2286
2327
|
* @private
|
|
2287
2328
|
*/
|
|
2288
2329
|
_loadCardData: function (card) {
|
|
2289
|
-
|
|
2330
|
+
const oCard = Core.byId(card.controlId);
|
|
2290
2331
|
|
|
2291
2332
|
if (oCard && oCard.setManifest && this.isBlindLoading()) {
|
|
2292
2333
|
oCard.setManifest(card.manifest);
|
|
@@ -2308,14 +2349,14 @@ sap.ui.define([
|
|
|
2308
2349
|
* @private
|
|
2309
2350
|
*/
|
|
2310
2351
|
_loadTileData: function (tile, groupPosition, tileType) {
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2352
|
+
const that = this;
|
|
2353
|
+
const oDfd = this.oPageOperationAdapter.getTileView(tile);
|
|
2354
|
+
let oGroupLinks;
|
|
2355
|
+
const fUpdateModelWithView = this._addModelToTileViewUpdateQueue;
|
|
2356
|
+
let oTileView;
|
|
2357
|
+
let bNeedRefreshLinks = false;
|
|
2358
|
+
const sTileUUID = tile.uuid;
|
|
2359
|
+
let bSkipModelUpdate = false;
|
|
2319
2360
|
|
|
2320
2361
|
// The Deferred is already resolved for standard tiles.
|
|
2321
2362
|
// The goal is to update the model for standard tiles in one place in order to trigger invalidation once.
|
|
@@ -2325,7 +2366,7 @@ sap.ui.define([
|
|
|
2325
2366
|
}
|
|
2326
2367
|
|
|
2327
2368
|
// Register done and fail handlers for the getTileView API.
|
|
2328
|
-
oDfd.done(
|
|
2369
|
+
oDfd.done((oView) => {
|
|
2329
2370
|
// Set the value of the target when the view is valid and make sure it is not a custom tile
|
|
2330
2371
|
if (oView.oController && oView.oController.navigationTargetUrl && !tile.isCustomTile) {
|
|
2331
2372
|
tile.target = oView.oController.navigationTargetUrl;
|
|
@@ -2336,7 +2377,7 @@ sap.ui.define([
|
|
|
2336
2377
|
// In CDM content, the tile's view should have this function
|
|
2337
2378
|
if (oTileView.getComponentInstance) {
|
|
2338
2379
|
Measurement.average("FLP:getComponentInstance", "get info for navMode", "FLP1");
|
|
2339
|
-
|
|
2380
|
+
const oCompData = oTileView.getComponentInstance().getComponentData();
|
|
2340
2381
|
|
|
2341
2382
|
if (oCompData && oCompData.properties) {
|
|
2342
2383
|
tile.navigationMode = oCompData.properties.navigationMode;
|
|
@@ -2346,7 +2387,7 @@ sap.ui.define([
|
|
|
2346
2387
|
}
|
|
2347
2388
|
|
|
2348
2389
|
that.oDashboardLoadingManager.setTileResolved(tile);
|
|
2349
|
-
|
|
2390
|
+
const sMode = oView.getMode ? oView.getMode() : "ContentMode";
|
|
2350
2391
|
|
|
2351
2392
|
// If the tileType is link and the personalization is supported by the platform, the the link must support personalization
|
|
2352
2393
|
if (that.bLinkPersonalizationSupported && sMode === "LineMode") {
|
|
@@ -2354,13 +2395,13 @@ sap.ui.define([
|
|
|
2354
2395
|
that._attachLinkPressHandlers(oTileView);
|
|
2355
2396
|
|
|
2356
2397
|
if (groupPosition >= 0) {
|
|
2357
|
-
|
|
2398
|
+
const aGroups = that.oModel.getProperty("/groups");
|
|
2358
2399
|
|
|
2359
2400
|
if (aGroups[groupPosition]) {
|
|
2360
2401
|
tile.content = [oTileView];
|
|
2361
|
-
oGroupLinks = that.oModel.getProperty(
|
|
2362
|
-
that.oModel.setProperty(
|
|
2363
|
-
that.oModel.setProperty(
|
|
2402
|
+
oGroupLinks = that.oModel.getProperty(`/groups/${groupPosition}/links`);
|
|
2403
|
+
that.oModel.setProperty(`/groups/${groupPosition}/links`, []);
|
|
2404
|
+
that.oModel.setProperty(`/groups/${groupPosition}/links`, oGroupLinks);
|
|
2364
2405
|
}
|
|
2365
2406
|
}
|
|
2366
2407
|
} else if (that.isBlindLoading()) {
|
|
@@ -2377,8 +2418,8 @@ sap.ui.define([
|
|
|
2377
2418
|
|
|
2378
2419
|
if (that.isBlindLoading()) {
|
|
2379
2420
|
// in some cases tile size can be different then the initial value therefore we read and set the size again
|
|
2380
|
-
|
|
2381
|
-
|
|
2421
|
+
const sSize = that.oPageOperationAdapter.getTileSize(tile.object);
|
|
2422
|
+
const bLong = sSize === "1x2";
|
|
2382
2423
|
if (tile.long !== bLong) {
|
|
2383
2424
|
tile.long = bLong;
|
|
2384
2425
|
that.oModel.refresh(false);
|
|
@@ -2387,9 +2428,9 @@ sap.ui.define([
|
|
|
2387
2428
|
tile.content = [oTileView];
|
|
2388
2429
|
|
|
2389
2430
|
if (bNeedRefreshLinks) {
|
|
2390
|
-
oGroupLinks = that.oModel.getProperty(
|
|
2391
|
-
that.oModel.setProperty(
|
|
2392
|
-
that.oModel.setProperty(
|
|
2431
|
+
oGroupLinks = that.oModel.getProperty(`/groups/${groupPosition}/links`);
|
|
2432
|
+
that.oModel.setProperty(`/groups/${groupPosition}/links`, []);
|
|
2433
|
+
that.oModel.setProperty(`/groups/${groupPosition}/links`, oGroupLinks);
|
|
2393
2434
|
}
|
|
2394
2435
|
} else if (tile.content.length === 0) {
|
|
2395
2436
|
tile.content = [oTileView];
|
|
@@ -2399,7 +2440,7 @@ sap.ui.define([
|
|
|
2399
2440
|
}
|
|
2400
2441
|
});
|
|
2401
2442
|
|
|
2402
|
-
oDfd.fail(
|
|
2443
|
+
oDfd.fail(() => {
|
|
2403
2444
|
if (that.oPageOperationAdapter.getTileType(tile.object) === "link" && that.bLinkPersonalizationSupported) {
|
|
2404
2445
|
// In case call is synchronize we set the view with 'TileState' control with 'Failed' status
|
|
2405
2446
|
oTileView = that.oPageOperationAdapter.getFailedLinkView(tile);
|
|
@@ -2440,8 +2481,8 @@ sap.ui.define([
|
|
|
2440
2481
|
* @deprecated since 1.112. Deprecated together with the classic homepage.
|
|
2441
2482
|
*/
|
|
2442
2483
|
loadPersonalizedGroups: function () {
|
|
2443
|
-
|
|
2444
|
-
|
|
2484
|
+
const that = this;
|
|
2485
|
+
const oDeferred = new jQuery.Deferred();
|
|
2445
2486
|
|
|
2446
2487
|
if (this.bIsGroupsRequestPending) {
|
|
2447
2488
|
Log.info("loadPersonalizedGroups was skipped because there is already a pending request.");
|
|
@@ -2452,15 +2493,15 @@ sap.ui.define([
|
|
|
2452
2493
|
|
|
2453
2494
|
this.oServiceLoadingPromise
|
|
2454
2495
|
.then(that.loadLibraryForCardModuleIfNeeded)
|
|
2455
|
-
.then(
|
|
2496
|
+
.then(() => {
|
|
2456
2497
|
return that.oPageOperationAdapter.getPage();
|
|
2457
2498
|
})
|
|
2458
|
-
.then(
|
|
2499
|
+
.then((aGroups) => {
|
|
2459
2500
|
that._setGroupModel(aGroups);
|
|
2460
2501
|
that.bIsGroupsRequestPending = false;
|
|
2461
2502
|
oDeferred.resolve();
|
|
2462
2503
|
})
|
|
2463
|
-
.catch(
|
|
2504
|
+
.catch((vError) => {
|
|
2464
2505
|
Log.error("Loading of personalized groups failed.", vError, "sap.ushell.components.HomepageManager");
|
|
2465
2506
|
oMessagingHelper.showLocalizedError("fail_to_load_groups_msg");
|
|
2466
2507
|
that.bIsGroupsRequestPending = false;
|