import { NextRequest, NextResponse } from "next/server"; import { loadProject, saveProject } from "@/lib/storage"; import type { Project } from "@/types"; export const runtime = "nodejs"; export async function GET(req: NextRequest) { const id = req.nextUrl.searchParams.get("id"); if (!id) return NextResponse.json({ error: "Missing id" }, { status: 400 }); const project = await loadProject(id); if (!project) return NextResponse.json({ error: "Project not found" }, { status: 404 }); return NextResponse.json(project); } export async function PUT(req: NextRequest) { try { const body = (await req.json()) as Project; if (!body?.id) return NextResponse.json({ error: "Missing project id" }, { status: 400 }); const existing = await loadProject(body.id); if (!existing) return NextResponse.json({ error: "Project not found" }, { status: 404 }); const updated: Project = { ...existing, captions: body.captions ?? existing.captions, style: body.style ?? existing.style, layout: body.layout ?? existing.layout, animation: body.animation ?? existing.animation, status: body.status ?? existing.status, }; await saveProject(updated); return NextResponse.json(updated); } catch (error) { return NextResponse.json( { error: error instanceof Error ? error.message : "Save failed" }, { status: 500 }, ); } }