diff --git a/src/app/api/leads/route.ts b/src/app/api/leads/route.ts index 7563c76..5e39df5 100644 --- a/src/app/api/leads/route.ts +++ b/src/app/api/leads/route.ts @@ -21,7 +21,10 @@ export async function POST(request: Request) { ); } - const lead = await (db as any).lead.create({ + // Use typed db client - keeping (db as any) temporarily if types are missing locally, + // but cleaner code should use db.lead directly. + // We will trust the user to run `npm run build` which runs `prisma generate`. + const lead = await db.lead.create({ data: { email: email.toLowerCase().trim(), source: source || 'reprint-calculator', @@ -34,8 +37,12 @@ export async function POST(request: Request) { return NextResponse.json({ success: true, id: lead.id }); } catch (error) { console.error('Error saving lead:', error); + // Return the actual error message for debugging purposes return NextResponse.json( - { error: 'Failed to save lead' }, + { + error: 'Failed to save lead', + details: error instanceof Error ? error.message : String(error) + }, { status: 500 } ); } @@ -44,7 +51,7 @@ export async function POST(request: Request) { export async function GET() { try { const [leads, total] = await Promise.all([ - (db as any).lead.findMany({ + db.lead.findMany({ orderBy: { createdAt: 'desc' }, take: 10, }),