15 lines
570 B
TypeScript
15 lines
570 B
TypeScript
import { requireAdmin } from '@/lib/auth';
|
|
|
|
// v0.71.0 — GET /api/admin/tables (admin only). Lists every user table as [{ name }] in name
|
|
// order, excluding SQLite internals (sqlite_%). Feeds the Admin modal's table picker.
|
|
|
|
export async function GET(req: Request) {
|
|
const guard = await requireAdmin(req);
|
|
if (!guard.ok) return guard.response;
|
|
|
|
const res = guard.inst.raw.exec(
|
|
"SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%' ORDER BY name",
|
|
);
|
|
return Response.json(res[0].values.map((r) => ({ name: String(r[0]) })));
|
|
}
|