import { state } from '../core/state'; import { renderHwDashboard } from './Dashboard/HwDashboard'; import { renderSwDashboard } from './Dashboard/SwDashboard'; import './Dashboard/dashboard.css'; /** * 대시보드 렌더링 통합 허브 (Vercel Style Normalized) */ export function renderDashboard(mainContent: HTMLElement) { if (!mainContent) return; // 기존 차트 리소스 해제 if (state.activeCharts) { state.activeCharts.forEach((c: any) => { if (c && typeof c.destroy === 'function') c.destroy(); }); } state.activeCharts = []; mainContent.innerHTML = `
`; const innerContent = document.getElementById('dashboard-inner-content')!; if (state.activeCategory === 'hw') { renderHwDashboard(innerContent); } else if (state.activeCategory === 'sw') { renderSwDashboard(innerContent); } else { innerContent.innerHTML = `
해당 카테고리의 대시보드는 준비 중입니다.
`; } }