27 lines
645 B
TypeScript
27 lines
645 B
TypeScript
import { getSession } from "../../lib/auth/session";
|
|
import { redirect } from "next/navigation";
|
|
import AdminSidebar from "@/components/admin/AdminSidebar";
|
|
|
|
export default async function AdminLayout({
|
|
children,
|
|
}: {
|
|
children: React.ReactNode
|
|
}) {
|
|
const session = await getSession();
|
|
|
|
if (!session || session.role !== "ADMIN") {
|
|
redirect("/");
|
|
}
|
|
|
|
return (
|
|
<div className="flex min-h-screen bg-gray-50 dark:bg-darkbg">
|
|
<AdminSidebar userName={session.email?.split('@')[0]} />
|
|
<main className="flex-1 overflow-auto">
|
|
<div className="p-8">
|
|
{children}
|
|
</div>
|
|
</main>
|
|
</div>
|
|
);
|
|
}
|