위젯 커스텀 제목 및 헤더 표시/숨김 기능 추가

- 위젯 설정에서 제목 변경 가능
- 위젯 헤더 표시/숨김 토글 추가
- DB 마이그레이션 자동 실행 (custom_title, show_header 컬럼)
- 편집 모드/보기 모드 모두 지원
- DashboardTopMenu 레이아웃 유지
This commit is contained in:
leeheejin
2025-10-16 14:59:07 +09:00
parent 26d27ac881
commit 6d51aced2c
9 changed files with 105 additions and 26 deletions

View File

@@ -0,0 +1,42 @@
import { PostgreSQLService } from './PostgreSQLService';
/**
* 데이터베이스 마이그레이션 실행
* dashboard_elements 테이블에 custom_title, show_header 컬럼 추가
*/
export async function runDashboardMigration() {
try {
console.log('🔄 대시보드 마이그레이션 시작...');
// custom_title 컬럼 추가
await PostgreSQLService.query(`
ALTER TABLE dashboard_elements
ADD COLUMN IF NOT EXISTS custom_title VARCHAR(255)
`);
console.log('✅ custom_title 컬럼 추가 완료');
// show_header 컬럼 추가
await PostgreSQLService.query(`
ALTER TABLE dashboard_elements
ADD COLUMN IF NOT EXISTS show_header BOOLEAN DEFAULT true
`);
console.log('✅ show_header 컬럼 추가 완료');
// 기존 데이터 업데이트
await PostgreSQLService.query(`
UPDATE dashboard_elements
SET show_header = true
WHERE show_header IS NULL
`);
console.log('✅ 기존 데이터 업데이트 완료');
console.log('✅ 대시보드 마이그레이션 완료!');
} catch (error) {
console.error('❌ 대시보드 마이그레이션 실패:', error);
// 이미 컬럼이 있는 경우는 무시
if (error instanceof Error && error.message.includes('already exists')) {
console.log(' 컬럼이 이미 존재합니다.');
}
}
}