peliprint/resources/scripts/routers/AuthenticationRouter.tsx

33 lines
1.5 KiB
TypeScript
Raw Normal View History

import React from 'react';
import { Route, Switch, useRouteMatch } from 'react-router-dom';
import LoginContainer from '@/components/auth/LoginContainer';
import ForgotPasswordContainer from '@/components/auth/ForgotPasswordContainer';
import ResetPasswordContainer from '@/components/auth/ResetPasswordContainer';
import LoginCheckpointContainer from '@/components/auth/LoginCheckpointContainer';
import { NotFound } from '@/components/elements/ScreenBlock';
import { useHistory, useLocation } from 'react-router';
import AdditionalGuestRoutes from '@/blueprint/components/Navigation/Routes/AdditionalGuestRoutes';
export default () => {
const history = useHistory();
const location = useLocation();
const { path } = useRouteMatch();
return (
<div className={'pt-8 xl:pt-32'}>
<Switch location={location}>
<Route path={`${path}/login`} component={LoginContainer} exact />
<Route path={`${path}/login/checkpoint`} component={LoginCheckpointContainer} />
<Route path={`${path}/password`} component={ForgotPasswordContainer} exact />
<Route path={`${path}/password/reset/:token`} component={ResetPasswordContainer} />
<Route path={`${path}/checkpoint`} />
<AdditionalGuestRoutes />
<Route path={'*'}>
<NotFound onBack={() => history.push('/auth/login')} />
</Route>
</Switch>
</div>
);
};