import React, { useState } from 'react'; import ImageFader from '../Common/ImageFader'; import { defineMessages, useIntl } from 'react-intl'; import LanguagePicker from '../Layout/LanguagePicker'; import Button from '../Common/Button'; import { Field, Form, Formik } from 'formik'; import * as Yup from 'yup'; import axios from 'axios'; const messages = defineMessages({ forgotpassword: 'Forgot Your Password?', emailresetlink: 'Email Me a Recovery Link', email: 'Email', validationemailrequired: 'You must provide a valid email address', gobacklogin: 'Go Back to Sign-In Page', requestresetlinksuccessmessage: 'A password reset link will be sent to the provided email address if it is associated with a valid user.', }); const ResetPassword: React.FC = () => { const intl = useIntl(); const [hasSubmitted, setSubmitted] = useState(false); const ResetSchema = Yup.object().shape({ email: Yup.string() .email(intl.formatMessage(messages.validationemailrequired)) .required(intl.formatMessage(messages.validationemailrequired)), }); return (
Overseerr Logo

{intl.formatMessage(messages.forgotpassword)}

{hasSubmitted ? ( <>

{intl.formatMessage(messages.requestresetlinksuccessmessage)}

) : ( { const response = await axios.post( `/api/v1/auth/reset-password`, { email: values.email, } ); if (response.status === 200) { setSubmitted(true); } }} > {({ errors, touched, isSubmitting, isValid }) => { return (
{errors.email && touched.email && (
{errors.email}
)}
); }}
)}
); }; export default ResetPassword;