Spaces:
Running
Running
File size: 1,509 Bytes
8fe4e41 97c9ed9 32d4546 8fe4e41 4d9392e 97c9ed9 8fe4e41 4d9392e 97c9ed9 4d9392e 8fe4e41 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import "@xyflow/react/dist/style.css";
import "./index.css";
import {
Link,
Route,
RouterProvider,
createBrowserRouter,
createRoutesFromElements,
useRouteError,
} from "react-router";
import Code from "./Code.tsx";
import Directory from "./Directory.tsx";
import Workspace from "./workspace/Workspace.tsx";
function WorkspaceError() {
const error = useRouteError();
const stack = error instanceof Error ? error.stack : null;
return (
<div className="hero min-h-screen">
<div className="card bg-base-100 shadow-sm">
<div className="card-body">
<h2 className="card-title">Something went wrong...</h2>
<pre>{stack || "Unknown error."}</pre>
<div className="card-actions justify-end">
<Link to="/" className="btn btn-primary">
Close workspace
</Link>
</div>
</div>
</div>
</div>
);
}
const router = createBrowserRouter(
createRoutesFromElements(
<>
<Route path="/" element={<Directory />} />
<Route path="/dir" element={<Directory />} />
<Route path="/dir/*" element={<Directory />} />
<Route path="/edit/*" element={<Workspace />} errorElement={<WorkspaceError />} />
<Route path="/code/*" element={<Code />} />
</>,
),
);
createRoot(document.getElementById("root")!).render(
<StrictMode>
<RouterProvider router={router} />
</StrictMode>,
);
|