import root from "$lib/Utility/root"; import { decodeAuthCookieOrNull } from "$lib/Effect/authCookie"; import type { Handle, RequestEvent } from "@sveltejs/kit"; const redirectWithParameters = ( event: RequestEvent>, string | null>, path: string, ) => { return Response.redirect( root( `${path}${ event.url.searchParams.toString().length > 0 ? `?${event.url.searchParams.toString()}` : "" }`, ), 307, ); }; export const handle: Handle = async ({ event, resolve }) => { const { cookies } = event; const user = cookies.get("user"); if (user) { const decodedUser = decodeAuthCookieOrNull(user); if (decodedUser) event.locals.user = decodedUser; else cookies.delete("user", { path: "/" }); } switch (event.url.pathname) { case "/birthdays": return redirectWithParameters(event, "/tools/birthdays"); case "/wrapped": return redirectWithParameters(event, "/tools/wrapped"); } return await resolve(event); };