@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
@@ -1 +1 @@
1
- {"version":3,"file":"InsightsTilesSettingsPanel.js","names":["sap","ui","define","Log","Button","Column","ColumnListItem","FlexBox","HBox","MessageBox","MessageToast","ObjectIdentifier","ScrollContainer","SearchField","Switch","Table","Text","Title","VBox","UI5Element","Icon","__BaseSettingsPanel","___TilesPanel","___utils_Accessibility","__AppManager","___utils_Constants","___utils_DragDropUtils","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BaseSettingsPanel","_finallyRethrows","finalizer","bind","DisplayFormat","getInvisibleText","AppManager","MYHOME_PAGE_ID","SETTINGS_PANELS_KEYS","focusDraggedItem","InsightsTilesSettingsPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","_controlMap","Map","setProperty","INSIGHTS_TILES","_i18nBundle","getText","appManagerInstance","getInstance","_allInsightsApps","_wrapperId","getId","set","alignItems","justifyContent","height","width","direction","addStyleClass","addAggregation","get","_showMessageStrip","_showToolbar","_showTilesList","attachPanelNavigated","setValue","fetchInsightApps","insightsApps","setText","length","_createTableRows","oMessageStripVBox","addItem","text","_getWrapperFlexBox","titleStyle","oInvisibleTitleText","liveChange","oEvent","_onTilesSearch","ariaLabelledBy","titleContainer","toolbarContainer","items","event","sSearchQuery","getSource","getValue","toLowerCase","filteredTiles","filter","app","visualization","title","includes","_createTableWithContainer","table","columns","hAlign","invisibleDragDropText","addDragDropConfigTo","_handleTilesDrop","scrollContainer","vertical","horizontal","content","containerVBox","containerFlexBox","_this","_temp2","iDropItemIndex","oDragItem","getParameter","draggedControl","iDragItemIndex","getParent","indexOfItem","oDropItem","droppedControl","oDragItemPersConfig","data","oDropItemPersConfig","_temp","setBusy","moveConfigs","pageId","sourceSectionIndex","sectionIndex","sourceVisualizationIndex","visualizationIndex","targetSectionIndex","targetVisualizationIndex","Promise","resolve","moveVisualization","_this$appManagerInsta","_getTilePanel","refreshData","reject","removeAllItems","forEach","filteredTile","index","_createColumnListItem","insightsApp","id","existingControl","getElementById","destroy","columnListItem","type","addCell","src","aSupportedDisplayFormats","supportedDisplayFormats","convertSwitchContainer","isCount","isSmartBusinessTile","indexOf","Standard","StandardWide","wrapping","state","displayFormatHint","change","_onConvertTilePress","customTextOn","customTextOff","tooltip","deleteBtn","icon","press","_onDeleteApp","buttonsWrapper","subtitle","persConfig","_this2","updateConfigs","oVisualizationData","updateVisualizations","show","styleClass","QUESTION","actions","Action","CANCEL","emphasizedAction","onClose","action","_handleDeleteApp","_this3","_temp4","_temp3","removeVisualizations","sectionId","vizIds","_this3$appManagerInst","err","error","_wasThrown","_result","_getPanel"],"sources":["InsightsTilesSettingsPanel.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 Button from \"sap/m/Button\";\nimport Column from \"sap/m/Column\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport FlexBox from \"sap/m/FlexBox\";\nimport HBox from \"sap/m/HBox\";\nimport MessageBox from \"sap/m/MessageBox\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport ObjectIdentifier from \"sap/m/ObjectIdentifier\";\nimport ScrollContainer from \"sap/m/ScrollContainer\";\nimport SearchField from \"sap/m/SearchField\";\nimport Switch from \"sap/m/Switch\";\nimport Table from \"sap/m/Table\";\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 Control from \"sap/ui/core/Control\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport Icon from \"sap/ui/core/Icon\";\nimport { DropInfo$DropEvent } from \"sap/ui/core/dnd/DropInfo\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport TilesPanel, { DisplayFormat } from \"./TilesPanel\";\nimport { ICustomVisualization, IPersConfig, ISectionAndVisualization } from \"./interface/AppsInterface\";\nimport { getInvisibleText } from \"./utils/Accessibility\";\nimport AppManager from \"./utils/AppManager\";\nimport { MYHOME_PAGE_ID, SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { focusDraggedItem } from \"./utils/DragDropUtils\";\n\ninterface IDragEvent {\n\tdraggedControl: ColumnListItem;\n\tdroppedControl: ColumnListItem;\n}\n\n/**\n *\n * Class for My Home Insights Tiles Settings Panel.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.InsightsTilesSettingsPanel\n */\nexport default class InsightsTilesSettingsPanel extends BaseSettingsPanel {\n\tprivate _wrapperId!: string;\n\tprivate _controlMap!: Map<string, Control | Element>;\n\tprivate _allInsightsApps!: ICustomVisualization[];\n\tprivate appManagerInstance!: AppManager;\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\t\tthis._controlMap = new Map();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.INSIGHTS_TILES);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsTiles\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://manager-insight\");\n\n\t\t//Fetch Data\n\t\tthis.appManagerInstance = AppManager.getInstance();\n\t\tthis._allInsightsApps = [];\n\n\t\t//setup Container & content Aggregation\n\t\tthis._wrapperId = `${this.getId()}-tilesSettingsWrapper`;\n\t\tthis._controlMap.set(\n\t\t\tthis._wrapperId,\n\t\t\tnew FlexBox(this._wrapperId, {\n\t\t\t\talignItems: \"Start\",\n\t\t\t\tjustifyContent: \"Start\",\n\t\t\t\theight: \"100%\",\n\t\t\t\twidth: \"100%\",\n\t\t\t\tdirection: \"Column\"\n\t\t\t}).addStyleClass(\"flexContainerCards\")\n\t\t);\n\t\tthis.addAggregation(\"content\", this._controlMap.get(this._wrapperId) as FlexBox);\n\n\t\t//setup content for the settings panel\n\t\tthis._showMessageStrip();\n\t\tthis._showToolbar();\n\t\tthis._showTilesList();\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated(() => {\n\t\t\t(this._controlMap.get(`${this._wrapperId}--searchField`) as SearchField).setValue(\"\");\n\t\t\tvoid this.appManagerInstance.fetchInsightApps(true, this._i18nBundle.getText(\"insights\") as string).then((insightsApps) => {\n\t\t\t\tthis._allInsightsApps = insightsApps;\n\t\t\t\t(this._controlMap.get(`${this._wrapperId}--title`) as Title).setText(\n\t\t\t\t\t`${this._i18nBundle.getText(\"insightsTilesTitle\")} (${this._allInsightsApps.length})`\n\t\t\t\t);\n\t\t\t\tthis._createTableRows(this._allInsightsApps);\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Add the Message Strip to the wrapper FlexBox.\n\t *\n\t * @private\n\t */\n\n\tprivate _showMessageStrip() {\n\t\tconst oMessageStripVBox = new VBox(`${this._wrapperId}--msgStripContainer`, {\n\t\t\twidth: \"calc(100% - 2rem)\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\toMessageStripVBox.addItem(\n\t\t\tnew Text(`${this._wrapperId}--msgStripText`, {\n\t\t\t\ttext: this._i18nBundle.getText(\"insightAppsTabText\")\n\t\t\t})\n\t\t);\n\t\tthis._getWrapperFlexBox().addItem(oMessageStripVBox);\n\t}\n\n\t/**\n\t * Add the Header ToolBar to the wrapper FlexBox.\n\t *\n\t * @private\n\t */\n\tprivate _showToolbar() {\n\t\t// To address an accessibility issue, we adjusted the font size via a custom class (`tilesFontChange`)\n\t\t// while retaining the semantic heading level as H3 to preserve hierarchy structure.\n\t\t// This ensures the title remains visually balanced without compromising screen reader navigation.\n\t\tthis._controlMap.set(\n\t\t\t`${this._wrapperId}--title`,\n\t\t\tnew Title(`${this._wrapperId}--title`, {\n\t\t\t\ttext: `${this._i18nBundle.getText(\"insightsTilesTitle\")} (${this._allInsightsApps.length})`,\n\t\t\t\ttitleStyle: \"H3\",\n\t\t\t\twidth: \"100%\"\n\t\t\t}).addStyleClass(\"tilesFontChange\")\n\t\t);\n\t\tconst oInvisibleTitleText = getInvisibleText(`${this.getId()}--TileTitleText`, this._i18nBundle.getText(\"insightsTiles\"));\n\t\tthis._controlMap.set(\n\t\t\t`${this._wrapperId}--searchField`,\n\t\t\tnew SearchField(`${this._wrapperId}--pagesListSearch`, {\n\t\t\t\tliveChange: (oEvent) => this._onTilesSearch(oEvent),\n\t\t\t\twidth: \"100%\",\n\t\t\t\tariaLabelledBy: [oInvisibleTitleText.getId(), this._wrapperId + \"--msgStripText\", this._wrapperId + \"--title\"]\n\t\t\t}).addStyleClass(\"sapUiTinyMarginTop\")\n\t\t);\n\n\t\tconst titleContainer = new HBox(`${this._wrapperId}--titleContainer`, {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\twidth: \"100%\"\n\t\t});\n\t\ttitleContainer.addItem(this._controlMap.get(`${this._wrapperId}--title`) as Title);\n\t\ttitleContainer.addItem(oInvisibleTitleText);\n\t\tconst toolbarContainer = new VBox(`${this._wrapperId}--toolbarContainer`, {\n\t\t\twidth: \"calc(100% - 2rem)\",\n\t\t\titems: [titleContainer, this._controlMap.get(`${this._wrapperId}--searchField`) as SearchField]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\tthis._getWrapperFlexBox().addItem(toolbarContainer);\n\t}\n\n\t/**\n\t * Handles Search Field change\n\t * @private\n\t */\n\tprivate _onTilesSearch(event: Event) {\n\t\tconst sSearchQuery = event.getSource<SearchField>().getValue().toLowerCase();\n\t\tconst filteredTiles = this._allInsightsApps.filter((app) => app.visualization?.title?.toLowerCase().includes(sSearchQuery));\n\t\tthis._createTableRows(filteredTiles);\n\t}\n\n\t/**\n\t * Adds Tiles List Table to Wrapper FlexBox\n\t * @private\n\t */\n\tprivate _showTilesList() {\n\t\tthis._createTableWithContainer();\n\t\tthis._createTableRows(this._allInsightsApps);\n\t}\n\n\t/**\n\t * Creates Table to Render Tiles List\n\t * @private\n\t */\n\tprivate _createTableWithContainer() {\n\t\tconst table = new Table(`${this._wrapperId}-table`, {\n\t\t\tcolumns: [\n\t\t\t\tnew Column(`${this._wrapperId}-table-dndIcon`, {\n\t\t\t\t\thAlign: \"Center\",\n\t\t\t\t\twidth: \"6%\"\n\t\t\t\t}),\n\t\t\t\tnew Column(`${this._wrapperId}-table-title`, {\n\t\t\t\t\twidth: \"94%\"\n\t\t\t\t})\n\t\t\t]\n\t\t}).addStyleClass(\"sapContrastPlus\");\n\t\tconst invisibleDragDropText = getInvisibleText(`${this._wrapperId}-dndAria`, this._i18nBundle.getText(\"keyPressAriaText\"));\n\t\tthis.addDragDropConfigTo(table, (event) => void this._handleTilesDrop(event));\n\t\tthis._controlMap.set(`${this._wrapperId}-table`, table);\n\t\tconst scrollContainer = new ScrollContainer(`${this._wrapperId}-scrollContainer`, {\n\t\t\tvertical: true,\n\t\t\thorizontal: false,\n\t\t\theight: \"100%\",\n\t\t\twidth: \"100%\",\n\t\t\tcontent: [this._controlMap.get(`${this._wrapperId}-table`) as Table]\n\t\t});\n\t\tconst containerVBox = new VBox(`${this._wrapperId}-containerVBox`, {\n\t\t\theight: \"100%\",\n\t\t\twidth: \"100%\",\n\t\t\tjustifyContent: \"Start\",\n\t\t\tdirection: \"Column\",\n\t\t\titems: [invisibleDragDropText, scrollContainer]\n\t\t});\n\t\tconst containerFlexBox = new FlexBox(`${this._wrapperId}-containerFlexBox`, {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"Start\",\n\t\t\theight: \"100%\",\n\t\t\twidth: \"calc(100% - 2rem)\",\n\t\t\tdirection: \"Row\",\n\t\t\titems: [containerVBox]\n\t\t}).addStyleClass(\"sapUiSmallMarginBegin sapUiSmallMarginTop flexContainerCards\");\n\n\t\tthis._getWrapperFlexBox().addItem(containerFlexBox);\n\t}\n\n\t/**\n\t * Handles Drag Drop of Tiles\n\t * @private\n\t */\n\tprivate async _handleTilesDrop(oEvent: DropInfo$DropEvent | IDragEvent) {\n\t\tconst oDragItem = ((oEvent as DropInfo$DropEvent).getParameter?.(\"draggedControl\") ||\n\t\t\t\t(oEvent as IDragEvent).draggedControl) as ColumnListItem,\n\t\t\tiDragItemIndex = (oDragItem.getParent() as Table)?.indexOfItem(oDragItem),\n\t\t\toDropItem = ((oEvent as DropInfo$DropEvent).getParameter?.(\"droppedControl\") ||\n\t\t\t\t(oEvent as IDragEvent).droppedControl) as ColumnListItem,\n\t\t\tiDropItemIndex = (oDragItem.getParent() as Table)?.indexOfItem(oDropItem),\n\t\t\toDragItemPersConfig = oDragItem.data(\"persConfig\") as IPersConfig,\n\t\t\toDropItemPersConfig = oDropItem.data(\"persConfig\") as IPersConfig,\n\t\t\ttable = this._controlMap.get(`${this._wrapperId}-table`) as Table;\n\t\tif (iDragItemIndex !== iDropItemIndex) {\n\t\t\tthis._getWrapperFlexBox().setBusy(true);\n\t\t\tconst moveConfigs = {\n\t\t\t\tpageId: MYHOME_PAGE_ID,\n\t\t\t\tsourceSectionIndex: oDragItemPersConfig.sectionIndex as number,\n\t\t\t\tsourceVisualizationIndex: oDragItemPersConfig.visualizationIndex as number,\n\t\t\t\ttargetSectionIndex: oDropItemPersConfig.sectionIndex as number,\n\t\t\t\ttargetVisualizationIndex: oDropItemPersConfig.visualizationIndex as number\n\t\t\t};\n\t\t\tawait this.appManagerInstance.moveVisualization(moveConfigs);\n\t\t\tthis._allInsightsApps = await this.appManagerInstance.fetchInsightApps(true, this._i18nBundle.getText(\"insights\") as string);\n\t\t\tthis._createTableRows(this._allInsightsApps);\n\t\t\tawait this._getTilePanel().refreshData();\n\t\t\tthis._getWrapperFlexBox().setBusy(false);\n\t\t}\n\t\tfocusDraggedItem(table, iDropItemIndex);\n\t}\n\n\t/**\n\t * Create Table Rows\n\t * @private\n\t */\n\tprivate _createTableRows(insightsApps: ICustomVisualization[]) {\n\t\tconst table = this._controlMap.get(`${this._wrapperId}-table`) as Table;\n\t\ttable.removeAllItems();\n\t\tlet filteredTiles = insightsApps;\n\t\tconst sSearchQuery = (this._controlMap.get(`${this._wrapperId}--searchField`) as SearchField).getValue();\n\t\tif (sSearchQuery) {\n\t\t\tfilteredTiles = this._allInsightsApps.filter((app) => app.visualization?.title?.toLowerCase().includes(sSearchQuery));\n\t\t}\n\t\tfilteredTiles.forEach((filteredTile, index) => {\n\t\t\ttable.addItem(this._createColumnListItem(filteredTile, index));\n\t\t});\n\t}\n\n\t/**\n\t * Create ColumnListItem for each Insights App\n\t * @private\n\t */\n\tprivate _createColumnListItem(insightsApp: ICustomVisualization, index: number): ColumnListItem {\n\t\tconst id = `insightsTiles-${index}-listItem`;\n\t\tconst existingControl = UI5Element.getElementById(id);\n\t\tif (existingControl) {\n\t\t\texistingControl.destroy();\n\t\t}\n\t\t// Create Column List Item\n\t\tconst columnListItem = new ColumnListItem({\n\t\t\tid,\n\t\t\ttype: \"Inactive\",\n\t\t\tariaLabelledBy: [id, `${this._wrapperId}-dndAria`]\n\t\t}).addStyleClass(\"insightsListItem insightsListMargin manageSectionsTable\");\n\n\t\t// Add first cell as Drag & Drop Icon\n\t\tcolumnListItem.addCell(\n\t\t\tnew HBox(`${id}-DndHBox`, {\n\t\t\t\titems: [\n\t\t\t\t\tnew Icon(`${id}-DndIcon`, {\n\t\t\t\t\t\tsrc: \"sap-icon://BusinessSuiteInAppSymbols/icon-grip\"\n\t\t\t\t\t}).addStyleClass(\"tilesDndIcon\")\n\t\t\t\t]\n\t\t\t})\n\t\t);\n\n\t\t//Create Convert Switch\n\t\tconst aSupportedDisplayFormats = insightsApp.visualization?.supportedDisplayFormats || \"\";\n\t\tlet convertSwitchContainer;\n\t\t// if it is not static tile and standard/standardWide display format is supported, display convert switch\n\t\tif (\n\t\t\t(insightsApp.isCount || insightsApp.isSmartBusinessTile) &&\n\t\t\taSupportedDisplayFormats.length > 1 &&\n\t\t\taSupportedDisplayFormats.indexOf(DisplayFormat.Standard) > -1 &&\n\t\t\taSupportedDisplayFormats.indexOf(DisplayFormat.StandardWide) > -1\n\t\t) {\n\t\t\tconvertSwitchContainer = new HBox({\n\t\t\t\tid: `${id}-convertSwitchContainer`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [\n\t\t\t\t\tnew Text({\n\t\t\t\t\t\tid: `${id}-switchAppSizeLabel`,\n\t\t\t\t\t\ttext: this._i18nBundle.getText(\"wide\"),\n\t\t\t\t\t\twrapping: false\n\t\t\t\t\t}),\n\t\t\t\t\tnew Switch({\n\t\t\t\t\t\tid: `${id}-convertSwitch`,\n\t\t\t\t\t\t// ariaLabelledBy=\"switchAppSizeLabel\"\n\t\t\t\t\t\tstate: insightsApp.visualization?.displayFormatHint !== DisplayFormat.Standard,\n\t\t\t\t\t\tchange: () => void this._onConvertTilePress(insightsApp),\n\t\t\t\t\t\tcustomTextOn: \" \",\n\t\t\t\t\t\tcustomTextOff: \" \",\n\t\t\t\t\t\ttooltip:\n\t\t\t\t\t\t\tinsightsApp.visualization?.displayFormatHint === DisplayFormat.Standard\n\t\t\t\t\t\t\t\t? this._i18nBundle.getText(\"ConvertToWideTile\")\n\t\t\t\t\t\t\t\t: this._i18nBundle.getText(\"ConvertToTile\")\n\t\t\t\t\t})\n\t\t\t\t]\n\t\t\t});\n\t\t}\n\n\t\tconst deleteBtn = new Button({\n\t\t\tid: `${id}-deleteAppBtn`,\n\t\t\ttype: \"Transparent\",\n\t\t\ticon: \"sap-icon://decline\",\n\t\t\tpress: () => this._onDeleteApp(insightsApp),\n\t\t\ttooltip: this._i18nBundle.getText(\"removeFromInsights\")\n\t\t});\n\n\t\tconst buttonsWrapper = new HBox({\n\t\t\tid: `${id}-buttonsWrapper`,\n\t\t\talignItems: \"Center\"\n\t\t}).addStyleClass(\"sapUiSmallMarginEnd\");\n\n\t\tif (convertSwitchContainer) {\n\t\t\tbuttonsWrapper.addItem(convertSwitchContainer);\n\t\t}\n\t\tbuttonsWrapper.addItem(deleteBtn);\n\n\t\tcolumnListItem.addCell(\n\t\t\tnew HBox({\n\t\t\t\tid: `${id}-cell`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\t\titems: [\n\t\t\t\t\tnew ObjectIdentifier({\n\t\t\t\t\t\tid: `${id}-cellItem`,\n\t\t\t\t\t\ttitle: insightsApp.visualization?.title as string,\n\t\t\t\t\t\ttext: insightsApp.visualization?.subtitle as string,\n\t\t\t\t\t\ttooltip: insightsApp.visualization?.title as string\n\t\t\t\t\t}).addStyleClass(\"objectIdentifierMargin\"),\n\t\t\t\t\tbuttonsWrapper\n\t\t\t\t]\n\t\t\t})\n\t\t);\n\t\tcolumnListItem.data(\"persConfig\", insightsApp.persConfig);\n\n\t\treturn columnListItem;\n\t}\n\n\t/**\n\t * Handles Convert Tile\n\t * @private\n\t */\n\tprivate async _onConvertTilePress(app: ICustomVisualization) {\n\t\tconst displayFormatHint = app.visualization?.displayFormatHint,\n\t\t\tupdateConfigs = {\n\t\t\t\tpageId: MYHOME_PAGE_ID,\n\t\t\t\tsourceSectionIndex: app.persConfig?.sectionIndex as number,\n\t\t\t\tsourceVisualizationIndex: app.persConfig?.visualizationIndex as number,\n\t\t\t\toVisualizationData: {\n\t\t\t\t\tdisplayFormatHint: displayFormatHint === DisplayFormat.Standard ? DisplayFormat.StandardWide : DisplayFormat.Standard\n\t\t\t\t}\n\t\t\t};\n\n\t\tthis._getWrapperFlexBox().setBusy(true);\n\t\tawait this.appManagerInstance.updateVisualizations(updateConfigs);\n\t\tawait this._getTilePanel().refreshData();\n\t\tif (app.visualization) {\n\t\t\tapp.visualization.displayFormatHint = updateConfigs.oVisualizationData.displayFormatHint;\n\t\t}\n\t\tthis._getWrapperFlexBox().setBusy(false);\n\t}\n\n\t/**\n\t * Deletes Insights App\n\t * @private\n\t */\n\tprivate _onDeleteApp(app: ICustomVisualization) {\n\t\tMessageBox.show(this._i18nBundle.getText(\"remove_tile_confirmation_title\", [app.title]) as string, {\n\t\t\tid: \"removeTileConfirmation\",\n\t\t\tstyleClass: \"msgBoxWidth\",\n\t\t\ticon: MessageBox.Icon.QUESTION,\n\t\t\ttitle: this._i18nBundle.getText(\"remove\") as string,\n\t\t\tactions: [this._i18nBundle.getText(\"remove\") as string, MessageBox.Action.CANCEL],\n\t\t\temphasizedAction: this._i18nBundle.getText(\"remove\"),\n\t\t\tonClose: (action: string) => this._handleDeleteApp(action, app)\n\t\t});\n\t}\n\n\t/**\n\t * Handle Delete App Confirmation Decision\n\t * @private\n\t */\n\tprivate async _handleDeleteApp(action: string, app: ISectionAndVisualization) {\n\t\tif (action === this._i18nBundle.getText(\"remove\")) {\n\t\t\tthis._getWrapperFlexBox().setBusy(true);\n\t\t\ttry {\n\t\t\t\tawait this.appManagerInstance.removeVisualizations({\n\t\t\t\t\tsectionId: app.persConfig?.sectionId as string,\n\t\t\t\t\tvizIds: [app.visualization?.id as string]\n\t\t\t\t});\n\t\t\t\tMessageToast.show(this._i18nBundle.getText(\"appRemovedInsights\") as string);\n\t\t\t\tthis._allInsightsApps = await this.appManagerInstance.fetchInsightApps(\n\t\t\t\t\ttrue,\n\t\t\t\t\tthis._i18nBundle.getText(\"insights\") as string\n\t\t\t\t);\n\t\t\t\t(this._controlMap.get(`${this._wrapperId}--title`) as Title).setText(\n\t\t\t\t\t`${this._i18nBundle.getText(\"insightsTilesTitle\")} (${this._allInsightsApps.length})`\n\t\t\t\t);\n\t\t\t\tthis._createTableRows(this._allInsightsApps);\n\t\t\t\tawait this._getTilePanel().refreshData();\n\t\t\t} catch (err) {\n\t\t\t\tLog.error(err as string);\n\t\t\t\tMessageToast.show(this._i18nBundle.getText(\"unableToRemoveInsightsApp\") as string);\n\t\t\t} finally {\n\t\t\t\tthis._getWrapperFlexBox().setBusy(false);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Returns wrapper FlexBox\n\t * @private\n\t */\n\tprivate _getWrapperFlexBox(): FlexBox {\n\t\treturn this._controlMap.get(this._wrapperId) as FlexBox;\n\t}\n\n\t/**\n\t * Returns Tiles Panel\n\t * @private\n\t */\n\tprivate _getTilePanel(): TilesPanel {\n\t\treturn this._getPanel() as TilesPanel;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"InsightsTilesSettingsPanel.js","names":["sap","ui","define","Log","Button","Column","ColumnListItem","FlexBox","HBox","MessageBox","MessageToast","ObjectIdentifier","ScrollContainer","SearchField","Switch","Table","Text","Title","VBox","UI5Element","Icon","__BaseSettingsPanel","___TilesPanel","___utils_Accessibility","__AppManager","___utils_Constants","___utils_DragDropUtils","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BaseSettingsPanel","_finallyRethrows","finalizer","bind","DisplayFormat","getInvisibleText","AppManager","MYHOME_PAGE_ID","SETTINGS_PANELS_KEYS","focusDraggedItem","InsightsTilesSettingsPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","_controlMap","Map","setProperty","INSIGHTS_TILES","_i18nBundle","getText","appManagerInstance","getInstance","_allInsightsApps","_wrapperId","getId","set","alignItems","justifyContent","height","width","direction","addStyleClass","addAggregation","get","_showMessageStrip","_showToolbar","_showTilesList","attachPanelNavigated","setValue","fetchInsightApps","insightsApps","setText","length","_createTableRows","oMessageStripVBox","addItem","text","_getWrapperFlexBox","titleStyle","oInvisibleTitleText","liveChange","oEvent","_onTilesSearch","ariaLabelledBy","titleContainer","toolbarContainer","items","event","sSearchQuery","getSource","getValue","toLowerCase","filteredTiles","filter","app","visualization","title","includes","_createTableWithContainer","table","columns","hAlign","invisibleDragDropText","addDragDropConfigTo","_handleTilesDrop","scrollContainer","vertical","horizontal","content","containerVBox","containerFlexBox","_this","_temp2","iDropItemIndex","oDragItem","getParameter","draggedControl","iDragItemIndex","getParent","indexOfItem","oDropItem","droppedControl","oDragItemPersConfig","data","oDropItemPersConfig","_temp","setBusy","moveConfigs","pageId","sourceSectionIndex","sectionIndex","sourceVisualizationIndex","visualizationIndex","targetSectionIndex","targetVisualizationIndex","Promise","resolve","moveVisualization","_this$appManagerInsta","_getTilePanel","refreshData","reject","removeAllItems","forEach","filteredTile","index","_createColumnListItem","insightsApp","id","existingControl","getElementById","destroy","columnListItem","type","addCell","src","aSupportedDisplayFormats","supportedDisplayFormats","convertSwitchContainer","isCount","isSmartBusinessTile","indexOf","Standard","StandardWide","wrapping","state","displayFormatHint","change","_onConvertTilePress","customTextOn","customTextOff","tooltip","deleteBtn","icon","press","_onDeleteApp","buttonsWrapper","subtitle","persConfig","_this2","updateConfigs","oVisualizationData","updateVisualizations","show","styleClass","QUESTION","actions","Action","CANCEL","emphasizedAction","onClose","action","_handleDeleteApp","_this3","_temp4","_temp3","removeVisualizations","sectionId","vizIds","_this3$appManagerInst","err","error","_wasThrown","_result","_getPanel"],"sources":["InsightsTilesSettingsPanel.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 Button from \"sap/m/Button\";\nimport Column from \"sap/m/Column\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport FlexBox from \"sap/m/FlexBox\";\nimport HBox from \"sap/m/HBox\";\nimport MessageBox from \"sap/m/MessageBox\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport ObjectIdentifier from \"sap/m/ObjectIdentifier\";\nimport ScrollContainer from \"sap/m/ScrollContainer\";\nimport SearchField from \"sap/m/SearchField\";\nimport Switch from \"sap/m/Switch\";\nimport Table from \"sap/m/Table\";\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 Control from \"sap/ui/core/Control\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport Icon from \"sap/ui/core/Icon\";\nimport { DropInfo$DropEvent } from \"sap/ui/core/dnd/DropInfo\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport TilesPanel, { DisplayFormat } from \"./TilesPanel\";\nimport { ICustomVisualization, IPersConfig, ISectionAndVisualization } from \"./interface/AppsInterface\";\nimport { getInvisibleText } from \"./utils/Accessibility\";\nimport AppManager from \"./utils/AppManager\";\nimport { MYHOME_PAGE_ID, SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { focusDraggedItem } from \"./utils/DragDropUtils\";\n\ninterface IDragEvent {\n\tdraggedControl: ColumnListItem;\n\tdroppedControl: ColumnListItem;\n}\n\n/**\n *\n * Class for My Home Insights Tiles Settings Panel.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.InsightsTilesSettingsPanel\n */\nexport default class InsightsTilesSettingsPanel extends BaseSettingsPanel {\n\tprivate _wrapperId!: string;\n\tprivate _controlMap!: Map<string, Control | Element>;\n\tprivate _allInsightsApps!: ICustomVisualization[];\n\tprivate appManagerInstance!: AppManager;\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\t\tthis._controlMap = new Map();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.INSIGHTS_TILES);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsTiles\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://manager-insight\");\n\n\t\t//Fetch Data\n\t\tthis.appManagerInstance = AppManager.getInstance();\n\t\tthis._allInsightsApps = [];\n\n\t\t//setup Container & content Aggregation\n\t\tthis._wrapperId = `${this.getId()}-tilesSettingsWrapper`;\n\t\tthis._controlMap.set(\n\t\t\tthis._wrapperId,\n\t\t\tnew FlexBox(this._wrapperId, {\n\t\t\t\talignItems: \"Start\",\n\t\t\t\tjustifyContent: \"Start\",\n\t\t\t\theight: \"100%\",\n\t\t\t\twidth: \"100%\",\n\t\t\t\tdirection: \"Column\"\n\t\t\t}).addStyleClass(\"flexContainerCards\")\n\t\t);\n\t\tthis.addAggregation(\"content\", this._controlMap.get(this._wrapperId) as FlexBox);\n\n\t\t//setup content for the settings panel\n\t\tthis._showMessageStrip();\n\t\tthis._showToolbar();\n\t\tthis._showTilesList();\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated(() => {\n\t\t\t(this._controlMap.get(`${this._wrapperId}--searchField`) as SearchField).setValue(\"\");\n\t\t\tvoid this.appManagerInstance.fetchInsightApps(true, this._i18nBundle.getText(\"insights\") as string).then((insightsApps) => {\n\t\t\t\tthis._allInsightsApps = insightsApps;\n\t\t\t\t(this._controlMap.get(`${this._wrapperId}--title`) as Title).setText(\n\t\t\t\t\t`${this._i18nBundle.getText(\"insightsTilesTitle\")} (${this._allInsightsApps.length})`\n\t\t\t\t);\n\t\t\t\tthis._createTableRows(this._allInsightsApps);\n\t\t\t});\n\t\t});\n\t}\n\n\t/**\n\t * Add the Message Strip to the wrapper FlexBox.\n\t *\n\t * @private\n\t */\n\n\tprivate _showMessageStrip() {\n\t\tconst oMessageStripVBox = new VBox(`${this._wrapperId}--msgStripContainer`, {\n\t\t\twidth: \"calc(100% - 2rem)\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\toMessageStripVBox.addItem(\n\t\t\tnew Text(`${this._wrapperId}--msgStripText`, {\n\t\t\t\ttext: this._i18nBundle.getText(\"insightAppsTabText\")\n\t\t\t})\n\t\t);\n\t\tthis._getWrapperFlexBox().addItem(oMessageStripVBox);\n\t}\n\n\t/**\n\t * Add the Header ToolBar to the wrapper FlexBox.\n\t *\n\t * @private\n\t */\n\tprivate _showToolbar() {\n\t\t// To address an accessibility issue, we adjusted the font size via a custom class (`tilesFontChange`)\n\t\t// while retaining the semantic heading level as H3 to preserve hierarchy structure.\n\t\t// This ensures the title remains visually balanced without compromising screen reader navigation.\n\t\tthis._controlMap.set(\n\t\t\t`${this._wrapperId}--title`,\n\t\t\tnew Title(`${this._wrapperId}--title`, {\n\t\t\t\ttext: `${this._i18nBundle.getText(\"insightsTilesTitle\")} (${this._allInsightsApps.length})`,\n\t\t\t\ttitleStyle: \"H3\",\n\t\t\t\twidth: \"100%\"\n\t\t\t}).addStyleClass(\"tilesFontChange\")\n\t\t);\n\t\tconst oInvisibleTitleText = getInvisibleText(`${this.getId()}--TileTitleText`, this._i18nBundle.getText(\"insightsTiles\"));\n\t\tthis._controlMap.set(\n\t\t\t`${this._wrapperId}--searchField`,\n\t\t\tnew SearchField(`${this._wrapperId}--pagesListSearch`, {\n\t\t\t\tliveChange: (oEvent) => this._onTilesSearch(oEvent),\n\t\t\t\twidth: \"100%\",\n\t\t\t\tariaLabelledBy: [oInvisibleTitleText.getId(), this._wrapperId + \"--msgStripText\", this._wrapperId + \"--title\"]\n\t\t\t}).addStyleClass(\"sapUiTinyMarginTop\")\n\t\t);\n\n\t\tconst titleContainer = new HBox(`${this._wrapperId}--titleContainer`, {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\twidth: \"100%\"\n\t\t});\n\t\ttitleContainer.addItem(this._controlMap.get(`${this._wrapperId}--title`) as Title);\n\t\ttitleContainer.addItem(oInvisibleTitleText);\n\t\tconst toolbarContainer = new VBox(`${this._wrapperId}--toolbarContainer`, {\n\t\t\twidth: \"calc(100% - 2rem)\",\n\t\t\titems: [titleContainer, this._controlMap.get(`${this._wrapperId}--searchField`) as SearchField]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\tthis._getWrapperFlexBox().addItem(toolbarContainer);\n\t}\n\n\t/**\n\t * Handles Search Field change\n\t * @private\n\t */\n\tprivate _onTilesSearch(event: Event) {\n\t\tconst sSearchQuery = event.getSource<SearchField>().getValue().toLowerCase();\n\t\tconst filteredTiles = this._allInsightsApps.filter((app) => app.visualization?.title?.toLowerCase().includes(sSearchQuery));\n\t\tthis._createTableRows(filteredTiles);\n\t}\n\n\t/**\n\t * Adds Tiles List Table to Wrapper FlexBox\n\t * @private\n\t */\n\tprivate _showTilesList() {\n\t\tthis._createTableWithContainer();\n\t\tthis._createTableRows(this._allInsightsApps);\n\t}\n\n\t/**\n\t * Creates Table to Render Tiles List\n\t * @private\n\t */\n\tprivate _createTableWithContainer() {\n\t\tconst table = new Table(`${this._wrapperId}-table`, {\n\t\t\tcolumns: [\n\t\t\t\tnew Column(`${this._wrapperId}-table-dndIcon`, {\n\t\t\t\t\thAlign: \"Center\",\n\t\t\t\t\twidth: \"6%\"\n\t\t\t\t}),\n\t\t\t\tnew Column(`${this._wrapperId}-table-title`, {\n\t\t\t\t\twidth: \"94%\"\n\t\t\t\t})\n\t\t\t]\n\t\t}).addStyleClass(\"sapContrastPlus\");\n\t\tconst invisibleDragDropText = getInvisibleText(`${this._wrapperId}-dndAria`, this._i18nBundle.getText(\"keyPressAriaText\"));\n\t\tthis.addDragDropConfigTo(table, (event) => void this._handleTilesDrop(event));\n\t\tthis._controlMap.set(`${this._wrapperId}-table`, table);\n\t\tconst scrollContainer = new ScrollContainer(`${this._wrapperId}-scrollContainer`, {\n\t\t\tvertical: true,\n\t\t\thorizontal: false,\n\t\t\theight: \"100%\",\n\t\t\twidth: \"100%\",\n\t\t\tcontent: [this._controlMap.get(`${this._wrapperId}-table`) as Table]\n\t\t});\n\t\tconst containerVBox = new VBox(`${this._wrapperId}-containerVBox`, {\n\t\t\theight: \"100%\",\n\t\t\twidth: \"100%\",\n\t\t\tjustifyContent: \"Start\",\n\t\t\tdirection: \"Column\",\n\t\t\titems: [invisibleDragDropText, scrollContainer]\n\t\t});\n\t\tconst containerFlexBox = new FlexBox(`${this._wrapperId}-containerFlexBox`, {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"Start\",\n\t\t\theight: \"100%\",\n\t\t\twidth: \"calc(100% - 2rem)\",\n\t\t\tdirection: \"Row\",\n\t\t\titems: [containerVBox]\n\t\t}).addStyleClass(\"sapUiSmallMarginBegin sapUiSmallMarginTop flexContainerCards\");\n\n\t\tthis._getWrapperFlexBox().addItem(containerFlexBox);\n\t}\n\n\t/**\n\t * Handles Drag Drop of Tiles\n\t * @private\n\t */\n\tprivate async _handleTilesDrop(oEvent: DropInfo$DropEvent | IDragEvent) {\n\t\tconst oDragItem = ((oEvent as DropInfo$DropEvent).getParameter?.(\"draggedControl\") ||\n\t\t\t\t(oEvent as IDragEvent).draggedControl) as ColumnListItem,\n\t\t\tiDragItemIndex = (oDragItem.getParent() as Table)?.indexOfItem(oDragItem),\n\t\t\toDropItem = ((oEvent as DropInfo$DropEvent).getParameter?.(\"droppedControl\") ||\n\t\t\t\t(oEvent as IDragEvent).droppedControl) as ColumnListItem,\n\t\t\tiDropItemIndex = (oDragItem.getParent() as Table)?.indexOfItem(oDropItem),\n\t\t\toDragItemPersConfig = oDragItem.data(\"persConfig\") as IPersConfig,\n\t\t\toDropItemPersConfig = oDropItem.data(\"persConfig\") as IPersConfig,\n\t\t\ttable = this._controlMap.get(`${this._wrapperId}-table`) as Table;\n\t\tif (iDragItemIndex !== iDropItemIndex) {\n\t\t\tthis._getWrapperFlexBox().setBusy(true);\n\t\t\tconst moveConfigs = {\n\t\t\t\tpageId: MYHOME_PAGE_ID,\n\t\t\t\tsourceSectionIndex: oDragItemPersConfig.sectionIndex as number,\n\t\t\t\tsourceVisualizationIndex: oDragItemPersConfig.visualizationIndex as number,\n\t\t\t\ttargetSectionIndex: oDropItemPersConfig.sectionIndex as number,\n\t\t\t\ttargetVisualizationIndex: oDropItemPersConfig.visualizationIndex as number\n\t\t\t};\n\t\t\tawait this.appManagerInstance.moveVisualization(moveConfigs);\n\t\t\tthis._allInsightsApps = await this.appManagerInstance.fetchInsightApps(true, this._i18nBundle.getText(\"insights\") as string);\n\t\t\tthis._createTableRows(this._allInsightsApps);\n\t\t\tawait this._getTilePanel().refreshData();\n\t\t\tthis._getWrapperFlexBox().setBusy(false);\n\t\t}\n\t\tfocusDraggedItem(table, iDropItemIndex);\n\t}\n\n\t/**\n\t * Create Table Rows\n\t * @private\n\t */\n\tprivate _createTableRows(insightsApps: ICustomVisualization[]) {\n\t\tconst table = this._controlMap.get(`${this._wrapperId}-table`) as Table;\n\t\ttable.removeAllItems();\n\t\tlet filteredTiles = insightsApps;\n\t\tconst sSearchQuery = (this._controlMap.get(`${this._wrapperId}--searchField`) as SearchField).getValue();\n\t\tif (sSearchQuery) {\n\t\t\tfilteredTiles = this._allInsightsApps.filter((app) => app.visualization?.title?.toLowerCase().includes(sSearchQuery));\n\t\t}\n\t\tfilteredTiles.forEach((filteredTile, index) => {\n\t\t\ttable.addItem(this._createColumnListItem(filteredTile, index));\n\t\t});\n\t}\n\n\t/**\n\t * Create ColumnListItem for each Insights App\n\t * @private\n\t */\n\tprivate _createColumnListItem(insightsApp: ICustomVisualization, index: number): ColumnListItem {\n\t\tconst id = `insightsTiles-${index}-listItem`;\n\t\tconst existingControl = UI5Element.getElementById(id);\n\t\tif (existingControl) {\n\t\t\texistingControl.destroy();\n\t\t}\n\t\t// Create Column List Item\n\t\tconst columnListItem = new ColumnListItem({\n\t\t\tid,\n\t\t\ttype: \"Inactive\",\n\t\t\tariaLabelledBy: [id, `${this._wrapperId}-dndAria`]\n\t\t}).addStyleClass(\"insightsListItem insightsListMargin manageSectionsTable\");\n\n\t\t// Add first cell as Drag & Drop Icon\n\t\tcolumnListItem.addCell(\n\t\t\tnew HBox(`${id}-DndHBox`, {\n\t\t\t\titems: [\n\t\t\t\t\tnew Icon(`${id}-DndIcon`, {\n\t\t\t\t\t\tsrc: \"sap-icon://BusinessSuiteInAppSymbols/icon-grip\"\n\t\t\t\t\t}).addStyleClass(\"tilesDndIcon\")\n\t\t\t\t]\n\t\t\t})\n\t\t);\n\n\t\t//Create Convert Switch\n\t\tconst aSupportedDisplayFormats = insightsApp.visualization?.supportedDisplayFormats || \"\";\n\t\tlet convertSwitchContainer;\n\t\t// if it is not static tile and standard/standardWide display format is supported, display convert switch\n\t\tif (\n\t\t\t(insightsApp.isCount || insightsApp.isSmartBusinessTile) &&\n\t\t\taSupportedDisplayFormats.length > 1 &&\n\t\t\taSupportedDisplayFormats.indexOf(DisplayFormat.Standard) > -1 &&\n\t\t\taSupportedDisplayFormats.indexOf(DisplayFormat.StandardWide) > -1\n\t\t) {\n\t\t\tconvertSwitchContainer = new HBox({\n\t\t\t\tid: `${id}-convertSwitchContainer`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [\n\t\t\t\t\tnew Text({\n\t\t\t\t\t\tid: `${id}-switchAppSizeLabel`,\n\t\t\t\t\t\ttext: this._i18nBundle.getText(\"wide\"),\n\t\t\t\t\t\twrapping: false\n\t\t\t\t\t}),\n\t\t\t\t\tnew Switch({\n\t\t\t\t\t\tid: `${id}-convertSwitch`,\n\t\t\t\t\t\t// ariaLabelledBy=\"switchAppSizeLabel\"\n\t\t\t\t\t\tstate: insightsApp.visualization?.displayFormatHint !== DisplayFormat.Standard,\n\t\t\t\t\t\tchange: () => void this._onConvertTilePress(insightsApp),\n\t\t\t\t\t\tcustomTextOn: \" \",\n\t\t\t\t\t\tcustomTextOff: \" \",\n\t\t\t\t\t\ttooltip:\n\t\t\t\t\t\t\tinsightsApp.visualization?.displayFormatHint === DisplayFormat.Standard\n\t\t\t\t\t\t\t\t? this._i18nBundle.getText(\"ConvertToWideTile\")\n\t\t\t\t\t\t\t\t: this._i18nBundle.getText(\"ConvertToTile\")\n\t\t\t\t\t}).addStyleClass(\"sapUiTinyMarginBeginEnd\")\n\t\t\t\t]\n\t\t\t});\n\t\t}\n\n\t\tconst deleteBtn = new Button({\n\t\t\tid: `${id}-deleteAppBtn`,\n\t\t\ttype: \"Transparent\",\n\t\t\ticon: \"sap-icon://decline\",\n\t\t\tpress: () => this._onDeleteApp(insightsApp),\n\t\t\ttooltip: this._i18nBundle.getText(\"removeFromInsights\")\n\t\t});\n\n\t\tconst buttonsWrapper = new HBox({\n\t\t\tid: `${id}-buttonsWrapper`,\n\t\t\talignItems: \"Center\"\n\t\t}).addStyleClass(\"sapUiSmallMarginEnd\");\n\n\t\tif (convertSwitchContainer) {\n\t\t\tbuttonsWrapper.addItem(convertSwitchContainer);\n\t\t}\n\t\tbuttonsWrapper.addItem(deleteBtn);\n\n\t\tcolumnListItem.addCell(\n\t\t\tnew HBox({\n\t\t\t\tid: `${id}-cell`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\t\titems: [\n\t\t\t\t\tnew ObjectIdentifier({\n\t\t\t\t\t\tid: `${id}-cellItem`,\n\t\t\t\t\t\ttitle: insightsApp.visualization?.title as string,\n\t\t\t\t\t\ttext: insightsApp.visualization?.subtitle as string,\n\t\t\t\t\t\ttooltip: insightsApp.visualization?.title as string\n\t\t\t\t\t}).addStyleClass(\"objectIdentifierMargin\"),\n\t\t\t\t\tbuttonsWrapper\n\t\t\t\t]\n\t\t\t})\n\t\t);\n\t\tcolumnListItem.data(\"persConfig\", insightsApp.persConfig);\n\n\t\treturn columnListItem;\n\t}\n\n\t/**\n\t * Handles Convert Tile\n\t * @private\n\t */\n\tprivate async _onConvertTilePress(app: ICustomVisualization) {\n\t\tconst displayFormatHint = app.visualization?.displayFormatHint,\n\t\t\tupdateConfigs = {\n\t\t\t\tpageId: MYHOME_PAGE_ID,\n\t\t\t\tsourceSectionIndex: app.persConfig?.sectionIndex as number,\n\t\t\t\tsourceVisualizationIndex: app.persConfig?.visualizationIndex as number,\n\t\t\t\toVisualizationData: {\n\t\t\t\t\tdisplayFormatHint: displayFormatHint === DisplayFormat.Standard ? DisplayFormat.StandardWide : DisplayFormat.Standard\n\t\t\t\t}\n\t\t\t};\n\n\t\tthis._getWrapperFlexBox().setBusy(true);\n\t\tawait this.appManagerInstance.updateVisualizations(updateConfigs);\n\t\tawait this._getTilePanel().refreshData();\n\t\tif (app.visualization) {\n\t\t\tapp.visualization.displayFormatHint = updateConfigs.oVisualizationData.displayFormatHint;\n\t\t}\n\t\tthis._getWrapperFlexBox().setBusy(false);\n\t}\n\n\t/**\n\t * Deletes Insights App\n\t * @private\n\t */\n\tprivate _onDeleteApp(app: ICustomVisualization) {\n\t\tMessageBox.show(this._i18nBundle.getText(\"remove_tile_confirmation_title\", [app.title]) as string, {\n\t\t\tid: \"removeTileConfirmation\",\n\t\t\tstyleClass: \"msgBoxWidth\",\n\t\t\ticon: MessageBox.Icon.QUESTION,\n\t\t\ttitle: this._i18nBundle.getText(\"remove\") as string,\n\t\t\tactions: [this._i18nBundle.getText(\"remove\") as string, MessageBox.Action.CANCEL],\n\t\t\temphasizedAction: this._i18nBundle.getText(\"remove\"),\n\t\t\tonClose: (action: string | null) => this._handleDeleteApp(action, app)\n\t\t});\n\t}\n\n\t/**\n\t * Handle Delete App Confirmation Decision\n\t * @private\n\t */\n\tprivate async _handleDeleteApp(action: string | null, app: ISectionAndVisualization) {\n\t\tif (action === this._i18nBundle.getText(\"remove\")) {\n\t\t\tthis._getWrapperFlexBox().setBusy(true);\n\t\t\ttry {\n\t\t\t\tawait this.appManagerInstance.removeVisualizations({\n\t\t\t\t\tsectionId: app.persConfig?.sectionId as string,\n\t\t\t\t\tvizIds: [app.visualization?.id as string]\n\t\t\t\t});\n\t\t\t\tMessageToast.show(this._i18nBundle.getText(\"appRemovedInsights\") as string);\n\t\t\t\tthis._allInsightsApps = await this.appManagerInstance.fetchInsightApps(\n\t\t\t\t\ttrue,\n\t\t\t\t\tthis._i18nBundle.getText(\"insights\") as string\n\t\t\t\t);\n\t\t\t\t(this._controlMap.get(`${this._wrapperId}--title`) as Title).setText(\n\t\t\t\t\t`${this._i18nBundle.getText(\"insightsTilesTitle\")} (${this._allInsightsApps.length})`\n\t\t\t\t);\n\t\t\t\tthis._createTableRows(this._allInsightsApps);\n\t\t\t\tawait this._getTilePanel().refreshData();\n\t\t\t} catch (err) {\n\t\t\t\tLog.error(err as string);\n\t\t\t\tMessageToast.show(this._i18nBundle.getText(\"unableToRemoveInsightsApp\") as string);\n\t\t\t} finally {\n\t\t\t\tthis._getWrapperFlexBox().setBusy(false);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Returns wrapper FlexBox\n\t * @private\n\t */\n\tprivate _getWrapperFlexBox(): FlexBox {\n\t\treturn this._controlMap.get(this._wrapperId) as FlexBox;\n\t}\n\n\t/**\n\t * Returns Tiles Panel\n\t * @private\n\t */\n\tprivate _getTilePanel(): TilesPanel {\n\t\treturn this._getPanel() as TilesPanel;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -336,7 +336,7 @@ export default class InsightsTilesSettingsPanel extends BaseSettingsPanel {
336
336
  insightsApp.visualization?.displayFormatHint === DisplayFormat.Standard
337
337
  ? this._i18nBundle.getText("ConvertToWideTile")
338
338
  : this._i18nBundle.getText("ConvertToTile")
339
- })
339
+ }).addStyleClass("sapUiTinyMarginBeginEnd")
340
340
  ]
