From 1ac4755a0364bbc575fbe0e05796db694ad589a2 Mon Sep 17 00:00:00 2001 From: fmtabbara Date: Fri, 1 Apr 2022 09:26:14 +0100 Subject: [PATCH] update password strength test + use autofocus prop for password input --- .../src/pages/welcome/components/password-strength.tsx | 4 ++-- nym-wallet/src/pages/welcome/components/textfields.tsx | 5 +++-- nym-wallet/src/pages/welcome/pages/create-password.tsx | 7 ++++++- nym-wallet/src/pages/welcome/pages/existing-account.tsx | 1 + nym-wallet/src/pages/welcome/pages/signin-password.tsx | 1 + 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/nym-wallet/src/pages/welcome/components/password-strength.tsx b/nym-wallet/src/pages/welcome/components/password-strength.tsx index 723d7f9892..7e867f73fd 100644 --- a/nym-wallet/src/pages/welcome/components/password-strength.tsx +++ b/nym-wallet/src/pages/welcome/components/password-strength.tsx @@ -5,8 +5,8 @@ import { LinearProgress, Stack, Typography, Box } from '@mui/material'; type TStrength = 'weak' | 'medium' | 'strong' | 'init'; -const strong = /^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*])(?=.{8,})/; -const medium = /^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})/; +const strong = /^(?=.*[a-z])(?=.*[0-9])(?=.*[!@#$%^&*])(?=.{8,})/; +const medium = /^(((?=.*[a-z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[0-9])))(?=.{6,})/; const colorMap = { init: 'inherit' as 'inherit', diff --git a/nym-wallet/src/pages/welcome/components/textfields.tsx b/nym-wallet/src/pages/welcome/components/textfields.tsx index 723570a40e..e6e00ba033 100644 --- a/nym-wallet/src/pages/welcome/components/textfields.tsx +++ b/nym-wallet/src/pages/welcome/components/textfields.tsx @@ -38,8 +38,9 @@ export const PasswordInput: React.FC<{ error?: string; label: string; showForgottenPassword?: boolean; + autoFocus?: boolean; onUpdatePassword: (password: string) => void; -}> = ({ password, label, error, showForgottenPassword, onUpdatePassword }) => { +}> = ({ password, label, error, showForgottenPassword, autoFocus, onUpdatePassword }) => { const [showPassword, setShowPassword] = useState(false); return ( @@ -51,7 +52,7 @@ export const PasswordInput: React.FC<{ value={password} onChange={(e) => onUpdatePassword(e.target.value)} type={showPassword ? 'input' : 'password'} - autoFocus + autoFocus={autoFocus} InputProps={{ endAdornment: ( setShowPassword((show) => !show)}> diff --git a/nym-wallet/src/pages/welcome/pages/create-password.tsx b/nym-wallet/src/pages/welcome/pages/create-password.tsx index dae20a60c7..6ae8384ca5 100644 --- a/nym-wallet/src/pages/welcome/pages/create-password.tsx +++ b/nym-wallet/src/pages/welcome/pages/create-password.tsx @@ -43,7 +43,12 @@ export const CreatePassword = ({ onSkip, onNext }: { page: TPages; onNext: () => <> - setPassword(pswd)} label="Password" /> + setPassword(pswd)} + label="Password" + autoFocus + /> setIsStrongPassword(isStrong)} /> setPassword(pswd)} label="Password" + autoFocus error={error} /> )} diff --git a/nym-wallet/src/pages/welcome/pages/signin-password.tsx b/nym-wallet/src/pages/welcome/pages/signin-password.tsx index 70ad410503..b9bb50303a 100644 --- a/nym-wallet/src/pages/welcome/pages/signin-password.tsx +++ b/nym-wallet/src/pages/welcome/pages/signin-password.tsx @@ -19,6 +19,7 @@ export const SignInPassword = ({ onPrev }: { page: TPages; onPrev: () => void }) password={password} onUpdatePassword={(pswd) => setPassword(pswd)} error={error} + autoFocus />