---
export const prerender = false;
import { env } from 'cloudflare:workers';
import Base from '../../layouts/Base.astro';
import AdminApp from '../../components/admin/AdminApp';
import { requireAdmin } from '../../lib/auth';

try {
  await requireAdmin(Astro.request, env, Astro.cookies);
} catch (error) {
  const name = (error as { name?: string }).name;
  if (name === 'InvalidSessionError' || name === 'RoleDeniedError') {
    return Astro.redirect('/admin/login');
  }
  throw error;
}

---

<Base title="Privacy & consent · mod-cms admin" description="Privacy policy + cookie consent for mod-cms">
  <AdminApp client:load screen="privacy" />
</Base>
