@sapui5/sap.cux.home 1.139.0 → 1.141.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 +116 -64
- package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.ts +50 -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/AppsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.js +5 -1
- package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.ts +5 -1
- 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 +16 -24
- package/src/sap/cux/home/AppsContainer.js.map +1 -1
- package/src/sap/cux/home/AppsContainer.ts +16 -23
- 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 +22 -2
- package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.ts +16 -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 +11 -5
- 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 +11 -2
- package/src/sap/cux/home/BaseSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.js +15 -2
- package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.ts +17 -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 +15 -7
- package/src/sap/cux/home/CardsPanel.js.map +1 -1
- package/src/sap/cux/home/CardsPanel.ts +11 -7
- 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 +15 -5
- package/src/sap/cux/home/ErrorPanel.js.map +1 -1
- package/src/sap/cux/home/ErrorPanel.ts +11 -5
- package/src/sap/cux/home/FavAppPanel.d.ts +6 -2
- package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/FavAppPanel.js +196 -154
- package/src/sap/cux/home/FavAppPanel.js.map +1 -1
- package/src/sap/cux/home/FavAppPanel.ts +59 -37
- 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 +8 -13
- package/src/sap/cux/home/InsightsContainer.js.map +1 -1
- package/src/sap/cux/home/InsightsContainer.ts +7 -12
- 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 +23 -16
- package/src/sap/cux/home/NewsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsPanel.ts +24 -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 +21 -7
- package/src/sap/cux/home/PagePanel.js.map +1 -1
- package/src/sap/cux/home/PagePanel.ts +22 -8
- 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/SettingsDialog.d.ts +1 -0
- package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
- package/src/sap/cux/home/SettingsDialog.js +13 -6
- package/src/sap/cux/home/SettingsDialog.js.map +1 -1
- package/src/sap/cux/home/SettingsDialog.ts +14 -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 +84 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.js.map +1 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.ts +88 -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 -8
- package/src/sap/cux/home/i18n/messagebundle_bg.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_ca.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_cnr.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_cs.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_cy.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_da.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_de.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_el.properties +18 -14
- package/src/sap/cux/home/i18n/messagebundle_en.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +5 -7
- package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +5 -7
- package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_es.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_et.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_fi.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_fr.properties +14 -10
- package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_hi.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_hr.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_hu.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_id.properties +16 -12
- package/src/sap/cux/home/i18n/messagebundle_it.properties +13 -9
- package/src/sap/cux/home/i18n/messagebundle_iw.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_ja.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_kk.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_ko.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_lt.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_lv.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_mk.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_ms.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_nl.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_no.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_pl.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_pt.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_ro.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_ru.properties +22 -18
- package/src/sap/cux/home/i18n/messagebundle_sh.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_sk.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_sl.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_sr.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_sv.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_th.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_tr.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_uk.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_vi.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +12 -8
- package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +12 -8
- 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 +11 -6
- package/src/sap/cux/home/library.js.map +1 -1
- package/src/sap/cux/home/library.ts +11 -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/AppManager.d.ts +7 -6
- package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
- package/src/sap/cux/home/utils/AppManager.js +1 -1
- package/src/sap/cux/home/utils/AppManager.js.map +1 -1
- package/src/sap/cux/home/utils/AppManager.ts +9 -10
- package/src/sap/cux/home/utils/BatchHelper.d.ts.map +1 -1
- package/src/sap/cux/home/utils/BatchHelper.js +1 -1
- package/src/sap/cux/home/utils/BatchHelper.js.map +1 -1
- package/src/sap/cux/home/utils/BatchHelper.ts +4 -1
- 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 +1 -1
- package/src/sap/cux/home/utils/UshellPersonalizer.js.map +1 -1
- package/src/sap/cux/home/utils/UshellPersonalizer.ts +1 -2
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToDoPanel.js","names":["sap","ui","define","Log","Card","GridContainer","GridContainerSettings","Button","GenericTile","HeaderContainer","IllustratedMessage","IllustratedMessageSize","Text","TileContent","VBox","sap_m_library","Device","UI5Element","InvisibleText","DateFormat","JSONModel","__BasePanel","__MenuItem","__ToDosContainer","__BatchHelper","___utils_Device","___utils_FESRUtil","__HttpHelper","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","Priority","_finallyRethrows","finalizer","bind","URLHelper","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","BasePanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","MenuItem","ToDosContainer","BatchHelper","calculateCardWidth","DeviceType","fetchElementProperties","addFESRId","HttpHelper","Constants","SITUATION_ICON","PLACEHOLDER_ITEMS_COUNT","TODO_CARDS_LIMIT","TODO_SECTION_LIMIT","TODOS_REFRESH_INTERVAL","MOBILE_DEVICE_MAX_WIDTH","DEFAULT_TITLE_HEIGHT","DEFAULT_CARD_HEIGHT","DEFAULT_TAB_HEADER_HEIGHT","GAP","ToDoPanel","extend","metadata","library","properties","baseUrl","type","group","defaultValue","visibility","countUrl","dataUrl","targetAppUrl","minCardWidth","maxCardWidth","useBatch","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","batchHelper","init","_init","BasePanel.prototype.init.call","_oData","isLoaded","hasError","cardWidth","getSupported","isExpandedOnce","isCountCalledOnce","illustrationType","refreshInfo","_toRelativeDateTime","Date","fullRefreshInfo","_toFullRelativeDateTime","horizontalCardCount","illustrationTitle","_i18nBundle","getText","illustrationDescription","isPhone","resize","width","system","phone","tiles","Array","fill","loadState","displayTiles","_controlModel","requests","_toDoWrapper","getId","renderType","items","_generateCardContainer","_generateMobileCardContainer","_generateErrorMessage","setModel","_addContent","menuItem","title","icon","press","_onPressRefresh","addAggregation","_accRefreshLabel","text","addDependent","_refreshBtn","addAriaLabelledBy","setProperty","attachEvent","Promise","resolve","_beforePanelExpand","_cardContainer","inlineBlockLayout","snapToRow","visible","layout","columns","columnSize","gap","addStyleClass","_mobileCardContainer","scrollStep","gridLayout","scrollTime","showDividers","_errorCard","_errorMessage","illustrationSize","Base","description","content","getParent","_getSelectedPanel","_loadCards","forceRefresh","_this2","_loadToDos","undefined","_bindInnerControls","selectedKey","getProperty","_isElementExpanded","_setCount","_getSupported","setTimeout","_generatePlaceHolderTiles","_generateRequestObject","onlyCount","concat","_submitBatch","fireEvent","_setSectionRefreshInterval","lastRefreshedTime","_updateRefreshInformation","_switchTabIfRequired","_updateHeaderIfExclusive","catch","error","Error","message","finally","refresh","_adjustLayout","_handleError","getTargetAppUrl","removeContent","_isExclusivePanel","_setTitle","String","_innerControlsBound","bindAggregation","path","factory","context","generateCardTemplate","bindProperty","_generateCardTemplate","mode","frameType","pressEnabled","header","tileContent","priority","priorityText","_toPriorityText","footer","key","VeryHigh","High","Medium","Low","_cardCount","_getVisibleCardCount","isPlaceholder","calculationProperties","_getLayout","isElementExpanded","targetDomRef","getDomRef","isHeaderVisible","containerDomRef","_getFullScreenContainer","sectionNodeIndex","childNodes","isMobileDevice","cardCount","getHorizontalCardCount","getVerticalCardCount","toDosContainer","_getCurrentExpandedElementName","_getHorizontalCardCount","domRef","domProperties","availableWidth","Object","slice","reduce","propertyValue","actualCardCount","minWidth","maxWidth","cardLayoutConfig","containerWidth","totalCards","Math","max","floor","_getVerticalCardCount","sectionDomProperties","parentDomProperties","parentElement","titleHeight","calculateTitleHeight","availableHeight","height","margin","cardHeight","verticalCardCount","_calculateTitleHeight","container","containerHeaderRef","getElementById","iconTabBarHeaderRef","_getInnerControl","defaultHeight","clientHeight","options","_this3","getCountUrl","urls","generateRequestUrls","splice","baseURL","getBaseUrl","requestURLs","success","args","onDataReceived","Number","_handleEmptyCards","_generateRequestUrls","getDataUrl","queryString","includes","_onDataReceived","results","_this4","getNoDataText","allPanels","getContent","supportedPanels","filter","panel","clearInterval","refreshFn","setInterval","setAggregation","_updateContainerHeader","displayCards","getDeviceType","Mobile","toggleFullScreenElements","date","inputDate","isNaN","relativeDateFormatter","format","fullRelativeDateFormatter","_getNoDataText","_parseResponse","response","d","numericD","numericResponse","_this5","all","map","request","createMultipartRequest","GetMultipleRequests","responses","processedResponses","JSON","parse","_temp","_wasThrown","_result","_clearRequests","_isLoaded","parentContainer","isContainerExpanded","_setLoaded","_setSupported","isSupported","_getAppIntent","pattern","match","semanticObject","action","params","paramsArray","split","param","_this6","_interrupt","_temp5","_temp3","nextAvailablePanel","panels","getAggregation","_temp4","_temp2","_getCardCount","_onPressViewAll","redirect","_this7","_temp6","exit","_exit","getDateTimeInstance","style","relative","relativeStyle"],"sources":["ToDoPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport Card from \"sap/f/Card\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport Text from \"sap/m/Text\";\nimport TileContent from \"sap/m/TileContent\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState, Priority, URLHelper } from \"sap/m/library\";\nimport Device from \"sap/ui/Device\";\nimport ManagedObject from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport InvisibleText from \"sap/ui/core/InvisibleText\";\nimport DateFormat from \"sap/ui/core/format/DateFormat\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport IToDoPanel from \"./IToDoPanel\";\nimport MenuItem from \"./MenuItem\";\nimport { $ToDoPanelSettings } from \"./ToDoPanel\";\nimport ToDosContainer from \"./ToDosContainer\";\nimport BatchHelper from \"./utils/BatchHelper\";\nimport { calculateCardWidth, DeviceType, fetchElementProperties } from \"./utils/Device\";\nimport { addFESRId } from \"./utils/FESRUtil\";\nimport HttpHelper from \"./utils/HttpHelper\";\n\ninterface Request {\n\tbaseURL: string;\n\trequestURLs: string[];\n\tsuccess(args: unknown[]): Promise<void>;\n}\n\nexport interface CalculationProperties {\n\tisPlaceholder?: boolean;\n}\n\nexport interface Intent {\n\ttarget: {\n\t\tsemanticObject: string;\n\t\taction: string;\n\t};\n\tparams: {\n\t\t[key: string]: string;\n\t};\n}\n\nexport interface RequestOptions {\n\ttype: string;\n\tonlyCount?: boolean;\n}\n\nexport interface Response {\n\td?: {\n\t\tresults?: unknown[];\n\t};\n\tresults?: unknown[];\n\tvalue?: unknown[];\n}\n\nconst Constants = {\n\tSITUATION_ICON: \"sap-icon://message-warning\",\n\tPLACEHOLDER_ITEMS_COUNT: 5,\n\tTODO_CARDS_LIMIT: 100,\n\tTODO_SECTION_LIMIT: 6,\n\tTODOS_REFRESH_INTERVAL: 65000,\n\tMOBILE_DEVICE_MAX_WIDTH: 600,\n\tDEFAULT_TITLE_HEIGHT: 33,\n\tDEFAULT_CARD_HEIGHT: 168,\n\tDEFAULT_TAB_HEADER_HEIGHT: 44,\n\tGAP: 16\n};\n\n/**\n *\n * Abstract Panel class for managing and storing To-Do cards.\n *\n * @extends BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @abstract\n * @internal\n * @public\n *\n * @alias sap.cux.home.ToDoPanel\n */\nexport default abstract class ToDoPanel extends BasePanel implements IToDoPanel {\n\tprotected _oData!: Record<string, unknown>;\n\tprotected requests!: Request[];\n\tprivate _controlModel!: JSONModel;\n\tprivate _toDoWrapper!: VBox;\n\tprivate _cardContainer!: GridContainer;\n\tprivate _mobileCardContainer!: HeaderContainer;\n\tprivate _errorCard!: Card;\n\tprivate _errorMessage!: IllustratedMessage;\n\tprivate _refreshBtn!: Button;\n\tprivate _loadToDos!: Promise<void> | undefined;\n\tprivate _innerControlsBound!: boolean;\n\tprivate _cardCount!: number;\n\tprivate batchHelper!: BatchHelper;\n\tprivate _accRefreshLabel!: InvisibleText;\n\n\tconstructor(id?: string | $ToDoPanelSettings);\n\tconstructor(id?: string, settings?: $ToDoPanelSettings);\n\t/**\n\t * Constructor for a new To-Dos Panel.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $ToDoPanelSettings) {\n\t\tsuper(id, settings);\n\t\tthis.batchHelper = new BatchHelper();\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the base URL for batching requests sent from the panel.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tbaseUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL for fetching the count of requested to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tcountUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL from where the to-do cards should be fetched.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tdataUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL of the target application associated with the to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\ttargetAppUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the minimum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tminCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 304, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies the maximum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tmaxCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 583, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies whether the panel should batch requests.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tuseBatch: { type: \"boolean\", group: \"Misc\", defaultValue: true, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\tstatic fullRelativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"long\",\n\t\trelative: true,\n\t\trelativeStyle: \"wide\"\n\t});\n\n\tstatic relativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"medium\",\n\t\trelative: true,\n\t\trelativeStyle: \"short\"\n\t});\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//Initialise ToDos Model\n\t\tthis._oData = {\n\t\t\tlength: 0,\n\t\t\tisLoaded: false,\n\t\t\thasError: false,\n\t\t\tcardWidth: \"20rem\",\n\t\t\tgetSupported: false,\n\t\t\tisExpandedOnce: false,\n\t\t\tisCountCalledOnce: false,\n\t\t\tillustrationType: \"sapIllus-NoTasks\",\n\t\t\trefreshInfo: this._toRelativeDateTime(new Date()),\n\t\t\tfullRefreshInfo: this._toFullRelativeDateTime(new Date()),\n\t\t\thorizontalCardCount: Constants.PLACEHOLDER_ITEMS_COUNT,\n\t\t\tillustrationTitle: this._i18nBundle.getText(\"noToDoTitle\"),\n\t\t\tillustrationDescription: this._i18nBundle.getText(\"noToDoDesc\"),\n\t\t\tisPhone: Device.resize.width < Constants.MOBILE_DEVICE_MAX_WIDTH || Device.system.phone,\n\t\t\ttiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" }),\n\t\t\tdisplayTiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" })\n\t\t};\n\t\tthis._controlModel = new JSONModel(this._oData);\n\n\t\t//Initialize Request Queue\n\t\tthis.requests = [];\n\n\t\t//Add Wrapper Container to Panel\n\t\tthis._toDoWrapper = new VBox(`${this.getId()}-toDosWrapper`, {\n\t\t\trenderType: \"Bare\",\n\t\t\titems: [this._generateCardContainer(), this._generateMobileCardContainer(), this._generateErrorMessage()]\n\t\t});\n\t\tthis._toDoWrapper.setModel(this._controlModel);\n\t\tthis._addContent(this._toDoWrapper);\n\n\t\t//Setup Common Menu Items\n\t\tconst menuItem = new MenuItem(`${this.getId()}-refresh`, {\n\t\t\ttitle: this._i18nBundle.getText(\"refresh\"),\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis.addAggregation(\"menuItems\", menuItem);\n\t\taddFESRId(menuItem, \"todosRefresh\");\n\n\t\tthis._accRefreshLabel = new InvisibleText(`${this.getId()}-refreshAccText`, {\n\t\t\ttext: this._toFullRelativeDateTime(new Date())\n\t\t});\n\t\tthis.addDependent(this._accRefreshLabel);\n\t\tthis._refreshBtn = new Button(`${this.getId()}-refreshBtn`, {\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\ttext: this._toRelativeDateTime(new Date()),\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis._refreshBtn.addAriaLabelledBy(this._accRefreshLabel);\n\t\taddFESRId(this._refreshBtn, \"manualTodoRefresh\");\n\t\tthis.addAggregation(\"actionButtons\", this._refreshBtn);\n\n\t\t//Configure Full Screen and Expand Event handlers\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t\tthis.attachEvent(\"onExpand\", async () => {\n\t\t\tawait this._beforePanelExpand();\n\t\t});\n\t}\n\n\t/**\n\t * Generates the card container (GridContainer) for displaying cards.\n\t *\n\t * @private\n\t * @returns {GridContainer} The generated card container.\n\t */\n\tprivate _generateCardContainer(): GridContainer {\n\t\t//create container\n\t\tif (!this._cardContainer) {\n\t\t\tthis._cardContainer = new GridContainer(`${this.getId()}-flexContainer`, {\n\t\t\t\tinlineBlockLayout: true,\n\t\t\t\tsnapToRow: true,\n\t\t\t\tvisible: \"{= !${/isPhone} && !${/hasError} && (!${/isLoaded} || ${/length} > 0) }\",\n\t\t\t\tlayout: new GridContainerSettings(`${this.getId()}-layout`, {\n\t\t\t\t\tcolumns: \"{/horizontalCardCount}\",\n\t\t\t\t\tcolumnSize: \"{/cardWidth}\",\n\t\t\t\t\tgap: \"1rem\"\n\t\t\t\t})\n\t\t\t}).addStyleClass(\"sapCuxToDoCardsContainer\");\n\t\t}\n\n\t\treturn this._cardContainer;\n\t}\n\n\t/**\n\t * Generates the mobile card container (HeaderContainer) for displaying cards on mobile devices.\n\t *\n\t * @private\n\t * @returns {HeaderContainer} The generated mobile card container.\n\t */\n\tprivate _generateMobileCardContainer(): HeaderContainer {\n\t\t// Create a HeaderContainer for mobile devices\n\t\tif (!this._mobileCardContainer) {\n\t\t\tthis._mobileCardContainer = new HeaderContainer(`${this.getId()}-headerContainer`, {\n\t\t\t\tvisible: \"{/isPhone}\",\n\t\t\t\tscrollStep: 0,\n\t\t\t\tgridLayout: true,\n\t\t\t\tscrollTime: 1000,\n\t\t\t\tshowDividers: false,\n\t\t\t\tsnapToRow: true\n\t\t\t}).addStyleClass(\"sapCuxToDoMobileCardsContainer\");\n\t\t}\n\n\t\treturn this._mobileCardContainer;\n\t}\n\n\t/**\n\t * Generates the error message card for displaying error messages.\n\t *\n\t * @private\n\t * @returns {Card} The generated error message card.\n\t */\n\tprivate _generateErrorMessage(): Card {\n\t\tif (!this._errorCard) {\n\t\t\tthis._errorMessage = new IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Base,\n\t\t\t\ttitle: \"{/illustrationTitle}\",\n\t\t\t\tdescription: \"{/illustrationDescription}\",\n\t\t\t\tillustrationType: \"{/illustrationType}\"\n\t\t\t});\n\t\t\tthis._errorCard = new Card(`${this.getId()}-errorCard`, {\n\t\t\t\tcontent: this._errorMessage,\n\t\t\t\tvisible: \"{= ${/tiles/length} === 0 || ${/hasError} === true }\"\n\t\t\t});\n\t\t}\n\n\t\treturn this._errorCard;\n\t}\n\n\t/**\n\t * Handler for the Refresh button for each panel.\n\t * Reloads the selected panel\n\t *\n\t * @async\n\t * @private\n\t */\n\tprivate _onPressRefresh(): void {\n\t\tvoid ((this.getParent() as ToDosContainer)?._getSelectedPanel() as ToDoPanel)?._loadCards(true);\n\t}\n\n\t/**\n\t * Loads the To-Do cards for the panel.\n\t *\n\t * @private\n\t * @param {boolean} forceRefresh - force refresh cards\n\t * @returns {Promise<void>} A promise that resolves when the cards are loaded.\n\t */\n\tpublic async _loadCards(forceRefresh?: boolean): Promise<void> {\n\t\tif (this._loadToDos !== undefined && !forceRefresh) {\n\t\t\treturn this._loadToDos;\n\t\t} else {\n\t\t\tthis._bindInnerControls();\n\t\t\tthis._loadToDos = new Promise((resolve) => {\n\t\t\t\tconst selectedKey = (this.getParent() as BaseContainer)?._getSelectedPanel()?.getProperty(\"key\") as string;\n\t\t\t\tconst requests: Request[] = [];\n\n\t\t\t\tthis._oData.isLoaded = false;\n\t\t\t\tthis._oData.isCountCalledOnce = false;\n\t\t\t\tthis._oData.isExpandedOnce = this._isElementExpanded();\n\t\t\t\tthis._setCount();\n\n\t\t\t\tif (this._getSupported()) {\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t// Load Placeholder Cards\n\t\t\t\t\t\tthis._generatePlaceHolderTiles();\n\n\t\t\t\t\t\t// Add Initial Batch Requests\n\t\t\t\t\t\trequests.push(\n\t\t\t\t\t\t\tthis._generateRequestObject({ type: selectedKey, onlyCount: selectedKey !== this.getProperty(\"key\") })\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.requests = this.requests.concat(requests);\n\n\t\t\t\t\t\t//Submit Batch Requests\n\t\t\t\t\t\tthis._submitBatch()\n\t\t\t\t\t\t\t.then(async () => {\n\t\t\t\t\t\t\t\tthis._oData.isLoaded = selectedKey === this.getProperty(\"key\");\n\t\t\t\t\t\t\t\tthis.fireEvent(\"loaded\");\n\n\t\t\t\t\t\t\t\tthis._oData.isCountCalledOnce = true;\n\t\t\t\t\t\t\t\tthis._setCount(this._oData.length as string);\n\n\t\t\t\t\t\t\t\tthis._setSectionRefreshInterval();\n\t\t\t\t\t\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.lastRefreshedTime = new Date();\n\t\t\t\t\t\t\t\tthis._updateRefreshInformation();\n\n\t\t\t\t\t\t\t\tawait this._switchTabIfRequired();\n\t\t\t\t\t\t\t\tthis._updateHeaderIfExclusive();\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.catch((error: unknown) => {\n\t\t\t\t\t\t\t\tLog.error(error instanceof Error ? error.message : \"\");\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\t\t\tthis._controlModel.refresh();\n\t\t\t\t\t\t\t\tthis._adjustLayout();\n\t\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis._handleError(`User not authorized to access: + ${this.getTargetAppUrl()}`);\n\n\t\t\t\t\t// Remove Item from IconTabBar\n\t\t\t\t\t(this.getParent() as ToDosContainer)?.removeContent(this);\n\n\t\t\t\t\t//resolve the promise\n\t\t\t\t\tresolve();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn this._loadToDos;\n\t}\n\n\t/**\n\t * Update Container Header if the panel is exclusive\n\t *\n\t * @private\n\t */\n\tprivate _updateHeaderIfExclusive() {\n\t\tif (this._isExclusivePanel()) {\n\t\t\t(this.getParent() as ToDosContainer)._setTitle(`${this._i18nBundle.getText(\"toDosTitle\")} (${String(this._oData.length)})`);\n\t\t}\n\t}\n\n\t/**\n\t * Creates a one-time binding of inner controls for the ToDoPanel.\n\t * @private\n\t */\n\tprivate _bindInnerControls(): void {\n\t\tif (!this._innerControlsBound) {\n\t\t\t//bind card container\n\t\t\tthis._cardContainer.bindAggregation(\"items\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\t//bind mobile card container\n\t\t\tthis._mobileCardContainer.bindAggregation(\"content\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\tthis._innerControlsBound = true;\n\t\t}\n\t}\n\n\t/**\n\t * Generates the card template for the Current Panel.\n\t *\n\t * @public\n\t * @param {string} id The ID for the template.\n\t * @param {object} context The context for the template.\n\t * @returns {object} The generated card template.\n\t */\n\tpublic generateCardTemplate(id: string, context: Context): Control {\n\t\treturn new GenericTile(`${id}-tile`, {\n\t\t\tmode: \"ActionMode\",\n\t\t\tframeType: \"TwoByOne\",\n\t\t\tpressEnabled: true,\n\t\t\theader: context.getProperty(\"title\") as string,\n\t\t\twidth: context.getProperty(\"/cardWidth\") as string,\n\t\t\tstate: context.getProperty(\"loadState\") as LoadState,\n\t\t\ttileContent: [\n\t\t\t\tnew TileContent(`${id}-tileContent`, {\n\t\t\t\t\tpriority: context.getProperty(\"priority\") as Priority,\n\t\t\t\t\tpriorityText: this._toPriorityText(context.getProperty(\"priority\") as Priority),\n\t\t\t\t\tfooter: context.getProperty(\"footerText\") as string,\n\t\t\t\t\tcontent: new Text(`${id}-situationContent`, {\n\t\t\t\t\t\ttext: context.getProperty(\"message\") as string\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\t}\n\n\t/**\n\t * Convert a priority string to a corresponding priority text.\n\t *\n\t * @private\n\t * @param {Priority} priority - The priority string.\n\t * @returns {string} The corresponding priority text.\n\t */\n\tpublic _toPriorityText(priority: Priority): string {\n\t\tlet key;\n\t\tif (priority === Priority.VeryHigh) {\n\t\t\tkey = \"veryHighPriority\";\n\t\t} else if (priority === Priority.High) {\n\t\t\tkey = \"highPriority\";\n\t\t} else if (priority === Priority.Medium) {\n\t\t\tkey = \"mediumPriority\";\n\t\t} else if (priority === Priority.Low) {\n\t\t\tkey = \"lowPriority\";\n\t\t} else {\n\t\t\tkey = \"nonePriority\";\n\t\t}\n\n\t\treturn this._i18nBundle.getText(key) as string;\n\t}\n\n\t/**\n\t * Generates placeholder tiles for the panel.\n\t *\n\t * @private\n\t */\n\tprivate _generatePlaceHolderTiles(): void {\n\t\tthis._cardCount = this._getVisibleCardCount({ isPlaceholder: true });\n\t\tthis._oData.displayTiles = this._oData.tiles = new Array(this._cardCount).fill({ loadState: \"Loading\" });\n\t\tthis._oData.isLoaded = this._oData.hasError = false;\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Calculates the number of visible cards that can fit within the available space of the To-Dos panel.\n\t *\n\t * @private\n\t * @param {CalculationProperties} [calculationProperties] - Optional properties to assist in the calculation.\n\t * @returns {number} - The number of visible cards.\n\t */\n\tprivate _getVisibleCardCount(calculationProperties?: CalculationProperties): number {\n\t\tconst layout = (this.getParent() as ToDosContainer)?._getLayout();\n\t\tlet isElementExpanded = false;\n\t\tlet targetDomRef = this._toDoWrapper?.getDomRef();\n\n\t\tif (layout) {\n\t\t\tisElementExpanded = this._isElementExpanded();\n\t\t\tconst isHeaderVisible = layout.getProperty(\"showHeader\") as boolean;\n\t\t\tconst containerDomRef = (isElementExpanded ? layout._getFullScreenContainer() : layout).getDomRef();\n\t\t\tconst sectionNodeIndex = isHeaderVisible && !isElementExpanded ? 1 : 0;\n\t\t\ttargetDomRef = containerDomRef?.childNodes[sectionNodeIndex] as Element;\n\t\t}\n\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet cardCount = isMobileDevice ? Constants.TODO_SECTION_LIMIT : 1;\n\n\t\tif (targetDomRef) {\n\t\t\t// @ts-expect-error Calculate Horizontal Card Count\n\t\t\tcardCount = this.getHorizontalCardCount(targetDomRef, calculationProperties);\n\n\t\t\tif (isElementExpanded) {\n\t\t\t\t// @ts-expect-error Calculate Vertical Card Count\n\t\t\t\tcardCount *= this.getVerticalCardCount(targetDomRef, calculationProperties);\n\t\t\t}\n\n\t\t\t//Restrict cards to the maximum limit\n\t\t\tcardCount = cardCount > Constants.TODO_CARDS_LIMIT ? Constants.TODO_CARDS_LIMIT : cardCount;\n\t\t}\n\n\t\treturn cardCount;\n\t}\n\n\t/**\n\t * Checks if the current element is expanded to full screen.\n\t *\n\t * @private\n\t * @returns {boolean} - True if the element is expanded, otherwise false.\n\t */\n\tprivate _isElementExpanded(): boolean {\n\t\tconst toDosContainer = this.getParent() as ToDosContainer;\n\t\tconst layout = toDosContainer._getLayout();\n\t\treturn layout?._getCurrentExpandedElementName() === toDosContainer.getProperty(\"fullScreenName\");\n\t}\n\n\t/**\n\t * Calculates the number of horizontal cards that can fit within the available width of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the horizontal card count for.\n\t * @returns {number} - The number of horizontal cards that can fit within the available width.\n\t */\n\tprotected getHorizontalCardCount(domRef: Element): number {\n\t\tconst domProperties = fetchElementProperties(domRef, [\"width\", \"padding-left\", \"padding-right\", \"margin-left\", \"margin-right\"]);\n\t\tconst availableWidth = Object.values(domProperties)\n\t\t\t.slice(1)\n\t\t\t.reduce((width, propertyValue) => width - propertyValue, domProperties[\"width\"]);\n\t\tconst actualCardCount = this._oData.length as number;\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet horizontalCardCount;\n\t\tconst minWidth = this.getProperty(\"minCardWidth\") as number;\n\t\tconst maxWidth = this.getProperty(\"maxCardWidth\") as number;\n\t\tconst cardLayoutConfig = {\n\t\t\tcontainerWidth: availableWidth,\n\t\t\ttotalCards: actualCardCount,\n\t\t\tminWidth: minWidth,\n\t\t\tmaxWidth: maxWidth,\n\t\t\tgap: Constants.GAP\n\t\t};\n\t\tconst cardWidth = calculateCardWidth(cardLayoutConfig);\n\t\tif (isMobileDevice) {\n\t\t\thorizontalCardCount = Constants.TODO_SECTION_LIMIT;\n\t\t} else {\n\t\t\thorizontalCardCount = Math.max(Math.floor(availableWidth / cardWidth), 1);\n\t\t}\n\n\t\t// Calculate Horizontal Card Count\n\t\tthis._controlModel.setProperty(\"/cardWidth\", `${cardWidth / 16}rem`);\n\t\tthis._controlModel.setProperty(\"/horizontalCardCount\", horizontalCardCount);\n\n\t\treturn horizontalCardCount;\n\t}\n\n\t/**\n\t * Calculates the number of vertical cards that can fit within the available height of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the vertical card count for.\n\t * @returns {number} - The number of vertical cards that can fit within the available height.\n\t */\n\tprotected getVerticalCardCount(domRef: Element): number {\n\t\tconst sectionDomProperties = fetchElementProperties(domRef, [\"padding-top\"]);\n\t\tconst parentDomProperties = fetchElementProperties(domRef.parentElement as Element, [\"height\"]);\n\t\tconst titleHeight = this.calculateTitleHeight();\n\t\tconst availableHeight = parentDomProperties.height - sectionDomProperties[\"padding-top\"] * 2 - titleHeight;\n\t\tconst margin = 14;\n\t\tconst cardHeight = Constants.DEFAULT_CARD_HEIGHT + margin;\n\t\tconst verticalCardCount = Math.max(Math.floor(availableHeight / cardHeight), 2); //minimum of 2 rows should be displayed\n\n\t\treturn verticalCardCount;\n\t}\n\n\t/**\n\t * Calculates the combined height of the title and tab header for the To-Dos panel.\n\t *\n\t * @private\n\t * @returns {number} - The combined height of the title and tab header.\n\t */\n\tprotected calculateTitleHeight(): number {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst containerHeaderRef = UI5Element.getElementById(`${container.getId()}-header`)?.getDomRef();\n\t\tconst iconTabBarHeaderRef = UI5Element.getElementById(`${container._getInnerControl().getId()}--header`)?.getDomRef();\n\t\tconst defaultHeight = Constants.DEFAULT_TITLE_HEIGHT + Constants.DEFAULT_TAB_HEADER_HEIGHT;\n\t\tlet titleHeight = 0;\n\n\t\tif (containerHeaderRef && iconTabBarHeaderRef) {\n\t\t\ttitleHeight = containerHeaderRef.clientHeight + iconTabBarHeaderRef.clientHeight;\n\t\t}\n\n\t\treturn Math.max(titleHeight, defaultHeight);\n\t}\n\n\t/**\n\t * Generates a request object for batch requests.\n\t *\n\t * @private\n\t * @param {RequestOptions} options - Additional properties for generating the request object.\n\t * @param {boolean} [options.onlyCount] - Whether to include only the count in the request.\n\t * @returns {Object} The generated request object.\n\t */\n\tprivate _generateRequestObject(options: RequestOptions): Request {\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tconst countUrl = this.getCountUrl();\n\t\tconst urls = this.generateRequestUrls?.(cardCount);\n\n\t\tif (countUrl && options?.onlyCount) {\n\t\t\turls.splice(1);\n\t\t}\n\n\t\treturn {\n\t\t\tbaseURL: this.getBaseUrl(),\n\t\t\trequestURLs: urls,\n\t\t\tsuccess: async (args: unknown[]): Promise<void> => {\n\t\t\t\t//data process extension for panels\n\t\t\t\tawait this.onDataReceived(countUrl ? args.splice(1) : args, options);\n\n\t\t\t\t//set card count and handle empty cards\n\t\t\t\tthis._oData.length = countUrl ? Number(args[0]) : (this._oData.tiles as object[]).length;\n\t\t\t\tthis._handleEmptyCards();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Generates request URLs for fetching data based on the specified card count.\n\t *\n\t * @public\n\t * @param {number} cardCount - The number of cards to retrieve.\n\t * @returns {string[]} An array of request URLs.\n\t */\n\tpublic generateRequestUrls(cardCount: number): string[] {\n\t\tconst urls = [];\n\t\tconst countUrl = this.getCountUrl();\n\n\t\tif (countUrl) {\n\t\t\turls.push(countUrl);\n\t\t}\n\n\t\tlet dataUrl = this.getDataUrl();\n\t\tif (this.getProperty(\"useBatch\")) {\n\t\t\tconst queryString = `$skip=0&$top=${cardCount}`;\n\t\t\tdataUrl = dataUrl.includes(\"?\") ? `${dataUrl}&${queryString}` : `${dataUrl}?${queryString}`;\n\t\t}\n\t\turls.push(dataUrl);\n\n\t\treturn urls;\n\t}\n\n\t/**\n\t * A promise that resolves when the data has been processed.\n\t * This method can be overridden to perform additional data processing operations.\n\t *\n\t * @public\n\t * @async\n\t * @param {unknown[]} results - Data retrieved from the batch call.\n\t * @param {RequestOptions} options - Additional options for parsing the data.\n\t * Structure may vary based on the backend service.\n\t */\n\tpublic async onDataReceived(results: unknown[] = [], options?: RequestOptions): Promise<void> {\n\t\tif (!options || (options && !options.onlyCount)) {\n\t\t\tthis._oData.displayTiles = this._oData.tiles = results[0] || [];\n\t\t}\n\n\t\tawait Promise.resolve();\n\t}\n\n\t/**\n\t * Handles the scenario when there are no cards to display.\n\t * Updates the illustration and description based on the selected panel and card count.\n\t *\n\t * @private\n\t */\n\tprivate _handleEmptyCards() {\n\t\tif (Number(this._oData.length) === 0) {\n\t\t\tthis._oData.illustrationType = \"sapIllus-EmptyPlanningCalendar\";\n\t\t\tthis._oData.illustrationTitle = this._isExclusivePanel() ? this._i18nBundle.getText(\"noToDoTitle\") : this.getNoDataText();\n\t\t\tthis._oData.illustrationDescription = this._isExclusivePanel()\n\t\t\t\t? this._i18nBundle.getText(\"noToDoDesc\")\n\t\t\t\t: this._i18nBundle.getText(\"emptyToDoDesc\");\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the panel is exclusive based on support and the number of panels.\n\t *\n\t * @private\n\t * @returns {boolean} True if the panel is exclusive, otherwise false.\n\t */\n\tprivate _isExclusivePanel(): boolean {\n\t\tconst allPanels = (this.getParent() as ToDosContainer).getContent() as ToDoPanel[];\n\t\tconst supportedPanels = allPanels.filter((panel) => panel._getSupported());\n\n\t\treturn supportedPanels.length === 1 || (allPanels.length === 1 && this._getSupported());\n\t}\n\n\t/**\n\t * Sets the interval for refreshing the section.\n\t *\n\t * @private\n\t */\n\tprivate _setSectionRefreshInterval(): void {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t\tthis._oData.refreshFn = setInterval(() => {\n\t\t\tthis._oData.lastRefreshedTime = this._oData.lastRefreshedTime || new Date();\n\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._updateRefreshInformation();\n\t\t}, Constants.TODOS_REFRESH_INTERVAL);\n\t}\n\n\t/**\n\t * Updates the refresh information and adjusts the layout.\n\t *\n\t * @private\n\t */\n\tpublic _updateRefreshInformation(): void {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tif (container.getProperty(\"selectedKey\") === this.getProperty(\"key\")) {\n\t\t\tthis._refreshBtn.setProperty(\"text\", this._oData.refreshInfo, true);\n\t\t\tthis._accRefreshLabel.setProperty(\"text\", this._oData.fullRefreshInfo, true);\n\t\t\tthis._refreshBtn.setAggregation(\"tooltip\", this._oData.fullRefreshInfo as ManagedObject, true);\n\t\t\tcontainer._updateContainerHeader(this);\n\t\t}\n\n\t\tthis._adjustLayout();\n\t}\n\n\t/**\n\t * Adjusts the layout based on card count and device type.\n\t *\n\t * @private\n\t */\n\tpublic _adjustLayout() {\n\t\t// Update visible cards\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tif ((this._oData.tiles as object[]).length && !this._oData.hasError) {\n\t\t\tconst displayCards = (this._oData.tiles as object[]).slice(0, cardCount);\n\t\t\tthis._controlModel.setProperty(\"/displayTiles\", displayCards);\n\t\t}\n\n\t\t// Update if device type is phone\n\t\tthis._controlModel.setProperty(\"/isPhone\", this.getDeviceType() === DeviceType.Mobile);\n\n\t\t// Show/Hide Full Screen Button if available\n\t\t(this.getParent() as ToDosContainer)?.toggleFullScreenElements(\n\t\t\tthis,\n\t\t\tthis._isElementExpanded() || Number(this._oData.length) > cardCount\n\t\t);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date.\n\t *\n\t * @private\n\t * @param {Date} date Date object or Date String\n\t * @returns {string} Formatted Date\n\t */\n\tpublic _toRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.relativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date string with full units (e.g., \"2 minutes ago\").\n\t * Intended for accessibility use such as screen readers.\n\t *\n\t * @private\n\t * @param {Date} date Date object or date string\n\t * @returns {string} Fully formatted relative date string\n\t */\n\tprivate _toFullRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.fullRelativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Get the text for the \"No Data\" message.\n\t *\n\t * @public\n\t * @returns {string} The text for the \"No Data\" message.\n\t */\n\tpublic getNoDataText(): string {\n\t\treturn this._i18nBundle.getText(\"noData\") as string;\n\t}\n\n\t/**\n\t * Parses the response object and returns the appropriate value.\n\t *\n\t * @private\n\t * @param {Object} response - The response object.\n\t * @param {Object} [response.d] - The 'd' property of the response object.\n\t * @param {Array} [response.d.results] - The results array.\n\t * @param {string|number} [response.d] - The 'd' property of the response object which may contain a numeric value.\n\t * @param {string|number} [response] - The response object which may contain a numeric value.\n\t * @param {string|number} [response.value] - The 'value' property of the response object which may contain a numeric value.\n\t * @returns {Response} - The parsed value extracted from the response object.\n\t */\n\tprivate _parseResponse(response: Response): Response {\n\t\tconst { d = {}, value } = response || {};\n\t\tconst results = d?.results;\n\t\tconst numericD = !isNaN(+d) && +d;\n\t\tconst numericResponse = !isNaN(+response) && +response;\n\n\t\treturn (results || numericD || numericResponse || value || response || 0) as Response;\n\t}\n\n\t/**\n\t * Submits a batch request for multiple URLs and processes the responses.\n\t *\n\t * @private\n\t * @returns {Promise} A Promise that resolves when all batch requests are completed.\n\t */\n\tprotected _submitBatch(): Promise<unknown[]> {\n\t\treturn Promise.all(\n\t\t\tthis.requests.map(async (request: Request) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst useBatch = this.getProperty(\"useBatch\") as boolean;\n\t\t\t\t\tlet responses = useBatch\n\t\t\t\t\t\t? await this.batchHelper.createMultipartRequest(request.baseURL, request.requestURLs)\n\t\t\t\t\t\t: await HttpHelper.GetMultipleRequests(request.requestURLs);\n\n\t\t\t\t\tif (responses.length) {\n\t\t\t\t\t\tconst processedResponses = responses.map((response: string | Response) => {\n\t\t\t\t\t\t\tif (typeof response === \"string\") {\n\t\t\t\t\t\t\t\tresponse = JSON.parse(response) as Response;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn this._parseResponse(response);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\t// Call success callback, if any\n\t\t\t\t\t\tif (request.success && typeof request.success === \"function\") {\n\t\t\t\t\t\t\tawait request.success(processedResponses);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn processedResponses;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(\"Invalid response\");\n\t\t\t\t\t}\n\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\tthis._handleError(error);\n\t\t\t\t} finally {\n\t\t\t\t\tthis._clearRequests();\n\t\t\t\t}\n\t\t\t})\n\t\t);\n\t}\n\n\t/**\n\t * Handles errors by updating the data and logging the error.\n\t *\n\t * @private\n\t * @param {Error} error - The error object to handle.\n\t */\n\tprivate _handleError(error: unknown) {\n\t\tthis._oData.displayTiles = this._oData.tiles = [];\n\t\tthis._oData.getSupported = this._oData.isLoaded = this._oData.hasError = true;\n\t\tthis._oData.illustrationType = \"sapIllus-UnableToLoad\";\n\t\tthis._oData.illustrationTitle = this._oData.illustrationDescription = \"\";\n\n\t\tLog.error(error as string);\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Clears the list of requests.\n\t *\n\t * @private\n\t */\n\tprotected _clearRequests() {\n\t\tthis.requests = [];\n\t}\n\n\t/**\n\t * Checks if the panel is loaded.\n\t *\n\t * @private\n\t * @returns {boolean} true if the panel is loaded, false otherwise.\n\t */\n\tpublic _isLoaded(): boolean {\n\t\tconst parentContainer = this.getParent() as ToDosContainer;\n\t\tconst isContainerExpanded = parentContainer?._getLayout()?.getProperty(\"expanded\") as boolean;\n\n\t\tconst { isLoaded, isExpandedOnce } = this._oData;\n\n\t\tif (!isContainerExpanded) {\n\t\t\treturn isLoaded as boolean;\n\t\t}\n\n\t\treturn (isExpandedOnce && isLoaded) as boolean;\n\t}\n\n\t/**\n\t * Set the loaded status of the ToDoPanel.\n\t *\n\t * @private\n\t * @param {boolean} isLoaded - The new loaded status to set for the ToDoPanel.\n\t */\n\tpublic _setLoaded(isLoaded: boolean): void {\n\t\tthis._oData.isLoaded = isLoaded;\n\t}\n\n\t/**\n\t * Gets the supported status of the panel.\n\t *\n\t * @private\n\t * @returns {boolean} The supported status of the panel.\n\t */\n\tpublic _getSupported(): boolean {\n\t\treturn this._oData.getSupported as boolean;\n\t}\n\n\t/**\n\t * Sets the supported status of the panel.\n\t *\n\t * @private\n\t * @param {boolean} value - The value to set for supported status.\n\t */\n\tpublic _setSupported(isSupported: boolean): void {\n\t\tthis._oData.getSupported = isSupported;\n\t}\n\n\t/**\n\t * Extracts the app intent from the target app URL.\n\t *\n\t * @private\n\t * @returns {Intent | null} The app intent object with target and parameters, or null if not found.\n\t */\n\tpublic _getAppIntent(): Intent | null {\n\t\tconst pattern = /#([^?-]+)-([^?#]+)(?:\\?([^#]+))?(?:#.*)?/;\n\t\tconst match = this.getTargetAppUrl().match(pattern);\n\n\t\tif (match) {\n\t\t\tconst target = {\n\t\t\t\tsemanticObject: match[1],\n\t\t\t\taction: match[2]\n\t\t\t};\n\t\t\tconst params = {} as Record<string, string>;\n\n\t\t\tif (match[3]) {\n\t\t\t\tconst paramsArray = match[3].split(\"&\");\n\t\t\t\tfor (const param of paramsArray) {\n\t\t\t\t\tconst [key, value] = param.split(\"=\");\n\t\t\t\t\tparams[key] = value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ttarget,\n\t\t\t\tparams\n\t\t\t};\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Switch to available tab if current panel has empty cards or has error\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _switchTabIfRequired() {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst selectedKey = container?.getProperty(\"selectedKey\") as string;\n\n\t\tif (selectedKey === this.getProperty(\"key\") && (this._oData.length === 0 || this._oData.hasError)) {\n\t\t\tlet nextAvailablePanel;\n\t\t\tconst panels = container?.getAggregation(\"content\") as ToDoPanel[];\n\n\t\t\tfor (const panel of panels) {\n\t\t\t\tif (panel !== this) {\n\t\t\t\t\t//ensure that panel is loaded first\n\t\t\t\t\tawait panel._loadCards();\n\n\t\t\t\t\tif (panel._getSupported() && !panel._isLoaded() && panel._getCardCount() > 0) {\n\t\t\t\t\t\tnextAvailablePanel = panel;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (nextAvailablePanel) {\n\t\t\t\tcontainer?.setProperty(\"selectedKey\", nextAvailablePanel.getProperty(\"key\"));\n\t\t\t\tToDosContainer.cardCount = this._cardCount;\n\t\t\t\tawait nextAvailablePanel._loadCards(true);\n\t\t\t\tToDosContainer.cardCount = undefined;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Handles the press event to view all items.\n\t *\n\t * @private\n\t */\n\tpublic _onPressViewAll() {\n\t\tURLHelper.redirect(this.getTargetAppUrl(), false);\n\t}\n\n\t/**\n\t * Retrieves the count of cards in the panel.\n\t *\n\t * @private\n\t * @returns {number} The number of cards.\n\t */\n\tpublic _getCardCount(): number {\n\t\treturn Number(this._oData.length);\n\t}\n\n\t/**\n\t * Handles actions to be performed before the To-Dos panel is expanded.\n\t * If the panel has not been expanded before in full screen, the cards will be loaded once.\n\t *\n\t * @private\n\t */\n\tprivate async _beforePanelExpand() {\n\t\tif (!this._oData.isExpandedOnce) {\n\t\t\tthis._oData.isExpandedOnce = true;\n\t\t\tawait this._loadCards(true);\n\t\t}\n\t}\n\n\t/**\n\t * Exit lifecycle method.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic exit() {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ToDoPanel.js","names":["sap","ui","define","Log","Card","GridContainer","GridContainerSettings","Button","GenericTile","HeaderContainer","IllustratedMessage","IllustratedMessageSize","Text","TileContent","VBox","sap_m_library","Device","UI5Element","InvisibleText","DateFormat","JSONModel","__BasePanel","__MenuItem","__ToDosContainer","__BatchHelper","___utils_Device","___utils_FESRUtil","__HttpHelper","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","Priority","_finallyRethrows","finalizer","bind","URLHelper","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","BasePanel","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","MenuItem","ToDosContainer","BatchHelper","calculateCardWidth","DeviceType","fetchElementProperties","addFESRId","HttpHelper","Constants","SITUATION_ICON","PLACEHOLDER_ITEMS_COUNT","TODO_CARDS_LIMIT","TODO_SECTION_LIMIT","TODOS_REFRESH_INTERVAL","MOBILE_DEVICE_MAX_WIDTH","DEFAULT_TITLE_HEIGHT","DEFAULT_CARD_HEIGHT","DEFAULT_TAB_HEADER_HEIGHT","GAP","ToDoPanel","extend","metadata","library","properties","baseUrl","type","group","defaultValue","visibility","countUrl","dataUrl","targetAppUrl","minCardWidth","maxCardWidth","useBatch","aggregations","content","multiple","singularName","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","batchHelper","init","_init","BasePanel.prototype.init.call","_oData","isLoaded","hasError","cardWidth","getSupported","isExpandedOnce","isCountCalledOnce","illustrationType","refreshInfo","_toRelativeDateTime","Date","fullRefreshInfo","_toFullRelativeDateTime","horizontalCardCount","illustrationTitle","_i18nBundle","getText","illustrationDescription","isPhone","resize","width","system","phone","tiles","Array","fill","loadState","displayTiles","_controlModel","requests","_toDoWrapper","getId","renderType","items","_generateCardContainer","_generateMobileCardContainer","_generateErrorMessage","setModel","addContent","menuItem","title","icon","press","_onPressRefresh","addAggregation","_accRefreshLabel","text","addDependent","_refreshBtn","addAriaLabelledBy","setProperty","attachEvent","Promise","resolve","_beforePanelExpand","_cardContainer","inlineBlockLayout","snapToRow","visible","layout","columns","columnSize","gap","addStyleClass","_mobileCardContainer","scrollStep","gridLayout","scrollTime","showDividers","_errorCard","_errorMessage","illustrationSize","Base","description","getParent","_getSelectedPanel","_loadCards","forceRefresh","_this2","_loadToDos","undefined","_bindInnerControls","selectedKey","getProperty","_isElementExpanded","_setCount","_getSupported","setTimeout","_generatePlaceHolderTiles","_generateRequestObject","onlyCount","concat","_submitBatch","fireEvent","_setSectionRefreshInterval","lastRefreshedTime","_updateRefreshInformation","_switchTabIfRequired","_updateHeaderIfExclusive","catch","error","Error","message","finally","refresh","_adjustLayout","_handleError","getTargetAppUrl","removeContent","_isExclusivePanel","_setTitle","String","_innerControlsBound","bindAggregation","path","factory","context","generateCardTemplate","bindProperty","_generateCardTemplate","mode","frameType","pressEnabled","header","tileContent","priority","priorityText","_toPriorityText","footer","key","VeryHigh","High","Medium","Low","_cardCount","_getVisibleCardCount","isPlaceholder","calculationProperties","_getLayout","isElementExpanded","targetDomRef","getDomRef","isHeaderVisible","containerDomRef","_getFullScreenContainer","sectionNodeIndex","childNodes","isMobileDevice","cardCount","getHorizontalCardCount","getVerticalCardCount","toDosContainer","_getCurrentExpandedElementName","_getHorizontalCardCount","domRef","domProperties","availableWidth","Object","slice","reduce","propertyValue","actualCardCount","minWidth","maxWidth","cardLayoutConfig","containerWidth","totalCards","Math","max","floor","_getVerticalCardCount","sectionDomProperties","parentDomProperties","parentElement","titleHeight","calculateTitleHeight","availableHeight","height","margin","cardHeight","verticalCardCount","_calculateTitleHeight","container","containerHeaderRef","getElementById","iconTabBarHeaderRef","_getInnerControl","defaultHeight","clientHeight","options","_this3","getCountUrl","urls","generateRequestUrls","splice","baseURL","getBaseUrl","requestURLs","success","args","onDataReceived","Number","_handleEmptyCards","_generateRequestUrls","getDataUrl","queryString","includes","_onDataReceived","results","_this4","getNoDataText","allPanels","getContent","supportedPanels","filter","panel","clearInterval","refreshFn","setInterval","setAggregation","_updateContainerHeader","displayCards","getDeviceType","Mobile","toggleFullScreenElements","date","inputDate","isNaN","relativeDateFormatter","format","fullRelativeDateFormatter","_getNoDataText","_parseResponse","response","d","numericD","numericResponse","_this5","all","map","request","createMultipartRequest","GetMultipleRequests","responses","processedResponses","JSON","parse","_temp","_wasThrown","_result","_clearRequests","_isLoaded","parentContainer","isContainerExpanded","_setLoaded","_setSupported","isSupported","_getAppIntent","pattern","match","semanticObject","action","params","paramsArray","split","param","_this6","_interrupt","_temp5","_temp3","nextAvailablePanel","panels","getAggregation","_temp4","_temp2","_getCardCount","_onPressViewAll","redirect","_this7","_temp6","exit","_exit","getDateTimeInstance","style","relative","relativeStyle"],"sources":["ToDoPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport Card from \"sap/f/Card\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport Text from \"sap/m/Text\";\nimport TileContent from \"sap/m/TileContent\";\nimport VBox from \"sap/m/VBox\";\nimport { LoadState, Priority, URLHelper } from \"sap/m/library\";\nimport Device from \"sap/ui/Device\";\nimport ManagedObject from \"sap/ui/base/ManagedObject\";\nimport Control from \"sap/ui/core/Control\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport UI5Element from \"sap/ui/core/Element\";\nimport InvisibleText from \"sap/ui/core/InvisibleText\";\nimport DateFormat from \"sap/ui/core/format/DateFormat\";\nimport Context from \"sap/ui/model/Context\";\nimport JSONModel from \"sap/ui/model/json/JSONModel\";\nimport BaseContainer from \"./BaseContainer\";\nimport BasePanel from \"./BasePanel\";\nimport IToDoPanel from \"./IToDoPanel\";\nimport MenuItem from \"./MenuItem\";\nimport { $ToDoPanelSettings } from \"./ToDoPanel\";\nimport ToDosContainer from \"./ToDosContainer\";\nimport BatchHelper from \"./utils/BatchHelper\";\nimport { calculateCardWidth, DeviceType, fetchElementProperties } from \"./utils/Device\";\nimport { addFESRId } from \"./utils/FESRUtil\";\nimport HttpHelper from \"./utils/HttpHelper\";\n\ninterface Request {\n\tbaseURL: string;\n\trequestURLs: string[];\n\tsuccess(args: unknown[]): Promise<void>;\n}\n\nexport interface CalculationProperties {\n\tisPlaceholder?: boolean;\n}\n\nexport interface Intent {\n\ttarget: {\n\t\tsemanticObject: string;\n\t\taction: string;\n\t};\n\tparams: {\n\t\t[key: string]: string;\n\t};\n}\n\nexport interface RequestOptions {\n\ttype: string;\n\tonlyCount?: boolean;\n}\n\nexport interface Response {\n\td?: {\n\t\tresults?: unknown[];\n\t};\n\tresults?: unknown[];\n\tvalue?: unknown[];\n}\n\nconst Constants = {\n\tSITUATION_ICON: \"sap-icon://message-warning\",\n\tPLACEHOLDER_ITEMS_COUNT: 5,\n\tTODO_CARDS_LIMIT: 100,\n\tTODO_SECTION_LIMIT: 6,\n\tTODOS_REFRESH_INTERVAL: 65000,\n\tMOBILE_DEVICE_MAX_WIDTH: 600,\n\tDEFAULT_TITLE_HEIGHT: 33,\n\tDEFAULT_CARD_HEIGHT: 168,\n\tDEFAULT_TAB_HEADER_HEIGHT: 44,\n\tGAP: 16\n};\n\n/**\n *\n * Abstract Panel class for managing and storing To-Do cards.\n *\n * @extends BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n *\n * @abstract\n * @private\n * @ui5-restricted ux.eng.s4producthomes1\n *\n * @alias sap.cux.home.ToDoPanel\n */\nexport default abstract class ToDoPanel extends BasePanel implements IToDoPanel {\n\tprotected _oData!: Record<string, unknown>;\n\tprotected requests!: Request[];\n\tprivate _controlModel!: JSONModel;\n\tprivate _toDoWrapper!: VBox;\n\tprivate _cardContainer!: GridContainer;\n\tprivate _mobileCardContainer!: HeaderContainer;\n\tprivate _errorCard!: Card;\n\tprivate _errorMessage!: IllustratedMessage;\n\tprivate _refreshBtn!: Button;\n\tprivate _loadToDos!: Promise<void> | undefined;\n\tprivate _innerControlsBound!: boolean;\n\tprivate _cardCount!: number;\n\tprivate batchHelper!: BatchHelper;\n\tprivate _accRefreshLabel!: InvisibleText;\n\n\tconstructor(id?: string | $ToDoPanelSettings);\n\tconstructor(id?: string, settings?: $ToDoPanelSettings);\n\t/**\n\t * Constructor for a new To-Dos Panel.\n\t *\n\t * @param {string} [id] ID for the new control, generated automatically if an ID is not provided\n\t * @param {object} [settings] Initial settings for the new control\n\t */\n\tpublic constructor(id?: string, settings?: $ToDoPanelSettings) {\n\t\tsuper(id, settings);\n\t\tthis.batchHelper = new BatchHelper();\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the base URL for batching requests sent from the panel.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tbaseUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL for fetching the count of requested to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tcountUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL from where the to-do cards should be fetched.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\tdataUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the URL of the target application associated with the to-do cards.\n\t\t\t *\n\t\t\t * @public\n\t\t\t */\n\t\t\ttargetAppUrl: { type: \"string\", group: \"Misc\", defaultValue: \"\", visibility: \"public\" },\n\t\t\t/**\n\t\t\t * Specifies the minimum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tminCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 304, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies the maximum width of the card in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tmaxCardWidth: { type: \"int\", group: \"Misc\", defaultValue: 583, visibility: \"hidden\" },\n\t\t\t/**\n\t\t\t * Specifies whether the panel should batch requests.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\tuseBatch: { type: \"boolean\", group: \"Misc\", defaultValue: true, visibility: \"hidden\" }\n\t\t},\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Specifies the content aggregation of the panel.\n\t\t\t */\n\t\t\tcontent: { multiple: true, singularName: \"content\", visibility: \"hidden\" }\n\t\t}\n\t};\n\n\tstatic fullRelativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"long\",\n\t\trelative: true,\n\t\trelativeStyle: \"wide\"\n\t});\n\n\tstatic relativeDateFormatter = DateFormat.getDateTimeInstance({\n\t\tstyle: \"medium\",\n\t\trelative: true,\n\t\trelativeStyle: \"short\"\n\t});\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//Initialise ToDos Model\n\t\tthis._oData = {\n\t\t\tlength: 0,\n\t\t\tisLoaded: false,\n\t\t\thasError: false,\n\t\t\tcardWidth: \"20rem\",\n\t\t\tgetSupported: false,\n\t\t\tisExpandedOnce: false,\n\t\t\tisCountCalledOnce: false,\n\t\t\tillustrationType: \"sapIllus-NoTasks\",\n\t\t\trefreshInfo: this._toRelativeDateTime(new Date()),\n\t\t\tfullRefreshInfo: this._toFullRelativeDateTime(new Date()),\n\t\t\thorizontalCardCount: Constants.PLACEHOLDER_ITEMS_COUNT,\n\t\t\tillustrationTitle: this._i18nBundle.getText(\"noToDoTitle\"),\n\t\t\tillustrationDescription: this._i18nBundle.getText(\"noToDoDesc\"),\n\t\t\tisPhone: Device.resize.width < Constants.MOBILE_DEVICE_MAX_WIDTH || Device.system.phone,\n\t\t\ttiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" }),\n\t\t\tdisplayTiles: new Array(Constants.PLACEHOLDER_ITEMS_COUNT).fill({ loadState: \"Loading\" })\n\t\t};\n\t\tthis._controlModel = new JSONModel(this._oData);\n\n\t\t//Initialize Request Queue\n\t\tthis.requests = [];\n\n\t\t//Add Wrapper Container to Panel\n\t\tthis._toDoWrapper = new VBox(`${this.getId()}-toDosWrapper`, {\n\t\t\trenderType: \"Bare\",\n\t\t\titems: [this._generateCardContainer(), this._generateMobileCardContainer(), this._generateErrorMessage()]\n\t\t});\n\t\tthis._toDoWrapper.setModel(this._controlModel);\n\t\tthis.addContent(this._toDoWrapper);\n\n\t\t//Setup Common Menu Items\n\t\tconst menuItem = new MenuItem(`${this.getId()}-refresh`, {\n\t\t\ttitle: this._i18nBundle.getText(\"refresh\"),\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis.addAggregation(\"menuItems\", menuItem);\n\t\taddFESRId(menuItem, \"todosRefresh\");\n\n\t\tthis._accRefreshLabel = new InvisibleText(`${this.getId()}-refreshAccText`, {\n\t\t\ttext: this._toFullRelativeDateTime(new Date())\n\t\t});\n\t\tthis.addDependent(this._accRefreshLabel);\n\t\tthis._refreshBtn = new Button(`${this.getId()}-refreshBtn`, {\n\t\t\ticon: \"sap-icon://refresh\",\n\t\t\ttext: this._toRelativeDateTime(new Date()),\n\t\t\tpress: () => this._onPressRefresh()\n\t\t});\n\t\tthis._refreshBtn.addAriaLabelledBy(this._accRefreshLabel);\n\t\taddFESRId(this._refreshBtn, \"manualTodoRefresh\");\n\t\tthis.addAggregation(\"actionButtons\", this._refreshBtn);\n\n\t\t//Configure Full Screen and Expand Event handlers\n\t\tthis.setProperty(\"enableFullScreen\", true);\n\t\tthis.attachEvent(\"onExpand\", async () => {\n\t\t\tawait this._beforePanelExpand();\n\t\t});\n\t}\n\n\t/**\n\t * Generates the card container (GridContainer) for displaying cards.\n\t *\n\t * @private\n\t * @returns {GridContainer} The generated card container.\n\t */\n\tprivate _generateCardContainer(): GridContainer {\n\t\t//create container\n\t\tif (!this._cardContainer) {\n\t\t\tthis._cardContainer = new GridContainer(`${this.getId()}-flexContainer`, {\n\t\t\t\tinlineBlockLayout: true,\n\t\t\t\tsnapToRow: true,\n\t\t\t\tvisible: \"{= !${/isPhone} && !${/hasError} && (!${/isLoaded} || ${/length} > 0) }\",\n\t\t\t\tlayout: new GridContainerSettings(`${this.getId()}-layout`, {\n\t\t\t\t\tcolumns: \"{/horizontalCardCount}\",\n\t\t\t\t\tcolumnSize: \"{/cardWidth}\",\n\t\t\t\t\tgap: \"1rem\"\n\t\t\t\t})\n\t\t\t}).addStyleClass(\"sapCuxToDoCardsContainer\");\n\t\t}\n\n\t\treturn this._cardContainer;\n\t}\n\n\t/**\n\t * Generates the mobile card container (HeaderContainer) for displaying cards on mobile devices.\n\t *\n\t * @private\n\t * @returns {HeaderContainer} The generated mobile card container.\n\t */\n\tprivate _generateMobileCardContainer(): HeaderContainer {\n\t\t// Create a HeaderContainer for mobile devices\n\t\tif (!this._mobileCardContainer) {\n\t\t\tthis._mobileCardContainer = new HeaderContainer(`${this.getId()}-headerContainer`, {\n\t\t\t\tvisible: \"{/isPhone}\",\n\t\t\t\tscrollStep: 0,\n\t\t\t\tgridLayout: true,\n\t\t\t\tscrollTime: 1000,\n\t\t\t\tshowDividers: false,\n\t\t\t\tsnapToRow: true\n\t\t\t}).addStyleClass(\"sapCuxToDoMobileCardsContainer\");\n\t\t}\n\n\t\treturn this._mobileCardContainer;\n\t}\n\n\t/**\n\t * Generates the error message card for displaying error messages.\n\t *\n\t * @private\n\t * @returns {Card} The generated error message card.\n\t */\n\tprivate _generateErrorMessage(): Card {\n\t\tif (!this._errorCard) {\n\t\t\tthis._errorMessage = new IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Base,\n\t\t\t\ttitle: \"{/illustrationTitle}\",\n\t\t\t\tdescription: \"{/illustrationDescription}\",\n\t\t\t\tillustrationType: \"{/illustrationType}\"\n\t\t\t});\n\t\t\tthis._errorCard = new Card(`${this.getId()}-errorCard`, {\n\t\t\t\tcontent: this._errorMessage,\n\t\t\t\tvisible: \"{= ${/tiles/length} === 0 || ${/hasError} === true }\"\n\t\t\t});\n\t\t}\n\n\t\treturn this._errorCard;\n\t}\n\n\t/**\n\t * Handler for the Refresh button for each panel.\n\t * Reloads the selected panel\n\t *\n\t * @async\n\t * @private\n\t */\n\tprivate _onPressRefresh(): void {\n\t\tvoid ((this.getParent() as ToDosContainer)?._getSelectedPanel() as ToDoPanel)?._loadCards(true);\n\t}\n\n\t/**\n\t * Loads the To-Do cards for the panel.\n\t *\n\t * @private\n\t * @param {boolean} forceRefresh - force refresh cards\n\t * @returns {Promise<void>} A promise that resolves when the cards are loaded.\n\t */\n\tpublic async _loadCards(forceRefresh?: boolean): Promise<void> {\n\t\tif (this._loadToDos !== undefined && !forceRefresh) {\n\t\t\treturn this._loadToDos;\n\t\t} else {\n\t\t\tthis._bindInnerControls();\n\t\t\tthis._loadToDos = new Promise((resolve) => {\n\t\t\t\tconst selectedKey = (this.getParent() as BaseContainer)?._getSelectedPanel()?.getProperty(\"key\") as string;\n\t\t\t\tconst requests: Request[] = [];\n\n\t\t\t\tthis._oData.isLoaded = false;\n\t\t\t\tthis._oData.isCountCalledOnce = false;\n\t\t\t\tthis._oData.isExpandedOnce = this._isElementExpanded();\n\t\t\t\tthis._setCount();\n\n\t\t\t\tif (this._getSupported()) {\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t// Load Placeholder Cards\n\t\t\t\t\t\tthis._generatePlaceHolderTiles();\n\n\t\t\t\t\t\t// Add Initial Batch Requests\n\t\t\t\t\t\trequests.push(\n\t\t\t\t\t\t\tthis._generateRequestObject({ type: selectedKey, onlyCount: selectedKey !== this.getProperty(\"key\") })\n\t\t\t\t\t\t);\n\t\t\t\t\t\tthis.requests = this.requests.concat(requests);\n\n\t\t\t\t\t\t//Submit Batch Requests\n\t\t\t\t\t\tthis._submitBatch()\n\t\t\t\t\t\t\t.then(async () => {\n\t\t\t\t\t\t\t\tthis._oData.isLoaded = selectedKey === this.getProperty(\"key\");\n\t\t\t\t\t\t\t\tthis.fireEvent(\"loaded\");\n\n\t\t\t\t\t\t\t\tthis._oData.isCountCalledOnce = true;\n\t\t\t\t\t\t\t\tthis._setCount(this._oData.length as string);\n\n\t\t\t\t\t\t\t\tthis._setSectionRefreshInterval();\n\t\t\t\t\t\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(new Date());\n\t\t\t\t\t\t\t\tthis._oData.lastRefreshedTime = new Date();\n\t\t\t\t\t\t\t\tthis._updateRefreshInformation();\n\n\t\t\t\t\t\t\t\tawait this._switchTabIfRequired();\n\t\t\t\t\t\t\t\tthis._updateHeaderIfExclusive();\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.catch((error: unknown) => {\n\t\t\t\t\t\t\t\tLog.error(error instanceof Error ? error.message : \"\");\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.finally(() => {\n\t\t\t\t\t\t\t\tthis._controlModel.refresh();\n\t\t\t\t\t\t\t\tthis._adjustLayout();\n\t\t\t\t\t\t\t\tresolve();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthis._handleError(`User not authorized to access: + ${this.getTargetAppUrl()}`);\n\n\t\t\t\t\t// Remove Item from IconTabBar\n\t\t\t\t\t(this.getParent() as ToDosContainer)?.removeContent(this);\n\n\t\t\t\t\t//resolve the promise\n\t\t\t\t\tresolve();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn this._loadToDos;\n\t}\n\n\t/**\n\t * Update Container Header if the panel is exclusive\n\t *\n\t * @private\n\t */\n\tprivate _updateHeaderIfExclusive() {\n\t\tif (this._isExclusivePanel()) {\n\t\t\t(this.getParent() as ToDosContainer)._setTitle(`${this._i18nBundle.getText(\"toDosTitle\")} (${String(this._oData.length)})`);\n\t\t}\n\t}\n\n\t/**\n\t * Creates a one-time binding of inner controls for the ToDoPanel.\n\t * @private\n\t */\n\tprivate _bindInnerControls(): void {\n\t\tif (!this._innerControlsBound) {\n\t\t\t//bind card container\n\t\t\tthis._cardContainer.bindAggregation(\"items\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\t//bind mobile card container\n\t\t\tthis._mobileCardContainer.bindAggregation(\"content\", {\n\t\t\t\tpath: \"/displayTiles\",\n\t\t\t\tlength: Constants.TODO_CARDS_LIMIT,\n\t\t\t\tfactory: (id, context) => this.generateCardTemplate(id, context)?.bindProperty?.(\"width\", { path: \"/cardWidth\" })\n\t\t\t});\n\n\t\t\tthis._innerControlsBound = true;\n\t\t}\n\t}\n\n\t/**\n\t * Generates the card template for the Current Panel.\n\t *\n\t * @public\n\t * @param {string} id The ID for the template.\n\t * @param {object} context The context for the template.\n\t * @returns {object} The generated card template.\n\t */\n\tpublic generateCardTemplate(id: string, context: Context): Control {\n\t\treturn new GenericTile(`${id}-tile`, {\n\t\t\tmode: \"ActionMode\",\n\t\t\tframeType: \"TwoByOne\",\n\t\t\tpressEnabled: true,\n\t\t\theader: context.getProperty(\"title\") as string,\n\t\t\twidth: context.getProperty(\"/cardWidth\") as string,\n\t\t\tstate: context.getProperty(\"loadState\") as LoadState,\n\t\t\ttileContent: [\n\t\t\t\tnew TileContent(`${id}-tileContent`, {\n\t\t\t\t\tpriority: context.getProperty(\"priority\") as Priority,\n\t\t\t\t\tpriorityText: this._toPriorityText(context.getProperty(\"priority\") as Priority),\n\t\t\t\t\tfooter: context.getProperty(\"footerText\") as string,\n\t\t\t\t\tcontent: new Text(`${id}-situationContent`, {\n\t\t\t\t\t\ttext: context.getProperty(\"message\") as string\n\t\t\t\t\t})\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\t}\n\n\t/**\n\t * Convert a priority string to a corresponding priority text.\n\t *\n\t * @private\n\t * @param {Priority} priority - The priority string.\n\t * @returns {string} The corresponding priority text.\n\t */\n\tpublic _toPriorityText(priority: Priority): string {\n\t\tlet key;\n\t\tif (priority === Priority.VeryHigh) {\n\t\t\tkey = \"veryHighPriority\";\n\t\t} else if (priority === Priority.High) {\n\t\t\tkey = \"highPriority\";\n\t\t} else if (priority === Priority.Medium) {\n\t\t\tkey = \"mediumPriority\";\n\t\t} else if (priority === Priority.Low) {\n\t\t\tkey = \"lowPriority\";\n\t\t} else {\n\t\t\tkey = \"nonePriority\";\n\t\t}\n\n\t\treturn this._i18nBundle.getText(key) as string;\n\t}\n\n\t/**\n\t * Generates placeholder tiles for the panel.\n\t *\n\t * @private\n\t */\n\tprivate _generatePlaceHolderTiles(): void {\n\t\tthis._cardCount = this._getVisibleCardCount({ isPlaceholder: true });\n\t\tthis._oData.displayTiles = this._oData.tiles = new Array(this._cardCount).fill({ loadState: \"Loading\" });\n\t\tthis._oData.isLoaded = this._oData.hasError = false;\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Calculates the number of visible cards that can fit within the available space of the To-Dos panel.\n\t *\n\t * @private\n\t * @param {CalculationProperties} [calculationProperties] - Optional properties to assist in the calculation.\n\t * @returns {number} - The number of visible cards.\n\t */\n\tprivate _getVisibleCardCount(calculationProperties?: CalculationProperties): number {\n\t\tconst layout = (this.getParent() as ToDosContainer)?._getLayout();\n\t\tlet isElementExpanded = false;\n\t\tlet targetDomRef = this._toDoWrapper?.getDomRef();\n\n\t\tif (layout) {\n\t\t\tisElementExpanded = this._isElementExpanded();\n\t\t\tconst isHeaderVisible = layout.getProperty(\"showHeader\") as boolean;\n\t\t\tconst containerDomRef = (isElementExpanded ? layout._getFullScreenContainer() : layout).getDomRef();\n\t\t\tconst sectionNodeIndex = isHeaderVisible && !isElementExpanded ? 1 : 0;\n\t\t\ttargetDomRef = containerDomRef?.childNodes[sectionNodeIndex] as Element;\n\t\t}\n\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet cardCount = isMobileDevice ? Constants.TODO_SECTION_LIMIT : 1;\n\n\t\tif (targetDomRef) {\n\t\t\t// @ts-expect-error Calculate Horizontal Card Count\n\t\t\tcardCount = this.getHorizontalCardCount(targetDomRef, calculationProperties);\n\n\t\t\tif (isElementExpanded) {\n\t\t\t\t// @ts-expect-error Calculate Vertical Card Count\n\t\t\t\tcardCount *= this.getVerticalCardCount(targetDomRef, calculationProperties);\n\t\t\t}\n\n\t\t\t//Restrict cards to the maximum limit\n\t\t\tcardCount = cardCount > Constants.TODO_CARDS_LIMIT ? Constants.TODO_CARDS_LIMIT : cardCount;\n\t\t}\n\n\t\treturn cardCount;\n\t}\n\n\t/**\n\t * Checks if the current element is expanded to full screen.\n\t *\n\t * @private\n\t * @returns {boolean} - True if the element is expanded, otherwise false.\n\t */\n\tprivate _isElementExpanded(): boolean {\n\t\tconst toDosContainer = this.getParent() as ToDosContainer;\n\t\tconst layout = toDosContainer._getLayout();\n\t\treturn layout?._getCurrentExpandedElementName() === toDosContainer.getProperty(\"fullScreenName\");\n\t}\n\n\t/**\n\t * Calculates the number of horizontal cards that can fit within the available width of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the horizontal card count for.\n\t * @returns {number} - The number of horizontal cards that can fit within the available width.\n\t */\n\tprotected getHorizontalCardCount(domRef: Element): number {\n\t\tconst domProperties = fetchElementProperties(domRef, [\"width\", \"padding-left\", \"padding-right\", \"margin-left\", \"margin-right\"]);\n\t\tconst availableWidth = Object.values(domProperties)\n\t\t\t.slice(1)\n\t\t\t.reduce((width, propertyValue) => width - propertyValue, domProperties[\"width\"]);\n\t\tconst actualCardCount = this._oData.length as number;\n\t\tconst isMobileDevice = this._controlModel.getProperty(\"/isPhone\") as boolean;\n\t\tlet horizontalCardCount;\n\t\tconst minWidth = this.getProperty(\"minCardWidth\") as number;\n\t\tconst maxWidth = this.getProperty(\"maxCardWidth\") as number;\n\t\tconst cardLayoutConfig = {\n\t\t\tcontainerWidth: availableWidth,\n\t\t\ttotalCards: actualCardCount,\n\t\t\tminWidth: minWidth,\n\t\t\tmaxWidth: maxWidth,\n\t\t\tgap: Constants.GAP\n\t\t};\n\t\tconst cardWidth = calculateCardWidth(cardLayoutConfig);\n\t\tif (isMobileDevice) {\n\t\t\thorizontalCardCount = Constants.TODO_SECTION_LIMIT;\n\t\t} else {\n\t\t\thorizontalCardCount = Math.max(Math.floor(availableWidth / cardWidth), 1);\n\t\t}\n\n\t\t// Calculate Horizontal Card Count\n\t\tthis._controlModel.setProperty(\"/cardWidth\", `${cardWidth / 16}rem`);\n\t\tthis._controlModel.setProperty(\"/horizontalCardCount\", horizontalCardCount);\n\n\t\treturn horizontalCardCount;\n\t}\n\n\t/**\n\t * Calculates the number of vertical cards that can fit within the available height of the given DOM element.\n\t *\n\t * @private\n\t * @param {Element} domRef - The DOM element to calculate the vertical card count for.\n\t * @returns {number} - The number of vertical cards that can fit within the available height.\n\t */\n\tprotected getVerticalCardCount(domRef: Element): number {\n\t\tconst sectionDomProperties = fetchElementProperties(domRef, [\"padding-top\"]);\n\t\tconst parentDomProperties = fetchElementProperties(domRef.parentElement as Element, [\"height\"]);\n\t\tconst titleHeight = this.calculateTitleHeight();\n\t\tconst availableHeight = parentDomProperties.height - sectionDomProperties[\"padding-top\"] * 2 - titleHeight;\n\t\tconst margin = 14;\n\t\tconst cardHeight = Constants.DEFAULT_CARD_HEIGHT + margin;\n\t\tconst verticalCardCount = Math.max(Math.floor(availableHeight / cardHeight), 2); //minimum of 2 rows should be displayed\n\n\t\treturn verticalCardCount;\n\t}\n\n\t/**\n\t * Calculates the combined height of the title and tab header for the To-Dos panel.\n\t *\n\t * @private\n\t * @returns {number} - The combined height of the title and tab header.\n\t */\n\tprotected calculateTitleHeight(): number {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst containerHeaderRef = UI5Element.getElementById(`${container.getId()}-header`)?.getDomRef();\n\t\tconst iconTabBarHeaderRef = UI5Element.getElementById(`${container._getInnerControl().getId()}--header`)?.getDomRef();\n\t\tconst defaultHeight = Constants.DEFAULT_TITLE_HEIGHT + Constants.DEFAULT_TAB_HEADER_HEIGHT;\n\t\tlet titleHeight = 0;\n\n\t\tif (containerHeaderRef && iconTabBarHeaderRef) {\n\t\t\ttitleHeight = containerHeaderRef.clientHeight + iconTabBarHeaderRef.clientHeight;\n\t\t}\n\n\t\treturn Math.max(titleHeight, defaultHeight);\n\t}\n\n\t/**\n\t * Generates a request object for batch requests.\n\t *\n\t * @private\n\t * @param {RequestOptions} options - Additional properties for generating the request object.\n\t * @param {boolean} [options.onlyCount] - Whether to include only the count in the request.\n\t * @returns {Object} The generated request object.\n\t */\n\tprivate _generateRequestObject(options: RequestOptions): Request {\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tconst countUrl = this.getCountUrl();\n\t\tconst urls = this.generateRequestUrls?.(cardCount);\n\n\t\tif (countUrl && options?.onlyCount) {\n\t\t\turls.splice(1);\n\t\t}\n\n\t\treturn {\n\t\t\tbaseURL: this.getBaseUrl(),\n\t\t\trequestURLs: urls,\n\t\t\tsuccess: async (args: unknown[]): Promise<void> => {\n\t\t\t\t//data process extension for panels\n\t\t\t\tawait this.onDataReceived(countUrl ? args.splice(1) : args, options);\n\n\t\t\t\t//set card count and handle empty cards\n\t\t\t\tthis._oData.length = countUrl ? Number(args[0]) : (this._oData.tiles as object[]).length;\n\t\t\t\tthis._handleEmptyCards();\n\t\t\t}\n\t\t};\n\t}\n\n\t/**\n\t * Generates request URLs for fetching data based on the specified card count.\n\t *\n\t * @public\n\t * @param {number} cardCount - The number of cards to retrieve.\n\t * @returns {string[]} An array of request URLs.\n\t */\n\tpublic generateRequestUrls(cardCount: number): string[] {\n\t\tconst urls = [];\n\t\tconst countUrl = this.getCountUrl();\n\n\t\tif (countUrl) {\n\t\t\turls.push(countUrl);\n\t\t}\n\n\t\tlet dataUrl = this.getDataUrl();\n\t\tif (this.getProperty(\"useBatch\")) {\n\t\t\tconst queryString = `$skip=0&$top=${cardCount}`;\n\t\t\tdataUrl = dataUrl.includes(\"?\") ? `${dataUrl}&${queryString}` : `${dataUrl}?${queryString}`;\n\t\t}\n\t\turls.push(dataUrl);\n\n\t\treturn urls;\n\t}\n\n\t/**\n\t * A promise that resolves when the data has been processed.\n\t * This method can be overridden to perform additional data processing operations.\n\t *\n\t * @public\n\t * @async\n\t * @param {unknown[]} results - Data retrieved from the batch call.\n\t * @param {RequestOptions} options - Additional options for parsing the data.\n\t * Structure may vary based on the backend service.\n\t */\n\tpublic async onDataReceived(results: unknown[] = [], options?: RequestOptions): Promise<void> {\n\t\tif (!options || (options && !options.onlyCount)) {\n\t\t\tthis._oData.displayTiles = this._oData.tiles = results[0] || [];\n\t\t}\n\n\t\tawait Promise.resolve();\n\t}\n\n\t/**\n\t * Handles the scenario when there are no cards to display.\n\t * Updates the illustration and description based on the selected panel and card count.\n\t *\n\t * @private\n\t */\n\tprivate _handleEmptyCards() {\n\t\tif (Number(this._oData.length) === 0) {\n\t\t\tthis._oData.illustrationType = \"sapIllus-EmptyPlanningCalendar\";\n\t\t\tthis._oData.illustrationTitle = this._isExclusivePanel() ? this._i18nBundle.getText(\"noToDoTitle\") : this.getNoDataText();\n\t\t\tthis._oData.illustrationDescription = this._isExclusivePanel()\n\t\t\t\t? this._i18nBundle.getText(\"noToDoDesc\")\n\t\t\t\t: this._i18nBundle.getText(\"emptyToDoDesc\");\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the panel is exclusive based on support and the number of panels.\n\t *\n\t * @private\n\t * @returns {boolean} True if the panel is exclusive, otherwise false.\n\t */\n\tprivate _isExclusivePanel(): boolean {\n\t\tconst allPanels = (this.getParent() as ToDosContainer).getContent() as ToDoPanel[];\n\t\tconst supportedPanels = allPanels.filter((panel) => panel._getSupported());\n\n\t\treturn supportedPanels.length === 1 || (allPanels.length === 1 && this._getSupported());\n\t}\n\n\t/**\n\t * Sets the interval for refreshing the section.\n\t *\n\t * @private\n\t */\n\tprivate _setSectionRefreshInterval(): void {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t\tthis._oData.refreshFn = setInterval(() => {\n\t\t\tthis._oData.lastRefreshedTime = this._oData.lastRefreshedTime || new Date();\n\t\t\tthis._oData.refreshInfo = this._toRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._oData.fullRefreshInfo = this._toFullRelativeDateTime(this._oData.lastRefreshedTime as Date);\n\t\t\tthis._updateRefreshInformation();\n\t\t}, Constants.TODOS_REFRESH_INTERVAL);\n\t}\n\n\t/**\n\t * Updates the refresh information and adjusts the layout.\n\t *\n\t * @private\n\t */\n\tpublic _updateRefreshInformation(): void {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tif (container.getProperty(\"selectedKey\") === this.getProperty(\"key\")) {\n\t\t\tthis._refreshBtn.setProperty(\"text\", this._oData.refreshInfo, true);\n\t\t\tthis._accRefreshLabel.setProperty(\"text\", this._oData.fullRefreshInfo, true);\n\t\t\tthis._refreshBtn.setAggregation(\"tooltip\", this._oData.fullRefreshInfo as ManagedObject, true);\n\t\t\tcontainer._updateContainerHeader(this);\n\t\t}\n\n\t\tthis._adjustLayout();\n\t}\n\n\t/**\n\t * Adjusts the layout based on card count and device type.\n\t *\n\t * @private\n\t */\n\tpublic _adjustLayout() {\n\t\t// Update visible cards\n\t\tconst cardCount = this._getVisibleCardCount();\n\t\tif ((this._oData.tiles as object[]).length && !this._oData.hasError) {\n\t\t\tconst displayCards = (this._oData.tiles as object[]).slice(0, cardCount);\n\t\t\tthis._controlModel.setProperty(\"/displayTiles\", displayCards);\n\t\t}\n\n\t\t// Update if device type is phone\n\t\tthis._controlModel.setProperty(\"/isPhone\", this.getDeviceType() === DeviceType.Mobile);\n\n\t\t// Show/Hide Full Screen Button if available\n\t\t(this.getParent() as ToDosContainer)?.toggleFullScreenElements(\n\t\t\tthis,\n\t\t\tthis._isElementExpanded() || Number(this._oData.length) > cardCount\n\t\t);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date.\n\t *\n\t * @private\n\t * @param {Date} date Date object or Date String\n\t * @returns {string} Formatted Date\n\t */\n\tpublic _toRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.relativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Formats the given date to a relative date string with full units (e.g., \"2 minutes ago\").\n\t * Intended for accessibility use such as screen readers.\n\t *\n\t * @private\n\t * @param {Date} date Date object or date string\n\t * @returns {string} Fully formatted relative date string\n\t */\n\tprivate _toFullRelativeDateTime(date: Date): string {\n\t\tconst inputDate = new Date(date);\n\t\treturn isNaN(Number(inputDate)) ? \"\" : ToDoPanel.fullRelativeDateFormatter.format(inputDate);\n\t}\n\n\t/**\n\t * Get the text for the \"No Data\" message.\n\t *\n\t * @public\n\t * @returns {string} The text for the \"No Data\" message.\n\t */\n\tpublic getNoDataText(): string {\n\t\treturn this._i18nBundle.getText(\"noData\") as string;\n\t}\n\n\t/**\n\t * Parses the response object and returns the appropriate value.\n\t *\n\t * @private\n\t * @param {Object} response - The response object.\n\t * @param {Object} [response.d] - The 'd' property of the response object.\n\t * @param {Array} [response.d.results] - The results array.\n\t * @param {string|number} [response.d] - The 'd' property of the response object which may contain a numeric value.\n\t * @param {string|number} [response] - The response object which may contain a numeric value.\n\t * @param {string|number} [response.value] - The 'value' property of the response object which may contain a numeric value.\n\t * @returns {Response} - The parsed value extracted from the response object.\n\t */\n\tprivate _parseResponse(response: Response): Response {\n\t\tconst { d = {}, value } = response || {};\n\t\tconst results = d?.results;\n\t\tconst numericD = !isNaN(+d) && +d;\n\t\tconst numericResponse = !isNaN(+response) && +response;\n\n\t\treturn (results || numericD || numericResponse || value || response || 0) as Response;\n\t}\n\n\t/**\n\t * Submits a batch request for multiple URLs and processes the responses.\n\t *\n\t * @private\n\t * @returns {Promise} A Promise that resolves when all batch requests are completed.\n\t */\n\tprotected _submitBatch(): Promise<unknown[]> {\n\t\treturn Promise.all(\n\t\t\tthis.requests.map(async (request: Request) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst useBatch = this.getProperty(\"useBatch\") as boolean;\n\t\t\t\t\tlet responses = useBatch\n\t\t\t\t\t\t? await this.batchHelper.createMultipartRequest(request.baseURL, request.requestURLs)\n\t\t\t\t\t\t: await HttpHelper.GetMultipleRequests(request.requestURLs);\n\n\t\t\t\t\tif (responses.length) {\n\t\t\t\t\t\tconst processedResponses = responses.map((response: string | Response) => {\n\t\t\t\t\t\t\tif (typeof response === \"string\") {\n\t\t\t\t\t\t\t\tresponse = JSON.parse(response) as Response;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn this._parseResponse(response);\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\t// Call success callback, if any\n\t\t\t\t\t\tif (request.success && typeof request.success === \"function\") {\n\t\t\t\t\t\t\tawait request.success(processedResponses);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\treturn processedResponses;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(\"Invalid response\");\n\t\t\t\t\t}\n\t\t\t\t} catch (error: unknown) {\n\t\t\t\t\tthis._handleError(error);\n\t\t\t\t} finally {\n\t\t\t\t\tthis._clearRequests();\n\t\t\t\t}\n\t\t\t})\n\t\t);\n\t}\n\n\t/**\n\t * Handles errors by updating the data and logging the error.\n\t *\n\t * @private\n\t * @param {Error} error - The error object to handle.\n\t */\n\tprivate _handleError(error: unknown) {\n\t\tthis._oData.displayTiles = this._oData.tiles = [];\n\t\tthis._oData.getSupported = this._oData.isLoaded = this._oData.hasError = true;\n\t\tthis._oData.illustrationType = \"sapIllus-UnableToLoad\";\n\t\tthis._oData.illustrationTitle = this._oData.illustrationDescription = \"\";\n\n\t\tLog.error(error as string);\n\t\tthis._controlModel.refresh();\n\t}\n\n\t/**\n\t * Clears the list of requests.\n\t *\n\t * @private\n\t */\n\tprotected _clearRequests() {\n\t\tthis.requests = [];\n\t}\n\n\t/**\n\t * Checks if the panel is loaded.\n\t *\n\t * @private\n\t * @returns {boolean} true if the panel is loaded, false otherwise.\n\t */\n\tpublic _isLoaded(): boolean {\n\t\tconst parentContainer = this.getParent() as ToDosContainer;\n\t\tconst isContainerExpanded = parentContainer?._getLayout()?.getProperty(\"expanded\") as boolean;\n\n\t\tconst { isLoaded, isExpandedOnce } = this._oData;\n\n\t\tif (!isContainerExpanded) {\n\t\t\treturn isLoaded as boolean;\n\t\t}\n\n\t\treturn (isExpandedOnce && isLoaded) as boolean;\n\t}\n\n\t/**\n\t * Set the loaded status of the ToDoPanel.\n\t *\n\t * @private\n\t * @param {boolean} isLoaded - The new loaded status to set for the ToDoPanel.\n\t */\n\tpublic _setLoaded(isLoaded: boolean): void {\n\t\tthis._oData.isLoaded = isLoaded;\n\t}\n\n\t/**\n\t * Gets the supported status of the panel.\n\t *\n\t * @private\n\t * @returns {boolean} The supported status of the panel.\n\t */\n\tpublic _getSupported(): boolean {\n\t\treturn this._oData.getSupported as boolean;\n\t}\n\n\t/**\n\t * Sets the supported status of the panel.\n\t *\n\t * @private\n\t * @param {boolean} value - The value to set for supported status.\n\t */\n\tpublic _setSupported(isSupported: boolean): void {\n\t\tthis._oData.getSupported = isSupported;\n\t}\n\n\t/**\n\t * Extracts the app intent from the target app URL.\n\t *\n\t * @private\n\t * @returns {Intent | null} The app intent object with target and parameters, or null if not found.\n\t */\n\tpublic _getAppIntent(): Intent | null {\n\t\tconst pattern = /#([^?-]+)-([^?#]+)(?:\\?([^#]+))?(?:#.*)?/;\n\t\tconst match = this.getTargetAppUrl().match(pattern);\n\n\t\tif (match) {\n\t\t\tconst target = {\n\t\t\t\tsemanticObject: match[1],\n\t\t\t\taction: match[2]\n\t\t\t};\n\t\t\tconst params = {} as Record<string, string>;\n\n\t\t\tif (match[3]) {\n\t\t\t\tconst paramsArray = match[3].split(\"&\");\n\t\t\t\tfor (const param of paramsArray) {\n\t\t\t\t\tconst [key, value] = param.split(\"=\");\n\t\t\t\t\tparams[key] = value;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\ttarget,\n\t\t\t\tparams\n\t\t\t};\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Switch to available tab if current panel has empty cards or has error\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _switchTabIfRequired() {\n\t\tconst container = this.getParent() as ToDosContainer;\n\t\tconst selectedKey = container?.getProperty(\"selectedKey\") as string;\n\n\t\tif (selectedKey === this.getProperty(\"key\") && (this._oData.length === 0 || this._oData.hasError)) {\n\t\t\tlet nextAvailablePanel;\n\t\t\tconst panels = container?.getAggregation(\"content\") as ToDoPanel[];\n\n\t\t\tfor (const panel of panels) {\n\t\t\t\tif (panel !== this) {\n\t\t\t\t\t//ensure that panel is loaded first\n\t\t\t\t\tawait panel._loadCards();\n\n\t\t\t\t\tif (panel._getSupported() && !panel._isLoaded() && panel._getCardCount() > 0) {\n\t\t\t\t\t\tnextAvailablePanel = panel;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (nextAvailablePanel) {\n\t\t\t\tcontainer?.setProperty(\"selectedKey\", nextAvailablePanel.getProperty(\"key\"));\n\t\t\t\tToDosContainer.cardCount = this._cardCount;\n\t\t\t\tawait nextAvailablePanel._loadCards(true);\n\t\t\t\tToDosContainer.cardCount = undefined;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Handles the press event to view all items.\n\t *\n\t * @private\n\t */\n\tpublic _onPressViewAll() {\n\t\tURLHelper.redirect(this.getTargetAppUrl(), false);\n\t}\n\n\t/**\n\t * Retrieves the count of cards in the panel.\n\t *\n\t * @private\n\t * @returns {number} The number of cards.\n\t */\n\tpublic _getCardCount(): number {\n\t\treturn Number(this._oData.length);\n\t}\n\n\t/**\n\t * Handles actions to be performed before the To-Dos panel is expanded.\n\t * If the panel has not been expanded before in full screen, the cards will be loaded once.\n\t *\n\t * @private\n\t */\n\tprivate async _beforePanelExpand() {\n\t\tif (!this._oData.isExpandedOnce) {\n\t\t\tthis._oData.isExpandedOnce = true;\n\t\t\tawait this._loadCards(true);\n\t\t}\n\t}\n\n\t/**\n\t * Exit lifecycle method.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic exit() {\n\t\tclearInterval(this._oData.refreshFn as number);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -93,8 +93,8 @@ const Constants = {
|
|
|
93
93
|
* @since 1.121
|
|
94
94
|
*
|
|
95
95
|
* @abstract
|
|
96
|
-
* @
|
|
97
|
-
* @
|
|
96
|
+
* @private
|
|
97
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
98
98
|
*
|
|
99
99
|
* @alias sap.cux.home.ToDoPanel
|
|
100
100
|
*/
|
|
@@ -172,6 +172,12 @@ export default abstract class ToDoPanel extends BasePanel implements IToDoPanel
|
|
|
172
172
|
* @private
|
|
173
173
|
*/
|
|
174
174
|
useBatch: { type: "boolean", group: "Misc", defaultValue: true, visibility: "hidden" }
|
|
175
|
+
},
|
|
176
|
+
aggregations: {
|
|
177
|
+
/**
|
|
178
|
+
* Specifies the content aggregation of the panel.
|
|
179
|
+
*/
|
|
180
|
+
content: { multiple: true, singularName: "content", visibility: "hidden" }
|
|
175
181
|
}
|
|
176
182
|
};
|
|
177
183
|
|
|
@@ -226,7 +232,7 @@ export default abstract class ToDoPanel extends BasePanel implements IToDoPanel
|
|
|
226
232
|
items: [this._generateCardContainer(), this._generateMobileCardContainer(), this._generateErrorMessage()]
|
|
227
233
|
});
|
|
228
234
|
this._toDoWrapper.setModel(this._controlModel);
|
|
229
|
-
this.
|
|
235
|
+
this.addContent(this._toDoWrapper);
|
|
230
236
|
|
|
231
237
|
//Setup Common Menu Items
|
|
232
238
|
const menuItem = new MenuItem(`${this.getId()}-refresh`, {
|
|
@@ -13,14 +13,13 @@ declare module "sap/cux/home/ToDosContainer" {
|
|
|
13
13
|
* @version 0.0.1
|
|
14
14
|
* @since 1.121
|
|
15
15
|
*
|
|
16
|
-
* @
|
|
17
|
-
* @
|
|
16
|
+
* @private
|
|
17
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
18
18
|
*
|
|
19
19
|
* @alias sap.cux.home.ToDosContainer
|
|
20
20
|
*/
|
|
21
21
|
export default class ToDosContainer extends BaseContainer {
|
|
22
22
|
private _isAuthCheckRequired;
|
|
23
|
-
private _iconTabBarControl;
|
|
24
23
|
static cardCount: number | undefined;
|
|
25
24
|
static readonly metadata: MetadataOptions;
|
|
26
25
|
static renderer: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToDosContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ToDosContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"ToDosContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ToDosContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,6BAA6B,CAAC;IAO7C,OAAO,KAAK,MAAM,mBAAmB,CAAC;IACtC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAGtD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAMvD;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;QACxD,OAAO,CAAC,oBAAoB,CAAW;QAEvC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAKvC;QACF,MAAM,CAAC,QAAQ;;;;UAGb;oBAEU,EAAE,CAAC,EAAE,MAAM,GAAG,sBAAsB;oBACpC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAW1D;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAWnB;;;;;;WAMG;QACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;QAkBlC;;;;;;;;WAQG;gBACW,iBAAiB;QAoB/B;;;;;WAKG;QACH,OAAO,CAAC,6BAA6B;QAWrC;;;;;;;WAOG;gBACW,cAAc;QAqB5B;;;;;;;WAOG;kBACa,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;QAa3D;;;;;;WAMG;QACU,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;QAMzC;;;;;;WAMG;QACI,cAAc,IAAI,MAAM;QAS/B;;;;;WAKG;QACH,OAAO,CAAC,cAAc;QAItB;;;;;WAKG;QACI,YAAY;QAQnB;;;;WAIG;QACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;KAGhD;CAEA"}
|
|
@@ -186,8 +186,8 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./uti
|
|
|
186
186
|
* @version 0.0.1
|
|
187
187
|
* @since 1.121
|
|
188
188
|
*
|
|
189
|
-
* @
|
|
190
|
-
* @
|
|
189
|
+
* @private
|
|
190
|
+
* @ui5-restricted ux.eng.s4producthomes1
|
|
191
191
|
*
|
|
192
192
|
* @alias sap.cux.home.ToDosContainer
|
|
193
193
|
*/
|
|
@@ -242,9 +242,6 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./uti
|
|
|
242
242
|
load: function _load() {
|
|
243
243
|
try {
|
|
244
244
|
const _this = this;
|
|
245
|
-
_this._iconTabBarControl = _this._getInnerControl();
|
|
246
|
-
|
|
247
|
-
//initiate loading of all cards after auth check
|
|
248
245
|
const _temp2 = _catch(function () {
|
|
249
246
|
return Promise.resolve(_this._performAuthCheck()).then(function () {
|
|
250
247
|
const panels = _this.getContent() || [];
|
|
@@ -253,9 +250,6 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./uti
|
|
|
253
250
|
if (unsupportedPanels.length === panels.length) {
|
|
254
251
|
_this._handleToDoUnauthorizedAccess();
|
|
255
252
|
} else {
|
|
256
|
-
// Hide IconTabBar header if only one panel is accessible
|
|
257
|
-
const isOnePanelSupported = panels.length - unsupportedPanels.length === 1;
|
|
258
|
-
_this._iconTabBarControl?.toggleStyleClass("sapUiITBHide", isOnePanelSupported);
|
|
259
253
|
return Promise.resolve(_this._loadAllPanels()).then(function () {});
|
|
260
254
|
}
|
|
261
255
|
}();
|
|
@@ -264,6 +258,7 @@ sap.ui.define(["sap/base/Log", "sap/ushell/Container", "./BaseContainer", "./uti
|
|
|
264
258
|
}, function (error) {
|
|
265
259
|
_this._handleToDoUnauthorizedAccess(error);
|
|
266
260
|
});
|
|
261
|
+
//initiate loading of all cards after auth check
|
|
267
262
|
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(function () {}) : void 0);
|
|
268
263
|
} catch (e) {
|
|
269
264
|
return Promise.reject(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToDosContainer.js","names":["sap","ui","define","Log","Container","__BaseContainer","___utils_placeholder_ToDosPlaceholder","___utils_Device","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BaseContainer","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","getTodosPlaceholder","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","DeviceType","ToDosContainer","extend","renderer","apiVersion","metadata","library","properties","fullScreenName","type","group","defaultValue","visibility","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","init","_init","BaseContainer.prototype.init.call","setProperty","_i18nBundle","getText","addStyleClass","_isAuthCheckRequired","addCustomSetting","load","_load","_iconTabBarControl","_getInnerControl","_temp2","Promise","resolve","_performAuthCheck","panels","getContent","unsupportedPanels","filter","panel","_getSupported","_temp","_handleToDoUnauthorizedAccess","isOnePanelSupported","toggleStyleClass","_loadAllPanels","error","_this2","getServiceAsync","navigationService","intents","map","getTargetAppUrl","_getAppIntent","isNavigationSupported","_navigationService$is","responses","forEach","index","_setSupported","supported","oError","message","fireEvent","removeContent","setVisible","getParent","resetSections","forceRefresh","_this3","selectedKey","getProperty","sortedPanels","sort","firstPanel","secondPanel","_temp3","_isLoaded","_loadCards","_onPanelSelect","event","_this4","_temp5","selectedPanel","_updateRefreshInformation","BaseContainer.prototype._onPanelSelect.call","_getSelectedPanel","_temp4","refreshData","_refreshData","_this5","_setLoaded","getSelectedKey","_getSelectedKey","_getDefaultKey","adjustLayout","_adjustLayout","toggleActionButtons","getDeviceType","Mobile","getGenericPlaceholderContent","_getGenericPlaceholderContent"],"sources":["ToDosContainer.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 IconTabBar from \"sap/m/IconTabBar\";\nimport Event from \"sap/ui/base/Event\";\nimport { MetadataOptions } from \"sap/ui/core/Element\";\nimport Container from \"sap/ushell/Container\";\nimport Navigation from \"sap/ushell/services/Navigation\";\nimport type { $BaseContainerSettings } from \"./BaseContainer\";\nimport BaseContainer from \"./BaseContainer\";\nimport Layout from \"./Layout\";\nimport ToDoPanel, { Intent } from \"./ToDoPanel\";\nimport { getTodosPlaceholder } from \"./utils/placeholder/ToDosPlaceholder\";\nimport { DeviceType } from \"./utils/Device\";\n\n/**\n *\n * Container class for managing and storing To-Do cards.\n *\n * @extends 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.ToDosContainer\n */\nexport default class ToDosContainer extends BaseContainer {\n\tprivate _isAuthCheckRequired!: boolean;\n\tprivate _iconTabBarControl!: IconTabBar;\n\n\tstatic cardCount: number | undefined;\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\tfullScreenName: { type: \"string\", group: \"Misc\", defaultValue: \"ST1\", visibility: \"hidden\" }\n\t\t}\n\t};\n\tstatic renderer = {\n\t\t...BaseContainer.renderer,\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 To-Dos 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?: object) {\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\n\t\t//Update Container Title\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"toDosTitle\"));\n\t\tthis.addStyleClass(\"sapCuxToDosContainer\");\n\t\tthis._isAuthCheckRequired = true;\n\t\tthis.addCustomSetting(\"title\", this._i18nBundle.getText(\"toDosTitle\") as string);\n\t\tthis.addCustomSetting(\"text\", this._i18nBundle.getText(\"forMeTodayMsg\") as string);\n\t}\n\n\t/**\n\t * Loads the ToDos section.\n\t * Overrides the load method of the BaseContainer.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic async load(): Promise<void> {\n\t\tthis._iconTabBarControl = this._getInnerControl() as IconTabBar;\n\n\t\t//initiate loading of all cards after auth check\n\t\ttry {\n\t\t\tawait this._performAuthCheck();\n\n\t\t\tconst panels = (this.getContent() as ToDoPanel[]) || [];\n\t\t\tconst unsupportedPanels = panels.filter((panel) => !panel._getSupported());\n\n\t\t\tif (unsupportedPanels.length === panels.length) {\n\t\t\t\tthis._handleToDoUnauthorizedAccess();\n\t\t\t} else {\n\t\t\t\t// Hide IconTabBar header if only one panel is accessible\n\t\t\t\tconst isOnePanelSupported = panels.length - unsupportedPanels.length === 1;\n\t\t\t\tthis._iconTabBarControl?.toggleStyleClass(\"sapUiITBHide\", isOnePanelSupported);\n\t\t\t\tawait this._loadAllPanels();\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tthis._handleToDoUnauthorizedAccess(error as Error);\n\t\t}\n\t}\n\n\t/**\n\t * Performs an authorization check for the ToDosContainer.\n\t * Checks if the authorization check is required and updates panel support accordingly.\n\t *\n\t * @private\n\t * @async\n\t * @returns {Promise<void>} A Promise that resolves when the authorization check is completed.\n\t * @throws {Error} If an error occurs during the authorization check.\n\t */\n\tprivate async _performAuthCheck(): Promise<void> {\n\t\ttry {\n\t\t\tif (!this._isAuthCheckRequired) {\n\t\t\t\treturn Promise.resolve();\n\t\t\t} else {\n\t\t\t\tconst navigationService = await Container.getServiceAsync<Navigation>(\"Navigation\");\n\t\t\t\tconst panels = (this.getContent() as ToDoPanel[]) || [];\n\t\t\t\tconst intents = panels.map((panel) => (panel.getTargetAppUrl() ? panel._getAppIntent() : \"#\")) as Intent[];\n\t\t\t\tconst responses = (await navigationService.isNavigationSupported(intents)) as { supported: boolean }[];\n\n\t\t\t\t//Update panel support information\n\t\t\t\tpanels.forEach((panel, index) => panel._setSupported(responses[index].supported));\n\t\t\t\tthis._isAuthCheckRequired = false;\n\t\t\t\treturn Promise.resolve();\n\t\t\t}\n\t\t} catch (oError) {\n\t\t\treturn Promise.reject(oError as Error);\n\t\t}\n\t}\n\n\t/**\n\t * Handles unauthorized access to the ToDosContainer by hiding all inner controls\n\t *\n\t * @private\n\t * @param {Error} error - An optional custom error message or an Error object.\n\t */\n\tprivate _handleToDoUnauthorizedAccess(error?: Error): void {\n\t\t//Remove all Inner Controls\n\t\tLog.error(error?.message || \"User has no access to any available panels\");\n\t\t(this.getContent() as ToDoPanel[])?.forEach((panel) => {\n\t\t\tpanel.fireEvent(\"loaded\");\n\t\t\tthis.removeContent(panel);\n\t\t});\n\t\tthis.setVisible(false);\n\t\t(this.getParent() as Layout)?.resetSections?.();\n\t}\n\n\t/**\n\t * Asynchronously loads all panels, ensuring the currently selected panel is loaded first.\n\t *\n\t * @private\n\t * @async\n\t * @param {boolean} forceRefresh - force refresh cards\n\t * @returns {Promise<void>} A promise that resolves when all panels are loaded.\n\t */\n\tprivate async _loadAllPanels(forceRefresh?: boolean): Promise<void> {\n\t\t//Sort panels so that the current panel is always loaded first\n\t\tconst selectedKey = this.getProperty(\"selectedKey\") as string;\n\t\tconst panels = (this.getContent() as ToDoPanel[]) || [];\n\t\tconst sortedPanels = [...panels].sort((firstPanel, secondPanel) => {\n\t\t\tif (firstPanel.getProperty(\"key\") === selectedKey) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif (secondPanel.getProperty(\"key\") === selectedKey) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\treturn 0;\n\t\t});\n\n\t\tfor (const panel of sortedPanels) {\n\t\t\tif (!panel._isLoaded?.()) {\n\t\t\t\tawait panel._loadCards(forceRefresh);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Overridden method for selection of panel in the IconTabBar.\n\t * Loads the selected panel and updates the header elements as well\n\t *\n\t * @private\n\t * @async\n\t * @override\n\t */\n\tprotected async _onPanelSelect(event: Event): Promise<void> {\n\t\tsuper._onPanelSelect(event);\n\n\t\t//load panel if not loaded already\n\t\tconst selectedPanel = this._getSelectedPanel() as ToDoPanel;\n\t\tif (!selectedPanel._isLoaded()) {\n\t\t\tawait selectedPanel._loadCards(true);\n\t\t}\n\n\t\t//updates refresh information of the selected panel\n\t\tselectedPanel._updateRefreshInformation();\n\t}\n\n\t/**\n\t * Asynchronously refreshes the section by forcing all inner panels to be reloaded.\n\t *\n\t * @public\n\t * @async\n\t * @returns {Promise<void>} A promise that resolves when the section is successfully refreshed.\n\t */\n\tpublic async refreshData(): Promise<void> {\n\t\t//Force all inner panels to be reloaded\n\t\t(this.getContent() as ToDoPanel[])?.forEach((panel) => panel._setLoaded(false));\n\t\treturn await this._loadAllPanels(true);\n\t}\n\n\t/**\n\t * Gets the selected key of the To-Dos container.\n\t * If no selected key is set, it defaults to the first item.\n\t *\n\t * @public\n\t * @returns {string} The selected key.\n\t */\n\tpublic getSelectedKey(): string {\n\t\t//Default selected key to first item, if null\n\t\tif (!this.getProperty(\"selectedKey\")) {\n\t\t\tthis.setProperty(\"selectedKey\", this._getDefaultKey());\n\t\t}\n\n\t\treturn this.getProperty(\"selectedKey\") as string;\n\t}\n\n\t/**\n\t * Gets the default key for the ToDosContainer by returning the key of the first panel\n\t *\n\t * @private\n\t * @returns {string} The default key if it exists, or null if there are no panels\n\t */\n\tprivate _getDefaultKey(): string {\n\t\treturn this.getContent()?.[0]?.getProperty(\"key\") as string;\n\t}\n\n\t/**\n\t * Adjusts the layout of the all panels in 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\tthis.toggleActionButtons(this.getDeviceType() !== DeviceType.Mobile);\n\n\t\t//adjust layout of all panels\n\t\t(this.getContent() as ToDoPanel[])?.forEach((panel) => panel._adjustLayout());\n\t}\n\n\t/**\n\t * Retrieves the generic placeholder content for the Todos container.\n\t *\n\t * @returns {string} The HTML string representing the Todos container's placeholder content.\n\t */\n\tprotected getGenericPlaceholderContent(): string {\n\t\treturn getTodosPlaceholder();\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ToDosContainer.js","names":["sap","ui","define","Log","Container","__BaseContainer","___utils_placeholder_ToDosPlaceholder","___utils_Device","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BaseContainer","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","observer","prototype","onFulfilled","onRejected","callback","_this","_isSettledPact","thenable","_forTo","array","check","i","reject","_cycle","length","getTodosPlaceholder","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","DeviceType","ToDosContainer","extend","renderer","apiVersion","metadata","library","properties","fullScreenName","type","group","defaultValue","visibility","constructor","_constructor","id","settings","BaseContainer.prototype.constructor.call","init","_init","BaseContainer.prototype.init.call","setProperty","_i18nBundle","getText","addStyleClass","_isAuthCheckRequired","addCustomSetting","load","_load","_temp2","Promise","resolve","_performAuthCheck","panels","getContent","unsupportedPanels","filter","panel","_getSupported","_temp","_handleToDoUnauthorizedAccess","_loadAllPanels","error","_this2","getServiceAsync","navigationService","intents","map","getTargetAppUrl","_getAppIntent","isNavigationSupported","_navigationService$is","responses","forEach","index","_setSupported","supported","oError","message","fireEvent","removeContent","setVisible","getParent","resetSections","forceRefresh","_this3","selectedKey","getProperty","sortedPanels","sort","firstPanel","secondPanel","_temp3","_isLoaded","_loadCards","_onPanelSelect","event","_this4","_temp5","selectedPanel","_updateRefreshInformation","BaseContainer.prototype._onPanelSelect.call","_getSelectedPanel","_temp4","refreshData","_refreshData","_this5","_setLoaded","getSelectedKey","_getSelectedKey","_getDefaultKey","adjustLayout","_adjustLayout","toggleActionButtons","getDeviceType","Mobile","getGenericPlaceholderContent","_getGenericPlaceholderContent"],"sources":["ToDosContainer.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 Event from \"sap/ui/base/Event\";\nimport { MetadataOptions } from \"sap/ui/core/Element\";\nimport Container from \"sap/ushell/Container\";\nimport Navigation from \"sap/ushell/services/Navigation\";\nimport type { $BaseContainerSettings } from \"./BaseContainer\";\nimport BaseContainer from \"./BaseContainer\";\nimport Layout from \"./Layout\";\nimport ToDoPanel, { Intent } from \"./ToDoPanel\";\nimport { getTodosPlaceholder } from \"./utils/placeholder/ToDosPlaceholder\";\nimport { DeviceType } from \"./utils/Device\";\n\n/**\n *\n * Container class for managing and storing To-Do cards.\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.ToDosContainer\n */\nexport default class ToDosContainer extends BaseContainer {\n\tprivate _isAuthCheckRequired!: boolean;\n\n\tstatic cardCount: number | undefined;\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tproperties: {\n\t\t\tfullScreenName: { type: \"string\", group: \"Misc\", defaultValue: \"ST1\", visibility: \"hidden\" }\n\t\t}\n\t};\n\tstatic renderer = {\n\t\t...BaseContainer.renderer,\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 To-Dos 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?: object) {\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\n\t\t//Update Container Title\n\t\tthis.setProperty(\"title\", this._i18nBundle?.getText(\"toDosTitle\"));\n\t\tthis.addStyleClass(\"sapCuxToDosContainer\");\n\t\tthis._isAuthCheckRequired = true;\n\t\tthis.addCustomSetting(\"title\", this._i18nBundle.getText(\"toDosTitle\") as string);\n\t\tthis.addCustomSetting(\"text\", this._i18nBundle.getText(\"forMeTodayMsg\") as string);\n\t}\n\n\t/**\n\t * Loads the ToDos section.\n\t * Overrides the load method of the BaseContainer.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic async load(): Promise<void> {\n\t\t//initiate loading of all cards after auth check\n\t\ttry {\n\t\t\tawait this._performAuthCheck();\n\n\t\t\tconst panels = (this.getContent() as ToDoPanel[]) || [];\n\t\t\tconst unsupportedPanels = panels.filter((panel) => !panel._getSupported());\n\n\t\t\tif (unsupportedPanels.length === panels.length) {\n\t\t\t\tthis._handleToDoUnauthorizedAccess();\n\t\t\t} else {\n\t\t\t\tawait this._loadAllPanels();\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tthis._handleToDoUnauthorizedAccess(error as Error);\n\t\t}\n\t}\n\n\t/**\n\t * Performs an authorization check for the ToDosContainer.\n\t * Checks if the authorization check is required and updates panel support accordingly.\n\t *\n\t * @private\n\t * @async\n\t * @returns {Promise<void>} A Promise that resolves when the authorization check is completed.\n\t * @throws {Error} If an error occurs during the authorization check.\n\t */\n\tprivate async _performAuthCheck(): Promise<void> {\n\t\ttry {\n\t\t\tif (!this._isAuthCheckRequired) {\n\t\t\t\treturn Promise.resolve();\n\t\t\t} else {\n\t\t\t\tconst navigationService = await Container.getServiceAsync<Navigation>(\"Navigation\");\n\t\t\t\tconst panels = (this.getContent() as ToDoPanel[]) || [];\n\t\t\t\tconst intents = panels.map((panel) => (panel.getTargetAppUrl() ? panel._getAppIntent() : \"#\")) as Intent[];\n\t\t\t\tconst responses = (await navigationService.isNavigationSupported(intents)) as { supported: boolean }[];\n\n\t\t\t\t//Update panel support information\n\t\t\t\tpanels.forEach((panel, index) => panel._setSupported(responses[index].supported));\n\t\t\t\tthis._isAuthCheckRequired = false;\n\t\t\t\treturn Promise.resolve();\n\t\t\t}\n\t\t} catch (oError) {\n\t\t\treturn Promise.reject(oError as Error);\n\t\t}\n\t}\n\n\t/**\n\t * Handles unauthorized access to the ToDosContainer by hiding all inner controls\n\t *\n\t * @private\n\t * @param {Error} error - An optional custom error message or an Error object.\n\t */\n\tprivate _handleToDoUnauthorizedAccess(error?: Error): void {\n\t\t//Remove all Inner Controls\n\t\tLog.error(error?.message || \"User has no access to any available panels\");\n\t\t(this.getContent() as ToDoPanel[])?.forEach((panel) => {\n\t\t\tpanel.fireEvent(\"loaded\");\n\t\t\tthis.removeContent(panel);\n\t\t});\n\t\tthis.setVisible(false);\n\t\t(this.getParent() as Layout)?.resetSections?.();\n\t}\n\n\t/**\n\t * Asynchronously loads all panels, ensuring the currently selected panel is loaded first.\n\t *\n\t * @private\n\t * @async\n\t * @param {boolean} forceRefresh - force refresh cards\n\t * @returns {Promise<void>} A promise that resolves when all panels are loaded.\n\t */\n\tprivate async _loadAllPanels(forceRefresh?: boolean): Promise<void> {\n\t\t//Sort panels so that the current panel is always loaded first\n\t\tconst selectedKey = this.getProperty(\"selectedKey\") as string;\n\t\tconst panels = (this.getContent() as ToDoPanel[]) || [];\n\t\tconst sortedPanels = [...panels].sort((firstPanel, secondPanel) => {\n\t\t\tif (firstPanel.getProperty(\"key\") === selectedKey) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif (secondPanel.getProperty(\"key\") === selectedKey) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\treturn 0;\n\t\t});\n\n\t\tfor (const panel of sortedPanels) {\n\t\t\tif (!panel._isLoaded?.()) {\n\t\t\t\tawait panel._loadCards(forceRefresh);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Overridden method for selection of panel in the IconTabBar.\n\t * Loads the selected panel and updates the header elements as well\n\t *\n\t * @private\n\t * @async\n\t * @override\n\t */\n\tprotected async _onPanelSelect(event: Event): Promise<void> {\n\t\tsuper._onPanelSelect(event);\n\n\t\t//load panel if not loaded already\n\t\tconst selectedPanel = this._getSelectedPanel() as ToDoPanel;\n\t\tif (!selectedPanel._isLoaded()) {\n\t\t\tawait selectedPanel._loadCards(true);\n\t\t}\n\n\t\t//updates refresh information of the selected panel\n\t\tselectedPanel._updateRefreshInformation();\n\t}\n\n\t/**\n\t * Asynchronously refreshes the section by forcing all inner panels to be reloaded.\n\t *\n\t * @public\n\t * @async\n\t * @returns {Promise<void>} A promise that resolves when the section is successfully refreshed.\n\t */\n\tpublic async refreshData(): Promise<void> {\n\t\t//Force all inner panels to be reloaded\n\t\t(this.getContent() as ToDoPanel[])?.forEach((panel) => panel._setLoaded(false));\n\t\treturn await this._loadAllPanels(true);\n\t}\n\n\t/**\n\t * Gets the selected key of the To-Dos container.\n\t * If no selected key is set, it defaults to the first item.\n\t *\n\t * @public\n\t * @returns {string} The selected key.\n\t */\n\tpublic getSelectedKey(): string {\n\t\t//Default selected key to first item, if null\n\t\tif (!this.getProperty(\"selectedKey\")) {\n\t\t\tthis.setProperty(\"selectedKey\", this._getDefaultKey());\n\t\t}\n\n\t\treturn this.getProperty(\"selectedKey\") as string;\n\t}\n\n\t/**\n\t * Gets the default key for the ToDosContainer by returning the key of the first panel\n\t *\n\t * @private\n\t * @returns {string} The default key if it exists, or null if there are no panels\n\t */\n\tprivate _getDefaultKey(): string {\n\t\treturn this.getContent()?.[0]?.getProperty(\"key\") as string;\n\t}\n\n\t/**\n\t * Adjusts the layout of the all panels in 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\tthis.toggleActionButtons(this.getDeviceType() !== DeviceType.Mobile);\n\n\t\t//adjust layout of all panels\n\t\t(this.getContent() as ToDoPanel[])?.forEach((panel) => panel._adjustLayout());\n\t}\n\n\t/**\n\t * Retrieves the generic placeholder content for the Todos container.\n\t *\n\t * @returns {string} The HTML string representing the Todos container's placeholder content.\n\t */\n\tprotected getGenericPlaceholderContent(): string {\n\t\treturn getTodosPlaceholder();\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|