@openui5/sap.ui.mdc 1.96.5 → 1.99.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.reuse/dep5 +26 -31
- package/THIRDPARTY.txt +15 -21
- package/package.json +4 -4
- package/src/sap/ui/mdc/.library +1 -1
- package/src/sap/ui/mdc/ActionToolbar.js +7 -9
- 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 +3 -2
- package/src/sap/ui/mdc/FilterBar.js +3 -2
- package/src/sap/ui/mdc/FilterField.js +25 -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 +21 -6
- package/src/sap/ui/mdc/Table.js +204 -161
- package/src/sap/ui/mdc/TableDelegate.js +47 -17
- package/src/sap/ui/mdc/ValueHelp.js +51 -15
- package/src/sap/ui/mdc/ValueHelpDelegate.js +20 -0
- 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 +261 -44
- package/src/sap/ui/mdc/condition/Operator.js +9 -9
- package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +437 -0
- 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 +97 -0
- package/src/sap/ui/mdc/designtime/field/FieldBase.designtime.js +104 -0
- package/src/sap/ui/mdc/designtime/field/FilterField.designtime.js +22 -0
- package/src/sap/ui/mdc/designtime/field/MultiValueField.designtime.js +23 -0
- 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 +9 -9
- package/src/sap/ui/mdc/field/ConditionsType.js +7 -7
- 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 +311 -0
- package/src/sap/ui/mdc/field/FieldBase.js +85 -52
- 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 +7 -7
- package/src/sap/ui/mdc/field/FieldValueHelpContentWrapperBase.js +1 -1
- package/src/sap/ui/mdc/field/FieldValueHelpDelegate.js +20 -0
- 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 +7 -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 +2 -1
- package/src/sap/ui/mdc/field/content/BooleanContent.js +1 -1
- package/src/sap/ui/mdc/field/content/ContentFactory.js +28 -26
- package/src/sap/ui/mdc/field/content/DateContent.js +128 -2
- package/src/sap/ui/mdc/field/content/DateTimeContent.js +9 -1
- package/src/sap/ui/mdc/field/content/DefaultContent.js +36 -14
- package/src/sap/ui/mdc/field/content/LinkContent.js +1 -1
- package/src/sap/ui/mdc/field/content/TimeContent.js +8 -1
- package/src/sap/ui/mdc/field/content/UnitContent.js +23 -4
- package/src/sap/ui/mdc/filterbar/FilterBarBase.js +359 -142
- 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 +62 -43
- 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 +68 -5
- package/src/sap/ui/mdc/messagebundle_ar.properties +47 -6
- package/src/sap/ui/mdc/messagebundle_bg.properties +61 -20
- package/src/sap/ui/mdc/messagebundle_ca.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_cs.properties +60 -19
- package/src/sap/ui/mdc/messagebundle_cy.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_da.properties +52 -11
- package/src/sap/ui/mdc/messagebundle_de.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_el.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_en.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_en_GB.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_en_US_sappsd.properties +51 -2
- package/src/sap/ui/mdc/messagebundle_en_US_saprigi.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_en_US_saptrc.properties +51 -2
- package/src/sap/ui/mdc/messagebundle_es.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_es_MX.properties +59 -18
- package/src/sap/ui/mdc/messagebundle_et.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_fi.properties +51 -10
- package/src/sap/ui/mdc/messagebundle_fr.properties +50 -9
- package/src/sap/ui/mdc/messagebundle_fr_CA.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_hi.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_hr.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_hu.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_id.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_it.properties +61 -20
- package/src/sap/ui/mdc/messagebundle_iw.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_ja.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_kk.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_ko.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_lt.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_lv.properties +49 -8
- package/src/sap/ui/mdc/messagebundle_ms.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_nl.properties +49 -8
- package/src/sap/ui/mdc/messagebundle_no.properties +53 -12
- package/src/sap/ui/mdc/messagebundle_pl.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_pt.properties +52 -11
- package/src/sap/ui/mdc/messagebundle_pt_PT.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_ro.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_ru.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_sh.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_sk.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_sl.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_sv.properties +47 -6
- package/src/sap/ui/mdc/messagebundle_th.properties +48 -7
- package/src/sap/ui/mdc/messagebundle_tr.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_uk.properties +49 -8
- package/src/sap/ui/mdc/messagebundle_vi.properties +45 -4
- package/src/sap/ui/mdc/messagebundle_zh_CN.properties +46 -5
- package/src/sap/ui/mdc/messagebundle_zh_TW.properties +45 -4
- 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 +16 -11
- 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 +160 -116
- package/src/sap/ui/mdc/odata/v4/TypeUtil.js +1 -1
- package/src/sap/ui/mdc/odata/v4/ValueHelpDelegate.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} +215 -116
- package/src/sap/ui/mdc/p13n/Engine.js +61 -20
- package/src/sap/ui/mdc/p13n/FlexUtil.js +11 -118
- package/src/sap/ui/mdc/p13n/P13nBuilder.js +8 -8
- package/src/sap/ui/mdc/p13n/PersistenceProvider.js +21 -10
- package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
- package/src/sap/ui/mdc/p13n/StateUtil.js +40 -6
- package/src/sap/ui/mdc/p13n/UIManager.js +15 -12
- 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/{DefaultProviderRegistry.js → modules/DefaultProviderRegistry.js} +2 -2
- package/src/sap/ui/mdc/p13n/modules/StateHandlerRegistry.js +86 -0
- package/src/sap/ui/mdc/p13n/panels/AdaptFiltersPanel.js +19 -3
- 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/AggregateController.js +1 -1
- 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 +35 -10
- package/src/sap/ui/mdc/table/CreationRow.js +14 -13
- package/src/sap/ui/mdc/table/GridTableType.js +13 -13
- package/src/sap/ui/mdc/table/PropertyHelper.js +64 -27
- package/src/sap/ui/mdc/table/ResponsiveTableType.js +26 -29
- package/src/sap/ui/mdc/table/RowSettings.js +7 -5
- package/src/sap/ui/mdc/table/TableTypeBase.js +6 -6
- package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +15 -71
- package/src/sap/ui/mdc/themes/base/Chart.less +3 -0
- 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 +3 -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 +148 -325
- package/src/sap/ui/mdc/util/TypeUtil.js +5 -4
- package/src/sap/ui/mdc/valuehelp/Dialog.js +12 -8
- package/src/sap/ui/mdc/valuehelp/Popover.js +14 -2
- package/src/sap/ui/mdc/valuehelp/base/Container.js +33 -1
- package/src/sap/ui/mdc/valuehelp/base/Content.js +36 -5
- package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +2 -1
- package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +43 -15
- 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 +28 -32
- package/src/sap/ui/mdc/valuehelp/content/FixedList.js +11 -5
- package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +50 -10
- package/src/sap/ui/mdc/valuehelp/content/MTable.js +57 -26
- 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 +362 -233
- 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 -1171
- package/src/sap/ui/mdc/p13n/panels/GroupPanel.js +0 -111
- package/src/sap/ui/mdc/p13n/panels/QueryPanel.js +0 -322
- package/src/sap/ui/mdc/p13n/panels/SortQueryPanel.js +0 -133
- package/src/sap/ui/mdc/p13n/panels/Wrapper.js +0 -203
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
sap.ui.define([
|
|
8
|
+
'sap/m/DynamicDateOption',
|
|
9
|
+
'sap/m/DynamicDateValueHelpUIType',
|
|
10
|
+
'sap/m/Input',
|
|
11
|
+
'sap/m/DatePicker',
|
|
12
|
+
'sap/ui/mdc/condition/Operator',
|
|
13
|
+
'sap/ui/mdc/util/DateUtil',
|
|
14
|
+
'sap/ui/model/json/JSONModel',
|
|
15
|
+
'sap/ui/model/FormatException',
|
|
16
|
+
'sap/ui/model/ParseException',
|
|
17
|
+
'sap/ui/model/ValidateException',
|
|
18
|
+
'sap/ui/core/library'
|
|
19
|
+
], function(
|
|
20
|
+
DynamicDateOption,
|
|
21
|
+
DynamicDateValueHelpUIType,
|
|
22
|
+
Input,
|
|
23
|
+
DatePicker,
|
|
24
|
+
Operator,
|
|
25
|
+
DateUtil,
|
|
26
|
+
JSONModel,
|
|
27
|
+
FormatException,
|
|
28
|
+
ParseException,
|
|
29
|
+
ValidateException,
|
|
30
|
+
coreLibrary
|
|
31
|
+
) {
|
|
32
|
+
"use strict";
|
|
33
|
+
|
|
34
|
+
var ValueState = coreLibrary.ValueState;
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Constructor for a new OperatorDynamicDateOption.
|
|
38
|
+
*
|
|
39
|
+
* @param {string} [sId] ID for the new control, generated automatically if no ID is given
|
|
40
|
+
* @param {object} [mSettings] Initial settings for the new control
|
|
41
|
+
* @param {string} [mSettings.key] One of the predefined keys identifying the standard dynamic date
|
|
42
|
+
*
|
|
43
|
+
* @class
|
|
44
|
+
* Maps an {@link sap.ui.mdc.condition.Operator Operator} to a {@link sap.m.DynamicDateOption DynamicDateOption}.
|
|
45
|
+
* @extends sap.m.DynamicDateOption
|
|
46
|
+
*
|
|
47
|
+
* @author SAP SE
|
|
48
|
+
* @version 1.99.0
|
|
49
|
+
*
|
|
50
|
+
* @private
|
|
51
|
+
* @ui5-restricted sap.ui.mdc
|
|
52
|
+
* @experimental As of version 1.96
|
|
53
|
+
* @since 1.96
|
|
54
|
+
* @alias sap.ui.mdc.condition.OperatorDynamicDateOption
|
|
55
|
+
* @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
|
|
56
|
+
*/
|
|
57
|
+
var OperatorDynamicDateOption = DynamicDateOption.extend("sap.ui.mdc.condition.OperatorDynamicDateOption", /** @lends sap.ui.mdc.condition.OperatorDynamicDateOption.prototype */ {
|
|
58
|
+
metadata: {
|
|
59
|
+
library: "sap.ui.mdc",
|
|
60
|
+
properties: {
|
|
61
|
+
/**
|
|
62
|
+
* Operator used in the corresponding filter field.
|
|
63
|
+
*
|
|
64
|
+
* <b>Note:</b> A condition must be an instance of {@link sap.ui.mdc.condition.Operator Operator}.
|
|
65
|
+
*/
|
|
66
|
+
operator: { type: "object" },
|
|
67
|
+
/**
|
|
68
|
+
* Data type of the corresponding filter field.
|
|
69
|
+
*
|
|
70
|
+
* <b>Note:</b> A condition must be an instance of {@link sap.ui.model.Type Type}.
|
|
71
|
+
*/
|
|
72
|
+
type: { type: "object" }
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
OperatorDynamicDateOption.prototype.exit = function() {
|
|
78
|
+
if (this._oModel) {
|
|
79
|
+
this._oModel.destroy();
|
|
80
|
+
this._oModel = undefined;
|
|
81
|
+
this._mChangeHandler = undefined;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
if (this._aUITypes) {
|
|
85
|
+
for (var i = 0; i < this._aUITypes.length; i++) {
|
|
86
|
+
this._aUITypes[i].destroy();
|
|
87
|
+
}
|
|
88
|
+
this._aUITypes = undefined;
|
|
89
|
+
}
|
|
90
|
+
// _removeControls.call(this);
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
OperatorDynamicDateOption.prototype.validateProperty = function(sPropertyName, oValue) {
|
|
94
|
+
|
|
95
|
+
if (sPropertyName === "operator" && oValue && (typeof oValue !== "object" || !oValue.isA || !oValue.isA("sap.ui.mdc.condition.Operator"))) {
|
|
96
|
+
throw new Error("\"" + oValue + "\" is of type " + typeof oValue + ", expected " +
|
|
97
|
+
"sap.ui.mdc.condition.Operator for property \"" + sPropertyName + "\" of " + this);
|
|
98
|
+
} else if (sPropertyName === "type" && oValue && (typeof oValue !== "object" || !oValue.isA || !oValue.isA("sap.ui.model.Type"))) {
|
|
99
|
+
throw new Error("\"" + oValue + "\" is of type " + typeof oValue + ", expected " +
|
|
100
|
+
"sap.ui.model.Type for property \"" + sPropertyName + "\" of " + this);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return DynamicDateOption.prototype.validateProperty.apply(this, arguments);
|
|
104
|
+
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
OperatorDynamicDateOption.prototype.getKey = function() {
|
|
108
|
+
|
|
109
|
+
var oOperator = this.getOperator();
|
|
110
|
+
return oOperator.name;
|
|
111
|
+
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
OperatorDynamicDateOption.prototype.isRange = function() {
|
|
115
|
+
|
|
116
|
+
var oOperator = this.getOperator();
|
|
117
|
+
return oOperator.isA("sap.ui.mdc.condition.RangeOperator");
|
|
118
|
+
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
OperatorDynamicDateOption.prototype.getText = function(oControl) {
|
|
122
|
+
|
|
123
|
+
var oOperator = this.getOperator();
|
|
124
|
+
return oOperator.longText;
|
|
125
|
+
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
OperatorDynamicDateOption.prototype.getValueHelpUITypes = function(oControl) {
|
|
129
|
+
|
|
130
|
+
if (!this._aUITypes) {
|
|
131
|
+
var oOperator = this.getOperator();
|
|
132
|
+
var oType = this.getType();
|
|
133
|
+
this._aUITypes = [];
|
|
134
|
+
|
|
135
|
+
for (var i = 0; i < oOperator.valueTypes.length; i++) {
|
|
136
|
+
var vType = oOperator.valueTypes[i];
|
|
137
|
+
if (vType === Operator.ValueType.Self) {
|
|
138
|
+
this._aUITypes.push(new DynamicDateValueHelpUIType({
|
|
139
|
+
type: "date"
|
|
140
|
+
}));
|
|
141
|
+
} else if (vType === Operator.ValueType.Static) {
|
|
142
|
+
continue;
|
|
143
|
+
} else {
|
|
144
|
+
oType = oOperator._createLocalType(vType, oType);
|
|
145
|
+
if (oType.isA("sap.ui.model.type.Integer") || oType.isA("sap.ui.model.odata.type.Int")) { // TODO: better check for Integer
|
|
146
|
+
this._aUITypes.push(new DynamicDateValueHelpUIType({
|
|
147
|
+
type: "int"
|
|
148
|
+
}));
|
|
149
|
+
} else {
|
|
150
|
+
this._aUITypes.push(new DynamicDateValueHelpUIType({
|
|
151
|
+
type: "custom"
|
|
152
|
+
}));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
return this._aUITypes;
|
|
159
|
+
|
|
160
|
+
};
|
|
161
|
+
|
|
162
|
+
OperatorDynamicDateOption.prototype.createValueHelpUI = function(oControl, fnControlsUpdated) {
|
|
163
|
+
var oValue = oControl.getValue();
|
|
164
|
+
var oOperator = this.getOperator();
|
|
165
|
+
var oType = this.getType();
|
|
166
|
+
var sKey = this.getKey();
|
|
167
|
+
var sControlId = oControl.getId();
|
|
168
|
+
|
|
169
|
+
if (!oValue || oValue.operator !== sKey) {
|
|
170
|
+
// initialize value
|
|
171
|
+
oValue = {operator: sKey, values: []};
|
|
172
|
+
if (oOperator.valueDefaults) {
|
|
173
|
+
oValue.values = oOperator.valueDefaults;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// remove old controls as they are destroyed after usage from DynamicDateRange control
|
|
178
|
+
_removeControls.call(this, oControl);
|
|
179
|
+
if (!oControl.aControlsByParameters) {
|
|
180
|
+
oControl.aControlsByParameters = {};
|
|
181
|
+
}
|
|
182
|
+
oControl.aControlsByParameters[sKey] = [];
|
|
183
|
+
|
|
184
|
+
var fnChangeHandler = function(oEvent) {
|
|
185
|
+
fnControlsUpdated(this);
|
|
186
|
+
}.bind(this);
|
|
187
|
+
|
|
188
|
+
for (var i = 0; i < oOperator.valueTypes.length; i++) {
|
|
189
|
+
var vType = oOperator.valueTypes[i];
|
|
190
|
+
var oDate;
|
|
191
|
+
|
|
192
|
+
if (!oControl.aControlsByParameters[sKey][i]) {
|
|
193
|
+
if (oOperator.createControl) {
|
|
194
|
+
// use internal model to bind the control
|
|
195
|
+
if (!this._oModel) {
|
|
196
|
+
fnChangeHandler = function(oEvent) {
|
|
197
|
+
var sPath = oEvent.getParameter("path");
|
|
198
|
+
var aParts = sPath.split("/");
|
|
199
|
+
var sControlId = aParts[0] || aParts[1];
|
|
200
|
+
if (this._mChangeHandler && this._mChangeHandler[sControlId]) {
|
|
201
|
+
this._mChangeHandler[sControlId](this);
|
|
202
|
+
}
|
|
203
|
+
}.bind(this);
|
|
204
|
+
this._oModel = new JSONModel();
|
|
205
|
+
this._oModel.attachPropertyChange({}, fnChangeHandler, this);
|
|
206
|
+
this._mChangeHandler = {};
|
|
207
|
+
}
|
|
208
|
+
var oModelData = this._oModel.getData();
|
|
209
|
+
oModelData[sControlId] = { // only change for current control
|
|
210
|
+
value0: oValue && oValue.values[0],
|
|
211
|
+
value1: oValue && oValue.values[1]
|
|
212
|
+
};
|
|
213
|
+
this._mChangeHandler[sControlId] = fnControlsUpdated;
|
|
214
|
+
if (vType !== Operator.ValueType.Self) {
|
|
215
|
+
oType = oOperator._createLocalType(vType, oType);
|
|
216
|
+
}
|
|
217
|
+
var oInputControl = oOperator.createControl(oType, "internal>/" + sControlId + "/value" + i, i, sControlId + "-" + i);
|
|
218
|
+
oInputControl.setModel(this._oModel, "internal");
|
|
219
|
+
oControl.aControlsByParameters[sKey].push(oInputControl);
|
|
220
|
+
} else if (vType === Operator.ValueType.Self) {
|
|
221
|
+
// TODO: DatePicker or Calendar?
|
|
222
|
+
// convert internal value to date
|
|
223
|
+
if (oValue && oValue.values[i]) {
|
|
224
|
+
oDate = DateUtil.typeToUniversalDate(oValue.values[i], oType);
|
|
225
|
+
oDate = DateUtil.utcToLocal(oDate);
|
|
226
|
+
}
|
|
227
|
+
var oFormatOptions = oType.getFormatOptions();
|
|
228
|
+
|
|
229
|
+
var oDatePicker = new DatePicker(sControlId + "-" + i, {
|
|
230
|
+
dateValue: oDate,
|
|
231
|
+
displayFormat: oFormatOptions.style || oFormatOptions.pattern,
|
|
232
|
+
displayFormatType: oFormatOptions.calendarType,
|
|
233
|
+
change: fnChangeHandler
|
|
234
|
+
});
|
|
235
|
+
oControl.aControlsByParameters[sKey].push(oDatePicker);
|
|
236
|
+
} else if (typeof vType === "object"){
|
|
237
|
+
// just use Input
|
|
238
|
+
var oInput = new Input(sControlId + "-" + i, {
|
|
239
|
+
value: oValue && oValue.values[i],
|
|
240
|
+
change: fnChangeHandler
|
|
241
|
+
});
|
|
242
|
+
oControl.aControlsByParameters[sKey].push(oInput);
|
|
243
|
+
}
|
|
244
|
+
// } else // update values
|
|
245
|
+
// if (oOperator.createControl) {
|
|
246
|
+
// this._oModel.setProperty("/value0", oValue && oValue.values[0]);
|
|
247
|
+
// this._oModel.setProperty("/value1", oValue && oValue.values[1]);
|
|
248
|
+
// } else if (vType === Operator.ValueType.Self) {
|
|
249
|
+
// if (oValue && oValue.values[i]) {
|
|
250
|
+
// oDate = DateUtil.typeToUniversalDate(oValue.values[i], oType);
|
|
251
|
+
// oDate = DateUtil.utcToLocal(oDate);
|
|
252
|
+
// }
|
|
253
|
+
// oControl.aControlsByParameters[sKey][i].setDateValue(oDate);
|
|
254
|
+
// } else if (typeof vType === "object"){
|
|
255
|
+
// oControl.aControlsByParameters[sKey][i].setValue(oValue && oValue.values[i]);
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
return oControl.aControlsByParameters[sKey];
|
|
261
|
+
|
|
262
|
+
};
|
|
263
|
+
|
|
264
|
+
OperatorDynamicDateOption.prototype.validateValueHelpUI = function(oControl) {
|
|
265
|
+
|
|
266
|
+
var sKey = this.getKey();
|
|
267
|
+
var oOperator = this.getOperator();
|
|
268
|
+
var oType = this.getType();
|
|
269
|
+
var oOutput;
|
|
270
|
+
var bValid = true;
|
|
271
|
+
var sValueState = ValueState.None;
|
|
272
|
+
var sValueStateText;
|
|
273
|
+
var i = 0;
|
|
274
|
+
|
|
275
|
+
try {
|
|
276
|
+
oOutput = this.getValueHelpOutput(oControl); // catch ParseExeptions
|
|
277
|
+
for (i = 0; i < oOutput.values.length; i++) {
|
|
278
|
+
var vValue = oOutput.values[i];
|
|
279
|
+
if (vValue === undefined || vValue === null) { // TODO: might be operator dependent
|
|
280
|
+
bValid = false;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
oOperator.validate(oOutput.values, oType);
|
|
284
|
+
} catch (oException) {
|
|
285
|
+
bValid = false;
|
|
286
|
+
sValueState = ValueState.Error;
|
|
287
|
+
sValueStateText = oException.message;
|
|
288
|
+
if (oException && !(oException instanceof ParseException) && !(oException instanceof ValidateException)) {
|
|
289
|
+
throw oException; // unknown error -> just raise it
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
if (!oOperator.createControl) {
|
|
294
|
+
// custom control is bound, so input is checked in binding
|
|
295
|
+
for (i = 0; i < oControl.aControlsByParameters[sKey].length; i++) {
|
|
296
|
+
var oInputControl = oControl.aControlsByParameters[sKey][i];
|
|
297
|
+
if (oInputControl.setValueState) {
|
|
298
|
+
oInputControl.setValueState(sValueState);
|
|
299
|
+
oInputControl.setValueStateText(sValueStateText);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
return bValid;
|
|
305
|
+
|
|
306
|
+
};
|
|
307
|
+
|
|
308
|
+
OperatorDynamicDateOption.prototype.getValueHelpOutput = function(oControl) {
|
|
309
|
+
|
|
310
|
+
var sKey = this.getKey();
|
|
311
|
+
var oResult = {operator: sKey, values: []};
|
|
312
|
+
var oOperator = this.getOperator();
|
|
313
|
+
var oType = this.getType();
|
|
314
|
+
var sControlId = oControl.getId();
|
|
315
|
+
|
|
316
|
+
for (var i = 0; i < oOperator.valueTypes.length; i++) {
|
|
317
|
+
var oInputControl = oControl.aControlsByParameters[sKey][i];
|
|
318
|
+
if (oInputControl) {
|
|
319
|
+
var vValue;
|
|
320
|
+
if (oOperator.createControl) {
|
|
321
|
+
// use value from internal Model
|
|
322
|
+
vValue = this._oModel ? this._oModel.getProperty("/" + sControlId + "/value" + i) : null;
|
|
323
|
+
} else if (oOperator.valueTypes[i] === Operator.ValueType.Self) {
|
|
324
|
+
// DatePicker used -> get Date Value
|
|
325
|
+
if (!oInputControl.isValidValue()) {
|
|
326
|
+
throw new ParseException(); // to show error state
|
|
327
|
+
}
|
|
328
|
+
vValue = oInputControl.getDateValue();
|
|
329
|
+
if (vValue) {
|
|
330
|
+
// parse to Types format
|
|
331
|
+
vValue = DateUtil.localToUtc(vValue);
|
|
332
|
+
vValue = DateUtil.universalDateToType(vValue, oType);
|
|
333
|
+
}
|
|
334
|
+
} else {
|
|
335
|
+
vValue = oInputControl.getValue();
|
|
336
|
+
oType = oOperator._createLocalType(oOperator.valueTypes[i], oType);
|
|
337
|
+
// parse String to types value
|
|
338
|
+
vValue = oType.parseValue(vValue, "string");
|
|
339
|
+
}
|
|
340
|
+
oResult.values.push(vValue);
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
return oResult;
|
|
345
|
+
|
|
346
|
+
};
|
|
347
|
+
|
|
348
|
+
OperatorDynamicDateOption.prototype.getGroupHeader = function() {
|
|
349
|
+
var oOperator = this.getOperator();
|
|
350
|
+
if (oOperator.group && oOperator.group.text) {
|
|
351
|
+
return oOperator.group.text;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
return DynamicDateOption.prototype.getGroupHeader.apply(this, arguments); // "Default group header still used!"; //TODO how to create a custom Option inside an existing group?
|
|
355
|
+
};
|
|
356
|
+
|
|
357
|
+
OperatorDynamicDateOption.prototype.getGroup = function() {
|
|
358
|
+
var oOperator = this.getOperator();
|
|
359
|
+
if (oOperator.group) {
|
|
360
|
+
return oOperator.group.id;
|
|
361
|
+
}
|
|
362
|
+
return DynamicDateOption.prototype.getGroup.apply(this, arguments);
|
|
363
|
+
};
|
|
364
|
+
|
|
365
|
+
OperatorDynamicDateOption.prototype.toDates = function(oValue) {
|
|
366
|
+
var oOperator = this.getOperator();
|
|
367
|
+
var oType = this.getType();
|
|
368
|
+
var aRange;
|
|
369
|
+
var i = 0;
|
|
370
|
+
|
|
371
|
+
if (oOperator.isA("sap.ui.mdc.condition.RangeOperator")) {
|
|
372
|
+
aRange = oOperator._getRange(oValue && oValue.values, oType);
|
|
373
|
+
// convert to local date
|
|
374
|
+
for (i = 0; i < aRange.length; i++) {
|
|
375
|
+
aRange[i] = DateUtil.typeToUniversalDate(aRange[i], oType);
|
|
376
|
+
aRange[i] = DateUtil.utcToLocal(aRange[i]);
|
|
377
|
+
}
|
|
378
|
+
} else if (oOperator.valueTypes[0] === Operator.ValueType.Self) {
|
|
379
|
+
aRange = oValue.values;
|
|
380
|
+
for (i = 0; i < aRange.length; i++) {
|
|
381
|
+
if (aRange[i]) {
|
|
382
|
+
aRange[i] = DateUtil.typeToUniversalDate(aRange[i], oType);
|
|
383
|
+
aRange[i] = DateUtil.utcToLocal(aRange[i]);
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
if (aRange.length === 1) {
|
|
387
|
+
// TODO: better solution for single dates
|
|
388
|
+
aRange.push(aRange[0]);
|
|
389
|
+
}
|
|
390
|
+
// TODO How to convert GT or GE.....
|
|
391
|
+
} else if ([Operator.ValueType.Self, Operator.ValueType.Static].indexOf(oOperator.valueTypes[0]) === -1) {
|
|
392
|
+
// oType = oOperator._createLocalType(oOperator.valueTypes[0], this.type);
|
|
393
|
+
throw new Error("Cannot convert to date, use RangeOperator");
|
|
394
|
+
}
|
|
395
|
+
return aRange;
|
|
396
|
+
};
|
|
397
|
+
|
|
398
|
+
OperatorDynamicDateOption.prototype.format = function(oValue) {
|
|
399
|
+
var oOperator = this.getOperator();
|
|
400
|
+
var oType = this.getType();
|
|
401
|
+
return oOperator.format(oValue, oType);
|
|
402
|
+
};
|
|
403
|
+
|
|
404
|
+
OperatorDynamicDateOption.prototype.parse = function(sValue) {
|
|
405
|
+
var oOperator = this.getOperator();
|
|
406
|
+
var oType = this.getType();
|
|
407
|
+
|
|
408
|
+
if (sValue && oOperator.parse(sValue)) {
|
|
409
|
+
var oResult = {};
|
|
410
|
+
oResult.operator = this.getKey();
|
|
411
|
+
oResult.values = oOperator.parse(sValue, oType);
|
|
412
|
+
return oResult;
|
|
413
|
+
}
|
|
414
|
+
};
|
|
415
|
+
|
|
416
|
+
OperatorDynamicDateOption.prototype.enhanceFormattedValue = function(sFormattedValue, sAdditionalValue) {
|
|
417
|
+
return false;
|
|
418
|
+
};
|
|
419
|
+
|
|
420
|
+
function _removeControls(oControl) {
|
|
421
|
+
|
|
422
|
+
var sKey = this.getKey();
|
|
423
|
+
|
|
424
|
+
if (oControl && oControl.aControlsByParameters && oControl.aControlsByParameters[sKey]) {
|
|
425
|
+
for (var i = 0; i < oControl.aControlsByParameters[sKey].length; i++) {
|
|
426
|
+
var oUIControl = oControl.aControlsByParameters[sKey][i];
|
|
427
|
+
if (!oUIControl.bIsDestroyed) {
|
|
428
|
+
oUIControl.destroy();
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
delete oControl.aControlsByParameters[sKey];
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
return OperatorDynamicDateOption;
|
|
437
|
+
});
|
|
@@ -33,7 +33,7 @@ sap.ui.define([
|
|
|
33
33
|
* @param {int[]|function} [oConfiguration.defaultValues] Array of values for the defaults of <code>RangeOperators</code> parameter. This can be a function, which returns the array of values. If not used the default for the values is 1.
|
|
34
34
|
* @constructor
|
|
35
35
|
* @author SAP SE
|
|
36
|
-
* @version 1.
|
|
36
|
+
* @version 1.99.0
|
|
37
37
|
* @private
|
|
38
38
|
* @ui5-restricted sap.fe
|
|
39
39
|
* @MDC_PUBLIC_CANDIDATE
|
|
@@ -4,15 +4,90 @@
|
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
7
|
-
|
|
8
|
-
], function () {
|
|
7
|
+
"sap/ui/mdc/p13n/Engine"
|
|
8
|
+
], function (Engine) {
|
|
9
9
|
"use strict";
|
|
10
10
|
|
|
11
11
|
return {
|
|
12
|
-
name: "{name}",
|
|
13
|
-
description: "{description}",
|
|
14
12
|
actions: {
|
|
15
|
-
|
|
13
|
+
settings: function () {
|
|
14
|
+
//RTA expects the settings to be returned as function
|
|
15
|
+
return {
|
|
16
|
+
handler: function (oControl, mPropertyBag) {
|
|
17
|
+
return Engine.getInstance().getRTASettingsActionHandler(oControl, mPropertyBag, oControl.getP13nMode());
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
properties: {
|
|
23
|
+
width: {
|
|
24
|
+
ignore: true
|
|
25
|
+
},
|
|
26
|
+
height: {
|
|
27
|
+
ignore: true
|
|
28
|
+
},
|
|
29
|
+
delegate: {
|
|
30
|
+
ignore: true
|
|
31
|
+
},
|
|
32
|
+
header: {
|
|
33
|
+
ignore: true
|
|
34
|
+
},
|
|
35
|
+
noDataText: {
|
|
36
|
+
ignore: true
|
|
37
|
+
},
|
|
38
|
+
p13nMode: {
|
|
39
|
+
ignore: true
|
|
40
|
+
},
|
|
41
|
+
legendVisible: {
|
|
42
|
+
ignore: true
|
|
43
|
+
},
|
|
44
|
+
ignoreToolbarActions: {
|
|
45
|
+
ignore: true
|
|
46
|
+
},
|
|
47
|
+
minWidth: {
|
|
48
|
+
ignore: true
|
|
49
|
+
},
|
|
50
|
+
minHeight: {
|
|
51
|
+
ignore: true
|
|
52
|
+
},
|
|
53
|
+
sortConditions: {
|
|
54
|
+
ignore: true
|
|
55
|
+
},
|
|
56
|
+
filterConditions: {
|
|
57
|
+
ignore: true
|
|
58
|
+
},
|
|
59
|
+
showChartTooltip: {
|
|
60
|
+
ignore: true
|
|
61
|
+
},
|
|
62
|
+
autoBindOnInit: {
|
|
63
|
+
ignore: true
|
|
64
|
+
},
|
|
65
|
+
chartType: {
|
|
66
|
+
ignore: true
|
|
67
|
+
},
|
|
68
|
+
showSelectionDetails: {
|
|
69
|
+
ignore: true
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
aggregations: {
|
|
73
|
+
items: {
|
|
74
|
+
ignore: true
|
|
75
|
+
},
|
|
76
|
+
actions: {
|
|
77
|
+
ignore: true
|
|
78
|
+
},
|
|
79
|
+
selectionDetailsActions: {
|
|
80
|
+
ignore: true
|
|
81
|
+
},
|
|
82
|
+
_toolbar: {
|
|
83
|
+
ignore: false
|
|
84
|
+
},
|
|
85
|
+
_breadcrumbs: {
|
|
86
|
+
ignore: true
|
|
87
|
+
},
|
|
88
|
+
_innerChart: {
|
|
89
|
+
ignore: true
|
|
90
|
+
}
|
|
16
91
|
}
|
|
17
92
|
};
|
|
18
93
|
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* ! OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
sap.ui.define(['sap/ui/fl/Utils', 'sap/ui/fl/apply/api/FlexRuntimeInfoAPI'], function(Utils, FlexRuntimeInfoAPI) {
|
|
8
|
+
"use strict";
|
|
9
|
+
|
|
10
|
+
var oResourceBundle = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
|
|
11
|
+
|
|
12
|
+
return {
|
|
13
|
+
properties: {
|
|
14
|
+
value: {
|
|
15
|
+
ignore: true
|
|
16
|
+
},
|
|
17
|
+
|
|
18
|
+
additionalValue: {
|
|
19
|
+
ignore: true
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
getStableElements: function(oField) {
|
|
23
|
+
if (!oField.getFieldInfo()) {
|
|
24
|
+
return [];
|
|
25
|
+
}
|
|
26
|
+
var oFieldInfo = oField.getFieldInfo();
|
|
27
|
+
var oControl = typeof oFieldInfo.getSourceControl() === "string" ? sap.ui.getCore().byId(oFieldInfo.getSourceControl()) : oFieldInfo.getSourceControl();
|
|
28
|
+
if (!oControl) {
|
|
29
|
+
oControl = oField;
|
|
30
|
+
}
|
|
31
|
+
var oAppComponent = Utils.getAppComponentForControl(oControl) || Utils.getAppComponentForControl(oField);
|
|
32
|
+
var sStableID = oFieldInfo._createPanelId(Utils, FlexRuntimeInfoAPI);
|
|
33
|
+
|
|
34
|
+
return [
|
|
35
|
+
{
|
|
36
|
+
id: sStableID,
|
|
37
|
+
appComponent: oAppComponent
|
|
38
|
+
}
|
|
39
|
+
];
|
|
40
|
+
},
|
|
41
|
+
actions: {
|
|
42
|
+
settings: function(oField) {
|
|
43
|
+
if (!oField.getFieldInfo()) {
|
|
44
|
+
return {};
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return {
|
|
48
|
+
name: oResourceBundle.getText("info.POPOVER_DEFINE_LINKS"),
|
|
49
|
+
handler: function (oControl, mPropertyBag) {
|
|
50
|
+
var oFieldInfo = oControl.getFieldInfo();
|
|
51
|
+
return oFieldInfo.getContent().then(function(oPanel) {
|
|
52
|
+
oFieldInfo.addDependent(oPanel);
|
|
53
|
+
// wait for createItem changes
|
|
54
|
+
return FlexRuntimeInfoAPI.waitForChanges({
|
|
55
|
+
element: oPanel
|
|
56
|
+
}).then(function() {
|
|
57
|
+
var oEngine = sap.ui.mdc.p13n.Engine.getInstance();
|
|
58
|
+
mPropertyBag.fnAfterClose = function() {
|
|
59
|
+
oPanel.destroy();
|
|
60
|
+
};
|
|
61
|
+
var fnGetChanges = function() {
|
|
62
|
+
return oEngine.getRTASettingsActionHandler(oPanel, mPropertyBag, "LinkItems").then(function(aChanges) {
|
|
63
|
+
aChanges.forEach(function(oChange) {
|
|
64
|
+
var oSelectorElement = oChange.selectorElement;
|
|
65
|
+
delete oChange.selectorElement;
|
|
66
|
+
|
|
67
|
+
var oAppComponent = Utils.getAppComponentForControl(oControl) || Utils.getAppComponentForControl(oField);
|
|
68
|
+
oChange.selectorControl = {
|
|
69
|
+
id: oSelectorElement.getId(),
|
|
70
|
+
controlType: oSelectorElement === oPanel ? "sap.ui.mdc.link.Panel" : "sap.ui.mdc.link.PanelItem",
|
|
71
|
+
appComponent: oAppComponent
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
return aChanges;
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
var aPanelItems = oPanel.getItems();
|
|
78
|
+
|
|
79
|
+
if (aPanelItems.length > 0) {
|
|
80
|
+
// wait for hideItem / revealItem changes
|
|
81
|
+
return FlexRuntimeInfoAPI.waitForChanges({
|
|
82
|
+
selectors: aPanelItems
|
|
83
|
+
}).then(function() {
|
|
84
|
+
return fnGetChanges();
|
|
85
|
+
});
|
|
86
|
+
} else {
|
|
87
|
+
return fnGetChanges();
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
CAUTION_variantIndependent: true
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
});
|