@sapui5/sap.fe.core 1.98.0 → 1.99.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 +3 -2
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/AnnotationHelper.js +377 -405
- package/src/sap/fe/core/AnnotationHelper.ts +385 -0
- package/src/sap/fe/core/AppComponent.js +3 -2
- package/src/sap/fe/core/AppStateHandler.js +229 -181
- package/src/sap/fe/core/AppStateHandler.ts +171 -0
- package/src/sap/fe/core/BaseController.js +3 -2
- package/src/sap/fe/core/BusyLocker.js +105 -121
- package/src/sap/fe/core/BusyLocker.ts +98 -0
- package/src/sap/fe/core/CommonUtils.js +2073 -2399
- package/src/sap/fe/core/CommonUtils.ts +2078 -0
- package/src/sap/fe/core/ExtensionAPI.js +3 -2
- package/src/sap/fe/core/PageController.js +84 -125
- package/src/sap/fe/core/PageController.ts +101 -0
- package/src/sap/fe/core/RouterProxy.js +986 -823
- package/src/sap/fe/core/RouterProxy.ts +838 -0
- package/src/sap/fe/core/Synchronization.js +51 -35
- package/src/sap/fe/core/Synchronization.ts +29 -0
- package/src/sap/fe/core/TemplateComponent.js +173 -164
- package/src/sap/fe/core/TemplateComponent.ts +166 -0
- package/src/sap/fe/core/TemplateModel.js +97 -54
- package/src/sap/fe/core/TemplateModel.ts +63 -0
- package/src/sap/fe/core/TransactionHelper.js +1576 -1664
- package/src/sap/fe/core/TransactionHelper.ts +1706 -0
- package/src/sap/fe/core/actions/draft.js +559 -608
- package/src/sap/fe/core/actions/draft.ts +593 -0
- package/src/sap/fe/core/actions/messageHandling.js +545 -514
- package/src/sap/fe/core/actions/messageHandling.ts +532 -0
- package/src/sap/fe/core/actions/nonDraft.js +17 -19
- package/src/sap/fe/core/actions/nonDraft.ts +12 -0
- package/src/sap/fe/core/actions/operations.js +1074 -1215
- package/src/sap/fe/core/actions/operations.ts +1162 -0
- package/src/sap/fe/core/actions/sticky.js +102 -105
- package/src/sap/fe/core/actions/sticky.ts +102 -0
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +3 -2
- package/src/sap/fe/core/controllerextensions/EditFlow.js +54 -211
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +3 -2
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +279 -11
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +8 -6
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +47 -45
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +2 -3
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +29 -26
- package/src/sap/fe/core/controllerextensions/MassEdit.js +101 -8
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +17 -8
- package/src/sap/fe/core/controllerextensions/PageReady.js +2 -2
- package/src/sap/fe/core/controllerextensions/PageReady.ts +12 -8
- package/src/sap/fe/core/controllerextensions/Paginator.js +3 -2
- package/src/sap/fe/core/controllerextensions/Placeholder.js +3 -2
- package/src/sap/fe/core/controllerextensions/Routing.js +9 -4
- package/src/sap/fe/core/controllerextensions/RoutingListener.js +3 -2
- package/src/sap/fe/core/controllerextensions/Share.js +3 -2
- package/src/sap/fe/core/controllerextensions/SideEffects.js +3 -3
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +18 -18
- package/src/sap/fe/core/controllerextensions/ViewState.js +3 -2
- package/src/sap/fe/core/controls/CommandExecution.js +3 -2
- package/src/sap/fe/core/controls/ConditionalWrapper.js +3 -2
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +3 -2
- package/src/sap/fe/core/controls/FieldWrapper.js +11 -22
- package/src/sap/fe/core/controls/FilterBar.js +3 -2
- package/src/sap/fe/core/controls/FormElementWrapper.js +3 -2
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +3 -2
- package/src/sap/fe/core/controls/NonComputedVisibleKeyFieldsDialog.fragment.xml +1 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +3 -2
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +5 -4
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -2
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +3 -2
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +3 -2
- package/src/sap/fe/core/converters/ConverterContext.js +2 -2
- package/src/sap/fe/core/converters/ConverterContext.ts +4 -3
- package/src/sap/fe/core/converters/ManifestSettings.js +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +1 -0
- package/src/sap/fe/core/converters/ManifestWrapper.js +39 -26
- package/src/sap/fe/core/converters/ManifestWrapper.ts +9 -0
- package/src/sap/fe/core/converters/MetaModelConverter.js +11 -8
- package/src/sap/fe/core/converters/MetaModelConverter.ts +16 -16
- package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.ts +2 -2
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +17 -13
- package/src/sap/fe/core/converters/controls/Common/Action.js +2 -2
- package/src/sap/fe/core/converters/controls/Common/Action.ts +2 -2
- package/src/sap/fe/core/converters/controls/Common/Chart.js +5 -3
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +11 -3
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +3 -3
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +2 -2
- package/src/sap/fe/core/converters/controls/Common/Form.js +4 -2
- package/src/sap/fe/core/converters/controls/Common/Form.ts +16 -2
- package/src/sap/fe/core/converters/controls/Common/Table.js +250 -146
- package/src/sap/fe/core/converters/controls/Common/Table.ts +300 -167
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +115 -56
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +120 -74
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +467 -32
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +483 -54
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +6 -6
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +9 -15
- package/src/sap/fe/core/converters/helpers/Aggregation.js +13 -5
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +20 -5
- package/src/sap/fe/core/converters/helpers/IssueManager.js +4 -1
- package/src/sap/fe/core/converters/helpers/IssueManager.ts +3 -0
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +4 -4
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +3 -3
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +13 -6
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +26 -15
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +3 -2
- package/src/sap/fe/core/formatters/CriticalityFormatter.js +1 -1
- package/src/sap/fe/core/formatters/CriticalityFormatter.ts +1 -1
- package/src/sap/fe/core/formatters/FPMFormatter.js +1 -1
- package/src/sap/fe/core/formatters/FPMFormatter.ts +4 -10
- package/src/sap/fe/core/formatters/KPIFormatter.js +1 -1
- package/src/sap/fe/core/formatters/KPIFormatter.ts +3 -1
- package/src/sap/fe/core/formatters/TableFormatter.js +39 -28
- package/src/sap/fe/core/formatters/TableFormatter.ts +43 -28
- package/src/sap/fe/core/formatters/ValueFormatter.js +1 -1
- package/src/sap/fe/core/formatters/ValueFormatter.ts +7 -6
- package/src/sap/fe/core/fpm/Component.js +3 -2
- package/src/sap/fe/core/helpers/AppStartupHelper.js +2 -2
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +7 -4
- package/src/sap/fe/core/helpers/BindingExpression.js +314 -355
- package/src/sap/fe/core/helpers/BindingExpression.ts +317 -391
- package/src/sap/fe/core/helpers/ClassSupport.js +27 -15
- package/src/sap/fe/core/helpers/ClassSupport.ts +31 -20
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +63 -59
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +56 -0
- package/src/sap/fe/core/helpers/EditState.js +81 -84
- package/src/sap/fe/core/helpers/EditState.ts +81 -0
- package/src/sap/fe/core/helpers/ExcelFormatHelper.js +62 -48
- package/src/sap/fe/core/helpers/ExcelFormatHelper.ts +49 -0
- package/src/sap/fe/core/helpers/FPMHelper.js +52 -56
- package/src/sap/fe/core/helpers/FPMHelper.ts +62 -0
- package/src/sap/fe/core/helpers/KeepAliveHelper.js +3 -4
- package/src/sap/fe/core/helpers/KeepAliveHelper.ts +9 -9
- package/src/sap/fe/core/helpers/MassEditHelper.js +27 -18
- package/src/sap/fe/core/helpers/ModelHelper.js +229 -225
- package/src/sap/fe/core/helpers/ModelHelper.ts +227 -0
- package/src/sap/fe/core/helpers/PasteHelper.js +210 -132
- package/src/sap/fe/core/helpers/PasteHelper.ts +196 -0
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +332 -313
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +330 -0
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +66 -67
- package/src/sap/fe/core/helpers/SemanticKeyHelper.ts +73 -0
- package/src/sap/fe/core/helpers/StableIdHelper.js +4 -7
- package/src/sap/fe/core/helpers/StableIdHelper.ts +2 -6
- package/src/sap/fe/core/jsx-runtime/jsx.js +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.ts +1 -1
- package/src/sap/fe/core/library.js +4 -3
- package/src/sap/fe/core/library.support.js +3 -2
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +1 -1
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +1 -1
- package/src/sap/fe/core/messagebundle.properties +23 -10
- package/src/sap/fe/core/messagebundle_ar.properties +9 -0
- package/src/sap/fe/core/messagebundle_bg.properties +9 -0
- package/src/sap/fe/core/messagebundle_ca.properties +9 -0
- package/src/sap/fe/core/messagebundle_cs.properties +10 -1
- package/src/sap/fe/core/messagebundle_cy.properties +9 -0
- package/src/sap/fe/core/messagebundle_da.properties +9 -0
- package/src/sap/fe/core/messagebundle_de.properties +9 -0
- package/src/sap/fe/core/messagebundle_el.properties +9 -0
- package/src/sap/fe/core/messagebundle_en.properties +9 -0
- package/src/sap/fe/core/messagebundle_en_GB.properties +9 -0
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +9 -0
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +9 -0
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +9 -0
- package/src/sap/fe/core/messagebundle_es.properties +9 -0
- package/src/sap/fe/core/messagebundle_es_MX.properties +9 -0
- package/src/sap/fe/core/messagebundle_et.properties +9 -0
- package/src/sap/fe/core/messagebundle_fi.properties +9 -0
- package/src/sap/fe/core/messagebundle_fr.properties +13 -4
- package/src/sap/fe/core/messagebundle_fr_CA.properties +15 -6
- package/src/sap/fe/core/messagebundle_hi.properties +15 -6
- package/src/sap/fe/core/messagebundle_hr.properties +15 -6
- package/src/sap/fe/core/messagebundle_hu.properties +9 -0
- package/src/sap/fe/core/messagebundle_id.properties +10 -1
- package/src/sap/fe/core/messagebundle_it.properties +9 -0
- package/src/sap/fe/core/messagebundle_iw.properties +9 -0
- package/src/sap/fe/core/messagebundle_ja.properties +9 -0
- package/src/sap/fe/core/messagebundle_kk.properties +15 -6
- package/src/sap/fe/core/messagebundle_ko.properties +9 -0
- package/src/sap/fe/core/messagebundle_lt.properties +9 -0
- package/src/sap/fe/core/messagebundle_lv.properties +15 -6
- package/src/sap/fe/core/messagebundle_ms.properties +14 -5
- package/src/sap/fe/core/messagebundle_nl.properties +9 -0
- package/src/sap/fe/core/messagebundle_no.properties +9 -0
- package/src/sap/fe/core/messagebundle_pl.properties +9 -0
- package/src/sap/fe/core/messagebundle_pt.properties +9 -0
- package/src/sap/fe/core/messagebundle_pt_PT.properties +9 -0
- package/src/sap/fe/core/messagebundle_ro.properties +9 -0
- package/src/sap/fe/core/messagebundle_ru.properties +9 -0
- package/src/sap/fe/core/messagebundle_sh.properties +11 -2
- package/src/sap/fe/core/messagebundle_sk.properties +9 -0
- package/src/sap/fe/core/messagebundle_sl.properties +15 -6
- package/src/sap/fe/core/messagebundle_sv.properties +9 -0
- package/src/sap/fe/core/messagebundle_th.properties +9 -0
- package/src/sap/fe/core/messagebundle_tr.properties +9 -0
- package/src/sap/fe/core/messagebundle_uk.properties +9 -0
- package/src/sap/fe/core/messagebundle_vi.properties +9 -0
- package/src/sap/fe/core/messagebundle_zh_CN.properties +9 -0
- package/src/sap/fe/core/messagebundle_zh_TW.properties +15 -6
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +1 -1
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.ts +3 -1
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +269 -202
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +212 -0
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +1 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +7 -6
- package/src/sap/fe/core/services/NavigationServiceFactory.js +406 -300
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +316 -0
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +149 -81
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +80 -0
- package/src/sap/fe/core/services/RoutingServiceFactory.js +987 -899
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +898 -0
- package/src/sap/fe/core/services/ShellServicesFactory.js +1 -1
- package/src/sap/fe/core/services/ShellServicesFactory.ts +15 -10
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +35 -81
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +46 -94
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +461 -487
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +453 -0
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +10 -8
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +8 -0
- package/src/sap/fe/core/support/AnnotationIssue.support.js +15 -3
- package/src/sap/fe/core/support/AnnotationIssue.support.ts +16 -2
- package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.js +2 -2
- package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.ts +1 -1
- package/src/sap/fe/core/templating/FieldControlHelper.js +8 -8
- package/src/sap/fe/core/templating/FieldControlHelper.ts +25 -7
- package/src/sap/fe/core/templating/FilterHelper.js +138 -72
- package/src/sap/fe/core/templating/FilterHelper.ts +139 -71
- package/src/sap/fe/core/templating/UIFormatters.js +31 -1
- package/src/sap/fe/core/templating/UIFormatters.ts +33 -2
- package/src/sap/fe/core/type/Email.js +1 -1
- package/src/sap/fe/core/type/Email.ts +4 -6
- package/ui5.yaml +0 -3
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* SAPUI5
|
|
3
|
-
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
(c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
|
+
|
|
4
5
|
*/
|
|
5
6
|
sap.ui.define(
|
|
6
7
|
[
|
|
7
8
|
"sap/ui/core/mvc/ControllerExtension",
|
|
8
9
|
"sap/ui/core/mvc/OverrideExecution",
|
|
9
|
-
"sap/fe/core/actions/sticky",
|
|
10
10
|
"sap/base/Log",
|
|
11
11
|
"sap/m/Text",
|
|
12
12
|
"sap/m/Button",
|
|
@@ -25,7 +25,6 @@ sap.ui.define(
|
|
|
25
25
|
function(
|
|
26
26
|
ControllerExtension,
|
|
27
27
|
OverrideExecution,
|
|
28
|
-
sticky,
|
|
29
28
|
Log,
|
|
30
29
|
Text,
|
|
31
30
|
Button,
|
|
@@ -58,7 +57,7 @@ sap.ui.define(
|
|
|
58
57
|
DraftStatus = FELibrary.DraftStatus,
|
|
59
58
|
EditMode = FELibrary.EditMode;
|
|
60
59
|
|
|
61
|
-
|
|
60
|
+
return ControllerExtension.extend("sap.fe.core.controllerextensions.EditFlow", {
|
|
62
61
|
metadata: {
|
|
63
62
|
methods: {
|
|
64
63
|
editDocument: { "public": true, "final": true },
|
|
@@ -269,7 +268,7 @@ sap.ui.define(
|
|
|
269
268
|
(mParameters.creationMode !== CreationMode.Inline &&
|
|
270
269
|
mParameters.creationMode !== CreationMode.CreationRow &&
|
|
271
270
|
mParameters.creationMode !== CreationMode.External),
|
|
272
|
-
|
|
271
|
+
oExecCustomValidation = Promise.resolve([]),
|
|
273
272
|
oAppComponent = CommonUtils.getAppComponent(this.getView());
|
|
274
273
|
oAppComponent.getRouterProxy().removeIAppStateKey();
|
|
275
274
|
|
|
@@ -285,27 +284,17 @@ sap.ui.define(
|
|
|
285
284
|
}
|
|
286
285
|
|
|
287
286
|
if (mParameters.creationMode === CreationMode.CreationRow && mParameters.creationRow) {
|
|
287
|
+
var oCreationRowObjects = mParameters.creationRow.getBindingContext().getObject();
|
|
288
|
+
delete oCreationRowObjects["@$ui5.context.isTransient"];
|
|
288
289
|
oTable = mParameters.creationRow.getParent();
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
sCustomValidationFunction.length
|
|
298
|
-
),
|
|
299
|
-
oCreationRowObjects = mParameters.creationRow.getBindingContext().getObject();
|
|
300
|
-
delete oCreationRowObjects["@$ui5.context.isTransient"];
|
|
301
|
-
oExecFunctionFromManifestPromise = FPMHelper.validationWrapper(
|
|
302
|
-
sModule,
|
|
303
|
-
sFunctionName,
|
|
304
|
-
oCreationRowObjects,
|
|
305
|
-
that.base.getView(),
|
|
306
|
-
oTable.getBindingContext("internal")
|
|
307
|
-
);
|
|
308
|
-
}
|
|
290
|
+
oExecCustomValidation = transactionHelper.validateDocument(
|
|
291
|
+
oTable.getBindingContext(),
|
|
292
|
+
{
|
|
293
|
+
data: oCreationRowObjects,
|
|
294
|
+
customValidationFunction: oTable.getCreationRow().data("customValidationFunction")
|
|
295
|
+
},
|
|
296
|
+
that.base.getView()
|
|
297
|
+
);
|
|
309
298
|
|
|
310
299
|
// disableAddRowButtonForEmptyData is set to false in manifest converter (Table.ts) if customValidationFunction exists
|
|
311
300
|
if (oTable.getCreationRow().data("disableAddRowButtonForEmptyData") === "true") {
|
|
@@ -420,7 +409,7 @@ sap.ui.define(
|
|
|
420
409
|
}
|
|
421
410
|
|
|
422
411
|
bShouldBusyLock && BusyLocker.lock(oLockObject);
|
|
423
|
-
return this._syncTask(
|
|
412
|
+
return this._syncTask(oExecCustomValidation)
|
|
424
413
|
.then(function(aValidationMessages) {
|
|
425
414
|
if (aValidationMessages.length > 0) {
|
|
426
415
|
createCustomValidationMessages(aValidationMessages);
|
|
@@ -476,7 +465,11 @@ sap.ui.define(
|
|
|
476
465
|
}
|
|
477
466
|
}
|
|
478
467
|
var sMetaPath = oMetaModel.getMetaPath(oListBinding.getHeaderContext().getPath());
|
|
479
|
-
var aNonComputedVisibleKeyFields = CommonUtils.getNonComputedVisibleFields(
|
|
468
|
+
var aNonComputedVisibleKeyFields = CommonUtils.getNonComputedVisibleFields(
|
|
469
|
+
oMetaModel,
|
|
470
|
+
sMetaPath,
|
|
471
|
+
that.getView()
|
|
472
|
+
);
|
|
480
473
|
if (aNonComputedVisibleKeyFields.length > 0) {
|
|
481
474
|
return CreationMode.Deferred;
|
|
482
475
|
}
|
|
@@ -525,21 +518,15 @@ sap.ui.define(
|
|
|
525
518
|
if (!mParameters.parentControl) {
|
|
526
519
|
mParameters.parentControl = that.getView();
|
|
527
520
|
}
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
)
|
|
538
|
-
)
|
|
539
|
-
.catch(function(oError) {
|
|
540
|
-
Log.error("Error while creating the document", oError);
|
|
541
|
-
return Promise.reject();
|
|
542
|
-
});
|
|
521
|
+
mParameters.beforeCreateCallBack = that.base.editFlow.onBeforeCreate;
|
|
522
|
+
return transactionHelper.createDocument(
|
|
523
|
+
oListBinding,
|
|
524
|
+
mParameters,
|
|
525
|
+
oResourceBundle,
|
|
526
|
+
that._getMessageHandler(),
|
|
527
|
+
false,
|
|
528
|
+
that.getView()
|
|
529
|
+
);
|
|
543
530
|
});
|
|
544
531
|
}
|
|
545
532
|
|
|
@@ -583,7 +570,7 @@ sap.ui.define(
|
|
|
583
570
|
});
|
|
584
571
|
break;
|
|
585
572
|
case CreationMode.Inline:
|
|
586
|
-
|
|
573
|
+
handleSideEffects(oListBinding, oCreation);
|
|
587
574
|
that._syncTask(oCreation);
|
|
588
575
|
break;
|
|
589
576
|
case CreationMode.CreationRow:
|
|
@@ -706,7 +693,8 @@ sap.ui.define(
|
|
|
706
693
|
* This function is meant to be individually overridden by consuming controllers, but not to be called directly.
|
|
707
694
|
* The override execution is: {@link sap.ui.core.mvc.OverrideExecution.After}.
|
|
708
695
|
* @param {map} [mParameters] Object containing the parameters passed to onBeforeCreate
|
|
709
|
-
* @param {string} [mParameters.contextPath] Path pointing to the context on which
|
|
696
|
+
* @param {string} [mParameters.contextPath] Path pointing to the context on which Create action is triggered
|
|
697
|
+
* @param {Array} [mParameters.createParameters] Array of values that are filled in the Action Parameter Dialog
|
|
710
698
|
* @returns {Promise} A promise to be returned by the overridden method. If resolved, the 'Create' action is triggered. If rejected, the 'Create' action is not triggered.
|
|
711
699
|
* @memberof sap.fe.core.controllerextensions.EditFlow
|
|
712
700
|
* @alias sap.fe.core.controllerextensions.EditFlow#onBeforeCreate
|
|
@@ -1213,6 +1201,7 @@ sap.ui.define(
|
|
|
1213
1201
|
*/
|
|
1214
1202
|
if (mParameters.contexts) {
|
|
1215
1203
|
EditState.setEditStateDirty();
|
|
1204
|
+
that._getInternalModel().setProperty("/sCustomAction", sActionName);
|
|
1216
1205
|
}
|
|
1217
1206
|
if (mParameters.isNavigable) {
|
|
1218
1207
|
var vContext = oResponse;
|
|
@@ -1498,140 +1487,31 @@ sap.ui.define(
|
|
|
1498
1487
|
},
|
|
1499
1488
|
|
|
1500
1489
|
_handleStickyOn: function(oContext) {
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
var sHashTracker = oAppComponent.getRouterProxy().getHash(),
|
|
1506
|
-
oInternalModel = this._getInternalModel();
|
|
1507
|
-
|
|
1508
|
-
// Set a guard in the RouterProxy
|
|
1509
|
-
// A timeout is necessary, as with deferred creation the hashChanger is not updated yet with
|
|
1510
|
-
// the new hash, and the guard cannot be found in the managed history of the router proxy
|
|
1511
|
-
setTimeout(function() {
|
|
1512
|
-
oAppComponent.getRouterProxy().setNavigationGuard();
|
|
1513
|
-
}, 0);
|
|
1514
|
-
|
|
1515
|
-
// Setting back navigation on shell service, to get the dicard message box in case of sticky
|
|
1516
|
-
oAppComponent.getShellServices().setBackNavigation(that._onBackNavigationInSession.bind(that));
|
|
1517
|
-
|
|
1518
|
-
this.fnDirtyStateProvider = function(oNavigationContext) {
|
|
1519
|
-
var sTargetHash = oNavigationContext.innerAppRoute,
|
|
1520
|
-
oRouterProxy = oAppComponent.getRouterProxy(),
|
|
1521
|
-
bDirty,
|
|
1522
|
-
bSessionON = oInternalModel.getProperty("/sessionOn");
|
|
1523
|
-
|
|
1524
|
-
if (!bSessionON) {
|
|
1525
|
-
// If the sticky session was terminated before hand.
|
|
1526
|
-
// Eexample in case of navigating away from application using IBN.
|
|
1527
|
-
return;
|
|
1528
|
-
}
|
|
1529
|
-
|
|
1530
|
-
if (!oRouterProxy.isNavigationFinalized()) {
|
|
1531
|
-
// If navigation is currently happening in RouterProxy, it's a transient state
|
|
1532
|
-
// (not dirty)
|
|
1533
|
-
bDirty = false;
|
|
1534
|
-
sHashTracker = sTargetHash;
|
|
1535
|
-
} else if (sHashTracker === sTargetHash) {
|
|
1536
|
-
// the hash didn't change so either the user attempts to refresh or to leave the app
|
|
1537
|
-
bDirty = true;
|
|
1538
|
-
} else if (oRouterProxy.checkHashWithGuard(sTargetHash) || oRouterProxy.isGuardCrossAllowedByUser()) {
|
|
1539
|
-
// the user attempts to navigate within the root object
|
|
1540
|
-
// or crossing the guard has already been allowed by the RouterProxy
|
|
1541
|
-
sHashTracker = sTargetHash;
|
|
1542
|
-
bDirty = false;
|
|
1543
|
-
} else {
|
|
1544
|
-
// the user attempts to navigate within the app, for example back to the list report
|
|
1545
|
-
bDirty = true;
|
|
1546
|
-
}
|
|
1547
|
-
|
|
1548
|
-
if (bDirty) {
|
|
1549
|
-
// the FLP doesn't call the dirty state provider anymore once it's dirty, as they can't
|
|
1550
|
-
// change this due to compatibility reasons we set it back to not-dirty
|
|
1551
|
-
setTimeout(function() {
|
|
1552
|
-
oAppComponent.getShellServices().setDirtyFlag(false);
|
|
1553
|
-
}, 0);
|
|
1554
|
-
}
|
|
1555
|
-
|
|
1556
|
-
return bDirty;
|
|
1557
|
-
};
|
|
1558
|
-
|
|
1559
|
-
oAppComponent.getShellServices().registerDirtyStateProvider(this.fnDirtyStateProvider);
|
|
1560
|
-
|
|
1561
|
-
var i18nModel = this.getView().getModel("sap.fe.i18n");
|
|
1562
|
-
|
|
1563
|
-
this.fnHandleSessionTimeout = function() {
|
|
1564
|
-
// remove transient messages since we will showing our own message
|
|
1565
|
-
that._getMessageHandler().removeTransitionMessages();
|
|
1566
|
-
|
|
1567
|
-
var oDialog = new Dialog({
|
|
1568
|
-
title: "{sap.fe.i18n>C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_TITLE}",
|
|
1569
|
-
state: "Warning",
|
|
1570
|
-
content: new Text({ text: "{sap.fe.i18n>C_EDITFLOW_OBJECT_PAGE_SESSION_EXPIRED_DIALOG_MESSAGE}" }),
|
|
1571
|
-
beginButton: new Button({
|
|
1572
|
-
text: "{sap.fe.i18n>C_COMMON_DIALOG_OK}",
|
|
1573
|
-
type: "Emphasized",
|
|
1574
|
-
press: function() {
|
|
1575
|
-
// remove sticky handling after navigation since session has already been terminated
|
|
1576
|
-
that._handleStickyOff();
|
|
1577
|
-
that._getRoutingListener().navigateBackFromContext(oContext);
|
|
1578
|
-
}
|
|
1579
|
-
}),
|
|
1580
|
-
afterClose: function() {
|
|
1581
|
-
oDialog.destroy();
|
|
1582
|
-
}
|
|
1583
|
-
});
|
|
1584
|
-
oDialog.addStyleClass("sapUiContentPadding");
|
|
1585
|
-
oDialog.setModel(i18nModel, "sap.fe.i18n");
|
|
1586
|
-
that.getView().addDependent(oDialog);
|
|
1587
|
-
oDialog.open();
|
|
1588
|
-
};
|
|
1589
|
-
// handle session timeout
|
|
1590
|
-
this.getView()
|
|
1591
|
-
.getModel()
|
|
1592
|
-
.attachSessionTimeout(this.fnHandleSessionTimeout);
|
|
1593
|
-
|
|
1594
|
-
this._fnStickyDiscardAfterNavigation = function() {
|
|
1595
|
-
var sCurrentHash = oAppComponent.getRouterProxy().getHash();
|
|
1596
|
-
// either current hash is empty so the user left the app or he navigated away from the object
|
|
1597
|
-
if (!sCurrentHash || !oAppComponent.getRouterProxy().checkHashWithGuard(sCurrentHash)) {
|
|
1598
|
-
that._discardStickySession(oContext);
|
|
1599
|
-
}
|
|
1600
|
-
};
|
|
1601
|
-
oAppComponent.getRoutingService().attachRouteMatched(this._fnStickyDiscardAfterNavigation);
|
|
1602
|
-
}
|
|
1490
|
+
return this.base
|
|
1491
|
+
.getView()
|
|
1492
|
+
.getController()
|
|
1493
|
+
._editFlow.handleStickyOn(oContext);
|
|
1603
1494
|
},
|
|
1604
1495
|
|
|
1605
1496
|
_handleStickyOff: function() {
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
oAppComponent.getRouterProxy().discardNavigationGuard();
|
|
1612
|
-
}
|
|
1613
|
-
|
|
1614
|
-
if (this.fnDirtyStateProvider) {
|
|
1615
|
-
oAppComponent.getShellServices().deregisterDirtyStateProvider(this.fnDirtyStateProvider);
|
|
1616
|
-
this.fnDirtyStateProvider = null;
|
|
1617
|
-
}
|
|
1618
|
-
|
|
1619
|
-
if (this.getView().getModel() && this.fnHandleSessionTimeout) {
|
|
1620
|
-
this.getView()
|
|
1621
|
-
.getModel()
|
|
1622
|
-
.detachSessionTimeout(this.fnHandleSessionTimeout);
|
|
1623
|
-
}
|
|
1624
|
-
|
|
1625
|
-
oAppComponent.getRoutingService().detachRouteMatched(this._fnStickyDiscardAfterNavigation);
|
|
1626
|
-
this._fnStickyDiscardAfterNavigation = null;
|
|
1497
|
+
return this.base
|
|
1498
|
+
.getView()
|
|
1499
|
+
.getController()
|
|
1500
|
+
._editFlow.handleStickyOff();
|
|
1501
|
+
},
|
|
1627
1502
|
|
|
1628
|
-
|
|
1503
|
+
_onBackNavigationInSession: function() {
|
|
1504
|
+
return this.base
|
|
1505
|
+
.getView()
|
|
1506
|
+
.getController()
|
|
1507
|
+
._editFlow.onBackNavigationInSession();
|
|
1508
|
+
},
|
|
1629
1509
|
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1634
|
-
|
|
1510
|
+
_discardStickySession: function(oContext) {
|
|
1511
|
+
return this.base
|
|
1512
|
+
.getView()
|
|
1513
|
+
.getController()
|
|
1514
|
+
._editFlow.discardStickySession(oContext);
|
|
1635
1515
|
},
|
|
1636
1516
|
|
|
1637
1517
|
_handleNewContext: function(oContext, bEditable, bRecreateContext, bDraftNavigation, bForceFocus) {
|
|
@@ -1689,41 +1569,6 @@ sap.ui.define(
|
|
|
1689
1569
|
});
|
|
1690
1570
|
},
|
|
1691
1571
|
|
|
1692
|
-
/**
|
|
1693
|
-
* @description Method to display a 'discard' popover when exiting a sticky session.
|
|
1694
|
-
*
|
|
1695
|
-
* @function
|
|
1696
|
-
* @name _onBackNavigationInSession
|
|
1697
|
-
* @memberof sap.fe.core.controllerextensions.EditFlow
|
|
1698
|
-
*/
|
|
1699
|
-
_onBackNavigationInSession: function() {
|
|
1700
|
-
var that = this,
|
|
1701
|
-
oView = that.getView(),
|
|
1702
|
-
oAppComponent = CommonUtils.getAppComponent(oView),
|
|
1703
|
-
oRouterProxy = oAppComponent.getRouterProxy();
|
|
1704
|
-
|
|
1705
|
-
if (oRouterProxy.checkIfBackIsOutOfGuard()) {
|
|
1706
|
-
var oBindingContext = oView && oView.getBindingContext();
|
|
1707
|
-
|
|
1708
|
-
CommonUtils.processDataLossConfirmation(
|
|
1709
|
-
function() {
|
|
1710
|
-
that._discardStickySession(oBindingContext);
|
|
1711
|
-
history.back();
|
|
1712
|
-
},
|
|
1713
|
-
oView,
|
|
1714
|
-
that._getProgrammingModel(oBindingContext)
|
|
1715
|
-
);
|
|
1716
|
-
|
|
1717
|
-
return;
|
|
1718
|
-
}
|
|
1719
|
-
history.back();
|
|
1720
|
-
},
|
|
1721
|
-
|
|
1722
|
-
_discardStickySession: function(oContext) {
|
|
1723
|
-
sticky.discardDocument(oContext);
|
|
1724
|
-
this._handleStickyOff();
|
|
1725
|
-
},
|
|
1726
|
-
|
|
1727
1572
|
/**
|
|
1728
1573
|
* @function
|
|
1729
1574
|
* @name _refreshListIfRequired
|
|
@@ -1823,7 +1668,5 @@ sap.ui.define(
|
|
|
1823
1668
|
});
|
|
1824
1669
|
}
|
|
1825
1670
|
});
|
|
1826
|
-
|
|
1827
|
-
return Extension;
|
|
1828
1671
|
}
|
|
1829
1672
|
);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* SAPUI5
|
|
3
|
-
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
(c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
4
|
+
|
|
4
5
|
*/
|
|
5
6
|
sap.ui.define(["sap/ui/core/mvc/ControllerExtension", "sap/ui/core/mvc/OverrideExecution"], function(
|
|
6
7
|
ControllerExtension,
|