@openui5/sap.ui.mdc 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/THIRDPARTY.txt +2 -2
- package/package.json +4 -4
- package/src/sap/ui/mdc/.library +1 -1
- package/src/sap/ui/mdc/ActionToolbar.js +1 -1
- package/src/sap/ui/mdc/Chart.js +50 -32
- package/src/sap/ui/mdc/ChartDelegate.js +66 -21
- package/src/sap/ui/mdc/ChartRenderer.js +1 -1
- package/src/sap/ui/mdc/Control.js +11 -6
- package/src/sap/ui/mdc/Element.js +10 -6
- package/src/sap/ui/mdc/Field.js +19 -4
- package/src/sap/ui/mdc/FilterBar.js +1 -1
- package/src/sap/ui/mdc/FilterBarDelegate.js +26 -0
- package/src/sap/ui/mdc/FilterField.js +41 -3
- package/src/sap/ui/mdc/Link.js +3 -3
- package/src/sap/ui/mdc/MultiValueField.js +11 -1
- package/src/sap/ui/mdc/Table.js +73 -39
- package/src/sap/ui/mdc/TableDelegate.js +28 -1
- package/src/sap/ui/mdc/ValueHelp.js +8 -3
- package/src/sap/ui/mdc/ValueHelpDelegate.js +2 -1
- package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +1 -1
- package/src/sap/ui/mdc/actiontoolbar/ActionToolbarActionRenderer.js +1 -1
- package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
- package/src/sap/ui/mdc/chart/ChartToolbar.js +13 -6
- package/src/sap/ui/mdc/chart/DrillBreadcrumbs.js +7 -7
- package/src/sap/ui/mdc/chart/DrillStackHandler.js +6 -6
- package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
- package/src/sap/ui/mdc/condition/Condition.js +1 -1
- package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
- package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
- package/src/sap/ui/mdc/condition/FilterConverter.js +4 -2
- package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +133 -25
- package/src/sap/ui/mdc/condition/Operator.js +4 -2
- package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +78 -24
- package/src/sap/ui/mdc/condition/RangeOperator.js +5 -5
- package/src/sap/ui/mdc/designtime/Util.js +63 -0
- package/src/sap/ui/mdc/designtime/actiontoolbar/ActionToolbar.designtime.js +23 -30
- package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +3 -0
- package/src/sap/ui/mdc/designtime/link/PanelItem.designtime.js +3 -1
- package/src/sap/ui/mdc/designtime/table/Table.designtime.js +39 -52
- package/src/sap/ui/mdc/field/BoolFieldHelp.js +1 -1
- package/src/sap/ui/mdc/field/ConditionFieldHelp.js +1 -1
- package/src/sap/ui/mdc/field/ConditionType.js +15 -4
- package/src/sap/ui/mdc/field/ConditionsType.js +2 -1
- package/src/sap/ui/mdc/field/CustomFieldHelp.js +1 -1
- package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
- package/src/sap/ui/mdc/field/DefineConditionPanel.js +16 -5
- package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +76 -19
- package/src/sap/ui/mdc/field/FieldBase.js +62 -11
- package/src/sap/ui/mdc/field/FieldBaseDelegate.js +1 -1
- package/src/sap/ui/mdc/field/FieldHelpBase.js +1 -1
- package/src/sap/ui/mdc/field/FieldInfoBase.js +2 -1
- package/src/sap/ui/mdc/field/FieldInput.js +1 -1
- package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
- package/src/sap/ui/mdc/field/FieldMultiInput.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelp.js +4 -1
- package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +5 -4
- package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +5 -3
- package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +7 -7
- package/src/sap/ui/mdc/field/InParameter.js +1 -1
- package/src/sap/ui/mdc/field/ListFieldHelp.js +1 -1
- package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
- package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
- package/src/sap/ui/mdc/field/OutParameter.js +1 -1
- package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
- package/src/sap/ui/mdc/field/TokenizerDisplay.js +1 -1
- package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
- package/src/sap/ui/mdc/field/content/ContentFactory.js +5 -1
- package/src/sap/ui/mdc/field/content/DateContent.js +27 -19
- package/src/sap/ui/mdc/field/content/DateTimeContent.js +0 -6
- package/src/sap/ui/mdc/filterbar/FilterBarBase.js +76 -208
- package/src/sap/ui/mdc/filterbar/PropertyHelper.js +27 -2
- package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +127 -57
- package/src/sap/ui/mdc/filterbar/p13n/FilterColumnLayout.js +2 -2
- package/src/sap/ui/mdc/filterbar/p13n/GroupContainer.js +7 -3
- package/src/sap/ui/mdc/filterbar/p13n/TableContainer.js +52 -14
- package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +37 -19
- package/src/sap/ui/mdc/filterbar/vh/FilterContainer.js +1 -1
- package/src/sap/ui/mdc/flexibility/AggregationConfigFlex.js +48 -31
- package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
- package/src/sap/ui/mdc/flexibility/ChartItemFlex.js +36 -0
- package/src/sap/ui/mdc/flexibility/ConditionFlex.js +47 -10
- package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
- package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
- package/src/sap/ui/mdc/flexibility/ItemBaseFlex.js +0 -1
- package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +2 -85
- package/src/sap/ui/mdc/library.js +11 -4
- package/src/sap/ui/mdc/link/ContactDetails.js +1 -1
- package/src/sap/ui/mdc/link/ContactDetailsAddressItem.js +1 -1
- package/src/sap/ui/mdc/link/ContactDetailsEmailItem.js +1 -1
- package/src/sap/ui/mdc/link/ContactDetailsItem.js +1 -1
- package/src/sap/ui/mdc/link/ContactDetailsPhoneItem.js +1 -1
- package/src/sap/ui/mdc/link/Factory.js +1 -1
- package/src/sap/ui/mdc/link/FakeFlpConnector.js +1 -1
- package/src/sap/ui/mdc/link/LinkItem.js +1 -1
- package/src/sap/ui/mdc/link/Panel.js +1 -1
- package/src/sap/ui/mdc/link/PanelItem.js +1 -1
- package/src/sap/ui/mdc/link/PanelListItem.js +1 -1
- package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
- package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
- package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
- package/src/sap/ui/mdc/messagebundle.properties +2 -1
- package/src/sap/ui/mdc/mixin/AdaptationMixin.js +20 -19
- package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -141
- package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -9
- package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
- package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +348 -0
- package/src/sap/ui/mdc/odata/TypeUtil.js +1 -1
- package/src/sap/ui/mdc/odata/v4/ChartPropertyHelper.js +70 -3
- package/src/sap/ui/mdc/odata/v4/FilterBarDelegate.js +116 -20
- package/src/sap/ui/mdc/odata/v4/ODataMetaModelUtil.js +2 -2
- package/src/sap/ui/mdc/odata/v4/TableDelegate.js +11 -33
- package/src/sap/ui/mdc/odata/v4/TypeUtil.js +2 -4
- package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.js +1 -1
- package/src/sap/ui/mdc/odata/v4/vizChart/ChartDelegate.js +281 -263
- package/src/sap/ui/mdc/p13n/AdaptationProvider.js +1 -1
- package/src/sap/ui/mdc/p13n/Engine.js +21 -18
- package/src/sap/ui/mdc/p13n/FlexUtil.js +0 -5
- package/src/sap/ui/mdc/p13n/PropertyHelper.js +2 -2
- package/src/sap/ui/mdc/p13n/StateUtil.js +4 -0
- package/src/sap/ui/mdc/p13n/UIManager.js +16 -13
- package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +18 -14
- package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
- package/src/sap/ui/mdc/p13n/panels/ActionToolbarPanel.js +6 -6
- package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +49 -27
- package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +4 -3
- package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +136 -0
- package/src/sap/ui/mdc/p13n/panels/GroupView.js +53 -28
- package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +54 -18
- package/src/sap/ui/mdc/p13n/subcontroller/ActionToolbarController.js +4 -7
- package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +1 -2
- package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +1 -1
- package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +8 -4
- package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +1 -0
- package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +2 -2
- package/src/sap/ui/mdc/table/CreationRow.js +1 -1
- package/src/sap/ui/mdc/table/GridTableType.js +75 -27
- package/src/sap/ui/mdc/table/PropertyHelper.js +20 -13
- package/src/sap/ui/mdc/table/ResponsiveTableType.js +86 -13
- package/src/sap/ui/mdc/table/RowActionItem.js +119 -0
- package/src/sap/ui/mdc/table/RowSettings.js +42 -1
- package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +2 -2
- package/src/sap/ui/mdc/themes/base/Chart.less +2 -0
- package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +1 -0
- package/src/sap/ui/mdc/util/DateUtil.js +32 -7
- package/src/sap/ui/mdc/util/FilterUtil.js +1 -1
- package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
- package/src/sap/ui/mdc/util/PropertyHelper.js +201 -76
- package/src/sap/ui/mdc/util/TypeUtil.js +1 -1
- package/src/sap/ui/mdc/valuehelp/Dialog.js +1 -1
- package/src/sap/ui/mdc/valuehelp/Popover.js +5 -3
- package/src/sap/ui/mdc/valuehelp/base/Container.js +1 -1
- package/src/sap/ui/mdc/valuehelp/base/Content.js +1 -1
- package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
- package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +4 -4
- package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
- package/src/sap/ui/mdc/valuehelp/content/Bool.js +1 -1
- package/src/sap/ui/mdc/valuehelp/content/Conditions.js +1 -1
- package/src/sap/ui/mdc/valuehelp/content/FixedList.js +13 -10
- package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +4 -10
- package/src/sap/ui/mdc/valuehelp/content/MTable.js +6 -4
- package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +2 -0
- package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +0 -1
- package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +8 -6
- package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +0 -150
- package/src/sap/ui/mdc/p13n/panels/BasePanel.js +0 -721
- package/src/sap/ui/mdc/p13n/panels/ListView.js +0 -408
- package/src/sap/ui/mdc/p13n/panels/SelectionPanel.js +0 -92
- package/src/sap/ui/mdc/p13n/panels/SortPanel.js +0 -150
- package/src/sap/ui/mdc/ui/Container.js +0 -240
- package/src/sap/ui/mdc/ui/ContainerItem.js +0 -79
|
@@ -22,7 +22,7 @@ sap.ui.define([
|
|
|
22
22
|
var AggregationConfigFlex = {};
|
|
23
23
|
|
|
24
24
|
var fConfigModified = function(oControl) {
|
|
25
|
-
if (!oControl._bWaitForModificationChanges) {
|
|
25
|
+
if (!oControl._bWaitForModificationChanges && oControl.isA) {
|
|
26
26
|
oControl._bWaitForModificationChanges = true;
|
|
27
27
|
Engine.getInstance().waitForChanges(oControl).then(function() {
|
|
28
28
|
if (oControl._onModifications instanceof Function) {
|
|
@@ -33,6 +33,19 @@ sap.ui.define([
|
|
|
33
33
|
}
|
|
34
34
|
};
|
|
35
35
|
|
|
36
|
+
var fnQueueChange = function(oControl, fTask) {
|
|
37
|
+
var fCleanupPromiseQueue = function(pOriginalPromise) {
|
|
38
|
+
if (oControl._pQueue === pOriginalPromise){
|
|
39
|
+
delete oControl._pQueue;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
oControl._pQueue = oControl._pQueue instanceof Promise ? oControl._pQueue.then(fTask) : fTask();
|
|
44
|
+
oControl._pQueue.then(fCleanupPromiseQueue.bind(null, oControl._pQueue));
|
|
45
|
+
|
|
46
|
+
return oControl._pQueue;
|
|
47
|
+
};
|
|
48
|
+
|
|
36
49
|
/**
|
|
37
50
|
* Creates a changehandler specific to the provided aggregation and property name,
|
|
38
51
|
* to enhance the xConfig object for a given mdc control instance.
|
|
@@ -58,39 +71,43 @@ sap.ui.define([
|
|
|
58
71
|
"changeHandler": {
|
|
59
72
|
applyChange: function (oChange, oControl, mPropertyBag) {
|
|
60
73
|
|
|
61
|
-
return
|
|
62
|
-
|
|
63
|
-
})
|
|
64
|
-
.then(function(oPriorAggregationConfig) {
|
|
65
|
-
var sOldValue = null;
|
|
66
|
-
|
|
67
|
-
if (oPriorAggregationConfig
|
|
68
|
-
&& oPriorAggregationConfig.aggregations
|
|
69
|
-
&& oPriorAggregationConfig.aggregations[sAffectedAggregation]
|
|
70
|
-
&& oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().name]
|
|
71
|
-
&& oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().name][sAffectedProperty]
|
|
72
|
-
){
|
|
73
|
-
sOldValue = oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().name][sAffectedProperty];
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
oChange.setRevertData({
|
|
77
|
-
name: oChange.getContent().name,
|
|
78
|
-
value: sOldValue
|
|
79
|
-
});
|
|
80
|
-
|
|
81
|
-
return Engine.getInstance().enhanceXConfig(oControl, {
|
|
82
|
-
controlMeta: {
|
|
83
|
-
aggregation: sAffectedAggregation,
|
|
84
|
-
property: sAffectedProperty
|
|
85
|
-
},
|
|
86
|
-
name: oChange.getContent().name,
|
|
87
|
-
value: oChange.getContent().value,
|
|
74
|
+
return fnQueueChange(oControl, function(){
|
|
75
|
+
return Engine.getInstance().readXConfig(oControl, {
|
|
88
76
|
propertyBag: mPropertyBag
|
|
77
|
+
})
|
|
78
|
+
.then(function(oPriorAggregationConfig) {
|
|
79
|
+
var sOldValue = null;
|
|
80
|
+
|
|
81
|
+
if (oPriorAggregationConfig
|
|
82
|
+
&& oPriorAggregationConfig.aggregations
|
|
83
|
+
&& oPriorAggregationConfig.aggregations[sAffectedAggregation]
|
|
84
|
+
&& oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().name]
|
|
85
|
+
&& oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().name][sAffectedProperty]
|
|
86
|
+
){
|
|
87
|
+
sOldValue = oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().name][sAffectedProperty];
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
oChange.setRevertData({
|
|
91
|
+
name: oChange.getContent().name,
|
|
92
|
+
value: sOldValue
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
return Engine.getInstance().enhanceXConfig(oControl, {
|
|
96
|
+
controlMeta: {
|
|
97
|
+
aggregation: sAffectedAggregation,
|
|
98
|
+
property: sAffectedProperty
|
|
99
|
+
},
|
|
100
|
+
name: oChange.getContent().name,
|
|
101
|
+
value: oChange.getContent().value,
|
|
102
|
+
propertyBag: mPropertyBag
|
|
103
|
+
});
|
|
104
|
+
})
|
|
105
|
+
.then(function() {
|
|
106
|
+
fConfigModified(oControl);
|
|
89
107
|
});
|
|
90
|
-
|
|
91
|
-
.then(function() {
|
|
92
|
-
fConfigModified(oControl);
|
|
108
|
+
|
|
93
109
|
});
|
|
110
|
+
|
|
94
111
|
},
|
|
95
112
|
completeChangeContent: function (oChange, mChangeSpecificInfo, mPropertyBag) {
|
|
96
113
|
// Not used, but needs to be there
|
|
@@ -11,8 +11,24 @@ sap.ui.define([
|
|
|
11
11
|
|
|
12
12
|
var oChartItemFlex = Object.assign({}, ItemBaseFlex);
|
|
13
13
|
|
|
14
|
+
/* Disabled until clarified with flex
|
|
15
|
+
var fnQueueChange = function(oControl, fTask) {
|
|
16
|
+
var fCleanupPromiseQueue = function(pOriginalPromise) {
|
|
17
|
+
if (oControl._pQueue === pOriginalPromise){
|
|
18
|
+
delete oControl._pQueue;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
oControl._pQueue = oControl._pQueue instanceof Promise ? oControl._pQueue.then(fTask) : fTask();
|
|
23
|
+
oControl._pQueue.then(fCleanupPromiseQueue.bind(null, oControl._pQueue));
|
|
24
|
+
|
|
25
|
+
return oControl._pQueue;
|
|
26
|
+
};*/
|
|
27
|
+
|
|
14
28
|
oChartItemFlex.beforeAddItem = function(Delegate, sDataPropertyName, oControl, mPropertyBag, oChangeContent) {
|
|
29
|
+
|
|
15
30
|
return Delegate.addItem.call(Delegate, sDataPropertyName, oControl, mPropertyBag, oChangeContent.role);
|
|
31
|
+
|
|
16
32
|
};
|
|
17
33
|
|
|
18
34
|
oChartItemFlex.findItem = function(oModifier, aItems, sName) {
|
|
@@ -35,6 +51,26 @@ sap.ui.define([
|
|
|
35
51
|
}, Promise.resolve());
|
|
36
52
|
};
|
|
37
53
|
|
|
54
|
+
/* Disabled until clarified with flex
|
|
55
|
+
oChartItemFlex.createChangeHandler = function(fApply, fComplete, fRevert) {
|
|
56
|
+
return {
|
|
57
|
+
"changeHandler": {
|
|
58
|
+
applyChange: function(oChange, oControl, mPropertyBag) {
|
|
59
|
+
return fnQueueChange(oControl, function(){return fApply(oChange, oControl, mPropertyBag);});
|
|
60
|
+
},
|
|
61
|
+
completeChangeContent: function(oChange, mChangeSpecificInfo, mPropertyBag) {
|
|
62
|
+
fComplete(oChange, mChangeSpecificInfo, mPropertyBag);
|
|
63
|
+
},
|
|
64
|
+
revertChange: function(oChange, oControl, mPropertyBag) {
|
|
65
|
+
return fnQueueChange(fRevert(oChange, oControl, mPropertyBag, true));
|
|
66
|
+
}
|
|
67
|
+
},
|
|
68
|
+
"layers": {
|
|
69
|
+
"USER": true
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
};*/
|
|
73
|
+
|
|
38
74
|
oChartItemFlex.addItem = oChartItemFlex.createAddChangeHandler();
|
|
39
75
|
oChartItemFlex.removeItem = oChartItemFlex.createRemoveChangeHandler();
|
|
40
76
|
oChartItemFlex.moveItem = oChartItemFlex.createMoveChangeHandler();
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
7
|
-
'sap/base/util/merge', 'sap/ui/mdc/condition/FilterOperatorUtil'
|
|
8
|
-
], function(merge, FilterOperatorUtil) {
|
|
7
|
+
'sap/base/util/merge', 'sap/base/Log', 'sap/ui/mdc/condition/FilterOperatorUtil'
|
|
8
|
+
], function(merge, Log, FilterOperatorUtil) {
|
|
9
9
|
"use strict";
|
|
10
10
|
|
|
11
11
|
/*
|
|
@@ -30,6 +30,15 @@ sap.ui.define([
|
|
|
30
30
|
return oControl._pQueue;
|
|
31
31
|
};
|
|
32
32
|
|
|
33
|
+
|
|
34
|
+
var fnGetDelegate = function(sDelegatePath) {
|
|
35
|
+
return new Promise(function(fResolveLoad, fRejectLoad){
|
|
36
|
+
sap.ui.require([
|
|
37
|
+
sDelegatePath
|
|
38
|
+
], fResolveLoad, fRejectLoad);
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
33
42
|
var fDetermineFilterControl = function(oControl) {
|
|
34
43
|
var oController = oControl && oControl.getEngine ? oControl.getEngine().getController(oControl, "Filter") : null;
|
|
35
44
|
return oController ? oController.getFilterControl() : null;
|
|
@@ -79,10 +88,24 @@ sap.ui.define([
|
|
|
79
88
|
});
|
|
80
89
|
}
|
|
81
90
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
return
|
|
85
|
-
}
|
|
91
|
+
return oModifier.getProperty(oControl, "delegate")
|
|
92
|
+
.then(function(oDelegate){
|
|
93
|
+
return fnGetDelegate(oDelegate.name);
|
|
94
|
+
})
|
|
95
|
+
.then(function(Delegate){
|
|
96
|
+
var fnDelegateAddCondition = Delegate && (Delegate.getFilterDelegate ? Delegate.getFilterDelegate().addCondition : Delegate.addCondition);
|
|
97
|
+
if (fnDelegateAddCondition) {
|
|
98
|
+
return fnDelegateAddCondition(oChangeContent.name, oControl, mPropertyBag)
|
|
99
|
+
.catch(function(oEx) {
|
|
100
|
+
Log.error("Error during Delegate.addCondition call: " + oEx);
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
})
|
|
104
|
+
.finally(function() {
|
|
105
|
+
if (oFilterControl && oFilterControl.addCondition) {
|
|
106
|
+
return oFilterControl.addCondition(oChangeContent.name, oChangeContent.condition);
|
|
107
|
+
}
|
|
108
|
+
});
|
|
86
109
|
}
|
|
87
110
|
});
|
|
88
111
|
});
|
|
@@ -132,10 +155,24 @@ sap.ui.define([
|
|
|
132
155
|
});
|
|
133
156
|
}
|
|
134
157
|
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
return
|
|
138
|
-
}
|
|
158
|
+
return oModifier.getProperty(oControl, "delegate")
|
|
159
|
+
.then(function(oDelegate){
|
|
160
|
+
return fnGetDelegate(oDelegate.name);
|
|
161
|
+
})
|
|
162
|
+
.then(function(Delegate){
|
|
163
|
+
var fnDelegateRemoveCondition = Delegate && (Delegate.getFilterDelegate ? Delegate.getFilterDelegate().removeCondition : Delegate.removeCondition);
|
|
164
|
+
if (fnDelegateRemoveCondition) {
|
|
165
|
+
return fnDelegateRemoveCondition(oChangeContent.name, oControl, mPropertyBag)
|
|
166
|
+
.catch(function(oEx) {
|
|
167
|
+
Log.error("Error during Delegate.removeCondition call: " + oEx);
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
})
|
|
171
|
+
.finally(function() {
|
|
172
|
+
if (oFilterControl && oFilterControl.removeCondition) {
|
|
173
|
+
return oFilterControl.removeCondition(oChangeContent.name, oChangeContent.condition);
|
|
174
|
+
}
|
|
175
|
+
});
|
|
139
176
|
}
|
|
140
177
|
}
|
|
141
178
|
});
|
|
@@ -21,7 +21,6 @@ sap.ui.define([
|
|
|
21
21
|
* @param {object} Delegate The control specific delegate
|
|
22
22
|
* @param {string} sDataPropertyName The property name which should be added
|
|
23
23
|
* @param {object} oControl The control defined as <code>selectorElement</code> in the change
|
|
24
|
-
* @param {object} oChangeContent The current change content
|
|
25
24
|
* @param {object} mPropertyBag Instance of property bag from Flex change API
|
|
26
25
|
*/
|
|
27
26
|
beforeAddItem: function(Delegate, sDataPropertyName, oControl, mPropertyBag) {
|
|
@@ -3,102 +3,19 @@
|
|
|
3
3
|
* (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
|
-
sap.ui.define([
|
|
7
|
-
'sap/base/util/merge'
|
|
8
|
-
], function(merge) {
|
|
6
|
+
sap.ui.define([], function() {
|
|
9
7
|
"use strict";
|
|
10
8
|
|
|
11
|
-
|
|
12
|
-
* NOTE: As the PropertyInfoFlex is the central change handler for property info
|
|
13
|
-
* processing, it might happen that the in/out handling of the ConditionModel
|
|
14
|
-
* might cause multiple condition changes to be applied in parallel. Due to the
|
|
15
|
-
* asynchronous modifier handling, we need to make sure to queue these changes in their
|
|
16
|
-
* incoming order as parallel processing might falsely overwrite the 'filterConditions' or the 'propertyInfo'
|
|
17
|
-
* properties causing the change handler to break the controls housekeeping and the last
|
|
18
|
-
* parallel filter change would always win.
|
|
19
|
-
*
|
|
20
|
-
* Same processing is done in the ConditionFlex - handler.
|
|
21
|
-
*/
|
|
22
|
-
var fnQueueChange = function(oControl, fTask) {
|
|
23
|
-
var fCleanupPromiseQueue = function(pOriginalPromise) {
|
|
24
|
-
if (oControl._pQueue === pOriginalPromise){
|
|
25
|
-
delete oControl._pQueue;
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
oControl._pQueue = oControl._pQueue instanceof Promise ? oControl._pQueue.then(fTask) : fTask();
|
|
30
|
-
oControl._pQueue.then(fCleanupPromiseQueue.bind(null, oControl._pQueue));
|
|
31
|
-
|
|
32
|
-
return oControl._pQueue;
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
var fAddFilterInfo = function(oChange, oChangeContent, oControl, mPropertyBag) {
|
|
36
|
-
|
|
37
|
-
return fnQueueChange(oControl, function(){
|
|
38
|
-
var oModifier = mPropertyBag.modifier;
|
|
39
|
-
|
|
40
|
-
return oModifier.getProperty(oControl, "propertyInfo")
|
|
41
|
-
.then(function(aPropertyInfo) {
|
|
42
|
-
|
|
43
|
-
var aPropertiesInfo = merge([], aPropertyInfo);
|
|
44
|
-
var nIdx = aPropertiesInfo.findIndex(function(oEntry) {
|
|
45
|
-
return oEntry.name === oChangeContent.name;
|
|
46
|
-
});
|
|
47
|
-
if (nIdx < 0) {
|
|
48
|
-
aPropertiesInfo.push({
|
|
49
|
-
name: oChangeContent.name,
|
|
50
|
-
dataType: oChangeContent.dataType,
|
|
51
|
-
maxConditions: oChangeContent.maxConditions,
|
|
52
|
-
constraints: oChangeContent.constraints,
|
|
53
|
-
formatOptions: oChangeContent.formatOptions,
|
|
54
|
-
required: oChangeContent.required,
|
|
55
|
-
caseSensitive: oChangeContent.caseSensitive,
|
|
56
|
-
display: oChangeContent.display
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
oModifier.setProperty(oControl, "propertyInfo", aPropertiesInfo);
|
|
60
|
-
|
|
61
|
-
// Set revert data on the change
|
|
62
|
-
oChange.setRevertData({ name: oChangeContent.name});
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
var fRemoveFilterInfo = function(oChange, oChangeContent, oControl, mPropertyBag) {
|
|
69
|
-
|
|
70
|
-
return fnQueueChange(oControl, function(){
|
|
71
|
-
var oModifier = mPropertyBag.modifier;
|
|
72
|
-
|
|
73
|
-
return oModifier.getProperty(oControl, "propertyInfo")
|
|
74
|
-
.then(function(aPropertyInfos) {
|
|
75
|
-
var aPropertiesInfo = merge([], aPropertyInfos);
|
|
76
|
-
var nIdx = aPropertiesInfo.findIndex(function(oEntry) {
|
|
77
|
-
return oEntry.name === oChangeContent.name;
|
|
78
|
-
});
|
|
79
|
-
if (nIdx >= 0) {
|
|
80
|
-
aPropertiesInfo.splice(nIdx, 1);
|
|
81
|
-
oModifier.setProperty(oControl, "propertyInfo", aPropertiesInfo);
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
|
|
9
|
+
//obsolete
|
|
88
10
|
var oPropertyInfoFlex = {};
|
|
89
11
|
|
|
90
12
|
oPropertyInfoFlex.addPropertyInfo = {
|
|
91
13
|
"changeHandler": {
|
|
92
14
|
applyChange: function(oChange, oControl, mPropertyBag) {
|
|
93
|
-
return fAddFilterInfo(oChange, oChange.getContent(), oControl, mPropertyBag);
|
|
94
15
|
},
|
|
95
16
|
completeChangeContent: function(oChange, mChangeSpecificInfo, mPropertyBag) {
|
|
96
|
-
// TODO
|
|
97
17
|
},
|
|
98
18
|
revertChange: function(oChange, oControl, mPropertyBag) {
|
|
99
|
-
return fRemoveFilterInfo(oChange, oChange.getRevertData(), oControl, mPropertyBag).then(function() {
|
|
100
|
-
oChange.resetRevertData();
|
|
101
|
-
});
|
|
102
19
|
}
|
|
103
20
|
},
|
|
104
21
|
"layers": {
|
|
@@ -15,7 +15,7 @@ sap.ui.define([
|
|
|
15
15
|
"use strict";
|
|
16
16
|
|
|
17
17
|
sap.ui.getCore().initLibrary({
|
|
18
|
-
version: "1.
|
|
18
|
+
version: "1.100.0",
|
|
19
19
|
name: "sap.ui.mdc",
|
|
20
20
|
dependencies: ["sap.ui.core", "sap.m"],
|
|
21
21
|
designtime: "sap/ui/mdc/designtime/library.designtime",
|
|
@@ -52,7 +52,6 @@ sap.ui.define([
|
|
|
52
52
|
"sap.ui.mdc.MultiValueField",
|
|
53
53
|
"sap.ui.mdc.link.Panel",
|
|
54
54
|
"sap.ui.mdc.link.ContactDetails",
|
|
55
|
-
"sap.ui.mdc.ui.Container",
|
|
56
55
|
"sap.ui.mdc.Chart",
|
|
57
56
|
"sap.ui.mdc.p13n.PersistenceProvider"
|
|
58
57
|
],
|
|
@@ -84,6 +83,7 @@ sap.ui.define([
|
|
|
84
83
|
"sap.ui.mdc.field.BoolFieldHelp",
|
|
85
84
|
"sap.ui.mdc.field.ConditionFieldHelp",
|
|
86
85
|
"sap.ui.mdc.filterbar.aligned.FilterItemLayout",
|
|
86
|
+
"sap.ui.mdc.Link",
|
|
87
87
|
"sap.ui.mdc.link.ContactDetailsAddressItem",
|
|
88
88
|
"sap.ui.mdc.link.ContactDetailsEmailItem",
|
|
89
89
|
"sap.ui.mdc.link.ContactDetailsItem",
|
|
@@ -95,7 +95,6 @@ sap.ui.define([
|
|
|
95
95
|
"sap.ui.mdc.link.SemanticObjectMappingItem",
|
|
96
96
|
"sap.ui.mdc.field.InParameter",
|
|
97
97
|
"sap.ui.mdc.field.OutParameter",
|
|
98
|
-
"sap.ui.mdc.ui.ContainerItem",
|
|
99
98
|
"sap.ui.mdc.field.MultiValueFieldItem",
|
|
100
99
|
"sap.ui.mdc.ValueHelp",
|
|
101
100
|
"sap.ui.mdc.valuehelp.Popover",
|
|
@@ -132,7 +131,7 @@ sap.ui.define([
|
|
|
132
131
|
* @namespace
|
|
133
132
|
* @alias sap.ui.mdc
|
|
134
133
|
* @author SAP SE
|
|
135
|
-
* @version 1.
|
|
134
|
+
* @version 1.100.0
|
|
136
135
|
* @since 1.80
|
|
137
136
|
* @private
|
|
138
137
|
* @ui5-restricted sap.fe
|
|
@@ -1197,5 +1196,13 @@ sap.ui.define([
|
|
|
1197
1196
|
* @private
|
|
1198
1197
|
*/
|
|
1199
1198
|
|
|
1199
|
+
/**
|
|
1200
|
+
* @namespace
|
|
1201
|
+
* @name sap.ui.mdc.mixin
|
|
1202
|
+
* @private
|
|
1203
|
+
* @experimental As of version 1.82.0
|
|
1204
|
+
* @ui5-restricted sap.ui.mdc
|
|
1205
|
+
*/
|
|
1206
|
+
|
|
1200
1207
|
return thisLib;
|
|
1201
1208
|
});
|
|
@@ -15,7 +15,7 @@ sap.ui.define(['sap/ui/core/XMLComposite', 'sap/m/Text', 'sap/m/Link', 'sap/m/La
|
|
|
15
15
|
* @class The ContactDetails control is used to show additional information like for example 'contact details'.
|
|
16
16
|
* @extends sap.ui.core.XMLComposite
|
|
17
17
|
* @author SAP SE
|
|
18
|
-
* @version 1.
|
|
18
|
+
* @version 1.100.0
|
|
19
19
|
* @constructor
|
|
20
20
|
* @private
|
|
21
21
|
* @since 1.56.0
|
|
@@ -11,7 +11,7 @@ sap.ui.define([], function() {
|
|
|
11
11
|
* @namespace Factory to access services outside of sap.ui.mdc library like for example <code>ushell</code> services.
|
|
12
12
|
* @name sap.ui.mdc.link.Factory
|
|
13
13
|
* @author SAP SE
|
|
14
|
-
* @version 1.
|
|
14
|
+
* @version 1.100.0
|
|
15
15
|
* @private
|
|
16
16
|
* @since 1.54.0
|
|
17
17
|
* @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
|
|
@@ -13,7 +13,7 @@ sap.ui.define([
|
|
|
13
13
|
* @namespace FakeFlpConnector.
|
|
14
14
|
* @name sap.ui.mdc.link.FakeFlpConnector
|
|
15
15
|
* @author SAP SE
|
|
16
|
-
* @version 1.
|
|
16
|
+
* @version 1.100.0
|
|
17
17
|
* @private
|
|
18
18
|
* @since 1.54.0
|
|
19
19
|
* @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
|
|
@@ -16,7 +16,7 @@ sap.ui.define([
|
|
|
16
16
|
* @param {object} [mSettings] Initial settings for the new control
|
|
17
17
|
* @class A <code>LinkItem</code> control is used in the {@link sap.ui.mdc.Link} control to provide a navigation target.
|
|
18
18
|
* @extends sap.ui.core.Element
|
|
19
|
-
* @version 1.
|
|
19
|
+
* @version 1.100.0
|
|
20
20
|
* @constructor
|
|
21
21
|
* @private
|
|
22
22
|
* @since 1.58.0
|
|
@@ -16,7 +16,7 @@ sap.ui.define([
|
|
|
16
16
|
* @param {object} [mSettings] initial settings for the new control
|
|
17
17
|
* @class Type for <code>items</code> aggregation in <code>Panel</code> control.
|
|
18
18
|
* @extends sap.ui.core.Element
|
|
19
|
-
* @version 1.
|
|
19
|
+
* @version 1.100.0
|
|
20
20
|
* @constructor
|
|
21
21
|
* @private
|
|
22
22
|
* @since 1.54.0
|
|
@@ -16,7 +16,7 @@ sap.ui.define([
|
|
|
16
16
|
* @param {object} [mSettings] initial settings for the new control
|
|
17
17
|
* @class Type for <code>items</code> aggregation in <code>Panel</code> control.
|
|
18
18
|
* @extends sap.ui.core.XMLComposite
|
|
19
|
-
* @version 1.
|
|
19
|
+
* @version 1.100.0
|
|
20
20
|
* @constructor
|
|
21
21
|
* @private
|
|
22
22
|
* @since 1.54.0
|
|
@@ -727,7 +727,8 @@ table.PERSONALIZATION_DIALOG_GROUP_RESTRICTION=You cannot see columns {0} here s
|
|
|
727
727
|
table.PERSONALIZATION_DIALOG_TOTAL_RESTRICTION=You can only calculate totals for visible columns. If a column has not been made visible, totals will not be shown.
|
|
728
728
|
#XMSG: Message for P13n Filter Dialog when the table is filtered by related messages.
|
|
729
729
|
table.PERSONALIZATION_DIALOG_FILTER_MESSAGESTRIP=The table was filtered for rows with related messages. The defined filters are temporarily ignored.
|
|
730
|
-
|
|
730
|
+
#XMIT: Text for a Navigation Row Action Item
|
|
731
|
+
table.ROW_ACTION_ITEM_NAVIGATE=Navigation
|
|
731
732
|
|
|
732
733
|
# XTIT: Title of the Columns list (in p13nDialog)
|
|
733
734
|
fieldsui.COLUMNS=Columns
|
|
@@ -11,15 +11,6 @@ sap.ui.define(
|
|
|
11
11
|
function (Engine) {
|
|
12
12
|
"use strict";
|
|
13
13
|
|
|
14
|
-
/**
|
|
15
|
-
* @namespace
|
|
16
|
-
* @name sap.ui.mdc.mixin
|
|
17
|
-
* @private
|
|
18
|
-
* @since 1.82.0
|
|
19
|
-
* @experimental As of version 1.82.0
|
|
20
|
-
* @ui5-restricted sap.ui.mdc
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
14
|
/**
|
|
24
15
|
* Enhances a given control prototype with consolidated handling for adaptation.
|
|
25
16
|
*
|
|
@@ -41,7 +32,7 @@ sap.ui.define(
|
|
|
41
32
|
*
|
|
42
33
|
*
|
|
43
34
|
* @author SAP SE
|
|
44
|
-
* @version 1.
|
|
35
|
+
* @version 1.100.0
|
|
45
36
|
* @alias sap.ui.mdc.mixin.AdaptationMixin
|
|
46
37
|
* @namespace
|
|
47
38
|
* @since 1.82.0
|
|
@@ -56,15 +47,15 @@ sap.ui.define(
|
|
|
56
47
|
};
|
|
57
48
|
|
|
58
49
|
/**
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
50
|
+
* Hook which is executed after a chain of changes has been processed by a changehandler.
|
|
51
|
+
* <b>Note</b>: This hook will be executed whenever a change is applied or reverted, e.g:
|
|
52
|
+
* <ul>
|
|
53
|
+
* <li><code>variant appliance</code></li>
|
|
54
|
+
* <li><code>enduser personalization</code></li>
|
|
55
|
+
* <li><code>reset triggered</code></li>
|
|
56
|
+
* </ul>
|
|
57
|
+
*
|
|
58
|
+
*/
|
|
68
59
|
AdaptationMixin._onModifications = function() {
|
|
69
60
|
//
|
|
70
61
|
};
|
|
@@ -156,12 +147,22 @@ sap.ui.define(
|
|
|
156
147
|
};
|
|
157
148
|
};
|
|
158
149
|
|
|
150
|
+
// Needed for unit testing as flex is not available
|
|
151
|
+
AdaptationMixin._getWaitForChangesPromise = function() {
|
|
152
|
+
var oEngine = this.getEngine && this.getEngine();
|
|
153
|
+
if (!oEngine) {
|
|
154
|
+
throw "Engine instance not found.";
|
|
155
|
+
}
|
|
156
|
+
return oEngine.waitForChanges(this);
|
|
157
|
+
};
|
|
158
|
+
|
|
159
159
|
return function () {
|
|
160
160
|
this.retrieveInbuiltFilter = AdaptationMixin.retrieveInbuiltFilter;
|
|
161
161
|
this.getInbuiltFilter = AdaptationMixin.getInbuiltFilter;
|
|
162
162
|
this.validateState = AdaptationMixin.validateState;
|
|
163
163
|
this._onModifications = AdaptationMixin._onModifications;
|
|
164
164
|
this._onChangeAppliance = AdaptationMixin._onChangeAppliance;
|
|
165
|
+
this._getWaitForChangesPromise = AdaptationMixin._getWaitForChangesPromise;
|
|
165
166
|
this.getEngine = AdaptationMixin.getEngine;
|
|
166
167
|
this.exit = AdaptationMixin.exit(this.exit);
|
|
167
168
|
};
|