@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.
- package/package.json +1 -1
- package/src/sap/cux/home/.library +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.js +11 -7
- package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.ts +13 -7
- package/src/sap/cux/home/App.d.ts +1 -2
- package/src/sap/cux/home/App.d.ts.map +1 -1
- package/src/sap/cux/home/App.js +7 -2
- package/src/sap/cux/home/App.js.map +1 -1
- package/src/sap/cux/home/App.ts +8 -3
- package/src/sap/cux/home/AppsAdditionPanel.d.ts +0 -2
- package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.js +31 -15
- package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.ts +36 -16
- package/src/sap/cux/home/AppsContainer.d.ts +0 -2
- package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/AppsContainer.js +5 -8
- package/src/sap/cux/home/AppsContainer.js.map +1 -1
- package/src/sap/cux/home/AppsContainer.ts +3 -8
- package/src/sap/cux/home/BaseApp.d.ts +2 -2
- package/src/sap/cux/home/BaseApp.d.ts.map +1 -1
- package/src/sap/cux/home/BaseApp.js +10 -3
- package/src/sap/cux/home/BaseApp.js.map +1 -1
- package/src/sap/cux/home/BaseApp.ts +11 -4
- package/src/sap/cux/home/BaseAppPanel.d.ts +0 -2
- package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.js +5 -6
- package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.ts +3 -5
- package/src/sap/cux/home/BaseAppPersPanel.d.ts +0 -2
- package/src/sap/cux/home/BaseAppPersPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseAppPersPanel.js +6 -6
- package/src/sap/cux/home/BaseAppPersPanel.js.map +1 -1
- package/src/sap/cux/home/BaseAppPersPanel.ts +9 -7
- package/src/sap/cux/home/BaseContainer.d.ts +0 -1
- package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainer.js +10 -5
- package/src/sap/cux/home/BaseContainer.js.map +1 -1
- package/src/sap/cux/home/BaseContainer.ts +10 -5
- package/src/sap/cux/home/BaseContainerRenderer.d.ts +4 -4
- package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.js +17 -19
- package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.ts +21 -25
- package/src/sap/cux/home/BaseLayout.d.ts +0 -1
- package/src/sap/cux/home/BaseLayout.d.ts.map +1 -1
- package/src/sap/cux/home/BaseLayout.js +1 -2
- package/src/sap/cux/home/BaseLayout.js.map +1 -1
- package/src/sap/cux/home/BaseLayout.ts +1 -2
- package/src/sap/cux/home/BaseNewsItem.d.ts +1 -2
- package/src/sap/cux/home/BaseNewsItem.d.ts.map +1 -1
- package/src/sap/cux/home/BaseNewsItem.js +7 -2
- package/src/sap/cux/home/BaseNewsItem.js.map +1 -1
- package/src/sap/cux/home/BaseNewsItem.ts +8 -3
- package/src/sap/cux/home/BaseNewsPanel.d.ts +1 -2
- package/src/sap/cux/home/BaseNewsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseNewsPanel.js +7 -2
- package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
- package/src/sap/cux/home/BaseNewsPanel.ts +8 -3
- package/src/sap/cux/home/BasePagePanel.d.ts +1 -2
- package/src/sap/cux/home/BasePagePanel.d.ts.map +1 -1
- package/src/sap/cux/home/BasePagePanel.gen.d.ts +34 -0
- package/src/sap/cux/home/BasePagePanel.js +16 -2
- package/src/sap/cux/home/BasePagePanel.js.map +1 -1
- package/src/sap/cux/home/BasePagePanel.ts +17 -3
- package/src/sap/cux/home/BasePanel.d.ts +0 -1
- package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
- package/src/sap/cux/home/BasePanel.js +0 -1
- package/src/sap/cux/home/BasePanel.js.map +1 -1
- package/src/sap/cux/home/BasePanel.ts +0 -1
- package/src/sap/cux/home/BaseSettingsDialog.d.ts +0 -1
- package/src/sap/cux/home/BaseSettingsDialog.d.ts.map +1 -1
- package/src/sap/cux/home/BaseSettingsDialog.js +0 -1
- package/src/sap/cux/home/BaseSettingsDialog.js.map +1 -1
- package/src/sap/cux/home/BaseSettingsDialog.ts +0 -1
- package/src/sap/cux/home/BaseSettingsPanel.d.ts +0 -1
- package/src/sap/cux/home/BaseSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.js +2 -2
- package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.ts +3 -2
- package/src/sap/cux/home/CardsPanel.d.ts +0 -1
- package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/CardsPanel.js +3 -4
- package/src/sap/cux/home/CardsPanel.js.map +1 -1
- package/src/sap/cux/home/CardsPanel.ts +3 -7
- package/src/sap/cux/home/ContentAdditionDialog.d.ts +0 -3
- package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.js +4 -8
- package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.ts +4 -8
- package/src/sap/cux/home/ErrorPanel.d.ts +1 -2
- package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ErrorPanel.gen.d.ts +24 -0
- package/src/sap/cux/home/ErrorPanel.js +16 -2
- package/src/sap/cux/home/ErrorPanel.js.map +1 -1
- package/src/sap/cux/home/ErrorPanel.ts +17 -3
- package/src/sap/cux/home/FavAppPanel.d.ts +0 -1
- package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/FavAppPanel.js +15 -12
- package/src/sap/cux/home/FavAppPanel.js.map +1 -1
- package/src/sap/cux/home/FavAppPanel.ts +20 -15
- package/src/sap/cux/home/FrequentAppPanel.d.ts +0 -1
- package/src/sap/cux/home/FrequentAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/FrequentAppPanel.js +0 -1
- package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
- package/src/sap/cux/home/FrequentAppPanel.ts +0 -1
- package/src/sap/cux/home/Group.d.ts +2 -2
- package/src/sap/cux/home/Group.d.ts.map +1 -1
- package/src/sap/cux/home/Group.gen.d.ts +47 -1
- package/src/sap/cux/home/Group.js +30 -3
- package/src/sap/cux/home/Group.js.map +1 -1
- package/src/sap/cux/home/Group.ts +26 -6
- package/src/sap/cux/home/IToDoPanel.d.ts +1 -2
- package/src/sap/cux/home/IToDoPanel.d.ts.map +1 -1
- package/src/sap/cux/home/IToDoPanel.js.map +1 -1
- package/src/sap/cux/home/IToDoPanel.ts +1 -2
- package/src/sap/cux/home/InsightsAdditionPanel.d.ts +0 -4
- package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.js +5 -14
- package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.ts +5 -16
- package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/InsightsCardsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsCardsSettingsPanel.js +0 -3
- package/src/sap/cux/home/InsightsCardsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsCardsSettingsPanel.ts +0 -3
- package/src/sap/cux/home/InsightsContainer.d.ts +1 -2
- package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsContainer.js +21 -5
- package/src/sap/cux/home/InsightsContainer.js.map +1 -1
- package/src/sap/cux/home/InsightsContainer.ts +24 -5
- package/src/sap/cux/home/InsightsTilesSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/InsightsTilesSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsTilesSettingsPanel.js +5 -5
- package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +5 -5
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +0 -3
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +0 -3
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +0 -3
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +0 -3
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +4 -6
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +13 -8
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.js +0 -3
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +0 -3
- package/src/sap/cux/home/KeyUserSettingsDialog.d.ts +0 -3
- package/src/sap/cux/home/KeyUserSettingsDialog.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserSettingsDialog.js +0 -3
- package/src/sap/cux/home/KeyUserSettingsDialog.js.map +1 -1
- package/src/sap/cux/home/KeyUserSettingsDialog.ts +0 -3
- package/src/sap/cux/home/Layout.d.ts +0 -2
- package/src/sap/cux/home/Layout.d.ts.map +1 -1
- package/src/sap/cux/home/Layout.js +0 -2
- package/src/sap/cux/home/Layout.js.map +1 -1
- package/src/sap/cux/home/Layout.ts +0 -3
- package/src/sap/cux/home/LayoutSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/LayoutSettingsPanel.js +0 -3
- package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/LayoutSettingsPanel.ts +0 -3
- package/src/sap/cux/home/MenuItem.d.ts +0 -1
- package/src/sap/cux/home/MenuItem.d.ts.map +1 -1
- package/src/sap/cux/home/MenuItem.js +0 -1
- package/src/sap/cux/home/MenuItem.js.map +1 -1
- package/src/sap/cux/home/MenuItem.ts +0 -1
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts +12 -14
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
- package/src/sap/cux/home/NewsAndPagesContainer.js +10 -12
- package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
- package/src/sap/cux/home/NewsAndPagesContainer.ts +20 -18
- package/src/sap/cux/home/NewsGroup.d.ts +0 -3
- package/src/sap/cux/home/NewsGroup.d.ts.map +1 -1
- package/src/sap/cux/home/NewsGroup.js +0 -3
- package/src/sap/cux/home/NewsGroup.js.map +1 -1
- package/src/sap/cux/home/NewsGroup.ts +0 -3
- package/src/sap/cux/home/NewsItem.d.ts +0 -3
- package/src/sap/cux/home/NewsItem.d.ts.map +1 -1
- package/src/sap/cux/home/NewsItem.js +0 -3
- package/src/sap/cux/home/NewsItem.js.map +1 -1
- package/src/sap/cux/home/NewsItem.ts +0 -3
- package/src/sap/cux/home/NewsPanel.d.ts +7 -10
- package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsPanel.js +13 -14
- package/src/sap/cux/home/NewsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsPanel.ts +15 -14
- package/src/sap/cux/home/NewsSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.js +1 -4
- package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.ts +1 -4
- package/src/sap/cux/home/NoDataContainer.d.ts +0 -2
- package/src/sap/cux/home/NoDataContainer.d.ts.map +1 -1
- package/src/sap/cux/home/NoDataContainer.js +0 -1
- package/src/sap/cux/home/NoDataContainer.js.map +1 -1
- package/src/sap/cux/home/NoDataContainer.ts +0 -1
- package/src/sap/cux/home/Page.d.ts +0 -3
- package/src/sap/cux/home/Page.d.ts.map +1 -1
- package/src/sap/cux/home/Page.gen.d.ts +0 -12
- package/src/sap/cux/home/Page.js +0 -7
- package/src/sap/cux/home/Page.js.map +1 -1
- package/src/sap/cux/home/Page.ts +0 -7
- package/src/sap/cux/home/PagePanel.d.ts +0 -4
- package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
- package/src/sap/cux/home/PagePanel.js +0 -4
- package/src/sap/cux/home/PagePanel.js.map +1 -1
- package/src/sap/cux/home/PagePanel.ts +0 -4
- package/src/sap/cux/home/PageSettingsPanel.d.ts +0 -3
- package/src/sap/cux/home/PageSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/PageSettingsPanel.js +3 -5
- package/src/sap/cux/home/PageSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/PageSettingsPanel.ts +3 -5
- package/src/sap/cux/home/RecentAppPanel.d.ts +0 -1
- package/src/sap/cux/home/RecentAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/RecentAppPanel.js +0 -1
- package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
- package/src/sap/cux/home/RecentAppPanel.ts +0 -1
- package/src/sap/cux/home/RecommendedAppPanel.d.ts +0 -1
- package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/RecommendedAppPanel.js +0 -1
- package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
- package/src/sap/cux/home/RecommendedAppPanel.ts +0 -1
- package/src/sap/cux/home/SettingsDialog.d.ts +0 -3
- package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
- package/src/sap/cux/home/SettingsDialog.js +2 -4
- package/src/sap/cux/home/SettingsDialog.js.map +1 -1
- package/src/sap/cux/home/SettingsDialog.ts +2 -4
- package/src/sap/cux/home/SituationPanel.d.ts +0 -1
- package/src/sap/cux/home/SituationPanel.d.ts.map +1 -1
- package/src/sap/cux/home/SituationPanel.js +0 -1
- package/src/sap/cux/home/SituationPanel.js.map +1 -1
- package/src/sap/cux/home/SituationPanel.ts +0 -1
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts +207 -0
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -0
- package/src/sap/cux/home/SpaceInsightsPanel.gen.d.ts +200 -0
- package/src/sap/cux/home/SpaceInsightsPanel.js +789 -0
- package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -0
- package/src/sap/cux/home/SpaceInsightsPanel.ts +631 -0
- package/src/sap/cux/home/SpacePanel.d.ts +117 -0
- package/src/sap/cux/home/SpacePanel.d.ts.map +1 -0
- package/src/sap/cux/home/SpacePanel.gen.d.ts +77 -0
- package/src/sap/cux/home/SpacePanel.js +599 -0
- package/src/sap/cux/home/SpacePanel.js.map +1 -0
- package/src/sap/cux/home/SpacePanel.ts +461 -0
- package/src/sap/cux/home/TaskPanel.d.ts +0 -1
- package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TaskPanel.js +8 -20
- package/src/sap/cux/home/TaskPanel.js.map +1 -1
- package/src/sap/cux/home/TaskPanel.ts +9 -20
- package/src/sap/cux/home/TilesPanel.d.ts +0 -1
- package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TilesPanel.js +5 -6
- package/src/sap/cux/home/TilesPanel.js.map +1 -1
- package/src/sap/cux/home/TilesPanel.ts +5 -12
- package/src/sap/cux/home/ToDoPanel.d.ts +11 -1
- package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ToDoPanel.js +59 -22
- package/src/sap/cux/home/ToDoPanel.js.map +1 -1
- package/src/sap/cux/home/ToDoPanel.ts +63 -22
- package/src/sap/cux/home/ToDosContainer.d.ts +0 -2
- package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
- package/src/sap/cux/home/ToDosContainer.js +2 -3
- package/src/sap/cux/home/ToDosContainer.js.map +1 -1
- package/src/sap/cux/home/ToDosContainer.ts +1 -2
- package/src/sap/cux/home/i18n/messagebundle.properties +22 -13
- package/src/sap/cux/home/i18n/messagebundle_ar.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_bg.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_ca.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_cnr.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_cs.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_cy.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_da.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_de.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_el.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_en.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +65 -13
- package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +19 -9
- package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +57 -11
- package/src/sap/cux/home/i18n/messagebundle_es.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_et.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_fi.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_fr.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_hi.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_hr.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_hu.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_id.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_it.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_iw.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_ja.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_kk.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_ko.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_lt.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_lv.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_mk.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_ms.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_nl.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_no.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_pl.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_pt.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_ro.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_ru.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_sh.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_sk.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_sl.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_sr.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_sv.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_th.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_tr.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_uk.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_vi.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +6 -3
- package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +6 -3
- package/src/sap/cux/home/interface/AppsInterface.d.ts +1 -0
- package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
- package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
- package/src/sap/cux/home/interface/AppsInterface.ts +1 -0
- package/src/sap/cux/home/interface/CardsInterface.d.ts +1 -5
- package/src/sap/cux/home/interface/CardsInterface.d.ts.map +1 -1
- package/src/sap/cux/home/interface/CardsInterface.js.map +1 -1
- package/src/sap/cux/home/interface/CardsInterface.ts +1 -1
- package/src/sap/cux/home/library.d.ts +3 -4
- package/src/sap/cux/home/library.d.ts.map +1 -1
- package/src/sap/cux/home/library.js +3 -4
- package/src/sap/cux/home/library.js.map +1 -1
- package/src/sap/cux/home/library.ts +3 -4
- package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +1 -9
- package/src/sap/cux/home/themes/base/InsightsContainer.less +4 -0
- package/src/sap/cux/home/themes/base/KeyUserSettingsDialog.less +0 -5
- package/src/sap/cux/home/themes/base/ToDosContainer.less +2 -1
- package/src/sap/cux/home/utils/Accessibility.js +2 -2
- package/src/sap/cux/home/utils/Accessibility.js.map +1 -1
- package/src/sap/cux/home/utils/Accessibility.ts +2 -2
- package/src/sap/cux/home/utils/AnalyticalCardSkeleton.d.ts +0 -1
- package/src/sap/cux/home/utils/AnalyticalCardSkeleton.d.ts.map +1 -1
- package/src/sap/cux/home/utils/AnalyticalCardSkeleton.js +0 -1
- package/src/sap/cux/home/utils/AnalyticalCardSkeleton.js.map +1 -1
- package/src/sap/cux/home/utils/AnalyticalCardSkeleton.ts +0 -1
- package/src/sap/cux/home/utils/AppManager.d.ts +4 -7
- package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
- package/src/sap/cux/home/utils/AppManager.js +12 -13
- package/src/sap/cux/home/utils/AppManager.js.map +1 -1
- package/src/sap/cux/home/utils/AppManager.ts +20 -13
- package/src/sap/cux/home/utils/BatchHelper.d.ts +0 -3
- package/src/sap/cux/home/utils/BatchHelper.d.ts.map +1 -1
- package/src/sap/cux/home/utils/BatchHelper.js +0 -3
- package/src/sap/cux/home/utils/BatchHelper.js.map +1 -1
- package/src/sap/cux/home/utils/BatchHelper.ts +0 -3
- package/src/sap/cux/home/utils/CommonUtils.d.ts +9 -0
- package/src/sap/cux/home/utils/CommonUtils.d.ts.map +1 -1
- package/src/sap/cux/home/utils/CommonUtils.js +23 -2
- package/src/sap/cux/home/utils/CommonUtils.js.map +1 -1
- package/src/sap/cux/home/utils/CommonUtils.ts +28 -1
- package/src/sap/cux/home/utils/Constants.d.ts +4 -5
- package/src/sap/cux/home/utils/Constants.d.ts.map +1 -1
- package/src/sap/cux/home/utils/Constants.js +5 -5
- package/src/sap/cux/home/utils/Constants.js.map +1 -1
- package/src/sap/cux/home/utils/Constants.ts +4 -5
- package/src/sap/cux/home/utils/DecisionDialog.d.ts +0 -3
- package/src/sap/cux/home/utils/DecisionDialog.d.ts.map +1 -1
- package/src/sap/cux/home/utils/DecisionDialog.js +0 -3
- package/src/sap/cux/home/utils/DecisionDialog.js.map +1 -1
- package/src/sap/cux/home/utils/DecisionDialog.ts +0 -3
- package/src/sap/cux/home/utils/FESRUtil.js +1 -1
- package/src/sap/cux/home/utils/FESRUtil.js.map +1 -1
- package/src/sap/cux/home/utils/FESRUtil.ts +1 -1
- package/src/sap/cux/home/utils/FeatureUtils.d.ts +20 -13
- package/src/sap/cux/home/utils/FeatureUtils.d.ts.map +1 -1
- package/src/sap/cux/home/utils/FeatureUtils.js +33 -29
- package/src/sap/cux/home/utils/FeatureUtils.js.map +1 -1
- package/src/sap/cux/home/utils/FeatureUtils.ts +38 -31
- package/src/sap/cux/home/utils/HttpHelper.d.ts +7 -3
- package/src/sap/cux/home/utils/HttpHelper.d.ts.map +1 -1
- package/src/sap/cux/home/utils/HttpHelper.js +43 -3
- package/src/sap/cux/home/utils/HttpHelper.js.map +1 -1
- package/src/sap/cux/home/utils/HttpHelper.ts +25 -3
- package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +1 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.js +32 -13
- package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +1 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.ts +2 -3
- package/src/sap/cux/home/utils/PageManager.d.ts +0 -3
- package/src/sap/cux/home/utils/PageManager.d.ts.map +1 -1
- package/src/sap/cux/home/utils/PageManager.js +0 -3
- package/src/sap/cux/home/utils/PageManager.js.map +1 -1
- package/src/sap/cux/home/utils/PageManager.ts +0 -3
- package/src/sap/cux/home/utils/PersonalisationUtils.d.ts +0 -3
- package/src/sap/cux/home/utils/PersonalisationUtils.d.ts.map +1 -1
- package/src/sap/cux/home/utils/PersonalisationUtils.js +0 -3
- package/src/sap/cux/home/utils/PersonalisationUtils.js.map +1 -1
- package/src/sap/cux/home/utils/PersonalisationUtils.ts +0 -3
- package/src/sap/cux/home/utils/UshellPersonalizer.d.ts +0 -3
- package/src/sap/cux/home/utils/UshellPersonalizer.d.ts.map +1 -1
- package/src/sap/cux/home/utils/UshellPersonalizer.js +0 -3
- package/src/sap/cux/home/utils/UshellPersonalizer.js.map +1 -1
- package/src/sap/cux/home/utils/UshellPersonalizer.ts +0 -3
- package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +20 -16
- package/src/sap/cux/home/{AppsContainerGenericPlaceholder.d.ts → utils/placeholder/AppsPlaceholder.d.ts} +2 -2
- package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{AppsContainerGenericPlaceholder.js → utils/placeholder/AppsPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.js.map +1 -0
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +8 -0
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.js → utils/placeholder/InsightsPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +1 -0
- package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.d.ts → utils/placeholder/NewsAndPagesPlaceholder.d.ts} +3 -3
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.js → utils/placeholder/NewsAndPagesPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +1 -0
- package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.d.ts → utils/placeholder/ToDosPlaceholder.d.ts} +2 -2
- package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.js → utils/placeholder/ToDosPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.js.map +1 -0
- package/src/sap/cux/home/AppsContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/AppsContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/InsightsContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/InsightsContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts +0 -8
- package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/ToDosContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/ToDosContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/utils/CardSkeleton.d.ts +0 -54
- package/src/sap/cux/home/utils/CardSkeleton.d.ts.map +0 -1
- package/src/sap/cux/home/utils/CardSkeleton.js +0 -61
- package/src/sap/cux/home/utils/CardSkeleton.js.map +0 -1
- package/src/sap/cux/home/utils/CardSkeleton.ts +0 -53
- /package/src/sap/cux/home/{AppsContainerGenericPlaceholder.ts → utils/placeholder/AppsPlaceholder.ts} +0 -0
- /package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.ts → utils/placeholder/InsightsPlaceholder.ts} +0 -0
- /package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.ts → utils/placeholder/NewsAndPagesPlaceholder.ts} +0 -0
- /package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.ts → utils/placeholder/ToDosPlaceholder.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsAdditionPanel.js","names":["sap","ui","define","Log","CardHelper","Button","sap_m_library","MessageBox","MessageToast","VBox","__BaseSettingsPanel","__CardsPanel","__InsightsContainer","___utils_Constants","___utils_FeatureUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BackgroundDesign","_finallyRethrows","finalizer","bind","ButtonType","BaseSettingsPanel","CardsPanel","InsightsContainer","CONTENT_ADDITION_PANEL_TYPES","FEATURE_TOGGLES","FESR_IDS","isNavigationSupportedForFeature","addFESRSemanticStepName","FESR_EVENTS","InsightsAdditionPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","AI_INSIGHTS_CARDS","_i18nBundle","getText","addCardsButton","getId","text","type","Emphasized","enabled","press","onPressAddCards","PRESS","ADD_AI_CARD","addActionButton","_setupContent","dialogCloseHandler","resetAddCardInnerContent","attachEvent","enableAddButton","_enableAddButton","action","setEnabled","_this","_temp","Promise","resolve","_fetchAddCardDialogContent","dialogContent","wrapperVBox","items","backgroundDesign","Solid","height","addAggregation","error","getParent","removePanel","detachEvent","message","reject","_this2","getServiceAsync","_getServiceAsync","cardHelperInstance","fetchAddCardInnerContent","event","_latestGeneratedManifest","getParameters","isValidManifest","Object","keys","length","getInsightsContainer","_getInsightsContainer","layout","getContent","find","container","isSupported","_isSupported","_this3","_temp3","isPanelSupported","removeActionButton","contentAdditionDialog","updateActionButtons","insightsCardIntent","target","semanticObject","_temp2","undefined","AI_GENERATED_CARD","_isNavigationSupporte","_fetchCardsPanel","insightsContainer","panel","_onPressAddCards","_this4","addContentDialog","_temp4","setBusy","_createCard","createdCardResponse","show","close","visible","information","styleClass","cardsPanel","refreshData","_wasThrown","_result","_resetAddCardInnerContent"],"sources":["InsightsAdditionPanel.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 CardHelper from \"sap/insights/CardHelper\";\nimport Button from \"sap/m/Button\";\nimport { BackgroundDesign, ButtonType } from \"sap/m/library\";\nimport MessageBox from \"sap/m/MessageBox\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport VBox from \"sap/m/VBox\";\nimport Control from \"sap/ui/core/Control\";\nimport { Target } from \"sap/ushell/services/Navigation\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport CardsPanel from \"./CardsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport InsightsContainer from \"./InsightsContainer\";\nimport { ICardHelper, ICardHelperInstance, ICardManifest } from \"./interface/CardsInterface\";\nimport { CONTENT_ADDITION_PANEL_TYPES, FEATURE_TOGGLES, FESR_IDS } from \"./utils/Constants\";\nimport { isNavigationSupportedForFeature } from \"./utils/FeatureUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\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.InsightsAdditionPanel\n */\nexport default class InsightsAdditionPanel extends BaseSettingsPanel {\n\tprivate addCardsButton!: Button;\n\tprivate cardHelperInstance!: ICardHelperInstance;\n\tprivate isPanelSupported!: boolean;\n\tprivate _latestGeneratedManifest!: ICardManifest;\n\tprivate dialogCloseHandler!: () => void;\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init() {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", CONTENT_ADDITION_PANEL_TYPES.AI_INSIGHTS_CARDS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsCards\"));\n\n\t\t//setup actions\n\t\tthis.addCardsButton = new Button(`${this.getId()}-add-cards-btn`, {\n\t\t\ttext: this._i18nBundle.getText(\"addFromInsightsDialogBtn\"),\n\t\t\ttype: ButtonType.Emphasized,\n\t\t\tenabled: false,\n\t\t\tpress: this.onPressAddCards.bind(this)\n\t\t});\n\t\taddFESRSemanticStepName(this.addCardsButton, FESR_EVENTS.PRESS, FESR_IDS.ADD_AI_CARD);\n\t\tthis.addActionButton(this.addCardsButton);\n\t\t//setup content\n\t\tvoid this._setupContent();\n\t\tthis.dialogCloseHandler = this.resetAddCardInnerContent.bind(this);\n\t\tthis.attachEvent(\"onDialogClose\", this.dialogCloseHandler);\n\t}\n\n\t/**\n\t * Enables or disables the \"Add Cards\" button.\n\t *\n\t * @param {boolean} action - If true, the button is enabled; if false, it is disabled.\n\t */\n\tprivate enableAddButton(action: boolean) {\n\t\tthis.addCardsButton.setEnabled(action);\n\t}\n\n\t/**\n\t * It sets up the content for the \"Insights card\" dialog.\n\t * It fetches the inner dialog content for adding a card.\n\t * Adds the VBox to the panel's content aggregation.\n\t *\n\t * This also enables the \"Add\" button once content is fetched.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when setup is complete.\n\t */\n\tprivate async _setupContent(): Promise<void> {\n\t\ttry {\n\t\t\tconst dialogContent = await this._fetchAddCardDialogContent();\n\t\t\tif (dialogContent) {\n\t\t\t\tconst wrapperVBox = new VBox(`${this.getId()}-wrapperVBox`, {\n\t\t\t\t\titems: dialogContent,\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Solid,\n\t\t\t\t\theight: \"100%\"\n\t\t\t\t});\n\t\t\t\tthis.addAggregation(\"content\", wrapperVBox);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t(this.getParent() as ContentAdditionDialog)?.removePanel(this);\n\t\t\tthis.detachEvent(\"onDialogClose\", this.dialogCloseHandler);\n\t\t\tLog.error((error as Error).message);\n\t\t}\n\t}\n\n\t/**\n\t * Fetches the dialog content for adding a new card and sets up the callback\n\t * to handle the card generation event, storing the generated manifest and enabling the add button.\n\t *\n\t * @private\n\t * @returns {Promise<Control[]>} A promise that resolves with an array of dialog content controls.\n\t */\n\tprivate async _fetchAddCardDialogContent(): Promise<Control[]> {\n\t\tthis.cardHelperInstance = await (CardHelper as ICardHelper).getServiceAsync();\n\t\treturn this.cardHelperInstance.fetchAddCardInnerContent((event) => {\n\t\t\tthis._latestGeneratedManifest = event.getParameters();\n\t\t\tconst isValidManifest = Object.keys(this._latestGeneratedManifest).length > 1;\n\t\t\tthis.enableAddButton(isValidManifest);\n\t\t});\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 InsightsContainer instance or undefined if not found.\n\t */\n\tprivate getInsightsContainer(): InsightsContainer | undefined {\n\t\tconst layout = this.getParent()?.getParent() as BaseLayout;\n\t\treturn layout.getContent().find((container) => container instanceof InsightsContainer);\n\t}\n\n\t/**\n\t * Checks if the Insights Addition Panel is supported.\n\t *\n\t * @public\n\t * @async\n\t * @returns {Promise<boolean>} A promise that resolves to true if supported.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst insightsCardIntent: Target = {\n\t\t\ttarget: {\n\t\t\t\tsemanticObject: \"IntelligentPrompt\",\n\t\t\t\taction: \"personalize\"\n\t\t\t}\n\t\t};\n\t\tif (this.isPanelSupported === undefined) {\n\t\t\tthis.isPanelSupported = false;\n\t\t\tthis.isPanelSupported = await isNavigationSupportedForFeature(FEATURE_TOGGLES.AI_GENERATED_CARD, insightsCardIntent);\n\t\t}\n\t\t//remove panel if it's not supported\n\t\tif (!this.isPanelSupported) {\n\t\t\tthis.removeActionButton(this.addCardsButton);\n\t\t\tconst contentAdditionDialog = this.getParent() as ContentAdditionDialog;\n\t\t\tcontentAdditionDialog.removePanel(this);\n\t\t\tcontentAdditionDialog.updateActionButtons();\n\t\t}\n\t\treturn this.isPanelSupported;\n\t}\n\n\t/**\n\t * Retrieves the `CardsPanel` instance from the `InsightsContainer`.\n\t *\n\t * @private\n\t * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.\n\t */\n\tprivate _fetchCardsPanel(): CardsPanel | undefined {\n\t\tconst insightsContainer = this.getInsightsContainer();\n\t\tif (!insightsContainer) {\n\t\t\treturn;\n\t\t}\n\t\treturn insightsContainer.getContent().find((panel): panel is CardsPanel => panel instanceof CardsPanel);\n\t}\n\n\t/**\n\t * Handles the logic for creating and adding a new insight card to cards Panel.\n\t *\n\t * - Sets the dialog to busy while the card creation is in progress.\n\t * - It adds a new card using the latest generated manifest.\n\t * - On success, shows a message toast and closes the dialog.\n\t * - Refreshes the insights cards panel data.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when the card creation flow completes.\n\t */\n\tprivate async onPressAddCards() {\n\t\tconst addContentDialog = this.getParent() as ContentAdditionDialog;\n\t\ttry {\n\t\t\taddContentDialog.setBusy(true);\n\n\t\t\tconst createdCardResponse = await this.cardHelperInstance._createCard(this._latestGeneratedManifest);\n\t\t\tMessageToast.show(this._i18nBundle.getText(\"Card_Created\") as string);\n\n\t\t\taddContentDialog.close();\n\t\t\tif (!createdCardResponse?.[\"sap.insights\"]?.visible) {\n\t\t\t\tMessageBox.information(this._i18nBundle.getText(\"INT_CARD_LIMIT_MESSAGEBOX\") as string, {\n\t\t\t\t\tstyleClass: \"msgBoxAlign\"\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst cardsPanel = this._fetchCardsPanel();\n\t\t\tawait cardsPanel?.refreshData();\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t} finally {\n\t\t\taddContentDialog.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Resets the internal content related to card addition.\n\t * Disables the \"Add\" button.\n\t *\n\t * @private\n\t */\n\tprivate resetAddCardInnerContent() {\n\t\tthis.cardHelperInstance.resetAddCardInnerContent();\n\t\tthis.enableAddButton(false);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InsightsAdditionPanel.js","names":["sap","ui","define","Log","CardHelper","Button","sap_m_library","MessageBox","MessageToast","VBox","__BaseSettingsPanel","__CardsPanel","__InsightsContainer","___utils_Constants","___utils_FeatureUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BackgroundDesign","_finallyRethrows","finalizer","bind","ButtonType","BaseSettingsPanel","CardsPanel","InsightsContainer","CONTENT_ADDITION_PANEL_TYPES","FEATURE_TOGGLES","FESR_IDS","isNavigationSupportedForFeature","addFESRSemanticStepName","FESR_EVENTS","InsightsAdditionPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","AI_INSIGHTS_CARDS","_i18nBundle","getText","addCardsButton","getId","text","type","Emphasized","enabled","press","onPressAddCards","PRESS","ADD_AI_CARD","addActionButton","_setupContent","attachEvent","resetAddCardInnerContent","enableAddButton","_enableAddButton","action","setEnabled","_this","_temp","Promise","resolve","_fetchAddCardDialogContent","dialogContent","wrapperVBox","items","backgroundDesign","Solid","height","addAggregation","error","message","reject","_this2","getServiceAsync","_getServiceAsync","cardHelperInstance","fetchAddCardInnerContent","event","_latestGeneratedManifest","getParameters","isValidManifest","Object","keys","length","getInsightsContainer","_getInsightsContainer","layout","getParent","getContent","find","container","isSupported","_isSupported","_this3","_temp3","isPanelSupported","removeActionButton","contentAdditionDialog","removePanel","updateActionButtons","insightsCardIntent","target","semanticObject","_temp2","undefined","AI_GENERATED_CARD","_isNavigationSupporte","_fetchCardsPanel","panel","_onPressAddCards","_this4","addContentDialog","_temp4","setBusy","_createCard","createdCardResponse","cardTitle","header","title","show","close","visible","information","styleClass","cardsPanel","refreshData","_wasThrown","_result","_resetAddCardInnerContent"],"sources":["InsightsAdditionPanel.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 CardHelper from \"sap/insights/CardHelper\";\nimport Button from \"sap/m/Button\";\nimport { BackgroundDesign, ButtonType } from \"sap/m/library\";\nimport MessageBox from \"sap/m/MessageBox\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport VBox from \"sap/m/VBox\";\nimport Control from \"sap/ui/core/Control\";\nimport { Target } from \"sap/ushell/services/Navigation\";\nimport BaseLayout from \"./BaseLayout\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport CardsPanel from \"./CardsPanel\";\nimport ContentAdditionDialog from \"./ContentAdditionDialog\";\nimport InsightsContainer from \"./InsightsContainer\";\nimport { ICardHelper, ICardHelperInstance, ICardManifest } from \"./interface/CardsInterface\";\nimport { CONTENT_ADDITION_PANEL_TYPES, FEATURE_TOGGLES, FESR_IDS } from \"./utils/Constants\";\nimport { isNavigationSupportedForFeature } from \"./utils/FeatureUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\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 * @private\n *\n * @alias sap.cux.home.InsightsAdditionPanel\n */\nexport default class InsightsAdditionPanel extends BaseSettingsPanel {\n\tprivate addCardsButton!: Button;\n\tprivate cardHelperInstance!: ICardHelperInstance;\n\tprivate isPanelSupported!: boolean;\n\tprivate _latestGeneratedManifest!: ICardManifest;\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init() {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", CONTENT_ADDITION_PANEL_TYPES.AI_INSIGHTS_CARDS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsCards\"));\n\n\t\t//setup actions\n\t\tthis.addCardsButton = new Button(`${this.getId()}-add-cards-btn`, {\n\t\t\ttext: this._i18nBundle.getText(\"addFromInsightsDialogBtn\"),\n\t\t\ttype: ButtonType.Emphasized,\n\t\t\tenabled: false,\n\t\t\tpress: this.onPressAddCards.bind(this)\n\t\t});\n\t\taddFESRSemanticStepName(this.addCardsButton, FESR_EVENTS.PRESS, FESR_IDS.ADD_AI_CARD);\n\t\tthis.addActionButton(this.addCardsButton);\n\t\t//setup content\n\t\tvoid this._setupContent();\n\t\tthis.attachEvent(\"onDialogClose\", this.resetAddCardInnerContent.bind(this));\n\t}\n\n\t/**\n\t * Enables or disables the \"Add Cards\" button.\n\t *\n\t * @param {boolean} action - If true, the button is enabled; if false, it is disabled.\n\t */\n\tprivate enableAddButton(action: boolean) {\n\t\tthis.addCardsButton.setEnabled(action);\n\t}\n\n\t/**\n\t * It sets up the content for the \"Insights card\" dialog.\n\t * It fetches the inner dialog content for adding a card.\n\t * Adds the VBox to the panel's content aggregation.\n\t *\n\t * This also enables the \"Add\" button once content is fetched.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when setup is complete.\n\t */\n\tprivate async _setupContent(): Promise<void> {\n\t\ttry {\n\t\t\tconst dialogContent = await this._fetchAddCardDialogContent();\n\t\t\tif (dialogContent) {\n\t\t\t\tconst wrapperVBox = new VBox(`${this.getId()}-wrapperVBox`, {\n\t\t\t\t\titems: dialogContent,\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Solid,\n\t\t\t\t\theight: \"100%\"\n\t\t\t\t});\n\t\t\t\tthis.addAggregation(\"content\", wrapperVBox);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t}\n\t}\n\n\t/**\n\t * Fetches the dialog content for adding a new card and sets up the callback\n\t * to handle the card generation event, storing the generated manifest and enabling the add button.\n\t *\n\t * @private\n\t * @returns {Promise<Control[]>} A promise that resolves with an array of dialog content controls.\n\t */\n\tprivate async _fetchAddCardDialogContent(): Promise<Control[]> {\n\t\tthis.cardHelperInstance = await (CardHelper as ICardHelper).getServiceAsync();\n\t\treturn this.cardHelperInstance.fetchAddCardInnerContent((event) => {\n\t\t\tthis._latestGeneratedManifest = event.getParameters();\n\t\t\tconst isValidManifest = Object.keys(this._latestGeneratedManifest).length > 1;\n\t\t\tthis.enableAddButton(isValidManifest);\n\t\t});\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 InsightsContainer instance or undefined if not found.\n\t */\n\tprivate getInsightsContainer(): InsightsContainer | undefined {\n\t\tconst layout = this.getParent()?.getParent() as BaseLayout;\n\t\treturn layout.getContent().find((container) => container instanceof InsightsContainer);\n\t}\n\n\t/**\n\t * Checks if the Insights Addition Panel is supported.\n\t *\n\t * @public\n\t * @async\n\t * @returns {Promise<boolean>} A promise that resolves to true if supported.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst insightsCardIntent: Target = {\n\t\t\ttarget: {\n\t\t\t\tsemanticObject: \"IntelligentPrompt\",\n\t\t\t\taction: \"personalize\"\n\t\t\t}\n\t\t};\n\t\tif (this.isPanelSupported === undefined) {\n\t\t\tthis.isPanelSupported = false;\n\t\t\tthis.isPanelSupported = await isNavigationSupportedForFeature(FEATURE_TOGGLES.AI_GENERATED_CARD, insightsCardIntent);\n\t\t}\n\t\t//remove panel if it's not supported\n\t\tif (!this.isPanelSupported) {\n\t\t\tthis.removeActionButton(this.addCardsButton);\n\t\t\tconst contentAdditionDialog = this.getParent() as ContentAdditionDialog;\n\t\t\tcontentAdditionDialog.removePanel(this);\n\t\t\tcontentAdditionDialog.updateActionButtons();\n\t\t}\n\t\treturn this.isPanelSupported;\n\t}\n\n\t/**\n\t * Retrieves the `CardsPanel` instance from the `InsightsContainer`.\n\t *\n\t * @private\n\t * @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.\n\t */\n\tprivate _fetchCardsPanel(): CardsPanel | undefined {\n\t\treturn this.getInsightsContainer()?.getContent().find((panel): panel is CardsPanel => panel instanceof CardsPanel);\n\t}\n\n\t/**\n\t * Handles the logic for creating and adding a new insight card to cards Panel.\n\t *\n\t * - Sets the dialog to busy while the card creation is in progress.\n\t * - It adds a new card using the latest generated manifest.\n\t * - On success, shows a message toast and closes the dialog.\n\t * - Refreshes the insights cards panel data.\n\t *\n\t * @private\n\t * @returns {Promise<void>} A promise that resolves when the card creation flow completes.\n\t */\n\tprivate async onPressAddCards() {\n\t\tconst addContentDialog = this.getParent() as ContentAdditionDialog;\n\t\ttry {\n\t\t\taddContentDialog.setBusy(true);\n\n\t\t\tconst createdCardResponse = await this.cardHelperInstance._createCard(this._latestGeneratedManifest);\n\t\t\tconst cardTitle = createdCardResponse[\"sap.card\"]?.header?.title;\n\t\t\tMessageToast.show(this._i18nBundle.getText(\"Card_Created\", [cardTitle]) as string);\n\t\t\taddContentDialog.close();\n\t\t\tif (!createdCardResponse?.[\"sap.insights\"]?.visible) {\n\t\t\t\tMessageBox.information(this._i18nBundle.getText(\"INT_CARD_LIMIT_MESSAGEBOX\") as string, {\n\t\t\t\t\tstyleClass: \"msgBoxAlign\"\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst cardsPanel = this._fetchCardsPanel();\n\t\t\tawait cardsPanel?.refreshData();\n\t\t} catch (error) {\n\t\t\tLog.error((error as Error).message);\n\t\t} finally {\n\t\t\taddContentDialog.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Resets the internal content related to card addition.\n\t * Disables the \"Add\" button.\n\t *\n\t * @private\n\t */\n\tprivate resetAddCardInnerContent() {\n\t\tthis.cardHelperInstance?.resetAddCardInnerContent();\n\t\tthis.enableAddButton(false);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,9 +31,6 @@ import { addFESRSemanticStepName, FESR_EVENTS } from "./utils/FESRUtil";
|
|
|
31
31
|
* @author SAP SE
|
|
32
32
|
* @version 0.0.1
|
|
33
33
|
* @since 1.136
|
|
34
|
-
*
|
|
35
|
-
* @internal
|
|
36
|
-
* @experimental Since 1.136
|
|
37
34
|
* @private
|
|
38
35
|
*
|
|
39
36
|
* @alias sap.cux.home.InsightsAdditionPanel
|
|
@@ -43,7 +40,6 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
|
|
|
43
40
|
private cardHelperInstance!: ICardHelperInstance;
|
|
44
41
|
private isPanelSupported!: boolean;
|
|
45
42
|
private _latestGeneratedManifest!: ICardManifest;
|
|
46
|
-
private dialogCloseHandler!: () => void;
|
|
47
43
|
/**
|
|
48
44
|
* Init lifecycle method
|
|
49
45
|
*
|
|
@@ -68,8 +64,7 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
|
|
|
68
64
|
this.addActionButton(this.addCardsButton);
|
|
69
65
|
//setup content
|
|
70
66
|
void this._setupContent();
|
|
71
|
-
this.
|
|
72
|
-
this.attachEvent("onDialogClose", this.dialogCloseHandler);
|
|
67
|
+
this.attachEvent("onDialogClose", this.resetAddCardInnerContent.bind(this));
|
|
73
68
|
}
|
|
74
69
|
|
|
75
70
|
/**
|
|
@@ -103,8 +98,6 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
|
|
|
103
98
|
this.addAggregation("content", wrapperVBox);
|
|
104
99
|
}
|
|
105
100
|
} catch (error) {
|
|
106
|
-
(this.getParent() as ContentAdditionDialog)?.removePanel(this);
|
|
107
|
-
this.detachEvent("onDialogClose", this.dialogCloseHandler);
|
|
108
101
|
Log.error((error as Error).message);
|
|
109
102
|
}
|
|
110
103
|
}
|
|
@@ -171,11 +164,7 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
|
|
|
171
164
|
* @returns {CardsPanel | undefined} The found `CardsPanel` instance, or `undefined` if not found.
|
|
172
165
|
*/
|
|
173
166
|
private _fetchCardsPanel(): CardsPanel | undefined {
|
|
174
|
-
|
|
175
|
-
if (!insightsContainer) {
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
return insightsContainer.getContent().find((panel): panel is CardsPanel => panel instanceof CardsPanel);
|
|
167
|
+
return this.getInsightsContainer()?.getContent().find((panel): panel is CardsPanel => panel instanceof CardsPanel);
|
|
179
168
|
}
|
|
180
169
|
|
|
181
170
|
/**
|
|
@@ -195,8 +184,8 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
|
|
|
195
184
|
addContentDialog.setBusy(true);
|
|
196
185
|
|
|
197
186
|
const createdCardResponse = await this.cardHelperInstance._createCard(this._latestGeneratedManifest);
|
|
198
|
-
|
|
199
|
-
|
|
187
|
+
const cardTitle = createdCardResponse["sap.card"]?.header?.title;
|
|
188
|
+
MessageToast.show(this._i18nBundle.getText("Card_Created", [cardTitle]) as string);
|
|
200
189
|
addContentDialog.close();
|
|
201
190
|
if (!createdCardResponse?.["sap.insights"]?.visible) {
|
|
202
191
|
MessageBox.information(this._i18nBundle.getText("INT_CARD_LIMIT_MESSAGEBOX") as string, {
|
|
@@ -220,7 +209,7 @@ export default class InsightsAdditionPanel extends BaseSettingsPanel {
|
|
|
220
209
|
* @private
|
|
221
210
|
*/
|
|
222
211
|
private resetAddCardInnerContent() {
|
|
223
|
-
this.cardHelperInstance
|
|
212
|
+
this.cardHelperInstance?.resetAddCardInnerContent();
|
|
224
213
|
this.enableAddButton(false);
|
|
225
214
|
}
|
|
226
215
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsCardsSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/InsightsCardsSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,yCAAyC,CAAC;IASzD,OAAO,iBAA4D,MAAM,gCAAgC,CAAC;IAI1G,UAAU,QAAQ;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB;IAED
|
|
1
|
+
{"version":3,"file":"InsightsCardsSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/InsightsCardsSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,yCAAyC,CAAC;IASzD,OAAO,iBAA4D,MAAM,gCAAgC,CAAC;IAI1G,UAAU,QAAQ;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,0BAA2B,SAAQ,iBAAiB;QACxE,OAAO,CAAC,aAAa,CAAkB;QACvC,OAAO,CAAC,mBAAmB,CAAe;QAC1C;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAyBnB;;;;;WAKG;QACH,OAAO,CAAC,WAAW;KAMnB;CAEA"}
|
|
@@ -19,9 +19,6 @@ sap.ui.define(["sap/insights/ManageCards", "./BaseSettingsPanel", "./utils/Const
|
|
|
19
19
|
* @author SAP SE
|
|
20
20
|
* @version 0.0.1
|
|
21
21
|
* @since 1.121
|
|
22
|
-
*
|
|
23
|
-
* @internal
|
|
24
|
-
* @experimental Since 1.121
|
|
25
22
|
* @private
|
|
26
23
|
*
|
|
27
24
|
* @alias sap.cux.home.InsightsCardsSettingsPanel
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsCardsSettingsPanel.js","names":["sap","ui","define","ManageCards","__BaseSettingsPanel","___utils_Constants","_interopRequireDefault","obj","__esModule","default","BaseSettingsPanel","SETTINGS_PANELS_KEYS","InsightsCardsSettingsPanel","extend","constructor","prototype","apply","arguments","eventAttached","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","INSIGHTS_CARDS","_i18nBundle","getText","addAggregation","_getContent","attachPanelNavigated","event","cardId","getParameter","manageCardsInstance","getParent","attachAfterClose","_getPanel","renderPanel"],"sources":["InsightsCardsSettingsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport ManageCards from \"sap/insights/ManageCards\";\nimport Dialog from \"sap/m/Dialog\";\nimport Control from \"sap/ui/core/Control\";\nimport BaseSettingsPanel, { BaseSettingsPanel$PanelNavigatedEvent } from \"./BaseSettingsPanel\";\nimport CardsPanel from \"./CardsPanel\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\n\ninterface IContext {\n\tcardId?: string;\n}\n\n/**\n *\n * Class for My Home Insights Cards Settings Panel.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n
|
|
1
|
+
{"version":3,"file":"InsightsCardsSettingsPanel.js","names":["sap","ui","define","ManageCards","__BaseSettingsPanel","___utils_Constants","_interopRequireDefault","obj","__esModule","default","BaseSettingsPanel","SETTINGS_PANELS_KEYS","InsightsCardsSettingsPanel","extend","constructor","prototype","apply","arguments","eventAttached","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","INSIGHTS_CARDS","_i18nBundle","getText","addAggregation","_getContent","attachPanelNavigated","event","cardId","getParameter","manageCardsInstance","getParent","attachAfterClose","_getPanel","renderPanel"],"sources":["InsightsCardsSettingsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport ManageCards from \"sap/insights/ManageCards\";\nimport Dialog from \"sap/m/Dialog\";\nimport Control from \"sap/ui/core/Control\";\nimport BaseSettingsPanel, { BaseSettingsPanel$PanelNavigatedEvent } from \"./BaseSettingsPanel\";\nimport CardsPanel from \"./CardsPanel\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\n\ninterface IContext {\n\tcardId?: string;\n}\n\n/**\n *\n * Class for My Home Insights Cards Settings Panel.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.InsightsCardsSettingsPanel\n */\nexport default class InsightsCardsSettingsPanel extends BaseSettingsPanel {\n\tprivate eventAttached: boolean = false;\n\tprivate manageCardsInstance!: ManageCards;\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.INSIGHTS_CARDS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"insightsCards\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://card\");\n\t\tthis.setProperty(\"showHeader\", false);\n\n\t\t//setup layout content\n\t\tthis.addAggregation(\"content\", this._getContent());\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated((event: BaseSettingsPanel$PanelNavigatedEvent) => {\n\t\t\tconst cardId = (event.getParameter(\"context\") as IContext)?.cardId;\n\t\t\tthis.manageCardsInstance?.setProperty(\"cardId\", cardId || \"\");\n\t\t\tif (!this.eventAttached) {\n\t\t\t\tthis.eventAttached = true;\n\t\t\t\t(this.getParent() as Dialog)?.attachAfterClose(() => {\n\t\t\t\t\tvoid (this._getPanel() as CardsPanel)?.renderPanel();\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Returns the content for the Insights Cards Settings Panel.\n\t *\n\t * @private\n\t * @returns {Control} The control containing the Insights Cards Settings Panel content.\n\t */\n\tprivate _getContent(): Control {\n\t\tif (!this.manageCardsInstance) {\n\t\t\tthis.manageCardsInstance = new ManageCards();\n\t\t}\n\t\treturn this.manageCardsInstance;\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,qFAAAC,WAAA,EAAAC,mBAAA,EAAAC,kBAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAAA,MAQOG,iBAAiB,GAAAJ,sBAAA,CAAAF,mBAAA;EAAA,MAEfO,oBAAoB,GAAAN,kBAAA;EAM7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAZA,MAaqBO,0BAA0B,GAASF,iBAAiB,CAAAG,MAAA;IAAAC,WAAA,WAAAA,YAAA;MAAAJ,iBAAA,CAAAK,SAAA,CAAAD,WAAA,CAAAE,KAAA,OAAAC,SAAA;MAAA,KAChEC,aAAa,GAAY,KAAK;IAAA;IAEtC;AACD;AACA;AACA;AACA;AACA;IACQC,IAAI,WAAAC,MAAA,EAAS;MACnBC,qCAAA;;MAEA;MACA,IAAI,CAACC,WAAW,CAAC,KAAK,EAAEX,oBAAoB,CAACY,cAAc,CAAC;MAC5D,IAAI,CAACD,WAAW,CAAC,OAAO,EAAE,IAAI,CAACE,WAAW,CAACC,OAAO,CAAC,eAAe,CAAC,CAAC;MACpE,IAAI,CAACH,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC;MAC3C,IAAI,CAACA,WAAW,CAAC,YAAY,EAAE,KAAK,CAAC;;MAErC;MACA,IAAI,CAACI,cAAc,CAAC,SAAS,EAAE,IAAI,CAACC,WAAW,CAAC,CAAC,CAAC;;MAElD;MACA,IAAI,CAACC,oBAAoB,CAAEC,KAA4C,IAAK;QAC3E,MAAMC,MAAM,GAAID,KAAK,CAACE,YAAY,CAAC,SAAS,CAAC,EAAeD,MAAM;QAClE,IAAI,CAACE,mBAAmB,EAAEV,WAAW,CAAC,QAAQ,EAAEQ,MAAM,IAAI,EAAE,CAAC;QAC7D,IAAI,CAAC,IAAI,CAACZ,aAAa,EAAE;UACxB,IAAI,CAACA,aAAa,GAAG,IAAI;UACxB,IAAI,CAACe,SAAS,CAAC,CAAC,EAAaC,gBAAgB,CAAC,MAAM;YACpD,KAAM,IAAI,CAACC,SAAS,CAAC,CAAC,EAAiBC,WAAW,CAAC,CAAC;UACrD,CAAC,CAAC;QACH;MACD,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACST,WAAW,WAAAA,YAAA,EAAY;MAC9B,IAAI,CAAC,IAAI,CAACK,mBAAmB,EAAE;QAC9B,IAAI,CAACA,mBAAmB,GAAG,IAAI7B,WAAW,CAAC,CAAC;MAC7C;MACA,OAAO,IAAI,CAAC6B,mBAAmB;IAChC;EAAC;EAAA,OA7CmBpB,0BAA0B;AAAA","ignoreList":[]}
|
|
@@ -12,6 +12,7 @@ declare module "sap/cux/home/InsightsContainer" {
|
|
|
12
12
|
import TilesPanel, { tilesContainerMenuItems } from "sap/cux/home/TilesPanel";
|
|
13
13
|
const tilesPanelName: string;
|
|
14
14
|
const cardsPanelName: string;
|
|
15
|
+
const spaceInsightsPanelName: string;
|
|
15
16
|
const sortedMenuItems: (tilesContainerMenuItems | cardsContainerMenuItems | string)[];
|
|
16
17
|
interface IpanelLoaded {
|
|
17
18
|
[key: string]: {
|
|
@@ -33,7 +34,6 @@ declare module "sap/cux/home/InsightsContainer" {
|
|
|
33
34
|
* @since 1.121
|
|
34
35
|
*
|
|
35
36
|
* @internal
|
|
36
|
-
* @experimental Since 1.121
|
|
37
37
|
* @public
|
|
38
38
|
*
|
|
39
39
|
* @alias sap.cux.home.InsightsContainer
|
|
@@ -43,7 +43,6 @@ declare module "sap/cux/home/InsightsContainer" {
|
|
|
43
43
|
apiVersion: number;
|
|
44
44
|
render: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
|
|
45
45
|
renderContent: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
|
|
46
|
-
renderCustomPlaceholder: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
|
|
47
46
|
};
|
|
48
47
|
private _errorPanel;
|
|
49
48
|
private _isInitialRender;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/InsightsContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAChD;;;OAGG;IAEH,OAAO,MAAM,MAAM,cAAc,CAAC;IAClC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IACvD,OAAO,SAAS,MAAM,wBAAwB,CAAC;IAC/C,OAAO,UAAU,EAAE,EAA+B,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;IAG3G,OAAO,QAAQ,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"InsightsContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/InsightsContainer.ts"],"names":[],"mappings":"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"}
|
|
@@ -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(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./
|
|
5
|
+
sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./utils/placeholder/InsightsPlaceholder", "./SpaceInsightsPanel", "./TilesPanel", "./utils/Device", "./utils/InsightsUtils"], function (__BaseContainer, __CardsPanel, __ErrorPanel, ___utils_placeholder_InsightsPlaceholder, __SpaceInsightsPanel, __TilesPanel, ___utils_Device, ___utils_InsightsUtils) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
function _interopRequireDefault(obj) {
|
|
@@ -13,7 +13,8 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
13
13
|
const cardsContainerActionButtons = __CardsPanel["cardsContainerActionButtons"];
|
|
14
14
|
const cardsContainerMenuItems = __CardsPanel["cardsContainerMenuItems"];
|
|
15
15
|
const ErrorPanel = _interopRequireDefault(__ErrorPanel);
|
|
16
|
-
const getInsightsPlaceholder =
|
|
16
|
+
const getInsightsPlaceholder = ___utils_placeholder_InsightsPlaceholder["getInsightsPlaceholder"];
|
|
17
|
+
const SpaceInsightsPanel = _interopRequireDefault(__SpaceInsightsPanel);
|
|
17
18
|
const TilesPanel = _interopRequireDefault(__TilesPanel);
|
|
18
19
|
const tilesContainerActionButtons = __TilesPanel["tilesContainerActionButtons"];
|
|
19
20
|
const tilesContainerMenuItems = __TilesPanel["tilesContainerMenuItems"];
|
|
@@ -21,6 +22,7 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
21
22
|
const sortMenuItems = ___utils_InsightsUtils["sortMenuItems"];
|
|
22
23
|
const tilesPanelName = "sap.cux.home.TilesPanel";
|
|
23
24
|
const cardsPanelName = "sap.cux.home.CardsPanel";
|
|
25
|
+
const spaceInsightsPanelName = "sap.cux.home.SpaceInsightsPanel";
|
|
24
26
|
const sortedMenuItems = [tilesContainerMenuItems.REFRESH, cardsContainerMenuItems.REFRESH, tilesContainerMenuItems.ADD_APPS, tilesContainerMenuItems.EDIT_TILES, cardsContainerMenuItems.EDIT_CARDS, cardsContainerMenuItems.AI_INSIGHT_CARD, tilesContainerMenuItems.SHOW_MORE, cardsContainerMenuItems.SHOW_MORE, "settings"];
|
|
25
27
|
/**
|
|
26
28
|
*
|
|
@@ -33,7 +35,6 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
33
35
|
* @since 1.121
|
|
34
36
|
*
|
|
35
37
|
* @internal
|
|
36
|
-
* @experimental Since 1.121
|
|
37
38
|
* @public
|
|
38
39
|
*
|
|
39
40
|
* @alias sap.cux.home.InsightsContainer
|
|
@@ -76,6 +77,10 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
76
77
|
[cardsPanelName]: {
|
|
77
78
|
loaded: undefined,
|
|
78
79
|
count: 0
|
|
80
|
+
},
|
|
81
|
+
[spaceInsightsPanelName]: {
|
|
82
|
+
loaded: undefined,
|
|
83
|
+
count: 0
|
|
79
84
|
}
|
|
80
85
|
};
|
|
81
86
|
this.panelContext = {};
|
|
@@ -130,7 +135,7 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
130
135
|
const panelCount = panels?.length;
|
|
131
136
|
this._addContainerHeader();
|
|
132
137
|
// only show error panel if all panels loaded state is false
|
|
133
|
-
if (visibleOrPendingPanels.length === 0) {
|
|
138
|
+
if (visibleOrPendingPanels.length === 0 || visibleOrPendingPanels.length === 1 && visibleOrPendingPanels[0] === spaceInsightsPanelName) {
|
|
134
139
|
if (!this._errorPanel) {
|
|
135
140
|
this._errorPanel = new ErrorPanel(`${this.getId()}-errorPanel`, {
|
|
136
141
|
messageTitle: this._i18nBundle.getText("noAppsTitle"),
|
|
@@ -172,6 +177,11 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
172
177
|
hiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE];
|
|
173
178
|
hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];
|
|
174
179
|
}
|
|
180
|
+
if (this.panelContext[panels[0]] instanceof SpaceInsightsPanel) {
|
|
181
|
+
this.setProperty("title", `${this.panelContext[panels[0]].getTitle()} (${this.panelLoaded[panelName].count || 0})`);
|
|
182
|
+
hiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE, "settings"];
|
|
183
|
+
hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];
|
|
184
|
+
}
|
|
175
185
|
this._hideMenuItems(hiddenMenuItems);
|
|
176
186
|
this._hideActionButtons(hiddenActionButtons);
|
|
177
187
|
}
|
|
@@ -227,7 +237,8 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
227
237
|
const panels = this._getLoadedPanelNames();
|
|
228
238
|
// Container Title Will be displayed only in case of only one panel is present
|
|
229
239
|
if (panels.length === 1) {
|
|
230
|
-
|
|
240
|
+
const isSpaceInsightsPanel = this.panelContext[panels[0]] instanceof SpaceInsightsPanel;
|
|
241
|
+
this.setProperty("title", `${isSpaceInsightsPanel ? this.panelContext[panels[0]].getTitle() : this._i18nBundle?.getText("insights")} (${itemCount || 0})`);
|
|
231
242
|
}
|
|
232
243
|
},
|
|
233
244
|
/**
|
|
@@ -287,6 +298,11 @@ sap.ui.define(["./BaseContainer", "./CardsPanel", "./ErrorPanel", "./InsightsCon
|
|
|
287
298
|
if (panel instanceof CardsPanel && !this.panelLoaded[cardsPanelName].loaded) {
|
|
288
299
|
processPanelVisibility(cardsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));
|
|
289
300
|
}
|
|
301
|
+
|
|
302
|
+
// Handling SpaceInsightsPanel
|
|
303
|
+
if (panel instanceof SpaceInsightsPanel && !this.panelLoaded[spaceInsightsPanelName].loaded) {
|
|
304
|
+
processPanelVisibility(spaceInsightsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));
|
|
305
|
+
}
|
|
290
306
|
},
|
|
291
307
|
/**
|
|
292
308
|
* Updates the container header based on the number of visible panels.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InsightsContainer.js","names":["sap","ui","define","__BaseContainer","__CardsPanel","__ErrorPanel","___InsightsContainerGenericPlaceholder","__TilesPanel","___utils_Device","___utils_InsightsUtils","_interopRequireDefault","obj","__esModule","default","BaseContainer","CardsPanel","cardsContainerActionButtons","cardsContainerMenuItems","ErrorPanel","getInsightsPlaceholder","TilesPanel","tilesContainerActionButtons","tilesContainerMenuItems","DeviceType","sortMenuItems","tilesPanelName","cardsPanelName","sortedMenuItems","REFRESH","ADD_APPS","EDIT_TILES","EDIT_CARDS","AI_INSIGHT_CARD","SHOW_MORE","InsightsContainer","extend","renderer","apiVersion","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","_isInitialRender","init","_init","BaseContainer.prototype.init.call","setProperty","_i18nBundle","getText","panelLoaded","loaded","undefined","count","panelContext","setTooltip","String","addCustomSetting","load","_load","aContent","getContent","forEach","oContent","getMetadata","getName","addCommonMenuItems","getContainerMenuItems","addCommonActionButtons","getContainerActionButtons","_addContainerHeader","content","panel","handleHideHeader","attachHandleHidePanel","handleHidePanel","attachHandleUnhidePanel","unhidePanelIfHidden","renderPanel","_handleHidePanel","removeContent","panelName","handlePanelLoad","panels","_getLoadedPanelNames","visibleOrPendingPanels","getVisibleOrPendingPanels","panelCount","length","_errorPanel","getId","messageTitle","messageDescription","getData","addAggregation","hiddenMenuItems","hiddenActionButtons","_hideMenuItems","_hideActionButtons","_removeContainerHeader","getAggregation","menuItem","toggleMenuListItem","actionButton","toggleActionButton","handleAddHeader","containerMenuItems","includedInHiddenItems","some","hiddenItem","includes","containerActionButtons","updatePanelsItemCount","_updatePanelsItemCount","itemCount","_unhidePanelIfHidden","layout","_getLayout","panelExpandedName","_getCurrentExpandedElementName","processPanelVisibility","insertContentFn","panelWrapper","_getPanelContentWrapper","getProperty","hasStyleClass","removeStyleClass","listener","detachOnCollapse","attachOnCollapse","insertContent","addContent","_updateHeaderElements","adjustLayout","_adjustLayout","getDeviceType","Mobile","toggleActionButtons","ADD_TILES","_addCommonMenuItems","menuItems","_sortMenuItems","_addCommonActionButtons","actionButtons","_handlePanelLoad","oVal","updateActionButton","_updateActionButton","visibility","text","getVisible","setText","_updateContainerHeader","updateMenuItem","_updateMenuItem","getTitle","setTitle","Object","keys","filter","_getVisibleOrPendingPanels","removeAllAggregation","getGenericPlaceholderContent","_getGenericPlaceholderContent","refreshData","_refreshData","key","_this","values","find","getKey","Promise","resolve","then","e","reject"],"sources":["InsightsContainer.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport type { $BaseContainerSettings } from \"./BaseContainer\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport CardsPanel, { cardsContainerActionButtons, cardsContainerMenuItems } from \"./CardsPanel\";\nimport ErrorPanel from \"./ErrorPanel\";\nimport { getInsightsPlaceholder } from \"./InsightsContainerGenericPlaceholder\";\nimport MenuItem from \"./MenuItem\";\nimport TilesPanel, { tilesContainerActionButtons, tilesContainerMenuItems } from \"./TilesPanel\";\nimport { DeviceType } from \"./utils/Device\";\nimport { sortMenuItems } from \"./utils/InsightsUtils\";\n\nconst tilesPanelName: string = \"sap.cux.home.TilesPanel\";\nconst cardsPanelName: string = \"sap.cux.home.CardsPanel\";\nconst sortedMenuItems: (tilesContainerMenuItems | cardsContainerMenuItems | string)[] = [\n\ttilesContainerMenuItems.REFRESH,\n\tcardsContainerMenuItems.REFRESH,\n\ttilesContainerMenuItems.ADD_APPS,\n\ttilesContainerMenuItems.EDIT_TILES,\n\tcardsContainerMenuItems.EDIT_CARDS,\n\tcardsContainerMenuItems.AI_INSIGHT_CARD,\n\ttilesContainerMenuItems.SHOW_MORE,\n\tcardsContainerMenuItems.SHOW_MORE,\n\t\"settings\"\n];\n\ninterface IpanelLoaded {\n\t[key: string]: { loaded: boolean | undefined; count: number };\n}\n\ninterface IpanelContext {\n\t[key: string]: TilesPanel | CardsPanel;\n}\n\n/**\n *\n * Container class for managing and storing Insights Tiles and Insights Cards.\n *\n * @extends sap.cux.home.BaseContainer\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @internal\n * @experimental Since 1.121\n * @public\n *\n * @alias sap.cux.home.InsightsContainer\n */\n\nexport default class InsightsContainer extends BaseContainer {\n\tstatic readonly renderer = {\n\t\t...BaseContainer.renderer,\n\t\tapiVersion: 2\n\t};\n\tprivate _errorPanel!: ErrorPanel;\n\tprivate _isInitialRender: boolean = true;\n\tprivate panelLoaded!: IpanelLoaded;\n\tprivate panelContext!: IpanelContext;\n\n\tconstructor(id?: string | $BaseContainerSettings);\n\tconstructor(id?: string, settings?: $BaseContainerSettings);\n\t/**\n\t * Constructor for a new Insights container.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $BaseContainerSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"insights\"));\n\t\t/* As Container Level default value for enableSettings is false,\n\t\t\tthis needs to be added from container level.\n\t\t\t(default value cannot be true as News & Page Container header should be hidden)\n\t\t*/\n\t\tthis.setProperty(\"enableSettings\", true);\n\t\tthis.setProperty(\"orientation\", \"Vertical\");\n\t\tthis.panelLoaded = {\n\t\t\t[tilesPanelName]: { loaded: undefined, count: 0 },\n\t\t\t[cardsPanelName]: { loaded: undefined, count: 0 }\n\t\t};\n\t\tthis.panelContext = {};\n\t\tthis.setTooltip(String(this._i18nBundle.getText(\"insights\")));\n\t\tthis.addCustomSetting(\"title\", this._i18nBundle.getText(\"insightLayoutSectionTitle\") as string);\n\t\tthis.setTooltip(String(this._i18nBundle.getText(\"insightLayoutSectionTitle\")));\n\t}\n\n\t/**\n\t * Loads the Insights section.\n\t * Overrides the load method of the BaseContainer.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic load() {\n\t\tif (this._isInitialRender) {\n\t\t\tconst aContent = this.getContent();\n\t\t\taContent.forEach((oContent) => {\n\t\t\t\tthis.panelContext[oContent.getMetadata().getName()] = oContent as TilesPanel | CardsPanel;\n\t\t\t\tthis.addCommonMenuItems((oContent as TilesPanel | CardsPanel).getContainerMenuItems?.());\n\t\t\t\tthis.addCommonActionButtons((oContent as TilesPanel | CardsPanel).getContainerActionButtons?.());\n\t\t\t});\n\n\t\t\tthis._addContainerHeader();\n\n\t\t\t// Render individual panels\n\t\t\taContent.forEach((content) => {\n\t\t\t\tconst panel = content as TilesPanel | CardsPanel;\n\t\t\t\tpanel.handleHideHeader();\n\t\t\t\tpanel.attachHandleHidePanel(() => this.handleHidePanel(panel));\n\t\t\t\tpanel.attachHandleUnhidePanel(() => this.unhidePanelIfHidden(panel));\n\t\t\t\tvoid panel.renderPanel();\n\t\t\t});\n\t\t\tthis._isInitialRender = false;\n\t\t}\n\t}\n\n\t/**\n\t * Handles the hiding of a panel by removing its content, updating the panel load status,\n\t * and managing the display of the container header and error panel.\n\t *\n\t * @param {BasePanel} panel - The panel to be hidden.\n\t * @private\n\t */\n\tpublic handleHidePanel(panel: BasePanel) {\n\t\tthis.removeContent(panel);\n\t\tconst panelName = panel.getMetadata().getName();\n\t\tthis.handlePanelLoad(panelName, { loaded: false, count: 0 });\n\t\tconst panels = this._getLoadedPanelNames() || [];\n\t\tconst visibleOrPendingPanels = this.getVisibleOrPendingPanels() || [];\n\t\tconst panelCount = panels?.length;\n\t\tthis._addContainerHeader();\n\t\t// only show error panel if all panels loaded state is false\n\t\tif (visibleOrPendingPanels.length === 0) {\n\t\t\tif (!this._errorPanel) {\n\t\t\t\tthis._errorPanel = new ErrorPanel(`${this.getId()}-errorPanel`, {\n\t\t\t\t\tmessageTitle: this._i18nBundle.getText(\"noAppsTitle\"),\n\t\t\t\t\tmessageDescription: this._i18nBundle.getText(\"noInsightsMsg\")\n\t\t\t\t});\n\t\t\t\tthis._errorPanel.getData();\n\t\t\t}\n\t\t\tthis.addAggregation(\"content\", this._errorPanel);\n\t\t} else if (panelCount === 1) {\n\t\t\tconst panel = this.getContent()[0];\n\t\t\tif (panel && !(panel instanceof ErrorPanel)) {\n\t\t\t\t(panel as TilesPanel | CardsPanel)?.handleHideHeader();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds the container header based on the number of visible panels.\n\t *\n\t * @private\n\t */\n\tprivate _addContainerHeader() {\n\t\tconst panels: string[] = this._getLoadedPanelNames();\n\t\tlet hiddenMenuItems: string[] = [];\n\t\tlet hiddenActionButtons: string[] = [];\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"insights\"));\n\t\tif (panels.length === 0 || this.getContent()[0] instanceof ErrorPanel) {\n\t\t\thiddenMenuItems = [\n\t\t\t\ttilesContainerMenuItems.REFRESH,\n\t\t\t\tcardsContainerMenuItems.REFRESH,\n\t\t\t\ttilesContainerMenuItems.SHOW_MORE,\n\t\t\t\tcardsContainerMenuItems.SHOW_MORE\n\t\t\t];\n\t\t\tthis._hideMenuItems(hiddenMenuItems);\n\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE, cardsContainerActionButtons.SHOW_MORE];\n\t\t\tthis._hideActionButtons(hiddenActionButtons);\n\t\t} else if (panels.length === 1) {\n\t\t\tconst panelName = panels[0];\n\t\t\tthis.setProperty(\"title\", `${this._i18nBundle?.getText(\"insights\")} (${this.panelLoaded[panelName].count || 0})`);\n\t\t\tif (this.panelContext[panels[0]] instanceof TilesPanel) {\n\t\t\t\thiddenMenuItems = [cardsContainerMenuItems.REFRESH, cardsContainerMenuItems.SHOW_MORE];\n\t\t\t\thiddenActionButtons = [cardsContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tif (this.panelContext[panels[0]] instanceof CardsPanel) {\n\t\t\t\thiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE];\n\t\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tthis._hideMenuItems(hiddenMenuItems);\n\t\t\tthis._hideActionButtons(hiddenActionButtons);\n\t\t}\n\t}\n\n\t/**\n\t * Removes the container header.\n\t *\n\t * @private\n\t */\n\tprivate _removeContainerHeader() {\n\t\tthis.setProperty(\"title\", \"\");\n\t\t(this.getAggregation(\"menuItems\") as MenuItem[])?.forEach((menuItem) => this.toggleMenuListItem(menuItem, false));\n\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => this.toggleActionButton(actionButton, false));\n\t\tconst panels = this._getLoadedPanelNames();\n\t\tpanels.forEach((panelName) => {\n\t\t\tthis.panelContext[panelName]?.handleAddHeader?.();\n\t\t});\n\t}\n\n\t/**\n\t * Hides the specified menu items.\n\t *\n\t * @private\n\t * @param {string[]} hiddenMenuItems - The IDs of the menu items to hide.\n\t */\n\tprivate _hideMenuItems(hiddenMenuItems: string[]) {\n\t\tconst containerMenuItems = this.getAggregation(\"menuItems\") as MenuItem[];\n\t\tcontainerMenuItems?.forEach((menuItem) => {\n\t\t\tconst includedInHiddenItems = hiddenMenuItems.some((hiddenItem) => menuItem.getId().includes(hiddenItem));\n\t\t\tthis.toggleMenuListItem(menuItem, !includedInHiddenItems);\n\t\t});\n\t}\n\n\t/**\n\t * Hides the specified action buttons.\n\t *\n\t * @private\n\t * @param {string[]} hiddenActionButtons - The IDs of the action buttons to hide.\n\t */\n\tprivate _hideActionButtons(hiddenActionButtons: string[]) {\n\t\tconst containerActionButtons = this.getAggregation(\"actionButtons\") as Button[];\n\t\tcontainerActionButtons?.forEach((actionButton) => {\n\t\t\tconst includedInHiddenItems = hiddenActionButtons.some((hiddenItem) => actionButton.getId().includes(hiddenItem));\n\t\t\tthis.toggleActionButton(actionButton, !includedInHiddenItems);\n\t\t});\n\t}\n\n\t/**\n\t * Updates the item count for the specified panel.\n\t *\n\t * @param {number} itemCount - The new item count.\n\t * @param {string} panelName - The name of the panel.\n\t */\n\tpublic updatePanelsItemCount(itemCount: number, panelName: string) {\n\t\tthis.panelLoaded[panelName].count = itemCount;\n\t\tconst panels = this._getLoadedPanelNames();\n\t\t// Container Title Will be displayed only in case of only one panel is present\n\t\tif (panels.length === 1) {\n\t\t\tthis.setProperty(\"title\", `${this._i18nBundle?.getText(\"insights\")} (${itemCount || 0})`);\n\t\t}\n\t}\n\n\t/**\n\t * Unhides the specified panel if it is hidden.\n\t *\n\t * @param {TilesPanel | CardsPanel} panel - The panel to unhide.\n\t */\n\tpublic unhidePanelIfHidden(panel: TilesPanel | CardsPanel) {\n\t\tconst layout = this._getLayout();\n\t\tconst panelExpandedName = layout._getCurrentExpandedElementName();\n\n\t\tif (this._errorPanel) {\n\t\t\tthis.removeContent(this._errorPanel);\n\t\t}\n\n\t\t// Function to handle panel content insertion\n\t\tconst processPanelVisibility = (panelName: string, insertContentFn: () => void) => {\n\t\t\tconst panelWrapper = this._getPanelContentWrapper(panel);\n\t\t\tif (!panelExpandedName || panelExpandedName === panel.getProperty(\"fullScreenName\")) {\n\t\t\t\t/**\n loaded value can be false or undefined, false being hidden and undefined being loading\n if the panel is hidden then only unhide it\n */\n\t\t\t\tif (this.panelLoaded[panelName].loaded === false) {\n\t\t\t\t\tinsertContentFn();\n\t\t\t\t\t// Remove hidden class if applied\n\t\t\t\t\tif (panelWrapper.hasStyleClass(\"sapCuxHidden\")) {\n\t\t\t\t\t\tpanelWrapper.removeStyleClass(\"sapCuxHidden\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.handlePanelLoad(panelName, { loaded: true, count: this.panelLoaded[panelName].count });\n\t\t\t} else {\n\t\t\t\tconst listener = () => {\n\t\t\t\t\tinsertContentFn();\n\t\t\t\t\t// Remove hidden class if applied\n\t\t\t\t\tif (panelWrapper.hasStyleClass(\"sapCuxHidden\")) {\n\t\t\t\t\t\tpanelWrapper.removeStyleClass(\"sapCuxHidden\");\n\t\t\t\t\t}\n\t\t\t\t\tlayout.detachOnCollapse(listener); // Remove the listener after execution\n\t\t\t\t};\n\t\t\t\tthis.handlePanelLoad(panelName, { loaded: true, count: this.panelLoaded[panelName].count });\n\t\t\t\tlayout.attachOnCollapse(listener);\n\t\t\t}\n\t\t};\n\n\t\t// Handling TilesPanel\n\t\tif (panel instanceof TilesPanel && !this.panelLoaded[tilesPanelName].loaded) {\n\t\t\tprocessPanelVisibility(tilesPanelName, () => this.insertContent(this.panelContext[tilesPanelName], 0));\n\t\t}\n\n\t\t// Handling CardsPanel\n\t\tif (panel instanceof CardsPanel && !this.panelLoaded[cardsPanelName].loaded) {\n\t\t\tprocessPanelVisibility(cardsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));\n\t\t}\n\t}\n\n\t/**\n\t * Updates the container header based on the number of visible panels.\n\t *\n\t * @private\n\t * @param {TilesPanel | CardsPanel} panel - The panel being managed.\n\t */\n\n\tprivate _updateHeaderElements(panel: TilesPanel | CardsPanel) {\n\t\tconst panels = this._getLoadedPanelNames();\n\t\tif (panels.length > 1) {\n\t\t\tthis._removeContainerHeader();\n\t\t} else {\n\t\t\tthis._addContainerHeader();\n\t\t\tpanel.handleHideHeader();\n\t\t}\n\t}\n\n\t/**\n\t * Adjusts the layout of the container.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic adjustLayout() {\n\t\t//hide actions if the device is a phone\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\tthis.toggleActionButtons(false);\n\t\t} else {\n\t\t\tconst panels = this._getLoadedPanelNames();\n\t\t\t// Unhide the Add Tiles button if the device is not a phone and header is visible\n\t\t\tif (panels.length < 2) {\n\t\t\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => {\n\t\t\t\t\tif (actionButton.getId().includes(tilesContainerActionButtons.ADD_TILES)) {\n\t\t\t\t\t\tthis.toggleActionButton(actionButton, true);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\t//adjust layout of all panels\n\t\t(this.getContent() as (TilesPanel | CardsPanel)[]).forEach((panel) => panel._adjustLayout?.());\n\t}\n\n\t/**\n\t * Add common Menu Items for Insights Container from Panel\n\t *\n\t * @private\n\t */\n\tpublic addCommonMenuItems(menuItems: MenuItem[]) {\n\t\tmenuItems.forEach((menuItem) => this.addAggregation(\"menuItems\", menuItem));\n\t\t// after adding menu items sort them based on the order\n\t\tthis._sortMenuItems(sortedMenuItems);\n\t}\n\n\t/**\n\t * Add common Action Buttons for Insights Container from Panel\n\t *\n\t * @private\n\t */\n\tpublic addCommonActionButtons(actionButtons: Button[]) {\n\t\tactionButtons.forEach((actionButton) => this.addAggregation(\"actionButtons\", actionButton));\n\t}\n\n\t/**\n\t * Handles the loading of a panel.\n\t *\n\t * @param {string} panelName - The name of the panel.\n\t * @param {object} oVal - The load status and count of the panel.\n\t * @param {boolean} oVal.loaded - The load status of the panel.\n\t * @param {number} oVal.count - The count of items in the panel.\n\t */\n\tpublic handlePanelLoad(panelName: string, oVal: { loaded: boolean; count: number }) {\n\t\tif (this.panelLoaded[panelName].loaded !== oVal.loaded) {\n\t\t\tthis.panelLoaded[panelName] = oVal;\n\t\t\tthis._updateHeaderElements(this.panelContext[panelName]);\n\t\t}\n\t\tthis.adjustLayout();\n\t}\n\n\t/**\n\t * Updates the visibility and text of an action button.\n\t *\n\t * @param {Button} actionButton - The action button to update.\n\t * @param {boolean} visibility - The visibility of the action button.\n\t * @param {string} text - The text of the action button.\n\t */\n\tpublic updateActionButton(actionButton: Button, visibility: boolean, text: string) {\n\t\tif (actionButton?.getVisible() !== visibility || actionButton?.getText() !== text) {\n\t\t\tthis.toggleActionButton(actionButton, visibility);\n\t\t\tactionButton?.setText(text);\n\t\t\tthis._updateContainerHeader(this);\n\t\t}\n\t}\n\n\t/**\n\t * Updates the visibility and text of a menu item.\n\t *\n\t * @param {MenuItem} menuItem - The menu item to update.\n\t * @param {boolean} visibility - The visibility of the menu item.\n\t * @param {string} text - The text of the menu item.\n\t */\n\tpublic updateMenuItem(menuItem: MenuItem, visibility: boolean, text: string) {\n\t\tif (menuItem?.getVisible() !== visibility || menuItem?.getTitle() !== text) {\n\t\t\tthis.toggleMenuListItem(menuItem, visibility);\n\t\t\tmenuItem?.setTitle(text);\n\t\t\tthis._updateContainerHeader(this);\n\t\t}\n\t}\n\n\t/**\n\t * Gets the names of the loaded panels.\n\t *\n\t * @private\n\t * @returns {string[]} The names of the loaded panels.\n\t */\n\tprivate _getLoadedPanelNames() {\n\t\treturn Object.keys(this.panelLoaded).filter((panelName) => this.panelLoaded[panelName].loaded);\n\t}\n\n\t/**\n\t * Returns the names of panels that are still loading or in loaded true state\n\t *\n\t * @private\n\t * @private\n\t */\n\tprivate getVisibleOrPendingPanels() {\n\t\treturn Object.keys(this.panelLoaded).filter((panelName) => this.panelLoaded[panelName].loaded !== false);\n\t}\n\t/**\n\t * Sorts the menu items based on the provided order.\n\t *\n\t * @private\n\t * @param {string[]} menuItems - The order of the menu items.\n\t */\n\tprivate _sortMenuItems(menuItems: string[]) {\n\t\tconst containerMenuItems = this.getAggregation(\"menuItems\") as MenuItem[];\n\t\tlet sortedMenuItems = sortMenuItems(menuItems, containerMenuItems);\n\t\tthis.removeAllAggregation(\"menuItems\");\n\t\tsortedMenuItems?.forEach((menuItem) => this.addAggregation(\"menuItems\", menuItem));\n\t}\n\n\t/**\n\t * Retrieves the generic placeholder content for the Insights container.\n\t *\n\t * @returns {string} The HTML string representing the Insights container's placeholder content.\n\t */\n\tprotected getGenericPlaceholderContent(): string {\n\t\treturn getInsightsPlaceholder();\n\t}\n\n\t/**\n\t * Refreshes the data for a specific panel based on its key.\n\t *\n\t * @private\n\t * @param {string} key - The key of the panel to refresh.\n\t */\n\tpublic async refreshData(key: string) {\n\t\tconst panel = Object.values(this.panelContext).find((panel) => panel.getKey() === key);\n\t\tawait panel?.refreshData?.(true);\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,oKAAAC,eAAA,EAAAC,YAAA,EAAAC,YAAA,EAAAC,sCAAA,EAAAC,YAAA,EAAAC,eAAA,EAAAC,sBAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAAA,MAOOG,aAAa,GAAAJ,sBAAA,CAAAP,eAAA;EAAA,MAEbY,UAAU,GAAAL,sBAAA,CAAAN,YAAA;EAAA,MAAIY,2BAA2B,GAAAZ,YAAA;EAAA,MAAEa,uBAAuB,GAAAb,YAAA;EAAA,MAClEc,UAAU,GAAAR,sBAAA,CAAAL,YAAA;EAAA,MACRc,sBAAsB,GAAAb,sCAAA;EAAA,MAExBc,UAAU,GAAAV,sBAAA,CAAAH,YAAA;EAAA,MAAIc,2BAA2B,GAAAd,YAAA;EAAA,MAAEe,uBAAuB,GAAAf,YAAA;EAAA,MAChEgB,UAAU,GAAAf,eAAA;EAAA,MACVgB,aAAa,GAAAf,sBAAA;EAEtB,MAAMgB,cAAsB,GAAG,yBAAyB;EACxD,MAAMC,cAAsB,GAAG,yBAAyB;EACxD,MAAMC,eAA+E,GAAG,CACvFL,uBAAuB,CAACM,OAAO,EAC/BX,uBAAuB,CAACW,OAAO,EAC/BN,uBAAuB,CAACO,QAAQ,EAChCP,uBAAuB,CAACQ,UAAU,EAClCb,uBAAuB,CAACc,UAAU,EAClCd,uBAAuB,CAACe,eAAe,EACvCV,uBAAuB,CAACW,SAAS,EACjChB,uBAAuB,CAACgB,SAAS,EACjC,UAAU,CACV;EAUD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAfA,MAiBqBC,iBAAiB,GAASpB,aAAa,CAAAqB,MAAA;IAC3CC,QAAQ,EAAG;MAC1B,GAAGtB,aAAa,CAACsB,QAAQ;MACzBC,UAAU,EAAE;IACb,CAAC;IAQD;AACD;AACA;AACA;AACA;AACA;IACQC,WAAW,WAAAC,aAACC,EAAW,EAAEC,QAAiC,EAAE;MAClEC,wCAAA,OAAMF,EAAE,EAAEC,QAAQ;MAAE,KAbbE,gBAAgB,GAAY,IAAI;IAcxC,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQC,IAAI,WAAAC,MAAA,EAAS;MACnBC,iCAAA;MACA,IAAI,CAACC,WAAW,CAAC,OAAO,EAAE,IAAI,CAACC,WAAW,EAAEC,OAAO,CAAC,UAAU,CAAC,CAAC;MAChE;AACF;AACA;AACA;MACE,IAAI,CAACF,WAAW,CAAC,gBAAgB,EAAE,IAAI,CAAC;MACxC,IAAI,CAACA,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC;MAC3C,IAAI,CAACG,WAAW,GAAG;QAClB,CAACzB,cAAc,GAAG;UAAE0B,MAAM,EAAEC,SAAS;UAAEC,KAAK,EAAE;QAAE,CAAC;QACjD,CAAC3B,cAAc,GAAG;UAAEyB,MAAM,EAAEC,SAAS;UAAEC,KAAK,EAAE;QAAE;MACjD,CAAC;MACD,IAAI,CAACC,YAAY,GAAG,CAAC,CAAC;MACtB,IAAI,CAACC,UAAU,CAACC,MAAM,CAAC,IAAI,CAACR,WAAW,CAACC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;MAC7D,IAAI,CAACQ,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAACT,WAAW,CAACC,OAAO,CAAC,2BAA2B,CAAW,CAAC;MAC/F,IAAI,CAACM,UAAU,CAACC,MAAM,CAAC,IAAI,CAACR,WAAW,CAACC,OAAO,CAAC,2BAA2B,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACQS,IAAI,WAAAC,MAAA,EAAG;MACb,IAAI,IAAI,CAAChB,gBAAgB,EAAE;QAC1B,MAAMiB,QAAQ,GAAG,IAAI,CAACC,UAAU,CAAC,CAAC;QAClCD,QAAQ,CAACE,OAAO,CAAEC,QAAQ,IAAK;UAC9B,IAAI,CAACT,YAAY,CAACS,QAAQ,CAACC,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC,CAAC,GAAGF,QAAmC;UACzF,IAAI,CAACG,kBAAkB,CAAEH,QAAQ,CAA6BI,qBAAqB,GAAG,CAAC,CAAC;UACxF,IAAI,CAACC,sBAAsB,CAAEL,QAAQ,CAA6BM,yBAAyB,GAAG,CAAC,CAAC;QACjG,CAAC,CAAC;QAEF,IAAI,CAACC,mBAAmB,CAAC,CAAC;;QAE1B;QACAV,QAAQ,CAACE,OAAO,CAAES,OAAO,IAAK;UAC7B,MAAMC,KAAK,GAAGD,OAAkC;UAChDC,KAAK,CAACC,gBAAgB,CAAC,CAAC;UACxBD,KAAK,CAACE,qBAAqB,CAAC,MAAM,IAAI,CAACC,eAAe,CAACH,KAAK,CAAC,CAAC;UAC9DA,KAAK,CAACI,uBAAuB,CAAC,MAAM,IAAI,CAACC,mBAAmB,CAACL,KAAK,CAAC,CAAC;UACpE,KAAKA,KAAK,CAACM,WAAW,CAAC,CAAC;QACzB,CAAC,CAAC;QACF,IAAI,CAACnC,gBAAgB,GAAG,KAAK;MAC9B;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACQgC,eAAe,WAAAI,iBAACP,KAAgB,EAAE;MACxC,IAAI,CAACQ,aAAa,CAACR,KAAK,CAAC;MACzB,MAAMS,SAAS,GAAGT,KAAK,CAACR,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,CAAC;MAC/C,IAAI,CAACiB,eAAe,CAACD,SAAS,EAAE;QAAE9B,MAAM,EAAE,KAAK;QAAEE,KAAK,EAAE;MAAE,CAAC,CAAC;MAC5D,MAAM8B,MAAM,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC,IAAI,EAAE;MAChD,MAAMC,sBAAsB,GAAG,IAAI,CAACC,yBAAyB,CAAC,CAAC,IAAI,EAAE;MACrE,MAAMC,UAAU,GAAGJ,MAAM,EAAEK,MAAM;MACjC,IAAI,CAAClB,mBAAmB,CAAC,CAAC;MAC1B;MACA,IAAIe,sBAAsB,CAACG,MAAM,KAAK,CAAC,EAAE;QACxC,IAAI,CAAC,IAAI,CAACC,WAAW,EAAE;UACtB,IAAI,CAACA,WAAW,GAAG,IAAIvE,UAAU,CAAC,GAAG,IAAI,CAACwE,KAAK,CAAC,CAAC,aAAa,EAAE;YAC/DC,YAAY,EAAE,IAAI,CAAC3C,WAAW,CAACC,OAAO,CAAC,aAAa,CAAC;YACrD2C,kBAAkB,EAAE,IAAI,CAAC5C,WAAW,CAACC,OAAO,CAAC,eAAe;UAC7D,CAAC,CAAC;UACF,IAAI,CAACwC,WAAW,CAACI,OAAO,CAAC,CAAC;QAC3B;QACA,IAAI,CAACC,cAAc,CAAC,SAAS,EAAE,IAAI,CAACL,WAAW,CAAC;MACjD,CAAC,MAAM,IAAIF,UAAU,KAAK,CAAC,EAAE;QAC5B,MAAMf,KAAK,GAAG,IAAI,CAACX,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,IAAIW,KAAK,IAAI,EAAEA,KAAK,YAAYtD,UAAU,CAAC,EAAE;UAC3CsD,KAAK,EAA8BC,gBAAgB,CAAC,CAAC;QACvD;MACD;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;IACSH,mBAAmB,WAAAA,oBAAA,EAAG;MAC7B,MAAMa,MAAgB,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;MACpD,IAAIW,eAAyB,GAAG,EAAE;MAClC,IAAIC,mBAA6B,GAAG,EAAE;MACtC,IAAI,CAACjD,WAAW,CAAC,OAAO,EAAE,IAAI,CAACC,WAAW,EAAEC,OAAO,CAAC,UAAU,CAAC,CAAC;MAChE,IAAIkC,MAAM,CAACK,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC3B,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY3C,UAAU,EAAE;QACtE6E,eAAe,GAAG,CACjBzE,uBAAuB,CAACM,OAAO,EAC/BX,uBAAuB,CAACW,OAAO,EAC/BN,uBAAuB,CAACW,SAAS,EACjChB,uBAAuB,CAACgB,SAAS,CACjC;QACD,IAAI,CAACgE,cAAc,CAACF,eAAe,CAAC;QACpCC,mBAAmB,GAAG,CAAC3E,2BAA2B,CAACY,SAAS,EAAEjB,2BAA2B,CAACiB,SAAS,CAAC;QACpG,IAAI,CAACiE,kBAAkB,CAACF,mBAAmB,CAAC;MAC7C,CAAC,MAAM,IAAIb,MAAM,CAACK,MAAM,KAAK,CAAC,EAAE;QAC/B,MAAMP,SAAS,GAAGE,MAAM,CAAC,CAAC,CAAC;QAC3B,IAAI,CAACpC,WAAW,CAAC,OAAO,EAAE,GAAG,IAAI,CAACC,WAAW,EAAEC,OAAO,CAAC,UAAU,CAAC,KAAK,IAAI,CAACC,WAAW,CAAC+B,SAAS,CAAC,CAAC5B,KAAK,IAAI,CAAC,GAAG,CAAC;QACjH,IAAI,IAAI,CAACC,YAAY,CAAC6B,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY/D,UAAU,EAAE;UACvD2E,eAAe,GAAG,CAAC9E,uBAAuB,CAACW,OAAO,EAAEX,uBAAuB,CAACgB,SAAS,CAAC;UACtF+D,mBAAmB,GAAG,CAAChF,2BAA2B,CAACiB,SAAS,CAAC;QAC9D;QACA,IAAI,IAAI,CAACqB,YAAY,CAAC6B,MAAM,CAAC,CAAC,CAAC,CAAC,YAAYpE,UAAU,EAAE;UACvDgF,eAAe,GAAG,CAACzE,uBAAuB,CAACM,OAAO,EAAEN,uBAAuB,CAACW,SAAS,CAAC;UACtF+D,mBAAmB,GAAG,CAAC3E,2BAA2B,CAACY,SAAS,CAAC;QAC9D;QACA,IAAI,CAACgE,cAAc,CAACF,eAAe,CAAC;QACpC,IAAI,CAACG,kBAAkB,CAACF,mBAAmB,CAAC;MAC7C;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;IACSG,sBAAsB,WAAAA,uBAAA,EAAG;MAChC,IAAI,CAACpD,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;MAC5B,IAAI,CAACqD,cAAc,CAAC,WAAW,CAAC,EAAiBtC,OAAO,CAAEuC,QAAQ,IAAK,IAAI,CAACC,kBAAkB,CAACD,QAAQ,EAAE,KAAK,CAAC,CAAC;MAChH,IAAI,CAACD,cAAc,CAAC,eAAe,CAAC,EAAetC,OAAO,CAAEyC,YAAY,IAAK,IAAI,CAACC,kBAAkB,CAACD,YAAY,EAAE,KAAK,CAAC,CAAC;MAC3H,MAAMpB,MAAM,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;MAC1CD,MAAM,CAACrB,OAAO,CAAEmB,SAAS,IAAK;QAC7B,IAAI,CAAC3B,YAAY,CAAC2B,SAAS,CAAC,EAAEwB,eAAe,GAAG,CAAC;MAClD,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACSR,cAAc,WAAAA,eAACF,eAAyB,EAAE;MACjD,MAAMW,kBAAkB,GAAG,IAAI,CAACN,cAAc,CAAC,WAAW,CAAe;MACzEM,kBAAkB,EAAE5C,OAAO,CAAEuC,QAAQ,IAAK;QACzC,MAAMM,qBAAqB,GAAGZ,eAAe,CAACa,IAAI,CAAEC,UAAU,IAAKR,QAAQ,CAACX,KAAK,CAAC,CAAC,CAACoB,QAAQ,CAACD,UAAU,CAAC,CAAC;QACzG,IAAI,CAACP,kBAAkB,CAACD,QAAQ,EAAE,CAACM,qBAAqB,CAAC;MAC1D,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACST,kBAAkB,WAAAA,mBAACF,mBAA6B,EAAE;MACzD,MAAMe,sBAAsB,GAAG,IAAI,CAACX,cAAc,CAAC,eAAe,CAAa;MAC/EW,sBAAsB,EAAEjD,OAAO,CAAEyC,YAAY,IAAK;QACjD,MAAMI,qBAAqB,GAAGX,mBAAmB,CAACY,IAAI,CAAEC,UAAU,IAAKN,YAAY,CAACb,KAAK,CAAC,CAAC,CAACoB,QAAQ,CAACD,UAAU,CAAC,CAAC;QACjH,IAAI,CAACL,kBAAkB,CAACD,YAAY,EAAE,CAACI,qBAAqB,CAAC;MAC9D,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQK,qBAAqB,WAAAC,uBAACC,SAAiB,EAAEjC,SAAiB,EAAE;MAClE,IAAI,CAAC/B,WAAW,CAAC+B,SAAS,CAAC,CAAC5B,KAAK,GAAG6D,SAAS;MAC7C,MAAM/B,MAAM,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;MAC1C;MACA,IAAID,MAAM,CAACK,MAAM,KAAK,CAAC,EAAE;QACxB,IAAI,CAACzC,WAAW,CAAC,OAAO,EAAE,GAAG,IAAI,CAACC,WAAW,EAAEC,OAAO,CAAC,UAAU,CAAC,KAAKiE,SAAS,IAAI,CAAC,GAAG,CAAC;MAC1F;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;IACQrC,mBAAmB,WAAAsC,qBAAC3C,KAA8B,EAAE;MAC1D,MAAM4C,MAAM,GAAG,IAAI,CAACC,UAAU,CAAC,CAAC;MAChC,MAAMC,iBAAiB,GAAGF,MAAM,CAACG,8BAA8B,CAAC,CAAC;MAEjE,IAAI,IAAI,CAAC9B,WAAW,EAAE;QACrB,IAAI,CAACT,aAAa,CAAC,IAAI,CAACS,WAAW,CAAC;MACrC;;MAEA;MACA,MAAM+B,sBAAsB,GAAGA,CAACvC,SAAiB,EAAEwC,eAA2B,KAAK;QAClF,MAAMC,YAAY,GAAG,IAAI,CAACC,uBAAuB,CAACnD,KAAK,CAAC;QACxD,IAAI,CAAC8C,iBAAiB,IAAIA,iBAAiB,KAAK9C,KAAK,CAACoD,WAAW,CAAC,gBAAgB,CAAC,EAAE;UACpF;AACJ;AACA;AACA;UACI,IAAI,IAAI,CAAC1E,WAAW,CAAC+B,SAAS,CAAC,CAAC9B,MAAM,KAAK,KAAK,EAAE;YACjDsE,eAAe,CAAC,CAAC;YACjB;YACA,IAAIC,YAAY,CAACG,aAAa,CAAC,cAAc,CAAC,EAAE;cAC/CH,YAAY,CAACI,gBAAgB,CAAC,cAAc,CAAC;YAC9C;UACD;UACA,IAAI,CAAC5C,eAAe,CAACD,SAAS,EAAE;YAAE9B,MAAM,EAAE,IAAI;YAAEE,KAAK,EAAE,IAAI,CAACH,WAAW,CAAC+B,SAAS,CAAC,CAAC5B;UAAM,CAAC,CAAC;QAC5F,CAAC,MAAM;UACN,MAAM0E,QAAQ,GAAGA,CAAA,KAAM;YACtBN,eAAe,CAAC,CAAC;YACjB;YACA,IAAIC,YAAY,CAACG,aAAa,CAAC,cAAc,CAAC,EAAE;cAC/CH,YAAY,CAACI,gBAAgB,CAAC,cAAc,CAAC;YAC9C;YACAV,MAAM,CAACY,gBAAgB,CAACD,QAAQ,CAAC,CAAC,CAAC;UACpC,CAAC;UACD,IAAI,CAAC7C,eAAe,CAACD,SAAS,EAAE;YAAE9B,MAAM,EAAE,IAAI;YAAEE,KAAK,EAAE,IAAI,CAACH,WAAW,CAAC+B,SAAS,CAAC,CAAC5B;UAAM,CAAC,CAAC;UAC3F+D,MAAM,CAACa,gBAAgB,CAACF,QAAQ,CAAC;QAClC;MACD,CAAC;;MAED;MACA,IAAIvD,KAAK,YAAYpD,UAAU,IAAI,CAAC,IAAI,CAAC8B,WAAW,CAACzB,cAAc,CAAC,CAAC0B,MAAM,EAAE;QAC5EqE,sBAAsB,CAAC/F,cAAc,EAAE,MAAM,IAAI,CAACyG,aAAa,CAAC,IAAI,CAAC5E,YAAY,CAAC7B,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC;MACvG;;MAEA;MACA,IAAI+C,KAAK,YAAYzD,UAAU,IAAI,CAAC,IAAI,CAACmC,WAAW,CAACxB,cAAc,CAAC,CAACyB,MAAM,EAAE;QAC5EqE,sBAAsB,CAAC9F,cAAc,EAAE,MAAM,IAAI,CAACyG,UAAU,CAAC,IAAI,CAAC7E,YAAY,CAAC5B,cAAc,CAAC,CAAC,CAAC;MACjG;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IAES0G,qBAAqB,WAAAA,sBAAC5D,KAA8B,EAAE;MAC7D,MAAMW,MAAM,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;MAC1C,IAAID,MAAM,CAACK,MAAM,GAAG,CAAC,EAAE;QACtB,IAAI,CAACW,sBAAsB,CAAC,CAAC;MAC9B,CAAC,MAAM;QACN,IAAI,CAAC7B,mBAAmB,CAAC,CAAC;QAC1BE,KAAK,CAACC,gBAAgB,CAAC,CAAC;MACzB;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQ4D,YAAY,WAAAC,cAAA,EAAG;MACrB;MACA,IAAI,IAAI,CAACC,aAAa,CAAC,CAAC,KAAKhH,UAAU,CAACiH,MAAM,EAAE;QAC/C,IAAI,CAACC,mBAAmB,CAAC,KAAK,CAAC;MAChC,CAAC,MAAM;QACN,MAAMtD,MAAM,GAAG,IAAI,CAACC,oBAAoB,CAAC,CAAC;QAC1C;QACA,IAAID,MAAM,CAACK,MAAM,GAAG,CAAC,EAAE;UACrB,IAAI,CAACY,cAAc,CAAC,eAAe,CAAC,EAAetC,OAAO,CAAEyC,YAAY,IAAK;YAC7E,IAAIA,YAAY,CAACb,KAAK,CAAC,CAAC,CAACoB,QAAQ,CAACzF,2BAA2B,CAACqH,SAAS,CAAC,EAAE;cACzE,IAAI,CAAClC,kBAAkB,CAACD,YAAY,EAAE,IAAI,CAAC;YAC5C;UACD,CAAC,CAAC;QACH;MACD;;MAEA;MACC,IAAI,CAAC1C,UAAU,CAAC,CAAC,CAAiCC,OAAO,CAAEU,KAAK,IAAKA,KAAK,CAAC8D,aAAa,GAAG,CAAC,CAAC;IAC/F,CAAC;IAED;AACD;AACA;AACA;AACA;IACQpE,kBAAkB,WAAAyE,oBAACC,SAAqB,EAAE;MAChDA,SAAS,CAAC9E,OAAO,CAAEuC,QAAQ,IAAK,IAAI,CAACP,cAAc,CAAC,WAAW,EAAEO,QAAQ,CAAC,CAAC;MAC3E;MACA,IAAI,CAACwC,cAAc,CAAClH,eAAe,CAAC;IACrC,CAAC;IAED;AACD;AACA;AACA;AACA;IACQyC,sBAAsB,WAAA0E,wBAACC,aAAuB,EAAE;MACtDA,aAAa,CAACjF,OAAO,CAAEyC,YAAY,IAAK,IAAI,CAACT,cAAc,CAAC,eAAe,EAAES,YAAY,CAAC,CAAC;IAC5F,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;IACQrB,eAAe,WAAA8D,iBAAC/D,SAAiB,EAAEgE,IAAwC,EAAE;MACnF,IAAI,IAAI,CAAC/F,WAAW,CAAC+B,SAAS,CAAC,CAAC9B,MAAM,KAAK8F,IAAI,CAAC9F,MAAM,EAAE;QACvD,IAAI,CAACD,WAAW,CAAC+B,SAAS,CAAC,GAAGgE,IAAI;QAClC,IAAI,CAACb,qBAAqB,CAAC,IAAI,CAAC9E,YAAY,CAAC2B,SAAS,CAAC,CAAC;MACzD;MACA,IAAI,CAACoD,YAAY,CAAC,CAAC;IACpB,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACQa,kBAAkB,WAAAC,oBAAC5C,YAAoB,EAAE6C,UAAmB,EAAEC,IAAY,EAAE;MAClF,IAAI9C,YAAY,EAAE+C,UAAU,CAAC,CAAC,KAAKF,UAAU,IAAI7C,YAAY,EAAEtD,OAAO,CAAC,CAAC,KAAKoG,IAAI,EAAE;QAClF,IAAI,CAAC7C,kBAAkB,CAACD,YAAY,EAAE6C,UAAU,CAAC;QACjD7C,YAAY,EAAEgD,OAAO,CAACF,IAAI,CAAC;QAC3B,IAAI,CAACG,sBAAsB,CAAC,IAAI,CAAC;MAClC;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACQC,cAAc,WAAAC,gBAACrD,QAAkB,EAAE+C,UAAmB,EAAEC,IAAY,EAAE;MAC5E,IAAIhD,QAAQ,EAAEiD,UAAU,CAAC,CAAC,KAAKF,UAAU,IAAI/C,QAAQ,EAAEsD,QAAQ,CAAC,CAAC,KAAKN,IAAI,EAAE;QAC3E,IAAI,CAAC/C,kBAAkB,CAACD,QAAQ,EAAE+C,UAAU,CAAC;QAC7C/C,QAAQ,EAAEuD,QAAQ,CAACP,IAAI,CAAC;QACxB,IAAI,CAACG,sBAAsB,CAAC,IAAI,CAAC;MAClC;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACSpE,oBAAoB,WAAAA,qBAAA,EAAG;MAC9B,OAAOyE,MAAM,CAACC,IAAI,CAAC,IAAI,CAAC5G,WAAW,CAAC,CAAC6G,MAAM,CAAE9E,SAAS,IAAK,IAAI,CAAC/B,WAAW,CAAC+B,SAAS,CAAC,CAAC9B,MAAM,CAAC;IAC/F,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACSmC,yBAAyB,WAAA0E,2BAAA,EAAG;MACnC,OAAOH,MAAM,CAACC,IAAI,CAAC,IAAI,CAAC5G,WAAW,CAAC,CAAC6G,MAAM,CAAE9E,SAAS,IAAK,IAAI,CAAC/B,WAAW,CAAC+B,SAAS,CAAC,CAAC9B,MAAM,KAAK,KAAK,CAAC;IACzG,CAAC;IACD;AACD;AACA;AACA;AACA;AACA;IACS0F,cAAc,WAAAA,eAACD,SAAmB,EAAE;MAC3C,MAAMlC,kBAAkB,GAAG,IAAI,CAACN,cAAc,CAAC,WAAW,CAAe;MACzE,IAAIzE,eAAe,GAAGH,aAAa,CAACoH,SAAS,EAAElC,kBAAkB,CAAC;MAClE,IAAI,CAACuD,oBAAoB,CAAC,WAAW,CAAC;MACtCtI,eAAe,EAAEmC,OAAO,CAAEuC,QAAQ,IAAK,IAAI,CAACP,cAAc,CAAC,WAAW,EAAEO,QAAQ,CAAC,CAAC;IACnF,CAAC;IAED;AACD;AACA;AACA;AACA;IACW6D,4BAA4B,WAAAC,8BAAA,EAAW;MAChD,OAAOhJ,sBAAsB,CAAC,CAAC;IAChC,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACciJ,WAAW,WAAAC,aAACC,GAAW;MAAA,IAAE;QAAA,MAAAC,KAAA,GACT,IAAI;QAAhC,MAAM/F,KAAK,GAAGqF,MAAM,CAACW,MAAM,CAACD,KAAA,CAAKjH,YAAY,CAAC,CAACmH,IAAI,CAAEjG,KAAK,IAAKA,KAAK,CAACkG,MAAM,CAAC,CAAC,KAAKJ,GAAG,CAAC;QAAC,OAAAK,OAAA,CAAAC,OAAA,CACjFpG,KAAK,EAAE4F,WAAW,GAAG,IAAI,CAAC,EAAAS,IAAA;MACjC,CAAC,QAAAC,CAAA;QAAA,OAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA;MAAA;IAAA;EAAA;EAAA,OAjamB5I,iBAAiB;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InsightsContainer.js","names":["sap","ui","define","__BaseContainer","__CardsPanel","__ErrorPanel","___utils_placeholder_InsightsPlaceholder","__SpaceInsightsPanel","__TilesPanel","___utils_Device","___utils_InsightsUtils","_interopRequireDefault","obj","__esModule","default","BaseContainer","CardsPanel","cardsContainerActionButtons","cardsContainerMenuItems","ErrorPanel","getInsightsPlaceholder","SpaceInsightsPanel","TilesPanel","tilesContainerActionButtons","tilesContainerMenuItems","DeviceType","sortMenuItems","tilesPanelName","cardsPanelName","spaceInsightsPanelName","sortedMenuItems","REFRESH","ADD_APPS","EDIT_TILES","EDIT_CARDS","AI_INSIGHT_CARD","SHOW_MORE","InsightsContainer","extend","renderer","apiVersion","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","_isInitialRender","init","_init","BaseContainer.prototype.init.call","setProperty","_i18nBundle","getText","panelLoaded","loaded","undefined","count","panelContext","setTooltip","String","addCustomSetting","load","_load","aContent","getContent","forEach","oContent","getMetadata","getName","addCommonMenuItems","getContainerMenuItems","addCommonActionButtons","getContainerActionButtons","_addContainerHeader","content","panel","handleHideHeader","attachHandleHidePanel","handleHidePanel","attachHandleUnhidePanel","unhidePanelIfHidden","renderPanel","_handleHidePanel","removeContent","panelName","handlePanelLoad","panels","_getLoadedPanelNames","visibleOrPendingPanels","getVisibleOrPendingPanels","panelCount","length","_errorPanel","getId","messageTitle","messageDescription","getData","addAggregation","hiddenMenuItems","hiddenActionButtons","_hideMenuItems","_hideActionButtons","getTitle","_removeContainerHeader","getAggregation","menuItem","toggleMenuListItem","actionButton","toggleActionButton","handleAddHeader","containerMenuItems","includedInHiddenItems","some","hiddenItem","includes","containerActionButtons","updatePanelsItemCount","_updatePanelsItemCount","itemCount","isSpaceInsightsPanel","_unhidePanelIfHidden","layout","_getLayout","panelExpandedName","_getCurrentExpandedElementName","processPanelVisibility","insertContentFn","panelWrapper","_getPanelContentWrapper","getProperty","hasStyleClass","removeStyleClass","listener","detachOnCollapse","attachOnCollapse","insertContent","addContent","_updateHeaderElements","adjustLayout","_adjustLayout","getDeviceType","Mobile","toggleActionButtons","ADD_TILES","_addCommonMenuItems","menuItems","_sortMenuItems","_addCommonActionButtons","actionButtons","_handlePanelLoad","oVal","updateActionButton","_updateActionButton","visibility","text","getVisible","setText","_updateContainerHeader","updateMenuItem","_updateMenuItem","setTitle","Object","keys","filter","_getVisibleOrPendingPanels","removeAllAggregation","getGenericPlaceholderContent","_getGenericPlaceholderContent","refreshData","_refreshData","key","_this","values","find","getKey","Promise","resolve","then","e","reject"],"sources":["InsightsContainer.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport type { $BaseContainerSettings } from \"./BaseContainer\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport CardsPanel, { cardsContainerActionButtons, cardsContainerMenuItems } from \"./CardsPanel\";\nimport ErrorPanel from \"./ErrorPanel\";\nimport { getInsightsPlaceholder } from \"./utils/placeholder/InsightsPlaceholder\";\nimport MenuItem from \"./MenuItem\";\nimport SpaceInsightsPanel from \"./SpaceInsightsPanel\";\nimport TilesPanel, { tilesContainerActionButtons, tilesContainerMenuItems } from \"./TilesPanel\";\nimport { DeviceType } from \"./utils/Device\";\nimport { sortMenuItems } from \"./utils/InsightsUtils\";\n\nconst tilesPanelName: string = \"sap.cux.home.TilesPanel\";\nconst cardsPanelName: string = \"sap.cux.home.CardsPanel\";\nconst spaceInsightsPanelName: string = \"sap.cux.home.SpaceInsightsPanel\";\nconst sortedMenuItems: (tilesContainerMenuItems | cardsContainerMenuItems | string)[] = [\n\ttilesContainerMenuItems.REFRESH,\n\tcardsContainerMenuItems.REFRESH,\n\ttilesContainerMenuItems.ADD_APPS,\n\ttilesContainerMenuItems.EDIT_TILES,\n\tcardsContainerMenuItems.EDIT_CARDS,\n\tcardsContainerMenuItems.AI_INSIGHT_CARD,\n\ttilesContainerMenuItems.SHOW_MORE,\n\tcardsContainerMenuItems.SHOW_MORE,\n\t\"settings\"\n];\n\ninterface IpanelLoaded {\n\t[key: string]: { loaded: boolean | undefined; count: number };\n}\n\ninterface IpanelContext {\n\t[key: string]: TilesPanel | CardsPanel;\n}\n\n/**\n *\n * Container class for managing and storing Insights Tiles and Insights Cards.\n *\n * @extends sap.cux.home.BaseContainer\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @internal\n * @public\n *\n * @alias sap.cux.home.InsightsContainer\n */\n\nexport default class InsightsContainer extends BaseContainer {\n\tstatic readonly renderer = {\n\t\t...BaseContainer.renderer,\n\t\tapiVersion: 2\n\t};\n\tprivate _errorPanel!: ErrorPanel;\n\tprivate _isInitialRender: boolean = true;\n\tprivate panelLoaded!: IpanelLoaded;\n\tprivate panelContext!: IpanelContext;\n\n\tconstructor(id?: string | $BaseContainerSettings);\n\tconstructor(id?: string, settings?: $BaseContainerSettings);\n\t/**\n\t * Constructor for a new Insights container.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $BaseContainerSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"insights\"));\n\t\t/* As Container Level default value for enableSettings is false,\n\t\t\tthis needs to be added from container level.\n\t\t\t(default value cannot be true as News & Page Container header should be hidden)\n\t\t*/\n\t\tthis.setProperty(\"enableSettings\", true);\n\t\tthis.setProperty(\"orientation\", \"Vertical\");\n\t\tthis.panelLoaded = {\n\t\t\t[tilesPanelName]: { loaded: undefined, count: 0 },\n\t\t\t[cardsPanelName]: { loaded: undefined, count: 0 },\n\t\t\t[spaceInsightsPanelName]: { loaded: undefined, count: 0 }\n\t\t};\n\t\tthis.panelContext = {};\n\t\tthis.setTooltip(String(this._i18nBundle.getText(\"insights\")));\n\t\tthis.addCustomSetting(\"title\", this._i18nBundle.getText(\"insightLayoutSectionTitle\") as string);\n\t\tthis.setTooltip(String(this._i18nBundle.getText(\"insightLayoutSectionTitle\")));\n\t}\n\n\t/**\n\t * Loads the Insights section.\n\t * Overrides the load method of the BaseContainer.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic load() {\n\t\tif (this._isInitialRender) {\n\t\t\tconst aContent = this.getContent();\n\t\t\taContent.forEach((oContent) => {\n\t\t\t\tthis.panelContext[oContent.getMetadata().getName()] = oContent as TilesPanel | CardsPanel;\n\t\t\t\tthis.addCommonMenuItems((oContent as TilesPanel | CardsPanel).getContainerMenuItems?.());\n\t\t\t\tthis.addCommonActionButtons((oContent as TilesPanel | CardsPanel).getContainerActionButtons?.());\n\t\t\t});\n\n\t\t\tthis._addContainerHeader();\n\n\t\t\t// Render individual panels\n\t\t\taContent.forEach((content) => {\n\t\t\t\tconst panel = content as TilesPanel | CardsPanel;\n\t\t\t\tpanel.handleHideHeader();\n\t\t\t\tpanel.attachHandleHidePanel(() => this.handleHidePanel(panel));\n\t\t\t\tpanel.attachHandleUnhidePanel(() => this.unhidePanelIfHidden(panel));\n\t\t\t\tvoid panel.renderPanel();\n\t\t\t});\n\t\t\tthis._isInitialRender = false;\n\t\t}\n\t}\n\n\t/**\n\t * Handles the hiding of a panel by removing its content, updating the panel load status,\n\t * and managing the display of the container header and error panel.\n\t *\n\t * @param {BasePanel} panel - The panel to be hidden.\n\t * @private\n\t */\n\tpublic handleHidePanel(panel: BasePanel) {\n\t\tthis.removeContent(panel);\n\t\tconst panelName = panel.getMetadata().getName();\n\t\tthis.handlePanelLoad(panelName, { loaded: false, count: 0 });\n\t\tconst panels = this._getLoadedPanelNames() || [];\n\t\tconst visibleOrPendingPanels = this.getVisibleOrPendingPanels() || [];\n\t\tconst panelCount = panels?.length;\n\t\tthis._addContainerHeader();\n\t\t// only show error panel if all panels loaded state is false\n\t\tif (\n\t\t\tvisibleOrPendingPanels.length === 0 ||\n\t\t\t(visibleOrPendingPanels.length === 1 && visibleOrPendingPanels[0] === spaceInsightsPanelName)\n\t\t) {\n\t\t\tif (!this._errorPanel) {\n\t\t\t\tthis._errorPanel = new ErrorPanel(`${this.getId()}-errorPanel`, {\n\t\t\t\t\tmessageTitle: this._i18nBundle.getText(\"noAppsTitle\"),\n\t\t\t\t\tmessageDescription: this._i18nBundle.getText(\"noInsightsMsg\")\n\t\t\t\t});\n\t\t\t\tthis._errorPanel.getData();\n\t\t\t}\n\t\t\tthis.addAggregation(\"content\", this._errorPanel);\n\t\t} else if (panelCount === 1) {\n\t\t\tconst panel = this.getContent()[0];\n\t\t\tif (panel && !(panel instanceof ErrorPanel)) {\n\t\t\t\t(panel as TilesPanel | CardsPanel)?.handleHideHeader();\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds the container header based on the number of visible panels.\n\t *\n\t * @private\n\t */\n\tprivate _addContainerHeader() {\n\t\tconst panels: string[] = this._getLoadedPanelNames();\n\t\tlet hiddenMenuItems: string[] = [];\n\t\tlet hiddenActionButtons: string[] = [];\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"insights\"));\n\t\tif (panels.length === 0 || this.getContent()[0] instanceof ErrorPanel) {\n\t\t\thiddenMenuItems = [\n\t\t\t\ttilesContainerMenuItems.REFRESH,\n\t\t\t\tcardsContainerMenuItems.REFRESH,\n\t\t\t\ttilesContainerMenuItems.SHOW_MORE,\n\t\t\t\tcardsContainerMenuItems.SHOW_MORE\n\t\t\t];\n\t\t\tthis._hideMenuItems(hiddenMenuItems);\n\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE, cardsContainerActionButtons.SHOW_MORE];\n\t\t\tthis._hideActionButtons(hiddenActionButtons);\n\t\t} else if (panels.length === 1) {\n\t\t\tconst panelName = panels[0];\n\t\t\tthis.setProperty(\"title\", `${this._i18nBundle?.getText(\"insights\")} (${this.panelLoaded[panelName].count || 0})`);\n\t\t\tif (this.panelContext[panels[0]] instanceof TilesPanel) {\n\t\t\t\thiddenMenuItems = [cardsContainerMenuItems.REFRESH, cardsContainerMenuItems.SHOW_MORE];\n\t\t\t\thiddenActionButtons = [cardsContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tif (this.panelContext[panels[0]] instanceof CardsPanel) {\n\t\t\t\thiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE];\n\t\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tif (this.panelContext[panels[0]] instanceof SpaceInsightsPanel) {\n\t\t\t\tthis.setProperty(\"title\", `${this.panelContext[panels[0]].getTitle()} (${this.panelLoaded[panelName].count || 0})`);\n\t\t\t\thiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE, \"settings\"];\n\t\t\t\thiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];\n\t\t\t}\n\t\t\tthis._hideMenuItems(hiddenMenuItems);\n\t\t\tthis._hideActionButtons(hiddenActionButtons);\n\t\t}\n\t}\n\n\t/**\n\t * Removes the container header.\n\t *\n\t * @private\n\t */\n\tprivate _removeContainerHeader() {\n\t\tthis.setProperty(\"title\", \"\");\n\t\t(this.getAggregation(\"menuItems\") as MenuItem[])?.forEach((menuItem) => this.toggleMenuListItem(menuItem, false));\n\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => this.toggleActionButton(actionButton, false));\n\t\tconst panels = this._getLoadedPanelNames();\n\t\tpanels.forEach((panelName) => {\n\t\t\tthis.panelContext[panelName]?.handleAddHeader?.();\n\t\t});\n\t}\n\n\t/**\n\t * Hides the specified menu items.\n\t *\n\t * @private\n\t * @param {string[]} hiddenMenuItems - The IDs of the menu items to hide.\n\t */\n\tprivate _hideMenuItems(hiddenMenuItems: string[]) {\n\t\tconst containerMenuItems = this.getAggregation(\"menuItems\") as MenuItem[];\n\t\tcontainerMenuItems?.forEach((menuItem) => {\n\t\t\tconst includedInHiddenItems = hiddenMenuItems.some((hiddenItem) => menuItem.getId().includes(hiddenItem));\n\t\t\tthis.toggleMenuListItem(menuItem, !includedInHiddenItems);\n\t\t});\n\t}\n\n\t/**\n\t * Hides the specified action buttons.\n\t *\n\t * @private\n\t * @param {string[]} hiddenActionButtons - The IDs of the action buttons to hide.\n\t */\n\tprivate _hideActionButtons(hiddenActionButtons: string[]) {\n\t\tconst containerActionButtons = this.getAggregation(\"actionButtons\") as Button[];\n\t\tcontainerActionButtons?.forEach((actionButton) => {\n\t\t\tconst includedInHiddenItems = hiddenActionButtons.some((hiddenItem) => actionButton.getId().includes(hiddenItem));\n\t\t\tthis.toggleActionButton(actionButton, !includedInHiddenItems);\n\t\t});\n\t}\n\n\t/**\n\t * Updates the item count for the specified panel.\n\t *\n\t * @param {number} itemCount - The new item count.\n\t * @param {string} panelName - The name of the panel.\n\t */\n\tpublic updatePanelsItemCount(itemCount: number, panelName: string) {\n\t\tthis.panelLoaded[panelName].count = itemCount;\n\t\tconst panels = this._getLoadedPanelNames();\n\t\t// Container Title Will be displayed only in case of only one panel is present\n\t\tif (panels.length === 1) {\n\t\t\tconst isSpaceInsightsPanel = this.panelContext[panels[0]] instanceof SpaceInsightsPanel;\n\t\t\tthis.setProperty(\n\t\t\t\t\"title\",\n\t\t\t\t`${isSpaceInsightsPanel ? this.panelContext[panels[0]].getTitle() : this._i18nBundle?.getText(\"insights\")} (${itemCount || 0})`\n\t\t\t);\n\t\t}\n\t}\n\n\t/**\n\t * Unhides the specified panel if it is hidden.\n\t *\n\t * @param {TilesPanel | CardsPanel} panel - The panel to unhide.\n\t */\n\tpublic unhidePanelIfHidden(panel: TilesPanel | CardsPanel) {\n\t\tconst layout = this._getLayout();\n\t\tconst panelExpandedName = layout._getCurrentExpandedElementName();\n\n\t\tif (this._errorPanel) {\n\t\t\tthis.removeContent(this._errorPanel);\n\t\t}\n\n\t\t// Function to handle panel content insertion\n\t\tconst processPanelVisibility = (panelName: string, insertContentFn: () => void) => {\n\t\t\tconst panelWrapper = this._getPanelContentWrapper(panel);\n\t\t\tif (!panelExpandedName || panelExpandedName === panel.getProperty(\"fullScreenName\")) {\n\t\t\t\t/**\n loaded value can be false or undefined, false being hidden and undefined being loading\n if the panel is hidden then only unhide it\n */\n\t\t\t\tif (this.panelLoaded[panelName].loaded === false) {\n\t\t\t\t\tinsertContentFn();\n\t\t\t\t\t// Remove hidden class if applied\n\t\t\t\t\tif (panelWrapper.hasStyleClass(\"sapCuxHidden\")) {\n\t\t\t\t\t\tpanelWrapper.removeStyleClass(\"sapCuxHidden\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.handlePanelLoad(panelName, { loaded: true, count: this.panelLoaded[panelName].count });\n\t\t\t} else {\n\t\t\t\tconst listener = () => {\n\t\t\t\t\tinsertContentFn();\n\t\t\t\t\t// Remove hidden class if applied\n\t\t\t\t\tif (panelWrapper.hasStyleClass(\"sapCuxHidden\")) {\n\t\t\t\t\t\tpanelWrapper.removeStyleClass(\"sapCuxHidden\");\n\t\t\t\t\t}\n\t\t\t\t\tlayout.detachOnCollapse(listener); // Remove the listener after execution\n\t\t\t\t};\n\t\t\t\tthis.handlePanelLoad(panelName, { loaded: true, count: this.panelLoaded[panelName].count });\n\t\t\t\tlayout.attachOnCollapse(listener);\n\t\t\t}\n\t\t};\n\n\t\t// Handling TilesPanel\n\t\tif (panel instanceof TilesPanel && !this.panelLoaded[tilesPanelName].loaded) {\n\t\t\tprocessPanelVisibility(tilesPanelName, () => this.insertContent(this.panelContext[tilesPanelName], 0));\n\t\t}\n\n\t\t// Handling CardsPanel\n\t\tif (panel instanceof CardsPanel && !this.panelLoaded[cardsPanelName].loaded) {\n\t\t\tprocessPanelVisibility(cardsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));\n\t\t}\n\n\t\t// Handling SpaceInsightsPanel\n\t\tif (panel instanceof SpaceInsightsPanel && !this.panelLoaded[spaceInsightsPanelName].loaded) {\n\t\t\tprocessPanelVisibility(spaceInsightsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));\n\t\t}\n\t}\n\n\t/**\n\t * Updates the container header based on the number of visible panels.\n\t *\n\t * @private\n\t * @param {TilesPanel | CardsPanel} panel - The panel being managed.\n\t */\n\n\tprivate _updateHeaderElements(panel: TilesPanel | CardsPanel) {\n\t\tconst panels = this._getLoadedPanelNames();\n\t\tif (panels.length > 1) {\n\t\t\tthis._removeContainerHeader();\n\t\t} else {\n\t\t\tthis._addContainerHeader();\n\t\t\tpanel.handleHideHeader();\n\t\t}\n\t}\n\n\t/**\n\t * Adjusts the layout of the container.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic adjustLayout() {\n\t\t//hide actions if the device is a phone\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\tthis.toggleActionButtons(false);\n\t\t} else {\n\t\t\tconst panels = this._getLoadedPanelNames();\n\t\t\t// Unhide the Add Tiles button if the device is not a phone and header is visible\n\t\t\tif (panels.length < 2) {\n\t\t\t\t(this.getAggregation(\"actionButtons\") as Button[])?.forEach((actionButton) => {\n\t\t\t\t\tif (actionButton.getId().includes(tilesContainerActionButtons.ADD_TILES)) {\n\t\t\t\t\t\tthis.toggleActionButton(actionButton, true);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\t//adjust layout of all panels\n\t\t(this.getContent() as (TilesPanel | CardsPanel)[]).forEach((panel) => panel._adjustLayout?.());\n\t}\n\n\t/**\n\t * Add common Menu Items for Insights Container from Panel\n\t *\n\t * @private\n\t */\n\tpublic addCommonMenuItems(menuItems: MenuItem[]) {\n\t\tmenuItems.forEach((menuItem) => this.addAggregation(\"menuItems\", menuItem));\n\t\t// after adding menu items sort them based on the order\n\t\tthis._sortMenuItems(sortedMenuItems);\n\t}\n\n\t/**\n\t * Add common Action Buttons for Insights Container from Panel\n\t *\n\t * @private\n\t */\n\tpublic addCommonActionButtons(actionButtons: Button[]) {\n\t\tactionButtons.forEach((actionButton) => this.addAggregation(\"actionButtons\", actionButton));\n\t}\n\n\t/**\n\t * Handles the loading of a panel.\n\t *\n\t * @param {string} panelName - The name of the panel.\n\t * @param {object} oVal - The load status and count of the panel.\n\t * @param {boolean} oVal.loaded - The load status of the panel.\n\t * @param {number} oVal.count - The count of items in the panel.\n\t */\n\tpublic handlePanelLoad(panelName: string, oVal: { loaded: boolean; count: number }) {\n\t\tif (this.panelLoaded[panelName].loaded !== oVal.loaded) {\n\t\t\tthis.panelLoaded[panelName] = oVal;\n\t\t\tthis._updateHeaderElements(this.panelContext[panelName]);\n\t\t}\n\t\tthis.adjustLayout();\n\t}\n\n\t/**\n\t * Updates the visibility and text of an action button.\n\t *\n\t * @param {Button} actionButton - The action button to update.\n\t * @param {boolean} visibility - The visibility of the action button.\n\t * @param {string} text - The text of the action button.\n\t */\n\tpublic updateActionButton(actionButton: Button, visibility: boolean, text: string) {\n\t\tif (actionButton?.getVisible() !== visibility || actionButton?.getText() !== text) {\n\t\t\tthis.toggleActionButton(actionButton, visibility);\n\t\t\tactionButton?.setText(text);\n\t\t\tthis._updateContainerHeader(this);\n\t\t}\n\t}\n\n\t/**\n\t * Updates the visibility and text of a menu item.\n\t *\n\t * @param {MenuItem} menuItem - The menu item to update.\n\t * @param {boolean} visibility - The visibility of the menu item.\n\t * @param {string} text - The text of the menu item.\n\t */\n\tpublic updateMenuItem(menuItem: MenuItem, visibility: boolean, text: string) {\n\t\tif (menuItem?.getVisible() !== visibility || menuItem?.getTitle() !== text) {\n\t\t\tthis.toggleMenuListItem(menuItem, visibility);\n\t\t\tmenuItem?.setTitle(text);\n\t\t\tthis._updateContainerHeader(this);\n\t\t}\n\t}\n\n\t/**\n\t * Gets the names of the loaded panels.\n\t *\n\t * @private\n\t * @returns {string[]} The names of the loaded panels.\n\t */\n\tprivate _getLoadedPanelNames() {\n\t\treturn Object.keys(this.panelLoaded).filter((panelName) => this.panelLoaded[panelName].loaded);\n\t}\n\n\t/**\n\t * Returns the names of panels that are still loading or in loaded true state\n\t *\n\t * @private\n\t * @private\n\t */\n\tprivate getVisibleOrPendingPanels() {\n\t\treturn Object.keys(this.panelLoaded).filter((panelName) => this.panelLoaded[panelName].loaded !== false);\n\t}\n\t/**\n\t * Sorts the menu items based on the provided order.\n\t *\n\t * @private\n\t * @param {string[]} menuItems - The order of the menu items.\n\t */\n\tprivate _sortMenuItems(menuItems: string[]) {\n\t\tconst containerMenuItems = this.getAggregation(\"menuItems\") as MenuItem[];\n\t\tlet sortedMenuItems = sortMenuItems(menuItems, containerMenuItems);\n\t\tthis.removeAllAggregation(\"menuItems\");\n\t\tsortedMenuItems?.forEach((menuItem) => this.addAggregation(\"menuItems\", menuItem));\n\t}\n\n\t/**\n\t * Retrieves the generic placeholder content for the Insights container.\n\t *\n\t * @returns {string} The HTML string representing the Insights container's placeholder content.\n\t */\n\tprotected getGenericPlaceholderContent(): string {\n\t\treturn getInsightsPlaceholder();\n\t}\n\n\t/**\n\t * Refreshes the data for a specific panel based on its key.\n\t *\n\t * @private\n\t * @param {string} key - The key of the panel to refresh.\n\t */\n\tpublic async refreshData(key: string) {\n\t\tconst panel = Object.values(this.panelContext).find((panel) => panel.getKey() === key);\n\t\tawait panel?.refreshData?.(true);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,14 +9,16 @@ import BaseContainer from "./BaseContainer";
|
|
|
9
9
|
import BasePanel from "./BasePanel";
|
|
10
10
|
import CardsPanel, { cardsContainerActionButtons, cardsContainerMenuItems } from "./CardsPanel";
|
|
11
11
|
import ErrorPanel from "./ErrorPanel";
|
|
12
|
-
import { getInsightsPlaceholder } from "./
|
|
12
|
+
import { getInsightsPlaceholder } from "./utils/placeholder/InsightsPlaceholder";
|
|
13
13
|
import MenuItem from "./MenuItem";
|
|
14
|
+
import SpaceInsightsPanel from "./SpaceInsightsPanel";
|
|
14
15
|
import TilesPanel, { tilesContainerActionButtons, tilesContainerMenuItems } from "./TilesPanel";
|
|
15
16
|
import { DeviceType } from "./utils/Device";
|
|
16
17
|
import { sortMenuItems } from "./utils/InsightsUtils";
|
|
17
18
|
|
|
18
19
|
const tilesPanelName: string = "sap.cux.home.TilesPanel";
|
|
19
20
|
const cardsPanelName: string = "sap.cux.home.CardsPanel";
|
|
21
|
+
const spaceInsightsPanelName: string = "sap.cux.home.SpaceInsightsPanel";
|
|
20
22
|
const sortedMenuItems: (tilesContainerMenuItems | cardsContainerMenuItems | string)[] = [
|
|
21
23
|
tilesContainerMenuItems.REFRESH,
|
|
22
24
|
cardsContainerMenuItems.REFRESH,
|
|
@@ -48,7 +50,6 @@ interface IpanelContext {
|
|
|
48
50
|
* @since 1.121
|
|
49
51
|
*
|
|
50
52
|
* @internal
|
|
51
|
-
* @experimental Since 1.121
|
|
52
53
|
* @public
|
|
53
54
|
*
|
|
54
55
|
* @alias sap.cux.home.InsightsContainer
|
|
@@ -93,7 +94,8 @@ export default class InsightsContainer extends BaseContainer {
|
|
|
93
94
|
this.setProperty("orientation", "Vertical");
|
|
94
95
|
this.panelLoaded = {
|
|
95
96
|
[tilesPanelName]: { loaded: undefined, count: 0 },
|
|
96
|
-
[cardsPanelName]: { loaded: undefined, count: 0 }
|
|
97
|
+
[cardsPanelName]: { loaded: undefined, count: 0 },
|
|
98
|
+
[spaceInsightsPanelName]: { loaded: undefined, count: 0 }
|
|
97
99
|
};
|
|
98
100
|
this.panelContext = {};
|
|
99
101
|
this.setTooltip(String(this._i18nBundle.getText("insights")));
|
|
@@ -147,7 +149,10 @@ export default class InsightsContainer extends BaseContainer {
|
|
|
147
149
|
const panelCount = panels?.length;
|
|
148
150
|
this._addContainerHeader();
|
|
149
151
|
// only show error panel if all panels loaded state is false
|
|
150
|
-
if (
|
|
152
|
+
if (
|
|
153
|
+
visibleOrPendingPanels.length === 0 ||
|
|
154
|
+
(visibleOrPendingPanels.length === 1 && visibleOrPendingPanels[0] === spaceInsightsPanelName)
|
|
155
|
+
) {
|
|
151
156
|
if (!this._errorPanel) {
|
|
152
157
|
this._errorPanel = new ErrorPanel(`${this.getId()}-errorPanel`, {
|
|
153
158
|
messageTitle: this._i18nBundle.getText("noAppsTitle"),
|
|
@@ -195,6 +200,11 @@ export default class InsightsContainer extends BaseContainer {
|
|
|
195
200
|
hiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE];
|
|
196
201
|
hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];
|
|
197
202
|
}
|
|
203
|
+
if (this.panelContext[panels[0]] instanceof SpaceInsightsPanel) {
|
|
204
|
+
this.setProperty("title", `${this.panelContext[panels[0]].getTitle()} (${this.panelLoaded[panelName].count || 0})`);
|
|
205
|
+
hiddenMenuItems = [tilesContainerMenuItems.REFRESH, tilesContainerMenuItems.SHOW_MORE, "settings"];
|
|
206
|
+
hiddenActionButtons = [tilesContainerActionButtons.SHOW_MORE];
|
|
207
|
+
}
|
|
198
208
|
this._hideMenuItems(hiddenMenuItems);
|
|
199
209
|
this._hideActionButtons(hiddenActionButtons);
|
|
200
210
|
}
|
|
@@ -254,7 +264,11 @@ export default class InsightsContainer extends BaseContainer {
|
|
|
254
264
|
const panels = this._getLoadedPanelNames();
|
|
255
265
|
// Container Title Will be displayed only in case of only one panel is present
|
|
256
266
|
if (panels.length === 1) {
|
|
257
|
-
|
|
267
|
+
const isSpaceInsightsPanel = this.panelContext[panels[0]] instanceof SpaceInsightsPanel;
|
|
268
|
+
this.setProperty(
|
|
269
|
+
"title",
|
|
270
|
+
`${isSpaceInsightsPanel ? this.panelContext[panels[0]].getTitle() : this._i18nBundle?.getText("insights")} (${itemCount || 0})`
|
|
271
|
+
);
|
|
258
272
|
}
|
|
259
273
|
}
|
|
260
274
|
|
|
@@ -310,6 +324,11 @@ export default class InsightsContainer extends BaseContainer {
|
|
|
310
324
|
if (panel instanceof CardsPanel && !this.panelLoaded[cardsPanelName].loaded) {
|
|
311
325
|
processPanelVisibility(cardsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));
|
|
312
326
|
}
|
|
327
|
+
|
|
328
|
+
// Handling SpaceInsightsPanel
|
|
329
|
+
if (panel instanceof SpaceInsightsPanel && !this.panelLoaded[spaceInsightsPanelName].loaded) {
|
|
330
|
+
processPanelVisibility(spaceInsightsPanelName, () => this.addContent(this.panelContext[cardsPanelName]));
|
|
331
|
+
}
|
|
313
332
|
}
|
|
314
333
|
|
|
315
334
|
/**
|