@fuul/sdk 6.0.1 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -1,6 +1,6 @@
1
- (function(R,A){typeof exports=="object"&&typeof module<"u"?A(exports):typeof define=="function"&&define.amd?define(["exports"],A):(R=typeof globalThis<"u"?globalThis:R||self,A(R.Fuul={}))})(this,function(R){"use strict";var Hr=Object.defineProperty;var Mr=(R,A,H)=>A in R?Hr(R,A,{enumerable:!0,configurable:!0,writable:!0,value:H}):R[A]=H;var T=(R,A,H)=>Mr(R,typeof A!="symbol"?A+"":A,H);function A(e,t){return function(){return e.apply(t,arguments)}}const{toString:H}=Object.prototype,{getPrototypeOf:fe}=Object,Y=(e=>t=>{const n=H.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),N=e=>(e=e.toLowerCase(),t=>Y(t)===e),Z=e=>t=>typeof t===e,{isArray:M}=Array,J=Z("undefined");function Pt(e){return e!==null&&!J(e)&&e.constructor!==null&&!J(e.constructor)&&x(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Be=N("ArrayBuffer");function Ot(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Be(e.buffer),t}const _t=Z("string"),x=Z("function"),ke=Z("number"),ee=e=>e!==null&&typeof e=="object",xt=e=>e===!0||e===!1,te=e=>{if(Y(e)!=="object")return!1;const t=fe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Nt=N("Date"),Ut=N("File"),Lt=N("Blob"),Dt=N("FileList"),Ft=e=>ee(e)&&x(e.pipe),Bt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||x(e.append)&&((t=Y(e))==="formdata"||t==="object"&&x(e.toString)&&e.toString()==="[object FormData]"))},kt=N("URLSearchParams"),[vt,It,qt,jt]=["ReadableStream","Request","Response","Headers"].map(N),Ht=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function W(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),M(e))for(r=0,s=e.length;r<s;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let c;for(r=0;r<i;r++)c=o[r],t.call(null,e[c],c,e)}}function ve(e,t){t=t.toLowerCase();const n=Object.keys(e);let r=n.length,s;for(;r-- >0;)if(s=n[r],t===s.toLowerCase())return s;return null}const k=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ie=e=>!J(e)&&e!==k;function de(){const{caseless:e}=Ie(this)&&this||{},t={},n=(r,s)=>{const o=e&&ve(t,s)||s;te(t[o])&&te(r)?t[o]=de(t[o],r):te(r)?t[o]=de({},r):M(r)?t[o]=r.slice():t[o]=r};for(let r=0,s=arguments.length;r<s;r++)arguments[r]&&W(arguments[r],n);return t}const Mt=(e,t,n,{allOwnKeys:r}={})=>(W(t,(s,o)=>{n&&x(s)?e[o]=A(s,n):e[o]=s},{allOwnKeys:r}),e),$t=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Vt=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},zt=(e,t,n,r)=>{let s,o,i;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),o=s.length;o-- >0;)i=s[o],(!r||r(i,e,t))&&!c[i]&&(t[i]=e[i],c[i]=!0);e=n!==!1&&fe(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Kt=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},Jt=e=>{if(!e)return null;if(M(e))return e;let t=e.length;if(!ke(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Wt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&fe(Uint8Array)),Qt=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=r.next())&&!s.done;){const o=s.value;t.call(e,o[0],o[1])}},Gt=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Xt=N("HTMLFormElement"),Yt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),qe=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Zt=N("RegExp"),je=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};W(n,(s,o)=>{let i;(i=t(s,o,e))!==!1&&(r[o]=i||s)}),Object.defineProperties(e,r)},en=e=>{je(e,(t,n)=>{if(x(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(x(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},tn=(e,t)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return M(e)?r(e):r(String(e).split(t)),n},nn=()=>{},rn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t,he="abcdefghijklmnopqrstuvwxyz",He="0123456789",Me={DIGIT:He,ALPHA:he,ALPHA_DIGIT:he+he.toUpperCase()+He},sn=(e=16,t=Me.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function on(e){return!!(e&&x(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const an=e=>{const t=new Array(10),n=(r,s)=>{if(ee(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[s]=r;const o=M(r)?[]:{};return W(r,(i,c)=>{const l=n(i,s+1);!J(l)&&(o[c]=l)}),t[s]=void 0,o}}return r};return n(e,0)},cn=N("AsyncFunction"),un=e=>e&&(ee(e)||x(e))&&x(e.then)&&x(e.catch),$e=((e,t)=>e?setImmediate:t?((n,r)=>(k.addEventListener("message",({source:s,data:o})=>{s===k&&o===n&&r.length&&r.shift()()},!1),s=>{r.push(s),k.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",x(k.postMessage)),ln=typeof queueMicrotask<"u"?queueMicrotask.bind(k):typeof process<"u"&&process.nextTick||$e,a={isArray:M,isArrayBuffer:Be,isBuffer:Pt,isFormData:Bt,isArrayBufferView:Ot,isString:_t,isNumber:ke,isBoolean:xt,isObject:ee,isPlainObject:te,isReadableStream:vt,isRequest:It,isResponse:qt,isHeaders:jt,isUndefined:J,isDate:Nt,isFile:Ut,isBlob:Lt,isRegExp:Zt,isFunction:x,isStream:Ft,isURLSearchParams:kt,isTypedArray:Wt,isFileList:Dt,forEach:W,merge:de,extend:Mt,trim:Ht,stripBOM:$t,inherits:Vt,toFlatObject:zt,kindOf:Y,kindOfTest:N,endsWith:Kt,toArray:Jt,forEachEntry:Qt,matchAll:Gt,isHTMLForm:Xt,hasOwnProperty:qe,hasOwnProp:qe,reduceDescriptors:je,freezeMethods:en,toObjectSet:tn,toCamelCase:Yt,noop:nn,toFiniteNumber:rn,findKey:ve,global:k,isContextDefined:Ie,ALPHABET:Me,generateString:sn,isSpecCompliantForm:on,toJSONObject:an,isAsyncFn:cn,isThenable:un,setImmediate:$e,asap:ln};function m(e,t,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}a.inherits(m,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:a.toJSONObject(this.config),code:this.code,status:this.status}}});const Ve=m.prototype,ze={};["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","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{ze[e]={value:e}}),Object.defineProperties(m,ze),Object.defineProperty(Ve,"isAxiosError",{value:!0}),m.from=(e,t,n,r,s,o)=>{const i=Object.create(Ve);return a.toFlatObject(e,i,function(l){return l!==Error.prototype},c=>c!=="isAxiosError"),m.call(i,e.message,t,n,r,s),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const fn=null;function pe(e){return a.isPlainObject(e)||a.isArray(e)}function Ke(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Je(e,t,n){return e?e.concat(t).map(function(s,o){return s=Ke(s),!n&&o?"["+s+"]":s}).join(n?".":""):t}function dn(e){return a.isArray(e)&&!e.some(pe)}const hn=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function ne(e,t,n){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,p){return!a.isUndefined(p[y])});const r=n.metaTokens,s=n.visitor||f,o=n.dots,i=n.indexes,l=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function u(h){if(h===null)return"";if(a.isDate(h))return h.toISOString();if(!l&&a.isBlob(h))throw new m("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(h)||a.isTypedArray(h)?l&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function f(h,y,p){let b=h;if(h&&!p&&typeof h=="object"){if(a.endsWith(y,"{}"))y=r?y:y.slice(0,-2),h=JSON.stringify(h);else if(a.isArray(h)&&dn(h)||(a.isFileList(h)||a.endsWith(y,"[]"))&&(b=a.toArray(h)))return y=Ke(y),b.forEach(function(C,L){!(a.isUndefined(C)||C===null)&&t.append(i===!0?Je([y],L,o):i===null?y:y+"[]",u(C))}),!1}return pe(h)?!0:(t.append(Je(p,y,o),u(h)),!1)}const d=[],w=Object.assign(hn,{defaultVisitor:f,convertValue:u,isVisitable:pe});function E(h,y){if(!a.isUndefined(h)){if(d.indexOf(h)!==-1)throw Error("Circular reference detected in "+y.join("."));d.push(h),a.forEach(h,function(b,S){(!(a.isUndefined(b)||b===null)&&s.call(t,b,a.isString(S)?S.trim():S,y,w))===!0&&E(b,y?y.concat(S):[S])}),d.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return E(e),t}function We(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function me(e,t){this._pairs=[],e&&ne(e,this,t)}const Qe=me.prototype;Qe.append=function(t,n){this._pairs.push([t,n])},Qe.toString=function(t){const n=t?function(r){return t.call(this,r,We)}:We;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function pn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Ge(e,t,n){if(!t)return e;const r=n&&n.encode||pn,s=n&&n.serialize;let o;if(s?o=s(t,n):o=a.isURLSearchParams(t)?t.toString():new me(t,n).toString(r),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class Xe{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Ye={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},mn={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:me,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},ye=typeof window<"u"&&typeof document<"u",ge=typeof navigator=="object"&&navigator||void 0,yn=ye&&(!ge||["ReactNative","NativeScript","NS"].indexOf(ge.product)<0),gn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",wn=ye&&window.location.href||"http://localhost",P={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ye,hasStandardBrowserEnv:yn,hasStandardBrowserWebWorkerEnv:gn,navigator:ge,origin:wn},Symbol.toStringTag,{value:"Module"})),...mn};function bn(e,t){return ne(e,new P.classes.URLSearchParams,Object.assign({visitor:function(n,r,s,o){return P.isNode&&a.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function En(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Sn(e){const t={},n=Object.keys(e);let r;const s=n.length;let o;for(r=0;r<s;r++)o=n[r],t[o]=e[o];return t}function Ze(e){function t(n,r,s,o){let i=n[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),l=o>=n.length;return i=!i&&a.isArray(s)?s.length:i,l?(a.hasOwnProp(s,i)?s[i]=[s[i],r]:s[i]=r,!c):((!s[i]||!a.isObject(s[i]))&&(s[i]=[]),t(n,r,s[i],o)&&a.isArray(s[i])&&(s[i]=Sn(s[i])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const n={};return a.forEachEntry(e,(r,s)=>{t(En(r),s,n,0)}),n}return null}function Cn(e,t,n){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(0,JSON.stringify)(e)}const Q={transitional:Ye,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=a.isObject(t);if(o&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(Ze(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t)||a.isReadableStream(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return bn(t,this.formSerializer).toString();if((c=a.isFileList(t))||r.indexOf("multipart/form-data")>-1){const l=this.env&&this.env.FormData;return ne(c?{"files[]":t}:t,l&&new l,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),Cn(t)):t}],transformResponse:[function(t){const n=this.transitional||Q.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(r&&!this.responseType||s)){const i=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(c){if(i)throw c.name==="SyntaxError"?m.from(c,m.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:P.classes.FormData,Blob:P.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],e=>{Q.headers[e]={}});const Rn=a.toObjectSet(["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"]),Tn=e=>{const t={};let n,r,s;return e&&e.split(`
2
- `).forEach(function(i){s=i.indexOf(":"),n=i.substring(0,s).trim().toLowerCase(),r=i.substring(s+1).trim(),!(!n||t[n]&&Rn[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},et=Symbol("internals");function G(e){return e&&String(e).trim().toLowerCase()}function re(e){return e===!1||e==null?e:a.isArray(e)?e.map(re):String(e)}function An(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Pn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function we(e,t,n,r,s){if(a.isFunction(r))return r.call(this,t,n);if(s&&(t=n),!!a.isString(t)){if(a.isString(r))return t.indexOf(r)!==-1;if(a.isRegExp(r))return r.test(t)}}function On(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function _n(e,t){const n=a.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(s,o,i){return this[r].call(this,t,s,o,i)},configurable:!0})})}let O=class{constructor(t){t&&this.set(t)}set(t,n,r){const s=this;function o(c,l,u){const f=G(l);if(!f)throw new Error("header name must be a non-empty string");const d=a.findKey(s,f);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||l]=re(c))}const i=(c,l)=>a.forEach(c,(u,f)=>o(u,f,l));if(a.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(a.isString(t)&&(t=t.trim())&&!Pn(t))i(Tn(t),n);else if(a.isHeaders(t))for(const[c,l]of t.entries())o(l,c,r);else t!=null&&o(n,t,r);return this}get(t,n){if(t=G(t),t){const r=a.findKey(this,t);if(r){const s=this[r];if(!n)return s;if(n===!0)return An(s);if(a.isFunction(n))return n.call(this,s,r);if(a.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=G(t),t){const r=a.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||we(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let s=!1;function o(i){if(i=G(i),i){const c=a.findKey(r,i);c&&(!n||we(r,r[c],c,n))&&(delete r[c],s=!0)}}return a.isArray(t)?t.forEach(o):o(t),s}clear(t){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!t||we(this,this[o],o,t,!0))&&(delete this[o],s=!0)}return s}normalize(t){const n=this,r={};return a.forEach(this,(s,o)=>{const i=a.findKey(r,o);if(i){n[i]=re(s),delete n[o];return}const c=t?On(o):String(o).trim();c!==o&&delete n[o],n[c]=re(s),r[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=t&&a.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
- `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[et]=this[et]={accessors:{}}).accessors,s=this.prototype;function o(i){const c=G(i);r[c]||(_n(s,i),r[c]=!0)}return a.isArray(t)?t.forEach(o):o(t),this}};O.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(O.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),a.freezeMethods(O);function be(e,t){const n=this||Q,r=t||n,s=O.from(r.headers);let o=r.data;return a.forEach(e,function(c){o=c.call(n,o,s.normalize(),t?t.status:void 0)}),s.normalize(),o}function tt(e){return!!(e&&e.__CANCEL__)}function $(e,t,n){m.call(this,e??"canceled",m.ERR_CANCELED,t,n),this.name="CanceledError"}a.inherits($,m,{__CANCEL__:!0});function nt(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new m("Request failed with status code "+n.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function xn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Nn(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,o=0,i;return t=t!==void 0?t:1e3,function(l){const u=Date.now(),f=r[o];i||(i=u),n[s]=l,r[s]=u;let d=o,w=0;for(;d!==s;)w+=n[d++],d=d%e;if(s=(s+1)%e,s===o&&(o=(o+1)%e),u-i<t)return;const E=f&&u-f;return E?Math.round(w*1e3/E):void 0}}function Un(e,t){let n=0,r=1e3/t,s,o;const i=(u,f=Date.now())=>{n=f,s=null,o&&(clearTimeout(o),o=null),e.apply(null,u)};return[(...u)=>{const f=Date.now(),d=f-n;d>=r?i(u,f):(s=u,o||(o=setTimeout(()=>{o=null,i(s)},r-d)))},()=>s&&i(s)]}const se=(e,t,n=3)=>{let r=0;const s=Nn(50,250);return Un(o=>{const i=o.loaded,c=o.lengthComputable?o.total:void 0,l=i-r,u=s(l),f=i<=c;r=i;const d={loaded:i,total:c,progress:c?i/c:void 0,bytes:l,rate:u||void 0,estimated:u&&c&&f?(c-i)/u:void 0,event:o,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(d)},n)},rt=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},st=e=>(...t)=>a.asap(()=>e(...t)),Ln=P.hasStandardBrowserEnv?function(){const t=P.navigator&&/(msie|trident)/i.test(P.navigator.userAgent),n=document.createElement("a");let r;function s(o){let i=o;return t&&(n.setAttribute("href",i),i=n.href),n.setAttribute("href",i),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=s(window.location.href),function(i){const c=a.isString(i)?s(i):i;return c.protocol===r.protocol&&c.host===r.host}}():function(){return function(){return!0}}(),Dn=P.hasStandardBrowserEnv?{write(e,t,n,r,s,o){const i=[e+"="+encodeURIComponent(t)];a.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),a.isString(r)&&i.push("path="+r),a.isString(s)&&i.push("domain="+s),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Fn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Bn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ot(e,t){return e&&!Fn(t)?Bn(e,t):t}const it=e=>e instanceof O?{...e}:e;function v(e,t){t=t||{};const n={};function r(u,f,d){return a.isPlainObject(u)&&a.isPlainObject(f)?a.merge.call({caseless:d},u,f):a.isPlainObject(f)?a.merge({},f):a.isArray(f)?f.slice():f}function s(u,f,d){if(a.isUndefined(f)){if(!a.isUndefined(u))return r(void 0,u,d)}else return r(u,f,d)}function o(u,f){if(!a.isUndefined(f))return r(void 0,f)}function i(u,f){if(a.isUndefined(f)){if(!a.isUndefined(u))return r(void 0,u)}else return r(void 0,f)}function c(u,f,d){if(d in t)return r(u,f);if(d in e)return r(void 0,u)}const l={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(u,f)=>s(it(u),it(f),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(f){const d=l[f]||s,w=d(e[f],t[f],f);a.isUndefined(w)&&d!==c||(n[f]=w)}),n}const at=e=>{const t=v({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:i,auth:c}=t;t.headers=i=O.from(i),t.url=Ge(ot(t.baseURL,t.url),e.params,e.paramsSerializer),c&&i.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):"")));let l;if(a.isFormData(n)){if(P.hasStandardBrowserEnv||P.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((l=i.getContentType())!==!1){const[u,...f]=l?l.split(";").map(d=>d.trim()).filter(Boolean):[];i.setContentType([u||"multipart/form-data",...f].join("; "))}}if(P.hasStandardBrowserEnv&&(r&&a.isFunction(r)&&(r=r(t)),r||r!==!1&&Ln(t.url))){const u=s&&o&&Dn.read(o);u&&i.set(s,u)}return t},kn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const s=at(e);let o=s.data;const i=O.from(s.headers).normalize();let{responseType:c,onUploadProgress:l,onDownloadProgress:u}=s,f,d,w,E,h;function y(){E&&E(),h&&h(),s.cancelToken&&s.cancelToken.unsubscribe(f),s.signal&&s.signal.removeEventListener("abort",f)}let p=new XMLHttpRequest;p.open(s.method.toUpperCase(),s.url,!0),p.timeout=s.timeout;function b(){if(!p)return;const C=O.from("getAllResponseHeaders"in p&&p.getAllResponseHeaders()),_={data:!c||c==="text"||c==="json"?p.responseText:p.response,status:p.status,statusText:p.statusText,headers:C,config:e,request:p};nt(function(j){n(j),y()},function(j){r(j),y()},_),p=null}"onloadend"in p?p.onloadend=b:p.onreadystatechange=function(){!p||p.readyState!==4||p.status===0&&!(p.responseURL&&p.responseURL.indexOf("file:")===0)||setTimeout(b)},p.onabort=function(){p&&(r(new m("Request aborted",m.ECONNABORTED,e,p)),p=null)},p.onerror=function(){r(new m("Network Error",m.ERR_NETWORK,e,p)),p=null},p.ontimeout=function(){let L=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const _=s.transitional||Ye;s.timeoutErrorMessage&&(L=s.timeoutErrorMessage),r(new m(L,_.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,p)),p=null},o===void 0&&i.setContentType(null),"setRequestHeader"in p&&a.forEach(i.toJSON(),function(L,_){p.setRequestHeader(_,L)}),a.isUndefined(s.withCredentials)||(p.withCredentials=!!s.withCredentials),c&&c!=="json"&&(p.responseType=s.responseType),u&&([w,h]=se(u,!0),p.addEventListener("progress",w)),l&&p.upload&&([d,E]=se(l),p.upload.addEventListener("progress",d),p.upload.addEventListener("loadend",E)),(s.cancelToken||s.signal)&&(f=C=>{p&&(r(!C||C.type?new $(null,e,p):C),p.abort(),p=null)},s.cancelToken&&s.cancelToken.subscribe(f),s.signal&&(s.signal.aborted?f():s.signal.addEventListener("abort",f)));const S=xn(s.url);if(S&&P.protocols.indexOf(S)===-1){r(new m("Unsupported protocol "+S+":",m.ERR_BAD_REQUEST,e));return}p.send(o||null)})},vn=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,s;const o=function(u){if(!s){s=!0,c();const f=u instanceof Error?u:this.reason;r.abort(f instanceof m?f:new $(f instanceof Error?f.message:f))}};let i=t&&setTimeout(()=>{i=null,o(new m(`timeout ${t} of ms exceeded`,m.ETIMEDOUT))},t);const c=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o));const{signal:l}=r;return l.unsubscribe=()=>a.asap(c),l}},In=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,s;for(;r<n;)s=r+t,yield e.slice(r,s),r=s},qn=async function*(e,t){for await(const n of jn(e))yield*In(n,t)},jn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},ct=(e,t,n,r)=>{const s=qn(e,t);let o=0,i,c=l=>{i||(i=!0,r&&r(l))};return new ReadableStream({async pull(l){try{const{done:u,value:f}=await s.next();if(u){c(),l.close();return}let d=f.byteLength;if(n){let w=o+=d;n(w)}l.enqueue(new Uint8Array(f))}catch(u){throw c(u),u}},cancel(l){return c(l),s.return()}},{highWaterMark:2})},oe=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",ut=oe&&typeof ReadableStream=="function",Hn=oe&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),lt=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Mn=ut&&lt(()=>{let e=!1;const t=new Request(P.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),ft=64*1024,Ee=ut&&lt(()=>a.isReadableStream(new Response("").body)),ie={stream:Ee&&(e=>e.body)};oe&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!ie[t]&&(ie[t]=a.isFunction(e[t])?n=>n[t]():(n,r)=>{throw new m(`Response type '${t}' is not supported`,m.ERR_NOT_SUPPORT,r)})})})(new Response);const $n=async e=>{if(e==null)return 0;if(a.isBlob(e))return e.size;if(a.isSpecCompliantForm(e))return(await new Request(P.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(a.isArrayBufferView(e)||a.isArrayBuffer(e))return e.byteLength;if(a.isURLSearchParams(e)&&(e=e+""),a.isString(e))return(await Hn(e)).byteLength},Vn=async(e,t)=>{const n=a.toFiniteNumber(e.getContentLength());return n??$n(t)},Se={http:fn,xhr:kn,fetch:oe&&(async e=>{let{url:t,method:n,data:r,signal:s,cancelToken:o,timeout:i,onDownloadProgress:c,onUploadProgress:l,responseType:u,headers:f,withCredentials:d="same-origin",fetchOptions:w}=at(e);u=u?(u+"").toLowerCase():"text";let E=vn([s,o&&o.toAbortSignal()],i),h;const y=E&&E.unsubscribe&&(()=>{E.unsubscribe()});let p;try{if(l&&Mn&&n!=="get"&&n!=="head"&&(p=await Vn(f,r))!==0){let _=new Request(t,{method:"POST",body:r,duplex:"half"}),B;if(a.isFormData(r)&&(B=_.headers.get("content-type"))&&f.setContentType(B),_.body){const[j,le]=rt(p,se(st(l)));r=ct(_.body,ft,j,le)}}a.isString(d)||(d=d?"include":"omit");const b="credentials"in Request.prototype;h=new Request(t,{...w,signal:E,method:n.toUpperCase(),headers:f.normalize().toJSON(),body:r,duplex:"half",credentials:b?d:void 0});let S=await fetch(h);const C=Ee&&(u==="stream"||u==="response");if(Ee&&(c||C&&y)){const _={};["status","statusText","headers"].forEach(Tt=>{_[Tt]=S[Tt]});const B=a.toFiniteNumber(S.headers.get("content-length")),[j,le]=c&&rt(B,se(st(c),!0))||[];S=new Response(ct(S.body,ft,j,()=>{le&&le(),y&&y()}),_)}u=u||"text";let L=await ie[a.findKey(ie,u)||"text"](S,e);return!C&&y&&y(),await new Promise((_,B)=>{nt(_,B,{data:L,headers:O.from(S.headers),status:S.status,statusText:S.statusText,config:e,request:h})})}catch(b){throw y&&y(),b&&b.name==="TypeError"&&/fetch/i.test(b.message)?Object.assign(new m("Network Error",m.ERR_NETWORK,e,h),{cause:b.cause||b}):m.from(b,b&&b.code,e,h)}})};a.forEach(Se,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const dt=e=>`- ${e}`,zn=e=>a.isFunction(e)||e===null||e===!1,ht={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let n,r;const s={};for(let o=0;o<t;o++){n=e[o];let i;if(r=n,!zn(n)&&(r=Se[(i=String(n)).toLowerCase()],r===void 0))throw new m(`Unknown adapter '${i}'`);if(r)break;s[i||"#"+o]=r}if(!r){const o=Object.entries(s).map(([c,l])=>`adapter ${c} `+(l===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since :
1
+ (function(R,A){typeof exports=="object"&&typeof module<"u"?A(exports):typeof define=="function"&&define.amd?define(["exports"],A):(R=typeof globalThis<"u"?globalThis:R||self,A(R.Fuul={}))})(this,function(R){"use strict";var Hr=Object.defineProperty;var Vr=(R,A,M)=>A in R?Hr(R,A,{enumerable:!0,configurable:!0,writable:!0,value:M}):R[A]=M;var T=(R,A,M)=>Vr(R,typeof A!="symbol"?A+"":A,M);function A(e,t){return function(){return e.apply(t,arguments)}}const{toString:M}=Object.prototype,{getPrototypeOf:fe}=Object,Y=(e=>t=>{const n=M.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),x=e=>(e=e.toLowerCase(),t=>Y(t)===e),Z=e=>t=>typeof t===e,{isArray:$}=Array,J=Z("undefined");function Pt(e){return e!==null&&!J(e)&&e.constructor!==null&&!J(e.constructor)&&N(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Be=x("ArrayBuffer");function Ot(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Be(e.buffer),t}const Nt=Z("string"),N=Z("function"),ke=Z("number"),ee=e=>e!==null&&typeof e=="object",xt=e=>e===!0||e===!1,te=e=>{if(Y(e)!=="object")return!1;const t=fe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},Ut=x("Date"),Lt=x("File"),Dt=x("Blob"),Ft=x("FileList"),Bt=e=>ee(e)&&N(e.pipe),kt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||N(e.append)&&((t=Y(e))==="formdata"||t==="object"&&N(e.toString)&&e.toString()==="[object FormData]"))},vt=x("URLSearchParams"),[It,qt,jt,Mt]=["ReadableStream","Request","Response","Headers"].map(x),$t=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function W(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,s;if(typeof e!="object"&&(e=[e]),$(e))for(r=0,s=e.length;r<s;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let c;for(r=0;r<i;r++)c=o[r],t.call(null,e[c],c,e)}}function ve(e,t){t=t.toLowerCase();const n=Object.keys(e);let r=n.length,s;for(;r-- >0;)if(s=n[r],t===s.toLowerCase())return s;return null}const k=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ie=e=>!J(e)&&e!==k;function de(){const{caseless:e}=Ie(this)&&this||{},t={},n=(r,s)=>{const o=e&&ve(t,s)||s;te(t[o])&&te(r)?t[o]=de(t[o],r):te(r)?t[o]=de({},r):$(r)?t[o]=r.slice():t[o]=r};for(let r=0,s=arguments.length;r<s;r++)arguments[r]&&W(arguments[r],n);return t}const Ht=(e,t,n,{allOwnKeys:r}={})=>(W(t,(s,o)=>{n&&N(s)?e[o]=A(s,n):e[o]=s},{allOwnKeys:r}),e),Vt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Kt=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},zt=(e,t,n,r)=>{let s,o,i;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),o=s.length;o-- >0;)i=s[o],(!r||r(i,e,t))&&!c[i]&&(t[i]=e[i],c[i]=!0);e=n!==!1&&fe(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Jt=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},Wt=e=>{if(!e)return null;if($(e))return e;let t=e.length;if(!ke(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Qt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&fe(Uint8Array)),Xt=(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let s;for(;(s=r.next())&&!s.done;){const o=s.value;t.call(e,o[0],o[1])}},Gt=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Yt=x("HTMLFormElement"),Zt=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,s){return r.toUpperCase()+s}),qe=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),en=x("RegExp"),je=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};W(n,(s,o)=>{let i;(i=t(s,o,e))!==!1&&(r[o]=i||s)}),Object.defineProperties(e,r)},tn=e=>{je(e,(t,n)=>{if(N(e)&&["arguments","caller","callee"].indexOf(n)!==-1)return!1;const r=e[n];if(N(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},nn=(e,t)=>{const n={},r=s=>{s.forEach(o=>{n[o]=!0})};return $(e)?r(e):r(String(e).split(t)),n},rn=()=>{},sn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t,he="abcdefghijklmnopqrstuvwxyz",Me="0123456789",$e={DIGIT:Me,ALPHA:he,ALPHA_DIGIT:he+he.toUpperCase()+Me},on=(e=16,t=$e.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n};function an(e){return!!(e&&N(e.append)&&e[Symbol.toStringTag]==="FormData"&&e[Symbol.iterator])}const cn=e=>{const t=new Array(10),n=(r,s)=>{if(ee(r)){if(t.indexOf(r)>=0)return;if(!("toJSON"in r)){t[s]=r;const o=$(r)?[]:{};return W(r,(i,c)=>{const f=n(i,s+1);!J(f)&&(o[c]=f)}),t[s]=void 0,o}}return r};return n(e,0)},un=x("AsyncFunction"),ln=e=>e&&(ee(e)||N(e))&&N(e.then)&&N(e.catch),He=((e,t)=>e?setImmediate:t?((n,r)=>(k.addEventListener("message",({source:s,data:o})=>{s===k&&o===n&&r.length&&r.shift()()},!1),s=>{r.push(s),k.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",N(k.postMessage)),fn=typeof queueMicrotask<"u"?queueMicrotask.bind(k):typeof process<"u"&&process.nextTick||He,a={isArray:$,isArrayBuffer:Be,isBuffer:Pt,isFormData:kt,isArrayBufferView:Ot,isString:Nt,isNumber:ke,isBoolean:xt,isObject:ee,isPlainObject:te,isReadableStream:It,isRequest:qt,isResponse:jt,isHeaders:Mt,isUndefined:J,isDate:Ut,isFile:Lt,isBlob:Dt,isRegExp:en,isFunction:N,isStream:Bt,isURLSearchParams:vt,isTypedArray:Qt,isFileList:Ft,forEach:W,merge:de,extend:Ht,trim:$t,stripBOM:Vt,inherits:Kt,toFlatObject:zt,kindOf:Y,kindOfTest:x,endsWith:Jt,toArray:Wt,forEachEntry:Xt,matchAll:Gt,isHTMLForm:Yt,hasOwnProperty:qe,hasOwnProp:qe,reduceDescriptors:je,freezeMethods:tn,toObjectSet:nn,toCamelCase:Zt,noop:rn,toFiniteNumber:sn,findKey:ve,global:k,isContextDefined:Ie,ALPHABET:$e,generateString:on,isSpecCompliantForm:an,toJSONObject:cn,isAsyncFn:un,isThenable:ln,setImmediate:He,asap:fn};function m(e,t,n,r,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),s&&(this.response=s,this.status=s.status?s.status:null)}a.inherits(m,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:a.toJSONObject(this.config),code:this.code,status:this.status}}});const Ve=m.prototype,Ke={};["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","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Ke[e]={value:e}}),Object.defineProperties(m,Ke),Object.defineProperty(Ve,"isAxiosError",{value:!0}),m.from=(e,t,n,r,s,o)=>{const i=Object.create(Ve);return a.toFlatObject(e,i,function(f){return f!==Error.prototype},c=>c!=="isAxiosError"),m.call(i,e.message,t,n,r,s),i.cause=e,i.name=e.name,o&&Object.assign(i,o),i};const dn=null;function pe(e){return a.isPlainObject(e)||a.isArray(e)}function ze(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Je(e,t,n){return e?e.concat(t).map(function(s,o){return s=ze(s),!n&&o?"["+s+"]":s}).join(n?".":""):t}function hn(e){return a.isArray(e)&&!e.some(pe)}const pn=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function ne(e,t,n){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=a.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,p){return!a.isUndefined(p[y])});const r=n.metaTokens,s=n.visitor||l,o=n.dots,i=n.indexes,f=(n.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function u(h){if(h===null)return"";if(a.isDate(h))return h.toISOString();if(!f&&a.isBlob(h))throw new m("Blob is not supported. Use a Buffer instead.");return a.isArrayBuffer(h)||a.isTypedArray(h)?f&&typeof Blob=="function"?new Blob([h]):Buffer.from(h):h}function l(h,y,p){let b=h;if(h&&!p&&typeof h=="object"){if(a.endsWith(y,"{}"))y=r?y:y.slice(0,-2),h=JSON.stringify(h);else if(a.isArray(h)&&hn(h)||(a.isFileList(h)||a.endsWith(y,"[]"))&&(b=a.toArray(h)))return y=ze(y),b.forEach(function(C,L){!(a.isUndefined(C)||C===null)&&t.append(i===!0?Je([y],L,o):i===null?y:y+"[]",u(C))}),!1}return pe(h)?!0:(t.append(Je(p,y,o),u(h)),!1)}const d=[],w=Object.assign(pn,{defaultVisitor:l,convertValue:u,isVisitable:pe});function E(h,y){if(!a.isUndefined(h)){if(d.indexOf(h)!==-1)throw Error("Circular reference detected in "+y.join("."));d.push(h),a.forEach(h,function(b,S){(!(a.isUndefined(b)||b===null)&&s.call(t,b,a.isString(S)?S.trim():S,y,w))===!0&&E(b,y?y.concat(S):[S])}),d.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return E(e),t}function We(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(r){return t[r]})}function me(e,t){this._pairs=[],e&&ne(e,this,t)}const Qe=me.prototype;Qe.append=function(t,n){this._pairs.push([t,n])},Qe.toString=function(t){const n=t?function(r){return t.call(this,r,We)}:We;return this._pairs.map(function(s){return n(s[0])+"="+n(s[1])},"").join("&")};function mn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Xe(e,t,n){if(!t)return e;const r=n&&n.encode||mn,s=n&&n.serialize;let o;if(s?o=s(t,n):o=a.isURLSearchParams(t)?t.toString():new me(t,n).toString(r),o){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class Ge{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){a.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Ye={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},yn={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:me,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},ye=typeof window<"u"&&typeof document<"u",ge=typeof navigator=="object"&&navigator||void 0,gn=ye&&(!ge||["ReactNative","NativeScript","NS"].indexOf(ge.product)<0),wn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",bn=ye&&window.location.href||"http://localhost",_={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:ye,hasStandardBrowserEnv:gn,hasStandardBrowserWebWorkerEnv:wn,navigator:ge,origin:bn},Symbol.toStringTag,{value:"Module"})),...yn};function En(e,t){return ne(e,new _.classes.URLSearchParams,Object.assign({visitor:function(n,r,s,o){return _.isNode&&a.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)}},t))}function Sn(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Cn(e){const t={},n=Object.keys(e);let r;const s=n.length;let o;for(r=0;r<s;r++)o=n[r],t[o]=e[o];return t}function Ze(e){function t(n,r,s,o){let i=n[o++];if(i==="__proto__")return!0;const c=Number.isFinite(+i),f=o>=n.length;return i=!i&&a.isArray(s)?s.length:i,f?(a.hasOwnProp(s,i)?s[i]=[s[i],r]:s[i]=r,!c):((!s[i]||!a.isObject(s[i]))&&(s[i]=[]),t(n,r,s[i],o)&&a.isArray(s[i])&&(s[i]=Cn(s[i])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const n={};return a.forEachEntry(e,(r,s)=>{t(Sn(r),s,n,0)}),n}return null}function Rn(e,t,n){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(0,JSON.stringify)(e)}const Q={transitional:Ye,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",s=r.indexOf("application/json")>-1,o=a.isObject(t);if(o&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(Ze(t)):t;if(a.isArrayBuffer(t)||a.isBuffer(t)||a.isStream(t)||a.isFile(t)||a.isBlob(t)||a.isReadableStream(t))return t;if(a.isArrayBufferView(t))return t.buffer;if(a.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(o){if(r.indexOf("application/x-www-form-urlencoded")>-1)return En(t,this.formSerializer).toString();if((c=a.isFileList(t))||r.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return ne(c?{"files[]":t}:t,f&&new f,this.formSerializer)}}return o||s?(n.setContentType("application/json",!1),Rn(t)):t}],transformResponse:[function(t){const n=this.transitional||Q.transitional,r=n&&n.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(r&&!this.responseType||s)){const i=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(c){if(i)throw c.name==="SyntaxError"?m.from(c,m.ERR_BAD_RESPONSE,this,null,this.response):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:_.classes.FormData,Blob:_.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};a.forEach(["delete","get","head","post","put","patch"],e=>{Q.headers[e]={}});const Tn=a.toObjectSet(["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"]),An=e=>{const t={};let n,r,s;return e&&e.split(`
2
+ `).forEach(function(i){s=i.indexOf(":"),n=i.substring(0,s).trim().toLowerCase(),r=i.substring(s+1).trim(),!(!n||t[n]&&Tn[n])&&(n==="set-cookie"?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)}),t},et=Symbol("internals");function X(e){return e&&String(e).trim().toLowerCase()}function re(e){return e===!1||e==null?e:a.isArray(e)?e.map(re):String(e)}function _n(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Pn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function we(e,t,n,r,s){if(a.isFunction(r))return r.call(this,t,n);if(s&&(t=n),!!a.isString(t)){if(a.isString(r))return t.indexOf(r)!==-1;if(a.isRegExp(r))return r.test(t)}}function On(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Nn(e,t){const n=a.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{value:function(s,o,i){return this[r].call(this,t,s,o,i)},configurable:!0})})}let P=class{constructor(t){t&&this.set(t)}set(t,n,r){const s=this;function o(c,f,u){const l=X(f);if(!l)throw new Error("header name must be a non-empty string");const d=a.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||f]=re(c))}const i=(c,f)=>a.forEach(c,(u,l)=>o(u,l,f));if(a.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(a.isString(t)&&(t=t.trim())&&!Pn(t))i(An(t),n);else if(a.isHeaders(t))for(const[c,f]of t.entries())o(f,c,r);else t!=null&&o(n,t,r);return this}get(t,n){if(t=X(t),t){const r=a.findKey(this,t);if(r){const s=this[r];if(!n)return s;if(n===!0)return _n(s);if(a.isFunction(n))return n.call(this,s,r);if(a.isRegExp(n))return n.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=X(t),t){const r=a.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||we(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let s=!1;function o(i){if(i=X(i),i){const c=a.findKey(r,i);c&&(!n||we(r,r[c],c,n))&&(delete r[c],s=!0)}}return a.isArray(t)?t.forEach(o):o(t),s}clear(t){const n=Object.keys(this);let r=n.length,s=!1;for(;r--;){const o=n[r];(!t||we(this,this[o],o,t,!0))&&(delete this[o],s=!0)}return s}normalize(t){const n=this,r={};return a.forEach(this,(s,o)=>{const i=a.findKey(r,o);if(i){n[i]=re(s),delete n[o];return}const c=t?On(o):String(o).trim();c!==o&&delete n[o],n[c]=re(s),r[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return a.forEach(this,(r,s)=>{r!=null&&r!==!1&&(n[s]=t&&a.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
3
+ `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(s=>r.set(s)),r}static accessor(t){const r=(this[et]=this[et]={accessors:{}}).accessors,s=this.prototype;function o(i){const c=X(i);r[c]||(Nn(s,i),r[c]=!0)}return a.isArray(t)?t.forEach(o):o(t),this}};P.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(P.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),a.freezeMethods(P);function be(e,t){const n=this||Q,r=t||n,s=P.from(r.headers);let o=r.data;return a.forEach(e,function(c){o=c.call(n,o,s.normalize(),t?t.status:void 0)}),s.normalize(),o}function tt(e){return!!(e&&e.__CANCEL__)}function H(e,t,n){m.call(this,e??"canceled",m.ERR_CANCELED,t,n),this.name="CanceledError"}a.inherits(H,m,{__CANCEL__:!0});function nt(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new m("Request failed with status code "+n.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function xn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Un(e,t){e=e||10;const n=new Array(e),r=new Array(e);let s=0,o=0,i;return t=t!==void 0?t:1e3,function(f){const u=Date.now(),l=r[o];i||(i=u),n[s]=f,r[s]=u;let d=o,w=0;for(;d!==s;)w+=n[d++],d=d%e;if(s=(s+1)%e,s===o&&(o=(o+1)%e),u-i<t)return;const E=l&&u-l;return E?Math.round(w*1e3/E):void 0}}function Ln(e,t){let n=0,r=1e3/t,s,o;const i=(u,l=Date.now())=>{n=l,s=null,o&&(clearTimeout(o),o=null),e.apply(null,u)};return[(...u)=>{const l=Date.now(),d=l-n;d>=r?i(u,l):(s=u,o||(o=setTimeout(()=>{o=null,i(s)},r-d)))},()=>s&&i(s)]}const se=(e,t,n=3)=>{let r=0;const s=Un(50,250);return Ln(o=>{const i=o.loaded,c=o.lengthComputable?o.total:void 0,f=i-r,u=s(f),l=i<=c;r=i;const d={loaded:i,total:c,progress:c?i/c:void 0,bytes:f,rate:u||void 0,estimated:u&&c&&l?(c-i)/u:void 0,event:o,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(d)},n)},rt=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},st=e=>(...t)=>a.asap(()=>e(...t)),Dn=_.hasStandardBrowserEnv?function(){const t=_.navigator&&/(msie|trident)/i.test(_.navigator.userAgent),n=document.createElement("a");let r;function s(o){let i=o;return t&&(n.setAttribute("href",i),i=n.href),n.setAttribute("href",i),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=s(window.location.href),function(i){const c=a.isString(i)?s(i):i;return c.protocol===r.protocol&&c.host===r.host}}():function(){return function(){return!0}}(),Fn=_.hasStandardBrowserEnv?{write(e,t,n,r,s,o){const i=[e+"="+encodeURIComponent(t)];a.isNumber(n)&&i.push("expires="+new Date(n).toGMTString()),a.isString(r)&&i.push("path="+r),a.isString(s)&&i.push("domain="+s),o===!0&&i.push("secure"),document.cookie=i.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function Bn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function kn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ot(e,t){return e&&!Bn(t)?kn(e,t):t}const it=e=>e instanceof P?{...e}:e;function v(e,t){t=t||{};const n={};function r(u,l,d){return a.isPlainObject(u)&&a.isPlainObject(l)?a.merge.call({caseless:d},u,l):a.isPlainObject(l)?a.merge({},l):a.isArray(l)?l.slice():l}function s(u,l,d){if(a.isUndefined(l)){if(!a.isUndefined(u))return r(void 0,u,d)}else return r(u,l,d)}function o(u,l){if(!a.isUndefined(l))return r(void 0,l)}function i(u,l){if(a.isUndefined(l)){if(!a.isUndefined(u))return r(void 0,u)}else return r(void 0,l)}function c(u,l,d){if(d in t)return r(u,l);if(d in e)return r(void 0,u)}const f={url:o,method:o,data:o,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,responseEncoding:i,validateStatus:c,headers:(u,l)=>s(it(u),it(l),!0)};return a.forEach(Object.keys(Object.assign({},e,t)),function(l){const d=f[l]||s,w=d(e[l],t[l],l);a.isUndefined(w)&&d!==c||(n[l]=w)}),n}const at=e=>{const t=v({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:i,auth:c}=t;t.headers=i=P.from(i),t.url=Xe(ot(t.baseURL,t.url),e.params,e.paramsSerializer),c&&i.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):"")));let f;if(a.isFormData(n)){if(_.hasStandardBrowserEnv||_.hasStandardBrowserWebWorkerEnv)i.setContentType(void 0);else if((f=i.getContentType())!==!1){const[u,...l]=f?f.split(";").map(d=>d.trim()).filter(Boolean):[];i.setContentType([u||"multipart/form-data",...l].join("; "))}}if(_.hasStandardBrowserEnv&&(r&&a.isFunction(r)&&(r=r(t)),r||r!==!1&&Dn(t.url))){const u=s&&o&&Fn.read(o);u&&i.set(s,u)}return t},vn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const s=at(e);let o=s.data;const i=P.from(s.headers).normalize();let{responseType:c,onUploadProgress:f,onDownloadProgress:u}=s,l,d,w,E,h;function y(){E&&E(),h&&h(),s.cancelToken&&s.cancelToken.unsubscribe(l),s.signal&&s.signal.removeEventListener("abort",l)}let p=new XMLHttpRequest;p.open(s.method.toUpperCase(),s.url,!0),p.timeout=s.timeout;function b(){if(!p)return;const C=P.from("getAllResponseHeaders"in p&&p.getAllResponseHeaders()),O={data:!c||c==="text"||c==="json"?p.responseText:p.response,status:p.status,statusText:p.statusText,headers:C,config:e,request:p};nt(function(j){n(j),y()},function(j){r(j),y()},O),p=null}"onloadend"in p?p.onloadend=b:p.onreadystatechange=function(){!p||p.readyState!==4||p.status===0&&!(p.responseURL&&p.responseURL.indexOf("file:")===0)||setTimeout(b)},p.onabort=function(){p&&(r(new m("Request aborted",m.ECONNABORTED,e,p)),p=null)},p.onerror=function(){r(new m("Network Error",m.ERR_NETWORK,e,p)),p=null},p.ontimeout=function(){let L=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const O=s.transitional||Ye;s.timeoutErrorMessage&&(L=s.timeoutErrorMessage),r(new m(L,O.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,p)),p=null},o===void 0&&i.setContentType(null),"setRequestHeader"in p&&a.forEach(i.toJSON(),function(L,O){p.setRequestHeader(O,L)}),a.isUndefined(s.withCredentials)||(p.withCredentials=!!s.withCredentials),c&&c!=="json"&&(p.responseType=s.responseType),u&&([w,h]=se(u,!0),p.addEventListener("progress",w)),f&&p.upload&&([d,E]=se(f),p.upload.addEventListener("progress",d),p.upload.addEventListener("loadend",E)),(s.cancelToken||s.signal)&&(l=C=>{p&&(r(!C||C.type?new H(null,e,p):C),p.abort(),p=null)},s.cancelToken&&s.cancelToken.subscribe(l),s.signal&&(s.signal.aborted?l():s.signal.addEventListener("abort",l)));const S=xn(s.url);if(S&&_.protocols.indexOf(S)===-1){r(new m("Unsupported protocol "+S+":",m.ERR_BAD_REQUEST,e));return}p.send(o||null)})},In=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,s;const o=function(u){if(!s){s=!0,c();const l=u instanceof Error?u:this.reason;r.abort(l instanceof m?l:new H(l instanceof Error?l.message:l))}};let i=t&&setTimeout(()=>{i=null,o(new m(`timeout ${t} of ms exceeded`,m.ETIMEDOUT))},t);const c=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o));const{signal:f}=r;return f.unsubscribe=()=>a.asap(c),f}},qn=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,s;for(;r<n;)s=r+t,yield e.slice(r,s),r=s},jn=async function*(e,t){for await(const n of Mn(e))yield*qn(n,t)},Mn=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},ct=(e,t,n,r)=>{const s=jn(e,t);let o=0,i,c=f=>{i||(i=!0,r&&r(f))};return new ReadableStream({async pull(f){try{const{done:u,value:l}=await s.next();if(u){c(),f.close();return}let d=l.byteLength;if(n){let w=o+=d;n(w)}f.enqueue(new Uint8Array(l))}catch(u){throw c(u),u}},cancel(f){return c(f),s.return()}},{highWaterMark:2})},oe=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",ut=oe&&typeof ReadableStream=="function",$n=oe&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),lt=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Hn=ut&&lt(()=>{let e=!1;const t=new Request(_.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),ft=64*1024,Ee=ut&&lt(()=>a.isReadableStream(new Response("").body)),ie={stream:Ee&&(e=>e.body)};oe&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!ie[t]&&(ie[t]=a.isFunction(e[t])?n=>n[t]():(n,r)=>{throw new m(`Response type '${t}' is not supported`,m.ERR_NOT_SUPPORT,r)})})})(new Response);const Vn=async e=>{if(e==null)return 0;if(a.isBlob(e))return e.size;if(a.isSpecCompliantForm(e))return(await new Request(_.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(a.isArrayBufferView(e)||a.isArrayBuffer(e))return e.byteLength;if(a.isURLSearchParams(e)&&(e=e+""),a.isString(e))return(await $n(e)).byteLength},Kn=async(e,t)=>{const n=a.toFiniteNumber(e.getContentLength());return n??Vn(t)},Se={http:dn,xhr:vn,fetch:oe&&(async e=>{let{url:t,method:n,data:r,signal:s,cancelToken:o,timeout:i,onDownloadProgress:c,onUploadProgress:f,responseType:u,headers:l,withCredentials:d="same-origin",fetchOptions:w}=at(e);u=u?(u+"").toLowerCase():"text";let E=In([s,o&&o.toAbortSignal()],i),h;const y=E&&E.unsubscribe&&(()=>{E.unsubscribe()});let p;try{if(f&&Hn&&n!=="get"&&n!=="head"&&(p=await Kn(l,r))!==0){let O=new Request(t,{method:"POST",body:r,duplex:"half"}),B;if(a.isFormData(r)&&(B=O.headers.get("content-type"))&&l.setContentType(B),O.body){const[j,le]=rt(p,se(st(f)));r=ct(O.body,ft,j,le)}}a.isString(d)||(d=d?"include":"omit");const b="credentials"in Request.prototype;h=new Request(t,{...w,signal:E,method:n.toUpperCase(),headers:l.normalize().toJSON(),body:r,duplex:"half",credentials:b?d:void 0});let S=await fetch(h);const C=Ee&&(u==="stream"||u==="response");if(Ee&&(c||C&&y)){const O={};["status","statusText","headers"].forEach(At=>{O[At]=S[At]});const B=a.toFiniteNumber(S.headers.get("content-length")),[j,le]=c&&rt(B,se(st(c),!0))||[];S=new Response(ct(S.body,ft,j,()=>{le&&le(),y&&y()}),O)}u=u||"text";let L=await ie[a.findKey(ie,u)||"text"](S,e);return!C&&y&&y(),await new Promise((O,B)=>{nt(O,B,{data:L,headers:P.from(S.headers),status:S.status,statusText:S.statusText,config:e,request:h})})}catch(b){throw y&&y(),b&&b.name==="TypeError"&&/fetch/i.test(b.message)?Object.assign(new m("Network Error",m.ERR_NETWORK,e,h),{cause:b.cause||b}):m.from(b,b&&b.code,e,h)}})};a.forEach(Se,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const dt=e=>`- ${e}`,zn=e=>a.isFunction(e)||e===null||e===!1,ht={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let n,r;const s={};for(let o=0;o<t;o++){n=e[o];let i;if(r=n,!zn(n)&&(r=Se[(i=String(n)).toLowerCase()],r===void 0))throw new m(`Unknown adapter '${i}'`);if(r)break;s[i||"#"+o]=r}if(!r){const o=Object.entries(s).map(([c,f])=>`adapter ${c} `+(f===!1?"is not supported by the environment":"is not available in the build"));let i=t?o.length>1?`since :
4
4
  `+o.map(dt).join(`
5
- `):" "+dt(o[0]):"as no adapter specified";throw new m("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return r},adapters:Se};function Ce(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new $(null,e)}function pt(e){return Ce(e),e.headers=O.from(e.headers),e.data=be.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ht.getAdapter(e.adapter||Q.adapter)(e).then(function(r){return Ce(e),r.data=be.call(e,e.transformResponse,r),r.headers=O.from(r.headers),r},function(r){return tt(r)||(Ce(e),r&&r.response&&(r.response.data=be.call(e,e.transformResponse,r.response),r.response.headers=O.from(r.response.headers))),Promise.reject(r)})}const mt="1.7.7",Re={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Re[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const yt={};Re.transitional=function(t,n,r){function s(o,i){return"[Axios v"+mt+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(t===!1)throw new m(s(i," has been removed"+(n?" in "+n:"")),m.ERR_DEPRECATED);return n&&!yt[i]&&(yt[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,c):!0}};function Kn(e,t,n){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const o=r[s],i=t[o];if(i){const c=e[o],l=c===void 0||i(c,o,e);if(l!==!0)throw new m("option "+o+" must be "+l,m.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new m("Unknown option "+o,m.ERR_BAD_OPTION)}}const Te={assertOptions:Kn,validators:Re},D=Te.validators;let I=class{constructor(t){this.defaults=t,this.interceptors={request:new Xe,response:new Xe}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
6
- `+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=v(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&Te.assertOptions(r,{silentJSONParsing:D.transitional(D.boolean),forcedJSONParsing:D.transitional(D.boolean),clarifyTimeoutError:D.transitional(D.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:Te.assertOptions(s,{encode:D.function,serialize:D.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],h=>{delete o[h]}),n.headers=O.concat(i,o);const c=[];let l=!0;this.interceptors.request.forEach(function(y){typeof y.runWhen=="function"&&y.runWhen(n)===!1||(l=l&&y.synchronous,c.unshift(y.fulfilled,y.rejected))});const u=[];this.interceptors.response.forEach(function(y){u.push(y.fulfilled,y.rejected)});let f,d=0,w;if(!l){const h=[pt.bind(this),void 0];for(h.unshift.apply(h,c),h.push.apply(h,u),w=h.length,f=Promise.resolve(n);d<w;)f=f.then(h[d++],h[d++]);return f}w=c.length;let E=n;for(d=0;d<w;){const h=c[d++],y=c[d++];try{E=h(E)}catch(p){y.call(this,p);break}}try{f=pt.call(this,E)}catch(h){return Promise.reject(h)}for(d=0,w=u.length;d<w;)f=f.then(u[d++],u[d++]);return f}getUri(t){t=v(this.defaults,t);const n=ot(t.baseURL,t.url);return Ge(n,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){I.prototype[t]=function(n,r){return this.request(v(r||{},{method:t,url:n,data:(r||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function n(r){return function(o,i,c){return this.request(v(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}I.prototype[t]=n(),I.prototype[t+"Form"]=n(!0)});let Jn=class At{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(s=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},t(function(o,i,c){r.reason||(r.reason=new $(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new At(function(s){t=s}),cancel:t}}};function Wn(e){return function(n){return e.apply(null,n)}}function Qn(e){return a.isObject(e)&&e.isAxiosError===!0}const Ae={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ae).forEach(([e,t])=>{Ae[t]=e});function gt(e){const t=new I(e),n=A(I.prototype.request,t);return a.extend(n,I.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return gt(v(e,s))},n}const g=gt(Q);g.Axios=I,g.CanceledError=$,g.CancelToken=Jn,g.isCancel=tt,g.VERSION=mt,g.toFormData=ne,g.AxiosError=m,g.Cancel=g.CanceledError,g.all=function(t){return Promise.all(t)},g.spread=Wn,g.isAxiosError=Qn,g.mergeConfig=v,g.AxiosHeaders=O,g.formToJSON=e=>Ze(a.isHTMLForm(e)?new FormData(e):e),g.getAdapter=ht.getAdapter,g.HttpStatusCode=Ae,g.default=g;const{Axios:Qr,AxiosError:ae,CanceledError:Gr,isCancel:Xr,CancelToken:Yr,VERSION:Zr,all:es,Cancel:ts,isAxiosError:ns,spread:rs,toFormData:ss,AxiosHeaders:os,HttpStatusCode:is,formToJSON:as,getAdapter:cs,mergeConfig:us}=g;class Pe extends Error{constructor(n){super(n.join(", "));T(this,"errors");this.name="ValidationError",this.errors=n}}class Oe extends Error{constructor(n){super("Address already registered.");T(this,"address");this.name="AddressInUseError",this.address=n}}class _e extends Error{constructor(n){super("Code already registered.");T(this,"code");this.name="CodeInUseError",this.code=n}}class xe extends Error{constructor(){super("Invalid signature provided"),this.name="InvalidSignatureError"}}class Gn{constructor(t){T(this,"httpClient");T(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async create(t,n,r,s,o){var i;try{await this.httpClient.post({path:"/affiliates",postData:{address:t,blockchain:n,name:r,code:r,signature:s,account_chain_id:o}})}catch(c){if(c instanceof ae){const l=(i=c.response)==null?void 0:i.data;if(typeof(l==null?void 0:l.message)=="string"){const u=l.message.toLowerCase();throw u=="invalid signature"?new xe:u=="address in use"?new Oe(t):u=="code in use"?new _e(r):new Error(u)}else if((l==null?void 0:l.message)instanceof Array)throw new Pe(l.message)}throw c}}async update(t,n,r,s,o){var i;try{await this.httpClient.post({path:`/affiliates/${t}`,postData:{code:r,address:t,blockchain:n,signature:s,account_chain_id:o}})}catch(c){if(c instanceof ae){const l=(i=c.response)==null?void 0:i.data;if(typeof(l==null?void 0:l.message)=="string"){const u=l.message.toLowerCase();throw u=="invalid signature"?new xe:u=="address in use"?new Oe(t):u=="code in use"?new _e(r):new Error(u)}else if((l==null?void 0:l.message)instanceof Array)throw new Pe(l.message)}throw c}}async isCodeFree(t){var n;try{return await this.httpClient.get({path:`/affiliates/codes/${t}`}),!1}catch(r){if(r instanceof ae&&((n=r.response)==null?void 0:n.status)===404)return!0;throw console.error("Fuul SDK: Could not check affiliate code",r),r}}async getCode(t,n){var r;try{return(await this.httpClient.get({path:`/affiliates/${t}`,queryParams:{blockchain:n}})).data.code}catch(s){if(s instanceof ae&&((r=s.response)==null?void 0:r.status)===404)return null;throw console.error("Fuul SDK: Could not get affiliate code",s),s}}}const Xn="/audiences";class Yn{constructor(t){T(this,"httpClient");T(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserAudiences(t){return(await this.httpClient.get({path:`${Xn}/user`,queryParams:{...t}})).data}}class Zn{constructor(t){T(this,"httpClient");this.httpClient=t.httpClient}async getAll(t){const{data:n}=await this.httpClient.get({path:"conversions",queryParams:{...t}});return n}}const wt="fuul.sent",er=60;class tr{constructor(t){T(this,"debug");T(this,"httpClient");this.httpClient=t.httpClient,this.debug=!!t.debug}async sendEvent(t,n){if(this.isDuplicate(t)){this.debug&&console.debug("Fuul SDK: Event is considered duplicate and will not be sent");return}if(!n||!Array.isArray(n)||n.length===0)await this.httpClient.post({path:"events",postData:t});else for(const r of n){const s=structuredClone({...t,project_id:r});s.metadata.project_id=r,await this.httpClient.post({path:"events",postData:s,queryParams:{project_id:r}})}this.debug&&console.debug(`Fuul SDK: Sent '${t.name}' event`),this.saveSentEvent(t)}isDuplicate(t){const n=`${wt}_${t.name}`,r=localStorage.getItem(n);if(!r)return!1;const s=JSON.parse(r);if(this.getCurrentTimestamp()-s.timestamp>er)return!1;let l=!1;t.metadata&&(l=s.metadata.tracking_id===t.metadata.tracking_id&&s.metadata.project_id===t.metadata.project_id&&s.metadata.referrer===t.metadata.referrer&&s.metadata.source===t.metadata.source&&s.metadata.category===t.metadata.category&&s.metadata.title===t.metadata.title&&s.metadata.tag===t.metadata.tag&&s.user_address===t.user_address&&s.signature===t.signature&&s.signature_message===t.signature_message);let u=!1;return t.args&&s.args&&(u=s.args.page===t.args.page),u&&l}getCurrentTimestamp(){return Date.now()/1e3}saveSentEvent(t){const n=`${wt}_${t.name}`,r=this.getCurrentTimestamp(),s={...t,timestamp:r};localStorage.setItem(n,JSON.stringify(s))}}const nr={version:"6.0.1"};class rr{constructor(t){T(this,"client");T(this,"defaultQueryParams");this.client=g.create({...t,headers:{Authorization:`Bearer ${t.apiKey}`,"X-Fuul-Sdk-Version":nr.version}}),this.defaultQueryParams=t.queryParams||{}}makeQueryParams(t){return Object.assign({},this.defaultQueryParams||{},t||{})}async get(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),method:"GET"})}async post(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),data:t.postData,method:"POST"})}async put(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),data:t.postData,method:"PUT"})}async delete(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),method:"DELETE"})}}class sr{constructor(t){T(this,"httpClient");this.httpClient=t.httpClient}async getPayoutsLeaderboard(t){return(await this.httpClient.get({path:"/payouts/leaderboard/payouts",queryParams:{...t}})).data}async getPointsLeaderboard(t){return(await this.httpClient.get({path:"/payouts/leaderboard/points",queryParams:{...t}})).data}async getReferredUsersLeaderboard(t){return(await this.httpClient.get({path:"/leaderboard/referred",queryParams:{...t}})).data}}const X="/payouts";class or{constructor(t){T(this,"httpClient");T(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserPayoutsByConversion(t){return(await this.httpClient.get({path:X,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsByConversion(t){return(await this.httpClient.get({path:X,queryParams:{...t,type:"point"}})).data}async getUserPayoutMovements(t){return(await this.httpClient.get({path:`${X}/movements`,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsMovements(t){return(await this.httpClient.get({path:`${X}/movements`,queryParams:{...t,type:"point"}})).data}async getVolumeLeaderboard(t){return(await this.httpClient.get({path:`${X}/leaderboard/volume`,queryParams:{...t}})).data}}let ir=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,n)=>(n&=63,n<36?t+=n.toString(36):n<62?t+=(n-26).toString(36).toUpperCase():n>62?t+="-":t+="_",t),"");const ar="fuul.tracking_id",Ne=()=>hr(ar,()=>ir()),bt=()=>V("af")||V("referrer"),cr=()=>document.referrer,ur=()=>pr(),lr=()=>V("category"),fr=()=>V("title"),dr=()=>V("tag"),hr=(e,t)=>{const n=localStorage.getItem(e);if(n)return n;{const r=t();return r?localStorage.setItem(e,r):localStorage.removeItem(e),r}},V=e=>new URLSearchParams(window.location.search).get(e),pr=()=>{const e=V("source");if(e)return e},mr="/user";class yr{constructor(t){T(this,"httpClient");this.httpClient=t.httpClient}async getUserAffiliates(t){return(await this.httpClient.get({path:mr,queryParams:{...t}})).data.affiliates}}const gr="https://api.fuul.xyz/api/v1/";let q=!1,Ue=!1,Le,F,Et,St,z,ce,K,Ct,ue;function wr(e){q=!!e.debug,!Ue&&(Le=e.apiKey,Ir(),F=qr(e.baseApiUrl??gr,e.defaultQueryParams??{}),Et=new Zn({httpClient:F,debug:q}),ce=new tr({httpClient:F,debug:q}),z=new Gn({httpClient:F,debug:q}),K=new or({httpClient:F,debug:q}),St=new yr({httpClient:F}),Ct=new Yn({httpClient:F,debug:q}),ue=new sr({httpClient:F}),Ue=!0,q&&console.debug("Fuul SDK: init() complete"))}function U(){if(!Ue)throw new Error("Fuul SDK: You need to call init() to initialize the library before using any methods")}async function br(e,t){U(),De(),Fe();const n={name:e,args:t??{},metadata:{tracking_id:Ne()}};await ce.sendEvent(n)}async function Er(e,t){U(),De(),Fe();const n={name:"pageview",args:{page:e??document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Ne(),referrer_url:cr(),source:ur(),affiliate_id:bt()??void 0,referrer:bt()??void 0,category:lr()??void 0,title:fr()??void 0,tag:dr()??void 0}};await ce.sendEvent(n,t)}async function Sr(e,t){U(),De(),Fe();const n={name:"connect_wallet",user_address:e.address,blockchain:e.blockchain,args:{page:document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Ne()}};e!=null&&e.signature&&(n.signature=e==null?void 0:e.signature,n.signature_message=e==null?void 0:e.message),e!=null&&e.accountChainId&&(n.account_chain_id=e.accountChainId),await ce.sendEvent(n,t)}async function Cr(e){U(),await z.create(e.address,e.blockchain,e.code,e.signature,e.accountChainId)}async function Rr(e){U(),await z.update(e.address,e.blockchain,e.code,e.signature,e.accountChainId)}async function Tr(e,t){return U(),await z.getCode(e,t)}async function Ar(e){return U(),await z.isCodeFree(e)}async function Pr(e,t,n,r){U();const s=await z.getCode(t,n),o=new URLSearchParams({af:s??t});return r!=null&&r.title&&o.append("af_title",r.title),r!=null&&r.format&&o.append("af_format",r.format),r!=null&&r.place&&o.append("af_place",r.place),`${e}?${o.toString()}`}function Or(e){return ue.getPayoutsLeaderboard(e)}function _r(e){return ue.getPointsLeaderboard(e)}function xr(e){return ue.getReferredUsersLeaderboard(e)}function Nr(e){return K.getVolumeLeaderboard(e)}function Ur(e){return K.getUserPayoutsByConversion(e)}function Lr(e){return K.getUserPointsByConversion(e)}function Dr(e){return K.getUserPayoutMovements(e)}function Fr(e){return K.getUserPointsMovements(e)}async function Br(e){return U(),Et.getAll(e)}async function kr(e){return U(),St.getUserAffiliates(e)}async function vr(e){return U(),Ct.getUserAudiences(e)}function De(){if(typeof window>"u"||typeof document>"u")throw new Error("Fuul SDK: Browser context required")}function Fe(){if(navigator.webdriver)throw new Error("Fuul SDK: You are using a browser automation tool")}function Ir(){if(!Le)throw new Error("Fuul SDK: Invalid API key")}function qr(e,t){return new rr({baseURL:e,timeout:3e4,apiKey:Le,queryParams:t})}const jr={init:wr,sendEvent:br,sendPageview:Er,sendConnectWallet:Sr,generateTrackingLink:Pr,getConversions:Br,createAffiliateCode:Cr,updateAffiliateCode:Rr,getAffiliateCode:Tr,isAffiliateCodeFree:Ar,getPayoutsLeaderboard:Or,getPointsLeaderboard:_r,getReferredUsersLeaderboard:xr,getUserAudiences:vr,getUserPayoutsByConversion:Ur,getUserPointsByConversion:Lr,getUserPointsMovements:Fr,getUserPayoutMovements:Dr,getUserAffiliates:kr,getVolumeLeaderboard:Nr};var Rt=(e=>(e.Ethereum="ethereum",e.Solana="solana",e))(Rt||{});R.AddressInUseError=Oe,R.BlockchainType=Rt,R.CodeInUseError=_e,R.Fuul=jr,R.InvalidSignatureError=xe,R.ValidationError=Pe,Object.defineProperty(R,Symbol.toStringTag,{value:"Module"})});
5
+ `):" "+dt(o[0]):"as no adapter specified";throw new m("There is no suitable adapter to dispatch the request "+i,"ERR_NOT_SUPPORT")}return r},adapters:Se};function Ce(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new H(null,e)}function pt(e){return Ce(e),e.headers=P.from(e.headers),e.data=be.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ht.getAdapter(e.adapter||Q.adapter)(e).then(function(r){return Ce(e),r.data=be.call(e,e.transformResponse,r),r.headers=P.from(r.headers),r},function(r){return tt(r)||(Ce(e),r&&r.response&&(r.response.data=be.call(e,e.transformResponse,r.response),r.response.headers=P.from(r.response.headers))),Promise.reject(r)})}const mt="1.7.7",Re={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Re[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const yt={};Re.transitional=function(t,n,r){function s(o,i){return"[Axios v"+mt+"] Transitional option '"+o+"'"+i+(r?". "+r:"")}return(o,i,c)=>{if(t===!1)throw new m(s(i," has been removed"+(n?" in "+n:"")),m.ERR_DEPRECATED);return n&&!yt[i]&&(yt[i]=!0,console.warn(s(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,i,c):!0}};function Jn(e,t,n){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let s=r.length;for(;s-- >0;){const o=r[s],i=t[o];if(i){const c=e[o],f=c===void 0||i(c,o,e);if(f!==!0)throw new m("option "+o+" must be "+f,m.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new m("Unknown option "+o,m.ERR_BAD_OPTION)}}const Te={assertOptions:Jn,validators:Re},D=Te.validators;let I=class{constructor(t){this.defaults=t,this.interceptors={request:new Ge,response:new Ge}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;const o=s.stack?s.stack.replace(/^.+\n/,""):"";try{r.stack?o&&!String(r.stack).endsWith(o.replace(/^.+\n.+\n/,""))&&(r.stack+=`
6
+ `+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=v(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&Te.assertOptions(r,{silentJSONParsing:D.transitional(D.boolean),forcedJSONParsing:D.transitional(D.boolean),clarifyTimeoutError:D.transitional(D.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:Te.assertOptions(s,{encode:D.function,serialize:D.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=o&&a.merge(o.common,o[n.method]);o&&a.forEach(["delete","get","head","post","put","patch","common"],h=>{delete o[h]}),n.headers=P.concat(i,o);const c=[];let f=!0;this.interceptors.request.forEach(function(y){typeof y.runWhen=="function"&&y.runWhen(n)===!1||(f=f&&y.synchronous,c.unshift(y.fulfilled,y.rejected))});const u=[];this.interceptors.response.forEach(function(y){u.push(y.fulfilled,y.rejected)});let l,d=0,w;if(!f){const h=[pt.bind(this),void 0];for(h.unshift.apply(h,c),h.push.apply(h,u),w=h.length,l=Promise.resolve(n);d<w;)l=l.then(h[d++],h[d++]);return l}w=c.length;let E=n;for(d=0;d<w;){const h=c[d++],y=c[d++];try{E=h(E)}catch(p){y.call(this,p);break}}try{l=pt.call(this,E)}catch(h){return Promise.reject(h)}for(d=0,w=u.length;d<w;)l=l.then(u[d++],u[d++]);return l}getUri(t){t=v(this.defaults,t);const n=ot(t.baseURL,t.url);return Xe(n,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){I.prototype[t]=function(n,r){return this.request(v(r||{},{method:t,url:n,data:(r||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function n(r){return function(o,i,c){return this.request(v(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}I.prototype[t]=n(),I.prototype[t+"Form"]=n(!0)});let Wn=class _t{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(s=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](s);r._listeners=null}),this.promise.then=s=>{let o;const i=new Promise(c=>{r.subscribe(c),o=c}).then(s);return i.cancel=function(){r.unsubscribe(o)},i},t(function(o,i,c){r.reason||(r.reason=new H(o,i,c),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new _t(function(s){t=s}),cancel:t}}};function Qn(e){return function(n){return e.apply(null,n)}}function Xn(e){return a.isObject(e)&&e.isAxiosError===!0}const Ae={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ae).forEach(([e,t])=>{Ae[t]=e});function gt(e){const t=new I(e),n=A(I.prototype.request,t);return a.extend(n,I.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return gt(v(e,s))},n}const g=gt(Q);g.Axios=I,g.CanceledError=H,g.CancelToken=Wn,g.isCancel=tt,g.VERSION=mt,g.toFormData=ne,g.AxiosError=m,g.Cancel=g.CanceledError,g.all=function(t){return Promise.all(t)},g.spread=Qn,g.isAxiosError=Xn,g.mergeConfig=v,g.AxiosHeaders=P,g.formToJSON=e=>Ze(a.isHTMLForm(e)?new FormData(e):e),g.getAdapter=ht.getAdapter,g.HttpStatusCode=Ae,g.default=g;const{Axios:Gr,AxiosError:ae,CanceledError:Yr,isCancel:Zr,CancelToken:es,VERSION:ts,all:ns,Cancel:rs,isAxiosError:ss,spread:os,toFormData:is,AxiosHeaders:as,HttpStatusCode:cs,formToJSON:us,getAdapter:ls,mergeConfig:fs}=g;class _e extends Error{constructor(n){super(n.join(", "));T(this,"errors");this.name="ValidationError",this.errors=n}}class Pe extends Error{constructor(n){super("Address already registered.");T(this,"address");this.name="AddressInUseError",this.address=n}}class Oe extends Error{constructor(n){super("Code already registered.");T(this,"code");this.name="CodeInUseError",this.code=n}}class Ne extends Error{constructor(){super("Invalid signature provided"),this.name="InvalidSignatureError"}}class Gn{constructor(t){T(this,"httpClient");T(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async create(t,n,r,s,o){var i;try{await this.httpClient.post({path:"/affiliates",postData:{address:t,blockchain:n,name:r,code:r,signature:s,account_chain_id:o}})}catch(c){if(c instanceof ae){const f=(i=c.response)==null?void 0:i.data;if(typeof(f==null?void 0:f.message)=="string"){const u=f.message.toLowerCase();throw u=="invalid signature"?new Ne:u=="address in use"?new Pe(t):u=="code in use"?new Oe(r):new Error(u)}else if((f==null?void 0:f.message)instanceof Array)throw new _e(f.message)}throw c}}async update(t,n,r,s,o){var i;try{await this.httpClient.post({path:`/affiliates/${t}`,postData:{code:r,address:t,blockchain:n,signature:s,account_chain_id:o}})}catch(c){if(c instanceof ae){const f=(i=c.response)==null?void 0:i.data;if(typeof(f==null?void 0:f.message)=="string"){const u=f.message.toLowerCase();throw u=="invalid signature"?new Ne:u=="address in use"?new Pe(t):u=="code in use"?new Oe(r):new Error(u)}else if((f==null?void 0:f.message)instanceof Array)throw new _e(f.message)}throw c}}async isCodeFree(t){var n;try{return await this.httpClient.get({path:`/affiliates/codes/${t}`}),!1}catch(r){if(r instanceof ae&&((n=r.response)==null?void 0:n.status)===404)return!0;throw console.error("Fuul SDK: Could not check affiliate code",r),r}}async getCode(t,n){var r;try{return(await this.httpClient.get({path:`/affiliates/${t}`,queryParams:{blockchain:n}})).data.code}catch(s){if(s instanceof ae&&((r=s.response)==null?void 0:r.status)===404)return null;throw console.error("Fuul SDK: Could not get affiliate code",s),s}}}const Yn="/audiences";class Zn{constructor(t){T(this,"httpClient");T(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserAudiences(t){return(await this.httpClient.get({path:`${Yn}/user`,queryParams:{...t}})).data}}class er{constructor(t){T(this,"httpClient");this.httpClient=t.httpClient}async getAll(t){const{data:n}=await this.httpClient.get({path:"conversions",queryParams:{...t}});return n}}const wt="fuul.sent",tr=60,nr="connect_wallet",bt=10;class rr{constructor(t){T(this,"debug");T(this,"httpClient");this.httpClient=t.httpClient,this.debug=!!t.debug}async sendEvent(t,n){if(this.isDuplicate(t)){this.debug&&console.debug("Fuul SDK: Event is considered duplicate and will not be sent");return}if(!n||!Array.isArray(n)||n.length===0)await this.httpClient.post({path:"events",postData:t});else for(const r of n){const s=structuredClone({...t,project_id:r});s.metadata.project_id=r,await this.httpClient.post({path:"events",postData:s,queryParams:{project_id:r}})}this.debug&&console.debug(`Fuul SDK: Sent '${t.name}' event`),this.saveSentEvent(t)}isDuplicate(t){const n=`${wt}_${t.name}`,r=localStorage.getItem(n);if(!r)return!1;const s=JSON.parse(r);if(this.getCurrentTimestamp()-s.timestamp>tr)return!1;let f=!1;t.metadata&&(f=s.metadata.tracking_id===t.metadata.tracking_id&&s.metadata.project_id===t.metadata.project_id&&s.metadata.referrer===t.metadata.referrer&&s.metadata.source===t.metadata.source&&s.metadata.category===t.metadata.category&&s.metadata.title===t.metadata.title&&s.metadata.tag===t.metadata.tag&&s.user_address===t.user_address&&s.signature===t.signature&&s.signature_message===t.signature_message);let u=!1;return t.args&&s.args&&(u=s.args.page===t.args.page),u&&f}getCurrentTimestamp(){return Date.now()/1e3}saveSentEvent(t){var i,c;const n=`${wt}_${t.name}`,r=`${n}_all`,s=this.getCurrentTimestamp(),o={...t,timestamp:s};if(localStorage.setItem(n,JSON.stringify(o)),t.name===nr){const f=JSON.parse(localStorage.getItem(r)||"[]"),u={name:t.name,user_address:t.user_address,tracking_id:(i=t.metadata)==null?void 0:i.tracking_id,page:(c=t.args)==null?void 0:c.page},l=[...f,u];l.length>bt&&l.splice(0,l.length-bt),localStorage.setItem(r,JSON.stringify(l))}}}const sr={version:"6.1.0"};class or{constructor(t){T(this,"client");T(this,"defaultQueryParams");this.client=g.create({...t,headers:{Authorization:`Bearer ${t.apiKey}`,"X-Fuul-Sdk-Version":sr.version}}),this.defaultQueryParams=t.queryParams||{}}makeQueryParams(t){return Object.assign({},this.defaultQueryParams||{},t||{})}async get(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),method:"GET"})}async post(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),data:t.postData,method:"POST"})}async put(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),data:t.postData,method:"PUT"})}async delete(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),method:"DELETE"})}}class ir{constructor(t){T(this,"httpClient");this.httpClient=t.httpClient}async getPayoutsLeaderboard(t){return(await this.httpClient.get({path:"/payouts/leaderboard/payouts",queryParams:{...t}})).data}async getPointsLeaderboard(t){return(await this.httpClient.get({path:"/payouts/leaderboard/points",queryParams:{...t}})).data}async getReferredUsersLeaderboard(t){return(await this.httpClient.get({path:"/leaderboard/referred",queryParams:{...t}})).data}}const G="/payouts";class ar{constructor(t){T(this,"httpClient");T(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserPayoutsByConversion(t){return(await this.httpClient.get({path:G,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsByConversion(t){return(await this.httpClient.get({path:G,queryParams:{...t,type:"point"}})).data}async getUserPayoutMovements(t){return(await this.httpClient.get({path:`${G}/movements`,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsMovements(t){return(await this.httpClient.get({path:`${G}/movements`,queryParams:{...t,type:"point"}})).data}async getVolumeLeaderboard(t){return(await this.httpClient.get({path:`${G}/leaderboard/volume`,queryParams:{...t}})).data}}let cr=(e=21)=>crypto.getRandomValues(new Uint8Array(e)).reduce((t,n)=>(n&=63,n<36?t+=n.toString(36):n<62?t+=(n-26).toString(36).toUpperCase():n>62?t+="-":t+="_",t),"");const ur="fuul.tracking_id",xe=()=>mr(ur,()=>cr()),Et=()=>V("af")||V("referrer"),lr=()=>document.referrer,fr=()=>yr(),dr=()=>V("category"),hr=()=>V("title"),pr=()=>V("tag"),mr=(e,t)=>{const n=localStorage.getItem(e);if(n)return n;{const r=t();return r?localStorage.setItem(e,r):localStorage.removeItem(e),r}},V=e=>new URLSearchParams(window.location.search).get(e),yr=()=>{const e=V("source");if(e)return e},gr="/user";class wr{constructor(t){T(this,"httpClient");this.httpClient=t.httpClient}async getUserAffiliates(t){return(await this.httpClient.get({path:gr,queryParams:{...t}})).data.affiliates}}const br="https://api.fuul.xyz/api/v1/";let q=!1,Ue=!1,Le,F,St,Ct,K,ce,z,Rt,ue;function Er(e){q=!!e.debug,!Ue&&(Le=e.apiKey,jr(),F=Mr(e.baseApiUrl??br,e.defaultQueryParams??{}),St=new er({httpClient:F,debug:q}),ce=new rr({httpClient:F,debug:q}),K=new Gn({httpClient:F,debug:q}),z=new ar({httpClient:F,debug:q}),Ct=new wr({httpClient:F}),Rt=new Zn({httpClient:F,debug:q}),ue=new ir({httpClient:F}),Ue=!0,q&&console.debug("Fuul SDK: init() complete"))}function U(){if(!Ue)throw new Error("Fuul SDK: You need to call init() to initialize the library before using any methods")}async function Sr(e,t){U(),De(),Fe();const n={name:e,args:t??{},metadata:{tracking_id:xe()}};await ce.sendEvent(n)}async function Cr(e,t){U(),De(),Fe();const n={name:"pageview",args:{page:e??document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:xe(),referrer_url:lr(),source:fr(),affiliate_id:Et()??void 0,referrer:Et()??void 0,category:dr()??void 0,title:hr()??void 0,tag:pr()??void 0}};await ce.sendEvent(n,t)}async function Rr(e,t){U(),De(),Fe();const n={name:"connect_wallet",user_address:e.address,blockchain:e.blockchain,args:{page:document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:xe()}};e!=null&&e.signature&&(n.signature=e==null?void 0:e.signature,n.signature_message=e==null?void 0:e.message),e!=null&&e.accountChainId&&(n.account_chain_id=e.accountChainId),await ce.sendEvent(n,t)}async function Tr(e){U(),await K.create(e.address,e.blockchain,e.code,e.signature,e.accountChainId)}async function Ar(e){U(),await K.update(e.address,e.blockchain,e.code,e.signature,e.accountChainId)}async function _r(e,t){return U(),await K.getCode(e,t)}async function Pr(e){return U(),await K.isCodeFree(e)}async function Or(e,t,n,r){U();const s=await K.getCode(t,n),o=new URLSearchParams({af:s??t});return r!=null&&r.title&&o.append("af_title",r.title),r!=null&&r.format&&o.append("af_format",r.format),r!=null&&r.place&&o.append("af_place",r.place),`${e}?${o.toString()}`}function Nr(e){return ue.getPayoutsLeaderboard(e)}function xr(e){return ue.getPointsLeaderboard(e)}function Ur(e){return ue.getReferredUsersLeaderboard(e)}function Lr(e){return z.getVolumeLeaderboard(e)}function Dr(e){return z.getUserPayoutsByConversion(e)}function Fr(e){return z.getUserPointsByConversion(e)}function Br(e){return z.getUserPayoutMovements(e)}function kr(e){return z.getUserPointsMovements(e)}async function vr(e){return U(),St.getAll(e)}async function Ir(e){return U(),Ct.getUserAffiliates(e)}async function qr(e){return U(),Rt.getUserAudiences(e)}function De(){if(typeof window>"u"||typeof document>"u")throw new Error("Fuul SDK: Browser context required")}function Fe(){if(navigator.webdriver)throw new Error("Fuul SDK: You are using a browser automation tool")}function jr(){if(!Le)throw new Error("Fuul SDK: Invalid API key")}function Mr(e,t){return new or({baseURL:e,timeout:3e4,apiKey:Le,queryParams:t})}const $r={init:Er,sendEvent:Sr,sendPageview:Cr,sendConnectWallet:Rr,generateTrackingLink:Or,getConversions:vr,createAffiliateCode:Tr,updateAffiliateCode:Ar,getAffiliateCode:_r,isAffiliateCodeFree:Pr,getPayoutsLeaderboard:Nr,getPointsLeaderboard:xr,getReferredUsersLeaderboard:Ur,getUserAudiences:qr,getUserPayoutsByConversion:Dr,getUserPointsByConversion:Fr,getUserPointsMovements:kr,getUserPayoutMovements:Br,getUserAffiliates:Ir,getVolumeLeaderboard:Lr};var Tt=(e=>(e.Ethereum="ethereum",e.Solana="solana",e))(Tt||{});R.AddressInUseError=Pe,R.BlockchainType=Tt,R.CodeInUseError=Oe,R.Fuul=$r,R.InvalidSignatureError=Ne,R.ValidationError=_e,Object.defineProperty(R,Symbol.toStringTag,{value:"Module"})});
@@ -1,4 +1,4 @@
1
- declare const _default: { "version": "6.0.1" }
1
+ declare const _default: { "version": "6.1.0" }
2
2
  ;
3
3
 
4
4
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fuul/sdk",
3
- "version": "6.0.1",
3
+ "version": "6.1.0",
4
4
  "description": "Fuul SDK",
5
5
  "keywords": [
6
6
  "Fuul",