@swapkit/helpers 1.0.0-rc.36 → 1.0.0-rc.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +10 -3
- package/dist/index.es.js +251 -233
- package/package.json +1 -1
- package/src/modules/__tests__/swapKitNumber.test.ts +21 -0
- package/src/modules/assetValue.ts +26 -16
- package/src/modules/bigIntArithmetics.ts +24 -5
package/dist/index.es.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var
|
|
1
|
+
var bt = Object.defineProperty;
|
|
2
|
+
var yt = (s, t, e) => t in s ? bt(s, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[t] = e;
|
|
3
|
+
var f = (s, t, e) => (yt(s, typeof t != "symbol" ? t + "" : t, e), e), wt = (s, t, e) => {
|
|
4
4
|
if (!t.has(s))
|
|
5
5
|
throw TypeError("Cannot " + e);
|
|
6
6
|
};
|
|
7
|
-
var
|
|
7
|
+
var $ = (s, t, e) => {
|
|
8
8
|
if (t.has(s))
|
|
9
9
|
throw TypeError("Cannot add the same private member more than once");
|
|
10
10
|
t instanceof WeakSet ? t.add(s) : t.set(s, e);
|
|
11
11
|
};
|
|
12
|
-
var
|
|
13
|
-
import { FeeOption as
|
|
14
|
-
const
|
|
12
|
+
var m = (s, t, e) => (wt(s, t, "access private method"), e);
|
|
13
|
+
import { FeeOption as L, BaseDecimal as h, Chain as o, EVMChainList as At, ChainToRPC as vt, MemoType as g } from "@swapkit/types";
|
|
14
|
+
const Tt = "0x313ce567", it = async ({ chain: s, to: t }) => {
|
|
15
15
|
try {
|
|
16
|
-
const { result: e } = await
|
|
16
|
+
const { result: e } = await Zt.post(vt[s], {
|
|
17
17
|
headers: {
|
|
18
18
|
accept: "*/*",
|
|
19
19
|
"content-type": "application/json",
|
|
@@ -23,37 +23,37 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
23
23
|
id: 44,
|
|
24
24
|
jsonrpc: "2.0",
|
|
25
25
|
method: "eth_call",
|
|
26
|
-
params: [{ to: t.toLowerCase(), data:
|
|
26
|
+
params: [{ to: t.toLowerCase(), data: Tt }, "latest"]
|
|
27
27
|
})
|
|
28
28
|
});
|
|
29
29
|
return parseInt(BigInt(e).toString());
|
|
30
30
|
} catch (e) {
|
|
31
31
|
return console.error(e), h[s];
|
|
32
32
|
}
|
|
33
|
-
},
|
|
33
|
+
}, $t = async (s) => {
|
|
34
34
|
if (s === o.Ethereum)
|
|
35
35
|
return h.ETH;
|
|
36
36
|
const [, t] = s.split("-");
|
|
37
|
-
return t != null && t.startsWith("0x") ?
|
|
38
|
-
},
|
|
37
|
+
return t != null && t.startsWith("0x") ? it({ chain: o.Ethereum, to: t }) : h.ETH;
|
|
38
|
+
}, Rt = async (s) => {
|
|
39
39
|
const [, t] = s.split("-");
|
|
40
|
-
return t != null && t.startsWith("0x") ?
|
|
41
|
-
},
|
|
40
|
+
return t != null && t.startsWith("0x") ? it({ chain: o.Avalanche, to: t.toLowerCase() }) : h.AVAX;
|
|
41
|
+
}, St = async (s) => s === o.BinanceSmartChain ? h.BSC : h.BSC, Ct = async ({ chain: s, symbol: t }) => {
|
|
42
42
|
switch (s) {
|
|
43
43
|
case o.Ethereum:
|
|
44
|
-
return
|
|
44
|
+
return $t(t);
|
|
45
45
|
case o.Avalanche:
|
|
46
|
-
return
|
|
46
|
+
return Rt(t);
|
|
47
47
|
case o.BinanceSmartChain:
|
|
48
|
-
return
|
|
48
|
+
return St(t);
|
|
49
49
|
default:
|
|
50
50
|
return h[s];
|
|
51
51
|
}
|
|
52
|
-
},
|
|
53
|
-
[
|
|
54
|
-
[
|
|
55
|
-
[
|
|
56
|
-
},
|
|
52
|
+
}, ie = {
|
|
53
|
+
[L.Average]: 1.2,
|
|
54
|
+
[L.Fast]: 1.5,
|
|
55
|
+
[L.Fastest]: 2
|
|
56
|
+
}, ot = ({ chain: s, symbol: t }) => {
|
|
57
57
|
switch (s) {
|
|
58
58
|
case o.Bitcoin:
|
|
59
59
|
case o.BitcoinCash:
|
|
@@ -79,7 +79,7 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
79
79
|
case o.THORChain:
|
|
80
80
|
return t === "RUNE";
|
|
81
81
|
}
|
|
82
|
-
},
|
|
82
|
+
}, It = (s) => {
|
|
83
83
|
switch (s) {
|
|
84
84
|
case "ETH.THOR":
|
|
85
85
|
return { identifier: "ETH.THOR-0xa5f2211b9b8170f694421f2046281775e8468044", decimal: 18 };
|
|
@@ -108,7 +108,7 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
108
108
|
case o.Ethereum:
|
|
109
109
|
return { identifier: `${s}.${s}`, decimal: h[s] };
|
|
110
110
|
}
|
|
111
|
-
},
|
|
111
|
+
}, Et = ({ chain: s, symbol: t }) => {
|
|
112
112
|
if (t.includes("/"))
|
|
113
113
|
return "Synth";
|
|
114
114
|
switch (s) {
|
|
@@ -138,65 +138,65 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
138
138
|
case o.Optimism:
|
|
139
139
|
return [o.Ethereum, o.Optimism].includes(t) ? "Native" : "OPTIMISM";
|
|
140
140
|
}
|
|
141
|
-
},
|
|
141
|
+
}, oe = (s) => {
|
|
142
142
|
var a;
|
|
143
143
|
const [t, ...e] = s.split("."), r = s.includes("/"), n = e.join("."), i = (a = n == null ? void 0 : n.split("-")) == null ? void 0 : a[0];
|
|
144
144
|
return { chain: t, symbol: n, ticker: i, synth: r };
|
|
145
|
-
},
|
|
145
|
+
}, Ot = new RegExp(
|
|
146
146
|
/(.)\1{6}|\.ORG|\.NET|\.FINANCE|\.COM|WWW|HTTP|\\\\|\/\/|[\s$%:[\]]/,
|
|
147
147
|
"gmi"
|
|
148
|
-
),
|
|
148
|
+
), Mt = (s) => {
|
|
149
149
|
const [t, e] = s.split(".");
|
|
150
|
-
if (!
|
|
150
|
+
if (!At.includes(t))
|
|
151
151
|
return !0;
|
|
152
152
|
const [, r] = e.split("-");
|
|
153
|
-
return
|
|
154
|
-
},
|
|
153
|
+
return ot({ chain: t, symbol: e }) || !!r;
|
|
154
|
+
}, ae = (s) => s.filter((t) => {
|
|
155
155
|
const e = `${t.chain}.${t.symbol}`;
|
|
156
|
-
return !
|
|
157
|
-
}),
|
|
156
|
+
return !Ot.test(e) && Mt(e) && t.value !== "0";
|
|
157
|
+
}), Bt = ({
|
|
158
158
|
liquidityUnits: s,
|
|
159
159
|
poolUnits: t,
|
|
160
160
|
runeDepth: e
|
|
161
161
|
}) => {
|
|
162
|
-
const r =
|
|
162
|
+
const r = p(s), n = p(t), i = p(e), a = r.mul(i), c = n.mul(n).mul(2), u = n.mul(r).mul(2), d = r.mul(r), l = n.mul(n).mul(n);
|
|
163
163
|
return a.mul(c.sub(u).add(d)).div(l);
|
|
164
|
-
},
|
|
164
|
+
}, xt = ({
|
|
165
165
|
liquidityUnits: s,
|
|
166
166
|
poolUnits: t,
|
|
167
167
|
assetDepth: e
|
|
168
168
|
}) => {
|
|
169
|
-
const r =
|
|
169
|
+
const r = p(s), n = p(t), i = p(e), a = r.mul(i), c = n.mul(n).mul(2), u = n.mul(r).mul(2), d = r.mul(r), l = a.mul(c.sub(u).add(d)), _ = n.mul(n).mul(n);
|
|
170
170
|
return l.div(_);
|
|
171
|
-
},
|
|
171
|
+
}, ce = ({
|
|
172
172
|
percent: s,
|
|
173
173
|
runeDepth: t,
|
|
174
174
|
liquidityUnits: e,
|
|
175
175
|
poolUnits: r
|
|
176
|
-
}) =>
|
|
176
|
+
}) => Bt({ runeDepth: t, liquidityUnits: e, poolUnits: r }).mul(s), ue = ({
|
|
177
177
|
percent: s,
|
|
178
178
|
assetDepth: t,
|
|
179
179
|
liquidityUnits: e,
|
|
180
180
|
poolUnits: r
|
|
181
|
-
}) =>
|
|
181
|
+
}) => xt({ assetDepth: t, liquidityUnits: e, poolUnits: r }).mul(s), p = (s) => b.fromBigInt(BigInt(s), h.THOR), qt = ({
|
|
182
182
|
liquidityUnits: s,
|
|
183
183
|
poolUnits: t,
|
|
184
184
|
runeDepth: e,
|
|
185
185
|
assetDepth: r
|
|
186
186
|
}) => ({
|
|
187
|
-
assetAmount:
|
|
188
|
-
runeAmount:
|
|
189
|
-
}),
|
|
187
|
+
assetAmount: p(r).mul(s).div(t),
|
|
188
|
+
runeAmount: p(e).mul(s).div(t)
|
|
189
|
+
}), le = ({
|
|
190
190
|
liquidityUnits: s,
|
|
191
191
|
poolUnits: t,
|
|
192
192
|
runeDepth: e,
|
|
193
193
|
assetDepth: r,
|
|
194
194
|
percent: n
|
|
195
195
|
}) => Object.fromEntries(
|
|
196
|
-
Object.entries(
|
|
196
|
+
Object.entries(qt({ liquidityUnits: s, poolUnits: t, runeDepth: e, assetDepth: r })).map(
|
|
197
197
|
([i, a]) => [i, a.mul(n)]
|
|
198
198
|
)
|
|
199
|
-
),
|
|
199
|
+
), de = ({
|
|
200
200
|
runeDepth: s,
|
|
201
201
|
poolUnits: t,
|
|
202
202
|
assetDepth: e,
|
|
@@ -204,12 +204,12 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
204
204
|
runeAmount: n,
|
|
205
205
|
assetAmount: i
|
|
206
206
|
}) => {
|
|
207
|
-
const a = new b({ value: s, decimal: 8 }), c = new b({ value: e, decimal: 8 }), u = new b({ value: t, decimal: 8 }), d = new b({ value: n, decimal: 8 }), l = new b({ value: i, decimal: 8 }), _ = d.mul(c),
|
|
208
|
-
if (
|
|
209
|
-
return
|
|
210
|
-
const
|
|
211
|
-
return
|
|
212
|
-
},
|
|
207
|
+
const a = new b({ value: s, decimal: 8 }), c = new b({ value: e, decimal: 8 }), u = new b({ value: t, decimal: 8 }), d = new b({ value: n, decimal: 8 }), l = new b({ value: i, decimal: 8 }), _ = d.mul(c), T = l.mul(a), j = d.mul(l), pt = a.mul(c), ft = u.mul(_.add(T.add(j.mul(2)))), _t = _.add(T.add(pt.mul(2))), Q = ft.div(_t), H = p(r).add(Q);
|
|
208
|
+
if (Q.getBaseValue("number") === 0)
|
|
209
|
+
return H.div(u).getBaseValue("number");
|
|
210
|
+
const gt = u.add(H);
|
|
211
|
+
return H.div(gt).getBaseValue("number");
|
|
212
|
+
}, he = ({
|
|
213
213
|
runeAmount: s,
|
|
214
214
|
assetAmount: t,
|
|
215
215
|
runeDepth: e,
|
|
@@ -217,13 +217,13 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
217
217
|
}) => {
|
|
218
218
|
if (s === "0" || t === "0" || e === "0" || r === "0")
|
|
219
219
|
return 0;
|
|
220
|
-
const n =
|
|
220
|
+
const n = p(e), i = p(r), a = p(t), c = p(s), u = a.mul(n).sub(i.mul(c)), d = i.mul(c).add(n.mul(i));
|
|
221
221
|
return Math.abs(u.div(d).getBaseValue("number"));
|
|
222
222
|
}, Vt = ({
|
|
223
223
|
symbol: s,
|
|
224
224
|
ticker: t,
|
|
225
225
|
chain: e
|
|
226
|
-
}) => e === "ETH" && t !== "ETH" ? `${t}-${s.slice(-3)}` : s,
|
|
226
|
+
}) => e === "ETH" && t !== "ETH" ? `${t}-${s.slice(-3)}` : s, me = (s, t) => {
|
|
227
227
|
switch (s) {
|
|
228
228
|
case g.LEAVE:
|
|
229
229
|
case g.BOND: {
|
|
@@ -254,17 +254,17 @@ const At = "0x313ce567", rt = async ({ chain: s, to: t }) => {
|
|
|
254
254
|
default:
|
|
255
255
|
return "";
|
|
256
256
|
}
|
|
257
|
-
},
|
|
257
|
+
}, pe = (s) => {
|
|
258
258
|
if (s < 0)
|
|
259
259
|
throw new Error("Invalid number of year");
|
|
260
260
|
return 10 + s;
|
|
261
|
-
},
|
|
261
|
+
}, fe = (s) => {
|
|
262
262
|
if (s.length > 30)
|
|
263
263
|
return !1;
|
|
264
264
|
const t = /^[a-zA-Z0-9+_-]+$/g;
|
|
265
265
|
return !!s.match(t);
|
|
266
|
-
},
|
|
267
|
-
class
|
|
266
|
+
}, _e = ([s, t, e, r, n]) => `${s}'/${t}'/${e}'/${r}${typeof n != "number" ? "" : `/${n}`}`;
|
|
267
|
+
class X extends Error {
|
|
268
268
|
constructor(t, e, r) {
|
|
269
269
|
const n = t.status || t.status === 0 ? t.status : "", i = t.statusText || "", a = `${n} ${i}`.trim(), c = a ? `status code ${a}` : "an unknown error";
|
|
270
270
|
super(`Request failed with ${c}`), Object.defineProperty(this, "response", {
|
|
@@ -285,7 +285,7 @@ class J extends Error {
|
|
|
285
285
|
}), this.name = "HTTPError", this.response = t, this.request = e, this.options = r;
|
|
286
286
|
}
|
|
287
287
|
}
|
|
288
|
-
class
|
|
288
|
+
class at extends Error {
|
|
289
289
|
constructor(t) {
|
|
290
290
|
super("Request timed out"), Object.defineProperty(this, "request", {
|
|
291
291
|
enumerable: !0,
|
|
@@ -295,28 +295,28 @@ class nt extends Error {
|
|
|
295
295
|
}), this.name = "TimeoutError", this.request = t;
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
|
-
const
|
|
298
|
+
const q = (s) => s !== null && typeof s == "object", B = (...s) => {
|
|
299
299
|
for (const t of s)
|
|
300
|
-
if ((!
|
|
300
|
+
if ((!q(t) || Array.isArray(t)) && t !== void 0)
|
|
301
301
|
throw new TypeError("The `options` argument must be an object");
|
|
302
|
-
return
|
|
303
|
-
},
|
|
302
|
+
return J({}, ...s);
|
|
303
|
+
}, ct = (s = {}, t = {}) => {
|
|
304
304
|
const e = new globalThis.Headers(s), r = t instanceof globalThis.Headers, n = new globalThis.Headers(t);
|
|
305
305
|
for (const [i, a] of n.entries())
|
|
306
306
|
r && a === "undefined" || a === void 0 ? e.delete(i) : e.set(i, a);
|
|
307
307
|
return e;
|
|
308
|
-
},
|
|
308
|
+
}, J = (...s) => {
|
|
309
309
|
let t = {}, e = {};
|
|
310
310
|
for (const r of s)
|
|
311
311
|
if (Array.isArray(r))
|
|
312
312
|
Array.isArray(t) || (t = []), t = [...t, ...r];
|
|
313
|
-
else if (
|
|
313
|
+
else if (q(r)) {
|
|
314
314
|
for (let [n, i] of Object.entries(r))
|
|
315
|
-
|
|
316
|
-
|
|
315
|
+
q(i) && n in t && (i = J(t[n], i)), t = { ...t, [n]: i };
|
|
316
|
+
q(r.headers) && (e = ct(e, r.headers), t.headers = e);
|
|
317
317
|
}
|
|
318
318
|
return t;
|
|
319
|
-
},
|
|
319
|
+
}, kt = (() => {
|
|
320
320
|
let s = !1, t = !1;
|
|
321
321
|
const e = typeof globalThis.ReadableStream == "function", r = typeof globalThis.Request == "function";
|
|
322
322
|
return e && r && (t = new globalThis.Request("https://empty.invalid", {
|
|
@@ -327,13 +327,13 @@ const B = (s) => s !== null && typeof s == "object", E = (...s) => {
|
|
|
327
327
|
return s = !0, "half";
|
|
328
328
|
}
|
|
329
329
|
}).headers.has("Content-Type")), s && !t;
|
|
330
|
-
})(),
|
|
330
|
+
})(), Pt = typeof globalThis.AbortController == "function", Nt = typeof globalThis.ReadableStream == "function", jt = typeof globalThis.FormData == "function", ut = ["get", "post", "put", "patch", "head", "delete"], Ht = {
|
|
331
331
|
json: "application/json",
|
|
332
332
|
text: "text/*",
|
|
333
333
|
formData: "multipart/form-data",
|
|
334
334
|
arrayBuffer: "*/*",
|
|
335
335
|
blob: "*/*"
|
|
336
|
-
},
|
|
336
|
+
}, D = 2147483647, lt = Symbol("stop"), Lt = {
|
|
337
337
|
json: !0,
|
|
338
338
|
parseJson: !0,
|
|
339
339
|
searchParams: !0,
|
|
@@ -344,7 +344,7 @@ const B = (s) => s !== null && typeof s == "object", E = (...s) => {
|
|
|
344
344
|
throwHttpErrors: !0,
|
|
345
345
|
onDownloadProgress: !0,
|
|
346
346
|
fetch: !0
|
|
347
|
-
},
|
|
347
|
+
}, Dt = {
|
|
348
348
|
method: !0,
|
|
349
349
|
headers: !0,
|
|
350
350
|
body: !0,
|
|
@@ -360,18 +360,18 @@ const B = (s) => s !== null && typeof s == "object", E = (...s) => {
|
|
|
360
360
|
window: !0,
|
|
361
361
|
dispatcher: !0,
|
|
362
362
|
duplex: !0
|
|
363
|
-
},
|
|
363
|
+
}, Ut = (s) => ut.includes(s) ? s.toUpperCase() : s, Ft = ["get", "put", "head", "delete", "options", "trace"], Wt = [408, 413, 429, 500, 502, 503, 504], dt = [413, 429, 503], Z = {
|
|
364
364
|
limit: 2,
|
|
365
|
-
methods:
|
|
366
|
-
statusCodes:
|
|
367
|
-
afterStatusCodes:
|
|
365
|
+
methods: Ft,
|
|
366
|
+
statusCodes: Wt,
|
|
367
|
+
afterStatusCodes: dt,
|
|
368
368
|
maxRetryAfter: Number.POSITIVE_INFINITY,
|
|
369
369
|
backoffLimit: Number.POSITIVE_INFINITY,
|
|
370
370
|
delay: (s) => 0.3 * 2 ** (s - 1) * 1e3
|
|
371
|
-
},
|
|
371
|
+
}, Gt = (s = {}) => {
|
|
372
372
|
if (typeof s == "number")
|
|
373
373
|
return {
|
|
374
|
-
...
|
|
374
|
+
...Z,
|
|
375
375
|
limit: s
|
|
376
376
|
};
|
|
377
377
|
if (s.methods && !Array.isArray(s.methods))
|
|
@@ -379,22 +379,22 @@ const B = (s) => s !== null && typeof s == "object", E = (...s) => {
|
|
|
379
379
|
if (s.statusCodes && !Array.isArray(s.statusCodes))
|
|
380
380
|
throw new Error("retry.statusCodes must be an array");
|
|
381
381
|
return {
|
|
382
|
-
...
|
|
382
|
+
...Z,
|
|
383
383
|
...s,
|
|
384
|
-
afterStatusCodes:
|
|
384
|
+
afterStatusCodes: dt
|
|
385
385
|
};
|
|
386
386
|
};
|
|
387
|
-
async function
|
|
387
|
+
async function Yt(s, t, e, r) {
|
|
388
388
|
return new Promise((n, i) => {
|
|
389
389
|
const a = setTimeout(() => {
|
|
390
|
-
e && e.abort(), i(new
|
|
390
|
+
e && e.abort(), i(new at(s));
|
|
391
391
|
}, r.timeout);
|
|
392
392
|
r.fetch(s, t).then(n).catch(i).then(() => {
|
|
393
393
|
clearTimeout(a);
|
|
394
394
|
});
|
|
395
395
|
});
|
|
396
396
|
}
|
|
397
|
-
async function
|
|
397
|
+
async function zt(s, { signal: t }) {
|
|
398
398
|
return new Promise((e, r) => {
|
|
399
399
|
t && (t.throwIfAborted(), t.addEventListener("abort", n, { once: !0 }));
|
|
400
400
|
function n() {
|
|
@@ -405,17 +405,17 @@ async function Gt(s, { signal: t }) {
|
|
|
405
405
|
}, s);
|
|
406
406
|
});
|
|
407
407
|
}
|
|
408
|
-
const
|
|
408
|
+
const Jt = (s, t) => {
|
|
409
409
|
const e = {};
|
|
410
410
|
for (const r in t)
|
|
411
|
-
!(r in
|
|
411
|
+
!(r in Dt) && !(r in Lt) && !(r in s) && (e[r] = t[r]);
|
|
412
412
|
return e;
|
|
413
413
|
};
|
|
414
|
-
class
|
|
414
|
+
class k {
|
|
415
415
|
static create(t, e) {
|
|
416
|
-
const r = new
|
|
417
|
-
if (typeof r._options.timeout == "number" && r._options.timeout >
|
|
418
|
-
throw new RangeError(`The \`timeout\` option cannot be greater than ${
|
|
416
|
+
const r = new k(t, e), n = async () => {
|
|
417
|
+
if (typeof r._options.timeout == "number" && r._options.timeout > D)
|
|
418
|
+
throw new RangeError(`The \`timeout\` option cannot be greater than ${D}`);
|
|
419
419
|
await Promise.resolve();
|
|
420
420
|
let c = await r._fetch();
|
|
421
421
|
for (const u of r._options.hooks.afterResponse) {
|
|
@@ -423,7 +423,7 @@ class V {
|
|
|
423
423
|
d instanceof globalThis.Response && (c = d);
|
|
424
424
|
}
|
|
425
425
|
if (r._decorateResponse(c), !c.ok && r._options.throwHttpErrors) {
|
|
426
|
-
let u = new
|
|
426
|
+
let u = new X(c, r.request, r._options);
|
|
427
427
|
for (const d of r._options.hooks.beforeError)
|
|
428
428
|
u = await d(u);
|
|
429
429
|
throw u;
|
|
@@ -431,13 +431,13 @@ class V {
|
|
|
431
431
|
if (r._options.onDownloadProgress) {
|
|
432
432
|
if (typeof r._options.onDownloadProgress != "function")
|
|
433
433
|
throw new TypeError("The `onDownloadProgress` option must be a function");
|
|
434
|
-
if (!
|
|
434
|
+
if (!Nt)
|
|
435
435
|
throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");
|
|
436
436
|
return r._stream(c.clone(), r._options.onDownloadProgress);
|
|
437
437
|
}
|
|
438
438
|
return c;
|
|
439
439
|
}, a = r._options.retry.methods.includes(r.request.method.toLowerCase()) ? r._retry(n) : n();
|
|
440
|
-
for (const [c, u] of Object.entries(
|
|
440
|
+
for (const [c, u] of Object.entries(Ht))
|
|
441
441
|
a[c] = async () => {
|
|
442
442
|
r.request.headers.set("accept", r.request.headers.get("accept") || u);
|
|
443
443
|
const l = (await a).clone();
|
|
@@ -482,17 +482,17 @@ class V {
|
|
|
482
482
|
// TODO: credentials can be removed when the spec change is implemented in all browsers. Context: https://www.chromestatus.com/feature/4539473312350208
|
|
483
483
|
credentials: this._input.credentials || "same-origin",
|
|
484
484
|
...e,
|
|
485
|
-
headers:
|
|
486
|
-
hooks:
|
|
485
|
+
headers: ct(this._input.headers, e.headers),
|
|
486
|
+
hooks: J({
|
|
487
487
|
beforeRequest: [],
|
|
488
488
|
beforeRetry: [],
|
|
489
489
|
beforeError: [],
|
|
490
490
|
afterResponse: []
|
|
491
491
|
}, e.hooks),
|
|
492
|
-
method:
|
|
492
|
+
method: Ut(e.method ?? this._input.method),
|
|
493
493
|
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
494
494
|
prefixUrl: String(e.prefixUrl || ""),
|
|
495
|
-
retry:
|
|
495
|
+
retry: Gt(e.retry),
|
|
496
496
|
throwHttpErrors: e.throwHttpErrors !== !1,
|
|
497
497
|
timeout: e.timeout ?? 1e4,
|
|
498
498
|
fetch: e.fetch ?? globalThis.fetch.bind(globalThis)
|
|
@@ -503,7 +503,7 @@ class V {
|
|
|
503
503
|
throw new Error("`input` must not begin with a slash when using `prefixUrl`");
|
|
504
504
|
this._options.prefixUrl.endsWith("/") || (this._options.prefixUrl += "/"), this._input = this._options.prefixUrl + this._input;
|
|
505
505
|
}
|
|
506
|
-
if (
|
|
506
|
+
if (Pt) {
|
|
507
507
|
if (this.abortController = new globalThis.AbortController(), this._options.signal) {
|
|
508
508
|
const r = this._options.signal;
|
|
509
509
|
this._options.signal.addEventListener("abort", () => {
|
|
@@ -512,15 +512,15 @@ class V {
|
|
|
512
512
|
}
|
|
513
513
|
this._options.signal = this.abortController.signal;
|
|
514
514
|
}
|
|
515
|
-
if (
|
|
515
|
+
if (kt && (this._options.duplex = "half"), this.request = new globalThis.Request(this._input, this._options), this._options.searchParams) {
|
|
516
516
|
const n = "?" + (typeof this._options.searchParams == "string" ? this._options.searchParams.replace(/^\?/, "") : new URLSearchParams(this._options.searchParams).toString()), i = this.request.url.replace(/(?:\?.*?)?(?=#|$)/, n);
|
|
517
|
-
(
|
|
517
|
+
(jt && this._options.body instanceof globalThis.FormData || this._options.body instanceof URLSearchParams) && !(this._options.headers && this._options.headers["content-type"]) && this.request.headers.delete("content-type"), this.request = new globalThis.Request(new globalThis.Request(i, { ...this.request }), this._options);
|
|
518
518
|
}
|
|
519
519
|
this._options.json !== void 0 && (this._options.body = JSON.stringify(this._options.json), this.request.headers.set("content-type", this._options.headers.get("content-type") ?? "application/json"), this.request = new globalThis.Request(this.request, { body: this._options.body }));
|
|
520
520
|
}
|
|
521
521
|
_calculateRetryDelay(t) {
|
|
522
|
-
if (this._retryCount++, this._retryCount < this._options.retry.limit && !(t instanceof
|
|
523
|
-
if (t instanceof
|
|
522
|
+
if (this._retryCount++, this._retryCount < this._options.retry.limit && !(t instanceof at)) {
|
|
523
|
+
if (t instanceof X) {
|
|
524
524
|
if (!this._options.retry.statusCodes.includes(t.response.status))
|
|
525
525
|
return 0;
|
|
526
526
|
const r = t.response.headers.get("Retry-After");
|
|
@@ -543,16 +543,16 @@ class V {
|
|
|
543
543
|
try {
|
|
544
544
|
return await t();
|
|
545
545
|
} catch (e) {
|
|
546
|
-
const r = Math.min(this._calculateRetryDelay(e),
|
|
546
|
+
const r = Math.min(this._calculateRetryDelay(e), D);
|
|
547
547
|
if (r !== 0 && this._retryCount > 0) {
|
|
548
|
-
await
|
|
548
|
+
await zt(r, { signal: this._options.signal });
|
|
549
549
|
for (const n of this._options.hooks.beforeRetry)
|
|
550
550
|
if (await n({
|
|
551
551
|
request: this.request,
|
|
552
552
|
options: this._options,
|
|
553
553
|
error: e,
|
|
554
554
|
retryCount: this._retryCount
|
|
555
|
-
}) ===
|
|
555
|
+
}) === lt)
|
|
556
556
|
return;
|
|
557
557
|
return this._retry(t);
|
|
558
558
|
}
|
|
@@ -569,8 +569,8 @@ class V {
|
|
|
569
569
|
if (r instanceof Response)
|
|
570
570
|
return r;
|
|
571
571
|
}
|
|
572
|
-
const t =
|
|
573
|
-
return this._options.timeout === !1 ? this._options.fetch(this.request.clone(), t) :
|
|
572
|
+
const t = Jt(this.request, this._options);
|
|
573
|
+
return this._options.timeout === !1 ? this._options.fetch(this.request.clone(), t) : Yt(this.request.clone(), t, this.abortController, this._options);
|
|
574
574
|
}
|
|
575
575
|
/* istanbul ignore next */
|
|
576
576
|
_stream(t, e) {
|
|
@@ -607,29 +607,29 @@ class V {
|
|
|
607
607
|
}
|
|
608
608
|
}
|
|
609
609
|
/*! MIT License © Sindre Sorhus */
|
|
610
|
-
const
|
|
611
|
-
const t = (e, r) =>
|
|
612
|
-
for (const e of
|
|
613
|
-
t[e] = (r, n) =>
|
|
614
|
-
return t.create = (e) =>
|
|
615
|
-
},
|
|
616
|
-
get: (s, t) =>
|
|
617
|
-
post: (s, t) =>
|
|
618
|
-
},
|
|
610
|
+
const U = (s) => {
|
|
611
|
+
const t = (e, r) => k.create(e, B(s, r));
|
|
612
|
+
for (const e of ut)
|
|
613
|
+
t[e] = (r, n) => k.create(r, B(s, n, { method: e }));
|
|
614
|
+
return t.create = (e) => U(B(e)), t.extend = (e) => U(B(s, e)), t.stop = lt, t;
|
|
615
|
+
}, Kt = U(), Qt = Kt, Xt = typeof window < "u" ? {} : { referrer: "https://sk.thorswap.net", referer: "https://sk.thorswap.net" }, tt = Qt.create({ headers: Xt }), Zt = {
|
|
616
|
+
get: (s, t) => tt.get(s, t).json(),
|
|
617
|
+
post: (s, t) => tt.post(s, t).json()
|
|
618
|
+
}, et = Object.values(o), te = (s = "") => {
|
|
619
619
|
const t = s.toUpperCase(), [e] = t.split(".");
|
|
620
|
-
if (
|
|
620
|
+
if (et.includes(e))
|
|
621
621
|
return !0;
|
|
622
622
|
const [r] = t.split("/");
|
|
623
|
-
if (
|
|
623
|
+
if (et.includes(r))
|
|
624
624
|
return !0;
|
|
625
625
|
throw new Error(
|
|
626
626
|
`Invalid identifier: ${s}. Expected format: <Chain>.<Ticker> or <Chain>.<Ticker>-<ContractAddress>`
|
|
627
627
|
);
|
|
628
|
-
},
|
|
629
|
-
function
|
|
628
|
+
}, I = 8, w = (s) => 10n ** BigInt(s), S = (s) => Math.log10(parseFloat(s.toString()));
|
|
629
|
+
function P({
|
|
630
630
|
value: s,
|
|
631
|
-
bigIntDecimal: t =
|
|
632
|
-
decimal: e =
|
|
631
|
+
bigIntDecimal: t = I,
|
|
632
|
+
decimal: e = I
|
|
633
633
|
}) {
|
|
634
634
|
const r = s < 0n;
|
|
635
635
|
let n = s.toString().substring(r ? 1 : 0);
|
|
@@ -642,23 +642,24 @@ function q({
|
|
|
642
642
|
""
|
|
643
643
|
);
|
|
644
644
|
}
|
|
645
|
-
var
|
|
646
|
-
const
|
|
645
|
+
var v, C, y, R, N, ht, O, F, M, W;
|
|
646
|
+
const K = class K {
|
|
647
647
|
constructor(t) {
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
648
|
+
$(this, v);
|
|
649
|
+
$(this, y);
|
|
650
|
+
$(this, N);
|
|
651
|
+
$(this, O);
|
|
652
|
+
$(this, M);
|
|
653
|
+
f(this, "decimalMultiplier", 10n ** 8n);
|
|
654
|
+
f(this, "bigIntValue", 0n);
|
|
655
|
+
f(this, "decimal");
|
|
656
|
+
const e = G(t), r = typeof t == "object";
|
|
657
|
+
this.decimal = r ? t.decimal : void 0, this.decimalMultiplier = r && "decimalMultiplier" in t ? t.decimalMultiplier : w(Math.max(rt(x(e)), this.decimal || 0)), m(this, N, ht).call(this, e);
|
|
657
658
|
}
|
|
658
659
|
static fromBigInt(t, e) {
|
|
659
|
-
return new
|
|
660
|
+
return new K({
|
|
660
661
|
decimal: e,
|
|
661
|
-
value:
|
|
662
|
+
value: P({ value: t, bigIntDecimal: e, decimal: e })
|
|
662
663
|
});
|
|
663
664
|
}
|
|
664
665
|
static shiftDecimals({
|
|
@@ -667,7 +668,7 @@ const Y = class Y {
|
|
|
667
668
|
to: r
|
|
668
669
|
}) {
|
|
669
670
|
return this.fromBigInt(
|
|
670
|
-
t.getBaseValue("bigint") *
|
|
671
|
+
t.getBaseValue("bigint") * w(r) / w(e),
|
|
671
672
|
r
|
|
672
673
|
);
|
|
673
674
|
}
|
|
@@ -675,37 +676,37 @@ const Y = class Y {
|
|
|
675
676
|
return new this.constructor({ decimal: this.decimal, value: t, identifier: this.toString() });
|
|
676
677
|
}
|
|
677
678
|
add(...t) {
|
|
678
|
-
return
|
|
679
|
+
return m(this, v, C).call(this, "add", ...t);
|
|
679
680
|
}
|
|
680
681
|
sub(...t) {
|
|
681
|
-
return
|
|
682
|
+
return m(this, v, C).call(this, "sub", ...t);
|
|
682
683
|
}
|
|
683
684
|
mul(...t) {
|
|
684
|
-
return
|
|
685
|
+
return m(this, v, C).call(this, "mul", ...t);
|
|
685
686
|
}
|
|
686
687
|
div(...t) {
|
|
687
|
-
return
|
|
688
|
+
return m(this, v, C).call(this, "div", ...t);
|
|
688
689
|
}
|
|
689
690
|
gt(t) {
|
|
690
|
-
return this
|
|
691
|
+
return m(this, y, R).call(this, "gt", t);
|
|
691
692
|
}
|
|
692
693
|
gte(t) {
|
|
693
|
-
return this
|
|
694
|
+
return m(this, y, R).call(this, "gte", t);
|
|
694
695
|
}
|
|
695
696
|
lt(t) {
|
|
696
|
-
return this
|
|
697
|
+
return m(this, y, R).call(this, "lt", t);
|
|
697
698
|
}
|
|
698
699
|
lte(t) {
|
|
699
|
-
return this
|
|
700
|
+
return m(this, y, R).call(this, "lte", t);
|
|
700
701
|
}
|
|
701
702
|
eqValue(t) {
|
|
702
|
-
return this
|
|
703
|
+
return m(this, y, R).call(this, "eqValue", t);
|
|
703
704
|
}
|
|
704
705
|
// @ts-expect-error False positive
|
|
705
706
|
getValue(t) {
|
|
706
707
|
const e = this.formatBigIntToSafeValue(
|
|
707
708
|
this.bigIntValue,
|
|
708
|
-
this.decimal ||
|
|
709
|
+
this.decimal || S(this.decimalMultiplier)
|
|
709
710
|
);
|
|
710
711
|
switch (t) {
|
|
711
712
|
case "number":
|
|
@@ -718,7 +719,7 @@ const Y = class Y {
|
|
|
718
719
|
}
|
|
719
720
|
// @ts-expect-error
|
|
720
721
|
getBaseValue(t) {
|
|
721
|
-
const e = this.decimalMultiplier /
|
|
722
|
+
const e = this.decimalMultiplier / w(this.decimal || h.THOR), r = this.bigIntValue / e;
|
|
722
723
|
switch (t) {
|
|
723
724
|
case "number":
|
|
724
725
|
return Number(r);
|
|
@@ -731,8 +732,8 @@ const Y = class Y {
|
|
|
731
732
|
getBigIntValue(t, e) {
|
|
732
733
|
if (!e && typeof t == "object")
|
|
733
734
|
return t.bigIntValue;
|
|
734
|
-
const r =
|
|
735
|
-
return n === "0" || n === "undefined" ? 0n :
|
|
735
|
+
const r = G(t), n = x(r);
|
|
736
|
+
return n === "0" || n === "undefined" ? 0n : m(this, M, W).call(this, n, e);
|
|
736
737
|
}
|
|
737
738
|
toSignificant(t = 6) {
|
|
738
739
|
const [e, r] = this.getValue("string").split("."), n = e || "", i = r || "";
|
|
@@ -778,9 +779,9 @@ const Y = class Y {
|
|
|
778
779
|
return `${e === "start" ? t : ""}${l}${e === "end" ? t : ""}`;
|
|
779
780
|
}
|
|
780
781
|
formatBigIntToSafeValue(t, e) {
|
|
781
|
-
const r = e || this.decimal ||
|
|
782
|
+
const r = e || this.decimal || I, n = Math.max(
|
|
782
783
|
r,
|
|
783
|
-
|
|
784
|
+
S(this.decimalMultiplier)
|
|
784
785
|
), i = t < 0n, a = t.toString().substring(i ? 1 : 0), c = n - (a.length - 1), u = c > 0 ? "0".repeat(c) + a : a, d = u.length - n;
|
|
785
786
|
let l = u.slice(-n);
|
|
786
787
|
return parseInt(l[r]) >= 5 ? l = `${l.substring(0, r - 1)}${(parseInt(l[r - 1]) + 1).toString()}` : l = l.substring(0, r), `${i ? "-" : ""}${u.slice(
|
|
@@ -789,8 +790,8 @@ const Y = class Y {
|
|
|
789
790
|
)}.${l}`.replace(/\.?0*$/, "");
|
|
790
791
|
}
|
|
791
792
|
};
|
|
792
|
-
|
|
793
|
-
const r =
|
|
793
|
+
v = new WeakSet(), C = function(t, ...e) {
|
|
794
|
+
const r = m(this, O, F).call(this, this, ...e), n = Math.max(r, S(this.decimalMultiplier)), i = w(n), a = e.reduce(
|
|
794
795
|
(u, d) => {
|
|
795
796
|
const l = this.getBigIntValue(d, n);
|
|
796
797
|
switch (t) {
|
|
@@ -811,70 +812,85 @@ A = new WeakSet(), R = function(t, ...e) {
|
|
|
811
812
|
},
|
|
812
813
|
//normalize is to precision multiplier base
|
|
813
814
|
this.bigIntValue * i / this.decimalMultiplier
|
|
814
|
-
), c =
|
|
815
|
+
), c = P({
|
|
815
816
|
bigIntDecimal: n,
|
|
816
817
|
decimal: n,
|
|
817
818
|
value: a
|
|
818
819
|
});
|
|
819
820
|
return new this.constructor({
|
|
820
|
-
decimalMultiplier:
|
|
821
|
+
decimalMultiplier: w(n),
|
|
821
822
|
decimal: this.decimal,
|
|
822
823
|
value: c,
|
|
823
824
|
identifier: this.toString()
|
|
824
825
|
});
|
|
825
|
-
},
|
|
826
|
-
const
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
826
|
+
}, y = new WeakSet(), R = function(t, ...e) {
|
|
827
|
+
const r = m(this, O, F).call(this, this, ...e), n = this.getBigIntValue(e[0], r), i = this.getBigIntValue(this, r);
|
|
828
|
+
switch (t) {
|
|
829
|
+
case "gt":
|
|
830
|
+
return i > n;
|
|
831
|
+
case "gte":
|
|
832
|
+
return i >= n;
|
|
833
|
+
case "lt":
|
|
834
|
+
return i < n;
|
|
835
|
+
case "lte":
|
|
836
|
+
return i <= n;
|
|
837
|
+
case "eqValue":
|
|
838
|
+
return i === n;
|
|
839
|
+
}
|
|
840
|
+
}, N = new WeakSet(), ht = function(t) {
|
|
841
|
+
const e = x(t) || "0";
|
|
842
|
+
this.bigIntValue = m(this, M, W).call(this, e);
|
|
843
|
+
}, O = new WeakSet(), F = function(...t) {
|
|
844
|
+
const e = t.map((r) => typeof r == "object" ? r.decimal || S(r.decimalMultiplier) : rt(x(r))).filter(Boolean);
|
|
845
|
+
return Math.max(...e, I);
|
|
846
|
+
}, M = new WeakSet(), W = function(t, e) {
|
|
847
|
+
const r = e ? w(e) : this.decimalMultiplier, n = S(r), [i = "", a = ""] = t.split(".");
|
|
833
848
|
return BigInt(`${i}${a.padEnd(n, "0")}`);
|
|
834
849
|
};
|
|
835
|
-
let
|
|
836
|
-
const
|
|
850
|
+
let E = K;
|
|
851
|
+
const ee = Intl.NumberFormat("fullwide", {
|
|
837
852
|
useGrouping: !1,
|
|
838
853
|
maximumFractionDigits: 20
|
|
839
854
|
});
|
|
840
|
-
function
|
|
841
|
-
const e = `${typeof s == "number" ?
|
|
855
|
+
function x(s) {
|
|
856
|
+
const e = `${typeof s == "number" ? ee.format(s) : G(s)}`.replaceAll(",", ".").split(".");
|
|
842
857
|
return e.length > 1 ? `${e.slice(0, -1).join("")}.${e.at(-1)}` : e[0];
|
|
843
858
|
}
|
|
844
|
-
function
|
|
859
|
+
function rt(s) {
|
|
845
860
|
var e;
|
|
846
861
|
const t = ((e = s.split(".")[1]) == null ? void 0 : e.length) || 0;
|
|
847
|
-
return Math.max(t,
|
|
862
|
+
return Math.max(t, I);
|
|
848
863
|
}
|
|
849
|
-
function
|
|
864
|
+
function G(s) {
|
|
850
865
|
return typeof s == "object" ? "getValue" in s ? s.getValue("string") : s.value : s;
|
|
851
866
|
}
|
|
852
|
-
const
|
|
853
|
-
let
|
|
854
|
-
const
|
|
855
|
-
if (!
|
|
867
|
+
const V = (s, t) => typeof s == "bigint" ? P({ value: s, bigIntDecimal: t, decimal: t }) : s;
|
|
868
|
+
let Y;
|
|
869
|
+
const st = (s) => {
|
|
870
|
+
if (!Y)
|
|
856
871
|
throw new Error("Static assets not loaded, call await AssetValue.loadStaticAssets() first");
|
|
857
|
-
return
|
|
858
|
-
},
|
|
859
|
-
|
|
860
|
-
const e = await
|
|
861
|
-
return new
|
|
872
|
+
return Y.get(s.toUpperCase()) || { decimal: h.THOR, identifier: "" };
|
|
873
|
+
}, nt = async (s, t = 0) => {
|
|
874
|
+
te(s);
|
|
875
|
+
const e = await Ct(z(s)), r = V(t, e);
|
|
876
|
+
return new A({ decimal: e, value: r, identifier: s });
|
|
862
877
|
};
|
|
863
|
-
class
|
|
878
|
+
class A extends E {
|
|
864
879
|
constructor(e) {
|
|
865
880
|
const r = "identifier" in e ? e.identifier : `${e.chain}.${e.symbol}`;
|
|
866
881
|
super(
|
|
867
|
-
e.value instanceof
|
|
882
|
+
e.value instanceof E ? e.value : { decimal: e.decimal, value: e.value }
|
|
868
883
|
);
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
884
|
+
f(this, "address");
|
|
885
|
+
f(this, "chain");
|
|
886
|
+
f(this, "isGasAsset", !1);
|
|
887
|
+
f(this, "isSynthetic", !1);
|
|
888
|
+
f(this, "symbol");
|
|
889
|
+
f(this, "tax");
|
|
890
|
+
f(this, "ticker");
|
|
891
|
+
f(this, "type");
|
|
892
|
+
const n = z(r);
|
|
893
|
+
this.type = Et(n), this.chain = n.chain, this.ticker = n.ticker, this.symbol = n.symbol, this.address = n.address, this.isSynthetic = n.isSynthetic, this.isGasAsset = n.isGasAsset, this.tax = e.tax;
|
|
878
894
|
}
|
|
879
895
|
toString(e = !1) {
|
|
880
896
|
const r = this.isSynthetic ? this.symbol.split("-")[0] : this.ticker;
|
|
@@ -887,24 +903,26 @@ class w extends C {
|
|
|
887
903
|
return this.chain === e && this.symbol === r;
|
|
888
904
|
}
|
|
889
905
|
static async fromString(e, r = 0) {
|
|
890
|
-
return
|
|
906
|
+
return nt(e, r);
|
|
891
907
|
}
|
|
892
908
|
static fromStringSync(e, r = 0) {
|
|
893
|
-
const { isSynthetic: n } =
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
909
|
+
const { isSynthetic: n } = z(e), {
|
|
910
|
+
tax: i,
|
|
911
|
+
decimal: a,
|
|
912
|
+
identifier: c
|
|
913
|
+
} = st(e), u = V(r, a);
|
|
914
|
+
return c ? new A({ tax: i, decimal: a, identifier: c, value: u }) : n ? new A({ tax: i, decimal: 8, identifier: e, value: u }) : void 0;
|
|
897
915
|
}
|
|
898
916
|
static async fromIdentifier(e, r = 0) {
|
|
899
|
-
return
|
|
917
|
+
return nt(e, r);
|
|
900
918
|
}
|
|
901
919
|
static fromIdentifierSync(e, r = 0) {
|
|
902
|
-
const { decimal: n, identifier: i } =
|
|
903
|
-
return new
|
|
920
|
+
const { decimal: n, identifier: i } = st(e), a = V(r, n);
|
|
921
|
+
return new A({ decimal: n, identifier: i, value: a });
|
|
904
922
|
}
|
|
905
923
|
static fromChainOrSignature(e, r = 0) {
|
|
906
|
-
const { decimal: n, identifier: i } =
|
|
907
|
-
return new
|
|
924
|
+
const { decimal: n, identifier: i } = It(e), a = V(r, n);
|
|
925
|
+
return new A({ value: a, decimal: n, identifier: i });
|
|
908
926
|
}
|
|
909
927
|
static async loadStaticAssets() {
|
|
910
928
|
return new Promise(
|
|
@@ -917,10 +935,10 @@ class w extends C {
|
|
|
917
935
|
NativeList: i,
|
|
918
936
|
...a
|
|
919
937
|
} = await import("@swapkit/tokens");
|
|
920
|
-
|
|
921
|
-
(u, { tokens: d }) => (d.forEach(({ identifier: l, chain: _, ...
|
|
922
|
-
const
|
|
923
|
-
u.set(l, { identifier: l, decimal:
|
|
938
|
+
Y = [i, ...Object.values(a)].reduce(
|
|
939
|
+
(u, { tokens: d }) => (d.forEach(({ identifier: l, chain: _, ...T }) => {
|
|
940
|
+
const j = "decimals" in T ? T.decimals : h[_];
|
|
941
|
+
u.set(l, { identifier: l, decimal: j });
|
|
924
942
|
}), u),
|
|
925
943
|
/* @__PURE__ */ new Map()
|
|
926
944
|
), e({ ok: !0 });
|
|
@@ -935,8 +953,8 @@ class w extends C {
|
|
|
935
953
|
);
|
|
936
954
|
}
|
|
937
955
|
}
|
|
938
|
-
const
|
|
939
|
-
const t =
|
|
956
|
+
const ge = (s) => {
|
|
957
|
+
const t = A.fromChainOrSignature(s);
|
|
940
958
|
switch (s) {
|
|
941
959
|
case o.Bitcoin:
|
|
942
960
|
case o.Litecoin:
|
|
@@ -953,17 +971,17 @@ const fe = (s) => {
|
|
|
953
971
|
default:
|
|
954
972
|
return t.set(1e-8);
|
|
955
973
|
}
|
|
956
|
-
},
|
|
974
|
+
}, z = (s) => {
|
|
957
975
|
const t = s.slice(0, 14).includes("/"), [e, r] = s.split(".").pop().split("/"), n = s.includes(".") && !t ? s : `${o.THORChain}.${r}`, [i, a] = n.split("."), [c, u] = (t ? r : a).split("-");
|
|
958
976
|
return {
|
|
959
977
|
address: u == null ? void 0 : u.toLowerCase(),
|
|
960
978
|
chain: i,
|
|
961
|
-
isGasAsset:
|
|
979
|
+
isGasAsset: ot({ chain: i, symbol: a }),
|
|
962
980
|
isSynthetic: t,
|
|
963
981
|
symbol: (t ? `${e}/` : "") + (u ? `${c}-${(u == null ? void 0 : u.toLowerCase()) ?? ""}` : a),
|
|
964
982
|
ticker: c
|
|
965
983
|
};
|
|
966
|
-
},
|
|
984
|
+
}, re = {
|
|
967
985
|
/**
|
|
968
986
|
* Core
|
|
969
987
|
*/
|
|
@@ -1020,47 +1038,47 @@ const fe = (s) => {
|
|
|
1020
1038
|
*/
|
|
1021
1039
|
helpers_number_different_decimals: 99101
|
|
1022
1040
|
};
|
|
1023
|
-
class
|
|
1041
|
+
class mt extends Error {
|
|
1024
1042
|
constructor(t, e) {
|
|
1025
|
-
console.error(e), super(t, { cause: { code:
|
|
1043
|
+
console.error(e), super(t, { cause: { code: re[t], message: t } }), Object.setPrototypeOf(this, mt.prototype);
|
|
1026
1044
|
}
|
|
1027
1045
|
}
|
|
1028
|
-
class b extends
|
|
1046
|
+
class b extends E {
|
|
1029
1047
|
eq(t) {
|
|
1030
1048
|
return this.eqValue(t);
|
|
1031
1049
|
}
|
|
1032
1050
|
static fromBigInt(t, e) {
|
|
1033
1051
|
return new b({
|
|
1034
1052
|
decimal: e,
|
|
1035
|
-
value:
|
|
1053
|
+
value: P({ value: t, bigIntDecimal: e, decimal: e })
|
|
1036
1054
|
});
|
|
1037
1055
|
}
|
|
1038
1056
|
}
|
|
1039
1057
|
export {
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1058
|
+
A as AssetValue,
|
|
1059
|
+
E as BigIntArithmetics,
|
|
1060
|
+
Zt as RequestClient,
|
|
1061
|
+
mt as SwapKitError,
|
|
1044
1062
|
b as SwapKitNumber,
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1063
|
+
oe as assetFromString,
|
|
1064
|
+
_e as derivationPathToString,
|
|
1065
|
+
ae as filterAssets,
|
|
1066
|
+
P as formatBigIntToSafeValue,
|
|
1067
|
+
ie as gasFeeMultiplier,
|
|
1068
|
+
Et as getAssetType,
|
|
1069
|
+
xt as getAsymmetricAssetShare,
|
|
1070
|
+
ue as getAsymmetricAssetWithdrawAmount,
|
|
1071
|
+
Bt as getAsymmetricRuneShare,
|
|
1072
|
+
ce as getAsymmetricRuneWithdrawAmount,
|
|
1073
|
+
It as getCommonAssetInfo,
|
|
1074
|
+
Ct as getDecimal,
|
|
1075
|
+
de as getEstimatedPoolShare,
|
|
1076
|
+
he as getLiquiditySlippage,
|
|
1077
|
+
me as getMemoFor,
|
|
1078
|
+
ge as getMinAmountByChain,
|
|
1079
|
+
qt as getSymmetricPoolShare,
|
|
1080
|
+
le as getSymmetricWithdraw,
|
|
1081
|
+
pe as getTHORNameCost,
|
|
1082
|
+
ot as isGasAsset,
|
|
1083
|
+
fe as validateTHORName
|
|
1066
1084
|
};
|