@sapui5/sap.cux.home 1.141.0 → 1.142.1

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 (361) hide show
  1. package/package.json +1 -1
  2. package/src/sap/cux/home/.library +4 -1
  3. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts +3 -2
  4. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
  5. package/src/sap/cux/home/AdvancedSettingsPanel.js +6 -6
  6. package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
  7. package/src/sap/cux/home/AdvancedSettingsPanel.ts +6 -6
  8. package/src/sap/cux/home/App.d.ts.map +1 -1
  9. package/src/sap/cux/home/App.js +6 -1
  10. package/src/sap/cux/home/App.js.map +1 -1
  11. package/src/sap/cux/home/App.ts +7 -1
  12. package/src/sap/cux/home/AppsAdditionPanel.d.ts +48 -34
  13. package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
  14. package/src/sap/cux/home/AppsAdditionPanel.js +362 -265
  15. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  16. package/src/sap/cux/home/AppsAdditionPanel.ts +374 -254
  17. package/src/sap/cux/home/AppsContainer.d.ts +5 -1
  18. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  19. package/src/sap/cux/home/AppsContainer.js +33 -18
  20. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  21. package/src/sap/cux/home/AppsContainer.ts +32 -15
  22. package/src/sap/cux/home/BaseAppPanel.d.ts +2 -1
  23. package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
  24. package/src/sap/cux/home/BaseAppPanel.js +8 -2
  25. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  26. package/src/sap/cux/home/BaseAppPanel.ts +10 -3
  27. package/src/sap/cux/home/BaseContainer.d.ts +9 -1
  28. package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
  29. package/src/sap/cux/home/BaseContainer.js +36 -6
  30. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  31. package/src/sap/cux/home/BaseContainer.ts +33 -6
  32. package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
  33. package/src/sap/cux/home/BaseContainerRenderer.js +6 -0
  34. package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
  35. package/src/sap/cux/home/BaseContainerRenderer.ts +7 -1
  36. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  37. package/src/sap/cux/home/BaseNewsPanel.ts +2 -2
  38. package/src/sap/cux/home/BasePanel.d.ts +7 -0
  39. package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
  40. package/src/sap/cux/home/BasePanel.js +20 -0
  41. package/src/sap/cux/home/BasePanel.js.map +1 -1
  42. package/src/sap/cux/home/BasePanel.ts +16 -0
  43. package/src/sap/cux/home/CardsContainer.d.ts +108 -0
  44. package/src/sap/cux/home/CardsContainer.d.ts.map +1 -0
  45. package/src/sap/cux/home/CardsContainer.js +207 -0
  46. package/src/sap/cux/home/CardsContainer.js.map +1 -0
  47. package/src/sap/cux/home/CardsContainer.ts +202 -0
  48. package/src/sap/cux/home/CardsPanel.d.ts +47 -59
  49. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  50. package/src/sap/cux/home/CardsPanel.js +405 -326
  51. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  52. package/src/sap/cux/home/CardsPanel.ts +223 -201
  53. package/src/sap/cux/home/ContentAdditionDialog.d.ts +2 -0
  54. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  55. package/src/sap/cux/home/ContentAdditionDialog.js +17 -7
  56. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  57. package/src/sap/cux/home/ContentAdditionDialog.ts +18 -6
  58. package/src/sap/cux/home/ErrorPanel.d.ts +0 -5
  59. package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
  60. package/src/sap/cux/home/ErrorPanel.gen.d.ts +31 -0
  61. package/src/sap/cux/home/ErrorPanel.js +11 -16
  62. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  63. package/src/sap/cux/home/ErrorPanel.ts +7 -19
  64. package/src/sap/cux/home/FavAppPanel.d.ts +1 -12
  65. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  66. package/src/sap/cux/home/FavAppPanel.js +354 -414
  67. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  68. package/src/sap/cux/home/FavAppPanel.ts +21 -66
  69. package/src/sap/cux/home/FrequentAppPanel.d.ts.map +1 -1
  70. package/src/sap/cux/home/FrequentAppPanel.js +5 -1
  71. package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
  72. package/src/sap/cux/home/FrequentAppPanel.ts +4 -0
  73. package/src/sap/cux/home/InsightsAdditionPanel.d.ts +11 -4
  74. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  75. package/src/sap/cux/home/InsightsAdditionPanel.js +22 -8
  76. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  77. package/src/sap/cux/home/InsightsAdditionPanel.ts +22 -7
  78. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts +8 -0
  79. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts.map +1 -1
  80. package/src/sap/cux/home/InsightsCardsSettingsPanel.js +15 -0
  81. package/src/sap/cux/home/InsightsCardsSettingsPanel.js.map +1 -1
  82. package/src/sap/cux/home/InsightsCardsSettingsPanel.ts +11 -0
  83. package/src/sap/cux/home/InsightsTilesSettingsPanel.js +1 -1
  84. package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
  85. package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +1 -1
  86. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +3 -0
  87. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
  88. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +252 -39
  89. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
  90. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +287 -57
  91. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  92. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +11 -10
  93. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  94. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +12 -10
  95. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +2 -2
  96. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  97. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +7 -7
  98. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
  99. package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +2 -2
  100. package/src/sap/cux/home/Layout.d.ts +3 -1
  101. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  102. package/src/sap/cux/home/Layout.js +49 -8
  103. package/src/sap/cux/home/Layout.js.map +1 -1
  104. package/src/sap/cux/home/Layout.ts +59 -8
  105. package/src/sap/cux/home/LayoutSettingsPanel.d.ts +10 -0
  106. package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
  107. package/src/sap/cux/home/LayoutSettingsPanel.js +341 -56
  108. package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
  109. package/src/sap/cux/home/LayoutSettingsPanel.ts +379 -63
  110. package/src/sap/cux/home/{NewsAndPagesContainer.d.ts → NewsContainer.d.ts} +13 -18
  111. package/src/sap/cux/home/NewsContainer.d.ts.map +1 -0
  112. package/src/sap/cux/home/{NewsAndPagesContainer.gen.d.ts → NewsContainer.gen.d.ts} +3 -3
  113. package/src/sap/cux/home/{NewsAndPagesContainer.js → NewsContainer.js} +26 -113
  114. package/src/sap/cux/home/NewsContainer.js.map +1 -0
  115. package/src/sap/cux/home/{NewsAndPagesContainer.ts → NewsContainer.ts} +31 -120
  116. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  117. package/src/sap/cux/home/NewsGroup.ts +1 -1
  118. package/src/sap/cux/home/NewsPanel.d.ts +17 -0
  119. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  120. package/src/sap/cux/home/NewsPanel.js +100 -69
  121. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  122. package/src/sap/cux/home/NewsPanel.ts +61 -36
  123. package/src/sap/cux/home/NewsSettingsPanel.d.ts +42 -6
  124. package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
  125. package/src/sap/cux/home/NewsSettingsPanel.js +219 -81
  126. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  127. package/src/sap/cux/home/NewsSettingsPanel.ts +216 -81
  128. package/src/sap/cux/home/Page.d.ts.map +1 -1
  129. package/src/sap/cux/home/Page.js +4 -1
  130. package/src/sap/cux/home/Page.js.map +1 -1
  131. package/src/sap/cux/home/Page.ts +2 -0
  132. package/src/sap/cux/home/PagePanel.d.ts +1 -1
  133. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  134. package/src/sap/cux/home/PagePanel.js +19 -11
  135. package/src/sap/cux/home/PagePanel.js.map +1 -1
  136. package/src/sap/cux/home/PagePanel.ts +26 -20
  137. package/src/sap/cux/home/PageSettingsPanel.d.ts.map +1 -1
  138. package/src/sap/cux/home/PageSettingsPanel.js +6 -3
  139. package/src/sap/cux/home/PageSettingsPanel.js.map +1 -1
  140. package/src/sap/cux/home/PageSettingsPanel.ts +2 -2
  141. package/src/sap/cux/home/PagesContainer.d.ts +72 -0
  142. package/src/sap/cux/home/PagesContainer.d.ts.map +1 -0
  143. package/src/sap/cux/home/PagesContainer.gen.d.ts +78 -0
  144. package/src/sap/cux/home/PagesContainer.js +333 -0
  145. package/src/sap/cux/home/PagesContainer.js.map +1 -0
  146. package/src/sap/cux/home/PagesContainer.ts +179 -0
  147. package/src/sap/cux/home/RecentAppPanel.d.ts.map +1 -1
  148. package/src/sap/cux/home/RecentAppPanel.js +6 -0
  149. package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
  150. package/src/sap/cux/home/RecentAppPanel.ts +5 -1
  151. package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
  152. package/src/sap/cux/home/RecommendedAppPanel.js +7 -0
  153. package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
  154. package/src/sap/cux/home/RecommendedAppPanel.ts +6 -1
  155. package/src/sap/cux/home/SideBySideIconTabFilter.d.ts +10 -0
  156. package/src/sap/cux/home/SideBySideIconTabFilter.d.ts.map +1 -1
  157. package/src/sap/cux/home/SideBySideIconTabFilter.js +11 -1
  158. package/src/sap/cux/home/SideBySideIconTabFilter.js.map +1 -1
  159. package/src/sap/cux/home/SideBySideIconTabFilter.ts +11 -0
  160. package/src/sap/cux/home/SituationPanel.d.ts.map +1 -1
  161. package/src/sap/cux/home/SituationPanel.js +7 -2
  162. package/src/sap/cux/home/SituationPanel.js.map +1 -1
  163. package/src/sap/cux/home/SituationPanel.ts +2 -0
  164. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +8 -60
  165. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
  166. package/src/sap/cux/home/SpaceInsightsPanel.js +67 -133
  167. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
  168. package/src/sap/cux/home/SpaceInsightsPanel.ts +70 -152
  169. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  170. package/src/sap/cux/home/TaskPanel.js +19 -1
  171. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  172. package/src/sap/cux/home/TaskPanel.ts +17 -2
  173. package/src/sap/cux/home/TilesContainer.d.ts +111 -0
  174. package/src/sap/cux/home/TilesContainer.d.ts.map +1 -0
  175. package/src/sap/cux/home/TilesContainer.js +218 -0
  176. package/src/sap/cux/home/TilesContainer.js.map +1 -0
  177. package/src/sap/cux/home/TilesContainer.ts +216 -0
  178. package/src/sap/cux/home/TilesPanel.d.ts +22 -52
  179. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  180. package/src/sap/cux/home/TilesPanel.js +194 -168
  181. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  182. package/src/sap/cux/home/TilesPanel.ts +167 -157
  183. package/src/sap/cux/home/ToDoPanel.d.ts +1 -0
  184. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  185. package/src/sap/cux/home/ToDoPanel.js +64 -68
  186. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  187. package/src/sap/cux/home/ToDoPanel.ts +48 -36
  188. package/src/sap/cux/home/ToDosContainer.js +3 -3
  189. package/src/sap/cux/home/ToDosContainer.js.map +1 -1
  190. package/src/sap/cux/home/ToDosContainer.ts +1 -1
  191. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts +2 -2
  192. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
  193. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +1 -1
  194. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
  195. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +4 -4
  196. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts +2 -2
  197. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
  198. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -1
  199. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
  200. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +4 -4
  201. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts +2 -2
  202. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts.map +1 -1
  203. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js +1 -1
  204. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js.map +1 -1
  205. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.ts +3 -3
  206. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts +2 -2
  207. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
  208. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +4 -4
  209. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
  210. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +5 -5
  211. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
  212. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +30 -3
  213. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
  214. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +23 -1
  215. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +29 -19
  216. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
  217. package/src/sap/cux/home/flexibility/Layout.flexibility.js +78 -2
  218. package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
  219. package/src/sap/cux/home/flexibility/Layout.flexibility.ts +81 -1
  220. package/src/sap/cux/home/i18n/messagebundle.properties +32 -12
  221. package/src/sap/cux/home/i18n/messagebundle_ar.properties +18 -2
  222. package/src/sap/cux/home/i18n/messagebundle_bg.properties +18 -2
  223. package/src/sap/cux/home/i18n/messagebundle_ca.properties +18 -2
  224. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +18 -2
  225. package/src/sap/cux/home/i18n/messagebundle_cs.properties +18 -2
  226. package/src/sap/cux/home/i18n/messagebundle_cy.properties +18 -2
  227. package/src/sap/cux/home/i18n/messagebundle_da.properties +18 -2
  228. package/src/sap/cux/home/i18n/messagebundle_de.properties +18 -2
  229. package/src/sap/cux/home/i18n/messagebundle_el.properties +18 -2
  230. package/src/sap/cux/home/i18n/messagebundle_en.properties +19 -3
  231. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +18 -2
  232. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +21 -5
  233. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +21 -5
  234. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +18 -2
  235. package/src/sap/cux/home/i18n/messagebundle_es.properties +19 -2
  236. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +18 -2
  237. package/src/sap/cux/home/i18n/messagebundle_et.properties +18 -2
  238. package/src/sap/cux/home/i18n/messagebundle_fi.properties +18 -2
  239. package/src/sap/cux/home/i18n/messagebundle_fr.properties +18 -2
  240. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +18 -2
  241. package/src/sap/cux/home/i18n/messagebundle_hi.properties +18 -2
  242. package/src/sap/cux/home/i18n/messagebundle_hr.properties +18 -2
  243. package/src/sap/cux/home/i18n/messagebundle_hu.properties +18 -2
  244. package/src/sap/cux/home/i18n/messagebundle_id.properties +18 -2
  245. package/src/sap/cux/home/i18n/messagebundle_it.properties +23 -7
  246. package/src/sap/cux/home/i18n/messagebundle_iw.properties +18 -2
  247. package/src/sap/cux/home/i18n/messagebundle_ja.properties +18 -2
  248. package/src/sap/cux/home/i18n/messagebundle_kk.properties +18 -2
  249. package/src/sap/cux/home/i18n/messagebundle_ko.properties +18 -2
  250. package/src/sap/cux/home/i18n/messagebundle_lt.properties +18 -2
  251. package/src/sap/cux/home/i18n/messagebundle_lv.properties +18 -2
  252. package/src/sap/cux/home/i18n/messagebundle_mk.properties +18 -2
  253. package/src/sap/cux/home/i18n/messagebundle_ms.properties +18 -2
  254. package/src/sap/cux/home/i18n/messagebundle_nl.properties +18 -2
  255. package/src/sap/cux/home/i18n/messagebundle_no.properties +18 -2
  256. package/src/sap/cux/home/i18n/messagebundle_pl.properties +18 -2
  257. package/src/sap/cux/home/i18n/messagebundle_pt.properties +19 -3
  258. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +18 -2
  259. package/src/sap/cux/home/i18n/messagebundle_ro.properties +18 -2
  260. package/src/sap/cux/home/i18n/messagebundle_ru.properties +18 -2
  261. package/src/sap/cux/home/i18n/messagebundle_sh.properties +18 -2
  262. package/src/sap/cux/home/i18n/messagebundle_sk.properties +18 -2
  263. package/src/sap/cux/home/i18n/messagebundle_sl.properties +18 -2
  264. package/src/sap/cux/home/i18n/messagebundle_sr.properties +18 -2
  265. package/src/sap/cux/home/i18n/messagebundle_sv.properties +18 -2
  266. package/src/sap/cux/home/i18n/messagebundle_th.properties +18 -2
  267. package/src/sap/cux/home/i18n/messagebundle_tr.properties +18 -2
  268. package/src/sap/cux/home/i18n/messagebundle_uk.properties +20 -4
  269. package/src/sap/cux/home/i18n/messagebundle_vi.properties +18 -2
  270. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +18 -2
  271. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +18 -2
  272. package/src/sap/cux/home/interface/AppsInterface.d.ts +5 -0
  273. package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
  274. package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
  275. package/src/sap/cux/home/interface/AppsInterface.ts +6 -0
  276. package/src/sap/cux/home/interface/CardsInterface.d.ts +6 -0
  277. package/src/sap/cux/home/interface/CardsInterface.d.ts.map +1 -1
  278. package/src/sap/cux/home/interface/CardsInterface.js.map +1 -1
  279. package/src/sap/cux/home/interface/CardsInterface.ts +6 -1
  280. package/src/sap/cux/home/interface/KeyUserInterface.d.ts +27 -4
  281. package/src/sap/cux/home/interface/KeyUserInterface.d.ts.map +1 -1
  282. package/src/sap/cux/home/interface/KeyUserInterface.js.map +1 -1
  283. package/src/sap/cux/home/interface/KeyUserInterface.ts +23 -4
  284. package/src/sap/cux/home/interface/LayoutInterface.d.ts +7 -0
  285. package/src/sap/cux/home/interface/LayoutInterface.d.ts.map +1 -1
  286. package/src/sap/cux/home/interface/LayoutInterface.js.map +1 -1
  287. package/src/sap/cux/home/interface/LayoutInterface.ts +7 -0
  288. package/src/sap/cux/home/library.d.ts.map +1 -1
  289. package/src/sap/cux/home/library.js +7 -4
  290. package/src/sap/cux/home/library.js.map +1 -1
  291. package/src/sap/cux/home/library.ts +10 -5
  292. package/src/sap/cux/home/themes/base/AppsContainer.less +12 -1
  293. package/src/sap/cux/home/themes/base/BaseContainer.less +36 -0
  294. package/src/sap/cux/home/themes/base/BaseLayout.less +22 -0
  295. package/src/sap/cux/home/themes/base/{InsightsContainer.less → CardsContainer.less} +4 -45
  296. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +10 -18
  297. package/src/sap/cux/home/themes/base/PlaceHolder.less +1 -1
  298. package/src/sap/cux/home/themes/base/SettingsDialog.less +4 -0
  299. package/src/sap/cux/home/themes/base/TilesContainer.less +65 -0
  300. package/src/sap/cux/home/themes/base/ToDosContainer.less +4 -0
  301. package/src/sap/cux/home/themes/base/library.source.less +2 -1
  302. package/src/sap/cux/home/utils/BatchHelper.d.ts +1 -0
  303. package/src/sap/cux/home/utils/BatchHelper.d.ts.map +1 -1
  304. package/src/sap/cux/home/utils/BatchHelper.js +7 -2
  305. package/src/sap/cux/home/utils/BatchHelper.js.map +1 -1
  306. package/src/sap/cux/home/utils/BatchHelper.ts +8 -1
  307. package/src/sap/cux/home/utils/FESRUtil.d.ts +30 -0
  308. package/src/sap/cux/home/utils/FESRUtil.d.ts.map +1 -1
  309. package/src/sap/cux/home/utils/FESRUtil.js +36 -1
  310. package/src/sap/cux/home/utils/FESRUtil.js.map +1 -1
  311. package/src/sap/cux/home/utils/FESRUtil.ts +36 -0
  312. package/src/sap/cux/home/utils/PXFeedback.d.ts +4 -0
  313. package/src/sap/cux/home/utils/PXFeedback.d.ts.map +1 -0
  314. package/src/sap/cux/home/utils/PXFeedback.js +28 -0
  315. package/src/sap/cux/home/utils/PXFeedback.js.map +1 -0
  316. package/src/sap/cux/home/utils/PXFeedback.ts +19 -0
  317. package/src/sap/cux/home/utils/PageManager.d.ts +0 -4
  318. package/src/sap/cux/home/utils/PageManager.d.ts.map +1 -1
  319. package/src/sap/cux/home/utils/PageManager.js +6 -6
  320. package/src/sap/cux/home/utils/PageManager.js.map +1 -1
  321. package/src/sap/cux/home/utils/PageManager.ts +6 -5
  322. package/src/sap/cux/home/utils/PerformanceUtils.d.ts +4 -2
  323. package/src/sap/cux/home/utils/PerformanceUtils.d.ts.map +1 -1
  324. package/src/sap/cux/home/utils/PerformanceUtils.js +4 -2
  325. package/src/sap/cux/home/utils/PerformanceUtils.js.map +1 -1
  326. package/src/sap/cux/home/utils/PerformanceUtils.ts +4 -2
  327. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +150 -151
  328. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts +8 -0
  329. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts.map +1 -0
  330. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.js → CardsPlaceholder.js} +3 -77
  331. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.js.map +1 -0
  332. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.ts → CardsPlaceholder.ts} +1 -75
  333. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts +8 -0
  334. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts.map +1 -0
  335. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js +44 -0
  336. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js.map +1 -0
  337. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.ts +34 -0
  338. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts +8 -0
  339. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts.map +1 -0
  340. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.js → PagesPlaceholder.js} +3 -23
  341. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.js.map +1 -0
  342. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.ts → PagesPlaceholder.ts} +1 -21
  343. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts +8 -0
  344. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts.map +1 -0
  345. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js +95 -0
  346. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js.map +1 -0
  347. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.ts +85 -0
  348. package/ui5.yaml +1 -0
  349. package/src/sap/cux/home/InsightsContainer.d.ts +0 -205
  350. package/src/sap/cux/home/InsightsContainer.d.ts.map +0 -1
  351. package/src/sap/cux/home/InsightsContainer.js +0 -459
  352. package/src/sap/cux/home/InsightsContainer.js.map +0 -1
  353. package/src/sap/cux/home/InsightsContainer.ts +0 -489
  354. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +0 -1
  355. package/src/sap/cux/home/NewsAndPagesContainer.js.map +0 -1
  356. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +0 -8
  357. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +0 -1
  358. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +0 -1
  359. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts +0 -8
  360. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +0 -1
  361. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.js","names":["sap","ui","define","Log","Element","S4MyHome","Container","__AdvancedSettingsPanel","__BaseLayout","__BaseLayoutRenderer","__ContentAdditionDialog","__InsightsCardsSettingsPanel","__InsightsTilesSettingsPanel","__KeyUserLayoutSettingsPanel","__KeyUserNewsPagesSettingsPanel","__KeyUserSettingsDialog","__LayoutSettingsPanel","__NewsAndPagesContainer","__NewsSettingsPanel","__NoDataContainer","__PagePanel","__PageSettingsPanel","__SettingsDialog","__ToDosContainer","___utils_Constants","___utils_DataFormatUtils","___utils_PerformanceUtils","__PersonalisationUtils","_interopRequireDefault","obj","__esModule","default","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","then","observer","prototype","onFulfilled","onRejected","result","callback","e","_this","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","length","AdvancedSettingsPanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","BaseLayout","_catch","recover","BaseLayoutRenderer","ContentAdditionDialog","InsightsCardsSettingsPanel","InsightsTilesSettingsPanel","KeyUserLayoutSettingsPanel","KeyUserNewsPagesSettingsPanel","KeyUserSettingsDialog","LayoutSettingsPanel","NewsAndPagesContainer","NewsSettingsPanel","NoDataContainer","PagePanel","PageSettingsPanel","SettingsDialog","ToDosContainer","SETTINGS_PANELS_KEYS","recycleId","setupPerformanceTracking","PersonalisationUtils","Layout","extend","renderer","metadata","designtime","constructor","_constructor","id","settings","BaseLayout.prototype.constructor.call","_shellUserActions","_isDefaultSettingsDialog","_customNoDataContainerPresent","init","_init","BaseLayout.prototype.init.call","setProperty","_addUserActions","Promise","resolve","_temp3","getVisible","_userActionsAdded","userActions","icon","text","_i18nBundle","getText","tooltip","press","openSettingsDialog","getServiceAsync","extensionService","_temp2","toggleUserActions","event","show","getParameter","forEach","userAction","showOnHome","hideOnHome","attachRouteMatched","_temp","action","createUserAction","controlType","shellUserAction","error","warning","Error","message","_openSettingsDialog","selectedKey","context","_this2","settingsDialog","getAggregation","getPanels","_getSettingsPanels","_addPanelsToSettingsDialog","_calculateSectionsState","BaseLayout.prototype.openSettingsDialog.call","closeSettingsDialog","_closeSettingsDialog","close","onBeforeRendering","_onBeforeRendering","_this3","BaseLayout.prototype.onBeforeRendering.call","_setupSettingsDialog","_setupContentAdditionDialog","persContainerId","getProperty","setPersContainerId","getNoDataContainer","_aOrderedSections","setTimeout","_prepareLayoutData","_setupKeyUserSettingsDialog","allPanels","getItems","container","setAssociation","getContent","panel","panelEnableSettings","undefined","enableSettings","defaultSettingsDialog","_getDefaultSettingsDialog","setSettingsDialog","getId","settingsPanel","_getDefaultSettingsPanel","addPanel","sortedPanels","_sortPanels","removeAllPanels","insertPanel","_getLayoutSettingsPanel","_getAdvancedSettingsPanel","panelClassName","getMetadata","getName","settingsPanels","layoutSettingsPanel","advancedSettingsPanel","indexOf","_addSettingsPanel","panels","Object","keys","map","key","find","filter","Boolean","_advancedSettingsPanel","_layoutSettingsPanel","_getNoDataContainer","_noDataContainer","item","setVisible","hasVisibleSection","isLayoutExpanded","aOrderedElements","element","getElementById","completeId","aElements","aElementMap","sId","title","getTooltip","elementVisible","elementCustomSettings","getCustomSettings","sContainerType","blocked","visible","setNoDataContainerVisibility","_setNoDataContainerVisibility","contentVisible","noDataContainer","insertItem","removeItem","_this4","aSettingsPanel","_isCustomNews","oSettingsPanel","resetImportModel","setSectionDetails","_setSectionDetails","_this5","elementArray","_temp7","_temp6","oElementItem","bBlocked","_temp5","_temp4","_this5$checkPagesBloc","aNewsAndPagesPanel","_aNewsAndPagesPanel$l","checkPagesBlocked","checkToDoBlocked","_checkPagesBlocked","_this6","_temp0","_pagesAvailable","_temp9","oPanel","_temp8","getUserAvailablePages","aPages","_checkToDoBlocked","toDoContainer","_toDoAccessible","keyUserSettingsDialog","defaultKeyUserSettingsDialog","keyUserLayoutSettingsPanel","keyUserNewsPagesSettingsPanel","setAggregation","getpagesAvailable","_getpagesAvailable","isToDoAccessible","_isToDoAccessible","customNewAvailable","_customNewAvailable","getSections","_getSections","setSections","_setSections","sections","resetSections","_resetSections","contentAdditionDialog"],"sources":["Layout.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport { Event } from \"jquery\";\nimport Log from \"sap/base/Log\";\nimport UI5Event from \"sap/ui/base/Event\";\nimport Element, { MetadataOptions } from \"sap/ui/core/Element\";\nimport S4MyHome from \"sap/ushell/api/S4MyHome\";\nimport Container from \"sap/ushell/Container\";\nimport Extension from \"sap/ushell/services/Extension\";\nimport Item from \"sap/ushell/services/Extension/Item\";\nimport AdvancedSettingsPanel from \"./AdvancedSettingsPanel\";\nimport BaseContainer from \"./BaseContainer\";\nimport type { $BaseLayoutSettings } from \"./BaseLayout\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseLayoutRenderer from \"./BaseLayoutRenderer\";\nimport BasePanel from \"./BasePanel\";\nimport BaseSettingsDialog from \"./BaseSettingsDialog\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport InsightsCardsSettingsPanel from \"./InsightsCardsSettingsPanel\";\nimport InsightsTilesSettingsPanel from \"./InsightsTilesSettingsPanel\";\nimport KeyUserLayoutSettingsPanel from \"./KeyUserLayoutSettingsPanel\";\nimport KeyUserNewsPagesSettingsPanel from \"./KeyUserNewsPagesSettingsPanel\";\nimport KeyUserSettingsDialog from \"./KeyUserSettingsDialog\";\nimport LayoutSettingsPanel from \"./LayoutSettingsPanel\";\nimport NewsAndPagesContainer from \"./NewsAndPagesContainer\";\nimport NewsSettingsPanel from \"./NewsSettingsPanel\";\nimport NoDataContainer from \"./NoDataContainer\";\nimport PagePanel from \"./PagePanel\";\nimport PageSettingsPanel from \"./PageSettingsPanel\";\nimport SettingsDialog from \"./SettingsDialog\";\nimport ToDosContainer from \"./ToDosContainer\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { setupPerformanceTracking } from \"./utils/PerformanceUtils\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\n\ninterface IElement {\n\tcompleteId: string;\n\tsContainerType: string;\n\tblocked: boolean;\n\tvisible: boolean;\n\ttitle: string;\n\ttext: string;\n}\n\nexport interface UserActionProperties {\n\ticon: string;\n\ttext: string;\n\ttooltip: string;\n\tpress: () => void;\n}\n\n/**\n *\n * Layout class for the My Home layout.\n *\n * @extends BaseLayout\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.Layout\n */\nexport default class Layout extends BaseLayout {\n\tprivate _layoutSettingsPanel!: LayoutSettingsPanel;\n\tprivate _advancedSettingsPanel!: AdvancedSettingsPanel;\n\tprivate _isCustomNews!: boolean;\n\tprivate _pagesAvailable!: boolean;\n\tprivate _toDoAccessible!: boolean;\n\tprivate _aOrderedSections!: IElement[] | undefined;\n\tprivate _noDataContainer!: NoDataContainer;\n\tprivate _shellUserActions: Item[] = [];\n\tprivate _userActionsAdded!: boolean;\n\tprivate _isDefaultSettingsDialog: boolean = false;\n\tprivate _customNoDataContainerPresent: boolean = true;\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tdesigntime: \"sap/cux/home/designtime/Layout.designtime\"\n\t};\n\tstatic renderer: typeof BaseLayoutRenderer = BaseLayoutRenderer;\n\n\t/**\n\t * Constructor for a new layout.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $BaseLayoutSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @async\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup layout\n\t\tthis.setProperty(\"enableSettings\", true);\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t}\n\n\t/**\n\t * Adds all user actions to the Fiori launchpad.\n\t *\n\t * @private\n\t */\n\tprivate async _addUserActions() {\n\t\ttry {\n\t\t\tif (this.getVisible() && !this._userActionsAdded) {\n\t\t\t\tthis._userActionsAdded = true;\n\n\t\t\t\t// Configure User Actions\n\t\t\t\tconst userActions: UserActionProperties[] = [\n\t\t\t\t\t{\n\t\t\t\t\t\ticon: \"sap-icon://edit\",\n\t\t\t\t\t\ttext: this._i18nBundle.getText(\"myHomeSettings\") as string,\n\t\t\t\t\t\ttooltip: this._i18nBundle.getText(\"myHomeSettings\") as string,\n\t\t\t\t\t\tpress: () => {\n\t\t\t\t\t\t\tvoid this.openSettingsDialog();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t];\n\n\t\t\t\t// Attach User Actions\n\t\t\t\tconst extensionService = await Container.getServiceAsync<Extension>(\"Extension\");\n\t\t\t\tfor (let action of userActions) {\n\t\t\t\t\tconst shellUserAction = await extensionService.createUserAction(action, {\n\t\t\t\t\t\tcontrolType: \"sap.ushell.ui.launchpad.ActionItem\"\n\t\t\t\t\t});\n\t\t\t\t\tshellUserAction.showOnHome();\n\t\t\t\t\tthis._shellUserActions.push(shellUserAction);\n\t\t\t\t}\n\n\t\t\t\t// Toggle User Actions on Page Change\n\t\t\t\tconst toggleUserActions = (event: UI5Event<{ isMyHomeRoute: boolean }>) => {\n\t\t\t\t\tconst show = event.getParameter(\"isMyHomeRoute\");\n\t\t\t\t\tthis._shellUserActions.forEach(function (userAction) {\n\t\t\t\t\t\tif (show) {\n\t\t\t\t\t\t\tuserAction.showOnHome();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tuserAction.hideOnHome();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t\tS4MyHome.attachRouteMatched({}, toggleUserActions, this);\n\t\t\t}\n\t\t} catch (error: unknown) {\n\t\t\tLog.warning(\"Unable to add User Actions\", error instanceof Error ? error.message : \"\");\n\t\t}\n\t}\n\n\t/**\n\t * Opens the settings dialog for the layout.\n\t * Overriden from the BaseLayout to ensure of all panels\n\t * to the dialog if not already added.\n\t *\n\t * @private\n\t * @param {string} selectedKey The key of the panel to navigate to\n\t * @override\n\t */\n\tpublic async openSettingsDialog(selectedKey: string = \"\", context?: object): Promise<void> {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog;\n\t\tif (settingsDialog.getPanels().length !== this._getSettingsPanels().length) {\n\t\t\tthis._addPanelsToSettingsDialog();\n\t\t}\n\t\tawait this._calculateSectionsState();\n\n\t\tsuper.openSettingsDialog(selectedKey, context);\n\t}\n\n\t/**\n\t * Close Settings Dialog\n\t *\n\t * @private\n\t *\n\t */\n\tpublic closeSettingsDialog(): void {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog;\n\t\tsettingsDialog?.close();\n\t}\n\n\t/**\n\t * onBeforeRendering lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic async onBeforeRendering(event: Event): Promise<void> {\n\t\tsuper.onBeforeRendering(event);\n\n\t\t//setup common layout features\n\t\tthis._setupSettingsDialog();\n\n\t\t//setup content addition dialog\n\t\tthis._setupContentAdditionDialog();\n\n\t\t// If PersContainerId provided set to PersonalisationUtils\n\t\tconst persContainerId = this.getProperty(\"persContainerId\") as string;\n\t\tif (persContainerId) {\n\t\t\tPersonalisationUtils.setPersContainerId(persContainerId);\n\t\t}\n\t\tthis.getNoDataContainer();\n\t\t//prepare layout data, if not already done\n\t\tif (!this._aOrderedSections) {\n\t\t\tsetTimeout(this._prepareLayoutData.bind(this));\n\t\t}\n\n\t\t// Setup KeyUserPersonalization\n\t\tthis._setupKeyUserSettingsDialog();\n\n\t\t// Initialize Performance Metrics\n\t\tawait setupPerformanceTracking(this);\n\n\t\t//configure user action button if the layout is in an ushell environment\n\t\tawait this._addUserActions();\n\t}\n\n\t/**\n\t * Sets up the settings dialog for the layout.\n\t *\n\t * @private\n\t */\n\tprivate _setupSettingsDialog(): void {\n\t\tconst allPanels: BasePanel[] = [];\n\t\t(this.getItems() || []).forEach((container) => {\n\t\t\t//link container to layout\n\t\t\tcontainer.setAssociation(\"layout\", this);\n\n\t\t\t//enable settings for all panels\n\t\t\tcontainer.getContent().forEach((panel) => {\n\t\t\t\tallPanels.push(panel);\n\t\t\t\tconst panelEnableSettings = panel.getProperty(\"enableSettings\") as boolean;\n\t\t\t\tpanel.setProperty(\"enableSettings\", panelEnableSettings !== undefined ? panelEnableSettings : true);\n\t\t\t});\n\t\t});\n\n\t\tconst enableSettings = this.getProperty(\"enableSettings\") as boolean;\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog | undefined;\n\t\tif (!settingsDialog) {\n\t\t\tthis._isDefaultSettingsDialog = true;\n\n\t\t\t// If settings dialog is not provided and settings is enabled, create a default settings dialog\n\t\t\tif (enableSettings) {\n\t\t\t\tconst defaultSettingsDialog = this._getDefaultSettingsDialog(allPanels);\n\t\t\t\tthis.setSettingsDialog(defaultSettingsDialog);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Get default settings dialog\n\t * @private\n\t * @returns {BaseSettingsDialog} Default settings dialog\n\t */\n\tprivate _getDefaultSettingsDialog(allPanels: BasePanel[]): BaseSettingsDialog {\n\t\tconst defaultSettingsDialog = new SettingsDialog(`${this.getId()}-settings-dialog`);\n\n\t\tallPanels.forEach((panel) => {\n\t\t\tconst settingsPanel = this._getDefaultSettingsPanel(panel);\n\t\t\tif (settingsPanel) {\n\t\t\t\tdefaultSettingsDialog.addPanel(settingsPanel);\n\t\t\t}\n\t\t});\n\n\t\t//sort all panels and add them to the settings dialog\n\t\tconst sortedPanels = this._sortPanels(defaultSettingsDialog.getPanels());\n\t\tdefaultSettingsDialog.removeAllPanels();\n\t\tsortedPanels.forEach((panel) => defaultSettingsDialog.addPanel(panel));\n\n\t\tdefaultSettingsDialog.insertPanel(this._getLayoutSettingsPanel(), 0);\n\t\tdefaultSettingsDialog.addPanel(this._getAdvancedSettingsPanel());\n\n\t\treturn defaultSettingsDialog;\n\t}\n\n\t/**\n\t * Get default Settings Panel\n\t *\n\t * @private\n\t */\n\n\tprivate _getDefaultSettingsPanel(panel: BasePanel): BaseSettingsPanel | undefined {\n\t\tlet settingsPanel: BaseSettingsPanel | undefined;\n\t\tconst panelClassName = panel.getMetadata().getName();\n\t\tswitch (panelClassName) {\n\t\t\tcase \"sap.cux.home.NewsPanel\":\n\t\t\t\tsettingsPanel = new NewsSettingsPanel(`${panel.getId()}-news-settings`);\n\t\t\t\tbreak;\n\t\t\tcase \"sap.cux.home.PagePanel\":\n\t\t\t\tsettingsPanel = new PageSettingsPanel(`${panel.getId()}-page-settings`);\n\t\t\t\tbreak;\n\t\t\tcase \"sap.cux.home.TilesPanel\":\n\t\t\t\tsettingsPanel = new InsightsTilesSettingsPanel(`${panel.getId()}-tiles-settings`);\n\t\t\t\tbreak;\n\t\t\tcase \"sap.cux.home.CardsPanel\":\n\t\t\t\tsettingsPanel = new InsightsCardsSettingsPanel(`${panel.getId()}-cards-settings`);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\t\tsettingsPanel?.setAssociation(\"panel\", panel);\n\t\treturn settingsPanel;\n\t}\n\n\t/**\n\t * Adds all settings panels to the settings dialog, including\n\t * the layout settings panel and advanced settings panel.\n\t *\n\t * @private\n\t */\n\tprivate _addPanelsToSettingsDialog(): void {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog;\n\n\t\t//sort all panels and add them to the settings dialog\n\t\tconst sortedPanels = this._sortPanels(settingsDialog.getPanels());\n\t\tsettingsDialog.removeAllPanels();\n\t\tsortedPanels.forEach((panel) => settingsDialog.addPanel(panel));\n\n\t\t// Layout Settings should be displayed only if no settings dialog is provided\n\t\tif (this._isDefaultSettingsDialog) {\n\t\t\tconst settingsPanels = settingsDialog.getPanels();\n\t\t\tconst layoutSettingsPanel = this._getLayoutSettingsPanel();\n\t\t\tconst advancedSettingsPanel = this._getAdvancedSettingsPanel();\n\n\t\t\tif (settingsPanels.indexOf(layoutSettingsPanel) !== 0) {\n\t\t\t\tsettingsDialog.insertPanel(layoutSettingsPanel, 0);\n\t\t\t}\n\n\t\t\tif (settingsPanels.indexOf(advancedSettingsPanel) !== settingsPanels.length - 1) {\n\t\t\t\tsettingsDialog.addPanel(advancedSettingsPanel);\n\t\t\t}\n\t\t}\n\n\t\tthis._addSettingsPanel(settingsDialog.getPanels(), true);\n\t}\n\n\t/**\n\t * Sorts settings panels based on a predefined order.\n\t *\n\t * @private\n\t * @returns {BaseSettingsPanel[]} Sorted settings panels.\n\t */\n\tprivate _sortPanels(panels: BaseSettingsPanel[]): BaseSettingsPanel[] {\n\t\treturn Object.keys(SETTINGS_PANELS_KEYS)\n\t\t\t.map((key) => panels.find((panel) => panel?.getProperty(\"key\") === key))\n\t\t\t.filter(Boolean) as BaseSettingsPanel[];\n\t}\n\n\t/**\n\t * Retrieves the advanced settings panel associated with the layout.\n\t *\n\t * @private\n\t * @returns {AdvancedSettingsPanel} The advanced settings panel.\n\t */\n\tprivate _getAdvancedSettingsPanel(): AdvancedSettingsPanel {\n\t\tif (!this._advancedSettingsPanel) {\n\t\t\tthis._advancedSettingsPanel = new AdvancedSettingsPanel(`${this.getId()}-advanced-settings`);\n\t\t\tthis._advancedSettingsPanel.setAssociation(\"panel\", this);\n\t\t}\n\n\t\treturn this._advancedSettingsPanel;\n\t}\n\n\t/**\n\t * Retrieves the layout settings panel associated with the layout.\n\t *\n\t * @private\n\t * @returns {LayoutSettingsPanel} The layout settings panel.\n\t */\n\tprivate _getLayoutSettingsPanel(): LayoutSettingsPanel {\n\t\tif (!this._layoutSettingsPanel) {\n\t\t\tthis._layoutSettingsPanel = new LayoutSettingsPanel(`${this.getId()}-layout-settings`);\n\t\t\tthis._layoutSettingsPanel.setAssociation(\"panel\", this);\n\t\t}\n\n\t\treturn this._layoutSettingsPanel;\n\t}\n\n\t/**\n\t * Setup of no data container\n\t *\n\t * @private\n\t * @returns {NoDataContainer} No data container\n\t */\n\tprivate getNoDataContainer(): NoDataContainer {\n\t\tif (!this._noDataContainer) {\n\t\t\tthis._noDataContainer = this.getItems().find((item) => item instanceof NoDataContainer) as NoDataContainer;\n\n\t\t\t// if no data container is already present, use it\n\t\t\tif (!this._noDataContainer) {\n\t\t\t\tthis._customNoDataContainerPresent = false;\n\t\t\t\tthis._noDataContainer = new NoDataContainer(recycleId(`${this.getId()}-noDataContainer`));\n\t\t\t}\n\t\t\tthis._noDataContainer.setVisible(false);\n\t\t}\n\t\treturn this._noDataContainer;\n\t}\n\t/**\n\t * Prepares the layout data.\n\t *\n\t * @private\n\t */\n\tprivate _prepareLayoutData(): void {\n\t\tlet hasVisibleSection = false;\n\t\tconst isLayoutExpanded = this.getProperty(\"expanded\") as boolean;\n\t\tconst aOrderedElements =\n\t\t\tthis._aOrderedSections?.map((element) => Element.getElementById(element.completeId) as BaseContainer) || [];\n\t\tconst aElements = isLayoutExpanded && aOrderedElements.length ? aOrderedElements : this.getItems();\n\t\t// set aelementsMap as elementMap[] | [];\n\t\tconst aElementMap: IElement[] = [];\n\t\taElements.forEach((element: BaseContainer) => {\n\t\t\tif (element !== this.getNoDataContainer()) {\n\t\t\t\tconst sId = element.getId();\n\n\t\t\t\t//if no title set for container , then layout setting should show tooltip as title within the settings dialog\n\t\t\t\tlet title = element.getProperty(\"title\") as string;\n\t\t\t\tif (!title) {\n\t\t\t\t\ttitle = element.getTooltip() as string;\n\t\t\t\t}\n\t\t\t\tconst elementVisible = element.getVisible();\n\t\t\t\tconst elementCustomSettings = element.getCustomSettings();\n\t\t\t\taElementMap.push({\n\t\t\t\t\tcompleteId: sId,\n\t\t\t\t\tsContainerType: element.getMetadata().getName(),\n\t\t\t\t\tblocked: false,\n\t\t\t\t\tvisible: element.getProperty(\"visible\") as boolean,\n\t\t\t\t\ttitle: elementCustomSettings.title || title,\n\t\t\t\t\ttext: elementCustomSettings.text\n\t\t\t\t});\n\t\t\t\tif (elementVisible) {\n\t\t\t\t\thasVisibleSection = true;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis._aOrderedSections = aElementMap;\n\t\tif (!this.getProperty(\"expanded\")) {\n\t\t\tthis.setNoDataContainerVisibility(!hasVisibleSection);\n\t\t}\n\t}\n\n\t/**\n\t * Sets the visibility of the no data container\n\t *\n\t * @private\n\t */\n\tpublic setNoDataContainerVisibility(contentVisible: boolean): void {\n\t\tconst noDataContainer = this.getNoDataContainer();\n\t\tnoDataContainer?.setVisible(contentVisible);\n\t\tif (!this._customNoDataContainerPresent) {\n\t\t\tif (contentVisible) {\n\t\t\t\tthis.insertItem(noDataContainer, 0);\n\t\t\t} else {\n\t\t\t\tthis.removeItem(noDataContainer);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Calculates the state of the sections based on the layout's content.\n\t * @private\n\t */\n\tpublic async _calculateSectionsState(): Promise<void> {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as SettingsDialog;\n\t\tconst aSettingsPanel = settingsDialog.getPanels();\n\t\tthis._isCustomNews = false;\n\t\taSettingsPanel.forEach((oSettingsPanel: BaseSettingsPanel) => {\n\t\t\tif (oSettingsPanel instanceof NewsSettingsPanel) {\n\t\t\t\tthis._isCustomNews = true;\n\t\t\t}\n\t\t\tif (oSettingsPanel instanceof AdvancedSettingsPanel) {\n\t\t\t\toSettingsPanel.resetImportModel(true);\n\t\t\t}\n\t\t});\n\t\tawait this.setSectionDetails();\n\t}\n\n\t/**\n\t * Sets the section details based on the layout's content.\n\t * @private\n\t */\n\tprivate async setSectionDetails(): Promise<void> {\n\t\tconst elementArray = this.getItems();\n\t\tfor (const element of elementArray) {\n\t\t\tlet bBlocked = false;\n\t\t\tconst sId = element.getId();\n\t\t\t//check news & apps visibility\n\t\t\tif (element instanceof NewsAndPagesContainer && element.getVisible()) {\n\t\t\t\tconst aNewsAndPagesPanel = element.getContent();\n\t\t\t\t//check whether user has access to pages\n\t\t\t\tbBlocked = aNewsAndPagesPanel.length ? await this.checkPagesBlocked(aNewsAndPagesPanel) : false;\n\t\t\t} else if (element instanceof ToDosContainer) {\n\t\t\t\tbBlocked = this.checkToDoBlocked(element);\n\t\t\t}\n\n\t\t\tthis._aOrderedSections?.forEach((oElementItem) => {\n\t\t\t\tif (oElementItem.completeId === sId) {\n\t\t\t\t\toElementItem.blocked = bBlocked;\n\t\t\t\t\toElementItem.visible = element.getVisible();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Check whether My Interest section is blocked or not\n\t * @private\n\t */\n\tprivate async checkPagesBlocked(aNewsAndPagesPanel: BasePanel[]): Promise<boolean> {\n\t\tfor (const oPanel of aNewsAndPagesPanel) {\n\t\t\tif (oPanel instanceof PagePanel) {\n\t\t\t\t// find if user has any pages accessible\n\t\t\t\tconst aPages = (await oPanel.getUserAvailablePages()) || [];\n\t\t\t\tthis._pagesAvailable = aPages.length > 0;\n\t\t\t}\n\t\t}\n\t\t//if user has no available pages and no news feed, then block the section\n\t\tif (!this._pagesAvailable && !this._isCustomNews) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Check whether For Me Today section is blocked or not\n\t * @private\n\t */\n\tprivate checkToDoBlocked(toDoContainer: BaseContainer): boolean {\n\t\tif (!toDoContainer.getVisible()) {\n\t\t\tconst panels = toDoContainer.getContent();\n\t\t\tif (panels.length === 0) {\n\t\t\t\tthis._toDoAccessible = false;\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Sets up the key user settings dialog for the layout.\n\t *\n\t * @private\n\t */\n\tprivate _setupKeyUserSettingsDialog(): void {\n\t\tconst keyUserSettingsDialog = this.getAggregation(\"keyUserSettingsDialog\") as BaseSettingsDialog;\n\t\tif (!keyUserSettingsDialog) {\n\t\t\tconst defaultKeyUserSettingsDialog = new KeyUserSettingsDialog(`${this.getId()}-keyUser-settings-dialog`);\n\n\t\t\t// Add Key User Layout Settings Panel\n\t\t\tconst keyUserLayoutSettingsPanel = new KeyUserLayoutSettingsPanel(`${this.getId()}-keyUser-layout-settings`);\n\t\t\tkeyUserLayoutSettingsPanel.setAssociation(\"panel\", this);\n\t\t\tdefaultKeyUserSettingsDialog.addPanel(keyUserLayoutSettingsPanel);\n\n\t\t\t// Add News and Pages Settings Panel If News and Pages Container is available\n\t\t\t(this.getItems() || []).forEach((container: BaseContainer) => {\n\t\t\t\tif (container instanceof NewsAndPagesContainer) {\n\t\t\t\t\tconst keyUserNewsPagesSettingsPanel = new KeyUserNewsPagesSettingsPanel(`${this.getId()}-keyUser-news-pages-settings`);\n\t\t\t\t\t// Set any panel of the containet to the settings panel as association\n\t\t\t\t\tkeyUserNewsPagesSettingsPanel.setAssociation(\"panel\", container.getContent()?.[0]);\n\t\t\t\t\tdefaultKeyUserSettingsDialog.addPanel(keyUserNewsPagesSettingsPanel);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.setAggregation(\"keyUserSettingsDialog\", defaultKeyUserSettingsDialog);\n\t\t}\n\t}\n\n\t/**\n\t * Return the pages availability value\n\t * @private\n\t */\n\tpublic getpagesAvailable(): boolean {\n\t\treturn this._pagesAvailable;\n\t}\n\n\t/**\n\t * Return the To-Dos availability value\n\t * @private\n\t */\n\tpublic isToDoAccessible(): boolean {\n\t\treturn this._toDoAccessible;\n\t}\n\n\t/**\n\t * Return whether customNews available or not\n\t */\n\tpublic customNewAvailable(): boolean {\n\t\treturn this._isCustomNews;\n\t}\n\n\t/**\n\t * Returns the set of sections present within the layout\n\t *\n\t * @private\n\t */\n\tpublic getSections(): IElement[] {\n\t\treturn this._aOrderedSections!;\n\t}\n\n\t/**\n\t * Sets the sections present within the layout\n\t *\n\t * @private\n\t */\n\tpublic setSections(sections: IElement[]): void {\n\t\tthis._aOrderedSections = sections;\n\t}\n\n\t/**\n\t * Resets the ordered sections of the layout.\n\t *\n\t * @private\n\t */\n\tpublic resetSections(): void {\n\t\tthis._prepareLayoutData();\n\t}\n\n\t/**\n\t * Sets up the content addition dialog for the layout.\n\t *\n\t * @private\n\t */\n\tprivate _setupContentAdditionDialog(): void {\n\t\tlet contentAdditionDialog = this.getAggregation(\"contentAdditionDialog\") as ContentAdditionDialog;\n\t\tif (!contentAdditionDialog) {\n\t\t\tcontentAdditionDialog = new ContentAdditionDialog(`${this.getId()}-content-addition-dialog`);\n\t\t\tthis.setAggregation(\"contentAdditionDialog\", contentAdditionDialog);\n\t\t}\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Layout.js","names":["sap","ui","define","Log","Element","S4MyHome","Container","__AdvancedSettingsPanel","__BaseLayout","__BaseLayoutRenderer","__ContentAdditionDialog","__InsightsCardsSettingsPanel","__InsightsTilesSettingsPanel","__KeyUserLayoutSettingsPanel","__KeyUserNewsPagesSettingsPanel","__KeyUserSettingsDialog","__LayoutSettingsPanel","__NewsContainer","__NewsSettingsPanel","__NoDataContainer","__PagePanel","__PageSettingsPanel","__SettingsDialog","__ToDosContainer","___utils_Constants","___utils_DataFormatUtils","___utils_Device","___utils_PerformanceUtils","__PersonalisationUtils","_interopRequireDefault","obj","__esModule","default","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","then","observer","prototype","onFulfilled","onRejected","result","callback","e","_this","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","length","AdvancedSettingsPanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","BaseLayout","_catch","recover","BaseLayoutRenderer","ContentAdditionDialog","InsightsCardsSettingsPanel","InsightsTilesSettingsPanel","KeyUserLayoutSettingsPanel","KeyUserNewsPagesSettingsPanel","KeyUserSettingsDialog","LayoutSettingsPanel","NewsContainer","NewsSettingsPanel","NoDataContainer","PagePanel","PageSettingsPanel","SettingsDialog","ToDosContainer","SETTINGS_PANELS_KEYS","recycleId","calculateDeviceType","DeviceType","setupPerformanceTracking","PersonalisationUtils","Layout","extend","renderer","metadata","designtime","constructor","_constructor","id","settings","BaseLayout.prototype.constructor.call","_shellUserActions","_isDefaultSettingsDialog","_customNoDataContainerPresent","_activeInstance","init","_init","BaseLayout.prototype.init.call","setProperty","_addUserActions","Promise","resolve","_temp3","getVisible","_userActionsAdded","userActions","icon","text","_i18nBundle","getText","tooltip","press","openSettingsDialog","getServiceAsync","extensionService","_temp2","toggleUserActions","event","show","getParameter","forEach","userAction","showOnHome","hideOnHome","attachRouteMatched","_temp","action","createUserAction","controlType","shellUserAction","error","warning","Error","message","_openSettingsDialog","selectedKey","context","_this2","settingsDialog","getAggregation","getPanels","_getSettingsPanels","_addPanelsToSettingsDialog","_calculateSectionsState","BaseLayout.prototype.openSettingsDialog.call","closeSettingsDialog","_closeSettingsDialog","close","onBeforeRendering","_onBeforeRendering","_this3","BaseLayout.prototype.onBeforeRendering.call","_setupSettingsDialog","_setupContentAdditionDialog","persContainerId","getProperty","setPersContainerId","getNoDataContainer","_aOrderedSections","setTimeout","isDestroyStarted","_prepareLayoutData","_setupKeyUserSettingsDialog","allPanels","getItems","container","setAssociation","getContent","panel","panelEnableSettings","undefined","enableSettings","defaultSettingsDialog","_getDefaultSettingsDialog","setSettingsDialog","getId","settingsPanel","_getDefaultSettingsPanel","addPanel","sortedPanels","_sortPanels","removeAllPanels","insertPanel","_getLayoutSettingsPanel","_getAdvancedSettingsPanel","panelClassName","getMetadata","getName","settingsPanels","layoutSettingsPanel","advancedSettingsPanel","indexOf","_addSettingsPanel","panels","Object","keys","map","key","find","filter","Boolean","_advancedSettingsPanel","_layoutSettingsPanel","_getNoDataContainer","_noDataContainer","item","setVisible","hasVisibleSection","isLayoutExpanded","aOrderedElements","element","getElementById","completeId","aElements","aElementMap","isSideBySideLayoutActive","compositeId","hasStyleClass","some","otherElement","deviceType","Mobile","Tablet","sId","title","getTooltip","elementVisible","elementCustomSettings","getCustomSettings","sContainerType","blocked","visible","toggleStyleClass","document","classList","toggle","setNoDataContainerVisibility","_setNoDataContainerVisibility","contentVisible","noDataContainer","insertItem","removeItem","_this4","aSettingsPanel","_isCustomNews","oSettingsPanel","resetImportModel","setSectionDetails","_setSectionDetails","_this5","elementArray","_temp7","_temp6","oElementItem","bBlocked","_temp5","_temp4","_this5$checkPagesBloc","aNewsAndPagesPanel","_aNewsAndPagesPanel$l","checkPagesBlocked","checkToDoBlocked","_checkPagesBlocked","_this6","_temp0","_pagesAvailable","_temp9","oPanel","_temp8","getUserAvailablePages","aPages","_checkToDoBlocked","toDoContainer","_toDoAccessible","keyUserSettingsDialog","defaultKeyUserSettingsDialog","keyUserLayoutSettingsPanel","keyUserNewsPagesSettingsPanel","setAggregation","getpagesAvailable","_getpagesAvailable","isToDoAccessible","_isToDoAccessible","customNewAvailable","_customNewAvailable","getSections","_getSections","setSections","_setSections","sections","resetSections","_resetSections","contentAdditionDialog","onAfterRendering","_onAfterRendering","BaseLayout.prototype.onAfterRendering.call"],"sources":["Layout.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport { Event } from \"jquery\";\nimport Log from \"sap/base/Log\";\nimport UI5Event from \"sap/ui/base/Event\";\nimport Element, { MetadataOptions } from \"sap/ui/core/Element\";\nimport S4MyHome from \"sap/ushell/api/S4MyHome\";\nimport Container from \"sap/ushell/Container\";\nimport Extension from \"sap/ushell/services/Extension\";\nimport Item from \"sap/ushell/services/Extension/Item\";\nimport AdvancedSettingsPanel from \"./AdvancedSettingsPanel\";\nimport BaseContainer from \"./BaseContainer\";\nimport type { $BaseLayoutSettings } from \"./BaseLayout\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseLayoutRenderer from \"./BaseLayoutRenderer\";\nimport BasePanel from \"./BasePanel\";\nimport BaseSettingsDialog from \"./BaseSettingsDialog\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport InsightsCardsSettingsPanel from \"./InsightsCardsSettingsPanel\";\nimport InsightsTilesSettingsPanel from \"./InsightsTilesSettingsPanel\";\nimport KeyUserLayoutSettingsPanel from \"./KeyUserLayoutSettingsPanel\";\nimport KeyUserNewsPagesSettingsPanel from \"./KeyUserNewsPagesSettingsPanel\";\nimport KeyUserSettingsDialog from \"./KeyUserSettingsDialog\";\nimport LayoutSettingsPanel from \"./LayoutSettingsPanel\";\nimport NewsContainer from \"./NewsContainer\";\nimport NewsSettingsPanel from \"./NewsSettingsPanel\";\nimport NoDataContainer from \"./NoDataContainer\";\nimport PagePanel from \"./PagePanel\";\nimport PageSettingsPanel from \"./PageSettingsPanel\";\nimport SettingsDialog from \"./SettingsDialog\";\nimport ToDosContainer from \"./ToDosContainer\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { calculateDeviceType, DeviceType } from \"./utils/Device\";\nimport { setupPerformanceTracking } from \"./utils/PerformanceUtils\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\n\ninterface IElement {\n\tcompleteId: string;\n\tsContainerType: string;\n\tblocked: boolean;\n\tvisible: boolean;\n\ttitle: string;\n\ttext: string;\n}\n\nexport interface UserActionProperties {\n\ticon: string;\n\ttext: string;\n\ttooltip: string;\n\tpress: () => void;\n}\n\n/**\n *\n * Layout class for the My Home layout.\n *\n * @extends BaseLayout\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.Layout\n */\nexport default class Layout extends BaseLayout {\n\tprivate _layoutSettingsPanel!: LayoutSettingsPanel;\n\tprivate _advancedSettingsPanel!: AdvancedSettingsPanel;\n\tprivate _isCustomNews!: boolean;\n\tprivate _pagesAvailable!: boolean;\n\tprivate _toDoAccessible!: boolean;\n\tprivate _aOrderedSections!: IElement[] | undefined;\n\tprivate _noDataContainer!: NoDataContainer;\n\tprivate _shellUserActions: Item[] = [];\n\tprivate static _userActionsAdded: boolean = false;\n\tprivate _isDefaultSettingsDialog: boolean = false;\n\tprivate _customNoDataContainerPresent: boolean = true;\n\tprivate static _activeInstance: Layout | null = null;\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tdesigntime: \"sap/cux/home/designtime/Layout.designtime\"\n\t};\n\tstatic renderer: typeof BaseLayoutRenderer = BaseLayoutRenderer;\n\n\t/**\n\t * Constructor for a new layout.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $BaseLayoutSettings) {\n\t\tsuper(id, settings);\n\t\tLayout._activeInstance = this; // mark the last created instance\n\t}\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @async\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup layout\n\t\tthis.setProperty(\"enableSettings\", true);\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t}\n\n\t/**\n\t * Adds all user actions to the Fiori launchpad.\n\t *\n\t * @private\n\t */\n\tprivate async _addUserActions() {\n\t\ttry {\n\t\t\tif (this.getVisible() && !Layout._userActionsAdded) {\n\t\t\t\tLayout._userActionsAdded = true;\n\n\t\t\t\t// Configure User Actions\n\t\t\t\tconst userActions: UserActionProperties[] = [\n\t\t\t\t\t{\n\t\t\t\t\t\ticon: \"sap-icon://edit\",\n\t\t\t\t\t\ttext: this._i18nBundle.getText(\"myHomeSettings\") as string,\n\t\t\t\t\t\ttooltip: this._i18nBundle.getText(\"myHomeSettings\") as string,\n\t\t\t\t\t\tpress: () => {\n\t\t\t\t\t\t\tvoid Layout._activeInstance?.openSettingsDialog();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t];\n\n\t\t\t\t// Attach User Actions\n\t\t\t\tconst extensionService = await Container.getServiceAsync<Extension>(\"Extension\");\n\t\t\t\tfor (let action of userActions) {\n\t\t\t\t\tconst shellUserAction = await extensionService.createUserAction(action, {\n\t\t\t\t\t\tcontrolType: \"sap.ushell.ui.launchpad.ActionItem\"\n\t\t\t\t\t});\n\t\t\t\t\tshellUserAction.showOnHome();\n\t\t\t\t\tthis._shellUserActions.push(shellUserAction);\n\t\t\t\t}\n\n\t\t\t\t// Toggle User Actions on Page Change\n\t\t\t\tconst toggleUserActions = (event: UI5Event<{ isMyHomeRoute: boolean }>) => {\n\t\t\t\t\tconst show = event.getParameter(\"isMyHomeRoute\");\n\t\t\t\t\tthis._shellUserActions.forEach(function (userAction) {\n\t\t\t\t\t\tif (show) {\n\t\t\t\t\t\t\tuserAction.showOnHome();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tuserAction.hideOnHome();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t\tS4MyHome.attachRouteMatched({}, toggleUserActions, this);\n\t\t\t}\n\t\t} catch (error: unknown) {\n\t\t\tLog.warning(\"Unable to add User Actions\", error instanceof Error ? error.message : \"\");\n\t\t}\n\t}\n\n\t/**\n\t * Opens the settings dialog for the layout.\n\t * Overriden from the BaseLayout to ensure of all panels\n\t * to the dialog if not already added.\n\t *\n\t * @private\n\t * @param {string} selectedKey The key of the panel to navigate to\n\t * @override\n\t */\n\tpublic async openSettingsDialog(selectedKey: string = \"\", context?: object): Promise<void> {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog;\n\t\tif (settingsDialog.getPanels().length !== this._getSettingsPanels().length) {\n\t\t\tthis._addPanelsToSettingsDialog();\n\t\t}\n\t\tawait this._calculateSectionsState();\n\n\t\tsuper.openSettingsDialog(selectedKey, context);\n\t}\n\n\t/**\n\t * Close Settings Dialog\n\t *\n\t * @private\n\t *\n\t */\n\tpublic closeSettingsDialog(): void {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog;\n\t\tsettingsDialog?.close();\n\t}\n\n\t/**\n\t * onBeforeRendering lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic async onBeforeRendering(event: Event): Promise<void> {\n\t\tsuper.onBeforeRendering(event);\n\n\t\t//setup common layout features\n\t\tthis._setupSettingsDialog();\n\n\t\t//setup content addition dialog\n\t\tthis._setupContentAdditionDialog();\n\n\t\t// If PersContainerId provided set to PersonalisationUtils\n\t\tconst persContainerId = this.getProperty(\"persContainerId\") as string;\n\t\tif (persContainerId) {\n\t\t\tPersonalisationUtils.setPersContainerId(persContainerId);\n\t\t}\n\t\tthis.getNoDataContainer();\n\t\t//prepare layout data, if not already done\n\t\tif (!this._aOrderedSections) {\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (!this.isDestroyStarted()) {\n\t\t\t\t\tthis._prepareLayoutData();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\t// Setup KeyUserPersonalization\n\t\tthis._setupKeyUserSettingsDialog();\n\n\t\t// Initialize Performance Metrics\n\t\tawait setupPerformanceTracking(this);\n\n\t\t//configure user action button if the layout is in an ushell environment\n\t\tawait this._addUserActions();\n\t}\n\n\t/**\n\t * Sets up the settings dialog for the layout.\n\t *\n\t * @private\n\t */\n\tprivate _setupSettingsDialog(): void {\n\t\tconst allPanels: BasePanel[] = [];\n\t\t(this.getItems() || []).forEach((container) => {\n\t\t\t//link container to layout\n\t\t\tcontainer.setAssociation(\"layout\", this);\n\n\t\t\t//enable settings for all panels\n\t\t\tcontainer.getContent().forEach((panel) => {\n\t\t\t\tallPanels.push(panel);\n\t\t\t\tconst panelEnableSettings = panel.getProperty(\"enableSettings\") as boolean;\n\t\t\t\tpanel.setProperty(\"enableSettings\", panelEnableSettings !== undefined ? panelEnableSettings : true);\n\t\t\t});\n\t\t});\n\n\t\tconst enableSettings = this.getProperty(\"enableSettings\") as boolean;\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog | undefined;\n\t\tif (!settingsDialog) {\n\t\t\tthis._isDefaultSettingsDialog = true;\n\n\t\t\t// If settings dialog is not provided and settings is enabled, create a default settings dialog\n\t\t\tif (enableSettings) {\n\t\t\t\tconst defaultSettingsDialog = this._getDefaultSettingsDialog(allPanels);\n\t\t\t\tthis.setSettingsDialog(defaultSettingsDialog);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Get default settings dialog\n\t * @private\n\t * @returns {BaseSettingsDialog} Default settings dialog\n\t */\n\tprivate _getDefaultSettingsDialog(allPanels: BasePanel[]): BaseSettingsDialog {\n\t\tconst defaultSettingsDialog = new SettingsDialog(`${this.getId()}-settings-dialog`);\n\n\t\tallPanels.forEach((panel) => {\n\t\t\tconst settingsPanel = this._getDefaultSettingsPanel(panel);\n\t\t\tif (settingsPanel) {\n\t\t\t\tdefaultSettingsDialog.addPanel(settingsPanel);\n\t\t\t}\n\t\t});\n\n\t\t//sort all panels and add them to the settings dialog\n\t\tconst sortedPanels = this._sortPanels(defaultSettingsDialog.getPanels());\n\t\tdefaultSettingsDialog.removeAllPanels();\n\t\tsortedPanels.forEach((panel) => defaultSettingsDialog.addPanel(panel));\n\n\t\tdefaultSettingsDialog.insertPanel(this._getLayoutSettingsPanel(), 0);\n\t\tdefaultSettingsDialog.addPanel(this._getAdvancedSettingsPanel());\n\n\t\treturn defaultSettingsDialog;\n\t}\n\n\t/**\n\t * Get default Settings Panel\n\t *\n\t * @private\n\t */\n\n\tprivate _getDefaultSettingsPanel(panel: BasePanel): BaseSettingsPanel | undefined {\n\t\tlet settingsPanel: BaseSettingsPanel | undefined;\n\t\tconst panelClassName = panel.getMetadata().getName();\n\t\tswitch (panelClassName) {\n\t\t\tcase \"sap.cux.home.NewsPanel\":\n\t\t\t\tsettingsPanel = new NewsSettingsPanel(`${panel.getId()}-news-settings`);\n\t\t\t\tbreak;\n\t\t\tcase \"sap.cux.home.PagePanel\":\n\t\t\t\tsettingsPanel = new PageSettingsPanel(`${panel.getId()}-page-settings`);\n\t\t\t\tbreak;\n\t\t\tcase \"sap.cux.home.TilesPanel\":\n\t\t\t\tsettingsPanel = new InsightsTilesSettingsPanel(`${panel.getId()}-tiles-settings`);\n\t\t\t\tbreak;\n\t\t\tcase \"sap.cux.home.CardsPanel\":\n\t\t\t\tsettingsPanel = new InsightsCardsSettingsPanel(`${panel.getId()}-cards-settings`);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tbreak;\n\t\t}\n\t\tsettingsPanel?.setAssociation(\"panel\", panel);\n\t\treturn settingsPanel;\n\t}\n\n\t/**\n\t * Adds all settings panels to the settings dialog, including\n\t * the layout settings panel and advanced settings panel.\n\t *\n\t * @private\n\t */\n\tprivate _addPanelsToSettingsDialog(): void {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as BaseSettingsDialog;\n\n\t\t//sort all panels and add them to the settings dialog\n\t\tconst sortedPanels = this._sortPanels(settingsDialog.getPanels());\n\t\tsettingsDialog.removeAllPanels();\n\t\tsortedPanels.forEach((panel) => settingsDialog.addPanel(panel));\n\n\t\t// Layout Settings should be displayed only if no settings dialog is provided\n\t\tif (this._isDefaultSettingsDialog) {\n\t\t\tconst settingsPanels = settingsDialog.getPanels();\n\t\t\tconst layoutSettingsPanel = this._getLayoutSettingsPanel();\n\t\t\tconst advancedSettingsPanel = this._getAdvancedSettingsPanel();\n\n\t\t\tif (settingsPanels.indexOf(layoutSettingsPanel) !== 0) {\n\t\t\t\tsettingsDialog.insertPanel(layoutSettingsPanel, 0);\n\t\t\t}\n\n\t\t\tif (settingsPanels.indexOf(advancedSettingsPanel) !== settingsPanels.length - 1) {\n\t\t\t\tsettingsDialog.addPanel(advancedSettingsPanel);\n\t\t\t}\n\t\t}\n\n\t\tthis._addSettingsPanel(settingsDialog.getPanels(), true);\n\t}\n\n\t/**\n\t * Sorts settings panels based on a predefined order.\n\t *\n\t * @private\n\t * @returns {BaseSettingsPanel[]} Sorted settings panels.\n\t */\n\tprivate _sortPanels(panels: BaseSettingsPanel[]): BaseSettingsPanel[] {\n\t\treturn Object.keys(SETTINGS_PANELS_KEYS)\n\t\t\t.map((key) => panels.find((panel) => panel?.getProperty(\"key\") === key))\n\t\t\t.filter(Boolean) as BaseSettingsPanel[];\n\t}\n\n\t/**\n\t * Retrieves the advanced settings panel associated with the layout.\n\t *\n\t * @private\n\t * @returns {AdvancedSettingsPanel} The advanced settings panel.\n\t */\n\tprivate _getAdvancedSettingsPanel(): AdvancedSettingsPanel {\n\t\tif (!this._advancedSettingsPanel) {\n\t\t\tthis._advancedSettingsPanel = new AdvancedSettingsPanel(`${this.getId()}-advanced-settings`);\n\t\t\tthis._advancedSettingsPanel.setAssociation(\"panel\", this);\n\t\t}\n\n\t\treturn this._advancedSettingsPanel;\n\t}\n\n\t/**\n\t * Retrieves the layout settings panel associated with the layout.\n\t *\n\t * @private\n\t * @returns {LayoutSettingsPanel} The layout settings panel.\n\t */\n\tprivate _getLayoutSettingsPanel(): LayoutSettingsPanel {\n\t\tif (!this._layoutSettingsPanel) {\n\t\t\tthis._layoutSettingsPanel = new LayoutSettingsPanel(`${this.getId()}-layout-settings`);\n\t\t\tthis._layoutSettingsPanel.setAssociation(\"panel\", this);\n\t\t}\n\n\t\treturn this._layoutSettingsPanel;\n\t}\n\n\t/**\n\t * Setup of no data container\n\t *\n\t * @private\n\t * @returns {NoDataContainer} No data container\n\t */\n\tprivate getNoDataContainer(): NoDataContainer {\n\t\tif (!this._noDataContainer) {\n\t\t\tthis._noDataContainer = this.getItems().find((item) => item instanceof NoDataContainer) as NoDataContainer;\n\n\t\t\t// if no data container is already present, use it\n\t\t\tif (!this._noDataContainer) {\n\t\t\t\tthis._customNoDataContainerPresent = false;\n\t\t\t\tthis._noDataContainer = new NoDataContainer(recycleId(`${this.getId()}-noDataContainer`));\n\t\t\t}\n\t\t\tthis._noDataContainer.setVisible(false);\n\t\t}\n\t\treturn this._noDataContainer;\n\t}\n\t/**\n\t * Prepares the layout data.\n\t *\n\t * @private\n\t */\n\tprivate _prepareLayoutData(): void {\n\t\tlet hasVisibleSection = false;\n\t\tconst isLayoutExpanded = this.getProperty(\"expanded\") as boolean;\n\t\tconst aOrderedElements =\n\t\t\tthis._aOrderedSections?.map((element) => Element.getElementById(element.completeId) as BaseContainer) || [];\n\t\tconst aElements = isLayoutExpanded && aOrderedElements.length ? aOrderedElements : this.getItems();\n\t\t// set aelementsMap as elementMap[] | [];\n\t\tconst aElementMap: IElement[] = [];\n\n\t\t/**\n\t\t * if both containers are present and visible, and device is desktop and larger,\n\t\t * then add class for side by side layout flag to check if side by side layout class is applied\n\t\t */\n\t\tlet isSideBySideLayoutActive = false;\n\t\taElements.forEach((element: BaseContainer) => {\n\t\t\tconst compositeId = element.getProperty(\"compositeId\") as string | null;\n\t\t\t/**\n\t\t\t * if the element's composite id same with anyother element and both are visible,\n\t\t\t * then only make isSideBySideLayoutActive true for device which are not desktop or tablet\n\t\t\t */\n\t\t\tif (\n\t\t\t\tcompositeId &&\n\t\t\t\telement.hasStyleClass(`${compositeId}`) &&\n\t\t\t\taElements.some(\n\t\t\t\t\t(otherElement) =>\n\t\t\t\t\t\totherElement !== element &&\n\t\t\t\t\t\totherElement.getProperty(\"compositeId\") === compositeId &&\n\t\t\t\t\t\totherElement.getVisible() &&\n\t\t\t\t\t\telement.getVisible()\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tconst deviceType = calculateDeviceType();\n\t\t\t\t//devices which are mobile or tablet should not get side by side layout\n\t\t\t\tif (!(deviceType === DeviceType.Mobile || deviceType === DeviceType.Tablet)) {\n\t\t\t\t\tisSideBySideLayoutActive = true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tisSideBySideLayoutActive = isSideBySideLayoutActive ? true : false;\n\t\t\t}\n\t\t\t// Exclude NoDataContainer from the sections list\n\t\t\tif (element !== this.getNoDataContainer()) {\n\t\t\t\tconst sId = element.getId();\n\n\t\t\t\t//if no title set for container , then layout setting should show tooltip as title within the settings dialog\n\t\t\t\tlet title = element.getProperty(\"title\") as string;\n\t\t\t\tif (!title) {\n\t\t\t\t\ttitle = element.getTooltip() as string;\n\t\t\t\t}\n\t\t\t\tconst elementVisible = element.getVisible();\n\t\t\t\tconst elementCustomSettings = element.getCustomSettings();\n\t\t\t\taElementMap.push({\n\t\t\t\t\tcompleteId: sId,\n\t\t\t\t\tsContainerType: element.getMetadata().getName(),\n\t\t\t\t\tblocked: false,\n\t\t\t\t\tvisible: element.getProperty(\"visible\") as boolean,\n\t\t\t\t\ttitle: elementCustomSettings.title || title,\n\t\t\t\t\ttext: elementCustomSettings.text\n\t\t\t\t});\n\t\t\t\tif (elementVisible) {\n\t\t\t\t\thasVisibleSection = true;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tthis.toggleStyleClass(\"sapCuxLayoutFlexItems\", isSideBySideLayoutActive);\n\t\tconst container = document.getElementById(`${this.getId()}-layout-container`);\n\t\tif (container) {\n\t\t\tcontainer.classList.toggle(\"sapCuxLayoutFlexItems\", isSideBySideLayoutActive);\n\t\t}\n\n\t\tthis._aOrderedSections = aElementMap;\n\t\tif (!this.getProperty(\"expanded\")) {\n\t\t\tthis.setNoDataContainerVisibility(!hasVisibleSection);\n\t\t}\n\t}\n\n\t/**\n\t * Sets the visibility of the no data container\n\t *\n\t * @private\n\t */\n\tpublic setNoDataContainerVisibility(contentVisible: boolean): void {\n\t\tconst noDataContainer = this.getNoDataContainer();\n\t\tnoDataContainer?.setVisible(contentVisible);\n\t\tif (!this._customNoDataContainerPresent) {\n\t\t\tif (contentVisible) {\n\t\t\t\tthis.insertItem(noDataContainer, 0);\n\t\t\t} else {\n\t\t\t\tthis.removeItem(noDataContainer);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Calculates the state of the sections based on the layout's content.\n\t * @private\n\t */\n\tpublic async _calculateSectionsState(): Promise<void> {\n\t\tconst settingsDialog = this.getAggregation(\"settingsDialog\") as SettingsDialog;\n\t\tconst aSettingsPanel = settingsDialog.getPanels();\n\t\tthis._isCustomNews = false;\n\t\taSettingsPanel.forEach((oSettingsPanel: BaseSettingsPanel) => {\n\t\t\tif (oSettingsPanel instanceof NewsSettingsPanel) {\n\t\t\t\tthis._isCustomNews = true;\n\t\t\t}\n\t\t\tif (oSettingsPanel instanceof AdvancedSettingsPanel) {\n\t\t\t\toSettingsPanel.resetImportModel(true);\n\t\t\t}\n\t\t});\n\t\tawait this.setSectionDetails();\n\t}\n\n\t/**\n\t * Sets the section details based on the layout's content.\n\t * @private\n\t */\n\tprivate async setSectionDetails(): Promise<void> {\n\t\tconst elementArray = this.getItems();\n\t\tfor (const element of elementArray) {\n\t\t\tlet bBlocked = false;\n\t\t\tconst sId = element.getId();\n\t\t\t//check news & apps visibility\n\t\t\tif (element instanceof NewsContainer && element.getVisible()) {\n\t\t\t\tconst aNewsAndPagesPanel = element.getContent();\n\t\t\t\t//check whether user has access to pages\n\t\t\t\tbBlocked = aNewsAndPagesPanel.length ? await this.checkPagesBlocked(aNewsAndPagesPanel) : false;\n\t\t\t} else if (element instanceof ToDosContainer) {\n\t\t\t\tbBlocked = this.checkToDoBlocked(element);\n\t\t\t}\n\n\t\t\tthis._aOrderedSections?.forEach((oElementItem) => {\n\t\t\t\tif (oElementItem.completeId === sId) {\n\t\t\t\t\toElementItem.blocked = bBlocked;\n\t\t\t\t\toElementItem.visible = element.getVisible();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Check whether My Interest section is blocked or not\n\t * @private\n\t */\n\tprivate async checkPagesBlocked(aNewsAndPagesPanel: BasePanel[]): Promise<boolean> {\n\t\tfor (const oPanel of aNewsAndPagesPanel) {\n\t\t\tif (oPanel instanceof PagePanel) {\n\t\t\t\t// find if user has any pages accessible\n\t\t\t\tconst aPages = (await oPanel.getUserAvailablePages()) || [];\n\t\t\t\tthis._pagesAvailable = aPages.length > 0;\n\t\t\t}\n\t\t}\n\t\t//if user has no available pages and no news feed, then block the section\n\t\tif (!this._pagesAvailable && !this._isCustomNews) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Check whether For Me Today section is blocked or not\n\t * @private\n\t */\n\tprivate checkToDoBlocked(toDoContainer: BaseContainer): boolean {\n\t\tif (!toDoContainer.getVisible()) {\n\t\t\tconst panels = toDoContainer.getContent();\n\t\t\tif (panels.length === 0) {\n\t\t\t\tthis._toDoAccessible = false;\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Sets up the key user settings dialog for the layout.\n\t *\n\t * @private\n\t */\n\tprivate _setupKeyUserSettingsDialog(): void {\n\t\tconst keyUserSettingsDialog = this.getAggregation(\"keyUserSettingsDialog\") as BaseSettingsDialog;\n\t\tif (!keyUserSettingsDialog) {\n\t\t\tconst defaultKeyUserSettingsDialog = new KeyUserSettingsDialog(`${this.getId()}-keyUser-settings-dialog`);\n\n\t\t\t// Add Key User Layout Settings Panel\n\t\t\tconst keyUserLayoutSettingsPanel = new KeyUserLayoutSettingsPanel(`${this.getId()}-keyUser-layout-settings`);\n\t\t\tkeyUserLayoutSettingsPanel.setAssociation(\"panel\", this);\n\t\t\tdefaultKeyUserSettingsDialog.addPanel(keyUserLayoutSettingsPanel);\n\n\t\t\t// Add News and Pages Settings Panel If News and Pages Container is available\n\t\t\t(this.getItems() || []).forEach((container: BaseContainer) => {\n\t\t\t\tif (container instanceof NewsContainer) {\n\t\t\t\t\tconst keyUserNewsPagesSettingsPanel = new KeyUserNewsPagesSettingsPanel(`${this.getId()}-keyUser-news-pages-settings`);\n\t\t\t\t\t// Set any panel of the containet to the settings panel as association\n\t\t\t\t\tkeyUserNewsPagesSettingsPanel.setAssociation(\"panel\", container.getContent()?.[0]);\n\t\t\t\t\tdefaultKeyUserSettingsDialog.addPanel(keyUserNewsPagesSettingsPanel);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.setAggregation(\"keyUserSettingsDialog\", defaultKeyUserSettingsDialog);\n\t\t}\n\t}\n\n\t/**\n\t * Return the pages availability value\n\t * @private\n\t */\n\tpublic getpagesAvailable(): boolean {\n\t\treturn this._pagesAvailable;\n\t}\n\n\t/**\n\t * Return the To-Dos availability value\n\t * @private\n\t */\n\tpublic isToDoAccessible(): boolean {\n\t\treturn this._toDoAccessible;\n\t}\n\n\t/**\n\t * Return whether customNews available or not\n\t */\n\tpublic customNewAvailable(): boolean {\n\t\treturn this._isCustomNews;\n\t}\n\n\t/**\n\t * Returns the set of sections present within the layout\n\t *\n\t * @private\n\t */\n\tpublic getSections(): IElement[] {\n\t\treturn this._aOrderedSections!;\n\t}\n\n\t/**\n\t * Sets the sections present within the layout\n\t *\n\t * @private\n\t */\n\tpublic setSections(sections: IElement[]): void {\n\t\tthis._aOrderedSections = sections;\n\t}\n\n\t/**\n\t * Resets the ordered sections of the layout.\n\t *\n\t * @private\n\t */\n\tpublic resetSections(): void {\n\t\tthis._prepareLayoutData();\n\t}\n\n\t/**\n\t * Sets up the content addition dialog for the layout.\n\t *\n\t * @private\n\t */\n\tprivate _setupContentAdditionDialog(): void {\n\t\tlet contentAdditionDialog = this.getAggregation(\"contentAdditionDialog\") as ContentAdditionDialog;\n\t\tif (!contentAdditionDialog) {\n\t\t\tcontentAdditionDialog = new ContentAdditionDialog(`${this.getId()}-content-addition-dialog`);\n\t\t\tthis.setAggregation(\"contentAdditionDialog\", contentAdditionDialog);\n\t\t}\n\t}\n\n\tpublic onAfterRendering(): void {\n\t\tsuper.onAfterRendering();\n\t\tif (!this._aOrderedSections) {\n\t\t\tthis._prepareLayoutData();\n\t\t}\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -26,7 +26,7 @@ import KeyUserLayoutSettingsPanel from "./KeyUserLayoutSettingsPanel";
26
26
  import KeyUserNewsPagesSettingsPanel from "./KeyUserNewsPagesSettingsPanel";
27
27
  import KeyUserSettingsDialog from "./KeyUserSettingsDialog";
28
28
  import LayoutSettingsPanel from "./LayoutSettingsPanel";
29
- import NewsAndPagesContainer from "./NewsAndPagesContainer";
29
+ import NewsContainer from "./NewsContainer";
30
30
  import NewsSettingsPanel from "./NewsSettingsPanel";
31
31
  import NoDataContainer from "./NoDataContainer";
32
32
  import PagePanel from "./PagePanel";
@@ -35,6 +35,7 @@ import SettingsDialog from "./SettingsDialog";
35
35
  import ToDosContainer from "./ToDosContainer";
36
36
  import { SETTINGS_PANELS_KEYS } from "./utils/Constants";
37
37
  import { recycleId } from "./utils/DataFormatUtils";
38
+ import { calculateDeviceType, DeviceType } from "./utils/Device";
38
39
  import { setupPerformanceTracking } from "./utils/PerformanceUtils";
39
40
  import PersonalisationUtils from "./utils/PersonalisationUtils";
40
41
 
@@ -78,9 +79,10 @@ export default class Layout extends BaseLayout {
78
79
  private _aOrderedSections!: IElement[] | undefined;
79
80
  private _noDataContainer!: NoDataContainer;
80
81
  private _shellUserActions: Item[] = [];
81
- private _userActionsAdded!: boolean;
82
+ private static _userActionsAdded: boolean = false;
82
83
  private _isDefaultSettingsDialog: boolean = false;
83
84
  private _customNoDataContainerPresent: boolean = true;
85
+ private static _activeInstance: Layout | null = null;
84
86
 
85
87
  static readonly metadata: MetadataOptions = {
86
88
  designtime: "sap/cux/home/designtime/Layout.designtime"
@@ -95,6 +97,7 @@ export default class Layout extends BaseLayout {
95
97
  */
96
98
  public constructor(id?: string, settings?: $BaseLayoutSettings) {
97
99
  super(id, settings);
100
+ Layout._activeInstance = this; // mark the last created instance
98
101
  }
99
102
 
100
103
  /**
@@ -119,8 +122,8 @@ export default class Layout extends BaseLayout {
119
122
  */
120
123
  private async _addUserActions() {
121
124
  try {
122
- if (this.getVisible() && !this._userActionsAdded) {
123
- this._userActionsAdded = true;
125
+ if (this.getVisible() && !Layout._userActionsAdded) {
126
+ Layout._userActionsAdded = true;
124
127
 
125
128
  // Configure User Actions
126
129
  const userActions: UserActionProperties[] = [
@@ -129,7 +132,7 @@ export default class Layout extends BaseLayout {
129
132
  text: this._i18nBundle.getText("myHomeSettings") as string,
130
133
  tooltip: this._i18nBundle.getText("myHomeSettings") as string,
131
134
  press: () => {
132
- void this.openSettingsDialog();
135
+ void Layout._activeInstance?.openSettingsDialog();
133
136
  }
134
137
  }
135
138
  ];
@@ -215,7 +218,11 @@ export default class Layout extends BaseLayout {
215
218
  this.getNoDataContainer();
216
219
  //prepare layout data, if not already done
217
220
  if (!this._aOrderedSections) {
218
- setTimeout(this._prepareLayoutData.bind(this));
221
+ setTimeout(() => {
222
+ if (!this.isDestroyStarted()) {
223
+ this._prepareLayoutData();
224
+ }
225
+ });
219
226
  }
220
227
 
221
228
  // Setup KeyUserPersonalization
@@ -421,7 +428,38 @@ export default class Layout extends BaseLayout {
421
428
  const aElements = isLayoutExpanded && aOrderedElements.length ? aOrderedElements : this.getItems();
422
429
  // set aelementsMap as elementMap[] | [];
423
430
  const aElementMap: IElement[] = [];
431
+
432
+ /**
433
+ * if both containers are present and visible, and device is desktop and larger,
434
+ * then add class for side by side layout flag to check if side by side layout class is applied
435
+ */
436
+ let isSideBySideLayoutActive = false;
424
437
  aElements.forEach((element: BaseContainer) => {
438
+ const compositeId = element.getProperty("compositeId") as string | null;
439
+ /**
440
+ * if the element's composite id same with anyother element and both are visible,
441
+ * then only make isSideBySideLayoutActive true for device which are not desktop or tablet
442
+ */
443
+ if (
444
+ compositeId &&
445
+ element.hasStyleClass(`${compositeId}`) &&
446
+ aElements.some(
447
+ (otherElement) =>
448
+ otherElement !== element &&
449
+ otherElement.getProperty("compositeId") === compositeId &&
450
+ otherElement.getVisible() &&
451
+ element.getVisible()
452
+ )
453
+ ) {
454
+ const deviceType = calculateDeviceType();
455
+ //devices which are mobile or tablet should not get side by side layout
456
+ if (!(deviceType === DeviceType.Mobile || deviceType === DeviceType.Tablet)) {
457
+ isSideBySideLayoutActive = true;
458
+ }
459
+ } else {
460
+ isSideBySideLayoutActive = isSideBySideLayoutActive ? true : false;
461
+ }
462
+ // Exclude NoDataContainer from the sections list
425
463
  if (element !== this.getNoDataContainer()) {
426
464
  const sId = element.getId();
427
465
 
@@ -446,6 +484,12 @@ export default class Layout extends BaseLayout {
446
484
  }
447
485
  });
448
486
 
487
+ this.toggleStyleClass("sapCuxLayoutFlexItems", isSideBySideLayoutActive);
488
+ const container = document.getElementById(`${this.getId()}-layout-container`);
489
+ if (container) {
490
+ container.classList.toggle("sapCuxLayoutFlexItems", isSideBySideLayoutActive);
491
+ }
492
+
449
493
  this._aOrderedSections = aElementMap;
450
494
  if (!this.getProperty("expanded")) {
451
495
  this.setNoDataContainerVisibility(!hasVisibleSection);
@@ -498,7 +542,7 @@ export default class Layout extends BaseLayout {
498
542
  let bBlocked = false;
499
543
  const sId = element.getId();
500
544
  //check news & apps visibility
501
- if (element instanceof NewsAndPagesContainer && element.getVisible()) {
545
+ if (element instanceof NewsContainer && element.getVisible()) {
502
546
  const aNewsAndPagesPanel = element.getContent();
503
547
  //check whether user has access to pages
504
548
  bBlocked = aNewsAndPagesPanel.length ? await this.checkPagesBlocked(aNewsAndPagesPanel) : false;
@@ -566,7 +610,7 @@ export default class Layout extends BaseLayout {
566
610
 
567
611
  // Add News and Pages Settings Panel If News and Pages Container is available
568
612
  (this.getItems() || []).forEach((container: BaseContainer) => {
569
- if (container instanceof NewsAndPagesContainer) {
613
+ if (container instanceof NewsContainer) {
570
614
  const keyUserNewsPagesSettingsPanel = new KeyUserNewsPagesSettingsPanel(`${this.getId()}-keyUser-news-pages-settings`);
571
615
  // Set any panel of the containet to the settings panel as association
572
616
  keyUserNewsPagesSettingsPanel.setAssociation("panel", container.getContent()?.[0]);
@@ -640,4 +684,11 @@ export default class Layout extends BaseLayout {
640
684
  this.setAggregation("contentAdditionDialog", contentAdditionDialog);
641
685
  }
642
686
  }
687
+
688
+ public onAfterRendering(): void {
689
+ super.onAfterRendering();
690
+ if (!this._aOrderedSections) {
691
+ this._prepareLayoutData();
692
+ }
693
+ }
643
694
  }
@@ -50,12 +50,22 @@ declare module "sap/cux/home/LayoutSettingsPanel" {
50
50
  * @returns {void}
51
51
  */
52
52
  private _switchToCollapsedViewIfRequired;
53
+ private _updateOrderedSections;
53
54
  /**
54
55
  * Method to load the sections
55
56
  *
56
57
  * @private
57
58
  */
58
59
  private _loadSections;
60
+ private addToCompositeItem;
61
+ private getLayoutListItem;
62
+ private getCompositeLayoutListItem;
63
+ /**
64
+ * Reduces the ordered sections by flattening composite items.
65
+ * @private
66
+ * @returns {IElement[]} The reduced list of ordered sections.
67
+ */
68
+ private _reduceOrderedSections;
59
69
  /**
60
70
  * Rearranges the layout elements if their order has changed.
61
71
  *
@@ -1 +1 @@
1
- {"version":3,"file":"LayoutSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/LayoutSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,kCAAkC,CAAC;IAOlD,OAAO,cAAc,MAAM,8BAA8B,CAAC;IAa1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAS3D,OAAO,iBAAiB,EAAE,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;IAS/F;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,iBAAiB;QACjE,OAAO,CAAC,YAAY,CAAS;QACtB,WAAW,EAAG,cAAc,CAAC;QACpC,OAAO,CAAC,gBAAgB,CAAc;QACtC,OAAO,CAAC,sBAAsB,CAAwB;QACtD,OAAO,CAAC,aAAa,CAAa;QAClC,OAAO,CAAC,kBAAkB,CAAmB;QAC7C,OAAO,CAAC,0BAA0B,CAAkB;QACpD,OAAO,CAAC,kBAAkB,CAAU;QACpC,OAAO,CAAC,iBAAiB,CAAiB;oBAE9B,EAAE,CAAC,EAAE,MAAM,GAAG,0BAA0B;oBACxC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,0BAA0B;QAK9D,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAEvC;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAqBnB;;;;;WAKG;gBACW,wBAAwB;QA2BtC;;;;;;WAMG;QACH,OAAO,CAAC,gCAAgC;QAYxC;;;;WAIG;gBACW,aAAa;QA6E3B;;;;WAIG;QACH,OAAO,CAAC,0BAA0B;QAkBlC;;;;;WAKG;QACH,OAAO,CAAC,WAAW;QAiBnB;;;;;WAKG;QACH,OAAO,CAAC,eAAe;QAcvB;;;;;WAKG;QACH,OAAO,CAAC,cAAc;QAkBtB;;;;WAIG;gBACW,yBAAyB;QAevC;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;QAgC3B;;;;;;WAMG;QACH,OAAO,CAAC,eAAe;QAgBvB;;;;;;WAMG;QACH,OAAO,CAAC,wBAAwB;QAgBhC;;;;WAIG;gBACW,oBAAoB;QAuDlC;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;KAmC3B;CAEA"}
1
+ {"version":3,"file":"LayoutSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/LayoutSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,kCAAkC,CAAC;IAOlD,OAAO,cAAc,MAAM,8BAA8B,CAAC;IAa1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAS3D,OAAO,iBAAiB,EAAE,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;IAU/F;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,iBAAiB;QACjE,OAAO,CAAC,YAAY,CAAS;QACtB,WAAW,EAAG,cAAc,CAAC;QACpC,OAAO,CAAC,gBAAgB,CAAc;QACtC,OAAO,CAAC,sBAAsB,CAAwB;QACtD,OAAO,CAAC,aAAa,CAAa;QAClC,OAAO,CAAC,kBAAkB,CAAmB;QAC7C,OAAO,CAAC,0BAA0B,CAAkB;QACpD,OAAO,CAAC,kBAAkB,CAAU;QACpC,OAAO,CAAC,iBAAiB,CAAiB;oBAE9B,EAAE,CAAC,EAAE,MAAM,GAAG,0BAA0B;oBACxC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,0BAA0B;QAK9D,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAEvC;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAqBnB;;;;;WAKG;gBACW,wBAAwB;QA8CtC;;;;;;WAMG;QACH,OAAO,CAAC,gCAAgC;QAqBxC,OAAO,CAAC,sBAAsB;QAmD9B;;;;WAIG;gBACW,aAAa;QA2C3B,OAAO,CAAC,kBAAkB;QAiB1B,OAAO,CAAC,iBAAiB;QA+CzB,OAAO,CAAC,0BAA0B;QAgFlC;;;;WAIG;QACH,OAAO,CAAC,sBAAsB;QAY9B;;;;WAIG;QACH,OAAO,CAAC,0BAA0B;QAwBlC;;;;;WAKG;QACH,OAAO,CAAC,WAAW;QAiBnB;;;;;WAKG;QACH,OAAO,CAAC,eAAe;QAcvB;;;;;WAKG;QACH,OAAO,CAAC,cAAc;QAkBtB;;;;WAIG;gBACW,yBAAyB;QAevC;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;QAgC3B;;;;;;WAMG;QACH,OAAO,CAAC,eAAe;QAgBvB;;;;;;WAMG;QACH,OAAO,CAAC,wBAAwB;QAgBhC;;;;WAIG;gBACW,oBAAoB;QAuJlC;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;KA0C3B;CAEA"}