import { getSessionAdmin } from '@/lib/auth/dal'; import { AdminShell } from './_components/admin-shell'; // Basic 레이아웃 — 헤더·사이드바·풋터가 있는 일반 관리자 화면 진입점. 보안 강제는 상위 // `(protected)/layout.tsx`가 담당하므로 여기서는 크롬 조립(AdminShell)만 책임진다. page // 콘텐츠는 Server Component로 렌더된 그대로 AdminShell의 children으로 통과한다. // // 헤더 프로필에 쓸 이름만 세션에서 읽는다. **인증 판단은 하지 않는다** — 레이아웃은 Partial // Rendering 때문에 인증 체크 지점으로 부적합하다는 상위 레이아웃의 판단을 그대로 따르므로, // redirect하는 `verifySession()`이 아니라 null을 돌려주는 `getSessionAdmin()`을 쓴다. export default async function Layout({ children, }: Readonly<{ children: React.ReactNode; }>) { const admin = await getSessionAdmin(); return ( {children} ); }