@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
@@ -50,15 +50,13 @@ import SimpleForm from "sap/ui/layout/form/SimpleForm";
50
50
  import { form } from "sap/ui/layout/library";
51
51
  import Config from "sap/ushell/Config";
52
52
  import Container from "sap/ushell/Container";
53
- import MyHomeImport from "sap/ushell/components/pages/MyHomeImport";
54
- import PageRuntime from "sap/ushell/components/pages/controller/PageRuntime.controller";
55
53
  import Navigation from "sap/ushell/services/Navigation";
56
54
  import Pages from "sap/ushell/services/Pages";
57
55
  import { IExportData } from "./AdvancedSettingsPanel";
58
56
  import App from "./App";
59
57
  import AppsContainer from "./AppsContainer";
60
58
  import { ActionsPopover } from "./BaseApp";
61
- import BaseAppPanel from "./BaseAppPanel";
59
+ import BaseAppPanel, { BaseAppPanel$SupportedEvent } from "./BaseAppPanel";
62
60
  import BaseAppPersPanel from "./BaseAppPersPanel";
63
61
  import BaseContainer from "./BaseContainer";
64
62
  import type { $BasePanelSettings } from "./BasePanel";
@@ -80,7 +78,7 @@ import { IMoveConfig } from "./utils/AppManager";
80
78
  import { DEFAULT_BG_COLOR, END_USER_COLORS, MYAPPS_SECTION_ID, MYHOME_PAGE_ID } from "./utils/Constants";
81
79
  import { getLeanURL, recycleId } from "./utils/DataFormatUtils";
82
80
  import { DeviceType } from "./utils/Device";
83
- import { addFESRId, addFESRSemanticStepName } from "./utils/FESRUtil";
81
+ import { addFESRId, addFESRNavigationSource, addFESRSemanticStepName, FESRNavigationSource } from "./utils/FESRUtil";
84
82
  import { sortMenuItems } from "./utils/InsightsUtils";
