import type { Metadata } from "next";
import { Sidebar } from "@/components/shell/sidebar";
import { Shell } from "@/components/shell/shell";
import { MobileNavProvider } from "@/components/shell/mobile-nav";
import { requireAdmin } from "@/lib/auth/server";

// Espace agence reserve aux admins Novelia. Bloque l'indexation au niveau
// metadata en complement de robots.ts, au cas ou un bot ignore robots.txt.
export const metadata: Metadata = {
  robots: { index: false, follow: false, nocache: true },
};

export default async function AdminLayout({ children }: { children: React.ReactNode }) {
  await requireAdmin();
  return (
    <MobileNavProvider variant="admin" contextLabel="Espace" contextValue="Administration">
      <Sidebar variant="admin" contextLabel="Espace" contextValue="Administration" />
      <Shell>{children}</Shell>
    </MobileNavProvider>
  );
}
