import { NextResponse } from 'next/server'; import db from '@/lib/db'; export const dynamic = 'force-dynamic'; type Params = { params: Promise<{ id: string }> }; export async function PUT(request: Request, { params }: Params) { const { id } = await params; const { name } = await request.json(); const existing = db.prepare('SELECT * FROM groups WHERE id = ?').get(Number(id)); if (!existing) return NextResponse.json({ error: 'Not found' }, { status: 404 }); if (!name?.trim()) return NextResponse.json({ error: 'Name is required' }, { status: 400 }); db.prepare('UPDATE groups SET name = ? WHERE id = ?').run(name.trim(), Number(id)); const updated = db.prepare('SELECT * FROM groups WHERE id = ?').get(Number(id)); return NextResponse.json(updated); } export async function DELETE(_req: Request, { params }: Params) { const { id } = await params; const existing = db.prepare('SELECT * FROM groups WHERE id = ?').get(Number(id)); if (!existing) return NextResponse.json({ error: 'Not found' }, { status: 404 }); db.transaction(() => { db.prepare('UPDATE counters SET group_id = NULL WHERE group_id = ?').run(Number(id)); db.prepare('DELETE FROM groups WHERE id = ?').run(Number(id)); })(); return new NextResponse(null, { status: 204 }); }