mirror of
https://github.com/apache/superset.git
synced 2026-04-19 08:04:53 +00:00
feat(explore): Denormalize form data in echarts, world map and nvd3 bar and line charts (#20313)
* feat(explore): Apply denormalize form data function to echarts and world map * Denormalize form data in mixed timeseries * Add dist bar chart
This commit is contained in:
committed by
GitHub
parent
d04357c47b
commit
354a89950c
@@ -16,7 +16,7 @@
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
import { t } from '@superset-ui/core';
|
||||
import { ensureIsArray, t } from '@superset-ui/core';
|
||||
import {
|
||||
D3_FORMAT_DOCS,
|
||||
D3_FORMAT_OPTIONS,
|
||||
@@ -136,5 +136,16 @@ const config: ControlPanelConfig = {
|
||||
),
|
||||
},
|
||||
},
|
||||
denormalizeFormData: formData => {
|
||||
const groupby =
|
||||
formData.standardizedFormData.standardizedState.columns.filter(
|
||||
col => !ensureIsArray(formData.columns).includes(col),
|
||||
);
|
||||
return {
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby,
|
||||
};
|
||||
},
|
||||
};
|
||||
export default config;
|
||||
|
||||
@@ -143,6 +143,11 @@ const config: ControlPanelConfig = {
|
||||
},
|
||||
};
|
||||
},
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metric: formData.standardizedFormData.standardizedState.metrics[0],
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -39,7 +39,6 @@ const config: ControlPanelConfig = {
|
||||
name: 'groupby',
|
||||
config: {
|
||||
...sharedControls.groupby,
|
||||
label: t('Dimensions'),
|
||||
description: t('Columns to group by'),
|
||||
},
|
||||
},
|
||||
@@ -309,6 +308,11 @@ const config: ControlPanelConfig = {
|
||||
],
|
||||
},
|
||||
],
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metric: formData.standardizedFormData.standardizedState.metrics[0],
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -320,6 +320,10 @@ const controlPanel: ControlPanelConfig = {
|
||||
],
|
||||
},
|
||||
],
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metric: formData.standardizedFormData.standardizedState.metrics[0],
|
||||
}),
|
||||
};
|
||||
|
||||
export default controlPanel;
|
||||
|
||||
@@ -17,7 +17,12 @@
|
||||
* under the License.
|
||||
*/
|
||||
import React from 'react';
|
||||
import { FeatureFlag, isFeatureEnabled, t } from '@superset-ui/core';
|
||||
import {
|
||||
ensureIsArray,
|
||||
FeatureFlag,
|
||||
isFeatureEnabled,
|
||||
t,
|
||||
} from '@superset-ui/core';
|
||||
import { cloneDeep } from 'lodash';
|
||||
import {
|
||||
ControlPanelConfig,
|
||||
@@ -435,6 +440,21 @@ const config: ControlPanelConfig = {
|
||||
],
|
||||
},
|
||||
],
|
||||
denormalizeFormData: formData => {
|
||||
const groupby =
|
||||
formData.standardizedFormData.standardizedState.columns.filter(
|
||||
col => !ensureIsArray(formData.groupby_b).includes(col),
|
||||
);
|
||||
const metrics =
|
||||
formData.standardizedFormData.standardizedState.metrics.filter(
|
||||
metric => !ensureIsArray(formData.metrics_b).includes(metric),
|
||||
);
|
||||
return {
|
||||
...formData,
|
||||
metrics,
|
||||
groupby,
|
||||
};
|
||||
},
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -210,6 +210,11 @@ const config: ControlPanelConfig = {
|
||||
],
|
||||
},
|
||||
],
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -312,6 +312,11 @@ const config: ControlPanelConfig = {
|
||||
default: rowLimit,
|
||||
},
|
||||
},
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -398,6 +398,11 @@ const config: ControlPanelConfig = {
|
||||
default: rowLimit,
|
||||
},
|
||||
},
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -223,6 +223,11 @@ const config: ControlPanelConfig = {
|
||||
default: rowLimit,
|
||||
},
|
||||
},
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -243,6 +243,7 @@ const config: ControlPanelConfig = {
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
|
||||
@@ -296,6 +296,11 @@ const config: ControlPanelConfig = {
|
||||
default: rowLimit,
|
||||
},
|
||||
},
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -299,6 +299,11 @@ const config: ControlPanelConfig = {
|
||||
default: rowLimit,
|
||||
},
|
||||
},
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metrics: formData.standardizedFormData.standardizedState.metrics,
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
@@ -285,6 +285,10 @@ const controlPanel: ControlPanelConfig = {
|
||||
],
|
||||
},
|
||||
],
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metric: formData.standardizedFormData.standardizedState.metrics[0],
|
||||
}),
|
||||
};
|
||||
|
||||
export default controlPanel;
|
||||
|
||||
@@ -137,6 +137,11 @@ const config: ControlPanelConfig = {
|
||||
],
|
||||
},
|
||||
],
|
||||
denormalizeFormData: formData => ({
|
||||
...formData,
|
||||
metric: formData.standardizedFormData.standardizedState.metrics[0],
|
||||
groupby: formData.standardizedFormData.standardizedState.columns,
|
||||
}),
|
||||
};
|
||||
|
||||
export default config;
|
||||
|
||||
Reference in New Issue
Block a user