feat: drop missing columns control (#20586)

This commit is contained in:
Yongjie Zhao 2022-07-04 18:08:12 +08:00 committed by GitHub
parent c0a00fd302
commit 309327dcbd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 2 deletions

View File

@ -44,7 +44,7 @@ export const pivotOperator: PostProcessingFactory<PostProcessingPivot> = (
aggregates: Object.fromEntries( aggregates: Object.fromEntries(
metricLabels.map(metric => [metric, { operator: 'mean' }]), metricLabels.map(metric => [metric, { operator: 'mean' }]),
), ),
drop_missing_columns: false, drop_missing_columns: !!formData?.drop_missing_columns,
}, },
}; };
} }

View File

@ -46,7 +46,7 @@ export const timeComparePivotOperator: PostProcessingFactory<PostProcessingPivot
options: { options: {
index, index,
columns: ensureIsArray(queryObject.columns).map(getColumnLabel), columns: ensureIsArray(queryObject.columns).map(getColumnLabel),
drop_missing_columns: false, drop_missing_columns: !!formData?.drop_missing_columns,
aggregates, aggregates,
}, },
}; };

View File

@ -55,5 +55,6 @@ export const echartsTimeSeriesQuery: ControlPanelSectionConfig = {
['order_desc'], ['order_desc'],
['row_limit'], ['row_limit'],
['truncate_metric'], ['truncate_metric'],
['drop_missing_columns'],
], ],
}; };

View File

@ -542,6 +542,13 @@ const truncate_metric: SharedControlConfig<'CheckboxControl'> = {
description: t('Whether to truncate metrics'), description: t('Whether to truncate metrics'),
}; };
const drop_missing_columns: SharedControlConfig<'CheckboxControl'> = {
type: 'CheckboxControl',
label: t('Drop Missing Columns'),
default: false,
description: t('Drop a column if all values are null'),
};
const x_axis: SharedControlConfig<'SelectControl', ColumnMeta> = { const x_axis: SharedControlConfig<'SelectControl', ColumnMeta> = {
...groupByControl, ...groupByControl,
...xAxisControlConfig, ...xAxisControlConfig,
@ -587,6 +594,7 @@ const sharedControls = {
legacy_order_by: enableExploreDnd ? dnd_sort_by : sort_by, legacy_order_by: enableExploreDnd ? dnd_sort_by : sort_by,
truncate_metric, truncate_metric,
x_axis: enableExploreDnd ? dnd_x_axis : x_axis, x_axis: enableExploreDnd ? dnd_x_axis : x_axis,
drop_missing_columns,
}; };
export { sharedControls, dndEntity, dndColumnsControl }; export { sharedControls, dndEntity, dndColumnsControl };