import type { BlitzPage, GetServerSideProps } from "blitz"; import { useRouterQuery, Link, useMutation, Routes } from "blitz"; import BaseLayout from "../../core/layouts/base-layout"; import { AuthForm as Form, FORM_ERROR } from "../components/auth-form"; import { LabeledTextField } from "../components/labeled-text-field"; import { ResetPassword } from "../validations"; import resetPassword from "../../auth/mutations/reset-password"; const ResetPasswordPage: BlitzPage = () => { const query = useRouterQuery(); const [resetPasswordMutation, { isSuccess }] = useMutation(resetPassword); return (
{ try { await resetPasswordMutation(values); } catch (error: any) { if (error.name === "ResetPasswordError") { return { [FORM_ERROR]: error.message, }; } else { return { [FORM_ERROR]: "Sorry, we had an unexpected error. Please try again.", }; } } }} > {isSuccess ? (

Go to the homepage

) : ( <> )} ); }; ResetPasswordPage.redirectAuthenticatedTo = Routes.Messages(); ResetPasswordPage.getLayout = (page) => {page}; export const getServerSideProps: GetServerSideProps = async (context) => { if (!context.query.token) { return { redirect: { destination: Routes.ForgotPasswordPage().pathname, permanent: false, }, }; } return { props: {} }; }; export default ResetPasswordPage;