Skip to content

merge refactor -> develop#319

Merged
ho0010 merged 120 commits into
developfrom
refactor
Mar 5, 2026
Merged

merge refactor -> develop#319
ho0010 merged 120 commits into
developfrom
refactor

Conversation

@ho0010
Copy link
Copy Markdown
Collaborator

@ho0010 ho0010 commented Mar 5, 2026

No description provided.

ljh130334 and others added 30 commits November 21, 2025 16:18
THIP-389: 지현 주석 및 개발 로그 제거
THIP-391: 호준 주석 및 개발 로그 제거
THIP-390: 희용 주석 및 개발 로그 제거
THIP-386: 주석 및 console 제거
* fix: modal 폴더 내 컴포넌트의 스타일 파일 분리

* fix: common 폴더 내 컴포넌트의 스타일 파일 분리

* refactor: CountingBar 컴포넌트 스타일 분리

- CountingBar.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* Revert "refactor: CountingBar 컴포넌트 스타일 분리"

This reverts commit bf9cc68.

- 담당 task 변경

* refactor: AIWrite 페이지 스타일 분리

- AIWrite.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Feed 페이지 스타일 분리

- Feed.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: FeedDetailPage 페이지 스타일 분리

- FeedDetailPage.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: FollowerListPage 스타일 분리

- FollowerListPage.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: MyFeedPage 스타일 분리

- MyFeedPage.styled.ts 파일 생성
- OtherFeedPage의 중복된 스타일을 재활용
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: UserSearch 스타일 분리

- UserSearch.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Group 페이지 스타일 분리

- Group.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: GroupDetail 페이지 스타일 분리

- ParticipatedGroupDetail.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: GroupSearch 페이지 스타일 분리

- GroupSearch.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Login 페이지 스타일 분리

- Login.styled.ts 파일 생성
- 불필요한 import 제거
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Mypage 스타일 분리

- Mypage.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Withdraw 페이지 스타일 분리

- WithdrawPage.styled.ts 파일 생성
- WithdrawDonePage.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: AlertPage 스타일 분리

- AlertPage.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: SavePage 스타일 분리

- SavePage.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Notice 페이지 스타일 분리

- Notice.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Search 페이지 스타일 분리

- Search.styled.ts 파일 생성
- ApplyBook.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: SearchBook 페이지 스타일 분리

- SearchBook.styled.ts 파일 생성
- SearchBookGroup.styled.ts 파일 생성
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* refactor: Guide 페이지 스타일 분리와 위치 변경

- Guide.styled.ts 파일 생성
- 일관성을 위해 Guide 폴더안으로 위치 이동
- styled 컴포넌트를 별도 파일로 분리하여 코드 구조 개선

* fix: feed 폴더 내 컴포넌트의 스타일 파일 분리

* fix: group 폴더 내 컴포넌트의 스타일 파일 분리

* fix: memory 폴더 내 컴포넌트의 스타일 파일 분리

* fix: search 폴더 내 컴포넌트의 스타일 파일 분리

* refactor: 목업 데이터 통합

* refactor: ga 파일 shared로 경로 변경

* refactor: Store 파일명 재정의

* fix: modal 폴더 내 컴포넌트의 스타일 파일 분리

* fix: common 폴더 내 컴포넌트의 스타일 파일 분리

* fix: feed 폴더 내 컴포넌트의 스타일 파일 분리

* fix: group 폴더 내 컴포넌트의 스타일 파일 분리

* fix: memory 폴더 내 컴포넌트의 스타일 파일 분리

* fix: search 폴더 내 컴포넌트의 스타일 파일 분리

---------

Co-authored-by: heeyongKim <166043860+heeeeyong@users.noreply.github.com>
Co-authored-by: Ji Ho June <129824629+ho0010@users.noreply.github.com>
- LoadingSpinner 대신 콘텐츠 구조를 보여주는 Skeleton UI 도입
- shared/ui/Skeleton에 재사용 가능한 컴포넌트 구현 (Box/Circle/Text)
- 피드 페이지 로딩 상태에 스켈레톤 적용으로 UX 개선
- keepPrevious 옵션 도입: 재검색 시 기존 results를 유지한 채 API 호출
  → 글자 입력·Enter·필터·카테고리 변경 시 "검색 중..." 플래시 제거
