src/hooks.server.ts 480 B raw
1
import type { Handle } from "@sveltejs/kit";
2
import { verifySession } from "$lib";
3
4
export const handle: Handle = async ({ event, resolve }) => {
5
	const sessionCookie = event.cookies.get("session");
6
	const secret = event.platform?.env?.SESSION_SECRET;
7
8
	if (sessionCookie && secret) {
9
		const isValid = await verifySession(sessionCookie, secret);
10
		event.locals.user = isValid ? { authenticated: true } : null;
11
	} else {
12
		event.locals.user = null;
13
	}
14
15
	return resolve(event);
16
};