@sapui5/sap.cux.home 1.142.0 → 1.142.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (294) 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 -5
  6. package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
  7. package/src/sap/cux/home/AdvancedSettingsPanel.ts +6 -5
  8. package/src/sap/cux/home/AppsAdditionPanel.d.ts +47 -34
  9. package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
  10. package/src/sap/cux/home/AppsAdditionPanel.js +333 -237
  11. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  12. package/src/sap/cux/home/AppsAdditionPanel.ts +344 -230
  13. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  14. package/src/sap/cux/home/AppsContainer.js +3 -2
  15. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  16. package/src/sap/cux/home/AppsContainer.ts +3 -2
  17. package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
  18. package/src/sap/cux/home/BaseAppPanel.js +6 -1
  19. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  20. package/src/sap/cux/home/BaseAppPanel.ts +6 -1
  21. package/src/sap/cux/home/BaseContainer.d.ts +1 -1
  22. package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
  23. package/src/sap/cux/home/BaseContainer.js +10 -2
  24. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  25. package/src/sap/cux/home/BaseContainer.ts +7 -3
  26. package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
  27. package/src/sap/cux/home/BaseContainerRenderer.js +6 -0
  28. package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
  29. package/src/sap/cux/home/BaseContainerRenderer.ts +6 -0
  30. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  31. package/src/sap/cux/home/BaseNewsPanel.ts +2 -2
  32. package/src/sap/cux/home/CardsContainer.d.ts +108 -0
  33. package/src/sap/cux/home/CardsContainer.d.ts.map +1 -0
  34. package/src/sap/cux/home/CardsContainer.js +207 -0
  35. package/src/sap/cux/home/CardsContainer.js.map +1 -0
  36. package/src/sap/cux/home/CardsContainer.ts +202 -0
  37. package/src/sap/cux/home/CardsPanel.d.ts +43 -62
  38. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  39. package/src/sap/cux/home/CardsPanel.js +345 -285
  40. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  41. package/src/sap/cux/home/CardsPanel.ts +211 -200
  42. package/src/sap/cux/home/ContentAdditionDialog.d.ts +2 -0
  43. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  44. package/src/sap/cux/home/ContentAdditionDialog.js +12 -6
  45. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  46. package/src/sap/cux/home/ContentAdditionDialog.ts +13 -5
  47. package/src/sap/cux/home/ErrorPanel.d.ts +0 -5
  48. package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
  49. package/src/sap/cux/home/ErrorPanel.gen.d.ts +31 -0
  50. package/src/sap/cux/home/ErrorPanel.js +11 -16
  51. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  52. package/src/sap/cux/home/ErrorPanel.ts +7 -19
  53. package/src/sap/cux/home/FavAppPanel.d.ts +1 -2
  54. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  55. package/src/sap/cux/home/FavAppPanel.js +296 -301
  56. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  57. package/src/sap/cux/home/FavAppPanel.ts +14 -10
  58. package/src/sap/cux/home/InsightsAdditionPanel.d.ts +11 -4
  59. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  60. package/src/sap/cux/home/InsightsAdditionPanel.js +20 -8
  61. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  62. package/src/sap/cux/home/InsightsAdditionPanel.ts +20 -7
  63. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts +8 -0
  64. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts.map +1 -1
  65. package/src/sap/cux/home/InsightsCardsSettingsPanel.js +15 -0
  66. package/src/sap/cux/home/InsightsCardsSettingsPanel.js.map +1 -1
  67. package/src/sap/cux/home/InsightsCardsSettingsPanel.ts +11 -0
  68. package/src/sap/cux/home/InsightsTilesSettingsPanel.js +1 -1
  69. package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
  70. package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +1 -1
  71. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +3 -0
  72. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
  73. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +252 -39
  74. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
  75. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +287 -57
  76. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  77. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +11 -10
  78. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  79. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +12 -10
  80. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +2 -2
  81. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  82. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +7 -7
  83. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
  84. package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +2 -2
  85. package/src/sap/cux/home/Layout.d.ts +3 -1
  86. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  87. package/src/sap/cux/home/Layout.js +49 -8
  88. package/src/sap/cux/home/Layout.js.map +1 -1
  89. package/src/sap/cux/home/Layout.ts +59 -8
  90. package/src/sap/cux/home/LayoutSettingsPanel.d.ts +10 -0
  91. package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
  92. package/src/sap/cux/home/LayoutSettingsPanel.js +341 -56
  93. package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
  94. package/src/sap/cux/home/LayoutSettingsPanel.ts +379 -63
  95. package/src/sap/cux/home/{NewsAndPagesContainer.d.ts → NewsContainer.d.ts} +13 -14
  96. package/src/sap/cux/home/NewsContainer.d.ts.map +1 -0
  97. package/src/sap/cux/home/{NewsAndPagesContainer.gen.d.ts → NewsContainer.gen.d.ts} +3 -3
  98. package/src/sap/cux/home/{NewsAndPagesContainer.js → NewsContainer.js} +26 -113
  99. package/src/sap/cux/home/NewsContainer.js.map +1 -0
  100. package/src/sap/cux/home/{NewsAndPagesContainer.ts → NewsContainer.ts} +29 -118
  101. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  102. package/src/sap/cux/home/NewsGroup.ts +1 -1
  103. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  104. package/src/sap/cux/home/NewsPanel.js +12 -14
  105. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  106. package/src/sap/cux/home/NewsPanel.ts +13 -16
  107. package/src/sap/cux/home/NewsSettingsPanel.js +4 -4
  108. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  109. package/src/sap/cux/home/NewsSettingsPanel.ts +5 -5
  110. package/src/sap/cux/home/PagePanel.d.ts +1 -1
  111. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  112. package/src/sap/cux/home/PagePanel.js +18 -10
  113. package/src/sap/cux/home/PagePanel.js.map +1 -1
  114. package/src/sap/cux/home/PagePanel.ts +25 -15
  115. package/src/sap/cux/home/PagesContainer.d.ts +72 -0
  116. package/src/sap/cux/home/PagesContainer.d.ts.map +1 -0
  117. package/src/sap/cux/home/PagesContainer.gen.d.ts +78 -0
  118. package/src/sap/cux/home/PagesContainer.js +333 -0
  119. package/src/sap/cux/home/PagesContainer.js.map +1 -0
  120. package/src/sap/cux/home/PagesContainer.ts +179 -0
  121. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +8 -60
  122. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
  123. package/src/sap/cux/home/SpaceInsightsPanel.js +66 -132
  124. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
  125. package/src/sap/cux/home/SpaceInsightsPanel.ts +69 -151
  126. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  127. package/src/sap/cux/home/TaskPanel.js +16 -1
  128. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  129. package/src/sap/cux/home/TaskPanel.ts +15 -1
  130. package/src/sap/cux/home/TilesContainer.d.ts +111 -0
  131. package/src/sap/cux/home/TilesContainer.d.ts.map +1 -0
  132. package/src/sap/cux/home/TilesContainer.js +218 -0
  133. package/src/sap/cux/home/TilesContainer.js.map +1 -0
  134. package/src/sap/cux/home/TilesContainer.ts +216 -0
  135. package/src/sap/cux/home/TilesPanel.d.ts +22 -52
  136. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  137. package/src/sap/cux/home/TilesPanel.js +184 -165
  138. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  139. package/src/sap/cux/home/TilesPanel.ts +160 -154
  140. package/src/sap/cux/home/ToDoPanel.d.ts +1 -0
  141. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  142. package/src/sap/cux/home/ToDoPanel.js +38 -63
  143. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  144. package/src/sap/cux/home/ToDoPanel.ts +32 -31
  145. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts +2 -2
  146. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
  147. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +1 -1
  148. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
  149. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +4 -4
  150. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts +2 -2
  151. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
  152. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -1
  153. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
  154. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +4 -4
  155. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts +2 -2
  156. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts.map +1 -1
  157. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js +1 -1
  158. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js.map +1 -1
  159. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.ts +3 -3
  160. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts +2 -2
  161. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
  162. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +4 -4
  163. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
  164. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +5 -5
  165. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
  166. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +30 -3
  167. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
  168. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +23 -1
  169. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +29 -19
  170. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
  171. package/src/sap/cux/home/flexibility/Layout.flexibility.js +78 -2
  172. package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
  173. package/src/sap/cux/home/flexibility/Layout.flexibility.ts +81 -1
  174. package/src/sap/cux/home/i18n/messagebundle.properties +26 -12
  175. package/src/sap/cux/home/i18n/messagebundle_ar.properties +18 -2
  176. package/src/sap/cux/home/i18n/messagebundle_bg.properties +18 -2
  177. package/src/sap/cux/home/i18n/messagebundle_ca.properties +18 -2
  178. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +18 -2
  179. package/src/sap/cux/home/i18n/messagebundle_cs.properties +18 -2
  180. package/src/sap/cux/home/i18n/messagebundle_cy.properties +18 -2
  181. package/src/sap/cux/home/i18n/messagebundle_da.properties +18 -2
  182. package/src/sap/cux/home/i18n/messagebundle_de.properties +18 -2
  183. package/src/sap/cux/home/i18n/messagebundle_el.properties +18 -2
  184. package/src/sap/cux/home/i18n/messagebundle_en.properties +19 -3
  185. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +18 -2
  186. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +21 -5
  187. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +21 -5
  188. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +18 -2
  189. package/src/sap/cux/home/i18n/messagebundle_es.properties +19 -2
  190. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +18 -2
  191. package/src/sap/cux/home/i18n/messagebundle_et.properties +18 -2
  192. package/src/sap/cux/home/i18n/messagebundle_fi.properties +18 -2
  193. package/src/sap/cux/home/i18n/messagebundle_fr.properties +18 -2
  194. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +18 -2
  195. package/src/sap/cux/home/i18n/messagebundle_hi.properties +18 -2
  196. package/src/sap/cux/home/i18n/messagebundle_hr.properties +18 -2
  197. package/src/sap/cux/home/i18n/messagebundle_hu.properties +18 -2
  198. package/src/sap/cux/home/i18n/messagebundle_id.properties +18 -2
  199. package/src/sap/cux/home/i18n/messagebundle_it.properties +23 -7
  200. package/src/sap/cux/home/i18n/messagebundle_iw.properties +18 -2
  201. package/src/sap/cux/home/i18n/messagebundle_ja.properties +18 -2
  202. package/src/sap/cux/home/i18n/messagebundle_kk.properties +18 -2
  203. package/src/sap/cux/home/i18n/messagebundle_ko.properties +18 -2
  204. package/src/sap/cux/home/i18n/messagebundle_lt.properties +18 -2
  205. package/src/sap/cux/home/i18n/messagebundle_lv.properties +18 -2
  206. package/src/sap/cux/home/i18n/messagebundle_mk.properties +18 -2
  207. package/src/sap/cux/home/i18n/messagebundle_ms.properties +18 -2
  208. package/src/sap/cux/home/i18n/messagebundle_nl.properties +18 -2
  209. package/src/sap/cux/home/i18n/messagebundle_no.properties +18 -2
  210. package/src/sap/cux/home/i18n/messagebundle_pl.properties +18 -2
  211. package/src/sap/cux/home/i18n/messagebundle_pt.properties +18 -2
  212. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +18 -2
  213. package/src/sap/cux/home/i18n/messagebundle_ro.properties +18 -2
  214. package/src/sap/cux/home/i18n/messagebundle_ru.properties +18 -2
  215. package/src/sap/cux/home/i18n/messagebundle_sh.properties +18 -2
  216. package/src/sap/cux/home/i18n/messagebundle_sk.properties +18 -2
  217. package/src/sap/cux/home/i18n/messagebundle_sl.properties +18 -2
  218. package/src/sap/cux/home/i18n/messagebundle_sr.properties +18 -2
  219. package/src/sap/cux/home/i18n/messagebundle_sv.properties +18 -2
  220. package/src/sap/cux/home/i18n/messagebundle_th.properties +18 -2
  221. package/src/sap/cux/home/i18n/messagebundle_tr.properties +18 -2
  222. package/src/sap/cux/home/i18n/messagebundle_uk.properties +20 -4
  223. package/src/sap/cux/home/i18n/messagebundle_vi.properties +18 -2
  224. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +18 -2
  225. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +18 -2
  226. package/src/sap/cux/home/interface/CardsInterface.d.ts +6 -0
  227. package/src/sap/cux/home/interface/CardsInterface.d.ts.map +1 -1
  228. package/src/sap/cux/home/interface/CardsInterface.js.map +1 -1
  229. package/src/sap/cux/home/interface/CardsInterface.ts +6 -1
  230. package/src/sap/cux/home/interface/KeyUserInterface.d.ts +27 -4
  231. package/src/sap/cux/home/interface/KeyUserInterface.d.ts.map +1 -1
  232. package/src/sap/cux/home/interface/KeyUserInterface.js.map +1 -1
  233. package/src/sap/cux/home/interface/KeyUserInterface.ts +23 -4
  234. package/src/sap/cux/home/interface/LayoutInterface.d.ts +7 -0
  235. package/src/sap/cux/home/interface/LayoutInterface.d.ts.map +1 -1
  236. package/src/sap/cux/home/interface/LayoutInterface.js.map +1 -1
  237. package/src/sap/cux/home/interface/LayoutInterface.ts +7 -0
  238. package/src/sap/cux/home/library.d.ts.map +1 -1
  239. package/src/sap/cux/home/library.js +7 -4
  240. package/src/sap/cux/home/library.js.map +1 -1
  241. package/src/sap/cux/home/library.ts +10 -5
  242. package/src/sap/cux/home/themes/base/BaseContainer.less +36 -0
  243. package/src/sap/cux/home/themes/base/BaseLayout.less +11 -0
  244. package/src/sap/cux/home/themes/base/{InsightsContainer.less → CardsContainer.less} +0 -45
  245. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +10 -18
  246. package/src/sap/cux/home/themes/base/PlaceHolder.less +1 -1
  247. package/src/sap/cux/home/themes/base/SettingsDialog.less +4 -0
  248. package/src/sap/cux/home/themes/base/TilesContainer.less +65 -0
  249. package/src/sap/cux/home/themes/base/library.source.less +2 -1
  250. package/src/sap/cux/home/utils/BatchHelper.d.ts +1 -0
  251. package/src/sap/cux/home/utils/BatchHelper.d.ts.map +1 -1
  252. package/src/sap/cux/home/utils/BatchHelper.js +7 -2
  253. package/src/sap/cux/home/utils/BatchHelper.js.map +1 -1
  254. package/src/sap/cux/home/utils/BatchHelper.ts +8 -1
  255. package/src/sap/cux/home/utils/PerformanceUtils.d.ts +4 -2
  256. package/src/sap/cux/home/utils/PerformanceUtils.d.ts.map +1 -1
  257. package/src/sap/cux/home/utils/PerformanceUtils.js +4 -2
  258. package/src/sap/cux/home/utils/PerformanceUtils.js.map +1 -1
  259. package/src/sap/cux/home/utils/PerformanceUtils.ts +4 -2
  260. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +150 -151
  261. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts +8 -0
  262. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts.map +1 -0
  263. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.js → CardsPlaceholder.js} +3 -77
  264. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.js.map +1 -0
  265. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.ts → CardsPlaceholder.ts} +1 -75
  266. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts +8 -0
  267. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts.map +1 -0
  268. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js +44 -0
  269. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js.map +1 -0
  270. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.ts +34 -0
  271. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts +8 -0
  272. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts.map +1 -0
  273. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.js → PagesPlaceholder.js} +3 -23
  274. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.js.map +1 -0
  275. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.ts → PagesPlaceholder.ts} +1 -21
  276. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts +8 -0
  277. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts.map +1 -0
  278. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js +95 -0
  279. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js.map +1 -0
  280. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.ts +85 -0
  281. package/ui5.yaml +1 -0
  282. package/src/sap/cux/home/InsightsContainer.d.ts +0 -205
  283. package/src/sap/cux/home/InsightsContainer.d.ts.map +0 -1
  284. package/src/sap/cux/home/InsightsContainer.js +0 -459
  285. package/src/sap/cux/home/InsightsContainer.js.map +0 -1
  286. package/src/sap/cux/home/InsightsContainer.ts +0 -489
  287. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +0 -1
  288. package/src/sap/cux/home/NewsAndPagesContainer.js.map +0 -1
  289. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +0 -8
  290. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +0 -1
  291. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +0 -1
  292. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts +0 -8
  293. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +0 -1
  294. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +0 -1
