- AnimatedNumber 공통 컴포넌트 추출 (32줄)
- BotCard 컴포넌트 분리 + XIcon, MeilisearchIcon 포함 (233줄)
- CategoryFormModal 컴포넌트 분리 (195줄)
- ScheduleBots.jsx: 570줄 → 339줄 (231줄 감소)
- ScheduleCategory.jsx: 441줄 → 289줄 (152줄 감소)
- 문서 업데이트: 개선 결과 테이블 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- PC Lightbox X 버튼에 e.stopPropagation() 추가 (이중 닫힘 방지)
- MobileLightbox AnimatePresence 구조 수정 (exit 애니메이션 활성화)
- 모바일 앨범 상세/갤러리 페이지에 헤더 표시 (hideHeader → pageTitle)
- 문서에 MobileLightbox 컴포넌트 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- MobileLightbox 컴포넌트 생성 (Swiper 기반 터치 스와이프)
- 사진 정보 바텀시트 내장
- 다운로드, 카운터, 비디오 지원
- Mobile AlbumDetail에서 MobileLightbox 사용 (-185줄)
- Mobile AlbumGallery에서 MobileLightbox 사용 (-188줄)
- 코드 중복 제거로 총 414줄 감소
라이트박스 컴포넌트 구조:
- Lightbox: PC용 (키보드/클릭 네비게이션)
- MobileLightbox: Mobile용 (Swiper 터치 스와이프)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- 공통 Lightbox 컴포넌트에 비디오 지원 추가 (teasers prop)
- 사진 메타데이터 표시 지원 (photos prop으로 컨셉/멤버 정보)
- showCounter, showDownload props 추가
- PC AlbumDetail의 인라인 라이트박스 코드 제거 (-285줄)
- 코드 중복 제거 및 유지보수성 향상
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- utils/youtube.js: YouTube URL 파싱 유틸리티 생성
- getYoutubeVideoId, getYoutubeThumbnail, getYoutubeEmbedUrl
- utils/format.js: parseCredits, calculateTotalDuration 함수 추가
- hooks/useLightbox.js: 라이트박스 상태 관리 훅 생성
- components/common/ErrorMessage.jsx: 에러 메시지 컴포넌트 생성
- components/common/Loading.jsx: size prop 추가 (sm, md, lg)
- TrackDetail (PC/Mobile): 중복 함수 제거, 유틸리티 사용
- AlbumDetail (PC/Mobile): getTotalDuration -> calculateTotalDuration 유틸리티 사용
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Phase 6-9에서 추가된 파일 제거
- react-device-detect 미사용 문제로 인한 구조 재설계
- 올바른 폴더 구조로 재시작 예정:
- pages/{feature}/pc/, pages/{feature}/mobile/ 구조
- react-device-detect BrowserView/MobileView 사용
- components/pc/, components/mobile/ 레이아웃 분리
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- frontend-temp/ 폴더 생성 (Strangler Fig Pattern)
- package.json: clsx 추가, 버전 2.0.0
- vite.config.js: @ path alias 추가
- 기본 폴더 구조 생성 (api, components, hooks, pages, stores, utils, constants)
- docker-compose.yml: fromis9-frontend-dev 서비스 추가
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>