fix: 영수증 화면 상품 사진 미표시 및 긴 상품명 넘침 수정#271
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
No description provided. |
|
Caution Review failedPull request was closed or merged during review No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
Walkthrough
ChangesReceiptPaper ProductCard UI 수정
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
* fix: 영수증 상품 사진 미표시 수정 (_next/image 허용 width 사용) * fix: 영수증 상품명 줄바꿈처리
* fix: 영수증 상품 사진 미표시 수정 (_next/image 허용 width 사용) * fix: 영수증 상품명 줄바꿈처리
* feat: 위시 단일 삭제 시 삭제 성공 토스트 추가 * refactor: layout 권한 확인 시 fetchQuery 활용하여 다중 호출되지 않도록 방지 * feat: getMe 404인 경우 login 페이지로 redirect * chore: 아카이브 페이지 props 네이밍 변경 * refactor: prefetch, getQueryState 대신 fetchQuery로 권한 검증 로직 단순화 * style: 토너먼트 담기 화면 레이아웃 및 UI 개선 (#259) * style: layout.tsx에서 불필요한 padding 제거 * style: 참여자 프로필 그룹 z-index 순서 수정 * style: 장바구니와 상태 라벨 사이 여백 조정 * style: 캐러셀 슬라이드 크기 비율 85%에서 90%로 변경 * feat: 토너먼트 헤더에서 뒤로가기 버튼 클릭 시 홈으로 이동하도록 수정 * feat: 장바구니 아이템 수 증가 시 알림 토스트 추가 * feat: 위시 상품 삭제 토스트 추가 및 복구 필드명 수정 (#263) * fix: 위시 복구 요청 폼 필드명 수정 (price → currentPrice) * feat: 위시 삭제 시 성공 토스트 메시지 추가 * fix: 애플 로그인 시 비회원으로 로그인되는 문제 수정 (#242) * fix: Apple OAuth POST 콜백을 올바른 핸들러로 rewrite하는 미들웨어 추가 * fix: Apple OAuth POST 콜백을 proxy.ts에서 올바른 핸들러로 rewrite * fix: 로그인 상태에서 /login 접근 시 /home으로 리다이렉트 * fix: Apple OAuth POST 콜백 rewrite를 307 redirect로 변경 * fix: Apple 콜백 route.ts 디버그 로그 추가 * fix: Apple 콜백 실패 시 에러 정보를 URL 파라미터로 전달 * fix: Apple 콜백 성공 시 307 대신 302로 리다이렉트하여 POST 루프 방지 * fix: Apple 콜백 쿠키 SameSite=Strict → Lax로 변경하여 cross-site 리다이렉트 후 인증 유지 * chore: Apple 콜백 디버그 코드 제거 * fix: 탈퇴 후 무한루프 유발하는 /login → /home 리다이렉트 제거 * fix: 애플 콜백 쿠키 SameSite 변환 코드 제거 (서버에서 Lax로 일괄 변경) * refactor: 애플 콜백 처리 BE 이관으로 FE route.ts 및 proxy Apple POST 감지 코드 제거 * fix: 애플 로그인 redirectUri를 BE 콜백 URL로 변경 * fix: Apple getAuthUrl 호출 시 redirectUri 파라미터 제거 (BE 브릿지 URL 사용) * fix: no-undefined lint 에러 수정 * fix: Apple redirectUri URL 조합 안전하게 수정 * fix: 토너먼트 준비 화면 실시간 아이템 상태 미반영 버그 수정 (#264) * feat: tournament-item-parsed SSE 이벤트 처리 추가 * feat: 토너먼트 아이템 삭제 시 참여자 화면 실시간 갱신 처리 추가 * chore: 토너먼트 조회 30초 폴링 제거 (SSE로 대체) * style: 홈 토너먼트 목록 및 프로필 이미지 개선 (#265) * feat: 홈에서 담는중, 플레이 상태인 토너먼트 카드만 보여주도록 수정 * refactor: UserProfileGroup에서 게스트 프로필 이미지 그대로 사용하도록 수정 * feat: Tournament Card 제목 클릭 시 토너먼트 준비/진행/결과 페이지로 이동 * fix: 화면 리사이즈 시 웹 스플래시 로고 한쪽으로 치우치는 오류 수정 * fix: QA 통합 — 토너먼트 시작 흐름 모달 / 영수증 캡처 / 초대 마감 보정 (#236) (#243) * fix: 영수증 캡처 시 S3 이미지 CORS 차단 회피 (cacheBust false + force-cache) * fix: 플레이 체험 게스트(CLONE)는 결과 페이지에서 전체 결과 보기 카드 숨김 * fix: 서버 ISO UTC 응답을 Z 떼지 않고 그대로 파싱 (만료됨 오표시 해결) * fix: 초대 마감 시각 picker 가 ISO 8601 UTC 형식으로 전송하도록 변경 * fix: 휠 picker remount 방지 (key 에서 inviteExpiresAt 제거) * chore: consolelog 삭제 * fix: 초대 마감 시 토너먼트 시작 버튼 비활성 처리 * fix: 영수증 캡처 시 상품 사진 누락 (next/image proxy URL 로 same-origin 우회) * feat: 토너먼트 시작 전 부전승 안내 모달 추가 (2의 거듭제곱 아닌 경우) * feat: 담기 시간 종료 시 주최자에게 자동 안내 모달 노출 * feat: 주최자 시작 SSE 신호 감지 → 참여자에게 자동 안내 모달 노출 * refactor: ConfirmStartDialog / ConfirmExitDialog 의 raw button → 공통 Button 컴포넌트 교체 * chore: format * fix: react-hooks/set-state-in-effect lint 에러 해결 (이전 값 state 패턴으로 변경) * style: not-found 페이지 Link 의 cursor-pointer 제거 및 canonical class 정리 * fix: 휠 picker 드래그 직후 click 이벤트가 잘못된 점프를 일으키던 문제 수정 * fix: 모달 시작 버튼 중복 mutation 호출 방지 (isPending 가드 + disabled) * style: 위시에서 가져오기 CTA 영역 그라데이션 디자인 반영 (#245) * style: 위시에서 가져오기 CTA 영역 그라데이션 디자인 반영 * style: 토너먼트 로딩 브라켓 아이콘 그림자 box-shadow로 변경 * style: 하단 바텀 내비 그라디언트 레이어 추가 (#247) * style: 하단 바텀 내비 그라디언트 레이어 추가 * fix: 바텀 내비 그라디언트 포털 SSR 오류 수정 및 lint 에러 해결 * style: 토너먼트 준비 페이지 상태 라벨 주최자·참여자 디자인 통일 (#251) * fix: 화면 확대 시 장바구니 크기 미복구 버그 수정 (#252) * fix: 장바구니 8개 가득 찬 상태에서 아이템 삭제 시 장바구니 사라짐 버그 수정 (#254) * fix: SSE 알림 구독 토큰 만료 시 재연결 처리 (#255) * fix: SSE 알림 구독 토큰 만료 시 재연결 처리 * fix: SSE refresh 하드코딩 URL 상수로 교체 및 웹뷰 토큰 저장 누락 수정 * feat: 위시·토너먼트 아이템 수정 기능 개선 (#256) * feat: 위시 Pending 상태일 때도 클릭 안 되도록 변경 * feat: item status Completed 인 경우에도 클릭 가능하도록 변경 * feat: item status Completed인 경우에 링크 갱신하는 drawer 추가 * feat: 위시, 토너먼트 아이템 Pending 상태일 때도 클릭 안 되도록 변경 * chore: 위시, 토너먼트 아이템 수정 문구 변경 * feat: 위시, 토너먼트 아이템 status = Ready인 경우 이미지 수정 불가능하도록 설정 * feat: 토너먼트 아이템 수정 기능 추가 * style: 토너먼트 아이템 수정 페이지 bg color 고정 * style: 토너먼트 아이템 수정 페이지 bg color 고정 * style: 위시 수정 페이지 스타일 변경 * feat: 링크로 토너먼트 등록 시 에러 토스트 추가 * feat: 토너먼트 아이템 수정 모든 필드 required로 변경 * feat: 위시 수정 모든 필드 required로 변경 * feat: 등록 성공한 위시 갱신 api 연결 * feat: 링크로 위시 등록 시 에러 토스트 추가 * chore: 불필요한 파일 제거 * fix: 토너먼트 아이템에 친구 프로필 얼굴 추가하도록 변경 * fix: 토너먼트 후보 Patch 누락된 에러 핸들링 추가 * refactor: 위시 수정 시 다른 액션 실행되지 않도록 설정 * style: 토너먼트 담기 화면 레이아웃 및 UI 개선 (#259) * style: layout.tsx에서 불필요한 padding 제거 * style: 참여자 프로필 그룹 z-index 순서 수정 * style: 장바구니와 상태 라벨 사이 여백 조정 * style: 캐러셀 슬라이드 크기 비율 85%에서 90%로 변경 * feat: 토너먼트 헤더에서 뒤로가기 버튼 클릭 시 홈으로 이동하도록 수정 * feat: 장바구니 아이템 수 증가 시 알림 토스트 추가 * feat: 위시 상품 삭제 토스트 추가 및 복구 필드명 수정 (#263) * fix: 위시 복구 요청 폼 필드명 수정 (price → currentPrice) * feat: 위시 삭제 시 성공 토스트 메시지 추가 * fix: 애플 로그인 시 비회원으로 로그인되는 문제 수정 (#242) * fix: Apple OAuth POST 콜백을 올바른 핸들러로 rewrite하는 미들웨어 추가 * fix: Apple OAuth POST 콜백을 proxy.ts에서 올바른 핸들러로 rewrite * fix: 로그인 상태에서 /login 접근 시 /home으로 리다이렉트 * fix: Apple OAuth POST 콜백 rewrite를 307 redirect로 변경 * fix: Apple 콜백 route.ts 디버그 로그 추가 * fix: Apple 콜백 실패 시 에러 정보를 URL 파라미터로 전달 * fix: Apple 콜백 성공 시 307 대신 302로 리다이렉트하여 POST 루프 방지 * fix: Apple 콜백 쿠키 SameSite=Strict → Lax로 변경하여 cross-site 리다이렉트 후 인증 유지 * chore: Apple 콜백 디버그 코드 제거 * fix: 탈퇴 후 무한루프 유발하는 /login → /home 리다이렉트 제거 * fix: 애플 콜백 쿠키 SameSite 변환 코드 제거 (서버에서 Lax로 일괄 변경) * refactor: 애플 콜백 처리 BE 이관으로 FE route.ts 및 proxy Apple POST 감지 코드 제거 * fix: 애플 로그인 redirectUri를 BE 콜백 URL로 변경 * fix: Apple getAuthUrl 호출 시 redirectUri 파라미터 제거 (BE 브릿지 URL 사용) * fix: no-undefined lint 에러 수정 * fix: Apple redirectUri URL 조합 안전하게 수정 * fix: 토너먼트 준비 화면 실시간 아이템 상태 미반영 버그 수정 (#264) * feat: tournament-item-parsed SSE 이벤트 처리 추가 * feat: 토너먼트 아이템 삭제 시 참여자 화면 실시간 갱신 처리 추가 * chore: 토너먼트 조회 30초 폴링 제거 (SSE로 대체) * chore: 게스트 프로필 dice bear 처리 삭제 --------- Co-authored-by: 조영찬 <tigerbone@naver.com> Co-authored-by: Soyeong Park <mb535622@gmail.com> Co-authored-by: kanghaeun <145974230+kanghaeun@users.noreply.github.com> * feat: Firebase Analytics 연동 (앱 사용자 행동 분석) (#258) * feat: Firebase Analytics (GA4) 연동 + 핵심 9개 이벤트 로깅 * feat: GA4 web stream 추가 (@next/third-parties) + 환경별 분기 로직 * fix: TOURNAMENT_COMPLETE 이벤트가 tournamentId 변경을 추적하도록 의존성 보강 * fix: firebase 패키지 버전 불일치로 인한 런타임 에러 가능성 제거 * feat: GA4 funnel 이벤트 보강 + iOS Analytics 빌드 fix (#268) * fix: app.json 에 @react-native-firebase/analytics 플러그인 + forceStaticLinking 추가 * feat: GA4 이벤트 시안 기준 보강 (wish_add_start, social_invite_click, guest_visit 추가 + 이벤트명 정리) * fix: 영수증 화면 상품 사진 미표시 및 긴 상품명 넘침 수정 (#271) * fix: 영수증 상품 사진 미표시 수정 (_next/image 허용 width 사용) * fix: 영수증 상품명 줄바꿈처리 * feat: 담기 마감 동작 개선 (협업 의도 판정 + 이어서 담기) (#272) * feat: 담기 마감 모달에 '이어서 담기' 버튼 추가 * feat: 초대 보냈거나 친구 합류한 토너먼트만 담기 타이머 노출 * fix: refresh_token 동시 호출로 인한 자동 로그아웃 수정 (rotation 대응 dedupe) (#273) * fix: SSE 의 refresh 가 별도 경로로 호출되어 race 발생하던 문제 수정 (#274) * refactor: 홈 페이지 단위 await 제거 후 tournamentList 범위에만 await 설정 * refactor: WishCard 이미지 로딩 시 Skeleton 사용 * fix: BaseImage loading -> success로 전환되는 시점에 아무것도 뜨지 않는 현상 해결 * refactor: Archive 페이지 초기 페이지 진입 속도 개선 * refactor: UserProfile image 로딩 시 skeleton 적용 * chore: fix import error * chore: 불필요한 eas 파일 삭제 * perf: wishcard 이미지 preload 최적화 및 LCP 지표 개선 * refactor: queryClient 캐싱 추가 * refactor: Button Spinner dynamic import 로 변경 * refactor: query client 캐시 스코프 변경 * chore: 아카이브/위시 - main 태그 하나만 사용하도록 변경 * fix: 아카이브, 마이페이지 처리되지 않은 에러는 throw되도록 처리 * chore: 위시 삭제 토스트 중복 제거 * refactor: 위시 수정 - layout으로 페이지 진입 권한 확인 분리 * fix: 토너먼트 Pick 뱃지 이미지보다 뒤에 뜨는 현상 제거 * fix: 토너먼트 준비 페이지 헤더 center text 잘림 현상 해결 * fix: 등록 실패한 위시도 삭제 가능하도록 버튼 추가 * fix: 앱 KeyboardAvoidingView 제거 * fix: 프로필 이미지 zindex 수정 * chore: 아카이브 페이지 main 태그 한개로 유지 * chore: 불필요한 403 에러 처리 삭제 * style: TournamentCard 텍스트 줄바꿈되는 경우 대응 * refactor: 위시 저장/삭제/수정 동시에 일어날 수 없도록 disabled 처리 --------- Co-authored-by: kanghaeun <145974230+kanghaeun@users.noreply.github.com> Co-authored-by: Soyeong Park <mb535622@gmail.com> Co-authored-by: 조영찬 <tigerbone@naver.com>
* fix: 영수증 상품 사진 미표시 수정 (_next/image 허용 width 사용) * fix: 영수증 상품명 줄바꿈처리
* feat: 위시 단일 삭제 시 삭제 성공 토스트 추가 * refactor: layout 권한 확인 시 fetchQuery 활용하여 다중 호출되지 않도록 방지 * feat: getMe 404인 경우 login 페이지로 redirect * chore: 아카이브 페이지 props 네이밍 변경 * refactor: prefetch, getQueryState 대신 fetchQuery로 권한 검증 로직 단순화 * style: 토너먼트 담기 화면 레이아웃 및 UI 개선 (#259) * style: layout.tsx에서 불필요한 padding 제거 * style: 참여자 프로필 그룹 z-index 순서 수정 * style: 장바구니와 상태 라벨 사이 여백 조정 * style: 캐러셀 슬라이드 크기 비율 85%에서 90%로 변경 * feat: 토너먼트 헤더에서 뒤로가기 버튼 클릭 시 홈으로 이동하도록 수정 * feat: 장바구니 아이템 수 증가 시 알림 토스트 추가 * feat: 위시 상품 삭제 토스트 추가 및 복구 필드명 수정 (#263) * fix: 위시 복구 요청 폼 필드명 수정 (price → currentPrice) * feat: 위시 삭제 시 성공 토스트 메시지 추가 * fix: 애플 로그인 시 비회원으로 로그인되는 문제 수정 (#242) * fix: Apple OAuth POST 콜백을 올바른 핸들러로 rewrite하는 미들웨어 추가 * fix: Apple OAuth POST 콜백을 proxy.ts에서 올바른 핸들러로 rewrite * fix: 로그인 상태에서 /login 접근 시 /home으로 리다이렉트 * fix: Apple OAuth POST 콜백 rewrite를 307 redirect로 변경 * fix: Apple 콜백 route.ts 디버그 로그 추가 * fix: Apple 콜백 실패 시 에러 정보를 URL 파라미터로 전달 * fix: Apple 콜백 성공 시 307 대신 302로 리다이렉트하여 POST 루프 방지 * fix: Apple 콜백 쿠키 SameSite=Strict → Lax로 변경하여 cross-site 리다이렉트 후 인증 유지 * chore: Apple 콜백 디버그 코드 제거 * fix: 탈퇴 후 무한루프 유발하는 /login → /home 리다이렉트 제거 * fix: 애플 콜백 쿠키 SameSite 변환 코드 제거 (서버에서 Lax로 일괄 변경) * refactor: 애플 콜백 처리 BE 이관으로 FE route.ts 및 proxy Apple POST 감지 코드 제거 * fix: 애플 로그인 redirectUri를 BE 콜백 URL로 변경 * fix: Apple getAuthUrl 호출 시 redirectUri 파라미터 제거 (BE 브릿지 URL 사용) * fix: no-undefined lint 에러 수정 * fix: Apple redirectUri URL 조합 안전하게 수정 * fix: 토너먼트 준비 화면 실시간 아이템 상태 미반영 버그 수정 (#264) * feat: tournament-item-parsed SSE 이벤트 처리 추가 * feat: 토너먼트 아이템 삭제 시 참여자 화면 실시간 갱신 처리 추가 * chore: 토너먼트 조회 30초 폴링 제거 (SSE로 대체) * style: 홈 토너먼트 목록 및 프로필 이미지 개선 (#265) * feat: 홈에서 담는중, 플레이 상태인 토너먼트 카드만 보여주도록 수정 * refactor: UserProfileGroup에서 게스트 프로필 이미지 그대로 사용하도록 수정 * feat: Tournament Card 제목 클릭 시 토너먼트 준비/진행/결과 페이지로 이동 * fix: 화면 리사이즈 시 웹 스플래시 로고 한쪽으로 치우치는 오류 수정 * fix: QA 통합 — 토너먼트 시작 흐름 모달 / 영수증 캡처 / 초대 마감 보정 (#236) (#243) * fix: 영수증 캡처 시 S3 이미지 CORS 차단 회피 (cacheBust false + force-cache) * fix: 플레이 체험 게스트(CLONE)는 결과 페이지에서 전체 결과 보기 카드 숨김 * fix: 서버 ISO UTC 응답을 Z 떼지 않고 그대로 파싱 (만료됨 오표시 해결) * fix: 초대 마감 시각 picker 가 ISO 8601 UTC 형식으로 전송하도록 변경 * fix: 휠 picker remount 방지 (key 에서 inviteExpiresAt 제거) * chore: consolelog 삭제 * fix: 초대 마감 시 토너먼트 시작 버튼 비활성 처리 * fix: 영수증 캡처 시 상품 사진 누락 (next/image proxy URL 로 same-origin 우회) * feat: 토너먼트 시작 전 부전승 안내 모달 추가 (2의 거듭제곱 아닌 경우) * feat: 담기 시간 종료 시 주최자에게 자동 안내 모달 노출 * feat: 주최자 시작 SSE 신호 감지 → 참여자에게 자동 안내 모달 노출 * refactor: ConfirmStartDialog / ConfirmExitDialog 의 raw button → 공통 Button 컴포넌트 교체 * chore: format * fix: react-hooks/set-state-in-effect lint 에러 해결 (이전 값 state 패턴으로 변경) * style: not-found 페이지 Link 의 cursor-pointer 제거 및 canonical class 정리 * fix: 휠 picker 드래그 직후 click 이벤트가 잘못된 점프를 일으키던 문제 수정 * fix: 모달 시작 버튼 중복 mutation 호출 방지 (isPending 가드 + disabled) * style: 위시에서 가져오기 CTA 영역 그라데이션 디자인 반영 (#245) * style: 위시에서 가져오기 CTA 영역 그라데이션 디자인 반영 * style: 토너먼트 로딩 브라켓 아이콘 그림자 box-shadow로 변경 * style: 하단 바텀 내비 그라디언트 레이어 추가 (#247) * style: 하단 바텀 내비 그라디언트 레이어 추가 * fix: 바텀 내비 그라디언트 포털 SSR 오류 수정 및 lint 에러 해결 * style: 토너먼트 준비 페이지 상태 라벨 주최자·참여자 디자인 통일 (#251) * fix: 화면 확대 시 장바구니 크기 미복구 버그 수정 (#252) * fix: 장바구니 8개 가득 찬 상태에서 아이템 삭제 시 장바구니 사라짐 버그 수정 (#254) * fix: SSE 알림 구독 토큰 만료 시 재연결 처리 (#255) * fix: SSE 알림 구독 토큰 만료 시 재연결 처리 * fix: SSE refresh 하드코딩 URL 상수로 교체 및 웹뷰 토큰 저장 누락 수정 * feat: 위시·토너먼트 아이템 수정 기능 개선 (#256) * feat: 위시 Pending 상태일 때도 클릭 안 되도록 변경 * feat: item status Completed 인 경우에도 클릭 가능하도록 변경 * feat: item status Completed인 경우에 링크 갱신하는 drawer 추가 * feat: 위시, 토너먼트 아이템 Pending 상태일 때도 클릭 안 되도록 변경 * chore: 위시, 토너먼트 아이템 수정 문구 변경 * feat: 위시, 토너먼트 아이템 status = Ready인 경우 이미지 수정 불가능하도록 설정 * feat: 토너먼트 아이템 수정 기능 추가 * style: 토너먼트 아이템 수정 페이지 bg color 고정 * style: 토너먼트 아이템 수정 페이지 bg color 고정 * style: 위시 수정 페이지 스타일 변경 * feat: 링크로 토너먼트 등록 시 에러 토스트 추가 * feat: 토너먼트 아이템 수정 모든 필드 required로 변경 * feat: 위시 수정 모든 필드 required로 변경 * feat: 등록 성공한 위시 갱신 api 연결 * feat: 링크로 위시 등록 시 에러 토스트 추가 * chore: 불필요한 파일 제거 * fix: 토너먼트 아이템에 친구 프로필 얼굴 추가하도록 변경 * fix: 토너먼트 후보 Patch 누락된 에러 핸들링 추가 * refactor: 위시 수정 시 다른 액션 실행되지 않도록 설정 * style: 토너먼트 담기 화면 레이아웃 및 UI 개선 (#259) * style: layout.tsx에서 불필요한 padding 제거 * style: 참여자 프로필 그룹 z-index 순서 수정 * style: 장바구니와 상태 라벨 사이 여백 조정 * style: 캐러셀 슬라이드 크기 비율 85%에서 90%로 변경 * feat: 토너먼트 헤더에서 뒤로가기 버튼 클릭 시 홈으로 이동하도록 수정 * feat: 장바구니 아이템 수 증가 시 알림 토스트 추가 * feat: 위시 상품 삭제 토스트 추가 및 복구 필드명 수정 (#263) * fix: 위시 복구 요청 폼 필드명 수정 (price → currentPrice) * feat: 위시 삭제 시 성공 토스트 메시지 추가 * fix: 애플 로그인 시 비회원으로 로그인되는 문제 수정 (#242) * fix: Apple OAuth POST 콜백을 올바른 핸들러로 rewrite하는 미들웨어 추가 * fix: Apple OAuth POST 콜백을 proxy.ts에서 올바른 핸들러로 rewrite * fix: 로그인 상태에서 /login 접근 시 /home으로 리다이렉트 * fix: Apple OAuth POST 콜백 rewrite를 307 redirect로 변경 * fix: Apple 콜백 route.ts 디버그 로그 추가 * fix: Apple 콜백 실패 시 에러 정보를 URL 파라미터로 전달 * fix: Apple 콜백 성공 시 307 대신 302로 리다이렉트하여 POST 루프 방지 * fix: Apple 콜백 쿠키 SameSite=Strict → Lax로 변경하여 cross-site 리다이렉트 후 인증 유지 * chore: Apple 콜백 디버그 코드 제거 * fix: 탈퇴 후 무한루프 유발하는 /login → /home 리다이렉트 제거 * fix: 애플 콜백 쿠키 SameSite 변환 코드 제거 (서버에서 Lax로 일괄 변경) * refactor: 애플 콜백 처리 BE 이관으로 FE route.ts 및 proxy Apple POST 감지 코드 제거 * fix: 애플 로그인 redirectUri를 BE 콜백 URL로 변경 * fix: Apple getAuthUrl 호출 시 redirectUri 파라미터 제거 (BE 브릿지 URL 사용) * fix: no-undefined lint 에러 수정 * fix: Apple redirectUri URL 조합 안전하게 수정 * fix: 토너먼트 준비 화면 실시간 아이템 상태 미반영 버그 수정 (#264) * feat: tournament-item-parsed SSE 이벤트 처리 추가 * feat: 토너먼트 아이템 삭제 시 참여자 화면 실시간 갱신 처리 추가 * chore: 토너먼트 조회 30초 폴링 제거 (SSE로 대체) * chore: 게스트 프로필 dice bear 처리 삭제 --------- Co-authored-by: 조영찬 <tigerbone@naver.com> Co-authored-by: Soyeong Park <mb535622@gmail.com> Co-authored-by: kanghaeun <145974230+kanghaeun@users.noreply.github.com> * feat: Firebase Analytics 연동 (앱 사용자 행동 분석) (#258) * feat: Firebase Analytics (GA4) 연동 + 핵심 9개 이벤트 로깅 * feat: GA4 web stream 추가 (@next/third-parties) + 환경별 분기 로직 * fix: TOURNAMENT_COMPLETE 이벤트가 tournamentId 변경을 추적하도록 의존성 보강 * fix: firebase 패키지 버전 불일치로 인한 런타임 에러 가능성 제거 * feat: GA4 funnel 이벤트 보강 + iOS Analytics 빌드 fix (#268) * fix: app.json 에 @react-native-firebase/analytics 플러그인 + forceStaticLinking 추가 * feat: GA4 이벤트 시안 기준 보강 (wish_add_start, social_invite_click, guest_visit 추가 + 이벤트명 정리) * fix: 영수증 화면 상품 사진 미표시 및 긴 상품명 넘침 수정 (#271) * fix: 영수증 상품 사진 미표시 수정 (_next/image 허용 width 사용) * fix: 영수증 상품명 줄바꿈처리 * feat: 담기 마감 동작 개선 (협업 의도 판정 + 이어서 담기) (#272) * feat: 담기 마감 모달에 '이어서 담기' 버튼 추가 * feat: 초대 보냈거나 친구 합류한 토너먼트만 담기 타이머 노출 * fix: refresh_token 동시 호출로 인한 자동 로그아웃 수정 (rotation 대응 dedupe) (#273) * fix: SSE 의 refresh 가 별도 경로로 호출되어 race 발생하던 문제 수정 (#274) * refactor: 홈 페이지 단위 await 제거 후 tournamentList 범위에만 await 설정 * refactor: WishCard 이미지 로딩 시 Skeleton 사용 * fix: BaseImage loading -> success로 전환되는 시점에 아무것도 뜨지 않는 현상 해결 * refactor: Archive 페이지 초기 페이지 진입 속도 개선 * refactor: UserProfile image 로딩 시 skeleton 적용 * chore: fix import error * chore: 불필요한 eas 파일 삭제 * perf: wishcard 이미지 preload 최적화 및 LCP 지표 개선 * refactor: queryClient 캐싱 추가 * refactor: Button Spinner dynamic import 로 변경 * refactor: query client 캐시 스코프 변경 * chore: 아카이브/위시 - main 태그 하나만 사용하도록 변경 * fix: 아카이브, 마이페이지 처리되지 않은 에러는 throw되도록 처리 * chore: 위시 삭제 토스트 중복 제거 * refactor: 위시 수정 - layout으로 페이지 진입 권한 확인 분리 * fix: 토너먼트 Pick 뱃지 이미지보다 뒤에 뜨는 현상 제거 * fix: 토너먼트 준비 페이지 헤더 center text 잘림 현상 해결 * fix: 등록 실패한 위시도 삭제 가능하도록 버튼 추가 * fix: 앱 KeyboardAvoidingView 제거 * fix: 프로필 이미지 zindex 수정 * chore: 아카이브 페이지 main 태그 한개로 유지 * chore: 불필요한 403 에러 처리 삭제 * style: TournamentCard 텍스트 줄바꿈되는 경우 대응 * refactor: 위시 저장/삭제/수정 동시에 일어날 수 없도록 disabled 처리 --------- Co-authored-by: kanghaeun <145974230+kanghaeun@users.noreply.github.com> Co-authored-by: Soyeong Park <mb535622@gmail.com> Co-authored-by: 조영찬 <tigerbone@naver.com>
작업 내용
토너먼트 결과 화면의 영수증 컴포넌트에서 발견된 두 가지 표시 오류를 수정했습니다.
1. 상품 사진이 표시되지 않던 문제 (
ReceiptPaper.tsx)/_next/imageproxy 로 통과시키고 있었는데, 호출 시w=120값이 Next.js 의 허용 width 화이트리스트(imageSizes: 16/32/48/64/96/128/256/384)에 포함되지 않아 400 Bad Request 를 받아 broken image 가 떴습니다.w=128로 변경.crossOrigin="anonymous"도 제거(붙어 있으면 응답에 CORS 헤더 없는 경우 거부됨).2. 긴 상품명이 컨테이너 밖으로 넘치던 문제
break-keep은 한국어 단어 보존 측면에서 적합하지만, 공백 없는 긴 영문/숫자 토큰(예:(FANATICS)_2026FIFA_WORLDCUP_KR)이 들어오면 줄바꿈이 안 돼 카드 밖으로 넘쳤습니다.wrap-break-word(overflow-wrap: break-word) 추가 — 자연스러운 단어 단위 줄바꿈을 우선 시도하고 불가피하면 글자 단위로 강제 줄바꿈.검증
/_next/image?w=128→ 200 OK + jpeg 응답 확인pnpm check-types·pnpm lint통과연관 이슈
closes #269
Summary by CodeRabbit
릴리스 노트
스타일
버그 수정