11class HttpError extends Error {
2- constructor ( statusCode , title , detail ) {
3- super ( HttpError . makeMessage ( statusCode , title , detail ) ) ;
2+ constructor ( statusCode , title , data ) {
3+ super ( HttpError . makeMessage ( statusCode , title , data ) ) ;
44 this . statusCode = statusCode ;
55 this . title = title ;
6- this . detail = detail ;
6+ this . info = data ;
77 }
88
9- static makeMessage ( statusCode , title , detail ) {
9+ static makeMessage ( statusCode , title , data ) {
1010 let message = '' ;
1111
1212 message += statusCode ? `${ statusCode } - ` : '(unknown status code) - ' ;
1313 message += title ? `${ title } - ` : '(unknown error message) - ' ;
14- message += detail ? `${ JSON . stringify ( detail ) } ` : '(unknown error detail)' ;
14+ message += data . detail
15+ ? 'Error located in: ' + `${ JSON . stringify ( data . detail [ 0 ] . loc ) } ` + ', ' + `${ data . detail [ 0 ] . msg } `
16+ : data . error
17+ ? `${ data . error } `
18+ : '(unknown error detail)' ;
1519
1620 return message ;
1721 }
@@ -31,7 +35,7 @@ class UnexpectedError extends Error {
3135
3236export default function handleError ( error ) {
3337 if ( error . response ) {
34- throw new HttpError ( error . response . status , error . response . statusText , error . response . data . detail ) ;
38+ throw new HttpError ( error . response . status , error . response . statusText , error . response . data ) ;
3539 } else if ( error . request ) {
3640 throw new NetworkError ( 'Impossible to contact the server. Check your internet connection.' ) ;
3741 } else {
0 commit comments