@sapui5/sap.fe.templates 1.100.0 → 1.102.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 +4 -5
- package/src/sap/fe/templates/.library +1 -2
- package/src/sap/fe/templates/AnalyticalListPage/Component.js +24 -12
- package/src/sap/fe/templates/AnalyticalListPage/Component.ts +6 -0
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.js +30 -32
- package/src/sap/fe/templates/AnalyticalListPage/chart/FEChartDelegate.ts +25 -0
- package/src/sap/fe/templates/Feedback.js +80 -0
- package/src/sap/fe/templates/Feedback.ts +67 -0
- package/src/sap/fe/templates/ListComponent.js +156 -118
- package/src/sap/fe/templates/ListComponent.ts +105 -0
- package/src/sap/fe/templates/ListReport/Component.js +82 -53
- package/src/sap/fe/templates/ListReport/Component.ts +39 -0
- package/src/sap/fe/templates/ListReport/ExtensionAPI.js +126 -112
- package/src/sap/fe/templates/ListReport/ExtensionAPI.ts +106 -0
- package/src/sap/fe/templates/ListReport/ListReport.view.xml +106 -58
- package/src/sap/fe/templates/ListReport/ListReportController.controller.js +1196 -1081
- package/src/sap/fe/templates/ListReport/ListReportController.controller.ts +1088 -0
- package/src/sap/fe/templates/ListReport/ListReportTemplating.js +45 -0
- package/src/sap/fe/templates/ListReport/ListReportTemplating.ts +30 -0
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.js +54 -53
- package/src/sap/fe/templates/ListReport/overrides/IntentBasedNavigation.ts +55 -0
- package/src/sap/fe/templates/ListReport/overrides/Share.js +137 -137
- package/src/sap/fe/templates/ListReport/overrides/Share.ts +135 -0
- package/src/sap/fe/templates/ListReport/overrides/ViewState.js +451 -428
- package/src/sap/fe/templates/ListReport/overrides/ViewState.ts +419 -0
- package/src/sap/fe/templates/ListReport/view/fragments/CollectionVisualization.fragment.xml +25 -25
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.js +72 -0
- package/src/sap/fe/templates/ListReport/view/fragments/MultipleMode.fragment.ts +62 -0
- package/src/sap/fe/templates/ListReport/view/fragments/{MultipleMode.fragment.xml → MultipleModeOld.fragment.xml} +24 -23
- package/src/sap/fe/templates/ObjectPage/Component.js +169 -138
- package/src/sap/fe/templates/ObjectPage/Component.ts +131 -0
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.js +140 -142
- package/src/sap/fe/templates/ObjectPage/ExtensionAPI.ts +116 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPage.view.xml +162 -22
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.js +1534 -1447
- package/src/sap/fe/templates/ObjectPage/ObjectPageController.controller.ts +1454 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.js +872 -0
- package/src/sap/fe/templates/ObjectPage/ObjectPageTemplating.ts +837 -0
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.js +136 -101
- package/src/sap/fe/templates/ObjectPage/controls/StashableHBox.ts +84 -0
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.js +24 -21
- package/src/sap/fe/templates/ObjectPage/controls/StashableVBox.ts +10 -0
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.js +98 -53
- package/src/sap/fe/templates/ObjectPage/controls/SubSectionBlock.ts +50 -0
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.js +20 -19
- package/src/sap/fe/templates/ObjectPage/designtime/FlexBox.designtime.ts +15 -0
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.js +50 -47
- package/src/sap/fe/templates/ObjectPage/designtime/StashableHBox.designtime.ts +47 -0
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.js +34 -34
- package/src/sap/fe/templates/ObjectPage/designtime/StashableVBox.designtime.ts +34 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.js +15 -15
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableHBox.flexibility.ts +13 -0
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.js +11 -11
- package/src/sap/fe/templates/ObjectPage/flexibility/StashableVBox.flexibility.ts +7 -0
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.js +55 -52
- package/src/sap/fe/templates/ObjectPage/overrides/IntentBasedNavigation.ts +57 -0
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.js +15 -17
- package/src/sap/fe/templates/ObjectPage/overrides/InternalRouting.ts +13 -0
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.js +13 -17
- package/src/sap/fe/templates/ObjectPage/overrides/MessageHandler.ts +14 -0
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator.js +23 -21
- package/src/sap/fe/templates/ObjectPage/overrides/Paginator.ts +21 -0
- package/src/sap/fe/templates/ObjectPage/overrides/Share.js +310 -317
- package/src/sap/fe/templates/ObjectPage/overrides/Share.ts +316 -0
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.js +66 -57
- package/src/sap/fe/templates/ObjectPage/overrides/ViewState.ts +65 -0
- package/src/sap/fe/templates/ObjectPage/view/fragments/Actions.fragment.xml +26 -33
- package/src/sap/fe/templates/ObjectPage/view/fragments/CollaborationDraft.fragment.xml +11 -10
- package/src/sap/fe/templates/ObjectPage/view/fragments/EditableHeaderFacet.fragment.xml +15 -15
- package/src/sap/fe/templates/ObjectPage/view/fragments/FooterContent.fragment.xml +31 -27
- package/src/sap/fe/templates/ObjectPage/view/fragments/FormActionButtons.fragment.xml +15 -16
- package/src/sap/fe/templates/ObjectPage/view/fragments/FormActions.fragment.xml +1 -5
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderDataPoint.fragment.xml +1 -2
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderDataPointTitle.fragment.xml +1 -3
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeaderFacet.fragment.xml +3 -4
- package/src/sap/fe/templates/ObjectPage/view/fragments/Heading.fragment.xml +16 -17
- package/src/sap/fe/templates/ObjectPage/view/fragments/HeadingTitle.fragment.xml +3 -3
- package/src/sap/fe/templates/ObjectPage/view/fragments/ObjectPageHeaderForm.fragment.xml +3 -3
- package/src/sap/fe/templates/ObjectPage/view/fragments/RelatedApps.fragment.xml +7 -4
- package/src/sap/fe/templates/ObjectPage/view/fragments/Section.fragment.xml +71 -6
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContent.fragment.xml +114 -94
- package/src/sap/fe/templates/ObjectPage/view/fragments/SectionContentLazyLoader.fragment.xml +127 -107
- package/src/sap/fe/templates/ObjectPage/view/fragments/SwitchDraftAndActiveObjectPopOver.fragment.xml +27 -0
- package/src/sap/fe/templates/RootContainer/controller/Fcl.controller.js +899 -817
- package/src/sap/fe/templates/RootContainer/controller/Fcl.controller.ts +833 -0
- package/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.js +205 -189
- package/src/sap/fe/templates/RootContainer/controller/NavContainer.controller.ts +178 -0
- package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.js +484 -459
- package/src/sap/fe/templates/RootContainer/controller/RootContainerBaseController.ts +438 -0
- package/src/sap/fe/templates/RootContainer/overrides/EditFlow.js +16 -14
- package/src/sap/fe/templates/RootContainer/overrides/EditFlow.ts +20 -0
- package/src/sap/fe/templates/TableScroller.js +45 -53
- package/src/sap/fe/templates/TableScroller.ts +48 -0
- package/src/sap/fe/templates/controls/Chart.fragment.xml +18 -17
- package/src/sap/fe/templates/controls/MacroChart.fragment.xml +23 -0
- package/src/sap/fe/templates/controls/Table.fragment.xml +3 -4
- package/src/sap/fe/templates/library.js +49 -63
- package/src/sap/fe/templates/library.ts +57 -0
- package/src/sap/fe/templates/messagebundle.properties +19 -7
- package/src/sap/fe/templates/messagebundle_ar.properties +12 -4
- package/src/sap/fe/templates/messagebundle_bg.properties +12 -4
- package/src/sap/fe/templates/messagebundle_ca.properties +12 -4
- package/src/sap/fe/templates/messagebundle_cs.properties +12 -4
- package/src/sap/fe/templates/messagebundle_cy.properties +12 -4
- package/src/sap/fe/templates/messagebundle_da.properties +12 -4
- package/src/sap/fe/templates/messagebundle_de.properties +12 -4
- package/src/sap/fe/templates/messagebundle_el.properties +12 -4
- package/src/sap/fe/templates/messagebundle_en.properties +12 -4
- package/src/sap/fe/templates/messagebundle_en_GB.properties +12 -4
- package/src/sap/fe/templates/messagebundle_en_US_sappsd.properties +13 -5
- package/src/sap/fe/templates/messagebundle_en_US_saprigi.properties +13 -5
- package/src/sap/fe/templates/messagebundle_en_US_saptrc.properties +13 -5
- package/src/sap/fe/templates/messagebundle_es.properties +12 -4
- package/src/sap/fe/templates/messagebundle_es_MX.properties +12 -4
- package/src/sap/fe/templates/messagebundle_et.properties +12 -4
- package/src/sap/fe/templates/messagebundle_fi.properties +12 -4
- package/src/sap/fe/templates/messagebundle_fr.properties +12 -4
- package/src/sap/fe/templates/messagebundle_fr_CA.properties +12 -4
- package/src/sap/fe/templates/messagebundle_hi.properties +12 -4
- package/src/sap/fe/templates/messagebundle_hr.properties +12 -4
- package/src/sap/fe/templates/messagebundle_hu.properties +12 -4
- package/src/sap/fe/templates/messagebundle_id.properties +12 -4
- package/src/sap/fe/templates/messagebundle_it.properties +12 -4
- package/src/sap/fe/templates/messagebundle_iw.properties +12 -4
- package/src/sap/fe/templates/messagebundle_ja.properties +12 -4
- package/src/sap/fe/templates/messagebundle_kk.properties +12 -4
- package/src/sap/fe/templates/messagebundle_ko.properties +12 -4
- package/src/sap/fe/templates/messagebundle_lt.properties +12 -4
- package/src/sap/fe/templates/messagebundle_lv.properties +12 -4
- package/src/sap/fe/templates/messagebundle_ms.properties +12 -4
- package/src/sap/fe/templates/messagebundle_nl.properties +12 -4
- package/src/sap/fe/templates/messagebundle_no.properties +12 -4
- package/src/sap/fe/templates/messagebundle_pl.properties +12 -4
- package/src/sap/fe/templates/messagebundle_pt.properties +13 -5
- package/src/sap/fe/templates/messagebundle_pt_PT.properties +12 -4
- package/src/sap/fe/templates/messagebundle_ro.properties +12 -4
- package/src/sap/fe/templates/messagebundle_ru.properties +12 -4
- package/src/sap/fe/templates/messagebundle_sh.properties +12 -4
- package/src/sap/fe/templates/messagebundle_sk.properties +12 -4
- package/src/sap/fe/templates/messagebundle_sl.properties +12 -4
- package/src/sap/fe/templates/messagebundle_sv.properties +12 -4
- package/src/sap/fe/templates/messagebundle_th.properties +12 -4
- package/src/sap/fe/templates/messagebundle_tr.properties +12 -4
- package/src/sap/fe/templates/messagebundle_uk.properties +12 -4
- package/src/sap/fe/templates/messagebundle_vi.properties +12 -4
- package/src/sap/fe/templates/messagebundle_zh_CN.properties +12 -4
- package/src/sap/fe/templates/messagebundle_zh_TW.properties +12 -4
- package/src/sap/fe/templates/ObjectPage/AnnotationHelper.js +0 -518
- package/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating.js +0 -120
- package/src/sap/fe/templates/ObjectPage/templating/ObjectPageTemplating.ts +0 -138
|
@@ -1,145 +1,143 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
* (c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
5
4
|
*/
|
|
6
|
-
sap.ui.define(["sap/fe/core/
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
return extensionAPI;
|
|
145
|
-
});
|
|
5
|
+
sap.ui.define(["sap/fe/core/CommonUtils", "sap/fe/core/converters/helpers/ID", "sap/fe/core/ExtensionAPI", "sap/fe/core/helpers/ClassSupport"], function (CommonUtils, ID, ExtensionAPI, ClassSupport) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
9
|
+
var SideContentLayoutID = ID.SideContentLayoutID;
|
|
10
|
+
|
|
11
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
12
|
+
|
|
13
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
14
|
+
|
|
15
|
+
defineUI5Class("sap.fe.templates.ObjectPage.ExtensionAPI");
|
|
16
|
+
|
|
17
|
+
var ObjectPageExtensionAPI = /*#__PURE__*/function (_ExtensionAPI) {
|
|
18
|
+
_inheritsLoose(ObjectPageExtensionAPI, _ExtensionAPI);
|
|
19
|
+
|
|
20
|
+
function ObjectPageExtensionAPI() {
|
|
21
|
+
return _ExtensionAPI.apply(this, arguments) || this;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
var _proto = ObjectPageExtensionAPI.prototype;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Refreshes either the whole object page or only parts of it.
|
|
28
|
+
*
|
|
29
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#refresh
|
|
30
|
+
* @param {string | string[]} [vPath] Path or array of paths referring to entities or properties to be refreshed.
|
|
31
|
+
* If omitted, the whole object page is refreshed. The path "" refreshes the entity assigned to the object page
|
|
32
|
+
* without navigations
|
|
33
|
+
* @returns {Promise} Resolved once the data is refreshed or rejected if the request failed
|
|
34
|
+
*
|
|
35
|
+
* @public
|
|
36
|
+
*/
|
|
37
|
+
_proto.refresh = function refresh(vPath) {
|
|
38
|
+
var oBindingContext = this._view.getBindingContext(),
|
|
39
|
+
oAppComponent = CommonUtils.getAppComponent(this._view),
|
|
40
|
+
oSideEffectsService = oAppComponent.getSideEffectsService(),
|
|
41
|
+
oMetaModel = oBindingContext.getModel().getMetaModel(),
|
|
42
|
+
oSideEffects = {
|
|
43
|
+
TargetProperties: [],
|
|
44
|
+
TargetEntities: []
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
var aPaths, sPath, sBaseEntitySet, sKind;
|
|
48
|
+
|
|
49
|
+
if (vPath === undefined || vPath === null) {
|
|
50
|
+
// we just add an empty path which should refresh the page with all dependent bindings
|
|
51
|
+
oSideEffects.TargetEntities.push({
|
|
52
|
+
$NavigationPropertyPath: ""
|
|
53
|
+
});
|
|
54
|
+
} else {
|
|
55
|
+
aPaths = Array.isArray(vPath) ? vPath : [vPath];
|
|
56
|
+
sBaseEntitySet = this._controller.getOwnerComponent().getEntitySet();
|
|
57
|
+
|
|
58
|
+
for (var i = 0; i < aPaths.length; i++) {
|
|
59
|
+
sPath = aPaths[i];
|
|
60
|
+
|
|
61
|
+
if (sPath === "") {
|
|
62
|
+
// an empty path shall refresh the entity without dependencies which means * for the model
|
|
63
|
+
oSideEffects.TargetProperties.push({
|
|
64
|
+
$PropertyPath: "*"
|
|
65
|
+
});
|
|
66
|
+
} else {
|
|
67
|
+
sKind = oMetaModel.getObject("/" + sBaseEntitySet + "/" + sPath + "/$kind");
|
|
68
|
+
|
|
69
|
+
if (sKind === "NavigationProperty") {
|
|
70
|
+
oSideEffects.TargetEntities.push({
|
|
71
|
+
$NavigationPropertyPath: sPath
|
|
72
|
+
});
|
|
73
|
+
} else if (sKind) {
|
|
74
|
+
oSideEffects.TargetProperties.push({
|
|
75
|
+
$PropertyPath: sPath
|
|
76
|
+
});
|
|
77
|
+
} else {
|
|
78
|
+
return Promise.reject(sPath + " is not a valid path to be refreshed");
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return oSideEffectsService.requestSideEffects(oSideEffects.TargetEntities.concat(oSideEffects.TargetProperties), oBindingContext);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Gets the list entries currently selected for the table.
|
|
88
|
+
*
|
|
89
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#getSelectedContexts
|
|
90
|
+
* @param {string} sTableId The ID identifying the table the selected context is requested for
|
|
91
|
+
* @returns {sap.ui.model.odata.v4.Context[]} Array containing the selected contexts
|
|
92
|
+
*
|
|
93
|
+
* @public
|
|
94
|
+
*/
|
|
95
|
+
;
|
|
96
|
+
|
|
97
|
+
_proto.getSelectedContexts = function getSelectedContexts(sTableId) {
|
|
98
|
+
var oTable = this._view.byId(sTableId);
|
|
99
|
+
|
|
100
|
+
if (oTable && oTable.isA("sap.fe.macros.TableAPI")) {
|
|
101
|
+
oTable = oTable.getContent();
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return oTable && oTable.isA("sap.ui.mdc.Table") && oTable.getSelectedContexts() || [];
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Displays or hides the side content of an object page block.
|
|
108
|
+
*
|
|
109
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#showSideContent
|
|
110
|
+
* @param {string} sSubSectionKey Key of the side content fragment as defined in the manifest.json
|
|
111
|
+
* @param {boolean} [bShow] Optional Boolean flag to show or hide the side content
|
|
112
|
+
*
|
|
113
|
+
* @public
|
|
114
|
+
*/
|
|
115
|
+
;
|
|
116
|
+
|
|
117
|
+
_proto.showSideContent = function showSideContent(sSubSectionKey, bShow) {
|
|
118
|
+
var sBlockID = SideContentLayoutID(sSubSectionKey),
|
|
119
|
+
oBlock = this._view.byId(sBlockID),
|
|
120
|
+
bBlockState = bShow === undefined ? !oBlock.getShowSideContent() : bShow;
|
|
121
|
+
|
|
122
|
+
oBlock.setShowSideContent(bBlockState, false);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Gets the bound context of the current object page.
|
|
126
|
+
*
|
|
127
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#getBindingContext
|
|
128
|
+
* @returns {sap.ui.model.odata.v4.Context} Context bound to the object page
|
|
129
|
+
*
|
|
130
|
+
* @public
|
|
131
|
+
*/
|
|
132
|
+
;
|
|
133
|
+
|
|
134
|
+
_proto.getBindingContext = function getBindingContext() {
|
|
135
|
+
return this._view.getBindingContext();
|
|
136
|
+
};
|
|
137
|
+
|
|
138
|
+
return ObjectPageExtensionAPI;
|
|
139
|
+
}(ExtensionAPI);
|
|
140
|
+
|
|
141
|
+
return ObjectPageExtensionAPI;
|
|
142
|
+
}, false);
|
|
143
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkV4dGVuc2lvbkFQSS50cyJdLCJuYW1lcyI6WyJkZWZpbmVVSTVDbGFzcyIsIk9iamVjdFBhZ2VFeHRlbnNpb25BUEkiLCJyZWZyZXNoIiwidlBhdGgiLCJvQmluZGluZ0NvbnRleHQiLCJfdmlldyIsImdldEJpbmRpbmdDb250ZXh0Iiwib0FwcENvbXBvbmVudCIsIkNvbW1vblV0aWxzIiwiZ2V0QXBwQ29tcG9uZW50Iiwib1NpZGVFZmZlY3RzU2VydmljZSIsImdldFNpZGVFZmZlY3RzU2VydmljZSIsIm9NZXRhTW9kZWwiLCJnZXRNb2RlbCIsImdldE1ldGFNb2RlbCIsIm9TaWRlRWZmZWN0cyIsIlRhcmdldFByb3BlcnRpZXMiLCJUYXJnZXRFbnRpdGllcyIsImFQYXRocyIsInNQYXRoIiwic0Jhc2VFbnRpdHlTZXQiLCJzS2luZCIsInVuZGVmaW5lZCIsInB1c2giLCIkTmF2aWdhdGlvblByb3BlcnR5UGF0aCIsIkFycmF5IiwiaXNBcnJheSIsIl9jb250cm9sbGVyIiwiZ2V0T3duZXJDb21wb25lbnQiLCJnZXRFbnRpdHlTZXQiLCJpIiwibGVuZ3RoIiwiJFByb3BlcnR5UGF0aCIsImdldE9iamVjdCIsIlByb21pc2UiLCJyZWplY3QiLCJyZXF1ZXN0U2lkZUVmZmVjdHMiLCJjb25jYXQiLCJnZXRTZWxlY3RlZENvbnRleHRzIiwic1RhYmxlSWQiLCJvVGFibGUiLCJieUlkIiwiaXNBIiwiZ2V0Q29udGVudCIsInNob3dTaWRlQ29udGVudCIsInNTdWJTZWN0aW9uS2V5IiwiYlNob3ciLCJzQmxvY2tJRCIsIlNpZGVDb250ZW50TGF5b3V0SUQiLCJvQmxvY2siLCJiQmxvY2tTdGF0ZSIsImdldFNob3dTaWRlQ29udGVudCIsInNldFNob3dTaWRlQ29udGVudCIsIkV4dGVuc2lvbkFQSSJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7QUFNQUEsRUFBQUEsY0FBYyxDQUFDLDBDQUFELENBQWQ7O01BRU1DLHNCOzs7Ozs7Ozs7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O0FBQ25ERixRQUFBQSxNQUFNLEdBQUlBLE1BQUQsQ0FBcUNHLFVBQXJDLEVBQVQ7QUFDQTs7QUFDRCxhQUFRSCxNQUFNLElBQUlBLE1BQU0sQ0FBQ0UsR0FBUCxDQUFXLGtCQUFYLENBQVYsSUFBNkNGLE1BQUQsQ0FBZ0JGLG1CQUFoQixFQUE3QyxJQUF1RixFQUE5RjtBQUNBO0FBRUQ7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7V0FDQ00sZSxHQUFBLHlCQUFnQkMsY0FBaEIsRUFBd0NDLEtBQXhDLEVBQW9FO0FBQ25FLFVBQU1DLFFBQVEsR0FBR0MsbUJBQW1CLENBQUNILGNBQUQsQ0FBcEM7QUFBQSxVQUNDSSxNQUFNLEdBQUcsS0FBSzVDLEtBQUwsQ0FBV29DLElBQVgsQ0FBZ0JNLFFBQWhCLENBRFY7QUFBQSxVQUVDRyxXQUFXLEdBQUdKLEtBQUssS0FBS3hCLFNBQVYsR0FBc0IsQ0FBRTJCLE1BQUQsQ0FBK0JFLGtCQUEvQixFQUF2QixHQUE2RUwsS0FGNUY7O0FBR0NHLE1BQUFBLE1BQUQsQ0FBK0JHLGtCQUEvQixDQUFrREYsV0FBbEQsRUFBK0QsS0FBL0Q7QUFDQTtBQUVEO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztXQUNDNUMsaUIsR0FBQSw2QkFBb0I7QUFDbkIsYUFBTyxLQUFLRCxLQUFMLENBQVdDLGlCQUFYLEVBQVA7QUFDQSxLOzs7SUF0R21DK0MsWTs7U0F5R3RCcEQsc0IiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBDb21tb25VdGlscyBmcm9tIFwic2FwL2ZlL2NvcmUvQ29tbW9uVXRpbHNcIjtcbmltcG9ydCB7IFNpZGVDb250ZW50TGF5b3V0SUQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9oZWxwZXJzL0lEXCI7XG5pbXBvcnQgRXh0ZW5zaW9uQVBJIGZyb20gXCJzYXAvZmUvY29yZS9FeHRlbnNpb25BUElcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCBFbmhhbmNlV2l0aFVJNSB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IFRhYmxlQVBJIGZyb20gXCJzYXAvZmUvbWFjcm9zL1RhYmxlQVBJXCI7XG5pbXBvcnQgRHluYW1pY1NpZGVDb250ZW50IGZyb20gXCJzYXAvdWkvbGF5b3V0L0R5bmFtaWNTaWRlQ29udGVudFwiO1xuaW1wb3J0IENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5pbXBvcnQgT0RhdGFNZXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1ldGFNb2RlbFwiO1xuZGVmaW5lVUk1Q2xhc3MoXCJzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuRXh0ZW5zaW9uQVBJXCIpO1xuXG5jbGFzcyBPYmplY3RQYWdlRXh0ZW5zaW9uQVBJIGV4dGVuZHMgRXh0ZW5zaW9uQVBJIHtcblx0LyoqXG5cdCAqIFJlZnJlc2hlcyBlaXRoZXIgdGhlIHdob2xlIG9iamVjdCBwYWdlIG9yIG9ubHkgcGFydHMgb2YgaXQuXG5cdCAqXG5cdCAqIEBhbGlhcyBzYXAuZmUudGVtcGxhdGVzLk9iamVjdFBhZ2UuRXh0ZW5zaW9uQVBJI3JlZnJlc2hcblx0ICogQHBhcmFtIHtzdHJpbmcgfCBzdHJpbmdbXX0gW3ZQYXRoXSBQYXRoIG9yIGFycmF5IG9mIHBhdGhzIHJlZmVycmluZyB0byBlbnRpdGllcyBvciBwcm9wZXJ0aWVzIHRvIGJlIHJlZnJlc2hlZC5cblx0ICogSWYgb21pdHRlZCwgdGhlIHdob2xlIG9iamVjdCBwYWdlIGlzIHJlZnJlc2hlZC4gVGhlIHBhdGggXCJcIiByZWZyZXNoZXMgdGhlIGVudGl0eSBhc3NpZ25lZCB0byB0aGUgb2JqZWN0IHBhZ2Vcblx0ICogd2l0aG91dCBuYXZpZ2F0aW9uc1xuXHQgKiBAcmV0dXJucyB7UHJvbWlzZX0gUmVzb2x2ZWQgb25jZSB0aGUgZGF0YSBpcyByZWZyZXNoZWQgb3IgcmVqZWN0ZWQgaWYgdGhlIHJlcXVlc3QgZmFpbGVkXG5cdCAqXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdHJlZnJlc2godlBhdGg6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkKSB7XG5cdFx0Y29uc3Qgb0JpbmRpbmdDb250ZXh0ID0gdGhpcy5fdmlldy5nZXRCaW5kaW5nQ29udGV4dCgpIGFzIENvbnRleHQsXG5cdFx0XHRvQXBwQ29tcG9uZW50ID0gQ29tbW9uVXRpbHMuZ2V0QXBwQ29tcG9uZW50KHRoaXMuX3ZpZXcpLFxuXHRcdFx0b1NpZGVFZmZlY3RzU2VydmljZSA9IG9BcHBDb21wb25lbnQuZ2V0U2lkZUVmZmVjdHNTZXJ2aWNlKCksXG5cdFx0XHRvTWV0YU1vZGVsID0gb0JpbmRpbmdDb250ZXh0LmdldE1vZGVsKCkuZ2V0TWV0YU1vZGVsKCkgYXMgT0RhdGFNZXRhTW9kZWwsXG5cdFx0XHRvU2lkZUVmZmVjdHM6IGFueSA9IHtcblx0XHRcdFx0VGFyZ2V0UHJvcGVydGllczogW10sXG5cdFx0XHRcdFRhcmdldEVudGl0aWVzOiBbXVxuXHRcdFx0fTtcblx0XHRsZXQgYVBhdGhzLCBzUGF0aCwgc0Jhc2VFbnRpdHlTZXQsIHNLaW5kO1xuXG5cdFx0aWYgKHZQYXRoID09PSB1bmRlZmluZWQgfHwgdlBhdGggPT09IG51bGwpIHtcblx0XHRcdC8vIHdlIGp1c3QgYWRkIGFuIGVtcHR5IHBhdGggd2hpY2ggc2hvdWxkIHJlZnJlc2ggdGhlIHBhZ2Ugd2l0aCBhbGwgZGVwZW5kZW50IGJpbmRpbmdzXG5cdFx0XHRvU2lkZUVmZmVjdHMuVGFyZ2V0RW50aXRpZXMucHVzaCh7XG5cdFx0XHRcdCROYXZpZ2F0aW9uUHJvcGVydHlQYXRoOiBcIlwiXG5cdFx0XHR9KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0YVBhdGhzID0gQXJyYXkuaXNBcnJheSh2UGF0aCkgPyB2UGF0aCA6IFt2UGF0aF07XG5cdFx0XHRzQmFzZUVudGl0eVNldCA9ICh0aGlzLl9jb250cm9sbGVyLmdldE93bmVyQ29tcG9uZW50KCkgYXMgYW55KS5nZXRFbnRpdHlTZXQoKTtcblxuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhUGF0aHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0c1BhdGggPSBhUGF0aHNbaV07XG5cdFx0XHRcdGlmIChzUGF0aCA9PT0gXCJcIikge1xuXHRcdFx0XHRcdC8vIGFuIGVtcHR5IHBhdGggc2hhbGwgcmVmcmVzaCB0aGUgZW50aXR5IHdpdGhvdXQgZGVwZW5kZW5jaWVzIHdoaWNoIG1lYW5zICogZm9yIHRoZSBtb2RlbFxuXHRcdFx0XHRcdG9TaWRlRWZmZWN0cy5UYXJnZXRQcm9wZXJ0aWVzLnB1c2goe1xuXHRcdFx0XHRcdFx0JFByb3BlcnR5UGF0aDogXCIqXCJcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRzS2luZCA9IG9NZXRhTW9kZWwuZ2V0T2JqZWN0KFwiL1wiICsgc0Jhc2VFbnRpdHlTZXQgKyBcIi9cIiArIHNQYXRoICsgXCIvJGtpbmRcIik7XG5cblx0XHRcdFx0XHRpZiAoc0tpbmQgPT09IFwiTmF2aWdhdGlvblByb3BlcnR5XCIpIHtcblx0XHRcdFx0XHRcdG9TaWRlRWZmZWN0cy5UYXJnZXRFbnRpdGllcy5wdXNoKHtcblx0XHRcdFx0XHRcdFx0JE5hdmlnYXRpb25Qcm9wZXJ0eVBhdGg6IHNQYXRoXG5cdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHR9IGVsc2UgaWYgKHNLaW5kKSB7XG5cdFx0XHRcdFx0XHRvU2lkZUVmZmVjdHMuVGFyZ2V0UHJvcGVydGllcy5wdXNoKHtcblx0XHRcdFx0XHRcdFx0JFByb3BlcnR5UGF0aDogc1BhdGhcblx0XHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3Qoc1BhdGggKyBcIiBpcyBub3QgYSB2YWxpZCBwYXRoIHRvIGJlIHJlZnJlc2hlZFwiKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0cmV0dXJuIG9TaWRlRWZmZWN0c1NlcnZpY2UucmVxdWVzdFNpZGVFZmZlY3RzKG9TaWRlRWZmZWN0cy5UYXJnZXRFbnRpdGllcy5jb25jYXQob1NpZGVFZmZlY3RzLlRhcmdldFByb3BlcnRpZXMpLCBvQmluZGluZ0NvbnRleHQpO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldHMgdGhlIGxpc3QgZW50cmllcyBjdXJyZW50bHkgc2VsZWN0ZWQgZm9yIHRoZSB0YWJsZS5cblx0ICpcblx0ICogQGFsaWFzIHNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5FeHRlbnNpb25BUEkjZ2V0U2VsZWN0ZWRDb250ZXh0c1xuXHQgKiBAcGFyYW0ge3N0cmluZ30gc1RhYmxlSWQgVGhlIElEIGlkZW50aWZ5aW5nIHRoZSB0YWJsZSB0aGUgc2VsZWN0ZWQgY29udGV4dCBpcyByZXF1ZXN0ZWQgZm9yXG5cdCAqIEByZXR1cm5zIHtzYXAudWkubW9kZWwub2RhdGEudjQuQ29udGV4dFtdfSBBcnJheSBjb250YWluaW5nIHRoZSBzZWxlY3RlZCBjb250ZXh0c1xuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRnZXRTZWxlY3RlZENvbnRleHRzKHNUYWJsZUlkOiBzdHJpbmcpIHtcblx0XHRsZXQgb1RhYmxlID0gdGhpcy5fdmlldy5ieUlkKHNUYWJsZUlkKTtcblx0XHRpZiAob1RhYmxlICYmIG9UYWJsZS5pc0EoXCJzYXAuZmUubWFjcm9zLlRhYmxlQVBJXCIpKSB7XG5cdFx0XHRvVGFibGUgPSAob1RhYmxlIGFzIEVuaGFuY2VXaXRoVUk1PFRhYmxlQVBJPikuZ2V0Q29udGVudCgpO1xuXHRcdH1cblx0XHRyZXR1cm4gKG9UYWJsZSAmJiBvVGFibGUuaXNBKFwic2FwLnVpLm1kYy5UYWJsZVwiKSAmJiAob1RhYmxlIGFzIGFueSkuZ2V0U2VsZWN0ZWRDb250ZXh0cygpKSB8fCBbXTtcblx0fVxuXG5cdC8qKlxuXHQgKiBEaXNwbGF5cyBvciBoaWRlcyB0aGUgc2lkZSBjb250ZW50IG9mIGFuIG9iamVjdCBwYWdlIGJsb2NrLlxuXHQgKlxuXHQgKiBAYWxpYXMgc2FwLmZlLnRlbXBsYXRlcy5PYmplY3RQYWdlLkV4dGVuc2lvbkFQSSNzaG93U2lkZUNvbnRlbnRcblx0ICogQHBhcmFtIHtzdHJpbmd9IHNTdWJTZWN0aW9uS2V5IEtleSBvZiB0aGUgc2lkZSBjb250ZW50IGZyYWdtZW50IGFzIGRlZmluZWQgaW4gdGhlIG1hbmlmZXN0Lmpzb25cblx0ICogQHBhcmFtIHtib29sZWFufSBbYlNob3ddIE9wdGlvbmFsIEJvb2xlYW4gZmxhZyB0byBzaG93IG9yIGhpZGUgdGhlIHNpZGUgY29udGVudFxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRzaG93U2lkZUNvbnRlbnQoc1N1YlNlY3Rpb25LZXk6IHN0cmluZywgYlNob3c6IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcblx0XHRjb25zdCBzQmxvY2tJRCA9IFNpZGVDb250ZW50TGF5b3V0SUQoc1N1YlNlY3Rpb25LZXkpLFxuXHRcdFx0b0Jsb2NrID0gdGhpcy5fdmlldy5ieUlkKHNCbG9ja0lEKSxcblx0XHRcdGJCbG9ja1N0YXRlID0gYlNob3cgPT09IHVuZGVmaW5lZCA/ICEob0Jsb2NrIGFzIER5bmFtaWNTaWRlQ29udGVudCkuZ2V0U2hvd1NpZGVDb250ZW50KCkgOiBiU2hvdztcblx0XHQob0Jsb2NrIGFzIER5bmFtaWNTaWRlQ29udGVudCkuc2V0U2hvd1NpZGVDb250ZW50KGJCbG9ja1N0YXRlLCBmYWxzZSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0cyB0aGUgYm91bmQgY29udGV4dCBvZiB0aGUgY3VycmVudCBvYmplY3QgcGFnZS5cblx0ICpcblx0ICogQGFsaWFzIHNhcC5mZS50ZW1wbGF0ZXMuT2JqZWN0UGFnZS5FeHRlbnNpb25BUEkjZ2V0QmluZGluZ0NvbnRleHRcblx0ICogQHJldHVybnMge3NhcC51aS5tb2RlbC5vZGF0YS52NC5Db250ZXh0fSBDb250ZXh0IGJvdW5kIHRvIHRoZSBvYmplY3QgcGFnZVxuXHQgKlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRnZXRCaW5kaW5nQ29udGV4dCgpIHtcblx0XHRyZXR1cm4gdGhpcy5fdmlldy5nZXRCaW5kaW5nQ29udGV4dCgpO1xuXHR9XG59XG5cbmV4cG9ydCBkZWZhdWx0IE9iamVjdFBhZ2VFeHRlbnNpb25BUEk7XG4iXX0=
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
2
|
+
import { SideContentLayoutID } from "sap/fe/core/converters/helpers/ID";
|
|
3
|
+
import ExtensionAPI from "sap/fe/core/ExtensionAPI";
|
|
4
|
+
import { defineUI5Class, EnhanceWithUI5 } from "sap/fe/core/helpers/ClassSupport";
|
|
5
|
+
import TableAPI from "sap/fe/macros/TableAPI";
|
|
6
|
+
import DynamicSideContent from "sap/ui/layout/DynamicSideContent";
|
|
7
|
+
import Context from "sap/ui/model/odata/v4/Context";
|
|
8
|
+
import ODataMetaModel from "sap/ui/model/odata/v4/ODataMetaModel";
|
|
9
|
+
defineUI5Class("sap.fe.templates.ObjectPage.ExtensionAPI");
|
|
10
|
+
|
|
11
|
+
class ObjectPageExtensionAPI extends ExtensionAPI {
|
|
12
|
+
/**
|
|
13
|
+
* Refreshes either the whole object page or only parts of it.
|
|
14
|
+
*
|
|
15
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#refresh
|
|
16
|
+
* @param {string | string[]} [vPath] Path or array of paths referring to entities or properties to be refreshed.
|
|
17
|
+
* If omitted, the whole object page is refreshed. The path "" refreshes the entity assigned to the object page
|
|
18
|
+
* without navigations
|
|
19
|
+
* @returns {Promise} Resolved once the data is refreshed or rejected if the request failed
|
|
20
|
+
*
|
|
21
|
+
* @public
|
|
22
|
+
*/
|
|
23
|
+
refresh(vPath: string | string[] | undefined) {
|
|
24
|
+
const oBindingContext = this._view.getBindingContext() as Context,
|
|
25
|
+
oAppComponent = CommonUtils.getAppComponent(this._view),
|
|
26
|
+
oSideEffectsService = oAppComponent.getSideEffectsService(),
|
|
27
|
+
oMetaModel = oBindingContext.getModel().getMetaModel() as ODataMetaModel,
|
|
28
|
+
oSideEffects: any = {
|
|
29
|
+
TargetProperties: [],
|
|
30
|
+
TargetEntities: []
|
|
31
|
+
};
|
|
32
|
+
let aPaths, sPath, sBaseEntitySet, sKind;
|
|
33
|
+
|
|
34
|
+
if (vPath === undefined || vPath === null) {
|
|
35
|
+
// we just add an empty path which should refresh the page with all dependent bindings
|
|
36
|
+
oSideEffects.TargetEntities.push({
|
|
37
|
+
$NavigationPropertyPath: ""
|
|
38
|
+
});
|
|
39
|
+
} else {
|
|
40
|
+
aPaths = Array.isArray(vPath) ? vPath : [vPath];
|
|
41
|
+
sBaseEntitySet = (this._controller.getOwnerComponent() as any).getEntitySet();
|
|
42
|
+
|
|
43
|
+
for (let i = 0; i < aPaths.length; i++) {
|
|
44
|
+
sPath = aPaths[i];
|
|
45
|
+
if (sPath === "") {
|
|
46
|
+
// an empty path shall refresh the entity without dependencies which means * for the model
|
|
47
|
+
oSideEffects.TargetProperties.push({
|
|
48
|
+
$PropertyPath: "*"
|
|
49
|
+
});
|
|
50
|
+
} else {
|
|
51
|
+
sKind = oMetaModel.getObject("/" + sBaseEntitySet + "/" + sPath + "/$kind");
|
|
52
|
+
|
|
53
|
+
if (sKind === "NavigationProperty") {
|
|
54
|
+
oSideEffects.TargetEntities.push({
|
|
55
|
+
$NavigationPropertyPath: sPath
|
|
56
|
+
});
|
|
57
|
+
} else if (sKind) {
|
|
58
|
+
oSideEffects.TargetProperties.push({
|
|
59
|
+
$PropertyPath: sPath
|
|
60
|
+
});
|
|
61
|
+
} else {
|
|
62
|
+
return Promise.reject(sPath + " is not a valid path to be refreshed");
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return oSideEffectsService.requestSideEffects(oSideEffects.TargetEntities.concat(oSideEffects.TargetProperties), oBindingContext);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Gets the list entries currently selected for the table.
|
|
72
|
+
*
|
|
73
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#getSelectedContexts
|
|
74
|
+
* @param {string} sTableId The ID identifying the table the selected context is requested for
|
|
75
|
+
* @returns {sap.ui.model.odata.v4.Context[]} Array containing the selected contexts
|
|
76
|
+
*
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
getSelectedContexts(sTableId: string) {
|
|
80
|
+
let oTable = this._view.byId(sTableId);
|
|
81
|
+
if (oTable && oTable.isA("sap.fe.macros.TableAPI")) {
|
|
82
|
+
oTable = (oTable as EnhanceWithUI5<TableAPI>).getContent();
|
|
83
|
+
}
|
|
84
|
+
return (oTable && oTable.isA("sap.ui.mdc.Table") && (oTable as any).getSelectedContexts()) || [];
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Displays or hides the side content of an object page block.
|
|
89
|
+
*
|
|
90
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#showSideContent
|
|
91
|
+
* @param {string} sSubSectionKey Key of the side content fragment as defined in the manifest.json
|
|
92
|
+
* @param {boolean} [bShow] Optional Boolean flag to show or hide the side content
|
|
93
|
+
*
|
|
94
|
+
* @public
|
|
95
|
+
*/
|
|
96
|
+
showSideContent(sSubSectionKey: string, bShow: boolean | undefined) {
|
|
97
|
+
const sBlockID = SideContentLayoutID(sSubSectionKey),
|
|
98
|
+
oBlock = this._view.byId(sBlockID),
|
|
99
|
+
bBlockState = bShow === undefined ? !(oBlock as DynamicSideContent).getShowSideContent() : bShow;
|
|
100
|
+
(oBlock as DynamicSideContent).setShowSideContent(bBlockState, false);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Gets the bound context of the current object page.
|
|
105
|
+
*
|
|
106
|
+
* @alias sap.fe.templates.ObjectPage.ExtensionAPI#getBindingContext
|
|
107
|
+
* @returns {sap.ui.model.odata.v4.Context} Context bound to the object page
|
|
108
|
+
*
|
|
109
|
+
* @public
|
|
110
|
+
*/
|
|
111
|
+
getBindingContext() {
|
|
112
|
+
return this._view.getBindingContext();
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export default ObjectPageExtensionAPI;
|