{"version":3,"file":"request.mjs","sources":["../../../../../src/uni-adapter/methods/request.ts"],"sourcesContent":["import { AxiosError, AxiosHeaders } from \"axios\";\n// @ts-expect-error ignore\nimport settle from \"axios/unsafe/core/settle\";\nimport { resolveUniAppRequestOptions } from \"../utils\";\nimport OnCanceled from \"./onCanceled\";\nimport type { Method } from \"../type\";\nimport type { AxiosResponse, InternalAxiosRequestConfig } from \"axios\";\n\nconst request: Method = (config) => {\n\treturn new Promise((resolve, reject) => {\n\t\tconst requestOptions = resolveUniAppRequestOptions(config);\n\t\tconst responseConfig = config as InternalAxiosRequestConfig;\n\t\tresponseConfig.headers = new AxiosHeaders(requestOptions.header);\n\n\t\tconst onCanceled = new OnCanceled(config);\n\t\tlet task: UniApp.RequestTask | null = uni.request({\n\t\t\t...requestOptions,\n\t\t\tsuccess(result) {\n\t\t\t\tif (!task) return;\n\n\t\t\t\t// 兼容钉钉安卓返回的header格式\n\t\t\t\tif (Array.isArray(result.header)) {\n\t\t\t\t\tconst dingHeader = {};\n\t\t\t\t\tresult.header.forEach((h) => Object.assign(dingHeader, h));\n\t\t\t\t\tresult.header = dingHeader;\n\t\t\t\t}\n\n\t\t\t\tconst headers = new AxiosHeaders(result.header);\n\t\t\t\tconst response: AxiosResponse = {\n\t\t\t\t\tconfig: responseConfig,\n\t\t\t\t\tdata: result.data,\n\t\t\t\t\theaders,\n\t\t\t\t\tstatus: result.statusCode,\n\t\t\t\t\tstatusText: result.errMsg ?? \"OK\",\n\t\t\t\t\trequest: task,\n\t\t\t\t\tcookies: result.cookies,\n\t\t\t\t};\n\t\t\t\tsettle(resolve, reject, response);\n\t\t\t\ttask = null;\n\t\t\t},\n\t\t\tfail(error) {\n\t\t\t\tconst { errMsg = \"\" } = error ?? {};\n\t\t\t\tif (errMsg) {\n\t\t\t\t\tconst isTimeoutError = errMsg === \"request:fail timeout\";\n\t\t\t\t\tconst isEconnabortedError = errMsg === \"request:fail abort\";\n\t\t\t\t\tconst isSslError = errMsg === \"request:fail ssl\";\n\t\t\t\t\tconst isNetworkError = errMsg === \"request:fail\" || errMsg === \"request:fail \";\n\n\t\t\t\t\tif (isTimeoutError) reject(new AxiosError(errMsg, AxiosError.ETIMEDOUT, responseConfig, task));\n\t\t\t\t\tif (isEconnabortedError) reject(new AxiosError(errMsg, AxiosError.ECONNABORTED, responseConfig, task));\n\t\t\t\t\tif (isSslError) reject(new AxiosError(errMsg, AxiosError.ERR_NETWORK, responseConfig, task));\n\t\t\t\t\tif (isNetworkError) reject(new AxiosError(errMsg, AxiosError.ERR_NETWORK, responseConfig, task));\n\t\t\t\t}\n\t\t\t\treject(new AxiosError(error.errMsg, undefined, responseConfig, task));\n\t\t\t\ttask = null;\n\t\t\t},\n\t\t\tcomplete() {\n\t\t\t\tonCanceled.unsubscribe();\n\t\t\t},\n\t\t});\n\n\t\tif (typeof config.onHeadersReceived === \"function\") task.onHeadersReceived(config.onHeadersReceived);\n\n\t\tonCanceled.subscribe(task, reject);\n\t});\n};\n\nexport default request;\n"],"names":["request","config","Promise","resolve","reject","requestOptions","resolveUniAppRequestOptions","responseConfig","headers","AxiosHeaders","header","onCanceled","OnCanceled","task","uni","success","result","Array","isArray","dingHeader","forEach","h","Object","assign","response","data","status","statusCode","statusText","errMsg","cookies","settle","fail","error","isEconnabortedError","isSslError","isNetworkError","AxiosError","ETIMEDOUT","ECONNABORTED","ERR_NETWORK","complete","unsubscribe","onHeadersReceived","subscribe"],"mappings":"kPAQA,MAAMA,EAAmBC,GACjB,IAAIC,QAAQ,CAACC,EAASC,KAC5B,MAAMC,EAAiBC,EAA4BL,GAC7CM,EAAiBN,EACvBM,EAAeC,QAAU,IAAIC,EAAaJ,EAAeK,QAEzD,MAAMC,EAAa,IAAIC,EAAWX,GAClC,IAAIY,EAAkCC,IAAId,QAAQ,IAC9CK,EACH,OAAAU,CAAQC,GACP,IAAKH,EAAM,OAGX,GAAII,MAAMC,QAAQF,EAAON,QAAS,CACjC,MAAMS,EAAa,CAAA,EACnBH,EAAON,OAAOU,QAASC,GAAMC,OAAOC,OAAOJ,EAAYE,IACvDL,EAAON,OAASS,CACjB,CAEA,MAAMX,EAAU,IAAIC,EAAaO,EAAON,QAClCc,EAA0B,CAC/BvB,OAAQM,EACRkB,KAAMT,EAAOS,KACbjB,UACAkB,OAAQV,EAAOW,WACfC,WAAYZ,EAAOa,QAAU,KAC7B7B,QAASa,EACTiB,QAASd,EAAOc,SAEjBC,EAAO5B,EAASC,EAAQoB,GACxBX,EAAO,IACR,EACA,IAAAmB,CAAKC,GACJ,MAAMJ,OAAEA,EAAS,IAAOI,GAAS,CAAA,EACjC,GAAIJ,EAAQ,CACX,MACMK,EAAiC,uBAAXL,EACtBM,EAAwB,qBAAXN,EACbO,EAA4B,iBAAXP,GAAwC,kBAAXA,EAHlB,yBAAXA,KAKI,IAAIQ,EAAWR,EAAQQ,EAAWC,UAAW/B,EAAgBM,IACpFqB,KAA4B,IAAIG,EAAWR,EAAQQ,EAAWE,aAAchC,EAAgBM,IAC5FsB,KAAmB,IAAIE,EAAWR,EAAQQ,EAAWG,YAAajC,EAAgBM,IAClFuB,KAAuB,IAAIC,EAAWR,EAAQQ,EAAWG,YAAajC,EAAgBM,GAC3F,CACAT,EAAO,IAAIiC,EAAWJ,EAAMJ,YAAQ,EAAWtB,EAAgBM,IAC/DA,EAAO,IACR,EACA,QAAA4B,GACC9B,EAAW+B,aACZ,IAGuC,mBAA7BzC,EAAO0C,mBAAkC9B,EAAK8B,kBAAkB1C,EAAO0C,mBAElFhC,EAAWiC,UAAU/B,EAAMT"}