Skip to content

style: UI 일관성 정리 및 입력 다이얼로그 엔터 제출 지원 - #413

Merged
kanghaeun merged 6 commits into
devfrom
style/ui-polish
Aug 2, 2026
Merged

style: UI 일관성 정리 및 입력 다이얼로그 엔터 제출 지원#413
kanghaeun merged 6 commits into
devfrom
style/ui-polish

Conversation

@kanghaeun

@kanghaeun kanghaeun commented Aug 1, 2026

Copy link
Copy Markdown
Contributor

작업 요약

  • Header 중앙 타이틀을 heading-1-bold(20px)로 통일
  • 마이페이지 헤더를 좌측 정렬 형태로 수정
  • 위시 카드 스켈레톤의 모서리를 실제 카드와 일치하도록 수정
  • 입력이 하나뿐인 다이얼로그는 엔터만 쳐도 제출되도록 개선

작업 내용

UI 일관성이 어긋나 있던 부분들을 시안 기준으로 정리하고, 입력 다이얼로그의 사용성을 개선했습니다.

1. 헤더 타이틀 크기 통일 (24px → 20px)

Header의 중앙 타이틀이 화면마다 title-1(24px)과 heading-1-bold(20px)로 갈려 있어 heading-1-bold로 통일했습니다.

화면 타이틀
알림 히스토리 알림 히스토리
담기 화면 토너먼트 이름
프로필 수정 프로필 수정
탈퇴하기 탈퇴하기
이용약관 / 개인정보 처리방침 각 문서명

TournamentHeader는 폭·정렬 클래스(w-[calc(...)] text-center)를 그대로 두고 폰트 클래스만 교체했습니다.
매치 화면 질문 문구와 온보딩 문구는 헤더가 아닌 본문 제목이라 title-1을 유지했습니다.

2. 마이페이지 헤더를 위시리스트와 동일한 형태로

중앙 정렬 헤더 + 뒤로가기 버튼 구조를, 위시리스트(내 위시리스트)와 같은 좌측 정렬 h1으로 변경했습니다.

  • 하단 탭으로 진입하는 화면이라 뒤로가기 버튼 제거
  • 타이틀을 설정내 정보로 변경 — 알림·앱 설정 같은 토글 항목 없이 프로필·계정 관리 위주라 실제 내용과 더 맞음
  • 본문의 중복된 프로필 소제목 제거

3. 위시 상품 카드 스켈레톤 라운드 제거

실제 WishCard에는 라운드가 없는데 스켈레톤에만 남아 있어, 로딩 → 렌더 전환 시 모서리 모양이 튀었습니다.

  • 위시리스트 무한스크롤 로딩 스켈레톤 (WishCardSkeleton)
  • 카드 내부 이미지 로딩 스켈레톤 (WishCard) — 위시리스트·위시에서 가져오기 양쪽에 적용

4. 단일 입력 다이얼로그에서 엔터로 제출

입력 후 버튼을 눌러야만 진행되던 곳들을 엔터로도 제출되게 했습니다.

다이얼로그 입력 제출
링크로 담기 링크 URL 위시리스트에 담기 / 후보 바구니에 담기
새 토너먼트 (홈) 토너먼트 이름 생성하기
새 토너먼트 (아카이브 FAB) 토너먼트 이름 생성하기
초대받은 토너먼트 초대 코드 입장하기

상품 파싱 실패 시 입력 폼(상품명 + 가격)은 의도적으로 제외했습니다. 저장 조건에 이미지 선택이 포함돼 키보드만으로 완결되지 않고, 다중 필드에서는 엔터를 "다음 칸 이동"으로 기대하는 경우가 많으며, 바로 옆에 삭제 버튼이 있어서입니다. 단일 입력은 엔터 제출 / 다중 필드는 클릭으로 기준을 잡았습니다.

Summary by CodeRabbit

  • 개선 사항

    • 개인정보 처리방침, 이용약관, 마이페이지, 알림 및 토너먼트 화면의 제목 스타일을 일관되게 개선했습니다.
    • 마이페이지 화면 구성을 간소화하고 제목과 콘텐츠 간격을 조정했습니다.
    • 프로필 섹션의 중복 제목을 제거했습니다.
    • 위시 카드의 로딩 영역 모서리를 직각으로 통일했습니다.
  • 버그 수정

    • 토너먼트 생성, 초대 코드 입력, 링크를 통한 아이템 추가가 폼 제출 방식으로 안정적으로 동작하도록 개선했습니다.

@vercel

vercel Bot commented Aug 1, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
piki Ready Ready Preview Aug 2, 2026 7:10pm

@github-actions

github-actions Bot commented Aug 1, 2026

Copy link
Copy Markdown

Discord 스레드 연동용 메타데이터입니다. discord-pr-bot 워크플로가 자동 생성하며, 수정·삭제하면 PR 과 Discord 알림 연동이 끊깁니다.

@coderabbitai

coderabbitai Bot commented Aug 1, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@kanghaeun, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 21 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: d058417e-eb26-48df-b157-3813da7d15e6

📥 Commits

Reviewing files that changed from the base of the PR and between 2515312 and f72860c.