85
83
  const _showAddApps = () => {
86
84
  return (Config.last("/core/shell/enablePersonalization") || Config.last("/core/catalog/enabled")) as boolean;
@@ -93,7 +91,7 @@ export enum favouritesMenuItems {
93
91
  }
94
92
 
95
93
  const tilesPanelName: string = "sap.cux.home.TilesPanel";
96
- const insightsConatinerlName: string = "sap.cux.home.InsightsContainer";
94
+ const tilesContainerName: string = "sap.cux.home.TilesContainer";
97
95
  const sortedMenuItems: (favouritesMenuItems | string)[] = [
98
96
  favouritesMenuItems.CREATE_GROUP,
99
97
  favouritesMenuItems.ADD_APPS,
@@ -123,9 +121,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
123
121
  private _currentItem!: App | Group;
124
122
  private _cutApp: GenericTile | undefined;
125
123
  private oEventBus!: EventBus;
126
- private _importButton!: Button;
127
124
  private _createGroupMenuItem!: MenuItem;
128
- private _isInitialLoad = true;
129
125
 
130
126
  static readonly metadata: MetadataOptions = {
131
127
  library: "sap.cux.home",
@@ -159,7 +155,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
159
155
  this.setProperty("title", this._i18nBundle.getText("favoritesTab"));
160
156
  this.setProperty("tooltip", this._i18nBundle.getText("favAppsInfo"));
161
157
  //Setup Action Buttons
162
- void this._createActionButtons();
158
+ this._createActionButtons();
163
159
  //Setup Menu Items
164
160
  this._createHeaderMenuItems();
165
161
  //add drag and drop config
@@ -188,14 +184,6 @@ export default class FavAppPanel extends BaseAppPersPanel {
188
184
  },
189
185
  this
190
186
  );
191
- this.oEventBus.subscribe(
192
- "importChannel",
193
- "resetImported",
194
- async () => {
195
- await this.setImportButtonVisibility(true);
196
- },
197
- this
198
- );
199
187
  this.attachPersistDialog(() => {
200
188
  // if while navigating to different page, a group detail dialog was open, then while navigating back group detail dialog should be in open state.
201
189
  if (this._selectedGroupId) {
@@ -205,6 +193,9 @@ export default class FavAppPanel extends BaseAppPersPanel {
205
193
 
206
194
  document.addEventListener("click", (event) => this._resetCutElement(event));
207
195
  document.addEventListener("keydown", (event) => this._resetCutElement(event));
196
+ this.additionalInfo = {
197
+ fesrSource: FESRNavigationSource.Favorite
198
+ };
208
199
  }
209
200
 
210
201
  private _importdone() {
@@ -384,9 +375,9 @@ export default class FavAppPanel extends BaseAppPersPanel {
384
375
  const container = this.getParent() as BaseContainer;
385
376
  container.toggleMenuListItem(this._createGroupMenuItem, this.getApps().length > 0);
386
377
  if (!isPhone) {
387
- await this._switchToRecommendedIfNoFavApps(apps, groups);
378
+ this._switchToRecommendedIfNoFavApps(apps, groups);
388
379
  }
389
- if (checkPanelExists(container, insightsConatinerlName, tilesPanelName)) {
380
+ if (checkPanelExists(container, tilesContainerName, tilesPanelName)) {
390
381
  this._createAddFromInsTilesMenuItem(favouritesMenuItems.ADD_FROM_INSIGHTS);
391
382
  }
392
383
  //updating header once the visibility for createGrp menu item is set according to the no. of apps
@@ -401,15 +392,20 @@ export default class FavAppPanel extends BaseAppPersPanel {
401
392
  * @param {App[]} apps - The list of favorite apps.
402
393
  * @param {Group[]} groups - The list of favorite app groups.
403
394
  */
404
- private async _switchToRecommendedIfNoFavApps(apps: App[], groups: Group[]): Promise<void> {
395
+ private _switchToRecommendedIfNoFavApps(apps: App[], groups: Group[]): void {
405
396
  const container = this.getParent() as AppsContainer;
406
397
  const panels = container.getContent() as BaseAppPanel[];
407
398
  const recommendedPanel = panels ? panels.find((panel) => panel instanceof RecommendedAppPanel) : null;
408
- if (this._isInitialLoad && [...apps, ...groups].length === 0 && recommendedPanel?.isSupported()) {
409
- container.setProperty?.("selectedKey", "recommendedApps");
410
- await container.refreshPanel(recommendedPanel);
399
+
400
+ if (recommendedPanel) {
401
+ recommendedPanel.attachEventOnce("supported", async (event: BaseAppPanel$SupportedEvent) => {
402
+ const isSupported = event.getParameter("isSupported") as boolean;
403
+ if ([...apps, ...groups].length === 0 && isSupported) {
404
+ container.setProperty?.("selectedKey", "recommendedApps");
405
+ await container.refreshPanel(recommendedPanel);
406
+ }
407
+ });
411
408
  }
412
- this._isInitialLoad = false;
413
409
  }
414
410
 
415
411
  /**
@@ -609,7 +605,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
609
605
  * Creates actions buttons for panel.
610
606
  * @private
611
607
  */
612
- private async _createActionButtons() {
608
+ private _createActionButtons() {
613
609
  if (!this._actionButtons) {
614
610
  this._actionButtons = [];
615
611
  if (_showAddApps()) {
@@ -628,29 +624,6 @@ export default class FavAppPanel extends BaseAppPersPanel {
628
624
  this._actionButtons.forEach((actionButton) => {
629
625
  this.addAggregation("actionButtons", actionButton);
630
626
  });
631
- const isImportEnabled = await this._validateAppsMigration();
632
- if (isImportEnabled) {
633
- this._createImportButton();
634
- }
635
- }
636
-
637
- private _createImportButton(): Button {
638
- if (!this._importButton) {
639
- this._importButton = new Button(`${this.getId()}-importAppsBtn`, {
640
- tooltip: this._i18nBundle.getText("importAppsNow"),
641
- text: this._i18nBundle.getText("importAppsNow"),
642
- press: this._openImportAppsDialog.bind(this)
643
- });
644
- addFESRId(this._importButton, "importAppsDialog");
645
- this._actionButtons.push(this._importButton);
646
- this.insertAggregation("actionButtons", this._importButton, 0);
647
- }
648
- return this._importButton;
649
- }
650
-
651
- private async setImportButtonVisibility(bVisible: boolean): Promise<void> {
652
- await MyHomeImport.setImportEnabled(bVisible);
653
- this._createImportButton().setVisible(bVisible);
654
627
  }
655
628
 
656
629
  /**
@@ -927,25 +900,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
927
900
  shellHash: `Shell-appfinder?&/catalog/${JSON.stringify(navigationObject)}`
928
901
  }
929
902
  });
930
- }
931
-
932
- /**
933
- * Validates if import apps is enabled
934
- *
935
- *@returns {Promise} - resolves to boolean value (import is enabled/disabled)
936
- */
937
- private async _validateAppsMigration() {
938
- try {
939
- return await MyHomeImport.isImportEnabled();
940
- } catch (error: unknown) {
941
- Log.warning(error instanceof Error ? error.message : "Error while checking if import apps is enabled");
942
- return false;
943
- }
944
- }
945
-
946
- private _openImportAppsDialog() {
947
- const pageRuntime = new PageRuntime();
948
- pageRuntime.onImportDialogPress();
903
+ addFESRNavigationSource(FESRNavigationSource.AppFinder);
949
904
  }
950
905
 
951
906
  /**
@@ -1680,7 +1635,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
1680
1635
  title: title,
1681
1636
  actions: [actionText as string, MessageBox.Action.CANCEL],
1682
1637
  emphasizedAction: actionText,
1683
- onClose: async (action: string) => {
1638
+ onClose: async (action: string | null) => {
1684
1639
  if (action === actionText) {
1685
1640
  this._setBusy(true);
1686
1641
  try {
@@ -1762,7 +1717,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
1762
1717
  title: confirmationTitle,
1763
1718
  actions: [confirmationTitle, MessageBox.Action.CANCEL],
1764
1719
  emphasizedAction: confirmationTitle,
1765
- onClose: (action: string) => {
1720
+ onClose: (action: string | null) => {
1766
1721
  if (action === confirmationTitle) {
1767
1722
  void this._moveAppAndHandleGroupChanges(app, sourceGroupId, targetGroupId);
1768
1723
  }
@@ -1943,7 +1898,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
1943
1898
  title: title,
1944
1899
  actions: [actionText, MessageBox.Action.CANCEL],
1945
1900
  emphasizedAction: actionText,
1946
- onClose: (action: string) => {
1901
+ onClose: (action: string | null) => {
1947
1902
  if (action === actionText) {
1948
1903
  void this._ungroupApps(group.id!);
1949
1904
  }
@@ -1968,7 +1923,7 @@ export default class FavAppPanel extends BaseAppPersPanel {
1968
1923
  title: title,
1969
1924
  actions: [deleteAction, this._i18nBundle.getText("moveApps") as string, MessageBox.Action.CANCEL],
1970
1925
  emphasizedAction: deleteAction,
1971
- onClose: async (action: string) => {
1926
+ onClose: async (action: string | null) => {
1972
1927
  if (action === deleteAction) {
1973
1928
  this._setBusy(true);
1974
1929
  await this._deleteGroup(group.getGroupId());
@@ -1 +1 @@
1
- {"version":3,"file":"FrequentAppPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/FrequentAppPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,+BAA+B,CAAC;IAO/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAM3D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;IAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;IAKjE;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,gBAAgB;QAC7D,OAAO,CAAC,SAAS,CAAY;QAC7B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CASvC;QAEF;;;;;WAKG;oBACgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,kBAAkB;QAKtD,IAAI;QAuBX;;;WAGG;QACU,QAAQ;QAcrB;;;;WAIG;gBACW,0BAA0B;QAaxC;;;;;WAKG;QACH,OAAO,CAAC,WAAW;QAgBnB;;;;;WAKG;QACH,SAAS,CAAC,0BAA0B;KAMpC;CAEA"}
1
+ {"version":3,"file":"FrequentAppPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/FrequentAppPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,+BAA+B,CAAC;IAO/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAM3D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;IAC7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;IAMjE;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,gBAAgB;QAC7D,OAAO,CAAC,SAAS,CAAY;QAC7B,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CASvC;QAEF;;;;;WAKG;oBACgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,kBAAkB;QAKtD,IAAI;QA0BX;;;WAGG;QACU,QAAQ;QAcrB;;;;WAIG;gBACW,0BAA0B;QAaxC;;;;;WAKG;QACH,OAAO,CAAC,WAAW;QAgBnB;;;;;WAKG;QACH,SAAS,CAAC,0BAA0B;KAMpC;CAEA"}
@@ -2,7 +2,7 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/Log", "sap/ui/core/EventBus", "sap/ushell/Container", "sap/ushell/EventHub", "./BaseAppPersPanel", "./MenuItem"], function (Log, EventBus, Container, EventHub, __BaseAppPersPanel, __MenuItem) {
5
+ sap.ui.define(["sap/base/Log", "sap/ui/core/EventBus", "sap/ushell/Container", "sap/ushell/EventHub", "./BaseAppPersPanel", "./MenuItem", "./utils/FESRUtil"], function (Log, EventBus, Container, EventHub, __BaseAppPersPanel, __MenuItem, ___utils_FESRUtil) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
@@ -21,6 +21,7 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/EventBus", "sap/ushell/Container", "
21
21
  }
22
22
  const BaseAppPersPanel = _interopRequireDefault(__BaseAppPersPanel);
23
23
  const MenuItem = _interopRequireDefault(__MenuItem);
24
+ const FESRNavigationSource = ___utils_FESRUtil["FESRNavigationSource"];
24
25
  /**
25
26
  *
26
27
  * Provides the class for managing frequent apps.
@@ -80,6 +81,9 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/EventBus", "sap/ushell/Container", "
80
81
  //update color of the app in most used apps
81
82
  this._applyUngroupedTileColor(item, color);
82
83
  }, this);
84
+ this.additionalInfo = {
85
+ fesrSource: FESRNavigationSource.FrequentlyUsed
86
+ };
83
87
  },
84
88
  /**
85
89
  * Fetch frequent apps and set apps aggregation
@@ -1 +1 @@
1
- {"version":3,"file":"FrequentAppPanel.js","names":["sap","ui","define","Log","EventBus","Container","EventHub","__BaseAppPersPanel","__MenuItem","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BaseAppPersPanel","MenuItem","FrequentAppPanel","extend","metadata","library","defaultAggregation","aggregations","apps","type","singularName","multiple","visibility","constructor","_constructor","id","settings","BaseAppPersPanel.prototype.constructor.call","setSupported","init","_init","BaseAppPersPanel.prototype.init.call","setProperty","_i18nBundle","getText","_attachUserActivityTracking","on","do","refresh","oEventBus","getInstance","subscribe","channelId","eventId","data","item","color","_applyUngroupedTileColor","loadApps","_loadApps","_this","Promise","resolve","_getFrequentVisualizations","frequentVisualizations","destroyAggregation","map","visualization","index","menuItems","_getActions","addedInFavorites","frequentApps","generateApps","setApps","reject","_this2","getServiceAsync","UserRecentsService","getFrequentActivity","frequentActivities","convertActivitiesToVisualizations","error","isAppAddedInFavorite","action","push","getKey","title","icon","press","event","_addAppToFavorites","generateIllustratedMessage","_generateIllustratedMessage","illustratedMessage","BaseAppPersPanel.prototype.generateIllustratedMessage.call","setDescription"],"sources":["FrequentAppPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport EventBus from \"sap/ui/core/EventBus\";\nimport Container from \"sap/ushell/Container\";\nimport EventHub from \"sap/ushell/EventHub\";\nimport UserRecents from \"sap/ushell/services/UserRecents\";\nimport App from \"./App\";\nimport BaseAppPersPanel from \"./BaseAppPersPanel\";\nimport type { $BasePanelSettings } from \"./BasePanel\";\nimport Group from \"./Group\";\nimport { IActivity } from \"./interface/AppsInterface\";\nimport MenuItem from \"./MenuItem\";\n\n/**\n *\n * Provides the class for managing frequent apps.\n *\n * @extends sap.cux.home.BaseAppPersPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121.0\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.FrequentAppPanel\n */\n\nexport default class FrequentAppPanel extends BaseAppPersPanel {\n\tprivate oEventBus!: EventBus;\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tdefaultAggregation: \"apps\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Apps aggregation for Frequent apps\n\t\t\t */\n\t\t\tapps: { type: \"sap.cux.home.App\", singularName: \"app\", multiple: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\t/**\n\t * Constructor for a new frequent app panel.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $BasePanelSettings) {\n\t\tsuper(id, settings);\n\t\tthis.setSupported(false);\n\t}\n\n\tpublic init() {\n\t\tsuper.init();\n\t\tthis.setProperty(\"key\", \"frequentApps\");\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"frequentlyUsedTab\"));\n\t\tthis.setProperty(\"tooltip\", this._i18nBundle.getText(\"frequentlyUsedTabInfo\"));\n\t\tthis._attachUserActivityTracking();\n\t\tEventHub.on(\"userRecentsCleared\").do(() => {\n\t\t\tvoid this.refresh();\n\t\t});\n\n\t\tthis.oEventBus = EventBus.getInstance();\n\t\tthis.oEventBus.subscribe(\n\t\t\t\"appsChannel\",\n\t\t\t\"favAppColorChanged\",\n\t\t\t(channelId?: string, eventId?: string, data?) => {\n\t\t\t\tconst { item, color } = data as { item: App | Group; color: string };\n\t\t\t\t//update color of the app in most used apps\n\t\t\t\tthis._applyUngroupedTileColor(item, color);\n\t\t\t},\n\t\t\tthis\n\t\t);\n\t}\n\n\t/**\n\t * Fetch frequent apps and set apps aggregation\n\t * @private\n\t */\n\tpublic async loadApps() {\n\t\tlet frequentVisualizations = await this._getFrequentVisualizations();\n\t\tthis.destroyAggregation(\"apps\", true);\n\t\tfrequentVisualizations = frequentVisualizations.map((visualization, index) => {\n\t\t\treturn {\n\t\t\t\t...visualization,\n\t\t\t\tmenuItems: this._getActions(visualization.addedInFavorites, index)\n\t\t\t};\n\t\t});\n\t\t//convert apps objects array to apps instances\n\t\tconst frequentApps = this.generateApps(frequentVisualizations);\n\t\tthis.setApps(frequentApps);\n\t}\n\n\t/**\n\t * Returns list of frequent apps\n\t * @private\n\t * @returns {object[]} - Array of frequent apps.\n\t */\n\tprivate async _getFrequentVisualizations() {\n\t\ttry {\n\t\t\tconst UserRecentsService = await Container.getServiceAsync<UserRecents>(\"UserRecents\");\n\t\t\tconst frequentActivities: IActivity[] = (await UserRecentsService?.getFrequentActivity()) || [];\n\t\t\t//convert activity to apps\n\t\t\tconst frequentVisualizations = await this.convertActivitiesToVisualizations(frequentActivities);\n\t\t\treturn frequentVisualizations;\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t\treturn [];\n\t\t}\n\t}\n\n\t/**\n\t * Returns list of actions available for selected app\n\t * @private\n\t * @param {boolean} isAppAddedInFavorite - true if app is already present in favorite, false otherwise.\n\t * @returns {sap.cux.home.MenuItem[]} - Array of list items.\n\t */\n\tprivate _getActions(isAppAddedInFavorite: boolean = false, index?: number) {\n\t\tconst action = [];\n\t\tif (!isAppAddedInFavorite) {\n\t\t\taction.push(\n\t\t\t\tnew MenuItem(`${this.getKey()}--addToFavorites--${index}`, {\n\t\t\t\t\ttitle: this._i18nBundle.getText(\"addToFavorites\"),\n\t\t\t\t\ticon: \"sap-icon://add-favorite\",\n\t\t\t\t\tpress: (event) => {\n\t\t\t\t\t\tvoid this._addAppToFavorites(event);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t);\n\t\t}\n\t\treturn action;\n\t}\n\n\t/**\n\t * Generates illustrated message for frequent apps panel.\n\t * @private\n\t * @override\n\t * @returns {sap.m.IllustratedMessage} Illustrated error message.\n\t */\n\tprotected generateIllustratedMessage() {\n\t\tconst illustratedMessage = super.generateIllustratedMessage();\n\t\t//override the default description\n\t\tillustratedMessage.setDescription(this._i18nBundle.getText(\"noFreqAppsDescription\"));\n\t\treturn illustratedMessage;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"FrequentAppPanel.js","names":["sap","ui","define","Log","EventBus","Container","EventHub","__BaseAppPersPanel","__MenuItem","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BaseAppPersPanel","MenuItem","FESRNavigationSource","FrequentAppPanel","extend","metadata","library","defaultAggregation","aggregations","apps","type","singularName","multiple","visibility","constructor","_constructor","id","settings","BaseAppPersPanel.prototype.constructor.call","setSupported","init","_init","BaseAppPersPanel.prototype.init.call","setProperty","_i18nBundle","getText","_attachUserActivityTracking","on","do","refresh","oEventBus","getInstance","subscribe","channelId","eventId","data","item","color","_applyUngroupedTileColor","additionalInfo","fesrSource","FrequentlyUsed","loadApps","_loadApps","_this","Promise","resolve","_getFrequentVisualizations","frequentVisualizations","destroyAggregation","map","visualization","index","menuItems","_getActions","addedInFavorites","frequentApps","generateApps","setApps","reject","_this2","getServiceAsync","UserRecentsService","getFrequentActivity","frequentActivities","convertActivitiesToVisualizations","error","isAppAddedInFavorite","action","push","getKey","title","icon","press","event","_addAppToFavorites","generateIllustratedMessage","_generateIllustratedMessage","illustratedMessage","BaseAppPersPanel.prototype.generateIllustratedMessage.call","setDescription"],"sources":["FrequentAppPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport EventBus from \"sap/ui/core/EventBus\";\nimport Container from \"sap/ushell/Container\";\nimport EventHub from \"sap/ushell/EventHub\";\nimport UserRecents from \"sap/ushell/services/UserRecents\";\nimport App from \"./App\";\nimport BaseAppPersPanel from \"./BaseAppPersPanel\";\nimport type { $BasePanelSettings } from \"./BasePanel\";\nimport Group from \"./Group\";\nimport { IActivity } from \"./interface/AppsInterface\";\nimport MenuItem from \"./MenuItem\";\nimport { FESRNavigationSource } from \"./utils/FESRUtil\";\n\n/**\n *\n * Provides the class for managing frequent apps.\n *\n * @extends sap.cux.home.BaseAppPersPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121.0\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.FrequentAppPanel\n */\n\nexport default class FrequentAppPanel extends BaseAppPersPanel {\n\tprivate oEventBus!: EventBus;\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tdefaultAggregation: \"apps\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Apps aggregation for Frequent apps\n\t\t\t */\n\t\t\tapps: { type: \"sap.cux.home.App\", singularName: \"app\", multiple: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\t/**\n\t * Constructor for a new frequent app panel.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $BasePanelSettings) {\n\t\tsuper(id, settings);\n\t\tthis.setSupported(false);\n\t}\n\n\tpublic init() {\n\t\tsuper.init();\n\t\tthis.setProperty(\"key\", \"frequentApps\");\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"frequentlyUsedTab\"));\n\t\tthis.setProperty(\"tooltip\", this._i18nBundle.getText(\"frequentlyUsedTabInfo\"));\n\t\tthis._attachUserActivityTracking();\n\t\tEventHub.on(\"userRecentsCleared\").do(() => {\n\t\t\tvoid this.refresh();\n\t\t});\n\n\t\tthis.oEventBus = EventBus.getInstance();\n\t\tthis.oEventBus.subscribe(\n\t\t\t\"appsChannel\",\n\t\t\t\"favAppColorChanged\",\n\t\t\t(channelId?: string, eventId?: string, data?) => {\n\t\t\t\tconst { item, color } = data as { item: App | Group; color: string };\n\t\t\t\t//update color of the app in most used apps\n\t\t\t\tthis._applyUngroupedTileColor(item, color);\n\t\t\t},\n\t\t\tthis\n\t\t);\n\t\tthis.additionalInfo = {\n\t\t\tfesrSource: FESRNavigationSource.FrequentlyUsed\n\t\t};\n\t}\n\n\t/**\n\t * Fetch frequent apps and set apps aggregation\n\t * @private\n\t */\n\tpublic async loadApps() {\n\t\tlet frequentVisualizations = await this._getFrequentVisualizations();\n\t\tthis.destroyAggregation(\"apps\", true);\n\t\tfrequentVisualizations = frequentVisualizations.map((visualization, index) => {\n\t\t\treturn {\n\t\t\t\t...visualization,\n\t\t\t\tmenuItems: this._getActions(visualization.addedInFavorites, index)\n\t\t\t};\n\t\t});\n\t\t//convert apps objects array to apps instances\n\t\tconst frequentApps = this.generateApps(frequentVisualizations);\n\t\tthis.setApps(frequentApps);\n\t}\n\n\t/**\n\t * Returns list of frequent apps\n\t * @private\n\t * @returns {object[]} - Array of frequent apps.\n\t */\n\tprivate async _getFrequentVisualizations() {\n\t\ttry {\n\t\t\tconst UserRecentsService = await Container.getServiceAsync<UserRecents>(\"UserRecents\");\n\t\t\tconst frequentActivities: IActivity[] = (await UserRecentsService?.getFrequentActivity()) || [];\n\t\t\t//convert activity to apps\n\t\t\tconst frequentVisualizations = await this.convertActivitiesToVisualizations(frequentActivities);\n\t\t\treturn frequentVisualizations;\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t\treturn [];\n\t\t}\n\t}\n\n\t/**\n\t * Returns list of actions available for selected app\n\t * @private\n\t * @param {boolean} isAppAddedInFavorite - true if app is already present in favorite, false otherwise.\n\t * @returns {sap.cux.home.MenuItem[]} - Array of list items.\n\t */\n\tprivate _getActions(isAppAddedInFavorite: boolean = false, index?: number) {\n\t\tconst action = [];\n\t\tif (!isAppAddedInFavorite) {\n\t\t\taction.push(\n\t\t\t\tnew MenuItem(`${this.getKey()}--addToFavorites--${index}`, {\n\t\t\t\t\ttitle: this._i18nBundle.getText(\"addToFavorites\"),\n\t\t\t\t\ticon: \"sap-icon://add-favorite\",\n\t\t\t\t\tpress: (event) => {\n\t\t\t\t\t\tvoid this._addAppToFavorites(event);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t);\n\t\t}\n\t\treturn action;\n\t}\n\n\t/**\n\t * Generates illustrated message for frequent apps panel.\n\t * @private\n\t * @override\n\t * @returns {sap.m.IllustratedMessage} Illustrated error message.\n\t */\n\tprotected generateIllustratedMessage() {\n\t\tconst illustratedMessage = super.generateIllustratedMessage();\n\t\t//override the default description\n\t\tillustratedMessage.setDescription(this._i18nBundle.getText(\"noFreqAppsDescription\"));\n\t\treturn illustratedMessage;\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,4JAAAC,GAAA,EAAAC,QAAA,EAAAC,SAAA,EAAAC,QAAA,EAAAC,kBAAA,EAAAC,UAAA,EAAAC,iBAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAkjBO,SAAAG,OAAgBC,IAAI,EAAEC,OAAO,EAAE;IACrC,IAAI;MACH,IAAIC,MAAM,GAAGF,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC,OAAMG,CAAC,EAAE;MACV,OAAOF,OAAO,CAACE,CAAC,CAAC;IAClB;IACA,IAAID,MAAM,IAAIA,MAAM,CAACE,IAAI,EAAE;MAC1B,OAAOF,MAAM,CAACE,IAAI,CAAC,KAAK,CAAC,EAAEH,OAAO,CAAC;IACpC;IACA,OAAOC,MAAM;EACd;EAAC,MAhjBMG,gBAAgB,GAAAV,sBAAA,CAAAH,kBAAA;EAAA,MAIhBc,QAAQ,GAAAX,sBAAA,CAAAF,UAAA;EAAA,MACNc,oBAAoB,GAAAb,iBAAA;EAE7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAdA,MAgBqBc,gBAAgB,GAASH,gBAAgB,CAAAI,MAAA;IAE7CC,QAAQ,EAAoB;MAC3CC,OAAO,EAAE,cAAc;MACvBC,kBAAkB,EAAE,MAAM;MAC1BC,YAAY,EAAE;QACb;AACH;AACA;QACGC,IAAI,EAAE;UAAEC,IAAI,EAAE,kBAAkB;UAAEC,YAAY,EAAE,KAAK;UAAEC,QAAQ,EAAE,IAAI;UAAEC,UAAU,EAAE;QAAS;MAC7F;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQC,WAAW,WAAAC,aAACC,EAAW,EAAEC,QAA6B,EAAE;MAC9DC,2CAAA,OAAMF,EAAE,EAAEC,QAAQ;MAClB,IAAI,CAACE,YAAY,CAAC,KAAK,CAAC;IACzB,CAAC;IAEMC,IAAI,WAAAC,MAAA,EAAG;MACbC,oCAAA;MACA,IAAI,CAACC,WAAW,CAAC,KAAK,EAAE,cAAc,CAAC;MACvC,IAAI,CAACA,WAAW,CAAC,OAAO,EAAE,IAAI,CAACC,WAAW,CAACC,OAAO,CAAC,mBAAmB,CAAC,CAAC;MACxE,IAAI,CAACF,WAAW,CAAC,SAAS,EAAE,IAAI,CAACC,WAAW,CAACC,OAAO,CAAC,uBAAuB,CAAC,CAAC;MAC9E,IAAI,CAACC,2BAA2B,CAAC,CAAC;MAClCxC,QAAQ,CAACyC,EAAE,CAAC,oBAAoB,CAAC,CAACC,EAAE,CAAC,MAAM;QAC1C,KAAK,IAAI,CAACC,OAAO,CAAC,CAAC;MACpB,CAAC,CAAC;MAEF,IAAI,CAACC,SAAS,GAAG9C,QAAQ,CAAC+C,WAAW,CAAC,CAAC;MACvC,IAAI,CAACD,SAAS,CAACE,SAAS,CACvB,aAAa,EACb,oBAAoB,EACpB,CAACC,SAAkB,EAAEC,OAAgB,EAAEC,IAAK,KAAK;QAChD,MAAM;UAAEC,IAAI;UAAEC;QAAM,CAAC,GAAGF,IAA4C;QACpE;QACA,IAAI,CAACG,wBAAwB,CAACF,IAAI,EAAEC,KAAK,CAAC;MAC3C,CAAC,EACD,IACD,CAAC;MACD,IAAI,CAACE,cAAc,GAAG;QACrBC,UAAU,EAAEtC,oBAAoB,CAACuC;MAClC,CAAC;IACF,CAAC;IAED;AACD;AACA;AACA;IACcC,QAAQ,WAAAC,UAAA;MAAA,IAAG;QAAA,MAAAC,KAAA,GACY,IAAI;QAAA,OAAAC,OAAA,CAAAC,OAAA,CAAJF,KAAA,CAAKG,0BAA0B,CAAC,CAAC,EAAAhD,IAAA,WAAhEiD,sBAAsB;UAC1BJ,KAAA,CAAKK,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;UACrCD,sBAAsB,GAAGA,sBAAsB,CAACE,GAAG,CAAC,CAACC,aAAa,EAAEC,KAAK,KAAK;YAC7E,OAAO;cACN,GAAGD,aAAa;cAChBE,SAAS,EAAET,KAAA,CAAKU,WAAW,CAACH,aAAa,CAACI,gBAAgB,EAAEH,KAAK;YAClE,CAAC;UACF,CAAC,CAAC;UACF;UACA,MAAMI,YAAY,GAAGZ,KAAA,CAAKa,YAAY,CAACT,sBAAsB,CAAC;UAC9DJ,KAAA,CAAKc,OAAO,CAACF,YAAY,CAAC;QAAC;MAC5B,CAAC,QAAA1D,CAAA;QAAA,OAAA+C,OAAA,CAAAc,MAAA,CAAA7D,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;IACeiD,0BAA0B,WAAAA,2BAAA;MAAA,IAAG;QAAA,MAAAa,MAAA,GAKJ,IAAI;QAAA,OAAAf,OAAA,CAAAC,OAAA,CAAApD,MAAA,aAJtC;UAAA,OAAAmD,OAAA,CAAAC,OAAA,CAC8B7D,SAAS,CAAC4E,eAAe,CAAc,aAAa,CAAC,EAAA9D,IAAA,WAAhF+D,kBAAkB;YAAA,OAAAjB,OAAA,CAAAC,OAAA,CACuBgB,kBAAkB,EAAEC,mBAAmB,CAAC,CAAC,EAAAhE,IAAA,WAAlFiE,kBAA+B;cACrC;cAAA,OAAAnB,OAAA,CAAAC,OAAA,CACqCc,MAAA,CAAKK,iCAAiC,CAACD,kBAAkB,CAAC;YAAA;UAAA;QAEhG,CAAC,YAAQE,KAAK,EAAE;UACfnF,GAAG,CAACmF,KAAK,CAACA,KAAe,CAAC;UAC1B,OAAO,EAAE;QACV,CAAC;MACF,CAAC,QAAApE,CAAA;QAAA,OAAA+C,OAAA,CAAAc,MAAA,CAAA7D,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;AACA;IACSwD,WAAW,WAAAA,YAACa,oBAA6B,GAAG,KAAK,EAAEf,KAAc,EAAE;MAC1E,MAAMgB,MAAM,GAAG,EAAE;MACjB,IAAI,CAACD,oBAAoB,EAAE;QAC1BC,MAAM,CAACC,IAAI,CACV,IAAIpE,QAAQ,CAAC,GAAG,IAAI,CAACqE,MAAM,CAAC,CAAC,qBAAqBlB,KAAK,EAAE,EAAE;UAC1DmB,KAAK,EAAE,IAAI,CAAC/C,WAAW,CAACC,OAAO,CAAC,gBAAgB,CAAC;UACjD+C,IAAI,EAAE,yBAAyB;UAC/BC,KAAK,EAAGC,KAAK,IAAK;YACjB,KAAK,IAAI,CAACC,kBAAkB,CAACD,KAAK,CAAC;UACpC;QACD,CAAC,CACF,CAAC;MACF;MACA,OAAON,MAAM;IACd,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACWQ,0BAA0B,WAAAC,4BAAA,EAAG;MACtC,MAAMC,kBAAkB,GAAAC,0DAAA,MAAqC;MAC7D;MACAD,kBAAkB,CAACE,cAAc,CAAC,IAAI,CAACxD,WAAW,CAACC,OAAO,CAAC,uBAAuB,CAAC,CAAC;MACpF,OAAOqD,kBAAkB;IAC1B;EAAC;EAAA,OAvHmB3E,gBAAgB;AAAA","ignoreList":[]}
@@ -15,6 +15,7 @@ import type { $BasePanelSettings } from "./BasePanel";
15
15
  import Group from "./Group";
16
16
  import { IActivity } from "./interface/AppsInterface";
17
17
  import MenuItem from "./MenuItem";
18
+ import { FESRNavigationSource } from "./utils/FESRUtil";
18
19
 
19
20
  /**
20
21
  *
@@ -77,6 +78,9 @@ export default class FrequentAppPanel extends BaseAppPersPanel {
77
78
  },
78
79
  this
79
80
  );
81
+ this.additionalInfo = {
82
+ fesrSource: FESRNavigationSource.FrequentlyUsed
83
+ };
80
84
  }
81
85
 
82
86
  /**
@@ -51,12 +51,12 @@ declare module "sap/cux/home/InsightsAdditionPanel" {
51
51
  */
52
52
  private _fetchAddCardDialogContent;
53
53
  /**
54
- * Retrieves the InsightsContainer instance from the parent layout.
54
+ * Retrieves the CardsContainer instance from the parent layout.
55
55
  *
56
56
  * @private
57
- * @returns {InsightsContainer | undefined} The InsightsContainer instance or undefined if not found.
57
+ * @returns {CardsContainer | undefined} The CardsContainer instance or undefined if not found.
58
58
  */
59
- private getInsightsContainer;
59
+ private getCardsContainer;
60
60
  /**
61
61
  * Checks if the Insights Addition Panel is supported.
62
62
  *
@@ -66,7 +66,7 @@ declare module "sap/cux/home/InsightsAdditionPanel" {
66
66
  */
67
67
  isSupported(): Promise<boolean>;
68
68
  /**
69
- * Retrieves the `CardsPanel` instance from the `InsightsContainer`.
69
+ * Retrieves the `CardsPanel` instance from the `CardsContainer`.
70
70
  *
71
71
  * @private
72
72
  * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.
@@ -1 +1 @@
1
- {"version":3,"file":"InsightsAdditionPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/InsightsAdditionPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,oCAAoC,CAAC;IAgBpD,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;IAS/D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,iBAAiB;QACnE,OAAO,CAAC,cAAc,CAAU;QAChC,OAAO,CAAC,kBAAkB,CAAuB;QACjD,OAAO,CAAC,gBAAgB,CAAW;QACnC,OAAO,CAAC,wBAAwB,CAAiB;QACjD;;;;;WAKG;QACI,IAAI;QAqBX;;;;WAIG;QACH,OAAO,CAAC,eAAe;QAIvB;;;;;;;;;WASG;gBACW,aAAa;QAgB3B;;;;;;WAMG;gBACW,0BAA0B;QASxC;;;;;WAKG;QACH,OAAO,CAAC,oBAAoB;QAK5B;;;;;;WAMG;QACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;QAqB5C;;;;;WAKG;QACH,OAAO,CAAC,gBAAgB;QAMxB;;;;;;;;;;WAUG;gBACW,eAAe;QAwB7B;;;;;WAKG;QACH,OAAO,CAAC,wBAAwB;KAIhC;CAEA"}
1
+ {"version":3,"file":"InsightsAdditionPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/InsightsAdditionPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,oCAAoC,CAAC;IAgBpD,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;IAW/D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,iBAAiB;QACnE,OAAO,CAAC,cAAc,CAAU;QAChC,OAAO,CAAC,kBAAkB,CAAuB;QACjD,OAAO,CAAC,gBAAgB,CAAW;QACnC,OAAO,CAAC,wBAAwB,CAAiB;QACjD;;;;;WAKG;QACI,IAAI;QAqBX;;;;WAIG;QACH,OAAO,CAAC,eAAe;QAIvB;;;;;;;;;WASG;gBACW,aAAa;QAgB3B;;;;;;WAMG;gBACW,0BAA0B;QASxC;;;;;WAKG;QACH,OAAO,CAAC,iBAAiB;QAKzB;;;;;;WAMG;QACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;QAqB5C;;;;;WAKG;QACH,OAAO,CAAC,gBAAgB;QAMxB;;;;;;;;;;WAUG;gBACW,eAAe;QAyB7B;;;;;WAKG;QACH,OAAO,CAAC,wBAAwB;KAIhC;CAEA"}
@@ -2,7 +2,7 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m/library", "sap/m/MessageBox", "sap/m/MessageToast", "sap/m/VBox", "./BaseSettingsPanel", "./CardsPanel", "./InsightsContainer", "./utils/Constants", "./utils/FeatureUtils", "./utils/FESRUtil"], function (Log, CardHelper, Button, sap_m_library, MessageBox, MessageToast, VBox, __BaseSettingsPanel, __CardsPanel, __InsightsContainer, ___utils_Constants, ___utils_FeatureUtils, ___utils_FESRUtil) {
5
+ sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m/library", "sap/m/MessageBox", "sap/m/MessageToast", "sap/m/VBox", "./BaseSettingsPanel", "./CardsContainer", "./CardsPanel", "./utils/Constants", "./utils/DataFormatUtils", "./utils/FeatureUtils", "./utils/FESRUtil", "./utils/PXFeedback"], function (Log, CardHelper, Button, sap_m_library, MessageBox, MessageToast, VBox, __BaseSettingsPanel, __CardsContainer, __CardsPanel, ___utils_Constants, ___utils_DataFormatUtils, ___utils_FeatureUtils, ___utils_FESRUtil, ___utils_PXFeedback) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
@@ -33,14 +33,16 @@ sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m
33
33
  }
34
34
  const ButtonType = sap_m_library["ButtonType"];
35
35
  const BaseSettingsPanel = _interopRequireDefault(__BaseSettingsPanel);
36
+ const CardsContainer = _interopRequireDefault(__CardsContainer);
36
37
  const CardsPanel = _interopRequireDefault(__CardsPanel);
37
- const InsightsContainer = _interopRequireDefault(__InsightsContainer);
38
38
  const CONTENT_ADDITION_PANEL_TYPES = ___utils_Constants["CONTENT_ADDITION_PANEL_TYPES"];
39
39
  const FEATURE_TOGGLES = ___utils_Constants["FEATURE_TOGGLES"];
40
40
  const FESR_IDS = ___utils_Constants["FESR_IDS"];
41
+ const recycleId = ___utils_DataFormatUtils["recycleId"];
41
42
  const isNavigationSupportedForFeature = ___utils_FeatureUtils["isNavigationSupportedForFeature"];
42
43
  const addFESRSemanticStepName = ___utils_FESRUtil["addFESRSemanticStepName"];
43
44
  const FESR_EVENTS = ___utils_FESRUtil["FESR_EVENTS"];
45
+ const triggerPXIntegration = ___utils_PXFeedback["triggerPXIntegration"];
44
46
  /**
45
47
  *
46
48
  * Class for Apps Addition Panel in MyHome.
@@ -69,7 +71,7 @@ sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m
69
71
  this.setProperty("title", this._i18nBundle.getText("insightsCards"));
70
72
 
71
73
  //setup actions
72
- this.addCardsButton = new Button(`${this.getId()}-add-cards-btn`, {
74
+ this.addCardsButton = new Button(recycleId(`${this.getId()}-add-cards-btn`), {
73
75
  text: this._i18nBundle.getText("addFromInsightsDialogBtn"),
74
76
  type: ButtonType.Emphasized,
75
77
  enabled: false,
@@ -144,14 +146,14 @@ sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m
144
146
  }
145
147
  },
146
148
  /**
147
- * Retrieves the InsightsContainer instance from the parent layout.
149
+ * Retrieves the CardsContainer instance from the parent layout.
148
150
  *
149
151
  * @private
150
- * @returns {InsightsContainer | undefined} The InsightsContainer instance or undefined if not found.
152
+ * @returns {CardsContainer | undefined} The CardsContainer instance or undefined if not found.
151
153
  */
152
- getInsightsContainer: function _getInsightsContainer() {
154
+ getCardsContainer: function _getCardsContainer() {
153
155
  const layout = this.getParent()?.getParent();
154
- return layout.getContent().find(container => container instanceof InsightsContainer);
156
+ return layout.getContent().find(container => container instanceof CardsContainer);
155
157
  },
156
158
  /**
157
159
  * Checks if the Insights Addition Panel is supported.
@@ -193,13 +195,13 @@ sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m
193
195
  }
194
196
  },
195
197
  /**
196
- * Retrieves the `CardsPanel` instance from the `InsightsContainer`.
198
+ * Retrieves the `CardsPanel` instance from the `CardsContainer`.
197
199
  *
198
200
  * @private
199
201
  * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.
200
202
  */
201
203
  _fetchCardsPanel: function _fetchCardsPanel() {
202
- return this.getInsightsContainer()?.getContent().find(panel => panel instanceof CardsPanel);
204
+ return this.getCardsContainer()?.getContent().find(panel => panel instanceof CardsPanel);
203
205
  },
204
206
  /**
205
207
  * Handles the logic for creating and adding a new insight card to cards Panel.
@@ -215,6 +217,7 @@ sap.ui.define(["sap/base/Log", "sap/insights/CardHelper", "sap/m/Button", "sap/m
215
217
  onPressAddCards: function _onPressAddCards() {
216
218
  try {
217
219
  const _this4 = this;
220
+ triggerPXIntegration("addCardsButton");
218
221
  const addContentDialog = _this4.getParent();
219
222
  const _temp4 = _finallyRethrows(function () {
220
223
  return _catch(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"InsightsAdditionPanel.js","names":["sap","ui","define","Log","CardHelper","Button","sap_m_library","MessageBox","MessageToast","VBox","__BaseSettingsPanel","__CardsPanel","__InsightsContainer","___utils_Constants","___utils_FeatureUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BackgroundDesign","_finallyRethrows","finalizer","bind","ButtonType","BaseSettingsPanel","CardsPanel","InsightsContainer","CONTENT_ADDITION_PANEL_TYPES","FEATURE_TOGGLES","FESR_IDS","isNavigationSupportedForFeature","addFESRSemanticStepName","FESR_EVENTS","InsightsAdditionPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","AI_INSIGHTS_CARDS","_i18nBundle","getText","addCardsButton","getId","text","type","Emphasized","enabled","press","onPressAddCards","PRESS","ADD_AI_CARD","addActionButton","_setupContent","attachEvent","resetAddCardInnerContent","enableAddButton","_enableAddButton","action","setEnabled","_this","_temp","Promise","resolve","_fetchAddCardDialogContent","dialogContent","wrapperVBox","items","backgroundDesign","Solid","height","addAggregation","error","message","reject","_this2","getServiceAsync","_getServiceAsync","cardHelperInstance","fetchAddCardInnerContent","event","_latestGeneratedManifest","getParameters","isValidManifest","Object","keys","length","getInsightsContainer","_getInsightsContainer","layout","getParent","getContent","find","container","isSupported","_isSupported","_this3","_temp3","isPanelSupported","removeActionButton","contentAdditionDialog","removePanel","updateActionButtons","insightsCardIntent","target","semanticObject","_temp2","undefined","AI_GENERATED_CARD","_isNavigationSupporte","_fetchCardsPanel","panel","_onPressAddCards","_this4","addContentDialog","_temp4","setBusy","_createCard","createdCardResponse","cardTitle","header","title","show","close","visible","information","styleClass","cardsPanel","refreshData","_wasThrown","_result","_resetAddCardInnerContent"],"sources":["InsightsAdditionPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport CardHelper from \"sap/insights/CardHelper\";\nimport Button from \"sap/m/Button\";\nimport { BackgroundDesign, ButtonType } from \"sap/m/library\";\nimport MessageBox from \"sap/m/MessageBox\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport VBox from \"sap/m/VBox\";\nimport Control from \"sap/ui/core/Control\";\nimport { Target } from \"sap/ushell/services/Navigation\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport CardsPanel from \"./CardsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport InsightsContainer from \"./InsightsContainer\";\nimport { ICardHelper, ICardHelperInstance, ICardManifest } from \"./interface/CardsInterface\";\nimport { CONTENT_ADDITION_PANEL_TYPES, FEATURE_TOGGLES, FESR_IDS } from \"./utils/Constants\";\nimport { isNavigationSupportedForFeature } from \"./utils/FeatureUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\n/**\n *\n * Class for Apps Addition Panel in MyHome.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.136\n * @private\n *\n * @alias sap.cux.home.InsightsAdditionPanel\n */\nexport default class InsightsAdditionPanel extends BaseSettingsPanel {\n\tprivate addCardsButton!: Button;\n\tprivate cardHelperInstance!: ICardHelperInstance;\n\tprivate isPanelSupported!: boolean;\n\tprivate _latestGeneratedManifest!: ICardManifest;\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init() {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", CONTENT_ADDITION_PANEL_TYPES.AI_INSIGHTS_CARDS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsCards\"));\n\n\t\t//setup actions\n\t\tthis.addCardsButton = new Button(`${this.getId()}-add-cards-btn`, {\n\t\t\ttext: this._i18nBundle.getText(\"addFromInsightsDialogBtn\"),\n\t\t\ttype: ButtonType.Emphasized,\n\t\t\tenabled: false,\n\t\t\tpress: this.onPressAddCards.bind(this)\n\t\t});\n\t\taddFESRSemanticStepName(this.addCardsButton, FESR_EVENTS.PRESS, FESR_IDS.ADD_AI_CARD);\n\t\tthis.addActionButton(this.addCardsButton);\n\t\t//setup content\n\t\tvoid this._setupContent();\n\t\tthis.attachEvent(\"onDialogClose\", this.resetAddCardInnerContent.bind(this));\n\t}\n\n\t/**\n\t * Enables or disables the \"Add Cards\" button.\n\t *\n\t * @param {boolean} action - If true, the button is enabled; if false, it is disabled.\n\t */\n\tprivate enableAddButton(action: boolean) {\n\t\tthis.addCardsButton.setEnabled(action);\n\t}\n\n\t/**\n\t * It sets up the content for the \"Insights card\" dialog.\n\t * It fetches the inner dialog content for adding a card.\n\t * Adds the VBox to the panel's content aggregation.\n\t *\n\t * This also enables the \"Add\" button once content is fetched.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when setup is complete.\n\t */\n\tprivate async _setupContent(): Promise<void> {\n\t\ttry {\n\t\t\tconst dialogContent = await this._fetchAddCardDialogContent();\n\t\t\tif (dialogContent) {\n\t\t\t\tconst wrapperVBox = new VBox(`${this.getId()}-wrapperVBox`, {\n\t\t\t\t\titems: dialogContent,\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Solid,\n\t\t\t\t\theight: \"100%\"\n\t\t\t\t});\n\t\t\t\tthis.addAggregation(\"content\", wrapperVBox);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t}\n\t}\n\n\t/**\n\t * Fetches the dialog content for adding a new card and sets up the callback\n\t * to handle the card generation event, storing the generated manifest and enabling the add button.\n\t *\n\t * @private\n\t * @returns {Promise<Control[]>} A promise that resolves with an array of dialog content controls.\n\t */\n\tprivate async _fetchAddCardDialogContent(): Promise<Control[]> {\n\t\tthis.cardHelperInstance = await (CardHelper as ICardHelper).getServiceAsync();\n\t\treturn this.cardHelperInstance.fetchAddCardInnerContent((event) => {\n\t\t\tthis._latestGeneratedManifest = event.getParameters();\n\t\t\tconst isValidManifest = Object.keys(this._latestGeneratedManifest).length > 1;\n\t\t\tthis.enableAddButton(isValidManifest);\n\t\t});\n\t}\n\n\t/**\n\t * Retrieves the InsightsContainer instance from the parent layout.\n\t *\n\t * @private\n\t * @returns {InsightsContainer | undefined} The InsightsContainer instance or undefined if not found.\n\t */\n\tprivate getInsightsContainer(): InsightsContainer | undefined {\n\t\tconst layout = this.getParent()?.getParent() as BaseLayout;\n\t\treturn layout.getContent().find((container) => container instanceof InsightsContainer);\n\t}\n\n\t/**\n\t * Checks if the Insights Addition Panel is supported.\n\t *\n\t * @public\n\t * @async\n\t * @returns {Promise<boolean>} A promise that resolves to true if supported.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst insightsCardIntent: Target = {\n\t\t\ttarget: {\n\t\t\t\tsemanticObject: \"IntelligentPrompt\",\n\t\t\t\taction: \"personalize\"\n\t\t\t}\n\t\t};\n\t\tif (this.isPanelSupported === undefined) {\n\t\t\tthis.isPanelSupported = false;\n\t\t\tthis.isPanelSupported = await isNavigationSupportedForFeature(FEATURE_TOGGLES.AI_GENERATED_CARD, insightsCardIntent);\n\t\t}\n\t\t//remove panel if it's not supported\n\t\tif (!this.isPanelSupported) {\n\t\t\tthis.removeActionButton(this.addCardsButton);\n\t\t\tconst contentAdditionDialog = this.getParent() as ContentAdditionDialog;\n\t\t\tcontentAdditionDialog.removePanel(this);\n\t\t\tcontentAdditionDialog.updateActionButtons();\n\t\t}\n\t\treturn this.isPanelSupported;\n\t}\n\n\t/**\n\t * Retrieves the `CardsPanel` instance from the `InsightsContainer`.\n\t *\n\t * @private\n\t * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.\n\t */\n\tprivate _fetchCardsPanel(): CardsPanel | undefined {\n\t\treturn this.getInsightsContainer()\n\t\t\t?.getContent()\n\t\t\t.find((panel): panel is CardsPanel => panel instanceof CardsPanel);\n\t}\n\n\t/**\n\t * Handles the logic for creating and adding a new insight card to cards Panel.\n\t *\n\t * - Sets the dialog to busy while the card creation is in progress.\n\t * - It adds a new card using the latest generated manifest.\n\t * - On success, shows a message toast and closes the dialog.\n\t * - Refreshes the insights cards panel data.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when the card creation flow completes.\n\t */\n\tprivate async onPressAddCards() {\n\t\tconst addContentDialog = this.getParent() as ContentAdditionDialog;\n\t\ttry {\n\t\t\taddContentDialog.setBusy(true);\n\n\t\t\tconst createdCardResponse = await this.cardHelperInstance._createCard(this._latestGeneratedManifest);\n\t\t\tconst cardTitle = createdCardResponse[\"sap.card\"]?.header?.title;\n\t\t\tMessageToast.show(this._i18nBundle.getText(\"Card_Created\", [cardTitle]) as string);\n\t\t\taddContentDialog.close();\n\t\t\tif (!createdCardResponse?.[\"sap.insights\"]?.visible) {\n\t\t\t\tMessageBox.information(this._i18nBundle.getText(\"INT_CARD_LIMIT_MESSAGEBOX\") as string, {\n\t\t\t\t\tstyleClass: \"msgBoxAlign\"\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst cardsPanel = this._fetchCardsPanel();\n\t\t\tawait cardsPanel?.refreshData();\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t} finally {\n\t\t\taddContentDialog.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Resets the internal content related to card addition.\n\t * Disables the \"Add\" button.\n\t *\n\t * @private\n\t */\n\tprivate resetAddCardInnerContent() {\n\t\tthis.cardHelperInstance?.resetAddCardInnerContent();\n\t\tthis.enableAddButton(false);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"InsightsAdditionPanel.js","names":["sap","ui","define","Log","CardHelper","Button","sap_m_library","MessageBox","MessageToast","VBox","__BaseSettingsPanel","__CardsContainer","__CardsPanel","___utils_Constants","___utils_DataFormatUtils","___utils_FeatureUtils","___utils_FESRUtil","___utils_PXFeedback","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BackgroundDesign","_finallyRethrows","finalizer","bind","ButtonType","BaseSettingsPanel","CardsContainer","CardsPanel","CONTENT_ADDITION_PANEL_TYPES","FEATURE_TOGGLES","FESR_IDS","recycleId","isNavigationSupportedForFeature","addFESRSemanticStepName","FESR_EVENTS","triggerPXIntegration","InsightsAdditionPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","AI_INSIGHTS_CARDS","_i18nBundle","getText","addCardsButton","getId","text","type","Emphasized","enabled","press","onPressAddCards","PRESS","ADD_AI_CARD","addActionButton","_setupContent","attachEvent","resetAddCardInnerContent","enableAddButton","_enableAddButton","action","setEnabled","_this","_temp","Promise","resolve","_fetchAddCardDialogContent","dialogContent","wrapperVBox","items","backgroundDesign","Solid","height","addAggregation","error","message","reject","_this2","getServiceAsync","_getServiceAsync","cardHelperInstance","fetchAddCardInnerContent","event","_latestGeneratedManifest","getParameters","isValidManifest","Object","keys","length","getCardsContainer","_getCardsContainer","layout","getParent","getContent","find","container","isSupported","_isSupported","_this3","_temp3","isPanelSupported","removeActionButton","contentAdditionDialog","removePanel","updateActionButtons","insightsCardIntent","target","semanticObject","_temp2","undefined","AI_GENERATED_CARD","_isNavigationSupporte","_fetchCardsPanel","panel","_onPressAddCards","_this4","addContentDialog","_temp4","setBusy","_createCard","createdCardResponse","cardTitle","header","title","show","close","visible","information","styleClass","cardsPanel","refreshData","_wasThrown","_result","_resetAddCardInnerContent"],"sources":["InsightsAdditionPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport CardHelper from \"sap/insights/CardHelper\";\nimport Button from \"sap/m/Button\";\nimport { BackgroundDesign, ButtonType } from \"sap/m/library\";\nimport MessageBox from \"sap/m/MessageBox\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport VBox from \"sap/m/VBox\";\nimport Control from \"sap/ui/core/Control\";\nimport { Target } from \"sap/ushell/services/Navigation\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport CardsContainer from \"./CardsContainer\";\nimport CardsPanel from \"./CardsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport { ICardHelper, ICardHelperInstance, ICardManifest } from \"./interface/CardsInterface\";\nimport { CONTENT_ADDITION_PANEL_TYPES, FEATURE_TOGGLES, FESR_IDS } from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { isNavigationSupportedForFeature } from \"./utils/FeatureUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\nimport { triggerPXIntegration } from \"./utils/PXFeedback\";\n\n/**\n *\n * Class for Apps Addition Panel in MyHome.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.136\n * @private\n *\n * @alias sap.cux.home.InsightsAdditionPanel\n */\nexport default class InsightsAdditionPanel extends BaseSettingsPanel {\n\tprivate addCardsButton!: Button;\n\tprivate cardHelperInstance!: ICardHelperInstance;\n\tprivate isPanelSupported!: boolean;\n\tprivate _latestGeneratedManifest!: ICardManifest;\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init() {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", CONTENT_ADDITION_PANEL_TYPES.AI_INSIGHTS_CARDS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsCards\"));\n\n\t\t//setup actions\n\t\tthis.addCardsButton = new Button(recycleId(`${this.getId()}-add-cards-btn`), {\n\t\t\ttext: this._i18nBundle.getText(\"addFromInsightsDialogBtn\"),\n\t\t\ttype: ButtonType.Emphasized,\n\t\t\tenabled: false,\n\t\t\tpress: this.onPressAddCards.bind(this)\n\t\t});\n\t\taddFESRSemanticStepName(this.addCardsButton, FESR_EVENTS.PRESS, FESR_IDS.ADD_AI_CARD);\n\t\tthis.addActionButton(this.addCardsButton);\n\t\t//setup content\n\t\tvoid this._setupContent();\n\t\tthis.attachEvent(\"onDialogClose\", this.resetAddCardInnerContent.bind(this));\n\t}\n\n\t/**\n\t * Enables or disables the \"Add Cards\" button.\n\t *\n\t * @param {boolean} action - If true, the button is enabled; if false, it is disabled.\n\t */\n\tprivate enableAddButton(action: boolean) {\n\t\tthis.addCardsButton.setEnabled(action);\n\t}\n\n\t/**\n\t * It sets up the content for the \"Insights card\" dialog.\n\t * It fetches the inner dialog content for adding a card.\n\t * Adds the VBox to the panel's content aggregation.\n\t *\n\t * This also enables the \"Add\" button once content is fetched.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when setup is complete.\n\t */\n\tprivate async _setupContent(): Promise<void> {\n\t\ttry {\n\t\t\tconst dialogContent = await this._fetchAddCardDialogContent();\n\t\t\tif (dialogContent) {\n\t\t\t\tconst wrapperVBox = new VBox(`${this.getId()}-wrapperVBox`, {\n\t\t\t\t\titems: dialogContent,\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Solid,\n\t\t\t\t\theight: \"100%\"\n\t\t\t\t});\n\t\t\t\tthis.addAggregation(\"content\", wrapperVBox);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t}\n\t}\n\n\t/**\n\t * Fetches the dialog content for adding a new card and sets up the callback\n\t * to handle the card generation event, storing the generated manifest and enabling the add button.\n\t *\n\t * @private\n\t * @returns {Promise<Control[]>} A promise that resolves with an array of dialog content controls.\n\t */\n\tprivate async _fetchAddCardDialogContent(): Promise<Control[]> {\n\t\tthis.cardHelperInstance = await (CardHelper as ICardHelper).getServiceAsync();\n\t\treturn this.cardHelperInstance.fetchAddCardInnerContent((event) => {\n\t\t\tthis._latestGeneratedManifest = event.getParameters();\n\t\t\tconst isValidManifest = Object.keys(this._latestGeneratedManifest).length > 1;\n\t\t\tthis.enableAddButton(isValidManifest);\n\t\t});\n\t}\n\n\t/**\n\t * Retrieves the CardsContainer instance from the parent layout.\n\t *\n\t * @private\n\t * @returns {CardsContainer | undefined} The CardsContainer instance or undefined if not found.\n\t */\n\tprivate getCardsContainer(): CardsContainer | undefined {\n\t\tconst layout = this.getParent()?.getParent() as BaseLayout;\n\t\treturn layout.getContent().find((container) => container instanceof CardsContainer);\n\t}\n\n\t/**\n\t * Checks if the Insights Addition Panel is supported.\n\t *\n\t * @public\n\t * @async\n\t * @returns {Promise<boolean>} A promise that resolves to true if supported.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst insightsCardIntent: Target = {\n\t\t\ttarget: {\n\t\t\t\tsemanticObject: \"IntelligentPrompt\",\n\t\t\t\taction: \"personalize\"\n\t\t\t}\n\t\t};\n\t\tif (this.isPanelSupported === undefined) {\n\t\t\tthis.isPanelSupported = false;\n\t\t\tthis.isPanelSupported = await isNavigationSupportedForFeature(FEATURE_TOGGLES.AI_GENERATED_CARD, insightsCardIntent);\n\t\t}\n\t\t//remove panel if it's not supported\n\t\tif (!this.isPanelSupported) {\n\t\t\tthis.removeActionButton(this.addCardsButton);\n\t\t\tconst contentAdditionDialog = this.getParent() as ContentAdditionDialog;\n\t\t\tcontentAdditionDialog.removePanel(this);\n\t\t\tcontentAdditionDialog.updateActionButtons();\n\t\t}\n\t\treturn this.isPanelSupported;\n\t}\n\n\t/**\n\t * Retrieves the `CardsPanel` instance from the `CardsContainer`.\n\t *\n\t * @private\n\t * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.\n\t */\n\tprivate _fetchCardsPanel(): CardsPanel | undefined {\n\t\treturn this.getCardsContainer()\n\t\t\t?.getContent()\n\t\t\t.find((panel): panel is CardsPanel => panel instanceof CardsPanel);\n\t}\n\n\t/**\n\t * Handles the logic for creating and adding a new insight card to cards Panel.\n\t *\n\t * - Sets the dialog to busy while the card creation is in progress.\n\t * - It adds a new card using the latest generated manifest.\n\t * - On success, shows a message toast and closes the dialog.\n\t * - Refreshes the insights cards panel data.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when the card creation flow completes.\n\t */\n\tprivate async onPressAddCards() {\n\t\ttriggerPXIntegration(\"addCardsButton\");\n\t\tconst addContentDialog = this.getParent() as ContentAdditionDialog;\n\t\ttry {\n\t\t\taddContentDialog.setBusy(true);\n\n\t\t\tconst createdCardResponse = await this.cardHelperInstance._createCard(this._latestGeneratedManifest);\n\t\t\tconst cardTitle = createdCardResponse[\"sap.card\"]?.header?.title;\n\t\t\tMessageToast.show(this._i18nBundle.getText(\"Card_Created\", [cardTitle]) as string);\n\t\t\taddContentDialog.close();\n\t\t\tif (!createdCardResponse?.[\"sap.insights\"]?.visible) {\n\t\t\t\tMessageBox.information(this._i18nBundle.getText(\"INT_CARD_LIMIT_MESSAGEBOX\") as string, {\n\t\t\t\t\tstyleClass: \"msgBoxAlign\"\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst cardsPanel = this._fetchCardsPanel();\n\t\t\tawait cardsPanel?.refreshData();\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t} finally {\n\t\t\taddContentDialog.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Resets the internal content related to card addition.\n\t * Disables the \"Add\" button.\n\t *\n\t * @private\n\t */\n\tprivate resetAddCardInnerContent() {\n\t\tthis.cardHelperInstance?.resetAddCardInnerContent();\n\t\tthis.enableAddButton(false);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -14,13 +14,15 @@ import Control from "sap/ui/core/Control";
14
14
  import { Target } from "sap/ushell/services/Navigation";
15
15
  import BaseLayout from "./BaseLayout";
16
16
  import BaseSettingsPanel from "./BaseSettingsPanel";
17
+ import CardsContainer from "./CardsContainer";
17
18
  import CardsPanel from "./CardsPanel";
18
19
  import ContentAdditionDialog from "./ContentAdditionDialog";
19
- import InsightsContainer from "./InsightsContainer";
20
20
  import { ICardHelper, ICardHelperInstance, ICardManifest } from "./interface/CardsInterface";
21
21
  import { CONTENT_ADDITION_PANEL_TYPES, FEATURE_TOGGLES, FESR_IDS } from "./utils/Constants";
22
+ import { recycleId } from "./utils/DataFormatUtils";
22
23
  import { isNavigationSupportedForFeature } from "./utils/FeatureUtils";
23
24
  import { addFESRSemanticStepName, FESR_EVENTS } from "./utils/FESRUtil";
25
+ import { triggerPXIntegration } from "./utils/PXFeedback";
24
26
 
25
27
  /**
26
28
  *
@@ -54,7 +56,7 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
54
56
  this.setProperty("title", this._i18nBundle.getText("insightsCards"));
55
57
 
56
58
  //setup actions
57
- this.addCardsButton = new Button(`${this.getId()}-add-cards-btn`, {
59
+ this.addCardsButton = new Button(recycleId(`${this.getId()}-add-cards-btn`), {
58
60
  text: this._i18nBundle.getText("addFromInsightsDialogBtn"),
59
61
  type: ButtonType.Emphasized,
60
62
  enabled: false,
@@ -119,14 +121,14 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
119
121
  }
120
122
 
121
123
  /**
122
- * Retrieves the InsightsContainer instance from the parent layout.
124
+ * Retrieves the CardsContainer instance from the parent layout.
123
125
  *
124
126
  * @private
125
- * @returns {InsightsContainer | undefined} The InsightsContainer instance or undefined if not found.
127
+ * @returns {CardsContainer | undefined} The CardsContainer instance or undefined if not found.
126
128
  */
127
- private getInsightsContainer(): InsightsContainer | undefined {
129
+ private getCardsContainer(): CardsContainer | undefined {
128
130
  const layout = this.getParent()?.getParent() as BaseLayout;
129
- return layout.getContent().find((container) => container instanceof InsightsContainer);
131
+ return layout.getContent().find((container) => container instanceof CardsContainer);
130
132
  }
131
133
 
132
134
  /**
@@ -158,13 +160,13 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
158
160
  }
159
161
 
160
162
  /**
161
- * Retrieves the `CardsPanel` instance from the `InsightsContainer`.
163
+ * Retrieves the `CardsPanel` instance from the `CardsContainer`.
162
164
  *
163
165
  * @private
164
166
  * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.
165
167
  */
166
168
  private _fetchCardsPanel(): CardsPanel | undefined {
167
- return this.getInsightsContainer()
169
+ return this.getCardsContainer()
168
170
  ?.getContent()
169
171
  .find((panel): panel is CardsPanel => panel instanceof CardsPanel);
170
172
  }
@@ -181,6 +183,7 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
181
183
  * @returns {Promise<void>} A promise that resolves when the card creation flow completes.
182
184
  */
183
185
  private async onPressAddCards() {
186
+ triggerPXIntegration("addCardsButton");
184
187
  const addContentDialog = this.getParent() as ContentAdditionDialog;
185
188
  try {
186
189
  addContentDialog.setBusy(true);
@@ -303,7 +303,7 @@ sap.ui.define(["sap/base/Log", "sap/m/Button", "sap/m/Column", "sap/m/ColumnList
303
303
  customTextOn: " ",
304
304
  customTextOff: " ",
305
305
  tooltip: insightsApp.visualization?.displayFormatHint === DisplayFormat.Standard ? this._i18nBundle.getText("ConvertToWideTile") : this._i18nBundle.getText("ConvertToTile")
306
- })]
306
+ }).addStyleClass("sapUiTinyMarginBeginEnd")]
307
307
  });
308
308
  }
309
309
  const deleteBtn = new Button({