@openui5/sap.ui.mdc 1.97.1 → 1.99.1
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/.reuse/dep5 +25 -30
- package/THIRDPARTY.txt +14 -21
- package/package.json +4 -4
- package/src/sap/ui/mdc/.library +1 -1
- package/src/sap/ui/mdc/ActionToolbar.js +6 -3
- package/src/sap/ui/mdc/AggregationBaseDelegate.js +2 -2
- package/src/sap/ui/mdc/BaseDelegate.js +1 -1
- package/src/sap/ui/mdc/Chart.js +1100 -1796
- package/src/sap/ui/mdc/ChartDelegate.js +429 -270
- package/src/sap/ui/mdc/ChartRenderer.js +73 -77
- package/src/sap/ui/mdc/Control.js +1 -1
- package/src/sap/ui/mdc/Element.js +1 -1
- package/src/sap/ui/mdc/Field.js +2 -2
- package/src/sap/ui/mdc/FilterBar.js +3 -2
- package/src/sap/ui/mdc/FilterField.js +11 -8
- package/src/sap/ui/mdc/Link.js +23 -4
- package/src/sap/ui/mdc/LinkDelegate.js +3 -3
- package/src/sap/ui/mdc/MultiValueField.js +20 -6
- package/src/sap/ui/mdc/Table.js +79 -64
- package/src/sap/ui/mdc/TableDelegate.js +40 -12
- package/src/sap/ui/mdc/ValueHelp.js +19 -9
- package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +2 -2
- package/src/sap/ui/mdc/{chartNew/ChartSelectionDetailsNew.js → chart/ChartSelectionDetails.js} +8 -8
- package/src/sap/ui/mdc/{chartNew/ChartToolbarNew.js → chart/ChartToolbar.js} +49 -13
- package/src/sap/ui/mdc/chart/ChartTypeButton.js +55 -54
- package/src/sap/ui/mdc/{chartNew/DrillBreadcrumbsNew.js → chart/DrillBreadcrumbs.js} +3 -3
- package/src/sap/ui/mdc/chart/DrillStackHandler.js +38 -249
- package/src/sap/ui/mdc/chart/Item.js +62 -92
- package/src/sap/ui/mdc/{chartNew/PropertyHelperNew.js → chart/PropertyHelper.js} +3 -3
- package/src/sap/ui/mdc/chart/SelectionDetailsActions.js +17 -21
- 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 +1 -1
- package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +256 -43
- package/src/sap/ui/mdc/condition/Operator.js +1 -1
- package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +1 -1
- package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
- package/src/sap/ui/mdc/designtime/chart/Chart.designtime.js +80 -5
- package/src/sap/ui/mdc/designtime/field/Field.designtime.js +81 -5
- package/src/sap/ui/mdc/designtime/filterbar/FilterBarBase.designtime.js +3 -0
- package/src/sap/ui/mdc/designtime/table/Table.designtime.js +60 -20
- 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 +3 -3
- package/src/sap/ui/mdc/field/ConditionsType.js +1 -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 +75 -27
- package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +4 -4
- package/src/sap/ui/mdc/field/FieldBase.js +32 -6
- package/src/sap/ui/mdc/field/FieldBaseRenderer.js +0 -3
- package/src/sap/ui/mdc/field/FieldHelpBase.js +2 -2
- package/src/sap/ui/mdc/field/FieldInfoBase.js +23 -10
- 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 +2 -2
- package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelpMTableWrapper.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelpMdcTableWrapper.js +2 -2
- package/src/sap/ui/mdc/field/FieldValueHelpTableWrapperBase.js +6 -3
- package/src/sap/ui/mdc/field/FieldValueHelpUITableWrapper.js +1 -1
- package/src/sap/ui/mdc/field/InParameter.js +1 -1
- package/src/sap/ui/mdc/field/ListFieldHelp.js +10 -2
- 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 +70 -0
- package/src/sap/ui/mdc/field/TokenDisplayRenderer.js +24 -0
- package/src/sap/ui/mdc/field/TokenizerDisplay.js +80 -0
- package/src/sap/ui/mdc/field/TokenizerDisplayRenderer.js +69 -0
- package/src/sap/ui/mdc/field/ValueHelpPanel.js +1 -1
- package/src/sap/ui/mdc/field/content/ContentFactory.js +5 -5
- package/src/sap/ui/mdc/field/content/DateContent.js +2 -2
- package/src/sap/ui/mdc/field/content/DefaultContent.js +35 -13
- package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
- package/src/sap/ui/mdc/filterbar/FilterBarBase.js +335 -126
- package/src/sap/ui/mdc/filterbar/FilterBarBaseRenderer.js +1 -1
- package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
- package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +8 -2
- package/src/sap/ui/mdc/filterbar/vh/CollectiveSearchSelect.js +3 -1
- package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +7 -1
- package/src/sap/ui/mdc/filterbar/vh/GenericFilterBarDelegate.js +6 -6
- package/src/sap/ui/mdc/flexibility/AggregateFlex.js +2 -2
- package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +6 -4
- package/src/sap/ui/mdc/flexibility/ColumnFlex.js +1 -1
- package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +4 -3
- package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
- package/src/sap/ui/mdc/flexibility/GroupFlex.js +1 -1
- package/src/sap/ui/mdc/flexibility/Panel.flexibility.js +9 -3
- package/src/sap/ui/mdc/flexibility/PropertyInfoFlex.js +110 -0
- package/src/sap/ui/mdc/flexibility/SortFlex.js +2 -2
- package/src/sap/ui/mdc/flp/FlpLinkDelegate.js +6 -6
- package/src/sap/ui/mdc/library.js +45 -42
- 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 +2 -2
- 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/Log.js +1 -1
- package/src/sap/ui/mdc/link/Panel.js +140 -177
- 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 +55 -1
- package/src/sap/ui/mdc/messagebundle_ar.properties +39 -4
- package/src/sap/ui/mdc/messagebundle_bg.properties +54 -19
- package/src/sap/ui/mdc/messagebundle_ca.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_cs.properties +52 -17
- package/src/sap/ui/mdc/messagebundle_cy.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_da.properties +44 -9
- package/src/sap/ui/mdc/messagebundle_de.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_el.properties +38 -3
- package/src/sap/ui/mdc/messagebundle_en.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_en_GB.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +61 -4
- package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_es.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_es_MX.properties +51 -16
- package/src/sap/ui/mdc/messagebundle_et.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_fi.properties +43 -8
- package/src/sap/ui/mdc/messagebundle_fr.properties +38 -3
- package/src/sap/ui/mdc/messagebundle_fr_CA.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_hi.properties +38 -3
- package/src/sap/ui/mdc/messagebundle_hr.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_hu.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_id.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_it.properties +53 -18
- package/src/sap/ui/mdc/messagebundle_iw.properties +38 -3
- package/src/sap/ui/mdc/messagebundle_ja.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_kk.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_ko.properties +41 -6
- package/src/sap/ui/mdc/messagebundle_lt.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_lv.properties +41 -6
- package/src/sap/ui/mdc/messagebundle_ms.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_nl.properties +42 -7
- package/src/sap/ui/mdc/messagebundle_no.properties +45 -10
- package/src/sap/ui/mdc/messagebundle_pl.properties +38 -3
- package/src/sap/ui/mdc/messagebundle_pt.properties +44 -9
- package/src/sap/ui/mdc/messagebundle_pt_PT.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_ro.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_ru.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_sh.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_sk.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_sl.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_sv.properties +39 -4
- package/src/sap/ui/mdc/messagebundle_th.properties +40 -5
- package/src/sap/ui/mdc/messagebundle_tr.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_uk.properties +41 -6
- package/src/sap/ui/mdc/messagebundle_vi.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_zh_CN.properties +37 -2
- package/src/sap/ui/mdc/messagebundle_zh_TW.properties +37 -2
- package/src/sap/ui/mdc/mixin/AdaptationMixin.js +19 -5
- package/src/sap/ui/mdc/mixin/DelegateMixin.js +2 -2
- package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +14 -9
- package/src/sap/ui/mdc/mixin/PromiseMixin.js +2 -3
- package/src/sap/ui/mdc/odata/TypeUtil.js +1 -1
- package/src/sap/ui/mdc/odata/v4/ChartDelegate.js +29 -483
- package/src/sap/ui/mdc/odata/v4/{ChartPropertyHelperNew.js → ChartPropertyHelper.js} +5 -5
- package/src/sap/ui/mdc/odata/v4/TableDelegate.js +112 -96
- package/src/sap/ui/mdc/odata/v4/TypeUtil.js +1 -1
- package/src/sap/ui/mdc/odata/v4/util/DelegateUtil.js +1 -1
- package/src/sap/ui/mdc/odata/v4/vizChart/{ChartDelegateNew.js → ChartDelegate.js} +206 -116
- package/src/sap/ui/mdc/p13n/Engine.js +31 -13
- package/src/sap/ui/mdc/p13n/FlexUtil.js +11 -118
- package/src/sap/ui/mdc/p13n/P13nBuilder.js +7 -7
- package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
- package/src/sap/ui/mdc/p13n/StateUtil.js +20 -6
- package/src/sap/ui/mdc/p13n/UIManager.js +5 -7
- package/src/sap/ui/mdc/p13n/modification/FlexModificationHandler.js +4 -1
- package/src/sap/ui/mdc/p13n/modification/ModificationHandler.js +9 -6
- package/src/sap/ui/mdc/p13n/modules/DefaultProviderRegistry.js +1 -1
- package/src/sap/ui/mdc/p13n/panels/ChartItemPanel.js +1092 -48
- package/src/sap/ui/mdc/p13n/panels/LinkSelectionPanel.js +72 -0
- package/src/sap/ui/mdc/p13n/panels/ListView.js +6 -2
- package/src/sap/ui/mdc/p13n/subcontroller/AdaptFiltersController.js +6 -5
- package/src/sap/ui/mdc/p13n/subcontroller/BaseController.js +156 -11
- package/src/sap/ui/mdc/p13n/subcontroller/ChartItemController.js +15 -26
- package/src/sap/ui/mdc/p13n/subcontroller/ColumnController.js +6 -5
- package/src/sap/ui/mdc/p13n/subcontroller/FilterController.js +14 -7
- package/src/sap/ui/mdc/p13n/subcontroller/LinkPanelController.js +173 -0
- package/src/sap/ui/mdc/p13n/subcontroller/SortController.js +10 -17
- package/src/sap/ui/mdc/table/Column.js +12 -12
- package/src/sap/ui/mdc/table/CreationRow.js +11 -11
- package/src/sap/ui/mdc/table/GridTableType.js +5 -6
- package/src/sap/ui/mdc/table/PropertyHelper.js +44 -7
- package/src/sap/ui/mdc/table/ResponsiveTableType.js +8 -10
- package/src/sap/ui/mdc/table/RowSettings.js +4 -4
- package/src/sap/ui/mdc/table/TableTypeBase.js +2 -2
- package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
- package/src/sap/ui/mdc/themes/base/FieldBase.less +0 -5
- package/src/sap/ui/mdc/themes/base/TokenDisplay.less +89 -0
- package/src/sap/ui/mdc/themes/base/TokenizerDisplay.less +90 -0
- package/src/sap/ui/mdc/themes/base/ValueHelpDialog.less +15 -4
- package/src/sap/ui/mdc/themes/base/library.source.less +2 -0
- package/src/sap/ui/mdc/ui/Container.js +2 -2
- package/src/sap/ui/mdc/ui/ContainerItem.js +2 -2
- package/src/sap/ui/mdc/util/Common.js +1 -1
- package/src/sap/ui/mdc/util/DateUtil.js +1 -1
- package/src/sap/ui/mdc/util/FilterUtil.js +1 -1
- package/src/sap/ui/mdc/util/FormatUtil.js +3 -3
- package/src/sap/ui/mdc/util/IdentifierUtil.js +6 -6
- package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
- package/src/sap/ui/mdc/util/PropertyHelper.js +43 -12
- package/src/sap/ui/mdc/util/TypeUtil.js +5 -4
- package/src/sap/ui/mdc/valuehelp/Dialog.js +11 -8
- package/src/sap/ui/mdc/valuehelp/Popover.js +2 -1
- package/src/sap/ui/mdc/valuehelp/base/Container.js +2 -1
- package/src/sap/ui/mdc/valuehelp/base/Content.js +2 -1
- package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -1
- package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +2 -1
- package/src/sap/ui/mdc/valuehelp/base/ListContent.js +2 -1
- package/src/sap/ui/mdc/valuehelp/content/Bool.js +2 -1
- package/src/sap/ui/mdc/valuehelp/content/Conditions.js +4 -2
- package/src/sap/ui/mdc/valuehelp/content/FixedList.js +11 -5
- package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +43 -8
- package/src/sap/ui/mdc/valuehelp/content/MTable.js +43 -24
- package/test/sap/ui/mdc/testutils/opa/TestLibrary.js +3 -1
- package/test/sap/ui/mdc/testutils/opa/actions/OpenContextMenu.js +3 -3
- package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsBase.js +3 -3
- package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ActionsViz.js +0 -0
- package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsBase.js +1 -1
- package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/AssertionsViz.js +0 -0
- package/test/sap/ui/mdc/testutils/opa/{chartNew → chart}/ChartNew.js +0 -0
- package/test/sap/ui/mdc/testutils/opa/chart/TestObjects.js +289 -0
- package/test/sap/ui/mdc/testutils/opa/chartNew/TestObjects.js +7 -7
- package/test/sap/ui/mdc/testutils/opa/filterbar/TestObjects.js +9 -9
- package/test/sap/ui/mdc/testutils/opa/filterbar/Util.js +12 -11
- package/test/sap/ui/mdc/testutils/opa/link/Actions.js +85 -0
- package/test/sap/ui/mdc/testutils/opa/link/Assertions.js +79 -0
- package/test/sap/ui/mdc/testutils/opa/link/TestObjects.js +112 -0
- package/test/sap/ui/mdc/testutils/opa/link/waitForLink.js +50 -0
- package/test/sap/ui/mdc/testutils/opa/p13n/Actions.js +261 -138
- package/test/sap/ui/mdc/testutils/opa/p13n/Util.js +27 -26
- package/test/sap/ui/mdc/testutils/opa/valueHelp/Actions.js +54 -0
- package/test/sap/ui/mdc/testutils/opa/valueHelp/Assertions.js +5 -0
- package/test/sap/ui/mdc/testutils/opa/valueHelp/TestObjects.js +40 -0
- package/test/sap/ui/mdc/testutils/opa/valueHelp/Util.js +28 -0
- package/src/sap/ui/mdc/ChartDelegateNew.js +0 -395
- package/src/sap/ui/mdc/ChartNew.js +0 -1114
- package/src/sap/ui/mdc/ChartNewRenderer.js +0 -91
- package/src/sap/ui/mdc/chart/DimensionItem.js +0 -281
- package/src/sap/ui/mdc/chart/MeasureItem.js +0 -318
- package/src/sap/ui/mdc/chart/MetadataDelegate.js +0 -31
- package/src/sap/ui/mdc/chart/SelectionHandler.js +0 -127
- package/src/sap/ui/mdc/chart/ToolbarHandler.js +0 -328
- package/src/sap/ui/mdc/chartNew/ChartTypeButtonNew.js +0 -295
- package/src/sap/ui/mdc/chartNew/DrillStackHandlerNew.js +0 -212
- package/src/sap/ui/mdc/chartNew/ItemNew.js +0 -72
- package/src/sap/ui/mdc/chartNew/SelectionDetailsActionsNew.js +0 -34
- package/src/sap/ui/mdc/designtime/chart/ChartNew.designtime.js +0 -91
- package/src/sap/ui/mdc/link/SelectionDialog.control.xml +0 -66
- package/src/sap/ui/mdc/link/SelectionDialog.js +0 -213
- package/src/sap/ui/mdc/link/SelectionDialogItem.js +0 -86
- package/src/sap/ui/mdc/odata/v4/ChartDelegateNew.js +0 -35
- package/src/sap/ui/mdc/p13n/panels/ChartItemPanelNew.js +0 -1179
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
sap.ui.define([
|
|
7
7
|
'sap/ui/mdc/p13n/subcontroller/FilterController',
|
|
8
8
|
'sap/ui/core/library',
|
|
9
|
-
'sap/ui/mdc/p13n/FlexUtil',
|
|
10
9
|
'sap/ui/Device',
|
|
11
10
|
'sap/ui/mdc/Control',
|
|
12
11
|
'sap/base/Log',
|
|
@@ -17,8 +16,6 @@ sap.ui.define([
|
|
|
17
16
|
'sap/ui/mdc/condition/Condition',
|
|
18
17
|
'sap/ui/mdc/util/IdentifierUtil',
|
|
19
18
|
'sap/ui/mdc/condition/ConditionConverter',
|
|
20
|
-
"sap/ui/mdc/p13n/StateUtil",
|
|
21
|
-
"sap/ui/mdc/condition/FilterConverter",
|
|
22
19
|
"sap/ui/mdc/util/FilterUtil",
|
|
23
20
|
"sap/ui/mdc/filterbar/PropertyHelper",
|
|
24
21
|
"sap/ui/fl/apply/api/ControlVariantApplyAPI",
|
|
@@ -29,7 +26,6 @@ sap.ui.define([
|
|
|
29
26
|
function(
|
|
30
27
|
FilterController,
|
|
31
28
|
coreLibrary,
|
|
32
|
-
FlexUtil,
|
|
33
29
|
Device,
|
|
34
30
|
Control,
|
|
35
31
|
Log,
|
|
@@ -40,8 +36,6 @@ sap.ui.define([
|
|
|
40
36
|
Condition,
|
|
41
37
|
IdentifierUtil,
|
|
42
38
|
ConditionConverter,
|
|
43
|
-
StateUtil,
|
|
44
|
-
FilterConverter,
|
|
45
39
|
FilterUtil,
|
|
46
40
|
PropertyHelper,
|
|
47
41
|
ControlVariantApplyAPI,
|
|
@@ -60,7 +54,7 @@ sap.ui.define([
|
|
|
60
54
|
* @class The <code>FilterBarBase</code> control is used as a faceless base class for common functionality of any MDC FilterBar derivation.
|
|
61
55
|
* @extends sap.ui.mdc.Control
|
|
62
56
|
* @author SAP SE
|
|
63
|
-
* @version 1.
|
|
57
|
+
* @version 1.99.1
|
|
64
58
|
* @constructor
|
|
65
59
|
* @private
|
|
66
60
|
* @ui5-restricted sap.ui.mdc
|
|
@@ -149,6 +143,18 @@ sap.ui.define([
|
|
|
149
143
|
defaultValue: {}
|
|
150
144
|
},
|
|
151
145
|
|
|
146
|
+
/**
|
|
147
|
+
* Specifies the filter metadata.<br>
|
|
148
|
+
* <b>Note</b>: This property must not be bound.<br>
|
|
149
|
+
* <b>Note</b>: This property is used exclusively for SAPUI5 flexibility. Do not use it otherwise.
|
|
150
|
+
*
|
|
151
|
+
* @since 1.97
|
|
152
|
+
*/
|
|
153
|
+
propertyInfo: {
|
|
154
|
+
type: "object",
|
|
155
|
+
defaultValue: []
|
|
156
|
+
},
|
|
157
|
+
|
|
152
158
|
/**
|
|
153
159
|
* If set to <code>true</code>, all search requests are ignored. Once it has been set to <code>false</code>,
|
|
154
160
|
* a search is triggered immediately if one or more search requests have been triggered in the meantime
|
|
@@ -363,14 +369,28 @@ sap.ui.define([
|
|
|
363
369
|
};
|
|
364
370
|
|
|
365
371
|
FilterBarBase.prototype.applySettings = function(mSettings, oScope) {
|
|
372
|
+
this._applySettings(mSettings, oScope);
|
|
373
|
+
this._initControlDelegate();
|
|
374
|
+
};
|
|
375
|
+
|
|
376
|
+
FilterBarBase.prototype._applySettings = function(mSettings, oScope) {
|
|
366
377
|
Control.prototype.applySettings.apply(this, arguments);
|
|
367
378
|
|
|
368
379
|
this._createConditionModel();
|
|
369
380
|
|
|
370
381
|
this._oConditionModel.attachPropertyChange(this._handleConditionModelPropertyChange, this);
|
|
382
|
+
};
|
|
371
383
|
|
|
372
|
-
|
|
373
|
-
this.
|
|
384
|
+
FilterBarBase.prototype._initControlDelegate = function() {
|
|
385
|
+
this.initControlDelegate().then(function() {
|
|
386
|
+
if (!this._bIsBeingDestroyed) {
|
|
387
|
+
this._applyInitialFilterConditions();
|
|
388
|
+
}
|
|
389
|
+
}.bind(this));
|
|
390
|
+
};
|
|
391
|
+
|
|
392
|
+
FilterBarBase.prototype._waitForMetadata = function() {
|
|
393
|
+
return this._retrieveMetadata().then(function() {
|
|
374
394
|
this._applyInitialFilterConditions();
|
|
375
395
|
}.bind(this));
|
|
376
396
|
};
|
|
@@ -431,38 +451,31 @@ sap.ui.define([
|
|
|
431
451
|
* @returns {object} object containing the current status of the FilterBarBase
|
|
432
452
|
*/
|
|
433
453
|
FilterBarBase.prototype.getCurrentState = function() {
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
aIgnoreFieldNames.push(sKey);
|
|
444
|
-
}
|
|
454
|
+
var mFilters = {};
|
|
455
|
+
var oState = {};
|
|
456
|
+
|
|
457
|
+
if (this._bPersistValues) {
|
|
458
|
+
var mConditions = merge({}, this.getFilterConditions());
|
|
459
|
+
for (var sKey in mConditions) {
|
|
460
|
+
if (this._getPropertyByName(sKey)) {
|
|
461
|
+
mFilters[sKey] = mConditions[sKey];
|
|
462
|
+
//mMetadata[sKey] = mConditions[sKey].metadata;
|
|
445
463
|
}
|
|
446
|
-
|
|
447
|
-
aIgnoreFieldNames.forEach(function(sKey) {
|
|
448
|
-
delete mConditions[sKey];
|
|
449
|
-
});
|
|
450
|
-
|
|
451
|
-
oState.filter = mConditions;
|
|
452
464
|
}
|
|
465
|
+
oState.filter = mFilters;
|
|
466
|
+
}
|
|
453
467
|
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
});
|
|
468
|
+
var aFilterItems = this.getFilterItems();
|
|
469
|
+
var aItems = [];
|
|
470
|
+
aFilterItems.forEach(function(oFilterField, iIndex){
|
|
471
|
+
aItems.push({
|
|
472
|
+
name: oFilterField.getFieldPath()
|
|
460
473
|
});
|
|
474
|
+
});
|
|
461
475
|
|
|
462
|
-
|
|
476
|
+
oState.items = aItems;
|
|
463
477
|
|
|
464
|
-
|
|
465
|
-
//}.bind(this));
|
|
478
|
+
return oState;
|
|
466
479
|
};
|
|
467
480
|
|
|
468
481
|
/**
|
|
@@ -605,8 +618,132 @@ sap.ui.define([
|
|
|
605
618
|
return this.getEngine().isModificationSupported(this);
|
|
606
619
|
};
|
|
607
620
|
|
|
621
|
+
FilterBarBase.prototype._hasPropertyInfo = function(sFieldName) {
|
|
622
|
+
var aPropertyInfo = this.getPropertyInfo();
|
|
623
|
+
var nIdx = aPropertyInfo.findIndex(function(oEntry) {
|
|
624
|
+
return oEntry.name === sFieldName;
|
|
625
|
+
});
|
|
626
|
+
|
|
627
|
+
return (nIdx >= 0);
|
|
628
|
+
};
|
|
629
|
+
|
|
630
|
+
FilterBarBase.prototype._getPropertyByName = function(sName) {
|
|
631
|
+
return FilterUtil.getPropertyByKey(this.getPropertyInfoSet(), sName);
|
|
632
|
+
};
|
|
633
|
+
|
|
634
|
+
FilterBarBase.prototype.getPropertyInfoSet = function() {
|
|
635
|
+
var oTypeUtil, aProperties = [];
|
|
636
|
+
|
|
637
|
+
if (this._hasPropertyHelper()) {
|
|
638
|
+
return this.getPropertyHelper().getProperties();
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
var aPropertyInfo = this.getPropertyInfo();
|
|
642
|
+
if (aPropertyInfo && (aPropertyInfo.length > 0)) {
|
|
643
|
+
oTypeUtil = this.getTypeUtil();
|
|
644
|
+
|
|
645
|
+
for (var i = 0; i < aPropertyInfo.length; i++) {
|
|
646
|
+
var oPropertyInfo = aPropertyInfo[i];
|
|
647
|
+
if (oPropertyInfo) {
|
|
648
|
+
var oTypeConfig = oTypeUtil.getTypeConfig(oPropertyInfo.dataType, oPropertyInfo.formatOptions, oPropertyInfo.constraints);
|
|
649
|
+
aProperties.push({
|
|
650
|
+
name: oPropertyInfo.name,
|
|
651
|
+
typeConfig: oTypeConfig,
|
|
652
|
+
maxConditions: oPropertyInfo.maxConditions,
|
|
653
|
+
constraints: oPropertyInfo.constraints,
|
|
654
|
+
formatOptions: oPropertyInfo.formatOptions,
|
|
655
|
+
required: oPropertyInfo.required,
|
|
656
|
+
caseSensitive: oPropertyInfo.caseSensitive,
|
|
657
|
+
display: oPropertyInfo.display
|
|
658
|
+
});
|
|
659
|
+
}
|
|
660
|
+
}
|
|
661
|
+
}
|
|
662
|
+
|
|
663
|
+
return aProperties;
|
|
664
|
+
};
|
|
665
|
+
|
|
666
|
+
FilterBarBase.prototype._hasPropertyHelper = function() {
|
|
667
|
+
try {
|
|
668
|
+
this.getPropertyHelper();
|
|
669
|
+
return true;
|
|
670
|
+
} catch (ex) {
|
|
671
|
+
return false;
|
|
672
|
+
}
|
|
673
|
+
};
|
|
674
|
+
|
|
675
|
+
|
|
676
|
+
FilterBarBase.prototype._createPropertyInfoChange = function(oProperty) {
|
|
677
|
+
return {
|
|
678
|
+
changeSpecificData: {
|
|
679
|
+
changeType: "addPropertyInfo",
|
|
680
|
+
content: {
|
|
681
|
+
name: oProperty.name,
|
|
682
|
+
dataType: oProperty.typeConfig.className,
|
|
683
|
+
maxConditions: oProperty.maxConditions,
|
|
684
|
+
constraints: oProperty.constraints,
|
|
685
|
+
formatOption: oProperty.formatOptions,
|
|
686
|
+
required: oProperty.required,
|
|
687
|
+
caseSensitive: oProperty.caseSensitive,
|
|
688
|
+
display: oProperty.display
|
|
689
|
+
}
|
|
690
|
+
},
|
|
691
|
+
selectorElement: this
|
|
692
|
+
};
|
|
693
|
+
};
|
|
694
|
+
|
|
695
|
+
FilterBarBase.prototype.createPropertyInfoChanges = function(sFieldPath) {
|
|
696
|
+
var oProperty, oChange, aChanges = [];
|
|
697
|
+
|
|
698
|
+
if (!this._hasPropertyInfo(sFieldPath)) {
|
|
699
|
+
oProperty = this._getPropertyByName(sFieldPath);
|
|
700
|
+
if (oProperty) {
|
|
701
|
+
oChange = this._createPropertyInfoChange(oProperty);
|
|
702
|
+
aChanges.push(oChange);
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
|
|
706
|
+
return aChanges;
|
|
707
|
+
};
|
|
708
|
+
|
|
709
|
+
|
|
710
|
+
FilterBarBase.prototype._addConditionChange = function(mOrigConditions, sFieldPath) {
|
|
711
|
+
|
|
712
|
+
var oChangePromise = this.getEngine().createChanges({
|
|
713
|
+
control: this,
|
|
714
|
+
key: "Filter",
|
|
715
|
+
//prependChanges: fCreateTypeInfoCallback,
|
|
716
|
+
state: mOrigConditions
|
|
717
|
+
});
|
|
718
|
+
|
|
719
|
+
if (!this._aCollectedChangePromises) {
|
|
720
|
+
this._aCollectedChangePromises = [];
|
|
721
|
+
}
|
|
722
|
+
this._aCollectedChangePromises.push(oChangePromise);
|
|
723
|
+
};
|
|
724
|
+
|
|
725
|
+
FilterBarBase.prototype._registerOnEngineOnModificationEnd = function() {
|
|
726
|
+
this._oConditionChangeStartedPromise = new Promise(function(resolve) {
|
|
727
|
+
this._fConditionChangeStartedPromiseResolve = resolve;
|
|
728
|
+
}.bind(this));
|
|
729
|
+
};
|
|
730
|
+
|
|
731
|
+
FilterBarBase.prototype._onChangeAppliance = function() {
|
|
732
|
+
if (this._fConditionChangeStartedPromiseResolve) {
|
|
733
|
+
this._fConditionChangeStartedPromiseResolve();
|
|
734
|
+
this._fConditionChangeStartedPromiseResolve = null;
|
|
735
|
+
}
|
|
736
|
+
};
|
|
737
|
+
|
|
608
738
|
FilterBarBase.prototype._handleConditionModelPropertyChange = function(oEvent) {
|
|
609
739
|
|
|
740
|
+
var fAddConditionChange = function(sFieldPath, aConditions) {
|
|
741
|
+
var mOrigConditions = {};
|
|
742
|
+
mOrigConditions[sFieldPath] = this._stringifyConditions(sFieldPath, merge([], aConditions));
|
|
743
|
+
this._cleanupConditions(mOrigConditions[sFieldPath]);
|
|
744
|
+
this._addConditionChange(mOrigConditions, sFieldPath);
|
|
745
|
+
}.bind(this);
|
|
746
|
+
|
|
610
747
|
if (!this._bIgnoreChanges) {
|
|
611
748
|
|
|
612
749
|
var sPath = oEvent.getParameter("path");
|
|
@@ -615,21 +752,17 @@ sap.ui.define([
|
|
|
615
752
|
var sFieldPath = sPath.substring("/conditions/".length);
|
|
616
753
|
|
|
617
754
|
if (this._bPersistValues && this._isPersistenceSupported()) {
|
|
618
|
-
var mOrigConditions = {};
|
|
619
|
-
mOrigConditions[sFieldPath] = this._stringifyConditions(sFieldPath, merge([], oEvent.getParameter("value")));
|
|
620
|
-
this._cleanupConditions(mOrigConditions[sFieldPath]);
|
|
621
|
-
|
|
622
|
-
var oChangePromise = this.getEngine().createChanges({
|
|
623
|
-
control: this,
|
|
624
|
-
key: "Filter",
|
|
625
|
-
state: mOrigConditions
|
|
626
|
-
});
|
|
627
755
|
|
|
628
|
-
|
|
629
|
-
this._aCollectedChangePromises = [];
|
|
630
|
-
}
|
|
756
|
+
var aConditions = oEvent.getParameter("value");
|
|
631
757
|
|
|
632
|
-
this.
|
|
758
|
+
if (this._hasPropertyHelper() || this._getPropertyByName(sFieldPath)) {
|
|
759
|
+
fAddConditionChange(sFieldPath, aConditions);
|
|
760
|
+
} else {
|
|
761
|
+
this._registerOnEngineOnModificationEnd();
|
|
762
|
+
this._retrieveMetadata().then(function() {
|
|
763
|
+
fAddConditionChange(sFieldPath, aConditions);
|
|
764
|
+
});
|
|
765
|
+
}
|
|
633
766
|
|
|
634
767
|
} else {
|
|
635
768
|
this._reportModelChange(false);
|
|
@@ -730,32 +863,26 @@ sap.ui.define([
|
|
|
730
863
|
};
|
|
731
864
|
|
|
732
865
|
FilterBarBase.prototype._handleAssignedFilterNames = function(bFiltersAggregationChanged, bDoNotTriggerFiltersChangeEventBasedOnVariantSwitch) {
|
|
733
|
-
if (
|
|
734
|
-
return;
|
|
866
|
+
if (this._bIsBeingDestroyed) {
|
|
867
|
+
return;
|
|
735
868
|
}
|
|
736
869
|
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
}
|
|
742
|
-
|
|
743
|
-
if (!bFiltersAggregationChanged) {
|
|
744
|
-
if (this._btnAdapt) {
|
|
745
|
-
var aFilterNames = this.getAssignedFilterNames();
|
|
746
|
-
this.setProperty("_filterCount", this._oRb.getText(aFilterNames.length ? "filterbar.ADAPT_NONZERO" : "filterbar.ADAPT", aFilterNames.length), false);
|
|
747
|
-
}
|
|
870
|
+
if (!bFiltersAggregationChanged) {
|
|
871
|
+
if (this._btnAdapt) {
|
|
872
|
+
var aFilterNames = this.getAssignedFilterNames();
|
|
873
|
+
this.setProperty("_filterCount", this._oRb.getText(aFilterNames.length ? "filterbar.ADAPT_NONZERO" : "filterbar.ADAPT", aFilterNames.length), false);
|
|
748
874
|
}
|
|
875
|
+
}
|
|
749
876
|
|
|
750
|
-
|
|
751
|
-
|
|
877
|
+
var mTexts = this._getAssignedFiltersText();
|
|
878
|
+
var oObj = {
|
|
752
879
|
conditionsBased: (!bFiltersAggregationChanged && !bDoNotTriggerFiltersChangeEventBasedOnVariantSwitch),
|
|
753
880
|
filtersText: mTexts.filtersText,
|
|
754
881
|
filtersTextExpanded: mTexts.filtersTextExpanded
|
|
755
|
-
|
|
882
|
+
};
|
|
883
|
+
|
|
884
|
+
this.fireFiltersChanged(oObj);
|
|
756
885
|
|
|
757
|
-
this.fireFiltersChanged(oObj);
|
|
758
|
-
}.bind(this));
|
|
759
886
|
};
|
|
760
887
|
|
|
761
888
|
FilterBarBase.prototype.onReset = function(oEvent) {
|
|
@@ -801,7 +928,7 @@ sap.ui.define([
|
|
|
801
928
|
|
|
802
929
|
var bFireSearch = !bSuppressSearch;
|
|
803
930
|
|
|
804
|
-
|
|
931
|
+
var fValidateFc = function() {
|
|
805
932
|
if (!this._oValidationPromise) {
|
|
806
933
|
|
|
807
934
|
this._oValidationPromise = new Promise(function(resolve, reject) {
|
|
@@ -817,7 +944,16 @@ sap.ui.define([
|
|
|
817
944
|
}
|
|
818
945
|
|
|
819
946
|
return this._oValidationPromise;
|
|
947
|
+
}.bind(this);
|
|
820
948
|
|
|
949
|
+
return this.initialized().then(function() {
|
|
950
|
+
if (!this._hasMetadata()) {
|
|
951
|
+
return this._retrieveMetadata().then(function() {
|
|
952
|
+
return fValidateFc();
|
|
953
|
+
});
|
|
954
|
+
} else {
|
|
955
|
+
return fValidateFc();
|
|
956
|
+
}
|
|
821
957
|
}.bind(this));
|
|
822
958
|
};
|
|
823
959
|
|
|
@@ -828,6 +964,9 @@ sap.ui.define([
|
|
|
828
964
|
}
|
|
829
965
|
};
|
|
830
966
|
|
|
967
|
+
FilterBarBase.prototype._hasMetadata = function() {
|
|
968
|
+
return (this._hasPropertyHelper() || (this.getPropertyInfo().length > 0));
|
|
969
|
+
};
|
|
831
970
|
|
|
832
971
|
FilterBarBase.prototype._getRequiredFieldsWithoutValues = function() {
|
|
833
972
|
var aReqFiltersWithoutValue = [];
|
|
@@ -893,7 +1032,12 @@ sap.ui.define([
|
|
|
893
1032
|
var oPromise = oEvent.getParameter("promise");
|
|
894
1033
|
if (oPromise) {
|
|
895
1034
|
oPromise.then(function() {
|
|
896
|
-
|
|
1035
|
+
|
|
1036
|
+
if (this._oConditionChangeStartedPromise) {
|
|
1037
|
+
this._oConditionChangeStartedPromise.then(function() {
|
|
1038
|
+
this.triggerSearch();
|
|
1039
|
+
}.bind(this));
|
|
1040
|
+
} else if (this._aCollectedChangePromises && this._aCollectedChangePromises.length > 0) {
|
|
897
1041
|
var aChangePromises = this._aCollectedChangePromises.slice();
|
|
898
1042
|
Promise.all(aChangePromises).then(function() {
|
|
899
1043
|
this.triggerSearch();
|
|
@@ -1140,75 +1284,148 @@ sap.ui.define([
|
|
|
1140
1284
|
}.bind(this) : undefined;
|
|
1141
1285
|
};
|
|
1142
1286
|
|
|
1287
|
+
|
|
1288
|
+
FilterBarBase.prototype._isPathKnown = function(sFieldPath, oXCondition) {
|
|
1289
|
+
var sKey, sName;
|
|
1290
|
+
|
|
1291
|
+
if (!this._getPropertyByName(sFieldPath)) {
|
|
1292
|
+
return false;
|
|
1293
|
+
}
|
|
1294
|
+
|
|
1295
|
+
for (sKey in oXCondition["inParameters"]) {
|
|
1296
|
+
sName = sKey.startsWith("conditions/") ? sKey.slice(11) : sKey; // just use field name
|
|
1297
|
+
if (!this._getPropertyByName(sName)) {
|
|
1298
|
+
return false;
|
|
1299
|
+
}
|
|
1300
|
+
}
|
|
1301
|
+
for (sKey in oXCondition["outParameters"]) {
|
|
1302
|
+
sName = sKey.startsWith("conditions/") ? sKey.slice(11) : sKey; // just use field name
|
|
1303
|
+
if (!this._getPropertyByName(sName)) {
|
|
1304
|
+
return false;
|
|
1305
|
+
}
|
|
1306
|
+
}
|
|
1307
|
+
|
|
1308
|
+
return true;
|
|
1309
|
+
};
|
|
1310
|
+
|
|
1311
|
+
FilterBarBase.prototype._removeCondition = function(sFieldPath, oXCondition, oCM) {
|
|
1312
|
+
var oProperty = this._getPropertyByName(sFieldPath);
|
|
1313
|
+
if (oProperty) {
|
|
1314
|
+
var oCondition = this._toInternal(oProperty, oXCondition);
|
|
1315
|
+
if (oCM.indexOf(sFieldPath, oCondition, _fnNormalizeCondition.call(this, oProperty)) >= 0) {
|
|
1316
|
+
oCM.removeCondition(sFieldPath, oCondition);
|
|
1317
|
+
}
|
|
1318
|
+
}
|
|
1319
|
+
};
|
|
1320
|
+
|
|
1143
1321
|
FilterBarBase.prototype.removeCondition = function(sFieldPath, oXCondition) {
|
|
1144
1322
|
return this.initialized().then(function() {
|
|
1145
1323
|
var oCM = this._getConditionModel();
|
|
1146
1324
|
if (oCM) {
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1325
|
+
if (!this._hasPropertyHelper() && !this._isPathKnown(sFieldPath, oXCondition)) {
|
|
1326
|
+
return this._retrieveMetadata().then(function() {
|
|
1327
|
+
this._removeCondition(sFieldPath, oXCondition, oCM);
|
|
1328
|
+
}.bind(this));
|
|
1329
|
+
} else {
|
|
1330
|
+
this._removeCondition(sFieldPath, oXCondition, oCM);
|
|
1153
1331
|
}
|
|
1154
1332
|
}
|
|
1155
1333
|
}.bind(this));
|
|
1156
1334
|
};
|
|
1157
1335
|
|
|
1336
|
+
FilterBarBase.prototype._addCondition = function(sFieldPath, oXCondition, oCM) {
|
|
1337
|
+
var oProperty = this._getPropertyByName(sFieldPath);
|
|
1338
|
+
if (oProperty) {
|
|
1339
|
+
var oCondition = this._toInternal(oProperty, oXCondition);
|
|
1340
|
+
if (oCM.indexOf(sFieldPath, oCondition, _fnNormalizeCondition.call(this, oProperty)) < 0) {
|
|
1341
|
+
var mCondition = {};
|
|
1342
|
+
mCondition[sFieldPath] = [oCondition];
|
|
1343
|
+
FilterController.checkConditionOperatorSanity(mCondition); //check if the single condition's operator is valid
|
|
1344
|
+
var aConditions = mCondition[sFieldPath];
|
|
1345
|
+
if (aConditions && aConditions.length > 0){
|
|
1346
|
+
this._cleanUpFilterFieldInErrorStateByName(sFieldPath);
|
|
1347
|
+
oCM.addCondition(sFieldPath, oCondition);
|
|
1348
|
+
}
|
|
1349
|
+
}
|
|
1350
|
+
}
|
|
1351
|
+
};
|
|
1352
|
+
|
|
1158
1353
|
FilterBarBase.prototype.addCondition = function(sFieldPath, oXCondition) {
|
|
1159
1354
|
return this.initialized().then(function() {
|
|
1160
1355
|
var oCM = this._getConditionModel();
|
|
1161
1356
|
if (oCM) {
|
|
1162
|
-
|
|
1163
|
-
if (
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
var aConditions = mCondition[sFieldPath];
|
|
1170
|
-
if (aConditions && aConditions.length > 0){
|
|
1171
|
-
this._cleanUpFilterFieldInErrorStateByName(sFieldPath);
|
|
1172
|
-
oCM.addCondition(sFieldPath, oCondition);
|
|
1173
|
-
}
|
|
1174
|
-
}
|
|
1357
|
+
|
|
1358
|
+
if (!this._hasPropertyHelper() && !this._isPathKnown(sFieldPath, oXCondition)) {
|
|
1359
|
+
return this._retrieveMetadata().then(function() {
|
|
1360
|
+
this._addCondition(sFieldPath, oXCondition, oCM);
|
|
1361
|
+
}.bind(this));
|
|
1362
|
+
} else {
|
|
1363
|
+
this._addCondition(sFieldPath, oXCondition, oCM);
|
|
1175
1364
|
}
|
|
1176
1365
|
}
|
|
1177
1366
|
}.bind(this));
|
|
1178
1367
|
|
|
1179
1368
|
};
|
|
1180
1369
|
|
|
1181
|
-
FilterBarBase.prototype._setXConditions = function(
|
|
1182
|
-
var oProperty, aConditions, oConditionModel = this._getConditionModel();
|
|
1370
|
+
FilterBarBase.prototype._setXConditions = function(mConditionsData, bRemoveBeforeApplying) {
|
|
1371
|
+
var sFieldPath, oProperty, aConditions, oConditionModel = this._getConditionModel();
|
|
1183
1372
|
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
if (aConditionsData) {
|
|
1189
|
-
for ( var sFieldPath in aConditionsData) {
|
|
1190
|
-
aConditions = aConditionsData[sFieldPath];
|
|
1373
|
+
var fPromiseResolve = null;
|
|
1374
|
+
var oPromise = new Promise(function(resolve, reject) {
|
|
1375
|
+
fPromiseResolve = resolve;
|
|
1376
|
+
});
|
|
1191
1377
|
|
|
1378
|
+
var fApplyConditions = function(mConditionsData) {
|
|
1379
|
+
for ( sFieldPath in mConditionsData) {
|
|
1380
|
+
aConditions = mConditionsData[sFieldPath];
|
|
1192
1381
|
oProperty = this._getPropertyByName(sFieldPath);
|
|
1193
1382
|
if (oProperty) {
|
|
1194
1383
|
|
|
1195
1384
|
if (aConditions.length === 0) {
|
|
1196
1385
|
oConditionModel.removeAllConditions(sFieldPath);
|
|
1197
1386
|
} else {
|
|
1387
|
+
if (oProperty.maxConditions !== -1) {
|
|
1388
|
+
oConditionModel.removeAllConditions(sFieldPath);
|
|
1389
|
+
}
|
|
1390
|
+
|
|
1198
1391
|
/* eslint-disable no-loop-func */
|
|
1199
1392
|
aConditions.forEach(function(oCondition) {
|
|
1200
|
-
|
|
1201
|
-
oConditionModel.removeAllConditions(sFieldPath);
|
|
1202
|
-
}
|
|
1203
|
-
|
|
1204
|
-
var oNewCondition = this._toInternal(oProperty, oCondition);
|
|
1205
|
-
oConditionModel.addCondition(sFieldPath, oNewCondition);
|
|
1393
|
+
this._addCondition(sFieldPath, oCondition, oConditionModel);
|
|
1206
1394
|
}.bind(this));
|
|
1207
1395
|
/* eslint-enabled no-loop-func */
|
|
1208
1396
|
}
|
|
1209
1397
|
}
|
|
1210
1398
|
}
|
|
1399
|
+
|
|
1400
|
+
fPromiseResolve();
|
|
1401
|
+
}.bind(this);
|
|
1402
|
+
|
|
1403
|
+
if (bRemoveBeforeApplying) {
|
|
1404
|
+
oConditionModel.removeAllConditions();
|
|
1211
1405
|
}
|
|
1406
|
+
|
|
1407
|
+
if (mConditionsData) {
|
|
1408
|
+
|
|
1409
|
+
var bAllPropertiesKnown = true;
|
|
1410
|
+
for ( sFieldPath in mConditionsData) {
|
|
1411
|
+
aConditions = mConditionsData[sFieldPath];
|
|
1412
|
+
|
|
1413
|
+
if (!this._isPathKnown(sFieldPath, aConditions)) {
|
|
1414
|
+
bAllPropertiesKnown = false;
|
|
1415
|
+
break;
|
|
1416
|
+
}
|
|
1417
|
+
}
|
|
1418
|
+
|
|
1419
|
+
if (!bAllPropertiesKnown && !this._hasPropertyHelper()) {
|
|
1420
|
+
this._retrieveMetadata().then(function() {
|
|
1421
|
+
fApplyConditions(mConditionsData);
|
|
1422
|
+
});
|
|
1423
|
+
} else {
|
|
1424
|
+
fApplyConditions(mConditionsData);
|
|
1425
|
+
}
|
|
1426
|
+
}
|
|
1427
|
+
|
|
1428
|
+
return oPromise;
|
|
1212
1429
|
};
|
|
1213
1430
|
|
|
1214
1431
|
FilterBarBase.prototype._getXConditions = function () {
|
|
@@ -1452,15 +1669,6 @@ sap.ui.define([
|
|
|
1452
1669
|
};
|
|
1453
1670
|
|
|
1454
1671
|
|
|
1455
|
-
FilterBarBase.prototype.getPropertyInfoSet = function() {
|
|
1456
|
-
try {
|
|
1457
|
-
var oPropertyHelper = this.getPropertyHelper();
|
|
1458
|
-
return oPropertyHelper ? oPropertyHelper.getProperties() : [];
|
|
1459
|
-
} catch (ex) {
|
|
1460
|
-
return [];
|
|
1461
|
-
}
|
|
1462
|
-
};
|
|
1463
|
-
|
|
1464
1672
|
FilterBarBase.prototype._getNonHiddenPropertyInfoSet = function() {
|
|
1465
1673
|
var aVisibleProperties = [];
|
|
1466
1674
|
this.getPropertyInfoSet().every(function(oProperty) {
|
|
@@ -1491,9 +1699,6 @@ sap.ui.define([
|
|
|
1491
1699
|
return oProperty;
|
|
1492
1700
|
};
|
|
1493
1701
|
|
|
1494
|
-
FilterBarBase.prototype._getPropertyByName = function(sName) {
|
|
1495
|
-
return FilterUtil.getPropertyByKey(this.getPropertyInfoSet(), sName);
|
|
1496
|
-
};
|
|
1497
1702
|
|
|
1498
1703
|
FilterBarBase.prototype._cleanUpFilterFieldInErrorStateByName = function(sFieldName) {
|
|
1499
1704
|
var oFilterField = null;
|
|
@@ -1589,25 +1794,26 @@ sap.ui.define([
|
|
|
1589
1794
|
|
|
1590
1795
|
this._bIgnoreChanges = true;
|
|
1591
1796
|
|
|
1592
|
-
this._applyFilterConditionsChanges()
|
|
1593
|
-
|
|
1594
|
-
this._changesApplied();
|
|
1797
|
+
this._applyFilterConditionsChanges().then(function() {
|
|
1595
1798
|
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1799
|
+
this._changesApplied();
|
|
1800
|
+
this._bInitialFiltersApplied = true;
|
|
1801
|
+
this._fResolveInitialFiltersApplied();
|
|
1802
|
+
this._fResolveInitialFiltersApplied = null;
|
|
1803
|
+
}.bind(this));
|
|
1599
1804
|
};
|
|
1600
1805
|
|
|
1601
1806
|
FilterBarBase.prototype._applyFilterConditionsChanges = function() {
|
|
1602
1807
|
|
|
1603
|
-
var
|
|
1808
|
+
var mSettings, mConditionsData;
|
|
1604
1809
|
|
|
1605
|
-
|
|
1810
|
+
mSettings = this.getProperty("filterConditions");
|
|
1606
1811
|
if (Object.keys(mSettings).length > 0) {
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
this._setXConditions(aConditionsData, true, true);
|
|
1812
|
+
mConditionsData = merge({}, mSettings);
|
|
1813
|
+
return this._setXConditions(mConditionsData, true);
|
|
1610
1814
|
}
|
|
1815
|
+
|
|
1816
|
+
return Promise.resolve();
|
|
1611
1817
|
};
|
|
1612
1818
|
|
|
1613
1819
|
FilterBarBase.prototype.setVariantBackreference = function(oVariant) {
|
|
@@ -1771,8 +1977,11 @@ sap.ui.define([
|
|
|
1771
1977
|
|
|
1772
1978
|
this._aFIChanges = null;
|
|
1773
1979
|
this._aCollectedChangePromises = null;
|
|
1980
|
+
|
|
1981
|
+
this._oConditionChangeStartedPromise = null;
|
|
1982
|
+
this._fConditionChangeStartedPromiseResolve = undefined;
|
|
1774
1983
|
};
|
|
1775
1984
|
|
|
1776
1985
|
return FilterBarBase;
|
|
1777
1986
|
|
|
1778
|
-
});
|
|
1987
|
+
});
|
|
@@ -28,7 +28,7 @@ sap.ui.define([],
|
|
|
28
28
|
* Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
|
|
29
29
|
*
|
|
30
30
|
* @param {sap.ui.core.RenderManager} oRm The RenderManager that can be used for writing to the render output buffer
|
|
31
|
-
* @param {sap.ui.
|
|
31
|
+
* @param {sap.ui.mdc.filterbar.FilterBarBase} oControl An object representation of the control that should be rendered
|
|
32
32
|
*/
|
|
33
33
|
FilterBarBaseRenderer.render = function (oRm, oControl) {
|
|
34
34
|
oRm.openStart("div", oControl);
|