import * as z from "zod"; import { requireAdmin } from "@/lib/auth/server"; import { discardUnreferencedMedia } from "@/lib/media/repository"; export async function DELETE( _request: Request, context: { params: Promise<{ id: string }> }, ) { await requireAdmin(); const { id } = await context.params; if (!z.string().uuid().safeParse(id).success) { return Response.json({ error: "invalid-id" }, { status: 400 }); } const deleted = await discardUnreferencedMedia(id); return deleted ? new Response(null, { status: 204 }) : Response.json({ error: "media-is-referenced-or-missing" }, { status: 409 }); }