import { z } from "zod"; import { readJson, withApi } from "@/lib/api"; import { createUniverse, listUniverses } from "@/lib/universes"; /** GET /api/v1/universen — eigene und geteilte Universen. */ export const GET = withApi(async (_request, user) => { const universes = await listUniverses(user.id); return { total: universes.length, items: universes }; }); const createSchema = z.object({ name: z.string().trim().min(1).max(120), description: z.string().max(2000).optional(), }); /** POST /api/v1/universen — neues Universum anlegen. */ export const POST = withApi(async (request, user) => { const body = await readJson(request, createSchema); const universe = await createUniverse(user.id, body.name, body.description); return { id: universe.id, name: universe.name, slug: universe.slug }; });