chore: clean up build artifacts, temporary excel locks, duplicate plans, and commit current project state
Some checks failed
ITAM Code Check / build-and-config-check (push) Successful in 18s
ITAM Docker Build Check / docker-build-check (push) Failing after 21s

This commit is contained in:
이태훈
2026-06-22 11:26:26 +09:00
parent 7b631ab858
commit 621b05a890
135 changed files with 22565 additions and 42690 deletions

View File

@@ -1,37 +1,37 @@
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 = `
<div class="view-content-wrapper">
<div id="dashboard-scroll-container" class="table-container" style="padding: 0;">
<div id="dashboard-inner-content"></div>
</div>
</div>
`;
const innerContent = document.getElementById('dashboard-inner-content')!;
if (state.activeCategory === 'hw') {
renderHwDashboard(innerContent);
} else if (state.activeCategory === 'sw') {
renderSwDashboard(innerContent);
} else {
innerContent.innerHTML = `<div class="dashboard-section-title" style="padding:2rem;">해당 카테고리의 대시보드는 준비 중입니다.</div>`;
}
}
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 = `
<div class="view-content-wrapper">
<div id="dashboard-scroll-container" class="table-container" style="padding: 0;">
<div id="dashboard-inner-content"></div>
</div>
</div>
`;
const innerContent = document.getElementById('dashboard-inner-content')!;
if (state.activeCategory === 'hw') {
renderHwDashboard(innerContent);
} else if (state.activeCategory === 'sw') {
renderSwDashboard(innerContent);
} else {
innerContent.innerHTML = `<div class="dashboard-section-title" style="padding:2rem;">해당 카테고리의 대시보드는 준비 중입니다.</div>`;
}
}