@sapui5/sap.ushell 1.114.0 → 1.114.2

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 (294) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell/.library +1 -1
  3. package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
  4. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
  5. package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
  6. package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
  7. package/src/main/js/sap/ushell/URLTemplateProcessor.js +1 -1
  8. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
  9. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
  10. package/src/main/js/sap/ushell/_URLTemplateProcessor/DefinitionParameterSetBuilder.js +1 -1
  11. package/src/main/js/sap/ushell/_URLTemplateProcessor/DependencyGraph.js +1 -1
  12. package/src/main/js/sap/ushell/_URLTemplateProcessor/Functions.js +1 -1
  13. package/src/main/js/sap/ushell/_URLTemplateProcessor/Resolvers.js +1 -1
  14. package/src/main/js/sap/ushell/_URLTemplateProcessor/TemplateParameterParser.js +1 -1
  15. package/src/main/js/sap/ushell/_URLTemplateProcessor/utils.js +1 -1
  16. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  17. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  18. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  19. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +1 -1
  20. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
  21. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
  22. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  23. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
  24. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
  25. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
  26. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
  27. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
  28. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
  29. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
  30. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
  31. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
  32. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
  33. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
  34. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
  35. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
  36. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
  37. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
  38. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  39. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  40. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
  41. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
  42. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
  43. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
  44. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +1 -1
  46. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +2 -2
  47. package/src/main/js/sap/ushell/adapters/local/MenuAdapter.js +35 -0
  48. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
  49. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
  50. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
  51. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
  52. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
  53. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
  54. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
  55. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
  56. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
  57. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
  58. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +50 -26
  59. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntimeContext.js +43 -2
  60. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Trigger.js +1 -1
  61. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/Component.js +8 -8
  62. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +9 -3
  63. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycleAgent.js +81 -24
  64. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +6 -2
  65. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +18 -7
  66. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +99 -3
  67. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +14 -7
  68. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +15 -8
  69. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +5 -0
  70. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  71. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/logger.js +1 -1
  72. package/src/main/js/sap/ushell/bootstrap/_SchedulingAgent/state.js +1 -1
  73. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  74. package/src/main/js/sap/ushell/bootstrap/common/common.create.configcontract.core.js +17 -0
  75. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  76. package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +76 -76
  77. package/src/main/js/sap/ushell/components/applicationIntegration/Storage.js +1 -1
  78. package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +4 -1
  79. package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +19 -5
  80. package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +16 -1
  81. package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +1 -1
  82. package/src/main/js/sap/ushell/components/applicationIntegration/elements/model.js +1 -1
  83. package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
  84. package/src/main/js/sap/ushell/components/applicationIntegration/relatedShellElements/RelatedShellElements.js +1 -1
  85. package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +7 -1
  86. package/src/main/js/sap/ushell/components/contentFinder/Component.js +1 -1
  87. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +1 -1
  88. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  89. package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
  90. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  91. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  92. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  93. package/src/main/js/sap/ushell/components/homepage/DashboardContent.controller.js +25 -0
  94. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
  95. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +1 -1
  96. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
  97. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  98. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  99. package/src/main/js/sap/ushell/components/pages/Component.js +1 -1
  100. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  101. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +1 -1
  102. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  103. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +1 -1
  104. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  105. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  106. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +191 -58
  107. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  108. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/CustomTreeItem.fragment.xml +4 -4
  109. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenu.view.xml +2 -1
  110. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/view/NavigationBarMenuPopover.fragment.xml +8 -1
  111. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +1 -1
  112. package/src/main/js/sap/ushell/components/shell/PostLoadingHeaderEnhancement/Component.js +1 -3
  113. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  114. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  115. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
  116. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  117. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/NavigationSvcSearchProvider.js +1 -1
  118. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  119. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
  120. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +1 -1
  121. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/UserDefaultsForm.js +5 -1
  122. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +20 -2
  123. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
  124. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
  125. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  126. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +1 -1
  127. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
  128. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1 -1
  129. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
  130. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
  131. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
  132. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
  133. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
  134. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
  135. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  136. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +1 -1
  137. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +1 -1
  138. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  139. package/src/main/js/sap/ushell/components/workPageRuntime/services/NavigationResolver.js +1 -1
  140. package/src/main/js/sap/ushell/components/workPageRuntime/services/WorkPage.js +1 -1
  141. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  142. package/src/main/js/sap/ushell/library.js +1 -1
  143. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  144. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +1 -1
  145. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
  146. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  147. package/src/main/js/sap/ushell/renderers/fiori2/Renderer.js +2 -2
  148. package/src/main/js/sap/ushell/renderers/fiori2/Shell.controller.js +5 -4
  149. package/src/main/js/sap/ushell/renderers/fiori2/Shell.view.js +7 -1
  150. package/src/main/js/sap/ushell/renderers/fiori2/ShellAsync.view.js +7 -1
  151. package/src/main/js/sap/ushell/renderers/fiori2/ShellLayout.js +20 -16
  152. package/src/main/js/sap/ushell/renderers/fiori2/resources/resources.properties +2 -0
  153. package/src/main/js/sap/ushell/renderers/fiori2/search/searchComponent/manifest.json +1 -1
  154. package/src/main/js/sap/ushell/services/AppConfiguration.js +24 -2
  155. package/src/main/js/sap/ushell/services/AppLifeCycle.js +36 -9
  156. package/src/main/js/sap/ushell/services/AppState.js +13 -1
  157. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  158. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +1 -1
  159. package/src/main/js/sap/ushell/services/CommonDataModel.js +1 -1
  160. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  161. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  162. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +1 -1
  163. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +1 -1
  164. package/src/main/js/sap/ushell/services/DarkModeSupport.js +1 -1
  165. package/src/main/js/sap/ushell/services/LaunchPage.js +3 -3
  166. package/src/main/js/sap/ushell/services/Menu.js +5 -1
  167. package/src/main/js/sap/ushell/services/Message.js +1 -1
  168. package/src/main/js/sap/ushell/services/MessageBroker.js +1 -1
  169. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  170. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  171. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  172. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  173. package/src/main/js/sap/ushell/services/Pages.js +1 -1
  174. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  175. package/src/main/js/sap/ushell/services/PluginManager.js +1 -1
  176. package/src/main/js/sap/ushell/services/ReferenceResolver.js +1 -1
  177. package/src/main/js/sap/ushell/services/Search.js +1 -1
  178. package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
  179. package/src/main/js/sap/ushell/services/SearchableContent.js +1 -1
  180. package/src/main/js/sap/ushell/services/SmartNavigation.js +1 -1
  181. package/src/main/js/sap/ushell/services/SpaceContent.js +1 -1
  182. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  183. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  184. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +1 -1
  185. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +1 -1
  186. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +1 -1
  187. package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
  188. package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
  189. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  190. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  191. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Formatter.js +1 -1
  192. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundIndex.js +1 -1
  193. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/InboundProvider.js +1 -1
  194. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/PrelaunchOperations.js +1 -1
  195. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Search.js +1 -1
  196. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/StagedLogger.js +1 -1
  197. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/SystemContext.js +1 -1
  198. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/Utils.js +1 -1
  199. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/VirtualInbounds.js +1 -1
  200. package/src/main/js/sap/ushell/services/_ClientSideTargetResolution/XAppStateProcessing.js +1 -1
  201. package/src/main/js/sap/ushell/services/_CommonDataModel/SiteConverter.js +1 -1
  202. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
  203. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  204. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  205. package/src/main/js/sap/ushell/services/_MessageBroker/MessageBrokerEngine.js +1 -1
  206. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  207. package/src/main/js/sap/ushell/services/_PluginManager/Extensions.js +1 -1
  208. package/src/main/js/sap/ushell/services/_PluginManager/HeaderExtensions.js +1 -1
  209. package/src/main/js/sap/ushell/services/_PluginManager/MenuExtensions.js +1 -1
  210. package/src/main/js/sap/ushell/services/_Ui5ComponentLoader/utils.js +1 -1
  211. package/src/main/js/sap/ushell/services/_VisualizationInstantiation/VizInstanceLink.js +1 -1
  212. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
  213. package/src/main/js/sap/ushell/themes/base/ShellAppTitle.less +10 -27
  214. package/src/main/js/sap/ushell/themes/sap_belize/ShellHeader.less +1 -11
  215. package/src/main/js/sap/ushell/themes/sap_belize_hcb/ShellHeader.less +0 -11
  216. package/src/main/js/sap/ushell/themes/sap_belize_hcw/ShellHeader.less +1 -13
  217. package/src/main/js/sap/ushell/themes/sap_fiori_3/ShellHeader.less +1 -9
  218. package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/ShellHeader.less +1 -9
  219. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/ShellHeader.less +1 -10
  220. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/ShellHeader.less +0 -12
  221. package/src/main/js/sap/ushell/themes/sap_hcb/ShellHeader.less +0 -12
  222. package/src/main/js/sap/ushell/themes/sap_horizon/ShellAppTitle.less +1 -9
  223. package/src/main/js/sap/ushell/themes/sap_horizon_dark/ShellAppTitle.less +1 -7
  224. package/src/main/js/sap/ushell/themes/sap_horizon_hcb/ShellAppTitle.less +0 -9
  225. package/src/main/js/sap/ushell/themes/sap_horizon_hcw/ShellAppTitle.less +0 -11
  226. package/src/main/js/sap/ushell/ui/ShellHeader.fragment.xml +5 -1
  227. package/src/main/js/sap/ushell/ui/ShellHeader.js +5 -1
  228. package/src/main/js/sap/ushell/ui/ShellHeaderRenderer.js +1 -1
  229. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
  230. package/src/main/js/sap/ushell/ui/contentFinder/AppBox.js +1 -1
  231. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  232. package/src/main/js/sap/ushell/ui/launchpad/Page.js +1 -1
  233. package/src/main/js/sap/ushell/ui/launchpad/Section.js +11 -3
  234. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  235. package/src/main/js/sap/ushell/ui/shell/ShellAppTitle.js +115 -63
  236. package/src/main/js/sap/ushell/ui/shell/ShellHeadItem.js +1 -1
  237. package/src/main/js/sap/ushell/ui/shell/ShellNavigationMenu.js +30 -62
  238. package/src/main/js/sap/ushell/ui/shell/SysInfoBar.js +1 -1
  239. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +1 -1
  240. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  241. package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
  242. package/src/main/js/sap/ushell/ui5service/UserStatus.js +1 -1
  243. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  244. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  245. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n.properties +0 -5
  246. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ar.properties +0 -2
  247. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_bg.properties +0 -2
  248. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ca.properties +0 -2
  249. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_cs.properties +0 -2
  250. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_cy.properties +0 -2
  251. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_da.properties +0 -2
  252. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_de.properties +0 -2
  253. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_el.properties +0 -2
  254. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en.properties +0 -2
  255. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_GB.properties +0 -2
  256. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_US_sappsd.properties +0 -2
  257. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_US_saprigi.properties +0 -2
  258. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_en_US_saptrc.properties +0 -2
  259. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_es.properties +0 -2
  260. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_es_MX.properties +0 -2
  261. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_et.properties +0 -2
  262. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_fi.properties +0 -2
  263. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_fr.properties +0 -2
  264. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_fr_CA.properties +0 -2
  265. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_hi.properties +0 -2
  266. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_hr.properties +0 -2
  267. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_hu.properties +0 -2
  268. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_id.properties +0 -2
  269. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_it.properties +0 -2
  270. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_iw.properties +0 -2
  271. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ja.properties +0 -2
  272. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_kk.properties +0 -2
  273. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ko.properties +0 -2
  274. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_lt.properties +0 -2
  275. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_lv.properties +0 -2
  276. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ms.properties +0 -2
  277. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_nl.properties +0 -2
  278. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_no.properties +0 -2
  279. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_pl.properties +0 -2
  280. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_pt.properties +0 -2
  281. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_pt_PT.properties +0 -2
  282. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ro.properties +0 -2
  283. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_ru.properties +0 -2
  284. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sh.properties +0 -2
  285. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sk.properties +0 -2
  286. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sl.properties +0 -2
  287. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_sv.properties +0 -2
  288. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_th.properties +0 -2
  289. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_tr.properties +0 -2
  290. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_uk.properties +0 -2
  291. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_vi.properties +0 -2
  292. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_zh_CN.properties +0 -2
  293. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/i18n/i18n_zh_TW.properties +0 -2
  294. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/scriptAgent/manifest.json +0 -66
