spb/autoscholar
Public
1import { createProject, listProjects } from "@autoscholar/core";2import { CreateProjectRequest } from "@autoscholar/schemas";3import { handler, json, parseBody } from "@/lib/server/api";4import { db } from "@/lib/server/db";5import { requireAdmin } from "@/lib/server/session";67export const runtime = "nodejs";89export const GET = handler(async (req) => {10 await requireAdmin(req);11 return json({ projects: await listProjects(db()) });12});1314export const POST = handler(async (req) => {15 const sess = await requireAdmin(req, { mutation: true });16 const body = await parseBody(req, CreateProjectRequest, 16 * 1024);17 const project = await createProject(db(), body, { id: sess.userId, ip: sess.ip });18 return json({ project }, { status: 201 });19});20