xior
Version:
A lite http request lib based on fetch with plugins support and similar API to axios.
2 lines (1 loc) • 1.06 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});var _chunk646GK2HSjs = require('../chunk-646GK2HS.js');var _chunkPXDN3KFOjs = require('../chunk-PXDN3KFO.js');var n=new Map;function P(C={}){let{enableDedupe:g,onDedupe:q}=C;return function(a){return e=>_chunkPXDN3KFOjs.d.call(void 0, this,null,function*(){var f,b;let{paramsSerializer:x,enableDedupe:s=g,onDedupe:d=q}=e,O=e.method===_chunk646GK2HSjs.n||e.isGet,p=typeof s,l=p===_chunk646GK2HSjs.b,i=_chunk646GK2HSjs.i;if(l&&(i=s(e)),i===_chunk646GK2HSjs.i&&(i=l||p===`${_chunk646GK2HSjs.i}`?O:!!s),!i)return a(e);let o=_chunk646GK2HSjs.v.call(void 0, e.url&&_chunk646GK2HSjs.z.call(void 0, e.url)?e.url:_chunk646GK2HSjs.A.call(void 0, e.baseURL,e.url),{a:e.data,b:e.params},x);if(!n.has(o))n.set(o,[]);else return d&&d(e),new Promise((t,r)=>{var D;(D=n.get(o))==null||D.push([t,r])});try{let t=yield a(e);return(f=n.get(o))==null||f.forEach(([r])=>r(t)),n.delete(o),t}catch(t){throw(b=n.get(o))==null||b.forEach(([,r])=>r(t)),n.delete(o),t}})}}exports.default = P; exports.inflight = n;