import { useEffect, useState } from "react"; import { Navigate, Outlet, Route, Routes, useLocation, useNavigate } from "react-router-dom"; import { getSession, restoreSession } from "./lib/api"; import Layout from "./components/Layout"; import LoginPage from "./pages/LoginPage"; import OverviewPage from "./pages/OverviewPage"; import GraphPage from "./pages/GraphPage"; import DataPage from "./pages/DataPage"; import ObservationsPage from "./pages/ObservationsPage"; import VectorsPage from "./pages/VectorsPage"; import TasksPage from "./pages/TasksPage"; import IngestPage from "./pages/IngestPage"; import WorkspaceSettingsPage from "./pages/WorkspaceSettingsPage"; import { WorkspaceProvider, useWorkspace } from "./workspaces/WorkspaceProvider"; import { legacySection, workspacePath } from "./workspaces/workspaceRoutes"; function RequireAuth({ children }: { children: React.ReactNode }) { const [loading, setLoading] = useState(!getSession()); useEffect(() => { if (getSession()) { setLoading(false); return; } let mounted = true; restoreSession().catch(() => null).finally(() => { if (mounted) setLoading(false); }); return () => { mounted = false; }; }, []); if (loading) return
The workspace “{requestedSlug}” is unavailable.
This workspace is read-only and cannot execute brain operations.
{canManageWorkspaces ? "Create your first workspace with the + action." : "Your credentials do not have an accessible workspace."}