Skip to content

Commit

Permalink
dev-9358 Advanced Editor Multidashboard changes not saving
Browse files Browse the repository at this point in the history
  • Loading branch information
Matt-DiPaolo committed Oct 18, 2024
1 parent b595ecf commit 5f0ebd6
Showing 1 changed file with 22 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import { Table } from '@cdc/core/types/Table'
import { DashboardContext, DashboardDispatchContext } from '../../DashboardContext'
import { mapDataToConfig } from '../../helpers/mapDataToConfig'
import './visualizations-panel-styles.css'
import { MultiDashboardConfig } from '../../types/MultiDashboard'

const addVisualization = (type, subType) => {
const modalWillOpen = type !== 'markup-include'
Expand All @@ -30,7 +31,14 @@ const addVisualization = (type, subType) => {
newVisualizationConfig.visualizationType = type
break
case 'table':
const tableConfig: Table = { label: 'Data Table', show: true, showDownloadUrl: false, showVertical: true, expanded: true, collapsible: true }
const tableConfig: Table = {
label: 'Data Table',
show: true,
showDownloadUrl: false,
showVertical: true,
expanded: true,
collapsible: true
}
newVisualizationConfig.table = tableConfig
newVisualizationConfig.columns = {}
newVisualizationConfig.dataFormat = {}
Expand Down Expand Up @@ -74,7 +82,19 @@ const VisualizationsPanel = () => {
const [advancedEditing, setAdvancedEditing] = useState(false)
const { config } = useContext(DashboardContext)
const dispatch = useContext(DashboardDispatchContext)
const loadConfig = newConfig => dispatch({ type: 'APPLY_CONFIG', payload: [mapDataToConfig(newConfig)] })
const loadConfig = incomingConfig => {
const newConfig = !config.multiDashboards
? incomingConfig
: ({
...config,
...incomingConfig,
...incomingConfig.multiDashboards[config.activeDashboard],
multiDashboards: incomingConfig.multiDashboards,
activeDashboard: config.activeDashboard
} as MultiDashboardConfig)

dispatch({ type: 'APPLY_CONFIG', payload: [mapDataToConfig(newConfig)] })
}
return (
<div className={`visualizations-panel${advancedEditing ? ' advanced-editor' : ''}`}>
<p style={{ fontSize: '14px' }}>Click and drag an item onto the grid to add it to your dashboard.</p>
Expand Down

0 comments on commit 5f0ebd6

Please sign in to comment.