@fuul/sdk 4.12.0 → 4.12.1
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.mjs +2 -2
- package/dist/index.umd.js +1 -1
- package/dist/release.json.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1878,7 +1878,7 @@ class ar {
|
|
|
1878
1878
|
localStorage.setItem(n, JSON.stringify(s));
|
|
1879
1879
|
}
|
|
1880
1880
|
}
|
|
1881
|
-
const cr = "4.12.
|
|
1881
|
+
const cr = "4.12.1", ur = {
|
|
1882
1882
|
version: cr
|
|
1883
1883
|
};
|
|
1884
1884
|
class lr {
|
|
@@ -2095,7 +2095,7 @@ function Kr() {
|
|
|
2095
2095
|
function Jr(e, t) {
|
|
2096
2096
|
return new lr({
|
|
2097
2097
|
baseURL: e,
|
|
2098
|
-
timeout:
|
|
2098
|
+
timeout: 3e4,
|
|
2099
2099
|
apiKey: Te,
|
|
2100
2100
|
queryParams: t
|
|
2101
2101
|
});
|
package/dist/index.umd.js
CHANGED
|
@@ -3,4 +3,4 @@
|
|
|
3
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}};_.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(_.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),a.freezeMethods(_);function be(e,t){const n=this||X,r=t||n,s=_.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 V(e,t,n){m.call(this,e??"canceled",m.ERR_CANCELED,t,n),this.name="CanceledError"}a.inherits(V,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 Pn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function xn(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 Nn(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=xn(50,250);return Nn(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)),Un=O.hasStandardBrowserEnv?function(){const t=O.navigator&&/(msie|trident)/i.test(O.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}}(),Ln=O.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 Dn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ot(e,t){return e&&!Fn(t)?Dn(e,t):t}const it=e=>e instanceof _?{...e}:e;function I(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=I({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:s,xsrfCookieName:o,headers:i,auth:c}=t;t.headers=i=_.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 f;if(a.isFormData(n)){if(O.hasStandardBrowserEnv||O.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(O.hasStandardBrowserEnv&&(r&&a.isFunction(r)&&(r=r(t)),r||r!==!1&&Un(t.url))){const u=s&&o&&Ln.read(o);u&&i.set(s,u)}return t},Bn=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const s=at(e);let o=s.data;const i=_.from(s.headers).normalize();let{responseType:c,onUploadProgress:f,onDownloadProgress:u}=s,l,d,w,E,h;function g(){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=_.from("getAllResponseHeaders"in p&&p.getAllResponseHeaders()),P={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),g()},function(j){r(j),g()},P),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 P=s.transitional||Qe;s.timeoutErrorMessage&&(L=s.timeoutErrorMessage),r(new m(L,P.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){p.setRequestHeader(P,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 V(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=Pn(s.url);if(S&&O.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 l=u instanceof Error?u:this.reason;r.abort(l instanceof m?l:new V(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}},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},kn=async function*(e,t){for await(const n of qn(e))yield*In(n,t)},qn=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=kn(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",jn=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}},$n=ut&<(()=>{let e=!1;const t=new Request(O.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),ft=64*1024,Ee=ut&<(()=>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 Hn=async e=>{if(e==null)return 0;if(a.isBlob(e))return e.size;if(a.isSpecCompliantForm(e))return(await new Request(O.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 jn(e)).byteLength},Vn=async(e,t)=>{const n=a.toFiniteNumber(e.getContentLength());return n??Hn(t)},Se={http:ln,xhr:Bn,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=vn([s,o&&o.toAbortSignal()],i),h;const g=E&&E.unsubscribe&&(()=>{E.unsubscribe()});let p;try{if(f&&$n&&n!=="get"&&n!=="head"&&(p=await Vn(l,r))!==0){let P=new Request(t,{method:"POST",body:r,duplex:"half"}),B;if(a.isFormData(r)&&(B=P.headers.get("content-type"))&&l.setContentType(B),P.body){const[j,le]=rt(p,se(st(f)));r=ct(P.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&&g)){const P={};["status","statusText","headers"].forEach(Rt=>{P[Rt]=S[Rt]});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(),g&&g()}),P)}u=u||"text";let L=await ie[a.findKey(ie,u)||"text"](S,e);return!C&&g&&g(),await new Promise((P,B)=>{nt(P,B,{data:L,headers:_.from(S.headers),status:S.status,statusText:S.statusText,config:e,request:h})})}catch(b){throw g&&g(),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
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 V(null,e)}function pt(e){return Ce(e),e.headers=_.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||X.adapter)(e).then(function(r){return Ce(e),r.data=be.call(e,e.transformResponse,r),r.headers=_.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=_.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 gt={};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&&!gt[i]&&(gt[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],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 Ae={assertOptions:Kn,validators:Re},F=Ae.validators;let k=class{constructor(t){this.defaults=t,this.interceptors={request:new Ye,response:new Ye}}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=I(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&Ae.assertOptions(r,{silentJSONParsing:F.transitional(F.boolean),forcedJSONParsing:F.transitional(F.boolean),clarifyTimeoutError:F.transitional(F.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:Ae.assertOptions(s,{encode:F.function,serialize:F.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=_.concat(i,o);const c=[];let f=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(n)===!1||(f=f&&g.synchronous,c.unshift(g.fulfilled,g.rejected))});const u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.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++],g=c[d++];try{E=h(E)}catch(p){g.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=I(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){k.prototype[t]=function(n,r){return this.request(I(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(I(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}k.prototype[t]=n(),k.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 V(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 Mn(e){return function(n){return e.apply(null,n)}}function Wn(e){return a.isObject(e)&&e.isAxiosError===!0}const Te={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(Te).forEach(([e,t])=>{Te[t]=e});function yt(e){const t=new k(e),n=T(k.prototype.request,t);return a.extend(n,k.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return yt(I(e,s))},n}const y=yt(X);y.Axios=k,y.CanceledError=V,y.CancelToken=Jn,y.isCancel=tt,y.VERSION=mt,y.toFormData=ne,y.AxiosError=m,y.Cancel=y.CanceledError,y.all=function(t){return Promise.all(t)},y.spread=Mn,y.isAxiosError=Wn,y.mergeConfig=I,y.AxiosHeaders=_,y.formToJSON=e=>Ze(a.isHTMLForm(e)?new FormData(e):e),y.getAdapter=ht.getAdapter,y.HttpStatusCode=Te,y.default=y;const{Axios:Wr,AxiosError:ae,CanceledError:Xr,isCancel:Gr,CancelToken:Yr,VERSION:Qr,all:Zr,Cancel:es,isAxiosError:ts,spread:ns,toFormData:rs,AxiosHeaders:ss,HttpStatusCode:os,formToJSON:is,getAdapter:as,mergeConfig:cs}=y;class Oe extends Error{constructor(n){super(n.join(", "));R(this,"errors");this.name="ValidationError",this.errors=n}}class _e extends Error{constructor(n){super("Address already registered.");R(this,"address");this.name="AddressInUseError",this.address=n}}class Pe extends Error{constructor(n){super("Code already registered.");R(this,"code");this.name="CodeInUseError",this.code=n}}class xe extends Error{constructor(){super("Invalid signature provided"),this.name="InvalidSignatureError"}}class Xn{constructor(t){R(this,"httpClient");R(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async create(t,n,r,s){var o;try{await this.httpClient.post("/affiliates",{address:t,name:n,code:n,signature:r,account_chain_id:s})}catch(i){if(i instanceof ae){const c=(o=i.response)==null?void 0:o.data;if(typeof(c==null?void 0:c.message)=="string"){const f=c.message.toLowerCase();throw f=="invalid signature"?new xe:f=="address in use"?new _e(t):f=="code in use"?new Pe(n):new Error(f)}else if((c==null?void 0:c.message)instanceof Array)throw new Oe(c.message)}throw i}}async update(t,n,r,s){var o;try{await this.httpClient.post(`/affiliates/${t}`,{code:n,address:t,signature:r,account_chain_id:s})}catch(i){if(i instanceof ae){const c=(o=i.response)==null?void 0:o.data;if(typeof(c==null?void 0:c.message)=="string"){const f=c.message.toLowerCase();throw f=="invalid signature"?new xe:f=="address in use"?new _e(t):f=="code in use"?new Pe(n):new Error(f)}else if((c==null?void 0:c.message)instanceof Array)throw new Oe(c.message)}throw i}}async isCodeFree(t){var n;try{return await this.httpClient.get(`/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){var n;try{return(await this.httpClient.get(`/affiliates/${t}`)).data.code}catch(r){if(r instanceof ae&&((n=r.response)==null?void 0:n.status)===404)return null;throw console.error("Fuul SDK: Could not get affiliate code",r),r}}}const Gn="/audiences";class Yn{constructor(t){R(this,"httpClient");R(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserAudiences(t){return(await this.httpClient.get(`${Gn}/user`,t)).data}}class Qn{constructor(t){R(this,"httpClient");this.httpClient=t.httpClient}async getAll(t){const{data:n}=await this.httpClient.get("conversions",t);return n}}const wt="fuul.sent",Zn=60;class er{constructor(t){R(this,"debug");R(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("events",t);else for(const r of n){const s=structuredClone({...t,project_id:r});s.metadata.project_id=r,await this.httpClient.post("events",s)}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>Zn)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){const n=`${wt}_${t.name}`,r=this.getCurrentTimestamp(),s={...t,timestamp:r};localStorage.setItem(n,JSON.stringify(s))}}const tr={version:"4.12.0"};class nr{constructor(t){R(this,"client");R(this,"queryParams");this.client=y.create({...t,headers:{Authorization:`Bearer ${t.apiKey}`,"X-Fuul-Sdk-Version":tr.version}}),this.queryParams=t.queryParams?this.buildQueryParams(t.queryParams):""}buildQueryParams(t){let n="";return Object.keys(t).forEach(r=>{n=n===""?n+`?${r}=${t[r]}`:n+`&${r}=${t[r]}`}),n}async get(t,n){return this.client.get(t+this.queryParams,{params:n})}async post(t,n){return this.client.post(t+this.queryParams,n)}async put(t,n){return this.client.put(t+this.queryParams,n)}async delete(t){return this.client.delete(t+this.queryParams)}}class rr{constructor(t){R(this,"httpClient");this.httpClient=t.httpClient}async getPayoutsLeaderboard(t){return(await this.httpClient.get("/payouts/leaderboard/payouts",t)).data}async getPointsLeaderboard(t){return(await this.httpClient.get("/payouts/leaderboard/points",t)).data}async getReferredUsersLeaderboard(t){return(await this.httpClient.get("/leaderboard/referred",t)).data}}const Y="/payouts";class sr{constructor(t){R(this,"httpClient");R(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserPayoutsByConversion(t){return(await this.httpClient.get(Y,{...t,type:"onchain-currency"})).data}async getUserPointsByConversion(t){return(await this.httpClient.get(Y,{...t,type:"point"})).data}async getUserPayoutMovements(t){return(await this.httpClient.get(`${Y}/movements`,{...t,type:"onchain-currency"})).data}async getUserPointsMovements(t){return(await this.httpClient.get(`${Y}/movements`,{...t,type:"point"})).data}async getVolumeLeaderboard(t){return(await this.httpClient.get(`${Y}/leaderboard/volume`,t)).data}}let or=(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 ir="fuul.tracking_id",Ne=()=>dr(ir,()=>or()),bt=()=>z("af")||z("referrer"),ar=()=>document.referrer,cr=()=>hr(),ur=()=>z("category"),lr=()=>z("title"),fr=()=>z("tag"),dr=(e,t)=>{const n=localStorage.getItem(e);if(n)return n;{const r=t();return r?localStorage.setItem(e,r):localStorage.removeItem(e),r}},z=e=>new URLSearchParams(window.location.search).get(e),hr=()=>{const e=z("source");if(e)return e},pr="/user";class mr{constructor(t){R(this,"httpClient");this.httpClient=t.httpClient}async getUserAffiliates(t){return(await this.httpClient.get(pr,t)).data.affiliates}}const gr="https://api.fuul.xyz/api/v1/";let q=!1,Ue=!1,Le,D,Et,St,K,ce,J,Ct,ue;function yr(e){q=!!e.debug,!Ue&&(Le=e.apiKey,Ir(),D=kr(e.baseApiUrl??gr,e.defaultQueryParams??{}),Et=new Qn({httpClient:D,debug:q}),ce=new er({httpClient:D,debug:q}),K=new Xn({httpClient:D,debug:q}),J=new sr({httpClient:D,debug:q}),St=new mr({httpClient:D}),Ct=new Yn({httpClient:D,debug:q}),ue=new rr({httpClient:D}),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 wr(e,t){U(),Fe(),De();const n={name:e,args:t??{},metadata:{tracking_id:Ne()}};await ce.sendEvent(n)}async function br(e,t){U(),Fe(),De();const n={name:"pageview",args:{page:e??document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Ne(),referrer_url:ar(),source:cr(),affiliate_id:bt()??void 0,referrer:bt()??void 0,category:ur()??void 0,title:lr()??void 0,tag:fr()??void 0}};await ce.sendEvent(n,t)}async function Er(e,t){U(),Fe(),De();const n={name:"connect_wallet",args:{page:document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Ne()}};e!=null&&e.address&&(n.user_address=e.address),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 Sr(e){U(),await K.create(e.address,e.code,e.signature,e.accountChainId)}async function Cr(e){U(),await K.update(e.address,e.code,e.signature,e.accountChainId)}async function Rr(e){return U(),await K.getCode(e)}async function Ar(e){return U(),await K.isCodeFree(e)}async function Tr(e,t,n){U();const r=await K.getCode(t),s=new URLSearchParams({af:r??t});return n!=null&&n.title&&s.append("af_title",n.title),n!=null&&n.format&&s.append("af_format",n.format),n!=null&&n.place&&s.append("af_place",n.place),`${e}?${s.toString()}`}function Or(e){return ue.getPayoutsLeaderboard(e)}function _r(e){return ue.getPointsLeaderboard(e)}function Pr(e){return ue.getReferredUsersLeaderboard(e)}function xr(e){return J.getVolumeLeaderboard(e)}function Nr(e){return J.getUserPayoutsByConversion(e)}function Ur(e){return J.getUserPointsByConversion(e)}function Lr(e){return J.getUserPayoutMovements(e)}function Fr(e){return J.getUserPointsMovements(e)}async function Dr(e){return U(),Et.getAll(e)}async function Br(e){return U(),St.getUserAffiliates(e)}async function vr(e){return U(),Ct.getUserAudiences(e)}function Fe(){if(typeof window>"u"||typeof document>"u")throw new Error("Fuul SDK: Browser context required")}function De(){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 kr(e,t){return new nr({baseURL:e,timeout:1e4,apiKey:Le,queryParams:t})}const qr={init:yr,sendEvent:wr,sendPageview:br,sendConnectWallet:Er,generateTrackingLink:Tr,getConversions:Dr,createAffiliateCode:Sr,updateAffiliateCode:Cr,getAffiliateCode:Rr,isAffiliateCodeFree:Ar,getPayoutsLeaderboard:Or,getPointsLeaderboard:_r,getReferredUsersLeaderboard:Pr,getUserAudiences:vr,getUserPayoutsByConversion:Nr,getUserPointsByConversion:Ur,getUserPointsMovements:Fr,getUserPayoutMovements:Lr,getUserAffiliates:Br,getVolumeLeaderboard:xr};A.AddressInUseError=_e,A.CodeInUseError=Pe,A.Fuul=qr,A.InvalidSignatureError=xe,A.ValidationError=Oe,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
|
|
6
|
+
`+o):r.stack=o}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=I(this.defaults,n);const{transitional:r,paramsSerializer:s,headers:o}=n;r!==void 0&&Ae.assertOptions(r,{silentJSONParsing:F.transitional(F.boolean),forcedJSONParsing:F.transitional(F.boolean),clarifyTimeoutError:F.transitional(F.boolean)},!1),s!=null&&(a.isFunction(s)?n.paramsSerializer={serialize:s}:Ae.assertOptions(s,{encode:F.function,serialize:F.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=_.concat(i,o);const c=[];let f=!0;this.interceptors.request.forEach(function(g){typeof g.runWhen=="function"&&g.runWhen(n)===!1||(f=f&&g.synchronous,c.unshift(g.fulfilled,g.rejected))});const u=[];this.interceptors.response.forEach(function(g){u.push(g.fulfilled,g.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++],g=c[d++];try{E=h(E)}catch(p){g.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=I(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){k.prototype[t]=function(n,r){return this.request(I(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(I(c||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:i}))}}k.prototype[t]=n(),k.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 V(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 Mn(e){return function(n){return e.apply(null,n)}}function Wn(e){return a.isObject(e)&&e.isAxiosError===!0}const Te={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(Te).forEach(([e,t])=>{Te[t]=e});function yt(e){const t=new k(e),n=T(k.prototype.request,t);return a.extend(n,k.prototype,t,{allOwnKeys:!0}),a.extend(n,t,null,{allOwnKeys:!0}),n.create=function(s){return yt(I(e,s))},n}const y=yt(X);y.Axios=k,y.CanceledError=V,y.CancelToken=Jn,y.isCancel=tt,y.VERSION=mt,y.toFormData=ne,y.AxiosError=m,y.Cancel=y.CanceledError,y.all=function(t){return Promise.all(t)},y.spread=Mn,y.isAxiosError=Wn,y.mergeConfig=I,y.AxiosHeaders=_,y.formToJSON=e=>Ze(a.isHTMLForm(e)?new FormData(e):e),y.getAdapter=ht.getAdapter,y.HttpStatusCode=Te,y.default=y;const{Axios:Wr,AxiosError:ae,CanceledError:Xr,isCancel:Gr,CancelToken:Yr,VERSION:Qr,all:Zr,Cancel:es,isAxiosError:ts,spread:ns,toFormData:rs,AxiosHeaders:ss,HttpStatusCode:os,formToJSON:is,getAdapter:as,mergeConfig:cs}=y;class Oe extends Error{constructor(n){super(n.join(", "));R(this,"errors");this.name="ValidationError",this.errors=n}}class _e extends Error{constructor(n){super("Address already registered.");R(this,"address");this.name="AddressInUseError",this.address=n}}class Pe extends Error{constructor(n){super("Code already registered.");R(this,"code");this.name="CodeInUseError",this.code=n}}class xe extends Error{constructor(){super("Invalid signature provided"),this.name="InvalidSignatureError"}}class Xn{constructor(t){R(this,"httpClient");R(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async create(t,n,r,s){var o;try{await this.httpClient.post("/affiliates",{address:t,name:n,code:n,signature:r,account_chain_id:s})}catch(i){if(i instanceof ae){const c=(o=i.response)==null?void 0:o.data;if(typeof(c==null?void 0:c.message)=="string"){const f=c.message.toLowerCase();throw f=="invalid signature"?new xe:f=="address in use"?new _e(t):f=="code in use"?new Pe(n):new Error(f)}else if((c==null?void 0:c.message)instanceof Array)throw new Oe(c.message)}throw i}}async update(t,n,r,s){var o;try{await this.httpClient.post(`/affiliates/${t}`,{code:n,address:t,signature:r,account_chain_id:s})}catch(i){if(i instanceof ae){const c=(o=i.response)==null?void 0:o.data;if(typeof(c==null?void 0:c.message)=="string"){const f=c.message.toLowerCase();throw f=="invalid signature"?new xe:f=="address in use"?new _e(t):f=="code in use"?new Pe(n):new Error(f)}else if((c==null?void 0:c.message)instanceof Array)throw new Oe(c.message)}throw i}}async isCodeFree(t){var n;try{return await this.httpClient.get(`/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){var n;try{return(await this.httpClient.get(`/affiliates/${t}`)).data.code}catch(r){if(r instanceof ae&&((n=r.response)==null?void 0:n.status)===404)return null;throw console.error("Fuul SDK: Could not get affiliate code",r),r}}}const Gn="/audiences";class Yn{constructor(t){R(this,"httpClient");R(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserAudiences(t){return(await this.httpClient.get(`${Gn}/user`,t)).data}}class Qn{constructor(t){R(this,"httpClient");this.httpClient=t.httpClient}async getAll(t){const{data:n}=await this.httpClient.get("conversions",t);return n}}const wt="fuul.sent",Zn=60;class er{constructor(t){R(this,"debug");R(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("events",t);else for(const r of n){const s=structuredClone({...t,project_id:r});s.metadata.project_id=r,await this.httpClient.post("events",s)}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>Zn)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){const n=`${wt}_${t.name}`,r=this.getCurrentTimestamp(),s={...t,timestamp:r};localStorage.setItem(n,JSON.stringify(s))}}const tr={version:"4.12.1"};class nr{constructor(t){R(this,"client");R(this,"queryParams");this.client=y.create({...t,headers:{Authorization:`Bearer ${t.apiKey}`,"X-Fuul-Sdk-Version":tr.version}}),this.queryParams=t.queryParams?this.buildQueryParams(t.queryParams):""}buildQueryParams(t){let n="";return Object.keys(t).forEach(r=>{n=n===""?n+`?${r}=${t[r]}`:n+`&${r}=${t[r]}`}),n}async get(t,n){return this.client.get(t+this.queryParams,{params:n})}async post(t,n){return this.client.post(t+this.queryParams,n)}async put(t,n){return this.client.put(t+this.queryParams,n)}async delete(t){return this.client.delete(t+this.queryParams)}}class rr{constructor(t){R(this,"httpClient");this.httpClient=t.httpClient}async getPayoutsLeaderboard(t){return(await this.httpClient.get("/payouts/leaderboard/payouts",t)).data}async getPointsLeaderboard(t){return(await this.httpClient.get("/payouts/leaderboard/points",t)).data}async getReferredUsersLeaderboard(t){return(await this.httpClient.get("/leaderboard/referred",t)).data}}const Y="/payouts";class sr{constructor(t){R(this,"httpClient");R(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserPayoutsByConversion(t){return(await this.httpClient.get(Y,{...t,type:"onchain-currency"})).data}async getUserPointsByConversion(t){return(await this.httpClient.get(Y,{...t,type:"point"})).data}async getUserPayoutMovements(t){return(await this.httpClient.get(`${Y}/movements`,{...t,type:"onchain-currency"})).data}async getUserPointsMovements(t){return(await this.httpClient.get(`${Y}/movements`,{...t,type:"point"})).data}async getVolumeLeaderboard(t){return(await this.httpClient.get(`${Y}/leaderboard/volume`,t)).data}}let or=(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 ir="fuul.tracking_id",Ne=()=>dr(ir,()=>or()),bt=()=>z("af")||z("referrer"),ar=()=>document.referrer,cr=()=>hr(),ur=()=>z("category"),lr=()=>z("title"),fr=()=>z("tag"),dr=(e,t)=>{const n=localStorage.getItem(e);if(n)return n;{const r=t();return r?localStorage.setItem(e,r):localStorage.removeItem(e),r}},z=e=>new URLSearchParams(window.location.search).get(e),hr=()=>{const e=z("source");if(e)return e},pr="/user";class mr{constructor(t){R(this,"httpClient");this.httpClient=t.httpClient}async getUserAffiliates(t){return(await this.httpClient.get(pr,t)).data.affiliates}}const gr="https://api.fuul.xyz/api/v1/";let q=!1,Ue=!1,Le,D,Et,St,K,ce,J,Ct,ue;function yr(e){q=!!e.debug,!Ue&&(Le=e.apiKey,Ir(),D=kr(e.baseApiUrl??gr,e.defaultQueryParams??{}),Et=new Qn({httpClient:D,debug:q}),ce=new er({httpClient:D,debug:q}),K=new Xn({httpClient:D,debug:q}),J=new sr({httpClient:D,debug:q}),St=new mr({httpClient:D}),Ct=new Yn({httpClient:D,debug:q}),ue=new rr({httpClient:D}),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 wr(e,t){U(),Fe(),De();const n={name:e,args:t??{},metadata:{tracking_id:Ne()}};await ce.sendEvent(n)}async function br(e,t){U(),Fe(),De();const n={name:"pageview",args:{page:e??document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Ne(),referrer_url:ar(),source:cr(),affiliate_id:bt()??void 0,referrer:bt()??void 0,category:ur()??void 0,title:lr()??void 0,tag:fr()??void 0}};await ce.sendEvent(n,t)}async function Er(e,t){U(),Fe(),De();const n={name:"connect_wallet",args:{page:document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Ne()}};e!=null&&e.address&&(n.user_address=e.address),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 Sr(e){U(),await K.create(e.address,e.code,e.signature,e.accountChainId)}async function Cr(e){U(),await K.update(e.address,e.code,e.signature,e.accountChainId)}async function Rr(e){return U(),await K.getCode(e)}async function Ar(e){return U(),await K.isCodeFree(e)}async function Tr(e,t,n){U();const r=await K.getCode(t),s=new URLSearchParams({af:r??t});return n!=null&&n.title&&s.append("af_title",n.title),n!=null&&n.format&&s.append("af_format",n.format),n!=null&&n.place&&s.append("af_place",n.place),`${e}?${s.toString()}`}function Or(e){return ue.getPayoutsLeaderboard(e)}function _r(e){return ue.getPointsLeaderboard(e)}function Pr(e){return ue.getReferredUsersLeaderboard(e)}function xr(e){return J.getVolumeLeaderboard(e)}function Nr(e){return J.getUserPayoutsByConversion(e)}function Ur(e){return J.getUserPointsByConversion(e)}function Lr(e){return J.getUserPayoutMovements(e)}function Fr(e){return J.getUserPointsMovements(e)}async function Dr(e){return U(),Et.getAll(e)}async function Br(e){return U(),St.getUserAffiliates(e)}async function vr(e){return U(),Ct.getUserAudiences(e)}function Fe(){if(typeof window>"u"||typeof document>"u")throw new Error("Fuul SDK: Browser context required")}function De(){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 kr(e,t){return new nr({baseURL:e,timeout:3e4,apiKey:Le,queryParams:t})}const qr={init:yr,sendEvent:wr,sendPageview:br,sendConnectWallet:Er,generateTrackingLink:Tr,getConversions:Dr,createAffiliateCode:Sr,updateAffiliateCode:Cr,getAffiliateCode:Rr,isAffiliateCodeFree:Ar,getPayoutsLeaderboard:Or,getPointsLeaderboard:_r,getReferredUsersLeaderboard:Pr,getUserAudiences:vr,getUserPayoutsByConversion:Nr,getUserPointsByConversion:Ur,getUserPointsMovements:Fr,getUserPayoutMovements:Lr,getUserAffiliates:Br,getVolumeLeaderboard:xr};A.AddressInUseError=_e,A.CodeInUseError=Pe,A.Fuul=qr,A.InvalidSignatureError=xe,A.ValidationError=Oe,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
|
package/dist/release.json.d.ts
CHANGED