Files
aranroig.com/frontend/app/middleware/admin-auth.ts
Aran Roig 770f302bc3
All checks were successful
Build and Deploy Nuxt / build (push) Successful in 2m26s
Cards!
2026-09-20 03:15:16 +02:00

15 lines
377 B
TypeScript

// Protects /admin pages: requires a stored admin token.
export default defineNuxtRouteMiddleware((to) => {
const token = useCookie<string | null>('admin_token')
const isLoginPage = to.path.endsWith('/admin/login')
if (!token.value && !isLoginPage) {
return navigateTo('/admin/login')
}
if (token.value && isLoginPage) {
return navigateTo('/admin')
}
})