import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { withTranslation } from 'react-i18next'; import AppContainer from '~/client/services/AppContainer'; import { toastSuccess, toastError } from '~/client/util/apiNotification'; import { apiv3Post } from '~/client/util/apiv3-client'; import { withUnstatedContainers } from './UnstatedUtils'; const PasswordResetRequestForm = (props) => { const { t, appContainer } = props; const [email, setEmail] = useState(''); const changeEmail = (inputValue) => { setEmail(inputValue); }; const sendPasswordResetRequestMail = async(e) => { e.preventDefault(); if (email === '') { toastError('err', t('forgot_password.email_is_required')); return; } try { await apiv3Post('/forgot-password', { email }); toastSuccess(t('forgot_password.success_to_send_email')); } catch (err) { toastError(err); } }; return (
); }; /** * Wrapper component for using unstated */ const PasswordResetRequestFormWrapper = withUnstatedContainers(PasswordResetRequestForm, [AppContainer]); PasswordResetRequestForm.propTypes = { t: PropTypes.func.isRequired, // i18next appContainer: PropTypes.instanceOf(AppContainer).isRequired, }; export default withTranslation()(PasswordResetRequestFormWrapper);