const PUBLIC_PREFIXES = ["/share"]; const AUTH_PATHS = ["/login", "/register"]; function isPublic(toPath: string) { return PUBLIC_PREFIXES.some(p => toPath.startsWith(p)); } export default defineNuxtRouteMiddleware((to) => { const { isLoggedIn } = useAuth(); if (isLoggedIn.value && AUTH_PATHS.includes(to.path)) { return navigateTo("/inbox"); } if (!AUTH_PATHS.includes(to.path) && !isPublic(to.path) && !isLoggedIn.value) { return navigateTo("/login?redirect=" + encodeURIComponent(to.fullPath)); } });