Conversation
[fix] 지원서 입력폼에서 단답형 입력 필드가 부모 너비를 초과하여 레이아웃 깨짐
[fix] 지원서 미등록 시 alert 반복 버그 수정 및 외부 링크/지원서 분기 처리
RecruitEditTab에서 외부 지원서 URL을 업데이트하는 로직 추가
- 검색 시 카테고리 필터 무시하고 전체 동아리에서 검색 - SearchContext에 isSearching 상태 추가 - 검색과 카테고리 필터링 로직 분리
- SnsIcon의 onClick을 SnsLink로 이동하여 이벤트 전파 문제 해결 - 링크 클릭과 이벤트 추적이 독립적으로 동작하도록 개선
- SNS 링크 클릭 시 동아리 이름과 플랫폼 정보 추적
…A-130 [feature] 검색 시 전체동아리 기준으로 검색된다
…t-MOA-127 [feature] sns링크버튼에 믹스패널 이벤트를 추가한다
|
Warning
|
| Cohort / File(s) | Change Summary |
|---|---|
동아리 지원 버튼 리팩토링frontend/src/pages/ClubDetailPage/components/ClubApplyButton/ClubApplyButton.tsx, frontend/src/pages/ClubDetailPage/components/ClubDetailFooter/ClubDetailFooter.tsx, frontend/src/pages/ClubDetailPage/components/ClubDetailHeader/ClubDetailHeader.tsx |
ClubApplyButton에서 isRecruiting prop 제거, 내부적으로 모집 상태 판단 및 지원/외부 링크/알림 처리. Footer, Header에서 관련 prop 및 로직 제거. |
검색 상태 및 카테고리 관리 개선frontend/src/pages/MainPage/MainPage.tsx, frontend/src/pages/MainPage/components/CategoryButtonList/CategoryButtonList.tsx, frontend/src/components/common/SearchBox/SearchBox.tsx, frontend/src/context/SearchContext.tsx |
isSearching 상태 추가 및 관리, 검색 시 카테고리 자동 초기화, 카테고리 버튼 클릭 시 검색 상태 해제, 관련 컨텍스트 및 훅 수정. |
SNS 링크 아이콘 트래킹 및 prop 확장frontend/src/pages/ClubDetailPage/components/SnsLinkIcons/SnsLinkIcons.tsx, frontend/src/pages/ClubDetailPage/components/InfoBox/InfoBox.tsx |
SnsLinkIcons에 clubName prop 추가 및 SNS 아이콘 클릭 시 Mixpanel 이벤트 트래킹, InfoBox에서 clubName 전달. |
Mixpanel 트래킹 방식 변경frontend/src/pages/ClubDetailPage/components/ShareButton/ShareButton.tsx |
공유 버튼 클릭 이벤트 트래킹 시 clubName을 별도 속성으로 전달하도록 변경. |
동아리 상세 타입 및 지원폼 필드 확장frontend/src/types/club.ts, frontend/src/pages/AdminPage/tabs/RecruitEditTab/RecruitEditTab.tsx |
ClubDetail 타입에 externalApplicationUrl 속성 추가 및 RecruitEditTab에서 해당 필드 포함하도록 수정. |
스타일 개선frontend/src/components/common/CustomTextArea/CustomTextArea.styles.ts, frontend/src/components/common/InputField/InputField.styles.ts, frontend/src/pages/ApplicationFormPage/ApplicationFormPage.styles.ts |
min-width → max-width, padding 및 배경색 등 UI 스타일 조정. |
관리자 사이드바 로그아웃 로직frontend/src/pages/AdminPage/components/SideBar/SideBar.tsx |
refreshToken 쿠키가 있을 때만 logout API 호출하도록 조건 추가. |
Sequence Diagram(s)
sequenceDiagram
participant User
participant ClubApplyButton
participant useGetClubDetail
participant getApplication
participant Browser
User->>ClubApplyButton: 버튼 클릭
ClubApplyButton->>useGetClubDetail: 동아리 상세 정보 fetch
useGetClubDetail-->>ClubApplyButton: clubDetail 반환
ClubApplyButton->>ClubApplyButton: 모집 기간 내 여부 판단
alt 모집 마감
ClubApplyButton->>User: 모집 마감 알림
else 모집 중
ClubApplyButton->>getApplication: 기존 지원서 fetch
alt 지원서 있음
getApplication-->>ClubApplyButton: 지원서 반환
ClubApplyButton->>Browser: 지원서 페이지로 이동
else 지원서 없음
getApplication-->>ClubApplyButton: 에러 반환
alt 외부 지원 URL 존재
ClubApplyButton->>Browser: 새 탭으로 외부 지원 URL 오픈
else
ClubApplyButton->>User: 지원 정보 확인 알림
end
end
end
sequenceDiagram
participant User
participant SearchBox
participant useCategory
participant useSearch
participant MainPage
User->>SearchBox: 검색어 입력 후 검색
SearchBox->>useCategory: setSelectedCategory('all')
SearchBox->>useSearch: setIsSearching(true), setKeyword
SearchBox-->>MainPage: 검색 상태 및 키워드 전달
MainPage->>useGetCardList: searchCategory = 'all'로 카드 리스트 fetch
Estimated code review effort
🎯 4 (Complex) | ⏱️ ~40 minutes
Possibly related PRs
- RecruitEditTab에서 외부 지원서 URL을 업데이트하는 로직 추가 #610: RecruitEditTab에서 externalApplicationUrl 필드 추가와 관련된 직접적인 변경이 포함되어 있습니다.
- [feature] sns링크버튼에 믹스패널 이벤트를 추가한다 #614: SnsLinkIcons 컴포넌트에 clubName prop 추가 및 Mixpanel 이벤트 트래킹 기능 확장과 직접적으로 연결됩니다.
- [fix] 지원서 미등록 시 alert 반복 버그 수정 및 외부 링크/지원서 분기 처리 #605: ClubApplyButton의 isRecruiting prop 제거 및 내부 지원 로직 리팩토링과 동일한 코드 영역을 다룹니다.
Suggested labels
🛠Fix
Suggested reviewers
- seongwon030
- Zepelown
✨ Finishing Touches
- 📝 Generate Docstrings
🧪 Generate unit tests
- Create PR with unit tests
- Post copyable unit tests in a comment
- Commit unit tests in branch
fix/logout-failed
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.
🪧 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
@coderabbitaiin a new review comment at the desired location with your query. Examples:@coderabbitai explain this code block.
- PR comments: Tag
@coderabbitaiin 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.
Support
Need help? Create a ticket on our support page for assistance with any issues or questions.
CodeRabbit Commands (Invoked using PR comments)
@coderabbitai pauseto pause the reviews on a PR.@coderabbitai resumeto resume the paused reviews.@coderabbitai reviewto trigger an incremental review. This is useful when automatic reviews are disabled for the repository.@coderabbitai full reviewto do a full review from scratch and review all the files again.@coderabbitai summaryto regenerate the summary of the PR.@coderabbitai generate docstringsto generate docstrings for this PR.@coderabbitai generate sequence diagramto generate a sequence diagram of the changes in this PR.@coderabbitai generate unit teststo generate unit tests for this PR.@coderabbitai resolveresolve all the CodeRabbit review comments.@coderabbitai configurationto show the current CodeRabbit configuration for the repository.@coderabbitai helpto get help.
Other keywords and placeholders
- Add
@coderabbitai ignoreanywhere in the PR description to prevent this PR from being reviewed. - Add
@coderabbitai summaryto generate the high-level summary at a specific location in the PR description. - Add
@coderabbitaianywhere in the PR title to generate the title automatically.
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.
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
#️⃣연관된 이슈
#623
📝작업 내용
쿠키에 리프레시토큰이 존재할시에만 logout 요청을보냅니다
중점적으로 리뷰받고 싶은 부분(선택)
논의하고 싶은 부분(선택)
🫡 참고사항
Summary by CodeRabbit
신규 기능
버그 수정
리팩터링
스타일
기타