@sapui5/sap.cux.home 1.139.0 → 1.140.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 (295) hide show
  1. package/package.json +1 -1
  2. package/src/sap/cux/home/.library +1 -1
  3. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts +7 -0
  4. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
  5. package/src/sap/cux/home/AdvancedSettingsPanel.js +113 -64
  6. package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
  7. package/src/sap/cux/home/AdvancedSettingsPanel.ts +47 -15
  8. package/src/sap/cux/home/App.d.ts +2 -2
  9. package/src/sap/cux/home/App.js +2 -2
  10. package/src/sap/cux/home/App.js.map +1 -1
  11. package/src/sap/cux/home/App.ts +2 -2
  12. package/src/sap/cux/home/AppsContainer.d.ts +2 -2
  13. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  14. package/src/sap/cux/home/AppsContainer.js +3 -4
  15. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  16. package/src/sap/cux/home/AppsContainer.ts +3 -4
  17. package/src/sap/cux/home/BaseApp.d.ts +2 -2
  18. package/src/sap/cux/home/BaseApp.js +2 -2
  19. package/src/sap/cux/home/BaseApp.js.map +1 -1
  20. package/src/sap/cux/home/BaseApp.ts +2 -2
  21. package/src/sap/cux/home/BaseAppPanel.d.ts +10 -0
  22. package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
  23. package/src/sap/cux/home/BaseAppPanel.js +21 -2
  24. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  25. package/src/sap/cux/home/BaseAppPanel.ts +15 -2
  26. package/src/sap/cux/home/BaseContainer.d.ts +10 -27
  27. package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
  28. package/src/sap/cux/home/BaseContainer.gen.d.ts +61 -0
  29. package/src/sap/cux/home/BaseContainer.js +39 -71
  30. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  31. package/src/sap/cux/home/BaseContainer.ts +33 -77
  32. package/src/sap/cux/home/BaseContainerRenderer.d.ts +2 -0
  33. package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
  34. package/src/sap/cux/home/BaseContainerRenderer.js +31 -3
  35. package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
  36. package/src/sap/cux/home/BaseContainerRenderer.ts +39 -2
  37. package/src/sap/cux/home/BaseLayout.d.ts +2 -2
  38. package/src/sap/cux/home/BaseLayout.d.ts.map +1 -1
  39. package/src/sap/cux/home/BaseLayout.js +5 -4
  40. package/src/sap/cux/home/BaseLayout.js.map +1 -1
  41. package/src/sap/cux/home/BaseLayout.ts +5 -4
  42. package/src/sap/cux/home/BaseNewsItem.d.ts +2 -2
  43. package/src/sap/cux/home/BaseNewsItem.js +2 -2
  44. package/src/sap/cux/home/BaseNewsItem.js.map +1 -1
  45. package/src/sap/cux/home/BaseNewsItem.ts +2 -2
  46. package/src/sap/cux/home/BaseNewsPanel.d.ts +4 -3
  47. package/src/sap/cux/home/BaseNewsPanel.d.ts.map +1 -1
  48. package/src/sap/cux/home/BaseNewsPanel.js +14 -3
  49. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  50. package/src/sap/cux/home/BaseNewsPanel.ts +10 -4
  51. package/src/sap/cux/home/BasePagePanel.d.ts +2 -2
  52. package/src/sap/cux/home/BasePagePanel.d.ts.map +1 -1
  53. package/src/sap/cux/home/BasePagePanel.js +10 -2
  54. package/src/sap/cux/home/BasePagePanel.js.map +1 -1
  55. package/src/sap/cux/home/BasePagePanel.ts +6 -2
  56. package/src/sap/cux/home/BasePanel.d.ts +2 -21
  57. package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
  58. package/src/sap/cux/home/BasePanel.gen.d.ts +109 -0
  59. package/src/sap/cux/home/BasePanel.js +15 -31
  60. package/src/sap/cux/home/BasePanel.js.map +1 -1
  61. package/src/sap/cux/home/BasePanel.ts +11 -34
  62. package/src/sap/cux/home/BaseSettingsDialog.d.ts +2 -2
  63. package/src/sap/cux/home/BaseSettingsDialog.js +2 -2
  64. package/src/sap/cux/home/BaseSettingsDialog.js.map +1 -1
  65. package/src/sap/cux/home/BaseSettingsDialog.ts +2 -2
  66. package/src/sap/cux/home/BaseSettingsPanel.d.ts +2 -2
  67. package/src/sap/cux/home/BaseSettingsPanel.js +2 -2
  68. package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
  69. package/src/sap/cux/home/BaseSettingsPanel.ts +2 -2
  70. package/src/sap/cux/home/CardsPanel.d.ts +2 -2
  71. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  72. package/src/sap/cux/home/CardsPanel.js +13 -5
  73. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  74. package/src/sap/cux/home/CardsPanel.ts +9 -5
  75. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  76. package/src/sap/cux/home/ContentAdditionDialog.js +0 -1
  77. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  78. package/src/sap/cux/home/ContentAdditionDialog.ts +0 -1
  79. package/src/sap/cux/home/ErrorPanel.d.ts +2 -2
  80. package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
  81. package/src/sap/cux/home/ErrorPanel.js +13 -3
  82. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  83. package/src/sap/cux/home/ErrorPanel.ts +9 -3
  84. package/src/sap/cux/home/FavAppPanel.d.ts +2 -2
  85. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  86. package/src/sap/cux/home/FavAppPanel.js +7 -6
  87. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  88. package/src/sap/cux/home/FavAppPanel.ts +10 -9
  89. package/src/sap/cux/home/FrequentAppPanel.d.ts +2 -2
  90. package/src/sap/cux/home/FrequentAppPanel.js +2 -2
  91. package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
  92. package/src/sap/cux/home/FrequentAppPanel.ts +2 -2
  93. package/src/sap/cux/home/Group.d.ts +2 -2
  94. package/src/sap/cux/home/Group.js +2 -2
  95. package/src/sap/cux/home/Group.js.map +1 -1
  96. package/src/sap/cux/home/Group.ts +2 -2
  97. package/src/sap/cux/home/IToDoPanel.d.ts +2 -2
  98. package/src/sap/cux/home/IToDoPanel.js.map +1 -1
  99. package/src/sap/cux/home/IToDoPanel.ts +2 -2
  100. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  101. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  102. package/src/sap/cux/home/InsightsAdditionPanel.ts +3 -1
  103. package/src/sap/cux/home/InsightsContainer.d.ts +4 -4
  104. package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
  105. package/src/sap/cux/home/InsightsContainer.js +6 -11
  106. package/src/sap/cux/home/InsightsContainer.js.map +1 -1
  107. package/src/sap/cux/home/InsightsContainer.ts +6 -11
  108. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  109. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +2 -2
  110. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  111. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +2 -3
  112. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
  113. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +4 -4
  114. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  115. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +6 -4
  116. package/src/sap/cux/home/KeyUserSettingsDialog.d.ts.map +1 -1
  117. package/src/sap/cux/home/KeyUserSettingsDialog.js +18 -12
  118. package/src/sap/cux/home/KeyUserSettingsDialog.js.map +1 -1
  119. package/src/sap/cux/home/KeyUserSettingsDialog.ts +9 -5
  120. package/src/sap/cux/home/Layout.d.ts +2 -3
  121. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  122. package/src/sap/cux/home/Layout.js +35 -42
  123. package/src/sap/cux/home/Layout.js.map +1 -1
  124. package/src/sap/cux/home/Layout.ts +15 -19
  125. package/src/sap/cux/home/MenuItem.d.ts +2 -2
  126. package/src/sap/cux/home/MenuItem.js +2 -2
  127. package/src/sap/cux/home/MenuItem.js.map +1 -1
  128. package/src/sap/cux/home/MenuItem.ts +2 -2
  129. package/src/sap/cux/home/NewsAndPagesContainer.d.ts +11 -7
  130. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
  131. package/src/sap/cux/home/NewsAndPagesContainer.js +22 -26
  132. package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
  133. package/src/sap/cux/home/NewsAndPagesContainer.ts +26 -32
  134. package/src/sap/cux/home/NewsPanel.d.ts +10 -2
  135. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  136. package/src/sap/cux/home/NewsPanel.js +24 -16
  137. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  138. package/src/sap/cux/home/NewsPanel.ts +25 -18
  139. package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
  140. package/src/sap/cux/home/NewsSettingsPanel.js +1 -1
  141. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  142. package/src/sap/cux/home/NewsSettingsPanel.ts +2 -2
  143. package/src/sap/cux/home/NoDataContainer.d.ts +2 -2
  144. package/src/sap/cux/home/NoDataContainer.js +3 -3
  145. package/src/sap/cux/home/NoDataContainer.js.map +1 -1
  146. package/src/sap/cux/home/NoDataContainer.ts +3 -3
  147. package/src/sap/cux/home/PagePanel.d.ts +11 -3
  148. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  149. package/src/sap/cux/home/PagePanel.js +17 -6
  150. package/src/sap/cux/home/PagePanel.js.map +1 -1
  151. package/src/sap/cux/home/PagePanel.ts +17 -7
  152. package/src/sap/cux/home/RecentAppPanel.d.ts +2 -2
  153. package/src/sap/cux/home/RecentAppPanel.js +2 -2
  154. package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
  155. package/src/sap/cux/home/RecentAppPanel.ts +2 -2
  156. package/src/sap/cux/home/RecommendedAppPanel.d.ts +2 -2
  157. package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
  158. package/src/sap/cux/home/RecommendedAppPanel.js +15 -9
  159. package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
  160. package/src/sap/cux/home/RecommendedAppPanel.ts +11 -6
  161. package/src/sap/cux/home/SideBySideIconTabFilter.d.ts +48 -0
  162. package/src/sap/cux/home/SideBySideIconTabFilter.d.ts.map +1 -0
  163. package/src/sap/cux/home/SideBySideIconTabFilter.gen.d.ts +33 -0
  164. package/src/sap/cux/home/SideBySideIconTabFilter.js +83 -0
  165. package/src/sap/cux/home/SideBySideIconTabFilter.js.map +1 -0
  166. package/src/sap/cux/home/SideBySideIconTabFilter.ts +87 -0
  167. package/src/sap/cux/home/SituationPanel.d.ts +2 -2
  168. package/src/sap/cux/home/SituationPanel.js +2 -2
  169. package/src/sap/cux/home/SituationPanel.js.map +1 -1
  170. package/src/sap/cux/home/SituationPanel.ts +2 -2
  171. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +2 -2
  172. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
  173. package/src/sap/cux/home/SpaceInsightsPanel.js +11 -3
  174. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
  175. package/src/sap/cux/home/SpaceInsightsPanel.ts +7 -3
  176. package/src/sap/cux/home/SpacePanel.d.ts +2 -2
  177. package/src/sap/cux/home/SpacePanel.js +2 -2
  178. package/src/sap/cux/home/SpacePanel.js.map +1 -1
  179. package/src/sap/cux/home/SpacePanel.ts +2 -2
  180. package/src/sap/cux/home/TaskPanel.d.ts +2 -2
  181. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  182. package/src/sap/cux/home/TaskPanel.js +5 -3
  183. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  184. package/src/sap/cux/home/TaskPanel.ts +4 -3
  185. package/src/sap/cux/home/TilesPanel.d.ts +2 -3
  186. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  187. package/src/sap/cux/home/TilesPanel.js +89 -59
  188. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  189. package/src/sap/cux/home/TilesPanel.ts +93 -70
  190. package/src/sap/cux/home/ToDoPanel.d.ts +2 -2
  191. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  192. package/src/sap/cux/home/ToDoPanel.js +13 -3
  193. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  194. package/src/sap/cux/home/ToDoPanel.ts +9 -3
  195. package/src/sap/cux/home/ToDosContainer.d.ts +2 -3
  196. package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
  197. package/src/sap/cux/home/ToDosContainer.js +3 -8
  198. package/src/sap/cux/home/ToDosContainer.js.map +1 -1
  199. package/src/sap/cux/home/ToDosContainer.ts +2 -9
  200. package/src/sap/cux/home/changeHandler/LayoutHandler.d.ts +1 -2
  201. package/src/sap/cux/home/changeHandler/LayoutHandler.d.ts.map +1 -1
  202. package/src/sap/cux/home/changeHandler/LayoutHandler.js +0 -3
  203. package/src/sap/cux/home/changeHandler/LayoutHandler.js.map +1 -1
  204. package/src/sap/cux/home/changeHandler/LayoutHandler.ts +2 -6
  205. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
  206. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +0 -3
  207. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
  208. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +0 -3
  209. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
  210. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +0 -3
  211. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
  212. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +0 -3
  213. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
  214. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +0 -3
  215. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
  216. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +0 -3
  217. package/src/sap/cux/home/designtime/Layout.designtime.d.ts +1 -1
  218. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
  219. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +4 -3
  220. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
  221. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +3 -2
  222. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +0 -2
  223. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
  224. package/src/sap/cux/home/flexibility/Layout.flexibility.js +0 -2
  225. package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
  226. package/src/sap/cux/home/flexibility/Layout.flexibility.ts +0 -2
  227. package/src/sap/cux/home/i18n/messagebundle.properties +6 -9
  228. package/src/sap/cux/home/i18n/messagebundle_ar.properties +12 -6
  229. package/src/sap/cux/home/i18n/messagebundle_bg.properties +12 -6
  230. package/src/sap/cux/home/i18n/messagebundle_ca.properties +12 -6
  231. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +12 -6
  232. package/src/sap/cux/home/i18n/messagebundle_cs.properties +12 -6
  233. package/src/sap/cux/home/i18n/messagebundle_cy.properties +12 -6
  234. package/src/sap/cux/home/i18n/messagebundle_da.properties +12 -6
  235. package/src/sap/cux/home/i18n/messagebundle_de.properties +12 -6
  236. package/src/sap/cux/home/i18n/messagebundle_el.properties +18 -12
  237. package/src/sap/cux/home/i18n/messagebundle_en.properties +12 -6
  238. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +12 -6
  239. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +5 -5
  240. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +5 -5
  241. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +12 -6
  242. package/src/sap/cux/home/i18n/messagebundle_es.properties +12 -6
  243. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +12 -6
  244. package/src/sap/cux/home/i18n/messagebundle_et.properties +12 -6
  245. package/src/sap/cux/home/i18n/messagebundle_fi.properties +12 -6
  246. package/src/sap/cux/home/i18n/messagebundle_fr.properties +14 -8
  247. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +12 -6
  248. package/src/sap/cux/home/i18n/messagebundle_hi.properties +12 -6
  249. package/src/sap/cux/home/i18n/messagebundle_hr.properties +12 -6
  250. package/src/sap/cux/home/i18n/messagebundle_hu.properties +12 -6
  251. package/src/sap/cux/home/i18n/messagebundle_id.properties +16 -10
  252. package/src/sap/cux/home/i18n/messagebundle_it.properties +13 -7
  253. package/src/sap/cux/home/i18n/messagebundle_iw.properties +12 -6
  254. package/src/sap/cux/home/i18n/messagebundle_ja.properties +12 -6
  255. package/src/sap/cux/home/i18n/messagebundle_kk.properties +12 -6
  256. package/src/sap/cux/home/i18n/messagebundle_ko.properties +12 -6
  257. package/src/sap/cux/home/i18n/messagebundle_lt.properties +12 -6
  258. package/src/sap/cux/home/i18n/messagebundle_lv.properties +12 -6
  259. package/src/sap/cux/home/i18n/messagebundle_mk.properties +12 -6
  260. package/src/sap/cux/home/i18n/messagebundle_ms.properties +12 -6
  261. package/src/sap/cux/home/i18n/messagebundle_nl.properties +12 -6
  262. package/src/sap/cux/home/i18n/messagebundle_no.properties +12 -6
  263. package/src/sap/cux/home/i18n/messagebundle_pl.properties +12 -6
  264. package/src/sap/cux/home/i18n/messagebundle_pt.properties +12 -6
  265. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +12 -6
  266. package/src/sap/cux/home/i18n/messagebundle_ro.properties +12 -6
  267. package/src/sap/cux/home/i18n/messagebundle_ru.properties +22 -16
  268. package/src/sap/cux/home/i18n/messagebundle_sh.properties +12 -6
  269. package/src/sap/cux/home/i18n/messagebundle_sk.properties +12 -6
  270. package/src/sap/cux/home/i18n/messagebundle_sl.properties +12 -6
  271. package/src/sap/cux/home/i18n/messagebundle_sr.properties +12 -6
  272. package/src/sap/cux/home/i18n/messagebundle_sv.properties +12 -6
  273. package/src/sap/cux/home/i18n/messagebundle_th.properties +12 -6
  274. package/src/sap/cux/home/i18n/messagebundle_tr.properties +12 -6
  275. package/src/sap/cux/home/i18n/messagebundle_uk.properties +12 -6
  276. package/src/sap/cux/home/i18n/messagebundle_vi.properties +12 -6
  277. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +12 -6
  278. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +12 -6
  279. package/src/sap/cux/home/library.d.ts +10 -6
  280. package/src/sap/cux/home/library.d.ts.map +1 -1
  281. package/src/sap/cux/home/library.js +10 -6
  282. package/src/sap/cux/home/library.js.map +1 -1
  283. package/src/sap/cux/home/library.ts +10 -6
  284. package/src/sap/cux/home/themes/base/BaseContainer.less +31 -0
  285. package/src/sap/cux/home/themes/base/KeyUserSettingsDialog.less +5 -0
  286. package/src/sap/cux/home/themes/base/ToDosContainer.less +0 -4
  287. package/src/sap/cux/home/utils/UshellPersonalizer.d.ts +0 -4
  288. package/src/sap/cux/home/utils/UshellPersonalizer.d.ts.map +1 -1
  289. package/src/sap/cux/home/utils/UshellPersonalizer.js.map +1 -1
  290. package/src/sap/cux/home/utils/UshellPersonalizer.ts +0 -1
  291. package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts +0 -19
  292. package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +0 -1
  293. package/src/sap/cux/home/utils/KeyUserPersonalization.js +0 -126
  294. package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +0 -1
  295. package/src/sap/cux/home/utils/KeyUserPersonalization.ts +0 -93
