@sapui5/sap.cux.home 1.141.0 → 1.143.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 (355) 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 +9 -1
  10. package/src/sap/cux/home/App.js.map +1 -1
  11. package/src/sap/cux/home/App.ts +10 -1
  12. package/src/sap/cux/home/AppsAdditionPanel.d.ts +75 -34
  13. package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
  14. package/src/sap/cux/home/AppsAdditionPanel.js +378 -179
  15. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  16. package/src/sap/cux/home/AppsAdditionPanel.ts +399 -175
  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 +32 -17
  20. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  21. package/src/sap/cux/home/AppsContainer.ts +31 -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 +2 -1
  25. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  26. package/src/sap/cux/home/BaseAppPanel.ts +4 -2
  27. package/src/sap/cux/home/BaseContainer.d.ts +8 -0
  28. package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
  29. package/src/sap/cux/home/BaseContainer.js +35 -5
  30. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  31. package/src/sap/cux/home/BaseContainer.ts +32 -5
  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 +23 -2
  41. package/src/sap/cux/home/BasePanel.js.map +1 -1
  42. package/src/sap/cux/home/BasePanel.ts +18 -1
  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 +32 -59
  49. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  50. package/src/sap/cux/home/CardsPanel.js +270 -249
  51. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  52. package/src/sap/cux/home/CardsPanel.ts +169 -181
  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 +25 -70
  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 +4 -4
  74. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  75. package/src/sap/cux/home/InsightsAdditionPanel.js +12 -9
  76. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  77. package/src/sap/cux/home/InsightsAdditionPanel.ts +11 -8
  78. package/src/sap/cux/home/InsightsTilesSettingsPanel.js +1 -1
  79. package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
  80. package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +3 -3
  81. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +3 -0
  82. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
  83. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +252 -39
  84. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
  85. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +288 -58
  86. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  87. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +11 -10
  88. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  89. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +12 -10
  90. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +2 -2
  91. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  92. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +7 -7
  93. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
  94. package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +2 -2
  95. package/src/sap/cux/home/Layout.d.ts +3 -1
  96. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  97. package/src/sap/cux/home/Layout.js +45 -8
  98. package/src/sap/cux/home/Layout.js.map +1 -1
  99. package/src/sap/cux/home/Layout.ts +55 -8
  100. package/src/sap/cux/home/LayoutSettingsPanel.d.ts +10 -0
  101. package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
  102. package/src/sap/cux/home/LayoutSettingsPanel.js +341 -56
  103. package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
  104. package/src/sap/cux/home/LayoutSettingsPanel.ts +380 -64
  105. package/src/sap/cux/home/{NewsAndPagesContainer.d.ts → NewsContainer.d.ts} +13 -18
  106. package/src/sap/cux/home/NewsContainer.d.ts.map +1 -0
  107. package/src/sap/cux/home/{NewsAndPagesContainer.gen.d.ts → NewsContainer.gen.d.ts} +3 -3
  108. package/src/sap/cux/home/{NewsAndPagesContainer.js → NewsContainer.js} +26 -113
  109. package/src/sap/cux/home/NewsContainer.js.map +1 -0
  110. package/src/sap/cux/home/{NewsAndPagesContainer.ts → NewsContainer.ts} +31 -120
  111. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  112. package/src/sap/cux/home/NewsGroup.ts +1 -1
  113. package/src/sap/cux/home/NewsPanel.d.ts +17 -0
  114. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  115. package/src/sap/cux/home/NewsPanel.js +90 -57
  116. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  117. package/src/sap/cux/home/NewsPanel.ts +51 -23
  118. package/src/sap/cux/home/NewsSettingsPanel.d.ts +42 -6
  119. package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
  120. package/src/sap/cux/home/NewsSettingsPanel.js +219 -81
  121. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  122. package/src/sap/cux/home/NewsSettingsPanel.ts +216 -81
  123. package/src/sap/cux/home/Page.d.ts.map +1 -1
  124. package/src/sap/cux/home/Page.js +4 -1
  125. package/src/sap/cux/home/Page.js.map +1 -1
  126. package/src/sap/cux/home/Page.ts +2 -0
  127. package/src/sap/cux/home/PagePanel.d.ts +1 -1
  128. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  129. package/src/sap/cux/home/PagePanel.js +19 -11
  130. package/src/sap/cux/home/PagePanel.js.map +1 -1
  131. package/src/sap/cux/home/PagePanel.ts +26 -20
  132. package/src/sap/cux/home/PageSettingsPanel.d.ts.map +1 -1
  133. package/src/sap/cux/home/PageSettingsPanel.js +6 -3
  134. package/src/sap/cux/home/PageSettingsPanel.js.map +1 -1
  135. package/src/sap/cux/home/PageSettingsPanel.ts +2 -2
  136. package/src/sap/cux/home/PagesContainer.d.ts +72 -0
  137. package/src/sap/cux/home/PagesContainer.d.ts.map +1 -0
  138. package/src/sap/cux/home/PagesContainer.gen.d.ts +78 -0
  139. package/src/sap/cux/home/PagesContainer.js +333 -0
  140. package/src/sap/cux/home/PagesContainer.js.map +1 -0
  141. package/src/sap/cux/home/PagesContainer.ts +179 -0
  142. package/src/sap/cux/home/RecentAppPanel.d.ts.map +1 -1
  143. package/src/sap/cux/home/RecentAppPanel.js +6 -0
  144. package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
  145. package/src/sap/cux/home/RecentAppPanel.ts +5 -1
  146. package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
  147. package/src/sap/cux/home/RecommendedAppPanel.js +7 -0
  148. package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
  149. package/src/sap/cux/home/RecommendedAppPanel.ts +6 -1
  150. package/src/sap/cux/home/SettingsDialog.d.ts +7 -0
  151. package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
  152. package/src/sap/cux/home/SettingsDialog.js +18 -10
  153. package/src/sap/cux/home/SettingsDialog.js.map +1 -1
  154. package/src/sap/cux/home/SettingsDialog.ts +20 -13
  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 +17 -12
  171. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  172. package/src/sap/cux/home/TaskPanel.ts +19 -16
  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.map +1 -1
  184. package/src/sap/cux/home/ToDoPanel.js +59 -66
  185. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  186. package/src/sap/cux/home/ToDoPanel.ts +46 -34
  187. package/src/sap/cux/home/ToDosContainer.js +3 -3
  188. package/src/sap/cux/home/ToDosContainer.js.map +1 -1
  189. package/src/sap/cux/home/ToDosContainer.ts +1 -1
  190. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts +2 -2
  191. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
  192. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +1 -1
  193. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
  194. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +4 -4
  195. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts +2 -2
  196. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
  197. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -1
  198. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
  199. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +4 -4
  200. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts +2 -2
  201. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts.map +1 -1
  202. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js +1 -1
  203. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js.map +1 -1
  204. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.ts +3 -3
  205. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts +2 -2
  206. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
  207. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +4 -4
  208. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
  209. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +5 -5
  210. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
  211. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +30 -3
  212. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
  213. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +23 -1
  214. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +29 -19
  215. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
  216. package/src/sap/cux/home/flexibility/Layout.flexibility.js +78 -2
  217. package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
  218. package/src/sap/cux/home/flexibility/Layout.flexibility.ts +81 -1
  219. package/src/sap/cux/home/i18n/messagebundle.properties +40 -14
  220. package/src/sap/cux/home/i18n/messagebundle_ar.properties +8 -4
  221. package/src/sap/cux/home/i18n/messagebundle_bg.properties +8 -4
  222. package/src/sap/cux/home/i18n/messagebundle_ca.properties +8 -4
  223. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +8 -4
  224. package/src/sap/cux/home/i18n/messagebundle_cs.properties +8 -4
  225. package/src/sap/cux/home/i18n/messagebundle_cy.properties +8 -4
  226. package/src/sap/cux/home/i18n/messagebundle_da.properties +8 -4
  227. package/src/sap/cux/home/i18n/messagebundle_de.properties +8 -4
  228. package/src/sap/cux/home/i18n/messagebundle_el.properties +8 -4
  229. package/src/sap/cux/home/i18n/messagebundle_en.properties +9 -5
  230. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +8 -4
  231. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +14 -6
  232. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +14 -6
  233. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +8 -4
  234. package/src/sap/cux/home/i18n/messagebundle_es.properties +8 -4
  235. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +8 -4
  236. package/src/sap/cux/home/i18n/messagebundle_et.properties +8 -4
  237. package/src/sap/cux/home/i18n/messagebundle_fi.properties +8 -4
  238. package/src/sap/cux/home/i18n/messagebundle_fr.properties +8 -4
  239. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +8 -4
  240. package/src/sap/cux/home/i18n/messagebundle_hi.properties +8 -4
  241. package/src/sap/cux/home/i18n/messagebundle_hr.properties +8 -4
  242. package/src/sap/cux/home/i18n/messagebundle_hu.properties +8 -4
  243. package/src/sap/cux/home/i18n/messagebundle_id.properties +8 -4
  244. package/src/sap/cux/home/i18n/messagebundle_it.properties +10 -6
  245. package/src/sap/cux/home/i18n/messagebundle_iw.properties +8 -4
  246. package/src/sap/cux/home/i18n/messagebundle_ja.properties +8 -4
  247. package/src/sap/cux/home/i18n/messagebundle_kk.properties +8 -4
  248. package/src/sap/cux/home/i18n/messagebundle_ko.properties +8 -4
  249. package/src/sap/cux/home/i18n/messagebundle_lt.properties +8 -4
  250. package/src/sap/cux/home/i18n/messagebundle_lv.properties +8 -4
  251. package/src/sap/cux/home/i18n/messagebundle_mk.properties +8 -4
  252. package/src/sap/cux/home/i18n/messagebundle_ms.properties +8 -4
  253. package/src/sap/cux/home/i18n/messagebundle_nl.properties +8 -4
  254. package/src/sap/cux/home/i18n/messagebundle_no.properties +8 -4
  255. package/src/sap/cux/home/i18n/messagebundle_pl.properties +8 -4
  256. package/src/sap/cux/home/i18n/messagebundle_pt.properties +9 -5
  257. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +8 -4
  258. package/src/sap/cux/home/i18n/messagebundle_ro.properties +8 -4
  259. package/src/sap/cux/home/i18n/messagebundle_ru.properties +8 -4
  260. package/src/sap/cux/home/i18n/messagebundle_sh.properties +8 -4
  261. package/src/sap/cux/home/i18n/messagebundle_sk.properties +8 -4
  262. package/src/sap/cux/home/i18n/messagebundle_sl.properties +8 -4
  263. package/src/sap/cux/home/i18n/messagebundle_sr.properties +8 -4
  264. package/src/sap/cux/home/i18n/messagebundle_sv.properties +8 -4
  265. package/src/sap/cux/home/i18n/messagebundle_th.properties +8 -4
  266. package/src/sap/cux/home/i18n/messagebundle_tr.properties +8 -4
  267. package/src/sap/cux/home/i18n/messagebundle_uk.properties +8 -4
  268. package/src/sap/cux/home/i18n/messagebundle_vi.properties +8 -4
  269. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +8 -4
  270. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +8 -4
  271. package/src/sap/cux/home/interface/AppsInterface.d.ts +6 -0
  272. package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
  273. package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
  274. package/src/sap/cux/home/interface/AppsInterface.ts +7 -0
  275. package/src/sap/cux/home/interface/KeyUserInterface.d.ts +27 -4
  276. package/src/sap/cux/home/interface/KeyUserInterface.d.ts.map +1 -1
  277. package/src/sap/cux/home/interface/KeyUserInterface.js.map +1 -1
  278. package/src/sap/cux/home/interface/KeyUserInterface.ts +23 -4
  279. package/src/sap/cux/home/interface/LayoutInterface.d.ts +7 -0
  280. package/src/sap/cux/home/interface/LayoutInterface.d.ts.map +1 -1
  281. package/src/sap/cux/home/interface/LayoutInterface.js.map +1 -1
  282. package/src/sap/cux/home/interface/LayoutInterface.ts +7 -0
  283. package/src/sap/cux/home/library.d.ts.map +1 -1
  284. package/src/sap/cux/home/library.js +7 -4
  285. package/src/sap/cux/home/library.js.map +1 -1
  286. package/src/sap/cux/home/library.ts +10 -5
  287. package/src/sap/cux/home/themes/base/AppsContainer.less +12 -1
  288. package/src/sap/cux/home/themes/base/BaseContainer.less +36 -0
  289. package/src/sap/cux/home/themes/base/BaseLayout.less +22 -0
  290. package/src/sap/cux/home/themes/base/{InsightsContainer.less → CardsContainer.less} +4 -45
  291. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +10 -18
  292. package/src/sap/cux/home/themes/base/PlaceHolder.less +1 -1
  293. package/src/sap/cux/home/themes/base/SettingsDialog.less +4 -0
  294. package/src/sap/cux/home/themes/base/TilesContainer.less +65 -0
  295. package/src/sap/cux/home/themes/base/ToDosContainer.less +4 -0
  296. package/src/sap/cux/home/themes/base/library.source.less +2 -1
  297. package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
  298. package/src/sap/cux/home/utils/AppManager.js +2 -1
  299. package/src/sap/cux/home/utils/AppManager.js.map +1 -1
  300. package/src/sap/cux/home/utils/AppManager.ts +2 -2
  301. package/src/sap/cux/home/utils/FESRUtil.d.ts +30 -0
  302. package/src/sap/cux/home/utils/FESRUtil.d.ts.map +1 -1
  303. package/src/sap/cux/home/utils/FESRUtil.js +36 -1
  304. package/src/sap/cux/home/utils/FESRUtil.js.map +1 -1
  305. package/src/sap/cux/home/utils/FESRUtil.ts +36 -0
  306. package/src/sap/cux/home/utils/PXFeedback.d.ts +4 -0
  307. package/src/sap/cux/home/utils/PXFeedback.d.ts.map +1 -0
  308. package/src/sap/cux/home/utils/PXFeedback.js +28 -0
  309. package/src/sap/cux/home/utils/PXFeedback.js.map +1 -0
  310. package/src/sap/cux/home/utils/PXFeedback.ts +19 -0
  311. package/src/sap/cux/home/utils/PageManager.d.ts +0 -4
  312. package/src/sap/cux/home/utils/PageManager.d.ts.map +1 -1
  313. package/src/sap/cux/home/utils/PageManager.js +6 -6
  314. package/src/sap/cux/home/utils/PageManager.js.map +1 -1
  315. package/src/sap/cux/home/utils/PageManager.ts +6 -5
  316. package/src/sap/cux/home/utils/PerformanceUtils.d.ts +4 -2
  317. package/src/sap/cux/home/utils/PerformanceUtils.d.ts.map +1 -1
  318. package/src/sap/cux/home/utils/PerformanceUtils.js +4 -2
  319. package/src/sap/cux/home/utils/PerformanceUtils.js.map +1 -1
  320. package/src/sap/cux/home/utils/PerformanceUtils.ts +4 -2
  321. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +155 -151
  322. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts +8 -0
  323. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts.map +1 -0
  324. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.js → CardsPlaceholder.js} +3 -77
  325. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.js.map +1 -0
  326. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.ts → CardsPlaceholder.ts} +1 -75
  327. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts +8 -0
  328. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts.map +1 -0
  329. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js +44 -0
  330. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js.map +1 -0
  331. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.ts +34 -0
  332. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts +8 -0
  333. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts.map +1 -0
  334. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.js → PagesPlaceholder.js} +3 -23
  335. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.js.map +1 -0
  336. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.ts → PagesPlaceholder.ts} +1 -21
  337. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts +8 -0
  338. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts.map +1 -0
  339. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js +95 -0
  340. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js.map +1 -0
  341. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.ts +85 -0
  342. package/ui5.yaml +1 -0
  343. package/src/sap/cux/home/InsightsContainer.d.ts +0 -205
  344. package/src/sap/cux/home/InsightsContainer.d.ts.map +0 -1
  345. package/src/sap/cux/home/InsightsContainer.js +0 -459
  346. package/src/sap/cux/home/InsightsContainer.js.map +0 -1
  347. package/src/sap/cux/home/InsightsContainer.ts +0 -489
  348. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +0 -1
  349. package/src/sap/cux/home/NewsAndPagesContainer.js.map +0 -1
  350. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +0 -8
  351. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +0 -1
  352. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +0 -1
  353. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts +0 -8
  354. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +0 -1
  355. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +0 -1