@@ -138,8 +138,19 @@ sap.ui.define([
138
138
  );
139
139
  };
140
140
 
141
- this.isNavigationSupported = function (aIntents, oComponent) {
142
- //ready also for scube
141
+ this.isNavigationSupported = function (aIntents, oComponent, bCheckInOuterShellOnly) {
142
+ var fnCheckInShell = function (aIntentsTmp) {
143
+ return AppRuntimeService.sendMessageToOuterShell(
144
+ "sap.ushell.services.CrossApplicationNavigation.isNavigationSupported", {
145
+ aIntents: aIntentsTmp
146
+ }
147
+ );
148
+ };
149
+
150
+ if (bCheckInOuterShellOnly === true) {
151
+ return fnCheckInShell(aIntents);
152
+ }
153
+
143
154
  if (AppRuntimeContext.getIsScube()) {
144
155
  var oDeferred = new jQuery.Deferred(),
145
156
  aFilteredIntents;
@@ -161,11 +172,7 @@ sap.ui.define([
161
172
  return oDeferred.promise();
162
173
  }
163
174
 
164
- return AppRuntimeService.sendMessageToOuterShell(
165
- "sap.ushell.services.CrossApplicationNavigation.isNavigationSupported", {
166
- aIntents: aIntents
167
- }
168
- );
175
+ return fnCheckInShell(aIntents);
169
176
  };
170
177
 
171
178
  this.toExternal = function (oArgs, oComponent) {
@@ -24,6 +24,9 @@ sap.ui.define([
24
24
  var ShellUIServiceProxy = oService.extend("sap.ushell.appRuntime.services.ShellUIService", {
25
25
 
26
26
  setTitle: function (sTitle) {
27
+ if (!sTitle) {
28
+ return;
29
+ }
27
30
  sLastSetTitle = sTitle;
28
31
  return AppRuntimeService.sendMessageToOuterShell(
29
32
  "sap.ushell.services.ShellUIService.setTitle", {
@@ -36,17 +39,21 @@ sap.ui.define([
36
39
  },
37
40
 
38
41
  setHierarchy: function (aHierarchyLevels) {
39
- return AppRuntimeService.sendMessageToOuterShell(
40
- "sap.ushell.services.ShellUIService.setHierarchy", {
41
- aHierarchyLevels: aHierarchyLevels
42
- });
42
+ return AppRuntimeContext.checkIntentsConversionForScube(aHierarchyLevels).then(function (aNewHierarchyLevels) {
43
+ return AppRuntimeService.sendMessageToOuterShell(
44
+ "sap.ushell.services.ShellUIService.setHierarchy", {
45
+ aHierarchyLevels: aNewHierarchyLevels
46
+ });
47
+ });
43
48
  },
44
49
 
45
50
  setRelatedApps: function (aRelatedApps) {
46
- return AppRuntimeService.sendMessageToOuterShell(
47
- "sap.ushell.services.ShellUIService.setRelatedApps", {
48
- aRelatedApps: aRelatedApps
49
- });
51
+ return AppRuntimeContext.checkIntentsConversionForScube(aRelatedApps).then(function (aNewRelatedApps) {
52
+ return AppRuntimeService.sendMessageToOuterShell(
53
+ "sap.ushell.services.ShellUIService.setRelatedApps", {
54
+ aRelatedApps: aNewRelatedApps
55
+ });
56
+ });
50
57
  },
51
58
 
52
59
  setBackNavigation: function (fnCallback) {
@@ -23,6 +23,11 @@ sap.ui.define([
23
23
  this.getLanguageList = function () {
24
24
  return AppRuntimeService.sendMessageToOuterShell("sap.ushell.services.UserInfo.getLanguageList");
25
25
  };
26
+
27
+
28
+ this.getShellUserInfo = function () {
29
+ return AppRuntimeService.sendMessageToOuterShell("sap.ushell.services.UserInfo.getShellUserInfo");
30
+ };
26
31
  }
27
32
 
28
33
  ObjectPath.set("sap.ushell.services.UserInfo", UserInfoProxy);
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @fileOverview The Unified Shell's Ui5ComponentLoaderAdapter for the application runtime platform
4
4
  *
5
- * @version 1.114.0
5
+ * @version 1.114.2
6
6
  */
7
7
  sap.ui.define([
8
8
  ], function () {
@@ -45,7 +45,7 @@
45
45
  * }, false);
46
46
  * </pre>
47
47
  *
48
- * @version 1.114.0
48
+ * @version 1.114.2
49
49
  */
50
50
 
51
51
  sap.ui.define([
@@ -71,7 +71,7 @@
71
71
  * }, false);
72
72
  * </pre>
73
73
  *
74
- * @version 1.114.0
74
+ * @version 1.114.2
75
75
  * @namespace
76
76
  */
77
77
  sap.ui.define([
@@ -4,7 +4,7 @@
4
4
  * @fileOverview Configure the UI5Settings for Date and Time Format for the 'CDM'
5
5
  * platform.
6
6
  *
7
- * @version 1.114.0
7
+ * @version 1.114.2
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/base/Log",
@@ -106,6 +106,21 @@ sap.ui.define([
106
106
  return false;
107
107
  }
108
108
 
109
+ /**
110
+ * Converts a string with comma-separated values into a string array
111
+ * @param {string} sCsv comma-separated values
112
+ * @returns {string[]} values as array
113
+ */
114
+ function csvToArray (sCsv) {
115
+ if (typeof sCsv !== "string") {
116
+ return [];
117
+ }
118
+
119
+ return sCsv.split(",").map(function (entry) {
120
+ return entry.trim();
121
+ });
122
+ }
123
+
109
124
  var oConfigDefinition = {
110
125
  core: { // the unified shell core
111
126
  site: {
@@ -129,6 +144,7 @@ sap.ui.define([
129
144
  }
130
145
  },
131
146
  navigation: {
147
+
132
148
  enableInPlaceForClassicUIs: {
133
149
  GUI: getConfigValue("services/ClientSideTargetResolution/config/enableInPlaceForClassicUIs/GUI", false),
134
150
  WDA: getConfigValue("services/ClientSideTargetResolution/config/enableInPlaceForClassicUIs/WDA", false),
@@ -246,6 +262,7 @@ sap.ui.define([
246
262
  sessionTimeoutIntervalInMinutes: getConfigValue("renderers/fiori2/componentData/config/sessionTimeoutIntervalInMinutes", -1),
247
263
  enableFeaturePolicyInIframes: getConfigValue("renderers/fiori2/componentData/config/enableFeaturePolicyInIframes", true),
248
264
  favIcon: getConfigValue("renderers/fiori2/componentData/config/favIcon", undefined),
265
+ useAppTitleFromNavTargetResolution: csvToArray(getConfigValue("ushell/useAppTitleFromNavTargetResolution")),
249
266
  model: {
250
267
  enableSAPCopilotWindowDocking: undefined,
251
268
  enableBackGroundShapes: getEnableBackGroundShapes(),
@@ -3,7 +3,7 @@
3
3
  "sap.app": {
4
4
  "id": "sap.ushell.components.appfinder",
5
5
  "applicationVersion": {
6
- "version": "1.114.0"
6
+ "version": "1.114.2"
7
7
  },
8
8
  "i18n": {
9
9
  "bundleUrl": "../../renderers/fiori2/resources/resources.properties",
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  /**
3
3
  * @fileOverview handle all the resources for the different applications.
4
- * @version 1.114.0
4
+ * @version 1.114.2
5
5
  */
6
6
  sap.ui.define([
7
7
  "sap/ushell/components/applicationIntegration/elements/model",
@@ -25,7 +25,8 @@ sap.ui.define([
25
25
  "sap/ushell/utils/UrlParsing",
26
26
  "sap/ui/core/Core",
27
27
  "sap/ui/thirdparty/hasher",
28
- "sap/ushell/services/_MessageBroker/MessageBrokerEngine"
28
+ "sap/ushell/services/_MessageBroker/MessageBrokerEngine",
29
+ "sap/m/library"
29
30
  ], function (
30
31
  ElementsModel,
31
32
  Storage,
@@ -48,7 +49,8 @@ sap.ui.define([
48
49
  oUrlParsing,
49
50
  Core,
50
51
  hasher,
51
- MessageBrokerEngine
52
+ MessageBrokerEngine,
53
+ mobileLibrary
52
54
  ) {
53
55
  "use strict";
54
56
 
@@ -59,7 +61,6 @@ sap.ui.define([
59
61
  sRootIntent,
60
62
  oShellUIService,
61
63
  appState,
62
- oIntentToStorageId = {},
63
64
  disableHomeAppCache = false,
64
65
  oCurrentApplication = {},
65
66
  oActualElementsModelStateMap = {
@@ -88,7 +89,9 @@ sap.ui.define([
88
89
  oKeepAliveModes = {
89
90
  FULL: "true",
90
91
  RESTRICTED: "restricted"
91
- };
92
+ },
93
+ fnOldTriggerEmail;
94
+ var URLHelper = mobileLibrary.URLHelper;
92
95
 
93
96
  //connect FLP to the message broker
94
97
  if (window.QUnit === undefined) {
@@ -263,26 +266,25 @@ sap.ui.define([
263
266
  };
264
267
 
265
268
  this.handleExitStateful = function (sFromId, oFrom, isHomePage) {
266
- var sBBStorageId,
269
+ var sKeepAliveAppId = oFrom.getCurrentAppId && oFrom.getCurrentAppId(),
267
270
  oHandlers = BlueBoxHandler.getHandler();
268
271
 
269
- if (Storage.get(sFromId)) {
270
- sBBStorageId = BlueBoxHandler.getStorageKey(oFrom);
272
+ if (Storage.get(sKeepAliveAppId)) {
271
273
  if (RelatedServices.isBackNavigation() === true && !isHomePage) {
272
274
  Core.getEventBus().publish("sap.ushell", "appClosed", oFrom);
273
- Storage.remove(sBBStorageId);
275
+ Storage.remove(sKeepAliveAppId);
274
276
  return oHandlers.destroy(oFrom);
275
277
  } else {
276
278
  // in this case the store of the currently running application, so we do not need to pass the sCacheId
277
279
  Core.getEventBus().publish("sap.ushell", "appClosed", oFrom);
278
- return oHandlers.store(oFrom, sBBStorageId);
280
+ return oHandlers.store(oFrom, sKeepAliveAppId);
279
281
  }
280
282
  }
281
283
  // in this case the destroy of the currently running application, so we do not need to pass the sCacheId
282
284
  return oHandlers.destroy(oFrom);
283
285
  };
284
286
 
285
- this.handleExitApplication = function (sFromId, oFrom, sToId, oTo, isHomePage) {
287
+ this.handleExitApplication = function (sFromId, oFrom, sToId, oTo, isHomePage, bFromAfterNavigate) {
286
288
  var that = this,
287
289
  bIsAppOfTypeCachable,
288
290
  oPromiseAppClose,
@@ -295,8 +297,7 @@ sap.ui.define([
295
297
 
296
298
  if (sFromId && oFrom) { // FIXME oFrom.getApplicationType is not defined for Homepage and AppFinder in case disableHomeAppCache is true
297
299
  if (oFrom.getUrl() && BlueBoxHandler.isStatefulContainerSupported(BlueBoxHandler.getStateFul(oFrom.getUrl()))) {
298
- // Update the code to load stateful according
299
- oPromiseAppClose = this.handleExitStateful(sFromId, oFrom, isHomePage);
300
+ oPromiseAppClose = (!bFromAfterNavigate ? this.handleExitStateful(sFromId, oFrom, isHomePage) : undefined);
300
301
  } else if (Storage.get(sFromId)) {
301
302
  if (RelatedServices.isBackNavigation() === true && !isHomePage) {
302
303
  oDeferredAppClose = new jQuery.Deferred();
@@ -397,7 +398,7 @@ sap.ui.define([
397
398
  || sToId.indexOf("workPageRuntime-component-container") > 0
398
399
  || sToId.indexOf("runtimeSwitcher-component-container") > 0;
399
400
 
400
- this.handleExitApplication(sFromId, oFrom, sToId, oTo, bIsShellApps);
401
+ this.handleExitApplication(sFromId, oFrom, sToId, oTo, bIsShellApps, !bIsShellApps);
401
402
  if (bIsShellApps === true) {
402
403
  Application.setActiveAppContainer(undefined);
403
404
  }
@@ -433,43 +434,27 @@ sap.ui.define([
433
434
  enableRouterRetrigger: true,
434
435
  stateStored: false
435
436
  });
436
- oIntentToStorageId[sFixedShellHash] = appId;
437
- // if (BlueBoxHandler.isStatefulContainerSupported(oContainer)) {
438
- //in case of stateful container - map BlueBox to storageKey
439
- BlueBoxHandler.setStorageKey(oContainer, appId);
440
- // }
441
-
442
437
  return true;
443
438
  }
444
439
  return false;
445
440
  };
446
441
 
447
- this.restoreApp = function (appId) {
448
- if (this.isAppInCache(appId)) {
449
- oCurrentApplication = Storage.get(appId);
450
-
451
- if (BlueBoxHandler.getStorageKey(oCurrentApplication.container)) {
452
- //in case of stateful container - override BlueBox to storageKey
453
- BlueBoxHandler.setStorageKey(oCurrentApplication.container, appId);
454
- }
455
- // TODO restore meta
456
- // restore elements model
457
- // restore appState
458
- // restore all related application resources
459
- }
460
- };
461
-
462
442
  this.isAppOfTypeCached = function (appId, bIsAppOfTypeCachable, oKeepAliveMode) {
463
443
  var sKeepAlive;
464
444
 
445
+ //generic intent currently can never be keep alive
446
+ if (appId === "application-Shell-startIntent") {
447
+ return false;
448
+ }
449
+
465
450
  //handle the root intent
466
451
  if (!disableHomeAppCache && appId.indexOf(sRootIntent) !== -1) {
467
452
  return true;
468
453
  }
469
- if (!disableHomeAppCache && appId.indexOf("Shell-appfinder") !== -1) { // TODO consider to make intent configurable
454
+
455
+ if (!disableHomeAppCache && appId.indexOf("Shell-appfinder") !== -1) {
470
456
  return true;
471
457
  }
472
- //TODO add by configuration a list of persisted applications
473
458
 
474
459
  //In order to enable application to play with the keep alive, we read the keep attribute of the hash, if it is true application is cachable.
475
460
  sKeepAlive = UriParameters.fromURL(window.location.href).get("sap-keep-alive");
@@ -485,6 +470,11 @@ sap.ui.define([
485
470
  this.isCachedEnabledAsAppParameter = function (oShellHash, oTarget, oKeepAliveMode) {
486
471
  var sKeepAlive;
487
472
 
473
+ //generic intent currently can never be keep alive
474
+ if (oShellHash && oShellHash.semanticObject === "Shell" && oShellHash.action === "startIntent") {
475
+ return false;
476
+ }
477
+
488
478
  //temporary fix for issue found in keep alive fiori apps when stateful container
489
479
  //is used (meaning - fiori keep alive apps in cFLP). At the moment
490
480
  //it will not be supported until the issue will be solved
@@ -614,8 +604,9 @@ sap.ui.define([
614
604
  if (!this.isAppInCache(appId)) {
615
605
  this.storeApp(appId, oContainer, oTarget, sFixedShellHash, oKeepAliveMode);
616
606
  }
617
-
618
- this.restoreApp(appId);
607
+ if (this.isAppInCache(appId)) {
608
+ oCurrentApplication = Storage.get(appId);
609
+ }
619
610
  } else {
620
611
  //create application that is not persisted and not cashed
621
612
  oCurrentApplication = {
@@ -644,8 +635,9 @@ sap.ui.define([
644
635
  this.storeApp(appId, oContainer, oTarget, sFixedShellHash, oKeepAliveMode);
645
636
  BlueBoxHandler.set(oTarget.url, oContainer);
646
637
  }
647
-
648
- this.restoreApp(appId);
638
+ if (this.isAppInCache(appId)) {
639
+ oCurrentApplication = Storage.get(appId);
640
+ }
649
641
  } else if (oTarget.applicationType === "TR" || (oTarget.appCapabilities && oTarget.appCapabilities.appFrameworkId === "GUI")) {
650
642
  oContainer = this.getWebGuiV1StatefulContainer(oTarget.url);
651
643
 
@@ -785,7 +777,28 @@ sap.ui.define([
785
777
  this.init = function (inAppState, oInViewPortContainer, inSRootIntent, inDisableHomeAppCache, oShellUIServiceChange, aActions, oCacheConfigurations) {
786
778
  var that = this,
787
779
  nCacheSize;
788
-
780
+ if (sap.ushell && sap.ushell.Container) {
781
+ sap.ushell.Container.getServiceAsync("AppState").then(function (oAppStateService) {
782
+ var bAppStateConfigPersistent = oAppStateService.getPersistentWhenShared();
783
+ if (bAppStateConfigPersistent === true) {
784
+ fnOldTriggerEmail = URLHelper.triggerEmail.bind(URLHelper);
785
+ URLHelper.triggerEmail = function (sTo, sSubject, sBody, sCc, sBcc) {
786
+ var sFLPUrl = document.URL;
787
+ oAppStateService.setAppStateToPublic(sFLPUrl)
788
+ .done(function (sNewURL, sXStateKey, sIStateKey, sXStateKeyNew, sIStateKeyNew) {
789
+ sSubject = sSubject && sXStateKey && sXStateKeyNew && sSubject.includes(sXStateKey) ? sSubject.replace(sXStateKey, sXStateKeyNew) : sSubject;
790
+ sSubject = sSubject && sIStateKey && sIStateKeyNew && sSubject.includes(sIStateKey) ? sSubject.replace(sIStateKey, sIStateKeyNew) : sSubject;
791
+ sBody = sBody && sXStateKey && sXStateKeyNew && sBody.includes(sXStateKey) ? sBody.replace(sXStateKey, sXStateKeyNew) : sBody;
792
+ sBody = sBody && sIStateKey && sIStateKeyNew && sBody.includes(sIStateKey) ? sBody.replace(sIStateKey, sIStateKeyNew) : sBody;
793
+ fnOldTriggerEmail(sTo, sSubject, sBody, sCc, sBcc);
794
+ })
795
+ .fail(function (sTo, sSubject, sBody, sCc, sBcc) {
796
+ fnOldTriggerEmail(sTo, sSubject, sBody, sCc, sBcc);
797
+ });
798
+ };
799
+ }
800
+ });
801
+ }
789
802
  // calculate Cache size
790
803
  if (Device.system.phone) {
791
804
  nCacheSize = 10;
@@ -1131,18 +1144,11 @@ sap.ui.define([
1131
1144
  Log.info("New application context opened successfully in an existing transaction UI session.");
1132
1145
  };
1133
1146
 
1134
- this.reuseStateFulContainerAndRestore = function (oApplicationContainer, sToId, oHandler, sFixedShellHash, oTarget, bNavigationInSameStatefullContainer) {
1135
- var that = this,
1136
- //Get the real Storage Id according to the hash maps for the restore
1137
- sStorageId = oIntentToStorageId[sFixedShellHash];
1138
-
1139
- if (BlueBoxHandler.getStorageKey(oApplicationContainer)) {
1140
- //in case of stateful container - map BlueBox to storageKey
1141
- BlueBoxHandler.setStorageKey(oApplicationContainer, sStorageId);
1142
- }
1147
+ this.reuseStateFulContainerAndRestore = function (oApplicationContainer, sUrl, sToId, oHandler, sFixedShellHash, oTarget, bNavigationInSameStatefullContainer) {
1148
+ var that = this;
1143
1149
 
1144
1150
  // invoke the life cycle interface "setInitialConfiguration" for the restored application
1145
- return oHandler.restore(oApplicationContainer, sStorageId, oTarget, bNavigationInSameStatefullContainer)
1151
+ return oHandler.restore(oApplicationContainer, sUrl, sToId, oTarget, bNavigationInSameStatefullContainer)
1146
1152
  .then(function () {
1147
1153
  that.showApplicationContainer(oApplicationContainer);
1148
1154
  }, function (vError) {
@@ -1153,19 +1159,12 @@ sap.ui.define([
1153
1159
  this.reuseStateFulContainer = function (oApplicationContainer, url, sToId, oHandler, sFixedShellHash, oTarget, bNavigationInSameStatefullContainer) {
1154
1160
  var that = this;
1155
1161
 
1156
- //Store the storage id associated with the hash
1157
- oIntentToStorageId[sFixedShellHash] = sToId;
1158
-
1159
- if (BlueBoxHandler.getStorageKey(oApplicationContainer)) {
1160
- //in case of stateful container - map BlueBox to storageKey
1161
- BlueBoxHandler.setStorageKey(oApplicationContainer, sToId);
1162
- }
1163
-
1164
1162
  this.initAppMetaParams();
1165
-
1166
- // invoke the life cycle interface "setInitialConfiguration" for the restored application
1167
1163
  return oHandler.create(oApplicationContainer, url, sToId, oTarget, bNavigationInSameStatefullContainer)
1168
- .then(function () {
1164
+ .then(function (oResult) {
1165
+ if (oResult && oResult.deletedKeepAliveId) {
1166
+ Storage.remove(oResult.deletedKeepAliveId);
1167
+ }
1169
1168
  that.showApplicationContainer(oApplicationContainer);
1170
1169
  }, function (vError) {
1171
1170
  Log.error(vError && vError.message || vError);
@@ -1328,15 +1327,12 @@ sap.ui.define([
1328
1327
 
1329
1328
  oInnerControl.setProperty("iframeReusedForApp", true, true);
1330
1329
  if (Storage.get(sToId) && bIsInitial === false) {
1331
- oPromise = this.reuseStateFulContainerAndRestore(oInnerControl, sToId, oHandler, sFixedShellHash, oTarget, bNavigationInSameStatefullContainer);
1330
+ oPromise = this.reuseStateFulContainerAndRestore(oInnerControl, oTarget.url, sToId, oHandler, sFixedShellHash, oTarget, bNavigationInSameStatefullContainer);
1332
1331
  } else {
1333
1332
  oPromise = this.reuseStateFulContainer(oInnerControl, oTarget.url, sToId, oHandler, sFixedShellHash, oTarget, bNavigationInSameStatefullContainer);
1334
-
1335
1333
  //creating a new application check if needs to be keep (for the keep alive), and if so store the application
1336
- if (bIsInCache) {
1337
- if (!this.isAppInCache(sToId)) {
1338
- this.storeApp(sToId, oInnerControl, oTarget, sFixedShellHash, oKeepAliveMode);
1339
- }
1334
+ if (bIsInCache && !this.isAppInCache(sToId)) {
1335
+ this.storeApp(sToId, oInnerControl, oTarget, sFixedShellHash, oKeepAliveMode);
1340
1336
  }
1341
1337
  }
1342
1338
 
@@ -1414,12 +1410,14 @@ sap.ui.define([
1414
1410
  }
1415
1411
 
1416
1412
  bReuseStatefulContainer = oCurrentAppContainer ? BlueBoxHandler.isStatefulContainerSupported(oCurrentAppContainer) : false;
1417
- if (oCurrentAppContainer && oCurrentAppContainer === oTargetAppContainer && bReuseStatefulContainer) {
1413
+ if (oCurrentAppContainer && bReuseStatefulContainer) {
1418
1414
  if (oOldAppStorageEntry) {
1419
1415
  RelatedServices.store(oOldAppStorageEntry.service);
1420
1416
  }
1421
- oPromiseAppClose = this.handleExitApplication(sOldFullAppId, oCurrentAppContainer, undefined, undefined, false);
1422
- bNavigationInSameStatefullContainer = true;
1417
+ oPromiseAppClose = this.handleExitApplication(sOldFullAppId, oCurrentAppContainer, undefined, undefined, false, false);
1418
+ if (oCurrentAppContainer === oTargetAppContainer) {
1419
+ bNavigationInSameStatefullContainer = true;
1420
+ }
1423
1421
  }
1424
1422
 
1425
1423
  oPromiseAppClose.then(function () {
@@ -1477,10 +1475,10 @@ sap.ui.define([
1477
1475
  bFullWidth,
1478
1476
  sFixedShellHash
1479
1477
  );
1480
-
1481
- that.restoreApp(oInnerControl.getId());
1478
+ if (this.isAppInCache(oInnerControl.getId())) {
1479
+ oCurrentApplication = Storage.get(oInnerControl.getId());
1480
+ }
1482
1481
  that.navTo(oInnerControl.getId());
1483
-
1484
1482
  bIsInitial = true;
1485
1483
  }
1486
1484
  } else if (!that.isWebGuiV1StatefulContainer(oTarget.url) && oInnerControl && !bIsInCache) {
@@ -1542,7 +1540,9 @@ sap.ui.define([
1542
1540
  if (bKeptAliveApp === true) {
1543
1541
  Core.getEventBus().publish("launchpad", "appOpening", oTarget);
1544
1542
  }
1545
- that.restoreApp(oInnerControl.getId());
1543
+ if (that.isAppInCache(oInnerControl.getId())) {
1544
+ oCurrentApplication = Storage.get(oInnerControl.getId());
1545
+ }
1546
1546
  that.navTo(oInnerControl.getId());
1547
1547
  if (bKeptAliveApp === true) {
1548
1548
  that.initAppMetaParams();
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  /**
3
3
  * @fileOverview handle all the resources for the different applications.
4
- * @version 1.114.0
4
+ * @version 1.114.2
5
5
  */
6
6
  sap.ui.define([], function () {
7
7
  "use strict";
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  /**
3
3
  * @fileOverview handle all the resources for the different applications.
4
- * @version 1.114.0
4
+ * @version 1.114.2
5
5
  */
6
6
  sap.ui.define([
7
7
  "sap/ushell/components/container/ApplicationContainer",
@@ -421,6 +421,9 @@ sap.ui.define([
421
421
  oActiveApplication = new ApplicationContainer("application" + sAppId, oResolvedNavigationTarget);
422
422
  this._restoreTargetResolution(oResolvedNavigationTarget, oTempTarget);
423
423
 
424
+ if (oActiveApplication.setCurrentAppId) {
425
+ oActiveApplication.setProperty("currentAppId", "application" + sAppId, true);
426
+ }
424
427
  if (oResolvedNavigationTarget.appCapabilities) {
425
428
  oActiveApplication.setProperty("frameworkId", oResolvedNavigationTarget.appCapabilities.appFrameworkId, true);
426
429
  }
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  /**
3
3
  * @fileOverview handle all the resources for the different applications.
4
- * @version 1.114.0
4
+ * @version 1.114.2
5
5
  */
6
6
  sap.ui.define([
7
7
  "sap/ushell/components/applicationIntegration/application/BlueBoxesCache",
@@ -74,17 +74,19 @@ sap.ui.define([
74
74
  oPostParams["sap-flp-params"] = oFLPParams;
75
75
  }
76
76
 
77
+ oInnerControl.setProperty("currentAppUrl", sUrl, true);
78
+ oInnerControl.setProperty("currentAppId", sStorageKey, true);
77
79
  Core.getEventBus().publish("launchpad", "appOpening", oTarget);
78
80
  Application.postMessageToIframeApp(
79
81
  oInnerControl, "sap.ushell.services.appLifeCycle", "create", oPostParams, true)
80
- .then(function () {
82
+ .then(function (oResult) {
81
83
  oBlueBoxContainer[oInnerControl].currentAppTarget = oTarget;
82
84
  sap.ushell.Container.getServiceAsync("AppLifeCycle").then(function (oAppLifeCycleService) {
83
85
  if (bNavigationInSameStatefullContainer === true) {
84
86
  oAppLifeCycleService.prepareCurrentAppObject("URL", undefined, false, oInnerControl);
85
87
  }
86
88
  Core.getEventBus().publish("sap.ushell", "appOpened", oTarget);
87
- oDeferred.resolve();
89
+ oDeferred.resolve(oResult && oResult.body && oResult.body.result);
88
90
  });
89
91
  });
90
92
  }
@@ -126,6 +128,8 @@ sap.ui.define([
126
128
  destroy: function (oInnerControl, sStorageKey) {
127
129
  var oPromise;
128
130
 
131
+ oInnerControl.setProperty("currentAppUrl", "", true);
132
+ oInnerControl.setProperty("currentAppId", "", true);
129
133
  sap.ushell.Container.setAsyncDirtyStateProvider(undefined);
130
134
  oPromise = Application.postMessageToIframeApp(oInnerControl, "sap.ushell.services.appLifeCycle", "destroy", {
131
135
  sCacheId: sStorageKey
@@ -140,6 +144,8 @@ sap.ui.define([
140
144
  store: function (oInnerControl, sStorageKey) {
141
145
  var oPromise;
142
146
 
147
+ oInnerControl.setProperty("currentAppUrl", "", true);
148
+ oInnerControl.setProperty("currentAppId", "", true);
143
149
  sap.ushell.Container.setAsyncDirtyStateProvider(undefined);
144
150
  oPromise = Application.postMessageToIframeApp(oInnerControl, "sap.ushell.services.appLifeCycle", "store", {
145
151
  sCacheId: sStorageKey
@@ -151,8 +157,10 @@ sap.ui.define([
151
157
  });
152
158
  return oPromise;
153
159
  },
154
- restore: function (oInnerControl, sStorageKey, oTarget, bNavigationInSameStatefullContainer) {
160
+ restore: function (oInnerControl, sUrl, sStorageKey, oTarget, bNavigationInSameStatefullContainer) {
155
161
  return new Promise(function (fnResolve) {
162
+ oInnerControl.setProperty("currentAppUrl", sUrl, true);
163
+ oInnerControl.setProperty("currentAppId", sStorageKey, true);
156
164
  Core.getEventBus().publish("launchpad", "appOpening", oTarget);
157
165
  Application.postMessageToIframeApp(oInnerControl, "sap.ushell.services.appLifeCycle", "restore", {
158
166
  sCacheId: sStorageKey,
@@ -298,7 +306,13 @@ sap.ui.define([
298
306
 
299
307
  oBlueBoxContainer[oBlueBox].currentAppTarget = oTarget;
300
308
  oBlueBoxContainer[oBlueBox].appCapabilities = oTarget.appCapabilities;
301
- if (oTarget.appCapabilities && oTarget.appCapabilities.statefulContainer === true) {
309
+
310
+
311
+ var bCheckTemplateCapabilities = true;
312
+ if (oTarget.url && oTarget.url.indexOf("/ui5appruntimescube") > 0) {
313
+ bCheckTemplateCapabilities = false;
314
+ }
315
+ if (bCheckTemplateCapabilities && oTarget.appCapabilities && oTarget.appCapabilities.statefulContainer === true) {
302
316
  this.setCapabilities(oBlueBox, oBasicStatefulContainerCapabilities);
303
317
  }
304
318
  };
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview defines the post message API for all applications running in iframe within the shell
5
- * @version 1.114.0
5
+ * @version 1.114.2
6
6
  * @private
7
7
  */
8
8
  sap.ui.define([
@@ -482,6 +482,21 @@ sap.ui.define([
482
482
  sap.ushell.Container.getFLPPlatform().then(oDeferred.resolve);
483
483
  return oDeferred.promise();
484
484
  }
485
+ },
486
+ attachLogoutEvent: {
487
+ executeServiceCallFn: function (oServiceParams) {
488
+ sap.ushell.Container.attachLogoutEvent(function () {
489
+ var oMessage = {
490
+ type: "request",
491
+ request_id: Date.now().toString(),
492
+ service: "sap.ushell.appRuntime.executeLogoutFunctions",
493
+ body: {}
494
+ };
495
+ return oServiceParams.oContainer.postMessageToCurrentIframe(oMessage, true);
496
+ }, true);
497
+
498
+ return new jQuery.Deferred().resolve().promise();
499
+ }
485
500
  }
486
501
  }
487
502
  },
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  /**
3
3
  * @fileOverview handle all the resources for the different applications.
4
- * @version 1.114.0
4
+ * @version 1.114.2
5
5
  */
6
6
  sap.ui.define([
7
7
  "sap/base/util/extend",
@@ -2,7 +2,7 @@
2
2
 
3
3
  /**
4
4
  * @fileOverview The models assosicated with the applciation.
5
- * @version 1.114.0
5
+ * @version 1.114.2
6
6
  */
7
7
  sap.ui.define([
8
8
  "sap/ushell/EventHub",