From 51251b8958b20c2cf2f09abd531a99999f60c768 Mon Sep 17 00:00:00 2001 From: Matt Van Horn <455140+mvanhorn@users.noreply.github.com> Date: Sat, 23 May 2026 22:22:56 -0700 Subject: [PATCH] Fix password validation to require letter or number --- apps/codebattle/assets/js/__fixtures__/signUpData.json | 6 ++++++ apps/codebattle/assets/js/widgets/formik/index.js | 1 + 2 files changed, 7 insertions(+) diff --git a/apps/codebattle/assets/js/__fixtures__/signUpData.json b/apps/codebattle/assets/js/__fixtures__/signUpData.json index f340d3f7e..b47e6ef28 100644 --- a/apps/codebattle/assets/js/__fixtures__/signUpData.json +++ b/apps/codebattle/assets/js/__fixtures__/signUpData.json @@ -85,6 +85,12 @@ "Should be from 6 to 16 characters", "password" ], + [ + "password validation: only special characters", + "!@#$%&*?", + "Should contain at least one letter or number", + "password" + ], [ "password validation: long password", "11111111111111111", diff --git a/apps/codebattle/assets/js/widgets/formik/index.js b/apps/codebattle/assets/js/widgets/formik/index.js index 29a3f9fd4..94202eff2 100644 --- a/apps/codebattle/assets/js/widgets/formik/index.js +++ b/apps/codebattle/assets/js/widgets/formik/index.js @@ -66,6 +66,7 @@ const schemas = { .matches(/^\S*$/, "Can't contain empty symbols") .min(6, "Should be from 6 to 16 characters") .max(16, "Should be from 6 to 16 characters") + .matches(/[a-zA-Z0-9]/, "Should contain at least one letter or number") .matches(/[!@#$%^&*(),.?":{}|<>]/, "Should contain at least one special character") .required("Password required"), passwordConfirmation: Yup.string()