@sapui5/sap.cux.home 1.139.0 → 1.140.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 +7 -0
- package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.js +113 -64
- package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.ts +47 -15
- package/src/sap/cux/home/App.d.ts +2 -2
- package/src/sap/cux/home/App.js +2 -2
- package/src/sap/cux/home/App.js.map +1 -1
- package/src/sap/cux/home/App.ts +2 -2
- package/src/sap/cux/home/AppsContainer.d.ts +2 -2
- package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/AppsContainer.js +3 -4
- package/src/sap/cux/home/AppsContainer.js.map +1 -1
- package/src/sap/cux/home/AppsContainer.ts +3 -4
- package/src/sap/cux/home/BaseApp.d.ts +2 -2
- package/src/sap/cux/home/BaseApp.js +2 -2
- package/src/sap/cux/home/BaseApp.js.map +1 -1
- package/src/sap/cux/home/BaseApp.ts +2 -2
- package/src/sap/cux/home/BaseAppPanel.d.ts +10 -0
- package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.js +21 -2
- package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.ts +15 -2
- package/src/sap/cux/home/BaseContainer.d.ts +10 -27
- package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainer.gen.d.ts +61 -0
- package/src/sap/cux/home/BaseContainer.js +39 -71
- package/src/sap/cux/home/BaseContainer.js.map +1 -1
- package/src/sap/cux/home/BaseContainer.ts +33 -77
- package/src/sap/cux/home/BaseContainerRenderer.d.ts +2 -0
- package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.js +31 -3
- package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.ts +39 -2
- package/src/sap/cux/home/BaseLayout.d.ts +2 -2
- package/src/sap/cux/home/BaseLayout.d.ts.map +1 -1
- package/src/sap/cux/home/BaseLayout.js +5 -4
- package/src/sap/cux/home/BaseLayout.js.map +1 -1
- package/src/sap/cux/home/BaseLayout.ts +5 -4
- package/src/sap/cux/home/BaseNewsItem.d.ts +2 -2
- package/src/sap/cux/home/BaseNewsItem.js +2 -2
- package/src/sap/cux/home/BaseNewsItem.js.map +1 -1
- package/src/sap/cux/home/BaseNewsItem.ts +2 -2
- package/src/sap/cux/home/BaseNewsPanel.d.ts +4 -3
- package/src/sap/cux/home/BaseNewsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseNewsPanel.js +14 -3
- package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
- package/src/sap/cux/home/BaseNewsPanel.ts +10 -4
- package/src/sap/cux/home/BasePagePanel.d.ts +2 -2
- package/src/sap/cux/home/BasePagePanel.d.ts.map +1 -1
- package/src/sap/cux/home/BasePagePanel.js +10 -2
- package/src/sap/cux/home/BasePagePanel.js.map +1 -1
- package/src/sap/cux/home/BasePagePanel.ts +6 -2
- package/src/sap/cux/home/BasePanel.d.ts +2 -21
- package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
- package/src/sap/cux/home/BasePanel.gen.d.ts +109 -0
- package/src/sap/cux/home/BasePanel.js +15 -31
- package/src/sap/cux/home/BasePanel.js.map +1 -1
- package/src/sap/cux/home/BasePanel.ts +11 -34
- package/src/sap/cux/home/BaseSettingsDialog.d.ts +2 -2
- package/src/sap/cux/home/BaseSettingsDialog.js +2 -2
- package/src/sap/cux/home/BaseSettingsDialog.js.map +1 -1
- package/src/sap/cux/home/BaseSettingsDialog.ts +2 -2
- package/src/sap/cux/home/BaseSettingsPanel.d.ts +2 -2
- 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 +2 -2
- package/src/sap/cux/home/CardsPanel.d.ts +2 -2
- package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/CardsPanel.js +13 -5
- package/src/sap/cux/home/CardsPanel.js.map +1 -1
- package/src/sap/cux/home/CardsPanel.ts +9 -5
- package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.js +0 -1
- package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.ts +0 -1
- package/src/sap/cux/home/ErrorPanel.d.ts +2 -2
- package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ErrorPanel.js +13 -3
- package/src/sap/cux/home/ErrorPanel.js.map +1 -1
- package/src/sap/cux/home/ErrorPanel.ts +9 -3
- package/src/sap/cux/home/FavAppPanel.d.ts +2 -2
- package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/FavAppPanel.js +7 -6
- package/src/sap/cux/home/FavAppPanel.js.map +1 -1
- package/src/sap/cux/home/FavAppPanel.ts +10 -9
- package/src/sap/cux/home/FrequentAppPanel.d.ts +2 -2
- package/src/sap/cux/home/FrequentAppPanel.js +2 -2
- package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
- package/src/sap/cux/home/FrequentAppPanel.ts +2 -2
- package/src/sap/cux/home/Group.d.ts +2 -2
- package/src/sap/cux/home/Group.js +2 -2
- package/src/sap/cux/home/Group.js.map +1 -1
- package/src/sap/cux/home/Group.ts +2 -2
- package/src/sap/cux/home/IToDoPanel.d.ts +2 -2
- package/src/sap/cux/home/IToDoPanel.js.map +1 -1
- package/src/sap/cux/home/IToDoPanel.ts +2 -2
- package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.ts +3 -1
- package/src/sap/cux/home/InsightsContainer.d.ts +4 -4
- package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsContainer.js +6 -11
- package/src/sap/cux/home/InsightsContainer.js.map +1 -1
- package/src/sap/cux/home/InsightsContainer.ts +6 -11
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +2 -2
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +2 -3
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +4 -4
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +6 -4
- package/src/sap/cux/home/KeyUserSettingsDialog.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserSettingsDialog.js +18 -12
- package/src/sap/cux/home/KeyUserSettingsDialog.js.map +1 -1
- package/src/sap/cux/home/KeyUserSettingsDialog.ts +9 -5
- package/src/sap/cux/home/Layout.d.ts +2 -3
- package/src/sap/cux/home/Layout.d.ts.map +1 -1
- package/src/sap/cux/home/Layout.js +35 -42
- package/src/sap/cux/home/Layout.js.map +1 -1
- package/src/sap/cux/home/Layout.ts +15 -19
- package/src/sap/cux/home/MenuItem.d.ts +2 -2
- package/src/sap/cux/home/MenuItem.js +2 -2
- package/src/sap/cux/home/MenuItem.js.map +1 -1
- package/src/sap/cux/home/MenuItem.ts +2 -2
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts +11 -7
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
- package/src/sap/cux/home/NewsAndPagesContainer.js +22 -26
- package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
- package/src/sap/cux/home/NewsAndPagesContainer.ts +26 -32
- package/src/sap/cux/home/NewsPanel.d.ts +10 -2
- package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsPanel.js +24 -16
- package/src/sap/cux/home/NewsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsPanel.ts +25 -18
- package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.js +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.ts +2 -2
- package/src/sap/cux/home/NoDataContainer.d.ts +2 -2
- package/src/sap/cux/home/NoDataContainer.js +3 -3
- package/src/sap/cux/home/NoDataContainer.js.map +1 -1
- package/src/sap/cux/home/NoDataContainer.ts +3 -3
- package/src/sap/cux/home/PagePanel.d.ts +11 -3
- package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
- package/src/sap/cux/home/PagePanel.js +17 -6
- package/src/sap/cux/home/PagePanel.js.map +1 -1
- package/src/sap/cux/home/PagePanel.ts +17 -7
- package/src/sap/cux/home/RecentAppPanel.d.ts +2 -2
- package/src/sap/cux/home/RecentAppPanel.js +2 -2
- package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
- package/src/sap/cux/home/RecentAppPanel.ts +2 -2
- package/src/sap/cux/home/RecommendedAppPanel.d.ts +2 -2
- package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/RecommendedAppPanel.js +15 -9
- package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
- package/src/sap/cux/home/RecommendedAppPanel.ts +11 -6
- package/src/sap/cux/home/SideBySideIconTabFilter.d.ts +48 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.d.ts.map +1 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.gen.d.ts +33 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.js +83 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.js.map +1 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.ts +87 -0
- package/src/sap/cux/home/SituationPanel.d.ts +2 -2
- package/src/sap/cux/home/SituationPanel.js +2 -2
- package/src/sap/cux/home/SituationPanel.js.map +1 -1
- package/src/sap/cux/home/SituationPanel.ts +2 -2
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts +2 -2
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.js +11 -3
- package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.ts +7 -3
- package/src/sap/cux/home/SpacePanel.d.ts +2 -2
- package/src/sap/cux/home/SpacePanel.js +2 -2
- package/src/sap/cux/home/SpacePanel.js.map +1 -1
- package/src/sap/cux/home/SpacePanel.ts +2 -2
- package/src/sap/cux/home/TaskPanel.d.ts +2 -2
- package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TaskPanel.js +5 -3
- package/src/sap/cux/home/TaskPanel.js.map +1 -1
- package/src/sap/cux/home/TaskPanel.ts +4 -3
- package/src/sap/cux/home/TilesPanel.d.ts +2 -3
- package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TilesPanel.js +89 -59
- package/src/sap/cux/home/TilesPanel.js.map +1 -1
- package/src/sap/cux/home/TilesPanel.ts +93 -70
- package/src/sap/cux/home/ToDoPanel.d.ts +2 -2
- package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ToDoPanel.js +13 -3
- package/src/sap/cux/home/ToDoPanel.js.map +1 -1
- package/src/sap/cux/home/ToDoPanel.ts +9 -3
- package/src/sap/cux/home/ToDosContainer.d.ts +2 -3
- package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
- package/src/sap/cux/home/ToDosContainer.js +3 -8
- package/src/sap/cux/home/ToDosContainer.js.map +1 -1
- package/src/sap/cux/home/ToDosContainer.ts +2 -9
- package/src/sap/cux/home/changeHandler/LayoutHandler.d.ts +1 -2
- package/src/sap/cux/home/changeHandler/LayoutHandler.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/LayoutHandler.js +0 -3
- package/src/sap/cux/home/changeHandler/LayoutHandler.js.map +1 -1
- package/src/sap/cux/home/changeHandler/LayoutHandler.ts +2 -6
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +0 -3
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +0 -3
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +0 -3
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +0 -3
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +0 -3
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +0 -3
- package/src/sap/cux/home/designtime/Layout.designtime.d.ts +1 -1
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +4 -3
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +3 -2
- package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +0 -2
- package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
- package/src/sap/cux/home/flexibility/Layout.flexibility.js +0 -2
- package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
- package/src/sap/cux/home/flexibility/Layout.flexibility.ts +0 -2
- package/src/sap/cux/home/i18n/messagebundle.properties +6 -9
- package/src/sap/cux/home/i18n/messagebundle_ar.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_bg.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_ca.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_cnr.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_cs.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_cy.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_da.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_de.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_el.properties +18 -12
- package/src/sap/cux/home/i18n/messagebundle_en.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_es.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_et.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_fi.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_fr.properties +14 -8
- package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_hi.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_hr.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_hu.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_id.properties +16 -10
- package/src/sap/cux/home/i18n/messagebundle_it.properties +13 -7
- package/src/sap/cux/home/i18n/messagebundle_iw.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_ja.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_kk.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_ko.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_lt.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_lv.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_mk.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_ms.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_nl.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_no.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_pl.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_pt.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_ro.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_ru.properties +22 -16
- package/src/sap/cux/home/i18n/messagebundle_sh.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_sk.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_sl.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_sr.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_sv.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_th.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_tr.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_uk.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_vi.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +12 -6
- package/src/sap/cux/home/library.d.ts +10 -6
- package/src/sap/cux/home/library.d.ts.map +1 -1
- package/src/sap/cux/home/library.js +10 -6
- package/src/sap/cux/home/library.js.map +1 -1
- package/src/sap/cux/home/library.ts +10 -6
- package/src/sap/cux/home/themes/base/BaseContainer.less +31 -0
- package/src/sap/cux/home/themes/base/KeyUserSettingsDialog.less +5 -0
- package/src/sap/cux/home/themes/base/ToDosContainer.less +0 -4
- package/src/sap/cux/home/utils/UshellPersonalizer.d.ts +0 -4
- package/src/sap/cux/home/utils/UshellPersonalizer.d.ts.map +1 -1
- package/src/sap/cux/home/utils/UshellPersonalizer.js.map +1 -1
- package/src/sap/cux/home/utils/UshellPersonalizer.ts +0 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts +0 -19
- package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +0 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.js +0 -126
- package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +0 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.ts +0 -93
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
* * (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
5
|
import Log from "sap/base/Log";
|
|
6
|
-
import FlexBox from "sap/m/FlexBox";
|
|
7
6
|
import GenericTile from "sap/m/GenericTile";
|
|
8
7
|
import SlideTile from "sap/m/SlideTile";
|
|
9
8
|
import { FrameType, Priority } from "sap/m/library";
|
|
@@ -189,8 +188,8 @@ const CUSTOM_NEWS_FEED = {
|
|
|
189
188
|
* @version 0.0.1
|
|
190
189
|
* @since 1.121
|
|
191
190
|
*
|
|
192
|
-
* @
|
|
193
|
-
* @
|
|
191
|
+
* @private
|
|
192
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
194
193
|
*
|
|
195
194
|
* @alias sap.cux.home.NewsPanel
|
|
196
195
|
*/
|
|
@@ -397,7 +396,7 @@ export default class NewsPanel extends BaseNewsPanel {
|
|
|
397
396
|
//reset properties
|
|
398
397
|
this.setProperty("newsAvailable", true);
|
|
399
398
|
this.generateErrorMessage().setVisible(false);
|
|
400
|
-
|
|
399
|
+
this.setVisible(true);
|
|
401
400
|
this.oManageMenuItem.setVisible(true);
|
|
402
401
|
this.setManageNewsItemVisibility(true);
|
|
403
402
|
|
|
@@ -619,17 +618,25 @@ export default class NewsPanel extends BaseNewsPanel {
|
|
|
619
618
|
}
|
|
620
619
|
this.oNewsTile.setVisible(false);
|
|
621
620
|
} else {
|
|
622
|
-
|
|
621
|
+
this.setVisible(false);
|
|
623
622
|
this.setProperty("newsAvailable", false);
|
|
624
623
|
this.oManageMenuItem.setVisible(false);
|
|
625
624
|
}
|
|
626
625
|
}
|
|
627
626
|
|
|
627
|
+
/**
|
|
628
|
+
* Sets the URL for the news tile and triggers data fetch.
|
|
629
|
+
*
|
|
630
|
+
* @param {string} url - The news URL to be set.
|
|
631
|
+
* @returns {Promise<void>} A promise that resolves once data fetching is complete.
|
|
632
|
+
*
|
|
633
|
+
* @private
|
|
634
|
+
*/
|
|
628
635
|
public async setURL(url: string) {
|
|
629
636
|
this.setProperty("type", NewsType.NewsUrl);
|
|
630
637
|
this.setProperty("newsAvailable", true);
|
|
631
638
|
this.generateErrorMessage().setVisible(false);
|
|
632
|
-
|
|
639
|
+
this.setVisible(true);
|
|
633
640
|
this.oNewsTile.setVisible(true);
|
|
634
641
|
this.setProperty("url", url);
|
|
635
642
|
await this.getData();
|
|
@@ -649,7 +656,7 @@ export default class NewsPanel extends BaseNewsPanel {
|
|
|
649
656
|
this.oNewsTile.removeStyleClass("sapUiSmallMarginTop");
|
|
650
657
|
} else {
|
|
651
658
|
this.oNewsTile.addStyleClass("sapUiSmallMarginTop");
|
|
652
|
-
|
|
659
|
+
this.getNewsWrapper().setWidth("100%");
|
|
653
660
|
}
|
|
654
661
|
}
|
|
655
662
|
|
|
@@ -669,24 +676,24 @@ export default class NewsPanel extends BaseNewsPanel {
|
|
|
669
676
|
let oTile;
|
|
670
677
|
if (newsInfo.getElementsByTagName("link").length > 0) {
|
|
671
678
|
oTile = new NewsItem(recycleId(`${sId}-news-item`), {
|
|
672
|
-
url: this.getPropertyValue(newsInfo, "link")
|
|
673
|
-
title: this.getPropertyValue(newsInfo, "title")
|
|
674
|
-
subTitle: this.getPropertyValue(newsInfo, "description")
|
|
675
|
-
imageUrl: this.getPropertyValue(newsInfo, "imageUrl")
|
|
676
|
-
footer: this.formatDate(this.getPropertyValue(newsInfo, "pubDate")
|
|
679
|
+
url: String(this.getPropertyValue(newsInfo, "link")),
|
|
680
|
+
title: String(this.getPropertyValue(newsInfo, "title")),
|
|
681
|
+
subTitle: String(this.getPropertyValue(newsInfo, "description")),
|
|
682
|
+
imageUrl: String(this.getPropertyValue(newsInfo, "imageUrl")),
|
|
683
|
+
footer: this.formatDate(String(this.getPropertyValue(newsInfo, "pubDate")))
|
|
677
684
|
});
|
|
678
685
|
this.addAggregation("newsItems", oTile, true);
|
|
679
686
|
} else {
|
|
680
|
-
let sGroupId =
|
|
687
|
+
let sGroupId = this.getPropertyValue(newsInfo, "group_id") ?? "";
|
|
681
688
|
let newsId = sGroupId && sGroupId.trim() ? `${sId}-newsgroup-${sGroupId}` : `${sId}-newsgroup`;
|
|
682
689
|
let subTitleNews = this.getPropertyValue(newsInfo, "subTitle") ?? "";
|
|
683
690
|
oTile = new NewsGroup(recycleId(newsId), {
|
|
684
|
-
title: this.getPropertyValue(newsInfo, "title")
|
|
691
|
+
title: String(this.getPropertyValue(newsInfo, "title")),
|
|
685
692
|
subTitle: subTitleNews || this._i18nBundle.getText("newsFeedDescription"),
|
|
686
|
-
imageUrl: this.getPropertyValue(newsInfo, "imageUrl")
|
|
687
|
-
footer: this.getPropertyValue(newsInfo, "footer")
|
|
693
|
+
imageUrl: String(this.getPropertyValue(newsInfo, "imageUrl")),
|
|
694
|
+
footer: String(this.getPropertyValue(newsInfo, "footer")),
|
|
688
695
|
priority: this.getPropertyValue(newsInfo, "priority") as Priority,
|
|
689
|
-
priorityText: this.getPropertyValue(newsInfo, "priorityText")
|
|
696
|
+
priorityText: String(this.getPropertyValue(newsInfo, "priorityText"))
|
|
690
697
|
});
|
|
691
698
|
this.addAggregation("newsGroup", oTile, true);
|
|
692
699
|
}
|
|
@@ -708,7 +715,7 @@ export default class NewsPanel extends BaseNewsPanel {
|
|
|
708
715
|
private async extractAllImageUrls(oDocument: Document, noOfFeeds: number) {
|
|
709
716
|
for (let i = 0; i < noOfFeeds; i++) {
|
|
710
717
|
const oItemElement = oDocument?.getElementsByTagName("item")[i];
|
|
711
|
-
const sUrl: string = await this.extractImage(oItemElement.getElementsByTagName("link")[0].textContent
|
|
718
|
+
const sUrl: string = await this.extractImage(String(oItemElement.getElementsByTagName("link")[0].textContent));
|
|
712
719
|
const oImageUrl = oDocument.createElement("imageUrl");
|
|
713
720
|
oImageUrl.textContent = sUrl;
|
|
714
721
|
oItemElement.appendChild(oImageUrl);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAmBhD,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"NewsSettingsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsSettingsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,gCAAgC,CAAC;IAmBhD,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;IAU/D,UAAU,YAAY;QACrB,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,0BAA0B,CAAC,EAAE,OAAO,CAAC;KACrC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,iBAAiB;QAC/D,OAAO,CAAC,WAAW,CAAU;QAC7B,OAAO,CAAC,wBAAwB,CAAQ;QACxC,OAAO,CAAC,KAAK,CAAQ;QACrB,OAAO,CAAC,aAAa,CAAsB;QAC3C,OAAO,CAAC,UAAU,CAAa;QAC/B,OAAO,CAAC,YAAY,CAA0B;QAC9C,OAAO,CAAC,sBAAsB,CAAY;QAC1C,OAAO,CAAC,UAAU,CAAQ;QAC1B,OAAO,CAAC,KAAK,CAAS;QAEtB;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAkBnB;;;;;WAKG;QACH,OAAO,CAAC,UAAU;QAWlB;;WAEG;gBACW,kBAAkB;QAUhC;;;;;WAKG;QACH,OAAO,CAAC,SAAS;QAYjB;;;;;WAKG;QACH,OAAO,CAAC,eAAe;QAkBvB;;;;;WAKG;QACH,OAAO,CAAC,WAAW;QA6CnB;;;;;WAKG;QACH,OAAO,CAAC,eAAe;QAIvB;;;;;WAKG;gBACW,oBAAoB;QA6ClC;;;;WAIG;QACH,OAAO,CAAC,iBAAiB;QAKzB;;;WAGG;QACH,OAAO,CAAC,QAAQ;QAgChB;;;;WAIG;gBACW,oBAAoB;QAyBlC;;;;;;;;;WASG;QACH,OAAO,CAAC,sBAAsB;QA4B9B;;;;;;;;;;WAUG;QACH,OAAO,CAAC,qBAAqB;QAyB7B;;;;WAIG;QACU,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;KAW5C;CAEA"}
|
|
@@ -387,7 +387,7 @@ sap.ui.define(["sap/m/CheckBox", "sap/m/CustomListItem", "sap/m/HBox", "sap/m/La
|
|
|
387
387
|
try {
|
|
388
388
|
const _this4 = this;
|
|
389
389
|
const newsPanel = _this4._getPanel();
|
|
390
|
-
if (!newsPanel) {
|
|
390
|
+
if (!newsPanel || !(newsPanel?.getParent()).getProperty("newsFeedVisibility")) {
|
|
391
391
|
return Promise.resolve(false);
|
|
392
392
|
}
|
|
393
393
|
return Promise.resolve((newsPanel.getNewsType() === NewsType.Custom || newsPanel.getNewsType() === NewsType.Default) && !newsPanel.isNoUpdatesNewsFeed());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsSettingsPanel.js","names":["sap","ui","define","CheckBox","CustomListItem","HBox","Label","List","Switch","Text","Title","VBox","CustomData","__BaseSettingsPanel","___library","___utils_Accessibility","___utils_Constants","___utils_FESRUtil","__PersonalisationUtils","__UshellPersonalizer","_interopRequireDefault","obj","__esModule","default","BaseSettingsPanel","NewsType","getInvisibleText","SETTINGS_PANELS_KEYS","addFESRSemanticStepName","FESR_EVENTS","PersonalisationUtils","UshellPersonalizer","NewsSettingsPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","NEWS","_i18nBundle","getText","addAggregation","getContent","attachPanelNavigated","loadNewsFeedSettings","aFavNewsFeed","_getContent","oHeader","setHeader","oTitle","setTitleMessage","oContentVBox","getId","alignItems","justifyContent","items","setNewsList","getPersonalization","_getPersonalization","_this","_temp2","oPersonalizer","_temp","Promise","resolve","getInstance","getPersContainerId","_getPanel","getOwnerComponent","then","_UshellPersonalizer$g","e","reject","_setHeader","headerText","text","oHeaderVBox","addStyleClass","_setTitleMessage","title","titleStyle","oTitleHbox","oTitleVBox","_setNewsList","oShowSwitchLabel","oShowSwitch","customTextOn","customTextOff","change","saveNewsFeedSettings","state","ariaLabelledBy","CHANGE","oCustNewsSwitchContainer","width","oShowAllPrep","oInvisibleText","oList","oNewsListVBox","direction","isCSVFileFormat","_isCSVFileFormat","fileName","split","pop","toLowerCase","_saveNewsFeedSettings","_this2","selectedFeeds","deselectedDefaultFeeds","newsType","oNewsPanel","getNewsType","showDefault","Default","customFileName","getProperty","feedKey","getCustomFeedKey","getItems","forEach","item","newsListContent","getAggregation","newsListHBox","checkbox","label","isSelected","getSelected","groupId","getDefaultGroupId","push","personalizer","read","personalizationData","defaultNewsFeed","favNewsFeed","showAllPreparationRequired","getState","write","setState","setCustomNewsFeed","_getDefaultGroupId","contentBox","customData","getCustomData","length","getValue","setItems","_setItems","aItems","destroyAggregation","oItem","i","oNewsListItemHbox","id","select","selected","enabled","disabled","addCustomData","key","value","group_id","customListItem","content","addItem","_loadNewsFeedSettings","_this3","sFeedKey","showDefaultNewsFeed","setVisible","oPersData","aPersNewsFeed","getCustomOrDefaultNewsFeed","aNewsFeed","_handleDefaultNewsFeed","_handleCustomNewsFeed","setText","mandatoryNewsFeed","getMandatoryDefaultNewsFeed","map","oNewsFeed","isDeselected","includes","favFeedTitles","isFavorite","isSupported","_isSupported","_this4","newsPanel","Custom","isNoUpdatesNewsFeed"],"sources":["NewsSettingsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport CheckBox from \"sap/m/CheckBox\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport HBox from \"sap/m/HBox\";\nimport Label from \"sap/m/Label\";\nimport List from \"sap/m/List\";\nimport ListItemBase from \"sap/m/ListItemBase\";\nimport Switch from \"sap/m/Switch\";\nimport Text from \"sap/m/Text\";\nimport Title from \"sap/m/Title\";\nimport VBox from \"sap/m/VBox\";\nimport Component from \"sap/ui/core/Component\";\nimport Control from \"sap/ui/core/Control\";\nimport CustomData from \"sap/ui/core/CustomData\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport { NewsType } from \"./library\";\nimport NewsPanel, { INewsFeed } from \"./NewsPanel\";\nimport { getInvisibleText } from \"./utils/Accessibility\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\nimport UshellPersonalizer from \"./utils/UshellPersonalizer\";\n\ninterface IFavNewsFeed {\n\titems: string[];\n\tshowAllPreparationRequired?: boolean;\n}\n\n/**\n *\n * Class for My Home News Settings Panel.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.NewsSettingsPanel\n */\nexport default class NewsSettingsPanel extends BaseSettingsPanel {\n\tprivate oShowSwitch!: Switch;\n\tprivate oCustNewsSwitchContainer!: HBox;\n\tprivate oList!: List;\n\tprivate oPersonalizer!: UshellPersonalizer;\n\tprivate oNewsPanel!: NewsPanel;\n\tprivate aFavNewsFeed!: INewsFeed[] | string[];\n\tprivate deselectedDefaultFeeds!: string[];\n\tprivate headerText!: Text;\n\tprivate title!: Title;\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.NEWS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"news\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://newspaper\");\n\n\t\t//setup layout content\n\t\tthis.addAggregation(\"content\", this.getContent());\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated(() => {\n\t\t\tvoid this.loadNewsFeedSettings();\n\t\t});\n\t\tthis.aFavNewsFeed = [];\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel.\n\t *\n\t * @private\n\t * @returns {Control} The control containing the News Settings Panel content.\n\t */\n\tprivate getContent(): Control {\n\t\tconst oHeader = this.setHeader();\n\t\tconst oTitle = this.setTitleMessage();\n\t\tconst oContentVBox = new VBox(this.getId() + \"--idNewsPageOuterVBoX\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oHeader, oTitle, this.setNewsList()]\n\t\t});\n\t\treturn oContentVBox;\n\t}\n\n\t/**\n\t * Get personalization instance\n\t */\n\tprivate async getPersonalization() {\n\t\tif (!this.oPersonalizer) {\n\t\t\tthis.oPersonalizer = await UshellPersonalizer.getInstance(\n\t\t\t\tPersonalisationUtils.getPersContainerId(this._getPanel()),\n\t\t\t\tPersonalisationUtils.getOwnerComponent(this._getPanel()) as Component\n\t\t\t);\n\t\t}\n\t\treturn this.oPersonalizer;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Header.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Header content.\n\t */\n\tprivate setHeader() {\n\t\tthis.headerText = new Text(this.getId() + \"--idCustNewsFeedSettingsText\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsText\")\n\t\t});\n\t\tconst oHeaderVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTextContainer\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.headerText]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oHeaderVBox;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Title description.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Title description.\n\t */\n\tprivate setTitleMessage() {\n\t\tthis.title = new Title(this.getId() + \"--idCustNewsFeedSettignsTitle\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsHeading\"),\n\t\t\ttitleStyle: \"H3\"\n\t\t});\n\t\tconst oTitleHbox = new HBox(this.getId() + \"--idCustNewsFeedSettingsTitleContainer\", {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.title]\n\t\t});\n\t\tconst oTitleVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTitleVBox\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oTitleHbox]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oTitleVBox;\n\t}\n\n\t/**\n\t * Returns the content for the news List\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's List\n\t */\n\tprivate setNewsList() {\n\t\t//showAllPrepRequired Switch\n\t\tconst oShowSwitchLabel = new Label(this.getId() + \"--idShowAllCustNewsSwitchLabel\", {\n\t\t\ttext: this._i18nBundle.getText(\"showAllPreparationRequiredSwitchLabel\")\n\t\t});\n\t\tthis.oShowSwitch = new Switch(`${this.getId()}-showSwitch`, {\n\t\t\t// 'ariaLabelledBy': \"idShowAllCustNewsSwitchLabel idShowAllCustNewsSwitch\",\n\t\t\tcustomTextOn: \" \",\n\t\t\tcustomTextOff: \" \",\n\t\t\tchange: () => {\n\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t},\n\t\t\t// 'fesr:change': \"showPrepRequire\",\n\t\t\tstate: false,\n\t\t\tariaLabelledBy: [`${this.getId()}--idShowAllCustNewsSwitchLabel`]\n\t\t});\n\t\taddFESRSemanticStepName(this.oShowSwitch, FESR_EVENTS.CHANGE, \"showPrepRequire\");\n\t\tthis.oCustNewsSwitchContainer = new HBox(this.getId() + \"--idShowAllCustNewsSwitchContainer\", {\n\t\t\talignItems: \"Center\",\n\t\t\titems: [oShowSwitchLabel, this.oShowSwitch],\n\t\t\twidth: \"94%\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\n\t\tconst oShowAllPrep = new VBox(this.getId() + \"--idShowAllCustNewsSwitchVBox\", {\n\t\t\titems: [this.oCustNewsSwitchContainer],\n\t\t\twidth: \"94%\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\t\tconst oInvisibleText = getInvisibleText(`${this.getId()}--newsTitleText`, this._i18nBundle.getText(\"newsTitle\"));\n\t\t//List of news items\n\t\tthis.oList = new List(this.getId() + \"--idCustNewsFeedList\", {\n\t\t\tariaLabelledBy: [\n\t\t\t\toInvisibleText.getId(),\n\t\t\t\t`${this.getId()}--idCustNewsFeedSettingsText`,\n\t\t\t\t`${this.getId()}--idCustNewsFeedSettignsTitle`\n\t\t\t]\n\t\t});\n\t\t//Outer VBox\n\t\tconst oNewsListVBox = new VBox(this.getId() + \"--idCustNewsFeedListContainer\", {\n\t\t\tdirection: \"Column\",\n\t\t\titems: [this.oList, oShowAllPrep, oInvisibleText],\n\t\t\twidth: \"96%\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oNewsListVBox;\n\t}\n\n\t/**\n\t * Checks if the custom file format is CSV based on the custom file name.\n\t *\n\t * @param {string} fileName - The custom file name.\n\t * @returns {boolean} True if the file format is CSV, otherwise false.\n\t */\n\tprivate isCSVFileFormat(fileName: string): boolean {\n\t\treturn fileName.split(\".\").pop()?.toLowerCase() === \"csv\";\n\t}\n\n\t/**\n\t *\n\t * Saves news feed settings and shows news feed based on selection change of list of switch\n\t *\n\t * @private\n\t */\n\tprivate async saveNewsFeedSettings(): Promise<void> {\n\t\tconst selectedFeeds: string[] = [];\n\t\tconst deselectedDefaultFeeds: string[] = [];\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefault = newsType === NewsType.Default;\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tconst feedKey = this.oNewsPanel.getCustomFeedKey();\n\n\t\tthis.oList.getItems().forEach((item: ListItemBase) => {\n\t\t\tconst newsListContent = item.getAggregation(\"content\") as Control[];\n\t\t\tconst newsListHBox = newsListContent[0] as HBox;\n\t\t\tconst [checkbox, label] = newsListHBox.getItems() as [CheckBox, Text];\n\t\t\tconst isSelected = checkbox.getSelected();\n\n\t\t\tif (showDefault) {\n\t\t\t\tconst groupId = this.getDefaultGroupId(newsListHBox);\n\t\t\t\tif (!isSelected && groupId) {\n\t\t\t\t\tdeselectedDefaultFeeds.push(groupId);\n\t\t\t\t}\n\t\t\t} else if (isSelected) {\n\t\t\t\tselectedFeeds.push(label.getText());\n\t\t\t}\n\t\t});\n\n\t\tconst personalizer = await this.getPersonalization();\n\t\tconst personalizationData = (await personalizer.read()) || {};\n\n\t\tif (showDefault) {\n\t\t\tpersonalizationData.defaultNewsFeed = { items: deselectedDefaultFeeds };\n\t\t} else {\n\t\t\tpersonalizationData.favNewsFeed = {\n\t\t\t\titems: selectedFeeds,\n\t\t\t\tshowAllPreparationRequired: this.isCSVFileFormat(customFileName) ? false : this.oShowSwitch.getState()\n\t\t\t} as IFavNewsFeed;\n\t\t}\n\n\t\tawait personalizer.write(personalizationData);\n\n\t\t// get the latest value of switch and set the state\n\t\tif (!showDefault) {\n\t\t\tthis.oShowSwitch.setState(personalizationData.favNewsFeed?.showAllPreparationRequired);\n\t\t}\n\t\tawait this.oNewsPanel.setCustomNewsFeed(showDefault ? \"\" : feedKey);\n\t}\n\n\t/** Get groupId info for the default NewsList\n\t * @param {HBox} [contentBox] content Hbox\n\t * @returns {string} groupId\n\t * @private\n\t */\n\tprivate getDefaultGroupId(contentBox: HBox): string {\n\t\tconst customData = contentBox.getCustomData();\n\t\treturn customData?.length ? (customData[0].getValue() as string) : \"\";\n\t}\n\n\t/** Set items for the NewsList\n\t * @param {Array} [aItems] news items to be set as items aggregation\n\t * @private\n\t */\n\tprivate setItems(aItems: INewsFeed[]) {\n\t\tthis.oList.destroyAggregation(\"items\", true);\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tlet showDefault = newsType === NewsType.Default;\n\t\t(aItems || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tlet oNewsListItemHbox = new HBox({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItemContent--${i}`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [\n\t\t\t\t\tnew CheckBox(`${this.getId()}--custNewsFeedItemCheckBox--${i}`, {\n\t\t\t\t\t\tselect: () => {\n\t\t\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\t\t\tenabled: !oItem.disabled\n\t\t\t\t\t}),\n\t\t\t\t\tnew Text(`${this.getId()}--custNewsFeedItemText--${i}`, { text: oItem.title })\n\t\t\t\t],\n\t\t\t\twidth: \"100%\"\n\t\t\t});\n\t\t\tif (showDefault) {\n\t\t\t\t// if showDefault is true, add group_id as custom data to the item\n\t\t\t\toNewsListItemHbox.addCustomData(new CustomData({ key: \"newsGroupId\", value: oItem.group_id }));\n\t\t\t}\n\t\t\tconst customListItem = new CustomListItem({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItem--${i}`,\n\t\t\t\tcontent: [oNewsListItemHbox]\n\t\t\t});\n\t\t\tthis.oList.addItem(customListItem);\n\t\t});\n\t}\n\n\t/**\n\t * Loads news feed settings\n\t *\n\t * @returns {Promise} resolves to news feed settings\n\t */\n\tprivate async loadNewsFeedSettings(): Promise<INewsFeed[] | undefined> {\n\t\tthis.oNewsPanel = this._getPanel() as NewsPanel;\n\t\tconst sFeedKey = this.oNewsPanel.getCustomFeedKey();\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefaultNewsFeed = newsType === NewsType.Default;\n\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tif (this.isCSVFileFormat(customFileName) || showDefaultNewsFeed) {\n\t\t\tthis.oCustNewsSwitchContainer.setVisible(false);\n\t\t}\n\n\t\tconst oPersonalizer = await this.getPersonalization();\n\t\tconst oPersData = await oPersonalizer.read();\n\t\tconst aPersNewsFeed = (showDefaultNewsFeed ? oPersData?.[\"defaultNewsFeed\"] : oPersData?.[\"favNewsFeed\"]) as IFavNewsFeed;\n\t\tconst showAllPreparationRequired = aPersNewsFeed?.showAllPreparationRequired ?? !aPersNewsFeed;\n\n\t\tlet aNewsFeed: INewsFeed[] = await this.oNewsPanel.getCustomOrDefaultNewsFeed(showDefaultNewsFeed ? \"\" : sFeedKey, false);\n\n\t\tif (showDefaultNewsFeed) {\n\t\t\treturn this._handleDefaultNewsFeed(aNewsFeed, aPersNewsFeed);\n\t\t} else {\n\t\t\treturn this._handleCustomNewsFeed(aNewsFeed, aPersNewsFeed, showAllPreparationRequired);\n\t\t}\n\t}\n\n\t/**\n\t *\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param {IFavNewsFeed} aPersNewsFeed\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * @description Handles the default news feed settings by setting the header text, title, and items.\n\t * It maps the news feed items to set their selected and disabled states based on the personalisation data.\n\t * If no news feed is provided, it returns undefined.\n\t */\n\tprivate _handleDefaultNewsFeed(aNewsFeed: INewsFeed[], aPersNewsFeed: IFavNewsFeed): INewsFeed[] | undefined {\n\t\tthis.headerText.setText(this._i18nBundle.getText(\"defaultNewsSettingsText\"));\n\t\tthis.title.setText(this._i18nBundle.getText(\"defaultNewsSettingsHeading\"));\n\t\tconst mandatoryNewsFeed = this.oNewsPanel.getMandatoryDefaultNewsFeed();\n\t\tthis.deselectedDefaultFeeds = aPersNewsFeed?.items || [];\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\t// if group_id not available in deselectedDefaultFeeds, then mark it as selected\n\t\t\tconst isDeselected = oNewsFeed.group_id ? this.deselectedDefaultFeeds.includes(oNewsFeed.group_id) : false;\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : !isDeselected;\n\t\t\t// if group_id is available in mandatoryNewsFeed, then mark it as disabled, user cannot hide mandatory feeds\n\t\t\tif (mandatoryNewsFeed.includes(oNewsFeed.group_id ?? \"\")) {\n\t\t\t\toNewsFeed.selected = true;\n\t\t\t\toNewsFeed.disabled = true;\n\t\t\t}\n\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.setItems(aNewsFeed);\n\t\tthis.oShowSwitch.setState(false);\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param aPersNewsFeed\n\t * @param showAllPreparationRequired\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * This method is responsible for managing the custom news feed settings in the News Settings Panel.\n\t * It updates the header text and title, checks if the news feed is available, and maps the news feed items to set their selected state.\n\t * If the news feed is not available or empty, it returns undefined.\n\t * It also sets the state of the show switch based on the `showAllPreparationRequired` parameter.\n\t */\n\tprivate _handleCustomNewsFeed(\n\t\taNewsFeed: INewsFeed[],\n\t\taPersNewsFeed: IFavNewsFeed,\n\t\tshowAllPreparationRequired: boolean\n\t): INewsFeed[] | undefined {\n\t\tthis.headerText.setText(this._i18nBundle.getText(\"newsFeedSettingsText\"));\n\t\tthis.title.setText(this._i18nBundle.getText(\"newsFeedSettingsHeading\"));\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst favFeedTitles: string[] = aPersNewsFeed?.items || aNewsFeed;\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\tconst isFavorite = favFeedTitles.includes(oNewsFeed.title);\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : isFavorite;\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.aFavNewsFeed = aNewsFeed;\n\t\tthis.setItems(this.aFavNewsFeed);\n\t\tthis.oShowSwitch.setState(!!showAllPreparationRequired);\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * Checks if the News Settings Panel is supported based on the properties of the News Panel.\n\t *\n\t * @returns {Promise<boolean>} A promise that resolves to true if the News Settings Panel is supported, otherwise false.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst newsPanel = this._getPanel() as NewsPanel;\n\n\t\tif (!newsPanel) {\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\treturn Promise.resolve(\n\t\t\t(newsPanel.getNewsType() === NewsType.Custom || newsPanel.getNewsType() === NewsType.Default) &&\n\t\t\t\t!newsPanel.isNoUpdatesNewsFeed()\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"NewsSettingsPanel.js","names":["sap","ui","define","CheckBox","CustomListItem","HBox","Label","List","Switch","Text","Title","VBox","CustomData","__BaseSettingsPanel","___library","___utils_Accessibility","___utils_Constants","___utils_FESRUtil","__PersonalisationUtils","__UshellPersonalizer","_interopRequireDefault","obj","__esModule","default","BaseSettingsPanel","NewsType","getInvisibleText","SETTINGS_PANELS_KEYS","addFESRSemanticStepName","FESR_EVENTS","PersonalisationUtils","UshellPersonalizer","NewsSettingsPanel","extend","init","_init","BaseSettingsPanel.prototype.init.call","setProperty","NEWS","_i18nBundle","getText","addAggregation","getContent","attachPanelNavigated","loadNewsFeedSettings","aFavNewsFeed","_getContent","oHeader","setHeader","oTitle","setTitleMessage","oContentVBox","getId","alignItems","justifyContent","items","setNewsList","getPersonalization","_getPersonalization","_this","_temp2","oPersonalizer","_temp","Promise","resolve","getInstance","getPersContainerId","_getPanel","getOwnerComponent","then","_UshellPersonalizer$g","e","reject","_setHeader","headerText","text","oHeaderVBox","addStyleClass","_setTitleMessage","title","titleStyle","oTitleHbox","oTitleVBox","_setNewsList","oShowSwitchLabel","oShowSwitch","customTextOn","customTextOff","change","saveNewsFeedSettings","state","ariaLabelledBy","CHANGE","oCustNewsSwitchContainer","width","oShowAllPrep","oInvisibleText","oList","oNewsListVBox","direction","isCSVFileFormat","_isCSVFileFormat","fileName","split","pop","toLowerCase","_saveNewsFeedSettings","_this2","selectedFeeds","deselectedDefaultFeeds","newsType","oNewsPanel","getNewsType","showDefault","Default","customFileName","getProperty","feedKey","getCustomFeedKey","getItems","forEach","item","newsListContent","getAggregation","newsListHBox","checkbox","label","isSelected","getSelected","groupId","getDefaultGroupId","push","personalizer","read","personalizationData","defaultNewsFeed","favNewsFeed","showAllPreparationRequired","getState","write","setState","setCustomNewsFeed","_getDefaultGroupId","contentBox","customData","getCustomData","length","getValue","setItems","_setItems","aItems","destroyAggregation","oItem","i","oNewsListItemHbox","id","select","selected","enabled","disabled","addCustomData","key","value","group_id","customListItem","content","addItem","_loadNewsFeedSettings","_this3","sFeedKey","showDefaultNewsFeed","setVisible","oPersData","aPersNewsFeed","getCustomOrDefaultNewsFeed","aNewsFeed","_handleDefaultNewsFeed","_handleCustomNewsFeed","setText","mandatoryNewsFeed","getMandatoryDefaultNewsFeed","map","oNewsFeed","isDeselected","includes","favFeedTitles","isFavorite","isSupported","_isSupported","_this4","newsPanel","getParent","Custom","isNoUpdatesNewsFeed"],"sources":["NewsSettingsPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport CheckBox from \"sap/m/CheckBox\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport HBox from \"sap/m/HBox\";\nimport Label from \"sap/m/Label\";\nimport List from \"sap/m/List\";\nimport ListItemBase from \"sap/m/ListItemBase\";\nimport Switch from \"sap/m/Switch\";\nimport Text from \"sap/m/Text\";\nimport Title from \"sap/m/Title\";\nimport VBox from \"sap/m/VBox\";\nimport Component from \"sap/ui/core/Component\";\nimport Control from \"sap/ui/core/Control\";\nimport CustomData from \"sap/ui/core/CustomData\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport { NewsType } from \"./library\";\nimport NewsAndPagesContainer from \"./NewsAndPagesContainer\";\nimport NewsPanel, { INewsFeed } from \"./NewsPanel\";\nimport { getInvisibleText } from \"./utils/Accessibility\";\nimport { SETTINGS_PANELS_KEYS } from \"./utils/Constants\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\nimport PersonalisationUtils from \"./utils/PersonalisationUtils\";\nimport UshellPersonalizer from \"./utils/UshellPersonalizer\";\n\ninterface IFavNewsFeed {\n\titems: string[];\n\tshowAllPreparationRequired?: boolean;\n}\n\n/**\n *\n * Class for My Home News Settings Panel.\n *\n * @extends BaseSettingsPanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.NewsSettingsPanel\n */\nexport default class NewsSettingsPanel extends BaseSettingsPanel {\n\tprivate oShowSwitch!: Switch;\n\tprivate oCustNewsSwitchContainer!: HBox;\n\tprivate oList!: List;\n\tprivate oPersonalizer!: UshellPersonalizer;\n\tprivate oNewsPanel!: NewsPanel;\n\tprivate aFavNewsFeed!: INewsFeed[] | string[];\n\tprivate deselectedDefaultFeeds!: string[];\n\tprivate headerText!: Text;\n\tprivate title!: Title;\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup panel\n\t\tthis.setProperty(\"key\", SETTINGS_PANELS_KEYS.NEWS);\n\t\tthis.setProperty(\"title\", this._i18nBundle.getText(\"news\"));\n\t\tthis.setProperty(\"icon\", \"sap-icon://newspaper\");\n\n\t\t//setup layout content\n\t\tthis.addAggregation(\"content\", this.getContent());\n\n\t\t//fired every time on panel navigation\n\t\tthis.attachPanelNavigated(() => {\n\t\t\tvoid this.loadNewsFeedSettings();\n\t\t});\n\t\tthis.aFavNewsFeed = [];\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel.\n\t *\n\t * @private\n\t * @returns {Control} The control containing the News Settings Panel content.\n\t */\n\tprivate getContent(): Control {\n\t\tconst oHeader = this.setHeader();\n\t\tconst oTitle = this.setTitleMessage();\n\t\tconst oContentVBox = new VBox(this.getId() + \"--idNewsPageOuterVBoX\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oHeader, oTitle, this.setNewsList()]\n\t\t});\n\t\treturn oContentVBox;\n\t}\n\n\t/**\n\t * Get personalization instance\n\t */\n\tprivate async getPersonalization() {\n\t\tif (!this.oPersonalizer) {\n\t\t\tthis.oPersonalizer = await UshellPersonalizer.getInstance(\n\t\t\t\tPersonalisationUtils.getPersContainerId(this._getPanel()),\n\t\t\t\tPersonalisationUtils.getOwnerComponent(this._getPanel()) as Component\n\t\t\t);\n\t\t}\n\t\treturn this.oPersonalizer;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Header.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Header content.\n\t */\n\tprivate setHeader() {\n\t\tthis.headerText = new Text(this.getId() + \"--idCustNewsFeedSettingsText\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsText\")\n\t\t});\n\t\tconst oHeaderVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTextContainer\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.headerText]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oHeaderVBox;\n\t}\n\n\t/**\n\t * Returns the content for the News Settings Panel Title description.\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's Title description.\n\t */\n\tprivate setTitleMessage() {\n\t\tthis.title = new Title(this.getId() + \"--idCustNewsFeedSettignsTitle\", {\n\t\t\ttext: this._i18nBundle.getText(\"newsFeedSettingsHeading\"),\n\t\t\ttitleStyle: \"H3\"\n\t\t});\n\t\tconst oTitleHbox = new HBox(this.getId() + \"--idCustNewsFeedSettingsTitleContainer\", {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [this.title]\n\t\t});\n\t\tconst oTitleVBox = new VBox(this.getId() + \"--idCustNewsFeedSettingsTitleVBox\", {\n\t\t\talignItems: \"Start\",\n\t\t\tjustifyContent: \"SpaceBetween\",\n\t\t\titems: [oTitleHbox]\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oTitleVBox;\n\t}\n\n\t/**\n\t * Returns the content for the news List\n\t *\n\t * @private\n\t * @returns {sap.ui.core.Control} The control containing the News Settings Panel's List\n\t */\n\tprivate setNewsList() {\n\t\t//showAllPrepRequired Switch\n\t\tconst oShowSwitchLabel = new Label(this.getId() + \"--idShowAllCustNewsSwitchLabel\", {\n\t\t\ttext: this._i18nBundle.getText(\"showAllPreparationRequiredSwitchLabel\")\n\t\t});\n\t\tthis.oShowSwitch = new Switch(`${this.getId()}-showSwitch`, {\n\t\t\t// 'ariaLabelledBy': \"idShowAllCustNewsSwitchLabel idShowAllCustNewsSwitch\",\n\t\t\tcustomTextOn: \" \",\n\t\t\tcustomTextOff: \" \",\n\t\t\tchange: () => {\n\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t},\n\t\t\t// 'fesr:change': \"showPrepRequire\",\n\t\t\tstate: false,\n\t\t\tariaLabelledBy: [`${this.getId()}--idShowAllCustNewsSwitchLabel`]\n\t\t});\n\t\taddFESRSemanticStepName(this.oShowSwitch, FESR_EVENTS.CHANGE, \"showPrepRequire\");\n\t\tthis.oCustNewsSwitchContainer = new HBox(this.getId() + \"--idShowAllCustNewsSwitchContainer\", {\n\t\t\talignItems: \"Center\",\n\t\t\titems: [oShowSwitchLabel, this.oShowSwitch],\n\t\t\twidth: \"94%\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\n\t\tconst oShowAllPrep = new VBox(this.getId() + \"--idShowAllCustNewsSwitchVBox\", {\n\t\t\titems: [this.oCustNewsSwitchContainer],\n\t\t\twidth: \"94%\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop\");\n\t\tconst oInvisibleText = getInvisibleText(`${this.getId()}--newsTitleText`, this._i18nBundle.getText(\"newsTitle\"));\n\t\t//List of news items\n\t\tthis.oList = new List(this.getId() + \"--idCustNewsFeedList\", {\n\t\t\tariaLabelledBy: [\n\t\t\t\toInvisibleText.getId(),\n\t\t\t\t`${this.getId()}--idCustNewsFeedSettingsText`,\n\t\t\t\t`${this.getId()}--idCustNewsFeedSettignsTitle`\n\t\t\t]\n\t\t});\n\t\t//Outer VBox\n\t\tconst oNewsListVBox = new VBox(this.getId() + \"--idCustNewsFeedListContainer\", {\n\t\t\tdirection: \"Column\",\n\t\t\titems: [this.oList, oShowAllPrep, oInvisibleText],\n\t\t\twidth: \"96%\"\n\t\t}).addStyleClass(\"sapUiSmallMarginTop sapUiSmallMarginBegin\");\n\t\treturn oNewsListVBox;\n\t}\n\n\t/**\n\t * Checks if the custom file format is CSV based on the custom file name.\n\t *\n\t * @param {string} fileName - The custom file name.\n\t * @returns {boolean} True if the file format is CSV, otherwise false.\n\t */\n\tprivate isCSVFileFormat(fileName: string): boolean {\n\t\treturn fileName.split(\".\").pop()?.toLowerCase() === \"csv\";\n\t}\n\n\t/**\n\t *\n\t * Saves news feed settings and shows news feed based on selection change of list of switch\n\t *\n\t * @private\n\t */\n\tprivate async saveNewsFeedSettings(): Promise<void> {\n\t\tconst selectedFeeds: string[] = [];\n\t\tconst deselectedDefaultFeeds: string[] = [];\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefault = newsType === NewsType.Default;\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tconst feedKey = this.oNewsPanel.getCustomFeedKey();\n\n\t\tthis.oList.getItems().forEach((item: ListItemBase) => {\n\t\t\tconst newsListContent = item.getAggregation(\"content\") as Control[];\n\t\t\tconst newsListHBox = newsListContent[0] as HBox;\n\t\t\tconst [checkbox, label] = newsListHBox.getItems() as [CheckBox, Text];\n\t\t\tconst isSelected = checkbox.getSelected();\n\n\t\t\tif (showDefault) {\n\t\t\t\tconst groupId = this.getDefaultGroupId(newsListHBox);\n\t\t\t\tif (!isSelected && groupId) {\n\t\t\t\t\tdeselectedDefaultFeeds.push(groupId);\n\t\t\t\t}\n\t\t\t} else if (isSelected) {\n\t\t\t\tselectedFeeds.push(label.getText());\n\t\t\t}\n\t\t});\n\n\t\tconst personalizer = await this.getPersonalization();\n\t\tconst personalizationData = (await personalizer.read()) || {};\n\n\t\tif (showDefault) {\n\t\t\tpersonalizationData.defaultNewsFeed = { items: deselectedDefaultFeeds };\n\t\t} else {\n\t\t\tpersonalizationData.favNewsFeed = {\n\t\t\t\titems: selectedFeeds,\n\t\t\t\tshowAllPreparationRequired: this.isCSVFileFormat(customFileName) ? false : this.oShowSwitch.getState()\n\t\t\t} as IFavNewsFeed;\n\t\t}\n\n\t\tawait personalizer.write(personalizationData);\n\n\t\t// get the latest value of switch and set the state\n\t\tif (!showDefault) {\n\t\t\tthis.oShowSwitch.setState(personalizationData.favNewsFeed?.showAllPreparationRequired);\n\t\t}\n\t\tawait this.oNewsPanel.setCustomNewsFeed(showDefault ? \"\" : feedKey);\n\t}\n\n\t/** Get groupId info for the default NewsList\n\t * @param {HBox} [contentBox] content Hbox\n\t * @returns {string} groupId\n\t * @private\n\t */\n\tprivate getDefaultGroupId(contentBox: HBox): string {\n\t\tconst customData = contentBox.getCustomData();\n\t\treturn customData?.length ? (customData[0].getValue() as string) : \"\";\n\t}\n\n\t/** Set items for the NewsList\n\t * @param {Array} [aItems] news items to be set as items aggregation\n\t * @private\n\t */\n\tprivate setItems(aItems: INewsFeed[]) {\n\t\tthis.oList.destroyAggregation(\"items\", true);\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tlet showDefault = newsType === NewsType.Default;\n\t\t(aItems || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tlet oNewsListItemHbox = new HBox({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItemContent--${i}`,\n\t\t\t\talignItems: \"Center\",\n\t\t\t\titems: [\n\t\t\t\t\tnew CheckBox(`${this.getId()}--custNewsFeedItemCheckBox--${i}`, {\n\t\t\t\t\t\tselect: () => {\n\t\t\t\t\t\t\tvoid this.saveNewsFeedSettings();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tselected: oItem.selected as boolean,\n\t\t\t\t\t\tenabled: !oItem.disabled\n\t\t\t\t\t}),\n\t\t\t\t\tnew Text(`${this.getId()}--custNewsFeedItemText--${i}`, { text: oItem.title })\n\t\t\t\t],\n\t\t\t\twidth: \"100%\"\n\t\t\t});\n\t\t\tif (showDefault) {\n\t\t\t\t// if showDefault is true, add group_id as custom data to the item\n\t\t\t\toNewsListItemHbox.addCustomData(new CustomData({ key: \"newsGroupId\", value: oItem.group_id }));\n\t\t\t}\n\t\t\tconst customListItem = new CustomListItem({\n\t\t\t\tid: `${this.getId()}--idCustNewsFeedItem--${i}`,\n\t\t\t\tcontent: [oNewsListItemHbox]\n\t\t\t});\n\t\t\tthis.oList.addItem(customListItem);\n\t\t});\n\t}\n\n\t/**\n\t * Loads news feed settings\n\t *\n\t * @returns {Promise} resolves to news feed settings\n\t */\n\tprivate async loadNewsFeedSettings(): Promise<INewsFeed[] | undefined> {\n\t\tthis.oNewsPanel = this._getPanel() as NewsPanel;\n\t\tconst sFeedKey = this.oNewsPanel.getCustomFeedKey();\n\t\tconst newsType = this.oNewsPanel?.getNewsType();\n\t\tconst showDefaultNewsFeed = newsType === NewsType.Default;\n\n\t\tconst customFileName = this.oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tif (this.isCSVFileFormat(customFileName) || showDefaultNewsFeed) {\n\t\t\tthis.oCustNewsSwitchContainer.setVisible(false);\n\t\t}\n\n\t\tconst oPersonalizer = await this.getPersonalization();\n\t\tconst oPersData = await oPersonalizer.read();\n\t\tconst aPersNewsFeed = (showDefaultNewsFeed ? oPersData?.[\"defaultNewsFeed\"] : oPersData?.[\"favNewsFeed\"]) as IFavNewsFeed;\n\t\tconst showAllPreparationRequired = aPersNewsFeed?.showAllPreparationRequired ?? !aPersNewsFeed;\n\n\t\tlet aNewsFeed: INewsFeed[] = await this.oNewsPanel.getCustomOrDefaultNewsFeed(showDefaultNewsFeed ? \"\" : sFeedKey, false);\n\n\t\tif (showDefaultNewsFeed) {\n\t\t\treturn this._handleDefaultNewsFeed(aNewsFeed, aPersNewsFeed);\n\t\t} else {\n\t\t\treturn this._handleCustomNewsFeed(aNewsFeed, aPersNewsFeed, showAllPreparationRequired);\n\t\t}\n\t}\n\n\t/**\n\t *\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param {IFavNewsFeed} aPersNewsFeed\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * @description Handles the default news feed settings by setting the header text, title, and items.\n\t * It maps the news feed items to set their selected and disabled states based on the personalisation data.\n\t * If no news feed is provided, it returns undefined.\n\t */\n\tprivate _handleDefaultNewsFeed(aNewsFeed: INewsFeed[], aPersNewsFeed: IFavNewsFeed): INewsFeed[] | undefined {\n\t\tthis.headerText.setText(this._i18nBundle.getText(\"defaultNewsSettingsText\"));\n\t\tthis.title.setText(this._i18nBundle.getText(\"defaultNewsSettingsHeading\"));\n\t\tconst mandatoryNewsFeed = this.oNewsPanel.getMandatoryDefaultNewsFeed();\n\t\tthis.deselectedDefaultFeeds = aPersNewsFeed?.items || [];\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\t// if group_id not available in deselectedDefaultFeeds, then mark it as selected\n\t\t\tconst isDeselected = oNewsFeed.group_id ? this.deselectedDefaultFeeds.includes(oNewsFeed.group_id) : false;\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : !isDeselected;\n\t\t\t// if group_id is available in mandatoryNewsFeed, then mark it as disabled, user cannot hide mandatory feeds\n\t\t\tif (mandatoryNewsFeed.includes(oNewsFeed.group_id ?? \"\")) {\n\t\t\t\toNewsFeed.selected = true;\n\t\t\t\toNewsFeed.disabled = true;\n\t\t\t}\n\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.setItems(aNewsFeed);\n\t\tthis.oShowSwitch.setState(false);\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * @param {INewsFeed[]} aNewsFeed\n\t * @param aPersNewsFeed\n\t * @param showAllPreparationRequired\n\t * @returns {INewsFeed[] | undefined}\n\t * @private\n\t * This method is responsible for managing the custom news feed settings in the News Settings Panel.\n\t * It updates the header text and title, checks if the news feed is available, and maps the news feed items to set their selected state.\n\t * If the news feed is not available or empty, it returns undefined.\n\t * It also sets the state of the show switch based on the `showAllPreparationRequired` parameter.\n\t */\n\tprivate _handleCustomNewsFeed(\n\t\taNewsFeed: INewsFeed[],\n\t\taPersNewsFeed: IFavNewsFeed,\n\t\tshowAllPreparationRequired: boolean\n\t): INewsFeed[] | undefined {\n\t\tthis.headerText.setText(this._i18nBundle.getText(\"newsFeedSettingsText\"));\n\t\tthis.title.setText(this._i18nBundle.getText(\"newsFeedSettingsHeading\"));\n\n\t\tif (!aNewsFeed || aNewsFeed.length === 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst favFeedTitles: string[] = aPersNewsFeed?.items || aNewsFeed;\n\t\taNewsFeed = aNewsFeed.map((oNewsFeed: INewsFeed) => {\n\t\t\tconst isFavorite = favFeedTitles.includes(oNewsFeed.title);\n\t\t\toNewsFeed.selected = !aPersNewsFeed ? true : isFavorite;\n\t\t\treturn oNewsFeed;\n\t\t});\n\n\t\tthis.aFavNewsFeed = aNewsFeed;\n\t\tthis.setItems(this.aFavNewsFeed);\n\t\tthis.oShowSwitch.setState(!!showAllPreparationRequired);\n\t\treturn aNewsFeed;\n\t}\n\n\t/**\n\t * Checks if the News Settings Panel is supported based on the properties of the News Panel.\n\t *\n\t * @returns {Promise<boolean>} A promise that resolves to true if the News Settings Panel is supported, otherwise false.\n\t */\n\tpublic async isSupported(): Promise<boolean> {\n\t\tconst newsPanel = this._getPanel() as NewsPanel;\n\t\tif (!newsPanel || !(newsPanel?.getParent() as NewsAndPagesContainer).getProperty(\"newsFeedVisibility\")) {\n\t\t\treturn Promise.resolve(false);\n\t\t}\n\n\t\treturn Promise.resolve(\n\t\t\t(newsPanel.getNewsType() === NewsType.Custom || newsPanel.getNewsType() === NewsType.Default) &&\n\t\t\t\t!newsPanel.isNoUpdatesNewsFeed()\n\t\t);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,6 +18,7 @@ import Control from "sap/ui/core/Control";
|
|
|
18
18
|
import CustomData from "sap/ui/core/CustomData";
|
|
19
19
|
import BaseSettingsPanel from "./BaseSettingsPanel";
|
|
20
20
|
import { NewsType } from "./library";
|
|
21
|
+
import NewsAndPagesContainer from "./NewsAndPagesContainer";
|
|
21
22
|
import NewsPanel, { INewsFeed } from "./NewsPanel";
|
|
22
23
|
import { getInvisibleText } from "./utils/Accessibility";
|
|
23
24
|
import { SETTINGS_PANELS_KEYS } from "./utils/Constants";
|
|
@@ -419,8 +420,7 @@ export default class NewsSettingsPanel extends BaseSettingsPanel {
|
|
|
419
420
|
*/
|
|
420
421
|
public async isSupported(): Promise<boolean> {
|
|
421
422
|
const newsPanel = this._getPanel() as NewsPanel;
|
|
422
|
-
|
|
423
|
-
if (!newsPanel) {
|
|
423
|
+
if (!newsPanel || !(newsPanel?.getParent() as NewsAndPagesContainer).getProperty("newsFeedVisibility")) {
|
|
424
424
|
return Promise.resolve(false);
|
|
425
425
|
}
|
|
426
426
|
|
|
@@ -38,8 +38,8 @@ sap.ui.define(["sap/m/Button", "sap/m/IllustratedMessage", "sap/m/IllustratedMes
|
|
|
38
38
|
* @version 0.0.1
|
|
39
39
|
* @since 1.121
|
|
40
40
|
*
|
|
41
|
-
* @
|
|
42
|
-
* @
|
|
41
|
+
* @private
|
|
42
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
43
43
|
*
|
|
44
44
|
* @alias sap.cux.home.NoDataContainer
|
|
45
45
|
*/
|
|
@@ -157,7 +157,7 @@ sap.ui.define(["sap/m/Button", "sap/m/IllustratedMessage", "sap/m/IllustratedMes
|
|
|
157
157
|
|
|
158
158
|
// set up content panel
|
|
159
159
|
const contentPanel = new NoDataContentPanel(`${this.getId()}-noDataContent`);
|
|
160
|
-
contentPanel.
|
|
160
|
+
contentPanel.addContent(wrapper);
|
|
161
161
|
|
|
162
162
|
// add content to the container
|
|
163
163
|
this.addContent(contentPanel);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoDataContainer.js","names":["sap","ui","define","Button","IllustratedMessage","IllustratedMessageSize","IllustratedMessageType","VBox","__BaseContainer","__BaseContainerRenderer","__BasePanel","___library","_interopRequireDefault","obj","__esModule","default","BaseContainer","BaseContainerRenderer","BasePanel","OrientationType","NoDataContentPanel","init","setProperty","NoDataContainer","extend","renderer","apiVersion","metadata","library","properties","width","type","group","defaultValue","visibility","height","orientation","Vertical","enableSettings","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","_init","BaseContainer.prototype.init.call","addStyleClass","onBeforeRendering","_onBeforeRendering","content","getContent","length","_setupDefaultContent","BaseContainer.prototype.onBeforeRendering.call","illustratedMessage","getId","illustrationSize","Large","illustrationType","NoEntries","title","_i18nBundle","getText","ariaTitleLevel","description","editMyHomeButton","text","press","getParent","openSettingsDialog","insertAdditionalContent","wrapper","alignItems","justifyContent","renderType","items","visible","contentPanel","
|
|
1
|
+
{"version":3,"file":"NoDataContainer.js","names":["sap","ui","define","Button","IllustratedMessage","IllustratedMessageSize","IllustratedMessageType","VBox","__BaseContainer","__BaseContainerRenderer","__BasePanel","___library","_interopRequireDefault","obj","__esModule","default","BaseContainer","BaseContainerRenderer","BasePanel","OrientationType","NoDataContentPanel","init","setProperty","NoDataContainer","extend","renderer","apiVersion","metadata","library","properties","width","type","group","defaultValue","visibility","height","orientation","Vertical","enableSettings","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","_init","BaseContainer.prototype.init.call","addStyleClass","onBeforeRendering","_onBeforeRendering","content","getContent","length","_setupDefaultContent","BaseContainer.prototype.onBeforeRendering.call","illustratedMessage","getId","illustrationSize","Large","illustrationType","NoEntries","title","_i18nBundle","getText","ariaTitleLevel","description","editMyHomeButton","text","press","getParent","openSettingsDialog","insertAdditionalContent","wrapper","alignItems","justifyContent","renderType","items","visible","contentPanel","addContent"],"sources":["NoDataContainer.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\nimport Button from \"sap/m/Button\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport VBox from \"sap/m/VBox\";\nimport { MetadataOptions } from \"sap/ui/core/Element\";\nimport type { $BaseContainerSettings } from \"./BaseContainer\";\nimport BaseContainer from \"./BaseContainer\";\nimport BaseContainerRenderer from \"./BaseContainerRenderer\";\nimport BasePanel from \"./BasePanel\";\nimport Layout from \"./Layout\";\nimport { OrientationType } from \"./library\";\n\n/**\n *\n * Panel class to show no data content.\n *\n */\nclass NoDataContentPanel extends BasePanel {\n\t/**\n\t * Init lifecycle method\n\t *\n\t */\n\tpublic init() {\n\t\tsuper.init();\n\t\tthis.setProperty(\"enableSettings\", false);\n\t}\n}\n\n/**\n *\n * Container class to show no data content.\n *\n * @extends BaseContainer\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.NoDataContainer\n */\nexport default class NoDataContainer extends BaseContainer {\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Width of the container. Default value is 100%.\n\t\t\t */\n\t\t\twidth: { type: \"sap.ui.core.CSSSize\", group: \"Dimension\", defaultValue: \"100%\", visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Height of the container. Default value is 100%.\n\t\t\t */\n\t\t\theight: { type: \"sap.ui.core.CSSSize\", group: \"Dimension\", defaultValue: \"100%\", visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Orientation of the container. Default value is Vertical.\n\t\t\t */\n\t\t\torientation: {\n\t\t\t\ttype: \"sap.cux.home.OrientationType\",\n\t\t\t\tgroup: \"Data\",\n\t\t\t\tdefaultValue: OrientationType.Vertical,\n\t\t\t\tvisibility: \"hidden\"\n\t\t\t},\n\t\t\t/**\n\t\t\t * Enable my home settings. Default value is false.\n\t\t\t */\n\t\t\tenableSettings: { type: \"boolean\", group: \"Behavior\", defaultValue: false, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\tstatic renderer = {\n\t\t...BaseContainerRenderer,\n\t\tapiVersion: 2\n\t};\n\n\tconstructor(id?: string | $BaseContainerSettings);\n\tconstructor(id?: string, settings?: $BaseContainerSettings);\n\t/**\n\t * Constructor for a new NoData 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 */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis.addStyleClass(\"sapCuxNoDataContainer\");\n\t\tthis.addStyleClass(\"sapCuxNoMarginBottom\");\n\t}\n\n\t/**\n\t * onBeforeRendering lifecycle method\n\t *\n\t * @private\n\t */\n\tpublic onBeforeRendering(): void {\n\t\t// If no content is set, set up default content\n\t\tconst content = this.getContent();\n\t\tif (content?.length === 0) {\n\t\t\tthis._setupDefaultContent();\n\t\t}\n\n\t\tsuper.onBeforeRendering();\n\t}\n\n\t/**\n\t * Set up default no-data content for the container.\n\t *\n\t * @private\n\t */\n\tprivate _setupDefaultContent(): void {\n\t\t// set up default inner illustrated message\n\t\tconst illustratedMessage = new IllustratedMessage(this.getId() + \"-noDataMessage\", {\n\t\t\tillustrationSize: IllustratedMessageSize.Large,\n\t\t\tillustrationType: IllustratedMessageType.NoEntries,\n\t\t\ttitle: this._i18nBundle.getText(\"noSectionTitle\"),\n\t\t\tariaTitleLevel: \"H2\",\n\t\t\tdescription: this._i18nBundle.getText(\"noSectionDescription\")\n\t\t}).addStyleClass(\"myHomeIllustratedMsg\");\n\n\t\t// set up button to edit my home\n\t\tconst editMyHomeButton = new Button(this.getId() + \"-editMyHomeBtn\", {\n\t\t\ttext: this._i18nBundle.getText(\"noSectionButton\"),\n\t\t\ttype: \"Emphasized\",\n\t\t\tpress: () => {\n\t\t\t\tvoid (this.getParent() as Layout)?.openSettingsDialog();\n\t\t\t}\n\t\t});\n\t\tillustratedMessage.insertAdditionalContent(editMyHomeButton, 0);\n\n\t\t// set up no-data content wrapper\n\t\tconst wrapper = new VBox(this.getId() + \"-noDataWrapper\", {\n\t\t\talignItems: \"Center\",\n\t\t\tjustifyContent: \"Center\",\n\t\t\trenderType: \"Bare\",\n\t\t\titems: [illustratedMessage],\n\t\t\tvisible: true\n\t\t});\n\n\t\t// set up content panel\n\t\tconst contentPanel = new NoDataContentPanel(`${this.getId()}-noDataContent`);\n\t\tcontentPanel.addContent(wrapper);\n\n\t\t// add content to the container\n\t\tthis.addContent(contentPanel);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -41,8 +41,8 @@ class NoDataContentPanel extends BasePanel {
|
|
|
41
41
|
* @version 0.0.1
|
|
42
42
|
* @since 1.121
|
|
43
43
|
*
|
|
44
|
-
* @
|
|
45
|
-
* @
|
|
44
|
+
* @private
|
|
45
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
46
46
|
*
|
|
47
47
|
* @alias sap.cux.home.NoDataContainer
|
|
48
48
|
*/
|
|
@@ -153,7 +153,7 @@ export default class NoDataContainer extends BaseContainer {
|
|
|
153
153
|
|
|
154
154
|
// set up content panel
|
|
155
155
|
const contentPanel = new NoDataContentPanel(`${this.getId()}-noDataContent`);
|
|
156
|
-
contentPanel.
|
|
156
|
+
contentPanel.addContent(wrapper);
|
|
157
157
|
|
|
158
158
|
// add content to the container
|
|
159
159
|
this.addContent(contentPanel);
|
|
@@ -62,14 +62,15 @@ declare module "sap/cux/home/PagePanel" {
|
|
|
62
62
|
* @version 0.0.1
|
|
63
63
|
* @since 1.122
|
|
64
64
|
*
|
|
65
|
-
* @
|
|
66
|
-
* @
|
|
65
|
+
* @private
|
|
66
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
67
67
|
*
|
|
68
68
|
* @alias sap.cux.home.PagePanel
|
|
69
69
|
*/
|
|
70
70
|
export default class PagePanel extends BasePagePanel {
|
|
71
71
|
static readonly metadata: MetadataOptions;
|
|
72
72
|
private _oWrapperFlexBox;
|
|
73
|
+
private _pageWrapper;
|
|
73
74
|
private oPagePromise;
|
|
74
75
|
private pageManagerInstance;
|
|
75
76
|
private aFavPages;
|
|
@@ -101,7 +102,7 @@ declare module "sap/cux/home/PagePanel" {
|
|
|
101
102
|
* @private
|
|
102
103
|
*/
|
|
103
104
|
private getPlaceholderPageTiles;
|
|
104
|
-
attachResizeHandler(isNewsTileVisible: boolean, containerWidth: number, pagesContentWrapper: FlexBox
|
|
105
|
+
attachResizeHandler(isNewsTileVisible: boolean, containerWidth: number, pagesContentWrapper: FlexBox): void;
|
|
105
106
|
getUserAvailablePages(): Promise<IPage[]>;
|
|
106
107
|
private calculatePagesPerRow;
|
|
107
108
|
private _getInnerControls;
|
|
@@ -133,6 +134,13 @@ declare module "sap/cux/home/PagePanel" {
|
|
|
133
134
|
applyColorPersonalizations(personalizations: Array<ISpacePagePersonalization>): void;
|
|
134
135
|
applyIconPersonalizations(personalizations: Array<ISpacePagePersonalization>): void;
|
|
135
136
|
private _getPageManagerInstance;
|
|
137
|
+
/**
|
|
138
|
+
* Returns the wrapper FlexBox for the page panel.
|
|
139
|
+
*
|
|
140
|
+
* @returns {sap.m.FlexBox} The FlexBox that wraps the pages.
|
|
141
|
+
* @private
|
|
142
|
+
*/
|
|
143
|
+
getPageWrapper(): FlexBox;
|
|
136
144
|
}
|
|
137
145
|
}
|
|
138
146
|
//# sourceMappingURL=PagePanel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PagePanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/PagePanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAOxC,OAAO,OAAO,EAAE,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;IAU1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAIvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;IACpF,OAAO,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;IAWlE,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;KAsBd,CAAC;IAEF,MAAM,kBAAkB,IAAI,CAAC;IAC7B,MAAM,YAAY,IAAI,CAAC;IACvB,MAAM,WAAW,IAAI,CAAC;IAEtB;;;;;;;;;;;;OAYG;IACH,MAAM,aAAc,SAAQ,OAAO;oBACtB,YAAY,CAAC,EAAE,MAAM,GAAG,gBAAgB;oBACxC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gBAAgB;QAKpD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;UAEb;KACF;IAED;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,aAAa;QACnD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAkBvC;QACF,OAAO,CAAC,gBAAgB,CAAiB;QACzC,OAAO,CAAC,YAAY,CAA2B;QAC/C,OAAO,CAAC,mBAAmB,CAAe;QAC1C,OAAO,CAAC,SAAS,CAAW;QAC5B,OAAO,CAAC,cAAc,CAAiB;QACvC,OAAO,CAAC,UAAU,CAAsB;QACxC,OAAO,CAAC,kBAAkB,CAAQ;QAClC,OAAO,CAAC,WAAW,CAAU;QAC7B,OAAO,CAAC,aAAa,CAAsB;QAC3C,OAAO,CAAC,SAAS,CAAY;QAE7B;;;;;WAKG;oBACgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAIjE,IAAI;
|
|
1
|
+
{"version":3,"file":"PagePanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/PagePanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAOxC,OAAO,OAAO,EAAE,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;IAU1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAIvD,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;IACpF,OAAO,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;IAWlE,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;KAsBd,CAAC;IAEF,MAAM,kBAAkB,IAAI,CAAC;IAC7B,MAAM,YAAY,IAAI,CAAC;IACvB,MAAM,WAAW,IAAI,CAAC;IAEtB;;;;;;;;;;;;OAYG;IACH,MAAM,aAAc,SAAQ,OAAO;oBACtB,YAAY,CAAC,EAAE,MAAM,GAAG,gBAAgB;oBACxC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,gBAAgB;QAKpD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;UAEb;KACF;IAED;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,aAAa;QACnD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAkBvC;QACF,OAAO,CAAC,gBAAgB,CAAiB;QACzC,OAAO,CAAC,YAAY,CAAQ;QAC5B,OAAO,CAAC,YAAY,CAA2B;QAC/C,OAAO,CAAC,mBAAmB,CAAe;QAC1C,OAAO,CAAC,SAAS,CAAW;QAC5B,OAAO,CAAC,cAAc,CAAiB;QACvC,OAAO,CAAC,UAAU,CAAsB;QACxC,OAAO,CAAC,kBAAkB,CAAQ;QAClC,OAAO,CAAC,WAAW,CAAU;QAC7B,OAAO,CAAC,aAAa,CAAsB;QAC3C,OAAO,CAAC,SAAS,CAAY;QAE7B;;;;;WAKG;oBACgB,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAIjE,IAAI;QAiDJ,OAAO,CAAC,WAAW;QAKN,OAAO,CAAC,WAAW,GAAE,OAAe;QAYjD;;;;;WAKG;QACH,OAAO,CAAC,gBAAgB;QAKxB;;;WAGG;QACH,OAAO,CAAC,uBAAuB;QAiBxB,mBAAmB,CACzB,iBAAiB,EAAE,OAAO,EAC1B,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,OAAO,GAC1B,IAAI;QAqDM,qBAAqB;QAIlC,OAAO,CAAC,oBAAoB;QAoB5B,OAAO,CAAC,iBAAiB;QAqEzB,OAAO,CAAC,mBAAmB;QAQ3B,OAAO,CAAC,oBAAoB;QAkB5B,OAAO,CAAC,iBAAiB;QAiBzB,OAAO,CAAC,kBAAkB;gBAaZ,cAAc;gBAkBd,eAAe;QAe7B;;;;;;;;WAQG;QACH,OAAO,CAAC,eAAe;QASvB;;;;;;;WAOG;gBACW,qBAAqB;QAc5B,0BAA0B,CAAC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAI7E,yBAAyB,CAAC,gBAAgB,EAAE,KAAK,CAAC,yBAAyB,CAAC;QAInF,OAAO,CAAC,uBAAuB;QAK/B;;;;;WAKG;QACI,cAAc,IAAI,OAAO;KAGhC;CAEA"}
|
|
@@ -29,7 +29,7 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
|
|
|
29
29
|
minWidth: 8
|
|
30
30
|
},
|
|
31
31
|
Tablet: {
|
|
32
|
-
maxWidth:
|
|
32
|
+
maxWidth: 60,
|
|
33
33
|
minWidth: 10.625
|
|
34
34
|
},
|
|
35
35
|
Desktop: {
|
|
@@ -95,8 +95,8 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
|
|
|
95
95
|
* @version 0.0.1
|
|
96
96
|
* @since 1.122
|
|
97
97
|
*
|
|
98
|
-
* @
|
|
99
|
-
* @
|
|
98
|
+
* @private
|
|
99
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
100
100
|
*
|
|
101
101
|
* @alias sap.cux.home.PagePanel
|
|
102
102
|
*/
|
|
@@ -154,7 +154,10 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
|
|
|
154
154
|
wrap: "Wrap",
|
|
155
155
|
items: this.getPlaceholderPageTiles()
|
|
156
156
|
}).addStyleClass("pagesFlexGap sapUiSmallMarginTop sapCuxPagesWrapper");
|
|
157
|
-
this.
|
|
157
|
+
this._pageWrapper = new VBox(`${this.getId()}-pageContentWrapper`, {
|
|
158
|
+
items: [this._oWrapperFlexBox]
|
|
159
|
+
});
|
|
160
|
+
this.addContent(this._pageWrapper);
|
|
158
161
|
this.setProperty("title", this._i18nBundle.getText("pageTitle"));
|
|
159
162
|
const menuItem = new MenuItem(`${this.getId()}-managePages`, {
|
|
160
163
|
title: this._i18nBundle.getText("mngPage"),
|
|
@@ -240,7 +243,7 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
|
|
|
240
243
|
});
|
|
241
244
|
return placeholderTiles;
|
|
242
245
|
},
|
|
243
|
-
attachResizeHandler: function _attachResizeHandler(isNewsTileVisible, containerWidth, pagesContentWrapper
|
|
246
|
+
attachResizeHandler: function _attachResizeHandler(isNewsTileVisible, containerWidth, pagesContentWrapper) {
|
|
244
247
|
try {
|
|
245
248
|
const favPagesCount = this.aFavPages?.length,
|
|
246
249
|
deviceType = this.getDeviceType();
|
|
@@ -256,7 +259,6 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
|
|
|
256
259
|
finalTilesWidth,
|
|
257
260
|
wrapperWidth = domRefClientWidth / 16; // Divide by 16 to convert to rem,
|
|
258
261
|
const gap = 1;
|
|
259
|
-
containerWrapper.setAlignItems("Start");
|
|
260
262
|
pagesContentWrapper.setWidth("100%");
|
|
261
263
|
if (favPagesCount > 0) {
|
|
262
264
|
const pagesPerRow = this.calculatePagesPerRow(favPagesCount, isNewsTileVisible);
|
|
@@ -536,6 +538,15 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/GenericTile", "sap/m/Illu
|
|
|
536
538
|
_getPageManagerInstance: function _getPageManagerInstance() {
|
|
537
539
|
this.pageManagerInstance = this.pageManagerInstance || getPageManagerInstance(this);
|
|
538
540
|
return this.pageManagerInstance;
|
|
541
|
+
},
|
|
542
|
+
/**
|
|
543
|
+
* Returns the wrapper FlexBox for the page panel.
|
|
544
|
+
*
|
|
545
|
+
* @returns {sap.m.FlexBox} The FlexBox that wraps the pages.
|
|
546
|
+
* @private
|
|
547
|
+
*/
|
|
548
|
+
getPageWrapper: function _getPageWrapper() {
|
|
549
|
+
return this._oWrapperFlexBox;
|
|
539
550
|
}
|
|
540
551
|
});
|
|
541
552
|
return PagePanel;
|