import { digitReg, lowercaseReg, specialCharacterReg, uppercaseReg } from '@/config'; import { CheckCircleFilled, CloseCircleFilled } from '@ant-design/icons'; import { useIntl } from '@umijs/max'; import { Space } from 'antd'; const PasswordValidate: React.FC<{ value: string }> = ({ value = '' }) => { const intl = useIntl(); const renderIcon = ({ valid, text }: { valid: boolean; text: string }) => { return ( <> {valid ? ( ) : ( )} {text} ); }; return ( {renderIcon({ valid: uppercaseReg.test(value), text: intl.formatMessage({ id: 'users.password.uppcase' }) })} {renderIcon({ valid: lowercaseReg.test(value), text: intl.formatMessage({ id: 'users.password.lowercase' }) })} {renderIcon({ valid: digitReg.test(value), text: intl.formatMessage({ id: 'users.password.number' }) })} {renderIcon({ valid: value.length >= 6 && value.length <= 12, text: intl.formatMessage({ id: 'users.password.length' }) })} {renderIcon({ valid: specialCharacterReg.test(value), text: intl.formatMessage({ id: 'users.password.special' }) })} ); }; export default PasswordValidate;