INNER CODE UNIT · TypeScript
parseBody
bex-co/beancount-io · backend-cluster/agent-box/src/features/control-plane/index.ts:54
async function parseBody<T>(
c: Context,
schema: ZodType<T>,
): Promise<{ ok: true; data: T } | { ok: false; response: Response }> {
let raw: unknown;
try {
raw = await c.req.json();
} catch {
return {
ok: false,
response: c.json({ error: 'Invalid JSON body' }, 400),
};
}
const parsed = schema.safeParse(raw);
if (!parsed.success) {
return {
ok: false,
response: c.json(