mosaicmap/app/admin/layout.tsx
2025-08-12 21:25:52 +08:00

35 lines
955 B
TypeScript

import { cookies } from "next/headers"
import { AppSidebar } from "./sidebar"
import { SiteHeader } from "./site-header"
import {
SidebarInset,
SidebarProvider,
} from "@/components/ui/sidebar"
import { redirect } from "next/navigation"
export default async function Layout({ children }: { children: React.ReactNode }) {
const isLoggedIn = (await cookies()).get('jwt')?.value
if (!isLoggedIn) {
redirect('/login')
}
return (
<SidebarProvider
style={
{
"--sidebar-width": "calc(var(--spacing) * 72)",
"--header-height": "calc(var(--spacing) * 12)",
} as React.CSSProperties
}
>
<AppSidebar variant="inset" />
<SidebarInset>
<div className="h-[100px]">
{children}
</div>
</SidebarInset>
</SidebarProvider>
)
}