feat: 대시보드 레이아웃에 사이드바 메뉴 및 역할 전환 기능 추가

- DashboardLayout에 좌측 사이드바 메뉴 추가 (아이콘 포함)
- 상단 헤더에 역할별 대시보드 전환 드롭다운 추가
- menuStore의 persist 설정에서 menuItems 제외 (icon 함수 직렬화 문제 해결)
- vite.config.ts HMR 설정을 환경별로 조건부 처리 (로컬/도커 환경 분리)
- Lucide React 아이콘 렌더링 패턴 개선 (변수 할당 후 렌더링)

변경 사항:
- vite.config.ts: VITE_DOCKER_ENV 환경변수 기반 HMR 설정
- DashboardLayout.tsx: 사이드바, 메뉴, 역할 드롭다운 UI 구현
- menuStore.ts: partialize 옵션으로 menuItems localStorage 저장 제외
This commit is contained in:
2025-10-17 16:04:34 +09:00
parent ce3ebf8c5d
commit 33d02b897b
3 changed files with 155 additions and 47 deletions

View File

@@ -26,12 +26,14 @@ export default defineConfig({
host: '0.0.0.0', // Docker 컨테이너 내 모든 네트워크 인터페이스에서 접근 허용
port: 5173,
strictPort: true,
// Nginx 리버스 프록시를 통한 도메인 접근 허
hmr: {
clientPort: 80, // HTTP 사용 (nginx가 port 80에서 리스닝)
protocol: 'ws', // HTTP 환경에서는 WebSocket (ws) 사용
host: 'dev.sam.kr', // HMR 연결 시 사용할 호스트
},
// 환경별 HMR 설정: Docker 환경에서만 커스텀 설정 사
hmr: process.env.VITE_DOCKER_ENV === 'true'
? {
clientPort: 80, // HTTP 사용 (nginx가 port 80에서 리스닝)
protocol: 'ws', // HTTP 환경에서는 WebSocket (ws) 사용
host: 'dev.sam.kr', // HMR 연결 시 사용할 호스트
}
: true, // 로컬 환경에서는 기본 HMR 설정 사용
// 파일 감시 설정 (Docker 환경에서 필수)
watch: {
usePolling: true,