// import { parse } from 'cookie'

import type { Route } from './+types/authorize'

export async function loader({ request, context }: Route.LoaderArgs) {
  const url = new URL(request.url)
  const issuerUrl = new URL('/authorize', context.cloudflare.env.ISSUER_URL)
  issuerUrl.search = url.search

  try {
    const r = await fetch(issuerUrl.toString(), {
      method: 'GET',
      headers: {
        'Content-Type': 'application/json',
        Cookie: request.headers.get('Cookie')
      },
      redirect: 'manual'
    })

    return new Response(await r.text(), {
      status: r.status,
      headers: r.headers
    })
  } catch {
    return new Response(null, { status: 500 })
  }
}
