From a1632ae402d11fdd7ffc360de97c55e0b4fad677 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Sat, 28 Feb 2026 14:14:30 -0800 Subject: migrate to hono --- routes/items.ts | 59 ++++++++++++++++++++++++++------------------------------- 1 file changed, 27 insertions(+), 32 deletions(-) (limited to 'routes/items.ts') diff --git a/routes/items.ts b/routes/items.ts index df1d86ea..b9706b4c 100644 --- a/routes/items.ts +++ b/routes/items.ts @@ -3,10 +3,8 @@ import { v4 } from "uuid"; import { bail, fail } from "$lib/utils"; export default { - async list(req, res) { - const { - params: { id: uid }, - } = req; + async list(c) { + const uid = c.req.param("id"); const items = []; for (const id of await db.lRange(`${uid}:items`, 0, -1)) { const item = await g(`item:${id}`); @@ -14,27 +12,24 @@ export default { else await db.lRem(`${uid}:items`, 0, id); } - res.send(items); + return c.json(items); }, - async get(req, res) { - const { - params: { id }, - } = req; + async get(c) { + const id = c.req.param("id"); try { const item = await g(`item:${id}`); if (!item) fail("Item not found"); - res.send(item); + return c.json(item); } catch (e) { - bail(res, e.message); + return bail(c, e.message); } }, - async create(req, res) { - const { - body: item, - user: { id }, - } = req; + async create(c) { + const item = await c.req.json(); + const user = c.get("user"); + const { id } = user; try { if (!item.id) { item.id = v4(); @@ -46,33 +41,33 @@ export default { await s(`item:${item.id}`, item); - res.send(item); + return c.json(item); } catch (e) { - bail(res, e.message); + return bail(c, e.message); } }, - async del(req, res) { - const { - body: { item }, - user: { id }, - } = req; + async del(c) { + const body = await c.req.json(); + const { item } = body; + const user = c.get("user"); + const { id } = user; try { const n = await db.lRem(`${id}:items`, 0, item.id); if (n) db.del(`item:${item.id}`); else fail("item not found"); - res.send({}); + return c.json({}); } catch (e) { - bail(res, e.message); + return bail(c, e.message); } }, - async sort(req, res) { - const { - body: { items }, - user: { id }, - } = req; + async sort(c) { + const body = await c.req.json(); + const { items } = body; + const user = c.get("user"); + const { id } = user; try { await db.del(`${id}:items`); @@ -80,9 +75,9 @@ export default { await db.rPush(`${id}:items`, item.id); } - res.send({}); + return c.json({}); } catch (e) { - bail(res, e.message); + return bail(c, e.message); } }, }; -- cgit v1.2.3