mirror of
https://github.com/immich-app/immich.git
synced 2026-05-21 07:06:31 -04:00
refactor(server)!: structured validation error responses (#28204)
* refactor(server)!: structured validation error responses * refactor(server): clarify comment on removing duplicate HTTP response fields * enhance validation error tests * make path and message required * fmt * fix e2e test * fmt * feat: enhance error handling in getServerErrorMessage function
This commit is contained in:
@@ -16,6 +16,18 @@ export function getServerErrorMessage(error: unknown) {
|
||||
}
|
||||
}
|
||||
|
||||
if (Array.isArray(data?.errors) && data.errors.length > 0) {
|
||||
const details = data.errors
|
||||
.map(({ path, message }) => {
|
||||
const field = path
|
||||
.map((segment, i) => (typeof segment === 'number' ? `[${segment}]` : i === 0 ? segment : `.${segment}`))
|
||||
.join('');
|
||||
return field ? `${field}: ${message}` : message;
|
||||
})
|
||||
.join(', ');
|
||||
return `${data.message}: ${details}`;
|
||||
}
|
||||
|
||||
return data?.message || error.message;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user