diff --git a/README.md b/README.md
index be2d241..6b20684 100644
--- a/README.md
+++ b/README.md
@@ -443,6 +443,45 @@ easyinvoice.createInvoice(data, function (result) {
+## Error handling
+
+Callback
+
+```js
+var easyinvoice = require('easyinvoice');
+
+var data = {
+ apiKey: "free", // Please register to receive a production apiKey: https://app.budgetinvoice.com/register
+ mode: "development", // Production or development, defaults to production
+};
+
+easyinvoice.createInvoice(data, function (invoice) {
+ console.log(invoice);
+}).catch((error) => {
+ // Handle the error
+ console.log(error);
+});
+```
+
+Async/await
+
+```js
+var easyinvoice = require('easyinvoice');
+
+var data = {
+ apiKey: "free", // Please register to receive a production apiKey: https://app.budgetinvoice.com/register
+ mode: "development", // Production or development, defaults to production
+};
+
+try {
+ const invoice = await easyinvoice.createInvoice(data);
+ console.log(invoice);
+} catch (error) {
+ // Handle the error
+ console.log(error);
+}
+```
+
## Locales and Currency
Used for number formatting and the currency symbol:
diff --git a/dist/easyinvoice.min.js b/dist/easyinvoice.min.js
index 25fda99..ae20c2b 100644
--- a/dist/easyinvoice.min.js
+++ b/dist/easyinvoice.min.js
@@ -1,2 +1,2 @@
"use strict";(()=>{var yr=Object.create;var Te=Object.defineProperty;var wr=Object.getOwnPropertyDescriptor;var xr=Object.getOwnPropertyNames;var br=Object.getPrototypeOf,Er=Object.prototype.hasOwnProperty;var d=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var gr=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of xr(e))!Er.call(t,n)&&n!==r&&Te(t,n,{get:()=>e[n],enumerable:!(i=wr(e,n))||i.enumerable});return t};var te=(t,e,r)=>(r=t!=null?yr(br(t)):{},gr(e||!t||!t.__esModule?Te(r,"default",{value:t,enumerable:!0}):r,t));var re=d((zn,Ue)=>{"use strict";Ue.exports=function(e,r){return function(){for(var n=new Array(arguments.length),o=0;o{"use strict";var Ar=re(),ie=Object.prototype.toString,oe=function(t){return function(e){var r=ie.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())}}(Object.create(null));function C(t){return t=t.toLowerCase(),function(r){return oe(r)===t}}function se(t){return Array.isArray(t)}function V(t){return typeof t>"u"}function Rr(t){return t!==null&&!V(t)&&t.constructor!==null&&!V(t.constructor)&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}var Pe=C("ArrayBuffer");function Or(t){var e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&Pe(t.buffer),e}function Cr(t){return typeof t=="string"}function qr(t){return typeof t=="number"}function De(t){return t!==null&&typeof t=="object"}function H(t){if(oe(t)!=="object")return!1;var e=Object.getPrototypeOf(t);return e===null||e===Object.prototype}var Sr=C("Date"),_r=C("File"),Br=C("Blob"),Tr=C("FileList");function ae(t){return ie.call(t)==="[object Function]"}function Ur(t){return De(t)&&ae(t.pipe)}function Pr(t){var e="[object FormData]";return t&&(typeof FormData=="function"&&t instanceof FormData||ie.call(t)===e||ae(t.toString)&&t.toString()===e)}var Dr=C("URLSearchParams");function Nr(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function Lr(){return typeof navigator<"u"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")?!1:typeof window<"u"&&typeof document<"u"}function ue(t,e){if(!(t===null||typeof t>"u"))if(typeof t!="object"&&(t=[t]),se(t))for(var r=0,i=t.length;r0;)o=i[n],u[o]||(e[o]=t[o],u[o]=!0);t=Object.getPrototypeOf(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e}function Mr(t,e,r){t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;var i=t.indexOf(e,r);return i!==-1&&i===r}function zr(t){if(!t)return null;var e=t.length;if(V(e))return null;for(var r=new Array(e);e-- >0;)r[e]=t[e];return r}var Hr=function(t){return function(e){return t&&e instanceof t}}(typeof Uint8Array<"u"&&Object.getPrototypeOf(Uint8Array));Ne.exports={isArray:se,isArrayBuffer:Pe,isBuffer:Rr,isFormData:Pr,isArrayBufferView:Or,isString:Cr,isNumber:qr,isObject:De,isPlainObject:H,isUndefined:V,isDate:Sr,isFile:_r,isBlob:Br,isFunction:ae,isStream:Ur,isURLSearchParams:Dr,isStandardBrowserEnv:Lr,forEach:ue,merge:ne,extend:Fr,trim:Nr,stripBOM:kr,inherits:jr,toFlatObject:Ir,kindOf:oe,kindOfTest:C,endsWith:Mr,toArray:zr,isTypedArray:Hr,isFileList:Tr}});var fe=d((Vn,Fe)=>{"use strict";var B=m();function Le(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}Fe.exports=function(e,r,i){if(!r)return e;var n;if(i)n=i(r);else if(B.isURLSearchParams(r))n=r.toString();else{var o=[];B.forEach(r,function(f,l){f===null||typeof f>"u"||(B.isArray(f)?l=l+"[]":f=[f],B.forEach(f,function(c){B.isDate(c)?c=c.toISOString():B.isObject(c)&&(c=JSON.stringify(c)),o.push(Le(l)+"="+Le(c))}))}),n=o.join("&")}if(n){var u=e.indexOf("#");u!==-1&&(e=e.slice(0,u)),e+=(e.indexOf("?")===-1?"?":"&")+n}return e}});var je=d((Jn,ke)=>{"use strict";var Vr=m();function J(){this.handlers=[]}J.prototype.use=function(e,r,i){return this.handlers.push({fulfilled:e,rejected:r,synchronous:i?i.synchronous:!1,runWhen:i?i.runWhen:null}),this.handlers.length-1};J.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)};J.prototype.forEach=function(e){Vr.forEach(this.handlers,function(i){i!==null&&e(i)})};ke.exports=J});var Me=d((Wn,Ie)=>{"use strict";var Jr=m();Ie.exports=function(e,r){Jr.forEach(e,function(n,o){o!==r&&o.toUpperCase()===r.toUpperCase()&&(e[r]=n,delete e[o])})}});var q=d((Zn,Je)=>{"use strict";var ze=m();function T(t,e,r,i,n){Error.call(this),this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),i&&(this.request=i),n&&(this.response=n)}ze.inherits(T,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var He=T.prototype,Ve={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED"].forEach(function(t){Ve[t]={value:t}});Object.defineProperties(T,Ve);Object.defineProperty(He,"isAxiosError",{value:!0});T.from=function(t,e,r,i,n,o){var u=Object.create(He);return ze.toFlatObject(t,u,function(f){return f!==Error.prototype}),T.call(u,t.message,e,r,i,n),u.name=t.name,o&&Object.assign(u,o),u};Je.exports=T});var ce=d((Xn,We)=>{"use strict";We.exports={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1}});var le=d((Kn,Ze)=>{"use strict";var E=m();function Wr(t,e){e=e||new FormData;var r=[];function i(o){return o===null?"":E.isDate(o)?o.toISOString():E.isArrayBuffer(o)||E.isTypedArray(o)?typeof Blob=="function"?new Blob([o]):Buffer.from(o):o}function n(o,u){if(E.isPlainObject(o)||E.isArray(o)){if(r.indexOf(o)!==-1)throw Error("Circular reference detected in "+u);r.push(o),E.forEach(o,function(f,l){if(!E.isUndefined(f)){var a=u?u+"."+l:l,c;if(f&&!u&&typeof f=="object"){if(E.endsWith(l,"{}"))f=JSON.stringify(f);else if(E.endsWith(l,"[]")&&(c=E.toArray(f))){c.forEach(function(p){!E.isUndefined(p)&&e.append(a,i(p))});return}}n(f,a)}}),r.pop()}else e.append(u,i(o))}return n(t),e}Ze.exports=Wr});var Ke=d(($n,Xe)=>{"use strict";var de=q();Xe.exports=function(e,r,i){var n=i.config.validateStatus;!i.status||!n||n(i.status)?e(i):r(new de("Request failed with status code "+i.status,[de.ERR_BAD_REQUEST,de.ERR_BAD_RESPONSE][Math.floor(i.status/100)-4],i.config,i.request,i))}});var Qe=d((Qn,$e)=>{"use strict";var W=m();$e.exports=W.isStandardBrowserEnv()?function(){return{write:function(r,i,n,o,u,s){var f=[];f.push(r+"="+encodeURIComponent(i)),W.isNumber(n)&&f.push("expires="+new Date(n).toGMTString()),W.isString(o)&&f.push("path="+o),W.isString(u)&&f.push("domain="+u),s===!0&&f.push("secure"),document.cookie=f.join("; ")},read:function(r){var i=document.cookie.match(new RegExp("(^|;\\s*)("+r+")=([^;]*)"));return i?decodeURIComponent(i[3]):null},remove:function(r){this.write(r,"",Date.now()-864e5)}}}():function(){return{write:function(){},read:function(){return null},remove:function(){}}}()});var Ye=d((Gn,Ge)=>{"use strict";Ge.exports=function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}});var tt=d((Yn,et)=>{"use strict";et.exports=function(e,r){return r?e.replace(/\/+$/,"")+"/"+r.replace(/^\/+/,""):e}});var pe=d((ei,rt)=>{"use strict";var Zr=Ye(),Xr=tt();rt.exports=function(e,r){return e&&!Zr(r)?Xr(e,r):r}});var it=d((ti,nt)=>{"use strict";var he=m(),Kr=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];nt.exports=function(e){var r={},i,n,o;return e&&he.forEach(e.split(`
-`),function(s){if(o=s.indexOf(":"),i=he.trim(s.substr(0,o)).toLowerCase(),n=he.trim(s.substr(o+1)),i){if(r[i]&&Kr.indexOf(i)>=0)return;i==="set-cookie"?r[i]=(r[i]?r[i]:[]).concat([n]):r[i]=r[i]?r[i]+", "+n:n}}),r}});var at=d((ri,st)=>{"use strict";var ot=m();st.exports=ot.isStandardBrowserEnv()?function(){var e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),i;function n(o){var u=o;return e&&(r.setAttribute("href",u),u=r.href),r.setAttribute("href",u),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return i=n(window.location.href),function(u){var s=ot.isString(u)?n(u):u;return s.protocol===i.protocol&&s.host===i.host}}():function(){return function(){return!0}}()});var k=d((ni,ft)=>{"use strict";var me=q(),$r=m();function ut(t){me.call(this,t??"canceled",me.ERR_CANCELED),this.name="CanceledError"}$r.inherits(ut,me,{__CANCEL__:!0});ft.exports=ut});var lt=d((ii,ct)=>{"use strict";ct.exports=function(e){var r=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return r&&r[1]||""}});var ve=d((oi,dt)=>{"use strict";var j=m(),Qr=Ke(),Gr=Qe(),Yr=fe(),en=pe(),tn=it(),rn=at(),nn=ce(),g=q(),on=k(),sn=lt();dt.exports=function(e){return new Promise(function(i,n){var o=e.data,u=e.headers,s=e.responseType,f;function l(){e.cancelToken&&e.cancelToken.unsubscribe(f),e.signal&&e.signal.removeEventListener("abort",f)}j.isFormData(o)&&j.isStandardBrowserEnv()&&delete u["Content-Type"];var a=new XMLHttpRequest;if(e.auth){var c=e.auth.username||"",p=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";u.Authorization="Basic "+btoa(c+":"+p)}var h=en(e.baseURL,e.url);a.open(e.method.toUpperCase(),Yr(h,e.params,e.paramsSerializer),!0),a.timeout=e.timeout;function S(){if(a){var y="getAllResponseHeaders"in a?tn(a.getAllResponseHeaders()):null,_=!s||s==="text"||s==="json"?a.responseText:a.response,O={data:_,status:a.status,statusText:a.statusText,headers:y,config:e,request:a};Qr(function(ee){i(ee),l()},function(ee){n(ee),l()},O),a=null}}if("onloadend"in a?a.onloadend=S:a.onreadystatechange=function(){!a||a.readyState!==4||a.status===0&&!(a.responseURL&&a.responseURL.indexOf("file:")===0)||setTimeout(S)},a.onabort=function(){a&&(n(new g("Request aborted",g.ECONNABORTED,e,a)),a=null)},a.onerror=function(){n(new g("Network Error",g.ERR_NETWORK,e,a,a)),a=null},a.ontimeout=function(){var _=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",O=e.transitional||nn;e.timeoutErrorMessage&&(_=e.timeoutErrorMessage),n(new g(_,O.clarifyTimeoutError?g.ETIMEDOUT:g.ECONNABORTED,e,a)),a=null},j.isStandardBrowserEnv()){var F=(e.withCredentials||rn(h))&&e.xsrfCookieName?Gr.read(e.xsrfCookieName):void 0;F&&(u[e.xsrfHeaderName]=F)}"setRequestHeader"in a&&j.forEach(u,function(_,O){typeof o>"u"&&O.toLowerCase()==="content-type"?delete u[O]:a.setRequestHeader(O,_)}),j.isUndefined(e.withCredentials)||(a.withCredentials=!!e.withCredentials),s&&s!=="json"&&(a.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&a.addEventListener("progress",e.onDownloadProgress),typeof e.onUploadProgress=="function"&&a.upload&&a.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(f=function(y){a&&(n(!y||y&&y.type?new on:y),a.abort(),a=null)},e.cancelToken&&e.cancelToken.subscribe(f),e.signal&&(e.signal.aborted?f():e.signal.addEventListener("abort",f))),o||(o=null);var R=sn(h);if(R&&["http","https","file"].indexOf(R)===-1){n(new g("Unsupported protocol "+R+":",g.ERR_BAD_REQUEST,e));return}a.send(o)})}});var ht=d((si,pt)=>{pt.exports=null});var X=d((ai,wt)=>{"use strict";var v=m(),mt=Me(),vt=q(),an=ce(),un=le(),fn={"Content-Type":"application/x-www-form-urlencoded"};function yt(t,e){!v.isUndefined(t)&&v.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}function cn(){var t;return typeof XMLHttpRequest<"u"?t=ve():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(t=ve()),t}function ln(t,e,r){if(v.isString(t))try{return(e||JSON.parse)(t),v.trim(t)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(t)}var Z={transitional:an,adapter:cn(),transformRequest:[function(e,r){if(mt(r,"Accept"),mt(r,"Content-Type"),v.isFormData(e)||v.isArrayBuffer(e)||v.isBuffer(e)||v.isStream(e)||v.isFile(e)||v.isBlob(e))return e;if(v.isArrayBufferView(e))return e.buffer;if(v.isURLSearchParams(e))return yt(r,"application/x-www-form-urlencoded;charset=utf-8"),e.toString();var i=v.isObject(e),n=r&&r["Content-Type"],o;if((o=v.isFileList(e))||i&&n==="multipart/form-data"){var u=this.env&&this.env.FormData;return un(o?{"files[]":e}:e,u&&new u)}else if(i||n==="application/json")return yt(r,"application/json"),ln(e);return e}],transformResponse:[function(e){var r=this.transitional||Z.transitional,i=r&&r.silentJSONParsing,n=r&&r.forcedJSONParsing,o=!i&&this.responseType==="json";if(o||n&&v.isString(e)&&e.length)try{return JSON.parse(e)}catch(u){if(o)throw u.name==="SyntaxError"?vt.from(u,vt.ERR_BAD_RESPONSE,this,null,this.response):u}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ht()},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};v.forEach(["delete","get","head"],function(e){Z.headers[e]={}});v.forEach(["post","put","patch"],function(e){Z.headers[e]=v.merge(fn)});wt.exports=Z});var bt=d((ui,xt)=>{"use strict";var dn=m(),pn=X();xt.exports=function(e,r,i){var n=this||pn;return dn.forEach(i,function(u){e=u.call(n,e,r)}),e}});var ye=d((fi,Et)=>{"use strict";Et.exports=function(e){return!!(e&&e.__CANCEL__)}});var Rt=d((ci,At)=>{"use strict";var gt=m(),we=bt(),hn=ye(),mn=X(),vn=k();function xe(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new vn}At.exports=function(e){xe(e),e.headers=e.headers||{},e.data=we.call(e,e.data,e.headers,e.transformRequest),e.headers=gt.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),gt.forEach(["delete","get","head","post","put","patch","common"],function(n){delete e.headers[n]});var r=e.adapter||mn.adapter;return r(e).then(function(n){return xe(e),n.data=we.call(e,n.data,n.headers,e.transformResponse),n},function(n){return hn(n)||(xe(e),n&&n.response&&(n.response.data=we.call(e,n.response.data,n.response.headers,e.transformResponse))),Promise.reject(n)})}});var be=d((li,Ot)=>{"use strict";var b=m();Ot.exports=function(e,r){r=r||{};var i={};function n(a,c){return b.isPlainObject(a)&&b.isPlainObject(c)?b.merge(a,c):b.isPlainObject(c)?b.merge({},c):b.isArray(c)?c.slice():c}function o(a){if(b.isUndefined(r[a])){if(!b.isUndefined(e[a]))return n(void 0,e[a])}else return n(e[a],r[a])}function u(a){if(!b.isUndefined(r[a]))return n(void 0,r[a])}function s(a){if(b.isUndefined(r[a])){if(!b.isUndefined(e[a]))return n(void 0,e[a])}else return n(void 0,r[a])}function f(a){if(a in r)return n(e[a],r[a]);if(a in e)return n(void 0,e[a])}var l={url:u,method:u,data:u,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:f};return b.forEach(Object.keys(e).concat(Object.keys(r)),function(c){var p=l[c]||o,h=p(c);b.isUndefined(h)&&p!==f||(i[c]=h)}),i}});var Ee=d((di,Ct)=>{Ct.exports={version:"0.27.2"}});var _t=d((pi,St)=>{"use strict";var yn=Ee().version,A=q(),ge={};["object","boolean","number","function","string","symbol"].forEach(function(t,e){ge[t]=function(i){return typeof i===t||"a"+(e<1?"n ":" ")+t}});var qt={};ge.transitional=function(e,r,i){function n(o,u){return"[Axios v"+yn+"] Transitional option '"+o+"'"+u+(i?". "+i:"")}return function(o,u,s){if(e===!1)throw new A(n(u," has been removed"+(r?" in "+r:"")),A.ERR_DEPRECATED);return r&&!qt[u]&&(qt[u]=!0,console.warn(n(u," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(o,u,s):!0}};function wn(t,e,r){if(typeof t!="object")throw new A("options must be an object",A.ERR_BAD_OPTION_VALUE);for(var i=Object.keys(t),n=i.length;n-- >0;){var o=i[n],u=e[o];if(u){var s=t[o],f=s===void 0||u(s,o,t);if(f!==!0)throw new A("option "+o+" must be "+f,A.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new A("Unknown option "+o,A.ERR_BAD_OPTION)}}St.exports={assertOptions:wn,validators:ge}});var Nt=d((hi,Dt)=>{"use strict";var Ut=m(),xn=fe(),Bt=je(),Tt=Rt(),K=be(),bn=pe(),Pt=_t(),U=Pt.validators;function P(t){this.defaults=t,this.interceptors={request:new Bt,response:new Bt}}P.prototype.request=function(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=K(this.defaults,r),r.method?r.method=r.method.toLowerCase():this.defaults.method?r.method=this.defaults.method.toLowerCase():r.method="get";var i=r.transitional;i!==void 0&&Pt.assertOptions(i,{silentJSONParsing:U.transitional(U.boolean),forcedJSONParsing:U.transitional(U.boolean),clarifyTimeoutError:U.transitional(U.boolean)},!1);var n=[],o=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(o=o&&h.synchronous,n.unshift(h.fulfilled,h.rejected))});var u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});var s;if(!o){var f=[Tt,void 0];for(Array.prototype.unshift.apply(f,n),f=f.concat(u),s=Promise.resolve(r);f.length;)s=s.then(f.shift(),f.shift());return s}for(var l=r;n.length;){var a=n.shift(),c=n.shift();try{l=a(l)}catch(p){c(p);break}}try{s=Tt(l)}catch(p){return Promise.reject(p)}for(;u.length;)s=s.then(u.shift(),u.shift());return s};P.prototype.getUri=function(e){e=K(this.defaults,e);var r=bn(e.baseURL,e.url);return xn(r,e.params,e.paramsSerializer)};Ut.forEach(["delete","get","head","options"],function(e){P.prototype[e]=function(r,i){return this.request(K(i||{},{method:e,url:r,data:(i||{}).data}))}});Ut.forEach(["post","put","patch"],function(e){function r(i){return function(o,u,s){return this.request(K(s||{},{method:e,headers:i?{"Content-Type":"multipart/form-data"}:{},url:o,data:u}))}}P.prototype[e]=r(),P.prototype[e+"Form"]=r(!0)});Dt.exports=P});var Ft=d((mi,Lt)=>{"use strict";var En=k();function D(t){if(typeof t!="function")throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(n){e=n});var r=this;this.promise.then(function(i){if(r._listeners){var n,o=r._listeners.length;for(n=0;n{"use strict";kt.exports=function(e){return function(i){return e.apply(null,i)}}});var Mt=d((yi,It)=>{"use strict";var gn=m();It.exports=function(e){return gn.isObject(e)&&e.isAxiosError===!0}});var Vt=d((wi,Ae)=>{"use strict";var zt=m(),An=re(),$=Nt(),Rn=be(),On=X();function Ht(t){var e=new $(t),r=An($.prototype.request,e);return zt.extend(r,$.prototype,e),zt.extend(r,e),r.create=function(n){return Ht(Rn(t,n))},r}var x=Ht(On);x.Axios=$;x.CanceledError=k();x.CancelToken=Ft();x.isCancel=ye();x.VERSION=Ee().version;x.toFormData=le();x.AxiosError=q();x.Cancel=x.CanceledError;x.all=function(e){return Promise.all(e)};x.spread=jt();x.isAxiosError=Mt();Ae.exports=x;Ae.exports.default=x});var Wt=d((xi,Jt)=>{Jt.exports=Vt()});var Zt=d((I,Q)=>{(function(t){"use strict";function e(r,i){if(r instanceof Boolean||typeof r=="boolean"||(i instanceof Object||(i={}),i.allowEmpty===!1&&r===""))return!1;var n="(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+/]{3}=)?",o="(data:\\w+\\/[a-zA-Z\\+\\-\\.]+;base64,)";return i.mimeRequired===!0?n=o+n:i.allowMime===!0&&(n=o+"?"+n),i.paddingRequired===!1&&(n="(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}(==)?|[A-Za-z0-9+\\/]{3}=?)?"),new RegExp("^"+n+"$","gi").test(r)}typeof I<"u"?(typeof Q<"u"&&Q.exports&&(I=Q.exports=e),I.isBase64=e):typeof define=="function"&&define.amd?define([],function(){return e}):t.isBase64=e})(I)});var Xt=d((Re,Oe)=>{(function(t,e){typeof define=="function"&&define.amd?define([],e):typeof Re<"u"?e():(e(),t.FileSaver={})})(Re,function(){"use strict";function t(s,f){return typeof f>"u"?f={autoBom:!1}:typeof f!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),f={autoBom:!f}),f.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(s.type)?new Blob(["\uFEFF",s],{type:s.type}):s}function e(s,f,l){var a=new XMLHttpRequest;a.open("GET",s),a.responseType="blob",a.onload=function(){u(a.response,f,l)},a.onerror=function(){console.error("could not download file")},a.send()}function r(s){var f=new XMLHttpRequest;f.open("HEAD",s,!1);try{f.send()}catch{}return 200<=f.status&&299>=f.status}function i(s){try{s.dispatchEvent(new MouseEvent("click"))}catch{var f=document.createEvent("MouseEvents");f.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),s.dispatchEvent(f)}}var n=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,o=n.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),u=n.saveAs||(typeof window!="object"||window!==n?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(s,f,l){var a=n.URL||n.webkitURL,c=document.createElement("a");f=f||s.name||"download",c.download=f,c.rel="noopener",typeof s=="string"?(c.href=s,c.origin===location.origin?i(c):r(c.href)?e(s,f,l):i(c,c.target="_blank")):(c.href=a.createObjectURL(s),setTimeout(function(){a.revokeObjectURL(c.href)},4e4),setTimeout(function(){i(c)},0))}:"msSaveOrOpenBlob"in navigator?function(s,f,l){if(f=f||s.name||"download",typeof s!="string")navigator.msSaveOrOpenBlob(t(s,l),f);else if(r(s))e(s,f,l);else{var a=document.createElement("a");a.href=s,a.target="_blank",setTimeout(function(){i(a)})}}:function(s,f,l,a){if(a=a||open("","_blank"),a&&(a.document.title=a.document.body.innerText="downloading..."),typeof s=="string")return e(s,f,l);var c=s.type==="application/octet-stream",p=/constructor/i.test(n.HTMLElement)||n.safari,h=/CriOS\/[\d]+/.test(navigator.userAgent);if((h||c&&p||o)&&typeof FileReader<"u"){var S=new FileReader;S.onloadend=function(){var y=S.result;y=h?y:y.replace(/^data:[^;]*;/,"data:attachment/file;"),a?a.location.href=y:location=y,a=null},S.readAsDataURL(s)}else{var F=n.URL||n.webkitURL,R=F.createObjectURL(s);a?a.location=R:location.href=R,a=null,setTimeout(function(){F.revokeObjectURL(R)},4e4)}});n.saveAs=u.saveAs=u,typeof Oe<"u"&&(Oe.exports=u)})});var pr=te(Wt()),hr=te(Zt()),mr=te(Xt());var er="3.7.5",Cn=er,qn=typeof atob=="function",Sn=typeof btoa=="function",L=typeof Buffer=="function",Kt=typeof TextDecoder=="function"?new TextDecoder:void 0,$t=typeof TextEncoder=="function"?new TextEncoder:void 0,_n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",M=Array.prototype.slice.call(_n),G=(t=>{let e={};return t.forEach((r,i)=>e[r]=i),e})(M),Bn=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,w=String.fromCharCode.bind(String),Qt=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):t=>new Uint8Array(Array.prototype.slice.call(t,0)),tr=t=>t.replace(/=/g,"").replace(/[+\/]/g,e=>e=="+"?"-":"_"),rr=t=>t.replace(/[^A-Za-z0-9\+\/]/g,""),nr=t=>{let e,r,i,n,o="",u=t.length%3;for(let s=0;s255||(i=t.charCodeAt(s++))>255||(n=t.charCodeAt(s++))>255)throw new TypeError("invalid character found");e=r<<16|i<<8|n,o+=M[e>>18&63]+M[e>>12&63]+M[e>>6&63]+M[e&63]}return u?o.slice(0,u-3)+"===".substring(u):o},Se=Sn?t=>btoa(t):L?t=>Buffer.from(t,"binary").toString("base64"):nr,Ce=L?t=>Buffer.from(t).toString("base64"):t=>{let r=[];for(let i=0,n=t.length;ie?tr(Ce(t)):Ce(t),Tn=t=>{if(t.length<2){var e=t.charCodeAt(0);return e<128?t:e<2048?w(192|e>>>6)+w(128|e&63):w(224|e>>>12&15)+w(128|e>>>6&63)+w(128|e&63)}else{var e=65536+(t.charCodeAt(0)-55296)*1024+(t.charCodeAt(1)-56320);return w(240|e>>>18&7)+w(128|e>>>12&63)+w(128|e>>>6&63)+w(128|e&63)}},Un=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,ir=t=>t.replace(Un,Tn),Gt=L?t=>Buffer.from(t,"utf8").toString("base64"):$t?t=>Ce($t.encode(t)):t=>Se(ir(t)),N=(t,e=!1)=>e?tr(Gt(t)):Gt(t),Yt=t=>N(t,!0),Pn=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,Dn=t=>{switch(t.length){case 4:var e=(7&t.charCodeAt(0))<<18|(63&t.charCodeAt(1))<<12|(63&t.charCodeAt(2))<<6|63&t.charCodeAt(3),r=e-65536;return w((r>>>10)+55296)+w((r&1023)+56320);case 3:return w((15&t.charCodeAt(0))<<12|(63&t.charCodeAt(1))<<6|63&t.charCodeAt(2));default:return w((31&t.charCodeAt(0))<<6|63&t.charCodeAt(1))}},or=t=>t.replace(Pn,Dn),sr=t=>{if(t=t.replace(/\s+/g,""),!Bn.test(t))throw new TypeError("malformed base64.");t+="==".slice(2-(t.length&3));let e,r="",i,n;for(let o=0;o>16&255):n===64?w(e>>16&255,e>>8&255):w(e>>16&255,e>>8&255,e&255);return r},_e=qn?t=>atob(rr(t)):L?t=>Buffer.from(t,"base64").toString("binary"):sr,ar=L?t=>Qt(Buffer.from(t,"base64")):t=>Qt(_e(t).split("").map(e=>e.charCodeAt(0))),ur=t=>ar(fr(t)),Nn=L?t=>Buffer.from(t,"base64").toString("utf8"):Kt?t=>Kt.decode(ar(t)):t=>or(_e(t)),fr=t=>rr(t.replace(/[-_]/g,e=>e=="-"?"+":"/")),qe=t=>Nn(fr(t)),Ln=t=>{if(typeof t!="string")return!1;let e=t.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(e)||!/[^\s0-9a-zA-Z\-_]/.test(e)},cr=t=>({value:t,enumerable:!1,writable:!0,configurable:!0}),lr=function(){let t=(e,r)=>Object.defineProperty(String.prototype,e,cr(r));t("fromBase64",function(){return qe(this)}),t("toBase64",function(e){return N(this,e)}),t("toBase64URI",function(){return N(this,!0)}),t("toBase64URL",function(){return N(this,!0)}),t("toUint8Array",function(){return ur(this)})},dr=function(){let t=(e,r)=>Object.defineProperty(Uint8Array.prototype,e,cr(r));t("toBase64",function(e){return Y(this,e)}),t("toBase64URI",function(){return Y(this,!0)}),t("toBase64URL",function(){return Y(this,!0)})},Fn=()=>{lr(),dr()},Be={version:er,VERSION:Cn,atob:_e,atobPolyfill:sr,btoa:Se,btoaPolyfill:nr,fromBase64:qe,toBase64:N,encode:N,encodeURI:Yt,encodeURL:Yt,utob:ir,btou:or,decode:qe,isValid:Ln,fromUint8Array:Y,toUint8Array:ur,extendString:lr,extendUint8Array:dr,extendBuiltins:Fn};var z=class{constructor(e,r,i,n){this._pdf=e,this._totalPages=r,this._renderedPdf=i,this._elementId=n}createInvoice(e,r=()=>{}){return new Promise((i,n)=>{let o="https://api.easyinvoice.cloud/v2/free/invoices",u={data:e},s={headers:{"easyinvoice-source":"npm"}};e.apiKey&&e.apiKey.trim()!==""&&(s.headers.Authorization=`Bearer ${e.apiKey}`),pr.default.create().post(o,u,s).then(f=>{let l=f.data.data;this._pdf=l.pdf,i(l),r(l)}).catch(f=>{console.log(f.response.data),n(f.response.data),r(f.response.data)})})}download(e="invoice.pdf",r=this._pdf){if(e===void 0||(0,hr.default)(e))throw new Error("Invalid filename.");if(typeof window=="undefined")throw new Error("Easy Invoice download() is only supported in the browser.");kn(e,"application/pdf",r)}render(e,r=this._pdf,i=()=>{}){return new Promise(n=>{if(typeof window=="undefined")throw new Error("Easy Invoice render() is only supported in the browser.");this._elementId=e,this.renderPdf(r,function(o){n(o),i(o)})})}renderPdf(e,r){pdfjsLib.getDocument({data:Be.atob(e)}).promise.then(n=>{this._totalPages=n.numPages,this._renderedPdf=n,this.renderPage(1,r)},function(n){console.error(n)})}renderPage(e,r){this._renderedPdf.getPage(e).then(i=>{let n=document.createElement("canvas"),o=In()?i.getViewport({scale:window.screen.width/i.getViewport({scale:1}).width}):i.getViewport({scale:Math.max(window.devicePixelRatio||1,1)});document.getElementById(this._elementId).innerHTML="",document.getElementById(this._elementId).appendChild(n);let s=n.getContext("2d");n.height=o.height,n.width=o.width;let f={canvasContext:s,viewport:o};i.render(f).promise.then(function(){r(!0)})})}};function kn(t,e,r){let i=jn(r,e);mr.default.saveAs(i,t)}function jn(t,e){e=e||"";let r=1024,i=Be.atob(t),n=i.length,o=Math.ceil(n/r),u=new Array(o);for(let s=0;s=0)return;i==="set-cookie"?r[i]=(r[i]?r[i]:[]).concat([n]):r[i]=r[i]?r[i]+", "+n:n}}),r}});var at=d((ri,st)=>{"use strict";var ot=m();st.exports=ot.isStandardBrowserEnv()?function(){var e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),i;function n(o){var u=o;return e&&(r.setAttribute("href",u),u=r.href),r.setAttribute("href",u),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return i=n(window.location.href),function(u){var s=ot.isString(u)?n(u):u;return s.protocol===i.protocol&&s.host===i.host}}():function(){return function(){return!0}}()});var k=d((ni,ft)=>{"use strict";var me=q(),$r=m();function ut(t){me.call(this,t??"canceled",me.ERR_CANCELED),this.name="CanceledError"}$r.inherits(ut,me,{__CANCEL__:!0});ft.exports=ut});var lt=d((ii,ct)=>{"use strict";ct.exports=function(e){var r=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return r&&r[1]||""}});var ve=d((oi,dt)=>{"use strict";var j=m(),Qr=Ke(),Gr=Qe(),Yr=fe(),en=pe(),tn=it(),rn=at(),nn=ce(),g=q(),on=k(),sn=lt();dt.exports=function(e){return new Promise(function(i,n){var o=e.data,u=e.headers,s=e.responseType,f;function l(){e.cancelToken&&e.cancelToken.unsubscribe(f),e.signal&&e.signal.removeEventListener("abort",f)}j.isFormData(o)&&j.isStandardBrowserEnv()&&delete u["Content-Type"];var a=new XMLHttpRequest;if(e.auth){var c=e.auth.username||"",p=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";u.Authorization="Basic "+btoa(c+":"+p)}var h=en(e.baseURL,e.url);a.open(e.method.toUpperCase(),Yr(h,e.params,e.paramsSerializer),!0),a.timeout=e.timeout;function S(){if(a){var y="getAllResponseHeaders"in a?tn(a.getAllResponseHeaders()):null,_=!s||s==="text"||s==="json"?a.responseText:a.response,O={data:_,status:a.status,statusText:a.statusText,headers:y,config:e,request:a};Qr(function(ee){i(ee),l()},function(ee){n(ee),l()},O),a=null}}if("onloadend"in a?a.onloadend=S:a.onreadystatechange=function(){!a||a.readyState!==4||a.status===0&&!(a.responseURL&&a.responseURL.indexOf("file:")===0)||setTimeout(S)},a.onabort=function(){a&&(n(new g("Request aborted",g.ECONNABORTED,e,a)),a=null)},a.onerror=function(){n(new g("Network Error",g.ERR_NETWORK,e,a,a)),a=null},a.ontimeout=function(){var _=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",O=e.transitional||nn;e.timeoutErrorMessage&&(_=e.timeoutErrorMessage),n(new g(_,O.clarifyTimeoutError?g.ETIMEDOUT:g.ECONNABORTED,e,a)),a=null},j.isStandardBrowserEnv()){var F=(e.withCredentials||rn(h))&&e.xsrfCookieName?Gr.read(e.xsrfCookieName):void 0;F&&(u[e.xsrfHeaderName]=F)}"setRequestHeader"in a&&j.forEach(u,function(_,O){typeof o>"u"&&O.toLowerCase()==="content-type"?delete u[O]:a.setRequestHeader(O,_)}),j.isUndefined(e.withCredentials)||(a.withCredentials=!!e.withCredentials),s&&s!=="json"&&(a.responseType=e.responseType),typeof e.onDownloadProgress=="function"&&a.addEventListener("progress",e.onDownloadProgress),typeof e.onUploadProgress=="function"&&a.upload&&a.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(f=function(y){a&&(n(!y||y&&y.type?new on:y),a.abort(),a=null)},e.cancelToken&&e.cancelToken.subscribe(f),e.signal&&(e.signal.aborted?f():e.signal.addEventListener("abort",f))),o||(o=null);var R=sn(h);if(R&&["http","https","file"].indexOf(R)===-1){n(new g("Unsupported protocol "+R+":",g.ERR_BAD_REQUEST,e));return}a.send(o)})}});var ht=d((si,pt)=>{pt.exports=null});var X=d((ai,wt)=>{"use strict";var v=m(),mt=Me(),vt=q(),an=ce(),un=le(),fn={"Content-Type":"application/x-www-form-urlencoded"};function yt(t,e){!v.isUndefined(t)&&v.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}function cn(){var t;return typeof XMLHttpRequest<"u"?t=ve():typeof process<"u"&&Object.prototype.toString.call(process)==="[object process]"&&(t=ve()),t}function ln(t,e,r){if(v.isString(t))try{return(e||JSON.parse)(t),v.trim(t)}catch(i){if(i.name!=="SyntaxError")throw i}return(r||JSON.stringify)(t)}var Z={transitional:an,adapter:cn(),transformRequest:[function(e,r){if(mt(r,"Accept"),mt(r,"Content-Type"),v.isFormData(e)||v.isArrayBuffer(e)||v.isBuffer(e)||v.isStream(e)||v.isFile(e)||v.isBlob(e))return e;if(v.isArrayBufferView(e))return e.buffer;if(v.isURLSearchParams(e))return yt(r,"application/x-www-form-urlencoded;charset=utf-8"),e.toString();var i=v.isObject(e),n=r&&r["Content-Type"],o;if((o=v.isFileList(e))||i&&n==="multipart/form-data"){var u=this.env&&this.env.FormData;return un(o?{"files[]":e}:e,u&&new u)}else if(i||n==="application/json")return yt(r,"application/json"),ln(e);return e}],transformResponse:[function(e){var r=this.transitional||Z.transitional,i=r&&r.silentJSONParsing,n=r&&r.forcedJSONParsing,o=!i&&this.responseType==="json";if(o||n&&v.isString(e)&&e.length)try{return JSON.parse(e)}catch(u){if(o)throw u.name==="SyntaxError"?vt.from(u,vt.ERR_BAD_RESPONSE,this,null,this.response):u}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ht()},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};v.forEach(["delete","get","head"],function(e){Z.headers[e]={}});v.forEach(["post","put","patch"],function(e){Z.headers[e]=v.merge(fn)});wt.exports=Z});var bt=d((ui,xt)=>{"use strict";var dn=m(),pn=X();xt.exports=function(e,r,i){var n=this||pn;return dn.forEach(i,function(u){e=u.call(n,e,r)}),e}});var ye=d((fi,Et)=>{"use strict";Et.exports=function(e){return!!(e&&e.__CANCEL__)}});var Rt=d((ci,At)=>{"use strict";var gt=m(),we=bt(),hn=ye(),mn=X(),vn=k();function xe(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new vn}At.exports=function(e){xe(e),e.headers=e.headers||{},e.data=we.call(e,e.data,e.headers,e.transformRequest),e.headers=gt.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),gt.forEach(["delete","get","head","post","put","patch","common"],function(n){delete e.headers[n]});var r=e.adapter||mn.adapter;return r(e).then(function(n){return xe(e),n.data=we.call(e,n.data,n.headers,e.transformResponse),n},function(n){return hn(n)||(xe(e),n&&n.response&&(n.response.data=we.call(e,n.response.data,n.response.headers,e.transformResponse))),Promise.reject(n)})}});var be=d((li,Ot)=>{"use strict";var b=m();Ot.exports=function(e,r){r=r||{};var i={};function n(a,c){return b.isPlainObject(a)&&b.isPlainObject(c)?b.merge(a,c):b.isPlainObject(c)?b.merge({},c):b.isArray(c)?c.slice():c}function o(a){if(b.isUndefined(r[a])){if(!b.isUndefined(e[a]))return n(void 0,e[a])}else return n(e[a],r[a])}function u(a){if(!b.isUndefined(r[a]))return n(void 0,r[a])}function s(a){if(b.isUndefined(r[a])){if(!b.isUndefined(e[a]))return n(void 0,e[a])}else return n(void 0,r[a])}function f(a){if(a in r)return n(e[a],r[a]);if(a in e)return n(void 0,e[a])}var l={url:u,method:u,data:u,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:f};return b.forEach(Object.keys(e).concat(Object.keys(r)),function(c){var p=l[c]||o,h=p(c);b.isUndefined(h)&&p!==f||(i[c]=h)}),i}});var Ee=d((di,Ct)=>{Ct.exports={version:"0.27.2"}});var _t=d((pi,St)=>{"use strict";var yn=Ee().version,A=q(),ge={};["object","boolean","number","function","string","symbol"].forEach(function(t,e){ge[t]=function(i){return typeof i===t||"a"+(e<1?"n ":" ")+t}});var qt={};ge.transitional=function(e,r,i){function n(o,u){return"[Axios v"+yn+"] Transitional option '"+o+"'"+u+(i?". "+i:"")}return function(o,u,s){if(e===!1)throw new A(n(u," has been removed"+(r?" in "+r:"")),A.ERR_DEPRECATED);return r&&!qt[u]&&(qt[u]=!0,console.warn(n(u," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(o,u,s):!0}};function wn(t,e,r){if(typeof t!="object")throw new A("options must be an object",A.ERR_BAD_OPTION_VALUE);for(var i=Object.keys(t),n=i.length;n-- >0;){var o=i[n],u=e[o];if(u){var s=t[o],f=s===void 0||u(s,o,t);if(f!==!0)throw new A("option "+o+" must be "+f,A.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new A("Unknown option "+o,A.ERR_BAD_OPTION)}}St.exports={assertOptions:wn,validators:ge}});var Nt=d((hi,Dt)=>{"use strict";var Ut=m(),xn=fe(),Bt=je(),Tt=Rt(),K=be(),bn=pe(),Pt=_t(),U=Pt.validators;function P(t){this.defaults=t,this.interceptors={request:new Bt,response:new Bt}}P.prototype.request=function(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=K(this.defaults,r),r.method?r.method=r.method.toLowerCase():this.defaults.method?r.method=this.defaults.method.toLowerCase():r.method="get";var i=r.transitional;i!==void 0&&Pt.assertOptions(i,{silentJSONParsing:U.transitional(U.boolean),forcedJSONParsing:U.transitional(U.boolean),clarifyTimeoutError:U.transitional(U.boolean)},!1);var n=[],o=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(o=o&&h.synchronous,n.unshift(h.fulfilled,h.rejected))});var u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});var s;if(!o){var f=[Tt,void 0];for(Array.prototype.unshift.apply(f,n),f=f.concat(u),s=Promise.resolve(r);f.length;)s=s.then(f.shift(),f.shift());return s}for(var l=r;n.length;){var a=n.shift(),c=n.shift();try{l=a(l)}catch(p){c(p);break}}try{s=Tt(l)}catch(p){return Promise.reject(p)}for(;u.length;)s=s.then(u.shift(),u.shift());return s};P.prototype.getUri=function(e){e=K(this.defaults,e);var r=bn(e.baseURL,e.url);return xn(r,e.params,e.paramsSerializer)};Ut.forEach(["delete","get","head","options"],function(e){P.prototype[e]=function(r,i){return this.request(K(i||{},{method:e,url:r,data:(i||{}).data}))}});Ut.forEach(["post","put","patch"],function(e){function r(i){return function(o,u,s){return this.request(K(s||{},{method:e,headers:i?{"Content-Type":"multipart/form-data"}:{},url:o,data:u}))}}P.prototype[e]=r(),P.prototype[e+"Form"]=r(!0)});Dt.exports=P});var Ft=d((mi,Lt)=>{"use strict";var En=k();function D(t){if(typeof t!="function")throw new TypeError("executor must be a function.");var e;this.promise=new Promise(function(n){e=n});var r=this;this.promise.then(function(i){if(r._listeners){var n,o=r._listeners.length;for(n=0;n{"use strict";kt.exports=function(e){return function(i){return e.apply(null,i)}}});var Mt=d((yi,It)=>{"use strict";var gn=m();It.exports=function(e){return gn.isObject(e)&&e.isAxiosError===!0}});var Vt=d((wi,Ae)=>{"use strict";var zt=m(),An=re(),$=Nt(),Rn=be(),On=X();function Ht(t){var e=new $(t),r=An($.prototype.request,e);return zt.extend(r,$.prototype,e),zt.extend(r,e),r.create=function(n){return Ht(Rn(t,n))},r}var x=Ht(On);x.Axios=$;x.CanceledError=k();x.CancelToken=Ft();x.isCancel=ye();x.VERSION=Ee().version;x.toFormData=le();x.AxiosError=q();x.Cancel=x.CanceledError;x.all=function(e){return Promise.all(e)};x.spread=jt();x.isAxiosError=Mt();Ae.exports=x;Ae.exports.default=x});var Wt=d((xi,Jt)=>{Jt.exports=Vt()});var Zt=d((I,Q)=>{(function(t){"use strict";function e(r,i){if(r instanceof Boolean||typeof r=="boolean"||(i instanceof Object||(i={}),i.allowEmpty===!1&&r===""))return!1;var n="(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+/]{3}=)?",o="(data:\\w+\\/[a-zA-Z\\+\\-\\.]+;base64,)";return i.mimeRequired===!0?n=o+n:i.allowMime===!0&&(n=o+"?"+n),i.paddingRequired===!1&&(n="(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}(==)?|[A-Za-z0-9+\\/]{3}=?)?"),new RegExp("^"+n+"$","gi").test(r)}typeof I<"u"?(typeof Q<"u"&&Q.exports&&(I=Q.exports=e),I.isBase64=e):typeof define=="function"&&define.amd?define([],function(){return e}):t.isBase64=e})(I)});var Xt=d((Re,Oe)=>{(function(t,e){typeof define=="function"&&define.amd?define([],e):typeof Re<"u"?e():(e(),t.FileSaver={})})(Re,function(){"use strict";function t(s,f){return typeof f>"u"?f={autoBom:!1}:typeof f!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),f={autoBom:!f}),f.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(s.type)?new Blob(["\uFEFF",s],{type:s.type}):s}function e(s,f,l){var a=new XMLHttpRequest;a.open("GET",s),a.responseType="blob",a.onload=function(){u(a.response,f,l)},a.onerror=function(){console.error("could not download file")},a.send()}function r(s){var f=new XMLHttpRequest;f.open("HEAD",s,!1);try{f.send()}catch{}return 200<=f.status&&299>=f.status}function i(s){try{s.dispatchEvent(new MouseEvent("click"))}catch{var f=document.createEvent("MouseEvents");f.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),s.dispatchEvent(f)}}var n=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,o=n.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),u=n.saveAs||(typeof window!="object"||window!==n?function(){}:"download"in HTMLAnchorElement.prototype&&!o?function(s,f,l){var a=n.URL||n.webkitURL,c=document.createElement("a");f=f||s.name||"download",c.download=f,c.rel="noopener",typeof s=="string"?(c.href=s,c.origin===location.origin?i(c):r(c.href)?e(s,f,l):i(c,c.target="_blank")):(c.href=a.createObjectURL(s),setTimeout(function(){a.revokeObjectURL(c.href)},4e4),setTimeout(function(){i(c)},0))}:"msSaveOrOpenBlob"in navigator?function(s,f,l){if(f=f||s.name||"download",typeof s!="string")navigator.msSaveOrOpenBlob(t(s,l),f);else if(r(s))e(s,f,l);else{var a=document.createElement("a");a.href=s,a.target="_blank",setTimeout(function(){i(a)})}}:function(s,f,l,a){if(a=a||open("","_blank"),a&&(a.document.title=a.document.body.innerText="downloading..."),typeof s=="string")return e(s,f,l);var c=s.type==="application/octet-stream",p=/constructor/i.test(n.HTMLElement)||n.safari,h=/CriOS\/[\d]+/.test(navigator.userAgent);if((h||c&&p||o)&&typeof FileReader<"u"){var S=new FileReader;S.onloadend=function(){var y=S.result;y=h?y:y.replace(/^data:[^;]*;/,"data:attachment/file;"),a?a.location.href=y:location=y,a=null},S.readAsDataURL(s)}else{var F=n.URL||n.webkitURL,R=F.createObjectURL(s);a?a.location=R:location.href=R,a=null,setTimeout(function(){F.revokeObjectURL(R)},4e4)}});n.saveAs=u.saveAs=u,typeof Oe<"u"&&(Oe.exports=u)})});var pr=te(Wt()),hr=te(Zt()),mr=te(Xt());var er="3.7.5",Cn=er,qn=typeof atob=="function",Sn=typeof btoa=="function",L=typeof Buffer=="function",Kt=typeof TextDecoder=="function"?new TextDecoder:void 0,$t=typeof TextEncoder=="function"?new TextEncoder:void 0,_n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",M=Array.prototype.slice.call(_n),G=(t=>{let e={};return t.forEach((r,i)=>e[r]=i),e})(M),Bn=/^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/,w=String.fromCharCode.bind(String),Qt=typeof Uint8Array.from=="function"?Uint8Array.from.bind(Uint8Array):t=>new Uint8Array(Array.prototype.slice.call(t,0)),tr=t=>t.replace(/=/g,"").replace(/[+\/]/g,e=>e=="+"?"-":"_"),rr=t=>t.replace(/[^A-Za-z0-9\+\/]/g,""),nr=t=>{let e,r,i,n,o="",u=t.length%3;for(let s=0;s255||(i=t.charCodeAt(s++))>255||(n=t.charCodeAt(s++))>255)throw new TypeError("invalid character found");e=r<<16|i<<8|n,o+=M[e>>18&63]+M[e>>12&63]+M[e>>6&63]+M[e&63]}return u?o.slice(0,u-3)+"===".substring(u):o},Se=Sn?t=>btoa(t):L?t=>Buffer.from(t,"binary").toString("base64"):nr,Ce=L?t=>Buffer.from(t).toString("base64"):t=>{let r=[];for(let i=0,n=t.length;ie?tr(Ce(t)):Ce(t),Tn=t=>{if(t.length<2){var e=t.charCodeAt(0);return e<128?t:e<2048?w(192|e>>>6)+w(128|e&63):w(224|e>>>12&15)+w(128|e>>>6&63)+w(128|e&63)}else{var e=65536+(t.charCodeAt(0)-55296)*1024+(t.charCodeAt(1)-56320);return w(240|e>>>18&7)+w(128|e>>>12&63)+w(128|e>>>6&63)+w(128|e&63)}},Un=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g,ir=t=>t.replace(Un,Tn),Gt=L?t=>Buffer.from(t,"utf8").toString("base64"):$t?t=>Ce($t.encode(t)):t=>Se(ir(t)),N=(t,e=!1)=>e?tr(Gt(t)):Gt(t),Yt=t=>N(t,!0),Pn=/[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g,Dn=t=>{switch(t.length){case 4:var e=(7&t.charCodeAt(0))<<18|(63&t.charCodeAt(1))<<12|(63&t.charCodeAt(2))<<6|63&t.charCodeAt(3),r=e-65536;return w((r>>>10)+55296)+w((r&1023)+56320);case 3:return w((15&t.charCodeAt(0))<<12|(63&t.charCodeAt(1))<<6|63&t.charCodeAt(2));default:return w((31&t.charCodeAt(0))<<6|63&t.charCodeAt(1))}},or=t=>t.replace(Pn,Dn),sr=t=>{if(t=t.replace(/\s+/g,""),!Bn.test(t))throw new TypeError("malformed base64.");t+="==".slice(2-(t.length&3));let e,r="",i,n;for(let o=0;o>16&255):n===64?w(e>>16&255,e>>8&255):w(e>>16&255,e>>8&255,e&255);return r},_e=qn?t=>atob(rr(t)):L?t=>Buffer.from(t,"base64").toString("binary"):sr,ar=L?t=>Qt(Buffer.from(t,"base64")):t=>Qt(_e(t).split("").map(e=>e.charCodeAt(0))),ur=t=>ar(fr(t)),Nn=L?t=>Buffer.from(t,"base64").toString("utf8"):Kt?t=>Kt.decode(ar(t)):t=>or(_e(t)),fr=t=>rr(t.replace(/[-_]/g,e=>e=="-"?"+":"/")),qe=t=>Nn(fr(t)),Ln=t=>{if(typeof t!="string")return!1;let e=t.replace(/\s+/g,"").replace(/={0,2}$/,"");return!/[^\s0-9a-zA-Z\+/]/.test(e)||!/[^\s0-9a-zA-Z\-_]/.test(e)},cr=t=>({value:t,enumerable:!1,writable:!0,configurable:!0}),lr=function(){let t=(e,r)=>Object.defineProperty(String.prototype,e,cr(r));t("fromBase64",function(){return qe(this)}),t("toBase64",function(e){return N(this,e)}),t("toBase64URI",function(){return N(this,!0)}),t("toBase64URL",function(){return N(this,!0)}),t("toUint8Array",function(){return ur(this)})},dr=function(){let t=(e,r)=>Object.defineProperty(Uint8Array.prototype,e,cr(r));t("toBase64",function(e){return Y(this,e)}),t("toBase64URI",function(){return Y(this,!0)}),t("toBase64URL",function(){return Y(this,!0)})},Fn=()=>{lr(),dr()},Be={version:er,VERSION:Cn,atob:_e,atobPolyfill:sr,btoa:Se,btoaPolyfill:nr,fromBase64:qe,toBase64:N,encode:N,encodeURI:Yt,encodeURL:Yt,utob:ir,btou:or,decode:qe,isValid:Ln,fromUint8Array:Y,toUint8Array:ur,extendString:lr,extendUint8Array:dr,extendBuiltins:Fn};var z=class{constructor(e,r,i,n){this._pdf=e,this._totalPages=r,this._renderedPdf=i,this._elementId=n}createInvoice(e,r=()=>{}){return new Promise((i,n)=>{let o="https://api.easyinvoice.cloud/v2/free/invoices",u={data:e},s={headers:{"easyinvoice-source":"npm"}};e.apiKey&&e.apiKey.trim()!==""&&(s.headers.Authorization=`Bearer ${e.apiKey}`),pr.default.create().post(o,u,s).then(f=>{let l=f.data.data;this._pdf=l.pdf,i(l),r(l)}).catch(f=>{n(f.response.data),r(f.response.data)})})}download(e="invoice.pdf",r=this._pdf){if(e===void 0||(0,hr.default)(e))throw new Error("Invalid filename.");if(typeof window=="undefined")throw new Error("Easy Invoice download() is only supported in the browser.");kn(e,"application/pdf",r)}render(e,r=this._pdf,i=()=>{}){return new Promise(n=>{if(typeof window=="undefined")throw new Error("Easy Invoice render() is only supported in the browser.");this._elementId=e,this.renderPdf(r,function(o){n(o),i(o)})})}renderPdf(e,r){pdfjsLib.getDocument({data:Be.atob(e)}).promise.then(n=>{this._totalPages=n.numPages,this._renderedPdf=n,this.renderPage(1,r)},function(n){console.error(n)})}renderPage(e,r){this._renderedPdf.getPage(e).then(i=>{let n=document.createElement("canvas"),o=In()?i.getViewport({scale:window.screen.width/i.getViewport({scale:1}).width}):i.getViewport({scale:Math.max(window.devicePixelRatio||1,1)});document.getElementById(this._elementId).innerHTML="",document.getElementById(this._elementId).appendChild(n);let s=n.getContext("2d");n.height=o.height,n.width=o.width;let f={canvasContext:s,viewport:o};i.render(f).promise.then(function(){r(!0)})})}};function kn(t,e,r){let i=jn(r,e);mr.default.saveAs(i,t)}function jn(t,e){e=e||"";let r=1024,i=Be.atob(t),n=i.length,o=Math.ceil(n/r),u=new Array(o);for(let s=0;s undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n */\n\nfunction inherits(constructor, superConstructor, props, descriptors) {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function} [filter]\n * @returns {Object}\n */\n\nfunction toFlatObject(sourceObj, destObj, filter) {\n var props;\n var i;\n var prop;\n var merged = {};\n\n destObj = destObj || {};\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if (!merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = Object.getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/*\n * determines whether a string ends with the characters of a specified string\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n * @returns {boolean}\n */\nfunction endsWith(str, searchString, position) {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n var lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object\n * @param {*} [thing]\n * @returns {Array}\n */\nfunction toArray(thing) {\n if (!thing) return null;\n var i = thing.length;\n if (isUndefined(i)) return null;\n var arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n// eslint-disable-next-line func-names\nvar isTypedArray = (function(TypedArray) {\n // eslint-disable-next-line func-names\n return function(thing) {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && Object.getPrototypeOf(Uint8Array));\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM,\n inherits: inherits,\n toFlatObject: toFlatObject,\n kindOf: kindOf,\n kindOfTest: kindOfTest,\n endsWith: endsWith,\n toArray: toArray,\n isTypedArray: isTypedArray,\n isFileList: isFileList\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n", "'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n", "'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nvar prototype = AxiosError.prototype;\nvar descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED'\n// eslint-disable-next-line func-names\n].forEach(function(code) {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = function(error, code, config, request, response, customProps) {\n var axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nmodule.exports = AxiosError;\n", "'use strict';\n\nmodule.exports = {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n", "'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Convert a data object to FormData\n * @param {Object} obj\n * @param {?Object} [formData]\n * @returns {Object}\n **/\n\nfunction toFormData(obj, formData) {\n // eslint-disable-next-line no-param-reassign\n formData = formData || new FormData();\n\n var stack = [];\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n function build(data, parentKey) {\n if (utils.isPlainObject(data) || utils.isArray(data)) {\n if (stack.indexOf(data) !== -1) {\n throw Error('Circular reference detected in ' + parentKey);\n }\n\n stack.push(data);\n\n utils.forEach(data, function each(value, key) {\n if (utils.isUndefined(value)) return;\n var fullKey = parentKey ? parentKey + '.' + key : key;\n var arr;\n\n if (value && !parentKey && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (utils.endsWith(key, '[]') && (arr = utils.toArray(value))) {\n // eslint-disable-next-line func-names\n arr.forEach(function(el) {\n !utils.isUndefined(el) && formData.append(fullKey, convertValue(el));\n });\n return;\n }\n }\n\n build(value, fullKey);\n });\n\n stack.pop();\n } else {\n formData.append(parentKey, convertValue(data));\n }\n }\n\n build(obj);\n\n return formData;\n}\n\nmodule.exports = toFormData;\n", "'use strict';\n\nvar AxiosError = require('./AxiosError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n", "'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n};\n", "'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n", "'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n", "'use strict';\n\nvar AxiosError = require('../core/AxiosError');\nvar utils = require('../utils');\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction CanceledError(message) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nmodule.exports = CanceledError;\n", "'use strict';\n\nmodule.exports = function parseProtocol(url) {\n var match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n};\n", "'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar transitionalDefaults = require('../defaults/transitional');\nvar AxiosError = require('../core/AxiosError');\nvar CanceledError = require('../cancel/CanceledError');\nvar parseProtocol = require('../helpers/parseProtocol');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData) && utils.isStandardBrowserEnv()) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new CanceledError() : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n var protocol = parseProtocol(fullPath);\n\n if (protocol && [ 'http', 'https', 'file' ].indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData);\n });\n};\n", "// eslint-disable-next-line strict\nmodule.exports = null;\n", "'use strict';\n\nvar utils = require('../utils');\nvar normalizeHeaderName = require('../helpers/normalizeHeaderName');\nvar AxiosError = require('../core/AxiosError');\nvar transitionalDefaults = require('./transitional');\nvar toFormData = require('../helpers/toFormData');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('../adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('../adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n\n var isObjectPayload = utils.isObject(data);\n var contentType = headers && headers['Content-Type'];\n\n var isFileList;\n\n if ((isFileList = utils.isFileList(data)) || (isObjectPayload && contentType === 'multipart/form-data')) {\n var _FormData = this.env && this.env.FormData;\n return toFormData(isFileList ? {'files[]': data} : data, _FormData && new _FormData());\n } else if (isObjectPayload || contentType === 'application/json') {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: require('./env/FormData')\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n", "'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n", "'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n", "'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar CanceledError = require('../cancel/CanceledError');\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n", "'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'beforeRedirect': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n};\n", "module.exports = {\n \"version\": \"0.27.2\"\n};", "'use strict';\n\nvar VERSION = require('../env/data').version;\nvar AxiosError = require('../core/AxiosError');\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n", "'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar buildFullPath = require('./buildFullPath');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n var fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url: url,\n data: data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nmodule.exports = Axios;\n", "'use strict';\n\nvar CanceledError = require('./CanceledError');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n", "'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n};\n", "'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = require('./cancel/CanceledError');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\naxios.toFormData = require('./helpers/toFormData');\n\n// Expose AxiosError class\naxios.AxiosError = require('../lib/core/AxiosError');\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n", "module.exports = require('./lib/axios');", ";(function(root) {\n 'use strict';\n\n function isBase64(v, opts) {\n if (v instanceof Boolean || typeof v === 'boolean') {\n return false\n }\n\n if (!(opts instanceof Object)) {\n opts = {}\n }\n\n if (opts.allowEmpty === false && v === '') {\n return false\n }\n\n var regex = '(?:[A-Za-z0-9+\\\\/]{4})*(?:[A-Za-z0-9+\\\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?'\n var mimeRegex = '(data:\\\\w+\\\\/[a-zA-Z\\\\+\\\\-\\\\.]+;base64,)'\n\n if (opts.mimeRequired === true) {\n regex = mimeRegex + regex\n } else if (opts.allowMime === true) {\n regex = mimeRegex + '?' + regex\n }\n\n if (opts.paddingRequired === false) {\n regex = '(?:[A-Za-z0-9+\\\\/]{4})*(?:[A-Za-z0-9+\\\\/]{2}(==)?|[A-Za-z0-9+\\\\/]{3}=?)?'\n }\n\n return (new RegExp('^' + regex + '$', 'gi')).test(v)\n }\n\n if (typeof exports !== 'undefined') {\n if (typeof module !== 'undefined' && module.exports) {\n exports = module.exports = isBase64\n }\n exports.isBase64 = isBase64\n } else if (typeof define === 'function' && define.amd) {\n define([], function() {\n return isBase64\n })\n } else {\n root.isBase64 = isBase64\n }\n})(this);\n", "/*\n* FileSaver.js\n* A saveAs() FileSaver implementation.\n*\n* By Eli Grey, http://eligrey.com\n*\n* License : https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md (MIT)\n* source : http://purl.eligrey.com/github/FileSaver.js\n*/\n\n// The one and only way of getting global scope in all environments\n// https://stackoverflow.com/q/3277182/1008999\nvar _global = typeof window === 'object' && window.window === window\n ? window : typeof self === 'object' && self.self === self\n ? self : typeof global === 'object' && global.global === global\n ? global\n : this\n\nfunction bom (blob, opts) {\n if (typeof opts === 'undefined') opts = { autoBom: false }\n else if (typeof opts !== 'object') {\n console.warn('Deprecated: Expected third argument to be a object')\n opts = { autoBom: !opts }\n }\n\n // prepend BOM for UTF-8 XML and text/* types (including HTML)\n // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF\n if (opts.autoBom && /^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(blob.type)) {\n return new Blob([String.fromCharCode(0xFEFF), blob], { type: blob.type })\n }\n return blob\n}\n\nfunction download (url, name, opts) {\n var xhr = new XMLHttpRequest()\n xhr.open('GET', url)\n xhr.responseType = 'blob'\n xhr.onload = function () {\n saveAs(xhr.response, name, opts)\n }\n xhr.onerror = function () {\n console.error('could not download file')\n }\n xhr.send()\n}\n\nfunction corsEnabled (url) {\n var xhr = new XMLHttpRequest()\n // use sync to avoid popup blocker\n xhr.open('HEAD', url, false)\n try {\n xhr.send()\n } catch (e) {}\n return xhr.status >= 200 && xhr.status <= 299\n}\n\n// `a.click()` doesn't work for all browsers (#465)\nfunction click (node) {\n try {\n node.dispatchEvent(new MouseEvent('click'))\n } catch (e) {\n var evt = document.createEvent('MouseEvents')\n evt.initMouseEvent('click', true, true, window, 0, 0, 0, 80,\n 20, false, false, false, false, 0, null)\n node.dispatchEvent(evt)\n }\n}\n\n// Detect WebView inside a native macOS app by ruling out all browsers\n// We just need to check for 'Safari' because all other browsers (besides Firefox) include that too\n// https://www.whatismybrowser.com/guides/the-latest-user-agent/macos\nvar isMacOSWebView = _global.navigator && /Macintosh/.test(navigator.userAgent) && /AppleWebKit/.test(navigator.userAgent) && !/Safari/.test(navigator.userAgent)\n\nvar saveAs = _global.saveAs || (\n // probably in some web worker\n (typeof window !== 'object' || window !== _global)\n ? function saveAs () { /* noop */ }\n\n // Use download attribute first if possible (#193 Lumia mobile) unless this is a macOS WebView\n : ('download' in HTMLAnchorElement.prototype && !isMacOSWebView)\n ? function saveAs (blob, name, opts) {\n var URL = _global.URL || _global.webkitURL\n var a = document.createElement('a')\n name = name || blob.name || 'download'\n\n a.download = name\n a.rel = 'noopener' // tabnabbing\n\n // TODO: detect chrome extensions & packaged apps\n // a.target = '_blank'\n\n if (typeof blob === 'string') {\n // Support regular links\n a.href = blob\n if (a.origin !== location.origin) {\n corsEnabled(a.href)\n ? download(blob, name, opts)\n : click(a, a.target = '_blank')\n } else {\n click(a)\n }\n } else {\n // Support blobs\n a.href = URL.createObjectURL(blob)\n setTimeout(function () { URL.revokeObjectURL(a.href) }, 4E4) // 40s\n setTimeout(function () { click(a) }, 0)\n }\n }\n\n // Use msSaveOrOpenBlob as a second approach\n : 'msSaveOrOpenBlob' in navigator\n ? function saveAs (blob, name, opts) {\n name = name || blob.name || 'download'\n\n if (typeof blob === 'string') {\n if (corsEnabled(blob)) {\n download(blob, name, opts)\n } else {\n var a = document.createElement('a')\n a.href = blob\n a.target = '_blank'\n setTimeout(function () { click(a) })\n }\n } else {\n navigator.msSaveOrOpenBlob(bom(blob, opts), name)\n }\n }\n\n // Fallback to using FileReader and a popup\n : function saveAs (blob, name, opts, popup) {\n // Open a popup immediately do go around popup blocker\n // Mostly only available on user interaction and the fileReader is async so...\n popup = popup || open('', '_blank')\n if (popup) {\n popup.document.title =\n popup.document.body.innerText = 'downloading...'\n }\n\n if (typeof blob === 'string') return download(blob, name, opts)\n\n var force = blob.type === 'application/octet-stream'\n var isSafari = /constructor/i.test(_global.HTMLElement) || _global.safari\n var isChromeIOS = /CriOS\\/[\\d]+/.test(navigator.userAgent)\n\n if ((isChromeIOS || (force && isSafari) || isMacOSWebView) && typeof FileReader !== 'undefined') {\n // Safari doesn't allow downloading of blob URLs\n var reader = new FileReader()\n reader.onloadend = function () {\n var url = reader.result\n url = isChromeIOS ? url : url.replace(/^data:[^;]*;/, 'data:attachment/file;')\n if (popup) popup.location.href = url\n else location = url\n popup = null // reverse-tabnabbing #460\n }\n reader.readAsDataURL(blob)\n } else {\n var URL = _global.URL || _global.webkitURL\n var url = URL.createObjectURL(blob)\n if (popup) popup.location = url\n else location.href = url\n popup = null // reverse-tabnabbing #460\n setTimeout(function () { URL.revokeObjectURL(url) }, 4E4) // 40s\n }\n }\n)\n\n_global.saveAs = saveAs.saveAs = saveAs\n\nif (typeof module !== 'undefined') {\n module.exports = saveAs;\n}\n", "import axios from 'axios';\nimport isBase64 from 'is-base64';\nimport FileSaver from 'file-saver';\nimport {Base64} from 'js-base64';\n\n// import {getDocument, GlobalWorkerOptions} from 'pdfjs-dist';\n//\n// (async () => {\n// GlobalWorkerOptions.workerSrc = await import(\n// // @ts-ignore\n// \"pdfjs-dist/build/pdf.worker.entry\"\n// );\n// })();\n\nexport class EasyInvoice {\n private _elementId: string;\n private _renderedPdf: any;\n private _totalPages: number;\n private _pdf: string;\n\n constructor(pdf: string, totalPages: number, renderedPdf: any, elementId: string) {\n this._pdf = pdf;\n this._totalPages = totalPages;\n this._renderedPdf = renderedPdf;\n this._elementId = elementId;\n }\n\n createInvoice(options: any, cb: any = () => {\n }) {\n return new Promise((resolve, reject) => {\n const url = 'https://api.easyinvoice.cloud/v2/free/invoices';\n\n const data = {\n data: options\n };\n\n const config: any = {\n headers: {\n 'easyinvoice-source': 'npm'\n }\n };\n\n // Check if 'apiKey' exists in options and is not empty, then add the authorization header\n if (options.apiKey && options.apiKey.trim() !== '') {\n config.headers['Authorization'] = `Bearer ${options.apiKey}`;\n }\n\n axios.create().post(url, data, config)\n .then((response) => {\n /* istanbul ignore next */\n const result = response.data.data;\n /* istanbul ignore next */\n this._pdf = result.pdf;\n /* istanbul ignore next */\n resolve(result);\n /* istanbul ignore next */\n cb(result);\n })\n .catch((error) => {\n /* istanbul ignore next */\n console.log(error.response.data);\n /* istanbul ignore next */\n reject(error.response.data);\n /* istanbul ignore next */\n cb(error.response.data);\n });\n });\n }\n\n /* istanbul ignore next */\n download(filename = 'invoice.pdf', pdf = this._pdf) {\n if (filename === undefined || isBase64(filename)) {\n throw new Error('Invalid filename.');\n }\n\n if (typeof window === 'undefined') {\n throw new Error('Easy Invoice download() is only supported in the browser.');\n } else {\n downloadFile(filename, 'application/pdf', pdf);\n }\n }\n\n /* istanbul ignore next */\n render(elementId: string, pdf = this._pdf, cb: any = () => {\n }) {\n return new Promise((resolve) => {\n if (typeof window === 'undefined') {\n throw new Error('Easy Invoice render() is only supported in the browser.');\n } else {\n this._elementId = elementId;\n this.renderPdf(pdf, function (renderFinished: any) {\n resolve(renderFinished);\n cb(renderFinished);\n });\n }\n });\n }\n\n /* istanbul ignore next */\n renderPdf(pdfBase64: string, renderFinished: any) {\n // @ts-ignore\n const loadingTask = pdfjsLib.getDocument({ data: Base64.atob(pdfBase64) });\n loadingTask.promise.then((pdf: any) => {\n // console.log('PDF loaded');\n this._totalPages = pdf.numPages;\n this._renderedPdf = pdf;\n this.renderPage(1, renderFinished);\n }, function (reason: string) {\n // PDF loading error\n console.error(reason);\n });\n }\n\n /* istanbul ignore next */\n renderPage(pageNumber: number, renderFinished: any) {\n this._renderedPdf.getPage(pageNumber).then((page: any) => {\n // console.log('Page loaded');\n const canvas = document.createElement('canvas');\n\n const viewport = isMobileBrowser() ? page.getViewport({scale: window.screen.width / page.getViewport({scale: 1.0}).width}) : page.getViewport({scale: Math.max(window.devicePixelRatio || 1, 1)});\n\n // @ts-ignore\n document.getElementById(this._elementId).innerHTML = \"\";\n const canvasWrapper = document.getElementById(this._elementId);\n // @ts-ignore\n canvasWrapper.appendChild(canvas);\n\n // Prepare canvas using PDF page dimensions\n const context = canvas.getContext('2d');\n canvas.height = viewport.height;\n canvas.width = viewport.width;\n\n // Render PDF page into canvas context\n const renderContext = {\n canvasContext: context,\n viewport: viewport\n };\n const renderTask = page.render(renderContext);\n renderTask.promise.then(function () {\n // console.log('Page rendered');\n renderFinished(true);\n });\n });\n }\n}\n\n/* istanbul ignore next */\nfunction downloadFile(fileName: string, contentType: string, base64: string) {\n const blob = base64toBlob(base64, contentType);\n FileSaver.saveAs(blob, fileName);\n}\n\n/* istanbul ignore next */\nfunction base64toBlob(base64Data: string, contentType: string) {\n contentType = contentType || '';\n const sliceSize = 1024;\n const byteCharacters = Base64.atob(base64Data);\n // var byteCharacters = decodeURIComponent(escape(Base64.atob(base64Data)))\n const bytesLength = byteCharacters.length;\n const slicesCount = Math.ceil(bytesLength / sliceSize);\n const byteArrays = new Array(slicesCount);\n\n for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {\n const begin = sliceIndex * sliceSize;\n const end = Math.min(begin + sliceSize, bytesLength);\n\n const bytes = new Array(end - begin);\n for (let offset = begin, i = 0; offset < end; ++i, ++offset) {\n bytes[i] = byteCharacters[offset].charCodeAt(0);\n }\n byteArrays[sliceIndex] = new Uint8Array(bytes);\n }\n return new Blob(byteArrays, {\n type: contentType\n });\n}\n\n/* eslint-disable */\n\n/* istanbul ignore next */\nfunction isMobileBrowser() {\n var ua = navigator.userAgent;\n if (/(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(ua) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(ua.substr(0, 4))) {\n return true;\n } else {\n return false;\n }\n}\n\n/* eslint-enable */\n\n// @ts-ignore\nexport default new EasyInvoice();\n\nif (typeof window === 'undefined') {\n // @ts-ignore\n module.exports = new EasyInvoice();\n}\n\n// @ts-ignore\nglobalThis.easyinvoice = new EasyInvoice();\n", "/**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\nconst version = '3.7.5';\n/**\n * @deprecated use lowercase `version`.\n */\nconst VERSION = version;\nconst _hasatob = typeof atob === 'function';\nconst _hasbtoa = typeof btoa === 'function';\nconst _hasBuffer = typeof Buffer === 'function';\nconst _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\nconst _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\nconst b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nconst b64chs = Array.prototype.slice.call(b64ch);\nconst b64tab = ((a) => {\n let tab = {};\n a.forEach((c, i) => tab[c] = i);\n return tab;\n})(b64chs);\nconst b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\nconst _fromCC = String.fromCharCode.bind(String);\nconst _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : (it) => new Uint8Array(Array.prototype.slice.call(it, 0));\nconst _mkUriSafe = (src) => src\n .replace(/=/g, '').replace(/[+\\/]/g, (m0) => m0 == '+' ? '-' : '_');\nconst _tidyB64 = (s) => s.replace(/[^A-Za-z0-9\\+\\/]/g, '');\n/**\n * polyfill version of `btoa`\n */\nconst btoaPolyfill = (bin) => {\n // console.log('polyfilled');\n let u32, c0, c1, c2, asc = '';\n const pad = bin.length % 3;\n for (let i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n};\n/**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\nconst _btoa = _hasbtoa ? (bin) => btoa(bin)\n : _hasBuffer ? (bin) => Buffer.from(bin, 'binary').toString('base64')\n : btoaPolyfill;\nconst _fromUint8Array = _hasBuffer\n ? (u8a) => Buffer.from(u8a).toString('base64')\n : (u8a) => {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n const maxargs = 0x1000;\n let strs = [];\n for (let i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n/**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 \u00A75\n * @returns {string} Base64 string\n */\nconst fromUint8Array = (u8a, urlsafe = false) => urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n// This trick is found broken https://github.com/dankogai/js-base64/issues/130\n// const utob = (src: string) => unescape(encodeURIComponent(src));\n// reverting good old fationed regexp\nconst cb_utob = (c) => {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n};\nconst re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n/**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\nconst utob = (u) => u.replace(re_utob, cb_utob);\n//\nconst _encode = _hasBuffer\n ? (s) => Buffer.from(s, 'utf8').toString('base64')\n : _TE\n ? (s) => _fromUint8Array(_TE.encode(s))\n : (s) => _btoa(utob(s));\n/**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\nconst encode = (src, urlsafe = false) => urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n/**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 \u00A75.\n * @returns {string} Base64 string\n */\nconst encodeURI = (src) => encode(src, true);\n// This trick is found broken https://github.com/dankogai/js-base64/issues/130\n// const btou = (src: string) => decodeURIComponent(escape(src));\n// reverting good old fationed regexp\nconst re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\nconst cb_btou = (cccc) => {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n};\n/**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\nconst btou = (b) => b.replace(re_btou, cb_btou);\n/**\n * polyfill version of `atob`\n */\nconst atobPolyfill = (asc) => {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n let u24, bin = '', r1, r2;\n for (let i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n};\n/**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\nconst _atob = _hasatob ? (asc) => atob(_tidyB64(asc))\n : _hasBuffer ? (asc) => Buffer.from(asc, 'base64').toString('binary')\n : atobPolyfill;\n//\nconst _toUint8Array = _hasBuffer\n ? (a) => _U8Afrom(Buffer.from(a, 'base64'))\n : (a) => _U8Afrom(_atob(a).split('').map(c => c.charCodeAt(0)));\n/**\n * converts a Base64 string to a Uint8Array.\n */\nconst toUint8Array = (a) => _toUint8Array(_unURI(a));\n//\nconst _decode = _hasBuffer\n ? (a) => Buffer.from(a, 'base64').toString('utf8')\n : _TD\n ? (a) => _TD.decode(_toUint8Array(a))\n : (a) => btou(_atob(a));\nconst _unURI = (a) => _tidyB64(a.replace(/[-_]/g, (m0) => m0 == '-' ? '+' : '/'));\n/**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\nconst decode = (src) => _decode(_unURI(src));\n/**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\nconst isValid = (src) => {\n if (typeof src !== 'string')\n return false;\n const s = src.replace(/\\s+/g, '').replace(/={0,2}$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n};\n//\nconst _noEnum = (v) => {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n};\n/**\n * extend String.prototype with relevant methods\n */\nconst extendString = function () {\n const _add = (name, body) => Object.defineProperty(String.prototype, name, _noEnum(body));\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n};\n/**\n * extend Uint8Array.prototype with relevant methods\n */\nconst extendUint8Array = function () {\n const _add = (name, body) => Object.defineProperty(Uint8Array.prototype, name, _noEnum(body));\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n};\n/**\n * extend Builtin prototypes with relevant methods\n */\nconst extendBuiltins = () => {\n extendString();\n extendUint8Array();\n};\nconst gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins,\n};\n// makecjs:CUT //\nexport { version };\nexport { VERSION };\nexport { _atob as atob };\nexport { atobPolyfill };\nexport { _btoa as btoa };\nexport { btoaPolyfill };\nexport { decode as fromBase64 };\nexport { encode as toBase64 };\nexport { utob };\nexport { encode };\nexport { encodeURI };\nexport { encodeURI as encodeURL };\nexport { btou };\nexport { decode };\nexport { isValid };\nexport { fromUint8Array };\nexport { toUint8Array };\nexport { extendString };\nexport { extendUint8Array };\nexport { extendBuiltins };\n// and finally,\nexport { gBase64 as Base64 };\n"],
- "mappings": "4iBAAA,IAAAA,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEAA,GAAO,QAAU,SAAcC,EAAIC,EAAS,CAC1C,OAAO,UAAgB,CAErB,QADIC,EAAO,IAAI,MAAM,UAAU,MAAM,EAC5BC,EAAI,EAAGA,EAAID,EAAK,OAAQC,IAC/BD,EAAKC,CAAC,EAAI,UAAUA,CAAC,EAEvB,OAAOH,EAAG,MAAMC,EAASC,CAAI,CAC/B,CACF,ICVA,IAAAE,EAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAO,KAIPC,GAAW,OAAO,UAAU,SAG5BC,GAAU,SAASC,EAAO,CAE5B,OAAO,SAASC,EAAO,CACrB,IAAIC,EAAMJ,GAAS,KAAKG,CAAK,EAC7B,OAAOD,EAAME,CAAG,IAAMF,EAAME,CAAG,EAAIA,EAAI,MAAM,EAAG,EAAE,EAAE,YAAY,EAClE,CACF,EAAG,OAAO,OAAO,IAAI,CAAC,EAEtB,SAASC,EAAWC,EAAM,CACxB,OAAAA,EAAOA,EAAK,YAAY,EACjB,SAAkBH,EAAO,CAC9B,OAAOF,GAAOE,CAAK,IAAMG,CAC3B,CACF,CAQA,SAASC,GAAQC,EAAK,CACpB,OAAO,MAAM,QAAQA,CAAG,CAC1B,CAQA,SAASC,EAAYD,EAAK,CACxB,OAAO,OAAOA,EAAQ,GACxB,CAQA,SAASE,GAASF,EAAK,CACrB,OAAOA,IAAQ,MAAQ,CAACC,EAAYD,CAAG,GAAKA,EAAI,cAAgB,MAAQ,CAACC,EAAYD,EAAI,WAAW,GAC/F,OAAOA,EAAI,YAAY,UAAa,YAAcA,EAAI,YAAY,SAASA,CAAG,CACrF,CASA,IAAIG,GAAgBN,EAAW,aAAa,EAS5C,SAASO,GAAkBJ,EAAK,CAC9B,IAAIK,EACJ,OAAK,OAAO,YAAgB,KAAiB,YAAY,OACvDA,EAAS,YAAY,OAAOL,CAAG,EAE/BK,EAAUL,GAASA,EAAI,QAAYG,GAAcH,EAAI,MAAM,EAEtDK,CACT,CAQA,SAASC,GAASN,EAAK,CACrB,OAAO,OAAOA,GAAQ,QACxB,CAQA,SAASO,GAASP,EAAK,CACrB,OAAO,OAAOA,GAAQ,QACxB,CAQA,SAASQ,GAASR,EAAK,CACrB,OAAOA,IAAQ,MAAQ,OAAOA,GAAQ,QACxC,CAQA,SAASS,EAAcT,EAAK,CAC1B,GAAIP,GAAOO,CAAG,IAAM,SAClB,MAAO,GAGT,IAAIU,EAAY,OAAO,eAAeV,CAAG,EACzC,OAAOU,IAAc,MAAQA,IAAc,OAAO,SACpD,CASA,IAAIC,GAASd,EAAW,MAAM,EAS1Be,GAASf,EAAW,MAAM,EAS1BgB,GAAShB,EAAW,MAAM,EAS1BiB,GAAajB,EAAW,UAAU,EAQtC,SAASkB,GAAWf,EAAK,CACvB,OAAOR,GAAS,KAAKQ,CAAG,IAAM,mBAChC,CAQA,SAASgB,GAAShB,EAAK,CACrB,OAAOQ,GAASR,CAAG,GAAKe,GAAWf,EAAI,IAAI,CAC7C,CAQA,SAASiB,GAAWtB,EAAO,CACzB,IAAIuB,EAAU,oBACd,OAAOvB,IACJ,OAAO,UAAa,YAAcA,aAAiB,UACpDH,GAAS,KAAKG,CAAK,IAAMuB,GACxBH,GAAWpB,EAAM,QAAQ,GAAKA,EAAM,SAAS,IAAMuB,EAExD,CAQA,IAAIC,GAAoBtB,EAAW,iBAAiB,EAQpD,SAASuB,GAAKxB,EAAK,CACjB,OAAOA,EAAI,KAAOA,EAAI,KAAK,EAAIA,EAAI,QAAQ,aAAc,EAAE,CAC7D,CAiBA,SAASyB,IAAuB,CAC9B,OAAI,OAAO,UAAc,MAAgB,UAAU,UAAY,eACtB,UAAU,UAAY,gBACtB,UAAU,UAAY,MACtD,GAGP,OAAO,OAAW,KAClB,OAAO,SAAa,GAExB,CAcA,SAASC,GAAQC,EAAKC,EAAI,CAExB,GAAI,EAAAD,IAAQ,MAAQ,OAAOA,EAAQ,KAUnC,GALI,OAAOA,GAAQ,WAEjBA,EAAM,CAACA,CAAG,GAGRxB,GAAQwB,CAAG,EAEb,QAASE,EAAI,EAAGC,EAAIH,EAAI,OAAQE,EAAIC,EAAGD,IACrCD,EAAG,KAAK,KAAMD,EAAIE,CAAC,EAAGA,EAAGF,CAAG,MAI9B,SAASI,KAAOJ,EACV,OAAO,UAAU,eAAe,KAAKA,EAAKI,CAAG,GAC/CH,EAAG,KAAK,KAAMD,EAAII,CAAG,EAAGA,EAAKJ,CAAG,CAIxC,CAmBA,SAASK,IAAmC,CAC1C,IAAIvB,EAAS,CAAC,EACd,SAASwB,EAAY7B,EAAK2B,EAAK,CACzBlB,EAAcJ,EAAOsB,CAAG,CAAC,GAAKlB,EAAcT,CAAG,EACjDK,EAAOsB,CAAG,EAAIC,GAAMvB,EAAOsB,CAAG,EAAG3B,CAAG,EAC3BS,EAAcT,CAAG,EAC1BK,EAAOsB,CAAG,EAAIC,GAAM,CAAC,EAAG5B,CAAG,EAClBD,GAAQC,CAAG,EACpBK,EAAOsB,CAAG,EAAI3B,EAAI,MAAM,EAExBK,EAAOsB,CAAG,EAAI3B,CAElB,CAEA,QAASyB,EAAI,EAAGC,EAAI,UAAU,OAAQD,EAAIC,EAAGD,IAC3CH,GAAQ,UAAUG,CAAC,EAAGI,CAAW,EAEnC,OAAOxB,CACT,CAUA,SAASyB,GAAOC,EAAGC,EAAGC,EAAS,CAC7B,OAAAX,GAAQU,EAAG,SAAqBhC,EAAK2B,EAAK,CACpCM,GAAW,OAAOjC,GAAQ,WAC5B+B,EAAEJ,CAAG,EAAIpC,GAAKS,EAAKiC,CAAO,EAE1BF,EAAEJ,CAAG,EAAI3B,CAEb,CAAC,EACM+B,CACT,CAQA,SAASG,GAASC,EAAS,CACzB,OAAIA,EAAQ,WAAW,CAAC,IAAM,QAC5BA,EAAUA,EAAQ,MAAM,CAAC,GAEpBA,CACT,CAUA,SAASC,GAASC,EAAaC,EAAkBC,EAAOC,EAAa,CACnEH,EAAY,UAAY,OAAO,OAAOC,EAAiB,UAAWE,CAAW,EAC7EH,EAAY,UAAU,YAAcA,EACpCE,GAAS,OAAO,OAAOF,EAAY,UAAWE,CAAK,CACrD,CAUA,SAASE,GAAaC,EAAWC,EAASC,EAAQ,CAChD,IAAIL,EACAd,EACAoB,EACAC,EAAS,CAAC,EAEdH,EAAUA,GAAW,CAAC,EAEtB,EAAG,CAGD,IAFAJ,EAAQ,OAAO,oBAAoBG,CAAS,EAC5CjB,EAAIc,EAAM,OACHd,KAAM,GACXoB,EAAON,EAAMd,CAAC,EACTqB,EAAOD,CAAI,IACdF,EAAQE,CAAI,EAAIH,EAAUG,CAAI,EAC9BC,EAAOD,CAAI,EAAI,IAGnBH,EAAY,OAAO,eAAeA,CAAS,QACpCA,IAAc,CAACE,GAAUA,EAAOF,EAAWC,CAAO,IAAMD,IAAc,OAAO,WAEtF,OAAOC,CACT,CASA,SAASI,GAASnD,EAAKoD,EAAcC,EAAU,CAC7CrD,EAAM,OAAOA,CAAG,GACZqD,IAAa,QAAaA,EAAWrD,EAAI,UAC3CqD,EAAWrD,EAAI,QAEjBqD,GAAYD,EAAa,OACzB,IAAIE,EAAYtD,EAAI,QAAQoD,EAAcC,CAAQ,EAClD,OAAOC,IAAc,IAAMA,IAAcD,CAC3C,CAQA,SAASE,GAAQxD,EAAO,CACtB,GAAI,CAACA,EAAO,OAAO,KACnB,IAAI8B,EAAI9B,EAAM,OACd,GAAIM,EAAYwB,CAAC,EAAG,OAAO,KAE3B,QADI2B,EAAM,IAAI,MAAM3B,CAAC,EACdA,KAAM,GACX2B,EAAI3B,CAAC,EAAI9B,EAAM8B,CAAC,EAElB,OAAO2B,CACT,CAGA,IAAIC,GAAgB,SAASC,EAAY,CAEvC,OAAO,SAAS3D,EAAO,CACrB,OAAO2D,GAAc3D,aAAiB2D,CACxC,CACF,EAAG,OAAO,WAAe,KAAe,OAAO,eAAe,UAAU,CAAC,EAEzEhE,GAAO,QAAU,CACf,QAASS,GACT,cAAeI,GACf,SAAUD,GACV,WAAYe,GACZ,kBAAmBb,GACnB,SAAUE,GACV,SAAUC,GACV,SAAUC,GACV,cAAeC,EACf,YAAaR,EACb,OAAQU,GACR,OAAQC,GACR,OAAQC,GACR,WAAYE,GACZ,SAAUC,GACV,kBAAmBG,GACnB,qBAAsBE,GACtB,QAASC,GACT,MAAOM,GACP,OAAQE,GACR,KAAMV,GACN,SAAUc,GACV,SAAUE,GACV,aAAcK,GACd,OAAQhD,GACR,WAAYI,EACZ,SAAUkD,GACV,QAASI,GACT,aAAcE,GACd,WAAYvC,EACd,ICrdA,IAAAyC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,EAAQ,IAEZ,SAASC,GAAOC,EAAK,CACnB,OAAO,mBAAmBA,CAAG,EAC3B,QAAQ,QAAS,GAAG,EACpB,QAAQ,OAAQ,GAAG,EACnB,QAAQ,QAAS,GAAG,EACpB,QAAQ,OAAQ,GAAG,EACnB,QAAQ,QAAS,GAAG,EACpB,QAAQ,QAAS,GAAG,CACxB,CASAH,GAAO,QAAU,SAAkBI,EAAKC,EAAQC,EAAkB,CAEhE,GAAI,CAACD,EACH,OAAOD,EAGT,IAAIG,EACJ,GAAID,EACFC,EAAmBD,EAAiBD,CAAM,UACjCJ,EAAM,kBAAkBI,CAAM,EACvCE,EAAmBF,EAAO,SAAS,MAC9B,CACL,IAAIG,EAAQ,CAAC,EAEbP,EAAM,QAAQI,EAAQ,SAAmBF,EAAKM,EAAK,CAC7CN,IAAQ,MAAQ,OAAOA,EAAQ,MAI/BF,EAAM,QAAQE,CAAG,EACnBM,EAAMA,EAAM,KAEZN,EAAM,CAACA,CAAG,EAGZF,EAAM,QAAQE,EAAK,SAAoBO,EAAG,CACpCT,EAAM,OAAOS,CAAC,EAChBA,EAAIA,EAAE,YAAY,EACTT,EAAM,SAASS,CAAC,IACzBA,EAAI,KAAK,UAAUA,CAAC,GAEtBF,EAAM,KAAKN,GAAOO,CAAG,EAAI,IAAMP,GAAOQ,CAAC,CAAC,CAC1C,CAAC,EACH,CAAC,EAEDH,EAAmBC,EAAM,KAAK,GAAG,EAGnC,GAAID,EAAkB,CACpB,IAAII,EAAgBP,EAAI,QAAQ,GAAG,EAC/BO,IAAkB,KACpBP,EAAMA,EAAI,MAAM,EAAGO,CAAa,GAGlCP,IAAQA,EAAI,QAAQ,GAAG,IAAM,GAAK,IAAM,KAAOG,EAGjD,OAAOH,CACT,ICrEA,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IAEZ,SAASC,GAAqB,CAC5B,KAAK,SAAW,CAAC,CACnB,CAUAA,EAAmB,UAAU,IAAM,SAAaC,EAAWC,EAAUC,EAAS,CAC5E,YAAK,SAAS,KAAK,CACjB,UAAWF,EACX,SAAUC,EACV,YAAaC,EAAUA,EAAQ,YAAc,GAC7C,QAASA,EAAUA,EAAQ,QAAU,IACvC,CAAC,EACM,KAAK,SAAS,OAAS,CAChC,EAOAH,EAAmB,UAAU,MAAQ,SAAeI,EAAI,CAClD,KAAK,SAASA,CAAE,IAClB,KAAK,SAASA,CAAE,EAAI,KAExB,EAUAJ,EAAmB,UAAU,QAAU,SAAiBK,EAAI,CAC1DN,GAAM,QAAQ,KAAK,SAAU,SAAwBO,EAAG,CAClDA,IAAM,MACRD,EAAGC,CAAC,CAER,CAAC,CACH,EAEAR,GAAO,QAAUE,ICrDjB,IAAAO,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IAEZD,GAAO,QAAU,SAA6BE,EAASC,EAAgB,CACrEF,GAAM,QAAQC,EAAS,SAAuBE,EAAOC,EAAM,CACrDA,IAASF,GAAkBE,EAAK,YAAY,IAAMF,EAAe,YAAY,IAC/ED,EAAQC,CAAc,EAAIC,EAC1B,OAAOF,EAAQG,CAAI,EAEvB,CAAC,CACH,ICXA,IAAAC,EAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IAYZ,SAASC,EAAWC,EAASC,EAAMC,EAAQC,EAASC,EAAU,CAC5D,MAAM,KAAK,IAAI,EACf,KAAK,QAAUJ,EACf,KAAK,KAAO,aACZC,IAAS,KAAK,KAAOA,GACrBC,IAAW,KAAK,OAASA,GACzBC,IAAY,KAAK,QAAUA,GAC3BC,IAAa,KAAK,SAAWA,EAC/B,CAEAN,GAAM,SAASC,EAAY,MAAO,CAChC,OAAQ,UAAkB,CACxB,MAAO,CAEL,QAAS,KAAK,QACd,KAAM,KAAK,KAEX,YAAa,KAAK,YAClB,OAAQ,KAAK,OAEb,SAAU,KAAK,SACf,WAAY,KAAK,WACjB,aAAc,KAAK,aACnB,MAAO,KAAK,MAEZ,OAAQ,KAAK,OACb,KAAM,KAAK,KACX,OAAQ,KAAK,UAAY,KAAK,SAAS,OAAS,KAAK,SAAS,OAAS,IACzE,CACF,CACF,CAAC,EAED,IAAIM,GAAYN,EAAW,UACvBO,GAAc,CAAC,EAEnB,CACE,uBACA,iBACA,eACA,YACA,cACA,4BACA,iBACA,mBACA,kBACA,cAEF,EAAE,QAAQ,SAASL,EAAM,CACvBK,GAAYL,CAAI,EAAI,CAAC,MAAOA,CAAI,CAClC,CAAC,EAED,OAAO,iBAAiBF,EAAYO,EAAW,EAC/C,OAAO,eAAeD,GAAW,eAAgB,CAAC,MAAO,EAAI,CAAC,EAG9DN,EAAW,KAAO,SAASQ,EAAON,EAAMC,EAAQC,EAASC,EAAUI,EAAa,CAC9E,IAAIC,EAAa,OAAO,OAAOJ,EAAS,EAExC,OAAAP,GAAM,aAAaS,EAAOE,EAAY,SAAgBC,EAAK,CACzD,OAAOA,IAAQ,MAAM,SACvB,CAAC,EAEDX,EAAW,KAAKU,EAAYF,EAAM,QAASN,EAAMC,EAAQC,EAASC,CAAQ,EAE1EK,EAAW,KAAOF,EAAM,KAExBC,GAAe,OAAO,OAAOC,EAAYD,CAAW,EAE7CC,CACT,EAEAZ,GAAO,QAAUE,ICrFjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEAA,GAAO,QAAU,CACf,kBAAmB,GACnB,kBAAmB,GACnB,oBAAqB,EACvB,ICNA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,EAAQ,IASZ,SAASC,GAAWC,EAAKC,EAAU,CAEjCA,EAAWA,GAAY,IAAI,SAE3B,IAAIC,EAAQ,CAAC,EAEb,SAASC,EAAaC,EAAO,CAC3B,OAAIA,IAAU,KAAa,GAEvBN,EAAM,OAAOM,CAAK,EACbA,EAAM,YAAY,EAGvBN,EAAM,cAAcM,CAAK,GAAKN,EAAM,aAAaM,CAAK,EACjD,OAAO,MAAS,WAAa,IAAI,KAAK,CAACA,CAAK,CAAC,EAAI,OAAO,KAAKA,CAAK,EAGpEA,CACT,CAEA,SAASC,EAAMC,EAAMC,EAAW,CAC9B,GAAIT,EAAM,cAAcQ,CAAI,GAAKR,EAAM,QAAQQ,CAAI,EAAG,CACpD,GAAIJ,EAAM,QAAQI,CAAI,IAAM,GAC1B,MAAM,MAAM,kCAAoCC,CAAS,EAG3DL,EAAM,KAAKI,CAAI,EAEfR,EAAM,QAAQQ,EAAM,SAAcF,EAAOI,EAAK,CAC5C,GAAI,CAAAV,EAAM,YAAYM,CAAK,EAC3B,KAAIK,EAAUF,EAAYA,EAAY,IAAMC,EAAMA,EAC9CE,EAEJ,GAAIN,GAAS,CAACG,GAAa,OAAOH,GAAU,UAC1C,GAAIN,EAAM,SAASU,EAAK,IAAI,EAE1BJ,EAAQ,KAAK,UAAUA,CAAK,UACnBN,EAAM,SAASU,EAAK,IAAI,IAAME,EAAMZ,EAAM,QAAQM,CAAK,GAAI,CAEpEM,EAAI,QAAQ,SAASC,EAAI,CACvB,CAACb,EAAM,YAAYa,CAAE,GAAKV,EAAS,OAAOQ,EAASN,EAAaQ,CAAE,CAAC,CACrE,CAAC,EACD,QAIJN,EAAMD,EAAOK,CAAO,EACtB,CAAC,EAEDP,EAAM,IAAI,OAEVD,EAAS,OAAOM,EAAWJ,EAAaG,CAAI,CAAC,CAEjD,CAEA,OAAAD,EAAML,CAAG,EAEFC,CACT,CAEAJ,GAAO,QAAUE,KCvEjB,IAAAa,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAa,IASjBD,GAAO,QAAU,SAAgBE,EAASC,EAAQC,EAAU,CAC1D,IAAIC,EAAiBD,EAAS,OAAO,eACjC,CAACA,EAAS,QAAU,CAACC,GAAkBA,EAAeD,EAAS,MAAM,EACvEF,EAAQE,CAAQ,EAEhBD,EAAO,IAAIF,GACT,mCAAqCG,EAAS,OAC9C,CAACH,GAAW,gBAAiBA,GAAW,gBAAgB,EAAE,KAAK,MAAMG,EAAS,OAAS,GAAG,EAAI,CAAC,EAC/FA,EAAS,OACTA,EAAS,QACTA,CACF,CAAC,CAEL,ICxBA,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,EAAQ,IAEZD,GAAO,QACLC,EAAM,qBAAqB,EAGxB,UAA8B,CAC7B,MAAO,CACL,MAAO,SAAeC,EAAMC,EAAOC,EAASC,EAAMC,EAAQC,EAAQ,CAChE,IAAIC,EAAS,CAAC,EACdA,EAAO,KAAKN,EAAO,IAAM,mBAAmBC,CAAK,CAAC,EAE9CF,EAAM,SAASG,CAAO,GACxBI,EAAO,KAAK,WAAa,IAAI,KAAKJ,CAAO,EAAE,YAAY,CAAC,EAGtDH,EAAM,SAASI,CAAI,GACrBG,EAAO,KAAK,QAAUH,CAAI,EAGxBJ,EAAM,SAASK,CAAM,GACvBE,EAAO,KAAK,UAAYF,CAAM,EAG5BC,IAAW,IACbC,EAAO,KAAK,QAAQ,EAGtB,SAAS,OAASA,EAAO,KAAK,IAAI,CACpC,EAEA,KAAM,SAAcN,EAAM,CACxB,IAAIO,EAAQ,SAAS,OAAO,MAAM,IAAI,OAAO,aAAeP,EAAO,WAAW,CAAC,EAC/E,OAAQO,EAAQ,mBAAmBA,EAAM,CAAC,CAAC,EAAI,IACjD,EAEA,OAAQ,SAAgBP,EAAM,CAC5B,KAAK,MAAMA,EAAM,GAAI,KAAK,IAAI,EAAI,KAAQ,CAC5C,CACF,CACF,EAAG,EAGF,UAAiC,CAChC,MAAO,CACL,MAAO,UAAiB,CAAC,EACzB,KAAM,UAAgB,CAAE,OAAO,IAAM,EACrC,OAAQ,UAAkB,CAAC,CAC7B,CACF,EAAG,ICnDP,IAAAQ,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAQAA,GAAO,QAAU,SAAuBC,EAAK,CAI3C,MAAO,8BAA8B,KAAKA,CAAG,CAC/C,ICbA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cASAA,GAAO,QAAU,SAAqBC,EAASC,EAAa,CAC1D,OAAOA,EACHD,EAAQ,QAAQ,OAAQ,EAAE,EAAI,IAAMC,EAAY,QAAQ,OAAQ,EAAE,EAClED,CACN,ICbA,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAgB,KAChBC,GAAc,KAWlBF,GAAO,QAAU,SAAuBG,EAASC,EAAc,CAC7D,OAAID,GAAW,CAACF,GAAcG,CAAY,EACjCF,GAAYC,EAASC,CAAY,EAEnCA,CACT,ICnBA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IAIRC,GAAoB,CACtB,MAAO,gBAAiB,iBAAkB,eAAgB,OAC1D,UAAW,OAAQ,OAAQ,oBAAqB,sBAChD,gBAAiB,WAAY,eAAgB,sBAC7C,UAAW,cAAe,YAC5B,EAeAF,GAAO,QAAU,SAAsBG,EAAS,CAC9C,IAAIC,EAAS,CAAC,EACVC,EACAC,EACAC,EAEJ,OAAKJ,GAELF,GAAM,QAAQE,EAAQ,MAAM;AAAA,CAAI,EAAG,SAAgBK,EAAM,CAKvD,GAJAD,EAAIC,EAAK,QAAQ,GAAG,EACpBH,EAAMJ,GAAM,KAAKO,EAAK,OAAO,EAAGD,CAAC,CAAC,EAAE,YAAY,EAChDD,EAAML,GAAM,KAAKO,EAAK,OAAOD,EAAI,CAAC,CAAC,EAE/BF,EAAK,CACP,GAAID,EAAOC,CAAG,GAAKH,GAAkB,QAAQG,CAAG,GAAK,EACnD,OAEEA,IAAQ,aACVD,EAAOC,CAAG,GAAKD,EAAOC,CAAG,EAAID,EAAOC,CAAG,EAAI,CAAC,GAAG,OAAO,CAACC,CAAG,CAAC,EAE3DF,EAAOC,CAAG,EAAID,EAAOC,CAAG,EAAID,EAAOC,CAAG,EAAI,KAAOC,EAAMA,EAG7D,CAAC,EAEMF,CACT,ICpDA,IAAAK,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IAEZD,GAAO,QACLC,GAAM,qBAAqB,EAIxB,UAA8B,CAC7B,IAAIC,EAAO,kBAAkB,KAAK,UAAU,SAAS,EACjDC,EAAiB,SAAS,cAAc,GAAG,EAC3CC,EAQJ,SAASC,EAAWC,EAAK,CACvB,IAAIC,EAAOD,EAEX,OAAIJ,IAEFC,EAAe,aAAa,OAAQI,CAAI,EACxCA,EAAOJ,EAAe,MAGxBA,EAAe,aAAa,OAAQI,CAAI,EAGjC,CACL,KAAMJ,EAAe,KACrB,SAAUA,EAAe,SAAWA,EAAe,SAAS,QAAQ,KAAM,EAAE,EAAI,GAChF,KAAMA,EAAe,KACrB,OAAQA,EAAe,OAASA,EAAe,OAAO,QAAQ,MAAO,EAAE,EAAI,GAC3E,KAAMA,EAAe,KAAOA,EAAe,KAAK,QAAQ,KAAM,EAAE,EAAI,GACpE,SAAUA,EAAe,SACzB,KAAMA,EAAe,KACrB,SAAWA,EAAe,SAAS,OAAO,CAAC,IAAM,IAC/CA,EAAe,SACf,IAAMA,EAAe,QACzB,CACF,CAEA,OAAAC,EAAYC,EAAW,OAAO,SAAS,IAAI,EAQpC,SAAyBG,EAAY,CAC1C,IAAIC,EAAUR,GAAM,SAASO,CAAU,EAAKH,EAAWG,CAAU,EAAIA,EACrE,OAAQC,EAAO,WAAaL,EAAU,UAClCK,EAAO,OAASL,EAAU,IAChC,CACF,EAAG,EAGF,UAAiC,CAChC,OAAO,UAA2B,CAChC,MAAO,EACT,CACF,EAAG,IClEP,IAAAM,EAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAa,IACbC,GAAQ,IAQZ,SAASC,GAAcC,EAAS,CAE9BH,GAAW,KAAK,KAAMG,GAAkB,WAAsBH,GAAW,YAAY,EACrF,KAAK,KAAO,eACd,CAEAC,GAAM,SAASC,GAAeF,GAAY,CACxC,WAAY,EACd,CAAC,EAEDD,GAAO,QAAUG,KCrBjB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEAA,GAAO,QAAU,SAAuBC,EAAK,CAC3C,IAAIC,EAAQ,4BAA4B,KAAKD,CAAG,EAChD,OAAOC,GAASA,EAAM,CAAC,GAAK,EAC9B,ICLA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,EAAQ,IACRC,GAAS,KACTC,GAAU,KACVC,GAAW,KACXC,GAAgB,KAChBC,GAAe,KACfC,GAAkB,KAClBC,GAAuB,KACvBC,EAAa,IACbC,GAAgB,IAChBC,GAAgB,KAEpBX,GAAO,QAAU,SAAoBY,EAAQ,CAC3C,OAAO,IAAI,QAAQ,SAA4BC,EAASC,EAAQ,CAC9D,IAAIC,EAAcH,EAAO,KACrBI,EAAiBJ,EAAO,QACxBK,EAAeL,EAAO,aACtBM,EACJ,SAASC,GAAO,CACVP,EAAO,aACTA,EAAO,YAAY,YAAYM,CAAU,EAGvCN,EAAO,QACTA,EAAO,OAAO,oBAAoB,QAASM,CAAU,CAEzD,CAEIjB,EAAM,WAAWc,CAAW,GAAKd,EAAM,qBAAqB,GAC9D,OAAOe,EAAe,cAAc,EAGtC,IAAII,EAAU,IAAI,eAGlB,GAAIR,EAAO,KAAM,CACf,IAAIS,EAAWT,EAAO,KAAK,UAAY,GACnCU,EAAWV,EAAO,KAAK,SAAW,SAAS,mBAAmBA,EAAO,KAAK,QAAQ,CAAC,EAAI,GAC3FI,EAAe,cAAgB,SAAW,KAAKK,EAAW,IAAMC,CAAQ,EAG1E,IAAIC,EAAWlB,GAAcO,EAAO,QAASA,EAAO,GAAG,EAEvDQ,EAAQ,KAAKR,EAAO,OAAO,YAAY,EAAGR,GAASmB,EAAUX,EAAO,OAAQA,EAAO,gBAAgB,EAAG,EAAI,EAG1GQ,EAAQ,QAAUR,EAAO,QAEzB,SAASY,GAAY,CACnB,GAAKJ,EAIL,KAAIK,EAAkB,0BAA2BL,EAAUd,GAAac,EAAQ,sBAAsB,CAAC,EAAI,KACvGM,EAAe,CAACT,GAAgBA,IAAiB,QAAWA,IAAiB,OAC/EG,EAAQ,aAAeA,EAAQ,SAC7BO,EAAW,CACb,KAAMD,EACN,OAAQN,EAAQ,OAChB,WAAYA,EAAQ,WACpB,QAASK,EACT,OAAQb,EACR,QAASQ,CACX,EAEAlB,GAAO,SAAkB0B,GAAO,CAC9Bf,EAAQe,EAAK,EACbT,EAAK,CACP,EAAG,SAAiBU,GAAK,CACvBf,EAAOe,EAAG,EACVV,EAAK,CACP,EAAGQ,CAAQ,EAGXP,EAAU,KACZ,CAmEA,GAjEI,cAAeA,EAEjBA,EAAQ,UAAYI,EAGpBJ,EAAQ,mBAAqB,UAAsB,CAC7C,CAACA,GAAWA,EAAQ,aAAe,GAQnCA,EAAQ,SAAW,GAAK,EAAEA,EAAQ,aAAeA,EAAQ,YAAY,QAAQ,OAAO,IAAM,IAK9F,WAAWI,CAAS,CACtB,EAIFJ,EAAQ,QAAU,UAAuB,CAClCA,IAILN,EAAO,IAAIL,EAAW,kBAAmBA,EAAW,aAAcG,EAAQQ,CAAO,CAAC,EAGlFA,EAAU,KACZ,EAGAA,EAAQ,QAAU,UAAuB,CAGvCN,EAAO,IAAIL,EAAW,gBAAiBA,EAAW,YAAaG,EAAQQ,EAASA,CAAO,CAAC,EAGxFA,EAAU,IACZ,EAGAA,EAAQ,UAAY,UAAyB,CAC3C,IAAIU,EAAsBlB,EAAO,QAAU,cAAgBA,EAAO,QAAU,cAAgB,mBACxFmB,EAAenB,EAAO,cAAgBJ,GACtCI,EAAO,sBACTkB,EAAsBlB,EAAO,qBAE/BE,EAAO,IAAIL,EACTqB,EACAC,EAAa,oBAAsBtB,EAAW,UAAYA,EAAW,aACrEG,EACAQ,CAAO,CAAC,EAGVA,EAAU,IACZ,EAKInB,EAAM,qBAAqB,EAAG,CAEhC,IAAI+B,GAAapB,EAAO,iBAAmBL,GAAgBgB,CAAQ,IAAMX,EAAO,eAC9ET,GAAQ,KAAKS,EAAO,cAAc,EAClC,OAEEoB,IACFhB,EAAeJ,EAAO,cAAc,EAAIoB,GAKxC,qBAAsBZ,GACxBnB,EAAM,QAAQe,EAAgB,SAA0BiB,EAAKC,EAAK,CAC5D,OAAOnB,EAAgB,KAAemB,EAAI,YAAY,IAAM,eAE9D,OAAOlB,EAAekB,CAAG,EAGzBd,EAAQ,iBAAiBc,EAAKD,CAAG,CAErC,CAAC,EAIEhC,EAAM,YAAYW,EAAO,eAAe,IAC3CQ,EAAQ,gBAAkB,CAAC,CAACR,EAAO,iBAIjCK,GAAgBA,IAAiB,SACnCG,EAAQ,aAAeR,EAAO,cAI5B,OAAOA,EAAO,oBAAuB,YACvCQ,EAAQ,iBAAiB,WAAYR,EAAO,kBAAkB,EAI5D,OAAOA,EAAO,kBAAqB,YAAcQ,EAAQ,QAC3DA,EAAQ,OAAO,iBAAiB,WAAYR,EAAO,gBAAgB,GAGjEA,EAAO,aAAeA,EAAO,UAG/BM,EAAa,SAASiB,EAAQ,CACvBf,IAGLN,EAAO,CAACqB,GAAWA,GAAUA,EAAO,KAAQ,IAAIzB,GAAkByB,CAAM,EACxEf,EAAQ,MAAM,EACdA,EAAU,KACZ,EAEAR,EAAO,aAAeA,EAAO,YAAY,UAAUM,CAAU,EACzDN,EAAO,SACTA,EAAO,OAAO,QAAUM,EAAW,EAAIN,EAAO,OAAO,iBAAiB,QAASM,CAAU,IAIxFH,IACHA,EAAc,MAGhB,IAAIqB,EAAWzB,GAAcY,CAAQ,EAErC,GAAIa,GAAY,CAAE,OAAQ,QAAS,MAAO,EAAE,QAAQA,CAAQ,IAAM,GAAI,CACpEtB,EAAO,IAAIL,EAAW,wBAA0B2B,EAAW,IAAK3B,EAAW,gBAAiBG,CAAM,CAAC,EACnG,OAKFQ,EAAQ,KAAKL,CAAW,CAC1B,CAAC,CACH,IC7NA,IAAAsB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CACAA,GAAO,QAAU,OCDjB,IAAAC,EAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,EAAQ,IACRC,GAAsB,KACtBC,GAAa,IACbC,GAAuB,KACvBC,GAAa,KAEbC,GAAuB,CACzB,eAAgB,mCAClB,EAEA,SAASC,GAAsBC,EAASC,EAAO,CACzC,CAACR,EAAM,YAAYO,CAAO,GAAKP,EAAM,YAAYO,EAAQ,cAAc,CAAC,IAC1EA,EAAQ,cAAc,EAAIC,EAE9B,CAEA,SAASC,IAAoB,CAC3B,IAAIC,EACJ,OAAI,OAAO,eAAmB,IAE5BA,EAAU,KACD,OAAO,QAAY,KAAe,OAAO,UAAU,SAAS,KAAK,OAAO,IAAM,qBAEvFA,EAAU,MAELA,CACT,CAEA,SAASC,GAAgBC,EAAUC,EAAQC,EAAS,CAClD,GAAId,EAAM,SAASY,CAAQ,EACzB,GAAI,CACF,OAACC,GAAU,KAAK,OAAOD,CAAQ,EACxBZ,EAAM,KAAKY,CAAQ,CAC5B,OAASG,EAAP,CACA,GAAIA,EAAE,OAAS,cACb,MAAMA,CAEV,CAGF,OAAQD,GAAW,KAAK,WAAWF,CAAQ,CAC7C,CAEA,IAAII,EAAW,CAEb,aAAcb,GAEd,QAASM,GAAkB,EAE3B,iBAAkB,CAAC,SAA0BQ,EAAMV,EAAS,CAI1D,GAHAN,GAAoBM,EAAS,QAAQ,EACrCN,GAAoBM,EAAS,cAAc,EAEvCP,EAAM,WAAWiB,CAAI,GACvBjB,EAAM,cAAciB,CAAI,GACxBjB,EAAM,SAASiB,CAAI,GACnBjB,EAAM,SAASiB,CAAI,GACnBjB,EAAM,OAAOiB,CAAI,GACjBjB,EAAM,OAAOiB,CAAI,EAEjB,OAAOA,EAET,GAAIjB,EAAM,kBAAkBiB,CAAI,EAC9B,OAAOA,EAAK,OAEd,GAAIjB,EAAM,kBAAkBiB,CAAI,EAC9B,OAAAX,GAAsBC,EAAS,iDAAiD,EACzEU,EAAK,SAAS,EAGvB,IAAIC,EAAkBlB,EAAM,SAASiB,CAAI,EACrCE,EAAcZ,GAAWA,EAAQ,cAAc,EAE/Ca,EAEJ,IAAKA,EAAapB,EAAM,WAAWiB,CAAI,IAAOC,GAAmBC,IAAgB,sBAAwB,CACvG,IAAIE,EAAY,KAAK,KAAO,KAAK,IAAI,SACrC,OAAOjB,GAAWgB,EAAa,CAAC,UAAWH,CAAI,EAAIA,EAAMI,GAAa,IAAIA,CAAW,UAC5EH,GAAmBC,IAAgB,mBAC5C,OAAAb,GAAsBC,EAAS,kBAAkB,EAC1CI,GAAgBM,CAAI,EAG7B,OAAOA,CACT,CAAC,EAED,kBAAmB,CAAC,SAA2BA,EAAM,CACnD,IAAIK,EAAe,KAAK,cAAgBN,EAAS,aAC7CO,EAAoBD,GAAgBA,EAAa,kBACjDE,EAAoBF,GAAgBA,EAAa,kBACjDG,EAAoB,CAACF,GAAqB,KAAK,eAAiB,OAEpE,GAAIE,GAAsBD,GAAqBxB,EAAM,SAASiB,CAAI,GAAKA,EAAK,OAC1E,GAAI,CACF,OAAO,KAAK,MAAMA,CAAI,CACxB,OAASF,EAAP,CACA,GAAIU,EACF,MAAIV,EAAE,OAAS,cACPb,GAAW,KAAKa,EAAGb,GAAW,iBAAkB,KAAM,KAAM,KAAK,QAAQ,EAE3Ea,CAEV,CAGF,OAAOE,CACT,CAAC,EAMD,QAAS,EAET,eAAgB,aAChB,eAAgB,eAEhB,iBAAkB,GAClB,cAAe,GAEf,IAAK,CACH,SAAU,IACZ,EAEA,eAAgB,SAAwBS,EAAQ,CAC9C,OAAOA,GAAU,KAAOA,EAAS,GACnC,EAEA,QAAS,CACP,OAAQ,CACN,OAAU,mCACZ,CACF,CACF,EAEA1B,EAAM,QAAQ,CAAC,SAAU,MAAO,MAAM,EAAG,SAA6B2B,EAAQ,CAC5EX,EAAS,QAAQW,CAAM,EAAI,CAAC,CAC9B,CAAC,EAED3B,EAAM,QAAQ,CAAC,OAAQ,MAAO,OAAO,EAAG,SAA+B2B,EAAQ,CAC7EX,EAAS,QAAQW,CAAM,EAAI3B,EAAM,MAAMK,EAAoB,CAC7D,CAAC,EAEDN,GAAO,QAAUiB,ICjJjB,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IACRC,GAAW,IAUfF,GAAO,QAAU,SAAuBG,EAAMC,EAASC,EAAK,CAC1D,IAAIC,EAAU,MAAQJ,GAEtB,OAAAD,GAAM,QAAQI,EAAK,SAAmBE,EAAI,CACxCJ,EAAOI,EAAG,KAAKD,EAASH,EAAMC,CAAO,CACvC,CAAC,EAEMD,CACT,ICrBA,IAAAK,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEAA,GAAO,QAAU,SAAkBC,EAAO,CACxC,MAAO,CAAC,EAAEA,GAASA,EAAM,WAC3B,ICJA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IACRC,GAAgB,KAChBC,GAAW,KACXC,GAAW,IACXC,GAAgB,IAKpB,SAASC,GAA6BC,EAAQ,CAK5C,GAJIA,EAAO,aACTA,EAAO,YAAY,iBAAiB,EAGlCA,EAAO,QAAUA,EAAO,OAAO,QACjC,MAAM,IAAIF,EAEd,CAQAL,GAAO,QAAU,SAAyBO,EAAQ,CAChDD,GAA6BC,CAAM,EAGnCA,EAAO,QAAUA,EAAO,SAAW,CAAC,EAGpCA,EAAO,KAAOL,GAAc,KAC1BK,EACAA,EAAO,KACPA,EAAO,QACPA,EAAO,gBACT,EAGAA,EAAO,QAAUN,GAAM,MACrBM,EAAO,QAAQ,QAAU,CAAC,EAC1BA,EAAO,QAAQA,EAAO,MAAM,GAAK,CAAC,EAClCA,EAAO,OACT,EAEAN,GAAM,QACJ,CAAC,SAAU,MAAO,OAAQ,OAAQ,MAAO,QAAS,QAAQ,EAC1D,SAA2BO,EAAQ,CACjC,OAAOD,EAAO,QAAQC,CAAM,CAC9B,CACF,EAEA,IAAIC,EAAUF,EAAO,SAAWH,GAAS,QAEzC,OAAOK,EAAQF,CAAM,EAAE,KAAK,SAA6BG,EAAU,CACjE,OAAAJ,GAA6BC,CAAM,EAGnCG,EAAS,KAAOR,GAAc,KAC5BK,EACAG,EAAS,KACTA,EAAS,QACTH,EAAO,iBACT,EAEOG,CACT,EAAG,SAA4BC,EAAQ,CACrC,OAAKR,GAASQ,CAAM,IAClBL,GAA6BC,CAAM,EAG/BI,GAAUA,EAAO,WACnBA,EAAO,SAAS,KAAOT,GAAc,KACnCK,EACAI,EAAO,SAAS,KAChBA,EAAO,SAAS,QAChBJ,EAAO,iBACT,IAIG,QAAQ,OAAOI,CAAM,CAC9B,CAAC,CACH,ICtFA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,EAAQ,IAUZD,GAAO,QAAU,SAAqBE,EAASC,EAAS,CAEtDA,EAAUA,GAAW,CAAC,EACtB,IAAIC,EAAS,CAAC,EAEd,SAASC,EAAeC,EAAQC,EAAQ,CACtC,OAAIN,EAAM,cAAcK,CAAM,GAAKL,EAAM,cAAcM,CAAM,EACpDN,EAAM,MAAMK,EAAQC,CAAM,EACxBN,EAAM,cAAcM,CAAM,EAC5BN,EAAM,MAAM,CAAC,EAAGM,CAAM,EACpBN,EAAM,QAAQM,CAAM,EACtBA,EAAO,MAAM,EAEfA,CACT,CAGA,SAASC,EAAoBC,EAAM,CACjC,GAAKR,EAAM,YAAYE,EAAQM,CAAI,CAAC,GAE7B,GAAI,CAACR,EAAM,YAAYC,EAAQO,CAAI,CAAC,EACzC,OAAOJ,EAAe,OAAWH,EAAQO,CAAI,CAAC,MAF9C,QAAOJ,EAAeH,EAAQO,CAAI,EAAGN,EAAQM,CAAI,CAAC,CAItD,CAGA,SAASC,EAAiBD,EAAM,CAC9B,GAAI,CAACR,EAAM,YAAYE,EAAQM,CAAI,CAAC,EAClC,OAAOJ,EAAe,OAAWF,EAAQM,CAAI,CAAC,CAElD,CAGA,SAASE,EAAiBF,EAAM,CAC9B,GAAKR,EAAM,YAAYE,EAAQM,CAAI,CAAC,GAE7B,GAAI,CAACR,EAAM,YAAYC,EAAQO,CAAI,CAAC,EACzC,OAAOJ,EAAe,OAAWH,EAAQO,CAAI,CAAC,MAF9C,QAAOJ,EAAe,OAAWF,EAAQM,CAAI,CAAC,CAIlD,CAGA,SAASG,EAAgBH,EAAM,CAC7B,GAAIA,KAAQN,EACV,OAAOE,EAAeH,EAAQO,CAAI,EAAGN,EAAQM,CAAI,CAAC,EAC7C,GAAIA,KAAQP,EACjB,OAAOG,EAAe,OAAWH,EAAQO,CAAI,CAAC,CAElD,CAEA,IAAII,EAAW,CACb,IAAOH,EACP,OAAUA,EACV,KAAQA,EACR,QAAWC,EACX,iBAAoBA,EACpB,kBAAqBA,EACrB,iBAAoBA,EACpB,QAAWA,EACX,eAAkBA,EAClB,gBAAmBA,EACnB,QAAWA,EACX,aAAgBA,EAChB,eAAkBA,EAClB,eAAkBA,EAClB,iBAAoBA,EACpB,mBAAsBA,EACtB,WAAcA,EACd,iBAAoBA,EACpB,cAAiBA,EACjB,eAAkBA,EAClB,UAAaA,EACb,UAAaA,EACb,WAAcA,EACd,YAAeA,EACf,WAAcA,EACd,iBAAoBA,EACpB,eAAkBC,CACpB,EAEA,OAAAX,EAAM,QAAQ,OAAO,KAAKC,CAAO,EAAE,OAAO,OAAO,KAAKC,CAAO,CAAC,EAAG,SAA4BM,EAAM,CACjG,IAAIK,EAAQD,EAASJ,CAAI,GAAKD,EAC1BO,EAAcD,EAAML,CAAI,EAC3BR,EAAM,YAAYc,CAAW,GAAKD,IAAUF,IAAqBR,EAAOK,CAAI,EAAIM,EACnF,CAAC,EAEMX,CACT,ICnGA,IAAAY,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAAAA,GAAO,QAAU,CACf,QAAW,QACb,ICFA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAU,KAAuB,QACjCC,EAAa,IAEbC,GAAa,CAAC,EAGlB,CAAC,SAAU,UAAW,SAAU,WAAY,SAAU,QAAQ,EAAE,QAAQ,SAASC,EAAMC,EAAG,CACxFF,GAAWC,CAAI,EAAI,SAAmBE,EAAO,CAC3C,OAAO,OAAOA,IAAUF,GAAQ,KAAOC,EAAI,EAAI,KAAO,KAAOD,CAC/D,CACF,CAAC,EAED,IAAIG,GAAqB,CAAC,EAS1BJ,GAAW,aAAe,SAAsBK,EAAWC,EAASC,EAAS,CAC3E,SAASC,EAAcC,EAAKC,EAAM,CAChC,MAAO,WAAaZ,GAAU,0BAA6BW,EAAM,IAAOC,GAAQH,EAAU,KAAOA,EAAU,GAC7G,CAGA,OAAO,SAASI,EAAOF,EAAKG,EAAM,CAChC,GAAIP,IAAc,GAChB,MAAM,IAAIN,EACRS,EAAcC,EAAK,qBAAuBH,EAAU,OAASA,EAAU,GAAG,EAC1EP,EAAW,cACb,EAGF,OAAIO,GAAW,CAACF,GAAmBK,CAAG,IACpCL,GAAmBK,CAAG,EAAI,GAE1B,QAAQ,KACND,EACEC,EACA,+BAAiCH,EAAU,yCAC7C,CACF,GAGKD,EAAYA,EAAUM,EAAOF,EAAKG,CAAI,EAAI,EACnD,CACF,EASA,SAASC,GAAcC,EAASC,EAAQC,EAAc,CACpD,GAAI,OAAOF,GAAY,SACrB,MAAM,IAAIf,EAAW,4BAA6BA,EAAW,oBAAoB,EAInF,QAFIkB,EAAO,OAAO,KAAKH,CAAO,EAC1BZ,EAAIe,EAAK,OACNf,KAAM,GAAG,CACd,IAAIO,EAAMQ,EAAKf,CAAC,EACZG,EAAYU,EAAON,CAAG,EAC1B,GAAIJ,EAAW,CACb,IAAIM,EAAQG,EAAQL,CAAG,EACnBS,EAASP,IAAU,QAAaN,EAAUM,EAAOF,EAAKK,CAAO,EACjE,GAAII,IAAW,GACb,MAAM,IAAInB,EAAW,UAAYU,EAAM,YAAcS,EAAQnB,EAAW,oBAAoB,EAE9F,SAEF,GAAIiB,IAAiB,GACnB,MAAM,IAAIjB,EAAW,kBAAoBU,EAAKV,EAAW,cAAc,EAG7E,CAEAF,GAAO,QAAU,CACf,cAAegB,GACf,WAAYb,EACd,ICrFA,IAAAmB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IACRC,GAAW,KACXC,GAAqB,KACrBC,GAAkB,KAClBC,EAAc,KACdC,GAAgB,KAChBC,GAAY,KAEZC,EAAaD,GAAU,WAM3B,SAASE,EAAMC,EAAgB,CAC7B,KAAK,SAAWA,EAChB,KAAK,aAAe,CAClB,QAAS,IAAIP,GACb,SAAU,IAAIA,EAChB,CACF,CAOAM,EAAM,UAAU,QAAU,SAAiBE,EAAaC,EAAQ,CAG1D,OAAOD,GAAgB,UACzBC,EAASA,GAAU,CAAC,EACpBA,EAAO,IAAMD,GAEbC,EAASD,GAAe,CAAC,EAG3BC,EAASP,EAAY,KAAK,SAAUO,CAAM,EAGtCA,EAAO,OACTA,EAAO,OAASA,EAAO,OAAO,YAAY,EACjC,KAAK,SAAS,OACvBA,EAAO,OAAS,KAAK,SAAS,OAAO,YAAY,EAEjDA,EAAO,OAAS,MAGlB,IAAIC,EAAeD,EAAO,aAEtBC,IAAiB,QACnBN,GAAU,cAAcM,EAAc,CACpC,kBAAmBL,EAAW,aAAaA,EAAW,OAAO,EAC7D,kBAAmBA,EAAW,aAAaA,EAAW,OAAO,EAC7D,oBAAqBA,EAAW,aAAaA,EAAW,OAAO,CACjE,EAAG,EAAK,EAIV,IAAIM,EAA0B,CAAC,EAC3BC,EAAiC,GACrC,KAAK,aAAa,QAAQ,QAAQ,SAAoCC,EAAa,CAC7E,OAAOA,EAAY,SAAY,YAAcA,EAAY,QAAQJ,CAAM,IAAM,KAIjFG,EAAiCA,GAAkCC,EAAY,YAE/EF,EAAwB,QAAQE,EAAY,UAAWA,EAAY,QAAQ,EAC7E,CAAC,EAED,IAAIC,EAA2B,CAAC,EAChC,KAAK,aAAa,SAAS,QAAQ,SAAkCD,EAAa,CAChFC,EAAyB,KAAKD,EAAY,UAAWA,EAAY,QAAQ,CAC3E,CAAC,EAED,IAAIE,EAEJ,GAAI,CAACH,EAAgC,CACnC,IAAII,EAAQ,CAACf,GAAiB,MAAS,EAMvC,IAJA,MAAM,UAAU,QAAQ,MAAMe,EAAOL,CAAuB,EAC5DK,EAAQA,EAAM,OAAOF,CAAwB,EAE7CC,EAAU,QAAQ,QAAQN,CAAM,EACzBO,EAAM,QACXD,EAAUA,EAAQ,KAAKC,EAAM,MAAM,EAAGA,EAAM,MAAM,CAAC,EAGrD,OAAOD,EAKT,QADIE,EAAYR,EACTE,EAAwB,QAAQ,CACrC,IAAIO,EAAcP,EAAwB,MAAM,EAC5CQ,EAAaR,EAAwB,MAAM,EAC/C,GAAI,CACFM,EAAYC,EAAYD,CAAS,CACnC,OAASG,EAAP,CACAD,EAAWC,CAAK,EAChB,KACF,EAGF,GAAI,CACFL,EAAUd,GAAgBgB,CAAS,CACrC,OAASG,EAAP,CACA,OAAO,QAAQ,OAAOA,CAAK,CAC7B,CAEA,KAAON,EAAyB,QAC9BC,EAAUA,EAAQ,KAAKD,EAAyB,MAAM,EAAGA,EAAyB,MAAM,CAAC,EAG3F,OAAOC,CACT,EAEAT,EAAM,UAAU,OAAS,SAAgBG,EAAQ,CAC/CA,EAASP,EAAY,KAAK,SAAUO,CAAM,EAC1C,IAAIY,EAAWlB,GAAcM,EAAO,QAASA,EAAO,GAAG,EACvD,OAAOV,GAASsB,EAAUZ,EAAO,OAAQA,EAAO,gBAAgB,CAClE,EAGAX,GAAM,QAAQ,CAAC,SAAU,MAAO,OAAQ,SAAS,EAAG,SAA6BwB,EAAQ,CAEvFhB,EAAM,UAAUgB,CAAM,EAAI,SAASC,EAAKd,EAAQ,CAC9C,OAAO,KAAK,QAAQP,EAAYO,GAAU,CAAC,EAAG,CAC5C,OAAQa,EACR,IAAKC,EACL,MAAOd,GAAU,CAAC,GAAG,IACvB,CAAC,CAAC,CACJ,CACF,CAAC,EAEDX,GAAM,QAAQ,CAAC,OAAQ,MAAO,OAAO,EAAG,SAA+BwB,EAAQ,CAG7E,SAASE,EAAmBC,EAAQ,CAClC,OAAO,SAAoBF,EAAKG,EAAMjB,EAAQ,CAC5C,OAAO,KAAK,QAAQP,EAAYO,GAAU,CAAC,EAAG,CAC5C,OAAQa,EACR,QAASG,EAAS,CAChB,eAAgB,qBAClB,EAAI,CAAC,EACL,IAAKF,EACL,KAAMG,CACR,CAAC,CAAC,CACJ,CACF,CAEApB,EAAM,UAAUgB,CAAM,EAAIE,EAAmB,EAE7ClB,EAAM,UAAUgB,EAAS,MAAM,EAAIE,EAAmB,EAAI,CAC5D,CAAC,EAED3B,GAAO,QAAUS,IC/JjB,IAAAqB,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAgB,IAQpB,SAASC,EAAYC,EAAU,CAC7B,GAAI,OAAOA,GAAa,WACtB,MAAM,IAAI,UAAU,8BAA8B,EAGpD,IAAIC,EAEJ,KAAK,QAAU,IAAI,QAAQ,SAAyBC,EAAS,CAC3DD,EAAiBC,CACnB,CAAC,EAED,IAAIC,EAAQ,KAGZ,KAAK,QAAQ,KAAK,SAASC,EAAQ,CACjC,GAAKD,EAAM,WAEX,KAAIE,EACAC,EAAIH,EAAM,WAAW,OAEzB,IAAKE,EAAI,EAAGA,EAAIC,EAAGD,IACjBF,EAAM,WAAWE,CAAC,EAAED,CAAM,EAE5BD,EAAM,WAAa,KACrB,CAAC,EAGD,KAAK,QAAQ,KAAO,SAASI,EAAa,CACxC,IAAIC,EAEAC,EAAU,IAAI,QAAQ,SAASP,EAAS,CAC1CC,EAAM,UAAUD,CAAO,EACvBM,EAAWN,CACb,CAAC,EAAE,KAAKK,CAAW,EAEnB,OAAAE,EAAQ,OAAS,UAAkB,CACjCN,EAAM,YAAYK,CAAQ,CAC5B,EAEOC,CACT,EAEAT,EAAS,SAAgBU,EAAS,CAC5BP,EAAM,SAKVA,EAAM,OAAS,IAAIL,GAAcY,CAAO,EACxCT,EAAeE,EAAM,MAAM,EAC7B,CAAC,CACH,CAKAJ,EAAY,UAAU,iBAAmB,UAA4B,CACnE,GAAI,KAAK,OACP,MAAM,KAAK,MAEf,EAMAA,EAAY,UAAU,UAAY,SAAmBY,EAAU,CAC7D,GAAI,KAAK,OAAQ,CACfA,EAAS,KAAK,MAAM,EACpB,OAGE,KAAK,WACP,KAAK,WAAW,KAAKA,CAAQ,EAE7B,KAAK,WAAa,CAACA,CAAQ,CAE/B,EAMAZ,EAAY,UAAU,YAAc,SAAqBY,EAAU,CACjE,GAAK,KAAK,WAGV,KAAIC,EAAQ,KAAK,WAAW,QAAQD,CAAQ,EACxCC,IAAU,IACZ,KAAK,WAAW,OAAOA,EAAO,CAAC,EAEnC,EAMAb,EAAY,OAAS,UAAkB,CACrC,IAAIK,EACAD,EAAQ,IAAIJ,EAAY,SAAkBc,EAAG,CAC/CT,EAASS,CACX,CAAC,EACD,MAAO,CACL,MAAOV,EACP,OAAQC,CACV,CACF,EAEAP,GAAO,QAAUE,ICtHjB,IAAAe,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAsBAA,GAAO,QAAU,SAAgBC,EAAU,CACzC,OAAO,SAAcC,EAAK,CACxB,OAAOD,EAAS,MAAM,KAAMC,CAAG,CACjC,CACF,IC1BA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IAQZD,GAAO,QAAU,SAAsBE,EAAS,CAC9C,OAAOD,GAAM,SAASC,CAAO,GAAMA,EAAQ,eAAiB,EAC9D,ICZA,IAAAC,GAAAC,EAAA,CAAAC,GAAAC,KAAA,cAEA,IAAIC,GAAQ,IACRC,GAAO,KACPC,EAAQ,KACRC,GAAc,KACdC,GAAW,IAQf,SAASC,GAAeC,EAAe,CACrC,IAAIC,EAAU,IAAIL,EAAMI,CAAa,EACjCE,EAAWP,GAAKC,EAAM,UAAU,QAASK,CAAO,EAGpD,OAAAP,GAAM,OAAOQ,EAAUN,EAAM,UAAWK,CAAO,EAG/CP,GAAM,OAAOQ,EAAUD,CAAO,EAG9BC,EAAS,OAAS,SAAgBC,EAAgB,CAChD,OAAOJ,GAAeF,GAAYG,EAAeG,CAAc,CAAC,CAClE,EAEOD,CACT,CAGA,IAAIE,EAAQL,GAAeD,EAAQ,EAGnCM,EAAM,MAAQR,EAGdQ,EAAM,cAAgB,IACtBA,EAAM,YAAc,KACpBA,EAAM,SAAW,KACjBA,EAAM,QAAU,KAAsB,QACtCA,EAAM,WAAa,KAGnBA,EAAM,WAAa,IAGnBA,EAAM,OAASA,EAAM,cAGrBA,EAAM,IAAM,SAAaC,EAAU,CACjC,OAAO,QAAQ,IAAIA,CAAQ,CAC7B,EACAD,EAAM,OAAS,KAGfA,EAAM,aAAe,KAErBX,GAAO,QAAUW,EAGjBX,GAAO,QAAQ,QAAUW,IC/DzB,IAAAE,GAAAC,EAAA,CAAAC,GAAAC,KAAA,CAAAA,GAAO,QAAU,OCAjB,IAAAC,GAAAC,EAAA,CAAAC,EAAAC,IAAA,EAAE,SAASC,EAAM,CACf,aAEA,SAASC,EAASC,EAAGC,EAAM,CASzB,GARID,aAAa,SAAW,OAAOA,GAAM,YAInCC,aAAgB,SACpBA,EAAO,CAAC,GAGNA,EAAK,aAAe,IAASD,IAAM,IACrC,MAAO,GAGT,IAAIE,EAAQ,qEACRC,EAAY,2CAEhB,OAAIF,EAAK,eAAiB,GACxBC,EAASC,EAAYD,EACZD,EAAK,YAAc,KAC5BC,EAAQC,EAAY,IAAMD,GAGxBD,EAAK,kBAAoB,KAC3BC,EAAQ,4EAGF,IAAI,OAAO,IAAMA,EAAQ,IAAK,IAAI,EAAG,KAAKF,CAAC,CACrD,CAEI,OAAOJ,EAAY,KACjB,OAAOC,EAAW,KAAeA,EAAO,UAC1CD,EAAUC,EAAO,QAAUE,GAE7BH,EAAQ,SAAWG,GACV,OAAO,QAAW,YAAc,OAAO,IAChD,OAAO,CAAC,EAAG,UAAW,CACpB,OAAOA,CACT,CAAC,EAEDD,EAAK,SAAWC,CAEpB,GAAGH,CAAI,6JC1BP,SAASQ,EAAKC,EAAMD,EAAM,CAAA,OACpB,OAAOA,EAAS,IAAaA,EAAO,CAAE,QAAO,EAAT,EAC/B,OAAOA,GAAS,WACvB,QAAQ,KAAK,oDAAb,EACAA,EAAO,CAAE,QAAS,CAACA,CAAZ,GAKLA,EAAK,SAAW,6EAA6E,KAAKC,EAAK,IAAvF,EACX,IAAI,KAAK,CAAA,SAA8BA,CAA9B,EAAqC,CAAE,KAAMA,EAAK,IAAb,CAA9C,EAEFA,CACR,CAED,SAASC,EAAUD,EAAKD,EAAME,EAAM,CAClC,IAAIC,EAAM,IAAI,eACdA,EAAI,KAAK,MAAOF,CAAhB,EACAE,EAAI,aAAe,OACnBA,EAAI,OAAS,UAAY,CACvBC,EAAOD,EAAI,SAAUH,EAAME,CAArB,CACP,EACDC,EAAI,QAAU,UAAY,CACxB,QAAQ,MAAM,yBAAd,CACD,EACDA,EAAI,KAAJ,CACD,CAED,SAASA,EAAaF,EAAK,CACzB,IAAID,EAAM,IAAI,eAEdA,EAAI,KAAK,OAAQC,EAAjB,EAAA,EACA,GAAI,CACFD,EAAI,KAAJ,CACD,MAAC,CAAY,CACd,MAAqB,MAAdA,EAAI,QAA+B,KAAdA,EAAI,MACjC,CAGD,SAASK,EAAOJ,EAAM,CACpB,GAAI,CACFA,EAAK,cAAc,IAAI,WAAW,OAAf,CAAnB,CACD,MAAC,CACA,IAAID,EAAM,SAAS,YAAY,aAArB,EACVA,EAAI,eAAe,QAAnB,GAAA,GAAwC,OAAQ,EAAG,EAAG,EAAG,GACnC,GADtB,GAAA,GAAA,GAAA,GACsD,EAAG,IADzD,EAEAC,EAAK,cAAcD,CAAnB,CACD,CACF,CAAA,IAtDGM,EAAU,OAAO,QAAW,UAAY,OAAO,SAAW,OAC1D,OAAS,OAAO,MAAS,UAAY,KAAK,OAAS,KACnD,KAAO,OAAO,QAAW,UAAY,OAAO,SAAW,OACvD,OADO,OAyDPL,EAAiBK,EAAQ,WAAa,YAAY,KAAK,UAAU,SAA3B,GAAyC,cAAc,KAAK,UAAU,SAA7B,GAA2C,CAAC,SAAS,KAAK,UAAU,SAAxB,EAE3HF,EAASE,EAAQ,SAElB,OAAO,QAAW,UAAY,SAAWA,EACtC,UAAmB,CAAc,EAGlC,aAAc,kBAAkB,WAAa,CAACL,EAC/C,SAAiBD,EAAMI,EAAMG,EAAM,CAAA,IAC/BC,EAAMF,EAAQ,KAAOA,EAAQ,UAC7BG,EAAI,SAAS,cAAc,GAAvB,EACRL,EAAOA,GAAQJ,EAAK,MAAQ,WAE5BS,EAAE,SAAWL,EACbK,EAAE,IAAM,WAKJ,OAAOT,GAAS,UAElBS,EAAE,KAAOT,EACLS,EAAE,SAAW,SAAS,OAKxBJ,EAAMI,CAAD,EAJLN,EAAYM,EAAE,IAAH,EACPP,EAASF,EAAMI,EAAMG,CAAb,EACRF,EAAMI,EAAGA,EAAE,OAAS,QAAf,IAMXA,EAAE,KAAOD,EAAI,gBAAgBR,CAApB,EACT,WAAW,UAAY,CAAEQ,EAAI,gBAAgBC,EAAE,IAAtB,CAA6B,EAAE,GAA9C,EACV,WAAW,UAAY,CAAEJ,EAAMI,CAAD,CAAK,EAAE,CAA3B,EAEb,EAGC,qBAAsB,UACtB,SAAiBH,EAAMF,EAAMG,EAAM,CAGnC,GAFAH,EAAOA,GAAQE,EAAK,MAAQ,WAExB,OAAOA,GAAS,SAUlB,UAAU,iBAAiBN,EAAIM,EAAMC,CAAP,EAAcH,CAA5C,UATID,EAAYG,CAAD,EACbJ,EAASI,EAAMF,EAAMG,CAAb,MACH,CACL,IAAIC,EAAI,SAAS,cAAc,GAAvB,EACRA,EAAE,KAAOF,EACTE,EAAE,OAAS,SACX,WAAW,UAAY,CAAEH,EAAMG,CAAD,CAAK,CAAzB,EAKf,EAGC,SAAiBR,EAAMG,EAAME,EAAMD,EAAO,CAS1C,GANAA,EAAQA,GAAS,KAAK,GAAI,QAAL,EACjBA,IACFA,EAAM,SAAS,MACfA,EAAM,SAAS,KAAK,UAAY,kBAG9B,OAAOJ,GAAS,SAAU,OAAOE,EAASF,EAAMG,EAAME,CAAb,EATH,IAWtCE,EAAQP,EAAK,OAAS,2BACtBQ,EAAW,eAAe,KAAKF,EAAQ,WAA5B,GAA4CA,EAAQ,OAC/DG,EAAc,eAAe,KAAK,UAAU,SAA9B,EAElB,IAAKA,GAAgBF,GAASC,GAAaP,IAAmB,OAAO,WAAe,IAAa,CAE/F,IAAIS,EAAS,IAAI,WACjBA,EAAO,UAAY,UAAY,CAC7B,IAAIT,EAAMS,EAAO,OACjBT,EAAMQ,EAAcR,EAAMA,EAAI,QAAQ,eAAgB,uBAA5B,EACtBG,EAAOA,EAAM,SAAS,KAAOH,EAC5B,SAAWA,EAChBG,EAAQ,IACT,EACDM,EAAO,cAAcV,CAArB,MACK,CAAA,IACDW,EAAML,EAAQ,KAAOA,EAAQ,UAC7BM,EAAMD,EAAI,gBAAgBX,CAApB,EACNI,EAAOA,EAAM,SAAWQ,EACvB,SAAS,KAAOA,EACrBR,EAAQ,KACR,WAAW,UAAY,CAAEO,EAAI,gBAAgBC,CAApB,CAA0B,EAAE,GAA3C,EAEb,GAGHN,EAAQ,OAASF,EAAO,OAASA,EAE7B,OAAOS,GAAW,MACpBA,GAAO,QAAUT,EAAA,CAAA,ICzKnB,IAAAU,GAAkB,SAClBC,GAAqB,SACrBC,GAAsB,SCStB,IAAMC,GAAU,QAIVC,GAAUD,GACVE,GAAW,OAAO,MAAS,WAC3BC,GAAW,OAAO,MAAS,WAC3BC,EAAa,OAAO,QAAW,WAC/BC,GAAM,OAAO,aAAgB,WAAa,IAAI,YAAgB,OAC9DC,GAAM,OAAO,aAAgB,WAAa,IAAI,YAAgB,OAC9DC,GAAQ,oEACRC,EAAS,MAAM,UAAU,MAAM,KAAKD,EAAK,EACzCE,GAAWC,GAAM,CACnB,IAAIC,EAAM,CAAC,EACX,OAAAD,EAAE,QAAQ,CAACE,EAAG,IAAMD,EAAIC,CAAC,EAAI,CAAC,EACvBD,CACX,GAAGH,CAAM,EACHK,GAAQ,0EACRC,EAAU,OAAO,aAAa,KAAK,MAAM,EACzCC,GAAW,OAAO,WAAW,MAAS,WACtC,WAAW,KAAK,KAAK,UAAU,EAC9BC,GAAO,IAAI,WAAW,MAAM,UAAU,MAAM,KAAKA,EAAI,CAAC,CAAC,EACxDC,GAAcC,GAAQA,EACvB,QAAQ,KAAM,EAAE,EAAE,QAAQ,SAAWC,GAAOA,GAAM,IAAM,IAAM,GAAG,EAChEC,GAAYC,GAAMA,EAAE,QAAQ,oBAAqB,EAAE,EAInDC,GAAgBC,GAAQ,CAE1B,IAAIC,EAAKC,EAAIC,EAAIC,EAAIC,EAAM,GACrBC,EAAMN,EAAI,OAAS,EACzB,QAASO,EAAI,EAAGA,EAAIP,EAAI,QAAS,CAC7B,IAAKE,EAAKF,EAAI,WAAWO,GAAG,GAAK,MAC5BJ,EAAKH,EAAI,WAAWO,GAAG,GAAK,MAC5BH,EAAKJ,EAAI,WAAWO,GAAG,GAAK,IAC7B,MAAM,IAAI,UAAU,yBAAyB,EACjDN,EAAOC,GAAM,GAAOC,GAAM,EAAKC,EAC/BC,GAAOpB,EAAOgB,GAAO,GAAK,EAAE,EACtBhB,EAAOgB,GAAO,GAAK,EAAE,EACrBhB,EAAOgB,GAAO,EAAI,EAAE,EACpBhB,EAAOgB,EAAM,EAAE,EAEzB,OAAOK,EAAMD,EAAI,MAAM,EAAGC,EAAM,CAAC,EAAI,MAAM,UAAUA,CAAG,EAAID,CAChE,EAMMG,GAAQ5B,GAAYoB,GAAQ,KAAKA,CAAG,EACpCnB,EAAcmB,GAAQ,OAAO,KAAKA,EAAK,QAAQ,EAAE,SAAS,QAAQ,EAC9DD,GACJU,GAAkB5B,EACjB6B,GAAQ,OAAO,KAAKA,CAAG,EAAE,SAAS,QAAQ,EAC1CA,GAAQ,CAGP,IAAIC,EAAO,CAAC,EACZ,QAAS,EAAI,EAAGC,EAAIF,EAAI,OAAQ,EAAIE,EAAG,GAAK,KACxCD,EAAK,KAAKpB,EAAQ,MAAM,KAAMmB,EAAI,SAAS,EAAG,EAAI,IAAO,CAAC,CAAC,EAE/D,OAAOF,GAAMG,EAAK,KAAK,EAAE,CAAC,CAC9B,EAMEE,EAAiB,CAACH,EAAKI,EAAU,KAAUA,EAAUpB,GAAWe,GAAgBC,CAAG,CAAC,EAAID,GAAgBC,CAAG,EAI3GK,GAAW1B,GAAM,CACnB,GAAIA,EAAE,OAAS,EAAG,CACd,IAAI2B,EAAK3B,EAAE,WAAW,CAAC,EACvB,OAAO2B,EAAK,IAAO3B,EACb2B,EAAK,KAASzB,EAAQ,IAAQyB,IAAO,CAAE,EACnCzB,EAAQ,IAAQyB,EAAK,EAAK,EACzBzB,EAAQ,IAASyB,IAAO,GAAM,EAAK,EAChCzB,EAAQ,IAASyB,IAAO,EAAK,EAAK,EAClCzB,EAAQ,IAAQyB,EAAK,EAAK,MAEvC,CACD,IAAIA,EAAK,OACF3B,EAAE,WAAW,CAAC,EAAI,OAAU,MAC5BA,EAAE,WAAW,CAAC,EAAI,OACzB,OAAQE,EAAQ,IAASyB,IAAO,GAAM,CAAK,EACrCzB,EAAQ,IAASyB,IAAO,GAAM,EAAK,EACnCzB,EAAQ,IAASyB,IAAO,EAAK,EAAK,EAClCzB,EAAQ,IAAQyB,EAAK,EAAK,EAExC,EACMC,GAAU,gDAMVC,GAAQC,GAAMA,EAAE,QAAQF,GAASF,EAAO,EAExCK,GAAUvC,EACTiB,GAAM,OAAO,KAAKA,EAAG,MAAM,EAAE,SAAS,QAAQ,EAC/Cf,GACKe,GAAMW,GAAgB1B,GAAI,OAAOe,CAAC,CAAC,EACnCA,GAAMU,GAAMU,GAAKpB,CAAC,CAAC,EAMxBuB,EAAS,CAAC1B,EAAKmB,EAAU,KAAUA,EACnCpB,GAAW0B,GAAQzB,CAAG,CAAC,EACvByB,GAAQzB,CAAG,EAKX2B,GAAa3B,GAAQ0B,EAAO1B,EAAK,EAAI,EAIrC4B,GAAU,8EACVC,GAAWC,GAAS,CACtB,OAAQA,EAAK,OAAQ,CACjB,IAAK,GACD,IAAIC,GAAO,EAAOD,EAAK,WAAW,CAAC,IAAM,IACjC,GAAOA,EAAK,WAAW,CAAC,IAAM,IAC9B,GAAOA,EAAK,WAAW,CAAC,IAAM,EAC/B,GAAOA,EAAK,WAAW,CAAC,EAAIE,EAASD,EAAK,MACjD,OAAQnC,GAASoC,IAAW,IAAM,KAAM,EAClCpC,GAASoC,EAAS,MAAS,KAAM,EAC3C,IAAK,GACD,OAAOpC,GAAU,GAAOkC,EAAK,WAAW,CAAC,IAAM,IACvC,GAAOA,EAAK,WAAW,CAAC,IAAM,EAC/B,GAAOA,EAAK,WAAW,CAAC,CAAE,EACrC,QACI,OAAOlC,GAAU,GAAOkC,EAAK,WAAW,CAAC,IAAM,EACxC,GAAOA,EAAK,WAAW,CAAC,CAAE,CACzC,CACJ,EAMMG,GAAQC,GAAMA,EAAE,QAAQN,GAASC,EAAO,EAIxCM,GAAgBzB,GAAQ,CAG1B,GADAA,EAAMA,EAAI,QAAQ,OAAQ,EAAE,EACxB,CAACf,GAAM,KAAKe,CAAG,EACf,MAAM,IAAI,UAAU,mBAAmB,EAC3CA,GAAO,KAAK,MAAM,GAAKA,EAAI,OAAS,EAAE,EACtC,IAAI0B,EAAK/B,EAAM,GAAIgC,EAAIC,EACvB,QAAS1B,EAAI,EAAGA,EAAIF,EAAI,QACpB0B,EAAM7C,EAAOmB,EAAI,OAAOE,GAAG,CAAC,GAAK,GAC3BrB,EAAOmB,EAAI,OAAOE,GAAG,CAAC,GAAK,IAC1ByB,EAAK9C,EAAOmB,EAAI,OAAOE,GAAG,CAAC,IAAM,GACjC0B,EAAK/C,EAAOmB,EAAI,OAAOE,GAAG,CAAC,GAClCP,GAAOgC,IAAO,GAAKzC,EAAQwC,GAAO,GAAK,GAAG,EACpCE,IAAO,GAAK1C,EAAQwC,GAAO,GAAK,IAAKA,GAAO,EAAI,GAAG,EAC/CxC,EAAQwC,GAAO,GAAK,IAAKA,GAAO,EAAI,IAAKA,EAAM,GAAG,EAEhE,OAAO/B,CACX,EAMMkC,GAAQvD,GAAY0B,GAAQ,KAAKR,GAASQ,CAAG,CAAC,EAC9CxB,EAAcwB,GAAQ,OAAO,KAAKA,EAAK,QAAQ,EAAE,SAAS,QAAQ,EAC9DyB,GAEJK,GAAgBtD,EACfM,GAAMK,GAAS,OAAO,KAAKL,EAAG,QAAQ,CAAC,EACvCA,GAAMK,GAAS0C,GAAM/C,CAAC,EAAE,MAAM,EAAE,EAAE,IAAIE,GAAKA,EAAE,WAAW,CAAC,CAAC,CAAC,EAI5D+C,GAAgBjD,GAAMgD,GAAcE,GAAOlD,CAAC,CAAC,EAE7CmD,GAAUzD,EACTM,GAAM,OAAO,KAAKA,EAAG,QAAQ,EAAE,SAAS,MAAM,EAC/CL,GACKK,GAAML,GAAI,OAAOqD,GAAchD,CAAC,CAAC,EACjCA,GAAMyC,GAAKM,GAAM/C,CAAC,CAAC,EACxBkD,GAAUlD,GAAMU,GAASV,EAAE,QAAQ,QAAUS,GAAOA,GAAM,IAAM,IAAM,GAAG,CAAC,EAM1E2C,GAAU5C,GAAQ2C,GAAQD,GAAO1C,CAAG,CAAC,EAKrC6C,GAAW7C,GAAQ,CACrB,GAAI,OAAOA,GAAQ,SACf,MAAO,GACX,IAAMG,EAAIH,EAAI,QAAQ,OAAQ,EAAE,EAAE,QAAQ,UAAW,EAAE,EACvD,MAAO,CAAC,oBAAoB,KAAKG,CAAC,GAAK,CAAC,oBAAoB,KAAKA,CAAC,CACtE,EAEM2C,GAAWC,IACN,CACH,MAAOA,EAAG,WAAY,GAAO,SAAU,GAAM,aAAc,EAC/D,GAKEC,GAAe,UAAY,CAC7B,IAAMC,EAAO,CAACC,EAAMC,IAAS,OAAO,eAAe,OAAO,UAAWD,EAAMJ,GAAQK,CAAI,CAAC,EACxFF,EAAK,aAAc,UAAY,CAAE,OAAOL,GAAO,IAAI,CAAG,CAAC,EACvDK,EAAK,WAAY,SAAU9B,EAAS,CAAE,OAAOO,EAAO,KAAMP,CAAO,CAAG,CAAC,EACrE8B,EAAK,cAAe,UAAY,CAAE,OAAOvB,EAAO,KAAM,EAAI,CAAG,CAAC,EAC9DuB,EAAK,cAAe,UAAY,CAAE,OAAOvB,EAAO,KAAM,EAAI,CAAG,CAAC,EAC9DuB,EAAK,eAAgB,UAAY,CAAE,OAAOR,GAAa,IAAI,CAAG,CAAC,CACnE,EAIMW,GAAmB,UAAY,CACjC,IAAMH,EAAO,CAACC,EAAMC,IAAS,OAAO,eAAe,WAAW,UAAWD,EAAMJ,GAAQK,CAAI,CAAC,EAC5FF,EAAK,WAAY,SAAU9B,EAAS,CAAE,OAAOD,EAAe,KAAMC,CAAO,CAAG,CAAC,EAC7E8B,EAAK,cAAe,UAAY,CAAE,OAAO/B,EAAe,KAAM,EAAI,CAAG,CAAC,EACtE+B,EAAK,cAAe,UAAY,CAAE,OAAO/B,EAAe,KAAM,EAAI,CAAG,CAAC,CAC1E,EAIMmC,GAAiB,IAAM,CACzBL,GAAa,EACbI,GAAiB,CACrB,EACME,GAAU,CACZ,QAASxE,GACT,QAASC,GACT,KAAMwD,GACN,aAAcJ,GACd,KAAMtB,GACN,aAAcT,GACd,WAAYwC,GACZ,SAAUlB,EACV,OAAQA,EACR,UAAWC,GACX,UAAWA,GACX,KAAMJ,GACN,KAAMU,GACN,OAAQW,GACR,QAASC,GACT,eAAgB3B,EAChB,aAAcuB,GACd,aAAcO,GACd,iBAAkBI,GAClB,eAAgBC,EACpB,EDlQO,IAAME,EAAN,KAAkB,CAMrB,YAAYC,EAAaC,EAAoBC,EAAkBC,EAAmB,CAC9E,KAAK,KAAOH,EACZ,KAAK,YAAcC,EACnB,KAAK,aAAeC,EACpB,KAAK,WAAaC,CACtB,CAEA,cAAcC,EAAcC,EAAU,IAAM,CAC5C,EAAG,CACC,OAAO,IAAI,QAAQ,CAACC,EAASC,IAAW,CACpC,IAAMC,EAAM,iDAENC,EAAO,CACT,KAAML,CACV,EAEMM,EAAc,CAChB,QAAS,CACL,qBAAsB,KAC1B,CACJ,EAGIN,EAAQ,QAAUA,EAAQ,OAAO,KAAK,IAAM,KAC5CM,EAAO,QAAQ,cAAmB,UAAUN,EAAQ,UAGxD,GAAAO,QAAM,OAAO,EAAE,KAAKH,EAAKC,EAAMC,CAAM,EAChC,KAAME,GAAa,CAEhB,IAAMC,EAASD,EAAS,KAAK,KAE7B,KAAK,KAAOC,EAAO,IAEnBP,EAAQO,CAAM,EAEdR,EAAGQ,CAAM,CACb,CAAC,EACA,MAAOC,GAAU,CAEd,QAAQ,IAAIA,EAAM,SAAS,IAAI,EAE/BP,EAAOO,EAAM,SAAS,IAAI,EAE1BT,EAAGS,EAAM,SAAS,IAAI,CAC1B,CAAC,CACT,CAAC,CACL,CAGA,SAASC,EAAW,cAAef,EAAM,KAAK,KAAM,CAChD,GAAIe,IAAa,WAAa,GAAAC,SAASD,CAAQ,EAC3C,MAAM,IAAI,MAAM,mBAAmB,EAGvC,GAAI,OAAO,QAAW,YAClB,MAAM,IAAI,MAAM,2DAA2D,EAE3EE,GAAaF,EAAU,kBAAmBf,CAAG,CAErD,CAGA,OAAOG,EAAmBH,EAAM,KAAK,KAAMK,EAAU,IAAM,CAC3D,EAAG,CACC,OAAO,IAAI,QAASC,GAAY,CAC5B,GAAI,OAAO,QAAW,YAClB,MAAM,IAAI,MAAM,yDAAyD,EAEzE,KAAK,WAAaH,EAClB,KAAK,UAAUH,EAAK,SAAUkB,EAAqB,CAC/CZ,EAAQY,CAAc,EACtBb,EAAGa,CAAc,CACrB,CAAC,CAET,CAAC,CACL,CAGA,UAAUC,EAAmBD,EAAqB,CAE1B,SAAS,YAAY,CAAE,KAAME,GAAO,KAAKD,CAAS,CAAE,CAAC,EAC7D,QAAQ,KAAMnB,GAAa,CAEnC,KAAK,YAAcA,EAAI,SACvB,KAAK,aAAeA,EACpB,KAAK,WAAW,EAAGkB,CAAc,CACrC,EAAG,SAAUG,EAAgB,CAEzB,QAAQ,MAAMA,CAAM,CACxB,CAAC,CACL,CAGA,WAAWC,EAAoBJ,EAAqB,CAChD,KAAK,aAAa,QAAQI,CAAU,EAAE,KAAMC,GAAc,CAEtD,IAAMC,EAAS,SAAS,cAAc,QAAQ,EAExCC,EAAWC,GAAgB,EAAIH,EAAK,YAAY,CAAC,MAAO,OAAO,OAAO,MAAQA,EAAK,YAAY,CAAC,MAAO,CAAG,CAAC,EAAE,KAAK,CAAC,EAAIA,EAAK,YAAY,CAAC,MAAO,KAAK,IAAI,OAAO,kBAAoB,EAAG,CAAC,CAAC,CAAC,EAGhM,SAAS,eAAe,KAAK,UAAU,EAAE,UAAY,GAC/B,SAAS,eAAe,KAAK,UAAU,EAE/C,YAAYC,CAAM,EAGhC,IAAMG,EAAUH,EAAO,WAAW,IAAI,EACtCA,EAAO,OAASC,EAAS,OACzBD,EAAO,MAAQC,EAAS,MAGxB,IAAMG,EAAgB,CAClB,cAAeD,EACf,SAAUF,CACd,EACmBF,EAAK,OAAOK,CAAa,EACjC,QAAQ,KAAK,UAAY,CAEhCV,EAAe,EAAI,CACvB,CAAC,CACL,CAAC,CACL,CACJ,EAGA,SAASD,GAAaY,EAAkBC,EAAqBC,EAAgB,CACzE,IAAMC,EAAOC,GAAaF,EAAQD,CAAW,EAC7C,GAAAI,QAAU,OAAOF,EAAMH,CAAQ,CACnC,CAGA,SAASI,GAAaE,EAAoBL,EAAqB,CAC3DA,EAAcA,GAAe,GAC7B,IAAMM,EAAY,KACZC,EAAiBjB,GAAO,KAAKe,CAAU,EAEvCG,EAAcD,EAAe,OAC7BE,EAAc,KAAK,KAAKD,EAAcF,CAAS,EAC/CI,EAAa,IAAI,MAAMD,CAAW,EAExC,QAASE,EAAa,EAAGA,EAAaF,EAAa,EAAEE,EAAY,CAC7D,IAAMC,EAAQD,EAAaL,EACrBO,EAAM,KAAK,IAAID,EAAQN,EAAWE,CAAW,EAE7CM,EAAQ,IAAI,MAAMD,EAAMD,CAAK,EACnC,QAASG,EAASH,EAAOI,EAAI,EAAGD,EAASF,EAAK,EAAEG,EAAG,EAAED,EACjDD,EAAME,CAAC,EAAIT,EAAeQ,CAAM,EAAE,WAAW,CAAC,EAElDL,EAAWC,CAAU,EAAI,IAAI,WAAWG,CAAK,EAEjD,OAAO,IAAI,KAAKJ,EAAY,CACxB,KAAMV,CACV,CAAC,CACL,CAKA,SAASJ,IAAkB,CACvB,IAAIqB,EAAK,UAAU,UACnB,MAAI,8TAA2T,KAAKA,CAAE,GAAK,0kDAA0kD,KAAKA,EAAG,OAAO,EAAG,CAAC,CAAC,EAK76D,CAKA,IAAOC,GAAQ,IAAIjD,EAEf,OAAO,QAAW,cAElB,OAAO,QAAU,IAAIA,GAIzB,WAAW,YAAc,IAAIA",
+ "sourcesContent": ["'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n", "'use strict';\n\nvar bind = require('./helpers/bind');\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n// eslint-disable-next-line func-names\nvar kindOf = (function(cache) {\n // eslint-disable-next-line func-names\n return function(thing) {\n var str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n };\n})(Object.create(null));\n\nfunction kindOfTest(type) {\n type = type.toLowerCase();\n return function isKindOf(thing) {\n return kindOf(thing) === type;\n };\n}\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return Array.isArray(val);\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nvar isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nvar isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nvar isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nvar isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nvar isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} thing The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(thing) {\n var pattern = '[object FormData]';\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) ||\n toString.call(thing) === pattern ||\n (isFunction(thing.toString) && thing.toString() === pattern)\n );\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n * @function\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nvar isURLSearchParams = kindOfTest('URLSearchParams');\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n */\n\nfunction inherits(constructor, superConstructor, props, descriptors) {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function} [filter]\n * @returns {Object}\n */\n\nfunction toFlatObject(sourceObj, destObj, filter) {\n var props;\n var i;\n var prop;\n var merged = {};\n\n destObj = destObj || {};\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if (!merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = Object.getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/*\n * determines whether a string ends with the characters of a specified string\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n * @returns {boolean}\n */\nfunction endsWith(str, searchString, position) {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n var lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object\n * @param {*} [thing]\n * @returns {Array}\n */\nfunction toArray(thing) {\n if (!thing) return null;\n var i = thing.length;\n if (isUndefined(i)) return null;\n var arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n// eslint-disable-next-line func-names\nvar isTypedArray = (function(TypedArray) {\n // eslint-disable-next-line func-names\n return function(thing) {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && Object.getPrototypeOf(Uint8Array));\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM,\n inherits: inherits,\n toFlatObject: toFlatObject,\n kindOf: kindOf,\n kindOfTest: kindOfTest,\n endsWith: endsWith,\n toArray: toArray,\n isTypedArray: isTypedArray,\n isFileList: isFileList\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n", "'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n", "'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n response && (this.response = response);\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n }\n});\n\nvar prototype = AxiosError.prototype;\nvar descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED'\n// eslint-disable-next-line func-names\n].forEach(function(code) {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = function(error, code, config, request, response, customProps) {\n var axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nmodule.exports = AxiosError;\n", "'use strict';\n\nmodule.exports = {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n", "'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Convert a data object to FormData\n * @param {Object} obj\n * @param {?Object} [formData]\n * @returns {Object}\n **/\n\nfunction toFormData(obj, formData) {\n // eslint-disable-next-line no-param-reassign\n formData = formData || new FormData();\n\n var stack = [];\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n function build(data, parentKey) {\n if (utils.isPlainObject(data) || utils.isArray(data)) {\n if (stack.indexOf(data) !== -1) {\n throw Error('Circular reference detected in ' + parentKey);\n }\n\n stack.push(data);\n\n utils.forEach(data, function each(value, key) {\n if (utils.isUndefined(value)) return;\n var fullKey = parentKey ? parentKey + '.' + key : key;\n var arr;\n\n if (value && !parentKey && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (utils.endsWith(key, '[]') && (arr = utils.toArray(value))) {\n // eslint-disable-next-line func-names\n arr.forEach(function(el) {\n !utils.isUndefined(el) && formData.append(fullKey, convertValue(el));\n });\n return;\n }\n }\n\n build(value, fullKey);\n });\n\n stack.pop();\n } else {\n formData.append(parentKey, convertValue(data));\n }\n }\n\n build(obj);\n\n return formData;\n}\n\nmodule.exports = toFormData;\n", "'use strict';\n\nvar AxiosError = require('./AxiosError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n", "'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n};\n", "'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n", "'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n", "'use strict';\n\nvar AxiosError = require('../core/AxiosError');\nvar utils = require('../utils');\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction CanceledError(message) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nmodule.exports = CanceledError;\n", "'use strict';\n\nmodule.exports = function parseProtocol(url) {\n var match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n};\n", "'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar transitionalDefaults = require('../defaults/transitional');\nvar AxiosError = require('../core/AxiosError');\nvar CanceledError = require('../cancel/CanceledError');\nvar parseProtocol = require('../helpers/parseProtocol');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData) && utils.isStandardBrowserEnv()) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || transitionalDefaults;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new CanceledError() : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n var protocol = parseProtocol(fullPath);\n\n if (protocol && [ 'http', 'https', 'file' ].indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData);\n });\n};\n", "// eslint-disable-next-line strict\nmodule.exports = null;\n", "'use strict';\n\nvar utils = require('../utils');\nvar normalizeHeaderName = require('../helpers/normalizeHeaderName');\nvar AxiosError = require('../core/AxiosError');\nvar transitionalDefaults = require('./transitional');\nvar toFormData = require('../helpers/toFormData');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('../adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('../adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n\n var isObjectPayload = utils.isObject(data);\n var contentType = headers && headers['Content-Type'];\n\n var isFileList;\n\n if ((isFileList = utils.isFileList(data)) || (isObjectPayload && contentType === 'multipart/form-data')) {\n var _FormData = this.env && this.env.FormData;\n return toFormData(isFileList ? {'files[]': data} : data, _FormData && new _FormData());\n } else if (isObjectPayload || contentType === 'application/json') {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: require('./env/FormData')\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n", "'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n", "'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n", "'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar CanceledError = require('../cancel/CanceledError');\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n", "'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'beforeRedirect': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n};\n", "module.exports = {\n \"version\": \"0.27.2\"\n};", "'use strict';\n\nvar VERSION = require('../env/data').version;\nvar AxiosError = require('../core/AxiosError');\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n", "'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar buildFullPath = require('./buildFullPath');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n var fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url: url,\n data: data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nmodule.exports = Axios;\n", "'use strict';\n\nvar CanceledError = require('./CanceledError');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n", "'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n", "'use strict';\n\nvar utils = require('./../utils');\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n};\n", "'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = require('./cancel/CanceledError');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\naxios.toFormData = require('./helpers/toFormData');\n\n// Expose AxiosError class\naxios.AxiosError = require('../lib/core/AxiosError');\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n", "module.exports = require('./lib/axios');", ";(function(root) {\n 'use strict';\n\n function isBase64(v, opts) {\n if (v instanceof Boolean || typeof v === 'boolean') {\n return false\n }\n\n if (!(opts instanceof Object)) {\n opts = {}\n }\n\n if (opts.allowEmpty === false && v === '') {\n return false\n }\n\n var regex = '(?:[A-Za-z0-9+\\\\/]{4})*(?:[A-Za-z0-9+\\\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?'\n var mimeRegex = '(data:\\\\w+\\\\/[a-zA-Z\\\\+\\\\-\\\\.]+;base64,)'\n\n if (opts.mimeRequired === true) {\n regex = mimeRegex + regex\n } else if (opts.allowMime === true) {\n regex = mimeRegex + '?' + regex\n }\n\n if (opts.paddingRequired === false) {\n regex = '(?:[A-Za-z0-9+\\\\/]{4})*(?:[A-Za-z0-9+\\\\/]{2}(==)?|[A-Za-z0-9+\\\\/]{3}=?)?'\n }\n\n return (new RegExp('^' + regex + '$', 'gi')).test(v)\n }\n\n if (typeof exports !== 'undefined') {\n if (typeof module !== 'undefined' && module.exports) {\n exports = module.exports = isBase64\n }\n exports.isBase64 = isBase64\n } else if (typeof define === 'function' && define.amd) {\n define([], function() {\n return isBase64\n })\n } else {\n root.isBase64 = isBase64\n }\n})(this);\n", "/*\n* FileSaver.js\n* A saveAs() FileSaver implementation.\n*\n* By Eli Grey, http://eligrey.com\n*\n* License : https://github.com/eligrey/FileSaver.js/blob/master/LICENSE.md (MIT)\n* source : http://purl.eligrey.com/github/FileSaver.js\n*/\n\n// The one and only way of getting global scope in all environments\n// https://stackoverflow.com/q/3277182/1008999\nvar _global = typeof window === 'object' && window.window === window\n ? window : typeof self === 'object' && self.self === self\n ? self : typeof global === 'object' && global.global === global\n ? global\n : this\n\nfunction bom (blob, opts) {\n if (typeof opts === 'undefined') opts = { autoBom: false }\n else if (typeof opts !== 'object') {\n console.warn('Deprecated: Expected third argument to be a object')\n opts = { autoBom: !opts }\n }\n\n // prepend BOM for UTF-8 XML and text/* types (including HTML)\n // note: your browser will automatically convert UTF-16 U+FEFF to EF BB BF\n if (opts.autoBom && /^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(blob.type)) {\n return new Blob([String.fromCharCode(0xFEFF), blob], { type: blob.type })\n }\n return blob\n}\n\nfunction download (url, name, opts) {\n var xhr = new XMLHttpRequest()\n xhr.open('GET', url)\n xhr.responseType = 'blob'\n xhr.onload = function () {\n saveAs(xhr.response, name, opts)\n }\n xhr.onerror = function () {\n console.error('could not download file')\n }\n xhr.send()\n}\n\nfunction corsEnabled (url) {\n var xhr = new XMLHttpRequest()\n // use sync to avoid popup blocker\n xhr.open('HEAD', url, false)\n try {\n xhr.send()\n } catch (e) {}\n return xhr.status >= 200 && xhr.status <= 299\n}\n\n// `a.click()` doesn't work for all browsers (#465)\nfunction click (node) {\n try {\n node.dispatchEvent(new MouseEvent('click'))\n } catch (e) {\n var evt = document.createEvent('MouseEvents')\n evt.initMouseEvent('click', true, true, window, 0, 0, 0, 80,\n 20, false, false, false, false, 0, null)\n node.dispatchEvent(evt)\n }\n}\n\n// Detect WebView inside a native macOS app by ruling out all browsers\n// We just need to check for 'Safari' because all other browsers (besides Firefox) include that too\n// https://www.whatismybrowser.com/guides/the-latest-user-agent/macos\nvar isMacOSWebView = _global.navigator && /Macintosh/.test(navigator.userAgent) && /AppleWebKit/.test(navigator.userAgent) && !/Safari/.test(navigator.userAgent)\n\nvar saveAs = _global.saveAs || (\n // probably in some web worker\n (typeof window !== 'object' || window !== _global)\n ? function saveAs () { /* noop */ }\n\n // Use download attribute first if possible (#193 Lumia mobile) unless this is a macOS WebView\n : ('download' in HTMLAnchorElement.prototype && !isMacOSWebView)\n ? function saveAs (blob, name, opts) {\n var URL = _global.URL || _global.webkitURL\n var a = document.createElement('a')\n name = name || blob.name || 'download'\n\n a.download = name\n a.rel = 'noopener' // tabnabbing\n\n // TODO: detect chrome extensions & packaged apps\n // a.target = '_blank'\n\n if (typeof blob === 'string') {\n // Support regular links\n a.href = blob\n if (a.origin !== location.origin) {\n corsEnabled(a.href)\n ? download(blob, name, opts)\n : click(a, a.target = '_blank')\n } else {\n click(a)\n }\n } else {\n // Support blobs\n a.href = URL.createObjectURL(blob)\n setTimeout(function () { URL.revokeObjectURL(a.href) }, 4E4) // 40s\n setTimeout(function () { click(a) }, 0)\n }\n }\n\n // Use msSaveOrOpenBlob as a second approach\n : 'msSaveOrOpenBlob' in navigator\n ? function saveAs (blob, name, opts) {\n name = name || blob.name || 'download'\n\n if (typeof blob === 'string') {\n if (corsEnabled(blob)) {\n download(blob, name, opts)\n } else {\n var a = document.createElement('a')\n a.href = blob\n a.target = '_blank'\n setTimeout(function () { click(a) })\n }\n } else {\n navigator.msSaveOrOpenBlob(bom(blob, opts), name)\n }\n }\n\n // Fallback to using FileReader and a popup\n : function saveAs (blob, name, opts, popup) {\n // Open a popup immediately do go around popup blocker\n // Mostly only available on user interaction and the fileReader is async so...\n popup = popup || open('', '_blank')\n if (popup) {\n popup.document.title =\n popup.document.body.innerText = 'downloading...'\n }\n\n if (typeof blob === 'string') return download(blob, name, opts)\n\n var force = blob.type === 'application/octet-stream'\n var isSafari = /constructor/i.test(_global.HTMLElement) || _global.safari\n var isChromeIOS = /CriOS\\/[\\d]+/.test(navigator.userAgent)\n\n if ((isChromeIOS || (force && isSafari) || isMacOSWebView) && typeof FileReader !== 'undefined') {\n // Safari doesn't allow downloading of blob URLs\n var reader = new FileReader()\n reader.onloadend = function () {\n var url = reader.result\n url = isChromeIOS ? url : url.replace(/^data:[^;]*;/, 'data:attachment/file;')\n if (popup) popup.location.href = url\n else location = url\n popup = null // reverse-tabnabbing #460\n }\n reader.readAsDataURL(blob)\n } else {\n var URL = _global.URL || _global.webkitURL\n var url = URL.createObjectURL(blob)\n if (popup) popup.location = url\n else location.href = url\n popup = null // reverse-tabnabbing #460\n setTimeout(function () { URL.revokeObjectURL(url) }, 4E4) // 40s\n }\n }\n)\n\n_global.saveAs = saveAs.saveAs = saveAs\n\nif (typeof module !== 'undefined') {\n module.exports = saveAs;\n}\n", "import axios from \"axios\";\nimport isBase64 from \"is-base64\";\nimport FileSaver from \"file-saver\";\nimport { Base64 } from \"js-base64\";\n\n// import {getDocument, GlobalWorkerOptions} from 'pdfjs-dist';\n//\n// (async () => {\n// GlobalWorkerOptions.workerSrc = await import(\n// // @ts-ignore\n// \"pdfjs-dist/build/pdf.worker.entry\"\n// );\n// })();\n\nexport class EasyInvoice {\n private _elementId: string;\n private _renderedPdf: any;\n private _totalPages: number;\n private _pdf: string;\n\n constructor(\n pdf: string,\n totalPages: number,\n renderedPdf: any,\n elementId: string,\n ) {\n this._pdf = pdf;\n this._totalPages = totalPages;\n this._renderedPdf = renderedPdf;\n this._elementId = elementId;\n }\n\n createInvoice(options: any, cb: any = () => {}) {\n return new Promise((resolve, reject) => {\n const url = \"https://api.easyinvoice.cloud/v2/free/invoices\";\n\n const data = {\n data: options,\n };\n\n const config: any = {\n headers: {\n \"easyinvoice-source\": \"npm\",\n },\n };\n\n // Check if 'apiKey' exists in options and is not empty, then add the authorization header\n if (options.apiKey && options.apiKey.trim() !== \"\") {\n config.headers[\"Authorization\"] = `Bearer ${options.apiKey}`;\n }\n\n axios\n .create()\n .post(url, data, config)\n .then((response) => {\n /* istanbul ignore next */\n const result = response.data.data;\n /* istanbul ignore next */\n this._pdf = result.pdf;\n /* istanbul ignore next */\n resolve(result);\n /* istanbul ignore next */\n cb(result);\n })\n .catch((error) => {\n /* istanbul ignore next */\n reject(error.response.data);\n /* istanbul ignore next */\n cb(error.response.data);\n });\n });\n }\n\n /* istanbul ignore next */\n download(filename = \"invoice.pdf\", pdf = this._pdf) {\n if (filename === undefined || isBase64(filename)) {\n throw new Error(\"Invalid filename.\");\n }\n\n if (typeof window === \"undefined\") {\n throw new Error(\n \"Easy Invoice download() is only supported in the browser.\",\n );\n } else {\n downloadFile(filename, \"application/pdf\", pdf);\n }\n }\n\n /* istanbul ignore next */\n render(elementId: string, pdf = this._pdf, cb: any = () => {}) {\n return new Promise((resolve) => {\n if (typeof window === \"undefined\") {\n throw new Error(\n \"Easy Invoice render() is only supported in the browser.\",\n );\n } else {\n this._elementId = elementId;\n this.renderPdf(pdf, function (renderFinished: any) {\n resolve(renderFinished);\n cb(renderFinished);\n });\n }\n });\n }\n\n /* istanbul ignore next */\n renderPdf(pdfBase64: string, renderFinished: any) {\n // @ts-ignore\n const loadingTask = pdfjsLib.getDocument({ data: Base64.atob(pdfBase64) });\n loadingTask.promise.then(\n (pdf: any) => {\n // console.log('PDF loaded');\n this._totalPages = pdf.numPages;\n this._renderedPdf = pdf;\n this.renderPage(1, renderFinished);\n },\n function (reason: string) {\n // PDF loading error\n console.error(reason);\n },\n );\n }\n\n /* istanbul ignore next */\n renderPage(pageNumber: number, renderFinished: any) {\n this._renderedPdf.getPage(pageNumber).then((page: any) => {\n // console.log('Page loaded');\n const canvas = document.createElement(\"canvas\");\n\n const viewport = isMobileBrowser()\n ? page.getViewport({\n scale: window.screen.width / page.getViewport({ scale: 1.0 }).width,\n })\n : page.getViewport({\n scale: Math.max(window.devicePixelRatio || 1, 1),\n });\n\n // @ts-ignore\n document.getElementById(this._elementId).innerHTML = \"\";\n const canvasWrapper = document.getElementById(this._elementId);\n // @ts-ignore\n canvasWrapper.appendChild(canvas);\n\n // Prepare canvas using PDF page dimensions\n const context = canvas.getContext(\"2d\");\n canvas.height = viewport.height;\n canvas.width = viewport.width;\n\n // Render PDF page into canvas context\n const renderContext = {\n canvasContext: context,\n viewport: viewport,\n };\n const renderTask = page.render(renderContext);\n renderTask.promise.then(function () {\n // console.log('Page rendered');\n renderFinished(true);\n });\n });\n }\n}\n\n/* istanbul ignore next */\nfunction downloadFile(fileName: string, contentType: string, base64: string) {\n const blob = base64toBlob(base64, contentType);\n FileSaver.saveAs(blob, fileName);\n}\n\n/* istanbul ignore next */\nfunction base64toBlob(base64Data: string, contentType: string) {\n contentType = contentType || \"\";\n const sliceSize = 1024;\n const byteCharacters = Base64.atob(base64Data);\n // var byteCharacters = decodeURIComponent(escape(Base64.atob(base64Data)))\n const bytesLength = byteCharacters.length;\n const slicesCount = Math.ceil(bytesLength / sliceSize);\n const byteArrays = new Array(slicesCount);\n\n for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {\n const begin = sliceIndex * sliceSize;\n const end = Math.min(begin + sliceSize, bytesLength);\n\n const bytes = new Array(end - begin);\n for (let offset = begin, i = 0; offset < end; ++i, ++offset) {\n bytes[i] = byteCharacters[offset].charCodeAt(0);\n }\n byteArrays[sliceIndex] = new Uint8Array(bytes);\n }\n return new Blob(byteArrays, {\n type: contentType,\n });\n}\n\n/* eslint-disable */\n\n/* istanbul ignore next */\nfunction isMobileBrowser() {\n var ua = navigator.userAgent;\n if (\n /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(\n ua,\n ) ||\n /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|sk\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-/i.test(\n ua.substr(0, 4),\n )\n ) {\n return true;\n } else {\n return false;\n }\n}\n\n/* eslint-enable */\n\n// @ts-ignore\nexport default new EasyInvoice();\n\nif (typeof window === \"undefined\") {\n // @ts-ignore\n module.exports = new EasyInvoice();\n}\n\n// @ts-ignore\nglobalThis.easyinvoice = new EasyInvoice();\n", "/**\n * base64.ts\n *\n * Licensed under the BSD 3-Clause License.\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * References:\n * http://en.wikipedia.org/wiki/Base64\n *\n * @author Dan Kogai (https://github.com/dankogai)\n */\nconst version = '3.7.5';\n/**\n * @deprecated use lowercase `version`.\n */\nconst VERSION = version;\nconst _hasatob = typeof atob === 'function';\nconst _hasbtoa = typeof btoa === 'function';\nconst _hasBuffer = typeof Buffer === 'function';\nconst _TD = typeof TextDecoder === 'function' ? new TextDecoder() : undefined;\nconst _TE = typeof TextEncoder === 'function' ? new TextEncoder() : undefined;\nconst b64ch = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';\nconst b64chs = Array.prototype.slice.call(b64ch);\nconst b64tab = ((a) => {\n let tab = {};\n a.forEach((c, i) => tab[c] = i);\n return tab;\n})(b64chs);\nconst b64re = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/;\nconst _fromCC = String.fromCharCode.bind(String);\nconst _U8Afrom = typeof Uint8Array.from === 'function'\n ? Uint8Array.from.bind(Uint8Array)\n : (it) => new Uint8Array(Array.prototype.slice.call(it, 0));\nconst _mkUriSafe = (src) => src\n .replace(/=/g, '').replace(/[+\\/]/g, (m0) => m0 == '+' ? '-' : '_');\nconst _tidyB64 = (s) => s.replace(/[^A-Za-z0-9\\+\\/]/g, '');\n/**\n * polyfill version of `btoa`\n */\nconst btoaPolyfill = (bin) => {\n // console.log('polyfilled');\n let u32, c0, c1, c2, asc = '';\n const pad = bin.length % 3;\n for (let i = 0; i < bin.length;) {\n if ((c0 = bin.charCodeAt(i++)) > 255 ||\n (c1 = bin.charCodeAt(i++)) > 255 ||\n (c2 = bin.charCodeAt(i++)) > 255)\n throw new TypeError('invalid character found');\n u32 = (c0 << 16) | (c1 << 8) | c2;\n asc += b64chs[u32 >> 18 & 63]\n + b64chs[u32 >> 12 & 63]\n + b64chs[u32 >> 6 & 63]\n + b64chs[u32 & 63];\n }\n return pad ? asc.slice(0, pad - 3) + \"===\".substring(pad) : asc;\n};\n/**\n * does what `window.btoa` of web browsers do.\n * @param {String} bin binary string\n * @returns {string} Base64-encoded string\n */\nconst _btoa = _hasbtoa ? (bin) => btoa(bin)\n : _hasBuffer ? (bin) => Buffer.from(bin, 'binary').toString('base64')\n : btoaPolyfill;\nconst _fromUint8Array = _hasBuffer\n ? (u8a) => Buffer.from(u8a).toString('base64')\n : (u8a) => {\n // cf. https://stackoverflow.com/questions/12710001/how-to-convert-uint8-array-to-base64-encoded-string/12713326#12713326\n const maxargs = 0x1000;\n let strs = [];\n for (let i = 0, l = u8a.length; i < l; i += maxargs) {\n strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs)));\n }\n return _btoa(strs.join(''));\n };\n/**\n * converts a Uint8Array to a Base64 string.\n * @param {boolean} [urlsafe] URL-and-filename-safe a la RFC4648 \u00A75\n * @returns {string} Base64 string\n */\nconst fromUint8Array = (u8a, urlsafe = false) => urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a);\n// This trick is found broken https://github.com/dankogai/js-base64/issues/130\n// const utob = (src: string) => unescape(encodeURIComponent(src));\n// reverting good old fationed regexp\nconst cb_utob = (c) => {\n if (c.length < 2) {\n var cc = c.charCodeAt(0);\n return cc < 0x80 ? c\n : cc < 0x800 ? (_fromCC(0xc0 | (cc >>> 6))\n + _fromCC(0x80 | (cc & 0x3f)))\n : (_fromCC(0xe0 | ((cc >>> 12) & 0x0f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n else {\n var cc = 0x10000\n + (c.charCodeAt(0) - 0xD800) * 0x400\n + (c.charCodeAt(1) - 0xDC00);\n return (_fromCC(0xf0 | ((cc >>> 18) & 0x07))\n + _fromCC(0x80 | ((cc >>> 12) & 0x3f))\n + _fromCC(0x80 | ((cc >>> 6) & 0x3f))\n + _fromCC(0x80 | (cc & 0x3f)));\n }\n};\nconst re_utob = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g;\n/**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-8 string\n * @returns {string} UTF-16 string\n */\nconst utob = (u) => u.replace(re_utob, cb_utob);\n//\nconst _encode = _hasBuffer\n ? (s) => Buffer.from(s, 'utf8').toString('base64')\n : _TE\n ? (s) => _fromUint8Array(_TE.encode(s))\n : (s) => _btoa(utob(s));\n/**\n * converts a UTF-8-encoded string to a Base64 string.\n * @param {boolean} [urlsafe] if `true` make the result URL-safe\n * @returns {string} Base64 string\n */\nconst encode = (src, urlsafe = false) => urlsafe\n ? _mkUriSafe(_encode(src))\n : _encode(src);\n/**\n * converts a UTF-8-encoded string to URL-safe Base64 RFC4648 \u00A75.\n * @returns {string} Base64 string\n */\nconst encodeURI = (src) => encode(src, true);\n// This trick is found broken https://github.com/dankogai/js-base64/issues/130\n// const btou = (src: string) => decodeURIComponent(escape(src));\n// reverting good old fationed regexp\nconst re_btou = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g;\nconst cb_btou = (cccc) => {\n switch (cccc.length) {\n case 4:\n var cp = ((0x07 & cccc.charCodeAt(0)) << 18)\n | ((0x3f & cccc.charCodeAt(1)) << 12)\n | ((0x3f & cccc.charCodeAt(2)) << 6)\n | (0x3f & cccc.charCodeAt(3)), offset = cp - 0x10000;\n return (_fromCC((offset >>> 10) + 0xD800)\n + _fromCC((offset & 0x3FF) + 0xDC00));\n case 3:\n return _fromCC(((0x0f & cccc.charCodeAt(0)) << 12)\n | ((0x3f & cccc.charCodeAt(1)) << 6)\n | (0x3f & cccc.charCodeAt(2)));\n default:\n return _fromCC(((0x1f & cccc.charCodeAt(0)) << 6)\n | (0x3f & cccc.charCodeAt(1)));\n }\n};\n/**\n * @deprecated should have been internal use only.\n * @param {string} src UTF-16 string\n * @returns {string} UTF-8 string\n */\nconst btou = (b) => b.replace(re_btou, cb_btou);\n/**\n * polyfill version of `atob`\n */\nconst atobPolyfill = (asc) => {\n // console.log('polyfilled');\n asc = asc.replace(/\\s+/g, '');\n if (!b64re.test(asc))\n throw new TypeError('malformed base64.');\n asc += '=='.slice(2 - (asc.length & 3));\n let u24, bin = '', r1, r2;\n for (let i = 0; i < asc.length;) {\n u24 = b64tab[asc.charAt(i++)] << 18\n | b64tab[asc.charAt(i++)] << 12\n | (r1 = b64tab[asc.charAt(i++)]) << 6\n | (r2 = b64tab[asc.charAt(i++)]);\n bin += r1 === 64 ? _fromCC(u24 >> 16 & 255)\n : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255)\n : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255);\n }\n return bin;\n};\n/**\n * does what `window.atob` of web browsers do.\n * @param {String} asc Base64-encoded string\n * @returns {string} binary string\n */\nconst _atob = _hasatob ? (asc) => atob(_tidyB64(asc))\n : _hasBuffer ? (asc) => Buffer.from(asc, 'base64').toString('binary')\n : atobPolyfill;\n//\nconst _toUint8Array = _hasBuffer\n ? (a) => _U8Afrom(Buffer.from(a, 'base64'))\n : (a) => _U8Afrom(_atob(a).split('').map(c => c.charCodeAt(0)));\n/**\n * converts a Base64 string to a Uint8Array.\n */\nconst toUint8Array = (a) => _toUint8Array(_unURI(a));\n//\nconst _decode = _hasBuffer\n ? (a) => Buffer.from(a, 'base64').toString('utf8')\n : _TD\n ? (a) => _TD.decode(_toUint8Array(a))\n : (a) => btou(_atob(a));\nconst _unURI = (a) => _tidyB64(a.replace(/[-_]/g, (m0) => m0 == '-' ? '+' : '/'));\n/**\n * converts a Base64 string to a UTF-8 string.\n * @param {String} src Base64 string. Both normal and URL-safe are supported\n * @returns {string} UTF-8 string\n */\nconst decode = (src) => _decode(_unURI(src));\n/**\n * check if a value is a valid Base64 string\n * @param {String} src a value to check\n */\nconst isValid = (src) => {\n if (typeof src !== 'string')\n return false;\n const s = src.replace(/\\s+/g, '').replace(/={0,2}$/, '');\n return !/[^\\s0-9a-zA-Z\\+/]/.test(s) || !/[^\\s0-9a-zA-Z\\-_]/.test(s);\n};\n//\nconst _noEnum = (v) => {\n return {\n value: v, enumerable: false, writable: true, configurable: true\n };\n};\n/**\n * extend String.prototype with relevant methods\n */\nconst extendString = function () {\n const _add = (name, body) => Object.defineProperty(String.prototype, name, _noEnum(body));\n _add('fromBase64', function () { return decode(this); });\n _add('toBase64', function (urlsafe) { return encode(this, urlsafe); });\n _add('toBase64URI', function () { return encode(this, true); });\n _add('toBase64URL', function () { return encode(this, true); });\n _add('toUint8Array', function () { return toUint8Array(this); });\n};\n/**\n * extend Uint8Array.prototype with relevant methods\n */\nconst extendUint8Array = function () {\n const _add = (name, body) => Object.defineProperty(Uint8Array.prototype, name, _noEnum(body));\n _add('toBase64', function (urlsafe) { return fromUint8Array(this, urlsafe); });\n _add('toBase64URI', function () { return fromUint8Array(this, true); });\n _add('toBase64URL', function () { return fromUint8Array(this, true); });\n};\n/**\n * extend Builtin prototypes with relevant methods\n */\nconst extendBuiltins = () => {\n extendString();\n extendUint8Array();\n};\nconst gBase64 = {\n version: version,\n VERSION: VERSION,\n atob: _atob,\n atobPolyfill: atobPolyfill,\n btoa: _btoa,\n btoaPolyfill: btoaPolyfill,\n fromBase64: decode,\n toBase64: encode,\n encode: encode,\n encodeURI: encodeURI,\n encodeURL: encodeURI,\n utob: utob,\n btou: btou,\n decode: decode,\n isValid: isValid,\n fromUint8Array: fromUint8Array,\n toUint8Array: toUint8Array,\n extendString: extendString,\n extendUint8Array: extendUint8Array,\n extendBuiltins: extendBuiltins,\n};\n// makecjs:CUT //\nexport { version };\nexport { VERSION };\nexport { _atob as atob };\nexport { atobPolyfill };\nexport { _btoa as btoa };\nexport { btoaPolyfill };\nexport { decode as fromBase64 };\nexport { encode as toBase64 };\nexport { utob };\nexport { encode };\nexport { encodeURI };\nexport { encodeURI as encodeURL };\nexport { btou };\nexport { decode };\nexport { isValid };\nexport { fromUint8Array };\nexport { toUint8Array };\nexport { extendString };\nexport { extendUint8Array };\nexport { extendBuiltins };\n// and finally,\nexport { gBase64 as Base64 };\n"],
+ "mappings": "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",
"names": ["require_bind", "__commonJSMin", "exports", "module", "fn", "thisArg", "args", "i", "require_utils", "__commonJSMin", "exports", "module", "bind", "toString", "kindOf", "cache", "thing", "str", "kindOfTest", "type", "isArray", "val", "isUndefined", "isBuffer", "isArrayBuffer", "isArrayBufferView", "result", "isString", "isNumber", "isObject", "isPlainObject", "prototype", "isDate", "isFile", "isBlob", "isFileList", "isFunction", "isStream", "isFormData", "pattern", "isURLSearchParams", "trim", "isStandardBrowserEnv", "forEach", "obj", "fn", "i", "l", "key", "merge", "assignValue", "extend", "a", "b", "thisArg", "stripBOM", "content", "inherits", "constructor", "superConstructor", "props", "descriptors", "toFlatObject", "sourceObj", "destObj", "filter", "prop", "merged", "endsWith", "searchString", "position", "lastIndex", "toArray", "arr", "isTypedArray", "TypedArray", "require_buildURL", "__commonJSMin", "exports", "module", "utils", "encode", "val", "url", "params", "paramsSerializer", "serializedParams", "parts", "key", "v", "hashmarkIndex", "require_InterceptorManager", "__commonJSMin", "exports", "module", "utils", "InterceptorManager", "fulfilled", "rejected", "options", "id", "fn", "h", "require_normalizeHeaderName", "__commonJSMin", "exports", "module", "utils", "headers", "normalizedName", "value", "name", "require_AxiosError", "__commonJSMin", "exports", "module", "utils", "AxiosError", "message", "code", "config", "request", "response", "prototype", "descriptors", "error", "customProps", "axiosError", "obj", "require_transitional", "__commonJSMin", "exports", "module", "require_toFormData", "__commonJSMin", "exports", "module", "utils", "toFormData", "obj", "formData", "stack", "convertValue", "value", "build", "data", "parentKey", "key", "fullKey", "arr", "el", "require_settle", "__commonJSMin", "exports", "module", "AxiosError", "resolve", "reject", "response", "validateStatus", "require_cookies", "__commonJSMin", "exports", "module", "utils", "name", "value", "expires", "path", "domain", "secure", "cookie", "match", "require_isAbsoluteURL", "__commonJSMin", "exports", "module", "url", "require_combineURLs", "__commonJSMin", "exports", "module", "baseURL", "relativeURL", "require_buildFullPath", "__commonJSMin", "exports", "module", "isAbsoluteURL", "combineURLs", "baseURL", "requestedURL", "require_parseHeaders", "__commonJSMin", "exports", "module", "utils", "ignoreDuplicateOf", "headers", "parsed", "key", "val", "i", "line", "require_isURLSameOrigin", "__commonJSMin", "exports", "module", "utils", "msie", "urlParsingNode", "originURL", "resolveURL", "url", "href", "requestURL", "parsed", "require_CanceledError", "__commonJSMin", "exports", "module", "AxiosError", "utils", "CanceledError", "message", "require_parseProtocol", "__commonJSMin", "exports", "module", "url", "match", "require_xhr", "__commonJSMin", "exports", "module", "utils", "settle", "cookies", "buildURL", "buildFullPath", "parseHeaders", "isURLSameOrigin", "transitionalDefaults", "AxiosError", "CanceledError", "parseProtocol", "config", "resolve", "reject", "requestData", "requestHeaders", "responseType", "onCanceled", "done", "request", "username", "password", "fullPath", "onloadend", "responseHeaders", "responseData", "response", "value", "err", "timeoutErrorMessage", "transitional", "xsrfValue", "val", "key", "cancel", "protocol", "require_null", "__commonJSMin", "exports", "module", "require_defaults", "__commonJSMin", "exports", "module", "utils", "normalizeHeaderName", "AxiosError", "transitionalDefaults", "toFormData", "DEFAULT_CONTENT_TYPE", "setContentTypeIfUnset", "headers", "value", "getDefaultAdapter", "adapter", "stringifySafely", "rawValue", "parser", "encoder", "e", "defaults", "data", "isObjectPayload", "contentType", "isFileList", "_FormData", "transitional", "silentJSONParsing", "forcedJSONParsing", "strictJSONParsing", "status", "method", "require_transformData", "__commonJSMin", "exports", "module", "utils", "defaults", "data", "headers", "fns", "context", "fn", "require_isCancel", "__commonJSMin", "exports", "module", "value", "require_dispatchRequest", "__commonJSMin", "exports", "module", "utils", "transformData", "isCancel", "defaults", "CanceledError", "throwIfCancellationRequested", "config", "method", "adapter", "response", "reason", "require_mergeConfig", "__commonJSMin", "exports", "module", "utils", "config1", "config2", "config", "getMergedValue", "target", "source", "mergeDeepProperties", "prop", "valueFromConfig2", "defaultToConfig2", "mergeDirectKeys", "mergeMap", "merge", "configValue", "require_data", "__commonJSMin", "exports", "module", "require_validator", "__commonJSMin", "exports", "module", "VERSION", "AxiosError", "validators", "type", "i", "thing", "deprecatedWarnings", "validator", "version", "message", "formatMessage", "opt", "desc", "value", "opts", "assertOptions", "options", "schema", "allowUnknown", "keys", "result", "require_Axios", "__commonJSMin", "exports", "module", "utils", "buildURL", "InterceptorManager", "dispatchRequest", "mergeConfig", "buildFullPath", "validator", "validators", "Axios", "instanceConfig", "configOrUrl", "config", "transitional", "requestInterceptorChain", "synchronousRequestInterceptors", "interceptor", "responseInterceptorChain", "promise", "chain", "newConfig", "onFulfilled", "onRejected", "error", "fullPath", "method", "url", "generateHTTPMethod", "isForm", "data", "require_CancelToken", "__commonJSMin", "exports", "module", "CanceledError", "CancelToken", "executor", "resolvePromise", "resolve", "token", "cancel", "i", "l", "onfulfilled", "_resolve", "promise", "message", "listener", "index", "c", "require_spread", "__commonJSMin", "exports", "module", "callback", "arr", "require_isAxiosError", "__commonJSMin", "exports", "module", "utils", "payload", "require_axios", "__commonJSMin", "exports", "module", "utils", "bind", "Axios", "mergeConfig", "defaults", "createInstance", "defaultConfig", "context", "instance", "instanceConfig", "axios", "promises", "require_axios", "__commonJSMin", "exports", "module", "require_is_base64", "__commonJSMin", "exports", "module", "root", "isBase64", "v", "opts", "regex", "mimeRegex", "b", "a", "c", "d", "g", "e", "f", "h", "i", "j", "k", "l", "m", "module", "import_axios", "import_is_base64", "import_file_saver", "version", "VERSION", "_hasatob", "_hasbtoa", "_hasBuffer", "_TD", "_TE", "b64ch", "b64chs", "b64tab", "a", "tab", "c", "b64re", "_fromCC", "_U8Afrom", "it", "_mkUriSafe", "src", "m0", "_tidyB64", "s", "btoaPolyfill", "bin", "u32", "c0", "c1", "c2", "asc", "pad", "i", "_btoa", "_fromUint8Array", "u8a", "strs", "l", "fromUint8Array", "urlsafe", "cb_utob", "cc", "re_utob", "utob", "u", "_encode", "encode", "encodeURI", "re_btou", "cb_btou", "cccc", "cp", "offset", "btou", "b", "atobPolyfill", "u24", "r1", "r2", "_atob", "_toUint8Array", "toUint8Array", "_unURI", "_decode", "decode", "isValid", "_noEnum", "v", "extendString", "_add", "name", "body", "extendUint8Array", "extendBuiltins", "gBase64", "EasyInvoice", "pdf", "totalPages", "renderedPdf", "elementId", "options", "cb", "resolve", "reject", "url", "data", "config", "axios", "response", "result", "error", "filename", "isBase64", "downloadFile", "renderFinished", "pdfBase64", "gBase64", "reason", "pageNumber", "page", "canvas", "viewport", "isMobileBrowser", "context", "renderContext", "fileName", "contentType", "base64", "blob", "base64toBlob", "FileSaver", "base64Data", "sliceSize", "byteCharacters", "bytesLength", "slicesCount", "byteArrays", "sliceIndex", "begin", "end", "bytes", "offset", "i", "ua", "browser_default"]
}
diff --git a/src/browser/browser.ts b/src/browser/browser.ts
index 57a4590..de0c131 100644
--- a/src/browser/browser.ts
+++ b/src/browser/browser.ts
@@ -1,7 +1,7 @@
-import axios from 'axios';
-import isBase64 from 'is-base64';
-import FileSaver from 'file-saver';
-import {Base64} from 'js-base64';
+import axios from "axios";
+import isBase64 from "is-base64";
+import FileSaver from "file-saver";
+import { Base64 } from "js-base64";
// import {getDocument, GlobalWorkerOptions} from 'pdfjs-dist';
//
@@ -13,178 +13,201 @@ import {Base64} from 'js-base64';
// })();
export class EasyInvoice {
- private _elementId: string;
- private _renderedPdf: any;
- private _totalPages: number;
- private _pdf: string;
-
- constructor(pdf: string, totalPages: number, renderedPdf: any, elementId: string) {
- this._pdf = pdf;
- this._totalPages = totalPages;
- this._renderedPdf = renderedPdf;
- this._elementId = elementId;
- }
-
- createInvoice(options: any, cb: any = () => {
- }) {
- return new Promise((resolve, reject) => {
- const url = 'https://api.easyinvoice.cloud/v2/free/invoices';
-
- const data = {
- data: options
- };
-
- const config: any = {
- headers: {
- 'easyinvoice-source': 'npm'
- }
- };
-
- // Check if 'apiKey' exists in options and is not empty, then add the authorization header
- if (options.apiKey && options.apiKey.trim() !== '') {
- config.headers['Authorization'] = `Bearer ${options.apiKey}`;
- }
-
- axios.create().post(url, data, config)
- .then((response) => {
- /* istanbul ignore next */
- const result = response.data.data;
- /* istanbul ignore next */
- this._pdf = result.pdf;
- /* istanbul ignore next */
- resolve(result);
- /* istanbul ignore next */
- cb(result);
- })
- .catch((error) => {
- /* istanbul ignore next */
- console.log(error.response.data);
- /* istanbul ignore next */
- reject(error.response.data);
- /* istanbul ignore next */
- cb(error.response.data);
- });
+ private _elementId: string;
+ private _renderedPdf: any;
+ private _totalPages: number;
+ private _pdf: string;
+
+ constructor(
+ pdf: string,
+ totalPages: number,
+ renderedPdf: any,
+ elementId: string,
+ ) {
+ this._pdf = pdf;
+ this._totalPages = totalPages;
+ this._renderedPdf = renderedPdf;
+ this._elementId = elementId;
+ }
+
+ createInvoice(options: any, cb: any = () => {}) {
+ return new Promise((resolve, reject) => {
+ const url = "https://api.easyinvoice.cloud/v2/free/invoices";
+
+ const data = {
+ data: options,
+ };
+
+ const config: any = {
+ headers: {
+ "easyinvoice-source": "npm",
+ },
+ };
+
+ // Check if 'apiKey' exists in options and is not empty, then add the authorization header
+ if (options.apiKey && options.apiKey.trim() !== "") {
+ config.headers["Authorization"] = `Bearer ${options.apiKey}`;
+ }
+
+ axios
+ .create()
+ .post(url, data, config)
+ .then((response) => {
+ /* istanbul ignore next */
+ const result = response.data.data;
+ /* istanbul ignore next */
+ this._pdf = result.pdf;
+ /* istanbul ignore next */
+ resolve(result);
+ /* istanbul ignore next */
+ cb(result);
+ })
+ .catch((error) => {
+ /* istanbul ignore next */
+ reject(error.response.data);
+ /* istanbul ignore next */
+ cb(error.response.data);
});
- }
+ });
+ }
- /* istanbul ignore next */
- download(filename = 'invoice.pdf', pdf = this._pdf) {
- if (filename === undefined || isBase64(filename)) {
- throw new Error('Invalid filename.');
- }
-
- if (typeof window === 'undefined') {
- throw new Error('Easy Invoice download() is only supported in the browser.');
- } else {
- downloadFile(filename, 'application/pdf', pdf);
- }
+ /* istanbul ignore next */
+ download(filename = "invoice.pdf", pdf = this._pdf) {
+ if (filename === undefined || isBase64(filename)) {
+ throw new Error("Invalid filename.");
}
- /* istanbul ignore next */
- render(elementId: string, pdf = this._pdf, cb: any = () => {
- }) {
- return new Promise((resolve) => {
- if (typeof window === 'undefined') {
- throw new Error('Easy Invoice render() is only supported in the browser.');
- } else {
- this._elementId = elementId;
- this.renderPdf(pdf, function (renderFinished: any) {
- resolve(renderFinished);
- cb(renderFinished);
- });
- }
- });
+ if (typeof window === "undefined") {
+ throw new Error(
+ "Easy Invoice download() is only supported in the browser.",
+ );
+ } else {
+ downloadFile(filename, "application/pdf", pdf);
}
-
- /* istanbul ignore next */
- renderPdf(pdfBase64: string, renderFinished: any) {
- // @ts-ignore
- const loadingTask = pdfjsLib.getDocument({ data: Base64.atob(pdfBase64) });
- loadingTask.promise.then((pdf: any) => {
- // console.log('PDF loaded');
- this._totalPages = pdf.numPages;
- this._renderedPdf = pdf;
- this.renderPage(1, renderFinished);
- }, function (reason: string) {
- // PDF loading error
- console.error(reason);
+ }
+
+ /* istanbul ignore next */
+ render(elementId: string, pdf = this._pdf, cb: any = () => {}) {
+ return new Promise((resolve) => {
+ if (typeof window === "undefined") {
+ throw new Error(
+ "Easy Invoice render() is only supported in the browser.",
+ );
+ } else {
+ this._elementId = elementId;
+ this.renderPdf(pdf, function (renderFinished: any) {
+ resolve(renderFinished);
+ cb(renderFinished);
});
- }
+ }
+ });
+ }
- /* istanbul ignore next */
- renderPage(pageNumber: number, renderFinished: any) {
- this._renderedPdf.getPage(pageNumber).then((page: any) => {
- // console.log('Page loaded');
- const canvas = document.createElement('canvas');
-
- const viewport = isMobileBrowser() ? page.getViewport({scale: window.screen.width / page.getViewport({scale: 1.0}).width}) : page.getViewport({scale: Math.max(window.devicePixelRatio || 1, 1)});
-
- // @ts-ignore
- document.getElementById(this._elementId).innerHTML = "";
- const canvasWrapper = document.getElementById(this._elementId);
- // @ts-ignore
- canvasWrapper.appendChild(canvas);
-
- // Prepare canvas using PDF page dimensions
- const context = canvas.getContext('2d');
- canvas.height = viewport.height;
- canvas.width = viewport.width;
-
- // Render PDF page into canvas context
- const renderContext = {
- canvasContext: context,
- viewport: viewport
- };
- const renderTask = page.render(renderContext);
- renderTask.promise.then(function () {
- // console.log('Page rendered');
- renderFinished(true);
- });
- });
- }
+ /* istanbul ignore next */
+ renderPdf(pdfBase64: string, renderFinished: any) {
+ // @ts-ignore
+ const loadingTask = pdfjsLib.getDocument({ data: Base64.atob(pdfBase64) });
+ loadingTask.promise.then(
+ (pdf: any) => {
+ // console.log('PDF loaded');
+ this._totalPages = pdf.numPages;
+ this._renderedPdf = pdf;
+ this.renderPage(1, renderFinished);
+ },
+ function (reason: string) {
+ // PDF loading error
+ console.error(reason);
+ },
+ );
+ }
+
+ /* istanbul ignore next */
+ renderPage(pageNumber: number, renderFinished: any) {
+ this._renderedPdf.getPage(pageNumber).then((page: any) => {
+ // console.log('Page loaded');
+ const canvas = document.createElement("canvas");
+
+ const viewport = isMobileBrowser()
+ ? page.getViewport({
+ scale: window.screen.width / page.getViewport({ scale: 1.0 }).width,
+ })
+ : page.getViewport({
+ scale: Math.max(window.devicePixelRatio || 1, 1),
+ });
+
+ // @ts-ignore
+ document.getElementById(this._elementId).innerHTML = "";
+ const canvasWrapper = document.getElementById(this._elementId);
+ // @ts-ignore
+ canvasWrapper.appendChild(canvas);
+
+ // Prepare canvas using PDF page dimensions
+ const context = canvas.getContext("2d");
+ canvas.height = viewport.height;
+ canvas.width = viewport.width;
+
+ // Render PDF page into canvas context
+ const renderContext = {
+ canvasContext: context,
+ viewport: viewport,
+ };
+ const renderTask = page.render(renderContext);
+ renderTask.promise.then(function () {
+ // console.log('Page rendered');
+ renderFinished(true);
+ });
+ });
+ }
}
/* istanbul ignore next */
function downloadFile(fileName: string, contentType: string, base64: string) {
- const blob = base64toBlob(base64, contentType);
- FileSaver.saveAs(blob, fileName);
+ const blob = base64toBlob(base64, contentType);
+ FileSaver.saveAs(blob, fileName);
}
/* istanbul ignore next */
function base64toBlob(base64Data: string, contentType: string) {
- contentType = contentType || '';
- const sliceSize = 1024;
- const byteCharacters = Base64.atob(base64Data);
- // var byteCharacters = decodeURIComponent(escape(Base64.atob(base64Data)))
- const bytesLength = byteCharacters.length;
- const slicesCount = Math.ceil(bytesLength / sliceSize);
- const byteArrays = new Array(slicesCount);
-
- for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
- const begin = sliceIndex * sliceSize;
- const end = Math.min(begin + sliceSize, bytesLength);
-
- const bytes = new Array(end - begin);
- for (let offset = begin, i = 0; offset < end; ++i, ++offset) {
- bytes[i] = byteCharacters[offset].charCodeAt(0);
- }
- byteArrays[sliceIndex] = new Uint8Array(bytes);
+ contentType = contentType || "";
+ const sliceSize = 1024;
+ const byteCharacters = Base64.atob(base64Data);
+ // var byteCharacters = decodeURIComponent(escape(Base64.atob(base64Data)))
+ const bytesLength = byteCharacters.length;
+ const slicesCount = Math.ceil(bytesLength / sliceSize);
+ const byteArrays = new Array(slicesCount);
+
+ for (let sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
+ const begin = sliceIndex * sliceSize;
+ const end = Math.min(begin + sliceSize, bytesLength);
+
+ const bytes = new Array(end - begin);
+ for (let offset = begin, i = 0; offset < end; ++i, ++offset) {
+ bytes[i] = byteCharacters[offset].charCodeAt(0);
}
- return new Blob(byteArrays, {
- type: contentType
- });
+ byteArrays[sliceIndex] = new Uint8Array(bytes);
+ }
+ return new Blob(byteArrays, {
+ type: contentType,
+ });
}
/* eslint-disable */
/* istanbul ignore next */
function isMobileBrowser() {
- var ua = navigator.userAgent;
- if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(ua) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(ua.substr(0, 4))) {
- return true;
- } else {
- return false;
- }
+ var ua = navigator.userAgent;
+ if (
+ /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(
+ ua,
+ ) ||
+ /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(
+ ua.substr(0, 4),
+ )
+ ) {
+ return true;
+ } else {
+ return false;
+ }
}
/* eslint-enable */
@@ -192,9 +215,9 @@ function isMobileBrowser() {
// @ts-ignore
export default new EasyInvoice();
-if (typeof window === 'undefined') {
- // @ts-ignore
- module.exports = new EasyInvoice();
+if (typeof window === "undefined") {
+ // @ts-ignore
+ module.exports = new EasyInvoice();
}
// @ts-ignore