@sapui5/sap.cux.home 1.136.3 → 1.139.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 (446) 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 +11 -7
  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 +31 -15
  16. package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
  17. package/src/sap/cux/home/AppsAdditionPanel.ts +36 -16
  18. package/src/sap/cux/home/AppsContainer.d.ts +0 -2
  19. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  20. package/src/sap/cux/home/AppsContainer.js +5 -8
  21. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  22. package/src/sap/cux/home/AppsContainer.ts +3 -8
  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 +5 -6
  31. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  32. package/src/sap/cux/home/BaseAppPanel.ts +3 -5
  33. package/src/sap/cux/home/BaseAppPersPanel.d.ts +0 -2
  34. package/src/sap/cux/home/BaseAppPersPanel.d.ts.map +1 -1
  35. package/src/sap/cux/home/BaseAppPersPanel.js +6 -6
  36. package/src/sap/cux/home/BaseAppPersPanel.js.map +1 -1
  37. package/src/sap/cux/home/BaseAppPersPanel.ts +9 -7
  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 +10 -5
  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/BaseContainerRenderer.d.ts +4 -4
  44. package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
  45. package/src/sap/cux/home/BaseContainerRenderer.js +17 -19
  46. package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
  47. package/src/sap/cux/home/BaseContainerRenderer.ts +21 -25
  48. package/src/sap/cux/home/BaseLayout.d.ts +0 -1
  49. package/src/sap/cux/home/BaseLayout.d.ts.map +1 -1
  50. package/src/sap/cux/home/BaseLayout.js +1 -2
  51. package/src/sap/cux/home/BaseLayout.js.map +1 -1
  52. package/src/sap/cux/home/BaseLayout.ts +1 -2
  53. package/src/sap/cux/home/BaseNewsItem.d.ts +1 -2
  54. package/src/sap/cux/home/BaseNewsItem.d.ts.map +1 -1
  55. package/src/sap/cux/home/BaseNewsItem.js +7 -2
  56. package/src/sap/cux/home/BaseNewsItem.js.map +1 -1
  57. package/src/sap/cux/home/BaseNewsItem.ts +8 -3
  58. package/src/sap/cux/home/BaseNewsPanel.d.ts +1 -2
  59. package/src/sap/cux/home/BaseNewsPanel.d.ts.map +1 -1
  60. package/src/sap/cux/home/BaseNewsPanel.js +7 -2
  61. package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
  62. package/src/sap/cux/home/BaseNewsPanel.ts +8 -3
  63. package/src/sap/cux/home/BasePagePanel.d.ts +1 -2
  64. package/src/sap/cux/home/BasePagePanel.d.ts.map +1 -1
  65. package/src/sap/cux/home/BasePagePanel.gen.d.ts +34 -0
  66. package/src/sap/cux/home/BasePagePanel.js +16 -2
  67. package/src/sap/cux/home/BasePagePanel.js.map +1 -1
  68. package/src/sap/cux/home/BasePagePanel.ts +17 -3
  69. package/src/sap/cux/home/BasePanel.d.ts +0 -1
  70. package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
  71. package/src/sap/cux/home/BasePanel.js +0 -1
  72. package/src/sap/cux/home/BasePanel.js.map +1 -1
  73. package/src/sap/cux/home/BasePanel.ts +0 -1
  74. package/src/sap/cux/home/BaseSettingsDialog.d.ts +0 -1
  75. package/src/sap/cux/home/BaseSettingsDialog.d.ts.map +1 -1
  76. package/src/sap/cux/home/BaseSettingsDialog.js +0 -1
  77. package/src/sap/cux/home/BaseSettingsDialog.js.map +1 -1
  78. package/src/sap/cux/home/BaseSettingsDialog.ts +0 -1
  79. package/src/sap/cux/home/BaseSettingsPanel.d.ts +0 -1
  80. package/src/sap/cux/home/BaseSettingsPanel.d.ts.map +1 -1
  81. package/src/sap/cux/home/BaseSettingsPanel.js +2 -2
  82. package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
  83. package/src/sap/cux/home/BaseSettingsPanel.ts +3 -2
  84. package/src/sap/cux/home/CardsPanel.d.ts +0 -1
  85. package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
  86. package/src/sap/cux/home/CardsPanel.js +3 -4
  87. package/src/sap/cux/home/CardsPanel.js.map +1 -1
  88. package/src/sap/cux/home/CardsPanel.ts +3 -7
  89. package/src/sap/cux/home/ContentAdditionDialog.d.ts +0 -3
  90. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  91. package/src/sap/cux/home/ContentAdditionDialog.js +4 -8
  92. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  93. package/src/sap/cux/home/ContentAdditionDialog.ts +4 -8
  94. package/src/sap/cux/home/ErrorPanel.d.ts +1 -2
  95. package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
  96. package/src/sap/cux/home/ErrorPanel.gen.d.ts +24 -0
  97. package/src/sap/cux/home/ErrorPanel.js +16 -2
  98. package/src/sap/cux/home/ErrorPanel.js.map +1 -1
  99. package/src/sap/cux/home/ErrorPanel.ts +17 -3
  100. package/src/sap/cux/home/FavAppPanel.d.ts +0 -1
  101. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  102. package/src/sap/cux/home/FavAppPanel.js +15 -12
  103. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  104. package/src/sap/cux/home/FavAppPanel.ts +20 -15
  105. package/src/sap/cux/home/FrequentAppPanel.d.ts +0 -1
  106. package/src/sap/cux/home/FrequentAppPanel.d.ts.map +1 -1
  107. package/src/sap/cux/home/FrequentAppPanel.js +0 -1
  108. package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
  109. package/src/sap/cux/home/FrequentAppPanel.ts +0 -1
  110. package/src/sap/cux/home/Group.d.ts +2 -2
  111. package/src/sap/cux/home/Group.d.ts.map +1 -1
  112. package/src/sap/cux/home/Group.gen.d.ts +47 -1
  113. package/src/sap/cux/home/Group.js +30 -3
  114. package/src/sap/cux/home/Group.js.map +1 -1
  115. package/src/sap/cux/home/Group.ts +26 -6
  116. package/src/sap/cux/home/IToDoPanel.d.ts +1 -2
  117. package/src/sap/cux/home/IToDoPanel.d.ts.map +1 -1
  118. package/src/sap/cux/home/IToDoPanel.js.map +1 -1
  119. package/src/sap/cux/home/IToDoPanel.ts +1 -2
  120. package/src/sap/cux/home/InsightsAdditionPanel.d.ts +0 -4
  121. package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
  122. package/src/sap/cux/home/InsightsAdditionPanel.js +5 -14
  123. package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
  124. package/src/sap/cux/home/InsightsAdditionPanel.ts +5 -16
  125. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts +0 -3
  126. package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts.map +1 -1
  127. package/src/sap/cux/home/InsightsCardsSettingsPanel.js +0 -3
  128. package/src/sap/cux/home/InsightsCardsSettingsPanel.js.map +1 -1
  129. package/src/sap/cux/home/InsightsCardsSettingsPanel.ts +0 -3
  130. package/src/sap/cux/home/InsightsContainer.d.ts +1 -2
  131. package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
  132. package/src/sap/cux/home/InsightsContainer.js +21 -5
  133. package/src/sap/cux/home/InsightsContainer.js.map +1 -1
  134. package/src/sap/cux/home/InsightsContainer.ts +24 -5
  135. package/src/sap/cux/home/InsightsTilesSettingsPanel.d.ts +0 -3
  136. package/src/sap/cux/home/InsightsTilesSettingsPanel.d.ts.map +1 -1
  137. package/src/sap/cux/home/InsightsTilesSettingsPanel.js +5 -5
  138. package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
  139. package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +5 -5
  140. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +0 -3
  141. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
  142. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +0 -3
  143. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
  144. package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +0 -3
  145. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts +0 -3
  146. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
  147. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +0 -3
  148. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
  149. package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +0 -3
  150. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts +0 -3
  151. package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
  152. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +4 -6
  153. package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
  154. package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +13 -8
  155. package/src/sap/cux/home/KeyUserPagesSettingsPanel.d.ts +0 -3
  156. package/src/sap/cux/home/KeyUserPagesSettingsPanel.d.ts.map +1 -1
  157. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js +0 -3
  158. package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
  159. package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +0 -3
  160. package/src/sap/cux/home/KeyUserSettingsDialog.d.ts +0 -3
  161. package/src/sap/cux/home/KeyUserSettingsDialog.d.ts.map +1 -1
  162. package/src/sap/cux/home/KeyUserSettingsDialog.js +0 -3
  163. package/src/sap/cux/home/KeyUserSettingsDialog.js.map +1 -1
  164. package/src/sap/cux/home/KeyUserSettingsDialog.ts +0 -3
  165. package/src/sap/cux/home/Layout.d.ts +0 -2
  166. package/src/sap/cux/home/Layout.d.ts.map +1 -1
  167. package/src/sap/cux/home/Layout.js +0 -2
  168. package/src/sap/cux/home/Layout.js.map +1 -1
  169. package/src/sap/cux/home/Layout.ts +0 -3
  170. package/src/sap/cux/home/LayoutSettingsPanel.d.ts +0 -3
  171. package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
  172. package/src/sap/cux/home/LayoutSettingsPanel.js +0 -3
  173. package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
  174. package/src/sap/cux/home/LayoutSettingsPanel.ts +0 -3
  175. package/src/sap/cux/home/MenuItem.d.ts +0 -1
  176. package/src/sap/cux/home/MenuItem.d.ts.map +1 -1
  177. package/src/sap/cux/home/MenuItem.js +0 -1
  178. package/src/sap/cux/home/MenuItem.js.map +1 -1
  179. package/src/sap/cux/home/MenuItem.ts +0 -1
  180. package/src/sap/cux/home/NewsAndPagesContainer.d.ts +12 -14
  181. package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
  182. package/src/sap/cux/home/NewsAndPagesContainer.js +10 -12
  183. package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
  184. package/src/sap/cux/home/NewsAndPagesContainer.ts +20 -18
  185. package/src/sap/cux/home/NewsGroup.d.ts +0 -3
  186. package/src/sap/cux/home/NewsGroup.d.ts.map +1 -1
  187. package/src/sap/cux/home/NewsGroup.js +0 -3
  188. package/src/sap/cux/home/NewsGroup.js.map +1 -1
  189. package/src/sap/cux/home/NewsGroup.ts +0 -3
  190. package/src/sap/cux/home/NewsItem.d.ts +0 -3
  191. package/src/sap/cux/home/NewsItem.d.ts.map +1 -1
  192. package/src/sap/cux/home/NewsItem.js +0 -3
  193. package/src/sap/cux/home/NewsItem.js.map +1 -1
  194. package/src/sap/cux/home/NewsItem.ts +0 -3
  195. package/src/sap/cux/home/NewsPanel.d.ts +7 -10
  196. package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
  197. package/src/sap/cux/home/NewsPanel.js +13 -14
  198. package/src/sap/cux/home/NewsPanel.js.map +1 -1
  199. package/src/sap/cux/home/NewsPanel.ts +15 -14
  200. package/src/sap/cux/home/NewsSettingsPanel.d.ts +0 -3
  201. package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
  202. package/src/sap/cux/home/NewsSettingsPanel.js +1 -4
  203. package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
  204. package/src/sap/cux/home/NewsSettingsPanel.ts +1 -4
  205. package/src/sap/cux/home/NoDataContainer.d.ts +0 -2
  206. package/src/sap/cux/home/NoDataContainer.d.ts.map +1 -1
  207. package/src/sap/cux/home/NoDataContainer.js +0 -1
  208. package/src/sap/cux/home/NoDataContainer.js.map +1 -1
  209. package/src/sap/cux/home/NoDataContainer.ts +0 -1
  210. package/src/sap/cux/home/Page.d.ts +0 -3
  211. package/src/sap/cux/home/Page.d.ts.map +1 -1
  212. package/src/sap/cux/home/Page.gen.d.ts +0 -12
  213. package/src/sap/cux/home/Page.js +0 -7
  214. package/src/sap/cux/home/Page.js.map +1 -1
  215. package/src/sap/cux/home/Page.ts +0 -7
  216. package/src/sap/cux/home/PagePanel.d.ts +0 -4
  217. package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
  218. package/src/sap/cux/home/PagePanel.js +0 -4
  219. package/src/sap/cux/home/PagePanel.js.map +1 -1
  220. package/src/sap/cux/home/PagePanel.ts +0 -4
  221. package/src/sap/cux/home/PageSettingsPanel.d.ts +0 -3
  222. package/src/sap/cux/home/PageSettingsPanel.d.ts.map +1 -1
  223. package/src/sap/cux/home/PageSettingsPanel.js +3 -5
  224. package/src/sap/cux/home/PageSettingsPanel.js.map +1 -1
  225. package/src/sap/cux/home/PageSettingsPanel.ts +3 -5
  226. package/src/sap/cux/home/RecentAppPanel.d.ts +0 -1
  227. package/src/sap/cux/home/RecentAppPanel.d.ts.map +1 -1
  228. package/src/sap/cux/home/RecentAppPanel.js +0 -1
  229. package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
  230. package/src/sap/cux/home/RecentAppPanel.ts +0 -1
  231. package/src/sap/cux/home/RecommendedAppPanel.d.ts +0 -1
  232. package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
  233. package/src/sap/cux/home/RecommendedAppPanel.js +0 -1
  234. package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
  235. package/src/sap/cux/home/RecommendedAppPanel.ts +0 -1
  236. package/src/sap/cux/home/SettingsDialog.d.ts +0 -3
  237. package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
  238. package/src/sap/cux/home/SettingsDialog.js +2 -4
  239. package/src/sap/cux/home/SettingsDialog.js.map +1 -1
  240. package/src/sap/cux/home/SettingsDialog.ts +2 -4
  241. package/src/sap/cux/home/SituationPanel.d.ts +0 -1
  242. package/src/sap/cux/home/SituationPanel.d.ts.map +1 -1
  243. package/src/sap/cux/home/SituationPanel.js +0 -1
  244. package/src/sap/cux/home/SituationPanel.js.map +1 -1
  245. package/src/sap/cux/home/SituationPanel.ts +0 -1
  246. package/src/sap/cux/home/SpaceInsightsPanel.d.ts +207 -0
  247. package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -0
  248. package/src/sap/cux/home/SpaceInsightsPanel.gen.d.ts +200 -0
  249. package/src/sap/cux/home/SpaceInsightsPanel.js +789 -0
  250. package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -0
  251. package/src/sap/cux/home/SpaceInsightsPanel.ts +631 -0
  252. package/src/sap/cux/home/SpacePanel.d.ts +117 -0
  253. package/src/sap/cux/home/SpacePanel.d.ts.map +1 -0
  254. package/src/sap/cux/home/SpacePanel.gen.d.ts +77 -0
  255. package/src/sap/cux/home/SpacePanel.js +599 -0
  256. package/src/sap/cux/home/SpacePanel.js.map +1 -0
  257. package/src/sap/cux/home/SpacePanel.ts +461 -0
  258. package/src/sap/cux/home/TaskPanel.d.ts +0 -1
  259. package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
  260. package/src/sap/cux/home/TaskPanel.js +8 -20
  261. package/src/sap/cux/home/TaskPanel.js.map +1 -1
  262. package/src/sap/cux/home/TaskPanel.ts +9 -20
  263. package/src/sap/cux/home/TilesPanel.d.ts +0 -1
  264. package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
  265. package/src/sap/cux/home/TilesPanel.js +5 -6
  266. package/src/sap/cux/home/TilesPanel.js.map +1 -1
  267. package/src/sap/cux/home/TilesPanel.ts +5 -12
  268. package/src/sap/cux/home/ToDoPanel.d.ts +11 -1
  269. package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
  270. package/src/sap/cux/home/ToDoPanel.js +59 -22
  271. package/src/sap/cux/home/ToDoPanel.js.map +1 -1
  272. package/src/sap/cux/home/ToDoPanel.ts +63 -22
  273. package/src/sap/cux/home/ToDosContainer.d.ts +0 -2
  274. package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
  275. package/src/sap/cux/home/ToDosContainer.js +2 -3
  276. package/src/sap/cux/home/ToDosContainer.js.map +1 -1
  277. package/src/sap/cux/home/ToDosContainer.ts +1 -2
  278. package/src/sap/cux/home/i18n/messagebundle.properties +22 -13
  279. package/src/sap/cux/home/i18n/messagebundle_ar.properties +6 -3
  280. package/src/sap/cux/home/i18n/messagebundle_bg.properties +6 -3
  281. package/src/sap/cux/home/i18n/messagebundle_ca.properties +6 -3
  282. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +6 -3
  283. package/src/sap/cux/home/i18n/messagebundle_cs.properties +6 -3
  284. package/src/sap/cux/home/i18n/messagebundle_cy.properties +6 -3
  285. package/src/sap/cux/home/i18n/messagebundle_da.properties +6 -3
  286. package/src/sap/cux/home/i18n/messagebundle_de.properties +6 -3
  287. package/src/sap/cux/home/i18n/messagebundle_el.properties +6 -3
  288. package/src/sap/cux/home/i18n/messagebundle_en.properties +6 -3
  289. package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +6 -3
  290. package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +65 -13
  291. package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +19 -9
  292. package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +57 -11
  293. package/src/sap/cux/home/i18n/messagebundle_es.properties +6 -3
  294. package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +6 -3
  295. package/src/sap/cux/home/i18n/messagebundle_et.properties +6 -3
  296. package/src/sap/cux/home/i18n/messagebundle_fi.properties +6 -3
  297. package/src/sap/cux/home/i18n/messagebundle_fr.properties +6 -3
  298. package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +6 -3
  299. package/src/sap/cux/home/i18n/messagebundle_hi.properties +6 -3
  300. package/src/sap/cux/home/i18n/messagebundle_hr.properties +6 -3
  301. package/src/sap/cux/home/i18n/messagebundle_hu.properties +6 -3
  302. package/src/sap/cux/home/i18n/messagebundle_id.properties +6 -3
  303. package/src/sap/cux/home/i18n/messagebundle_it.properties +6 -3
  304. package/src/sap/cux/home/i18n/messagebundle_iw.properties +6 -3
  305. package/src/sap/cux/home/i18n/messagebundle_ja.properties +6 -3
  306. package/src/sap/cux/home/i18n/messagebundle_kk.properties +6 -3
  307. package/src/sap/cux/home/i18n/messagebundle_ko.properties +6 -3
  308. package/src/sap/cux/home/i18n/messagebundle_lt.properties +6 -3
  309. package/src/sap/cux/home/i18n/messagebundle_lv.properties +6 -3
  310. package/src/sap/cux/home/i18n/messagebundle_mk.properties +6 -3
  311. package/src/sap/cux/home/i18n/messagebundle_ms.properties +6 -3
  312. package/src/sap/cux/home/i18n/messagebundle_nl.properties +6 -3
  313. package/src/sap/cux/home/i18n/messagebundle_no.properties +6 -3
  314. package/src/sap/cux/home/i18n/messagebundle_pl.properties +6 -3
  315. package/src/sap/cux/home/i18n/messagebundle_pt.properties +6 -3
  316. package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +6 -3
  317. package/src/sap/cux/home/i18n/messagebundle_ro.properties +6 -3
  318. package/src/sap/cux/home/i18n/messagebundle_ru.properties +6 -3
  319. package/src/sap/cux/home/i18n/messagebundle_sh.properties +6 -3
  320. package/src/sap/cux/home/i18n/messagebundle_sk.properties +6 -3
  321. package/src/sap/cux/home/i18n/messagebundle_sl.properties +6 -3
  322. package/src/sap/cux/home/i18n/messagebundle_sr.properties +6 -3
  323. package/src/sap/cux/home/i18n/messagebundle_sv.properties +6 -3
  324. package/src/sap/cux/home/i18n/messagebundle_th.properties +6 -3
  325. package/src/sap/cux/home/i18n/messagebundle_tr.properties +6 -3
  326. package/src/sap/cux/home/i18n/messagebundle_uk.properties +6 -3
  327. package/src/sap/cux/home/i18n/messagebundle_vi.properties +6 -3
  328. package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +6 -3
  329. package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +6 -3
  330. package/src/sap/cux/home/interface/AppsInterface.d.ts +1 -0
  331. package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
  332. package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
  333. package/src/sap/cux/home/interface/AppsInterface.ts +1 -0
  334. package/src/sap/cux/home/interface/CardsInterface.d.ts +1 -5
  335. package/src/sap/cux/home/interface/CardsInterface.d.ts.map +1 -1
  336. package/src/sap/cux/home/interface/CardsInterface.js.map +1 -1
  337. package/src/sap/cux/home/interface/CardsInterface.ts +1 -1
  338. package/src/sap/cux/home/library.d.ts +3 -4
  339. package/src/sap/cux/home/library.d.ts.map +1 -1
  340. package/src/sap/cux/home/library.js +3 -4
  341. package/src/sap/cux/home/library.js.map +1 -1
  342. package/src/sap/cux/home/library.ts +3 -4
  343. package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +1 -9
  344. package/src/sap/cux/home/themes/base/InsightsContainer.less +4 -0
  345. package/src/sap/cux/home/themes/base/KeyUserSettingsDialog.less +0 -5
  346. package/src/sap/cux/home/themes/base/ToDosContainer.less +2 -1
  347. package/src/sap/cux/home/utils/Accessibility.js +2 -2
  348. package/src/sap/cux/home/utils/Accessibility.js.map +1 -1
  349. package/src/sap/cux/home/utils/Accessibility.ts +2 -2
  350. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.d.ts +0 -1
  351. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.d.ts.map +1 -1
  352. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.js +0 -1
  353. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.js.map +1 -1
  354. package/src/sap/cux/home/utils/AnalyticalCardSkeleton.ts +0 -1
  355. package/src/sap/cux/home/utils/AppManager.d.ts +4 -7
  356. package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
  357. package/src/sap/cux/home/utils/AppManager.js +12 -13
  358. package/src/sap/cux/home/utils/AppManager.js.map +1 -1
  359. package/src/sap/cux/home/utils/AppManager.ts +20 -13
  360. package/src/sap/cux/home/utils/BatchHelper.d.ts +0 -3
  361. package/src/sap/cux/home/utils/BatchHelper.d.ts.map +1 -1
  362. package/src/sap/cux/home/utils/BatchHelper.js +0 -3
  363. package/src/sap/cux/home/utils/BatchHelper.js.map +1 -1
  364. package/src/sap/cux/home/utils/BatchHelper.ts +0 -3
  365. package/src/sap/cux/home/utils/CommonUtils.d.ts +9 -0
  366. package/src/sap/cux/home/utils/CommonUtils.d.ts.map +1 -1
  367. package/src/sap/cux/home/utils/CommonUtils.js +23 -2
  368. package/src/sap/cux/home/utils/CommonUtils.js.map +1 -1
  369. package/src/sap/cux/home/utils/CommonUtils.ts +28 -1
  370. package/src/sap/cux/home/utils/Constants.d.ts +4 -5
  371. package/src/sap/cux/home/utils/Constants.d.ts.map +1 -1
  372. package/src/sap/cux/home/utils/Constants.js +5 -5
  373. package/src/sap/cux/home/utils/Constants.js.map +1 -1
  374. package/src/sap/cux/home/utils/Constants.ts +4 -5
  375. package/src/sap/cux/home/utils/DecisionDialog.d.ts +0 -3
  376. package/src/sap/cux/home/utils/DecisionDialog.d.ts.map +1 -1
  377. package/src/sap/cux/home/utils/DecisionDialog.js +0 -3
  378. package/src/sap/cux/home/utils/DecisionDialog.js.map +1 -1
  379. package/src/sap/cux/home/utils/DecisionDialog.ts +0 -3
  380. package/src/sap/cux/home/utils/FESRUtil.js +1 -1
  381. package/src/sap/cux/home/utils/FESRUtil.js.map +1 -1
  382. package/src/sap/cux/home/utils/FESRUtil.ts +1 -1
  383. package/src/sap/cux/home/utils/FeatureUtils.d.ts +20 -13
  384. package/src/sap/cux/home/utils/FeatureUtils.d.ts.map +1 -1
  385. package/src/sap/cux/home/utils/FeatureUtils.js +33 -29
  386. package/src/sap/cux/home/utils/FeatureUtils.js.map +1 -1
  387. package/src/sap/cux/home/utils/FeatureUtils.ts +38 -31
  388. package/src/sap/cux/home/utils/HttpHelper.d.ts +7 -3
  389. package/src/sap/cux/home/utils/HttpHelper.d.ts.map +1 -1
  390. package/src/sap/cux/home/utils/HttpHelper.js +43 -3
  391. package/src/sap/cux/home/utils/HttpHelper.js.map +1 -1
  392. package/src/sap/cux/home/utils/HttpHelper.ts +25 -3
  393. package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +1 -1
  394. package/src/sap/cux/home/utils/KeyUserPersonalization.js +32 -13
  395. package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +1 -1
  396. package/src/sap/cux/home/utils/KeyUserPersonalization.ts +2 -3
  397. package/src/sap/cux/home/utils/PageManager.d.ts +0 -3
  398. package/src/sap/cux/home/utils/PageManager.d.ts.map +1 -1
  399. package/src/sap/cux/home/utils/PageManager.js +0 -3
  400. package/src/sap/cux/home/utils/PageManager.js.map +1 -1
  401. package/src/sap/cux/home/utils/PageManager.ts +0 -3
  402. package/src/sap/cux/home/utils/PersonalisationUtils.d.ts +0 -3
  403. package/src/sap/cux/home/utils/PersonalisationUtils.d.ts.map +1 -1
  404. package/src/sap/cux/home/utils/PersonalisationUtils.js +0 -3
  405. package/src/sap/cux/home/utils/PersonalisationUtils.js.map +1 -1
  406. package/src/sap/cux/home/utils/PersonalisationUtils.ts +0 -3
  407. package/src/sap/cux/home/utils/UshellPersonalizer.d.ts +0 -3
  408. package/src/sap/cux/home/utils/UshellPersonalizer.d.ts.map +1 -1
  409. package/src/sap/cux/home/utils/UshellPersonalizer.js +0 -3
  410. package/src/sap/cux/home/utils/UshellPersonalizer.js.map +1 -1
  411. package/src/sap/cux/home/utils/UshellPersonalizer.ts +0 -3
  412. package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +20 -16
  413. package/src/sap/cux/home/{AppsContainerGenericPlaceholder.d.ts → utils/placeholder/AppsPlaceholder.d.ts} +2 -2
  414. package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.d.ts.map +1 -0
  415. package/src/sap/cux/home/{AppsContainerGenericPlaceholder.js → utils/placeholder/AppsPlaceholder.js} +1 -1
  416. package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.js.map +1 -0
  417. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +8 -0
  418. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +1 -0
  419. package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.js → utils/placeholder/InsightsPlaceholder.js} +1 -1
  420. package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +1 -0
  421. package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.d.ts → utils/placeholder/NewsAndPagesPlaceholder.d.ts} +3 -3
  422. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +1 -0
  423. package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.js → utils/placeholder/NewsAndPagesPlaceholder.js} +1 -1
  424. package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +1 -0
  425. package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.d.ts → utils/placeholder/ToDosPlaceholder.d.ts} +2 -2
  426. package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.d.ts.map +1 -0
  427. package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.js → utils/placeholder/ToDosPlaceholder.js} +1 -1
  428. package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.js.map +1 -0
  429. package/src/sap/cux/home/AppsContainerGenericPlaceholder.d.ts.map +0 -1
  430. package/src/sap/cux/home/AppsContainerGenericPlaceholder.js.map +0 -1
  431. package/src/sap/cux/home/InsightsContainerGenericPlaceholder.d.ts.map +0 -1
  432. package/src/sap/cux/home/InsightsContainerGenericPlaceholder.js.map +0 -1
  433. package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts +0 -8
  434. package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts.map +0 -1
  435. package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.js.map +0 -1
  436. package/src/sap/cux/home/ToDosContainerGenericPlaceholder.d.ts.map +0 -1
  437. package/src/sap/cux/home/ToDosContainerGenericPlaceholder.js.map +0 -1
  438. package/src/sap/cux/home/utils/CardSkeleton.d.ts +0 -54
  439. package/src/sap/cux/home/utils/CardSkeleton.d.ts.map +0 -1
  440. package/src/sap/cux/home/utils/CardSkeleton.js +0 -61
  441. package/src/sap/cux/home/utils/CardSkeleton.js.map +0 -1
  442. package/src/sap/cux/home/utils/CardSkeleton.ts +0 -53
  443. /package/src/sap/cux/home/{AppsContainerGenericPlaceholder.ts → utils/placeholder/AppsPlaceholder.ts} +0 -0
  444. /package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.ts → utils/placeholder/InsightsPlaceholder.ts} +0 -0
  445. /package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.ts → utils/placeholder/NewsAndPagesPlaceholder.ts} +0 -0
  446. /package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.ts → utils/placeholder/ToDosPlaceholder.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"AppsAdditionPanel.js","names":["sap","ui","define","Log","Button","CustomListItem","ExpandableText","FlexBox","GenericTile","HBox","Label","sap_m_library","MessageToast","Text","VBox","Fragment","sap_ui_core_library","ChangeReason","JSONModel","ResourceModel","Sorter","Container","__AppsContainer","__BaseSettingsPanel","__FavAppPanel","__InsightsContainer","__AppManager","___utils_Constants","___utils_DataFormatUtils","___utils_FeatureUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","ButtonType","_finallyRethrows","finalizer","bind","URLHelper","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","ValueState","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","AppsContainer","BaseSettingsPanel","FavAppPanel","InsightsContainer","AppManager","AI_APP_FINDER_API","AI_APP_FINDER_BASE_URL","CONTENT_ADDITION_PANEL_TYPES","FEATURE_TOGGLES","FESR_IDS","MYINSIGHT_SECTION_ID","recycleId","isNavigationSupportedForFeature","addFESRSemanticStepName","FESR_EVENTS","Constants","DeprecatedInfoText","MinQueryLength","MaxDescriptionLength","SearchStatus","ErrorType","TileType","AppsAdditionPanel","extend","constructor","apply","arguments","appManagerInstance","getInstance","resetSearch","userSelectedApps","clear","model","setProperty","Searching","appSuggestionList","removeSelections","resetFeedback","init","_init","BaseSettingsPanel.prototype.init.call","Set","AI_APP_FINDER","_i18nBundle","getText","_setupActions","_setupContent","attachEvent","resetPanel","addAppsButton","getId","text","type","Emphasized","press","onPressAddApps","bindProperty","parts","formatter","hasError","searchStatus","Complete","PRESS","ADD_AI_APP","addActionButton","Promise","resolve","getServiceAsync","_Container$getService","vizInstantiationService","load","id","name","controller","_Fragment$load","panelContent","addAggregation","query","errorType","NoResultsFound","errorDescription","Idle","loadingAnimations","_generateSearchingAnimations","suggestedAppsCount","suggestedApps","aiPolicyText","_generateAIPolicyText","invalidQuery","feedback","thumbsUp","thumbsDown","setModel","bundleName","byId","bindAggregation","path","factory","_generateListItem","sorter","comparator","firstApp","secondApp","getPriority","statusArray","hasAlreadyAdded","includes","hasDeprecated","firstPriority","secondPriority","attachUpdateFinished","getProperty","getItems","focus","searchTextArea","onsapenter","onPressGo","context","listItem","selected","content","renderType","direction","alignItems","items","_getAppPreviewContainer","_getAppDetailsContainer","addStyleClass","getMultiSelectControl","setEnabled","container","addItem","mode","frameType","width","header","subheader","tileIcon","visible","url","event","_persistDialog","getParent","redirect","getSource","getUrl","vizData","instance","instantiateVisualization","setActive","attachPress","gap","maxCharacters","showColon","_generateStatusTexts","isSupported","_isSupported","_this2","_temp3","isPanelSupported","removeActionButton","contentAdditionDialog","removePanel","updateActionButtons","appsIntent","semanticObject","action","_temp2","undefined","_temp","getFavAppPanel","AI_SMART_APPFINDER","_isNavigationSupporte","loadingShimmer","_resetPanel","defaultModelProperties","setData","getData","_onPressGo","_this3","isValidQuery","_temp5","fetchAppsFromSearch","rawApps","_temp4","fetchAllAvailableVisualizations","allVisualizations","fetchFavVizs","favoriteApps","fetchInsightApps","insightsApps","apps","_generateApps","_filterUnsupportedApps","_handleError","updateAggregation","Refresh","detailedReason","err","error","message","_wasThrown","_result","updatedApps","filter","app","isStaticApp","intents","map","navigationService","isNavigationSupported","supportedAppIndices","_","index","homePageVisualizations","find","viz","vizId","chipID","addedToHomePage","some","visualization","title","subTitle","description","appDescription","icon","iconUrl","tileType","Static","status","getAppStatusTexts","configuration","targetURL","_isValidQuery","trim","_fetchAllAvailableVisualizations","_this4","_temp7","allAvailableVisualizations","_temp6","searchableContentService","getApps","enableVisualizationPreview","allAvailableApps","reduce","visualizations","currentApp","concat","_fetchCSRFToken","fetch","method","headers","response","get","_fetchAppsFromSearch","_this5","token","JSON","stringify","UserInput","_exit","_temp0","_result2","json","_response$json2","queryResult","_temp9","ok","_response$json","errorResponse","_temp8","_getAppStatusTexts","statusTexts","parsedConfig","parse","tileConfig","tileConfiguration","infoText","display_info_text","toLowerCase","warning","stausTexts","applyStatusClass","_applyStatusClass","_onPressAddApps","_this6","_temp14","_temp12","_temp10","close","show","_temp1","dynamicAppsPresent","refreshInsightsApps","_temp11","staticAppsPresent","refreshFavoriteApps","_temp13","getBindingContext","addVisualization","getLayout","_getLayout","getAppsContainer","_getAppsContainer","getContent","_getFavAppPanel","panel","_refreshFavoriteApps","_this7","refreshPanel","getInsightsContainer","_getInsightsContainer","_refreshInsightsApps","_this8","refreshData","onListSelectionChange","_onListSelectionChange","getParameter","delete","add","Array","from","suggestedResponseCount","errorCode","match","_getErrorType","ServiceError","onSearchTextAreaLiveChange","_onSearchTextAreaLiveChange","textArea","getValue","setValueState","Information","setValueStateText","Warning","None","getValueState","linkText","_resetFeedback","sendFeedback","_sendFeedback","feedbackType"],"sources":["AppsAdditionPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport Button from \"sap/m/Button\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport ExpandableText from \"sap/m/ExpandableText\";\nimport FlexBox from \"sap/m/FlexBox\";\nimport GenericTile, { GenericTile$PressEvent } from \"sap/m/GenericTile\";\nimport HBox from \"sap/m/HBox\";\nimport Label from \"sap/m/Label\";\nimport { ButtonType, URLHelper } from \"sap/m/library\";\nimport List from \"sap/m/List\";\nimport { ListBase$SelectionChangeEvent } from \"sap/m/ListBase\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport Text from \"sap/m/Text\";\nimport TextArea, { TextArea$LiveChangeEvent } from \"sap/m/TextArea\";\nimport VBox from \"sap/m/VBox\";\nimport Control from \"sap/ui/core/Control\";\nimport Fragment from \"sap/ui/core/Fragment\";\nimport { ValueState } from \"sap/ui/core/library\";\nimport ChangeReason from \"sap/ui/model/ChangeReason\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport ResourceModel from \"sap/ui/model/resource/ResourceModel\";\nimport Sorter from \"sap/ui/model/Sorter\";\nimport Container from \"sap/ushell/Container\";\nimport Navigation, { Target } from \"sap/ushell/services/Navigation\";\nimport SearchableContent, { AppData } from \"sap/ushell/services/SearchableContent\";\nimport VisualizationInstantiation from \"sap/ushell/services/VisualizationInstantiation\";\nimport AppsContainer from \"./AppsContainer\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport FavAppPanel from \"./FavAppPanel\";\nimport InsightsContainer from \"./InsightsContainer\";\nimport { ICustomVisualization, ICustomVizInstance, IVisualization } from \"./interface/AppsInterface\";\nimport AppManager from \"./utils/AppManager\";\nimport {\n\tAI_APP_FINDER_API,\n\tAI_APP_FINDER_BASE_URL,\n\tCONTENT_ADDITION_PANEL_TYPES,\n\tFEATURE_TOGGLES,\n\tFESR_IDS,\n\tMYINSIGHT_SECTION_ID\n} from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { isNavigationSupportedForFeature } from \"./utils/FeatureUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\nconst Constants = {\n\tDeprecatedInfoText: \"deprecated\",\n\tMinQueryLength: 2,\n\tMaxDescriptionLength: 500\n};\n\nenum SearchStatus {\n\tIdle = \"idle\",\n\tSearching = \"searching\",\n\tComplete = \"complete\"\n}\n\nenum ErrorType {\n\tNoResultsFound = \"noResultsFound\",\n\tServiceError = \"serviceError\"\n}\n\nenum TileType {\n\tStatic = \"STATIC\"\n}\n\ninterface RawAppData {\n\ttitle: string;\n\tsubTitle: string;\n\tappDescription: string;\n\tchipID: string;\n\ttileType: TileType;\n\ticonUrl: string;\n\tconfiguration: string;\n}\ninterface SuggestedApp {\n\ticon: string;\n\ttitle: string;\n\tchipID: string;\n\tstatus: string[];\n\tsubTitle: string;\n\tdescription: string;\n\tisStaticApp: boolean;\n\taddedToHomePage: boolean;\n\tvizData?: IVisualization;\n}\n\ninterface QueryResponse {\n\tvalue: RawAppData[];\n}\n\ninterface ErrorResponse {\n\terror: {\n\t\tcode: string;\n\t\tmessage: string;\n\t};\n}\n\ninterface Configuration {\n\ttileConfiguration: string;\n}\n\ninterface TileConfig {\n\tdisplay_info_text: string;\n\t[key: string]: string;\n}\n\n/**\n *\n * Class for Apps Addition Panel in MyHome.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.136\n *\n * @internal\n * @experimental Since 1.136\n * @private\n *\n * @alias sap.cux.home.AppsAdditionPanel\n */\nexport default class AppsAdditionPanel extends BaseSettingsPanel {\n\tprivate appManagerInstance: AppManager = AppManager.getInstance();\n\tprivate vizInstantiationService!: VisualizationInstantiation;\n\tprivate allAvailableVisualizations!: IVisualization[];\n\tprivate userSelectedApps!: Set<CustomListItem>;\n\tprivate appSuggestionList!: List;\n\tprivate model!: JSONModel;\n\tprivate addAppsButton!: Button;\n\tprivate isPanelSupported!: boolean;\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis.userSelectedApps = new Set<CustomListItem>();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", CONTENT_ADDITION_PANEL_TYPES.AI_APP_FINDER);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"addAppsAndTile\"));\n\n\t\t//setup actions\n\t\tthis._setupActions();\n\n\t\t//setup content\n\t\tvoid this._setupContent();\n\n\t\t//setup events\n\t\tthis.attachEvent(\"onDialogClose\", this.resetPanel.bind(this));\n\t}\n\n\t/**\n\t * Sets up the actions for the Apps Addition Panel.\n\t *\n\t * @private\n\t */\n\tprivate _setupActions(): void {\n\t\tthis.addAppsButton = new Button(recycleId(`${this.getId()}-add-app-btn`), {\n\t\t\ttext: this._i18nBundle.getText(\"addFromInsightsDialogBtn\"),\n\t\t\ttype: ButtonType.Emphasized,\n\t\t\tpress: () => {\n\t\t\t\tvoid this.onPressAddApps();\n\t\t\t}\n\t\t});\n\n\t\tthis.addAppsButton.bindProperty(\"enabled\", {\n\t\t\tparts: [\"/hasError\", \"/searchStatus\", \"/userSelectedApps\"],\n\t\t\tformatter: (hasError: boolean, searchStatus: SearchStatus, userSelectedApps: string[]) => {\n\t\t\t\treturn !hasError && searchStatus === SearchStatus.Complete && userSelectedApps.length > 0;\n\t\t\t}\n\t\t});\n\n\t\taddFESRSemanticStepName(this.addAppsButton, FESR_EVENTS.PRESS, FESR_IDS.ADD_AI_APP);\n\t\tthis.addActionButton(this.addAppsButton);\n\t}\n\n\t/**\n\t * Sets up the content for the Apps Addition Panel.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _setupContent(): Promise<void> {\n\t\tthis.vizInstantiationService = await Container.getServiceAsync<VisualizationInstantiation>(\"VisualizationInstantiation\");\n\n\t\t//load ui fragment\n\t\tconst panelContent = (await Fragment.load({\n\t\t\tid: `${this.getId()}-content`,\n\t\t\tname: \"sap.cux.home.utils.fragment.appsAdditionContent\",\n\t\t\tcontroller: this\n\t\t})) as Control;\n\t\tthis.addAggregation(\"content\", panelContent);\n\n\t\t//initialize ui model\n\t\tthis.model = new JSONModel({\n\t\t\tquery: \"\",\n\t\t\thasError: false,\n\t\t\terrorType: ErrorType.NoResultsFound,\n\t\t\terrorDescription: \"\",\n\t\t\tsearchStatus: SearchStatus.Idle,\n\t\t\tloadingAnimations: this._generateSearchingAnimations(),\n\t\t\tsuggestedAppsCount: 0,\n\t\t\tuserSelectedApps: [],\n\t\t\tsuggestedApps: [],\n\t\t\taiPolicyText: this._generateAIPolicyText(),\n\t\t\tinvalidQuery: true,\n\t\t\tfeedback: {\n\t\t\t\tthumbsUp: false,\n\t\t\t\tthumbsDown: false\n\t\t\t}\n\t\t});\n\n\t\tpanelContent.setModel(this.model);\n\t\tpanelContent.setModel(new ResourceModel({ bundleName: \"sap.cux.home.i18n.messagebundle\" }), \"i18n\");\n\t\tthis.addAppsButton.setModel(this.model);\n\n\t\t//bind suggested apps list\n\t\tthis.appSuggestionList = Fragment.byId(`${this.getId()}-content`, \"appsList\") as List;\n\t\tthis.appSuggestionList.bindAggregation(\"items\", {\n\t\t\tpath: \"/suggestedApps\",\n\t\t\tfactory: this._generateListItem.bind(this),\n\t\t\tsorter: new Sorter({\n\t\t\t\tpath: \"status\",\n\t\t\t\tcomparator: (firstApp: string[], secondApp: string[]) => {\n\t\t\t\t\tconst getPriority = (statusArray: string[]) => {\n\t\t\t\t\t\tif (statusArray.length === 0) return 0; // Empty array has highest priority\n\n\t\t\t\t\t\tconst hasAlreadyAdded = statusArray.includes(this._i18nBundle.getText(\"alreadyAddedApp\") as string);\n\t\t\t\t\t\tconst hasDeprecated = statusArray.includes(this._i18nBundle.getText(\"deprecatedApp\") as string);\n\n\t\t\t\t\t\tif (hasAlreadyAdded && hasDeprecated) return 3; // Both statuses - lowest priority\n\t\t\t\t\t\tif (hasAlreadyAdded) return 1; // Only \"Already Added\"\n\t\t\t\t\t\tif (hasDeprecated) return 2; // Only \"Deprecated\"\n\n\t\t\t\t\t\treturn 4; // Any other combination (fallback)\n\t\t\t\t\t};\n\n\t\t\t\t\tconst firstPriority = getPriority(firstApp);\n\t\t\t\t\tconst secondPriority = getPriority(secondApp);\n\n\t\t\t\t\treturn firstPriority - secondPriority;\n\t\t\t\t}\n\t\t\t})\n\t\t});\n\n\t\t//focus on the first item when the list is updated\n\t\tthis.appSuggestionList.attachUpdateFinished(() => {\n\t\t\tif (this.model.getProperty(\"/suggestedAppsCount\") > 0 && this.model.getProperty(\"/searchStatus\") === SearchStatus.Complete) {\n\t\t\t\tthis.appSuggestionList.getItems()?.[0].focus();\n\t\t\t}\n\t\t});\n\n\t\t//bind search field\n\t\tconst searchTextArea = Fragment.byId(`${this.getId()}-content`, \"searchTextArea\") as TextArea;\n\t\tsearchTextArea.onsapenter = this.onPressGo.bind(this);\n\t}\n\n\t/**\n\t * Generates a list item for the Apps Addition Panel.\n\t *\n\t * @private\n\t * @param {string} id - The unique ID for the list item.\n\t * @param {Context} context - The binding context for the list item.\n\t * @returns {CustomListItem} The generated list item control.\n\t */\n\tprivate _generateListItem(id: string, context: Context): CustomListItem {\n\t\tconst listItem = new CustomListItem(id, {\n\t\t\tselected: context.getProperty(\"addedToHomePage\") as boolean,\n\t\t\tcontent: [\n\t\t\t\tnew FlexBox(recycleId(`${id}-result-container`), {\n\t\t\t\t\trenderType: \"Bare\",\n\t\t\t\t\tdirection: context.getProperty(\"isStaticApp\") ? \"Column\" : \"Row\",\n\t\t\t\t\talignItems: context.getProperty(\"isStaticApp\") ? \"Start\" : \"Center\",\n\t\t\t\t\titems: [this._getAppPreviewContainer(id, context), this._getAppDetailsContainer(id, context)]\n\t\t\t\t}).addStyleClass(\"sapUiSmallMargin\")\n\t\t\t]\n\t\t});\n\n\t\t//bind associated checkbox to disable it when the app is already added to home page\n\t\tlistItem.getMultiSelectControl(true).setEnabled(!context.getProperty(\"addedToHomePage\"));\n\n\t\treturn listItem;\n\t}\n\n\t/**\n\t * Creates a preview container for the suggested app.\n\t *\n\t * @private\n\t * @param {string} id - The unique ID for the container.\n\t * @param {Context} context - The binding context for the app.\n\t * @returns {HBox} The app preview container.\n\t */\n\tprivate _getAppPreviewContainer(id: string, context: Context): HBox {\n\t\tconst container = new HBox(recycleId(`${id}-suggestedAppContainer`), {\n\t\t\trenderType: \"Bare\"\n\t\t});\n\n\t\tif (context.getProperty(\"isStaticApp\") as boolean) {\n\t\t\t// create generic tile for static app\n\t\t\tcontainer.addItem(\n\t\t\t\tnew GenericTile(recycleId(`${id}-staticApp`), {\n\t\t\t\t\tmode: \"IconMode\",\n\t\t\t\t\tframeType: \"TwoByHalf\",\n\t\t\t\t\twidth: \"19rem\",\n\t\t\t\t\theader: context.getProperty(\"title\") as string,\n\t\t\t\t\tsubheader: context.getProperty(\"subTitle\") as string,\n\t\t\t\t\ttileIcon: context.getProperty(\"icon\") as string,\n\t\t\t\t\tvisible: context.getProperty(\"isStaticApp\") as boolean,\n\t\t\t\t\turl: context.getProperty(\"url\") as string,\n\t\t\t\t\tpress: (event: GenericTile$PressEvent) => {\n\t\t\t\t\t\tthis._persistDialog(this.getParent() as ContentAdditionDialog);\n\t\t\t\t\t\tURLHelper.redirect(event.getSource()?.getUrl(), false);\n\t\t\t\t\t}\n\t\t\t\t}).addStyleClass(\"suggestedTile\")\n\t\t\t);\n\t\t} else {\n\t\t\t// create custom visualization for other apps\n\t\t\tconst vizData = context.getProperty(\"vizData\") as ICustomVisualization;\n\t\t\tconst instance = this.vizInstantiationService.instantiateVisualization(vizData) as ICustomVizInstance;\n\t\t\tinstance?.setActive(true);\n\t\t\tinstance.attachPress(() => this._persistDialog(this.getParent() as ContentAdditionDialog));\n\t\t\tcontainer.addItem(instance);\n\t\t}\n\n\t\treturn container;\n\t}\n\n\t/**\n\t * Creates a details container for the suggested app.\n\t *\n\t * @private\n\t * @param {string} id - The unique ID for the container.\n\t * @param {Context} context - The binding context for the app.\n\t * @returns {VBox} The app details container.\n\t */\n\tprivate _getAppDetailsContainer(id: string, context: Context): VBox {\n\t\treturn new VBox(recycleId(`${id}-app-details-container`), {\n\t\t\trenderType: \"Bare\",\n\t\t\tgap: \"0.5rem\",\n\t\t\titems: [\n\t\t\t\tnew ExpandableText(recycleId(`${id}-description`), {\n\t\t\t\t\ttext: context.getProperty(\"description\") as string,\n\t\t\t\t\tmaxCharacters: Constants.MaxDescriptionLength\n\t\t\t\t}),\n\t\t\t\tnew HBox(recycleId(`${id}-app-status-container`), {\n\t\t\t\t\trenderType: \"Bare\",\n\t\t\t\t\tvisible: (context.getProperty(\"status\") as string[]).length > 0,\n\t\t\t\t\titems: [\n\t\t\t\t\t\tnew Label(recycleId(`${id}-appStatusLabel`), {\n\t\t\t\t\t\t\ttext: this._i18nBundle.getText(\"appStatus\"),\n\t\t\t\t\t\t\tshowColon: true\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tnew HBox(recycleId(`${id}-app-status-texts`), {\n\t\t\t\t\t\t\trenderType: \"Bare\",\n\t\t\t\t\t\t\titems: this._generateStatusTexts(id, context.getProperty(\"status\") as string[])\n\t\t\t\t\t\t}).addStyleClass(\"sapUiTinyMarginBegin statusTextsContainer\")\n\t\t\t\t\t]\n\t\t\t\t})\n\t\t\t]\n\t\t}).addStyleClass((context.getProperty(\"isStaticApp\") as boolean) ? \"sapUiSmallMarginTop\" : \"sapUiSmallMarginBegin\");\n\t}\n\n\t/**\n\t * Checks if the Apps Addition Panel is supported. Internally, it checks if the\n\t * AI Smart App Finder feature toggle is enabled and if the associated application\n\t * is accessible for the user.\n\t *\n\t * @public\n\t * @override\n\t * @async\n\t * @returns {Promise<boolean>} A promise that resolves to a boolean indicating support.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst appsIntent: Target = {\n\t\t\ttarget: {\n\t\t\t\tsemanticObject: \"IntelligentPrompt\",\n\t\t\t\taction: \"propose\"\n\t\t\t}\n\t\t};\n\t\tif (this.isPanelSupported === undefined) {\n\t\t\tthis.isPanelSupported = false;\n\n\t\t\tif (this.getFavAppPanel()) {\n\t\t\t\tthis.isPanelSupported = await isNavigationSupportedForFeature(FEATURE_TOGGLES.AI_SMART_APPFINDER, appsIntent);\n\t\t\t}\n\t\t}\n\n\t\t//remove panel if it's not supported\n\t\tif (!this.isPanelSupported) {\n\t\t\tthis.removeActionButton(this.addAppsButton);\n\t\t\tconst contentAdditionDialog = this.getParent() as ContentAdditionDialog;\n\t\t\tcontentAdditionDialog.removePanel(this);\n\t\t\tcontentAdditionDialog.updateActionButtons();\n\t\t}\n\n\t\treturn this.isPanelSupported;\n\t}\n\n\t/**\n\t * Generates the searching animation SVG as a string.\n\t *\n\t * @private\n\t * @returns {string} The SVG string for the loading animation.\n\t */\n\tprivate _generateSearchingAnimations(): string[] {\n\t\tconst loadingShimmer = `<defs>\n\t\t\t<linearGradient id=\"loadingShimmer\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\">\n\t\t\t\t<stop offset=\"0%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\t\t\t\t<stop offset=\"20%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\t\t\t\t<stop offset=\"50%\" stop-color=\"var(--sapContent_Placeholderloading_Background_Dark)\" />\n\t\t\t\t<stop offset=\"80%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\t\t\t\t<stop offset=\"100%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\n\t\t\t\t<animate\n\t\t\t\t\tattributeName=\"x1\"\n\t\t\t\t\tvalues=\"-0.6;0.6\"\n\t\t\t\t\tdur=\"2.5s\"\n\t\t\t\t\trepeatCount=\"indefinite\" />\n\t\t\t\t<animate\n\t\t\t\t\tattributeName=\"x2\"\n\t\t\t\t\tvalues=\"0.4;1.6\"\n\t\t\t\t\tdur=\"2.5s\"\n\t\t\t\t\trepeatCount=\"indefinite\" />\n\t\t\t</linearGradient>\n\t\t</defs>`;\n\n\t\treturn [\n\t\t\t`<svg height=\"167\" fill=\"none\">\n\t\t\t\t${loadingShimmer}\n\t\t\t\t<rect x=\"16\" y=\"43\" width=\"16\" height=\"16\" rx=\"4\" fill=\"var(--sapContent_Placeholderloading_Background)\"/>\n\t\t\t\t<rect x=\"48\" y=\"16\" width=\"37%\" height=\"70\" rx=\"16\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t\t<rect x=\"48\" y=\"102\" width=\"93%\" height=\"48\" rx=\"4\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t</svg>`,\n\t\t\t`<svg height=\"180\" fill=\"none\">\n\t\t\t\t${loadingShimmer}\n\t\t\t\t<rect x=\"16\" y=\"82\" width=\"16\" height=\"16\" rx=\"4\" fill=\"var(--sapContent_Placeholderloading_Background)\"/>\n\t\t\t\t<rect x=\"48\" y=\"16\" width=\"148\" height=\"148\" rx=\"16\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t\t<rect x=\"212\" y=\"54\" width=\"75%\" height=\"48\" rx=\"4\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t\t<rect x=\"212\" y=\"110\" width=\"13%\" height=\"16\" rx=\"4\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t</svg>`\n\t\t];\n\t}\n\n\t/**\n\t * Resets the search state in the Apps Addition Panel.\n\t *\n\t * @private\n\t */\n\tprivate resetSearch: () => void = () => {\n\t\tthis.userSelectedApps.clear();\n\t\tthis.model.setProperty(\"/hasError\", false);\n\t\tthis.model.setProperty(\"/suggestedApps\", []);\n\t\tthis.model.setProperty(\"/suggestedAppsCount\", 0);\n\t\tthis.model.setProperty(\"/searchStatus\", SearchStatus.Searching);\n\t\tthis.model.setProperty(\"/userSelectedApps\", []);\n\t\tthis.appSuggestionList.removeSelections(true);\n\t\tthis.resetFeedback();\n\t};\n\n\t/**\n\t * Resets the panel to its default state.\n\t *\n\t * @private\n\t */\n\tpublic resetPanel(): void {\n\t\tconst defaultModelProperties = {\n\t\t\tquery: \"\",\n\t\t\thasError: false,\n\t\t\tsearchStatus: SearchStatus.Idle,\n\t\t\tsuggestedAppsCount: 0,\n\t\t\tuserSelectedApps: [],\n\t\t\tsuggestedApps: [],\n\t\t\tfeedback: {\n\t\t\t\tthumbsUp: false,\n\t\t\t\tthumbsDown: false\n\t\t\t},\n\t\t\tinvalidQuery: true\n\t\t};\n\n\t\tthis.model.setData({ ...this.model.getData(), ...defaultModelProperties } as object);\n\t\tthis.userSelectedApps.clear();\n\t}\n\n\t/**\n\t * Handles the \"Go\" button press event for searching suggested apps.\n\t *\n\t * @private\n\t * @async\n\t */\n\tpublic async onPressGo(): Promise<void> {\n\t\t// validate query\n\t\tconst query = this.model.getProperty(\"/query\") as string;\n\t\tif (!this.isValidQuery(query)) return;\n\n\t\ttry {\n\t\t\t// initiate search\n\t\t\tthis.resetSearch();\n\n\t\t\tconst rawApps = await this.fetchAppsFromSearch(query);\n\t\t\t// suggest apps if there are results and search is not cancelled\n\t\t\tif (this.model.getProperty(\"/searchStatus\") === SearchStatus.Searching) {\n\t\t\t\tconst allVisualizations = await this.fetchAllAvailableVisualizations();\n\t\t\t\tconst favoriteApps = await this.appManagerInstance.fetchFavVizs(true, true);\n\t\t\t\tconst insightsApps = await this.appManagerInstance.fetchInsightApps(true, this._i18nBundle.getText(\"insights\") as string);\n\n\t\t\t\t// generate suggested apps\n\t\t\t\tconst apps = this._generateApps(rawApps, allVisualizations, [...favoriteApps, ...insightsApps]);\n\t\t\t\tconst suggestedApps = await this._filterUnsupportedApps(apps);\n\n\t\t\t\tif (suggestedApps.length === 0) {\n\t\t\t\t\tthis._handleError(\"\", suggestedApps.length);\n\t\t\t\t} else {\n\t\t\t\t\t// update model with filtered apps\n\t\t\t\t\tthis.model.setProperty(\"/suggestedApps\", suggestedApps);\n\t\t\t\t\tthis.model.setProperty(\"/suggestedAppsCount\", suggestedApps.length);\n\t\t\t\t\tthis.appSuggestionList.updateAggregation(\"items\", ChangeReason.Refresh, { detailedReason: ChangeReason.Refresh });\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tLog.error((err as Error).message);\n\t\t\tthis._handleError();\n\t\t} finally {\n\t\t\t// update search status only if search is not cancelled\n\t\t\tif (this.model.getProperty(\"/searchStatus\") === SearchStatus.Searching) {\n\t\t\t\tthis.model.setProperty(\"/searchStatus\", SearchStatus.Complete);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Filters out unsupported apps based on accessibility.\n\t *\n\t * @private\n\t * @param {SuggestedApp[]} apps - The list of suggested apps to filter.\n\t * @returns {Promise<SuggestedApp[]>} A promise that resolves to the filtered list of supported apps.\n\t */\n\tprivate async _filterUnsupportedApps(apps: SuggestedApp[]): Promise<SuggestedApp[]> {\n\t\tconst updatedApps = apps.filter((app) => (app.isStaticApp ? true : (app.vizData ?? false)));\n\t\tconst intents = updatedApps.map((app) => app.vizData?.target) || [];\n\t\tconst navigationService = await Container.getServiceAsync<Navigation>(\"Navigation\");\n\t\tconst supportedAppIndices = await navigationService.isNavigationSupported(intents as Target[]);\n\n\t\treturn updatedApps.filter((_, index) => supportedAppIndices[index]);\n\t}\n\n\t/**\n\t * Generates suggested apps from raw app data and visualizations.\n\t *\n\t * @private\n\t * @param {RawAppData[]} rawApps - The raw app data to process.\n\t * @param {IVisualization[]} allVisualizations - All available visualizations.\n\t * @param {ICustomVisualization[]} homePageVisualizations - Visualizations available in homepage.\n\t * @returns {SuggestedApp[]} The list of suggested apps.\n\t */\n\tprivate _generateApps(\n\t\trawApps: RawAppData[],\n\t\tallVisualizations: IVisualization[],\n\t\thomePageVisualizations: ICustomVisualization[]\n\t): SuggestedApp[] {\n\t\treturn rawApps.map((app) => {\n\t\t\tconst vizData = allVisualizations.find((viz) => viz.vizId === app.chipID);\n\t\t\tconst addedToHomePage = homePageVisualizations.some((viz) => viz.visualization?.vizId === app.chipID);\n\t\t\treturn {\n\t\t\t\ttitle: app.title,\n\t\t\t\tchipID: app.chipID,\n\t\t\t\tsubTitle: app.subTitle,\n\t\t\t\tdescription: app.appDescription,\n\t\t\t\ticon: app.iconUrl,\n\t\t\t\tvizData,\n\t\t\t\taddedToHomePage,\n\t\t\t\tisStaticApp: app.tileType === TileType.Static,\n\t\t\t\tstatus: this.getAppStatusTexts(app.configuration, addedToHomePage),\n\t\t\t\turl: vizData?.targetURL || \"\"\n\t\t\t};\n\t\t}) as SuggestedApp[];\n\t}\n\n\t/**\n\t * Validates the query string based on minimum length.\n\t *\n\t * @private\n\t * @param {string} query - The query string to validate.\n\t * @returns {boolean} True if the query is valid, otherwise false.\n\t */\n\tprivate isValidQuery(query: string = \"\"): boolean {\n\t\tquery = query?.trim();\n\t\treturn query.length >= Constants.MinQueryLength && query.length <= Constants.MaxDescriptionLength;\n\t}\n\n\t/**\n\t * Fetches all available visualizations for the user.\n\t *\n\t * @private\n\t * @async\n\t * @returns {Promise<IVisualization[]>} A promise that resolves to the list of visualizations.\n\t */\n\tprivate async fetchAllAvailableVisualizations(): Promise<IVisualization[]> {\n\t\tif (!this.allAvailableVisualizations) {\n\t\t\tconst searchableContentService = await Container.getServiceAsync<SearchableContent>(\"SearchableContent\");\n\t\t\tconst allAvailableApps = await searchableContentService.getApps({ enableVisualizationPreview: false });\n\t\t\tthis.allAvailableVisualizations = allAvailableApps.reduce((visualizations: IVisualization[], currentApp: AppData) => {\n\t\t\t\treturn visualizations.concat(currentApp.visualizations);\n\t\t\t}, []);\n\t\t}\n\n\t\treturn this.allAvailableVisualizations;\n\t}\n\n\t/**\n\t * Fetches a CSRF token for secure API requests.\n\t *\n\t * @private\n\t * @async\n\t * @returns {Promise<string | null>} A promise that resolves to the CSRF token or null if fetching fails.\n\t */\n\tprivate async _fetchCSRFToken(): Promise<string | null> {\n\t\ttry {\n\t\t\tconst response = await fetch(AI_APP_FINDER_BASE_URL, { method: \"GET\", headers: { \"X-CSRF-Token\": \"Fetch\" } });\n\t\t\treturn response.headers.get(\"X-CSRF-Token\");\n\t\t} catch (error) {\n\t\t\tLog.error(\"Failed to fetch CSRF token\", error as Error);\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Fetches apps from the search API based on the query.\n\t *\n\t * @private\n\t * @async\n\t * @param {string} query - The search query string.\n\t * @returns {Promise<RawAppData[]>} A promise that resolves to the list of raw app data.\n\t */\n\tprivate async fetchAppsFromSearch(query: string): Promise<RawAppData[]> {\n\t\ttry {\n\t\t\tconst token = await this._fetchCSRFToken();\n\t\t\tconst headers = {\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t...(token && { \"X-CSRF-Token\": token })\n\t\t\t};\n\n\t\t\tconst response = await fetch(AI_APP_FINDER_API, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders,\n\t\t\t\tbody: JSON.stringify({ UserInput: query })\n\t\t\t});\n\n\t\t\t// handle error responses\n\t\t\tif (!response.ok) {\n\t\t\t\tconst errorResponse = (await response.json()) as ErrorResponse;\n\t\t\t\tthis._handleError(errorResponse.error?.message || \"\");\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\tconst queryResult = (await response.json()) as QueryResponse;\n\t\t\treturn queryResult.value || [];\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t\tthis._handleError();\n\t\t\treturn [];\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves status texts for an app based on its configuration and homepage status.\n\t *\n\t * @private\n\t * @param {string} configuration - The app's configuration string.\n\t * @param {boolean} addedToHomePage - Indicates if the app is already added to the homepage.\n\t * @returns {string[]} An array of status texts for the app.\n\t */\n\tprivate getAppStatusTexts(configuration: string, addedToHomePage: boolean): string[] {\n\t\tlet statusTexts = [];\n\n\t\tif (configuration) {\n\t\t\ttry {\n\t\t\t\tconst parsedConfig = JSON.parse(configuration) as Configuration;\n\t\t\t\tconst tileConfig = JSON.parse(parsedConfig?.tileConfiguration) as TileConfig;\n\t\t\t\tconst infoText = (tileConfig?.display_info_text || \"\").toLowerCase();\n\t\t\t\tif (infoText === Constants.DeprecatedInfoText) {\n\t\t\t\t\tstatusTexts.push(this._i18nBundle.getText(\"deprecatedApp\") as string);\n\t\t\t\t}\n\t\t\t} catch (error: unknown) {\n\t\t\t\tLog.warning((error as Error).message);\n\t\t\t}\n\t\t}\n\n\t\tif (addedToHomePage) {\n\t\t\tstatusTexts.push(this._i18nBundle.getText(\"alreadyAddedApp\") as string);\n\t\t}\n\n\t\treturn statusTexts;\n\t}\n\n\t/**\n\t * Generates status text controls for the provided status texts.\n\t *\n\t * @private\n\t * @param {string} id - The id of the list item.\n\t * @param {string[]} stausTexts - The list of status texts.\n\t * @returns {Text[]} An array of Text controls with applied styles.\n\t */\n\tprivate _generateStatusTexts(id: string, stausTexts: string[]): Text[] {\n\t\treturn stausTexts.map((status, index) => {\n\t\t\treturn new Text(recycleId(`${id}-statusText-${index}`), {\n\t\t\t\ttext: status\n\t\t\t}).addStyleClass(this.applyStatusClass(status));\n\t\t});\n\t}\n\n\t/**\n\t * Applies a CSS class to the status text based on its type.\n\t *\n\t * @private\n\t * @param {string} status - The status text to classify.\n\t * @returns {string} The CSS class for the status text.\n\t */\n\tpublic applyStatusClass(status: string): string {\n\t\tif (status === this._i18nBundle.getText(\"alreadyAddedApp\")) {\n\t\t\treturn \"addedAppStatusText\";\n\t\t} else if (status === this._i18nBundle.getText(\"deprecatedApp\")) {\n\t\t\treturn \"deprecatedAppStatusText\";\n\t\t} else {\n\t\t\treturn \"\";\n\t\t}\n\t}\n\n\t/**\n\t * Handles the \"Add Apps\" button press event to add selected apps to favorites.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async onPressAddApps(): Promise<void> {\n\t\tconst userSelectedApps = this.model.getProperty(\"/userSelectedApps\") as CustomListItem[];\n\t\tlet staticAppsPresent = false;\n\t\tlet dynamicAppsPresent = false;\n\n\t\tfor (const app of userSelectedApps) {\n\t\t\tconst isStaticApp = app.getBindingContext()?.getProperty(\"isStaticApp\") as boolean;\n\t\t\tif (isStaticApp) staticAppsPresent = true;\n\t\t\telse dynamicAppsPresent = true;\n\n\t\t\tconst vizId = app.getBindingContext()?.getProperty(\"chipID\") as string;\n\t\t\tawait this.appManagerInstance.addVisualization(vizId, isStaticApp ? undefined : MYINSIGHT_SECTION_ID);\n\t\t}\n\n\t\tif (staticAppsPresent) {\n\t\t\tawait this.refreshFavoriteApps();\n\t\t}\n\n\t\tif (dynamicAppsPresent) {\n\t\t\tawait this.refreshInsightsApps();\n\t\t}\n\n\t\t(this.getParent() as ContentAdditionDialog).close();\n\t\tMessageToast.show(this._i18nBundle.getText(\"appAddedToFavorites\") as string);\n\t\tthis.resetPanel();\n\t}\n\n\t/**\n\t * Retrieves the parent BaseLayout instance for this panel.\n\t *\n\t * @private\n\t * @returns {BaseLayout} The parent BaseLayout instance.\n\t */\n\tprivate getLayout(): BaseLayout {\n\t\treturn this.getParent()?.getParent() as BaseLayout;\n\t}\n\n\t/**\n\t * Retrieves the AppsContainer instance from the parent layout.\n\t *\n\t * @private\n\t * @returns {AppsContainer | undefined} The AppsContainer instance or undefined if not found.\n\t */\n\tprivate getAppsContainer(): AppsContainer | undefined {\n\t\treturn this.getLayout()\n\t\t\t.getContent()\n\t\t\t.find((container) => container instanceof AppsContainer) as AppsContainer | undefined;\n\t}\n\n\t/**\n\t * Retrieves the favorite apps panel from the AppsContainer.\n\t *\n\t * @private\n\t * @returns {FavAppPanel | undefined} The favorite apps panel or undefined if not found.\n\t */\n\tprivate getFavAppPanel(): FavAppPanel | undefined {\n\t\treturn this.getAppsContainer()\n\t\t\t?.getContent()\n\t\t\t.find((panel) => panel instanceof FavAppPanel);\n\t}\n\n\t/**\n\t * Refreshes the favorite apps panel in the AppsContainer.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async refreshFavoriteApps(): Promise<void> {\n\t\tawait this.getAppsContainer()?.refreshPanel(this.getFavAppPanel() as FavAppPanel);\n\t}\n\n\t/**\n\t * Retrieves the InsightsContainer instance from the parent layout.\n\t *\n\t * @private\n\t * @returns {InsightsContainer | undefined} The AppsContainer instance or undefined if not found.\n\t */\n\tprivate getInsightsContainer(): InsightsContainer | undefined {\n\t\treturn this.getLayout()\n\t\t\t.getContent()\n\t\t\t.find((container) => container instanceof InsightsContainer);\n\t}\n\n\t/**\n\t * Refreshes the Insights tiles panel in the InsightsContainer.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async refreshInsightsApps(): Promise<void> {\n\t\tawait this.getInsightsContainer()?.refreshData(\"tiles\");\n\t}\n\n\t/**\n\t * Handles the selection change event for the suggested apps list.\n\t *\n\t * @public\n\t * @param {ListBase$SelectionChangeEvent} event - The selection change event.\n\t */\n\tpublic onListSelectionChange(event: ListBase$SelectionChangeEvent): void {\n\t\tconst listItem = event.getParameter(\"listItem\") as CustomListItem;\n\t\tconst selected = event.getParameter(\"selected\") as boolean;\n\n\t\tif (!selected) this.userSelectedApps.delete(listItem);\n\t\telse {\n\t\t\tconst context = listItem.getBindingContext();\n\t\t\tconst addedToHomePage = context?.getProperty(\"addedToHomePage\") as boolean;\n\t\t\tif (!addedToHomePage) this.userSelectedApps.add(listItem);\n\t\t}\n\n\t\tthis.model.setProperty(\"/userSelectedApps\", Array.from(this.userSelectedApps));\n\t}\n\n\t/**\n\t * Handles errors by updating the model with error details.\n\t *\n\t * @private\n\t * @param {string} [message=\"\"] - The error message to process.\n\t */\n\tprivate _handleError(message: string = \"\", suggestedResponseCount?: number): void {\n\t\tconst [, errorCode] = message.match(/\\((\\d{2})\\d*\\)\\s*(.*)/) || [];\n\t\tif (suggestedResponseCount === 0) {\n\t\t\tmessage = this._i18nBundle.getText(\"NoResultErrorDescription\") || \"\";\n\t\t}\n\t\tthis.model.setProperty(\"/hasError\", true);\n\t\tthis.model.setProperty(\"/errorType\", this._getErrorType(errorCode));\n\t\tthis.model.setProperty(\"/errorDescription\", message);\n\t}\n\n\t/**\n\t * Determines the error type based on the provided error code.\n\t *\n\t * @private\n\t * @param {string} [errorCode=\"\"] - The error code to evaluate.\n\t * @returns {ErrorType} The corresponding error type.\n\t */\n\tprivate _getErrorType(errorCode: string = \"\"): ErrorType {\n\t\tif (errorCode === \"10\") {\n\t\t\treturn ErrorType.ServiceError;\n\t\t} else {\n\t\t\treturn ErrorType.NoResultsFound;\n\t\t}\n\t}\n\n\t/**\n\t * Handles live change event for the search text area, updating value state and messages.\n\t *\n\t * @private\n\t * @param {TextArea$LiveChangeEvent} event - The live change event from the text area.\n\t */\n\tpublic onSearchTextAreaLiveChange(event: TextArea$LiveChangeEvent) {\n\t\tconst textArea = event.getSource();\n\t\tconst query = textArea.getValue().trim();\n\n\t\tif (query.length !== 0 && query.length < Constants.MinQueryLength) {\n\t\t\ttextArea.setValueState(ValueState.Information);\n\t\t\ttextArea.setValueStateText(this._i18nBundle.getText(\"minLengthRequired\"));\n\t\t} else if (query.length > Constants.MaxDescriptionLength) {\n\t\t\ttextArea.setValueState(ValueState.Warning);\n\t\t\ttextArea.setValueStateText(this._i18nBundle.getText(\"maxLengthExceeded\"));\n\t\t} else {\n\t\t\ttextArea.setValueState(ValueState.None);\n\t\t\ttextArea.setValueStateText(\"\");\n\t\t}\n\n\t\tthis.model.setProperty(\"/invalidQuery\", query.length === 0 || textArea.getValueState() !== ValueState.None);\n\t}\n\n\t/**\n\t * Generates the AI policy text with a link for display in the footer.\n\t *\n\t * @private\n\t * @returns {string} The formatted AI policy text.\n\t */\n\tpublic _generateAIPolicyText(): string {\n\t\tconst linkText = this._i18nBundle.getText(\"createdWithAI\");\n\t\treturn this._i18nBundle.getText(\"aiPolicyText\", [linkText])!;\n\t}\n\n\t/**\n\t * Resets the feedback state.\n\t *\n\t * @private\n\t */\n\tprivate resetFeedback(): void {\n\t\tthis.model.setProperty(\"/feedback\", {\n\t\t\tthumbsUp: false,\n\t\t\tthumbsDown: false\n\t\t});\n\t}\n\n\t/**\n\t * Marks feedback as provided and shows a confirmation message toast.\n\t *\n\t * @private\n\t */\n\tpublic sendFeedback(feedbackType: string): void {\n\t\tthis.resetFeedback();\n\t\tthis.model.setProperty(`/feedback/${feedbackType}`, true);\n\t\tMessageToast.show(this._i18nBundle.getText(\"feedBackSent\") as string, {\n\t\t\twidth: \"20em\"\n\t\t});\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"AppsAdditionPanel.js","names":["sap","ui","define","Log","Button","CustomListItem","ExpandableText","FlexBox","GenericTile","HBox","Label","sap_m_library","MessageToast","Text","VBox","Fragment","sap_ui_core_library","ChangeReason","JSONModel","ResourceModel","Sorter","Container","__AppsContainer","__BaseSettingsPanel","__FavAppPanel","__InsightsContainer","__AppManager","___utils_Constants","___utils_DataFormatUtils","___utils_FeatureUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","ButtonType","_finallyRethrows","finalizer","bind","URLHelper","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","ValueState","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","AppsContainer","BaseSettingsPanel","FavAppPanel","InsightsContainer","AppManager","AI_APP_FINDER_API","AI_APP_FINDER_BASE_URL","CONTENT_ADDITION_PANEL_TYPES","DEFAULT_APP_ICON","FEATURE_TOGGLES","FESR_IDS","MYINSIGHT_SECTION_ID","recycleId","isNavigationSupportedForFeature","addFESRSemanticStepName","FESR_EVENTS","Constants","DeprecatedInfoText","MinQueryLength","MaxDescriptionLength","SearchStatus","ErrorType","TileType","AppsAdditionPanel","extend","constructor","apply","arguments","appManagerInstance","getInstance","resetSearch","userSelectedApps","clear","model","setProperty","Searching","appSuggestionList","removeSelections","resetFeedback","init","_init","BaseSettingsPanel.prototype.init.call","Set","AI_APP_FINDER","_i18nBundle","getText","_setupActions","_setupContent","attachEvent","resetPanel","addAppsButton","getId","text","type","Emphasized","press","onPressAddApps","bindProperty","parts","formatter","hasError","searchStatus","Complete","PRESS","ADD_AI_APP","addActionButton","Promise","resolve","getServiceAsync","_Container$getService","vizInstantiationService","load","id","name","controller","_Fragment$load","panelContent","addAggregation","query","errorType","NoResultsFound","errorDescription","Idle","loadingAnimations","_generateSearchingAnimations","suggestedAppsCount","suggestedApps","aiPolicyText","_generateAIPolicyText","invalidQuery","feedback","thumbsUp","thumbsDown","sampleQueries","index","setModel","bundleName","byId","bindAggregation","path","factory","_generateListItem","sorter","comparator","firstApp","secondApp","getPriority","statusArray","hasAlreadyAdded","includes","hasDeprecated","firstPriority","secondPriority","attachUpdateFinished","getProperty","getItems","focus","searchTextArea","onsapenter","onPressGo","context","listItem","selected","content","renderType","direction","alignItems","items","_getAppPreviewContainer","_getAppDetailsContainer","addStyleClass","getMultiSelectControl","setEnabled","container","addItem","mode","frameType","width","header","subheader","tileIcon","visible","url","event","_persistDialog","getParent","redirect","getSource","getUrl","vizData","instance","instantiateVisualization","setActive","attachPress","gap","maxCharacters","showColon","_generateStatusTexts","isSupported","_isSupported","_this2","_temp3","isPanelSupported","removeActionButton","contentAdditionDialog","removePanel","updateActionButtons","appsIntent","semanticObject","action","_temp2","undefined","_temp","getFavAppPanel","AI_SMART_APPFINDER","_isNavigationSupporte","loadingShimmer","_resetPanel","defaultModelProperties","setData","getData","_onPressGo","_this3","isValidQuery","_temp5","fetchAppsFromSearch","rawApps","_temp4","fetchAllAvailableVisualizations","allVisualizations","fetchFavVizs","favoriteApps","fetchInsightApps","insightsApps","apps","_generateApps","_filterUnsupportedApps","_handleError","updateAggregation","Refresh","detailedReason","err","error","message","_wasThrown","_result","updatedApps","filter","app","isStaticApp","intents","map","navigationService","isNavigationSupported","supportedAppIndices","_","homePageVisualizations","find","viz","vizId","chipID","addedToHomePage","some","visualization","title","subTitle","description","appDescription","icon","iconUrl","tileType","Static","status","getAppStatusTexts","configuration","targetURL","_isValidQuery","trim","_fetchAllAvailableVisualizations","_this4","_temp7","allAvailableVisualizations","_temp6","searchableContentService","getApps","enableVisualizationPreview","allAvailableApps","reduce","visualizations","currentApp","concat","_fetchCSRFToken","fetch","method","headers","response","get","_fetchAppsFromSearch","_this5","token","JSON","stringify","UserInput","_exit","_temp0","_result2","json","_response$json2","queryResult","_temp9","ok","_response$json","errorResponse","_temp8","_getAppStatusTexts","statusTexts","parsedConfig","parse","tileConfig","tileConfiguration","infoText","display_info_text","toLowerCase","warning","stausTexts","applyStatusClass","_applyStatusClass","_onPressAddApps","_this6","_temp14","_temp12","_temp10","close","show","selectedItem","selectedAppTitle","getBindingContext","messageKey","staticAppsPresent","_temp1","dynamicAppsPresent","refreshInsightsApps","_temp11","refreshFavoriteApps","_temp13","addVisualization","getLayout","_getLayout","getAppsContainer","_getAppsContainer","_getFavAppPanel","getContent","panel","_refreshFavoriteApps","_this7","refreshPanel","getInsightsContainer","_getInsightsContainer","_refreshInsightsApps","_this8","refreshData","onListSelectionChange","_onListSelectionChange","getParameter","delete","add","Array","from","suggestedResponseCount","errorCode","match","_getErrorType","ServiceError","onSearchTextAreaLiveChange","_onSearchTextAreaLiveChange","textArea","getValue","setValueState","Information","setValueStateText","Warning","None","getValueState","linkText","_resetFeedback","sendFeedback","_sendFeedback","feedbackType"],"sources":["AppsAdditionPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport Button from \"sap/m/Button\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport ExpandableText from \"sap/m/ExpandableText\";\nimport FlexBox from \"sap/m/FlexBox\";\nimport GenericTile, { GenericTile$PressEvent } from \"sap/m/GenericTile\";\nimport HBox from \"sap/m/HBox\";\nimport Label from \"sap/m/Label\";\nimport { ButtonType, URLHelper } from \"sap/m/library\";\nimport List from \"sap/m/List\";\nimport { ListBase$SelectionChangeEvent } from \"sap/m/ListBase\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport Text from \"sap/m/Text\";\nimport TextArea, { TextArea$LiveChangeEvent } from \"sap/m/TextArea\";\nimport VBox from \"sap/m/VBox\";\nimport Control from \"sap/ui/core/Control\";\nimport Fragment from \"sap/ui/core/Fragment\";\nimport { ValueState } from \"sap/ui/core/library\";\nimport ChangeReason from \"sap/ui/model/ChangeReason\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport ResourceModel from \"sap/ui/model/resource/ResourceModel\";\nimport Sorter from \"sap/ui/model/Sorter\";\nimport Container from \"sap/ushell/Container\";\nimport Navigation, { Target } from \"sap/ushell/services/Navigation\";\nimport SearchableContent, { AppData } from \"sap/ushell/services/SearchableContent\";\nimport VisualizationInstantiation from \"sap/ushell/services/VisualizationInstantiation\";\nimport AppsContainer from \"./AppsContainer\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport FavAppPanel from \"./FavAppPanel\";\nimport InsightsContainer from \"./InsightsContainer\";\nimport { ICustomVisualization, ICustomVizInstance, IVisualization } from \"./interface/AppsInterface\";\nimport AppManager from \"./utils/AppManager\";\nimport {\n\tAI_APP_FINDER_API,\n\tAI_APP_FINDER_BASE_URL,\n\tCONTENT_ADDITION_PANEL_TYPES,\n\tDEFAULT_APP_ICON,\n\tFEATURE_TOGGLES,\n\tFESR_IDS,\n\tMYINSIGHT_SECTION_ID\n} from \"./utils/Constants\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { isNavigationSupportedForFeature } from \"./utils/FeatureUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\nconst Constants = {\n\tDeprecatedInfoText: \"deprecated\",\n\tMinQueryLength: 2,\n\tMaxDescriptionLength: 500\n};\n\nenum SearchStatus {\n\tIdle = \"idle\",\n\tSearching = \"searching\",\n\tComplete = \"complete\"\n}\n\nenum ErrorType {\n\tNoResultsFound = \"noResultsFound\",\n\tServiceError = \"serviceError\"\n}\n\nenum TileType {\n\tStatic = \"STATIC\"\n}\n\ninterface RawAppData {\n\ttitle: string;\n\tsubTitle: string;\n\tappDescription: string;\n\tchipID: string;\n\ttileType: TileType;\n\ticonUrl: string;\n\tconfiguration: string;\n}\ninterface SuggestedApp {\n\ticon: string;\n\ttitle: string;\n\tchipID: string;\n\tstatus: string[];\n\tsubTitle: string;\n\tdescription: string;\n\tisStaticApp: boolean;\n\taddedToHomePage: boolean;\n\tvizData?: IVisualization;\n}\n\ninterface QueryResponse {\n\tvalue: RawAppData[];\n}\n\ninterface ErrorResponse {\n\terror: {\n\t\tcode: string;\n\t\tmessage: string;\n\t};\n}\n\ninterface Configuration {\n\ttileConfiguration: string;\n}\n\ninterface TileConfig {\n\tdisplay_info_text: string;\n\t[key: string]: string;\n}\n\n/**\n *\n * Class for Apps Addition Panel in MyHome.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.136\n *\n * @private\n *\n * @alias sap.cux.home.AppsAdditionPanel\n */\nexport default class AppsAdditionPanel extends BaseSettingsPanel {\n\tprivate appManagerInstance: AppManager = AppManager.getInstance();\n\tprivate vizInstantiationService!: VisualizationInstantiation;\n\tprivate allAvailableVisualizations!: IVisualization[];\n\tprivate userSelectedApps!: Set<CustomListItem>;\n\tprivate appSuggestionList!: List;\n\tprivate model!: JSONModel;\n\tprivate addAppsButton!: Button;\n\tprivate isPanelSupported!: boolean;\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis.userSelectedApps = new Set<CustomListItem>();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", CONTENT_ADDITION_PANEL_TYPES.AI_APP_FINDER);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"addAppsAndTile\"));\n\n\t\t//setup actions\n\t\tthis._setupActions();\n\n\t\t//setup content\n\t\tvoid this._setupContent();\n\n\t\t//setup events\n\t\tthis.attachEvent(\"onDialogClose\", this.resetPanel.bind(this));\n\t}\n\n\t/**\n\t * Sets up the actions for the Apps Addition Panel.\n\t *\n\t * @private\n\t */\n\tprivate _setupActions(): void {\n\t\tthis.addAppsButton = new Button(recycleId(`${this.getId()}-add-app-btn`), {\n\t\t\ttext: this._i18nBundle.getText(\"addFromInsightsDialogBtn\"),\n\t\t\ttype: ButtonType.Emphasized,\n\t\t\tpress: () => {\n\t\t\t\tvoid this.onPressAddApps();\n\t\t\t}\n\t\t});\n\n\t\tthis.addAppsButton.bindProperty(\"enabled\", {\n\t\t\tparts: [\"/hasError\", \"/searchStatus\", \"/userSelectedApps\"],\n\t\t\tformatter: (hasError: boolean, searchStatus: SearchStatus, userSelectedApps: string[]) => {\n\t\t\t\treturn !hasError && searchStatus === SearchStatus.Complete && userSelectedApps.length > 0;\n\t\t\t}\n\t\t});\n\n\t\taddFESRSemanticStepName(this.addAppsButton, FESR_EVENTS.PRESS, FESR_IDS.ADD_AI_APP);\n\t\tthis.addActionButton(this.addAppsButton);\n\t}\n\n\t/**\n\t * Sets up the content for the Apps Addition Panel.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _setupContent(): Promise<void> {\n\t\tthis.vizInstantiationService = await Container.getServiceAsync<VisualizationInstantiation>(\"VisualizationInstantiation\");\n\n\t\t//load ui fragment\n\t\tconst panelContent = (await Fragment.load({\n\t\t\tid: `${this.getId()}-content`,\n\t\t\tname: \"sap.cux.home.utils.fragment.appsAdditionContent\",\n\t\t\tcontroller: this\n\t\t})) as Control;\n\t\tthis.addAggregation(\"content\", panelContent);\n\n\t\t//initialize ui model\n\t\tthis.model = new JSONModel({\n\t\t\tquery: \"\",\n\t\t\thasError: false,\n\t\t\terrorType: ErrorType.NoResultsFound,\n\t\t\terrorDescription: \"\",\n\t\t\tsearchStatus: SearchStatus.Idle,\n\t\t\tloadingAnimations: this._generateSearchingAnimations(),\n\t\t\tsuggestedAppsCount: 0,\n\t\t\tuserSelectedApps: [],\n\t\t\tsuggestedApps: [],\n\t\t\taiPolicyText: this._generateAIPolicyText(),\n\t\t\tinvalidQuery: true,\n\t\t\tfeedback: {\n\t\t\t\tthumbsUp: false,\n\t\t\t\tthumbsDown: false\n\t\t\t},\n\t\t\tsampleQueries: [\n\t\t\t\t{\n\t\t\t\t\tindex: 1,\n\t\t\t\t\tquery: this._i18nBundle.getText(\"sampleQuery_1\") as string\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tindex: 2,\n\t\t\t\t\tquery: this._i18nBundle.getText(\"sampleQuery_2\") as string\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tindex: 3,\n\t\t\t\t\tquery: this._i18nBundle.getText(\"sampleQuery_3\") as string\n\t\t\t\t}\n\t\t\t]\n\t\t});\n\n\t\tpanelContent.setModel(this.model);\n\t\tpanelContent.setModel(new ResourceModel({ bundleName: \"sap.cux.home.i18n.messagebundle\" }), \"i18n\");\n\t\tthis.addAppsButton.setModel(this.model);\n\n\t\t//bind suggested apps list\n\t\tthis.appSuggestionList = Fragment.byId(`${this.getId()}-content`, \"appsList\") as List;\n\t\tthis.appSuggestionList.bindAggregation(\"items\", {\n\t\t\tpath: \"/suggestedApps\",\n\t\t\tfactory: this._generateListItem.bind(this),\n\t\t\tsorter: new Sorter({\n\t\t\t\tpath: \"status\",\n\t\t\t\tcomparator: (firstApp: string[], secondApp: string[]) => {\n\t\t\t\t\tconst getPriority = (statusArray: string[]) => {\n\t\t\t\t\t\tif (statusArray.length === 0) return 0; // Empty array has highest priority\n\n\t\t\t\t\t\tconst hasAlreadyAdded = statusArray.includes(this._i18nBundle.getText(\"alreadyAddedApp\") as string);\n\t\t\t\t\t\tconst hasDeprecated = statusArray.includes(this._i18nBundle.getText(\"deprecatedApp\") as string);\n\n\t\t\t\t\t\tif (hasAlreadyAdded && hasDeprecated) return 3; // Both statuses - lowest priority\n\t\t\t\t\t\tif (hasAlreadyAdded) return 1; // Only \"Already Added\"\n\t\t\t\t\t\tif (hasDeprecated) return 2; // Only \"Deprecated\"\n\n\t\t\t\t\t\treturn 4; // Any other combination (fallback)\n\t\t\t\t\t};\n\n\t\t\t\t\tconst firstPriority = getPriority(firstApp);\n\t\t\t\t\tconst secondPriority = getPriority(secondApp);\n\n\t\t\t\t\treturn firstPriority - secondPriority;\n\t\t\t\t}\n\t\t\t})\n\t\t});\n\n\t\t//focus on the first item when the list is updated\n\t\tthis.appSuggestionList.attachUpdateFinished(() => {\n\t\t\tif (this.model.getProperty(\"/suggestedAppsCount\") > 0 && this.model.getProperty(\"/searchStatus\") === SearchStatus.Complete) {\n\t\t\t\tthis.appSuggestionList.getItems()?.[0]?.focus();\n\t\t\t}\n\t\t});\n\n\t\t//bind search field\n\t\tconst searchTextArea = Fragment.byId(`${this.getId()}-content`, \"searchTextArea\") as TextArea;\n\t\tsearchTextArea.onsapenter = this.onPressGo.bind(this);\n\t}\n\n\t/**\n\t * Generates a list item for the Apps Addition Panel.\n\t *\n\t * @private\n\t * @param {string} id - The unique ID for the list item.\n\t * @param {Context} context - The binding context for the list item.\n\t * @returns {CustomListItem} The generated list item control.\n\t */\n\tprivate _generateListItem(id: string, context: Context): CustomListItem {\n\t\tconst listItem = new CustomListItem(id, {\n\t\t\tselected: context.getProperty(\"addedToHomePage\") as boolean,\n\t\t\tcontent: [\n\t\t\t\tnew FlexBox(recycleId(`${id}-result-container`), {\n\t\t\t\t\trenderType: \"Bare\",\n\t\t\t\t\tdirection: context.getProperty(\"isStaticApp\") ? \"Column\" : \"Row\",\n\t\t\t\t\talignItems: context.getProperty(\"isStaticApp\") ? \"Start\" : \"Center\",\n\t\t\t\t\titems: [this._getAppPreviewContainer(id, context), this._getAppDetailsContainer(id, context)]\n\t\t\t\t}).addStyleClass(\"sapUiSmallMargin\")\n\t\t\t]\n\t\t});\n\n\t\t//bind associated checkbox to disable it when the app is already added to home page\n\t\tlistItem.getMultiSelectControl(true).setEnabled(!context.getProperty(\"addedToHomePage\"));\n\n\t\treturn listItem;\n\t}\n\n\t/**\n\t * Creates a preview container for the suggested app.\n\t *\n\t * @private\n\t * @param {string} id - The unique ID for the container.\n\t * @param {Context} context - The binding context for the app.\n\t * @returns {HBox} The app preview container.\n\t */\n\tprivate _getAppPreviewContainer(id: string, context: Context): HBox {\n\t\tconst container = new HBox(recycleId(`${id}-suggestedAppContainer`), {\n\t\t\trenderType: \"Bare\"\n\t\t});\n\n\t\tif (context.getProperty(\"isStaticApp\") as boolean) {\n\t\t\t// create generic tile for static app\n\t\t\tcontainer.addItem(\n\t\t\t\tnew GenericTile(recycleId(`${id}-staticApp`), {\n\t\t\t\t\tmode: \"IconMode\",\n\t\t\t\t\tframeType: \"TwoByHalf\",\n\t\t\t\t\twidth: \"19rem\",\n\t\t\t\t\theader: context.getProperty(\"title\") as string,\n\t\t\t\t\tsubheader: context.getProperty(\"subTitle\") as string,\n\t\t\t\t\ttileIcon: (context.getProperty(\"icon\") as string) || DEFAULT_APP_ICON,\n\t\t\t\t\tvisible: context.getProperty(\"isStaticApp\") as boolean,\n\t\t\t\t\turl: context.getProperty(\"url\") as string,\n\t\t\t\t\tpress: (event: GenericTile$PressEvent) => {\n\t\t\t\t\t\tthis._persistDialog(this.getParent() as ContentAdditionDialog);\n\t\t\t\t\t\tURLHelper.redirect(event.getSource()?.getUrl(), false);\n\t\t\t\t\t}\n\t\t\t\t}).addStyleClass(\"suggestedTile\")\n\t\t\t);\n\t\t} else {\n\t\t\t// create custom visualization for other apps\n\t\t\tconst vizData = context.getProperty(\"vizData\") as ICustomVisualization;\n\t\t\tconst instance = this.vizInstantiationService.instantiateVisualization(vizData) as ICustomVizInstance;\n\t\t\tinstance?.setActive(true);\n\t\t\tinstance?.attachPress(() => this._persistDialog(this.getParent() as ContentAdditionDialog));\n\t\t\tcontainer.addItem(instance);\n\t\t}\n\n\t\treturn container;\n\t}\n\n\t/**\n\t * Creates a details container for the suggested app.\n\t *\n\t * @private\n\t * @param {string} id - The unique ID for the container.\n\t * @param {Context} context - The binding context for the app.\n\t * @returns {VBox} The app details container.\n\t */\n\tprivate _getAppDetailsContainer(id: string, context: Context): VBox {\n\t\treturn new VBox(recycleId(`${id}-app-details-container`), {\n\t\t\trenderType: \"Bare\",\n\t\t\tgap: \"0.5rem\",\n\t\t\titems: [\n\t\t\t\tnew ExpandableText(recycleId(`${id}-description`), {\n\t\t\t\t\ttext: context.getProperty(\"description\") as string,\n\t\t\t\t\tmaxCharacters: Constants.MaxDescriptionLength\n\t\t\t\t}),\n\t\t\t\tnew HBox(recycleId(`${id}-app-status-container`), {\n\t\t\t\t\trenderType: \"Bare\",\n\t\t\t\t\tvisible: (context.getProperty(\"status\") as string[]).length > 0,\n\t\t\t\t\titems: [\n\t\t\t\t\t\tnew Label(recycleId(`${id}-appStatusLabel`), {\n\t\t\t\t\t\t\ttext: this._i18nBundle.getText(\"appStatus\"),\n\t\t\t\t\t\t\tshowColon: true\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tnew HBox(recycleId(`${id}-app-status-texts`), {\n\t\t\t\t\t\t\trenderType: \"Bare\",\n\t\t\t\t\t\t\titems: this._generateStatusTexts(id, context.getProperty(\"status\") as string[])\n\t\t\t\t\t\t}).addStyleClass(\"sapUiTinyMarginBegin statusTextsContainer\")\n\t\t\t\t\t]\n\t\t\t\t})\n\t\t\t]\n\t\t}).addStyleClass((context.getProperty(\"isStaticApp\") as boolean) ? \"sapUiSmallMarginTop\" : \"sapUiSmallMarginBegin\");\n\t}\n\n\t/**\n\t * Checks if the Apps Addition Panel is supported. Internally, it checks if the\n\t * AI Smart App Finder feature toggle is enabled and if the associated application\n\t * is accessible for the user.\n\t *\n\t * @public\n\t * @override\n\t * @async\n\t * @returns {Promise<boolean>} A promise that resolves to a boolean indicating support.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst appsIntent: Target = {\n\t\t\ttarget: {\n\t\t\t\tsemanticObject: \"IntelligentPrompt\",\n\t\t\t\taction: \"propose\"\n\t\t\t}\n\t\t};\n\t\tif (this.isPanelSupported === undefined) {\n\t\t\tthis.isPanelSupported = false;\n\n\t\t\tif (this.getFavAppPanel()) {\n\t\t\t\tthis.isPanelSupported = await isNavigationSupportedForFeature(FEATURE_TOGGLES.AI_SMART_APPFINDER, appsIntent);\n\t\t\t}\n\t\t}\n\n\t\t//remove panel if it's not supported\n\t\tif (!this.isPanelSupported) {\n\t\t\tthis.removeActionButton(this.addAppsButton);\n\t\t\tconst contentAdditionDialog = this.getParent() as ContentAdditionDialog;\n\t\t\tcontentAdditionDialog.removePanel(this);\n\t\t\tcontentAdditionDialog.updateActionButtons();\n\t\t}\n\n\t\treturn this.isPanelSupported;\n\t}\n\n\t/**\n\t * Generates the searching animation SVG as a string.\n\t *\n\t * @private\n\t * @returns {string} The SVG string for the loading animation.\n\t */\n\tprivate _generateSearchingAnimations(): string[] {\n\t\tconst loadingShimmer = `<defs>\n\t\t\t<linearGradient id=\"loadingShimmer\" x1=\"0\" y1=\"0\" x2=\"1\" y2=\"0\">\n\t\t\t\t<stop offset=\"0%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\t\t\t\t<stop offset=\"20%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\t\t\t\t<stop offset=\"50%\" stop-color=\"var(--sapContent_Placeholderloading_Background_Dark)\" />\n\t\t\t\t<stop offset=\"80%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\t\t\t\t<stop offset=\"100%\" stop-color=\"var(--sapContent_Placeholderloading_Background)\" />\n\n\t\t\t\t<animate\n\t\t\t\t\tattributeName=\"x1\"\n\t\t\t\t\tvalues=\"-0.6;0.6\"\n\t\t\t\t\tdur=\"2.5s\"\n\t\t\t\t\trepeatCount=\"indefinite\" />\n\t\t\t\t<animate\n\t\t\t\t\tattributeName=\"x2\"\n\t\t\t\t\tvalues=\"0.4;1.6\"\n\t\t\t\t\tdur=\"2.5s\"\n\t\t\t\t\trepeatCount=\"indefinite\" />\n\t\t\t</linearGradient>\n\t\t</defs>`;\n\n\t\treturn [\n\t\t\t`<svg height=\"167\" fill=\"none\">\n\t\t\t\t${loadingShimmer}\n\t\t\t\t<rect x=\"16\" y=\"75\" width=\"16\" height=\"16\" rx=\"4\" fill=\"var(--sapContent_Placeholderloading_Background)\"/>\n\t\t\t\t<rect x=\"48\" y=\"16\" width=\"37%\" height=\"70\" rx=\"16\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t\t<rect x=\"48\" y=\"102\" width=\"93%\" height=\"48\" rx=\"4\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t</svg>`,\n\t\t\t`<svg height=\"180\" fill=\"none\">\n\t\t\t\t${loadingShimmer}\n\t\t\t\t<rect x=\"16\" y=\"82\" width=\"16\" height=\"16\" rx=\"4\" fill=\"var(--sapContent_Placeholderloading_Background)\"/>\n\t\t\t\t<rect x=\"48\" y=\"16\" width=\"148\" height=\"148\" rx=\"16\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t\t<rect x=\"212\" y=\"54\" width=\"75%\" height=\"48\" rx=\"4\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t\t<rect x=\"212\" y=\"110\" width=\"13%\" height=\"16\" rx=\"4\" fill=\"url(#loadingShimmer)\"/>\n\t\t\t</svg>`\n\t\t];\n\t}\n\n\t/**\n\t * Resets the search state in the Apps Addition Panel.\n\t *\n\t * @private\n\t */\n\tprivate resetSearch: () => void = () => {\n\t\tthis.userSelectedApps.clear();\n\t\tthis.model.setProperty(\"/hasError\", false);\n\t\tthis.model.setProperty(\"/suggestedApps\", []);\n\t\tthis.model.setProperty(\"/suggestedAppsCount\", 0);\n\t\tthis.model.setProperty(\"/searchStatus\", SearchStatus.Searching);\n\t\tthis.model.setProperty(\"/userSelectedApps\", []);\n\t\tthis.appSuggestionList.removeSelections(true);\n\t\tthis.resetFeedback();\n\t};\n\n\t/**\n\t * Resets the panel to its default state.\n\t *\n\t * @private\n\t */\n\tpublic resetPanel(): void {\n\t\tconst defaultModelProperties = {\n\t\t\tquery: \"\",\n\t\t\thasError: false,\n\t\t\tsearchStatus: SearchStatus.Idle,\n\t\t\tsuggestedAppsCount: 0,\n\t\t\tuserSelectedApps: [],\n\t\t\tsuggestedApps: [],\n\t\t\tfeedback: {\n\t\t\t\tthumbsUp: false,\n\t\t\t\tthumbsDown: false\n\t\t\t},\n\t\t\tinvalidQuery: true\n\t\t};\n\n\t\tthis.model?.setData({ ...this.model.getData(), ...defaultModelProperties } as object);\n\t\tthis.userSelectedApps?.clear();\n\t}\n\n\t/**\n\t * Handles the \"Go\" button press event for searching suggested apps.\n\t *\n\t * @private\n\t * @async\n\t */\n\tpublic async onPressGo(): Promise<void> {\n\t\t// validate query\n\t\tconst query = this.model.getProperty(\"/query\") as string;\n\t\tif (!this.isValidQuery(query)) return;\n\n\t\ttry {\n\t\t\t// initiate search\n\t\t\tthis.resetSearch();\n\n\t\t\tconst rawApps = await this.fetchAppsFromSearch(query);\n\t\t\t// suggest apps if there are results and search is not cancelled\n\t\t\tif (this.model.getProperty(\"/searchStatus\") === SearchStatus.Searching) {\n\t\t\t\tconst allVisualizations = await this.fetchAllAvailableVisualizations();\n\t\t\t\tconst favoriteApps = await this.appManagerInstance.fetchFavVizs(true, true);\n\t\t\t\tconst insightsApps = await this.appManagerInstance.fetchInsightApps(true, this._i18nBundle.getText(\"insights\") as string);\n\n\t\t\t\t// generate suggested apps\n\t\t\t\tconst apps = this._generateApps(rawApps, allVisualizations, [...favoriteApps, ...insightsApps]);\n\t\t\t\tconst suggestedApps = await this._filterUnsupportedApps(apps);\n\n\t\t\t\tif (suggestedApps.length === 0 && !this.model.getProperty(\"/hasError\")) {\n\t\t\t\t\tthis._handleError(\"\", suggestedApps.length);\n\t\t\t\t} else {\n\t\t\t\t\t// update model with filtered apps\n\t\t\t\t\tthis.model.setProperty(\"/suggestedApps\", suggestedApps);\n\t\t\t\t\tthis.model.setProperty(\"/suggestedAppsCount\", suggestedApps.length);\n\t\t\t\t\tthis.appSuggestionList.updateAggregation(\"items\", ChangeReason.Refresh, { detailedReason: ChangeReason.Refresh });\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (err) {\n\t\t\tLog.error((err as Error).message);\n\t\t\tthis._handleError();\n\t\t} finally {\n\t\t\t// update search status only if search is not cancelled\n\t\t\tif (this.model.getProperty(\"/searchStatus\") === SearchStatus.Searching) {\n\t\t\t\tthis.model.setProperty(\"/searchStatus\", SearchStatus.Complete);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Filters out unsupported apps based on accessibility.\n\t *\n\t * @private\n\t * @param {SuggestedApp[]} apps - The list of suggested apps to filter.\n\t * @returns {Promise<SuggestedApp[]>} A promise that resolves to the filtered list of supported apps.\n\t */\n\tprivate async _filterUnsupportedApps(apps: SuggestedApp[]): Promise<SuggestedApp[]> {\n\t\tconst updatedApps = apps.filter((app) => (app.isStaticApp ? true : (app.vizData ?? false)));\n\t\tconst intents = updatedApps.map((app) => app.vizData?.target) || [];\n\t\tconst navigationService = await Container.getServiceAsync<Navigation>(\"Navigation\");\n\t\tconst supportedAppIndices = await navigationService.isNavigationSupported(intents as Target[]);\n\n\t\treturn updatedApps.filter((_, index) => supportedAppIndices[index]);\n\t}\n\n\t/**\n\t * Generates suggested apps from raw app data and visualizations.\n\t *\n\t * @private\n\t * @param {RawAppData[]} rawApps - The raw app data to process.\n\t * @param {IVisualization[]} allVisualizations - All available visualizations.\n\t * @param {ICustomVisualization[]} homePageVisualizations - Visualizations available in homepage.\n\t * @returns {SuggestedApp[]} The list of suggested apps.\n\t */\n\tprivate _generateApps(\n\t\trawApps: RawAppData[],\n\t\tallVisualizations: IVisualization[],\n\t\thomePageVisualizations: ICustomVisualization[]\n\t): SuggestedApp[] {\n\t\treturn rawApps.map((app) => {\n\t\t\tconst vizData = allVisualizations.find((viz) => viz.vizId === app.chipID);\n\t\t\tconst addedToHomePage = homePageVisualizations.some((viz) => viz.visualization?.vizId === app.chipID);\n\t\t\treturn {\n\t\t\t\ttitle: app.title,\n\t\t\t\tchipID: app.chipID,\n\t\t\t\tsubTitle: app.subTitle,\n\t\t\t\tdescription: app.appDescription,\n\t\t\t\ticon: app.iconUrl,\n\t\t\t\tvizData,\n\t\t\t\taddedToHomePage,\n\t\t\t\tisStaticApp: app.tileType === TileType.Static,\n\t\t\t\tstatus: this.getAppStatusTexts(app.configuration, addedToHomePage),\n\t\t\t\turl: vizData?.targetURL || \"\"\n\t\t\t};\n\t\t}) as SuggestedApp[];\n\t}\n\n\t/**\n\t * Validates the query string based on minimum length.\n\t *\n\t * @private\n\t * @param {string} query - The query string to validate.\n\t * @returns {boolean} True if the query is valid, otherwise false.\n\t */\n\tprivate isValidQuery(query: string = \"\"): boolean {\n\t\tquery = query?.trim();\n\t\treturn query.length >= Constants.MinQueryLength && query.length <= Constants.MaxDescriptionLength;\n\t}\n\n\t/**\n\t * Fetches all available visualizations for the user.\n\t *\n\t * @private\n\t * @async\n\t * @returns {Promise<IVisualization[]>} A promise that resolves to the list of visualizations.\n\t */\n\tprivate async fetchAllAvailableVisualizations(): Promise<IVisualization[]> {\n\t\tif (!this.allAvailableVisualizations) {\n\t\t\tconst searchableContentService = await Container.getServiceAsync<SearchableContent>(\"SearchableContent\");\n\t\t\tconst allAvailableApps = await searchableContentService.getApps({ enableVisualizationPreview: false });\n\t\t\tthis.allAvailableVisualizations = allAvailableApps.reduce((visualizations: IVisualization[], currentApp: AppData) => {\n\t\t\t\treturn visualizations.concat(currentApp.visualizations);\n\t\t\t}, []);\n\t\t}\n\n\t\treturn this.allAvailableVisualizations;\n\t}\n\n\t/**\n\t * Fetches a CSRF token for secure API requests.\n\t *\n\t * @private\n\t * @async\n\t * @returns {Promise<string | null>} A promise that resolves to the CSRF token or null if fetching fails.\n\t */\n\tprivate async _fetchCSRFToken(): Promise<string | null> {\n\t\ttry {\n\t\t\tconst response = await fetch(AI_APP_FINDER_BASE_URL, { method: \"GET\", headers: { \"X-CSRF-Token\": \"Fetch\" } });\n\t\t\treturn response.headers.get(\"X-CSRF-Token\");\n\t\t} catch (error) {\n\t\t\tLog.error(\"Failed to fetch CSRF token\", error as Error);\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Fetches apps from the search API based on the query.\n\t *\n\t * @private\n\t * @async\n\t * @param {string} query - The search query string.\n\t * @returns {Promise<RawAppData[]>} A promise that resolves to the list of raw app data.\n\t */\n\tprivate async fetchAppsFromSearch(query: string): Promise<RawAppData[]> {\n\t\ttry {\n\t\t\tconst token = await this._fetchCSRFToken();\n\t\t\tconst headers = {\n\t\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t\t...(token && { \"X-CSRF-Token\": token })\n\t\t\t};\n\n\t\t\tconst response = await fetch(AI_APP_FINDER_API, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders,\n\t\t\t\tbody: JSON.stringify({ UserInput: query })\n\t\t\t});\n\n\t\t\t// handle error responses\n\t\t\tif (!response.ok) {\n\t\t\t\tconst errorResponse = (await response.json()) as ErrorResponse;\n\t\t\t\tthis._handleError(errorResponse.error?.message || \"\");\n\t\t\t\treturn [];\n\t\t\t}\n\n\t\t\tconst queryResult = (await response.json()) as QueryResponse;\n\t\t\treturn queryResult.value || [];\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t\tthis._handleError();\n\t\t\treturn [];\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves status texts for an app based on its configuration and homepage status.\n\t *\n\t * @private\n\t * @param {string} configuration - The app's configuration string.\n\t * @param {boolean} addedToHomePage - Indicates if the app is already added to the homepage.\n\t * @returns {string[]} An array of status texts for the app.\n\t */\n\tprivate getAppStatusTexts(configuration: string, addedToHomePage: boolean): string[] {\n\t\tlet statusTexts = [];\n\n\t\tif (configuration) {\n\t\t\ttry {\n\t\t\t\tconst parsedConfig = JSON.parse(configuration) as Configuration;\n\t\t\t\tconst tileConfig = JSON.parse(parsedConfig?.tileConfiguration) as TileConfig;\n\t\t\t\tconst infoText = (tileConfig?.display_info_text || \"\").toLowerCase();\n\t\t\t\tif (infoText === Constants.DeprecatedInfoText) {\n\t\t\t\t\tstatusTexts.push(this._i18nBundle.getText(\"deprecatedApp\") as string);\n\t\t\t\t}\n\t\t\t} catch (error: unknown) {\n\t\t\t\tLog.warning((error as Error).message);\n\t\t\t}\n\t\t}\n\n\t\tif (addedToHomePage) {\n\t\t\tstatusTexts.push(this._i18nBundle.getText(\"alreadyAddedApp\") as string);\n\t\t}\n\n\t\treturn statusTexts;\n\t}\n\n\t/**\n\t * Generates status text controls for the provided status texts.\n\t *\n\t * @private\n\t * @param {string} id - The id of the list item.\n\t * @param {string[]} stausTexts - The list of status texts.\n\t * @returns {Text[]} An array of Text controls with applied styles.\n\t */\n\tprivate _generateStatusTexts(id: string, stausTexts: string[]): Text[] {\n\t\treturn stausTexts.map((status, index) => {\n\t\t\treturn new Text(recycleId(`${id}-statusText-${index}`), {\n\t\t\t\ttext: status\n\t\t\t}).addStyleClass(this.applyStatusClass(status));\n\t\t});\n\t}\n\n\t/**\n\t * Applies a CSS class to the status text based on its type.\n\t *\n\t * @private\n\t * @param {string} status - The status text to classify.\n\t * @returns {string} The CSS class for the status text.\n\t */\n\tpublic applyStatusClass(status: string): string {\n\t\tif (status === this._i18nBundle.getText(\"alreadyAddedApp\")) {\n\t\t\treturn \"addedAppStatusText\";\n\t\t} else if (status === this._i18nBundle.getText(\"deprecatedApp\")) {\n\t\t\treturn \"deprecatedAppStatusText\";\n\t\t} else {\n\t\t\treturn \"\";\n\t\t}\n\t}\n\n\t/**\n\t * Handles the \"Add Apps\" button press event to add selected apps to favorites.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async onPressAddApps(): Promise<void> {\n\t\tconst userSelectedApps = this.model.getProperty(\"/userSelectedApps\") as CustomListItem[];\n\t\tlet staticAppsPresent = false;\n\t\tlet dynamicAppsPresent = false;\n\n\t\tfor (const app of userSelectedApps) {\n\t\t\tconst isStaticApp = app.getBindingContext()?.getProperty(\"isStaticApp\") as boolean;\n\t\t\tif (isStaticApp) staticAppsPresent = true;\n\t\t\telse dynamicAppsPresent = true;\n\n\t\t\tconst vizId = app.getBindingContext()?.getProperty(\"chipID\") as string;\n\t\t\tawait this.appManagerInstance.addVisualization(vizId, isStaticApp ? undefined : MYINSIGHT_SECTION_ID);\n\t\t}\n\n\t\tif (staticAppsPresent) {\n\t\t\tawait this.refreshFavoriteApps();\n\t\t}\n\n\t\tif (dynamicAppsPresent) {\n\t\t\tawait this.refreshInsightsApps();\n\t\t}\n\n\t\t(this.getParent() as ContentAdditionDialog)?.close();\n\t\tif (userSelectedApps.length > 1) {\n\t\t\tMessageToast.show(this._i18nBundle.getText(\"contentAddedToMyhome\") as string);\n\t\t} else {\n\t\t\tconst selectedItem = userSelectedApps?.[0];\n\t\t\tconst selectedAppTitle = (selectedItem?.getBindingContext?.()?.getProperty?.(\"title\") as string) ?? \"\";\n\t\t\tconst messageKey = staticAppsPresent ? \"appAddedToFavorites\" : \"tileAddedToInsights\";\n\t\t\tMessageToast.show(this._i18nBundle.getText(messageKey, [selectedAppTitle]) as string);\n\t\t}\n\t\tthis.resetPanel();\n\t}\n\n\t/**\n\t * Retrieves the parent BaseLayout instance for this panel.\n\t *\n\t * @private\n\t * @returns {BaseLayout} The parent BaseLayout instance.\n\t */\n\tprivate getLayout(): BaseLayout {\n\t\treturn this.getParent()?.getParent() as BaseLayout;\n\t}\n\n\t/**\n\t * Retrieves the AppsContainer instance from the parent layout.\n\t *\n\t * @private\n\t * @returns {AppsContainer | undefined} The AppsContainer instance or undefined if not found.\n\t */\n\tprivate getAppsContainer(): AppsContainer | undefined {\n\t\treturn this.getLayout()\n\t\t\t?.getItems()\n\t\t\t.find((container) => container instanceof AppsContainer);\n\t}\n\n\t/**\n\t * Retrieves the favorite apps panel from the AppsContainer.\n\t *\n\t * @private\n\t * @returns {FavAppPanel | undefined} The favorite apps panel or undefined if not found.\n\t */\n\tprivate getFavAppPanel(): FavAppPanel | undefined {\n\t\treturn this.getAppsContainer()\n\t\t\t?.getContent()\n\t\t\t.find((panel) => panel instanceof FavAppPanel);\n\t}\n\n\t/**\n\t * Refreshes the favorite apps panel in the AppsContainer.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async refreshFavoriteApps(): Promise<void> {\n\t\tawait this.getAppsContainer()?.refreshPanel(this.getFavAppPanel() as FavAppPanel);\n\t}\n\n\t/**\n\t * Retrieves the InsightsContainer instance from the parent layout.\n\t *\n\t * @private\n\t * @returns {InsightsContainer | undefined} The AppsContainer instance or undefined if not found.\n\t */\n\tprivate getInsightsContainer(): InsightsContainer | undefined {\n\t\treturn this.getLayout()\n\t\t\t?.getItems()\n\t\t\t.find((container) => container instanceof InsightsContainer);\n\t}\n\n\t/**\n\t * Refreshes the Insights tiles panel in the InsightsContainer.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async refreshInsightsApps(): Promise<void> {\n\t\tawait this.getInsightsContainer()?.refreshData(\"tiles\");\n\t}\n\n\t/**\n\t * Handles the selection change event for the suggested apps list.\n\t *\n\t * @public\n\t * @param {ListBase$SelectionChangeEvent} event - The selection change event.\n\t */\n\tpublic onListSelectionChange(event: ListBase$SelectionChangeEvent): void {\n\t\tconst listItem = event.getParameter(\"listItem\") as CustomListItem;\n\t\tconst selected = event.getParameter(\"selected\") as boolean;\n\n\t\tif (!selected) this.userSelectedApps.delete(listItem);\n\t\telse {\n\t\t\tconst context = listItem.getBindingContext();\n\t\t\tconst addedToHomePage = context?.getProperty(\"addedToHomePage\") as boolean;\n\t\t\tif (!addedToHomePage) this.userSelectedApps.add(listItem);\n\t\t}\n\n\t\tthis.model.setProperty(\"/userSelectedApps\", Array.from(this.userSelectedApps));\n\t}\n\n\t/**\n\t * Handles errors by updating the model with error details.\n\t *\n\t * @private\n\t * @param {string} [message=\"\"] - The error message to process.\n\t */\n\tprivate _handleError(message: string = \"\", suggestedResponseCount?: number): void {\n\t\tconst [, errorCode] = message.match(/\\((\\d{2})\\d*\\)\\s*(.*)/) || [];\n\t\tif (suggestedResponseCount === 0 || message.length === 0) {\n\t\t\tmessage = this._i18nBundle.getText(\"NoResultErrorDescription\") || \"\";\n\t\t}\n\t\tthis.model.setProperty(\"/hasError\", true);\n\t\tthis.model.setProperty(\"/errorType\", this._getErrorType(errorCode));\n\t\tthis.model.setProperty(\"/errorDescription\", message);\n\t}\n\n\t/**\n\t * Determines the error type based on the provided error code.\n\t *\n\t * @private\n\t * @param {string} [errorCode=\"\"] - The error code to evaluate.\n\t * @returns {ErrorType} The corresponding error type.\n\t */\n\tprivate _getErrorType(errorCode: string = \"\"): ErrorType {\n\t\tif (errorCode === \"10\") {\n\t\t\treturn ErrorType.ServiceError;\n\t\t} else {\n\t\t\treturn ErrorType.NoResultsFound;\n\t\t}\n\t}\n\n\t/**\n\t * Handles live change event for the search text area, updating value state and messages.\n\t *\n\t * @private\n\t * @param {TextArea$LiveChangeEvent} event - The live change event from the text area.\n\t */\n\tpublic onSearchTextAreaLiveChange(event: TextArea$LiveChangeEvent) {\n\t\tconst textArea = event.getSource();\n\t\tconst query = textArea.getValue().trim();\n\n\t\tif (query.length !== 0 && query.length < Constants.MinQueryLength) {\n\t\t\ttextArea.setValueState(ValueState.Information);\n\t\t\ttextArea.setValueStateText(this._i18nBundle.getText(\"minLengthRequired\"));\n\t\t} else if (query.length > Constants.MaxDescriptionLength) {\n\t\t\ttextArea.setValueState(ValueState.Warning);\n\t\t\ttextArea.setValueStateText(this._i18nBundle.getText(\"maxLengthExceeded\"));\n\t\t} else {\n\t\t\ttextArea.setValueState(ValueState.None);\n\t\t\ttextArea.setValueStateText(\"\");\n\t\t}\n\n\t\tthis.model.setProperty(\"/invalidQuery\", query.length === 0 || textArea.getValueState() !== ValueState.None);\n\t}\n\n\t/**\n\t * Generates the AI policy text with a link for display in the footer.\n\t *\n\t * @private\n\t * @returns {string} The formatted AI policy text.\n\t */\n\tpublic _generateAIPolicyText(): string {\n\t\tconst linkText = this._i18nBundle.getText(\"createdWithAI\");\n\t\treturn this._i18nBundle.getText(\"aiPolicyText\", [linkText])!;\n\t}\n\n\t/**\n\t * Resets the feedback state.\n\t *\n\t * @private\n\t */\n\tprivate resetFeedback(): void {\n\t\tthis.model.setProperty(\"/feedback\", {\n\t\t\tthumbsUp: false,\n\t\t\tthumbsDown: false\n\t\t});\n\t}\n\n\t/**\n\t * Marks feedback as provided and shows a confirmation message toast.\n\t *\n\t * @private\n\t */\n\tpublic sendFeedback(feedbackType: string): void {\n\t\tthis.resetFeedback();\n\t\tthis.model.setProperty(`/feedback/${feedbackType}`, true);\n\t\tMessageToast.show(this._i18nBundle.getText(\"feedBackSent\") as string, {\n\t\t\twidth: \"20em\"\n\t\t});\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -42,6 +42,7 @@ import {
