@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,192 +1,208 @@
|
|
|
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(
|
|
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
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
);
|
|
5
|
+
sap.ui.define(["sap/base/Log", "sap/fe/core/CommonUtils", "sap/fe/core/controllerextensions/ViewState", "sap/fe/core/helpers/ClassSupport", "sap/fe/core/helpers/KeepAliveHelper", "sap/m/Link", "sap/m/MessageBox", "sap/m/MessagePage", "./RootContainerBaseController"], function (Log, CommonUtils, ViewState, ClassSupport, KeepAliveHelper, Link, MessageBox, MessagePage, BaseController) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
var _dec, _dec2, _class, _class2, _descriptor;
|
|
9
|
+
|
|
10
|
+
var Icon = MessageBox.Icon;
|
|
11
|
+
var Action = MessageBox.Action;
|
|
12
|
+
var usingExtension = ClassSupport.usingExtension;
|
|
13
|
+
var defineUI5Class = ClassSupport.defineUI5Class;
|
|
14
|
+
|
|
15
|
+
function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
|
|
16
|
+
|
|
17
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
18
|
+
|
|
19
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
20
|
+
|
|
21
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
22
|
+
|
|
23
|
+
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
24
|
+
|
|
25
|
+
function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'proposal-class-properties is enabled and runs after the decorators transform.'); }
|
|
26
|
+
|
|
27
|
+
var NavContainerController = (_dec = defineUI5Class("sap.fe.templates.RootContainer.controller.NavContainer"), _dec2 = usingExtension(ViewState.override({
|
|
28
|
+
applyInitialStateOnly: function () {
|
|
29
|
+
return false;
|
|
30
|
+
},
|
|
31
|
+
adaptBindingRefreshControls: function (aControls) {
|
|
32
|
+
var oView = this.getView(),
|
|
33
|
+
oController = oView.getController();
|
|
34
|
+
aControls.push(oController._getCurrentPage(oView));
|
|
35
|
+
},
|
|
36
|
+
adaptStateControls: function (aStateControls) {
|
|
37
|
+
var oView = this.getView(),
|
|
38
|
+
oController = oView.getController();
|
|
39
|
+
aStateControls.push(oController._getCurrentPage(oView));
|
|
40
|
+
},
|
|
41
|
+
onRestore: function () {
|
|
42
|
+
var oView = this.getView(),
|
|
43
|
+
oNavContainer = oView.byId("appContent"),
|
|
44
|
+
oController = oView.getController();
|
|
45
|
+
var oInternalModel = oNavContainer.getModel("internal");
|
|
46
|
+
var oPages = oInternalModel.getProperty("/pages");
|
|
47
|
+
|
|
48
|
+
for (var sComponentId in oPages) {
|
|
49
|
+
oInternalModel.setProperty("/pages/" + sComponentId + "/restoreStatus", "pending");
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
oController.onContainerReady();
|
|
53
|
+
},
|
|
54
|
+
onSuspend: function () {
|
|
55
|
+
var oView = this.getView(),
|
|
56
|
+
oNavContainer = oView.byId("appContent");
|
|
57
|
+
var aPages = oNavContainer.getPages();
|
|
58
|
+
aPages.forEach(function (oPage) {
|
|
59
|
+
var oTargetView = CommonUtils.getTargetView(oPage);
|
|
60
|
+
var oController = oTargetView && oTargetView.getController();
|
|
61
|
+
|
|
62
|
+
if (oController && oController.viewState && oController.viewState.onSuspend) {
|
|
63
|
+
return oController.viewState.onSuspend();
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
})), _dec(_class = (_class2 = /*#__PURE__*/function (_BaseController) {
|
|
68
|
+
_inheritsLoose(NavContainerController, _BaseController);
|
|
69
|
+
|
|
70
|
+
function NavContainerController() {
|
|
71
|
+
var _this;
|
|
72
|
+
|
|
73
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
74
|
+
args[_key] = arguments[_key];
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
_this = _BaseController.call.apply(_BaseController, [this].concat(args)) || this;
|
|
78
|
+
|
|
79
|
+
_initializerDefineProperty(_this, "viewState", _descriptor, _assertThisInitialized(_this));
|
|
80
|
+
|
|
81
|
+
return _this;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
var _proto = NavContainerController.prototype;
|
|
85
|
+
|
|
86
|
+
_proto.onContainerReady = function onContainerReady() {
|
|
87
|
+
// Restore views if neccessary.
|
|
88
|
+
var oView = this.getView(),
|
|
89
|
+
oPagePromise = this._getCurrentPage(oView);
|
|
90
|
+
|
|
91
|
+
return oPagePromise.then(function (oCurrentPage) {
|
|
92
|
+
var oTargetView = CommonUtils.getTargetView(oCurrentPage);
|
|
93
|
+
return KeepAliveHelper.restoreView(oTargetView);
|
|
94
|
+
});
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
_proto._getCurrentPage = function _getCurrentPage(oView) {
|
|
98
|
+
return new Promise(function (resolve) {
|
|
99
|
+
var oNavContainer = oView.byId("appContent");
|
|
100
|
+
var oCurrentPage = oNavContainer.getCurrentPage();
|
|
101
|
+
|
|
102
|
+
if (oCurrentPage && oCurrentPage.getController && oCurrentPage.getController().isPlaceholder && oCurrentPage.getController().isPlaceholder()) {
|
|
103
|
+
oCurrentPage.getController().attachEventOnce("targetPageInsertedInContainer", function (oEvent) {
|
|
104
|
+
var oTargetPage = oEvent.getParameter("targetpage");
|
|
105
|
+
var oTargetView = CommonUtils.getTargetView(oTargetPage);
|
|
106
|
+
resolve(oTargetView !== oView && oTargetView);
|
|
107
|
+
});
|
|
108
|
+
} else {
|
|
109
|
+
var oTargetView = CommonUtils.getTargetView(oCurrentPage);
|
|
110
|
+
resolve(oTargetView !== oView && oTargetView);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* @private
|
|
116
|
+
* @name sap.fe.templates.RootContainer.controller.NavContainer.getMetadata
|
|
117
|
+
* @function
|
|
118
|
+
*/
|
|
119
|
+
;
|
|
120
|
+
|
|
121
|
+
_proto._getNavContainer = function _getNavContainer() {
|
|
122
|
+
return this.getView().getContent()[0];
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Check if the FCL component is enabled.
|
|
126
|
+
*
|
|
127
|
+
* @function
|
|
128
|
+
* @name sap.fe.templates.RootContainer.controller.NavContainer.controller#isFclEnabled
|
|
129
|
+
* @memberof sap.fe.templates.RootContainer.controller.NavContainer.controller
|
|
130
|
+
* @returns {boolean} `false` since we are not in FCL scenario
|
|
131
|
+
*
|
|
132
|
+
* @ui5-restricted
|
|
133
|
+
* @final
|
|
134
|
+
*/
|
|
135
|
+
;
|
|
136
|
+
|
|
137
|
+
_proto.isFclEnabled = function isFclEnabled() {
|
|
138
|
+
return false;
|
|
139
|
+
};
|
|
140
|
+
|
|
141
|
+
_proto._scrollTablesToLastNavigatedItems = function _scrollTablesToLastNavigatedItems() {// Do nothing
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
_proto.displayMessagePage = function displayMessagePage(sErrorMessage, mParameters) {
|
|
145
|
+
var _this2 = this;
|
|
146
|
+
|
|
147
|
+
return new Promise(function (resolve, reject) {
|
|
148
|
+
try {
|
|
149
|
+
var oNavContainer = _this2._getNavContainer();
|
|
150
|
+
|
|
151
|
+
if (!_this2.oMessagePage) {
|
|
152
|
+
_this2.oMessagePage = new MessagePage({
|
|
153
|
+
showHeader: false,
|
|
154
|
+
icon: "sap-icon://message-error"
|
|
155
|
+
});
|
|
156
|
+
oNavContainer.addPage(_this2.oMessagePage);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
_this2.oMessagePage.setText(sErrorMessage);
|
|
160
|
+
|
|
161
|
+
if (mParameters.technicalMessage) {
|
|
162
|
+
_this2.oMessagePage.setCustomDescription(new Link({
|
|
163
|
+
text: mParameters.description || mParameters.technicalMessage,
|
|
164
|
+
press: function () {
|
|
165
|
+
MessageBox.show(mParameters.technicalMessage, {
|
|
166
|
+
icon: Icon.ERROR,
|
|
167
|
+
title: mParameters.title,
|
|
168
|
+
actions: [Action.OK],
|
|
169
|
+
defaultAction: Action.OK,
|
|
170
|
+
details: mParameters.technicalDetails || "",
|
|
171
|
+
contentWidth: "60%"
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
}));
|
|
175
|
+
} else {
|
|
176
|
+
_this2.oMessagePage.setDescription(mParameters.description || "");
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
if (mParameters.handleShellBack) {
|
|
180
|
+
var oErrorOriginPage = oNavContainer.getCurrentPage(),
|
|
181
|
+
oAppComponent = CommonUtils.getAppComponent(oNavContainer.getCurrentPage());
|
|
182
|
+
oAppComponent.getShellServices().setBackNavigation(function () {
|
|
183
|
+
oNavContainer.to(oErrorOriginPage.getId());
|
|
184
|
+
oAppComponent.getShellServices().setBackNavigation();
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
oNavContainer.attachAfterNavigate(function () {
|
|
189
|
+
resolve(true);
|
|
190
|
+
});
|
|
191
|
+
oNavContainer.to(_this2.oMessagePage.getId());
|
|
192
|
+
} catch (e) {
|
|
193
|
+
reject(false);
|
|
194
|
+
Log.info(e);
|
|
195
|
+
}
|
|
196
|
+
});
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
return NavContainerController;
|
|
200
|
+
}(BaseController), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, "viewState", [_dec2], {
|
|
201
|
+
configurable: true,
|
|
202
|
+
enumerable: true,
|
|
203
|
+
writable: true,
|
|
204
|
+
initializer: null
|
|
205
|
+
})), _class2)) || _class);
|
|
206
|
+
return NavContainerController;
|
|
207
|
+
}, false);
|
|
208
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk5hdkNvbnRhaW5lci5jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbIk5hdkNvbnRhaW5lckNvbnRyb2xsZXIiLCJkZWZpbmVVSTVDbGFzcyIsInVzaW5nRXh0ZW5zaW9uIiwiVmlld1N0YXRlIiwib3ZlcnJpZGUiLCJhcHBseUluaXRpYWxTdGF0ZU9ubHkiLCJhZGFwdEJpbmRpbmdSZWZyZXNoQ29udHJvbHMiLCJhQ29udHJvbHMiLCJvVmlldyIsImdldFZpZXciLCJvQ29udHJvbGxlciIsImdldENvbnRyb2xsZXIiLCJwdXNoIiwiX2dldEN1cnJlbnRQYWdlIiwiYWRhcHRTdGF0ZUNvbnRyb2xzIiwiYVN0YXRlQ29udHJvbHMiLCJvblJlc3RvcmUiLCJvTmF2Q29udGFpbmVyIiwiYnlJZCIsIm9JbnRlcm5hbE1vZGVsIiwiZ2V0TW9kZWwiLCJvUGFnZXMiLCJnZXRQcm9wZXJ0eSIsInNDb21wb25lbnRJZCIsInNldFByb3BlcnR5Iiwib25Db250YWluZXJSZWFkeSIsIm9uU3VzcGVuZCIsImFQYWdlcyIsImdldFBhZ2VzIiwiZm9yRWFjaCIsIm9QYWdlIiwib1RhcmdldFZpZXciLCJDb21tb25VdGlscyIsImdldFRhcmdldFZpZXciLCJ2aWV3U3RhdGUiLCJvUGFnZVByb21pc2UiLCJ0aGVuIiwib0N1cnJlbnRQYWdlIiwiS2VlcEFsaXZlSGVscGVyIiwicmVzdG9yZVZpZXciLCJQcm9taXNlIiwicmVzb2x2ZSIsImdldEN1cnJlbnRQYWdlIiwiaXNQbGFjZWhvbGRlciIsImF0dGFjaEV2ZW50T25jZSIsIm9FdmVudCIsIm9UYXJnZXRQYWdlIiwiZ2V0UGFyYW1ldGVyIiwiX2dldE5hdkNvbnRhaW5lciIsImdldENvbnRlbnQiLCJpc0ZjbEVuYWJsZWQiLCJfc2Nyb2xsVGFibGVzVG9MYXN0TmF2aWdhdGVkSXRlbXMiLCJkaXNwbGF5TWVzc2FnZVBhZ2UiLCJzRXJyb3JNZXNzYWdlIiwibVBhcmFtZXRlcnMiLCJyZWplY3QiLCJvTWVzc2FnZVBhZ2UiLCJNZXNzYWdlUGFnZSIsInNob3dIZWFkZXIiLCJpY29uIiwiYWRkUGFnZSIsInNldFRleHQiLCJ0ZWNobmljYWxNZXNzYWdlIiwic2V0Q3VzdG9tRGVzY3JpcHRpb24iLCJMaW5rIiwidGV4dCIsImRlc2NyaXB0aW9uIiwicHJlc3MiLCJNZXNzYWdlQm94Iiwic2hvdyIsIkljb24iLCJFUlJPUiIsInRpdGxlIiwiYWN0aW9ucyIsIkFjdGlvbiIsIk9LIiwiZGVmYXVsdEFjdGlvbiIsImRldGFpbHMiLCJ0ZWNobmljYWxEZXRhaWxzIiwiY29udGVudFdpZHRoIiwic2V0RGVzY3JpcHRpb24iLCJoYW5kbGVTaGVsbEJhY2siLCJvRXJyb3JPcmlnaW5QYWdlIiwib0FwcENvbXBvbmVudCIsImdldEFwcENvbXBvbmVudCIsImdldFNoZWxsU2VydmljZXMiLCJzZXRCYWNrTmF2aWdhdGlvbiIsInRvIiwiZ2V0SWQiLCJhdHRhY2hBZnRlck5hdmlnYXRlIiwiZSIsIkxvZyIsImluZm8iLCJCYXNlQ29udHJvbGxlciJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFXTUEsc0IsV0FETEMsY0FBYyxDQUFDLHdEQUFELEMsVUFFYkMsY0FBYyxDQUNkQyxTQUFTLENBQUNDLFFBQVYsQ0FBbUI7QUFDbEJDLElBQUFBLHFCQUFxQixFQUFFLFlBQVk7QUFDbEMsYUFBTyxLQUFQO0FBQ0EsS0FIaUI7QUFJbEJDLElBQUFBLDJCQUEyQixFQUFFLFVBQTJCQyxTQUEzQixFQUEyQztBQUN2RSxVQUFNQyxLQUFLLEdBQUcsS0FBS0MsT0FBTCxFQUFkO0FBQUEsVUFDQ0MsV0FBVyxHQUFHRixLQUFLLENBQUNHLGFBQU4sRUFEZjtBQUVBSixNQUFBQSxTQUFTLENBQUNLLElBQVYsQ0FBZUYsV0FBVyxDQUFDRyxlQUFaLENBQTRCTCxLQUE1QixDQUFmO0FBQ0EsS0FSaUI7QUFTbEJNLElBQUFBLGtCQUFrQixFQUFFLFVBQTJCQyxjQUEzQixFQUFnRDtBQUNuRSxVQUFNUCxLQUFLLEdB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QUE1QixDQURqQjtBQUVBeUMsWUFBQUEsYUFBYSxDQUFDRSxnQkFBZCxHQUFpQ0MsaUJBQWpDLENBQW1ELFlBQVk7QUFDN0RyRSxjQUFBQSxhQUFELENBQXVCc0UsRUFBdkIsQ0FBMEJMLGdCQUFnQixDQUFDTSxLQUFqQixFQUExQjtBQUNBTCxjQUFBQSxhQUFhLENBQUNFLGdCQUFkLEdBQWlDQyxpQkFBakM7QUFDQSxhQUhEO0FBSUE7O0FBQ0RyRSxVQUFBQSxhQUFhLENBQUN3RSxtQkFBZCxDQUFrQyxZQUFZO0FBQzdDaEQsWUFBQUEsT0FBTyxDQUFDLElBQUQsQ0FBUDtBQUNBLFdBRkQ7QUFHQ3hCLFVBQUFBLGFBQUQsQ0FBdUJzRSxFQUF2QixDQUEwQixNQUFJLENBQUMvQixZQUFMLENBQWtCZ0MsS0FBbEIsRUFBMUI7QUFDQSxTQTlDRCxDQThDRSxPQUFPRSxDQUFQLEVBQVU7QUFDWG5DLFVBQUFBLE1BQU0sQ0FBQyxLQUFELENBQU47QUFDQW9DLFVBQUFBLEdBQUcsQ0FBQ0MsSUFBSixDQUFTRixDQUFUO0FBQ0E7QUFDRCxPQW5ETSxDQUFQO0FBb0RBLEs7OztJQWpLbUNHLGM7Ozs7OztTQW9LdEI3RixzQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgQ29tbW9uVXRpbHMgZnJvbSBcInNhcC9mZS9jb3JlL0NvbW1vblV0aWxzXCI7XG5pbXBvcnQgVmlld1N0YXRlIGZyb20gXCJzYXAvZmUvY29yZS9jb250cm9sbGVyZXh0ZW5zaW9ucy9WaWV3U3RhdGVcIjtcbmltcG9ydCB7IGRlZmluZVVJNUNsYXNzLCB1c2luZ0V4dGVuc2lvbiB9IGZyb20gXCJzYXAvZmUvY29yZS9oZWxwZXJzL0NsYXNzU3VwcG9ydFwiO1xuaW1wb3J0IEtlZXBBbGl2ZUhlbHBlciBmcm9tIFwic2FwL2ZlL2NvcmUvaGVscGVycy9LZWVwQWxpdmVIZWxwZXJcIjtcbmltcG9ydCBMaW5rIGZyb20gXCJzYXAvbS9MaW5rXCI7XG5pbXBvcnQgTWVzc2FnZUJveCwgeyBBY3Rpb24sIEljb24gfSBmcm9tIFwic2FwL20vTWVzc2FnZUJveFwiO1xuaW1wb3J0IE1lc3NhZ2VQYWdlIGZyb20gXCJzYXAvbS9NZXNzYWdlUGFnZVwiO1xuaW1wb3J0IE5hdkNvbnRhaW5lciBmcm9tIFwic2FwL20vTmF2Q29udGFpbmVyXCI7XG5pbXBvcnQgSlNPTk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvanNvbi9KU09OTW9kZWxcIjtcbmltcG9ydCBCYXNlQ29udHJvbGxlciBmcm9tIFwiLi9Sb290Q29udGFpbmVyQmFzZUNvbnRyb2xsZXJcIjtcblxuQGRlZmluZVVJNUNsYXNzKFwic2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuTmF2Q29udGFpbmVyXCIpXG5jbGFzcyBOYXZDb250YWluZXJDb250cm9sbGVyIGV4dGVuZHMgQmFzZUNvbnRyb2xsZXIge1xuXHRAdXNpbmdFeHRlbnNpb24oXG5cdFx0Vmlld1N0YXRlLm92ZXJyaWRlKHtcblx0XHRcdGFwcGx5SW5pdGlhbFN0YXRlT25seTogZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9LFxuXHRcdFx0YWRhcHRCaW5kaW5nUmVmcmVzaENvbnRyb2xzOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlLCBhQ29udHJvbHM6IGFueSkge1xuXHRcdFx0XHRjb25zdCBvVmlldyA9IHRoaXMuZ2V0VmlldygpLFxuXHRcdFx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIE5hdkNvbnRhaW5lckNvbnRyb2xsZXI7XG5cdFx0XHRcdGFDb250cm9scy5wdXNoKG9Db250cm9sbGVyLl9nZXRDdXJyZW50UGFnZShvVmlldykpO1xuXHRcdFx0fSxcblx0XHRcdGFkYXB0U3RhdGVDb250cm9sczogZnVuY3Rpb24gKHRoaXM6IFZpZXdTdGF0ZSwgYVN0YXRlQ29udHJvbHM6IGFueSkge1xuXHRcdFx0XHRjb25zdCBvVmlldyA9IHRoaXMuZ2V0VmlldygpLFxuXHRcdFx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIE5hdkNvbnRhaW5lckNvbnRyb2xsZXI7XG5cdFx0XHRcdGFTdGF0ZUNvbnRyb2xzLnB1c2gob0NvbnRyb2xsZXIuX2dldEN1cnJlbnRQYWdlKG9WaWV3KSk7XG5cdFx0XHR9LFxuXHRcdFx0b25SZXN0b3JlOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlKSB7XG5cdFx0XHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRcdFx0b05hdkNvbnRhaW5lciA9IG9WaWV3LmJ5SWQoXCJhcHBDb250ZW50XCIpLFxuXHRcdFx0XHRcdG9Db250cm9sbGVyID0gb1ZpZXcuZ2V0Q29udHJvbGxlcigpIGFzIE5hdkNvbnRhaW5lckNvbnRyb2xsZXI7XG5cdFx0XHRcdGNvbnN0IG9JbnRlcm5hbE1vZGVsID0gb05hdkNvbnRhaW5lci5nZXRNb2RlbChcImludGVybmFsXCIpIGFzIEpTT05Nb2RlbDtcblx0XHRcdFx0Y29uc3Qgb1BhZ2VzID0gb0ludGVybmFsTW9kZWwuZ2V0UHJvcGVydHkoXCIvcGFnZXNcIik7XG5cblx0XHRcdFx0Zm9yIChjb25zdCBzQ29tcG9uZW50SWQgaW4gb1BhZ2VzKSB7XG5cdFx0XHRcdFx0b0ludGVybmFsTW9kZWwuc2V0UHJvcGVydHkoXCIvcGFnZXMvXCIgKyBzQ29tcG9uZW50SWQgKyBcIi9yZXN0b3JlU3RhdHVzXCIsIFwicGVuZGluZ1wiKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRvQ29udHJvbGxlci5vbkNvbnRhaW5lclJlYWR5KCk7XG5cdFx0XHR9LFxuXHRcdFx0b25TdXNwZW5kOiBmdW5jdGlvbiAodGhpczogVmlld1N0YXRlKSB7XG5cdFx0XHRcdGNvbnN0IG9WaWV3ID0gdGhpcy5nZXRWaWV3KCksXG5cdFx0XHRcdFx0b05hdkNvbnRhaW5lciA9IG9WaWV3LmJ5SWQoXCJhcHBDb250ZW50XCIpIGFzIE5hdkNvbnRhaW5lcjtcblx0XHRcdFx0Y29uc3QgYVBhZ2VzID0gb05hdkNvbnRhaW5lci5nZXRQYWdlcygpO1xuXHRcdFx0XHRhUGFnZXMuZm9yRWFjaChmdW5jdGlvbiAob1BhZ2U6IGFueSkge1xuXHRcdFx0XHRcdGNvbnN0IG9UYXJnZXRWaWV3ID0gQ29tbW9uVXRpbHMuZ2V0VGFyZ2V0VmlldyhvUGFnZSk7XG5cblx0XHRcdFx0XHRjb25zdCBvQ29udHJvbGxlciA9IG9UYXJnZXRWaWV3ICYmIG9UYXJnZXRWaWV3LmdldENvbnRyb2xsZXIoKTtcblx0XHRcdFx0XHRpZiAob0NvbnRyb2xsZXIgJiYgb0NvbnRyb2xsZXIudmlld1N0YXRlICYmIG9Db250cm9sbGVyLnZpZXdTdGF0ZS5vblN1c3BlbmQpIHtcblx0XHRcdFx0XHRcdHJldHVybiBvQ29udHJvbGxlci52aWV3U3RhdGUub25TdXNwZW5kKCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9KTtcblx0XHRcdH1cblx0XHR9KVxuXHQpXG5cdHZpZXdTdGF0ZSE6IFZpZXdTdGF0ZTtcblx0cHJpdmF0ZSBvTWVzc2FnZVBhZ2U/OiBNZXNzYWdlUGFnZTtcblxuXHRvbkNvbnRhaW5lclJlYWR5KCkge1xuXHRcdC8vIFJlc3RvcmUgdmlld3MgaWYgbmVjY2Vzc2FyeS5cblx0XHRjb25zdCBvVmlldyA9IHRoaXMuZ2V0VmlldygpLFxuXHRcdFx0b1BhZ2VQcm9taXNlID0gdGhpcy5fZ2V0Q3VycmVudFBhZ2Uob1ZpZXcpO1xuXG5cdFx0cmV0dXJuIG9QYWdlUHJvbWlzZS50aGVuKGZ1bmN0aW9uIChvQ3VycmVudFBhZ2U6IGFueSkge1xuXHRcdFx0Y29uc3Qgb1RhcmdldFZpZXcgPSBDb21tb25VdGlscy5nZXRUYXJnZXRWaWV3KG9DdXJyZW50UGFnZSk7XG5cdFx0XHRyZXR1cm4gS2VlcEFsaXZlSGVscGVyLnJlc3RvcmVWaWV3KG9UYXJnZXRWaWV3KTtcblx0XHR9KTtcblx0fVxuXG5cdF9nZXRDdXJyZW50UGFnZShvVmlldzogYW55KSB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuXHRcdFx0Y29uc3Qgb05hdkNvbnRhaW5lciA9IG9WaWV3LmJ5SWQoXCJhcHBDb250ZW50XCIpO1xuXHRcdFx0Y29uc3Qgb0N1cnJlbnRQYWdlID0gb05hdkNvbnRhaW5lci5nZXRDdXJyZW50UGFnZSgpO1xuXHRcdFx0aWYgKFxuXHRcdFx0XHRvQ3VycmVudFBhZ2UgJiZcblx0XHRcdFx0b0N1cnJlbnRQYWdlLmdldENvbnRyb2xsZXIgJiZcblx0XHRcdFx0b0N1cnJlbnRQYWdlLmdldENvbnRyb2xsZXIoKS5pc1BsYWNlaG9sZGVyICYmXG5cdFx0XHRcdG9DdXJyZW50UGFnZS5nZXRDb250cm9sbGVyKCkuaXNQbGFjZWhvbGRlcigpXG5cdFx0XHQpIHtcblx0XHRcdFx0b0N1cnJlbnRQYWdlLmdldENvbnRyb2xsZXIoKS5hdHRhY2hFdmVudE9uY2UoXCJ0YXJnZXRQYWdlSW5zZXJ0ZWRJbkNvbnRhaW5lclwiLCBmdW5jdGlvbiAob0V2ZW50OiBhbnkpIHtcblx0XHRcdFx0XHRjb25zdCBvVGFyZ2V0UGFnZSA9IG9FdmVudC5nZXRQYXJhbWV0ZXIoXCJ0YXJnZXRwYWdlXCIpO1xuXHRcdFx0XHRcdGNvbnN0IG9UYXJnZXRWaWV3ID0gQ29tbW9uVXRpbHMuZ2V0VGFyZ2V0VmlldyhvVGFyZ2V0UGFnZSk7XG5cdFx0XHRcdFx0cmVzb2x2ZShvVGFyZ2V0VmlldyAhPT0gb1ZpZXcgJiYgb1RhcmdldFZpZXcpO1xuXHRcdFx0XHR9KTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGNvbnN0IG9UYXJnZXRWaWV3ID0gQ29tbW9uVXRpbHMuZ2V0VGFyZ2V0VmlldyhvQ3VycmVudFBhZ2UpO1xuXHRcdFx0XHRyZXNvbHZlKG9UYXJnZXRWaWV3ICE9PSBvVmlldyAmJiBvVGFyZ2V0Vmlldyk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQHByaXZhdGVcblx0ICogQG5hbWUgc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuTmF2Q29udGFpbmVyLmdldE1ldGFkYXRhXG5cdCAqIEBmdW5jdGlvblxuXHQgKi9cblxuXHRfZ2V0TmF2Q29udGFpbmVyKCkge1xuXHRcdHJldHVybiB0aGlzLmdldFZpZXcoKS5nZXRDb250ZW50KClbMF07XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2sgaWYgdGhlIEZDTCBjb21wb25lbnQgaXMgZW5hYmxlZC5cblx0ICpcblx0ICogQGZ1bmN0aW9uXG5cdCAqIEBuYW1lIHNhcC5mZS50ZW1wbGF0ZXMuUm9vdENvbnRhaW5lci5jb250cm9sbGVyLk5hdkNvbnRhaW5lci5jb250cm9sbGVyI2lzRmNsRW5hYmxlZFxuXHQgKiBAbWVtYmVyb2Ygc2FwLmZlLnRlbXBsYXRlcy5Sb290Q29udGFpbmVyLmNvbnRyb2xsZXIuTmF2Q29udGFpbmVyLmNvbnRyb2xsZXJcblx0ICogQHJldHVybnMge2Jvb2xlYW59IGBmYWxzZWAgc2luY2Ugd2UgYXJlIG5vdCBpbiBGQ0wgc2NlbmFyaW9cblx0ICpcblx0ICogQHVpNS1yZXN0cmljdGVkXG5cdCAqIEBmaW5hbFxuXHQgKi9cblx0aXNGY2xFbmFibGVkKCkge1xuXHRcdHJldHVybiBmYWxzZTtcblx0fVxuXG5cdF9zY3JvbGxUYWJsZXNUb0xhc3ROYXZpZ2F0ZWRJdGVtcygpIHtcblx0XHQvLyBEbyBub3RoaW5nXG5cdH1cblxuXHRkaXNwbGF5TWVzc2FnZVBhZ2Uoc0Vycm9yTWVzc2FnZTogYW55LCBtUGFyYW1ldGVyczogYW55KTogUHJvbWlzZTxib29sZWFuPiB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlOiBhbnksIHJlamVjdDogYW55KSA9PiB7XG5cdFx0XHR0cnkge1xuXHRcdFx0XHRjb25zdCBvTmF2Q29udGFpbmVyID0gdGhpcy5fZ2V0TmF2Q29udGFpbmVyKCkgYXMgTmF2Q29udGFpbmVyO1xuXG5cdFx0XHRcdGlmICghdGhpcy5vTWVzc2FnZVBhZ2UpIHtcblx0XHRcdFx0XHR0aGlzLm9NZXNzYWdlUGFnZSA9IG5ldyBNZXNzYWdlUGFnZSh7XG5cdFx0XHRcdFx0XHRzaG93SGVhZGVyOiBmYWxzZSxcblx0XHRcdFx0XHRcdGljb246IFwic2FwLWljb246Ly9tZXNzYWdlLWVycm9yXCJcblx0XHRcdFx0XHR9KTtcblxuXHRcdFx0XHRcdG9OYXZDb250YWluZXIuYWRkUGFnZSh0aGlzLm9NZXNzYWdlUGFnZSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR0aGlzLm9NZXNzYWdlUGFnZS5zZXRUZXh0KHNFcnJvck1lc3NhZ2UpO1xuXG5cdFx0XHRcdGlmIChtUGFyYW1ldGVycy50ZWNobmljYWxNZXNzYWdlKSB7XG5cdFx0XHRcdFx0dGhpcy5vTWVzc2FnZVBhZ2Uuc2V0Q3VzdG9tRGVzY3JpcHRpb24oXG5cdFx0XHRcdFx0XHRuZXcgTGluayh7XG5cdFx0XHRcdFx0XHRcdHRleHQ6IG1QYXJhbWV0ZXJzLmRlc2NyaXB0aW9uIHx8IG1QYXJhbWV0ZXJzLnRlY2huaWNhbE1lc3NhZ2UsXG5cdFx0XHRcdFx0XHRcdHByZXNzOiBmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0XHRcdFx0TWVzc2FnZUJveC5zaG93KG1QYXJhbWV0ZXJzLnRlY2huaWNhbE1lc3NhZ2UsIHtcblx0XHRcdFx0XHRcdFx0XHRcdGljb246IEljb24uRVJST1IsXG5cdFx0XHRcdFx0XHRcdFx0XHR0aXRsZTogbVBhcmFtZXRlcnMudGl0bGUsXG5cdFx0XHRcdFx0XHRcdFx0XHRhY3Rpb25zOiBbQWN0aW9uLk9LXSxcblx0XHRcdFx0XHRcdFx0XHRcdGRlZmF1bHRBY3Rpb246IEFjdGlvbi5PSyxcblx0XHRcdFx0XHRcdFx0XHRcdGRldGFpbHM6IG1QYXJhbWV0ZXJzLnRlY2huaWNhbERldGFpbHMgfHwgXCJcIixcblx0XHRcdFx0XHRcdFx0XHRcdGNvbnRlbnRXaWR0aDogXCI2MCVcIlxuXHRcdFx0XHRcdFx0XHRcdH0gYXMgYW55KTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fSlcblx0XHRcdFx0XHQpO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHRoaXMub01lc3NhZ2VQYWdlLnNldERlc2NyaXB0aW9uKG1QYXJhbWV0ZXJzLmRlc2NyaXB0aW9uIHx8IFwiXCIpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0aWYgKG1QYXJhbWV0ZXJzLmhhbmRsZVNoZWxsQmFjaykge1xuXHRcdFx0XHRcdGNvbnN0IG9FcnJvck9yaWdpblBhZ2UgPSBvTmF2Q29udGFpbmVyLmdldEN1cnJlbnRQYWdlKCksXG5cdFx0XHRcdFx0XHRvQXBwQ29tcG9uZW50ID0gQ29tbW9uVXRpbHMuZ2V0QXBwQ29tcG9uZW50KG9OYXZDb250YWluZXIuZ2V0Q3VycmVudFBhZ2UoKSk7XG5cdFx0XHRcdFx0b0FwcENvbXBvbmVudC5nZXRTaGVsbFNlcnZpY2VzKCkuc2V0QmFja05hdmlnYXRpb24oZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdFx0KG9OYXZDb250YWluZXIgYXMgYW55KS50byhvRXJyb3JPcmlnaW5QYWdlLmdldElkKCkpO1xuXHRcdFx0XHRcdFx0b0FwcENvbXBvbmVudC5nZXRTaGVsbFNlcnZpY2VzKCkuc2V0QmFja05hdmlnYXRpb24oKTtcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fVxuXHRcdFx0XHRvTmF2Q29udGFpbmVyLmF0dGFjaEFmdGVyTmF2aWdhdGUoZnVuY3Rpb24gKCkge1xuXHRcdFx0XHRcdHJlc29sdmUodHJ1ZSk7XG5cdFx0XHRcdH0pO1xuXHRcdFx0XHQob05hdkNvbnRhaW5lciBhcyBhbnkpLnRvKHRoaXMub01lc3NhZ2VQYWdlLmdldElkKCkpO1xuXHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRyZWplY3QoZmFsc2UpO1xuXHRcdFx0XHRMb2cuaW5mbyhlIGFzIGFueSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTmF2Q29udGFpbmVyQ29udHJvbGxlcjtcbiJdfQ==
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import Log from "sap/base/Log";
|
|
2
|
+
import CommonUtils from "sap/fe/core/CommonUtils";
|
|
3
|
+
import ViewState from "sap/fe/core/controllerextensions/ViewState";
|
|
4
|
+
import { defineUI5Class, usingExtension } from "sap/fe/core/helpers/ClassSupport";
|
|
5
|
+
import KeepAliveHelper from "sap/fe/core/helpers/KeepAliveHelper";
|
|
6
|
+
import Link from "sap/m/Link";
|
|
7
|
+
import MessageBox, { Action, Icon } from "sap/m/MessageBox";
|
|
8
|
+
import MessagePage from "sap/m/MessagePage";
|
|
9
|
+
import NavContainer from "sap/m/NavContainer";
|
|
10
|
+
import JSONModel from "sap/ui/model/json/JSONModel";
|
|
11
|
+
import BaseController from "./RootContainerBaseController";
|
|
12
|
+
|
|
13
|
+
@defineUI5Class("sap.fe.templates.RootContainer.controller.NavContainer")
|
|
14
|
+
class NavContainerController extends BaseController {
|
|
15
|
+
@usingExtension(
|
|
16
|
+
ViewState.override({
|
|
17
|
+
applyInitialStateOnly: function () {
|
|
18
|
+
return false;
|
|
19
|
+
},
|
|
20
|
+
adaptBindingRefreshControls: function (this: ViewState, aControls: any) {
|
|
21
|
+
const oView = this.getView(),
|
|
22
|
+
oController = oView.getController() as NavContainerController;
|
|
23
|
+
aControls.push(oController._getCurrentPage(oView));
|
|
24
|
+
},
|
|
25
|
+
adaptStateControls: function (this: ViewState, aStateControls: any) {
|
|
26
|
+
const oView = this.getView(),
|
|
27
|
+
oController = oView.getController() as NavContainerController;
|
|
28
|
+
aStateControls.push(oController._getCurrentPage(oView));
|
|
29
|
+
},
|
|
30
|
+
onRestore: function (this: ViewState) {
|
|
31
|
+
const oView = this.getView(),
|
|
32
|
+
oNavContainer = oView.byId("appContent"),
|
|
33
|
+
oController = oView.getController() as NavContainerController;
|
|
34
|
+
const oInternalModel = oNavContainer.getModel("internal") as JSONModel;
|
|
35
|
+
const oPages = oInternalModel.getProperty("/pages");
|
|
36
|
+
|
|
37
|
+
for (const sComponentId in oPages) {
|
|
38
|
+
oInternalModel.setProperty("/pages/" + sComponentId + "/restoreStatus", "pending");
|
|
39
|
+
}
|
|
40
|
+
oController.onContainerReady();
|
|
41
|
+
},
|
|
42
|
+
onSuspend: function (this: ViewState) {
|
|
43
|
+
const oView = this.getView(),
|
|
44
|
+
oNavContainer = oView.byId("appContent") as NavContainer;
|
|
45
|
+
const aPages = oNavContainer.getPages();
|
|
46
|
+
aPages.forEach(function (oPage: any) {
|
|
47
|
+
const oTargetView = CommonUtils.getTargetView(oPage);
|
|
48
|
+
|
|
49
|
+
const oController = oTargetView && oTargetView.getController();
|
|
50
|
+
if (oController && oController.viewState && oController.viewState.onSuspend) {
|
|
51
|
+
return oController.viewState.onSuspend();
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
})
|
|
56
|
+
)
|
|
57
|
+
viewState!: ViewState;
|
|
58
|
+
private oMessagePage?: MessagePage;
|
|
59
|
+
|
|
60
|
+
onContainerReady() {
|
|
61
|
+
// Restore views if neccessary.
|
|
62
|
+
const oView = this.getView(),
|
|
63
|
+
oPagePromise = this._getCurrentPage(oView);
|
|
64
|
+
|
|
65
|
+
return oPagePromise.then(function (oCurrentPage: any) {
|
|
66
|
+
const oTargetView = CommonUtils.getTargetView(oCurrentPage);
|
|
67
|
+
return KeepAliveHelper.restoreView(oTargetView);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
_getCurrentPage(oView: any) {
|
|
72
|
+
return new Promise(function (resolve: (value: any) => void) {
|
|
73
|
+
const oNavContainer = oView.byId("appContent");
|
|
74
|
+
const oCurrentPage = oNavContainer.getCurrentPage();
|
|
75
|
+
if (
|
|
76
|
+
oCurrentPage &&
|
|
77
|
+
oCurrentPage.getController &&
|
|
78
|
+
oCurrentPage.getController().isPlaceholder &&
|
|
79
|
+
oCurrentPage.getController().isPlaceholder()
|
|
80
|
+
) {
|
|
81
|
+
oCurrentPage.getController().attachEventOnce("targetPageInsertedInContainer", function (oEvent: any) {
|
|
82
|
+
const oTargetPage = oEvent.getParameter("targetpage");
|
|
83
|
+
const oTargetView = CommonUtils.getTargetView(oTargetPage);
|
|
84
|
+
resolve(oTargetView !== oView && oTargetView);
|
|
85
|
+
});
|
|
86
|
+
} else {
|
|
87
|
+
const oTargetView = CommonUtils.getTargetView(oCurrentPage);
|
|
88
|
+
resolve(oTargetView !== oView && oTargetView);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* @private
|
|
95
|
+
* @name sap.fe.templates.RootContainer.controller.NavContainer.getMetadata
|
|
96
|
+
* @function
|
|
97
|
+
*/
|
|
98
|
+
|
|
99
|
+
_getNavContainer() {
|
|
100
|
+
return this.getView().getContent()[0];
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Check if the FCL component is enabled.
|
|
105
|
+
*
|
|
106
|
+
* @function
|
|
107
|
+
* @name sap.fe.templates.RootContainer.controller.NavContainer.controller#isFclEnabled
|
|
108
|
+
* @memberof sap.fe.templates.RootContainer.controller.NavContainer.controller
|
|
109
|
+
* @returns {boolean} `false` since we are not in FCL scenario
|
|
110
|
+
*
|
|
111
|
+
* @ui5-restricted
|
|
112
|
+
* @final
|
|
113
|
+
*/
|
|
114
|
+
isFclEnabled() {
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
_scrollTablesToLastNavigatedItems() {
|
|
119
|
+
// Do nothing
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
displayMessagePage(sErrorMessage: any, mParameters: any): Promise<boolean> {
|
|
123
|
+
return new Promise((resolve: any, reject: any) => {
|
|
124
|
+
try {
|
|
125
|
+
const oNavContainer = this._getNavContainer() as NavContainer;
|
|
126
|
+
|
|
127
|
+
if (!this.oMessagePage) {
|
|
128
|
+
this.oMessagePage = new MessagePage({
|
|
129
|
+
showHeader: false,
|
|
130
|
+
icon: "sap-icon://message-error"
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
oNavContainer.addPage(this.oMessagePage);
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
this.oMessagePage.setText(sErrorMessage);
|
|
137
|
+
|
|
138
|
+
if (mParameters.technicalMessage) {
|
|
139
|
+
this.oMessagePage.setCustomDescription(
|
|
140
|
+
new Link({
|
|
141
|
+
text: mParameters.description || mParameters.technicalMessage,
|
|
142
|
+
press: function () {
|
|
143
|
+
MessageBox.show(mParameters.technicalMessage, {
|
|
144
|
+
icon: Icon.ERROR,
|
|
145
|
+
title: mParameters.title,
|
|
146
|
+
actions: [Action.OK],
|
|
147
|
+
defaultAction: Action.OK,
|
|
148
|
+
details: mParameters.technicalDetails || "",
|
|
149
|
+
contentWidth: "60%"
|
|
150
|
+
} as any);
|
|
151
|
+
}
|
|
152
|
+
})
|
|
153
|
+
);
|
|
154
|
+
} else {
|
|
155
|
+
this.oMessagePage.setDescription(mParameters.description || "");
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
if (mParameters.handleShellBack) {
|
|
159
|
+
const oErrorOriginPage = oNavContainer.getCurrentPage(),
|
|
160
|
+
oAppComponent = CommonUtils.getAppComponent(oNavContainer.getCurrentPage());
|
|
161
|
+
oAppComponent.getShellServices().setBackNavigation(function () {
|
|
162
|
+
(oNavContainer as any).to(oErrorOriginPage.getId());
|
|
163
|
+
oAppComponent.getShellServices().setBackNavigation();
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
oNavContainer.attachAfterNavigate(function () {
|
|
167
|
+
resolve(true);
|
|
168
|
+
});
|
|
169
|
+
(oNavContainer as any).to(this.oMessagePage.getId());
|
|
170
|
+
} catch (e) {
|
|
171
|
+
reject(false);
|
|
172
|
+
Log.info(e as any);
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
export default NavContainerController;
|