@particle-network/authkit
Version:
Auth Core provides MPC (Multi-Party Computation)-based threshold signatures.
8 lines (7 loc) • 6.59 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../src/pages/account/masterPasswordVerify/index.tsx"],
"sourcesContent": ["import { RecordType } from '@particle-network/analytics';\nimport { analyticsRecord, restoreWallet } from '@particle-network/auth-core';\nimport { useRequest } from 'ahooks';\nimport { Button, Form, Space, Typography } from 'antd';\nimport React, { useEffect, useState } from 'react';\nimport InputPassword from '../../../components/input-password';\nimport PowerFooter from '../../../components/power-footer';\nimport { useCustomNavigate, useParticleAuth, useTranslation } from '../../../context';\nimport useMessage from '../../../context/hooks/useMessage';\nimport styles from './index.less';\n\nexport type MasterPasswordVerifyProps = {\n loginVerifyMasterPassword?: boolean;\n};\n\nconst MasterPasswordVerify = (props?: MasterPasswordVerifyProps) => {\n const { Text, Link } = Typography;\n const navigate = useCustomNavigate();\n const [showPasswordError, setShowPasswordError] = useState(false);\n const { t } = useTranslation();\n\n const { loginVerifyMasterPassword } = props || {};\n const containerRef = React.useRef<any>(null);\n const [nextDisabled, setNextDisabled] = useState(true);\n const { loginSuccessRedirectToApp } = useParticleAuth();\n const message = useMessage();\n const { run: runCheckMasterPassword, loading } = useRequest(restoreWallet, {\n manual: true,\n onBefore: () => {\n analyticsRecord({\n // eslint-disable-next-line camelcase\n record_type: RecordType.PAGE_MASTER_PASSWORD_VERIFY, // \u4E3B\u5BC6\u7801\u9A8C\u8BC1\n });\n },\n onSuccess: (result: boolean) => {\n if (result) {\n analyticsRecord({\n // eslint-disable-next-line camelcase\n record_type: RecordType.PAGE_MASTER_PASSWORD_VERIFY_SUCCESS, // \u4E3B\u5BC6\u7801\u9A8C\u8BC1\u6210\u529F\n });\n if (loginVerifyMasterPassword) {\n loginSuccessRedirectToApp();\n } else {\n navigate(-1);\n }\n } else {\n setShowPasswordError(true);\n }\n },\n onError: (error) => {\n console.log('checkMasterPassword error', error);\n message.error(error?.message || 'check master password error');\n },\n });\n\n const toDecription = () => {\n navigate('/account/master-password/description');\n };\n\n const verifyMasterPassword = (values: any) => {\n const { password } = values;\n if (password?.length >= 6 && password?.length <= 20) {\n setShowPasswordError(false);\n runCheckMasterPassword(password);\n } else {\n setShowPasswordError(true);\n }\n };\n\n const onValuesChange = (values: any) => {\n const { password } = values;\n setShowPasswordError(false);\n setNextDisabled(!password);\n };\n\n useEffect(() => {\n setTimeout(() => {\n containerRef.current?.querySelector('.password-input input')?.focus();\n }, 200);\n }, []);\n\n return (\n <div className='mp-verify-container' ref={containerRef}>\n <style>{styles as unknown as string}</style>\n <div className='mp-verify-title'>{t('account.restore_wallet')}</div>\n <Form layout='vertical' onFinish={verifyMasterPassword} onValuesChange={onValuesChange}>\n <div className='scroll-content'>\n <div className='mp-input-name padding-top-16'>{t('account.master_password')}</div>\n <Form.Item name='password'>\n <InputPassword className='mp-input' />\n </Form.Item>\n {showPasswordError && <div className='mp-input-error'>{t('account.password_error')}</div>}\n <Space direction='vertical' className='mp-tip-space'>\n <Text>{t('account.mpc_tss_intro')}</Text>\n <Text>\n {t('account.input_decrypt_hint')}{' '}\n <Link onClick={toDecription} className='more-text-btn'>\n {t('account.learn_more_period')}\n </Link>\n </Text>\n </Space>\n </div>\n <Form.Item>\n <div className='bottom-container footer'>\n <Button className='primary-antd-btn mp-next' htmlType='submit' loading={loading} disabled={nextDisabled}>\n {t('common.confirm')}\n </Button>\n <PowerFooter className='footer-box-v2' />\n </div>\n </Form.Item>\n </Form>\n </div>\n );\n};\n\nexport default MasterPasswordVerify;\n"],
"mappings": "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",
"names": ["masterPasswordVerify_default"]
}