summaryrefslogtreecommitdiff
path: root/packages/demobank-ui/src/pages/Routing.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'packages/demobank-ui/src/pages/Routing.tsx')
-rw-r--r--packages/demobank-ui/src/pages/Routing.tsx28
1 files changed, 28 insertions, 0 deletions
diff --git a/packages/demobank-ui/src/pages/Routing.tsx b/packages/demobank-ui/src/pages/Routing.tsx
new file mode 100644
index 000000000..cfc6a4bd8
--- /dev/null
+++ b/packages/demobank-ui/src/pages/Routing.tsx
@@ -0,0 +1,28 @@
+import { createHashHistory } from "history";
+import { h, VNode } from "preact";
+import Router, { route, Route } from "preact-router";
+import { useEffect } from "preact/hooks";
+import {
+ AccountPage,
+ PublicHistoriesPage,
+ RegistrationPage,
+} from "./home/index.js";
+
+export function Routing(): VNode {
+ const history = createHashHistory();
+ return (
+ <Router history={history}>
+ <Route path="/public-accounts" component={PublicHistoriesPage} />
+ <Route path="/register" component={RegistrationPage} />
+ <Route path="/account/:id*" component={AccountPage} />
+ <Route default component={Redirect} to="/account" />
+ </Router>
+ );
+}
+
+function Redirect({ to }: { to: string }): VNode {
+ useEffect(() => {
+ route(to, true);
+ }, []);
+ return <div>being redirected to {to}</div>;
+}