boredgame/src/routes/(auth)/logout/+page.server.ts

23 lines
704 B
TypeScript
Raw Normal View History

import { fail } from '@sveltejs/kit';
import { redirect } from 'sveltekit-flash-message/server';
2024-03-11 06:19:55 +00:00
import { lucia } from '$lib/server/auth';
2024-07-13 00:44:45 +00:00
import { signedOutMessage } from '$lib/flashMessages';
2024-03-11 06:19:55 +00:00
import type { Actions } from "./$types";
2023-05-21 05:18:04 +00:00
export const actions: Actions = {
default: async (event) => {
const { locals, cookies } = event;
console.log('Signing out user');
if (!locals.session) {
return fail(401);
2023-05-21 05:18:04 +00:00
}
await lucia.invalidateSession(locals.session.id);
const sessionCookie = lucia.createBlankSessionCookie();
cookies.set(sessionCookie.name, sessionCookie.value, {
path: '.',
...sessionCookie.attributes
});
2024-07-13 00:44:45 +00:00
return redirect(302, '/login', signedOutMessage, event);
2023-05-21 05:18:04 +00:00
}
};