Skip to content

[fix] 동소한 공연 시간표 탭 UI/데이터 개선 및 웹뷰 대응#1298

Merged
oesnuj merged 5 commits intodevelop-fefrom
feature/#1297-update-performance-schedule-ui-MOA-726
Mar 3, 2026
Merged

[fix] 동소한 공연 시간표 탭 UI/데이터 개선 및 웹뷰 대응#1298
oesnuj merged 5 commits intodevelop-fefrom
feature/#1297-update-performance-schedule-ui-MOA-726

Conversation

@oesnuj
Copy link
Copy Markdown
Member

@oesnuj oesnuj commented Mar 3, 2026

#️⃣연관된 이슈

#1297

📝작업 내용

총동아리 연합회의 피드백에 맞춰서 개선한 동소한 공연 시간표 탭 관련 UI/데이터 개선 작업입니다.

탭 라벨 변경

  • '동아리시간표' → '버스킹 시간표'로 변경

공연 데이터 형식 통일

  • 각 곡 항목에서 인원수 표기 제거 (ex. - 5명, (5명))
  • 네오쇼크 곡 구분자 곡명 / 아티스트곡명 - 아티스트로 통일

웹뷰 환경 개선

  • 웹뷰에서 Footer 미노출 처리
  • 웹뷰에서 탭 버튼 상단 소폭 간격 추가 (12px)

공연 카드 애니메이션 개선

  • 카드 펼침/닫힘 시 framer-motion height + opacity 트랜지션 적용

  • 펼침 상태에 따라 SongArea border-radius 전환 (20px → 8px)



🫡 참고사항

  • 웹뷰 조건 처리는 기존 isInAppWebView() 유틸을 그대로 활용했습니다.
  • 웹뷰 간격은 TabWrapper$webview prop으로 조건부 적용했습니다.

Summary by CodeRabbit

  • Bug Fixes

    • 웹뷰 환경에서 푸터 표시 처리 개선
  • Style

    • 웹뷰 모드에서 탭 레이아웃 패딩 조정
  • New Features

    • 탭 레이블 텍스트 변경 ("동아리시간표" → "버스킹 시간표")
    • 공연 정보의 데이터 표시 형식 단순화 (불필요한 수치 제거)

oesnuj added 3 commits March 3, 2026 21:34
- 각 곡 항목에서 인원수 표기 제거
- 네오쇼크 곡 구분자 '/' → '-' 통일
- '동아리시간표' → '버스킹 시간표' 탭 라벨 변경
- 웹뷰 환경에서 Footer 미노출 처리
@oesnuj oesnuj removed their assignment Mar 3, 2026
@vercel
Copy link
Copy Markdown

vercel bot commented Mar 3, 2026

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

Project Deployment Actions Updated (UTC)
moadong Ready Ready Preview, Comment Mar 3, 2026 0:48am

@oesnuj oesnuj added 🎨 Design 마크업 & 스타일링 💻 FE Frontend labels Mar 3, 2026
@oesnuj oesnuj requested a review from seongwon030 March 3, 2026 12:38
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 3, 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

요약

IntroductionPage 컴포넌트와 스타일에서 웹뷰 감지 기능을 추가하고, 페스티벌 공연 데이터에서 참여자 수 표기를 제거하며 형식을 통일합니다.

변경 사항

계층 / 파일(들) 요약
웹뷰 조건부 렌더링
frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.styles.ts
TabWrapper에 선택적 $webview 속성 추가하여 웹뷰 상태에 따라 조건부로 padding-top을 적용합니다.
UI 레이아웃 및 탭 레이블 변경
frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.tsx
Footer를 웹뷰 상태에서만 숨기도록 조건부 렌더링하고, TabWrapper에 $webview 속성을 전달하며, CLUB_TIMETABLE 탭 레이블을 "동아리시간표"에서 "버스킹 시간표"로 변경합니다.
공연 데이터 표준화
frontend/src/pages/FestivalPage/data/performances.ts
여러 공연의 곡 항목에서 참여자 수 표기를 제거하고 'title - artist' 형식으로 통일합니다.

코드 리뷰 난이도

🎯 2 (Simple) | ⏱️ ~10분

관련 가능성 있는 PR

제안 라벨

✨ Feature, 💻 FE

제안 리뷰어

  • lepitaaar
  • suhyun113
🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PR 제목이 주요 변경 사항을 명확하게 요약합니다: UI/데이터 개선 및 웹뷰 대응이 모두 포함되어 있습니다.

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

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feature/#1297-update-performance-schedule-ui-MOA-726

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.

@oesnuj oesnuj requested review from lepitaaar and suhyun113 March 3, 2026 12:38
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 3, 2026

🎨 UI 변경사항을 확인해주세요

변경된 스토리를 Chromatic에서 확인해주세요.

구분 링크
🔍 변경사항 리뷰 https://www.chromatic.com/build?appId=67904e61c16daa99a63b44a7&number=37
📖 Storybook https://67904e61c16daa99a63b44a7-jhpgiaeuhs.chromatic.com/

31개 스토리 변경 · 전체 58개 스토리 · 23개 컴포넌트

@oesnuj oesnuj changed the title Feature/#1297 update performance schedule UI moa 726 [fix] 동소한 공연 시간표 탭 UI/데이터 개선 및 웹뷰 대응 Mar 3, 2026
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.