42
42
  AI_APP_FINDER_API,
43
43
  AI_APP_FINDER_BASE_URL,
44
44
  CONTENT_ADDITION_PANEL_TYPES,
45
+ DEFAULT_APP_ICON,
45
46
  FEATURE_TOGGLES,
46
47
  FESR_IDS,
47
48
  MYINSIGHT_SECTION_ID
@@ -122,8 +123,6 @@ interface TileConfig {
122
123
  * @version 0.0.1
123
124
  * @since 1.136
124
125
  *
125
- * @internal
126
- * @experimental Since 1.136
127
126
  * @private
128
127
  *
129
128
  * @alias sap.cux.home.AppsAdditionPanel
@@ -220,7 +219,21 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
220
219
  feedback: {
221
220
  thumbsUp: false,
222
221
  thumbsDown: false
223
- }
222
+ },
223
+ sampleQueries: [
224
+ {
225
+ index: 1,
226
+ query: this._i18nBundle.getText("sampleQuery_1") as string
227
+ },
228
+ {
229
+ index: 2,
230
+ query: this._i18nBundle.getText("sampleQuery_2") as string
231
+ },
232
+ {
233
+ index: 3,
234
+ query: this._i18nBundle.getText("sampleQuery_3") as string
235
+ }
236
+ ]
224
237
  });
