@dhedge/trading-widget 6.2.1 → 6.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/core-kit/utils/dytm.d.ts +6 -0
- package/core-kit/utils/hyperliquid.d.ts +2 -0
- package/core-kit/utils/transaction.d.ts +14 -1
- package/{dytm-DdzHS3o4.js → dytm-D5O16WMt.js} +387 -351
- package/dytm-wondvAJ2.cjs +1 -0
- package/index.cjs +1 -1
- package/index.js +2745 -2684
- package/package.json +1 -1
- package/utils.cjs +1 -1
- package/utils.js +67 -63
- package/dytm-CliLZLfa.cjs +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { aq as
|
|
1
|
+
import { hyperEvm as Y, mainnet as b, polygon as J, optimism as tt, base as et, arbitrum as st } from "wagmi/chains";
|
|
2
|
+
import { aq as nt, ao as at, ap as rt, a as D, q as I, ar as ot, as as it, a5 as ct, ak as ut, a3 as dt, b as pt, ae as lt, Z as W, aj as mt, at as G, e as yt, d as At, M as gt, R as Et, P as ht, au as St, av as ft, Q as Tt, N as _t, ah as f, _ as wt, W as bt, X as Dt, U as It, aw as H, ax as Rt, ay as Nt, az as Ot, aA as Ct, aB as Mt, ad as xt } from "./gmx-Cyz_GmV5.js";
|
|
3
3
|
import u from "bignumber.js";
|
|
4
|
-
import { zeroHash as
|
|
5
|
-
const
|
|
4
|
+
import { zeroHash as Lt, bytesToHex as Bt, pad as Pt, stringToHex as R, encodeAbiParameters as h, encodeFunctionData as y, erc20Abi as k, maxUint256 as _ } from "viem";
|
|
5
|
+
const $e = typeof window < "u", ve = [
|
|
6
6
|
{
|
|
7
7
|
inputs: [
|
|
8
8
|
{ internalType: "address", name: "_pool", type: "address" },
|
|
@@ -30,7 +30,7 @@ const xe = typeof window < "u", Le = [
|
|
|
30
30
|
stateMutability: "view",
|
|
31
31
|
type: "function"
|
|
32
32
|
}
|
|
33
|
-
],
|
|
33
|
+
], Ut = [
|
|
34
34
|
{
|
|
35
35
|
type: "tuple",
|
|
36
36
|
components: [
|
|
@@ -53,7 +53,7 @@ const xe = typeof window < "u", Le = [
|
|
|
53
53
|
{ name: "amountOutMinimum", type: "uint256" }
|
|
54
54
|
]
|
|
55
55
|
}
|
|
56
|
-
],
|
|
56
|
+
], $t = [
|
|
57
57
|
{ name: "asset", type: "address" },
|
|
58
58
|
{ name: "amount", type: "uint256" },
|
|
59
59
|
{ name: "assetType", type: "uint16" },
|
|
@@ -64,7 +64,7 @@ const xe = typeof window < "u", Le = [
|
|
|
64
64
|
{ name: "tokenId", type: "uint256" },
|
|
65
65
|
{ name: "debtKey", type: "uint248" },
|
|
66
66
|
{ name: "shares", type: "uint256" }
|
|
67
|
-
],
|
|
67
|
+
], Fe = [
|
|
68
68
|
{
|
|
69
69
|
inputs: [
|
|
70
70
|
{ internalType: "address", name: "_pool", type: "address" },
|
|
@@ -75,7 +75,7 @@ const xe = typeof window < "u", Le = [
|
|
|
75
75
|
{
|
|
76
76
|
name: "assetData",
|
|
77
77
|
type: "tuple[]",
|
|
78
|
-
components:
|
|
78
|
+
components: $t
|
|
79
79
|
}
|
|
80
80
|
],
|
|
81
81
|
stateMutability: "nonpayable",
|
|
@@ -88,7 +88,7 @@ const xe = typeof window < "u", Le = [
|
|
|
88
88
|
stateMutability: "view",
|
|
89
89
|
type: "function"
|
|
90
90
|
}
|
|
91
|
-
],
|
|
91
|
+
], N = [
|
|
92
92
|
{
|
|
93
93
|
inputs: [
|
|
94
94
|
{
|
|
@@ -130,7 +130,7 @@ const xe = typeof window < "u", Le = [
|
|
|
130
130
|
stateMutability: "nonpayable",
|
|
131
131
|
type: "function"
|
|
132
132
|
}
|
|
133
|
-
],
|
|
133
|
+
], vt = [
|
|
134
134
|
{
|
|
135
135
|
inputs: [
|
|
136
136
|
{ name: "tokenIn", type: "address" },
|
|
@@ -159,7 +159,7 @@ const xe = typeof window < "u", Le = [
|
|
|
159
159
|
stateMutability: "nonpayable",
|
|
160
160
|
type: "function"
|
|
161
161
|
}
|
|
162
|
-
],
|
|
162
|
+
], Ft = [
|
|
163
163
|
{
|
|
164
164
|
type: "tuple",
|
|
165
165
|
components: [
|
|
@@ -175,7 +175,7 @@ const xe = typeof window < "u", Le = [
|
|
|
175
175
|
{ name: "minOutputAmount", type: "uint256" }
|
|
176
176
|
]
|
|
177
177
|
}
|
|
178
|
-
],
|
|
178
|
+
], w = {
|
|
179
179
|
stringErrors: {
|
|
180
180
|
// Ondo tokenized assets trade only during market hours; the full message
|
|
181
181
|
// includes a dynamic reopen time (e.g. "QUBTon is currently closed for
|
|
@@ -204,80 +204,80 @@ const xe = typeof window < "u", Le = [
|
|
|
204
204
|
hint: "Increase slippage tolerance and try again."
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
|
-
},
|
|
207
|
+
}, V = (t) => ({
|
|
208
208
|
stringErrors: {
|
|
209
209
|
...t.stringErrors,
|
|
210
|
-
...
|
|
210
|
+
...w.stringErrors
|
|
211
211
|
},
|
|
212
212
|
selectorErrors: {
|
|
213
213
|
...t.selectorErrors,
|
|
214
|
-
...
|
|
214
|
+
...w.selectorErrors
|
|
215
215
|
}
|
|
216
|
-
}),
|
|
216
|
+
}), Yt = [
|
|
217
217
|
"https://cdn.jsdelivr.net/gh/dhedge/V2-Public@master/readmes/errorCodes/registry.json",
|
|
218
218
|
"https://raw.githubusercontent.com/dhedge/V2-Public/master/readmes/errorCodes/registry.json"
|
|
219
|
-
],
|
|
220
|
-
let
|
|
221
|
-
const
|
|
222
|
-
|
|
223
|
-
},
|
|
219
|
+
], Wt = 1, Gt = 1e4, O = 2e6, Ht = 2e3, kt = 500, Vt = 120, Kt = 300, qt = 4, jt = /^dh\d{1,3}$/i, K = /[\u0000-\u001f\u007f]/, Xt = /https?:\/\/|[<>`]/i, zt = (t) => t.length <= Vt && !K.test(t) && (jt.test(t) || t.length >= qt), g = (t) => typeof t == "string" && t.length > 0 && t.length <= Kt && !K.test(t) && !Xt.test(t);
|
|
220
|
+
let q = w, T = null;
|
|
221
|
+
const j = () => q, Qt = (t) => {
|
|
222
|
+
q = V(t);
|
|
223
|
+
}, Zt = (t) => {
|
|
224
224
|
const e = t;
|
|
225
|
-
if (e?.schemaVersion !==
|
|
225
|
+
if (e?.schemaVersion !== Wt)
|
|
226
226
|
throw new Error(
|
|
227
227
|
`Unsupported error registry schemaVersion: ${String(e?.schemaVersion)}`
|
|
228
228
|
);
|
|
229
|
-
const n = {};
|
|
230
|
-
for (const [r, a] of Object.entries(e.stringErrors ?? {}))
|
|
231
|
-
a?.curated === !0 && jt(r) && A(a.description) && A(a.action) && (n[r] = { title: a.description, hint: a.action });
|
|
232
229
|
const s = {};
|
|
230
|
+
for (const [r, a] of Object.entries(e.stringErrors ?? {}))
|
|
231
|
+
a?.curated === !0 && zt(r) && g(a.description) && g(a.action) && (s[r] = { title: a.description, hint: a.action });
|
|
232
|
+
const n = {};
|
|
233
233
|
for (const [r, a] of Object.entries(e.selectorErrors ?? {}))
|
|
234
|
-
a?.curated === !0 && /^0x[0-9a-f]{8}$/.test(r) &&
|
|
234
|
+
a?.curated === !0 && /^0x[0-9a-f]{8}$/.test(r) && g(a.signature) && g(a.description) && g(a.action) && (n[r] = {
|
|
235
235
|
signature: a.signature,
|
|
236
236
|
title: a.description,
|
|
237
237
|
hint: a.action
|
|
238
238
|
});
|
|
239
|
-
if (!Object.keys(
|
|
239
|
+
if (!Object.keys(s).length)
|
|
240
240
|
throw new Error("Error registry contained no curated string errors");
|
|
241
|
-
if (Object.keys(
|
|
241
|
+
if (Object.keys(s).length > Ht || Object.keys(n).length > kt)
|
|
242
242
|
throw new Error("Error registry exceeded expected entry counts");
|
|
243
|
-
return { stringErrors:
|
|
244
|
-
},
|
|
245
|
-
timeoutMs: t =
|
|
243
|
+
return { stringErrors: s, selectorErrors: n };
|
|
244
|
+
}, Jt = async ({
|
|
245
|
+
timeoutMs: t = Gt
|
|
246
246
|
} = {}) => {
|
|
247
247
|
const e = [];
|
|
248
|
-
for (const
|
|
249
|
-
const
|
|
248
|
+
for (const s of Yt) {
|
|
249
|
+
const n = new AbortController(), r = setTimeout(() => n.abort(), t);
|
|
250
250
|
try {
|
|
251
|
-
const a = await fetch(
|
|
251
|
+
const a = await fetch(s, {
|
|
252
252
|
headers: { accept: "application/json" },
|
|
253
|
-
signal:
|
|
253
|
+
signal: n.signal
|
|
254
254
|
});
|
|
255
255
|
if (!a.ok) throw new Error(`HTTP ${a.status}`);
|
|
256
256
|
const o = Number(a.headers.get("content-length"));
|
|
257
|
-
if (o >
|
|
257
|
+
if (o > O)
|
|
258
258
|
throw new Error(`Response too large: ${o} bytes`);
|
|
259
259
|
const i = await a.text();
|
|
260
|
-
if (i.length >
|
|
260
|
+
if (i.length > O)
|
|
261
261
|
throw new Error(`Response too large: ${i.length} chars`);
|
|
262
|
-
return
|
|
262
|
+
return V(Zt(JSON.parse(i)));
|
|
263
263
|
} catch (a) {
|
|
264
264
|
e.push(
|
|
265
|
-
`${
|
|
265
|
+
`${s}: ${a instanceof Error ? a.message : String(a)}`
|
|
266
266
|
);
|
|
267
267
|
} finally {
|
|
268
268
|
clearTimeout(r);
|
|
269
269
|
}
|
|
270
270
|
}
|
|
271
271
|
throw new Error(`All error registry sources failed: ${e.join("; ")}`);
|
|
272
|
-
},
|
|
273
|
-
|
|
274
|
-
})),
|
|
275
|
-
function
|
|
276
|
-
return
|
|
272
|
+
}, Ye = () => (T ?? (T = Jt().then(Qt).catch(() => {
|
|
273
|
+
T = null;
|
|
274
|
+
})), T), te = () => typeof window < "u";
|
|
275
|
+
function ee() {
|
|
276
|
+
return te() && typeof window.ethereum < "u";
|
|
277
277
|
}
|
|
278
|
-
async function
|
|
278
|
+
async function We(t) {
|
|
279
279
|
try {
|
|
280
|
-
if (
|
|
280
|
+
if (ee())
|
|
281
281
|
return window.ethereum.request({
|
|
282
282
|
method: "wallet_watchAsset",
|
|
283
283
|
params: {
|
|
@@ -290,46 +290,49 @@ async function Ue(t) {
|
|
|
290
290
|
}
|
|
291
291
|
return !1;
|
|
292
292
|
}
|
|
293
|
-
const
|
|
293
|
+
const p = (t, e) => t?.toLowerCase() === e?.toLowerCase(), Ge = (t) => p(t, nt), E = (t) => {
|
|
294
294
|
if (!t) throw new Error("Cannot prefix an empty hex value");
|
|
295
295
|
return t.startsWith("0x") ? t : `0x${t}`;
|
|
296
|
-
},
|
|
296
|
+
}, l = (t, e) => {
|
|
297
297
|
try {
|
|
298
298
|
return BigInt(t);
|
|
299
299
|
} catch {
|
|
300
300
|
throw new Error(`Cannot convert "${e}" value "${t}" to bigint`);
|
|
301
301
|
}
|
|
302
|
-
},
|
|
302
|
+
}, C = (t) => t ? Pt(E(t), { size: 32 }) : Lt, se = (t) => {
|
|
303
303
|
if (!t) throw new Error("Cannot decode an empty base64 string");
|
|
304
|
-
return
|
|
305
|
-
},
|
|
304
|
+
return Bt(Uint8Array.from(atob(t), (e) => e.charCodeAt(0)));
|
|
305
|
+
}, ne = (t, e) => rt[e]?.[t] ?? D, He = (t) => at[t], ke = (t) => t && `${t.substring(0, 6)}...${t.substring(
|
|
306
306
|
t.length - 4,
|
|
307
307
|
t.length
|
|
308
|
-
)}`,
|
|
308
|
+
)}`, Ve = ({
|
|
309
309
|
address: t,
|
|
310
310
|
chainId: e
|
|
311
311
|
}) => {
|
|
312
|
-
const
|
|
312
|
+
const s = ne(
|
|
313
313
|
"aaveLendingPoolV3",
|
|
314
314
|
e
|
|
315
315
|
);
|
|
316
|
-
return
|
|
317
|
-
},
|
|
316
|
+
return p(t, s);
|
|
317
|
+
}, ae = ({
|
|
318
318
|
sourceAddress: t,
|
|
319
319
|
amount: e
|
|
320
|
-
}) => `${t}_${e}`,
|
|
321
|
-
const
|
|
322
|
-
return { firstPart:
|
|
323
|
-
},
|
|
324
|
-
new u(t || "0").shiftedBy(
|
|
325
|
-
),
|
|
326
|
-
const e = new u(0.01),
|
|
327
|
-
return BigInt(
|
|
328
|
-
},
|
|
320
|
+
}) => `${t}_${e}`, Ke = (t, e) => {
|
|
321
|
+
const s = t.slice(0, e), n = t.slice(e);
|
|
322
|
+
return { firstPart: s, secondPart: n };
|
|
323
|
+
}, re = (t, e) => t / e * 100, qe = (t) => t < 1 ? 4 : t < 10 ? 3 : 2, je = (t, e = I) => new u(t.toString()).shiftedBy(e).toFixed(0), Xe = (t, e, s, n) => new u(e).dividedBy(s).multipliedBy(t).shiftedBy(-(n || I)).toNumber(), ze = (t) => BigInt(
|
|
324
|
+
new u(t || "0").shiftedBy(I).toFixed(0, u.ROUND_DOWN)
|
|
325
|
+
), X = (t) => {
|
|
326
|
+
const e = new u(0.01), s = new u(t), n = !s.isZero() && s.lt(e) ? e : s;
|
|
327
|
+
return BigInt(n.multipliedBy(100).toFixed(0));
|
|
328
|
+
}, Qe = ({
|
|
329
|
+
chainId: t,
|
|
330
|
+
slippage: e
|
|
331
|
+
}) => t === Y.id ? BigInt(0) : X(e), Ze = ({
|
|
329
332
|
vaultAddress: t,
|
|
330
333
|
swapData: e,
|
|
331
|
-
sendTokenAddress:
|
|
332
|
-
sendTokenAmount:
|
|
334
|
+
sendTokenAddress: s,
|
|
335
|
+
sendTokenAmount: n,
|
|
333
336
|
vaultDepositTokenAddress: r,
|
|
334
337
|
minVaultTokensReceivedAmount: a,
|
|
335
338
|
routerKey: o = "ONE_INCH",
|
|
@@ -337,26 +340,26 @@ const l = (t, e) => t?.toLowerCase() === e?.toLowerCase(), $e = (t) => l(t, et),
|
|
|
337
340
|
swapSlippage: c
|
|
338
341
|
}) => {
|
|
339
342
|
const d = new u(i).multipliedBy(1 - c / 100).toFixed(0), m = [R(o, { size: 32 }), e];
|
|
340
|
-
return [t, [[
|
|
341
|
-
},
|
|
343
|
+
return [t, [[s, n, m], [r, d]], a];
|
|
344
|
+
}, Je = ({
|
|
342
345
|
receiveAssetAddress: t,
|
|
343
346
|
assets: e,
|
|
344
|
-
swapData:
|
|
345
|
-
slippage:
|
|
347
|
+
swapData: s,
|
|
348
|
+
slippage: n
|
|
346
349
|
}) => {
|
|
347
350
|
const r = {
|
|
348
351
|
srcData: [],
|
|
349
352
|
destAmount: new u("0")
|
|
350
353
|
}, { srcData: a, destAmount: o } = e?.reduce((i, c) => {
|
|
351
|
-
const d =
|
|
354
|
+
const d = s?.[c.address];
|
|
352
355
|
if (!d)
|
|
353
356
|
return i;
|
|
354
357
|
const m = [
|
|
355
358
|
R(d.routerKey, { size: 32 }),
|
|
356
359
|
d.rawTransaction.data
|
|
357
|
-
],
|
|
360
|
+
], A = [c.address, c.rawBalance, m];
|
|
358
361
|
return {
|
|
359
|
-
srcData: [...i.srcData,
|
|
362
|
+
srcData: [...i.srcData, A],
|
|
360
363
|
destAmount: i.destAmount.plus(d.destinationAmount)
|
|
361
364
|
};
|
|
362
365
|
}, r) ?? r;
|
|
@@ -364,78 +367,78 @@ const l = (t, e) => t?.toLowerCase() === e?.toLowerCase(), $e = (t) => l(t, et),
|
|
|
364
367
|
a,
|
|
365
368
|
[
|
|
366
369
|
t,
|
|
367
|
-
o.times(1 -
|
|
370
|
+
o.times(1 - n / 100).toFixed(0, u.ROUND_DOWN)
|
|
368
371
|
]
|
|
369
372
|
];
|
|
370
|
-
},
|
|
373
|
+
}, oe = ({
|
|
371
374
|
assetAddress: t,
|
|
372
375
|
swapQuotes: e,
|
|
373
|
-
swapParams:
|
|
374
|
-
slippageToleranceForContractTransaction:
|
|
376
|
+
swapParams: s,
|
|
377
|
+
slippageToleranceForContractTransaction: n,
|
|
375
378
|
routerKey: r
|
|
376
379
|
}) => {
|
|
377
|
-
if (!
|
|
380
|
+
if (!s)
|
|
378
381
|
return {
|
|
379
382
|
supportedAsset: t,
|
|
380
383
|
withdrawData: "",
|
|
381
384
|
slippageTolerance: BigInt(0)
|
|
382
385
|
};
|
|
383
|
-
const { srcData: a, dstData: o } =
|
|
384
|
-
const
|
|
386
|
+
const { srcData: a, dstData: o } = s, i = a.map(({ asset: m, amount: A }) => {
|
|
387
|
+
const S = e?.[ae({
|
|
385
388
|
sourceAddress: m,
|
|
386
|
-
amount:
|
|
387
|
-
})]?.find((
|
|
389
|
+
amount: A.toString()
|
|
390
|
+
})]?.find((Z) => Z.routerKey === r);
|
|
388
391
|
return {
|
|
389
392
|
asset: m,
|
|
390
|
-
amount:
|
|
393
|
+
amount: A,
|
|
391
394
|
swapData: {
|
|
392
|
-
routerKey: R(
|
|
393
|
-
txData:
|
|
395
|
+
routerKey: R(S?.routerKey ?? "", { size: 32 }),
|
|
396
|
+
txData: S?.rawTransaction.data ?? "0x"
|
|
394
397
|
}
|
|
395
398
|
};
|
|
396
399
|
}), c = h(
|
|
397
|
-
|
|
400
|
+
ot,
|
|
398
401
|
[i]
|
|
399
|
-
), d = h(
|
|
402
|
+
), d = h(it, [
|
|
400
403
|
{
|
|
401
404
|
encodedSrcData: c,
|
|
402
405
|
dstData: {
|
|
403
406
|
dstAddress: o.asset,
|
|
404
407
|
dstAmount: o.amount
|
|
405
408
|
},
|
|
406
|
-
slippage:
|
|
409
|
+
slippage: n
|
|
407
410
|
}
|
|
408
411
|
]);
|
|
409
412
|
return {
|
|
410
413
|
supportedAsset: t,
|
|
411
414
|
withdrawData: d,
|
|
412
|
-
slippageTolerance:
|
|
415
|
+
slippageTolerance: n
|
|
413
416
|
};
|
|
414
|
-
},
|
|
417
|
+
}, ts = ({
|
|
415
418
|
chainId: t,
|
|
416
419
|
txHash: e,
|
|
417
|
-
error:
|
|
420
|
+
error: s
|
|
418
421
|
}) => {
|
|
419
|
-
if (t !==
|
|
422
|
+
if (t !== b.id || !e || !s)
|
|
420
423
|
return !1;
|
|
421
|
-
const
|
|
422
|
-
return /\bNo Result\b/i.test(
|
|
423
|
-
},
|
|
424
|
+
const n = s instanceof Error ? s.message : String(s);
|
|
425
|
+
return /\bNo Result\b/i.test(n);
|
|
426
|
+
}, es = ({
|
|
424
427
|
chainId: t,
|
|
425
428
|
action: e,
|
|
426
|
-
isRabbyWallet:
|
|
427
|
-
}) => e === "update_ondo_prices" && t ===
|
|
429
|
+
isRabbyWallet: s
|
|
430
|
+
}) => e === "update_ondo_prices" && t === b.id && s ? ct : t ? ut[t] ?? 0 : 0, ss = (t, e) => pt[e]?.nativeTokenSymbol === t, ns = ({
|
|
428
431
|
nativeTokenBalance: t,
|
|
429
432
|
tokenDecimals: e,
|
|
430
|
-
gasPrice:
|
|
433
|
+
gasPrice: s
|
|
431
434
|
}) => {
|
|
432
|
-
const
|
|
433
|
-
|
|
435
|
+
const n = new u(s).multipliedBy(dt).shiftedBy(-e), r = new u(t).minus(
|
|
436
|
+
n
|
|
434
437
|
);
|
|
435
438
|
return r.gt("0") ? r : new u("0");
|
|
436
|
-
},
|
|
439
|
+
}, as = (t) => lt.includes(t), rs = (t) => {
|
|
437
440
|
const e = Object.values(t).reduce(
|
|
438
|
-
(
|
|
441
|
+
(s, { type: n }) => (s[n] = s[n] + 1, s),
|
|
439
442
|
{ string: 0, number: 0 }
|
|
440
443
|
);
|
|
441
444
|
if (e.string > 10)
|
|
@@ -443,189 +446,198 @@ const l = (t, e) => t?.toLowerCase() === e?.toLowerCase(), $e = (t) => l(t, et),
|
|
|
443
446
|
if (e.number > 40)
|
|
444
447
|
throw new Error("logger params must contain up to 40 numeric values");
|
|
445
448
|
return !0;
|
|
446
|
-
},
|
|
447
|
-
...
|
|
448
|
-
...
|
|
449
|
-
}),
|
|
450
|
-
...Object.keys(
|
|
451
|
-
...Object.keys(
|
|
452
|
-
],
|
|
453
|
-
const
|
|
454
|
-
return [...e ??
|
|
455
|
-
},
|
|
456
|
-
const { selectorErrors: e } =
|
|
457
|
-
if (
|
|
458
|
-
return { title:
|
|
449
|
+
}, ie = (t, e = 150) => t.length > e ? t.substring(0, e) : t, z = () => ({
|
|
450
|
+
...j().stringErrors,
|
|
451
|
+
...mt
|
|
452
|
+
}), ce = () => [
|
|
453
|
+
...Object.keys(z()),
|
|
454
|
+
...Object.keys(W)
|
|
455
|
+
], ue = /^dh\d+$/i, de = (t, e) => ue.test(e) ? new RegExp(`\\b${e}\\b`, "i").test(t) : t.includes(e.toLowerCase()), M = (t, e) => {
|
|
456
|
+
const s = t.toLowerCase();
|
|
457
|
+
return [...e ?? ce()].sort((n, r) => r.length - n.length).find((n) => de(s, n));
|
|
458
|
+
}, x = (t) => z()[t] ?? W[t], pe = /\b0x[0-9a-f]{8}\b/i, le = (t) => t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), me = (t) => {
|
|
459
|
+
const { selectorErrors: e } = j(), s = t.match(pe)?.[0]?.toLowerCase(), n = s ? e[s] : void 0;
|
|
460
|
+
if (n)
|
|
461
|
+
return { title: n.title, hint: n.hint };
|
|
459
462
|
const r = Object.values(e).find(
|
|
460
463
|
(a) => new RegExp(
|
|
461
|
-
`\\b${
|
|
464
|
+
`\\b${le(a.signature.split("(")[0] ?? "")}\\b`
|
|
462
465
|
).test(t)
|
|
463
466
|
);
|
|
464
467
|
return r ? { title: r.title, hint: r.hint } : void 0;
|
|
465
|
-
},
|
|
468
|
+
}, os = ({
|
|
466
469
|
errorMessage: t,
|
|
467
470
|
abiErrors: e
|
|
468
471
|
}) => {
|
|
469
472
|
if (!t || t.includes("User rejected"))
|
|
470
473
|
return null;
|
|
471
|
-
const
|
|
472
|
-
if (
|
|
473
|
-
const o =
|
|
474
|
+
const s = e.find((o) => t.includes(o));
|
|
475
|
+
if (s) {
|
|
476
|
+
const o = M(s);
|
|
474
477
|
if (o)
|
|
475
|
-
return
|
|
478
|
+
return x(o);
|
|
476
479
|
}
|
|
477
|
-
const
|
|
478
|
-
if (
|
|
479
|
-
return
|
|
480
|
-
const r =
|
|
480
|
+
const n = M(t);
|
|
481
|
+
if (n)
|
|
482
|
+
return x(n);
|
|
483
|
+
const r = me(t);
|
|
481
484
|
if (r)
|
|
482
485
|
return r;
|
|
483
|
-
const [a] = t.split(
|
|
486
|
+
const [a] = t.split(s ? "." : "Contract").map((o) => o.trim());
|
|
484
487
|
return {
|
|
485
488
|
title: "Transaction failed",
|
|
486
|
-
hint: `${
|
|
489
|
+
hint: `${ie(a ?? "")} ${s ? `: ${s}` : ""}`
|
|
487
490
|
};
|
|
488
|
-
},
|
|
491
|
+
}, is = (t) => typeof t == "number" && Number.isFinite(t), cs = (t) => typeof t == "bigint" && t !== BigInt(0), ye = (t, e = G) => new u(t).shiftedBy(-e).toNumber(), Ae = (t) => !isNaN(parseFloat(t)) && !isNaN(t), ge = ({
|
|
489
492
|
value: t,
|
|
490
493
|
minimumFractionDigits: e = 2,
|
|
491
|
-
maximumFractionDigits:
|
|
492
|
-
compact:
|
|
494
|
+
maximumFractionDigits: s = 2,
|
|
495
|
+
compact: n = !1,
|
|
493
496
|
normalize: r = !1
|
|
494
497
|
}) => new Intl.NumberFormat("en-US", {
|
|
495
498
|
style: "currency",
|
|
496
499
|
currency: "USD",
|
|
497
|
-
notation:
|
|
500
|
+
notation: n ? "compact" : void 0,
|
|
498
501
|
minimumFractionDigits: e,
|
|
499
|
-
maximumFractionDigits:
|
|
500
|
-
}).format(r ?
|
|
502
|
+
maximumFractionDigits: s
|
|
503
|
+
}).format(r ? ye(t) : Number(t)), L = (t) => Ae(t) ? new u(t).toFixed() : "", B = ["₀", "₁", "₂", "₃", "₄", "₅", "₆", "₇", "₈", "₉"], Ee = ({
|
|
501
504
|
value: t,
|
|
502
505
|
decimals: e = 4
|
|
503
506
|
}) => {
|
|
504
|
-
const
|
|
505
|
-
if (
|
|
506
|
-
return
|
|
507
|
-
const r = (/e/i.test(t.toString()) ? parseFloat(t.toString()).toFixed(
|
|
507
|
+
const s = new u(t);
|
|
508
|
+
if (s.isGreaterThan(1) || s.isZero())
|
|
509
|
+
return L(s.toFixed(e));
|
|
510
|
+
const r = (/e/i.test(t.toString()) ? parseFloat(t.toString()).toFixed(G) : t.toString()).match(/^0\.(0+)(\d+)$/);
|
|
508
511
|
if (r) {
|
|
509
512
|
const [, a, o] = r;
|
|
510
|
-
if (a.length >= e && a.length <
|
|
511
|
-
return `0.0${
|
|
513
|
+
if (a.length >= e && a.length < B.length)
|
|
514
|
+
return `0.0${B[a.length]}${o.slice(0, 3)}`;
|
|
512
515
|
}
|
|
513
|
-
return
|
|
514
|
-
},
|
|
515
|
-
const
|
|
516
|
-
return
|
|
517
|
-
},
|
|
516
|
+
return L(s.toFixed(e));
|
|
517
|
+
}, he = (t, e = 0) => `${t.toLocaleString("en-US", { maximumFractionDigits: e })}%`, us = (t) => t.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","), ds = (t, e, s = 0) => {
|
|
518
|
+
const n = re(+t, e);
|
|
519
|
+
return he(n, s);
|
|
520
|
+
}, ps = ({
|
|
518
521
|
currency: t,
|
|
519
522
|
value: e
|
|
520
|
-
}) => t === "USD" ?
|
|
523
|
+
}) => t === "USD" ? ge({ value: e }) : `${yt[t]} ${Ee({
|
|
521
524
|
value: e,
|
|
522
|
-
decimals:
|
|
523
|
-
})}`,
|
|
525
|
+
decimals: At[t]
|
|
526
|
+
})}`, Se = (t, e) => new u(
|
|
524
527
|
new u(t).toFixed(e, u.ROUND_DOWN)
|
|
525
|
-
).toString(), fe = (t, e = 3,
|
|
528
|
+
).toString(), fe = (t, e = 3, s = 2) => {
|
|
526
529
|
if (t.length <= 5)
|
|
527
530
|
return t;
|
|
528
|
-
const
|
|
529
|
-
return t.length <= e +
|
|
530
|
-
},
|
|
531
|
+
const n = "...";
|
|
532
|
+
return t.length <= e + s + n.length ? t : `${t.slice(0, e)}${n}${t.slice(-s)}`;
|
|
533
|
+
}, ls = ({
|
|
531
534
|
balance: t,
|
|
532
535
|
symbol: e,
|
|
533
|
-
precision:
|
|
534
|
-
truncateSymbol:
|
|
535
|
-
}) => `${
|
|
536
|
+
precision: s,
|
|
537
|
+
truncateSymbol: n
|
|
538
|
+
}) => `${Se(t, s)} ${n ? fe(e) : e}`, ms = (t) => {
|
|
536
539
|
if (!t)
|
|
537
540
|
return;
|
|
538
541
|
const e = t.match(/0x[a-fA-F0-9]{64}/);
|
|
539
542
|
if (!e)
|
|
540
543
|
return;
|
|
541
|
-
const
|
|
542
|
-
return `${
|
|
543
|
-
},
|
|
544
|
-
(e) =>
|
|
545
|
-
),
|
|
544
|
+
const s = e[0];
|
|
545
|
+
return `${s.slice(0, 4)}...${s.slice(-3)}`;
|
|
546
|
+
}, ys = (t) => p(St, t) || p(ft, t), As = (t) => _t.some(
|
|
547
|
+
(e) => p(e, t)
|
|
548
|
+
), gs = (t) => gt[t.toLowerCase()] ?? {
|
|
546
549
|
symbol: "",
|
|
547
550
|
decimals: 18,
|
|
548
|
-
address:
|
|
549
|
-
},
|
|
551
|
+
address: D
|
|
552
|
+
}, Es = (t) => p(t, Tt) ? Et : ht, Te = (t) => `eth_${t}`, hs = ({
|
|
550
553
|
action: t,
|
|
551
554
|
log: e,
|
|
552
|
-
symbol:
|
|
553
|
-
vaultAddress:
|
|
555
|
+
symbol: s,
|
|
556
|
+
vaultAddress: n,
|
|
554
557
|
chainId: r
|
|
555
558
|
}) => {
|
|
556
559
|
const a = {
|
|
557
|
-
[
|
|
558
|
-
[
|
|
559
|
-
[
|
|
560
|
+
[f.SYMBOL.NAME]: s,
|
|
561
|
+
[f.CHAIN_ID.NAME]: r,
|
|
562
|
+
[f.ADDRESS.NAME]: Te(n)
|
|
560
563
|
};
|
|
561
|
-
|
|
564
|
+
wt[t].forEach((o) => {
|
|
562
565
|
e?.(o, a);
|
|
563
566
|
});
|
|
564
|
-
},
|
|
567
|
+
}, Ss = (t) => It.some((e) => p(e, t)), fs = (t) => bt[t.toLowerCase()] ?? {
|
|
565
568
|
symbol: "",
|
|
566
569
|
decimals: 18,
|
|
567
|
-
address:
|
|
568
|
-
},
|
|
569
|
-
|
|
570
|
-
const
|
|
571
|
-
|
|
572
|
-
|
|
570
|
+
address: D
|
|
571
|
+
}, Ts = (t) => Dt[t.toLowerCase()], _e = "0x3333333333333333333333333333333333333333";
|
|
572
|
+
st.id + "", Mt.address, et.id + "", Ct.address, tt.id + "", Ot.address, J.id + "", Nt.address, b.id + "", Rt.address, Y.id + "", H.address;
|
|
573
|
+
const we = "0x2222222222222222222222222222222222222222", P = BigInt("0x2000000000000000000000000000000000000000"), be = 10000n, De = (t) => p(t, _e), Ie = (t) => {
|
|
574
|
+
if (p(t, we))
|
|
575
|
+
return !0;
|
|
576
|
+
try {
|
|
577
|
+
const e = BigInt(t);
|
|
578
|
+
return e >= P && e < P + be;
|
|
579
|
+
} catch {
|
|
580
|
+
return !1;
|
|
581
|
+
}
|
|
582
|
+
}, _s = (t) => De(t) || Ie(t), ws = () => H, bs = /* @__PURE__ */ new Map(), Q = (t, e) => !e || e.size === 0 ? t : t.map((s) => {
|
|
583
|
+
const n = e.get(
|
|
584
|
+
s.supportedAsset.toLowerCase()
|
|
573
585
|
);
|
|
574
|
-
return
|
|
575
|
-
...
|
|
576
|
-
withdrawData:
|
|
577
|
-
slippageTolerance:
|
|
578
|
-
} :
|
|
579
|
-
}),
|
|
586
|
+
return n ? {
|
|
587
|
+
...s,
|
|
588
|
+
withdrawData: n.withdrawData,
|
|
589
|
+
slippageTolerance: n.slippageTolerance
|
|
590
|
+
} : s;
|
|
591
|
+
}), Re = (t) => {
|
|
580
592
|
const e = t.find(
|
|
581
|
-
({ swapQuotes:
|
|
593
|
+
({ swapQuotes: s }) => s
|
|
582
594
|
);
|
|
583
595
|
return e?.swapQuotes ? Object.values(e.swapQuotes)[0]?.map(
|
|
584
|
-
({ routerKey:
|
|
596
|
+
({ routerKey: s }) => s
|
|
585
597
|
) ?? [] : [];
|
|
586
|
-
},
|
|
587
|
-
supportedAsset:
|
|
598
|
+
}, Ne = (t, e, s) => t.map(({ asset: n, swapParams: r, swapQuotes: a }) => !r || !a ? {
|
|
599
|
+
supportedAsset: n,
|
|
588
600
|
withdrawData: "",
|
|
589
|
-
slippageTolerance:
|
|
590
|
-
} :
|
|
591
|
-
assetAddress:
|
|
601
|
+
slippageTolerance: s
|
|
602
|
+
} : oe({
|
|
603
|
+
assetAddress: n,
|
|
592
604
|
swapQuotes: a,
|
|
593
605
|
swapParams: r,
|
|
594
|
-
slippageToleranceForContractTransaction:
|
|
606
|
+
slippageToleranceForContractTransaction: s,
|
|
595
607
|
routerKey: e
|
|
596
|
-
})),
|
|
608
|
+
})), Oe = async (t, e, s, n, r, a) => {
|
|
597
609
|
for (const o of t) {
|
|
598
|
-
const i =
|
|
599
|
-
|
|
610
|
+
const i = Q(
|
|
611
|
+
Ne(
|
|
600
612
|
e,
|
|
601
613
|
o,
|
|
602
|
-
|
|
614
|
+
s
|
|
603
615
|
),
|
|
604
616
|
a
|
|
605
|
-
), { error: c } = await
|
|
617
|
+
), { error: c } = await n(...r, i);
|
|
606
618
|
if (!c)
|
|
607
619
|
return i;
|
|
608
620
|
}
|
|
609
621
|
return null;
|
|
610
|
-
},
|
|
611
|
-
const
|
|
622
|
+
}, Ds = (t, e, s) => {
|
|
623
|
+
const n = (t ?? []).map((r) => ({
|
|
612
624
|
supportedAsset: r,
|
|
613
625
|
withdrawData: "",
|
|
614
626
|
slippageTolerance: e
|
|
615
627
|
}));
|
|
616
|
-
return
|
|
617
|
-
},
|
|
628
|
+
return Q(n, s);
|
|
629
|
+
}, Is = async (t, e, s, n, r) => {
|
|
618
630
|
for (const a of t) {
|
|
619
|
-
const o =
|
|
631
|
+
const o = X(a);
|
|
620
632
|
try {
|
|
621
|
-
const i = await e(a), c =
|
|
633
|
+
const i = await e(a), c = Re(
|
|
622
634
|
i
|
|
623
|
-
), d = await
|
|
635
|
+
), d = await Oe(
|
|
624
636
|
c,
|
|
625
637
|
i,
|
|
626
638
|
o,
|
|
627
|
-
n,
|
|
628
639
|
s,
|
|
640
|
+
n,
|
|
629
641
|
r
|
|
630
642
|
);
|
|
631
643
|
if (d)
|
|
@@ -640,22 +652,22 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
640
652
|
}
|
|
641
653
|
}
|
|
642
654
|
return null;
|
|
643
|
-
},
|
|
644
|
-
fetchAaveSwapParams:
|
|
645
|
-
fetchAaveSwapQuotes:
|
|
655
|
+
}, Rs = async (t, e, {
|
|
656
|
+
fetchAaveSwapParams: s,
|
|
657
|
+
fetchAaveSwapQuotes: n,
|
|
646
658
|
withdrawAmountD18: r,
|
|
647
659
|
slippage: a
|
|
648
660
|
}) => Promise.all(
|
|
649
661
|
(t ?? []).map(async (o) => {
|
|
650
|
-
if (!
|
|
662
|
+
if (!p(o, e))
|
|
651
663
|
return { asset: o };
|
|
652
664
|
try {
|
|
653
|
-
const c = await
|
|
665
|
+
const c = await s({
|
|
654
666
|
withdrawAmountD18: r,
|
|
655
667
|
slippage: a
|
|
656
668
|
});
|
|
657
669
|
if (c?.srcData.length) {
|
|
658
|
-
const d = await
|
|
670
|
+
const d = await n({
|
|
659
671
|
swapParams: c,
|
|
660
672
|
slippage: a
|
|
661
673
|
});
|
|
@@ -666,76 +678,76 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
666
678
|
return console.error(c), { asset: o };
|
|
667
679
|
}
|
|
668
680
|
})
|
|
669
|
-
),
|
|
681
|
+
), U = (t) => Math.round(t * 100) / 100, Ns = ({
|
|
670
682
|
maxSlippage: t,
|
|
671
|
-
candidates: e =
|
|
683
|
+
candidates: e = xt
|
|
672
684
|
}) => {
|
|
673
685
|
if (!Number.isFinite(t) || t <= 0)
|
|
674
686
|
return [];
|
|
675
|
-
const
|
|
676
|
-
return r.add(
|
|
677
|
-
},
|
|
687
|
+
const s = U(Math.min(t, 100)), n = e.filter((a) => a > 0 && a <= s).map(U), r = new Set(n);
|
|
688
|
+
return r.add(s), r.add(t), Array.from(r).sort((a, o) => a - o);
|
|
689
|
+
}, $ = 1000000000000000000n, Ce = 1000000n, v = 10000n, F = 100n, Os = (t) => ({
|
|
678
690
|
quotes: t.quotes.map(
|
|
679
691
|
(e) => ({
|
|
680
|
-
chainId:
|
|
681
|
-
attestationId:
|
|
692
|
+
chainId: l(e.chainId, "chainId"),
|
|
693
|
+
attestationId: l(e.attestationId, "attestationId"),
|
|
682
694
|
userId: E(e.userId),
|
|
683
695
|
asset: e.asset,
|
|
684
|
-
price:
|
|
685
|
-
quantity:
|
|
686
|
-
expiration:
|
|
696
|
+
price: l(e.price, "price"),
|
|
697
|
+
quantity: l(e.quantity, "quantity"),
|
|
698
|
+
expiration: l(e.expiration, "expiration"),
|
|
687
699
|
side: Number(e.side),
|
|
688
700
|
additionalData: E(e.additionalData)
|
|
689
701
|
})
|
|
690
702
|
),
|
|
691
703
|
signatures: t.signatures.map(E)
|
|
692
|
-
}),
|
|
693
|
-
const
|
|
704
|
+
}), Me = (t, e, s) => {
|
|
705
|
+
const n = BigInt(Math.max(0, Math.round(s * 100))), r = n > F ? F : n, a = v - r, i = t * e / $ * a * Ce, c = v * $;
|
|
694
706
|
return (i + c - 1n) / c;
|
|
695
|
-
},
|
|
707
|
+
}, xe = (t, e) => ({
|
|
696
708
|
chainId: e,
|
|
697
|
-
attestationId:
|
|
698
|
-
userId:
|
|
709
|
+
attestationId: l(t.attestationId, "attestationId"),
|
|
710
|
+
userId: C(t.userId),
|
|
699
711
|
asset: t.assetAddress,
|
|
700
|
-
price:
|
|
701
|
-
quantity:
|
|
702
|
-
expiration:
|
|
712
|
+
price: l(t.price, "price"),
|
|
713
|
+
quantity: l(t.tokenAmount, "tokenAmount"),
|
|
714
|
+
expiration: l(t.expiration, "expiration"),
|
|
703
715
|
side: Number(t.side),
|
|
704
|
-
additionalData:
|
|
705
|
-
}),
|
|
716
|
+
additionalData: C(t.additionalData)
|
|
717
|
+
}), Cs = ({
|
|
706
718
|
attestation: t,
|
|
707
719
|
chainId: e,
|
|
708
|
-
slippagePercent:
|
|
720
|
+
slippagePercent: s
|
|
709
721
|
}) => {
|
|
710
|
-
const
|
|
711
|
-
return h(
|
|
722
|
+
const n = xe(t, e);
|
|
723
|
+
return h(Ut, [
|
|
712
724
|
{
|
|
713
|
-
attestationSignature:
|
|
714
|
-
quote:
|
|
715
|
-
amountOutMinimum:
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
725
|
+
attestationSignature: se(t.signature),
|
|
726
|
+
quote: n,
|
|
727
|
+
amountOutMinimum: Me(
|
|
728
|
+
n.quantity,
|
|
729
|
+
n.price,
|
|
730
|
+
s
|
|
719
731
|
)
|
|
720
732
|
}
|
|
721
733
|
]);
|
|
722
|
-
},
|
|
723
|
-
(
|
|
734
|
+
}, Ms = (t) => [...t.reduce(
|
|
735
|
+
(s, n) => s.has(n.accountId) ? s : s.set(n.accountId, n),
|
|
724
736
|
/* @__PURE__ */ new Map()
|
|
725
|
-
).values()].map(({ accountId:
|
|
726
|
-
accountId:
|
|
727
|
-
marketId:
|
|
737
|
+
).values()].map(({ accountId: s, marketId: n }) => ({
|
|
738
|
+
accountId: s,
|
|
739
|
+
marketId: n,
|
|
728
740
|
collaterals: t.filter(
|
|
729
|
-
(r) => r.accountId ===
|
|
741
|
+
(r) => r.accountId === s && !r.isDebt
|
|
730
742
|
),
|
|
731
743
|
debt: t.find(
|
|
732
|
-
(r) => r.accountId ===
|
|
744
|
+
(r) => r.accountId === s && r.isDebt
|
|
733
745
|
)
|
|
734
|
-
})),
|
|
746
|
+
})), xs = ({
|
|
735
747
|
collateral: t,
|
|
736
748
|
dytmOffice: e,
|
|
737
|
-
processor:
|
|
738
|
-
gmToken:
|
|
749
|
+
processor: s,
|
|
750
|
+
gmToken: n,
|
|
739
751
|
ondoGMSwap: r,
|
|
740
752
|
usdc: a,
|
|
741
753
|
gmAmount: o,
|
|
@@ -746,14 +758,14 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
746
758
|
{
|
|
747
759
|
// 1 · pull GM collateral out of the split account -> processor
|
|
748
760
|
to: e,
|
|
749
|
-
data:
|
|
750
|
-
abi:
|
|
761
|
+
data: y({
|
|
762
|
+
abi: N,
|
|
751
763
|
functionName: "withdraw",
|
|
752
764
|
args: [
|
|
753
765
|
{
|
|
754
766
|
account: t.accountId,
|
|
755
767
|
tokenId: t.tokenId,
|
|
756
|
-
receiver:
|
|
768
|
+
receiver: s,
|
|
757
769
|
assets: o,
|
|
758
770
|
shares: 0n,
|
|
759
771
|
extraData: "0x"
|
|
@@ -763,9 +775,9 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
763
775
|
},
|
|
764
776
|
{
|
|
765
777
|
// 2 · approve the GM token to Ondo's swap contract
|
|
766
|
-
to:
|
|
767
|
-
data:
|
|
768
|
-
abi:
|
|
778
|
+
to: n,
|
|
779
|
+
data: y({
|
|
780
|
+
abi: k,
|
|
769
781
|
functionName: "approve",
|
|
770
782
|
args: [r, o]
|
|
771
783
|
})
|
|
@@ -773,32 +785,52 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
773
785
|
{
|
|
774
786
|
// 3 · redeem GM -> USDC with the signed attestation
|
|
775
787
|
to: r,
|
|
776
|
-
data:
|
|
777
|
-
abi:
|
|
788
|
+
data: y({
|
|
789
|
+
abi: vt,
|
|
778
790
|
functionName: "swapExactInWithAttestation",
|
|
779
|
-
args: [
|
|
791
|
+
args: [n, o, a, i, c, d]
|
|
780
792
|
})
|
|
781
793
|
}
|
|
782
|
-
],
|
|
794
|
+
], Ls = ({
|
|
795
|
+
collateral: t,
|
|
796
|
+
dytmOffice: e,
|
|
797
|
+
processor: s
|
|
798
|
+
}) => ({
|
|
799
|
+
to: e,
|
|
800
|
+
data: y({
|
|
801
|
+
abi: N,
|
|
802
|
+
functionName: "withdraw",
|
|
803
|
+
args: [
|
|
804
|
+
{
|
|
805
|
+
account: t.accountId,
|
|
806
|
+
tokenId: t.tokenId,
|
|
807
|
+
receiver: s,
|
|
808
|
+
assets: 0n,
|
|
809
|
+
shares: _,
|
|
810
|
+
extraData: "0x"
|
|
811
|
+
}
|
|
812
|
+
]
|
|
813
|
+
})
|
|
814
|
+
}), Bs = ({
|
|
783
815
|
accountId: t,
|
|
784
816
|
debtKey: e,
|
|
785
|
-
dytmOffice:
|
|
786
|
-
usdc:
|
|
817
|
+
dytmOffice: s,
|
|
818
|
+
usdc: n
|
|
787
819
|
}) => [
|
|
788
820
|
{
|
|
789
821
|
// approve USDC to the DYTM Office for the repay
|
|
790
|
-
to:
|
|
791
|
-
data:
|
|
792
|
-
abi:
|
|
822
|
+
to: n,
|
|
823
|
+
data: y({
|
|
824
|
+
abi: k,
|
|
793
825
|
functionName: "approve",
|
|
794
|
-
args: [
|
|
826
|
+
args: [s, _]
|
|
795
827
|
})
|
|
796
828
|
},
|
|
797
829
|
{
|
|
798
830
|
// repay the slice's whole USDC debt
|
|
799
|
-
to:
|
|
800
|
-
data:
|
|
801
|
-
abi:
|
|
831
|
+
to: s,
|
|
832
|
+
data: y({
|
|
833
|
+
abi: N,
|
|
802
834
|
functionName: "repay",
|
|
803
835
|
args: [
|
|
804
836
|
{
|
|
@@ -806,7 +838,7 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
806
838
|
key: e,
|
|
807
839
|
withCollateralType: 0,
|
|
808
840
|
// DytmParamStructs.TokenType.NONE
|
|
809
|
-
assets:
|
|
841
|
+
assets: _,
|
|
810
842
|
// repay all
|
|
811
843
|
shares: 0n,
|
|
812
844
|
extraData: "0x"
|
|
@@ -814,94 +846,98 @@ const En = (t) => l(t, _e), hn = () => Y, fn = /* @__PURE__ */ new Map(), j = (t
|
|
|
814
846
|
]
|
|
815
847
|
})
|
|
816
848
|
}
|
|
817
|
-
],
|
|
849
|
+
], Ps = ({
|
|
818
850
|
actions: t,
|
|
819
851
|
outputAsset: e,
|
|
820
|
-
minOutputAmount:
|
|
821
|
-
}) => h(
|
|
822
|
-
{ actions: t, outputAsset: e, minOutputAmount:
|
|
852
|
+
minOutputAmount: s
|
|
853
|
+
}) => h(Ft, [
|
|
854
|
+
{ actions: t, outputAsset: e, minOutputAmount: s }
|
|
823
855
|
]);
|
|
824
856
|
export {
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
C,
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
857
|
+
as as $,
|
|
858
|
+
He as A,
|
|
859
|
+
ne as B,
|
|
860
|
+
j as C,
|
|
861
|
+
qe as D,
|
|
862
|
+
bs as E,
|
|
863
|
+
M as F,
|
|
864
|
+
gs as G,
|
|
865
|
+
Es as H,
|
|
866
|
+
fs as I,
|
|
867
|
+
Ts as J,
|
|
868
|
+
ws as K,
|
|
869
|
+
ns as L,
|
|
870
|
+
re as M,
|
|
871
|
+
Xe as N,
|
|
872
|
+
es as O,
|
|
873
|
+
X as P,
|
|
874
|
+
ms as Q,
|
|
875
|
+
Ms as R,
|
|
876
|
+
Ve as S,
|
|
877
|
+
w as T,
|
|
878
|
+
As as U,
|
|
879
|
+
ys as V,
|
|
880
|
+
Ss as W,
|
|
881
|
+
_s as X,
|
|
882
|
+
De as Y,
|
|
851
883
|
Ie as Z,
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
|
|
863
|
-
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
898
|
-
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
884
|
+
ss as _,
|
|
885
|
+
Qt as a,
|
|
886
|
+
hs as a0,
|
|
887
|
+
xe as a1,
|
|
888
|
+
Os as a2,
|
|
889
|
+
Q as a3,
|
|
890
|
+
ze as a4,
|
|
891
|
+
os as a5,
|
|
892
|
+
je as a6,
|
|
893
|
+
ke as a7,
|
|
894
|
+
ts as a8,
|
|
895
|
+
Ke as a9,
|
|
896
|
+
l as aa,
|
|
897
|
+
C as ab,
|
|
898
|
+
Te as ac,
|
|
899
|
+
fe as ad,
|
|
900
|
+
Oe as ae,
|
|
901
|
+
Is as af,
|
|
902
|
+
rs as ag,
|
|
903
|
+
Ge as ah,
|
|
904
|
+
is as ai,
|
|
905
|
+
p as aj,
|
|
906
|
+
ge as ak,
|
|
907
|
+
cs as al,
|
|
908
|
+
ye as am,
|
|
909
|
+
Fe as an,
|
|
910
|
+
ve as ao,
|
|
911
|
+
_e as ap,
|
|
912
|
+
Ee as aq,
|
|
913
|
+
We as ar,
|
|
914
|
+
he as as,
|
|
915
|
+
Ae as at,
|
|
916
|
+
us as au,
|
|
917
|
+
L as av,
|
|
918
|
+
se as b,
|
|
919
|
+
oe as c,
|
|
920
|
+
Ne as d,
|
|
921
|
+
xs as e,
|
|
922
|
+
Ls as f,
|
|
923
|
+
Bs as g,
|
|
924
|
+
ae as h,
|
|
925
|
+
Je as i,
|
|
926
|
+
Ze as j,
|
|
927
|
+
$e as k,
|
|
928
|
+
Me as l,
|
|
929
|
+
Ds as m,
|
|
930
|
+
Cs as n,
|
|
931
|
+
Ps as o,
|
|
932
|
+
Rs as p,
|
|
933
|
+
Ye as q,
|
|
934
|
+
E as r,
|
|
935
|
+
Re as s,
|
|
936
|
+
Jt as t,
|
|
937
|
+
Se as u,
|
|
938
|
+
ps as v,
|
|
939
|
+
ds as w,
|
|
940
|
+
ls as x,
|
|
941
|
+
Ns as y,
|
|
942
|
+
Qe as z
|
|
907
943
|
};
|