Skip to content

[PR] 마이페이지 관리 버튼 제거, 필터 버튼 변경#60

Merged
Dobbymin merged 8 commits intomainfrom
refector#58-mypage-filter
Mar 25, 2026
Merged

[PR] 마이페이지 관리 버튼 제거, 필터 버튼 변경#60
Dobbymin merged 8 commits intomainfrom
refector#58-mypage-filter

Conversation

@TTOCHIwas
Copy link
Copy Markdown
Collaborator

@TTOCHIwas TTOCHIwas commented Mar 23, 2026

📝 요약 (Summary)

마이페이지 프로젝트 목록에 상태별 필터 탭(전체 / 진행 중 / 완료)을 추가했습니다.

✅ 주요 변경 사항 (Key Changes)

  • 기존 관리 버튼 제거
  • 필터 탭 UI 구현 (전체 / 진행 중 / 완료)
  • project.status로 필터링하는 로직 추가
  • 사용하지 않는 ToolbarToggleButton 컴포넌트 제거
  • 프로젝트 목록 서버 필터링 적용
  • ProjectFilter 타입 제거, ProjectStatus 재사용

💻 상세 구현 내용 (Implementation Details)

필터 탭 UI (ProjectListToolbar)

image

기존 토글 버튼 방식에서 탭 방식으로 변경했습니다.
선택된 탭은 seed 색상 + 하단 border, 미선택은 neutral.500

클라이언트 필터링 (ProjectListSection)

activeFilter state로 선택된 탭을 관리합니다.
project.status 값으로 필터링합니다.
"전체" 선택 시 필터 없이 전체 목록을 표시합니다.

서버 필터링 적용

기존 클라이언트 필터링에서 서버 필터링으로 전환했습니다. GET /api/projects 요청 시 status 파라미터를 전송하여 서버에서 필터링된 결과만 반환받습니다. 페이지네이션이 필터링된 결과 기준으로 정확하게 동작하며, 필터 변경 시 페이지를 1로 리셋합니다.

타입 정리

ProjectFilter ("ALL" | "IN_PROGRESS" | "COMPLETED") 타입을 제거하고,
기존 ProjectStatus ("IN_PROGRESS" | "COMPLETED")를 재사용합니다.
전체 는 undefined로 표현하여 status 파라미터를 전송하지 않습니다.

코드 정리

관리 버튼 제거에 따라 ToolbarToggleButton 컴포넌트와 manageActive 관련 state를 삭제했습니다.

🚀 트러블 슈팅 (Trouble Shooting)

해당 없음

⚠️ 알려진 이슈 및 참고 사항 (Known Issues & Notes)

  • 삭제 아이콘은 다음 이슈에서 구현 예정

📸 스크린샷 (Screenshots)

전체
image

진행 중
image

완료
image

#️⃣ 관련 이슈 (Related Issues)

@TTOCHIwas TTOCHIwas self-assigned this Mar 23, 2026
@TTOCHIwas TTOCHIwas added the ⚒️ Refactor 작업한 코드를 리팩토링 하는 경우 label Mar 23, 2026
@TTOCHIwas TTOCHIwas linked an issue Mar 23, 2026 that may be closed by this pull request
@gemini-code-assist
Copy link
Copy Markdown

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

이 PR은 마이페이지의 프로젝트 목록 관리 기능을 개선하는 데 중점을 둡니다. 기존의 단순한 관리 버튼을 제거하고, 프로젝트 상태(전체, 진행 중, 완료)에 따라 목록을 쉽게 필터링할 수 있는 탭 기반 UI를 도입했습니다. 이를 통해 사용자는 자신의 프로젝트를 더욱 직관적으로 분류하고 확인할 수 있게 되었으며, 불필요한 코드를 제거하여 애플리케이션의 효율성을 높였습니다.

Highlights

  • 마이페이지 프로젝트 목록 필터링 기능 개선: 기존 관리 버튼을 제거하고, 프로젝트 목록에 상태별 필터 탭(전체 / 진행 중 / 완료)을 추가하여 사용자 경험을 개선했습니다.
  • 클라이언트 측 필터링 로직 구현: 프로젝트의 status 값을 기반으로 클라이언트 측에서 프로젝트 목록을 필터링하는 로직을 추가했습니다.
  • 불필요한 컴포넌트 제거: 더 이상 사용되지 않는 ToolbarToggleButton 컴포넌트와 관련 상태를 삭제하여 코드베이스를 정리했습니다.
  • UI/UX 변경: 필터 UI를 토글 버튼 방식에서 탭 방식으로 변경하고, 선택된 탭은 'seed' 색상과 하단 테두리로 시각적인 피드백을 제공합니다.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

이 PR은 마이페이지의 프로젝트 목록에 필터 기능을 추가하고 기존 관리 버튼을 제거하는 변경 사항을 담고 있습니다. ToolbarToggleButton을 제거하고 탭 기반의 새로운 필터 UI(ProjectListToolbar)를 구현한 점은 좋습니다.

다만, 프로젝트 필터링이 클라이언트 측에서 이루어지고 있어 페이지네이션과 관련하여 잠재적인 UX 문제가 발생할 수 있습니다. 사용자가 필터를 적용했을 때 페이지당 항목 수가 줄어들거나 빈 페이지가 나타날 수 있습니다. 이 문제를 해결하기 위해 필터링 로직을 서버 API로 이전하는 것을 강력히 권장합니다. 자세한 내용은 관련 코드에 남긴 코멘트를 참고해주세요.

@Dobbymin Dobbymin merged commit 5bf919d into main Mar 25, 2026
1 check passed
@Dobbymin Dobbymin deleted the refector#58-mypage-filter branch March 25, 2026 12:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

⚒️ Refactor 작업한 코드를 리팩토링 하는 경우

Projects

None yet

Development

Successfully merging this pull request may close these issues.

마이페이지 관리 버튼 제거, 필터 버튼 변경

2 participants