@sapui5/sap.cux.home 1.141.0 → 1.143.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 +4 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.d.ts +3 -2
- package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.js +6 -6
- package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/AdvancedSettingsPanel.ts +6 -6
- package/src/sap/cux/home/App.d.ts.map +1 -1
- package/src/sap/cux/home/App.js +9 -1
- package/src/sap/cux/home/App.js.map +1 -1
- package/src/sap/cux/home/App.ts +10 -1
- package/src/sap/cux/home/AppsAdditionPanel.d.ts +75 -34
- package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.js +378 -179
- package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.ts +399 -175
- package/src/sap/cux/home/AppsContainer.d.ts +5 -1
- package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/AppsContainer.js +32 -17
- package/src/sap/cux/home/AppsContainer.js.map +1 -1
- package/src/sap/cux/home/AppsContainer.ts +31 -15
- package/src/sap/cux/home/BaseAppPanel.d.ts +2 -1
- package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.js +2 -1
- package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.ts +4 -2
- package/src/sap/cux/home/BaseContainer.d.ts +8 -0
- package/src/sap/cux/home/BaseContainer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainer.js +35 -5
- package/src/sap/cux/home/BaseContainer.js.map +1 -1
- package/src/sap/cux/home/BaseContainer.ts +32 -5
- package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.js +6 -0
- package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.ts +7 -1
- package/src/sap/cux/home/BaseNewsPanel.js.map +1 -1
- package/src/sap/cux/home/BaseNewsPanel.ts +2 -2
- package/src/sap/cux/home/BasePanel.d.ts +7 -0
- package/src/sap/cux/home/BasePanel.d.ts.map +1 -1
- package/src/sap/cux/home/BasePanel.js +23 -2
- package/src/sap/cux/home/BasePanel.js.map +1 -1
- package/src/sap/cux/home/BasePanel.ts +18 -1
- package/src/sap/cux/home/CardsContainer.d.ts +108 -0
- package/src/sap/cux/home/CardsContainer.d.ts.map +1 -0
- package/src/sap/cux/home/CardsContainer.js +207 -0
- package/src/sap/cux/home/CardsContainer.js.map +1 -0
- package/src/sap/cux/home/CardsContainer.ts +202 -0
- package/src/sap/cux/home/CardsPanel.d.ts +32 -59
- package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/CardsPanel.js +270 -249
- package/src/sap/cux/home/CardsPanel.js.map +1 -1
- package/src/sap/cux/home/CardsPanel.ts +169 -181
- package/src/sap/cux/home/ContentAdditionDialog.d.ts +2 -0
- package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.js +17 -7
- package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.ts +18 -6
- package/src/sap/cux/home/ErrorPanel.d.ts +0 -5
- package/src/sap/cux/home/ErrorPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ErrorPanel.gen.d.ts +31 -0
- package/src/sap/cux/home/ErrorPanel.js +11 -16
- package/src/sap/cux/home/ErrorPanel.js.map +1 -1
- package/src/sap/cux/home/ErrorPanel.ts +7 -19
- package/src/sap/cux/home/FavAppPanel.d.ts +1 -12
- package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/FavAppPanel.js +354 -414
- package/src/sap/cux/home/FavAppPanel.js.map +1 -1
- package/src/sap/cux/home/FavAppPanel.ts +25 -70
- package/src/sap/cux/home/FrequentAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/FrequentAppPanel.js +5 -1
- package/src/sap/cux/home/FrequentAppPanel.js.map +1 -1
- package/src/sap/cux/home/FrequentAppPanel.ts +4 -0
- package/src/sap/cux/home/InsightsAdditionPanel.d.ts +4 -4
- package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.js +12 -9
- package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.ts +11 -8
- package/src/sap/cux/home/InsightsTilesSettingsPanel.js +1 -1
- package/src/sap/cux/home/InsightsTilesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsTilesSettingsPanel.ts +3 -3
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts +3 -0
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js +252 -39
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserLayoutSettingsPanel.ts +288 -58
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +11 -10
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +12 -10
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +2 -2
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +7 -7
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserPagesSettingsPanel.ts +2 -2
- package/src/sap/cux/home/Layout.d.ts +3 -1
- package/src/sap/cux/home/Layout.d.ts.map +1 -1
- package/src/sap/cux/home/Layout.js +45 -8
- package/src/sap/cux/home/Layout.js.map +1 -1
- package/src/sap/cux/home/Layout.ts +55 -8
- package/src/sap/cux/home/LayoutSettingsPanel.d.ts +10 -0
- package/src/sap/cux/home/LayoutSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/LayoutSettingsPanel.js +341 -56
- package/src/sap/cux/home/LayoutSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/LayoutSettingsPanel.ts +380 -64
- package/src/sap/cux/home/{NewsAndPagesContainer.d.ts → NewsContainer.d.ts} +13 -18
- package/src/sap/cux/home/NewsContainer.d.ts.map +1 -0
- package/src/sap/cux/home/{NewsAndPagesContainer.gen.d.ts → NewsContainer.gen.d.ts} +3 -3
- package/src/sap/cux/home/{NewsAndPagesContainer.js → NewsContainer.js} +26 -113
- package/src/sap/cux/home/NewsContainer.js.map +1 -0
- package/src/sap/cux/home/{NewsAndPagesContainer.ts → NewsContainer.ts} +31 -120
- package/src/sap/cux/home/NewsGroup.js.map +1 -1
- package/src/sap/cux/home/NewsGroup.ts +1 -1
- package/src/sap/cux/home/NewsPanel.d.ts +17 -0
- package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsPanel.js +90 -57
- package/src/sap/cux/home/NewsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsPanel.ts +51 -23
- package/src/sap/cux/home/NewsSettingsPanel.d.ts +42 -6
- package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.js +219 -81
- package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.ts +216 -81
- package/src/sap/cux/home/Page.d.ts.map +1 -1
- package/src/sap/cux/home/Page.js +4 -1
- package/src/sap/cux/home/Page.js.map +1 -1
- package/src/sap/cux/home/Page.ts +2 -0
- package/src/sap/cux/home/PagePanel.d.ts +1 -1
- package/src/sap/cux/home/PagePanel.d.ts.map +1 -1
- package/src/sap/cux/home/PagePanel.js +19 -11
- package/src/sap/cux/home/PagePanel.js.map +1 -1
- package/src/sap/cux/home/PagePanel.ts +26 -20
- package/src/sap/cux/home/PageSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/PageSettingsPanel.js +6 -3
- package/src/sap/cux/home/PageSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/PageSettingsPanel.ts +2 -2
- package/src/sap/cux/home/PagesContainer.d.ts +72 -0
- package/src/sap/cux/home/PagesContainer.d.ts.map +1 -0
- package/src/sap/cux/home/PagesContainer.gen.d.ts +78 -0
- package/src/sap/cux/home/PagesContainer.js +333 -0
- package/src/sap/cux/home/PagesContainer.js.map +1 -0
- package/src/sap/cux/home/PagesContainer.ts +179 -0
- package/src/sap/cux/home/RecentAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/RecentAppPanel.js +6 -0
- package/src/sap/cux/home/RecentAppPanel.js.map +1 -1
- package/src/sap/cux/home/RecentAppPanel.ts +5 -1
- package/src/sap/cux/home/RecommendedAppPanel.d.ts.map +1 -1
- package/src/sap/cux/home/RecommendedAppPanel.js +7 -0
- package/src/sap/cux/home/RecommendedAppPanel.js.map +1 -1
- package/src/sap/cux/home/RecommendedAppPanel.ts +6 -1
- package/src/sap/cux/home/SettingsDialog.d.ts +7 -0
- package/src/sap/cux/home/SettingsDialog.d.ts.map +1 -1
- package/src/sap/cux/home/SettingsDialog.js +18 -10
- package/src/sap/cux/home/SettingsDialog.js.map +1 -1
- package/src/sap/cux/home/SettingsDialog.ts +20 -13
- package/src/sap/cux/home/SideBySideIconTabFilter.d.ts +10 -0
- package/src/sap/cux/home/SideBySideIconTabFilter.d.ts.map +1 -1
- package/src/sap/cux/home/SideBySideIconTabFilter.js +11 -1
- package/src/sap/cux/home/SideBySideIconTabFilter.js.map +1 -1
- package/src/sap/cux/home/SideBySideIconTabFilter.ts +11 -0
- package/src/sap/cux/home/SituationPanel.d.ts.map +1 -1
- package/src/sap/cux/home/SituationPanel.js +7 -2
- package/src/sap/cux/home/SituationPanel.js.map +1 -1
- package/src/sap/cux/home/SituationPanel.ts +2 -0
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts +8 -60
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.js +67 -133
- package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.ts +70 -152
- package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TaskPanel.js +17 -12
- package/src/sap/cux/home/TaskPanel.js.map +1 -1
- package/src/sap/cux/home/TaskPanel.ts +19 -16
- package/src/sap/cux/home/TilesContainer.d.ts +111 -0
- package/src/sap/cux/home/TilesContainer.d.ts.map +1 -0
- package/src/sap/cux/home/TilesContainer.js +218 -0
- package/src/sap/cux/home/TilesContainer.js.map +1 -0
- package/src/sap/cux/home/TilesContainer.ts +216 -0
- package/src/sap/cux/home/TilesPanel.d.ts +22 -52
- package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TilesPanel.js +194 -168
- package/src/sap/cux/home/TilesPanel.js.map +1 -1
- package/src/sap/cux/home/TilesPanel.ts +167 -157
- package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ToDoPanel.js +59 -66
- package/src/sap/cux/home/ToDoPanel.js.map +1 -1
- package/src/sap/cux/home/ToDoPanel.ts +46 -34
- package/src/sap/cux/home/ToDosContainer.js +3 -3
- package/src/sap/cux/home/ToDosContainer.js.map +1 -1
- package/src/sap/cux/home/ToDosContainer.ts +1 -1
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts +2 -2
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js +1 -1
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.js.map +1 -1
- package/src/sap/cux/home/changeHandler/NewsFeedVisibilityChange.ts +4 -4
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts +2 -2
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +4 -4
- package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts +2 -2
- package/src/sap/cux/home/changeHandler/SpacePageColorHandler.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageColorHandler.js.map +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageColorHandler.ts +3 -3
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts +2 -2
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js +4 -4
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.js.map +1 -1
- package/src/sap/cux/home/changeHandler/SpacePageIconHandler.ts +5 -5
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.d.ts.map +1 -1
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js +30 -3
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.js.map +1 -1
- package/src/sap/cux/home/flexibility/BaseContainer.flexibility.ts +23 -1
- package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts +29 -19
- package/src/sap/cux/home/flexibility/Layout.flexibility.d.ts.map +1 -1
- package/src/sap/cux/home/flexibility/Layout.flexibility.js +78 -2
- package/src/sap/cux/home/flexibility/Layout.flexibility.js.map +1 -1
- package/src/sap/cux/home/flexibility/Layout.flexibility.ts +81 -1
- package/src/sap/cux/home/i18n/messagebundle.properties +40 -14
- package/src/sap/cux/home/i18n/messagebundle_ar.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_bg.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_ca.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_cnr.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_cs.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_cy.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_da.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_de.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_el.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_en.properties +9 -5
- package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +14 -6
- package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +14 -6
- package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_es.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_et.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_fi.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_fr.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_hi.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_hr.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_hu.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_id.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_it.properties +10 -6
- package/src/sap/cux/home/i18n/messagebundle_iw.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_ja.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_kk.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_ko.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_lt.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_lv.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_mk.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_ms.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_nl.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_no.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_pl.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_pt.properties +9 -5
- package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_ro.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_ru.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_sh.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_sk.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_sl.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_sr.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_sv.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_th.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_tr.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_uk.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_vi.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +8 -4
- package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +8 -4
- package/src/sap/cux/home/interface/AppsInterface.d.ts +6 -0
- package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
- package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
- package/src/sap/cux/home/interface/AppsInterface.ts +7 -0
- package/src/sap/cux/home/interface/KeyUserInterface.d.ts +27 -4
- package/src/sap/cux/home/interface/KeyUserInterface.d.ts.map +1 -1
- package/src/sap/cux/home/interface/KeyUserInterface.js.map +1 -1
- package/src/sap/cux/home/interface/KeyUserInterface.ts +23 -4
- package/src/sap/cux/home/interface/LayoutInterface.d.ts +7 -0
- package/src/sap/cux/home/interface/LayoutInterface.d.ts.map +1 -1
- package/src/sap/cux/home/interface/LayoutInterface.js.map +1 -1
- package/src/sap/cux/home/interface/LayoutInterface.ts +7 -0
- package/src/sap/cux/home/library.d.ts.map +1 -1
- package/src/sap/cux/home/library.js +7 -4
- package/src/sap/cux/home/library.js.map +1 -1
- package/src/sap/cux/home/library.ts +10 -5
- package/src/sap/cux/home/themes/base/AppsContainer.less +12 -1
- package/src/sap/cux/home/themes/base/BaseContainer.less +36 -0
- package/src/sap/cux/home/themes/base/BaseLayout.less +22 -0
- package/src/sap/cux/home/themes/base/{InsightsContainer.less → CardsContainer.less} +4 -45
- package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +10 -18
- package/src/sap/cux/home/themes/base/PlaceHolder.less +1 -1
- package/src/sap/cux/home/themes/base/SettingsDialog.less +4 -0
- package/src/sap/cux/home/themes/base/TilesContainer.less +65 -0
- package/src/sap/cux/home/themes/base/ToDosContainer.less +4 -0
- package/src/sap/cux/home/themes/base/library.source.less +2 -1
- package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
- package/src/sap/cux/home/utils/AppManager.js +2 -1
- package/src/sap/cux/home/utils/AppManager.js.map +1 -1
- package/src/sap/cux/home/utils/AppManager.ts +2 -2
- package/src/sap/cux/home/utils/FESRUtil.d.ts +30 -0
- package/src/sap/cux/home/utils/FESRUtil.d.ts.map +1 -1
- package/src/sap/cux/home/utils/FESRUtil.js +36 -1
- package/src/sap/cux/home/utils/FESRUtil.js.map +1 -1
- package/src/sap/cux/home/utils/FESRUtil.ts +36 -0
- package/src/sap/cux/home/utils/PXFeedback.d.ts +4 -0
- package/src/sap/cux/home/utils/PXFeedback.d.ts.map +1 -0
- package/src/sap/cux/home/utils/PXFeedback.js +28 -0
- package/src/sap/cux/home/utils/PXFeedback.js.map +1 -0
- package/src/sap/cux/home/utils/PXFeedback.ts +19 -0
- package/src/sap/cux/home/utils/PageManager.d.ts +0 -4
- package/src/sap/cux/home/utils/PageManager.d.ts.map +1 -1
- package/src/sap/cux/home/utils/PageManager.js +6 -6
- package/src/sap/cux/home/utils/PageManager.js.map +1 -1
- package/src/sap/cux/home/utils/PageManager.ts +6 -5
- package/src/sap/cux/home/utils/PerformanceUtils.d.ts +4 -2
- package/src/sap/cux/home/utils/PerformanceUtils.d.ts.map +1 -1
- package/src/sap/cux/home/utils/PerformanceUtils.js +4 -2
- package/src/sap/cux/home/utils/PerformanceUtils.js.map +1 -1
- package/src/sap/cux/home/utils/PerformanceUtils.ts +4 -2
- package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +155 -151
- package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts +8 -0
- package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.js → CardsPlaceholder.js} +3 -77
- package/src/sap/cux/home/utils/placeholder/CardsPlaceholder.js.map +1 -0
- package/src/sap/cux/home/utils/placeholder/{InsightsPlaceholder.ts → CardsPlaceholder.ts} +1 -75
- package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts +8 -0
- package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js +44 -0
- package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.js.map +1 -0
- package/src/sap/cux/home/utils/placeholder/NewsPlaceholder.ts +34 -0
- package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts +8 -0
- package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.js → PagesPlaceholder.js} +3 -23
- package/src/sap/cux/home/utils/placeholder/PagesPlaceholder.js.map +1 -0
- package/src/sap/cux/home/utils/placeholder/{NewsAndPagesPlaceholder.ts → PagesPlaceholder.ts} +1 -21
- package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts +8 -0
- package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js +95 -0
- package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.js.map +1 -0
- package/src/sap/cux/home/utils/placeholder/TilesPlaceholder.ts +85 -0
- package/ui5.yaml +1 -0
- package/src/sap/cux/home/InsightsContainer.d.ts +0 -205
- package/src/sap/cux/home/InsightsContainer.d.ts.map +0 -1
- package/src/sap/cux/home/InsightsContainer.js +0 -459
- package/src/sap/cux/home/InsightsContainer.js.map +0 -1
- package/src/sap/cux/home/InsightsContainer.ts +0 -489
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +0 -1
- package/src/sap/cux/home/NewsAndPagesContainer.js.map +0 -1
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +0 -8
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +0 -1
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts +0 -8
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +0 -1
|
@@ -28,6 +28,7 @@ import BaseContainer from "./BaseContainer";
|
|
|
28
28
|
import BaseLayout from "./BaseLayout";
|
|
29
29
|
import BaseSettingsPanel, { $BaseSettingsPanelSettings } from "./BaseSettingsPanel";
|
|
30
30
|
import Layout from "./Layout";
|
|
31
|
+
import NoDataContainer from "./NoDataContainer";
|
|
31
32
|
import { CHANGE_TYPES } from "./flexibility/Layout.flexibility";
|
|
32
33
|
import { IControlPersonalizationWriteAPI, IDragEvent, IElement, IManagePersChanges } from "./interface/LayoutInterface";
|
|
33
34
|
import { getInvisibleText } from "./utils/Accessibility";
|
|
@@ -102,24 +103,24 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
102
103
|
*
|
|
103
104
|
* @private
|
|
104
105
|
*/
|
|
105
|
-
private async createShowHideChangeFile(oControlEvent: Event): Promise<void> {
|
|
106
|
+
private async createShowHideChangeFile(oControlEvent: Event, itemIndex: number): Promise<void> {
|
|
106
107
|
const toggle = oControlEvent.getSource<ToggleButton>();
|
|
107
108
|
const bValue = !toggle.getPressed();
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
oContext.visible = bValue;
|
|
111
|
-
(this._getPanel() as Layout).getSections().find((section) => section.completeId === oContext.completeId)!.visible = bValue;
|
|
109
|
+
const contextObject = toggle.getBindingContext()?.getObject() as IElement;
|
|
110
|
+
const selectedCompleteId = contextObject.isComposite ? contextObject.children![itemIndex].completeId : contextObject.completeId;
|
|
112
111
|
|
|
113
112
|
const sChangeType = bValue ? CHANGE_TYPES.UNHIDE : CHANGE_TYPES.HIDE;
|
|
114
|
-
const oWrapperItem = Element.getElementById(
|
|
113
|
+
const oWrapperItem = Element.getElementById(selectedCompleteId) as BaseContainer;
|
|
115
114
|
|
|
116
115
|
this._manageSectionsChanges.push({
|
|
117
116
|
selectorElement: oWrapperItem,
|
|
118
117
|
changeSpecificData: {
|
|
119
|
-
changeType: sChangeType
|
|
118
|
+
changeType: sChangeType,
|
|
119
|
+
content: {
|
|
120
|
+
compositeId: oWrapperItem.getProperty("compositeId") as string
|
|
121
|
+
}
|
|
120
122
|
}
|
|
121
123
|
});
|
|
122
|
-
// }
|
|
123
124
|
await this._saveManageSectionsDialog();
|
|
124
125
|
setTimeout(() => oWrapperItem.adjustLayout());
|
|
125
126
|
|
|
@@ -127,6 +128,25 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
127
128
|
if (!bValue) {
|
|
128
129
|
this._switchToCollapsedViewIfRequired([oWrapperItem]);
|
|
129
130
|
}
|
|
131
|
+
|
|
132
|
+
//update this._orderedSections visibility
|
|
133
|
+
toggle.setPressed(!bValue);
|
|
134
|
+
|
|
135
|
+
//loop through this._orderedSections and update the visibility of the section which has same composite id as oWrapperItem
|
|
136
|
+
for (const section of this._orderedSections) {
|
|
137
|
+
// Check for matching composite ID
|
|
138
|
+
if (section.compositeId === oWrapperItem.getProperty("compositeId") && section.compositeId !== undefined) {
|
|
139
|
+
for (const child of section.children || []) {
|
|
140
|
+
if (child.completeId === selectedCompleteId) {
|
|
141
|
+
child.visible = bValue;
|
|
142
|
+
return; // Exit the whole function once found & set
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
} else if (section.completeId === selectedCompleteId) {
|
|
146
|
+
section.visible = bValue;
|
|
147
|
+
return; // Exit the whole function once found & set
|
|
148
|
+
}
|
|
149
|
+
}
|
|
130
150
|
}
|
|
131
151
|
|
|
132
152
|
/**
|
|
@@ -139,15 +159,75 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
139
159
|
private _switchToCollapsedViewIfRequired(containers: BaseContainer[]): void {
|
|
140
160
|
const layout = this._getPanel() as Layout;
|
|
141
161
|
const isLayoutExpanded = layout.getProperty("expanded") as boolean;
|
|
142
|
-
const expandedContainer = containers.filter(
|
|
143
|
-
|
|
144
|
-
|
|
162
|
+
const expandedContainer = containers.filter((container) => {
|
|
163
|
+
//find the fullscreename of the container if available else loop through the content of container
|
|
164
|
+
// and search in its panels which are present in its content aggregation
|
|
165
|
+
let fullScreenName = (container.getProperty("fullScreenName") as string) || undefined;
|
|
166
|
+
if (!fullScreenName) {
|
|
167
|
+
return container
|
|
168
|
+
.getContent()
|
|
169
|
+
.some((panel) => layout._getCurrentExpandedElementName() === panel.getProperty("fullScreenName"));
|
|
170
|
+
}
|
|
171
|
+
return layout._getCurrentExpandedElementName() === container.getProperty("fullScreenName");
|
|
172
|
+
});
|
|
145
173
|
|
|
146
174
|
if (isLayoutExpanded) {
|
|
147
175
|
layout.toggleFullScreen(expandedContainer[0]._getSelectedPanel());
|
|
148
176
|
}
|
|
149
177
|
}
|
|
150
178
|
|
|
179
|
+
//function to update this._orderedSections
|
|
180
|
+
private _updateOrderedSections(): void {
|
|
181
|
+
const createEmptyCompositeItem = (): IElement => ({
|
|
182
|
+
completeId: "",
|
|
183
|
+
sContainerType: "",
|
|
184
|
+
blocked: false,
|
|
185
|
+
visible: false,
|
|
186
|
+
title: "",
|
|
187
|
+
text: "",
|
|
188
|
+
isComposite: false,
|
|
189
|
+
children: []
|
|
190
|
+
});
|
|
191
|
+
const compositeMap: { [key: string]: IElement[] } = {};
|
|
192
|
+
this._orderedSections.forEach((section) => {
|
|
193
|
+
const container = Element.getElementById(section.completeId) as BaseContainer | null;
|
|
194
|
+
|
|
195
|
+
if (container instanceof BaseContainer) {
|
|
196
|
+
const compositeId = container.getProperty("compositeId") as string;
|
|
197
|
+
if (compositeId) {
|
|
198
|
+
if (!compositeMap[compositeId]) {
|
|
199
|
+
compositeMap[compositeId] = [];
|
|
200
|
+
}
|
|
201
|
+
section.compositeId = compositeId;
|
|
202
|
+
section.groupTitle = container.getCustomSettings().groupTitle || "";
|
|
203
|
+
compositeMap[compositeId].push(section);
|
|
204
|
+
} else {
|
|
205
|
+
section.compositeId = null;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
});
|
|
209
|
+
|
|
210
|
+
// map through this.orderedSections and replace items with compositeId with a single composite item containing its children
|
|
211
|
+
this._orderedSections = this._orderedSections.map((section) => {
|
|
212
|
+
if (section.compositeId && compositeMap[section.compositeId]) {
|
|
213
|
+
const compositeItem = createEmptyCompositeItem();
|
|
214
|
+
compositeMap[section.compositeId].forEach((section) => {
|
|
215
|
+
this.addToCompositeItem(section, compositeItem, section.groupTitle as string);
|
|
216
|
+
});
|
|
217
|
+
delete compositeMap[section.compositeId];
|
|
218
|
+
return compositeItem;
|
|
219
|
+
}
|
|
220
|
+
return section;
|
|
221
|
+
});
|
|
222
|
+
|
|
223
|
+
//filter this.orderedSections to remove items which has same composite item with no children
|
|
224
|
+
this._orderedSections = this._orderedSections.filter((section) => {
|
|
225
|
+
if (section.compositeId) {
|
|
226
|
+
return section.children && section.children.length > 0;
|
|
227
|
+
}
|
|
228
|
+
return true;
|
|
229
|
+
});
|
|
230
|
+
}
|
|
151
231
|
/**
|
|
152
232
|
* Method to load the sections
|
|
153
233
|
*
|
|
@@ -156,29 +236,157 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
156
236
|
private async _loadSections(): Promise<void> {
|
|
157
237
|
const layout = this._getPanel() as Layout;
|
|
158
238
|
await layout._calculateSectionsState();
|
|
159
|
-
|
|
160
|
-
this._orderedSections = JSON.parse(JSON.stringify(
|
|
161
|
-
|
|
162
|
-
this._orderedSections
|
|
163
|
-
|
|
164
|
-
|
|
239
|
+
const sections = layout.getSections();
|
|
240
|
+
this._orderedSections = JSON.parse(JSON.stringify(sections)) as IElement[];
|
|
241
|
+
|
|
242
|
+
//loop through this._orderedSections and take out the children items from composite items and add them to same list
|
|
243
|
+
this._orderedSections = this._orderedSections.reduce((accumulator, section) => {
|
|
244
|
+
if (section.isComposite && section.children) {
|
|
245
|
+
accumulator.push(...section.children);
|
|
246
|
+
} else {
|
|
247
|
+
accumulator.push(section);
|
|
165
248
|
}
|
|
166
|
-
|
|
249
|
+
return accumulator;
|
|
250
|
+
}, [] as IElement[]);
|
|
251
|
+
this._updateOrderedSections();
|
|
167
252
|
this._controlModel = new JSONModel(this._orderedSections);
|
|
168
253
|
this._layoutTable.setModel(this._controlModel);
|
|
169
254
|
|
|
170
255
|
this._layoutTable.bindItems({
|
|
171
256
|
path: "/",
|
|
172
|
-
factory: (id) => {
|
|
257
|
+
factory: (id, context) => {
|
|
173
258
|
if (!this._dndInvisibleText || this._dndInvisibleText.isDestroyed()) {
|
|
174
259
|
this._dndInvisibleText = getInvisibleText(
|
|
175
260
|
this.getId() + "--layoutDndText",
|
|
176
261
|
this._i18nBundle.getText("keyPressAriaText")
|
|
177
262
|
);
|
|
178
263
|
}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
264
|
+
//check the condition for news and pages as it is a composite container
|
|
265
|
+
if ((context.getObject() as IElement)?.isComposite === true) {
|
|
266
|
+
return this.getCompositeLayoutListItem(id);
|
|
267
|
+
}
|
|
268
|
+
return this.getLayoutListItem(id);
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
|
|
272
|
+
// attach collapse event handler to rearrange layout elements if required
|
|
273
|
+
if (!this._isCollapseHandlerAttached) {
|
|
274
|
+
this._isCollapseHandlerAttached = true;
|
|
275
|
+
layout.attachEvent("onCollapse", () => this._rearrangeLayoutIfRequired());
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
private addToCompositeItem(section: IElement, compositeItem: IElement, compositeTitle: string) {
|
|
280
|
+
compositeItem.isComposite = true;
|
|
281
|
+
compositeItem.title = compositeTitle;
|
|
282
|
+
|
|
283
|
+
if (!compositeItem.completeId) {
|
|
284
|
+
compositeItem.completeId = section.completeId;
|
|
285
|
+
}
|
|
286
|
+
//Add compositeId
|
|
287
|
+
compositeItem.compositeId = section.compositeId;
|
|
288
|
+
|
|
289
|
+
compositeItem.children?.push({ ...section });
|
|
290
|
+
|
|
291
|
+
compositeItem.text = section.text;
|
|
292
|
+
compositeItem.blocked = section.blocked;
|
|
293
|
+
compositeItem.visible = section.visible;
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
private getLayoutListItem(id: string): ColumnListItem {
|
|
297
|
+
return new ColumnListItem(`${id}--columnListItem`, {
|
|
298
|
+
type: "Inactive",
|
|
299
|
+
cells: [
|
|
300
|
+
new HBox(`${id}--columnListHBox`, {
|
|
301
|
+
alignItems: "Center",
|
|
302
|
+
items: [
|
|
303
|
+
new Icon(`${id}--columnListIcon`, {
|
|
304
|
+
src: "sap-icon://vertical-grip"
|
|
305
|
+
}).addStyleClass("sapUiSmallMarginEnd"),
|
|
306
|
+
new HBox(`${id}--columnListItemHBox`, {
|
|
307
|
+
justifyContent: "SpaceBetween",
|
|
308
|
+
alignItems: "Center",
|
|
309
|
+
width: "100%",
|
|
310
|
+
items: [
|
|
311
|
+
new ObjectIdentifier(`${id}--columnListObjectIdentifier`, {
|
|
312
|
+
title: "{title}",
|
|
313
|
+
text: "{text}",
|
|
314
|
+
tooltip: "{title}"
|
|
315
|
+
}),
|
|
316
|
+
new ToggleButton(`${id}--layoutSettingstoggleButton`, {
|
|
317
|
+
tooltip:
|
|
318
|
+
"{= ${visible} ? '" +
|
|
319
|
+
this._i18nBundle.getText("hideBtn") +
|
|
320
|
+
"' : '" +
|
|
321
|
+
this._i18nBundle.getText("showBtn") +
|
|
322
|
+
"' }",
|
|
323
|
+
icon: "sap-icon://show",
|
|
324
|
+
type: "Emphasized",
|
|
325
|
+
enabled: "{= !${blocked}}",
|
|
326
|
+
press: (event: Event) => {
|
|
327
|
+
void this.createShowHideChangeFile(event, 0);
|
|
328
|
+
},
|
|
329
|
+
pressed: "{= !${visible}}",
|
|
330
|
+
ariaLabelledBy: ["selectLabel"]
|
|
331
|
+
}).addStyleClass("sapUiTinyMarginEnd sapUiTinyMarginTop")
|
|
332
|
+
]
|
|
333
|
+
}),
|
|
334
|
+
this._dndInvisibleText
|
|
335
|
+
],
|
|
336
|
+
width: "100%"
|
|
337
|
+
})
|
|
338
|
+
],
|
|
339
|
+
ariaLabelledBy: [this._dndInvisibleText.getId()]
|
|
340
|
+
}).addStyleClass("insightsListItem insightsListMargin");
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
private getCompositeLayoutListItem(id: string): ColumnListItem {
|
|
344
|
+
const oTemplateHBox = new VBox(`${id}--compositeVBox`, {
|
|
345
|
+
items: {
|
|
346
|
+
path: "children",
|
|
347
|
+
factory: (childId: string, oContext) => {
|
|
348
|
+
const iIndex = parseInt(childId.split("-").pop() || "0", 10);
|
|
349
|
+
|
|
350
|
+
return new HBox(`${id}--columnListItemChildHBox${iIndex}`, {
|
|
351
|
+
justifyContent: "SpaceBetween",
|
|
352
|
+
alignItems: "Center",
|
|
353
|
+
items: [
|
|
354
|
+
new ObjectIdentifier(`${id}--childObjectIdentifier${iIndex}`, {
|
|
355
|
+
title: oContext.getProperty("title") as string,
|
|
356
|
+
text: oContext.getProperty("text") as string,
|
|
357
|
+
tooltip: oContext.getProperty("title") as string
|
|
358
|
+
}),
|
|
359
|
+
new ToggleButton(`${id}--layoutSettingstoggleButtonChild${iIndex}`, {
|
|
360
|
+
tooltip: {
|
|
361
|
+
parts: [{ path: "visible" }, { path: "blocked" }],
|
|
362
|
+
formatter: (bVisible: boolean, bBlocked: boolean) => {
|
|
363
|
+
if (bBlocked) {
|
|
364
|
+
return this._i18nBundle.getText("blockedTooltip");
|
|
365
|
+
}
|
|
366
|
+
return bVisible ? this._i18nBundle.getText("hideBtn") : this._i18nBundle.getText("showBtn");
|
|
367
|
+
}
|
|
368
|
+
},
|
|
369
|
+
icon: "sap-icon://show",
|
|
370
|
+
type: "Emphasized",
|
|
371
|
+
enabled: "{= !${blocked}}",
|
|
372
|
+
pressed: "{= !${visible}}",
|
|
373
|
+
ariaLabelledBy: ["selectLabel"],
|
|
374
|
+
press: (event: Event) => {
|
|
375
|
+
void this.createShowHideChangeFile(event, iIndex);
|
|
376
|
+
}
|
|
377
|
+
}).addStyleClass("sapUiTinyMarginEnd sapUiTinyMarginTop")
|
|
378
|
+
]
|
|
379
|
+
}).addStyleClass("sapCuxCompositeItem");
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
});
|
|
383
|
+
|
|
384
|
+
return new ColumnListItem(`${id}--columnListItem`, {
|
|
385
|
+
type: "Inactive",
|
|
386
|
+
cells: [
|
|
387
|
+
new VBox(`${id}--compositeVBoxContainer`, {
|
|
388
|
+
items: [
|
|
389
|
+
// Header (main title)
|
|
182
390
|
new HBox(`${id}--columnListHBox`, {
|
|
183
391
|
alignItems: "Center",
|
|
184
392
|
items: [
|
|
@@ -194,40 +402,39 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
194
402
|
title: "{title}",
|
|
195
403
|
text: "{text}",
|
|
196
404
|
tooltip: "{title}"
|
|
197
|
-
})
|
|
198
|
-
new ToggleButton(`${id}--layoutSettingstoggleButton`, {
|
|
199
|
-
tooltip:
|
|
200
|
-
"{= ${visible} ? '" +
|
|
201
|
-
this._i18nBundle.getText("hideBtn") +
|
|
202
|
-
"' : '" +
|
|
203
|
-
this._i18nBundle.getText("showBtn") +
|
|
204
|
-
"' }",
|
|
205
|
-
icon: "sap-icon://show",
|
|
206
|
-
type: "Emphasized",
|
|
207
|
-
enabled: "{= !${blocked}}",
|
|
208
|
-
press: (event: Event) => {
|
|
209
|
-
void this.createShowHideChangeFile(event);
|
|
210
|
-
},
|
|
211
|
-
pressed: "{= !${visible}}",
|
|
212
|
-
ariaLabelledBy: ["selectLabel"]
|
|
213
|
-
}).addStyleClass("sapUiTinyMarginEnd sapUiTinyMarginTop")
|
|
405
|
+
})
|
|
214
406
|
]
|
|
215
|
-
})
|
|
216
|
-
this._dndInvisibleText
|
|
407
|
+
})
|
|
217
408
|
],
|
|
218
409
|
width: "100%"
|
|
219
|
-
})
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
410
|
+
}).addStyleClass("sapUiTinyMarginTopBottom"),
|
|
411
|
+
|
|
412
|
+
// Dynamically bound children
|
|
413
|
+
oTemplateHBox,
|
|
414
|
+
|
|
415
|
+
// Drag-n-drop invisible text
|
|
416
|
+
this._dndInvisibleText
|
|
417
|
+
]
|
|
418
|
+
})
|
|
419
|
+
],
|
|
420
|
+
ariaLabelledBy: [this._dndInvisibleText.getId()]
|
|
421
|
+
}).addStyleClass("insightsListItem insightsListMargin");
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* Reduces the ordered sections by flattening composite items.
|
|
425
|
+
* @private
|
|
426
|
+
* @returns {IElement[]} The reduced list of ordered sections.
|
|
427
|
+
*/
|
|
428
|
+
private _reduceOrderedSections(): IElement[] {
|
|
429
|
+
//loop through this._orderedSections and take out the children items from composite items and add them to same list
|
|
430
|
+
return this._orderedSections.reduce((accumulator, section) => {
|
|
431
|
+
if (section.isComposite && section.children) {
|
|
432
|
+
accumulator.push(...section.children);
|
|
433
|
+
} else {
|
|
434
|
+
accumulator.push(section);
|
|
223
435
|
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
// attach collapse event handler to rearrange layout elements if required
|
|
227
|
-
if (!this._isCollapseHandlerAttached) {
|
|
228
|
-
this._isCollapseHandlerAttached = true;
|
|
229
|
-
layout.attachEvent("onCollapse", () => this._rearrangeLayoutIfRequired());
|
|
230
|
-
}
|
|
436
|
+
return accumulator;
|
|
437
|
+
}, [] as IElement[]);
|
|
231
438
|
}
|
|
232
439
|
|
|
233
440
|
/**
|
|
@@ -240,6 +447,12 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
240
447
|
const currentLayoutElements = layout.getItems();
|
|
241
448
|
|
|
242
449
|
if (Array.isArray(this._allLayoutElements) && currentLayoutElements.length === this._allLayoutElements.length) {
|
|
450
|
+
//pick each elements out from this._orderedSections
|
|
451
|
+
const elementList = this._reduceOrderedSections();
|
|
452
|
+
//Now loop through elementList and _allLayoutElements to rearrange _allLayoutElements list based on completeId
|
|
453
|
+
this._allLayoutElements = elementList.map((element) => {
|
|
454
|
+
return this._allLayoutElements.find((layoutElement) => layoutElement.getId() === element.completeId)!;
|
|
455
|
+
});
|
|
243
456
|
const isOrderChanged = currentLayoutElements.some((element, index) => {
|
|
244
457
|
return element.getId() !== this._allLayoutElements[index].getId();
|
|
245
458
|
});
|
|
@@ -386,7 +599,7 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
386
599
|
*/
|
|
387
600
|
private _getActualIndex(id: string): number {
|
|
388
601
|
const layout = this._getPanel() as Layout;
|
|
389
|
-
this._allLayoutElements =
|
|
602
|
+
this._allLayoutElements = [...layout.getItems()];
|
|
390
603
|
const isLayoutExpanded = layout.getProperty("expanded") as boolean;
|
|
391
604
|
const expandedElementConfig = layout._getCurrentExpandedElement();
|
|
392
605
|
|
|
@@ -437,19 +650,54 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
437
650
|
const oDropItem = ((oEvent as DropInfo$DropEvent).getParameter?.("droppedControl") ||
|
|
438
651
|
(oEvent as IDragEvent).droppedControl) as ColumnListItem;
|
|
439
652
|
const iDropItemIndex = (oDragItem.getParent() as Table)?.indexOfItem(oDropItem);
|
|
440
|
-
|
|
441
653
|
if (iDragItemIndex !== iDropItemIndex) {
|
|
442
654
|
const sectionOrder = this._orderedSections;
|
|
443
655
|
const dragObject = oDragItem.getBindingContext()?.getObject() as IElement;
|
|
444
656
|
const dropObject = oDropItem.getBindingContext()?.getObject() as IElement;
|
|
445
657
|
|
|
446
|
-
|
|
447
|
-
|
|
658
|
+
let actualDragItemIndex = this._getActualIndex(dragObject.completeId);
|
|
659
|
+
let actualDropItemIndex = this._getActualIndex(dropObject.completeId);
|
|
448
660
|
this._rearrangeLayoutElements(actualDragItemIndex, actualDropItemIndex);
|
|
449
661
|
|
|
450
662
|
sectionOrder.splice(iDragItemIndex, 1);
|
|
451
663
|
sectionOrder.splice(iDropItemIndex, 0, dragObject);
|
|
452
664
|
oWrapper.setSections(sectionOrder);
|
|
665
|
+
//loop through the oWrapper.getItems() and find the index and noData Container
|
|
666
|
+
let noDataContainerIndex = -1;
|
|
667
|
+
const items = oWrapper.getItems();
|
|
668
|
+
let noDataContainer: NoDataContainer | null = null;
|
|
669
|
+
for (let i = 0; i < items.length; i++) {
|
|
670
|
+
const item = items[i];
|
|
671
|
+
if (item instanceof NoDataContainer) {
|
|
672
|
+
noDataContainerIndex = i;
|
|
673
|
+
noDataContainer = item;
|
|
674
|
+
}
|
|
675
|
+
}
|
|
676
|
+
|
|
677
|
+
//now insert the noDataContainer back to its noDataContainerIndex in sectionOrder
|
|
678
|
+
if (noDataContainer && noDataContainerIndex !== -1) {
|
|
679
|
+
sectionOrder.splice(noDataContainerIndex, 0, noDataContainer as unknown as IElement);
|
|
680
|
+
}
|
|
681
|
+
|
|
682
|
+
let finalTargetIndex = 0;
|
|
683
|
+
const elementList = this._reduceOrderedSections();
|
|
684
|
+
finalTargetIndex = elementList.findIndex((element) => element.completeId === dragObject.completeId);
|
|
685
|
+
|
|
686
|
+
//find the composite child for this dragObject if it has a composite id
|
|
687
|
+
const compositeChildren = elementList.filter((element) => {
|
|
688
|
+
if (
|
|
689
|
+
dragObject.compositeId &&
|
|
690
|
+
dragObject.compositeId === element.compositeId &&
|
|
691
|
+
element.completeId !== dragObject.completeId
|
|
692
|
+
) {
|
|
693
|
+
return true;
|
|
694
|
+
}
|
|
695
|
+
});
|
|
696
|
+
|
|
697
|
+
if (noDataContainer && noDataContainerIndex !== -1) {
|
|
698
|
+
//remove noDataContainer from sectionOrder to avoid the display of an empty item in myhome Settings dialog
|
|
699
|
+
sectionOrder.splice(noDataContainerIndex, 1);
|
|
700
|
+
}
|
|
453
701
|
|
|
454
702
|
this._manageSectionsChanges.push({
|
|
455
703
|
selectorElement: oWrapper,
|
|
@@ -459,7 +707,10 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
459
707
|
{
|
|
460
708
|
id: dragObject.completeId,
|
|
461
709
|
sourceIndex: actualDragItemIndex,
|
|
462
|
-
targetIndex:
|
|
710
|
+
targetIndex:
|
|
711
|
+
iDragItemIndex < iDropItemIndex && dragObject.isComposite && compositeChildren.length
|
|
712
|
+
? finalTargetIndex + 1 // Adjust index when composite has children and moving forward
|
|
713
|
+
: finalTargetIndex
|
|
463
714
|
}
|
|
464
715
|
],
|
|
465
716
|
source: {
|
|
@@ -473,12 +724,70 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
473
724
|
}
|
|
474
725
|
});
|
|
475
726
|
|
|
727
|
+
if (compositeChildren.length > 0) {
|
|
728
|
+
compositeChildren.forEach((compositeChild) => {
|
|
729
|
+
this._manageSectionsChanges.push({
|
|
730
|
+
selectorElement: oWrapper,
|
|
731
|
+
changeSpecificData: {
|
|
732
|
+
changeType: CHANGE_TYPES.MOVE,
|
|
733
|
+
movedElements: [
|
|
734
|
+
{
|
|
735
|
+
id: compositeChild.completeId,
|
|
736
|
+
sourceIndex: actualDragItemIndex,
|
|
737
|
+
targetIndex: finalTargetIndex + 1 // +1 as it will be after the main dragObject
|
|
738
|
+
}
|
|
739
|
+
],
|
|
740
|
+
source: {
|
|
741
|
+
id: wrapperId,
|
|
742
|
+
aggregation: "items"
|
|
743
|
+
},
|
|
744
|
+
target: {
|
|
745
|
+
id: wrapperId,
|
|
746
|
+
aggregation: "items"
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
});
|
|
750
|
+
});
|
|
751
|
+
}
|
|
752
|
+
|
|
476
753
|
await this._saveManageSectionsDialog();
|
|
754
|
+
// Switch to collapsed view if any of the containers is in expanded view
|
|
755
|
+
const isLayoutExpanded = oWrapper.getProperty("expanded") as boolean;
|
|
756
|
+
if (isLayoutExpanded && dragObject.isComposite) {
|
|
757
|
+
const expandedElementName = oWrapper._getCurrentExpandedElementName();
|
|
758
|
+
const compositeContainer = Element.getElementById(dragObject.completeId) as BaseContainer;
|
|
759
|
+
//find the fullScreenName of the expanded element from the content of composite container
|
|
760
|
+
const fullScreenName = compositeContainer
|
|
761
|
+
.getContent()
|
|
762
|
+
.find((panel) => panel.getProperty("fullScreenName") === expandedElementName)
|
|
763
|
+
?.getProperty("fullScreenName") as string;
|
|
764
|
+
let draggedContainer: BaseContainer | undefined;
|
|
765
|
+
|
|
766
|
+
// If expanded element name differs, find the matching child container
|
|
767
|
+
if (expandedElementName !== fullScreenName) {
|
|
768
|
+
const matchingChild = dragObject.children?.find((child) => {
|
|
769
|
+
const childContainer = Element.getElementById(child.completeId) as BaseContainer;
|
|
770
|
+
//loop through the content of childContainer to find the panel which has fullScreenName property same as expandedElementName
|
|
771
|
+
return childContainer.getContent().find((panel) => {
|
|
772
|
+
return panel.getProperty("fullScreenName") === expandedElementName;
|
|
773
|
+
});
|
|
774
|
+
});
|
|
477
775
|
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
776
|
+
draggedContainer = matchingChild
|
|
777
|
+
? (Element.getElementById(matchingChild.completeId) as BaseContainer)
|
|
778
|
+
: (Element.getElementById(dragObject.completeId) as BaseContainer);
|
|
779
|
+
} else {
|
|
780
|
+
draggedContainer = Element.getElementById(dragObject.completeId) as BaseContainer;
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
const droppedContainer = Element.getElementById(dropObject.completeId) as BaseContainer;
|
|
784
|
+
this._switchToCollapsedViewIfRequired([draggedContainer, droppedContainer]);
|
|
785
|
+
} else {
|
|
786
|
+
// Fallback: always collapse dragged and dropped containers
|
|
787
|
+
const draggedContainer = Element.getElementById(dragObject.completeId) as BaseContainer;
|
|
788
|
+
const droppedContainer = Element.getElementById(dropObject.completeId) as BaseContainer;
|
|
789
|
+
this._switchToCollapsedViewIfRequired([draggedContainer, droppedContainer]);
|
|
790
|
+
}
|
|
482
791
|
}
|
|
483
792
|
focusDraggedItem(this._layoutTable, iDropItemIndex);
|
|
484
793
|
}
|
|
@@ -494,13 +803,20 @@ export default class LayoutSettingsPanel extends BaseSettingsPanel {
|
|
|
494
803
|
icon: MessageBox.Icon.QUESTION,
|
|
495
804
|
title: this._i18nBundle.getText("reset_cards_confirmation_title"),
|
|
496
805
|
actions: [this._i18nBundle.getText("reset_cards_button") as string, MessageBox.Action.CANCEL],
|
|
497
|
-
onClose: async (oAction: string) => {
|
|
806
|
+
onClose: async (oAction: string | null) => {
|
|
498
807
|
if (oAction === this._i18nBundle.getText("reset_cards_button")) {
|
|
499
808
|
const aChangesForDeletion: (BaseContainer | BaseLayout)[] = [];
|
|
500
809
|
|
|
501
810
|
for (let section of this._orderedSections) {
|
|
502
|
-
|
|
503
|
-
|
|
811
|
+
if (section.isComposite && section.children) {
|
|
812
|
+
for (let panel of section.children) {
|
|
813
|
+
const element = Element.getElementById(panel.completeId) as BaseContainer;
|
|
814
|
+
aChangesForDeletion.push(element);
|
|
815
|
+
}
|
|
816
|
+
} else {
|
|
817
|
+
const element = Element.getElementById(section.completeId) as BaseContainer;
|
|
818
|
+
aChangesForDeletion.push(element);
|
|
819
|
+
}
|
|
504
820
|
}
|
|
505
821
|
// Revert Changes Related to DragnDrop
|
|
506
822
|
aChangesForDeletion.push(this._getPanel() as Layout);
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
declare module "sap/cux/home/
|
|
2
|
-
/*!
|
|
3
|
-
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
4
|
-
* * (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
5
|
-
*/
|
|
1
|
+
declare module "sap/cux/home/NewsContainer" {
|
|
6
2
|
import type { MetadataOptions } from "sap/ui/core/Element";
|
|
7
3
|
import BaseContainer from "sap/cux/home/BaseContainer";
|
|
8
4
|
import BasePanel from "sap/cux/home/BasePanel";
|
|
9
|
-
import type { $
|
|
5
|
+
import type { $NewsContainerSettings } from "sap/cux/home/NewsContainer";
|
|
10
6
|
import { INewsFeedVisibiliyChange, INewsPersData } from "sap/cux/home/interface/KeyUserInterface";
|
|
11
7
|
import { NewsType } from "sap/cux/home/library";
|
|
12
8
|
interface IpanelLoaded {
|
|
@@ -21,20 +17,20 @@ declare module "sap/cux/home/NewsAndPagesContainer" {
|
|
|
21
17
|
}
|
|
22
18
|
/**
|
|
23
19
|
*
|
|
24
|
-
* Container class for managing and storing News
|
|
20
|
+
* Container class for managing and storing News.
|
|
25
21
|
*
|
|
26
22
|
* @extends BaseContainer
|
|
27
23
|
*
|
|
28
24
|
* @author SAP SE
|
|
29
25
|
* @version 0.0.1
|
|
30
|
-
* @since 1.
|
|
26
|
+
* @since 1.142
|
|
31
27
|
*
|
|
32
28
|
* @private
|
|
33
29
|
* @ui5-restricted ux.eng.s4producthomes1
|
|
34
30
|
*
|
|
35
|
-
* @alias sap.cux.home.
|
|
31
|
+
* @alias sap.cux.home.NewsContainer
|
|
36
32
|
*/
|
|
37
|
-
export default class
|
|
33
|
+
export default class NewsContainer extends BaseContainer {
|
|
38
34
|
static renderer: {
|
|
39
35
|
apiVersion: number;
|
|
40
36
|
render: (rm: import("sap/ui/core/RenderManager").default, control: BaseContainer) => void;
|
|
@@ -42,12 +38,11 @@ declare module "sap/cux/home/NewsAndPagesContainer" {
|
|
|
42
38
|
};
|
|
43
39
|
static readonly metadata: MetadataOptions;
|
|
44
40
|
private panelLoaded;
|
|
45
|
-
private pagePanel;
|
|
46
41
|
private newsPanel;
|
|
47
42
|
private keyUserChange;
|
|
48
43
|
private isEndUserChange;
|
|
49
|
-
constructor(id?: string | $
|
|
50
|
-
constructor(id?: string, settings?: $
|
|
44
|
+
constructor(id?: string | $NewsContainerSettings);
|
|
45
|
+
constructor(id?: string, settings?: $NewsContainerSettings);
|
|
51
46
|
/**
|
|
52
47
|
* Init lifecycle method
|
|
53
48
|
*
|
|
@@ -56,7 +51,7 @@ declare module "sap/cux/home/NewsAndPagesContainer" {
|
|
|
56
51
|
*/
|
|
57
52
|
init(): void;
|
|
58
53
|
/**
|
|
59
|
-
* Loads the News
|
|
54
|
+
* Loads the News section.
|
|
60
55
|
* Overrides the load method of the BaseContainer.
|
|
61
56
|
*
|
|
62
57
|
* @private
|
|
@@ -83,7 +78,7 @@ declare module "sap/cux/home/NewsAndPagesContainer" {
|
|
|
83
78
|
loaded: boolean;
|
|
84
79
|
count: number;
|
|
85
80
|
}): void;
|
|
86
|
-
adjustStyleLayout(
|
|
81
|
+
adjustStyleLayout(): void;
|
|
87
82
|
/**
|
|
88
83
|
* Adjusts the layout of the all panels in the container.
|
|
89
84
|
*
|
|
@@ -92,11 +87,11 @@ declare module "sap/cux/home/NewsAndPagesContainer" {
|
|
|
92
87
|
*/
|
|
93
88
|
adjustLayout(): void;
|
|
94
89
|
/**
|
|
95
|
-
* Retrieves the generic placeholder content for the News
|
|
90
|
+
* Retrieves the generic placeholder content for the News container.
|
|
96
91
|
*
|
|
97
|
-
* @returns {string} The HTML string representing the News
|
|
92
|
+
* @returns {string} The HTML string representing the News container's placeholder content.
|
|
98
93
|
*/
|
|
99
94
|
protected getGenericPlaceholderContent(): string;
|
|
100
95
|
}
|
|
101
96
|
}
|
|
102
|
-
//# sourceMappingURL=
|
|
97
|
+
//# sourceMappingURL=NewsContainer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NewsContainer.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsContainer.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,4BAA4B,CAAC;IAO5C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAC3D,OAAO,aAAa,MAAM,4BAA4B,CAAC;IACvD,OAAO,SAAS,MAAM,wBAAwB,CAAC;IAC/C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IAEzE,OAAO,EAAE,wBAAwB,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;IAClG,OAAO,EAAE,QAAQ,EAAmB,MAAM,sBAAsB,CAAC;IAIjE,UAAU,YAAY;QACrB,CAAC,GAAG,EAAE,MAAM,GAAG;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;KAClD;IAED,UAAU,mBAAmB;QAC5B,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,QAAQ,CAAC;KACnB;IAED;;;;;;;;;;;;;;OAcG;IAEH,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,aAAa;QACvD,MAAM,CAAC,QAAQ;;;;UAGb;QACF,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAOvC;QAEF,OAAO,CAAC,WAAW,CAAoB;QACvC,OAAO,CAAC,SAAS,CAAa;QAC9B,OAAO,CAAC,aAAa,CAAkB;QACvC,OAAO,CAAC,eAAe,CAAsE;oBAEjF,EAAE,CAAC,EAAE,MAAM,GAAG,sBAAsB;oBACpC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,sBAAsB;QAY1D;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAoBnB;;;;;;WAMG;QACU,IAAI;QAmBjB;;;;;WAKG;QACI,mBAAmB,CAAC,QAAQ,EAAE,SAAS;QAM9C;;;;;WAKG;QACI,kBAAkB,IAAI,mBAAmB;QAIzC,2BAA2B,CAAC,eAAe,EAAE,wBAAwB;QAgBrE,mBAAmB,CAAC,gBAAgB,EAAE,aAAa;QA0CnD,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE;YAAE,MAAM,EAAE,OAAO,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE;QAY1E,iBAAiB;QAMxB;;;;;WAKG;QACI,YAAY;QAQnB;;;;WAIG;QACH,SAAS,CAAC,4BAA4B,IAAI,MAAM;KAGhD;CAEA"}
|