diff --git a/src/app.tsx b/src/app.tsx index 03fabaf..b510aae 100644 --- a/src/app.tsx +++ b/src/app.tsx @@ -1,13 +1,16 @@ import { FunctionComponent } from "preact"; import { ErrorBoundary, lazy, LocationProvider, Route, Router, useLocation } from "preact-iso"; import "preact/debug"; +import Page404 from "./pages/404"; import LoginPage from "./pages/login"; -import { AppProvider } from "./providers/AuthProvider"; +import { AppProvider, useAppContext } from "./providers/AuthProvider"; const HomePage: FunctionComponent = () => { const { route } = useLocation(); - route("/login"); - return
Redirecting to login...
; + const { isLoggedIn } = useAppContext(); + if (isLoggedIn) route("/profile/tasks", true); + else route("/login", true); + return
Redirecting...
; }; export function App() { @@ -19,7 +22,7 @@ export function App() { import("./pages/profile"))} /> -

404

} /> + } /> diff --git a/src/pages/404.module.scss b/src/pages/404.module.scss new file mode 100644 index 0000000..f6ce9f3 --- /dev/null +++ b/src/pages/404.module.scss @@ -0,0 +1,9 @@ +@reference "../index.scss"; + +#container { + @apply flex h-screen w-full flex-col items-center justify-center; +} + +#main_container { + @apply flex flex-col items-center gap-8; +} diff --git a/src/pages/404.tsx b/src/pages/404.tsx new file mode 100644 index 0000000..1bfe437 --- /dev/null +++ b/src/pages/404.tsx @@ -0,0 +1,30 @@ +import Button from "@/components/ui/Button"; +import { UrlsTitle } from "@/enums/urls"; +import { FunctionComponent } from "preact"; +import { useLocation } from "preact-iso"; +import { useEffect } from "preact/hooks"; +import classes from "./404.module.scss"; + +const Page404: FunctionComponent = () => { + const { route } = useLocation(); + useEffect(() => { + document.title = UrlsTitle.PAGE404; + }, []); + return ( +
+
+

404

+ +
+
+ ); +}; + +export default Page404;