Skip to content

[feature] 동아리 분과별 테마 색상을 커버 이미지 폴백으로 적용한다#1547

Open
suhyun113 wants to merge 4 commits into
develop-fefrom
feature/#1544-club-cover-fallback-color-MOA-849
Open

[feature] 동아리 분과별 테마 색상을 커버 이미지 폴백으로 적용한다#1547
suhyun113 wants to merge 4 commits into
develop-fefrom
feature/#1544-club-cover-fallback-color-MOA-849

Conversation

@suhyun113
Copy link
Copy Markdown
Collaborator

@suhyun113 suhyun113 commented May 13, 2026

#️⃣연관된 이슈

#1544

📝작업 내용

1. 커버 이미지 없을 때 분과별 태그 색상 폴백 적용

  • 커버 이미지가 없는 동아리의 경우 기존 기본 이미지 대신 분과별 태그 색상을 배경으로 표시
  • 분과 정보가 없는 경우 기본 커버 이미지 폴백 유지
  • CoverImagedisplay: block 추가하여 img 하단 여백 제거

2. 동아리 프로필 로고 테두리 데스크탑/모바일 분리 적용

  • 모바일~태블릿: 0.5px gray400 테두리 + 4px 흰색 외곽

  • 노트북~데스크탑: 0.5px gray400 테두리 + 4px gray100 외곽 (소개
    배경과 통일)

    수정 전 수정 후

중점적으로 리뷰받고 싶은 부분(선택)

리뷰어가 특별히 봐주었으면 하는 부분이 있다면 작성해주세요

ex) 메서드 XXX의 이름을 더 잘 짓고 싶은데 혹시 좋은 명칭이 있을까요?

논의하고 싶은 부분(선택)

논의하고 싶은 부분이 있다면 작성해주세요.

🫡 참고사항

Summary by CodeRabbit

Summary by CodeRabbit

  • 새로운 기능

    • 클럽 상세에서 프로필 카드에 카테고리 정보를 전달해 카테고리 기반 배경색을 표시하도록 지원 추가
  • 개선 사항

    • 커버 영역 높이 조정(220px)으로 시각적 일관성 향상
    • 로고 영역 기본 배경색 및 패딩 조정으로 표시 개선
    • 커버 이미지 미노출 시 카테고리 색상 기반 대체 배경 표시 지원

Review Change Stack

@suhyun113 suhyun113 self-assigned this May 13, 2026
@suhyun113 suhyun113 added ✨ Feature 기능 개발 💻 FE Frontend labels May 13, 2026
@vercel
Copy link
Copy Markdown

vercel Bot commented May 13, 2026

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

Project Deployment Actions Updated (UTC)
moadong Ready Ready Preview, Comment May 20, 2026 6:00am

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 13, 2026

Warning

.coderabbit.yaml has a parsing error

The CodeRabbit configuration file in this repository has a parsing error and default settings were used instead. Please fix the error(s) in the configuration file. You can initialize chat with CodeRabbit to get help with the configuration file.

💥 Parsing errors (1)
Validation error: Invalid regex pattern for base branch. Received: "**" at "reviews.auto_review.base_branches[0]"
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 0302c169-8601-4393-b6d1-992fe191c9b8

📥 Commits

Reviewing files that changed from the base of the PR and between c0d86e4 and c420a48.

📒 Files selected for processing (1)
  • frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.tsx

Walkthrough

클럽 프로필 카드에 카테고리 기반 컬러 폴백 커버를 추가하고 스타일·컴포넌트 로직·페이지 데이터 전달을 함께 업데이트합니다.

변경 사항

카테고리 기반 커버 폴백

Layer / File(s) Summary
커버 영역 스타일 업데이트
frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.styles.ts
CoverImage 높이를 220px로 조정하고, 카테고리 색상 $color를 받는 CoverFallback styled component를 추가했습니다. LogoWrapper의 기본 배경색을 colors.gray[100]으로 변경하고 패딩을 3.5px로 증가시켰습니다.
카테고리 기반 커버 폴백 로직
frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.tsx
ClubProfileCardProps에 선택적 category?: string을 추가하고, TAG_COLORS를 임포트하여 cover가 없을 때 category 기반 색상으로 Styled.CoverFallback을 렌더링하도록 커버 렌더링 분기를 3단계로 변경했습니다(cover 우선 → category 기반 폴백 → 기본 커버).
카테고리 데이터 전파
frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx
ClubProfileCardclubDetail.categorycategory prop으로 전달하도록 호출부를 업데이트했습니다.

예상 코드 리뷰 노력

🎯 3 (Moderate) | ⏱️ ~20 minutes

관련 이슈

제안 라벨

🎨 Design

제안 리뷰어

  • oesnuj
  • seongwon030
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PR 제목은 변경 사항의 핵심을 명확하게 요약하고 있습니다. 커버 이미지가 없을 때 동아리 분과별 테마 색상을 폴백으로 적용하는 기능을 정확히 설명합니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ 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 feature/#1544-club-cover-fallback-color-MOA-849

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 and usage tips.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 13, 2026

✅ UI 변경사항 없음

구분 링크
📖 Storybook https://67904e61c16daa99a63b44a7-qpqyqyioph.chromatic.com/

전체 57개 스토리 · 22개 컴포넌트

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

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
`@frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.styles.ts`:
- Around line 32-38: CoverFallback의 폴백 배경색 기본값이 요구사항과 달라서 colors.gray[400]을 사용하고
있는데, CoverFallback styled component의 $color 기본값을 colors.gray[300]으로 변경해 주세요 (찾을
식별자: CoverFallback in ClubProfileCard.styles.ts); 즉 styled.div<{ $color?: string
}>`... background-color: ${({ $color }) => $color || colors.gray[300]};`로 수정하면
됩니다.
🪄 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: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 2702156b-c5c1-41f5-b846-49a2f70d6b18

📥 Commits

Reviewing files that changed from the base of the PR and between ff0802b and 6d75429.

📒 Files selected for processing (3)
  • frontend/src/pages/ClubDetailPage/ClubDetailPage.tsx
  • frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.styles.ts
  • frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.tsx

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

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
`@frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.tsx`:
- Around line 67-73: The JSX uses TAG_COLORS[category] directly which is unsafe
because category is a plain string and may not exist in TAG_COLORS, causing
undefined styling; update the ClubProfileCard render to resolve a safe fallback
color for Styled.CoverFallback by first checking that category is a valid key of
TAG_COLORS (e.g., via typeof TAG_COLORS[category] !== 'undefined' or using
(category as keyof typeof TAG_COLORS)) and use a default color when missing
(e.g., TAG_COLORS.default or a hardcoded fallback), ensuring the conditional
that renders Styled.CoverFallback uses that resolvedColor instead of
TAG_COLORS[category]; keep references to cover, category, TAG_COLORS,
Styled.CoverFallback and defaultCover while making this change.
🪄 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: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: add56364-92d0-4d11-9dfc-a65409388f06

📥 Commits

Reviewing files that changed from the base of the PR and between 6d75429 and c0d86e4.

📒 Files selected for processing (1)
  • frontend/src/pages/ClubDetailPage/components/ClubProfileCard/ClubProfileCard.tsx

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💻 FE Frontend ✨ Feature 기능 개발

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant