UNPKG

xior

Version:

A lite http request lib based on fetch with plugins support and similar API to axios.

2 lines (1 loc) 785 B
import{A as R,b as X,i as u,n as c,v as h,z as y}from"../chunk-JGM66FSA.mjs";import{d as m}from"../chunk-BOVQDIMN.mjs";var n=new Map;function P(C={}){let{enableDedupe:g,onDedupe:q}=C;return function(a){return e=>m(this,null,function*(){var f,b;let{paramsSerializer:x,enableDedupe:s=g,onDedupe:d=q}=e,O=e.method===c||e.isGet,p=typeof s,l=p===X,i=u;if(l&&(i=s(e)),i===u&&(i=l||p===`${u}`?O:!!s),!i)return a(e);let o=h(e.url&&y(e.url)?e.url:R(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}})}}export{P as default,n as inflight};