A validar sessão…
) : !authed ? (import { useEffect, useState } from 'react' import { NavLink, Outlet } from 'react-router-dom' import AdminLoginGate from '../components/AdminLoginGate' import { bootstrapAuthFromUrl, clearSession, getUser, isLoggedIn, } from '../lib/auth' const adminNav = [ { to: '/admin', label: 'Início', end: true }, { to: '/admin/dominio', label: 'Domínio & DNS' }, ] const STAFF_ROLES = new Set([ 'super_admin', 'ops_lead', 'technician', 'noc', 'seo', 'devops', 'developer', 'sales_admin', 'sales_support', ]) export default function AdminShell() { const [authReady, setAuthReady] = useState(false) const [authed, setAuthed] = useState(isLoggedIn()) const user = getUser() const subtitle = user && STAFF_ROLES.has(user.role) ? 'Staff · suporte Ligbox' : 'Gerente de domínio' useEffect(() => { let cancelled = false bootstrapAuthFromUrl().then((ok) => { if (!cancelled) { setAuthed(ok) setAuthReady(true) } }) return () => { cancelled = true } }, []) function handleLoginSuccess() { setAuthed(true) } function handleLogout() { clearSession() setAuthed(false) } return (
A validar sessão…
) : !authed ? (