import { NextRequest, NextResponse } from "next/server"; import { prisma } from "@/lib/db"; export async function PATCH(request: NextRequest) { try { const body = await request.json(); const { items } = body; if (!Array.isArray(items)) { return NextResponse.json({ error: "Invalid input" }, { status: 400 }); } // items should be an array of { id, sortOrder, groupId } // Using a transaction to perform all updates await prisma.$transaction( items.map((item: any) => prisma.quizSet.update({ where: { id: item.id }, data: { sortOrder: item.sortOrder, groupId: item.groupId, }, }) ) ); return NextResponse.json({ success: true }); } catch (error) { return NextResponse.json({ error: "Failed to reorder quizzes" }, { status: 500 }); } }