2023-02-04 18:12:49 +01:00
|
|
|
import { LoadingOverlay } from "@mantine/core";
|
2022-04-25 15:15:17 +02:00
|
|
|
import { useRouter } from "next/router";
|
2022-12-01 23:07:49 +01:00
|
|
|
import SignInForm from "../../components/auth/SignInForm";
|
2022-04-28 15:31:37 +02:00
|
|
|
import Meta from "../../components/Meta";
|
2022-10-09 22:30:32 +02:00
|
|
|
import useUser from "../../hooks/user.hook";
|
2022-04-25 15:15:17 +02:00
|
|
|
|
|
|
|
const SignIn = () => {
|
|
|
|
const router = useRouter();
|
2023-02-04 18:12:49 +01:00
|
|
|
const { user } = useUser();
|
|
|
|
|
|
|
|
// If the access token is expired, the middleware redirects to this page.
|
|
|
|
// If the refresh token is still valid, the user will be redirected to the home page.
|
2022-10-09 22:30:32 +02:00
|
|
|
if (user) {
|
2022-04-25 15:15:17 +02:00
|
|
|
router.replace("/");
|
2023-02-04 18:12:49 +01:00
|
|
|
return <LoadingOverlay overlayOpacity={1} visible />;
|
2022-04-25 15:15:17 +02:00
|
|
|
}
|
2023-02-04 18:12:49 +01:00
|
|
|
|
|
|
|
return (
|
|
|
|
<>
|
|
|
|
<Meta title="Sign In" />
|
|
|
|
<SignInForm />
|
|
|
|
</>
|
|
|
|
);
|
2022-04-25 15:15:17 +02:00
|
|
|
};
|
|
|
|
export default SignIn;
|