@sapui5/sap.ushell 1.127.2 → 1.128.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 (369) hide show
  1. package/package.json +1 -1
  2. package/src/main/js/sap/ushell/.library +3 -3
  3. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/guiResolution.js +4 -4
  4. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/ui5Resolution.js +1 -1
  5. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/urlResolution.js +2 -2
  6. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/urlTemplateResolution.js +9 -5
  7. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/utils.js +1 -1
  8. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/wcfResolution.js +2 -2
  9. package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/wdaResolution.js +2 -2
  10. package/src/main/js/sap/ushell/ApplicationType.js +8 -8
  11. package/src/main/js/sap/ushell/Config.js +1 -1
  12. package/src/main/js/sap/ushell/Container.js +14 -6
  13. package/src/main/js/sap/ushell/Fiori20Adapter.js +1 -1
  14. package/src/main/js/sap/ushell/Fiori20AdapterTest.js +1 -1
  15. package/src/main/js/sap/ushell/NWBCInterface.js +1 -1
  16. package/src/main/js/sap/ushell/TechnicalParameters.js +1 -1
  17. package/src/main/js/sap/ushell/{_URLTemplateProcessor → URLTemplateProcessor}/DefinitionParameterSetBuilder.js +4 -4
  18. package/src/main/js/sap/ushell/{_URLTemplateProcessor → URLTemplateProcessor}/DependencyGraph.js +1 -1
  19. package/src/main/js/sap/ushell/{_URLTemplateProcessor → URLTemplateProcessor}/Functions.js +2 -2
  20. package/src/main/js/sap/ushell/{_URLTemplateProcessor → URLTemplateProcessor}/Resolvers.js +3 -3
  21. package/src/main/js/sap/ushell/{_URLTemplateProcessor → URLTemplateProcessor}/TemplateParameterParser.js +2 -2
  22. package/src/main/js/sap/ushell/{_URLTemplateProcessor → URLTemplateProcessor}/utils.js +1 -1
  23. package/src/main/js/sap/ushell/URLTemplateProcessor.js +6 -6
  24. package/src/main/js/sap/ushell/Ui5NativeServiceFactory.js +1 -1
  25. package/src/main/js/sap/ushell/Ui5ServiceFactory.js +1 -1
  26. package/src/main/js/sap/ushell/adapters/cdm/ClientSideTargetResolutionAdapter.js +1 -1
  27. package/src/main/js/sap/ushell/adapters/cdm/CommonDataModelAdapter.js +1 -1
  28. package/src/main/js/sap/ushell/adapters/cdm/ConfigurationDefaultsAdapter.js +1 -1
  29. package/src/main/js/sap/ushell/adapters/cdm/ContainerAdapter.js +60 -61
  30. package/src/main/js/sap/ushell/adapters/cdm/LaunchPageAdapter.js +1 -1
  31. package/src/main/js/sap/ushell/adapters/cdm/PagesCommonDataModelAdapter.js +1 -1
  32. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationAdapter.js +1 -1
  33. package/src/main/js/sap/ushell/adapters/cdm/PersonalizationV2Adapter.js +1 -1
  34. package/src/main/js/sap/ushell/adapters/cdm/Ui5ComponentLoaderAdapter.js +1 -1
  35. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/modifyHome.js +1 -1
  36. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readCatalogs.js +1 -1
  37. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/readHome.js +1 -1
  38. package/src/main/js/sap/ushell/adapters/cdm/_LaunchPage/uri.transform.js +1 -1
  39. package/src/main/js/sap/ushell/adapters/cdm/util/AppForInbound.js +1 -1
  40. package/src/main/js/sap/ushell/adapters/cdm/util/cdmSiteUtils.js +1 -1
  41. package/src/main/js/sap/ushell/adapters/cdm/v3/AdapterBase.js +1 -1
  42. package/src/main/js/sap/ushell/adapters/cdm/v3/FlpLaunchPageAdapter.js +1 -1
  43. package/src/main/js/sap/ushell/adapters/cdm/v3/LaunchPageAdapter.js +1 -1
  44. package/src/main/js/sap/ushell/adapters/cdm/v3/StaticGroupsAdapter.js +1 -1
  45. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readApplications.js +1 -1
  46. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readCatalogs.js +1 -1
  47. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readHome.js +1 -1
  48. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readPages.js +1 -1
  49. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readUtils.js +1 -1
  50. package/src/main/js/sap/ushell/adapters/cdm/v3/_LaunchPage/readVisualizations.js +1 -1
  51. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionAdapter.js +1 -1
  52. package/src/main/js/sap/ushell/adapters/cep/NavTargetResolutionInternalAdapter.js +2 -2
  53. package/src/main/js/sap/ushell/adapters/cep/SearchCEPAdapter.js +1 -1
  54. package/src/main/js/sap/ushell/adapters/cflp/UserDefaultParameterPersistenceAdapter.js +1 -1
  55. package/src/main/js/sap/ushell/adapters/local/AdapterContainer.js +1 -1
  56. package/src/main/js/sap/ushell/adapters/local/AppStateAdapter.js +1 -1
  57. package/src/main/js/sap/ushell/adapters/local/ClientSideTargetResolutionAdapter.js +1 -1
  58. package/src/main/js/sap/ushell/adapters/local/ContainerAdapter.js +4 -8
  59. package/src/main/js/sap/ushell/adapters/local/FlpLaunchPageAdapter.js +1 -1
  60. package/src/main/js/sap/ushell/adapters/local/LaunchPageAdapter.js +1 -1
  61. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionAdapter.js +1 -1
  62. package/src/main/js/sap/ushell/adapters/local/NavTargetResolutionInternalAdapter.js +2 -2
  63. package/src/main/js/sap/ushell/adapters/local/PageBuildingAdapter.js +1 -1
  64. package/src/main/js/sap/ushell/adapters/local/PagePersistenceAdapter.js +1 -1
  65. package/src/main/js/sap/ushell/adapters/local/PersonalizationAdapter.js +1 -1
  66. package/src/main/js/sap/ushell/adapters/local/PersonalizationV2Adapter.js +1 -1
  67. package/src/main/js/sap/ushell/adapters/local/SearchAdapter.js +1 -1
  68. package/src/main/js/sap/ushell/adapters/local/SearchCEPAdapter.js +1 -1
  69. package/src/main/js/sap/ushell/adapters/local/SupportTicketAdapter.js +1 -1
  70. package/src/main/js/sap/ushell/adapters/local/Ui5ComponentLoaderAdapter.js +1 -1
  71. package/src/main/js/sap/ushell/adapters/local/UserDefaultParameterPersistenceAdapter.js +1 -1
  72. package/src/main/js/sap/ushell/adapters/local/UserInfoAdapter.js +1 -1
  73. package/src/main/js/sap/ushell/api/Inbox.js +222 -0
  74. package/src/main/js/sap/ushell/api/workpage/Runtime.js +1 -1
  75. package/src/main/js/sap/ushell/appRuntime/ui5/AppRuntime.js +32 -27
  76. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/CheckConditions.js +15 -0
  77. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/baseRta/Renderer.js +7 -3
  78. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/rtaAgent/Component.js +1 -1
  79. package/src/main/js/sap/ushell/appRuntime/ui5/plugins/rtaShell/Component.js +19 -12
  80. package/src/main/js/sap/ushell/appRuntime/ui5/renderers/fiori2/RendererExtensions.js +1 -1
  81. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppConfiguration.js +1 -1
  82. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppLifeCycle.js +1 -1
  83. package/src/main/js/sap/ushell/appRuntime/ui5/services/AppState.js +1 -1
  84. package/src/main/js/sap/ushell/appRuntime/ui5/services/Bookmark.js +1 -1
  85. package/src/main/js/sap/ushell/appRuntime/ui5/services/BookmarkV2.js +1 -1
  86. package/src/main/js/sap/ushell/appRuntime/ui5/services/CommonDataModel.js +1 -1
  87. package/src/main/js/sap/ushell/appRuntime/ui5/services/Container.js +1 -1
  88. package/src/main/js/sap/ushell/appRuntime/ui5/services/CrossApplicationNavigation.js +1 -1
  89. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension/Item.js +1 -1
  90. package/src/main/js/sap/ushell/appRuntime/ui5/services/Extension.js +1 -1
  91. package/src/main/js/sap/ushell/appRuntime/ui5/services/FrameBoundExtension.js +1 -1
  92. package/src/main/js/sap/ushell/appRuntime/ui5/services/LaunchPage.js +1 -1
  93. package/src/main/js/sap/ushell/appRuntime/ui5/services/MessageBroker.js +1 -1
  94. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolution.js +1 -1
  95. package/src/main/js/sap/ushell/appRuntime/ui5/services/NavTargetResolutionInternal.js +1 -1
  96. package/src/main/js/sap/ushell/appRuntime/ui5/services/Navigation.js +1 -1
  97. package/src/main/js/sap/ushell/appRuntime/ui5/services/ReferenceResolver.js +1 -1
  98. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigation.js +1 -1
  99. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellNavigationInternal.js +1 -1
  100. package/src/main/js/sap/ushell/appRuntime/ui5/services/ShellUIService.js +1 -1
  101. package/src/main/js/sap/ushell/appRuntime/ui5/services/UserInfo.js +1 -1
  102. package/src/main/js/sap/ushell/appRuntime/ui5/services/adapters/Ui5ComponentLoaderAdapter.js +1 -1
  103. package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/EventProcessor.js +1 -1
  104. package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/FLPScheduler.js +3 -3
  105. package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/logger.js +2 -2
  106. package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/state.js +3 -3
  107. package/src/main/js/sap/ushell/bootstrap/SchedulingAgent.js +5 -5
  108. package/src/main/js/sap/ushell/bootstrap/common/common.configure.ui5datetimeformat.js +1 -1
  109. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandbox.js +433 -0
  110. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxBoot.json +4 -0
  111. package/src/main/js/sap/ushell/bootstrap/sandbox2/sandboxBootTask.js +16 -0
  112. package/src/main/js/sap/ushell/bootstrap/sandbox2.js +35 -430
  113. package/src/main/js/sap/ushell/components/appfinder/manifest.json +1 -1
  114. package/src/main/js/sap/ushell/components/applicationIntegration/AppLifeCycle.js +2 -2
  115. package/src/main/js/sap/ushell/components/applicationIntegration/application/Application.js +1 -1
  116. package/src/main/js/sap/ushell/components/applicationIntegration/application/BlueBoxHandler.js +1 -1
  117. package/src/main/js/sap/ushell/components/applicationIntegration/application/PostMessageAPI.js +2 -2
  118. package/src/main/js/sap/ushell/components/applicationIntegration/configuration/AppMeta.js +1 -1
  119. package/src/main/js/sap/ushell/components/applicationIntegration/relatedServices/RelatedServices.js +1 -1
  120. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.css +2 -2
  121. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/Category.js +4 -4
  122. package/src/main/js/sap/ushell/components/cepsearchresult/app/util/controls/categories/Application.js +32 -3
  123. package/src/main/js/sap/ushell/components/container/ApplicationContainer.js +1 -1
  124. package/src/main/js/sap/ushell/components/contentFinder/CatalogService.js +193 -0
  125. package/src/main/js/sap/ushell/components/contentFinder/Component.js +71 -18
  126. package/src/main/js/sap/ushell/components/contentFinder/controller/AppSearch.controller.js +62 -18
  127. package/src/main/js/sap/ushell/components/contentFinder/controller/ContentFinderDialog.controller.js +1 -1
  128. package/src/main/js/sap/ushell/components/contentFinder/controller/WidgetGallery.controller.js +1 -1
  129. package/src/main/js/sap/ushell/components/contentFinder/manifest.json +1 -1
  130. package/src/main/js/sap/ushell/components/contentFinder/model/formatter.js +9 -1
  131. package/src/main/js/sap/ushell/components/contentFinder/resources/resources.properties +3 -1
  132. package/src/main/js/sap/ushell/components/contentFinder/view/AppSearch.view.xml +9 -9
  133. package/src/main/js/sap/ushell/components/contentFinder/view/{AppSearchCategoryTree.view.xml → AppSearchCategoryTree.fragment.xml} +12 -12
  134. package/src/main/js/sap/ushell/components/contentFinderStandalone/Component.js +1 -1
  135. package/src/main/js/sap/ushell/components/contentFinderStandalone/controller/ContentFinderStandalone.controller.js +66 -4
  136. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifest.json +8 -1
  137. package/src/main/js/sap/ushell/components/contentFinderStandalone/manifestAppSearch.json +1 -1
  138. package/src/main/js/sap/ushell/components/contentFinderStandalone/resources/resources.properties +9 -0
  139. package/src/main/js/sap/ushell/components/factsheet/Component.js +1 -1
  140. package/src/main/js/sap/ushell/components/factsheet/controls/PictureTile.js +4 -1
  141. package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewer.js +4 -1
  142. package/src/main/js/sap/ushell/components/factsheet/controls/PictureViewerItem.js +4 -1
  143. package/src/main/js/sap/ushell/components/homepage/ActionMode.js +1 -1
  144. package/src/main/js/sap/ushell/components/homepage/DashboardContent.view.js +1 -1
  145. package/src/main/js/sap/ushell/components/homepage/DashboardGroupsBox.js +1 -1
  146. package/src/main/js/sap/ushell/components/homepage/DashboardUIActions.js +1 -1
  147. package/src/main/js/sap/ushell/components/homepage/manifest.json +1 -1
  148. package/src/main/js/sap/ushell/components/pages/ActionMode.js +1 -1
  149. package/src/main/js/sap/ushell/components/pages/Component.js +1 -1
  150. package/src/main/js/sap/ushell/components/pages/MyHomeImport.js +1 -1
  151. package/src/main/js/sap/ushell/components/pages/controller/PageRuntime.controller.js +2 -3
  152. package/src/main/js/sap/ushell/components/pages/manifest.json +1 -1
  153. package/src/main/js/sap/ushell/components/runtimeSwitcher/controller/RuntimeSwitcher.controller.js +2 -3
  154. package/src/main/js/sap/ushell/components/runtimeSwitcher/manifest.json +1 -1
  155. package/src/main/js/sap/ushell/components/shell/MenuBar/manifest.json +1 -1
  156. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/controller/NavigationBarMenu.controller.js +1 -1
  157. package/src/main/js/sap/ushell/components/shell/NavigationBarMenu/manifest.json +1 -1
  158. package/src/main/js/sap/ushell/components/shell/Notifications/Component.js +1 -1
  159. package/src/main/js/sap/ushell/components/shell/ProductSwitch/Component.js +1 -1
  160. package/src/main/js/sap/ushell/components/shell/Search/manifest.json +1 -1
  161. package/src/main/js/sap/ushell/components/shell/SearchCEP/Component.js +1 -1
  162. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/FrequentActivityProvider.js +1 -1
  163. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/RecentSearchProvider.js +1 -1
  164. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchProvider.js +1 -1
  165. package/src/main/js/sap/ushell/components/shell/SearchCEP/SearchProviders/SearchServiceProvider.js +1 -1
  166. package/src/main/js/sap/ushell/components/shell/Settings/Component.js +1 -1
  167. package/src/main/js/sap/ushell/components/shell/Settings/appearance/Appearance.controller.js +1 -1
  168. package/src/main/js/sap/ushell/components/shell/Settings/appearance/AppearanceEntry.js +1 -1
  169. package/src/main/js/sap/ushell/components/shell/Settings/userDefaults/controller/UserDefaultsSetting.controller.js +26 -38
  170. package/src/main/js/sap/ushell/components/shell/UserActionsMenu/Component.js +1 -1
  171. package/src/main/js/sap/ushell/components/shell/UserImage/Component.js +1 -1
  172. package/src/main/js/sap/ushell/components/tiles/applauncher/Component.js +5 -6
  173. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTile.view.js +7 -7
  174. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/Component.js +1 -1
  175. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTile.view.js +4 -7
  176. package/src/main/js/sap/ushell/components/tiles/utils.js +1 -1
  177. package/src/main/js/sap/ushell/components/visualizationOrganizer/Component.js +1 -1
  178. package/src/main/js/sap/ushell/components/workPageBuilder/Component.js +1 -1
  179. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.accessibility.js +1 -1
  180. package/src/main/js/sap/ushell/components/workPageBuilder/controller/WorkPageBuilder.controller.js +1 -1
  181. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPage.js +1 -1
  182. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageButton.js +1 -1
  183. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageCell.js +1 -1
  184. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumn.js +1 -1
  185. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageColumnResizer.js +1 -1
  186. package/src/main/js/sap/ushell/components/workPageBuilder/controls/WorkPageRow.js +1 -1
  187. package/src/main/js/sap/ushell/components/workPageBuilder/manifest.json +1 -1
  188. package/src/main/js/sap/ushell/components/workPageRuntime/Component.js +1 -1
  189. package/src/main/js/sap/ushell/components/workPageRuntime/controller/WorkPageRuntime.controller.js +3 -4
  190. package/src/main/js/sap/ushell/components/workPageRuntime/manifest.json +1 -1
  191. package/src/main/js/sap/ushell/designtime/ApplicationContainer.designtime.js +1 -1
  192. package/src/main/js/sap/ushell/iconfonts.js +776 -363
  193. package/src/main/js/sap/ushell/library.js +1 -1
  194. package/src/main/js/sap/ushell/navigationMode.js +1 -1
  195. package/src/main/js/sap/ushell/performance/ShellAnalytics.js +1 -1
  196. package/src/main/js/sap/ushell/performance/StatisticalRecord.js +1 -1
  197. package/src/main/js/sap/ushell/plugins/BaseRTAPlugin.js +28 -39
  198. package/src/main/js/sap/ushell/plugins/appwarmup/Component.js +1 -1
  199. package/src/main/js/sap/ushell/plugins/rta/Component.js +45 -60
  200. package/src/main/js/sap/ushell/renderer/History.js +1 -11
  201. package/src/main/js/sap/ushell/renderer/LogonFrameProvider.js +0 -8
  202. package/src/main/js/sap/ushell/renderer/Renderer.js +9 -6
  203. package/src/main/js/sap/ushell/renderer/Shell.controller.js +6 -2
  204. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyApps.controller.js +4 -2
  205. package/src/main/js/sap/ushell/renderer/allMyApps/AllMyAppsManager.js +0 -8
  206. package/src/main/js/sap/ushell/renderer/search/searchComponent/manifest.json +1 -1
  207. package/src/main/js/sap/ushell/renderers/fiori2/Renderer.js +1 -1
  208. package/src/main/js/sap/ushell/renderers/fiori2/RendererExtensions.js +4 -0
  209. package/src/main/js/sap/ushell/services/AppLifeCycle.js +1 -1
  210. package/src/main/js/sap/ushell/services/AppState.js +1 -1
  211. package/src/main/js/sap/ushell/services/AppType.js +5 -0
  212. package/src/main/js/sap/ushell/services/Bookmark.js +1 -1
  213. package/src/main/js/sap/ushell/services/BookmarkV2.js +1 -1
  214. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/Formatter.js +1 -1
  215. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/InboundIndex.js +1 -1
  216. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/InboundProvider.js +3 -3
  217. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/PrelaunchOperations.js +1 -1
  218. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/Search.js +4 -4
  219. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/StagedLogger.js +1 -1
  220. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/SystemContext.js +1 -1
  221. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/Utils.js +1 -1
  222. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/VirtualInbounds.js +1 -1
  223. package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/XAppStateProcessing.js +2 -2
  224. package/src/main/js/sap/ushell/services/ClientSideTargetResolution.js +12 -12
  225. package/src/main/js/sap/ushell/services/{_CommonDataModel → CommonDataModel}/SiteConverter.js +1 -1
  226. package/src/main/js/sap/ushell/services/{_CommonDataModel → CommonDataModel}/vizTypeDefaults/VizTypeDefaults.js +2 -2
  227. package/src/main/js/sap/ushell/services/CommonDataModel.js +4 -4
  228. package/src/main/js/sap/ushell/services/Configuration.js +1 -1
  229. package/src/main/js/sap/ushell/services/ConfigurationDefaults.js +1 -1
  230. package/src/main/js/sap/ushell/services/Container.js +4 -0
  231. package/src/main/js/sap/ushell/services/ContentExtensionAdapterFactory.js +2 -1
  232. package/src/main/js/sap/ushell/services/CrossApplicationNavigation.js +4 -4
  233. package/src/main/js/sap/ushell/services/DarkModeSupport.js +1 -3
  234. package/src/main/js/sap/ushell/services/EndUserFeedback.js +1 -0
  235. package/src/main/js/sap/ushell/services/Extension/Item.js +22 -3
  236. package/src/main/js/sap/ushell/services/Extension.js +9 -4
  237. package/src/main/js/sap/ushell/services/FlpLaunchPage.js +1 -1
  238. package/src/main/js/sap/ushell/services/FrameBoundExtension/FloatingContainer.js +1 -1
  239. package/src/main/js/sap/ushell/services/FrameBoundExtension/Footer.js +1 -1
  240. package/src/main/js/sap/ushell/services/FrameBoundExtension/Item.js +23 -4
  241. package/src/main/js/sap/ushell/services/FrameBoundExtension/SidePane.js +5 -2
  242. package/src/main/js/sap/ushell/services/FrameBoundExtension/ToolArea.js +5 -2
  243. package/src/main/js/sap/ushell/services/FrameBoundExtension.js +11 -5
  244. package/src/main/js/sap/ushell/services/LaunchPage.js +1 -1
  245. package/src/main/js/sap/ushell/services/Menu.js +1 -1
  246. package/src/main/js/sap/ushell/services/Message.js +1 -1
  247. package/src/main/js/sap/ushell/services/{_MessageBroker → MessageBroker}/MessageBrokerEngine.js +1 -1
  248. package/src/main/js/sap/ushell/services/MessageBroker.js +2 -2
  249. package/src/main/js/sap/ushell/services/MessageInternal.js +2 -6
  250. package/src/main/js/sap/ushell/services/Navigation/compatibility.js +1 -1
  251. package/src/main/js/sap/ushell/services/Navigation/utils.js +1 -1
  252. package/src/main/js/sap/ushell/services/Navigation.js +4 -143
  253. package/src/main/js/sap/ushell/services/NavigationDataProvider.js +1 -1
  254. package/src/main/js/sap/ushell/services/NotificationsV2.js +3 -1
  255. package/src/main/js/sap/ushell/services/PageBuilding.js +1 -1
  256. package/src/main/js/sap/ushell/services/PagePersistence.js +1 -1
  257. package/src/main/js/sap/ushell/services/PageReferencing.js +1 -1
  258. package/src/main/js/sap/ushell/services/Pages.js +1 -1
  259. package/src/main/js/sap/ushell/services/Personalization.js +1 -1
  260. package/src/main/js/sap/ushell/services/PersonalizationV2.js +1 -1
  261. package/src/main/js/sap/ushell/services/{_PluginManager → PluginManager}/Extensions.js +5 -5
  262. package/src/main/js/sap/ushell/services/{_PluginManager → PluginManager}/HeaderExtensions.js +1 -1
  263. package/src/main/js/sap/ushell/services/{_PluginManager → PluginManager}/MenuExtensions.js +1 -1
  264. package/src/main/js/sap/ushell/services/PluginManager.js +2 -2
  265. package/src/main/js/sap/ushell/services/ReferenceResolver.js +2 -3
  266. package/src/main/js/sap/ushell/services/Search.js +1 -1
  267. package/src/main/js/sap/ushell/services/SearchCEP.js +1 -1
  268. package/src/main/js/sap/ushell/services/SearchableContent.js +1 -1
  269. package/src/main/js/sap/ushell/services/ShellNavigation.js +1 -1
  270. package/src/main/js/sap/ushell/services/ShellNavigationHashChanger.js +7 -101
  271. package/src/main/js/sap/ushell/services/SmartNavigation.js +3 -1
  272. package/src/main/js/sap/ushell/services/SpaceContent.js +2 -6
  273. package/src/main/js/sap/ushell/services/UITracer.js +1 -1
  274. package/src/main/js/sap/ushell/services/URLShortening.js +1 -1
  275. package/src/main/js/sap/ushell/services/URLTemplate.js +1 -1
  276. package/src/main/js/sap/ushell/services/{_Ui5ComponentLoader → Ui5ComponentLoader}/utils.js +1 -1
  277. package/src/main/js/sap/ushell/services/Ui5ComponentLoader.js +2 -2
  278. package/src/main/js/sap/ushell/services/UsageAnalytics.js +1 -0
  279. package/src/main/js/sap/ushell/services/UserDefaultParameterPersistence.js +55 -99
  280. package/src/main/js/sap/ushell/services/UserDefaultParameters.js +82 -119
  281. package/src/main/js/sap/ushell/services/UserInfo.js +1 -1
  282. package/src/main/js/sap/ushell/services/UserRecents.js +1 -1
  283. package/src/main/js/sap/ushell/services/VisualizationDataProvider.js +1 -1
  284. package/src/main/js/sap/ushell/services/VisualizationInstantiation.js +1 -1
  285. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/ContentExtensionAdapterConfig.js +1 -1
  286. package/src/main/js/sap/ushell/services/_ContentExtensionAdapterFactory/FeaturedGroupConfig.js +1 -1
  287. package/src/main/js/sap/ushell/services/_CrossApplicationNavigation/utils.js +1 -1
  288. package/src/main/js/sap/ushell/services/_PageReferencing/PageReferencer.js +1 -1
  289. package/src/main/js/sap/ushell/services/_Personalization/ContextContainer.js +1 -0
  290. package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainer.js +1 -0
  291. package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainerVariant.js +1 -0
  292. package/src/main/js/sap/ushell/services/_Personalization/PersonalizationContainerVariantSet.js +1 -0
  293. package/src/main/js/sap/ushell/services/_Personalization/Personalizer.js +1 -0
  294. package/src/main/js/sap/ushell/services/_Personalization/TransientPersonalizer.js +1 -0
  295. package/src/main/js/sap/ushell/services/_Personalization/Variant.js +1 -0
  296. package/src/main/js/sap/ushell/services/_Personalization/VariantSet.js +1 -0
  297. package/src/main/js/sap/ushell/services/personalization/VariantSetAdapter.js +5 -0
  298. package/src/main/js/sap/ushell/state/ControlManager.js +38 -3
  299. package/src/main/js/sap/ushell/state/StateManager.js +43 -1
  300. package/src/main/js/sap/ushell/state/StateRules.js +0 -20
  301. package/src/main/js/sap/ushell/support/plugins/flpConfig/FlpConfigurationPlugin.js +1 -1
  302. package/src/main/js/sap/ushell/themes/base/IconFonts.less +23 -15
  303. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.json +333 -331
  304. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff +0 -0
  305. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.woff2 +0 -0
  306. package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.ttf +0 -0
  307. package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.woff +0 -0
  308. package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.woff2 +0 -0
  309. package/src/main/js/sap/ushell/themes/base/fonts/sap-fiori-inapp-icons.woff +0 -0
  310. package/src/main/js/sap/ushell/themes/base/fonts/sap-fiori-inapp-icons.woff2 +0 -0
  311. package/src/main/js/sap/ushell/themes/sap_belize/library.source.less +0 -13
  312. package/src/main/js/sap/ushell/themes/sap_belize_base/IconFonts.less +23 -15
  313. package/src/main/js/sap/ushell/themes/sap_belize_hcb/library.source.less +0 -13
  314. package/src/main/js/sap/ushell/themes/sap_belize_hcw/library.source.less +0 -13
  315. package/src/main/js/sap/ushell/themes/sap_bluecrystal/library.source.less +0 -14
  316. package/src/main/js/sap/ushell/themes/sap_bluecrystal_base/IconFonts.less +23 -15
  317. package/src/main/js/sap/ushell/themes/sap_fiori_3/library.source.less +0 -12
  318. package/src/main/js/sap/ushell/themes/sap_fiori_3_dark/library.source.less +0 -12
  319. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcb/library.source.less +1 -13
  320. package/src/main/js/sap/ushell/themes/sap_fiori_3_hcw/library.source.less +1 -13
  321. package/src/main/js/sap/ushell/themes/sap_hcb/base_IconFonts.less +23 -15
  322. package/src/main/js/sap/ushell/themes/sap_hcb/library.source.less +0 -12
  323. package/src/main/js/sap/ushell/themes/sap_horizon/library.source.less +0 -12
  324. package/src/main/js/sap/ushell/themes/sap_horizon_dark/library.source.less +0 -12
  325. package/src/main/js/sap/ushell/themes/sap_horizon_hcb/library.source.less +1 -13
  326. package/src/main/js/sap/ushell/themes/sap_horizon_hcw/library.source.less +1 -13
  327. package/src/main/js/sap/ushell/ui/appfinder/AppBox.js +4 -1
  328. package/src/main/js/sap/ushell/ui/cards/RecentActivitiesExtension.js +1 -1
  329. package/src/main/js/sap/ushell/ui/launchpad/ExtendedChangeDetection.js +1 -1
  330. package/src/main/js/sap/ushell/ui/launchpad/LinkTileWrapper.js +2 -1
  331. package/src/main/js/sap/ushell/ui/launchpad/Section.js +1 -1
  332. package/src/main/js/sap/ushell/ui/launchpad/TileState.js +2 -1
  333. package/src/main/js/sap/ushell/ui/launchpad/ViewPortState.js +4 -0
  334. package/src/main/js/sap/ushell/ui/launchpad/section/CompactArea.js +1 -1
  335. package/src/main/js/sap/ushell/ui/shell/ShellFloatingActions.js +7 -1
  336. package/src/main/js/sap/ushell/ui/shell/ToolAreaItem.js +1 -1
  337. package/src/main/js/sap/ushell/ui/tile/StaticTile.js +1 -1
  338. package/src/main/js/sap/ushell/ui/utils.js +1 -1
  339. package/src/main/js/sap/ushell/ui5service/ShellUIService.js +1 -1
  340. package/src/main/js/sap/ushell/ui5service/UserStatus.js +2 -1
  341. package/src/main/js/sap/ushell/utils/UrlParsing.js +122 -2
  342. package/src/main/js/sap/ushell/utils/UrlShortening.js +1 -1
  343. package/src/main/js/sap/ushell/utils/WindowUtils.js +3 -3
  344. package/src/main/js/sap/ushell/utils/workpage/WorkPageHost.js +1 -1
  345. package/src/main/js/sap/ushell/utils/workpage/WorkPageService.js +47 -8
  346. package/src/main/js/sap/ushell/utils/workpage/WorkPageVizInstantiation.js +2 -2
  347. package/src/main/js/sap/ushell/utils.js +4 -2
  348. package/src/test/js/sap/ushell/bootstrap/sandbox.js +1 -1
  349. package/ui5.yaml +13 -6
  350. package/src/main/js/sap/ushell/components/tiles/applauncher/StaticTileTmp.view.js +0 -58
  351. package/src/main/js/sap/ushell/components/tiles/applauncherdynamic/DynamicTileTmp.view.js +0 -104
  352. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.eot +0 -0
  353. package/src/main/js/sap/ushell/themes/base/fonts/BusinessSuiteInAppSymbols.ttf +0 -0
  354. package/src/main/js/sap/ushell/themes/base/fonts/SAP-icons.eot +0 -0
  355. package/src/main/js/sap/ushell/themes/base/fonts/SAP-icons.ttf +0 -0
  356. package/src/main/js/sap/ushell/themes/base/fonts/SAP-icons.woff +0 -0
  357. package/src/main/js/sap/ushell/themes/base/fonts/SAP-icons.woff2 +0 -0
  358. package/src/main/js/sap/ushell/themes/base/fonts/SmileIconFont.ttf +0 -0
  359. package/src/main/js/sap/ushell/themes/base/fonts/horizon/BusinessSuiteInAppSymbols.eot +0 -0
  360. package/src/main/js/sap/ushell/themes/base/fonts/sap-fiori-inapp-icons.eot +0 -0
  361. package/src/main/js/sap/ushell/themes/base/fonts/sap-fiori-inapp-icons.ttf +0 -0
  362. /package/src/main/js/sap/ushell/{_ApplicationType → ApplicationType}/systemAlias.js +0 -0
  363. /package/src/main/js/sap/ushell/{_Config → Config}/utils.js +0 -0
  364. /package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/FLPLoader.js +0 -0
  365. /package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/LoadingConfiguration.json +0 -0
  366. /package/src/main/js/sap/ushell/bootstrap/{_SchedulingAgent → SchedulingAgent}/StepConfiguration.json +0 -0
  367. /package/src/main/js/sap/ushell/services/{_ClientSideTargetResolution → ClientSideTargetResolution}/ParameterMapping.js +0 -0
  368. /package/src/main/js/sap/ushell/services/{_CommonDataModel → CommonDataModel}/PersonalizationProcessor.js +0 -0
  369. /package/src/main/js/sap/ushell/services/{_CommonDataModel → CommonDataModel}/vizTypeDefaults/cardManifest.json +0 -0
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The app runtime wrapper for {@link sap.ushell.services.Navigation}.
5
5
  *
