@sapui5/sap.cux.home 1.142.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 (293) hide show
  1. package/package.json +1 -1
  2. package/src/sap/cux/home/.library +4 -1
  3. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts +3 -2
  4. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
  5. package/src/sap/cux/home/AdvancedSettingsPanel.js +6 -5
  6. package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
  7. package/src/sap/cux/home/AdvancedSettingsPanel.ts +6 -5
  8. package/src/sap/cux/home/App.d.ts.map +1 -1
  9. package/src/sap/cux/home/App.js +3 -0
  10. package/src/sap/cux/home/App.js.map +1 -1
  11. package/src/sap/cux/home/App.ts +3 -0
  12. package/src/sap/cux/home/AppsAdditionPanel.d.ts +74 -34
  13. package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
  14. package/src/sap/cux/home/AppsAdditionPanel.js +344 -146
  15. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  16. package/src/sap/cux/home/AppsAdditionPanel.ts +367 -149
  17. package/src/sap/cux/home/AppsContainer.js +2 -1
  18. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  19. package/src/sap/cux/home/AppsContainer.ts +2 -2
  20. package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
  21. package/src/sap/cux/home/BaseContainer.js +9 -1
  22. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  23. package/src/sap/cux/home/BaseContainer.ts +6 -2
  24. package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
  25. package/src/sap/cux/home/BaseContainerRenderer.js +6 -0
  26. package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
  27. package/src/sap/cux/home/BaseContainerRenderer.ts +6 -0
  28. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  29. package/src/sap/cux/home/BaseNewsPanel.ts +2 -2
  30. package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
  31. package/src/sap/cux/home/BasePanel.js +3 -2
  32. package/src/sap/cux/home/BasePanel.js.map +1 -1
  33. package/src/sap/cux/home/BasePanel.ts +2 -1
  34. package/src/sap/cux/home/CardsContainer.d.ts +108 -0
  35. package/src/sap/cux/home/CardsContainer.d.ts.map +1 -0
  36. package/src/sap/cux/home/CardsContainer.js +207 -0
  37. package/src/sap/cux/home/CardsContainer.js.map +1 -0
  38. package/src/sap/cux/home/CardsContainer.ts +202 -0
  39. package/src/sap/cux/home/CardsPanel.d.ts +25 -59
  40. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  41. package/src/sap/cux/home/CardsPanel.js +157 -155
  42. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  43. package/src/sap/cux/home/CardsPanel.ts +152 -175
  44. package/src/sap/cux/home/ContentAdditionDialog.d.ts +2 -0
  45. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  46. package/src/sap/cux/home/ContentAdditionDialog.js +12 -6
  47. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  48. package/src/sap/cux/home/ContentAdditionDialog.ts +13 -5
  49. package/src/sap/cux/home/ErrorPanel.d.ts +0 -5
  50. package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
  51. package/src/sap/cux/home/ErrorPanel.gen.d.ts +31 -0
  52. package/src/sap/cux/home/ErrorPanel.js +11 -16
  53. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  54. package/src/sap/cux/home/ErrorPanel.ts +7 -19
  55. package/src/sap/cux/home/FavAppPanel.d.ts +1 -2
  56. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  57. package/src/sap/cux/home/FavAppPanel.js +296 -301
  58. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  59. package/src/sap/cux/home/FavAppPanel.ts +18 -14
  60. package/src/sap/cux/home/InsightsAdditionPanel.d.ts +4 -4
  61. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  62. package/src/sap/cux/home/InsightsAdditionPanel.js +10 -9
  63. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  64. package/src/sap/cux/home/InsightsAdditionPanel.ts +9 -8
  65. package/src/sap/cux/home/InsightsTilesSettingsPanel.js +1 -1
  66. package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
  67. package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +3 -3
  68. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +3 -0
  69. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
  70. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +252 -39
  71. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
  72. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +288 -58
  73. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  74. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +11 -10
  75. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  76. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +12 -10
  77. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +2 -2
  78. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  79. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +7 -7
  80. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
  81. package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +2 -2
  82. package/src/sap/cux/home/Layout.d.ts +3 -1
  83. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  84. package/src/sap/cux/home/Layout.js +45 -8
  85. package/src/sap/cux/home/Layout.js.map +1 -1
  86. package/src/sap/cux/home/Layout.ts +55 -8
  87. package/src/sap/cux/home/LayoutSettingsPanel.d.ts +10 -0
  88. package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
  89. package/src/sap/cux/home/LayoutSettingsPanel.js +341 -56
  90. package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
  91. package/src/sap/cux/home/LayoutSettingsPanel.ts +380 -64
  92. package/src/sap/cux/home/{NewsAndPagesContainer.d.ts → NewsContainer.d.ts} +13 -14
  93. package/src/sap/cux/home/NewsContainer.d.ts.map +1 -0
  94. package/src/sap/cux/home/{NewsAndPagesContainer.gen.d.ts → NewsContainer.gen.d.ts} +3 -3
  95. package/src/sap/cux/home/{NewsAndPagesContainer.js → NewsContainer.js} +26 -113
  96. package/src/sap/cux/home/NewsContainer.js.map +1 -0
  97. package/src/sap/cux/home/{NewsAndPagesContainer.ts → NewsContainer.ts} +29 -118
  98. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  99. package/src/sap/cux/home/NewsGroup.ts +1 -1
  100. package/src/sap/cux/home/NewsPanel.js +2 -2
  101. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  102. package/src/sap/cux/home/NewsPanel.ts +3 -3
  103. package/src/sap/cux/home/NewsSettingsPanel.js +3 -3
  104. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  105. package/src/sap/cux/home/NewsSettingsPanel.ts +4 -4
  106. package/src/sap/cux/home/PagePanel.d.ts +1 -1
  107. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  108. package/src/sap/cux/home/PagePanel.js +18 -10
  109. package/src/sap/cux/home/PagePanel.js.map +1 -1
  110. package/src/sap/cux/home/PagePanel.ts +25 -15
  111. package/src/sap/cux/home/PagesContainer.d.ts +72 -0
  112. package/src/sap/cux/home/PagesContainer.d.ts.map +1 -0
  113. package/src/sap/cux/home/PagesContainer.gen.d.ts +78 -0
  114. package/src/sap/cux/home/PagesContainer.js +333 -0
  115. package/src/sap/cux/home/PagesContainer.js.map +1 -0
  116. package/src/sap/cux/home/PagesContainer.ts +179 -0
  117. package/src/sap/cux/home/SettingsDialog.d.ts +7 -0
  118. package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
  119. package/src/sap/cux/home/SettingsDialog.js +18 -10
  120. package/src/sap/cux/home/SettingsDialog.js.map +1 -1
  121. package/src/sap/cux/home/SettingsDialog.ts +20 -13
  122. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +8 -60
  123. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
  124. package/src/sap/cux/home/SpaceInsightsPanel.js +66 -132
  125. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
  126. package/src/sap/cux/home/SpaceInsightsPanel.ts +69 -151
  127. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  128. package/src/sap/cux/home/TaskPanel.js +14 -12
  129. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  130. package/src/sap/cux/home/TaskPanel.ts +17 -15
  131. package/src/sap/cux/home/TilesContainer.d.ts +111 -0
  132. package/src/sap/cux/home/TilesContainer.d.ts.map +1 -0
  133. package/src/sap/cux/home/TilesContainer.js +218 -0
  134. package/src/sap/cux/home/TilesContainer.js.map +1 -0
  135. package/src/sap/cux/home/TilesContainer.ts +216 -0
  136. package/src/sap/cux/home/TilesPanel.d.ts +22 -52
  137. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  138. package/src/sap/cux/home/TilesPanel.js +184 -165
  139. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  140. package/src/sap/cux/home/TilesPanel.ts +160 -154
  141. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  142. package/src/sap/cux/home/ToDoPanel.js +30 -58
  143. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  144. package/src/sap/cux/home/ToDoPanel.ts +29 -28
  145. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts +2 -2
  146. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
  147. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +1 -1
  148. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
  149. package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +4 -4
  150. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts +2 -2
  151. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
  152. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -1
  153. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
  154. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +4 -4
  155. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts +2 -2
  156. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts.map +1 -1
  157. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js +1 -1
  158. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js.map +1 -1
  159. package/src/sap/cux/home/changeHandler/SpacePageColorHandler.ts +3 -3
  160. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts +2 -2
  161. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
  162. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +4 -4
  163. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
  164. package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +5 -5
  165. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
  166. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +30 -3
  167. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
  168. package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +23 -1
  169. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +29 -19
  170. package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
  171. package/src/sap/cux/home/flexibility/Layout.flexibility.js +78 -2
  172. package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
  173. package/src/sap/cux/home/flexibility/Layout.flexibility.ts +81 -1
  174. package/src/sap/cux/home/i18n/messagebundle.properties +33 -13
  175. package/src/sap/cux/home/i18n/messagebundle_ar.properties +8 -4
  176. package/src/sap/cux/home/i18n/messagebundle_bg.properties +8 -4
  177. package/src/sap/cux/home/i18n/messagebundle_ca.properties +8 -4
  178. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +8 -4
  179. package/src/sap/cux/home/i18n/messagebundle_cs.properties +8 -4
  180. package/src/sap/cux/home/i18n/messagebundle_cy.properties +8 -4
  181. package/src/sap/cux/home/i18n/messagebundle_da.properties +8 -4
  182. package/src/sap/cux/home/i18n/messagebundle_de.properties +8 -4
  183. package/src/sap/cux/home/i18n/messagebundle_el.properties +8 -4
  184. package/src/sap/cux/home/i18n/messagebundle_en.properties +9 -5
  185. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +8 -4
  186. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +14 -6
  187. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +14 -6
  188. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +8 -4
  189. package/src/sap/cux/home/i18n/messagebundle_es.properties +8 -4
  190. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +8 -4
  191. package/src/sap/cux/home/i18n/messagebundle_et.properties +8 -4
  192. package/src/sap/cux/home/i18n/messagebundle_fi.properties +8 -4
  193. package/src/sap/cux/home/i18n/messagebundle_fr.properties +8 -4
  194. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +8 -4
  195. package/src/sap/cux/home/i18n/messagebundle_hi.properties +8 -4
  196. package/src/sap/cux/home/i18n/messagebundle_hr.properties +8 -4
  197. package/src/sap/cux/home/i18n/messagebundle_hu.properties +8 -4
  198. package/src/sap/cux/home/i18n/messagebundle_id.properties +8 -4
  199. package/src/sap/cux/home/i18n/messagebundle_it.properties +10 -6
  200. package/src/sap/cux/home/i18n/messagebundle_iw.properties +8 -4
  201. package/src/sap/cux/home/i18n/messagebundle_ja.properties +8 -4
  202. package/src/sap/cux/home/i18n/messagebundle_kk.properties +8 -4
  203. package/src/sap/cux/home/i18n/messagebundle_ko.properties +8 -4
  204. package/src/sap/cux/home/i18n/messagebundle_lt.properties +8 -4
  205. package/src/sap/cux/home/i18n/messagebundle_lv.properties +8 -4
  206. package/src/sap/cux/home/i18n/messagebundle_mk.properties +8 -4
  207. package/src/sap/cux/home/i18n/messagebundle_ms.properties +8 -4
  208. package/src/sap/cux/home/i18n/messagebundle_nl.properties +8 -4
  209. package/src/sap/cux/home/i18n/messagebundle_no.properties +8 -4
  210. package/src/sap/cux/home/i18n/messagebundle_pl.properties +8 -4
  211. package/src/sap/cux/home/i18n/messagebundle_pt.properties +8 -4
  212. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +8 -4
  213. package/src/sap/cux/home/i18n/messagebundle_ro.properties +8 -4
  214. package/src/sap/cux/home/i18n/messagebundle_ru.properties +8 -4
  215. package/src/sap/cux/home/i18n/messagebundle_sh.properties +8 -4
  216. package/src/sap/cux/home/i18n/messagebundle_sk.properties +8 -4
  217. package/src/sap/cux/home/i18n/messagebundle_sl.properties +8 -4
  218. package/src/sap/cux/home/i18n/messagebundle_sr.properties +8 -4
  219. package/src/sap/cux/home/i18n/messagebundle_sv.properties +8 -4
  220. package/src/sap/cux/home/i18n/messagebundle_th.properties +8 -4
  221. package/src/sap/cux/home/i18n/messagebundle_tr.properties +8 -4
  222. package/src/sap/cux/home/i18n/messagebundle_uk.properties +8 -4
  223. package/src/sap/cux/home/i18n/messagebundle_vi.properties +8 -4
  224. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +8 -4
  225. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +8 -4
  226. package/src/sap/cux/home/interface/AppsInterface.d.ts +1 -0
  227. package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
  228. package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
  229. package/src/sap/cux/home/interface/AppsInterface.ts +1 -0
  230. package/src/sap/cux/home/interface/KeyUserInterface.d.ts +27 -4
  231. package/src/sap/cux/home/interface/KeyUserInterface.d.ts.map +1 -1
  232. package/src/sap/cux/home/interface/KeyUserInterface.js.map +1 -1
  233. package/src/sap/cux/home/interface/KeyUserInterface.ts +23 -4
  234. package/src/sap/cux/home/interface/LayoutInterface.d.ts +7 -0
  235. package/src/sap/cux/home/interface/LayoutInterface.d.ts.map +1 -1
  236. package/src/sap/cux/home/interface/LayoutInterface.js.map +1 -1
  237. package/src/sap/cux/home/interface/LayoutInterface.ts +7 -0
  238. package/src/sap/cux/home/library.d.ts.map +1 -1
  239. package/src/sap/cux/home/library.js +7 -4
  240. package/src/sap/cux/home/library.js.map +1 -1
  241. package/src/sap/cux/home/library.ts +10 -5
  242. package/src/sap/cux/home/themes/base/BaseContainer.less +36 -0
  243. package/src/sap/cux/home/themes/base/BaseLayout.less +11 -0
  244. package/src/sap/cux/home/themes/base/{InsightsContainer.less → CardsContainer.less} +0 -45
  245. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +10 -18
  246. package/src/sap/cux/home/themes/base/PlaceHolder.less +1 -1
  247. package/src/sap/cux/home/themes/base/SettingsDialog.less +4 -0
  248. package/src/sap/cux/home/themes/base/TilesContainer.less +65 -0
  249. package/src/sap/cux/home/themes/base/library.source.less +2 -1
  250. package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
  251. package/src/sap/cux/home/utils/AppManager.js +2 -1
  252. package/src/sap/cux/home/utils/AppManager.js.map +1 -1
  253. package/src/sap/cux/home/utils/AppManager.ts +2 -2
  254. package/src/sap/cux/home/utils/PerformanceUtils.d.ts +4 -2
  255. package/src/sap/cux/home/utils/PerformanceUtils.d.ts.map +1 -1
  256. package/src/sap/cux/home/utils/PerformanceUtils.js +4 -2
  257. package/src/sap/cux/home/utils/PerformanceUtils.js.map +1 -1
  258. package/src/sap/cux/home/utils/PerformanceUtils.ts +4 -2
  259. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +155 -151
  260. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts +8 -0
  261. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts.map +1 -0
  262. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.js → CardsPlaceholder.js} +3 -77
  263. package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.js.map +1 -0
  264. package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.ts → CardsPlaceholder.ts} +1 -75
  265. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts +8 -0
  266. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts.map +1 -0
  267. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js +44 -0
  268. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js.map +1 -0
  269. package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.ts +34 -0
  270. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts +8 -0
  271. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts.map +1 -0
  272. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.js → PagesPlaceholder.js} +3 -23
  273. package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.js.map +1 -0
  274. package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.ts → PagesPlaceholder.ts} +1 -21
  275. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts +8 -0
  276. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts.map +1 -0
  277. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js +95 -0
  278. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js.map +1 -0
  279. package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.ts +85 -0
  280. package/ui5.yaml +1 -0
  281. package/src/sap/cux/home/InsightsContainer.d.ts +0 -205
  282. package/src/sap/cux/home/InsightsContainer.d.ts.map +0 -1
  283. package/src/sap/cux/home/InsightsContainer.js +0 -459
  284. package/src/sap/cux/home/InsightsContainer.js.map +0 -1
  285. package/src/sap/cux/home/InsightsContainer.ts +0 -489
  286. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +0 -1
  287. package/src/sap/cux/home/NewsAndPagesContainer.js.map +0 -1
  288. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +0 -8
  289. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +0 -1
  290. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +0 -1
  291. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts +0 -8
  292. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +0 -1
  293. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +0 -1
@@ -19,7 +19,7 @@ import BaseLayout from "./BaseLayout";
19
19
  import type { $BaseNewsPanelSettings } from "./BaseNewsPanel";
20
20
  import BaseNewsPanel from "./BaseNewsPanel";
21
21
  import MenuItem from "./MenuItem";
22
- import NewsAndPagesContainer from "./NewsAndPagesContainer";
22
+ import NewsAndPagesContainer from "./NewsContainer";
23
23
  import NewsGroup from "./NewsGroup";
24
24
  import NewsItem from "./NewsItem";
25
25
  import { NewsType } from "./library";
