feat: 품목 관리 및 마스터 데이터 관리 시스템 구현

주요 기능:
- 품목 CRUD 기능 (생성, 조회, 수정)
- 품목 마스터 데이터 관리 시스템
- BOM(Bill of Materials) 관리 기능
- 도면 캔버스 기능
- 품목 속성 및 카테고리 관리
- 스크린 인쇄 생산 관리 페이지

기술 개선:
- localStorage SSR 호환성 수정 (9개 useState 초기화)
- Shadcn UI 컴포넌트 추가 (table, tabs, alert, drawer 등)
- DataContext 및 DeveloperModeContext 추가
- API 라우트 구현 (items, master-data)
- 타입 정의 및 유틸리티 함수 추가

빌드 테스트:  성공 (3.1초)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
byeongcheolryu
2025-11-18 14:17:52 +09:00
parent 21edc932d9
commit 63f5df7d7d
56 changed files with 23927 additions and 149 deletions

View File

@@ -235,6 +235,19 @@
/*position: fixed;*/
}
/* 🔧 Fix DropdownMenu/Popover/Select positioning to prevent "flying in from far away" */
[data-radix-popper-content-wrapper] {
will-change: auto !important;
transition: none !important; /* 전역 transition 제거 - 날아오는 효과 방지 */
}
/* 🔧 Radix UI 컴포넌트의 slide 애니메이션만 제거, 위치 계산은 유지 */
[data-radix-dropdown-menu-content],
[data-radix-select-content],
[data-radix-popover-content] {
animation-name: none !important;
}
/* Clean glass utilities */
.clean-glass {
backdrop-filter: var(--clean-blur);
@@ -308,39 +321,47 @@
}
.sidebar-scroll::-webkit-scrollbar-thumb {
background: transparent;
background: rgba(0, 0, 0, 0.1);
border-radius: 3px;
transition: background 0.2s ease;
}
.dark .sidebar-scroll::-webkit-scrollbar-thumb {
background: rgba(255, 255, 255, 0.1);
}
.sidebar-scroll:hover::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.15);
background: rgba(0, 0, 0, 0.2);
}
.dark .sidebar-scroll:hover::-webkit-scrollbar-thumb {
background: rgba(255, 255, 255, 0.15);
background: rgba(255, 255, 255, 0.2);
}
.sidebar-scroll::-webkit-scrollbar-thumb:hover {
background: rgba(0, 0, 0, 0.25) !important;
background: rgba(0, 0, 0, 0.3) !important;
}
.dark .sidebar-scroll::-webkit-scrollbar-thumb:hover {
background: rgba(255, 255, 255, 0.25) !important;
background: rgba(255, 255, 255, 0.3) !important;
}
/* Firefox */
.sidebar-scroll {
scrollbar-width: thin;
scrollbar-color: transparent transparent;
scrollbar-color: rgba(0, 0, 0, 0.1) transparent;
}
.dark .sidebar-scroll {
scrollbar-color: rgba(255, 255, 255, 0.1) transparent;
}
.sidebar-scroll:hover {
scrollbar-color: rgba(0, 0, 0, 0.15) transparent;
scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
}
.dark .sidebar-scroll:hover {
scrollbar-color: rgba(255, 255, 255, 0.15) transparent;
scrollbar-color: rgba(255, 255, 255, 0.2) transparent;
}
}