6
- * @version 1.127.2
6
+ * @version 1.128.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ushell/services/Navigation",
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The app runtime wrapper for {@link sap.ushell.services.ReferenceResolver}.
5
5
  *
6
- * @version 1.127.2
6
+ * @version 1.128.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ushell/appRuntime/ui5/AppRuntimeService"
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The app runtime wrapper for {@link sap.ushell.services.ShellNavigation}.
5
5
  *
6
- * @version 1.127.2
6
+ * @version 1.128.0
7
7
  * @deprecated since 1.120. Use {@link sap.ushell.services.Navigation} for Navigation instead.
8
8
  */
9
9
  sap.ui.define([
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The app runtime wrapper for {@link sap.ushell.services.ShellNavigationInternal}.
5
5
  *
6
- * @version 1.127.2
6
+ * @version 1.128.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ushell/services/ShellNavigationInternal",
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The app runtime wrapper for {@link sap.ushell.ui5service.ShellUIService}.
5
5
  *
6
- * @version 1.127.2
6
+ * @version 1.128.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ui/core/service/ServiceFactoryRegistry",
@@ -3,7 +3,7 @@
3
3
  /**
4
4
  * @fileOverview The app runtime wrapper for {@link sap.ushell.services.UserInfo}.
5
5
  *
6
- * @version 1.127.2
6
+ * @version 1.128.0
7
7
  */
8
8
  sap.ui.define([
9
9
  "sap/ushell/services/UserInfo",
@@ -2,7 +2,7 @@
2
2
  /**
3
3
  * @fileOverview The Unified Shell's Ui5ComponentLoaderAdapter for the application runtime platform
4
4
  *
5
- * @version 1.127.2
5
+ * @version 1.128.0
6
6
  */
7
7
  sap.ui.define([
8
8
  ], function () {
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
 
3
3
  sap.ui.define([
4
- "sap/ushell/bootstrap/_SchedulingAgent/state",
4
+ "sap/ushell/bootstrap/SchedulingAgent/state",
5
5
  "sap/ushell/EventHub"
6
6
  ], function (InternalState, EventHub) {
7
7
  "use strict";
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  sap.ui.define([
3
3
  "sap/ui/performance/trace/FESR",
4
- "sap/ushell/bootstrap/_SchedulingAgent/state",
4
+ "sap/ushell/bootstrap/SchedulingAgent/state",
5
5
  "sap/base/util/LoaderExtensions",
6
6
  "sap/base/Log",
7
7
  "sap/ushell/Config",
@@ -27,8 +27,8 @@ sap.ui.define([
27
27
  Skipped: "skipped"
28
28
  };
29
29
 
30
- var LOADING_CONFIG_PATH = "sap/ushell/bootstrap/_SchedulingAgent/LoadingConfiguration.json";
31
- var STEP_CONFIG_PATH = "sap/ushell/bootstrap/_SchedulingAgent/StepConfiguration.json";
30
+ var LOADING_CONFIG_PATH = "sap/ushell/bootstrap/SchedulingAgent/LoadingConfiguration.json";
31
+ var STEP_CONFIG_PATH = "sap/ushell/bootstrap/SchedulingAgent/StepConfiguration.json";
32
32
 
33
33
  var FLPScheduler = {
34
34
 
@@ -27,7 +27,7 @@
27
27
  * Usage:
28
28
  * <pre>
29
29
  * sap.ui.define([
30
- * "sap/ushell/bootstrap/_SchedulingAgent/logger",
30
+ * "sap/ushell/bootstrap/SchedulingAgent/logger",
31
31
  * "sap/base/util/now"
32
32
  * ], function (
33
33
  * logger,
@@ -45,7 +45,7 @@
45
45
  * }, false);
46
46
  * </pre>
47
47
  *
48
- * @version 1.127.2
48
+ * @version 1.128.0
49
49
  */
50
50
 
51
51
  sap.ui.define([
@@ -42,7 +42,7 @@
42
42
  *
43
43
  * <pre>
44
44
  * sap.ui.define([
45
- * "sap/ushell/bootstrap/_SchedulingAgent/state"
45
+ * "sap/ushell/bootstrap/SchedulingAgent/state"
46
46
  * ], function (
47
47
  * state
48
48
  * ) {
@@ -71,10 +71,10 @@
71
71
  * }, false);
72
72
  * </pre>
73
73
  *
74
- * @version 1.127.2
74
+ * @version 1.128.0
75
75
  */
76
76
  sap.ui.define([
77
- "sap/ushell/bootstrap/_SchedulingAgent/logger",
77
+ "sap/ushell/bootstrap/SchedulingAgent/logger",
78
78
  "sap/base/util/now",
79
79
  "sap/base/util/deepClone"
80
80
  ], function (logger, fnNow, fnClone) {
@@ -1,10 +1,10 @@
1
1
  // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
2
  sap.ui.define([
3
- "sap/ushell/bootstrap/_SchedulingAgent/FLPScheduler",
4
- "sap/ushell/bootstrap/_SchedulingAgent/EventProcessor",
5
- "sap/ushell/bootstrap/_SchedulingAgent/FLPLoader",
6
- "sap/ushell/bootstrap/_SchedulingAgent/logger",
7
- "sap/ushell/bootstrap/_SchedulingAgent/state",
3
+ "sap/ushell/bootstrap/SchedulingAgent/FLPScheduler",
4
+ "sap/ushell/bootstrap/SchedulingAgent/EventProcessor",
5
+ "sap/ushell/bootstrap/SchedulingAgent/FLPLoader",
6
+ "sap/ushell/bootstrap/SchedulingAgent/logger",
7
+ "sap/ushell/bootstrap/SchedulingAgent/state",
8
8
  "sap/ushell/EventHub"
9
9
  ], function (
10
10
  FLPScheduler,
@@ -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.127.2
7
+ * @version 1.128.0
8
8
  */
9
9
  sap.ui.define([
10
10
  "sap/base/i18n/Formatting",
@@ -0,0 +1,433 @@
1
+ // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
+
3
+ const OBJECT_PROTOTYPE_KEYS = Object.getOwnPropertyNames(Object.prototype);
4
+
5
+ sap.ui.define([
6
+ "sap/base/Log",
7
+ "sap/base/util/ObjectPath",
8
+ "sap/ushell/bootstrap/common/common.util",
9
+ "sap/ushell/Container"
10
+ ], (
11
+ Log,
12
+ ObjectPath,
13
+ commonUtils,
14
+ Container
15
+ ) => {
16
+ "use strict";
17
+
18
+ const Sandbox = {
19
+ _loadJSON: async function (sUrl) {
20
+ function logError () {
21
+ Log.error("Failed to load Fiori Launchpad Sandbox configuration", sUrl);
22
+ }
23
+ try {
24
+ const response = await fetch(sUrl, {
25
+ headers: {
26
+ "Content-Type": "application/json"
27
+ }
28
+ });
29
+ if (response.ok) {
30
+ const oData = await response.json();
31
+ return oData;
32
+ }
33
+ logError();
34
+ } catch (e) {
35
+ logError();
36
+ }
37
+ },
38
+
39
+ mergeConfig: function (oBaseConfig, oCustomConfig, bCloneCustom) {
40
+ if (typeof oCustomConfig !== "object") {
41
+ return;
42
+ }
43
+
44
+ const oConfigToMerge = bCloneCustom ? JSON.parse(JSON.stringify(oCustomConfig)) : oCustomConfig;
45
+
46
+ Object.entries(oConfigToMerge).forEach(([sKey, oValue]) => {
47
+ // Prevent overriding of object prototype properties to avoid prototype pollution attacks
48
+ if (OBJECT_PROTOTYPE_KEYS.includes(sKey)) {
49
+ return;
50
+ }
51
+
52
+ if (Object.prototype.toString.apply(oBaseConfig[sKey]) === "[object Object]" &&
53
+ Object.prototype.toString.apply(oValue) === "[object Object]") {
54
+ this.mergeConfig(oBaseConfig[sKey], oValue, false);
55
+ return;
56
+ }
57
+ oBaseConfig[sKey] = oValue;
58
+ });
59
+ },
60
+
61
+ /**
62
+ * Add custom applications and tiles from the provided custom configuration to the template site:
63
+ * 1. Applications and tiles from oConfig.applications (documented way, My Home section)
64
+ * 2. Applications from oConfig.services.NavTargetResolutionInternal.adapter.config.applications
65
+ * 3. Applications from oConfig.services.ClientSideTargetResolution.adapter.config.inbounds
66
+ * 4. Groups and tiles from oConfig.services.LaunchPage.adapter.config.groups (a new section is created for each group)
67
+ *
68
+ * @param {object} oConfig The current ushell configuration
69
+ */
70
+ _addAppsToSite: function (oConfig) {
71
+ const oApplicationConfig = {};
72
+
73
+ function getComponentName (oApplication) {
74
+ return oApplication.additionalInformation.replace("SAPUI5.Component=", "");
75
+ }
76
+
77
+ function createApp (oApplication, sKey) {
78
+ const sComponentName = getComponentName(oApplication);
79
+ const sApplicationTitle = oApplication.title || sComponentName.split(".").pop();
80
+ const aNavTarget = sKey.split("-"); // Convention: application key must be in form of "SemanticObject-action"
81
+
82
+ /* eslint-disable quote-props */
83
+ const oApp = {
84
+ "sap.app": {
85
+ "id": sComponentName,
86
+ "title": sApplicationTitle,
87
+ "subTitle": oApplication.description || "",
88
+ "ach": "CA-FLP-FE-COR",
89
+ "applicationVersion": {
90
+ "version": "1.0.0"
91
+ },
92
+ "crossNavigation": {
93
+ "inbounds": {
94
+ "target": {
95
+ "semanticObject": aNavTarget[0],
96
+ "action": aNavTarget[1],
97
+ "signature": {
98
+ "parameters": {},
99
+ "additionalParameters": "allowed"
100
+ }
101
+ }
102
+ }
103
+ },
104
+ "tags": {
105
+ "keywords": sApplicationTitle.split(" ")
106
+ }
107
+ },
108
+ "sap.flp": {
109
+ "type": "application"
110
+ },
111
+ "sap.ui": {
112
+ "technology": "UI5",
113
+ "icons": {
114
+ "icon": "sap-icon://Fiori2/F0018"
115
+ },
116
+ "deviceTypes": {
117
+ "desktop": true,
118
+ "tablet": true,
119
+ "phone": true
120
+ }
121
+ },
122
+ "sap.ui5": {
123
+ "componentName": sComponentName
124
+ },
125
+ "sap.platform.runtime": {
126
+ "componentProperties": {
127
+ "url": oApplication.url
128
+ }
129
+ }
130
+ };
131
+ /* eslint-enable quote-props */
132
+ return oApp;
133
+ }
134
+
135
+ function createAppFromInbound (oInbound) {
136
+ const oApplication = oInbound.resolutionResult || {};
137
+ const sComponentName = oApplication.ui5ComponentName || getComponentName(oApplication);
138
+ const sApplicationTitle = oInbound.title || sComponentName.split(".").pop();
139
+
140
+ /* eslint-disable quote-props */
141
+ const oApp = {
142
+ "sap.app": {
143
+ "id": sComponentName,
144
+ "title": sApplicationTitle,
145
+ "subTitle": oApplication.description || "",
146
+ "ach": "CA-FLP-FE-COR",
147
+ "applicationVersion": {
148
+ "version": "1.0.0"
149
+ },
150
+ "crossNavigation": {
151
+ "inbounds": {
152
+ "target": {
153
+ "semanticObject": oInbound.semanticObject,
154
+ "action": oInbound.action,
155
+ "signature": oInbound.signature
156
+ }
157
+ }
158
+ },
159
+ "tags": {
160
+ "keywords": sApplicationTitle.split(" ")
161
+ }
162
+ },
163
+ "sap.flp": {
164
+ "type": "application"
165
+ },
166
+ "sap.ui": {
167
+ "technology": "UI5",
168
+ "icons": {
169
+ "icon": "sap-icon://Fiori2/F0018"
170
+ },
171
+ "deviceTypes": oInbound.deviceTypes
172
+ },
173
+ "sap.ui5": {
174
+ "componentName": sComponentName
175
+ },
176
+ "sap.platform.runtime": {
177
+ "componentProperties": {
178
+ "url": oApplication.url
179
+ }
180
+ }
181
+ };
182
+ /* eslint-enable quote-props */
183
+ return oApp;
184
+ }
185
+
186
+ function createViz (oApplication, sKey) {
187
+ const sComponentName = getComponentName(oApplication);
188
+ const sApplicationTitle = oApplication.title || sComponentName.split(".").pop();
189
+
190
+ /* eslint-disable quote-props */
191
+ const oViz = {
192
+ "vizType": "sap.ushell.StaticAppLauncher",
193
+ "businessApp": sComponentName || "sap.ushell.sandbox.BusinessApp",
194
+ "vizConfig": {
195
+ "sap.app": {
196
+ "title": sApplicationTitle,
197
+ "subTitle": oApplication.description || ""
198
+ },
199
+ "sap.ui": {
200
+ "icons": {
201
+ "icon": oApplication.icon
202
+ },
203
+ "deviceTypes": {
204
+ "desktop": true,
205
+ "tablet": true,
206
+ "phone": true
207
+ }
208
+ },
209
+ "sap.flp": {
210
+ "target": {
211
+ "type": "URL",
212
+ "url": "#" + sKey
213
+ }
214
+ }
215
+ }
216
+ };
217
+ /* eslint-enable quote-props */
218
+ return oViz;
219
+ }
220
+
221
+ // predefined site is found here
222
+ const oSiteData = oConfig.services.CommonDataModel.adapter.config.siteData;
223
+
224
+ // generate applications and tiles from oConfig.applications and add them to the site
225
+ const oApplications = ObjectPath.get("applications", oConfig) || {};
226
+ for (const [sAppKey, oApplication] of Object.entries(oApplications)) {
227
+ const sVizId = "custom_viz_" + sAppKey;
228
+ const oSection = oSiteData.pages.page1.payload.sections.APPS; // predefined section for custom apps
229
+ oSiteData.applications[sAppKey] = createApp(oApplication, sAppKey);
230
+ oSiteData.visualizations[sAppKey] = createViz(oApplication, sAppKey);
231
+ oSection.layout.vizOrder.push(sVizId);
232
+ oSection.viz[sVizId] = {
233
+ id: sVizId,
234
+ vizId: sAppKey
235
+ };
236
+ }
237
+
238
+ // generate applications from NavTargetResolutionInternal config
239
+ const oNavTargetApps = JSON.parse(JSON.stringify(ObjectPath.get("services.NavTargetResolutionInternal.adapter.config.applications", oConfig) || {}));
240
+ ObjectPath.set("services.NavTargetResolutionInternal.adapter.config.applications", oNavTargetApps, oApplicationConfig);
241
+ for (const [sNTAppKey, oNTApp] of Object.entries(oNavTargetApps)) {
242
+ if (oNTApp.additionalInformation) {
243
+ oSiteData.applications[sNTAppKey] = createApp(oNTApp, sNTAppKey);
244
+ }
245
+ }
246
+
247
+ // generate applications from ClientSideTargetResolution config (application dependencies not taken into account yet)
248
+ const oClientTargetApps = JSON.parse(JSON.stringify(ObjectPath.get("services.ClientSideTargetResolution.adapter.config.inbounds", oConfig) || {}));
249
+ ObjectPath.set("services.ClientSideTargetResolution.adapter.config.inbounds", oClientTargetApps, oApplicationConfig);
250
+ for (const oInbound of Object.values(oClientTargetApps)) {
251
+ oSiteData.applications[oInbound.semanticObject + "-" + oInbound.action] = createAppFromInbound(oInbound);
252
+ }
253
+
254
+ // generate sections and tiles from the LaunchPage adapter config and add them to the site
255
+ const aGroups = JSON.parse(JSON.stringify(ObjectPath.get("services.LaunchPage.adapter.config.groups", oConfig) || []));
256
+ ObjectPath.set("services.LaunchPage.adapter.config.groups", aGroups, oApplicationConfig);
257
+ aGroups.forEach((oGroup, index) => {
258
+ const sGroupId = oGroup.id || "GROUP_" + index;
259
+ const oPage = oSiteData.pages.page1; // predefined page
260
+ oPage.payload.layout.sectionOrder.splice(index + 1, 0, sGroupId); // insert groups between my home and sample apps
261
+ oPage.payload.sections[sGroupId] = {
262
+ id: sGroupId,
263
+ title: oGroup.title,
264
+ layout: {vizOrder: []},
265
+ viz: {}
266
+ };
267
+ const oSection = oPage.payload.sections[sGroupId];
268
+ (oGroup.tiles || []).forEach((oTile, tileIndex) => {
269
+ const sTileId = oTile.id || sGroupId + "_tile_" + tileIndex;
270
+ oSection.layout.vizOrder.push(sTileId);
271
+
272
+ /* eslint-disable quote-props */
273
+ const sFormFactor = oTile.formFactor || "Desktop,Tablet,Phone";
274
+ const oTileProperties = oTile.properties || {};
275
+ const oViz = {
276
+ "vizType": "sap.ushell.StaticAppLauncher", // always static tiles, no matter how it is configured
277
+ "businessApp": "sap.ushell.sandbox.BusinessApp",
278
+ "vizConfig": {
279
+ "sap.app": {
280
+ "title": oTile.title || oTileProperties.title || "",
281
+ "subTitle": oTileProperties.subtitle || ""
282
+ },
283
+ "sap.ui": {
284
+ "icons": {
285
+ "icon": oTileProperties.icon
286
+ },
287
+ "deviceTypes": {
288
+ "desktop": sFormFactor.indexOf("Desktop") > -1,
289
+ "tablet": sFormFactor.indexOf("Tablet") > -1,
290
+ "phone": sFormFactor.indexOf("Phone") > -1
291
+ }
292
+ },
293
+ "sap.flp": {
294
+ "target": {
295
+ "type": "URL",
296
+ "url": oTileProperties.targetURL || oTileProperties.href || "#"
297
+ }
298
+ }
299
+ }
300
+ };
301
+ oSiteData.visualizations[sTileId] = oViz;
302
+ oSection.viz[sTileId] = {
303
+ id: sTileId,
304
+ vizId: sTileId
305
+ };
306
+ /* eslint-enable quote-props */
307
+ });
308
+ });
309
+ delete oConfig.applications;
310
+
311
+ const oServiceMigration = commonUtils.getV2ServiceMigrationConfig(oApplicationConfig);
312
+ this.mergeConfig(oConfig, oServiceMigration, true);
313
+ this.mergeConfig(oConfig, oApplicationConfig, true);
314
+
315
+ return oConfig;
316
+ },
317
+
318
+ /**
319
+ * Apply the default Ushell Config and merge into
320
+ * window["sap-ushell-config"].
321
+ *
322
+ * @param {object} oConfig The config to be merged into the window object
323
+ * @param {object} oUshellConfig The current ushell configuration
324
+ */
325
+ _applyDefaultUshellConfig: function (oConfig, oUshellConfig) {
326
+ const oDefaultApplicationMigration = commonUtils.getV2ServiceMigrationConfig(oConfig);
327
+
328
+ this.mergeConfig(oUshellConfig, oDefaultApplicationMigration, true);
329
+ this.mergeConfig(oUshellConfig, oConfig, true);
330
+ },
331
+
332
+ /**
333
+ * Apply the default site data and delete the siteDataUrl from the adapter config.
334
+ *
335
+ * @param {object} oSiteData The site data to be merged into the window object
336
+ * @param {object} oUshellConfig The current ushell configuration
337
+ */
338
+ _applyDefaultSiteData: function (oSiteData, oUshellConfig) {
339
+ const oAdapterConfig = oUshellConfig.services.CommonDataModel.adapter.config;
340
+ oAdapterConfig.siteData = oSiteData;
341
+ delete oAdapterConfig.siteDataUrl;
342
+ },
343
+
344
+ /**
345
+ * Read a new JSON application config defined by its URL and merge into
346
+ * window["sap-ushell-config"].
347
+ *
348
+ * @param {string} sUrlPrefix URL of JSON file to be merged into the configuration
349
+ * @param {object} oUshellConfig The current ushell configuration
350
+ */
351
+ _applyJsonApplicationConfig: async function (sUrlPrefix, oUshellConfig) {
352
+ const sUrl = /\.json/i.test(sUrlPrefix) ? sUrlPrefix : sUrlPrefix + ".json";
353
+ const oAppConfig = await this._loadJSON(sUrl);
354
+ if (oAppConfig) {
355
+ const oDefaultApplicationMigration = commonUtils.getV2ServiceMigrationConfig(oAppConfig);
356
+
357
+ this.mergeConfig(oUshellConfig, oDefaultApplicationMigration, true);
358
+ this.mergeConfig(oUshellConfig, oAppConfig, true);
359
+ }
360
+ },
361
+
362
+ /**
363
+ * Get the path of our own script; module paths are registered relative to this path, not
364
+ * relative to the HTML page we introduce an ID for the bootstrap script, similar to UI5;
365
+ * allows to reference it later as well
366
+ * @returns {string} path of the bootstrap script
367
+ */
368
+ _getBootstrapScriptPath: function () {
369
+ const oBootstrapScript = window.document.getElementById("sap-ushell-bootstrap");
370
+ const sBootstrapScriptPath = oBootstrapScript.src.split("?")[0].split("/").slice(0, -1).join("/") + "/";
371
+ return sBootstrapScriptPath;
372
+ },
373
+
374
+ /**
375
+ * Perform sandbox bootstrap of local platform. The promise will make sure to call the UI5
376
+ * callback in case of success.
377
+ */
378
+ bootstrap: async function () {
379
+ const aConfigFiles = new URLSearchParams(window.location.search).getAll("sap-ushell-sandbox-config");
380
+ const sBootstrapPath = this._getBootstrapScriptPath(); // default config files are located in the sandbox2 subfolder
381
+ const sDefaultConfigUrl = sBootstrapPath + "./sandbox2/sandboxConfig.json";
382
+ const sDefaultSiteUrl = sBootstrapPath + "./sandbox2/sandboxSite.json";
383
+
384
+ // if one or more configuration files are specified explicitly via URL parameter, read them;
385
+ // otherwise, /appconfig/fioriSandboxConfig.json is the convention for WebIDE developers
386
+ if (aConfigFiles.length === 0) {
387
+ aConfigFiles.push("/appconfig/fioriSandboxConfig.json");
388
+ aConfigFiles.push("../appconfig/fioriSandboxConfig.json"); // some configurations work with relative path only
389
+ }
390
+
391
+ if (!window["sap-ushell-config"]) {
392
+ window["sap-ushell-config"] = {};
393
+ }
394
+ const oUshellConfig = window["sap-ushell-config"];
395
+ // migrate config set via window object
396
+ commonUtils.migrateV2ServiceConfig(oUshellConfig);
397
+
398
+ // load the predefined ushell configuration and site contents
399
+ const [oDefaultConfig, oDefaultSite] = await Promise.all([this._loadJSON(sDefaultConfigUrl), this._loadJSON(sDefaultSiteUrl)]);
400
+ this._applyDefaultUshellConfig(oDefaultConfig, oUshellConfig);
401
+ this._applyDefaultSiteData(oDefaultSite, oUshellConfig);
402
+
403
+ // merge with the custom configuration
404
+ for (const sConfigFile of aConfigFiles) {
405
+ await this._applyJsonApplicationConfig(sConfigFile, oUshellConfig);
406
+ }
407
+
408
+ // convert custom data to the site data
409
+ this._addAppsToSite(oUshellConfig);
410
+
411
+ // check if sample apps path is correctly configured in the HTML bootstrap (redirect demo to demoapps)
412
+ const sDemoAppsPath = sap.ui.require.toUrl("sap/ushell/demo");
413
+ if (sDemoAppsPath.indexOf("sap/ushell/demoapps") === -1) {
414
+ // The path to sample apps is not configured or configured incorrectly
415
+ sap.ui.loader.config({paths: {"sap/ushell/demo": "/ushell/test-resources/sap/ushell/demoapps"}});
416
+ }
417
+
418
+ // merge custom application module paths for the loader, if provided
419
+ if (oUshellConfig.modulePaths) {
420
+ const oModules = Object.keys(oUshellConfig.modulePaths).reduce((result, sModulePath) => {
421
+ result[sModulePath.replace(/\./g, "/")] = oUshellConfig.modulePaths[sModulePath];
422
+ return result;
423
+ }, {});
424
+ sap.ui.loader.config({
425
+ paths: oModules
426
+ });
427
+ }
428
+ return Container.init("cdm");
429
+ }
430
+ };
431
+
432
+ return Sandbox;
433
+ });
@@ -0,0 +1,4 @@
1
+ {
2
+ "extends": "sap/ui/core/boot/boot.json",
3
+ "preBoot": ["sap/ushell/bootstrap/sandbox2/sandboxBootTask"]
4
+ }
@@ -0,0 +1,16 @@
1
+ // Copyright (c) 2009-2023 SAP SE, All Rights Reserved
2
+
3
+ sap.ui.define([
4
+ "sap/ushell/bootstrap/sandbox2/sandbox"
5
+ ], (
6
+ sandbox
7
+ ) => {
8
+ "use strict";
9
+
10
+ return {
11
+ //async run to ensure to be ready for the next phase
12
+ async run () {
13
+ return sandbox.bootstrap();
14
+ }
15
+ };
16
+ });