import { NextRequest, NextResponse } from 'next/server';

export const dynamic = 'force-dynamic';

const BACKEND_URL = process.env.BACKEND_URL || 'http://localhost:3000';

/**
 * Parlay calculate proxy (Session 28). Forwards builder legs to Express
 * `/api/parlay/calculate` for combined odds, grade, and correlation flags.
 * Zero-credit pure math — no auth gate (the math reveals nothing private).
 */
export async function POST(req: NextRequest) {
  let body: unknown;
  try {
    body = await req.json();
  } catch {
    return NextResponse.json({ error: 'Invalid JSON.' }, { status: 400 });
  }
  try {
    const upstream = await fetch(`${BACKEND_URL}/api/parlay/calculate`, {
      method: 'POST',
      headers: { 'Content-Type': 'application/json', Accept: 'application/json' },
      body: JSON.stringify(body),
    });
    const data = await upstream.json().catch(() => ({}));
    return NextResponse.json(data, { status: upstream.status });
  } catch {
    return NextResponse.json({ error: 'Parlay service unreachable.' }, { status: 502 });
  }
}
