@sapui5/sap.fe.core 1.99.0 → 1.100.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 -2
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/AnnotationHelper.js +1 -69
- package/src/sap/fe/core/AnnotationHelper.ts +0 -70
- package/src/sap/fe/core/AppComponent.js +388 -399
- package/src/sap/fe/core/AppComponent.ts +403 -0
- package/src/sap/fe/core/AppStateHandler.js +127 -158
- package/src/sap/fe/core/BaseController.js +82 -58
- package/src/sap/fe/core/BaseController.ts +68 -0
- package/src/sap/fe/core/CommonUtils.js +111 -20
- package/src/sap/fe/core/CommonUtils.ts +131 -32
- package/src/sap/fe/core/ExtensionAPI.js +278 -274
- package/src/sap/fe/core/ExtensionAPI.ts +250 -0
- package/src/sap/fe/core/PageController.js +157 -29
- package/src/sap/fe/core/PageController.ts +60 -32
- package/src/sap/fe/core/RouterProxy.js +694 -756
- package/src/sap/fe/core/RouterProxy.ts +11 -9
- package/src/sap/fe/core/Synchronization.js +21 -31
- package/src/sap/fe/core/TemplateComponent.js +1 -1
- package/src/sap/fe/core/TemplateComponent.ts +10 -3
- package/src/sap/fe/core/TemplateModel.js +20 -38
- package/src/sap/fe/core/TemplateModel.ts +1 -1
- package/src/sap/fe/core/TransactionHelper.js +1354 -1370
- package/src/sap/fe/core/TransactionHelper.ts +33 -22
- package/src/sap/fe/core/actions/collaboration/ActivitySync.js +392 -0
- package/src/sap/fe/core/actions/collaboration/ActivitySync.ts +355 -0
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.js +136 -0
- package/src/sap/fe/core/actions/collaboration/CollaborationCommon.ts +119 -0
- package/src/sap/fe/core/actions/collaboration/Manage.js +262 -0
- package/src/sap/fe/core/actions/collaboration/Manage.ts +244 -0
- package/src/sap/fe/core/actions/collaboration/ManageDialog.fragment.xml +103 -0
- package/src/sap/fe/core/actions/collaboration/UserDetails.fragment.xml +13 -0
- package/src/sap/fe/core/actions/draft.js +30 -68
- package/src/sap/fe/core/actions/draft.ts +44 -71
- package/src/sap/fe/core/actions/messageHandling.js +55 -36
- package/src/sap/fe/core/actions/messageHandling.ts +66 -46
- package/src/sap/fe/core/actions/operations.js +34 -15
- package/src/sap/fe/core/actions/operations.ts +48 -18
- package/src/sap/fe/core/actions/sticky.js +17 -4
- package/src/sap/fe/core/actions/sticky.ts +21 -4
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.js +69 -66
- package/src/sap/fe/core/controllerextensions/ControllerExtensionMetadata.ts +65 -0
- package/src/sap/fe/core/controllerextensions/EditFlow.js +1593 -1669
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +1672 -0
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +79 -54
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +61 -0
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +718 -779
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +783 -0
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +796 -816
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +803 -0
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +1004 -1005
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +978 -0
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +487 -521
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +2 -2
- package/src/sap/fe/core/controllerextensions/MassEdit.js +141 -169
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +156 -0
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +233 -244
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +225 -0
- package/src/sap/fe/core/controllerextensions/PageReady.js +301 -336
- package/src/sap/fe/core/controllerextensions/PageReady.ts +12 -10
- package/src/sap/fe/core/controllerextensions/Paginator.js +188 -175
- package/src/sap/fe/core/controllerextensions/Paginator.ts +163 -0
- package/src/sap/fe/core/controllerextensions/Placeholder.js +157 -149
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +151 -0
- package/src/sap/fe/core/controllerextensions/Routing.js +144 -125
- package/src/sap/fe/core/controllerextensions/Routing.ts +132 -0
- package/src/sap/fe/core/controllerextensions/RoutingListener.js +7 -6
- package/src/sap/fe/core/controllerextensions/RoutingListener.ts +3 -0
- package/src/sap/fe/core/controllerextensions/Share.js +230 -268
- package/src/sap/fe/core/controllerextensions/Share.ts +231 -0
- package/src/sap/fe/core/controllerextensions/SideEffects.js +592 -633
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +8 -7
- package/src/sap/fe/core/controllerextensions/ViewState.js +788 -806
- package/src/sap/fe/core/controllerextensions/ViewState.ts +805 -0
- package/src/sap/fe/core/controls/ActionParameterDialog.fragment.xml +2 -2
- package/src/sap/fe/core/controls/ActionPartial.fragment.xml +2 -2
- package/src/sap/fe/core/controls/CommandExecution.js +67 -66
- package/src/sap/fe/core/controls/CommandExecution.ts +72 -0
- package/src/sap/fe/core/controls/ConditionalWrapper.js +90 -75
- package/src/sap/fe/core/controls/ConditionalWrapper.ts +83 -0
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +130 -125
- package/src/sap/fe/core/controls/CustomQuickViewPage.ts +126 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +103 -112
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.ts +101 -0
- package/src/sap/fe/core/controls/FieldWrapper.js +122 -135
- package/src/sap/fe/core/controls/FieldWrapper.ts +115 -0
- package/src/sap/fe/core/controls/FilterBar.js +162 -159
- package/src/sap/fe/core/controls/FilterBar.ts +143 -0
- package/src/sap/fe/core/controls/FormElementWrapper.js +45 -39
- package/src/sap/fe/core/controls/FormElementWrapper.ts +40 -0
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +37 -42
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.ts +31 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +126 -116
- package/src/sap/fe/core/controls/filterbar/FilterContainer.ts +98 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +241 -255
- package/src/sap/fe/core/controls/filterbar/VisualFilter.ts +245 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +150 -141
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.ts +125 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +335 -322
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +337 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +74 -74
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +70 -0
- package/src/sap/fe/core/converters/ConverterContext.js +348 -379
- package/src/sap/fe/core/converters/ConverterContext.ts +19 -16
- package/src/sap/fe/core/converters/ManifestSettings.js +12 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +12 -1
- package/src/sap/fe/core/converters/ManifestWrapper.js +354 -378
- package/src/sap/fe/core/converters/ManifestWrapper.ts +10 -0
- package/src/sap/fe/core/converters/MetaModelConverter.js +6 -4
- package/src/sap/fe/core/converters/MetaModelConverter.ts +5 -2
- package/src/sap/fe/core/converters/TemplateConverter.js +1 -1
- package/src/sap/fe/core/converters/TemplateConverter.ts +2 -1
- package/src/sap/fe/core/converters/annotations/DataField.js +26 -12
- package/src/sap/fe/core/converters/annotations/DataField.ts +37 -13
- package/src/sap/fe/core/converters/controls/Common/Form.js +2 -2
- package/src/sap/fe/core/converters/controls/Common/Form.ts +4 -2
- package/src/sap/fe/core/converters/controls/Common/KPI.js +1 -1
- package/src/sap/fe/core/converters/controls/Common/KPI.ts +3 -2
- package/src/sap/fe/core/converters/controls/Common/Table.js +130 -23
- package/src/sap/fe/core/converters/controls/Common/Table.ts +134 -29
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +118 -53
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +156 -93
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +161 -207
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +148 -206
- package/src/sap/fe/core/converters/helpers/Aggregation.js +115 -133
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +20 -6
- package/src/sap/fe/core/converters/helpers/BindingHelper.ts +16 -4
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +12 -1
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.ts +11 -0
- package/src/sap/fe/core/converters/helpers/Key.js +42 -57
- package/src/sap/fe/core/converters/helpers/Key.ts +1 -1
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +25 -4
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +20 -3
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +10 -4
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +15 -4
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +7 -5
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +5 -1
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +92 -98
- package/src/sap/fe/core/designtime/AppComponent.designtime.ts +91 -0
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +104 -0
- package/src/sap/fe/core/formatters/CollaborationFormatter.ts +60 -0
- package/src/sap/fe/core/formatters/TableFormatter.js +53 -2
- package/src/sap/fe/core/formatters/TableFormatter.ts +51 -0
- package/src/sap/fe/core/fpm/Component.js +50 -54
- package/src/sap/fe/core/fpm/Component.ts +48 -0
- package/src/sap/fe/core/helpers/AppStartupHelper.js +323 -309
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +363 -337
- package/src/sap/fe/core/helpers/BindingExpression.js +7 -7
- package/src/sap/fe/core/helpers/BindingExpression.ts +7 -7
- package/src/sap/fe/core/helpers/ClassSupport.js +186 -62
- package/src/sap/fe/core/helpers/ClassSupport.ts +168 -52
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +5 -4
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.ts +1 -5
- package/src/sap/fe/core/helpers/FPMHelper.js +1 -1
- package/src/sap/fe/core/helpers/FPMHelper.ts +1 -1
- package/src/sap/fe/core/helpers/MassEditHelper.js +601 -684
- package/src/sap/fe/core/helpers/MassEditHelper.ts +699 -0
- package/src/sap/fe/core/helpers/ModelHelper.js +25 -1
- package/src/sap/fe/core/helpers/ModelHelper.ts +23 -0
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +5 -1
- package/src/sap/fe/core/helpers/SemanticDateOperators.ts +4 -0
- package/src/sap/fe/core/library.js +426 -451
- package/src/sap/fe/core/library.support.js +22 -33
- package/src/sap/fe/core/library.support.ts +23 -0
- package/src/sap/fe/core/library.ts +420 -0
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +5 -3
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.ts +4 -1
- package/src/sap/fe/core/messagebundle.properties +22 -5
- package/src/sap/fe/core/messagebundle_ar.properties +27 -7
- package/src/sap/fe/core/messagebundle_bg.properties +27 -7
- package/src/sap/fe/core/messagebundle_ca.properties +27 -7
- package/src/sap/fe/core/messagebundle_cs.properties +27 -7
- package/src/sap/fe/core/messagebundle_cy.properties +27 -7
- package/src/sap/fe/core/messagebundle_da.properties +27 -7
- package/src/sap/fe/core/messagebundle_de.properties +27 -7
- package/src/sap/fe/core/messagebundle_el.properties +27 -7
- package/src/sap/fe/core/messagebundle_en.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_GB.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +27 -7
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +27 -7
- package/src/sap/fe/core/messagebundle_es.properties +27 -7
- package/src/sap/fe/core/messagebundle_es_MX.properties +27 -7
- package/src/sap/fe/core/messagebundle_et.properties +27 -7
- package/src/sap/fe/core/messagebundle_fi.properties +28 -8
- package/src/sap/fe/core/messagebundle_fr.properties +28 -8
- package/src/sap/fe/core/messagebundle_fr_CA.properties +29 -9
- package/src/sap/fe/core/messagebundle_hi.properties +27 -7
- package/src/sap/fe/core/messagebundle_hr.properties +27 -7
- package/src/sap/fe/core/messagebundle_hu.properties +27 -7
- package/src/sap/fe/core/messagebundle_id.properties +27 -7
- package/src/sap/fe/core/messagebundle_it.properties +27 -7
- package/src/sap/fe/core/messagebundle_iw.properties +27 -7
- package/src/sap/fe/core/messagebundle_ja.properties +26 -6
- package/src/sap/fe/core/messagebundle_kk.properties +27 -7
- package/src/sap/fe/core/messagebundle_ko.properties +27 -7
- package/src/sap/fe/core/messagebundle_lt.properties +27 -7
- package/src/sap/fe/core/messagebundle_lv.properties +28 -8
- package/src/sap/fe/core/messagebundle_ms.properties +27 -7
- package/src/sap/fe/core/messagebundle_nl.properties +27 -7
- package/src/sap/fe/core/messagebundle_no.properties +27 -7
- package/src/sap/fe/core/messagebundle_pl.properties +27 -7
- package/src/sap/fe/core/messagebundle_pt.properties +28 -8
- package/src/sap/fe/core/messagebundle_pt_PT.properties +27 -7
- package/src/sap/fe/core/messagebundle_ro.properties +27 -7
- package/src/sap/fe/core/messagebundle_ru.properties +27 -7
- package/src/sap/fe/core/messagebundle_sh.properties +27 -7
- package/src/sap/fe/core/messagebundle_sk.properties +27 -7
- package/src/sap/fe/core/messagebundle_sl.properties +27 -7
- package/src/sap/fe/core/messagebundle_sv.properties +27 -7
- package/src/sap/fe/core/messagebundle_th.properties +26 -6
- package/src/sap/fe/core/messagebundle_tr.properties +30 -10
- package/src/sap/fe/core/messagebundle_uk.properties +27 -7
- package/src/sap/fe/core/messagebundle_vi.properties +27 -7
- package/src/sap/fe/core/messagebundle_zh_CN.properties +27 -7
- package/src/sap/fe/core/messagebundle_zh_TW.properties +27 -7
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +45 -71
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +154 -192
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.ts +4 -4
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +66 -92
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +1 -1
- package/src/sap/fe/core/services/NavigationServiceFactory.js +284 -339
- package/src/sap/fe/core/services/NavigationServiceFactory.ts +10 -13
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +67 -102
- package/src/sap/fe/core/services/ResourceModelServiceFactory.ts +5 -2
- package/src/sap/fe/core/services/RoutingServiceFactory.js +754 -814
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +13 -13
- package/src/sap/fe/core/services/ShellServicesFactory.js +649 -736
- package/src/sap/fe/core/services/ShellServicesFactory.ts +7 -4
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +567 -592
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +22 -3
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +354 -386
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +21 -14
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +1 -1
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.ts +1 -1
- package/src/sap/fe/core/support/CommonHelper.js +1 -1
- package/src/sap/fe/core/support/CommonHelper.ts +1 -1
- package/src/sap/fe/core/support/Diagnostics.js +36 -48
- package/src/sap/fe/core/templating/DataModelPathHelper.js +93 -85
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +104 -95
- package/src/sap/fe/core/templating/FilterHelper.js +25 -32
- package/src/sap/fe/core/templating/FilterHelper.ts +36 -35
- package/src/sap/fe/core/templating/PropertyHelper.js +2 -2
- package/src/sap/fe/core/templating/PropertyHelper.ts +1 -1
- package/src/sap/fe/core/templating/UIFormatters.js +32 -26
- package/src/sap/fe/core/templating/UIFormatters.ts +37 -24
|
@@ -1,42 +1,48 @@
|
|
|
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/ui/core/Control"
|
|
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
|
-
|
|
5
|
+
sap.ui.define(["sap/ui/core/Control"], function (Control) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
var FormElementWrapper = Control.extend("sap.fe.core.controls.FormElementWrapper", {
|
|
9
|
+
metadata: {
|
|
10
|
+
interfaces: ["sap.ui.core.IFormContent"],
|
|
11
|
+
properties: {
|
|
12
|
+
width: {
|
|
13
|
+
type: "sap.ui.core.CSSSize",
|
|
14
|
+
defaultValue: null
|
|
15
|
+
},
|
|
16
|
+
formDoNotAdjustWidth: {
|
|
17
|
+
type: "boolean",
|
|
18
|
+
defaultValue: false
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
defaultAggregation: "content",
|
|
22
|
+
aggregations: {
|
|
23
|
+
content: {
|
|
24
|
+
type: "sap.ui.core.Control",
|
|
25
|
+
multiple: false
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
getAccessibilityInfo: function () {
|
|
30
|
+
var oContent = this.getContent();
|
|
31
|
+
return oContent && oContent.getAccessibilityInfo ? oContent.getAccessibilityInfo() : {};
|
|
32
|
+
},
|
|
33
|
+
renderer: {
|
|
34
|
+
apiVersion: 2,
|
|
35
|
+
render: function (oRm, oControl) {
|
|
36
|
+
oRm.openStart("div", oControl);
|
|
37
|
+
oRm.style("min-height", "1rem");
|
|
38
|
+
oRm.style("width", oControl.getWidth());
|
|
39
|
+
oRm.openEnd();
|
|
40
|
+
oRm.renderControl(oControl.getContent()); // render the child Control
|
|
41
|
+
|
|
42
|
+
oRm.close("div"); // end of the complete Control
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
return FormElementWrapper;
|
|
47
|
+
}, false);
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZvcm1FbGVtZW50V3JhcHBlci50cyJdLCJuYW1lcyI6WyJGb3JtRWxlbWVudFdyYXBwZXIiLCJDb250cm9sIiwiZXh0ZW5kIiwibWV0YWRhdGEiLCJpbnRlcmZhY2VzIiwicHJvcGVydGllcyIsIndpZHRoIiwidHlwZSIsImRlZmF1bHRWYWx1ZSIsImZvcm1Eb05vdEFkanVzdFdpZHRoIiwiZGVmYXVsdEFnZ3JlZ2F0aW9uIiwiYWdncmVnYXRpb25zIiwiY29udGVudCIsIm11bHRpcGxlIiwiZ2V0QWNjZXNzaWJpbGl0eUluZm8iLCJvQ29udGVudCIsImdldENvbnRlbnQiLCJyZW5kZXJlciIsImFwaVZlcnNpb24iLCJyZW5kZXIiLCJvUm0iLCJvQ29udHJvbCIsIm9wZW5TdGFydCIsInN0eWxlIiwiZ2V0V2lkdGgiLCJvcGVuRW5kIiwicmVuZGVyQ29udHJvbCIsImNsb3NlIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFDQTtBQUNBOzs7O0FBR0EsTUFBTUEsa0JBQWtCLEdBQUdDLE9BQU8sQ0FBQ0MsTUFBUixDQUFlLHlDQUFmLEVBQTBEO0FBQ3BGQyxJQUFBQSxRQUFRLEVBQUU7QUFDVEMsTUFBQUEsVUFBVSxFQUFFLENBQUMsMEJBQUQsQ0FESDtBQUVUQyxNQUFBQSxVQUFVLEVBQUU7QUFDWEMsUUFBQUEsS0FBSyxFQUFFO0FBQ05DLFVBQUFBLElBQUksRUFBRSxxQkFEQTtBQUVOQyxVQUFBQSxZQUFZLEVBQUU7QUFGUixTQURJO0FBS1hDLFFBQUFBLG9CQUFvQixFQUFFO0FBQ3JCRixVQUFBQSxJQUFJLEVBQUUsU0FEZTtBQUVyQkMsVUFBQUEsWUFBWSxFQUFFO0FBRk87QUFMWCxPQUZIO0FBWVRFLE1BQUFBLGtCQUFrQixFQUFFLFNBWlg7QUFhVEMsTUFBQUEsWUFBWSxFQUFFO0FBQ2JDLFFBQUFBLE9BQU8sRUFBRTtBQUFFTCxVQUFBQSxJQUFJLEVBQUUscUJBQVI7QUFBK0JNLFVBQUFBLFFBQVEsRUFBRTtBQUF6QztBQURJO0FBYkwsS0FEMEU7QUFrQnBGQyxJQUFBQSxvQkFBb0IsRUFBRSxZQUF1QztBQUM1RCxVQUFNQyxRQUFRLEdBQUcsS0FBS0MsVUFBTCxFQUFqQjtBQUNBLGFBQU9ELFFBQVEsSUFBSUEsUUFBUSxDQUFDRCxvQkFBckIsR0FBNENDLFFBQVEsQ0FBQ0Qsb0JBQVQsRUFBNUMsR0FBOEUsRUFBckY7QUFDQSxLQXJCbUY7QUFzQnBGRyxJQUFBQSxRQUFRLEVBQUU7QUFDVEMsTUFBQUEsVUFBVSxFQUFFLENBREg7QUFFVEMsTUFBQUEsTUFBTSxFQUFFLFVBQVNDLEdBQVQsRUFBbUJDLFFBQW5CLEVBQWtDO0FBQ3pDRCxRQUFBQSxHQUFHLENBQUNFLFNBQUosQ0FBYyxLQUFkLEVBQXFCRCxRQUFyQjtBQUNBRCxRQUFBQSxHQUFHLENBQUNHLEtBQUosQ0FBVSxZQUFWLEVBQXdCLE1BQXhCO0FBQ0FILFFBQUFBLEdBQUcsQ0FBQ0csS0FBSixDQUFVLE9BQVYsRUFBbUJGLFFBQVEsQ0FBQ0csUUFBVCxFQUFuQjtBQUNBSixRQUFBQSxHQUFHLENBQUNLLE9BQUo7QUFDQUwsUUFBQUEsR0FBRyxDQUFDTSxhQUFKLENBQWtCTCxRQUFRLENBQUNMLFVBQVQsRUFBbEIsRUFMeUMsQ0FLQzs7QUFDMUNJLFFBQUFBLEdBQUcsQ0FBQ08sS0FBSixDQUFVLEtBQVYsRUFOeUMsQ0FNdkI7QUFDbEI7QUFUUTtBQXRCMEUsR0FBMUQsQ0FBM0I7U0FrQ2UzQixrQiIsInNvdXJjZVJvb3QiOiIuIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IENvbnRyb2wgZnJvbSBcInNhcC91aS9jb3JlL0NvbnRyb2xcIjtcblxudHlwZSBGb3JtRWxlbWVudFdyYXBwZXJUeXBlID0ge1xuXHRnZXRDb250ZW50KCk6IENvbnRyb2w7XG59O1xuY29uc3QgRm9ybUVsZW1lbnRXcmFwcGVyID0gQ29udHJvbC5leHRlbmQoXCJzYXAuZmUuY29yZS5jb250cm9scy5Gb3JtRWxlbWVudFdyYXBwZXJcIiwge1xuXHRtZXRhZGF0YToge1xuXHRcdGludGVyZmFjZXM6IFtcInNhcC51aS5jb3JlLklGb3JtQ29udGVudFwiXSxcblx0XHRwcm9wZXJ0aWVzOiB7XG5cdFx0XHR3aWR0aDoge1xuXHRcdFx0XHR0eXBlOiBcInNhcC51aS5jb3JlLkNTU1NpemVcIixcblx0XHRcdFx0ZGVmYXVsdFZhbHVlOiBudWxsXG5cdFx0XHR9LFxuXHRcdFx0Zm9ybURvTm90QWRqdXN0V2lkdGg6IHtcblx0XHRcdFx0dHlwZTogXCJib29sZWFuXCIsXG5cdFx0XHRcdGRlZmF1bHRWYWx1ZTogZmFsc2Vcblx0XHRcdH1cblx0XHR9LFxuXHRcdGRlZmF1bHRBZ2dyZWdhdGlvbjogXCJjb250ZW50XCIsXG5cdFx0YWdncmVnYXRpb25zOiB7XG5cdFx0XHRjb250ZW50OiB7IHR5cGU6IFwic2FwLnVpLmNvcmUuQ29udHJvbFwiLCBtdWx0aXBsZTogZmFsc2UgfVxuXHRcdH1cblx0fSxcblx0Z2V0QWNjZXNzaWJpbGl0eUluZm86IGZ1bmN0aW9uKHRoaXM6IEZvcm1FbGVtZW50V3JhcHBlclR5cGUpIHtcblx0XHRjb25zdCBvQ29udGVudCA9IHRoaXMuZ2V0Q29udGVudCgpO1xuXHRcdHJldHVybiBvQ29udGVudCAmJiBvQ29udGVudC5nZXRBY2Nlc3NpYmlsaXR5SW5mbyA/IG9Db250ZW50LmdldEFjY2Vzc2liaWxpdHlJbmZvKCkgOiB7fTtcblx0fSxcblx0cmVuZGVyZXI6IHtcblx0XHRhcGlWZXJzaW9uOiAyLFxuXHRcdHJlbmRlcjogZnVuY3Rpb24ob1JtOiBhbnksIG9Db250cm9sOiBhbnkpIHtcblx0XHRcdG9SbS5vcGVuU3RhcnQoXCJkaXZcIiwgb0NvbnRyb2wpO1xuXHRcdFx0b1JtLnN0eWxlKFwibWluLWhlaWdodFwiLCBcIjFyZW1cIik7XG5cdFx0XHRvUm0uc3R5bGUoXCJ3aWR0aFwiLCBvQ29udHJvbC5nZXRXaWR0aCgpKTtcblx0XHRcdG9SbS5vcGVuRW5kKCk7XG5cdFx0XHRvUm0ucmVuZGVyQ29udHJvbChvQ29udHJvbC5nZXRDb250ZW50KCkpOyAvLyByZW5kZXIgdGhlIGNoaWxkIENvbnRyb2xcblx0XHRcdG9SbS5jbG9zZShcImRpdlwiKTsgLy8gZW5kIG9mIHRoZSBjb21wbGV0ZSBDb250cm9sXG5cdFx0fVxuXHR9XG59KTtcbmV4cG9ydCBkZWZhdWx0IEZvcm1FbGVtZW50V3JhcHBlcjtcbiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import Control from "sap/ui/core/Control";
|
|
2
|
+
|
|
3
|
+
type FormElementWrapperType = {
|
|
4
|
+
getContent(): Control;
|
|
5
|
+
};
|
|
6
|
+
const FormElementWrapper = Control.extend("sap.fe.core.controls.FormElementWrapper", {
|
|
7
|
+
metadata: {
|
|
8
|
+
interfaces: ["sap.ui.core.IFormContent"],
|
|
9
|
+
properties: {
|
|
10
|
+
width: {
|
|
11
|
+
type: "sap.ui.core.CSSSize",
|
|
12
|
+
defaultValue: null
|
|
13
|
+
},
|
|
14
|
+
formDoNotAdjustWidth: {
|
|
15
|
+
type: "boolean",
|
|
16
|
+
defaultValue: false
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
defaultAggregation: "content",
|
|
20
|
+
aggregations: {
|
|
21
|
+
content: { type: "sap.ui.core.Control", multiple: false }
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
getAccessibilityInfo: function(this: FormElementWrapperType) {
|
|
25
|
+
const oContent = this.getContent();
|
|
26
|
+
return oContent && oContent.getAccessibilityInfo ? oContent.getAccessibilityInfo() : {};
|
|
27
|
+
},
|
|
28
|
+
renderer: {
|
|
29
|
+
apiVersion: 2,
|
|
30
|
+
render: function(oRm: any, oControl: any) {
|
|
31
|
+
oRm.openStart("div", oControl);
|
|
32
|
+
oRm.style("min-height", "1rem");
|
|
33
|
+
oRm.style("width", oControl.getWidth());
|
|
34
|
+
oRm.openEnd();
|
|
35
|
+
oRm.renderControl(oControl.getContent()); // render the child Control
|
|
36
|
+
oRm.close("div"); // end of the complete Control
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
export default FormElementWrapper;
|
|
@@ -1,46 +1,41 @@
|
|
|
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
|
-
|
|
7
|
-
|
|
8
|
-
// ---------------------------------------------------------------------------------------
|
|
9
|
-
// ---------------------------------------------------------------------------------------
|
|
10
|
-
/* eslint-disable no-console */
|
|
11
|
-
sap.ui.define(
|
|
12
|
-
["sap/ui/mdc/field/MultiValueFieldDelegate"],
|
|
13
|
-
function(MultiValueFieldDelegate) {
|
|
14
|
-
"use strict";
|
|
15
|
-
var oMultiValueFieldDelegate = Object.assign({}, MultiValueFieldDelegate, {
|
|
16
|
-
_transformConditions: function(aConditions, sKeyPath, sDescriptionPath) {
|
|
17
|
-
var aTransformedItems = [];
|
|
18
|
-
for (var i = 0; i < aConditions.length; i++) {
|
|
19
|
-
var oItem = {};
|
|
20
|
-
var oCondition = aConditions[i];
|
|
21
|
-
oItem[sKeyPath] = oCondition.values[0];
|
|
22
|
-
if (sDescriptionPath) {
|
|
23
|
-
oItem[sDescriptionPath] = oCondition.values[1];
|
|
24
|
-
}
|
|
25
|
-
aTransformedItems.push(oItem);
|
|
26
|
-
}
|
|
27
|
-
return aTransformedItems;
|
|
28
|
-
},
|
|
29
|
-
updateItems: function(oPayload, aConditions, oMultiValueField) {
|
|
30
|
-
var oListBinding = oMultiValueField.getBinding("items");
|
|
31
|
-
var oBindingInfo = oMultiValueField.getBindingInfo("items");
|
|
32
|
-
var sItemPath = oBindingInfo.path;
|
|
33
|
-
var oTemplate = oBindingInfo.template;
|
|
34
|
-
var oKeyBindingInfo = oTemplate.getBindingInfo("key");
|
|
35
|
-
var sKeyPath = oKeyBindingInfo && oKeyBindingInfo.parts[0].path;
|
|
36
|
-
var oDescriptionBindingInfo = oTemplate.getBindingInfo("description");
|
|
37
|
-
var sDescriptionPath = oDescriptionBindingInfo && oDescriptionBindingInfo.parts[0].path;
|
|
38
|
-
var oModel = oListBinding.getModel();
|
|
5
|
+
sap.ui.define(["sap/ui/mdc/field/MultiValueFieldDelegate"], function (MultiValueFieldDelegate) {
|
|
6
|
+
"use strict";
|
|
39
7
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
8
|
+
var oMultiValueFieldDelegate = Object.assign({}, MultiValueFieldDelegate, {
|
|
9
|
+
_transformConditions: function (aConditions, sKeyPath, sDescriptionPath) {
|
|
10
|
+
var aTransformedItems = [];
|
|
11
|
+
|
|
12
|
+
for (var i = 0; i < aConditions.length; i++) {
|
|
13
|
+
var oItem = {};
|
|
14
|
+
var oCondition = aConditions[i];
|
|
15
|
+
oItem[sKeyPath] = oCondition.values[0];
|
|
16
|
+
|
|
17
|
+
if (sDescriptionPath) {
|
|
18
|
+
oItem[sDescriptionPath] = oCondition.values[1];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
aTransformedItems.push(oItem);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
return aTransformedItems;
|
|
25
|
+
},
|
|
26
|
+
updateItems: function (oPayload, aConditions, oMultiValueField) {
|
|
27
|
+
var oListBinding = oMultiValueField.getBinding("items");
|
|
28
|
+
var oBindingInfo = oMultiValueField.getBindingInfo("items");
|
|
29
|
+
var sItemPath = oBindingInfo.path;
|
|
30
|
+
var oTemplate = oBindingInfo.template;
|
|
31
|
+
var oKeyBindingInfo = oTemplate.getBindingInfo("key");
|
|
32
|
+
var sKeyPath = oKeyBindingInfo && oKeyBindingInfo.parts[0].path;
|
|
33
|
+
var oDescriptionBindingInfo = oTemplate.getBindingInfo("description");
|
|
34
|
+
var sDescriptionPath = oDescriptionBindingInfo && oDescriptionBindingInfo.parts[0].path;
|
|
35
|
+
var oModel = oListBinding.getModel();
|
|
36
|
+
oModel.setProperty(sItemPath, this._transformConditions(aConditions, sKeyPath, sDescriptionPath));
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
return oMultiValueFieldDelegate;
|
|
40
|
+
}, false);
|
|
41
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk11bHRpVmFsdWVQYXJhbWV0ZXJEZWxlZ2F0ZS50cyJdLCJuYW1lcyI6WyJvTXVsdGlWYWx1ZUZpZWxkRGVsZWdhdGUiLCJPYmplY3QiLCJhc3NpZ24iLCJNdWx0aVZhbHVlRmllbGREZWxlZ2F0ZSIsIl90cmFuc2Zvcm1Db25kaXRpb25zIiwiYUNvbmRpdGlvbnMiLCJzS2V5UGF0aCIsInNEZXNjcmlwdGlvblBhdGgiLCJhVHJhbnNmb3JtZWRJdGVtcyIsImkiLCJsZW5ndGgiLCJvSXRlbSIsIm9Db25kaXRpb24iLCJ2YWx1ZXMiLCJwdXNoIiwidXBkYXRlSXRlbXMiLCJvUGF5bG9hZCIsIm9NdWx0aVZhbHVlRmllbGQiLCJvTGlzdEJpbmRpbmciLCJnZXRCaW5kaW5nIiwib0JpbmRpbmdJbmZvIiwiZ2V0QmluZGluZ0luZm8iLCJzSXRlbVBhdGgiLCJwYXRoIiwib1RlbXBsYXRlIiwidGVtcGxhdGUiLCJvS2V5QmluZGluZ0luZm8iLCJwYXJ0cyIsIm9EZXNjcmlwdGlvbkJpbmRpbmdJbmZvIiwib01vZGVsIiwiZ2V0TW9kZWwiLCJzZXRQcm9wZXJ0eSJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7OztBQURBLE1BQU1BLHdCQUF3QixHQUFHQyxNQUFNLENBQUNDLE1BQVAsQ0FBYyxFQUFkLEVBQWtCQyx1QkFBbEIsRUFBMkM7QUFDM0VDLElBQUFBLG9CQUFvQixFQUFFLFVBQVNDLFdBQVQsRUFBMkJDLFFBQTNCLEVBQTBDQyxnQkFBMUMsRUFBaUU7QUFDdEYsVUFBTUMsaUJBQWlCLEdBQUcsRUFBMUI7O0FBQ0EsV0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHSixXQUFXLENBQUNLLE1BQWhDLEVBQXdDRCxDQUFDLEVBQXpDLEVBQTZDO0FBQzVDLFlBQU1FLEtBQVUsR0FBRyxFQUFuQjtBQUNBLFlBQU1DLFVBQVUsR0FBR1AsV0FBVyxDQUFDSSxDQUFELENBQTlCO0FBQ0FFLFFBQUFBLEtBQUssQ0FBQ0wsUUFBRCxDQUFMLEdBQWtCTSxVQUFVLENBQUNDLE1BQVgsQ0FBa0IsQ0FBbEIsQ0FBbEI7O0FBQ0EsWUFBSU4sZ0JBQUosRUFBc0I7QUFDckJJLFVBQUFBLEtBQUssQ0FBQ0osZ0JBQUQsQ0FBTCxHQUEwQkssVUFBVSxDQUFDQyxNQUFYLENBQWtCLENBQWxCLENBQTFCO0FBQ0E7O0FBQ0RMLFFBQUFBLGlCQUFpQixDQUFDTSxJQUFsQixDQUF1QkgsS0FBdkI7QUFDQTs7QUFDRCxhQUFPSCxpQkFBUDtBQUNBLEtBYjBFO0FBYzNFTyxJQUFBQSxXQUFXLEVBQUUsVUFBU0MsUUFBVCxFQUF3QlgsV0FBeEIsRUFBMENZLGdCQUExQyxFQUFpRTtBQUM3RSxVQUFNQyxZQUFZLEdBQUdELGdCQUFnQixDQUFDRSxVQUFqQixDQUE0QixPQUE1QixDQUFyQjtBQUNBLFVBQU1DLFlBQVksR0FBR0gsZ0JBQWdCLENBQUNJLGNBQWpCLENBQWdDLE9BQWhDLENBQXJCO0FBQ0EsVUFBTUMsU0FBUyxHQUFHRixZQUFZLENBQUNHLElBQS9CO0FBQ0EsVUFBTUMsU0FBUyxHQUFHSixZQUFZLENBQUNLLFFBQS9CO0FBQ0EsVUFBTUMsZUFBZSxHQUFHRixTQUFTLENBQUNILGNBQVYsQ0FBeUIsS0FBekIsQ0FBeEI7QUFDQSxVQUFNZixRQUFRLEdBQUdvQixlQUFlLElBQUlBLGVBQWUsQ0FBQ0MsS0FBaEIsQ0FBc0IsQ0FBdEIsRUFBeUJKLElBQTdEO0FBQ0EsVUFBTUssdUJBQXVCLEdBQUdKLFNBQVMsQ0FBQ0gsY0FBVixDQUF5QixhQUF6QixDQUFoQztBQUNBLFVBQU1kLGdCQUFnQixHQUFHcUIsdUJBQXVCLElBQUlBLHVCQUF1QixDQUFDRCxLQUF4QixDQUE4QixDQUE5QixFQUFpQ0osSUFBckY7QUFDQSxVQUFNTSxNQUFNLEdBQUdYLFlBQVksQ0FBQ1ksUUFBYixFQUFmO0FBRUFELE1BQUFBLE1BQU0sQ0FBQ0UsV0FBUCxDQUFtQlQsU0FBbkIsRUFBOEIsS0FBS2xCLG9CQUFMLENBQTBCQyxXQUExQixFQUF1Q0MsUUFBdkMsRUFBaURDLGdCQUFqRCxDQUE5QjtBQUNBO0FBMUIwRSxHQUEzQyxDQUFqQztTQTZCZVAsd0IiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNdWx0aVZhbHVlRmllbGREZWxlZ2F0ZSBmcm9tIFwic2FwL3VpL21kYy9maWVsZC9NdWx0aVZhbHVlRmllbGREZWxlZ2F0ZVwiO1xuY29uc3Qgb011bHRpVmFsdWVGaWVsZERlbGVnYXRlID0gT2JqZWN0LmFzc2lnbih7fSwgTXVsdGlWYWx1ZUZpZWxkRGVsZWdhdGUsIHtcblx0X3RyYW5zZm9ybUNvbmRpdGlvbnM6IGZ1bmN0aW9uKGFDb25kaXRpb25zOiBhbnksIHNLZXlQYXRoOiBhbnksIHNEZXNjcmlwdGlvblBhdGg6IGFueSkge1xuXHRcdGNvbnN0IGFUcmFuc2Zvcm1lZEl0ZW1zID0gW107XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBhQ29uZGl0aW9ucy5sZW5ndGg7IGkrKykge1xuXHRcdFx0Y29uc3Qgb0l0ZW06IGFueSA9IHt9O1xuXHRcdFx0Y29uc3Qgb0NvbmRpdGlvbiA9IGFDb25kaXRpb25zW2ldO1xuXHRcdFx0b0l0ZW1bc0tleVBhdGhdID0gb0NvbmRpdGlvbi52YWx1ZXNbMF07XG5cdFx0XHRpZiAoc0Rlc2NyaXB0aW9uUGF0aCkge1xuXHRcdFx0XHRvSXRlbVtzRGVzY3JpcHRpb25QYXRoXSA9IG9Db25kaXRpb24udmFsdWVzWzFdO1xuXHRcdFx0fVxuXHRcdFx0YVRyYW5zZm9ybWVkSXRlbXMucHVzaChvSXRlbSk7XG5cdFx0fVxuXHRcdHJldHVybiBhVHJhbnNmb3JtZWRJdGVtcztcblx0fSxcblx0dXBkYXRlSXRlbXM6IGZ1bmN0aW9uKG9QYXlsb2FkOiBhbnksIGFDb25kaXRpb25zOiBhbnksIG9NdWx0aVZhbHVlRmllbGQ6IGFueSkge1xuXHRcdGNvbnN0IG9MaXN0QmluZGluZyA9IG9NdWx0aVZhbHVlRmllbGQuZ2V0QmluZGluZyhcIml0ZW1zXCIpO1xuXHRcdGNvbnN0IG9CaW5kaW5nSW5mbyA9IG9NdWx0aVZhbHVlRmllbGQuZ2V0QmluZGluZ0luZm8oXCJpdGVtc1wiKTtcblx0XHRjb25zdCBzSXRlbVBhdGggPSBvQmluZGluZ0luZm8ucGF0aDtcblx0XHRjb25zdCBvVGVtcGxhdGUgPSBvQmluZGluZ0luZm8udGVtcGxhdGU7XG5cdFx0Y29uc3Qgb0tleUJpbmRpbmdJbmZvID0gb1RlbXBsYXRlLmdldEJpbmRpbmdJbmZvKFwia2V5XCIpO1xuXHRcdGNvbnN0IHNLZXlQYXRoID0gb0tleUJpbmRpbmdJbmZvICYmIG9LZXlCaW5kaW5nSW5mby5wYXJ0c1swXS5wYXRoO1xuXHRcdGNvbnN0IG9EZXNjcmlwdGlvbkJpbmRpbmdJbmZvID0gb1RlbXBsYXRlLmdldEJpbmRpbmdJbmZvKFwiZGVzY3JpcHRpb25cIik7XG5cdFx0Y29uc3Qgc0Rlc2NyaXB0aW9uUGF0aCA9IG9EZXNjcmlwdGlvbkJpbmRpbmdJbmZvICYmIG9EZXNjcmlwdGlvbkJpbmRpbmdJbmZvLnBhcnRzWzBdLnBhdGg7XG5cdFx0Y29uc3Qgb01vZGVsID0gb0xpc3RCaW5kaW5nLmdldE1vZGVsKCk7XG5cblx0XHRvTW9kZWwuc2V0UHJvcGVydHkoc0l0ZW1QYXRoLCB0aGlzLl90cmFuc2Zvcm1Db25kaXRpb25zKGFDb25kaXRpb25zLCBzS2V5UGF0aCwgc0Rlc2NyaXB0aW9uUGF0aCkpO1xuXHR9XG59KTtcblxuZXhwb3J0IGRlZmF1bHQgb011bHRpVmFsdWVGaWVsZERlbGVnYXRlO1xuIl19
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import MultiValueFieldDelegate from "sap/ui/mdc/field/MultiValueFieldDelegate";
|
|
2
|
+
const oMultiValueFieldDelegate = Object.assign({}, MultiValueFieldDelegate, {
|
|
3
|
+
_transformConditions: function(aConditions: any, sKeyPath: any, sDescriptionPath: any) {
|
|
4
|
+
const aTransformedItems = [];
|
|
5
|
+
for (let i = 0; i < aConditions.length; i++) {
|
|
6
|
+
const oItem: any = {};
|
|
7
|
+
const oCondition = aConditions[i];
|
|
8
|
+
oItem[sKeyPath] = oCondition.values[0];
|
|
9
|
+
if (sDescriptionPath) {
|
|
10
|
+
oItem[sDescriptionPath] = oCondition.values[1];
|
|
11
|
+
}
|
|
12
|
+
aTransformedItems.push(oItem);
|
|
13
|
+
}
|
|
14
|
+
return aTransformedItems;
|
|
15
|
+
},
|
|
16
|
+
updateItems: function(oPayload: any, aConditions: any, oMultiValueField: any) {
|
|
17
|
+
const oListBinding = oMultiValueField.getBinding("items");
|
|
18
|
+
const oBindingInfo = oMultiValueField.getBindingInfo("items");
|
|
19
|
+
const sItemPath = oBindingInfo.path;
|
|
20
|
+
const oTemplate = oBindingInfo.template;
|
|
21
|
+
const oKeyBindingInfo = oTemplate.getBindingInfo("key");
|
|
22
|
+
const sKeyPath = oKeyBindingInfo && oKeyBindingInfo.parts[0].path;
|
|
23
|
+
const oDescriptionBindingInfo = oTemplate.getBindingInfo("description");
|
|
24
|
+
const sDescriptionPath = oDescriptionBindingInfo && oDescriptionBindingInfo.parts[0].path;
|
|
25
|
+
const oModel = oListBinding.getModel();
|
|
26
|
+
|
|
27
|
+
oModel.setProperty(sItemPath, this._transformConditions(aConditions, sKeyPath, sDescriptionPath));
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
export default oMultiValueFieldDelegate;
|
|
@@ -1,119 +1,129 @@
|
|
|
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
|
-
|
|
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
|
-
|
|
5
|
+
sap.ui.define(["sap/ui/mdc/filterbar/aligned/FilterContainer"], function (MdcFilterContainer) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Constructor for a new FE filter container
|
|
10
|
+
*
|
|
11
|
+
* @param {string} [sId] ID for the new control, generated automatically if no ID is given
|
|
12
|
+
* @extends sap.ui.mdc.filterbar.aligned.FilterContainer
|
|
13
|
+
* @class
|
|
14
|
+
* @private
|
|
15
|
+
* @alias sap.fe.core.controls.filterbar.FilterContainer
|
|
16
|
+
*/
|
|
17
|
+
var FilterContainer = MdcFilterContainer.extend("sap.fe.core.controls.filterbar.FilterContainer");
|
|
18
|
+
|
|
19
|
+
FilterContainer.prototype.init = function () {
|
|
20
|
+
this.aAllFilterFields = [];
|
|
21
|
+
this.aAllVisualFilters = {};
|
|
22
|
+
|
|
23
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
24
|
+
args[_key] = arguments[_key];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
MdcFilterContainer.prototype.init.apply(this, args);
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
FilterContainer.prototype.exit = function () {
|
|
31
|
+
var _this = this;
|
|
32
|
+
|
|
33
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
34
|
+
args[_key2] = arguments[_key2];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
// destroy layout
|
|
38
|
+
MdcFilterContainer.prototype.exit.apply(this, args); // destroy all filter fields which are not in the layout
|
|
39
|
+
|
|
40
|
+
this.aAllFilterFields.forEach(function (oFilterField) {
|
|
41
|
+
oFilterField.destroy();
|
|
42
|
+
});
|
|
43
|
+
Object.keys(this.aAllVisualFilters).forEach(function (sKey) {
|
|
44
|
+
_this.aAllVisualFilters[sKey].destroy();
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
FilterContainer.prototype.insertFilterField = function (oControl, iIndex) {
|
|
49
|
+
var _this2 = this;
|
|
50
|
+
|
|
51
|
+
var oFilterItemLayoutEventDelegate = {
|
|
52
|
+
onBeforeRendering: function () {
|
|
53
|
+
// For compact filters the item layout needs to render both label and filter field.
|
|
54
|
+
// hence use the original getContent of the FilterItemLayout
|
|
55
|
+
if (oControl._fnGetContentCopy) {
|
|
56
|
+
oControl.getContent = oControl._fnGetContentCopy;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
oControl.removeEventDelegate(oFilterItemLayoutEventDelegate);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
oControl.addEventDelegate(oFilterItemLayoutEventDelegate); // In this layout there is no need to render visual filter
|
|
63
|
+
// hence find the filter field from the layout and remove it's content aggregation
|
|
64
|
+
|
|
65
|
+
oControl.getContent().forEach(function (oInnerControl) {
|
|
66
|
+
var oContent = oInnerControl.getContent && oInnerControl.getContent();
|
|
67
|
+
|
|
68
|
+
if (oInnerControl.isA("sap.ui.mdc.FilterField") && oContent && oContent.isA("sap.fe.core.controls.filterbar.VisualFilter")) {
|
|
69
|
+
// store the visual filter for later use.
|
|
70
|
+
var oVFId = oInnerControl.getId();
|
|
71
|
+
_this2.aAllVisualFilters[oVFId] = oContent; // remove the content aggregation to render internal content of the field
|
|
72
|
+
|
|
73
|
+
oInnerControl.setContent(null);
|
|
74
|
+
}
|
|
75
|
+
}); // store filter fields to refer to when switching between layout
|
|
76
|
+
|
|
77
|
+
this.aAllFilterFields.push(oControl);
|
|
78
|
+
MdcFilterContainer.prototype.insertFilterField.apply(this, [oControl, iIndex]);
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
FilterContainer.prototype.removeFilterField = function (oControl) {
|
|
82
|
+
var _this3 = this;
|
|
83
|
+
|
|
84
|
+
var oFilterFieldIndex = this.aAllFilterFields.findIndex(function (oFilterField) {
|
|
85
|
+
return oFilterField.getId() === oControl.getId();
|
|
86
|
+
}); // Setting VF content for Fillterfield before removing
|
|
87
|
+
|
|
88
|
+
oControl.getContent().forEach(function (oInnerControl) {
|
|
89
|
+
if (oInnerControl.isA("sap.ui.mdc.FilterField") && !oInnerControl.getContent()) {
|
|
90
|
+
var oVFId = oInnerControl.getId();
|
|
91
|
+
|
|
92
|
+
if (_this3.aAllVisualFilters[oVFId]) {
|
|
93
|
+
oInnerControl.setContent(_this3.aAllVisualFilters[oVFId]);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
this.aAllFilterFields.splice(oFilterFieldIndex, 1);
|
|
98
|
+
MdcFilterContainer.prototype.removeFilterField.apply(this, [oControl]);
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
FilterContainer.prototype.removeAllFilterFields = function () {
|
|
102
|
+
this.aAllFilterFields = [];
|
|
103
|
+
this.aAllVisualFilters = {};
|
|
104
|
+
this.oLayout.removeAllContent();
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
FilterContainer.prototype.getAllButtons = function () {
|
|
108
|
+
return this.oLayout.getEndContent();
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
FilterContainer.prototype.removeButton = function (oControl) {
|
|
112
|
+
this.oLayout.removeEndContent(oControl);
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
FilterContainer.prototype.getAllFilterFields = function () {
|
|
116
|
+
return this.aAllFilterFields.slice();
|
|
117
|
+
};
|
|
118
|
+
|
|
119
|
+
FilterContainer.prototype.getAllVisualFilterFields = function () {
|
|
120
|
+
return this.aAllVisualFilters;
|
|
121
|
+
};
|
|
122
|
+
|
|
123
|
+
FilterContainer.prototype.setAllFilterFields = function (aFilterFields) {
|
|
124
|
+
this.aAllFilterFields = aFilterFields;
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
return FilterContainer;
|
|
128
|
+
}, false);
|
|
129
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkZpbHRlckNvbnRhaW5lci50cyJdLCJuYW1lcyI6WyJGaWx0ZXJDb250YWluZXIiLCJNZGNGaWx0ZXJDb250YWluZXIiLCJleHRlbmQiLCJwcm90b3R5cGUiLCJpbml0IiwiYUFsbEZpbHRlckZpZWxkcyIsImFBbGxWaXN1YWxGaWx0ZXJzIiwiYXJncyIsImFwcGx5IiwiZXhpdCIsImZvckVhY2giLCJvRmlsdGVyRmllbGQiLCJkZXN0cm95IiwiT2JqZWN0Iiwia2V5cyIsInNLZXkiLCJpbnNlcnRGaWx0ZXJGaWVsZCIsIm9Db250cm9sIiwiaUluZGV4Iiwib0ZpbHRlckl0ZW1MYXlvdXRFdmVudERlbGVnYXRlIiwib25CZWZvcmVSZW5kZXJpbmciLCJfZm5HZXRDb250ZW50Q29weSIsImdldENvbnRlbnQiLCJyZW1vdmVFdmVudERlbGVnYXRlIiwiYWRkRXZlbnREZWxlZ2F0ZSIsIm9Jbm5lckNvbnRyb2wiLCJvQ29udGVudCIsImlzQSIsIm9WRklkIiwiZ2V0SWQiLCJzZXRDb250ZW50IiwicHVzaCIsInJlbW92ZUZpbHRlckZpZWxkIiwib0ZpbHRlckZpZWxkSW5kZXgiLCJmaW5kSW5kZXgiLCJzcGxpY2UiLCJyZW1vdmVBbGxGaWx0ZXJGaWVsZHMiLCJvTGF5b3V0IiwicmVtb3ZlQWxsQ29udGVudCIsImdldEFsbEJ1dHRvbnMiLCJnZXRFbmRDb250ZW50IiwicmVtb3ZlQnV0dG9uIiwicmVtb3ZlRW5kQ29udGVudCIsImdldEFsbEZpbHRlckZpZWxkcyIsInNsaWNlIiwiZ2V0QWxsVmlzdWFsRmlsdGVyRmllbGRzIiwic2V0QWxsRmlsdGVyRmllbGRzIiwiYUZpbHRlckZpZWxkcyJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQ0E7QUFDQTs7OztBQURBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLE1BQU1BLGVBQWUsR0FBR0Msa0JBQWtCLENBQUNDLE1BQW5CLENBQTBCLGdEQUExQixDQUF4Qjs7QUFDQUYsRUFBQUEsZUFBZSxDQUFDRyxTQUFoQixDQUEwQkMsSUFBMUIsR0FBaUMsWUFBeUI7QUFDekQsU0FBS0MsZ0JBQUwsR0FBd0IsRUFBeEI7QUFDQSxTQUFLQyxpQkFBTCxHQUF5QixFQUF6Qjs7QUFGeUQsc0NBQWJDLElBQWE7QUFBYkEsTUFBQUEsSUFBYTtBQUFBOztBQUd6RE4sSUFBQUEsa0JBQWtCLENBQUNFLFNBQW5CLENBQTZCQyxJQUE3QixDQUFrQ0ksS0FBbEMsQ0FBd0MsSUFBeEMsRUFBOENELElBQTlDO0FBQ0EsR0FKRDs7QUFLQVAsRUFBQUEsZUFBZSxDQUFDRyxTQUFoQixDQUEwQk0sSUFBMUIsR0FBaUMsWUFBeUI7QUFBQTs7QUFBQSx1Q0FBYkYsSUFBYTtBQUFiQSxNQUFBQSxJQUFhO0FBQUE7O0FBQ3pEO0FBQ0FOLElBQUFBLGtCQUFrQixDQUFDRSxTQUFuQixDQUE2Qk0sSUFBN0IsQ0FBa0NELEtBQWxDLENBQXdDLElBQXhDLEVBQThDRCxJQUE5QyxFQUZ5RCxDQUd6RDs7QUFDQSxTQUFLRixnQkFBTCxDQUFzQkssT0FBdEIsQ0FBOEIsVUFBU0MsWUFBVCxFQUE0QjtBQUN6REEsTUFBQUEsWUFBWSxDQUFDQyxPQUFiO0FBQ0EsS0FGRDtBQUdBQyxJQUFBQSxNQUFNLENBQUNDLElBQVAsQ0FBWSxLQUFLUixpQkFBakIsRUFBb0NJLE9BQXBDLENBQTRDLFVBQUNLLElBQUQsRUFBa0I7QUFDN0QsTUFBQSxLQUFJLENBQUNULGlCQUFMLENBQXVCUyxJQUF2QixFQUE2QkgsT0FBN0I7QUFDQSxLQUZEO0FBR0EsR0FWRDs7QUFXQVosRUFBQUEsZUFBZSxDQUFDRyxTQUFoQixDQUEwQmEsaUJBQTFCLEdBQThDLFVBQVNDLFFBQVQsRUFBd0JDLE1BQXhCLEVBQXdDO0FBQUE7O0FBQ3JGLFFBQU1DLDhCQUE4QixHQUFHO0FBQ3RDQyxNQUFBQSxpQkFBaUIsRUFBRSxZQUFXO0FBQzdCO0FBQ0E7QUFDQSxZQUFJSCxRQUFRLENBQUNJLGlCQUFiLEVBQWdDO0FBQy9CSixVQUFBQSxRQUFRLENBQUNLLFVBQVQsR0FBc0JMLFFBQVEsQ0FBQ0ksaUJBQS9CO0FBQ0E7O0FBQ0RKLFFBQUFBLFFBQVEsQ0FBQ00sbUJBQVQsQ0FBNkJKLDhCQUE3QjtBQUNBO0FBUnFDLEtBQXZDO0FBVUFGLElBQUFBLFFBQVEsQ0FBQ08sZ0JBQVQsQ0FBMEJMLDhCQUExQixFQVhxRixDQWFyRjtBQUNBOztBQUNBRixJQUFBQSxRQUFRLENBQUNLLFVBQVQsR0FBc0JaLE9BQXRCLENBQThCLFVBQUNlLGFBQUQsRUFBd0I7QUFDckQsVUFBTUMsUUFBUSxHQUFHRCxhQUFhLENBQUNILFVBQWQsSUFBNEJHLGFBQWEsQ0FBQ0gsVUFBZCxFQUE3Qzs7QUFDQSxVQUFJRyxhQUFhLENBQUNFLEdBQWQsQ0FBa0Isd0JBQWxCLEtBQStDRCxRQUEvQyxJQUEyREEsUUFBUSxDQUFDQyxHQUFULENBQWEsNkNBQWIsQ0FBL0QsRUFBNEg7QUFDM0g7QUFDQSxZQUFNQyxLQUFLLEdBQUdILGFBQWEsQ0FBQ0ksS0FBZCxFQUFkO0FBQ0EsUUFBQSxNQUFJLENBQUN2QixpQkFBTCxDQUF1QnNCLEtBQXZCLElBQWdDRixRQUFoQyxDQUgySCxDQUkzSDs7QUFDQUQsUUFBQUEsYUFBYSxDQUFDSyxVQUFkLENBQXlCLElBQXpCO0FBQ0E7QUFDRCxLQVRELEVBZnFGLENBMEJyRjs7QUFDQSxTQUFLekIsZ0JBQUwsQ0FBc0IwQixJQUF0QixDQUEyQmQsUUFBM0I7QUFDQWhCLElBQUFBLGtCQUFrQixDQUFDRSxTQUFuQixDQUE2QmEsaUJBQTdCLENBQStDUixLQUEvQyxDQUFxRCxJQUFyRCxFQUEyRCxDQUFDUyxRQUFELEVBQVdDLE1BQVgsQ0FBM0Q7QUFDQSxHQTdCRDs7QUE4QkFsQixFQUFBQSxlQUFlLENBQUNHLFNBQWhCLENBQTBCNkIsaUJBQTFCLEdBQThDLFVBQVNmLFFBQVQsRUFBd0I7QUFBQTs7QUFDckUsUUFBTWdCLGlCQUFpQixHQUFHLEtBQUs1QixnQkFBTCxDQUFzQjZCLFNBQXRCLENBQWdDLFVBQVN2QixZQUFULEVBQTRCO0FBQ3JGLGFBQU9BLFlBQVksQ0FBQ2tCLEtBQWIsT0FBeUJaLFFBQVEsQ0FBQ1ksS0FBVCxFQUFoQztBQUNBLEtBRnlCLENBQTFCLENBRHFFLENBS3JFOztBQUNBWixJQUFBQSxRQUFRLENBQUNLLFVBQVQsR0FBc0JaLE9BQXRCLENBQThCLFVBQUNlLGFBQUQsRUFBd0I7QUFDckQsVUFBSUEsYUFBYSxDQUFDRSxHQUFkLENBQWtCLHdCQUFsQixLQUErQyxDQUFDRixhQUFhLENBQUNILFVBQWQsRUFBcEQsRUFBZ0Y7QUFDL0UsWUFBTU0sS0FBSyxHQUFHSCxhQUFhLENBQUNJLEtBQWQsRUFBZDs7QUFDQSxZQUFJLE1BQUksQ0FBQ3ZCLGlCQUFMLENBQXVCc0IsS0FBdkIsQ0FBSixFQUFtQztBQUNsQ0gsVUFBQUEsYUFBYSxDQUFDSyxVQUFkLENBQXlCLE1BQUksQ0FBQ3hCLGlCQUFMLENBQXVCc0IsS0FBdkIsQ0FBekI7QUFDQTtBQUNEO0FBQ0QsS0FQRDtBQVNBLFNBQUt2QixnQkFBTCxDQUFzQjhCLE1BQXRCLENBQTZCRixpQkFBN0IsRUFBZ0QsQ0FBaEQ7QUFFQWhDLElBQUFBLGtCQUFrQixDQUFDRSxTQUFuQixDQUE2QjZCLGlCQUE3QixDQUErQ3hCLEtBQS9DLENBQXFELElBQXJELEVBQTJELENBQUNTLFFBQUQsQ0FBM0Q7QUFDQSxHQWxCRDs7QUFtQkFqQixFQUFBQSxlQUFlLENBQUNHLFNBQWhCLENBQTBCaUMscUJBQTFCLEdBQWtELFlBQVc7QUFDNUQsU0FBSy9CLGdCQUFMLEdBQXdCLEVBQXhCO0FBQ0EsU0FBS0MsaUJBQUwsR0FBeUIsRUFBekI7QUFDQSxTQUFLK0IsT0FBTCxDQUFhQyxnQkFBYjtBQUNBLEdBSkQ7O0FBS0F0QyxFQUFBQSxlQUFlLENBQUNHLFNBQWhCLENBQTBCb0MsYUFBMUIsR0FBMEMsWUFBVztBQUNwRCxXQUFPLEtBQUtGLE9BQUwsQ0FBYUcsYUFBYixFQUFQO0FBQ0EsR0FGRDs7QUFHQXhDLEVBQUFBLGVBQWUsQ0FBQ0csU0FBaEIsQ0FBMEJzQyxZQUExQixHQUF5QyxVQUFTeEIsUUFBVCxFQUF3QjtBQUNoRSxTQUFLb0IsT0FBTCxDQUFhSyxnQkFBYixDQUE4QnpCLFFBQTlCO0FBQ0EsR0FGRDs7QUFHQWpCLEVBQUFBLGVBQWUsQ0FBQ0csU0FBaEIsQ0FBMEJ3QyxrQkFBMUIsR0FBK0MsWUFBVztBQUN6RCxXQUFPLEtBQUt0QyxnQkFBTCxDQUFzQnVDLEtBQXRCLEVBQVA7QUFDQSxHQUZEOztBQUdBNUMsRUFBQUEsZUFBZSxDQUFDRyxTQUFoQixDQUEwQjBDLHdCQUExQixHQUFxRCxZQUFXO0FBQy9ELFdBQU8sS0FBS3ZDLGlCQUFaO0FBQ0EsR0FGRDs7QUFHQU4sRUFBQUEsZUFBZSxDQUFDRyxTQUFoQixDQUEwQjJDLGtCQUExQixHQUErQyxVQUFTQyxhQUFULEVBQTZCO0FBQzNFLFNBQUsxQyxnQkFBTCxHQUF3QjBDLGFBQXhCO0FBQ0EsR0FGRDs7U0FJZS9DLGUiLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBNZGNGaWx0ZXJDb250YWluZXIgZnJvbSBcInNhcC91aS9tZGMvZmlsdGVyYmFyL2FsaWduZWQvRmlsdGVyQ29udGFpbmVyXCI7XG4vKipcbiAqIENvbnN0cnVjdG9yIGZvciBhIG5ldyBGRSBmaWx0ZXIgY29udGFpbmVyXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IFtzSWRdIElEIGZvciB0aGUgbmV3IGNvbnRyb2wsIGdlbmVyYXRlZCBhdXRvbWF0aWNhbGx5IGlmIG5vIElEIGlzIGdpdmVuXG4gKiBAZXh0ZW5kcyBzYXAudWkubWRjLmZpbHRlcmJhci5hbGlnbmVkLkZpbHRlckNvbnRhaW5lclxuICogQGNsYXNzXG4gKiBAcHJpdmF0ZVxuICogQGFsaWFzIHNhcC5mZS5jb3JlLmNvbnRyb2xzLmZpbHRlcmJhci5GaWx0ZXJDb250YWluZXJcbiAqL1xuY29uc3QgRmlsdGVyQ29udGFpbmVyID0gTWRjRmlsdGVyQ29udGFpbmVyLmV4dGVuZChcInNhcC5mZS5jb3JlLmNvbnRyb2xzLmZpbHRlcmJhci5GaWx0ZXJDb250YWluZXJcIik7XG5GaWx0ZXJDb250YWluZXIucHJvdG90eXBlLmluaXQgPSBmdW5jdGlvbiguLi5hcmdzOiBhbnlbXSkge1xuXHR0aGlzLmFBbGxGaWx0ZXJGaWVsZHMgPSBbXTtcblx0dGhpcy5hQWxsVmlzdWFsRmlsdGVycyA9IHt9O1xuXHRNZGNGaWx0ZXJDb250YWluZXIucHJvdG90eXBlLmluaXQuYXBwbHkodGhpcywgYXJncyk7XG59O1xuRmlsdGVyQ29udGFpbmVyLnByb3RvdHlwZS5leGl0ID0gZnVuY3Rpb24oLi4uYXJnczogYW55W10pIHtcblx0Ly8gZGVzdHJveSBsYXlvdXRcblx0TWRjRmlsdGVyQ29udGFpbmVyLnByb3RvdHlwZS5leGl0LmFwcGx5KHRoaXMsIGFyZ3MpO1xuXHQvLyBkZXN0cm95IGFsbCBmaWx0ZXIgZmllbGRzIHdoaWNoIGFyZSBub3QgaW4gdGhlIGxheW91dFxuXHR0aGlzLmFBbGxGaWx0ZXJGaWVsZHMuZm9yRWFjaChmdW5jdGlvbihvRmlsdGVyRmllbGQ6IGFueSkge1xuXHRcdG9GaWx0ZXJGaWVsZC5kZXN0cm95KCk7XG5cdH0pO1xuXHRPYmplY3Qua2V5cyh0aGlzLmFBbGxWaXN1YWxGaWx0ZXJzKS5mb3JFYWNoKChzS2V5OiBzdHJpbmcpID0+IHtcblx0XHR0aGlzLmFBbGxWaXN1YWxGaWx0ZXJzW3NLZXldLmRlc3Ryb3koKTtcblx0fSk7XG59O1xuRmlsdGVyQ29udGFpbmVyLnByb3RvdHlwZS5pbnNlcnRGaWx0ZXJGaWVsZCA9IGZ1bmN0aW9uKG9Db250cm9sOiBhbnksIGlJbmRleDogbnVtYmVyKSB7XG5cdGNvbnN0IG9GaWx0ZXJJdGVtTGF5b3V0RXZlbnREZWxlZ2F0ZSA9IHtcblx0XHRvbkJlZm9yZVJlbmRlcmluZzogZnVuY3Rpb24oKSB7XG5cdFx0XHQvLyBGb3IgY29tcGFjdCBmaWx0ZXJzIHRoZSBpdGVtIGxheW91dCBuZWVkcyB0byByZW5kZXIgYm90aCBsYWJlbCBhbmQgZmlsdGVyIGZpZWxkLlxuXHRcdFx0Ly8gaGVuY2UgdXNlIHRoZSBvcmlnaW5hbCBnZXRDb250ZW50IG9mIHRoZSBGaWx0ZXJJdGVtTGF5b3V0XG5cdFx0XHRpZiAob0NvbnRyb2wuX2ZuR2V0Q29udGVudENvcHkpIHtcblx0XHRcdFx0b0NvbnRyb2wuZ2V0Q29udGVudCA9IG9Db250cm9sLl9mbkdldENvbnRlbnRDb3B5O1xuXHRcdFx0fVxuXHRcdFx0b0NvbnRyb2wucmVtb3ZlRXZlbnREZWxlZ2F0ZShvRmlsdGVySXRlbUxheW91dEV2ZW50RGVsZWdhdGUpO1xuXHRcdH1cblx0fTtcblx0b0NvbnRyb2wuYWRkRXZlbnREZWxlZ2F0ZShvRmlsdGVySXRlbUxheW91dEV2ZW50RGVsZWdhdGUpO1xuXG5cdC8vIEluIHRoaXMgbGF5b3V0IHRoZXJlIGlzIG5vIG5lZWQgdG8gcmVuZGVyIHZpc3VhbCBmaWx0ZXJcblx0Ly8gaGVuY2UgZmluZCB0aGUgZmlsdGVyIGZpZWxkIGZyb20gdGhlIGxheW91dCBhbmQgcmVtb3ZlIGl0J3MgY29udGVudCBhZ2dyZWdhdGlvblxuXHRvQ29udHJvbC5nZXRDb250ZW50KCkuZm9yRWFjaCgob0lubmVyQ29udHJvbDogYW55KSA9PiB7XG5cdFx0Y29uc3Qgb0NvbnRlbnQgPSBvSW5uZXJDb250cm9sLmdldENvbnRlbnQgJiYgb0lubmVyQ29udHJvbC5nZXRDb250ZW50KCk7XG5cdFx0aWYgKG9Jbm5lckNvbnRyb2wuaXNBKFwic2FwLnVpLm1kYy5GaWx0ZXJGaWVsZFwiKSAmJiBvQ29udGVudCAmJiBvQ29udGVudC5pc0EoXCJzYXAuZmUuY29yZS5jb250cm9scy5maWx0ZXJiYXIuVmlzdWFsRmlsdGVyXCIpKSB7XG5cdFx0XHQvLyBzdG9yZSB0aGUgdmlzdWFsIGZpbHRlciBmb3IgbGF0ZXIgdXNlLlxuXHRcdFx0Y29uc3Qgb1ZGSWQgPSBvSW5uZXJDb250cm9sLmdldElkKCk7XG5cdFx0XHR0aGlzLmFBbGxWaXN1YWxGaWx0ZXJzW29WRklkXSA9IG9Db250ZW50O1xuXHRcdFx0Ly8gcmVtb3ZlIHRoZSBjb250ZW50IGFnZ3JlZ2F0aW9uIHRvIHJlbmRlciBpbnRlcm5hbCBjb250ZW50IG9mIHRoZSBmaWVsZFxuXHRcdFx0b0lubmVyQ29udHJvbC5zZXRDb250ZW50KG51bGwpO1xuXHRcdH1cblx0fSk7XG5cblx0Ly8gc3RvcmUgZmlsdGVyIGZpZWxkcyB0byByZWZlciB0byB3aGVuIHN3aXRjaGluZyBiZXR3ZWVuIGxheW91dFxuXHR0aGlzLmFBbGxGaWx0ZXJGaWVsZHMucHVzaChvQ29udHJvbCk7XG5cdE1kY0ZpbHRlckNvbnRhaW5lci5wcm90b3R5cGUuaW5zZXJ0RmlsdGVyRmllbGQuYXBwbHkodGhpcywgW29Db250cm9sLCBpSW5kZXhdKTtcbn07XG5GaWx0ZXJDb250YWluZXIucHJvdG90eXBlLnJlbW92ZUZpbHRlckZpZWxkID0gZnVuY3Rpb24ob0NvbnRyb2w6IGFueSkge1xuXHRjb25zdCBvRmlsdGVyRmllbGRJbmRleCA9IHRoaXMuYUFsbEZpbHRlckZpZWxkcy5maW5kSW5kZXgoZnVuY3Rpb24ob0ZpbHRlckZpZWxkOiBhbnkpIHtcblx0XHRyZXR1cm4gb0ZpbHRlckZpZWxkLmdldElkKCkgPT09IG9Db250cm9sLmdldElkKCk7XG5cdH0pO1xuXG5cdC8vIFNldHRpbmcgVkYgY29udGVudCBmb3IgRmlsbHRlcmZpZWxkIGJlZm9yZSByZW1vdmluZ1xuXHRvQ29udHJvbC5nZXRDb250ZW50KCkuZm9yRWFjaCgob0lubmVyQ29udHJvbDogYW55KSA9PiB7XG5cdFx0aWYgKG9Jbm5lckNvbnRyb2wuaXNBKFwic2FwLnVpLm1kYy5GaWx0ZXJGaWVsZFwiKSAmJiAhb0lubmVyQ29udHJvbC5nZXRDb250ZW50KCkpIHtcblx0XHRcdGNvbnN0IG9WRklkID0gb0lubmVyQ29udHJvbC5nZXRJZCgpO1xuXHRcdFx0aWYgKHRoaXMuYUFsbFZpc3VhbEZpbHRlcnNbb1ZGSWRdKSB7XG5cdFx0XHRcdG9Jbm5lckNvbnRyb2wuc2V0Q29udGVudCh0aGlzLmFBbGxWaXN1YWxGaWx0ZXJzW29WRklkXSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9KTtcblxuXHR0aGlzLmFBbGxGaWx0ZXJGaWVsZHMuc3BsaWNlKG9GaWx0ZXJGaWVsZEluZGV4LCAxKTtcblxuXHRNZGNGaWx0ZXJDb250YWluZXIucHJvdG90eXBlLnJlbW92ZUZpbHRlckZpZWxkLmFwcGx5KHRoaXMsIFtvQ29udHJvbF0pO1xufTtcbkZpbHRlckNvbnRhaW5lci5wcm90b3R5cGUucmVtb3ZlQWxsRmlsdGVyRmllbGRzID0gZnVuY3Rpb24oKSB7XG5cdHRoaXMuYUFsbEZpbHRlckZpZWxkcyA9IFtdO1xuXHR0aGlzLmFBbGxWaXN1YWxGaWx0ZXJzID0ge307XG5cdHRoaXMub0xheW91dC5yZW1vdmVBbGxDb250ZW50KCk7XG59O1xuRmlsdGVyQ29udGFpbmVyLnByb3RvdHlwZS5nZXRBbGxCdXR0b25zID0gZnVuY3Rpb24oKSB7XG5cdHJldHVybiB0aGlzLm9MYXlvdXQuZ2V0RW5kQ29udGVudCgpO1xufTtcbkZpbHRlckNvbnRhaW5lci5wcm90b3R5cGUucmVtb3ZlQnV0dG9uID0gZnVuY3Rpb24ob0NvbnRyb2w6IGFueSkge1xuXHR0aGlzLm9MYXlvdXQucmVtb3ZlRW5kQ29udGVudChvQ29udHJvbCk7XG59O1xuRmlsdGVyQ29udGFpbmVyLnByb3RvdHlwZS5nZXRBbGxGaWx0ZXJGaWVsZHMgPSBmdW5jdGlvbigpIHtcblx0cmV0dXJuIHRoaXMuYUFsbEZpbHRlckZpZWxkcy5zbGljZSgpO1xufTtcbkZpbHRlckNvbnRhaW5lci5wcm90b3R5cGUuZ2V0QWxsVmlzdWFsRmlsdGVyRmllbGRzID0gZnVuY3Rpb24oKSB7XG5cdHJldHVybiB0aGlzLmFBbGxWaXN1YWxGaWx0ZXJzO1xufTtcbkZpbHRlckNvbnRhaW5lci5wcm90b3R5cGUuc2V0QWxsRmlsdGVyRmllbGRzID0gZnVuY3Rpb24oYUZpbHRlckZpZWxkczogYW55KSB7XG5cdHRoaXMuYUFsbEZpbHRlckZpZWxkcyA9IGFGaWx0ZXJGaWVsZHM7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBGaWx0ZXJDb250YWluZXI7XG4iXX0=
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import MdcFilterContainer from "sap/ui/mdc/filterbar/aligned/FilterContainer";
|
|
2
|
+
/**
|
|
3
|
+
* Constructor for a new FE filter container
|
|
4
|
+
*
|
|
5
|
+
* @param {string} [sId] ID for the new control, generated automatically if no ID is given
|
|
6
|
+
* @extends sap.ui.mdc.filterbar.aligned.FilterContainer
|
|
7
|
+
* @class
|
|
8
|
+
* @private
|
|
9
|
+
* @alias sap.fe.core.controls.filterbar.FilterContainer
|
|
10
|
+
*/
|
|
11
|
+
const FilterContainer = MdcFilterContainer.extend("sap.fe.core.controls.filterbar.FilterContainer");
|
|
12
|
+
FilterContainer.prototype.init = function(...args: any[]) {
|
|
13
|
+
this.aAllFilterFields = [];
|
|
14
|
+
this.aAllVisualFilters = {};
|
|
15
|
+
MdcFilterContainer.prototype.init.apply(this, args);
|
|
16
|
+
};
|
|
17
|
+
FilterContainer.prototype.exit = function(...args: any[]) {
|
|
18
|
+
// destroy layout
|
|
19
|
+
MdcFilterContainer.prototype.exit.apply(this, args);
|
|
20
|
+
// destroy all filter fields which are not in the layout
|
|
21
|
+
this.aAllFilterFields.forEach(function(oFilterField: any) {
|
|
22
|
+
oFilterField.destroy();
|
|
23
|
+
});
|
|
24
|
+
Object.keys(this.aAllVisualFilters).forEach((sKey: string) => {
|
|
25
|
+
this.aAllVisualFilters[sKey].destroy();
|
|
26
|
+
});
|
|
27
|
+
};
|
|
28
|
+
FilterContainer.prototype.insertFilterField = function(oControl: any, iIndex: number) {
|
|
29
|
+
const oFilterItemLayoutEventDelegate = {
|
|
30
|
+
onBeforeRendering: function() {
|
|
31
|
+
// For compact filters the item layout needs to render both label and filter field.
|
|
32
|
+
// hence use the original getContent of the FilterItemLayout
|
|
33
|
+
if (oControl._fnGetContentCopy) {
|
|
34
|
+
oControl.getContent = oControl._fnGetContentCopy;
|
|
35
|
+
}
|
|
36
|
+
oControl.removeEventDelegate(oFilterItemLayoutEventDelegate);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
oControl.addEventDelegate(oFilterItemLayoutEventDelegate);
|
|
40
|
+
|
|
41
|
+
// In this layout there is no need to render visual filter
|
|
42
|
+
// hence find the filter field from the layout and remove it's content aggregation
|
|
43
|
+
oControl.getContent().forEach((oInnerControl: any) => {
|
|
44
|
+
const oContent = oInnerControl.getContent && oInnerControl.getContent();
|
|
45
|
+
if (oInnerControl.isA("sap.ui.mdc.FilterField") && oContent && oContent.isA("sap.fe.core.controls.filterbar.VisualFilter")) {
|
|
46
|
+
// store the visual filter for later use.
|
|
47
|
+
const oVFId = oInnerControl.getId();
|
|
48
|
+
this.aAllVisualFilters[oVFId] = oContent;
|
|
49
|
+
// remove the content aggregation to render internal content of the field
|
|
50
|
+
oInnerControl.setContent(null);
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
// store filter fields to refer to when switching between layout
|
|
55
|
+
this.aAllFilterFields.push(oControl);
|
|
56
|
+
MdcFilterContainer.prototype.insertFilterField.apply(this, [oControl, iIndex]);
|
|
57
|
+
};
|
|
58
|
+
FilterContainer.prototype.removeFilterField = function(oControl: any) {
|
|
59
|
+
const oFilterFieldIndex = this.aAllFilterFields.findIndex(function(oFilterField: any) {
|
|
60
|
+
return oFilterField.getId() === oControl.getId();
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
// Setting VF content for Fillterfield before removing
|
|
64
|
+
oControl.getContent().forEach((oInnerControl: any) => {
|
|
65
|
+
if (oInnerControl.isA("sap.ui.mdc.FilterField") && !oInnerControl.getContent()) {
|
|
66
|
+
const oVFId = oInnerControl.getId();
|
|
67
|
+
if (this.aAllVisualFilters[oVFId]) {
|
|
68
|
+
oInnerControl.setContent(this.aAllVisualFilters[oVFId]);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
this.aAllFilterFields.splice(oFilterFieldIndex, 1);
|
|
74
|
+
|
|
75
|
+
MdcFilterContainer.prototype.removeFilterField.apply(this, [oControl]);
|
|
76
|
+
};
|
|
77
|
+
FilterContainer.prototype.removeAllFilterFields = function() {
|
|
78
|
+
this.aAllFilterFields = [];
|
|
79
|
+
this.aAllVisualFilters = {};
|
|
80
|
+
this.oLayout.removeAllContent();
|
|
81
|
+
};
|
|
82
|
+
FilterContainer.prototype.getAllButtons = function() {
|
|
83
|
+
return this.oLayout.getEndContent();
|
|
84
|
+
};
|
|
85
|
+
FilterContainer.prototype.removeButton = function(oControl: any) {
|
|
86
|
+
this.oLayout.removeEndContent(oControl);
|
|
87
|
+
};
|
|
88
|
+
FilterContainer.prototype.getAllFilterFields = function() {
|
|
89
|
+
return this.aAllFilterFields.slice();
|
|
90
|
+
};
|
|
91
|
+
FilterContainer.prototype.getAllVisualFilterFields = function() {
|
|
92
|
+
return this.aAllVisualFilters;
|
|
93
|
+
};
|
|
94
|
+
FilterContainer.prototype.setAllFilterFields = function(aFilterFields: any) {
|
|
95
|
+
this.aAllFilterFields = aFilterFields;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
export default FilterContainer;
|