optrader 4a84235ff2 [250904] feat: DetailPanel UserReviews 페이지네이션 구현
🕐 커밋 시간: 2025. 09. 04. 12:56:09

💬 사용자 메시지:
  UserReviews와 CustomerImages에 페이지네이션 기능 추가
- CustomerImages: 5개씩 표시하는 View More 버튼 기능
- UserReviews: 모든 리뷰 데이터 표시로 변경
- Chromium 68 호환성 개선 (Optional Chaining 제거)
- API 엔드포인트 및 Redux 액션/리듀서 추가
- 1124px 레이아웃 통일 및 View More 버튼 스타일링

📊 변경 통계:
  • 총 파일: 57개
  • 추가: +1252줄
  • 삭제: -540줄

📁 추가된 파일:
  + com.twin.app.shoptime/assets/images/icons/ic-gr-call-1.png
  + com.twin.app.shoptime/assets/images/image-review-sample-1.png
  + com.twin.app.shoptime/src/views/DetailPanel/DetailPanel.backup.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/DetailPanel.backup.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductAllSection/ProductAllSection.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductAllSection/ProductAllSection.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/ProductDescription/ProductDescription.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/ProductDescription/ProductDescription.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/ProductDescription/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/ProductDetail/ProductDetail.new.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/ProductDetail/ProductDetail.new.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/CustomerImages/CustomerImages.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/CustomerImages/CustomerImages.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/UserReviews.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/UserReviews.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/UserReviewsPopup/UserReviewsPopup.figma.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/UserReviewsPopup/UserReviewsPopup.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/UserReviewsPopup/UserReviewsPopup.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/UserReviews/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/YouMayAlsoLike/YouMayAlsoLike.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/YouMayAlsoLike/YouMayAlsoLike.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductContentSection/YouMayAlsoLike/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductInfoSection/QRCode/QRCode.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductInfoSection/QRCode/QRCode.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductInfoSection/QRCode/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductOverview.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductOverview.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/BuyNowPriceDisplay/BuyNowPriceDisplay.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/BuyNowPriceDisplay/BuyNowPriceDisplay.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/BuyNowPriceDisplay/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/ProductPriceDisplay.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/ProductPriceDisplay.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/ShopByMobilePriceDisplay/ShopByMobilePriceDisplay.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/ShopByMobilePriceDisplay/ShopByMobilePriceDisplay.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/ShopByMobilePriceDisplay/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/ProductPriceDisplay/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ProductOverview/package.json
  + com.twin.app.shoptime/src/views/DetailPanel/ThemeItemListOverlay/ThemeItemListOverlay.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/ThemeItemListOverlay/ThemeItemListOverlay.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/components/CustomScrollbar/CustomScrollbar.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/components/CustomScrollbar/CustomScrollbar.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/components/DetailMobileSendPopUp.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/components/DetailMobileSendPopUp.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/components/THeaderCustom.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/components/THeaderCustom.module.less
  + com.twin.app.shoptime/src/views/DetailPanel/components/TScroller/TScrollerDetail.jsx
  + com.twin.app.shoptime/src/views/DetailPanel/components/TScroller/TScrollerDetail.module.less
  + package-lock.json

📝 수정된 파일:
  ~ com.twin.app.shoptime/src/actions/actionTypes.js
  ~ com.twin.app.shoptime/src/actions/productActions.js
  ~ com.twin.app.shoptime/src/api/apiConfig.js
  ~ com.twin.app.shoptime/src/reducers/productReducer.js
  ~ com.twin.app.shoptime/src/utils/fp.js
  ~ com.twin.app.shoptime/src/utils/lodash.js
  ~ com.twin.app.shoptime/src/utils/lodashFpEx.js
  ~ com.twin.app.shoptime/src/views/DetailPanel/DetailPanel.jsx
  ~ com.twin.app.shoptime/src/views/DetailPanel/DetailPanel.module.less

🔧 주요 변경 내용:
  • 타입 시스템 안정성 강화
  • 핵심 비즈니스 로직 개선
  • API 서비스 레이어 개선
  • 공통 유틸리티 함수 최적화
  • 프로젝트 의존성 관리 개선
  • UI 컴포넌트 아키텍처 개선
  • 대규모 기능 개발
  • 모듈 구조 개선

BREAKING CHANGE: API 또는 설정 변경으로 인한 호환성 영향 가능
2025-09-04 12:56:26 +09:00
2025-05-15 16:34:00 +09:00
2024-10-14 17:31:11 +09:00
2025-06-30 00:51:34 +00:00
2025-06-30 00:51:34 +00:00

ShopTime

LG ShopTime Project

브랜치 관리 전략

프로젝트는 다음과 같은 브랜치 구조로 관리됩니다:

주요 브랜치

  • main

    • 최종 릴리즈 및 검증이 완료된 소스 코드 보관
    • 매주 목요일: QA 브랜치에서 검증 완료된 코드를 main으로 병합
  • qa

    • 2차 테스트 및 최종 릴리즈 검증용 브랜치
    • 매주 화요일: 배포 진행
    • 매주 수요일: 검증 진행
  • qa2

    • 1차 테스트용(qa2 배포) 소스 코드 보관
    • LG 깃 레포지토리의 QA2 브랜치와 동기화 필수
  • develop

    • 고도화 작업 및 유지보수팀 코드 통합 브랜치
    • 기능 개발 완료 후 코드 리뷰를 거쳐 해당 브랜치로 병합

작업용 브랜치

  • hotfix

    • 유지보수팀 전용 브랜치
    • 수정 완료 후 develop 브랜치로 병합
  • feat/name_v2

    • 고도화 작업팀 전용 브랜치
    • 기능별로 별도 브랜치 생성 필요
    • 예: feat/home_v2, feat/search_v2
    • 작업 완료 후 develop 브랜치로 병합

배포 프로세스

  1. 화요일

    • QA 브랜치 배포
    • QA2 → QA 브랜치 병합
  2. 수요일

    • QA 브랜치 검증 진행
  3. 목요일

    • QA → Main 브랜치 병합
    • Main 브랜치 릴리즈

커밋 메시지 컨벤션

고도화 작업

  • [branch name]Type : 작업내용
  • git commit -m "[home]feat : 선택약관 동의시 배너 나타남"

유지보수 작업

  • [jira task Number]Type : 작업내용
  • git commit -m "[SHOPTIME-4020]fix : pdf open test"

Type

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 포맷팅
  • refactor: 코드 리팩토링
  • test: 테스트 코드
  • chore: 빌드 업무 수정

긴급 배포 프로세스

  1. 긴급 수정 사항 발생 시

    • hotfix 브랜치에서 작업
    • 담당 PM 및 리드 개발자 승인 필수
  2. 긴급 배포 승인 시

    • hotfixqa2 병합
    • QA2 검증 진행
    • 검증 완료 후 qamain 순차적 배포
  3. 배포 후 조치

    • 긴급 배포 내역 문서화
    • 재발 방지 대책 수립
    • develop 브랜치에도 수정사항 반영
Description
No description provided
Readme 177 MiB
Languages
JavaScript 83.3%
Less 16.7%