added change-image feature in profile, sign-up validating password and shows correct error, if user already exists

This commit is contained in:
Alibek committed 2024-02-29 20:45:09 +06:00
1 parent 6650a98503
commit 0a7513dd89
5 files changed
+398 -27

No files matched your search

+29 -2
View File
@@ -24,6 +24,7 @@ const SignUpForm = () => {
> = async (e) => {
e.preventDefault();
const formData = new FormData(e.currentTarget);
const regex = /^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])/;
if (!formData.get("email")?.toString()) {
setError("");
@@ -41,6 +42,26 @@ const SignUpForm = () => {
return;
}
if ((formData.get("password")?.toString().length as number) < 8) {
setError("");
setEmailWarning("");
setPasswordConfirmWarning("");
setPasswordWarning(
"Пароль должен содержать минимум 8 символов"
);
return;
}
if (!regex.test(formData.get("password")?.toString() as string)) {
setError("");
setEmailWarning("");
setPasswordConfirmWarning("");
setPasswordWarning(
"Пароль должен содержать по меньшей мере 1 прописную букву, одну заглавную букву и одну цифру"
);
return;
}
if (!formData.get("password2")?.toString()) {
setError("");
setEmailWarning("");
@@ -79,9 +100,15 @@ const SignUpForm = () => {
}
} catch (error: unknown) {
if (error instanceof AxiosError) {
setError("Произошла непредвиденная ошибка");
if (error.response?.status === 401) {
setError("Такой пользователь уже существует");
} else if (
error.response?.status.toString().slice(0, 1) === "5"
) {
setError("Ошибка на стороне сервера");
}
} else {
setError("An error ocured");
setError("Непредвиденная ошибка");
}
} finally {
setLoader(false);