Spaces:
Runtime error
Runtime error
import { createBrowserRouter, Navigate, Outlet } from 'react-router-dom'; | |
import Root from './Root'; | |
import Chat from './Chat'; | |
import Search from './Search'; | |
import { Login, Registration, RequestPasswordReset, ResetPassword } from '../components/Auth'; | |
import { AuthContextProvider } from '../hooks/AuthContext'; | |
import ApiErrorWatcher from '../components/Auth/ApiErrorWatcher'; | |
const AuthLayout = () => ( | |
<AuthContextProvider> | |
<Outlet /> | |
<ApiErrorWatcher /> | |
</AuthContextProvider> | |
); | |
export const router = createBrowserRouter([ | |
{ | |
path: 'register', | |
element: <Registration />, | |
}, | |
{ | |
path: 'forgot-password', | |
element: <RequestPasswordReset />, | |
}, | |
{ | |
path: 'reset-password', | |
element: <ResetPassword />, | |
}, | |
{ | |
element: <AuthLayout />, | |
children: [ | |
{ | |
path: 'login', | |
element: <Login />, | |
}, | |
{ | |
path: '/', | |
element: <Root />, | |
children: [ | |
{ | |
index: true, | |
element: <Navigate to="/chat/new" replace={true} />, | |
}, | |
{ | |
path: 'chat/:conversationId?', | |
element: <Chat />, | |
}, | |
{ | |
path: 'search/:query?', | |
element: <Search />, | |
}, | |
], | |
}, | |
], | |
}, | |
]); | |