import { ErrorOutline } from '@mui/icons-material'; import { Grid, Link as MUILink, Typography } from '@mui/material'; import { useQueryErrorResetBoundary } from '@tanstack/react-query'; import { ErrorRouteComponent as TSErrorRouteComponent, useNavigate, useRouter } from '@tanstack/react-router'; import { useEffect } from 'react'; import { useTranslation } from 'react-i18next'; import HeaderlessLayout from '../../components/Layouts/HeaderlessLayout'; import { ROUTES } from '../../types/Routes'; import { ERRORS } from './Errors'; const ErrorRouterComponent: TSErrorRouteComponent = ({ error }) => { const { t } = useTranslation(); const router = useRouter(); const navigate = useNavigate(); const queryErrorResetBoundary = useQueryErrorResetBoundary(); useEffect(() => { // Reset the query error boundary console.log(queryErrorResetBoundary.isReset()); queryErrorResetBoundary.reset(); }, [queryErrorResetBoundary]); return ( {t('code' in error && error.code === ERRORS.UNAUTHORIZED ? 'Session expired' : 'General error')} { console.log('CLICK AS WELL'); router.invalidate(); navigate({ to: ROUTES.INDEX }); }} > {t('Back to main')} ); }; export default ErrorRouterComponent;