@fuul/sdk 7.7.0 → 7.7.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.
@@ -10,7 +10,7 @@ export declare class AffiliateService {
10
10
  private readonly _debug;
11
11
  constructor(settings: AffiliateServiceSettings);
12
12
  create(address: string, identifier_type: UserIdentifierType, code: string, signature: string, signaturePublicKey?: string, accountChainId?: number, userSplitPercentage?: number): Promise<void>;
13
- update(user_identifier: string, identifier_type: UserIdentifierType, code: string, signature: string, signaturePublicKey?: string, accountChainId?: number): Promise<void>;
13
+ update(user_identifier: string, identifier_type: UserIdentifierType, code: string, signature: string, signaturePublicKey?: string, accountChainId?: number, userSplitPercentage?: number): Promise<void>;
14
14
  isCodeFree(code: string): Promise<boolean>;
15
15
  getCode(address: string, identifier_type: UserIdentifierType): Promise<Affiliate | null>;
16
16
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AffiliateService.d.ts","sourceRoot":"","sources":["../../src/affiliates/AffiliateService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAA0C,MAAM,cAAc,CAAC;AAGjF,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;gBAEjC,QAAQ,EAAE,wBAAwB;IAKjC,MAAM,CACjB,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,kBAAkB,EACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,MAAM,EACvB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC;IAuCH,MAAM,CACjB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,kBAAkB,EACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC;IAqCH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;CActG"}
1
+ {"version":3,"file":"AffiliateService.d.ts","sourceRoot":"","sources":["../../src/affiliates/AffiliateService.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,SAAS,EAA0C,MAAM,cAAc,CAAC;AAGjF,MAAM,MAAM,wBAAwB,GAAG;IACrC,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;gBAEjC,QAAQ,EAAE,wBAAwB;IAKjC,MAAM,CACjB,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,kBAAkB,EACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,MAAM,EACvB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC;IAuCH,MAAM,CACjB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,kBAAkB,EACnC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,CAAC,EAAE,MAAM,EAC3B,cAAc,CAAC,EAAE,MAAM,EACvB,mBAAmB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAAC,IAAI,CAAC;IAsCH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1C,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,kBAAkB,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;CActG"}
package/dist/core.d.ts CHANGED
@@ -61,6 +61,7 @@ export declare function identifyUser(params: IdentifyUserParams, projectIds?: st
61
61
  * @param {string} params.signature Signed message authenticating address ownership. Message to be signed: `I confirm that I am creating the ${code} code on Fuul`
62
62
  * @param {string} [params.signaturePublicKey] Public key used for signature verification
63
63
  * @param {number} [params.accountChainId] Account chain id (required for EIP-1271 signature validation)
64
+ * @param {number} [params.userSplitPercentage] Percentage of rewards split to the user
64
65
  * @example
65
66
  * ```typescript
66
67
  * await Fuul.createAffiliateCode({
@@ -82,6 +83,7 @@ export declare function createAffiliateCode(params: AffiliateCodeParams): Promis
82
83
  * @param {string} params.signature Signed message authenticating code update. Message to be signed: `I confirm that I am updating my code to ${code} on Fuul`
83
84
  * @param {string} [params.signaturePublicKey] Public key used for signature verification
84
85
  * @param {number} [params.accountChainId] Account chain id (required for EIP-1271 signature validation)
86
+ * @param {number} [params.userSplitPercentage] Percentage of rewards split to the user
85
87
  * @example
86
88
  * ```typescript
87
89
  * await Fuul.updateAffiliateCode({
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -342,10 +342,10 @@ function ae(e, t, r) {
342
342
  }, !1, function(y, p) {
343
343
  return !a.isUndefined(p[y]);
344
344
  });
345
- const n = r.metaTokens, s = r.visitor || l, i = r.dots, o = r.indexes, f = (r.Blob || typeof Blob < "u" && Blob) && a.isSpecCompliantForm(t);
345
+ const n = r.metaTokens, s = r.visitor || u, i = r.dots, o = r.indexes, f = (r.Blob || typeof Blob < "u" && Blob) && a.isSpecCompliantForm(t);
346
346
  if (!a.isFunction(s))
347
347
  throw new TypeError("visitor must be a function");
348
- function u(h) {
348
+ function l(h) {
349
349
  if (h === null) return "";
350
350
  if (a.isDate(h))
351
351
  return h.toISOString();
@@ -355,7 +355,7 @@ function ae(e, t, r) {
355
355
  throw new m("Blob is not supported. Use a Buffer instead.");
356
356
  return a.isArrayBuffer(h) || a.isTypedArray(h) ? f && typeof Blob == "function" ? new Blob([h]) : Buffer.from(h) : h;
357
357
  }
358
- function l(h, y, p) {
358
+ function u(h, y, p) {
359
359
  let b = h;
360
360
  if (h && !p && typeof h == "object") {
361
361
  if (a.endsWith(y, "{}"))
@@ -365,15 +365,15 @@ function ae(e, t, r) {
365
365
  !(a.isUndefined(R) || R === null) && t.append(
366
366
  // eslint-disable-next-line no-nested-ternary
367
367
  o === !0 ? Fe([y], L, i) : o === null ? y : y + "[]",
368
- u(R)
368
+ l(R)
369
369
  );
370
370
  }), !1;
371
371
  }
372
- return ge(h) ? !0 : (t.append(Fe(p, y, i), u(h)), !1);
372
+ return ge(h) ? !0 : (t.append(Fe(p, y, i), l(h)), !1);
373
373
  }
374
374
  const d = [], g = Object.assign(gr, {
375
- defaultVisitor: l,
376
- convertValue: u,
375
+ defaultVisitor: u,
376
+ convertValue: l,
377
377
  isVisitable: ge
378
378
  });
379
379
  function w(h, y) {
@@ -704,24 +704,24 @@ let O = class {
704
704
  }
705
705
  set(t, r, n) {
706
706
  const s = this;
707
- function i(c, f, u) {
708
- const l = z(f);
709
- if (!l)
707
+ function i(c, f, l) {
708
+ const u = z(f);
709
+ if (!u)
710
710
  throw new Error("header name must be a non-empty string");
711
- const d = a.findKey(s, l);
712
- (!d || s[d] === void 0 || u === !0 || u === void 0 && s[d] !== !1) && (s[d || f] = ee(c));
711
+ const d = a.findKey(s, u);
712
+ (!d || s[d] === void 0 || l === !0 || l === void 0 && s[d] !== !1) && (s[d || f] = ee(c));
713
713
  }
714
- const o = (c, f) => a.forEach(c, (u, l) => i(u, l, f));
714
+ const o = (c, f) => a.forEach(c, (l, u) => i(l, u, f));
715
715
  if (a.isPlainObject(t) || t instanceof this.constructor)
716
716
  o(t, r);
717
717
  else if (a.isString(t) && (t = t.trim()) && !Fr(t))
718
718
  o(Lr(t), r);
719
719
  else if (a.isObject(t) && a.isIterable(t)) {
720
- let c = {}, f, u;
721
- for (const l of t) {
722
- if (!a.isArray(l))
720
+ let c = {}, f, l;
721
+ for (const u of t) {
722
+ if (!a.isArray(u))
723
723
  throw TypeError("Object iterator must return a key-value pair");
724
- c[u = l[0]] = (f = c[u]) ? a.isArray(f) ? [...f, l[1]] : [f, l[1]] : l[1];
724
+ c[l = u[0]] = (f = c[l]) ? a.isArray(f) ? [...f, u[1]] : [f, u[1]] : u[1];
725
725
  }
726
726
  o(c, r);
727
727
  } else
@@ -870,25 +870,25 @@ function vr(e, t) {
870
870
  const r = new Array(e), n = new Array(e);
871
871
  let s = 0, i = 0, o;
872
872
  return t = t !== void 0 ? t : 1e3, function(f) {
873
- const u = Date.now(), l = n[i];
874
- o || (o = u), r[s] = f, n[s] = u;
873
+ const l = Date.now(), u = n[i];
874
+ o || (o = l), r[s] = f, n[s] = l;
875
875
  let d = i, g = 0;
876
876
  for (; d !== s; )
877
877
  g += r[d++], d = d % e;
878
- if (s = (s + 1) % e, s === i && (i = (i + 1) % e), u - o < t)
878
+ if (s = (s + 1) % e, s === i && (i = (i + 1) % e), l - o < t)
879
879
  return;
880
- const w = l && u - l;
880
+ const w = u && l - u;
881
881
  return w ? Math.round(g * 1e3 / w) : void 0;
882
882
  };
883
883
  }
884
884
  function Ir(e, t) {
885
885
  let r = 0, n = 1e3 / t, s, i;
886
- const o = (u, l = Date.now()) => {
887
- r = l, s = null, i && (clearTimeout(i), i = null), e(...u);
886
+ const o = (l, u = Date.now()) => {
887
+ r = u, s = null, i && (clearTimeout(i), i = null), e(...l);
888
888
  };
889
- return [(...u) => {
890
- const l = Date.now(), d = l - r;
891
- d >= n ? o(u, l) : (s = u, i || (i = setTimeout(() => {
889
+ return [(...l) => {
890
+ const u = Date.now(), d = u - r;
891
+ d >= n ? o(l, u) : (s = l, i || (i = setTimeout(() => {
892
892
  i = null, o(s);
893
893
  }, n - d)));
894
894
  }, () => s && o(s)];
@@ -897,15 +897,15 @@ const re = (e, t, r = 3) => {
897
897
  let n = 0;
898
898
  const s = vr(50, 250);
899
899
  return Ir((i) => {
900
- const o = i.loaded, c = i.lengthComputable ? i.total : void 0, f = o - n, u = s(f), l = o <= c;
900
+ const o = i.loaded, c = i.lengthComputable ? i.total : void 0, f = o - n, l = s(f), u = o <= c;
901
901
  n = o;
902
902
  const d = {
903
903
  loaded: o,
904
904
  total: c,
905
905
  progress: c ? o / c : void 0,
906
906
  bytes: f,
907
- rate: u || void 0,
908
- estimated: u && c && l ? (c - o) / u : void 0,
907
+ rate: l || void 0,
908
+ estimated: l && c && u ? (c - o) / l : void 0,
909
909
  event: i,
910
910
  lengthComputable: c != null,
911
911
  [t ? "download" : "upload"]: !0
@@ -963,30 +963,30 @@ const je = (e) => e instanceof O ? { ...e } : e;
963
963
  function v(e, t) {
964
964
  t = t || {};
965
965
  const r = {};
966
- function n(u, l, d, g) {
967
- return a.isPlainObject(u) && a.isPlainObject(l) ? a.merge.call({ caseless: g }, u, l) : a.isPlainObject(l) ? a.merge({}, l) : a.isArray(l) ? l.slice() : l;
966
+ function n(l, u, d, g) {
967
+ return a.isPlainObject(l) && a.isPlainObject(u) ? a.merge.call({ caseless: g }, l, u) : a.isPlainObject(u) ? a.merge({}, u) : a.isArray(u) ? u.slice() : u;
968
968
  }
969
- function s(u, l, d, g) {
970
- if (a.isUndefined(l)) {
971
- if (!a.isUndefined(u))
972
- return n(void 0, u, d, g);
973
- } else return n(u, l, d, g);
969
+ function s(l, u, d, g) {
970
+ if (a.isUndefined(u)) {
971
+ if (!a.isUndefined(l))
972
+ return n(void 0, l, d, g);
973
+ } else return n(l, u, d, g);
974
974
  }
975
- function i(u, l) {
976
- if (!a.isUndefined(l))
977
- return n(void 0, l);
975
+ function i(l, u) {
976
+ if (!a.isUndefined(u))
977
+ return n(void 0, u);
978
978
  }
979
- function o(u, l) {
980
- if (a.isUndefined(l)) {
981
- if (!a.isUndefined(u))
982
- return n(void 0, u);
983
- } else return n(void 0, l);
979
+ function o(l, u) {
980
+ if (a.isUndefined(u)) {
981
+ if (!a.isUndefined(l))
982
+ return n(void 0, l);
983
+ } else return n(void 0, u);
984
984
  }
985
- function c(u, l, d) {
985
+ function c(l, u, d) {
986
986
  if (d in t)
987
- return n(u, l);
987
+ return n(l, u);
988
988
  if (d in e)
989
- return n(void 0, u);
989
+ return n(void 0, l);
990
990
  }
991
991
  const f = {
992
992
  url: i,
@@ -1017,11 +1017,11 @@ function v(e, t) {
1017
1017
  socketPath: o,
1018
1018
  responseEncoding: o,
1019
1019
  validateStatus: c,
1020
- headers: (u, l, d) => s(je(u), je(l), d, !0)
1020
+ headers: (l, u, d) => s(je(l), je(u), d, !0)
1021
1021
  };
1022
- return a.forEach(Object.keys({ ...e, ...t }), function(l) {
1023
- const d = f[l] || s, g = d(e[l], t[l], l);
1024
- a.isUndefined(g) && d !== c || (r[l] = g);
1022
+ return a.forEach(Object.keys({ ...e, ...t }), function(u) {
1023
+ const d = f[u] || s, g = d(e[u], t[u], u);
1024
+ a.isUndefined(g) && d !== c || (r[u] = g);
1025
1025
  }), r;
1026
1026
  }
1027
1027
  const gt = (e) => {
@@ -1036,13 +1036,13 @@ const gt = (e) => {
1036
1036
  if (A.hasStandardBrowserEnv || A.hasStandardBrowserWebWorkerEnv)
1037
1037
  o.setContentType(void 0);
1038
1038
  else if ((f = o.getContentType()) !== !1) {
1039
- const [u, ...l] = f ? f.split(";").map((d) => d.trim()).filter(Boolean) : [];
1040
- o.setContentType([u || "multipart/form-data", ...l].join("; "));
1039
+ const [l, ...u] = f ? f.split(";").map((d) => d.trim()).filter(Boolean) : [];
1040
+ o.setContentType([l || "multipart/form-data", ...u].join("; "));
1041
1041
  }
1042
1042
  }
1043
1043
  if (A.hasStandardBrowserEnv && (n && a.isFunction(n) && (n = n(t)), n || n !== !1 && jr(t.url))) {
1044
- const u = s && i && $r.read(i);
1045
- u && o.set(s, u);
1044
+ const l = s && i && $r.read(i);
1045
+ l && o.set(s, l);
1046
1046
  }
1047
1047
  return t;
1048
1048
  }, Kr = typeof XMLHttpRequest < "u", Vr = Kr && function(e) {
@@ -1050,9 +1050,9 @@ const gt = (e) => {
1050
1050
  const s = gt(e);
1051
1051
  let i = s.data;
1052
1052
  const o = O.from(s.headers).normalize();
1053
- let { responseType: c, onUploadProgress: f, onDownloadProgress: u } = s, l, d, g, w, h;
1053
+ let { responseType: c, onUploadProgress: f, onDownloadProgress: l } = s, u, d, g, w, h;
1054
1054
  function y() {
1055
- w && w(), h && h(), s.cancelToken && s.cancelToken.unsubscribe(l), s.signal && s.signal.removeEventListener("abort", l);
1055
+ w && w(), h && h(), s.cancelToken && s.cancelToken.unsubscribe(u), s.signal && s.signal.removeEventListener("abort", u);
1056
1056
  }
1057
1057
  let p = new XMLHttpRequest();
1058
1058
  p.open(s.method.toUpperCase(), s.url, !0), p.timeout = s.timeout;
@@ -1092,9 +1092,9 @@ const gt = (e) => {
1092
1092
  )), p = null;
1093
1093
  }, i === void 0 && o.setContentType(null), "setRequestHeader" in p && a.forEach(o.toJSON(), function(L, T) {
1094
1094
  p.setRequestHeader(T, L);
1095
- }), a.isUndefined(s.withCredentials) || (p.withCredentials = !!s.withCredentials), c && c !== "json" && (p.responseType = s.responseType), u && ([g, h] = re(u, !0), p.addEventListener("progress", g)), f && p.upload && ([d, w] = re(f), p.upload.addEventListener("progress", d), p.upload.addEventListener("loadend", w)), (s.cancelToken || s.signal) && (l = (R) => {
1095
+ }), a.isUndefined(s.withCredentials) || (p.withCredentials = !!s.withCredentials), c && c !== "json" && (p.responseType = s.responseType), l && ([g, h] = re(l, !0), p.addEventListener("progress", g)), f && p.upload && ([d, w] = re(f), p.upload.addEventListener("progress", d), p.upload.addEventListener("loadend", w)), (s.cancelToken || s.signal) && (u = (R) => {
1096
1096
  p && (n(!R || R.type ? new K(null, e, p) : R), p.abort(), p = null);
1097
- }, s.cancelToken && s.cancelToken.subscribe(l), s.signal && (s.signal.aborted ? l() : s.signal.addEventListener("abort", l)));
1097
+ }, s.cancelToken && s.cancelToken.subscribe(u), s.signal && (s.signal.aborted ? u() : s.signal.addEventListener("abort", u)));
1098
1098
  const C = qr(s.url);
1099
1099
  if (C && A.protocols.indexOf(C) === -1) {
1100
1100
  n(new m("Unsupported protocol " + C + ":", m.ERR_BAD_REQUEST, e));
@@ -1106,22 +1106,22 @@ const gt = (e) => {
1106
1106
  const { length: r } = e = e ? e.filter(Boolean) : [];
1107
1107
  if (t || r) {
1108
1108
  let n = new AbortController(), s;
1109
- const i = function(u) {
1109
+ const i = function(l) {
1110
1110
  if (!s) {
1111
1111
  s = !0, c();
1112
- const l = u instanceof Error ? u : this.reason;
1113
- n.abort(l instanceof m ? l : new K(l instanceof Error ? l.message : l));
1112
+ const u = l instanceof Error ? l : this.reason;
1113
+ n.abort(u instanceof m ? u : new K(u instanceof Error ? u.message : u));
1114
1114
  }
1115
1115
  };
1116
1116
  let o = t && setTimeout(() => {
1117
1117
  o = null, i(new m(`timeout ${t} of ms exceeded`, m.ETIMEDOUT));
1118
1118
  }, t);
1119
1119
  const c = () => {
1120
- e && (o && clearTimeout(o), o = null, e.forEach((u) => {
1121
- u.unsubscribe ? u.unsubscribe(i) : u.removeEventListener("abort", i);
1120
+ e && (o && clearTimeout(o), o = null, e.forEach((l) => {
1121
+ l.unsubscribe ? l.unsubscribe(i) : l.removeEventListener("abort", i);
1122
1122
  }), e = null);
1123
1123
  };
1124
- e.forEach((u) => u.addEventListener("abort", i));
1124
+ e.forEach((l) => l.addEventListener("abort", i));
1125
1125
  const { signal: f } = n;
1126
1126
  return f.unsubscribe = () => a.asap(c), f;
1127
1127
  }
@@ -1161,19 +1161,19 @@ const gt = (e) => {
1161
1161
  return new ReadableStream({
1162
1162
  async pull(f) {
1163
1163
  try {
1164
- const { done: u, value: l } = await s.next();
1165
- if (u) {
1164
+ const { done: l, value: u } = await s.next();
1165
+ if (l) {
1166
1166
  c(), f.close();
1167
1167
  return;
1168
1168
  }
1169
- let d = l.byteLength;
1169
+ let d = u.byteLength;
1170
1170
  if (r) {
1171
1171
  let g = i += d;
1172
1172
  r(g);
1173
1173
  }
1174
- f.enqueue(new Uint8Array(l));
1175
- } catch (u) {
1176
- throw c(u), u;
1174
+ f.enqueue(new Uint8Array(u));
1175
+ } catch (l) {
1176
+ throw c(l), l;
1177
1177
  }
1178
1178
  },
1179
1179
  cancel(f) {
@@ -1235,25 +1235,25 @@ const Gr = async (e) => {
1235
1235
  timeout: o,
1236
1236
  onDownloadProgress: c,
1237
1237
  onUploadProgress: f,
1238
- responseType: u,
1239
- headers: l,
1238
+ responseType: l,
1239
+ headers: u,
1240
1240
  withCredentials: d = "same-origin",
1241
1241
  fetchOptions: g
1242
1242
  } = gt(e);
1243
- u = u ? (u + "").toLowerCase() : "text";
1243
+ l = l ? (l + "").toLowerCase() : "text";
1244
1244
  let w = zr([s, i && i.toAbortSignal()], o), h;
1245
1245
  const y = w && w.unsubscribe && (() => {
1246
1246
  w.unsubscribe();
1247
1247
  });
1248
1248
  let p;
1249
1249
  try {
1250
- if (f && Yr && r !== "get" && r !== "head" && (p = await Zr(l, n)) !== 0) {
1250
+ if (f && Yr && r !== "get" && r !== "head" && (p = await Zr(u, n)) !== 0) {
1251
1251
  let T = new Request(t, {
1252
1252
  method: "POST",
1253
1253
  body: n,
1254
1254
  duplex: "half"
1255
1255
  }), D;
1256
- if (a.isFormData(n) && (D = T.headers.get("content-type")) && l.setContentType(D), T.body) {
1256
+ if (a.isFormData(n) && (D = T.headers.get("content-type")) && u.setContentType(D), T.body) {
1257
1257
  const [k, G] = ve(
1258
1258
  p,
1259
1259
  re(Ie(f))
@@ -1267,13 +1267,13 @@ const Gr = async (e) => {
1267
1267
  ...g,
1268
1268
  signal: w,
1269
1269
  method: r.toUpperCase(),
1270
- headers: l.normalize().toJSON(),
1270
+ headers: u.normalize().toJSON(),
1271
1271
  body: n,
1272
1272
  duplex: "half",
1273
1273
  credentials: b ? d : void 0
1274
1274
  });
1275
1275
  let C = await fetch(h, g);
1276
- const R = be && (u === "stream" || u === "response");
1276
+ const R = be && (l === "stream" || l === "response");
1277
1277
  if (be && (c || R && y)) {
1278
1278
  const T = {};
1279
1279
  ["status", "statusText", "headers"].forEach((Ue) => {
@@ -1290,8 +1290,8 @@ const Gr = async (e) => {
1290
1290
  T
1291
1291
  );
1292
1292
  }
1293
- u = u || "text";
1294
- let L = await ne[a.findKey(ne, u) || "text"](C, e);
1293
+ l = l || "text";
1294
+ let L = await ne[a.findKey(ne, l) || "text"](C, e);
1295
1295
  return !R && y && y(), await new Promise((T, D) => {
1296
1296
  mt(T, D, {
1297
1297
  data: L,
@@ -1489,16 +1489,16 @@ let q = class {
1489
1489
  this.interceptors.request.forEach(function(y) {
1490
1490
  typeof y.runWhen == "function" && y.runWhen(r) === !1 || (f = f && y.synchronous, c.unshift(y.fulfilled, y.rejected));
1491
1491
  });
1492
- const u = [];
1492
+ const l = [];
1493
1493
  this.interceptors.response.forEach(function(y) {
1494
- u.push(y.fulfilled, y.rejected);
1494
+ l.push(y.fulfilled, y.rejected);
1495
1495
  });
1496
- let l, d = 0, g;
1496
+ let u, d = 0, g;
1497
1497
  if (!f) {
1498
1498
  const h = [Ke.bind(this), void 0];
1499
- for (h.unshift(...c), h.push(...u), g = h.length, l = Promise.resolve(r); d < g; )
1500
- l = l.then(h[d++], h[d++]);
1501
- return l;
1499
+ for (h.unshift(...c), h.push(...l), g = h.length, u = Promise.resolve(r); d < g; )
1500
+ u = u.then(h[d++], h[d++]);
1501
+ return u;
1502
1502
  }
1503
1503
  g = c.length;
1504
1504
  let w = r;
@@ -1512,13 +1512,13 @@ let q = class {
1512
1512
  }
1513
1513
  }
1514
1514
  try {
1515
- l = Ke.call(this, w);
1515
+ u = Ke.call(this, w);
1516
1516
  } catch (h) {
1517
1517
  return Promise.reject(h);
1518
1518
  }
1519
- for (d = 0, g = u.length; d < g; )
1520
- l = l.then(u[d++], u[d++]);
1521
- return l;
1519
+ for (d = 0, g = l.length; d < g; )
1520
+ u = u.then(l[d++], l[d++]);
1521
+ return u;
1522
1522
  }
1523
1523
  getUri(t) {
1524
1524
  t = v(this.defaults, t);
@@ -1791,20 +1791,20 @@ class an {
1791
1791
  user_split_percentage: c
1792
1792
  }
1793
1793
  });
1794
- } catch (u) {
1795
- if (u instanceof me) {
1796
- const l = (f = u.response) == null ? void 0 : f.data;
1797
- if (typeof (l == null ? void 0 : l.message) == "string") {
1798
- const d = l.message.toLowerCase();
1794
+ } catch (l) {
1795
+ if (l instanceof me) {
1796
+ const u = (f = l.response) == null ? void 0 : f.data;
1797
+ if (typeof (u == null ? void 0 : u.message) == "string") {
1798
+ const d = u.message.toLowerCase();
1799
1799
  throw d == "invalid signature" ? new Qe() : d == "address in use" ? new Je(t) : d == "code in use" ? new We(n) : new Error(d);
1800
- } else if ((l == null ? void 0 : l.message) instanceof Array)
1801
- throw new ze(l.message);
1800
+ } else if ((u == null ? void 0 : u.message) instanceof Array)
1801
+ throw new ze(u.message);
1802
1802
  }
1803
- throw u;
1803
+ throw l;
1804
1804
  }
1805
1805
  }
1806
- async update(t, r, n, s, i, o) {
1807
- var c;
1806
+ async update(t, r, n, s, i, o, c) {
1807
+ var f;
1808
1808
  try {
1809
1809
  await this.httpClient.post({
1810
1810
  path: `/affiliates/${t}`,
@@ -1814,19 +1814,20 @@ class an {
1814
1814
  identifier_type: r,
1815
1815
  signature: s,
1816
1816
  signature_public_key: i,
1817
- account_chain_id: o
1817
+ account_chain_id: o,
1818
+ user_split_percentage: c
1818
1819
  }
1819
1820
  });
1820
- } catch (f) {
1821
- if (f instanceof me) {
1822
- const u = (c = f.response) == null ? void 0 : c.data;
1821
+ } catch (l) {
1822
+ if (l instanceof me) {
1823
+ const u = (f = l.response) == null ? void 0 : f.data;
1823
1824
  if (typeof (u == null ? void 0 : u.message) == "string") {
1824
- const l = u.message.toLowerCase();
1825
- throw l == "invalid signature" ? new Qe() : l == "address in use" ? new Je(t) : l == "code in use" ? new We(n) : new Error(l);
1825
+ const d = u.message.toLowerCase();
1826
+ throw d == "invalid signature" ? new Qe() : d == "address in use" ? new Je(t) : d == "code in use" ? new We(n) : new Error(d);
1826
1827
  } else if ((u == null ? void 0 : u.message) instanceof Array)
1827
1828
  throw new ze(u.message);
1828
1829
  }
1829
- throw f;
1830
+ throw l;
1830
1831
  }
1831
1832
  }
1832
1833
  async isCodeFree(t) {
@@ -1893,7 +1894,7 @@ class hn {
1893
1894
  this.debug && console.debug(`Fuul SDK: Sent '${t.name}' event`), this.saveSentEvent(t);
1894
1895
  }
1895
1896
  isDuplicate(t) {
1896
- var l, d, g, w;
1897
+ var u, d, g, w;
1897
1898
  const r = `${Xe}_${t.name}`, n = localStorage.getItem(r);
1898
1899
  if (!n)
1899
1900
  return !1;
@@ -1901,33 +1902,33 @@ class hn {
1901
1902
  if (this.getCurrentTimestamp() - s.timestamp > fn)
1902
1903
  return !1;
1903
1904
  let f = !1;
1904
- 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 && ((l = s.user) == null ? void 0 : l.identifier) === ((d = t.user) == null ? void 0 : d.identifier) && ((g = s.user) == null ? void 0 : g.identifier_type) === ((w = t.user) == null ? void 0 : w.identifier_type) && s.signature === t.signature && s.signature_message === t.signature_message);
1905
- let u = !1;
1906
- return t.args && s.args && (u = s.args.page === t.args.page), u && f;
1905
+ 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 && ((u = s.user) == null ? void 0 : u.identifier) === ((d = t.user) == null ? void 0 : d.identifier) && ((g = s.user) == null ? void 0 : g.identifier_type) === ((w = t.user) == null ? void 0 : w.identifier_type) && s.signature === t.signature && s.signature_message === t.signature_message);
1906
+ let l = !1;
1907
+ return t.args && s.args && (l = s.args.page === t.args.page), l && f;
1907
1908
  }
1908
1909
  getCurrentTimestamp() {
1909
1910
  return Date.now() / 1e3;
1910
1911
  }
1911
1912
  saveSentEvent(t) {
1912
- var o, c, f, u;
1913
+ var o, c, f, l;
1913
1914
  const r = `${Xe}_${t.name}`, n = `${r}_all`, s = this.getCurrentTimestamp(), i = { ...t, timestamp: s };
1914
1915
  if (localStorage.setItem(r, JSON.stringify(i)), t.name === dn) {
1915
- const l = JSON.parse(localStorage.getItem(n) || "[]"), d = {
1916
+ const u = JSON.parse(localStorage.getItem(n) || "[]"), d = {
1916
1917
  name: t.name,
1917
1918
  user: {
1918
1919
  identifier: (o = t.user) == null ? void 0 : o.identifier,
1919
1920
  identifier_type: (c = t.user) == null ? void 0 : c.identifier_type
1920
1921
  },
1921
1922
  tracking_id: (f = t.metadata) == null ? void 0 : f.tracking_id,
1922
- page: (u = t.args) == null ? void 0 : u.page
1923
+ page: (l = t.args) == null ? void 0 : l.page
1923
1924
  };
1924
1925
  "user_address" in t && (d.user_address = t.user_address);
1925
- const g = [...l, d];
1926
+ const g = [...u, d];
1926
1927
  g.length > Ye && g.splice(0, g.length - Ye), localStorage.setItem(n, JSON.stringify(g));
1927
1928
  }
1928
1929
  }
1929
1930
  }
1930
- const pn = "7.7.0", mn = {
1931
+ const pn = "7.7.1", mn = {
1931
1932
  version: pn
1932
1933
  };
1933
1934
  class yn {
@@ -2227,7 +2228,8 @@ async function vn(e) {
2227
2228
  e.code,
2228
2229
  e.signature,
2229
2230
  e.signaturePublicKey,
2230
- e.accountChainId
2231
+ e.accountChainId,
2232
+ e.userSplitPercentage
2231
2233
  );
2232
2234
  }
2233
2235
  async function In(e, t) {
package/dist/index.umd.js CHANGED
@@ -1,6 +1,6 @@
1
- (function(A,P){typeof exports=="object"&&typeof module<"u"?P(exports):typeof define=="function"&&define.amd?define(["exports"],P):(A=typeof globalThis<"u"?globalThis:A||self,P(A.Fuul={}))})(this,function(A){"use strict";var ns=Object.defineProperty;var ss=(A,P,H)=>P in A?ns(A,P,{enumerable:!0,configurable:!0,writable:!0,value:H}):A[P]=H;var C=(A,P,H)=>ss(A,typeof P!="symbol"?P+"":P,H);const P="/affiliate-portal";class H{constructor(t){C(this,"httpClient");this.httpClient=t.httpClient}async getAffiliateStats(t){return(await this.httpClient.get({path:`${P}/stats`,queryParams:{user_identifier:t.user_identifier}})).data}async getAffiliateNewTraders(t){return(await this.httpClient.get({path:`${P}/new-traders`,queryParams:{user_identifier:t.user_identifier,from:t.from,to:t.to}})).data}}function ve(e,t){return function(){return e.apply(t,arguments)}}const{toString:xt}=Object.prototype,{getPrototypeOf:me}=Object,{iterator:te,toStringTag:Ie}=Symbol,re=(e=>t=>{const r=xt.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),U=e=>(e=e.toLowerCase(),t=>re(t)===e),ne=e=>t=>typeof t===e,{isArray:K}=Array,X=ne("undefined");function Q(e){return e!==null&&!X(e)&&e.constructor!==null&&!X(e.constructor)&&O(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const je=U("ArrayBuffer");function Ut(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&je(e.buffer),t}const Lt=ne("string"),O=ne("function"),$e=ne("number"),Y=e=>e!==null&&typeof e=="object",Ft=e=>e===!0||e===!1,se=e=>{if(re(e)!=="object")return!1;const t=me(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Ie in e)&&!(te in e)},Dt=e=>{if(!Y(e)||Q(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},kt=U("Date"),Bt=U("File"),qt=U("Blob"),vt=U("FileList"),It=e=>Y(e)&&O(e.pipe),jt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||O(e.append)&&((t=re(e))==="formdata"||t==="object"&&O(e.toString)&&e.toString()==="[object FormData]"))},$t=U("URLSearchParams"),[Mt,Ht,Kt,Vt]=["ReadableStream","Request","Response","Headers"].map(U),zt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function G(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,s;if(typeof e!="object"&&(e=[e]),K(e))for(n=0,s=e.length;n<s;n++)t.call(null,e[n],n,e);else{if(Q(e))return;const i=r?Object.getOwnPropertyNames(e):Object.keys(e),o=i.length;let c;for(n=0;n<o;n++)c=i[n],t.call(null,e[c],c,e)}}function Me(e,t){if(Q(e))return null;t=t.toLowerCase();const r=Object.keys(e);let n=r.length,s;for(;n-- >0;)if(s=r[n],t===s.toLowerCase())return s;return null}const q=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,He=e=>!X(e)&&e!==q;function ye(){const{caseless:e}=He(this)&&this||{},t={},r=(n,s)=>{const i=e&&Me(t,s)||s;se(t[i])&&se(n)?t[i]=ye(t[i],n):se(n)?t[i]=ye({},n):K(n)?t[i]=n.slice():t[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&G(arguments[n],r);return t}const Jt=(e,t,r,{allOwnKeys:n}={})=>(G(t,(s,i)=>{r&&O(s)?e[i]=ve(s,r):e[i]=s},{allOwnKeys:n}),e),Wt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Xt=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},Qt=(e,t,r,n)=>{let s,i,o;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)o=s[i],(!n||n(o,e,t))&&!c[o]&&(t[o]=e[o],c[o]=!0);e=r!==!1&&me(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},Yt=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},Gt=e=>{if(!e)return null;if(K(e))return e;let t=e.length;if(!$e(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},Zt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&me(Uint8Array)),er=(e,t)=>{const n=(e&&e[te]).call(e);let s;for(;(s=n.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},tr=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},rr=U("HTMLFormElement"),nr=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),Ke=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),sr=U("RegExp"),Ve=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};G(r,(s,i)=>{let o;(o=t(s,i,e))!==!1&&(n[i]=o||s)}),Object.defineProperties(e,n)},ir=e=>{Ve(e,(t,r)=>{if(O(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(O(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},or=(e,t)=>{const r={},n=s=>{s.forEach(i=>{r[i]=!0})};return K(e)?n(e):n(String(e).split(t)),r},ar=()=>{},cr=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function ur(e){return!!(e&&O(e.append)&&e[Ie]==="FormData"&&e[te])}const lr=e=>{const t=new Array(10),r=(n,s)=>{if(Y(n)){if(t.indexOf(n)>=0)return;if(Q(n))return n;if(!("toJSON"in n)){t[s]=n;const i=K(n)?[]:{};return G(n,(o,c)=>{const f=r(o,s+1);!X(f)&&(i[c]=f)}),t[s]=void 0,i}}return n};return r(e,0)},fr=U("AsyncFunction"),dr=e=>e&&(Y(e)||O(e))&&O(e.then)&&O(e.catch),ze=((e,t)=>e?setImmediate:t?((r,n)=>(q.addEventListener("message",({source:s,data:i})=>{s===q&&i===r&&n.length&&n.shift()()},!1),s=>{n.push(s),q.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",O(q.postMessage)),hr=typeof queueMicrotask<"u"?queueMicrotask.bind(q):typeof process<"u"&&process.nextTick||ze,a={isArray:K,isArrayBuffer:je,isBuffer:Q,isFormData:jt,isArrayBufferView:Ut,isString:Lt,isNumber:$e,isBoolean:Ft,isObject:Y,isPlainObject:se,isEmptyObject:Dt,isReadableStream:Mt,isRequest:Ht,isResponse:Kt,isHeaders:Vt,isUndefined:X,isDate:kt,isFile:Bt,isBlob:qt,isRegExp:sr,isFunction:O,isStream:It,isURLSearchParams:$t,isTypedArray:Zt,isFileList:vt,forEach:G,merge:ye,extend:Jt,trim:zt,stripBOM:Wt,inherits:Xt,toFlatObject:Qt,kindOf:re,kindOfTest:U,endsWith:Yt,toArray:Gt,forEachEntry:er,matchAll:tr,isHTMLForm:rr,hasOwnProperty:Ke,hasOwnProp:Ke,reduceDescriptors:Ve,freezeMethods:ir,toObjectSet:or,toCamelCase:nr,noop:ar,toFiniteNumber:cr,findKey:Me,global:q,isContextDefined:He,isSpecCompliantForm:ur,toJSONObject:lr,isAsyncFn:fr,isThenable:dr,setImmediate:ze,asap:hr,isIterable:e=>e!=null&&O(e[te])};function m(e,t,r,n,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),r&&(this.config=r),n&&(this.request=n),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 Je=m.prototype,We={};["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=>{We[e]={value:e}}),Object.defineProperties(m,We),Object.defineProperty(Je,"isAxiosError",{value:!0}),m.from=(e,t,r,n,s,i)=>{const o=Object.create(Je);return a.toFlatObject(e,o,function(f){return f!==Error.prototype},c=>c!=="isAxiosError"),m.call(o,e.message,t,r,n,s),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const pr=null;function ge(e){return a.isPlainObject(e)||a.isArray(e)}function Xe(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Qe(e,t,r){return e?e.concat(t).map(function(s,i){return s=Xe(s),!r&&i?"["+s+"]":s}).join(r?".":""):t}function mr(e){return a.isArray(e)&&!e.some(ge)}const yr=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function ie(e,t,r){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=a.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,p){return!a.isUndefined(p[y])});const n=r.metaTokens,s=r.visitor||l,i=r.dots,o=r.indexes,f=(r.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(a.isBoolean(h))return h.toString();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 E=h;if(h&&!p&&typeof h=="object"){if(a.endsWith(y,"{}"))y=n?y:y.slice(0,-2),h=JSON.stringify(h);else if(a.isArray(h)&&mr(h)||(a.isFileList(h)||a.endsWith(y,"[]"))&&(E=a.toArray(h)))return y=Xe(y),E.forEach(function(R,D){!(a.isUndefined(R)||R===null)&&t.append(o===!0?Qe([y],D,i):o===null?y:y+"[]",u(R))}),!1}return ge(h)?!0:(t.append(Qe(p,y,i),u(h)),!1)}const d=[],g=Object.assign(yr,{defaultVisitor:l,convertValue:u,isVisitable:ge});function w(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(E,_){(!(a.isUndefined(E)||E===null)&&s.call(t,E,a.isString(_)?_.trim():_,y,g))===!0&&w(E,y?y.concat(_):[_])}),d.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return w(e),t}function Ye(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function we(e,t){this._pairs=[],e&&ie(e,this,t)}const Ge=we.prototype;Ge.append=function(t,r){this._pairs.push([t,r])},Ge.toString=function(t){const r=t?function(n){return t.call(this,n,Ye)}:Ye;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};function gr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Ze(e,t,r){if(!t)return e;const n=r&&r.encode||gr;a.isFunction(r)&&(r={serialize:r});const s=r&&r.serialize;let i;if(s?i=s(t,r):i=a.isURLSearchParams(t)?t.toString():new we(t,r).toString(n),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class et{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.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(n){n!==null&&t(n)})}}const tt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},wr={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:we,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},be=typeof window<"u"&&typeof document<"u",Ee=typeof navigator=="object"&&navigator||void 0,br=be&&(!Ee||["ReactNative","NativeScript","NS"].indexOf(Ee.product)<0),Er=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Sr=be&&window.location.href||"http://localhost",T={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:be,hasStandardBrowserEnv:br,hasStandardBrowserWebWorkerEnv:Er,navigator:Ee,origin:Sr},Symbol.toStringTag,{value:"Module"})),...wr};function Cr(e,t){return ie(e,new T.classes.URLSearchParams,{visitor:function(r,n,s,i){return T.isNode&&a.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function _r(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Rr(e){const t={},r=Object.keys(e);let n;const s=r.length;let i;for(n=0;n<s;n++)i=r[n],t[i]=e[i];return t}function rt(e){function t(r,n,s,i){let o=r[i++];if(o==="__proto__")return!0;const c=Number.isFinite(+o),f=i>=r.length;return o=!o&&a.isArray(s)?s.length:o,f?(a.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!c):((!s[o]||!a.isObject(s[o]))&&(s[o]=[]),t(r,n,s[o],i)&&a.isArray(s[o])&&(s[o]=Rr(s[o])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const r={};return a.forEachEntry(e,(n,s)=>{t(_r(n),s,r,0)}),r}return null}function Ar(e,t,r){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(0,JSON.stringify)(e)}const Z={transitional:tt,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=a.isObject(t);if(i&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(rt(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 r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Cr(t,this.formSerializer).toString();if((c=a.isFileList(t))||n.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return ie(c?{"files[]":t}:t,f&&new f,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),Ar(t)):t}],transformResponse:[function(t){const r=this.transitional||Z.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(n&&!this.responseType||s)){const o=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(c){if(o)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:T.classes.FormData,Blob:T.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=>{Z.headers[e]={}});const Tr=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"]),Pr=e=>{const t={};let r,n,s;return e&&e.split(`
2
- `).forEach(function(o){s=o.indexOf(":"),r=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!r||t[r]&&Tr[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},nt=Symbol("internals");function ee(e){return e&&String(e).trim().toLowerCase()}function oe(e){return e===!1||e==null?e:a.isArray(e)?e.map(oe):String(e)}function Or(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Nr=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Se(e,t,r,n,s){if(a.isFunction(n))return n.call(this,t,r);if(s&&(t=r),!!a.isString(t)){if(a.isString(n))return t.indexOf(n)!==-1;if(a.isRegExp(n))return n.test(t)}}function xr(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Ur(e,t){const r=a.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(s,i,o){return this[n].call(this,t,s,i,o)},configurable:!0})})}let N=class{constructor(t){t&&this.set(t)}set(t,r,n){const s=this;function i(c,f,u){const l=ee(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]=oe(c))}const o=(c,f)=>a.forEach(c,(u,l)=>i(u,l,f));if(a.isPlainObject(t)||t instanceof this.constructor)o(t,r);else if(a.isString(t)&&(t=t.trim())&&!Nr(t))o(Pr(t),r);else if(a.isObject(t)&&a.isIterable(t)){let c={},f,u;for(const l of t){if(!a.isArray(l))throw TypeError("Object iterator must return a key-value pair");c[u=l[0]]=(f=c[u])?a.isArray(f)?[...f,l[1]]:[f,l[1]]:l[1]}o(c,r)}else t!=null&&i(r,t,n);return this}get(t,r){if(t=ee(t),t){const n=a.findKey(this,t);if(n){const s=this[n];if(!r)return s;if(r===!0)return Or(s);if(a.isFunction(r))return r.call(this,s,n);if(a.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=ee(t),t){const n=a.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||Se(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let s=!1;function i(o){if(o=ee(o),o){const c=a.findKey(n,o);c&&(!r||Se(n,n[c],c,r))&&(delete n[c],s=!0)}}return a.isArray(t)?t.forEach(i):i(t),s}clear(t){const r=Object.keys(this);let n=r.length,s=!1;for(;n--;){const i=r[n];(!t||Se(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const r=this,n={};return a.forEach(this,(s,i)=>{const o=a.findKey(n,i);if(o){r[o]=oe(s),delete r[i];return}const c=t?xr(i):String(i).trim();c!==i&&delete r[i],r[c]=oe(s),n[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return a.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=t&&a.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
- `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(s=>n.set(s)),n}static accessor(t){const n=(this[nt]=this[nt]={accessors:{}}).accessors,s=this.prototype;function i(o){const c=ee(o);n[c]||(Ur(s,o),n[c]=!0)}return a.isArray(t)?t.forEach(i):i(t),this}};N.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(N.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),a.freezeMethods(N);function Ce(e,t){const r=this||Z,n=t||r,s=N.from(n.headers);let i=n.data;return a.forEach(e,function(c){i=c.call(r,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}function st(e){return!!(e&&e.__CANCEL__)}function V(e,t,r){m.call(this,e??"canceled",m.ERR_CANCELED,t,r),this.name="CanceledError"}a.inherits(V,m,{__CANCEL__:!0});function it(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new m("Request failed with status code "+r.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Lr(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Fr(e,t){e=e||10;const r=new Array(e),n=new Array(e);let s=0,i=0,o;return t=t!==void 0?t:1e3,function(f){const u=Date.now(),l=n[i];o||(o=u),r[s]=f,n[s]=u;let d=i,g=0;for(;d!==s;)g+=r[d++],d=d%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),u-o<t)return;const w=l&&u-l;return w?Math.round(g*1e3/w):void 0}}function Dr(e,t){let r=0,n=1e3/t,s,i;const o=(u,l=Date.now())=>{r=l,s=null,i&&(clearTimeout(i),i=null),e(...u)};return[(...u)=>{const l=Date.now(),d=l-r;d>=n?o(u,l):(s=u,i||(i=setTimeout(()=>{i=null,o(s)},n-d)))},()=>s&&o(s)]}const ae=(e,t,r=3)=>{let n=0;const s=Fr(50,250);return Dr(i=>{const o=i.loaded,c=i.lengthComputable?i.total:void 0,f=o-n,u=s(f),l=o<=c;n=o;const d={loaded:o,total:c,progress:c?o/c:void 0,bytes:f,rate:u||void 0,estimated:u&&c&&l?(c-o)/u:void 0,event:i,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(d)},r)},ot=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},at=e=>(...t)=>a.asap(()=>e(...t)),kr=T.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,T.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(T.origin),T.navigator&&/(msie|trident)/i.test(T.navigator.userAgent)):()=>!0,Br=T.hasStandardBrowserEnv?{write(e,t,r,n,s,i){const o=[e+"="+encodeURIComponent(t)];a.isNumber(r)&&o.push("expires="+new Date(r).toGMTString()),a.isString(n)&&o.push("path="+n),a.isString(s)&&o.push("domain="+s),i===!0&&o.push("secure"),document.cookie=o.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 qr(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function vr(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ct(e,t,r){let n=!qr(t);return e&&(n||r==!1)?vr(e,t):t}const ut=e=>e instanceof N?{...e}:e;function v(e,t){t=t||{};const r={};function n(u,l,d,g){return a.isPlainObject(u)&&a.isPlainObject(l)?a.merge.call({caseless:g},u,l):a.isPlainObject(l)?a.merge({},l):a.isArray(l)?l.slice():l}function s(u,l,d,g){if(a.isUndefined(l)){if(!a.isUndefined(u))return n(void 0,u,d,g)}else return n(u,l,d,g)}function i(u,l){if(!a.isUndefined(l))return n(void 0,l)}function o(u,l){if(a.isUndefined(l)){if(!a.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function c(u,l,d){if(d in t)return n(u,l);if(d in e)return n(void 0,u)}const f={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(u,l,d)=>s(ut(u),ut(l),d,!0)};return a.forEach(Object.keys({...e,...t}),function(l){const d=f[l]||s,g=d(e[l],t[l],l);a.isUndefined(g)&&d!==c||(r[l]=g)}),r}const lt=e=>{const t=v({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:c}=t;t.headers=o=N.from(o),t.url=Ze(ct(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&o.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):"")));let f;if(a.isFormData(r)){if(T.hasStandardBrowserEnv||T.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((f=o.getContentType())!==!1){const[u,...l]=f?f.split(";").map(d=>d.trim()).filter(Boolean):[];o.setContentType([u||"multipart/form-data",...l].join("; "))}}if(T.hasStandardBrowserEnv&&(n&&a.isFunction(n)&&(n=n(t)),n||n!==!1&&kr(t.url))){const u=s&&i&&Br.read(i);u&&o.set(s,u)}return t},Ir=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const s=lt(e);let i=s.data;const o=N.from(s.headers).normalize();let{responseType:c,onUploadProgress:f,onDownloadProgress:u}=s,l,d,g,w,h;function y(){w&&w(),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 E(){if(!p)return;const R=N.from("getAllResponseHeaders"in p&&p.getAllResponseHeaders()),x={data:!c||c==="text"||c==="json"?p.responseText:p.response,status:p.status,statusText:p.statusText,headers:R,config:e,request:p};it(function(M){r(M),y()},function(M){n(M),y()},x),p=null}"onloadend"in p?p.onloadend=E:p.onreadystatechange=function(){!p||p.readyState!==4||p.status===0&&!(p.responseURL&&p.responseURL.indexOf("file:")===0)||setTimeout(E)},p.onabort=function(){p&&(n(new m("Request aborted",m.ECONNABORTED,e,p)),p=null)},p.onerror=function(){n(new m("Network Error",m.ERR_NETWORK,e,p)),p=null},p.ontimeout=function(){let D=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const x=s.transitional||tt;s.timeoutErrorMessage&&(D=s.timeoutErrorMessage),n(new m(D,x.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,p)),p=null},i===void 0&&o.setContentType(null),"setRequestHeader"in p&&a.forEach(o.toJSON(),function(D,x){p.setRequestHeader(x,D)}),a.isUndefined(s.withCredentials)||(p.withCredentials=!!s.withCredentials),c&&c!=="json"&&(p.responseType=s.responseType),u&&([g,h]=ae(u,!0),p.addEventListener("progress",g)),f&&p.upload&&([d,w]=ae(f),p.upload.addEventListener("progress",d),p.upload.addEventListener("loadend",w)),(s.cancelToken||s.signal)&&(l=R=>{p&&(n(!R||R.type?new V(null,e,p):R),p.abort(),p=null)},s.cancelToken&&s.cancelToken.subscribe(l),s.signal&&(s.signal.aborted?l():s.signal.addEventListener("abort",l)));const _=Lr(s.url);if(_&&T.protocols.indexOf(_)===-1){n(new m("Unsupported protocol "+_+":",m.ERR_BAD_REQUEST,e));return}p.send(i||null)})},jr=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,s;const i=function(u){if(!s){s=!0,c();const l=u instanceof Error?u:this.reason;n.abort(l instanceof m?l:new V(l instanceof Error?l.message:l))}};let o=t&&setTimeout(()=>{o=null,i(new m(`timeout ${t} of ms exceeded`,m.ETIMEDOUT))},t);const c=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(i):u.removeEventListener("abort",i)}),e=null)};e.forEach(u=>u.addEventListener("abort",i));const{signal:f}=n;return f.unsubscribe=()=>a.asap(c),f}},$r=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let n=0,s;for(;n<r;)s=n+t,yield e.slice(n,s),n=s},Mr=async function*(e,t){for await(const r of Hr(e))yield*$r(r,t)},Hr=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},ft=(e,t,r,n)=>{const s=Mr(e,t);let i=0,o,c=f=>{o||(o=!0,n&&n(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(r){let g=i+=d;r(g)}f.enqueue(new Uint8Array(l))}catch(u){throw c(u),u}},cancel(f){return c(f),s.return()}},{highWaterMark:2})},ce=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",dt=ce&&typeof ReadableStream=="function",Kr=ce&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),ht=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Vr=dt&&ht(()=>{let e=!1;const t=new Request(T.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),pt=64*1024,_e=dt&&ht(()=>a.isReadableStream(new Response("").body)),ue={stream:_e&&(e=>e.body)};ce&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!ue[t]&&(ue[t]=a.isFunction(e[t])?r=>r[t]():(r,n)=>{throw new m(`Response type '${t}' is not supported`,m.ERR_NOT_SUPPORT,n)})})})(new Response);const zr=async e=>{if(e==null)return 0;if(a.isBlob(e))return e.size;if(a.isSpecCompliantForm(e))return(await new Request(T.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 Kr(e)).byteLength},Jr=async(e,t)=>{const r=a.toFiniteNumber(e.getContentLength());return r??zr(t)},Re={http:pr,xhr:Ir,fetch:ce&&(async e=>{let{url:t,method:r,data:n,signal:s,cancelToken:i,timeout:o,onDownloadProgress:c,onUploadProgress:f,responseType:u,headers:l,withCredentials:d="same-origin",fetchOptions:g}=lt(e);u=u?(u+"").toLowerCase():"text";let w=jr([s,i&&i.toAbortSignal()],o),h;const y=w&&w.unsubscribe&&(()=>{w.unsubscribe()});let p;try{if(f&&Vr&&r!=="get"&&r!=="head"&&(p=await Jr(l,n))!==0){let x=new Request(t,{method:"POST",body:n,duplex:"half"}),B;if(a.isFormData(n)&&(B=x.headers.get("content-type"))&&l.setContentType(B),x.body){const[M,pe]=ot(p,ae(at(f)));n=ft(x.body,pt,M,pe)}}a.isString(d)||(d=d?"include":"omit");const E="credentials"in Request.prototype;h=new Request(t,{...g,signal:w,method:r.toUpperCase(),headers:l.normalize().toJSON(),body:n,duplex:"half",credentials:E?d:void 0});let _=await fetch(h,g);const R=_e&&(u==="stream"||u==="response");if(_e&&(c||R&&y)){const x={};["status","statusText","headers"].forEach(Ot=>{x[Ot]=_[Ot]});const B=a.toFiniteNumber(_.headers.get("content-length")),[M,pe]=c&&ot(B,ae(at(c),!0))||[];_=new Response(ft(_.body,pt,M,()=>{pe&&pe(),y&&y()}),x)}u=u||"text";let D=await ue[a.findKey(ue,u)||"text"](_,e);return!R&&y&&y(),await new Promise((x,B)=>{it(x,B,{data:D,headers:N.from(_.headers),status:_.status,statusText:_.statusText,config:e,request:h})})}catch(E){throw y&&y(),E&&E.name==="TypeError"&&/Load failed|fetch/i.test(E.message)?Object.assign(new m("Network Error",m.ERR_NETWORK,e,h),{cause:E.cause||E}):m.from(E,E&&E.code,e,h)}})};a.forEach(Re,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const mt=e=>`- ${e}`,Wr=e=>a.isFunction(e)||e===null||e===!1,yt={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let r,n;const s={};for(let i=0;i<t;i++){r=e[i];let o;if(n=r,!Wr(r)&&(n=Re[(o=String(r)).toLowerCase()],n===void 0))throw new m(`Unknown adapter '${o}'`);if(n)break;s[o||"#"+i]=n}if(!n){const i=Object.entries(s).map(([c,f])=>`adapter ${c} `+(f===!1?"is not supported by the environment":"is not available in the build"));let o=t?i.length>1?`since :
1
+ (function(A,P){typeof exports=="object"&&typeof module<"u"?P(exports):typeof define=="function"&&define.amd?define(["exports"],P):(A=typeof globalThis<"u"?globalThis:A||self,P(A.Fuul={}))})(this,function(A){"use strict";var ns=Object.defineProperty;var ss=(A,P,H)=>P in A?ns(A,P,{enumerable:!0,configurable:!0,writable:!0,value:H}):A[P]=H;var _=(A,P,H)=>ss(A,typeof P!="symbol"?P+"":P,H);const P="/affiliate-portal";class H{constructor(t){_(this,"httpClient");this.httpClient=t.httpClient}async getAffiliateStats(t){return(await this.httpClient.get({path:`${P}/stats`,queryParams:{user_identifier:t.user_identifier}})).data}async getAffiliateNewTraders(t){return(await this.httpClient.get({path:`${P}/new-traders`,queryParams:{user_identifier:t.user_identifier,from:t.from,to:t.to}})).data}}function ve(e,t){return function(){return e.apply(t,arguments)}}const{toString:xt}=Object.prototype,{getPrototypeOf:me}=Object,{iterator:te,toStringTag:Ie}=Symbol,re=(e=>t=>{const r=xt.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),U=e=>(e=e.toLowerCase(),t=>re(t)===e),ne=e=>t=>typeof t===e,{isArray:K}=Array,X=ne("undefined");function Q(e){return e!==null&&!X(e)&&e.constructor!==null&&!X(e.constructor)&&O(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const je=U("ArrayBuffer");function Ut(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&je(e.buffer),t}const Lt=ne("string"),O=ne("function"),$e=ne("number"),Y=e=>e!==null&&typeof e=="object",Ft=e=>e===!0||e===!1,se=e=>{if(re(e)!=="object")return!1;const t=me(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Ie in e)&&!(te in e)},Dt=e=>{if(!Y(e)||Q(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},kt=U("Date"),Bt=U("File"),qt=U("Blob"),vt=U("FileList"),It=e=>Y(e)&&O(e.pipe),jt=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||O(e.append)&&((t=re(e))==="formdata"||t==="object"&&O(e.toString)&&e.toString()==="[object FormData]"))},$t=U("URLSearchParams"),[Mt,Ht,Kt,Vt]=["ReadableStream","Request","Response","Headers"].map(U),zt=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function G(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,s;if(typeof e!="object"&&(e=[e]),K(e))for(n=0,s=e.length;n<s;n++)t.call(null,e[n],n,e);else{if(Q(e))return;const i=r?Object.getOwnPropertyNames(e):Object.keys(e),o=i.length;let c;for(n=0;n<o;n++)c=i[n],t.call(null,e[c],c,e)}}function Me(e,t){if(Q(e))return null;t=t.toLowerCase();const r=Object.keys(e);let n=r.length,s;for(;n-- >0;)if(s=r[n],t===s.toLowerCase())return s;return null}const q=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,He=e=>!X(e)&&e!==q;function ye(){const{caseless:e}=He(this)&&this||{},t={},r=(n,s)=>{const i=e&&Me(t,s)||s;se(t[i])&&se(n)?t[i]=ye(t[i],n):se(n)?t[i]=ye({},n):K(n)?t[i]=n.slice():t[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&G(arguments[n],r);return t}const Jt=(e,t,r,{allOwnKeys:n}={})=>(G(t,(s,i)=>{r&&O(s)?e[i]=ve(s,r):e[i]=s},{allOwnKeys:n}),e),Wt=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Xt=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},Qt=(e,t,r,n)=>{let s,i,o;const c={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)o=s[i],(!n||n(o,e,t))&&!c[o]&&(t[o]=e[o],c[o]=!0);e=r!==!1&&me(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},Yt=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},Gt=e=>{if(!e)return null;if(K(e))return e;let t=e.length;if(!$e(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},Zt=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&me(Uint8Array)),er=(e,t)=>{const n=(e&&e[te]).call(e);let s;for(;(s=n.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},tr=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},rr=U("HTMLFormElement"),nr=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),Ke=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),sr=U("RegExp"),Ve=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};G(r,(s,i)=>{let o;(o=t(s,i,e))!==!1&&(n[i]=o||s)}),Object.defineProperties(e,n)},ir=e=>{Ve(e,(t,r)=>{if(O(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(O(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},or=(e,t)=>{const r={},n=s=>{s.forEach(i=>{r[i]=!0})};return K(e)?n(e):n(String(e).split(t)),r},ar=()=>{},cr=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function ur(e){return!!(e&&O(e.append)&&e[Ie]==="FormData"&&e[te])}const lr=e=>{const t=new Array(10),r=(n,s)=>{if(Y(n)){if(t.indexOf(n)>=0)return;if(Q(n))return n;if(!("toJSON"in n)){t[s]=n;const i=K(n)?[]:{};return G(n,(o,c)=>{const f=r(o,s+1);!X(f)&&(i[c]=f)}),t[s]=void 0,i}}return n};return r(e,0)},fr=U("AsyncFunction"),dr=e=>e&&(Y(e)||O(e))&&O(e.then)&&O(e.catch),ze=((e,t)=>e?setImmediate:t?((r,n)=>(q.addEventListener("message",({source:s,data:i})=>{s===q&&i===r&&n.length&&n.shift()()},!1),s=>{n.push(s),q.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",O(q.postMessage)),hr=typeof queueMicrotask<"u"?queueMicrotask.bind(q):typeof process<"u"&&process.nextTick||ze,a={isArray:K,isArrayBuffer:je,isBuffer:Q,isFormData:jt,isArrayBufferView:Ut,isString:Lt,isNumber:$e,isBoolean:Ft,isObject:Y,isPlainObject:se,isEmptyObject:Dt,isReadableStream:Mt,isRequest:Ht,isResponse:Kt,isHeaders:Vt,isUndefined:X,isDate:kt,isFile:Bt,isBlob:qt,isRegExp:sr,isFunction:O,isStream:It,isURLSearchParams:$t,isTypedArray:Zt,isFileList:vt,forEach:G,merge:ye,extend:Jt,trim:zt,stripBOM:Wt,inherits:Xt,toFlatObject:Qt,kindOf:re,kindOfTest:U,endsWith:Yt,toArray:Gt,forEachEntry:er,matchAll:tr,isHTMLForm:rr,hasOwnProperty:Ke,hasOwnProp:Ke,reduceDescriptors:Ve,freezeMethods:ir,toObjectSet:or,toCamelCase:nr,noop:ar,toFiniteNumber:cr,findKey:Me,global:q,isContextDefined:He,isSpecCompliantForm:ur,toJSONObject:lr,isAsyncFn:fr,isThenable:dr,setImmediate:ze,asap:hr,isIterable:e=>e!=null&&O(e[te])};function m(e,t,r,n,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),r&&(this.config=r),n&&(this.request=n),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 Je=m.prototype,We={};["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=>{We[e]={value:e}}),Object.defineProperties(m,We),Object.defineProperty(Je,"isAxiosError",{value:!0}),m.from=(e,t,r,n,s,i)=>{const o=Object.create(Je);return a.toFlatObject(e,o,function(f){return f!==Error.prototype},c=>c!=="isAxiosError"),m.call(o,e.message,t,r,n,s),o.cause=e,o.name=e.name,i&&Object.assign(o,i),o};const pr=null;function ge(e){return a.isPlainObject(e)||a.isArray(e)}function Xe(e){return a.endsWith(e,"[]")?e.slice(0,-2):e}function Qe(e,t,r){return e?e.concat(t).map(function(s,i){return s=Xe(s),!r&&i?"["+s+"]":s}).join(r?".":""):t}function mr(e){return a.isArray(e)&&!e.some(ge)}const yr=a.toFlatObject(a,{},null,function(t){return/^is[A-Z]/.test(t)});function ie(e,t,r){if(!a.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=a.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(y,p){return!a.isUndefined(p[y])});const n=r.metaTokens,s=r.visitor||u,i=r.dots,o=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&a.isSpecCompliantForm(t);if(!a.isFunction(s))throw new TypeError("visitor must be a function");function l(h){if(h===null)return"";if(a.isDate(h))return h.toISOString();if(a.isBoolean(h))return h.toString();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 u(h,y,p){let E=h;if(h&&!p&&typeof h=="object"){if(a.endsWith(y,"{}"))y=n?y:y.slice(0,-2),h=JSON.stringify(h);else if(a.isArray(h)&&mr(h)||(a.isFileList(h)||a.endsWith(y,"[]"))&&(E=a.toArray(h)))return y=Xe(y),E.forEach(function(R,D){!(a.isUndefined(R)||R===null)&&t.append(o===!0?Qe([y],D,i):o===null?y:y+"[]",l(R))}),!1}return ge(h)?!0:(t.append(Qe(p,y,i),l(h)),!1)}const d=[],g=Object.assign(yr,{defaultVisitor:u,convertValue:l,isVisitable:ge});function w(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(E,C){(!(a.isUndefined(E)||E===null)&&s.call(t,E,a.isString(C)?C.trim():C,y,g))===!0&&w(E,y?y.concat(C):[C])}),d.pop()}}if(!a.isObject(e))throw new TypeError("data must be an object");return w(e),t}function Ye(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function we(e,t){this._pairs=[],e&&ie(e,this,t)}const Ge=we.prototype;Ge.append=function(t,r){this._pairs.push([t,r])},Ge.toString=function(t){const r=t?function(n){return t.call(this,n,Ye)}:Ye;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};function gr(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Ze(e,t,r){if(!t)return e;const n=r&&r.encode||gr;a.isFunction(r)&&(r={serialize:r});const s=r&&r.serialize;let i;if(s?i=s(t,r):i=a.isURLSearchParams(t)?t.toString():new we(t,r).toString(n),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class et{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.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(n){n!==null&&t(n)})}}const tt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},wr={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:we,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},be=typeof window<"u"&&typeof document<"u",Ee=typeof navigator=="object"&&navigator||void 0,br=be&&(!Ee||["ReactNative","NativeScript","NS"].indexOf(Ee.product)<0),Er=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Sr=be&&window.location.href||"http://localhost",T={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:be,hasStandardBrowserEnv:br,hasStandardBrowserWebWorkerEnv:Er,navigator:Ee,origin:Sr},Symbol.toStringTag,{value:"Module"})),...wr};function _r(e,t){return ie(e,new T.classes.URLSearchParams,{visitor:function(r,n,s,i){return T.isNode&&a.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function Cr(e){return a.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function Rr(e){const t={},r=Object.keys(e);let n;const s=r.length;let i;for(n=0;n<s;n++)i=r[n],t[i]=e[i];return t}function rt(e){function t(r,n,s,i){let o=r[i++];if(o==="__proto__")return!0;const c=Number.isFinite(+o),f=i>=r.length;return o=!o&&a.isArray(s)?s.length:o,f?(a.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!c):((!s[o]||!a.isObject(s[o]))&&(s[o]=[]),t(r,n,s[o],i)&&a.isArray(s[o])&&(s[o]=Rr(s[o])),!c)}if(a.isFormData(e)&&a.isFunction(e.entries)){const r={};return a.forEachEntry(e,(n,s)=>{t(Cr(n),s,r,0)}),r}return null}function Ar(e,t,r){if(a.isString(e))try{return(t||JSON.parse)(e),a.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(0,JSON.stringify)(e)}const Z={transitional:tt,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=a.isObject(t);if(i&&a.isHTMLForm(t)&&(t=new FormData(t)),a.isFormData(t))return s?JSON.stringify(rt(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 r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let c;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return _r(t,this.formSerializer).toString();if((c=a.isFileList(t))||n.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return ie(c?{"files[]":t}:t,f&&new f,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),Ar(t)):t}],transformResponse:[function(t){const r=this.transitional||Z.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(a.isResponse(t)||a.isReadableStream(t))return t;if(t&&a.isString(t)&&(n&&!this.responseType||s)){const o=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(t)}catch(c){if(o)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:T.classes.FormData,Blob:T.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=>{Z.headers[e]={}});const Tr=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"]),Pr=e=>{const t={};let r,n,s;return e&&e.split(`
2
+ `).forEach(function(o){s=o.indexOf(":"),r=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!r||t[r]&&Tr[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},nt=Symbol("internals");function ee(e){return e&&String(e).trim().toLowerCase()}function oe(e){return e===!1||e==null?e:a.isArray(e)?e.map(oe):String(e)}function Or(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Nr=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Se(e,t,r,n,s){if(a.isFunction(n))return n.call(this,t,r);if(s&&(t=r),!!a.isString(t)){if(a.isString(n))return t.indexOf(n)!==-1;if(a.isRegExp(n))return n.test(t)}}function xr(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function Ur(e,t){const r=a.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(s,i,o){return this[n].call(this,t,s,i,o)},configurable:!0})})}let N=class{constructor(t){t&&this.set(t)}set(t,r,n){const s=this;function i(c,f,l){const u=ee(f);if(!u)throw new Error("header name must be a non-empty string");const d=a.findKey(s,u);(!d||s[d]===void 0||l===!0||l===void 0&&s[d]!==!1)&&(s[d||f]=oe(c))}const o=(c,f)=>a.forEach(c,(l,u)=>i(l,u,f));if(a.isPlainObject(t)||t instanceof this.constructor)o(t,r);else if(a.isString(t)&&(t=t.trim())&&!Nr(t))o(Pr(t),r);else if(a.isObject(t)&&a.isIterable(t)){let c={},f,l;for(const u of t){if(!a.isArray(u))throw TypeError("Object iterator must return a key-value pair");c[l=u[0]]=(f=c[l])?a.isArray(f)?[...f,u[1]]:[f,u[1]]:u[1]}o(c,r)}else t!=null&&i(r,t,n);return this}get(t,r){if(t=ee(t),t){const n=a.findKey(this,t);if(n){const s=this[n];if(!r)return s;if(r===!0)return Or(s);if(a.isFunction(r))return r.call(this,s,n);if(a.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=ee(t),t){const n=a.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||Se(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let s=!1;function i(o){if(o=ee(o),o){const c=a.findKey(n,o);c&&(!r||Se(n,n[c],c,r))&&(delete n[c],s=!0)}}return a.isArray(t)?t.forEach(i):i(t),s}clear(t){const r=Object.keys(this);let n=r.length,s=!1;for(;n--;){const i=r[n];(!t||Se(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const r=this,n={};return a.forEach(this,(s,i)=>{const o=a.findKey(n,i);if(o){r[o]=oe(s),delete r[i];return}const c=t?xr(i):String(i).trim();c!==i&&delete r[i],r[c]=oe(s),n[c]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return a.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=t&&a.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
3
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(s=>n.set(s)),n}static accessor(t){const n=(this[nt]=this[nt]={accessors:{}}).accessors,s=this.prototype;function i(o){const c=ee(o);n[c]||(Ur(s,o),n[c]=!0)}return a.isArray(t)?t.forEach(i):i(t),this}};N.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),a.reduceDescriptors(N.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),a.freezeMethods(N);function _e(e,t){const r=this||Z,n=t||r,s=N.from(n.headers);let i=n.data;return a.forEach(e,function(c){i=c.call(r,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}function st(e){return!!(e&&e.__CANCEL__)}function V(e,t,r){m.call(this,e??"canceled",m.ERR_CANCELED,t,r),this.name="CanceledError"}a.inherits(V,m,{__CANCEL__:!0});function it(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new m("Request failed with status code "+r.status,[m.ERR_BAD_REQUEST,m.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Lr(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Fr(e,t){e=e||10;const r=new Array(e),n=new Array(e);let s=0,i=0,o;return t=t!==void 0?t:1e3,function(f){const l=Date.now(),u=n[i];o||(o=l),r[s]=f,n[s]=l;let d=i,g=0;for(;d!==s;)g+=r[d++],d=d%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),l-o<t)return;const w=u&&l-u;return w?Math.round(g*1e3/w):void 0}}function Dr(e,t){let r=0,n=1e3/t,s,i;const o=(l,u=Date.now())=>{r=u,s=null,i&&(clearTimeout(i),i=null),e(...l)};return[(...l)=>{const u=Date.now(),d=u-r;d>=n?o(l,u):(s=l,i||(i=setTimeout(()=>{i=null,o(s)},n-d)))},()=>s&&o(s)]}const ae=(e,t,r=3)=>{let n=0;const s=Fr(50,250);return Dr(i=>{const o=i.loaded,c=i.lengthComputable?i.total:void 0,f=o-n,l=s(f),u=o<=c;n=o;const d={loaded:o,total:c,progress:c?o/c:void 0,bytes:f,rate:l||void 0,estimated:l&&c&&u?(c-o)/l:void 0,event:i,lengthComputable:c!=null,[t?"download":"upload"]:!0};e(d)},r)},ot=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},at=e=>(...t)=>a.asap(()=>e(...t)),kr=T.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,T.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(T.origin),T.navigator&&/(msie|trident)/i.test(T.navigator.userAgent)):()=>!0,Br=T.hasStandardBrowserEnv?{write(e,t,r,n,s,i){const o=[e+"="+encodeURIComponent(t)];a.isNumber(r)&&o.push("expires="+new Date(r).toGMTString()),a.isString(n)&&o.push("path="+n),a.isString(s)&&o.push("domain="+s),i===!0&&o.push("secure"),document.cookie=o.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 qr(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function vr(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function ct(e,t,r){let n=!qr(t);return e&&(n||r==!1)?vr(e,t):t}const ut=e=>e instanceof N?{...e}:e;function v(e,t){t=t||{};const r={};function n(l,u,d,g){return a.isPlainObject(l)&&a.isPlainObject(u)?a.merge.call({caseless:g},l,u):a.isPlainObject(u)?a.merge({},u):a.isArray(u)?u.slice():u}function s(l,u,d,g){if(a.isUndefined(u)){if(!a.isUndefined(l))return n(void 0,l,d,g)}else return n(l,u,d,g)}function i(l,u){if(!a.isUndefined(u))return n(void 0,u)}function o(l,u){if(a.isUndefined(u)){if(!a.isUndefined(l))return n(void 0,l)}else return n(void 0,u)}function c(l,u,d){if(d in t)return n(l,u);if(d in e)return n(void 0,l)}const f={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:c,headers:(l,u,d)=>s(ut(l),ut(u),d,!0)};return a.forEach(Object.keys({...e,...t}),function(u){const d=f[u]||s,g=d(e[u],t[u],u);a.isUndefined(g)&&d!==c||(r[u]=g)}),r}const lt=e=>{const t=v({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:c}=t;t.headers=o=N.from(o),t.url=Ze(ct(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),c&&o.set("Authorization","Basic "+btoa((c.username||"")+":"+(c.password?unescape(encodeURIComponent(c.password)):"")));let f;if(a.isFormData(r)){if(T.hasStandardBrowserEnv||T.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if((f=o.getContentType())!==!1){const[l,...u]=f?f.split(";").map(d=>d.trim()).filter(Boolean):[];o.setContentType([l||"multipart/form-data",...u].join("; "))}}if(T.hasStandardBrowserEnv&&(n&&a.isFunction(n)&&(n=n(t)),n||n!==!1&&kr(t.url))){const l=s&&i&&Br.read(i);l&&o.set(s,l)}return t},Ir=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const s=lt(e);let i=s.data;const o=N.from(s.headers).normalize();let{responseType:c,onUploadProgress:f,onDownloadProgress:l}=s,u,d,g,w,h;function y(){w&&w(),h&&h(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u)}let p=new XMLHttpRequest;p.open(s.method.toUpperCase(),s.url,!0),p.timeout=s.timeout;function E(){if(!p)return;const R=N.from("getAllResponseHeaders"in p&&p.getAllResponseHeaders()),x={data:!c||c==="text"||c==="json"?p.responseText:p.response,status:p.status,statusText:p.statusText,headers:R,config:e,request:p};it(function(M){r(M),y()},function(M){n(M),y()},x),p=null}"onloadend"in p?p.onloadend=E:p.onreadystatechange=function(){!p||p.readyState!==4||p.status===0&&!(p.responseURL&&p.responseURL.indexOf("file:")===0)||setTimeout(E)},p.onabort=function(){p&&(n(new m("Request aborted",m.ECONNABORTED,e,p)),p=null)},p.onerror=function(){n(new m("Network Error",m.ERR_NETWORK,e,p)),p=null},p.ontimeout=function(){let D=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const x=s.transitional||tt;s.timeoutErrorMessage&&(D=s.timeoutErrorMessage),n(new m(D,x.clarifyTimeoutError?m.ETIMEDOUT:m.ECONNABORTED,e,p)),p=null},i===void 0&&o.setContentType(null),"setRequestHeader"in p&&a.forEach(o.toJSON(),function(D,x){p.setRequestHeader(x,D)}),a.isUndefined(s.withCredentials)||(p.withCredentials=!!s.withCredentials),c&&c!=="json"&&(p.responseType=s.responseType),l&&([g,h]=ae(l,!0),p.addEventListener("progress",g)),f&&p.upload&&([d,w]=ae(f),p.upload.addEventListener("progress",d),p.upload.addEventListener("loadend",w)),(s.cancelToken||s.signal)&&(u=R=>{p&&(n(!R||R.type?new V(null,e,p):R),p.abort(),p=null)},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const C=Lr(s.url);if(C&&T.protocols.indexOf(C)===-1){n(new m("Unsupported protocol "+C+":",m.ERR_BAD_REQUEST,e));return}p.send(i||null)})},jr=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,s;const i=function(l){if(!s){s=!0,c();const u=l instanceof Error?l:this.reason;n.abort(u instanceof m?u:new V(u instanceof Error?u.message:u))}};let o=t&&setTimeout(()=>{o=null,i(new m(`timeout ${t} of ms exceeded`,m.ETIMEDOUT))},t);const c=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(l=>{l.unsubscribe?l.unsubscribe(i):l.removeEventListener("abort",i)}),e=null)};e.forEach(l=>l.addEventListener("abort",i));const{signal:f}=n;return f.unsubscribe=()=>a.asap(c),f}},$r=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let n=0,s;for(;n<r;)s=n+t,yield e.slice(n,s),n=s},Mr=async function*(e,t){for await(const r of Hr(e))yield*$r(r,t)},Hr=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},ft=(e,t,r,n)=>{const s=Mr(e,t);let i=0,o,c=f=>{o||(o=!0,n&&n(f))};return new ReadableStream({async pull(f){try{const{done:l,value:u}=await s.next();if(l){c(),f.close();return}let d=u.byteLength;if(r){let g=i+=d;r(g)}f.enqueue(new Uint8Array(u))}catch(l){throw c(l),l}},cancel(f){return c(f),s.return()}},{highWaterMark:2})},ce=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",dt=ce&&typeof ReadableStream=="function",Kr=ce&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),ht=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Vr=dt&&ht(()=>{let e=!1;const t=new Request(T.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),pt=64*1024,Ce=dt&&ht(()=>a.isReadableStream(new Response("").body)),ue={stream:Ce&&(e=>e.body)};ce&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!ue[t]&&(ue[t]=a.isFunction(e[t])?r=>r[t]():(r,n)=>{throw new m(`Response type '${t}' is not supported`,m.ERR_NOT_SUPPORT,n)})})})(new Response);const zr=async e=>{if(e==null)return 0;if(a.isBlob(e))return e.size;if(a.isSpecCompliantForm(e))return(await new Request(T.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 Kr(e)).byteLength},Jr=async(e,t)=>{const r=a.toFiniteNumber(e.getContentLength());return r??zr(t)},Re={http:pr,xhr:Ir,fetch:ce&&(async e=>{let{url:t,method:r,data:n,signal:s,cancelToken:i,timeout:o,onDownloadProgress:c,onUploadProgress:f,responseType:l,headers:u,withCredentials:d="same-origin",fetchOptions:g}=lt(e);l=l?(l+"").toLowerCase():"text";let w=jr([s,i&&i.toAbortSignal()],o),h;const y=w&&w.unsubscribe&&(()=>{w.unsubscribe()});let p;try{if(f&&Vr&&r!=="get"&&r!=="head"&&(p=await Jr(u,n))!==0){let x=new Request(t,{method:"POST",body:n,duplex:"half"}),B;if(a.isFormData(n)&&(B=x.headers.get("content-type"))&&u.setContentType(B),x.body){const[M,pe]=ot(p,ae(at(f)));n=ft(x.body,pt,M,pe)}}a.isString(d)||(d=d?"include":"omit");const E="credentials"in Request.prototype;h=new Request(t,{...g,signal:w,method:r.toUpperCase(),headers:u.normalize().toJSON(),body:n,duplex:"half",credentials:E?d:void 0});let C=await fetch(h,g);const R=Ce&&(l==="stream"||l==="response");if(Ce&&(c||R&&y)){const x={};["status","statusText","headers"].forEach(Ot=>{x[Ot]=C[Ot]});const B=a.toFiniteNumber(C.headers.get("content-length")),[M,pe]=c&&ot(B,ae(at(c),!0))||[];C=new Response(ft(C.body,pt,M,()=>{pe&&pe(),y&&y()}),x)}l=l||"text";let D=await ue[a.findKey(ue,l)||"text"](C,e);return!R&&y&&y(),await new Promise((x,B)=>{it(x,B,{data:D,headers:N.from(C.headers),status:C.status,statusText:C.statusText,config:e,request:h})})}catch(E){throw y&&y(),E&&E.name==="TypeError"&&/Load failed|fetch/i.test(E.message)?Object.assign(new m("Network Error",m.ERR_NETWORK,e,h),{cause:E.cause||E}):m.from(E,E&&E.code,e,h)}})};a.forEach(Re,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const mt=e=>`- ${e}`,Wr=e=>a.isFunction(e)||e===null||e===!1,yt={getAdapter:e=>{e=a.isArray(e)?e:[e];const{length:t}=e;let r,n;const s={};for(let i=0;i<t;i++){r=e[i];let o;if(n=r,!Wr(r)&&(n=Re[(o=String(r)).toLowerCase()],n===void 0))throw new m(`Unknown adapter '${o}'`);if(n)break;s[o||"#"+i]=n}if(!n){const i=Object.entries(s).map(([c,f])=>`adapter ${c} `+(f===!1?"is not supported by the environment":"is not available in the build"));let o=t?i.length>1?`since :
4
4
  `+i.map(mt).join(`
5
- `):" "+mt(i[0]):"as no adapter specified";throw new m("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return n},adapters:Re};function Ae(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new V(null,e)}function gt(e){return Ae(e),e.headers=N.from(e.headers),e.data=Ce.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),yt.getAdapter(e.adapter||Z.adapter)(e).then(function(n){return Ae(e),n.data=Ce.call(e,e.transformResponse,n),n.headers=N.from(n.headers),n},function(n){return st(n)||(Ae(e),n&&n.response&&(n.response.data=Ce.call(e,e.transformResponse,n.response),n.response.headers=N.from(n.response.headers))),Promise.reject(n)})}const wt="1.11.0",le={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{le[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const bt={};le.transitional=function(t,r,n){function s(i,o){return"[Axios v"+wt+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,c)=>{if(t===!1)throw new m(s(o," has been removed"+(r?" in "+r:"")),m.ERR_DEPRECATED);return r&&!bt[o]&&(bt[o]=!0,console.warn(s(o," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,o,c):!0}},le.spelling=function(t){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${t}`),!0)};function Xr(e,t,r){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let s=n.length;for(;s-- >0;){const i=n[s],o=t[i];if(o){const c=e[i],f=c===void 0||o(c,i,e);if(f!==!0)throw new m("option "+i+" must be "+f,m.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new m("Unknown option "+i,m.ERR_BAD_OPTION)}}const fe={assertOptions:Xr,validators:le},L=fe.validators;let I=class{constructor(t){this.defaults=t||{},this.interceptors={request:new et,response:new et}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
6
- `+i):n.stack=i}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=v(this.defaults,r);const{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&fe.assertOptions(n,{silentJSONParsing:L.transitional(L.boolean),forcedJSONParsing:L.transitional(L.boolean),clarifyTimeoutError:L.transitional(L.boolean)},!1),s!=null&&(a.isFunction(s)?r.paramsSerializer={serialize:s}:fe.assertOptions(s,{encode:L.function,serialize:L.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),fe.assertOptions(r,{baseUrl:L.spelling("baseURL"),withXsrfToken:L.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let o=i&&a.merge(i.common,i[r.method]);i&&a.forEach(["delete","get","head","post","put","patch","common"],h=>{delete i[h]}),r.headers=N.concat(o,i);const c=[];let f=!0;this.interceptors.request.forEach(function(y){typeof y.runWhen=="function"&&y.runWhen(r)===!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,g;if(!f){const h=[gt.bind(this),void 0];for(h.unshift(...c),h.push(...u),g=h.length,l=Promise.resolve(r);d<g;)l=l.then(h[d++],h[d++]);return l}g=c.length;let w=r;for(d=0;d<g;){const h=c[d++],y=c[d++];try{w=h(w)}catch(p){y.call(this,p);break}}try{l=gt.call(this,w)}catch(h){return Promise.reject(h)}for(d=0,g=u.length;d<g;)l=l.then(u[d++],u[d++]);return l}getUri(t){t=v(this.defaults,t);const r=ct(t.baseURL,t.url,t.allowAbsoluteUrls);return Ze(r,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){I.prototype[t]=function(r,n){return this.request(v(n||{},{method:t,url:r,data:(n||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function r(n){return function(i,o,c){return this.request(v(c||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}I.prototype[t]=r(),I.prototype[t+"Form"]=r(!0)});let Qr=class Nt{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});const n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(c=>{n.subscribe(c),i=c}).then(s);return o.cancel=function(){n.unsubscribe(i)},o},t(function(i,o,c){n.reason||(n.reason=new V(i,o,c),r(n.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 r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=n=>{t.abort(n)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new Nt(function(s){t=s}),cancel:t}}};function Yr(e){return function(r){return e.apply(null,r)}}function Gr(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 Et(e){const t=new I(e),r=ve(I.prototype.request,t);return a.extend(r,I.prototype,t,{allOwnKeys:!0}),a.extend(r,t,null,{allOwnKeys:!0}),r.create=function(s){return Et(v(e,s))},r}const b=Et(Z);b.Axios=I,b.CanceledError=V,b.CancelToken=Qr,b.isCancel=st,b.VERSION=wt,b.toFormData=ie,b.AxiosError=m,b.Cancel=b.CanceledError,b.all=function(t){return Promise.all(t)},b.spread=Yr,b.isAxiosError=Gr,b.mergeConfig=v,b.AxiosHeaders=N,b.formToJSON=e=>rt(a.isHTMLForm(e)?new FormData(e):e),b.getAdapter=yt.getAdapter,b.HttpStatusCode=Te,b.default=b;const{Axios:ds,AxiosError:Pe,CanceledError:hs,isCancel:ps,CancelToken:ms,VERSION:ys,all:gs,Cancel:ws,isAxiosError:bs,spread:Es,toFormData:Ss,AxiosHeaders:Cs,HttpStatusCode:_s,formToJSON:Rs,getAdapter:As,mergeConfig:Ts}=b;class Oe extends Error{constructor(r){super(r.join(", "));C(this,"errors");this.name="ValidationError",this.errors=r}}class Ne extends Error{constructor(r){super("Address already registered.");C(this,"address");this.name="AddressInUseError",this.address=r}}class xe extends Error{constructor(r){super("Code already registered.");C(this,"code");this.name="CodeInUseError",this.code=r}}class Ue extends Error{constructor(){super("Invalid signature provided"),this.name="InvalidSignatureError"}}class Zr{constructor(t){C(this,"httpClient");C(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async create(t,r,n,s,i,o,c){var f;try{await this.httpClient.post({path:"/affiliates",postData:{address:t,identifier_type:r,name:n,code:n,signature:s,signature_public_key:i,account_chain_id:o,user_split_percentage:c}})}catch(u){if(u instanceof Pe){const l=(f=u.response)==null?void 0:f.data;if(typeof(l==null?void 0:l.message)=="string"){const d=l.message.toLowerCase();throw d=="invalid signature"?new Ue:d=="address in use"?new Ne(t):d=="code in use"?new xe(n):new Error(d)}else if((l==null?void 0:l.message)instanceof Array)throw new Oe(l.message)}throw u}}async update(t,r,n,s,i,o){var c;try{await this.httpClient.post({path:`/affiliates/${t}`,postData:{code:n,user_identifier:t,identifier_type:r,signature:s,signature_public_key:i,account_chain_id:o}})}catch(f){if(f instanceof Pe){const u=(c=f.response)==null?void 0:c.data;if(typeof(u==null?void 0:u.message)=="string"){const l=u.message.toLowerCase();throw l=="invalid signature"?new Ue:l=="address in use"?new Ne(t):l=="code in use"?new xe(n):new Error(l)}else if((u==null?void 0:u.message)instanceof Array)throw new Oe(u.message)}throw f}}async isCodeFree(t){try{return(await this.httpClient.get({path:`/affiliates/codes/${t}`})).data.available}catch(r){throw console.error("Fuul SDK: Could not check affiliate code",r),r}}async getCode(t,r){var n;try{return(await this.httpClient.get({path:`/affiliates/${t}`,queryParams:{identifier_type:r}})).data}catch(s){if(s instanceof Pe&&((n=s.response)==null?void 0:n.status)===404)return null;throw console.error("Fuul SDK: Could not get affiliate code",s),s}}}const en="/audiences";class tn{constructor(t){C(this,"httpClient");C(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserAudiences(t){return(await this.httpClient.get({path:`${en}/audience-segments/user`,queryParams:{...t}})).data}}class rn{constructor(t){C(this,"httpClient");this.httpClient=t.httpClient}async getAll(t){const{data:r}=await this.httpClient.get({path:"conversions",queryParams:{...t}});return r}}const St="fuul.sent",nn=60,sn="connect_wallet",Ct=10;class on{constructor(t){C(this,"debug");C(this,"httpClient");this.httpClient=t.httpClient,this.debug=!!t.debug}async sendEvent(t,r){if(this.isDuplicate(t)){this.debug&&console.debug("Fuul SDK: Event is considered duplicate and will not be sent");return}if(!r||!Array.isArray(r)||r.length===0)await this.httpClient.post({path:"events",postData:t});else for(const n of r){const s=structuredClone({...t,project_id:n});s.metadata.project_id=n,await this.httpClient.post({path:"events",postData:s,queryParams:{project_id:n}})}this.debug&&console.debug(`Fuul SDK: Sent '${t.name}' event`),this.saveSentEvent(t)}isDuplicate(t){var l,d,g,w;const r=`${St}_${t.name}`,n=localStorage.getItem(r);if(!n)return!1;const s=JSON.parse(n);if(this.getCurrentTimestamp()-s.timestamp>nn)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&&((l=s.user)==null?void 0:l.identifier)===((d=t.user)==null?void 0:d.identifier)&&((g=s.user)==null?void 0:g.identifier_type)===((w=t.user)==null?void 0:w.identifier_type)&&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 o,c,f,u;const r=`${St}_${t.name}`,n=`${r}_all`,s=this.getCurrentTimestamp(),i={...t,timestamp:s};if(localStorage.setItem(r,JSON.stringify(i)),t.name===sn){const l=JSON.parse(localStorage.getItem(n)||"[]"),d={name:t.name,user:{identifier:(o=t.user)==null?void 0:o.identifier,identifier_type:(c=t.user)==null?void 0:c.identifier_type},tracking_id:(f=t.metadata)==null?void 0:f.tracking_id,page:(u=t.args)==null?void 0:u.page};"user_address"in t&&(d.user_address=t.user_address);const g=[...l,d];g.length>Ct&&g.splice(0,g.length-Ct),localStorage.setItem(n,JSON.stringify(g))}}}const an={version:"7.7.0"};class cn{constructor(t){C(this,"client");C(this,"defaultQueryParams");this.client=b.create({...t,headers:{Authorization:`Bearer ${t.apiKey}`,"X-Fuul-Sdk-Version":an.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 patch(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),data:t.postData,method:"PATCH"})}async delete(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),method:"DELETE"})}}class un{constructor(t){C(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 z="/payouts";class ln{constructor(t){C(this,"httpClient");C(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserPayoutsByConversion(t){return(await this.httpClient.get({path:z,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsByConversion(t){return(await this.httpClient.get({path:z,queryParams:{...t,type:"point"}})).data}async getUserPayoutMovements(t){return(await this.httpClient.get({path:`${z}/movements`,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsMovements(t){return(await this.httpClient.get({path:`${z}/movements`,queryParams:{...t,type:"point"}})).data}async getVolumeLeaderboard(t){return(await this.httpClient.get({path:`${z}/leaderboard/volume`,queryParams:{...t}})).data}async getPayoutsByReferrer(t){return(await this.httpClient.get({path:`${z}/by-referrer`,queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type}})).data}}class fn{constructor(t){C(this,"httpClient");C(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async listUserReferralCodes(t){return(await this.httpClient.get({path:"/referral_codes",queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type,page:t.page,page_size:t.page_size}})).data}async generateReferralCodes(t){return(await this.httpClient.post({path:"/referral_codes",queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type,quantity:t.quantity,max_uses:t.max_uses}})).data}async getReferralStatus(t){return(await this.httpClient.get({path:"/referral_codes/status",queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type}})).data}async getReferralCode(t){return(await this.httpClient.get({path:`/referral_codes/${t.code}`})).data}async useReferralCode(t){const{code:r,user_identifier:n,user_identifier_type:s,signature:i,signature_message:o,chain_id:c}=t;await this.httpClient.patch({path:`/referral_codes/${r}/use`,queryParams:{user_identifier:n,user_identifier_type:s,chain_id:c},postData:{signature:i,signature_message:o}})}async updateReferralCode(t){await this.httpClient.patch({path:`/referral_codes/${t.code}`,postData:{max_uses:t.max_uses}})}}const dn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let hn=(e=21)=>{let t="",r=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+=dn[r[e]&63];return t};const pn="fuul.tracking_id",Le=()=>En(pn,()=>hn()),_t=()=>J("af")||J("referrer"),mn=()=>document.referrer,yn=()=>Sn(),gn=()=>J("category"),wn=()=>J("title"),bn=()=>J("tag"),En=(e,t)=>{const r=localStorage.getItem(e);if(r)return r;{const n=t();return n?localStorage.setItem(e,n):localStorage.removeItem(e),n}},J=e=>new URLSearchParams(window.location.search).get(e),Sn=()=>{const e=J("source");if(e)return e},Cn="/user";class _n{constructor(t){C(this,"httpClient");this.httpClient=t.httpClient}async getUserReferrer(t){return(await this.httpClient.get({path:`${Cn}/referrer`,queryParams:{...t}})).data}}const Rn="https://api.fuul.xyz/api/v1/";let k=!1,Fe=!1,De,F,Rt,At,W,ke,de,j,Tt,he,$;function An(e){k=!!e.debug,!Fe&&(De=e.apiKey,es(),F=ts(e.baseApiUrl??Rn,e.defaultQueryParams??{}),Rt=new rn({httpClient:F,debug:k}),de=new on({httpClient:F,debug:k}),W=new Zr({httpClient:F,debug:k}),ke=new H({httpClient:F}),j=new ln({httpClient:F,debug:k}),At=new _n({httpClient:F}),Tt=new tn({httpClient:F,debug:k}),he=new un({httpClient:F}),$=new fn({httpClient:F,debug:k}),Fe=!0,k&&console.debug("Fuul SDK: init() complete"))}function S(){if(!Fe)throw new Error("Fuul SDK: You need to call init() to initialize the library before using any methods")}async function Tn(e,t){S(),Be(),qe();const r={name:e,args:t??{},metadata:{tracking_id:Le()}};await de.sendEvent(r)}async function Pn(e,t){S(),Be(),qe();const r={name:"pageview",args:{page:e??document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Le(),referrer_url:mn(),source:yn(),affiliate_id:_t()??void 0,referrer:_t()??void 0,category:gn()??void 0,title:wn()??void 0,tag:bn()??void 0}};await de.sendEvent(r,t)}async function On(e,t){S(),Be(),qe();const r={name:"connect_wallet",user:{identifier:e.identifier,identifier_type:e.identifierType},args:{page:document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Le()}};e!=null&&e.signature&&(r.signature=e==null?void 0:e.signature,r.signature_message=e==null?void 0:e.message),e!=null&&e.signaturePublicKey&&(r.signature_public_key=e.signaturePublicKey),e!=null&&e.accountChainId&&(r.account_chain_id=e.accountChainId),await de.sendEvent(r,t)}async function Nn(e){S(),await W.create(e.userIdentifier,e.identifierType,e.code,e.signature,e.signaturePublicKey,e.accountChainId,e.userSplitPercentage)}async function xn(e){S(),await W.update(e.userIdentifier,e.identifierType,e.code,e.signature,e.signaturePublicKey,e.accountChainId)}async function Un(e,t){return S(),await W.getCode(e,t)}async function Ln(e){return S(),await W.isCodeFree(e)}async function Fn(e,t,r,n){S();const s=await W.getCode(t,r),i=new URLSearchParams({af:(s==null?void 0:s.code)??t});return n!=null&&n.title&&i.append("af_title",n.title),n!=null&&n.format&&i.append("af_format",n.format),n!=null&&n.place&&i.append("af_place",n.place),`${e}?${i.toString()}`}function Dn(e){return he.getPayoutsLeaderboard(e)}function kn(e){return he.getPointsLeaderboard(e)}function Bn(e){return he.getReferredUsersLeaderboard(e)}function qn(e){return j.getVolumeLeaderboard(e)}function vn(e){return j.getUserPayoutsByConversion(e)}function In(e){return j.getUserPointsByConversion(e)}function jn(e){return j.getUserPayoutMovements(e)}function $n(e){return j.getUserPointsMovements(e)}function Mn(e){return S(),j.getPayoutsByReferrer(e)}async function Hn(e){return S(),Rt.getAll(e)}async function Kn(e){return S(),At.getUserReferrer(e)}async function Vn(e){return S(),Tt.getUserAudiences(e)}async function zn(e){return S(),$.listUserReferralCodes(e)}async function Jn(e){return S(),$.generateReferralCodes(e)}async function Wn(e){return S(),$.getReferralStatus(e)}async function Xn(e){return S(),$.getReferralCode(e)}async function Qn(e){return S(),$.useReferralCode(e)}async function Yn(e){return S(),$.updateReferralCode(e)}async function Gn(e){return S(),ke.getAffiliateStats(e)}async function Zn(e){return S(),ke.getAffiliateNewTraders(e)}function Be(){if(typeof window>"u"||typeof document>"u")throw new Error("Fuul SDK: Browser context required")}function qe(){if(navigator.webdriver)throw new Error("Fuul SDK: Error")}function es(){if(!De)throw new Error("Fuul SDK: Invalid API key")}function ts(e,t){return new cn({baseURL:e,timeout:3e4,apiKey:De,queryParams:t})}const rs={init:An,sendEvent:Tn,sendPageview:Pn,identifyUser:On,generateTrackingLink:Fn,getConversions:Hn,createAffiliateCode:Nn,updateAffiliateCode:xn,getAffiliateCode:Un,isAffiliateCodeFree:Ln,getPayoutsLeaderboard:Dn,getPointsLeaderboard:kn,getReferredUsersLeaderboard:Bn,getUserAudiences:Vn,getUserPayoutsByConversion:vn,getUserPointsByConversion:In,getUserPointsMovements:$n,getUserPayoutMovements:jn,getPayoutsByReferrer:Mn,getUserReferrer:Kn,getVolumeLeaderboard:qn,listUserReferralCodes:zn,generateReferralCodes:Jn,getReferralStatus:Wn,getReferralCode:Xn,useReferralCode:Qn,updateReferralCode:Yn,getAffiliateStats:Gn,getAffiliateNewTraders:Zn};var Pt=(e=>(e.EvmAddress="evm_address",e.SolanaAddress="solana_address",e.XRPLAddress="xrpl_address",e.SuiAddress="sui_address",e.Email="email",e))(Pt||{});A.AddressInUseError=Ne,A.CodeInUseError=xe,A.Fuul=rs,A.InvalidSignatureError=Ue,A.UserIdentifierType=Pt,A.ValidationError=Oe,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
5
+ `):" "+mt(i[0]):"as no adapter specified";throw new m("There is no suitable adapter to dispatch the request "+o,"ERR_NOT_SUPPORT")}return n},adapters:Re};function Ae(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new V(null,e)}function gt(e){return Ae(e),e.headers=N.from(e.headers),e.data=_e.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),yt.getAdapter(e.adapter||Z.adapter)(e).then(function(n){return Ae(e),n.data=_e.call(e,e.transformResponse,n),n.headers=N.from(n.headers),n},function(n){return st(n)||(Ae(e),n&&n.response&&(n.response.data=_e.call(e,e.transformResponse,n.response),n.response.headers=N.from(n.response.headers))),Promise.reject(n)})}const wt="1.11.0",le={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{le[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const bt={};le.transitional=function(t,r,n){function s(i,o){return"[Axios v"+wt+"] Transitional option '"+i+"'"+o+(n?". "+n:"")}return(i,o,c)=>{if(t===!1)throw new m(s(o," has been removed"+(r?" in "+r:"")),m.ERR_DEPRECATED);return r&&!bt[o]&&(bt[o]=!0,console.warn(s(o," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(i,o,c):!0}},le.spelling=function(t){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${t}`),!0)};function Xr(e,t,r){if(typeof e!="object")throw new m("options must be an object",m.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let s=n.length;for(;s-- >0;){const i=n[s],o=t[i];if(o){const c=e[i],f=c===void 0||o(c,i,e);if(f!==!0)throw new m("option "+i+" must be "+f,m.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new m("Unknown option "+i,m.ERR_BAD_OPTION)}}const fe={assertOptions:Xr,validators:le},L=fe.validators;let I=class{constructor(t){this.defaults=t||{},this.interceptors={request:new et,response:new et}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let s={};Error.captureStackTrace?Error.captureStackTrace(s):s=new Error;const i=s.stack?s.stack.replace(/^.+\n/,""):"";try{n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
6
+ `+i):n.stack=i}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=v(this.defaults,r);const{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&fe.assertOptions(n,{silentJSONParsing:L.transitional(L.boolean),forcedJSONParsing:L.transitional(L.boolean),clarifyTimeoutError:L.transitional(L.boolean)},!1),s!=null&&(a.isFunction(s)?r.paramsSerializer={serialize:s}:fe.assertOptions(s,{encode:L.function,serialize:L.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),fe.assertOptions(r,{baseUrl:L.spelling("baseURL"),withXsrfToken:L.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let o=i&&a.merge(i.common,i[r.method]);i&&a.forEach(["delete","get","head","post","put","patch","common"],h=>{delete i[h]}),r.headers=N.concat(o,i);const c=[];let f=!0;this.interceptors.request.forEach(function(y){typeof y.runWhen=="function"&&y.runWhen(r)===!1||(f=f&&y.synchronous,c.unshift(y.fulfilled,y.rejected))});const l=[];this.interceptors.response.forEach(function(y){l.push(y.fulfilled,y.rejected)});let u,d=0,g;if(!f){const h=[gt.bind(this),void 0];for(h.unshift(...c),h.push(...l),g=h.length,u=Promise.resolve(r);d<g;)u=u.then(h[d++],h[d++]);return u}g=c.length;let w=r;for(d=0;d<g;){const h=c[d++],y=c[d++];try{w=h(w)}catch(p){y.call(this,p);break}}try{u=gt.call(this,w)}catch(h){return Promise.reject(h)}for(d=0,g=l.length;d<g;)u=u.then(l[d++],l[d++]);return u}getUri(t){t=v(this.defaults,t);const r=ct(t.baseURL,t.url,t.allowAbsoluteUrls);return Ze(r,t.params,t.paramsSerializer)}};a.forEach(["delete","get","head","options"],function(t){I.prototype[t]=function(r,n){return this.request(v(n||{},{method:t,url:r,data:(n||{}).data}))}}),a.forEach(["post","put","patch"],function(t){function r(n){return function(i,o,c){return this.request(v(c||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:o}))}}I.prototype[t]=r(),I.prototype[t+"Form"]=r(!0)});let Qr=class Nt{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});const n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i;const o=new Promise(c=>{n.subscribe(c),i=c}).then(s);return o.cancel=function(){n.unsubscribe(i)},o},t(function(i,o,c){n.reason||(n.reason=new V(i,o,c),r(n.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 r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=n=>{t.abort(n)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new Nt(function(s){t=s}),cancel:t}}};function Yr(e){return function(r){return e.apply(null,r)}}function Gr(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 Et(e){const t=new I(e),r=ve(I.prototype.request,t);return a.extend(r,I.prototype,t,{allOwnKeys:!0}),a.extend(r,t,null,{allOwnKeys:!0}),r.create=function(s){return Et(v(e,s))},r}const b=Et(Z);b.Axios=I,b.CanceledError=V,b.CancelToken=Qr,b.isCancel=st,b.VERSION=wt,b.toFormData=ie,b.AxiosError=m,b.Cancel=b.CanceledError,b.all=function(t){return Promise.all(t)},b.spread=Yr,b.isAxiosError=Gr,b.mergeConfig=v,b.AxiosHeaders=N,b.formToJSON=e=>rt(a.isHTMLForm(e)?new FormData(e):e),b.getAdapter=yt.getAdapter,b.HttpStatusCode=Te,b.default=b;const{Axios:ds,AxiosError:Pe,CanceledError:hs,isCancel:ps,CancelToken:ms,VERSION:ys,all:gs,Cancel:ws,isAxiosError:bs,spread:Es,toFormData:Ss,AxiosHeaders:_s,HttpStatusCode:Cs,formToJSON:Rs,getAdapter:As,mergeConfig:Ts}=b;class Oe extends Error{constructor(r){super(r.join(", "));_(this,"errors");this.name="ValidationError",this.errors=r}}class Ne extends Error{constructor(r){super("Address already registered.");_(this,"address");this.name="AddressInUseError",this.address=r}}class xe extends Error{constructor(r){super("Code already registered.");_(this,"code");this.name="CodeInUseError",this.code=r}}class Ue extends Error{constructor(){super("Invalid signature provided"),this.name="InvalidSignatureError"}}class Zr{constructor(t){_(this,"httpClient");_(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async create(t,r,n,s,i,o,c){var f;try{await this.httpClient.post({path:"/affiliates",postData:{address:t,identifier_type:r,name:n,code:n,signature:s,signature_public_key:i,account_chain_id:o,user_split_percentage:c}})}catch(l){if(l instanceof Pe){const u=(f=l.response)==null?void 0:f.data;if(typeof(u==null?void 0:u.message)=="string"){const d=u.message.toLowerCase();throw d=="invalid signature"?new Ue:d=="address in use"?new Ne(t):d=="code in use"?new xe(n):new Error(d)}else if((u==null?void 0:u.message)instanceof Array)throw new Oe(u.message)}throw l}}async update(t,r,n,s,i,o,c){var f;try{await this.httpClient.post({path:`/affiliates/${t}`,postData:{code:n,user_identifier:t,identifier_type:r,signature:s,signature_public_key:i,account_chain_id:o,user_split_percentage:c}})}catch(l){if(l instanceof Pe){const u=(f=l.response)==null?void 0:f.data;if(typeof(u==null?void 0:u.message)=="string"){const d=u.message.toLowerCase();throw d=="invalid signature"?new Ue:d=="address in use"?new Ne(t):d=="code in use"?new xe(n):new Error(d)}else if((u==null?void 0:u.message)instanceof Array)throw new Oe(u.message)}throw l}}async isCodeFree(t){try{return(await this.httpClient.get({path:`/affiliates/codes/${t}`})).data.available}catch(r){throw console.error("Fuul SDK: Could not check affiliate code",r),r}}async getCode(t,r){var n;try{return(await this.httpClient.get({path:`/affiliates/${t}`,queryParams:{identifier_type:r}})).data}catch(s){if(s instanceof Pe&&((n=s.response)==null?void 0:n.status)===404)return null;throw console.error("Fuul SDK: Could not get affiliate code",s),s}}}const en="/audiences";class tn{constructor(t){_(this,"httpClient");_(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserAudiences(t){return(await this.httpClient.get({path:`${en}/audience-segments/user`,queryParams:{...t}})).data}}class rn{constructor(t){_(this,"httpClient");this.httpClient=t.httpClient}async getAll(t){const{data:r}=await this.httpClient.get({path:"conversions",queryParams:{...t}});return r}}const St="fuul.sent",nn=60,sn="connect_wallet",_t=10;class on{constructor(t){_(this,"debug");_(this,"httpClient");this.httpClient=t.httpClient,this.debug=!!t.debug}async sendEvent(t,r){if(this.isDuplicate(t)){this.debug&&console.debug("Fuul SDK: Event is considered duplicate and will not be sent");return}if(!r||!Array.isArray(r)||r.length===0)await this.httpClient.post({path:"events",postData:t});else for(const n of r){const s=structuredClone({...t,project_id:n});s.metadata.project_id=n,await this.httpClient.post({path:"events",postData:s,queryParams:{project_id:n}})}this.debug&&console.debug(`Fuul SDK: Sent '${t.name}' event`),this.saveSentEvent(t)}isDuplicate(t){var u,d,g,w;const r=`${St}_${t.name}`,n=localStorage.getItem(r);if(!n)return!1;const s=JSON.parse(n);if(this.getCurrentTimestamp()-s.timestamp>nn)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&&((u=s.user)==null?void 0:u.identifier)===((d=t.user)==null?void 0:d.identifier)&&((g=s.user)==null?void 0:g.identifier_type)===((w=t.user)==null?void 0:w.identifier_type)&&s.signature===t.signature&&s.signature_message===t.signature_message);let l=!1;return t.args&&s.args&&(l=s.args.page===t.args.page),l&&f}getCurrentTimestamp(){return Date.now()/1e3}saveSentEvent(t){var o,c,f,l;const r=`${St}_${t.name}`,n=`${r}_all`,s=this.getCurrentTimestamp(),i={...t,timestamp:s};if(localStorage.setItem(r,JSON.stringify(i)),t.name===sn){const u=JSON.parse(localStorage.getItem(n)||"[]"),d={name:t.name,user:{identifier:(o=t.user)==null?void 0:o.identifier,identifier_type:(c=t.user)==null?void 0:c.identifier_type},tracking_id:(f=t.metadata)==null?void 0:f.tracking_id,page:(l=t.args)==null?void 0:l.page};"user_address"in t&&(d.user_address=t.user_address);const g=[...u,d];g.length>_t&&g.splice(0,g.length-_t),localStorage.setItem(n,JSON.stringify(g))}}}const an={version:"7.7.1"};class cn{constructor(t){_(this,"client");_(this,"defaultQueryParams");this.client=b.create({...t,headers:{Authorization:`Bearer ${t.apiKey}`,"X-Fuul-Sdk-Version":an.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 patch(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),data:t.postData,method:"PATCH"})}async delete(t){return this.client.request({url:t.path,params:this.makeQueryParams(t.queryParams),method:"DELETE"})}}class un{constructor(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 z="/payouts";class ln{constructor(t){_(this,"httpClient");_(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async getUserPayoutsByConversion(t){return(await this.httpClient.get({path:z,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsByConversion(t){return(await this.httpClient.get({path:z,queryParams:{...t,type:"point"}})).data}async getUserPayoutMovements(t){return(await this.httpClient.get({path:`${z}/movements`,queryParams:{...t,type:"onchain-currency"}})).data}async getUserPointsMovements(t){return(await this.httpClient.get({path:`${z}/movements`,queryParams:{...t,type:"point"}})).data}async getVolumeLeaderboard(t){return(await this.httpClient.get({path:`${z}/leaderboard/volume`,queryParams:{...t}})).data}async getPayoutsByReferrer(t){return(await this.httpClient.get({path:`${z}/by-referrer`,queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type}})).data}}class fn{constructor(t){_(this,"httpClient");_(this,"_debug");this.httpClient=t.httpClient,this._debug=t.debug}async listUserReferralCodes(t){return(await this.httpClient.get({path:"/referral_codes",queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type,page:t.page,page_size:t.page_size}})).data}async generateReferralCodes(t){return(await this.httpClient.post({path:"/referral_codes",queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type,quantity:t.quantity,max_uses:t.max_uses}})).data}async getReferralStatus(t){return(await this.httpClient.get({path:"/referral_codes/status",queryParams:{user_identifier:t.user_identifier,user_identifier_type:t.user_identifier_type}})).data}async getReferralCode(t){return(await this.httpClient.get({path:`/referral_codes/${t.code}`})).data}async useReferralCode(t){const{code:r,user_identifier:n,user_identifier_type:s,signature:i,signature_message:o,chain_id:c}=t;await this.httpClient.patch({path:`/referral_codes/${r}/use`,queryParams:{user_identifier:n,user_identifier_type:s,chain_id:c},postData:{signature:i,signature_message:o}})}async updateReferralCode(t){await this.httpClient.patch({path:`/referral_codes/${t.code}`,postData:{max_uses:t.max_uses}})}}const dn="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let hn=(e=21)=>{let t="",r=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+=dn[r[e]&63];return t};const pn="fuul.tracking_id",Le=()=>En(pn,()=>hn()),Ct=()=>J("af")||J("referrer"),mn=()=>document.referrer,yn=()=>Sn(),gn=()=>J("category"),wn=()=>J("title"),bn=()=>J("tag"),En=(e,t)=>{const r=localStorage.getItem(e);if(r)return r;{const n=t();return n?localStorage.setItem(e,n):localStorage.removeItem(e),n}},J=e=>new URLSearchParams(window.location.search).get(e),Sn=()=>{const e=J("source");if(e)return e},_n="/user";class Cn{constructor(t){_(this,"httpClient");this.httpClient=t.httpClient}async getUserReferrer(t){return(await this.httpClient.get({path:`${_n}/referrer`,queryParams:{...t}})).data}}const Rn="https://api.fuul.xyz/api/v1/";let k=!1,Fe=!1,De,F,Rt,At,W,ke,de,j,Tt,he,$;function An(e){k=!!e.debug,!Fe&&(De=e.apiKey,es(),F=ts(e.baseApiUrl??Rn,e.defaultQueryParams??{}),Rt=new rn({httpClient:F,debug:k}),de=new on({httpClient:F,debug:k}),W=new Zr({httpClient:F,debug:k}),ke=new H({httpClient:F}),j=new ln({httpClient:F,debug:k}),At=new Cn({httpClient:F}),Tt=new tn({httpClient:F,debug:k}),he=new un({httpClient:F}),$=new fn({httpClient:F,debug:k}),Fe=!0,k&&console.debug("Fuul SDK: init() complete"))}function S(){if(!Fe)throw new Error("Fuul SDK: You need to call init() to initialize the library before using any methods")}async function Tn(e,t){S(),Be(),qe();const r={name:e,args:t??{},metadata:{tracking_id:Le()}};await de.sendEvent(r)}async function Pn(e,t){S(),Be(),qe();const r={name:"pageview",args:{page:e??document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Le(),referrer_url:mn(),source:yn(),affiliate_id:Ct()??void 0,referrer:Ct()??void 0,category:gn()??void 0,title:wn()??void 0,tag:bn()??void 0}};await de.sendEvent(r,t)}async function On(e,t){S(),Be(),qe();const r={name:"connect_wallet",user:{identifier:e.identifier,identifier_type:e.identifierType},args:{page:document.location.pathname,locationOrigin:document.location.origin},metadata:{tracking_id:Le()}};e!=null&&e.signature&&(r.signature=e==null?void 0:e.signature,r.signature_message=e==null?void 0:e.message),e!=null&&e.signaturePublicKey&&(r.signature_public_key=e.signaturePublicKey),e!=null&&e.accountChainId&&(r.account_chain_id=e.accountChainId),await de.sendEvent(r,t)}async function Nn(e){S(),await W.create(e.userIdentifier,e.identifierType,e.code,e.signature,e.signaturePublicKey,e.accountChainId,e.userSplitPercentage)}async function xn(e){S(),await W.update(e.userIdentifier,e.identifierType,e.code,e.signature,e.signaturePublicKey,e.accountChainId,e.userSplitPercentage)}async function Un(e,t){return S(),await W.getCode(e,t)}async function Ln(e){return S(),await W.isCodeFree(e)}async function Fn(e,t,r,n){S();const s=await W.getCode(t,r),i=new URLSearchParams({af:(s==null?void 0:s.code)??t});return n!=null&&n.title&&i.append("af_title",n.title),n!=null&&n.format&&i.append("af_format",n.format),n!=null&&n.place&&i.append("af_place",n.place),`${e}?${i.toString()}`}function Dn(e){return he.getPayoutsLeaderboard(e)}function kn(e){return he.getPointsLeaderboard(e)}function Bn(e){return he.getReferredUsersLeaderboard(e)}function qn(e){return j.getVolumeLeaderboard(e)}function vn(e){return j.getUserPayoutsByConversion(e)}function In(e){return j.getUserPointsByConversion(e)}function jn(e){return j.getUserPayoutMovements(e)}function $n(e){return j.getUserPointsMovements(e)}function Mn(e){return S(),j.getPayoutsByReferrer(e)}async function Hn(e){return S(),Rt.getAll(e)}async function Kn(e){return S(),At.getUserReferrer(e)}async function Vn(e){return S(),Tt.getUserAudiences(e)}async function zn(e){return S(),$.listUserReferralCodes(e)}async function Jn(e){return S(),$.generateReferralCodes(e)}async function Wn(e){return S(),$.getReferralStatus(e)}async function Xn(e){return S(),$.getReferralCode(e)}async function Qn(e){return S(),$.useReferralCode(e)}async function Yn(e){return S(),$.updateReferralCode(e)}async function Gn(e){return S(),ke.getAffiliateStats(e)}async function Zn(e){return S(),ke.getAffiliateNewTraders(e)}function Be(){if(typeof window>"u"||typeof document>"u")throw new Error("Fuul SDK: Browser context required")}function qe(){if(navigator.webdriver)throw new Error("Fuul SDK: Error")}function es(){if(!De)throw new Error("Fuul SDK: Invalid API key")}function ts(e,t){return new cn({baseURL:e,timeout:3e4,apiKey:De,queryParams:t})}const rs={init:An,sendEvent:Tn,sendPageview:Pn,identifyUser:On,generateTrackingLink:Fn,getConversions:Hn,createAffiliateCode:Nn,updateAffiliateCode:xn,getAffiliateCode:Un,isAffiliateCodeFree:Ln,getPayoutsLeaderboard:Dn,getPointsLeaderboard:kn,getReferredUsersLeaderboard:Bn,getUserAudiences:Vn,getUserPayoutsByConversion:vn,getUserPointsByConversion:In,getUserPointsMovements:$n,getUserPayoutMovements:jn,getPayoutsByReferrer:Mn,getUserReferrer:Kn,getVolumeLeaderboard:qn,listUserReferralCodes:zn,generateReferralCodes:Jn,getReferralStatus:Wn,getReferralCode:Xn,useReferralCode:Qn,updateReferralCode:Yn,getAffiliateStats:Gn,getAffiliateNewTraders:Zn};var Pt=(e=>(e.EvmAddress="evm_address",e.SolanaAddress="solana_address",e.XRPLAddress="xrpl_address",e.SuiAddress="sui_address",e.Email="email",e))(Pt||{});A.AddressInUseError=Ne,A.CodeInUseError=xe,A.Fuul=rs,A.InvalidSignatureError=Ue,A.UserIdentifierType=Pt,A.ValidationError=Oe,Object.defineProperty(A,Symbol.toStringTag,{value:"Module"})});
@@ -1,4 +1,4 @@
1
- declare const _default: { "version": "7.7.0" }
1
+ declare const _default: { "version": "7.7.1" }
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": "7.7.0",
3
+ "version": "7.7.1",
4
4
  "description": "Fuul SDK",
5
5
  "keywords": [
6
6
  "Fuul",