@@ -1,459 +0,0 @@
1
- /*!
2
- * SAP UI development toolkit for HTML5 (SAPUI5)
3
- * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
- */
5
- sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./SpaceInsightsPanel", "./TilesPanel", "./utils/Device", "./utils/InsightsUtils", "./utils/placeholder/InsightsPlaceholder"], function (__BaseContainer, __CardsPanel, __ErrorPanel, __SpaceInsightsPanel, __TilesPanel, ___utils_Device, ___utils_InsightsUtils, ___utils_placeholder_InsightsPlaceholder) {
6
- "use strict";
7
-
8
- function _interopRequireDefault(obj) {
9
- return obj && obj.__esModule && typeof obj.default !== "undefined" ? obj.default : obj;
10
- }
11
- const BaseContainer = _interopRequireDefault(__BaseContainer);
12
- const CardsPanel = _interopRequireDefault(__CardsPanel);
13
- const cardsContainerActionButtons = __CardsPanel["cardsContainerActionButtons"];
14
- const cardsContainerMenuItems = __CardsPanel["cardsContainerMenuItems"];
15
- const ErrorPanel = _interopRequireDefault(__ErrorPanel);
16
- const SpaceInsightsPanel = _interopRequireDefault(__SpaceInsightsPanel);
17
- const TilesPanel = _interopRequireDefault(__TilesPanel);
18
- const tilesContainerActionButtons = __TilesPanel["tilesContainerActionButtons"];
19
- const tilesContainerMenuItems = __TilesPanel["tilesContainerMenuItems"];
20
- const DeviceType = ___utils_Device["DeviceType"];
21
- const sortMenuItems = ___utils_InsightsUtils["sortMenuItems"];
22
- const getInsightsPlaceholder = ___utils_placeholder_InsightsPlaceholder["getInsightsPlaceholder"];
23
- const tilesPanelName = "sap.cux.home.TilesPanel";
24
- const cardsPanelName = "sap.cux.home.CardsPanel";
25
- const spaceInsightsPanelName = "sap.cux.home.SpaceInsightsPanel";
26
- const sortedMenuItems = [tilesContainerMenuItems.REFRESH, cardsContainerMenuItems.REFRESH, tilesContainerMenuItems.ADD_APPS, tilesContainerMenuItems.EDIT_TILES, cardsContainerMenuItems.EDIT_CARDS, cardsContainerMenuItems.AI_INSIGHT_CARD, tilesContainerMenuItems.SHOW_MORE, cardsContainerMenuItems.SHOW_MORE, "settings"];
27
- /**
28
- *
29
- * Container class for managing and storing Insights Tiles and Insights Cards.
30
- *
31
- * @extends sap.cux.home.BaseContainer
32
- *
33
- * @author SAP SE
34
- * @version 0.0.1
35
- * @since 1.121
36
- *
37
- * @private
38
- * @ui5-restricted ux.eng.s4producthomes1
39
- *
40
- * @alias sap.cux.home.InsightsContainer
41
- */
42
- const InsightsContainer = BaseContainer.extend("sap.cux.home.InsightsContainer", {
43
- renderer: {
44
- ...BaseContainer.renderer,
45
- apiVersion: 2
46
- },
47
- /**
48
- * Constructor for a new Insights container.
49
- *
50
- * @param {string} [id] ID for the new control, generated automatically if an ID is not provided
51
- * @param {object} [settings] Initial settings for the new control
52
- */
53
- constructor: function _constructor(id, settings) {
54
- BaseContainer.prototype.constructor.call(this, id, settings);
55
- this._isInitialRender = true;
56
- },
57
- /**
58
- * Init lifecycle method
59
- *
60
- * @private
61
- * @override
62
- */
63
- init: function _init() {
64
- BaseContainer.prototype.init.call(this);
65
- this.setProperty("title", this._i18nBundle?.getText("insights"));
66
- /* As Container Level default value for enableSettings is false,
67
- this needs to be added from container level.
68
- (default value cannot be true as News & Page Container header should be hidden)
69
- */
70
- this.setProperty("enableSettings", true);
71
- this.setProperty("orientation", "Vertical");
72
- this.panelLoaded = {
73
- [tilesPanelName]: {
74
- loaded: undefined,
75
- count: 0
76
- },
77
- [cardsPanelName]: {
78
- loaded: undefined,
79
- count: 0
80
- },
81
- [spaceInsightsPanelName]: {
82
- loaded: undefined,
83
- count: 0
84
- }
85
- };
86
- this.panelContext = {};
87
- this.setTooltip(String(this._i18nBundle.getText("insights")));
88
- this.addCustomSetting("title", this._i18nBundle.getText("insightLayoutSectionTitle"));
89
- this.setTooltip(String(this._i18nBundle.getText("insightLayoutSectionTitle")));
90
- },
91
- /**
92
- * Loads the Insights section.
93
- * Overrides the load method of the BaseContainer.
94
- *
95
- * @private
96
- * @override
97
- */
98
- load: function _load() {
99
- if (this._isInitialRender) {
100
- const aContent = this.getContent();
101
- aContent.forEach(oContent => {
102
- this.panelContext[oContent.getMetadata().getName()] = oContent;
103
- this.addCommonMenuItems(oContent.getContainerMenuItems?.());
104
- this.addCommonActionButtons(oContent.getContainerActionButtons?.());
105
- });
106
- this._addContainerHeader();
107
-
108
- // Render individual panels
109
- aContent.forEach(content => {
110
- const panel = content;
111
- panel.handleHideHeader();
112
- panel.attachHandleHidePanel(() => this.handleHidePanel(panel));
113
- panel.attachHandleUnhidePanel(() => this.unhidePanelIfHidden(panel));
114
- void panel.renderPanel();
115
- });
116
- this._isInitialRender = false;
117
- }
118
- },
119
- /**
120
- * Handles the hiding of a panel by removing its content, updating the panel load status,
121
- * and managing the display of the container header and error panel.
122
- *
123
- * @param {BasePanel} panel - The panel to be hidden.
124
- * @private
125
- */
126
- handleHidePanel: function _handleHidePanel(panel) {
127
- this.removeContent(panel);
128
- const panelName = panel.getMetadata().getName();
129
- this.handlePanelLoad(panelName, {
130
- loaded: false,
131
- count: 0
132
- });
133
- const panels = this._getLoadedPanelNames() || [];
134
- const visibleOrPendingPanels = this.getVisibleOrPendingPanels() || [];
135
- const panelCount = panels?.length;
136
- this._addContainerHeader();
137
- // only show error panel if all panels loaded state is false
138
- if (visibleOrPendingPanels.length === 0 || visibleOrPendingPanels.length === 1 && visibleOrPendingPanels[0] === spaceInsightsPanelName) {
139
- if (!this._errorPanel) {
140
- this._errorPanel = new ErrorPanel(`${this.getId()}-errorPanel`, {
141
- messageTitle: this._i18nBundle.getText("noAppsTitle"),
142
- messageDescription: this._i18nBundle.getText("noInsightsMsg")
143
- });
144
- this._errorPanel.getData();
145
- }
146
- this.addAggregation("content", this._errorPanel);
147
- } else if (panelCount === 1) {
148
- const panel = this.getContent()[0];
149
- if (panel && !(panel instanceof ErrorPanel)) {
150
- panel?.handleHideHeader();
151
- }
152
- }
153
- },
154
- /**
155
- * Adds the container header based on the number of visible panels.
156
- *
157
- * @private
158
- */
159
- _addContainerHeader: function _addContainerHeader() {
160
- const panels = this._getLoadedPanelNames();
161
- let hiddenMenuItems = [];
162
- let hiddenActionButtons = [];
163
- this.setProperty("title", this._i18nBundle?.getText("insights"));
164
- if (panels.length === 0 || this.getContent()[0] instanceof ErrorPanel) {
165
- hiddenMenuItems = [tilesContainerMenuItems.REFRESH, cardsContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE, cardsContainerMenuItems.SHOW_MORE];
166
- this._hideMenuItems(hiddenMenuItems);
167
- hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE, cardsContainerActionButtons.SHOW_MORE];
168
- this._hideActionButtons(hiddenActionButtons);
169
- } else if (panels.length === 1) {
170
- const panelName = panels[0];
171
- this.setProperty("title", `${this._i18nBundle?.getText("insights")} (${this.panelLoaded[panelName].count || 0})`);
172
- if (this.panelContext[panels[0]] instanceof TilesPanel) {
173
- hiddenMenuItems = [cardsContainerMenuItems.REFRESH, cardsContainerMenuItems.SHOW_MORE];
174
- hiddenActionButtons = [cardsContainerActionButtons.SHOW_MORE];
175
- }
176
- if (this.panelContext[panels[0]] instanceof CardsPanel) {
177
- hiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE];
178
- hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];
179
- }
180
- if (this.panelContext[panels[0]] instanceof SpaceInsightsPanel) {
181
- this.setProperty("title", `${this.panelContext[panels[0]].getTitle()} (${this.panelLoaded[panelName].count || 0})`);
182
- hiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE, "settings"];
183
- hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];
184
- }
185
- this._hideMenuItems(hiddenMenuItems);
186
- this._hideActionButtons(hiddenActionButtons);
187
- }
188
- },
189
- /**
190
- * Removes the container header.
191
- *
192
- * @private
193
- */
194
- _removeContainerHeader: function _removeContainerHeader() {
195
- this.setProperty("title", "");
196
- this.getAggregation("menuItems")?.forEach(menuItem => this.toggleMenuListItem(menuItem, false));
197
- this.getAggregation("actionButtons")?.forEach(actionButton => this.toggleActionButton(actionButton, false));
198
- const panels = this._getLoadedPanelNames();
199
- panels.forEach(panelName => {
200
- this.panelContext[panelName]?.handleAddHeader?.();
201
- });
202
- },
203
- /**
204
- * Hides the specified menu items.
205
- *
206
- * @private
207
- * @param {string[]} hiddenMenuItems - The IDs of the menu items to hide.
208
- */
209
- _hideMenuItems: function _hideMenuItems(hiddenMenuItems) {
210
- const containerMenuItems = this.getAggregation("menuItems");
211
- containerMenuItems?.forEach(menuItem => {
212
- const includedInHiddenItems = hiddenMenuItems.some(hiddenItem => menuItem.getId().includes(hiddenItem));
213
- this.toggleMenuListItem(menuItem, !includedInHiddenItems);
214
- });
215
- },
216
- /**
217
- * Hides the specified action buttons.
218
- *
219
- * @private
220
- * @param {string[]} hiddenActionButtons - The IDs of the action buttons to hide.
221
- */
222
- _hideActionButtons: function _hideActionButtons(hiddenActionButtons) {
223
- const containerActionButtons = this.getAggregation("actionButtons");
224
- containerActionButtons?.forEach(actionButton => {
225
- const includedInHiddenItems = hiddenActionButtons.some(hiddenItem => actionButton.getId().includes(hiddenItem));
226
- this.toggleActionButton(actionButton, !includedInHiddenItems);
227
- });
228
- },
229
- /**
230
- * Updates the item count for the specified panel.
231
- *
232
- * @param {number} itemCount - The new item count.
233
- * @param {string} panelName - The name of the panel.
234
- */
235
- updatePanelsItemCount: function _updatePanelsItemCount(itemCount, panelName) {
236
- this.panelLoaded[panelName].count = itemCount;
237
- const panels = this._getLoadedPanelNames();
238
- // Container Title Will be displayed only in case of only one panel is present
239
- if (panels.length === 1) {
240
- const isSpaceInsightsPanel = this.panelContext[panels[0]] instanceof SpaceInsightsPanel;
241
- this.setProperty("title", `${isSpaceInsightsPanel ? this.panelContext[panels[0]].getTitle() : this._i18nBundle?.getText("insights")} (${itemCount || 0})`);
242
- }
243
- },
244
- /**
245
- * Unhides the specified panel if it is hidden.
246
- *
247
- * @param {TilesPanel | CardsPanel} panel - The panel to unhide.
248
- */
249
- unhidePanelIfHidden: function _unhidePanelIfHidden(panel) {
250
- const layout = this._getLayout();
251
- const panelExpandedName = layout._getCurrentExpandedElementName();
252
- if (this._errorPanel) {
253
- this.removeContent(this._errorPanel);
254
- }
255
-
256
- // Function to handle panel content insertion
257
- const processPanelVisibility = (panelName, insertContentFn) => {
258
- if (!panelExpandedName || panelExpandedName === panel.getProperty("fullScreenName")) {
259
- /**
260
- loaded value can be false or undefined, false being hidden and undefined being loading
261
- if the panel is hidden then only unhide it
262
- */
263
- if (this.panelLoaded[panelName].loaded === false) {
264
- insertContentFn();
265
- // Remove hidden class if applied
266
- panel.setVisible(true);
267
- }
268
- this.handlePanelLoad(panelName, {
269
- loaded: true,
270
- count: this.panelLoaded[panelName].count
271
- });
272
- } else {
273
- const listener = () => {
274
- insertContentFn();
275
- // Remove hidden class if applied
276
- panel.setVisible(true);
277
- layout.detachOnCollapse(listener); // Remove the listener after execution
278
- };
279
- this.handlePanelLoad(panelName, {
280
- loaded: true,
281
- count: this.panelLoaded[panelName].count
282
- });
283
- layout.attachOnCollapse(listener);
284
- }
285
- };
286
-
287
- // Handling TilesPanel
288
- if (panel instanceof TilesPanel && !this.panelLoaded[tilesPanelName].loaded) {
289
- processPanelVisibility(tilesPanelName, () => this.insertContent(this.panelContext[tilesPanelName], 0));
290
- }
291
-
292
- // Handling CardsPanel
293
- if (panel instanceof CardsPanel && !this.panelLoaded[cardsPanelName].loaded) {
294
- processPanelVisibility(cardsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));
295
- }
296
-
297
- // Handling SpaceInsightsPanel
298
- if (panel instanceof SpaceInsightsPanel && !this.panelLoaded[spaceInsightsPanelName].loaded) {
299
- processPanelVisibility(spaceInsightsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));
300
- }
301
- },
302
- /**
303
- * Updates the container header based on the number of visible panels.
304
- *
305
- * @private
306
- * @param {TilesPanel | CardsPanel} panel - The panel being managed.
307
- */
308
- _updateHeaderElements: function _updateHeaderElements(panel) {
309
- const panels = this._getLoadedPanelNames();
310
- if (panels.length > 1) {
311
- this._removeContainerHeader();
312
- } else {
313
- this._addContainerHeader();
314
- panel.handleHideHeader();
315
- }
316
- },
317
- /**
318
- * Adjusts the layout of the container.
319
- *
320
- * @private
321
- * @override
322
- */
323
- adjustLayout: function _adjustLayout() {
324
- //hide actions if the device is a phone
325
- if (this.getDeviceType() === DeviceType.Mobile) {
326
- this.toggleActionButtons(false);
327
- } else {
328
- const panels = this._getLoadedPanelNames();
329
- // Unhide the Add Tiles button if the device is not a phone and header is visible
330
- if (panels.length < 2) {
331
- this.getAggregation("actionButtons")?.forEach(actionButton => {
332
- if (actionButton.getId().includes(tilesContainerActionButtons.ADD_TILES)) {
333
- this.toggleActionButton(actionButton, true);
334
- }
335
- });
336
- }
337
- }
338
-
339
- //adjust layout of all panels
340
- this.getContent().forEach(panel => panel._adjustLayout?.());
341
- },
342
- /**
343
- * Add common Menu Items for Insights Container from Panel
344
- *
345
- * @private
346
- */
347
- addCommonMenuItems: function _addCommonMenuItems(menuItems = []) {
348
- menuItems.forEach(menuItem => this.addAggregation("menuItems", menuItem));
349
- // after adding menu items sort them based on the order
350
- this._sortMenuItems(sortedMenuItems);
351
- },
352
- /**
353
- * Add common Action Buttons for Insights Container from Panel
354
- *
355
- * @private
356
- */
357
- addCommonActionButtons: function _addCommonActionButtons(actionButtons = []) {
358
- actionButtons.forEach(actionButton => this.addAggregation("actionButtons", actionButton));
359
- },
360
- /**
361
- * Handles the loading of a panel.
362
- *
363
- * @param {string} panelName - The name of the panel.
364
- * @param {object} oVal - The load status and count of the panel.
365
- * @param {boolean} oVal.loaded - The load status of the panel.
366
- * @param {number} oVal.count - The count of items in the panel.
367
- */
368
- handlePanelLoad: function _handlePanelLoad(panelName, oVal) {
369
- if (this.panelLoaded[panelName].loaded !== oVal.loaded) {
370
- this.panelLoaded[panelName] = oVal;
371
- this._updateHeaderElements(this.panelContext[panelName]);
372
- }
373
- this.adjustLayout();
374
- },
375
- /**
376
- * Updates the visibility and text of an action button.
377
- *
378
- * @param {Button} actionButton - The action button to update.
379
- * @param {boolean} visibility - The visibility of the action button.
380
- * @param {string} text - The text of the action button.
381
- */
382
- updateActionButton: function _updateActionButton(actionButton, visibility, text) {
383
- if (actionButton?.getVisible() !== visibility || actionButton?.getText() !== text) {
384
- this.toggleActionButton(actionButton, visibility);
385
- actionButton?.setText(text);
386
- this._updateContainerHeader(this);
387
- }
388
- },
389
- /**
390
- * Updates the visibility and text of a menu item.
391
- *
392
- * @param {MenuItem} menuItem - The menu item to update.
393
- * @param {boolean} visibility - The visibility of the menu item.
394
- * @param {string} text - The text of the menu item.
395
- */
396
- updateMenuItem: function _updateMenuItem(menuItem, visibility, text) {
397
- if (menuItem?.getVisible() !== visibility || menuItem?.getTitle() !== text) {
398
- this.toggleMenuListItem(menuItem, visibility);
399
- menuItem?.setTitle(text);
400
- this._updateContainerHeader(this);
401
- }
402
- },
403
- /**
404
- * Gets the names of the loaded panels.
405
- *
406
- * @private
407
- * @returns {string[]} The names of the loaded panels.
408
- */
409
- _getLoadedPanelNames: function _getLoadedPanelNames() {
410
- return Object.keys(this.panelLoaded).filter(panelName => this.panelLoaded[panelName].loaded);
411
- },
412
- /**
413
- * Returns the names of panels that are still loading or in loaded true state
414
- *
415
- * @private
416
- * @private
417
- */
418
- getVisibleOrPendingPanels: function _getVisibleOrPendingPanels() {
419
- return Object.keys(this.panelLoaded).filter(panelName => this.panelLoaded[panelName].loaded !== false);
420
- },
421
- /**
422
- * Sorts the menu items based on the provided order.
423
- *
424
- * @private
425
- * @param {string[]} menuItems - The order of the menu items.
426
- */
427
- _sortMenuItems: function _sortMenuItems(menuItems) {
428
- const containerMenuItems = this.getAggregation("menuItems");
429
- let sortedMenuItems = sortMenuItems(menuItems, containerMenuItems);
430
- this.removeAllAggregation("menuItems");
431
- sortedMenuItems?.forEach(menuItem => this.addAggregation("menuItems", menuItem));
432
- },
433
- /**
434
- * Retrieves the generic placeholder content for the Insights container.
435
- *
436
- * @returns {string} The HTML string representing the Insights container's placeholder content.
437
- */
438
- getGenericPlaceholderContent: function _getGenericPlaceholderContent() {
439
- return getInsightsPlaceholder();
440
- },
441
- /**
442
- * Refreshes the data for a specific panel based on its key.
443
- *
444
- * @private
445
- * @param {string} key - The key of the panel to refresh.
446
- */
447
- refreshData: function _refreshData(key) {
448
- try {
449
- const _this = this;
450
- const panel = Object.values(_this.panelContext).find(panel => panel.getKey() === key);
451
- return Promise.resolve(panel?.refreshData?.(true)).then(function () {});
452
- } catch (e) {
453
- return Promise.reject(e);
454
- }
455
- }
456
- });
457
- return InsightsContainer;
458
- });
459
- //# sourceMappingURL=InsightsContainer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InsightsContainer.js","names":["sap","ui","define","__BaseContainer","__CardsPanel","__ErrorPanel","__SpaceInsightsPanel","__TilesPanel","___utils_Device","___utils_InsightsUtils","___utils_placeholder_InsightsPlaceholder","_interopRequireDefault","obj","__esModule","default","BaseContainer","CardsPanel","cardsContainerActionButtons","cardsContainerMenuItems","ErrorPanel","SpaceInsightsPanel","TilesPanel","tilesContainerActionButtons","tilesContainerMenuItems","DeviceType","sortMenuItems","getInsightsPlaceholder","tilesPanelName","cardsPanelName","spaceInsightsPanelName","sortedMenuItems","REFRESH","ADD_APPS","EDIT_TILES","EDIT_CARDS","AI_INSIGHT_CARD","SHOW_MORE","InsightsContainer","extend","renderer","apiVersion","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","_isInitialRender","init","_init","BaseContainer.prototype.init.call","setProperty","_i18nBundle","getText","panelLoaded","loaded","undefined","count","panelContext","setTooltip","String","addCustomSetting","load","_load","aContent","getContent","forEach","oContent","getMetadata","getName","addCommonMenuItems","getContainerMenuItems","addCommonActionButtons","getContainerActionButtons","_addContainerHeader","content","panel","handleHideHeader","attachHandleHidePanel","handleHidePanel","attachHandleUnhidePanel","unhidePanelIfHidden","renderPanel","_handleHidePanel","removeContent","panelName","handlePanelLoad","panels","_getLoadedPanelNames","visibleOrPendingPanels","getVisibleOrPendingPanels","panelCount","length","_errorPanel","getId","messageTitle","messageDescription","getData","addAggregation","hiddenMenuItems","hiddenActionButtons","_hideMenuItems","_hideActionButtons","getTitle","_removeContainerHeader","getAggregation","menuItem","toggleMenuListItem","actionButton","toggleActionButton","handleAddHeader","containerMenuItems","includedInHiddenItems","some","hiddenItem","includes","containerActionButtons","updatePanelsItemCount","_updatePanelsItemCount","itemCount","isSpaceInsightsPanel","_unhidePanelIfHidden","layout","_getLayout","panelExpandedName","_getCurrentExpandedElementName","processPanelVisibility","insertContentFn","getProperty","setVisible","listener","detachOnCollapse","attachOnCollapse","insertContent","addContent","_updateHeaderElements","adjustLayout","_adjustLayout","getDeviceType","Mobile","toggleActionButtons","ADD_TILES","_addCommonMenuItems","menuItems","_sortMenuItems","_addCommonActionButtons","actionButtons","_handlePanelLoad","oVal","updateActionButton","_updateActionButton","visibility","text","getVisible","setText","_updateContainerHeader","updateMenuItem","_updateMenuItem","setTitle","Object","keys","filter","_getVisibleOrPendingPanels","removeAllAggregation","getGenericPlaceholderContent","_getGenericPlaceholderContent","refreshData","_refreshData","key","_this","values","find","getKey","Promise","resolve","then","e","reject"],"sources":["InsightsContainer.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport type { $BaseContainerSettings } from \"./BaseContainer\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport CardsPanel, { cardsContainerActionButtons, cardsContainerMenuItems } from \"./CardsPanel\";\nimport ErrorPanel from \"./ErrorPanel\";\nimport MenuItem from \"./MenuItem\";\nimport SpaceInsightsPanel from \"./SpaceInsightsPanel\";\nimport TilesPanel, { tilesContainerActionButtons, tilesContainerMenuItems } from \"./TilesPanel\";\nimport { DeviceType } from \"./utils/Device\";\nimport { sortMenuItems } from \"./utils/InsightsUtils\";\nimport { getInsightsPlaceholder } from \"./utils/placeholder/InsightsPlaceholder\";\n\nconst tilesPanelName: string = \"sap.cux.home.TilesPanel\";\nconst cardsPanelName: string = \"sap.cux.home.CardsPanel\";\nconst spaceInsightsPanelName: string = \"sap.cux.home.SpaceInsightsPanel\";\nconst sortedMenuItems: (tilesContainerMenuItems | cardsContainerMenuItems | string)[] = [\n\ttilesContainerMenuItems.REFRESH,\n\tcardsContainerMenuItems.REFRESH,\n\ttilesContainerMenuItems.ADD_APPS,\n\ttilesContainerMenuItems.EDIT_TILES,\n\tcardsContainerMenuItems.EDIT_CARDS,\n\tcardsContainerMenuItems.AI_INSIGHT_CARD,\n\ttilesContainerMenuItems.SHOW_MORE,\n\tcardsContainerMenuItems.SHOW_MORE,\n\t\"settings\"\n];\n\ninterface IpanelLoaded {\n\t[key: string]: { loaded: boolean | undefined; count: number };\n}\n\ninterface IpanelContext {\n\t[key: string]: TilesPanel | CardsPanel;\n}\n\n/**\n *\n * Container class for managing and storing Insights Tiles and Insights Cards.\n *\n * @extends sap.cux.home.BaseContainer\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.InsightsContainer\n */\n\nexport default class InsightsContainer extends BaseContainer {\n\tstatic readonly renderer = {\n\t\t...BaseContainer.renderer,\n\t\tapiVersion: 2\n\t};\n\tprivate _errorPanel!: ErrorPanel;\n\tprivate _isInitialRender: boolean = true;\n\tprivate panelLoaded!: IpanelLoaded;\n\tprivate panelContext!: IpanelContext;\n\n\tconstructor(id?: string | $BaseContainerSettings);\n\tconstructor(id?: string, settings?: $BaseContainerSettings);\n\t/**\n\t * Constructor for a new Insights container.\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?: $BaseContainerSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"insights\"));\n\t\t/* As Container Level default value for enableSettings is false,\n\t\t\tthis needs to be added from container level.\n\t\t\t(default value cannot be true as News & Page Container header should be hidden)\n\t\t*/\n\t\tthis.setProperty(\"enableSettings\", true);\n\t\tthis.setProperty(\"orientation\", \"Vertical\");\n\t\tthis.panelLoaded = {\n\t\t\t[tilesPanelName]: { loaded: undefined, count: 0 },\n\t\t\t[cardsPanelName]: { loaded: undefined, count: 0 },\n\t\t\t[spaceInsightsPanelName]: { loaded: undefined, count: 0 }\n\t\t};\n\t\tthis.panelContext = {};\n\t\tthis.setTooltip(String(this._i18nBundle.getText(\"insights\")));\n\t\tthis.addCustomSetting(\"title\", this._i18nBundle.getText(\"insightLayoutSectionTitle\") as string);\n\t\tthis.setTooltip(String(this._i18nBundle.getText(\"insightLayoutSectionTitle\")));\n\t}\n\n\t/**\n\t * Loads the Insights section.\n\t * Overrides the load method of the BaseContainer.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic load() {\n\t\tif (this._isInitialRender) {\n\t\t\tconst aContent = this.getContent();\n\t\t\taContent.forEach((oContent) => {\n\t\t\t\tthis.panelContext[oContent.getMetadata().getName()] = oContent as TilesPanel | CardsPanel;\n\t\t\t\tthis.addCommonMenuItems((oContent as TilesPanel | CardsPanel).getContainerMenuItems?.());\n\t\t\t\tthis.addCommonActionButtons((oContent as TilesPanel | CardsPanel).getContainerActionButtons?.());\n\t\t\t});\n\n\t\t\tthis._addContainerHeader();\n\n\t\t\t// Render individual panels\n\t\t\taContent.forEach((content) => {\n\t\t\t\tconst panel = content as TilesPanel | CardsPanel;\n\t\t\t\tpanel.handleHideHeader();\n\t\t\t\tpanel.attachHandleHidePanel(() => this.handleHidePanel(panel));\n\t\t\t\tpanel.attachHandleUnhidePanel(() => this.unhidePanelIfHidden(panel));\n\t\t\t\tvoid panel.renderPanel();\n\t\t\t});\n\t\t\tthis._isInitialRender = false;\n\t\t}\n\t}\n\n\t/**\n\t * Handles the hiding of a panel by removing its content, updating the panel load status,\n\t * and managing the display of the container header and error panel.\n\t *\n\t * @param {BasePanel} panel - The panel to be hidden.\n\t * @private\n\t */\n\tpublic handleHidePanel(panel: BasePanel) {\n\t\tthis.removeContent(panel);\n\t\tconst panelName = panel.getMetadata().getName();\n\t\tthis.handlePanelLoad(panelName, { loaded: false, count: 0 });\n\t\tconst panels = this._getLoadedPanelNames() || [];\n\t\tconst visibleOrPendingPanels = this.getVisibleOrPendingPanels() || [];\n\t\tconst panelCount = panels?.length;\n\t\tthis._addContainerHeader();\n\t\t// only show error panel if all panels loaded state is false\n\t\tif (\n\t\t\tvisibleOrPendingPanels.length === 0 ||\n\t\t\t(visibleOrPendingPanels.length === 1 && visibleOrPendingPanels[0] === spaceInsightsPanelName)\n\t\t) {\n\t\t\tif (!this._errorPanel) {\n\t\t\t\tthis._errorPanel = new ErrorPanel(`${this.getId()}-errorPanel`, {\n\t\t\t\t\tmessageTitle: this._i18nBundle.getText(\"noAppsTitle\"),\n\t\t\t\t\tmessageDescription: this._i18nBundle.getText(\"noInsightsMsg\")\n\t\t\t\t});\n\t\t\t\tthis._errorPanel.getData();\n\t\t\t}\n\t\t\tthis.addAggregation(\"content\", this._errorPanel);\n\t\t} else if (panelCount === 1) {\n\t\t\tconst panel = this.getContent()[0];\n\t\t\tif (panel && !(panel instanceof ErrorPanel)) {\n\t\t\t\t(panel as TilesPanel | CardsPanel)?.handleHideHeader();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds the container header based on the number of visible panels.\n\t *\n\t * @private\n\t */\n\tprivate _addContainerHeader() {\n\t\tconst panels: string[] = this._getLoadedPanelNames();\n\t\tlet hiddenMenuItems: string[] = [];\n\t\tlet hiddenActionButtons: string[] = [];\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"insights\"));\n\t\tif (panels.length === 0 || this.getContent()[0] instanceof ErrorPanel) {\n\t\t\thiddenMenuItems = [\n\t\t\t\ttilesContainerMenuItems.REFRESH,\n\t\t\t\tcardsContainerMenuItems.REFRESH,\n\t\t\t\ttilesContainerMenuItems.SHOW_MORE,\n\t\t\t\tcardsContainerMenuItems.SHOW_MORE\n\t\t\t];\n\t\t\tthis._hideMenuItems(hiddenMenuItems);\n\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE, cardsContainerActionButtons.SHOW_MORE];\n\t\t\tthis._hideActionButtons(hiddenActionButtons);\n\t\t} else if (panels.length === 1) {\n\t\t\tconst panelName = panels[0];\n\t\t\tthis.setProperty(\"title\", `${this._i18nBundle?.getText(\"insights\")} (${this.panelLoaded[panelName].count || 0})`);\n\t\t\tif (this.panelContext[panels[0]] instanceof TilesPanel) {\n\t\t\t\thiddenMenuItems = [cardsContainerMenuItems.REFRESH, cardsContainerMenuItems.SHOW_MORE];\n\t\t\t\thiddenActionButtons = [cardsContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tif (this.panelContext[panels[0]] instanceof CardsPanel) {\n\t\t\t\thiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE];\n\t\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tif (this.panelContext[panels[0]] instanceof SpaceInsightsPanel) {\n\t\t\t\tthis.setProperty(\"title\", `${this.panelContext[panels[0]].getTitle()} (${this.panelLoaded[panelName].count || 0})`);\n\t\t\t\thiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE, \"settings\"];\n\t\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tthis._hideMenuItems(hiddenMenuItems);\n\t\t\tthis._hideActionButtons(hiddenActionButtons);\n\t\t}\n\t}\n\n\t/**\n\t * Removes the container header.\n\t *\n\t * @private\n\t */\n\tprivate _removeContainerHeader() {\n\t\tthis.setProperty(\"title\", \"\");\n\t\t(this.getAggregation(\"menuItems\") as MenuItem[])?.forEach((menuItem) => this.toggleMenuListItem(menuItem, false));\n\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => this.toggleActionButton(actionButton, false));\n\t\tconst panels = this._getLoadedPanelNames();\n\t\tpanels.forEach((panelName) => {\n\t\t\tthis.panelContext[panelName]?.handleAddHeader?.();\n\t\t});\n\t}\n\n\t/**\n\t * Hides the specified menu items.\n\t *\n\t * @private\n\t * @param {string[]} hiddenMenuItems - The IDs of the menu items to hide.\n\t */\n\tprivate _hideMenuItems(hiddenMenuItems: string[]) {\n\t\tconst containerMenuItems = this.getAggregation(\"menuItems\") as MenuItem[];\n\t\tcontainerMenuItems?.forEach((menuItem) => {\n\t\t\tconst includedInHiddenItems = hiddenMenuItems.some((hiddenItem) => menuItem.getId().includes(hiddenItem));\n\t\t\tthis.toggleMenuListItem(menuItem, !includedInHiddenItems);\n\t\t});\n\t}\n\n\t/**\n\t * Hides the specified action buttons.\n\t *\n\t * @private\n\t * @param {string[]} hiddenActionButtons - The IDs of the action buttons to hide.\n\t */\n\tprivate _hideActionButtons(hiddenActionButtons: string[]) {\n\t\tconst containerActionButtons = this.getAggregation(\"actionButtons\") as Button[];\n\t\tcontainerActionButtons?.forEach((actionButton) => {\n\t\t\tconst includedInHiddenItems = hiddenActionButtons.some((hiddenItem) => actionButton.getId().includes(hiddenItem));\n\t\t\tthis.toggleActionButton(actionButton, !includedInHiddenItems);\n\t\t});\n\t}\n\n\t/**\n\t * Updates the item count for the specified panel.\n\t *\n\t * @param {number} itemCount - The new item count.\n\t * @param {string} panelName - The name of the panel.\n\t */\n\tpublic updatePanelsItemCount(itemCount: number, panelName: string) {\n\t\tthis.panelLoaded[panelName].count = itemCount;\n\t\tconst panels = this._getLoadedPanelNames();\n\t\t// Container Title Will be displayed only in case of only one panel is present\n\t\tif (panels.length === 1) {\n\t\t\tconst isSpaceInsightsPanel = this.panelContext[panels[0]] instanceof SpaceInsightsPanel;\n\t\t\tthis.setProperty(\n\t\t\t\t\"title\",\n\t\t\t\t`${isSpaceInsightsPanel ? this.panelContext[panels[0]].getTitle() : this._i18nBundle?.getText(\"insights\")} (${itemCount || 0})`\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Unhides the specified panel if it is hidden.\n\t *\n\t * @param {TilesPanel | CardsPanel} panel - The panel to unhide.\n\t */\n\tpublic unhidePanelIfHidden(panel: TilesPanel | CardsPanel) {\n\t\tconst layout = this._getLayout();\n\t\tconst panelExpandedName = layout._getCurrentExpandedElementName();\n\n\t\tif (this._errorPanel) {\n\t\t\tthis.removeContent(this._errorPanel);\n\t\t}\n\n\t\t// Function to handle panel content insertion\n\t\tconst processPanelVisibility = (panelName: string, insertContentFn: () => void) => {\n\t\t\tif (!panelExpandedName || panelExpandedName === panel.getProperty(\"fullScreenName\")) {\n\t\t\t\t/**\n loaded value can be false or undefined, false being hidden and undefined being loading\n if the panel is hidden then only unhide it\n */\n\t\t\t\tif (this.panelLoaded[panelName].loaded === false) {\n\t\t\t\t\tinsertContentFn();\n\t\t\t\t\t// Remove hidden class if applied\n\t\t\t\t\tpanel.setVisible(true);\n\t\t\t\t}\n\t\t\t\tthis.handlePanelLoad(panelName, { loaded: true, count: this.panelLoaded[panelName].count });\n\t\t\t} else {\n\t\t\t\tconst listener = () => {\n\t\t\t\t\tinsertContentFn();\n\t\t\t\t\t// Remove hidden class if applied\n\t\t\t\t\tpanel.setVisible(true);\n\t\t\t\t\tlayout.detachOnCollapse(listener); // Remove the listener after execution\n\t\t\t\t};\n\t\t\t\tthis.handlePanelLoad(panelName, { loaded: true, count: this.panelLoaded[panelName].count });\n\t\t\t\tlayout.attachOnCollapse(listener);\n\t\t\t}\n\t\t};\n\n\t\t// Handling TilesPanel\n\t\tif (panel instanceof TilesPanel && !this.panelLoaded[tilesPanelName].loaded) {\n\t\t\tprocessPanelVisibility(tilesPanelName, () => this.insertContent(this.panelContext[tilesPanelName], 0));\n\t\t}\n\n\t\t// Handling CardsPanel\n\t\tif (panel instanceof CardsPanel && !this.panelLoaded[cardsPanelName].loaded) {\n\t\t\tprocessPanelVisibility(cardsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));\n\t\t}\n\n\t\t// Handling SpaceInsightsPanel\n\t\tif (panel instanceof SpaceInsightsPanel && !this.panelLoaded[spaceInsightsPanelName].loaded) {\n\t\t\tprocessPanelVisibility(spaceInsightsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));\n\t\t}\n\t}\n\n\t/**\n\t * Updates the container header based on the number of visible panels.\n\t *\n\t * @private\n\t * @param {TilesPanel | CardsPanel} panel - The panel being managed.\n\t */\n\n\tprivate _updateHeaderElements(panel: TilesPanel | CardsPanel) {\n\t\tconst panels = this._getLoadedPanelNames();\n\t\tif (panels.length > 1) {\n\t\t\tthis._removeContainerHeader();\n\t\t} else {\n\t\t\tthis._addContainerHeader();\n\t\t\tpanel.handleHideHeader();\n\t\t}\n\t}\n\n\t/**\n\t * Adjusts the layout of the container.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic adjustLayout() {\n\t\t//hide actions if the device is a phone\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\tthis.toggleActionButtons(false);\n\t\t} else {\n\t\t\tconst panels = this._getLoadedPanelNames();\n\t\t\t// Unhide the Add Tiles button if the device is not a phone and header is visible\n\t\t\tif (panels.length < 2) {\n\t\t\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => {\n\t\t\t\t\tif (actionButton.getId().includes(tilesContainerActionButtons.ADD_TILES)) {\n\t\t\t\t\t\tthis.toggleActionButton(actionButton, true);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\t//adjust layout of all panels\n\t\t(this.getContent() as (TilesPanel | CardsPanel)[]).forEach((panel) => panel._adjustLayout?.());\n\t}\n\n\t/**\n\t * Add common Menu Items for Insights Container from Panel\n\t *\n\t * @private\n\t */\n\tpublic addCommonMenuItems(menuItems: MenuItem[] = []) {\n\t\tmenuItems.forEach((menuItem) => this.addAggregation(\"menuItems\", menuItem));\n\t\t// after adding menu items sort them based on the order\n\t\tthis._sortMenuItems(sortedMenuItems);\n\t}\n\n\t/**\n\t * Add common Action Buttons for Insights Container from Panel\n\t *\n\t * @private\n\t */\n\tpublic addCommonActionButtons(actionButtons: Button[] = []) {\n\t\tactionButtons.forEach((actionButton) => this.addAggregation(\"actionButtons\", actionButton));\n\t}\n\n\t/**\n\t * Handles the loading of a panel.\n\t *\n\t * @param {string} panelName - The name of the panel.\n\t * @param {object} oVal - The load status and count of the panel.\n\t * @param {boolean} oVal.loaded - The load status of the panel.\n\t * @param {number} oVal.count - The count of items in the panel.\n\t */\n\tpublic handlePanelLoad(panelName: string, oVal: { loaded: boolean; count: number }) {\n\t\tif (this.panelLoaded[panelName].loaded !== oVal.loaded) {\n\t\t\tthis.panelLoaded[panelName] = oVal;\n\t\t\tthis._updateHeaderElements(this.panelContext[panelName]);\n\t\t}\n\t\tthis.adjustLayout();\n\t}\n\n\t/**\n\t * Updates the visibility and text of an action button.\n\t *\n\t * @param {Button} actionButton - The action button to update.\n\t * @param {boolean} visibility - The visibility of the action button.\n\t * @param {string} text - The text of the action button.\n\t */\n\tpublic updateActionButton(actionButton: Button, visibility: boolean, text: string) {\n\t\tif (actionButton?.getVisible() !== visibility || actionButton?.getText() !== text) {\n\t\t\tthis.toggleActionButton(actionButton, visibility);\n\t\t\tactionButton?.setText(text);\n\t\t\tthis._updateContainerHeader(this);\n\t\t}\n\t}\n\n\t/**\n\t * Updates the visibility and text of a menu item.\n\t *\n\t * @param {MenuItem} menuItem - The menu item to update.\n\t * @param {boolean} visibility - The visibility of the menu item.\n\t * @param {string} text - The text of the menu item.\n\t */\n\tpublic updateMenuItem(menuItem: MenuItem, visibility: boolean, text: string) {\n\t\tif (menuItem?.getVisible() !== visibility || menuItem?.getTitle() !== text) {\n\t\t\tthis.toggleMenuListItem(menuItem, visibility);\n\t\t\tmenuItem?.setTitle(text);\n\t\t\tthis._updateContainerHeader(this);\n\t\t}\n\t}\n\n\t/**\n\t * Gets the names of the loaded panels.\n\t *\n\t * @private\n\t * @returns {string[]} The names of the loaded panels.\n\t */\n\tprivate _getLoadedPanelNames() {\n\t\treturn Object.keys(this.panelLoaded).filter((panelName) => this.panelLoaded[panelName].loaded);\n\t}\n\n\t/**\n\t * Returns the names of panels that are still loading or in loaded true state\n\t *\n\t * @private\n\t * @private\n\t */\n\tprivate getVisibleOrPendingPanels() {\n\t\treturn Object.keys(this.panelLoaded).filter((panelName) => this.panelLoaded[panelName].loaded !== false);\n\t}\n\t/**\n\t * Sorts the menu items based on the provided order.\n\t *\n\t * @private\n\t * @param {string[]} menuItems - The order of the menu items.\n\t */\n\tprivate _sortMenuItems(menuItems: string[]) {\n\t\tconst containerMenuItems = this.getAggregation(\"menuItems\") as MenuItem[];\n\t\tlet sortedMenuItems = sortMenuItems(menuItems, containerMenuItems);\n\t\tthis.removeAllAggregation(\"menuItems\");\n\t\tsortedMenuItems?.forEach((menuItem) => this.addAggregation(\"menuItems\", menuItem));\n\t}\n\n\t/**\n\t * Retrieves the generic placeholder content for the Insights container.\n\t *\n\t * @returns {string} The HTML string representing the Insights container's placeholder content.\n\t */\n\tprotected getGenericPlaceholderContent(): string {\n\t\treturn getInsightsPlaceholder();\n\t}\n\n\t/**\n\t * Refreshes the data for a specific panel based on its key.\n\t *\n\t * @private\n\t * @param {string} key - The key of the panel to refresh.\n\t */\n\tpublic async refreshData(key: string) {\n\t\tconst panel = Object.values(this.panelContext).find((panel) => panel.getKey() === key);\n\t\tawait panel?.refreshData?.(true);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}