Style/Revamp #4

Merged
me merged 12 commits from feature/home_revamp into main 2026-05-08 03:16:16 +00:00
Showing only changes of commit 167b1d2875 - Show all commits
+77 -73
View File
@@ -1,6 +1,6 @@
import { lazy, Suspense, useEffect, useRef } from "react";
import { BrowserRouter, Navigate, Route, Routes } from "react-router-dom";
import { ProtectedRoute, PublicRoute } from "./components/RouteGuards";
import { ProtectedRoute, AutoRedirectRoute } from "./components/RouteGuards";
import SplashScreen from "./components/SplashScreen";
import { ROUTES } from "./config/routes";
import { useAuth } from "./hooks/useAuth";
@@ -16,81 +16,85 @@ const VerifyEmail = lazy(() => import("./pages/VerifyEmail"));
const About = lazy(() => import("./pages/About"));
export default function App() {
const { initialize, isInitializing } = useAuth();
const authInitialized = useRef<boolean>(false);
const { initialize, isInitializing } = useAuth();
const authInitialized = useRef<boolean>(false);
useEffect(() => {
if (authInitialized.current) return;
authInitialized.current = true;
initialize().then();
}, [initialize]);
useEffect(() => {
if (authInitialized.current) return;
authInitialized.current = true;
initialize().then();
}, [initialize]);
if (isInitializing) {
return <SplashScreen />;
}
if (isInitializing) {
return <SplashScreen />;
}
return (
<BrowserRouter>
<main className="relative min-h-screen min-w-screen flex items-center justify-center w-full bg-base-200 before:absolute before:top-0 before:left-0 before:w-full before:h-full before:content-[''] before:opacity-[0.03] before:z-50 before:pointer-events-none before:bg-[url('assets/noise.gif')]">
<Suspense fallback={<SplashScreen />}>
<Routes>
<Route path={ROUTES.HOME} element={<Home />} />
return (
<BrowserRouter>
<main className="relative min-h-screen min-w-screen flex items-center justify-center w-full bg-base-200 before:absolute before:top-0 before:left-0 before:w-full before:h-full before:content-[''] before:opacity-[0.03] before:z-50 before:pointer-events-none before:bg-[url('assets/noise.gif')]">
<Suspense fallback={<SplashScreen />}>
<Routes>
<Route path={ROUTES.HOME} element={
<AutoRedirectRoute>
<Home />
</AutoRedirectRoute>
} />
<Route
path={ROUTES.ONBOARD}
element={
<PublicRoute>
<Register />
</PublicRoute>
}
/>
<Route
path={ROUTES.LOGIN}
element={
<PublicRoute>
<Login />
</PublicRoute>
}
/>
<Route
path={ROUTES.VERIFY_EMAIL}
element={
<PublicRoute>
<VerifyEmail />
</PublicRoute>
}
/>
<Route
path={ROUTES.ACTIVATE}
element={
<PublicRoute>
<Activate />
</PublicRoute>
}
/>
<Route
path={ROUTES.ONBOARD}
element={
<AutoRedirectRoute>
<Register />
</AutoRedirectRoute>
}
/>
<Route
path={ROUTES.LOGIN}
element={
<AutoRedirectRoute>
<Login />
</AutoRedirectRoute>
}
/>
<Route
path={ROUTES.VERIFY_EMAIL}
element={
<AutoRedirectRoute>
<VerifyEmail />
</AutoRedirectRoute>
}
/>
<Route
path={ROUTES.ACTIVATE}
element={
<AutoRedirectRoute>
<Activate />
</AutoRedirectRoute>
}
/>
<Route
path={ROUTES.DRAWER}
element={
<ProtectedRoute>
<Drawer />
</ProtectedRoute>
}
/>
<Route
path={ROUTES.WRITE}
element={
<ProtectedRoute>
<Editor />
</ProtectedRoute>
}
/>
<Route path={ROUTES.READ} element={<Reader />} />
<Route path={ROUTES.ABOUT} element={<About />} />
<Route path="*" element={<Navigate to={ROUTES.HOME} replace />} />
</Routes>
</Suspense>
</main>
</BrowserRouter>
);
<Route
path={ROUTES.DRAWER}
element={
<ProtectedRoute>
<Drawer />
</ProtectedRoute>
}
/>
<Route
path={ROUTES.WRITE}
element={
<ProtectedRoute>
<Editor />
</ProtectedRoute>
}
/>
<Route path={ROUTES.READ} element={<Reader />} />
<Route path={ROUTES.ABOUT} element={<About />} />
<Route path="*" element={<Navigate to={ROUTES.HOME} replace />} />
</Routes>
</Suspense>
</main>
</BrowserRouter>
);
}