import { NextResponse } from "next/server"; import { ID, MEDIA_BUCKET_ID, storage, } from "@/lib/appwrite-rest"; import { requireSessionSecret } from "@/lib/auth"; export const runtime = "nodejs"; export async function POST(req: Request) { const secret = await requireSessionSecret(); const formData = await req.formData(); const file = formData.get("file"); if (!(file instanceof File) || file.size === 0) { return NextResponse.json({ error: "Dosya seçilmedi" }, { status: 400 }); } try { const created = await storage.createFile( MEDIA_BUCKET_ID, ID.unique(), file, secret, ); return NextResponse.json({ id: created.$id, name: created.name, size: created.sizeOriginal, mimeType: created.mimeType, url: storage.fileViewUrl(MEDIA_BUCKET_ID, created.$id), }); } catch (err) { const msg = err instanceof Error ? err.message : "Yükleme başarısız"; return NextResponse.json({ error: msg }, { status: 500 }); } }