🕐 커밋 시간: 2025. 11. 06. 20:46:35
📊 변경 통계:
• 총 파일: 7개
• 추가: +398줄
• 삭제: -1줄
📁 추가된 파일:
+ com.twin.app.shoptime/src/utils/advancedAsyncPanelExamples.js
+ com.twin.app.shoptime/src/utils/asyncActionUtils.js
+ com.twin.app.shoptime/src/utils/asyncPanelQueueExamples.js
+ com.twin.app.shoptime/src/utils/compatibleAsyncPanelExamples.js
📝 수정된 파일:
~ com.twin.app.shoptime/src/actions/actionTypes.js
~ com.twin.app.shoptime/src/actions/queuedPanelActions.js
~ com.twin.app.shoptime/src/reducers/panelReducer.js
🔧 주요 변경 내용:
• 타입 시스템 안정성 강화
• 핵심 비즈니스 로직 개선
• 공통 유틸리티 함수 최적화
• 대규모 기능 개발
• 모듈 구조 개선
🕐 커밋 시간: 2025. 11. 06. 18:37:14
📊 변경 통계:
• 총 파일: 4개
• 추가: +97줄
• 삭제: -5줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/actions/checkoutActions.js
~ com.twin.app.shoptime/src/reducers/checkoutReducer.js
~ com.twin.app.shoptime/src/views/CheckOutPanel/CheckOutPanel.jsx
~ com.twin.app.shoptime/src/views/DetailPanel/components/BuyOption.jsx
🔧 주요 변경 내용:
• 핵심 비즈니스 로직 개선
• UI 컴포넌트 아키텍처 개선
• 소규모 기능 개선
🕐 커밋 시간: 2025. 11. 06. 18:02:13
📊 변경 통계:
• 총 파일: 6개
• 추가: +163줄
• 삭제: -6줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/actions/productActions.js
~ com.twin.app.shoptime/src/actions/toastActions.js
~ com.twin.app.shoptime/src/components/TToast/TToastEnhanced.jsx
~ com.twin.app.shoptime/src/views/DetailPanel/ProductAllSection/ProductAllSection.jsx
~ com.twin.app.shoptime/src/views/DetailPanel/components/BuyOption.jsx
~ com.twin.app.shoptime/src/views/MainView/MainView.jsx
🔧 주요 변경 내용:
• 핵심 비즈니스 로직 개선
• UI 컴포넌트 아키텍처 개선
• 중간 규모 기능 개선
• 모듈 구조 개선
🕐 커밋 시간: 2025. 11. 06. 09:25:09
📊 변경 통계:
• 총 파일: 7개
• 추가: +174줄
• 삭제: -1줄
📁 추가된 파일:
+ com.twin.app.shoptime/src/actions/queuedPanelActions.js
+ com.twin.app.shoptime/src/middleware/panelQueueMiddleware.js
+ com.twin.app.shoptime/src/utils/panelQueueExamples.js
+ com.twin.app.shoptime/src/utils/panelQueueSetupGuide.js
📝 수정된 파일:
~ com.twin.app.shoptime/src/actions/actionTypes.js
~ com.twin.app.shoptime/src/reducers/panelReducer.js
~ com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/VoiceInputOverlay.jsx
🔧 주요 변경 내용:
• 타입 시스템 안정성 강화
• 핵심 비즈니스 로직 개선
• 공통 유틸리티 함수 최적화
• 중간 규모 기능 개선
• 모듈 구조 개선
🕐 커밋 시간: 2025. 11. 06. 09:08:46
📊 변경 통계:
• 총 파일: 6개
• 추가: +2줄
📁 추가된 파일:
+ com.twin.app.shoptime/src/components/GlobalPopup/GlobalPopup.jsx
+ com.twin.app.shoptime/src/components/GlobalPopup/index.js
+ com.twin.app.shoptime/src/constants/popupConfig.js
+ com.twin.app.shoptime/src/constants/popupTypes.js
+ com.twin.app.shoptime/src/hooks/usePopupManager.js
📝 수정된 파일:
~ com.twin.app.shoptime/src/App/App.js
🔧 주요 변경 내용:
• 핵심 비즈니스 로직 개선
• UI 컴포넌트 아키텍처 개선
• 설정 관리 시스템 개선
• 타입 시스템 안정성 강화
• 모듈 구조 개선
🕐 커밋 시간: 2025. 11. 05. 11:00:46
📊 변경 통계:
• 총 파일: 2개
• 추가: +29줄
• 삭제: -5줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/views/SearchPanel/SearchPanel.new.v2.jsx
~ com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/VoiceInputOverlay.v2.jsx
🔧 주요 변경 내용:
• 소규모 기능 개선
🕐 커밋 시간: 2025. 11. 05. 09:01:18
📊 변경 통계:
• 총 파일: 1개
• 추가: +1줄
• 삭제: -1줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/views/CheckOutPanel/CheckOutPanel.jsx
🔧 주요 변경 내용:
• 코드 정리 및 최적화
- CheckOutPanel Back/Cancel 버튼에서 DetailPanel에 shouldReload 신호 전달
- DetailPanel에 panelShouldReload 플래그 추가
- panelShouldReload useEffect로 데이터 초기화 및 재로딩 구현
- DetailPanel 스택 유지로 자연스러운 네비게이션 제공
Generated with coding tools
Co-Authored-By: Dev Team <noreply@dev.team>
- BuyOption 체크아웃 진입 시 동영상 및 플레이어 패널 정리 로직 추가
- 선택된 옵션 기본값 설정 로직 개선
- SearchResults 썸네일 최적화 옵션 필드 추가
Generated with coding tools
Co-Authored-By: Dev Team <noreply@dev.team>
🕐 커밋 시간: 2025. 11. 05. 07:35:13
📊 변경 통계:
• 총 파일: 4개
• 추가: +94줄
• 삭제: -70줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/utils/BuyNowDataManipulator.js
~ com.twin.app.shoptime/src/views/DetailPanel/DetailPanel.jsx
~ com.twin.app.shoptime/src/views/DetailPanel/components/BuyOption.jsx
~ com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/VoiceInputOverlay.jsx
🔧 주요 변경 내용:
• 공통 유틸리티 함수 최적화
• UI 컴포넌트 아키텍처 개선
• 소규모 기능 개선
• 코드 정리 및 최적화
🕐 커밋 시간: 2025. 11. 05. 05:30:32
📊 변경 통계:
• 총 파일: 4개
• 추가: +38줄
• 삭제: -11줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/hooks/useReviews/useReviews.js
~ com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/UserReviewsPopup/UserReviewsPopup.jsx
~ com.twin.app.shoptime/src/views/UserReview/ShowUserReviews.jsx
~ com.twin.app.shoptime/src/views/UserReview/UserReviewPanel.jsx
🔧 주요 변경 내용:
• 핵심 비즈니스 로직 개선
• 소규모 기능 개선
🕐 커밋 시간: 2025. 11. 05. 05:06:01
📊 변경 통계:
• 총 파일: 5개
• 추가: +252줄
• 삭제: -89줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/actions/productActions.js
~ com.twin.app.shoptime/src/hooks/useVideoTransition/useVideoMove.bak.js
~ com.twin.app.shoptime/src/hooks/useVideoTransition/useVideoMove.js
~ com.twin.app.shoptime/src/hooks/useVideoTransition/useVideoMove.original.js
~ com.twin.app.shoptime/src/views/HomePanel/HomeBanner/HomeBanner.jsx
🔧 주요 변경 내용:
• 핵심 비즈니스 로직 개선
• 대규모 기능 개발
🕐 커밋 시간: 2025. 11. 04. 19:26:21
📊 변경 통계:
• 총 파일: 1개
• 추가: +3줄
• 삭제: -1줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/reducers/searchReducer.js
🔧 주요 변경 내용:
• 핵심 비즈니스 로직 개선
🕐 커밋 시간: 2025. 11. 04. 19:16:49
📊 변경 통계:
• 총 파일: 1개
• 추가: +30줄
• 삭제: -21줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/views/SearchPanel/SearchResults.new.v2.jsx
🔧 주요 변경 내용:
• 소규모 기능 개선
• 코드 정리 및 최적화
🕐 커밋 시간: 2025. 11. 04. 19:09:24
📊 변경 통계:
• 총 파일: 6개
• 추가: +89줄
• 삭제: -29줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/actions/actionTypes.js
~ com.twin.app.shoptime/src/actions/searchActions.js
~ com.twin.app.shoptime/src/reducers/searchReducer.js
~ com.twin.app.shoptime/src/views/SearchPanel/SearchPanel.new.v2.jsx
~ com.twin.app.shoptime/src/views/SearchPanel/SearchResults.new.v2.jsx
~ com.twin.app.shoptime/src/views/SearchPanel/VoiceInputOverlay/VoiceInputOverlay.jsx
🔧 주요 변경 내용:
• 타입 시스템 안정성 강화
• 핵심 비즈니스 로직 개선
• 소규모 기능 개선
• 모듈 구조 개선
🕐 커밋 시간: 2025. 11. 04. 16:43:02
📊 변경 통계:
• 총 파일: 1개
• 추가: +5줄
• 삭제: -15줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/views/DetailPanel/ProductAllSection/ProductAllSection.jsx
🔧 주요 변경 내용:
• 코드 정리 및 최적화
Performance: 코드 최적화로 성능 개선 기대
handleClearReviewFilter에서 curry를 제거하고 단계별 상태 업데이트로 변경하여
코드 안정성과 가독성을 향상시켰습니다.
**변경:**
- curry 함수 제거 (복잡도 감소)
- 단계별 state 업데이트로 변경 (명확성 증대)
- 각 초기화 단계마다 주석 추가 (유지보수성 향상)
**초기화 대상:**
1. loadedListPrdtId = null (캐시 ID 초기화)
2. reviewListData = null (전체 리뷰 데이터 초기화)
3. currentReviewFilter = null (활성 필터 초기화)
4. filteredReviewListData = null (필터 결과 초기화)
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
UserReviewPanel에서 Back/ESC할 때 리뷰 데이터도 함께 초기화하여
처음 UserReviewList를 받는 상태로 초기화합니다.
**문제:**
- UserReviewPanel에서 필터 적용 후 Back
- 필터는 초기화되지만 reviewListData 캐시가 남아있음
- loadedListPrdtId도 유지되어 재로드 트리거 안 됨
- 불완전한 캐시 상태 → 간헐적 오류 발생
**해결:**
CLEAR_REVIEW_FILTER 액션에서 다음을 모두 초기화:
1. currentReviewFilter = null (활성 필터)
2. filteredReviewListData = null (필터 결과 리뷰)
3. reviewListData = null (전체 리뷰 데이터)
4. loadedListPrdtId = null (로드 캐시 ID)
**결과:**
- Back 후 DetailPanel로 돌아가면 처음 상태로 초기화
- useReviews에서 loadedListPrdtId !== prdtId 조건 만족
- 새로운 리뷰 데이터를 다시 로드하게 됨
- 간헐적 오류 제거
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
필터링된 리뷰 데이터가 상품 변경 후에도 유지되는 문제를 해결했습니다.
**문제:**
1. 상품 A에서 필터(5 star) 적용 후 Back
2. 상품 B로 이동 시 상품 A의 필터링된 리뷰 데이터가 계속 표시됨
3. 리뷰가 없는 상품은 [Show User Reviews] 버튼이 안 보임
4. 리뷰가 있는 상품도 필터 미적용 전까지 이전 리뷰가 노출됨
**근본 원인:**
- Redux의 filteredReviewListData와 currentReviewFilter가 상품 변경 후에도 유지됨
- useReviews 훅이 새로운 상품 로드는 하지만 필터는 초기화하지 않음
**해결책:**
1. useReviews 훅: prdtId 변경 시 자동으로 clearReviewFilter() dispatch
2. ProductAllSection: productData.prdtId 변경 시 필터 초기화
3. UserReviewPanel: Back 버튼 클릭 시 Redux 필터 명시적 초기화
**수정 파일:**
- src/hooks/useReviews/useReviews.js (필터 초기화 로직 추가)
- src/views/DetailPanel/ProductAllSection/ProductAllSection.jsx (상품 변경 감지)
- src/views/UserReview/UserReviewPanel.jsx (Back 버튼에서 필터 초기화)
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
🕐 커밋 시간: 2025. 11. 04. 14:57:50
📊 변경 통계:
• 총 파일: 1개
• 추가: +48줄
• 삭제: -10줄
📝 수정된 파일:
~ com.twin.app.shoptime/src/views/SearchPanel/SearchResults.new.v2.jsx
🔧 주요 변경 내용:
• 소규모 기능 개선
데이터 일관성 문제 해결:
- API가 불완전한 응답을 주는 경우, 리뷰 관련 UI(버튼, 미리보기, ShowUserReviews)를 모두 숨김
- 미리보기만 표시되고 버튼이 없는 상황 방지로 프론트엔드 버그 오인 방지
- isReviewDataComplete 검증 로직 추가: hasReviews && previewReviews && stats.totalReviews 모두 확인
- ProductAllSection.jsx
데이터 일관성 문제 해결:
- API가 불완전한 응답을 주는 경우, 리뷰 관련 UI(버튼, 미리보기, ShowUserReviews)를 모두 숨김
- 미리보기만 표시되고 버튼이 없는 상황 방지로 프론트엔드 버그 오인 방지
- isReviewDataComplete 검증 로직 추가: hasReviews && previewReviews && stats.totalReviews 모두 확인
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>