created: monorepo with front & back
This commit is contained in:
90
frontend/src/components/App.jsx
Normal file
90
frontend/src/components/App.jsx
Normal file
@@ -0,0 +1,90 @@
|
||||
import Header from './Header'
|
||||
import NavBar from './NavBar/NavBar'
|
||||
import Footer from './Footer'
|
||||
import { Route, Routes, useLocation } from 'react-router-dom'
|
||||
import ProtectedRoute from './Auth/ProtectedRoute.jsx'
|
||||
import useSessionRenewal from '../hooks/useSessionRenewal'
|
||||
|
||||
import Home from '../pages/Home'
|
||||
import Socios from '../pages/Socios'
|
||||
import Ingresos from '../pages/Ingresos'
|
||||
import Gastos from '../pages/Gastos'
|
||||
import Balance from '../pages/Balance'
|
||||
import Login from '../pages/Login'
|
||||
import Solicitudes from '../pages/Solicitudes'
|
||||
import Anuncios from '../pages/Anuncios'
|
||||
import ListaEspera from '../pages/ListaEspera'
|
||||
import Building from '../pages/Building'
|
||||
import Documentacion from '../pages/Documentacion'
|
||||
|
||||
import { CONSTANTS } from '../util/constants'
|
||||
import Perfil from '../pages/Perfil.jsx'
|
||||
import Correo from '../pages/Correo.jsx'
|
||||
import Maintenance from './Maintenance/Maintenance.jsx'
|
||||
|
||||
function App() {
|
||||
const { modal: sessionModal } = useSessionRenewal();
|
||||
const routesWithFooter = ["/", "/lista-espera", "/login", "/gestion/socios", "/gestion/ingresos", "/gestion/gastos", "/gestion/balance"];
|
||||
|
||||
return (
|
||||
<>
|
||||
<Header />
|
||||
<NavBar />
|
||||
<Routes>
|
||||
<Route path="/" element={<Home />} />
|
||||
<Route path="/lista-espera" element={<ListaEspera />} />
|
||||
<Route path="/login" element={<Login />} />
|
||||
<Route path="/gestion/socios" element={
|
||||
<ProtectedRoute minimumRoles={[CONSTANTS.ROLE_ADMIN, CONSTANTS.ROLE_DEV]}>
|
||||
<Socios />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/gestion/ingresos" element={
|
||||
<ProtectedRoute minimumRoles={[CONSTANTS.ROLE_ADMIN, CONSTANTS.ROLE_DEV]}>
|
||||
<Ingresos />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/gestion/gastos" element={
|
||||
<ProtectedRoute minimumRoles={[CONSTANTS.ROLE_ADMIN, CONSTANTS.ROLE_DEV]}>
|
||||
<Gastos />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/gestion/balance" element={
|
||||
<ProtectedRoute minimumRoles={[CONSTANTS.ROLE_ADMIN, CONSTANTS.ROLE_DEV]}>
|
||||
<Balance />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
{/*<Route path="/documentacion" element={
|
||||
<ProtectedRoute>
|
||||
<Documentacion />
|
||||
</ProtectedRoute>
|
||||
} />*/}
|
||||
<Route path="/anuncios" element={
|
||||
<ProtectedRoute>
|
||||
<Anuncios />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/gestion/solicitudes" element={
|
||||
<ProtectedRoute minimumRoles={[CONSTANTS.ROLE_ADMIN, CONSTANTS.ROLE_DEV]}>
|
||||
<Solicitudes />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/perfil" element={
|
||||
<ProtectedRoute>
|
||||
<Perfil />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/correo" element={
|
||||
<ProtectedRoute minimumRoles={[CONSTANTS.ROLE_ADMIN, CONSTANTS.ROLE_DEV]}>
|
||||
<Correo />
|
||||
</ProtectedRoute>
|
||||
} />
|
||||
<Route path="/*" element={<Maintenance />} />
|
||||
</Routes>
|
||||
{routesWithFooter.includes(useLocation().pathname) ? <Footer /> : null}
|
||||
{sessionModal}
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
export default App
|
||||
Reference in New Issue
Block a user