misbar-dashboard/src/App.tsx
Moaz Dawalibi 42dafb46d3 done
2024-07-02 17:35:00 +03:00

67 lines
1.8 KiB
TypeScript

import { Fragment, lazy, Suspense } from 'react';
import { Route, Routes } from 'react-router-dom'
import Loading from './Components/Utils/Loading/Loading';
import { RoutesLinks } from './Routes';
import Layout from './Layout/app/Layout';
import Auth from './Pages/Auth/Page';
import useHitRequests from './Hooks/useHitRequests';
const Page404 = lazy(() => import("./Layout/app/NotFoundPage"))
const App = () => {
// hit requests after user status is online
// useHitRequests();
useHitRequests();
return (
<Routes >
{/* 404 Page */}
<Route path="*" element={<Suspense fallback={<Loading />}> <Page404 /></Suspense>} />
{/* Login Page */}
<Route path="/auth" element={<Suspense fallback={<Loading />}> <Auth /></Suspense>} />
{/* route not in navigation */}
{/* All Routes */}
{RoutesLinks?.map((item: any, index: number) => (
<Fragment key={index}>
if(item?.element){
<Route
key={index}
path={item.href}
element={
<Suspense fallback={<Loading />} >
<Layout>
{item?.element ?? "Please Add Element Props in Routes"}
</Layout>
</Suspense>
}
/>
}else{
item?.children?.map((item:any)=>{
return(
<Route
path={item.href}
key={item}
element={
<Suspense fallback={<Loading />} >
<Layout>
{item?.element ?? "Please Add Element Props in Routes"}
</Layout>
</Suspense>
}
/>
)
})
}
</Fragment>
))
}
</Routes>
)
}
export default App