@sapui5/sap.ushell 1.122.1 → 1.123.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell/.library +1 -1
  3. package/src/main/js/sap/ushell/Container.js +9 -1
  4. package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
  5. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
  6. package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
  7. package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
  8. package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
  9. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
  10. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
  11. package/src/main/js/sap/ushell/_URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
  12. package/src/main/js/sap/ushell/_URLTemplateProcessor/DependencyGraph.js +1 -1
  13. package/src/main/js/sap/ushell/_URLTemplateProcessor/Functions.js +1 -1
  14. package/src/main/js/sap/ushell/_URLTemplateProcessor/Resolvers.js +1 -1
  15. package/src/main/js/sap/ushell/_URLTemplateProcessor/TemplateParameterParser.js +1 -1
  16. package/src/main/js/sap/ushell/_URLTemplateProcessor/utils.js +1 -1
  17. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  18. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  19. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  20. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -1
  21. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
  22. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
  23. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  24. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
  25. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
  26. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
  27. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
  28. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
  29. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
  30. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
  31. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
  32. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -2
  33. package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
  34. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
  35. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
  36. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
  37. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
  38. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
  39. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
  40. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
  41. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  42. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  43. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +1 -1
  44. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
  46. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
  47. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
  48. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
  49. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
  50. package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
  51. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
  52. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
  53. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +1 -1
  54. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
  55. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
  56. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
  57. package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
  58. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
  59. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
  60. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
  61. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
  62. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
  63. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
  64. package/src/main/js/sap/ushell/api/workpage/Designtime.js +18 -0
  65. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +13 -2
  66. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +2 -2
  67. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
  68. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +18 -8
  69. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  70. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/logger.js +1 -1
  71. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/state.js +1 -1
  72. package/src/main/js/sap/ushell/bootstrap/cdm/cdm.constants.js +1 -1
  73. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  74. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +5 -1
  75. package/src/main/js/sap/ushell/bootstrap/common/common.util.js +27 -2
  76. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxConfig.json +0 -5
  77. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxSite.json +3 -112
  78. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +8 -1
  79. package/src/main/js/sap/ushell/components/_HeaderManager/AddHeadEndItemsStrategy.js +3 -0
  80. package/src/main/js/sap/ushell/components/_HeaderManager/ControlManager.js +1 -1
  81. package/src/main/js/sap/ushell/components/appfinder/Catalog.controller.js +2 -2
  82. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  83. package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +1 -2
  84. package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +1 -1
  85. package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
  86. package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +1 -1
  87. package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +1 -1
  88. package/src/main/js/sap/ushell/components/applicationIntegration/elements/model.js +1 -1
  89. package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
  90. package/src/main/js/sap/ushell/components/applicationIntegration/relatedShellElements/RelatedShellElements.js +1 -1
  91. package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +1 -1
  92. package/src/main/js/sap/ushell/components/contentFinder/Component.js +13 -2
  93. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +12 -5
  94. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  95. package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
  96. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  97. package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +0 -4
  98. package/src/main/js/sap/ushell/components/contentFinder/resources/resources.properties +2 -0
  99. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +159 -137
  100. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTree.view.xml +24 -0
  101. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +31 -0
  102. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +146 -0
  103. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +59 -0
  104. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifestAppSearch.json +50 -0
  105. package/src/main/js/sap/ushell/components/contentFinderStandalone/view/ContentFinderStandalone.view.xml +15 -0
  106. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  107. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  108. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
  109. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +1 -1
  110. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
  111. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  112. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  113. package/src/main/js/sap/ushell/components/pages/Component.js +1 -1
  114. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  115. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +1 -1
  116. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  117. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
  118. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  119. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  120. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +1 -1
  121. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  122. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +1 -1
  123. package/src/main/js/sap/ushell/components/shell/Notifications/Notifications.controller.js +0 -4
  124. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  125. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  126. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
  127. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  128. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  129. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
  130. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
  131. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +1 -1
  132. package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/LanguageRegionSelector.controller.js +1 -1
  133. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
  134. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
  135. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  136. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +1 -1
  137. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
  138. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1 -1
  139. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
  140. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
  141. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
  142. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
  143. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
  144. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
  145. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  146. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +1 -1
  147. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +1 -1
  148. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  149. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  150. package/src/main/js/sap/ushell/library.js +2 -1
  151. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  152. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +1 -1
  153. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
  154. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  155. package/src/main/js/sap/ushell/renderer/Renderer.js +44 -32
  156. package/src/main/js/sap/ushell/renderer/Shell.controller.js +2 -24
  157. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  158. package/src/main/js/sap/ushell/renderers/fiori2/Renderer.js +2 -1
  159. package/src/main/js/sap/ushell/services/AppConfiguration.js +26 -12
  160. package/src/main/js/sap/ushell/services/AppLifeCycle.js +154 -39
  161. package/src/main/js/sap/ushell/services/AppState.js +1 -1
  162. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  163. package/src/main/js/sap/ushell/services/BookmarkV2.js +104 -134
  164. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
  165. package/src/main/js/sap/ushell/services/CommonDataModel.js +1 -1
  166. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  167. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  168. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
  169. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +1 -1
  170. package/src/main/js/sap/ushell/services/DarkModeSupport.js +1 -1
  171. package/src/main/js/sap/ushell/services/Extension/FloatingContainer.js +1 -1
  172. package/src/main/js/sap/ushell/services/Extension/Footer.js +1 -1
  173. package/src/main/js/sap/ushell/services/Extension/Header.js +1 -1
  174. package/src/main/js/sap/ushell/services/Extension/Item.js +1 -1
  175. package/src/main/js/sap/ushell/services/Extension/SidePane.js +1 -1
  176. package/src/main/js/sap/ushell/services/Extension/ToolArea.js +1 -1
  177. package/src/main/js/sap/ushell/services/Extension.js +1 -1
  178. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +9 -2
  179. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
  180. package/src/main/js/sap/ushell/services/Menu.js +1 -1
  181. package/src/main/js/sap/ushell/services/Message.js +1 -1
  182. package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
  183. package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
  184. package/src/main/js/sap/ushell/services/Navigation.js +46 -9
  185. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  186. package/src/main/js/sap/ushell/services/NotificationsV2.js +141 -9
  187. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  188. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  189. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  190. package/src/main/js/sap/ushell/services/Pages.js +58 -16
  191. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  192. package/src/main/js/sap/ushell/services/PersonalizationV2/ContextContainer.js +1 -1
  193. package/src/main/js/sap/ushell/services/PersonalizationV2/VariantSetAdapter.js +1 -1
  194. package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
  195. package/src/main/js/sap/ushell/services/PluginManager.js +1 -1
  196. package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
  197. package/src/main/js/sap/ushell/services/Search.js +1 -1
  198. package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
  199. package/src/main/js/sap/ushell/services/SearchableContent.js +1 -1
  200. package/src/main/js/sap/ushell/services/ShellNavigation.js +1 -1
  201. package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
  202. package/src/main/js/sap/ushell/services/SpaceContent.js +38 -13
  203. package/src/main/js/sap/ushell/services/UITracer.js +1 -1
  204. package/src/main/js/sap/ushell/services/URLParsing.js +42 -20
  205. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  206. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  207. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +1 -1
  208. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
  209. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
  210. package/src/main/js/sap/ushell/services/UserInfo.js +17 -4
  211. package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
  212. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  213. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  214. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Formatter.js +1 -1
  215. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundIndex.js +1 -1
  216. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundProvider.js +1 -1
  217. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +1 -1
  218. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +1 -1
  219. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/StagedLogger.js +1 -1
  220. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/SystemContext.js +1 -1
  221. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Utils.js +1 -1
  222. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
  223. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +1 -1
  224. package/src/main/js/sap/ushell/services/_CommonDataModel/SiteConverter.js +1 -1
  225. package/src/main/js/sap/ushell/services/_CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +1 -1
  226. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
  227. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  228. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  229. package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
  230. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  231. package/src/main/js/sap/ushell/services/_PluginManager/Extensions.js +1 -1
  232. package/src/main/js/sap/ushell/services/_PluginManager/HeaderExtensions.js +1 -1
  233. package/src/main/js/sap/ushell/services/_PluginManager/MenuExtensions.js +1 -1
  234. package/src/main/js/sap/ushell/services/_Ui5ComponentLoader/utils.js +34 -5
  235. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
  236. package/src/main/js/sap/ushell/ui/AppContainer.js +44 -0
  237. package/src/main/js/sap/ushell/ui/appfinder/AppBoxInternal.js +3 -3
  238. package/src/main/js/sap/ushell/ui/appfinder/AppBoxInternalRenderer.js +103 -0
  239. package/src/main/js/sap/ushell/ui/appfinder/AppBoxRenderer.js +7 -98
  240. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
  241. package/src/main/js/sap/ushell/ui/launchpad/CatalogsContainer.js +5 -3
  242. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  243. package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
  244. package/src/main/js/sap/ushell/ui/launchpad/ViewPortState.js +2 -1
  245. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  246. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +1 -1
  247. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  248. package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
  249. package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
  250. package/src/main/js/sap/ushell/ui5service/_ShellUIService/shelluiservice.class.factory.js +30 -48
  251. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  252. package/src/main/js/sap/ushell/utils/tilecard/TileCard.js +342 -0
  253. package/src/main/js/sap/ushell/utils/tilecard/TileCardExtension.js +384 -0
  254. package/src/main/js/sap/ushell/utils/tilecard/resources/resources.properties +11 -0
  255. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +1 -1
  256. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +57 -4
  257. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +44 -17
  258. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  259. package/ui5.yaml +2 -0
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @fileOverview ContentFinder Component
4
4
  *
