Digitum/interface/src/components/routing/RequireUnauthenticated.tsx
2023-11-30 19:30:51 +03:00

23 lines
723 B
TypeScript

import { FC, useContext } from 'react';
import { Navigate } from "react-router-dom";
import * as AuthenticationApi from '../../api/authentication';
import { AuthenticationContext } from '../../contexts/authentication';
import { RequiredChildrenProps } from '../../utils';
import { FeaturesContext } from '../../contexts/features';
const RequireUnauthenticated: FC<RequiredChildrenProps> = ({ children }) => {
const { features } = useContext(FeaturesContext);
const authenticationContext = useContext(AuthenticationContext);
return (
authenticationContext.me ?
<Navigate to={AuthenticationApi.fetchLoginRedirect(features)} />
:
<>{children}</>
);
};
export default RequireUnauthenticated;