@@ -2,7 +2,7 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLayoutData", "sap/m/GenericTile", "sap/m/HeaderContainer", "sap/m/VBox", "sap/m/library", "sap/ui/core/Lib", "sap/ui/model/json/JSONModel", "sap/ushell/Container", "sap/ushell/api/S4MyHome", "./BasePanel", "./utils/AppManager", "./utils/CommonUtils", "./utils/DataFormatUtils", "./utils/Device", "./utils/InsightsUtils"], function (Log, GridContainer, GridContainerItemLayoutData, GenericTile, HeaderContainer, VBox, sap_m_library, Lib, JSONModel, Container, S4MyHome, __BasePanel, __AppManager, ___utils_CommonUtils, ___utils_DataFormatUtils, ___utils_Device, ___utils_InsightsUtils) {
5
+ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLayoutData", "sap/m/GenericTile", "sap/m/HeaderContainer", "sap/m/VBox", "sap/m/library", "sap/ui/core/Lib", "sap/ui/model/json/JSONModel", "sap/ushell/Container", "sap/ushell/api/S4MyHome", "./BasePanel", "./ErrorPanel", "./utils/AppManager", "./utils/CommonUtils", "./utils/DataFormatUtils", "./utils/Device", "./utils/InsightsUtils"], function (Log, GridContainer, GridContainerItemLayoutData, GenericTile, HeaderContainer, VBox, sap_m_library, Lib, JSONModel, Container, S4MyHome, __BasePanel, __ErrorPanel, __AppManager, ___utils_CommonUtils, ___utils_DataFormatUtils, ___utils_Device, ___utils_InsightsUtils) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
@@ -126,7 +126,7 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
126
126
  _cycle();
127
127
  return pact;
128
128
  }
129
- const AppManager = _interopRequireDefault(__AppManager);
129
+ const ErrorPanel = _interopRequireDefault(__ErrorPanel);
130
130
  function _forOf(target, body, check) {
131
131
  if (typeof target[_iteratorSymbol] === "function") {
132
132
  var iterator = target[_iteratorSymbol](),
@@ -187,36 +187,14 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
187
187
  return body(values[i]);
188
188
  }, check);
189
189
  }
190
+ const AppManager = _interopRequireDefault(__AppManager);
190
191
  const filterVisualizations = ___utils_CommonUtils["filterVisualizations"];
191
192
  const getPageManagerInstance = ___utils_CommonUtils["getPageManagerInstance"];
192
193
  const recycleId = ___utils_DataFormatUtils["recycleId"];
193
194
  const DeviceType = ___utils_Device["DeviceType"];
194
195
  const fetchElementProperties = ___utils_Device["fetchElementProperties"];
195
- const createShowMoreActionButton = ___utils_InsightsUtils["createShowMoreActionButton"];
196
- const createShowMoreMenuItem = ___utils_InsightsUtils["createShowMoreMenuItem"];
196
+ const getAssociatedFullScreenButton = ___utils_InsightsUtils["getAssociatedFullScreenButton"];
197
197
  const getAssociatedFullScreenMenuItem = ___utils_InsightsUtils["getAssociatedFullScreenMenuItem"];
