Skip to content

feat: 사용 매뉴얼 연결 #204

Merged
hyeeuncho merged 4 commits intodevelopfrom
feat/#203/manual
Jul 2, 2025
Merged

feat: 사용 매뉴얼 연결 #204
hyeeuncho merged 4 commits intodevelopfrom
feat/#203/manual

Conversation

@hyeeuncho
Copy link
Copy Markdown
Member

@hyeeuncho hyeeuncho commented Jul 2, 2025

메인 페이지 floating button - 사용자 매뉴얼

스크린샷 2025-07-02 오후 3 29 41

내 호스트 페이지 floating button - 호스트 매뉴얼

스크린샷 2025-07-02 오후 3 29 31

메뉴 - 사용자 매뉴얼

스크린샷 2025-07-02 오후 3 59 12

메인페이지 및 이벤트카드 반응형 구현

스크린샷 2025-07-02 오후 4 40 14

Summary by CodeRabbit

  • 신규 기능

    • 메뉴, 메인 페이지, MyHostPage에 외부 사용법(매뉴얼) 페이지로 연결되는 플로팅 도움말 버튼이 추가되었습니다.
    • 메뉴에 "사용법" 버튼이 새로 추가되어 외부 매뉴얼 페이지로 이동할 수 있습니다.
  • UI/스타일 개선

    • 이벤트 카드의 가로세로 비율 및 슬라이더 섹션의 정렬과 반응형 스타일이 개선되었습니다.
  • 버그 수정

    • 메뉴 버튼 클릭 시 외부 URL이 있는 경우 새 탭에서 열리도록 동작이 개선되었습니다.

@hyeeuncho hyeeuncho linked an issue Jul 2, 2025 that may be closed by this pull request
4 tasks
@hyeeuncho hyeeuncho self-assigned this Jul 2, 2025
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Jul 2, 2025

Walkthrough

이 변경사항은 여러 페이지와 컴포넌트에 "사용법" 외부 링크 버튼(플로팅 버튼)을 추가하고, 메뉴 버튼 타입에 url 지원을 도입하며, 이벤트 카드와 슬라이더의 스타일을 조정합니다. 또한 FloatingButton 컴포넌트가 새롭게 도입되었습니다.

Changes

파일/경로 변경 요약
src/shared/ui/FloatingButton.tsx FloatingButton 컴포넌트 신규 추가(애니메이션, 접근성, 스타일 포함)
src/pages/home/ui/MainPage.tsx
src/pages/menu/ui/myHost/MyHostPage.tsx
플로팅 "사용법" 버튼 추가, manualIcon 이미지 적용, 외부 Notion 링크 연결
src/shared/types/menuType.ts 메뉴 버튼 타입(buttonData)에 url 속성 추가, "사용법" 버튼(외부 URL 포함) 신규 추가
src/pages/menu/ui/MenuPage.tsx handleIconClick 함수가 url 파라미터를 지원하도록 변경, 버튼 클릭시 내부 이동 또는 외부 링크 열기 지원
src/features/home/ui/EventSliderSection.tsx
src/shared/ui/EventCard.tsx
이벤트 카드 및 슬라이더 스타일/레이아웃 조정, aspectRatio 기본값 일부 변경

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant FloatingButton
    participant Browser

    User->>FloatingButton: 클릭(사용법 버튼)
    FloatingButton->>Browser: window.open(Notion URL, '_blank')
Loading
sequenceDiagram
    participant User
    participant MenuButton
    participant MenuPage
    participant Browser

    User->>MenuButton: 클릭(사용법 메뉴 버튼)
    MenuButton->>MenuPage: handleIconClick 호출(navigate, path, url)
    alt url이 있음
        MenuPage->>Browser: window.open(url, '_blank')
    else path만 있음
        MenuPage->>MenuPage: navigate(path)
    end
Loading

Possibly related PRs

Suggested labels

🔧 Feature

Suggested reviewers

  • xaexunxang

Poem

🐇
새 버튼이 둥둥, 구석에 둥실
사용법 궁금하면 한 번만 클릭!
메뉴에도 살포시, 외부 링크 척척
카드 스타일 쏙쏙, 토끼는 신이 나네
개발자 모두, 오늘도 힘내요!


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 91996cb and 59f0aa9.

📒 Files selected for processing (3)
  • src/pages/home/ui/MainPage.tsx (3 hunks)
  • src/pages/menu/ui/myHost/MyHostPage.tsx (2 hunks)
  • src/shared/types/menuType.ts (2 hunks)
🚧 Files skipped from review as they are similar to previous changes (3)
  • src/pages/menu/ui/myHost/MyHostPage.tsx
  • src/pages/home/ui/MainPage.tsx
  • src/shared/types/menuType.ts
✨ Finishing Touches
  • 📝 Generate Docstrings

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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • 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

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@hyeeuncho hyeeuncho added 🔧 Feature 기능 구현 🖼️ Publishing 페이지 퍼블리싱 labels Jul 2, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jul 2, 2025

