import { r as redirect } from './index-wpIsICWW.js'; import PocketBase from 'pocketbase'; const POCKETBASE_URL = process.env.VITE_POCKETBASE_URL ?? "https://pocketbase.ccllc.pro"; const LOGIN_PATH = "/login"; const LOGOUT_PATH = "/logout"; function isPublicRoute(pathname) { return pathname === LOGIN_PATH || pathname.startsWith(LOGIN_PATH + "/") || pathname === LOGOUT_PATH; } const handle = async ({ event, resolve }) => { event.locals.pb = new PocketBase(POCKETBASE_URL); event.locals.pb.authStore.loadFromCookie(event.request.headers.get("cookie") ?? ""); try { if (event.locals.pb.authStore.isValid) { await event.locals.pb.collection("users").authRefresh(); } } catch { event.locals.pb.authStore.clear(); } const record = event.locals.pb.authStore.record; event.locals.user = record ? { id: record.id, email: record.email, name: record.name, avatar: record.avatar, darkmode: !!record.darkmode } : null; if (!event.locals.user && !isPublicRoute(event.url.pathname)) { const redirectTo = event.url.pathname + event.url.search; const loginUrl = redirectTo && redirectTo !== "/" ? `${LOGIN_PATH}?redirectTo=${encodeURIComponent(redirectTo)}` : LOGIN_PATH; throw redirect(303, loginUrl); } const response = await resolve(event); response.headers.append( "set-cookie", event.locals.pb.authStore.exportToCookie({ httpOnly: false, sameSite: "Lax" }) ); return response; }; export { handle }; //# sourceMappingURL=hooks.server-DlmQdTt1.js.map