SPB Git

Repository Public

layout.tsx 790 B 15 lines tsx

1import { redirect } from "next/navigation";2import { currentAdmin } from "@/lib/auth";3import { getSettings } from "@/lib/services/state";4import { AdminShell } from "@/components/admin/shell";56export const metadata = { title: "Administration", robots: { index: false, follow: false } };78/** Every page below is rendered only for an authenticated owner; the API re-checks on each call. */9export default async function AdminLayout({ children }: { children: React.ReactNode }) {10  const admin = await currentAdmin();11  if (!admin) redirect("/admin/login");12  const s = await getSettings(admin.userId);13  return <AdminShell csrfToken={admin.csrfToken} info={{ timezone: s.timezone, email: admin.email, displayName: admin.displayName, publicName: s.public_name }}>{children}</AdminShell>;14}15
Files main
Menu

Theme