All checks were successful
Build and Deploy Nuxt / build (push) Successful in 2m26s
15 lines
377 B
TypeScript
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')
|
|
}
|
|
})
|