From 7fdaea73c5c67565202e19d6182fc215427919c3 Mon Sep 17 00:00:00 2001 From: memdmp Date: Tue, 19 Aug 2025 20:40:19 +0000 Subject: feat: oidc attempt 1 --- src/hooks.server.ts | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 src/hooks.server.ts (limited to 'src/hooks.server.ts') diff --git a/src/hooks.server.ts b/src/hooks.server.ts new file mode 100644 index 0000000..2fe3744 --- /dev/null +++ b/src/hooks.server.ts @@ -0,0 +1,32 @@ +import * as auth from './lib/auth.server'; +import * as client from 'openid-client'; + +// https://svelte.dev/docs/kit/hooks#Server-hooks-handle +export const handle = ({ event, resolve }) => { + event.locals.auth = async () => { + const accessToken = event.cookies.get('oid__access_token'); + const sub = event.cookies.get('oid__sub'); + console.warn({ accessToken, sub }); + if (accessToken && sub) { + try { + const userInfo = await client + .fetchUserInfo(await auth.getConfig(), accessToken, sub) + .catch((e) => { + console.warn(e); + + return null; + }); + console.warn({ + userInfo, + accessToken, + sub, + }); + } catch (error) {} + } else if (accessToken || sub) { + event.cookies.delete('access-token', { path: '/' }); + event.cookies.delete('sub', { path: '/' }); + } + return null; + }; + return resolve(event); +}; -- cgit v1.2.3