'use client'; import { Role } from '@/enums/role.enum'; import { useAuthState } from '@/state/auth-state'; import Link from 'next/link'; import { usePathname } from 'next/navigation'; import { useEffect } from 'react'; const subPages = [ { name: 'Events', href: '/admin/events', }, { name: 'Users', href: '/admin/users', }, ]; export default function AdminPageLayout({ children, }: { children: React.ReactNode; }) { const pathname = usePathname(); const getUser = useAuthState((s) => s.getUser); useEffect(() => { getUser().then((u) => { if (!u || !u.roles.includes(Role.Admin)) window.location.replace('/'); }); }, []); return ( <>

Admin Page

{subPages.map(({ name, href }) => ( {name} ))}
{children}
); }