Browse Source

Perf: Support for password display and hiding (#636)

Co-authored-by: Selenium39 <selenium39@qq.com>
tags/0.3.11
Selenium39 2 years ago
parent
commit
dd1172b57e
No account linked to committer's email address
1 changed files with 11 additions and 1 deletions
  1. 11
    1
      web/app/install/installForm.tsx

+ 11
- 1
web/app/install/installForm.tsx View File

@@ -17,6 +17,7 @@ const InstallForm = () => {
const [email, setEmail] = React.useState('')
const [name, setName] = React.useState('')
const [password, setPassword] = React.useState('')
const [showPassword, setShowPassword] = React.useState(false)
const showErrorMessage = (message: string) => {
Toast.notify({
type: 'error',
@@ -108,12 +109,21 @@ const InstallForm = () => {
<div className="mt-1 relative rounded-md shadow-sm">
<input
id="password"
type='password'
type={showPassword ? 'text' : 'password'}
value={password}
onChange={e => setPassword(e.target.value)}
placeholder={t('login.passwordPlaceholder') || ''}
className={'appearance-none block w-full rounded-lg pl-[14px] px-3 py-2 border border-gray-200 hover:border-gray-300 hover:shadow-sm focus:outline-none focus:ring-primary-500 focus:border-primary-500 placeholder-gray-400 caret-primary-600 sm:text-sm pr-10'}
/>
<div className="absolute inset-y-0 right-0 flex items-center pr-3">
<button
type="button"
onClick={() => setShowPassword(!showPassword)}
className="text-gray-400 hover:text-gray-500 focus:outline-none focus:text-gray-500"
>
{showPassword ? '👀' : '😝'}
</button>
</div>
</div>
<div className='mt-1 text-xs text-gray-500'>{t('login.error.passwordInvalid')}</div>


Loading…
Cancel
Save