CI / build + unit + e2e (pull_request) Successful in 3m47s
- ADMIN button in the mission-control header opens a table picker + row grid with add/edit/delete (components/admin-panel.tsx), deliberately unauthenticated by explicit request
- /api/admin/tables and /api/admin/tables/{name}/rows driven off a name→table registry built from lib/db/schema.ts (lib/db/admin.ts) — no per-table code; 404 unknown table, 400 malformed payload, 409 constraint violation
- OpenAPI spec updated for all four admin operations + Admin* schemas
- unit: lib/db/admin.test.ts (registry, CRUD round-trips, composite PKs, error mapping); e2e: read-only admin.spec.ts
43 lines
1.1 KiB
JSON
43 lines
1.1 KiB
JSON
{
|
|
"name": "space-wanderer",
|
|
"version": "0.9.12",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev -p 3000",
|
|
"build": "next build",
|
|
"start": "next start -p 3000",
|
|
"test": "vitest run",
|
|
"typecheck": "tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@radix-ui/react-progress": "^1.1.8",
|
|
"@radix-ui/react-slot": "^1.2.4",
|
|
"@radix-ui/react-tabs": "^1.1.13",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"d3-force": "^3.0.0",
|
|
"d3-selection": "^3.0.0",
|
|
"d3-zoom": "^3.0.0",
|
|
"drizzle-orm": "^0.45.2",
|
|
"next": "^16.3.5",
|
|
"react": "^19.3.0",
|
|
"react-dom": "^19.3.0",
|
|
"sql.js": "^1.14.2",
|
|
"tailwind-merge": "^3.5.0"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "1.63.0",
|
|
"@tailwindcss/postcss": "^4.2.0",
|
|
"@types/d3-force": "^3.0.10",
|
|
"@types/d3-selection": "^3.0.12",
|
|
"@types/d3-zoom": "^3.0.9",
|
|
"@types/node": "^22.20.3",
|
|
"@types/react": "^19.3.0",
|
|
"@types/react-dom": "^19.3.0",
|
|
"@types/sql.js": "^1.4.11",
|
|
"tailwindcss": "^4.2.0",
|
|
"typescript": "^7.0.2",
|
|
"vitest": "^5.0.1"
|
|
}
|
|
}
|