| import { AxiosError } from "axios"; | |
| function F_collect_error_status_n_message(arg0: { ERR: any }) { | |
| const { ERR } = arg0; | |
| const is_axios_err = ERR instanceof AxiosError; | |
| let status = | |
| (ERR as any)?.status_code || | |
| (ERR as any)?.status || | |
| (is_axios_err && ERR.response?.status) || | |
| 500; | |
| let message = | |
| (ERR as any)?.status_message || | |
| (is_axios_err && | |
| (ERR.response?.data?.message || | |
| ERR.response?.data?.status_message || | |
| ERR.response?.statusText)) || | |
| (ERR as any)?.message || | |
| (ERR as any)?.error || | |
| (ERR as any)?.code || | |
| "Unexpected error"; | |
| if (message === "ECONNREFUSED") { | |
| message = "network connection refused"; | |
| } | |
| if (is_axios_err) { | |
| const headers = ERR.response?.headers; | |
| if (headers) { | |
| status = headers["x-error-status"] || status; | |
| message = headers["x-error-message"] || message; | |
| } | |
| } | |
| status = parseInt(`${status}`); | |
| return { | |
| status, | |
| message | |
| }; | |
| } | |
| function F_collect_error_message(arg0: { ERR: any }) { | |
| const { ERR } = arg0; | |
| const { message } = F_collect_error_status_n_message({ ERR }); | |
| return { | |
| message | |
| }; | |
| } | |
| export const NS_error = { | |
| F_collect_error_status_n_message, | |
| F_collect_error_message | |
| }; | |