fbla26/src/hooks.server.ts
DragonDuck24 4ea6549ac7
All checks were successful
ci / docker_image (push) Successful in 2m55s
ci / deploy (push) Successful in 51s
Lots of dev
2026-02-03 00:23:43 -06:00

26 lines
541 B
TypeScript

import jwt from 'jsonwebtoken';
import * as dotenv from 'dotenv';
dotenv.config({ path: '.env' });
export const handle = async ({ event, resolve }) => {
const JWT = event.cookies.get('jwt');
if (process.env.JWT_SECRET === undefined) {
throw new Error('JWT_SECRET not defined');
}
if (!JWT) {
event.locals.user = null;
} else {
try {
event.locals.user = jwt.verify(JWT, process.env.JWT_SECRET);
} catch {
event.cookies.delete('jwt', { path: '/' });
event.locals.user = null;
}
}
return await resolve(event);
};