[ route update ]

This commit is contained in:
2025-02-11 12:44:43 +05:30
parent 7dcff8798d
commit a9cf30252b
3 changed files with 41 additions and 21 deletions

View File

@@ -1,24 +1,44 @@
import { Route, BrowserRouter as Router, Routes } from "react-router-dom";
import DefaultLayout from './Layouts/DefaultLayout';
import Login from './Pages/Login';
import { RouteLink } from './Routes/Routes';
import { useEffect, useState } from "react";
import { Route, BrowserRouter as Router, Routes, Navigate } from "react-router-dom";
import DefaultLayout from "./Layouts/DefaultLayout";
import Login from "./Pages/Login";
import { RouteLink } from "./Routes/Routes";
import Cookies from "js-cookie";
function App() {
// const context = useContext(GlobalStateContext);
// if (!context) throw new Error('App must be used within a GlobalStateProvider');
// const { isAuthenticate } = context;
const token = Cookies.get("token")
function App() {
const [token, setToken] = useState<string | null>(null);
return (
<Router>
<Routes>
<Route path="/login" element={<Login />} />
<Route path="/*" element={token ? (<DefaultLayout><Routes>{RouteLink.map(({ path, Component }, index) => (<Route key={index} path={path} element={<Component />} />))}</Routes></DefaultLayout>) : (<Login />)} />
<Route path="*" element={<Login />} />
</Routes>
</Router>
);
}
useEffect(() => {
const savedToken = Cookies.get("token");
console.log("Token from Cookies:", savedToken);
setToken(savedToken || null);
}, []);
return (
<Router>
<Routes>
<Route path="/login" element={<Login />} />
<Route
path="/*"
element={
token ? (
<DefaultLayout>
<Routes>
{RouteLink.map(({ path, Component }, index) => (
<Route key={index} path={path} element={<Component />} />
))}
<Route path="/" element={<Navigate to="/dashboard" />} />
</Routes>
</DefaultLayout>
) : (
<Navigate to="/login" replace />
)
}
/>
<Route path="*" element={<Navigate to={token ? "/dashboard" : "/login"} replace />} />
</Routes>
</Router>
);
}
export default App;