feat(plugin-chart-echarts): support non-timeseries x-axis (#17917)

* feat(plugin-chart-echarts): support non-timeseries x-axis

* fix tests

* change formula return type from Date to number

* add x_axis test coverage

* rename func and improve coverage

* add x-axis control to bar chart

* remove redundant console.log

* fix description

* make x-axis control mandatory

* 🙃

* fix x-axis formatter

* fix showValues

* fix implicit rDTTM_ALIAS references in postProcessing

* replace TIME_COLUMN with DTTM_ALIAS

* fix remaining implicit indexes

* fix: Disable filtering on wide result sets (#18021)

* fix: handle null values in time-series table (#18039)

* cleanup column_type_mappings (#17569)

Signed-off-by: Đặng Minh Dũng <dungdm93@live.com>

* important change to MakeFile (#18037)

* add missing is_timeseries to pivot op

Co-authored-by: Erik Ritter <erik.ritter@airbnb.com>
Co-authored-by: Grace Guo <grace.guo@airbnb.com>
Co-authored-by: Đặng Minh Dũng <dungdm93@live.com>
Co-authored-by: AAfghahi <48933336+AAfghahi@users.noreply.github.com>
This commit is contained in:
Ville Brofeldt
2022-01-21 21:23:23 +02:00
committed by GitHub
parent b083b3421f
commit e9651ea52f
42 changed files with 489 additions and 201 deletions

View File

@@ -17,7 +17,7 @@
* under the License.
*/
import React from 'react';
import { t } from '@superset-ui/core';
import { t, validateNonEmpty } from '@superset-ui/core';
import {
ControlPanelsContainerProps,
ControlSetItem,
@@ -138,6 +138,18 @@ const onlyTotalControl: ControlSetItem = {
},
};
export const xAxisControl: ControlSetItem = {
name: 'x_axis',
config: {
...sharedControls.groupby,
label: t('X-axis'),
default: null,
multi: false,
description: t('Dimension to use on x-axis.'),
validators: [validateNonEmpty],
},
};
const percentageThresholdControl: ControlSetItem = {
name: 'percentage_threshold',
config: {
@@ -163,6 +175,11 @@ export const showValueSection: ControlSetRow[] = [
[percentageThresholdControl],
];
export const showValueSectionWithoutStack: ControlSetRow[] = [
[showValueControl],
[onlyTotalControl],
];
const richTooltipControl: ControlSetItem = {
name: 'rich_tooltip',
config: {