Skip to content

[design] #109 UI 수정사항 반영 - #110

Merged
dearosmar merged 12 commits into
mainfrom
design/#109
Jul 30, 2026
Merged

[design] #109 UI 수정사항 반영#110
dearosmar merged 12 commits into
mainfrom
design/#109

Conversation

@dearosmar

@dearosmar dearosmar commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

☘️ 작업한 이슈

🍀 작업한 내용

  1. 자물쇠 아이콘(LockIcon) 컴포넌트를 추가하고, PostCard에 OnlyMe 속성을 반영해 비공개 글은 제목 옆에 자물쇠가 표시되도록 했습니다.
  2. Tag 공용 컴포넌트를 생성하고, Figma Dev Mode 대조로 확인한 확정 스펙을 반영했습니다.
    • Figma sub 팔레트 기준 6색: 연한(50) 배경 + 진한(100) 글자 페어 (green / blue / yellow / pink / red / grey)
    • radius 4px, padding 4px 6px, 글자 10px · weight 600 · line-height 11px (Caption3)
  3. 테마에 시안 토큰을 추가했습니다: sub 색상 8종, fontSize.xxs(10px), radius.xs(4px)
  4. PostCard 태그를 시안대로 제목 줄(제목 → 자물쇠 → 태그 순)에 배치했습니다. 태그 간 간격 4px, 제목 옆 여백 12px, 최대 3개(1st~3rd) 표시.

🍃 작업 포인트

  • 태그 색상은 매 렌더링 랜덤 대신 태그 이름 해시로 고정 배정해, 색은 다양하면서도 같은 태그는 항상 같은 색으로 표시됩니다.
const TAG_COLORS = [
  { bg: 'green50', text: 'green500' },
  { bg: 'blue50', text: 'blue100' },
  { bg: 'yellow50', text: 'yellow100' },
  { bg: 'pink50', text: 'pink100' },
  { bg: 'red50', text: 'red100' },
  { bg: 'bgSub', text: 'textSub' },
];

<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit

- **새로운 기능**
  - 비공개 게시물 제목에 잠금 아이콘이 표시됩니다.
  - 게시물 태그가 제목 영역에 최대 3개까지 표시됩니다.
  - 태그별 색상과 스타일이 적용되어 구분이 쉬워졌습니다.
  - 잠금 아이콘은 크기와 색상을 지원하며 접근성을 고려해 표시됩니다.

- **스타일**
  - 태그와 아이콘 표현을 위한 색상, 글꼴 크기, 간격 및 모서리 스타일이 추가되었습니다.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

@dearosmar dearosmar self-assigned this Jul 27, 2026
@dearosmar dearosmar linked an issue Jul 27, 2026 that may be closed by this pull request
6 tasks
@vercel

vercel Bot commented Jul 27, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
sprout-efub Ready Ready Preview, Comment Jul 27, 2026 12:19pm

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 44828ab3-431f-481f-91ed-7dd4d8c0fa98

📥 Commits

Reviewing files that changed from the base of the PR and between fbeee88 and 06b791f.

📒 Files selected for processing (5)
  • src/asset/icons/LockIcon.jsx
  • src/features/post/components/PostCard.jsx
  • src/features/post/components/Tag.jsx
  • src/mocks/mockPosts.js
  • src/styles/theme.js
🚧 Files skipped from review as they are similar to previous changes (3)
  • src/asset/icons/LockIcon.jsx
  • src/mocks/mockPosts.js
  • src/styles/theme.js

Walkthrough

잠금 아이콘과 태그 컴포넌트를 추가하고, 테마 토큰과 목업 데이터를 확장했습니다. PostCard는 비공개 게시물의 잠금 아이콘과 최대 3개의 태그를 제목 영역에 표시합니다.

Changes

게시물 및 화면 UI 확장

Layer / File(s) Summary
공통 UI 컴포넌트와 스타일 토큰
src/asset/icons/LockIcon.jsx, src/features/post/components/Tag.jsx, src/styles/theme.js
LockIcon과 해시 기반 색상 태그를 추가하고, 태그에 사용하는 색상·글꼴·라인 높이·반경 토큰을 테마에 추가합니다.
PostCard 게시물 정보 렌더링
src/features/post/components/PostCard.jsx, src/mocks/mockPosts.js
비공개 게시물에는 잠금 아이콘을 표시하고, 태그를 최대 3개까지 렌더링하도록 제목 레이아웃과 목업 데이터를 변경합니다.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related issues

  • EFUB-SWS-MANDO/Frontend 107 — Tag 추가, 최대 3개 태그 표시, 비공개 게시물 잠금 아이콘이라는 동일한 UI 목표를 다룹니다.

