Files
UHD_Media_Tool/apps/web/app/routes.ts
T
rootandClaude Opus 5.5 e5e42b1f0d feat(web): W3-1 shared console routes, nav, api/sse/query-keys and shared components
- routes.ts registers all workspaces under /console (+ detail routes, engine, audit, login)
- api.ts: cookie session first (credentials include, CSRF header), Bearer only with stored key, 401 -> /login
- sse.ts: shared EventSource with ?after=seq catch-up, backoff reconnect, per-type subscribe
- shared components: data-table, filter-bar, detail-sheet, timeline, json-view, confirm-dialog,
  form-field, kv-list, stat-tile, error/loading states; ui tabs and textarea

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-09-27 20:21:29 +08:00

35 lines
1.7 KiB
TypeScript

import { index, layout, prefix, type RouteConfig, route } from "@react-router/dev/routes";
// 显式路由表(W3-1 维护,其他工作区不改这里)。
// 控制台全部挂在 /console 下;/ 重定向到 /console;/login 为登录页(不经过控制台外壳)。
// 新增工作区:在这里加一行 + components/console/nav.ts 加导航项。
export default [
index("routes/index-redirect.tsx"),
route("login", "routes/login.tsx"),
...prefix("console", [
layout("routes/console/layout.tsx", [
index("routes/console/home.tsx"),
route("inbox", "routes/console/inbox.tsx"),
route("library", "routes/console/library.tsx"),
route("library/:id", "routes/console/library.$id.tsx"),
route("identity", "routes/console/identity.tsx"),
route("organize", "routes/console/organize.tsx"),
route("organize/:id", "routes/console/organize.$id.tsx"),
route("subscriptions", "routes/console/subscriptions.tsx"),
route("preferences", "routes/console/preferences.tsx"),
route("sites", "routes/console/sites.tsx"),
route("sites/:siteId", "routes/console/sites.$siteId.tsx"),
route("sources", "routes/console/sources.tsx"),
route("tasks", "routes/console/tasks.tsx"),
route("tasks/:id", "routes/console/tasks.$id.tsx"),
route("agent", "routes/console/agent.tsx"),
route("agent/:runId", "routes/console/agent.$runId.tsx"),
route("engine", "routes/console/engine.tsx"),
route("engine/:runId", "routes/console/engine.$runId.tsx"),
route("audit", "routes/console/audit.tsx"),
route("settings", "routes/console/settings.tsx"),
]),
]),
route("*", "routes/not-found.tsx"),
] satisfies RouteConfig;