From b89ee0cb388b06044903a114ee04f79160098840 Mon Sep 17 00:00:00 2001 From: Kamil Gabryjelski Date: Wed, 23 Jun 2021 12:09:58 +0200 Subject: [PATCH] fix(native-filters): Assume that temporal columns exist if column_types is undefined (#15324) * fix(native-filters): Assume that temporal columns exist if column_types is undefined * Allow column_types to be an empty array --- .../FiltersConfigForm/FiltersConfigForm.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx b/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx index 65a4ec4af8..fb80888650 100644 --- a/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx +++ b/superset-frontend/src/dashboard/components/nativeFilters/FiltersConfigModal/FiltersConfigForm/FiltersConfigForm.tsx @@ -27,6 +27,7 @@ import { SupersetApiError, t, GenericDataType, + ensureIsArray, } from '@superset-ui/core'; import { ColumnMeta, @@ -275,9 +276,15 @@ const FILTER_TYPE_NAME_MAPPING = { }; // TODO: add column_types field to DatasourceMeta +// We return true if column_types is undefined or empty as a precaution against backend failing to return column_types const hasTemporalColumns = ( dataset: DatasourceMeta & { column_types: GenericDataType[] }, -) => dataset?.column_types?.includes(GenericDataType.TEMPORAL); +) => { + const columnTypes = ensureIsArray(dataset?.column_types); + return ( + columnTypes.length === 0 || columnTypes.includes(GenericDataType.TEMPORAL) + ); +}; /** * The configuration form for a specific filter.