- Content에 isRefetching prop 추가: 재검색 중 opacity 0.45 fade 처리
- Effect를 C/D로 분리
  · Effect C(searchStatus, searchTerm): 검색어·상태 전환 시 호출
  · Effect D(selectedFilter, category): 필터·카테고리 변경 시만 호출
- 카운트(전체 N) 초기 로딩 중 "전체 0" 표시 방지
- isEmpty 판단 시 type !== 'searching' 조건 추가
- OtherFeedPage, MyFeedPage 로딩 중 return <></> → LoadingScreen으로 교체
- LoadingScreen에 background-color: #121212 적용해 배경색 일치
- 로딩 중에도 TitleHeader 표시해 뒤로 가기 가능하도록 유지
- RecentSearchTabs에 isLoading prop 추가
- 로딩 중 "최근 검색어를 불러오고 있습니다." 표시
- UserSearch, GroupSearch에서 fetchRecentSearches 로딩 상태 관리 추가
- 검색 중(debounce 대기 or API 응답 전)에 "검색 중..." 표시
- UserSearchResult isEmpty 판단 시 type !== 'searching' 조건 추가
- LoadingMessage 스타일 컴포넌트 추가
THIP-405: Skeleton UI 공통 컴포넌트 구현
- 기존 빈 Fragment(A) → FeedPostSkeleton 3개 표시(B)로 로딩 UX 개선
- 헤더/NavBar 유지한 채로 스켈레톤 영역만 교체
- 최소 0.5초 로딩 보장으로 깜빡임 방지
- OtherFeedSkeleton 신규 생성: 프로필+팔로워+게시물 영역 포함, paddingTop prop으로 헤더 높이 대응
- Feed 내 피드 탭: FeedPostSkeleton → OtherFeedSkeleton(paddingTop=136)으로 교체
- MyFeed 프로필 로딩 중 빈 화면(<>) → OtherFeedSkeleton으로 교체
- MyFeedPage: getOtherProfile → getMyProfile 교체로 프로필 미노출 버그 수정
- fetchRecentSearches에 isSuccess 확인 추가: API 실패 응답 시
  response.data 접근으로 발생하는 TypeError 방지
- fetchRecentSearches에 catch 블록 추가: 네트워크 오류 등
  예외가 unhandled rejection으로 전파되지 않도록 처리
- UserSearchResult의 isEmpty 조건 내 loading 분기 제거:
  부모에서 loading=true일 때 LoadingMessage가 렌더링되므로
  해당 경로는 도달 불가능한 데드 코드
- A: 평탄한 구조(9개 파일 혼재), Profile/TotalBar 로직이 OtherFeedSkeleton에만 결합
- B: base/feed 도메인 분리 + ProfileSkeleton/TotalBarSkeleton 독립 추출 → 조합형 설계
- 재사용성: Profile/TotalBar 스켈레톤 독립 사용 가능, import 경로 간소화 (개별 경로 → '@/shared/ui/Skeleton')
- A: 로딩 중 빈 화면(<>) 표시
- B: FeedPostSkeleton + 댓글 스켈레톤(Circle+Text) × 5 표시
- 최소 0.5초 로딩으로 깜빡임 방지, 레이아웃 사전 노출로 CLS 개선
- A는 범용 LoadingSpinner → 탭 전환 시 콘텐츠 구조 미리보기 불가
- B는 탭별 스켈레톤(피드: FeedPostSkeleton, 책: BookSkeletonItem) → 레이아웃 미리 표시
- 최소 500ms 로딩으로 깜빡임 방지
- A는 LoadingSpinner로 전체 페이지 로딩 표시 → 메뉴 구조 확인 불가
- B는 프로필만 스켈레톤, 고정 메뉴는 즉시 표시 → 로딩 중에도 페이지 탐색 가능
- 최소 500ms 로딩으로 프로필 스켈레톤 깜빡임 방지
heeeeyong and others added 27 commits February 26, 2026 06:12
- FollowerListPage: 구버전 loadUserList useCallback 제거, useInifinieScroll 복원
- GroupSearch: 고아 setTimeout·loadMore useCallback 제거,
  searchFirstPage 대신 useInifinieScroll 기반 searchResult 도입
