UNPKG

get-it

Version:

Generic HTTP request library for node, browsers and workers

2 lines (1 loc) 3.97 kB
import{c as e}from"./_chunks-es/createRequester.js";import{g as t}from"./_chunks-es/_commonjsHelpers.js";var r,s,o=/* @__PURE__ */t(function(){if(s)return r;s=1;var e=function(e){return e.replace(/^\s+|\s+$/g,"")};return r=function(t){if(!t)return{};for(var r={},s=e(t).split("\n"),o=0;o<s.length;o++){var n=s[o],a=n.indexOf(":"),i=e(n.slice(0,a)).toLowerCase(),u=e(n.slice(a+1));typeof r[i]>"u"?r[i]=u:(l=r[i],"[object Array]"===Object.prototype.toString.call(l)?r[i].push(u):r[i]=[r[i],u])}var l;return r}}());class n{onabort;onerror;onreadystatechange;ontimeout;readyState=0;response;responseText="";responseType="";status;statusText;withCredentials;#e;#t;#r;#s={};#o;#n={};#a;open(e,t,r){this.#e=e,this.#t=t,this.#r="",this.readyState=1,this.onreadystatechange?.(),this.#o=void 0}abort(){this.#o&&this.#o.abort()}getAllResponseHeaders(){return this.#r}setRequestHeader(e,t){this.#s[e]=t}setInit(e,t=!0){this.#n=e,this.#a=t}send(e){const t="arraybuffer"!==this.responseType,r={...this.#n,method:this.#e,headers:this.#s,body:e};"function"==typeof AbortController&&this.#a&&(this.#o=new AbortController,typeof EventTarget<"u"&&this.#o.signal instanceof EventTarget&&(r.signal=this.#o.signal)),typeof document<"u"&&(r.credentials=this.withCredentials?"include":"omit"),fetch(this.#t,r).then((e=>(e.headers.forEach(((e,t)=>{this.#r+=`${t}: ${e}\r\n`})),this.status=e.status,this.statusText=e.statusText,this.readyState=3,this.onreadystatechange?.(),t?e.text():e.arrayBuffer()))).then((e=>{"string"==typeof e?this.responseText=e:this.response=e,this.readyState=4,this.onreadystatechange?.()})).catch((e=>{"AbortError"!==e.name?this.onerror?.(e):this.onabort?.()}))}}const a="function"==typeof XMLHttpRequest?"xhr":"fetch",i="xhr"===a?XMLHttpRequest:n,u=(e,t)=>{const r=e.options,s=e.applyMiddleware("finalizeOptions",r),u={},l=e.applyMiddleware("interceptRequest",void 0,{adapter:a,context:e});if(l){const e=setTimeout(t,0,null,l);return{abort:()=>clearTimeout(e)}}let c=new i;c instanceof n&&"object"==typeof s.fetch&&c.setInit(s.fetch,s.useAbortSignal??!0);const h=s.headers,d=s.timeout;let p=!1,f=!1,y=!1;if(c.onerror=e=>{g(c instanceof n?e instanceof Error?e:new Error(`Request error while attempting to reach is ${s.url}`,{cause:e}):new Error(`Request error while attempting to reach is ${s.url}${e.lengthComputable?`(${e.loaded} of ${e.total} bytes transferred)`:""}`))},c.ontimeout=e=>{g(new Error(`Request timeout while attempting to reach ${s.url}${e.lengthComputable?`(${e.loaded} of ${e.total} bytes transferred)`:""}`))},c.onabort=()=>{b(!0),p=!0},c.onreadystatechange=()=>{d&&(b(),u.socket=setTimeout((()=>m("ESOCKETTIMEDOUT")),d.socket)),!p&&4===c.readyState&&0!==c.status&&function(){if(!(p||f||y)){if(0===c.status)return void g(new Error("Unknown XHR error"));b(),f=!0,t(null,{body:c.response||(""===c.responseType||"text"===c.responseType?c.responseText:""),url:s.url,method:s.method,headers:o(c.getAllResponseHeaders()),statusCode:c.status,statusMessage:c.statusText})}}()},c.open(s.method,s.url,!0),c.withCredentials=!!s.withCredentials,h&&c.setRequestHeader)for(const e in h)h.hasOwnProperty(e)&&c.setRequestHeader(e,h[e]);return s.rawBody&&(c.responseType="arraybuffer"),e.applyMiddleware("onRequest",{options:s,adapter:a,request:c,context:e}),c.send(s.body||null),d&&(u.connect=setTimeout((()=>m("ETIMEDOUT")),d.connect)),{abort:function(){p=!0,c&&c.abort()}};function m(t){y=!0,c.abort();const r=new Error("ESOCKETTIMEDOUT"===t?`Socket timed out on request to ${s.url}`:`Connection timed out on request to ${s.url}`);r.code=t,e.channels.error.publish(r)}function b(e){(e||p||c.readyState>=2&&u.connect)&&clearTimeout(u.connect),u.socket&&clearTimeout(u.socket)}function g(e){if(f)return;b(!0),f=!0,c=null;const r=e||new Error(`Network error while attempting to reach ${s.url}`);r.isNetworkError=!0,r.request=s,t(r)}},l=(t=[],r=u)=>e(t,r),c="react-server";export{a as adapter,c as environment,l as getIt};//# sourceMappingURL=index.react-server.js.map