Rev 3336 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { lazy, Suspense } from 'react';
import { Route, Navigate, Routes } from 'react-router-dom';
import Spinner from '@components/UI/Spinner';
/* Layouts */
const HabitsRootLayout = lazy(() => import('@layouts/habits/root-layout'));
const PurposesLayout = lazy(() => import('@layouts/habits/purposes-layout'));
const ParadigmsLayout = lazy(() => import('@layouts/habits/paradigms-layout'));
const ValuesLayout = lazy(() => import('@layouts/habits/values-layout'));
const HabitsLayout = lazy(() => import('@layouts/habits/habits-layout'));
const GoalsLayout = lazy(() => import('@layouts/habits/goals-layout'));
const MyProgressLayout = lazy(() => import('@layouts/habits/my-progress-layout'));
const HabitProgressLayout = lazy(() => import('@layouts/habits/habit-progress-layout'));
/* Pages */
const PurposesPage = lazy(() => import('@pages/habits/purposes/purposes-page'));
const CreatePurposePage = lazy(() => import('@pages/habits/purposes/create-purpose-page'));
const EditPurposePage = lazy(() => import('@pages/habits/purposes/edit-purpose-page'));
const ParadigmsPage = lazy(() => import('@pages/habits/paradigms/paradigms-page'));
const CreateParadigmPage = lazy(() => import('@pages/habits/paradigms/create-paradigm-page'));
const EditParadigmPage = lazy(() => import('@pages/habits/paradigms/edit-paradigm-page'));
const ValuesPage = lazy(() => import('@pages/habits/values/values-page'));
const CreateValuePage = lazy(() => import('@pages/habits/values/create-value-page'));
const EditValuePage = lazy(() => import('@pages/habits/values/edit-value-page'));
const HabitsPage = lazy(() => import('@pages/habits/habits/habits-page'));
const CreateHabitPage = lazy(() => import('@pages/habits/habits/create-habit-page'));
const EditHabitPage = lazy(() => import('@pages/habits/habits/edit-habit-page'));
const GoalsPage = lazy(() => import('@pages/habits/goals/goals-page'));
const CreateGoalPage = lazy(() => import('@pages/habits/goals/create-goal-page'));
const EditGoalPage = lazy(() => import('@pages/habits/goals/edit-goal-page'));
const MyProgressPage = lazy(() => import('@pages/habits/progress/my-progress-page'));
const HabitProgressPage = lazy(() => import('@pages/habits/progress/habit-progress-page'));
const AddHabitProgress = lazy(() => import('@pages/habits/progress/add-habit-progress'));
const EditHabitProgress = lazy(() => import('@pages/habits/progress/edit-habit-progress'));
export default function HabitsRoutes() {
return (
<Suspense fallback={<Spinner />}>
<Routes>
<Route element={<HabitsRootLayout />}>
<Route path='purposes' element={<PurposesLayout />}>
<Route index element={<PurposesPage />} />
<Route path='create' element={<CreatePurposePage />} />
<Route path='edit/:id' element={<EditPurposePage />} />
<Route path='*' element={<Navigate to='' />} />
</Route>
<Route path='paradigms' element={<ParadigmsLayout />}>
<Route index element={<ParadigmsPage />} />
<Route path='create' element={<CreateParadigmPage />} />
<Route path='edit/:id' element={<EditParadigmPage />} />
<Route path='*' element={<Navigate to='' />} />
</Route>
<Route path='values' element={<ValuesLayout />}>
<Route index element={<ValuesPage />} />
<Route path='create' element={<CreateValuePage />} />
<Route path='edit/:id' element={<EditValuePage />} />
<Route path='*' element={<Navigate to='' />} />
</Route>
<Route path='habits' element={<HabitsLayout />}>
<Route index element={<HabitsPage />} />
<Route path='create' element={<CreateHabitPage />} />
<Route path='edit/:id' element={<EditHabitPage />} />
<Route path='*' element={<Navigate to='' />} />
</Route>
<Route path='my-progress' element={<MyProgressLayout />}>
<Route index element={<MyProgressPage />} />
<Route path=':uuid' element={<HabitProgressLayout />}>
<Route index element={<HabitProgressPage />} />
<Route path='add' element={<AddHabitProgress />} />
<Route path='edit/:id' element={<EditHabitProgress />} />
</Route>
<Route path='*' element={<Navigate to='' />} />
</Route>
<Route path='goals' element={<GoalsLayout />}>
<Route index element={<GoalsPage />} />
<Route path='create' element={<CreateGoalPage />} />
<Route path='edit/:id' element={<EditGoalPage />} />
<Route path='*' element={<Navigate to='' />} />
</Route>
<Route path='*' element={<Navigate to='habits' />} />
</Route>
</Routes>
</Suspense>
);
}