@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
|
@@ -5,26 +5,32 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
sap.ui.define([
|
|
8
|
-
"../
|
|
8
|
+
"../ChartDelegate",
|
|
9
9
|
"../../../util/loadModules",
|
|
10
10
|
"sap/ui/core/Core",
|
|
11
|
+
"sap/m/library",
|
|
11
12
|
"sap/m/Text",
|
|
12
13
|
"sap/ui/mdc/library",
|
|
13
14
|
"sap/ui/mdc/odata/v4/ODataMetaModelUtil",
|
|
14
15
|
"sap/base/Log",
|
|
15
16
|
'sap/ui/mdc/util/FilterUtil',
|
|
16
17
|
'sap/ui/mdc/odata/v4/util/DelegateUtil',
|
|
17
|
-
"sap/ui/mdc/
|
|
18
|
-
"sap/ui/mdc/
|
|
18
|
+
"sap/ui/mdc/chart/ChartTypeButton",
|
|
19
|
+
"sap/ui/mdc/chart/Item",
|
|
19
20
|
"sap/ui/model/Sorter",
|
|
20
21
|
"sap/m/VBox",
|
|
21
22
|
"sap/ui/base/ManagedObjectObserver",
|
|
22
23
|
"sap/ui/core/ResizeHandler",
|
|
23
|
-
"sap/ui/mdc/p13n/panels/
|
|
24
|
+
"sap/ui/mdc/p13n/panels/ChartItemPanel",
|
|
25
|
+
"sap/m/MessageStrip",
|
|
26
|
+
"../TypeUtil",
|
|
27
|
+
"../FilterBarDelegate",
|
|
28
|
+
"sap/ui/model/Filter"
|
|
24
29
|
], function (
|
|
25
30
|
V4ChartDelegate,
|
|
26
31
|
loadModules,
|
|
27
32
|
Core,
|
|
33
|
+
mobileLibrary,
|
|
28
34
|
Text,
|
|
29
35
|
MDCLib,
|
|
30
36
|
ODataMetaModelUtil,
|
|
@@ -37,21 +43,27 @@ sap.ui.define([
|
|
|
37
43
|
VBox,
|
|
38
44
|
ManagedObjectObserver,
|
|
39
45
|
ResizeHandler,
|
|
40
|
-
ChartItemPanel
|
|
46
|
+
ChartItemPanel,
|
|
47
|
+
MessageStrip,
|
|
48
|
+
V4TypeUtil,
|
|
49
|
+
V4FilterBarDelegate,
|
|
50
|
+
Filter
|
|
41
51
|
) {
|
|
42
52
|
"use strict";
|
|
43
53
|
/**
|
|
44
|
-
* Delegate class for sap.ui.mdc.
|
|
54
|
+
* Delegate class for sap.ui.mdc.Chart and ODataV4.
|
|
45
55
|
* Enables additional analytical capabilities.
|
|
46
56
|
* <b>Note:</b> The class is experimental and the API/behavior is not finalized.
|
|
47
57
|
*
|
|
48
58
|
* @author SAP SE
|
|
49
59
|
* @private
|
|
50
60
|
* @since 1.88
|
|
51
|
-
* @alias sap.ui.mdc.odata.v4.vizChart.
|
|
61
|
+
* @alias sap.ui.mdc.odata.v4.vizChart.ChartDelegate
|
|
52
62
|
*/
|
|
53
63
|
var ChartDelegate = Object.assign({}, V4ChartDelegate);
|
|
54
64
|
|
|
65
|
+
var FlexJustifyContent = mobileLibrary.FlexJustifyContent;
|
|
66
|
+
var FlexAlignItems = mobileLibrary.FlexAlignItems;
|
|
55
67
|
|
|
56
68
|
var mStateMap = new window.WeakMap();
|
|
57
69
|
//var ChartLibrary;
|
|
@@ -76,6 +88,14 @@ sap.ui.define([
|
|
|
76
88
|
mStateMap.set(oMDCChart, oState);
|
|
77
89
|
};
|
|
78
90
|
|
|
91
|
+
ChartDelegate.getTypeUtil = function() {
|
|
92
|
+
return V4TypeUtil;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
ChartDelegate.getFilterDelegate = function() {
|
|
96
|
+
return V4FilterBarDelegate;
|
|
97
|
+
};
|
|
98
|
+
|
|
79
99
|
ChartDelegate._deleteState = function(oMDCChart) {
|
|
80
100
|
|
|
81
101
|
if (this._getState(oMDCChart).vizTooltip) {
|
|
@@ -170,36 +190,6 @@ sap.ui.define([
|
|
|
170
190
|
* ...
|
|
171
191
|
*/
|
|
172
192
|
|
|
173
|
-
/**
|
|
174
|
-
* Provides the table's filter delegate that provides basic filter functionality such as adding filter fields.
|
|
175
|
-
* <b>Note:</b> The functionality provided in this delegate should act as a subset of a FilterBarDelegate
|
|
176
|
-
* to enable the table for inbuilt filtering.
|
|
177
|
-
*
|
|
178
|
-
* @example <caption>Example usage of <code>getFilterDelegate</code></caption>
|
|
179
|
-
* oFilterDelegate = {
|
|
180
|
-
* addItem: function() {
|
|
181
|
-
* var oFilterFieldPromise = new Promise(...);
|
|
182
|
-
* return oFilterFieldPromise;
|
|
183
|
-
* }
|
|
184
|
-
* }
|
|
185
|
-
* @returns {Object} Object for the chart filter personalization
|
|
186
|
-
* @public
|
|
187
|
-
*/
|
|
188
|
-
ChartDelegate.getFilterDelegate = function () {
|
|
189
|
-
return {
|
|
190
|
-
/**
|
|
191
|
-
*
|
|
192
|
-
* @param {String} sPropertyName The property name
|
|
193
|
-
* @param {Object} oMDCChart Instance of the chart TODO: Which one? MDC or inner?
|
|
194
|
-
*
|
|
195
|
-
* @returns {Promise} Promise that resolves with an instance of a <code>sap.ui.mdc.FilterField</code>.
|
|
196
|
-
* For more information, see {@link sap.ui.mdc.AggregationBaseDelegate#addItem AggregationBaseDelegate}.
|
|
197
|
-
*/
|
|
198
|
-
addItem: function (sPropertyName, oMDCChart) {
|
|
199
|
-
return Promise.resolve(null);
|
|
200
|
-
}
|
|
201
|
-
};
|
|
202
|
-
};
|
|
203
193
|
|
|
204
194
|
ChartDelegate.exit = function(oMDCChart) {
|
|
205
195
|
if (this._getInnerStructure(oMDCChart)){
|
|
@@ -325,13 +315,20 @@ sap.ui.define([
|
|
|
325
315
|
//var aRolesAvailable = [MDCLib.ChartItemRoleType.axis1, MDCLib.ChartItemRoleType.axis2, MDCLib.ChartItemRoleType.axis3, MDCLib.ChartItemRoleType.category, MDCLib.ChartItemRoleType.category2, MDCLib.ChartItemRoleType.series];
|
|
326
316
|
var oArguments = {panelConfig: oLayoutConfig};
|
|
327
317
|
|
|
328
|
-
|
|
318
|
+
var oPanel = new ChartItemPanel(oArguments);
|
|
319
|
+
|
|
320
|
+
if (oMDCChart.getChartType() === "heatmap"){
|
|
321
|
+
var MDCRb = sap.ui.getCore().getLibraryResourceBundle("sap.ui.mdc");
|
|
322
|
+
oPanel.setMessageStrip(new MessageStrip({text: MDCRb.getText("chart.PERSONALIZATION_DIALOG_MEASURE_WARNING"), type:"Warning"}));
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
return Promise.resolve(oPanel);
|
|
329
326
|
};
|
|
330
327
|
|
|
331
328
|
/**
|
|
332
329
|
* Sets the visibility of the legend
|
|
333
330
|
* This is called by the MDC Chart, do not call it directly!
|
|
334
|
-
* @param {
|
|
331
|
+
* @param {boolean} bVisible true to show legend, false to hide
|
|
335
332
|
*
|
|
336
333
|
* @experimental
|
|
337
334
|
* @private
|
|
@@ -354,7 +351,7 @@ sap.ui.define([
|
|
|
354
351
|
|
|
355
352
|
/**
|
|
356
353
|
* Creates a Sorter for given Property
|
|
357
|
-
* @param {sap.ui.mdc.
|
|
354
|
+
* @param {sap.ui.mdc.Chart.Item} oMDCItem the MDC Item to create a Sorter for
|
|
358
355
|
* @param {object} oSortProperty the sorting information
|
|
359
356
|
*/
|
|
360
357
|
ChartDelegate.getSorterForItem = function (oMDCItem, oSortProperty) {
|
|
@@ -365,7 +362,7 @@ sap.ui.define([
|
|
|
365
362
|
if (oMDCItem.getType() === "aggregatable") {
|
|
366
363
|
return new Sorter(this._getAggregatedMeasureNameForMDCItem(oMDCItem), oSortProperty.descending);
|
|
367
364
|
} else if (oMDCItem.getType() === "groupable") {
|
|
368
|
-
return new Sorter(oSortProperty.name, oSortProperty.descending);
|
|
365
|
+
return new Sorter(this.getInternalChartNameFromPropertyNameAndKind(oSortProperty.name, "groupable", oMDCItem.getParent()), oSortProperty.descending);
|
|
369
366
|
}
|
|
370
367
|
|
|
371
368
|
};
|
|
@@ -373,14 +370,15 @@ sap.ui.define([
|
|
|
373
370
|
/**
|
|
374
371
|
* Inserts an MDC Chart Item (in case of sap.chart.Chart a Measure/Dimension) on the inner chart
|
|
375
372
|
* This function is called by MDC Chart on a change of the <code>Items</code> aggregation
|
|
376
|
-
* @param {sap.ui.mdc.
|
|
373
|
+
* @param {sap.ui.mdc.chart-Item} oMDCChartItem the MDC CHart Item to insert into the inner chart
|
|
377
374
|
* @param {int} iIndex the index to insert into
|
|
378
375
|
*/
|
|
379
376
|
ChartDelegate.insertItemToInnerChart = function (oMDCChart, oMDCChartItem, iIndex) {
|
|
380
377
|
//TODO: Create Measures/Dimension only when required?
|
|
381
378
|
if (oMDCChartItem.getType() === "groupable") {
|
|
382
379
|
|
|
383
|
-
var
|
|
380
|
+
var sInnerDimName = this.getInternalChartNameFromPropertyNameAndKind(oMDCChartItem.getName(), "groupable", oMDCChart);
|
|
381
|
+
var oDim = this._getChart(oMDCChart).getDimensionByName(sInnerDimName);
|
|
384
382
|
|
|
385
383
|
if (!oDim) {
|
|
386
384
|
this.createInnerDimension(oMDCChart, oMDCChartItem);
|
|
@@ -391,7 +389,7 @@ sap.ui.define([
|
|
|
391
389
|
}
|
|
392
390
|
|
|
393
391
|
var aVisibleDimension = this._getChart(oMDCChart).getVisibleDimensions();
|
|
394
|
-
aVisibleDimension.splice(iIndex, 0,
|
|
392
|
+
aVisibleDimension.splice(iIndex, 0, sInnerDimName); //Insert Item without deleting existing dimension
|
|
395
393
|
this._getChart(oMDCChart).setVisibleDimensions(aVisibleDimension);
|
|
396
394
|
|
|
397
395
|
} else if (oMDCChartItem.getType() === "aggregatable") {
|
|
@@ -414,16 +412,18 @@ sap.ui.define([
|
|
|
414
412
|
/**
|
|
415
413
|
* Removes an Item (in case of sap.chart.Chart a Measure/Dimension) from the inner chart
|
|
416
414
|
* This function is called by MDC Chart on a change of the <code>Items</code> aggregation
|
|
417
|
-
* @param {sap.ui.mdc.
|
|
415
|
+
* @param {sap.ui.mdc.chart.Item} oMDCChartItem The Item to remove from the inner chart
|
|
418
416
|
*/
|
|
419
417
|
ChartDelegate.removeItemFromInnerChart = function (oMDCChart, oMDCChartItem) {
|
|
420
|
-
if (oMDCChartItem.getType() === "groupable" && this._getChart(oMDCChart).getVisibleDimensions().includes(oMDCChartItem.getName())) {
|
|
418
|
+
if (oMDCChartItem.getType() === "groupable" && this._getChart(oMDCChart).getVisibleDimensions().includes(this.getInternalChartNameFromPropertyNameAndKind(oMDCChartItem.getName(), "groupable", oMDCChart))) {
|
|
419
|
+
var sInnerDimName = this.getInternalChartNameFromPropertyNameAndKind(oMDCChartItem.getName(), "groupable", oMDCChart);
|
|
420
|
+
|
|
421
421
|
var aNewVisibleDimensions = this._getChart(oMDCChart).getVisibleDimensions().filter(function (e) {
|
|
422
|
-
return e !==
|
|
422
|
+
return e !== sInnerDimName;
|
|
423
423
|
});
|
|
424
424
|
|
|
425
|
-
if (
|
|
426
|
-
this._getChart(oMDCChart).setInResultDimensions(
|
|
425
|
+
if (this._getState(oMDCChart).inResultDimensions.length > 0) {
|
|
426
|
+
this._getChart(oMDCChart).setInResultDimensions(this._getState(oMDCChart).inResultDimensions);
|
|
427
427
|
}
|
|
428
428
|
|
|
429
429
|
this._getChart(oMDCChart).setVisibleDimensions(aNewVisibleDimensions);
|
|
@@ -451,7 +451,7 @@ sap.ui.define([
|
|
|
451
451
|
* (Does NOT add the MDC CHart Item to the Item aggregation of the MDC Chart)
|
|
452
452
|
* Called by p13n
|
|
453
453
|
* @param {string} sPropertyName the name of the property added
|
|
454
|
-
* @param {sap.ui.mdc.
|
|
454
|
+
* @param {sap.ui.mdc.Chart} oMDCChart reference to the MDC Chart to add the property to
|
|
455
455
|
* @returns {Promise} Promise that resolves with new MDC Chart Item as parameter
|
|
456
456
|
*/
|
|
457
457
|
ChartDelegate.addItem = function (sPropertyName, oMDCChart, mPropertyBag, sRole) {
|
|
@@ -467,6 +467,8 @@ sap.ui.define([
|
|
|
467
467
|
|
|
468
468
|
ChartDelegate._createMDCChartItem = function (sPropertyName, oMDCChart, sRole) {
|
|
469
469
|
return this.fetchProperties(oMDCChart).then(function (aProperties) {
|
|
470
|
+
|
|
471
|
+
//Uses excact MDC Chart Item id
|
|
470
472
|
var oPropertyInfo = aProperties.find(function (oCurrentPropertyInfo) {
|
|
471
473
|
return oCurrentPropertyInfo.name === sPropertyName;
|
|
472
474
|
});
|
|
@@ -511,10 +513,12 @@ sap.ui.define([
|
|
|
511
513
|
|
|
512
514
|
this._loadChart().then(function (aModules) {
|
|
513
515
|
|
|
516
|
+
var sVBoxHeight = this._calculateInnerChartHeight(oMDCChart);
|
|
517
|
+
|
|
514
518
|
this._setInnerStructure(oMDCChart, new VBox({
|
|
515
519
|
justifyContent: "Center",
|
|
516
520
|
alignItems: "Center",
|
|
517
|
-
height:
|
|
521
|
+
height: sVBoxHeight,
|
|
518
522
|
width: "100%"
|
|
519
523
|
}));
|
|
520
524
|
var oText = new Text();
|
|
@@ -531,7 +535,7 @@ sap.ui.define([
|
|
|
531
535
|
|
|
532
536
|
/**
|
|
533
537
|
* Creates initial content for the chart, while metadata has not been retrieved yet
|
|
534
|
-
* @param {sap.ui.mdc.
|
|
538
|
+
* @param {sap.ui.mdc.chart} oMDCChart the MDC Chart
|
|
535
539
|
*/
|
|
536
540
|
ChartDelegate.createInitialChartContent = function(oMDCChart) {
|
|
537
541
|
//Not relevant for sap.chart.Chart
|
|
@@ -546,6 +550,7 @@ sap.ui.define([
|
|
|
546
550
|
var aVisibleMeasures = [];
|
|
547
551
|
oMDCChart.getItems().forEach(function (oItem, iIndex) {
|
|
548
552
|
|
|
553
|
+
//Uses excact mdc chart item id
|
|
549
554
|
var oPropertyInfo = aProperties.find(function (oCurrentPropertyInfo) {
|
|
550
555
|
return oCurrentPropertyInfo.name === oItem.getName();
|
|
551
556
|
});
|
|
@@ -558,7 +563,8 @@ sap.ui.define([
|
|
|
558
563
|
|
|
559
564
|
switch (oItem.getType()) {
|
|
560
565
|
case "groupable":
|
|
561
|
-
aVisibleDimensions.push(oItem.getName());
|
|
566
|
+
aVisibleDimensions.push(this.getInternalChartNameFromPropertyNameAndKind(oItem.getName(), "groupable", oMDCChart));
|
|
567
|
+
|
|
562
568
|
this._addInnerDimension(oMDCChart, oItem, oPropertyInfo);
|
|
563
569
|
break;
|
|
564
570
|
case "aggregatable":
|
|
@@ -580,15 +586,14 @@ sap.ui.define([
|
|
|
580
586
|
|
|
581
587
|
if (this._getState(oMDCChart).aInSettings.indexOf(sKey) == -1) {
|
|
582
588
|
|
|
583
|
-
var oPropertyInfo =
|
|
584
|
-
return oCurrentPropertyInfo.name === sKey;
|
|
585
|
-
});
|
|
589
|
+
var oPropertyInfo = oMDCChart.getPropertyHelper().getProperty(sKey); //this.getPropertyFromNameAndKind not used as the key is the name of the MDC Chart Item
|
|
586
590
|
|
|
587
591
|
var aggregationMethod = oPropertyInfo.aggregationMethod;
|
|
588
592
|
var propertyPath = oPropertyInfo.propertyPath;
|
|
593
|
+
var sName = this.getInternalChartNameFromPropertyNameAndKind(sKey, "aggregatable", oMDCChart);
|
|
589
594
|
|
|
590
595
|
var oMeasureSettings = {
|
|
591
|
-
name:
|
|
596
|
+
name: sName,
|
|
592
597
|
label: oPropertyInfo.label,
|
|
593
598
|
role: "axis1"
|
|
594
599
|
};
|
|
@@ -612,7 +617,7 @@ sap.ui.define([
|
|
|
612
617
|
this._getChart(oMDCChart).setVisibleDimensions(aVisibleDimensions);
|
|
613
618
|
this._getChart(oMDCChart).setVisibleMeasures(aVisibleMeasures);
|
|
614
619
|
|
|
615
|
-
var aInResultDimensions = oMDCChart.getDelegate().inResultDimensions;
|
|
620
|
+
var aInResultDimensions = oMDCChart.getDelegate().inResultDimensions; //TODO: Does this use internal name? If so, change _getPropertyInfosByName below; Most likely not the case
|
|
616
621
|
if (aInResultDimensions && aInResultDimensions instanceof Array && aInResultDimensions.length != 0) {
|
|
617
622
|
|
|
618
623
|
var aInResultPromises = [];
|
|
@@ -620,18 +625,21 @@ sap.ui.define([
|
|
|
620
625
|
aInResultDimensions.forEach(function(sInResultDim){
|
|
621
626
|
|
|
622
627
|
aInResultPromises.push(this._getPropertyInfosByName(sInResultDim, oMDCChart).then(function(oPropertyInfos){
|
|
628
|
+
var sName = this.getInternalChartNameFromPropertyNameAndKind(oPropertyInfos.name, "groupable", oMDCChart);
|
|
629
|
+
|
|
623
630
|
var oDim = new Dimension({
|
|
624
|
-
name:
|
|
631
|
+
name: sName,
|
|
625
632
|
label: oPropertyInfos.label
|
|
626
633
|
});
|
|
627
634
|
|
|
635
|
+
this._getState(oMDCChart).inResultDimensions.push(sName);
|
|
628
636
|
this._getChart(oMDCChart).addDimension(oDim);
|
|
629
637
|
}.bind(this)));
|
|
630
638
|
|
|
631
639
|
}.bind(this));
|
|
632
640
|
|
|
633
641
|
Promise.all(aInResultPromises).then(function(){
|
|
634
|
-
this._getChart(oMDCChart).setInResultDimensions(
|
|
642
|
+
this._getChart(oMDCChart).setInResultDimensions(this._getState(oMDCChart).inResultDimensions);
|
|
635
643
|
}.bind(this));
|
|
636
644
|
|
|
637
645
|
}
|
|
@@ -656,6 +664,7 @@ sap.ui.define([
|
|
|
656
664
|
|
|
657
665
|
if (oItem.getType === "aggregatable") {
|
|
658
666
|
|
|
667
|
+
//Uses excact MDC CHart Item name
|
|
659
668
|
this._getPropertyInfosByName(oItem.getName(), oItem.getParent()).then(function (oPropertyInfo) {
|
|
660
669
|
for (var j = 0; j < this._getAdditionalColoringMeasuresForItem(oPropertyInfo); j++) {
|
|
661
670
|
|
|
@@ -693,6 +702,7 @@ sap.ui.define([
|
|
|
693
702
|
*/
|
|
694
703
|
ChartDelegate._addCriticality = function (oItem) {
|
|
695
704
|
|
|
705
|
+
//Uses excact MDC Chart item name to idenfiy property
|
|
696
706
|
return this._getPropertyInfosByName(oItem.getName(), oItem.getParent()).then(function (oPropertyInfo) {
|
|
697
707
|
|
|
698
708
|
if (oPropertyInfo.criticality || (oPropertyInfo.datapoint && oPropertyInfo.datapoint.criticality)){
|
|
@@ -716,7 +726,8 @@ sap.ui.define([
|
|
|
716
726
|
};
|
|
717
727
|
}
|
|
718
728
|
|
|
719
|
-
|
|
729
|
+
var sDimName = this.getInternalChartNameFromPropertyNameAndKind(oItem.getName(), "groupable", oItem.getParent());
|
|
730
|
+
oColorings.Criticality.DimensionValues[sDimName] = mChartCrit;
|
|
720
731
|
|
|
721
732
|
} else {
|
|
722
733
|
var mCrit = oPropertyInfo.datapoint && oPropertyInfo.datapoint.criticality ? oPropertyInfo.datapoint.criticality : [];
|
|
@@ -725,7 +736,8 @@ sap.ui.define([
|
|
|
725
736
|
mChartCrit[sKey] = mCrit[sKey];
|
|
726
737
|
}
|
|
727
738
|
|
|
728
|
-
|
|
739
|
+
var sMeasureName = this.getInternalChartNameFromPropertyNameAndKind(oItem.getName(), "aggregatable", oItem.getParent());
|
|
740
|
+
oColorings.Criticality.MeasureValues[sMeasureName] = mChartCrit;
|
|
729
741
|
}
|
|
730
742
|
|
|
731
743
|
var oState = this._getState(oItem.getParent());
|
|
@@ -812,9 +824,7 @@ sap.ui.define([
|
|
|
812
824
|
|
|
813
825
|
aVisibleMeasures.forEach(function(sVisibleMeasureName){
|
|
814
826
|
//first draft only with semantic pattern
|
|
815
|
-
var oPropertyInfo =
|
|
816
|
-
return oCurrentPropertyInfo.name === sVisibleMeasureName;
|
|
817
|
-
});
|
|
827
|
+
var oPropertyInfo = this.getPropertyFromNameAndKind(sVisibleMeasureName, "aggregatable", oMDCChart);
|
|
818
828
|
|
|
819
829
|
if (!oPropertyInfo){
|
|
820
830
|
return;
|
|
@@ -933,7 +943,23 @@ sap.ui.define([
|
|
|
933
943
|
*/
|
|
934
944
|
ChartDelegate.getDrillStack = function (oMDCChart) {
|
|
935
945
|
//TODO: Generify the return values here for other chart frameworks
|
|
936
|
-
|
|
946
|
+
var aDrillStack = [];
|
|
947
|
+
aDrillStack = Object.assign(aDrillStack, this._getChart(oMDCChart).getDrillStack());
|
|
948
|
+
|
|
949
|
+
aDrillStack.forEach(function(oStackEntry) {
|
|
950
|
+
// loop over nested dimension arrays -> give them the correct name for filtering
|
|
951
|
+
oStackEntry.dimension = oStackEntry.dimension.map(function(sDimension) {
|
|
952
|
+
var oProp = this.getPropertyFromNameAndKind(sDimension, "groupable", oMDCChart);
|
|
953
|
+
if (oProp) {
|
|
954
|
+
return oProp.name;
|
|
955
|
+
} else {
|
|
956
|
+
Log.error("MDC Chart Delegate: Couldn't map chart dimension to groupable property: " + sDimension);
|
|
957
|
+
return sDimension;
|
|
958
|
+
}
|
|
959
|
+
}.bind(this));
|
|
960
|
+
}.bind(this));
|
|
961
|
+
|
|
962
|
+
return aDrillStack;
|
|
937
963
|
};
|
|
938
964
|
|
|
939
965
|
/**
|
|
@@ -966,7 +992,7 @@ sap.ui.define([
|
|
|
966
992
|
* Determines which MDC Items are Drillable and returns them
|
|
967
993
|
* Used by breadcrumbs
|
|
968
994
|
*
|
|
969
|
-
* @param {sap.ui.mdc.
|
|
995
|
+
* @param {sap.ui.mdc.Chart} oMDCChart the MDC Chart to get the Items from
|
|
970
996
|
* @returns {array} Array of MDC Items which are drillable
|
|
971
997
|
*
|
|
972
998
|
*/
|
|
@@ -998,6 +1024,9 @@ sap.ui.define([
|
|
|
998
1024
|
isAnalytical: true//,
|
|
999
1025
|
}));
|
|
1000
1026
|
|
|
1027
|
+
//Initialize empty; will get filled later on
|
|
1028
|
+
this._getState(oMDCChart).inResultDimensions = [];
|
|
1029
|
+
|
|
1001
1030
|
if (oMDCChart.getHeight()){
|
|
1002
1031
|
this._getChart(oMDCChart).setHeight(this._calculateInnerChartHeight(oMDCChart));
|
|
1003
1032
|
}
|
|
@@ -1025,8 +1054,8 @@ sap.ui.define([
|
|
|
1025
1054
|
}.bind(this));
|
|
1026
1055
|
|
|
1027
1056
|
this._getInnerStructure(oMDCChart).removeAllItems();
|
|
1028
|
-
this._getInnerStructure(oMDCChart).setJustifyContent(
|
|
1029
|
-
this._getInnerStructure(oMDCChart).setAlignItems(
|
|
1057
|
+
this._getInnerStructure(oMDCChart).setJustifyContent(FlexJustifyContent.Start);
|
|
1058
|
+
this._getInnerStructure(oMDCChart).setAlignItems(FlexAlignItems.Stretch);
|
|
1030
1059
|
this._getInnerStructure(oMDCChart).addItem(this._getChart(oMDCChart));
|
|
1031
1060
|
|
|
1032
1061
|
oState.dataLoadedCallback = fnCallbackDataLoaded;
|
|
@@ -1034,7 +1063,7 @@ sap.ui.define([
|
|
|
1034
1063
|
this._setState(oMDCChart, oState);
|
|
1035
1064
|
var oBindingInfo = this._getBindingInfo(oMDCChart);
|
|
1036
1065
|
this.updateBindingInfo(oMDCChart, oBindingInfo); //Applies filters
|
|
1037
|
-
this.
|
|
1066
|
+
this.rebind(oMDCChart, oBindingInfo);
|
|
1038
1067
|
};
|
|
1039
1068
|
|
|
1040
1069
|
ChartDelegate._calculateInnerChartHeight = function(oMDCChart) {
|
|
@@ -1066,7 +1095,10 @@ sap.ui.define([
|
|
|
1066
1095
|
*/
|
|
1067
1096
|
ChartDelegate.adjustChartHeight = function(oMDCChart){
|
|
1068
1097
|
if (oMDCChart.getHeight() && this._getChart(oMDCChart)){
|
|
1069
|
-
this.
|
|
1098
|
+
var sHeight = this._calculateInnerChartHeight(oMDCChart);
|
|
1099
|
+
|
|
1100
|
+
this._getInnerStructure(oMDCChart).setHeight(sHeight);
|
|
1101
|
+
this._getChart(oMDCChart).setHeight(sHeight);
|
|
1070
1102
|
}
|
|
1071
1103
|
};
|
|
1072
1104
|
|
|
@@ -1080,6 +1112,7 @@ sap.ui.define([
|
|
|
1080
1112
|
|
|
1081
1113
|
this.fetchProperties(oMDCChartItem.getParent()).then(function (aProperties) {
|
|
1082
1114
|
|
|
1115
|
+
//Uses MDC Chart Item ID to identify preoperty, not internal chart id
|
|
1083
1116
|
var oPropertyInfo = aProperties.find(function (oCurrentPropertyInfo) {
|
|
1084
1117
|
return oCurrentPropertyInfo.name === oMDCChartItem.getName();
|
|
1085
1118
|
});
|
|
@@ -1094,6 +1127,7 @@ sap.ui.define([
|
|
|
1094
1127
|
|
|
1095
1128
|
this.fetchProperties(oMDCChartItem.getParent()).then(function (aProperties) {
|
|
1096
1129
|
|
|
1130
|
+
//Uses MDC Chart Item ID to identify preoperty, not internal chart id
|
|
1097
1131
|
var oPropertyInfo = aProperties.find(function (oCurrentPropertyInfo) {
|
|
1098
1132
|
return oCurrentPropertyInfo.name === oMDCChartItem.getName();
|
|
1099
1133
|
});
|
|
@@ -1109,7 +1143,7 @@ sap.ui.define([
|
|
|
1109
1143
|
*/
|
|
1110
1144
|
ChartDelegate._addInnerDimension = function(oMDCChart, oMDCChartItem, oPropertyInfo) {
|
|
1111
1145
|
var oDimension = new Dimension({
|
|
1112
|
-
name: oMDCChartItem.getName(),
|
|
1146
|
+
name: this.getInternalChartNameFromPropertyNameAndKind(oMDCChartItem.getName(), "groupable", oMDCChart),
|
|
1113
1147
|
role: oMDCChartItem.getRole() ? oMDCChartItem.getRole() : "category",
|
|
1114
1148
|
label: oMDCChartItem.getLabel()
|
|
1115
1149
|
});
|
|
@@ -1133,7 +1167,7 @@ sap.ui.define([
|
|
|
1133
1167
|
var propertyPath = oPropertyInfo.propertyPath;
|
|
1134
1168
|
|
|
1135
1169
|
var oMeasureSettings = {
|
|
1136
|
-
name: this._getAggregatedMeasureNameForMDCItem(oMDCChartItem),//
|
|
1170
|
+
name: this._getAggregatedMeasureNameForMDCItem(oMDCChartItem),//aggregationMethod + oItem.getName() under normal circumstances
|
|
1137
1171
|
label: oMDCChartItem.getLabel(),
|
|
1138
1172
|
role: oMDCChartItem.getRole() ? oMDCChartItem.getRole() : "axis1"
|
|
1139
1173
|
};
|
|
@@ -1157,10 +1191,21 @@ sap.ui.define([
|
|
|
1157
1191
|
/**
|
|
1158
1192
|
* Checks the binding of the table and rebinds it if required.
|
|
1159
1193
|
*
|
|
1160
|
-
* @param {sap.ui.mdc.
|
|
1194
|
+
* @param {sap.ui.mdc.Chart} oMDCChart The MDC chart instance
|
|
1195
|
+
* @param {object} oBindingInfo The bindingInfo of the chart
|
|
1196
|
+
* @deprecated as of 1.98; use rebind instead
|
|
1197
|
+
*/
|
|
1198
|
+
ChartDelegate.rebindChart = function (oMDCChart, oBindingInfo) {
|
|
1199
|
+
this.rebind(oMDCChart, oBindingInfo);
|
|
1200
|
+
};
|
|
1201
|
+
|
|
1202
|
+
/**
|
|
1203
|
+
* Checks the binding of the table and rebinds it if required.
|
|
1204
|
+
*
|
|
1205
|
+
* @param {sap.ui.mdc.Chart} oMDCChart The MDC chart instance
|
|
1161
1206
|
* @param {object} oBindingInfo The bindingInfo of the chart
|
|
1162
1207
|
*/
|
|
1163
|
-
ChartDelegate.
|
|
1208
|
+
ChartDelegate.rebind = function (oMDCChart, oBindingInfo) {
|
|
1164
1209
|
if (oMDCChart && oBindingInfo && this._getChart(oMDCChart)) {
|
|
1165
1210
|
//TODO: bindData sap.chart.Chart specific and therefore needs to be changed to a general API.
|
|
1166
1211
|
this._addBindingListener(oBindingInfo, "dataReceived", this._getState(oMDCChart).dataLoadedCallback.bind(oMDCChart));
|
|
@@ -1196,7 +1241,7 @@ sap.ui.define([
|
|
|
1196
1241
|
|
|
1197
1242
|
/**
|
|
1198
1243
|
* Returns whether the inner chart is currently bound
|
|
1199
|
-
* @returns {
|
|
1244
|
+
* @returns {boolean} true if inner chart is bound; false if not
|
|
1200
1245
|
*/
|
|
1201
1246
|
ChartDelegate.getInnerChartBound = function (oMDCChart) {
|
|
1202
1247
|
var oState = this._getState(oMDCChart);
|
|
@@ -1215,51 +1260,101 @@ sap.ui.define([
|
|
|
1215
1260
|
* @param {Object} oBindingInfo The binding info of the chart
|
|
1216
1261
|
*/
|
|
1217
1262
|
ChartDelegate.updateBindingInfo = function (oMDCChart, oBindingInfo) {
|
|
1218
|
-
var
|
|
1219
|
-
|
|
1220
|
-
|
|
1263
|
+
var aFilters = createInnerFilters.call(this, oMDCChart).concat(createOuterFilters.call(this, oMDCChart));
|
|
1264
|
+
addSearchParameter(oMDCChart, oBindingInfo);
|
|
1265
|
+
oBindingInfo.filters = new Filter(aFilters, true);
|
|
1266
|
+
};
|
|
1221
1267
|
|
|
1222
|
-
|
|
1268
|
+
function createInnerFilters(oChart) {
|
|
1269
|
+
var bFilterEnabled = oChart.getP13nMode().indexOf("Filter") > -1;
|
|
1270
|
+
var aFilters = [];
|
|
1223
1271
|
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1272
|
+
if (bFilterEnabled) {
|
|
1273
|
+
var aChartProperties = oChart.getPropertyHelper().getProperties();
|
|
1274
|
+
var oInnerFilterInfo = FilterUtil.getFilterInfo(this.getTypeUtil(), oChart.getConditions(), aChartProperties);
|
|
1227
1275
|
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
oBindingInfo.filters = oFilterInfo.filters;
|
|
1233
|
-
}
|
|
1276
|
+
if (oInnerFilterInfo.filters) {
|
|
1277
|
+
aFilters.push(oInnerFilterInfo.filters);
|
|
1278
|
+
}
|
|
1279
|
+
}
|
|
1234
1280
|
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
oBindingInfo.path = sParameterPath;
|
|
1238
|
-
}
|
|
1239
|
-
}
|
|
1281
|
+
return aFilters;
|
|
1282
|
+
}
|
|
1240
1283
|
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1284
|
+
function createOuterFilters(oChart) {
|
|
1285
|
+
var oFilter = Core.byId(oChart.getFilter());
|
|
1286
|
+
var aFilters = [];
|
|
1244
1287
|
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1288
|
+
if (!oFilter) {
|
|
1289
|
+
return aFilters;
|
|
1290
|
+
}
|
|
1248
1291
|
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1292
|
+
var mConditions = oFilter.getConditions();
|
|
1293
|
+
|
|
1294
|
+
if (mConditions) {
|
|
1295
|
+
var aPropertiesMetadata = oFilter.getPropertyInfoSet ? oFilter.getPropertyInfoSet() : null;
|
|
1296
|
+
var aParameterNames = DelegateUtil.getParameterNames(oFilter);
|
|
1297
|
+
var oOuterFilterInfo = FilterUtil.getFilterInfo(this.getTypeUtil(), mConditions, aPropertiesMetadata, aParameterNames);
|
|
1298
|
+
|
|
1299
|
+
if (oOuterFilterInfo.filters) {
|
|
1300
|
+
aFilters.push(oOuterFilterInfo.filters);
|
|
1301
|
+
}
|
|
1302
|
+
}
|
|
1303
|
+
|
|
1304
|
+
return aFilters;
|
|
1305
|
+
}
|
|
1257
1306
|
|
|
1307
|
+
function addSearchParameter(oChart, oBindingInfo) {
|
|
1308
|
+
var oFilter = Core.byId(oChart.getFilter());
|
|
1309
|
+
if (!oFilter) {
|
|
1310
|
+
return;
|
|
1311
|
+
}
|
|
1312
|
+
|
|
1313
|
+
var mConditions = oFilter.getConditions();
|
|
1314
|
+
// get the basic search
|
|
1315
|
+
var sSearchText = oFilter.getSearch instanceof Function ? oFilter.getSearch() : "";
|
|
1316
|
+
|
|
1317
|
+
if (mConditions) {
|
|
1318
|
+
var sParameterPath = DelegateUtil.getParametersInfo(oFilter, mConditions);
|
|
1319
|
+
if (sParameterPath) {
|
|
1320
|
+
oBindingInfo.path = sParameterPath;
|
|
1321
|
+
}
|
|
1322
|
+
}
|
|
1323
|
+
|
|
1324
|
+
if (!oBindingInfo.parameters) {
|
|
1325
|
+
oBindingInfo.parameters = {};
|
|
1258
1326
|
}
|
|
1259
|
-
|
|
1327
|
+
|
|
1328
|
+
oBindingInfo.parameters["$search"] = sSearchText || undefined;
|
|
1329
|
+
}
|
|
1260
1330
|
|
|
1261
1331
|
ChartDelegate._getAggregatedMeasureNameForMDCItem = function(oMDCItem){
|
|
1262
|
-
return oMDCItem.getName();
|
|
1332
|
+
return this.getInternalChartNameFromPropertyNameAndKind(oMDCItem.getName(), "aggregatable", oMDCItem.getParent());
|
|
1333
|
+
};
|
|
1334
|
+
|
|
1335
|
+
/**
|
|
1336
|
+
* This function returns an id which should be used in the internal chart for the measure/dimension
|
|
1337
|
+
* In the standard case, this is just the id of the property.
|
|
1338
|
+
* If it is necessary to use another id internally inside the chart (e.g. on duplicate property ids) this method can be overwritten.
|
|
1339
|
+
* In this case, <code>getPropertyFromNameAndKind</code> needs to be overwritten aswell.
|
|
1340
|
+
* @param {string} sName ID of the property
|
|
1341
|
+
* @param {string} sKind Kind of the Property (Measure/Dimension)
|
|
1342
|
+
* @param {sap.ui.mdc.Chart} oMDCChart reference to the MDC Chart
|
|
1343
|
+
* @returns {string} internal id for the sap.chart.Chart
|
|
1344
|
+
*/
|
|
1345
|
+
ChartDelegate.getInternalChartNameFromPropertyNameAndKind = function(sName, sKind, oMDCChart) {
|
|
1346
|
+
return sName;
|
|
1347
|
+
};
|
|
1348
|
+
|
|
1349
|
+
/**
|
|
1350
|
+
* This maps an id of an internal chart dimension/measure & kind of a property to its coresponding property entry.
|
|
1351
|
+
* @param {string} sName the id of internal chart measure/dimension
|
|
1352
|
+
* @param {string} sKind the kind of the property
|
|
1353
|
+
* @param {sap.ui.mdc.Chart} oMDCChart reference to the MDC Chart
|
|
1354
|
+
* @returns {object} the property object
|
|
1355
|
+
*/
|
|
1356
|
+
ChartDelegate.getPropertyFromNameAndKind = function(sName, sKind, oMDCChart) {
|
|
1357
|
+
return oMDCChart.getPropertyHelper().getProperty(sName);
|
|
1263
1358
|
};
|
|
1264
1359
|
|
|
1265
1360
|
/**
|
|
@@ -1322,7 +1417,7 @@ sap.ui.define([
|
|
|
1322
1417
|
|
|
1323
1418
|
/**
|
|
1324
1419
|
* Sets tooltips visible/invisible on inner chart
|
|
1325
|
-
* @param {
|
|
1420
|
+
* @param {boolean} bFlag true for visible, false for invisible
|
|
1326
1421
|
*/
|
|
1327
1422
|
ChartDelegate.setChartTooltipVisibility = function (oMDCChart, bFlag) {
|
|
1328
1423
|
|
|
@@ -1375,7 +1470,7 @@ sap.ui.define([
|
|
|
1375
1470
|
/**
|
|
1376
1471
|
* Initializes a new table property helper for V4 analytics with the property extensions merged into the property infos.
|
|
1377
1472
|
*
|
|
1378
|
-
* @param {sap.ui.mdc.
|
|
1473
|
+
* @param {sap.ui.mdc.Chart} oMDCChart reference to the MDC Chart
|
|
1379
1474
|
* @returns {Promise<sap.ui.mdc.table.V4AnalyticsPropertyHelper>} A promise that resolves with the property helper.
|
|
1380
1475
|
* @private
|
|
1381
1476
|
* @ui5-restricted sap.ui.mdc
|
|
@@ -1384,7 +1479,7 @@ sap.ui.define([
|
|
|
1384
1479
|
// TODO: Do this in the DelegateMixin, or provide a function in the base delegate to merge properties and extensions
|
|
1385
1480
|
return Promise.all([
|
|
1386
1481
|
this.fetchProperties(oMDCChart),
|
|
1387
|
-
loadModules("sap/ui/mdc/odata/v4/
|
|
1482
|
+
loadModules("sap/ui/mdc/odata/v4/ChartPropertyHelper")
|
|
1388
1483
|
]).then(function (aResult) {
|
|
1389
1484
|
return Promise.all(aResult.concat(this.fetchPropertyExtensions(oMDCChart, aResult[0])));
|
|
1390
1485
|
}.bind(this)).then(function (aResult) {
|
|
@@ -1414,7 +1509,7 @@ sap.ui.define([
|
|
|
1414
1509
|
/**
|
|
1415
1510
|
* Returns the relevant propery infos based on the metadata used with the MDC Chart instance.
|
|
1416
1511
|
*
|
|
1417
|
-
* @param {sap.ui.mdc.
|
|
1512
|
+
* @param {sap.ui.mdc.Chart} oMDCChart reference to the MDC Chart
|
|
1418
1513
|
* @returns {array} Array of the property infos to be used within MDC Chart
|
|
1419
1514
|
*/
|
|
1420
1515
|
ChartDelegate.fetchProperties = function (oMDCChart) {
|
|
@@ -1488,10 +1583,11 @@ sap.ui.define([
|
|
|
1488
1583
|
}
|
|
1489
1584
|
|
|
1490
1585
|
if (oPropertyAnnotations["@Org.OData.Aggregation.V1.Aggregatable"]){
|
|
1491
|
-
aProperties = aProperties.concat(this._createPropertyInfosForAggregatable(sKey, oPropertyAnnotations, oFilterRestrictionsInfo, oSortRestrictionsInfo));
|
|
1586
|
+
aProperties = aProperties.concat(this._createPropertyInfosForAggregatable(sKey, oPropertyAnnotations, oObj, oFilterRestrictionsInfo, oSortRestrictionsInfo));
|
|
1492
1587
|
}
|
|
1493
1588
|
|
|
1494
1589
|
if (oPropertyAnnotations["@Org.OData.Aggregation.V1.Groupable"]) {
|
|
1590
|
+
|
|
1495
1591
|
aProperties.push({
|
|
1496
1592
|
name: sKey,
|
|
1497
1593
|
propertyPath: sKey,
|
|
@@ -1502,6 +1598,7 @@ sap.ui.define([
|
|
|
1502
1598
|
aggregatable: false,
|
|
1503
1599
|
maxConditions: ODataMetaModelUtil.isMultiValueFilterExpression(oFilterRestrictionsInfo.propertyInfo[sKey]) ? -1 : 1,
|
|
1504
1600
|
sortKey: sKey,
|
|
1601
|
+
typeConfig: this.getTypeUtil().getTypeConfig(oObj.$Type, null, {}),
|
|
1505
1602
|
kind: "Groupable", //TODO: Rename in type; Only needed for P13n Item Panel
|
|
1506
1603
|
availableRoles: this._getLayoutOptionsForType("groupable"), //for p13n
|
|
1507
1604
|
role: MDCLib.ChartItemRoleType.category, //standard, normally this should be interpreted from UI.Chart annotation
|
|
@@ -1516,7 +1613,7 @@ sap.ui.define([
|
|
|
1516
1613
|
}.bind(this));
|
|
1517
1614
|
};
|
|
1518
1615
|
|
|
1519
|
-
ChartDelegate._createPropertyInfosForAggregatable = function(sKey, oPropertyAnnotations, oFilterRestrictionsInfo, oSortRestrictionsInfo) {
|
|
1616
|
+
ChartDelegate._createPropertyInfosForAggregatable = function(sKey, oPropertyAnnotations, oObj, oFilterRestrictionsInfo, oSortRestrictionsInfo) {
|
|
1520
1617
|
var aProperties = [];
|
|
1521
1618
|
|
|
1522
1619
|
if (oPropertyAnnotations["@Org.OData.Aggregation.V1.SupportedAggregationMethods"]){
|
|
@@ -1532,6 +1629,7 @@ sap.ui.define([
|
|
|
1532
1629
|
aggregationMethod: sAggregationMethod,
|
|
1533
1630
|
maxConditions: ODataMetaModelUtil.isMultiValueFilterExpression(oFilterRestrictionsInfo.propertyInfo[sKey]) ? -1 : 1,
|
|
1534
1631
|
sortKey: oPropertyAnnotations["@Org.OData.Aggregation.V1.RecommendedAggregationMethod"] + sKey,
|
|
1632
|
+
typeConfig: this.getTypeUtil().getTypeConfig(oObj.$Type, null, {}),
|
|
1535
1633
|
kind: "Aggregatable",//Only needed for P13n Item Panel
|
|
1536
1634
|
availableRoles: this._getLayoutOptionsForType("aggregatable"), //for p13n
|
|
1537
1635
|
role: MDCLib.ChartItemRoleType.axis1,
|
|
@@ -1543,6 +1641,7 @@ sap.ui.define([
|
|
|
1543
1641
|
return aProperties;
|
|
1544
1642
|
};
|
|
1545
1643
|
|
|
1644
|
+
//Gets internal property infos by excact property name
|
|
1546
1645
|
ChartDelegate._getPropertyInfosByName = function(sName, oMDCChart){
|
|
1547
1646
|
return new Promise(function(resolve){
|
|
1548
1647
|
this.fetchProperties(oMDCChart).then(function(aProperties){
|