feat: add error snackbar for errors originating from registerUser function

This commit is contained in:
kasia.oczkowska
2024-10-17 08:37:21 +01:00
parent 0234b4ad81
commit 21da49f79d

View File

@@ -53,15 +53,13 @@ function SignUpForm() {
}, [authentication.isAuthenticated]);
const handleSubmit = async (values) => {
const { fullName, email, password } = values;
await registerUser({
fullName,
email,
password,
});
try {
const { fullName, email, password } = values;
await registerUser({
fullName,
email,
password,
});
const { data } = await createAccessToken({
email,
password,
@@ -69,9 +67,27 @@ function SignUpForm() {
const { token } = data;
authentication.updateToken(token);
} catch (error) {
enqueueSnackbar(error?.message || formatMessage('signupForm.error'), {
variant: 'error',
});
const errors = error?.response?.data?.errors
? Object.values(error.response.data.errors)
: [];
if (errors.length) {
for (const [error] of errors) {
enqueueSnackbar(error, {
variant: 'error',
SnackbarProps: {
'data-test': 'snackbar-sign-up-error',
},
});
}
} else {
enqueueSnackbar(error?.message || formatMessage('signupForm.error'), {
variant: 'error',
SnackbarProps: {
'data-test': 'snackbar-sign-up-error',
},
});
}
}
};