diff --git a/src/containers/ContactDetailsForm/ContactDetailsForm.js b/src/containers/ContactDetailsForm/ContactDetailsForm.js index 87b8a9ec..2c12b1e0 100644 --- a/src/containers/ContactDetailsForm/ContactDetailsForm.js +++ b/src/containers/ContactDetailsForm/ContactDetailsForm.js @@ -159,6 +159,20 @@ class ContactDetailsFormComponent extends Component { const passwordRequired = validators.required(passwordRequiredMessage); + const passwordMinLengthMessage = intl.formatMessage( + { + id: 'ContactDetailsForm.passwordTooShort', + }, + { + minLength: validators.PASSWORD_MIN_LENGTH, + } + ); + + const passwordMinLength = validators.minLength( + passwordMinLengthMessage, + validators.PASSWORD_MIN_LENGTH + ); + const passwordFailedMessage = intl.formatMessage({ id: 'ContactDetailsForm.passwordFailed', }); @@ -199,7 +213,7 @@ class ContactDetailsFormComponent extends Component { id={`${form}.currentPassword`} label={passwordLabel} placeholder={passwordPlaceholder} - validate={passwordRequired} + validate={[passwordRequired, passwordMinLength]} customErrorText={passwordErrorText} /> diff --git a/src/translations/en.json b/src/translations/en.json index 17110375..383eb5c8 100644 --- a/src/translations/en.json +++ b/src/translations/en.json @@ -59,6 +59,7 @@ "ContactDetailsForm.passwordLabel": "Current password", "ContactDetailsForm.passwordPlaceholder": "Enter your current password…", "ContactDetailsForm.passwordRequired": "Password is required", + "ContactDetailsForm.passwordTooShort": "Password should be at least {minLength} characters", "ContactDetailsForm.pendingEmailCheckInbox": "Check your inbox to verify {pendingEmail} now.", "ContactDetailsForm.pendingEmailUnverified": "You have changed your email address but haven’t verified the new address yet. {pendingEmailCheckInbox} {resendEmailMessage}", "ContactDetailsForm.resendEmailVerificationText": "Resend verification email.",