225
238
 
226
239
  panelContent.setModel(this.model);
@@ -259,7 +272,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
259
272
  //focus on the first item when the list is updated
260
273
  this.appSuggestionList.attachUpdateFinished(() => {
261
274
  if (this.model.getProperty("/suggestedAppsCount") > 0 && this.model.getProperty("/searchStatus") === SearchStatus.Complete) {
262
- this.appSuggestionList.getItems()?.[0].focus();
275
+ this.appSuggestionList.getItems()?.[0]?.focus();
263
276
  }
264
277
  });
265
278
 
@@ -317,7 +330,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
317
330
  width: "19rem",
318
331
  header: context.getProperty("title") as string,
319
332
  subheader: context.getProperty("subTitle") as string,
320
- tileIcon: context.getProperty("icon") as string,
333
+ tileIcon: (context.getProperty("icon") as string) || DEFAULT_APP_ICON,
321
334
  visible: context.getProperty("isStaticApp") as boolean,
322
335
  url: context.getProperty("url") as string,
323
336
  press: (event: GenericTile$PressEvent) => {
@@ -331,7 +344,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
331
344
  const vizData = context.getProperty("vizData") as ICustomVisualization;
332
345
  const instance = this.vizInstantiationService.instantiateVisualization(vizData) as ICustomVizInstance;
333
346
  instance?.setActive(true);
334
- instance.attachPress(() => this._persistDialog(this.getParent() as ContentAdditionDialog));
347
+ instance?.attachPress(() => this._persistDialog(this.getParent() as ContentAdditionDialog));
335
348
  container.addItem(instance);
336
349
  }
