[#33] Feat/31/공통컴포넌트 헤더 - #34
Merged
Hidden character warning
The head ref may contain hidden characters: "Feat/31/\uacf5\ud1b5\ucef4\ud3ec\ub10c\ud2b8_\ud5e4\ub354"
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
❓이슈
📝 Description
GNB(헤더)와 사이드바를 구현하고 관련 API를 연결합니다.
Header
페이지 경로 및 로그인 상태에 따라 4가지 버전으로 분기됩니다.
pathname === '/'LandingHeader— 로고 고정, 비로그인 시 로그인/회원가입, 로그인 시 프로필workspaceId있음WorkspaceDetailHeader— 워크스페이스명, ADMIN이면 관리/초대 버튼 추가workspaceId없음WorkspaceListHeader— '내 워크스페이스' 텍스트 + 프로필fixed top-0으로 항상 상단 고정,z-0으로 모달 등 오버레이 요소 뒤에 위치left값을 분기 처리 (left-16.75 md:left-40 lg:left-75)HeaderUserProfile
picture)가 있으면next/image로 렌더, 없으면<Icon name='profile' />사용Dropdown컴포넌트(variant='profile')를 활용한 드롭다운 표시/mypage로 라우팅, 로그아웃 선택 시signOut실행mousedown이벤트)로 드롭다운 닫기 처리HeaderSkeleton
/api/v1/auth/me응답 전까지 프로필 영역에 스켈레톤 표시WorkspaceDetailHeader는 워크스페이스 조회(wsLoading)와 유저 정보 조회(meLoading)를 독립적으로 처리해 각 영역에 스켈레톤 적용Sidebar
mockWorkspaces) 제거 후/api/v1/workspaces/myAPI 연결useGetMyWorkspaces훅으로 데이터 페칭, 로딩 중SidebarSkeleton표시SidebarHeader를 제외하고SidebarContent영역에만 적용워크스페이스 초대 모달
/api/v1/workspaces/{workspaceId}/inviteAPI 연결404: 워크스페이스를 찾을 수 없습니다.409: 이미 참여 중인 워크스페이스입니다.미들웨어
/workspace/{workspaceId}/settings경로에 대해 MEMBER 역할 접근 차단/workspace/{workspaceId}로 리다이렉트타입 정리
src/types/workspace.ts제거src/apis/workspace/workspace.type.ts로 통합🌀 PR Type
어떤 변경 사항이 있나요?
✅ Checklist
PR Checklist
PR이 다음 요구 사항을 충족하는지 확인하세요.
Test Checklist