File tree Expand file tree Collapse file tree 1 file changed +13
-6
lines changed Expand file tree Collapse file tree 1 file changed +13
-6
lines changed Original file line number Diff line number Diff line change 1
1
export type Params = Record < string , string | number | boolean | null >
2
2
3
- export type ErrorResponse = {
4
- code : number
5
- message : string
6
- }
3
+ export type ErrorResponse =
4
+ | {
5
+ code : number
6
+ statusCode ?: never
7
+ message : string
8
+ }
9
+ | {
10
+ code ?: never
11
+ statusCode : number
12
+ message : string
13
+ }
7
14
8
15
const isErrorResponse = ( data : unknown ) : data is ErrorResponse => {
9
16
const isObject = typeof data === 'object' && data !== null
10
- return isObject && 'code' in data && 'message' in data
17
+ return isObject && ( 'code' in data || 'statusCode' in data ) && 'message' in data
11
18
}
12
19
13
20
function replaceParam ( str : string , key : string , value : string ) : string {
@@ -48,7 +55,7 @@ async function parseResponse<T>(resp: Response): Promise<T> {
48
55
49
56
if ( ! resp . ok ) {
50
57
const errTxt = isErrorResponse ( json )
51
- ? `CGW error - ${ json . code } : ${ json . message } `
58
+ ? `CGW error - ${ json . code ?? json . statusCode } : ${ json . message } `
52
59
: `CGW error - status ${ resp . statusText } `
53
60
throw new Error ( errTxt )
54
61
}
You can’t perform that action at this time.
0 commit comments