337
350
 
@@ -440,7 +453,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
440
453
  return [
441
454
  `<svg height="167" fill="none">
442
455
  ${loadingShimmer}
443
- <rect x="16" y="43" width="16" height="16" rx="4" fill="var(--sapContent_Placeholderloading_Background)"/>
456
+ <rect x="16" y="75" width="16" height="16" rx="4" fill="var(--sapContent_Placeholderloading_Background)"/>
444
457
  <rect x="48" y="16" width="37%" height="70" rx="16" fill="url(#loadingShimmer)"/>
445
458
  <rect x="48" y="102" width="93%" height="48" rx="4" fill="url(#loadingShimmer)"/>
446
459
  </svg>`,
@@ -490,8 +503,8 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
490
503
  invalidQuery: true
491
504
  };
492
505
 
493
- this.model.setData({ ...this.model.getData(), ...defaultModelProperties } as object);
494
- this.userSelectedApps.clear();
506
+ this.model?.setData({ ...this.model.getData(), ...defaultModelProperties } as object);
507
+ this.userSelectedApps?.clear();
495
508
  }
496
509
 
497
510
  /**
@@ -520,7 +533,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
520
533
  const apps = this._generateApps(rawApps, allVisualizations, [...favoriteApps, ...insightsApps]);
521
534
  const suggestedApps = await this._filterUnsupportedApps(apps);
522
535
 
523
- if (suggestedApps.length === 0) {
536
+ if (suggestedApps.length === 0 && !this.model.getProperty("/hasError")) {
524
537
  this._handleError("", suggestedApps.length);
525
538
  } else {
526
539
  // update model with filtered apps
@@ -766,8 +779,15 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
766
779
  await this.refreshInsightsApps();
767
780
  }
768
781
 
769
- (this.getParent() as ContentAdditionDialog).close();
770
- MessageToast.show(this._i18nBundle.getText("appAddedToFavorites") as string);
782
+ (this.getParent() as ContentAdditionDialog)?.close();
783
+ if (userSelectedApps.length > 1) {
784
+ MessageToast.show(this._i18nBundle.getText("contentAddedToMyhome") as string);
785
+ } else {
786
+ const selectedItem = userSelectedApps?.[0];
787
+ const selectedAppTitle = (selectedItem?.getBindingContext?.()?.getProperty?.("title") as string) ?? "";
788
+ const messageKey = staticAppsPresent ? "appAddedToFavorites" : "tileAddedToInsights";
789
+ MessageToast.show(this._i18nBundle.getText(messageKey, [selectedAppTitle]) as string);
790
+ }
771
791
  this.resetPanel();
772
792
  }
773
793
 
@@ -789,8 +809,8 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
789
809
  */
