import { createBrowserRouter, Navigate, Outlet } from "react-router"; import { RequireAuth } from "@/components/auth/require-auth"; import { RequireFeature } from "@/components/auth/require-feature"; import UserLayout from "@/layouts/user-layout"; import AdminPage from "@/pages/admin"; import { AccessSettingsPage, AnalyticsPage, AnnouncementsPage, CreditOperationsPage, EmailSettingsPage, FeatureAvailabilityPage } from "@/pages/admin/admin-route-pages"; import ChannelsPage from "@/pages/admin/channels/channels-page"; import LogsPage from "@/pages/admin/logs/logs-page"; import RedemptionCodesPage from "@/pages/admin/redemption-codes/redemption-codes-page"; import RuntimePolicySettingsPage from "@/pages/admin/settings/runtime-policy-settings-page"; import DrawingEngineSettingsPage from "@/pages/admin/settings/drawing-engine-settings-page"; import StorageSettingsPage from "@/pages/admin/settings/storage-settings-page"; import StoryboardPromptsPage from "@/pages/admin/storyboard-prompts/storyboard-prompts-page"; import UsersPage from "@/pages/admin/users/users-page"; import AssetsPage from "@/pages/assets"; import { AuthScene } from "@/pages/auth/auth-scene"; import LoginPage from "@/pages/auth/login"; import RegisterPage from "@/pages/auth/register"; import CanvasPage from "@/pages/canvas"; import CanvasProjectPage from "@/pages/canvas/project"; import SharedCanvasPage from "@/pages/canvas/shared"; import CreatePage from "@/pages/create"; import HomePage from "@/pages/home"; import NotFound from "@/pages/not-found"; import RouteErrorPage from "@/pages/route-error"; import SkillsPage from "@/pages/skills"; import TasksPage from "@/pages/tasks"; import WalletPage from "@/pages/wallet"; import ProjectsPage from "@/pages/projects"; import ProjectDetailPage from "@/pages/projects/detail"; import SettingsPage from "@/pages/settings"; import TestVoiceRecording from "@/pages/test-voice-recording"; export const router = createBrowserRouter([ { element: , errorElement: , children: [ { path: "/login", element: }, { path: "/register", element: }, ], }, { path: "/share/canvas/:token", element: , errorElement: }, { element: ( ), errorElement: , children: [ { path: "/", element: }, { path: "/create", element: }, { path: "/home", element: }, { path: "/tasks", element: }, { path: "/assets", element: }, { path: "/skills", element: }, { path: "/wallet", element: }, { path: "/settings", element: }, { path: "/test-voice-recording", element: }, { path: "/projects", element: }, { path: "/projects/:projectId", element: }, { path: "/projects/:projectId/:view", element: }, { path: "/projects/:projectId/chapters/:chapterId", element: }, { path: "/canvas", element: }, { path: "/canvas/:id", element: }, { path: "/admin", element: , children: [ { index: true, element: }, { path: "users", element: }, { path: "channels", element: }, { path: "prompt-templates", element: }, { path: "storyboard-prompts", element: }, { path: "announcements", element: }, { path: "credit-operations", element: }, { path: "redemption-codes", element: }, { path: "logs", element: }, { path: "settings", element: }, { path: "settings/drawing-engine", element: }, { path: "settings/concurrency", element: }, { path: "settings/runtime-policy", element: }, { path: "settings/features", element: }, { path: "settings/access", element: }, { path: "settings/email", element: }, { path: "settings/storage", element: }, ], }, ], }, { path: "*", element: }, ]);