| 108 | * `undefined`. |
| 109 | */ |
| 110 | export const httpStatusCode = error => { |
| 111 | if (!Boolean(error)) { |
| 112 | return undefined |
| 113 | } |
| 114 | |
| 115 | let statusCode = undefined |
| 116 | if (isBackend(error)) { |
| 117 | statusCode = error.http_code || grpcErrToHttpErr(error.code || error.grpc_code) |
| 118 | } else if (isFrontend(error)) { |
| 119 | statusCode = error.statusCode |
| 120 | } else if (Boolean(error.statusCode)) { |
| 121 | statusCode = error.statusCode |
| 122 | } else if (Boolean(error.response) && Boolean(error.response.status)) { |
| 123 | statusCode = error.response.status |
| 124 | } else if (isObject(error) && error.cause) { |
| 125 | return httpStatusCode(error.cause) |
| 126 | } |
| 127 | |
| 128 | return Boolean(statusCode) ? parseInt(statusCode) : undefined |
| 129 | } |
| 130 | /** |
| 131 | * Returns the GRPC Status code in case of a backend error. |
| 132 | * |
no test coverage detected