import { createClient } from "@/lib/supabase/server"; import { requireUser } from "@/lib/api/auth"; import { apiError, apiSuccess } from "@/lib/api/errors"; import { getMasterCalendarMatches } from "@/lib/services/calendar"; import { resolvePortalRole } from "@/lib/auth/resolve-portal-role"; export async function GET(request: Request) { try { const supabase = await createClient(); const user = await requireUser(supabase); const { role } = await resolvePortalRole(supabase, user); if (role !== "league_master") { return apiError(new Error("League master access required")); } const { searchParams } = new URL(request.url); const from = searchParams.get("from"); const to = searchParams.get("to"); if (!from || !to) { return apiError(new Error("from and to query params required")); } const data = await getMasterCalendarMatches( supabase, user.id, false, from, to ); return apiSuccess(data); } catch (e) { return apiError(e); } }