Copy link
Copy Markdown

@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: 4

🧹 Nitpick comments (2)
src/pages/menu/ui/MenuPage.tsx (1)

8-14: 외부 URL 지원 구현이 잘 되어 있습니다.

함수 시그니처와 로직이 적절하게 구현되어 있고, 새 탭에서 외부 링크를 여는 것도 좋은 UX입니다.

예외 상황 처리를 추가하는 것을 고려해보세요:

const handleIconClick = (navigate: (path: string) => void, path: string, url?: string) => {
  if (url) {
    window.open(url, '_blank');
  } else if (path) {
    navigate(path);
+ } else {
+   console.warn('No URL or path provided to handleIconClick');
  }
};
src/shared/types/menuType.ts (1)

7-7: 기존 코드의 경로 오타 수정 필요

import 경로에 불필요한 슬래시가 있습니다.

-import SelectedEvent from '../../..//design-system/icons/SelectedEvent.svg';
+import SelectedEvent from '../../../design-system/icons/SelectedEvent.svg';
📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 387c9af and 91996cb.

⛔ Files ignored due to path filters (3)
  • public/assets/menu/SelectedManual.svg is excluded by !**/*.svg
  • public/assets/menu/help.svg is excluded by !**/*.svg
  • public/assets/menu/manual.svg is excluded by !**/*.svg
📒 Files selected for processing (7)
  • src/features/home/ui/EventSliderSection.tsx (3 hunks)
  • src/pages/home/ui/MainPage.tsx (3 hunks)
  • src/pages/menu/ui/MenuPage.tsx (2 hunks)
  • src/pages/menu/ui/myHost/MyHostPage.tsx (2 hunks)
  • src/shared/types/menuType.ts (2 hunks)
  • src/shared/ui/EventCard.tsx (1 hunks)
  • src/shared/ui/FloatingButton.tsx (1 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (1)
src/features/home/ui/EventSliderSection.tsx (1)
src/entities/event/model/eventDetail.ts (1)
  • EventItem (30-34)
⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: storybook
🔇 Additional comments (11)
src/shared/ui/FloatingButton.tsx (1)

18-32: 접근성과 애니메이션 구현이 잘 되어 있습니다.

framer-motion을 사용한 애니메이션 효과와 aria-label을 통한 접근성 지원이 적절하게 구현되어 있습니다. 컴포넌트 구조도 재사용 가능하도록 잘 설계되었습니다.

src/shared/ui/EventCard.tsx (1)

46-46: 종횡비 조정이 적절합니다.

작은 화면에서의 이벤트 카드 종횡비를 3/4.5에서 3/5로 조정한 것은 합리적인 UI 개선입니다.

src/features/home/ui/EventSliderSection.tsx (3)

52-52: 레이아웃 센터링 개선이 좋습니다.

justify-center 클래스 추가로 이벤트 카드들이 더 균형있게 배치됩니다.


57-64: 반응형 스타일링이 개선되었습니다.

더 구체적인 반응형 클래스들을 사용하여 다양한 화면 크기에서 더 나은 레이아웃을 제공합니다.


94-94: 빈 함수 포맷팅이 정리되었습니다.

빈 onClick 핸들러에 공백 추가로 코드 가독성이 향상되었습니다.

src/pages/menu/ui/MenuPage.tsx (1)

30-30: 버튼 클릭 핸들러 업데이트가 올바릅니다.

button.url을 세 번째 파라미터로 전달하여 외부 URL 지원이 제대로 연결되었습니다.

src/pages/home/ui/MainPage.tsx (3)

16-17: 새로운 컴포넌트 import가 올바르게 추가되었음

FloatingButton 컴포넌트와 manualIcon 아이콘의 import가 적절하게 추가되었습니다.


39-39: 플로팅 버튼 배치를 위한 레이아웃 조정이 적절함

루트 컨테이너에 relative 클래스를 추가하여 플로팅 버튼의 absolute/sticky 포지셔닝을 지원하도록 한 것이 올바른 접근입니다.


45-45: onChange 핸들러 포맷팅 개선

빈 onChange 핸들러의 포맷팅이 개선되었습니다.

src/shared/types/menuType.ts (2)

12-13: 새로운 아이콘 import가 적절하게 추가됨

Manual과 SelectedManual 아이콘들이 올바르게 import되었습니다.


20-20: 인터페이스 확장이 적절함

외부 URL 지원을 위한 optional url 속성 추가가 올바른 접근입니다.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Jul 2, 2025

@hyeeuncho hyeeuncho merged commit f0dc7fa into develop Jul 2, 2025
2 checks passed
@hyeeuncho hyeeuncho deleted the feat/#203/manual branch July 2, 2025 08:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🔧 Feature 기능 구현 🖼️ Publishing 페이지 퍼블리싱

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feat] 사용 매뉴얼 연결

2 participants