[Release] v1.0.0 - K-Statra 프론트엔드 1차 배포#22
Conversation
[CHORE] 초기 환경 세팅
…dmin, analytics, consultants)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[Feat] XRP 결제 생성 3-step 플로우 구현 및 API 연동
[Feat] MyBusiness 페이지 구현 (개인정보 조회 및 파트너 목록 관리)
[Feat] 1:1 밋업 준비 중 페이지 구현 및 헤더 네비게이션 연결
- escrowPayments: getList, approveEvent 추가 및 approve action 파라미터 지원 - endpoints에 approveEvent 경로 추가 - useBuyer, useCompany, useEscrowPaymentList/useEscrowPayment 등 단건/목록 조회 hooks 추가
- 에스크로 결제 단건 상세, 항목별 승인 UI, 결제 개시 동작 - 양측 지갑 주소는 에스크로 결제 응답 필드와 내 프로필에서 직접 추출
- PaymentsPage 위치를 src/pages/payment/ 하위로 정리 - 인라인 히어로 마크업을 공용 PageHero 컴포넌트로 교체 - 헤더 XRP Payment 네비게이션을 /payments/create → /payments로 변경
payments_hero_title 한글 locale이 영문과 동일하게 노출되던 문제 수정
buyerId/sellerWalletAddress 두 필드로 나뉘어 있던 구조를 백엔드 API 스펙(CreateEscrowPaymentDto)에 맞춰 counterpartyWalletAddress 하나로 통합. 세션 기반 인증으로 buyerId는 서버에서 식별.
- 에스크로 결제 개시 확인 모달 추가 (EscrowPaymentModal) - buyer가 APPROVED 상태에서 결제를 개시할 수 있는 버튼/모달 흐름 구현 - 이전 에스크로가 모두 RELEASED여야 다음 항목 이벤트 승인 가능하도록 잠금 처리 - 승인/이벤트승인/결제개시 hook에 toast 알림 및 잔액 부족 메세지 처리 추가 - 하드코딩된 영문 문자열을 i18n으로 분리 (모달/디테일 키 추가) - 식별 기준을 companyId → role 기반 isBuyer로 단순화
- 결제 항목 진행 상태를 시각화하는 EscrowProgressBar 컴포넌트 추가 - PaymentsPage에서 PROCESSING/ACTIVE 상태는 progress bar로 렌더링, COMPLETED/CANCELLED는 별도 라벨로 표시 - 보낸/받은 탭은 응답에 sender 식별 필드가 없어 프론트 단독 분류가 불가능하므로, 백엔드 group 파라미터 스펙(ongoing/done)에 맞춰 탭의 의미를 진행 상태 그룹으로 재정의 - escrowPaymentsApi.getList 파라미터를 group/status enum으로 타이트닝 - 관련 i18n 키 추가 및 col_amount 줄바꿈 표시 적용
결제 개시 전용이던 모달을 ConfirmModal로 리네임/일반화. 제목·부제· 버튼 라벨을 props로 받아 다양한 확정 흐름에서 재사용할 수 있도록 변경. 파일 위치도 components/payment에서 components 루트로 이동. 취소 버튼 라벨도 짧게 정리.
구매자/판매자 확정 버튼 클릭 시 바로 approveEvent를 호출하지 않고 ConfirmModal로 한 번 더 확인받도록 EventRow에 모달 흐름 추가. event_confirm_modal_* i18n 키 추가.
framer-motion으로 tagline·hero 라인·description·CTA를 순차 fade+slide-up 하고, 강조 박스는 clipPath 좌→우 wipe로 박스와 텍스트가 함께 reveal되도록 처리.
각 단계 원이 scale 0.5→1 + 배경색 전환으로 등장, 점선은 clipPath 좌→우 wipe로 채워지면서 단계 간 stagger로 순차 reveal.
framer-motion animate()를 이용한 useCountUp 훅 추가. 0에서 totalAmountXrp 까지 ease-out으로 카운트업. paymentId가 바뀌면(다른 row 선택) 새 값에 맞춰 다시 한 번 재생.
- PaymentRow를 motion.tr로 변환, index 기반 0.04s stagger로 순차 마운트 - 우측 PaymentDetail 패널을 AnimatePresence mode="wait"로 감싸고 selectedId 변경 시 opacity + x 슬라이드로 cross-fade 전환
[Feat] XRP 결제 목록 및 상세 패널 페이지 구현
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 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 |
🔍 PR 요약
🧾 관련 이슈
🛠️ 주요 변경 사항
🚀 사용자 기능
인증 / 랜딩 (#9)
파트너 매칭 (#11)
/partners/search연동 (벡터 → 텍스트 폴백 → 웹검색)My Business (#15)
PageHero컴포넌트 도입 및 매칭/결제 페이지 적용에스크로 결제 생성 플로우 (#14)
EscrowInfoCard/WalletConfirmModal/StepProgressBarPOST /escrow-payments)에스크로 결제 상세 / 목록 (#20)
PaymentDetail: 결제 개시 모달, 항목별 이벤트 확정 모달, 잠금 처리, 토스트 알림PaymentsPage: 결제 목록 + 진행률 바(EscrowProgressBar), 진행중/종료(group=ongoing/done) 탭counterpartyWalletAddress단일화,groupenum)ConfirmModal범용화 → 결제 개시 + 이벤트 확정 양쪽에서 재사용1:1 밋업 (#18)
🎨 디자인 / 인터랙션
디자인 토큰 (#5)
마이크로 애니메이션 (#11, #14, #20)
EscrowProgressBar단계별 fill,PaymentDetail총 금액 count-up🏗️ 아키텍처 / 인프라
프로젝트 셋업 (#1)
frontend/→ 루트 이동, 백엔드 폴더 제거스택 전환 (#3)
@theme설정) / Zustand / TanStack Query / React Hook Form 도입pages/,components/,hooks/,apis/,stores/)router.jsx)authStore도입 및 localStorage 직접 접근 제거API 레이어 (#7)
http인스턴스 + 응답 인터셉터auth,payments,escrowPayments,partners,buyers,companies,matches,consultations,myBusiness)endpoints.ts상수,vite-env.d.ts타입 보강🧠 의도 및 배경
group=ongoing/done,counterpartyWalletAddress)에 프론트 정합성을 맞춰 빌드/실서버 정상 동작을 확보했습니다.