import { createServerClient } from "@supabase/ssr"; import { type NextRequest, NextResponse } from "next/server"; import { env } from "~/env"; export async function GET(request: NextRequest) { const requestUrl = new URL(request.url); const code = requestUrl.searchParams.get("code"); const origin = requestUrl.origin; const response = NextResponse.redirect(`${origin}/`); if (code) { const supabase = createServerClient( env.NEXT_PUBLIC_SUPABASE_URL, env.NEXT_PUBLIC_SUPABASE_ANON_KEY, { cookies: { getAll() { return request.cookies.getAll(); }, setAll(cookiesToSet) { for (const { name, value, options } of cookiesToSet) { response.cookies.set(name, value, options); } }, }, }, ); await supabase.auth.exchangeCodeForSession(code); } return response; }