import { NextResponse } from 'next/server'; import { apiWrite } from '@/lib/server/guard'; import { createDoc, docInputSchema, listDocsAdmin } from '@/lib/server/content'; export const dynamic = 'force-dynamic'; export async function GET(request: Request) { const g = await apiWrite(); if (g.error) return g.error; const { searchParams } = new URL(request.url); const status = searchParams.get('status') || undefined; const docs = await listDocsAdmin(status); return NextResponse.json({ docs }); } export async function POST(request: Request) { const g = await apiWrite(); if (g.error) return g.error; const parsed = docInputSchema.safeParse(await request.json().catch(() => ({}))); if (!parsed.success) return NextResponse.json({ error: 'Invalid doc', issues: parsed.error.flatten() }, { status: 400 }); const result = await createDoc(parsed.data, g.user); if (!result.ok) return NextResponse.json({ error: result.error }, { status: 400 }); return NextResponse.json({ doc: result.doc }, { status: 201 }); }