Files
warren/frontend/middleware/authenticated.ts
2025-07-21 19:27:41 +02:00

29 lines
712 B
TypeScript

import { getAuthSessionData } from '~/lib/api/auth/getSession';
export default defineNuxtRouteMiddleware(async (to, _from) => {
const session = useAuthSession();
if (session.value != null) {
const result = await getAuthSessionData({
sessionType: session.value.type,
sessionId: session.value.id,
});
if (result.success) {
return;
} else if (result.code === 401) {
session.value = null;
return navigateTo({
path: '/login',
});
}
}
if (to.name === 'login' || to.name === 'register') {
return;
}
return navigateTo({
path: '/login',
});
});