From 4192203071e1f7fd674388a71d31f0c70034ed34 Mon Sep 17 00:00:00 2001 From: Shekar Siri Date: Thu, 31 Oct 2024 16:51:23 +0100 Subject: [PATCH] fix(ui): sessions by cards issue with filter type and other props --- .../CustomMetricsWidgets/SessionsBy.tsx | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/frontend/app/components/Dashboard/Widgets/CustomMetricsWidgets/SessionsBy.tsx b/frontend/app/components/Dashboard/Widgets/CustomMetricsWidgets/SessionsBy.tsx index 702b67520..6173fd007 100644 --- a/frontend/app/components/Dashboard/Widgets/CustomMetricsWidgets/SessionsBy.tsx +++ b/frontend/app/components/Dashboard/Widgets/CustomMetricsWidgets/SessionsBy.tsx @@ -23,21 +23,20 @@ function SessionsBy(props: Props) { const modalMetric = React.useMemo(() => Object.assign(new Widget(), metric), [metric]); const onClickHandler = (event: any, data: any) => { - const filters = Array(); - let filter = { ...filtersMap[metric.metricOf] }; - filter.value = [data.name]; - filter.type = filter.key; - delete filter.key; - delete filter.operatorOptions; - delete filter.category; - delete filter.icon; - delete filter.label; - delete filter.options; + const baseFilter = { + ...filtersMap[metric.metricOf], + value: [data.name], + type: filtersMap[metric.metricOf].key, + filters: filtersMap[metric.metricOf].filters.map((f: any) => { + const { key, operatorOptions, category, icon, label, options, ...cleaned } = f; + return { ...cleaned, type: f.key, value: [] }; + }) + }; + + const { key, operatorOptions, category, icon, label, options, ...finalFilter } = baseFilter; setSelected(data.name); - - filters.push(filter); - onClick(filters); + onClick([finalFilter]); }; const showMore = (e: any) => {