import { NextRequest } from "next/server";
import { getSportsbookLobby } from "@/server/queries/lobby";
import { toSportsLobbyBoostedOdds, toSportsLobbyEvents, toSportsLobbyPromotions, toSportsLobbySports } from "@/server/queries/lobby-view";
import { ok } from "@/server/http";

export const dynamic = "force-dynamic";

export async function GET(request: NextRequest) {
  const sportSlug = request.nextUrl.searchParams.get("sport") ?? undefined;
  const liveOnly = request.nextUrl.searchParams.get("live") === "true";
  const data = await getSportsbookLobby({ sportSlug, liveOnly });
  return ok({
    sports: toSportsLobbySports(data.sports),
    events: toSportsLobbyEvents(data.events),
    boostedOdds: toSportsLobbyBoostedOdds(data.boostedOdds),
    sportsPromotions: toSportsLobbyPromotions(data.sportsPromotions),
    unavailable: data.unavailable
  });
}
