@sapui5/sap.ushell 1.136.3 → 1.138.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 (886) hide show
  1. package/package.json +2 -2
  2. package/src/main/js/sap/ushell/.library +1 -1
  3. package/src/main/js/sap/ushell/AppInfoParameters.js +4 -5
  4. package/src/main/js/sap/ushell/ApplicationType/guiResolution.js +677 -695
  5. package/src/main/js/sap/ushell/ApplicationType/systemAlias.js +612 -623
  6. package/src/main/js/sap/ushell/ApplicationType/ui5Resolution.js +14 -16
  7. package/src/main/js/sap/ushell/ApplicationType/urlResolution.js +19 -21
  8. package/src/main/js/sap/ushell/ApplicationType/urlTemplateResolution.js +486 -468
  9. package/src/main/js/sap/ushell/ApplicationType/utils.js +46 -46
  10. package/src/main/js/sap/ushell/ApplicationType/wcfResolution.js +24 -29
  11. package/src/main/js/sap/ushell/ApplicationType/wdaResolution.js +47 -55
  12. package/src/main/js/sap/ushell/ApplicationType.js +34 -34
  13. package/src/main/js/sap/ushell/Config/utils.js +45 -45
  14. package/src/main/js/sap/ushell/Config.js +4 -4
  15. package/src/main/js/sap/ushell/Container.js +359 -357
  16. package/src/main/js/sap/ushell/EventHub.js +216 -212
  17. package/src/main/js/sap/ushell/Fiori20Adapter.js +59 -98
  18. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +23 -26
  19. package/src/main/js/sap/ushell/Layout.js +264 -291
  20. package/src/main/js/sap/ushell/NWBCInterface.js +8 -8
  21. package/src/main/js/sap/ushell/SessionHandler.js +8 -8
  22. package/src/main/js/sap/ushell/System.js +6 -6
  23. package/src/main/js/sap/ushell/TechnicalParameters.js +95 -96
  24. package/src/main/js/sap/ushell/UI5ComponentType.js +1 -1
  25. package/src/main/js/sap/ushell/UIActions.js +189 -188
  26. package/src/main/js/sap/ushell/URLTemplateProcessor/DefinitionParameterSetBuilder.js +21 -24
  27. package/src/main/js/sap/ushell/URLTemplateProcessor/DependencyGraph.js +29 -29
  28. package/src/main/js/sap/ushell/URLTemplateProcessor/Functions.js +96 -96
  29. package/src/main/js/sap/ushell/URLTemplateProcessor/Resolvers.js +58 -55
  30. package/src/main/js/sap/ushell/URLTemplateProcessor/TemplateParameterParser.js +201 -200
  31. package/src/main/js/sap/ushell/URLTemplateProcessor/utils.js +8 -8
  32. package/src/main/js/sap/ushell/URLTemplateProcessor.js +65 -65
  33. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +30 -33
  34. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +30 -43
  35. package/src/main/js/sap/ushell/User.js +114 -116
  36. package/src/main/js/sap/ushell/UserActivityLog.js +63 -63
  37. package/src/main/js/sap/ushell/adapters/AppVariantPersonalizationAdapter.js +46 -47
  38. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +34 -34
  39. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +56 -57
  40. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +3 -4
  41. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +144 -146
  42. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +569 -602
  43. package/src/main/js/sap/ushell/adapters/cdm/MenuAdapter.js +25 -25
  44. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +120 -119
  45. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +2 -2
  46. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +3 -3
  47. package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegion.controller.js +57 -53
  48. package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegion.view.xml +5 -2
  49. package/src/main/js/sap/ushell/adapters/cdm/Settings/UserLanguageAndRegion/UserLanguageAndRegionEntry.js +6 -6
  50. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +2 -3
  51. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +21 -21
  52. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +2 -2
  53. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +28 -37
  54. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +89 -90
  55. package/src/main/js/sap/ushell/adapters/cdm/_Personalization/internals.js +179 -190
  56. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +12 -12
  57. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +16 -17
  58. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +144 -151
  59. package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +527 -526
  60. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +3 -3
  61. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +2 -2
  62. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +6 -6
  63. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +3 -4
  64. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +22 -28
  65. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +9 -9
  66. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +27 -27
  67. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +15 -18
  68. package/src/main/js/sap/ushell/adapters/cdm/v3/utilsCdm.js +67 -67
  69. package/src/main/js/sap/ushell/adapters/cep/MenuAdapter.js +17 -20
  70. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +3 -3
  71. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +25 -25
  72. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +42 -43
  73. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +45 -45
  74. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +29 -29
  75. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +41 -37
  76. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +25 -28
  77. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +70 -72
  78. package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +450 -474
  79. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +3 -3
  80. package/src/main/js/sap/ushell/adapters/local/MenuAdapter.js +20 -22
  81. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +3 -3
  82. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +44 -43
  83. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +12 -12
  84. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +16 -16
  85. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +19 -17
  86. package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +3 -3
  87. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +5 -6
  88. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +10 -10
  89. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +5 -5
  90. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +2 -3
  91. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +26 -26
  92. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +28 -29
  93. package/src/main/js/sap/ushell/api/BootstrapObserver.js +2 -3
  94. package/src/main/js/sap/ushell/api/Copilot.js +2 -4
  95. package/src/main/js/sap/ushell/api/DWS.js +2 -3
  96. package/src/main/js/sap/ushell/api/Inbox.js +2 -3
  97. package/src/main/js/sap/ushell/api/NewExperience/CustomOverflowListItem.js +2 -3
  98. package/src/main/js/sap/ushell/api/NewExperience.js +8 -8
  99. package/src/main/js/sap/ushell/api/RTA.js +27 -59
  100. package/src/main/js/sap/ushell/api/S4MyHome.js +3 -3
  101. package/src/main/js/sap/ushell/api/SAPBusinessClient.js +6 -36
  102. package/src/main/js/sap/ushell/api/common/ComponentInstantiation.js +5 -8
  103. package/src/main/js/sap/ushell/api/workpage/Designtime.js +2 -3
  104. package/src/main/js/sap/ushell/api/workpage/Runtime.js +2 -4
  105. package/src/main/js/sap/ushell/appIntegration/AppLifeCycle/KeepAliveMode.js +2 -2
  106. package/src/main/js/sap/ushell/appIntegration/AppLifeCycle.js +69 -88
  107. package/src/main/js/sap/ushell/appIntegration/ApplicationContainer.js +2 -4
  108. package/src/main/js/sap/ushell/appIntegration/ApplicationContainerCache.js +9 -9
  109. package/src/main/js/sap/ushell/appIntegration/ApplicationContainerRenderer.js +0 -1
  110. package/src/main/js/sap/ushell/appIntegration/ApplicationHandle.js +2 -2
  111. package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainer.js +1 -3
  112. package/src/main/js/sap/ushell/appIntegration/IframeApplicationContainerRenderer.js +2 -4
  113. package/src/main/js/sap/ushell/appIntegration/KeepAliveApps.js +6 -6
  114. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/AppruntimeHandler.js +7 -7
  115. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ExtensionItems.js +2 -2
  116. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/LifecycleHandler.js +58 -59
  117. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/MessageBrokerHandler.js +2 -3
  118. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/NWBCHandler.js +2 -2
  119. package/src/main/js/sap/ushell/appIntegration/PostMessageManager/ServiceHandler.js +91 -91
  120. package/src/main/js/sap/ushell/appIntegration/UI5ApplicationContainerRenderer.js +0 -1
  121. package/src/main/js/sap/ushell/appIntegration/contracts/EmbeddedUI5Handler.js +3 -4
  122. package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV1Handler.js +3 -3
  123. package/src/main/js/sap/ushell/appIntegration/contracts/StatefulContainerV2Handler.js +1 -2
  124. package/src/main/js/sap/ushell/appRuntime/neo/AppInfoService.js +85 -74
  125. package/src/main/js/sap/ushell/appRuntime/neo/AppRuntimeNeo.js +2 -2
  126. package/src/main/js/sap/ushell/appRuntime/neo/ProxyAppUtils.js +8 -9
  127. package/src/main/js/sap/ushell/appRuntime/ui5/AppCommunicationMgr.js +57 -57
  128. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +660 -662
  129. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntimeContext.js +14 -14
  130. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntimeService.js +11 -2
  131. package/src/main/js/sap/ushell/appRuntime/ui5/SessionHandlerAgent.js +21 -25
  132. package/src/main/js/sap/ushell/appRuntime/ui5/performance/FesrEnhancer.js +11 -5
  133. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/AppLifeCycleUtils.js +31 -31
  134. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/BaseRTAPluginStatus.js +9 -10
  135. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/CheckConditions.js +56 -56
  136. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Renderer.js +34 -34
  137. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Trigger.js +222 -249
  138. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/rtaAgent/Component.js +213 -207
  139. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/rtaShell/Component.js +121 -129
  140. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/Component.js +19 -19
  141. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/AccessKeysAgent.js +9 -9
  142. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/Renderer.js +84 -29
  143. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +34 -34
  144. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +12 -12
  145. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +7 -3
  146. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +127 -102
  147. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +11 -6
  148. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +35 -29
  149. package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +30 -26
  150. package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +8 -3
  151. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +26 -26
  152. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +41 -38
  153. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +4 -4
  154. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +9 -23
  155. package/src/main/js/sap/ushell/appRuntime/ui5/services/FlpLaunchPage.js +3 -3
  156. package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +3 -3
  157. package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +7 -3
  158. package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +16 -17
  159. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +21 -17
  160. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +22 -17
  161. package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +31 -28
  162. package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +4 -4
  163. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +10 -6
  164. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +10 -6
  165. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +9 -9
  166. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserDefaultParameters.js +1 -1
  167. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +10 -6
  168. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/ContainerAdapter.js +40 -43
  169. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/EmptyAdapter.js +6 -6
  170. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +2 -3
  171. package/src/main/js/sap/ushell/appRuntime/ui5/ui/UIProxy.js +4 -4
  172. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/EventProcessor.js +9 -9
  173. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/FLPLoader.js +8 -9
  174. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/FLPScheduler.js +40 -42
  175. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/LoadingConfiguration.json +1 -1
  176. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/StepConfiguration.json +1 -6
  177. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/logger.js +13 -13
  178. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent/state.js +19 -19
  179. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent.js +23 -32
  180. package/src/main/js/sap/ushell/bootstrap/cdm/cdm-def-dev.js +3 -4
  181. package/src/main/js/sap/ushell/bootstrap/cdm/cdm-def-loader.js +1 -1
  182. package/src/main/js/sap/ushell/bootstrap/cdm/cdm-def.js +3 -3
  183. package/src/main/js/sap/ushell/bootstrap/cdm/cdm.boot.task.js +3 -3
  184. package/src/main/js/sap/ushell/bootstrap/cdm/cdm.constants.js +5 -4
  185. package/src/main/js/sap/ushell/bootstrap/cdm.js +11 -12
  186. package/src/main/js/sap/ushell/bootstrap/common/common.boot.path.js +1 -1
  187. package/src/main/js/sap/ushell/bootstrap/common/common.boot.script.js +2 -2
  188. package/src/main/js/sap/ushell/bootstrap/common/common.boot.task.js +3 -3
  189. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.extractLibs.js +1 -2
  190. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5.js +13 -13
  191. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +9 -9
  192. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5language.js +3 -3
  193. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5theme.js +13 -15
  194. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ushell.js +4 -9
  195. package/src/main/js/sap/ushell/bootstrap/common/common.constants.js +1 -1
  196. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +0 -13
  197. package/src/main/js/sap/ushell/bootstrap/common/common.debug.mode.js +3 -3
  198. package/src/main/js/sap/ushell/bootstrap/common/common.load.bootstrapExtension.js +3 -4
  199. package/src/main/js/sap/ushell/bootstrap/common/common.load.core-min.js +5 -7
  200. package/src/main/js/sap/ushell/bootstrap/common/common.load.launchpad.js +6 -8
  201. package/src/main/js/sap/ushell/bootstrap/common/common.load.model.js +6 -6
  202. package/src/main/js/sap/ushell/bootstrap/common/common.load.script.js +3 -3
  203. package/src/main/js/sap/ushell/bootstrap/common/common.override.registermodulepath.js +37 -38
  204. package/src/main/js/sap/ushell/bootstrap/common/common.read.metatags.js +6 -6
  205. package/src/main/js/sap/ushell/bootstrap/common/common.read.ui5theme.from.config.js +11 -11
  206. package/src/main/js/sap/ushell/bootstrap/common/common.read.ushell.config.from.url.js +22 -25
  207. package/src/main/js/sap/ushell/bootstrap/common/common.util.js +10 -12
  208. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandbox.js +11 -10
  209. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxBootTask.js +1 -1
  210. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxConfig.json +8 -24
  211. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +13 -13
  212. package/src/main/js/sap/ushell/bootstrap/ui5loader-config.js +7 -7
  213. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  214. package/src/main/js/sap/ushell/components/cards/Card.controller.js +2 -2
  215. package/src/main/js/sap/ushell/components/cepsearchresult/app/Component.js +57 -30
  216. package/src/main/js/sap/ushell/components/cepsearchresult/app/Main.controller.js +330 -312
  217. package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Component.js +171 -154
  218. package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Config.js +236 -233
  219. package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/Extension.js +35 -33
  220. package/src/main/js/sap/ushell/components/cepsearchresult/app/cards/searchresultwidget/manifest.json +4 -1
  221. package/src/main/js/sap/ushell/components/cepsearchresult/app/manifest.json +4 -6
  222. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/AdvancedFormatters.js +64 -60
  223. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/Edition.js +139 -141
  224. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/EditionAdvanced.js +8 -9
  225. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/EditionStandard.js +4 -4
  226. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/appendStyleVars.js +37 -34
  227. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.js +694 -646
  228. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Highlighter.js +220 -223
  229. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Paginator.css +2 -2
  230. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Paginator.js +258 -225
  231. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/All.js +58 -49
  232. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Application.js +200 -203
  233. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Event.js +129 -131
  234. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/People.js +91 -92
  235. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Workpage.js +18 -18
  236. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n.properties +5 -0
  237. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ar.properties +3 -0
  238. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_bg.properties +3 -0
  239. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ca.properties +3 -0
  240. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_cnr.properties +3 -0
  241. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_cs.properties +3 -0
  242. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_cy.properties +3 -0
  243. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_da.properties +3 -0
  244. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_de.properties +3 -0
  245. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_el.properties +3 -0
  246. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_en.properties +3 -0
  247. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_en_GB.properties +3 -0
  248. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_en_US_saprigi.properties +3 -0
  249. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_es.properties +3 -0
  250. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_es_MX.properties +3 -0
  251. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_et.properties +3 -0
  252. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_fi.properties +3 -0
  253. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_fr.properties +3 -0
  254. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_fr_CA.properties +3 -0
  255. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_hi.properties +3 -0
  256. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_hr.properties +3 -0
  257. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_hu.properties +3 -0
  258. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_id.properties +3 -0
  259. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_it.properties +3 -0
  260. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_iw.properties +3 -0
  261. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ja.properties +3 -0
  262. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_kk.properties +3 -0
  263. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ko.properties +3 -0
  264. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_lt.properties +3 -0
  265. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_lv.properties +3 -0
  266. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_mk.properties +3 -0
  267. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ms.properties +3 -0
  268. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_nl.properties +3 -0
  269. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_no.properties +3 -0
  270. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_pl.properties +3 -0
  271. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_pt.properties +3 -0
  272. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_pt_PT.properties +3 -0
  273. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ro.properties +3 -0
  274. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_ru.properties +3 -0
  275. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sh.properties +3 -0
  276. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sk.properties +3 -0
  277. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sl.properties +3 -0
  278. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sr.properties +3 -0
  279. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_sv.properties +3 -0
  280. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_th.properties +3 -0
  281. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_tr.properties +3 -0
  282. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_uk.properties +3 -0
  283. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_vi.properties +3 -0
  284. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_zh_CN.properties +3 -0
  285. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/i18n/i18n_zh_TW.properties +3 -0
  286. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/resources.js +30 -0
  287. package/src/main/js/sap/ushell/components/contentFinder/CatalogService.js +3 -3
  288. package/src/main/js/sap/ushell/components/contentFinder/Component.js +34 -15
  289. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +22 -12
  290. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +4 -5
  291. package/src/main/js/sap/ushell/components/contentFinder/dialog/Component.js +26 -5
  292. package/src/main/js/sap/ushell/components/contentFinder/dialog/manifest.json +5 -2
  293. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +5 -7
  294. package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +22 -8
  295. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +6 -5
  296. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchBox.fragment.xml +1 -1
  297. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearchCategoryTreeTable.fragment.xml +10 -4
  298. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +31 -10
  299. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +214 -214
  300. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +6 -9
  301. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  302. package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewer.js +6 -6
  303. package/src/main/js/sap/ushell/components/factsheet/factory/ThingInspector.js +4 -4
  304. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  305. package/src/main/js/sap/ushell/components/homepage/Component.js +1 -1
  306. package/src/main/js/sap/ushell/components/homepage/DashboardContent.controller.js +4 -4
  307. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
  308. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +1 -1
  309. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +2 -2
  310. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  311. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  312. package/src/main/js/sap/ushell/components/pages/Component.js +28 -3
  313. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  314. package/src/main/js/sap/ushell/components/pages/StateManager.js +4 -3
  315. package/src/main/js/sap/ushell/components/pages/controller/ImportDialog.controller.js +182 -202
  316. package/src/main/js/sap/ushell/components/pages/controller/MyHome.controller.js +3 -3
  317. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +1 -1
  318. package/src/main/js/sap/ushell/components/pages/controller/PagesAndSpaceId.js +10 -7
  319. package/src/main/js/sap/ushell/components/pages/manifest.json +2 -2
  320. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
  321. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  322. package/src/main/js/sap/ushell/components/shell/FloatingContainer/manifest.json +1 -1
  323. package/src/main/js/sap/ushell/components/shell/MenuBar/Component.js +26 -3
  324. package/src/main/js/sap/ushell/components/shell/MenuBar/controller/MenuBar.controller.js +3 -1
  325. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +2 -2
  326. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +13 -31
  327. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenuButton.controller.js +1 -1
  328. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  329. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +5 -6
  330. package/src/main/js/sap/ushell/components/shell/Notifications/NotificationsListPopoverContent.view.xml +1 -1
  331. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  332. package/src/main/js/sap/ushell/components/shell/Search/ESearch.js +3 -0
  333. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  334. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +17 -15
  335. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchCEP.controller.js +3 -3
  336. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  337. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  338. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +84 -67
  339. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
  340. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +1 -1
  341. package/src/main/js/sap/ushell/components/shell/Settings/ContentWrapper.fragment.xml +1 -1
  342. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.controller.js +10 -23
  343. package/src/main/js/sap/ushell/components/shell/Settings/UserSettings.view.xml +59 -69
  344. package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +1 -2
  345. package/src/main/js/sap/ushell/components/shell/Settings/homepage/HomepageEntry.js +1 -1
  346. package/src/main/js/sap/ushell/components/shell/Settings/homepage/HomepageSetting.view.xml +28 -35
  347. package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.controller.js +1 -1
  348. package/src/main/js/sap/ushell/components/shell/Settings/notifications/NotificationsSetting.view.xml +5 -9
  349. package/src/main/js/sap/ushell/components/shell/Settings/spaces/SpacesSetting.controller.js +1 -1
  350. package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSelector.controller.js +1 -2
  351. package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSelector.view.xml +2 -2
  352. package/src/main/js/sap/ushell/components/shell/Settings/userAccount/UserAccountSetting.fragment.xml +2 -4
  353. package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.controller.js +1 -1
  354. package/src/main/js/sap/ushell/components/shell/Settings/userActivities/UserActivitiesSetting.view.xml +6 -12
  355. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +1 -1
  356. package/src/main/js/sap/ushell/components/shell/Settings/userLanguageRegion/LanguageRegionSelector.view.xml +2 -4
  357. package/src/main/js/sap/ushell/components/shell/ShellBar/Component.js +17 -10
  358. package/src/main/js/sap/ushell/components/shell/ShellBar/controller/ShellBar.controller.js +23 -115
  359. package/src/main/js/sap/ushell/components/shell/ShellBar/manifest.json +4 -3
  360. package/src/main/js/sap/ushell/components/shell/ShellBar/view/ShellBar.view.xml +2 -7
  361. package/src/main/js/sap/ushell/components/shell/SideNavigation/Component.js +4 -1
  362. package/src/main/js/sap/ushell/components/shell/SideNavigation/controller/SideNavigation.controller.js +0 -31
  363. package/src/main/js/sap/ushell/components/shell/SideNavigation/manifest.json +5 -2
  364. package/src/main/js/sap/ushell/components/shell/SideNavigation/modules/Favorites.js +1 -1
  365. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
  366. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/UserActionsMenu.controller.js +14 -19
  367. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
  368. package/src/main/js/sap/ushell/components/tiles/action/ActionTile.controller.js +16 -16
  369. package/src/main/js/sap/ushell/components/tiles/action/Configuration.controller.js +20 -20
  370. package/src/main/js/sap/ushell/components/tiles/applauncher/Configuration.controller.js +18 -18
  371. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.controller.js +15 -15
  372. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Configuration.controller.js +18 -18
  373. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.controller.js +20 -20
  374. package/src/main/js/sap/ushell/components/tiles/cdm/applauncher/manifest.json +1 -6
  375. package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/DynamicTile.controller.js +2 -2
  376. package/src/main/js/sap/ushell/components/tiles/cdm/applauncherdynamic/manifest.json +1 -6
  377. package/src/main/js/sap/ushell/components/tiles/generic.js +8 -8
  378. package/src/main/js/sap/ushell/components/tiles/indicatorArea/AreaChartTile.controller.js +6 -8
  379. package/src/main/js/sap/ushell/components/tiles/indicatorDual/DualTile.controller.js +2 -2
  380. package/src/main/js/sap/ushell/components/tiles/indicatorTileUtils/smartBusinessUtil.js +5 -5
  381. package/src/main/js/sap/ushell/components/tiles/indicatorcomparison/ComparisonTile.controller.js +2 -6
  382. package/src/main/js/sap/ushell/components/tiles/indicatorcontribution/ContributionTile.controller.js +2 -4
  383. package/src/main/js/sap/ushell/components/tiles/utils.js +46 -22
  384. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  385. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +2 -3
  386. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
  387. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1 -1
  388. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
  389. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
  390. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
  391. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
  392. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
  393. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
  394. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  395. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +1 -1
  396. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +8 -10
  397. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  398. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +2 -2
  399. package/src/main/js/sap/ushell/functionBindPrototype.js +1 -1
  400. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/Avatar.js +1 -7
  401. package/src/main/js/sap/ushell/gen/ui5/webcomponents/dist/MenuItem.js +0 -10
  402. package/src/main/js/sap/ushell/gen/ui5/webcomponents-base.js +1 -1
  403. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori.js +1 -81
  404. package/src/main/js/sap/ushell/gen/ui5/webcomponents.js +2 -80
  405. package/src/main/js/sap/ushell/library.js +5 -5
  406. package/src/main/js/sap/ushell/modules/NavigationMenu.js +3 -4
  407. package/src/main/js/sap/ushell/navigationMode.js +40 -43
  408. package/src/main/js/sap/ushell/override.js +53 -53
  409. package/src/main/js/sap/ushell/performance/FesrEnhancer.js +7 -9
  410. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +48 -52
  411. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +9 -11
  412. package/src/main/js/sap/ushell/plugins/BaseRTAPlugin.js +106 -107
  413. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +17 -17
  414. package/src/main/js/sap/ushell/plugins/appwarmup/ShellUIService.js +1 -1
  415. package/src/main/js/sap/ushell/plugins/appwarmup/manifest.json +0 -4
  416. package/src/main/js/sap/ushell/plugins/ghostapp/Component.js +1 -1
  417. package/src/main/js/sap/ushell/plugins/ghostapp/FakeModel.js +5 -5
  418. package/src/main/js/sap/ushell/plugins/ghostapp/manifest.json +1 -2
  419. package/src/main/js/sap/ushell/plugins/rta/Component.js +51 -51
  420. package/src/main/js/sap/ushell/plugins/rta/manifest.json +0 -4
  421. package/src/main/js/sap/ushell/plugins/rta-personalize/Component.js +3 -3
  422. package/src/main/js/sap/ushell/plugins/rta-personalize/manifest.json +0 -4
  423. package/src/main/js/sap/ushell/renderer/AccessKeysHandler.js +81 -79
  424. package/src/main/js/sap/ushell/renderer/History.js +6 -6
  425. package/src/main/js/sap/ushell/renderer/LogonFrameProvider.js +27 -27
  426. package/src/main/js/sap/ushell/renderer/NavContainerRenderer.js +3 -3
  427. package/src/main/js/sap/ushell/renderer/Renderer.js +77 -74
  428. package/src/main/js/sap/ushell/renderer/RendererAppContainer.js +5 -5
  429. package/src/main/js/sap/ushell/renderer/Shell.controller.js +28 -28
  430. package/src/main/js/sap/ushell/renderer/Shell.view.js +63 -91
  431. package/src/main/js/sap/ushell/renderer/ShellLayout.js +0 -12
  432. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.controller.js +100 -100
  433. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyAppsManager.js +103 -93
  434. package/src/main/js/sap/ushell/renderer/rendererTargetWrapper/Component.js +2 -2
  435. package/src/main/js/sap/ushell/renderer/rendererTargetWrapper/RendererTarget.controller.js +3 -3
  436. package/src/main/js/sap/ushell/renderer/resources/resources.properties +4 -2
  437. package/src/main/js/sap/ushell/renderer/resources/resources_ar.properties +0 -1
  438. package/src/main/js/sap/ushell/renderer/resources/resources_bg.properties +0 -1
  439. package/src/main/js/sap/ushell/renderer/resources/resources_ca.properties +0 -1
  440. package/src/main/js/sap/ushell/renderer/resources/resources_cnr.properties +0 -1
  441. package/src/main/js/sap/ushell/renderer/resources/resources_cs.properties +0 -1
  442. package/src/main/js/sap/ushell/renderer/resources/resources_cy.properties +0 -1
  443. package/src/main/js/sap/ushell/renderer/resources/resources_da.properties +0 -1
  444. package/src/main/js/sap/ushell/renderer/resources/resources_de.properties +0 -1
  445. package/src/main/js/sap/ushell/renderer/resources/resources_el.properties +0 -1
  446. package/src/main/js/sap/ushell/renderer/resources/resources_en.properties +0 -1
  447. package/src/main/js/sap/ushell/renderer/resources/resources_en_GB.properties +0 -1
  448. package/src/main/js/sap/ushell/renderer/resources/resources_en_US_saprigi.properties +0 -1
  449. package/src/main/js/sap/ushell/renderer/resources/resources_es.properties +0 -1
  450. package/src/main/js/sap/ushell/renderer/resources/resources_es_MX.properties +0 -1
  451. package/src/main/js/sap/ushell/renderer/resources/resources_et.properties +0 -1
  452. package/src/main/js/sap/ushell/renderer/resources/resources_fi.properties +0 -1
  453. package/src/main/js/sap/ushell/renderer/resources/resources_fr.properties +0 -1
  454. package/src/main/js/sap/ushell/renderer/resources/resources_fr_CA.properties +0 -1
  455. package/src/main/js/sap/ushell/renderer/resources/resources_hi.properties +0 -1
  456. package/src/main/js/sap/ushell/renderer/resources/resources_hr.properties +0 -1
  457. package/src/main/js/sap/ushell/renderer/resources/resources_hu.properties +0 -1
  458. package/src/main/js/sap/ushell/renderer/resources/resources_id.properties +0 -1
  459. package/src/main/js/sap/ushell/renderer/resources/resources_it.properties +0 -1
  460. package/src/main/js/sap/ushell/renderer/resources/resources_iw.properties +0 -1
  461. package/src/main/js/sap/ushell/renderer/resources/resources_ja.properties +0 -1
  462. package/src/main/js/sap/ushell/renderer/resources/resources_kk.properties +0 -1
  463. package/src/main/js/sap/ushell/renderer/resources/resources_ko.properties +0 -1
  464. package/src/main/js/sap/ushell/renderer/resources/resources_lt.properties +0 -1
  465. package/src/main/js/sap/ushell/renderer/resources/resources_lv.properties +0 -1
  466. package/src/main/js/sap/ushell/renderer/resources/resources_mk.properties +0 -1
  467. package/src/main/js/sap/ushell/renderer/resources/resources_ms.properties +0 -1
  468. package/src/main/js/sap/ushell/renderer/resources/resources_nl.properties +0 -1
  469. package/src/main/js/sap/ushell/renderer/resources/resources_no.properties +0 -1
  470. package/src/main/js/sap/ushell/renderer/resources/resources_pl.properties +0 -1
  471. package/src/main/js/sap/ushell/renderer/resources/resources_pt.properties +0 -1
  472. package/src/main/js/sap/ushell/renderer/resources/resources_pt_PT.properties +0 -1
  473. package/src/main/js/sap/ushell/renderer/resources/resources_ro.properties +0 -1
  474. package/src/main/js/sap/ushell/renderer/resources/resources_ru.properties +0 -1
  475. package/src/main/js/sap/ushell/renderer/resources/resources_sh.properties +0 -1
  476. package/src/main/js/sap/ushell/renderer/resources/resources_sk.properties +0 -1
  477. package/src/main/js/sap/ushell/renderer/resources/resources_sl.properties +0 -1
  478. package/src/main/js/sap/ushell/renderer/resources/resources_sr.properties +0 -1
  479. package/src/main/js/sap/ushell/renderer/resources/resources_sv.properties +0 -1
  480. package/src/main/js/sap/ushell/renderer/resources/resources_th.properties +0 -1
  481. package/src/main/js/sap/ushell/renderer/resources/resources_tr.properties +0 -1
  482. package/src/main/js/sap/ushell/renderer/resources/resources_uk.properties +0 -1
  483. package/src/main/js/sap/ushell/renderer/resources/resources_vi.properties +0 -1
  484. package/src/main/js/sap/ushell/renderer/resources/resources_zh_CN.properties +0 -1
  485. package/src/main/js/sap/ushell/renderer/resources/resources_zh_TW.properties +0 -1
  486. package/src/main/js/sap/ushell/renderer/search/searchComponent/Component.js +5 -5
  487. package/src/main/js/sap/ushell/renderer/search/searchComponent/controller/CEPSearchApp.controller.js +3 -5
  488. package/src/main/js/sap/ushell/renderer/search/searchComponent/controller/SearchApp.controller.js +5 -8
  489. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  490. package/src/main/js/sap/ushell/renderer/search/searchComponent/view/CEPSearchApp.view.js +2 -2
  491. package/src/main/js/sap/ushell/renderer/search/searchComponent/view/SearchApp.view.js +2 -2
  492. package/src/main/js/sap/ushell/renderer/search/util.js +5 -6
  493. package/src/main/js/sap/ushell/renderer/shellHeader/ShellHeader.controller.js +42 -41
  494. package/src/main/js/sap/ushell/renderer/shellHeader/ShellHeader.fragment.xml +2 -1
  495. package/src/main/js/sap/ushell/renderer/utils.js +4 -4
  496. package/src/main/js/sap/ushell/renderers/fiori2/History.js +1 -1
  497. package/src/main/js/sap/ushell/renderers/fiori2/LogonFrameProvider.js +1 -1
  498. package/src/main/js/sap/ushell/renderers/fiori2/RendererExtensions.js +6 -7
  499. package/src/main/js/sap/ushell/renderers/fiori2/Shell.controller.js +2 -2
  500. package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +55 -87
  501. package/src/main/js/sap/ushell/renderers/fiori2/allMyApps/AllMyAppsManager.js +1 -1
  502. package/src/main/js/sap/ushell/resources.js +18 -22
  503. package/src/main/js/sap/ushell/services/AppConfiguration.js +1 -1
  504. package/src/main/js/sap/ushell/services/AppLifeCycle.js +1 -1
  505. package/src/main/js/sap/ushell/services/AppState.js +1 -1
  506. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  507. package/src/main/js/sap/ushell/services/BookmarkV2.js +1 -1
  508. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Formatter.js +142 -158
  509. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundIndex.js +11 -13
  510. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/InboundProvider.js +3 -4
  511. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/ParameterMapping.js +38 -38
  512. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/PrelaunchOperations.js +72 -72
  513. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Search.js +229 -247
  514. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/StagedLogger.js +29 -41
  515. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/SystemContext.js +10 -10
  516. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/Utils.js +26 -31
  517. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/VirtualInbounds.js +1 -1
  518. package/src/main/js/sap/ushell/services/ClientSideTargetResolution/XAppStateProcessing.js +204 -206
  519. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
  520. package/src/main/js/sap/ushell/services/CommonDataModel/PersonalizationProcessor.js +115 -118
  521. package/src/main/js/sap/ushell/services/CommonDataModel/SiteConverter.js +20 -20
  522. package/src/main/js/sap/ushell/services/CommonDataModel/vizTypeDefaults/VizTypeDefaults.js +3 -5
  523. package/src/main/js/sap/ushell/services/CommonDataModel.js +2 -2
  524. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  525. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  526. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
  527. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +1 -1
  528. package/src/main/js/sap/ushell/services/DarkModeSupport.js +1 -1
  529. package/src/main/js/sap/ushell/services/Extension/Item.js +2 -2
  530. package/src/main/js/sap/ushell/services/Extension.js +1 -1
  531. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +2 -2
  532. package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +1 -1
  533. package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +1 -1
  534. package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +2 -2
  535. package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +4 -4
  536. package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +2 -2
  537. package/src/main/js/sap/ushell/services/FrameBoundExtension/UserSettingsEntry.js +1 -1
  538. package/src/main/js/sap/ushell/services/FrameBoundExtension.js +1 -1
  539. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
  540. package/src/main/js/sap/ushell/services/Menu.js +13 -8
  541. package/src/main/js/sap/ushell/services/Message.js +1 -1
  542. package/src/main/js/sap/ushell/services/MessageBroker/MessageBrokerEngine.js +1 -1
  543. package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
  544. package/src/main/js/sap/ushell/services/MessageInternal.js +1 -1
  545. package/src/main/js/sap/ushell/services/Navigation/compatibility.js +1 -1
  546. package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
  547. package/src/main/js/sap/ushell/services/Navigation.js +1 -1
  548. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  549. package/src/main/js/sap/ushell/services/NotificationsV2.js +1 -14
  550. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  551. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  552. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  553. package/src/main/js/sap/ushell/services/Pages.js +8 -12
  554. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  555. package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
  556. package/src/main/js/sap/ushell/services/PluginManager/Extensions.js +1 -1
  557. package/src/main/js/sap/ushell/services/PluginManager/HeaderExtensions.js +1 -1
  558. package/src/main/js/sap/ushell/services/PluginManager/MenuExtensions.js +1 -1
  559. package/src/main/js/sap/ushell/services/PluginManager/SimpleExpression.js +1 -1
  560. package/src/main/js/sap/ushell/services/PluginManager.js +17 -14
  561. package/src/main/js/sap/ushell/services/ReferenceResolver.js +2 -2
  562. package/src/main/js/sap/ushell/services/Search.js +1 -1
  563. package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
  564. package/src/main/js/sap/ushell/services/SearchableContent.js +1 -1
  565. package/src/main/js/sap/ushell/services/ShellNavigation.js +2 -2
  566. package/src/main/js/sap/ushell/services/ShellNavigationInternal.js +1 -1
  567. package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
  568. package/src/main/js/sap/ushell/services/SpaceContent.js +1 -1
  569. package/src/main/js/sap/ushell/services/UITracer.js +18 -22
  570. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  571. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  572. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +1 -1
  573. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
  574. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
  575. package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
  576. package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
  577. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  578. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  579. package/src/main/js/sap/ushell/services/_AppState/AppStatePersistencyMethod.js +2 -2
  580. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +9 -9
  581. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +21 -14
  582. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +66 -67
  583. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +15 -15
  584. package/src/main/js/sap/ushell/services/_Personalization/ContextContainer.js +65 -79
  585. package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainer.js +58 -57
  586. package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainerVariant.js +17 -14
  587. package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainerVariantSet.js +30 -28
  588. package/src/main/js/sap/ushell/services/_Personalization/Personalizer.js +38 -24
  589. package/src/main/js/sap/ushell/services/_Personalization/TransientPersonalizer.js +4 -10
  590. package/src/main/js/sap/ushell/services/_Personalization/Variant.js +23 -23
  591. package/src/main/js/sap/ushell/services/_Personalization/VariantSet.js +39 -38
  592. package/src/main/js/sap/ushell/services/_Personalization/VariantSetAdapter.js +2 -2
  593. package/src/main/js/sap/ushell/services/_Personalization/WindowAdapter.js +1 -1
  594. package/src/main/js/sap/ushell/services/_Personalization/WindowAdapterContainer.js +1 -1
  595. package/src/main/js/sap/ushell/services/_Personalization/constants.js +5 -5
  596. package/src/main/js/sap/ushell/services/_Personalization/constants.private.js +1 -1
  597. package/src/main/js/sap/ushell/services/_Personalization/utils.js +13 -13
  598. package/src/main/js/sap/ushell/services/appstate/AppState.js +26 -26
  599. package/src/main/js/sap/ushell/services/appstate/AppStatePersistencyMethod.js +1 -1
  600. package/src/main/js/sap/ushell/services/appstate/AppStatePersistencySettings.js +4 -4
  601. package/src/main/js/sap/ushell/services/appstate/LimitedBuffer.js +9 -7
  602. package/src/main/js/sap/ushell/services/appstate/Sequentializer.js +5 -6
  603. package/src/main/js/sap/ushell/services/appstate/SequentializingAdapter.js +6 -3
  604. package/src/main/js/sap/ushell/services/appstate/WindowAdapter.js +20 -16
  605. package/src/main/js/sap/ushell/state/StateManager.js +3 -2
  606. package/src/main/js/sap/ushell/state/StateRules.js +9 -4
  607. package/src/main/js/sap/ushell/state/{BackNavigation.js → modules/BackNavigation.js} +1 -1
  608. package/src/main/js/sap/ushell/state/{ContentDensity.js → modules/ContentDensity.js} +1 -1
  609. package/src/main/js/sap/ushell/state/{Favicon.js → modules/Favicon.js} +1 -1
  610. package/src/main/js/sap/ushell/state/modules/HeaderLogo.js +181 -0
  611. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +100 -92
  612. package/src/main/js/sap/ushell/support/plugins/flpConfig/i18n/FlpConfigurationPlugin.properties +0 -3
  613. package/src/main/js/sap/ushell/support/plugins/flpConfig/i18n/FlpConfigurationPlugin_de.properties +0 -3
  614. package/src/main/js/sap/ushell/support/plugins/flpConfig/i18n/FlpConfigurationPlugin_en.properties +0 -3
  615. package/src/main/js/sap/ushell/themes/base/AddBookmarkButton.less +5 -0
  616. package/src/main/js/sap/ushell/themes/base/Factsheet.less +0 -2
  617. package/src/main/js/sap/ushell/themes/base/ShellBar.less +1 -2
  618. package/src/main/js/sap/ushell/themes/base/ShellHeader.less +1 -1
  619. package/src/main/js/sap/ushell/themes/base/ToolAreaItem.less +0 -1
  620. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.json +3 -0
  621. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.ttf +0 -0
  622. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff +0 -0
  623. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff2 +0 -0
  624. package/src/main/js/sap/ushell/themes/sap_belize_base/AddBookmarkButton.less +5 -0
  625. package/src/main/js/sap/ushell/themes/sap_belize_base/Factsheet.less +0 -2
  626. package/src/main/js/sap/ushell/themes/sap_belize_hcb/AnchorItem.less +0 -1
  627. package/src/main/js/sap/ushell/themes/sap_belize_hcw/AnchorItem.less +0 -1
  628. package/src/main/js/sap/ushell/themes/sap_bluecrystal/AnchorNavigationBar.less +0 -1
  629. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/AddBookmarkButton.less +5 -0
  630. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/Factsheet.less +0 -2
  631. package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +0 -6
  632. package/src/main/js/sap/ushell/themes/sap_fiori_3/library.source.less +0 -1
  633. package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/library.source.less +0 -1
  634. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/AnchorItem.less +0 -1
  635. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/library.source.less +0 -1
  636. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/AnchorItem.less +0 -1
  637. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/library.source.less +0 -1
  638. package/src/main/js/sap/ushell/themes/sap_hcb/AnchorItem.less +0 -1
  639. package/src/main/js/sap/ushell/themes/sap_hcb/base_AddBookmarkButton.less +5 -0
  640. package/src/main/js/sap/ushell/themes/sap_hcb/base_Factsheet.less +0 -2
  641. package/src/main/js/sap/ushell/themes/sap_hcb/base_ShellHeader.less +1 -1
  642. package/src/main/js/sap/ushell/themes/sap_horizon_hcb/AnchorItem.less +0 -1
  643. package/src/main/js/sap/ushell/themes/sap_horizon_hcb/FloatingContainer.less +8 -0
  644. package/src/main/js/sap/ushell/themes/sap_horizon_hcb/library.source.less +1 -0
  645. package/src/main/js/sap/ushell/themes/sap_horizon_hcw/AnchorItem.less +0 -1
  646. package/src/main/js/sap/ushell/themes/sap_horizon_hcw/FloatingContainer.less +8 -0
  647. package/src/main/js/sap/ushell/themes/sap_horizon_hcw/library.source.less +1 -0
  648. package/src/main/js/sap/ushell/thirdparty/Avatar.js +12 -79
  649. package/src/main/js/sap/ushell/thirdparty/BusyIndicator.js +9 -15
  650. package/src/main/js/sap/ushell/thirdparty/Button2.js +6 -25
  651. package/src/main/js/sap/ushell/thirdparty/Icon.js +5 -5
  652. package/src/main/js/sap/ushell/thirdparty/Icons.js +68 -69
  653. package/src/main/js/sap/ushell/thirdparty/Link.js +2 -2
  654. package/src/main/js/sap/ushell/thirdparty/List.js +4 -4
  655. package/src/main/js/sap/ushell/thirdparty/ListItemCustom.js +95 -0
  656. package/src/main/js/sap/ushell/thirdparty/{ResponsivePopover.js → ListItemTemplate.js} +2876 -3032
  657. package/src/main/js/sap/ushell/thirdparty/Menu.js +76 -65
  658. package/src/main/js/sap/ushell/thirdparty/MenuItem.js +1 -1
  659. package/src/main/js/sap/ushell/thirdparty/MenuItem2.js +34 -342
  660. package/src/main/js/sap/ushell/thirdparty/NotificationListGroupItem.js +6 -6
  661. package/src/main/js/sap/ushell/thirdparty/NotificationListItem.js +5 -5
  662. package/src/main/js/sap/ushell/thirdparty/ShellBar.js +79 -112
  663. package/src/main/js/sap/ushell/thirdparty/Tag.js +6 -6
  664. package/src/main/js/sap/ushell/thirdparty/Text.js +4 -4
  665. package/src/main/js/sap/ushell/thirdparty/UserMenu.js +22 -22
  666. package/src/main/js/sap/ushell/thirdparty/UserMenuItem.js +2 -2
  667. package/src/main/js/sap/ushell/thirdparty/_dynamics/ListItemStandardExpandableTextTemplate.js +3 -3
  668. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ar3.js +0 -3
  669. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_bg3.js +0 -3
  670. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ca3.js +0 -3
  671. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cnr3.js +0 -3
  672. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cs3.js +0 -3
  673. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_cy3.js +0 -3
  674. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_da3.js +0 -3
  675. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_de3.js +0 -3
  676. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_el3.js +0 -3
  677. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en2.js +0 -27
  678. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en3.js +8 -23
  679. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_GB3.js +0 -3
  680. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_sappsd3.js +0 -3
  681. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi2.js +0 -27
  682. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saprigi3.js +8 -20
  683. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_en_US_saptrc3.js +0 -3
  684. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es3.js +0 -3
  685. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_es_MX3.js +0 -3
  686. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_et3.js +0 -3
  687. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fi3.js +0 -3
  688. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr3.js +0 -3
  689. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_fr_CA3.js +0 -3
  690. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hi3.js +0 -3
  691. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hr3.js +0 -3
  692. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_hu3.js +0 -3
  693. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_id3.js +1 -4
  694. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it2.js +4 -4
  695. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_it3.js +2 -5
  696. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_iw3.js +0 -3
  697. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ja3.js +0 -3
  698. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_kk3.js +0 -3
  699. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ko3.js +0 -3
  700. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lt3.js +0 -3
  701. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_lv3.js +0 -3
  702. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_mk3.js +0 -3
  703. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ms3.js +0 -3
  704. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_nl3.js +0 -3
  705. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_no3.js +0 -3
  706. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pl3.js +0 -3
  707. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt3.js +0 -3
  708. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_pt_PT3.js +0 -3
  709. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ro3.js +0 -3
  710. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_ru3.js +0 -3
  711. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sh3.js +0 -3
  712. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sk3.js +0 -3
  713. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sl3.js +0 -3
  714. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sr3.js +0 -3
  715. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_sv3.js +0 -3
  716. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_th3.js +0 -3
  717. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_tr3.js +0 -3
  718. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_uk3.js +0 -3
  719. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_vi3.js +0 -3
  720. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_CN3.js +0 -3
  721. package/src/main/js/sap/ushell/thirdparty/_dynamics/messagebundle_zh_TW3.js +0 -3
  722. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css10.js +1 -1
  723. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css11.js +1 -1
  724. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css12.js +1 -1
  725. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css13.js +1 -1
  726. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css14.js +1 -1
  727. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css15.js +1 -1
  728. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css16.js +1 -1
  729. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css17.js +1 -1
  730. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css18.js +1 -1
  731. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css19.js +1 -1
  732. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css20.js +1 -1
  733. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css21.js +1 -1
  734. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css22.js +1 -1
  735. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css23.js +1 -1
  736. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css24.js +1 -1
  737. package/src/main/js/sap/ushell/thirdparty/_dynamics/parameters-bundle.css25.js +1 -1
  738. package/src/main/js/sap/ushell/thirdparty/i18n-defaults.js +1 -1
  739. package/src/main/js/sap/ushell/thirdparty/information.js +10 -10
  740. package/src/main/js/sap/ushell/thirdparty/overflow.js +2 -2
  741. package/src/main/js/sap/ushell/thirdparty/parameters-bundle.css.js +1 -1
  742. package/src/main/js/sap/ushell/thirdparty/toLowercaseEnumValue.js +0 -3
  743. package/src/main/js/sap/ushell/thirdparty/webcomponents-base.js +13 -13
  744. package/src/main/js/sap/ushell/ui/ContentNodeSelector.js +72 -73
  745. package/src/main/js/sap/ushell/ui/ContentNodeSelectorRenderer.js +3 -3
  746. package/src/main/js/sap/ushell/ui/ContentNodeTreeItem.js +2 -2
  747. package/src/main/js/sap/ushell/ui/CustomGroupHeaderListItem.js +6 -6
  748. package/src/main/js/sap/ushell/ui/CustomGroupHeaderListItemRenderer.js +5 -5
  749. package/src/main/js/sap/ushell/ui/QuickAccess.js +15 -13
  750. package/src/main/js/sap/ushell/ui/ShellHeader.js +68 -152
  751. package/src/main/js/sap/ushell/ui/ShellHeaderRenderer.js +1 -1
  752. package/src/main/js/sap/ushell/ui/appfinder/AppBox.js +1 -1
  753. package/src/main/js/sap/ushell/ui/appfinder/AppBoxInternal.js +4 -4
  754. package/src/main/js/sap/ushell/ui/appfinder/AppBoxInternalRenderer.js +7 -9
  755. package/src/main/js/sap/ushell/ui/appfinder/AppBoxRenderer.js +1 -1
  756. package/src/main/js/sap/ushell/ui/appfinder/PinButton.js +2 -2
  757. package/src/main/js/sap/ushell/ui/appfinder/PinButtonRenderer.js +2 -4
  758. package/src/main/js/sap/ushell/ui/bookmark/SaveOnPage.controller.js +25 -13
  759. package/src/main/js/sap/ushell/ui/bookmark/SaveOnPage.view.xml +44 -48
  760. package/src/main/js/sap/ushell/ui/cards/FrequentActivitiesExtension.js +22 -22
  761. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +23 -23
  762. package/src/main/js/sap/ushell/ui/footerbar/AboutButton.js +5 -5
  763. package/src/main/js/sap/ushell/ui/footerbar/AboutDialog.controller.js +0 -3
  764. package/src/main/js/sap/ushell/ui/footerbar/AddBookmarkButton.js +86 -103
  765. package/src/main/js/sap/ushell/ui/footerbar/ContactSupportButton.js +4 -4
  766. package/src/main/js/sap/ushell/ui/footerbar/ContactSupportDialog.controller.js +3 -3
  767. package/src/main/js/sap/ushell/ui/footerbar/JamDiscussButton.js +6 -7
  768. package/src/main/js/sap/ushell/ui/footerbar/JamShareButton.js +12 -12
  769. package/src/main/js/sap/ushell/ui/footerbar/LogoutButton.js +12 -12
  770. package/src/main/js/sap/ushell/ui/footerbar/SaveAsTile.controller.js +21 -21
  771. package/src/main/js/sap/ushell/ui/footerbar/SaveAsTile.view.js +57 -55
  772. package/src/main/js/sap/ushell/ui/footerbar/SendAsEmailButton.js +13 -13
  773. package/src/main/js/sap/ushell/ui/launchpad/AccessibilityCustomData.js +4 -4
  774. package/src/main/js/sap/ushell/ui/launchpad/ActionItem.js +4 -4
  775. package/src/main/js/sap/ushell/ui/launchpad/AnchorItem.js +3 -3
  776. package/src/main/js/sap/ushell/ui/launchpad/AnchorItemRenderer.js +5 -5
  777. package/src/main/js/sap/ushell/ui/launchpad/AnchorNavigationBar.js +56 -57
  778. package/src/main/js/sap/ushell/ui/launchpad/AnchorNavigationBarRenderer.js +8 -8
  779. package/src/main/js/sap/ushell/ui/launchpad/CatalogEntryContainer.js +36 -38
  780. package/src/main/js/sap/ushell/ui/launchpad/CatalogsContainer.js +40 -45
  781. package/src/main/js/sap/ushell/ui/launchpad/DashboardGroupsContainer.js +18 -18
  782. package/src/main/js/sap/ushell/ui/launchpad/DashboardGroupsContainerRenderer.js +5 -7
  783. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +33 -33
  784. package/src/main/js/sap/ushell/ui/launchpad/FailedTileDialog.js +13 -13
  785. package/src/main/js/sap/ushell/ui/launchpad/GroupHeaderActions.js +13 -13
  786. package/src/main/js/sap/ushell/ui/launchpad/GroupListItem.js +5 -7
  787. package/src/main/js/sap/ushell/ui/launchpad/GroupListItemRenderer.js +2 -2
  788. package/src/main/js/sap/ushell/ui/launchpad/LinkTileWrapper.js +18 -18
  789. package/src/main/js/sap/ushell/ui/launchpad/LinkTileWrapperRenderer.js +9 -9
  790. package/src/main/js/sap/ushell/ui/launchpad/LoadingDialog.js +7 -7
  791. package/src/main/js/sap/ushell/ui/launchpad/LoadingDialogRenderer.js +4 -4
  792. package/src/main/js/sap/ushell/ui/launchpad/Page.js +56 -59
  793. package/src/main/js/sap/ushell/ui/launchpad/PageRenderer.js +3 -3
  794. package/src/main/js/sap/ushell/ui/launchpad/PlusTile.js +5 -5
  795. package/src/main/js/sap/ushell/ui/launchpad/PlusTileRenderer.js +2 -2
  796. package/src/main/js/sap/ushell/ui/launchpad/Section.js +142 -142
  797. package/src/main/js/sap/ushell/ui/launchpad/SectionRenderer.js +8 -8
  798. package/src/main/js/sap/ushell/ui/launchpad/Tile.js +48 -49
  799. package/src/main/js/sap/ushell/ui/launchpad/TileContainer.js +60 -57
  800. package/src/main/js/sap/ushell/ui/launchpad/TileContainerRenderer.js +31 -31
  801. package/src/main/js/sap/ushell/ui/launchpad/TileContainerUtils.js +71 -71
  802. package/src/main/js/sap/ushell/ui/launchpad/TileRenderer.js +8 -8
  803. package/src/main/js/sap/ushell/ui/launchpad/TileState.js +3 -3
  804. package/src/main/js/sap/ushell/ui/launchpad/TileStateInternal.js +7 -7
  805. package/src/main/js/sap/ushell/ui/launchpad/TileStateInternalRenderer.js +8 -8
  806. package/src/main/js/sap/ushell/ui/launchpad/TileStateRenderer.js +1 -2
  807. package/src/main/js/sap/ushell/ui/launchpad/ViewPortState.js +1 -1
  808. package/src/main/js/sap/ushell/ui/launchpad/VizInstance.js +41 -42
  809. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceAbap.js +25 -25
  810. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceBase.js +3 -3
  811. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceCdm.js +25 -25
  812. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceLaunchPage.js +6 -6
  813. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceLink.js +11 -11
  814. package/src/main/js/sap/ushell/ui/launchpad/VizInstanceRenderer.js +7 -7
  815. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +18 -18
  816. package/src/main/js/sap/ushell/ui/launchpad/section/CompactAreaRenderer.js +2 -2
  817. package/src/main/js/sap/ushell/ui/shell/ContentRenderer.js +8 -8
  818. package/src/main/js/sap/ushell/ui/shell/NavigationMiniTile.js +7 -7
  819. package/src/main/js/sap/ushell/ui/shell/OverflowListItem.js +5 -5
  820. package/src/main/js/sap/ushell/ui/shell/RightFloatingContainer.js +55 -55
  821. package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +47 -45
  822. package/src/main/js/sap/ushell/ui/shell/ShellFloatingAction.js +5 -6
  823. package/src/main/js/sap/ushell/ui/shell/ShellFloatingActionRenderer.js +3 -4
  824. package/src/main/js/sap/ushell/ui/shell/ShellFloatingActions.js +18 -18
  825. package/src/main/js/sap/ushell/ui/shell/ShellHeadItem.js +28 -28
  826. package/src/main/js/sap/ushell/ui/shell/ShellNavigationMenu.js +33 -35
  827. package/src/main/js/sap/ushell/ui/shell/SidePane.js +9 -10
  828. package/src/main/js/sap/ushell/ui/shell/SubHeader.js +3 -3
  829. package/src/main/js/sap/ushell/ui/shell/SysInfoBar.js +12 -13
  830. package/src/main/js/sap/ushell/ui/shell/SysInfoBarRenderer.js +7 -7
  831. package/src/main/js/sap/ushell/ui/shell/ToolArea.js +10 -10
  832. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +10 -13
  833. package/src/main/js/sap/ushell/ui/tile/DynamicTile.js +5 -5
  834. package/src/main/js/sap/ushell/ui/tile/DynamicTileRenderer.js +29 -31
  835. package/src/main/js/sap/ushell/ui/tile/ImageTile.js +3 -4
  836. package/src/main/js/sap/ushell/ui/tile/ImageTileRenderer.js +2 -4
  837. package/src/main/js/sap/ushell/ui/tile/StaticTile.js +3 -3
  838. package/src/main/js/sap/ushell/ui/tile/StaticTileRenderer.js +2 -4
  839. package/src/main/js/sap/ushell/ui/tile/TileBase.js +4 -6
  840. package/src/main/js/sap/ushell/ui/tile/TileBaseRenderer.js +20 -21
  841. package/src/main/js/sap/ushell/ui/utils.js +20 -21
  842. package/src/main/js/sap/ushell/ui5service/ShellUIService.js +0 -1
  843. package/src/main/js/sap/ushell/ui5service/ShellUIServiceFactory.js +2 -2
  844. package/src/main/js/sap/ushell/ui5service/UserStatus.js +4 -4
  845. package/src/main/js/sap/ushell/utils/AppType.js +4 -4
  846. package/src/main/js/sap/ushell/utils/Deferred.js +2 -3
  847. package/src/main/js/sap/ushell/utils/DynamicTileRequest.js +6 -9
  848. package/src/main/js/sap/ushell/utils/HttpClient.js +33 -35
  849. package/src/main/js/sap/ushell/utils/RestrictedJSONModel.js +3 -3
  850. package/src/main/js/sap/ushell/utils/UriParameters.js +35 -35
  851. package/src/main/js/sap/ushell/utils/UrlParsing.js +5 -10
  852. package/src/main/js/sap/ushell/utils/UrlShortening.js +45 -58
  853. package/src/main/js/sap/ushell/utils/WindowUtils.js +17 -17
  854. package/src/main/js/sap/ushell/utils/chipsUtils.js +53 -54
  855. package/src/main/js/sap/ushell/utils/objectOperations.js +14 -15
  856. package/src/main/js/sap/ushell/utils/tilecard/TileCard.js +168 -171
  857. package/src/main/js/sap/ushell/utils/tilecard/TileCardExtension.js +238 -240
  858. package/src/main/js/sap/ushell/utils/type.js +1 -2
  859. package/src/main/js/sap/ushell/utils/utilsCdm.js +37 -46
  860. package/src/main/js/sap/ushell/utils/workpage/DestinationResolver.js +3 -4
  861. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +29 -34
  862. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +18 -20
  863. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +5 -6
  864. package/src/main/js/sap/ushell/utils.js +195 -221
  865. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  866. package/ui5.yaml +0 -1
  867. package/src/main/js/sap/ushell/CanvasShapesManager.js +0 -392
  868. package/src/main/js/sap/ushell/components/shell/SearchCEP/ProvidersExecuter.js +0 -49
  869. package/src/main/js/sap/ushell/gen/ui5/webcomponents/Avatar.js +0 -4
  870. package/src/main/js/sap/ushell/gen/ui5/webcomponents/Button.js +0 -4
  871. package/src/main/js/sap/ushell/gen/ui5/webcomponents/Label.js +0 -4
  872. package/src/main/js/sap/ushell/gen/ui5/webcomponents/Menu.js +0 -4
  873. package/src/main/js/sap/ushell/gen/ui5/webcomponents/MenuItem.js +0 -4
  874. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/NotificationList.js +0 -4
  875. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/NotificationListGroupItem.js +0 -4
  876. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/NotificationListItem.js +0 -4
  877. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/ShellBar.js +0 -4
  878. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/ShellBarItem.js +0 -4
  879. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/ShellBarSpacer.js +0 -4
  880. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/UserMenu.js +0 -4
  881. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/UserMenuAccount.js +0 -4
  882. package/src/main/js/sap/ushell/gen/ui5/webcomponents-fiori/UserMenuItem.js +0 -4
  883. package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellBar.less +0 -9
  884. package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellBar.less +0 -9
  885. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellBar.less +0 -9
  886. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellBar.less +0 -9
