varX=p.default,J=f.default,Q=_.default.spawn,Z=ee;functionee(e){e=e||{};vart,s,r=this,i=y.default,n=m.default,o={},a=!1,h={"User-Agent":"node-XMLHttpRequest",Accept:"*/*"},c=Object.assign({},h),l=["accept-charset","accept-encoding","access-control-request-headers","access-control-request-method","connection","content-length","content-transfer-encoding","cookie","cookie2","date","expect","host","keep-alive","origin","referer","te","trailer","transfer-encoding","upgrade","via"],d=["TRACE","TRACK","CONNECT"],u=!1,p=!1,f=!1,_={};this.UNSENT=0,this.OPENED=1,this.HEADERS_RECEIVED=2,this.LOADING=3,this.DONE=4,this.readyState=this.UNSENT,this.onreadystatechange=null,this.responseText="",this.responseXML="",this.status=null,this.statusText=null;this.open=function(e,t,s,r,i){if(this.abort(),p=!1,f=!1,!function(e){returne&&-1===d.indexOf(e)}(e))thrownewError("SecurityError: Request method not allowed");o={method:e,url:t.toString(),async:"boolean"!=typeofs||s,user:r||null,password:i||null},g(this.OPENED)},this.setDisableHeaderCheck=function(e){a=e},this.setRequestHeader=function(e,t){if(this.readyState!=this.OPENED)thrownewError("INVALID_STATE_ERR: setRequestHeader can only be called when state is OPEN");if(!function(e){returna||e&&-1===l.indexOf(e.toLowerCase())}(e))returnconsole.warn('Refused to set unsafe header "'+e+'"'),!1;if(u)thrownewError("INVALID_STATE_ERR: send flag is true");returnc[e]=t,!0},this.getResponseHeader=function(e){return"string"==typeofe&&this.readyState>this.OPENED&&s.headers[e.toLowerCase()]&&!p?s.headers[e.toLowerCase()]:null},this.getAllResponseHeaders=function(){if(this.readyState<this.HEADERS_RECEIVED||p)return"";vare="";for(vartins.headers)"set-cookie"!==t&&"set-cookie2"!==t&&(e+=t+": "+s.headers[t]+"\r\n");returne.substr(0,e.length-2)},this.getRequestHeader=function(e){return"string"==typeofe&&c[e]?c[e]:""},this.send=function(a){if(this.readyState!=this.OPENED)thrownewError("INVALID_STATE_ERR: connection must be opened before send() is called");if(u)thrownewError("INVALID_STATE_ERR: send has already been called");varh,l=!1,d=!1,f=J.parse(o.url);switch(f.protocol){case"https:":l=!0;case"http:":h=f.hostname;break;case"file:":d=!0;break;casevoid0:case"":h="localhost";break;default:thrownewError("Protocol not supported.")}if(d){if("GET"!==o.method)thrownewError("XMLHttpRequest: Only GET method is supported");if(o.async)X.readFile(unescape(f.pathname),"utf8",(function(e,t){e?r.handleError(e,e.errno||-1):(r.status=200,r.responseText=t,g(r.DONE))}));elsetry{this.responseText=X.readFileSync(unescape(f.pathname),"utf8"),this.status=200,g(r.DONE)}catch(e){this.handleError(e,e.errno||-1)}}else{var_=f.port||(l?443:80),y=f.pathname+(f.search?f.search:"");if(c.Host=h,l&&443===_||80===_||(c.Host+=":"+f.port),o.user){void0===o.password&&(o.password="");varm=newBuffer(o.user+":"+o.password);c.Authorization="Basic "+m.toString("base64")}"GET"===o.method||"HEAD"===o.method?a=null:a?(c["Content-Length"]=Buffer.isBuffer(a)?a.length:Buffer.byteLength(a),c["Content-Type"]||(c["Content-Type"]="text/plain;charset=UTF-8")):"POST"===o.method&&(c["Content-Length"]=0);varb=e.agent||!1,v={host:h,port:_,path:y,method:o.method,headers:c,agent:b};if(l&&(v.pfx=e.pfx,v.key=e.key,v.passphrase=e.passphrase,v.cert=e.cert,v.ca=e.ca,v.ciphers=e.ciphers,v.rejectUnauthorized=!1!==e.rejectUnauthorized),p=!1,o.async){varE=l?n.request:i.request;u=!0,r.dispatchEvent("readystatechange");varw=function(i){if(302===(s=i).statusCode||303===s.statusCode||307===s.statusCode){o.url=s.headers.location;varn=J.parse(o.url);h=n.hostname;vara={hostname:n.hostname,port:n.port,path:n.path,method:303===s.statusCode?"GET":o.method,headers:c};returnl&&(a.pfx=e.pfx,a.key=e.key,a.passphrase=e.passphrase,a.cert=e.cert,a.ca=e.ca,a.ciphers=e.ciphers,a.rejectUnauthorized=!1!==e.rejectUnauthorized),void(t=E(a,w).on("error",S)).end()}s&&s.setEncoding&&s.setEncoding("utf8"),g(r.HEADERS_RECEIVED),r.status=s.statusCode,s.on("data",(function(e){e&&(r.responseText+=e),u&&g(r.LOADING)})),s.on("end",(function(){u&&(u=!1,g(r.DONE))})),s.