@@ -1 +1 @@
1
- {"version":3,"file":"RecommendedAppPanel.js","names":["sap","ui","define","Log","GridContainer","GridContainerSettings","Button","Dialog","IllustratedMessageSize","IllustratedMessageType","sap_m_library","Link","MessageStrip","MessageToast","ScrollContainer","Text","Title","VBox","Element","EventBus","__BaseAppPersPanel","__MenuItem","___utils_Constants","___utils_Device","___utils_FESRUtil","__HttpHelper","_interopRequireDefault","obj","__esModule","default","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","then","observer","prototype","onFulfilled","onRejected","result","callback","e","_this","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","length","BackgroundDesign","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","BaseAppPersPanel","_catch","recover","MenuItem","_finallyRethrows","finalizer","REPO_BASE_URL","SETTINGS_PANELS_KEYS","DeviceType","addFESRId","HttpHelper","CONSTANTS","USER_PREFERENCE_SRVC_URL","KEY","RecommendedAppPanel","extend","metadata","library","defaultAggregation","aggregations","apps","type","singularName","multiple","visibility","constructor","_constructor","id","settings","BaseAppPersPanel.prototype.constructor.call","_selectedApps","setSupported","init","_init","BaseAppPersPanel.prototype.init.call","setProperty","_i18nBundle","getText","eventBus","getInstance","subscribe","channelId","eventId","data","showRecommendation","fireSupported","isSupported","_createAddToFavouritesMenuItem","addToFavouritesMenuItem","getId","title","icon","press","_openAddRecommendedDialog","visible","insertAggregation","dialogId","dialog","_generateAddRecommendedDialog","open","_controlMap","get","_createAddRecommendedDialogControls","appsWrapper","_generateAppsScrollContainer","getContent","destroyAggregation","getApps","tiles","map","app","_createAppTile","_setAggregation","_updateSelectedAppCount","set","text","level","addButton","Promise","resolve","_addSelectedApps","_closeAddRecommendedDialog","enabled","cancelButton","mainTitleText","content","items","justifyContent","alignItems","addStyleClass","contentHeight","contentWidth","buttons","escapeHandler","appCopy","clone","appTile","getParent","_getAppTile","_onPress","_highlightApp","layout","columnSize","gap","vertical","height","_updateAddButtonState","getElementById","setEnabled","toggleAppTileHighlight","close","_resetAddRecommendedDialog","_toggleAppTileHighlight","isAppSelected","appsScrollContainer","getItems","forEach","oTile","hasStyleClass","removeStyleClass","_this2","setBusy","_temp3","_refreshAllPanels","message","show","_temp2","vizId","getVizId","_temp","appManagerInstance","addVisualization","error","_wasThrown","_result","event","selectedApp","getSource","bIsSelected","splice","findIndex","oApp","getUrl","toggleStyleClass","selectedAppsTitle","selectedAppsCount","setText","_generateWrapper","wrapperId","_generateMessageStrip","BaseAppPersPanel.prototype._generateWrapper.call","backgroundDesign","Transparent","loadApps","_loadApps","_this3","getDeviceType","Mobile","getRecommendedVisualizations","recommendedVisualizations","visualization","index","menuItems","_getActions","recommendedApps","generateApps","setApps","setVisible","messageStripId","showIcon","showCloseButton","link","_getLayout","openSettingsDialog","ADVANCED","addToFavoritesItem","getKey","_addAppToFavorites","notRelevantItem","_rejectRecommendation","actions","_this4","_temp5","source","getTitle","find","viz","url","fioriId","_temp4","rejectPayload","AppId","Decision","Post","refresh","_wasThrown2","_result2","_isRecommendationEnabled","_this5","getPersonalization","personalisation","_enableRecommendationTab","_this6","generateIllustratedMessage","_generateIllustratedMessage","illustratedMessage","BaseAppPersPanel.prototype.generateIllustratedMessage.call","setIllustrationSize","Small","setIllustrationType","NoData","setTitle","setDescription","addAdditionalContent","tooltip"],"sources":["RecommendedAppPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\nimport Log from \"sap/base/Log\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport Dialog from \"sap/m/Dialog\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport { BackgroundDesign } from \"sap/m/library\";\nimport Link from \"sap/m/Link\";\nimport MessageStrip from \"sap/m/MessageStrip\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport ScrollContainer from \"sap/m/ScrollContainer\";\nimport Text from \"sap/m/Text\";\nimport Title from \"sap/m/Title\";\nimport VBox from \"sap/m/VBox\";\nimport Event from \"sap/ui/base/Event\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport Element from \"sap/ui/core/Element\";\nimport EventBus from \"sap/ui/core/EventBus\";\nimport App from \"./App\";\nimport AppsContainer from \"./AppsContainer\";\nimport BaseAppPersPanel from \"./BaseAppPersPanel\";\nimport BaseContainer from \"./BaseContainer\";\nimport type { $BasePanelSettings } from \"./BasePanel\";\nimport MenuItem, { MenuItem$PressEvent } from \"./MenuItem\";\nimport { REPO_BASE_URL, SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { DeviceType } from \"./utils/Device\";\nimport { addFESRId } from \"./utils/FESRUtil\";\nimport HttpHelper from \"./utils/HttpHelper\";\n\nconst CONSTANTS = {\n\tUSER_PREFERENCE_SRVC_URL: `${REPO_BASE_URL}UserPreference`,\n\tKEY: \"recommendedApps\"\n};\n\n/**\n *\n * Provides the RecommendedAppPanel Class.\n *\n * @extends sap.cux.home.BaseAppPersPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.128.0\n *\n * @internal\n * @public\n *\n * @alias sap.cux.home.RecommendedAppPanel\n */\nexport default class RecommendedAppPanel extends BaseAppPersPanel {\n\tprivate _selectedApps: App[] = [];\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 Recommended 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 Recommended Apps 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\", CONSTANTS.KEY);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"recommendedAppsTab\"));\n\t\tthis.setProperty(\"tooltip\", this._i18nBundle.getText(\"recommendedAppsTab\"));\n\t\t//subscribe to recommendation setting change event\n\t\tconst eventBus = EventBus.getInstance();\n\t\teventBus.subscribe(\"importChannel\", \"recommendationSettingChanged\", (channelId?: string, eventId?: string, data?: object) => {\n\t\t\tconst showRecommendation = (data as { showRecommendation: boolean }).showRecommendation;\n\t\t\tthis.fireSupported({ isSupported: showRecommendation });\n\t\t});\n\t\tthis._createAddToFavouritesMenuItem();\n\t}\n\n\t/**\n\t * Creates and inserts the \"Add to Favourites\" menu item.\n\t * @private\n\t */\n\tprivate _createAddToFavouritesMenuItem(): void {\n\t\tconst addToFavouritesMenuItem = new MenuItem(`${this.getId()}-addtofavouritesmenuitem`, {\n\t\t\ttitle: this._i18nBundle.getText(\"addToFavoritesRecommended\"),\n\t\t\ticon: \"sap-icon://add-favorite\",\n\t\t\tpress: this._openAddRecommendedDialog.bind(this),\n\t\t\tvisible: false\n\t\t});\n\t\taddFESRId(addToFavouritesMenuItem, \"addToFavouritesMenuItem\");\n\t\tthis.insertAggregation(\"menuItems\", addToFavouritesMenuItem, 0);\n\t}\n\n\t/**\n\t * Opens the dialog for adding recommended apps.\n\t * @private\n\t */\n\tprivate _openAddRecommendedDialog(): void {\n\t\tconst dialogId = `${this.getId()}-addRecommendedDialog-appsPage`;\n\t\tconst dialog = this._generateAddRecommendedDialog(dialogId);\n\t\tdialog.open();\n\t}\n\n\t/**\n\t * Creates and returns the dialog for adding recommended apps.\n\t * @private\n\t * @param {string} dialogId - The unique ID for the dialog.\n\t * @returns {sap.m.Dialog} - The generated dialog control.\n\t */\n\tprivate _generateAddRecommendedDialog(dialogId: string): Dialog {\n\t\tif (!this._controlMap.get(dialogId)) {\n\t\t\tthis._createAddRecommendedDialogControls(dialogId);\n\t\t}\n\t\tconst appsWrapper = this._generateAppsScrollContainer()?.getContent()?.[0] as GridContainer;\n\t\tappsWrapper.destroyAggregation(\"items\");\n\t\tthis._selectedApps = [...this.getApps()];\n\t\tconst tiles = this._selectedApps.map((app) => this._createAppTile(app));\n\t\tthis._setAggregation(appsWrapper, tiles);\n\t\tthis._updateSelectedAppCount();\n\t\tconst dialog = this._controlMap.get(dialogId) as Dialog;\n\t\treturn dialog;\n\t}\n\n\t/**\n\t * Creates the controls for the dialog, including the title, subtitle, and buttons.\n\t * @private\n\t * @param {string} dialogId - The unique ID for the dialog.\n\t */\n\tprivate _createAddRecommendedDialogControls(dialogId: string): void {\n\t\tthis._selectedApps = [...this.getApps()];\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-mainTitle`,\n\t\t\tnew Title({\n\t\t\t\tid: `${dialogId}-mainTitle`,\n\t\t\t\ttext: this._i18nBundle.getText(\"addToFavoritesRecommended\")\n\t\t\t})\n\t\t);\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-headerContainer-count`,\n\t\t\tnew Text({\n\t\t\t\tid: `${dialogId}-headerContainer-count`\n\t\t\t})\n\t\t);\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-selectedAppsTitle`,\n\t\t\tnew Title({\n\t\t\t\tid: `${dialogId}-selectedAppsTitle`,\n\t\t\t\ttext: `${this._i18nBundle.getText(\"recommendedAppsTab\")} (0 ${this._i18nBundle.getText(\"selected\")})`,\n\t\t\t\tlevel: \"H3\"\n\t\t\t})\n\t\t);\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-subtitleText`,\n\t\t\tnew Text({\n\t\t\t\tid: `${dialogId}-subtitleText`,\n\t\t\t\ttext: this._i18nBundle.getText(\"selectAtLeastOneApp\")\n\t\t\t})\n\t\t);\n\t\tconst addButton = new Button({\n\t\t\tid: `${dialogId}-addBtn`,\n\t\t\ttext: this._i18nBundle.getText(\"addButton\"),\n\t\t\ttype: \"Emphasized\",\n\t\t\tpress: async () => {\n\t\t\t\tawait this._addSelectedApps();\n\t\t\t\tthis._closeAddRecommendedDialog(dialogId);\n\t\t\t},\n\t\t\tenabled: this._selectedApps.length > 0\n\t\t});\n\t\tconst cancelButton = new Button({\n\t\t\tid: `${dialogId}-cancelBtn`,\n\t\t\ttext: this._i18nBundle.getText(\"cancelBtn\"),\n\t\t\tpress: () => this._closeAddRecommendedDialog(dialogId)\n\t\t});\n\t\tconst mainTitleText = (this._controlMap.get(`${dialogId}-mainTitle`) as Title).getText();\n\t\tthis._controlMap.set(\n\t\t\tdialogId,\n\t\t\tnew Dialog(dialogId, {\n\t\t\t\ttitle: mainTitleText,\n\t\t\t\tcontent: [\n\t\t\t\t\tnew VBox({\n\t\t\t\t\t\tid: `${dialogId}-headerContainer`,\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tthis._controlMap.get(`${dialogId}-selectedAppsTitle`) as Title,\n\t\t\t\t\t\t\tthis._controlMap.get(`${dialogId}-subtitleText`) as Text\n\t\t\t\t\t\t],\n\t\t\t\t\t\tjustifyContent: \"Start\",\n\t\t\t\t\t\talignItems: \"Start\"\n\t\t\t\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBeginEnd sapUiTinyMarginBottom\"),\n\t\t\t\t\tthis._generateAppsScrollContainer()\n\t\t\t\t],\n\t\t\t\tcontentHeight: \"25rem\",\n\t\t\t\tcontentWidth: \"41.75rem\",\n\t\t\t\tbuttons: [addButton, cancelButton],\n\t\t\t\tescapeHandler: () => this._closeAddRecommendedDialog(dialogId)\n\t\t\t}).addStyleClass(\"sapCuxRecommendedAppsDialog sapContrastPlus\")\n\t\t);\n\t}\n\n\t/**\n\t * Creates and returns an app tile for the given app.\n\t * @private\n\t * @param {App} app - The app to create a tile for.\n\t * @returns {sap.m.GenericTile} - The created app tile.\n\t */\n\tprivate _createAppTile(app: App): GenericTile {\n\t\tconst appCopy = app.clone();\n\t\tconst appTile = (this.getParent() as AppsContainer)._getAppTile(appCopy);\n\t\tappTile.addStyleClass(\"sapCuxHighlightApp\");\n\t\tappCopy._onPress = (e) => this._highlightApp(e, appCopy);\n\t\treturn appTile;\n\t}\n\n\t/**\n\t * Generates and returns the scroll container for the dialog's apps list.\n\t * @private\n\t * @returns {sap.m.ScrollContainer} - The scroll container for the apps.\n\t */\n\tprivate _generateAppsScrollContainer(): ScrollContainer {\n\t\tconst id = `${this.getId()}-addRecommendedDialog-appsPage-scrollContainer`;\n\t\tif (!this._controlMap.get(id)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\t`${id}-apps`,\n\t\t\t\tnew GridContainer({\n\t\t\t\t\tid: `${id}-apps`,\n\t\t\t\t\tlayout: new GridContainerSettings(`${id}-apps-containerSettings`, {\n\t\t\t\t\t\tcolumnSize: \"19rem\",\n\t\t\t\t\t\tgap: \"0.5rem\"\n\t\t\t\t\t})\n\t\t\t\t}).addStyleClass(\"sapCuxAppsGridContainerPadding\")\n\t\t\t);\n\t\t\tthis._controlMap.set(\n\t\t\t\tid,\n\t\t\t\tnew ScrollContainer(id, {\n\t\t\t\t\tid,\n\t\t\t\t\tvertical: true,\n\t\t\t\t\tvisible: true,\n\t\t\t\t\theight: \"20rem\",\n\t\t\t\t\tcontent: [this._controlMap.get(`${id}-apps`) as GridContainer]\n\t\t\t\t}).addStyleClass(\"sapUiSmallMarginBeginEnd sapUiTinyMarginTop\")\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(id) as ScrollContainer;\n\t}\n\n\t/**\n\t * Updates the state of the \"Add\" button in the dialog based on the selected apps.\n\t * @private\n\t */\n\tprivate _updateAddButtonState() {\n\t\tconst dialogId = `${this.getId()}-addRecommendedDialog-appsPage`;\n\t\tconst addButton = Element.getElementById(`${dialogId}-addBtn`) as Button;\n\t\tif (addButton) {\n\t\t\taddButton.setEnabled(this._selectedApps.length > 0);\n\t\t}\n\t}\n\n\t/**\n\t * Closes the dialog and resets the selected apps state.\n\t * @private\n\t * @param {string} dialogId - The unique ID of the dialog to close.\n\t */\n\tprivate _closeAddRecommendedDialog(dialogId: string): void {\n\t\tthis.toggleAppTileHighlight(true);\n\t\tconst dialog = this._controlMap.get(dialogId) as Dialog;\n\t\tif (dialog) {\n\t\t\tdialog.close();\n\t\t}\n\t\tthis._resetAddRecommendedDialog();\n\t}\n\n\t/**\n\t * Toggles the highlight style for app tiles based on the selection state.\n\t * @private\n\t * @param {boolean} isAppSelected - Flag indicating whether to add or remove the style class.\n\t */\n\tprivate toggleAppTileHighlight(isAppSelected: boolean): void {\n\t\tconst appsScrollContainer = this._generateAppsScrollContainer();\n\t\tconst appsWrapper = appsScrollContainer.getContent()[0] as GridContainer;\n\t\tif (appsWrapper) {\n\t\t\tappsWrapper.getItems().forEach((oTile) => {\n\t\t\t\tif (oTile) {\n\t\t\t\t\tif (isAppSelected) {\n\t\t\t\t\t\toTile.addStyleClass(\"sapCuxHighlightApp\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (oTile.hasStyleClass(\"sapCuxHighlightApp\")) {\n\t\t\t\t\t\t\toTile.removeStyleClass(\"sapCuxHighlightApp\");\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Resets the selected apps and updates the UI.\n\t * @private\n\t */\n\tprivate _resetAddRecommendedDialog(): void {\n\t\tthis._selectedApps = [...this.getApps()];\n\t\tthis._updateSelectedAppCount();\n\t\tthis._updateAddButtonState();\n\t}\n\n\t/**\n\t * Adds the selected apps to the user's favorites.\n\t * @private\n\t * @returns {Promise<void>} - A promise that resolves when the apps have been added.\n\t */\n\tprivate async _addSelectedApps(): Promise<void> {\n\t\tthis.setBusy(true);\n\t\ttry {\n\t\t\tfor (const app of this._selectedApps) {\n\t\t\t\tconst vizId = app.getVizId?.();\n\t\t\t\tif (vizId) {\n\t\t\t\t\tawait this.appManagerInstance.addVisualization(vizId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tawait (this.getParent?.() as AppsContainer)._refreshAllPanels();\n\t\t\tconst message = this._i18nBundle.getText(\"moveRecommendedMessage\") as string;\n\t\t\tMessageToast.show(message);\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t} finally {\n\t\t\tthis.setBusy(false);\n\t\t\tthis._selectedApps = [];\n\t\t\tthis._closeAddRecommendedDialog(`${this.getId()}-addRecommendedDialog-appsPage`);\n\t\t}\n\t}\n\n\t/**\n\t * Highlights or un-highlights the selected app based on the user's action.\n\t * @private\n\t * @param {Event} event - The event triggered by the user's action.\n\t * @param {App} selectedApp - The selected app to highlight or un-highlight.\n\t */\n\tprivate _highlightApp(event: Event, selectedApp: App): void {\n\t\tconst oTile = event.getSource<GenericTile>();\n\t\tconst bIsSelected = !oTile.hasStyleClass(\"sapCuxHighlightApp\");\n\t\tthis._selectedApps = this._selectedApps || [];\n\t\tif (bIsSelected) {\n\t\t\tthis._selectedApps.push(selectedApp);\n\t\t} else {\n\t\t\tthis._selectedApps.splice(\n\t\t\t\tthis._selectedApps.findIndex((oApp) => selectedApp.getUrl() === oApp.getUrl()),\n\t\t\t\t1\n\t\t\t);\n\t\t}\n\t\toTile.toggleStyleClass(\"sapCuxHighlightApp\", bIsSelected);\n\t\tthis._updateSelectedAppCount();\n\t\tthis._updateAddButtonState();\n\t}\n\n\t/**\n\t * Updates the count of selected apps displayed in the dialog.\n\t * @private\n\t */\n\tprivate _updateSelectedAppCount(): void {\n\t\tconst dialogId = `${this.getId()}-addRecommendedDialog-appsPage`;\n\t\tconst selectedAppsTitle = this._controlMap.get(`${dialogId}-selectedAppsTitle`) as Title;\n\t\tconst selectedAppsCount = this._selectedApps.length;\n\t\tselectedAppsTitle.setText(\n\t\t\t`${this._i18nBundle.getText(\"recommendedAppsTab\")} (${selectedAppsCount} ${this._i18nBundle.getText(\"selected\")})`\n\t\t);\n\t}\n\n\t/**\n\t * Overrides the wrapper for the apps panel to add message strip.\n\t *\n\t * @private\n\t * @returns {sap.m.VBox} The apps panel wrapper.\n\t */\n\tprotected _generateWrapper() {\n\t\tconst wrapperId = `${this.getId()}-recommendedPanelWrapper`;\n\t\tif (!this._controlMap.get(wrapperId)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\twrapperId,\n\t\t\t\tnew VBox(wrapperId, {\n\t\t\t\t\titems: [this._generateMessageStrip(), super._generateWrapper()],\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Transparent\n\t\t\t\t})\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(wrapperId) as VBox;\n\t}\n\n\t/**\n\t * Fetch recommended apps and set apps aggregation\n\t * @private\n\t */\n\tpublic async loadApps() {\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\treturn; // Do not load recommended apps on mobile devices\n\t\t}\n\t\tlet recommendedVisualizations = await this.appManagerInstance.getRecommendedVisualizations(true);\n\t\tthis.destroyAggregation(\"apps\", true);\n\t\trecommendedVisualizations = recommendedVisualizations.map((visualization, index) => {\n\t\t\treturn {\n\t\t\t\t...visualization,\n\t\t\t\tmenuItems: this._getActions(index)\n\t\t\t};\n\t\t});\n\t\t//convert apps objects array to apps instances\n\t\tconst recommendedApps = this.generateApps(recommendedVisualizations);\n\t\tthis.setApps(recommendedApps);\n\t\tconst addToFavouritesMenuItem = Element.getElementById(`${this.getId()}-addtofavouritesmenuitem`) as MenuItem;\n\t\tif (addToFavouritesMenuItem) {\n\t\t\taddToFavouritesMenuItem.setVisible(recommendedApps.length > 0);\n\t\t}\n\t}\n\n\t/**\n\t * Returns message strip for recommended tab\n\t * @private\n\t * @returns {sap.cux.home.MessageStrip} - Message strip control.\n\t */\n\tprivate _generateMessageStrip() {\n\t\tconst messageStripId = `${this.getId()}-messageStrip`;\n\t\tif (!this._controlMap.get(messageStripId)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\tmessageStripId,\n\t\t\t\tnew MessageStrip(messageStripId, {\n\t\t\t\t\ttext: this._i18nBundle.getText(\"recommendationMessageStrip\"),\n\t\t\t\t\tshowIcon: true,\n\t\t\t\t\tshowCloseButton: true,\n\t\t\t\t\tlink: new Link(`${messageStripId}-settings`, {\n\t\t\t\t\t\ttext: this._i18nBundle.getText(\"settings\"),\n\t\t\t\t\t\tpress: () => (this.getParent() as BaseContainer)?._getLayout()?.openSettingsDialog(SETTINGS_PANELS_KEYS.ADVANCED)\n\t\t\t\t\t}).addStyleClass(\"sapUiNoMargin\")\n\t\t\t\t}).addStyleClass(\"sapUiNoMarginBegin sapUiTinyMarginBottom\")\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(messageStripId) as MessageStrip;\n\t}\n\n\t/**\n\t * Returns list of actions available for selected app\n\t * @private\n\t * @returns {sap.cux.home.MenuItem[]} - Array of list items.\n\t */\n\tprivate _getActions(index?: number): MenuItem[] {\n\t\tconst addToFavoritesItem = new MenuItem(`${this.getKey()}--addToFavoritesItem--${index}`, {\n\t\t\ttitle: this._i18nBundle.getText(\"addToFavorites\"),\n\t\t\ticon: \"sap-icon://add-favorite\",\n\t\t\tpress: (event) => {\n\t\t\t\tvoid this._addAppToFavorites(event);\n\t\t\t}\n\t\t});\n\t\taddFESRId(addToFavoritesItem, \"acceptRecommendation\");\n\t\tconst notRelevantItem = new MenuItem(`${this.getKey()}--notRelevantItem--${index}`, {\n\t\t\ttitle: this._i18nBundle.getText(\"notRelevantRecommendation\"),\n\t\t\ticon: \"sap-icon://decline\",\n\t\t\tpress: (event) => {\n\t\t\t\tvoid this._rejectRecommendation(event);\n\t\t\t}\n\t\t});\n\t\taddFESRId(notRelevantItem, \"rejectRecommendation\");\n\t\tconst actions = [addToFavoritesItem, notRelevantItem];\n\t\treturn actions;\n\t}\n\n\t/**\n\t * Rejects the selected app as recommendation\n\t * @private\n\t * @param {sap.ui.base.MenuItem$PressEvent} event - Event object.\n\t */\n\tprivate async _rejectRecommendation(event: MenuItem$PressEvent) {\n\t\tthis.setBusy(true);\n\t\ttry {\n\t\t\tconst source = event.getSource<MenuItem>();\n\t\t\tconst app = source.getParent() as App;\n\t\t\tconst title = app.getTitle();\n\t\t\tconst recommendedVisualizations = await this.appManagerInstance.getRecommendedVisualizations();\n\t\t\tconst visualization = recommendedVisualizations.find((viz) => viz.url === app.getUrl());\n\t\t\tconst fioriId = visualization?.fioriId;\n\t\t\tif (fioriId) {\n\t\t\t\tconst rejectPayload = {\n\t\t\t\t\tAppId: fioriId,\n\t\t\t\t\tDecision: 1\n\t\t\t\t};\n\t\t\t\tawait HttpHelper.Post(CONSTANTS.USER_PREFERENCE_SRVC_URL, rejectPayload);\n\t\t\t\tawait this.refresh();\n\t\t\t\tconst message = this._i18nBundle.getText(\"rejectRecommendationMsg\", [title]) as string;\n\t\t\t\tMessageToast.show(message);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t} finally {\n\t\t\tthis.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Checks if recommendation is enabled based on recommendation feature toggle and user personalization.\n\t * @private\n\t * @returns {Boolean} - Returns true if recommendation is enabled otherwise false.\n\t */\n\tprivate async _isRecommendationEnabled() {\n\t\tconst personalisation = await this.getPersonalization();\n\t\treturn personalisation?.showRecommendation ?? true;\n\t}\n\n\t/**\n\t * Show recommendation tab if recommendation is enabled\n\t * @private\n\t */\n\tpublic async _enableRecommendationTab() {\n\t\tconst isSupported = await this._isRecommendationEnabled();\n\t\tthis.setSupported(isSupported);\n\t\tthis.fireSupported({ isSupported });\n\t}\n\n\t/**\n\t * Generates illustrated message for recommended 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//overrride the default illustrated message, title, description and add additional content\n\t\tillustratedMessage.setIllustrationSize(IllustratedMessageSize.Small);\n\t\tillustratedMessage.setIllustrationType(IllustratedMessageType.NoData);\n\t\tillustratedMessage.setTitle(this._i18nBundle.getText(\"noRecommendationsTitle\"));\n\t\tillustratedMessage.setDescription(this._i18nBundle.getText(\"noRecommendationsDescription\"));\n\t\tillustratedMessage.addAdditionalContent(\n\t\t\tnew Button({\n\t\t\t\ttext: this._i18nBundle.getText(\"settings\"),\n\t\t\t\ttooltip: this._i18nBundle.getText(\"settings\"),\n\t\t\t\tpress: () => (this.getParent() as BaseContainer)?._getLayout()?.openSettingsDialog(SETTINGS_PANELS_KEYS.ADVANCED),\n\t\t\t\ttype: \"Emphasized\"\n\t\t\t})\n\t\t);\n\t\treturn illustratedMessage;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RecommendedAppPanel.js","names":["sap","ui","define","Log","GridContainer","GridContainerSettings","Button","Dialog","IllustratedMessageSize","IllustratedMessageType","sap_m_library","Link","MessageStrip","MessageToast","ScrollContainer","Text","Title","VBox","Element","EventBus","__BaseAppPersPanel","__MenuItem","___utils_Constants","___utils_Device","___utils_FESRUtil","__HttpHelper","_interopRequireDefault","obj","__esModule","default","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","then","observer","prototype","onFulfilled","onRejected","result","callback","e","_this","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","length","BackgroundDesign","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","BaseAppPersPanel","_catch","recover","MenuItem","_finallyRethrows","finalizer","REPO_BASE_URL","SETTINGS_PANELS_KEYS","DeviceType","addFESRId","HttpHelper","CONSTANTS","USER_PREFERENCE_SRVC_URL","KEY","RecommendedAppPanel","extend","metadata","library","defaultAggregation","aggregations","apps","type","singularName","multiple","visibility","constructor","_constructor","id","settings","BaseAppPersPanel.prototype.constructor.call","_selectedApps","setSupported","init","_init","BaseAppPersPanel.prototype.init.call","setProperty","_i18nBundle","getText","eventBus","getInstance","subscribe","channelId","eventId","data","showRecommendation","fireSupported","isSupported","_createAddToFavouritesMenuItem","addToFavouritesMenuItem","getId","title","icon","press","_openAddRecommendedDialog","visible","insertAggregation","dialogId","dialog","_generateAddRecommendedDialog","open","_controlMap","get","_createAddRecommendedDialogControls","appsWrapper","_generateAppsScrollContainer","getContent","destroyAggregation","getApps","tiles","map","app","_createAppTile","_setAggregation","_updateSelectedAppCount","set","text","level","addButton","Promise","resolve","_addSelectedApps","_closeAddRecommendedDialog","enabled","cancelButton","mainTitleText","content","items","justifyContent","alignItems","addStyleClass","contentHeight","contentWidth","buttons","escapeHandler","appCopy","clone","appTile","getParent","_getAppTile","_onPress","_highlightApp","layout","columnSize","gap","vertical","height","_updateAddButtonState","getElementById","setEnabled","toggleAppTileHighlight","close","_resetAddRecommendedDialog","_toggleAppTileHighlight","isAppSelected","appsScrollContainer","getItems","forEach","oTile","hasStyleClass","removeStyleClass","_this2","setBusy","_temp3","_refreshAllPanels","message","show","_temp2","vizId","getVizId","_temp","appManagerInstance","addVisualization","error","_wasThrown","_result","event","selectedApp","getSource","bIsSelected","splice","findIndex","oApp","getUrl","toggleStyleClass","selectedAppsTitle","selectedAppsCount","setText","_generateWrapper","wrapperId","_generateMessageStrip","BaseAppPersPanel.prototype._generateWrapper.call","backgroundDesign","Transparent","loadApps","_loadApps","_this3","getDeviceType","Mobile","getRecommendedVisualizations","recommendedVisualizations","visualization","index","menuItems","_getActions","generateApps","fetchTileVisualization","prepareAppsBeforeLoad","setApps","setVisible","messageStripId","showIcon","showCloseButton","link","_getLayout","openSettingsDialog","ADVANCED","addToFavoritesItem","getKey","_addAppToFavorites","notRelevantItem","_rejectRecommendation","actions","_this4","_temp5","source","getTitle","find","viz","url","fioriId","_temp4","rejectPayload","AppId","Decision","Post","refresh","_wasThrown2","_result2","_isRecommendationEnabled","_this5","getPersonalization","personalisation","_enableRecommendationTab","_this6","generateIllustratedMessage","_generateIllustratedMessage","illustratedMessage","BaseAppPersPanel.prototype.generateIllustratedMessage.call","setIllustrationSize","ExtraSmall","setIllustrationType","NoData","setTitle","setDescription","addAdditionalContent","tooltip"],"sources":["RecommendedAppPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\nimport Log from \"sap/base/Log\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport Dialog from \"sap/m/Dialog\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport { BackgroundDesign } from \"sap/m/library\";\nimport Link from \"sap/m/Link\";\nimport MessageStrip from \"sap/m/MessageStrip\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport ScrollContainer from \"sap/m/ScrollContainer\";\nimport Text from \"sap/m/Text\";\nimport Title from \"sap/m/Title\";\nimport VBox from \"sap/m/VBox\";\nimport Event from \"sap/ui/base/Event\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport Element from \"sap/ui/core/Element\";\nimport EventBus from \"sap/ui/core/EventBus\";\nimport App from \"./App\";\nimport AppsContainer from \"./AppsContainer\";\nimport BaseAppPersPanel from \"./BaseAppPersPanel\";\nimport BaseContainer from \"./BaseContainer\";\nimport type { $BasePanelSettings } from \"./BasePanel\";\nimport MenuItem, { MenuItem$PressEvent } from \"./MenuItem\";\nimport { REPO_BASE_URL, SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { DeviceType } from \"./utils/Device\";\nimport { addFESRId } from \"./utils/FESRUtil\";\nimport HttpHelper from \"./utils/HttpHelper\";\n\nconst CONSTANTS = {\n\tUSER_PREFERENCE_SRVC_URL: `${REPO_BASE_URL}UserPreference`,\n\tKEY: \"recommendedApps\"\n};\n\n/**\n *\n * Provides the RecommendedAppPanel Class.\n *\n * @extends sap.cux.home.BaseAppPersPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.128.0\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.RecommendedAppPanel\n */\nexport default class RecommendedAppPanel extends BaseAppPersPanel {\n\tprivate _selectedApps: App[] = [];\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 Recommended 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 Recommended Apps 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\", CONSTANTS.KEY);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"recommendedAppsTab\"));\n\t\tthis.setProperty(\"tooltip\", this._i18nBundle.getText(\"recommendedAppsTab\"));\n\t\t//subscribe to recommendation setting change event\n\t\tconst eventBus = EventBus.getInstance();\n\t\teventBus.subscribe(\"importChannel\", \"recommendationSettingChanged\", (channelId?: string, eventId?: string, data?: object) => {\n\t\t\tconst showRecommendation = (data as { showRecommendation: boolean }).showRecommendation;\n\t\t\tthis.fireSupported({ isSupported: showRecommendation });\n\t\t});\n\t\tthis._createAddToFavouritesMenuItem();\n\t}\n\n\t/**\n\t * Creates and inserts the \"Add to Favourites\" menu item.\n\t * @private\n\t */\n\tprivate _createAddToFavouritesMenuItem(): void {\n\t\tconst addToFavouritesMenuItem = new MenuItem(`${this.getId()}-addtofavouritesmenuitem`, {\n\t\t\ttitle: this._i18nBundle.getText(\"addToFavoritesRecommended\"),\n\t\t\ticon: \"sap-icon://add-favorite\",\n\t\t\tpress: this._openAddRecommendedDialog.bind(this),\n\t\t\tvisible: false\n\t\t});\n\t\taddFESRId(addToFavouritesMenuItem, \"addToFavouritesMenuItem\");\n\t\tthis.insertAggregation(\"menuItems\", addToFavouritesMenuItem, 0);\n\t}\n\n\t/**\n\t * Opens the dialog for adding recommended apps.\n\t * @private\n\t */\n\tprivate _openAddRecommendedDialog(): void {\n\t\tconst dialogId = `${this.getId()}-addRecommendedDialog-appsPage`;\n\t\tconst dialog = this._generateAddRecommendedDialog(dialogId);\n\t\tdialog.open();\n\t}\n\n\t/**\n\t * Creates and returns the dialog for adding recommended apps.\n\t * @private\n\t * @param {string} dialogId - The unique ID for the dialog.\n\t * @returns {sap.m.Dialog} - The generated dialog control.\n\t */\n\tprivate _generateAddRecommendedDialog(dialogId: string): Dialog {\n\t\tif (!this._controlMap.get(dialogId)) {\n\t\t\tthis._createAddRecommendedDialogControls(dialogId);\n\t\t}\n\t\tconst appsWrapper = this._generateAppsScrollContainer()?.getContent()?.[0] as GridContainer;\n\t\tappsWrapper.destroyAggregation(\"items\");\n\t\tthis._selectedApps = [...this.getApps()];\n\t\tconst tiles = this._selectedApps.map((app) => this._createAppTile(app));\n\t\tthis._setAggregation(appsWrapper, tiles);\n\t\tthis._updateSelectedAppCount();\n\t\tconst dialog = this._controlMap.get(dialogId) as Dialog;\n\t\treturn dialog;\n\t}\n\n\t/**\n\t * Creates the controls for the dialog, including the title, subtitle, and buttons.\n\t * @private\n\t * @param {string} dialogId - The unique ID for the dialog.\n\t */\n\tprivate _createAddRecommendedDialogControls(dialogId: string): void {\n\t\tthis._selectedApps = [...this.getApps()];\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-mainTitle`,\n\t\t\tnew Title({\n\t\t\t\tid: `${dialogId}-mainTitle`,\n\t\t\t\ttext: this._i18nBundle.getText(\"addToFavoritesRecommended\")\n\t\t\t})\n\t\t);\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-headerContainer-count`,\n\t\t\tnew Text({\n\t\t\t\tid: `${dialogId}-headerContainer-count`\n\t\t\t})\n\t\t);\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-selectedAppsTitle`,\n\t\t\tnew Title({\n\t\t\t\tid: `${dialogId}-selectedAppsTitle`,\n\t\t\t\ttext: `${this._i18nBundle.getText(\"recommendedAppsTab\")} (0 ${this._i18nBundle.getText(\"selected\")})`,\n\t\t\t\tlevel: \"H3\"\n\t\t\t})\n\t\t);\n\t\tthis._controlMap.set(\n\t\t\t`${dialogId}-subtitleText`,\n\t\t\tnew Text({\n\t\t\t\tid: `${dialogId}-subtitleText`,\n\t\t\t\ttext: this._i18nBundle.getText(\"selectAtLeastOneApp\")\n\t\t\t})\n\t\t);\n\t\tconst addButton = new Button({\n\t\t\tid: `${dialogId}-addBtn`,\n\t\t\ttext: this._i18nBundle.getText(\"addButton\"),\n\t\t\ttype: \"Emphasized\",\n\t\t\tpress: async () => {\n\t\t\t\tawait this._addSelectedApps();\n\t\t\t\tthis._closeAddRecommendedDialog(dialogId);\n\t\t\t},\n\t\t\tenabled: this._selectedApps.length > 0\n\t\t});\n\t\tconst cancelButton = new Button({\n\t\t\tid: `${dialogId}-cancelBtn`,\n\t\t\ttext: this._i18nBundle.getText(\"cancelBtn\"),\n\t\t\tpress: () => this._closeAddRecommendedDialog(dialogId)\n\t\t});\n\t\tconst mainTitleText = (this._controlMap.get(`${dialogId}-mainTitle`) as Title).getText();\n\t\tthis._controlMap.set(\n\t\t\tdialogId,\n\t\t\tnew Dialog(dialogId, {\n\t\t\t\ttitle: mainTitleText,\n\t\t\t\tcontent: [\n\t\t\t\t\tnew VBox({\n\t\t\t\t\t\tid: `${dialogId}-headerContainer`,\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tthis._controlMap.get(`${dialogId}-selectedAppsTitle`) as Title,\n\t\t\t\t\t\t\tthis._controlMap.get(`${dialogId}-subtitleText`) as Text\n\t\t\t\t\t\t],\n\t\t\t\t\t\tjustifyContent: \"Start\",\n\t\t\t\t\t\talignItems: \"Start\"\n\t\t\t\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBeginEnd sapUiTinyMarginBottom\"),\n\t\t\t\t\tthis._generateAppsScrollContainer()\n\t\t\t\t],\n\t\t\t\tcontentHeight: \"25rem\",\n\t\t\t\tcontentWidth: \"41.75rem\",\n\t\t\t\tbuttons: [addButton, cancelButton],\n\t\t\t\tescapeHandler: () => this._closeAddRecommendedDialog(dialogId)\n\t\t\t}).addStyleClass(\"sapCuxRecommendedAppsDialog sapContrastPlus\")\n\t\t);\n\t}\n\n\t/**\n\t * Creates and returns an app tile for the given app.\n\t * @private\n\t * @param {App} app - The app to create a tile for.\n\t * @returns {sap.m.GenericTile} - The created app tile.\n\t */\n\tprivate _createAppTile(app: App): GenericTile {\n\t\tconst appCopy = app.clone();\n\t\tconst appTile = (this.getParent() as AppsContainer)._getAppTile(appCopy);\n\t\tappTile.addStyleClass(\"sapCuxHighlightApp\");\n\t\tappCopy._onPress = (e) => this._highlightApp(e, appCopy);\n\t\treturn appTile;\n\t}\n\n\t/**\n\t * Generates and returns the scroll container for the dialog's apps list.\n\t * @private\n\t * @returns {sap.m.ScrollContainer} - The scroll container for the apps.\n\t */\n\tprivate _generateAppsScrollContainer(): ScrollContainer {\n\t\tconst id = `${this.getId()}-addRecommendedDialog-appsPage-scrollContainer`;\n\t\tif (!this._controlMap.get(id)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\t`${id}-apps`,\n\t\t\t\tnew GridContainer({\n\t\t\t\t\tid: `${id}-apps`,\n\t\t\t\t\tlayout: new GridContainerSettings(`${id}-apps-containerSettings`, {\n\t\t\t\t\t\tcolumnSize: \"19rem\",\n\t\t\t\t\t\tgap: \"0.5rem\"\n\t\t\t\t\t})\n\t\t\t\t}).addStyleClass(\"sapCuxAppsGridContainerPadding\")\n\t\t\t);\n\t\t\tthis._controlMap.set(\n\t\t\t\tid,\n\t\t\t\tnew ScrollContainer(id, {\n\t\t\t\t\tid,\n\t\t\t\t\tvertical: true,\n\t\t\t\t\tvisible: true,\n\t\t\t\t\theight: \"20rem\",\n\t\t\t\t\tcontent: [this._controlMap.get(`${id}-apps`) as GridContainer]\n\t\t\t\t}).addStyleClass(\"sapUiSmallMarginBeginEnd sapUiTinyMarginTop\")\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(id) as ScrollContainer;\n\t}\n\n\t/**\n\t * Updates the state of the \"Add\" button in the dialog based on the selected apps.\n\t * @private\n\t */\n\tprivate _updateAddButtonState() {\n\t\tconst dialogId = `${this.getId()}-addRecommendedDialog-appsPage`;\n\t\tconst addButton = Element.getElementById(`${dialogId}-addBtn`) as Button;\n\t\tif (addButton) {\n\t\t\taddButton.setEnabled(this._selectedApps.length > 0);\n\t\t}\n\t}\n\n\t/**\n\t * Closes the dialog and resets the selected apps state.\n\t * @private\n\t * @param {string} dialogId - The unique ID of the dialog to close.\n\t */\n\tprivate _closeAddRecommendedDialog(dialogId: string): void {\n\t\tthis.toggleAppTileHighlight(true);\n\t\tconst dialog = this._controlMap.get(dialogId) as Dialog;\n\t\tif (dialog) {\n\t\t\tdialog.close();\n\t\t}\n\t\tthis._resetAddRecommendedDialog();\n\t}\n\n\t/**\n\t * Toggles the highlight style for app tiles based on the selection state.\n\t * @private\n\t * @param {boolean} isAppSelected - Flag indicating whether to add or remove the style class.\n\t */\n\tprivate toggleAppTileHighlight(isAppSelected: boolean): void {\n\t\tconst appsScrollContainer = this._generateAppsScrollContainer();\n\t\tconst appsWrapper = appsScrollContainer.getContent()[0] as GridContainer;\n\t\tif (appsWrapper) {\n\t\t\tappsWrapper.getItems().forEach((oTile) => {\n\t\t\t\tif (oTile) {\n\t\t\t\t\tif (isAppSelected) {\n\t\t\t\t\t\toTile.addStyleClass(\"sapCuxHighlightApp\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\tif (oTile.hasStyleClass(\"sapCuxHighlightApp\")) {\n\t\t\t\t\t\t\toTile.removeStyleClass(\"sapCuxHighlightApp\");\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Resets the selected apps and updates the UI.\n\t * @private\n\t */\n\tprivate _resetAddRecommendedDialog(): void {\n\t\tthis._selectedApps = [...this.getApps()];\n\t\tthis._updateSelectedAppCount();\n\t\tthis._updateAddButtonState();\n\t}\n\n\t/**\n\t * Adds the selected apps to the user's favorites.\n\t * @private\n\t * @returns {Promise<void>} - A promise that resolves when the apps have been added.\n\t */\n\tprivate async _addSelectedApps(): Promise<void> {\n\t\tthis.setBusy(true);\n\t\ttry {\n\t\t\tfor (const app of this._selectedApps) {\n\t\t\t\tconst vizId = app.getVizId?.();\n\t\t\t\tif (vizId) {\n\t\t\t\t\tawait this.appManagerInstance.addVisualization(vizId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tawait (this.getParent?.() as AppsContainer)._refreshAllPanels();\n\t\t\tconst message = this._i18nBundle.getText(\"moveRecommendedMessage\") as string;\n\t\t\tMessageToast.show(message);\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t} finally {\n\t\t\tthis.setBusy(false);\n\t\t\tthis._selectedApps = [];\n\t\t\tthis._closeAddRecommendedDialog(`${this.getId()}-addRecommendedDialog-appsPage`);\n\t\t}\n\t}\n\n\t/**\n\t * Highlights or un-highlights the selected app based on the user's action.\n\t * @private\n\t * @param {Event} event - The event triggered by the user's action.\n\t * @param {App} selectedApp - The selected app to highlight or un-highlight.\n\t */\n\tprivate _highlightApp(event: Event, selectedApp: App): void {\n\t\tconst oTile = event.getSource<GenericTile>();\n\t\tconst bIsSelected = !oTile.hasStyleClass(\"sapCuxHighlightApp\");\n\t\tthis._selectedApps = this._selectedApps || [];\n\t\tif (bIsSelected) {\n\t\t\tthis._selectedApps.push(selectedApp);\n\t\t} else {\n\t\t\tthis._selectedApps.splice(\n\t\t\t\tthis._selectedApps.findIndex((oApp) => selectedApp.getUrl() === oApp.getUrl()),\n\t\t\t\t1\n\t\t\t);\n\t\t}\n\t\toTile.toggleStyleClass(\"sapCuxHighlightApp\", bIsSelected);\n\t\tthis._updateSelectedAppCount();\n\t\tthis._updateAddButtonState();\n\t}\n\n\t/**\n\t * Updates the count of selected apps displayed in the dialog.\n\t * @private\n\t */\n\tprivate _updateSelectedAppCount(): void {\n\t\tconst dialogId = `${this.getId()}-addRecommendedDialog-appsPage`;\n\t\tconst selectedAppsTitle = this._controlMap.get(`${dialogId}-selectedAppsTitle`) as Title;\n\t\tconst selectedAppsCount = this._selectedApps.length;\n\t\tselectedAppsTitle.setText(\n\t\t\t`${this._i18nBundle.getText(\"recommendedAppsTab\")} (${selectedAppsCount} ${this._i18nBundle.getText(\"selected\")})`\n\t\t);\n\t}\n\n\t/**\n\t * Overrides the wrapper for the apps panel to add message strip.\n\t *\n\t * @private\n\t * @returns {sap.m.VBox} The apps panel wrapper.\n\t */\n\tprotected _generateWrapper() {\n\t\tconst wrapperId = `${this.getId()}-recommendedPanelWrapper`;\n\t\tif (!this._controlMap.get(wrapperId)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\twrapperId,\n\t\t\t\tnew VBox(wrapperId, {\n\t\t\t\t\titems: [this._generateMessageStrip(), super._generateWrapper()],\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Transparent\n\t\t\t\t})\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(wrapperId) as VBox;\n\t}\n\n\t/**\n\t * Fetch recommended apps and set apps aggregation\n\t * @private\n\t */\n\tpublic async loadApps() {\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\treturn; // Do not load recommended apps on mobile devices\n\t\t}\n\t\tlet recommendedVisualizations = await this.appManagerInstance.getRecommendedVisualizations(true);\n\t\tthis.destroyAggregation(\"apps\", true);\n\t\trecommendedVisualizations = recommendedVisualizations.map((visualization, index) => {\n\t\t\treturn {\n\t\t\t\t...visualization,\n\t\t\t\tmenuItems: this._getActions(index)\n\t\t\t};\n\t\t});\n\t\t//convert apps objects array to apps instances\n\t\tconst apps = this.generateApps(recommendedVisualizations);\n\t\tlet tiles: GenericTile[] = [];\n\t\ttiles = this.fetchTileVisualization(tiles);\n\t\t// calling prepareAppsBeforeLoad fn to filter out the recommended apps from deprecated ones.\n\t\tawait this.prepareAppsBeforeLoad(apps, tiles);\n\t\tthis.setApps(apps);\n\t\tconst addToFavouritesMenuItem = Element.getElementById(`${this.getId()}-addtofavouritesmenuitem`) as MenuItem;\n\t\tif (addToFavouritesMenuItem) {\n\t\t\taddToFavouritesMenuItem.setVisible(apps.length > 0);\n\t\t}\n\t}\n\n\t/**\n\t * Returns message strip for recommended tab\n\t * @private\n\t * @returns {sap.cux.home.MessageStrip} - Message strip control.\n\t */\n\tprivate _generateMessageStrip() {\n\t\tconst messageStripId = `${this.getId()}-messageStrip`;\n\t\tif (!this._controlMap.get(messageStripId)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\tmessageStripId,\n\t\t\t\tnew MessageStrip(messageStripId, {\n\t\t\t\t\ttext: this._i18nBundle.getText(\"recommendationMessageStrip\"),\n\t\t\t\t\tshowIcon: true,\n\t\t\t\t\tshowCloseButton: true,\n\t\t\t\t\tlink: new Link(`${messageStripId}-settings`, {\n\t\t\t\t\t\ttext: this._i18nBundle.getText(\"settings\"),\n\t\t\t\t\t\tpress: () => (this.getParent() as BaseContainer)?._getLayout()?.openSettingsDialog(SETTINGS_PANELS_KEYS.ADVANCED)\n\t\t\t\t\t}).addStyleClass(\"sapUiNoMargin\")\n\t\t\t\t}).addStyleClass(\"sapUiNoMarginBegin sapUiTinyMarginBottom\")\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(messageStripId) as MessageStrip;\n\t}\n\n\t/**\n\t * Returns list of actions available for selected app\n\t * @private\n\t * @returns {sap.cux.home.MenuItem[]} - Array of list items.\n\t */\n\tprivate _getActions(index?: number): MenuItem[] {\n\t\tconst addToFavoritesItem = new MenuItem(`${this.getKey()}--addToFavoritesItem--${index}`, {\n\t\t\ttitle: this._i18nBundle.getText(\"addToFavorites\"),\n\t\t\ticon: \"sap-icon://add-favorite\",\n\t\t\tpress: (event) => {\n\t\t\t\tvoid this._addAppToFavorites(event);\n\t\t\t}\n\t\t});\n\t\taddFESRId(addToFavoritesItem, \"acceptRecommendation\");\n\t\tconst notRelevantItem = new MenuItem(`${this.getKey()}--notRelevantItem--${index}`, {\n\t\t\ttitle: this._i18nBundle.getText(\"notRelevantRecommendation\"),\n\t\t\ticon: \"sap-icon://decline\",\n\t\t\tpress: (event) => {\n\t\t\t\tvoid this._rejectRecommendation(event);\n\t\t\t}\n\t\t});\n\t\taddFESRId(notRelevantItem, \"rejectRecommendation\");\n\t\tconst actions = [addToFavoritesItem, notRelevantItem];\n\t\treturn actions;\n\t}\n\n\t/**\n\t * Rejects the selected app as recommendation\n\t * @private\n\t * @param {sap.ui.base.MenuItem$PressEvent} event - Event object.\n\t */\n\tprivate async _rejectRecommendation(event: MenuItem$PressEvent) {\n\t\tthis.setBusy(true);\n\t\ttry {\n\t\t\tconst source = event.getSource<MenuItem>();\n\t\t\tconst app = source.getParent() as App;\n\t\t\tconst title = app.getTitle();\n\t\t\tconst recommendedVisualizations = await this.appManagerInstance.getRecommendedVisualizations();\n\t\t\tconst visualization = recommendedVisualizations.find((viz) => viz.url === app.getUrl());\n\t\t\tconst fioriId = visualization?.fioriId;\n\t\t\tif (fioriId) {\n\t\t\t\tconst rejectPayload = {\n\t\t\t\t\tAppId: fioriId,\n\t\t\t\t\tDecision: 1\n\t\t\t\t};\n\t\t\t\tawait HttpHelper.Post(CONSTANTS.USER_PREFERENCE_SRVC_URL, rejectPayload);\n\t\t\t\tawait this.refresh();\n\t\t\t\tconst message = this._i18nBundle.getText(\"rejectRecommendationMsg\", [title]) as string;\n\t\t\t\tMessageToast.show(message);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t} finally {\n\t\t\tthis.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Checks if recommendation is enabled based on recommendation feature toggle and user personalization.\n\t * @private\n\t * @returns {Boolean} - Returns true if recommendation is enabled otherwise false.\n\t */\n\tprivate async _isRecommendationEnabled() {\n\t\tconst personalisation = await this.getPersonalization();\n\t\treturn personalisation?.showRecommendation ?? true;\n\t}\n\n\t/**\n\t * Show recommendation tab if recommendation is enabled\n\t * @private\n\t */\n\tpublic async _enableRecommendationTab() {\n\t\tconst isSupported = await this._isRecommendationEnabled();\n\t\tthis.setSupported(isSupported);\n\t\tthis.fireSupported({ isSupported });\n\t}\n\n\t/**\n\t * Generates illustrated message for recommended 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//overrride the default illustrated message, title, description and add additional content\n\t\tillustratedMessage.setIllustrationSize(IllustratedMessageSize.ExtraSmall);\n\t\tillustratedMessage.setIllustrationType(IllustratedMessageType.NoData);\n\t\tillustratedMessage.setTitle(this._i18nBundle.getText(\"noRecommendationsTitle\"));\n\t\tillustratedMessage.setDescription(this._i18nBundle.getText(\"noRecommendationsDescription\"));\n\t\tillustratedMessage.addAdditionalContent(\n\t\t\tnew Button({\n\t\t\t\ttext: this._i18nBundle.getText(\"settings\"),\n\t\t\t\ttooltip: this._i18nBundle.getText(\"settings\"),\n\t\t\t\tpress: () => (this.getParent() as BaseContainer)?._getLayout()?.openSettingsDialog(SETTINGS_PANELS_KEYS.ADVANCED),\n\t\t\t\ttype: \"Emphasized\"\n\t\t\t})\n\t\t);\n\t\tillustratedMessage.addStyleClass(\"sapUiTinyMarginTop\");\n\t\treturn illustratedMessage;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -48,8 +48,8 @@ const CONSTANTS = {
48
48
  * @version 0.0.1
49
49
  * @since 1.128.0
50
50
  *
51
- * @internal
52
- * @public
51
+ * @private
52
+ * @ui5-restricted ux.eng.s4producthomes1
53
53
  *
54
54
  * @alias sap.cux.home.RecommendedAppPanel
55
55
  */
@@ -416,11 +416,15 @@ export default class RecommendedAppPanel extends BaseAppPersPanel {
416
416
  };
417
417
  });
418
418
  //convert apps objects array to apps instances
419
- const recommendedApps = this.generateApps(recommendedVisualizations);
420
- this.setApps(recommendedApps);
419
+ const apps = this.generateApps(recommendedVisualizations);
420
+ let tiles: GenericTile[] = [];
421
+ tiles = this.fetchTileVisualization(tiles);
422
+ // calling prepareAppsBeforeLoad fn to filter out the recommended apps from deprecated ones.
423
+ await this.prepareAppsBeforeLoad(apps, tiles);
424
+ this.setApps(apps);
421
425
  const addToFavouritesMenuItem = Element.getElementById(`${this.getId()}-addtofavouritesmenuitem`) as MenuItem;
422
426
  if (addToFavouritesMenuItem) {
423
- addToFavouritesMenuItem.setVisible(recommendedApps.length > 0);
427
+ addToFavouritesMenuItem.setVisible(apps.length > 0);
424
428
  }
425
429
  }