5
- * @version 1.122.1
5
+ * @version 1.123.0
6
6
  */
7
7
 
8
8
  sap.ui.define([
@@ -97,7 +97,8 @@ sap.ui.define([
97
97
  totalCount: 0,
98
98
  originalRestrictedVisualizations: [],
99
99
  restrictedVisualizations: []
100
- }
100
+ },
101
+ categoryTree: []
101
102
  };
102
103
 
103
104
  /**
@@ -192,6 +193,16 @@ sap.ui.define([
192
193
  this.getModel().setProperty("/widgetGallery/widgetGroups", aWidgetGroups);
193
194
  },
194
195
 
196
+ /**
197
+ * Sets the menu tree data for the Content Finder model.
198
+ * @param {object} aCategoryTree The category tree object.
199
+ * @experimental
200
+ * @private
201
+ */
202
+ setCategoryTree: function (aCategoryTree) {
203
+ this.getModel().setProperty("/categoryTree", aCategoryTree);
204
+ },
205
+
195
206
  /**
196
207
  * Fires the event to query for visualizations.
197
208
  *
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file AppSearch controller for AppSearch view
5
- * @version 1.122.1
5
+ * @version 1.123.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "./ContentFinderDialog.controller",
@@ -189,9 +189,6 @@ sap.ui.define([
189
189
  */
190
190
  onShowSelectedPressed: function (oEvent) {
191
191
  var bPressed = oEvent.getParameter("pressed");
192
- var sSearchTerm = bPressed ? "" : this.sCurrentSearchTerm;
193
-
194
- this.byId("appSearchField").setValue(sSearchTerm);
195
192
  this.toggleSelectionView(bPressed);
196
193
  },
197
194
 
@@ -202,6 +199,8 @@ sap.ui.define([
202
199
  * @since 1.121.0
203
200
  */
204
201
  toggleSelectionView: function (bActive) {
202
+ var sSearchTerm = bActive ? "" : this.sCurrentSearchTerm;
203
+ this.byId("appSearchField").setValue(sSearchTerm);
205
204
  var oModel = bActive ? this.oSelectionModel : this.oModel;
206
205
  oModel.setProperty("/appSearch/showSelectedPressed", bActive);
207
206
  this.byId("tiles").setModel(oModel);
@@ -210,7 +209,8 @@ sap.ui.define([
210
209
  _formatVisibilityIllustratedMessage: function (bVisualizationsLoaded, iTilesLength, iCardsLength, bShowSelectedPressed, iSelectedAppCount) {
211
210
  if (bVisualizationsLoaded) {
212
211
  if (bShowSelectedPressed && !iSelectedAppCount) {
213
- return true;
212
+ this.toggleSelectionView(!bShowSelectedPressed);
213
+ return false;
214
214
  }
215
215
  if ((iTilesLength === 0 || iCardsLength > 0) && (iCardsLength === 0 || iTilesLength > 0)) {
216
216
  return true;
@@ -220,6 +220,13 @@ sap.ui.define([
220
220
  return false;
221
221
  },
222
222
 
223
+ onTreeListItemPressed: function (oEvent) {
224
+ /**
225
+ * @TODO: implement
226
+ * Get the category id via: oEvent.getParameter("listItem").getBindingContext().getProperty("id")
227
+ */
228
+ },
229
+
223
230
  /**
224
231
  * Formats the accessibility description for the custom list item. This will be part of the string read out by the screen reader.
225
232
  *
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file Controller for ContentFinderDialog root view
5
- * @version 1.122.1
5
+ * @version 1.123.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "../model/formatter",
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @file Controller for WidgetGallery view
5
- * @version 1.122.1
5
+ * @version 1.123.0
6
6
  */
7
7
  sap.ui.define([
8
8
  "./ContentFinderDialog.controller"
@@ -3,7 +3,7 @@
3
3
  "sap.app": {
4
4
  "id": "sap.ushell.components.contentFinder",
5
5
  "applicationVersion": {
6
- "version": "1.122.1"
6
+ "version": "1.123.0"
7
7
  },
8
8
  "i18n": "./resources/resources.properties",
9
9
  "ach": "CA-FLP-FE-UI",
@@ -74,10 +74,6 @@ sap.ui.define([], function () {
74
74
  }
75
75
 
76
76
  //Search
77
- if (sSearchTerm && !bItemsAvailable) {
78
- sResultText = oResourceBundle.getText("ContentFinder.AppSearch.Title.NoSearchResult", [sSearchTerm]);
79
- }
80
-
81
77
  if (sSearchTerm && bItemsAvailable) {
82
78
  sResultText = oResourceBundle.getText("ContentFinder.AppSearch.Title.SearchResult", [sSearchTerm, iFilteredAppCount]);
83
79
  }
@@ -58,3 +58,5 @@ ContentFinder.AppSearch.Text.FieldEmpty=Not available
58
58
  ContentFinder.AppSearch.Button.Preview=Preview
59
59
  #XMSG
60
60
  ContentFinder.AppSearch.Message.Select=Select {0}
61
+ #XMSG
62
+ ContentFinder.CategoryTree.Search=Search by group, catalog or role name
@@ -8,144 +8,166 @@
8
8
  controllerName="sap.ushell.components.contentFinder.controller.AppSearch"
9
9
  id="contentFinderAppSearchView"
10
10
  height="100%">
11
- <!-- The container needs any fixed height (e.g. minFlexSize="1px") to calculate the content
12
- heights. -->
13
- <l:FixFlex
14
- id="contentFinderAppSearchLayout"
15
- minFlexSize="1px">
16
- <l:fixContent>
17
- <OverflowToolbar
18
- id="appSearchOverflowToolbar"
19
- asyncMode="false"
20
- style="Clear"
21
- class="contentFinderToolbar sapUiMediumMargin">
22
- <Title
23
- id="appBoxContainerTitle"
24
- titleStyle="H5"
25
- text="{
26
- parts: [
27
- '/activeNavigationTarget',
28
- '/appSearch/searchTerm',
29
- '/appSearch/showSelectedPressed',
30
- 'Selection>/appSearch/visualizations/tiles/length',
31
- '/appSearch/visualizations/tiles',
32
- '/appSearch/visualizations/cards',
33
- '/appSearch/restrictedVisualizations',
34
- '/appSearch/filteredAppCount',
35
- '/appSearch/totalCount'
36
- ], formatter: '.formatter.formatAppSearchTitle' }">
37
- <layoutData>
38
- <OverflowToolbarLayoutData
39
- minWidth="6rem"
40
- shrinkable="true"
41
- priority="High"/>
42
- </layoutData>
43
- </Title>
44
- <ToolbarSpacer/>
45
11
 
46
- <!-- Add 'search=".onSearch"' for server side searching -->
47
- <SearchField
48
- id="appSearchField"
49
- placeholder="{i18n>ContentFinder.AppSearch.SearchPlaceholder}"
50
- search=".onSearch">
51
- <layoutData>
52
- <OverflowToolbarLayoutData
53
- minWidth="6rem"
54
- maxWidth="13.75rem"
55
- shrinkable="true"
56
- priority="NeverOverflow"/>
57
- </layoutData>
58
- </SearchField>
59
- <ToggleButton
60
- id="showAllSelectedBtn"
61
- visible="{= ${/activeNavigationTarget} === ${/navigationTargets/appSearchTiles}}"
62
- pressed="{/appSearch/showSelectedPressed}"
63
- enabled="{= ${Selection>/appSearch/visualizations/tiles/length} > 0 || ${/appSearch/showSelectedPressed} }"
64
- icon="sap-icon://multi-select"
65
- tooltip="{= ${/appSearch/showSelectedPressed} ? ${i18n>ContentFinder.AppSearch.Button.Tooltip.ShowAll} : ${i18n>ContentFinder.AppSearch.Button.Tooltip.ShowSelected}}"
66
- press=".onShowSelectedPressed">
67
- <layoutData>
68
- <OverflowToolbarLayoutData
69
- shrinkable="false"
70
- priority="Low"/>
71
- </layoutData>
72
- </ToggleButton>
73
- </OverflowToolbar>
74
- </l:fixContent>
75
- <l:flexContent>
12
+ <SplitContainer id="contentFinderAppSearchSplitContainer" mode="{= !${/categoryTree}.length ? 'HideMode':'ShowHideMode'}" >
13
+ <masterPages>
14
+ <!-- Category Tree Menu -->
76
15
  <Page
77
- id="contentPage"
78
- showHeader="false"
79
- class="sapUiResponsiveContentPadding"
80
- busy="{= !${/appSearch/visualizationsLoaded}}">
81
- <f:GridList
82
- id="tiles"
83
- includeItemInSelection="true"
84
- mode="MultiSelect"
85
- growing="true"
86
- growingScrollToLoad="true"
87
- growingThreshold="{/appSearch/growingThreshold}"
88
- updateStarted=".onUpdateStarted"
89
- items="{/appSearch/visualizations/tiles}"
90
- selectionChange=".onAppBoxSelected"
91
- rememberSelections="false"
92
- visible="{= ${/activeNavigationTarget} === ${/navigationTargets/appSearchTiles} &amp;&amp; ${/appSearch/visualizations/tiles/length} > 0 }">
93
- <f:customLayout>
94
- <grid:GridResponsiveLayout containerQuery="true">
95
- <grid:layout>
96
- <grid:GridSettings
97
- gridTemplateColumns="repeat(auto-fill, 19.0625rem)"
98
- gridAutoRows="12.75rem"
99
- gridGap="1rem"/>
100
- </grid:layout>
101
- </grid:GridResponsiveLayout>
102
- </f:customLayout>
103
- <core:Fragment
104
- id="tilesBox"
105
- fragmentName="sap.ushell.components.contentFinder.view.AppSearchBox"
106
- type="XML"/>
107
- </f:GridList>
108
- <f:GridList
109
- id="cards"
110
- includeItemInSelection="true"
111
- mode="SingleSelectMaster"
112
- growing="true"
113
- growingScrollToLoad="true"
114
- growingThreshold="{/appSearch/growingThreshold}"
115
- updateStarted=".onUpdateStarted"
116
- items="{/appSearch/visualizations/cards}"
117
- selectionChange=".onAppBoxSelectedAndClose"
118
- rememberSelections="false"
119
- visible="{= ${/activeNavigationTarget} === ${/navigationTargets/appSearchCards} &amp;&amp; ${/appSearch/visualizations/cards/length} > 0 }">
120
- <f:customLayout>
121
- <grid:GridResponsiveLayout containerQuery="true">
122
- <grid:layout>
123
- <grid:GridSettings
124
- gridTemplateColumns="repeat(auto-fill, 19.0625rem)"
125
- gridAutoRows="12.75rem"
126
- gridGap="1rem"/>
127
- </grid:layout>
128
- </grid:GridResponsiveLayout>
129
- </f:customLayout>
130
- <core:Fragment
131
- id="cardsBox"
132
- fragmentName="sap.ushell.components.contentFinder.view.AppSearchBox"
133
- type="XML"/>
134
- </f:GridList>
135
- <IllustratedMessage
136
- id="illustratedMessageNoData"
137
- illustrationSize="IllustratedMessageSize.Auto"
138
- visible="{
139
- parts: [
140
- { path: '/appSearch/visualizationsLoaded' },
141
- { path: '/appSearch/visualizations/tiles/length' },
142
- { path: '/appSearch/visualizations/cards/length' },
143
- { path: '/appSearch/showSelectedPressed' },
144
- { path: 'Selection>/appSearch/visualizations/tiles/length' }
145
- ],
146
- formatter: '._formatVisibilityIllustratedMessage'}"
147
- illustrationType="{= ${/appSearch/searchTerm} ? 'sapIllus-SearchFolder' : 'sapIllus-Tent'}"/>
16
+ id="contentFinderAppSearchCategoryTreePage"
17
+ enableScrolling="false"
18
+ showHeader="false">
19
+ <mvc:XMLView
20
+ id="contentFinderAppSearchCategoryTreeView"
21
+ async="true"
22
+ height="100%"
23
+ viewName="sap.ushell.components.contentFinder.view.AppSearchCategoryTree" />
148
24
  </Page>
149
- </l:flexContent>
150
- </l:FixFlex>
25
+ </masterPages>
26
+ <detailPages>
27
+ <Page
28
+ id="contentFinderAppSearchDetailPage"
29
+ enableScrolling="false"
30
+ showHeader="false">
31
+ <!-- The container needs any fixed height (e.g. minFlexSize="1px") to calculate the content heights. -->
32
+ <l:FixFlex
33
+ id="contentFinderAppSearchLayout"
34
+ minFlexSize="1px">
35
+ <l:fixContent>
36
+ <OverflowToolbar
37
+ id="appSearchOverflowToolbar"
38
+ asyncMode="false"
39
+ style="Clear"
40
+ class="contentFinderToolbar sapUiMediumMargin">
41
+ <Title
42
+ id="appBoxContainerTitle"
43
+ titleStyle="H5"
44
+ text="{
45
+ parts: [
46
+ '/activeNavigationTarget',
47
+ '/appSearch/searchTerm',
48
+ '/appSearch/showSelectedPressed',
49
+ 'Selection>/appSearch/visualizations/tiles/length',
50
+ '/appSearch/visualizations/tiles',
51
+ '/appSearch/visualizations/cards',
52
+ '/appSearch/restrictedVisualizations',
53
+ '/appSearch/filteredAppCount',
54
+ '/appSearch/totalCount'
55
+ ], formatter: '.formatter.formatAppSearchTitle' }">
56
+ <layoutData>
57
+ <OverflowToolbarLayoutData
58
+ minWidth="6rem"
59
+ shrinkable="true"
60
+ priority="High"/>
61
+ </layoutData>
62
+ </Title>
63
+ <ToolbarSpacer/>
64
+
65
+ <!-- Add 'search=".onSearch"' for server side searching -->
66
+ <SearchField
67
+ id="appSearchField"
68
+ placeholder="{i18n>ContentFinder.AppSearch.SearchPlaceholder}"
69
+ search=".onSearch">
70
+ <layoutData>
71
+ <OverflowToolbarLayoutData
72
+ minWidth="6rem"
73
+ maxWidth="13.75rem"
74
+ shrinkable="true"
75
+ priority="NeverOverflow"/>
76
+ </layoutData>
77
+ </SearchField>
78
+ <ToggleButton
79
+ id="showAllSelectedBtn"
80
+ visible="{= ${/activeNavigationTarget} === ${/navigationTargets/appSearchTiles}}"
81
+ pressed="{/appSearch/showSelectedPressed}"
82
+ enabled="{= ${Selection>/appSearch/visualizations/tiles/length} > 0 || ${/appSearch/showSelectedPressed} }"
83
+ icon="sap-icon://multi-select"
84
+ tooltip="{= ${/appSearch/showSelectedPressed} ? ${i18n>ContentFinder.AppSearch.Button.Tooltip.ShowAll} : ${i18n>ContentFinder.AppSearch.Button.Tooltip.ShowSelected}}"
85
+ press=".onShowSelectedPressed">
86
+ <layoutData>
87
+ <OverflowToolbarLayoutData
88
+ shrinkable="false"
89
+ priority="Low"/>
90
+ </layoutData>
91
+ </ToggleButton>
92
+ </OverflowToolbar>
93
+ </l:fixContent>
94
+ <l:flexContent>
95
+ <Page
96
+ id="contentPage"
97
+ showHeader="false"
98
+ class="sapUiResponsiveContentPadding"
99
+ busy="{= !${/appSearch/visualizationsLoaded}}">
100
+ <f:GridList
101
+ id="tiles"
102
+ includeItemInSelection="true"
103
+ mode="MultiSelect"
104
+ growing="true"
105
+ growingScrollToLoad="true"
106
+ growingThreshold="{/appSearch/growingThreshold}"
107
+ updateStarted=".onUpdateStarted"
108
+ items="{/appSearch/visualizations/tiles}"
109
+ selectionChange=".onAppBoxSelected"
110
+ rememberSelections="false"
111
+ visible="{= ${/activeNavigationTarget} === ${/navigationTargets/appSearchTiles} &amp;&amp; ${/appSearch/visualizations/tiles/length} > 0 }">
112
+ <f:customLayout>
113
+ <grid:GridResponsiveLayout containerQuery="true">
114
+ <grid:layout>
115
+ <grid:GridSettings
116
+ gridTemplateColumns="repeat(auto-fill, 19.0625rem)"
117
+ gridAutoRows="12.75rem"
118
+ gridGap="1rem"/>
119
+ </grid:layout>
120
+ </grid:GridResponsiveLayout>
121
+ </f:customLayout>
122
+ <core:Fragment
123
+ id="tilesBox"
124
+ fragmentName="sap.ushell.components.contentFinder.view.AppSearchBox"
125
+ type="XML"/>
126
+ </f:GridList>
127
+ <f:GridList
128
+ id="cards"
129
+ includeItemInSelection="true"
130
+ mode="SingleSelectMaster"
131
+ growing="true"
132
+ growingScrollToLoad="true"
133
+ growingThreshold="{/appSearch/growingThreshold}"
134
+ updateStarted=".onUpdateStarted"
135
+ items="{/appSearch/visualizations/cards}"
136
+ selectionChange=".onAppBoxSelectedAndClose"
137
+ rememberSelections="false"
138
+ visible="{= ${/activeNavigationTarget} === ${/navigationTargets/appSearchCards} &amp;&amp; ${/appSearch/visualizations/cards/length} > 0 }">
139
+ <f:customLayout>
140
+ <grid:GridResponsiveLayout containerQuery="true">
141
+ <grid:layout>
142
+ <grid:GridSettings
143
+ gridTemplateColumns="repeat(auto-fill, 19.0625rem)"
144
+ gridAutoRows="12.75rem"
145
+ gridGap="1rem"/>
146
+ </grid:layout>
147
+ </grid:GridResponsiveLayout>
148
+ </f:customLayout>
149
+ <core:Fragment
150
+ id="cardsBox"
151
+ fragmentName="sap.ushell.components.contentFinder.view.AppSearchBox"
152
+ type="XML"/>
153
+ </f:GridList>
154
+ <IllustratedMessage
155
+ id="illustratedMessageNoData"
156
+ illustrationSize="IllustratedMessageSize.Auto"
157
+ visible="{
158
+ parts: [
159
+ { path: '/appSearch/visualizationsLoaded' },
160
+ { path: '/appSearch/visualizations/tiles/length' },
161
+ { path: '/appSearch/visualizations/cards/length' },
162
+ { path: '/appSearch/showSelectedPressed' },
163
+ { path: 'Selection>/appSearch/visualizations/tiles/length' }
164
+ ],
165
+ formatter: '._formatVisibilityIllustratedMessage'}"
166
+ illustrationType="{= ${/appSearch/searchTerm} ? 'sapIllus-SearchFolder' : 'sapIllus-Tent'}"/>
167
+ </Page>
168
+ </l:flexContent>
169
+ </l:FixFlex>
170
+ </Page>
171
+ </detailPages>
172
+ </SplitContainer>
151
173
  </mvc:View>
@@ -0,0 +1,24 @@
1
+ <mvc:XMLView
2
+ xmlns="sap.m"
3
+ xmlns:mvc="sap.ui.core.mvc"
4
+ controllerName="sap.ushell.components.contentFinder.controller.AppSearch">
5
+ <Tree
6
+ id="CategoryTree"
7
+ sticky="HeaderToolbar"
8
+ mode="SingleSelectMaster"
9
+ selectionChange=".onTreeListItemPressed"
10
+ items="{/categoryTree}">
11
+ <headerToolbar>
12
+ <Toolbar>
13
+ <SearchField
14
+ id="CategorySearch"
15
+ placeholder="{i18n>ContentFinder.CategoryTree.Search}"
16
+ width="100%"
17
+ liveChange=".onCatalogSearch" />
18
+ </Toolbar>
19
+ </headerToolbar>
20
+ <items>
21
+ <StandardTreeItem title="{title}" type="{type}" />
22
+ </items>
23
+ </Tree>
24
+ </mvc:XMLView>
@@ -0,0 +1,31 @@
1
+ //Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
+ /**
3
+ * @fileOverview ContentFinder standalone Component
4
+ *
5
+ * @version 1.123.0
6
+ */
7
+
8
+ sap.ui.define([
9
+ "sap/ushell/components/contentFinder/Component"
10
+ ], function (Component) {
11
+ "use strict";
12
+
13
+ /**
14
+ * Component of the ContentFinder standalone view.
15
+ *
16
+ * @param {string} sId Component id.
17
+ * @param {object} mSettings Optional map for component settings.
18
+ * @class
19
+ * @extends sap.ui.core.UIComponent
20
+ * @private
21
+ * @since 1.123.0
22
+ * @alias sap.ushell.components.contentFinderStandalone.Component
23
+ */
24
+ return Component.extend("sap.ushell.components.contentFinderStandalone.Component",
25
+ /** @lends sap.ushell.components.contentFinderStandalone.Component.prototype */{
26
+ metadata: {
27
+ manifest: "json",
28
+ library: "sap.ushell"
29
+ }
30
+ });
31
+ });
@@ -0,0 +1,146 @@
1
+ // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
+
3
+ /**
4
+ * @file Controller for ContentFinderDialog standalone root view
5
+ * @version 1.123.0
6
+ */
7
+ sap.ui.define([
8
+ "sap/ui/core/mvc/Controller",
9
+ "sap/ushell/utils/workpage/WorkPageService",
10
+ "sap/ushell/EventHub"
11
+ ], function (
12
+ Controller,
13
+ WorkPageService,
14
+ EventHub
15
+ ) {
16
+ "use strict";
17
+
18
+ /**
19
+ * @alias sap.ushell.components.contentFinderStandalone.controller.ContentFinderStandalone
20
+ * @class
21
+ * @classdesc Controller of the standalone root view.
22
+ *
23
+ * @param {string} sId Controller id.
24
+ * @param {object} oParams Controller parameters.
25
+ *
26
+ * @extends sap.ui.core.mvc.Controller
27
+ *
28
+ * @since 1.123.0
29
+ * @private
30
+ */
31
+ return Controller.extend("sap.ushell.components.contentFinderStandalone.controller.ContentFinderStandalone",
32
+ /** @lends sap.ushell.components.contentFinderStandalone.controller.ContentFinderStandalone.prototype */{
33
+
34
+ /**
35
+ * The init function called after the view was initialized.
36
+ *
37
+ * @since 1.123.0
38
+ * @private
39
+ */
40
+ onInit: function () {
41
+ const oAppSearchComponentContainer = this.getView().byId("appSearchComponentContainer");
42
+ const sUrlAppSearchManifest = sap.ui.require.toUrl("sap/ushell/components/contentFinderStandalone/manifestAppSearch.json");
43
+ oAppSearchComponentContainer.setManifest(sUrlAppSearchManifest);
44
+
45
+ this.oWorkPageService = new WorkPageService();
46
+ },
47
+
48
+ /**
49
+ * Called when the appSearch component was created.
50
+ * Attaches the required event handling.
51
+ *
52
+ * @since 1.123.0
53
+ * @private
54
+ * @param {sap.base.Event} oEvent The 'componentCreated' event.
55
+ */
56
+ appSearchComponentCreated: function (oEvent) {
57
+ this.oComponent = oEvent.getParameter("component");
58
+
59
+ // Required to load the core-ext bundles to enable menubar, usersettings, search, ...
60
+ EventHub.emit("CenterViewPointContentRendered");
61
+
62
+ this.oComponent.attachVisualizationFilterApplied(this._onVisualizationFilterApplied, this);
63
+ this.oComponent.setRestrictedMode(true);
64
+ this.oComponent.getModel().setProperty("/activeNavigationTarget", "appSearch_tiles");
65
+ this.oComponent.queryVisualizations(0);
66
+ },
67
+
68
+ /**
69
+ * Called when a filter action was performed in the Content Finder, e.g. search, filter by type, catalog, etc.
70
+ *
71
+ * @since 1.123.0
72
+ * @param {sap.base.Event} oEvent The 'visualizationFilterApplied' event
73
+ * @private
74
+ */
75
+ _onVisualizationFilterApplied: async function (oEvent) {
76
+ const oFilterParams = this._transformFilterParams(oEvent.getParameters());
77
+ const oVisualizationData = await this.oWorkPageService.loadVisualizations(oFilterParams);
78
+ this.oComponent.setVisualizationData(oVisualizationData);
79
+ },
80
+
81
+ /**
82
+ * Transforms the filter parameters received by the ContentFinder to a format required by the graphql API.
83
+ *
84
+ * @since 1.123.0
85
+ * @param {object} oParams The ContentFinder filter parameters.
86
+ * @returns {{top: int, skip: int, filter: object[]}} The filter parameters in graphql API format.
87
+ * @private
88
+ */
89
+ _transformFilterParams: function (oParams) {
90
+ const iTop = oParams?.pagination?.top;
91
+ const iSkip = oParams?.pagination?.skip;
92
+ const sSearchTerm = oParams?.search;
93
+ const aTypes = oParams?.types || [];
94
+ const aExpandedTypes = aTypes.map((type) => ({ eq: type }));
95
+ const oSearchFilter = sSearchTerm
96
+ ? {
97
+ type: aExpandedTypes,
98
+ descriptor: [
99
+ {
100
+ conditions: [
101
+ {
102
+ propertyPath: "/sap.app/title",
103
+ stringFilter: [{ containsIgnoreCase: sSearchTerm }]
104
+ }
105
+ ]
106
+ },
107
+ {
108
+ conditions: [
109
+ {
110
+ propertyPath: "/sap.app/subTitle",
111
+ stringFilter: [{ containsIgnoreCase: sSearchTerm }]
112
+ }
113
+ ]
114
+ },
115
+ {
116
+ conditions: [
117
+ {
118
+ propertyPath: "/sap.app/info",
119
+ stringFilter: [{ containsIgnoreCase: sSearchTerm }]
120
+ }
121
+ ]
122
+ },
123
+ {
124
+ conditions: [
125
+ {
126
+ propertyPath: "/sap.fiori/registrationIds",
127
+ anyFilter: [
128
+ {
129
+ conditions: [
130
+ {
131
+ stringFilter: [{ containsIgnoreCase: sSearchTerm }]
132
+ }
133
+ ]
134
+ }
135
+ ]
136
+ }
137
+ ]
138
+ }
139
+ ]
140
+ }
141
+ : { type: aExpandedTypes };
142
+
143
+ return { top: iTop, skip: iSkip, filter: [oSearchFilter] };
144
+ }
145
+ });
146
+ });