@sapui5/sap.cux.home 1.138.0 → 1.139.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/cux/home/.library +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.js +17 -10
- package/src/sap/cux/home/AppsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/AppsAdditionPanel.ts +19 -12
- package/src/sap/cux/home/AppsContainer.d.ts +0 -1
- package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/AppsContainer.js +3 -6
- package/src/sap/cux/home/AppsContainer.js.map +1 -1
- package/src/sap/cux/home/AppsContainer.ts +2 -6
- package/src/sap/cux/home/BaseAppPanel.js +1 -1
- package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
- package/src/sap/cux/home/BaseAppPanel.ts +1 -1
- package/src/sap/cux/home/BaseContainer.js +1 -1
- package/src/sap/cux/home/BaseContainer.js.map +1 -1
- package/src/sap/cux/home/BaseContainer.ts +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.d.ts +4 -4
- package/src/sap/cux/home/BaseContainerRenderer.d.ts.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.js +17 -19
- package/src/sap/cux/home/BaseContainerRenderer.js.map +1 -1
- package/src/sap/cux/home/BaseContainerRenderer.ts +21 -25
- package/src/sap/cux/home/BaseSettingsPanel.d.ts +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.js +2 -1
- package/src/sap/cux/home/BaseSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/BaseSettingsPanel.ts +4 -2
- package/src/sap/cux/home/CardsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/CardsPanel.js +2 -2
- package/src/sap/cux/home/CardsPanel.js.map +1 -1
- package/src/sap/cux/home/CardsPanel.ts +2 -5
- package/src/sap/cux/home/ContentAdditionDialog.js +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
- package/src/sap/cux/home/ContentAdditionDialog.ts +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.js +4 -7
- package/src/sap/cux/home/InsightsAdditionPanel.js.map +1 -1
- package/src/sap/cux/home/InsightsAdditionPanel.ts +4 -8
- package/src/sap/cux/home/InsightsContainer.d.ts +0 -1
- package/src/sap/cux/home/InsightsContainer.d.ts.map +1 -1
- package/src/sap/cux/home/InsightsContainer.js +4 -4
- package/src/sap/cux/home/InsightsContainer.js.map +1 -1
- package/src/sap/cux/home/InsightsContainer.ts +11 -5
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js +5 -3
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsPagesSettingsPanel.ts +4 -2
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts +11 -5
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js +160 -82
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/KeyUserNewsSettingsPanel.ts +164 -82
- package/src/sap/cux/home/Layout.d.ts +0 -1
- package/src/sap/cux/home/Layout.d.ts.map +1 -1
- package/src/sap/cux/home/Layout.js +0 -1
- package/src/sap/cux/home/Layout.js.map +1 -1
- package/src/sap/cux/home/Layout.ts +0 -2
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts +22 -1
- package/src/sap/cux/home/NewsAndPagesContainer.d.ts.map +1 -1
- package/src/sap/cux/home/NewsAndPagesContainer.js +47 -19
- package/src/sap/cux/home/NewsAndPagesContainer.js.map +1 -1
- package/src/sap/cux/home/NewsAndPagesContainer.ts +52 -19
- package/src/sap/cux/home/NewsGroup.d.ts.map +1 -1
- package/src/sap/cux/home/NewsGroup.js +11 -6
- package/src/sap/cux/home/NewsGroup.js.map +1 -1
- package/src/sap/cux/home/NewsGroup.ts +11 -8
- package/src/sap/cux/home/NewsPanel.d.ts +34 -5
- package/src/sap/cux/home/NewsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsPanel.gen.d.ts +0 -91
- package/src/sap/cux/home/NewsPanel.js +279 -198
- package/src/sap/cux/home/NewsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsPanel.ts +165 -99
- package/src/sap/cux/home/NewsSettingsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.js +10 -6
- package/src/sap/cux/home/NewsSettingsPanel.js.map +1 -1
- package/src/sap/cux/home/NewsSettingsPanel.ts +12 -6
- package/src/sap/cux/home/NoDataContainer.d.ts +0 -1
- package/src/sap/cux/home/NoDataContainer.d.ts.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.d.ts.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.js +4 -1
- package/src/sap/cux/home/SpaceInsightsPanel.js.map +1 -1
- package/src/sap/cux/home/SpaceInsightsPanel.ts +4 -1
- package/src/sap/cux/home/TaskPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TaskPanel.js +2 -9
- package/src/sap/cux/home/TaskPanel.js.map +1 -1
- package/src/sap/cux/home/TaskPanel.ts +3 -9
- package/src/sap/cux/home/TilesPanel.d.ts.map +1 -1
- package/src/sap/cux/home/TilesPanel.js +4 -4
- package/src/sap/cux/home/TilesPanel.js.map +1 -1
- package/src/sap/cux/home/TilesPanel.ts +4 -10
- package/src/sap/cux/home/ToDoPanel.d.ts.map +1 -1
- package/src/sap/cux/home/ToDoPanel.js +2 -17
- package/src/sap/cux/home/ToDoPanel.js.map +1 -1
- package/src/sap/cux/home/ToDoPanel.ts +2 -18
- package/src/sap/cux/home/ToDosContainer.d.ts +0 -1
- package/src/sap/cux/home/ToDosContainer.d.ts.map +1 -1
- package/src/sap/cux/home/ToDosContainer.js +2 -2
- 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/SetNewsFeedUrl.d.ts.map +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js +1 -0
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.js.map +1 -1
- package/src/sap/cux/home/changeHandler/SetNewsFeedUrl.ts +1 -0
- package/src/sap/cux/home/i18n/messagebundle.properties +17 -5
- package/src/sap/cux/home/i18n/messagebundle_ar.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_bg.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_ca.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_cnr.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_cs.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_cy.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_da.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_de.properties +15 -15
- package/src/sap/cux/home/i18n/messagebundle_el.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_en.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_en_GB.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_en_US_sappsd.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_en_US_saprigi.properties +12 -6
- package/src/sap/cux/home/i18n/messagebundle_en_US_saptrc.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_es.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_es_MX.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_et.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_fi.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_fr.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_fr_CA.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_hi.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_hr.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_hu.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_id.properties +6 -6
- package/src/sap/cux/home/i18n/messagebundle_it.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_iw.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_ja.properties +9 -9
- package/src/sap/cux/home/i18n/messagebundle_kk.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_ko.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_lt.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_lv.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_mk.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_ms.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_nl.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_no.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_pl.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_pt.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_pt_PT.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_ro.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_ru.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_sh.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_sk.properties +6 -6
- package/src/sap/cux/home/i18n/messagebundle_sl.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_sr.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_sv.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_th.properties +7 -7
- package/src/sap/cux/home/i18n/messagebundle_tr.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_uk.properties +6 -6
- package/src/sap/cux/home/i18n/messagebundle_vi.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_zh_CN.properties +5 -5
- package/src/sap/cux/home/i18n/messagebundle_zh_TW.properties +5 -5
- package/src/sap/cux/home/interface/CardsInterface.d.ts +1 -5
- package/src/sap/cux/home/interface/CardsInterface.d.ts.map +1 -1
- package/src/sap/cux/home/interface/CardsInterface.js.map +1 -1
- package/src/sap/cux/home/interface/CardsInterface.ts +1 -1
- package/src/sap/cux/home/interface/KeyUserInterface.d.ts +2 -0
- 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 +2 -0
- package/src/sap/cux/home/library.d.ts +16 -9
- package/src/sap/cux/home/library.d.ts.map +1 -1
- package/src/sap/cux/home/library.js +16 -9
- package/src/sap/cux/home/library.js.map +1 -1
- package/src/sap/cux/home/library.ts +17 -9
- package/src/sap/cux/home/themes/base/ContentAdditionDialog.less +0 -8
- package/src/sap/cux/home/themes/base/NewsAndPagesContainer.less +4 -0
- package/src/sap/cux/home/themes/base/ToDosContainer.less +2 -1
- package/src/sap/cux/home/utils/CommonUtils.d.ts +1 -1
- package/src/sap/cux/home/utils/CommonUtils.d.ts.map +1 -1
- package/src/sap/cux/home/utils/CommonUtils.js.map +1 -1
- package/src/sap/cux/home/utils/CommonUtils.ts +5 -2
- package/src/sap/cux/home/utils/FeatureUtils.js +0 -2
- package/src/sap/cux/home/utils/FeatureUtils.js.map +1 -1
- package/src/sap/cux/home/utils/FeatureUtils.ts +3 -3
- package/src/sap/cux/home/utils/HttpHelper.js.map +1 -1
- package/src/sap/cux/home/utils/HttpHelper.ts +1 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.d.ts.map +1 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.js +0 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.js.map +1 -1
- package/src/sap/cux/home/utils/KeyUserPersonalization.ts +0 -1
- package/src/sap/cux/home/utils/fragment/appsAdditionContent.fragment.xml +9 -4
- package/src/sap/cux/home/{AppsContainerGenericPlaceholder.d.ts → utils/placeholder/AppsPlaceholder.d.ts} +2 -2
- package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{AppsContainerGenericPlaceholder.js → utils/placeholder/AppsPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/AppsPlaceholder.js.map +1 -0
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts +8 -0
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.js → utils/placeholder/InsightsPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/InsightsPlaceholder.js.map +1 -0
- package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.d.ts → utils/placeholder/NewsAndPagesPlaceholder.d.ts} +3 -3
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.js → utils/placeholder/NewsAndPagesPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/NewsAndPagesPlaceholder.js.map +1 -0
- package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.d.ts → utils/placeholder/ToDosPlaceholder.d.ts} +2 -2
- package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.d.ts.map +1 -0
- package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.js → utils/placeholder/ToDosPlaceholder.js} +1 -1
- package/src/sap/cux/home/utils/placeholder/ToDosPlaceholder.js.map +1 -0
- package/src/sap/cux/home/AppsContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/AppsContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/InsightsContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/InsightsContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts +0 -8
- package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/NewsAndPagesContainerGenericPlaceholder.js.map +0 -1
- package/src/sap/cux/home/ToDosContainerGenericPlaceholder.d.ts.map +0 -1
- package/src/sap/cux/home/ToDosContainerGenericPlaceholder.js.map +0 -1
- /package/src/sap/cux/home/{AppsContainerGenericPlaceholder.ts → utils/placeholder/AppsPlaceholder.ts} +0 -0
- /package/src/sap/cux/home/{InsightsContainerGenericPlaceholder.ts → utils/placeholder/InsightsPlaceholder.ts} +0 -0
- /package/src/sap/cux/home/{NewsAndPagesContainerGenericPlaceholder.ts → utils/placeholder/NewsAndPagesPlaceholder.ts} +0 -0
- /package/src/sap/cux/home/{ToDosContainerGenericPlaceholder.ts → utils/placeholder/ToDosPlaceholder.ts} +0 -0
|
@@ -8,17 +8,22 @@ import type { MetadataOptions } from "sap/ui/core/Element";
|
|
|
8
8
|
import BaseContainer from "./BaseContainer";
|
|
9
9
|
import BasePanel from "./BasePanel";
|
|
10
10
|
import type { $NewsAndPagesContainerSettings } from "./NewsAndPagesContainer";
|
|
11
|
-
import { getNewsPagesPlaceholder } from "./
|
|
11
|
+
import { getNewsPagesPlaceholder } from "./utils/placeholder/NewsAndPagesPlaceholder";
|
|
12
12
|
import NewsPanel from "./NewsPanel";
|
|
13
13
|
import PagePanel from "./PagePanel";
|
|
14
14
|
import { INewsFeedVisibiliyChange, INewsPersData, ISpacePagePersonalization } from "./interface/KeyUserInterface";
|
|
15
|
-
import { OrientationType } from "./library";
|
|
15
|
+
import { NewsType, OrientationType } from "./library";
|
|
16
16
|
import { DeviceType } from "./utils/Device";
|
|
17
17
|
|
|
18
18
|
interface IpanelLoaded {
|
|
19
19
|
[key: string]: { loaded: boolean; count: number };
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
+
interface EndUserChangeStatus {
|
|
23
|
+
isEndUser: boolean;
|
|
24
|
+
newsType: NewsType;
|
|
25
|
+
}
|
|
26
|
+
|
|
22
27
|
/**
|
|
23
28
|
*
|
|
24
29
|
* Container class for managing and storing News and Pages.
|
|
@@ -60,6 +65,8 @@ export default class NewsAndPagesContainer extends BaseContainer {
|
|
|
60
65
|
private panelLoaded: IpanelLoaded = {};
|
|
61
66
|
private pagePanel!: PagePanel;
|
|
62
67
|
private newsPanel!: NewsPanel;
|
|
68
|
+
private keyUserChange: boolean = false;
|
|
69
|
+
private isEndUserChange: EndUserChangeStatus = { isEndUser: false, newsType: NewsType.None };
|
|
63
70
|
|
|
64
71
|
constructor(id?: string | $NewsAndPagesContainerSettings);
|
|
65
72
|
constructor(id?: string, settings?: $NewsAndPagesContainerSettings);
|
|
@@ -104,6 +111,9 @@ export default class NewsAndPagesContainer extends BaseContainer {
|
|
|
104
111
|
public async load() {
|
|
105
112
|
const aContent = this.getContent() as PagePanel[] | NewsPanel[];
|
|
106
113
|
for (const oContent of aContent) {
|
|
114
|
+
if (!this.keyUserChange) {
|
|
115
|
+
this.checkEndUserChanges(oContent);
|
|
116
|
+
}
|
|
107
117
|
await oContent.getData();
|
|
108
118
|
|
|
109
119
|
// If the newsVisibilityChangeHandler is invoked before the data is loaded,
|
|
@@ -160,6 +170,28 @@ export default class NewsAndPagesContainer extends BaseContainer {
|
|
|
160
170
|
return this;
|
|
161
171
|
}
|
|
162
172
|
|
|
173
|
+
/**
|
|
174
|
+
* Marks the change as an end-user change if the content is a NewsPanel with a URL and no key user changes exist.
|
|
175
|
+
*
|
|
176
|
+
* @private
|
|
177
|
+
* @param {BasePanel} oContent - The content panel to evaluate, typically of type `sap.cux.home.NewsPanel`.
|
|
178
|
+
*/
|
|
179
|
+
public checkEndUserChanges(oContent: BasePanel) {
|
|
180
|
+
if (oContent.getMetadata().getName() === "sap.cux.home.NewsPanel" && oContent.getProperty("url") && !this.keyUserChange) {
|
|
181
|
+
this.isEndUserChange.isEndUser = true;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Returns the current end-user change status.
|
|
187
|
+
*
|
|
188
|
+
* @private
|
|
189
|
+
* @returns {EndUserChangeStatus} An object containing the end-user change flag and the news type.
|
|
190
|
+
*/
|
|
191
|
+
public getIsEndUserChange():EndUserChangeStatus {
|
|
192
|
+
return this.isEndUserChange;
|
|
193
|
+
}
|
|
194
|
+
|
|
163
195
|
public newsVisibilityChangeHandler(personalization: INewsFeedVisibiliyChange) {
|
|
164
196
|
const aContent = this.getContent();
|
|
165
197
|
aContent.forEach((oContent: BasePanel) => {
|
|
@@ -168,13 +200,6 @@ export default class NewsAndPagesContainer extends BaseContainer {
|
|
|
168
200
|
if (personalization.isNewsFeedVisible) {
|
|
169
201
|
this.setProperty("newsFeedVisibility", true);
|
|
170
202
|
this._getPanelContentWrapper(newsPanel).setVisible(true);
|
|
171
|
-
// if only newsfeed visibility is set true and all inner properties are empty hide the news panel
|
|
172
|
-
const url = newsPanel.getProperty("url") as string;
|
|
173
|
-
const showCustom = Boolean(newsPanel.getProperty("showCustom"));
|
|
174
|
-
const showDefault = Boolean(newsPanel.getProperty("showDefault"));
|
|
175
|
-
if (!showCustom && !showDefault && !url) {
|
|
176
|
-
this._getPanelContentWrapper(newsPanel).setVisible(false);
|
|
177
|
-
}
|
|
178
203
|
} else {
|
|
179
204
|
this.setProperty("newsFeedVisibility", false);
|
|
180
205
|
this._getPanelContentWrapper(newsPanel).setVisible(false);
|
|
@@ -185,29 +210,37 @@ export default class NewsAndPagesContainer extends BaseContainer {
|
|
|
185
210
|
|
|
186
211
|
public newsPersonalization(personalizations: INewsPersData) {
|
|
187
212
|
const aContent = this.getContent();
|
|
213
|
+
let type: NewsType;
|
|
188
214
|
aContent.forEach((oContent: BasePanel) => {
|
|
189
|
-
|
|
215
|
+
this.checkEndUserChanges(oContent);
|
|
216
|
+
if (oContent.getMetadata().getName() === "sap.cux.home.NewsPanel" && !this.isEndUserChange.isEndUser) {
|
|
190
217
|
let newsPanel = oContent as NewsPanel;
|
|
191
218
|
const newsFeedVisibility = Boolean(this.getProperty("newsFeedVisibility"));
|
|
219
|
+
this.keyUserChange = true;
|
|
192
220
|
|
|
221
|
+
if (personalizations.showCustomNewsFeed) {
|
|
222
|
+
type = NewsType.Custom;
|
|
223
|
+
} else if (personalizations.showRssNewsFeed) {
|
|
224
|
+
type = NewsType.NewsUrl;
|
|
225
|
+
} else {
|
|
226
|
+
type = NewsType.Default;
|
|
227
|
+
}
|
|
228
|
+
newsPanel.setProperty("type", type);
|
|
193
229
|
newsPanel.setProperty("url", personalizations.newsFeedURL);
|
|
194
|
-
newsPanel.setProperty("showCustom", personalizations.showCustomNewsFeed);
|
|
195
230
|
newsPanel.setProperty("customFeedKey", personalizations.customNewsFeedKey);
|
|
196
231
|
newsPanel.setProperty("customFileName", personalizations.customNewsFeedFileName);
|
|
197
|
-
|
|
232
|
+
|
|
198
233
|
|
|
199
234
|
if (newsFeedVisibility) {
|
|
200
|
-
const url = personalizations.newsFeedURL;
|
|
235
|
+
const url = personalizations.newsFeedURL as string;
|
|
201
236
|
this._getPanelContentWrapper(newsPanel).setVisible(true);
|
|
202
237
|
const customFeedKey = String(newsPanel.getProperty("customFeedKey"));
|
|
203
|
-
|
|
204
|
-
const showDefault = Boolean(newsPanel.getProperty("showDefault"));
|
|
205
|
-
if (showCustom && customFeedKey) {
|
|
238
|
+
if (personalizations.showCustomNewsFeed && customFeedKey) {
|
|
206
239
|
newsPanel.setProperty("newsAvailable", true);
|
|
207
240
|
void newsPanel.setCustomNewsFeed(customFeedKey);
|
|
208
|
-
} else if (
|
|
209
|
-
void newsPanel.setDefaultNews(
|
|
210
|
-
} else if (
|
|
241
|
+
} else if (personalizations.showDefaultNewsFeed) {
|
|
242
|
+
void newsPanel.setDefaultNews();
|
|
243
|
+
} else if (personalizations.showRssNewsFeed && url) {
|
|
211
244
|
void newsPanel.setURL(url);
|
|
212
245
|
} else {
|
|
213
246
|
this._getPanelContentWrapper(newsPanel).setVisible(false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsGroup.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsGroup.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAsBxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAK3D,OAAO,YAAY,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"NewsGroup.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsGroup.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAsBxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAK3D,OAAO,YAAY,MAAM,2BAA2B,CAAC;IAGrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;IAM5D;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,YAAY;QAClD,OAAO,CAAC,gBAAgB,CAAU;QAClC,OAAO,CAAC,eAAe,CAAS;QAChC,OAAO,CAAC,SAAS,CAAQ;QACzB,OAAO,CAAC,mBAAmB,CAAa;QACxC,OAAO,CAAC,cAAc,CAAgB;oBAE1B,YAAY,CAAC,EAAE,MAAM,GAAG,kBAAkB;oBAC1C,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,kBAAkB;QAKtD,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAQvC;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAMnB;;;WAGG;QACH,OAAO,CAAC,aAAa;QASrB;;;WAGG;gBACW,mBAAmB;QAyCjC;;;;WAIG;QACH,OAAO,CAAC,eAAe;QAmBvB;;;WAGG;QACH,OAAO,CAAC,sBAAsB;QAK9B;;;;;WAKG;QACH,OAAO,CAAC,wBAAwB;QAiHhC;;;WAGG;QACH,OAAO,CAAC,qBAAqB;QAsC7B;;;WAGG;QACH,OAAO,CAAC,oBAAoB;QAK5B;;;;WAIG;QACH,OAAO,CAAC,yBAAyB;KAYjC;CAEA"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* * (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HBox", "sap/m/Image", "sap/m/Label", "sap/m/library", "sap/m/Link", "sap/m/List", "sap/m/ObjectStatus", "sap/m/Text", "sap/m/Title", "sap/m/VBox", "sap/ui/core/CustomData", "sap/ui/core/Element", "sap/ui/core/HTML", "sap/ui/core/Icon", "sap/ui/core/library", "./BaseNewsItem", "./NewsItem", "./utils/DataFormatUtils", "./utils/FESRUtil"], function (Button, CustomListItem, Dialog, HBox, Image, Label, sap_m_library, Link, List, ObjectStatus, Text, Title, VBox, CustomData, Element, HTML, Icon, sap_ui_core_library, __BaseNewsItem, __NewsItem, ___utils_DataFormatUtils, ___utils_FESRUtil) {
|
|
5
|
+
sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HBox", "sap/m/Image", "sap/m/Label", "sap/m/library", "sap/m/Link", "sap/m/List", "sap/m/ObjectStatus", "sap/m/Text", "sap/m/Title", "sap/m/VBox", "sap/ui/core/CustomData", "sap/ui/core/Element", "sap/ui/core/HTML", "sap/ui/core/Icon", "sap/ui/core/library", "./BaseNewsItem", "./library", "./NewsItem", "./utils/DataFormatUtils", "./utils/FESRUtil"], function (Button, CustomListItem, Dialog, HBox, Image, Label, sap_m_library, Link, List, ObjectStatus, Text, Title, VBox, CustomData, Element, HTML, Icon, sap_ui_core_library, __BaseNewsItem, ___library, __NewsItem, ___utils_DataFormatUtils, ___utils_FESRUtil) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
function _interopRequireDefault(obj) {
|
|
@@ -13,6 +13,7 @@ sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HB
|
|
|
13
13
|
const Priority = sap_m_library["Priority"];
|
|
14
14
|
const TitleLevel = sap_ui_core_library["TitleLevel"];
|
|
15
15
|
const BaseNewsItem = _interopRequireDefault(__BaseNewsItem);
|
|
16
|
+
const NewsType = ___library["NewsType"];
|
|
16
17
|
const NewsItem = _interopRequireDefault(__NewsItem);
|
|
17
18
|
const recycleId = ___utils_DataFormatUtils["recycleId"];
|
|
18
19
|
const addFESRSemanticStepName = ___utils_FESRUtil["addFESRSemanticStepName"];
|
|
@@ -87,11 +88,14 @@ sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HB
|
|
|
87
88
|
const oNewsPanel = _this.getParent();
|
|
88
89
|
const customFileName = oNewsPanel.getProperty("customFileName");
|
|
89
90
|
const isCSVFileFormat = customFileName.split(".").pop()?.toLowerCase() === "csv";
|
|
91
|
+
const endUserChanges = oNewsPanel.getParent().getIsEndUserChange();
|
|
92
|
+
const feedType = endUserChanges.newsType || oNewsPanel.getProperty("type");
|
|
90
93
|
const sImageUrl = _this.getImageUrl();
|
|
91
94
|
const persDataNewsFeed = oNewsPanel.getPersDataNewsFeed();
|
|
92
95
|
let newsFeedData = [];
|
|
93
96
|
let imgData;
|
|
94
|
-
|
|
97
|
+
const sUrl = oNewsPanel.getUrl();
|
|
98
|
+
let showDefault = feedType === NewsType.Default;
|
|
95
99
|
const _temp = function () {
|
|
96
100
|
if (!showDefault) {
|
|
97
101
|
const oNewsConfig = {
|
|
@@ -100,7 +104,7 @@ sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HB
|
|
|
100
104
|
showAllPreparationRequired: isCSVFileFormat ? false : !persDataNewsFeed ? true : persDataNewsFeed.showAllPreparationRequired
|
|
101
105
|
};
|
|
102
106
|
_this.oNewsGroupDialog?.open();
|
|
103
|
-
const sNewsFeedURL = oNewsPanel.getNewsFeedDetailsUrl(oNewsConfig);
|
|
107
|
+
const sNewsFeedURL = endUserChanges.isEndUser ? sUrl : oNewsPanel.getNewsFeedDetailsUrl(oNewsConfig);
|
|
104
108
|
return Promise.resolve(oNewsPanel.getAuthNewsFeed(sNewsFeedURL, oNewsConfig.title)).then(function (_oNewsPanel$getAuthNe) {
|
|
105
109
|
newsFeedData = _oNewsPanel$getAuthNe;
|
|
106
110
|
});
|
|
@@ -126,9 +130,9 @@ sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HB
|
|
|
126
130
|
* @returns {void}
|
|
127
131
|
*/
|
|
128
132
|
loadNewsDetails: function _loadNewsDetails(aNewsDetails) {
|
|
129
|
-
const oNewsPanel = this.getParent();
|
|
130
133
|
this.clearExistingNewsItems();
|
|
131
|
-
const
|
|
134
|
+
const oNewsPanel = this.getParent();
|
|
135
|
+
const showDefault = oNewsPanel?.getNewsType() === NewsType.Default;
|
|
132
136
|
(aNewsDetails || []).forEach((oItem, i) => {
|
|
133
137
|
const newsItemInstance = new NewsItem(recycleId(`${this.getId()}--newsItem--${i}`), {
|
|
134
138
|
title: showDefault ? oItem.title : oItem.Title.value,
|
|
@@ -159,7 +163,8 @@ sap.ui.define(["sap/m/Button", "sap/m/CustomListItem", "sap/m/Dialog", "sap/m/HB
|
|
|
159
163
|
*/
|
|
160
164
|
generateNewsListTemplate: function _generateNewsListTemplate(oItem, i) {
|
|
161
165
|
const oNewsPanel = this.getParent();
|
|
162
|
-
|
|
166
|
+
const showDefault = oNewsPanel?.getNewsType() === NewsType.Default;
|
|
167
|
+
if (!showDefault) {
|
|
163
168
|
const oFieldVBox = new VBox(recycleId(this.getId() + "--idNewsFieldsBox" + "--" + i)).addStyleClass("newsListItemContainer");
|
|
164
169
|
(oItem?.expandFields || []).forEach((oField, idx) => {
|
|
165
170
|
oFieldVBox.addItem(new HBox(recycleId(this.getId() + "--idNewsFieldHBox--" + idx), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsGroup.js","names":["sap","ui","define","Button","CustomListItem","Dialog","HBox","Image","Label","sap_m_library","Link","List","ObjectStatus","Text","Title","VBox","CustomData","Element","HTML","Icon","sap_ui_core_library","__BaseNewsItem","__NewsItem","___utils_DataFormatUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","FlexAlignItems","FlexRendertype","Priority","TitleLevel","BaseNewsItem","NewsItem","recycleId","addFESRSemanticStepName","FESR_EVENTS","NewsGroup","extend","metadata","library","aggregations","newsItems","type","singularName","multiple","constructor","_constructor","id","settings","BaseNewsItem.prototype.constructor.call","init","_init","BaseNewsItem.prototype.init.call","_oTile","attachPress","pressNewsItem","bind","createNewsGroupDialog","_pressNewsItem","oEvent","tile","getSource","getProperty","openNewsGroupDialog","_openNewsGroupDialog","_this","_temp2","oNewsGroupDialog","setTitle","getTitle","oNewsGroupImage","setSrc","sImageUrl","loadNewsDetails","newsFeedData","oNewsList","setBusy","oNewsPanel","getParent","customFileName","isCSVFileFormat","split","pop","toLowerCase","getImageUrl","persDataNewsFeed","getPersDataNewsFeed","imgData","showDefault","_temp","oNewsConfig","changeId","getCustomFeedKey","title","showAllPreparationRequired","open","sNewsFeedURL","getNewsFeedDetailsUrl","Promise","resolve","getAuthNewsFeed","then","_oNewsPanel$getAuthNe","criticalStatus","setVisible","getPriority","Medium","currentDefaultGroup","getCurrentNewsGroup","getId","_group_to_article","_group_to_image","image_alt_text","setAlt","e","reject","_loadNewsDetails","aNewsDetails","clearExistingNewsItems","forEach","oItem","i","newsItemInstance","value","subTitle","Description","footer","footer_text","imageUrl","priority","None","priorityText","_i18nBundle","getText","addAggregation","addItem","generateNewsListTemplate","_clearExistingNewsItems","destroyAggregation","_generateNewsListTemplate","oFieldVBox","addStyleClass","expandFields","oField","idx","items","text","label","tooltip","sInitialText","oExpandButton","press","handleShowNewsFeedDetails","customData","key","PRESS","content","titleStyle","Type","href","target","renderType","Bare","alignItems","Center","src","width","height","size","visible","H5","H6","description","_createNewsGroupDialog","inverted","icon","state","oImagePriorityVBox","closeButton","closeNewsGroupDialog","contentWidth","contentHeight","buttons","addDependent","_closeNewsGroupDialog","close","_handleShowNewsFeedDetails","oButton","listItemIndex","data","fieldsVBox","getElementById","fieldExpanded","getVisible","sButtonShowText","setText"],"sources":["NewsGroup.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport Dialog from \"sap/m/Dialog\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HBox from \"sap/m/HBox\";\nimport Image from \"sap/m/Image\";\nimport Label from \"sap/m/Label\";\nimport { FlexAlignItems, FlexRendertype, Priority } from \"sap/m/library\";\nimport Link from \"sap/m/Link\";\nimport List from \"sap/m/List\";\nimport ObjectStatus from \"sap/m/ObjectStatus\";\nimport Text from \"sap/m/Text\";\nimport Title from \"sap/m/Title\";\nimport VBox from \"sap/m/VBox\";\nimport Event from \"sap/ui/base/Event\";\nimport CustomData from \"sap/ui/core/CustomData\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport Element from \"sap/ui/core/Element\";\nimport HTML from \"sap/ui/core/HTML\";\nimport Icon from \"sap/ui/core/Icon\";\nimport { TitleLevel } from \"sap/ui/core/library\";\nimport BaseNewsItem from \"./BaseNewsItem\";\nimport { $NewsGroupSettings } from \"./NewsGroup\";\nimport NewsItem from \"./NewsItem\";\nimport NewsPanel, { INewsFeed, INewsItem, INewsLink, INewsParam } from \"./NewsPanel\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\n/**\n *\n * Class for managing and storing News Group items.\n *\n * @extends sap.cux.home.BaseNewsItem\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.NewsGroup\n */\nexport default class NewsGroup extends BaseNewsItem {\n\tprivate oNewsGroupDialog!: Dialog;\n\tprivate oNewsGroupImage!: Image;\n\tprivate oNewsList!: List;\n\tprivate currentDefaultGroup!: INewsFeed;\n\tprivate criticalStatus!: ObjectStatus;\n\n\tconstructor(idOrSettings?: string | $NewsGroupSettings);\n\tconstructor(id?: string, settings?: $NewsGroupSettings);\n\tconstructor(id?: string, settings?: $NewsGroupSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * newsItems aggregation of the news. These items will be shown in a dialog on click of the news\n\t\t\t */\n\t\t\tnewsItems: { type: \"sap.cux.home.NewsItem\", singularName: \"newsItem\", multiple: true }\n\t\t}\n\t};\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis._oTile.attachPress(this, this.pressNewsItem.bind(this));\n\t\tthis.createNewsGroupDialog();\n\t}\n\n\t/**\n\t * Handles the press event on the news item, opens the dialog.\n\t * @returns {void}\n\t */\n\tprivate pressNewsItem(oEvent: Event): void {\n\t\tconst tile = oEvent.getSource();\n\t\tif (!(tile as GenericTile).getProperty(\"pressEnabled\")) {\n\t\t\t// Prevent dialog opening if the tile's pressEnabled is false\n\t\t\treturn;\n\t\t}\n\t\tvoid this.openNewsGroupDialog();\n\t}\n\n\t/**\n\t * Opens the dialog for news details\n\t * @returns {Promise<void>}\n\t */\n\tprivate async openNewsGroupDialog(): Promise<void> {\n\t\tthis.oNewsList?.setBusy(true);\n\t\tconst oNewsPanel = this.getParent() as NewsPanel;\n\t\tconst customFileName = oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tconst isCSVFileFormat = customFileName.split(\".\").pop()?.toLowerCase() === \"csv\";\n\n\t\tconst sImageUrl = this.getImageUrl();\n\t\tconst persDataNewsFeed = oNewsPanel.getPersDataNewsFeed();\n\t\tlet newsFeedData: INewsFeed[] = [];\n\t\tlet imgData;\n\t\tlet showDefault = oNewsPanel.getProperty(\"showDefault\") as boolean;\n\t\tif (!showDefault) {\n\t\t\tconst oNewsConfig: INewsItem = {\n\t\t\t\tchangeId: oNewsPanel.getCustomFeedKey(),\n\t\t\t\ttitle: this.getTitle(),\n\t\t\t\tshowAllPreparationRequired: isCSVFileFormat ? false : !persDataNewsFeed ? true : persDataNewsFeed.showAllPreparationRequired\n\t\t\t};\n\n\t\t\tthis.oNewsGroupDialog?.open();\n\t\t\tconst sNewsFeedURL = oNewsPanel.getNewsFeedDetailsUrl(oNewsConfig);\n\n\t\t\tnewsFeedData = (await oNewsPanel.getAuthNewsFeed(sNewsFeedURL, oNewsConfig.title)) as INewsFeed[];\n\t\t} else {\n\t\t\tthis.criticalStatus.setVisible(this.getPriority() === Priority.Medium);\n\n\t\t\tthis.oNewsGroupDialog?.open();\n\t\t\tthis.currentDefaultGroup = oNewsPanel.getCurrentNewsGroup(this.getId()) as INewsFeed;\n\t\t\tnewsFeedData = (this.currentDefaultGroup?._group_to_article as INewsFeed[]) || [];\n\t\t\timgData = this.currentDefaultGroup?._group_to_image as Record<string, string>;\n\t\t\tif (imgData?.image_alt_text) {\n\t\t\t\tthis.oNewsGroupImage?.setAlt(imgData.image_alt_text);\n\t\t\t}\n\t\t}\n\t\tthis.oNewsGroupDialog?.setTitle(this.getTitle());\n\t\tthis.oNewsGroupImage?.setSrc(sImageUrl);\n\t\tthis.loadNewsDetails(newsFeedData);\n\t\tthis.oNewsList?.setBusy(false);\n\t}\n\n\t/**\n\t * Iterate through the provided news details data and loads the news items\n\t * @param {INewsFeed[]} aNewsDetails array of news items to be shown in the list\n\t * @returns {void}\n\t */\n\tprivate loadNewsDetails(aNewsDetails: INewsFeed[]): void {\n\t\tconst oNewsPanel = this.getParent() as NewsPanel;\n\t\tthis.clearExistingNewsItems();\n\t\tconst showDefault = oNewsPanel.getProperty(\"showDefault\") as boolean;\n\n\t\t(aNewsDetails || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tconst newsItemInstance = new NewsItem(recycleId(`${this.getId()}--newsItem--${i}`), {\n\t\t\t\ttitle: showDefault ? oItem.title : (oItem.Title as INewsLink).value,\n\t\t\t\tsubTitle: showDefault ? oItem.subTitle : (oItem.Description as INewsLink).value,\n\t\t\t\tfooter: showDefault ? oItem.footer_text : \"\",\n\t\t\t\timageUrl: showDefault ? this.getImageUrl() : \"\",\n\t\t\t\tpriority: showDefault && oItem.priority == \"1\" ? Priority.Medium : Priority.None,\n\t\t\t\tpriorityText: showDefault && oItem.priority == \"1\" ? this._i18nBundle.getText(\"criticalNews\") : \"\"\n\t\t\t});\n\t\t\tthis.addAggregation(\"newsItems\", newsItemInstance);\n\n\t\t\tthis.oNewsList?.addItem(this.generateNewsListTemplate(oItem, i));\n\t\t});\n\t}\n\n\t/**\n\t * Clears the existing news items from the dialog list and aggregation\n\t * @returns {void}\n\t */\n\tprivate clearExistingNewsItems(): void {\n\t\t// Destroy list items\n\t\tthis.oNewsList?.destroyAggregation(\"items\", true);\n\t\tthis.destroyAggregation(\"newsItems\", true);\n\t}\n\t/**\n\t * Generates the custom list item templates for the news details\n\t * @param {INewsFeed} oItem news feed item for binding the template\n\t * @param {number} i index of the item\n\t * @returns {CustomListItem} the template of list item to be shown in the dialog\n\t */\n\tprivate generateNewsListTemplate(oItem: INewsFeed, i: number): CustomListItem {\n\t\tconst oNewsPanel = this.getParent() as NewsPanel;\n\n\t\tif (!oNewsPanel.getProperty(\"showDefault\")) {\n\t\t\tconst oFieldVBox = new VBox(recycleId(this.getId() + \"--idNewsFieldsBox\" + \"--\" + i)).addStyleClass(\"newsListItemContainer\");\n\t\t\t((oItem?.expandFields as INewsLink[]) || []).forEach((oField, idx) => {\n\t\t\t\toFieldVBox.addItem(\n\t\t\t\t\tnew HBox(recycleId(this.getId() + \"--idNewsFieldHBox--\" + idx), {\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tnew Label(recycleId(this.getId() + \"--idNewsFieldsLabel--\" + idx), {\n\t\t\t\t\t\t\t\ttext: oField.label + \":\",\n\t\t\t\t\t\t\t\ttooltip: oField.label\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew Text(recycleId(this.getId() + \"--idNewsFieldsValue--\" + idx), {\n\t\t\t\t\t\t\t\ttext: oField.value\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\")\n\t\t\t\t);\n\t\t\t});\n\t\t\toFieldVBox.setVisible(false);\n\t\t\tconst sInitialText = this._i18nBundle.getText(\"expand\") as string;\n\t\t\tconst oExpandButton = new Button(`${this.getId()}--expand--${i}`, {\n\t\t\t\ttext: sInitialText,\n\t\t\t\tpress: this.handleShowNewsFeedDetails.bind(this),\n\t\t\t\tcustomData: new CustomData({\n\t\t\t\t\tkey: \"index\",\n\t\t\t\t\tvalue: i\n\t\t\t\t})\n\t\t\t});\n\t\t\taddFESRSemanticStepName(oExpandButton, FESR_EVENTS.PRESS, sInitialText);\n\n\t\t\treturn new CustomListItem(recycleId(`${this.getId()}--idNewsDetailItem--${i}`), {\n\t\t\t\tcontent: [\n\t\t\t\t\tnew VBox(recycleId(`${this.getId()}--newsList--${i}`), {\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tnew Title(recycleId(`${this.getId()}--newsTitle--${i}`), {\n\t\t\t\t\t\t\t\ttext: (oItem.Title as INewsLink).value,\n\t\t\t\t\t\t\t\ttitleStyle: \"H6\"\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew Text(recycleId(`${this.getId()}--newsText--${i}`), {\n\t\t\t\t\t\t\t\ttext: (oItem.Description as INewsLink).value\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew HBox(recycleId(`${this.getId()}--newsHBox--${i}`), {\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\tnew Label(recycleId(`${this.getId()}--newsLabel--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: (oItem.Type as INewsLink).label + \":\",\n\t\t\t\t\t\t\t\t\t\ttooltip: (oItem.Type as INewsLink).label\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tnew Text(recycleId(`${this.getId()}--newsItemText--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: (oItem.Type as INewsLink).value\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\"),\n\t\t\t\t\t\t\tnew HBox(recycleId(`${this.getId()}--newsListItemBox--${i}`), {\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\tnew Label(recycleId(`${this.getId()}--newsListItemLabel--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: this._i18nBundle.getText(\"readMoreLink\") + \":\",\n\t\t\t\t\t\t\t\t\t\ttooltip: (oItem.Link as INewsParam).value.label + \"\"\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tnew Link(recycleId(`${this.getId()}--newsListItemLink--${i}`), {\n\t\t\t\t\t\t\t\t\t\thref: (oItem.Link as INewsParam).value.value + \"\",\n\t\t\t\t\t\t\t\t\t\ttext: (oItem.Link as INewsParam).text,\n\t\t\t\t\t\t\t\t\t\ttarget: \"_blank\"\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\"),\n\t\t\t\t\t\t\toFieldVBox,\n\t\t\t\t\t\t\toExpandButton\n\t\t\t\t\t\t]\n\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\")\n\t\t\t\t]\n\t\t\t}).addStyleClass(\"newsListItem\");\n\t\t} else {\n\t\t\treturn new CustomListItem(recycleId(`${this.getId()}--idDefaultNewsDetailItem--${i}`), {\n\t\t\t\tcontent: [\n\t\t\t\t\tnew VBox(recycleId(`${this.getId()}--defaultNewsItemVbox--${i}`), {\n\t\t\t\t\t\trenderType: FlexRendertype.Bare,\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tnew HBox(recycleId(`${this.getId()}--defaultNewsItemTitle--${i}`), {\n\t\t\t\t\t\t\t\talignItems: FlexAlignItems.Center,\n\t\t\t\t\t\t\t\trenderType: FlexRendertype.Bare,\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\tnew Icon(recycleId(`${this.getId()}--newsPriorityIcon--${i}`), {\n\t\t\t\t\t\t\t\t\t\tsrc: \"sap-icon://high-priority\",\n\t\t\t\t\t\t\t\t\t\twidth: \"1rem\",\n\t\t\t\t\t\t\t\t\t\theight: \"1rem\",\n\t\t\t\t\t\t\t\t\t\tsize: \"1rem\",\n\t\t\t\t\t\t\t\t\t\tvisible: oItem.priority === \"1\",\n\t\t\t\t\t\t\t\t\t\ttooltip: this._i18nBundle.getText(\"criticalNewsIcon\") as string\n\t\t\t\t\t\t\t\t\t}).addStyleClass(\"newsCriticalIconColor\"),\n\t\t\t\t\t\t\t\t\tnew Title(recycleId(`${this.getId()}--newsTitle--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: oItem.title,\n\t\t\t\t\t\t\t\t\t\ttitleStyle: TitleLevel.H5\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\"),\n\t\t\t\t\t\t\tnew Title(recycleId(`${this.getId()}--newsSubTitle--${i}`), {\n\t\t\t\t\t\t\t\ttext: oItem.subTitle,\n\t\t\t\t\t\t\t\tvisible: !!oItem.subTitle,\n\t\t\t\t\t\t\t\ttitleStyle: TitleLevel.H6\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew HTML(recycleId(`${this.getId()}--defaultNewsItemHTML--${i}`), {\n\t\t\t\t\t\t\t\t// add an outer div to add CSS class for styling\n\t\t\t\t\t\t\t\tcontent: `<div class=\"newsGroupHtmlContent\">${oItem.description}</div>`\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\")\n\t\t\t\t]\n\t\t\t}).addStyleClass(\"newsListItem\");\n\t\t}\n\t}\n\n\t/**\n\t * Creates the dialog which contains the news detail items\n\t * @returns {void}\n\t */\n\tprivate createNewsGroupDialog(): void {\n\t\t//create the dialog template without binding\n\t\tif (!this.oNewsGroupDialog) {\n\t\t\tthis.oNewsGroupImage = new Image(recycleId(`${this.getId()}-custNewsImage`), {\n\t\t\t\twidth: \"100%\",\n\t\t\t\theight: \"100%\",\n\t\t\t\tsrc: \"/resources/sap/cux/home/img/CustomNewsFeed/SupplyChain/3.jpg\"\n\t\t\t}).addStyleClass(\"newsGroupDialogImage\");\n\t\t\tthis.oNewsList = new List(recycleId(`${this.getId()}-custNewsList`)).addStyleClass(\"sapUiSmallMarginBottom\");\n\t\t\tthis.criticalStatus = new ObjectStatus(recycleId(`${this.getId()}-newsDialogCriticalStatus`), {\n\t\t\t\tvisible: false,\n\t\t\t\ttext: this._i18nBundle.getText(\"criticalNews\") as string,\n\t\t\t\tinverted: true,\n\t\t\t\ticon: \"sap-icon://high-priority\",\n\t\t\t\tstate: \"Warning\"\n\t\t\t}).addStyleClass(\"newsGroupDialogPriorityStatus\");\n\t\t\tlet oImagePriorityVBox = new VBox(recycleId(`${this.getId()}-newsDialogPriorityVBox`), {\n\t\t\t\trenderType: FlexRendertype.Bare,\n\t\t\t\theight: \"15rem\",\n\t\t\t\titems: [this.oNewsGroupImage, this.criticalStatus]\n\t\t\t}).addStyleClass(\"newsDialogPriorityVBox\");\n\t\t\tconst closeButton = new Button(recycleId(`${this.getId()}-custNewsFeedDetailsCloseBtn`), {\n\t\t\t\ttext: this._i18nBundle.getText(\"XBUT_CLOSE\"),\n\t\t\t\tpress: this.closeNewsGroupDialog.bind(this),\n\t\t\t\ttype: \"Transparent\"\n\t\t\t});\n\t\t\taddFESRSemanticStepName(closeButton, FESR_EVENTS.PRESS, \"newsDlgCloseBtn\");\n\t\t\tthis.oNewsGroupDialog = new Dialog(recycleId(`${this.getId()}-custNewsFeedDetailsDialog`), {\n\t\t\t\ttitle: this.getTitle() || \"\",\n\t\t\t\tcontentWidth: \"52rem\",\n\t\t\t\tcontentHeight: \"calc(100% - 2.5rem)\",\n\t\t\t\tcontent: [oImagePriorityVBox, this.oNewsList],\n\t\t\t\tbuttons: [closeButton]\n\t\t\t});\n\t\t\tthis.addDependent(this.oNewsGroupDialog);\n\t\t}\n\t}\n\n\t/**\n\t * Closes the news details dialog\n\t * @returns {void}\n\t */\n\tprivate closeNewsGroupDialog(): void {\n\t\t// Close the dialog first\n\t\tthis.oNewsGroupDialog?.close();\n\t}\n\n\t/**\n\t * Handles the click on the show more button of news detail items in news group dialog\n\t * @param {Event} oEvent\n\t * @returns {void}\n\t */\n\tprivate handleShowNewsFeedDetails(oEvent: Event): void {\n\t\tconst oButton = oEvent.getSource<Button>();\n\t\tconst listItemIndex = oButton.data(\"index\") as number;\n\t\tconst fieldsVBox = Element.getElementById(this.getId() + \"--idNewsFieldsBox\" + \"--\" + listItemIndex) as VBox;\n\t\tconst fieldExpanded: boolean = fieldsVBox.getVisible();\n\t\tfieldsVBox.setVisible(!fieldExpanded);\n\t\tconst sButtonShowText = fieldExpanded\n\t\t\t? (this._i18nBundle.getText(\"expand\") as string)\n\t\t\t: (this._i18nBundle.getText(\"collapse\") as string);\n\t\toButton.setText(sButtonShowText);\n\t\taddFESRSemanticStepName(oButton, FESR_EVENTS.PRESS, sButtonShowText);\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"NewsGroup.js","names":["sap","ui","define","Button","CustomListItem","Dialog","HBox","Image","Label","sap_m_library","Link","List","ObjectStatus","Text","Title","VBox","CustomData","Element","HTML","Icon","sap_ui_core_library","__BaseNewsItem","___library","__NewsItem","___utils_DataFormatUtils","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","FlexAlignItems","FlexRendertype","Priority","TitleLevel","BaseNewsItem","NewsType","NewsItem","recycleId","addFESRSemanticStepName","FESR_EVENTS","NewsGroup","extend","metadata","library","aggregations","newsItems","type","singularName","multiple","constructor","_constructor","id","settings","BaseNewsItem.prototype.constructor.call","init","_init","BaseNewsItem.prototype.init.call","_oTile","attachPress","pressNewsItem","bind","createNewsGroupDialog","_pressNewsItem","oEvent","tile","getSource","getProperty","openNewsGroupDialog","_openNewsGroupDialog","_this","_temp2","oNewsGroupDialog","setTitle","getTitle","oNewsGroupImage","setSrc","sImageUrl","loadNewsDetails","newsFeedData","oNewsList","setBusy","oNewsPanel","getParent","customFileName","isCSVFileFormat","split","pop","toLowerCase","endUserChanges","getIsEndUserChange","feedType","newsType","getImageUrl","persDataNewsFeed","getPersDataNewsFeed","imgData","sUrl","getUrl","showDefault","Default","_temp","oNewsConfig","changeId","getCustomFeedKey","title","showAllPreparationRequired","open","sNewsFeedURL","isEndUser","getNewsFeedDetailsUrl","Promise","resolve","getAuthNewsFeed","then","_oNewsPanel$getAuthNe","criticalStatus","setVisible","getPriority","Medium","currentDefaultGroup","getCurrentNewsGroup","getId","_group_to_article","_group_to_image","image_alt_text","setAlt","e","reject","_loadNewsDetails","aNewsDetails","clearExistingNewsItems","getNewsType","forEach","oItem","i","newsItemInstance","value","subTitle","Description","footer","footer_text","imageUrl","priority","None","priorityText","_i18nBundle","getText","addAggregation","addItem","generateNewsListTemplate","_clearExistingNewsItems","destroyAggregation","_generateNewsListTemplate","oFieldVBox","addStyleClass","expandFields","oField","idx","items","text","label","tooltip","sInitialText","oExpandButton","press","handleShowNewsFeedDetails","customData","key","PRESS","content","titleStyle","Type","href","target","renderType","Bare","alignItems","Center","src","width","height","size","visible","H5","H6","description","_createNewsGroupDialog","inverted","icon","state","oImagePriorityVBox","closeButton","closeNewsGroupDialog","contentWidth","contentHeight","buttons","addDependent","_closeNewsGroupDialog","close","_handleShowNewsFeedDetails","oButton","listItemIndex","data","fieldsVBox","getElementById","fieldExpanded","getVisible","sButtonShowText","setText"],"sources":["NewsGroup.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Button from \"sap/m/Button\";\nimport CustomListItem from \"sap/m/CustomListItem\";\nimport Dialog from \"sap/m/Dialog\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HBox from \"sap/m/HBox\";\nimport Image from \"sap/m/Image\";\nimport Label from \"sap/m/Label\";\nimport { FlexAlignItems, FlexRendertype, Priority } from \"sap/m/library\";\nimport Link from \"sap/m/Link\";\nimport List from \"sap/m/List\";\nimport ObjectStatus from \"sap/m/ObjectStatus\";\nimport Text from \"sap/m/Text\";\nimport Title from \"sap/m/Title\";\nimport VBox from \"sap/m/VBox\";\nimport Event from \"sap/ui/base/Event\";\nimport CustomData from \"sap/ui/core/CustomData\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport Element from \"sap/ui/core/Element\";\nimport HTML from \"sap/ui/core/HTML\";\nimport Icon from \"sap/ui/core/Icon\";\nimport { TitleLevel } from \"sap/ui/core/library\";\nimport BaseNewsItem from \"./BaseNewsItem\";\nimport { NewsType } from \"./library\";\nimport NewsAndPagesContainer from \"./NewsAndPagesContainer\";\nimport { $NewsGroupSettings } from \"./NewsGroup\";\nimport NewsItem from \"./NewsItem\";\nimport NewsPanel, { INewsFeed, INewsItem, INewsLink, INewsParam } from \"./NewsPanel\";\nimport { recycleId } from \"./utils/DataFormatUtils\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\n/**\n *\n * Class for managing and storing News Group items.\n *\n * @extends sap.cux.home.BaseNewsItem\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121\n * @private\n *\n * @alias sap.cux.home.NewsGroup\n */\nexport default class NewsGroup extends BaseNewsItem {\n\tprivate oNewsGroupDialog!: Dialog;\n\tprivate oNewsGroupImage!: Image;\n\tprivate oNewsList!: List;\n\tprivate currentDefaultGroup!: INewsFeed;\n\tprivate criticalStatus!: ObjectStatus;\n\n\tconstructor(idOrSettings?: string | $NewsGroupSettings);\n\tconstructor(id?: string, settings?: $NewsGroupSettings);\n\tconstructor(id?: string, settings?: $NewsGroupSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * newsItems aggregation of the news. These items will be shown in a dialog on click of the news\n\t\t\t */\n\t\t\tnewsItems: { type: \"sap.cux.home.NewsItem\", singularName: \"newsItem\", multiple: true }\n\t\t}\n\t};\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\t\tthis._oTile.attachPress(this, this.pressNewsItem.bind(this));\n\t\tthis.createNewsGroupDialog();\n\t}\n\n\t/**\n\t * Handles the press event on the news item, opens the dialog.\n\t * @returns {void}\n\t */\n\tprivate pressNewsItem(oEvent: Event): void {\n\t\tconst tile = oEvent.getSource();\n\t\tif (!(tile as GenericTile).getProperty(\"pressEnabled\")) {\n\t\t\t// Prevent dialog opening if the tile's pressEnabled is false\n\t\t\treturn;\n\t\t}\n\t\tvoid this.openNewsGroupDialog();\n\t}\n\n\t/**\n\t * Opens the dialog for news details\n\t * @returns {Promise<void>}\n\t */\n\tprivate async openNewsGroupDialog(): Promise<void> {\n\t\tthis.oNewsList?.setBusy(true);\n\t\tconst oNewsPanel = this.getParent() as NewsPanel;\n\t\tconst customFileName = oNewsPanel.getProperty(\"customFileName\") as string;\n\t\tconst isCSVFileFormat = customFileName.split(\".\").pop()?.toLowerCase() === \"csv\";\n\t\tconst endUserChanges = (oNewsPanel.getParent() as NewsAndPagesContainer).getIsEndUserChange();\n\t\tconst feedType = (endUserChanges.newsType || oNewsPanel.getProperty(\"type\")) as NewsType;\n\t\tconst sImageUrl = this.getImageUrl();\n\t\tconst persDataNewsFeed = oNewsPanel.getPersDataNewsFeed();\n\t\tlet newsFeedData: INewsFeed[] = [];\n\t\tlet imgData;\n\t\tconst sUrl = oNewsPanel.getUrl();\n\t\tlet showDefault = feedType === NewsType.Default;\n\t\tif (!showDefault) {\n\t\t\tconst oNewsConfig: INewsItem = {\n\t\t\t\tchangeId: oNewsPanel.getCustomFeedKey(),\n\t\t\t\ttitle: this.getTitle(),\n\t\t\t\tshowAllPreparationRequired: isCSVFileFormat ? false : !persDataNewsFeed ? true : persDataNewsFeed.showAllPreparationRequired\n\t\t\t};\n\n\t\t\tthis.oNewsGroupDialog?.open();\n\t\t\tconst sNewsFeedURL = endUserChanges.isEndUser ? sUrl : oNewsPanel.getNewsFeedDetailsUrl(oNewsConfig);\n\n\t\t\tnewsFeedData = (await oNewsPanel.getAuthNewsFeed(sNewsFeedURL, oNewsConfig.title)) as INewsFeed[];\n\t\t} else {\n\t\t\tthis.criticalStatus.setVisible(this.getPriority() === Priority.Medium);\n\n\t\t\tthis.oNewsGroupDialog?.open();\n\t\t\tthis.currentDefaultGroup = oNewsPanel.getCurrentNewsGroup(this.getId()) as INewsFeed;\n\t\t\tnewsFeedData = (this.currentDefaultGroup?._group_to_article as INewsFeed[]) || [];\n\t\t\timgData = this.currentDefaultGroup?._group_to_image as Record<string, string>;\n\t\t\tif (imgData?.image_alt_text) {\n\t\t\t\tthis.oNewsGroupImage?.setAlt(imgData.image_alt_text);\n\t\t\t}\n\t\t}\n\t\tthis.oNewsGroupDialog?.setTitle(this.getTitle());\n\t\tthis.oNewsGroupImage?.setSrc(sImageUrl);\n\t\tthis.loadNewsDetails(newsFeedData);\n\t\tthis.oNewsList?.setBusy(false);\n\t}\n\n\t/**\n\t * Iterate through the provided news details data and loads the news items\n\t * @param {INewsFeed[]} aNewsDetails array of news items to be shown in the list\n\t * @returns {void}\n\t */\n\tprivate loadNewsDetails(aNewsDetails: INewsFeed[]): void {\n\t\tthis.clearExistingNewsItems();\n\t\tconst oNewsPanel = this.getParent() as NewsPanel;\n\t\tconst showDefault = oNewsPanel?.getNewsType() === NewsType.Default;\n\t\t(aNewsDetails || []).forEach((oItem: INewsFeed, i: number) => {\n\t\t\tconst newsItemInstance = new NewsItem(recycleId(`${this.getId()}--newsItem--${i}`), {\n\t\t\t\ttitle: showDefault ? oItem.title : (oItem.Title as INewsLink).value,\n\t\t\t\tsubTitle: showDefault ? oItem.subTitle : (oItem.Description as INewsLink).value,\n\t\t\t\tfooter: showDefault ? oItem.footer_text : \"\",\n\t\t\t\timageUrl: showDefault ? this.getImageUrl() : \"\",\n\t\t\t\tpriority: showDefault && oItem.priority == \"1\" ? Priority.Medium : Priority.None,\n\t\t\t\tpriorityText: showDefault && oItem.priority == \"1\" ? this._i18nBundle.getText(\"criticalNews\") : \"\"\n\t\t\t});\n\t\t\tthis.addAggregation(\"newsItems\", newsItemInstance);\n\n\t\t\tthis.oNewsList?.addItem(this.generateNewsListTemplate(oItem, i));\n\t\t});\n\t}\n\n\t/**\n\t * Clears the existing news items from the dialog list and aggregation\n\t * @returns {void}\n\t */\n\tprivate clearExistingNewsItems(): void {\n\t\t// Destroy list items\n\t\tthis.oNewsList?.destroyAggregation(\"items\", true);\n\t\tthis.destroyAggregation(\"newsItems\", true);\n\t}\n\t/**\n\t * Generates the custom list item templates for the news details\n\t * @param {INewsFeed} oItem news feed item for binding the template\n\t * @param {number} i index of the item\n\t * @returns {CustomListItem} the template of list item to be shown in the dialog\n\t */\n\tprivate generateNewsListTemplate(oItem: INewsFeed, i: number): CustomListItem {\n\t\tconst oNewsPanel = this.getParent() as NewsPanel;\n\t\tconst showDefault = oNewsPanel?.getNewsType() === NewsType.Default;\n\t\tif (!showDefault) {\n\t\t\tconst oFieldVBox = new VBox(recycleId(this.getId() + \"--idNewsFieldsBox\" + \"--\" + i)).addStyleClass(\"newsListItemContainer\");\n\t\t\t((oItem?.expandFields as INewsLink[]) || []).forEach((oField, idx) => {\n\t\t\t\toFieldVBox.addItem(\n\t\t\t\t\tnew HBox(recycleId(this.getId() + \"--idNewsFieldHBox--\" + idx), {\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tnew Label(recycleId(this.getId() + \"--idNewsFieldsLabel--\" + idx), {\n\t\t\t\t\t\t\t\ttext: oField.label + \":\",\n\t\t\t\t\t\t\t\ttooltip: oField.label\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew Text(recycleId(this.getId() + \"--idNewsFieldsValue--\" + idx), {\n\t\t\t\t\t\t\t\ttext: oField.value\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\")\n\t\t\t\t);\n\t\t\t});\n\t\t\toFieldVBox.setVisible(false);\n\t\t\tconst sInitialText = this._i18nBundle.getText(\"expand\") as string;\n\t\t\tconst oExpandButton = new Button(`${this.getId()}--expand--${i}`, {\n\t\t\t\ttext: sInitialText,\n\t\t\t\tpress: this.handleShowNewsFeedDetails.bind(this),\n\t\t\t\tcustomData: new CustomData({\n\t\t\t\t\tkey: \"index\",\n\t\t\t\t\tvalue: i\n\t\t\t\t})\n\t\t\t});\n\t\t\taddFESRSemanticStepName(oExpandButton, FESR_EVENTS.PRESS, sInitialText);\n\n\t\t\treturn new CustomListItem(recycleId(`${this.getId()}--idNewsDetailItem--${i}`), {\n\t\t\t\tcontent: [\n\t\t\t\t\tnew VBox(recycleId(`${this.getId()}--newsList--${i}`), {\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tnew Title(recycleId(`${this.getId()}--newsTitle--${i}`), {\n\t\t\t\t\t\t\t\ttext: (oItem.Title as INewsLink).value,\n\t\t\t\t\t\t\t\ttitleStyle: \"H6\"\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew Text(recycleId(`${this.getId()}--newsText--${i}`), {\n\t\t\t\t\t\t\t\ttext: (oItem.Description as INewsLink).value\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew HBox(recycleId(`${this.getId()}--newsHBox--${i}`), {\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\tnew Label(recycleId(`${this.getId()}--newsLabel--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: (oItem.Type as INewsLink).label + \":\",\n\t\t\t\t\t\t\t\t\t\ttooltip: (oItem.Type as INewsLink).label\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tnew Text(recycleId(`${this.getId()}--newsItemText--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: (oItem.Type as INewsLink).value\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\"),\n\t\t\t\t\t\t\tnew HBox(recycleId(`${this.getId()}--newsListItemBox--${i}`), {\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\tnew Label(recycleId(`${this.getId()}--newsListItemLabel--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: this._i18nBundle.getText(\"readMoreLink\") + \":\",\n\t\t\t\t\t\t\t\t\t\ttooltip: (oItem.Link as INewsParam).value.label + \"\"\n\t\t\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\t\t\tnew Link(recycleId(`${this.getId()}--newsListItemLink--${i}`), {\n\t\t\t\t\t\t\t\t\t\thref: (oItem.Link as INewsParam).value.value + \"\",\n\t\t\t\t\t\t\t\t\t\ttext: (oItem.Link as INewsParam).text,\n\t\t\t\t\t\t\t\t\t\ttarget: \"_blank\"\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\"),\n\t\t\t\t\t\t\toFieldVBox,\n\t\t\t\t\t\t\toExpandButton\n\t\t\t\t\t\t]\n\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\")\n\t\t\t\t]\n\t\t\t}).addStyleClass(\"newsListItem\");\n\t\t} else {\n\t\t\treturn new CustomListItem(recycleId(`${this.getId()}--idDefaultNewsDetailItem--${i}`), {\n\t\t\t\tcontent: [\n\t\t\t\t\tnew VBox(recycleId(`${this.getId()}--defaultNewsItemVbox--${i}`), {\n\t\t\t\t\t\trenderType: FlexRendertype.Bare,\n\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\tnew HBox(recycleId(`${this.getId()}--defaultNewsItemTitle--${i}`), {\n\t\t\t\t\t\t\t\talignItems: FlexAlignItems.Center,\n\t\t\t\t\t\t\t\trenderType: FlexRendertype.Bare,\n\t\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t\tnew Icon(recycleId(`${this.getId()}--newsPriorityIcon--${i}`), {\n\t\t\t\t\t\t\t\t\t\tsrc: \"sap-icon://high-priority\",\n\t\t\t\t\t\t\t\t\t\twidth: \"1rem\",\n\t\t\t\t\t\t\t\t\t\theight: \"1rem\",\n\t\t\t\t\t\t\t\t\t\tsize: \"1rem\",\n\t\t\t\t\t\t\t\t\t\tvisible: oItem.priority === \"1\",\n\t\t\t\t\t\t\t\t\t\ttooltip: this._i18nBundle.getText(\"criticalNewsIcon\") as string\n\t\t\t\t\t\t\t\t\t}).addStyleClass(\"newsCriticalIconColor\"),\n\t\t\t\t\t\t\t\t\tnew Title(recycleId(`${this.getId()}--newsTitle--${i}`), {\n\t\t\t\t\t\t\t\t\t\ttext: oItem.title,\n\t\t\t\t\t\t\t\t\t\ttitleStyle: TitleLevel.H5\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\"),\n\t\t\t\t\t\t\tnew Title(recycleId(`${this.getId()}--newsSubTitle--${i}`), {\n\t\t\t\t\t\t\t\ttext: oItem.subTitle,\n\t\t\t\t\t\t\t\tvisible: !!oItem.subTitle,\n\t\t\t\t\t\t\t\ttitleStyle: TitleLevel.H6\n\t\t\t\t\t\t\t}),\n\t\t\t\t\t\t\tnew HTML(recycleId(`${this.getId()}--defaultNewsItemHTML--${i}`), {\n\t\t\t\t\t\t\t\t// add an outer div to add CSS class for styling\n\t\t\t\t\t\t\t\tcontent: `<div class=\"newsGroupHtmlContent\">${oItem.description}</div>`\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t]\n\t\t\t\t\t}).addStyleClass(\"newsListItemContainer\")\n\t\t\t\t]\n\t\t\t}).addStyleClass(\"newsListItem\");\n\t\t}\n\t}\n\n\t/**\n\t * Creates the dialog which contains the news detail items\n\t * @returns {void}\n\t */\n\tprivate createNewsGroupDialog(): void {\n\t\t//create the dialog template without binding\n\t\tif (!this.oNewsGroupDialog) {\n\t\t\tthis.oNewsGroupImage = new Image(recycleId(`${this.getId()}-custNewsImage`), {\n\t\t\t\twidth: \"100%\",\n\t\t\t\theight: \"100%\",\n\t\t\t\tsrc: \"/resources/sap/cux/home/img/CustomNewsFeed/SupplyChain/3.jpg\"\n\t\t\t}).addStyleClass(\"newsGroupDialogImage\");\n\t\t\tthis.oNewsList = new List(recycleId(`${this.getId()}-custNewsList`)).addStyleClass(\"sapUiSmallMarginBottom\");\n\t\t\tthis.criticalStatus = new ObjectStatus(recycleId(`${this.getId()}-newsDialogCriticalStatus`), {\n\t\t\t\tvisible: false,\n\t\t\t\ttext: this._i18nBundle.getText(\"criticalNews\") as string,\n\t\t\t\tinverted: true,\n\t\t\t\ticon: \"sap-icon://high-priority\",\n\t\t\t\tstate: \"Warning\"\n\t\t\t}).addStyleClass(\"newsGroupDialogPriorityStatus\");\n\t\t\tlet oImagePriorityVBox = new VBox(recycleId(`${this.getId()}-newsDialogPriorityVBox`), {\n\t\t\t\trenderType: FlexRendertype.Bare,\n\t\t\t\theight: \"15rem\",\n\t\t\t\titems: [this.oNewsGroupImage, this.criticalStatus]\n\t\t\t}).addStyleClass(\"newsDialogPriorityVBox\");\n\t\t\tconst closeButton = new Button(recycleId(`${this.getId()}-custNewsFeedDetailsCloseBtn`), {\n\t\t\t\ttext: this._i18nBundle.getText(\"XBUT_CLOSE\"),\n\t\t\t\tpress: this.closeNewsGroupDialog.bind(this),\n\t\t\t\ttype: \"Transparent\"\n\t\t\t});\n\t\t\taddFESRSemanticStepName(closeButton, FESR_EVENTS.PRESS, \"newsDlgCloseBtn\");\n\t\t\tthis.oNewsGroupDialog = new Dialog(recycleId(`${this.getId()}-custNewsFeedDetailsDialog`), {\n\t\t\t\ttitle: this.getTitle() || \"\",\n\t\t\t\tcontentWidth: \"52rem\",\n\t\t\t\tcontentHeight: \"calc(100% - 2.5rem)\",\n\t\t\t\tcontent: [oImagePriorityVBox, this.oNewsList],\n\t\t\t\tbuttons: [closeButton]\n\t\t\t});\n\t\t\tthis.addDependent(this.oNewsGroupDialog);\n\t\t}\n\t}\n\n\t/**\n\t * Closes the news details dialog\n\t * @returns {void}\n\t */\n\tprivate closeNewsGroupDialog(): void {\n\t\t// Close the dialog first\n\t\tthis.oNewsGroupDialog?.close();\n\t}\n\n\t/**\n\t * Handles the click on the show more button of news detail items in news group dialog\n\t * @param {Event} oEvent\n\t * @returns {void}\n\t */\n\tprivate handleShowNewsFeedDetails(oEvent: Event): void {\n\t\tconst oButton = oEvent.getSource<Button>();\n\t\tconst listItemIndex = oButton.data(\"index\") as number;\n\t\tconst fieldsVBox = Element.getElementById(this.getId() + \"--idNewsFieldsBox\" + \"--\" + listItemIndex) as VBox;\n\t\tconst fieldExpanded: boolean = fieldsVBox.getVisible();\n\t\tfieldsVBox.setVisible(!fieldExpanded);\n\t\tconst sButtonShowText = fieldExpanded\n\t\t\t? (this._i18nBundle.getText(\"expand\") as string)\n\t\t\t: (this._i18nBundle.getText(\"collapse\") as string);\n\t\toButton.setText(sButtonShowText);\n\t\taddFESRSemanticStepName(oButton, FESR_EVENTS.PRESS, sButtonShowText);\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,2aAAAC,MAAA,EAAAC,cAAA,EAAAC,MAAA,EAAAC,IAAA,EAAAC,KAAA,EAAAC,KAAA,EAAAC,aAAA,EAAAC,IAAA,EAAAC,IAAA,EAAAC,YAAA,EAAAC,IAAA,EAAAC,KAAA,EAAAC,IAAA,EAAAC,UAAA,EAAAC,OAAA,EAAAC,IAAA,EAAAC,IAAA,EAAAC,mBAAA,EAAAC,cAAA,EAAAC,UAAA,EAAAC,UAAA,EAAAC,wBAAA,EAAAC,iBAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAAA,MAYSG,cAAc,GAAArB,aAAA;EAAA,MAAEsB,cAAc,GAAAtB,aAAA;EAAA,MAAEuB,QAAQ,GAAAvB,aAAA;EAAA,MAaxCwB,UAAU,GAAAb,mBAAA;EAAA,MACZc,YAAY,GAAAR,sBAAA,CAAAL,cAAA;EAAA,MACVc,QAAQ,GAAAb,UAAA;EAAA,MAGVc,QAAQ,GAAAV,sBAAA,CAAAH,UAAA;EAAA,MAENc,SAAS,GAAAb,wBAAA;EAAA,MACTc,uBAAuB,GAAAb,iBAAA;EAAA,MAAEc,WAAW,GAAAd,iBAAA;EAE7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAZA,MAaqBe,SAAS,GAASN,YAAY,CAAAO,MAAA;IAalCC,QAAQ,EAAoB;MAC3CC,OAAO,EAAE,cAAc;MACvBC,YAAY,EAAE;QACb;AACH;AACA;QACGC,SAAS,EAAE;UAAEC,IAAI,EAAE,uBAAuB;UAAEC,YAAY,EAAE,UAAU;UAAEC,QAAQ,EAAE;QAAK;MACtF;IACD,CAAC;IAZDC,WAAW,WAAAC,aAACC,EAAW,EAAEC,QAA6B,EAAE;MACvDC,uCAAA,OAAMF,EAAE,EAAEC,QAAQ;IACnB,CAAC;IAYD;AACD;AACA;AACA;AACA;AACA;IACQE,IAAI,WAAAC,MAAA,EAAS;MACnBC,gCAAA;MACA,IAAI,CAACC,MAAM,CAACC,WAAW,CAAC,IAAI,EAAE,IAAI,CAACC,aAAa,CAACC,IAAI,CAAC,IAAI,CAAC,CAAC;MAC5D,IAAI,CAACC,qBAAqB,CAAC,CAAC;IAC7B,CAAC;IAED;AACD;AACA;AACA;IACSF,aAAa,WAAAG,eAACC,MAAa,EAAQ;MAC1C,MAAMC,IAAI,GAAGD,MAAM,CAACE,SAAS,CAAC,CAAC;MAC/B,IAAI,CAAED,IAAI,CAAiBE,WAAW,CAAC,cAAc,CAAC,EAAE;QACvD;QACA;MACD;MACA,KAAK,IAAI,CAACC,mBAAmB,CAAC,CAAC;IAChC,CAAC;IAED;AACD;AACA;AACA;IACeA,mBAAmB,WAAAC,qBAAA;MAAA,IAAkB;QAAA,MAAAC,KAAA,GAClD,IAAI;QAAA,SAAAC,OAAA;UAkCJD,KAAA,CAAKE,gBAAgB,EAAEC,QAAQ,CAACH,KAAA,CAAKI,QAAQ,CAAC,CAAC,CAAC;UAChDJ,KAAA,CAAKK,eAAe,EAAEC,MAAM,CAACC,SAAS,CAAC;UACvCP,KAAA,CAAKQ,eAAe,CAACC,YAAY,CAAC;UAClCT,KAAA,CAAKU,SAAS,EAAEC,OAAO,CAAC,KAAK,CAAC;QAAC;QArC/BX,KAAA,CAAKU,SAAS,EAAEC,OAAO,CAAC,IAAI,CAAC;QAC7B,MAAMC,UAAU,GAAGZ,KAAA,CAAKa,SAAS,CAAC,CAAc;QAChD,MAAMC,cAAc,GAAGF,UAAU,CAACf,WAAW,CAAC,gBAAgB,CAAW;QACzE,MAAMkB,eAAe,GAAGD,cAAc,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAAC,CAAC,EAAEC,WAAW,CAAC,CAAC,KAAK,KAAK;QAChF,MAAMC,cAAc,GAAIP,UAAU,CAACC,SAAS,CAAC,CAAC,CAA2BO,kBAAkB,CAAC,CAAC;QAC7F,MAAMC,QAAQ,GAAIF,cAAc,CAACG,QAAQ,IAAIV,UAAU,CAACf,WAAW,CAAC,MAAM,CAAc;QACxF,MAAMU,SAAS,GAAGP,KAAA,CAAKuB,WAAW,CAAC,CAAC;QACpC,MAAMC,gBAAgB,GAAGZ,UAAU,CAACa,mBAAmB,CAAC,CAAC;QACzD,IAAIhB,YAAyB,GAAG,EAAE;QAClC,IAAIiB,OAAO;QACX,MAAMC,IAAI,GAAGf,UAAU,CAACgB,MAAM,CAAC,CAAC;QAChC,IAAIC,WAAW,GAAGR,QAAQ,KAAKvD,QAAQ,CAACgE,OAAO;QAAC,MAAAC,KAAA;UAAA,IAC5C,CAACF,WAAW;YACf,MAAMG,WAAsB,GAAG;cAC9BC,QAAQ,EAAErB,UAAU,CAACsB,gBAAgB,CAAC,CAAC;cACvCC,KAAK,EAAEnC,KAAA,CAAKI,QAAQ,CAAC,CAAC;cACtBgC,0BAA0B,EAAErB,eAAe,GAAG,KAAK,GAAG,CAACS,gBAAgB,GAAG,IAAI,GAAGA,gBAAgB,CAACY;YACnG,CAAC;YAEDpC,KAAA,CAAKE,gBAAgB,EAAEmC,IAAI,CAAC,CAAC;YAC7B,MAAMC,YAAY,GAAGnB,cAAc,CAACoB,SAAS,GAAGZ,IAAI,GAAGf,UAAU,CAAC4B,qBAAqB,CAACR,WAAW,CAAC;YAAC,OAAAS,OAAA,CAAAC,OAAA,CAE/E9B,UAAU,CAAC+B,eAAe,CAACL,YAAY,EAAEN,WAAW,CAACG,KAAK,CAAC,EAAAS,IAAA,WAAAC,qBAAA;cAAjFpC,YAAY,GAAAoC,qBAAqF;YAAC;UAAA;YAElG7C,KAAA,CAAK8C,cAAc,CAACC,UAAU,CAAC/C,KAAA,CAAKgD,WAAW,CAAC,CAAC,KAAKrF,QAAQ,CAACsF,MAAM,CAAC;YAEtEjD,KAAA,CAAKE,gBAAgB,EAAEmC,IAAI,CAAC,CAAC;YAC7BrC,KAAA,CAAKkD,mBAAmB,GAAGtC,UAAU,CAACuC,mBAAmB,CAACnD,KAAA,CAAKoD,KAAK,CAAC,CAAC,CAAc;YACpF3C,YAAY,GAAIT,KAAA,CAAKkD,mBAAmB,EAAEG,iBAAiB,IAAoB,EAAE;YACjF3B,OAAO,GAAG1B,KAAA,CAAKkD,mBAAmB,EAAEI,eAAyC;YAAC,IAC1E5B,OAAO,EAAE6B,cAAc;cAC1BvD,KAAA,CAAKK,eAAe,EAAEmD,MAAM,CAAC9B,OAAO,CAAC6B,cAAc,CAAC;YAAC;UAAA;QAAA;QAAA,OAAAd,OAAA,CAAAC,OAAA,CAAAX,KAAA,IAAAA,KAAA,CAAAa,IAAA,GAAAb,KAAA,CAAAa,IAAA,CAAA3C,MAAA,IAAAA,MAAA,CAAA8B,KAAA;MAOxD,CAAC,QAAA0B,CAAA;QAAA,OAAAhB,OAAA,CAAAiB,MAAA,CAAAD,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;IACSjD,eAAe,WAAAmD,iBAACC,YAAyB,EAAQ;MACxD,IAAI,CAACC,sBAAsB,CAAC,CAAC;MAC7B,MAAMjD,UAAU,GAAG,IAAI,CAACC,SAAS,CAAC,CAAc;MAChD,MAAMgB,WAAW,GAAGjB,UAAU,EAAEkD,WAAW,CAAC,CAAC,KAAKhG,QAAQ,CAACgE,OAAO;MAClE,CAAC8B,YAAY,IAAI,EAAE,EAAEG,OAAO,CAAC,CAACC,KAAgB,EAAEC,CAAS,KAAK;QAC7D,MAAMC,gBAAgB,GAAG,IAAInG,QAAQ,CAACC,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,eAAea,CAAC,EAAE,CAAC,EAAE;UACnF9B,KAAK,EAAEN,WAAW,GAAGmC,KAAK,CAAC7B,KAAK,GAAI6B,KAAK,CAACvH,KAAK,CAAe0H,KAAK;UACnEC,QAAQ,EAAEvC,WAAW,GAAGmC,KAAK,CAACI,QAAQ,GAAIJ,KAAK,CAACK,WAAW,CAAeF,KAAK;UAC/EG,MAAM,EAAEzC,WAAW,GAAGmC,KAAK,CAACO,WAAW,GAAG,EAAE;UAC5CC,QAAQ,EAAE3C,WAAW,GAAG,IAAI,CAACN,WAAW,CAAC,CAAC,GAAG,EAAE;UAC/CkD,QAAQ,EAAE5C,WAAW,IAAImC,KAAK,CAACS,QAAQ,IAAI,GAAG,GAAG9G,QAAQ,CAACsF,MAAM,GAAGtF,QAAQ,CAAC+G,IAAI;UAChFC,YAAY,EAAE9C,WAAW,IAAImC,KAAK,CAACS,QAAQ,IAAI,GAAG,GAAG,IAAI,CAACG,WAAW,CAACC,OAAO,CAAC,cAAc,CAAC,GAAG;QACjG,CAAC,CAAC;QACF,IAAI,CAACC,cAAc,CAAC,WAAW,EAAEZ,gBAAgB,CAAC;QAElD,IAAI,CAACxD,SAAS,EAAEqE,OAAO,CAAC,IAAI,CAACC,wBAAwB,CAAChB,KAAK,EAAEC,CAAC,CAAC,CAAC;MACjE,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;IACSJ,sBAAsB,WAAAoB,wBAAA,EAAS;MACtC;MACA,IAAI,CAACvE,SAAS,EAAEwE,kBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC;MACjD,IAAI,CAACA,kBAAkB,CAAC,WAAW,EAAE,IAAI,CAAC;IAC3C,CAAC;IACD;AACD;AACA;AACA;AACA;AACA;IACSF,wBAAwB,WAAAG,0BAACnB,KAAgB,EAAEC,CAAS,EAAkB;MAC7E,MAAMrD,UAAU,GAAG,IAAI,CAACC,SAAS,CAAC,CAAc;MAChD,MAAMgB,WAAW,GAAGjB,UAAU,EAAEkD,WAAW,CAAC,CAAC,KAAKhG,QAAQ,CAACgE,OAAO;MAClE,IAAI,CAACD,WAAW,EAAE;QACjB,MAAMuD,UAAU,GAAG,IAAI1I,IAAI,CAACsB,SAAS,CAAC,IAAI,CAACoF,KAAK,CAAC,CAAC,GAAG,mBAAmB,GAAG,IAAI,GAAGa,CAAC,CAAC,CAAC,CAACoB,aAAa,CAAC,uBAAuB,CAAC;QAC5H,CAAErB,KAAK,EAAEsB,YAAY,IAAoB,EAAE,EAAEvB,OAAO,CAAC,CAACwB,MAAM,EAAEC,GAAG,KAAK;UACrEJ,UAAU,CAACL,OAAO,CACjB,IAAI9I,IAAI,CAAC+B,SAAS,CAAC,IAAI,CAACoF,KAAK,CAAC,CAAC,GAAG,qBAAqB,GAAGoC,GAAG,CAAC,EAAE;YAC/DC,KAAK,EAAE,CACN,IAAItJ,KAAK,CAAC6B,SAAS,CAAC,IAAI,CAACoF,KAAK,CAAC,CAAC,GAAG,uBAAuB,GAAGoC,GAAG,CAAC,EAAE;cAClEE,IAAI,EAAEH,MAAM,CAACI,KAAK,GAAG,GAAG;cACxBC,OAAO,EAAEL,MAAM,CAACI;YACjB,CAAC,CAAC,EACF,IAAInJ,IAAI,CAACwB,SAAS,CAAC,IAAI,CAACoF,KAAK,CAAC,CAAC,GAAG,uBAAuB,GAAGoC,GAAG,CAAC,EAAE;cACjEE,IAAI,EAAEH,MAAM,CAACpB;YACd,CAAC,CAAC;UAEJ,CAAC,CAAC,CAACkB,aAAa,CAAC,uBAAuB,CACzC,CAAC;QACF,CAAC,CAAC;QACFD,UAAU,CAACrC,UAAU,CAAC,KAAK,CAAC;QAC5B,MAAM8C,YAAY,GAAG,IAAI,CAACjB,WAAW,CAACC,OAAO,CAAC,QAAQ,CAAW;QACjE,MAAMiB,aAAa,GAAG,IAAIhK,MAAM,CAAC,GAAG,IAAI,CAACsH,KAAK,CAAC,CAAC,aAAaa,CAAC,EAAE,EAAE;UACjEyB,IAAI,EAAEG,YAAY;UAClBE,KAAK,EAAE,IAAI,CAACC,yBAAyB,CAACzG,IAAI,CAAC,IAAI,CAAC;UAChD0G,UAAU,EAAE,IAAItJ,UAAU,CAAC;YAC1BuJ,GAAG,EAAE,OAAO;YACZ/B,KAAK,EAAEF;UACR,CAAC;QACF,CAAC,CAAC;QACFhG,uBAAuB,CAAC6H,aAAa,EAAE5H,WAAW,CAACiI,KAAK,EAAEN,YAAY,CAAC;QAEvE,OAAO,IAAI9J,cAAc,CAACiC,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,uBAAuBa,CAAC,EAAE,CAAC,EAAE;UAC/EmC,OAAO,EAAE,CACR,IAAI1J,IAAI,CAACsB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,eAAea,CAAC,EAAE,CAAC,EAAE;YACtDwB,KAAK,EAAE,CACN,IAAIhJ,KAAK,CAACuB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,gBAAgBa,CAAC,EAAE,CAAC,EAAE;cACxDyB,IAAI,EAAG1B,KAAK,CAACvH,KAAK,CAAe0H,KAAK;cACtCkC,UAAU,EAAE;YACb,CAAC,CAAC,EACF,IAAI7J,IAAI,CAACwB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,eAAea,CAAC,EAAE,CAAC,EAAE;cACtDyB,IAAI,EAAG1B,KAAK,CAACK,WAAW,CAAeF;YACxC,CAAC,CAAC,EACF,IAAIlI,IAAI,CAAC+B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,eAAea,CAAC,EAAE,CAAC,EAAE;cACtDwB,KAAK,EAAE,CACN,IAAItJ,KAAK,CAAC6B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,gBAAgBa,CAAC,EAAE,CAAC,EAAE;gBACxDyB,IAAI,EAAG1B,KAAK,CAACsC,IAAI,CAAeX,KAAK,GAAG,GAAG;gBAC3CC,OAAO,EAAG5B,KAAK,CAACsC,IAAI,CAAeX;cACpC,CAAC,CAAC,EACF,IAAInJ,IAAI,CAACwB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,mBAAmBa,CAAC,EAAE,CAAC,EAAE;gBAC1DyB,IAAI,EAAG1B,KAAK,CAACsC,IAAI,CAAenC;cACjC,CAAC,CAAC;YAEJ,CAAC,CAAC,CAACkB,aAAa,CAAC,uBAAuB,CAAC,EACzC,IAAIpJ,IAAI,CAAC+B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,sBAAsBa,CAAC,EAAE,CAAC,EAAE;cAC7DwB,KAAK,EAAE,CACN,IAAItJ,KAAK,CAAC6B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,wBAAwBa,CAAC,EAAE,CAAC,EAAE;gBAChEyB,IAAI,EAAE,IAAI,CAACd,WAAW,CAACC,OAAO,CAAC,cAAc,CAAC,GAAG,GAAG;gBACpDe,OAAO,EAAG5B,KAAK,CAAC3H,IAAI,CAAgB8H,KAAK,CAACwB,KAAK,GAAG;cACnD,CAAC,CAAC,EACF,IAAItJ,IAAI,CAAC2B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,uBAAuBa,CAAC,EAAE,CAAC,EAAE;gBAC9DsC,IAAI,EAAGvC,KAAK,CAAC3H,IAAI,CAAgB8H,KAAK,CAACA,KAAK,GAAG,EAAE;gBACjDuB,IAAI,EAAG1B,KAAK,CAAC3H,IAAI,CAAgBqJ,IAAI;gBACrCc,MAAM,EAAE;cACT,CAAC,CAAC;YAEJ,CAAC,CAAC,CAACnB,aAAa,CAAC,uBAAuB,CAAC,EACzCD,UAAU,EACVU,aAAa;UAEf,CAAC,CAAC,CAACT,aAAa,CAAC,uBAAuB,CAAC;QAE3C,CAAC,CAAC,CAACA,aAAa,CAAC,cAAc,CAAC;MACjC,CAAC,MAAM;QACN,OAAO,IAAItJ,cAAc,CAACiC,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,8BAA8Ba,CAAC,EAAE,CAAC,EAAE;UACtFmC,OAAO,EAAE,CACR,IAAI1J,IAAI,CAACsB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,0BAA0Ba,CAAC,EAAE,CAAC,EAAE;YACjEwC,UAAU,EAAE/I,cAAc,CAACgJ,IAAI;YAC/BjB,KAAK,EAAE,CACN,IAAIxJ,IAAI,CAAC+B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,2BAA2Ba,CAAC,EAAE,CAAC,EAAE;cAClE0C,UAAU,EAAElJ,cAAc,CAACmJ,MAAM;cACjCH,UAAU,EAAE/I,cAAc,CAACgJ,IAAI;cAC/BjB,KAAK,EAAE,CACN,IAAI3I,IAAI,CAACkB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,uBAAuBa,CAAC,EAAE,CAAC,EAAE;gBAC9D4C,GAAG,EAAE,0BAA0B;gBAC/BC,KAAK,EAAE,MAAM;gBACbC,MAAM,EAAE,MAAM;gBACdC,IAAI,EAAE,MAAM;gBACZC,OAAO,EAAEjD,KAAK,CAACS,QAAQ,KAAK,GAAG;gBAC/BmB,OAAO,EAAE,IAAI,CAAChB,WAAW,CAACC,OAAO,CAAC,kBAAkB;cACrD,CAAC,CAAC,CAACQ,aAAa,CAAC,uBAAuB,CAAC,EACzC,IAAI5I,KAAK,CAACuB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,gBAAgBa,CAAC,EAAE,CAAC,EAAE;gBACxDyB,IAAI,EAAE1B,KAAK,CAAC7B,KAAK;gBACjBkE,UAAU,EAAEzI,UAAU,CAACsJ;cACxB,CAAC,CAAC;YAEJ,CAAC,CAAC,CAAC7B,aAAa,CAAC,uBAAuB,CAAC,EACzC,IAAI5I,KAAK,CAACuB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,mBAAmBa,CAAC,EAAE,CAAC,EAAE;cAC3DyB,IAAI,EAAE1B,KAAK,CAACI,QAAQ;cACpB6C,OAAO,EAAE,CAAC,CAACjD,KAAK,CAACI,QAAQ;cACzBiC,UAAU,EAAEzI,UAAU,CAACuJ;YACxB,CAAC,CAAC,EACF,IAAItK,IAAI,CAACmB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,0BAA0Ba,CAAC,EAAE,CAAC,EAAE;cACjE;cACAmC,OAAO,EAAE,qCAAqCpC,KAAK,CAACoD,WAAW;YAChE,CAAC,CAAC;UAEJ,CAAC,CAAC,CAAC/B,aAAa,CAAC,uBAAuB,CAAC;QAE3C,CAAC,CAAC,CAACA,aAAa,CAAC,cAAc,CAAC;MACjC;IACD,CAAC;IAED;AACD;AACA;AACA;IACS7F,qBAAqB,WAAA6H,uBAAA,EAAS;MACrC;MACA,IAAI,CAAC,IAAI,CAACnH,gBAAgB,EAAE;QAC3B,IAAI,CAACG,eAAe,GAAG,IAAInE,KAAK,CAAC8B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,gBAAgB,CAAC,EAAE;UAC5E0D,KAAK,EAAE,MAAM;UACbC,MAAM,EAAE,MAAM;UACdF,GAAG,EAAE;QACN,CAAC,CAAC,CAACxB,aAAa,CAAC,sBAAsB,CAAC;QACxC,IAAI,CAAC3E,SAAS,GAAG,IAAIpE,IAAI,CAAC0B,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAACiC,aAAa,CAAC,wBAAwB,CAAC;QAC5G,IAAI,CAACvC,cAAc,GAAG,IAAIvG,YAAY,CAACyB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,2BAA2B,CAAC,EAAE;UAC7F6D,OAAO,EAAE,KAAK;UACdvB,IAAI,EAAE,IAAI,CAACd,WAAW,CAACC,OAAO,CAAC,cAAc,CAAW;UACxDyC,QAAQ,EAAE,IAAI;UACdC,IAAI,EAAE,0BAA0B;UAChCC,KAAK,EAAE;QACR,CAAC,CAAC,CAACnC,aAAa,CAAC,+BAA+B,CAAC;QACjD,IAAIoC,kBAAkB,GAAG,IAAI/K,IAAI,CAACsB,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,yBAAyB,CAAC,EAAE;UACtFqD,UAAU,EAAE/I,cAAc,CAACgJ,IAAI;UAC/BK,MAAM,EAAE,OAAO;UACftB,KAAK,EAAE,CAAC,IAAI,CAACpF,eAAe,EAAE,IAAI,CAACyC,cAAc;QAClD,CAAC,CAAC,CAACuC,aAAa,CAAC,wBAAwB,CAAC;QAC1C,MAAMqC,WAAW,GAAG,IAAI5L,MAAM,CAACkC,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,8BAA8B,CAAC,EAAE;UACxFsC,IAAI,EAAE,IAAI,CAACd,WAAW,CAACC,OAAO,CAAC,YAAY,CAAC;UAC5CkB,KAAK,EAAE,IAAI,CAAC4B,oBAAoB,CAACpI,IAAI,CAAC,IAAI,CAAC;UAC3Cd,IAAI,EAAE;QACP,CAAC,CAAC;QACFR,uBAAuB,CAACyJ,WAAW,EAAExJ,WAAW,CAACiI,KAAK,EAAE,iBAAiB,CAAC;QAC1E,IAAI,CAACjG,gBAAgB,GAAG,IAAIlE,MAAM,CAACgC,SAAS,CAAC,GAAG,IAAI,CAACoF,KAAK,CAAC,CAAC,4BAA4B,CAAC,EAAE;UAC1FjB,KAAK,EAAE,IAAI,CAAC/B,QAAQ,CAAC,CAAC,IAAI,EAAE;UAC5BwH,YAAY,EAAE,OAAO;UACrBC,aAAa,EAAE,qBAAqB;UACpCzB,OAAO,EAAE,CAACqB,kBAAkB,EAAE,IAAI,CAAC/G,SAAS,CAAC;UAC7CoH,OAAO,EAAE,CAACJ,WAAW;QACtB,CAAC,CAAC;QACF,IAAI,CAACK,YAAY,CAAC,IAAI,CAAC7H,gBAAgB,CAAC;MACzC;IACD,CAAC;IAED;AACD;AACA;AACA;IACSyH,oBAAoB,WAAAK,sBAAA,EAAS;MACpC;MACA,IAAI,CAAC9H,gBAAgB,EAAE+H,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED;AACD;AACA;AACA;AACA;IACSjC,yBAAyB,WAAAkC,2BAACxI,MAAa,EAAQ;MACtD,MAAMyI,OAAO,GAAGzI,MAAM,CAACE,SAAS,CAAS,CAAC;MAC1C,MAAMwI,aAAa,GAAGD,OAAO,CAACE,IAAI,CAAC,OAAO,CAAW;MACrD,MAAMC,UAAU,GAAG1L,OAAO,CAAC2L,cAAc,CAAC,IAAI,CAACnF,KAAK,CAAC,CAAC,GAAG,mBAAmB,GAAG,IAAI,GAAGgF,aAAa,CAAS;MAC5G,MAAMI,aAAsB,GAAGF,UAAU,CAACG,UAAU,CAAC,CAAC;MACtDH,UAAU,CAACvF,UAAU,CAAC,CAACyF,aAAa,CAAC;MACrC,MAAME,eAAe,GAAGF,aAAa,GACjC,IAAI,CAAC5D,WAAW,CAACC,OAAO,CAAC,QAAQ,CAAC,GAClC,IAAI,CAACD,WAAW,CAACC,OAAO,CAAC,UAAU,CAAY;MACnDsD,OAAO,CAACQ,OAAO,CAACD,eAAe,CAAC;MAChCzK,uBAAuB,CAACkK,OAAO,EAAEjK,WAAW,CAACiI,KAAK,EAAEuC,eAAe,CAAC;IACrE;EAAC;EAAA,OAxTmBvK,SAAS;AAAA","ignoreList":[]}
|
|
@@ -25,6 +25,8 @@ import HTML from "sap/ui/core/HTML";
|
|
|
25
25
|
import Icon from "sap/ui/core/Icon";
|
|
26
26
|
import { TitleLevel } from "sap/ui/core/library";
|
|
27
27
|
import BaseNewsItem from "./BaseNewsItem";
|
|
28
|
+
import { NewsType } from "./library";
|
|
29
|
+
import NewsAndPagesContainer from "./NewsAndPagesContainer";
|
|
28
30
|
import { $NewsGroupSettings } from "./NewsGroup";
|
|
29
31
|
import NewsItem from "./NewsItem";
|
|
30
32
|
import NewsPanel, { INewsFeed, INewsItem, INewsLink, INewsParam } from "./NewsPanel";
|
|
@@ -101,12 +103,14 @@ export default class NewsGroup extends BaseNewsItem {
|
|
|
101
103
|
const oNewsPanel = this.getParent() as NewsPanel;
|
|
102
104
|
const customFileName = oNewsPanel.getProperty("customFileName") as string;
|
|
103
105
|
const isCSVFileFormat = customFileName.split(".").pop()?.toLowerCase() === "csv";
|
|
104
|
-
|
|
106
|
+
const endUserChanges = (oNewsPanel.getParent() as NewsAndPagesContainer).getIsEndUserChange();
|
|
107
|
+
const feedType = (endUserChanges.newsType || oNewsPanel.getProperty("type")) as NewsType;
|
|
105
108
|
const sImageUrl = this.getImageUrl();
|
|
106
109
|
const persDataNewsFeed = oNewsPanel.getPersDataNewsFeed();
|
|
107
110
|
let newsFeedData: INewsFeed[] = [];
|
|
108
111
|
let imgData;
|
|
109
|
-
|
|
112
|
+
const sUrl = oNewsPanel.getUrl();
|
|
113
|
+
let showDefault = feedType === NewsType.Default;
|
|
110
114
|
if (!showDefault) {
|
|
111
115
|
const oNewsConfig: INewsItem = {
|
|
112
116
|
changeId: oNewsPanel.getCustomFeedKey(),
|
|
@@ -115,7 +119,7 @@ export default class NewsGroup extends BaseNewsItem {
|
|
|
115
119
|
};
|
|
116
120
|
|
|
117
121
|
this.oNewsGroupDialog?.open();
|
|
118
|
-
const sNewsFeedURL = oNewsPanel.getNewsFeedDetailsUrl(oNewsConfig);
|
|
122
|
+
const sNewsFeedURL = endUserChanges.isEndUser ? sUrl : oNewsPanel.getNewsFeedDetailsUrl(oNewsConfig);
|
|
119
123
|
|
|
120
124
|
newsFeedData = (await oNewsPanel.getAuthNewsFeed(sNewsFeedURL, oNewsConfig.title)) as INewsFeed[];
|
|
121
125
|
} else {
|
|
@@ -141,10 +145,9 @@ export default class NewsGroup extends BaseNewsItem {
|
|
|
141
145
|
* @returns {void}
|
|
142
146
|
*/
|
|
143
147
|
private loadNewsDetails(aNewsDetails: INewsFeed[]): void {
|
|
144
|
-
const oNewsPanel = this.getParent() as NewsPanel;
|
|
145
148
|
this.clearExistingNewsItems();
|
|
146
|
-
const
|
|
147
|
-
|
|
149
|
+
const oNewsPanel = this.getParent() as NewsPanel;
|
|
150
|
+
const showDefault = oNewsPanel?.getNewsType() === NewsType.Default;
|
|
148
151
|
(aNewsDetails || []).forEach((oItem: INewsFeed, i: number) => {
|
|
149
152
|
const newsItemInstance = new NewsItem(recycleId(`${this.getId()}--newsItem--${i}`), {
|
|
150
153
|
title: showDefault ? oItem.title : (oItem.Title as INewsLink).value,
|
|
@@ -177,8 +180,8 @@ export default class NewsGroup extends BaseNewsItem {
|
|
|
177
180
|
*/
|
|
178
181
|
private generateNewsListTemplate(oItem: INewsFeed, i: number): CustomListItem {
|
|
179
182
|
const oNewsPanel = this.getParent() as NewsPanel;
|
|
180
|
-
|
|
181
|
-
if (!
|
|
183
|
+
const showDefault = oNewsPanel?.getNewsType() === NewsType.Default;
|
|
184
|
+
if (!showDefault) {
|
|
182
185
|
const oFieldVBox = new VBox(recycleId(this.getId() + "--idNewsFieldsBox" + "--" + i)).addStyleClass("newsListItemContainer");
|
|
183
186
|
((oItem?.expandFields as INewsLink[]) || []).forEach((oField, idx) => {
|
|
184
187
|
oFieldVBox.addItem(
|
|
@@ -3,6 +3,7 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
3
3
|
import type { $BaseNewsPanelSettings } from "sap/cux/home/BaseNewsPanel";
|
|
4
4
|
import BaseNewsPanel from "sap/cux/home/BaseNewsPanel";
|
|
5
5
|
import NewsGroup from "sap/cux/home/NewsGroup";
|
|
6
|
+
import { NewsType } from "sap/cux/home/library";
|
|
6
7
|
interface IBindingInfo {
|
|
7
8
|
path: string;
|
|
8
9
|
length: number;
|
|
@@ -88,7 +89,13 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
88
89
|
};
|
|
89
90
|
}
|
|
90
91
|
type FileFormat = "xlsx" | "csv";
|
|
91
|
-
const BASE_URL = "/sap/opu/odata4/ui2/insights_srv/srvd/ui2/", NEWS_FEED_READ_API: string, NEWS_FEED_TRANSLATION_API: string, DEFAULT_FEED_COUNT = 7,
|
|
92
|
+
const BASE_URL = "/sap/opu/odata4/ui2/insights_srv/srvd/ui2/", NEWS_FEED_READ_API: string, NEWS_FEED_TRANSLATION_API: string, DEFAULT_FEED_COUNT = 7, NEWS_HEIGHT: {
|
|
93
|
+
LargeDesktop: string;
|
|
94
|
+
XLargeDesktop: string;
|
|
95
|
+
Desktop: string;
|
|
96
|
+
Tablet: string;
|
|
97
|
+
Mobile: string;
|
|
98
|
+
}, fnImagePlaceholder: (sPath: string, N: number) => string[];
|
|
92
99
|
const CUSTOM_NEWS_FEED: {
|
|
93
100
|
TITLE: string;
|
|
94
101
|
LINK: string;
|
|
@@ -130,6 +137,8 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
130
137
|
private _defaultNewsPromise;
|
|
131
138
|
private fetchedFeedUrl;
|
|
132
139
|
private defaultUrl;
|
|
140
|
+
private _noUpdatesNewsFeed;
|
|
141
|
+
private _endUserResponse;
|
|
133
142
|
static readonly metadata: MetadataOptions;
|
|
134
143
|
constructor(idOrSettings?: string | $BaseNewsPanelSettings);
|
|
135
144
|
constructor(id?: string, settings?: $BaseNewsPanelSettings);
|
|
@@ -153,7 +162,7 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
153
162
|
* @param {boolean} [isKeyUserChange=false] - Indicates if the change is made by a key user.
|
|
154
163
|
* @private
|
|
155
164
|
*/
|
|
156
|
-
setDefaultNews(
|
|
165
|
+
setDefaultNews(): Promise<void>;
|
|
157
166
|
/**
|
|
158
167
|
* Set the visibility of the manage news item in the menu.
|
|
159
168
|
* @param visible - A boolean indicating whether the manage news item should be visible or not.
|
|
@@ -172,6 +181,12 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
172
181
|
* @returns {void}
|
|
173
182
|
*/
|
|
174
183
|
private setPressEnabledForNewsGroup;
|
|
184
|
+
/**
|
|
185
|
+
*
|
|
186
|
+
* @param description - The description from which inline styles need to be removed.
|
|
187
|
+
* @returns {string} The description with inline styles removed.
|
|
188
|
+
*/
|
|
189
|
+
private removeInlineStylesFromDescription;
|
|
175
190
|
/**
|
|
176
191
|
* Retrieves the current news group data based on the provided id.
|
|
177
192
|
*
|
|
@@ -242,6 +257,7 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
242
257
|
* @returns {Promise} A promise that resolves to the extracted image URL.
|
|
243
258
|
*/
|
|
244
259
|
private extractImage;
|
|
260
|
+
getNewsType(): NewsType;
|
|
245
261
|
/**
|
|
246
262
|
* Checks if the custom file format is CSV based on the custom file name.
|
|
247
263
|
*
|
|
@@ -259,6 +275,13 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
259
275
|
* @private
|
|
260
276
|
*/
|
|
261
277
|
private setPersDataNewsFeed;
|
|
278
|
+
/**
|
|
279
|
+
* Sets the news feed type (Default or Custom) based on the provided data structure.
|
|
280
|
+
*
|
|
281
|
+
* @param {INewsFeed[]} data - News feed data from the URL.
|
|
282
|
+
* @returns {Promise<void>} Resolves after setting the appropriate feed.
|
|
283
|
+
*/
|
|
284
|
+
setNewsFeedFromUrl(data: INewsFeed[]): Promise<void>;
|
|
262
285
|
/**
|
|
263
286
|
* This method retrieves the count and feeds of the custom news feed asynchronously.
|
|
264
287
|
* If the count is not zero, it loads the custom news feed data and returns the feeds.
|
|
@@ -317,10 +340,16 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
317
340
|
private getDefaultNewsResponse;
|
|
318
341
|
/**
|
|
319
342
|
*
|
|
320
|
-
* @returns {ODataResponse} The placeholder news group with enriched titles and descriptions
|
|
343
|
+
* @returns {ODataResponse} The no update placeholder news group with enriched titles and descriptions to show when there are no updates
|
|
344
|
+
* @private
|
|
345
|
+
*/
|
|
346
|
+
private getNoUpdatesPlaceholder;
|
|
347
|
+
/**
|
|
348
|
+
* Returns if its a no updates new feed group or not
|
|
349
|
+
* This indicates whether the news feed is a static no updates placeholder news feed.
|
|
321
350
|
* @private
|
|
322
351
|
*/
|
|
323
|
-
|
|
352
|
+
isNoUpdatesNewsFeed(): boolean;
|
|
324
353
|
/**
|
|
325
354
|
* Fetches the default news data from the server.
|
|
326
355
|
* @returns {Promise<ODataResponse>} A promise that resolves to the fetched news data
|
|
@@ -337,7 +366,7 @@ declare module "sap/cux/home/NewsPanel" {
|
|
|
337
366
|
* @returns {Promise<INewsFeed[]>} A promise that resolves to an array of custom news feed items.
|
|
338
367
|
* @private
|
|
339
368
|
*/
|
|
340
|
-
|
|
369
|
+
getCustomOrDefaultNewsFeed(sFeedId: string, showAllPreparationRequired: boolean): Promise<INewsFeed[]>;
|
|
341
370
|
/**
|
|
342
371
|
* Retrieves custom news feed items identified by the provided feed ID and settings.
|
|
343
372
|
* It processes the response data and returns an array of custom news feed items.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsPanel.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,wBAAwB,CAAC;IAYxC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;IAQ3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;IACzE,OAAO,aAAa,MAAM,4BAA4B,CAAC;IAGvD,OAAO,SAAS,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"NewsPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/NewsPanel.ts"],"names":[],"mappings":"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"}
|