@sapui5/sap.cux.home 1.138.0 → 1.139.1

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 (298) hide show
  1. package/package.json +1 -1
  2. package/src/sap/cux/home/.library +1 -1
  3. package/src/sap/cux/home/App.d.ts +2 -2
  4. package/src/sap/cux/home/App.js +2 -2
  5. package/src/sap/cux/home/App.js.map +1 -1
  6. package/src/sap/cux/home/App.ts +2 -2
  7. package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
  8. package/src/sap/cux/home/AppsAdditionPanel.js +17 -10
  9. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  10. package/src/sap/cux/home/AppsAdditionPanel.ts +19 -12
  11. package/src/sap/cux/home/AppsContainer.d.ts +2 -3
  12. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  13. package/src/sap/cux/home/AppsContainer.js +5 -8
  14. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  15. package/src/sap/cux/home/AppsContainer.ts +4 -8
  16. package/src/sap/cux/home/BaseApp.d.ts +2 -2
  17. package/src/sap/cux/home/BaseApp.js +2 -2
  18. package/src/sap/cux/home/BaseApp.js.map +1 -1
  19. package/src/sap/cux/home/BaseApp.ts +2 -2
  20. package/src/sap/cux/home/BaseAppPanel.js +1 -1
  21. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  22. package/src/sap/cux/home/BaseAppPanel.ts +1 -1
  23. package/src/sap/cux/home/BaseContainer.d.ts +2 -2
  24. package/src/sap/cux/home/BaseContainer.js +3 -3
  25. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  26. package/src/sap/cux/home/BaseContainer.ts +3 -3
  27. package/src/sap/cux/home/BaseContainerRenderer.d.ts +4 -4
  28. package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
  29. package/src/sap/cux/home/BaseContainerRenderer.js +17 -19
  30. package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
  31. package/src/sap/cux/home/BaseContainerRenderer.ts +21 -25
  32. package/src/sap/cux/home/BaseLayout.d.ts +2 -2
  33. package/src/sap/cux/home/BaseLayout.js +2 -2
  34. package/src/sap/cux/home/BaseLayout.js.map +1 -1
  35. package/src/sap/cux/home/BaseLayout.ts +2 -2
  36. package/src/sap/cux/home/BaseNewsItem.d.ts +2 -2
  37. package/src/sap/cux/home/BaseNewsItem.js +2 -2
  38. package/src/sap/cux/home/BaseNewsItem.js.map +1 -1
  39. package/src/sap/cux/home/BaseNewsItem.ts +2 -2
  40. package/src/sap/cux/home/BaseNewsPanel.d.ts +2 -2
  41. package/src/sap/cux/home/BaseNewsPanel.js +2 -2
  42. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  43. package/src/sap/cux/home/BaseNewsPanel.ts +2 -2
  44. package/src/sap/cux/home/BasePagePanel.d.ts +2 -2
  45. package/src/sap/cux/home/BasePagePanel.js +2 -2
  46. package/src/sap/cux/home/BasePagePanel.js.map +1 -1
  47. package/src/sap/cux/home/BasePagePanel.ts +2 -2
  48. package/src/sap/cux/home/BasePanel.d.ts +2 -2
  49. package/src/sap/cux/home/BasePanel.js +2 -2
  50. package/src/sap/cux/home/BasePanel.js.map +1 -1
  51. package/src/sap/cux/home/BasePanel.ts +2 -2
  52. package/src/sap/cux/home/BaseSettingsDialog.d.ts +2 -2
  53. package/src/sap/cux/home/BaseSettingsDialog.js +2 -2
  54. package/src/sap/cux/home/BaseSettingsDialog.js.map +1 -1
  55. package/src/sap/cux/home/BaseSettingsDialog.ts +2 -2
  56. package/src/sap/cux/home/BaseSettingsPanel.d.ts +3 -3
  57. package/src/sap/cux/home/BaseSettingsPanel.d.ts.map +1 -1
  58. package/src/sap/cux/home/BaseSettingsPanel.js +4 -3
  59. package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
  60. package/src/sap/cux/home/BaseSettingsPanel.ts +6 -4
  61. package/src/sap/cux/home/CardsPanel.d.ts +2 -2
  62. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  63. package/src/sap/cux/home/CardsPanel.js +4 -4
  64. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  65. package/src/sap/cux/home/CardsPanel.ts +4 -7
  66. package/src/sap/cux/home/ContentAdditionDialog.js +1 -1
  67. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  68. package/src/sap/cux/home/ContentAdditionDialog.ts +1 -1
  69. package/src/sap/cux/home/ErrorPanel.d.ts +2 -2
  70. package/src/sap/cux/home/ErrorPanel.js +2 -2
  71. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  72. package/src/sap/cux/home/ErrorPanel.ts +2 -2
  73. package/src/sap/cux/home/FavAppPanel.d.ts +2 -2
  74. package/src/sap/cux/home/FavAppPanel.js +2 -2
  75. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  76. package/src/sap/cux/home/FavAppPanel.ts +2 -2
  77. package/src/sap/cux/home/FrequentAppPanel.d.ts +2 -2
  78. package/src/sap/cux/home/FrequentAppPanel.js +2 -2
  79. package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
  80. package/src/sap/cux/home/FrequentAppPanel.ts +2 -2
  81. package/src/sap/cux/home/Group.d.ts +2 -2
  82. package/src/sap/cux/home/Group.js +2 -2
  83. package/src/sap/cux/home/Group.js.map +1 -1
  84. package/src/sap/cux/home/Group.ts +2 -2
  85. package/src/sap/cux/home/IToDoPanel.d.ts +2 -2
  86. package/src/sap/cux/home/IToDoPanel.js.map +1 -1
  87. package/src/sap/cux/home/IToDoPanel.ts +2 -2
  88. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  89. package/src/sap/cux/home/InsightsAdditionPanel.js +4 -7
  90. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  91. package/src/sap/cux/home/InsightsAdditionPanel.ts +4 -8
  92. package/src/sap/cux/home/InsightsContainer.d.ts +2 -3
  93. package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
  94. package/src/sap/cux/home/InsightsContainer.js +6 -6
  95. package/src/sap/cux/home/InsightsContainer.js.map +1 -1
  96. package/src/sap/cux/home/InsightsContainer.ts +13 -7
  97. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  98. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +5 -3
  99. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  100. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +4 -2
  101. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts +11 -5
  102. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
  103. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +160 -82
  104. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  105. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +164 -82
  106. package/src/sap/cux/home/Layout.d.ts +2 -3
  107. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  108. package/src/sap/cux/home/Layout.js +2 -3
  109. package/src/sap/cux/home/Layout.js.map +1 -1
  110. package/src/sap/cux/home/Layout.ts +2 -4
  111. package/src/sap/cux/home/MenuItem.d.ts +2 -2
  112. package/src/sap/cux/home/MenuItem.js +2 -2
  113. package/src/sap/cux/home/MenuItem.js.map +1 -1
  114. package/src/sap/cux/home/MenuItem.ts +2 -2
  115. package/src/sap/cux/home/NewsAndPagesContainer.d.ts +24 -3
  116. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
  117. package/src/sap/cux/home/NewsAndPagesContainer.js +49 -21
  118. package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
  119. package/src/sap/cux/home/NewsAndPagesContainer.ts +53 -21
  120. package/src/sap/cux/home/NewsGroup.d.ts.map +1 -1
  121. package/src/sap/cux/home/NewsGroup.js +11 -6
  122. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  123. package/src/sap/cux/home/NewsGroup.ts +11 -8
  124. package/src/sap/cux/home/NewsPanel.d.ts +36 -7
  125. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  126. package/src/sap/cux/home/NewsPanel.gen.d.ts +0 -91
  127. package/src/sap/cux/home/NewsPanel.js +281 -200
  128. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  129. package/src/sap/cux/home/NewsPanel.ts +168 -102
  130. package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
  131. package/src/sap/cux/home/NewsSettingsPanel.js +10 -6
  132. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  133. package/src/sap/cux/home/NewsSettingsPanel.ts +12 -6
  134. package/src/sap/cux/home/NoDataContainer.d.ts +2 -3
  135. package/src/sap/cux/home/NoDataContainer.d.ts.map +1 -1
  136. package/src/sap/cux/home/NoDataContainer.js +2 -2
  137. package/src/sap/cux/home/NoDataContainer.js.map +1 -1
  138. package/src/sap/cux/home/NoDataContainer.ts +2 -2
  139. package/src/sap/cux/home/PagePanel.d.ts +2 -2
  140. package/src/sap/cux/home/PagePanel.js +2 -2
  141. package/src/sap/cux/home/PagePanel.js.map +1 -1
  142. package/src/sap/cux/home/PagePanel.ts +2 -2
  143. package/src/sap/cux/home/RecentAppPanel.d.ts +2 -2
  144. package/src/sap/cux/home/RecentAppPanel.js +2 -2
  145. package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
  146. package/src/sap/cux/home/RecentAppPanel.ts +2 -2
  147. package/src/sap/cux/home/RecommendedAppPanel.d.ts +2 -2
  148. package/src/sap/cux/home/RecommendedAppPanel.js +2 -2
  149. package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
  150. package/src/sap/cux/home/RecommendedAppPanel.ts +2 -2
  151. package/src/sap/cux/home/SituationPanel.d.ts +2 -2
  152. package/src/sap/cux/home/SituationPanel.js +2 -2
  153. package/src/sap/cux/home/SituationPanel.js.map +1 -1
  154. package/src/sap/cux/home/SituationPanel.ts +2 -2
  155. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +2 -2
  156. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
  157. package/src/sap/cux/home/SpaceInsightsPanel.js +6 -3
  158. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
  159. package/src/sap/cux/home/SpaceInsightsPanel.ts +6 -3
  160. package/src/sap/cux/home/SpacePanel.d.ts +2 -2
  161. package/src/sap/cux/home/SpacePanel.js +2 -2
  162. package/src/sap/cux/home/SpacePanel.js.map +1 -1
  163. package/src/sap/cux/home/SpacePanel.ts +2 -2
  164. package/src/sap/cux/home/TaskPanel.d.ts +2 -2
  165. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  166. package/src/sap/cux/home/TaskPanel.js +4 -11
  167. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  168. package/src/sap/cux/home/TaskPanel.ts +5 -11
  169. package/src/sap/cux/home/TilesPanel.d.ts +2 -2
  170. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  171. package/src/sap/cux/home/TilesPanel.js +6 -6
  172. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  173. package/src/sap/cux/home/TilesPanel.ts +6 -12
  174. package/src/sap/cux/home/ToDoPanel.d.ts +2 -2
  175. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  176. package/src/sap/cux/home/ToDoPanel.js +4 -19
  177. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  178. package/src/sap/cux/home/ToDoPanel.ts +4 -20
  179. package/src/sap/cux/home/ToDosContainer.d.ts +2 -3
  180. package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
  181. package/src/sap/cux/home/ToDosContainer.js +5 -5
  182. package/src/sap/cux/home/ToDosContainer.js.map +1 -1
  183. package/src/sap/cux/home/ToDosContainer.ts +3 -3
  184. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
  185. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -0
  186. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
  187. package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +1 -0
  188. package/src/sap/cux/home/i18n/messagebundle.properties +17 -5
  189. package/src/sap/cux/home/i18n/messagebundle_ar.properties +5 -5
  190. package/src/sap/cux/home/i18n/messagebundle_bg.properties +5 -5
  191. package/src/sap/cux/home/i18n/messagebundle_ca.properties +5 -5
  192. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +5 -5
  193. package/src/sap/cux/home/i18n/messagebundle_cs.properties +5 -5
  194. package/src/sap/cux/home/i18n/messagebundle_cy.properties +5 -5
  195. package/src/sap/cux/home/i18n/messagebundle_da.properties +5 -5
  196. package/src/sap/cux/home/i18n/messagebundle_de.properties +15 -15
  197. package/src/sap/cux/home/i18n/messagebundle_el.properties +5 -5
  198. package/src/sap/cux/home/i18n/messagebundle_en.properties +5 -5
  199. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +5 -5
  200. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +12 -6
  201. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +12 -6
  202. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +5 -5
  203. package/src/sap/cux/home/i18n/messagebundle_es.properties +5 -5
  204. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +5 -5
  205. package/src/sap/cux/home/i18n/messagebundle_et.properties +5 -5
  206. package/src/sap/cux/home/i18n/messagebundle_fi.properties +5 -5
  207. package/src/sap/cux/home/i18n/messagebundle_fr.properties +5 -5
  208. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +5 -5
  209. package/src/sap/cux/home/i18n/messagebundle_hi.properties +5 -5
  210. package/src/sap/cux/home/i18n/messagebundle_hr.properties +5 -5
  211. package/src/sap/cux/home/i18n/messagebundle_hu.properties +5 -5
  212. package/src/sap/cux/home/i18n/messagebundle_id.properties +6 -6
  213. package/src/sap/cux/home/i18n/messagebundle_it.properties +5 -5
  214. package/src/sap/cux/home/i18n/messagebundle_iw.properties +5 -5
  215. package/src/sap/cux/home/i18n/messagebundle_ja.properties +9 -9
  216. package/src/sap/cux/home/i18n/messagebundle_kk.properties +5 -5
  217. package/src/sap/cux/home/i18n/messagebundle_ko.properties +5 -5
  218. package/src/sap/cux/home/i18n/messagebundle_lt.properties +5 -5
  219. package/src/sap/cux/home/i18n/messagebundle_lv.properties +5 -5
  220. package/src/sap/cux/home/i18n/messagebundle_mk.properties +5 -5
  221. package/src/sap/cux/home/i18n/messagebundle_ms.properties +5 -5
  222. package/src/sap/cux/home/i18n/messagebundle_nl.properties +5 -5
  223. package/src/sap/cux/home/i18n/messagebundle_no.properties +5 -5
  224. package/src/sap/cux/home/i18n/messagebundle_pl.properties +5 -5
  225. package/src/sap/cux/home/i18n/messagebundle_pt.properties +5 -5
  226. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +5 -5
  227. package/src/sap/cux/home/i18n/messagebundle_ro.properties +5 -5
  228. package/src/sap/cux/home/i18n/messagebundle_ru.properties +5 -5
  229. package/src/sap/cux/home/i18n/messagebundle_sh.properties +5 -5
  230. package/src/sap/cux/home/i18n/messagebundle_sk.properties +6 -6
  231. package/src/sap/cux/home/i18n/messagebundle_sl.properties +5 -5
  232. package/src/sap/cux/home/i18n/messagebundle_sr.properties +5 -5
  233. package/src/sap/cux/home/i18n/messagebundle_sv.properties +5 -5
  234. package/src/sap/cux/home/i18n/messagebundle_th.properties +7 -7
  235. package/src/sap/cux/home/i18n/messagebundle_tr.properties +5 -5
  236. package/src/sap/cux/home/i18n/messagebundle_uk.properties +6 -6
  237. package/src/sap/cux/home/i18n/messagebundle_vi.properties +5 -5
  238. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +5 -5
  239. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +5 -5
  240. package/src/sap/cux/home/interface/CardsInterface.d.ts +1 -5
  241. package/src/sap/cux/home/interface/CardsInterface.d.ts.map +1 -1
  242. package/src/sap/cux/home/interface/CardsInterface.js.map +1 -1
  243. package/src/sap/cux/home/interface/CardsInterface.ts +1 -1
  244. package/src/sap/cux/home/interface/KeyUserInterface.d.ts +2 -0
  245. package/src/sap/cux/home/interface/KeyUserInterface.d.ts.map +1 -1
  246. package/src/sap/cux/home/interface/KeyUserInterface.js.map +1 -1
  247. package/src/sap/cux/home/interface/KeyUserInterface.ts +2 -0
  248. package/src/sap/cux/home/library.d.ts +26 -15
  249. package/src/sap/cux/home/library.d.ts.map +1 -1
  250. package/src/sap/cux/home/library.js +26 -15
  251. package/src/sap/cux/home/library.js.map +1 -1
  252. package/src/sap/cux/home/library.ts +27 -15
  253. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +0 -8
  254. package/src/sap/cux/home/themes/base/NewsAndPagesContainer.less +4 -0
  255. package/src/sap/cux/home/themes/base/ToDosContainer.less +2 -1
  256. package/src/sap/cux/home/utils/CommonUtils.d.ts +1 -1
  257. package/src/sap/cux/home/utils/CommonUtils.d.ts.map +1 -1
  258. package/src/sap/cux/home/utils/CommonUtils.js.map +1 -1
  259. package/src/sap/cux/home/utils/CommonUtils.ts +5 -2
  260. package/src/sap/cux/home/utils/FeatureUtils.js +0 -2
  261. package/src/sap/cux/home/utils/FeatureUtils.js.map +1 -1
  262. package/src/sap/cux/home/utils/FeatureUtils.ts +3 -3
  263. package/src/sap/cux/home/utils/HttpHelper.js.map +1 -1
  264. package/src/sap/cux/home/utils/HttpHelper.ts +1 -1
  265. package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +1 -1
  266. package/src/sap/cux/home/utils/KeyUserPersonalization.js +0 -1
  267. package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +1 -1
  268. package/src/sap/cux/home/utils/KeyUserPersonalization.ts +0 -1
  269. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +9 -4
  270. package/src/sap/cux/home/{AppsContainerGenericPlaceholder.d.ts → utils/placeholder/AppsPlaceholder.d.ts} +2 -2
  271. package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.d.ts.map +1 -0
  272. package/src/sap/cux/home/{AppsContainerGenericPlaceholder.js → utils/placeholder/AppsPlaceholder.js} +1 -1
  273. package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.js.map +1 -0
  274. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +8 -0
  275. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +1 -0
  276. package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.js → utils/placeholder/InsightsPlaceholder.js} +1 -1
  277. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +1 -0
  278. package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.d.ts → utils/placeholder/NewsAndPagesPlaceholder.d.ts} +3 -3
  279. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +1 -0
  280. package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.js → utils/placeholder/NewsAndPagesPlaceholder.js} +1 -1
  281. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +1 -0
  282. package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.d.ts → utils/placeholder/ToDosPlaceholder.d.ts} +2 -2
  283. package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.d.ts.map +1 -0
  284. package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.js → utils/placeholder/ToDosPlaceholder.js} +1 -1
  285. package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.js.map +1 -0
  286. package/src/sap/cux/home/AppsContainerGenericPlaceholder.d.ts.map +0 -1
  287. package/src/sap/cux/home/AppsContainerGenericPlaceholder.js.map +0 -1
  288. package/src/sap/cux/home/InsightsContainerGenericPlaceholder.d.ts.map +0 -1
  289. package/src/sap/cux/home/InsightsContainerGenericPlaceholder.js.map +0 -1
  290. package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts +0 -8
  291. package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts.map +0 -1
  292. package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.js.map +0 -1
  293. package/src/sap/cux/home/ToDosContainerGenericPlaceholder.d.ts.map +0 -1
  294. package/src/sap/cux/home/ToDosContainerGenericPlaceholder.js.map +0 -1
  295. /package/src/sap/cux/home/{AppsContainerGenericPlaceholder.ts → utils/placeholder/AppsPlaceholder.ts} +0 -0
  296. /package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.ts → utils/placeholder/InsightsPlaceholder.ts} +0 -0
  297. /package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.ts → utils/placeholder/NewsAndPagesPlaceholder.ts} +0 -0
  298. /package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.ts → utils/placeholder/ToDosPlaceholder.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ToDoPanel.js","names":["sap","ui","define","Log","Card","GridContainer","GridContainerSettings","Button","GenericTile","HeaderContainer","IllustratedMessage","IllustratedMessageSize","Text","TileContent","VBox","sap_m_library","Device","UI5Element","InvisibleText","DateFormat","JSONModel","__BasePanel","__MenuItem","__ToDosContainer","__BatchHelper","___utils_Device","___utils_FESRUtil","__HttpHelper","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","Priority","_finallyRethrows","finalizer","bind","URLHelper","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","BasePanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","MenuItem","ToDosContainer","BatchHelper","calculateCardWidth","DeviceType","fetchElementProperties","addFESRId","HttpHelper","Constants","SITUATION_ICON","PLACEHOLDER_ITEMS_COUNT","TODO_CARDS_LIMIT","TODO_SECTION_LIMIT","TODOS_REFRESH_INTERVAL","MOBILE_DEVICE_MAX_WIDTH","DEFAULT_TITLE_HEIGHT","DEFAULT_CARD_HEIGHT","DEFAULT_TAB_HEADER_HEIGHT","GAP","ToDoPanel","extend","metadata","library","properties","baseUrl","type","group","defaultValue","visibility","countUrl","dataUrl","targetAppUrl","minCardWidth","maxCardWidth","useBatch","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","batchHelper","init","_init","BasePanel.prototype.init.call","_oData","isLoaded","hasError","cardWidth","getSupported","isExpandedOnce","isCountCalledOnce","illustrationType","refreshInfo","_toRelativeDateTime","Date","fullRefreshInfo","_toFullRelativeDateTime","horizontalCardCount","illustrationTitle","_i18nBundle","getText","illustrationDescription","isPhone","resize","width","system","phone","tiles","Array","fill","loadState","displayTiles","_controlModel","requests","_toDoWrapper","getId","renderType","items","_generateCardContainer","_generateMobileCardContainer","_generateErrorMessage","setModel","_addContent","menuItem","title","icon","press","_onPressRefresh","addAggregation","_accRefreshLabel","text","addDependent","_refreshBtn","addAriaLabelledBy","setProperty","attachEvent","Promise","resolve","_beforePanelExpand","_cardContainer","inlineBlockLayout","snapToRow","visible","layout","columns","columnSize","gap","addStyleClass","_mobileCardContainer","scrollStep","gridLayout","scrollTime","showDividers","_errorCard","_errorMessage","illustrationSize","Base","description","content","getParent","_getSelectedPanel","_loadCards","forceRefresh","_this2","_loadToDos","undefined","_bindInnerControls","selectedKey","getProperty","_isElementExpanded","_setCount","_getSupported","setTimeout","_generatePlaceHolderTiles","_generateRequestObject","onlyCount","concat","toDosWrapper","_getContent","hasStyleClass","removeStyleClass","_submitBatch","fireEvent","_setSectionRefreshInterval","lastRefreshedTime","_updateRefreshInformation","_switchTabIfRequired","_updateHeaderIfExclusive","catch","error","Error","message","finally","refresh","_adjustLayout","_handleError","getTargetAppUrl","removeContent","_isExclusivePanel","_setTitle","String","_innerControlsBound","bindAggregation","path","factory","context","generateCardTemplate","bindProperty","_generateCardTemplate","mode","frameType","pressEnabled","header","tileContent","priority","priorityText","_toPriorityText","footer","key","VeryHigh","High","Medium","Low","_cardCount","_getVisibleCardCount","isPlaceholder","calculationProperties","_getLayout","isElementExpanded","targetDomRef","getDomRef","isHeaderVisible","containerDomRef","_getFullScreenContainer","sectionNodeIndex","childNodes","isMobileDevice","cardCount","getHorizontalCardCount","getVerticalCardCount","toDosContainer","_getCurrentExpandedElementName","_getHorizontalCardCount","domRef","domProperties","availableWidth","Object","slice","reduce","propertyValue","actualCardCount","minWidth","maxWidth","cardLayoutConfig","containerWidth","totalCards","Math","max","floor","_getVerticalCardCount","sectionDomProperties","parentDomProperties","parentElement","titleHeight","calculateTitleHeight","availableHeight","height","margin","cardHeight","verticalCardCount","_calculateTitleHeight","container","containerHeaderRef","getElementById","iconTabBarHeaderRef","_getInnerControl","defaultHeight","clientHeight","options","_this3","getCountUrl","urls","generateRequestUrls","splice","baseURL","getBaseUrl","requestURLs","success","args","onDataReceived","Number","_handleEmptyCards","_generateRequestUrls","getDataUrl","queryString","includes","_onDataReceived","results","_this4","getNoDataText","allPanels","getContent","supportedPanels","filter","panel","clearInterval","refreshFn","setInterval","setAggregation","_updateContainerHeader","displayCards","getDeviceType","Mobile","toggleFullScreenElements","date","inputDate","isNaN","relativeDateFormatter","format","fullRelativeDateFormatter","_getNoDataText","_parseResponse","response","d","numericD","numericResponse","_this5","all","map","request","createMultipartRequest","GetMultipleRequests","responses","processedResponses","JSON","parse","_temp","_wasThrown","_result","_clearRequests","_isLoaded","parentContainer","isContainerExpanded","_setLoaded","_setSupported","isSupported","_getAppIntent","pattern","match","semanticObject","action","params","paramsArray","split","param","_this6","_interrupt","_temp5","_temp3","nextAvailablePanel","panels","getAggregation","_temp4","_temp2","_getCardCount","_onPressViewAll","redirect","_this7","_temp6","exit","_exit","getDateTimeInstance","style","relative","relativeStyle"],"sources":["ToDoPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport Card from \"sap/f/Card\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport Text from \"sap/m/Text\";\nimport TileContent from \"sap/m/TileContent\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState, Priority, URLHelper } from \"sap/m/library\";\nimport Device from \"sap/ui/Device\";\nimport ManagedObject from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport InvisibleText from \"sap/ui/core/InvisibleText\";\nimport DateFormat from \"sap/ui/core/format/DateFormat\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport IToDoPanel from \"./IToDoPanel\";\nimport MenuItem from \"./MenuItem\";\nimport { $ToDoPanelSettings } from \"./ToDoPanel\";\nimport ToDosContainer from \"./ToDosContainer\";\nimport BatchHelper from \"./utils/BatchHelper\";\nimport { calculateCardWidth, DeviceType, fetchElementProperties } from \"./utils/Device\";\nimport { addFESRId } from \"./utils/FESRUtil\";\nimport HttpHelper from \"./utils/HttpHelper\";\n\ninterface Request {\n\tbaseURL: string;\n\trequestURLs: string[];\n\tsuccess(args: unknown[]): Promise<void>;\n}\n\nexport interface CalculationProperties {\n\tisPlaceholder?: boolean;\n}\n\nexport interface Intent {\n\ttarget: {\n\t\tsemanticObject: string;\n\t\taction: string;\n\t};\n\tparams: {\n\t\t[key: string]: string;\n\t};\n}\n\nexport interface RequestOptions {\n\ttype: string;\n\tonlyCount?: boolean;\n}\n\nexport interface Response {\n\td?: {\n\t\tresults?: unknown[];\n\t};\n\tresults?: unknown[];\n\tvalue?: unknown[];\n}\n\nconst Constants = {\n\tSITUATION_ICON: \"sap-icon://message-warning\",\n\tPLACEHOLDER_ITEMS_COUNT: 5,\n\tTODO_CARDS_LIMIT: 100,\n\tTODO_SECTION_LIMIT: 6,\n\tTODOS_REFRESH_INTERVAL: 65000,\n\tMOBILE_DEVICE_MAX_WIDTH: 600,\n\tDEFAULT_TITLE_HEIGHT: 33,\n\tDEFAULT_CARD_HEIGHT: 168,\n\tDEFAULT_TAB_HEADER_HEIGHT: 44,\n\tGAP: 16\n};\n\n/**\n *\n * Abstract Panel class for managing and storing To-Do cards.\n *\n * @extends BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @abstract\n * @internal\n * @public\n *\n * @alias sap.cux.home.ToDoPanel\n */\nexport default abstract class ToDoPanel extends BasePanel implements IToDoPanel {\n\tprotected _oData!: Record<string, unknown>;\n\tprotected requests!: Request[];\n\tprivate _controlModel!: JSONModel;\n\tprivate _toDoWrapper!: VBox;\n\tprivate _cardContainer!: GridContainer;\n\tprivate _mobileCardContainer!: HeaderContainer;\n\tprivate _errorCard!: Card;\n\tprivate _errorMessage!: IllustratedMessage;\n\tprivate _refreshBtn!: Button;\n\tprivate _loadToDos!: Promise<void> | undefined;\n\tprivate _innerControlsBound!: boolean;\n\tprivate _cardCount!: number;\n\tprivate batchHelper!: BatchHelper;\n\tprivate _accRefreshLabel!: InvisibleText;\n\n\tconstructor(id?: string | $ToDoPanelSettings);\n\tconstructor(id?: string, settings?: $ToDoPanelSettings);\n\t/**\n\t * Constructor for a new To-Dos 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?: $ToDoPanelSettings) {\n\t\tsuper(id, settings);\n\t\tthis.batchHelper = new BatchHelper();\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the base URL for batching requests sent from the panel.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tbaseUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL for fetching the count of requested to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tcountUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL from where the to-do cards should be fetched.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tdataUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL of the target application associated with the to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\ttargetAppUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the minimum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tminCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 304, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies the maximum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tmaxCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 583, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies whether the panel should batch requests.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tuseBatch: { type: \"boolean\", group: \"Misc\", defaultValue: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\tstatic fullRelativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"long\",\n\t\trelative: true,\n\t\trelativeStyle: \"wide\"\n\t});\n\n\tstatic relativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"medium\",\n\t\trelative: true,\n\t\trelativeStyle: \"short\"\n\t});\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//Initialise ToDos Model\n\t\tthis._oData = {\n\t\t\tlength: 0,\n\t\t\tisLoaded: false,\n\t\t\thasError: false,\n\t\t\tcardWidth: \"20rem\",\n\t\t\tgetSupported: false,\n\t\t\tisExpandedOnce: false,\n\t\t\tisCountCalledOnce: false,\n\t\t\tillustrationType: \"sapIllus-NoTasks\",\n\t\t\trefreshInfo: this._toRelativeDateTime(new Date()),\n\t\t\tfullRefreshInfo: this._toFullRelativeDateTime(new Date()),\n\t\t\thorizontalCardCount: Constants.PLACEHOLDER_ITEMS_COUNT,\n\t\t\tillustrationTitle: this._i18nBundle.getText(\"noToDoTitle\"),\n\t\t\tillustrationDescription: this._i18nBundle.getText(\"noToDoDesc\"),\n\t\t\tisPhone: Device.resize.width < Constants.MOBILE_DEVICE_MAX_WIDTH || Device.system.phone,\n\t\t\ttiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" }),\n\t\t\tdisplayTiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" })\n\t\t};\n\t\tthis._controlModel = new JSONModel(this._oData);\n\n\t\t//Initialize Request Queue\n\t\tthis.requests = [];\n\n\t\t//Add Wrapper Container to Panel\n\t\tthis._toDoWrapper = new VBox(`${this.getId()}-toDosWrapper`, {\n\t\t\trenderType: \"Bare\",\n\t\t\titems: [this._generateCardContainer(), this._generateMobileCardContainer(), this._generateErrorMessage()]\n\t\t});\n\t\tthis._toDoWrapper.setModel(this._controlModel);\n\t\tthis._addContent(this._toDoWrapper);\n\n\t\t//Setup Common Menu Items\n\t\tconst menuItem = new MenuItem(`${this.getId()}-refresh`, {\n\t\t\ttitle: this._i18nBundle.getText(\"refresh\"),\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis.addAggregation(\"menuItems\", menuItem);\n\t\taddFESRId(menuItem, \"todosRefresh\");\n\n\t\tthis._accRefreshLabel = new InvisibleText(`${this.getId()}-refreshAccText`, {\n\t\t\ttext: this._toFullRelativeDateTime(new Date())\n\t\t});\n\t\tthis.addDependent(this._accRefreshLabel);\n\t\tthis._refreshBtn = new Button(`${this.getId()}-refreshBtn`, {\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\ttext: this._toRelativeDateTime(new Date()),\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis._refreshBtn.addAriaLabelledBy(this._accRefreshLabel);\n\t\taddFESRId(this._refreshBtn, \"manualTodoRefresh\");\n\t\tthis.addAggregation(\"actionButtons\", this._refreshBtn);\n\n\t\t//Configure Full Screen and Expand Event handlers\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t\tthis.attachEvent(\"onExpand\", async () => {\n\t\t\tawait this._beforePanelExpand();\n\t\t});\n\t}\n\n\t/**\n\t * Generates the card container (GridContainer) for displaying cards.\n\t *\n\t * @private\n\t * @returns {GridContainer} The generated card container.\n\t */\n\tprivate _generateCardContainer(): GridContainer {\n\t\t//create container\n\t\tif (!this._cardContainer) {\n\t\t\tthis._cardContainer = new GridContainer(`${this.getId()}-flexContainer`, {\n\t\t\t\tinlineBlockLayout: true,\n\t\t\t\tsnapToRow: true,\n\t\t\t\tvisible: \"{= !${/isPhone} && !${/hasError} && (!${/isLoaded} || ${/length} > 0) }\",\n\t\t\t\tlayout: new GridContainerSettings(`${this.getId()}-layout`, {\n\t\t\t\t\tcolumns: \"{/horizontalCardCount}\",\n\t\t\t\t\tcolumnSize: \"{/cardWidth}\",\n\t\t\t\t\tgap: \"1rem\"\n\t\t\t\t})\n\t\t\t}).addStyleClass(\"sapCuxToDoCardsContainer\");\n\t\t}\n\n\t\treturn this._cardContainer;\n\t}\n\n\t/**\n\t * Generates the mobile card container (HeaderContainer) for displaying cards on mobile devices.\n\t *\n\t * @private\n\t * @returns {HeaderContainer} The generated mobile card container.\n\t */\n\tprivate _generateMobileCardContainer(): HeaderContainer {\n\t\t// Create a HeaderContainer for mobile devices\n\t\tif (!this._mobileCardContainer) {\n\t\t\tthis._mobileCardContainer = new HeaderContainer(`${this.getId()}-headerContainer`, {\n\t\t\t\tvisible: \"{/isPhone}\",\n\t\t\t\tscrollStep: 0,\n\t\t\t\tgridLayout: true,\n\t\t\t\tscrollTime: 1000,\n\t\t\t\tshowDividers: false,\n\t\t\t\tsnapToRow: true\n\t\t\t});\n\n\t\t\tthis._mobileCardContainer.addStyleClass(\"sapMHeaderContainerAlign sapMHeaderContainerToDoAlign toDoCardHeight\");\n\t\t}\n\n\t\treturn this._mobileCardContainer;\n\t}\n\n\t/**\n\t * Generates the error message card for displaying error messages.\n\t *\n\t * @private\n\t * @returns {Card} The generated error message card.\n\t */\n\tprivate _generateErrorMessage(): Card {\n\t\tif (!this._errorCard) {\n\t\t\tthis._errorMessage = new IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Base,\n\t\t\t\ttitle: \"{/illustrationTitle}\",\n\t\t\t\tdescription: \"{/illustrationDescription}\",\n\t\t\t\tillustrationType: \"{/illustrationType}\"\n\t\t\t});\n\t\t\tthis._errorCard = new Card(`${this.getId()}-errorCard`, {\n\t\t\t\tcontent: this._errorMessage,\n\t\t\t\tvisible: \"{= ${/tiles/length} === 0 || ${/hasError} === true }\"\n\t\t\t});\n\t\t}\n\n\t\treturn this._errorCard;\n\t}\n\n\t/**\n\t * Handler for the Refresh button for each panel.\n\t * Reloads the selected panel\n\t *\n\t * @async\n\t * @private\n\t */\n\tprivate _onPressRefresh(): void {\n\t\tvoid ((this.getParent() as ToDosContainer)?._getSelectedPanel() as ToDoPanel)?._loadCards(true);\n\t}\n\n\t/**\n\t * Loads the To-Do cards for the panel.\n\t *\n\t * @private\n\t * @param {boolean} forceRefresh - force refresh cards\n\t * @returns {Promise<void>} A promise that resolves when the cards are loaded.\n\t */\n\tpublic async _loadCards(forceRefresh?: boolean): Promise<void> {\n\t\tif (this._loadToDos !== undefined && !forceRefresh) {\n\t\t\treturn this._loadToDos;\n\t\t} else {\n\t\t\tthis._bindInnerControls();\n\t\t\tthis._loadToDos = new Promise((resolve) => {\n\t\t\t\tconst selectedKey = (this.getParent() as BaseContainer)?._getSelectedPanel()?.getProperty(\"key\") as string;\n\t\t\t\tconst requests: Request[] = [];\n\n\t\t\t\tthis._oData.isLoaded = false;\n\t\t\t\tthis._oData.isCountCalledOnce = false;\n\t\t\t\tthis._oData.isExpandedOnce = this._isElementExpanded();\n\t\t\t\tthis._setCount();\n\n\t\t\t\tif (this._getSupported()) {\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t// Load Placeholder Cards\n\t\t\t\t\t\tthis._generatePlaceHolderTiles();\n\n\t\t\t\t\t\t// Add Initial Batch Requests\n\t\t\t\t\t\trequests.push(\n\t\t\t\t\t\t\tthis._generateRequestObject({ type: selectedKey, onlyCount: selectedKey !== this.getProperty(\"key\") })\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.requests = this.requests.concat(requests);\n\t\t\t\t\t\t/**\n\t\t\t\t\t\t * removing the class first if the wrapper already has class\n\t\t\t\t\t\t * This is temporary code (to be removed later), this will be handled by GenericTile.\n\t\t\t\t\t\t */\n\t\t\t\t\t\tconst toDosWrapper = this._getContent()?.[0];\n\t\t\t\t\t\tif (toDosWrapper && toDosWrapper.hasStyleClass(\"sapUiGridTaskLayout\")) {\n\t\t\t\t\t\t\ttoDosWrapper.removeStyleClass(\"sapUiGridTaskLayout\");\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//Submit Batch Requests\n\t\t\t\t\t\tthis._submitBatch()\n\t\t\t\t\t\t\t.then(async () => {\n\t\t\t\t\t\t\t\tthis._oData.isLoaded = selectedKey === this.getProperty(\"key\");\n\t\t\t\t\t\t\t\tthis.fireEvent(\"loaded\");\n\n\t\t\t\t\t\t\t\tthis._oData.isCountCalledOnce = true;\n\t\t\t\t\t\t\t\tthis._setCount(this._oData.length as string);\n\n\t\t\t\t\t\t\t\tthis._setSectionRefreshInterval();\n\t\t\t\t\t\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.lastRefreshedTime = new Date();\n\t\t\t\t\t\t\t\tthis._updateRefreshInformation();\n\n\t\t\t\t\t\t\t\tawait this._switchTabIfRequired();\n\t\t\t\t\t\t\t\tthis._updateHeaderIfExclusive();\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.catch((error: unknown) => {\n\t\t\t\t\t\t\t\tLog.error(error instanceof Error ? error.message : \"\");\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\t\t\tthis._controlModel.refresh();\n\t\t\t\t\t\t\t\tthis._adjustLayout();\n\t\t\t\t\t\t\t\t/**\n\t\t\t\t\t\t\t\t * This class is initially added for Desktop and Tablet. If not added (In case of Mobile) add it.\n\t\t\t\t\t\t\t\t * This is temporary code (to be removed later), this will be handled by GenericTile.\n\t\t\t\t\t\t\t\t * */\n\t\t\t\t\t\t\t\tif (toDosWrapper && !toDosWrapper.hasStyleClass(\"sapUiGridTaskLayout\")) {\n\t\t\t\t\t\t\t\t\ttoDosWrapper.addStyleClass(\"sapUiGridTaskLayout\");\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis._handleError(`User not authorized to access: + ${this.getTargetAppUrl()}`);\n\n\t\t\t\t\t// Remove Item from IconTabBar\n\t\t\t\t\t(this.getParent() as ToDosContainer)?.removeContent(this);\n\n\t\t\t\t\t//resolve the promise\n\t\t\t\t\tresolve();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn this._loadToDos;\n\t}\n\n\t/**\n\t * Update Container Header if the panel is exclusive\n\t *\n\t * @private\n\t */\n\tprivate _updateHeaderIfExclusive() {\n\t\tif (this._isExclusivePanel()) {\n\t\t\t(this.getParent() as ToDosContainer)._setTitle(`${this._i18nBundle.getText(\"toDosTitle\")} (${String(this._oData.length)})`);\n\t\t}\n\t}\n\n\t/**\n\t * Creates a one-time binding of inner controls for the ToDoPanel.\n\t * @private\n\t */\n\tprivate _bindInnerControls(): void {\n\t\tif (!this._innerControlsBound) {\n\t\t\t//bind card container\n\t\t\tthis._cardContainer.bindAggregation(\"items\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\t//bind mobile card container\n\t\t\tthis._mobileCardContainer.bindAggregation(\"content\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\tthis._innerControlsBound = true;\n\t\t}\n\t}\n\n\t/**\n\t * Generates the card template for the Current Panel.\n\t *\n\t * @public\n\t * @param {string} id The ID for the template.\n\t * @param {object} context The context for the template.\n\t * @returns {object} The generated card template.\n\t */\n\tpublic generateCardTemplate(id: string, context: Context): Control {\n\t\treturn new GenericTile(`${id}-tile`, {\n\t\t\tmode: \"ActionMode\",\n\t\t\tframeType: \"TwoByOne\",\n\t\t\tpressEnabled: true,\n\t\t\theader: context.getProperty(\"title\") as string,\n\t\t\twidth: context.getProperty(\"/cardWidth\") as string,\n\t\t\tstate: context.getProperty(\"loadState\") as LoadState,\n\t\t\ttileContent: [\n\t\t\t\tnew TileContent(`${id}-tileContent`, {\n\t\t\t\t\tpriority: context.getProperty(\"priority\") as Priority,\n\t\t\t\t\tpriorityText: this._toPriorityText(context.getProperty(\"priority\") as Priority),\n\t\t\t\t\tfooter: context.getProperty(\"footerText\") as string,\n\t\t\t\t\tcontent: new Text(`${id}-situationContent`, {\n\t\t\t\t\t\ttext: context.getProperty(\"message\") as string\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\t}\n\n\t/**\n\t * Convert a priority string to a corresponding priority text.\n\t *\n\t * @private\n\t * @param {Priority} priority - The priority string.\n\t * @returns {string} The corresponding priority text.\n\t */\n\tpublic _toPriorityText(priority: Priority): string {\n\t\tlet key;\n\t\tif (priority === Priority.VeryHigh) {\n\t\t\tkey = \"veryHighPriority\";\n\t\t} else if (priority === Priority.High) {\n\t\t\tkey = \"highPriority\";\n\t\t} else if (priority === Priority.Medium) {\n\t\t\tkey = \"mediumPriority\";\n\t\t} else if (priority === Priority.Low) {\n\t\t\tkey = \"lowPriority\";\n\t\t} else {\n\t\t\tkey = \"nonePriority\";\n\t\t}\n\n\t\treturn this._i18nBundle.getText(key) as string;\n\t}\n\n\t/**\n\t * Generates placeholder tiles for the panel.\n\t *\n\t * @private\n\t */\n\tprivate _generatePlaceHolderTiles(): void {\n\t\tthis._cardCount = this._getVisibleCardCount({ isPlaceholder: true });\n\t\tthis._oData.displayTiles = this._oData.tiles = new Array(this._cardCount).fill({ loadState: \"Loading\" });\n\t\tthis._oData.isLoaded = this._oData.hasError = false;\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Calculates the number of visible cards that can fit within the available space of the To-Dos panel.\n\t *\n\t * @private\n\t * @param {CalculationProperties} [calculationProperties] - Optional properties to assist in the calculation.\n\t * @returns {number} - The number of visible cards.\n\t */\n\tprivate _getVisibleCardCount(calculationProperties?: CalculationProperties): number {\n\t\tconst layout = (this.getParent() as ToDosContainer)?._getLayout();\n\t\tlet isElementExpanded = false;\n\t\tlet targetDomRef = this._toDoWrapper?.getDomRef();\n\n\t\tif (layout) {\n\t\t\tisElementExpanded = this._isElementExpanded();\n\t\t\tconst isHeaderVisible = layout.getProperty(\"showHeader\") as boolean;\n\t\t\tconst containerDomRef = (isElementExpanded ? layout._getFullScreenContainer() : layout).getDomRef();\n\t\t\tconst sectionNodeIndex = isHeaderVisible && !isElementExpanded ? 1 : 0;\n\t\t\ttargetDomRef = containerDomRef?.childNodes[sectionNodeIndex] as Element;\n\t\t}\n\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet cardCount = isMobileDevice ? Constants.TODO_SECTION_LIMIT : 1;\n\n\t\tif (targetDomRef) {\n\t\t\t// @ts-expect-error Calculate Horizontal Card Count\n\t\t\tcardCount = this.getHorizontalCardCount(targetDomRef, calculationProperties);\n\n\t\t\tif (isElementExpanded) {\n\t\t\t\t// @ts-expect-error Calculate Vertical Card Count\n\t\t\t\tcardCount *= this.getVerticalCardCount(targetDomRef, calculationProperties);\n\t\t\t}\n\n\t\t\t//Restrict cards to the maximum limit\n\t\t\tcardCount = cardCount > Constants.TODO_CARDS_LIMIT ? Constants.TODO_CARDS_LIMIT : cardCount;\n\t\t}\n\n\t\treturn cardCount;\n\t}\n\n\t/**\n\t * Checks if the current element is expanded to full screen.\n\t *\n\t * @private\n\t * @returns {boolean} - True if the element is expanded, otherwise false.\n\t */\n\tprivate _isElementExpanded(): boolean {\n\t\tconst toDosContainer = this.getParent() as ToDosContainer;\n\t\tconst layout = toDosContainer._getLayout();\n\t\treturn layout?._getCurrentExpandedElementName() === toDosContainer.getProperty(\"fullScreenName\");\n\t}\n\n\t/**\n\t * Calculates the number of horizontal cards that can fit within the available width of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the horizontal card count for.\n\t * @returns {number} - The number of horizontal cards that can fit within the available width.\n\t */\n\tprotected getHorizontalCardCount(domRef: Element): number {\n\t\tconst domProperties = fetchElementProperties(domRef, [\"width\", \"padding-left\", \"padding-right\", \"margin-left\", \"margin-right\"]);\n\t\tconst availableWidth = Object.values(domProperties)\n\t\t\t.slice(1)\n\t\t\t.reduce((width, propertyValue) => width - propertyValue, domProperties[\"width\"]);\n\t\tconst actualCardCount = this._oData.length as number;\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet horizontalCardCount;\n\t\tconst minWidth = this.getProperty(\"minCardWidth\") as number;\n\t\tconst maxWidth = this.getProperty(\"maxCardWidth\") as number;\n\t\tconst cardLayoutConfig = {\n\t\t\tcontainerWidth: availableWidth,\n\t\t\ttotalCards: actualCardCount,\n\t\t\tminWidth: minWidth,\n\t\t\tmaxWidth: maxWidth,\n\t\t\tgap: Constants.GAP\n\t\t};\n\t\tconst cardWidth = calculateCardWidth(cardLayoutConfig);\n\t\tif (isMobileDevice) {\n\t\t\thorizontalCardCount = Constants.TODO_SECTION_LIMIT;\n\t\t} else {\n\t\t\thorizontalCardCount = Math.max(Math.floor(availableWidth / cardWidth), 1);\n\t\t}\n\n\t\t// Calculate Horizontal Card Count\n\t\tthis._controlModel.setProperty(\"/cardWidth\", `${cardWidth / 16}rem`);\n\t\tthis._controlModel.setProperty(\"/horizontalCardCount\", horizontalCardCount);\n\n\t\treturn horizontalCardCount;\n\t}\n\n\t/**\n\t * Calculates the number of vertical cards that can fit within the available height of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the vertical card count for.\n\t * @returns {number} - The number of vertical cards that can fit within the available height.\n\t */\n\tprotected getVerticalCardCount(domRef: Element): number {\n\t\tconst sectionDomProperties = fetchElementProperties(domRef, [\"padding-top\"]);\n\t\tconst parentDomProperties = fetchElementProperties(domRef.parentElement as Element, [\"height\"]);\n\t\tconst titleHeight = this.calculateTitleHeight();\n\t\tconst availableHeight = parentDomProperties.height - sectionDomProperties[\"padding-top\"] * 2 - titleHeight;\n\t\tconst margin = 14;\n\t\tconst cardHeight = Constants.DEFAULT_CARD_HEIGHT + margin;\n\t\tconst verticalCardCount = Math.max(Math.floor(availableHeight / cardHeight), 2); //minimum of 2 rows should be displayed\n\n\t\treturn verticalCardCount;\n\t}\n\n\t/**\n\t * Calculates the combined height of the title and tab header for the To-Dos panel.\n\t *\n\t * @private\n\t * @returns {number} - The combined height of the title and tab header.\n\t */\n\tprotected calculateTitleHeight(): number {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst containerHeaderRef = UI5Element.getElementById(`${container.getId()}-header`)?.getDomRef();\n\t\tconst iconTabBarHeaderRef = UI5Element.getElementById(`${container._getInnerControl().getId()}--header`)?.getDomRef();\n\t\tconst defaultHeight = Constants.DEFAULT_TITLE_HEIGHT + Constants.DEFAULT_TAB_HEADER_HEIGHT;\n\t\tlet titleHeight = 0;\n\n\t\tif (containerHeaderRef && iconTabBarHeaderRef) {\n\t\t\ttitleHeight = containerHeaderRef.clientHeight + iconTabBarHeaderRef.clientHeight;\n\t\t}\n\n\t\treturn Math.max(titleHeight, defaultHeight);\n\t}\n\n\t/**\n\t * Generates a request object for batch requests.\n\t *\n\t * @private\n\t * @param {RequestOptions} options - Additional properties for generating the request object.\n\t * @param {boolean} [options.onlyCount] - Whether to include only the count in the request.\n\t * @returns {Object} The generated request object.\n\t */\n\tprivate _generateRequestObject(options: RequestOptions): Request {\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tconst countUrl = this.getCountUrl();\n\t\tconst urls = this.generateRequestUrls?.(cardCount);\n\n\t\tif (countUrl && options?.onlyCount) {\n\t\t\turls.splice(1);\n\t\t}\n\n\t\treturn {\n\t\t\tbaseURL: this.getBaseUrl(),\n\t\t\trequestURLs: urls,\n\t\t\tsuccess: async (args: unknown[]): Promise<void> => {\n\t\t\t\t//data process extension for panels\n\t\t\t\tawait this.onDataReceived(countUrl ? args.splice(1) : args, options);\n\n\t\t\t\t//set card count and handle empty cards\n\t\t\t\tthis._oData.length = countUrl ? Number(args[0]) : (this._oData.tiles as object[]).length;\n\t\t\t\tthis._handleEmptyCards();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Generates request URLs for fetching data based on the specified card count.\n\t *\n\t * @public\n\t * @param {number} cardCount - The number of cards to retrieve.\n\t * @returns {string[]} An array of request URLs.\n\t */\n\tpublic generateRequestUrls(cardCount: number): string[] {\n\t\tconst urls = [];\n\t\tconst countUrl = this.getCountUrl();\n\n\t\tif (countUrl) {\n\t\t\turls.push(countUrl);\n\t\t}\n\n\t\tlet dataUrl = this.getDataUrl();\n\t\tif (this.getProperty(\"useBatch\")) {\n\t\t\tconst queryString = `$skip=0&$top=${cardCount}`;\n\t\t\tdataUrl = dataUrl.includes(\"?\") ? `${dataUrl}&${queryString}` : `${dataUrl}?${queryString}`;\n\t\t}\n\t\turls.push(dataUrl);\n\n\t\treturn urls;\n\t}\n\n\t/**\n\t * A promise that resolves when the data has been processed.\n\t * This method can be overridden to perform additional data processing operations.\n\t *\n\t * @public\n\t * @async\n\t * @param {unknown[]} results - Data retrieved from the batch call.\n\t * @param {RequestOptions} options - Additional options for parsing the data.\n\t * Structure may vary based on the backend service.\n\t */\n\tpublic async onDataReceived(results: unknown[] = [], options?: RequestOptions): Promise<void> {\n\t\tif (!options || (options && !options.onlyCount)) {\n\t\t\tthis._oData.displayTiles = this._oData.tiles = results[0] || [];\n\t\t}\n\n\t\tawait Promise.resolve();\n\t}\n\n\t/**\n\t * Handles the scenario when there are no cards to display.\n\t * Updates the illustration and description based on the selected panel and card count.\n\t *\n\t * @private\n\t */\n\tprivate _handleEmptyCards() {\n\t\tif (Number(this._oData.length) === 0) {\n\t\t\tthis._oData.illustrationType = \"sapIllus-EmptyPlanningCalendar\";\n\t\t\tthis._oData.illustrationTitle = this._isExclusivePanel() ? this._i18nBundle.getText(\"noToDoTitle\") : this.getNoDataText();\n\t\t\tthis._oData.illustrationDescription = this._isExclusivePanel()\n\t\t\t\t? this._i18nBundle.getText(\"noToDoDesc\")\n\t\t\t\t: this._i18nBundle.getText(\"emptyToDoDesc\");\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the panel is exclusive based on support and the number of panels.\n\t *\n\t * @private\n\t * @returns {boolean} True if the panel is exclusive, otherwise false.\n\t */\n\tprivate _isExclusivePanel(): boolean {\n\t\tconst allPanels = (this.getParent() as ToDosContainer).getContent() as ToDoPanel[];\n\t\tconst supportedPanels = allPanels.filter((panel) => panel._getSupported());\n\n\t\treturn supportedPanels.length === 1 || (allPanels.length === 1 && this._getSupported());\n\t}\n\n\t/**\n\t * Sets the interval for refreshing the section.\n\t *\n\t * @private\n\t */\n\tprivate _setSectionRefreshInterval(): void {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t\tthis._oData.refreshFn = setInterval(() => {\n\t\t\tthis._oData.lastRefreshedTime = this._oData.lastRefreshedTime || new Date();\n\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._updateRefreshInformation();\n\t\t}, Constants.TODOS_REFRESH_INTERVAL);\n\t}\n\n\t/**\n\t * Updates the refresh information and adjusts the layout.\n\t *\n\t * @private\n\t */\n\tpublic _updateRefreshInformation(): void {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tif (container.getProperty(\"selectedKey\") === this.getProperty(\"key\")) {\n\t\t\tthis._refreshBtn.setProperty(\"text\", this._oData.refreshInfo, true);\n\t\t\tthis._accRefreshLabel.setProperty(\"text\", this._oData.fullRefreshInfo, true);\n\t\t\tthis._refreshBtn.setAggregation(\"tooltip\", this._oData.fullRefreshInfo as ManagedObject, true);\n\t\t\tcontainer._updateContainerHeader(this);\n\t\t}\n\n\t\tthis._adjustLayout();\n\t}\n\n\t/**\n\t * Adjusts the layout based on card count and device type.\n\t *\n\t * @private\n\t */\n\tpublic _adjustLayout() {\n\t\t// Update visible cards\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tif ((this._oData.tiles as object[]).length && !this._oData.hasError) {\n\t\t\tconst displayCards = (this._oData.tiles as object[]).slice(0, cardCount);\n\t\t\tthis._controlModel.setProperty(\"/displayTiles\", displayCards);\n\t\t}\n\n\t\t// Update if device type is phone\n\t\tthis._controlModel.setProperty(\"/isPhone\", this.getDeviceType() === DeviceType.Mobile);\n\n\t\t// Show/Hide Full Screen Button if available\n\t\t(this.getParent() as ToDosContainer)?.toggleFullScreenElements(\n\t\t\tthis,\n\t\t\tthis._isElementExpanded() || Number(this._oData.length) > cardCount\n\t\t);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date.\n\t *\n\t * @private\n\t * @param {Date} date Date object or Date String\n\t * @returns {string} Formatted Date\n\t */\n\tpublic _toRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.relativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date string with full units (e.g., \"2 minutes ago\").\n\t * Intended for accessibility use such as screen readers.\n\t *\n\t * @private\n\t * @param {Date} date Date object or date string\n\t * @returns {string} Fully formatted relative date string\n\t */\n\tprivate _toFullRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.fullRelativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Get the text for the \"No Data\" message.\n\t *\n\t * @public\n\t * @returns {string} The text for the \"No Data\" message.\n\t */\n\tpublic getNoDataText(): string {\n\t\treturn this._i18nBundle.getText(\"noData\") as string;\n\t}\n\n\t/**\n\t * Parses the response object and returns the appropriate value.\n\t *\n\t * @private\n\t * @param {Object} response - The response object.\n\t * @param {Object} [response.d] - The 'd' property of the response object.\n\t * @param {Array} [response.d.results] - The results array.\n\t * @param {string|number} [response.d] - The 'd' property of the response object which may contain a numeric value.\n\t * @param {string|number} [response] - The response object which may contain a numeric value.\n\t * @param {string|number} [response.value] - The 'value' property of the response object which may contain a numeric value.\n\t * @returns {Response} - The parsed value extracted from the response object.\n\t */\n\tprivate _parseResponse(response: Response): Response {\n\t\tconst { d = {}, value } = response || {};\n\t\tconst results = d?.results;\n\t\tconst numericD = !isNaN(+d) && +d;\n\t\tconst numericResponse = !isNaN(+response) && +response;\n\n\t\treturn (results || numericD || numericResponse || value || response || 0) as Response;\n\t}\n\n\t/**\n\t * Submits a batch request for multiple URLs and processes the responses.\n\t *\n\t * @private\n\t * @returns {Promise} A Promise that resolves when all batch requests are completed.\n\t */\n\tprotected _submitBatch(): Promise<unknown[]> {\n\t\treturn Promise.all(\n\t\t\tthis.requests.map(async (request: Request) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst useBatch = this.getProperty(\"useBatch\") as boolean;\n\t\t\t\t\tlet responses = useBatch\n\t\t\t\t\t\t? await this.batchHelper.createMultipartRequest(request.baseURL, request.requestURLs)\n\t\t\t\t\t\t: await HttpHelper.GetMultipleRequests(request.requestURLs);\n\n\t\t\t\t\tif (responses.length) {\n\t\t\t\t\t\tconst processedResponses = responses.map((response: string | Response) => {\n\t\t\t\t\t\t\tif (typeof response === \"string\") {\n\t\t\t\t\t\t\t\tresponse = JSON.parse(response) as Response;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn this._parseResponse(response);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\t// Call success callback, if any\n\t\t\t\t\t\tif (request.success && typeof request.success === \"function\") {\n\t\t\t\t\t\t\tawait request.success(processedResponses);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn processedResponses;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(\"Invalid response\");\n\t\t\t\t\t}\n\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\tthis._handleError(error);\n\t\t\t\t} finally {\n\t\t\t\t\tthis._clearRequests();\n\t\t\t\t}\n\t\t\t})\n\t\t);\n\t}\n\n\t/**\n\t * Handles errors by updating the data and logging the error.\n\t *\n\t * @private\n\t * @param {Error} error - The error object to handle.\n\t */\n\tprivate _handleError(error: unknown) {\n\t\tthis._oData.displayTiles = this._oData.tiles = [];\n\t\tthis._oData.getSupported = this._oData.isLoaded = this._oData.hasError = true;\n\t\tthis._oData.illustrationType = \"sapIllus-UnableToLoad\";\n\t\tthis._oData.illustrationTitle = this._oData.illustrationDescription = \"\";\n\n\t\tLog.error(error as string);\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Clears the list of requests.\n\t *\n\t * @private\n\t */\n\tprotected _clearRequests() {\n\t\tthis.requests = [];\n\t}\n\n\t/**\n\t * Checks if the panel is loaded.\n\t *\n\t * @private\n\t * @returns {boolean} true if the panel is loaded, false otherwise.\n\t */\n\tpublic _isLoaded(): boolean {\n\t\tconst parentContainer = this.getParent() as ToDosContainer;\n\t\tconst isContainerExpanded = parentContainer?._getLayout()?.getProperty(\"expanded\") as boolean;\n\n\t\tconst { isLoaded, isExpandedOnce } = this._oData;\n\n\t\tif (!isContainerExpanded) {\n\t\t\treturn isLoaded as boolean;\n\t\t}\n\n\t\treturn (isExpandedOnce && isLoaded) as boolean;\n\t}\n\n\t/**\n\t * Set the loaded status of the ToDoPanel.\n\t *\n\t * @private\n\t * @param {boolean} isLoaded - The new loaded status to set for the ToDoPanel.\n\t */\n\tpublic _setLoaded(isLoaded: boolean): void {\n\t\tthis._oData.isLoaded = isLoaded;\n\t}\n\n\t/**\n\t * Gets the supported status of the panel.\n\t *\n\t * @private\n\t * @returns {boolean} The supported status of the panel.\n\t */\n\tpublic _getSupported(): boolean {\n\t\treturn this._oData.getSupported as boolean;\n\t}\n\n\t/**\n\t * Sets the supported status of the panel.\n\t *\n\t * @private\n\t * @param {boolean} value - The value to set for supported status.\n\t */\n\tpublic _setSupported(isSupported: boolean): void {\n\t\tthis._oData.getSupported = isSupported;\n\t}\n\n\t/**\n\t * Extracts the app intent from the target app URL.\n\t *\n\t * @private\n\t * @returns {Intent | null} The app intent object with target and parameters, or null if not found.\n\t */\n\tpublic _getAppIntent(): Intent | null {\n\t\tconst pattern = /#([^?-]+)-([^?#]+)(?:\\?([^#]+))?(?:#.*)?/;\n\t\tconst match = this.getTargetAppUrl().match(pattern);\n\n\t\tif (match) {\n\t\t\tconst target = {\n\t\t\t\tsemanticObject: match[1],\n\t\t\t\taction: match[2]\n\t\t\t};\n\t\t\tconst params = {} as Record<string, string>;\n\n\t\t\tif (match[3]) {\n\t\t\t\tconst paramsArray = match[3].split(\"&\");\n\t\t\t\tfor (const param of paramsArray) {\n\t\t\t\t\tconst [key, value] = param.split(\"=\");\n\t\t\t\t\tparams[key] = value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ttarget,\n\t\t\t\tparams\n\t\t\t};\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Switch to available tab if current panel has empty cards or has error\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _switchTabIfRequired() {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst selectedKey = container?.getProperty(\"selectedKey\") as string;\n\n\t\tif (selectedKey === this.getProperty(\"key\") && (this._oData.length === 0 || this._oData.hasError)) {\n\t\t\tlet nextAvailablePanel;\n\t\t\tconst panels = container?.getAggregation(\"content\") as ToDoPanel[];\n\n\t\t\tfor (const panel of panels) {\n\t\t\t\tif (panel !== this) {\n\t\t\t\t\t//ensure that panel is loaded first\n\t\t\t\t\tawait panel._loadCards();\n\n\t\t\t\t\tif (panel._getSupported() && !panel._isLoaded() && panel._getCardCount() > 0) {\n\t\t\t\t\t\tnextAvailablePanel = panel;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (nextAvailablePanel) {\n\t\t\t\tcontainer?.setProperty(\"selectedKey\", nextAvailablePanel.getProperty(\"key\"));\n\t\t\t\tToDosContainer.cardCount = this._cardCount;\n\t\t\t\tawait nextAvailablePanel._loadCards(true);\n\t\t\t\tToDosContainer.cardCount = undefined;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Handles the press event to view all items.\n\t *\n\t * @private\n\t */\n\tpublic _onPressViewAll() {\n\t\tURLHelper.redirect(this.getTargetAppUrl(), false);\n\t}\n\n\t/**\n\t * Retrieves the count of cards in the panel.\n\t *\n\t * @private\n\t * @returns {number} The number of cards.\n\t */\n\tpublic _getCardCount(): number {\n\t\treturn Number(this._oData.length);\n\t}\n\n\t/**\n\t * Handles actions to be performed before the To-Dos panel is expanded.\n\t * If the panel has not been expanded before in full screen, the cards will be loaded once.\n\t *\n\t * @private\n\t */\n\tprivate async _beforePanelExpand() {\n\t\tif (!this._oData.isExpandedOnce) {\n\t\t\tthis._oData.isExpandedOnce = true;\n\t\t\tawait this._loadCards(true);\n\t\t}\n\t}\n\n\t/**\n\t * Exit lifecycle method.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic exit() {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ToDoPanel.js","names":["sap","ui","define","Log","Card","GridContainer","GridContainerSettings","Button","GenericTile","HeaderContainer","IllustratedMessage","IllustratedMessageSize","Text","TileContent","VBox","sap_m_library","Device","UI5Element","InvisibleText","DateFormat","JSONModel","__BasePanel","__MenuItem","__ToDosContainer","__BatchHelper","___utils_Device","___utils_FESRUtil","__HttpHelper","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","Priority","_finallyRethrows","finalizer","bind","URLHelper","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","BasePanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","MenuItem","ToDosContainer","BatchHelper","calculateCardWidth","DeviceType","fetchElementProperties","addFESRId","HttpHelper","Constants","SITUATION_ICON","PLACEHOLDER_ITEMS_COUNT","TODO_CARDS_LIMIT","TODO_SECTION_LIMIT","TODOS_REFRESH_INTERVAL","MOBILE_DEVICE_MAX_WIDTH","DEFAULT_TITLE_HEIGHT","DEFAULT_CARD_HEIGHT","DEFAULT_TAB_HEADER_HEIGHT","GAP","ToDoPanel","extend","metadata","library","properties","baseUrl","type","group","defaultValue","visibility","countUrl","dataUrl","targetAppUrl","minCardWidth","maxCardWidth","useBatch","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","batchHelper","init","_init","BasePanel.prototype.init.call","_oData","isLoaded","hasError","cardWidth","getSupported","isExpandedOnce","isCountCalledOnce","illustrationType","refreshInfo","_toRelativeDateTime","Date","fullRefreshInfo","_toFullRelativeDateTime","horizontalCardCount","illustrationTitle","_i18nBundle","getText","illustrationDescription","isPhone","resize","width","system","phone","tiles","Array","fill","loadState","displayTiles","_controlModel","requests","_toDoWrapper","getId","renderType","items","_generateCardContainer","_generateMobileCardContainer","_generateErrorMessage","setModel","_addContent","menuItem","title","icon","press","_onPressRefresh","addAggregation","_accRefreshLabel","text","addDependent","_refreshBtn","addAriaLabelledBy","setProperty","attachEvent","Promise","resolve","_beforePanelExpand","_cardContainer","inlineBlockLayout","snapToRow","visible","layout","columns","columnSize","gap","addStyleClass","_mobileCardContainer","scrollStep","gridLayout","scrollTime","showDividers","_errorCard","_errorMessage","illustrationSize","Base","description","content","getParent","_getSelectedPanel","_loadCards","forceRefresh","_this2","_loadToDos","undefined","_bindInnerControls","selectedKey","getProperty","_isElementExpanded","_setCount","_getSupported","setTimeout","_generatePlaceHolderTiles","_generateRequestObject","onlyCount","concat","_submitBatch","fireEvent","_setSectionRefreshInterval","lastRefreshedTime","_updateRefreshInformation","_switchTabIfRequired","_updateHeaderIfExclusive","catch","error","Error","message","finally","refresh","_adjustLayout","_handleError","getTargetAppUrl","removeContent","_isExclusivePanel","_setTitle","String","_innerControlsBound","bindAggregation","path","factory","context","generateCardTemplate","bindProperty","_generateCardTemplate","mode","frameType","pressEnabled","header","tileContent","priority","priorityText","_toPriorityText","footer","key","VeryHigh","High","Medium","Low","_cardCount","_getVisibleCardCount","isPlaceholder","calculationProperties","_getLayout","isElementExpanded","targetDomRef","getDomRef","isHeaderVisible","containerDomRef","_getFullScreenContainer","sectionNodeIndex","childNodes","isMobileDevice","cardCount","getHorizontalCardCount","getVerticalCardCount","toDosContainer","_getCurrentExpandedElementName","_getHorizontalCardCount","domRef","domProperties","availableWidth","Object","slice","reduce","propertyValue","actualCardCount","minWidth","maxWidth","cardLayoutConfig","containerWidth","totalCards","Math","max","floor","_getVerticalCardCount","sectionDomProperties","parentDomProperties","parentElement","titleHeight","calculateTitleHeight","availableHeight","height","margin","cardHeight","verticalCardCount","_calculateTitleHeight","container","containerHeaderRef","getElementById","iconTabBarHeaderRef","_getInnerControl","defaultHeight","clientHeight","options","_this3","getCountUrl","urls","generateRequestUrls","splice","baseURL","getBaseUrl","requestURLs","success","args","onDataReceived","Number","_handleEmptyCards","_generateRequestUrls","getDataUrl","queryString","includes","_onDataReceived","results","_this4","getNoDataText","allPanels","getContent","supportedPanels","filter","panel","clearInterval","refreshFn","setInterval","setAggregation","_updateContainerHeader","displayCards","getDeviceType","Mobile","toggleFullScreenElements","date","inputDate","isNaN","relativeDateFormatter","format","fullRelativeDateFormatter","_getNoDataText","_parseResponse","response","d","numericD","numericResponse","_this5","all","map","request","createMultipartRequest","GetMultipleRequests","responses","processedResponses","JSON","parse","_temp","_wasThrown","_result","_clearRequests","_isLoaded","parentContainer","isContainerExpanded","_setLoaded","_setSupported","isSupported","_getAppIntent","pattern","match","semanticObject","action","params","paramsArray","split","param","_this6","_interrupt","_temp5","_temp3","nextAvailablePanel","panels","getAggregation","_temp4","_temp2","_getCardCount","_onPressViewAll","redirect","_this7","_temp6","exit","_exit","getDateTimeInstance","style","relative","relativeStyle"],"sources":["ToDoPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport Card from \"sap/f/Card\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport Text from \"sap/m/Text\";\nimport TileContent from \"sap/m/TileContent\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState, Priority, URLHelper } from \"sap/m/library\";\nimport Device from \"sap/ui/Device\";\nimport ManagedObject from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport InvisibleText from \"sap/ui/core/InvisibleText\";\nimport DateFormat from \"sap/ui/core/format/DateFormat\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport IToDoPanel from \"./IToDoPanel\";\nimport MenuItem from \"./MenuItem\";\nimport { $ToDoPanelSettings } from \"./ToDoPanel\";\nimport ToDosContainer from \"./ToDosContainer\";\nimport BatchHelper from \"./utils/BatchHelper\";\nimport { calculateCardWidth, DeviceType, fetchElementProperties } from \"./utils/Device\";\nimport { addFESRId } from \"./utils/FESRUtil\";\nimport HttpHelper from \"./utils/HttpHelper\";\n\ninterface Request {\n\tbaseURL: string;\n\trequestURLs: string[];\n\tsuccess(args: unknown[]): Promise<void>;\n}\n\nexport interface CalculationProperties {\n\tisPlaceholder?: boolean;\n}\n\nexport interface Intent {\n\ttarget: {\n\t\tsemanticObject: string;\n\t\taction: string;\n\t};\n\tparams: {\n\t\t[key: string]: string;\n\t};\n}\n\nexport interface RequestOptions {\n\ttype: string;\n\tonlyCount?: boolean;\n}\n\nexport interface Response {\n\td?: {\n\t\tresults?: unknown[];\n\t};\n\tresults?: unknown[];\n\tvalue?: unknown[];\n}\n\nconst Constants = {\n\tSITUATION_ICON: \"sap-icon://message-warning\",\n\tPLACEHOLDER_ITEMS_COUNT: 5,\n\tTODO_CARDS_LIMIT: 100,\n\tTODO_SECTION_LIMIT: 6,\n\tTODOS_REFRESH_INTERVAL: 65000,\n\tMOBILE_DEVICE_MAX_WIDTH: 600,\n\tDEFAULT_TITLE_HEIGHT: 33,\n\tDEFAULT_CARD_HEIGHT: 168,\n\tDEFAULT_TAB_HEADER_HEIGHT: 44,\n\tGAP: 16\n};\n\n/**\n *\n * Abstract Panel class for managing and storing To-Do cards.\n *\n * @extends BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @abstract\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.ToDoPanel\n */\nexport default abstract class ToDoPanel extends BasePanel implements IToDoPanel {\n\tprotected _oData!: Record<string, unknown>;\n\tprotected requests!: Request[];\n\tprivate _controlModel!: JSONModel;\n\tprivate _toDoWrapper!: VBox;\n\tprivate _cardContainer!: GridContainer;\n\tprivate _mobileCardContainer!: HeaderContainer;\n\tprivate _errorCard!: Card;\n\tprivate _errorMessage!: IllustratedMessage;\n\tprivate _refreshBtn!: Button;\n\tprivate _loadToDos!: Promise<void> | undefined;\n\tprivate _innerControlsBound!: boolean;\n\tprivate _cardCount!: number;\n\tprivate batchHelper!: BatchHelper;\n\tprivate _accRefreshLabel!: InvisibleText;\n\n\tconstructor(id?: string | $ToDoPanelSettings);\n\tconstructor(id?: string, settings?: $ToDoPanelSettings);\n\t/**\n\t * Constructor for a new To-Dos 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?: $ToDoPanelSettings) {\n\t\tsuper(id, settings);\n\t\tthis.batchHelper = new BatchHelper();\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the base URL for batching requests sent from the panel.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tbaseUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL for fetching the count of requested to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tcountUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL from where the to-do cards should be fetched.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tdataUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL of the target application associated with the to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\ttargetAppUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the minimum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tminCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 304, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies the maximum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tmaxCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 583, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies whether the panel should batch requests.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tuseBatch: { type: \"boolean\", group: \"Misc\", defaultValue: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\tstatic fullRelativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"long\",\n\t\trelative: true,\n\t\trelativeStyle: \"wide\"\n\t});\n\n\tstatic relativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"medium\",\n\t\trelative: true,\n\t\trelativeStyle: \"short\"\n\t});\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//Initialise ToDos Model\n\t\tthis._oData = {\n\t\t\tlength: 0,\n\t\t\tisLoaded: false,\n\t\t\thasError: false,\n\t\t\tcardWidth: \"20rem\",\n\t\t\tgetSupported: false,\n\t\t\tisExpandedOnce: false,\n\t\t\tisCountCalledOnce: false,\n\t\t\tillustrationType: \"sapIllus-NoTasks\",\n\t\t\trefreshInfo: this._toRelativeDateTime(new Date()),\n\t\t\tfullRefreshInfo: this._toFullRelativeDateTime(new Date()),\n\t\t\thorizontalCardCount: Constants.PLACEHOLDER_ITEMS_COUNT,\n\t\t\tillustrationTitle: this._i18nBundle.getText(\"noToDoTitle\"),\n\t\t\tillustrationDescription: this._i18nBundle.getText(\"noToDoDesc\"),\n\t\t\tisPhone: Device.resize.width < Constants.MOBILE_DEVICE_MAX_WIDTH || Device.system.phone,\n\t\t\ttiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" }),\n\t\t\tdisplayTiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" })\n\t\t};\n\t\tthis._controlModel = new JSONModel(this._oData);\n\n\t\t//Initialize Request Queue\n\t\tthis.requests = [];\n\n\t\t//Add Wrapper Container to Panel\n\t\tthis._toDoWrapper = new VBox(`${this.getId()}-toDosWrapper`, {\n\t\t\trenderType: \"Bare\",\n\t\t\titems: [this._generateCardContainer(), this._generateMobileCardContainer(), this._generateErrorMessage()]\n\t\t});\n\t\tthis._toDoWrapper.setModel(this._controlModel);\n\t\tthis._addContent(this._toDoWrapper);\n\n\t\t//Setup Common Menu Items\n\t\tconst menuItem = new MenuItem(`${this.getId()}-refresh`, {\n\t\t\ttitle: this._i18nBundle.getText(\"refresh\"),\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis.addAggregation(\"menuItems\", menuItem);\n\t\taddFESRId(menuItem, \"todosRefresh\");\n\n\t\tthis._accRefreshLabel = new InvisibleText(`${this.getId()}-refreshAccText`, {\n\t\t\ttext: this._toFullRelativeDateTime(new Date())\n\t\t});\n\t\tthis.addDependent(this._accRefreshLabel);\n\t\tthis._refreshBtn = new Button(`${this.getId()}-refreshBtn`, {\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\ttext: this._toRelativeDateTime(new Date()),\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis._refreshBtn.addAriaLabelledBy(this._accRefreshLabel);\n\t\taddFESRId(this._refreshBtn, \"manualTodoRefresh\");\n\t\tthis.addAggregation(\"actionButtons\", this._refreshBtn);\n\n\t\t//Configure Full Screen and Expand Event handlers\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t\tthis.attachEvent(\"onExpand\", async () => {\n\t\t\tawait this._beforePanelExpand();\n\t\t});\n\t}\n\n\t/**\n\t * Generates the card container (GridContainer) for displaying cards.\n\t *\n\t * @private\n\t * @returns {GridContainer} The generated card container.\n\t */\n\tprivate _generateCardContainer(): GridContainer {\n\t\t//create container\n\t\tif (!this._cardContainer) {\n\t\t\tthis._cardContainer = new GridContainer(`${this.getId()}-flexContainer`, {\n\t\t\t\tinlineBlockLayout: true,\n\t\t\t\tsnapToRow: true,\n\t\t\t\tvisible: \"{= !${/isPhone} && !${/hasError} && (!${/isLoaded} || ${/length} > 0) }\",\n\t\t\t\tlayout: new GridContainerSettings(`${this.getId()}-layout`, {\n\t\t\t\t\tcolumns: \"{/horizontalCardCount}\",\n\t\t\t\t\tcolumnSize: \"{/cardWidth}\",\n\t\t\t\t\tgap: \"1rem\"\n\t\t\t\t})\n\t\t\t}).addStyleClass(\"sapCuxToDoCardsContainer\");\n\t\t}\n\n\t\treturn this._cardContainer;\n\t}\n\n\t/**\n\t * Generates the mobile card container (HeaderContainer) for displaying cards on mobile devices.\n\t *\n\t * @private\n\t * @returns {HeaderContainer} The generated mobile card container.\n\t */\n\tprivate _generateMobileCardContainer(): HeaderContainer {\n\t\t// Create a HeaderContainer for mobile devices\n\t\tif (!this._mobileCardContainer) {\n\t\t\tthis._mobileCardContainer = new HeaderContainer(`${this.getId()}-headerContainer`, {\n\t\t\t\tvisible: \"{/isPhone}\",\n\t\t\t\tscrollStep: 0,\n\t\t\t\tgridLayout: true,\n\t\t\t\tscrollTime: 1000,\n\t\t\t\tshowDividers: false,\n\t\t\t\tsnapToRow: true\n\t\t\t}).addStyleClass(\"sapCuxToDoMobileCardsContainer\");\n\t\t}\n\n\t\treturn this._mobileCardContainer;\n\t}\n\n\t/**\n\t * Generates the error message card for displaying error messages.\n\t *\n\t * @private\n\t * @returns {Card} The generated error message card.\n\t */\n\tprivate _generateErrorMessage(): Card {\n\t\tif (!this._errorCard) {\n\t\t\tthis._errorMessage = new IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Base,\n\t\t\t\ttitle: \"{/illustrationTitle}\",\n\t\t\t\tdescription: \"{/illustrationDescription}\",\n\t\t\t\tillustrationType: \"{/illustrationType}\"\n\t\t\t});\n\t\t\tthis._errorCard = new Card(`${this.getId()}-errorCard`, {\n\t\t\t\tcontent: this._errorMessage,\n\t\t\t\tvisible: \"{= ${/tiles/length} === 0 || ${/hasError} === true }\"\n\t\t\t});\n\t\t}\n\n\t\treturn this._errorCard;\n\t}\n\n\t/**\n\t * Handler for the Refresh button for each panel.\n\t * Reloads the selected panel\n\t *\n\t * @async\n\t * @private\n\t */\n\tprivate _onPressRefresh(): void {\n\t\tvoid ((this.getParent() as ToDosContainer)?._getSelectedPanel() as ToDoPanel)?._loadCards(true);\n\t}\n\n\t/**\n\t * Loads the To-Do cards for the panel.\n\t *\n\t * @private\n\t * @param {boolean} forceRefresh - force refresh cards\n\t * @returns {Promise<void>} A promise that resolves when the cards are loaded.\n\t */\n\tpublic async _loadCards(forceRefresh?: boolean): Promise<void> {\n\t\tif (this._loadToDos !== undefined && !forceRefresh) {\n\t\t\treturn this._loadToDos;\n\t\t} else {\n\t\t\tthis._bindInnerControls();\n\t\t\tthis._loadToDos = new Promise((resolve) => {\n\t\t\t\tconst selectedKey = (this.getParent() as BaseContainer)?._getSelectedPanel()?.getProperty(\"key\") as string;\n\t\t\t\tconst requests: Request[] = [];\n\n\t\t\t\tthis._oData.isLoaded = false;\n\t\t\t\tthis._oData.isCountCalledOnce = false;\n\t\t\t\tthis._oData.isExpandedOnce = this._isElementExpanded();\n\t\t\t\tthis._setCount();\n\n\t\t\t\tif (this._getSupported()) {\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t// Load Placeholder Cards\n\t\t\t\t\t\tthis._generatePlaceHolderTiles();\n\n\t\t\t\t\t\t// Add Initial Batch Requests\n\t\t\t\t\t\trequests.push(\n\t\t\t\t\t\t\tthis._generateRequestObject({ type: selectedKey, onlyCount: selectedKey !== this.getProperty(\"key\") })\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.requests = this.requests.concat(requests);\n\n\t\t\t\t\t\t//Submit Batch Requests\n\t\t\t\t\t\tthis._submitBatch()\n\t\t\t\t\t\t\t.then(async () => {\n\t\t\t\t\t\t\t\tthis._oData.isLoaded = selectedKey === this.getProperty(\"key\");\n\t\t\t\t\t\t\t\tthis.fireEvent(\"loaded\");\n\n\t\t\t\t\t\t\t\tthis._oData.isCountCalledOnce = true;\n\t\t\t\t\t\t\t\tthis._setCount(this._oData.length as string);\n\n\t\t\t\t\t\t\t\tthis._setSectionRefreshInterval();\n\t\t\t\t\t\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.lastRefreshedTime = new Date();\n\t\t\t\t\t\t\t\tthis._updateRefreshInformation();\n\n\t\t\t\t\t\t\t\tawait this._switchTabIfRequired();\n\t\t\t\t\t\t\t\tthis._updateHeaderIfExclusive();\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.catch((error: unknown) => {\n\t\t\t\t\t\t\t\tLog.error(error instanceof Error ? error.message : \"\");\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\t\t\tthis._controlModel.refresh();\n\t\t\t\t\t\t\t\tthis._adjustLayout();\n\t\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis._handleError(`User not authorized to access: + ${this.getTargetAppUrl()}`);\n\n\t\t\t\t\t// Remove Item from IconTabBar\n\t\t\t\t\t(this.getParent() as ToDosContainer)?.removeContent(this);\n\n\t\t\t\t\t//resolve the promise\n\t\t\t\t\tresolve();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn this._loadToDos;\n\t}\n\n\t/**\n\t * Update Container Header if the panel is exclusive\n\t *\n\t * @private\n\t */\n\tprivate _updateHeaderIfExclusive() {\n\t\tif (this._isExclusivePanel()) {\n\t\t\t(this.getParent() as ToDosContainer)._setTitle(`${this._i18nBundle.getText(\"toDosTitle\")} (${String(this._oData.length)})`);\n\t\t}\n\t}\n\n\t/**\n\t * Creates a one-time binding of inner controls for the ToDoPanel.\n\t * @private\n\t */\n\tprivate _bindInnerControls(): void {\n\t\tif (!this._innerControlsBound) {\n\t\t\t//bind card container\n\t\t\tthis._cardContainer.bindAggregation(\"items\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\t//bind mobile card container\n\t\t\tthis._mobileCardContainer.bindAggregation(\"content\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\tthis._innerControlsBound = true;\n\t\t}\n\t}\n\n\t/**\n\t * Generates the card template for the Current Panel.\n\t *\n\t * @public\n\t * @param {string} id The ID for the template.\n\t * @param {object} context The context for the template.\n\t * @returns {object} The generated card template.\n\t */\n\tpublic generateCardTemplate(id: string, context: Context): Control {\n\t\treturn new GenericTile(`${id}-tile`, {\n\t\t\tmode: \"ActionMode\",\n\t\t\tframeType: \"TwoByOne\",\n\t\t\tpressEnabled: true,\n\t\t\theader: context.getProperty(\"title\") as string,\n\t\t\twidth: context.getProperty(\"/cardWidth\") as string,\n\t\t\tstate: context.getProperty(\"loadState\") as LoadState,\n\t\t\ttileContent: [\n\t\t\t\tnew TileContent(`${id}-tileContent`, {\n\t\t\t\t\tpriority: context.getProperty(\"priority\") as Priority,\n\t\t\t\t\tpriorityText: this._toPriorityText(context.getProperty(\"priority\") as Priority),\n\t\t\t\t\tfooter: context.getProperty(\"footerText\") as string,\n\t\t\t\t\tcontent: new Text(`${id}-situationContent`, {\n\t\t\t\t\t\ttext: context.getProperty(\"message\") as string\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\t}\n\n\t/**\n\t * Convert a priority string to a corresponding priority text.\n\t *\n\t * @private\n\t * @param {Priority} priority - The priority string.\n\t * @returns {string} The corresponding priority text.\n\t */\n\tpublic _toPriorityText(priority: Priority): string {\n\t\tlet key;\n\t\tif (priority === Priority.VeryHigh) {\n\t\t\tkey = \"veryHighPriority\";\n\t\t} else if (priority === Priority.High) {\n\t\t\tkey = \"highPriority\";\n\t\t} else if (priority === Priority.Medium) {\n\t\t\tkey = \"mediumPriority\";\n\t\t} else if (priority === Priority.Low) {\n\t\t\tkey = \"lowPriority\";\n\t\t} else {\n\t\t\tkey = \"nonePriority\";\n\t\t}\n\n\t\treturn this._i18nBundle.getText(key) as string;\n\t}\n\n\t/**\n\t * Generates placeholder tiles for the panel.\n\t *\n\t * @private\n\t */\n\tprivate _generatePlaceHolderTiles(): void {\n\t\tthis._cardCount = this._getVisibleCardCount({ isPlaceholder: true });\n\t\tthis._oData.displayTiles = this._oData.tiles = new Array(this._cardCount).fill({ loadState: \"Loading\" });\n\t\tthis._oData.isLoaded = this._oData.hasError = false;\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Calculates the number of visible cards that can fit within the available space of the To-Dos panel.\n\t *\n\t * @private\n\t * @param {CalculationProperties} [calculationProperties] - Optional properties to assist in the calculation.\n\t * @returns {number} - The number of visible cards.\n\t */\n\tprivate _getVisibleCardCount(calculationProperties?: CalculationProperties): number {\n\t\tconst layout = (this.getParent() as ToDosContainer)?._getLayout();\n\t\tlet isElementExpanded = false;\n\t\tlet targetDomRef = this._toDoWrapper?.getDomRef();\n\n\t\tif (layout) {\n\t\t\tisElementExpanded = this._isElementExpanded();\n\t\t\tconst isHeaderVisible = layout.getProperty(\"showHeader\") as boolean;\n\t\t\tconst containerDomRef = (isElementExpanded ? layout._getFullScreenContainer() : layout).getDomRef();\n\t\t\tconst sectionNodeIndex = isHeaderVisible && !isElementExpanded ? 1 : 0;\n\t\t\ttargetDomRef = containerDomRef?.childNodes[sectionNodeIndex] as Element;\n\t\t}\n\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet cardCount = isMobileDevice ? Constants.TODO_SECTION_LIMIT : 1;\n\n\t\tif (targetDomRef) {\n\t\t\t// @ts-expect-error Calculate Horizontal Card Count\n\t\t\tcardCount = this.getHorizontalCardCount(targetDomRef, calculationProperties);\n\n\t\t\tif (isElementExpanded) {\n\t\t\t\t// @ts-expect-error Calculate Vertical Card Count\n\t\t\t\tcardCount *= this.getVerticalCardCount(targetDomRef, calculationProperties);\n\t\t\t}\n\n\t\t\t//Restrict cards to the maximum limit\n\t\t\tcardCount = cardCount > Constants.TODO_CARDS_LIMIT ? Constants.TODO_CARDS_LIMIT : cardCount;\n\t\t}\n\n\t\treturn cardCount;\n\t}\n\n\t/**\n\t * Checks if the current element is expanded to full screen.\n\t *\n\t * @private\n\t * @returns {boolean} - True if the element is expanded, otherwise false.\n\t */\n\tprivate _isElementExpanded(): boolean {\n\t\tconst toDosContainer = this.getParent() as ToDosContainer;\n\t\tconst layout = toDosContainer._getLayout();\n\t\treturn layout?._getCurrentExpandedElementName() === toDosContainer.getProperty(\"fullScreenName\");\n\t}\n\n\t/**\n\t * Calculates the number of horizontal cards that can fit within the available width of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the horizontal card count for.\n\t * @returns {number} - The number of horizontal cards that can fit within the available width.\n\t */\n\tprotected getHorizontalCardCount(domRef: Element): number {\n\t\tconst domProperties = fetchElementProperties(domRef, [\"width\", \"padding-left\", \"padding-right\", \"margin-left\", \"margin-right\"]);\n\t\tconst availableWidth = Object.values(domProperties)\n\t\t\t.slice(1)\n\t\t\t.reduce((width, propertyValue) => width - propertyValue, domProperties[\"width\"]);\n\t\tconst actualCardCount = this._oData.length as number;\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet horizontalCardCount;\n\t\tconst minWidth = this.getProperty(\"minCardWidth\") as number;\n\t\tconst maxWidth = this.getProperty(\"maxCardWidth\") as number;\n\t\tconst cardLayoutConfig = {\n\t\t\tcontainerWidth: availableWidth,\n\t\t\ttotalCards: actualCardCount,\n\t\t\tminWidth: minWidth,\n\t\t\tmaxWidth: maxWidth,\n\t\t\tgap: Constants.GAP\n\t\t};\n\t\tconst cardWidth = calculateCardWidth(cardLayoutConfig);\n\t\tif (isMobileDevice) {\n\t\t\thorizontalCardCount = Constants.TODO_SECTION_LIMIT;\n\t\t} else {\n\t\t\thorizontalCardCount = Math.max(Math.floor(availableWidth / cardWidth), 1);\n\t\t}\n\n\t\t// Calculate Horizontal Card Count\n\t\tthis._controlModel.setProperty(\"/cardWidth\", `${cardWidth / 16}rem`);\n\t\tthis._controlModel.setProperty(\"/horizontalCardCount\", horizontalCardCount);\n\n\t\treturn horizontalCardCount;\n\t}\n\n\t/**\n\t * Calculates the number of vertical cards that can fit within the available height of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the vertical card count for.\n\t * @returns {number} - The number of vertical cards that can fit within the available height.\n\t */\n\tprotected getVerticalCardCount(domRef: Element): number {\n\t\tconst sectionDomProperties = fetchElementProperties(domRef, [\"padding-top\"]);\n\t\tconst parentDomProperties = fetchElementProperties(domRef.parentElement as Element, [\"height\"]);\n\t\tconst titleHeight = this.calculateTitleHeight();\n\t\tconst availableHeight = parentDomProperties.height - sectionDomProperties[\"padding-top\"] * 2 - titleHeight;\n\t\tconst margin = 14;\n\t\tconst cardHeight = Constants.DEFAULT_CARD_HEIGHT + margin;\n\t\tconst verticalCardCount = Math.max(Math.floor(availableHeight / cardHeight), 2); //minimum of 2 rows should be displayed\n\n\t\treturn verticalCardCount;\n\t}\n\n\t/**\n\t * Calculates the combined height of the title and tab header for the To-Dos panel.\n\t *\n\t * @private\n\t * @returns {number} - The combined height of the title and tab header.\n\t */\n\tprotected calculateTitleHeight(): number {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst containerHeaderRef = UI5Element.getElementById(`${container.getId()}-header`)?.getDomRef();\n\t\tconst iconTabBarHeaderRef = UI5Element.getElementById(`${container._getInnerControl().getId()}--header`)?.getDomRef();\n\t\tconst defaultHeight = Constants.DEFAULT_TITLE_HEIGHT + Constants.DEFAULT_TAB_HEADER_HEIGHT;\n\t\tlet titleHeight = 0;\n\n\t\tif (containerHeaderRef && iconTabBarHeaderRef) {\n\t\t\ttitleHeight = containerHeaderRef.clientHeight + iconTabBarHeaderRef.clientHeight;\n\t\t}\n\n\t\treturn Math.max(titleHeight, defaultHeight);\n\t}\n\n\t/**\n\t * Generates a request object for batch requests.\n\t *\n\t * @private\n\t * @param {RequestOptions} options - Additional properties for generating the request object.\n\t * @param {boolean} [options.onlyCount] - Whether to include only the count in the request.\n\t * @returns {Object} The generated request object.\n\t */\n\tprivate _generateRequestObject(options: RequestOptions): Request {\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tconst countUrl = this.getCountUrl();\n\t\tconst urls = this.generateRequestUrls?.(cardCount);\n\n\t\tif (countUrl && options?.onlyCount) {\n\t\t\turls.splice(1);\n\t\t}\n\n\t\treturn {\n\t\t\tbaseURL: this.getBaseUrl(),\n\t\t\trequestURLs: urls,\n\t\t\tsuccess: async (args: unknown[]): Promise<void> => {\n\t\t\t\t//data process extension for panels\n\t\t\t\tawait this.onDataReceived(countUrl ? args.splice(1) : args, options);\n\n\t\t\t\t//set card count and handle empty cards\n\t\t\t\tthis._oData.length = countUrl ? Number(args[0]) : (this._oData.tiles as object[]).length;\n\t\t\t\tthis._handleEmptyCards();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Generates request URLs for fetching data based on the specified card count.\n\t *\n\t * @public\n\t * @param {number} cardCount - The number of cards to retrieve.\n\t * @returns {string[]} An array of request URLs.\n\t */\n\tpublic generateRequestUrls(cardCount: number): string[] {\n\t\tconst urls = [];\n\t\tconst countUrl = this.getCountUrl();\n\n\t\tif (countUrl) {\n\t\t\turls.push(countUrl);\n\t\t}\n\n\t\tlet dataUrl = this.getDataUrl();\n\t\tif (this.getProperty(\"useBatch\")) {\n\t\t\tconst queryString = `$skip=0&$top=${cardCount}`;\n\t\t\tdataUrl = dataUrl.includes(\"?\") ? `${dataUrl}&${queryString}` : `${dataUrl}?${queryString}`;\n\t\t}\n\t\turls.push(dataUrl);\n\n\t\treturn urls;\n\t}\n\n\t/**\n\t * A promise that resolves when the data has been processed.\n\t * This method can be overridden to perform additional data processing operations.\n\t *\n\t * @public\n\t * @async\n\t * @param {unknown[]} results - Data retrieved from the batch call.\n\t * @param {RequestOptions} options - Additional options for parsing the data.\n\t * Structure may vary based on the backend service.\n\t */\n\tpublic async onDataReceived(results: unknown[] = [], options?: RequestOptions): Promise<void> {\n\t\tif (!options || (options && !options.onlyCount)) {\n\t\t\tthis._oData.displayTiles = this._oData.tiles = results[0] || [];\n\t\t}\n\n\t\tawait Promise.resolve();\n\t}\n\n\t/**\n\t * Handles the scenario when there are no cards to display.\n\t * Updates the illustration and description based on the selected panel and card count.\n\t *\n\t * @private\n\t */\n\tprivate _handleEmptyCards() {\n\t\tif (Number(this._oData.length) === 0) {\n\t\t\tthis._oData.illustrationType = \"sapIllus-EmptyPlanningCalendar\";\n\t\t\tthis._oData.illustrationTitle = this._isExclusivePanel() ? this._i18nBundle.getText(\"noToDoTitle\") : this.getNoDataText();\n\t\t\tthis._oData.illustrationDescription = this._isExclusivePanel()\n\t\t\t\t? this._i18nBundle.getText(\"noToDoDesc\")\n\t\t\t\t: this._i18nBundle.getText(\"emptyToDoDesc\");\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the panel is exclusive based on support and the number of panels.\n\t *\n\t * @private\n\t * @returns {boolean} True if the panel is exclusive, otherwise false.\n\t */\n\tprivate _isExclusivePanel(): boolean {\n\t\tconst allPanels = (this.getParent() as ToDosContainer).getContent() as ToDoPanel[];\n\t\tconst supportedPanels = allPanels.filter((panel) => panel._getSupported());\n\n\t\treturn supportedPanels.length === 1 || (allPanels.length === 1 && this._getSupported());\n\t}\n\n\t/**\n\t * Sets the interval for refreshing the section.\n\t *\n\t * @private\n\t */\n\tprivate _setSectionRefreshInterval(): void {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t\tthis._oData.refreshFn = setInterval(() => {\n\t\t\tthis._oData.lastRefreshedTime = this._oData.lastRefreshedTime || new Date();\n\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._updateRefreshInformation();\n\t\t}, Constants.TODOS_REFRESH_INTERVAL);\n\t}\n\n\t/**\n\t * Updates the refresh information and adjusts the layout.\n\t *\n\t * @private\n\t */\n\tpublic _updateRefreshInformation(): void {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tif (container.getProperty(\"selectedKey\") === this.getProperty(\"key\")) {\n\t\t\tthis._refreshBtn.setProperty(\"text\", this._oData.refreshInfo, true);\n\t\t\tthis._accRefreshLabel.setProperty(\"text\", this._oData.fullRefreshInfo, true);\n\t\t\tthis._refreshBtn.setAggregation(\"tooltip\", this._oData.fullRefreshInfo as ManagedObject, true);\n\t\t\tcontainer._updateContainerHeader(this);\n\t\t}\n\n\t\tthis._adjustLayout();\n\t}\n\n\t/**\n\t * Adjusts the layout based on card count and device type.\n\t *\n\t * @private\n\t */\n\tpublic _adjustLayout() {\n\t\t// Update visible cards\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tif ((this._oData.tiles as object[]).length && !this._oData.hasError) {\n\t\t\tconst displayCards = (this._oData.tiles as object[]).slice(0, cardCount);\n\t\t\tthis._controlModel.setProperty(\"/displayTiles\", displayCards);\n\t\t}\n\n\t\t// Update if device type is phone\n\t\tthis._controlModel.setProperty(\"/isPhone\", this.getDeviceType() === DeviceType.Mobile);\n\n\t\t// Show/Hide Full Screen Button if available\n\t\t(this.getParent() as ToDosContainer)?.toggleFullScreenElements(\n\t\t\tthis,\n\t\t\tthis._isElementExpanded() || Number(this._oData.length) > cardCount\n\t\t);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date.\n\t *\n\t * @private\n\t * @param {Date} date Date object or Date String\n\t * @returns {string} Formatted Date\n\t */\n\tpublic _toRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.relativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date string with full units (e.g., \"2 minutes ago\").\n\t * Intended for accessibility use such as screen readers.\n\t *\n\t * @private\n\t * @param {Date} date Date object or date string\n\t * @returns {string} Fully formatted relative date string\n\t */\n\tprivate _toFullRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.fullRelativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Get the text for the \"No Data\" message.\n\t *\n\t * @public\n\t * @returns {string} The text for the \"No Data\" message.\n\t */\n\tpublic getNoDataText(): string {\n\t\treturn this._i18nBundle.getText(\"noData\") as string;\n\t}\n\n\t/**\n\t * Parses the response object and returns the appropriate value.\n\t *\n\t * @private\n\t * @param {Object} response - The response object.\n\t * @param {Object} [response.d] - The 'd' property of the response object.\n\t * @param {Array} [response.d.results] - The results array.\n\t * @param {string|number} [response.d] - The 'd' property of the response object which may contain a numeric value.\n\t * @param {string|number} [response] - The response object which may contain a numeric value.\n\t * @param {string|number} [response.value] - The 'value' property of the response object which may contain a numeric value.\n\t * @returns {Response} - The parsed value extracted from the response object.\n\t */\n\tprivate _parseResponse(response: Response): Response {\n\t\tconst { d = {}, value } = response || {};\n\t\tconst results = d?.results;\n\t\tconst numericD = !isNaN(+d) && +d;\n\t\tconst numericResponse = !isNaN(+response) && +response;\n\n\t\treturn (results || numericD || numericResponse || value || response || 0) as Response;\n\t}\n\n\t/**\n\t * Submits a batch request for multiple URLs and processes the responses.\n\t *\n\t * @private\n\t * @returns {Promise} A Promise that resolves when all batch requests are completed.\n\t */\n\tprotected _submitBatch(): Promise<unknown[]> {\n\t\treturn Promise.all(\n\t\t\tthis.requests.map(async (request: Request) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst useBatch = this.getProperty(\"useBatch\") as boolean;\n\t\t\t\t\tlet responses = useBatch\n\t\t\t\t\t\t? await this.batchHelper.createMultipartRequest(request.baseURL, request.requestURLs)\n\t\t\t\t\t\t: await HttpHelper.GetMultipleRequests(request.requestURLs);\n\n\t\t\t\t\tif (responses.length) {\n\t\t\t\t\t\tconst processedResponses = responses.map((response: string | Response) => {\n\t\t\t\t\t\t\tif (typeof response === \"string\") {\n\t\t\t\t\t\t\t\tresponse = JSON.parse(response) as Response;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn this._parseResponse(response);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\t// Call success callback, if any\n\t\t\t\t\t\tif (request.success && typeof request.success === \"function\") {\n\t\t\t\t\t\t\tawait request.success(processedResponses);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn processedResponses;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(\"Invalid response\");\n\t\t\t\t\t}\n\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\tthis._handleError(error);\n\t\t\t\t} finally {\n\t\t\t\t\tthis._clearRequests();\n\t\t\t\t}\n\t\t\t})\n\t\t);\n\t}\n\n\t/**\n\t * Handles errors by updating the data and logging the error.\n\t *\n\t * @private\n\t * @param {Error} error - The error object to handle.\n\t */\n\tprivate _handleError(error: unknown) {\n\t\tthis._oData.displayTiles = this._oData.tiles = [];\n\t\tthis._oData.getSupported = this._oData.isLoaded = this._oData.hasError = true;\n\t\tthis._oData.illustrationType = \"sapIllus-UnableToLoad\";\n\t\tthis._oData.illustrationTitle = this._oData.illustrationDescription = \"\";\n\n\t\tLog.error(error as string);\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Clears the list of requests.\n\t *\n\t * @private\n\t */\n\tprotected _clearRequests() {\n\t\tthis.requests = [];\n\t}\n\n\t/**\n\t * Checks if the panel is loaded.\n\t *\n\t * @private\n\t * @returns {boolean} true if the panel is loaded, false otherwise.\n\t */\n\tpublic _isLoaded(): boolean {\n\t\tconst parentContainer = this.getParent() as ToDosContainer;\n\t\tconst isContainerExpanded = parentContainer?._getLayout()?.getProperty(\"expanded\") as boolean;\n\n\t\tconst { isLoaded, isExpandedOnce } = this._oData;\n\n\t\tif (!isContainerExpanded) {\n\t\t\treturn isLoaded as boolean;\n\t\t}\n\n\t\treturn (isExpandedOnce && isLoaded) as boolean;\n\t}\n\n\t/**\n\t * Set the loaded status of the ToDoPanel.\n\t *\n\t * @private\n\t * @param {boolean} isLoaded - The new loaded status to set for the ToDoPanel.\n\t */\n\tpublic _setLoaded(isLoaded: boolean): void {\n\t\tthis._oData.isLoaded = isLoaded;\n\t}\n\n\t/**\n\t * Gets the supported status of the panel.\n\t *\n\t * @private\n\t * @returns {boolean} The supported status of the panel.\n\t */\n\tpublic _getSupported(): boolean {\n\t\treturn this._oData.getSupported as boolean;\n\t}\n\n\t/**\n\t * Sets the supported status of the panel.\n\t *\n\t * @private\n\t * @param {boolean} value - The value to set for supported status.\n\t */\n\tpublic _setSupported(isSupported: boolean): void {\n\t\tthis._oData.getSupported = isSupported;\n\t}\n\n\t/**\n\t * Extracts the app intent from the target app URL.\n\t *\n\t * @private\n\t * @returns {Intent | null} The app intent object with target and parameters, or null if not found.\n\t */\n\tpublic _getAppIntent(): Intent | null {\n\t\tconst pattern = /#([^?-]+)-([^?#]+)(?:\\?([^#]+))?(?:#.*)?/;\n\t\tconst match = this.getTargetAppUrl().match(pattern);\n\n\t\tif (match) {\n\t\t\tconst target = {\n\t\t\t\tsemanticObject: match[1],\n\t\t\t\taction: match[2]\n\t\t\t};\n\t\t\tconst params = {} as Record<string, string>;\n\n\t\t\tif (match[3]) {\n\t\t\t\tconst paramsArray = match[3].split(\"&\");\n\t\t\t\tfor (const param of paramsArray) {\n\t\t\t\t\tconst [key, value] = param.split(\"=\");\n\t\t\t\t\tparams[key] = value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ttarget,\n\t\t\t\tparams\n\t\t\t};\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Switch to available tab if current panel has empty cards or has error\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _switchTabIfRequired() {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst selectedKey = container?.getProperty(\"selectedKey\") as string;\n\n\t\tif (selectedKey === this.getProperty(\"key\") && (this._oData.length === 0 || this._oData.hasError)) {\n\t\t\tlet nextAvailablePanel;\n\t\t\tconst panels = container?.getAggregation(\"content\") as ToDoPanel[];\n\n\t\t\tfor (const panel of panels) {\n\t\t\t\tif (panel !== this) {\n\t\t\t\t\t//ensure that panel is loaded first\n\t\t\t\t\tawait panel._loadCards();\n\n\t\t\t\t\tif (panel._getSupported() && !panel._isLoaded() && panel._getCardCount() > 0) {\n\t\t\t\t\t\tnextAvailablePanel = panel;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (nextAvailablePanel) {\n\t\t\t\tcontainer?.setProperty(\"selectedKey\", nextAvailablePanel.getProperty(\"key\"));\n\t\t\t\tToDosContainer.cardCount = this._cardCount;\n\t\t\t\tawait nextAvailablePanel._loadCards(true);\n\t\t\t\tToDosContainer.cardCount = undefined;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Handles the press event to view all items.\n\t *\n\t * @private\n\t */\n\tpublic _onPressViewAll() {\n\t\tURLHelper.redirect(this.getTargetAppUrl(), false);\n\t}\n\n\t/**\n\t * Retrieves the count of cards in the panel.\n\t *\n\t * @private\n\t * @returns {number} The number of cards.\n\t */\n\tpublic _getCardCount(): number {\n\t\treturn Number(this._oData.length);\n\t}\n\n\t/**\n\t * Handles actions to be performed before the To-Dos panel is expanded.\n\t * If the panel has not been expanded before in full screen, the cards will be loaded once.\n\t *\n\t * @private\n\t */\n\tprivate async _beforePanelExpand() {\n\t\tif (!this._oData.isExpandedOnce) {\n\t\t\tthis._oData.isExpandedOnce = true;\n\t\t\tawait this._loadCards(true);\n\t\t}\n\t}\n\n\t/**\n\t * Exit lifecycle method.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic exit() {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -93,8 +93,8 @@ const Constants = {
