aboutsummaryrefslogtreecommitdiffstats
path: root/routes/items.ts
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-02-28 14:14:30 -0800
committerAdam Soltys <[email protected]>2026-02-28 14:14:30 -0800
commita1632ae402d11fdd7ffc360de97c55e0b4fad677 (patch)
treeaad5a1ea73f95dcd055c1d0b4ebf2708c36b4e01 /routes/items.ts
parent76c7e52172f3dc25ee109434157d4d982ad9d2bd (diff)
downloadcoinos-server-a1632ae402d11fdd7ffc360de97c55e0b4fad677.tar.gz
coinos-server-a1632ae402d11fdd7ffc360de97c55e0b4fad677.zip
migrate to hono
Diffstat (limited to 'routes/items.ts')
-rw-r--r--routes/items.ts59
1 files changed, 27 insertions, 32 deletions
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);
}
},
};