426
430
 
@@ -534,7 +538,7 @@ export default class RecommendedAppPanel extends BaseAppPersPanel {
534
538
  protected generateIllustratedMessage() {
535
539
  const illustratedMessage = super.generateIllustratedMessage();
536
540
  //overrride the default illustrated message, title, description and add additional content
537
- illustratedMessage.setIllustrationSize(IllustratedMessageSize.Small);
541
+ illustratedMessage.setIllustrationSize(IllustratedMessageSize.ExtraSmall);
538
542
  illustratedMessage.setIllustrationType(IllustratedMessageType.NoData);
539
543
  illustratedMessage.setTitle(this._i18nBundle.getText("noRecommendationsTitle"));
540
544
  illustratedMessage.setDescription(this._i18nBundle.getText("noRecommendationsDescription"));
@@ -546,6 +550,7 @@ export default class RecommendedAppPanel extends BaseAppPersPanel {
546
550
  type: "Emphasized"
547
551
  })
548
552
  );
553
+ illustratedMessage.addStyleClass("sapUiTinyMarginTop");
549
554
  return illustratedMessage;
550
555
  }
551
556
  }
@@ -0,0 +1,48 @@
1
+ declare module "sap/cux/home/SideBySideIconTabFilter" {
2
+ /*!
3
+ * SAP UI development toolkit for HTML5 (SAPUI5)
4
+ * * (c) Copyright 2009-2025 SAP SE. All rights reserved
5
+ */
6
+ import IconTabFilter from "sap/m/IconTabFilter";
7
+ import { MetadataOptions } from "sap/ui/base/ManagedObject";
8
+ import Control from "sap/ui/core/Control";
9
+ import { $SideBySideIconTabFilterSettings } from "sap/cux/home/SideBySideIconTabFilter";
10
+ /**
11
+ *
12
+ * Custom IconTabFilter for SideBySide orientation in the BaseContainer.
13
+ *
14
+ * @extends sap.m.IconTabFilter
15
+ *
16
+ * @author SAP SE
17
+ * @version 0.0.1
18
+ * @since 1.139.0
19
+ *
20
+ * @private
21
+ *
22
+ * @alias sap.cux.home.SideBySideIconTabFilter
23
+ */
24
+ export default class SideBySideIconTabFilter extends IconTabFilter {
25
+ constructor(id?: string | $SideBySideIconTabFilterSettings);
26
+ constructor(id?: string, settings?: $SideBySideIconTabFilterSettings);
27
+ static readonly renderer = "sap.m.IconTabFilterRenderer";
28
+ static readonly metadata: MetadataOptions;
29
+ /**
30
+ * Returns the content controls from the associated panel.
31
+ *
32
+ * @public
33
+ * @override
34
+ * @returns {Control[]} An array of controls contained in the associated panel, or an empty array if no panel is associated.
35
+ */
36
+ getContent(): Control[];
37
+ /**
38
+ * Adds a control to the content aggregation of the associated panel.
39
+ *
40
+ * @public
41
+ * @override
42
+ * @param {Control} content - The control to add to the panel's content.
43
+ * @returns {this} The instance of SideBySideIconTabFilter, to allow method chaining.
44
+ */
45
+ addContent(content: Control): this;
46
+ }
47
+ }
48
+ //# sourceMappingURL=SideBySideIconTabFilter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SideBySideIconTabFilter.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/SideBySideIconTabFilter.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,sCAAsC,CAAC;IACtD;;;OAGG;IAEH,OAAO,aAAa,MAAM,qBAAqB,CAAC;IAChD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;IAC5D,OAAO,OAAO,MAAM,qBAAqB,CAAC;IAE1C,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;IAGxF;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,aAAa;oBACrD,EAAE,CAAC,EAAE,MAAM,GAAG,gCAAgC;oBAC9C,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gCAAgC;QAWpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,iCAAiC;QACzD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QAgBF;;;;;;WAMG;QACI,UAAU,IAAI,OAAO,EAAE;QAK9B;;;;;;;WAOG;QACI,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;KAKzC;CAEA"}
@@ -0,0 +1,33 @@
1
+ declare module "sap/cux/home/SideBySideIconTabFilter" {
2
+ /*!
3
+ * SAP UI development toolkit for HTML5 (SAPUI5)
4
+ * * (c) Copyright 2009-2025 SAP SE. All rights reserved
5
+ */
6
+ import BasePanel from "sap/cux/home/BasePanel";
7
+ import { $IconTabFilterSettings } from "sap/m/IconTabFilter";
8
+
9
+ /**
10
+ * Interface defining the settings object used in constructor calls
11
+ */
12
+ interface $SideBySideIconTabFilterSettings extends $IconTabFilterSettings {
13
+ panel?: BasePanel | string;
14
+ }
15
+
16
+ export default interface SideBySideIconTabFilter {
17
+
18
+ // association: panel
19
+
20
+ /**
21
+ * ID of the element which is the current target of the association "panel", or "null".
22
+ */
23
+ getPanel(): string;
24
+
25
+ /**
26
+ * Sets the associated panel.
27
+ *
28
+ * @param panel ID of an element which becomes the new target of this "panel" association; alternatively, an element instance may be given
29
+ * @returns Reference to "this" in order to allow method chaining
30
+ */
31
+ setPanel(panel?: string | BasePanel): this;
32
+ }
33
+ }
@@ -0,0 +1,83 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
+ */
5
+ sap.ui.define(["sap/m/IconTabFilter", "sap/ui/core/Element"], function (IconTabFilter, UI5Element) {
6
+ "use strict";
7
+
8
+ /**
9
+ *
10
+ * Custom IconTabFilter for SideBySide orientation in the BaseContainer.
11
+ *
12
+ * @extends sap.m.IconTabFilter
13
+ *
14
+ * @author SAP SE
15
+ * @version 0.0.1
16
+ * @since 1.139.0
17
+ *
18
+ * @private
19
+ *
20
+ * @alias sap.cux.home.SideBySideIconTabFilter
21
+ */
22
+ const SideBySideIconTabFilter = IconTabFilter.extend("sap.cux.home.SideBySideIconTabFilter", {
23
+ metadata: {
24
+ library: "sap.cux.home",
25
+ associations: {
26
+ panel: {
27
+ type: "sap.cux.home.BasePanel",
28
+ multiple: false,
29
+ singularName: "panel"
30
+ }
31
+ }
32
+ },
33
+ renderer: "sap.m.IconTabFilterRenderer",
34
+ /**
35
+ * Constructor for a new SideBySideIconTabFilter.
36
+ *
37
+ * @param {string} [id] ID for the new element, generated automatically if an ID is not provided
38
+ * @param {object} [settings] Initial settings for the new control
39
+ */
40
+ constructor: function _constructor(id, settings) {
41
+ IconTabFilter.prototype.constructor.call(this, id, settings);
42
+ },
43
+ /**
44
+ * Sets the associated panel for this tab filter and updates the key and text properties
45
+ * based on the panel's key and title.
46
+ *
47
+ * @param {BasePanel} panel - The panel to associate with this tab filter.
48
+ * @returns {this} This to allow method chaining.
49
+ */
50
+ setPanel: function _setPanel(panel) {
51
+ this.setProperty("key", panel.getProperty("key"), true);
52
+ this.setProperty("text", panel.getProperty("title"), true);
53
+ this.setAssociation("panel", panel);
54
+ return this;
55
+ },
56
+ /**
57
+ * Returns the content controls from the associated panel.
58
+ *
59
+ * @public
60
+ * @override
61
+ * @returns {Control[]} An array of controls contained in the associated panel, or an empty array if no panel is associated.
62
+ */
63
+ getContent: function _getContent() {
64
+ const panel = UI5Element.getElementById(this.getPanel());
65
+ return panel?.getContent() || [];
66
+ },
67
+ /**
68
+ * Adds a control to the content aggregation of the associated panel.
69
+ *
70
+ * @public
71
+ * @override
72
+ * @param {Control} content - The control to add to the panel's content.
73
+ * @returns {this} The instance of SideBySideIconTabFilter, to allow method chaining.
74
+ */
75
+ addContent: function _addContent(content) {
76
+ const panel = UI5Element.getElementById(this.getPanel());
77
+ panel?.addContent(content);
78
+ return this;
79
+ }
80
+ });
81
+ return SideBySideIconTabFilter;
82
+ });
83
+ //# sourceMappingURL=SideBySideIconTabFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SideBySideIconTabFilter.js","names":["sap","ui","define","IconTabFilter","UI5Element","SideBySideIconTabFilter","extend","metadata","library","associations","panel","type","multiple","singularName","renderer","constructor","_constructor","id","settings","IconTabFilter.prototype.constructor.call","setPanel","_setPanel","setProperty","getProperty","setAssociation","getContent","_getContent","getElementById","getPanel","addContent","_addContent","content"],"sources":["SideBySideIconTabFilter.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport IconTabFilter from \"sap/m/IconTabFilter\";\nimport { MetadataOptions } from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport BasePanel from \"./BasePanel\";\nimport { $SideBySideIconTabFilterSettings } from \"./SideBySideIconTabFilter\";\nimport UI5Element from \"sap/ui/core/Element\";\n\n/**\n *\n * Custom IconTabFilter for SideBySide orientation in the BaseContainer.\n *\n * @extends sap.m.IconTabFilter\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.139.0\n *\n * @private\n *\n * @alias sap.cux.home.SideBySideIconTabFilter\n */\nexport default class SideBySideIconTabFilter extends IconTabFilter {\n\tconstructor(id?: string | $SideBySideIconTabFilterSettings);\n\tconstructor(id?: string, settings?: $SideBySideIconTabFilterSettings);\n\t/**\n\t * Constructor for a new SideBySideIconTabFilter.\n\t *\n\t * @param {string} [id] ID for the new element, 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?: $SideBySideIconTabFilterSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly renderer = \"sap.m.IconTabFilterRenderer\";\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tassociations: {\n\t\t\tpanel: { type: \"sap.cux.home.BasePanel\", multiple: false, singularName: \"panel\" }\n\t\t}\n\t};\n\n\t/**\n\t * Sets the associated panel for this tab filter and updates the key and text properties\n\t * based on the panel's key and title.\n\t *\n\t * @param {BasePanel} panel - The panel to associate with this tab filter.\n\t * @returns {this} This to allow method chaining.\n\t */\n\tpublic setPanel(panel: BasePanel): this {\n\t\tthis.setProperty(\"key\", panel.getProperty(\"key\"), true);\n\t\tthis.setProperty(\"text\", panel.getProperty(\"title\"), true);\n\t\tthis.setAssociation(\"panel\", panel);\n\t\treturn this;\n\t}\n\n\t/**\n\t * Returns the content controls from the associated panel.\n\t *\n\t * @public\n\t * @override\n\t * @returns {Control[]} An array of controls contained in the associated panel, or an empty array if no panel is associated.\n\t */\n\tpublic getContent(): Control[] {\n\t\tconst panel = UI5Element.getElementById(this.getPanel()) as BasePanel;\n\t\treturn panel?.getContent() || [];\n\t}\n\n\t/**\n\t * Adds a control to the content aggregation of the associated panel.\n\t *\n\t * @public\n\t * @override\n\t * @param {Control} content - The control to add to the panel's content.\n\t * @returns {this} The instance of SideBySideIconTabFilter, to allow method chaining.\n\t */\n\tpublic addContent(content: Control): this {\n\t\tconst panel = UI5Element.getElementById(this.getPanel()) as BasePanel;\n\t\tpanel?.addContent(content);\n\t\treturn this;\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,2DAAAC,aAAA,EAAAC,UAAA;EAAA;;EAYA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAbA,MAcqBC,uBAAuB,GAASF,aAAa,CAAAG,MAAA;IAcjDC,QAAQ,EAAoB;MAC3CC,OAAO,EAAE,cAAc;MACvBC,YAAY,EAAE;QACbC,KAAK,EAAE;UAAEC,IAAI,EAAE,wBAAwB;UAAEC,QAAQ,EAAE,KAAK;UAAEC,YAAY,EAAE;QAAQ;MACjF;IACD,CAAC;IANeC,QAAQ,EAAG,6BAA6B;IAVxD;AACD;AACA;AACA;AACA;AACA;IACQC,WAAW,WAAAC,aAACC,EAAW,EAAEC,QAA2C,EAAE;MAC5EC,wCAAA,OAAMF,EAAE,EAAEC,QAAQ;IACnB,CAAC;IAUD;AACD;AACA;AACA;AACA;AACA;AACA;IACQE,QAAQ,WAAAC,UAACX,KAAgB,EAAQ;MACvC,IAAI,CAACY,WAAW,CAAC,KAAK,EAAEZ,KAAK,CAACa,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;MACvD,IAAI,CAACD,WAAW,CAAC,MAAM,EAAEZ,KAAK,CAACa,WAAW,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;MAC1D,IAAI,CAACC,cAAc,CAAC,OAAO,EAAEd,KAAK,CAAC;MACnC,OAAO,IAAI;IACZ,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACQe,UAAU,WAAAC,YAAA,EAAc;MAC9B,MAAMhB,KAAK,GAAGN,UAAU,CAACuB,cAAc,CAAC,IAAI,CAACC,QAAQ,CAAC,CAAC,CAAc;MACrE,OAAOlB,KAAK,EAAEe,UAAU,CAAC,CAAC,IAAI,EAAE;IACjC,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;IACQI,UAAU,WAAAC,YAACC,OAAgB,EAAQ;MACzC,MAAMrB,KAAK,GAAGN,UAAU,CAACuB,cAAc,CAAC,IAAI,CAACC,QAAQ,CAAC,CAAC,CAAc;MACrElB,KAAK,EAAEmB,UAAU,CAACE,OAAO,CAAC;MAC1B,OAAO,IAAI;IACZ;EAAC;EAAA,OA3DmB1B,uBAAuB;AAAA","ignoreList":[]}
@@ -0,0 +1,87 @@
1
+ /*!
2
+ * SAP UI development toolkit for HTML5 (SAPUI5)
3
+ * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
+ */
5
+
6
+ import IconTabFilter from "sap/m/IconTabFilter";
7
+ import { MetadataOptions } from "sap/ui/base/ManagedObject";
8
+ import Control from "sap/ui/core/Control";
9
+ import BasePanel from "./BasePanel";
10
+ import { $SideBySideIconTabFilterSettings } from "./SideBySideIconTabFilter";
11
+ import UI5Element from "sap/ui/core/Element";
12
+
13
+ /**
14
+ *
15
+ * Custom IconTabFilter for SideBySide orientation in the BaseContainer.
16
+ *
17
+ * @extends sap.m.IconTabFilter
18
+ *
19
+ * @author SAP SE
20
+ * @version 0.0.1
21
+ * @since 1.139.0
22
+ *
23
+ * @private
24
+ *
25
+ * @alias sap.cux.home.SideBySideIconTabFilter
26
+ */
27
+ export default class SideBySideIconTabFilter extends IconTabFilter {
28
+ constructor(id?: string | $SideBySideIconTabFilterSettings);
29
+ constructor(id?: string, settings?: $SideBySideIconTabFilterSettings);
30
+ /**
31
+ * Constructor for a new SideBySideIconTabFilter.
32
+ *
33
+ * @param {string} [id] ID for the new element, generated automatically if an ID is not provided
34
+ * @param {object} [settings] Initial settings for the new control
35
+ */
36
+ public constructor(id?: string, settings?: $SideBySideIconTabFilterSettings) {
37
+ super(id, settings);
38
+ }
39
+
40
+ static readonly renderer = "sap.m.IconTabFilterRenderer";
41
+ static readonly metadata: MetadataOptions = {
42
+ library: "sap.cux.home",
43
+ associations: {
44
+ panel: { type: "sap.cux.home.BasePanel", multiple: false, singularName: "panel" }
45
+ }
46
+ };
47
+
48
+ /**
49
+ * Sets the associated panel for this tab filter and updates the key and text properties
50
+ * based on the panel's key and title.
51
+ *
52
+ * @param {BasePanel} panel - The panel to associate with this tab filter.
53
+ * @returns {this} This to allow method chaining.
54
+ */
55
+ public setPanel(panel: BasePanel): this {
56
+ this.setProperty("key", panel.getProperty("key"), true);
57
+ this.setProperty("text", panel.getProperty("title"), true);
58
+ this.setAssociation("panel", panel);
59
+ return this;
60
+ }
61
+
62
+ /**
63
+ * Returns the content controls from the associated panel.
64
+ *
65
+ * @public
66
+ * @override
67
+ * @returns {Control[]} An array of controls contained in the associated panel, or an empty array if no panel is associated.
68
+ */
69
+ public getContent(): Control[] {
70
+ const panel = UI5Element.getElementById(this.getPanel()) as BasePanel;
71
+ return panel?.getContent() || [];
72
+ }
73
+
74
+ /**
75
+ * Adds a control to the content aggregation of the associated panel.
76
+ *
77
+ * @public
78
+ * @override
79
+ * @param {Control} content - The control to add to the panel's content.
80
+ * @returns {this} The instance of SideBySideIconTabFilter, to allow method chaining.
81
+ */
82
+ public addContent(content: Control): this {
83
+ const panel = UI5Element.getElementById(this.getPanel()) as BasePanel;
84
+ panel?.addContent(content);
85
+ return this;
86
+ }
87
+ }
@@ -30,8 +30,8 @@ declare module "sap/cux/home/SituationPanel" {
30
30
  * @version 0.0.1
31
31
  * @since 1.121
32
32
  *
33
- * @internal
34
- * @public
33
+ * @private
34
+ * @ui5-restricted ux.eng.s4producthomes1
35
35
  *
36
36
  * @alias sap.cux.home.SituationPanel
37
37
  */
@@ -36,8 +36,8 @@ sap.ui.define(["sap/base/i18n/Localization", "sap/m/GenericTile", "sap/m/Text",
36
36
  * @version 0.0.1
37
37
  * @since 1.121
38
38
  *
39
- * @internal
40
- * @public
39
+ * @private
40
+ * @ui5-restricted ux.eng.s4producthomes1
41
41
  *
42
42
  * @alias sap.cux.home.SituationPanel
43
43
  */