import { NextResponse } from "next/server"; import { errorResponse, requireReady } from "../_lib"; import { getSettings, rejectWorkspaceForgery, updateSettings } from "@/server/spreadsheet-adapter/service"; export const runtime = "nodejs"; export const dynamic = "force-dynamic"; export async function GET() { try { const { ctx, deps } = await requireReady("read"); return NextResponse.json(await getSettings(deps, ctx)); } catch (error) { return errorResponse(error); } } export async function PATCH(request: Request) { try { const { ctx, deps } = await requireReady("mutation"); const body = (await request.json()) as { allowNonAdminModelUpload?: boolean; workspace_id?: string }; await rejectWorkspaceForgery(deps, ctx, body.workspace_id); if (typeof body.allowNonAdminModelUpload !== "boolean") { return NextResponse.json({ error: { code: "INVALID_SETTING", message: "Informe o valor da configuração." } }, { status: 400 }); } await updateSettings(deps, ctx, body.allowNonAdminModelUpload); return NextResponse.json(await getSettings(deps, ctx)); } catch (error) { return errorResponse(error); } }