From 22cf893951f56ba0c55e1d0d65e51230a3d69a8a Mon Sep 17 00:00:00 2001 From: mpallansch Date: Tue, 9 Jul 2024 10:39:56 -0400 Subject: [PATCH 1/2] Applies Filters on MultiDash Switch --- packages/dashboard/src/CdcDashboardComponent.tsx | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/dashboard/src/CdcDashboardComponent.tsx b/packages/dashboard/src/CdcDashboardComponent.tsx index 6b4050450..6bce1e93f 100644 --- a/packages/dashboard/src/CdcDashboardComponent.tsx +++ b/packages/dashboard/src/CdcDashboardComponent.tsx @@ -265,6 +265,10 @@ export default function CdcDashboard({ initialState, isEditor = false, isDebug = loadAPIFilters(config.dashboard.sharedFilters) }, [isEditor, isPreview]) + useEffect(() => { + updateDataFilters() + }, [state.config?.activeDashboard]) + const updateChildConfig = (visualizationKey, newConfig) => { const config = _.cloneDeep(state.config) const updatedConfig = _.pick(config, ['visualizations', 'multiDashboards']) @@ -340,6 +344,13 @@ export default function CdcDashboard({ initialState, isEditor = false, isDebug = dispatch({ type: 'SET_FILTERED_DATA', payload: newFilteredData }) } + const updateDataFilters = (sharedFilters = undefined) => { + const clonedState = _.cloneDeep(state) + if (sharedFilters) clonedState.config.dashboard.sharedFilters = sharedFilters + const newFilteredData = getFilteredData(clonedState) + dispatch({ type: 'SET_FILTERED_DATA', payload: newFilteredData }) + } + const handleOnChange = (index: number, value: string | string[]) => { const config = _.cloneDeep(state.config) let newSharedFilters = changeFilterActive(index, value, config) From e49cd53f5c0da4289df6c0d36a28647fd9f711a4 Mon Sep 17 00:00:00 2001 From: mpallansch Date: Mon, 15 Jul 2024 12:03:47 -0400 Subject: [PATCH 2/2] Combines UseEffects --- packages/dashboard/src/CdcDashboardComponent.tsx | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/packages/dashboard/src/CdcDashboardComponent.tsx b/packages/dashboard/src/CdcDashboardComponent.tsx index 6bce1e93f..5c7cf8af5 100644 --- a/packages/dashboard/src/CdcDashboardComponent.tsx +++ b/packages/dashboard/src/CdcDashboardComponent.tsx @@ -263,11 +263,8 @@ export default function CdcDashboard({ initialState, isEditor = false, isDebug = reloadURLData() } loadAPIFilters(config.dashboard.sharedFilters) - }, [isEditor, isPreview]) - - useEffect(() => { updateDataFilters() - }, [state.config?.activeDashboard]) + }, [isEditor, isPreview, state.config?.activeDashboard]) const updateChildConfig = (visualizationKey, newConfig) => { const config = _.cloneDeep(state.config)