From 19151d1e4a6d735f4229a28eae2c6b00e1409227 Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Tue, 22 Oct 2024 23:07:40 +0300 Subject: [PATCH 01/10] fix: fixed Add Metrics to Tree Chart (#29158) --- .../plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx index 34d65a27d315..26fafbdc1b7f 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx +++ b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx @@ -89,9 +89,7 @@ const controlPanel: ControlPanelConfig = { { name: 'metric', config: { - ...optionalEntity, - type: 'DndMetricSelect', - label: t('Metric'), + ...sharedControls.metric, description: t('Metric for node values'), }, }, From 35aaeb66bf9d01a4e3f1cb7c9c92989b1503b25e Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Tue, 22 Oct 2024 23:45:27 +0300 Subject: [PATCH 02/10] fix: clear modal after CSS templates is added --- .../src/features/cssTemplates/CssTemplateModal.tsx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx b/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx index 16af9e7039d3..74f0491543ea 100644 --- a/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx +++ b/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx @@ -131,7 +131,10 @@ const CssTemplateModal: FunctionComponent = ({ if (onCssTemplateAdd) { onCssTemplateAdd(); } - + setCurrentCssTemplate({ + template_name: '', + css: '', + }); hide(); }); } From db3afda17db52cf217af4f20b09a4d1e09848117 Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Wed, 23 Oct 2024 22:15:52 +0300 Subject: [PATCH 03/10] Revert "fix: clear modal after CSS templates is added" This reverts commit 35aaeb66bf9d01a4e3f1cb7c9c92989b1503b25e. --- .../src/features/cssTemplates/CssTemplateModal.tsx | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx b/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx index 74f0491543ea..16af9e7039d3 100644 --- a/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx +++ b/superset-frontend/src/features/cssTemplates/CssTemplateModal.tsx @@ -131,10 +131,7 @@ const CssTemplateModal: FunctionComponent = ({ if (onCssTemplateAdd) { onCssTemplateAdd(); } - setCurrentCssTemplate({ - template_name: '', - css: '', - }); + hide(); }); } From 9eea2e6fd6ac5cf4f41ae91b2941a9bfea82718b Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Mon, 25 Nov 2024 21:45:32 +0300 Subject: [PATCH 04/10] fix: tree metrics exclude validator --- .../plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx index 26fafbdc1b7f..4d8b0fa978ee 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx +++ b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx @@ -90,6 +90,8 @@ const controlPanel: ControlPanelConfig = { name: 'metric', config: { ...sharedControls.metric, + clearable: true, + validators: [], description: t('Metric for node values'), }, }, From 601dde2bb5fbde32df0a7311559b2ccf7e4773e0 Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Tue, 25 Mar 2025 15:06:36 +0300 Subject: [PATCH 05/10] fix: revert #30679 --- .../plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx index 4d8b0fa978ee..34d65a27d315 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx +++ b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx @@ -89,9 +89,9 @@ const controlPanel: ControlPanelConfig = { { name: 'metric', config: { - ...sharedControls.metric, - clearable: true, - validators: [], + ...optionalEntity, + type: 'DndMetricSelect', + label: t('Metric'), description: t('Metric for node values'), }, }, From 1bf4fdda7732c9c57c2bddcf001078e3cf9fe68a Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Sun, 20 Jul 2025 22:04:40 +0300 Subject: [PATCH 06/10] fix --- .../plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx index 34d65a27d315..4d8b0fa978ee 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx +++ b/superset-frontend/plugins/plugin-chart-echarts/src/Tree/controlPanel.tsx @@ -89,9 +89,9 @@ const controlPanel: ControlPanelConfig = { { name: 'metric', config: { - ...optionalEntity, - type: 'DndMetricSelect', - label: t('Metric'), + ...sharedControls.metric, + clearable: true, + validators: [], description: t('Metric for node values'), }, }, From f905fd5749b58cf8e5cfa71c67fb79184c81930d Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Thu, 4 Sep 2025 00:22:14 +0300 Subject: [PATCH 07/10] fix: bag display legend mixedTimeseries chart --- .../src/MixedTimeseries/transformProps.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts b/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts index 1ecf56f039ae..fee3f7dbf624 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts @@ -422,7 +422,7 @@ export default function transformProps( const transformedSeries = transformSeries( { ...entry, - id: `${displayName || ''}`, + name: `${displayName || ''}`, }, colorScale, colorScaleKey, @@ -488,7 +488,7 @@ export default function transformProps( const transformedSeries = transformSeries( { ...entry, - id: `${displayName || ''}`, + name: `${displayName || ''}`, }, colorScale, @@ -721,7 +721,7 @@ export default function transformProps( extractForecastSeriesContext((entry.name || '') as string).type === ForecastSeriesEnum.Observation, ) - .map(entry => entry.id || entry.name || '') + .map(entry => entry.name || '') .concat(extractAnnotationLabels(annotationLayers)), }, series: dedupSeries(reorderForecastSeries(series) as SeriesOption[]), From 2e33dda415c106a0aadd88f78ddcf66054900ddd Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Thu, 4 Sep 2025 00:53:15 +0300 Subject: [PATCH 08/10] fix: add name query identifiers to tooltip --- .../plugin-chart-echarts/src/MixedTimeseries/transformProps.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts b/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts index fee3f7dbf624..7f2d38f39cf4 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts @@ -422,6 +422,7 @@ export default function transformProps( const transformedSeries = transformSeries( { ...entry, + id: `${displayName || ''}`, name: `${displayName || ''}`, }, colorScale, @@ -488,6 +489,7 @@ export default function transformProps( const transformedSeries = transformSeries( { ...entry, + id: `${displayName || ''}`, name: `${displayName || ''}`, }, From 72b4e8f81d9964bc2877effcaf2063fb937ba519 Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Thu, 4 Sep 2025 00:57:29 +0300 Subject: [PATCH 09/10] fix: remarks in PR --- .../plugin-chart-echarts/src/MixedTimeseries/transformProps.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts b/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts index 7f2d38f39cf4..def74128c2b3 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/src/MixedTimeseries/transformProps.ts @@ -723,7 +723,7 @@ export default function transformProps( extractForecastSeriesContext((entry.name || '') as string).type === ForecastSeriesEnum.Observation, ) - .map(entry => entry.name || '') + .map(entry => entry.id || entry.name || '') .concat(extractAnnotationLabels(annotationLayers)), }, series: dedupSeries(reorderForecastSeries(series) as SeriesOption[]), From 65589d88e0fdc0ecf71a1309a3eb06a13c07e774 Mon Sep 17 00:00:00 2001 From: SBIN2010 Date: Thu, 4 Sep 2025 22:56:43 +0300 Subject: [PATCH 10/10] fix: modified tests showQueryIdentifiers to check series name and legend --- .../MixedTimeseries/transformProps.test.ts | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/superset-frontend/plugins/plugin-chart-echarts/test/MixedTimeseries/transformProps.test.ts b/superset-frontend/plugins/plugin-chart-echarts/test/MixedTimeseries/transformProps.test.ts index 436062b7ef90..24693494e471 100644 --- a/superset-frontend/plugins/plugin-chart-echarts/test/MixedTimeseries/transformProps.test.ts +++ b/superset-frontend/plugins/plugin-chart-echarts/test/MixedTimeseries/transformProps.test.ts @@ -137,6 +137,24 @@ it('should transform chart props for viz with showQueryIdentifiers=false', () => expect(seriesIds).not.toContain('sum__num (Query A), boy'); expect(seriesIds).not.toContain('sum__num (Query B), girl'); expect(seriesIds).not.toContain('sum__num (Query B), boy'); + + // Check that series name include query identifiers + const seriesName = (transformed.echartOptions.series as any[]).map( + (s: any) => s.name, + ); + expect(seriesName).toContain('sum__num, girl'); + expect(seriesName).toContain('sum__num, boy'); + expect(seriesName).not.toContain('sum__num (Query A), girl'); + expect(seriesName).not.toContain('sum__num (Query A), boy'); + expect(seriesName).not.toContain('sum__num (Query B), girl'); + expect(seriesName).not.toContain('sum__num (Query B), boy'); + + expect((transformed.echartOptions.legend as any).data).toEqual([ + 'sum__num, girl', + 'sum__num, boy', + 'sum__num, girl', + 'sum__num, boy', + ]); }); it('should transform chart props for viz with showQueryIdentifiers=true', () => { @@ -160,4 +178,22 @@ it('should transform chart props for viz with showQueryIdentifiers=true', () => expect(seriesIds).toContain('sum__num (Query B), boy'); expect(seriesIds).not.toContain('sum__num, girl'); expect(seriesIds).not.toContain('sum__num, boy'); + + // Check that series name include query identifiers + const seriesName = (transformed.echartOptions.series as any[]).map( + (s: any) => s.name, + ); + expect(seriesName).toContain('sum__num (Query A), girl'); + expect(seriesName).toContain('sum__num (Query A), boy'); + expect(seriesName).toContain('sum__num (Query B), girl'); + expect(seriesName).toContain('sum__num (Query B), boy'); + expect(seriesName).not.toContain('sum__num, girl'); + expect(seriesName).not.toContain('sum__num, boy'); + + expect((transformed.echartOptions.legend as any).data).toEqual([ + 'sum__num (Query A), girl', + 'sum__num (Query A), boy', + 'sum__num (Query B), girl', + 'sum__num (Query B), boy', + ]); });