341
341
  });
342
342
  }
@@ -416,7 +416,7 @@ export default class InsightsTilesSettingsPanel extends BaseSettingsPanel {
416
416
  title: this._i18nBundle.getText("remove") as string,
417
417
  actions: [this._i18nBundle.getText("remove") as string, MessageBox.Action.CANCEL],
418
418
  emphasizedAction: this._i18nBundle.getText("remove"),
419
- onClose: (action: string) => this._handleDeleteApp(action, app)
419
+ onClose: (action: string | null) => this._handleDeleteApp(action, app)
420
420
  });
421
421
  }
422
422
 
@@ -424,7 +424,7 @@ export default class InsightsTilesSettingsPanel extends BaseSettingsPanel {
424
424
  * Handle Delete App Confirmation Decision
425
425
  * @private
426
426
  */
427
- private async _handleDeleteApp(action: string, app: ISectionAndVisualization) {
427
+ private async _handleDeleteApp(action: string | null, app: ISectionAndVisualization) {
428
428
  if (action === this._i18nBundle.getText("remove")) {
429
429
  this._getWrapperFlexBox().setBusy(true);
430
430
  try {
@@ -39,6 +39,9 @@ declare module "sap/cux/home/KeyUserLayoutSettingsPanel" {
39
39
  * @private
40
40
  */
41
41
  private loadSections;
42
+ private getLayoutListItem;
43
+ private getCompositeLayoutListItem;
44
+ private addToCompositeItem;
42
45
  /**
43
46
  * Function to execute drag and drop among sections
44
47
  *
@@ -1 +1 @@
1
- {"version":3,"file":"KeyUserLayoutSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/KeyUserLayoutSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,yCAAyC,CAAC;IAezD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAI3D,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;IAS/D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,iBAAiB;QACxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAEvC;QAEF,OAAO,CAAC,WAAW,CAAS;QAC5B,OAAO,CAAC,eAAe,CAAc;QACrC,OAAO,CAAC,kBAAkB,CAAmB;QAE7C;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAkBnB;;;;;WAKG;QACH,OAAO,CAAC,UAAU;QAgBlB;;;;WAIG;gBACW,YAAY;QA0D1B;;;;WAIG;QACH,OAAO,CAAC,oBAAoB;QAoD5B;;;;;;WAMG;QACH,OAAO,CAAC,eAAe;QAoBvB;;;;;;WAMG;QACH,OAAO,CAAC,wBAAwB;QAKhC;;;;;WAKG;QACH,OAAO,CAAC,wBAAwB;KAoBhC;CAEA"}
1
+ {"version":3,"file":"KeyUserLayoutSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/KeyUserLayoutSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,yCAAyC,CAAC;IAezD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAI3D,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;IAU/D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,iBAAiB;QACxE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAEvC;QAEF,OAAO,CAAC,WAAW,CAAS;QAC5B,OAAO,CAAC,eAAe,CAAc;QACrC,OAAO,CAAC,kBAAkB,CAAmB;QAE7C;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAkBnB;;;;;WAKG;QACH,OAAO,CAAC,UAAU;QAgBlB;;;;WAIG;gBACW,YAAY;QAwE1B,OAAO,CAAC,iBAAiB;QAiDzB,OAAO,CAAC,0BAA0B;QAqElC,OAAO,CAAC,kBAAkB;QAiB1B;;;;WAIG;QACH,OAAO,CAAC,oBAAoB;QAiH5B;;;;;;WAMG;QACH,OAAO,CAAC,eAAe;QAoBvB;;;;;;WAMG;QACH,OAAO,CAAC,wBAAwB;QAKhC;;;;;WAKG;QACH,OAAO,CAAC,wBAAwB;KAuChC;CAEA"}
@@ -2,14 +2,16 @@
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/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/ObjectIdentifier", "sap/m/Table", "sap/m/ToggleButton", "sap/ui/core/CustomData", "sap/ui/core/Element", "sap/ui/core/Icon", "./BaseSettingsPanel", "./flexibility/Layout.flexibility", "./utils/Constants", "./utils/DataFormatUtils", "./utils/DragDropUtils"], function (Column, ColumnListItem, HBox, ObjectIdentifier, Table, ToggleButton, CustomData, Element, Icon, __BaseSettingsPanel, ___flexibility_Layoutflexibility, ___utils_Constants, ___utils_DataFormatUtils, ___utils_DragDropUtils) {
5
+ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/ObjectIdentifier", "sap/m/Table", "sap/m/ToggleButton", "sap/m/VBox", "sap/ui/core/CustomData", "sap/ui/core/Element", "sap/ui/core/Icon", "./BaseContainer", "./BaseSettingsPanel", "./flexibility/Layout.flexibility", "./NoDataContainer", "./utils/Constants", "./utils/DataFormatUtils", "./utils/DragDropUtils"], function (Column, ColumnListItem, HBox, ObjectIdentifier, Table, ToggleButton, VBox, CustomData, Element, Icon, __BaseContainer, __BaseSettingsPanel, ___flexibility_Layoutflexibility, __NoDataContainer, ___utils_Constants, ___utils_DataFormatUtils, ___utils_DragDropUtils) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
9
9
  return obj && obj.__esModule && typeof obj.default !== "undefined" ? obj.default : obj;
10
10
  }
11
+ const BaseContainer = _interopRequireDefault(__BaseContainer);
11
12
  const BaseSettingsPanel = _interopRequireDefault(__BaseSettingsPanel);
12
13
  const CHANGE_TYPES = ___flexibility_Layoutflexibility["CHANGE_TYPES"];
14
+ const NoDataContainer = _interopRequireDefault(__NoDataContainer);
13
15
  const KEYUSER_SETTINGS_PANELS_KEYS = ___utils_Constants["KEYUSER_SETTINGS_PANELS_KEYS"];
14
16
  const recycleId = ___utils_DataFormatUtils["recycleId"];
15
17
  const focusDraggedItem = ___utils_DragDropUtils["focusDraggedItem"];
@@ -83,47 +85,183 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
83
85
  const layout = _this._getPanel();
84
86
  return Promise.resolve(layout._calculateSectionsState()).then(function () {
85
87
  _this.orderedSections = layout.getSections() || [];
86
- const keyUserSettingsDialog = _this.getParent();
88
+ //loop through this._orderedSections and take out the children items from composite items and add them to same list
89
+ // create composite list item
90
+ // map through this.orderedSections and replace items with compositeId with a single composite item containing its children
91
+ //filter this.orderedSections to remove items which has same composite item with no children
92
+ _this.orderedSections = _this.orderedSections.reduce((accumulator, section) => {
93
+ if (section.isComposite && section.children) {
94
+ accumulator.push(...section.children);
95
+ } else {
96
+ accumulator.push(section);
97
+ }
98
+ return accumulator;
99
+ }, []);
100
+ const createEmptyCompositeItem = () => ({
101
+ completeId: "",
102
+ sContainerType: "",
103
+ blocked: false,
104
+ visible: false,
105
+ title: "",
106
+ text: "",
107
+ isComposite: false,
108
+ compositeId: null,
109
+ children: []
110
+ });
111
+ const compositeMap = {};
112
+ _this.orderedSections.forEach(section => {
113
+ const container = Element.getElementById(section.completeId);
114
+ if (container instanceof BaseContainer) {
115
+ const compositeId = container.getProperty("compositeId");
116
+ if (compositeId) {
117
+ if (!compositeMap[compositeId]) {
118
+ compositeMap[compositeId] = [];
119
+ }
120
+ section.compositeId = compositeId;
121
+ section.groupTitle = container.getCustomSettings().groupTitle || "";
122
+ compositeMap[compositeId].push(section);
123
+ } else {
124
+ section.compositeId = null;
125
+ }
126
+ }
127
+ });
128
+ _this.orderedSections = _this.orderedSections.map(section => {
129
+ if (section.compositeId && compositeMap[section.compositeId]) {
130
+ const compositeItem = createEmptyCompositeItem();
131
+ compositeMap[section.compositeId].forEach(section => {
132
+ _this.addToCompositeItem(section, compositeItem, section.groupTitle);
133
+ });
134
+ delete compositeMap[section.compositeId];
135
+ return compositeItem;
136
+ }
137
+ return section;
138
+ });
139
+ _this.orderedSections = _this.orderedSections.filter(section => {
140
+ if (section.compositeId) {
141
+ return section.children && section.children.length > 0;
142
+ }
143
+ return true;
144
+ });
87
145
  _this.layoutTable.removeAllItems();
88
146
  _this.orderedSections.forEach((section, index) => {
89
- _this.layoutTable.addItem(new ColumnListItem(recycleId(`${_this.getId()}--layoutSettingsColumnListItem--${index}`), {
90
- type: _this.getParent()?.hasDetailsPage?.(section.completeId) ? "Navigation" : "Inactive",
91
- cells: [new HBox(recycleId(`${_this.getId()}--layoutColumnListHBox--${index}`), {
92
- alignItems: "Center",
93
- items: [new Icon(recycleId(`${_this.getId()}--layoutColumnListItemIcon--${index}`), {
94
- src: "sap-icon://vertical-grip"
95
- }).addStyleClass("sapUiSmallMarginEnd"), new HBox(recycleId(`${_this.getId()}--layoutColumnListItemHBox--${index}`), {
96
- justifyContent: "SpaceBetween",
97
- alignItems: "Center",
98
- width: "100%",
99
- items: [new ObjectIdentifier(recycleId(`${_this.getId()}--layoutColumnListObjectIdentifier--${index}`), {
100
- title: section.title,
101
- text: section.text,
102
- tooltip: section.title
103
- }), new ToggleButton(recycleId(`${_this.getId()}--layoutColumnListToggleButton--${index}`), {
104
- tooltip: section.visible ? _this._i18nBundle.getText("hideBtn") : _this._i18nBundle.getText("showBtn"),
105
- icon: "sap-icon://show",
106
- type: "Emphasized",
107
- enabled: !section.blocked,
108
- press: event => _this.createShowHideChangeFile(event, section),
109
- pressed: !section.visible,
110
- ariaLabelledBy: ["selectLabel"]
111
- }).addStyleClass("sapUiTinyMarginEnd sapUiTinyMarginTop")]
112
- }).addStyleClass("sapUiTinyMarginBegin")],
113
- width: "100%"
114
- })],
115
- press: () => keyUserSettingsDialog?.navigateToPage?.(keyUserSettingsDialog.getDetailsPage(section.completeId)),
116
- customData: new CustomData(recycleId(`${_this.getId()}--custom-data--${index}`), {
117
- key: "sectionObject",
118
- value: section
119
- })
120
- })).addStyleClass("insightsListItem insightsListMargin");
147
+ _this.layoutTable.addItem(_this.getLayoutListItem(section, index)).addStyleClass("insightsListItem insightsListMargin");
121
148
  });
122
149
  });
123
150
  } catch (e) {
124
151
  return Promise.reject(e);
125
152
  }
126
153
  },
154
+ getLayoutListItem: function _getLayoutListItem(section, index) {
155
+ const keyUserSettingsDialog = this.getParent();
156
+
157
+ //check the condition for news and pages as it is a composite container
158
+ if (section?.isComposite === true) {
159
+ return this.getCompositeLayoutListItem(section, index);
160
+ }
161
+ return new ColumnListItem(recycleId(`${this.getId()}--layoutSettingsColumnListItem--${index}`), {
162
+ type: this.getParent()?.hasDetailsPage?.(section.completeId) ? "Navigation" : "Inactive",
163
+ cells: [new HBox(recycleId(`${this.getId()}--layoutColumnListHBox--${index}`), {
164
+ alignItems: "Center",
165
+ items: [new Icon(recycleId(`${this.getId()}--layoutColumnListItemIcon--${index}`), {
166
+ src: "sap-icon://vertical-grip"
167
+ }).addStyleClass("sapUiSmallMarginEnd"), new HBox(recycleId(`${this.getId()}--layoutColumnListItemHBox--${index}`), {
168
+ justifyContent: "SpaceBetween",
169
+ alignItems: "Center",
170
+ width: "100%",
171
+ items: [new ObjectIdentifier(recycleId(`${this.getId()}--layoutColumnListObjectIdentifier--${index}`), {
172
+ title: section.title,
173
+ text: section.text,
174
+ tooltip: section.title
175
+ }), new ToggleButton(recycleId(`${this.getId()}--layoutColumnListToggleButton--${index}`), {
176
+ tooltip: section.visible ? this._i18nBundle.getText("hideBtn") : this._i18nBundle.getText("showBtn"),
177
+ icon: "sap-icon://show",
178
+ type: "Emphasized",
179
+ enabled: !section.blocked,
180
+ press: event => this.createShowHideChangeFile(event, section),
181
+ pressed: !section.visible,
182
+ ariaLabelledBy: ["selectLabel"]
183
+ }).addStyleClass("sapUiTinyMarginEnd sapUiTinyMarginTop")]
184
+ }).addStyleClass("sapUiTinyMarginBegin")],
185
+ width: "100%"
186
+ })],
187
+ press: () => keyUserSettingsDialog?.navigateToPage?.(keyUserSettingsDialog.getDetailsPage(section.completeId)),
188
+ customData: new CustomData(recycleId(`${this.getId()}--custom-data--${index}`), {
189
+ key: "sectionObject",
190
+ value: section
191
+ })
192
+ });
193
+ },
194
+ getCompositeLayoutListItem: function _getCompositeLayoutListItem(section, index) {
195
+ const keyUserSettingsDialog = this.getParent();
196
+
197
+ // Create child HBoxes dynamically based on number of children
198
+ const childBoxes = (section.children || []).map((child, childIndex) => {
199
+ return new HBox(recycleId(`${this.getId()}--columnListItemChildHBox--${index}-${childIndex}`), {
200
+ justifyContent: "SpaceBetween",
201
+ alignItems: "Center",
202
+ items: [new ObjectIdentifier(recycleId(`${this.getId()}--childObjectIdentifier--${index}-${childIndex}`), {
203
+ title: child.title,
204
+ text: child.text,
205
+ tooltip: child.title
206
+ }), new ToggleButton(recycleId(`${this.getId()}--layoutSettingstoggleButtonChild--${index}-${childIndex}`), {
207
+ tooltip: child.visible ? this._i18nBundle.getText("hideBtn") : this._i18nBundle.getText("showBtn"),
208
+ icon: "sap-icon://show",
209
+ type: "Emphasized",
210
+ enabled: !child.blocked,
211
+ press: event => this.createShowHideChangeFile(event, child),
212
+ pressed: !child.visible,
213
+ ariaLabelledBy: ["selectLabel"]
214
+ }).addStyleClass("sapUiTinyMarginEnd sapUiTinyMarginTop")]
215
+ }).addStyleClass("sapCuxCompositeItem");
216
+ });
217
+
218
+ // Now build the main composite item layout
219
+ return new ColumnListItem(recycleId(`${this.getId()}--layoutSettingsColumnListItem--${index}`), {
220
+ type: keyUserSettingsDialog?.hasDetailsPage?.(section.completeId) ? "Navigation" : "Inactive",
221
+ press: () => keyUserSettingsDialog?.navigateToPage?.(keyUserSettingsDialog.getDetailsPage(section.completeId)),
222
+ customData: new CustomData(recycleId(`${this.getId()}--custom-data--${index}`), {
223
+ key: "sectionObject",
224
+ value: section
225
+ }),
226
+ cells: [new VBox(recycleId(`${this.getId()}--compositeVBox--${index}`), {
227
+ items: [
228
+ // Parent section header (with main title)
229
+ new HBox(recycleId(`${this.getId()}--columnListHBox--${index}`), {
230
+ alignItems: "Center",
231
+ items: [new Icon(recycleId(`${this.getId()}--columnListIcon--${index}`), {
232
+ src: "sap-icon://vertical-grip"
233
+ }).addStyleClass("sapUiSmallMarginEnd"), new HBox(recycleId(`${this.getId()}--columnListItemHBox--${index}`), {
234
+ justifyContent: "SpaceBetween",
235
+ alignItems: "Center",
236
+ width: "100%",
237
+ items: [new ObjectIdentifier(recycleId(`${this.getId()}--columnListObjectIdentifier--${index}`), {
238
+ title: section.title,
239
+ text: section.text,
240
+ tooltip: section.title
241
+ })]
242
+ })],
243
+ width: "100%"
244
+ }).addStyleClass("sapUiTinyMarginTopBottom"),
245
+ // All dynamically created child boxes
246
+ ...childBoxes]
247
+ })]
248
+ }).addStyleClass("insightsListItem insightsListMargin");
249
+ },
250
+ addToCompositeItem: function _addToCompositeItem(section, compositeItem, compositeTitle) {
251
+ compositeItem.isComposite = true;
252
+ compositeItem.title = compositeTitle;
253
+ if (!compositeItem.completeId) {
254
+ compositeItem.completeId = section.completeId;
255
+ }
256
+ //Add compositeId
257
+ compositeItem.compositeId = section.compositeId;
258
+ compositeItem.children?.push({
259
+ ...section
260
+ });
261
+ compositeItem.text = section.text;
262
+ compositeItem.blocked = section.blocked;
263
+ compositeItem.visible = section.visible;
264
+ },
127
265
  /**
128
266
  * Function to execute drag and drop among sections
129
267
  *
@@ -140,12 +278,43 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
140
278
  const sectionOrder = this.orderedSections;
141
279
  const dragObject = dragItem.data("sectionObject");
142
280
  const dropObject = dropItem.data("sectionObject");
143
- const actualDragItemIndex = this._getActualIndex(dragObject.completeId);
144
- const actualDropItemIndex = this._getActualIndex(dropObject.completeId);
281
+ let actualDragItemIndex = this._getActualIndex(dragObject.completeId);
282
+ let actualDropItemIndex = this._getActualIndex(dropObject.completeId);
145
283
  this._rearrangeLayoutElements(actualDragItemIndex, actualDropItemIndex);
146
284
  sectionOrder.splice(dragItemIndex, 1);
147
285
  sectionOrder.splice(dropItemIndex, 0, dragObject);
148
286
  wrapper.setSections(sectionOrder);
287
+ //loop through the wrapper.getItems() and find the index and noData Container
288
+ let noDataContainerIndex = -1;
289
+ const items = wrapper.getItems();
290
+ let noDataContainer = null;
291
+ for (let i = 0; i < items.length; i++) {
292
+ const item = items[i];
293
+ if (item instanceof NoDataContainer) {
294
+ noDataContainerIndex = i;
295
+ noDataContainer = item;
296
+ }
297
+ }
298
+ //now insert the noDataContainer back to its noDataContainerIndex in sectionOrder
299
+ if (noDataContainer && noDataContainerIndex !== -1) {
300
+ sectionOrder.splice(noDataContainerIndex, 0, noDataContainer);
301
+ }
302
+ let finalTargetIndex = 0;
303
+ const elementList = this.orderedSections.reduce((accumulator, section) => {
304
+ if (section.isComposite && section.children) {
305
+ accumulator.push(...section.children);
306
+ } else {
307
+ accumulator.push(section);
308
+ }
309
+ return accumulator;
310
+ }, []);
311
+ finalTargetIndex = elementList.findIndex(element => element.completeId === dragObject.completeId);
312
+ //find the composite child for this dragObject if it has a composite id
313
+ const compositeChildren = elementList.filter(element => dragObject.compositeId && dragObject.compositeId === element.compositeId && element.completeId !== dragObject.completeId);
314
+ if (noDataContainer && noDataContainerIndex !== -1) {
315
+ //remove noDataContainer from sectionOrder to avoid the display of an empty item in myhome Settings dialog
316
+ sectionOrder.splice(noDataContainerIndex, 1);
317
+ }
149
318
  this.addKeyUserChanges({
150
319
  selectorControl: wrapper,
151
320
  changeSpecificData: {
@@ -154,7 +323,7 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
154
323
  movedElements: [{
155
324
  id: dragObject.completeId,
156
325
  sourceIndex: actualDragItemIndex,
157
- targetIndex: actualDropItemIndex
326
+ targetIndex: dragItemIndex < dropItemIndex && dragObject.isComposite ? finalTargetIndex + 1 : finalTargetIndex
158
327
  }],
159
328
  source: {
160
329
  id: wrapperId,
@@ -167,6 +336,31 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
167
336
  }
168
337
  }
169
338
  });
339
+ if (compositeChildren.length > 0) {
340
+ compositeChildren.forEach(compositeChild => {
341
+ this.addKeyUserChanges({
342
+ selectorControl: wrapper,
343
+ changeSpecificData: {
344
+ changeType: CHANGE_TYPES.MOVE,
345
+ content: {
346
+ movedElements: [{
347
+ id: compositeChild.completeId,
348
+ sourceIndex: actualDragItemIndex,
349
+ targetIndex: finalTargetIndex + 1 // +1 as it will be after the main dragObject
350
+ }],
351
+ source: {
352
+ id: wrapperId,
353
+ aggregation: "items"
354
+ },
355
+ target: {
356
+ id: wrapperId,
357
+ aggregation: "items"
358
+ }
359
+ }
360
+ }
361
+ });
362
+ });
363
+ }
170
364
  void this.loadSections();
171
365
  }
172
366
  focusDraggedItem(this.layoutTable, dropItemIndex);
@@ -180,7 +374,7 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
180
374
  */
181
375
  _getActualIndex: function _getActualIndex(id) {
182
376
  const layout = this._getPanel();
183
- this._allLayoutElements = this._allLayoutElements || [...layout.getItems()];
377
+ this._allLayoutElements = layout.getItems();
184
378
  const isLayoutExpanded = layout.getProperty("expanded");
185
379
  const expandedElementConfig = layout._getCurrentExpandedElement();
186
380
  if (isLayoutExpanded && expandedElementConfig) {
@@ -210,7 +404,9 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
210
404
  */
211
405
  createShowHideChangeFile: function _createShowHideChangeFile(oControlEvent, section) {
212
406
  const isCheckBoxSelected = !oControlEvent.getParameter("pressed");
407
+ const selectedCompleteId = section.completeId;
213
408
  const keyUserChanges = this.getKeyUserChanges();
409
+ const wrapperItem = Element.getElementById(section.completeId);
214
410
  const changeType = isCheckBoxSelected ? CHANGE_TYPES.UNHIDE : CHANGE_TYPES.HIDE;
215
411
  const oExistingChange = keyUserChanges.find(oChange => {
216
412
  return oChange.selectorControl.getId() === section.completeId;
@@ -223,10 +419,27 @@ sap.ui.define(["sap/m/Column", "sap/m/ColumnListItem", "sap/m/HBox", "sap/m/Obje
223
419
  this.addKeyUserChanges({
224
420
  selectorControl: Element.getElementById(section.completeId),
225
421
  changeSpecificData: {
226
- changeType
422
+ changeType: changeType,
423
+ content: {
424
+ compositeId: wrapperItem.getProperty("compositeId")
425
+ }
227
426
  }
228
427
  });
229
428
  }
429
+ //update this.orderedSections
430
+ this.orderedSections.forEach(section => {
431
+ //now check if oWrapperItem has composite id and check if section has same composite id and composite id is not undefined
432
+ // if yes, then loop through the children item and update its visibility
433
+ if (section.compositeId === wrapperItem.getProperty("compositeId") && section.compositeId !== undefined) {
434
+ section.children?.forEach(child => {
435
+ if (child.completeId === selectedCompleteId) {
436
+ child.visible = isCheckBoxSelected;
437
+ }
438
+ });
439
+ } else if (section.completeId === selectedCompleteId) {
440
+ section.visible = isCheckBoxSelected;
441
+ }
442
+ });
230
443
  }
231
444
  });
232
445
  return KeyUserLayoutSettingsPanel;