import { NextResponse } from "next/server"; import { requireAdmin } from "@/lib/auth/server"; import { uploadPublicMedia } from "@/lib/media/repository"; export async function POST(request: Request) { const admin = await requireAdmin(); const form = await request.formData(); const file = form.get("file"); if (!(file instanceof File)) { return NextResponse.json({ error: "กรุณาเลือกไฟล์รูปภาพ" }, { status: 400 }); } try { return NextResponse.json(await uploadPublicMedia(file, admin.user.id), { status: 201 }); } catch (cause) { return NextResponse.json( { error: cause instanceof Error ? cause.message : "อัปโหลดไม่สำเร็จ" }, { status: 400 }, ); } }