@sapui5/sap.cux.home 1.136.1 → 1.138.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (412) hide show
  1. package/package.json +1 -1
  2. package/src/sap/cux/home/.library +1 -1
  3. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts +0 -3
  4. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
  5. package/src/sap/cux/home/AdvancedSettingsPanel.js +33 -30
  6. package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
  7. package/src/sap/cux/home/AdvancedSettingsPanel.ts +13 -7
  8. package/src/sap/cux/home/App.d.ts +1 -2
  9. package/src/sap/cux/home/App.d.ts.map +1 -1
  10. package/src/sap/cux/home/App.js +7 -2
  11. package/src/sap/cux/home/App.js.map +1 -1
  12. package/src/sap/cux/home/App.ts +8 -3
  13. package/src/sap/cux/home/AppsAdditionPanel.d.ts +0 -2
  14. package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
  15. package/src/sap/cux/home/AppsAdditionPanel.js +28 -23
  16. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  17. package/src/sap/cux/home/AppsAdditionPanel.ts +18 -5
  18. package/src/sap/cux/home/AppsContainer.d.ts +0 -1
  19. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  20. package/src/sap/cux/home/AppsContainer.js +22 -25
  21. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  22. package/src/sap/cux/home/AppsContainer.ts +4 -4
  23. package/src/sap/cux/home/BaseApp.d.ts +2 -2
  24. package/src/sap/cux/home/BaseApp.d.ts.map +1 -1
  25. package/src/sap/cux/home/BaseApp.js +10 -3
  26. package/src/sap/cux/home/BaseApp.js.map +1 -1
  27. package/src/sap/cux/home/BaseApp.ts +11 -4
  28. package/src/sap/cux/home/BaseAppPanel.d.ts +0 -2
  29. package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
  30. package/src/sap/cux/home/BaseAppPanel.js +7 -12
  31. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  32. package/src/sap/cux/home/BaseAppPanel.ts +2 -4
  33. package/src/sap/cux/home/BaseAppPersPanel.d.ts +3 -3
  34. package/src/sap/cux/home/BaseAppPersPanel.d.ts.map +1 -1
  35. package/src/sap/cux/home/BaseAppPersPanel.js +17 -13
  36. package/src/sap/cux/home/BaseAppPersPanel.js.map +1 -1
  37. package/src/sap/cux/home/BaseAppPersPanel.ts +18 -11
  38. package/src/sap/cux/home/BaseContainer.d.ts +0 -1
  39. package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
  40. package/src/sap/cux/home/BaseContainer.js +16 -13
  41. package/src/sap/cux/home/BaseContainer.js.map +1 -1
  42. package/src/sap/cux/home/BaseContainer.ts +10 -5
  43. package/src/sap/cux/home/BaseLayout.d.ts +0 -1
  44. package/src/sap/cux/home/BaseLayout.d.ts.map +1 -1
  45. package/src/sap/cux/home/BaseLayout.js +6 -13
  46. package/src/sap/cux/home/BaseLayout.js.map +1 -1
  47. package/src/sap/cux/home/BaseLayout.ts +1 -2
  48. package/src/sap/cux/home/BaseNewsItem.d.ts +1 -2
  49. package/src/sap/cux/home/BaseNewsItem.d.ts.map +1 -1
  50. package/src/sap/cux/home/BaseNewsItem.js +7 -2
  51. package/src/sap/cux/home/BaseNewsItem.js.map +1 -1
  52. package/src/sap/cux/home/BaseNewsItem.ts +8 -3
  53. package/src/sap/cux/home/BaseNewsPanel.d.ts +1 -2
  54. package/src/sap/cux/home/BaseNewsPanel.d.ts.map +1 -1
  55. package/src/sap/cux/home/BaseNewsPanel.js +7 -2
  56. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  57. package/src/sap/cux/home/BaseNewsPanel.ts +8 -3
  58. package/src/sap/cux/home/BasePagePanel.d.ts +1 -2
  59. package/src/sap/cux/home/BasePagePanel.d.ts.map +1 -1
  60. package/src/sap/cux/home/BasePagePanel.gen.d.ts +34 -0
  61. package/src/sap/cux/home/BasePagePanel.js +16 -2
  62. package/src/sap/cux/home/BasePagePanel.js.map +1 -1
  63. package/src/sap/cux/home/BasePagePanel.ts +17 -3
  64. package/src/sap/cux/home/BasePanel.d.ts +0 -1
  65. package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
  66. package/src/sap/cux/home/BasePanel.js +1 -3
  67. package/src/sap/cux/home/BasePanel.js.map +1 -1
  68. package/src/sap/cux/home/BasePanel.ts +0 -1
  69. package/src/sap/cux/home/BaseSettingsDialog.d.ts +0 -1
  70. package/src/sap/cux/home/BaseSettingsDialog.d.ts.map +1 -1
  71. package/src/sap/cux/home/BaseSettingsDialog.js +0 -1
  72. package/src/sap/cux/home/BaseSettingsDialog.js.map +1 -1
  73. package/src/sap/cux/home/BaseSettingsDialog.ts +0 -1
  74. package/src/sap/cux/home/BaseSettingsPanel.d.ts +1 -2
  75. package/src/sap/cux/home/BaseSettingsPanel.d.ts.map +1 -1
  76. package/src/sap/cux/home/BaseSettingsPanel.js +0 -1
  77. package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
  78. package/src/sap/cux/home/BaseSettingsPanel.ts +1 -2
  79. package/src/sap/cux/home/CardsPanel.d.ts +0 -1
  80. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  81. package/src/sap/cux/home/CardsPanel.js +103 -104
  82. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  83. package/src/sap/cux/home/CardsPanel.ts +4 -3
  84. package/src/sap/cux/home/ContentAdditionDialog.d.ts +0 -3
  85. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  86. package/src/sap/cux/home/ContentAdditionDialog.js +3 -7
  87. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  88. package/src/sap/cux/home/ContentAdditionDialog.ts +3 -7
  89. package/src/sap/cux/home/ErrorPanel.d.ts +1 -2
  90. package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
  91. package/src/sap/cux/home/ErrorPanel.gen.d.ts +24 -0
  92. package/src/sap/cux/home/ErrorPanel.js +16 -2
  93. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  94. package/src/sap/cux/home/ErrorPanel.ts +17 -3
  95. package/src/sap/cux/home/FavAppPanel.d.ts +0 -1
  96. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  97. package/src/sap/cux/home/FavAppPanel.js +286 -291
  98. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  99. package/src/sap/cux/home/FavAppPanel.ts +23 -18
  100. package/src/sap/cux/home/FrequentAppPanel.d.ts +0 -1
  101. package/src/sap/cux/home/FrequentAppPanel.d.ts.map +1 -1
  102. package/src/sap/cux/home/FrequentAppPanel.js +1 -4
  103. package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
  104. package/src/sap/cux/home/FrequentAppPanel.ts +0 -1
  105. package/src/sap/cux/home/Group.d.ts +2 -2
  106. package/src/sap/cux/home/Group.d.ts.map +1 -1
  107. package/src/sap/cux/home/Group.gen.d.ts +47 -1
  108. package/src/sap/cux/home/Group.js +30 -3
  109. package/src/sap/cux/home/Group.js.map +1 -1
  110. package/src/sap/cux/home/Group.ts +26 -6
  111. package/src/sap/cux/home/IToDoPanel.d.ts +1 -2
  112. package/src/sap/cux/home/IToDoPanel.d.ts.map +1 -1
  113. package/src/sap/cux/home/IToDoPanel.js.map +1 -1
  114. package/src/sap/cux/home/IToDoPanel.ts +1 -2
  115. package/src/sap/cux/home/InsightsAdditionPanel.d.ts +0 -4
  116. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  117. package/src/sap/cux/home/InsightsAdditionPanel.js +1 -7
  118. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  119. package/src/sap/cux/home/InsightsAdditionPanel.ts +1 -8
  120. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts +0 -3
  121. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts.map +1 -1
  122. package/src/sap/cux/home/InsightsCardsSettingsPanel.js +0 -3
  123. package/src/sap/cux/home/InsightsCardsSettingsPanel.js.map +1 -1
  124. package/src/sap/cux/home/InsightsCardsSettingsPanel.ts +0 -3
  125. package/src/sap/cux/home/InsightsContainer.d.ts +1 -1
  126. package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
  127. package/src/sap/cux/home/InsightsContainer.js +19 -3
  128. package/src/sap/cux/home/InsightsContainer.js.map +1 -1
  129. package/src/sap/cux/home/InsightsContainer.ts +17 -4
  130. package/src/sap/cux/home/InsightsTilesSettingsPanel.d.ts +0 -3
  131. package/src/sap/cux/home/InsightsTilesSettingsPanel.d.ts.map +1 -1
  132. package/src/sap/cux/home/InsightsTilesSettingsPanel.js +5 -5
  133. package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
  134. package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +5 -5
  135. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +0 -3
  136. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
  137. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +0 -3
  138. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
  139. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +0 -3
  140. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts +0 -3
  141. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  142. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +0 -3
  143. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  144. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +0 -3
  145. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts +0 -3
  146. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
  147. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +22 -13
  148. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  149. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +22 -17
  150. package/src/sap/cux/home/KeyUserPagesSettingsPanel.d.ts +0 -3
  151. package/src/sap/cux/home/KeyUserPagesSettingsPanel.d.ts.map +1 -1
  152. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js +0 -3
  153. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
  154. package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +0 -3
  155. package/src/sap/cux/home/KeyUserSettingsDialog.d.ts +0 -3
  156. package/src/sap/cux/home/KeyUserSettingsDialog.d.ts.map +1 -1
  157. package/src/sap/cux/home/KeyUserSettingsDialog.js +1 -4
  158. package/src/sap/cux/home/KeyUserSettingsDialog.js.map +1 -1
  159. package/src/sap/cux/home/KeyUserSettingsDialog.ts +1 -4
  160. package/src/sap/cux/home/Layout.d.ts +0 -1
  161. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  162. package/src/sap/cux/home/Layout.js +7 -10
  163. package/src/sap/cux/home/Layout.js.map +1 -1
  164. package/src/sap/cux/home/Layout.ts +3 -4
  165. package/src/sap/cux/home/LayoutSettingsPanel.d.ts +0 -3
  166. package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
  167. package/src/sap/cux/home/LayoutSettingsPanel.js +0 -3
  168. package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
  169. package/src/sap/cux/home/LayoutSettingsPanel.ts +0 -3
  170. package/src/sap/cux/home/MenuItem.d.ts +0 -1
  171. package/src/sap/cux/home/MenuItem.d.ts.map +1 -1
  172. package/src/sap/cux/home/MenuItem.js +0 -1
  173. package/src/sap/cux/home/MenuItem.js.map +1 -1
  174. package/src/sap/cux/home/MenuItem.ts +0 -1
  175. package/src/sap/cux/home/NewsAndPagesContainer.d.ts +0 -1
  176. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
  177. package/src/sap/cux/home/NewsAndPagesContainer.js +0 -1
  178. package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
  179. package/src/sap/cux/home/NewsAndPagesContainer.ts +0 -1
  180. package/src/sap/cux/home/NewsGroup.d.ts +0 -3
  181. package/src/sap/cux/home/NewsGroup.d.ts.map +1 -1
  182. package/src/sap/cux/home/NewsGroup.js +1 -4
  183. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  184. package/src/sap/cux/home/NewsGroup.ts +1 -4
  185. package/src/sap/cux/home/NewsItem.d.ts +0 -3
  186. package/src/sap/cux/home/NewsItem.d.ts.map +1 -1
  187. package/src/sap/cux/home/NewsItem.js +0 -3
  188. package/src/sap/cux/home/NewsItem.js.map +1 -1
  189. package/src/sap/cux/home/NewsItem.ts +0 -3
  190. package/src/sap/cux/home/NewsPanel.d.ts +0 -1
  191. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  192. package/src/sap/cux/home/NewsPanel.js +84 -96
  193. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  194. package/src/sap/cux/home/NewsPanel.ts +32 -35
  195. package/src/sap/cux/home/NewsSettingsPanel.d.ts +6 -3
  196. package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
  197. package/src/sap/cux/home/NewsSettingsPanel.js +18 -4
  198. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  199. package/src/sap/cux/home/NewsSettingsPanel.ts +16 -4
  200. package/src/sap/cux/home/NoDataContainer.d.ts +0 -1
  201. package/src/sap/cux/home/NoDataContainer.d.ts.map +1 -1
  202. package/src/sap/cux/home/NoDataContainer.js +0 -1
  203. package/src/sap/cux/home/NoDataContainer.js.map +1 -1
  204. package/src/sap/cux/home/NoDataContainer.ts +0 -1
  205. package/src/sap/cux/home/Page.d.ts +0 -3
  206. package/src/sap/cux/home/Page.d.ts.map +1 -1
  207. package/src/sap/cux/home/Page.gen.d.ts +0 -12
  208. package/src/sap/cux/home/Page.js +0 -7
  209. package/src/sap/cux/home/Page.js.map +1 -1
  210. package/src/sap/cux/home/Page.ts +0 -7
  211. package/src/sap/cux/home/PagePanel.d.ts +0 -4
  212. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  213. package/src/sap/cux/home/PagePanel.js +5 -11
  214. package/src/sap/cux/home/PagePanel.js.map +1 -1
  215. package/src/sap/cux/home/PagePanel.ts +4 -9
  216. package/src/sap/cux/home/PageSettingsPanel.d.ts +0 -3
  217. package/src/sap/cux/home/PageSettingsPanel.d.ts.map +1 -1
  218. package/src/sap/cux/home/PageSettingsPanel.js +3 -5
  219. package/src/sap/cux/home/PageSettingsPanel.js.map +1 -1
  220. package/src/sap/cux/home/PageSettingsPanel.ts +3 -5
  221. package/src/sap/cux/home/RecentAppPanel.d.ts +0 -1
  222. package/src/sap/cux/home/RecentAppPanel.d.ts.map +1 -1
  223. package/src/sap/cux/home/RecentAppPanel.js +2 -6
  224. package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
  225. package/src/sap/cux/home/RecentAppPanel.ts +0 -1
  226. package/src/sap/cux/home/RecommendedAppPanel.d.ts +0 -1
  227. package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
  228. package/src/sap/cux/home/RecommendedAppPanel.js +0 -1
  229. package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
  230. package/src/sap/cux/home/RecommendedAppPanel.ts +0 -1
  231. package/src/sap/cux/home/SettingsDialog.d.ts +0 -3
  232. package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
  233. package/src/sap/cux/home/SettingsDialog.js +25 -23
  234. package/src/sap/cux/home/SettingsDialog.js.map +1 -1
  235. package/src/sap/cux/home/SettingsDialog.ts +9 -16
  236. package/src/sap/cux/home/SituationPanel.d.ts +0 -1
  237. package/src/sap/cux/home/SituationPanel.d.ts.map +1 -1
  238. package/src/sap/cux/home/SituationPanel.js +0 -1
  239. package/src/sap/cux/home/SituationPanel.js.map +1 -1
  240. package/src/sap/cux/home/SituationPanel.ts +0 -1
  241. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +207 -0
  242. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -0
  243. package/src/sap/cux/home/SpaceInsightsPanel.gen.d.ts +200 -0
  244. package/src/sap/cux/home/SpaceInsightsPanel.js +786 -0
  245. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -0
  246. package/src/sap/cux/home/SpaceInsightsPanel.ts +628 -0
  247. package/src/sap/cux/home/SpacePanel.d.ts +117 -0
  248. package/src/sap/cux/home/SpacePanel.d.ts.map +1 -0
  249. package/src/sap/cux/home/SpacePanel.gen.d.ts +77 -0
  250. package/src/sap/cux/home/SpacePanel.js +599 -0
  251. package/src/sap/cux/home/SpacePanel.js.map +1 -0
  252. package/src/sap/cux/home/SpacePanel.ts +461 -0
  253. package/src/sap/cux/home/TaskPanel.d.ts +0 -1
  254. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  255. package/src/sap/cux/home/TaskPanel.js +14 -24
  256. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  257. package/src/sap/cux/home/TaskPanel.ts +6 -11
  258. package/src/sap/cux/home/TilesPanel.d.ts +0 -1
  259. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  260. package/src/sap/cux/home/TilesPanel.js +4 -5
  261. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  262. package/src/sap/cux/home/TilesPanel.ts +3 -3
  263. package/src/sap/cux/home/ToDoPanel.d.ts +11 -1
  264. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  265. package/src/sap/cux/home/ToDoPanel.js +67 -17
  266. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  267. package/src/sap/cux/home/ToDoPanel.ts +70 -13
  268. package/src/sap/cux/home/ToDosContainer.d.ts +0 -1
  269. package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
  270. package/src/sap/cux/home/ToDosContainer.js +0 -1
  271. package/src/sap/cux/home/ToDosContainer.js.map +1 -1
  272. package/src/sap/cux/home/ToDosContainer.ts +0 -1
  273. package/src/sap/cux/home/i18n/messagebundle.properties +8 -6
  274. package/src/sap/cux/home/i18n/messagebundle_ar.properties +55 -9
  275. package/src/sap/cux/home/i18n/messagebundle_bg.properties +55 -9
  276. package/src/sap/cux/home/i18n/messagebundle_ca.properties +55 -9
  277. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +55 -9
  278. package/src/sap/cux/home/i18n/messagebundle_cs.properties +59 -13
  279. package/src/sap/cux/home/i18n/messagebundle_cy.properties +55 -9
  280. package/src/sap/cux/home/i18n/messagebundle_da.properties +55 -9
  281. package/src/sap/cux/home/i18n/messagebundle_de.properties +55 -9
  282. package/src/sap/cux/home/i18n/messagebundle_el.properties +55 -9
  283. package/src/sap/cux/home/i18n/messagebundle_en.properties +55 -9
  284. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +55 -9
  285. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +55 -9
  286. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +46 -6
  287. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +55 -9
  288. package/src/sap/cux/home/i18n/messagebundle_es.properties +62 -16
  289. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +55 -9
  290. package/src/sap/cux/home/i18n/messagebundle_et.properties +55 -9
  291. package/src/sap/cux/home/i18n/messagebundle_fi.properties +54 -8
  292. package/src/sap/cux/home/i18n/messagebundle_fr.properties +55 -9
  293. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +55 -9
  294. package/src/sap/cux/home/i18n/messagebundle_hi.properties +55 -9
  295. package/src/sap/cux/home/i18n/messagebundle_hr.properties +55 -9
  296. package/src/sap/cux/home/i18n/messagebundle_hu.properties +56 -10
  297. package/src/sap/cux/home/i18n/messagebundle_id.properties +55 -9
  298. package/src/sap/cux/home/i18n/messagebundle_it.properties +55 -9
  299. package/src/sap/cux/home/i18n/messagebundle_iw.properties +55 -9
  300. package/src/sap/cux/home/i18n/messagebundle_ja.properties +55 -9
  301. package/src/sap/cux/home/i18n/messagebundle_kk.properties +56 -10
  302. package/src/sap/cux/home/i18n/messagebundle_ko.properties +58 -12
  303. package/src/sap/cux/home/i18n/messagebundle_lt.properties +55 -9
  304. package/src/sap/cux/home/i18n/messagebundle_lv.properties +55 -9
  305. package/src/sap/cux/home/i18n/messagebundle_mk.properties +55 -9
  306. package/src/sap/cux/home/i18n/messagebundle_ms.properties +55 -9
  307. package/src/sap/cux/home/i18n/messagebundle_nl.properties +55 -9
  308. package/src/sap/cux/home/i18n/messagebundle_no.properties +55 -9
  309. package/src/sap/cux/home/i18n/messagebundle_pl.properties +56 -10
  310. package/src/sap/cux/home/i18n/messagebundle_pt.properties +55 -9
  311. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +55 -9
  312. package/src/sap/cux/home/i18n/messagebundle_ro.properties +55 -9
  313. package/src/sap/cux/home/i18n/messagebundle_ru.properties +55 -9
  314. package/src/sap/cux/home/i18n/messagebundle_sh.properties +55 -9
  315. package/src/sap/cux/home/i18n/messagebundle_sk.properties +55 -9
  316. package/src/sap/cux/home/i18n/messagebundle_sl.properties +55 -9
  317. package/src/sap/cux/home/i18n/messagebundle_sr.properties +55 -9
  318. package/src/sap/cux/home/i18n/messagebundle_sv.properties +55 -9
  319. package/src/sap/cux/home/i18n/messagebundle_th.properties +55 -9
  320. package/src/sap/cux/home/i18n/messagebundle_tr.properties +55 -9
  321. package/src/sap/cux/home/i18n/messagebundle_uk.properties +57 -11
  322. package/src/sap/cux/home/i18n/messagebundle_vi.properties +55 -9
  323. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +55 -9
  324. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +56 -10
  325. package/src/sap/cux/home/interface/AppsInterface.d.ts +1 -0
  326. package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
  327. package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
  328. package/src/sap/cux/home/interface/AppsInterface.ts +1 -0
  329. package/src/sap/cux/home/library.d.ts +3 -4
  330. package/src/sap/cux/home/library.d.ts.map +1 -1
  331. package/src/sap/cux/home/library.js +3 -4
  332. package/src/sap/cux/home/library.js.map +1 -1
  333. package/src/sap/cux/home/library.ts +3 -4
  334. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +1 -1
  335. package/src/sap/cux/home/themes/base/InsightsContainer.less +4 -0
  336. package/src/sap/cux/home/utils/Accessibility.js +3 -4
  337. package/src/sap/cux/home/utils/Accessibility.js.map +1 -1
  338. package/src/sap/cux/home/utils/Accessibility.ts +2 -2
  339. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.d.ts +0 -1
  340. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.d.ts.map +1 -1
  341. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.js +0 -1
  342. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.js.map +1 -1
  343. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.ts +0 -1
  344. package/src/sap/cux/home/utils/AppManager.d.ts +12 -7
  345. package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
  346. package/src/sap/cux/home/utils/AppManager.js +172 -172
  347. package/src/sap/cux/home/utils/AppManager.js.map +1 -1
  348. package/src/sap/cux/home/utils/AppManager.ts +42 -23
  349. package/src/sap/cux/home/utils/BatchHelper.d.ts +0 -3
  350. package/src/sap/cux/home/utils/BatchHelper.d.ts.map +1 -1
  351. package/src/sap/cux/home/utils/BatchHelper.js +5 -10
  352. package/src/sap/cux/home/utils/BatchHelper.js.map +1 -1
  353. package/src/sap/cux/home/utils/BatchHelper.ts +0 -3
  354. package/src/sap/cux/home/utils/CommonUtils.d.ts +9 -0
  355. package/src/sap/cux/home/utils/CommonUtils.d.ts.map +1 -1
  356. package/src/sap/cux/home/utils/CommonUtils.js +23 -2
  357. package/src/sap/cux/home/utils/CommonUtils.js.map +1 -1
  358. package/src/sap/cux/home/utils/CommonUtils.ts +25 -1
  359. package/src/sap/cux/home/utils/Constants.d.ts +4 -5
  360. package/src/sap/cux/home/utils/Constants.d.ts.map +1 -1
  361. package/src/sap/cux/home/utils/Constants.js +5 -5
  362. package/src/sap/cux/home/utils/Constants.js.map +1 -1
  363. package/src/sap/cux/home/utils/Constants.ts +4 -5
  364. package/src/sap/cux/home/utils/DecisionDialog.d.ts +0 -3
  365. package/src/sap/cux/home/utils/DecisionDialog.d.ts.map +1 -1
  366. package/src/sap/cux/home/utils/DecisionDialog.js +0 -3
  367. package/src/sap/cux/home/utils/DecisionDialog.js.map +1 -1
  368. package/src/sap/cux/home/utils/DecisionDialog.ts +0 -3
  369. package/src/sap/cux/home/utils/Device.js +1 -2
  370. package/src/sap/cux/home/utils/Device.js.map +1 -1
  371. package/src/sap/cux/home/utils/FESRUtil.js +1 -1
  372. package/src/sap/cux/home/utils/FESRUtil.js.map +1 -1
  373. package/src/sap/cux/home/utils/FESRUtil.ts +1 -1
  374. package/src/sap/cux/home/utils/FeatureUtils.d.ts +20 -13
  375. package/src/sap/cux/home/utils/FeatureUtils.d.ts.map +1 -1
  376. package/src/sap/cux/home/utils/FeatureUtils.js +38 -33
  377. package/src/sap/cux/home/utils/FeatureUtils.js.map +1 -1
  378. package/src/sap/cux/home/utils/FeatureUtils.ts +39 -32
  379. package/src/sap/cux/home/utils/HttpHelper.d.ts +7 -3
  380. package/src/sap/cux/home/utils/HttpHelper.d.ts.map +1 -1
  381. package/src/sap/cux/home/utils/HttpHelper.js +43 -3
  382. package/src/sap/cux/home/utils/HttpHelper.js.map +1 -1
  383. package/src/sap/cux/home/utils/HttpHelper.ts +25 -3
  384. package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +1 -1
  385. package/src/sap/cux/home/utils/KeyUserPersonalization.js +33 -13
  386. package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +1 -1
  387. package/src/sap/cux/home/utils/KeyUserPersonalization.ts +2 -2
  388. package/src/sap/cux/home/utils/PageManager.d.ts +0 -3
  389. package/src/sap/cux/home/utils/PageManager.d.ts.map +1 -1
  390. package/src/sap/cux/home/utils/PageManager.js +8 -14
  391. package/src/sap/cux/home/utils/PageManager.js.map +1 -1
  392. package/src/sap/cux/home/utils/PageManager.ts +0 -3
  393. package/src/sap/cux/home/utils/PersonalisationUtils.d.ts +0 -3
  394. package/src/sap/cux/home/utils/PersonalisationUtils.d.ts.map +1 -1
  395. package/src/sap/cux/home/utils/PersonalisationUtils.js +1 -5
  396. package/src/sap/cux/home/utils/PersonalisationUtils.js.map +1 -1
  397. package/src/sap/cux/home/utils/PersonalisationUtils.ts +0 -3
  398. package/src/sap/cux/home/utils/SituationUtils.js +1 -2
  399. package/src/sap/cux/home/utils/SituationUtils.js.map +1 -1
  400. package/src/sap/cux/home/utils/TaskUtils.js +1 -2
  401. package/src/sap/cux/home/utils/TaskUtils.js.map +1 -1
  402. package/src/sap/cux/home/utils/UshellPersonalizer.d.ts +0 -3
  403. package/src/sap/cux/home/utils/UshellPersonalizer.d.ts.map +1 -1
  404. package/src/sap/cux/home/utils/UshellPersonalizer.js +0 -3
  405. package/src/sap/cux/home/utils/UshellPersonalizer.js.map +1 -1
  406. package/src/sap/cux/home/utils/UshellPersonalizer.ts +0 -3
  407. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +16 -17
  408. package/src/sap/cux/home/utils/CardSkeleton.d.ts +0 -54
  409. package/src/sap/cux/home/utils/CardSkeleton.d.ts.map +0 -1
  410. package/src/sap/cux/home/utils/CardSkeleton.js +0 -61
  411. package/src/sap/cux/home/utils/CardSkeleton.js.map +0 -1
  412. package/src/sap/cux/home/utils/CardSkeleton.ts +0 -53
@@ -184,10 +184,7 @@ const _isVisualizationAlreadyAdded = (visualization: ICustomVisualization, favor
184
184
  * @author SAP SE
185
185
  * @version 0.0.1
186
186
  * @since 1.121.0
187
- *
188
187
  * @private
189
- * @experimental Since 1.121
190
- * @hidden
191
188
  *
192
189
  * @alias sap.cux.home.util.AppManager
193
190
  */
@@ -229,21 +226,21 @@ export default class AppManager extends BaseObject {
229
226
  * @returns {Promise} - returns a promise which resolves with the requested page data
230
227
  * @private
231
228
  */
232
- private async _fetchRequestFromQueue(bForceRefresh: boolean): Promise<IPage> {
229
+ private async _fetchRequestFromQueue(bForceRefresh: boolean, pageId: string = MYHOME_PAGE_ID): Promise<IPage> {
233
230
  const oSpaceContentService = await Container.getServiceAsync<SpaceContent>("SpaceContent");
234
231
  let oPageLoadPromise: Promise<IPage>;
235
232
  this.aRequestQueue = this.aRequestQueue || [];
236
233
 
237
234
  //Check if request already exists in the queue, if not add it
238
- const oRequestedPage = this.aRequestQueue.find((oRequest) => oRequest.pageId === MYHOME_PAGE_ID);
235
+ const oRequestedPage = this.aRequestQueue.find((oRequest) => oRequest.pageId === pageId);
239
236
  if (!oRequestedPage || bForceRefresh === true || this.vizDataModified === true) {
240
237
  this.vizDataModified = false;
241
- oPageLoadPromise = oSpaceContentService.getPage(MYHOME_PAGE_ID);
238
+ oPageLoadPromise = oSpaceContentService.getPage(pageId);
242
239
  if (oRequestedPage) {
243
240
  oRequestedPage.pageLoadPromise = oPageLoadPromise;
244
241
  } else {
245
242
  this.aRequestQueue.push({
246
- pageId: MYHOME_PAGE_ID,
243
+ pageId: pageId,
247
244
  pageLoadPromise: oPageLoadPromise
248
245
  });
249
246
  }
@@ -272,8 +269,8 @@ export default class AppManager extends BaseObject {
272
269
  * @returns {Promise} - resolves to array of all sections available in MyHome page
273
270
  * @private
274
271
  */
275
- public async _getSections(bForceRefresh: boolean = false): Promise<ISection[]> {
276
- const oPage: IPage = await this._fetchRequestFromQueue(bForceRefresh);
272
+ public async _getSections(bForceRefresh: boolean = false, pageId: string = MYHOME_PAGE_ID): Promise<ISection[]> {
273
+ const oPage: IPage = await this._fetchRequestFromQueue(bForceRefresh, pageId);
277
274
  const aSections = (oPage && oPage.sections) || [],
278
275
  iRecentAppSectionIndex: number = aSections.findIndex((oSection) => oSection.default);
279
276
  if (iRecentAppSectionIndex > 0) {
@@ -293,10 +290,10 @@ export default class AppManager extends BaseObject {
293
290
  * @returns {Promise} - resolves to array of all apps available in MyHome page
294
291
  * @private
295
292
  */
296
- private async _fetchMyHomeVizs(bForceRefresh: boolean): Promise<ICustomVisualization[]> {
293
+ private async _fetchPageVizs(bForceRefresh: boolean, pageId: string = MYHOME_PAGE_ID): Promise<ICustomVisualization[]> {
297
294
  const aVizs: ICustomVisualization[] = [];
298
295
  this._oVizCacheData = this._oVizCacheData || {};
299
- const aSections = await this._getSections(bForceRefresh);
296
+ const aSections = await this._getSections(bForceRefresh, pageId);
300
297
  const oVizInstantiationService = await Container.getServiceAsync<VisualizationInstantiation>("VisualizationInstantiation");
301
298
  aSections.forEach((oSection: ISection, iSectionIndex: number) => {
302
299
  oSection?.visualizations?.forEach((oVisualization: IVisualization, iVisualizationIndex: number) => {
@@ -316,6 +313,7 @@ export default class AppManager extends BaseObject {
316
313
  oViz.BGColor = DEFAULT_BG_COLOR().key;
317
314
  oViz.isFav = true;
318
315
  oViz.isSection = false;
316
+ oViz.pageId = pageId;
319
317
  oViz.icon = vizConfig?.["sap.ui"]?.icons?.icon || FALLBACK_ICON;
320
318
  if (oVisualization?.indicatorDataSource) {
321
319
  oViz.isCount = true;
@@ -374,8 +372,12 @@ export default class AppManager extends BaseObject {
374
372
  * @returns {Promise} - resolves to array of favourite vizualizations in MyHome page
375
373
  * @private
376
374
  */
377
- public async fetchFavVizs(bForceRefresh: boolean, bPreventGrouping?: boolean): Promise<ISectionAndVisualization[]> {
378
- const aMyHomeVizs = await this._fetchMyHomeVizs(bForceRefresh);
375
+ public async fetchFavVizs(
376
+ bForceRefresh: boolean,
377
+ bPreventGrouping?: boolean,
378
+ pageId: string = MYHOME_PAGE_ID
379
+ ): Promise<ISectionAndVisualization[]> {
380
+ const aMyHomeVizs = await this._fetchPageVizs(bForceRefresh, pageId);
379
381
  const aVisibleFavVizs = aMyHomeVizs.filter(
380
382
  (oViz) => oViz.persConfig && oViz.persConfig.sectionId !== MYINSIGHT_SECTION_ID && oViz.url && oViz.title
381
383
  );
@@ -395,7 +397,7 @@ export default class AppManager extends BaseObject {
395
397
  */
396
398
  public async fetchInsightApps(bForceRefresh: boolean, sSectionTitle: string) {
397
399
  const fnFetchInsightsApps = async () => {
398
- const aVizs = await this._fetchMyHomeVizs(bForceRefresh);
400
+ const aVizs = await this._fetchPageVizs(bForceRefresh);
399
401
  return aVizs.filter((oViz) => oViz.persConfig?.sectionId === MYINSIGHT_SECTION_ID && oViz.url && oViz.title);
400
402
  };
401
403
 
@@ -542,8 +544,12 @@ export default class AppManager extends BaseObject {
542
544
  * @returns {Promise} resolves to array of visualizations
543
545
  * @private
544
546
  */
545
- public async getSectionVisualizations(sectionId?: string, forceRefresh = false): Promise<ICustomVisualization[]> {
546
- const aApps: ISectionAndVisualization[] = await this.fetchFavVizs(forceRefresh);
547
+ public async getSectionVisualizations(
548
+ sectionId?: string,
549
+ forceRefresh = false,
550
+ pageId: string = MYHOME_PAGE_ID
551
+ ): Promise<ICustomVisualization[]> {
552
+ const aApps: ISectionAndVisualization[] = await this.fetchFavVizs(forceRefresh, false, pageId);
547
553
  if (sectionId) {
548
554
  return aApps.find((oViz) => oViz.isSection && oViz.id === sectionId)?.apps || [];
549
555
  } else {
@@ -659,6 +665,7 @@ export default class AppManager extends BaseObject {
659
665
  BGColor: DEFAULT_BG_COLOR().key,
660
666
  icon: "sap-icon://folder-full",
661
667
  isSection: true,
668
+ pageId: oViz.pageId,
662
669
  isPresetSection: oViz.persConfig?.isPresetSection,
663
670
  apps: [oViz]
664
671
  });
@@ -1204,7 +1211,7 @@ export default class AppManager extends BaseObject {
1204
1211
  let mustIncludeRecommendations: ICustomVisualization[] = [];
1205
1212
  let [recommendedVisualizations, favoriteVisualizations] = await Promise.all([
1206
1213
  this._getVisualizationsByFioriIds(recommendedFioriIds),
1207
- this._fetchMyHomeVizs(forceRefresh)
1214
+ this._fetchPageVizs(forceRefresh)
1208
1215
  ]);
1209
1216
  //filter out recommendations that are already added
1210
1217
  recommendedVisualizations = recommendedVisualizations.filter((recViz) =>
@@ -1380,7 +1387,7 @@ export default class AppManager extends BaseObject {
1380
1387
  if (!shouldReload && !shouldLoadMissingApps) {
1381
1388
  return this._favPageVisualizations;
1382
1389
  } else {
1383
- this._favPageVisualizations = await this._loadAllPageVisualizations(pages);
1390
+ this._favPageVisualizations = await this._loadAllPageVisualizations(pages, shouldReload);
1384
1391
  return this._favPageVisualizations;
1385
1392
  }
1386
1393
  }
@@ -1398,19 +1405,21 @@ export default class AppManager extends BaseObject {
1398
1405
  * @returns {Promise<ICustomVisualization[]>} A promise that resolves with an array of page visualizations.
1399
1406
  * @private
1400
1407
  */
1401
- private async _loadAllPageVisualizations(pages: IPage[], shouldFetchDistinctApps = false): Promise<ICustomVisualization[]> {
1408
+ private async _loadAllPageVisualizations(
1409
+ pages: IPage[],
1410
+ forceRefresh = false,
1411
+ shouldFetchDistinctApps = false
1412
+ ): Promise<ICustomVisualization[]> {
1402
1413
  const getBgColor = (pageId: string | undefined) => {
1403
1414
  return pages.find((page) => page.pageId === pageId)?.BGColor ?? DEFAULT_BG_COLOR().key;
1404
1415
  };
1405
1416
 
1406
1417
  try {
1407
1418
  const favPageVisualizations: ICustomVisualization[] = [];
1408
- const spaceContentService = await Container.getServiceAsync<SpaceContent>("SpaceContent");
1409
- const pageData = await spaceContentService.getPages(pages.map((oPage) => oPage.pageId) as string[]);
1410
- const aPages = Object.values(pageData);
1419
+ const aPages = await this.loadPages(pages, forceRefresh);
1411
1420
 
1412
1421
  for (const page of aPages) {
1413
- const sections = page.sections || [];
1422
+ const sections = page?.sections || [];
1414
1423
  for (const section of sections) {
1415
1424
  const visualizations = section.visualizations || [];
1416
1425
  for (const visualization of visualizations) {
@@ -1433,4 +1442,14 @@ export default class AppManager extends BaseObject {
1433
1442
  return [];
1434
1443
  }
1435
1444
  }
1445
+ /**
1446
+ * Fetches page data for the specified pages.
1447
+ * @param {Array} pages - An array of pages.
1448
+ * @param {boolean} forceRefresh - If true, forces a refresh of the page data.
1449
+ * @returns {Promise<IPage>} A promise that resolves to the fetched page data.
1450
+ * @private
1451
+ */
1452
+ private async loadPages(pages: IPage[], forceRefresh: boolean = false): Promise<IPage[]> {
1453
+ return await Promise.all(pages.map((page) => this._fetchRequestFromQueue(forceRefresh, page.pageId)));
1454
+ }
1436
1455
  }
@@ -82,9 +82,6 @@ declare module "sap/cux/home/utils/BatchHelper" {
82
82
  * @author SAP SE
83
83
  * @version 0.0.1
84
84
  * @since 1.121
85
- *
86
- * @internal
87
- * @experimental Since 1.121
88
85
  * @private
89
86
  *
90
87
  * @alias sap.cux.home.utils.BatchHelper
@@ -1 +1 @@
1
- {"version":3,"file":"BatchHelper.d.ts","sourceRoot":"../../../../../..","sources":["src/sap/cux/home/utils/BatchHelper.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAChD;;;OAGG;IAEH,OAAO,UAAU,MAAM,oBAAoB,CAAC;IAE5C,KAAK,OAAO;QACX,GAAG,QAAQ;QACX,IAAI,SAAS;QACb,GAAG,QAAQ;QACX,KAAK,UAAU;QACf,MAAM,WAAW;QACjB,IAAI,SAAS;KACb;IAED,UAAU,OAAO;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACd;IAED,MAAM,SAAS,GAAI,KAAK,MAAM,YAE7B,CAAC;IAEF;;OAEG;IACH,MAAM,gBAAgB;QACrB,OAAO,CAAC,GAAG,CAAS;QACpB,OAAO,CAAC,aAAa,CAA0B;QAC/C,OAAO,CAAC,QAAQ,CAAS;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,OAAO,CAAC;QAEzB;;;;;WAKG;oBACS,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM;QAiBnE;;;;;WAKG;QACI,cAAc,IAAI,MAAM;QAkB/B;;;;;WAKG;QACI,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;QAIlD;;;;;WAKG;QACI,wBAAwB,IAAI,MAAM;KAuBzC;IAED;;;;;;OAMG;IACH,MAAM,mBAAmB,GAAa,OAAO,MAAM,KAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAmBtE,CAAC;IAEF;;;;;;;OAOG;IACH,MAAM,cAAc,GAAmB,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAoBtE,CAAC;IAEF;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,UAAU;QAClD,OAAO,CAAC,GAAG,CAAU;QAErB;;;;;;WAMG;gBACW,SAAS;QAkBvB;;;;;;;WAOG;QACU,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAOrG;;;;;;;;WAQG;QACU,iCAAiC,CAC7C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,OAAO,CAAA;SAAE,EAAE,EAC1C,aAAa,EAAE,OAAO,GACpB,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAOlC;;;;;;WAMG;QACH,OAAO,CAAC,qBAAqB;QAY7B;;;;;;;WAOG;QACH,OAAO,CAAC,gCAAgC;KAexC;CAEA"}
1
+ {"version":3,"file":"BatchHelper.d.ts","sourceRoot":"../../../../../..","sources":["src/sap/cux/home/utils/BatchHelper.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAChD;;;OAGG;IAEH,OAAO,UAAU,MAAM,oBAAoB,CAAC;IAE5C,KAAK,OAAO;QACX,GAAG,QAAQ;QACX,IAAI,SAAS;QACb,GAAG,QAAQ;QACX,KAAK,UAAU;QACf,MAAM,WAAW;QACjB,IAAI,SAAS;KACb;IAED,UAAU,OAAO;QAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChC,MAAM,EAAE,OAAO,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACd;IAED,MAAM,SAAS,GAAI,KAAK,MAAM,YAE7B,CAAC;IAEF;;OAEG;IACH,MAAM,gBAAgB;QACrB,OAAO,CAAC,GAAG,CAAS;QACpB,OAAO,CAAC,aAAa,CAA0B;QAC/C,OAAO,CAAC,QAAQ,CAAS;QAClB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,OAAO,CAAC;QAEzB;;;;;WAKG;oBACS,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM;QAiBnE;;;;;WAKG;QACI,cAAc,IAAI,MAAM;QAkB/B;;;;;WAKG;QACI,UAAU,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;QAIlD;;;;;WAKG;QACI,wBAAwB,IAAI,MAAM;KAuBzC;IAED;;;;;;OAMG;IACH,MAAM,mBAAmB,GAAa,OAAO,MAAM,KAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAmBtE,CAAC;IAEF;;;;;;;OAOG;IACH,MAAM,cAAc,GAAmB,SAAS,MAAM,KAAG,OAAO,CAAC,MAAM,CAoBtE,CAAC;IAEF;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,UAAU;QAClD,OAAO,CAAC,GAAG,CAAU;QAErB;;;;;;WAMG;gBACW,SAAS;QAkBvB;;;;;;;WAOG;QACU,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAOrG;;;;;;;;WAQG;QACU,iCAAiC,CAC7C,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE;YAAE,GAAG,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,OAAO,CAAA;SAAE,EAAE,EAC1C,aAAa,EAAE,OAAO,GACpB,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAOlC;;;;;;WAMG;QACH,OAAO,CAAC,qBAAqB;QAY7B;;;;;;;WAOG;QACH,OAAO,CAAC,gCAAgC;KAexC;CAEA"}
@@ -185,9 +185,6 @@ sap.ui.define(["sap/ui/base/Object"], function (BaseObject) {
185
185
  * @author SAP SE
186
186
  * @version 0.0.1
187
187
  * @since 1.121
188
- *
189
- * @internal
190
- * @experimental Since 1.121
191
188
  * @private
192
189
  *
193
190
  * @alias sap.cux.home.utils.BatchHelper
@@ -263,8 +260,7 @@ sap.ui.define(["sap/ui/base/Object"], function (BaseObject) {
263
260
  * @param {string[]} urls - An array of URLs for individual requests.
264
261
  * @returns {MultiPartRequest} - The multipart request object.
265
262
  */
266
- buildMultipartRequest: function _buildMultipartRequest(urls, csrfToken) {
267
- let requestMethod = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : methods.GET;
263
+ buildMultipartRequest: function _buildMultipartRequest(urls, csrfToken, requestMethod = methods.GET) {
268
264
  // create base request from first URL
269
265
  const request = new MultiPartRequest(urls[0], requestMethod, csrfToken);
270
266
 
@@ -285,11 +281,10 @@ sap.ui.define(["sap/ui/base/Object"], function (BaseObject) {
285
281
  buildMultipartRequestWithPayload: function _buildMultipartRequestWithPayload(payloads, csrfToken, requestMethod) {
286
282
  const request = new MultiPartRequest(payloads[0].url, requestMethod, csrfToken);
287
283
  request.payload = payloads[0].data;
288
- payloads.forEach(_ref => {
289
- let {
290
- url,
291
- data
292
- } = _ref;
284
+ payloads.forEach(({
285
+ url,
286
+ data
287
+ }) => {
293
288
  const multipartRequest = new MultiPartRequest(url, requestMethod, csrfToken);
294
289
  multipartRequest.payload = data;
295
290
  request.addRequest(multipartRequest);
@@ -1 +1 @@
1
- {"version":3,"file":"BatchHelper.js","names":["sap","ui","define","BaseObject","_catch","body","recover","result","e","then","methods","isEncoded","url","test","MultiPartRequest","batchRequests","constructor","requestMethod","csrfToken","encodeURI","boundary","Date","now","options","headers","method","_constructBody","BOUNDARY","REQUEST_HEADERS","REQUEST_BODY","index","length","request","boundaryEnd","addRequest","push","constructBodyWithPayload","changeSet","CHANGESET_BOUNDARY","CHANGESET_HEADER","JSON","stringify","payload","getDataFromRawValue","value","parsedValue","split","filter","data","finalData","contentTypeValue","includes","parse","fetchCSRFToken","baseURL","Promise","resolve","fetch","HEAD","response","ok","token","get","Error","error","message","reject","BatchHelper","extend","fetchData","_fetchData","multiPartRequest","_this","GET","POST","text","createMultipartRequest","_createMultipartRequest","urls","_this2","buildMultipartRequest","createMultipartRequestWithPayload","_createMultipartRequestWithPayload","payloads","_this3","buildMultipartRequestWithPayload","_buildMultipartRequest","arguments","undefined","forEach","_buildMultipartRequestWithPayload","_ref","multipartRequest"],"sources":["BatchHelper.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport BaseObject from \"sap/ui/base/Object\";\n\nenum methods {\n\tGET = \"GET\",\n\tPOST = \"POST\",\n\tPUT = \"PUT\",\n\tPATCH = \"PATCH\",\n\tDELETE = \"DELETE\",\n\tHEAD = \"HEAD\"\n}\n\ninterface Options {\n\theaders: Record<string, string>;\n\tmethod: methods;\n\tbody?: string;\n}\n\nconst isEncoded = (url: string) => {\n\treturn /%[0-9A-F]{2}/i.test(url);\n};\n\n/**\n * Represents a multipart request.\n */\nclass MultiPartRequest {\n\tprivate url: string;\n\tprivate batchRequests: MultiPartRequest[] = [];\n\tprivate boundary: string;\n\tpublic options: Options;\n\tpublic payload?: unknown;\n\n\t/**\n\t * Creates a MultiPartRequest object.\n\t *\n\t * @param {string} url - The URL for the multipart request.\n\t * @constructor\n\t */\n\tconstructor(url: string, requestMethod: methods, csrfToken?: string) {\n\t\t//encode the URL if it is not already encoded\n\t\tthis.url = isEncoded(url) ? url : encodeURI(url);\n\t\tthis.boundary = `batch_id_${Date.now()}_01`;\n\t\tthis.options = {\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": `multipart/mixed;boundary=${this.boundary}`\n\t\t\t},\n\t\t\tmethod: requestMethod\n\t\t};\n\n\t\t// Add CSRF token to headers if available\n\t\tif (csrfToken) {\n\t\t\tthis.options.headers[\"X-CSRF-Token\"] = csrfToken;\n\t\t}\n\t}\n\n\t/**\n\t * Constructs the body for the multipart request.\n\t *\n\t * @returns {string} - The constructed body.\n\t * @private\n\t */\n\tpublic _constructBody(): string {\n\t\tconst BOUNDARY = `--${this.boundary}`;\n\t\tconst REQUEST_HEADERS = `Content-Type: application/http\\r\\nContent-Transfer-Encoding: binary\\r\\n`;\n\t\tconst REQUEST_BODY = `Accept: application/json\\r\\n\\r\\n\\r\\n`;\n\n\t\tlet body = `${BOUNDARY}\\r\\n`;\n\n\t\tfor (let index = 0; index < this.batchRequests.length; index++) {\n\t\t\tconst request = this.batchRequests[index];\n\t\t\tconst boundaryEnd = index === this.batchRequests.length - 1 ? \"--\\r\\n\" : \"\\r\\n\";\n\t\t\tbody += `${REQUEST_HEADERS}\\r\\n`;\n\t\t\tbody += `${request.options.method} ${request.url} HTTP/1.1\\r\\n${REQUEST_BODY}`;\n\t\t\tbody += `${BOUNDARY}${boundaryEnd}`;\n\t\t}\n\n\t\treturn body;\n\t}\n\n\t/**\n\t * Adds a request to the MultiPartRequest batch.\n\t *\n\t * @public\n\t * @param {Object} request - The request to add to the batch.\n\t */\n\tpublic addRequest(request: MultiPartRequest): void {\n\t\tthis.batchRequests.push(request);\n\t}\n\n\t/**\n\t * Constructs the body for the multipart request with payload\n\t *\n\t * @returns {string} - The constructed body.\n\t * @private\n\t */\n\tpublic constructBodyWithPayload(): string {\n\t\tconst BOUNDARY = `--${this.boundary}`;\n\t\tconst REQUEST_HEADERS = \"Content-Type:application/http\\r\\nContent-Transfer-Encoding:binary\\r\\n\";\n\t\tlet body = `${BOUNDARY}\\r\\n`;\n\t\tconst changeSet = \"changeset_001\";\n\t\tconst CHANGESET_BOUNDARY = `--${changeSet}`;\n\t\tconst CHANGESET_HEADER = `Content-Type: multipart/mixed; boundary=${changeSet}\\r\\n`;\n\t\tbody += `${CHANGESET_HEADER}\\r\\n${CHANGESET_BOUNDARY}\\r\\n`;\n\t\tfor (let index = 0; index < this.batchRequests.length; index++) {\n\t\t\tconst request = this.batchRequests[index];\n\t\t\tbody += `\\r\\n${REQUEST_HEADERS}`;\n\t\t\tbody += `Content-ID: ${index + 1}\\r\\n\\r\\n`;\n\t\t\tbody += `${request.options.method} ${request.url} HTTP/1.1\\r\\n`;\n\t\t\tbody += \"sap-context-accept: header\\r\\nContent-Type:application/json\\r\\n\\r\\n\";\n\t\t\tbody += `${JSON.stringify(request.payload)}\\r\\n\\r\\n`;\n\t\t\tbody += CHANGESET_BOUNDARY;\n\t\t\tif (index === this.batchRequests.length - 1) {\n\t\t\t\tbody += \"--\\r\\n\";\n\t\t\t\tbody += `${BOUNDARY}--`;\n\t\t\t}\n\t\t}\n\t\treturn body;\n\t}\n}\n\n/**\n * Parses multipart body response and returns an array of values called in the batch request.\n *\n * @param {string} value - Multipart body response.\n * @returns {Object[]} - Array of values in the multipart request.\n * @returns {Object[]} - An array of values in the multipart request.\n */\nconst getDataFromRawValue = function (value: string): (string | object)[] {\n\tconst parsedValue = value.split(\"\\r\\n\").filter((data) => data !== \"\");\n\n\tconst finalData: (string | object)[] = [];\n\tlet contentTypeValue = \"\";\n\n\tfor (let index = 1; index < parsedValue.length - 1; index++) {\n\t\tcontentTypeValue = parsedValue[index].includes(\"Content-Type: \") ? parsedValue[index].split(\"Content-Type: \")[1] : contentTypeValue;\n\n\t\tif (parsedValue[index + 1].includes(parsedValue[0])) {\n\t\t\tif (contentTypeValue === \"application/json\") {\n\t\t\t\tfinalData.push(JSON.parse(parsedValue[index]) as string);\n\t\t\t} else {\n\t\t\t\tfinalData.push(parsedValue[index]);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn finalData;\n};\n\n/**\n * Fetches the CSRF token from the specified base URL.\n *\n * @async\n * @param {string} baseURL - The base URL to fetch the CSRF token from.\n * @returns {Promise<string>} A Promise that resolves when all batch requests are completed. A promise that resolves to the CSRF token.\n * @throws {Error} An error if the CSRF token cannot be fetched.\n */\nconst fetchCSRFToken = async function (baseURL: string): Promise<string> {\n\ttry {\n\t\tconst response = await fetch(baseURL, {\n\t\t\tmethod: methods.HEAD,\n\t\t\theaders: {\n\t\t\t\t\"X-CSRF-Token\": \"Fetch\"\n\t\t\t}\n\t\t});\n\n\t\tif (response.ok) {\n\t\t\tconst token = response.headers.get(\"X-CSRF-Token\");\n\t\t\tif (token) {\n\t\t\t\treturn token;\n\t\t\t}\n\t\t}\n\n\t\tthrow new Error(\"Cannot fetch X-CSRF-Token.\");\n\t} catch (error: unknown) {\n\t\tthrow new Error((error as Error).message);\n\t}\n};\n\n/**\n *\n * Helper class for managing batch requests.\n *\n * @extends BaseObject\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @internal\n * @experimental Since 1.121\n * @private\n *\n * @alias sap.cux.home.utils.BatchHelper\n */\nexport default class BatchHelper extends BaseObject {\n\tprivate url!: string;\n\n\t/**\n\t * Fetches data from a multipart request.\n\t *\n\t * @private\n\t * @param {MultiPartRequest} multiPartRequest - The multipart request object.\n\t * @returns {Promise<Array<string | object>>} - A promise that resolves to the data from the request.\n\t */\n\tprivate async fetchData(multiPartRequest: MultiPartRequest): Promise<Array<string | object>> {\n\t\tmultiPartRequest.options.body =\n\t\t\tmultiPartRequest.options.method === methods.GET\n\t\t\t\t? multiPartRequest._constructBody()\n\t\t\t\t: multiPartRequest.constructBodyWithPayload();\n\n\t\tmultiPartRequest.options.method = methods.POST;\n\n\t\tconst response = await fetch(this.url, multiPartRequest.options);\n\n\t\tif (!response.ok) {\n\t\t\tthrow new Error(\"Failed to fetch data from the server.\");\n\t\t}\n\n\t\tconst text = await response.text();\n\t\treturn getDataFromRawValue(text);\n\t}\n\n\t/**\n\t * Creates a multipart batch request with multiple URLs.\n\t *\n\t * @public\n\t * @param {string} baseURL - The base URL for creating the batch request.\n\t * @param {string[]} urls - An array of URLs for individual requests.\n\t * @returns {Promise<Array<string | object>>} - A promise that resolves to the data from the batch request.\n\t */\n\tpublic async createMultipartRequest(baseURL: string, urls: string[]): Promise<Array<string | object>> {\n\t\tthis.url = `${baseURL}$batch`;\n\t\tconst csrfToken = await fetchCSRFToken(baseURL);\n\t\tconst request = this.buildMultipartRequest(urls, csrfToken);\n\t\treturn await this.fetchData(request);\n\t}\n\n\t/**\n\t * Creates a multipart batch request with given payloads and sends it to the specified base URL.\n\t *\n\t * @public\n\t * @param {string} baseURL - The base URL for creating the batch request.\n\t * @param payloads - An array of objects containing the URL and data for each part of the multipart request.\n\t * @param requestMethod - The HTTP method to be used for the request (e.g., POST).\n\t * @returns {Promise<Array<string | object>>} A promise that resolves to the data from the batch request.\n\t */\n\tpublic async createMultipartRequestWithPayload(\n\t\tbaseURL: string,\n\t\tpayloads: { url: string; data: unknown }[],\n\t\trequestMethod: methods\n\t): Promise<Array<string | object>> {\n\t\tthis.url = `${baseURL}$batch`;\n\t\tconst csrfToken = await fetchCSRFToken(baseURL);\n\t\tconst request = this.buildMultipartRequestWithPayload(payloads, csrfToken, requestMethod);\n\t\treturn await this.fetchData(request);\n\t}\n\n\t/**\n\t * Builds a multipart request from an array of URLs.\n\t *\n\t * @private\n\t * @param {string[]} urls - An array of URLs for individual requests.\n\t * @returns {MultiPartRequest} - The multipart request object.\n\t */\n\tprivate buildMultipartRequest(urls: string[], csrfToken: string, requestMethod: methods = methods.GET): MultiPartRequest {\n\t\t// create base request from first URL\n\t\tconst request = new MultiPartRequest(urls[0], requestMethod, csrfToken);\n\n\t\t// Add all URLs as sub-requests\n\t\turls.forEach((url) => {\n\t\t\trequest.addRequest(new MultiPartRequest(url, requestMethod, csrfToken));\n\t\t});\n\n\t\treturn request;\n\t}\n\n\t/**\n\t * Builds a multipart request with the given payloads, CSRF token, and request method.\n\t *\n\t * @param payloads - An array of objects containing the URL and data for each part of the request.\n\t * @param csrfToken - The CSRF token to be included in the request headers.\n\t * @param requestMethod - The HTTP method to be used for the request.\n\t * @returns {MultiPartRequest} A `MultiPartRequest` object containing the constructed multipart request.\n\t */\n\tprivate buildMultipartRequestWithPayload(\n\t\tpayloads: { url: string; data: unknown }[],\n\t\tcsrfToken: string,\n\t\trequestMethod: methods\n\t): MultiPartRequest {\n\t\tconst request = new MultiPartRequest(payloads[0].url, requestMethod, csrfToken);\n\t\trequest.payload = payloads[0].data;\n\t\tpayloads.forEach(({ url, data }) => {\n\t\t\tconst multipartRequest = new MultiPartRequest(url, requestMethod, csrfToken);\n\t\t\tmultipartRequest.payload = data;\n\t\t\trequest.addRequest(multipartRequest);\n\t\t});\n\n\t\treturn request;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"BatchHelper.js","names":["sap","ui","define","BaseObject","_catch","body","recover","result","e","then","methods","isEncoded","url","test","MultiPartRequest","batchRequests","constructor","requestMethod","csrfToken","encodeURI","boundary","Date","now","options","headers","method","_constructBody","BOUNDARY","REQUEST_HEADERS","REQUEST_BODY","index","length","request","boundaryEnd","addRequest","push","constructBodyWithPayload","changeSet","CHANGESET_BOUNDARY","CHANGESET_HEADER","JSON","stringify","payload","getDataFromRawValue","value","parsedValue","split","filter","data","finalData","contentTypeValue","includes","parse","fetchCSRFToken","baseURL","Promise","resolve","fetch","HEAD","response","ok","token","get","Error","error","message","reject","BatchHelper","extend","fetchData","_fetchData","multiPartRequest","_this","GET","POST","text","createMultipartRequest","_createMultipartRequest","urls","_this2","buildMultipartRequest","createMultipartRequestWithPayload","_createMultipartRequestWithPayload","payloads","_this3","buildMultipartRequestWithPayload","_buildMultipartRequest","forEach","_buildMultipartRequestWithPayload","multipartRequest"],"sources":["BatchHelper.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport BaseObject from \"sap/ui/base/Object\";\n\nenum methods {\n\tGET = \"GET\",\n\tPOST = \"POST\",\n\tPUT = \"PUT\",\n\tPATCH = \"PATCH\",\n\tDELETE = \"DELETE\",\n\tHEAD = \"HEAD\"\n}\n\ninterface Options {\n\theaders: Record<string, string>;\n\tmethod: methods;\n\tbody?: string;\n}\n\nconst isEncoded = (url: string) => {\n\treturn /%[0-9A-F]{2}/i.test(url);\n};\n\n/**\n * Represents a multipart request.\n */\nclass MultiPartRequest {\n\tprivate url: string;\n\tprivate batchRequests: MultiPartRequest[] = [];\n\tprivate boundary: string;\n\tpublic options: Options;\n\tpublic payload?: unknown;\n\n\t/**\n\t * Creates a MultiPartRequest object.\n\t *\n\t * @param {string} url - The URL for the multipart request.\n\t * @constructor\n\t */\n\tconstructor(url: string, requestMethod: methods, csrfToken?: string) {\n\t\t//encode the URL if it is not already encoded\n\t\tthis.url = isEncoded(url) ? url : encodeURI(url);\n\t\tthis.boundary = `batch_id_${Date.now()}_01`;\n\t\tthis.options = {\n\t\t\theaders: {\n\t\t\t\t\"Content-Type\": `multipart/mixed;boundary=${this.boundary}`\n\t\t\t},\n\t\t\tmethod: requestMethod\n\t\t};\n\n\t\t// Add CSRF token to headers if available\n\t\tif (csrfToken) {\n\t\t\tthis.options.headers[\"X-CSRF-Token\"] = csrfToken;\n\t\t}\n\t}\n\n\t/**\n\t * Constructs the body for the multipart request.\n\t *\n\t * @returns {string} - The constructed body.\n\t * @private\n\t */\n\tpublic _constructBody(): string {\n\t\tconst BOUNDARY = `--${this.boundary}`;\n\t\tconst REQUEST_HEADERS = `Content-Type: application/http\\r\\nContent-Transfer-Encoding: binary\\r\\n`;\n\t\tconst REQUEST_BODY = `Accept: application/json\\r\\n\\r\\n\\r\\n`;\n\n\t\tlet body = `${BOUNDARY}\\r\\n`;\n\n\t\tfor (let index = 0; index < this.batchRequests.length; index++) {\n\t\t\tconst request = this.batchRequests[index];\n\t\t\tconst boundaryEnd = index === this.batchRequests.length - 1 ? \"--\\r\\n\" : \"\\r\\n\";\n\t\t\tbody += `${REQUEST_HEADERS}\\r\\n`;\n\t\t\tbody += `${request.options.method} ${request.url} HTTP/1.1\\r\\n${REQUEST_BODY}`;\n\t\t\tbody += `${BOUNDARY}${boundaryEnd}`;\n\t\t}\n\n\t\treturn body;\n\t}\n\n\t/**\n\t * Adds a request to the MultiPartRequest batch.\n\t *\n\t * @public\n\t * @param {Object} request - The request to add to the batch.\n\t */\n\tpublic addRequest(request: MultiPartRequest): void {\n\t\tthis.batchRequests.push(request);\n\t}\n\n\t/**\n\t * Constructs the body for the multipart request with payload\n\t *\n\t * @returns {string} - The constructed body.\n\t * @private\n\t */\n\tpublic constructBodyWithPayload(): string {\n\t\tconst BOUNDARY = `--${this.boundary}`;\n\t\tconst REQUEST_HEADERS = \"Content-Type:application/http\\r\\nContent-Transfer-Encoding:binary\\r\\n\";\n\t\tlet body = `${BOUNDARY}\\r\\n`;\n\t\tconst changeSet = \"changeset_001\";\n\t\tconst CHANGESET_BOUNDARY = `--${changeSet}`;\n\t\tconst CHANGESET_HEADER = `Content-Type: multipart/mixed; boundary=${changeSet}\\r\\n`;\n\t\tbody += `${CHANGESET_HEADER}\\r\\n${CHANGESET_BOUNDARY}\\r\\n`;\n\t\tfor (let index = 0; index < this.batchRequests.length; index++) {\n\t\t\tconst request = this.batchRequests[index];\n\t\t\tbody += `\\r\\n${REQUEST_HEADERS}`;\n\t\t\tbody += `Content-ID: ${index + 1}\\r\\n\\r\\n`;\n\t\t\tbody += `${request.options.method} ${request.url} HTTP/1.1\\r\\n`;\n\t\t\tbody += \"sap-context-accept: header\\r\\nContent-Type:application/json\\r\\n\\r\\n\";\n\t\t\tbody += `${JSON.stringify(request.payload)}\\r\\n\\r\\n`;\n\t\t\tbody += CHANGESET_BOUNDARY;\n\t\t\tif (index === this.batchRequests.length - 1) {\n\t\t\t\tbody += \"--\\r\\n\";\n\t\t\t\tbody += `${BOUNDARY}--`;\n\t\t\t}\n\t\t}\n\t\treturn body;\n\t}\n}\n\n/**\n * Parses multipart body response and returns an array of values called in the batch request.\n *\n * @param {string} value - Multipart body response.\n * @returns {Object[]} - Array of values in the multipart request.\n * @returns {Object[]} - An array of values in the multipart request.\n */\nconst getDataFromRawValue = function (value: string): (string | object)[] {\n\tconst parsedValue = value.split(\"\\r\\n\").filter((data) => data !== \"\");\n\n\tconst finalData: (string | object)[] = [];\n\tlet contentTypeValue = \"\";\n\n\tfor (let index = 1; index < parsedValue.length - 1; index++) {\n\t\tcontentTypeValue = parsedValue[index].includes(\"Content-Type: \") ? parsedValue[index].split(\"Content-Type: \")[1] : contentTypeValue;\n\n\t\tif (parsedValue[index + 1].includes(parsedValue[0])) {\n\t\t\tif (contentTypeValue === \"application/json\") {\n\t\t\t\tfinalData.push(JSON.parse(parsedValue[index]) as string);\n\t\t\t} else {\n\t\t\t\tfinalData.push(parsedValue[index]);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn finalData;\n};\n\n/**\n * Fetches the CSRF token from the specified base URL.\n *\n * @async\n * @param {string} baseURL - The base URL to fetch the CSRF token from.\n * @returns {Promise<string>} A Promise that resolves when all batch requests are completed. A promise that resolves to the CSRF token.\n * @throws {Error} An error if the CSRF token cannot be fetched.\n */\nconst fetchCSRFToken = async function (baseURL: string): Promise<string> {\n\ttry {\n\t\tconst response = await fetch(baseURL, {\n\t\t\tmethod: methods.HEAD,\n\t\t\theaders: {\n\t\t\t\t\"X-CSRF-Token\": \"Fetch\"\n\t\t\t}\n\t\t});\n\n\t\tif (response.ok) {\n\t\t\tconst token = response.headers.get(\"X-CSRF-Token\");\n\t\t\tif (token) {\n\t\t\t\treturn token;\n\t\t\t}\n\t\t}\n\n\t\tthrow new Error(\"Cannot fetch X-CSRF-Token.\");\n\t} catch (error: unknown) {\n\t\tthrow new Error((error as Error).message);\n\t}\n};\n\n/**\n *\n * Helper class for managing batch requests.\n *\n * @extends BaseObject\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.utils.BatchHelper\n */\nexport default class BatchHelper extends BaseObject {\n\tprivate url!: string;\n\n\t/**\n\t * Fetches data from a multipart request.\n\t *\n\t * @private\n\t * @param {MultiPartRequest} multiPartRequest - The multipart request object.\n\t * @returns {Promise<Array<string | object>>} - A promise that resolves to the data from the request.\n\t */\n\tprivate async fetchData(multiPartRequest: MultiPartRequest): Promise<Array<string | object>> {\n\t\tmultiPartRequest.options.body =\n\t\t\tmultiPartRequest.options.method === methods.GET\n\t\t\t\t? multiPartRequest._constructBody()\n\t\t\t\t: multiPartRequest.constructBodyWithPayload();\n\n\t\tmultiPartRequest.options.method = methods.POST;\n\n\t\tconst response = await fetch(this.url, multiPartRequest.options);\n\n\t\tif (!response.ok) {\n\t\t\tthrow new Error(\"Failed to fetch data from the server.\");\n\t\t}\n\n\t\tconst text = await response.text();\n\t\treturn getDataFromRawValue(text);\n\t}\n\n\t/**\n\t * Creates a multipart batch request with multiple URLs.\n\t *\n\t * @public\n\t * @param {string} baseURL - The base URL for creating the batch request.\n\t * @param {string[]} urls - An array of URLs for individual requests.\n\t * @returns {Promise<Array<string | object>>} - A promise that resolves to the data from the batch request.\n\t */\n\tpublic async createMultipartRequest(baseURL: string, urls: string[]): Promise<Array<string | object>> {\n\t\tthis.url = `${baseURL}$batch`;\n\t\tconst csrfToken = await fetchCSRFToken(baseURL);\n\t\tconst request = this.buildMultipartRequest(urls, csrfToken);\n\t\treturn await this.fetchData(request);\n\t}\n\n\t/**\n\t * Creates a multipart batch request with given payloads and sends it to the specified base URL.\n\t *\n\t * @public\n\t * @param {string} baseURL - The base URL for creating the batch request.\n\t * @param payloads - An array of objects containing the URL and data for each part of the multipart request.\n\t * @param requestMethod - The HTTP method to be used for the request (e.g., POST).\n\t * @returns {Promise<Array<string | object>>} A promise that resolves to the data from the batch request.\n\t */\n\tpublic async createMultipartRequestWithPayload(\n\t\tbaseURL: string,\n\t\tpayloads: { url: string; data: unknown }[],\n\t\trequestMethod: methods\n\t): Promise<Array<string | object>> {\n\t\tthis.url = `${baseURL}$batch`;\n\t\tconst csrfToken = await fetchCSRFToken(baseURL);\n\t\tconst request = this.buildMultipartRequestWithPayload(payloads, csrfToken, requestMethod);\n\t\treturn await this.fetchData(request);\n\t}\n\n\t/**\n\t * Builds a multipart request from an array of URLs.\n\t *\n\t * @private\n\t * @param {string[]} urls - An array of URLs for individual requests.\n\t * @returns {MultiPartRequest} - The multipart request object.\n\t */\n\tprivate buildMultipartRequest(urls: string[], csrfToken: string, requestMethod: methods = methods.GET): MultiPartRequest {\n\t\t// create base request from first URL\n\t\tconst request = new MultiPartRequest(urls[0], requestMethod, csrfToken);\n\n\t\t// Add all URLs as sub-requests\n\t\turls.forEach((url) => {\n\t\t\trequest.addRequest(new MultiPartRequest(url, requestMethod, csrfToken));\n\t\t});\n\n\t\treturn request;\n\t}\n\n\t/**\n\t * Builds a multipart request with the given payloads, CSRF token, and request method.\n\t *\n\t * @param payloads - An array of objects containing the URL and data for each part of the request.\n\t * @param csrfToken - The CSRF token to be included in the request headers.\n\t * @param requestMethod - The HTTP method to be used for the request.\n\t * @returns {MultiPartRequest} A `MultiPartRequest` object containing the constructed multipart request.\n\t */\n\tprivate buildMultipartRequestWithPayload(\n\t\tpayloads: { url: string; data: unknown }[],\n\t\tcsrfToken: string,\n\t\trequestMethod: methods\n\t): MultiPartRequest {\n\t\tconst request = new MultiPartRequest(payloads[0].url, requestMethod, csrfToken);\n\t\trequest.payload = payloads[0].data;\n\t\tpayloads.forEach(({ url, data }) => {\n\t\t\tconst multipartRequest = new MultiPartRequest(url, requestMethod, csrfToken);\n\t\t\tmultipartRequest.payload = data;\n\t\t\trequest.addRequest(multipartRequest);\n\t\t});\n\n\t\treturn request;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -189,9 +189,6 @@ const fetchCSRFToken = async function (baseURL: string): Promise<string> {
189
189
  * @author SAP SE
190
190
  * @version 0.0.1
191
191
  * @since 1.121
192
- *
193
- * @internal
194
- * @experimental Since 1.121
195
192
  * @private
196
193
  *
197
194
  * @alias sap.cux.home.utils.BatchHelper
@@ -1,7 +1,16 @@
1
1
  declare module "sap/cux/home/utils/CommonUtils" {
2
2
  import BasePanel from "sap/cux/home/BasePanel";
3
3
  import PageManager from "sap/cux/home/utils/PageManager";
4
+ import { ICustomVisualization, ISectionAndVisualization } from "sap/cux/home/interface/AppsInterface";
4
5
  function isURLParamEnabled(paramName: string): boolean;
5
6
  function getPageManagerInstance(control: BasePanel): PageManager;
7
+ /**
8
+ * Filters visualizations by removing static tiles (count or Smart Business tiles) unless dynamic tiles are requested.
9
+ *
10
+ * @param {ISectionAndVisualization[]} visualizations - The array of visualizations to filter.
11
+ * @param {boolean} [filterDynamicTiles=false] - If true, only dynamic tiles are included; otherwise, static tiles are included.
12
+ * @returns {ISectionAndVisualization[]} The filtered array of visualizations.
13
+ */
14
+ function filterVisualizations(visualizations: ISectionAndVisualization[], filterDynamicTiles?: boolean): (ISectionAndVisualization | ICustomVisualization)[];
6
15
  }
7
16
  //# sourceMappingURL=CommonUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonUtils.d.ts","sourceRoot":"../../../../../..","sources":["src/sap/cux/home/utils/CommonUtils.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAchD,OAAO,SAAS,MAAM,wBAAwB,CAAC;IAC/C,OAAO,WAAW,MAAM,gCAAgC,CAAC;IAIzD,SAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAG5D;IAED,SAAgB,sBAAsB,CAAC,OAAO,EAAE,SAAS,eAOxD;CAEA"}
1
+ {"version":3,"file":"CommonUtils.d.ts","sourceRoot":"../../../../../..","sources":["src/sap/cux/home/utils/CommonUtils.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAehD,OAAO,SAAS,MAAM,wBAAwB,CAAC;IAC/C,OAAO,WAAW,MAAM,gCAAgC,CAAC;IAEzD,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;IAEtG,SAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAG5D;IAED,SAAgB,sBAAsB,CAAC,OAAO,EAAE,SAAS,eAOxD;IAED;;;;;;OAMG;IACH,SAAgB,oBAAoB,CAAC,cAAc,EAAE,wBAAwB,EAAE,EAAE,kBAAkB,GAAE,OAAe,GAAG,CAAC,wBAAwB,GAAG,oBAAoB,CAAC,EAAE,CAczK;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(["./PageManager", "./PersonalisationUtils", "../BaseLayout"], function (__PageManager, __PersonalisationUtils, __BaseLayout) {
5
+ sap.ui.define(["../BaseLayout", "./PageManager", "./PersonalisationUtils"], function (__BaseLayout, __PageManager, __PersonalisationUtils) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
@@ -15,9 +15,9 @@ sap.ui.define(["./PageManager", "./PersonalisationUtils", "../BaseLayout"], func
15
15
  * @returns {boolean} True if the parameter is enabled, false otherwise.
16
16
  * @private
17
17
  */
18
+ const BaseLayout = _interopRequireDefault(__BaseLayout);
18
19
  const PageManager = _interopRequireDefault(__PageManager);
19
20
  const PersonalisationUtils = _interopRequireDefault(__PersonalisationUtils);
20
- const BaseLayout = _interopRequireDefault(__BaseLayout);
21
21
  function isURLParamEnabled(paramName) {
22
22
  const urlParams = new URLSearchParams(window.location.search);
23
23
  return urlParams.get(paramName)?.toUpperCase() === "TRUE" || false;
@@ -30,11 +30,32 @@ sap.ui.define(["./PageManager", "./PersonalisationUtils", "../BaseLayout"], func
30
30
  const pageManagerInstance = PageManager.getInstance(persContainerId, PersonalisationUtils.getOwnerComponent(control));
31
31
  return pageManagerInstance;
32
32
  }
33
+
34
+ /**
35
+ * Filters visualizations by removing static tiles (count or Smart Business tiles) unless dynamic tiles are requested.
36
+ *
37
+ * @param {ISectionAndVisualization[]} visualizations - The array of visualizations to filter.
38
+ * @param {boolean} [filterDynamicTiles=false] - If true, only dynamic tiles are included; otherwise, static tiles are included.
39
+ * @returns {ISectionAndVisualization[]} The filtered array of visualizations.
40
+ */
41
+ function filterVisualizations(visualizations, filterDynamicTiles = false) {
42
+ return visualizations.filter(visualization => {
43
+ // Filter out static tiles
44
+ if (!visualization.isSection && (visualization.isCount || visualization.isSmartBusinessTile)) {
45
+ return filterDynamicTiles;
46
+ } else if (visualization.isSection) {
47
+ visualization.apps = filterVisualizations(visualization.apps || [], filterDynamicTiles);
48
+ visualization.badge = visualization.apps.length.toString();
49
+ }
50
+ return !filterDynamicTiles;
51
+ }).filter(visualization => visualization.isSection ? visualization.apps.length > 0 : true);
52
+ }
33
53
  var __exports = {
34
54
  __esModule: true
35
55
  };
36
56
  __exports.isURLParamEnabled = isURLParamEnabled;
37
57
  __exports.getPageManagerInstance = getPageManagerInstance;
58
+ __exports.filterVisualizations = filterVisualizations;
38
59
  return __exports;
39
60
  });
40
61
  //# sourceMappingURL=CommonUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonUtils.js","names":["sap","ui","define","__PageManager","__PersonalisationUtils","__BaseLayout","_interopRequireDefault","obj","__esModule","default","PageManager","PersonalisationUtils","BaseLayout","isURLParamEnabled","paramName","urlParams","URLSearchParams","window","location","search","get","toUpperCase","getPageManagerInstance","control","container","getParent","layout","layoutPersContainerId","getProperty","persContainerId","getPersContainerId","pageManagerInstance","getInstance","getOwnerComponent","__exports"],"sources":["CommonUtils.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\n/**\n *\n * @param paramName name of parameter\n * This method checks if the URL parameter is enabled.\n * @returns {boolean} True if the parameter is enabled, false otherwise.\n * @private\n */\nimport Component from \"sap/ui/core/Component\";\nimport BasePanel from \"../BasePanel\";\nimport PageManager from \"./PageManager\";\nimport PersonalisationUtils from \"./PersonalisationUtils\";\nimport BaseLayout from \"../BaseLayout\";\n\nexport function isURLParamEnabled(paramName: string): boolean {\n\tconst urlParams = new URLSearchParams(window.location.search);\n\treturn urlParams.get(paramName)?.toUpperCase() === \"TRUE\" || false;\n}\n\nexport function getPageManagerInstance(control: BasePanel) {\n\tconst container = control.getParent();\n\tconst layout = container?.getParent();\n\tconst layoutPersContainerId = layout instanceof BaseLayout ? (layout?.getProperty(\"persContainerId\") as string) : \"\";\n\tconst persContainerId = layoutPersContainerId || PersonalisationUtils.getPersContainerId(control);\n\tconst pageManagerInstance = PageManager.getInstance(persContainerId, PersonalisationUtils.getOwnerComponent(control) as Component);\n\treturn pageManagerInstance;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,yEAAAC,aAAA,EAAAC,sBAAA,EAAAC,YAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAKA;AACA;AACA;AACA;AACA;AACA;AACA;EANA,MASOG,WAAW,GAAAJ,sBAAA,CAAAH,aAAA;EAAA,MACXQ,oBAAoB,GAAAL,sBAAA,CAAAF,sBAAA;EAAA,MACpBQ,UAAU,GAAAN,sBAAA,CAAAD,YAAA;EAEV,SAASQ,iBAAiBA,CAACC,SAAiB,EAAW;IAC7D,MAAMC,SAAS,GAAG,IAAIC,eAAe,CAACC,MAAM,CAACC,QAAQ,CAACC,MAAM,CAAC;IAC7D,OAAOJ,SAAS,CAACK,GAAG,CAACN,SAAS,CAAC,EAAEO,WAAW,CAAC,CAAC,KAAK,MAAM,IAAI,KAAK;EACnE;EAEO,SAASC,sBAAsBA,CAACC,OAAkB,EAAE;IAC1D,MAAMC,SAAS,GAAGD,OAAO,CAACE,SAAS,CAAC,CAAC;IACrC,MAAMC,MAAM,GAAGF,SAAS,EAAEC,SAAS,CAAC,CAAC;IACrC,MAAME,qBAAqB,GAAGD,MAAM,YAAYd,UAAU,GAAIc,MAAM,EAAEE,WAAW,CAAC,iBAAiB,CAAC,GAAc,EAAE;IACpH,MAAMC,eAAe,GAAGF,qBAAqB,IAAIhB,oBAAoB,CAACmB,kBAAkB,CAACP,OAAO,CAAC;IACjG,MAAMQ,mBAAmB,GAAGrB,WAAW,CAACsB,WAAW,CAACH,eAAe,EAAElB,oBAAoB,CAACsB,iBAAiB,CAACV,OAAO,CAAc,CAAC;IAClI,OAAOQ,mBAAmB;EAC3B;EAAC,IAAAG,SAAA;IAAA1B,UAAA;EAAA;EAAA0B,SAAA,CAAArB,iBAAA,GAAAA,iBAAA;EAAAqB,SAAA,CAAAZ,sBAAA,GAAAA,sBAAA;EAAA,OAAAY,SAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"CommonUtils.js","names":["sap","ui","define","__BaseLayout","__PageManager","__PersonalisationUtils","_interopRequireDefault","obj","__esModule","default","BaseLayout","PageManager","PersonalisationUtils","isURLParamEnabled","paramName","urlParams","URLSearchParams","window","location","search","get","toUpperCase","getPageManagerInstance","control","container","getParent","layout","layoutPersContainerId","getProperty","persContainerId","getPersContainerId","pageManagerInstance","getInstance","getOwnerComponent","filterVisualizations","visualizations","filterDynamicTiles","filter","visualization","isSection","isCount","isSmartBusinessTile","apps","badge","length","toString","__exports"],"sources":["CommonUtils.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\n/**\n *\n * @param paramName name of parameter\n * This method checks if the URL parameter is enabled.\n * @returns {boolean} True if the parameter is enabled, false otherwise.\n * @private\n */\nimport Component from \"sap/ui/core/Component\";\nimport BaseLayout from \"../BaseLayout\";\nimport BasePanel from \"../BasePanel\";\nimport PageManager from \"./PageManager\";\nimport PersonalisationUtils from \"./PersonalisationUtils\";\nimport { ICustomVisualization, ISectionAndVisualization } from \"../interface/AppsInterface\";\n\nexport function isURLParamEnabled(paramName: string): boolean {\n\tconst urlParams = new URLSearchParams(window.location.search);\n\treturn urlParams.get(paramName)?.toUpperCase() === \"TRUE\" || false;\n}\n\nexport function getPageManagerInstance(control: BasePanel) {\n\tconst container = control.getParent();\n\tconst layout = container?.getParent();\n\tconst layoutPersContainerId = layout instanceof BaseLayout ? (layout?.getProperty(\"persContainerId\") as string) : \"\";\n\tconst persContainerId = layoutPersContainerId || PersonalisationUtils.getPersContainerId(control);\n\tconst pageManagerInstance = PageManager.getInstance(persContainerId, PersonalisationUtils.getOwnerComponent(control) as Component);\n\treturn pageManagerInstance;\n}\n\n/**\n * Filters visualizations by removing static tiles (count or Smart Business tiles) unless dynamic tiles are requested.\n *\n * @param {ISectionAndVisualization[]} visualizations - The array of visualizations to filter.\n * @param {boolean} [filterDynamicTiles=false] - If true, only dynamic tiles are included; otherwise, static tiles are included.\n * @returns {ISectionAndVisualization[]} The filtered array of visualizations.\n */\nexport function filterVisualizations(visualizations: ISectionAndVisualization[], filterDynamicTiles: boolean = false): (ISectionAndVisualization | ICustomVisualization)[] {\n\treturn visualizations\n\t\t.filter((visualization) => {\n\t\t\t// Filter out static tiles\n\t\t\tif (!visualization.isSection && (visualization.isCount || visualization.isSmartBusinessTile)) {\n\t\t\t\treturn filterDynamicTiles;\n\t\t\t} else if (visualization.isSection) {\n\t\t\t\tvisualization.apps = filterVisualizations(visualization.apps || [], filterDynamicTiles);\n\t\t\t\tvisualization.badge = visualization.apps.length.toString();\n\t\t\t}\n\n\t\t\treturn !filterDynamicTiles;\n\t\t})\n\t\t.filter((visualization) => (visualization.isSection ? visualization.apps!.length > 0 : true));\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,yEAAAC,YAAA,EAAAC,aAAA,EAAAC,sBAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAKA;AACA;AACA;AACA;AACA;AACA;AACA;EANA,MAQOG,UAAU,GAAAJ,sBAAA,CAAAH,YAAA;EAAA,MAEVQ,WAAW,GAAAL,sBAAA,CAAAF,aAAA;EAAA,MACXQ,oBAAoB,GAAAN,sBAAA,CAAAD,sBAAA;EAGpB,SAASQ,iBAAiBA,CAACC,SAAiB,EAAW;IAC7D,MAAMC,SAAS,GAAG,IAAIC,eAAe,CAACC,MAAM,CAACC,QAAQ,CAACC,MAAM,CAAC;IAC7D,OAAOJ,SAAS,CAACK,GAAG,CAACN,SAAS,CAAC,EAAEO,WAAW,CAAC,CAAC,KAAK,MAAM,IAAI,KAAK;EACnE;EAEO,SAASC,sBAAsBA,CAACC,OAAkB,EAAE;IAC1D,MAAMC,SAAS,GAAGD,OAAO,CAACE,SAAS,CAAC,CAAC;IACrC,MAAMC,MAAM,GAAGF,SAAS,EAAEC,SAAS,CAAC,CAAC;IACrC,MAAME,qBAAqB,GAAGD,MAAM,YAAYhB,UAAU,GAAIgB,MAAM,EAAEE,WAAW,CAAC,iBAAiB,CAAC,GAAc,EAAE;IACpH,MAAMC,eAAe,GAAGF,qBAAqB,IAAIf,oBAAoB,CAACkB,kBAAkB,CAACP,OAAO,CAAC;IACjG,MAAMQ,mBAAmB,GAAGpB,WAAW,CAACqB,WAAW,CAACH,eAAe,EAAEjB,oBAAoB,CAACqB,iBAAiB,CAACV,OAAO,CAAc,CAAC;IAClI,OAAOQ,mBAAmB;EAC3B;;EAEA;AACA;AACA;AACA;AACA;AACA;AACA;EACO,SAASG,oBAAoBA,CAACC,cAA0C,EAAEC,kBAA2B,GAAG,KAAK,EAAuD;IAC1K,OAAOD,cAAc,CACnBE,MAAM,CAAEC,aAAa,IAAK;MAC1B;MACA,IAAI,CAACA,aAAa,CAACC,SAAS,KAAKD,aAAa,CAACE,OAAO,IAAIF,aAAa,CAACG,mBAAmB,CAAC,EAAE;QAC7F,OAAOL,kBAAkB;MAC1B,CAAC,MAAM,IAAIE,aAAa,CAACC,SAAS,EAAE;QACnCD,aAAa,CAACI,IAAI,GAAGR,oBAAoB,CAACI,aAAa,CAACI,IAAI,IAAI,EAAE,EAAEN,kBAAkB,CAAC;QACvFE,aAAa,CAACK,KAAK,GAAGL,aAAa,CAACI,IAAI,CAACE,MAAM,CAACC,QAAQ,CAAC,CAAC;MAC3D;MAEA,OAAO,CAACT,kBAAkB;IAC3B,CAAC,CAAC,CACDC,MAAM,CAAEC,aAAa,IAAMA,aAAa,CAACC,SAAS,GAAGD,aAAa,CAACI,IAAI,CAAEE,MAAM,GAAG,CAAC,GAAG,IAAK,CAAC;EAC/F;EAAC,IAAAE,SAAA;IAAAtC,UAAA;EAAA;EAAAsC,SAAA,CAAAjC,iBAAA,GAAAA,iBAAA;EAAAiC,SAAA,CAAAxB,sBAAA,GAAAA,sBAAA;EAAAwB,SAAA,CAAAZ,oBAAA,GAAAA,oBAAA;EAAA,OAAAY,SAAA;AAAA","ignoreList":[]}
@@ -11,10 +11,11 @@
11
11
  * @private
12
12
  */
13
13
  import Component from "sap/ui/core/Component";
14
+ import BaseLayout from "../BaseLayout";
14
15
  import BasePanel from "../BasePanel";
15
16
  import PageManager from "./PageManager";
16
17
  import PersonalisationUtils from "./PersonalisationUtils";
17
- import BaseLayout from "../BaseLayout";
18
+ import { ICustomVisualization, ISectionAndVisualization } from "../interface/AppsInterface";
18
19
 
19
20
  export function isURLParamEnabled(paramName: string): boolean {
20
21
  const urlParams = new URLSearchParams(window.location.search);
@@ -29,3 +30,26 @@ export function getPageManagerInstance(control: BasePanel) {
29
30
  const pageManagerInstance = PageManager.getInstance(persContainerId, PersonalisationUtils.getOwnerComponent(control) as Component);
30
31
  return pageManagerInstance;
31
32
  }
33
+
34
+ /**
35
+ * Filters visualizations by removing static tiles (count or Smart Business tiles) unless dynamic tiles are requested.
36
+ *
37
+ * @param {ISectionAndVisualization[]} visualizations - The array of visualizations to filter.
38
+ * @param {boolean} [filterDynamicTiles=false] - If true, only dynamic tiles are included; otherwise, static tiles are included.
39
+ * @returns {ISectionAndVisualization[]} The filtered array of visualizations.
40
+ */
41
+ export function filterVisualizations(visualizations: ISectionAndVisualization[], filterDynamicTiles: boolean = false): (ISectionAndVisualization | ICustomVisualization)[] {
42
+ return visualizations
43
+ .filter((visualization) => {
44
+ // Filter out static tiles
45
+ if (!visualization.isSection && (visualization.isCount || visualization.isSmartBusinessTile)) {
46
+ return filterDynamicTiles;
47
+ } else if (visualization.isSection) {
48
+ visualization.apps = filterVisualizations(visualization.apps || [], filterDynamicTiles);
49
+ visualization.badge = visualization.apps.length.toString();
50
+ }
51
+
52
+ return !filterDynamicTiles;
53
+ })
54
+ .filter((visualization) => (visualization.isSection ? visualization.apps!.length > 0 : true));
55
+ }
@@ -36,11 +36,10 @@ declare module "sap/cux/home/utils/Constants" {
36
36
  const PLACEHOLDER_ITEMS_COUNT = 5;
37
37
  const RECOMMENDED_CARD_LIMIT = 4;
38
38
  const RECOMMENDATION_SRVC_URL: string;
39
- const FEATURE_TOGGLES: {
40
- TASK_ACTIONS: string;
41
- AI_GENERATED_CARD: string;
42
- AI_SMART_APPFINDER: string;
43
- };
39
+ enum FEATURE_TOGGLES {
40
+ AI_GENERATED_CARD = "AIU_SMART_PERSONALIZATION",
41
+ AI_SMART_APPFINDER = "AIU_SMART_APPFINDER"
42
+ }
44
43
  const FEATURE_TOGGLE_SRVC_URL: string;
45
44
  const REPO_BASE_URL: string;
46
45
  const DEFAULT_NEWS_BASE_URL = "/sap/opu/odata4/sap/sui_flp_aps_ui_usernews/srvd_a2x/sap/sui_flp_aps_ui_usernews/0001/NewsGroup";
@@ -1 +1 @@
1
- {"version":3,"file":"Constants.d.ts","sourceRoot":"../../../../../..","sources":["src/sap/cux/home/utils/Constants.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,8BAA8B,CAAC;IAOvC,MAAM,kBAAkB,GAAI,aAAa,MAAM;;;;KAQrD,CAAC;IAEF,MAAM,QAAQ,+CAA+C,CAAC;IAC9D,MAAM,sBAAsB,QAAuC,CAAC;IAE7D,MAAM,cAAc,EAAE,MAAiC,CAAC;IACxD,MAAM,iBAAiB,EAAE,MAAoC,CAAC;IAC9D,MAAM,aAAa,EAAE,MAA8B,CAAC;IACpD,MAAM,gBAAgB,EAAE,MAA6B,CAAC;IACtD,MAAM,oBAAoB,EAAE,MAAoC,CAAC;IACjE,MAAM,eAAe,EAAE,MAAiC,CAAC;IACzD,MAAM,gBAAgB;;;;KAA8C,CAAC;IAErE,MAAM,oBAAoB,IAAI,CAAC;IAC/B,MAAM,aAAa;;;;OAYA,CAAC;IACpB,MAAM,eAAe;;;;OAYF,CAAC;IACpB,MAAM,QAAQ;;;;KAIpB,CAAC;IACK,MAAM,uBAAuB,IAAI,CAAC;IAClC,MAAM,sBAAsB,IAAI,CAAC;IACjC,MAAM,uBAAuB,QAA6C,CAAC;IAC3E,MAAM,eAAe;;;;KAI3B,CAAC;IACK,MAAM,uBAAuB,QAA2C,CAAC;IACzE,MAAM,aAAa,QAA6C,CAAC;IACjE,MAAM,qBAAqB,oGAAoG,CAAC;IAChI,MAAM,gBAAgB,QAAoF,CAAC;IAClH,KAAY,oBAAoB;QAC/B,MAAM,WAAW;QACjB,IAAI,SAAS;QACb,KAAK,UAAU;QACf,cAAc,mBAAmB;QACjC,cAAc,mBAAmB;QACjC,QAAQ,aAAa;KACrB;IACD,KAAY,4BAA4B;QACvC,MAAM,mBAAmB;QACzB,UAAU,uBAAuB;QACjC,IAAI,iBAAiB;QACrB,KAAK,kBAAkB;KACvB;IACD,KAAY,4BAA4B;QACvC,aAAa,kBAAkB;QAC/B,iBAAiB,sBAAsB;KACvC;IAED,KAAY,QAAQ;QACnB,WAAW,kBAAkB;QAC7B,qBAAqB,uBAAuB;QAC5C,UAAU,iBAAiB;KAC3B;IAEM,MAAM,WAAW;;;;;;;KAOvB,CAAC;IACK,MAAM,aAAa,IAAI,CAAC;IAExB,MAAM,sBAAsB,mEAAmE,CAAC;IAChG,MAAM,iBAAiB,QAAoF,CAAC;IAE5G,MAAM,cAAc,yBAAyB,CAAC;IAC9C,MAAM,cAAc,UAQ1B,CAAC;IAEK,MAAM,wBAAwB;;;;;;;;;;;KAepC,CAAC;CAED"}
1
+ {"version":3,"file":"Constants.d.ts","sourceRoot":"../../../../../..","sources":["src/sap/cux/home/utils/Constants.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,8BAA8B,CAAC;IAOvC,MAAM,kBAAkB,GAAI,aAAa,MAAM;;;;KAQrD,CAAC;IAEF,MAAM,QAAQ,+CAA+C,CAAC;IAC9D,MAAM,sBAAsB,QAAuC,CAAC;IAE7D,MAAM,cAAc,EAAE,MAAiC,CAAC;IACxD,MAAM,iBAAiB,EAAE,MAAoC,CAAC;IAC9D,MAAM,aAAa,EAAE,MAA8B,CAAC;IACpD,MAAM,gBAAgB,EAAE,MAA6B,CAAC;IACtD,MAAM,oBAAoB,EAAE,MAAoC,CAAC;IACjE,MAAM,eAAe,EAAE,MAAiC,CAAC;IACzD,MAAM,gBAAgB;;;;KAA8C,CAAC;IAErE,MAAM,oBAAoB,IAAI,CAAC;IAC/B,MAAM,aAAa;;;;OAYA,CAAC;IACpB,MAAM,eAAe;;;;OAYF,CAAC;IACpB,MAAM,QAAQ;;;;KAIpB,CAAC;IACK,MAAM,uBAAuB,IAAI,CAAC;IAClC,MAAM,sBAAsB,IAAI,CAAC;IACjC,MAAM,uBAAuB,QAA6C,CAAC;IAClF,KAAY,eAAe;QAC1B,iBAAiB,8BAA8B;QAC/C,kBAAkB,wBAAwB;KAC1C;IACM,MAAM,uBAAuB,QAA2C,CAAC;IACzE,MAAM,aAAa,QAA6C,CAAC;IACjE,MAAM,qBAAqB,oGAAoG,CAAC;IAChI,MAAM,gBAAgB,QAAoF,CAAC;IAClH,KAAY,oBAAoB;QAC/B,MAAM,WAAW;QACjB,IAAI,SAAS;QACb,KAAK,UAAU;QACf,cAAc,mBAAmB;QACjC,cAAc,mBAAmB;QACjC,QAAQ,aAAa;KACrB;IACD,KAAY,4BAA4B;QACvC,MAAM,mBAAmB;QACzB,UAAU,uBAAuB;QACjC,IAAI,iBAAiB;QACrB,KAAK,kBAAkB;KACvB;IACD,KAAY,4BAA4B;QACvC,aAAa,kBAAkB;QAC/B,iBAAiB,sBAAsB;KACvC;IAED,KAAY,QAAQ;QACnB,WAAW,kBAAkB;QAC7B,qBAAqB,uBAAuB;QAC5C,UAAU,iBAAiB;KAC3B;IAEM,MAAM,WAAW;;;;;;;KAOvB,CAAC;IACK,MAAM,aAAa,IAAI,CAAC;IAExB,MAAM,sBAAsB,mEAAmE,CAAC;IAChG,MAAM,iBAAiB,QAAoF,CAAC;IAE5G,MAAM,cAAc,yBAAyB,CAAC;IAC9C,MAAM,cAAc,UAQ1B,CAAC;IAEK,MAAM,wBAAwB;;;;;;;;;;;KAepC,CAAC;CAED"}
@@ -34,11 +34,11 @@ sap.ui.define(["sap/ui/core/theming/Parameters"], function (Parameters) {
34
34
  const PLACEHOLDER_ITEMS_COUNT = 5;
35
35
  const RECOMMENDED_CARD_LIMIT = 4;
36
36
  const RECOMMENDATION_SRVC_URL = INSIGHTS_READ_SRVC_URL + "RecommendedApps";
37
- const FEATURE_TOGGLES = {
38
- TASK_ACTIONS: "/UI2/S4HOME_FEATURE_TOGGLE",
39
- AI_GENERATED_CARD: "AIU_SMART_PERSONALIZATION",
40
- AI_SMART_APPFINDER: "AIU_SMART_APPFINDER"
41
- };
37
+ var FEATURE_TOGGLES = /*#__PURE__*/function (FEATURE_TOGGLES) {
38
+ FEATURE_TOGGLES["AI_GENERATED_CARD"] = "AIU_SMART_PERSONALIZATION";
39
+ FEATURE_TOGGLES["AI_SMART_APPFINDER"] = "AIU_SMART_APPFINDER";
40
+ return FEATURE_TOGGLES;
41
+ }(FEATURE_TOGGLES || {});
42
42
  const FEATURE_TOGGLE_SRVC_URL = INSIGHTS_READ_SRVC_URL + "FeatureToggle";
43
43
  const REPO_BASE_URL = BASE_URL + "insights_cards_repo_srv/0001/";
44
44
  const DEFAULT_NEWS_BASE_URL = "/sap/opu/odata4/sap/sui_flp_aps_ui_usernews/srvd_a2x/sap/sui_flp_aps_ui_usernews/0001/NewsGroup";
@@ -1 +1 @@
1
- {"version":3,"file":"Constants.js","names":["sap","ui","define","Parameters","fnFetchLegendColor","sLegendName","key","value","get","name","assigned","BASE_URL","INSIGHTS_READ_SRVC_URL","MYHOME_PAGE_ID","MYAPPS_SECTION_ID","FALLBACK_ICON","DEFAULT_APP_ICON","MYINSIGHT_SECTION_ID","MYHOME_SPACE_ID","DEFAULT_BG_COLOR","PAGE_SELECTION_LIMIT","LEGEND_COLORS","map","END_USER_COLORS","AppTypes","FAVORITE","RECENT","FREQUENT","PLACEHOLDER_ITEMS_COUNT","RECOMMENDED_CARD_LIMIT","RECOMMENDATION_SRVC_URL","FEATURE_TOGGLES","TASK_ACTIONS","AI_GENERATED_CARD","AI_SMART_APPFINDER","FEATURE_TOGGLE_SRVC_URL","REPO_BASE_URL","DEFAULT_NEWS_BASE_URL","DEFAULT_NEWS_URL","SETTINGS_PANELS_KEYS","KEYUSER_SETTINGS_PANELS_KEYS","CONTENT_ADDITION_PANEL_TYPES","FESR_IDS","TABLE_TYPES","GRID","TREE","ANALYTICAL","RESPONSIVE","STANDARD_LIST","OBJECT_LIST","COLUMN_LENGTH","AI_APP_FINDER_BASE_URL","AI_APP_FINDER_API","CUSTOM_SPACEID","PREFERED_CARDS","DEFAULT_NEWS_PLACEHOLDER","group_id","mandatory","mandatory_text","_group_to_article","__exports","__esModule"],"sources":["Constants.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\nimport Parameters from \"sap/ui/core/theming/Parameters\";\n\nexport const fnFetchLegendColor = (sLegendName: string) => {\n\treturn {\n\t\tkey: sLegendName,\n\t\tvalue: Parameters.get({\n\t\t\tname: sLegendName\n\t\t}),\n\t\tassigned: false\n\t};\n};\n\nconst BASE_URL = \"/sap/opu/odata4/ui2/insights_srv/srvd/ui2/\";\nconst INSIGHTS_READ_SRVC_URL = BASE_URL + \"insights_read_srv/0001/\";\n\nexport const MYHOME_PAGE_ID: string = \"SAP_BASIS_PG_UI_MYHOME\";\nexport const MYAPPS_SECTION_ID: string = \"3WO90XZ1DX1AS32M7ZM9NBXEF\";\nexport const FALLBACK_ICON: string = \"sap-icon://document\";\nexport const DEFAULT_APP_ICON: string = \"sap-icon://product\";\nexport const MYINSIGHT_SECTION_ID: string = \"AZHJGRIT78TG7Y65RF6EPFJ9U\";\nexport const MYHOME_SPACE_ID: string = \"SAP_BASIS_SP_UI_MYHOME\";\nexport const DEFAULT_BG_COLOR = () => fnFetchLegendColor(\"sapLegendColor9\");\n\nexport const PAGE_SELECTION_LIMIT = 8;\nexport const LEGEND_COLORS = () =>\n\t[\n\t\t\"sapLegendColor6\",\n\t\t\"sapLegendColor3\",\n\t\t\"sapLegendColor1\",\n\t\t\"sapLegendColor10\",\n\t\t\"sapLegendColor12\",\n\t\t\"sapLegendColor7\",\n\t\t\"sapLegendColor5\",\n\t\t\"sapLegendColor8\",\n\t\t\"sapLegendColor18\",\n\t\t\"sapLegendColor9\"\n\t].map(fnFetchLegendColor);\nexport const END_USER_COLORS = () =>\n\t[\n\t\t\"sapLegendColor19\",\n\t\t\"sapLegendColor13\",\n\t\t\"sapLegendColor11\",\n\t\t\"sapLegendColor20\",\n\t\t\"sapLegendColor2\",\n\t\t\"sapLegendColor17\",\n\t\t\"sapLegendColor15\",\n\t\t\"sapLegendColor14\",\n\t\t\"sapLegendColor16\",\n\t\t\"sapLegendColor4\"\n\t].map(fnFetchLegendColor);\nexport const AppTypes = {\n\tFAVORITE: \"FAVORITE\",\n\tRECENT: \"RECENT\",\n\tFREQUENT: \"FREQUENT\"\n};\nexport const PLACEHOLDER_ITEMS_COUNT = 5;\nexport const RECOMMENDED_CARD_LIMIT = 4;\nexport const RECOMMENDATION_SRVC_URL = INSIGHTS_READ_SRVC_URL + \"RecommendedApps\";\nexport const FEATURE_TOGGLES = {\n\tTASK_ACTIONS: \"/UI2/S4HOME_FEATURE_TOGGLE\",\n\tAI_GENERATED_CARD: \"AIU_SMART_PERSONALIZATION\",\n\tAI_SMART_APPFINDER: \"AIU_SMART_APPFINDER\"\n};\nexport const FEATURE_TOGGLE_SRVC_URL = INSIGHTS_READ_SRVC_URL + \"FeatureToggle\";\nexport const REPO_BASE_URL = BASE_URL + \"insights_cards_repo_srv/0001/\";\nexport const DEFAULT_NEWS_BASE_URL = \"/sap/opu/odata4/sap/sui_flp_aps_ui_usernews/srvd_a2x/sap/sui_flp_aps_ui_usernews/0001/NewsGroup\";\nexport const DEFAULT_NEWS_URL = DEFAULT_NEWS_BASE_URL + \"?$expand=_group_to_image,_group_to_article&$format=json\";\nexport enum SETTINGS_PANELS_KEYS {\n\tLAYOUT = \"LAYOUT\",\n\tNEWS = \"NEWS\",\n\tPAGES = \"PAGES\",\n\tINSIGHTS_TILES = \"INSIGHTS_TILES\",\n\tINSIGHTS_CARDS = \"INSIGHTS_CARDS\",\n\tADVANCED = \"ADVANCED\"\n}\nexport enum KEYUSER_SETTINGS_PANELS_KEYS {\n\tLAYOUT = \"KEYUSER_LAYOUT\",\n\tNEWS_PAGES = \"KEYUSER_NEWS_PAGES\",\n\tNEWS = \"KEYUSER_NEWS\",\n\tPAGES = \"KEYUSER_PAGES\"\n}\nexport enum CONTENT_ADDITION_PANEL_TYPES {\n\tAI_APP_FINDER = \"AI_APP_FINDER\",\n\tAI_INSIGHTS_CARDS = \"AI_INSIGHTS_CARDS\"\n}\n\nexport enum FESR_IDS {\n\tADD_AI_CARD = \"INS:AddAICard\",\n\tCANCEL_CONTENT_DIALOG = \"myh:content:cancel\",\n\tADD_AI_APP = \"myh:apps:add\"\n}\n\nexport const TABLE_TYPES = {\n\tGRID: \"GridTable\",\n\tTREE: \"TreeTable\",\n\tANALYTICAL: \"AnalyticalTable\",\n\tRESPONSIVE: \"ResponsiveTable\",\n\tSTANDARD_LIST: \"StandardList\",\n\tOBJECT_LIST: \"ObjectList\"\n};\nexport const COLUMN_LENGTH = 3;\n\nexport const AI_APP_FINDER_BASE_URL = \"/sap/opu/odata4/sap/aiu_ui_prompt/srvd/sap/aiu_ui_prompt/0001/\";\nexport const AI_APP_FINDER_API = AI_APP_FINDER_BASE_URL + \"SmartAppFinder/SAP__self.ExecuteAppFinderFromUserInput\";\n\nexport const CUSTOM_SPACEID = \"Z_TRIAL_TRIAL_CENTER\";\nexport const PREFERED_CARDS = [\n\t\"user.F2933.cards.docStatusCard\",\n\t\"user.i2d.qm.qltytechnician.ovps1.cards.i2d.qm.qltytechnician.ovps1_card01\",\n\t\"user.F3242.cards.card06_MyBiggestDebtors.tab_1\",\n\t\"user.F2917.cards.card15_PayableAmount\",\n\t\"user.F2601.cards.card04_ProfitMargin\",\n\t\"user.F2601.cards.card00_IncomingSales.tab_1\",\n\t\"user.F2933.cards.card01\"\n];\n\nexport const DEFAULT_NEWS_PLACEHOLDER = {\n\t\"@odata.context\": \"\",\n\t\"@odata.metadataEtag\": \"\",\n\tvalue: [\n\t\t{\n\t\t\tgroup_id: \"placeholderNews\",\n\t\t\tmandatory: \"X\",\n\t\t\tmandatory_text: \"TRUE\",\n\t\t\t_group_to_article: [\n\t\t\t\t{\n\t\t\t\t\tgroup_id: \"placeholderNews\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Constants.js","names":["sap","ui","define","Parameters","fnFetchLegendColor","sLegendName","key","value","get","name","assigned","BASE_URL","INSIGHTS_READ_SRVC_URL","MYHOME_PAGE_ID","MYAPPS_SECTION_ID","FALLBACK_ICON","DEFAULT_APP_ICON","MYINSIGHT_SECTION_ID","MYHOME_SPACE_ID","DEFAULT_BG_COLOR","PAGE_SELECTION_LIMIT","LEGEND_COLORS","map","END_USER_COLORS","AppTypes","FAVORITE","RECENT","FREQUENT","PLACEHOLDER_ITEMS_COUNT","RECOMMENDED_CARD_LIMIT","RECOMMENDATION_SRVC_URL","FEATURE_TOGGLES","FEATURE_TOGGLE_SRVC_URL","REPO_BASE_URL","DEFAULT_NEWS_BASE_URL","DEFAULT_NEWS_URL","SETTINGS_PANELS_KEYS","KEYUSER_SETTINGS_PANELS_KEYS","CONTENT_ADDITION_PANEL_TYPES","FESR_IDS","TABLE_TYPES","GRID","TREE","ANALYTICAL","RESPONSIVE","STANDARD_LIST","OBJECT_LIST","COLUMN_LENGTH","AI_APP_FINDER_BASE_URL","AI_APP_FINDER_API","CUSTOM_SPACEID","PREFERED_CARDS","DEFAULT_NEWS_PLACEHOLDER","group_id","mandatory","mandatory_text","_group_to_article","__exports","__esModule"],"sources":["Constants.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\nimport Parameters from \"sap/ui/core/theming/Parameters\";\n\nexport const fnFetchLegendColor = (sLegendName: string) => {\n\treturn {\n\t\tkey: sLegendName,\n\t\tvalue: Parameters.get({\n\t\t\tname: sLegendName\n\t\t}),\n\t\tassigned: false\n\t};\n};\n\nconst BASE_URL = \"/sap/opu/odata4/ui2/insights_srv/srvd/ui2/\";\nconst INSIGHTS_READ_SRVC_URL = BASE_URL + \"insights_read_srv/0001/\";\n\nexport const MYHOME_PAGE_ID: string = \"SAP_BASIS_PG_UI_MYHOME\";\nexport const MYAPPS_SECTION_ID: string = \"3WO90XZ1DX1AS32M7ZM9NBXEF\";\nexport const FALLBACK_ICON: string = \"sap-icon://document\";\nexport const DEFAULT_APP_ICON: string = \"sap-icon://product\";\nexport const MYINSIGHT_SECTION_ID: string = \"AZHJGRIT78TG7Y65RF6EPFJ9U\";\nexport const MYHOME_SPACE_ID: string = \"SAP_BASIS_SP_UI_MYHOME\";\nexport const DEFAULT_BG_COLOR = () => fnFetchLegendColor(\"sapLegendColor9\");\n\nexport const PAGE_SELECTION_LIMIT = 8;\nexport const LEGEND_COLORS = () =>\n\t[\n\t\t\"sapLegendColor6\",\n\t\t\"sapLegendColor3\",\n\t\t\"sapLegendColor1\",\n\t\t\"sapLegendColor10\",\n\t\t\"sapLegendColor12\",\n\t\t\"sapLegendColor7\",\n\t\t\"sapLegendColor5\",\n\t\t\"sapLegendColor8\",\n\t\t\"sapLegendColor18\",\n\t\t\"sapLegendColor9\"\n\t].map(fnFetchLegendColor);\nexport const END_USER_COLORS = () =>\n\t[\n\t\t\"sapLegendColor19\",\n\t\t\"sapLegendColor13\",\n\t\t\"sapLegendColor11\",\n\t\t\"sapLegendColor20\",\n\t\t\"sapLegendColor2\",\n\t\t\"sapLegendColor17\",\n\t\t\"sapLegendColor15\",\n\t\t\"sapLegendColor14\",\n\t\t\"sapLegendColor16\",\n\t\t\"sapLegendColor4\"\n\t].map(fnFetchLegendColor);\nexport const AppTypes = {\n\tFAVORITE: \"FAVORITE\",\n\tRECENT: \"RECENT\",\n\tFREQUENT: \"FREQUENT\"\n};\nexport const PLACEHOLDER_ITEMS_COUNT = 5;\nexport const RECOMMENDED_CARD_LIMIT = 4;\nexport const RECOMMENDATION_SRVC_URL = INSIGHTS_READ_SRVC_URL + \"RecommendedApps\";\nexport enum FEATURE_TOGGLES {\n\tAI_GENERATED_CARD = \"AIU_SMART_PERSONALIZATION\",\n\tAI_SMART_APPFINDER = \"AIU_SMART_APPFINDER\"\n}\nexport const FEATURE_TOGGLE_SRVC_URL = INSIGHTS_READ_SRVC_URL + \"FeatureToggle\";\nexport const REPO_BASE_URL = BASE_URL + \"insights_cards_repo_srv/0001/\";\nexport const DEFAULT_NEWS_BASE_URL = \"/sap/opu/odata4/sap/sui_flp_aps_ui_usernews/srvd_a2x/sap/sui_flp_aps_ui_usernews/0001/NewsGroup\";\nexport const DEFAULT_NEWS_URL = DEFAULT_NEWS_BASE_URL + \"?$expand=_group_to_image,_group_to_article&$format=json\";\nexport enum SETTINGS_PANELS_KEYS {\n\tLAYOUT = \"LAYOUT\",\n\tNEWS = \"NEWS\",\n\tPAGES = \"PAGES\",\n\tINSIGHTS_TILES = \"INSIGHTS_TILES\",\n\tINSIGHTS_CARDS = \"INSIGHTS_CARDS\",\n\tADVANCED = \"ADVANCED\"\n}\nexport enum KEYUSER_SETTINGS_PANELS_KEYS {\n\tLAYOUT = \"KEYUSER_LAYOUT\",\n\tNEWS_PAGES = \"KEYUSER_NEWS_PAGES\",\n\tNEWS = \"KEYUSER_NEWS\",\n\tPAGES = \"KEYUSER_PAGES\"\n}\nexport enum CONTENT_ADDITION_PANEL_TYPES {\n\tAI_APP_FINDER = \"AI_APP_FINDER\",\n\tAI_INSIGHTS_CARDS = \"AI_INSIGHTS_CARDS\"\n}\n\nexport enum FESR_IDS {\n\tADD_AI_CARD = \"INS:AddAICard\",\n\tCANCEL_CONTENT_DIALOG = \"myh:content:cancel\",\n\tADD_AI_APP = \"myh:apps:add\"\n}\n\nexport const TABLE_TYPES = {\n\tGRID: \"GridTable\",\n\tTREE: \"TreeTable\",\n\tANALYTICAL: \"AnalyticalTable\",\n\tRESPONSIVE: \"ResponsiveTable\",\n\tSTANDARD_LIST: \"StandardList\",\n\tOBJECT_LIST: \"ObjectList\"\n};\nexport const COLUMN_LENGTH = 3;\n\nexport const AI_APP_FINDER_BASE_URL = \"/sap/opu/odata4/sap/aiu_ui_prompt/srvd/sap/aiu_ui_prompt/0001/\";\nexport const AI_APP_FINDER_API = AI_APP_FINDER_BASE_URL + \"SmartAppFinder/SAP__self.ExecuteAppFinderFromUserInput\";\n\nexport const CUSTOM_SPACEID = \"Z_TRIAL_TRIAL_CENTER\";\nexport const PREFERED_CARDS = [\n\t\"user.F2933.cards.docStatusCard\",\n\t\"user.i2d.qm.qltytechnician.ovps1.cards.i2d.qm.qltytechnician.ovps1_card01\",\n\t\"user.F3242.cards.card06_MyBiggestDebtors.tab_1\",\n\t\"user.F2917.cards.card15_PayableAmount\",\n\t\"user.F2601.cards.card04_ProfitMargin\",\n\t\"user.F2601.cards.card00_IncomingSales.tab_1\",\n\t\"user.F2933.cards.card01\"\n];\n\nexport const DEFAULT_NEWS_PLACEHOLDER = {\n\t\"@odata.context\": \"\",\n\t\"@odata.metadataEtag\": \"\",\n\tvalue: [\n\t\t{\n\t\t\tgroup_id: \"placeholderNews\",\n\t\t\tmandatory: \"X\",\n\t\t\tmandatory_text: \"TRUE\",\n\t\t\t_group_to_article: [\n\t\t\t\t{\n\t\t\t\t\tgroup_id: \"placeholderNews\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t]\n};\n"],"mappings":"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","ignoreList":[]}
@@ -60,11 +60,10 @@ export const AppTypes = {
60
60
  export const PLACEHOLDER_ITEMS_COUNT = 5;
61
61
  export const RECOMMENDED_CARD_LIMIT = 4;
62
62
  export const RECOMMENDATION_SRVC_URL = INSIGHTS_READ_SRVC_URL + "RecommendedApps";
63
- export const FEATURE_TOGGLES = {
64
- TASK_ACTIONS: "/UI2/S4HOME_FEATURE_TOGGLE",
65
- AI_GENERATED_CARD: "AIU_SMART_PERSONALIZATION",
66
- AI_SMART_APPFINDER: "AIU_SMART_APPFINDER"
67
- };
63
+ export enum FEATURE_TOGGLES {
64
+ AI_GENERATED_CARD = "AIU_SMART_PERSONALIZATION",
65
+ AI_SMART_APPFINDER = "AIU_SMART_APPFINDER"
66
+ }
68
67
  export const FEATURE_TOGGLE_SRVC_URL = INSIGHTS_READ_SRVC_URL + "FeatureToggle";
69
68
  export const REPO_BASE_URL = BASE_URL + "insights_cards_repo_srv/0001/";
70
69
  export const DEFAULT_NEWS_BASE_URL = "/sap/opu/odata4/sap/sui_flp_aps_ui_usernews/srvd_a2x/sap/sui_flp_aps_ui_usernews/0001/NewsGroup";
@@ -101,9 +101,6 @@ declare module "sap/cux/home/utils/DecisionDialog" {
101
101
  * @author SAP SE
102
102
  * @version 0.0.1
103
103
  * @since 1.121
104
- *
105
- * @internal
106
- * @experimental Since 1.121
107
104
  * @private
108
105
  *
109
106
  * @alias sap.cux.home.utils.DecisionDialog