Skip to content
34 changes: 23 additions & 11 deletions packages/shared/src/hooks/useUserInfoForm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -119,19 +119,31 @@ const useUserInfoForm = (): UseUserInfoForm => {

onError: (err) => {
if (err?.response?.errors?.length) {
const data: ProfileFormHint = JSON.parse(
err.response.errors[0].message,
);

Object.entries(data).forEach(([key, value]) => {
methods.setError(key as keyof UserProfile, {
type: 'manual',
message: value,
try {
const data: ProfileFormHint = JSON.parse(
err.response.errors[0].message,
);

Object.entries(data).forEach(([key, value]) => {
methods.setError(key as keyof UserProfile, {
type: 'manual',
message: value,
});
});
});
} else {
displayToast('Failed to update profile');
} catch (e: unknown) {
// If parsing fails, the error message is not in the expected format
// Log for debugging purposes with the original error message
if (process.env.NODE_ENV !== 'production') {
console.warn(
'Failed to parse error response:',
err.response.errors[0].message,
e,
);
}
}
}

displayToast('Failed to update profile');
},
});

Expand Down