🧹 Nitpick comments (2)
frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.tsx (1)

63-90: isInAppWebView() 결과를 한 번만 계산해 재사용하면 더 읽기 쉽습니다.

Line [63], Line [90]에서 동일 함수를 반복 호출하고 있어, 지역 상수로 캐싱하면 JSX가 더 간결해집니다.

제안 코드
 const IntroductionPage = () => {
+  const isWebView = isInAppWebView();
   useTrackPageView(PAGE_VIEW.FESTIVAL_INTRODUCTION_PAGE);
   const trackEvent = useMixpanelTrack();
@@
-        {!isInAppWebView() && <Filter alwaysVisible />}
-        <Styled.TabWrapper $webview={isInAppWebView()}>
+        {!isWebView && <Filter alwaysVisible />}
+        <Styled.TabWrapper $webview={isWebView}>
@@
-      {!isInAppWebView() && <Footer />}
+      {!isWebView && <Footer />}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.tsx` around
lines 63 - 90, Compute isInAppWebView() once and reuse the result: call
isInAppWebView() into a local const (e.g., const inAppWebView =
isInAppWebView()) at the top of the component, then replace the repeated calls
in Styled.TabWrapper's $webview prop and the final conditional rendering of
Footer with that const; update references to use inAppWebView so JSX is simpler
and avoids multiple calls to isInAppWebView().
frontend/src/pages/FestivalPage/data/performances.ts (1)

125-137: 곡/아티스트 표기 순서를 한 방향으로 맞추는 것을 권장합니다.

Line [125]-Line [137]은 인원수 제거는 잘 되었지만, 다른 클럽 데이터와 비교 시 곡명 - 아티스트 / 아티스트 - 곡명 순서가 혼재되어 표시 규칙이 흔들릴 수 있습니다. 렌더링 결과 일관성을 위해 한 포맷으로 통일하는 편이 좋겠습니다.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@frontend/src/pages/FestivalPage/data/performances.ts` around lines 125 - 137,
The list of performance strings in the performances array contains mixed
ordering of "song - artist" and "artist - song"; normalize them to a single
format (recommend "artist - song") by editing the entries in the array (the list
containing 'Locking', '르세라핌 - SPAGHETTI', '엔하이픈 - No Doubt', etc.) so that any
items currently in "곡명 - 아티스트" order are rewritten to "아티스트 - 곡명" (leave
genre-only entries like 'Locking', 'B-boy', 'Waacking', 'HipHop' as-is); update
strings such as 'XXL - 영파씨 (BEBE choreo)' and 'All genre - JABBERLOOP' to match
the chosen "artist - song" convention for consistent rendering.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@frontend/src/pages/FestivalPage/data/performances.ts`:
- Around line 125-137: The list of performance strings in the performances array
contains mixed ordering of "song - artist" and "artist - song"; normalize them
to a single format (recommend "artist - song") by editing the entries in the
array (the list containing 'Locking', '르세라핌 - SPAGHETTI', '엔하이픈 - No Doubt',
etc.) so that any items currently in "곡명 - 아티스트" order are rewritten to "아티스트 -
곡명" (leave genre-only entries like 'Locking', 'B-boy', 'Waacking', 'HipHop'
as-is); update strings such as 'XXL - 영파씨 (BEBE choreo)' and 'All genre -
JABBERLOOP' to match the chosen "artist - song" convention for consistent
rendering.

In `@frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.tsx`:
- Around line 63-90: Compute isInAppWebView() once and reuse the result: call
isInAppWebView() into a local const (e.g., const inAppWebView =
isInAppWebView()) at the top of the component, then replace the repeated calls
in Styled.TabWrapper's $webview prop and the final conditional rendering of
Footer with that const; update references to use inAppWebView so JSX is simpler
and avoids multiple calls to isInAppWebView().

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Jira integration is disabled

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between eb54ce1 and 180248c.

📒 Files selected for processing (3)
  • frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.styles.ts
  • frontend/src/pages/FestivalPage/IntroductionPage/IntroductionPage.tsx
  • frontend/src/pages/FestivalPage/data/performances.ts

oesnuj added 2 commits March 3, 2026 21:47
- 펼칠 때 height + opacity 트랜지션 적용
- 펼침 상태에 따라 SongArea border-radius 전환 (20px -> 8px)
Copy link
Copy Markdown
Member

@seongwon030 seongwon030 left a comment

Choose a reason for hiding this comment

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

빠른 UI개선 수고하셨습니다

Copy link
Copy Markdown
Collaborator

@suhyun113 suhyun113 left a comment

Choose a reason for hiding this comment

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

빠른 수정 좋네요!
수고하셨슴다~

@oesnuj oesnuj merged commit 8a29cf6 into develop-fe Mar 3, 2026
5 checks passed
@coderabbitai coderabbitai bot mentioned this pull request Mar 3, 2026
@oesnuj oesnuj linked an issue Mar 3, 2026 that may be closed by this pull request
4 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🎨 Design 마크업 & 스타일링 💻 FE Frontend

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feature] MOA-726 동아리 소개 페이지 UI 및 공연 데이터 소폭 수정

3 participants