790
810
  private getAppsContainer(): AppsContainer | undefined {
791
811
  return this.getLayout()
792
- .getContent()
793
- .find((container) => container instanceof AppsContainer) as AppsContainer | undefined;
812
+ ?.getItems()
813
+ .find((container) => container instanceof AppsContainer);
794
814
  }
795
815
 
796
816
  /**
@@ -823,7 +843,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
823
843
  */
824
844
  private getInsightsContainer(): InsightsContainer | undefined {
825
845
  return this.getLayout()
826
- .getContent()
846
+ ?.getItems()
827
847
  .find((container) => container instanceof InsightsContainer);
828
848
  }
829
849
 
@@ -865,7 +885,7 @@ export default class AppsAdditionPanel extends BaseSettingsPanel {
865
885
  */
866
886
  private _handleError(message: string = "", suggestedResponseCount?: number): void {
867
887
  const [, errorCode] = message.match(/\((\d{2})\d*\)\s*(.*)/) || [];
868
- if (suggestedResponseCount === 0) {
888
+ if (suggestedResponseCount === 0 || message.length === 0) {
869
889
  message = this._i18nBundle.getText("NoResultErrorDescription") || "";
870
890
  }
871
891
  this.model.setProperty("/hasError", true);
@@ -27,7 +27,6 @@ declare module "sap/cux/home/AppsContainer" {
27
27
  * @since 1.121
28
28
  *
29
29
  * @internal
30
- * @experimental Since 1.121
31
30
  * @public
32
31
  *
33
32
  * @alias sap.cux.home.AppsContainer
@@ -39,7 +38,6 @@ declare module "sap/cux/home/AppsContainer" {
39
38
  apiVersion: number;
40
39
  render: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
41
40
  renderContent: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
42
- renderCustomPlaceholder: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
43
41
  };
44
42
  static readonly metadata: MetadataOptions;
45
43
  constructor(idOrSettings?: string | $AppsContainerSettings);
@@ -1 +1 @@
1
- {"version":3,"file":"AppsContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/AppsContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,4BAA4B,CAAC;IAQ5C,OAAO,WAAW,MAAM,mBAAmB,CAAC;IAE5C,OAAmB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;IAMtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAI3D,OAAO,GAAG,MAAM,kBAAkB,CAAC;IACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IAGpE,OAAO,YAA6C,MAAM,2BAA2B,CAAC;IAEtF,OAAO,aAAa,MAAM,4BAA4B,CAAC;IASvD,MAAM,kBAAkB;;;;KASvB,CAAC;IAEF,MAAM,SAAS;;;;KAId,CAAC;IAEF;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,aAAa;QACvD,OAAO,CAAC,gBAAgB,CAAQ;QAChC,OAAO,CAAC,YAAY,CAAW;QAC/B,MAAM,CAAC,QAAQ,CAAC,QAAQ;;;;;UAGtB;QACF,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAYvC;oBAEU,YAAY,CAAC,EAAE,MAAM,GAAG,sBAAsB;oBAC9C,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAW1D;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAuBnB;;;;;WAKG;QAEH,OAAO,CAAC,uBAAuB;QAsB/B;;;;;WAKG;QACI,iBAAiB;QAWxB;;;;;WAKG;QACU,gBAAgB;QAM7B;;;;;;;WAOG;QACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;QAKlC;;;;;WAKG;QAEH,OAAO,CAAC,SAAS;QAKjB;;;;;WAKG;QAEH,OAAO,CAAC,mBAAmB;QAO3B;;;WAGG;QACH,OAAO,CAAC,eAAe;QAQvB;;;;WAIG;QACH,OAAO,CAAC,oBAAoB;QAW5B;;;;;WAKG;gBACW,QAAQ;QAgCtB;;;;;;;WAOG;QACH,OAAO,CAAC,mBAAmB;QAY3B;;;;;;;;WAQG;QACH,OAAO,CAAC,6BAA6B;QAcrC;;;;;WAKG;QACI,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW;QAsBzC;;;;;WAKG;QACH,OAAO,CAAC,aAAa;QAuBrB;;;;;WAKG;kBACa,cAAc,CAAC,KAAK,EAAE,sBAAsB;QAM5D;;;;WAIG;QACU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;QAO/C;;;;;WAKG;QACU,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;QAM7D;;;WAGG;QACH,OAAO,CAAC,cAAc;QAStB;;;;;;WAMG;QACH,OAAO,CAAC,iBAAiB;QAOzB;;;;;WAKG;QACH,OAAO,CAAC,sBAAsB;QAY9B;;;WAGG;QACH,OAAO,CAAC,wBAAwB;QAShC;;;WAGG;QACH,OAAO,CAAC,0BAA0B;QASlC;;;;WAIG;gBACW,+BAA+B;QAStC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;QAoC9C;;;;;;;;;WASG;QACI,YAAY,IAAI,IAAI;QAgC3B;;;;;;;WAOG;QACH,OAAO,CAAC,oBAAoB;QAe5B;;;;;;WAMG;QACH,OAAO,CAAC,cAAc;QAItB;;;;;;WAMG;QACH,OAAO,CAAC,kBAAkB;QAO1B;;;;WAIG;QACH,OAAO,CAAC,aAAa;QASrB;;;;WAIG;QACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;KAGhD;CAEA"}
1
+ {"version":3,"file":"AppsContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/AppsContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,4BAA4B,CAAC;IAQ5C,OAAO,WAAW,MAAM,mBAAmB,CAAC;IAE5C,OAAmB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;IAMtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAI3D,OAAO,GAAG,MAAM,kBAAkB,CAAC;IACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IAGpE,OAAO,YAA6C,MAAM,2BAA2B,CAAC;IAEtF,OAAO,aAAa,MAAM,4BAA4B,CAAC;IASvD,MAAM,kBAAkB;;;;KASvB,CAAC;IAEF,MAAM,SAAS;;;;KAId,CAAC;IAEF;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,aAAa;QACvD,OAAO,CAAC,gBAAgB,CAAQ;QAChC,OAAO,CAAC,YAAY,CAAW;QAC/B,MAAM,CAAC,QAAQ,CAAC,QAAQ;;;;UAGtB;QACF,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAYvC;oBAEU,YAAY,CAAC,EAAE,MAAM,GAAG,sBAAsB;oBAC9C,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAW1D;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAoBnB;;;;;WAKG;QAEH,OAAO,CAAC,uBAAuB;QAsB/B;;;;;WAKG;QACI,iBAAiB;QAWxB;;;;;WAKG;QACU,gBAAgB;QAM7B;;;;;;;WAOG;QACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;QAKlC;;;;;WAKG;QACH,OAAO,CAAC,SAAS;QAKjB;;;;;WAKG;QAEH,OAAO,CAAC,mBAAmB;QAO3B;;;WAGG;QACH,OAAO,CAAC,eAAe;QAQvB;;;;WAIG;QACH,OAAO,CAAC,oBAAoB;QAW5B;;;;;WAKG;gBACW,QAAQ;QAgCtB;;;;;;;WAOG;QACH,OAAO,CAAC,mBAAmB;QAY3B;;;;;;;;WAQG;QACH,OAAO,CAAC,6BAA6B;QAcrC;;;;;WAKG;QACI,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,WAAW;QAsBzC;;;;;WAKG;QACH,OAAO,CAAC,aAAa;QAuBrB;;;;;WAKG;kBACa,cAAc,CAAC,KAAK,EAAE,sBAAsB;QAM5D;;;;WAIG;QACU,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;QAO/C;;;;;WAKG;QACU,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;QAM7D;;;WAGG;QACH,OAAO,CAAC,cAAc;QAStB;;;;;;WAMG;QACH,OAAO,CAAC,iBAAiB;QAOzB;;;;;WAKG;QACH,OAAO,CAAC,sBAAsB;QAY9B;;;WAGG;QACH,OAAO,CAAC,wBAAwB;QAShC;;;WAGG;QACH,OAAO,CAAC,0BAA0B;QASlC;;;;WAIG;gBACW,+BAA+B;QAStC,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;QAoC9C;;;;;;;;;WASG;QACI,YAAY,IAAI,IAAI;QAgC3B;;;;;;;WAOG;QACH,OAAO,CAAC,oBAAoB;QAe5B;;;;;;WAMG;QACH,OAAO,CAAC,cAAc;QAItB;;;;;;WAMG;QACH,OAAO,CAAC,kBAAkB;QAO1B;;;;WAIG;QACH,OAAO,CAAC,aAAa;QASrB;;;;WAIG;QACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;KAGhD;CAEA"}
@@ -2,7 +2,7 @@
2
2
  * SAP UI development toolkit for HTML5 (SAPUI5)
3
3
  * * (c) Copyright 2009-2025 SAP SE. All rights reserved
4
4
  */
5
- sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/library", "sap/ui/core/EventBus", "sap/ui/core/theming/Parameters", "sap/ushell/api/S4MyHome", "./AppsContainerGenericPlaceholder", "./BaseAppPersPanel", "./BaseContainer", "./RecommendedAppPanel", "./library", "./utils/DataFormatUtils", "./utils/Device"], function (Log, GenericTile, Panel, sap_m_library, EventBus, Parameters, S4MyHome, ___AppsContainerGenericPlaceholder, __BaseAppPersPanel, __BaseContainer, __RecommendedAppPanel, ___library, ___utils_DataFormatUtils, ___utils_Device) {
5
+ sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/library", "sap/ui/core/EventBus", "sap/ui/core/theming/Parameters", "sap/ushell/api/S4MyHome", "./utils/placeholder/AppsPlaceholder", "./BaseAppPersPanel", "./BaseContainer", "./Group", "./RecommendedAppPanel", "./library", "./utils/DataFormatUtils", "./utils/Device"], function (Log, GenericTile, Panel, sap_m_library, EventBus, Parameters, S4MyHome, ___utils_placeholder_AppsPlaceholder, __BaseAppPersPanel, __BaseContainer, __Group, __RecommendedAppPanel, ___library, ___utils_DataFormatUtils, ___utils_Device) {
6
6
  "use strict";
7
7
 
8
8
  function _interopRequireDefault(obj) {
@@ -24,9 +24,10 @@ sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/librar
24
24
  const GenericTileMode = sap_m_library["GenericTileMode"];
25
25
  const GenericTileScope = sap_m_library["GenericTileScope"];
26
26
  const TileSizeBehavior = sap_m_library["TileSizeBehavior"];
27
- const getAppsPlaceholder = ___AppsContainerGenericPlaceholder["getAppsPlaceholder"];
27
+ const getAppsPlaceholder = ___utils_placeholder_AppsPlaceholder["getAppsPlaceholder"];
28
28
  const BaseAppPersPanel = _interopRequireDefault(__BaseAppPersPanel);
29
29
  const BaseContainer = _interopRequireDefault(__BaseContainer);
30
+ const Group = _interopRequireDefault(__Group);
30
31
  const RecommendedAppPanel = _interopRequireDefault(__RecommendedAppPanel);
31
32
  const OrientationType = ___library["OrientationType"];
32
33
  const getLeanURL = ___utils_DataFormatUtils["getLeanURL"];
@@ -60,7 +61,6 @@ sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/librar
60
61
  * @since 1.121
61
62
  *
62
63
  * @internal
63
- * @experimental Since 1.121
64
64
  * @public
65
65
  *
66
66
  * @alias sap.cux.home.AppsContainer
@@ -106,9 +106,6 @@ sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/librar
106
106
  init: function _init() {
107
107
  BaseContainer.prototype.init.call(this);
108
108
  this.setProperty("title", this._i18nBundle?.getText("appsTitle"));
109
- if (this.getDeviceType() === DeviceType.Mobile) {
110
- this.setProperty("orientation", OrientationType.Vertical);
111
- }
112
109
  // Subscribe to recommendation setting change event
113
110
  const eventBus = EventBus.getInstance();
114
111
  eventBus.subscribe("importChannel", "recommendationSettingChanged", (channelId, eventId, data) => {
@@ -574,7 +571,7 @@ sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/librar
574
571
  adjustLayout: function _adjustLayout() {
575
572
  const isPhone = this.getDeviceType() === DeviceType.Mobile;
576
573
  const currentLayout = this.getProperty("orientation");
577
- const newLayout = isPhone ? OrientationType.Vertical : OrientationType.SideBySide;
574
+ const newLayout = OrientationType.SideBySide;
578
575
  const shouldAdjustLayout = currentLayout !== newLayout;
579
576
  const selectedPanel = this._getSelectedPanel();
580
577
  this.setTileWidth(selectedPanel);
@@ -632,7 +629,7 @@ sap.ui.define(["sap/base/Log", "sap/m/GenericTile", "sap/m/Panel", "sap/m/librar
632
629
  * @returns {sap.m.GenericTile[]} The generated tiles.
633
630
  */
634
631
  _generateTiles: function _generateTiles(items) {
635
- return items.map(item => item.isA("sap.cux.home.Group") ? this._getGroupTile(item) : this._getAppTile(item));
632
+ return items.map(item => item instanceof Group ? this._getGroupTile(item) : this._getAppTile(item));
636
633
  },
637
634
  /**
638
635
  * Adds given items into the wrapper.