31 lines
1.1 KiB
JavaScript
31 lines
1.1 KiB
JavaScript
import React, { lazy, Suspense } from 'react';
|
|
import { Routes, Route, Navigate } from 'react-router-dom';
|
|
import { LoadingOverlay } from '@/components/shared/LoadingOverlay';
|
|
import { CnabLayout } from './layout/CnabLayout';
|
|
|
|
// Lazy load views
|
|
const DashboardView = lazy(() => import('./views/DashboardView'));
|
|
const FavorecidosView = lazy(() => import('./views/FavorecidosView'));
|
|
const GerarRemessaView = lazy(() => import('./views/GerarRemessaView'));
|
|
|
|
const PageLoader = () => (
|
|
<LoadingOverlay isLoading={true} message="Carregando módulo..." fullScreen variant="premium" />
|
|
);
|
|
|
|
export const CnabRoutes = () => {
|
|
return (
|
|
<Suspense fallback={<PageLoader />}>
|
|
<Routes>
|
|
<Route element={<CnabLayout />}>
|
|
<Route path="dashboard" element={<DashboardView />} />
|
|
<Route path="favorecidos" element={<FavorecidosView />} />
|
|
<Route path="remessas" element={<GerarRemessaView />} />
|
|
<Route index element={<Navigate to="dashboard" replace />} />
|
|
</Route>
|
|
</Routes>
|
|
</Suspense>
|
|
);
|
|
};
|
|
|
|
export default CnabRoutes;
|