198
- var tilesMenuItems = /*#__PURE__*/function (tilesMenuItems) {
199
- tilesMenuItems["REFRESH"] = "tiles-refresh";
200
- tilesMenuItems["ADD_APPS"] = "tiles-addSmartApps";
201
- tilesMenuItems["EDIT_TILES"] = "tiles-editTiles";
202
- return tilesMenuItems;
203
- }(tilesMenuItems || {});
204
- var tilesContainerMenuItems = /*#__PURE__*/function (tilesContainerMenuItems) {
205
- tilesContainerMenuItems["REFRESH"] = "container-tiles-refresh";
206
- tilesContainerMenuItems["ADD_APPS"] = "container-tiles-addSmartApps";
207
- tilesContainerMenuItems["EDIT_TILES"] = "container-tiles-editTiles";
208
- tilesContainerMenuItems["SHOW_MORE"] = "tilesContainerFullScreenMenuItem";
209
- return tilesContainerMenuItems;
210
- }(tilesContainerMenuItems || {});
211
- var tilesActionButtons = /*#__PURE__*/function (tilesActionButtons) {
212
- tilesActionButtons["ADD_TILES"] = "tiles-addTilesButton";
213
- return tilesActionButtons;
214
- }(tilesActionButtons || {});
215
- var tilesContainerActionButtons = /*#__PURE__*/function (tilesContainerActionButtons) {
216
- tilesContainerActionButtons["ADD_TILES"] = "container-tiles-addTilesButton";
217
- tilesContainerActionButtons["SHOW_MORE"] = "tilesContanerFullScreenActionButton";
218
- return tilesContainerActionButtons;
219
- }(tilesContainerActionButtons || {});
220
198
  var DisplayFormat = /*#__PURE__*/function (DisplayFormat) {
221
199
  DisplayFormat["Standard"] = "standard";
222
200
  DisplayFormat["StandardWide"] = "standardWide";
@@ -308,7 +286,6 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
308
286
  */
309
287
  constructor: function _constructor(id, settings) {
310
288
  BasePanel.prototype.constructor.call(this, id, settings);
311
- this._headerVisible = false;
312
289
  },
313
290
  /**
314
291
  * Initializes the Tiles Panel.
@@ -339,6 +316,11 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
339
316
 
340
317
  // Toggles the activity of tiles
341
318
  this._toggleTileActivity();
319
+ //Add error panel to the parent container 'TilesContainer'
320
+ const parentContainer = this._getTilesContainer();
321
+ parentContainer?.addContent(this._errorPanel);
322
+ //set its visibility to false initially
323
+ this._errorPanel?.setVisible(false);
342
324
  },
343
325
  setTitle: function _setTitle(title) {
344
326
  if (!this.spaceTitle) this.spaceTitle = title;
@@ -439,6 +421,7 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
439
421
  });
440
422
  }, function (error) {
441
423
  _this2.fireHandleHidePanel();
424
+ _this2._addErrorPanel();
442
425
  });
443
426
  }, function (_wasThrown, _result) {
444
427
  _this2.fireEvent("loaded");
@@ -495,26 +478,31 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
495
478
  refreshData: function _refreshData(refreshTiles = false) {
496
479
  try {
497
480
  const _this4 = this;
498
- const panelName = _this4.getMetadata().getName();
499
481
  return Promise.resolve(_this4.fetchDynamicAppInSpace()).then(function (_this4$fetchDynamicAp) {
500
482
  function _temp0() {
501
483
  _this4._clearPlaceHolders();
502
484
  _this4._controlModel.setProperty("/tiles", _this4.aInsightsApps);
503
485
  if (_this4.aInsightsApps?.length) {
486
+ _this4._errorPanel?.setVisible(false);
504
487
  _this4.fireHandleUnhidePanel();
505
488
  if (refreshTiles) {
506
489
  const isMobile = _this4.getDeviceType() === DeviceType.Mobile;
507
- const container = isMobile ? _this4.tilesMobileContainer : _this4.tilesContainer;
490
+ const container = isMobile ? _this4.tilesMobileContainer : _this4.tilesWrapperContainer;
508
491
  const sDefaultAggreName = container.getMetadata().getDefaultAggregationName();
509
492
  const dynamicTiles = container.getAggregation(sDefaultAggreName) || [];
510
493
  dynamicTiles.forEach(tiles => tiles.refresh?.());
511
494
  }
512
- _this4._getInsightsContainer().updatePanelsItemCount(_this4.aInsightsApps.length, panelName);
513
- if (_this4._headerVisible) {
514
- _this4.setProperty("title", `${_this4.spaceTitle} (${_this4.aInsightsApps.length})`);
515
- }
495
+ _this4.setProperty("title", `${_this4.spaceTitle} (${_this4.aInsightsApps.length})`);
516
496
  } else {
517
497
  _this4.fireHandleHidePanel();
498
+ _this4._addErrorPanel();
499
+ const layout = _this4._getTilesContainer()?._getLayout();
500
+ if (layout?.getProperty("expanded")) {
501
+ _this4.tilesContainer.addContent(_this4);
502
+ layout?.toggleFullScreen(_this4);
503
+ //remove the tiles panel from the tiles container
504
+ _this4.tilesContainer.removeContent(_this4);
505
+ }
518
506
  }
519
507
  }
520
508
  _this4.aInsightsApps = _this4$fetchDynamicAp;
@@ -532,6 +520,23 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
532
520
  return Promise.reject(e);
533
521
  }
534
522
  },
523
+ _addErrorPanel: function _addErrorPanel() {
524
+ const parentContainer = this._getTilesContainer();
525
+ this.setVisible(false);
526
+ if (!this._errorPanel) {
527
+ this._errorPanel = new ErrorPanel(`${this.getId()}-errorSpaceInsightsPanel`, {
528
+ messageTitle: this._i18nBundle.getText("noAppsTitle"),
529
+ messageDescription: this._i18nBundle.getText("noInsightsTileMsg")
530
+ });
531
+ this._errorPanel.getData();
532
+ this.setProperty("title", `${this.spaceTitle}`);
533
+
534
+ //Add error panel to the parent container 'TilesContainer'
535
+ parentContainer.addAggregation("content", this._errorPanel);
536
+ this._errorPanel.setVisible(true);
537
+ this._errorPanel.setProperty("enableSettings", true);
538
+ }
539
+ },
535
540
  /**
536
541
  * Generates the wrapper for the tiles container, if it doesn't already exist
537
542
  *
@@ -581,17 +586,17 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
581
586
  * @returns {sap.m.GridContainer} The generated tiles wrapper.
582
587
  */
583
588
  _createWrapperFlexBox: function _createWrapperFlexBox() {
584
- // Check if the tilesContainer already exists
585
- if (!this.tilesContainer) {
589
+ // Check if the tilesWrapperContainer already exists
590
+ if (!this.tilesWrapperContainer) {
586
591
  // Create the GridContainer with required properties
587
- this.tilesContainer = new GridContainer(`${this.getId()}-insightsTilesContainer`, {
592
+ this.tilesWrapperContainer = new GridContainer(`${this.getId()}-insightsTilesContainer`, {
588
593
  visible: "{= !${/isPhone}}"
589
- }).addStyleClass("insightTiles sapUiSmallMarginTop sapUiSmallMarginBottom");
594
+ }).addStyleClass("insightTiles sapUiSmallMarginTop");
590
595
  // Attach aggregation to the container
591
- this._attachAggregationToContainer(this.tilesContainer);
596
+ this._attachAggregationToContainer(this.tilesWrapperContainer);
592
597
  }
593
598
  // Return the existing or newly created container
594
- return this.tilesContainer;
599
+ return this.tilesWrapperContainer;
595
600
  },
596
601
  /**
597
602
  * Updates the activation flags for Insights Tiles based on the device type and viewport.
@@ -612,15 +617,15 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
612
617
  * Attaches necessary aggregations and configurations to the provided container.
613
618
  *
614
619
  * @private
615
- * @param {GridContainer | HeaderContainer} tilesContainer - The container to which the aggregation and events are to be attached.
620
+ * @param {GridContainer | HeaderContainer} tilesWrapperContainer - The container to which the aggregation and events are to be attached.
616
621
  * @returns {void}
617
622
  *
618
623
  */
619
- _attachAggregationToContainer: function _attachAggregationToContainer(tilesContainer) {
620
- tilesContainer.setModel(this._controlModel);
621
- const sDefaultAggreName = tilesContainer.getMetadata().getDefaultAggregationName();
624
+ _attachAggregationToContainer: function _attachAggregationToContainer(tilesWrapperContainer) {
625
+ tilesWrapperContainer.setModel(this._controlModel);
626
+ const sDefaultAggreName = tilesWrapperContainer.getMetadata().getDefaultAggregationName();
622
627
  const isPhoneScreen = this.getDeviceType() === DeviceType.Mobile;
623
- tilesContainer.bindAggregation(sDefaultAggreName, {
628
+ tilesWrapperContainer.bindAggregation(sDefaultAggreName, {
624
629
  path: "/tiles",
625
630
  factory: (id, context) => {
626
631
  const oApp = context.getObject();
@@ -637,24 +642,6 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
637
642
  }
638
643
  });
639
644
  },
640
- /**
641
- * Hides the header of the tiles panel.
642
- * @private
643
- */
644
- handleHideHeader: function _handleHideHeader() {
645
- this._headerVisible = false;
646
- this.setProperty("title", "");
647
- this._toggleHeaderActions(false);
648
- },
649
- /**
650
- * Adds the header to the tiles panel.
651
- * @private
652
- */
653
- handleAddHeader: function _handleAddHeader() {
654
- this._headerVisible = true;
655
- this.setProperty("title", `${this.spaceTitle} (${this.aInsightsApps.length})`);
656
- this._toggleHeaderActions(true);
657
- },
658
645
  /**
659
646
  * Calculates the number of visible tiles that can fit within the available width of the parent container.
660
647
  *
@@ -663,7 +650,7 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
663
650
  * @returns {number} - The number of visible tiles.
664
651
  */
665
652
  _calculateVisibleTileCount: function _calculateVisibleTileCount(insightsApps) {
666
- const layout = this._getInsightsContainer()?._getLayout();
653
+ const layout = this._getTilesContainer()?._getLayout();
667
654
  const layoutDomRef = layout?.getDomRef();
668
655
  const apps = insightsApps || [];
669
656
  let count = 0;
@@ -686,7 +673,7 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
686
673
  return count || 1;
687
674
  },
688
675
  _calculatePlaceholderTileCount: function _calculatePlaceholderTileCount() {
689
- const layoutDomRef = this._getInsightsContainer()?._getLayout()?.getDomRef();
676
+ const layoutDomRef = this._getTilesContainer()?._getLayout()?.getDomRef();
690
677
  let count = 0;
691
678
  if (layoutDomRef) {
692
679
  const sectionDomRef = layoutDomRef.childNodes[0];
@@ -704,7 +691,7 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
704
691
  * @override
705
692
  */
706
693
  _adjustLayout: function _adjustLayout() {
707
- const layout = this._getInsightsContainer()?._getLayout();
694
+ const layout = this._getTilesContainer()?._getLayout();
708
695
  const isMobileDevice = this.getDeviceType() === DeviceType.Mobile;
709
696
  if (layout) {
710
697
  const visibleTileCount = isMobileDevice ? this.aInsightsApps?.length : this._calculateVisibleTileCount(this.aInsightsApps);
@@ -714,83 +701,30 @@ sap.ui.define(["sap/base/Log", "sap/f/GridContainer", "sap/f/GridContainerItemLa
714
701
  this._updateTilesActivity();
715
702
  //Show/Hide Full Screen Button if panel header is visible otherwise update visibility of container Full Screen Button
716
703
  const showFullScreenButton = isElementExpanded || this.aInsightsApps.length > visibleTileCount;
717
- if (this._headerVisible) {
718
- if (!isMobileDevice) {
719
- this.getAggregation("actionButtons")?.forEach(actionButton => {
720
- if (actionButton.getId().includes(tilesActionButtons.ADD_TILES)) {
721
- this._getInsightsContainer().toggleActionButton(actionButton, true);
722
- }
723
- });
724
- }
725
- this._getInsightsContainer()?.toggleFullScreenElements(this, showFullScreenButton);
726
- } else {
727
- const fullScreenButton = getAssociatedFullScreenMenuItem(this);
728
- const fullScreenText = fullScreenButton?.getTitle() ?? "";
729
- this._getInsightsContainer()?.updateMenuItem(this._controlMap.get(`${this.getId()}-${tilesContainerMenuItems.SHOW_MORE}`), showFullScreenButton, fullScreenText);
730
- this._getInsightsContainer()?.updateActionButton(this._controlMap.get(`${this.getId()}-${tilesContainerActionButtons.SHOW_MORE}`), showFullScreenButton, fullScreenText);
731
- }
732
- }
733
- },
734
- /**
735
- * Retrieves the InsightsContainer instance associated with this TilesPanel.
736
- *
737
- * @private
738
- * @returns {InsightsContainer} The InsightsContainer instance.
739
- */
740
- _getInsightsContainer: function _getInsightsContainer() {
741
- if (!this.insightsContainer) {
742
- this.insightsContainer = this.getParent();
743
- }
744
- return this.insightsContainer;
745
- },
746
- /**
747
- * Retrieves the menu items for the container.
748
- *
749
- * @private
750
- * @returns {MenuItem[]} An array of MenuItem instances.
751
- */
752
- getContainerMenuItems: function _getContainerMenuItems() {
753
- if (!this._containerMenuItems) {
754
- const containerShowMore = createShowMoreMenuItem(this, tilesContainerMenuItems.SHOW_MORE, "containerTilesShowMore");
755
- this._controlMap.set(`${this.getId()}-${tilesContainerMenuItems.SHOW_MORE}`, containerShowMore);
756
- this._containerMenuItems = [containerShowMore];
704
+ const fullScreenButton = getAssociatedFullScreenMenuItem(this);
705
+ const fullScreenText = fullScreenButton?.getTitle() ?? "";
706
+
707
+ //update the panel menu-item show more button and show more action button in panel header
708
+ fullScreenButton?.setVisible(showFullScreenButton);
709
+ fullScreenButton?.setTitle(fullScreenText);
710
+ const fullScreenActionButton = getAssociatedFullScreenButton(this);
711
+ fullScreenActionButton?.setVisible(showFullScreenButton);
712
+ fullScreenActionButton?.setText(fullScreenText);
757
713
  }
758
- return this._containerMenuItems;
759
714
  },
760
715
  /**
761
- * Retrieves the action buttons for the container.
716
+ * Retrieves the TilesContainer instance associated with this TilesPanel.
762
717
  *
763
718
  * @private
764
- * @returns {Button[]} An array of Button instances.
719
+ * @returns {TilesContainer} The TilesContainer instance.
765
720
  */
766
- getContainerActionButtons: function _getContainerActionButtons() {
767
- if (!this._containerActionButtons) {
768
- this._containerActionButtons = [];
769
- const containerFullScreenActionButton = createShowMoreActionButton(this, tilesContainerActionButtons.SHOW_MORE, "containerTilesShowMore");
770
- if (containerFullScreenActionButton) {
771
- this._controlMap.set(`${this.getId()}-${tilesContainerActionButtons.SHOW_MORE}`, containerFullScreenActionButton);
772
- this._containerActionButtons.push(containerFullScreenActionButton);
773
- }
721
+ _getTilesContainer: function _getTilesContainer() {
722
+ if (!this.tilesContainer) {
723
+ this.tilesContainer = this.getParent();
774
724
  }
775
- return this._containerActionButtons;
776
- },
777
- /**
778
- * Toggles the visibility of the header actions.
779
- *
780
- * @param {boolean} bShow - Whether to show or hide the header actions.
781
- * @private
782
- */
783
- _toggleHeaderActions: function _toggleHeaderActions(bShow) {
784
- this.getAggregation("menuItems")?.forEach(menuItem => {
785
- this._getInsightsContainer()?.toggleMenuListItem(menuItem, bShow);
786
- });
787
- this.getAggregation("actionButtons")?.forEach(actionButton => this._getInsightsContainer()?.toggleActionButton(actionButton, bShow));
725
+ return this.tilesContainer;
788
726
  }
789
727
  });
790
- SpaceInsightsPanel.tilesMenuItems = tilesMenuItems;
791
- SpaceInsightsPanel.tilesContainerMenuItems = tilesContainerMenuItems;
792
- SpaceInsightsPanel.tilesActionButtons = tilesActionButtons;
793
- SpaceInsightsPanel.tilesContainerActionButtons = tilesContainerActionButtons;
794
728
  SpaceInsightsPanel.DisplayFormat = DisplayFormat;
795
729
  return SpaceInsightsPanel;
796
730
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SpaceInsightsPanel.js","names":["sap","ui","define","Log","GridContainer","GridContainerItemLayoutData","GenericTile","HeaderContainer","VBox","sap_m_library","Lib","JSONModel","Container","S4MyHome","__BasePanel","__AppManager","___utils_CommonUtils","___utils_DataFormatUtils","___utils_Device","___utils_InsightsUtils","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","LoadState","_finallyRethrows","finalizer","bind","BasePanel","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","AppManager","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","filterVisualizations","getPageManagerInstance","recycleId","DeviceType","fetchElementProperties","createShowMoreActionButton","createShowMoreMenuItem","getAssociatedFullScreenMenuItem","tilesMenuItems","tilesContainerMenuItems","tilesActionButtons","tilesContainerActionButtons","DisplayFormat","StandardTileWidth","StandardWideTileWidth","Gap","SpaceInsightsPanel","extend","metadata","library","properties","spaceId","type","group","defaultValue","title","fullScreenName","visibility","defaultAggregation","aggregations","content","multiple","singularName","tiles","events","handleHidePanel","parameters","handleUnhidePanel","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","_headerVisible","init","_init","BasePanel.prototype.init.call","_controlMap","Map","_oData","activateInsightsTiles","activateInsightsTilesOnPhone","activateInsightsTilesOnDesktop","_controlModel","appManagerInstance","getInstance","pageManager","setProperty","_createTilesFlexWrapper","getServiceAsync","VizInstantiationService","catch","error","Error","message","String","_toggleTileActivity","setTitle","_setTitle","spaceTitle","getTitle","_getTitle","getProperty","toggleUserActions","event","show","getParameter","_temp2","_temp","_appSwitched","Promise","resolve","refreshData","attachRouteMatched","warning","_showPlaceHolders","placeholderArray","Array","_calculatePlaceholderTileCount","fill","Loading","aInsightsApps","map","tileState","index","getId","sizeBehavior","frameType","mode","visible","renderOnThemeChange","ariaRole","dropAreaOffset","setLayoutData","columns","_clearPlaceHolders","renderPanel","_renderPanel","_exit","_this2","_temp4","_result","_temp3","_await$_this2$refresh","fireHandleHidePanel","_wasThrown","fireEvent","fetchDynamicAppInSpace","_fetchDynamicAppInSpace","_this3","_temp8","_this3$pageManager$fe","_temp7","allVisualizations","_filterDuplicateVizs","allSpaces","space","find","children","_temp6","_temp5","child","fetchFavVizs","visualizations","_this3$allSpaces","fetchAllAvailableSpaces","_refreshData","refreshTiles","_this4","panelName","getMetadata","getName","_this4$fetchDynamicAp","_temp0","fireHandleUnhidePanel","isMobile","getDeviceType","Mobile","container","tilesMobileContainer","tilesContainer","sDefaultAggreName","getDefaultAggregationName","dynamicTiles","getAggregation","forEach","refresh","_getInsightsContainer","updatePanelsItemCount","bIsSmartBusinessTilePresent","some","oApp","isSmartBusinessTile","_temp9","load","name","_tilesWrapper","renderType","width","items","_createMobileFlexWrapper","_createWrapperFlexBox","setModel","addContent","scrollStep","scrollStepByItem","gridLayout","scrollTime","showDividers","addStyleClass","_attachAggregationToContainer","_updateTilesActivity","isPhoneScreen","bActivateInsightsTiles","Boolean","bindAggregation","path","factory","context","getObject","oVisualization","instantiateVisualization","visualization","minRows","getDisplayFormat","Standard","bindProperty","handleHideHeader","_handleHideHeader","_toggleHeaderActions","handleAddHeader","_handleAddHeader","_calculateVisibleTileCount","insightsApps","layout","_getLayout","layoutDomRef","getDomRef","apps","count","isHeaderVisible","sectionNodeIndex","sectionDomRef","childNodes","domProperties","availableWidth","widthMap","StandardWide","nextTileWidth","displayFormatHint","Math","floor","_adjustLayout","isMobileDevice","visibleTileCount","isElementExpanded","_getCurrentExpandedElementName","slice","showFullScreenButton","actionButton","includes","ADD_TILES","toggleActionButton","toggleFullScreenElements","fullScreenButton","fullScreenText","updateMenuItem","get","SHOW_MORE","updateActionButton","insightsContainer","getParent","getContainerMenuItems","_getContainerMenuItems","_containerMenuItems","containerShowMore","set","getContainerActionButtons","_getContainerActionButtons","_containerActionButtons","containerFullScreenActionButton","bShow","menuItem","toggleMenuListItem"],"sources":["SpaceInsightsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerItemLayoutData from \"sap/f/GridContainerItemLayoutData\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState } from \"sap/m/library\";\nimport Event from \"sap/ui/base/Event\";\nimport ManagedObject from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport Lib from \"sap/ui/core/Lib\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport Container from \"sap/ushell/Container\";\nimport S4MyHome from \"sap/ushell/api/S4MyHome\";\nimport VisualizationInstantiation from \"sap/ushell/services/VisualizationInstantiation\";\nimport BasePanel from \"./BasePanel\";\nimport InsightsContainer from \"./InsightsContainer\";\nimport MenuItem from \"./MenuItem\";\nimport { $SpaceInsightsPanelSettings } from \"./SpaceInsightsPanel\";\nimport { ICustomVisualization, ISectionAndVisualization } from \"./interface/AppsInterface\";\nimport { ISpace } from \"./interface/PageSpaceInterface\";\nimport AppManager from \"./utils/AppManager\";\nimport { filterVisualizations, getPageManagerInstance } from \"./utils/CommonUtils\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { DeviceType, fetchElementProperties } from \"./utils/Device\";\nimport { createShowMoreActionButton, createShowMoreMenuItem, getAssociatedFullScreenMenuItem } from \"./utils/InsightsUtils\";\nimport PageManager from \"./utils/PageManager\";\n\nexport enum tilesMenuItems {\n\tREFRESH = \"tiles-refresh\",\n\tADD_APPS = \"tiles-addSmartApps\",\n\tEDIT_TILES = \"tiles-editTiles\"\n}\n\nexport enum tilesContainerMenuItems {\n\tREFRESH = \"container-tiles-refresh\",\n\tADD_APPS = \"container-tiles-addSmartApps\",\n\tEDIT_TILES = \"container-tiles-editTiles\",\n\tSHOW_MORE = \"tilesContainerFullScreenMenuItem\"\n}\n\nexport enum tilesActionButtons {\n\tADD_TILES = \"tiles-addTilesButton\"\n}\n\nexport enum tilesContainerActionButtons {\n\tADD_TILES = \"container-tiles-addTilesButton\",\n\tSHOW_MORE = \"tilesContanerFullScreenActionButton\"\n}\n\nexport enum DisplayFormat {\n\tStandard = \"standard\",\n\tStandardWide = \"standardWide\"\n}\n\nconst StandardTileWidth = 176;\nconst StandardWideTileWidth = 368;\nconst Gap = 16;\n\n/**\n *\n * Tiles Panel class for managing and storing Space Insights Tiles.\n *\n * @extends sap.cux.home.BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n *\n * @private\n * @ui5-experimental-since 1.138.0\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.SpaceInsightsPanel\n */\n\nexport default class SpaceInsightsPanel extends BasePanel {\n\tconstructor(idOrSettings?: string | $SpaceInsightsPanelSettings);\n\tconstructor(id?: string, settings?: $SpaceInsightsPanelSettings);\n\t/**\n\t * Constructor for a new Tiles Panel.\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?: $SpaceInsightsPanelSettings) {\n\t\tsuper(id, settings);\n\t}\n\tprivate _oData!: Record<string, unknown>;\n\tprivate appManagerInstance!: AppManager;\n\tprivate VizInstantiationService!: VisualizationInstantiation;\n\tprivate tilesContainer!: GridContainer;\n\tprivate tilesMobileContainer!: HeaderContainer;\n\tprivate _tilesWrapper!: VBox;\n\tprivate aInsightsApps!: ICustomVisualization[] | GenericTile[];\n\tprivate _controlModel!: JSONModel;\n\tpublic _controlMap!: Map<string, Control | Element | UI5Element>;\n\tprivate _containerMenuItems!: MenuItem[];\n\tprivate _containerActionButtons!: Button[];\n\tprivate insightsContainer!: InsightsContainer;\n\tprivate _appSwitched!: boolean;\n\tprivate _headerVisible: boolean = false;\n\tprivate pageManager!: PageManager;\n\tprivate allSpaces!: ISpace[];\n\tprivate spaceTitle!: string | undefined;\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the space whose apps should be loaded.\n\t\t\t */\n\t\t\tspaceId: { type: \"string\", group: \"Data\", defaultValue: \"\" },\n\t\t\t/**\n\t\t\t * Title for the tiles panel\n\t\t\t */\n\t\t\ttitle: { type: \"string\", group: \"Misc\", defaultValue: \"\" },\n\t\t\t/**\n\t\t\t * The name of the URL parameter used to expand the container into full-screen mode.\n\t\t\t */\n\t\t\tfullScreenName: { type: \"string\", group: \"Misc\", defaultValue: \"SI3\", visibility: \"hidden\" }\n\t\t},\n\t\tdefaultAggregation: \"tiles\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Specifies the content aggregation of the panel.\n\t\t\t */\n\t\t\tcontent: { multiple: true, singularName: \"content\", visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Aggregation of tiles available within the tiles Panel\n\t\t\t */\n\t\t\ttiles: { type: \"sap.cux.home.App\", multiple: true, singularName: \"tile\", visibility: \"hidden\" }\n\t\t},\n\t\tevents: {\n\t\t\thandleHidePanel: {\n\t\t\t\tparameters: {}\n\t\t\t},\n\t\t\thandleUnhidePanel: {\n\t\t\t\tparameters: {}\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * Initializes the Tiles Panel.\n\t *\n\t * @private\n\t * @override\n\t */\n\tinit() {\n\t\tsuper.init();\n\t\tthis._controlMap = new Map();\n\t\t//Initialise Tiles Model\n\t\tthis._oData = {\n\t\t\ttiles: [] as ICustomVisualization[],\n\t\t\tactivateInsightsTiles: true,\n\t\t\tactivateInsightsTilesOnPhone: false,\n\t\t\tactivateInsightsTilesOnDesktop: false\n\t\t};\n\t\tthis._controlModel = new JSONModel(this._oData);\n\t\tthis.appManagerInstance = AppManager.getInstance();\n\t\tthis.pageManager = getPageManagerInstance(this);\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\n\t\tthis._createTilesFlexWrapper();\n\t\tContainer.getServiceAsync<VisualizationInstantiation>(\"VisualizationInstantiation\")\n\t\t\t.then((VizInstantiationService) => {\n\t\t\t\tthis.VizInstantiationService = VizInstantiationService;\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tLog.error(error instanceof Error ? error.message : String(error));\n\t\t\t});\n\n\t\t// Toggles the activity of tiles\n\t\tthis._toggleTileActivity();\n\t}\n\n\tpublic setTitle(title: string) {\n\t\tif (!this.spaceTitle) this.spaceTitle = title;\n\t\treturn this.setProperty(\"title\", title);\n\t}\n\n\tpublic getTitle(): string {\n\t\tif (this.spaceTitle) return this.spaceTitle;\n\t\treturn this.getProperty(\"title\") as string;\n\t}\n\n\t/**\n\t * Toggles the activity of tiles on route change.\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _toggleTileActivity(): void {\n\t\tconst toggleUserActions = async (event: Event<{ isMyHomeRoute: boolean }>) => {\n\t\t\tconst show = event.getParameter(\"isMyHomeRoute\");\n\t\t\tthis._controlModel.setProperty(\"/activateInsightsTiles\", show);\n\t\t\tif (show) {\n\t\t\t\tif (this._appSwitched) {\n\t\t\t\t\tawait this.refreshData(true);\n\t\t\t\t\tthis._appSwitched = false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._appSwitched = true;\n\t\t\t}\n\t\t};\n\n\t\ttry {\n\t\t\tS4MyHome.attachRouteMatched({}, toggleUserActions, this);\n\t\t} catch (error) {\n\t\t\tLog.warning(error instanceof Error ? error.message : String(error));\n\t\t}\n\t}\n\n\t/**\n\t * Displays placeholder tiles while loading.\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _showPlaceHolders() {\n\t\tconst placeholderArray = new Array(this._calculatePlaceholderTileCount()).fill(LoadState.Loading) as LoadState[];\n\t\tthis.aInsightsApps = placeholderArray.map((tileState: LoadState, index: number) => {\n\t\t\treturn new GenericTile(recycleId(`${this.getId()}--placeHolderTile--${index}`), {\n\t\t\t\tsizeBehavior: \"Responsive\",\n\t\t\t\tstate: tileState,\n\t\t\t\tframeType: \"OneByOne\",\n\t\t\t\tmode: \"IconMode\",\n\t\t\t\tvisible: true,\n\t\t\t\trenderOnThemeChange: true,\n\t\t\t\tariaRole: \"listitem\",\n\t\t\t\tdropAreaOffset: 8\n\t\t\t}).setLayoutData?.(\n\t\t\t\tnew GridContainerItemLayoutData(recycleId(`${this.getId()}--placeHolderTileLayoutData--${index}`), {\n\t\t\t\t\tcolumns: 2\n\t\t\t\t})\n\t\t\t);\n\t\t});\n\t\tthis._controlModel.setProperty(\"/tiles\", this.aInsightsApps);\n\t}\n\n\t/**\n\t * Clears the placeholder tiles.\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _clearPlaceHolders() {\n\t\tthis._controlModel.setProperty(\"/tiles\", []);\n\t}\n\n\t/**\n\t * Renders the panel.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when the panel is rendered.\n\t */\n\tpublic async renderPanel(): Promise<void> {\n\t\ttry {\n\t\t\treturn await this.refreshData();\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t\tthis.fireHandleHidePanel();\n\t\t} finally {\n\t\t\tthis.fireEvent(\"loaded\");\n\t\t}\n\t\treturn Promise.resolve();\n\t}\n\n\tprivate async fetchDynamicAppInSpace(): Promise<ICustomVisualization[]> {\n\t\tconst spaceId = this.getProperty(\"spaceId\") as string;\n\t\tthis.allSpaces = this.allSpaces || (await this.pageManager.fetchAllAvailableSpaces());\n\t\tconst space = this.allSpaces.find((space) => space.id === spaceId);\n\n\t\tif (!space || space.children.length === 0) return [];\n\t\tlet allVisualizations: ISectionAndVisualization[] = [];\n\n\t\tif (space && space.children.length > 0) {\n\t\t\tfor (const child of space.children) {\n\t\t\t\tconst visualizations = await this.appManagerInstance.fetchFavVizs(true, true, child.id);\n\t\t\t\tallVisualizations.push(...visualizations);\n\t\t\t}\n\t\t}\n\n\t\t//Filter out dynamic tiles\n\t\tallVisualizations = filterVisualizations(allVisualizations, true);\n\n\t\t//filter out duplicate visualizations\n\t\tallVisualizations = this.appManagerInstance._filterDuplicateVizs(allVisualizations, false);\n\n\t\treturn allVisualizations;\n\t}\n\n\t/**\n\t * Refreshes the data in the panel.\n\t *\n\t * @private\n\t * @param {boolean} [refreshTiles=false] - Whether to refresh the tiles.\n\t * @returns {Promise<void>} A promise that resolves when the data is refreshed.\n\t */\n\tpublic async refreshData(refreshTiles: boolean = false) {\n\t\tconst panelName = this.getMetadata().getName();\n\t\tthis.aInsightsApps = await this.fetchDynamicAppInSpace();\n\t\tconst bIsSmartBusinessTilePresent = this.aInsightsApps.some((oApp) => oApp.isSmartBusinessTile);\n\t\tif (bIsSmartBusinessTilePresent) {\n\t\t\tawait Lib.load({ name: \"sap.cloudfnd.smartbusiness.lib.reusetiles\" });\n\t\t}\n\t\tthis._clearPlaceHolders();\n\t\tthis._controlModel.setProperty(\"/tiles\", this.aInsightsApps);\n\t\tif (this.aInsightsApps?.length) {\n\t\t\tthis.fireHandleUnhidePanel();\n\t\t\tif (refreshTiles) {\n\t\t\t\tconst isMobile = this.getDeviceType() === DeviceType.Mobile;\n\t\t\t\tconst container = isMobile ? this.tilesMobileContainer : this.tilesContainer;\n\t\t\t\tconst sDefaultAggreName = container.getMetadata().getDefaultAggregationName();\n\t\t\t\tconst dynamicTiles = (container.getAggregation(sDefaultAggreName) as ManagedObject[]) || [];\n\t\t\t\tdynamicTiles.forEach((tiles) => (tiles as ICustomVisualization).refresh?.());\n\t\t\t}\n\t\t\tthis._getInsightsContainer().updatePanelsItemCount(this.aInsightsApps.length, panelName);\n\t\t\tif (this._headerVisible) {\n\t\t\t\tthis.setProperty(\"title\", `${this.spaceTitle} (${this.aInsightsApps.length})`);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.fireHandleHidePanel();\n\t\t}\n\t}\n\n\t/**\n\t * Generates the wrapper for the tiles container, if it doesn't already exist\n\t *\n\t * @private\n\t * @override\n\t * @returns {sap.m.VBox} The tiles Vbox wrapper.\n\t */\n\tprivate _createTilesFlexWrapper() {\n\t\tif (!this._tilesWrapper) {\n\t\t\tthis._tilesWrapper = new VBox(`${this.getId()}-tilesWrapper`, {\n\t\t\t\trenderType: \"Bare\",\n\t\t\t\twidth: \"100%\",\n\t\t\t\titems: [this._createMobileFlexWrapper(), this._createWrapperFlexBox()]\n\t\t\t});\n\t\t\tthis._showPlaceHolders();\n\t\t\tthis._tilesWrapper.setModel(this._controlModel);\n\t\t\tthis.addContent(this._tilesWrapper);\n\t\t}\n\t}\n\n\t/**\n\t * Generates wrapper for displaying tiles in mobile mode.\n\t * @private\n\t * @returns {sap.m.HeaderContainer} The generated tiles wrapper.\n\t */\n\n\tprivate _createMobileFlexWrapper(): HeaderContainer {\n\t\t// Check if the mobile container already exists\n\t\tif (!this.tilesMobileContainer) {\n\t\t\t// Create the HeaderContainer with required properties\n\t\t\tthis.tilesMobileContainer = new HeaderContainer(`${this.getId()}-insightsTilesMobileContainer`, {\n\t\t\t\tscrollStep: 0,\n\t\t\t\tscrollStepByItem: 1,\n\t\t\t\tgridLayout: true,\n\t\t\t\tscrollTime: 1000,\n\t\t\t\tshowDividers: false,\n\t\t\t\tvisible: \"{/isPhone}\"\n\t\t\t}).addStyleClass(\"sectionMarginTopTilesInsight sapMHeaderContainerMarginBottom\");\n\n\t\t\t// Attach aggregation to the container\n\t\t\tthis._attachAggregationToContainer(this.tilesMobileContainer);\n\t\t}\n\t\t// Return the existing or newly created container\n\t\treturn this.tilesMobileContainer;\n\t}\n\n\t/**\n\t * Generates app wrapper (GridContainer) for displaying tiles.\n\t * @private\n\t * @returns {sap.m.GridContainer} The generated tiles wrapper.\n\t */\n\n\tprivate _createWrapperFlexBox(): GridContainer {\n\t\t// Check if the tilesContainer already exists\n\t\tif (!this.tilesContainer) {\n\t\t\t// Create the GridContainer with required properties\n\t\t\tthis.tilesContainer = new GridContainer(`${this.getId()}-insightsTilesContainer`, {\n\t\t\t\tvisible: \"{= !${/isPhone}}\"\n\t\t\t}).addStyleClass(\"insightTiles sapUiSmallMarginTop sapUiSmallMarginBottom\");\n\t\t\t// Attach aggregation to the container\n\t\t\tthis._attachAggregationToContainer(this.tilesContainer);\n\t\t}\n\t\t// Return the existing or newly created container\n\t\treturn this.tilesContainer;\n\t}\n\n\t/**\n\t * Updates the activation flags for Insights Tiles based on the device type and viewport.\n\t *\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _updateTilesActivity(): void {\n\t\t// Activate Insights Tiles based on container in viewport\n\t\tconst isPhoneScreen: boolean = this.getDeviceType() === DeviceType.Mobile;\n\t\t// Explicitly type the property being retrieved\n\t\tconst bActivateInsightsTiles: boolean = Boolean(this._controlModel.getProperty(\"/activateInsightsTiles\"));\n\t\tthis._controlModel.setProperty(\"/activateInsightsTilesOnPhone\", bActivateInsightsTiles && isPhoneScreen);\n\t\tthis._controlModel.setProperty(\"/activateInsightsTilesOnDesktop\", bActivateInsightsTiles && !isPhoneScreen);\n\t}\n\t/**\n\t * Attaches necessary aggregations and configurations to the provided container.\n\t *\n\t * @private\n\t * @param {GridContainer | HeaderContainer} tilesContainer - The container to which the aggregation and events are to be attached.\n\t * @returns {void}\n\t *\n\t */\n\tprivate _attachAggregationToContainer(tilesContainer: GridContainer | HeaderContainer) {\n\t\ttilesContainer.setModel(this._controlModel);\n\t\tconst sDefaultAggreName = tilesContainer.getMetadata().getDefaultAggregationName();\n\t\tconst isPhoneScreen = this.getDeviceType() === DeviceType.Mobile;\n\t\ttilesContainer.bindAggregation(sDefaultAggreName, {\n\t\t\tpath: \"/tiles\",\n\t\t\tfactory: (id: string, context: Context): ManagedObject => {\n\t\t\t\tconst oApp = context.getObject() as ICustomVisualization;\n\t\t\t\tif (oApp instanceof GenericTile) {\n\t\t\t\t\treturn oApp;\n\t\t\t\t}\n\t\t\t\tconst oVisualization = this.VizInstantiationService.instantiateVisualization(oApp.visualization) as ICustomVisualization;\n\t\t\t\toVisualization.setLayoutData?.(\n\t\t\t\t\tnew GridContainerItemLayoutData(`${this.getId()}-itemLayoutData-${id}`, {\n\t\t\t\t\t\tminRows: 2,\n\t\t\t\t\t\tcolumns: oVisualization.getDisplayFormat?.() === DisplayFormat.Standard ? 2 : 4\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t\toVisualization?.bindProperty?.(\n\t\t\t\t\t\"active\",\n\t\t\t\t\tisPhoneScreen ? \"/activateInsightsTilesOnPhone\" : \"/activateInsightsTilesOnDesktop\"\n\t\t\t\t);\n\t\t\t\treturn oVisualization as ManagedObject;\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Hides the header of the tiles panel.\n\t * @private\n\t */\n\tpublic handleHideHeader() {\n\t\tthis._headerVisible = false;\n\t\tthis.setProperty(\"title\", \"\");\n\t\tthis._toggleHeaderActions(false);\n\t}\n\n\t/**\n\t * Adds the header to the tiles panel.\n\t * @private\n\t */\n\tpublic handleAddHeader() {\n\t\tthis._headerVisible = true;\n\t\tthis.setProperty(\"title\", `${this.spaceTitle} (${this.aInsightsApps.length})`);\n\t\tthis._toggleHeaderActions(true);\n\t}\n\n\t/**\n\t * Calculates the number of visible tiles that can fit within the available width of the parent container.\n\t *\n\t * @private\n\t * @param {ICustomVisualization[]} insightsApps - An array of custom visualizations to be displayed as tiles.\n\t * @returns {number} - The number of visible tiles.\n\t */\n\tprivate _calculateVisibleTileCount(insightsApps: ICustomVisualization[]): number {\n\t\tconst layout = this._getInsightsContainer()?._getLayout();\n\t\tconst layoutDomRef = layout?.getDomRef();\n\t\tconst apps = insightsApps || [];\n\t\tlet count = 0;\n\n\t\tif (layoutDomRef && apps.length) {\n\t\t\tconst isHeaderVisible = layout.getProperty(\"showHeader\") as boolean;\n\t\t\tconst sectionNodeIndex = isHeaderVisible ? 1 : 0;\n\t\t\tconst sectionDomRef = layoutDomRef.childNodes[sectionNodeIndex] as Element;\n\t\t\tconst domProperties = fetchElementProperties(sectionDomRef, [\"width\", \"padding-left\", \"padding-right\"]);\n\t\t\tlet availableWidth = domProperties.width - domProperties[\"padding-left\"] - domProperties[\"padding-right\"];\n\t\t\tconst widthMap = {} as Record<DisplayFormat, number>;\n\n\t\t\twidthMap[DisplayFormat.Standard] = StandardTileWidth + Gap;\n\t\t\twidthMap[DisplayFormat.StandardWide] = StandardWideTileWidth + Gap;\n\n\t\t\tlet nextTileWidth = widthMap[(apps[count].visualization?.displayFormatHint ?? DisplayFormat.Standard) as DisplayFormat];\n\t\t\tdo {\n\t\t\t\tavailableWidth -= nextTileWidth;\n\t\t\t\t++count;\n\t\t\t\tnextTileWidth = widthMap[(apps[count]?.visualization?.displayFormatHint ?? DisplayFormat.Standard) as DisplayFormat];\n\t\t\t} while (availableWidth > nextTileWidth);\n\t\t}\n\n\t\treturn count || 1;\n\t}\n\n\tprivate _calculatePlaceholderTileCount(): number {\n\t\tconst layoutDomRef = this._getInsightsContainer()?._getLayout()?.getDomRef();\n\t\tlet count = 0;\n\t\tif (layoutDomRef) {\n\t\t\tconst sectionDomRef = layoutDomRef.childNodes[0] as Element;\n\t\t\tconst domProperties = fetchElementProperties(sectionDomRef, [\"width\", \"padding-left\", \"padding-right\"]);\n\t\t\tlet availableWidth = domProperties.width - domProperties[\"padding-left\"] - domProperties[\"padding-right\"];\n\t\t\tconst width = StandardTileWidth + Gap;\n\n\t\t\tcount = Math.floor(availableWidth / width);\n\t\t}\n\n\t\treturn count || 1;\n\t}\n\n\t/**\n\t * Adjusts the layout of the tiles panel based on the current layout and device type.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic _adjustLayout() {\n\t\tconst layout = this._getInsightsContainer()?._getLayout();\n\t\tconst isMobileDevice = this.getDeviceType() === DeviceType.Mobile;\n\n\t\tif (layout) {\n\t\t\tconst visibleTileCount = isMobileDevice\n\t\t\t\t? this.aInsightsApps?.length\n\t\t\t\t: this._calculateVisibleTileCount(this.aInsightsApps as ICustomVisualization[]);\n\t\t\tconst isElementExpanded = layout._getCurrentExpandedElementName() === this.getProperty(\"fullScreenName\");\n\t\t\tthis._controlModel.setProperty(\n\t\t\t\t\"/tiles\",\n\t\t\t\tisElementExpanded ? this.aInsightsApps : this.aInsightsApps?.slice(0, visibleTileCount)\n\t\t\t);\n\t\t\tthis._controlModel.setProperty(\"/isPhone\", isMobileDevice);\n\t\t\tthis._updateTilesActivity();\n\t\t\t//Show/Hide Full Screen Button if panel header is visible otherwise update visibility of container Full Screen Button\n\t\t\tconst showFullScreenButton = isElementExpanded || this.aInsightsApps.length > visibleTileCount;\n\t\t\tif (this._headerVisible) {\n\t\t\t\tif (!isMobileDevice) {\n\t\t\t\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => {\n\t\t\t\t\t\tif (actionButton.getId().includes(tilesActionButtons.ADD_TILES)) {\n\t\t\t\t\t\t\tthis._getInsightsContainer().toggleActionButton(actionButton, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tthis._getInsightsContainer()?.toggleFullScreenElements(this, showFullScreenButton);\n\t\t\t} else {\n\t\t\t\tconst fullScreenButton = getAssociatedFullScreenMenuItem(this);\n\t\t\t\tconst fullScreenText = fullScreenButton?.getTitle() ?? \"\";\n\t\t\t\tthis._getInsightsContainer()?.updateMenuItem(\n\t\t\t\t\tthis._controlMap.get(`${this.getId()}-${tilesContainerMenuItems.SHOW_MORE}`) as MenuItem,\n\t\t\t\t\tshowFullScreenButton,\n\t\t\t\t\tfullScreenText\n\t\t\t\t);\n\t\t\t\tthis._getInsightsContainer()?.updateActionButton(\n\t\t\t\t\tthis._controlMap.get(`${this.getId()}-${tilesContainerActionButtons.SHOW_MORE}`) as Button,\n\t\t\t\t\tshowFullScreenButton,\n\t\t\t\t\tfullScreenText\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves the InsightsContainer instance associated with this TilesPanel.\n\t *\n\t * @private\n\t * @returns {InsightsContainer} The InsightsContainer instance.\n\t */\n\tprivate _getInsightsContainer(): InsightsContainer {\n\t\tif (!this.insightsContainer) {\n\t\t\tthis.insightsContainer = this.getParent() as InsightsContainer;\n\t\t}\n\t\treturn this.insightsContainer;\n\t}\n\n\t/**\n\t * Retrieves the menu items for the container.\n\t *\n\t * @private\n\t * @returns {MenuItem[]} An array of MenuItem instances.\n\t */\n\tpublic getContainerMenuItems(): MenuItem[] {\n\t\tif (!this._containerMenuItems) {\n\t\t\tconst containerShowMore = createShowMoreMenuItem(this, tilesContainerMenuItems.SHOW_MORE, \"containerTilesShowMore\");\n\t\t\tthis._controlMap.set(`${this.getId()}-${tilesContainerMenuItems.SHOW_MORE}`, containerShowMore);\n\t\t\tthis._containerMenuItems = [containerShowMore];\n\t\t}\n\t\treturn this._containerMenuItems;\n\t}\n\n\t/**\n\t * Retrieves the action buttons for the container.\n\t *\n\t * @private\n\t * @returns {Button[]} An array of Button instances.\n\t */\n\tpublic getContainerActionButtons(): Button[] {\n\t\tif (!this._containerActionButtons) {\n\t\t\tthis._containerActionButtons = [];\n\n\t\t\tconst containerFullScreenActionButton = createShowMoreActionButton(\n\t\t\t\tthis,\n\t\t\t\ttilesContainerActionButtons.SHOW_MORE,\n\t\t\t\t\"containerTilesShowMore\"\n\t\t\t);\n\t\t\tif (containerFullScreenActionButton) {\n\t\t\t\tthis._controlMap.set(`${this.getId()}-${tilesContainerActionButtons.SHOW_MORE}`, containerFullScreenActionButton);\n\t\t\t\tthis._containerActionButtons.push(containerFullScreenActionButton);\n\t\t\t}\n\t\t}\n\t\treturn this._containerActionButtons;\n\t}\n\n\t/**\n\t * Toggles the visibility of the header actions.\n\t *\n\t * @param {boolean} bShow - Whether to show or hide the header actions.\n\t * @private\n\t */\n\tprivate _toggleHeaderActions(bShow: boolean) {\n\t\t(this.getAggregation(\"menuItems\") as MenuItem[])?.forEach((menuItem) => {\n\t\t\tthis._getInsightsContainer()?.toggleMenuListItem(menuItem, bShow);\n\t\t});\n\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) =>\n\t\t\tthis._getInsightsContainer()?.toggleActionButton(actionButton, bShow)\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SpaceInsightsPanel.js","names":["sap","ui","define","Log","GridContainer","GridContainerItemLayoutData","GenericTile","HeaderContainer","VBox","sap_m_library","Lib","JSONModel","Container","S4MyHome","__BasePanel","__ErrorPanel","__AppManager","___utils_CommonUtils","___utils_DataFormatUtils","___utils_Device","___utils_InsightsUtils","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","LoadState","_finallyRethrows","finalizer","bind","BasePanel","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","ErrorPanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","AppManager","filterVisualizations","getPageManagerInstance","recycleId","DeviceType","fetchElementProperties","getAssociatedFullScreenButton","getAssociatedFullScreenMenuItem","DisplayFormat","StandardTileWidth","StandardWideTileWidth","Gap","SpaceInsightsPanel","extend","metadata","library","properties","spaceId","type","group","defaultValue","title","fullScreenName","visibility","defaultAggregation","aggregations","content","multiple","singularName","tiles","events","handleHidePanel","parameters","handleUnhidePanel","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","init","_init","BasePanel.prototype.init.call","_controlMap","Map","_oData","activateInsightsTiles","activateInsightsTilesOnPhone","activateInsightsTilesOnDesktop","_controlModel","appManagerInstance","getInstance","pageManager","setProperty","_createTilesFlexWrapper","getServiceAsync","VizInstantiationService","catch","error","Error","message","String","_toggleTileActivity","parentContainer","_getTilesContainer","addContent","_errorPanel","setVisible","setTitle","_setTitle","spaceTitle","getTitle","_getTitle","getProperty","toggleUserActions","event","show","getParameter","_temp2","_temp","_appSwitched","Promise","resolve","refreshData","attachRouteMatched","warning","_showPlaceHolders","placeholderArray","Array","_calculatePlaceholderTileCount","fill","Loading","aInsightsApps","map","tileState","index","getId","sizeBehavior","frameType","mode","visible","renderOnThemeChange","ariaRole","dropAreaOffset","setLayoutData","columns","_clearPlaceHolders","renderPanel","_renderPanel","_exit","_this2","_temp4","_result","_temp3","_await$_this2$refresh","fireHandleHidePanel","_addErrorPanel","_wasThrown","fireEvent","fetchDynamicAppInSpace","_fetchDynamicAppInSpace","_this3","_temp8","_this3$pageManager$fe","_temp7","allVisualizations","_filterDuplicateVizs","allSpaces","space","find","children","_temp6","_temp5","child","fetchFavVizs","visualizations","_this3$allSpaces","fetchAllAvailableSpaces","_refreshData","refreshTiles","_this4","_this4$fetchDynamicAp","_temp0","fireHandleUnhidePanel","isMobile","getDeviceType","Mobile","container","tilesMobileContainer","tilesWrapperContainer","sDefaultAggreName","getMetadata","getDefaultAggregationName","dynamicTiles","getAggregation","forEach","refresh","layout","_getLayout","tilesContainer","toggleFullScreen","removeContent","bIsSmartBusinessTilePresent","some","oApp","isSmartBusinessTile","_temp9","load","name","messageTitle","_i18nBundle","getText","messageDescription","getData","addAggregation","_tilesWrapper","renderType","width","items","_createMobileFlexWrapper","_createWrapperFlexBox","setModel","scrollStep","scrollStepByItem","gridLayout","scrollTime","showDividers","addStyleClass","_attachAggregationToContainer","_updateTilesActivity","isPhoneScreen","bActivateInsightsTiles","Boolean","bindAggregation","path","factory","context","getObject","oVisualization","instantiateVisualization","visualization","minRows","getDisplayFormat","Standard","bindProperty","_calculateVisibleTileCount","insightsApps","layoutDomRef","getDomRef","apps","count","isHeaderVisible","sectionNodeIndex","sectionDomRef","childNodes","domProperties","availableWidth","widthMap","StandardWide","nextTileWidth","displayFormatHint","Math","floor","_adjustLayout","isMobileDevice","visibleTileCount","isElementExpanded","_getCurrentExpandedElementName","slice","showFullScreenButton","fullScreenButton","fullScreenText","fullScreenActionButton","setText","getParent"],"sources":["SpaceInsightsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerItemLayoutData from \"sap/f/GridContainerItemLayoutData\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState } from \"sap/m/library\";\nimport Event from \"sap/ui/base/Event\";\nimport ManagedObject from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport Lib from \"sap/ui/core/Lib\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport Container from \"sap/ushell/Container\";\nimport S4MyHome from \"sap/ushell/api/S4MyHome\";\nimport VisualizationInstantiation from \"sap/ushell/services/VisualizationInstantiation\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport ErrorPanel from \"./ErrorPanel\";\nimport { $SpaceInsightsPanelSettings } from \"./SpaceInsightsPanel\";\nimport TilesContainer from \"./TilesContainer\";\nimport { ICustomVisualization, ISectionAndVisualization } from \"./interface/AppsInterface\";\nimport { ISpace } from \"./interface/PageSpaceInterface\";\nimport AppManager from \"./utils/AppManager\";\nimport { filterVisualizations, getPageManagerInstance } from \"./utils/CommonUtils\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { DeviceType, fetchElementProperties } from \"./utils/Device\";\nimport { getAssociatedFullScreenButton, getAssociatedFullScreenMenuItem } from \"./utils/InsightsUtils\";\nimport PageManager from \"./utils/PageManager\";\n\nexport enum DisplayFormat {\n\tStandard = \"standard\",\n\tStandardWide = \"standardWide\"\n}\n\nconst StandardTileWidth = 176;\nconst StandardWideTileWidth = 368;\nconst Gap = 16;\n\n/**\n *\n * Tiles Panel class for managing and storing Space Insights Tiles.\n *\n * @extends sap.cux.home.BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n *\n * @private\n * @ui5-experimental-since 1.138.0\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.SpaceInsightsPanel\n */\n\nexport default class SpaceInsightsPanel extends BasePanel {\n\tconstructor(idOrSettings?: string | $SpaceInsightsPanelSettings);\n\tconstructor(id?: string, settings?: $SpaceInsightsPanelSettings);\n\t/**\n\t * Constructor for a new Tiles Panel.\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?: $SpaceInsightsPanelSettings) {\n\t\tsuper(id, settings);\n\t}\n\tprivate _oData!: Record<string, unknown>;\n\tprivate appManagerInstance!: AppManager;\n\tprivate VizInstantiationService!: VisualizationInstantiation;\n\tprivate tilesWrapperContainer!: GridContainer;\n\tprivate tilesMobileContainer!: HeaderContainer;\n\tprivate _tilesWrapper!: VBox;\n\tprivate aInsightsApps!: ICustomVisualization[] | GenericTile[];\n\tprivate _controlModel!: JSONModel;\n\tpublic _controlMap!: Map<string, Control | Element | UI5Element>;\n\tprivate tilesContainer!: TilesContainer;\n\tprivate _appSwitched!: boolean;\n\tprivate pageManager!: PageManager;\n\tprivate allSpaces!: ISpace[];\n\tprivate spaceTitle!: string | undefined;\n\tprivate _errorPanel!: ErrorPanel;\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the space whose apps should be loaded.\n\t\t\t */\n\t\t\tspaceId: { type: \"string\", group: \"Data\", defaultValue: \"\" },\n\t\t\t/**\n\t\t\t * Title for the tiles panel\n\t\t\t */\n\t\t\ttitle: { type: \"string\", group: \"Misc\", defaultValue: \"\" },\n\t\t\t/**\n\t\t\t * The name of the URL parameter used to expand the container into full-screen mode.\n\t\t\t */\n\t\t\tfullScreenName: { type: \"string\", group: \"Misc\", defaultValue: \"SI3\", visibility: \"hidden\" }\n\t\t},\n\t\tdefaultAggregation: \"tiles\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Specifies the content aggregation of the panel.\n\t\t\t */\n\t\t\tcontent: { multiple: true, singularName: \"content\", visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Aggregation of tiles available within the tiles Panel\n\t\t\t */\n\t\t\ttiles: { type: \"sap.cux.home.App\", multiple: true, singularName: \"tile\", visibility: \"hidden\" }\n\t\t},\n\t\tevents: {\n\t\t\thandleHidePanel: {\n\t\t\t\tparameters: {}\n\t\t\t},\n\t\t\thandleUnhidePanel: {\n\t\t\t\tparameters: {}\n\t\t\t}\n\t\t}\n\t};\n\n\t/**\n\t * Initializes the Tiles Panel.\n\t *\n\t * @private\n\t * @override\n\t */\n\tinit() {\n\t\tsuper.init();\n\t\tthis._controlMap = new Map();\n\t\t//Initialise Tiles Model\n\t\tthis._oData = {\n\t\t\ttiles: [] as ICustomVisualization[],\n\t\t\tactivateInsightsTiles: true,\n\t\t\tactivateInsightsTilesOnPhone: false,\n\t\t\tactivateInsightsTilesOnDesktop: false\n\t\t};\n\t\tthis._controlModel = new JSONModel(this._oData);\n\t\tthis.appManagerInstance = AppManager.getInstance();\n\t\tthis.pageManager = getPageManagerInstance(this);\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t\tthis._createTilesFlexWrapper();\n\t\tContainer.getServiceAsync<VisualizationInstantiation>(\"VisualizationInstantiation\")\n\t\t\t.then((VizInstantiationService) => {\n\t\t\t\tthis.VizInstantiationService = VizInstantiationService;\n\t\t\t})\n\t\t\t.catch((error) => {\n\t\t\t\tLog.error(error instanceof Error ? error.message : String(error));\n\t\t\t});\n\n\t\t// Toggles the activity of tiles\n\t\tthis._toggleTileActivity();\n\t\t//Add error panel to the parent container 'TilesContainer'\n\t\tconst parentContainer = this._getTilesContainer() as BaseContainer;\n\t\tparentContainer?.addContent(this._errorPanel);\n\t\t//set its visibility to false initially\n\t\tthis._errorPanel?.setVisible(false);\n\t}\n\n\tpublic setTitle(title: string) {\n\t\tif (!this.spaceTitle) this.spaceTitle = title;\n\t\treturn this.setProperty(\"title\", title);\n\t}\n\n\tpublic getTitle(): string {\n\t\tif (this.spaceTitle) return this.spaceTitle;\n\t\treturn this.getProperty(\"title\") as string;\n\t}\n\n\t/**\n\t * Toggles the activity of tiles on route change.\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _toggleTileActivity(): void {\n\t\tconst toggleUserActions = async (event: Event<{ isMyHomeRoute: boolean }>) => {\n\t\t\tconst show = event.getParameter(\"isMyHomeRoute\");\n\t\t\tthis._controlModel.setProperty(\"/activateInsightsTiles\", show);\n\t\t\tif (show) {\n\t\t\t\tif (this._appSwitched) {\n\t\t\t\t\tawait this.refreshData(true);\n\t\t\t\t\tthis._appSwitched = false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._appSwitched = true;\n\t\t\t}\n\t\t};\n\n\t\ttry {\n\t\t\tS4MyHome.attachRouteMatched({}, toggleUserActions, this);\n\t\t} catch (error) {\n\t\t\tLog.warning(error instanceof Error ? error.message : String(error));\n\t\t}\n\t}\n\n\t/**\n\t * Displays placeholder tiles while loading.\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _showPlaceHolders() {\n\t\tconst placeholderArray = new Array(this._calculatePlaceholderTileCount()).fill(LoadState.Loading) as LoadState[];\n\t\tthis.aInsightsApps = placeholderArray.map((tileState: LoadState, index: number) => {\n\t\t\treturn new GenericTile(recycleId(`${this.getId()}--placeHolderTile--${index}`), {\n\t\t\t\tsizeBehavior: \"Responsive\",\n\t\t\t\tstate: tileState,\n\t\t\t\tframeType: \"OneByOne\",\n\t\t\t\tmode: \"IconMode\",\n\t\t\t\tvisible: true,\n\t\t\t\trenderOnThemeChange: true,\n\t\t\t\tariaRole: \"listitem\",\n\t\t\t\tdropAreaOffset: 8\n\t\t\t}).setLayoutData?.(\n\t\t\t\tnew GridContainerItemLayoutData(recycleId(`${this.getId()}--placeHolderTileLayoutData--${index}`), {\n\t\t\t\t\tcolumns: 2\n\t\t\t\t})\n\t\t\t);\n\t\t});\n\t\tthis._controlModel.setProperty(\"/tiles\", this.aInsightsApps);\n\t}\n\n\t/**\n\t * Clears the placeholder tiles.\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _clearPlaceHolders() {\n\t\tthis._controlModel.setProperty(\"/tiles\", []);\n\t}\n\n\t/**\n\t * Renders the panel.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when the panel is rendered.\n\t */\n\tpublic async renderPanel(): Promise<void> {\n\t\ttry {\n\t\t\treturn await this.refreshData();\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t\tthis.fireHandleHidePanel();\n\t\t\tthis._addErrorPanel();\n\t\t} finally {\n\t\t\tthis.fireEvent(\"loaded\");\n\t\t}\n\t\treturn Promise.resolve();\n\t}\n\n\tprivate async fetchDynamicAppInSpace(): Promise<ICustomVisualization[]> {\n\t\tconst spaceId = this.getProperty(\"spaceId\") as string;\n\t\tthis.allSpaces = this.allSpaces || (await this.pageManager.fetchAllAvailableSpaces());\n\t\tconst space = this.allSpaces.find((space) => space.id === spaceId);\n\n\t\tif (!space || space.children.length === 0) return [];\n\t\tlet allVisualizations: ISectionAndVisualization[] = [];\n\n\t\tif (space && space.children.length > 0) {\n\t\t\tfor (const child of space.children) {\n\t\t\t\tconst visualizations = await this.appManagerInstance.fetchFavVizs(true, true, child.id);\n\t\t\t\tallVisualizations.push(...visualizations);\n\t\t\t}\n\t\t}\n\n\t\t//Filter out dynamic tiles\n\t\tallVisualizations = filterVisualizations(allVisualizations, true);\n\n\t\t//filter out duplicate visualizations\n\t\tallVisualizations = this.appManagerInstance._filterDuplicateVizs(allVisualizations, false);\n\n\t\treturn allVisualizations;\n\t}\n\n\t/**\n\t * Refreshes the data in the panel.\n\t *\n\t * @private\n\t * @param {boolean} [refreshTiles=false] - Whether to refresh the tiles.\n\t * @returns {Promise<void>} A promise that resolves when the data is refreshed.\n\t */\n\tpublic async refreshData(refreshTiles: boolean = false) {\n\t\tthis.aInsightsApps = await this.fetchDynamicAppInSpace();\n\t\tconst bIsSmartBusinessTilePresent = this.aInsightsApps.some((oApp) => oApp.isSmartBusinessTile);\n\t\tif (bIsSmartBusinessTilePresent) {\n\t\t\tawait Lib.load({ name: \"sap.cloudfnd.smartbusiness.lib.reusetiles\" });\n\t\t}\n\t\tthis._clearPlaceHolders();\n\t\tthis._controlModel.setProperty(\"/tiles\", this.aInsightsApps);\n\t\tif (this.aInsightsApps?.length) {\n\t\t\tthis._errorPanel?.setVisible(false);\n\t\t\tthis.fireHandleUnhidePanel();\n\t\t\tif (refreshTiles) {\n\t\t\t\tconst isMobile = this.getDeviceType() === DeviceType.Mobile;\n\t\t\t\tconst container = isMobile ? this.tilesMobileContainer : this.tilesWrapperContainer;\n\t\t\t\tconst sDefaultAggreName = container.getMetadata().getDefaultAggregationName();\n\t\t\t\tconst dynamicTiles = (container.getAggregation(sDefaultAggreName) as ManagedObject[]) || [];\n\t\t\t\tdynamicTiles.forEach((tiles) => (tiles as ICustomVisualization).refresh?.());\n\t\t\t}\n\t\t\tthis.setProperty(\"title\", `${this.spaceTitle} (${this.aInsightsApps.length})`);\n\t\t} else {\n\t\t\tthis.fireHandleHidePanel();\n\t\t\tthis._addErrorPanel();\n\t\t\tconst layout = this._getTilesContainer()?._getLayout();\n\t\t\tif (layout?.getProperty(\"expanded\")) {\n\t\t\t\tthis.tilesContainer.addContent(this);\n\t\t\t\tlayout?.toggleFullScreen(this);\n\t\t\t\t//remove the tiles panel from the tiles container\n\t\t\t\tthis.tilesContainer.removeContent(this);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _addErrorPanel() {\n\t\tconst parentContainer = this._getTilesContainer() as BaseContainer;\n\t\tthis.setVisible(false);\n\t\tif (!this._errorPanel) {\n\t\t\tthis._errorPanel = new ErrorPanel(`${this.getId()}-errorSpaceInsightsPanel`, {\n\t\t\t\tmessageTitle: this._i18nBundle.getText(\"noAppsTitle\"),\n\t\t\t\tmessageDescription: this._i18nBundle.getText(\"noInsightsTileMsg\")\n\t\t\t});\n\t\t\tthis._errorPanel.getData();\n\t\t\tthis.setProperty(\"title\", `${this.spaceTitle}`);\n\n\t\t\t//Add error panel to the parent container 'TilesContainer'\n\t\t\tparentContainer.addAggregation(\"content\", this._errorPanel);\n\t\t\tthis._errorPanel.setVisible(true);\n\t\t\tthis._errorPanel.setProperty(\"enableSettings\", true);\n\t\t}\n\t}\n\n\t/**\n\t * Generates the wrapper for the tiles container, if it doesn't already exist\n\t *\n\t * @private\n\t * @override\n\t * @returns {sap.m.VBox} The tiles Vbox wrapper.\n\t */\n\tprivate _createTilesFlexWrapper() {\n\t\tif (!this._tilesWrapper) {\n\t\t\tthis._tilesWrapper = new VBox(`${this.getId()}-tilesWrapper`, {\n\t\t\t\trenderType: \"Bare\",\n\t\t\t\twidth: \"100%\",\n\t\t\t\titems: [this._createMobileFlexWrapper(), this._createWrapperFlexBox()]\n\t\t\t});\n\t\t\tthis._showPlaceHolders();\n\t\t\tthis._tilesWrapper.setModel(this._controlModel);\n\t\t\tthis.addContent(this._tilesWrapper);\n\t\t}\n\t}\n\n\t/**\n\t * Generates wrapper for displaying tiles in mobile mode.\n\t * @private\n\t * @returns {sap.m.HeaderContainer} The generated tiles wrapper.\n\t */\n\n\tprivate _createMobileFlexWrapper(): HeaderContainer {\n\t\t// Check if the mobile container already exists\n\t\tif (!this.tilesMobileContainer) {\n\t\t\t// Create the HeaderContainer with required properties\n\t\t\tthis.tilesMobileContainer = new HeaderContainer(`${this.getId()}-insightsTilesMobileContainer`, {\n\t\t\t\tscrollStep: 0,\n\t\t\t\tscrollStepByItem: 1,\n\t\t\t\tgridLayout: true,\n\t\t\t\tscrollTime: 1000,\n\t\t\t\tshowDividers: false,\n\t\t\t\tvisible: \"{/isPhone}\"\n\t\t\t}).addStyleClass(\"sectionMarginTopTilesInsight sapMHeaderContainerMarginBottom\");\n\n\t\t\t// Attach aggregation to the container\n\t\t\tthis._attachAggregationToContainer(this.tilesMobileContainer);\n\t\t}\n\t\t// Return the existing or newly created container\n\t\treturn this.tilesMobileContainer;\n\t}\n\n\t/**\n\t * Generates app wrapper (GridContainer) for displaying tiles.\n\t * @private\n\t * @returns {sap.m.GridContainer} The generated tiles wrapper.\n\t */\n\n\tprivate _createWrapperFlexBox(): GridContainer {\n\t\t// Check if the tilesWrapperContainer already exists\n\t\tif (!this.tilesWrapperContainer) {\n\t\t\t// Create the GridContainer with required properties\n\t\t\tthis.tilesWrapperContainer = new GridContainer(`${this.getId()}-insightsTilesContainer`, {\n\t\t\t\tvisible: \"{= !${/isPhone}}\"\n\t\t\t}).addStyleClass(\"insightTiles sapUiSmallMarginTop\");\n\t\t\t// Attach aggregation to the container\n\t\t\tthis._attachAggregationToContainer(this.tilesWrapperContainer);\n\t\t}\n\t\t// Return the existing or newly created container\n\t\treturn this.tilesWrapperContainer;\n\t}\n\n\t/**\n\t * Updates the activation flags for Insights Tiles based on the device type and viewport.\n\t *\n\t *\n\t * @private\n\t * @returns {void}\n\t */\n\tprivate _updateTilesActivity(): void {\n\t\t// Activate Insights Tiles based on container in viewport\n\t\tconst isPhoneScreen: boolean = this.getDeviceType() === DeviceType.Mobile;\n\t\t// Explicitly type the property being retrieved\n\t\tconst bActivateInsightsTiles: boolean = Boolean(this._controlModel.getProperty(\"/activateInsightsTiles\"));\n\t\tthis._controlModel.setProperty(\"/activateInsightsTilesOnPhone\", bActivateInsightsTiles && isPhoneScreen);\n\t\tthis._controlModel.setProperty(\"/activateInsightsTilesOnDesktop\", bActivateInsightsTiles && !isPhoneScreen);\n\t}\n\t/**\n\t * Attaches necessary aggregations and configurations to the provided container.\n\t *\n\t * @private\n\t * @param {GridContainer | HeaderContainer} tilesWrapperContainer - The container to which the aggregation and events are to be attached.\n\t * @returns {void}\n\t *\n\t */\n\tprivate _attachAggregationToContainer(tilesWrapperContainer: GridContainer | HeaderContainer) {\n\t\ttilesWrapperContainer.setModel(this._controlModel);\n\t\tconst sDefaultAggreName = tilesWrapperContainer.getMetadata().getDefaultAggregationName();\n\t\tconst isPhoneScreen = this.getDeviceType() === DeviceType.Mobile;\n\t\ttilesWrapperContainer.bindAggregation(sDefaultAggreName, {\n\t\t\tpath: \"/tiles\",\n\t\t\tfactory: (id: string, context: Context): ManagedObject => {\n\t\t\t\tconst oApp = context.getObject() as ICustomVisualization;\n\t\t\t\tif (oApp instanceof GenericTile) {\n\t\t\t\t\treturn oApp;\n\t\t\t\t}\n\t\t\t\tconst oVisualization = this.VizInstantiationService.instantiateVisualization(oApp.visualization) as ICustomVisualization;\n\t\t\t\toVisualization.setLayoutData?.(\n\t\t\t\t\tnew GridContainerItemLayoutData(`${this.getId()}-itemLayoutData-${id}`, {\n\t\t\t\t\t\tminRows: 2,\n\t\t\t\t\t\tcolumns: oVisualization.getDisplayFormat?.() === DisplayFormat.Standard ? 2 : 4\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t\toVisualization?.bindProperty?.(\n\t\t\t\t\t\"active\",\n\t\t\t\t\tisPhoneScreen ? \"/activateInsightsTilesOnPhone\" : \"/activateInsightsTilesOnDesktop\"\n\t\t\t\t);\n\t\t\t\treturn oVisualization as ManagedObject;\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Calculates the number of visible tiles that can fit within the available width of the parent container.\n\t *\n\t * @private\n\t * @param {ICustomVisualization[]} insightsApps - An array of custom visualizations to be displayed as tiles.\n\t * @returns {number} - The number of visible tiles.\n\t */\n\tprivate _calculateVisibleTileCount(insightsApps: ICustomVisualization[]): number {\n\t\tconst layout = this._getTilesContainer()?._getLayout();\n\t\tconst layoutDomRef = layout?.getDomRef();\n\t\tconst apps = insightsApps || [];\n\t\tlet count = 0;\n\n\t\tif (layoutDomRef && apps.length) {\n\t\t\tconst isHeaderVisible = layout.getProperty(\"showHeader\") as boolean;\n\t\t\tconst sectionNodeIndex = isHeaderVisible ? 1 : 0;\n\t\t\tconst sectionDomRef = layoutDomRef.childNodes[sectionNodeIndex] as Element;\n\t\t\tconst domProperties = fetchElementProperties(sectionDomRef, [\"width\", \"padding-left\", \"padding-right\"]);\n\t\t\tlet availableWidth = domProperties.width - domProperties[\"padding-left\"] - domProperties[\"padding-right\"];\n\t\t\tconst widthMap = {} as Record<DisplayFormat, number>;\n\n\t\t\twidthMap[DisplayFormat.Standard] = StandardTileWidth + Gap;\n\t\t\twidthMap[DisplayFormat.StandardWide] = StandardWideTileWidth + Gap;\n\n\t\t\tlet nextTileWidth = widthMap[(apps[count].visualization?.displayFormatHint ?? DisplayFormat.Standard) as DisplayFormat];\n\t\t\tdo {\n\t\t\t\tavailableWidth -= nextTileWidth;\n\t\t\t\t++count;\n\t\t\t\tnextTileWidth = widthMap[(apps[count]?.visualization?.displayFormatHint ?? DisplayFormat.Standard) as DisplayFormat];\n\t\t\t} while (availableWidth > nextTileWidth);\n\t\t}\n\n\t\treturn count || 1;\n\t}\n\n\tprivate _calculatePlaceholderTileCount(): number {\n\t\tconst layoutDomRef = this._getTilesContainer()?._getLayout()?.getDomRef();\n\t\tlet count = 0;\n\t\tif (layoutDomRef) {\n\t\t\tconst sectionDomRef = layoutDomRef.childNodes[0] as Element;\n\t\t\tconst domProperties = fetchElementProperties(sectionDomRef, [\"width\", \"padding-left\", \"padding-right\"]);\n\t\t\tlet availableWidth = domProperties.width - domProperties[\"padding-left\"] - domProperties[\"padding-right\"];\n\t\t\tconst width = StandardTileWidth + Gap;\n\n\t\t\tcount = Math.floor(availableWidth / width);\n\t\t}\n\n\t\treturn count || 1;\n\t}\n\n\t/**\n\t * Adjusts the layout of the tiles panel based on the current layout and device type.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic _adjustLayout() {\n\t\tconst layout = this._getTilesContainer()?._getLayout();\n\t\tconst isMobileDevice = this.getDeviceType() === DeviceType.Mobile;\n\n\t\tif (layout) {\n\t\t\tconst visibleTileCount = isMobileDevice\n\t\t\t\t? this.aInsightsApps?.length\n\t\t\t\t: this._calculateVisibleTileCount(this.aInsightsApps as ICustomVisualization[]);\n\t\t\tconst isElementExpanded = layout._getCurrentExpandedElementName() === this.getProperty(\"fullScreenName\");\n\t\t\tthis._controlModel.setProperty(\n\t\t\t\t\"/tiles\",\n\t\t\t\tisElementExpanded ? this.aInsightsApps : this.aInsightsApps?.slice(0, visibleTileCount)\n\t\t\t);\n\t\t\tthis._controlModel.setProperty(\"/isPhone\", isMobileDevice);\n\t\t\tthis._updateTilesActivity();\n\t\t\t//Show/Hide Full Screen Button if panel header is visible otherwise update visibility of container Full Screen Button\n\t\t\tconst showFullScreenButton = isElementExpanded || this.aInsightsApps.length > visibleTileCount;\n\t\t\tconst fullScreenButton = getAssociatedFullScreenMenuItem(this);\n\t\t\tconst fullScreenText = fullScreenButton?.getTitle() ?? \"\";\n\n\t\t\t//update the panel menu-item show more button and show more action button in panel header\n\t\t\tfullScreenButton?.setVisible(showFullScreenButton);\n\t\t\tfullScreenButton?.setTitle(fullScreenText);\n\n\t\t\tconst fullScreenActionButton = getAssociatedFullScreenButton(this);\n\t\t\tfullScreenActionButton?.setVisible(showFullScreenButton);\n\t\t\tfullScreenActionButton?.setText(fullScreenText);\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves the TilesContainer instance associated with this TilesPanel.\n\t *\n\t * @private\n\t * @returns {TilesContainer} The TilesContainer instance.\n\t */\n\tprivate _getTilesContainer(): TilesContainer {\n\t\tif (!this.tilesContainer) {\n\t\t\tthis.tilesContainer = this.getParent() as TilesContainer;\n\t\t}\n\t\treturn this.tilesContainer;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}