@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
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  "sap/ushell/ApplicationType/guiResolution",
17
17
  "sap/ushell/utils/UrlParsing",
18
18
  "sap/ushell/ApplicationType/systemAlias"
19
- ], function (
19
+ ], (
20
20
  Log,
21
21
  Localization,
22
22
  hasher,
@@ -33,253 +33,197 @@ sap.ui.define([
33
33
  guiResolution,
34
34
  oURLParsing,
35
35
  SystemAlias
36
- ) {
36
+ ) => {
37
37
  "use strict";
38
38
 
39
- var oUrlParams = (new URI(document.URL)).search(true),
40
- sIframeURLDomainForTests = oUrlParams["iframe-url"];
39
+ const oUrlParams = (new URI(document.URL)).search(true);
40
+ const sIframeURLDomainForTests = oUrlParams["iframe-url"];
41
41
 
42
+ // eslint-disable-next-line prefer-const
43
+ let oExportedAPIs;
42
44
 
45
+ // extracts the inner app route from the browser hash
46
+ function getInnerAppRoute (oTemplateContext) {
47
+ const oTemplatePayload = oTemplateContext.payload;
48
+ let sInnerAppRoute;
49
+ const sHashFragment = hasher.getHash() || oExportedAPIs.getBrowserHash();
50
+ const indexOfInnerRoute = sHashFragment.indexOf("&/");
51
+ let iOffset = 1; // to avoid the starting "&";
52
+ let bIsJam = false;
43
53
 
44
- function generateURLTemplateResolutionResult (oMatchingTarget, sBaseUrl, fnExternalSystemAliasResolver) {
45
- return new Promise(function (fnResolveGlobal) {
46
- sap.ui.require(["sap/ushell/URLTemplateProcessor"], function (URLTemplateProcessor) {
47
- var oInbound = oMatchingTarget.inbound;
48
- var oTemplateContext = oInbound.templateContext;
49
- var oCapabilities = oTemplateContext.payload.capabilities || {};
50
-
51
- // Although the URL templates in WZ (e.g. JAM teamplate for WZ Advanced Homepage -> workzone-home) state "newWindow"
52
- // they need to run "embedded" until the URL templates are fixed.
53
- // TODO: Remove code when URL templates are fixed!
54
- if (sap?.cf?.config?.siteId !== undefined && oTemplateContext?.siteAppSection["sap.integration"]?.navMode === "inplace") {
55
- Log.warning("URL template's navigationMode capability is ignored! navigationMode is forced to 'embedded'.");
56
- oCapabilities.navigationMode = "embedded";
57
- }
58
-
59
- if (oMatchingTarget.mappedIntentParamsPlusSimpleDefaults &&
60
- oMatchingTarget.mappedIntentParamsPlusSimpleDefaults.hasOwnProperty("sap-ushell-innerAppRoute")) {
61
- var sTopHash = hasher.getHash();
62
- if (oMatchingTarget.mappedIntentParamsPlusSimpleDefaults["sap-ushell-innerAppRoute"].length > 0 &&
63
- sTopHash.indexOf("&/") === -1) {
64
- sTopHash += "&/" + oMatchingTarget.mappedIntentParamsPlusSimpleDefaults["sap-ushell-innerAppRoute"];
65
- hasher.replaceHash(sTopHash);
66
- }
54
+ if (oTemplateContext.siteAppSection?.["sap.integration"]?.urlTemplateId === "urltemplate.jam") {
55
+ bIsJam = true;
56
+ }
57
+ if (indexOfInnerRoute > 0) {
58
+ if (oTemplatePayload && oTemplatePayload.capabilities && oTemplatePayload.capabilities.appFrameworkId === "UI5") {
59
+ iOffset = 2; // to avoid the starting "&/"
60
+ }
61
+ sInnerAppRoute = sHashFragment.substring(indexOfInnerRoute + iOffset);
62
+ try {
63
+ if (!bIsJam && sInnerAppRoute && sInnerAppRoute.length > 0) {
64
+ sInnerAppRoute = decodeURIComponent(sInnerAppRoute);
67
65
  }
68
- // "mappedIntentParamsPlusSimpleDefaults" are a result of URLPasing.parseShellHash(). With that, parameters with "no" value are expressed
69
- // as array with empty string, e.g. {sap-system: [""]}.
70
- // However, that is not handled correctly in the URLTemplateProcessor (as an array with empty string is handled as "a value", not as undefined/empty).
71
- oURLParsing.removeParametersWithEmptyValue(oMatchingTarget.mappedIntentParamsPlusSimpleDefaults, ["sap-system"]);
72
-
73
- /*
74
- * Attention!
75
- * The names in this object must be kept stable. They might
76
- * appear at any time in any template at runtime. Also, choose a name
77
- * that can be read by a user. E.g., defaultParameterNames is good,
78
- * mappedDefaultedParamNames is bad.
79
- */
80
- var oRuntime = {
81
- // the inner app route
82
- innerAppRoute: getInnerAppRoute(oTemplateContext) || oMatchingTarget.parsedIntent.appSpecificRoute,
83
- // the target navigation mode
84
- targetNavMode: getTargetNavigationMode(oMatchingTarget),
85
- // the names of default parameters among the startupParameters
86
- defaultParameterNames: oMatchingTarget.mappedDefaultedParamNames,
87
- /*
88
- * the parameters (defaults + inent parameters) that must be passed
89
- * to the application in order to start it
90
- */
91
- startupParameter: oMatchingTarget.mappedIntentParamsPlusSimpleDefaults,
92
- // remote application information (for the scube scenario)
93
- remoteApplication: {
94
- remoteSO: undefined,
95
- remoteAction: undefined
96
- }
97
- };
98
-
99
- // eslint-disable-next-line complexity
100
- createEnv().then(function (oEnv) {
101
- // the runtime environment, containing data from the current state of the FLP
102
- oRuntime.env = oEnv;
103
-
104
- var oTemplateParams = ObjectPath.get(["sap.integration", "urlTemplateParams", "query"], oTemplateContext.siteAppSection) || {};
105
- if (oTemplateParams.hasOwnProperty("sap-cssurl")) {
106
- oRuntime.env.themeServiceRoot = undefined;
107
- oRuntime.env.theme = undefined;
108
- }
109
-
110
- if (oCapabilities.appFrameworkId === "UI5" && oRuntime.startupParameter) {
111
- for (var key in oRuntime.startupParameter) {
112
- if (key !== "sap-ushell-innerAppRoute") {
113
- oRuntime.startupParameter[key][0] = encodeURIComponent(oRuntime.startupParameter[key][0]);
114
- }
115
- if (key === "sap-shell-so") {
116
- oRuntime.remoteApplication.remoteSO = oRuntime.startupParameter[key][0];
117
- }
118
- if (key === "sap-shell-action") {
119
- oRuntime.remoteApplication.remoteAction = oRuntime.startupParameter[key][0];
120
- }
121
- }
122
- if (oMatchingTarget.mappedDefaultedParamNames && oMatchingTarget.mappedDefaultedParamNames.length > 0) {
123
- var tmpMappedDefaultedParamNames = oMatchingTarget.mappedDefaultedParamNames.filter(function (paramName) {
124
- return paramName !== "sap-shell-so" && paramName !== "sap-shell-action" && paramName !== "sap-system";
125
- });
126
- oRuntime.startupParameter["sap-ushell-defaultedParameterNames"] = [JSON.stringify(tmpMappedDefaultedParamNames)];
127
- }
128
- delete oRuntime.startupParameter["sap-shell-so"];
129
- delete oRuntime.startupParameter["sap-shell-action"];
130
- }
131
-
132
- //this is a hot fix made for an escelation opened by
133
- // Lockheed Martin 885662/2021 about sap workzone, which
134
- // is the only quick way to solve the issue. A more
135
- // deep process to solve the issue in a proper way will
136
- // be done via a BLI as the issue is very complex
137
- // please do not remove the usage of "window.location.hash"
138
- var sJamSearchPref = "/universal_search/search";
139
- var iJamSearchPos = oRuntime.innerAppRoute && oRuntime.innerAppRoute.indexOf(sJamSearchPref);
140
- var JamInnerRoute;
141
- if (iJamSearchPos === 0) {
142
- JamInnerRoute = oRuntime.innerAppRoute.substring(1);
143
- oRuntime.innerAppRoute = "/JAMSEARCHPATHH?JAMSEARCHVALUEE=VALUEE";
144
- }
145
-
146
- //Special temporary code to fix issues when openning web gui application
147
- // this code will be removed once the URL template in CF will be fixed.
148
- // Please contact Alon Barnes
149
- const sURLTemplateId = ushellUtils.getMember(oTemplateContext.siteAppSection, "sap|integration.urlTemplateId");
150
- let oTemplatePayload = oTemplateContext.payload;
151
- if (sURLTemplateId === "urltemplate.gui") {
152
- oTemplatePayload = deepClone(oTemplateContext.payload, 20);
153
- handleTempWebGuiBugTemp(oTemplatePayload, oRuntime, oInbound);
154
- }
66
+ } catch (e) {
67
+ Log.warning("inner route should be double encoded", e, "sap.ushell.ApplicationType.getInnerAppRoute");
68
+ }
69
+ }
70
+ return sInnerAppRoute;
71
+ }
155
72
 
156
- //See comment in function for this temporary special case
157
- oTemplatePayload = handleSAPITTempSolution(sURLTemplateId, oTemplatePayload, oTemplateParams);
73
+ function getTargetNavigationMode (oMatchingTarget) {
74
+ let sMode = oMatchingTarget.targetNavigationMode;
75
+ if (sMode === undefined || sMode === "") {
76
+ if (ushellUtils.isColdStart()) {
77
+ sMode = "explace";
78
+ } else {
79
+ sMode = "inplace";
80
+ }
81
+ }
82
+ return sMode;
83
+ }
158
84
 
159
- var sURL = URLTemplateProcessor.expand(
160
- oTemplatePayload,
161
- oTemplateContext.site,
162
- oRuntime,
163
- oTemplateContext.siteAppSection,
164
- "startupParameter"
165
- );
85
+ function getInnerAppState () {
86
+ const sHash = hasher && hasher.getHash();
87
+ let sKey = "";
166
88
 
167
- if (iJamSearchPos === 0) {
168
- sURL = sURL.replace("/JAMSEARCHPATHH?JAMSEARCHVALUEE=VALUEE", "/" + JamInnerRoute);
169
- }
89
+ if (sHash && sHash.length > 0 && sHash.indexOf("sap-iapp-state=") > 0) {
90
+ const aParams = /(?:sap-iapp-state=)([^&/\\]+)/.exec(sHash);
91
+ if (aParams && aParams.length === 2) {
92
+ sKey = aParams[1];
93
+ }
94
+ }
170
95
 
171
- if (oRuntime.env.theme === undefined) {
172
- sURL = sURL.replace("&sap-theme=", "");
173
- }
96
+ return sKey;
97
+ }
174
98
 
175
- //temporary bug fix until URITemplate.js will be fixed.
176
- //for ui5 apps, the hash added to the URL in the template processing is encoded twice
177
- //and there for it does not match the hash of FLP (browser url). we need to replace the
178
- //hash in the URL with the correct hash of FLP which is encoded only once.
179
- //currently, there is no way to do that in the template itself.
180
- if (oCapabilities.appFrameworkId === "UI5" && oExportedAPIs.getBrowserHash().length > 1) {
181
- sURL = sURL.split("#")[0] + oExportedAPIs.getBrowserHash();
182
- Log.debug("- created URL with fixed hash: " + sURL, "sap.ushell.ApplicationType");
183
- }
99
+ function createEnv () {
100
+ return new Promise((fnResolve) => {
101
+ Promise.all([
102
+ Container.getServiceAsync("UserInfo"),
103
+ Container.getServiceAsync("PluginManager"),
104
+ ushellUtils.getUi5Version()
105
+ ]).then((aResults) => {
106
+ const oUserInfoService = aResults[0];
107
+ const oPluginsService = aResults[1];
108
+ const sUi5Version = aResults[2];
109
+
110
+ const oUser = oUserInfoService.getUser();
111
+ const sContentDensity = oUser.getContentDensity() || (document.body.classList.contains("sapUiSizeCompact") ? "compact" : "cozy");
112
+ let sTheme = oUser.getTheme();
113
+ if (sTheme.indexOf("sap_") !== 0) {
114
+ const sThemeFormat = User.prototype.constants.themeFormat.THEME_NAME_PLUS_URL;
115
+ sTheme = oUser.getTheme(sThemeFormat);
116
+ }
184
117
 
185
- //returns a function that instantiates an attribute, like appId of a template
186
- var fnInstantiateTemplate = function (sTemplate) {
118
+ const sLanguage = Localization.getLanguage();
119
+ const sLogonLanguage = Localization.getSAPLogonLanguage();
187
120
 
188
- var oPayloadClone = deepClone(oTemplateContext.payload, 20);
189
- oPayloadClone.urlTemplate = sTemplate;
190
- return URLTemplateProcessor.expand(
191
- oPayloadClone,
192
- oTemplateContext.site,
193
- oRuntime,
194
- oTemplateContext.siteAppSection,
195
- "startupParameter"
196
- );
197
- };
198
- var sSytemAliasOrDestination = (oTemplateContext.siteAppSection["sap.app"] &&
199
- oTemplateContext.siteAppSection["sap.app"].destination) ||
200
- oTemplateContext.siteAppSection.destination || "";
201
- var sContentProviderId = oTemplateContext?.siteAppSection["sap.app"]?.contentProviderId || "";
202
- var sSystemAlias = SystemAlias.getSystemAliasInProvider(sSytemAliasOrDestination, sContentProviderId);
121
+ const themeServiceRoot = `${window.location.protocol}//${window.location.host // host
122
+ }/comsapuitheming.runtime/themeroot/v1`; // route to theme service
123
+ let sessionTimeout = 0;
124
+ if (Config.last("/core/shell/sessionTimeoutIntervalInMinutes") > 0) {
125
+ sessionTimeout = Config.last("/core/shell/sessionTimeoutIntervalInMinutes");
126
+ }
203
127
 
204
- var oResult = {
205
- applicationType: "URL",
206
- text: oInbound.title,
207
- appCapabilities: createAppCapabilities(
208
- oCapabilities,
209
- oTemplateContext.siteAppSection,
210
- fnInstantiateTemplate
211
- ),
212
- url: sURL,
213
- extendedInfo: oApplicationTypeUtils.getExtendedInfo(oMatchingTarget, oTemplateContext.siteAppSection, oTemplateContext.site),
214
- contentProviderId: oInbound.contentProviderId || "",
215
- systemAlias: sSystemAlias
216
- };
217
- oApplicationTypeUtils.addIframeCacheHintToURL(oResult, oResult.appCapabilities.appFrameworkId);
218
- oApplicationTypeUtils.addKeepAliveToURLTemplateResult(oResult);
219
- addSpacesModeToURLTemplateResult(oResult);
220
- _addLanguageToURLTemplateResult(oResult, oTemplateContext.siteAppSection, oRuntime);
128
+ let debugMode = false;
129
+ if (window["sap-ui-debug"] !== false && window["sap-ui-debug"] !== undefined) {
130
+ debugMode = window["sap-ui-debug"];
131
+ }
221
132
 
222
- var oPromisePostTemplateProcessing = new Promise(function (fnResolve) {
223
- Container.getServiceAsync("URLTemplate").then(function (URLTemplate) {
224
- sap.ui.require(["sap/ushell/appIntegration/ApplicationContainerCache"], function (ApplicationContainerCache) {
225
- // todo: [FLPCOREANDUX-10024] should this really be necessary?
226
- var bForNewIframe = !ApplicationContainerCache.findFreeContainerByUrl(oResult.url);
227
- URLTemplate.handlePostTemplateProcessing(oResult.url, oTemplateContext.siteAppSection, bForNewIframe).then(fnResolve);
228
- });
229
- });
230
- });
133
+ const bEnablePersonalization = Config.last("/core/shell/enablePersonalization");
231
134
 
232
- oPromisePostTemplateProcessing.then(function (sURLNew) {
233
- //special case for selenium tests that use different iframe domain
234
- if (sIframeURLDomainForTests && sURLNew.indexOf("ui5appruntime.html") > 0) {
235
- var arrUrlParts = sURLNew.split("?");
236
- arrUrlParts[0] = sIframeURLDomainForTests;
237
- sURLNew = arrUrlParts.join("?");
238
- }
239
- oResult.url = sURLNew;
240
- handleURLTransformation(URLTemplateProcessor, oResult.url, oCapabilities, oTemplateContext).then(function (sTransformedURL) {
241
- oResult.url = sTransformedURL;
242
- //GUI url should not be compacted as it is not compacted in ABAP FLP
243
- if (oResult.url && typeof oResult.url === "string" && oResult.url.indexOf("sap-iframe-hint=GUI") > 0) {
244
- fnResolveGlobal(oResult);
245
- } else {
246
- compactURLParameters(oResult.url, oRuntime.targetNavMode, oCapabilities)
247
- .then(function (sCompactURL) {
248
- oResult.url = sCompactURL;
249
- fnResolveGlobal(oResult);
250
- }, function () {
251
- fnResolveGlobal(oResult);
252
- });
253
- }
254
- });
255
- });
135
+ fnResolve({
136
+ language: sLanguage,
137
+ logonLanguage: sLogonLanguage,
138
+ theme: sTheme,
139
+ themeServiceRoot: themeServiceRoot,
140
+ isDebugMode: debugMode,
141
+ ui5Version: sUi5Version,
142
+ contentDensity: sContentDensity,
143
+ sapPlugins: oPluginsService._getNamesOfPluginsWithAgents(),
144
+ innerAppState: getInnerAppState(),
145
+ sessionTimeout: sessionTimeout,
146
+ historyDirection: History.getInstance().getDirection() || "",
147
+ enableShellPersonalization: bEnablePersonalization
256
148
  });
257
149
  });
258
150
  });
259
151
  }
260
152
 
261
- /**
262
- * add "sap-spaces" parameter as a url parameter
263
- */
264
- function addSpacesModeToURLTemplateResult (oResult) {
153
+ function handleTempWebGuiBugTemp (oTemplatePayload, oRuntime, oInbound) {
154
+ if (isPlainObject(oRuntime.startupParameter) && Object.keys(oRuntime.startupParameter).length > 0) {
155
+ oRuntime.startupParameter = deepClone(oRuntime.startupParameter);
265
156
 
266
- if (oResult.url && typeof oResult.url === "string") {
157
+ const oForbiddenParameters = {
158
+ "sap-wd-run-sc": true,
159
+ "sap-wd-auto-detect": true,
160
+ "sap-ep-version": true
161
+ };
267
162
 
268
- let sResultUrl = oResult.url,
269
- sSpacesMode = Config.last("/core/spaces/enabled"),
270
- bIsAppruntime = sResultUrl.indexOf("ui5appruntime.html") > -1,
271
- bIsScube = sResultUrl.indexOf("ui5appruntimescube.html") > -1;
163
+ // remove "forbidden" parameters
164
+ Object.keys(oRuntime.startupParameter).forEach((sParamName) => {
165
+ if (oForbiddenParameters[sParamName.toLowerCase()]) {
166
+ delete oRuntime.startupParameter[sParamName];
167
+ }
168
+ });
272
169
 
273
- if (sSpacesMode === true && (bIsAppruntime || bIsScube)) {
274
- oApplicationTypeUtils.appParameterToUrl(oResult, "sap-spaces", sSpacesMode);
170
+ // guiResolution
171
+ const aUnneccessaryParameters = guiResolution.getUnnecessaryWebguiParameters(oRuntime.startupParameter, oInbound || {});
172
+ guiResolution.removeObjectKey(oRuntime.startupParameter, aUnneccessaryParameters);
173
+
174
+ const oEffectiveParametersToAppend = guiResolution.getWebguiNonBusinessParameters(oRuntime.startupParameter);
175
+ guiResolution.removeObjectKey(oRuntime.startupParameter, Object.keys(oEffectiveParametersToAppend));
176
+
177
+ const sSkipValue = guiResolution.getExplicitSkipSelectionScreenParameter(oRuntime.startupParameter);
178
+
179
+ if (oTemplatePayload?.parameters?.names?.skipScreenChar.length > 0) {
180
+ oTemplatePayload.parameters.names.skipScreenChar =
181
+ (Object.keys(oRuntime.startupParameter).length > 0 && (sSkipValue === "" || sSkipValue === "1") ? "*" : "");
275
182
  }
276
183
  }
277
184
  }
278
185
 
279
- /**
280
- * This is a temporary solution to add the sap-language parameter to URLs for
281
- * Web Client Framework (WCF) apps.
282
- * It can be removed once an own URL template for WCF apps is available.
186
+ // Special temporary code to fix for SAPIT internal sap site until they will start using SWZ external
187
+ // subaccount content provider (then, this code should be removed).
188
+ // Please contact Alon Barnes
189
+ function handleSAPITTempSolution (sURLTemplateId, oTemplatePayload, oTemplateParams) {
190
+ try {
191
+ if (sURLTemplateId === "urltemplate.url" && oTemplateParams.hasOwnProperty("sapit-external-ui5app")) {
192
+ const oPayload = deepClone(oTemplatePayload, 20);
193
+ oPayload.urlTemplate = oPayload.urlTemplate.replace(",paramSapLocale", ",appStartupParameters,paramSapLocale");
194
+ oPayload.parameters.names = {...oPayload.parameters.names};
195
+ oPayload.parameters.names.appStartupParameters = {
196
+ renameTo: "sap-startup-params",
197
+ value: "{*|match(^(?!sap-ushell(-innerAppRoute\\|-navmode)$))|join(&,=)}"
198
+ };
199
+ return oPayload;
200
+ }
201
+ } catch (e) {
202
+ // ignore - will return the original payload to continue as before
203
+ }
204
+ return oTemplatePayload;
205
+ }
206
+
207
+ /*
208
+ * add "sap-spaces" parameter as a url parameter
209
+ */
210
+ function addSpacesModeToURLTemplateResult (oResult) {
211
+ if (oResult.url && typeof oResult.url === "string") {
212
+ const sResultUrl = oResult.url;
213
+ const sSpacesMode = Config.last("/core/spaces/enabled");
214
+ const bIsAppruntime = sResultUrl.indexOf("ui5appruntime.html") > -1;
215
+ const bIsScube = sResultUrl.indexOf("ui5appruntimescube.html") > -1;
216
+
217
+ if (sSpacesMode === true && (bIsAppruntime || bIsScube)) {
218
+ oApplicationTypeUtils.appParameterToUrl(oResult, "sap-spaces", sSpacesMode);
219
+ }
220
+ }
221
+ }
222
+
223
+ /**
224
+ * This is a temporary solution to add the sap-language parameter to URLs for
225
+ * Web Client Framework (WCF) apps.
226
+ * It can be removed once an own URL template for WCF apps is available.
283
227
  *
284
228
  * @param {object} oResult The URL template resolution result
285
229
  * @param {object} oSiteAppSection The application section of the URL template context
@@ -288,7 +232,7 @@ sap.ui.define([
288
232
  * @private
289
233
  */
290
234
  function _addLanguageToURLTemplateResult (oResult, oSiteAppSection, oRuntime) {
291
- var sTemplateId = ObjectPath.get(["sap.integration", "urlTemplateId"], oSiteAppSection);
235
+ const sTemplateId = ObjectPath.get(["sap.integration", "urlTemplateId"], oSiteAppSection);
292
236
  if (sTemplateId === "urltemplate.url-dynamic"
293
237
  && oResult.url.includes("sap/bc/bsp/sap/crm_ui_start/")
294
238
  && !oResult.url.includes("sap-language=")) {
@@ -297,16 +241,25 @@ sap.ui.define([
297
241
  }
298
242
 
299
243
  function compactURLParameters (sUrlExpanded, vTargetNavMode, oCapabilities) {
300
- return new Promise(function (fnResolve, fnReject) {
301
- var oUrl = new URI(sUrlExpanded);
302
- var oParams = oUrl.query(true /* bAsObject */);
303
- var bIsTransient = true;
304
- var aRetainParameterList = ["sap-language", "sap-theme", "sap-shell", "sap-ui-app-id", "transaction", "sap-iframe-hint",
305
- "sap-keep-alive", "sap-ui-versionedLibCss", "sap-wd-configId", "wcf-target-id"]/* retain list */;
244
+ return new Promise((fnResolve, fnReject) => {
245
+ const oUrl = new URI(sUrlExpanded);
246
+ const oParams = oUrl.query(true /* bAsObject */);
247
+ let bIsTransient = true;
248
+ let aRetainParameterList = ["sap-language",
249
+ "sap-theme",
250
+ "sap-shell",
251
+ "sap-ui-app-id",
252
+ "transaction",
253
+ "sap-iframe-hint",
254
+ "sap-keep-alive",
255
+ "sap-ui-versionedLibCss",
256
+ "sap-wd-configId",
257
+ "wcf-target-id",
258
+ "sap-ui-version"]/* retain list */;
306
259
  if (oCapabilities && oCapabilities.mandatoryUrlParams) {
307
260
  aRetainParameterList = aRetainParameterList.concat(oCapabilities.mandatoryUrlParams.split(","));
308
261
  // Remove duplicates
309
- aRetainParameterList = aRetainParameterList.filter(function (value, index) {
262
+ aRetainParameterList = aRetainParameterList.filter((value, index) => {
310
263
  return aRetainParameterList.indexOf(value) === index;
311
264
  });
312
265
  }
@@ -314,13 +267,13 @@ sap.ui.define([
314
267
  if (vTargetNavMode === "explace") {
315
268
  bIsTransient = false;
316
269
  }
317
- Container.getServiceAsync("ShellNavigationInternal").then(function (oShellNavigationInternal) {
270
+ Container.getServiceAsync("ShellNavigationInternal").then((oShellNavigationInternal) => {
318
271
  oShellNavigationInternal.compactParams(
319
272
  oParams,
320
273
  aRetainParameterList,
321
- undefined /* no Component*/,
322
- bIsTransient /*transient*/
323
- ).done(function (oCompactedParams) {
274
+ undefined /* no Component */,
275
+ bIsTransient /* transient */
276
+ ).done((oCompactedParams) => {
324
277
  if (!oCompactedParams.hasOwnProperty("sap-intent-param")) {
325
278
  // Return original URL if no compaction happened,
326
279
  // because compacted parameters are sorted when compacting
@@ -331,9 +284,9 @@ sap.ui.define([
331
284
  return;
332
285
  }
333
286
 
334
- var sUrlCompacted;
287
+ let sUrlCompacted;
335
288
  if (oCompactedParams["sap-theme"]) {
336
- var sThemeParam = "sap-theme=" + oCompactedParams["sap-theme"];
289
+ const sThemeParam = `sap-theme=${oCompactedParams["sap-theme"]}`;
337
290
  oCompactedParams["sap-theme"] = "sap-theme-temp-placeholder";
338
291
  oUrl.query(oCompactedParams);
339
292
  sUrlCompacted = oUrl.toString();
@@ -344,23 +297,45 @@ sap.ui.define([
344
297
  }
345
298
 
346
299
  fnResolve(sUrlCompacted);
347
- }).fail(function (sError) {
300
+ }).fail((sError) => {
348
301
  fnReject(sError);
349
302
  });
350
303
  });
351
304
  });
352
305
  }
353
306
 
354
- function handleURLTransformation (URLTemplateProcessor, sUrl, oCapabilities, oTemplateContext) {
355
- return new Promise(function (fnResolve) {
356
- var oTransformation = oCapabilities.urlTransformation || { enabled: false };
307
+ function isTransformationEnabled (URLTemplateProcessor, oTransformation, oTemplateContext) {
308
+ if (typeof oTransformation.enabled === "boolean") {
309
+ return oTransformation.enabled;
310
+ }
311
+ const oTransformData = URLTemplateProcessor.prepareExpandData(
312
+ {
313
+ urlTemplate: "",
314
+ parameters: {
315
+ names: {
316
+ enabled: oTransformation.enabled
317
+ }
318
+ }
319
+ },
320
+ {},
321
+ {},
322
+ oTemplateContext.siteAppSection,
323
+ ""
324
+ );
325
+
326
+ return (typeof oTransformData.oResolvedParameters.enabled === "boolean" ?
327
+ oTransformData.oResolvedParameters.enabled : false);
328
+ }
357
329
 
330
+ function handleURLTransformation (URLTemplateProcessor, sUrl, oCapabilities, oTemplateContext) {
331
+ return new Promise((fnResolve) => {
332
+ const oTransformation = oCapabilities.urlTransformation || { enabled: false };
358
333
 
359
334
  if (isTransformationEnabled(URLTemplateProcessor, oTransformation, oTemplateContext)) {
360
- var oIframeURI = new URI(sUrl);
361
- var oFirstTransformation = oTransformation.transformations[0];
362
- var oService = oFirstTransformation.service.uri;
363
- var oTransformData = URLTemplateProcessor.prepareExpandData(
335
+ const oIframeURI = new URI(sUrl);
336
+ const oFirstTransformation = oTransformation.transformations[0];
337
+ const oService = oFirstTransformation.service.uri;
338
+ const oTransformData = URLTemplateProcessor.prepareExpandData(
364
339
  {
365
340
  urlTemplate: "",
366
341
  parameters: {
@@ -378,65 +353,65 @@ sap.ui.define([
378
353
  ""
379
354
  );
380
355
 
381
- var sServiceUrl = URI.expand("{+rootPath}/{+resourcePath}{?queryParams*}", {
356
+ const sServiceUrl = URI.expand("{+rootPath}/{+resourcePath}{?queryParams*}", {
382
357
  rootPath: oService.rootPath,
383
358
  resourcePath: oService.resourcePath,
384
359
  queryParams: oTransformData.oResolvedParameters
385
360
  }).toString();
386
361
 
387
- sap.ui.require(["sap/ui/thirdparty/datajs"], function (OData) {
362
+ sap.ui.require(["sap/ui/thirdparty/datajs"], (OData) => {
388
363
  OData.read({
389
- requestUri: sServiceUrl,
390
- headers: {
391
- "Cache-Control": "no-cache, no-store, must-revalidate",
392
- Pragma: "no-cache",
393
- Expires: "0"
394
- }
395
- },
396
- // Success handler
397
- function (oRes) {
398
- var resVal = ObjectPath.get("transformAppLaunchQueryString.value", oRes);
399
- if (resVal === undefined) {
400
- resVal = ObjectPath.get("transformAppLaunchIntent.value", oRes);
401
- }
402
- if (resVal === undefined) {
403
- resVal = ObjectPath.get("transformAppLaunchQueryString.queryString", oRes);
404
- }
364
+ requestUri: sServiceUrl,
365
+ headers: {
366
+ "Cache-Control": "no-cache, no-store, must-revalidate",
367
+ Pragma: "no-cache",
368
+ Expires: "0"
369
+ }
370
+ },
371
+ // Success handler
372
+ (oRes) => {
373
+ let resVal = ObjectPath.get("transformAppLaunchQueryString.value", oRes);
374
+ if (resVal === undefined) {
375
+ resVal = ObjectPath.get("transformAppLaunchIntent.value", oRes);
376
+ }
377
+ if (resVal === undefined) {
378
+ resVal = ObjectPath.get("transformAppLaunchQueryString.queryString", oRes);
379
+ }
405
380
 
406
- Log.info(
407
- "URL Transformation Succeeded",
408
- JSON.stringify({
409
- URLBeforeTransformation: sUrl,
410
- URLAfterTransformation: resVal
411
- }),
412
- "sap.ushell.ApplicationType"
413
- );
381
+ Log.info(
382
+ "URL Transformation Succeeded",
383
+ JSON.stringify({
384
+ URLBeforeTransformation: sUrl,
385
+ URLAfterTransformation: resVal
386
+ }),
387
+ "sap.ushell.ApplicationType"
388
+ );
414
389
 
415
- var sSourceURLComponent = oFirstTransformation.sourceURLComponent;
416
- if (sSourceURLComponent === undefined) {
417
- sSourceURLComponent = "query";
418
- }
390
+ let sSourceURLComponent = oFirstTransformation.sourceURLComponent;
391
+ if (sSourceURLComponent === undefined) {
392
+ sSourceURLComponent = "query";
393
+ }
419
394
 
420
- if (sSourceURLComponent === "query" || sSourceURLComponent === "fragment") {
421
- sUrl = oIframeURI[sSourceURLComponent](resVal).toString();
422
- } else {
423
- Log.error(
424
- "The " + sSourceURLComponent + " component of the URL in URI.js is not transformed",
425
- "",
426
- "sap.ushell.ApplicationType"
427
- );
428
- }
429
- fnResolve(sUrl);
430
- },
431
- // Fail handler
432
- function (oMessage) {
395
+ if (sSourceURLComponent === "query" || sSourceURLComponent === "fragment") {
396
+ sUrl = oIframeURI[sSourceURLComponent](resVal).toString();
397
+ } else {
433
398
  Log.error(
434
- "URL Transformation Failed",
435
- JSON.stringify(oMessage),
399
+ `The ${sSourceURLComponent} component of the URL in URI.js is not transformed`,
400
+ "",
436
401
  "sap.ushell.ApplicationType"
437
402
  );
438
- fnResolve(sUrl);
439
403
  }
404
+ fnResolve(sUrl);
405
+ },
406
+ // Fail handler
407
+ (oMessage) => {
408
+ Log.error(
409
+ "URL Transformation Failed",
410
+ JSON.stringify(oMessage),
411
+ "sap.ushell.ApplicationType"
412
+ );
413
+ fnResolve(sUrl);
414
+ }
440
415
  );
441
416
  });
442
417
  } else {
@@ -445,29 +420,6 @@ sap.ui.define([
445
420
  });
446
421
  }
447
422
 
448
- function isTransformationEnabled (URLTemplateProcessor, oTransformation, oTemplateContext) {
449
- if (typeof oTransformation.enabled === "boolean") {
450
- return oTransformation.enabled;
451
- }
452
- var oTransformData = URLTemplateProcessor.prepareExpandData(
453
- {
454
- urlTemplate: "",
455
- parameters: {
456
- names: {
457
- enabled: oTransformation.enabled
458
- }
459
- }
460
- },
461
- {},
462
- {},
463
- oTemplateContext.siteAppSection,
464
- ""
465
- );
466
-
467
- return (typeof oTransformData.oResolvedParameters.enabled === "boolean" ?
468
- oTransformData.oResolvedParameters.enabled : false);
469
- }
470
-
471
423
  /**
472
424
  * Define the navigation mode app capability based on the template's
473
425
  * navigation mode (capability) and the app's (external) nav mode.
@@ -482,42 +434,53 @@ sap.ui.define([
482
434
  * The internal navigation mode that should be used by the shell to launch the application.
483
435
  */
484
436
  function getNavigationModeAppCapability (sTemplateNavigationMode, oAppDescriptor) {
485
- var sAppExternalNavMode = ushellUtils.getMember(oAppDescriptor, "sap|integration.navMode");
437
+ const sAppExternalNavMode = ushellUtils.getMember(oAppDescriptor, "sap|integration.navMode");
486
438
 
487
439
  switch (sAppExternalNavMode) {
488
440
  case "inplace":
489
- if (["embedded", /*Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
441
+ if (["embedded", /* Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
490
442
  return "embedded";
491
443
  }
444
+
492
445
  Log.error(
493
446
  "App-defined navigation mode was ignored",
494
447
  "Application requests to be opened inplace, but the template's navigation mode doesn't allow!",
495
448
  "sap.ushell.ApplicationType"
496
449
  );
497
- return "newWindow";
498
450
 
451
+ break;
499
452
  case "explace":
500
- if (["embedded", /*Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
453
+ if (["embedded", /* Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
501
454
  return "newWindowThenEmbedded";
502
455
  }
503
456
 
504
- if (["standalone", /*Legacy Modes: */ "explace", "newWindow"].includes(sTemplateNavigationMode)) {
457
+ if (["standalone", /* Legacy Modes: */ "explace", "newWindow"].includes(sTemplateNavigationMode)) {
505
458
  return "newWindow";
506
459
  }
507
460
 
461
+ Log.error(
462
+ "App-defined navigation mode was ignored",
463
+ "Application requests to be opened explace, but the template's navigation mode doesn't allow!",
464
+ "sap.ushell.ApplicationType"
465
+ );
466
+
467
+ break;
508
468
  default: // Fallback to URL template-defined navigation mode.
509
469
  Log.error(
510
470
  "App-defined navigation mode is not valid!",
511
471
  "Fallback to URL Template's capability",
512
472
  "sap.ushell.ApplicationType"
513
473
  );
514
- if (["embedded", /*Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
474
+
475
+ if (["embedded", /* Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
515
476
  return "embedded";
516
477
  }
517
478
 
518
- // "standalone" - and Legacy Modes "explace", "newWindow"
519
- return "newWindow";
479
+ break;
520
480
  }
481
+
482
+ // fallback for invalid combinations and "standalone" - and Legacy Modes "explace", "newWindow"
483
+ return "newWindow";
521
484
  }
522
485
 
523
486
  /**
@@ -531,11 +494,11 @@ sap.ui.define([
531
494
  * The internal navigation mode that should be used by the shell to launch the application.
532
495
  */
533
496
  function getNavigationModeTemplateCapability (sTemplateNavigationMode) {
534
- if (["embedded", /*Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
497
+ if (["embedded", /* Legacy Modes: */ "inplace", "newWindowThenEmbedded"].includes(sTemplateNavigationMode)) {
535
498
  return "embedded";
536
499
  }
537
500
 
538
- if (["standalone", /*Legacy Modes: */ "explace", "newWindow"].includes(sTemplateNavigationMode)) {
501
+ if (["standalone", /* Legacy Modes: */ "explace", "newWindow"].includes(sTemplateNavigationMode)) {
539
502
  return "standalone";
540
503
  }
541
504
  }
@@ -562,7 +525,7 @@ sap.ui.define([
562
525
  *
563
526
  */
564
527
  function createAppCapabilities (oTemplateCapabilities, oSiteAppSection, fnInstantiateTemplate) {
565
- var oAppCapabilities = deepClone(oTemplateCapabilities);
528
+ const oAppCapabilities = deepClone(oTemplateCapabilities);
566
529
  oAppCapabilities.navigationMode = getNavigationModeAppCapability(oTemplateCapabilities.navigationMode, oSiteAppSection);
567
530
  oAppCapabilities.templateNavigationMode = getNavigationModeTemplateCapability(oTemplateCapabilities.navigationMode);
568
531
  oAppCapabilities.appId = fnInstantiateTemplate(oTemplateCapabilities.appId || "");
@@ -573,180 +536,235 @@ sap.ui.define([
573
536
  return oAppCapabilities;
574
537
  }
575
538
 
576
- function getInnerAppState () {
577
- var sHash = hasher && hasher.getHash();
578
- var sKey = "";
579
-
580
- if (sHash && sHash.length > 0 && sHash.indexOf("sap-iapp-state=") > 0) {
581
- var aParams = /(?:sap-iapp-state=)([^&/\\]+)/.exec(sHash);
582
- if (aParams && aParams.length === 2) {
583
- sKey = aParams[1];
584
- }
585
- }
586
-
587
- return sKey;
588
- }
539
+ function generateURLTemplateResolutionResult (oMatchingTarget, sBaseUrl, fnExternalSystemAliasResolver) {
540
+ return new Promise((fnResolveGlobal) => {
541
+ sap.ui.require(["sap/ushell/URLTemplateProcessor"], (URLTemplateProcessor) => {
542
+ const oInbound = oMatchingTarget.inbound;
543
+ const oTemplateContext = oInbound.templateContext;
544
+ const oCapabilities = oTemplateContext.payload.capabilities || {};
589
545
 
590
- function createEnv () {
591
- return new Promise(function (fnResolve) {
592
- Promise.all([
593
- Container.getServiceAsync("UserInfo"),
594
- Container.getServiceAsync("PluginManager"),
595
- ushellUtils.getUi5Version()
596
- ]).then(function (aResults) {
597
- var oUserInfoService = aResults[0];
598
- var oPluginsService = aResults[1];
599
- var sUi5Version = aResults[2];
600
-
601
- var oUser = oUserInfoService.getUser();
602
- var sContentDensity = oUser.getContentDensity() || (document.body.classList.contains("sapUiSizeCompact") ? "compact" : "cozy");
603
- var sTheme = oUser.getTheme();
604
- if (sTheme.indexOf("sap_") !== 0) {
605
- var sThemeFormat = User.prototype.constants.themeFormat.THEME_NAME_PLUS_URL;
606
- sTheme = oUser.getTheme(sThemeFormat);
546
+ // Although the URL templates in WZ (e.g. JAM teamplate for WZ Advanced Homepage -> workzone-home) state "newWindow"
547
+ // they need to run "embedded" until the URL templates are fixed.
548
+ // TODO: Remove code when URL templates are fixed!
549
+ if (sap?.cf?.config?.siteId !== undefined && oTemplateContext?.siteAppSection["sap.integration"]?.navMode === "inplace") {
550
+ Log.warning("URL template's navigationMode capability is ignored! navigationMode is forced to 'embedded'.");
551
+ oCapabilities.navigationMode = "embedded";
607
552
  }
608
553
 
609
- var sLanguage = Localization.getLanguage();
610
- var sLogonLanguage = Localization.getSAPLogonLanguage();
611
-
612
- var themeServiceRoot = window.location.protocol + "//" + window.location.host // host
613
- + "/comsapuitheming.runtime/themeroot/v1"; // route to theme service
614
- var sessionTimeout = 0;
615
- if (Config.last("/core/shell/sessionTimeoutIntervalInMinutes") > 0) {
616
- sessionTimeout = Config.last("/core/shell/sessionTimeoutIntervalInMinutes");
554
+ if (oMatchingTarget.mappedIntentParamsPlusSimpleDefaults &&
555
+ oMatchingTarget.mappedIntentParamsPlusSimpleDefaults.hasOwnProperty("sap-ushell-innerAppRoute")) {
556
+ let sTopHash = hasher.getHash();
557
+ if (oMatchingTarget.mappedIntentParamsPlusSimpleDefaults["sap-ushell-innerAppRoute"].length > 0 &&
558
+ sTopHash.indexOf("&/") === -1) {
559
+ sTopHash += `&/${oMatchingTarget.mappedIntentParamsPlusSimpleDefaults["sap-ushell-innerAppRoute"]}`;
560
+ hasher.replaceHash(sTopHash);
561
+ }
617
562
  }
563
+ // "mappedIntentParamsPlusSimpleDefaults" are a result of URLPasing.parseShellHash(). With that, parameters with "no" value are expressed
564
+ // as array with empty string, e.g. {sap-system: [""]}.
565
+ // However, that is not handled correctly in the URLTemplateProcessor (as an array with empty string is handled as "a value", not as undefined/empty).
566
+ oURLParsing.removeParametersWithEmptyValue(oMatchingTarget.mappedIntentParamsPlusSimpleDefaults, ["sap-system"]);
618
567
 
619
- var debugMode = false;
620
- if (window["sap-ui-debug"] !== false && window["sap-ui-debug"] !== undefined) {
621
- debugMode = window["sap-ui-debug"];
622
- }
568
+ /*
569
+ * Attention!
570
+ * The names in this object must be kept stable. They might
571
+ * appear at any time in any template at runtime. Also, choose a name
572
+ * that can be read by a user. E.g., defaultParameterNames is good,
573
+ * mappedDefaultedParamNames is bad.
574
+ */
575
+ const oRuntime = {
576
+ // the inner app route
577
+ innerAppRoute: getInnerAppRoute(oTemplateContext) || oMatchingTarget.parsedIntent.appSpecificRoute,
578
+ // the target navigation mode
579
+ targetNavMode: getTargetNavigationMode(oMatchingTarget),
580
+ // the names of default parameters among the startupParameters
581
+ defaultParameterNames: oMatchingTarget.mappedDefaultedParamNames,
582
+ /*
583
+ * the parameters (defaults + inent parameters) that must be passed
584
+ * to the application in order to start it
585
+ */
586
+ startupParameter: oMatchingTarget.mappedIntentParamsPlusSimpleDefaults,
587
+ // remote application information (for the scube scenario)
588
+ remoteApplication: {
589
+ remoteSO: undefined,
590
+ remoteAction: undefined
591
+ }
592
+ };
623
593
 
624
- const bEnablePersonalization = Config.last("/core/shell/enablePersonalization");
594
+ // eslint-disable-next-line complexity
595
+ createEnv().then((oEnv) => {
596
+ // the runtime environment, containing data from the current state of the FLP
597
+ oRuntime.env = oEnv;
625
598
 
626
- fnResolve({
627
- language: sLanguage,
628
- logonLanguage: sLogonLanguage,
629
- theme: sTheme,
630
- themeServiceRoot: themeServiceRoot,
631
- isDebugMode: debugMode,
632
- ui5Version: sUi5Version,
633
- contentDensity: sContentDensity,
634
- sapPlugins: oPluginsService._getNamesOfPluginsWithAgents(),
635
- innerAppState: getInnerAppState(),
636
- sessionTimeout: sessionTimeout,
637
- historyDirection: History.getInstance().getDirection() || "",
638
- enableShellPersonalization: bEnablePersonalization
639
- });
640
- });
641
- });
642
- }
599
+ const oTemplateParams = ObjectPath.get(["sap.integration", "urlTemplateParams", "query"], oTemplateContext.siteAppSection) || {};
600
+ if (oTemplateParams.hasOwnProperty("sap-cssurl")) {
601
+ oRuntime.env.themeServiceRoot = undefined;
602
+ oRuntime.env.theme = undefined;
603
+ }
643
604
 
644
- // extracts the inner app route from the browser hash
645
- function getInnerAppRoute (oTemplateContext) {
646
- var oTemplatePayload = oTemplateContext.payload;
647
- var sInnerAppRoute;
648
- var sHashFragment = hasher.getHash() || oExportedAPIs.getBrowserHash();
649
- var indexOfInnerRoute = sHashFragment.indexOf("&/");
650
- var iOffset = 1; //to avoid the starting "&";
651
- var bIsJam = false;
605
+ if (oCapabilities.appFrameworkId === "UI5" && oRuntime.startupParameter) {
606
+ for (const key in oRuntime.startupParameter) {
607
+ if (key !== "sap-ushell-innerAppRoute") {
608
+ oRuntime.startupParameter[key][0] = encodeURIComponent(oRuntime.startupParameter[key][0]);
609
+ }
610
+ if (key === "sap-shell-so") {
611
+ oRuntime.remoteApplication.remoteSO = oRuntime.startupParameter[key][0];
612
+ }
613
+ if (key === "sap-shell-action") {
614
+ oRuntime.remoteApplication.remoteAction = oRuntime.startupParameter[key][0];
615
+ }
616
+ }
617
+ if (oMatchingTarget.mappedDefaultedParamNames && oMatchingTarget.mappedDefaultedParamNames.length > 0) {
618
+ const tmpMappedDefaultedParamNames = oMatchingTarget.mappedDefaultedParamNames.filter((paramName) => {
619
+ return paramName !== "sap-shell-so" && paramName !== "sap-shell-action" && paramName !== "sap-system";
620
+ });
621
+ oRuntime.startupParameter["sap-ushell-defaultedParameterNames"] = [JSON.stringify(tmpMappedDefaultedParamNames)];
622
+ }
623
+ delete oRuntime.startupParameter["sap-shell-so"];
624
+ delete oRuntime.startupParameter["sap-shell-action"];
625
+ }
652
626
 
653
- if (oTemplateContext.siteAppSection?.["sap.integration"]?.urlTemplateId === "urltemplate.jam") {
654
- bIsJam = true;
655
- }
656
- if (indexOfInnerRoute > 0) {
657
- if (oTemplatePayload && oTemplatePayload.capabilities && oTemplatePayload.capabilities.appFrameworkId === "UI5") {
658
- iOffset = 2; //to avoid the starting "&/"
659
- }
660
- sInnerAppRoute = sHashFragment.substring(indexOfInnerRoute + iOffset);
661
- try {
662
- if (!bIsJam && sInnerAppRoute && sInnerAppRoute.length > 0) {
663
- sInnerAppRoute = decodeURIComponent(sInnerAppRoute);
664
- }
665
- } catch (e) {
666
- Log.warning("inner route should be double encoded", e, "sap.ushell.ApplicationType.getInnerAppRoute");
667
- }
668
- }
669
- return sInnerAppRoute;
670
- }
627
+ // this is a hot fix made for an escelation opened by
628
+ // Lockheed Martin 885662/2021 about sap workzone, which
629
+ // is the only quick way to solve the issue. A more
630
+ // deep process to solve the issue in a proper way will
631
+ // be done via a BLI as the issue is very complex
632
+ // please do not remove the usage of "window.location.hash"
633
+ const sJamSearchPref = "/universal_search/search";
634
+ const iJamSearchPos = oRuntime.innerAppRoute && oRuntime.innerAppRoute.indexOf(sJamSearchPref);
635
+ let JamInnerRoute;
636
+ if (iJamSearchPos === 0) {
637
+ JamInnerRoute = oRuntime.innerAppRoute.substring(1);
638
+ oRuntime.innerAppRoute = "/JAMSEARCHPATHH?JAMSEARCHVALUEE=VALUEE";
639
+ }
671
640
 
672
- function getTargetNavigationMode (oMatchingTarget) {
673
- var sMode = oMatchingTarget.targetNavigationMode;
674
- if (sMode === undefined || sMode === "") {
675
- if (ushellUtils.isColdStart()) {
676
- sMode = "explace";
677
- } else {
678
- sMode = "inplace";
679
- }
680
- }
681
- return sMode;
682
- }
641
+ // Special temporary code to fix issues when openning web gui application
642
+ // this code will be removed once the URL template in CF will be fixed.
643
+ // Please contact Alon Barnes
644
+ const sURLTemplateId = ushellUtils.getMember(oTemplateContext.siteAppSection, "sap|integration.urlTemplateId");
645
+ let oTemplatePayload = oTemplateContext.payload;
646
+ if (sURLTemplateId === "urltemplate.gui") {
647
+ oTemplatePayload = deepClone(oTemplateContext.payload, 20);
648
+ handleTempWebGuiBugTemp(oTemplatePayload, oRuntime, oInbound);
649
+ }
683
650
 
684
- function getBrowserHash () {
685
- return window.location.hash;
686
- }
651
+ // See comment in function for this temporary special case
652
+ oTemplatePayload = handleSAPITTempSolution(sURLTemplateId, oTemplatePayload, oTemplateParams);
687
653
 
688
- function handleTempWebGuiBugTemp (oTemplatePayload, oRuntime, oInbound) {
689
- if (isPlainObject(oRuntime.startupParameter) && Object.keys(oRuntime.startupParameter).length > 0) {
690
- oRuntime.startupParameter = deepClone(oRuntime.startupParameter);
654
+ let sURL = URLTemplateProcessor.expand(
655
+ oTemplatePayload,
656
+ oTemplateContext.site,
657
+ oRuntime,
658
+ oTemplateContext.siteAppSection,
659
+ "startupParameter"
660
+ );
691
661
 
692
- const oForbiddenParameters = {
693
- "sap-wd-run-sc": true,
694
- "sap-wd-auto-detect": true,
695
- "sap-ep-version": true
696
- };
662
+ if (iJamSearchPos === 0) {
663
+ sURL = sURL.replace("/JAMSEARCHPATHH?JAMSEARCHVALUEE=VALUEE", `/${JamInnerRoute}`);
664
+ }
697
665
 
698
- // remove "forbidden" parameters
699
- Object.keys(oRuntime.startupParameter).forEach(function (sParamName) {
700
- if (oForbiddenParameters[sParamName.toLowerCase()]) {
701
- delete oRuntime.startupParameter[sParamName];
702
- }
703
- });
666
+ if (oRuntime.env.theme === undefined) {
667
+ sURL = sURL.replace("&sap-theme=", "");
668
+ }
704
669
 
705
- //guiResolution
706
- const aUnneccessaryParameters = guiResolution.getUnnecessaryWebguiParameters(oRuntime.startupParameter, oInbound || {});
707
- guiResolution.removeObjectKey(oRuntime.startupParameter, aUnneccessaryParameters);
670
+ // temporary bug fix until URITemplate.js will be fixed.
671
+ // for ui5 apps, the hash added to the URL in the template processing is encoded twice
672
+ // and there for it does not match the hash of FLP (browser url). we need to replace the
673
+ // hash in the URL with the correct hash of FLP which is encoded only once.
674
+ // currently, there is no way to do that in the template itself.
675
+ if (oCapabilities.appFrameworkId === "UI5" && oExportedAPIs.getBrowserHash().length > 1) {
676
+ sURL = sURL.split("#")[0] + oExportedAPIs.getBrowserHash();
677
+ Log.debug(`- created URL with fixed hash: ${sURL}`, "sap.ushell.ApplicationType");
678
+ }
708
679
 
709
- const oEffectiveParametersToAppend = guiResolution.getWebguiNonBusinessParameters(oRuntime.startupParameter);
710
- guiResolution.removeObjectKey(oRuntime.startupParameter, Object.keys(oEffectiveParametersToAppend));
680
+ // returns a function that instantiates an attribute, like appId of a template
681
+ function fnInstantiateTemplate (sTemplate) {
682
+ const oPayloadClone = deepClone(oTemplateContext.payload, 20);
683
+ oPayloadClone.urlTemplate = sTemplate;
684
+ return URLTemplateProcessor.expand(
685
+ oPayloadClone,
686
+ oTemplateContext.site,
687
+ oRuntime,
688
+ oTemplateContext.siteAppSection,
689
+ "startupParameter"
690
+ );
691
+ }
692
+ const sSytemAliasOrDestination = (oTemplateContext.siteAppSection["sap.app"] &&
693
+ oTemplateContext.siteAppSection["sap.app"].destination) ||
694
+ oTemplateContext.siteAppSection.destination || "";
695
+ const sContentProviderId = oTemplateContext?.siteAppSection["sap.app"]?.contentProviderId || "";
696
+ const sSystemAlias = SystemAlias.getSystemAliasInProvider(sSytemAliasOrDestination, sContentProviderId);
711
697
 
712
- const sSkipValue = guiResolution.getExplicitSkipSelectionScreenParameter(oRuntime.startupParameter);
698
+ const oResult = {
699
+ applicationType: "URL",
700
+ text: oInbound.title,
701
+ appCapabilities: createAppCapabilities(
702
+ oCapabilities,
703
+ oTemplateContext.siteAppSection,
704
+ fnInstantiateTemplate
705
+ ),
706
+ url: sURL,
707
+ extendedInfo: oApplicationTypeUtils.getExtendedInfo(oMatchingTarget, oTemplateContext.siteAppSection, oTemplateContext.site),
708
+ contentProviderId: oInbound.contentProviderId || "",
709
+ systemAlias: sSystemAlias
710
+ };
711
+ oApplicationTypeUtils.addIframeCacheHintToURL(oResult, oResult.appCapabilities.appFrameworkId);
712
+ oApplicationTypeUtils.addKeepAliveToURLTemplateResult(oResult);
713
+ addSpacesModeToURLTemplateResult(oResult);
714
+ _addLanguageToURLTemplateResult(oResult, oTemplateContext.siteAppSection, oRuntime);
713
715
 
714
- if (oTemplatePayload?.parameters?.names?.skipScreenChar.length > 0) {
715
- oTemplatePayload.parameters.names.skipScreenChar =
716
- (Object.keys(oRuntime.startupParameter).length > 0 && (sSkipValue === "" || sSkipValue === "1") ? "*" : "");
717
- }
718
- }
716
+ const oPromisePostTemplateProcessing = new Promise((fnResolve) => {
717
+ Container.getServiceAsync("URLTemplate").then((URLTemplate) => {
718
+ sap.ui.require(["sap/ushell/appIntegration/ApplicationContainerCache"], (ApplicationContainerCache) => {
719
+ // todo: [FLPCOREANDUX-10024] should this really be necessary?
720
+ const bForNewIframe = !ApplicationContainerCache.findFreeContainerByUrl(oResult.url);
721
+ URLTemplate.handlePostTemplateProcessing(oResult.url, oTemplateContext.siteAppSection, bForNewIframe).then(fnResolve);
722
+ });
723
+ });
724
+ });
725
+
726
+ oPromisePostTemplateProcessing.then((sURLNew) => {
727
+ // special case for selenium tests that use different iframe domain
728
+ if (sIframeURLDomainForTests && sURLNew.indexOf("ui5appruntime.html") > 0) {
729
+ const arrUrlParts = sURLNew.split("?");
730
+ arrUrlParts[0] = sIframeURLDomainForTests;
731
+ sURLNew = arrUrlParts.join("?");
732
+ }
733
+ oResult.url = sURLNew;
734
+ handleURLTransformation(URLTemplateProcessor, oResult.url, oCapabilities, oTemplateContext).then((sTransformedURL) => {
735
+ oResult.url = sTransformedURL;
736
+ // GUI url should not be compacted as it is not compacted in ABAP FLP
737
+ if (oResult.url && typeof oResult.url === "string" && oResult.url.indexOf("sap-iframe-hint=GUI") > 0) {
738
+ fnResolveGlobal(oResult);
739
+ } else {
740
+ compactURLParameters(oResult.url, oRuntime.targetNavMode, oCapabilities)
741
+ .then((sCompactURL) => {
742
+ oResult.url = sCompactURL;
743
+ fnResolveGlobal(oResult);
744
+ }, () => {
745
+ fnResolveGlobal(oResult);
746
+ });
747
+ }
748
+ });
749
+ });
750
+ });
751
+ });
752
+ });
719
753
  }
720
754
 
721
- //Special temporary code to fix for SAPIT internal sap site until they will start using SWZ external
722
- // subaccount content provider (then, this code should be removed).
723
- // Please contact Alon Barnes
724
- function handleSAPITTempSolution(sURLTemplateId, oTemplatePayload, oTemplateParams) {
725
- try {
726
- if (sURLTemplateId === "urltemplate.url" && oTemplateParams.hasOwnProperty("sapit-external-ui5app")) {
727
- const oPayload = deepClone(oTemplatePayload, 20);
728
- oPayload.urlTemplate = oPayload.urlTemplate.replace(",paramSapLocale", ",appStartupParameters,paramSapLocale");
729
- oPayload.parameters.names = {...oPayload.parameters.names};
730
- oPayload.parameters.names["appStartupParameters"] = {
731
- renameTo: "sap-startup-params",
732
- value: "{*|match(^(?!sap-ushell(-innerAppRoute\\|-navmode)$))|join(&,=)}"
733
- };
734
- return oPayload;
735
- }
736
- } catch (e) {
737
- //ignore - will return the original payload to continue as before
738
- }
739
- return oTemplatePayload;
755
+ function getBrowserHash () {
756
+ return window.location.hash;
740
757
  }
741
758
 
742
- var oExportedAPIs = {
759
+ oExportedAPIs = {
743
760
  generateURLTemplateResolutionResult: generateURLTemplateResolutionResult,
744
761
  handleURLTransformation: handleURLTransformation,
745
762
 
746
763
  // for testing
747
764
  getBrowserHash: getBrowserHash,
748
765
  _createEnv: createEnv,
749
- _addLanguageToURLTemplateResult: _addLanguageToURLTemplateResult
766
+ _addLanguageToURLTemplateResult: _addLanguageToURLTemplateResult,
767
+ compactURLParameters: compactURLParameters
750
768
  };
751
769
 
752
770
  return oExportedAPIs;