@@ -4,7 +4,7 @@
4
4
  * @fileOverview The Unified Shell's LaunchPageAdapter for the
5
5
  * 'CDM' platform - Version 3 (V3)
6
6
  *
7
- * @version 1.136.3
7
+ * @version 1.138.0
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/ushell/adapters/cdm/v3/_LaunchPage/readHome",
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  "sap/base/Log",
30
30
  "sap/ushell/EventHub",
31
31
  "sap/ushell/Container"
32
- ], function (
32
+ ], (
33
33
  oReadHomePageUtils,
34
34
  oModifyHomePageUtils,
35
35
  oReadCatalog,
@@ -52,16 +52,16 @@ sap.ui.define([
52
52
  Log,
53
53
  EventHub,
54
54
  Container
55
- ) {
55
+ ) => {
56
56
  "use strict";
57
57
 
58
58
  // shortcut for sap.m.GenericTileMode
59
- var oGenericTileMode = mobileLibrary.GenericTileMode;
59
+ const oGenericTileMode = mobileLibrary.GenericTileMode;
60
60
 
61
61
  /* global hasher */
62
62
 
63
- var STATIC_TILE_COMPONENT_NAME = "sap.ushell.components.tiles.cdm.applauncher";
64
- var DYNAMIC_TILE_COMPONENT_NAME = "sap.ushell.components.tiles.cdm.applauncherdynamic";
63
+ const STATIC_TILE_COMPONENT_NAME = "sap.ushell.components.tiles.cdm.applauncher";
64
+ const DYNAMIC_TILE_COMPONENT_NAME = "sap.ushell.components.tiles.cdm.applauncherdynamic";
65
65
 
66
66
  /**
67
67
  * This method MUST be called by the Unified Shell's container only.
@@ -83,10 +83,10 @@ sap.ui.define([
83
83
  Promise.all([
84
84
  Container.getServiceAsync("URLParsing"),
85
85
  this.oCDMServicePromise
86
- ]).then(function (aServices) {
86
+ ]).then((aServices) => {
87
87
  this.oURLParsingService = aServices[0]; // It is not used internally. Keep it for back compatibility.
88
88
  this.oCDMService = aServices[1];
89
- }.bind(this));
89
+ });
90
90
 
91
91
  /**
92
92
  * Returns the tile resolution result in the context of a given site.
@@ -111,8 +111,8 @@ sap.ui.define([
111
111
  * @deprecated since 1.120
112
112
  */
113
113
  this._getTileFromHashInContextOfSite = function (fnResolver, oCatalogTilePromiseCache, sIntent) {
114
- var oDeferred = new jQuery.Deferred();
115
- var oCatalogTilePromise = oCatalogTilePromiseCache[sIntent];
114
+ const oDeferred = new jQuery.Deferred();
115
+ let oCatalogTilePromise = oCatalogTilePromiseCache[sIntent];
116
116
 
117
117
  if (!oCatalogTilePromise) {
118
118
  // only call resolve if it was not resolved before
@@ -122,15 +122,15 @@ sap.ui.define([
122
122
  oCatalogTilePromiseCache[sIntent] = oCatalogTilePromise;
123
123
  }
124
124
 
125
- oCatalogTilePromise.done(function (oTileIntentResolutionResult) {
126
- var oTileResolutionResult = {
125
+ oCatalogTilePromise.done((oTileIntentResolutionResult) => {
126
+ const oTileResolutionResult = {
127
127
  tileIntent: sIntent,
128
128
  tileResolutionResult: oTileIntentResolutionResult
129
129
  };
130
130
 
131
131
  oDeferred.resolve(oTileResolutionResult);
132
- }).fail(function (sErrorMsg) {
133
- oDeferred.reject("Hash '" + sIntent + "' could not be resolved to a tile. " + sErrorMsg);
132
+ }).fail((sErrorMsg) => {
133
+ oDeferred.reject(`Hash '${sIntent}' could not be resolved to a tile. ${sErrorMsg}`);
134
134
  });
135
135
 
136
136
  return oDeferred.promise();
@@ -150,9 +150,9 @@ sap.ui.define([
150
150
  * @deprecated since 1.120
151
151
  */
152
152
  this._getTileFromHash = function (sIntent) {
153
- var oDeferred = new jQuery.Deferred();
153
+ const oDeferred = new jQuery.Deferred();
154
154
 
155
- Container.getServiceAsync("ClientSideTargetResolution").then(function (oCstrService) {
155
+ Container.getServiceAsync("ClientSideTargetResolution").then((oCstrService) => {
156
156
  function fnResolveTile (...args) {
157
157
  const oDeferred = new jQuery.Deferred();
158
158
  oCstrService.resolveTileIntent(...args)
@@ -167,7 +167,7 @@ sap.ui.define([
167
167
  this._getTileFromHashInContextOfSite(fnResolveTile, this._mCatalogTilePromises, sIntent)
168
168
  .done(oDeferred.resolve)
169
169
  .fail(oDeferred.reject);
170
- }.bind(this));
170
+ });
171
171
 
172
172
  return oDeferred.promise();
173
173
  };
@@ -182,7 +182,7 @@ sap.ui.define([
182
182
  * @deprecated since 1.120
183
183
  */
184
184
  this._getTileForUrl = function (oTile) {
185
- var oTileComponentLoadInfo = {
185
+ const oTileComponentLoadInfo = {
186
186
  componentName: oTile.indicatorDataSource ? DYNAMIC_TILE_COMPONENT_NAME : STATIC_TILE_COMPONENT_NAME
187
187
  };
188
188
  return {
@@ -206,7 +206,7 @@ sap.ui.define([
206
206
  * @deprecated since 1.120
207
207
  */
208
208
  this._prepareTileHash = function (oTile) {
209
- var oParams = {};
209
+ const oParams = {};
210
210
 
211
211
  if (this._isCatalogTile(oTile)) {
212
212
  return oTile.tileIntent;
@@ -214,14 +214,14 @@ sap.ui.define([
214
214
 
215
215
  if (this._isGroupTile(oTile) && oTile.target) {
216
216
  // TODO use hash from _mResolvedTiles if tile has been already resolved
217
- var aRawParams = oTile.target.parameters || [];
218
- aRawParams.forEach(function (oParameter) {
217
+ const aRawParams = oTile.target.parameters || [];
218
+ aRawParams.forEach((oParameter) => {
219
219
  if (oParameter.name && oParameter.value) {
220
220
  oParams[oParameter.name] = [oParameter.value];
221
221
  }
222
222
  });
223
223
 
224
- var oTarget = {
224
+ const oTarget = {
225
225
  target: {
226
226
  semanticObject: oTile.target.semanticObject,
227
227
  action: oTile.target.action
@@ -230,7 +230,7 @@ sap.ui.define([
230
230
  appSpecificRoute: oTile.target.appSpecificRoute
231
231
  };
232
232
 
233
- return "#" + urlParsing.constructShellHash(oTarget);
233
+ return `#${urlParsing.constructShellHash(oTarget)}`;
234
234
  }
235
235
  return undefined;
236
236
  };
@@ -244,9 +244,9 @@ sap.ui.define([
244
244
  * @deprecated since 1.120
245
245
  */
246
246
  this.getDefaultGroup = function () {
247
- var oDeferred = new jQuery.Deferred();
248
- var oAssureLoadedPromise;
249
- var that = this;
247
+ const oDeferred = new jQuery.Deferred();
248
+ let oAssureLoadedPromise;
249
+ const that = this;
250
250
  // check whether assureLoaded was already called.
251
251
  // The default group is not set before.
252
252
  if (!this._oDefaultGroup) {
@@ -255,11 +255,11 @@ sap.ui.define([
255
255
 
256
256
  if (oAssureLoadedPromise) {
257
257
  oAssureLoadedPromise
258
- .then(function () {
258
+ .then(() => {
259
259
  oDeferred.resolve(that._oDefaultGroup);
260
260
  })
261
- .catch(function (sMessage) {
262
- oDeferred.reject("Failed to access default group. " + sMessage);
261
+ .catch((sMessage) => {
262
+ oDeferred.reject(`Failed to access default group. ${sMessage}`);
263
263
  });
264
264
  } else {
265
265
  oDeferred.resolve(that._oDefaultGroup);
@@ -283,19 +283,19 @@ sap.ui.define([
283
283
  * @deprecated since 1.120
284
284
  */
285
285
  this.addGroup = function (sTitle) {
286
- var oDeferred = new jQuery.Deferred();
287
- var sGeneratedId;
288
- var that = this;
286
+ const oDeferred = new jQuery.Deferred();
287
+ let sGeneratedId;
288
+ const that = this;
289
289
 
290
290
  if (!this._isValidTitle(sTitle)) {
291
291
  return oDeferred.reject("No valid group title").promise();
292
292
  }
293
293
 
294
- var sGenericErrorMessage = "Failed to add the group with title '" + sTitle + "' to the homepage. ";
294
+ const sGenericErrorMessage = `Failed to add the group with title '${sTitle}' to the homepage. `;
295
295
 
296
296
  // add group to site
297
297
  this.oCDMService.getSite()
298
- .done(function (oSite) {
298
+ .done((oSite) => {
299
299
  sGeneratedId = oUshellUtils.generateUniqueId(oReadHomePageUtils.getGroupIdsFromSite(oSite));
300
300
 
301
301
  // append the group at the end
@@ -303,15 +303,15 @@ sap.ui.define([
303
303
 
304
304
  // store personalization
305
305
  that.oCDMService.save()
306
- .done(function () {
306
+ .done(() => {
307
307
  delete that._ensureLoadedDeferred;
308
308
  oDeferred.resolve(oSite.groups[sGeneratedId], sGeneratedId);
309
309
  })
310
- .fail(function (sErrorMsg0) {
310
+ .fail((sErrorMsg0) => {
311
311
  oDeferred.reject(sErrorMsg0);
312
312
  });
313
313
  })
314
- .fail(function (sErrorMsg) {
314
+ .fail((sErrorMsg) => {
315
315
  oDeferred.reject(sGenericErrorMessage + sErrorMsg);
316
316
  });
317
317
 
@@ -331,8 +331,8 @@ sap.ui.define([
331
331
  * @deprecated since 1.120
332
332
  */
333
333
  this.setGroupTitle = function (oGroup, sNewTitle) {
334
- var that = this;
335
- var oDeferred = new jQuery.Deferred();
334
+ const that = this;
335
+ const oDeferred = new jQuery.Deferred();
336
336
 
337
337
  if (typeof oGroup !== "object" || !oReadHomePageUtils.getGroupId(oGroup)) {
338
338
  return oDeferred.reject("Unexpected group value").promise();
@@ -340,29 +340,29 @@ sap.ui.define([
340
340
  if (!that._isValidTitle(sNewTitle)) {
341
341
  return oDeferred.reject("Unexpected oGroup title value").promise();
342
342
  }
343
- var sGenericErrorMessage = "Failed to set new title for group with id '" +
344
- oReadHomePageUtils.getGroupId(oGroup) + "'. ";
343
+ const sGenericErrorMessage = `Failed to set new title for group with id '${
344
+ oReadHomePageUtils.getGroupId(oGroup)}'. `;
345
345
 
346
346
  // necessary in case the renaming operation fails
347
- var sOldTitle = oReadHomePageUtils.getGroupTitle(oGroup);
347
+ const sOldTitle = oReadHomePageUtils.getGroupTitle(oGroup);
348
348
 
349
349
  this.oCDMService.getSite()
350
- .done(function (oSite) {
350
+ .done((oSite) => {
351
351
  // adapt title
352
352
  if (oGroup) {
353
353
  oModifyHomePageUtils.setGroupTitle(oGroup, sNewTitle);
354
354
  }
355
355
  // save personalization
356
356
  that.oCDMService.save()
357
- .done(function () {
357
+ .done(() => {
358
358
  oDeferred.resolve();
359
359
  })
360
- .fail(function (sErrorMsg) {
360
+ .fail((sErrorMsg) => {
361
361
  Log.error(sErrorMsg);
362
362
  oDeferred.reject(sOldTitle);
363
363
  });
364
364
  })
365
- .fail(function (sError) {
365
+ .fail((sError) => {
366
366
  oDeferred.reject(sOldTitle, sGenericErrorMessage + sError);
367
367
  });
368
368
 
@@ -383,28 +383,28 @@ sap.ui.define([
383
383
  * @deprecated since 1.120
384
384
  */
385
385
  this.hideGroups = function (aHiddenGroupIds) {
386
- var oDeferred = new jQuery.Deferred();
387
- var oCdmSiteService = this.oCDMService;
386
+ const oDeferred = new jQuery.Deferred();
387
+ const oCdmSiteService = this.oCDMService;
388
388
 
389
389
  if (aHiddenGroupIds && Array.isArray(aHiddenGroupIds)) {
390
- var sGenericErrorMessage = "Failed to hide group. ";
390
+ const sGenericErrorMessage = "Failed to hide group. ";
391
391
  oCdmSiteService.getSite()
392
- .done(function (oSite) {
393
- oReadHomePageUtils.getGroupsArrayFromSite(oSite).forEach(function (oGroup) {
394
- var bIsInList = Array.prototype.indexOf.call(aHiddenGroupIds, oReadHomePageUtils.getGroupId(oGroup)) === -1;
392
+ .done((oSite) => {
393
+ oReadHomePageUtils.getGroupsArrayFromSite(oSite).forEach((oGroup) => {
394
+ const bIsInList = Array.prototype.indexOf.call(aHiddenGroupIds, oReadHomePageUtils.getGroupId(oGroup)) === -1;
395
395
  oModifyHomePageUtils.setGroupVisibility(oGroup, bIsInList);
396
396
  });
397
397
 
398
398
  // persist personalization
399
399
  oCdmSiteService.save()
400
- .done(function () {
400
+ .done(() => {
401
401
  oDeferred.resolve();
402
402
  })
403
- .fail(function (oErrorMsg0) {
404
- oDeferred.reject("Hiding of groups did not work as expected - " + oErrorMsg0);
403
+ .fail((oErrorMsg0) => {
404
+ oDeferred.reject(`Hiding of groups did not work as expected - ${oErrorMsg0}`);
405
405
  });
406
406
  })
407
- .fail(function (sError) {
407
+ .fail((sError) => {
408
408
  oDeferred.reject(sGenericErrorMessage + sError);
409
409
  });
410
410
  } else {
@@ -427,19 +427,19 @@ sap.ui.define([
427
427
  * @deprecated since 1.120
428
428
  */
429
429
  this.moveGroup = function (oGroup, nNewIndex) {
430
- var oDeferred = new jQuery.Deferred();
431
- var oCdmSiteService = this.oCDMService;
430
+ const oDeferred = new jQuery.Deferred();
431
+ const oCdmSiteService = this.oCDMService;
432
432
 
433
433
  if (!oGroup || !oReadHomePageUtils.getGroupId(oGroup) || nNewIndex < 0) {
434
434
  return oDeferred.reject("Unable to move groups - invalid parameters").promise();
435
435
  }
436
436
 
437
- var sGenericErrorMessage = "Failed to move group with id '" + oGroup.identification.id + "'. ";
437
+ const sGenericErrorMessage = `Failed to move group with id '${oGroup.identification.id}'. `;
438
438
  // move group inside the site object
439
439
  oCdmSiteService.getSite()
440
- .done(function (oSite) {
441
- var aGroupsOrder = oReadHomePageUtils.getGroupIdsFromSite(oSite);
442
- var sGroupId = oReadHomePageUtils.getGroupId(oGroup);
440
+ .done((oSite) => {
441
+ const aGroupsOrder = oReadHomePageUtils.getGroupIdsFromSite(oSite);
442
+ const sGroupId = oReadHomePageUtils.getGroupId(oGroup);
443
443
 
444
444
  if (!aGroupsOrder) {
445
445
  return oDeferred.reject("groupsOrder not found - abort operation of adding a group.");
@@ -448,7 +448,7 @@ sap.ui.define([
448
448
  }
449
449
 
450
450
  // move group inside the groupsOrder array
451
- var aGroupsOrderAfterMove = oUshellUtils.moveElementInsideOfArray(aGroupsOrder, aGroupsOrder.indexOf(sGroupId), nNewIndex);
451
+ const aGroupsOrderAfterMove = oUshellUtils.moveElementInsideOfArray(aGroupsOrder, aGroupsOrder.indexOf(sGroupId), nNewIndex);
452
452
 
453
453
  if (!aGroupsOrderAfterMove) {
454
454
  return oDeferred.reject("invalid move group operation - abort.");
@@ -458,15 +458,15 @@ sap.ui.define([
458
458
 
459
459
  // store personalization
460
460
  oCdmSiteService.save()
461
- .done(function () {
461
+ .done(() => {
462
462
  oDeferred.resolve();
463
463
  })
464
- .fail(function (sErrorMsg) {
464
+ .fail((sErrorMsg) => {
465
465
  oDeferred.reject(sErrorMsg);
466
466
  });
467
467
  return undefined;
468
468
  })
469
- .fail(function (sError) {
469
+ .fail((sError) => {
470
470
  oDeferred.reject(sGenericErrorMessage + sError);
471
471
  });
472
472
  return oDeferred.promise();
@@ -483,33 +483,33 @@ sap.ui.define([
483
483
  * @deprecated since 1.120
484
484
  */
485
485
  this.removeGroup = function (oGroup) {
486
- var oDeferred = new jQuery.Deferred();
487
- var oCdmSiteService = this.oCDMService;
486
+ const oDeferred = new jQuery.Deferred();
487
+ const oCdmSiteService = this.oCDMService;
488
488
 
489
489
  if (typeof oGroup !== "object") {
490
490
  return oDeferred.reject("invalid group parameter").promise();
491
491
  }
492
- var sGroupId = oReadHomePageUtils.getGroupId(oGroup);
492
+ const sGroupId = oReadHomePageUtils.getGroupId(oGroup);
493
493
  if (!sGroupId) {
494
494
  return oDeferred.reject("group without id given").promise();
495
495
  }
496
496
 
497
- var sGenericErrorMessage = "Failed to remove group with id '" + sGroupId + "'. ";
497
+ const sGenericErrorMessage = `Failed to remove group with id '${sGroupId}'. `;
498
498
 
499
499
  // remove group from site object
500
500
  oCdmSiteService.getSite()
501
- .done(function (oSite) {
501
+ .done((oSite) => {
502
502
  oModifyHomePageUtils.removeGroupFromSite(oSite, oGroup);
503
503
 
504
504
  oCdmSiteService.save()
505
- .done(function () {
505
+ .done(() => {
506
506
  oDeferred.resolve();
507
507
  })
508
- .fail(function (sErrorMsg) {
508
+ .fail((sErrorMsg) => {
509
509
  oDeferred.reject(sErrorMsg);
510
510
  });
511
511
  })
512
- .fail(function (sError) {
512
+ .fail((sError) => {
513
513
  oDeferred.reject(sGenericErrorMessage + sError);
514
514
  });
515
515
 
@@ -529,22 +529,22 @@ sap.ui.define([
529
529
  * @deprecated since 1.120
530
530
  */
531
531
  this.resetGroup = function (oGroup) {
532
- var oDeferred = new jQuery.Deferred();
533
- var oCdmSiteService = this.oCDMService;
534
- var aSiteGroupsBackup = [];
535
- var that = this;
532
+ const oDeferred = new jQuery.Deferred();
533
+ const oCdmSiteService = this.oCDMService;
534
+ const aSiteGroupsBackup = [];
535
+ const that = this;
536
536
 
537
537
  if (typeof oGroup === "object" && oReadHomePageUtils.getGroupId(oGroup)) {
538
- var sGroupId = oReadHomePageUtils.getGroupId(oGroup);
539
- var sGenericErrorMessage = "Failed to reset group with id '" + sGroupId + "'. ";
538
+ const sGroupId = oReadHomePageUtils.getGroupId(oGroup);
539
+ const sGenericErrorMessage = `Failed to reset group with id '${sGroupId}'. `;
540
540
 
541
541
  oCdmSiteService.getSite()
542
- .done(function (oSite) {
542
+ .done((oSite) => {
543
543
  deepExtend(aSiteGroupsBackup, oReadHomePageUtils.getGroupsArrayFromSite(oSite));
544
544
 
545
545
  if (that.isGroupRemovable(oGroup) === false) {
546
546
  oCdmSiteService.getGroupFromOriginalSite(sGroupId)
547
- .done(function (oGroupFromOriginalSite) {
547
+ .done((oGroupFromOriginalSite) => {
548
548
  // overwrite respective group in site with the one returned by the original site
549
549
  if (typeof oSite === "object" && oReadHomePageUtils.getGroupFromSite(oSite, sGroupId)) {
550
550
  oModifyHomePageUtils.overwriteGroup(oSite, oGroupFromOriginalSite, sGroupId);
@@ -552,21 +552,21 @@ sap.ui.define([
552
552
 
553
553
  // persist personalization
554
554
  oCdmSiteService.save()
555
- .done(function () {
555
+ .done(() => {
556
556
  oDeferred.resolve(oGroupFromOriginalSite);
557
557
  })
558
- .fail(function (sErrorMsg1) {
559
- oDeferred.reject("Group could not be reset - " + sErrorMsg1, aSiteGroupsBackup);
558
+ .fail((sErrorMsg1) => {
559
+ oDeferred.reject(`Group could not be reset - ${sErrorMsg1}`, aSiteGroupsBackup);
560
560
  });
561
561
  })
562
- .fail(function (sErrorMsg) {
563
- oDeferred.reject("Group could not be reset - " + sErrorMsg, aSiteGroupsBackup);
562
+ .fail((sErrorMsg) => {
563
+ oDeferred.reject(`Group could not be reset - ${sErrorMsg}`, aSiteGroupsBackup);
564
564
  });
565
565
  } else {
566
566
  oDeferred.reject("Group could not be reset as it was created by the user", aSiteGroupsBackup);
567
567
  }
568
568
  })
569
- .fail(function (sError) {
569
+ .fail((sError) => {
570
570
  // reject with the original groups cannot be done in this case as
571
571
  // loading of site failed
572
572
  oDeferred.reject(sGenericErrorMessage + sError, []);
@@ -602,7 +602,7 @@ sap.ui.define([
602
602
  * supported, and <code>false</code> if not.
603
603
  * @deprecated since 1.120
604
604
  */
605
- this.isLinkPersonalizationSupported = function (/*oTile*/) {
605
+ this.isLinkPersonalizationSupported = function (/* oTile */) {
606
606
  return true;
607
607
  };
608
608
 
@@ -629,7 +629,7 @@ sap.ui.define([
629
629
  * @deprecated since 1.120
630
630
  */
631
631
  this.refreshTile = function (oTile) {
632
- var oResolvedTile = this._mResolvedTiles[oTile.id];
632
+ const oResolvedTile = this._mResolvedTiles[oTile.id];
633
633
 
634
634
  if (oResolvedTile) {
635
635
  if (oResolvedTile.tileComponent) {
@@ -670,12 +670,12 @@ sap.ui.define([
670
670
  * @deprecated since 1.120
671
671
  */
672
672
  this.getTileView = function (oGroupTile) {
673
- var that = this;
674
- return new jQuery.Deferred(function (oDeferred) {
675
- return that._getTileView(oGroupTile, false).then(function (oTileUI) {
673
+ const that = this;
674
+ return new jQuery.Deferred((oDeferred) => {
675
+ return that._getTileView(oGroupTile, false).then((oTileUI) => {
676
676
  oDeferred.resolve(oTileUI);
677
- }, function (sReason) {
678
- var sErrorMessage = "Tile with ID '" + oGroupTile.id + "' could not be initialized" + (sReason ? ":\n" + sReason : ".");
677
+ }, (sReason) => {
678
+ const sErrorMessage = `Tile with ID '${oGroupTile.id}' could not be initialized${sReason ? `:\n${sReason}` : "."}`;
679
679
 
680
680
  Log.error(sErrorMessage, null, oGroupTile.tileType);
681
681
  oDeferred.reject(sErrorMessage);
@@ -695,10 +695,10 @@ sap.ui.define([
695
695
  * @private
696
696
  */
697
697
  this._getCatalogTileViewControl = function (oCatalogTile) {
698
- var oDeferred = new jQuery.Deferred();
698
+ const oDeferred = new jQuery.Deferred();
699
699
 
700
700
  if (typeof oCatalogTile !== "object") {
701
- var sErrorMessage = "Invalid input parameter passed to _getCatalogTileView: " + oCatalogTile;
701
+ const sErrorMessage = `Invalid input parameter passed to _getCatalogTileView: ${oCatalogTile}`;
702
702
  Log.error(sErrorMessage);
703
703
  return oDeferred.reject(sErrorMessage).promise();
704
704
  }
@@ -727,10 +727,10 @@ sap.ui.define([
727
727
  * @private
728
728
  */
729
729
  this._createLinkInstance = function (oTile, bIsCatalogTile, sNavigationMode, fnGenericTile, oResources) {
730
- var sTileTitle;
731
- var sTileSubTitle = this.getTileSubtitle(oTile);
730
+ let sTileTitle;
731
+ const sTileSubTitle = this.getTileSubtitle(oTile);
732
732
 
733
- var GenericTile = fnGenericTile;
733
+ const GenericTile = fnGenericTile;
734
734
 
735
735
  // should only be called after tile has been resolved
736
736
  if (bIsCatalogTile === true) {
@@ -740,27 +740,27 @@ sap.ui.define([
740
740
  }
741
741
 
742
742
  // By using the LineMode, the GenericTile is displayed as a Link
743
- var linkTileControl = new GenericTile({
743
+ const linkTileControl = new GenericTile({
744
744
  mode: oGenericTileMode.LineMode,
745
745
  subheader: sTileSubTitle,
746
746
  header: sTileTitle,
747
747
  url: WindowUtils.getLeanURL(this.getTileTarget(oTile)),
748
- //TODO: The below code is for POC only, should be removed once UI5 provide action buttons for line mode
748
+ // TODO: The below code is for POC only, should be removed once UI5 provide action buttons for line mode
749
749
  press: function (oEvent) {
750
750
  this._genericTilePressHandler(oTile, oEvent);
751
751
  }.bind(this)
752
752
  });
753
753
  if (sNavigationMode) {
754
- var sTranslatedNavMode = oResources.i18n.getText(sNavigationMode + "NavigationMode");
755
- //According to ACC-257 aria-label should start with the navigation mode, then the tile content
756
- linkTileControl.setAriaLabel(sTranslatedNavMode + " " + sTileTitle + " " + sTileSubTitle);
754
+ const sTranslatedNavMode = oResources.i18n.getText(`${sNavigationMode}NavigationMode`);
755
+ // According to ACC-257 aria-label should start with the navigation mode, then the tile content
756
+ linkTileControl.setAriaLabel(`${sTranslatedNavMode} ${sTileTitle} ${sTileSubTitle}`);
757
757
  }
758
758
  this._mResolvedTiles[oTile.id].linkTileControl = linkTileControl;
759
759
  return linkTileControl;
760
760
  };
761
761
 
762
762
  this._genericTilePressHandler = function (oTile, oEvent) {
763
- var sTargetURL;
763
+ let sTargetURL;
764
764
 
765
765
  if (oEvent.getSource().getScope && oEvent.getSource().getScope() === "Display") {
766
766
  sTargetURL = this.getTileTarget(oTile);
@@ -781,6 +781,85 @@ sap.ui.define([
781
781
  }
782
782
  };
783
783
 
784
+ /**
785
+ * Updates the properties of a bookmark tile during its composition.
786
+ * @param {object} oTile JSON Object that holds the properties of a bookmark tile.
787
+ * @param {object} oParameters Properties to merge into the bookmark tile
788
+ * @param {object} oTarget The navigation target as a JSON object.
789
+ *
790
+ * @deprecated since 1.120
791
+ */
792
+ function updateTileComposition (oTile, oParameters, oTarget) {
793
+ // Avoid modifying callers reference.
794
+ oParameters = deepExtend({}, oParameters);
795
+
796
+ if (oTarget) {
797
+ oTile.target = oTarget;
798
+ }
799
+
800
+ if (oParameters.title || oParameters.title === "") {
801
+ oTile.title = oParameters.title;
802
+ }
803
+
804
+ if (oParameters.icon || oParameters.icon === "") {
805
+ oTile.icon = oParameters.icon;
806
+ }
807
+
808
+ if (oParameters.subtitle || oParameters.subtitle === "") {
809
+ oTile.subTitle = oParameters.subtitle;
810
+ }
811
+
812
+ if (oParameters.info || oParameters.info === "") {
813
+ oTile.info = oParameters.info;
814
+ }
815
+
816
+ if (oParameters.numberUnit || oParameters.numberUnit === "") {
817
+ oTile.numberUnit = oParameters.numberUnit;
818
+ }
819
+
820
+ if (oParameters.dataSource) {
821
+ oTile.dataSource = {
822
+ type: oParameters.dataSource.type,
823
+ settings: {
824
+ odataVersion: ObjectPath.get(["dataSource", "settings", "odataVersion"], oParameters)
825
+ }
826
+ };
827
+ }
828
+
829
+ if (oParameters.serviceUrl) {
830
+ oTile.indicatorDataSource = {
831
+ path: oParameters.serviceUrl
832
+ };
833
+ }
834
+
835
+ if (oTile.indicatorDataSource && (oParameters.serviceRefreshInterval || oParameters.serviceRefreshInterval === 0)) {
836
+ oTile.indicatorDataSource.refresh = oParameters.serviceRefreshInterval;
837
+ }
838
+
839
+ if (oParameters.vizConfig) {
840
+ oTile.vizConfig = oParameters.vizConfig;
841
+ }
842
+ }
843
+
844
+ /**
845
+ * Compose a new tile
846
+ * @param {object} oParameters Parameters
847
+ * @param {object} oTarget Target
848
+ * @returns {object} Tile
849
+ * @deprecated since 1.120
850
+ */
851
+ function composeNewTile (oParameters, oTarget) {
852
+ // TODO Collect all tile ids to pass them as an arry to
853
+ // generateUniqueId
854
+ const oTile = {
855
+ id: oUshellUtils.generateUniqueId([])
856
+ };
857
+
858
+ updateTileComposition(oTile, oParameters, oTarget);
859
+
860
+ return oTile;
861
+ }
862
+
784
863
  /**
785
864
  * Adds a tile to the homepage. Furthermore the personalization will be
786
865
  * persisted for the end user.
@@ -797,14 +876,14 @@ sap.ui.define([
797
876
  * @deprecated since 1.120
798
877
  */
799
878
  this.addTile = function (oCatalogTile, oGroup) {
800
- var oDeferred = new jQuery.Deferred();
801
- var oCdmSiteService = this.oCDMService;
879
+ const oDeferred = new jQuery.Deferred();
880
+ const oCdmSiteService = this.oCDMService;
802
881
 
803
882
  if (!oGroup) {
804
883
  oGroup = this._oDefaultGroup;
805
884
  }
806
885
 
807
- var oGroupTile = composeNewTile();
886
+ const oGroupTile = composeNewTile();
808
887
  oGroupTile.vizId = oCatalogTile.vizId;
809
888
 
810
889
  // add new tile to list of resolved tiles
@@ -814,22 +893,22 @@ sap.ui.define([
814
893
  isLink: false
815
894
  };
816
895
  oCdmSiteService.getSite()
817
- .done(function (oSite) {
896
+ .done((oSite) => {
818
897
  // We should think about the reasons why it's not safe to
819
898
  // do the following, even though it's more succint:
820
899
  // oGroup.payload.tiles.push(oTile);
821
900
  oSite.groups[oGroup.identification.id].payload.tiles.push(oGroupTile);
822
901
  oCdmSiteService.save()
823
- .done(function () {
902
+ .done(() => {
824
903
  oDeferred.resolve(oGroupTile);
825
904
  })
826
- .fail(function (sReason) {
905
+ .fail((sReason) => {
827
906
  oDeferred.reject(sReason);
828
907
  });
829
908
  })
830
- .fail(function (sError) {
831
- var sGenericErrorMessage = "Failed to add tile with id '" + oGroupTile.id +
832
- "' to group with id '" + oGroup.identification.id + "'. ";
909
+ .fail((sError) => {
910
+ const sGenericErrorMessage = `Failed to add tile with id '${oGroupTile.id
911
+ }' to group with id '${oGroup.identification.id}'. `;
833
912
  oDeferred.reject(sGenericErrorMessage + sError);
834
913
  });
835
914
 
@@ -852,20 +931,20 @@ sap.ui.define([
852
931
  * @deprecated since 1.120
853
932
  */
854
933
  this.removeTile = function (oGroup, oTile, iIndex) {
855
- var oCdmSiteService = this.oCDMService;
856
- var oDeferred = new jQuery.Deferred();
857
- var that = this;
934
+ const oCdmSiteService = this.oCDMService;
935
+ const oDeferred = new jQuery.Deferred();
936
+ const that = this;
858
937
 
859
938
  if (!oGroup || typeof oGroup !== "object" || !oGroup.identification || !oGroup.identification.id ||
860
939
  !oTile || typeof oTile !== "object" || !oTile.id) {
861
940
  return oDeferred.reject({}, "Failed to remove tile. No valid input parameters passed to removeTile method.").promise();
862
941
  }
863
942
 
864
- var sGenericErrorMessage = "Failed to remove tile with id '" + oTile.id + "' from group with id '" + oGroup.identification.id + "'. ";
943
+ const sGenericErrorMessage = `Failed to remove tile with id '${oTile.id}' from group with id '${oGroup.identification.id}'. `;
865
944
 
866
945
  oCdmSiteService.getSite()
867
- .done(function (oSite) {
868
- var oPayload;
946
+ .done((oSite) => {
947
+ let oPayload;
869
948
 
870
949
  // succinctly convert iIndex to number
871
950
  iIndex = +iIndex;
@@ -876,10 +955,10 @@ sap.ui.define([
876
955
  oDeferred.reject(oSite.groups[oGroup.identification.id], sGenericErrorMessage);
877
956
  }
878
957
 
879
- //according to the tile type set oPayload tile / links to be truncated.
880
- var sPayloadType = that.getTileType(oTile) === that.TileType.Link ? "links" : "tiles";
958
+ // according to the tile type set oPayload tile / links to be truncated.
959
+ const sPayloadType = that.getTileType(oTile) === that.TileType.Link ? "links" : "tiles";
881
960
 
882
- //In case the target is a link convert the iTargetIndex to the index of links payload.
961
+ // In case the target is a link convert the iTargetIndex to the index of links payload.
883
962
  if (that.getTileType(oTile) === that.TileType.Link) {
884
963
  iIndex -= oPayload.tiles.length;
885
964
  }
@@ -888,21 +967,21 @@ sap.ui.define([
888
967
  // remove element in group
889
968
  oPayload[sPayloadType].splice(iIndex, 1);
890
969
  } else {
891
- oPayload[sPayloadType] = oPayload[sPayloadType].filter(function (oGroupElement) {
970
+ oPayload[sPayloadType] = oPayload[sPayloadType].filter((oGroupElement) => {
892
971
  return oGroupElement.id !== oTile.id;
893
972
  });
894
973
  }
895
974
 
896
975
  oCdmSiteService.save()
897
- .done(function () {
976
+ .done(() => {
898
977
  oDeferred.resolve();
899
978
  })
900
- .fail(function (sErrorMsg) {
979
+ .fail((sErrorMsg) => {
901
980
  Log.error(sErrorMsg);
902
981
  oDeferred.reject(oSite.groups[oGroup.identification.id], sErrorMsg);
903
982
  });
904
983
  })
905
- .fail(function (sError) {
984
+ .fail((sError) => {
906
985
  // Reject an empty group object, as site with correct group data could not get accessed
907
986
  oDeferred.reject({}, sGenericErrorMessage + sError);
908
987
  });
@@ -932,9 +1011,9 @@ sap.ui.define([
932
1011
  * @deprecated since 1.120
933
1012
  */
934
1013
  this.moveTile = function (oTile, iSourceIndex, iTargetIndex, oSourceGroup, oTargetGroup, newTileType) {
935
- var oDeferred = new jQuery.Deferred();
936
- var oCdmSiteService = this.oCDMService;
937
- var that = this;
1014
+ const oDeferred = new jQuery.Deferred();
1015
+ const oCdmSiteService = this.oCDMService;
1016
+ const that = this;
938
1017
 
939
1018
  if (!oTile || isEmptyObject(oTile) ||
940
1019
  iSourceIndex === undefined || iSourceIndex < 0 ||
@@ -944,30 +1023,30 @@ sap.ui.define([
944
1023
  return oDeferred.reject("Invalid input parameters").promise();
945
1024
  }
946
1025
 
947
- var sGenericErrorMessage = "Failed to move tile with id '" + oTile.id + "'. ";
1026
+ const sGenericErrorMessage = `Failed to move tile with id '${oTile.id}'. `;
948
1027
 
949
1028
  oCdmSiteService.getSite()
950
- .done(function (oSite) {
951
- var sOrigTileType = that.getTileType(oTile) === that.TileType.Link ? "links" : "tiles";
1029
+ .done((oSite) => {
1030
+ const sOrigTileType = that.getTileType(oTile) === that.TileType.Link ? "links" : "tiles";
952
1031
 
953
- //if newTileType is not defined convert to the same type.
1032
+ // if newTileType is not defined convert to the same type.
954
1033
  if (!newTileType) {
955
1034
  newTileType = that._mResolvedTiles[oTile.id].isLink ? "link" : "tile";
956
1035
  }
957
1036
 
958
- var sTargetPayloadType = newTileType === "link" ? "links" : "tiles";
1037
+ const sTargetPayloadType = newTileType === "link" ? "links" : "tiles";
959
1038
 
960
1039
  // change the _mResolvedTiles tile type.
961
1040
  if (sOrigTileType !== sTargetPayloadType && that._mResolvedTiles[oTile.id]) {
962
1041
  that._mResolvedTiles[oTile.id].isLink = newTileType === "link"; // currently only bookmark tiles can be created
963
1042
  }
964
1043
 
965
- //In case the target is a link convert the iTargetIndex to the index of links payload.
1044
+ // In case the target is a link convert the iTargetIndex to the index of links payload.
966
1045
  if (sTargetPayloadType === "links") {
967
1046
  iTargetIndex -= oSite.groups[oTargetGroup.identification.id].payload.tiles.length;
968
1047
  }
969
1048
 
970
- //In case the source is a link convert the index to the index of links payload.
1049
+ // In case the source is a link convert the index to the index of links payload.
971
1050
  if (sOrigTileType === "links") {
972
1051
  iSourceIndex -= oSite.groups[oSourceGroup.identification.id].payload.tiles.length;
973
1052
  }
@@ -976,7 +1055,7 @@ sap.ui.define([
976
1055
  if (oSourceGroup.identification.id === oTargetGroup.identification.id) {
977
1056
  // within a group
978
1057
  if (iSourceIndex !== iTargetIndex || sOrigTileType !== sTargetPayloadType) {
979
- var oGroupPayload = oSite.groups[oTargetGroup.identification.id].payload;
1058
+ const oGroupPayload = oSite.groups[oTargetGroup.identification.id].payload;
980
1059
  oGroupPayload[sOrigTileType].splice(iSourceIndex, 1); // remove tile at source index
981
1060
  oGroupPayload[sTargetPayloadType].splice(iTargetIndex, 0, oTile); // add tile at target index
982
1061
  } else {
@@ -990,16 +1069,16 @@ sap.ui.define([
990
1069
  }
991
1070
 
992
1071
  oCdmSiteService.save()
993
- .done(function () {
1072
+ .done(() => {
994
1073
  oDeferred.resolve(oTile);
995
1074
  })
996
- .fail(function (sError) {
1075
+ .fail((sError) => {
997
1076
  Log.error(sGenericErrorMessage + sError);
998
1077
  oDeferred.reject(sGenericErrorMessage + sError);
999
1078
  });
1000
1079
  return undefined;
1001
1080
  })
1002
- .fail(function (sError) {
1081
+ .fail((sError) => {
1003
1082
  Log.error(sGenericErrorMessage + sError);
1004
1083
  oDeferred.reject(sGenericErrorMessage + sError);
1005
1084
  });
@@ -1033,21 +1112,21 @@ sap.ui.define([
1033
1112
  * the order with which the catalogs are returned.
1034
1113
  */
1035
1114
  this.getCatalogs = function () {
1036
- var that = this;
1037
- var oDeferred = new jQuery.Deferred();
1038
- var aCatalogs = [];
1115
+ const that = this;
1116
+ const oDeferred = new jQuery.Deferred();
1117
+ const aCatalogs = [];
1039
1118
 
1040
1119
  function processCatalog (oCdmSite, sCatalogId, aCatalogs, oGetCatalogsDeferred) {
1041
- var oCatalog = oCdmSite.catalogs[sCatalogId];
1120
+ const oCatalog = oCdmSite.catalogs[sCatalogId];
1042
1121
  aCatalogs.push(oCatalog);
1043
1122
  oGetCatalogsDeferred.notify(oCatalog);
1044
1123
  }
1045
1124
 
1046
1125
  // setTimeout is required here. Otherwise the the oDeferred.notify() would
1047
1126
  // be a synchronous call, which would cause wrong behavior in some scenarios
1048
- Container.getServiceAsync("CommonDataModel").then(function (oCDMSiteService) {
1049
- oCDMSiteService.getSite().done(function (oSite) {
1050
- Object.keys(oSite.catalogs).forEach(function (sCatalogId) {
1127
+ Container.getServiceAsync("CommonDataModel").then((oCDMSiteService) => {
1128
+ oCDMSiteService.getSite().done((oSite) => {
1129
+ Object.keys(oSite.catalogs).forEach((sCatalogId) => {
1051
1130
  processCatalog(oSite, sCatalogId, aCatalogs, oDeferred);
1052
1131
  });
1053
1132
  // In our tests we use indices to access specific
@@ -1079,11 +1158,11 @@ sap.ui.define([
1079
1158
  return false;
1080
1159
  }
1081
1160
 
1082
- var aNonStartableInbounds = [
1161
+ const aNonStartableInbounds = [
1083
1162
  "Shell-plugin",
1084
1163
  "Shell-bootConfig" // just in case
1085
1164
  ];
1086
- if (aNonStartableInbounds.indexOf(oInbound.semanticObject + "-" + oInbound.action) > -1) {
1165
+ if (aNonStartableInbounds.indexOf(`${oInbound.semanticObject}-${oInbound.action}`) > -1) {
1087
1166
  // This is a special intent which is not startable
1088
1167
  return false;
1089
1168
  }
@@ -1104,16 +1183,16 @@ sap.ui.define([
1104
1183
  * @private
1105
1184
  */
1106
1185
  this._isStartableVisualization = function (oVisualization, oInbound) {
1107
- var oInboundParameters = ObjectPath.get("signature.parameters", oInbound);
1186
+ const oInboundParameters = ObjectPath.get("signature.parameters", oInbound);
1108
1187
  if (!oInboundParameters) {
1109
1188
  return true;
1110
1189
  }
1111
1190
 
1112
- var oVisualizationParameters = ObjectPath.get("parameters", oReadVisualization.getTarget(oVisualization));
1191
+ const oVisualizationParameters = ObjectPath.get("parameters", oReadVisualization.getTarget(oVisualization));
1113
1192
 
1114
1193
  // check for matching filter parameters
1115
- return Object.keys(oInboundParameters).every(function (sInboundParameter) {
1116
- var oInboundParameter = oInboundParameters[sInboundParameter];
1194
+ return Object.keys(oInboundParameters).every((sInboundParameter) => {
1195
+ const oInboundParameter = oInboundParameters[sInboundParameter];
1117
1196
 
1118
1197
  // don't filter out legacy URL applications that use the intent Shell-launchURL to model URL tiles
1119
1198
  if (sInboundParameter === "sap-external-url") {
@@ -1126,8 +1205,8 @@ sap.ui.define([
1126
1205
  return true;
1127
1206
  }
1128
1207
 
1129
- var sExpectedFilterValue = oInboundParameter.filter.value;
1130
- var sSuppliedParameterValue = ObjectPath.get([sInboundParameter, "value", "value"], oVisualizationParameters);
1208
+ const sExpectedFilterValue = oInboundParameter.filter.value;
1209
+ const sSuppliedParameterValue = ObjectPath.get([sInboundParameter, "value", "value"], oVisualizationParameters);
1131
1210
 
1132
1211
  if (sExpectedFilterValue !== sSuppliedParameterValue) {
1133
1212
  return false;
@@ -1154,12 +1233,12 @@ sap.ui.define([
1154
1233
  * @private
1155
1234
  */
1156
1235
  this._toHashFromInbound = function (oInbound) {
1157
- var sConstructedHash = oUtilsCdm.toHashFromInbound(oInbound);
1236
+ const sConstructedHash = oUtilsCdm.toHashFromInbound(oInbound);
1158
1237
 
1159
1238
  if (!sConstructedHash) {
1160
1239
  return undefined;
1161
1240
  }
1162
- return "#" + sConstructedHash;
1241
+ return `#${sConstructedHash}`;
1163
1242
  };
1164
1243
 
1165
1244
  /**
@@ -1191,88 +1270,49 @@ sap.ui.define([
1191
1270
  * @private
1192
1271
  */
1193
1272
  this._toHashFromOutbound = function (oOutbound) {
1194
- var sConstructedHash = oUtilsCdm.toHashFromOutbound(oOutbound);
1273
+ const sConstructedHash = oUtilsCdm.toHashFromOutbound(oOutbound);
1195
1274
 
1196
1275
  if (!sConstructedHash) {
1197
1276
  return undefined;
1198
1277
  }
1199
- return "#" + sConstructedHash;
1200
- };
1201
-
1202
- /**
1203
- * Delivers the catalog tiles for a given catalog
1204
- *
1205
- * @param {object} oCatalog
1206
- * Catalog
1207
- * @returns {jQuery.Promise}
1208
- * In case of success the done handler will be called with an array
1209
- * of catalog tiles.
1210
- */
1211
- this.getCatalogTiles = function (oCatalog) {
1212
- var that = this;
1213
- var oDeferred = new jQuery.Deferred();
1214
-
1215
- if (typeof oCatalog !== "object" || oCatalog === null) {
1216
- return oDeferred.reject("Invalid input parameter '" + oCatalog + "' passed to getCatalogTiles.").promise();
1217
- }
1218
-
1219
- // Direct open of search calls getCatalogTiles before the adapter is intialized, do not use this.oCDMService
1220
- this.oCDMServicePromise.then(function (oCDMService) {
1221
- oCDMService.getSite()
1222
- .done(function (oSite) {
1223
- getCatalogTilesFromSite.call(that, oCatalog, oSite)
1224
- .done(oDeferred.resolve)
1225
- .fail(oDeferred.reject);
1226
- })
1227
- .fail(function (sErrorMessage2) {
1228
- oDeferred.reject("Failed to get site: " + sErrorMessage2);
1229
- });
1230
- });
1231
-
1232
- return oDeferred.promise();
1278
+ return `#${sConstructedHash}`;
1233
1279
  };
1234
1280
 
1235
1281
  function getCatalogTilesFromSite (oCatalog, oSite) {
1236
- var that = this;
1237
- var oDeferred = new jQuery.Deferred();
1282
+ const that = this;
1283
+ const oDeferred = new jQuery.Deferred();
1238
1284
 
1239
- setTimeout(function () {
1285
+ setTimeout(() => {
1240
1286
  // calculate async
1241
- var aCatalogTiles = ((oCatalog.payload && oCatalog.payload.viz) || [])
1242
- .reduce(function (aReturnedCatalogTiles, sVisualizationId) {
1243
- var sAppId;
1244
- var oVisualization;
1245
- var sVisualizationTypeId;
1246
- var oVisualizationType;
1247
- var oAppDescriptor;
1248
- var oInboundResult;
1249
- var sHash;
1250
- var oMapped;
1251
- var sNavigationMode;
1252
- var oOutbound;
1253
- var oTileResolutionResult;
1254
- var oCatalogTile;
1255
- var sExternalUrl;
1256
- var sApplicationType;
1257
- var sAdditionalInformation;
1258
- var bIsApplicationTypeConfiguredInPlace;
1259
- var oEnableInPlaceForClassicUIsConfig;
1260
- var aTechnicalAttributes;
1287
+ const aCatalogTiles = ((oCatalog.payload && oCatalog.payload.viz) || [])
1288
+ .reduce((aReturnedCatalogTiles, sVisualizationId) => {
1289
+ let oAppDescriptor;
1290
+ let oInboundResult;
1291
+ let sHash;
1292
+ let oMapped;
1293
+ let sNavigationMode;
1294
+ let oOutbound;
1295
+ let sExternalUrl;
1296
+ let sApplicationType;
1297
+ let sAdditionalInformation;
1298
+ let bIsApplicationTypeConfiguredInPlace;
1299
+ let oEnableInPlaceForClassicUIsConfig;
1300
+ let aTechnicalAttributes;
1261
1301
 
1262
1302
  // Get visualization and type
1263
1303
  if (!sVisualizationId) {
1264
1304
  return aReturnedCatalogTiles;
1265
1305
  }
1266
1306
 
1267
- oVisualization = oReadVisualization.get(oSite, sVisualizationId);
1307
+ const oVisualization = oReadVisualization.get(oSite, sVisualizationId);
1268
1308
  if (!oVisualization) {
1269
1309
  return aReturnedCatalogTiles;
1270
1310
  }
1271
1311
 
1272
- sVisualizationTypeId = oReadVisualization.getTypeId(oVisualization);
1273
- oVisualizationType = oReadVisualization.getType(oSite, sVisualizationTypeId);
1312
+ const sVisualizationTypeId = oReadVisualization.getTypeId(oVisualization);
1313
+ const oVisualizationType = oReadVisualization.getType(oSite, sVisualizationTypeId);
1274
1314
 
1275
- sAppId = oReadVisualization.getAppId(oVisualization);
1315
+ const sAppId = oReadVisualization.getAppId(oVisualization);
1276
1316
 
1277
1317
  if (sAppId) {
1278
1318
  // Read its target app descriptor and inbound
@@ -1311,7 +1351,7 @@ sap.ui.define([
1311
1351
  aTechnicalAttributes = oReadApplications.getTechnicalAttributes(oAppDescriptor);
1312
1352
  } else {
1313
1353
  // Resolve tile via visualization's configuration
1314
- var oConfig = oReadVisualization.getConfig(oVisualization);
1354
+ const oConfig = oReadVisualization.getConfig(oVisualization);
1315
1355
  if (oConfig === undefined) {
1316
1356
  return aReturnedCatalogTiles;
1317
1357
  }
@@ -1323,7 +1363,7 @@ sap.ui.define([
1323
1363
  }
1324
1364
  }
1325
1365
 
1326
- oTileResolutionResult = oMapped.tileResolutionResult;
1366
+ const oTileResolutionResult = oMapped.tileResolutionResult;
1327
1367
  oTileResolutionResult.navigationMode = sNavigationMode;
1328
1368
  oTileResolutionResult.technicalAttributes = aTechnicalAttributes;
1329
1369
 
@@ -1341,7 +1381,7 @@ sap.ui.define([
1341
1381
  );
1342
1382
  }
1343
1383
 
1344
- oCatalogTile = {
1384
+ const oCatalogTile = {
1345
1385
  id: sVisualizationId, // reuse the vizId as it is stable and unique
1346
1386
  vizId: sVisualizationId,
1347
1387
  tileIntent: sExternalUrl || sHash,
@@ -1367,6 +1407,39 @@ sap.ui.define([
1367
1407
  return oDeferred.promise();
1368
1408
  }
1369
1409
 
1410
+ /**
1411
+ * Delivers the catalog tiles for a given catalog
1412
+ *
1413
+ * @param {object} oCatalog
1414
+ * Catalog
1415
+ * @returns {jQuery.Promise}
1416
+ * In case of success the done handler will be called with an array
1417
+ * of catalog tiles.
1418
+ */
1419
+ this.getCatalogTiles = function (oCatalog) {
1420
+ const that = this;
1421
+ const oDeferred = new jQuery.Deferred();
1422
+
1423
+ if (typeof oCatalog !== "object" || oCatalog === null) {
1424
+ return oDeferred.reject(`Invalid input parameter '${oCatalog}' passed to getCatalogTiles.`).promise();
1425
+ }
1426
+
1427
+ // Direct open of search calls getCatalogTiles before the adapter is intialized, do not use this.oCDMService
1428
+ this.oCDMServicePromise.then((oCDMService) => {
1429
+ oCDMService.getSite()
1430
+ .done((oSite) => {
1431
+ getCatalogTilesFromSite.call(that, oCatalog, oSite)
1432
+ .done(oDeferred.resolve)
1433
+ .fail(oDeferred.reject);
1434
+ })
1435
+ .fail((sErrorMessage2) => {
1436
+ oDeferred.reject(`Failed to get site: ${sErrorMessage2}`);
1437
+ });
1438
+ });
1439
+
1440
+ return oDeferred.promise();
1441
+ };
1442
+
1370
1443
  /**
1371
1444
  * Returns the catalog's technical error message in case it could not be loaded.
1372
1445
  * <p>
@@ -1552,8 +1625,8 @@ sap.ui.define([
1552
1625
  * Keywords of respective catalog tile
1553
1626
  */
1554
1627
  this.getCatalogTileKeywords = function (oGroupTileOrCatalogTile) {
1555
- var aKeywords = [];
1556
- var oResolvedTile = oGroupTileOrCatalogTile;
1628
+ const aKeywords = [];
1629
+ let oResolvedTile = oGroupTileOrCatalogTile;
1557
1630
 
1558
1631
  if (!oResolvedTile) {
1559
1632
  Log.error(
@@ -1594,8 +1667,8 @@ sap.ui.define([
1594
1667
  * Technical attributes of respective catalog tile
1595
1668
  */
1596
1669
  this.getCatalogTileTechnicalAttributes = function (oGroupTileOrCatalogTile) {
1597
- var aTechnicalAttributes = [];
1598
- var oResolvedTile = oGroupTileOrCatalogTile;
1670
+ const aTechnicalAttributes = [];
1671
+ let oResolvedTile = oGroupTileOrCatalogTile;
1599
1672
 
1600
1673
  if (!oResolvedTile) {
1601
1674
  Log.error(
@@ -1619,6 +1692,114 @@ sap.ui.define([
1619
1692
  return aTechnicalAttributes;
1620
1693
  };
1621
1694
 
1695
+ /**
1696
+ * Create tile parameters
1697
+ * @param {object} oIntentParams Intent parameters
1698
+ * @returns {object} Tile parameters
1699
+ * @deprecated since 1.120
1700
+ */
1701
+ function createTileParametersFromIntentParams (oIntentParams) {
1702
+ return Object.keys(oIntentParams).map((sKey) => {
1703
+ const sValue = oIntentParams[sKey] && oIntentParams[sKey][0];
1704
+
1705
+ return {
1706
+ name: sKey,
1707
+ // sValue maybe undefined.
1708
+ value: sValue || ""
1709
+ };
1710
+ });
1711
+ }
1712
+
1713
+ /**
1714
+ * Create a new target
1715
+ * @param {object} oIntent Intent
1716
+ * @returns {object} Target
1717
+ * @deprecated since 1.120
1718
+ */
1719
+ function createNewTargetFromIntent (oIntent) {
1720
+ const oTarget = {
1721
+ semanticObject: oIntent.semanticObject,
1722
+ action: oIntent.action,
1723
+ parameters: createTileParametersFromIntentParams(oIntent.params)
1724
+ };
1725
+
1726
+ if (oIntent.appSpecificRoute) {
1727
+ // do not loose the inner-app hash (e.g. &/ShoppingCart(12345))
1728
+ // BCP 1670533333
1729
+ oTarget.appSpecificRoute = oIntent.appSpecificRoute;
1730
+ }
1731
+
1732
+ return oTarget;
1733
+ }
1734
+
1735
+ /**
1736
+ * Create a new target
1737
+ * @param {string} sUrl Url
1738
+ * @returns {object} target to the given URL.
1739
+ * @deprecated since 1.120
1740
+ */
1741
+ function createNewTargetFromUrl (sUrl) {
1742
+ return { url: sUrl };
1743
+ }
1744
+
1745
+ /**
1746
+ * Convert parameters to a string
1747
+ * @param {Array} aList List of parameters
1748
+ * @returns {string} a string, combining each of the given parameters and values, sorted.
1749
+ * @deprecated since 1.120
1750
+ */
1751
+ function transformParameterListToString (aList) {
1752
+ return aList
1753
+ .map((oParameter) => {
1754
+ return oParameter.name + oParameter.value;
1755
+ })
1756
+ .sort()
1757
+ .join();
1758
+ }
1759
+
1760
+ /**
1761
+ * Compare parameters
1762
+ * @param {Array} aParameters Array of parameters
1763
+ * @param {Array} aOthers Array of parameters
1764
+ * @returns {boolean} whether the parameters are the same (perhaps in a different order)
1765
+ * @deprecated since 1.120
1766
+ */
1767
+ function isSameParameters (aParameters, aOthers) {
1768
+ aParameters = aParameters || [];
1769
+ aOthers = aOthers || [];
1770
+
1771
+ if (aParameters.length === aOthers.length) {
1772
+ const sFirst = transformParameterListToString(aParameters);
1773
+ const sOther = transformParameterListToString(aOthers);
1774
+ return sFirst === sOther;
1775
+ }
1776
+
1777
+ return false;
1778
+ }
1779
+
1780
+ /**
1781
+ * Check if the same target
1782
+ * @param {object} oTarget Target
1783
+ * @param {object} oOther Other target
1784
+ * @returns {boolean} whether the target is the same
1785
+ * @deprecated since 1.120
1786
+ */
1787
+ function isSameTarget (oTarget, oOther) {
1788
+ if (oTarget && oOther) {
1789
+ if (oTarget.url) {
1790
+ // url bookmark tile
1791
+ return oTarget.url === oOther.url;
1792
+ }
1793
+
1794
+ return oTarget.semanticObject === oOther.semanticObject
1795
+ && oTarget.action === oOther.action
1796
+ && isSameParameters(oTarget.parameters, oOther.parameters)
1797
+ && oTarget.appSpecificRoute === oOther.appSpecificRoute;
1798
+ }
1799
+
1800
+ return oTarget === oOther;
1801
+ }
1802
+
1622
1803
  /**
1623
1804
  * Counts <b>all</b> bookmarks pointing to the given URL from all of the user's groups.
1624
1805
  * The count is performed by visiting each matching bookmark and executing the optional
@@ -1636,6 +1817,8 @@ sap.ui.define([
1636
1817
  * the respective tile as argument.
1637
1818
  * @param {string} [sVizType]
1638
1819
  * (added with 1.83) The visualization type (viz type) which was used to create the bookmark using {@link #addCustomBookmark}.
1820
+ * @param {string} [sContentProviderId]
1821
+ * the content provider id.
1639
1822
  *
1640
1823
  * @returns {object}
1641
1824
  * A <code>jQuery.Deferred</code> object's promise which informs about success or failure
@@ -1649,8 +1832,8 @@ sap.ui.define([
1649
1832
  * @deprecated since 1.120
1650
1833
  */
1651
1834
  this._visitBookmarks = function (sUrl, fnVisitor, sVizType, sContentProviderId) {
1652
- var oReferenceTarget;
1653
- var oIntent = urlParsing.parseShellHash(sUrl);
1835
+ let oReferenceTarget;
1836
+ const oIntent = urlParsing.parseShellHash(sUrl);
1654
1837
 
1655
1838
  if (oIntent) {
1656
1839
  // oUrlParser.parseShellHash was successful
@@ -1660,16 +1843,16 @@ sap.ui.define([
1660
1843
  oReferenceTarget = createNewTargetFromUrl(sUrl);
1661
1844
  }
1662
1845
 
1663
- return this.oCDMService.getSite().then(function (oSite) {
1664
- var oGroups = oSite.groups;
1846
+ return this.oCDMService.getSite().then((oSite) => {
1847
+ const oGroups = oSite.groups;
1665
1848
 
1666
- var aTiles = Object.keys(oGroups)
1667
- .filter(function (sKey) {
1849
+ const aTiles = Object.keys(oGroups)
1850
+ .filter((sKey) => {
1668
1851
  // Always ignore locked groups.
1669
1852
  return !oGroups[sKey].payload.locked;
1670
1853
  })
1671
- .map(function (sKey) {
1672
- return oGroups[sKey].payload.tiles.filter(function (oTile) {
1854
+ .map((sKey) => {
1855
+ return oGroups[sKey].payload.tiles.filter((oTile) => {
1673
1856
  // Consider only matching bookmark tiles. VizType is only set for custom bookmark tiles.
1674
1857
  return oTile.isBookmark
1675
1858
  && oTile.vizType === sVizType
@@ -1677,7 +1860,7 @@ sap.ui.define([
1677
1860
  && isSameTarget(oReferenceTarget, oTile.target);
1678
1861
  });
1679
1862
  })
1680
- .reduce(function (aAllTiles, aCurrentGroupTiles) {
1863
+ .reduce((aAllTiles, aCurrentGroupTiles) => {
1681
1864
  Array.prototype.push.apply(aAllTiles, aCurrentGroupTiles);
1682
1865
  return aAllTiles;
1683
1866
  }, []);
@@ -1686,12 +1869,31 @@ sap.ui.define([
1686
1869
  return aTiles.length;
1687
1870
  }
1688
1871
 
1689
- return jQuery.when(aTiles.map(fnVisitor)).then(function () {
1872
+ return jQuery.when(aTiles.map(fnVisitor)).then(() => {
1690
1873
  return aTiles.length;
1691
1874
  });
1692
1875
  });
1693
1876
  };
1694
1877
 
1878
+ /**
1879
+ * Compose a new bookmark tile in home mode
1880
+ * @param {object} oParameters Parameters
1881
+ * @param {object} oTarget Target
1882
+ * @param {string} sContentProviderId Content provider ID
1883
+ * @returns {object} bookmark tile object.
1884
+ * @deprecated since 1.120
1885
+ */
1886
+ function composeNewBookmarkTile (oParameters, oTarget, sContentProviderId) {
1887
+ const oTile = composeNewTile(oParameters, oTarget);
1888
+
1889
+ oTile.isBookmark = true;
1890
+ if (sContentProviderId) {
1891
+ oTile.contentProvider = sContentProviderId;
1892
+ }
1893
+
1894
+ return oTile;
1895
+ }
1896
+
1695
1897
  /**
1696
1898
  * Adds a bookmark to the user's home page.
1697
1899
  * Given a specific group the bookmark is added to the group,
@@ -1770,17 +1972,17 @@ sap.ui.define([
1770
1972
  * @deprecated since 1.120
1771
1973
  */
1772
1974
  this.addBookmark = function (oParameters, oGroup, sContentProviderId) {
1773
- var that = this;
1975
+ const that = this;
1774
1976
 
1775
- return new jQuery.Deferred(function (oDeferred) {
1776
- var oCdmSiteService = that.oCDMService;
1977
+ return new jQuery.Deferred((oDeferred) => {
1978
+ const oCdmSiteService = that.oCDMService;
1777
1979
 
1778
1980
  jQuery.when(oGroup || that.getDefaultGroup(), oCdmSiteService.getSite())
1779
- .done(function (oGroup, oSite) {
1780
- var oTarget;
1781
- var oIntent = urlParsing.parseShellHash(oParameters.url);
1782
- var oResolveTilePromise;
1783
- var bIsUrlBookmarkTile = false;
1981
+ .done((oGroup, oSite) => {
1982
+ let oTarget;
1983
+ const oIntent = urlParsing.parseShellHash(oParameters.url);
1984
+ let oResolveTilePromise;
1985
+ let bIsUrlBookmarkTile = false;
1784
1986
 
1785
1987
  if (!oIntent) {
1786
1988
  oTarget = createNewTargetFromUrl(oParameters.url);
@@ -1789,7 +1991,7 @@ sap.ui.define([
1789
1991
  oTarget = createNewTargetFromIntent(oIntent);
1790
1992
  }
1791
1993
 
1792
- var oTile = composeNewBookmarkTile(
1994
+ const oTile = composeNewBookmarkTile(
1793
1995
  oParameters,
1794
1996
  oTarget,
1795
1997
  sContentProviderId
@@ -1804,27 +2006,27 @@ sap.ui.define([
1804
2006
  }
1805
2007
 
1806
2008
  oResolveTilePromise
1807
- .done(function (oNewResolvedTile) {
2009
+ .done((oNewResolvedTile) => {
1808
2010
  oNewResolvedTile.isLink = false; // currently only bookmark tiles can be created
1809
2011
  that._mResolvedTiles[oTile.id] = oNewResolvedTile;
1810
2012
 
1811
2013
  // add tile to the side and save
1812
2014
  oSite.groups[oGroup.identification.id].payload.tiles.push(oTile);
1813
2015
  oCdmSiteService.save()
1814
- .done(function () {
2016
+ .done(() => {
1815
2017
  oDeferred.resolve(oTile);
1816
2018
  })
1817
- .fail(function (sReason) {
2019
+ .fail((sReason) => {
1818
2020
  oDeferred.reject(sReason);
1819
2021
  });
1820
2022
  })
1821
- .fail(function (sErrorMsg) {
2023
+ .fail((sErrorMsg) => {
1822
2024
  // Note: do not add error message to that._mFailedResolvedTiles[oTile.id]
1823
2025
  // as the tile was not created which makes the cache useless
1824
- oDeferred.reject("Bookmark creation failed because: " + sErrorMsg);
2026
+ oDeferred.reject(`Bookmark creation failed because: ${sErrorMsg}`);
1825
2027
  });
1826
2028
  })
1827
- .fail(function (sReason) {
2029
+ .fail((sReason) => {
1828
2030
  oDeferred.reject(sReason);
1829
2031
  });
1830
2032
  }).promise();
@@ -1868,24 +2070,24 @@ sap.ui.define([
1868
2070
  * @deprecated since 1.120
1869
2071
  */
1870
2072
  this.addCustomBookmark = function (oBookmarkConfig, oTargetGroup, sContentProviderId) {
1871
- var oDeferred = new jQuery.Deferred();
2073
+ const oDeferred = new jQuery.Deferred();
1872
2074
 
1873
2075
  Promise.all([
1874
2076
  Container.getServiceAsync("URLParsing"),
1875
2077
  Container.getServiceAsync("CommonDataModel")
1876
- ]).then(function (aResults) {
1877
- var oUrlParsing = aResults[0];
1878
- var oCdmSiteService = aResults[1];
2078
+ ]).then((aResults) => {
2079
+ const oUrlParsing = aResults[0];
2080
+ const oCdmSiteService = aResults[1];
1879
2081
 
1880
2082
  jQuery.when(oTargetGroup || this.getDefaultGroup(), oCdmSiteService.getSite())
1881
- .done(function (oGroup, oSite) {
1882
- var oIntent = oUrlParsing.parseShellHash(oBookmarkConfig.url);
1883
- var bIsUrlBookmarkTile = (oIntent === undefined);
2083
+ .done((oGroup, oSite) => {
2084
+ const oIntent = oUrlParsing.parseShellHash(oBookmarkConfig.url);
2085
+ const bIsUrlBookmarkTile = (oIntent === undefined);
1884
2086
 
1885
- var oTarget = bIsUrlBookmarkTile ? createNewTargetFromUrl(oBookmarkConfig.url) : createNewTargetFromIntent(oIntent);
2087
+ const oTarget = bIsUrlBookmarkTile ? createNewTargetFromUrl(oBookmarkConfig.url) : createNewTargetFromIntent(oIntent);
1886
2088
 
1887
2089
  // building a grouptile but with vizConfig like a visualization
1888
- var oTile = {
2090
+ const oTile = {
1889
2091
  id: oUshellUtils.generateUniqueId([]),
1890
2092
  vizType: oBookmarkConfig.vizType,
1891
2093
  title: oBookmarkConfig.title,
@@ -1907,26 +2109,26 @@ sap.ui.define([
1907
2109
  }
1908
2110
 
1909
2111
  this._resolveTileByVizId(oTile, oSite)
1910
- .done(function (oNewResolvedTile) {
2112
+ .done((oNewResolvedTile) => {
1911
2113
  oNewResolvedTile.isLink = false; // currently only bookmark tiles can be created
1912
2114
  this._mResolvedTiles[oTile.id] = oNewResolvedTile;
1913
2115
 
1914
2116
  // add tile to the site and save
1915
2117
  oSite.groups[oGroup.identification.id].payload.tiles.push(oTile);
1916
2118
  oCdmSiteService.save()
1917
- .done(function () {
2119
+ .done(() => {
1918
2120
  oDeferred.resolve(oTile);
1919
2121
  })
1920
2122
  .fail(oDeferred.reject);
1921
- }.bind(this))
1922
- .fail(function (sErrorMsg) {
2123
+ })
2124
+ .fail((sErrorMsg) => {
1923
2125
  // Note: do not add error message to that._mFailedResolvedTiles[oTile.id]
1924
2126
  // as the tile was not created which makes the cache useless
1925
- oDeferred.reject("Bookmark creation failed because: " + sErrorMsg);
2127
+ oDeferred.reject(`Bookmark creation failed because: ${sErrorMsg}`);
1926
2128
  });
1927
- }.bind(this))
2129
+ })
1928
2130
  .fail(oDeferred.reject);
1929
- }.bind(this));
2131
+ });
1930
2132
 
1931
2133
  return oDeferred.promise();
1932
2134
  };
@@ -1940,6 +2142,8 @@ sap.ui.define([
1940
2142
  *
1941
2143
  * @param {string} sUrl
1942
2144
  * The URL of the bookmarks to be counted, exactly as specified to {@link #addBookmark}.
2145
+ * @param {string} [sContentProviderId]
2146
+ * the content provider id.
1943
2147
  * @returns {object}
1944
2148
  * A <code>jQuery.Deferred</code> object's promise which informs about success or failure
1945
2149
  * of this asynchronous operation. In case of success, the count of existing bookmarks
@@ -1975,9 +2179,9 @@ sap.ui.define([
1975
2179
  return Promise.reject("countCustomBookmarks: Required parameter is missing: oIdentifier.vizType");
1976
2180
  }
1977
2181
 
1978
- return new Promise(function (resolve, reject) {
2182
+ return new Promise((resolve, reject) => {
1979
2183
  this._visitBookmarks(oIdentifier.url, undefined, oIdentifier.vizType, oIdentifier.contentProviderId).done(resolve).fail(reject);
1980
- }.bind(this));
2184
+ });
1981
2185
  };
1982
2186
 
1983
2187
  /**
@@ -2004,7 +2208,8 @@ sap.ui.define([
2004
2208
  *
2005
2209
  * @param {string} [sVizType]
2006
2210
  * (added with 1.83) The visualization type (viz type) which was used to create the bookmark using {@link #addCustomBookmark}.
2007
- *
2211
+ * @param {string} [sContentProviderId]
2212
+ * the content provider id.
2008
2213
  * @returns {object}
2009
2214
  * A <code>jQuery.Deferred</code> object's promise which informs about success or failure
2010
2215
  * of this asynchronous operation. In case of success, the number of updated bookmarks
@@ -2018,19 +2223,19 @@ sap.ui.define([
2018
2223
  * @deprecated since 1.120
2019
2224
  */
2020
2225
  this.updateBookmarks = function (sUrl, oParameters, sVizType, sContentProviderId) {
2021
- var oCdmSiteService = this.oCDMService;
2226
+ const oCdmSiteService = this.oCDMService;
2022
2227
 
2023
- var mResolvedTiles = this._mResolvedTiles;
2228
+ const mResolvedTiles = this._mResolvedTiles;
2024
2229
 
2025
2230
  // Visitor function that updates each encountered bookmark tile as necessary.
2026
2231
  function updateEach (oTile) {
2027
- return new jQuery.Deferred(function (oDeferred) {
2028
- var oNewTarget;
2029
- var bTileViewPropertiesChanged = false;
2030
- var oChangedTileViewProperties = {};
2232
+ return new jQuery.Deferred((oDeferred) => {
2233
+ let oNewTarget;
2234
+ let bTileViewPropertiesChanged = false;
2235
+ const oChangedTileViewProperties = {};
2031
2236
 
2032
2237
  if (oParameters.url || oParameters.url === "") {
2033
- var oIntent = urlParsing.parseShellHash(oParameters.url);
2238
+ const oIntent = urlParsing.parseShellHash(oParameters.url);
2034
2239
  if (!oIntent) {
2035
2240
  // url bookmark tile
2036
2241
  oNewTarget = createNewTargetFromUrl(oParameters.url);
@@ -2071,8 +2276,8 @@ sap.ui.define([
2071
2276
  updateTileComposition(oTile, oParameters, oNewTarget);
2072
2277
 
2073
2278
  if (bTileViewPropertiesChanged && mResolvedTiles[oTile.id]) {
2074
- var oTileComponent = mResolvedTiles[oTile.id].tileComponent;
2075
- //tileComponent is defined in the getTileView method. In case of the direct start, tileComponent is not defined
2279
+ const oTileComponent = mResolvedTiles[oTile.id].tileComponent;
2280
+ // tileComponent is defined in the getTileView method. In case of the direct start, tileComponent is not defined
2076
2281
  if (oTileComponent) {
2077
2282
  oTileComponent.tileSetVisualProperties(oChangedTileViewProperties);
2078
2283
  }
@@ -2085,8 +2290,8 @@ sap.ui.define([
2085
2290
  // When save is successful, return count of updated bookmarks,
2086
2291
  // otherwise the rejected promise due to the failed save operation is returned.
2087
2292
  return this._visitBookmarks(sUrl, updateEach, sVizType, sContentProviderId)
2088
- .then(function (iUpdatedCount) {
2089
- return oCdmSiteService.save().then(function () {
2293
+ .then((iUpdatedCount) => {
2294
+ return oCdmSiteService.save().then(() => {
2090
2295
  return iUpdatedCount;
2091
2296
  });
2092
2297
  });
@@ -2142,9 +2347,9 @@ sap.ui.define([
2142
2347
  return Promise.reject("updateCustomBookmarks: The bookmark url cannot be an empty string");
2143
2348
  }
2144
2349
 
2145
- return new Promise(function (resolve, reject) {
2350
+ return new Promise((resolve, reject) => {
2146
2351
  this.updateBookmarks(oIdentifier.url, oBookmarkConfig, oIdentifier.vizType, oIdentifier.contentProviderId).done(resolve).fail(reject);
2147
- }.bind(this));
2352
+ });
2148
2353
  };
2149
2354
 
2150
2355
  /**
@@ -2154,6 +2359,8 @@ sap.ui.define([
2154
2359
  * The URL of the bookmarks to be deleted, exactly as specified to {@link #addBookmark}.
2155
2360
  * @param {string} [sVizType]
2156
2361
  * (added with 1.83) The visualization type (viz type) which was used to create the bookmark using {@link #addCustomBookmark}.
2362
+ * @param {string} [sContentProviderId]
2363
+ * the content provider id.
2157
2364
  *
2158
2365
  * @returns {object}
2159
2366
  * A <code>jQuery.Deferred</code> object's promise which informs about success or failure
@@ -2166,9 +2373,9 @@ sap.ui.define([
2166
2373
  * @deprecated since 1.120
2167
2374
  */
2168
2375
  this.deleteBookmarks = function (sUrl, sVizType, sContentProviderId) {
2169
- var oCDMService = this.oCDMService;
2170
- var oIntent = urlParsing.parseShellHash(sUrl);
2171
- var oReferenceTarget;
2376
+ const oCDMService = this.oCDMService;
2377
+ const oIntent = urlParsing.parseShellHash(sUrl);
2378
+ let oReferenceTarget;
2172
2379
 
2173
2380
  if (oIntent) {
2174
2381
  // oUrlParser.parseShellHash was successful
@@ -2178,15 +2385,15 @@ sap.ui.define([
2178
2385
  oReferenceTarget = createNewTargetFromUrl(sUrl);
2179
2386
  }
2180
2387
 
2181
- return oCDMService.getSite().then(function (oSite) {
2182
- var oGroups = oSite.groups;
2388
+ return oCDMService.getSite().then((oSite) => {
2389
+ const oGroups = oSite.groups;
2183
2390
 
2184
- var iDeletedTiles = Object.keys(oGroups)
2185
- .map(function (sKey) {
2186
- var oPayload = oGroups[sKey].payload;
2187
- var iCountGroupTilesToDelete = 0;
2391
+ const iDeletedTiles = Object.keys(oGroups)
2392
+ .map((sKey) => {
2393
+ const oPayload = oGroups[sKey].payload;
2394
+ let iCountGroupTilesToDelete = 0;
2188
2395
 
2189
- oPayload.tiles = oPayload.tiles.filter(function (oTile) {
2396
+ oPayload.tiles = oPayload.tiles.filter((oTile) => {
2190
2397
  if (oTile.isBookmark
2191
2398
  && oTile.vizType === sVizType // vizType is only set for custom bookmark tiles.
2192
2399
  && (oTile.contentProvider || "") === (sContentProviderId || "")
@@ -2200,13 +2407,13 @@ sap.ui.define([
2200
2407
 
2201
2408
  return iCountGroupTilesToDelete;
2202
2409
  })
2203
- .reduce(function (aggregateSum, groupSum) {
2410
+ .reduce((aggregateSum, groupSum) => {
2204
2411
  aggregateSum += groupSum;
2205
2412
 
2206
2413
  return aggregateSum;
2207
2414
  }, 0);
2208
2415
 
2209
- return oCDMService.save().then(function () {
2416
+ return oCDMService.save().then(() => {
2210
2417
  return iDeletedTiles;
2211
2418
  });
2212
2419
  });
@@ -2236,9 +2443,9 @@ sap.ui.define([
2236
2443
  return Promise.reject("deleteCustomBookmarks: Required parameter is missing: oIdentifier.vizType");
2237
2444
  }
2238
2445
 
2239
- return new Promise(function (resolve, reject) {
2446
+ return new Promise((resolve, reject) => {
2240
2447
  this.deleteBookmarks(oIdentifier.url, oIdentifier.vizType, oIdentifier.contentProviderId).done(resolve).fail(reject);
2241
- }.bind(this));
2448
+ });
2242
2449
  };
2243
2450
 
2244
2451
  /**
@@ -2277,18 +2484,18 @@ sap.ui.define([
2277
2484
  * @private
2278
2485
  */
2279
2486
  this._onTileSettingsSave = function (oTile, oSettingsView) {
2280
- var oDeferred = new jQuery.Deferred();
2487
+ const oDeferred = new jQuery.Deferred();
2281
2488
 
2282
2489
  if (!oTile || !oTile.id || !oSettingsView) {
2283
2490
  return oDeferred.reject().promise();
2284
2491
  }
2285
2492
 
2286
- var sNewTitle = oSettingsView.oTitleInput.getValue();
2287
- var sNewSubtitle = oSettingsView.oSubTitleInput.getValue();
2288
- var sNewInfo = oSettingsView.oInfoInput.getValue();
2289
- var sOldTitle = this.getTileTitle(oTile);
2290
- var sOldInfo = this.getTileInfo(oTile);
2291
- var sOldSubtitle = this.getTileSubtitle(oTile);
2493
+ const sNewTitle = oSettingsView.oTitleInput.getValue();
2494
+ const sNewSubtitle = oSettingsView.oSubTitleInput.getValue();
2495
+ const sNewInfo = oSettingsView.oInfoInput.getValue();
2496
+ const sOldTitle = this.getTileTitle(oTile);
2497
+ const sOldInfo = this.getTileInfo(oTile);
2498
+ const sOldSubtitle = this.getTileSubtitle(oTile);
2292
2499
 
2293
2500
  // Check whether the end user changed the title or subtitle.
2294
2501
  // If nothing changed, return.
@@ -2299,7 +2506,7 @@ sap.ui.define([
2299
2506
  return oDeferred.resolve().promise();
2300
2507
  }
2301
2508
 
2302
- var oUpdatedVisualTileProperties = {};
2509
+ const oUpdatedVisualTileProperties = {};
2303
2510
  if (sOldTitle !== sNewTitle) {
2304
2511
  oUpdatedVisualTileProperties.title = sNewTitle;
2305
2512
  // Add new properties also to tile for next startup
@@ -2334,20 +2541,20 @@ sap.ui.define([
2334
2541
  this._mResolvedTiles[oTile.id].linkTileControl.setSubheader(oUpdatedVisualTileProperties.subtitle);
2335
2542
  }
2336
2543
  if ((oUpdatedVisualTileProperties.title) || (oUpdatedVisualTileProperties.subtitle)) {
2337
- //rerender the link to see the changes immediately
2544
+ // rerender the link to see the changes immediately
2338
2545
  this._mResolvedTiles[oTile.id].linkTileControl.invalidate();
2339
2546
  }
2340
2547
  }
2341
2548
 
2342
2549
  // Persist personalization changes
2343
2550
  Container.getServiceAsync("CommonDataModel")
2344
- .then(function (oCdmService) {
2551
+ .then((oCdmService) => {
2345
2552
  oCdmService.save()
2346
- .fail(function (sErrorMsg0) {
2553
+ .fail((sErrorMsg0) => {
2347
2554
  Log.error(sErrorMsg0);
2348
- oDeferred.reject("Could not save personalization changes: " + sErrorMsg0);
2555
+ oDeferred.reject(`Could not save personalization changes: ${sErrorMsg0}`);
2349
2556
  })
2350
- .done(function () {
2557
+ .done(() => {
2351
2558
  oDeferred.resolve();
2352
2559
  });
2353
2560
  });
@@ -2365,11 +2572,11 @@ sap.ui.define([
2365
2572
  *
2366
2573
  */
2367
2574
  this.getTileActions = function (oTile) {
2368
- var aTileActions = [];
2575
+ const aTileActions = [];
2369
2576
 
2370
2577
  if (this._isGroupTile(oTile) && !this._isFailedGroupTile(oTile)) {
2371
2578
  // Create necessary model for dialog to pass actual properties
2372
- var oModel = new JSONModel({
2579
+ const oModel = new JSONModel({
2373
2580
  config: {
2374
2581
  display_title_text: this.getTileTitle(oTile),
2375
2582
  display_subtitle_text: this.getTileSubtitle(oTile),
@@ -2378,226 +2585,20 @@ sap.ui.define([
2378
2585
  });
2379
2586
 
2380
2587
  // Get tile settings action
2381
- var oTileSettingsAction = oUtils.getTileSettingsAction(oModel, this._onTileSettingsSave.bind(this, oTile), this.getTileType(oTile));
2588
+ const oTileSettingsAction = oUtils.getTileSettingsAction(oModel, this._onTileSettingsSave.bind(this, oTile), this.getTileType(oTile));
2382
2589
  aTileActions.push(oTileSettingsAction);
2383
2590
  }
2384
2591
  return aTileActions;
2385
2592
  };
2386
2593
 
2387
- /**
2388
- * Compose a new bookmark tile in home mode
2389
- * @param {object} oParameters Parameters
2390
- * @param {object} oTarget Target
2391
- * @param {string} sContentProviderId Content provider ID
2392
- * @returns {object}
2393
- * @deprecated since 1.120
2394
- */
2395
- function composeNewBookmarkTile (oParameters, oTarget, sContentProviderId) {
2396
- var oTile = composeNewTile(oParameters, oTarget);
2397
-
2398
- oTile.isBookmark = true;
2399
- if (sContentProviderId) {
2400
- oTile.contentProvider = sContentProviderId;
2401
- }
2402
-
2403
- return oTile;
2404
- }
2405
-
2406
- /**
2407
- * Compose a new tile
2408
- * @param {object} oParameters Parameters
2409
- * @param {object} oTarget Target
2410
- * @returns {object} Tile
2411
- * @deprecated since 1.120
2412
- */
2413
- function composeNewTile (oParameters, oTarget) {
2414
- // TODO Collect all tile ids to pass them as an arry to
2415
- // generateUniqueId
2416
- var oTile = {
2417
- id: oUshellUtils.generateUniqueId([])
2418
- };
2419
-
2420
- updateTileComposition(oTile, oParameters, oTarget);
2421
-
2422
- return oTile;
2423
- }
2424
-
2425
- /**
2426
- * Updates the properties of a bookmark tile during its composition.
2427
- * @param {object} oTile JSON Object that holds the properties of a bookmark tile.
2428
- * @param {object} oParameters Properties to merge into the bookmark tile
2429
- * @param {object} oTarget The navigation target as a JSON object.
2430
- *
2431
- * @deprecated since 1.120
2432
- */
2433
- function updateTileComposition (oTile, oParameters, oTarget) {
2434
- // Avoid modifying callers reference.
2435
- oParameters = deepExtend({}, oParameters);
2436
-
2437
- if (oTarget) {
2438
- oTile.target = oTarget;
2439
- }
2440
-
2441
- if (oParameters.title || oParameters.title === "") {
2442
- oTile.title = oParameters.title;
2443
- }
2444
-
2445
- if (oParameters.icon || oParameters.icon === "") {
2446
- oTile.icon = oParameters.icon;
2447
- }
2448
-
2449
- if (oParameters.subtitle || oParameters.subtitle === "") {
2450
- oTile.subTitle = oParameters.subtitle;
2451
- }
2452
-
2453
- if (oParameters.info || oParameters.info === "") {
2454
- oTile.info = oParameters.info;
2455
- }
2456
-
2457
- if (oParameters.numberUnit || oParameters.numberUnit === "") {
2458
- oTile.numberUnit = oParameters.numberUnit;
2459
- }
2460
-
2461
- if (oParameters.dataSource) {
2462
- oTile.dataSource = {
2463
- type: oParameters.dataSource.type,
2464
- settings: {
2465
- odataVersion: ObjectPath.get(["dataSource", "settings", "odataVersion"], oParameters)
2466
- }
2467
- };
2468
- }
2469
-
2470
- if (oParameters.serviceUrl) {
2471
- oTile.indicatorDataSource = {
2472
- path: oParameters.serviceUrl
2473
- };
2474
- }
2475
-
2476
- if (oTile.indicatorDataSource && (oParameters.serviceRefreshInterval || oParameters.serviceRefreshInterval === 0)) {
2477
- oTile.indicatorDataSource.refresh = oParameters.serviceRefreshInterval;
2478
- }
2479
-
2480
- if (oParameters.vizConfig) {
2481
- oTile.vizConfig = oParameters.vizConfig;
2482
- }
2483
- }
2484
-
2485
- /**
2486
- * Check if the same target
2487
- * @param {object} oTarget Target
2488
- * @param {object} oOther Other target
2489
- * @returns {boolean}
2490
- * @deprecated since 1.120
2491
- */
2492
- function isSameTarget (oTarget, oOther) {
2493
- if (oTarget && oOther) {
2494
- if (oTarget.url) {
2495
- // url bookmark tile
2496
- return oTarget.url === oOther.url;
2497
- }
2498
-
2499
- return oTarget.semanticObject === oOther.semanticObject
2500
- && oTarget.action === oOther.action
2501
- && isSameParameters(oTarget.parameters, oOther.parameters)
2502
- && oTarget.appSpecificRoute === oOther.appSpecificRoute;
2503
- }
2504
-
2505
- return oTarget === oOther;
2506
- }
2507
-
2508
- /**
2509
- * Compare parameters
2510
- * @param {Array} aParameters Array of parameters
2511
- * @param {Array} aOthers Array of parameters
2512
- * @returns {boolean}
2513
- * @deprecated since 1.120
2514
- */
2515
- function isSameParameters (aParameters, aOthers) {
2516
- aParameters = aParameters || [];
2517
- aOthers = aOthers || [];
2518
-
2519
- if (aParameters.length === aOthers.length) {
2520
- var sFirst = transformParameterListToString(aParameters);
2521
- var sOther = transformParameterListToString(aOthers);
2522
- return sFirst === sOther;
2523
- }
2524
-
2525
- return false;
2526
- }
2527
-
2528
- /**
2529
- * Convert parameters to a string
2530
- * @param {Array} aList List of parameters
2531
- * @returns {string}
2532
- * @deprecated since 1.120
2533
- */
2534
- function transformParameterListToString (aList) {
2535
- return aList
2536
- .map(function (oParameter) {
2537
- return oParameter.name + oParameter.value;
2538
- })
2539
- .sort()
2540
- .join();
2541
- }
2542
-
2543
- /**
2544
- * Create a new target
2545
- * @param {string} sUrl Url
2546
- * @returns {string}
2547
- * @deprecated since 1.120
2548
- */
2549
- function createNewTargetFromUrl (sUrl) {
2550
- return { url: sUrl };
2551
- }
2552
-
2553
- /**
2554
- * Create a new target
2555
- * @param {object} oIntent Intent
2556
- * @returns {object} Target
2557
- * @deprecated since 1.120
2558
- */
2559
- function createNewTargetFromIntent (oIntent) {
2560
- var oTarget = {
2561
- semanticObject: oIntent.semanticObject,
2562
- action: oIntent.action,
2563
- parameters: createTileParametersFromIntentParams(oIntent.params)
2564
- };
2565
-
2566
- if (oIntent.appSpecificRoute) {
2567
- // do not loose the inner-app hash (e.g. &/ShoppingCart(12345))
2568
- // BCP 1670533333
2569
- oTarget.appSpecificRoute = oIntent.appSpecificRoute;
2570
- }
2571
-
2572
- return oTarget;
2573
- }
2574
-
2575
- /**
2576
- * Create tile parameters
2577
- * @param {object} oIntentParams Intent parameters
2578
- * @returns {object} Tile parameters
2579
- * @deprecated since 1.120
2580
- */
2581
- function createTileParametersFromIntentParams (oIntentParams) {
2582
- return Object.keys(oIntentParams).map(function (sKey) {
2583
- var sValue = oIntentParams[sKey] && oIntentParams[sKey][0];
2584
-
2585
- return {
2586
- name: sKey,
2587
- // sValue maybe undefined.
2588
- value: sValue || ""
2589
- };
2590
- });
2591
- }
2592
-
2593
2594
  /**
2594
2595
  * Get site data (used in home page mode only)
2595
- * @returns {Promise}
2596
+ * @returns {Promise} the site data inside a promise.
2596
2597
  * @deprecated since 1.120
2597
2598
  */
2598
2599
  this._getSiteData = function () {
2599
- var oPromise = new Promise(function (fnResolve, fnReject) {
2600
- Container.getServiceAsync("CommonDataModel").then(function (oCDMService) {
2600
+ const oPromise = new Promise((fnResolve, fnReject) => {
2601
+ Container.getServiceAsync("CommonDataModel").then((oCDMService) => {
2601
2602
  oCDMService.getSite()
2602
2603
  .done(fnResolve)
2603
2604
  .fail(fnReject);
@@ -2615,7 +2616,7 @@ sap.ui.define([
2615
2616
  * @deprecated since 1.120
2616
2617
  */
2617
2618
  this._addDefaultGroup = function (aGroups, oSite) {
2618
- var oDefaultGroup = oReadHomePageUtils.getDefaultGroup(aGroups);
2619
+ let oDefaultGroup = oReadHomePageUtils.getDefaultGroup(aGroups);
2619
2620
 
2620
2621
  if (!oDefaultGroup) {
2621
2622
  // the default group is not added by an admin but must be automatically
@@ -2628,7 +2629,7 @@ sap.ui.define([
2628
2629
  // the FLP, oCdmSiteService.save() is skipped. This means the default
2629
2630
  // group is added on EVERY start-up until save() is called in a different use case
2630
2631
  // e.g. a tile was added.
2631
- oSite = oModifyHomePageUtils.addGroupToSite(oSite, oDefaultGroup, /*index*/ 0);
2632
+ oSite = oModifyHomePageUtils.addGroupToSite(oSite, oDefaultGroup, /* index */ 0);
2632
2633
 
2633
2634
  // get groups again as the default group was just added
2634
2635
  aGroups = oReadHomePageUtils.getGroupsArrayFromSite(oSite);