Possibly related PRs

  • EFUB-SWS-MANDO/Frontend#108: LockIcon.jsxPostCard.jsx의 비공개 표시 및 태그·제목 레이아웃 변경이 직접적으로 겹칩니다.

Suggested labels: 🍃 feat

Suggested reviewers: nayeon653

Sequence Diagram(s)

sequenceDiagram
  participant PostCard
  participant LockIcon
  participant Tag
  PostCard->>LockIcon: post.isPrivate가 true일 때 렌더링
  PostCard->>Tag: post.tags에서 최대 3개 전달
  Tag-->>PostCard: 색상 태그 렌더링
Loading
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive 제목이 '[design] #109 UI 수정사항 반영'이라 변경 핵심을 구체적으로 드러내지 못합니다. 비공개 글 자물쇠, Tag 컴포넌트, 태그 최대 3개 표시처럼 핵심 변경을 담아 더 구체적으로 적어주세요.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed 직접 요구된 비공개 표시, Tag 컴포넌트, 최대 3개 태그와 색상 적용이 구현되어 있습니다.
Out of Scope Changes check ✅ Passed LockIcon, Tag, PostCard, theme, mock 데이터 변경은 모두 PR 목적과 맞는 범위로 보입니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch design/#109

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 6

🤖 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 `@src/asset/icons/LockIcon.jsx`:
- Around line 1-7: Update LockIcon to accept and forward an aria-label prop to
the SVG, then update its PostCard usage to provide “비공개 게시물” so screen readers
announce the private status.

In `@src/components/Tag/Tag.jsx`:
- Line 39: Update the Tag component’s line-height styling to use a theme
line-height token, such as theme.lineHeight.xxs, instead of the hardcoded 1.1
value. Add the token to the theme definition if it does not already exist, then
reference it in the Tag styled component.
- Around line 20-27: Move the Tag component and its supporting color logic from
the shared components area into the post feature at
features/post/components/Tag.jsx, then update PostCard imports to use the
feature-local component. Remove the old shared Tag export/file and keep the
existing label rendering and Chip styling behavior unchanged.

In `@src/features/post/components/PostCard.jsx`:
- Around line 67-76: Update the PostCard layout symbols TitleRow, TagArea, and
Title to prevent narrow-card overflow: enable wrapping where appropriate, allow
the title flex item to shrink with min-width: 0, and apply title ellipsis
styling; alternatively place tags on a separate row while preserving the
existing visual layout.

In `@src/mocks/mockPosts.js`:
- Line 41: Rename the mock post field from onlyMe to isPrivate in
src/mocks/mockPosts.js at lines 41-41, and update the corresponding post.onlyMe
access to post.isPrivate in src/features/post/components/PostCard.jsx at lines
20-20 so the data contract remains consistent.

In `@src/styles/theme.js`:
- Around line 28-36: Update the Sub palette tag color pairs in the theme
definitions so each 10px text foreground/background combination meets at least a
4.5:1 contrast ratio, preferably by darkening the foreground colors or
lightening the backgrounds. Add an automated contrast check covering blue,
yellow, pink, and red pairs to prevent regressions.
🪄 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: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 9fa09311-217c-431a-9325-fee043a8f515

📥 Commits

Reviewing files that changed from the base of the PR and between 79b8896 and fbeee88.

📒 Files selected for processing (5)
  • src/asset/icons/LockIcon.jsx
  • src/components/Tag/Tag.jsx
  • src/features/post/components/PostCard.jsx
  • src/mocks/mockPosts.js
  • src/styles/theme.js

Comment thread src/asset/icons/LockIcon.jsx Outdated
Comment thread src/features/post/components/Tag.jsx
Comment thread src/components/Tag/Tag.jsx Outdated
Comment thread src/features/post/components/PostCard.jsx
Comment thread src/mocks/mockPosts.js Outdated
Comment thread src/styles/theme.js
@dearosmar
dearosmar merged commit b30bbec into main Jul 30, 2026
3 checks passed
@dearosmar
dearosmar deleted the design/#109 branch July 30, 2026 05:09
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.

[design] 디자인 수정사항 반영

2 participants