Adds the first admin screen — /tenants — listing tenants from GET /api/v1/admin/tenants with search, status badges, plan, created date, and a per-row menu with suspend / activate / deactivate actions. Hand-typed shapes in app/lib/arcadia/tenants.ts because arcadia's admin endpoints aren't yet covered by /api/openapi (same 'ok'-placeholder issue documented in lib-arcadia-client/scripts/sync-spec.mjs). When the spec gains coverage, switch to arcadia.typed.GET(...) and drop the manual types. Trims the inherited consumer-app sidenav (Resources / Assistant / AI / Library) down to admin-shaped items: Overview, Tenants, Audit log, Settings. The unused route files stay in place; they just aren't linked. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
16 lines
538 B
TypeScript
16 lines
538 B
TypeScript
import { type RouteConfig, index, route } from "@react-router/dev/routes"
|
|
|
|
export default [
|
|
index("routes/home.tsx"),
|
|
route("resources", "routes/resources.tsx"),
|
|
route("activity", "routes/activity.tsx"),
|
|
route("assistant", "routes/assistant.tsx"),
|
|
route("ai", "routes/ai.tsx"),
|
|
route("library", "routes/library.tsx"),
|
|
route("settings", "routes/settings.tsx"),
|
|
route("profile", "routes/profile.tsx"),
|
|
route("login", "routes/login.tsx"),
|
|
route("tenants", "routes/tenants.tsx"),
|
|
// CREMA:ROUTES
|
|
] satisfies RouteConfig
|