📒 Files selected for processing (18)
  • apps/web/src/app/(legal)/privacy/page.tsx
  • apps/web/src/app/(legal)/terms/page.tsx
  • apps/web/src/app/archive/tournament/_components/TournamentHistoryList.tsx
  • apps/web/src/app/archive/tournament/_components/TournamentHistorySection.tsx
  • apps/web/src/app/archive/tournament/page.tsx
  • apps/web/src/app/archive/wish/_components/WishCardSkeleton.tsx
  • apps/web/src/app/archive/wish/_components/WishContentClient.tsx
  • apps/web/src/app/home/_components/CreateTournamentDialog.tsx
  • apps/web/src/app/home/_components/InviteTournamentDialog.tsx
  • apps/web/src/app/mypage/_components/ProfileSection.tsx
  • apps/web/src/app/mypage/edit/page.tsx
  • apps/web/src/app/mypage/page.tsx
  • apps/web/src/app/mypage/withdraw/page.tsx
  • apps/web/src/app/notification/_components/NotificationContent.tsx
  • apps/web/src/app/tournament/[id]/create/_components/tournament-header/TournamentHeader.tsx
  • apps/web/src/components/common/create-tournament-dialog/index.tsx
  • apps/web/src/components/common/wish-card/index.tsx
  • apps/web/src/components/get-item-dialog/ByLinkDialog.tsx
📝 Walkthrough

Walkthrough

여러 다이얼로그의 제출 처리를 폼 이벤트 기반으로 변경했습니다. 법률, 알림, 마이페이지, 토너먼트 헤더의 제목 스타일을 조정했습니다. 마이페이지 상단 구조와 Wish 카드 로딩 UI를 정리했습니다.

Changes

폼 제출 처리

Layer / File(s) Summary
다이얼로그 폼 제출 wiring
apps/web/src/app/home/_components/CreateTournamentDialog.tsx, apps/web/src/app/home/_components/InviteTournamentDialog.tsx, apps/web/src/components/common/create-tournament-dialog/index.tsx, apps/web/src/components/get-item-dialog/ByLinkDialog.tsx
입력 영역을 <form>으로 변경했습니다. 제출 이벤트에서 기본 동작을 차단합니다. 버튼은 type="submit"으로 동작합니다.

페이지 UI 업데이트

Layer / File(s) Summary
헤더 및 마이페이지 레이아웃
apps/web/src/app/(legal)/*, apps/web/src/app/mypage/*, apps/web/src/app/notification/_components/NotificationContent.tsx, apps/web/src/app/tournament/[id]/create/_components/tournament-header/TournamentHeader.tsx
헤더 제목 스타일을 heading-1-bold로 변경했습니다. 마이페이지의 기존 헤더와 프로필 제목을 제거하고 제목 간격을 조정했습니다.

Wish 로딩 UI

Layer / File(s) Summary
Wish 스켈레톤 모서리 스타일
apps/web/src/app/archive/wish/_components/WishCardSkeleton.tsx, apps/web/src/components/common/wish-card/index.tsx
Wish 카드 스켈레톤과 이미지 로딩 fallback의 둥근 모서리 스타일을 제거했습니다.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • TeamPiKi/client#365: CreateTournamentDialogInviteTournamentDialog의 제출 동작 변경과 관련됩니다.
  • TeamPiKi/client#366: 토너먼트 생성 다이얼로그의 제출 처리 구조 변경과 관련됩니다.
  • TeamPiKi/client#411: 동일한 CreateTournamentDialog의 폼 제출 처리와 직접 관련됩니다.

Suggested labels: feature

Suggested reviewers: ychany

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 7.69% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 제목은 UI 스타일 일관성 개선과 입력 다이얼로그의 엔터 제출 지원이라는 주요 변경 사항을 명확하게 요약합니다.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch style/ui-polish

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/web/src/app/mypage/page.tsx`:
- Around line 20-23: 페이지의 바깥 컨테이너를 semantic <main>으로 변경해 `h1`과 `Spacing`을 동일한 주요
콘텐츠 영역에 포함하세요. 현재 내부 `<main>`은 스크롤 동작을 유지하는 `<div>`로 바꾸고, 제목은 고정된 상태에서 본문만
스크롤되도록 기존 클래스와 레이아웃을 보존하세요.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 65a90b42-1225-4e00-8af2-c581be28e1f9

📥 Commits

Reviewing files that changed from the base of the PR and between 7570cc8 and 2515312.

📒 Files selected for processing (14)
  • apps/web/src/app/(legal)/privacy/page.tsx
  • apps/web/src/app/(legal)/terms/page.tsx
  • apps/web/src/app/archive/wish/_components/WishCardSkeleton.tsx
  • apps/web/src/app/home/_components/CreateTournamentDialog.tsx
  • apps/web/src/app/home/_components/InviteTournamentDialog.tsx
  • apps/web/src/app/mypage/_components/ProfileSection.tsx
  • apps/web/src/app/mypage/edit/page.tsx
  • apps/web/src/app/mypage/page.tsx
  • apps/web/src/app/mypage/withdraw/page.tsx
  • apps/web/src/app/notification/_components/NotificationContent.tsx
  • apps/web/src/app/tournament/[id]/create/_components/tournament-header/TournamentHeader.tsx
  • apps/web/src/components/common/create-tournament-dialog/index.tsx
  • apps/web/src/components/common/wish-card/index.tsx
  • apps/web/src/components/get-item-dialog/ByLinkDialog.tsx
💤 Files with no reviewable changes (1)
  • apps/web/src/app/mypage/_components/ProfileSection.tsx

Comment thread apps/web/src/app/mypage/page.tsx Outdated
@kanghaeun
kanghaeun merged commit 1799925 into dev Aug 2, 2026
7 checks passed
@kanghaeun
kanghaeun deleted the style/ui-polish branch August 2, 2026 19:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant