Rev 3505 | Rev 3563 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { lazy, Suspense } from 'react';import { Routes, Route, Navigate } from 'react-router-dom';/* Components */import AuthRoute from './auth-routes';import PrivateRoutes from './private-routes';import Spinner from '@components/UI/Spinner';/* Layouts */import RootLayout from '@layouts/root';import AppsNavigation from '@pages/apps-navigation/AppsNavigation';import HabitsRoutes from './habits/routes';import GroupRoutes from './groups/routes';import PrivateRoutesLayout from '@layouts/private-routes';import KnowledgesRoutes from '@knowledges/routes/knowledges-routes';const MicrolearningRoutes = lazy(() => import('@microlearning/routes/microlearning-routes'));const InmailLayout = lazy(() => import('@layouts/inmail/inmail-layout'));const AuthLayout = lazy(() => import('@layouts/auth-layout'));/* Pages */const InmailPage = lazy(() => import('@pages/inmail/InmailPage'));const MessageViewPage = lazy(() => import('@pages/inmail/message-view-page'));const Browsers = lazy(() => import('@pages/account-settings/browsers'));const BasicSettings = lazy(() => import('@pages/account-settings/basic-settings'));const ChangeImage = lazy(() => import('@pages/account-settings/change-image'));const ChangePassword = lazy(() => import('@pages/account-settings/change-password'));const Devices = lazy(() => import('@pages/account-settings/devices'));const Ips = lazy(() => import('@pages/account-settings/ips'));const Location = lazy(() => import('@pages/account-settings/location'));const Notifications = lazy(() => import('@pages/account-settings/notifications'));const Privacy = lazy(() => import('@pages/account-settings/privacy'));const Transactions = lazy(() => import('@pages/account-settings/transactions'));const CloseAccount = lazy(() => import('@pages/account-settings/close-account'));const Login = lazy(() => import('@app/pages/auth/login'));const Signup = lazy(() => import('@app/pages/auth/signup'));// const Navigation = lazy(() => import('@pages/auth/navigation'))const ForgotPassword = lazy(() => import('@pages/auth/forgot-password'));const ActiveAccount = lazy(() => import('@pages/auth/active-account'));const ResetPassword = lazy(() => import('@pages/auth/reset-password'));const AbuseReportPage = lazy(() => import('@pages/abuse-report/abuse-repor-page'));const AbuseReportViewPage = lazy(() => import('@pages/abuse-report/abuse-report-view-page'));const ShorterPostPage = lazy(() => import('@pages/shorter/shorter-post-page'));const TermsAndConditionsPage = lazy(() => import('@pages/terms-and-conditions/TermsAndConditionsPage'));const PrivacyPolicyPage = lazy(() => import('@pages/privacy-policy/PrivacyPolicy'));const CookiesPage = lazy(() => import('@pages/cookies/CookiesPage'));const ProfessionalismPolicy = lazy(() => import('@pages/professionalism-policy/ProfessionalismPolicy'));const AccountSettingsLayout = lazy(() => import('@layouts/account-settings'));const DashboardPage = lazy(() => import('@pages/dashboard/dashboard-page'));const MyConnectionsPage = lazy(() => import('@pages/connections/MyConnectionsPage'));const InvitationsReceivedPage = lazy(() => import('@pages/connections/InvitationsReceivedPage'));const InvitationsSendPage = lazy(() => import('@pages/connections/InvitationsSendPage'));const PeopleYouMayKnowPage = lazy(() => import('@pages/connections/PeopleYouMayKnowPage'));const PeopleBlockedPage = lazy(() => import('@pages/connections/PeopleBlockedPage'));const MyProfilesPage = lazy(() => import('@pages/profiles/MyProfilesPage'));const PeopleViewedMyProfilePage = lazy(() => import('@pages/profiles/PeopleViewedMyProfilePage'));const SavedJobsPage = lazy(() => import('@pages/jobs/SavedJobsPage'));const AppliedJobsPage = lazy(() => import('@pages/jobs/AppliedJobsPage'));const MyCompanies = lazy(() => import('@pages/company/MyCompaniesPage'));const FollowingCompaniesPage = lazy(() => import('@pages/company/CompaniesIFollowPage'));const CompaniesWhenIWorkPage = lazy(() => import('@pages/company/CompaniesWhenIWorkPage'));const CompanyRequestSendPage = lazy(() => import('@pages/company/CompanyRequestSendPage'));const CompanyInvitationsReceivedPage = lazy(() => import('@pages/company/CompanyInvitationsReceivedPage'));const ProfileViewPage = lazy(() => import('@pages/profiles/ProfileViewPage'));const ProfileEditPage = lazy(() => import('@pages/profiles/ProfileEditPage'));const CompanyViewPage = lazy(() => import('@pages/company/CompanyViewPage'));const NotificationsPage = lazy(() => import('@pages/notifications/NotificationsPage'));const SearchPage = lazy(() => import('@pages/search/SearchPage'));const PostViewPage = lazy(() => import('@pages/posts/PostViewPage'));const MyCoachPage = lazy(() => import('@pages/my-coach/MyCoachPage'));const MyCoachViewPage = lazy(() => import('@pages/my-coach/MyCoachViewPage'));const JobViewPage = lazy(() => import('@pages/jobs/JobView'));const CalendarPage = lazy(() => import('@pages/calendar/CalendarPage'));const ImpersonatePage = lazy(() => import('@pages/impersonate/InpersonatePage'));export default function AppRoutes() {return (<Suspense fallback={<Spinner />}><Routes><Route element={<RootLayout />}>{/* Public routes */}<Route path='/shorter/:id' element={<ShorterPostPage />} /><Route path='/terms-and-conditions' element={<TermsAndConditionsPage />} /><Route path='/privacy-policy' element={<PrivacyPolicyPage />} /><Route path='/professionalism-policy' element={<ProfessionalismPolicy />} /><Route path='/cookies' element={<CookiesPage />} />{/* Authentication routes */}<Route path='/' element={<AuthRoute />}><Route element={<AuthLayout />}><Route index element={<Navigate to='signin' />} /><Route path='signin' element={<Login />} /><Route path='signup' element={<Signup />} /><Route path='forgot-password' element={<ForgotPassword />} /><Route path='reset-password/:uuid' element={<ResetPassword />} /><Route path='activate-account/:uuid' element={<ActiveAccount />} /></Route></Route>{/* Private routes */}<Route element={<PrivateRoutes />}><Route element={<PrivateRoutesLayout />}><Route path='/habits/*' element={<HabitsRoutes />} /><Route path='/group/*' element={<GroupRoutes />} /><Route path='abuse-report'><Route index element={<AbuseReportPage />} /><Route path='view/:id' element={<AbuseReportViewPage />} /></Route><Route path='/dashboard'><Route index element={<DashboardPage />} /><Route path='feed/:id' element={<DashboardPage />} /></Route><Route path='/connection'><Route index element={<Navigate to='my-connections' />} /><Route path='my-connections' element={<MyConnectionsPage />} /><Route path='invitations-sent' element={<InvitationsSendPage />} /><Route path='invitations-received' element={<InvitationsReceivedPage />} /><Route path='people-you-may-know' element={<PeopleYouMayKnowPage />} /><Route path='people-blocked' element={<PeopleBlockedPage />} /></Route><Route path='/profile'><Route index element={<Navigate to='my-profiles' />} /><Route path='view/:uuid' element={<ProfileViewPage />} /><Route path='people-viewed-profile' element={<PeopleViewedMyProfilePage />} /><Route path='my-profiles'><Route index element={<MyProfilesPage />} /><Route path='edit/:uuid' element={<ProfileEditPage />} /></Route></Route><Route path='/job'><Route index element={<Navigate to='saved-jobs' />} /><Route path='view/:uuid' element={<JobViewPage />} /><Route path='saved-jobs' element={<SavedJobsPage />} /><Route path='applied-jobs' element={<AppliedJobsPage />} />\</Route><Route path='/company'><Route index element={<Navigate to='my-companies' />} /><Route path='my-companies' element={<MyCompanies />} /><Route path='following-companies' element={<FollowingCompaniesPage />} /><Route path='i-work-with' element={<CompaniesWhenIWorkPage />} /><Route path='requests-sent' element={<CompanyRequestSendPage />} /><Route path='requests-sent' element={<CompanyRequestSendPage />} /><Route path='invitations-received' element={<CompanyInvitationsReceivedPage />} /><Route path='view/:uuid' element={<CompanyViewPage />} /></Route><Route path='/my-coach'><Route index element={<MyCoachPage />} /><Route path='questions/view/:uuid' element={<MyCoachViewPage />} /></Route><Route path='/knowledge-area/*' element={<KnowledgesRoutes />} /><Route path='/microlearning/*' element={<MicrolearningRoutes />} /><Route path='/inmail/*' element={<InmailLayout />}><Route index element={<InmailPage />} /><Route path=':uuid' element={<MessageViewPage />} /></Route><Route path='/account-settings' element={<AccountSettingsLayout />}><Route index element={<BasicSettings />} /><Route path='notifications' element={<Notifications />} /><Route path='change-password' element={<ChangePassword />} /><Route path='change-image' element={<ChangeImage />} /><Route path='location' element={<Location />} /><Route path='privacy' element={<Privacy />} /><Route path='browsers' element={<Browsers />} /><Route path='ips' element={<Ips />} /><Route path='devices' element={<Devices />} /><Route path='close-account' element={<CloseAccount />} /><Route path='transactions' element={<Transactions />} /></Route><Route path='/notifications' element={<NotificationsPage />} /><Route path='/search/entity/:category' element={<SearchPage />} /><Route path='/calendar' element={<CalendarPage />} /><Route path='/signin/impersonate' element={<ImpersonatePage />} /><Route path='/post/:uuid' element={<PostViewPage />} /><Route path='/apps-navigation' element={<AppsNavigation />} /><Route path='*' element={<Navigate to='/dashboard' />} /></Route></Route></Route></Routes></Suspense>);}