diff --git a/frontend/src/pages/register.jsx b/frontend/src/pages/register.jsx index f6d2a98..cf7176d 100644 --- a/frontend/src/pages/register.jsx +++ b/frontend/src/pages/register.jsx @@ -20,9 +20,13 @@ export default function Register() { whatsapp: "", }); const [profile, setProfile] = useState(null); + const [error,setError] = useState(false); const handleChange = (e) => { const { name, value } = e.target; + if(name == 'password'){ + validatPassword(value); + } setFormData((prevData) => ({ ...prevData, [name]: value, @@ -33,6 +37,18 @@ export default function Register() { setProfile(e.target.files[0]); }; + const validatPassword = (value) =>{ + const regexPatterns = [ + /[A-Z]/, // Uppercase letter + /[a-z]/, // Lowercase letter + /\d/, // Number + /[^\w\s]/ // Special character + ]; + const isValid = regexPatterns.every(regex => regex.test(value)) && value.length >= 6; + setError(!isValid); + + } + // const handleTechStackChange = (e) => { // const selectedOptions = Array.from(e.target.selectedOptions).map( // (option) => option.value.trim().toLowerCase() // Convert selected options to array of strings @@ -319,6 +335,7 @@ export default function Register() { onChange={handleChange} required /> + {error &&

"Password must be at least 6 characters long and include one uppercase letter, one lowercase letter, one digit, and one special character."

}