feat: add users and templates routes, enhance existing API routes

New routes:
- GET /users — list all users
- GET/POST /templates — list and create templates
- PATCH /templates/:id — update template
- POST /templates/preview — render template with ticket/demo context

Enhanced routes:
- tickets: custom field support on create, status classification helper
- custom-fields: PATCH endpoint, auto-generate short key from name
- lifecycles: PATCH endpoint
- queues: PATCH endpoint

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Gjermund Høsøien Wiggen
2026-06-09 10:43:08 +02:00
parent e960df61ad
commit 54ef6fcc5b
6 changed files with 675 additions and 28 deletions

17
src/routes/users.ts Normal file
View File

@@ -0,0 +1,17 @@
import { Hono } from 'hono';
import { asc } from 'drizzle-orm';
import type { Db } from '../db/index.ts';
import { users } from '../db/schema.ts';
export function createUsersRouter(db: Db): Hono {
const router = new Hono();
router.get('/', async (c) => {
const result = await db.query.users.findMany({
orderBy: asc(users.username),
});
return c.json(result);
});
return router;
}