사이드바 「관리자정보관리 > 관리자 회원」(/admins) 신설.
목록은 백엔드 GET /api/v1/mngr/admin/pagination으로 조회하고,
등록·수정·삭제는 백엔드 API가 없어 메모리 mock 오버레이로 처리한다
(lib/data/mock/admin-member-store.ts — API 추가 시 Repository 세 함수만 교체).
백엔드 계약 확인에 따른 결정:
- 응답에 휴대전화번호·이메일·생성일이 없어 해당 열은 `-`로 표기(열은 유지)
- totalCount가 현재 페이지 행 수라 신뢰할 수 없어, 전체를 받아 서버에서
검색·정렬·페이징한다(총건수 확정 → 번호 역순·현재페이지 표기 성립)
- searchCondition=3(휴대전화번호)이 TB_ADM_USER에 없는 USER_TELNO를
참조해 검색 대상에서 제외
- admRoleCd 코드 정의가 백엔드에 없어 잠정 매핑 + 미지의 코드는 원문 노출
엑셀다운로드는 버튼만 배치(추후 진행), 아이콘 부재로 관리 열은 텍스트 버튼.
Co-Authored-By: Claude Opus 5
「학생 회원」을 「회원정보관리」 그룹의 자식으로 두는 기획(Figma ADM_MEM_101) 2단
구조를 반영. flat SIDEBAR_NAV_ITEMS를 링크/그룹 판별 유니언(SidebarNavNode)으로
바꾸고, 그룹 펼침/접힘 상태와 활성 링크·그룹 판정은 신규 훅 useSidebarNav로 분리했다.
현재 경로가 속한 그룹은 항상 펼쳐지도록 use-sidebar.ts와 동일한 "렌더 중 상태
조정" 패턴을 사용해 useEffect 없이 pathname 변화를 반영한다(사용자가 수동으로
접은 그룹은 같은 그룹 내 이동 시 강제로 재펼침하지 않음).
design 레인의 SidebarGroup(신설)과 SidebarLink의 isNested prop이 아직 없어
관련 tsc 에러 2건이 남아있다 — 병합 후 동기화 단계에서 해소 예정.
Co-Authored-By: Claude Opus 5