- Memory: fetchPage 내 loadMemoryPosts useCallback 혼입 코드 제거,
  미사용 error/loading 상태 및 LoadingSpinner import 제거
- SavePage: 구버전 loadSavedBooks/loadSavedFeeds/loadAllData
  수동 페이지네이션 코드 제거 (useInifinieScroll 중복)
- SearchBook: 구버전 loadMore useCallback 잔재 제거, LoadingBox import 추가
- useFeedCache: writeFeedCache의 sessionStorage.setItem을 try/catch로
  감싸 쿼터 초과·프라이빗 브라우징 환경에서 예외가 피드 렌더로 전파되지
  않도록 보호
refactor-record: 기록 삭제 후 페이지 새로고침 제거 및 페이지별 보기 입력창 버그 수정
피드 UX 개선 게시글 이동 방식 변경 및 스크롤 위치 복원
fix: 초기 로딩 스켈레톤/무한스크롤 로딩 분리
…ring

fix: 피드 이미지 로딩 최적화 및 FollowerList에 의한 CLS 완화
…ring

fix: Feed/Memory/GroupSearch 머지 충돌 해결
…ring

feat: 이미지 Lazy Loading 적용으로 피드 렌더링 성능 개선
- react-helmet-async 패키지 설치 (v3.0.0)
- main.tsx에 HelmetProvider 추가
- 공통 SEOHead 컴포넌트 생성 (src/components/common/SEOHead.tsx)
  - title, description props 기반 동적 메타태그 주입
  - 기본값: 기존 index.html의 title/description 유지
- SearchBook.tsx: 책 제목(title), 저자명(authorName) 기반 동적 title/description 주입
- GroupDetail.tsx: 모임명(roomName), 책 제목(bookTitle) 기반 동적 title/description 주입
- 데이터 로드 전(null 상태)에는 기본값 유지
- public/robots.txt 추가: 크롤러 허용/차단 경로 명시
- public/sitemap.xml 추가: 주요 경로 정적 sitemap 구성
- Google Search Console 제출로 인덱싱 속도 단축 예정
feat: 구글 검색 유입을 위한 SEO 메타태그 및 크롤링 인프라 구성
@vercel
Copy link
Copy Markdown

vercel Bot commented Mar 5, 2026

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

Project Deployment Actions Updated (UTC)
thip Ready Ready Preview, Comment Mar 5, 2026 6:27am

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 5, 2026

Important

Review skipped

Too many files!

This PR contains 299 files, which is 149 over the limit of 150.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: fb4a6b84-95c1-4d5b-9d90-33f204500c93

📥 Commits

