1
1
class 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 ) ) ;
4
4
this . statusCode = statusCode ;
5
5
this . title = title ;
6
- this . detail = detail ;
6
+ this . info = data ;
7
7
}
8
8
9
- static makeMessage ( statusCode , title , detail ) {
9
+ static makeMessage ( statusCode , title , data ) {
10
10
let message = '' ;
11
11
12
12
message += statusCode ? `${ statusCode } - ` : '(unknown status code) - ' ;
13
13
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)' ;
15
19
16
20
return message ;
17
21
}
@@ -31,7 +35,7 @@ class UnexpectedError extends Error {
31
35
32
36
export default function handleError ( error ) {
33
37
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 ) ;
35
39
} else if ( error . request ) {
36
40
throw new NetworkError ( 'Impossible to contact the server. Check your internet connection.' ) ;
37
41
} else {
0 commit comments