@@ -951,7 +951,7 @@ export default class NewsPanel extends BaseNewsPanel {
951
951
  * @returns {INewsFeed[]} An array of news feed items that have associated articles.
952
952
  * @private
953
953
  */
954
- private removeExpiredArticleGroup(newsFeedItems: INewsFeed[]): INewsFeed[] {
954
+ private removeExpiredArticleGroup(newsFeedItems: INewsFeed[] = []): INewsFeed[] {
955
955
  const defaultNews: INewsFeed[] = [];
956
956
  const defaultFeedSet = new Set<string>();
957
957
  for (const feed of newsFeedItems) {
@@ -1097,7 +1097,7 @@ export default class NewsPanel extends BaseNewsPanel {
1097
1097
  const feedType = this.getNewsType();
1098
1098
  const isDefaultNews = feedType === NewsType.Default;
1099
1099
  if (isDefaultNews) {
1100
- let aDefaultNewsItems = this.defaultNewsItems ?? (await this.getDefaultNewsData());
1100
+ let aDefaultNewsItems = this.defaultNewsItems ? this.defaultNewsItems : await this.getDefaultNewsData();
1101
1101
  return this.removeExpiredArticleGroup(aDefaultNewsItems);
1102
1102
  } else {
1103
1103
  return this.getCustomFeedData(sFeedId, showAllPreparationRequired);
@@ -197,7 +197,7 @@ sap.ui.define(["sap/m/Button", "sap/m/CheckBox", "sap/m/Column", "sap/m/ColumnLi
197
197
  visible: false
198
198
  }).addStyleClass("sapUiTinyMarginBegin");
199
199
  const placeHolderCol = new Column(this.getId() + "--idNewsGroupPlaceHolder", {
200
- width: "8%"
200
+ width: "15%"
201
201
  });
202
202
 
203
203
  //title column
@@ -205,13 +205,13 @@ sap.ui.define(["sap/m/Button", "sap/m/CheckBox", "sap/m/Column", "sap/m/ColumnLi
205
205
  header: new Label(this.getId() + "--idNewsGroupTitleLbl", {
206
206
  text: this._i18nBundle.getText("defaultNewsSettingsHeading")
207
207
  }),
208
- width: "50%"
208
+ width: "45%"
209
209
  });
210
210
  const articleCount = new Column(this.getId() + "--idNewsGroupCount", {
211
211
  header: new Label(this.getId() + "--idNewsGroupCountLbl", {
212
212
  text: this._i18nBundle.getText("articleCount")
213
213
  }),
214
- width: "42%"
214
+ width: "40%"
215
215
  });
216
216
  this.groupTable.addColumn(placeHolderCol);
217
217
  this.groupTable.addColumn(titleCol);
@@ -1 +1 @@
1
- {"version":3,"file":"NewsSettingsPanel.js","names":["sap","ui","define","Button","CheckBox","Column","ColumnListItem","CustomListItem","HBox","Label","List","Switch","Table","Text","Title","VBox","CustomData","__BaseSettingsPanel","___library","___utils_Accessibility","___utils_Constants","___utils_FESRUtil","__PersonalisationUtils","__UshellPersonalizer","_interopRequireDefault","obj","__esModule","default","BaseSettingsPanel","NewsType","getInvisibleText","SETTINGS_PANELS_KEYS","addFESRSemanticStepName","FESR_EVENTS","PersonalisationUtils","UshellPersonalizer","NewsSettingsPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","NEWS","_i18nBundle","getText","_resetActionButton","id","getId","visible","enabled","text","press","resetDefaultNewsSettings","addActionButton","addAggregation","getContent","attachPanelNavigated","loadNewsFeedSettings","aFavNewsFeed","_getContent","oHeader","setHeader","oTitle","setTitleMessage","oContentVBox","alignItems","justifyContent","items","createCustomNewsList","createNewsGroupTable","getPersonalization","_getPersonalization","_this","_temp2","oPersonalizer","_temp","Promise","resolve","getInstance","getPersContainerId","_getPanel","getOwnerComponent","then","_UshellPersonalizer$g","e","reject","_setHeader","headerText","oHeaderVBox","addStyleClass","_setTitleMessage","title","titleStyle","oTitleHbox","oTitleVBox","_createCustomNewsList","newsListVBox","oShowSwitchLabel","oShowSwitch","customTextOn","customTextOff","change","saveNewsFeedSettings","state","ariaLabelledBy","CHANGE","oCustNewsSwitchContainer","width","oShowAllPrep","oInvisibleText","oList","direction","_createNewsGroupTable","groupTable","includeItemInSelection","placeHolderCol","titleCol","header","articleCount","addColumn","isCSVFileFormat","_isCSVFileFormat","fileName","split","pop","toLowerCase","_saveNewsFeedSettings","_this2","selectedFeeds","deselectedDefaultFeeds","newsType","oNewsPanel","getNewsType","showDefault","Default","customFileName","getProperty","feedKey","getCustomFeedKey","push","collectDeselectedDefaultGroupIds","collectSelectedCustomFeedTitles","personalizer","read","personalizationData","defaultNewsFeed","favNewsFeed","showAllPreparationRequired","getState","write","setState","setEnabled","length","setCustomNewsFeed","_collectSelectedCustomFeedTitles","getItems","flatMap","item","content","getAggregation","hBox","checkBox","getSelected","_collectDeselectedDefaultGroupIds","rows","row","cells","getCells","groupId","getDefaultGroupId","_getDefaultGroupId","contentBox","customData","getCustomData","getValue","setCustomNewsItems","_setCustomNewsItems","aItems","destroyAggregation","forEach","oItem","i","oNewsListItemHbox","select","selected","disabled","customListItem","addItem","_loadNewsFeedSettings","_this3","sFeedKey","showDefaultNewsFeed","setVisible","oPersData","aPersNewsFeed","aNewsFeed","getDefaultNewsData","_this3$oNewsPanel$get","_handleDefaultNewsFeed","getCustomOrDefaultNewsFeed","_this3$oNewsPanel$get2","_handleCustomNewsFeed","setText","mandatoryNewsFeed","getMandatoryDefaultNewsFeed","map","oNewsFeed","isDeselected","group_id","includes","setColumnListItems","_setColumnListItems","destroyItems","colListItem","type","String","_group_to_article","addCustomData","key","value","favFeedTitles","isFavorite","_resetDefaultNewsSettings","_this4","isSupported","_isSupported","_this5","newsPanel","getParent","Custom","isNoUpdatesNewsFeed"],"sources":["NewsSettingsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport CheckBox from \"sap/m/CheckBox\";\nimport Column from \"sap/m/Column\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport HBox from \"sap/m/HBox\";\nimport Label from \"sap/m/Label\";\nimport List from \"sap/m/List\";\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 Component from \"sap/ui/core/Component\";\nimport Control from \"sap/ui/core/Control\";\nimport CustomData from \"sap/ui/core/CustomData\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport { NewsType } from \"./library\";\nimport NewsAndPagesContainer from \"./NewsAndPagesContainer\";\nimport NewsPanel, { INewsFeed } from \"./NewsPanel\";\nimport { getInvisibleText } from \"./utils/Accessibility\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\nimport UshellPersonalizer from \"./utils/UshellPersonalizer\";\n\ninterface IFavNewsFeed {\n\titems: string[];\n\tshowAllPreparationRequired?: boolean;\n}\n\n/**\n *\n * Class for My Home News 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.NewsSettingsPanel\n */\nexport default class NewsSettingsPanel extends BaseSettingsPanel {\n\tprivate oShowSwitch!: Switch;\n\tprivate oCustNewsSwitchContainer!: HBox;\n\tprivate oList!: List;\n\tprivate oPersonalizer!: UshellPersonalizer;\n\tprivate oNewsPanel!: NewsPanel;\n\tprivate aFavNewsFeed!: INewsFeed[] | string[];\n\tprivate deselectedDefaultFeeds!: string[];\n\tprivate headerText!: Text;\n\tprivate title!: Title;\n\tprivate groupTable!: Table;\n\tprivate newsListVBox!: VBox;\n\tprivate _resetActionButton!: Button;\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.NEWS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"news\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://newspaper\");\n\n\t\tthis._resetActionButton = new Button({\n\t\t\tid: `${this.getId()}-newsResetBtn`,\n\t\t\tvisible: false,\n\t\t\tenabled: false,\n\t\t\ttext: this._i18nBundle.getText(\"resetDefaultButton\"),\n\t\t\tpress: () => this.resetDefaultNewsSettings()\n\t\t});\n\t\t// Add button to actionButtons aggregation\n\t\tthis.addActionButton(this._resetActionButton);\n\t\t//setup layout content\n\t\tthis.addAggregation(\"content\", this.getContent());\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated(() => {\n\t\t\tvoid this.loadNewsFeedSettings();\n\t\t});\n\t\tthis.aFavNewsFeed = [];\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel.\n\t *\n\t * @private\n\t * @returns {Control} The control containing the News Settings Panel content.\n\t */\n\tprivate getContent(): Control {\n\t\tconst oHeader = this.setHeader();\n\t\tconst oTitle = this.setTitleMessage();\n\t\tconst oContentVBox = new VBox(this.getId() + \"--idNewsPageOuterVBoX\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oHeader, oTitle, this.createCustomNewsList(), this.createNewsGroupTable()]\n\t\t});\n\t\treturn oContentVBox;\n\t}\n\n\t/**\n\t * Get personalization instance\n\t */\n\tprivate async getPersonalization() {\n\t\tif (!this.oPersonalizer) {\n\t\t\tthis.oPersonalizer = await UshellPersonalizer.getInstance(\n\t\t\t\tPersonalisationUtils.getPersContainerId(this._getPanel()),\n\t\t\t\tPersonalisationUtils.getOwnerComponent(this._getPanel()) as Component\n\t\t\t);\n\t\t}\n\t\treturn this.oPersonalizer;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Header.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Header content.\n\t */\n\tprivate setHeader() {\n\t\tthis.headerText = new Text(this.getId() + \"--idCustNewsFeedSettingsText\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsText\")\n\t\t});\n\t\tconst oHeaderVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTextContainer\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.headerText]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oHeaderVBox;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Title description.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Title description.\n\t */\n\tprivate setTitleMessage() {\n\t\tthis.title = new Title(this.getId() + \"--idCustNewsFeedSettignsTitle\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsHeading\"),\n\t\t\ttitleStyle: \"H3\"\n\t\t});\n\t\tconst oTitleHbox = new HBox(this.getId() + \"--idCustNewsFeedSettingsTitleContainer\", {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.title]\n\t\t});\n\t\tconst oTitleVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTitleVBox\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oTitleHbox]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oTitleVBox;\n\t}\n\n\t/**\n\t * Returns the content for the news List for custom news feed\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's List\n\t */\n\tprivate createCustomNewsList() {\n\t\tif (!this.newsListVBox) {\n\t\t\t//showAllPrepRequired Switch\n\t\t\tconst oShowSwitchLabel = new Label(this.getId() + \"--idShowAllCustNewsSwitchLabel\", {\n\t\t\t\ttext: this._i18nBundle.getText(\"showAllPreparationRequiredSwitchLabel\")\n\t\t\t});\n\t\t\tthis.oShowSwitch = new Switch(`${this.getId()}-showSwitch`, {\n\t\t\t\tcustomTextOn: \" \",\n\t\t\t\tcustomTextOff: \" \",\n\t\t\t\tchange: () => {\n\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t},\n\t\t\t\tstate: false,\n\t\t\t\tariaLabelledBy: [`${this.getId()}--idShowAllCustNewsSwitchLabel`]\n\t\t\t});\n\t\t\taddFESRSemanticStepName(this.oShowSwitch, FESR_EVENTS.CHANGE, \"showPrepRequire\");\n\t\t\tthis.oCustNewsSwitchContainer = new HBox(this.getId() + \"--idShowAllCustNewsSwitchContainer\", {\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [oShowSwitchLabel, this.oShowSwitch],\n\t\t\t\twidth: \"94%\"\n\t\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\n\t\t\tconst oShowAllPrep = new VBox(this.getId() + \"--idShowAllCustNewsSwitchVBox\", {\n\t\t\t\titems: [this.oCustNewsSwitchContainer],\n\t\t\t\twidth: \"94%\"\n\t\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\t\t\tconst oInvisibleText = getInvisibleText(`${this.getId()}--newsTitleText`, this._i18nBundle.getText(\"newsTitle\"));\n\t\t\t//List of news items\n\t\t\tthis.oList = new List(this.getId() + \"--idCustNewsFeedList\", {\n\t\t\t\tariaLabelledBy: [\n\t\t\t\t\toInvisibleText.getId(),\n\t\t\t\t\t`${this.getId()}--idCustNewsFeedSettingsText`,\n\t\t\t\t\t`${this.getId()}--idCustNewsFeedSettignsTitle`\n\t\t\t\t]\n\t\t\t});\n\t\t\t//Outer VBox\n\t\t\tthis.newsListVBox = new VBox(this.getId() + \"--idCustNewsFeedListContainer\", {\n\t\t\t\tdirection: \"Column\",\n\t\t\t\tvisible: false,\n\t\t\t\titems: [this.oList, oShowAllPrep, oInvisibleText],\n\t\t\t\twidth: \"96%\"\n\t\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\t}\n\t\treturn this.newsListVBox;\n\t}\n\n\t/**\n\t *\tCreates and returns a table for managing default news group settings.\n\t * @returns {Table} Table for news groups for default manage news feed\n\t * @private\n\t */\n\tprivate createNewsGroupTable() {\n\t\t//Table for news groups\n\t\tif (!this.groupTable) {\n\t\t\tthis.groupTable = new Table(this.getId() + \"--idNewsGroupTbl\", {\n\t\t\t\tincludeItemInSelection: true,\n\t\t\t\tvisible: false\n\t\t\t}).addStyleClass(\"sapUiTinyMarginBegin\");\n\t\t\tconst placeHolderCol = new Column(this.getId() + \"--idNewsGroupPlaceHolder\", {\n\t\t\t\twidth: \"8%\"\n\t\t\t});\n\n\t\t\t//title column\n\t\t\tconst titleCol = new Column(this.getId() + \"--idNewsGroupTitle\", {\n\t\t\t\theader: new Label(this.getId() + \"--idNewsGroupTitleLbl\", {\n\t\t\t\t\ttext: this._i18nBundle.getText(\"defaultNewsSettingsHeading\")\n\t\t\t\t}),\n\t\t\t\twidth: \"50%\"\n\t\t\t});\n\t\t\tconst articleCount = new Column(this.getId() + \"--idNewsGroupCount\", {\n\t\t\t\theader: new Label(this.getId() + \"--idNewsGroupCountLbl\", {\n\t\t\t\t\ttext: this._i18nBundle.getText(\"articleCount\")\n\t\t\t\t}),\n\t\t\t\twidth: \"42%\"\n\t\t\t});\n\t\t\tthis.groupTable.addColumn(placeHolderCol);\n\t\t\tthis.groupTable.addColumn(titleCol);\n\t\t\tthis.groupTable.addColumn(articleCount);\n\t\t}\n\t\treturn this.groupTable;\n\t}\n\t/**\n\t * Checks if the custom file format is CSV based on the custom file name.\n\t *\n\t * @param {string} fileName - The custom file name.\n\t * @returns {boolean} True if the file format is CSV, otherwise false.\n\t */\n\tprivate isCSVFileFormat(fileName: string): boolean {\n\t\treturn fileName.split(\".\").pop()?.toLowerCase() === \"csv\";\n\t}\n\n\t/**\n\t *\n\t * Saves news feed settings and shows news feed based on selection change of list of switch\n\t *\n\t * @private\n\t */\n\tprivate async saveNewsFeedSettings(): Promise<void> {\n\t\tconst selectedFeeds: string[] = [];\n\t\tconst deselectedDefaultFeeds: string[] = [];\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefault = newsType === NewsType.Default;\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tconst feedKey = this.oNewsPanel.getCustomFeedKey();\n\t\tif (showDefault) {\n\t\t\tdeselectedDefaultFeeds.push(...this.collectDeselectedDefaultGroupIds());\n\t\t} else {\n\t\t\tselectedFeeds.push(...this.collectSelectedCustomFeedTitles());\n\t\t}\n\n\t\tconst personalizer = await this.getPersonalization();\n\t\tconst personalizationData = (await personalizer.read()) || {};\n\n\t\tif (showDefault) {\n\t\t\tpersonalizationData.defaultNewsFeed = { items: deselectedDefaultFeeds };\n\t\t} else {\n\t\t\tpersonalizationData.favNewsFeed = {\n\t\t\t\titems: selectedFeeds,\n\t\t\t\tshowAllPreparationRequired: this.isCSVFileFormat(customFileName) ? false : this.oShowSwitch.getState()\n\t\t\t} as IFavNewsFeed;\n\t\t}\n\n\t\tawait personalizer.write(personalizationData);\n\n\t\t// get the latest value of switch and set the state\n\t\tif (!showDefault) {\n\t\t\tthis.oShowSwitch.setState(personalizationData.favNewsFeed?.showAllPreparationRequired);\n\t\t} else {\n\t\t\tthis._resetActionButton.setEnabled(!!(deselectedDefaultFeeds.length > 0));\n\t\t}\n\t\tawait this.oNewsPanel.setCustomNewsFeed(showDefault ? \"\" : feedKey);\n\t}\n\n\t/**\n\t * Collect selected custom feed titles from the list\n\t * @returns {string[]} Array of selected custom feed titles\n\t * @private\n\t */\n\tprivate collectSelectedCustomFeedTitles(): string[] {\n\t\tconst items = this.oList?.getItems() ?? [];\n\t\tif (!items.length) return [];\n\t\treturn items.flatMap((item) => {\n\t\t\tconst content = item.getAggregation(\"content\") as Control[] | undefined;\n\t\t\tconst hBox = content?.[0] as HBox | undefined;\n\t\t\tif (!hBox) return [];\n\t\t\tconst [checkBox, text] = hBox.getItems() as [CheckBox, Text];\n\t\t\treturn checkBox.getSelected() ? [text.getText()] : [];\n\t\t});\n\t}\n\n\t/**\n\t * Collect deselected default group IDs from the table\n\t * @returns {string[]} Array of deselected default group IDs from the table\n\t * @private\n\t */\n\tprivate collectDeselectedDefaultGroupIds(): string[] {\n\t\tconst rows = (this.groupTable?.getItems() as ColumnListItem[]) ?? [];\n\t\tif (!rows.length) return [];\n\t\treturn rows.flatMap((row: ColumnListItem) => {\n\t\t\tconst cells = row.getCells() as [CheckBox, Text, Text];\n\t\t\tconst checkBox = cells[0];\n\t\t\tif (checkBox.getSelected()) return [];\n\t\t\tconst groupId = this.getDefaultGroupId(row);\n\t\t\treturn groupId ? [groupId] : [];\n\t\t});\n\t}\n\n\t/**\n\t * Get groupId info for the default NewsList\n\t * @param {HBox | ColumnListItem} contentBox, content Hbox or ColumnListItem\n\t * @returns {string} groupId\n\t * @private\n\t */\n\tprivate getDefaultGroupId(contentBox: HBox | ColumnListItem): string {\n\t\tconst customData = contentBox.getCustomData();\n\t\treturn customData?.length ? (customData[0].getValue() as string) : \"\";\n\t}\n\n\t/**\n\t * Set items for the NewsList for custom news feed\n\t * @param {Array} [aItems] news items to be set as items aggregation\n\t * @private\n\t */\n\tprivate setCustomNewsItems(aItems: INewsFeed[]) {\n\t\tthis.oList.destroyAggregation(\"items\", true);\n\t\t(aItems || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tlet oNewsListItemHbox = new HBox({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItemContent--${i}`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [\n\t\t\t\t\tnew CheckBox(`${this.getId()}--custNewsFeedItemCheckBox--${i}`, {\n\t\t\t\t\t\tselect: () => {\n\t\t\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\t\t\tenabled: !oItem.disabled\n\t\t\t\t\t}),\n\t\t\t\t\tnew Text(`${this.getId()}--custNewsFeedItemText--${i}`, { text: oItem.title })\n\t\t\t\t],\n\t\t\t\twidth: \"100%\"\n\t\t\t});\n\n\t\t\tconst customListItem = new CustomListItem({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItem--${i}`,\n\t\t\t\tcontent: [oNewsListItemHbox]\n\t\t\t});\n\t\t\tthis.oList.addItem(customListItem);\n\t\t});\n\t}\n\n\t/**\n\t * Loads news feed settings\n\t *\n\t * @returns {Promise} resolves to news feed settings\n\t */\n\tprivate async loadNewsFeedSettings(): Promise<INewsFeed[] | undefined> {\n\t\tthis.oNewsPanel = this._getPanel() as NewsPanel;\n\t\tconst sFeedKey = this.oNewsPanel.getCustomFeedKey();\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefaultNewsFeed = newsType === NewsType.Default;\n\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tif (this.isCSVFileFormat(customFileName) || showDefaultNewsFeed) {\n\t\t\tthis.oCustNewsSwitchContainer.setVisible(false);\n\t\t}\n\n\t\tconst oPersonalizer = await this.getPersonalization();\n\t\tconst oPersData = await oPersonalizer.read();\n\t\tconst aPersNewsFeed = (showDefaultNewsFeed ? oPersData?.[\"defaultNewsFeed\"] : oPersData?.[\"favNewsFeed\"]) as IFavNewsFeed;\n\t\tconst showAllPreparationRequired = aPersNewsFeed?.showAllPreparationRequired ?? !aPersNewsFeed;\n\n\t\tlet aNewsFeed: INewsFeed[];\n\t\tif (showDefaultNewsFeed) {\n\t\t\tthis._resetActionButton.setVisible(true);\n\t\t\tthis._resetActionButton.setEnabled(!!(aPersNewsFeed?.items?.length > 0));\n\t\t\taNewsFeed = await this.oNewsPanel.getDefaultNewsData();\n\t\t\treturn this._handleDefaultNewsFeed(aNewsFeed, aPersNewsFeed);\n\t\t} else {\n\t\t\tthis._resetActionButton.setVisible(false);\n\t\t\taNewsFeed = await this.oNewsPanel.getCustomOrDefaultNewsFeed(showDefaultNewsFeed ? \"\" : sFeedKey, false);\n\t\t\treturn this._handleCustomNewsFeed(aNewsFeed, aPersNewsFeed, showAllPreparationRequired);\n\t\t}\n\t}\n\n\t/**\n\t *\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param {IFavNewsFeed} aPersNewsFeed\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * @description Handles the default news feed settings by setting the header text, title, and items.\n\t * It maps the news feed items to set their selected and disabled states based on the personalisation data.\n\t * If no news feed is provided, it returns undefined.\n\t */\n\tprivate _handleDefaultNewsFeed(aNewsFeed: INewsFeed[], aPersNewsFeed: IFavNewsFeed): INewsFeed[] | undefined {\n\t\tthis.headerText.setText(\n\t\t\tthis._i18nBundle.getText(\"defaultNewsSettingsText\") + \"\\n\" + this._i18nBundle.getText(\"defaultNewsSettingsSubText\")\n\t\t);\n\t\tthis.title.setVisible(false);\n\t\tthis.newsListVBox.setVisible(false);\n\t\tthis.oShowSwitch.setState(false);\n\n\t\tconst mandatoryNewsFeed = this.oNewsPanel.getMandatoryDefaultNewsFeed();\n\t\tthis.deselectedDefaultFeeds = aPersNewsFeed?.items || [];\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\t// if group_id not available in deselectedDefaultFeeds, then mark it as selected\n\t\t\tconst isDeselected = oNewsFeed.group_id ? this.deselectedDefaultFeeds.includes(oNewsFeed.group_id) : false;\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : !isDeselected;\n\t\t\t// if group_id is available in mandatoryNewsFeed, then mark it as disabled, user cannot hide mandatory feeds\n\t\t\tif (mandatoryNewsFeed.includes(oNewsFeed.group_id ?? \"\")) {\n\t\t\t\toNewsFeed.selected = true;\n\t\t\t\toNewsFeed.disabled = true;\n\t\t\t}\n\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.groupTable.setVisible(true);\n\t\tthis.setColumnListItems(aNewsFeed);\n\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * This method populates the column list items in the group table for the default news feed settings.\n\t * @param aItems Array of news feed items\n\t * @private\n\t */\n\tprivate setColumnListItems(aItems: INewsFeed[]) {\n\t\tthis.groupTable.destroyItems();\n\t\t//add column list item, title and article count\n\t\t(aItems || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tconst colListItem = new ColumnListItem({\n\t\t\t\tid: `${this.getId()}--idNewsGroupColListItem--${i}`,\n\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\ttype: \"Active\",\n\t\t\t\tcells: [\n\t\t\t\t\tnew CheckBox({\n\t\t\t\t\t\tid: `${this.getId()}--idNewsGroupCheckBox--${i}`,\n\t\t\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\t\t\tenabled: !oItem.disabled,\n\t\t\t\t\t\tselect: () => {\n\t\t\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\tnew Text({ text: oItem.title }),\n\t\t\t\t\tnew Text({ text: String(oItem._group_to_article?.length ?? 0) })\n\t\t\t\t]\n\t\t\t});\n\n\t\t\t// if showDefault is true, add group_id as custom data to the item\n\t\t\tcolListItem.addCustomData(new CustomData({ key: \"newsGroupId\", value: oItem.group_id }));\n\t\t\tthis.groupTable.addItem(colListItem);\n\t\t});\n\t}\n\t/**\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param aPersNewsFeed\n\t * @param showAllPreparationRequired\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * This method is responsible for managing the custom news feed settings in the News Settings Panel.\n\t * It updates the header text and title, checks if the news feed is available, and maps the news feed items to set their selected state.\n\t * If the news feed is not available or empty, it returns undefined.\n\t * It also sets the state of the show switch based on the `showAllPreparationRequired` parameter.\n\t */\n\tprivate _handleCustomNewsFeed(\n\t\taNewsFeed: INewsFeed[],\n\t\taPersNewsFeed: IFavNewsFeed,\n\t\tshowAllPreparationRequired: boolean\n\t): INewsFeed[] | undefined {\n\t\tthis.groupTable.setVisible(false);\n\t\tthis.headerText.setText(this._i18nBundle.getText(\"newsFeedSettingsText\"));\n\t\tthis.title.setText(this._i18nBundle.getText(\"newsFeedSettingsHeading\"));\n\t\tthis.title.setVisible(true);\n\t\tthis.newsListVBox.setVisible(true);\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst favFeedTitles: string[] = aPersNewsFeed?.items || aNewsFeed;\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\tconst isFavorite = favFeedTitles.includes(oNewsFeed.title);\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : isFavorite;\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.aFavNewsFeed = aNewsFeed;\n\t\tthis.setCustomNewsItems(this.aFavNewsFeed);\n\t\tthis.oShowSwitch.setState(!!showAllPreparationRequired);\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * Resets the default manage news' news settings to default by clearing\n\t * the personalization data and updating the news panel.\n\t * @private\n\t * @returns {Promise<INewsFeed[] | undefined>} A promise that resolves to the updated news feed items or undefined.\n\t */\n\tprivate async resetDefaultNewsSettings() {\n\t\tconst personalizer = await this.getPersonalization();\n\t\tconst personalizationData = (await personalizer.read()) || {};\n\t\tpersonalizationData.defaultNewsFeed = { items: [] };\n\t\tawait personalizer.write(personalizationData);\n\t\tawait this.oNewsPanel.setCustomNewsFeed(\"\");\n\t\tlet aNewsFeed = await this.oNewsPanel.getDefaultNewsData();\n\t\tthis._resetActionButton.setEnabled(false);\n\t\treturn this._handleDefaultNewsFeed(aNewsFeed, personalizationData.defaultNewsFeed);\n\t}\n\n\t/**\n\t * Checks if the News Settings Panel is supported based on the properties of the News Panel.\n\t *\n\t * @returns {Promise<boolean>} A promise that resolves to true if the News Settings Panel is supported, otherwise false.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst newsPanel = this._getPanel() as NewsPanel;\n\t\tif (!newsPanel || !(newsPanel?.getParent() as NewsAndPagesContainer).getProperty(\"newsFeedVisibility\")) {\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\treturn Promise.resolve(\n\t\t\t(newsPanel.getNewsType() === NewsType.Custom || newsPanel.getNewsType() === NewsType.Default) &&\n\t\t\t\t!newsPanel.isNoUpdatesNewsFeed()\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"NewsSettingsPanel.js","names":["sap","ui","define","Button","CheckBox","Column","ColumnListItem","CustomListItem","HBox","Label","List","Switch","Table","Text","Title","VBox","CustomData","__BaseSettingsPanel","___library","___utils_Accessibility","___utils_Constants","___utils_FESRUtil","__PersonalisationUtils","__UshellPersonalizer","_interopRequireDefault","obj","__esModule","default","BaseSettingsPanel","NewsType","getInvisibleText","SETTINGS_PANELS_KEYS","addFESRSemanticStepName","FESR_EVENTS","PersonalisationUtils","UshellPersonalizer","NewsSettingsPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","NEWS","_i18nBundle","getText","_resetActionButton","id","getId","visible","enabled","text","press","resetDefaultNewsSettings","addActionButton","addAggregation","getContent","attachPanelNavigated","loadNewsFeedSettings","aFavNewsFeed","_getContent","oHeader","setHeader","oTitle","setTitleMessage","oContentVBox","alignItems","justifyContent","items","createCustomNewsList","createNewsGroupTable","getPersonalization","_getPersonalization","_this","_temp2","oPersonalizer","_temp","Promise","resolve","getInstance","getPersContainerId","_getPanel","getOwnerComponent","then","_UshellPersonalizer$g","e","reject","_setHeader","headerText","oHeaderVBox","addStyleClass","_setTitleMessage","title","titleStyle","oTitleHbox","oTitleVBox","_createCustomNewsList","newsListVBox","oShowSwitchLabel","oShowSwitch","customTextOn","customTextOff","change","saveNewsFeedSettings","state","ariaLabelledBy","CHANGE","oCustNewsSwitchContainer","width","oShowAllPrep","oInvisibleText","oList","direction","_createNewsGroupTable","groupTable","includeItemInSelection","placeHolderCol","titleCol","header","articleCount","addColumn","isCSVFileFormat","_isCSVFileFormat","fileName","split","pop","toLowerCase","_saveNewsFeedSettings","_this2","selectedFeeds","deselectedDefaultFeeds","newsType","oNewsPanel","getNewsType","showDefault","Default","customFileName","getProperty","feedKey","getCustomFeedKey","push","collectDeselectedDefaultGroupIds","collectSelectedCustomFeedTitles","personalizer","read","personalizationData","defaultNewsFeed","favNewsFeed","showAllPreparationRequired","getState","write","setState","setEnabled","length","setCustomNewsFeed","_collectSelectedCustomFeedTitles","getItems","flatMap","item","content","getAggregation","hBox","checkBox","getSelected","_collectDeselectedDefaultGroupIds","rows","row","cells","getCells","groupId","getDefaultGroupId","_getDefaultGroupId","contentBox","customData","getCustomData","getValue","setCustomNewsItems","_setCustomNewsItems","aItems","destroyAggregation","forEach","oItem","i","oNewsListItemHbox","select","selected","disabled","customListItem","addItem","_loadNewsFeedSettings","_this3","sFeedKey","showDefaultNewsFeed","setVisible","oPersData","aPersNewsFeed","aNewsFeed","getDefaultNewsData","_this3$oNewsPanel$get","_handleDefaultNewsFeed","getCustomOrDefaultNewsFeed","_this3$oNewsPanel$get2","_handleCustomNewsFeed","setText","mandatoryNewsFeed","getMandatoryDefaultNewsFeed","map","oNewsFeed","isDeselected","group_id","includes","setColumnListItems","_setColumnListItems","destroyItems","colListItem","type","String","_group_to_article","addCustomData","key","value","favFeedTitles","isFavorite","_resetDefaultNewsSettings","_this4","isSupported","_isSupported","_this5","newsPanel","getParent","Custom","isNoUpdatesNewsFeed"],"sources":["NewsSettingsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport CheckBox from \"sap/m/CheckBox\";\nimport Column from \"sap/m/Column\";\nimport ColumnListItem from \"sap/m/ColumnListItem\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport HBox from \"sap/m/HBox\";\nimport Label from \"sap/m/Label\";\nimport List from \"sap/m/List\";\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 Component from \"sap/ui/core/Component\";\nimport Control from \"sap/ui/core/Control\";\nimport CustomData from \"sap/ui/core/CustomData\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport { NewsType } from \"./library\";\nimport NewsAndPagesContainer from \"./NewsContainer\";\nimport NewsPanel, { INewsFeed } from \"./NewsPanel\";\nimport { getInvisibleText } from \"./utils/Accessibility\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\nimport UshellPersonalizer from \"./utils/UshellPersonalizer\";\n\ninterface IFavNewsFeed {\n\titems: string[];\n\tshowAllPreparationRequired?: boolean;\n}\n\n/**\n *\n * Class for My Home News 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.NewsSettingsPanel\n */\nexport default class NewsSettingsPanel extends BaseSettingsPanel {\n\tprivate oShowSwitch!: Switch;\n\tprivate oCustNewsSwitchContainer!: HBox;\n\tprivate oList!: List;\n\tprivate oPersonalizer!: UshellPersonalizer;\n\tprivate oNewsPanel!: NewsPanel;\n\tprivate aFavNewsFeed!: INewsFeed[] | string[];\n\tprivate deselectedDefaultFeeds!: string[];\n\tprivate headerText!: Text;\n\tprivate title!: Title;\n\tprivate groupTable!: Table;\n\tprivate newsListVBox!: VBox;\n\tprivate _resetActionButton!: Button;\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.NEWS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"news\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://newspaper\");\n\n\t\tthis._resetActionButton = new Button({\n\t\t\tid: `${this.getId()}-newsResetBtn`,\n\t\t\tvisible: false,\n\t\t\tenabled: false,\n\t\t\ttext: this._i18nBundle.getText(\"resetDefaultButton\"),\n\t\t\tpress: () => this.resetDefaultNewsSettings()\n\t\t});\n\t\t// Add button to actionButtons aggregation\n\t\tthis.addActionButton(this._resetActionButton);\n\t\t//setup layout content\n\t\tthis.addAggregation(\"content\", this.getContent());\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated(() => {\n\t\t\tvoid this.loadNewsFeedSettings();\n\t\t});\n\t\tthis.aFavNewsFeed = [];\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel.\n\t *\n\t * @private\n\t * @returns {Control} The control containing the News Settings Panel content.\n\t */\n\tprivate getContent(): Control {\n\t\tconst oHeader = this.setHeader();\n\t\tconst oTitle = this.setTitleMessage();\n\t\tconst oContentVBox = new VBox(this.getId() + \"--idNewsPageOuterVBoX\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oHeader, oTitle, this.createCustomNewsList(), this.createNewsGroupTable()]\n\t\t});\n\t\treturn oContentVBox;\n\t}\n\n\t/**\n\t * Get personalization instance\n\t */\n\tprivate async getPersonalization() {\n\t\tif (!this.oPersonalizer) {\n\t\t\tthis.oPersonalizer = await UshellPersonalizer.getInstance(\n\t\t\t\tPersonalisationUtils.getPersContainerId(this._getPanel()),\n\t\t\t\tPersonalisationUtils.getOwnerComponent(this._getPanel()) as Component\n\t\t\t);\n\t\t}\n\t\treturn this.oPersonalizer;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Header.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Header content.\n\t */\n\tprivate setHeader() {\n\t\tthis.headerText = new Text(this.getId() + \"--idCustNewsFeedSettingsText\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsText\")\n\t\t});\n\t\tconst oHeaderVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTextContainer\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.headerText]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oHeaderVBox;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Title description.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Title description.\n\t */\n\tprivate setTitleMessage() {\n\t\tthis.title = new Title(this.getId() + \"--idCustNewsFeedSettignsTitle\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsHeading\"),\n\t\t\ttitleStyle: \"H3\"\n\t\t});\n\t\tconst oTitleHbox = new HBox(this.getId() + \"--idCustNewsFeedSettingsTitleContainer\", {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.title]\n\t\t});\n\t\tconst oTitleVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTitleVBox\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oTitleHbox]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oTitleVBox;\n\t}\n\n\t/**\n\t * Returns the content for the news List for custom news feed\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's List\n\t */\n\tprivate createCustomNewsList() {\n\t\tif (!this.newsListVBox) {\n\t\t\t//showAllPrepRequired Switch\n\t\t\tconst oShowSwitchLabel = new Label(this.getId() + \"--idShowAllCustNewsSwitchLabel\", {\n\t\t\t\ttext: this._i18nBundle.getText(\"showAllPreparationRequiredSwitchLabel\")\n\t\t\t});\n\t\t\tthis.oShowSwitch = new Switch(`${this.getId()}-showSwitch`, {\n\t\t\t\tcustomTextOn: \" \",\n\t\t\t\tcustomTextOff: \" \",\n\t\t\t\tchange: () => {\n\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t},\n\t\t\t\tstate: false,\n\t\t\t\tariaLabelledBy: [`${this.getId()}--idShowAllCustNewsSwitchLabel`]\n\t\t\t});\n\t\t\taddFESRSemanticStepName(this.oShowSwitch, FESR_EVENTS.CHANGE, \"showPrepRequire\");\n\t\t\tthis.oCustNewsSwitchContainer = new HBox(this.getId() + \"--idShowAllCustNewsSwitchContainer\", {\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [oShowSwitchLabel, this.oShowSwitch],\n\t\t\t\twidth: \"94%\"\n\t\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\n\t\t\tconst oShowAllPrep = new VBox(this.getId() + \"--idShowAllCustNewsSwitchVBox\", {\n\t\t\t\titems: [this.oCustNewsSwitchContainer],\n\t\t\t\twidth: \"94%\"\n\t\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\t\t\tconst oInvisibleText = getInvisibleText(`${this.getId()}--newsTitleText`, this._i18nBundle.getText(\"newsTitle\"));\n\t\t\t//List of news items\n\t\t\tthis.oList = new List(this.getId() + \"--idCustNewsFeedList\", {\n\t\t\t\tariaLabelledBy: [\n\t\t\t\t\toInvisibleText.getId(),\n\t\t\t\t\t`${this.getId()}--idCustNewsFeedSettingsText`,\n\t\t\t\t\t`${this.getId()}--idCustNewsFeedSettignsTitle`\n\t\t\t\t]\n\t\t\t});\n\t\t\t//Outer VBox\n\t\t\tthis.newsListVBox = new VBox(this.getId() + \"--idCustNewsFeedListContainer\", {\n\t\t\t\tdirection: \"Column\",\n\t\t\t\tvisible: false,\n\t\t\t\titems: [this.oList, oShowAllPrep, oInvisibleText],\n\t\t\t\twidth: \"96%\"\n\t\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\t}\n\t\treturn this.newsListVBox;\n\t}\n\n\t/**\n\t *\tCreates and returns a table for managing default news group settings.\n\t * @returns {Table} Table for news groups for default manage news feed\n\t * @private\n\t */\n\tprivate createNewsGroupTable() {\n\t\t//Table for news groups\n\t\tif (!this.groupTable) {\n\t\t\tthis.groupTable = new Table(this.getId() + \"--idNewsGroupTbl\", {\n\t\t\t\tincludeItemInSelection: true,\n\t\t\t\tvisible: false\n\t\t\t}).addStyleClass(\"sapUiTinyMarginBegin\");\n\t\t\tconst placeHolderCol = new Column(this.getId() + \"--idNewsGroupPlaceHolder\", {\n\t\t\t\twidth: \"15%\"\n\t\t\t});\n\n\t\t\t//title column\n\t\t\tconst titleCol = new Column(this.getId() + \"--idNewsGroupTitle\", {\n\t\t\t\theader: new Label(this.getId() + \"--idNewsGroupTitleLbl\", {\n\t\t\t\t\ttext: this._i18nBundle.getText(\"defaultNewsSettingsHeading\")\n\t\t\t\t}),\n\t\t\t\twidth: \"45%\"\n\t\t\t});\n\t\t\tconst articleCount = new Column(this.getId() + \"--idNewsGroupCount\", {\n\t\t\t\theader: new Label(this.getId() + \"--idNewsGroupCountLbl\", {\n\t\t\t\t\ttext: this._i18nBundle.getText(\"articleCount\")\n\t\t\t\t}),\n\t\t\t\twidth: \"40%\"\n\t\t\t});\n\t\t\tthis.groupTable.addColumn(placeHolderCol);\n\t\t\tthis.groupTable.addColumn(titleCol);\n\t\t\tthis.groupTable.addColumn(articleCount);\n\t\t}\n\t\treturn this.groupTable;\n\t}\n\t/**\n\t * Checks if the custom file format is CSV based on the custom file name.\n\t *\n\t * @param {string} fileName - The custom file name.\n\t * @returns {boolean} True if the file format is CSV, otherwise false.\n\t */\n\tprivate isCSVFileFormat(fileName: string): boolean {\n\t\treturn fileName.split(\".\").pop()?.toLowerCase() === \"csv\";\n\t}\n\n\t/**\n\t *\n\t * Saves news feed settings and shows news feed based on selection change of list of switch\n\t *\n\t * @private\n\t */\n\tprivate async saveNewsFeedSettings(): Promise<void> {\n\t\tconst selectedFeeds: string[] = [];\n\t\tconst deselectedDefaultFeeds: string[] = [];\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefault = newsType === NewsType.Default;\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tconst feedKey = this.oNewsPanel.getCustomFeedKey();\n\t\tif (showDefault) {\n\t\t\tdeselectedDefaultFeeds.push(...this.collectDeselectedDefaultGroupIds());\n\t\t} else {\n\t\t\tselectedFeeds.push(...this.collectSelectedCustomFeedTitles());\n\t\t}\n\n\t\tconst personalizer = await this.getPersonalization();\n\t\tconst personalizationData = (await personalizer.read()) || {};\n\n\t\tif (showDefault) {\n\t\t\tpersonalizationData.defaultNewsFeed = { items: deselectedDefaultFeeds };\n\t\t} else {\n\t\t\tpersonalizationData.favNewsFeed = {\n\t\t\t\titems: selectedFeeds,\n\t\t\t\tshowAllPreparationRequired: this.isCSVFileFormat(customFileName) ? false : this.oShowSwitch.getState()\n\t\t\t} as IFavNewsFeed;\n\t\t}\n\n\t\tawait personalizer.write(personalizationData);\n\n\t\t// get the latest value of switch and set the state\n\t\tif (!showDefault) {\n\t\t\tthis.oShowSwitch.setState(personalizationData.favNewsFeed?.showAllPreparationRequired);\n\t\t} else {\n\t\t\tthis._resetActionButton.setEnabled(!!(deselectedDefaultFeeds.length > 0));\n\t\t}\n\t\tawait this.oNewsPanel.setCustomNewsFeed(showDefault ? \"\" : feedKey);\n\t}\n\n\t/**\n\t * Collect selected custom feed titles from the list\n\t * @returns {string[]} Array of selected custom feed titles\n\t * @private\n\t */\n\tprivate collectSelectedCustomFeedTitles(): string[] {\n\t\tconst items = this.oList?.getItems() ?? [];\n\t\tif (!items.length) return [];\n\t\treturn items.flatMap((item) => {\n\t\t\tconst content = item.getAggregation(\"content\") as Control[] | undefined;\n\t\t\tconst hBox = content?.[0] as HBox | undefined;\n\t\t\tif (!hBox) return [];\n\t\t\tconst [checkBox, text] = hBox.getItems() as [CheckBox, Text];\n\t\t\treturn checkBox.getSelected() ? [text.getText()] : [];\n\t\t});\n\t}\n\n\t/**\n\t * Collect deselected default group IDs from the table\n\t * @returns {string[]} Array of deselected default group IDs from the table\n\t * @private\n\t */\n\tprivate collectDeselectedDefaultGroupIds(): string[] {\n\t\tconst rows = (this.groupTable?.getItems() as ColumnListItem[]) ?? [];\n\t\tif (!rows.length) return [];\n\t\treturn rows.flatMap((row: ColumnListItem) => {\n\t\t\tconst cells = row.getCells() as [CheckBox, Text, Text];\n\t\t\tconst checkBox = cells[0];\n\t\t\tif (checkBox.getSelected()) return [];\n\t\t\tconst groupId = this.getDefaultGroupId(row);\n\t\t\treturn groupId ? [groupId] : [];\n\t\t});\n\t}\n\n\t/**\n\t * Get groupId info for the default NewsList\n\t * @param {HBox | ColumnListItem} contentBox, content Hbox or ColumnListItem\n\t * @returns {string} groupId\n\t * @private\n\t */\n\tprivate getDefaultGroupId(contentBox: HBox | ColumnListItem): string {\n\t\tconst customData = contentBox.getCustomData();\n\t\treturn customData?.length ? (customData[0].getValue() as string) : \"\";\n\t}\n\n\t/**\n\t * Set items for the NewsList for custom news feed\n\t * @param {Array} [aItems] news items to be set as items aggregation\n\t * @private\n\t */\n\tprivate setCustomNewsItems(aItems: INewsFeed[]) {\n\t\tthis.oList.destroyAggregation(\"items\", true);\n\t\t(aItems || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tlet oNewsListItemHbox = new HBox({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItemContent--${i}`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [\n\t\t\t\t\tnew CheckBox(`${this.getId()}--custNewsFeedItemCheckBox--${i}`, {\n\t\t\t\t\t\tselect: () => {\n\t\t\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\t\t\tenabled: !oItem.disabled\n\t\t\t\t\t}),\n\t\t\t\t\tnew Text(`${this.getId()}--custNewsFeedItemText--${i}`, { text: oItem.title })\n\t\t\t\t],\n\t\t\t\twidth: \"100%\"\n\t\t\t});\n\n\t\t\tconst customListItem = new CustomListItem({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItem--${i}`,\n\t\t\t\tcontent: [oNewsListItemHbox]\n\t\t\t});\n\t\t\tthis.oList.addItem(customListItem);\n\t\t});\n\t}\n\n\t/**\n\t * Loads news feed settings\n\t *\n\t * @returns {Promise} resolves to news feed settings\n\t */\n\tprivate async loadNewsFeedSettings(): Promise<INewsFeed[] | undefined> {\n\t\tthis.oNewsPanel = this._getPanel() as NewsPanel;\n\t\tconst sFeedKey = this.oNewsPanel.getCustomFeedKey();\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefaultNewsFeed = newsType === NewsType.Default;\n\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tif (this.isCSVFileFormat(customFileName) || showDefaultNewsFeed) {\n\t\t\tthis.oCustNewsSwitchContainer.setVisible(false);\n\t\t}\n\n\t\tconst oPersonalizer = await this.getPersonalization();\n\t\tconst oPersData = await oPersonalizer.read();\n\t\tconst aPersNewsFeed = (showDefaultNewsFeed ? oPersData?.[\"defaultNewsFeed\"] : oPersData?.[\"favNewsFeed\"]) as IFavNewsFeed;\n\t\tconst showAllPreparationRequired = aPersNewsFeed?.showAllPreparationRequired ?? !aPersNewsFeed;\n\n\t\tlet aNewsFeed: INewsFeed[];\n\t\tif (showDefaultNewsFeed) {\n\t\t\tthis._resetActionButton.setVisible(true);\n\t\t\tthis._resetActionButton.setEnabled(!!(aPersNewsFeed?.items?.length > 0));\n\t\t\taNewsFeed = await this.oNewsPanel.getDefaultNewsData();\n\t\t\treturn this._handleDefaultNewsFeed(aNewsFeed, aPersNewsFeed);\n\t\t} else {\n\t\t\tthis._resetActionButton.setVisible(false);\n\t\t\taNewsFeed = await this.oNewsPanel.getCustomOrDefaultNewsFeed(showDefaultNewsFeed ? \"\" : sFeedKey, false);\n\t\t\treturn this._handleCustomNewsFeed(aNewsFeed, aPersNewsFeed, showAllPreparationRequired);\n\t\t}\n\t}\n\n\t/**\n\t *\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param {IFavNewsFeed} aPersNewsFeed\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * @description Handles the default news feed settings by setting the header text, title, and items.\n\t * It maps the news feed items to set their selected and disabled states based on the personalisation data.\n\t * If no news feed is provided, it returns undefined.\n\t */\n\tprivate _handleDefaultNewsFeed(aNewsFeed: INewsFeed[], aPersNewsFeed: IFavNewsFeed): INewsFeed[] | undefined {\n\t\tthis.headerText.setText(\n\t\t\tthis._i18nBundle.getText(\"defaultNewsSettingsText\") + \"\\n\" + this._i18nBundle.getText(\"defaultNewsSettingsSubText\")\n\t\t);\n\t\tthis.title.setVisible(false);\n\t\tthis.newsListVBox.setVisible(false);\n\t\tthis.oShowSwitch.setState(false);\n\n\t\tconst mandatoryNewsFeed = this.oNewsPanel.getMandatoryDefaultNewsFeed();\n\t\tthis.deselectedDefaultFeeds = aPersNewsFeed?.items || [];\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\t// if group_id not available in deselectedDefaultFeeds, then mark it as selected\n\t\t\tconst isDeselected = oNewsFeed.group_id ? this.deselectedDefaultFeeds.includes(oNewsFeed.group_id) : false;\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : !isDeselected;\n\t\t\t// if group_id is available in mandatoryNewsFeed, then mark it as disabled, user cannot hide mandatory feeds\n\t\t\tif (mandatoryNewsFeed.includes(oNewsFeed.group_id ?? \"\")) {\n\t\t\t\toNewsFeed.selected = true;\n\t\t\t\toNewsFeed.disabled = true;\n\t\t\t}\n\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.groupTable.setVisible(true);\n\t\tthis.setColumnListItems(aNewsFeed);\n\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * This method populates the column list items in the group table for the default news feed settings.\n\t * @param aItems Array of news feed items\n\t * @private\n\t */\n\tprivate setColumnListItems(aItems: INewsFeed[]) {\n\t\tthis.groupTable.destroyItems();\n\t\t//add column list item, title and article count\n\t\t(aItems || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tconst colListItem = new ColumnListItem({\n\t\t\t\tid: `${this.getId()}--idNewsGroupColListItem--${i}`,\n\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\ttype: \"Active\",\n\t\t\t\tcells: [\n\t\t\t\t\tnew CheckBox({\n\t\t\t\t\t\tid: `${this.getId()}--idNewsGroupCheckBox--${i}`,\n\t\t\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\t\t\tenabled: !oItem.disabled,\n\t\t\t\t\t\tselect: () => {\n\t\t\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t\tnew Text({ text: oItem.title }),\n\t\t\t\t\tnew Text({ text: String(oItem._group_to_article?.length ?? 0) })\n\t\t\t\t]\n\t\t\t});\n\n\t\t\t// if showDefault is true, add group_id as custom data to the item\n\t\t\tcolListItem.addCustomData(new CustomData({ key: \"newsGroupId\", value: oItem.group_id }));\n\t\t\tthis.groupTable.addItem(colListItem);\n\t\t});\n\t}\n\t/**\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param aPersNewsFeed\n\t * @param showAllPreparationRequired\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * This method is responsible for managing the custom news feed settings in the News Settings Panel.\n\t * It updates the header text and title, checks if the news feed is available, and maps the news feed items to set their selected state.\n\t * If the news feed is not available or empty, it returns undefined.\n\t * It also sets the state of the show switch based on the `showAllPreparationRequired` parameter.\n\t */\n\tprivate _handleCustomNewsFeed(\n\t\taNewsFeed: INewsFeed[],\n\t\taPersNewsFeed: IFavNewsFeed,\n\t\tshowAllPreparationRequired: boolean\n\t): INewsFeed[] | undefined {\n\t\tthis.groupTable.setVisible(false);\n\t\tthis.headerText.setText(this._i18nBundle.getText(\"newsFeedSettingsText\"));\n\t\tthis.title.setText(this._i18nBundle.getText(\"newsFeedSettingsHeading\"));\n\t\tthis.title.setVisible(true);\n\t\tthis.newsListVBox.setVisible(true);\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst favFeedTitles: string[] = aPersNewsFeed?.items || aNewsFeed;\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\tconst isFavorite = favFeedTitles.includes(oNewsFeed.title);\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : isFavorite;\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.aFavNewsFeed = aNewsFeed;\n\t\tthis.setCustomNewsItems(this.aFavNewsFeed);\n\t\tthis.oShowSwitch.setState(!!showAllPreparationRequired);\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * Resets the default manage news' news settings to default by clearing\n\t * the personalization data and updating the news panel.\n\t * @private\n\t * @returns {Promise<INewsFeed[] | undefined>} A promise that resolves to the updated news feed items or undefined.\n\t */\n\tprivate async resetDefaultNewsSettings() {\n\t\tconst personalizer = await this.getPersonalization();\n\t\tconst personalizationData = (await personalizer.read()) || {};\n\t\tpersonalizationData.defaultNewsFeed = { items: [] };\n\t\tawait personalizer.write(personalizationData);\n\t\tawait this.oNewsPanel.setCustomNewsFeed(\"\");\n\t\tlet aNewsFeed = await this.oNewsPanel.getDefaultNewsData();\n\t\tthis._resetActionButton.setEnabled(false);\n\t\treturn this._handleDefaultNewsFeed(aNewsFeed, personalizationData.defaultNewsFeed);\n\t}\n\n\t/**\n\t * Checks if the News Settings Panel is supported based on the properties of the News Panel.\n\t *\n\t * @returns {Promise<boolean>} A promise that resolves to true if the News Settings Panel is supported, otherwise false.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst newsPanel = this._getPanel() as NewsPanel;\n\t\tif (!newsPanel || !(newsPanel?.getParent() as NewsAndPagesContainer).getProperty(\"newsFeedVisibility\")) {\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\treturn Promise.resolve(\n\t\t\t(newsPanel.getNewsType() === NewsType.Custom || newsPanel.getNewsType() === NewsType.Default) &&\n\t\t\t\t!newsPanel.isNoUpdatesNewsFeed()\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -21,7 +21,7 @@ import Control from "sap/ui/core/Control";
21
21
  import CustomData from "sap/ui/core/CustomData";
22
22
  import BaseSettingsPanel from "./BaseSettingsPanel";
23
23
  import { NewsType } from "./library";
24
- import NewsAndPagesContainer from "./NewsAndPagesContainer";
24
+ import NewsAndPagesContainer from "./NewsContainer";
25
25
  import NewsPanel, { INewsFeed } from "./NewsPanel";
26
26
  import { getInvisibleText } from "./utils/Accessibility";
27
27
  import { SETTINGS_PANELS_KEYS } from "./utils/Constants";
@@ -231,7 +231,7 @@ export default class NewsSettingsPanel extends BaseSettingsPanel {
231
231
  visible: false
232
232
  }).addStyleClass("sapUiTinyMarginBegin");
233
233
  const placeHolderCol = new Column(this.getId() + "--idNewsGroupPlaceHolder", {
234
- width: "8%"
234
+ width: "15%"
235
235
  });
236
236
 
237
237
  //title column
@@ -239,13 +239,13 @@ export default class NewsSettingsPanel extends BaseSettingsPanel {
239
239
  header: new Label(this.getId() + "--idNewsGroupTitleLbl", {
240
240
  text: this._i18nBundle.getText("defaultNewsSettingsHeading")
241
241
  }),
242
- width: "50%"
242
+ width: "45%"
243
243
  });
244
244
  const articleCount = new Column(this.getId() + "--idNewsGroupCount", {
245
245
  header: new Label(this.getId() + "--idNewsGroupCountLbl", {
246
246
  text: this._i18nBundle.getText("articleCount")
247
247
  }),
248
- width: "42%"
248
+ width: "40%"
249
249
  });
250
250
  this.groupTable.addColumn(placeHolderCol);
251
251
  this.groupTable.addColumn(titleCol);
@@ -102,7 +102,7 @@ declare module "sap/cux/home/PagePanel" {
102
102
  * @private
103
103
  */
104
104
  private getPlaceholderPageTiles;
105
- attachResizeHandler(isNewsTileVisible: boolean, containerWidth: number, pagesContentWrapper: FlexBox): void;
105
+ attachResizeHandler(containerWidth: number, pagesContentWrapper: FlexBox): void;
106
106
  getUserAvailablePages(): Promise<IPage[]>;
107
107
  private calculatePagesPerRow;
108
108
  private _getInnerControls;
@@ -1 +1 @@
1
- {"version":3,"file":"PagePanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/PagePanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAOxC,OAAO,OAAO,EAAE,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;IAU1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAIvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;IACpF,OAAO,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;IAWlE,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;KAsBd,CAAC;IAEF,MAAM,kBAAkB,IAAI,CAAC;IAC7B,MAAM,YAAY,IAAI,CAAC;IACvB,MAAM,WAAW,IAAI,CAAC;IAEtB;;;;;;;;;;;;OAYG;IACH,MAAM,aAAc,SAAQ,OAAO;oBACtB,YAAY,CAAC,EAAE,MAAM,GAAG,gBAAgB;oBACxC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gBAAgB;QAKpD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;UAEb;KACF;IAED;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,aAAa;QACnD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAkBvC;QACF,OAAO,CAAC,gBAAgB,CAAiB;QACzC,OAAO,CAAC,YAAY,CAAQ;QAC5B,OAAO,CAAC,YAAY,CAA2B;QAC/C,OAAO,CAAC,mBAAmB,CAAe;QAC1C,OAAO,CAAC,SAAS,CAAW;QAC5B,OAAO,CAAC,cAAc,CAAiB;QACvC,OAAO,CAAC,UAAU,CAAsB;QACxC,OAAO,CAAC,kBAAkB,CAAQ;QAClC,OAAO,CAAC,WAAW,CAAU;QAC7B,OAAO,CAAC,aAAa,CAAsB;QAC3C,OAAO,CAAC,SAAS,CAAY;QAE7B;;;;;WAKG;oBACgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAIjE,IAAI;QAqDJ,OAAO,CAAC,WAAW;QAKN,OAAO,CAAC,WAAW,GAAE,OAAe;QAYjD;;;;;WAKG;QACH,OAAO,CAAC,gBAAgB;QAKxB;;;WAGG;QACH,OAAO,CAAC,uBAAuB;QAiBxB,mBAAmB,CAAC,iBAAiB,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAG,IAAI;QAqDrG,qBAAqB;QAIlC,OAAO,CAAC,oBAAoB;QAoB5B,OAAO,CAAC,iBAAiB;QAqEzB,OAAO,CAAC,mBAAmB;QAQ3B,OAAO,CAAC,oBAAoB;QAkB5B,OAAO,CAAC,iBAAiB;QAiBzB,OAAO,CAAC,kBAAkB;gBAaZ,cAAc;gBAkBd,eAAe;QAe7B;;;;;;;;WAQG;QACH,OAAO,CAAC,eAAe;QASvB;;;;;;;WAOG;gBACW,qBAAqB;QAc5B,0BAA0B,CAAC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAI7E,yBAAyB,CAAC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAInF,OAAO,CAAC,uBAAuB;QAK/B;;;;;WAKG;QACI,cAAc,IAAI,OAAO;KAGhC;CAEA"}
1
+ {"version":3,"file":"PagePanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/PagePanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAOxC,OAAO,OAAO,EAAE,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;IAU1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAKvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;IACpF,OAAO,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;IAWlE,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;KAsBd,CAAC;IAEF,MAAM,kBAAkB,IAAI,CAAC;IAC7B,MAAM,YAAY,IAAI,CAAC;IACvB,MAAM,WAAW,IAAI,CAAC;IAEtB;;;;;;;;;;;;OAYG;IACH,MAAM,aAAc,SAAQ,OAAO;oBACtB,YAAY,CAAC,EAAE,MAAM,GAAG,gBAAgB;oBACxC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gBAAgB;QAKpD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;UAEb;KACF;IAED;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,aAAa;QACnD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAkBvC;QACF,OAAO,CAAC,gBAAgB,CAAiB;QACzC,OAAO,CAAC,YAAY,CAAQ;QAC5B,OAAO,CAAC,YAAY,CAA2B;QAC/C,OAAO,CAAC,mBAAmB,CAAe;QAC1C,OAAO,CAAC,SAAS,CAAW;QAC5B,OAAO,CAAC,cAAc,CAAiB;QACvC,OAAO,CAAC,UAAU,CAAsB;QACxC,OAAO,CAAC,kBAAkB,CAAQ;QAClC,OAAO,CAAC,WAAW,CAAU;QAC7B,OAAO,CAAC,aAAa,CAAsB;QAC3C,OAAO,CAAC,SAAS,CAAY;QAE7B;;;;;WAKG;oBACgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAIjE,IAAI;QAqDJ,OAAO,CAAC,WAAW;QAKN,OAAO,CAAC,WAAW,GAAE,OAAe;QAYjD;;;;;WAKG;QACH,OAAO,CAAC,gBAAgB;QAKxB;;;WAGG;QACH,OAAO,CAAC,uBAAuB;QAiBxB,mBAAmB,CAAC,cAAc,EAAE,MAAM,EAAE,mBAAmB,EAAE,OAAO,GAAG,IAAI;QA6CzE,qBAAqB;QAIlC,OAAO,CAAC,oBAAoB;QAqC5B,OAAO,CAAC,iBAAiB;QAqEzB,OAAO,CAAC,mBAAmB;QAQ3B,OAAO,CAAC,oBAAoB;QAkB5B,OAAO,CAAC,iBAAiB;QAiBzB,OAAO,CAAC,kBAAkB;gBAaZ,cAAc;gBAkBd,eAAe;QAe7B;;;;;;;;WAQG;QACH,OAAO,CAAC,eAAe;QASvB;;;;;;;WAOG;gBACW,qBAAqB;QAc5B,0BAA0B,CAAC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAI7E,yBAAyB,CAAC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAInF,OAAO,CAAC,uBAAuB;QAK/B;;;;;WAKG;QACI,cAAc,IAAI,OAAO;KAGhC;CAEA"}
@@ -246,25 +246,21 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
246
246
  });
247
247
  return placeholderTiles;
248
248
  },
249
- attachResizeHandler: function _attachResizeHandler(isNewsTileVisible, containerWidth, pagesContentWrapper) {
249
+ attachResizeHandler: function _attachResizeHandler(containerWidth, pagesContentWrapper) {
250
250
  try {
251
251
  const favPagesCount = this.aFavPages?.length,
252
252
  deviceType = this.getDeviceType();
253
- let domRefClientWidth = containerWidth;
254
- if ((deviceType === DeviceType.Desktop || deviceType === DeviceType.LargeDesktop || deviceType === DeviceType.XLargeDesktop) && isNewsTileVisible) {
255
- domRefClientWidth = containerWidth / 2;
256
- }
257
- if (!domRefClientWidth) {
253
+ if (!containerWidth) {
258
254
  return;
259
255
  }
260
256
  let tileWidth,
261
257
  hBoxWidth,
262
258
  finalTilesWidth,
263
- wrapperWidth = domRefClientWidth / 16; // Divide by 16 to convert to rem,
259
+ wrapperWidth = containerWidth / 16; // Divide by 16 to convert to rem,
264
260
  const gap = deviceType === DeviceType.Mobile ? 0.5 : 1;
265
261
  pagesContentWrapper.setWidth("100%");
266
262
  if (favPagesCount > 0) {
267
- const pagesPerRow = this.calculatePagesPerRow(favPagesCount, isNewsTileVisible);
263
+ const pagesPerRow = this.calculatePagesPerRow(favPagesCount);
268
264
  if (pagesPerRow) {
269
265
  const maxTileWidth = tileSizes[deviceType].maxWidth;
270
266
  let minTileWidth = tileSizes[deviceType].minWidth;
@@ -299,11 +295,23 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
299
295
  return Promise.reject(e);
300
296
  }
301
297
  },
302
- calculatePagesPerRow: function _calculatePagesPerRow(favPagesCount, isNewsFeedVisible) {
298
+ calculatePagesPerRow: function _calculatePagesPerRow(favPagesCount) {
299
+ const parentContainer = this.getParent();
300
+ const layout = parentContainer._getLayout();
301
+ const layoutItems = layout.getItems();
302
+
303
+ //loop through layout items and check if any two items have same composite id and same custom style class and are visible
304
+ const isSideBySideLayoutActive = layoutItems.some(item => {
305
+ const compositeId = item.getProperty("compositeId");
306
+ if (item.getVisible() && item.getId() !== parentContainer.getId() && item.hasStyleClass(`${compositeId}`) && compositeId === parentContainer.getProperty("compositeId")) {
307
+ return true;
308
+ }
309
+ return false;
310
+ });
303
311
  let pagesPerRow = 0;
304
312
  const deviceType = this.getDeviceType();
305
313
  if (deviceType === DeviceType.Desktop || deviceType === DeviceType.LargeDesktop || deviceType === DeviceType.XLargeDesktop) {
306
- if (isNewsFeedVisible) {
314
+ if (isSideBySideLayoutActive) {
307
315
  // halves the tiles in 2 rows
308
316
  pagesPerRow = Math.ceil(favPagesCount >= maxTileCOunt ? maxRowCount : favPagesCount / 2);
309
317
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"PagePanel.js","names":["sap","ui","define","Button","FlexBox","GenericTile","IllustratedMessage","IllustratedMessageSize","IllustratedMessageType","VBox","sap_m_library","EventBus","__BasePagePanel","__MenuItem","__Page","___utils_CommonUtils","___utils_Constants","___utils_DataFormatUtils","___utils_Device","___utils_DragDropUtils","___utils_FESRUtil","__PersonalisationUtils","__UShellPersonalizer","_interopRequireDefault","obj","__esModule","default","LoadState","BasePagePanel","MenuItem","Page","getPageManagerInstance","PAGE_SELECTION_LIMIT","SETTINGS_PANELS_KEYS","recycleId","DeviceType","attachKeyboardHandler","focusDraggedItem","addFESRId","addFESRSemanticStepName","PersonalisationUtils","UShellPersonalizer","tileSizes","Mobile","maxWidth","minWidth","Tablet","Desktop","LargeDesktop","XLargeDesktop","smallTabletMinWidth","mobileOneTileLimit","maxTileCOunt","maxRowCount","CustomFlexBox","extend","renderer","apiVersion","metadata","library","aggregations","items","type","multiple","singularName","dnd","draggable","droppable","constructor","_constructor","id","settings","FlexBox.prototype.constructor.call","PagePanel","properties","title","group","visibility","key","pages","_constructor2","BasePagePanel.prototype.constructor.call","init","_init","_this","BasePagePanel.prototype.init.call","_oWrapperFlexBox","getId","justifyContent","height","width","direction","renderType","wrap","getPlaceholderPageTiles","addStyleClass","getDeviceType","_pageWrapper","addContent","setProperty","_i18nBundle","getText","menuItem","icon","press","_handleEditPages","addAggregation","oEventBus","getInstance","subscribe","sChannelId","sEventId","oData","aFavPages","Promise","resolve","writeFavPagesIntoPers","then","_getInnerControls","_importdone","e","reject","getData","stateData","status","publish","_getData","forceUpdate","_this2","_temp2","fireEvent","oPagePromise","_temp","undefined","_getPageManagerInstance","getFavoritePages","parent","getParent","_getLayout","openSettingsDialog","PAGES","_getPlaceholderPageTiles","placeholderArray","Array","fill","Loading","placeholderTiles","map","tileState","index","sizeBehavior","state","frameType","mode","visible","renderOnThemeChange","ariaRole","dropAreaOffset","attachResizeHandler","_attachResizeHandler","isNewsTileVisible","containerWidth","pagesContentWrapper","favPagesCount","length","deviceType","domRefClientWidth","tileWidth","hBoxWidth","finalTilesWidth","wrapperWidth","gap","setWidth","pagesPerRow","calculatePagesPerRow","maxTileWidth","minTileWidth","Math","min","max","_setPropertyValues","pagesTileWidth","err","Error","getUserAvailablePages","_getUserAvailablePages","_this3","fetchAllAvailablePages","_calculatePagesPerRow","isNewsFeedVisible","ceil","myFavPage","oInnerControls","oParent","forEach","oPage","push","subTitle","spaceTitle","bgColor","BGColor","pageId","spaceId","url","oFav","index2","header","getTitle","subheader","getSubTitle","onPageTilePress","backgroundColor","getBgColor","tileIcon","getIcon","getProperty","setAlignItems","dndConfigs","getDragDropConfig","panelLoadedFn","loaded","count","_setFavPagesContent","addDragDropConfigTo","oEvent","_handlePageDnd","removeAllDragDropConfig","dndConfig","destroy","_setNoPageContent","removeAggregation","removeAllItems","removeStyleClass","oTile","addItem","_createNoPageContent","_oIllusMsg","illustrationSize","Small","illustrationType","NoSavedItems","description","oAddPageBtn","text","tooltip","oWrapperNoPageVBox","backgroundDesign","addAdditionalContent","oVal","propNames","Object","keys","sProperty","_this4","sInsertPosition","getParameter","oDragItem","oDropItem","iDragItemIndex","indexOfItem","iDropItemIndex","_temp3","_DragnDropPages","_this5","oItemMoved","splice","updateTileOrder","_updateTileOrder","dragIndex","dropIndex","draggedItem","_writeFavPagesIntoPers","favPages","_this6","_temp5","oPersonalizer","read","oPersData","favouritePages","write","_temp4","getPersContainerId","getOwnerComponent","_UShellPersonalizer$g","applyColorPersonalizations","_applyColorPersonalizations","personalizations","applyIconPersonalizations","_applyIconPersonalizations","pageManagerInstance","getPageWrapper","_getPageWrapper"],"sources":["PagePanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport FlexBox, { $FlexBoxSettings } from \"sap/m/FlexBox\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState } from \"sap/m/library\";\nimport Event from \"sap/ui/base/Event\";\nimport Component from \"sap/ui/core/Component\";\nimport Control from \"sap/ui/core/Control\";\nimport { MetadataOptions } from \"sap/ui/core/Element\";\nimport EventBus from \"sap/ui/core/EventBus\";\nimport { DropInfo$DropEventParameters } from \"sap/ui/core/dnd/DropInfo\";\nimport type { $BasePagePanelSettings } from \"./BasePagePanel\";\nimport BasePagePanel from \"./BasePagePanel\";\nimport MenuItem from \"./MenuItem\";\nimport NewsAndPagesContainer from \"./NewsAndPagesContainer\";\nimport Page from \"./Page\";\nimport { ISpacePagePersonalization } from \"./interface/KeyUserInterface\";\nimport { IPage } from \"./interface/PageSpaceInterface\";\nimport { getPageManagerInstance } from \"./utils/CommonUtils\";\nimport { PAGE_SELECTION_LIMIT, SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { DeviceType } from \"./utils/Device\";\nimport { attachKeyboardHandler, focusDraggedItem } from \"./utils/DragDropUtils\";\nimport { addFESRId, addFESRSemanticStepName } from \"./utils/FESRUtil\";\nimport PageManager from \"./utils/PageManager\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\nimport UShellPersonalizer from \"./utils/UshellPersonalizer\";\n\nconst tileSizes = {\n\tMobile: {\n\t\tmaxWidth: 37.5,\n\t\tminWidth: 8\n\t},\n\tTablet: {\n\t\tmaxWidth: 60,\n\t\tminWidth: 10.625\n\t},\n\tDesktop: {\n\t\tmaxWidth: 18.75,\n\t\tminWidth: 7\n\t},\n\tLargeDesktop: {\n\t\tmaxWidth: 18.75,\n\t\tminWidth: 7\n\t},\n\tXLargeDesktop: {\n\t\tmaxWidth: 18.75,\n\t\tminWidth: 7\n\t},\n\tsmallTabletMinWidth: 8\n};\n\nconst mobileOneTileLimit = 3;\nconst maxTileCOunt = 8;\nconst maxRowCount = 4;\n\n/**\n *\n * CustomFlexBox extending FlexBox to enable drag & drop.\n *\n * @extends sap.m.FlexBox\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.122\n * @private\n *\n * @alias sap.cux.home.CustomFlexBox\n */\nclass CustomFlexBox extends FlexBox {\n\tconstructor(idOrSettings?: string | $FlexBoxSettings);\n\tconstructor(id?: string, settings?: $FlexBoxSettings);\n\tconstructor(id?: string, settings?: $FlexBoxSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\taggregations: {\n\t\t\titems: { type: \"sap.ui.core.Control\", multiple: true, singularName: \"item\", dnd: { draggable: true, droppable: true } }\n\t\t}\n\t};\n\tstatic renderer = {\n\t\tapiVersion: 2\n\t};\n}\n\n/**\n *\n * Panel class for managing and storing Pages.\n *\n * @extends sap.cux.home.BasePagePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.122\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.PagePanel\n */\n\nexport default class PagePanel extends BasePagePanel {\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Title for the page panel\n\t\t\t */\n\t\t\ttitle: { type: \"string\", group: \"Misc\", visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Key for the page panel\n\t\t\t */\n\t\t\tkey: { type: \"string\", group: \"Misc\", visibility: \"hidden\" }\n\t\t},\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Aggregation of pages available within the page panel\n\t\t\t */\n\t\t\tpages: { type: \"sap.cux.home.Page\", singularName: \"page\", multiple: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\tprivate _oWrapperFlexBox!: CustomFlexBox;\n\tprivate _pageWrapper!: VBox;\n\tprivate oPagePromise!: Promise<IPage[]> | null;\n\tprivate pageManagerInstance!: PageManager;\n\tprivate aFavPages!: IPage[];\n\tprivate oInnerControls!: GenericTile[];\n\tprivate _oIllusMsg!: IllustratedMessage;\n\tprivate oWrapperNoPageVBox!: VBox;\n\tprivate oAddPageBtn!: Button;\n\tprivate oPersonalizer!: UShellPersonalizer;\n\tprivate oEventBus!: EventBus;\n\n\t/**\n\t * Constructor for a new Page 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?: $BasePagePanelSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tinit() {\n\t\tsuper.init();\n\n\t\tthis._oWrapperFlexBox = new CustomFlexBox(`${this.getId()}-pageWrapper`, {\n\t\t\tjustifyContent: \"Start\",\n\t\t\theight: \"100%\",\n\t\t\twidth: \"100%\",\n\t\t\tdirection: \"Row\",\n\t\t\trenderType: \"Bare\",\n\t\t\twrap: \"Wrap\",\n\t\t\titems: this.getPlaceholderPageTiles()\n\t\t}).addStyleClass(\"pagesFlexGap sapCuxPagesWrapper\");\n\n\t\tif (this.getDeviceType() !== DeviceType.Mobile) {\n\t\t\tthis._oWrapperFlexBox.addStyleClass(\"sapUiSmallMarginTop\");\n\t\t}\n\n\t\tthis._pageWrapper = new VBox(`${this.getId()}-pageContentWrapper`, { items: [this._oWrapperFlexBox] });\n\t\tthis.addContent(this._pageWrapper);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"pageTitle\"));\n\n\t\tconst menuItem = new MenuItem(`${this.getId()}-managePages`, {\n\t\t\ttitle: this._i18nBundle.getText(\"mngPage\"),\n\t\t\ticon: \"sap-icon://edit\",\n\t\t\tpress: () => this._handleEditPages()\n\t\t});\n\t\tthis.addAggregation(\"menuItems\", menuItem);\n\t\taddFESRId(menuItem, \"managePages\");\n\t\tthis.oEventBus = EventBus.getInstance();\n\t\t// Subscribe to the event\n\t\tthis.oEventBus.subscribe(\n\t\t\t\"importChannel\",\n\t\t\t\"favPagesImport\",\n\t\t\tasync (sChannelId?: string, sEventId?: string, oData?) => {\n\t\t\t\tthis.aFavPages = oData as IPage[];\n\t\t\t\tawait this.writeFavPagesIntoPers(this.aFavPages);\n\t\t\t\tthis._getInnerControls();\n\t\t\t\tthis._importdone();\n\t\t\t},\n\t\t\tthis\n\t\t);\n\n\t\t// Subscribe to page changes from pageManager\n\t\tthis.oEventBus.subscribe(\n\t\t\t\"pageChannel\",\n\t\t\t\"pageUpdated\",\n\t\t\t() => {\n\t\t\t\tvoid this.getData(true);\n\t\t\t},\n\t\t\tthis\n\t\t);\n\t}\n\n\tprivate _importdone() {\n\t\tconst stateData = { status: true };\n\t\tthis.oEventBus.publish(\"importChannel\", \"favPagesImported\", stateData);\n\t}\n\n\tpublic async getData(forceUpdate: boolean = false) {\n\t\tif (this.oPagePromise === undefined || this.oPagePromise === null || forceUpdate) {\n\t\t\tthis.oPagePromise = this._getPageManagerInstance().getFavoritePages();\n\t\t\tconst aFavPages = await this.oPagePromise;\n\t\t\tthis.aFavPages = aFavPages;\n\t\t\tthis._getInnerControls();\n\t\t\tthis.oPagePromise = null;\n\t\t}\n\t\tthis.fireEvent(\"loaded\");\n\t\treturn this.oPagePromise;\n\t}\n\n\t/**\n\t * Handles the edit page event.\n\t * Opens the page dialog for managing page data.\n\t * @param {Event} oEvent - The event object.\n\t * @private\n\t */\n\tprivate _handleEditPages() {\n\t\tconst parent = this.getParent() as NewsAndPagesContainer;\n\t\tparent?._getLayout().openSettingsDialog(SETTINGS_PANELS_KEYS.PAGES);\n\t}\n\n\t/**\n\t * returns an array of placeholder generic tiles for pages\n\t * @private\n\t */\n\tprivate getPlaceholderPageTiles(): GenericTile[] {\n\t\tconst placeholderArray = new Array(PAGE_SELECTION_LIMIT).fill(LoadState.Loading) as LoadState[];\n\t\tconst placeholderTiles = placeholderArray.map((tileState: LoadState, index) => {\n\t\t\treturn new GenericTile(recycleId(`${this.getId()}--${index}`), {\n\t\t\t\tsizeBehavior: \"Responsive\",\n\t\t\t\tstate: tileState,\n\t\t\t\tframeType: \"OneByOne\",\n\t\t\t\tmode: \"IconMode\",\n\t\t\t\tvisible: true,\n\t\t\t\trenderOnThemeChange: true,\n\t\t\t\tariaRole: \"listitem\",\n\t\t\t\tdropAreaOffset: 8\n\t\t\t}).addStyleClass(\"cuxPagesPlaceholder\");\n\t\t});\n\t\treturn placeholderTiles;\n\t}\n\n\tpublic attachResizeHandler(isNewsTileVisible: boolean, containerWidth: number, pagesContentWrapper: FlexBox): void {\n\t\ttry {\n\t\t\tconst favPagesCount = this.aFavPages?.length,\n\t\t\t\tdeviceType = this.getDeviceType();\n\n\t\t\tlet domRefClientWidth = containerWidth;\n\t\t\tif (\n\t\t\t\t(deviceType === DeviceType.Desktop || deviceType === DeviceType.LargeDesktop || deviceType === DeviceType.XLargeDesktop) &&\n\t\t\t\tisNewsTileVisible\n\t\t\t) {\n\t\t\t\tdomRefClientWidth = containerWidth / 2;\n\t\t\t}\n\n\t\t\tif (!domRefClientWidth) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet tileWidth,\n\t\t\t\thBoxWidth: string,\n\t\t\t\tfinalTilesWidth: string,\n\t\t\t\twrapperWidth = domRefClientWidth / 16; // Divide by 16 to convert to rem,\n\t\t\tconst gap = deviceType === DeviceType.Mobile ? 0.5 : 1;\n\t\t\tpagesContentWrapper.setWidth(\"100%\");\n\n\t\t\tif (favPagesCount > 0) {\n\t\t\t\tconst pagesPerRow = this.calculatePagesPerRow(favPagesCount, isNewsTileVisible);\n\t\t\t\tif (pagesPerRow) {\n\t\t\t\t\tconst maxTileWidth = tileSizes[deviceType].maxWidth;\n\t\t\t\t\tlet minTileWidth = tileSizes[deviceType].minWidth;\n\t\t\t\t\t// when tablet viewport width is below 800px, 46rem(736px) is the container width and 2 rem is paddings\n\t\t\t\t\tif (deviceType === DeviceType.Tablet && containerWidth < 736) {\n\t\t\t\t\t\tminTileWidth = tileSizes.smallTabletMinWidth;\n\t\t\t\t\t}\n\t\t\t\t\ttileWidth = (wrapperWidth - (pagesPerRow - 1) * gap) / pagesPerRow;\n\t\t\t\t\ttileWidth = Math.min(tileWidth, maxTileWidth);\n\t\t\t\t\ttileWidth = Math.max(tileWidth, minTileWidth);\n\t\t\t\t\tfinalTilesWidth = `${tileWidth}rem`;\n\t\t\t\t\thBoxWidth = `${pagesPerRow * tileWidth + (pagesPerRow - 1) * gap}rem`;\n\t\t\t\t} else {\n\t\t\t\t\tfinalTilesWidth = \"auto\";\n\t\t\t\t\thBoxWidth = \"100%\";\n\t\t\t\t}\n\n\t\t\t\tthis._setPropertyValues({ hBoxWidth: hBoxWidth, pagesTileWidth: finalTilesWidth });\n\t\t\t\tpagesContentWrapper.setWidth(hBoxWidth);\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tif (err instanceof Error) {\n\t\t\t\tconsole.error(err.message);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic async getUserAvailablePages() {\n\t\treturn await this._getPageManagerInstance().fetchAllAvailablePages();\n\t}\n\n\tprivate calculatePagesPerRow(favPagesCount: number, isNewsFeedVisible: boolean): number {\n\t\tlet pagesPerRow = 0;\n\t\tconst deviceType = this.getDeviceType();\n\t\tif (deviceType === DeviceType.Desktop || deviceType === DeviceType.LargeDesktop || deviceType === DeviceType.XLargeDesktop) {\n\t\t\tif (isNewsFeedVisible) {\n\t\t\t\t// halves the tiles in 2 rows\n\t\t\t\tpagesPerRow = Math.ceil(favPagesCount >= maxTileCOunt ? maxRowCount : favPagesCount / 2);\n\t\t\t} else {\n\t\t\t\tpagesPerRow = favPagesCount;\n\t\t\t}\n\t\t} else if (deviceType === DeviceType.Mobile) {\n\t\t\t// decides number of columns to either 1 or 2\n\t\t\tpagesPerRow = favPagesCount <= mobileOneTileLimit ? 1 : 2;\n\t\t} else if (deviceType === DeviceType.Tablet) {\n\t\t\t// upto 4 in a Row, otherwise halves the tiles in 2 rows\n\t\t\tpagesPerRow = favPagesCount <= maxRowCount ? favPagesCount : Math.ceil(favPagesCount / 2);\n\t\t}\n\t\treturn pagesPerRow;\n\t}\n\n\tprivate _getInnerControls() {\n\t\tconst myFavPage: Page[] = [];\n\t\tthis.oInnerControls = [];\n\t\tconst oParent = this.getParent() as NewsAndPagesContainer;\n\t\tif (this.aFavPages) {\n\t\t\tthis.aFavPages.forEach((oPage: IPage, index: number) => {\n\t\t\t\tmyFavPage.push(\n\t\t\t\t\tnew Page(recycleId(`${this.getId()}-favPage-${index}`), {\n\t\t\t\t\t\ttitle: oPage.title,\n\t\t\t\t\t\tsubTitle: oPage.title === oPage.spaceTitle ? \"\" : oPage.spaceTitle,\n\t\t\t\t\t\ticon: oPage.icon,\n\t\t\t\t\t\tbgColor: oPage.BGColor as string,\n\t\t\t\t\t\tpageId: oPage.pageId,\n\t\t\t\t\t\tspaceId: oPage.spaceId,\n\t\t\t\t\t\tspaceTitle: oPage.spaceTitle,\n\t\t\t\t\t\turl: \"#Launchpad-openFLPPage?pageId=\" + oPage.pageId + \"&spaceId=\" + oPage.spaceId\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t});\n\t\t\tmyFavPage.forEach((oFav: Page, index2: number) => {\n\t\t\t\tthis.oInnerControls.push(\n\t\t\t\t\tnew GenericTile(recycleId(`${oFav.getId()}--genericTile--${index2}`), {\n\t\t\t\t\t\t// width: \"10rem\",\n\t\t\t\t\t\theader: oFav.getTitle(),\n\t\t\t\t\t\tsubheader: oFav.getSubTitle(),\n\t\t\t\t\t\tpress: () => void oFav.onPageTilePress(oFav),\n\t\t\t\t\t\tsizeBehavior: \"Responsive\",\n\t\t\t\t\t\tstate: \"Loaded\",\n\t\t\t\t\t\tframeType: \"OneByOne\",\n\t\t\t\t\t\tmode: \"IconMode\",\n\t\t\t\t\t\tbackgroundColor: oFav.getBgColor(),\n\t\t\t\t\t\ttileIcon: oFav.getIcon(),\n\t\t\t\t\t\tvisible: true,\n\t\t\t\t\t\trenderOnThemeChange: true,\n\t\t\t\t\t\tariaRole: \"listitem\",\n\t\t\t\t\t\tdropAreaOffset: 8,\n\t\t\t\t\t\turl: oFav.getProperty(\"url\") as string\n\t\t\t\t\t}).addStyleClass(\"sapCuxPageTile\")\n\t\t\t\t);\n\t\t\t\tthis.addAggregation(\"pages\", oFav, true);\n\t\t\t});\n\n\t\t\tthis._oWrapperFlexBox.setAlignItems(this.aFavPages.length == 1 ? \"Start\" : \"Center\");\n\t\t\tconst dndConfigs = this._oWrapperFlexBox.getDragDropConfig();\n\t\t\tif (this.aFavPages.length) {\n\t\t\t\toParent?.panelLoadedFn(\"Page\", { loaded: true, count: this.aFavPages.length });\n\t\t\t\tthis._setFavPagesContent();\n\t\t\t\tif (!dndConfigs?.length)\n\t\t\t\t\tthis.addDragDropConfigTo(\n\t\t\t\t\t\tthis._oWrapperFlexBox,\n\t\t\t\t\t\t(oEvent) => void this._handlePageDnd(oEvent),\n\t\t\t\t\t\tasync (oEvent: KeyboardEvent) => {\n\t\t\t\t\t\t\tawait attachKeyboardHandler(oEvent, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis._oWrapperFlexBox.removeAllDragDropConfig();\n\t\t\t\tdndConfigs.forEach((dndConfig) => {\n\t\t\t\t\tdndConfig.destroy();\n\t\t\t\t});\n\t\t\t\toParent?.panelLoadedFn(\"Page\", { loaded: true, count: 0 });\n\t\t\t\tthis._setNoPageContent();\n\t\t\t}\n\t\t} else {\n\t\t\toParent?.panelLoadedFn(\"Page\", { loaded: false, count: 0 });\n\t\t\tthis.removeAggregation(\"content\", this._oWrapperFlexBox);\n\t\t}\n\t}\n\n\tprivate _setFavPagesContent() {\n\t\tthis._oWrapperFlexBox.removeAllItems();\n\t\tthis._oWrapperFlexBox.removeStyleClass(\"pagesFlexBox\");\n\t\tthis.oInnerControls.forEach((oTile: GenericTile) => {\n\t\t\tthis._oWrapperFlexBox.addItem(oTile);\n\t\t});\n\t}\n\n\tprivate _createNoPageContent() {\n\t\tif (!this._oIllusMsg) {\n\t\t\tthis._oIllusMsg = new IllustratedMessage(this.getId() + \"--idNoPages\", {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Small,\n\t\t\t\tillustrationType: IllustratedMessageType.NoSavedItems,\n\t\t\t\ttitle: this._i18nBundle.getText(\"noDataPageTitle\"),\n\t\t\t\tdescription: this._i18nBundle.getText(\"noPageDescription\")\n\t\t\t}).addStyleClass(\"myHomeIllustratedMsg myHomeIllustratedMessageAlign\");\n\t\t\tthis.oAddPageBtn = new Button(this.getId() + \"--idAddPageBtn\", {\n\t\t\t\ttext: this._i18nBundle.getText(\"addPage\"),\n\t\t\t\ttooltip: this._i18nBundle.getText(\"addPage\"),\n\t\t\t\ttype: \"Emphasized\",\n\t\t\t\tpress: () => this._handleEditPages()\n\t\t\t});\n\t\t\taddFESRSemanticStepName(this.oAddPageBtn, \"press\", \"addPages\");\n\t\t}\n\t}\n\n\tprivate _setNoPageContent() {\n\t\tif (!this.oWrapperNoPageVBox) {\n\t\t\tthis.oWrapperNoPageVBox = new VBox(recycleId(`${this.getId()}--wrapperNoPageVBox`), {\n\t\t\t\twidth: \"100%\",\n\t\t\t\theight: \"17rem\",\n\t\t\t\tbackgroundDesign: \"Solid\",\n\t\t\t\tjustifyContent: \"Center\"\n\t\t\t}).addStyleClass(\"sapUiRoundedBorder noCardsBorder\");\n\t\t\tthis._createNoPageContent();\n\t\t\tthis._oIllusMsg.addAdditionalContent(this.oAddPageBtn);\n\t\t\tthis.oWrapperNoPageVBox.addItem(this._oIllusMsg);\n\t\t}\n\t\tthis._oWrapperFlexBox.removeAllItems();\n\t\tthis._oWrapperFlexBox.addStyleClass(\"pagesFlexBox\");\n\t\tthis._oWrapperFlexBox.addItem(this.oWrapperNoPageVBox);\n\t}\n\n\tprivate _setPropertyValues(oVal: { hBoxWidth: string; pagesTileWidth: string }) {\n\t\tconst propNames = Object.keys(oVal);\n\t\tpropNames.forEach((sProperty: string) => {\n\t\t\tif (sProperty === \"hBoxWidth\") {\n\t\t\t\tthis._oWrapperFlexBox.setProperty(\"width\", oVal[sProperty]);\n\t\t\t} else if (sProperty === \"pagesTileWidth\" && this.oInnerControls.length) {\n\t\t\t\tthis.oInnerControls.forEach(function (oTile) {\n\t\t\t\t\toTile.setProperty(\"width\", oVal[sProperty]);\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate async _handlePageDnd(oEvent: Event<DropInfo$DropEventParameters>) {\n\t\tconst sInsertPosition = oEvent.getParameter?.(\"dropPosition\"),\n\t\t\toDragItem = oEvent?.getParameter?.(\"draggedControl\") as Control,\n\t\t\toDropItem = oEvent.getParameter(\"droppedControl\") as Control,\n\t\t\tiDragItemIndex = (oDragItem.getParent() as FlexBox)?.indexOfItem(oDragItem);\n\t\tlet iDropItemIndex = (oDragItem.getParent() as FlexBox)?.indexOfItem(oDropItem);\n\n\t\tif (sInsertPosition === \"Before\" && iDragItemIndex === iDropItemIndex - 1) {\n\t\t\tiDropItemIndex--;\n\t\t} else if (sInsertPosition === \"After\" && iDragItemIndex === iDropItemIndex + 1) {\n\t\t\tiDropItemIndex++;\n\t\t}\n\n\t\tif (iDragItemIndex !== iDropItemIndex) {\n\t\t\tawait this._DragnDropPages(iDragItemIndex, iDropItemIndex, sInsertPosition as string);\n\t\t}\n\t}\n\n\tprivate async _DragnDropPages(iDragItemIndex: number, iDropItemIndex: number, sInsertPosition: string) {\n\t\tif (sInsertPosition === \"Before\" && iDragItemIndex < iDropItemIndex) {\n\t\t\tiDropItemIndex--;\n\t\t} else if (sInsertPosition === \"After\" && iDragItemIndex > iDropItemIndex) {\n\t\t\tiDropItemIndex++;\n\t\t}\n\t\t// take the moved item from dragIndex and add to dropindex\n\t\tconst oItemMoved = this.aFavPages.splice(iDragItemIndex, 1)[0];\n\t\tthis.aFavPages.splice(iDropItemIndex, 0, oItemMoved);\n\t\tthis.updateTileOrder(iDragItemIndex, iDropItemIndex);\n\n\t\tawait this.writeFavPagesIntoPers(this.aFavPages);\n\t\tfocusDraggedItem(this._oWrapperFlexBox, iDropItemIndex);\n\t}\n\n\t/**\n\t * Updates the tile order in the UI after a drag-and-drop action.\n\t *\n\t * Moves a tile from `dragIndex` to `dropIndex` in the internal array\n\t * and re-renders the tile container to reflect the new order.\n\t *\n\t * @param {number} dragIndex - Index of the dragged tile.\n\t * @param {number} dropIndex - Index to insert the dragged tile.\n\t */\n\tprivate updateTileOrder(dragIndex: number, dropIndex: number) {\n\t\tconst [draggedItem] = this.oInnerControls.splice(dragIndex, 1);\n\t\tthis.oInnerControls.splice(dropIndex, 0, draggedItem);\n\t\tthis._oWrapperFlexBox.removeAllItems();\n\t\tthis.oInnerControls.forEach((oTile) => {\n\t\t\tthis._oWrapperFlexBox.addItem(oTile);\n\t\t});\n\t}\n\n\t/**\n\t * Writes the favourite pages data into personalizer\n\t *\n\t * @private\n\t * @async\n\t * @param {IPage[]} favPages\n\t * @returns {*}\n\t */\n\tprivate async writeFavPagesIntoPers(favPages: IPage[]) {\n\t\tif (this.oPersonalizer === undefined) {\n\t\t\tthis.oPersonalizer = await UShellPersonalizer.getInstance(\n\t\t\t\tPersonalisationUtils.getPersContainerId(this),\n\t\t\t\tPersonalisationUtils.getOwnerComponent(this) as Component\n\t\t\t);\n\t\t}\n\n\t\tlet oPersData = await this.oPersonalizer.read();\n\t\tif (!oPersData) oPersData = { favouritePages: [] };\n\t\toPersData.favouritePages = favPages;\n\t\tawait this.oPersonalizer.write(oPersData);\n\t}\n\n\tpublic applyColorPersonalizations(personalizations: Array<ISpacePagePersonalization>) {\n\t\tvoid this._getPageManagerInstance()?.applyColorPersonalizations(personalizations);\n\t}\n\n\tpublic applyIconPersonalizations(personalizations: Array<ISpacePagePersonalization>) {\n\t\tvoid this._getPageManagerInstance()?.applyIconPersonalizations(personalizations);\n\t}\n\n\tprivate _getPageManagerInstance() {\n\t\tthis.pageManagerInstance = this.pageManagerInstance || getPageManagerInstance(this);\n\t\treturn this.pageManagerInstance;\n\t}\n\n\t/**\n\t * Returns the wrapper FlexBox for the page panel.\n\t *\n\t * @returns {sap.m.FlexBox} The FlexBox that wraps the pages.\n\t * @private\n\t */\n\tpublic getPageWrapper(): FlexBox {\n\t\treturn this._oWrapperFlexBox;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PagePanel.js","names":["sap","ui","define","Button","FlexBox","GenericTile","IllustratedMessage","IllustratedMessageSize","IllustratedMessageType","VBox","sap_m_library","EventBus","__BasePagePanel","__MenuItem","__Page","___utils_CommonUtils","___utils_Constants","___utils_DataFormatUtils","___utils_Device","___utils_DragDropUtils","___utils_FESRUtil","__PersonalisationUtils","__UShellPersonalizer","_interopRequireDefault","obj","__esModule","default","LoadState","BasePagePanel","MenuItem","Page","getPageManagerInstance","PAGE_SELECTION_LIMIT","SETTINGS_PANELS_KEYS","recycleId","DeviceType","attachKeyboardHandler","focusDraggedItem","addFESRId","addFESRSemanticStepName","PersonalisationUtils","UShellPersonalizer","tileSizes","Mobile","maxWidth","minWidth","Tablet","Desktop","LargeDesktop","XLargeDesktop","smallTabletMinWidth","mobileOneTileLimit","maxTileCOunt","maxRowCount","CustomFlexBox","extend","renderer","apiVersion","metadata","library","aggregations","items","type","multiple","singularName","dnd","draggable","droppable","constructor","_constructor","id","settings","FlexBox.prototype.constructor.call","PagePanel","properties","title","group","visibility","key","pages","_constructor2","BasePagePanel.prototype.constructor.call","init","_init","_this","BasePagePanel.prototype.init.call","_oWrapperFlexBox","getId","justifyContent","height","width","direction","renderType","wrap","getPlaceholderPageTiles","addStyleClass","getDeviceType","_pageWrapper","addContent","setProperty","_i18nBundle","getText","menuItem","icon","press","_handleEditPages","addAggregation","oEventBus","getInstance","subscribe","sChannelId","sEventId","oData","aFavPages","Promise","resolve","writeFavPagesIntoPers","then","_getInnerControls","_importdone","e","reject","getData","stateData","status","publish","_getData","forceUpdate","_this2","_temp2","fireEvent","oPagePromise","_temp","undefined","_getPageManagerInstance","getFavoritePages","parent","getParent","_getLayout","openSettingsDialog","PAGES","_getPlaceholderPageTiles","placeholderArray","Array","fill","Loading","placeholderTiles","map","tileState","index","sizeBehavior","state","frameType","mode","visible","renderOnThemeChange","ariaRole","dropAreaOffset","attachResizeHandler","_attachResizeHandler","containerWidth","pagesContentWrapper","favPagesCount","length","deviceType","tileWidth","hBoxWidth","finalTilesWidth","wrapperWidth","gap","setWidth","pagesPerRow","calculatePagesPerRow","maxTileWidth","minTileWidth","Math","min","max","_setPropertyValues","pagesTileWidth","err","Error","getUserAvailablePages","_getUserAvailablePages","_this3","fetchAllAvailablePages","_calculatePagesPerRow","parentContainer","layout","layoutItems","getItems","isSideBySideLayoutActive","some","item","compositeId","getProperty","getVisible","hasStyleClass","ceil","myFavPage","oInnerControls","oParent","forEach","oPage","push","subTitle","spaceTitle","bgColor","BGColor","pageId","spaceId","url","oFav","index2","header","getTitle","subheader","getSubTitle","onPageTilePress","backgroundColor","getBgColor","tileIcon","getIcon","setAlignItems","dndConfigs","getDragDropConfig","panelLoadedFn","loaded","count","_setFavPagesContent","addDragDropConfigTo","oEvent","_handlePageDnd","removeAllDragDropConfig","dndConfig","destroy","_setNoPageContent","removeAggregation","removeAllItems","removeStyleClass","oTile","addItem","_createNoPageContent","_oIllusMsg","illustrationSize","Small","illustrationType","NoSavedItems","description","oAddPageBtn","text","tooltip","oWrapperNoPageVBox","backgroundDesign","addAdditionalContent","oVal","propNames","Object","keys","sProperty","_this4","sInsertPosition","getParameter","oDragItem","oDropItem","iDragItemIndex","indexOfItem","iDropItemIndex","_temp3","_DragnDropPages","_this5","oItemMoved","splice","updateTileOrder","_updateTileOrder","dragIndex","dropIndex","draggedItem","_writeFavPagesIntoPers","favPages","_this6","_temp5","oPersonalizer","read","oPersData","favouritePages","write","_temp4","getPersContainerId","getOwnerComponent","_UShellPersonalizer$g","applyColorPersonalizations","_applyColorPersonalizations","personalizations","applyIconPersonalizations","_applyIconPersonalizations","pageManagerInstance","getPageWrapper","_getPageWrapper"],"sources":["PagePanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport FlexBox, { $FlexBoxSettings } from \"sap/m/FlexBox\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState } from \"sap/m/library\";\nimport Event from \"sap/ui/base/Event\";\nimport Component from \"sap/ui/core/Component\";\nimport Control from \"sap/ui/core/Control\";\nimport { MetadataOptions } from \"sap/ui/core/Element\";\nimport EventBus from \"sap/ui/core/EventBus\";\nimport { DropInfo$DropEventParameters } from \"sap/ui/core/dnd/DropInfo\";\nimport type { $BasePagePanelSettings } from \"./BasePagePanel\";\nimport BasePagePanel from \"./BasePagePanel\";\nimport MenuItem from \"./MenuItem\";\nimport NewsAndPagesContainer from \"./NewsContainer\";\nimport Page from \"./Page\";\nimport PagesContainer from \"./PagesContainer\";\nimport { ISpacePagePersonalization } from \"./interface/KeyUserInterface\";\nimport { IPage } from \"./interface/PageSpaceInterface\";\nimport { getPageManagerInstance } from \"./utils/CommonUtils\";\nimport { PAGE_SELECTION_LIMIT, SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { DeviceType } from \"./utils/Device\";\nimport { attachKeyboardHandler, focusDraggedItem } from \"./utils/DragDropUtils\";\nimport { addFESRId, addFESRSemanticStepName } from \"./utils/FESRUtil\";\nimport PageManager from \"./utils/PageManager\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\nimport UShellPersonalizer from \"./utils/UshellPersonalizer\";\n\nconst tileSizes = {\n\tMobile: {\n\t\tmaxWidth: 37.5,\n\t\tminWidth: 8\n\t},\n\tTablet: {\n\t\tmaxWidth: 60,\n\t\tminWidth: 10.625\n\t},\n\tDesktop: {\n\t\tmaxWidth: 18.75,\n\t\tminWidth: 7\n\t},\n\tLargeDesktop: {\n\t\tmaxWidth: 18.75,\n\t\tminWidth: 7\n\t},\n\tXLargeDesktop: {\n\t\tmaxWidth: 18.75,\n\t\tminWidth: 7\n\t},\n\tsmallTabletMinWidth: 8\n};\n\nconst mobileOneTileLimit = 3;\nconst maxTileCOunt = 8;\nconst maxRowCount = 4;\n\n/**\n *\n * CustomFlexBox extending FlexBox to enable drag & drop.\n *\n * @extends sap.m.FlexBox\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.122\n * @private\n *\n * @alias sap.cux.home.CustomFlexBox\n */\nclass CustomFlexBox extends FlexBox {\n\tconstructor(idOrSettings?: string | $FlexBoxSettings);\n\tconstructor(id?: string, settings?: $FlexBoxSettings);\n\tconstructor(id?: string, settings?: $FlexBoxSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\taggregations: {\n\t\t\titems: { type: \"sap.ui.core.Control\", multiple: true, singularName: \"item\", dnd: { draggable: true, droppable: true } }\n\t\t}\n\t};\n\tstatic renderer = {\n\t\tapiVersion: 2\n\t};\n}\n\n/**\n *\n * Panel class for managing and storing Pages.\n *\n * @extends sap.cux.home.BasePagePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.122\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.PagePanel\n */\n\nexport default class PagePanel extends BasePagePanel {\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Title for the page panel\n\t\t\t */\n\t\t\ttitle: { type: \"string\", group: \"Misc\", visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Key for the page panel\n\t\t\t */\n\t\t\tkey: { type: \"string\", group: \"Misc\", visibility: \"hidden\" }\n\t\t},\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Aggregation of pages available within the page panel\n\t\t\t */\n\t\t\tpages: { type: \"sap.cux.home.Page\", singularName: \"page\", multiple: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\tprivate _oWrapperFlexBox!: CustomFlexBox;\n\tprivate _pageWrapper!: VBox;\n\tprivate oPagePromise!: Promise<IPage[]> | null;\n\tprivate pageManagerInstance!: PageManager;\n\tprivate aFavPages!: IPage[];\n\tprivate oInnerControls!: GenericTile[];\n\tprivate _oIllusMsg!: IllustratedMessage;\n\tprivate oWrapperNoPageVBox!: VBox;\n\tprivate oAddPageBtn!: Button;\n\tprivate oPersonalizer!: UShellPersonalizer;\n\tprivate oEventBus!: EventBus;\n\n\t/**\n\t * Constructor for a new Page 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?: $BasePagePanelSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tinit() {\n\t\tsuper.init();\n\n\t\tthis._oWrapperFlexBox = new CustomFlexBox(`${this.getId()}-pageWrapper`, {\n\t\t\tjustifyContent: \"Start\",\n\t\t\theight: \"100%\",\n\t\t\twidth: \"100%\",\n\t\t\tdirection: \"Row\",\n\t\t\trenderType: \"Bare\",\n\t\t\twrap: \"Wrap\",\n\t\t\titems: this.getPlaceholderPageTiles()\n\t\t}).addStyleClass(\"pagesFlexGap sapCuxPagesWrapper\");\n\n\t\tif (this.getDeviceType() !== DeviceType.Mobile) {\n\t\t\tthis._oWrapperFlexBox.addStyleClass(\"sapUiSmallMarginTop\");\n\t\t}\n\n\t\tthis._pageWrapper = new VBox(`${this.getId()}-pageContentWrapper`, { items: [this._oWrapperFlexBox] });\n\t\tthis.addContent(this._pageWrapper);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"pageTitle\"));\n\n\t\tconst menuItem = new MenuItem(`${this.getId()}-managePages`, {\n\t\t\ttitle: this._i18nBundle.getText(\"mngPage\"),\n\t\t\ticon: \"sap-icon://edit\",\n\t\t\tpress: () => this._handleEditPages()\n\t\t});\n\t\tthis.addAggregation(\"menuItems\", menuItem);\n\t\taddFESRId(menuItem, \"managePages\");\n\t\tthis.oEventBus = EventBus.getInstance();\n\t\t// Subscribe to the event\n\t\tthis.oEventBus.subscribe(\n\t\t\t\"importChannel\",\n\t\t\t\"favPagesImport\",\n\t\t\tasync (sChannelId?: string, sEventId?: string, oData?) => {\n\t\t\t\tthis.aFavPages = oData as IPage[];\n\t\t\t\tawait this.writeFavPagesIntoPers(this.aFavPages);\n\t\t\t\tthis._getInnerControls();\n\t\t\t\tthis._importdone();\n\t\t\t},\n\t\t\tthis\n\t\t);\n\n\t\t// Subscribe to page changes from pageManager\n\t\tthis.oEventBus.subscribe(\n\t\t\t\"pageChannel\",\n\t\t\t\"pageUpdated\",\n\t\t\t() => {\n\t\t\t\tvoid this.getData(true);\n\t\t\t},\n\t\t\tthis\n\t\t);\n\t}\n\n\tprivate _importdone() {\n\t\tconst stateData = { status: true };\n\t\tthis.oEventBus.publish(\"importChannel\", \"favPagesImported\", stateData);\n\t}\n\n\tpublic async getData(forceUpdate: boolean = false) {\n\t\tif (this.oPagePromise === undefined || this.oPagePromise === null || forceUpdate) {\n\t\t\tthis.oPagePromise = this._getPageManagerInstance().getFavoritePages();\n\t\t\tconst aFavPages = await this.oPagePromise;\n\t\t\tthis.aFavPages = aFavPages;\n\t\t\tthis._getInnerControls();\n\t\t\tthis.oPagePromise = null;\n\t\t}\n\t\tthis.fireEvent(\"loaded\");\n\t\treturn this.oPagePromise;\n\t}\n\n\t/**\n\t * Handles the edit page event.\n\t * Opens the page dialog for managing page data.\n\t * @param {Event} oEvent - The event object.\n\t * @private\n\t */\n\tprivate _handleEditPages() {\n\t\tconst parent = this.getParent() as NewsAndPagesContainer;\n\t\tparent?._getLayout().openSettingsDialog(SETTINGS_PANELS_KEYS.PAGES);\n\t}\n\n\t/**\n\t * returns an array of placeholder generic tiles for pages\n\t * @private\n\t */\n\tprivate getPlaceholderPageTiles(): GenericTile[] {\n\t\tconst placeholderArray = new Array(PAGE_SELECTION_LIMIT).fill(LoadState.Loading) as LoadState[];\n\t\tconst placeholderTiles = placeholderArray.map((tileState: LoadState, index) => {\n\t\t\treturn new GenericTile(recycleId(`${this.getId()}--${index}`), {\n\t\t\t\tsizeBehavior: \"Responsive\",\n\t\t\t\tstate: tileState,\n\t\t\t\tframeType: \"OneByOne\",\n\t\t\t\tmode: \"IconMode\",\n\t\t\t\tvisible: true,\n\t\t\t\trenderOnThemeChange: true,\n\t\t\t\tariaRole: \"listitem\",\n\t\t\t\tdropAreaOffset: 8\n\t\t\t}).addStyleClass(\"cuxPagesPlaceholder\");\n\t\t});\n\t\treturn placeholderTiles;\n\t}\n\n\tpublic attachResizeHandler(containerWidth: number, pagesContentWrapper: FlexBox): void {\n\t\ttry {\n\t\t\tconst favPagesCount = this.aFavPages?.length,\n\t\t\t\tdeviceType = this.getDeviceType();\n\n\t\t\tif (!containerWidth) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet tileWidth,\n\t\t\t\thBoxWidth: string,\n\t\t\t\tfinalTilesWidth: string,\n\t\t\t\twrapperWidth = containerWidth / 16; // Divide by 16 to convert to rem,\n\t\t\tconst gap = deviceType === DeviceType.Mobile ? 0.5 : 1;\n\t\t\tpagesContentWrapper.setWidth(\"100%\");\n\n\t\t\tif (favPagesCount > 0) {\n\t\t\t\tconst pagesPerRow = this.calculatePagesPerRow(favPagesCount);\n\t\t\t\tif (pagesPerRow) {\n\t\t\t\t\tconst maxTileWidth = tileSizes[deviceType].maxWidth;\n\t\t\t\t\tlet minTileWidth = tileSizes[deviceType].minWidth;\n\t\t\t\t\t// when tablet viewport width is below 800px, 46rem(736px) is the container width and 2 rem is paddings\n\t\t\t\t\tif (deviceType === DeviceType.Tablet && containerWidth < 736) {\n\t\t\t\t\t\tminTileWidth = tileSizes.smallTabletMinWidth;\n\t\t\t\t\t}\n\t\t\t\t\ttileWidth = (wrapperWidth - (pagesPerRow - 1) * gap) / pagesPerRow;\n\t\t\t\t\ttileWidth = Math.min(tileWidth, maxTileWidth);\n\t\t\t\t\ttileWidth = Math.max(tileWidth, minTileWidth);\n\t\t\t\t\tfinalTilesWidth = `${tileWidth}rem`;\n\t\t\t\t\thBoxWidth = `${pagesPerRow * tileWidth + (pagesPerRow - 1) * gap}rem`;\n\t\t\t\t} else {\n\t\t\t\t\tfinalTilesWidth = \"auto\";\n\t\t\t\t\thBoxWidth = \"100%\";\n\t\t\t\t}\n\n\t\t\t\tthis._setPropertyValues({ hBoxWidth: hBoxWidth, pagesTileWidth: finalTilesWidth });\n\t\t\t\tpagesContentWrapper.setWidth(hBoxWidth);\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tif (err instanceof Error) {\n\t\t\t\tconsole.error(err.message);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic async getUserAvailablePages() {\n\t\treturn await this._getPageManagerInstance().fetchAllAvailablePages();\n\t}\n\n\tprivate calculatePagesPerRow(favPagesCount: number): number {\n\t\tconst parentContainer = this.getParent() as PagesContainer;\n\t\tconst layout = parentContainer._getLayout();\n\t\tconst layoutItems = layout.getItems();\n\n\t\t//loop through layout items and check if any two items have same composite id and same custom style class and are visible\n\t\tconst isSideBySideLayoutActive = layoutItems.some((item: Control) => {\n\t\t\tconst compositeId = item.getProperty(\"compositeId\") as string;\n\t\t\tif (\n\t\t\t\titem.getVisible() &&\n\t\t\t\titem.getId() !== parentContainer.getId() &&\n\t\t\t\titem.hasStyleClass(`${compositeId}`) &&\n\t\t\t\tcompositeId === parentContainer.getProperty(\"compositeId\")\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t});\n\t\tlet pagesPerRow = 0;\n\t\tconst deviceType = this.getDeviceType();\n\t\tif (deviceType === DeviceType.Desktop || deviceType === DeviceType.LargeDesktop || deviceType === DeviceType.XLargeDesktop) {\n\t\t\tif (isSideBySideLayoutActive) {\n\t\t\t\t// halves the tiles in 2 rows\n\t\t\t\tpagesPerRow = Math.ceil(favPagesCount >= maxTileCOunt ? maxRowCount : favPagesCount / 2);\n\t\t\t} else {\n\t\t\t\tpagesPerRow = favPagesCount;\n\t\t\t}\n\t\t} else if (deviceType === DeviceType.Mobile) {\n\t\t\t// decides number of columns to either 1 or 2\n\t\t\tpagesPerRow = favPagesCount <= mobileOneTileLimit ? 1 : 2;\n\t\t} else if (deviceType === DeviceType.Tablet) {\n\t\t\t// upto 4 in a Row, otherwise halves the tiles in 2 rows\n\t\t\tpagesPerRow = favPagesCount <= maxRowCount ? favPagesCount : Math.ceil(favPagesCount / 2);\n\t\t}\n\t\treturn pagesPerRow;\n\t}\n\n\tprivate _getInnerControls() {\n\t\tconst myFavPage: Page[] = [];\n\t\tthis.oInnerControls = [];\n\t\tconst oParent = this.getParent() as NewsAndPagesContainer;\n\t\tif (this.aFavPages) {\n\t\t\tthis.aFavPages.forEach((oPage: IPage, index: number) => {\n\t\t\t\tmyFavPage.push(\n\t\t\t\t\tnew Page(recycleId(`${this.getId()}-favPage-${index}`), {\n\t\t\t\t\t\ttitle: oPage.title,\n\t\t\t\t\t\tsubTitle: oPage.title === oPage.spaceTitle ? \"\" : oPage.spaceTitle,\n\t\t\t\t\t\ticon: oPage.icon,\n\t\t\t\t\t\tbgColor: oPage.BGColor as string,\n\t\t\t\t\t\tpageId: oPage.pageId,\n\t\t\t\t\t\tspaceId: oPage.spaceId,\n\t\t\t\t\t\tspaceTitle: oPage.spaceTitle,\n\t\t\t\t\t\turl: \"#Launchpad-openFLPPage?pageId=\" + oPage.pageId + \"&spaceId=\" + oPage.spaceId\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t});\n\t\t\tmyFavPage.forEach((oFav: Page, index2: number) => {\n\t\t\t\tthis.oInnerControls.push(\n\t\t\t\t\tnew GenericTile(recycleId(`${oFav.getId()}--genericTile--${index2}`), {\n\t\t\t\t\t\t// width: \"10rem\",\n\t\t\t\t\t\theader: oFav.getTitle(),\n\t\t\t\t\t\tsubheader: oFav.getSubTitle(),\n\t\t\t\t\t\tpress: () => void oFav.onPageTilePress(oFav),\n\t\t\t\t\t\tsizeBehavior: \"Responsive\",\n\t\t\t\t\t\tstate: \"Loaded\",\n\t\t\t\t\t\tframeType: \"OneByOne\",\n\t\t\t\t\t\tmode: \"IconMode\",\n\t\t\t\t\t\tbackgroundColor: oFav.getBgColor(),\n\t\t\t\t\t\ttileIcon: oFav.getIcon(),\n\t\t\t\t\t\tvisible: true,\n\t\t\t\t\t\trenderOnThemeChange: true,\n\t\t\t\t\t\tariaRole: \"listitem\",\n\t\t\t\t\t\tdropAreaOffset: 8,\n\t\t\t\t\t\turl: oFav.getProperty(\"url\") as string\n\t\t\t\t\t}).addStyleClass(\"sapCuxPageTile\")\n\t\t\t\t);\n\t\t\t\tthis.addAggregation(\"pages\", oFav, true);\n\t\t\t});\n\n\t\t\tthis._oWrapperFlexBox.setAlignItems(this.aFavPages.length == 1 ? \"Start\" : \"Center\");\n\t\t\tconst dndConfigs = this._oWrapperFlexBox.getDragDropConfig();\n\t\t\tif (this.aFavPages.length) {\n\t\t\t\toParent?.panelLoadedFn(\"Page\", { loaded: true, count: this.aFavPages.length });\n\t\t\t\tthis._setFavPagesContent();\n\t\t\t\tif (!dndConfigs?.length)\n\t\t\t\t\tthis.addDragDropConfigTo(\n\t\t\t\t\t\tthis._oWrapperFlexBox,\n\t\t\t\t\t\t(oEvent) => void this._handlePageDnd(oEvent),\n\t\t\t\t\t\tasync (oEvent: KeyboardEvent) => {\n\t\t\t\t\t\t\tawait attachKeyboardHandler(oEvent, true);\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tthis._oWrapperFlexBox.removeAllDragDropConfig();\n\t\t\t\tdndConfigs.forEach((dndConfig) => {\n\t\t\t\t\tdndConfig.destroy();\n\t\t\t\t});\n\t\t\t\toParent?.panelLoadedFn(\"Page\", { loaded: true, count: 0 });\n\t\t\t\tthis._setNoPageContent();\n\t\t\t}\n\t\t} else {\n\t\t\toParent?.panelLoadedFn(\"Page\", { loaded: false, count: 0 });\n\t\t\tthis.removeAggregation(\"content\", this._oWrapperFlexBox);\n\t\t}\n\t}\n\n\tprivate _setFavPagesContent() {\n\t\tthis._oWrapperFlexBox.removeAllItems();\n\t\tthis._oWrapperFlexBox.removeStyleClass(\"pagesFlexBox\");\n\t\tthis.oInnerControls.forEach((oTile: GenericTile) => {\n\t\t\tthis._oWrapperFlexBox.addItem(oTile);\n\t\t});\n\t}\n\n\tprivate _createNoPageContent() {\n\t\tif (!this._oIllusMsg) {\n\t\t\tthis._oIllusMsg = new IllustratedMessage(this.getId() + \"--idNoPages\", {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Small,\n\t\t\t\tillustrationType: IllustratedMessageType.NoSavedItems,\n\t\t\t\ttitle: this._i18nBundle.getText(\"noDataPageTitle\"),\n\t\t\t\tdescription: this._i18nBundle.getText(\"noPageDescription\")\n\t\t\t}).addStyleClass(\"myHomeIllustratedMsg myHomeIllustratedMessageAlign\");\n\t\t\tthis.oAddPageBtn = new Button(this.getId() + \"--idAddPageBtn\", {\n\t\t\t\ttext: this._i18nBundle.getText(\"addPage\"),\n\t\t\t\ttooltip: this._i18nBundle.getText(\"addPage\"),\n\t\t\t\ttype: \"Emphasized\",\n\t\t\t\tpress: () => this._handleEditPages()\n\t\t\t});\n\t\t\taddFESRSemanticStepName(this.oAddPageBtn, \"press\", \"addPages\");\n\t\t}\n\t}\n\n\tprivate _setNoPageContent() {\n\t\tif (!this.oWrapperNoPageVBox) {\n\t\t\tthis.oWrapperNoPageVBox = new VBox(recycleId(`${this.getId()}--wrapperNoPageVBox`), {\n\t\t\t\twidth: \"100%\",\n\t\t\t\theight: \"17rem\",\n\t\t\t\tbackgroundDesign: \"Solid\",\n\t\t\t\tjustifyContent: \"Center\"\n\t\t\t}).addStyleClass(\"sapUiRoundedBorder noCardsBorder\");\n\t\t\tthis._createNoPageContent();\n\t\t\tthis._oIllusMsg.addAdditionalContent(this.oAddPageBtn);\n\t\t\tthis.oWrapperNoPageVBox.addItem(this._oIllusMsg);\n\t\t}\n\t\tthis._oWrapperFlexBox.removeAllItems();\n\t\tthis._oWrapperFlexBox.addStyleClass(\"pagesFlexBox\");\n\t\tthis._oWrapperFlexBox.addItem(this.oWrapperNoPageVBox);\n\t}\n\n\tprivate _setPropertyValues(oVal: { hBoxWidth: string; pagesTileWidth: string }) {\n\t\tconst propNames = Object.keys(oVal);\n\t\tpropNames.forEach((sProperty: string) => {\n\t\t\tif (sProperty === \"hBoxWidth\") {\n\t\t\t\tthis._oWrapperFlexBox.setProperty(\"width\", oVal[sProperty]);\n\t\t\t} else if (sProperty === \"pagesTileWidth\" && this.oInnerControls.length) {\n\t\t\t\tthis.oInnerControls.forEach(function (oTile) {\n\t\t\t\t\toTile.setProperty(\"width\", oVal[sProperty]);\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\tprivate async _handlePageDnd(oEvent: Event<DropInfo$DropEventParameters>) {\n\t\tconst sInsertPosition = oEvent.getParameter?.(\"dropPosition\"),\n\t\t\toDragItem = oEvent?.getParameter?.(\"draggedControl\") as Control,\n\t\t\toDropItem = oEvent.getParameter(\"droppedControl\") as Control,\n\t\t\tiDragItemIndex = (oDragItem.getParent() as FlexBox)?.indexOfItem(oDragItem);\n\t\tlet iDropItemIndex = (oDragItem.getParent() as FlexBox)?.indexOfItem(oDropItem);\n\n\t\tif (sInsertPosition === \"Before\" && iDragItemIndex === iDropItemIndex - 1) {\n\t\t\tiDropItemIndex--;\n\t\t} else if (sInsertPosition === \"After\" && iDragItemIndex === iDropItemIndex + 1) {\n\t\t\tiDropItemIndex++;\n\t\t}\n\n\t\tif (iDragItemIndex !== iDropItemIndex) {\n\t\t\tawait this._DragnDropPages(iDragItemIndex, iDropItemIndex, sInsertPosition as string);\n\t\t}\n\t}\n\n\tprivate async _DragnDropPages(iDragItemIndex: number, iDropItemIndex: number, sInsertPosition: string) {\n\t\tif (sInsertPosition === \"Before\" && iDragItemIndex < iDropItemIndex) {\n\t\t\tiDropItemIndex--;\n\t\t} else if (sInsertPosition === \"After\" && iDragItemIndex > iDropItemIndex) {\n\t\t\tiDropItemIndex++;\n\t\t}\n\t\t// take the moved item from dragIndex and add to dropindex\n\t\tconst oItemMoved = this.aFavPages.splice(iDragItemIndex, 1)[0];\n\t\tthis.aFavPages.splice(iDropItemIndex, 0, oItemMoved);\n\t\tthis.updateTileOrder(iDragItemIndex, iDropItemIndex);\n\n\t\tawait this.writeFavPagesIntoPers(this.aFavPages);\n\t\tfocusDraggedItem(this._oWrapperFlexBox, iDropItemIndex);\n\t}\n\n\t/**\n\t * Updates the tile order in the UI after a drag-and-drop action.\n\t *\n\t * Moves a tile from `dragIndex` to `dropIndex` in the internal array\n\t * and re-renders the tile container to reflect the new order.\n\t *\n\t * @param {number} dragIndex - Index of the dragged tile.\n\t * @param {number} dropIndex - Index to insert the dragged tile.\n\t */\n\tprivate updateTileOrder(dragIndex: number, dropIndex: number) {\n\t\tconst [draggedItem] = this.oInnerControls.splice(dragIndex, 1);\n\t\tthis.oInnerControls.splice(dropIndex, 0, draggedItem);\n\t\tthis._oWrapperFlexBox.removeAllItems();\n\t\tthis.oInnerControls.forEach((oTile) => {\n\t\t\tthis._oWrapperFlexBox.addItem(oTile);\n\t\t});\n\t}\n\n\t/**\n\t * Writes the favourite pages data into personalizer\n\t *\n\t * @private\n\t * @async\n\t * @param {IPage[]} favPages\n\t * @returns {*}\n\t */\n\tprivate async writeFavPagesIntoPers(favPages: IPage[]) {\n\t\tif (this.oPersonalizer === undefined) {\n\t\t\tthis.oPersonalizer = await UShellPersonalizer.getInstance(\n\t\t\t\tPersonalisationUtils.getPersContainerId(this),\n\t\t\t\tPersonalisationUtils.getOwnerComponent(this) as Component\n\t\t\t);\n\t\t}\n\n\t\tlet oPersData = await this.oPersonalizer.read();\n\t\tif (!oPersData) oPersData = { favouritePages: [] };\n\t\toPersData.favouritePages = favPages;\n\t\tawait this.oPersonalizer.write(oPersData);\n\t}\n\n\tpublic applyColorPersonalizations(personalizations: Array<ISpacePagePersonalization>) {\n\t\tvoid this._getPageManagerInstance()?.applyColorPersonalizations(personalizations);\n\t}\n\n\tpublic applyIconPersonalizations(personalizations: Array<ISpacePagePersonalization>) {\n\t\tvoid this._getPageManagerInstance()?.applyIconPersonalizations(personalizations);\n\t}\n\n\tprivate _getPageManagerInstance() {\n\t\tthis.pageManagerInstance = this.pageManagerInstance || getPageManagerInstance(this);\n\t\treturn this.pageManagerInstance;\n\t}\n\n\t/**\n\t * Returns the wrapper FlexBox for the page panel.\n\t *\n\t * @returns {sap.m.FlexBox} The FlexBox that wraps the pages.\n\t * @private\n\t */\n\tpublic getPageWrapper(): FlexBox {\n\t\treturn this._oWrapperFlexBox;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}