93
93
  * @since 1.121
94
94
  *
95
95
  * @abstract
96
- * @internal
97
- * @public
96
+ * @private
97
+ * @ui5-restricted ux.eng.s4producthomes1
98
98
  *
99
99
  * @alias sap.cux.home.ToDoPanel
100
100
  */
@@ -297,9 +297,7 @@ export default abstract class ToDoPanel extends BasePanel implements IToDoPanel
297
297
  scrollTime: 1000,
298
298
  showDividers: false,
299
299
  snapToRow: true
300
- });
301
-
302
- this._mobileCardContainer.addStyleClass("sapMHeaderContainerAlign sapMHeaderContainerToDoAlign toDoCardHeight");
300
+ }).addStyleClass("sapCuxToDoMobileCardsContainer");
303
301
  }
304
302
 
305
303
  return this._mobileCardContainer;
@@ -370,14 +368,7 @@ export default abstract class ToDoPanel extends BasePanel implements IToDoPanel
370
368
  this._generateRequestObject({ type: selectedKey, onlyCount: selectedKey !== this.getProperty("key") })
371
369
  );
372
370
  this.requests = this.requests.concat(requests);
373
- /**
374
- * removing the class first if the wrapper already has class
375
- * This is temporary code (to be removed later), this will be handled by GenericTile.
376
- */
377
- const toDosWrapper = this._getContent()?.[0];
378
- if (toDosWrapper && toDosWrapper.hasStyleClass("sapUiGridTaskLayout")) {
379
- toDosWrapper.removeStyleClass("sapUiGridTaskLayout");
380
- }
371
+
381
372
  //Submit Batch Requests
382
373
  this._submitBatch()
383
374
  .then(async () => {
@@ -402,13 +393,6 @@ export default abstract class ToDoPanel extends BasePanel implements IToDoPanel
402
393
  .finally(() => {
403
394
  this._controlModel.refresh();
404
395
  this._adjustLayout();
405
- /**
406
- * This class is initially added for Desktop and Tablet. If not added (In case of Mobile) add it.
407
- * This is temporary code (to be removed later), this will be handled by GenericTile.
408
- * */
409
- if (toDosWrapper && !toDosWrapper.hasStyleClass("sapUiGridTaskLayout")) {
410
- toDosWrapper.addStyleClass("sapUiGridTaskLayout");
411
- }
412
396
  resolve();
413
397
  });
414
398
  });
@@ -13,8 +13,8 @@ declare module "sap/cux/home/ToDosContainer" {
13
13
  * @version 0.0.1
14
14
  * @since 1.121
15
15
  *
16
- * @internal
17
- * @public
16
+ * @private
17
+ * @ui5-restricted ux.eng.s4producthomes1
18
18
  *
19
19
  * @alias sap.cux.home.ToDosContainer
20
20
  */
@@ -27,7 +27,6 @@ declare module "sap/cux/home/ToDosContainer" {
27
27
  apiVersion: number;
28
28
  render: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
29
29
  renderContent: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
30
- renderCustomPlaceholder: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
31
30
  };
32
31
  constructor(id?: string | $BaseContainerSettings);
33
32
  constructor(id?: string, settings?: $BaseContainerSettings);
@@ -1 +1 @@
1
- {"version":3,"file":"ToDosContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ToDosContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,6BAA6B,CAAC;IAQ7C,OAAO,KAAK,MAAM,mBAAmB,CAAC;IACtC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAMvD;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;QACxD,OAAO,CAAC,oBAAoB,CAAW;QACvC,OAAO,CAAC,kBAAkB,CAAc;QAExC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;;;;UAGb;oBAEU,EAAE,CAAC,EAAE,MAAM,GAAG,sBAAsB;oBACpC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAW1D;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAWnB;;;;;;WAMG;QACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;QAuBlC;;;;;;;;WAQG;gBACW,iBAAiB;QAoB/B;;;;;WAKG;QACH,OAAO,CAAC,6BAA6B;QAWrC;;;;;;;WAOG;gBACW,cAAc;QAqB5B;;;;;;;WAOG;kBACa,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;QAa3D;;;;;;WAMG;QACU,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;QAMzC;;;;;;WAMG;QACI,cAAc,IAAI,MAAM;QAS/B;;;;;WAKG;QACH,OAAO,CAAC,cAAc;QAItB;;;;;WAKG;QACI,YAAY;QAQnB;;;;WAIG;QACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;KAGhD;CAEA"}
1
+ {"version":3,"file":"ToDosContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ToDosContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,6BAA6B,CAAC;IAQ7C,OAAO,KAAK,MAAM,mBAAmB,CAAC;IACtC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAMvD;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;QACxD,OAAO,CAAC,oBAAoB,CAAW;QACvC,OAAO,CAAC,kBAAkB,CAAc;QAExC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;;;UAGb;oBAEU,EAAE,CAAC,EAAE,MAAM,GAAG,sBAAsB;oBACpC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAW1D;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAWnB;;;;;;WAMG;QACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;QAuBlC;;;;;;;;WAQG;gBACW,iBAAiB;QAoB/B;;;;;WAKG;QACH,OAAO,CAAC,6BAA6B;QAWrC;;;;;;;WAOG;gBACW,cAAc;QAqB5B;;;;;;;WAOG;kBACa,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;QAa3D;;;;;;WAMG;QACU,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;QAMzC;;;;;;WAMG;QACI,cAAc,IAAI,MAAM;QAS/B;;;;;WAKG;QACH,OAAO,CAAC,cAAc;QAItB;;;;;WAKG;QACI,YAAY;QAQnB;;;;WAIG;QACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;KAGhD;CAEA"}
@@ -2,7 +2,7 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./ToDosContainerGenericPlaceholder", "./utils/Device"], function (Log, Container, __BaseContainer, ___ToDosContainerGenericPlaceholder, ___utils_Device) {
5
+ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./utils/Device", "./utils/placeholder/ToDosPlaceholder"], function (Log, Container, __BaseContainer, ___utils_Device, ___utils_placeholder_ToDosPlaceholder) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
@@ -114,7 +114,7 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./ToD
114
114
  _cycle();
115
115
  return pact;
116
116
  }
117
- const getTodosPlaceholder = ___ToDosContainerGenericPlaceholder["getTodosPlaceholder"];
117
+ const DeviceType = ___utils_Device["DeviceType"];
118
118
  function _forOf(target, body, check) {
119
119
  if (typeof target[_iteratorSymbol] === "function") {
120
120
  var iterator = target[_iteratorSymbol](),
@@ -175,7 +175,7 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./ToD
175
175
  return body(values[i]);
176
176
  }, check);
177
177
  }
178
- const DeviceType = ___utils_Device["DeviceType"];
178
+ const getTodosPlaceholder = ___utils_placeholder_ToDosPlaceholder["getTodosPlaceholder"];
179
179
  /**
180
180
  *
181
181
  * Container class for managing and storing To-Do cards.
@@ -186,8 +186,8 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./ToD
186
186
  * @version 0.0.1
187
187
  * @since 1.121
188
188
  *
189
- * @internal
190
- * @public
189
+ * @private
190
+ * @ui5-restricted ux.eng.s4producthomes1
191
191
  *
192
192
  * @alias sap.cux.home.ToDosContainer
193
193
  */