Reviewing files that changed from the base of the PR and between f4a52ab and 99963c7.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (299)
  • package.json
  • public/robots.txt
  • public/sitemap.xml
  • src/api/books/getBookDetail.ts
  • src/api/books/getMostSearchedBooks.ts
  • src/api/books/getRecruitingRooms.ts
  • src/api/books/getSavedBooksInMy.ts
  • src/api/books/getSearchBooks.ts
  • src/api/books/postSaveBook.ts
  • src/api/feeds/createFeed.ts
  • src/api/feeds/getFeedDetail.ts
  • src/api/feeds/getMyFeed.ts
  • src/api/feeds/getMyProfile.ts
  • src/api/feeds/getOtherFeed.ts
  • src/api/feeds/getSavedFeedsInMy.ts
  • src/api/feeds/getTotalFeed.ts
  • src/api/feeds/getWriteInfo.ts
  • src/api/feeds/postSave.ts
  • src/api/feeds/updateFeed.ts
  • src/api/images/uploadImage.ts
  • src/api/index.ts
  • src/api/memory/getMemoryPosts.ts
  • src/api/recentsearch/deleteRecentSearch.ts
  • src/api/record/createAiReview.ts
  • src/api/record/createRecord.ts
  • src/api/record/createVote.ts
  • src/api/record/deleteRecord.ts
  • src/api/record/deleteVote.ts
  • src/api/record/getAiUsage.ts
  • src/api/record/pinRecordToFeed.ts
  • src/api/record/postVote.ts
  • src/api/record/updateRecord.ts
  • src/api/record/updateVote.ts
  • src/api/roomPosts/postRoomPostLike.ts
  • src/api/rooms/createDailyGreeting.ts
  • src/api/rooms/createRoom.ts
  • src/api/rooms/deleteDailyGreeting.ts
  • src/api/rooms/getBookPage.ts
  • src/api/rooms/getDailyGreeting.ts
  • src/api/rooms/getMyRooms.ts
  • src/api/rooms/getRoomDetail.ts
  • src/api/rooms/getRoomMembers.ts
  • src/api/rooms/getRoomPlaying.ts
  • src/api/rooms/getRoomsByCategory.ts
  • src/api/rooms/leaveRoom.ts
  • src/api/users/getOtherProfile.ts
  • src/components/Mypage/EditProfile.tsx
  • src/components/Mypage/MenuButton.styled.ts
  • src/components/Mypage/MenuButton.tsx
  • src/components/common/AsideDecoration.styled.ts
  • src/components/common/AsideDecoration.tsx
  • src/components/common/Blank.styled.ts
  • src/components/common/Blank.tsx
  • src/components/common/BookSearchBottomSheet/BookList.tsx
  • src/components/common/BookSearchBottomSheet/BookSearchBottomSheet.styled.ts
  • src/components/common/BookSearchBottomSheet/BookSearchBottomSheet.tsx
  • src/components/common/BookSearchBottomSheet/useBookSearch.ts
  • src/components/common/CommentBottomSheet/GlobalCommentBottomSheet.styled.ts
  • src/components/common/CommentBottomSheet/GlobalCommentBottomSheet.tsx
  • src/components/common/Fab.styled.ts
  • src/components/common/Fab.tsx
  • src/components/common/Filter.styled.ts
  • src/components/common/Filter.tsx
  • src/components/common/IconButton.styled.ts
  • src/components/common/IconButton.tsx
  • src/components/common/Layout.tsx
  • src/components/common/LoadingSpinner.styled.ts
  • src/components/common/LoadingSpinner.tsx
  • src/components/common/MainHeader.styled.ts
  • src/components/common/MainHeader.tsx
  • src/components/common/Modal/ConfirmModal.styled.ts
  • src/components/common/Modal/ConfirmModal.tsx
  • src/components/common/Modal/CountingBar.styled.ts
  • src/components/common/Modal/CountingBar.tsx
  • src/components/common/Modal/ImageViewer.styled.ts
  • src/components/common/Modal/ImageViewer.tsx
  • src/components/common/Modal/MoreMenu.styled.ts
  • src/components/common/Modal/MoreMenu.tsx
  • src/components/common/Modal/PopupContainer.styled.ts
  • src/components/common/Modal/PopupContainer.tsx
  • src/components/common/Modal/ReplyModal.styled.ts
  • src/components/common/Modal/ReplyModal.tsx
  • src/components/common/Modal/Snackbar.styled.ts
  • src/components/common/Modal/Snackbar.tsx
  • src/components/common/NavBar.styled.ts
  • src/components/common/NavBar.tsx
  • src/components/common/Post/LazyImage.tsx
  • src/components/common/Post/PostBody.styled.ts
  • src/components/common/Post/PostBody.tsx
  • src/components/common/Post/PostFooter.styled.ts
  • src/components/common/Post/PostFooter.tsx
  • src/components/common/Post/PostHeader.styled.ts
  • src/components/common/Post/PostHeader.tsx
  • src/components/common/Post/Reply.styled.ts
  • src/components/common/Post/Reply.tsx
  • src/components/common/Post/ReplyList.styled.ts
  • src/components/common/Post/ReplyList.tsx
  • src/components/common/Post/SubReply.styled.ts
  • src/components/common/Post/SubReply.tsx
  • src/components/common/SEOHead.tsx
  • src/components/common/ScrollToTop.tsx
  • src/components/common/TitleHeader.styled.ts
  • src/components/common/TitleHeader.tsx
  • src/components/common/TokenStatus.styled.ts
  • src/components/common/TokenStatus.tsx
  • src/components/common/Wrapper.styled.ts
  • src/components/common/Wrapper.tsx
  • src/components/creategroup/ActivityPeriodSection/ActivityPeriodSection.tsx
  • src/components/creategroup/ActivityPeriodSection/DateWheel.tsx
  • src/components/creategroup/MemberLimitSection.tsx
  • src/components/creategroup/PrivacySettingSection/PasswordInputSection.styled.ts
  • src/components/creategroup/PrivacySettingSection/PasswordInputSection.tsx
  • src/components/createpost/PhotoSection.tsx
  • src/components/createpost/PostContentSection.styled.ts
  • src/components/createpost/TagSelectionSection.tsx
  • src/components/feed/BookInfoCard.styled.ts
  • src/components/feed/BookInfoCard.tsx
  • src/components/feed/FeedDetailPost.styled.ts
  • src/components/feed/FeedDetailPost.tsx
  • src/components/feed/FeedDetailPostBody.styled.ts
  • src/components/feed/FeedDetailPostBody.tsx
  • src/components/feed/FeedPost.styled.ts
  • src/components/feed/FeedPost.tsx
  • src/components/feed/FollowList.styled.ts
  • src/components/feed/FollowList.tsx
  • src/components/feed/MyFeed.styled.ts
  • src/components/feed/MyFeed.tsx
  • src/components/feed/MyFollower.styled.ts
  • src/components/feed/MyFollower.tsx
  • src/components/feed/OtherFeed.styled.ts
  • src/components/feed/OtherFeed.tsx
  • src/components/feed/Profile.styled.ts
  • src/components/feed/Profile.tsx
  • src/components/feed/TabBar.styled.ts
  • src/components/feed/TabBar.tsx
  • src/components/feed/TotalBar.styled.ts
  • src/components/feed/TotalBar.tsx
  • src/components/feed/TotalFeed.styled.ts
  • src/components/feed/TotalFeed.tsx
  • src/components/feed/UserProfileItem.styled.ts
  • src/components/feed/UserProfileItem.tsx
  • src/components/group/GroupActionBottomSheet.tsx
  • src/components/group/GroupCard.styled.ts
  • src/components/group/GroupCard.tsx
  • src/components/group/HotTopicSection.tsx
  • src/components/group/MyGroupBox.styled.ts
  • src/components/group/MyGroupBox.tsx
  • src/components/group/MyGroupCard.styled.ts
  • src/components/group/MyGroupCard.tsx
  • src/components/group/MyGroupModal.styled.ts
  • src/components/group/MyGroupModal.tsx
  • src/components/group/PasswordModal.styled.ts
  • src/components/group/PasswordModal.tsx
  • src/components/group/RecruitingGroupBox.styled.ts
  • src/components/group/RecruitingGroupBox.tsx
  • src/components/group/RecruitingGroupCarousel.styled.ts
  • src/components/group/RecruitingGroupCarousel.tsx
  • src/components/members/MemberList.tsx
  • src/components/memory/MemoryAddButton/MemoryAddButton.tsx
  • src/components/memory/MemoryContent/MemoryContent.tsx
  • src/components/memory/MemoryContent/RecordList.tsx
  • src/components/memory/RecordFilters/PageInputMode.styled.ts
  • src/components/memory/RecordFilters/RecordFilters.tsx
  • src/components/memory/RecordItem/PollRecord.tsx
  • src/components/memory/RecordItem/RecordItem.tsx
  • src/components/memory/SortDropdown.tsx
  • src/components/memory/UploadProgressBar/UploadProgressBar.styled.ts
  • src/components/memory/UploadProgressBar/UploadProgressBar.tsx
  • src/components/pollwrite/PollCreationSection.tsx
  • src/components/recordwrite/PageRangeSection.styled.ts
  • src/components/recordwrite/PageRangeSection.tsx
  • src/components/recordwrite/RecordContentSection.tsx
  • src/components/search/BookSearchResult.styled.ts
  • src/components/search/BookSearchResult.tsx
  • src/components/search/GroupSearchResult.styled.ts
  • src/components/search/GroupSearchResult.tsx
  • src/components/search/IntroModal.styled.ts
  • src/components/search/IntroModal.tsx
  • src/components/search/MostSearchedBooks.styled.ts
  • src/components/search/MostSearchedBooks.tsx
  • src/components/search/RecentSearchTabs.styled.ts
  • src/components/search/RecentSearchTabs.tsx
  • src/components/search/SearchBar.styled.ts
  • src/components/search/SearchBar.tsx
  • src/components/today-words/MessageInput.styled.ts
  • src/components/today-words/MessageInput.tsx
  • src/components/today-words/MessageList/MessageActionBottomSheet.tsx
  • src/components/today-words/MessageList/MessageList.tsx
  • src/hooks/useCreateFeed.ts
  • src/hooks/useDebouncedCallback.ts
  • src/hooks/useFeedCache.ts
  • src/hooks/useInifinieScroll.ts
  • src/hooks/usePopupActions.ts
  • src/hooks/usePreventDoubleClick.ts
  • src/hooks/useReplyActions.ts
  • src/hooks/useSocialLoginToken.ts
  • src/hooks/useUpdateFeed.ts
  • src/hooks/useUserSearch.ts
  • src/main.tsx
  • src/mocks/book.mock.ts
  • src/mocks/group.mock.ts
  • src/mocks/members.mock.ts
  • src/mocks/post.mock.ts
  • src/mocks/today.mock.ts
  • src/mocks/user.mock.ts
  • src/pages/aiwrite/AIWrite.styled.ts
  • src/pages/aiwrite/AIWrite.tsx
  • src/pages/feed/Feed.styled.ts
  • src/pages/feed/Feed.tsx
  • src/pages/feed/FeedDetailPage.styled.ts
  • src/pages/feed/FeedDetailPage.tsx
  • src/pages/feed/FollowerListPage.syled.ts
  • src/pages/feed/FollowerListPage.tsx
  • src/pages/feed/MyFeedPage.styled.ts
  • src/pages/feed/MyFeedPage.tsx
  • src/pages/feed/OtherFeedPage.tsx
  • src/pages/feed/UserSearch.styled.ts
  • src/pages/feed/UserSearch.tsx
  • src/pages/feed/UserSearchResult.styled.ts
  • src/pages/feed/UserSearchResult.tsx
  • src/pages/group/CreateGroup.tsx
  • src/pages/group/Group.styled.ts
  • src/pages/group/Group.tsx
  • src/pages/groupDetail/GroupDetail.tsx
  • src/pages/groupDetail/ParticipatedGroupDetail.styled.ts
  • src/pages/groupDetail/ParticipatedGroupDetail.tsx
  • src/pages/groupMembers/GroupMembers.tsx
  • src/pages/groupSearch/GroupSearch.styled.ts
  • src/pages/groupSearch/GroupSearch.tsx
  • src/pages/guide/Guide.styled.ts
  • src/pages/guide/Guide.tsx
  • src/pages/index.tsx
  • src/pages/login/Login.styled.ts
  • src/pages/login/Login.tsx
  • src/pages/memory/Memory.styled.ts
  • src/pages/memory/Memory.tsx
  • src/pages/mypage/AlertPage.styled.ts
  • src/pages/mypage/AlertPage.tsx
  • src/pages/mypage/EditPage.tsx
  • src/pages/mypage/Mypage.styled.ts
  • src/pages/mypage/Mypage.tsx
  • src/pages/mypage/SavePage.styled.ts
  • src/pages/mypage/SavePage.tsx
  • src/pages/mypage/WithdrawDonePage.styled.ts
  • src/pages/mypage/WithdrawDonePage.tsx
  • src/pages/mypage/WithdrawPage.styled.ts
  • src/pages/mypage/WithdrawPage.tsx
  • src/pages/notice/Notice.styled.ts
  • src/pages/notice/Notice.tsx
  • src/pages/pollwrite/PollWrite.tsx
  • src/pages/post/CreatePost.tsx
  • src/pages/post/UpdatePost.tsx
  • src/pages/recordwrite/RecordWrite.tsx
  • src/pages/search/ApplyBook.styled.ts
  • src/pages/search/ApplyBook.tsx
  • src/pages/search/Search.styled.ts
  • src/pages/search/Search.tsx
  • src/pages/searchBook/SearchBook.styled.ts
  • src/pages/searchBook/SearchBook.tsx
  • src/pages/searchBook/SearchBookGroup.styled.ts
  • src/pages/searchBook/SearchBookGroup.tsx
  • src/pages/signup/SignupDone.tsx
  • src/pages/signup/SignupGenre.tsx
  • src/pages/signup/SignupNickname.tsx
  • src/pages/today-words/TodayWords.tsx
  • src/shared/lib/analytics/ga.ts
  • src/shared/ui/Skeleton/README.md
  • src/shared/ui/Skeleton/base/Skeleton.styled.ts
  • src/shared/ui/Skeleton/base/Skeleton.tsx
  • src/shared/ui/Skeleton/base/index.ts
  • src/shared/ui/Skeleton/feed/FeedPostSkeleton.styled.ts
  • src/shared/ui/Skeleton/feed/FeedPostSkeleton.tsx
  • src/shared/ui/Skeleton/feed/OtherFeedSkeleton.styled.ts
  • src/shared/ui/Skeleton/feed/OtherFeedSkeleton.tsx
  • src/shared/ui/Skeleton/feed/ProfileSkeleton.styled.ts
  • src/shared/ui/Skeleton/feed/ProfileSkeleton.tsx
  • src/shared/ui/Skeleton/feed/TotalBarSkeleton.styled.ts
  • src/shared/ui/Skeleton/feed/TotalBarSkeleton.tsx
  • src/shared/ui/Skeleton/feed/UserProfileItemSkeleton.tsx
  • src/shared/ui/Skeleton/feed/index.ts
  • src/shared/ui/Skeleton/group/BannerSkeleton.tsx
  • src/shared/ui/Skeleton/group/BookSkeleton.tsx
  • src/shared/ui/Skeleton/group/CommentSectionSkeleton.tsx
  • src/shared/ui/Skeleton/group/GroupBookSectionSkeleton.tsx
  • src/shared/ui/Skeleton/group/GroupCardSkeleton.tsx
  • src/shared/ui/Skeleton/group/GroupDetailSkeleton.styled.ts
  • src/shared/ui/Skeleton/group/GroupDetailSkeleton.tsx
  • src/shared/ui/Skeleton/group/HotTopicSectionSkeleton.tsx
  • src/shared/ui/Skeleton/group/RecordSectionSkeleton.tsx
  • src/shared/ui/Skeleton/group/index.ts
  • src/shared/ui/Skeleton/index.ts
  • src/shared/ui/Skeleton/members/MemberListSkeleton.tsx
  • src/shared/ui/Skeleton/members/index.ts
  • src/shared/ui/Skeleton/memory/RecordItemSkeleton.tsx
  • src/shared/ui/Skeleton/memory/index.ts
  • src/shared/ui/Skeleton/search/MostSearchedBooksSkeleton.tsx
  • src/shared/ui/Skeleton/search/RecentSearchTabsSkeleton.tsx
  • src/shared/ui/Skeleton/search/index.ts
  • src/shared/ui/Skeleton/searchBook/BookDetailSkeleton.tsx

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch refactor

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


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.

@ho0010 ho0010 merged commit 73785bc into develop Mar 5, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants