@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
@@ -27,9 +27,11 @@ import Container from "sap/ushell/Container";
27
27
  import S4MyHome from "sap/ushell/api/S4MyHome";
28
28
  import { Intent } from "sap/ushell/services/AppLifeCycle";
29
29
  import Navigation from "sap/ushell/services/Navigation";
30
+ import BaseContainer from "./BaseContainer";
30
31
  import BasePanel from "./BasePanel";
32
+ import CardsContainer from "./CardsContainer";
31
33
  import { $CardsPanelSettings } from "./CardsPanel";
32
- import InsightsContainer from "./InsightsContainer";
34
+ import ErrorPanel from "./ErrorPanel";
33
35
  import MenuItem from "./MenuItem";
34
36
  import {
35
37
  ICard,
@@ -50,42 +52,26 @@ import { PREFERED_CARDS, SETTINGS_PANELS_KEYS } from "./utils/Constants";
50
52
  import { recycleId } from "./utils/DataFormatUtils";
51
53
  import { calculateCardWidth, DeviceType, fetchElementProperties } from "./utils/Device";
52
54
  import { focusDraggedItem } from "./utils/DragDropUtils";
53
- import { addFESRId } from "./utils/FESRUtil";
54
- import {
55
- createShowMoreActionButton,
56
- createShowMoreMenuItem,
57
- getAssociatedFullScreenMenuItem,
58
- sortMenuItems,
59
- targetsAreEqual
60
- } from "./utils/InsightsUtils";
55
+ import { addFESRId, addFESRNavigationSource, FESRNavigationSource } from "./utils/FESRUtil";
56
+ import { getAssociatedFullScreenButton, getAssociatedFullScreenMenuItem, sortMenuItems, targetsAreEqual } from "./utils/InsightsUtils";
61
57
  import PageManager from "./utils/PageManager";
62
58
  import PersonalisationUtils from "./utils/PersonalisationUtils";
63
59
  import UShellPersonalizer, { IPersonalizationData } from "./utils/UshellPersonalizer";
64
60
 
65
61
  export enum cardsMenuItems {
66
62
  REFRESH = "cards-refresh",
67
- EDIT_CARDS = "cards-editCards",
68
- AI_INSIGHT_CARD = "cards-addAIInsightCard"
63
+ EDIT_CARDS = "cards-editCards"
69
64
  }
70
65
 
71
- export enum cardsContainerMenuItems {
72
- REFRESH = "container-cards-refresh",
73
- EDIT_CARDS = "container-cards-editCards",
74
- SHOW_MORE = "cardsContainerFullScreenMenuItem",
75
- AI_INSIGHT_CARD = "container-cards-addAIInsightCard"
66
+ export enum cardsActionButtons {
67
+ SHOW_MORE = "fullScreen"
76
68
  }
77
69
 
78
- export enum cardsContainerActionButtons {
79
- SHOW_MORE = "cardsContanerFullScreenActionButton"
70
+ export enum errorPanelMenuItems {
71
+ EDIT_CARDS = "cards-errorPanel-editCards"
80
72
  }
81
- const sortedMenuItems: (cardsMenuItems | string)[] = [
82
- cardsMenuItems.REFRESH,
83
- cardsMenuItems.EDIT_CARDS,
84
- cardsMenuItems.AI_INSIGHT_CARD,
85
- "showMore",
86
- "settings"
87
- ];
88
73
 
74
+ const sortedMenuItems: (cardsMenuItems | string)[] = [cardsMenuItems.REFRESH, cardsMenuItems.EDIT_CARDS, "showMore", "settings"];
89
75
  interface IcardActionEvent {
90
76
  getParameter(sParam: string): unknown;
91
77
  preventDefault(): void;
@@ -163,7 +149,7 @@ export default class CardsPanel extends BasePanel {
163
149
  };
164
150
  private cardHelperInstance!: ICardHelperInstance;
165
151
  private _cardsFlexWrapper!: VBox;
166
- private cardsContainer!: GridContainer;
152
+ private cardsWrapperContainer!: GridContainer;
167
153
  private cardsMobileContainer!: HeaderContainer;
168
154
  private aVisibleCardInstances: Card[] = [];
169
155
  private _oData!: Record<string, unknown>;
@@ -176,14 +162,12 @@ export default class CardsPanel extends BasePanel {
176
162
  private cardsInViewport: Card[] = [];
177
163
  private oEventBus!: EventBus;
178
164
  private _appSwitched: boolean = false;
179
- private _containerMenuItems!: MenuItem[];
180
- private _containerActionButtons!: Button[];
181
- private insightsContainer!: InsightsContainer;
182
- private _headerVisible: boolean = false;
165
+ private cardsContainer!: CardsContainer;
183
166
  private _controlMap!: Map<string, UI5Element>;
184
167
  private _cardsRendered!: Promise<void> | undefined;
185
168
  private pageManagerInstance!: PageManager;
186
169
  private hasCustomSpace!: boolean;
170
+ private _errorPanel!: ErrorPanel;
187
171
 
188
172
  constructor(idOrSettings?: string | $CardsPanelSettings);
189
173
  constructor(id?: string, settings?: $CardsPanelSettings);
@@ -205,6 +189,7 @@ export default class CardsPanel extends BasePanel {
205
189
  */
206
190
  public init() {
207
191
  super.init();
192
+ this.setProperty("title", `${this._i18nBundle?.getText("insightsCards")}`);
208
193
  this.setProperty("key", "cards");
209
194
  this.setProperty("enableFullScreen", true);
210
195
  this.cardWidth = "19rem";
@@ -233,8 +218,8 @@ export default class CardsPanel extends BasePanel {
233
218
  "importChannel",
234
219
  "cardsImport",
235
220
  async (sChannelId?: string, sEventId?: string, oData?) => {
221
+ await this.initializeCardHelper();
236
222
  await this._createCards(oData as ICardManifest[]);
237
- await this.rerenderCards();
238
223
  this._importdone();
239
224
  },
240
225
  this
@@ -361,6 +346,7 @@ export default class CardsPanel extends BasePanel {
361
346
  target: oParameters.ibnTarget,
362
347
  params: oParameters.ibnParams
363
348
  });
349
+ addFESRNavigationSource(FESRNavigationSource.Cards);
364
350
  }
365
351
  };
366
352
  const actions = [
@@ -382,9 +368,7 @@ export default class CardsPanel extends BasePanel {
382
368
  icon: "sap-icon://filter",
383
369
  action: (oCard: Card) => {
384
370
  const cardId = (oCard.getManifestEntry("sap.app") as ISapApp).id;
385
- (this.getParent() as InsightsContainer)
386
- ?._getLayout()
387
- .openSettingsDialog(SETTINGS_PANELS_KEYS.INSIGHTS_CARDS, { cardId });
371
+ (this.getParent() as CardsContainer)?._getLayout().openSettingsDialog(SETTINGS_PANELS_KEYS.INSIGHTS_CARDS, { cardId });
388
372
  },
389
373
  visible: async (oCard: Card) => {
390
374
  const oEntry = await this._getManifestEntryFromCard(oCard, "sap.insights");
@@ -449,6 +433,7 @@ export default class CardsPanel extends BasePanel {
449
433
  shellHash: sShellHash
450
434
  }
451
435
  });
436
+ addFESRNavigationSource(FESRNavigationSource.Cards);
452
437
  }
453
438
  }
454
439
  ];
@@ -561,12 +546,12 @@ export default class CardsPanel extends BasePanel {
561
546
  }
562
547
 
563
548
  /**
564
- * Renders the panel.
549
+ * Initializes the card helper and page manager if not already done.
565
550
  *
566
551
  * @private
567
- * @returns {Promise<void>} A promise that resolves when the panel is rendered.
552
+ * @returns {Promise<void>}
568
553
  */
569
- public async renderPanel(): Promise<void> {
554
+ private async initializeCardHelper(): Promise<void> {
570
555
  if (!this.cardHelperInstance) {
571
556
  this.pageManagerInstance = this.pageManagerInstance || getPageManagerInstance(this);
572
557
  const [cardHelperInstance, hasCustomSpace] = await Promise.all([
@@ -576,10 +561,43 @@ export default class CardsPanel extends BasePanel {
576
561
  this.cardHelperInstance = cardHelperInstance;
577
562
  this.hasCustomSpace = hasCustomSpace;
578
563
  }
564
+ }
565
+ /**
566
+ * Renders the panel.
567
+ *
568
+ * @private
569
+ * @returns {Promise<void>} A promise that resolves when the panel is rendered.
570
+ */
571
+ public async renderPanel(): Promise<void> {
572
+ await this.initializeCardHelper();
579
573
  await this.rerenderCards();
580
574
  this.fireEvent("loaded");
581
575
  }
582
576
 
577
+ /**
578
+ * Sorts the menu items based on the provided order.
579
+ *
580
+ * @private
581
+ * @param {string[]} menuItems - The order of the menu items.
582
+ */
583
+ private _sortMenuItems(menuItems: string[]) {
584
+ const panelMenuItems = this.getAggregation("menuItems") as MenuItem[];
585
+ let sortedMenuItems = sortMenuItems(menuItems, panelMenuItems);
586
+ this.removeAllAggregation("menuItems");
587
+ sortedMenuItems?.forEach((menuItem) => this.addAggregation("menuItems", menuItem));
588
+ }
589
+
590
+ private _setMenuItemsVisibility(menuItem: MenuItem, bVisible: boolean) {
591
+ if (
592
+ menuItem &&
593
+ (menuItem.getId().includes(cardsMenuItems.REFRESH) ||
594
+ menuItem.getId().includes(cardsMenuItems.EDIT_CARDS) ||
595
+ menuItem.getId().includes("showMore"))
596
+ ) {
597
+ menuItem.setVisible(bVisible);
598
+ }
599
+ }
600
+
583
601
  /**
584
602
  * Rerenders the cards.
585
603
  *
@@ -592,9 +610,9 @@ export default class CardsPanel extends BasePanel {
592
610
  void (async () => {
593
611
  try {
594
612
  // Enable placeholders after updating/rerendering cards
595
- const sDefaultAggreName = this._getCardContainer().getMetadata().getDefaultAggregationName();
613
+ const sDefaultAggreName = this._getCardWrapperContainer().getMetadata().getDefaultAggregationName();
596
614
 
597
- this._getCardContainer().removeAllAggregation(sDefaultAggreName);
615
+ this._getCardWrapperContainer().removeAllAggregation(sDefaultAggreName);
598
616
  this._showPlaceHolders();
599
617
  // Fetch Cards from insights service
600
618
  const preferedCardIDs = this.hasCustomSpace ? PREFERED_CARDS : [];
@@ -604,12 +622,21 @@ export default class CardsPanel extends BasePanel {
604
622
  if (!listBinding.hasListeners("change")) {
605
623
  listBinding?.enableExtendedChangeDetection(true, "/cards", {});
606
624
  listBinding?.attachChange(async () => {
607
- await (this._cardsRendered ?? Promise.resolve());
625
+ if (this._cardsRendered) {
626
+ await this._cardsRendered;
627
+ }
608
628
  const visibleCards = userVisibleCardModel.getProperty("/cards") as ICard[];
609
629
  if (visibleCards.length !== this.aVisibleCardInstances.length && visibleCards.length > 0) {
630
+ // Show cards in UI
610
631
  this._showCards(visibleCards);
611
632
  } else if (!visibleCards.length) {
633
+ //if there are no tiles, hide the panel and show the error panel
634
+ this.setProperty("title", `${this._i18nBundle?.getText("insightsCards")}`);
635
+ this.getMenuItems().forEach((item) => {
636
+ this._setMenuItemsVisibility(item, false);
637
+ });
612
638
  this.fireHandleHidePanel();
639
+ this._addErrorPanel();
613
640
  }
614
641
  });
615
642
  }
@@ -619,6 +646,13 @@ export default class CardsPanel extends BasePanel {
619
646
  if (aCards.length === 0 && showRecommendation === undefined && !skipRecommendation) {
620
647
  await this._getRecommendationCards();
621
648
  } else if (aCards.length) {
649
+ this._errorPanel?.setVisible(false);
650
+ //Update the panel title with the number of cards
651
+ this.setProperty("title", `${this._i18nBundle?.getText("insightsCards")} (${aCards.length})`);
652
+ //if the panel has been loaded and has cards, update the visibility of header elements of the panel
653
+ this.getMenuItems().forEach((item) => {
654
+ this._setMenuItemsVisibility(item, true);
655
+ });
622
656
  if (showRecommendation === undefined) {
623
657
  await this._updateRecommendationStatus();
624
658
  }
@@ -627,11 +661,20 @@ export default class CardsPanel extends BasePanel {
627
661
  await this.checkForRecommendedCards(aCards);
628
662
  } else {
629
663
  this.fireHandleHidePanel();
664
+ this._addErrorPanel();
665
+ const layout = this._getCardsContainer()?._getLayout();
666
+ if (layout.getProperty("expanded")) {
667
+ this.cardsContainer.addContent(this);
668
+ layout?.toggleFullScreen(this);
669
+ //remove the cards panel from the cards container
670
+ this.cardsContainer.removeContent(this);
671
+ }
630
672
  }
631
673
  this._cardsRendered = undefined;
632
674
  resolve();
633
675
  } catch (error) {
634
676
  this.fireHandleHidePanel();
677
+ this._addErrorPanel();
635
678
  this._cardsRendered = undefined;
636
679
  if (error instanceof Error) {
637
680
  Log.error(error.message);
@@ -643,6 +686,52 @@ export default class CardsPanel extends BasePanel {
643
686
  }
644
687
  return this._cardsRendered;
645
688
  }
689
+
690
+ /**
691
+ * Adds an error panel when no cards are available.
692
+ *
693
+ * @private
694
+ */
695
+ private _addErrorPanel() {
696
+ const parentContainer = this._getCardsContainer() as BaseContainer;
697
+ //set the visibility of cards panel to false
698
+ this.setVisible(false);
699
+ if (!this._errorPanel) {
700
+ this._errorPanel = new ErrorPanel(`${this.getId()}-errorCardsPanel`, {
701
+ additionalData: [
702
+ new Button(`${this.getId()}-addInsightsCardsBtn`, {
703
+ text: this._i18nBundle.getText("addInsightsCardBtn"),
704
+ type: "Emphasized",
705
+ press: () => {
706
+ (this._getCardsContainer() as BaseContainer)
707
+ ?._getLayout()
708
+ .openSettingsDialog(SETTINGS_PANELS_KEYS.INSIGHTS_CARDS);
709
+ }
710
+ })
711
+ ],
712
+ messageTitle: this._i18nBundle.getText("noAppsTitle"),
713
+ messageDescription: this._i18nBundle.getText("noInsightsCardsMsg")
714
+ });
715
+ this._errorPanel.getData();
716
+ //Add the menu items and action buttons to the error panel
717
+ const editCardsMenuItem = this._createEditCardsMenuItem(errorPanelMenuItems.EDIT_CARDS, "manageCards");
718
+ this._errorPanel.addAggregation("menuItems", editCardsMenuItem);
719
+ this._sortMenuItems(sortedMenuItems);
720
+ this._errorPanel.setProperty("enableSettings", true);
721
+ }
722
+ //Add the title to the error panel
723
+ this._errorPanel.setProperty("title", this._i18nBundle?.getText("insightsCards"));
724
+ this._errorPanel.setVisible(true);
725
+ parentContainer.addAggregation("content", this._errorPanel);
726
+ //set the visibility of header elements of the error panel
727
+ this._errorPanel.getMenuItems().forEach((item) => {
728
+ if (item.getId().includes(errorPanelMenuItems.EDIT_CARDS) || item.getId().includes("settings")) {
729
+ item.setVisible(true);
730
+ } else {
731
+ item.setVisible(false);
732
+ }
733
+ });
734
+ }
646
735
  /**
647
736
  * Sets the new visible cards in the model and updates the UI.
648
737
  * @private
@@ -954,15 +1043,15 @@ export default class CardsPanel extends BasePanel {
954
1043
  rowSize: this.cardHeight,
955
1044
  gap: "1rem"
956
1045
  });
957
- this.cardsContainer = new GridContainer(`${this.getId()}-insightsCardsFlexBox`, {
1046
+ this.cardsWrapperContainer = new GridContainer(`${this.getId()}-insightsCardsFlexBox`, {
958
1047
  visible: "{= !${/isPhone}}"
959
1048
  })
960
1049
  .addStyleClass("sapUiSmallMarginTop")
961
1050
  .setLayout(this.cardsContainerSettings);
962
- this.cardsContainer.setModel(this._controlModel);
963
- this.addDragDropConfigTo(this.cardsContainer, (oEvent) => this._handleCardsDnd(oEvent));
1051
+ this.cardsWrapperContainer.setModel(this._controlModel);
1052
+ this.addDragDropConfigTo(this.cardsWrapperContainer, (oEvent) => this._handleCardsDnd(oEvent));
964
1053
 
965
- return this.cardsContainer;
1054
+ return this.cardsWrapperContainer;
966
1055
  }
967
1056
 
968
1057
  /**
@@ -979,7 +1068,7 @@ export default class CardsPanel extends BasePanel {
979
1068
  scrollTime: 1000,
980
1069
  showDividers: false,
981
1070
  visible: "{/isPhone}"
982
- });
1071
+ }).addStyleClass("sapCuxInsightsMobileCardsContainer");
983
1072
  this.cardsMobileContainer.setModel(this._controlModel);
984
1073
  this.addDragDropConfigTo(this.cardsMobileContainer, (oEvent) => this._handleCardsDnd(oEvent));
985
1074
 
@@ -1012,9 +1101,9 @@ export default class CardsPanel extends BasePanel {
1012
1101
  });
1013
1102
 
1014
1103
  // add HBox as item to GridList
1015
- const sDefaultAggreName = this._getCardContainer().getMetadata().getDefaultAggregationName();
1104
+ const sDefaultAggreName = this._getCardWrapperContainer().getMetadata().getDefaultAggregationName();
1016
1105
  if (sDefaultAggreName) {
1017
- this._getCardContainer().addAggregation(sDefaultAggreName, oPreviewHBox);
1106
+ this._getCardWrapperContainer().addAggregation(sDefaultAggreName, oPreviewHBox);
1018
1107
  }
1019
1108
  }
1020
1109
 
@@ -1025,7 +1114,7 @@ export default class CardsPanel extends BasePanel {
1025
1114
  * @returns {number} The number of placeholder cards that should be displayed. Defaults to 1 if no valid count is determined.
1026
1115
  */
1027
1116
  private _calculatePlaceholderCardCount(): number {
1028
- const layoutDomRef = this._getInsightsContainer()?._getLayout()?.getDomRef();
1117
+ const layoutDomRef = this._getCardsContainer()?._getLayout()?.getDomRef();
1029
1118
  let count = 0;
1030
1119
  if (layoutDomRef) {
1031
1120
  const sectionDomRef = layoutDomRef.childNodes[0] as Element;
@@ -1058,14 +1147,11 @@ export default class CardsPanel extends BasePanel {
1058
1147
  * @param {ICard[]} aCards - The cards to display.
1059
1148
  */
1060
1149
  private _showCards(aCards: ICard[]) {
1061
- const panelName = this.getMetadata().getName();
1150
+ const parentContainer = this._getCardsContainer() as BaseContainer;
1151
+ parentContainer.removeContent(this._errorPanel);
1062
1152
  this.fireHandleUnhidePanel();
1063
- this._getInsightsContainer()?.updatePanelsItemCount(aCards.length, panelName);
1064
- if (this._headerVisible) {
1065
- this.setProperty("title", `${this._i18nBundle?.getText("insightsCards")} (${aCards.length})`);
1066
- }
1067
- const sDefaultAggreName = this._getCardContainer().getMetadata().getDefaultAggregationName();
1068
- this._getCardContainer().removeAllAggregation(sDefaultAggreName);
1153
+ const sDefaultAggreName = this._getCardWrapperContainer().getMetadata().getDefaultAggregationName();
1154
+ this._getCardWrapperContainer().removeAllAggregation(sDefaultAggreName);
1069
1155
  this.aVisibleCardInstances = [];
1070
1156
  this.cardsInViewport = [];
1071
1157
 
@@ -1113,8 +1199,8 @@ export default class CardsPanel extends BasePanel {
1113
1199
  });
1114
1200
 
1115
1201
  // add VBox as item to GridList
1116
- const sDefaultAggreName = this._getCardContainer().getMetadata().getDefaultAggregationName();
1117
- this._getCardContainer().addAggregation(sDefaultAggreName, oPreviewVBox);
1202
+ const sDefaultAggreName = this._getCardWrapperContainer().getMetadata().getDefaultAggregationName();
1203
+ this._getCardWrapperContainer().addAggregation(sDefaultAggreName, oPreviewVBox);
1118
1204
  });
1119
1205
  }
1120
1206
 
@@ -1125,38 +1211,13 @@ export default class CardsPanel extends BasePanel {
1125
1211
  * @param {Event} event - The event object.
1126
1212
  */
1127
1213
  private _handleEditCards(event: Event) {
1128
- /* If called from Panel Header event.source() will return TilesPanel, if called from Insights Container event.source() will return InsightsContainer.
1214
+ /* If called from Panel Header event.source() will return TilesPanel, if called from cards Container event.source() will return cardsContainer.
1129
1215
  _getLayout is available at Container Level*/
1130
1216
  let parent: ManagedObject = event.getSource<CardsPanel>().getParent() || this;
1131
- if (parent instanceof CardsPanel) {
1217
+ if (parent instanceof CardsPanel || parent instanceof ErrorPanel) {
1132
1218
  parent = parent.getParent() as ManagedObject;
1133
1219
  }
1134
- (parent as InsightsContainer)?._getLayout().openSettingsDialog(SETTINGS_PANELS_KEYS.INSIGHTS_CARDS);
1135
- }
1136
-
1137
- /**
1138
- * Hides the header of the cards panel.
1139
- *
1140
- * @private
1141
- */
1142
- public handleHideHeader() {
1143
- this._headerVisible = false;
1144
- this.setProperty("title", "");
1145
- this._toggleHeaderActions(false);
1146
- }
1147
-
1148
- /**
1149
- * Adds the header to the cards panel.
1150
- *
1151
- * @private
1152
- */
1153
- public handleAddHeader() {
1154
- this._headerVisible = true;
1155
- this.setProperty(
1156
- "title",
1157
- `${this._i18nBundle?.getText("insightsCards")} (${(this._controlModel.getProperty("/userVisibleCards") as ICard[])?.length})`
1158
- );
1159
- this._toggleHeaderActions(true);
1220
+ (parent as CardsContainer)?._getLayout().openSettingsDialog(SETTINGS_PANELS_KEYS.INSIGHTS_CARDS);
1160
1221
  }
1161
1222
 
1162
1223
  /**
@@ -1193,7 +1254,7 @@ export default class CardsPanel extends BasePanel {
1193
1254
  await this.updateCardList(sInsertPosition, iDropItemIndex, iDragItemIndex);
1194
1255
  }
1195
1256
  setTimeout(() => {
1196
- focusDraggedItem(this._getCardContainer(), iDropItemIndex);
1257
+ focusDraggedItem(this._getCardWrapperContainer(), iDropItemIndex);
1197
1258
  }, 0);
1198
1259
  } catch (error) {
1199
1260
  if (error instanceof Error) {
@@ -1299,7 +1360,7 @@ export default class CardsPanel extends BasePanel {
1299
1360
  * @returns {number} - The number of visible cards.
1300
1361
  */
1301
1362
  private _calculateVisibleCardCount() {
1302
- const layout = this._getInsightsContainer()._getLayout();
1363
+ const layout = this._getCardsContainer()._getLayout();
1303
1364
  const pageDomRef = layout.getDomRef();
1304
1365
  const deviceType = this.getDeviceType();
1305
1366
  let count = 1;
@@ -1333,7 +1394,7 @@ export default class CardsPanel extends BasePanel {
1333
1394
  * @override
1334
1395
  */
1335
1396
  public _adjustLayout() {
1336
- const layout = this._getInsightsContainer()?._getLayout();
1397
+ const layout = this._getCardsContainer()?._getLayout();
1337
1398
  let cardWidth = this.cardWidth;
1338
1399
  const isMobileDevice = this.getDeviceType() === DeviceType.Mobile;
1339
1400
 
@@ -1352,8 +1413,8 @@ export default class CardsPanel extends BasePanel {
1352
1413
  if (cardCount !== this.cardsInViewport.length) {
1353
1414
  this.cardsInViewport = this.aVisibleCardInstances.slice(0, cardCount);
1354
1415
 
1355
- const sDefaultAggreName = this._getCardContainer().getMetadata().getDefaultAggregationName();
1356
- this._getCardContainer().removeAllAggregation(sDefaultAggreName);
1416
+ const sDefaultAggreName = this._getCardWrapperContainer().getMetadata().getDefaultAggregationName();
1417
+ this._getCardWrapperContainer().removeAllAggregation(sDefaultAggreName);
1357
1418
  this.cardsInViewport.forEach((card) => {
1358
1419
  const manifest = card.getManifest() as ICardManifest;
1359
1420
  const sType = manifest["sap.card"]?.type;
@@ -1376,31 +1437,22 @@ export default class CardsPanel extends BasePanel {
1376
1437
  if (overlayHBoxWrapper) {
1377
1438
  cardWrapper.addItem(overlayHBoxWrapper);
1378
1439
  }
1379
- const sDefaultAggreName = this._getCardContainer().getMetadata().getDefaultAggregationName();
1380
- this._getCardContainer().addAggregation(sDefaultAggreName, cardWrapper);
1440
+ const sDefaultAggreName = this._getCardWrapperContainer().getMetadata().getDefaultAggregationName();
1441
+ this._getCardWrapperContainer().addAggregation(sDefaultAggreName, cardWrapper);
1381
1442
  });
1382
1443
 
1383
1444
  this.shareCardsInViewport();
1384
1445
  }
1385
-
1386
- // show/hide Full Screen Button if available
1446
+ // show/hide full screen button
1387
1447
  const showFullScreenButton = isElementExpanded || this.aVisibleCardInstances.length > cardCount;
1388
- if (this._headerVisible) {
1389
- this._getInsightsContainer()?.toggleFullScreenElements(this, showFullScreenButton);
1390
- } else {
1391
- const fullScreenButton = getAssociatedFullScreenMenuItem(this);
1392
- const fullScreenText = fullScreenButton?.getTitle();
1393
- this._getInsightsContainer()?.updateMenuItem(
1394
- this._controlMap.get(`${this.getId()}-${cardsContainerMenuItems.SHOW_MORE}`) as MenuItem,
1395
- showFullScreenButton,
1396
- fullScreenText
1397
- );
1398
- this._getInsightsContainer()?.updateActionButton(
1399
- this._controlMap.get(`${this.getId()}-${cardsContainerActionButtons.SHOW_MORE}`) as Button,
1400
- showFullScreenButton,
1401
- fullScreenText
1402
- );
1403
- }
1448
+ const fullScreenButton = getAssociatedFullScreenMenuItem(this);
1449
+ const fullScreenText = fullScreenButton.getTitle();
1450
+ //update the panel menu-item show more button and show more action button in panel header
1451
+ fullScreenButton?.setVisible(showFullScreenButton);
1452
+ fullScreenButton?.setTitle(fullScreenText);
1453
+ const fullScreenActionButton = getAssociatedFullScreenButton(this);
1454
+ fullScreenActionButton?.setVisible(showFullScreenButton);
1455
+ fullScreenActionButton?.setText(fullScreenText);
1404
1456
  } else {
1405
1457
  this.cardWidth = this.getDeviceType() === DeviceType.Mobile ? "19rem" : "22rem";
1406
1458
  }
@@ -1412,53 +1464,17 @@ export default class CardsPanel extends BasePanel {
1412
1464
  }
1413
1465
  }
1414
1466
 
1415
- /**
1416
- * Retrieves the menu items for the container.
1417
- *
1418
- * @private
1419
- * @returns {MenuItem[]} An array of MenuItem instances.
1420
- */
1421
- public getContainerMenuItems(): MenuItem[] {
1422
- if (!this._containerMenuItems) {
1423
- const containerRefreshMenuItem = this._createRefreshMenuItem(cardsContainerMenuItems.REFRESH, "containerCardsRefresh");
1424
- const containerEditCardsMenuItem = this._createEditCardsMenuItem(cardsContainerMenuItems.EDIT_CARDS, "containerManageCards");
1425
- const containerShowMoreMenuItem = createShowMoreMenuItem(this, cardsContainerMenuItems.SHOW_MORE, "containerCardsShowMore");
1426
- this._controlMap.set(`${this.getId()}-${cardsContainerMenuItems.SHOW_MORE}`, containerShowMoreMenuItem);
1427
- this._containerMenuItems = [containerRefreshMenuItem, containerEditCardsMenuItem, containerShowMoreMenuItem];
1428
- }
1429
- return this._containerMenuItems;
1430
- }
1431
-
1432
- /**
1433
- * Retrieves the action buttons for the container.
1434
- *
1435
- * @private
1436
- * @returns {Button[]} An array of Button instances.
1437
- */
1438
- public getContainerActionButtons(): Button[] {
1439
- if (!this._containerActionButtons) {
1440
- this._containerActionButtons = [];
1441
- const actionButton = createShowMoreActionButton(this, cardsContainerActionButtons.SHOW_MORE, "containerCardsShowMore");
1442
- if (actionButton) {
1443
- this._controlMap.set(`${this.getId()}-${cardsContainerActionButtons.SHOW_MORE}`, actionButton);
1444
- this._containerActionButtons.push(actionButton);
1445
- }
1446
- }
1447
-
1448
- return this._containerActionButtons;
1449
- }
1450
-
1451
1467
  /**
1452
1468
  * Retrieves the insights container.
1453
1469
  *
1454
1470
  * @private
1455
- * @returns {InsightsContainer} - The insights container.
1471
+ * @returns {CardsContainer} - The cards container.
1456
1472
  */
1457
- private _getInsightsContainer(): InsightsContainer {
1458
- if (!this.insightsContainer) {
1459
- this.insightsContainer = this.getParent() as InsightsContainer;
1473
+ private _getCardsContainer(): CardsContainer {
1474
+ if (!this.cardsContainer) {
1475
+ this.cardsContainer = this.getParent() as CardsContainer;
1460
1476
  }
1461
- return this.insightsContainer;
1477
+ return this.cardsContainer;
1462
1478
  }
1463
1479
 
1464
1480
  /**
@@ -1506,21 +1522,6 @@ export default class CardsPanel extends BasePanel {
1506
1522
  return menuItem;
1507
1523
  }
1508
1524
 
1509
- /**
1510
- * Toggles the visibility of the header actions.
1511
- *
1512
- * @param {boolean} bShow - Whether to show or hide the header actions.
1513
- * @private
1514
- */
1515
- private _toggleHeaderActions(bShow: boolean) {
1516
- (this.getAggregation("menuItems") as MenuItem[])?.forEach((menuItem) => {
1517
- this._getInsightsContainer()?.toggleMenuListItem(menuItem, bShow);
1518
- });
1519
- (this.getAggregation("actionButtons") as Button[])?.forEach((actionButton) =>
1520
- this._getInsightsContainer()?.toggleActionButton(actionButton, bShow)
1521
- );
1522
- }
1523
-
1524
1525
  /**
1525
1526
  * Retrieves the card container based on the device type.
1526
1527
  *
@@ -1528,24 +1529,11 @@ export default class CardsPanel extends BasePanel {
1528
1529
  * @returns {GridContainer | HeaderContainer} - The card container.
1529
1530
  *
1530
1531
  */
1531
- private _getCardContainer() {
1532
+ private _getCardWrapperContainer() {
1532
1533
  if (this.getDeviceType() === DeviceType.Mobile) {
1533
1534
  return this.cardsMobileContainer;
1534
1535
  }
1535
- return this.cardsContainer;
1536
- }
1537
-
1538
- /**
1539
- * Sorts the menu items based on the provided order.
1540
- *
1541
- * @private
1542
- * @param {string[]} menuItems - The order of the menu items.
1543
- */
1544
- private _sortMenuItems(menuItems: string[]) {
1545
- const panelMenuItems = this.getAggregation("menuItems") as MenuItem[];
1546
- let sortedMenuItems = sortMenuItems(menuItems, panelMenuItems);
1547
- this.removeAllAggregation("menuItems");
1548
- sortedMenuItems?.forEach((menuItem) => this.addAggregation("menuItems", menuItem));
1536
+ return this.cardsWrapperContainer;
1549
1537
  }
1550
1538
 
1551
1539
  /**
@@ -23,6 +23,7 @@ declare module "sap/cux/home/ContentAdditionDialog" {
23
23
  private cancelButton;
24
24
  private panelsAdded;
25
25
  private errorMessageContainer;
26
+ private _appsAdditionPanel;
26
27
  static renderer: {
27
28
  apiVersion: number;
28
29
  };
@@ -33,6 +34,7 @@ declare module "sap/cux/home/ContentAdditionDialog" {
33
34
  * @override
34
35
  */
35
36
  init(): void;
37
+ onAfterRendering(): void;
36
38
  /**
37
39
  * Sets up the dialog content with an icon tab bar and error message container.
38
40
  *
@@ -1 +1 @@
1
- {"version":3,"file":"ContentAdditionDialog.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ContentAdditionDialog.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,oCAAoC,CAAC;IACpD;;;OAGG;IAEH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;IAW9C,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;IAMjE;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,kBAAkB;QACpE,OAAO,CAAC,UAAU,CAAc;QAChC,OAAO,CAAC,YAAY,CAAU;QAC9B,OAAO,CAAC,WAAW,CAAW;QAC9B,OAAO,CAAC,qBAAqB,CAAW;QAExC,MAAM,CAAC,QAAQ;;UAEb;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAoBnB;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;QAiC3B;;;;;;WAMG;QACI,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;QAclD;;;;;WAKG;gBACW,sBAAsB;QA8BpC;;;;;;WAMG;QACH,OAAO,CAAC,iBAAiB;QASzB;;;;WAIG;QACI,mBAAmB,IAAI,IAAI;QAuBlC;;;;WAIG;QACH,OAAO,CAAC,aAAa;KAGrB;CAEA"}
1
+ {"version":3,"file":"ContentAdditionDialog.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ContentAdditionDialog.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,oCAAoC,CAAC;IACpD;;;OAGG;IAEH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;IAW9C,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;IAQjE;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,kBAAkB;QACpE,OAAO,CAAC,UAAU,CAAc;QAChC,OAAO,CAAC,YAAY,CAAU;QAC9B,OAAO,CAAC,WAAW,CAAW;QAC9B,OAAO,CAAC,qBAAqB,CAAW;QACxC,OAAO,CAAC,kBAAkB,CAAqB;QAE/C,MAAM,CAAC,QAAQ;;UAEb;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAuBZ,gBAAgB;QAMvB;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;QAiC3B;;;;;;WAMG;QACI,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;QAWlD;;;;;WAKG;gBACW,sBAAsB;QA8BpC;;;;;;WAMG;QACH,OAAO,CAAC,iBAAiB;QASzB;;;;WAIG;QACI,mBAAmB,IAAI,IAAI;QA0BlC;;;;WAIG;QACH,OAAO,CAAC,aAAa;KAGrB;CAEA"}