import React, { FC, useState } from 'react' import { Button, Form, Input, message } from 'antd' import { useGuardContext } from '../../../../context/global/context' import { MFACheckEmailFormProps } from '../../types' import './style.less' import { VALIDATE_PATTERN } from '../../../../utils' import { useTranslation } from 'react-i18next' export const CheckEmailForm: FC = ({ onSuccess, mfaToken, }) => { const { state: { authClient }, } = useGuardContext() const { t } = useTranslation() const [rawForm] = Form.useForm() const [loading, setLoading] = useState(false) const onFinish = async ({ email }: any) => { try { const bindable = await authClient.mfa.phoneOrEmailBindable({ mfaToken, email, }) if (!bindable) { message.error( t('common.unBindEmaileDoc', { email: email, }) ) return } onSuccess(email!) } catch (e) { // do nothing } finally { setLoading(false) } } return ( <>

{t('common.bindEmail')}

{t('common.bindEmailDoc')}

setLoading(true)} onFinish={onFinish} onFinishFailed={() => setLoading(false)} >
) }