@rhinestone/deposit-modal 0.6.1 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{DepositModalReown-ICBGUVAA.cjs → DepositModalReown-J5YFZKFS.cjs} +9 -9
- package/dist/{DepositModalReown-IVRDXQAA.mjs → DepositModalReown-RZ6VSMKP.mjs} +6 -6
- package/dist/{WithdrawModalReown-O7PR343Z.mjs → WithdrawModalReown-4YUV2WWV.mjs} +5 -5
- package/dist/{WithdrawModalReown-6XWURPFZ.cjs → WithdrawModalReown-B6BGY52S.cjs} +8 -8
- package/dist/caip-C_ZYFIGa.d.cts +77 -0
- package/dist/caip-C_ZYFIGa.d.ts +77 -0
- package/dist/{chunk-NRNJAQUA.cjs → chunk-4IOQIWDY.cjs} +4 -4
- package/dist/{chunk-TCLBFO3S.mjs → chunk-5S5BQ2GM.mjs} +304 -115
- package/dist/{chunk-N73D3WN4.mjs → chunk-7JJ4EFDY.mjs} +13 -17
- package/dist/{chunk-VPWWFWZT.cjs → chunk-IRI34U6N.cjs} +331 -117
- package/dist/{chunk-SITLCMTI.cjs → chunk-JRFPKFL6.cjs} +102 -106
- package/dist/{chunk-7Q26RR6J.mjs → chunk-LXTAAHPC.mjs} +6 -4
- package/dist/{chunk-ABVRVW3P.cjs → chunk-PUMTR35E.cjs} +85 -31
- package/dist/{chunk-GBOCV2LQ.mjs → chunk-RXWJ267K.mjs} +366 -152
- package/dist/{chunk-WJX3TJFK.mjs → chunk-SX52FXKH.mjs} +84 -30
- package/dist/{chunk-F7P4MV72.mjs → chunk-TYB6AA6D.mjs} +1 -1
- package/dist/{chunk-VVKJRGX3.cjs → chunk-VURI4G2Z.cjs} +10 -8
- package/dist/{chunk-UEKPBRBY.cjs → chunk-WL7AXYQ4.cjs} +3 -3
- package/dist/{chunk-IZPUHIIN.cjs → chunk-XLXJW44N.cjs} +743 -554
- package/dist/{chunk-FJWLC4AM.mjs → chunk-YLIPI3NU.mjs} +1 -1
- package/dist/constants.cjs +4 -2
- package/dist/constants.d.cts +1 -1
- package/dist/constants.d.ts +1 -1
- package/dist/constants.mjs +5 -3
- package/dist/deposit.cjs +6 -6
- package/dist/deposit.d.cts +2 -2
- package/dist/deposit.d.ts +2 -2
- package/dist/deposit.mjs +5 -5
- package/dist/index.cjs +11 -7
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +12 -8
- package/dist/polymarket.cjs +6 -6
- package/dist/polymarket.mjs +3 -3
- package/dist/styles.css +86 -12
- package/dist/{types-6ROxwyfG.d.cts → types--LQWg_4W.d.cts} +1 -1
- package/dist/{types-6ROxwyfG.d.ts → types--LQWg_4W.d.ts} +1 -1
- package/dist/withdraw.cjs +5 -5
- package/dist/withdraw.d.cts +2 -2
- package/dist/withdraw.d.ts +2 -2
- package/dist/withdraw.mjs +4 -4
- package/package.json +1 -1
- package/dist/caip-CsslyHGL.d.cts +0 -62
- package/dist/caip-CsslyHGL.d.ts +0 -62
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _chunk4IOQIWDYcjs = require('./chunk-4IOQIWDY.cjs');
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
|
|
@@ -68,11 +68,11 @@ var _chunkNRNJAQUAcjs = require('./chunk-NRNJAQUA.cjs');
|
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
|
|
71
|
-
var _chunkVPWWFWZTcjs = require('./chunk-VPWWFWZT.cjs');
|
|
72
71
|
|
|
72
|
+
var _chunkIRI34U6Ncjs = require('./chunk-IRI34U6N.cjs');
|
|
73
73
|
|
|
74
|
-
var _chunkUEKPBRBYcjs = require('./chunk-UEKPBRBY.cjs');
|
|
75
74
|
|
|
75
|
+
var _chunkWL7AXYQ4cjs = require('./chunk-WL7AXYQ4.cjs');
|
|
76
76
|
|
|
77
77
|
|
|
78
78
|
|
|
@@ -101,7 +101,10 @@ var _chunkUEKPBRBYcjs = require('./chunk-UEKPBRBY.cjs');
|
|
|
101
101
|
|
|
102
102
|
|
|
103
103
|
|
|
104
|
-
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
var _chunkPUMTR35Ecjs = require('./chunk-PUMTR35E.cjs');
|
|
105
108
|
|
|
106
109
|
// src/DepositModal.tsx
|
|
107
110
|
|
|
@@ -146,12 +149,12 @@ function AssetSelectStep({
|
|
|
146
149
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
147
150
|
const defaultAssetId = _react.useMemo.call(void 0, () => {
|
|
148
151
|
if (!defaultSourceChain || !defaultSourceToken) return null;
|
|
149
|
-
return
|
|
152
|
+
return _chunkIRI34U6Ncjs.getAssetId.call(void 0, {
|
|
150
153
|
chainId: defaultSourceChain,
|
|
151
154
|
token: defaultSourceToken
|
|
152
155
|
});
|
|
153
156
|
}, [defaultSourceChain, defaultSourceToken]);
|
|
154
|
-
const onTotalBalanceComputedRef =
|
|
157
|
+
const onTotalBalanceComputedRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onTotalBalanceComputed);
|
|
155
158
|
_react.useEffect.call(void 0, () => {
|
|
156
159
|
let active = true;
|
|
157
160
|
function emitAssetsUpdate(currentAssets) {
|
|
@@ -171,11 +174,11 @@ function AssetSelectStep({
|
|
|
171
174
|
try {
|
|
172
175
|
const portfolio = await service.fetchPortfolio(address);
|
|
173
176
|
if (!active) return;
|
|
174
|
-
const portfolioAssets =
|
|
177
|
+
const portfolioAssets = _chunkIRI34U6Ncjs.portfolioToAssets.call(void 0, portfolio.tokens);
|
|
175
178
|
setAssets(portfolioAssets);
|
|
176
179
|
emitAssetsUpdate(portfolioAssets);
|
|
177
180
|
const hasNative = portfolioAssets.some(
|
|
178
|
-
(asset) => asset.token.toLowerCase() ===
|
|
181
|
+
(asset) => asset.token.toLowerCase() === _chunkPUMTR35Ecjs.NATIVE_TOKEN_ADDRESS
|
|
179
182
|
);
|
|
180
183
|
if (!hasNative) {
|
|
181
184
|
const nativeAssets = await fetchNativeAssets(
|
|
@@ -204,12 +207,6 @@ function AssetSelectStep({
|
|
|
204
207
|
active = false;
|
|
205
208
|
};
|
|
206
209
|
}, [address, publicClient, service, onTotalBalanceComputedRef]);
|
|
207
|
-
_react.useEffect.call(void 0, () => {
|
|
208
|
-
if (!defaultAssetId || selectedAssetId) return;
|
|
209
|
-
if (assets.some((asset) => asset.id === defaultAssetId)) {
|
|
210
|
-
setSelectedAssetId(defaultAssetId);
|
|
211
|
-
}
|
|
212
|
-
}, [assets, defaultAssetId, selectedAssetId]);
|
|
213
210
|
const allowedChainSet = _react.useMemo.call(void 0,
|
|
214
211
|
() => _optionalChain([allowedRoutes, 'optionalAccess', _4 => _4.sourceChains]) ? new Set(allowedRoutes.sourceChains) : null,
|
|
215
212
|
[_optionalChain([allowedRoutes, 'optionalAccess', _5 => _5.sourceChains])]
|
|
@@ -226,7 +223,12 @@ function AssetSelectStep({
|
|
|
226
223
|
return false;
|
|
227
224
|
}
|
|
228
225
|
if (allowedChainSet && !allowedChainSet.has(a.chainId)) return false;
|
|
229
|
-
if (allowedTokenSet
|
|
226
|
+
if (allowedTokenSet) {
|
|
227
|
+
if (!allowedTokenSet.has(a.symbol.toUpperCase())) return false;
|
|
228
|
+
if (!_chunkPUMTR35Ecjs.isSupportedTokenAddressForChain.call(void 0, a.token, a.chainId)) return false;
|
|
229
|
+
}
|
|
230
|
+
const isNativeToken = a.token.toLowerCase() === _chunkPUMTR35Ecjs.NATIVE_TOKEN_ADDRESS;
|
|
231
|
+
if (!isNativeToken && !(typeof a.balanceUsd === "number" && a.balanceUsd >= 0.01))
|
|
230
232
|
return false;
|
|
231
233
|
return true;
|
|
232
234
|
}).sort((a, b) => {
|
|
@@ -240,14 +242,20 @@ function AssetSelectStep({
|
|
|
240
242
|
return 0;
|
|
241
243
|
});
|
|
242
244
|
}, [assets, allowedChainSet, allowedTokenSet]);
|
|
243
|
-
|
|
245
|
+
_react.useEffect.call(void 0, () => {
|
|
246
|
+
if (!defaultAssetId || selectedAssetId) return;
|
|
247
|
+
if (rows.some((asset) => asset.id === defaultAssetId)) {
|
|
248
|
+
setSelectedAssetId(defaultAssetId);
|
|
249
|
+
}
|
|
250
|
+
}, [rows, defaultAssetId, selectedAssetId]);
|
|
251
|
+
const selectedAsset = selectedAssetId && rows.find((asset) => asset.id === selectedAssetId);
|
|
244
252
|
const formatBalance = (asset) => {
|
|
245
253
|
if (!asset.balance) return "--";
|
|
246
254
|
try {
|
|
247
255
|
const raw = _viem.formatUnits.call(void 0, BigInt(asset.balance), asset.decimals);
|
|
248
256
|
const numeric = Number(raw);
|
|
249
257
|
if (!Number.isFinite(numeric)) return raw;
|
|
250
|
-
return
|
|
258
|
+
return _chunkIRI34U6Ncjs.tokenFormatter.format(numeric);
|
|
251
259
|
} catch (e3) {
|
|
252
260
|
return asset.balance;
|
|
253
261
|
}
|
|
@@ -255,20 +263,20 @@ function AssetSelectStep({
|
|
|
255
263
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
256
264
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body", children: [
|
|
257
265
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
258
|
-
|
|
266
|
+
_chunkIRI34U6Ncjs.BodyHeader,
|
|
259
267
|
{
|
|
260
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
268
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}),
|
|
261
269
|
title: "Your assets",
|
|
262
270
|
subtitle: "Select source assets to transfer"
|
|
263
271
|
}
|
|
264
272
|
),
|
|
265
273
|
loading && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-loading-state", style: { padding: "40px 12px" }, children: [
|
|
266
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
274
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Spinner, { className: "rs-text-tertiary" }),
|
|
267
275
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-text-sm rs-text-tertiary", children: "Loading balances" })
|
|
268
276
|
] }),
|
|
269
|
-
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
277
|
+
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: error }),
|
|
270
278
|
!loading && !error && rows.length === 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-empty-state", children: [
|
|
271
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
279
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, { className: "rs-empty-icon" }),
|
|
272
280
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-empty-text", children: "No funds in connected wallet" }),
|
|
273
281
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-empty-address", children: [
|
|
274
282
|
address.slice(0, 6),
|
|
@@ -288,9 +296,8 @@ function AssetSelectStep({
|
|
|
288
296
|
!loading && !error && rows.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-list", children: rows.map((asset) => {
|
|
289
297
|
const isSelected = selectedAssetId === asset.id;
|
|
290
298
|
const tokenAmount = formatBalance(asset);
|
|
291
|
-
const badge =
|
|
292
|
-
const
|
|
293
|
-
const chainIcon = _chunkABVRVW3Pcjs.getChainIcon.call(void 0, asset.chainId);
|
|
299
|
+
const badge = _chunkPUMTR35Ecjs.getChainBadge.call(void 0, asset.chainId);
|
|
300
|
+
const chainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, asset.chainId);
|
|
294
301
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
295
302
|
"button",
|
|
296
303
|
{
|
|
@@ -301,12 +308,18 @@ function AssetSelectStep({
|
|
|
301
308
|
children: [
|
|
302
309
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-info", children: [
|
|
303
310
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-icon-wrapper", children: [
|
|
304
|
-
|
|
311
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
312
|
+
_chunkIRI34U6Ncjs.TokenIcon,
|
|
313
|
+
{
|
|
314
|
+
symbol: asset.symbol,
|
|
315
|
+
fallback: asset.symbol.slice(0, 4)
|
|
316
|
+
}
|
|
317
|
+
) }),
|
|
305
318
|
chainIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-chain-badge", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
306
319
|
"img",
|
|
307
320
|
{
|
|
308
321
|
src: chainIcon,
|
|
309
|
-
alt:
|
|
322
|
+
alt: _chunkPUMTR35Ecjs.getChainName.call(void 0, asset.chainId)
|
|
310
323
|
}
|
|
311
324
|
) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
312
325
|
"span",
|
|
@@ -325,7 +338,7 @@ function AssetSelectStep({
|
|
|
325
338
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-name", children: asset.symbol }),
|
|
326
339
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-asset-chain", children: [
|
|
327
340
|
"on ",
|
|
328
|
-
|
|
341
|
+
_chunkPUMTR35Ecjs.getChainName.call(void 0, asset.chainId)
|
|
329
342
|
] })
|
|
330
343
|
] }),
|
|
331
344
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-balance-small", children: [
|
|
@@ -335,14 +348,14 @@ function AssetSelectStep({
|
|
|
335
348
|
] })
|
|
336
349
|
] })
|
|
337
350
|
] }),
|
|
338
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-balance", children: asset.balanceUsd !== void 0 && asset.balanceUsd > 0 ?
|
|
351
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-balance", children: asset.balanceUsd !== void 0 && asset.balanceUsd > 0 ? _chunkIRI34U6Ncjs.currencyFormatter.format(asset.balanceUsd) : tokenAmount !== "--" ? `${tokenAmount} ${asset.symbol}` : "--" })
|
|
339
352
|
]
|
|
340
353
|
},
|
|
341
354
|
asset.id
|
|
342
355
|
);
|
|
343
356
|
}) }),
|
|
344
357
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
345
|
-
|
|
358
|
+
_chunkIRI34U6Ncjs.Button,
|
|
346
359
|
{
|
|
347
360
|
onClick: () => selectedAsset && onContinue(selectedAsset),
|
|
348
361
|
disabled: !selectedAsset,
|
|
@@ -351,28 +364,29 @@ function AssetSelectStep({
|
|
|
351
364
|
}
|
|
352
365
|
)
|
|
353
366
|
] }),
|
|
354
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
367
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
355
368
|
] });
|
|
356
369
|
}
|
|
357
370
|
async function fetchNativeAssets(address, publicClient, existing) {
|
|
358
371
|
const existingIds = new Set(existing.map((asset) => asset.id));
|
|
359
372
|
const connectedChainId = _optionalChain([publicClient, 'access', _8 => _8.chain, 'optionalAccess', _9 => _9.id]);
|
|
360
373
|
if (!connectedChainId) return [];
|
|
361
|
-
if (!
|
|
362
|
-
const id =
|
|
374
|
+
if (!_chunkPUMTR35Ecjs.SOURCE_CHAINS.some((chain) => chain.id === connectedChainId)) return [];
|
|
375
|
+
const id = _chunkIRI34U6Ncjs.getAssetId.call(void 0, {
|
|
363
376
|
chainId: connectedChainId,
|
|
364
|
-
token:
|
|
377
|
+
token: _chunkPUMTR35Ecjs.NATIVE_TOKEN_ADDRESS
|
|
365
378
|
});
|
|
366
379
|
if (existingIds.has(id)) return [];
|
|
367
380
|
try {
|
|
368
381
|
const balance = await publicClient.getBalance({ address });
|
|
382
|
+
const nativeSymbol = _chunkPUMTR35Ecjs.getNativeSymbol.call(void 0, connectedChainId);
|
|
369
383
|
return [
|
|
370
384
|
{
|
|
371
385
|
id,
|
|
372
386
|
chainId: connectedChainId,
|
|
373
|
-
token:
|
|
374
|
-
symbol:
|
|
375
|
-
name:
|
|
387
|
+
token: _chunkPUMTR35Ecjs.NATIVE_TOKEN_ADDRESS,
|
|
388
|
+
symbol: nativeSymbol,
|
|
389
|
+
name: nativeSymbol,
|
|
376
390
|
decimals: 18,
|
|
377
391
|
balance: balance.toString()
|
|
378
392
|
}
|
|
@@ -531,8 +545,8 @@ function AmountStep({
|
|
|
531
545
|
const chainMismatch = Boolean(
|
|
532
546
|
_optionalChain([walletClient, 'optionalAccess', _14 => _14.chain, 'optionalAccess', _15 => _15.id]) && walletClient.chain.id !== asset.chainId
|
|
533
547
|
);
|
|
534
|
-
const targetSymbol =
|
|
535
|
-
const isSourceStablecoin =
|
|
548
|
+
const targetSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
549
|
+
const isSourceStablecoin = _chunkPUMTR35Ecjs.isStablecoinSymbol.call(void 0, asset.symbol);
|
|
536
550
|
const tokenPriceUsd = _react.useMemo.call(void 0, () => {
|
|
537
551
|
if (tokenPriceUsdOverride !== void 0 && tokenPriceUsdOverride > 0)
|
|
538
552
|
return tokenPriceUsdOverride;
|
|
@@ -556,7 +570,7 @@ function AmountStep({
|
|
|
556
570
|
const balanceTarget = _nullishCoalesce(balanceAddress, () => ( address));
|
|
557
571
|
if (!balanceTarget || !publicClient) return;
|
|
558
572
|
try {
|
|
559
|
-
const bal =
|
|
573
|
+
const bal = _chunkIRI34U6Ncjs.isNativeAsset.call(void 0, asset) ? await publicClient.getBalance({ address: balanceTarget }) : await publicClient.readContract({
|
|
560
574
|
address: asset.token,
|
|
561
575
|
abi: _viem.erc20Abi,
|
|
562
576
|
functionName: "balanceOf",
|
|
@@ -577,7 +591,7 @@ function AmountStep({
|
|
|
577
591
|
hasAttemptedSwitch.current = true;
|
|
578
592
|
switchChain(asset.chainId).catch((err) => {
|
|
579
593
|
const raw = err instanceof Error ? err.message : "Failed to switch chain";
|
|
580
|
-
setError(
|
|
594
|
+
setError(_chunkIRI34U6Ncjs.formatUserError.call(void 0, raw));
|
|
581
595
|
});
|
|
582
596
|
}
|
|
583
597
|
}, [chainMismatch, switchChain, asset.chainId]);
|
|
@@ -630,7 +644,7 @@ function AmountStep({
|
|
|
630
644
|
const raw = _viem.formatUnits.call(void 0, balance, asset.decimals);
|
|
631
645
|
const numeric = Number(raw);
|
|
632
646
|
if (!Number.isFinite(numeric)) return raw;
|
|
633
|
-
return
|
|
647
|
+
return _chunkIRI34U6Ncjs.tokenFormatter.format(numeric);
|
|
634
648
|
} catch (e8) {
|
|
635
649
|
return "\u2026";
|
|
636
650
|
}
|
|
@@ -649,7 +663,7 @@ function AmountStep({
|
|
|
649
663
|
return null;
|
|
650
664
|
}
|
|
651
665
|
}, [numericAmount, isSourceStablecoin, hasPricing, tokenPriceUsd, asset.decimals]);
|
|
652
|
-
const minDepositUsd = targetChain ===
|
|
666
|
+
const minDepositUsd = targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID ? Math.max(_chunkPUMTR35Ecjs.HYPERCORE_MIN_DEPOSIT_USD, _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _16 => _16.minDepositUsd]), () => ( 0))) : _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _17 => _17.minDepositUsd]), () => ( null));
|
|
653
667
|
const maxDepositUsd = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _18 => _18.maxDepositUsd]), () => ( null));
|
|
654
668
|
const isBelowMin = minDepositUsd !== null && numericAmount > 0 && amountUsd < minDepositUsd;
|
|
655
669
|
const isAboveMax = maxDepositUsd !== null && amountUsd > maxDepositUsd;
|
|
@@ -745,13 +759,11 @@ function AmountStep({
|
|
|
745
759
|
};
|
|
746
760
|
const continueLabel = exceedsBalance ? "Insufficient balance" : isAboveMax ? "Continue with max allowed deposit" : isBelowMin ? "Continue with minimum deposit" : "Continue";
|
|
747
761
|
const continueDisabled = chainMismatch || isCheckingLiquidity || exceedsBalance || numericAmount === 0 && !isBelowMin || balance === null;
|
|
748
|
-
const sourceChainName =
|
|
749
|
-
const targetChainName =
|
|
750
|
-
const sourceTokenIcon = _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, asset.symbol);
|
|
751
|
-
const targetTokenIcon = _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, targetSymbol);
|
|
762
|
+
const sourceChainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, asset.chainId);
|
|
763
|
+
const targetChainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChain);
|
|
752
764
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
753
765
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
754
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
766
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}), title: "Wallet deposit" }),
|
|
755
767
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-section", children: [
|
|
756
768
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-display", children: [
|
|
757
769
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -771,13 +783,13 @@ function AmountStep({
|
|
|
771
783
|
" available",
|
|
772
784
|
balanceUsd !== null && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
773
785
|
" (~",
|
|
774
|
-
|
|
786
|
+
_chunkIRI34U6Ncjs.currencyFormatter.format(balanceUsd),
|
|
775
787
|
")"
|
|
776
788
|
] })
|
|
777
789
|
] }),
|
|
778
790
|
minDepositUsd !== null && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-amount-meta-minimum", children: [
|
|
779
791
|
"Min. deposit ",
|
|
780
|
-
|
|
792
|
+
_chunkIRI34U6Ncjs.currencyFormatter.format(minDepositUsd)
|
|
781
793
|
] })
|
|
782
794
|
] })
|
|
783
795
|
] }),
|
|
@@ -802,7 +814,7 @@ function AmountStep({
|
|
|
802
814
|
" ",
|
|
803
815
|
asset.symbol
|
|
804
816
|
] }),
|
|
805
|
-
|
|
817
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: asset.symbol }) })
|
|
806
818
|
] })
|
|
807
819
|
] }),
|
|
808
820
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-detail-row", children: [
|
|
@@ -813,18 +825,18 @@ function AmountStep({
|
|
|
813
825
|
" ",
|
|
814
826
|
targetSymbol
|
|
815
827
|
] }),
|
|
816
|
-
|
|
828
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: targetSymbol }) })
|
|
817
829
|
] })
|
|
818
830
|
] }),
|
|
819
831
|
balanceAfterUsd !== null && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-detail-row", children: [
|
|
820
832
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Balance after deposit" }),
|
|
821
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-value", children:
|
|
833
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-value", children: _chunkIRI34U6Ncjs.currencyFormatter.format(balanceAfterUsd) })
|
|
822
834
|
] })
|
|
823
835
|
] }),
|
|
824
|
-
targetChain ===
|
|
825
|
-
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
836
|
+
targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "warning", children: "First deposit to a new HyperCore account includes a ~1 USDC activation fee." }),
|
|
837
|
+
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: error }),
|
|
826
838
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
827
|
-
|
|
839
|
+
_chunkIRI34U6Ncjs.Button,
|
|
828
840
|
{
|
|
829
841
|
onClick: handleContinue,
|
|
830
842
|
fullWidth: true,
|
|
@@ -835,7 +847,7 @@ function AmountStep({
|
|
|
835
847
|
}
|
|
836
848
|
)
|
|
837
849
|
] }),
|
|
838
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
850
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
839
851
|
] });
|
|
840
852
|
}
|
|
841
853
|
|
|
@@ -875,23 +887,21 @@ function ConfirmStep({
|
|
|
875
887
|
_optionalChain([walletClient, 'optionalAccess', _24 => _24.chain, 'optionalAccess', _25 => _25.id]) && walletClient.chain.id !== asset.chainId
|
|
876
888
|
);
|
|
877
889
|
const sameRoute = targetChain === asset.chainId && targetToken.toLowerCase() === asset.token.toLowerCase();
|
|
878
|
-
const targetSymbol = sameRoute ? asset.symbol :
|
|
879
|
-
const sourceChainName =
|
|
880
|
-
const targetChainName =
|
|
881
|
-
const sourceChainIcon =
|
|
882
|
-
const targetChainIcon =
|
|
883
|
-
const
|
|
884
|
-
const targetTokenIcon = _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, targetSymbol);
|
|
885
|
-
const formattedSendAmount = amount && Number.isFinite(Number(amount)) ? _nullishCoalesce(_chunkVPWWFWZTcjs.formatTokenAmount.call(void 0, Number(amount), asset.symbol), () => ( "0")) : "0";
|
|
890
|
+
const targetSymbol = sameRoute ? asset.symbol : _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
891
|
+
const sourceChainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, asset.chainId);
|
|
892
|
+
const targetChainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChain);
|
|
893
|
+
const sourceChainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, asset.chainId);
|
|
894
|
+
const targetChainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, targetChain);
|
|
895
|
+
const formattedSendAmount = amount && Number.isFinite(Number(amount)) ? _nullishCoalesce(_chunkIRI34U6Ncjs.formatTokenAmount.call(void 0, Number(amount), asset.symbol), () => ( "0")) : "0";
|
|
886
896
|
const receiveDisplay = (() => {
|
|
887
897
|
if (sameRoute) return `${formattedSendAmount} ${asset.symbol}`;
|
|
888
898
|
if (quote) {
|
|
889
|
-
const quoted =
|
|
899
|
+
const quoted = _chunkIRI34U6Ncjs.formatQuotedReceive.call(void 0, quote.output, targetSymbol);
|
|
890
900
|
if (quoted !== void 0) return quoted;
|
|
891
901
|
}
|
|
892
902
|
const usdValue = Number(targetAmount);
|
|
893
903
|
const sourceAmountUsd = Number.isFinite(usdValue) && usdValue > 0 ? usdValue : void 0;
|
|
894
|
-
const estimate =
|
|
904
|
+
const estimate = _chunkIRI34U6Ncjs.formatReceiveEstimate.call(void 0, {
|
|
895
905
|
sourceAmount: Number.isFinite(Number(amount)) ? Number(amount) : void 0,
|
|
896
906
|
sourceSymbol: asset.symbol,
|
|
897
907
|
targetSymbol,
|
|
@@ -910,7 +920,7 @@ function ConfirmStep({
|
|
|
910
920
|
hasAttemptedSwitch.current = true;
|
|
911
921
|
switchChain(asset.chainId).catch((err) => {
|
|
912
922
|
const raw = err instanceof Error ? err.message : "Failed to switch chain";
|
|
913
|
-
setError(
|
|
923
|
+
setError(_chunkIRI34U6Ncjs.formatUserError.call(void 0, raw));
|
|
914
924
|
});
|
|
915
925
|
}
|
|
916
926
|
}, [chainMismatch, switchChain, asset.chainId]);
|
|
@@ -990,7 +1000,7 @@ function ConfirmStep({
|
|
|
990
1000
|
const result = await executeTransfer(amountUnits);
|
|
991
1001
|
hash = result.txHash;
|
|
992
1002
|
resolvedSourceToken = result.sourceToken;
|
|
993
|
-
} else if (
|
|
1003
|
+
} else if (_chunkIRI34U6Ncjs.isNativeAsset.call(void 0, asset)) {
|
|
994
1004
|
hash = await walletClient.sendTransaction({
|
|
995
1005
|
account,
|
|
996
1006
|
chain,
|
|
@@ -1008,19 +1018,25 @@ function ConfirmStep({
|
|
|
1008
1018
|
});
|
|
1009
1019
|
}
|
|
1010
1020
|
_optionalChain([onDepositSubmitted, 'optionalCall', _28 => _28(hash, asset.chainId, amountUnits.toString())]);
|
|
1011
|
-
onConfirm(
|
|
1021
|
+
onConfirm(
|
|
1022
|
+
hash,
|
|
1023
|
+
asset.chainId,
|
|
1024
|
+
amountUnits.toString(),
|
|
1025
|
+
resolvedSourceToken,
|
|
1026
|
+
_optionalChain([quote, 'optionalAccess', _29 => _29.fees, 'optionalAccess', _30 => _30.breakdown])
|
|
1027
|
+
);
|
|
1012
1028
|
} catch (err) {
|
|
1013
1029
|
const raw = err instanceof Error ? err.message : "Transfer failed";
|
|
1014
|
-
const message =
|
|
1030
|
+
const message = _chunkIRI34U6Ncjs.formatUserError.call(void 0, raw);
|
|
1015
1031
|
setError(message);
|
|
1016
|
-
_optionalChain([onError, 'optionalCall',
|
|
1032
|
+
_optionalChain([onError, 'optionalCall', _31 => _31(message, "TRANSFER_ERROR")]);
|
|
1017
1033
|
} finally {
|
|
1018
1034
|
setIsSubmitting(false);
|
|
1019
1035
|
}
|
|
1020
1036
|
};
|
|
1021
1037
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
1022
1038
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
1023
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1039
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}), title: "Review deposit" }),
|
|
1024
1040
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-details", children: [
|
|
1025
1041
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-detail-row", children: [
|
|
1026
1042
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Source chain" }),
|
|
@@ -1048,14 +1064,14 @@ function ConfirmStep({
|
|
|
1048
1064
|
" ",
|
|
1049
1065
|
asset.symbol
|
|
1050
1066
|
] }),
|
|
1051
|
-
|
|
1067
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-review-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: asset.symbol }) })
|
|
1052
1068
|
] })
|
|
1053
1069
|
] }),
|
|
1054
1070
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-detail-row", children: [
|
|
1055
1071
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Receive" }),
|
|
1056
1072
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-review-detail-value", children: [
|
|
1057
1073
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: receiveDisplay }),
|
|
1058
|
-
|
|
1074
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-review-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: targetSymbol }) })
|
|
1059
1075
|
] })
|
|
1060
1076
|
] }),
|
|
1061
1077
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-detail-row", children: [
|
|
@@ -1074,14 +1090,14 @@ function ConfirmStep({
|
|
|
1074
1090
|
children: feeDisplay
|
|
1075
1091
|
}
|
|
1076
1092
|
),
|
|
1077
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1093
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Tooltip, { content: feeTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-review-detail-info", "aria-label": "Fee info", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.InfoIcon, {}) }) })
|
|
1078
1094
|
] })
|
|
1079
1095
|
] })
|
|
1080
1096
|
] }),
|
|
1081
|
-
targetChain ===
|
|
1082
|
-
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1097
|
+
targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "warning", children: "First deposit to a new HyperCore account includes a ~1 USDC activation fee." }),
|
|
1098
|
+
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: error }),
|
|
1083
1099
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1084
|
-
|
|
1100
|
+
_chunkIRI34U6Ncjs.Button,
|
|
1085
1101
|
{
|
|
1086
1102
|
onClick: handleConfirm,
|
|
1087
1103
|
loading: isSubmitting,
|
|
@@ -1092,7 +1108,7 @@ function ConfirmStep({
|
|
|
1092
1108
|
}
|
|
1093
1109
|
)
|
|
1094
1110
|
] }),
|
|
1095
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1111
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
1096
1112
|
] });
|
|
1097
1113
|
}
|
|
1098
1114
|
|
|
@@ -1115,9 +1131,9 @@ var INITIAL_POLL_INTERVAL = 3e3;
|
|
|
1115
1131
|
var MAX_POLL_INTERVAL = 3e4;
|
|
1116
1132
|
var BACKOFF_MULTIPLIER = 1.5;
|
|
1117
1133
|
function isEventForTx(event, txHash) {
|
|
1118
|
-
const eventTxHash =
|
|
1134
|
+
const eventTxHash = _chunkIRI34U6Ncjs.getEventTxHash.call(void 0, event);
|
|
1119
1135
|
if (!eventTxHash) return false;
|
|
1120
|
-
return
|
|
1136
|
+
return _chunkIRI34U6Ncjs.txRefsMatch.call(void 0, eventTxHash, txHash);
|
|
1121
1137
|
}
|
|
1122
1138
|
function truncateHash(hash) {
|
|
1123
1139
|
return `${hash.slice(0, 4)}\u2026${hash.slice(-4)}`;
|
|
@@ -1147,7 +1163,7 @@ function formatTimestamp(ms) {
|
|
|
1147
1163
|
return `${month} ${day}${suffix} \xB7 ${hours}:${minutes}:${seconds}`;
|
|
1148
1164
|
}
|
|
1149
1165
|
function formatBridgeFailedMessage(event) {
|
|
1150
|
-
const eventData = _nullishCoalesce(_optionalChain([event, 'optionalAccess',
|
|
1166
|
+
const eventData = _nullishCoalesce(_optionalChain([event, 'optionalAccess', _32 => _32.data]), () => ( {}));
|
|
1151
1167
|
const backendMessage = typeof eventData.message === "string" ? eventData.message.trim() : "";
|
|
1152
1168
|
if (backendMessage.length > 0) {
|
|
1153
1169
|
const lower = backendMessage.toLowerCase();
|
|
@@ -1167,7 +1183,7 @@ function formatBridgeFailedMessage(event) {
|
|
|
1167
1183
|
}
|
|
1168
1184
|
return "Bridge failed";
|
|
1169
1185
|
}
|
|
1170
|
-
var txLinkIcon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1186
|
+
var txLinkIcon = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ExternalLinkIcon, { className: "rs-deposit-notification-link-icon" });
|
|
1171
1187
|
function DepositNotification({
|
|
1172
1188
|
deposit,
|
|
1173
1189
|
smartAccount,
|
|
@@ -1201,7 +1217,7 @@ function DepositNotification({
|
|
|
1201
1217
|
const pollIntervalRef = _react.useRef.call(void 0, INITIAL_POLL_INTERVAL);
|
|
1202
1218
|
const pollTimeoutRef = _react.useRef.call(void 0, null);
|
|
1203
1219
|
const completedRef = _react.useRef.call(void 0, _nullishCoalesce(directTransfer, () => ( false)));
|
|
1204
|
-
const depositContextRef =
|
|
1220
|
+
const depositContextRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, {
|
|
1205
1221
|
amount,
|
|
1206
1222
|
sourceChain,
|
|
1207
1223
|
sourceToken: token,
|
|
@@ -1209,8 +1225,8 @@ function DepositNotification({
|
|
|
1209
1225
|
targetChain,
|
|
1210
1226
|
targetToken
|
|
1211
1227
|
});
|
|
1212
|
-
const onCompleteRef =
|
|
1213
|
-
const onFailedRef =
|
|
1228
|
+
const onCompleteRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onComplete);
|
|
1229
|
+
const onFailedRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onFailed);
|
|
1214
1230
|
const handleComplete = _react.useCallback.call(void 0,
|
|
1215
1231
|
(destTxHash) => {
|
|
1216
1232
|
if (completedRef.current) return;
|
|
@@ -1219,7 +1235,7 @@ function DepositNotification({
|
|
|
1219
1235
|
setCompletedAt(Date.now());
|
|
1220
1236
|
setStatus("complete");
|
|
1221
1237
|
const context = depositContextRef.current;
|
|
1222
|
-
_optionalChain([onCompleteRef, 'access',
|
|
1238
|
+
_optionalChain([onCompleteRef, 'access', _33 => _33.current, 'optionalCall', _34 => _34(txHash, destTxHash, {
|
|
1223
1239
|
amount: context.amount,
|
|
1224
1240
|
sourceChain: context.sourceChain,
|
|
1225
1241
|
sourceToken: context.sourceToken,
|
|
@@ -1235,7 +1251,7 @@ function DepositNotification({
|
|
|
1235
1251
|
if (completedRef.current) return;
|
|
1236
1252
|
completedRef.current = true;
|
|
1237
1253
|
setStatus("failed");
|
|
1238
|
-
_optionalChain([onFailedRef, 'access',
|
|
1254
|
+
_optionalChain([onFailedRef, 'access', _35 => _35.current, 'optionalCall', _36 => _36(txHash, error)]);
|
|
1239
1255
|
},
|
|
1240
1256
|
[onFailedRef, txHash]
|
|
1241
1257
|
);
|
|
@@ -1253,17 +1269,17 @@ function DepositNotification({
|
|
|
1253
1269
|
if (!isMounted) return;
|
|
1254
1270
|
const lastEvent = data.lastEvent;
|
|
1255
1271
|
const eventForTx = isEventForTx(lastEvent, txHash) ? lastEvent : void 0;
|
|
1256
|
-
if (_optionalChain([eventForTx, 'optionalAccess',
|
|
1257
|
-
const destTx = _optionalChain([eventForTx, 'access',
|
|
1272
|
+
if (_optionalChain([eventForTx, 'optionalAccess', _37 => _37.type]) === "bridge-complete") {
|
|
1273
|
+
const destTx = _optionalChain([eventForTx, 'access', _38 => _38.data, 'optionalAccess', _39 => _39.destination, 'optionalAccess', _40 => _40.transactionHash]);
|
|
1258
1274
|
handleComplete(destTx);
|
|
1259
1275
|
return;
|
|
1260
1276
|
}
|
|
1261
|
-
if (_optionalChain([eventForTx, 'optionalAccess',
|
|
1277
|
+
if (_optionalChain([eventForTx, 'optionalAccess', _41 => _41.type]) === "bridge-failed") {
|
|
1262
1278
|
handleFailed(formatBridgeFailedMessage(eventForTx));
|
|
1263
1279
|
return;
|
|
1264
1280
|
}
|
|
1265
|
-
if (_optionalChain([eventForTx, 'optionalAccess',
|
|
1266
|
-
const errorMessage = _nullishCoalesce(_optionalChain([eventForTx, 'access',
|
|
1281
|
+
if (_optionalChain([eventForTx, 'optionalAccess', _42 => _42.type]) === "error") {
|
|
1282
|
+
const errorMessage = _nullishCoalesce(_optionalChain([eventForTx, 'access', _43 => _43.data, 'optionalAccess', _44 => _44.message]), () => ( "Unknown error"));
|
|
1267
1283
|
handleFailed(errorMessage);
|
|
1268
1284
|
return;
|
|
1269
1285
|
}
|
|
@@ -1301,11 +1317,11 @@ function DepositNotification({
|
|
|
1301
1317
|
status,
|
|
1302
1318
|
txHash
|
|
1303
1319
|
]);
|
|
1304
|
-
const sourceExplorerUrl = sourceChain === "unknown" ? void 0 :
|
|
1305
|
-
const destExplorerUrl = destinationTxHash ?
|
|
1320
|
+
const sourceExplorerUrl = sourceChain === "unknown" ? void 0 : _chunkPUMTR35Ecjs.getExplorerTxUrl.call(void 0, sourceChain, txHash);
|
|
1321
|
+
const destExplorerUrl = destinationTxHash ? _chunkPUMTR35Ecjs.getExplorerTxUrl.call(void 0, targetChain, destinationTxHash) : null;
|
|
1306
1322
|
const title = status === "complete" ? "Deposit completed" : status === "failed" ? "Deposit failed" : "Deposit received and processing\u2026";
|
|
1307
1323
|
const subtitle = status === "complete" ? "Your deposit has been credited to your account." : status === "failed" ? "Your deposit could not be processed." : "Your deposit will be credited to your account shortly.";
|
|
1308
|
-
const statusIcon = status === "complete" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-deposit-notification-badge rs-deposit-notification-badge--complete", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1324
|
+
const statusIcon = status === "complete" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-deposit-notification-badge rs-deposit-notification-badge--complete", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CheckIcon, {}) }) : status === "failed" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-deposit-notification-badge rs-deposit-notification-badge--failed", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CloseIcon, {}) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-deposit-notification-badge rs-deposit-notification-badge--processing", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1309
1325
|
"svg",
|
|
1310
1326
|
{
|
|
1311
1327
|
className: "rs-deposit-notification-spinner",
|
|
@@ -1355,7 +1371,7 @@ function DepositNotification({
|
|
|
1355
1371
|
className: "rs-deposit-notification-close",
|
|
1356
1372
|
onClick: () => onDismiss(deposit.id),
|
|
1357
1373
|
"aria-label": "Dismiss",
|
|
1358
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1374
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CloseIcon, {})
|
|
1359
1375
|
}
|
|
1360
1376
|
)
|
|
1361
1377
|
] }),
|
|
@@ -1371,7 +1387,7 @@ function DepositNotification({
|
|
|
1371
1387
|
"aria-expanded": expanded,
|
|
1372
1388
|
children: [
|
|
1373
1389
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: expanded ? "See less details" : "See more details" }),
|
|
1374
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1390
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronDownIcon, { className: "rs-deposit-notification-toggle-chevron" })
|
|
1375
1391
|
]
|
|
1376
1392
|
}
|
|
1377
1393
|
),
|
|
@@ -1442,6 +1458,7 @@ function asNumber(value) {
|
|
|
1442
1458
|
function asChainId(value) {
|
|
1443
1459
|
if (typeof value === "string") {
|
|
1444
1460
|
if (value.startsWith("solana")) return "solana";
|
|
1461
|
+
if (value.startsWith("hypercore")) return "hypercore";
|
|
1445
1462
|
const eip155Match = value.match(/^eip155:(\d+)$/);
|
|
1446
1463
|
if (eip155Match) return Number(eip155Match[1]);
|
|
1447
1464
|
}
|
|
@@ -1460,7 +1477,7 @@ function asString(value) {
|
|
|
1460
1477
|
function resolveSolanaTokenMeta(token) {
|
|
1461
1478
|
if (!token) return {};
|
|
1462
1479
|
const normalized = token.toLowerCase();
|
|
1463
|
-
const matched =
|
|
1480
|
+
const matched = _chunkPUMTR35Ecjs.SOLANA_TOKENS.find(
|
|
1464
1481
|
(entry) => entry.mint.toLowerCase() === normalized
|
|
1465
1482
|
);
|
|
1466
1483
|
if (matched) {
|
|
@@ -1472,7 +1489,7 @@ function resolveSolanaTokenMeta(token) {
|
|
|
1472
1489
|
return {};
|
|
1473
1490
|
}
|
|
1474
1491
|
function getDepositEventDetails(event) {
|
|
1475
|
-
if (!_optionalChain([event, 'optionalAccess',
|
|
1492
|
+
if (!_optionalChain([event, 'optionalAccess', _45 => _45.type]) || !isRecord(event.data)) return {};
|
|
1476
1493
|
if (event.type === "deposit-received") {
|
|
1477
1494
|
const chainId = asChainId(event.data.chain);
|
|
1478
1495
|
const token = asString(event.data.token);
|
|
@@ -1487,12 +1504,12 @@ function getDepositEventDetails(event) {
|
|
|
1487
1504
|
const source = isRecord(event.data.source) ? event.data.source : void 0;
|
|
1488
1505
|
const deposit = isRecord(event.data.deposit) ? event.data.deposit : void 0;
|
|
1489
1506
|
if (source || deposit) {
|
|
1490
|
-
const chainId = _nullishCoalesce(asChainId(_optionalChain([source, 'optionalAccess',
|
|
1491
|
-
const token = _nullishCoalesce(_nullishCoalesce(asString(_optionalChain([source, 'optionalAccess',
|
|
1507
|
+
const chainId = _nullishCoalesce(asChainId(_optionalChain([source, 'optionalAccess', _46 => _46.chain])), () => ( asChainId(_optionalChain([deposit, 'optionalAccess', _47 => _47.chain]))));
|
|
1508
|
+
const token = _nullishCoalesce(_nullishCoalesce(asString(_optionalChain([source, 'optionalAccess', _48 => _48.asset])), () => ( asString(_optionalChain([deposit, 'optionalAccess', _49 => _49.asset])))), () => ( asString(_optionalChain([deposit, 'optionalAccess', _50 => _50.token]))));
|
|
1492
1509
|
const solanaMeta = chainId === "solana" ? resolveSolanaTokenMeta(token) : {};
|
|
1493
1510
|
return {
|
|
1494
1511
|
chainId,
|
|
1495
|
-
amount: _nullishCoalesce(asAmount(_optionalChain([source, 'optionalAccess',
|
|
1512
|
+
amount: _nullishCoalesce(asAmount(_optionalChain([source, 'optionalAccess', _51 => _51.amount])), () => ( asAmount(_optionalChain([deposit, 'optionalAccess', _52 => _52.amount])))),
|
|
1496
1513
|
token,
|
|
1497
1514
|
...solanaMeta
|
|
1498
1515
|
};
|
|
@@ -1502,14 +1519,36 @@ function getDepositEventDetails(event) {
|
|
|
1502
1519
|
function isSameRoute(sourceChain, sourceToken, targetChain, targetToken) {
|
|
1503
1520
|
return sourceChain === targetChain && sourceToken.toLowerCase() === targetToken.toLowerCase();
|
|
1504
1521
|
}
|
|
1505
|
-
function
|
|
1506
|
-
|
|
1522
|
+
function chainLabel(chainId) {
|
|
1523
|
+
return _chunkPUMTR35Ecjs.getChainName.call(void 0, chainId).replace(/\s+(One|Mainnet|Smart Chain)$/i, "");
|
|
1524
|
+
}
|
|
1525
|
+
function computeTokensForChain(chainId, allowedTokenSet, topTokens) {
|
|
1526
|
+
const fromBackend = _optionalChain([topTokens, 'optionalAccess', _53 => _53[String(chainId)], 'optionalAccess', _54 => _54.map, 'call', _55 => _55((t) => t.symbol)]);
|
|
1527
|
+
const all = _nullishCoalesce(fromBackend, () => ( (chainId === "solana" ? _chunkPUMTR35Ecjs.SOLANA_TOKENS.map((t) => t.symbol) : (
|
|
1528
|
+
// HyperCore accepts USDC + USDT0 as origin tokens (native Hyperliquid L1
|
|
1529
|
+
// spot transfers); it has no EVM source-chain matrix entry.
|
|
1530
|
+
chainId === "hypercore" ? ["USDC", "USDT0"] : _chunkPUMTR35Ecjs.getTargetTokenSymbolsForChain.call(void 0, chainId)
|
|
1531
|
+
))));
|
|
1507
1532
|
return allowedTokenSet ? all.filter((s) => allowedTokenSet.has(s.toUpperCase())) : all;
|
|
1508
1533
|
}
|
|
1534
|
+
function resolveSourceTokenAddress(symbol, chainId, topTokens) {
|
|
1535
|
+
const top = _optionalChain([topTokens, 'optionalAccess', _56 => _56[String(chainId)], 'optionalAccess', _57 => _57.find, 'call', _58 => _58((t) => t.symbol === symbol)]);
|
|
1536
|
+
return _nullishCoalesce(_optionalChain([top, 'optionalAccess', _59 => _59.address]), () => ( _chunkPUMTR35Ecjs.getTokenAddress.call(void 0, symbol, chainId)));
|
|
1537
|
+
}
|
|
1538
|
+
function TokenGlyph({ symbol }) {
|
|
1539
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1540
|
+
_chunkIRI34U6Ncjs.TokenIcon,
|
|
1541
|
+
{
|
|
1542
|
+
symbol,
|
|
1543
|
+
className: "rs-deposit-address-dropdown-icon",
|
|
1544
|
+
fallback: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-deposit-address-dropdown-icon rs-deposit-address-dropdown-icon--fallback", children: symbol.slice(0, 3) })
|
|
1545
|
+
}
|
|
1546
|
+
);
|
|
1547
|
+
}
|
|
1509
1548
|
function pickFallbackToken(tokens, current) {
|
|
1510
1549
|
if (tokens.includes(current)) return current;
|
|
1511
1550
|
if (tokens.includes("USDC")) return "USDC";
|
|
1512
|
-
return _nullishCoalesce(tokens[0], () => ( "
|
|
1551
|
+
return _nullishCoalesce(tokens[0], () => ( ""));
|
|
1513
1552
|
}
|
|
1514
1553
|
function DepositAddressStep({
|
|
1515
1554
|
smartAccount,
|
|
@@ -1527,33 +1566,57 @@ function DepositAddressStep({
|
|
|
1527
1566
|
}) {
|
|
1528
1567
|
const hasSolana = Boolean(solanaDepositAddress);
|
|
1529
1568
|
const allowedChainSet = _react.useMemo.call(void 0,
|
|
1530
|
-
() => _optionalChain([allowedRoutes, 'optionalAccess',
|
|
1531
|
-
[_optionalChain([allowedRoutes, 'optionalAccess',
|
|
1569
|
+
() => _optionalChain([allowedRoutes, 'optionalAccess', _60 => _60.sourceChains]) ? new Set(allowedRoutes.sourceChains) : null,
|
|
1570
|
+
[_optionalChain([allowedRoutes, 'optionalAccess', _61 => _61.sourceChains])]
|
|
1532
1571
|
);
|
|
1533
1572
|
const allowedTokenSet = _react.useMemo.call(void 0,
|
|
1534
|
-
() => _optionalChain([allowedRoutes, 'optionalAccess',
|
|
1535
|
-
[_optionalChain([allowedRoutes, 'optionalAccess',
|
|
1573
|
+
() => _optionalChain([allowedRoutes, 'optionalAccess', _62 => _62.sourceTokens]) ? new Set(allowedRoutes.sourceTokens.map((s) => s.toUpperCase())) : null,
|
|
1574
|
+
[_optionalChain([allowedRoutes, 'optionalAccess', _63 => _63.sourceTokens])]
|
|
1536
1575
|
);
|
|
1537
1576
|
const evmChainIds = _react.useMemo.call(void 0, () => {
|
|
1538
|
-
const all =
|
|
1577
|
+
const all = _chunkPUMTR35Ecjs.getSupportedChainIds.call(void 0, );
|
|
1539
1578
|
return allowedChainSet ? all.filter((id) => allowedChainSet.has(id)) : all;
|
|
1540
1579
|
}, [allowedChainSet]);
|
|
1541
1580
|
const chainOptions = _react.useMemo.call(void 0, () => {
|
|
1542
|
-
if (!hasSolana) return evmChainIds;
|
|
1543
1581
|
const options = [...evmChainIds];
|
|
1544
|
-
|
|
1582
|
+
const extras = [];
|
|
1583
|
+
if (hasSolana) extras.push("solana");
|
|
1584
|
+
if (!allowedChainSet || allowedChainSet.has(_chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID)) {
|
|
1585
|
+
extras.push("hypercore");
|
|
1586
|
+
}
|
|
1587
|
+
options.splice(1, 0, ...extras);
|
|
1545
1588
|
return options;
|
|
1546
|
-
}, [evmChainIds, hasSolana]);
|
|
1589
|
+
}, [evmChainIds, hasSolana, allowedChainSet]);
|
|
1547
1590
|
const BASE_CHAIN_ID2 = 8453;
|
|
1548
|
-
const
|
|
1591
|
+
const chainHasAllowedToken = (id) => !allowedTokenSet || _chunkPUMTR35Ecjs.getTargetTokenSymbolsForChain.call(void 0, id).some(
|
|
1592
|
+
(s) => allowedTokenSet.has(s.toUpperCase())
|
|
1593
|
+
);
|
|
1594
|
+
const evmDefault = evmChainIds.includes(BASE_CHAIN_ID2) && chainHasAllowedToken(BASE_CHAIN_ID2) ? BASE_CHAIN_ID2 : _nullishCoalesce(evmChainIds.find(chainHasAllowedToken), () => ( evmChainIds[0]));
|
|
1595
|
+
const defaultChainId = _nullishCoalesce(evmDefault, () => ( chainOptions[0]));
|
|
1549
1596
|
const [sourceChainId, setSourceChainId] = _react.useState.call(void 0, defaultChainId);
|
|
1550
1597
|
const isSolana = sourceChainId === "solana";
|
|
1598
|
+
const isHyperCore = sourceChainId === "hypercore";
|
|
1599
|
+
const [topTokens, setTopTokens] = _react.useState.call(void 0, null);
|
|
1600
|
+
_react.useEffect.call(void 0, () => {
|
|
1601
|
+
let active = true;
|
|
1602
|
+
service.getTopTokens().then((t) => {
|
|
1603
|
+
if (active) setTopTokens(t);
|
|
1604
|
+
});
|
|
1605
|
+
return () => {
|
|
1606
|
+
active = false;
|
|
1607
|
+
};
|
|
1608
|
+
}, [service]);
|
|
1551
1609
|
const tokensForChain = _react.useMemo.call(void 0,
|
|
1552
|
-
() => computeTokensForChain(sourceChainId, allowedTokenSet),
|
|
1553
|
-
[sourceChainId, allowedTokenSet]
|
|
1610
|
+
() => computeTokensForChain(sourceChainId, allowedTokenSet, topTokens),
|
|
1611
|
+
[sourceChainId, allowedTokenSet, topTokens]
|
|
1554
1612
|
);
|
|
1555
1613
|
const defaultToken = pickFallbackToken(tokensForChain, "USDC");
|
|
1556
1614
|
const [sourceTokenSymbol, setSourceTokenSymbol] = _react.useState.call(void 0, defaultToken);
|
|
1615
|
+
_react.useEffect.call(void 0, () => {
|
|
1616
|
+
if (!tokensForChain.includes(sourceTokenSymbol)) {
|
|
1617
|
+
setSourceTokenSymbol(pickFallbackToken(tokensForChain, sourceTokenSymbol));
|
|
1618
|
+
}
|
|
1619
|
+
}, [tokensForChain, sourceTokenSymbol]);
|
|
1557
1620
|
const [copied, setCopied] = _react.useState.call(void 0, false);
|
|
1558
1621
|
const [pollingError, setPollingError] = _react.useState.call(void 0, null);
|
|
1559
1622
|
const [chainDropdownOpen, setChainDropdownOpen] = _react.useState.call(void 0, false);
|
|
@@ -1569,13 +1632,14 @@ function DepositAddressStep({
|
|
|
1569
1632
|
kind: "idle"
|
|
1570
1633
|
});
|
|
1571
1634
|
_react.useEffect.call(void 0, () => {
|
|
1572
|
-
if (isSolana) {
|
|
1635
|
+
if (isSolana || isHyperCore) {
|
|
1573
1636
|
setLiquidityHelper({ kind: "idle" });
|
|
1574
1637
|
return;
|
|
1575
1638
|
}
|
|
1576
|
-
const sourceTokenAddress =
|
|
1639
|
+
const sourceTokenAddress = resolveSourceTokenAddress(
|
|
1577
1640
|
sourceTokenSymbol,
|
|
1578
|
-
sourceChainId
|
|
1641
|
+
sourceChainId,
|
|
1642
|
+
topTokens
|
|
1579
1643
|
);
|
|
1580
1644
|
if (!sourceTokenAddress) {
|
|
1581
1645
|
setLiquidityHelper({ kind: "idle" });
|
|
@@ -1612,11 +1676,13 @@ function DepositAddressStep({
|
|
|
1612
1676
|
};
|
|
1613
1677
|
}, [
|
|
1614
1678
|
isSolana,
|
|
1679
|
+
isHyperCore,
|
|
1615
1680
|
sourceChainId,
|
|
1616
1681
|
sourceTokenSymbol,
|
|
1617
1682
|
targetChain,
|
|
1618
1683
|
targetToken,
|
|
1619
|
-
service
|
|
1684
|
+
service,
|
|
1685
|
+
topTokens
|
|
1620
1686
|
]);
|
|
1621
1687
|
const displayAddress = isSolana && solanaDepositAddress ? solanaDepositAddress : smartAccount;
|
|
1622
1688
|
_react.useEffect.call(void 0, () => {
|
|
@@ -1624,8 +1690,8 @@ function DepositAddressStep({
|
|
|
1624
1690
|
function handlePointerDown(event) {
|
|
1625
1691
|
const target = event.target;
|
|
1626
1692
|
if (!target) return;
|
|
1627
|
-
const clickedChainDropdown = _optionalChain([chainDropdownRef, 'access',
|
|
1628
|
-
const clickedTokenDropdown = _optionalChain([tokenDropdownRef, 'access',
|
|
1693
|
+
const clickedChainDropdown = _optionalChain([chainDropdownRef, 'access', _64 => _64.current, 'optionalAccess', _65 => _65.contains, 'call', _66 => _66(target)]);
|
|
1694
|
+
const clickedTokenDropdown = _optionalChain([tokenDropdownRef, 'access', _67 => _67.current, 'optionalAccess', _68 => _68.contains, 'call', _69 => _69(target)]);
|
|
1629
1695
|
if (clickedChainDropdown || clickedTokenDropdown) return;
|
|
1630
1696
|
setChainDropdownOpen(false);
|
|
1631
1697
|
setTokenDropdownOpen(false);
|
|
@@ -1638,7 +1704,7 @@ function DepositAddressStep({
|
|
|
1638
1704
|
};
|
|
1639
1705
|
}, [chainDropdownOpen, tokenDropdownOpen]);
|
|
1640
1706
|
const handleCopy = _react.useCallback.call(void 0, async () => {
|
|
1641
|
-
_optionalChain([onCopyAddress, 'optionalCall',
|
|
1707
|
+
_optionalChain([onCopyAddress, 'optionalCall', _70 => _70()]);
|
|
1642
1708
|
try {
|
|
1643
1709
|
await navigator.clipboard.writeText(displayAddress);
|
|
1644
1710
|
setCopied(true);
|
|
@@ -1658,14 +1724,18 @@ function DepositAddressStep({
|
|
|
1658
1724
|
}, [displayAddress, onCopyAddress]);
|
|
1659
1725
|
const handleSelectChain = _react.useCallback.call(void 0,
|
|
1660
1726
|
(nextChain) => {
|
|
1661
|
-
const nextTokens = computeTokensForChain(
|
|
1727
|
+
const nextTokens = computeTokensForChain(
|
|
1728
|
+
nextChain,
|
|
1729
|
+
allowedTokenSet,
|
|
1730
|
+
topTokens
|
|
1731
|
+
);
|
|
1662
1732
|
setSourceChainId(nextChain);
|
|
1663
1733
|
setSourceTokenSymbol(pickFallbackToken(nextTokens, sourceTokenSymbol));
|
|
1664
1734
|
setChainDropdownOpen(false);
|
|
1665
1735
|
setTokenDropdownOpen(false);
|
|
1666
1736
|
setCopied(false);
|
|
1667
1737
|
},
|
|
1668
|
-
[allowedTokenSet, sourceTokenSymbol]
|
|
1738
|
+
[allowedTokenSet, sourceTokenSymbol, topTokens]
|
|
1669
1739
|
);
|
|
1670
1740
|
const onDepositSubmittedRef = _react.useRef.call(void 0, onDepositSubmitted);
|
|
1671
1741
|
onDepositSubmittedRef.current = onDepositSubmitted;
|
|
@@ -1717,10 +1787,10 @@ function DepositAddressStep({
|
|
|
1717
1787
|
return;
|
|
1718
1788
|
}
|
|
1719
1789
|
const event = status.lastEvent;
|
|
1720
|
-
const eventTxHash =
|
|
1790
|
+
const eventTxHash = _chunkIRI34U6Ncjs.isDepositEvent.call(void 0, event) ? _nullishCoalesce(_chunkIRI34U6Ncjs.getEventTxHash.call(void 0, event), () => ( null)) : null;
|
|
1721
1791
|
if (baselineTxHashRef.current === void 0) {
|
|
1722
1792
|
baselineTxHashRef.current = eventTxHash;
|
|
1723
|
-
} else if (eventTxHash && (!baselineTxHashRef.current || !
|
|
1793
|
+
} else if (eventTxHash && (!baselineTxHashRef.current || !_chunkIRI34U6Ncjs.txRefsMatch.call(void 0, eventTxHash, baselineTxHashRef.current))) {
|
|
1724
1794
|
const details = getDepositEventDetails(event);
|
|
1725
1795
|
const chainId = _nullishCoalesce(details.chainId, () => ( "unknown"));
|
|
1726
1796
|
const amount = _nullishCoalesce(details.amount, () => ( "0"));
|
|
@@ -1729,7 +1799,7 @@ function DepositAddressStep({
|
|
|
1729
1799
|
baselineTxHashRef.current = eventTxHash;
|
|
1730
1800
|
isTrackingRef.current = true;
|
|
1731
1801
|
const isEvmToken = token ? /^0x[a-fA-F0-9]{40}$/.test(token) : false;
|
|
1732
|
-
const sourceDecimals = _nullishCoalesce(details.sourceDecimals, () => ( (isEvmToken ?
|
|
1802
|
+
const sourceDecimals = _nullishCoalesce(details.sourceDecimals, () => ( (isEvmToken ? _chunkPUMTR35Ecjs.findTokenDecimals.call(void 0,
|
|
1733
1803
|
token,
|
|
1734
1804
|
typeof chainId === "number" ? chainId : void 0
|
|
1735
1805
|
) : void 0)));
|
|
@@ -1752,7 +1822,7 @@ function DepositAddressStep({
|
|
|
1752
1822
|
directTransfer
|
|
1753
1823
|
};
|
|
1754
1824
|
setNotifications((prev) => [notification, ...prev]);
|
|
1755
|
-
_optionalChain([onDepositSubmittedRef, 'access',
|
|
1825
|
+
_optionalChain([onDepositSubmittedRef, 'access', _71 => _71.current, 'optionalCall', _72 => _72({
|
|
1756
1826
|
txHash: eventTxHash,
|
|
1757
1827
|
sourceChain: chainId,
|
|
1758
1828
|
amount,
|
|
@@ -1764,7 +1834,7 @@ function DepositAddressStep({
|
|
|
1764
1834
|
if (!cancelled) {
|
|
1765
1835
|
const msg = err instanceof Error ? err.message : "Failed to check status";
|
|
1766
1836
|
setPollingError(msg);
|
|
1767
|
-
_optionalChain([onErrorRef, 'access',
|
|
1837
|
+
_optionalChain([onErrorRef, 'access', _73 => _73.current, 'optionalCall', _74 => _74(msg, "STATUS_POLL_ERROR")]);
|
|
1768
1838
|
}
|
|
1769
1839
|
}
|
|
1770
1840
|
if (!cancelled) {
|
|
@@ -1780,24 +1850,24 @@ function DepositAddressStep({
|
|
|
1780
1850
|
const handleNotificationComplete = _react.useCallback.call(void 0,
|
|
1781
1851
|
(txHash, destinationTxHash, context) => {
|
|
1782
1852
|
isTrackingRef.current = false;
|
|
1783
|
-
_optionalChain([onDepositCompleteRef, 'access',
|
|
1853
|
+
_optionalChain([onDepositCompleteRef, 'access', _75 => _75.current, 'optionalCall', _76 => _76(txHash, destinationTxHash, context)]);
|
|
1784
1854
|
},
|
|
1785
1855
|
[]
|
|
1786
1856
|
);
|
|
1787
1857
|
const handleNotificationFailed = _react.useCallback.call(void 0,
|
|
1788
1858
|
(txHash, error) => {
|
|
1789
1859
|
isTrackingRef.current = false;
|
|
1790
|
-
_optionalChain([onDepositFailedRef, 'access',
|
|
1860
|
+
_optionalChain([onDepositFailedRef, 'access', _77 => _77.current, 'optionalCall', _78 => _78(txHash, error)]);
|
|
1791
1861
|
},
|
|
1792
1862
|
[]
|
|
1793
1863
|
);
|
|
1794
1864
|
const handleNotificationDismiss = _react.useCallback.call(void 0, (id) => {
|
|
1795
1865
|
setNotifications((prev) => prev.filter((n) => n.id !== id));
|
|
1796
1866
|
}, []);
|
|
1797
|
-
const qrIconSrc =
|
|
1867
|
+
const qrIconSrc = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, sourceChainId);
|
|
1798
1868
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen rs-step--with-notifications", children: [
|
|
1799
1869
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body", children: [
|
|
1800
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1870
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TransferCryptoIcon, {}), title: "Transfer crypto" }),
|
|
1801
1871
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-deposit-address-selectors", children: [
|
|
1802
1872
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-deposit-address-dropdown", ref: chainDropdownRef, children: [
|
|
1803
1873
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-deposit-address-dropdown-label", children: "Supported chain" }),
|
|
@@ -1812,16 +1882,16 @@ function DepositAddressStep({
|
|
|
1812
1882
|
setTokenDropdownOpen(false);
|
|
1813
1883
|
},
|
|
1814
1884
|
children: [
|
|
1815
|
-
|
|
1885
|
+
_chunkPUMTR35Ecjs.getChainIcon.call(void 0, sourceChainId) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1816
1886
|
"img",
|
|
1817
1887
|
{
|
|
1818
|
-
src:
|
|
1888
|
+
src: _chunkPUMTR35Ecjs.getChainIcon.call(void 0, sourceChainId),
|
|
1819
1889
|
alt: "",
|
|
1820
1890
|
className: "rs-deposit-address-dropdown-icon"
|
|
1821
1891
|
}
|
|
1822
1892
|
),
|
|
1823
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children:
|
|
1824
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1893
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: chainLabel(sourceChainId) }),
|
|
1894
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronDownIcon, { className: "rs-deposit-address-dropdown-chevron" })
|
|
1825
1895
|
]
|
|
1826
1896
|
}
|
|
1827
1897
|
),
|
|
@@ -1832,15 +1902,15 @@ function DepositAddressStep({
|
|
|
1832
1902
|
className: `rs-deposit-address-dropdown-item ${chainId === sourceChainId ? "rs-deposit-address-dropdown-item--active" : ""}`,
|
|
1833
1903
|
onClick: () => handleSelectChain(chainId),
|
|
1834
1904
|
children: [
|
|
1835
|
-
|
|
1905
|
+
_chunkPUMTR35Ecjs.getChainIcon.call(void 0, chainId) && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1836
1906
|
"img",
|
|
1837
1907
|
{
|
|
1838
|
-
src:
|
|
1908
|
+
src: _chunkPUMTR35Ecjs.getChainIcon.call(void 0, chainId),
|
|
1839
1909
|
alt: "",
|
|
1840
1910
|
className: "rs-deposit-address-dropdown-icon"
|
|
1841
1911
|
}
|
|
1842
1912
|
),
|
|
1843
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children:
|
|
1913
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: chainLabel(chainId) })
|
|
1844
1914
|
]
|
|
1845
1915
|
},
|
|
1846
1916
|
String(chainId)
|
|
@@ -1851,9 +1921,9 @@ function DepositAddressStep({
|
|
|
1851
1921
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Supported token" }),
|
|
1852
1922
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-deposit-address-min", children: [
|
|
1853
1923
|
"Min.$",
|
|
1854
|
-
(targetChain ===
|
|
1855
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1856
|
-
|
|
1924
|
+
(targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID || isHyperCore ? Math.max(_chunkPUMTR35Ecjs.HYPERCORE_MIN_DEPOSIT_USD, _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _79 => _79.minDepositUsd]), () => ( 0))) : _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _80 => _80.minDepositUsd]), () => ( 0.1))).toFixed(2),
|
|
1925
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Tooltip, { content: "Minimum deposit amount required for the selected chain.", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1926
|
+
_chunkIRI34U6Ncjs.InfoIcon,
|
|
1857
1927
|
{
|
|
1858
1928
|
className: "rs-deposit-address-min-icon",
|
|
1859
1929
|
"aria-hidden": "true"
|
|
@@ -1872,16 +1942,9 @@ function DepositAddressStep({
|
|
|
1872
1942
|
setChainDropdownOpen(false);
|
|
1873
1943
|
},
|
|
1874
1944
|
children: [
|
|
1875
|
-
|
|
1876
|
-
"img",
|
|
1877
|
-
{
|
|
1878
|
-
src: _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, sourceTokenSymbol),
|
|
1879
|
-
alt: "",
|
|
1880
|
-
className: "rs-deposit-address-dropdown-icon"
|
|
1881
|
-
}
|
|
1882
|
-
),
|
|
1945
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TokenGlyph, { symbol: sourceTokenSymbol }),
|
|
1883
1946
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: sourceTokenSymbol }),
|
|
1884
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1947
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronDownIcon, { className: "rs-deposit-address-dropdown-chevron" })
|
|
1885
1948
|
]
|
|
1886
1949
|
}
|
|
1887
1950
|
),
|
|
@@ -1895,14 +1958,7 @@ function DepositAddressStep({
|
|
|
1895
1958
|
setTokenDropdownOpen(false);
|
|
1896
1959
|
},
|
|
1897
1960
|
children: [
|
|
1898
|
-
|
|
1899
|
-
"img",
|
|
1900
|
-
{
|
|
1901
|
-
src: _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, symbol),
|
|
1902
|
-
alt: "",
|
|
1903
|
-
className: "rs-deposit-address-dropdown-icon"
|
|
1904
|
-
}
|
|
1905
|
-
),
|
|
1961
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, TokenGlyph, { symbol }),
|
|
1906
1962
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: symbol })
|
|
1907
1963
|
]
|
|
1908
1964
|
},
|
|
@@ -1932,7 +1988,7 @@ function DepositAddressStep({
|
|
|
1932
1988
|
className: "rs-deposit-address-copy",
|
|
1933
1989
|
onClick: handleCopy,
|
|
1934
1990
|
children: [
|
|
1935
|
-
copied ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1991
|
+
copied ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CheckIcon, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CopyIcon, {}),
|
|
1936
1992
|
copied ? "Copied!" : "Copy address"
|
|
1937
1993
|
]
|
|
1938
1994
|
}
|
|
@@ -1940,7 +1996,7 @@ function DepositAddressStep({
|
|
|
1940
1996
|
]
|
|
1941
1997
|
}
|
|
1942
1998
|
),
|
|
1943
|
-
targetChain ===
|
|
1999
|
+
targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "warning", children: "HyperCore's first deposit to a new account includes a ~1 USDC activation fee \u2014 send at least 1 USDC or it will fail." }),
|
|
1944
2000
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
1945
2001
|
"div",
|
|
1946
2002
|
{
|
|
@@ -1958,16 +2014,16 @@ function DepositAddressStep({
|
|
|
1958
2014
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-label", children: "Price impact" }),
|
|
1959
2015
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-label", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { children: "0.00%" }) }),
|
|
1960
2016
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1961
|
-
|
|
2017
|
+
_chunkIRI34U6Ncjs.Tooltip,
|
|
1962
2018
|
{
|
|
1963
2019
|
className: "rs-price-impact-info",
|
|
1964
2020
|
content: "Price impact is the difference between expected and execution price, due to trade size and liquidity.",
|
|
1965
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2021
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.InfoIcon, { "aria-hidden": "true" })
|
|
1966
2022
|
}
|
|
1967
2023
|
)
|
|
1968
2024
|
] }),
|
|
1969
2025
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1970
|
-
|
|
2026
|
+
_chunkIRI34U6Ncjs.ChevronDownIcon,
|
|
1971
2027
|
{
|
|
1972
2028
|
className: "rs-price-impact-chevron",
|
|
1973
2029
|
"aria-hidden": "true"
|
|
@@ -1978,29 +2034,29 @@ function DepositAddressStep({
|
|
|
1978
2034
|
),
|
|
1979
2035
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-price-impact-panel", children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-price-impact-panel-inner", children: [
|
|
1980
2036
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-price-impact-row", children: [
|
|
1981
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-row-icon", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2037
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-row-icon", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PercentIcon, {}) }),
|
|
1982
2038
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-price-impact-label", children: [
|
|
1983
2039
|
"Max slippage: ",
|
|
1984
2040
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { children: "0.2%" })
|
|
1985
2041
|
] }),
|
|
1986
2042
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
1987
|
-
|
|
2043
|
+
_chunkIRI34U6Ncjs.Tooltip,
|
|
1988
2044
|
{
|
|
1989
2045
|
className: "rs-price-impact-info",
|
|
1990
2046
|
content: "Slippage accounts for price changes during execution. Slippage is adjusted per pair to ensure reliable execution.",
|
|
1991
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2047
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.InfoIcon, { "aria-hidden": "true" })
|
|
1992
2048
|
}
|
|
1993
2049
|
)
|
|
1994
2050
|
] }),
|
|
1995
2051
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-price-impact-row", children: [
|
|
1996
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-row-icon", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2052
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-row-icon", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ClockIcon, {}) }),
|
|
1997
2053
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-price-impact-label", children: [
|
|
1998
2054
|
"Processing time: ",
|
|
1999
2055
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { children: "< 1 min" })
|
|
2000
2056
|
] })
|
|
2001
2057
|
] }),
|
|
2002
2058
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-price-impact-row", children: [
|
|
2003
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-row-icon", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2059
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-row-icon", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PlusCircleIcon, {}) }),
|
|
2004
2060
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-price-impact-label", children: [
|
|
2005
2061
|
"Max deposit:",
|
|
2006
2062
|
" ",
|
|
@@ -2031,7 +2087,7 @@ function DepositAddressStep({
|
|
|
2031
2087
|
},
|
|
2032
2088
|
deposit.id
|
|
2033
2089
|
)) }),
|
|
2034
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2090
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
2035
2091
|
] });
|
|
2036
2092
|
}
|
|
2037
2093
|
DepositAddressStep.displayName = "DepositAddressStep";
|
|
@@ -2079,7 +2135,7 @@ function FinalisingDepositStep() {
|
|
|
2079
2135
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "p", { className: "rs-finalising-subtitle", children: "We are depositing your funds to the application." })
|
|
2080
2136
|
] })
|
|
2081
2137
|
] }),
|
|
2082
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2138
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
2083
2139
|
] });
|
|
2084
2140
|
}
|
|
2085
2141
|
FinalisingDepositStep.displayName = "FinalisingDepositStep";
|
|
@@ -2109,7 +2165,7 @@ function SwappedOrderTracker({
|
|
|
2109
2165
|
];
|
|
2110
2166
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen rs-swapped-tracker", children: [
|
|
2111
2167
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
2112
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2168
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.HandCoinsIcon, {}), title }),
|
|
2113
2169
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "ol", { className: "rs-swapped-tracker-steps", children: labels.map((label, idx) => {
|
|
2114
2170
|
const status = stepStates[idx];
|
|
2115
2171
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
@@ -2123,7 +2179,7 @@ function SwappedOrderTracker({
|
|
|
2123
2179
|
{
|
|
2124
2180
|
className: "rs-swapped-tracker-step-marker",
|
|
2125
2181
|
"aria-hidden": "true",
|
|
2126
|
-
children: status === "complete" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2182
|
+
children: status === "complete" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CheckIcon, {}) : status === "failed" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CloseIcon, {}) : status === "active" ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Spinner, {}) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2127
2183
|
"svg",
|
|
2128
2184
|
{
|
|
2129
2185
|
className: "rs-swapped-tracker-step-ring",
|
|
@@ -2158,7 +2214,7 @@ function SwappedOrderTracker({
|
|
|
2158
2214
|
}
|
|
2159
2215
|
)
|
|
2160
2216
|
] }),
|
|
2161
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2217
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
2162
2218
|
] });
|
|
2163
2219
|
}
|
|
2164
2220
|
function formatTrackerAmount(amount) {
|
|
@@ -2176,6 +2232,7 @@ var DEPOSIT_POLL_INTERVAL_MS = 2e3;
|
|
|
2176
2232
|
var DEPOSIT_POLL_FAST_INITIAL_DELAY_MS = 1e3;
|
|
2177
2233
|
var DEPOSIT_POLL_FAST_INTERVAL_MS = 500;
|
|
2178
2234
|
var IFRAME_LOAD_TIMEOUT_MS = 15e3;
|
|
2235
|
+
var SWAPPED_SUCCESS_HANDOFF_DELAY_MS = 1400;
|
|
2179
2236
|
var SWAPPED_IFRAME_ORIGINS = new Set(SWAPPED_ORIGINS);
|
|
2180
2237
|
var SWAPPED_TERMINAL_STATUSES = /* @__PURE__ */ new Set([
|
|
2181
2238
|
"order_completed",
|
|
@@ -2244,7 +2301,8 @@ function SwappedIframeStep({
|
|
|
2244
2301
|
onSwappedFailed,
|
|
2245
2302
|
onClose,
|
|
2246
2303
|
onGoBack,
|
|
2247
|
-
onError
|
|
2304
|
+
onError,
|
|
2305
|
+
onImmersiveChange
|
|
2248
2306
|
}) {
|
|
2249
2307
|
const [widgetUrl, setWidgetUrl] = _react.useState.call(void 0, null);
|
|
2250
2308
|
const [loadError, setLoadError] = _react.useState.call(void 0, null);
|
|
@@ -2256,6 +2314,7 @@ function SwappedIframeStep({
|
|
|
2256
2314
|
const iframeRef = _react.useRef.call(void 0, null);
|
|
2257
2315
|
const completeFiredRef = _react.useRef.call(void 0, false);
|
|
2258
2316
|
const failedFiredRef = _react.useRef.call(void 0, false);
|
|
2317
|
+
const completeTimeoutRef = _react.useRef.call(void 0, null);
|
|
2259
2318
|
const expectedOrderUuidRef = _react.useRef.call(void 0, null);
|
|
2260
2319
|
const expectedExternalCustomerIdRef = _react.useRef.call(void 0, null);
|
|
2261
2320
|
const baselineDepositTxHashRef = _react.useRef.call(void 0, void 0);
|
|
@@ -2272,6 +2331,8 @@ function SwappedIframeStep({
|
|
|
2272
2331
|
onErrorRef.current = onError;
|
|
2273
2332
|
const onGoBackRef = _react.useRef.call(void 0, onGoBack);
|
|
2274
2333
|
onGoBackRef.current = onGoBack;
|
|
2334
|
+
const onImmersiveChangeRef = _react.useRef.call(void 0, onImmersiveChange);
|
|
2335
|
+
onImmersiveChangeRef.current = onImmersiveChange;
|
|
2275
2336
|
const loadUrlRef = _react.useRef.call(void 0, loadUrl);
|
|
2276
2337
|
loadUrlRef.current = loadUrl;
|
|
2277
2338
|
_react.useEffect.call(void 0, () => {
|
|
@@ -2282,6 +2343,10 @@ function SwappedIframeStep({
|
|
|
2282
2343
|
setOrderState(null);
|
|
2283
2344
|
setLatestEvent(null);
|
|
2284
2345
|
setPhase("iframe");
|
|
2346
|
+
if (completeTimeoutRef.current !== null) {
|
|
2347
|
+
clearTimeout(completeTimeoutRef.current);
|
|
2348
|
+
completeTimeoutRef.current = null;
|
|
2349
|
+
}
|
|
2285
2350
|
expectedOrderUuidRef.current = null;
|
|
2286
2351
|
expectedExternalCustomerIdRef.current = null;
|
|
2287
2352
|
completeFiredRef.current = false;
|
|
@@ -2299,10 +2364,14 @@ function SwappedIframeStep({
|
|
|
2299
2364
|
if (cancelled) return;
|
|
2300
2365
|
const message = err instanceof Error ? err.message : loadErrorFallback;
|
|
2301
2366
|
setLoadError(message);
|
|
2302
|
-
_optionalChain([onErrorRef, 'access',
|
|
2367
|
+
_optionalChain([onErrorRef, 'access', _81 => _81.current, 'optionalCall', _82 => _82(message, loadErrorCode)]);
|
|
2303
2368
|
});
|
|
2304
2369
|
return () => {
|
|
2305
2370
|
cancelled = true;
|
|
2371
|
+
if (completeTimeoutRef.current !== null) {
|
|
2372
|
+
clearTimeout(completeTimeoutRef.current);
|
|
2373
|
+
completeTimeoutRef.current = null;
|
|
2374
|
+
}
|
|
2306
2375
|
};
|
|
2307
2376
|
}, [service, smartAccount, retryToken, loadErrorCode, loadErrorFallback]);
|
|
2308
2377
|
_react.useEffect.call(void 0, () => {
|
|
@@ -2345,10 +2414,10 @@ function SwappedIframeStep({
|
|
|
2345
2414
|
const status = await service.fetchLatestStatus(smartAccount);
|
|
2346
2415
|
if (cancelled) return;
|
|
2347
2416
|
const event = status.lastEvent;
|
|
2348
|
-
const eventTxHash =
|
|
2417
|
+
const eventTxHash = _chunkIRI34U6Ncjs.isDepositEvent.call(void 0, event) ? _nullishCoalesce(_chunkIRI34U6Ncjs.getEventTxHash.call(void 0, event), () => ( null)) : null;
|
|
2349
2418
|
if (baselineDepositTxHashRef.current === void 0) {
|
|
2350
2419
|
baselineDepositTxHashRef.current = eventTxHash;
|
|
2351
|
-
} else if (eventTxHash && (!baselineDepositTxHashRef.current || !
|
|
2420
|
+
} else if (eventTxHash && (!baselineDepositTxHashRef.current || !_chunkIRI34U6Ncjs.txRefsMatch.call(void 0, eventTxHash, baselineDepositTxHashRef.current))) {
|
|
2352
2421
|
currentDepositTxHashRef.current = eventTxHash;
|
|
2353
2422
|
setLatestEvent(_nullishCoalesce(event, () => ( null)));
|
|
2354
2423
|
}
|
|
@@ -2373,15 +2442,15 @@ function SwappedIframeStep({
|
|
|
2373
2442
|
}, [service, smartAccount]);
|
|
2374
2443
|
_react.useEffect.call(void 0, () => {
|
|
2375
2444
|
if (fastDepositPollEnabledRef.current) return;
|
|
2376
|
-
const status = _optionalChain([orderState, 'optionalAccess',
|
|
2445
|
+
const status = _optionalChain([orderState, 'optionalAccess', _83 => _83.status]);
|
|
2377
2446
|
if (!status || !SWAPPED_TERMINAL_STATUSES.has(status)) return;
|
|
2378
2447
|
fastDepositPollEnabledRef.current = true;
|
|
2379
|
-
_optionalChain([rescheduleDepositPollRef, 'access',
|
|
2448
|
+
_optionalChain([rescheduleDepositPollRef, 'access', _84 => _84.current, 'optionalCall', _85 => _85(DEPOSIT_POLL_FAST_INITIAL_DELAY_MS)]);
|
|
2380
2449
|
}, [orderState]);
|
|
2381
2450
|
_react.useEffect.call(void 0, () => {
|
|
2382
2451
|
function onMessage(e) {
|
|
2383
2452
|
if (!SWAPPED_IFRAME_ORIGINS.has(e.origin)) return;
|
|
2384
|
-
if (e.source !== _optionalChain([iframeRef, 'access',
|
|
2453
|
+
if (e.source !== _optionalChain([iframeRef, 'access', _86 => _86.current, 'optionalAccess', _87 => _87.contentWindow])) return;
|
|
2385
2454
|
if (isSwappedGoBackMessage(e.data)) {
|
|
2386
2455
|
onGoBackRef.current();
|
|
2387
2456
|
return;
|
|
@@ -2396,38 +2465,39 @@ function SwappedIframeStep({
|
|
|
2396
2465
|
setOrderState((prev) => ({
|
|
2397
2466
|
// Normalise to the uuid the backend poll also keys on, so orderState
|
|
2398
2467
|
// is consistent regardless of which path set it.
|
|
2399
|
-
orderId: _nullishCoalesce(_nullishCoalesce(expectedOrderUuidRef.current, () => ( _optionalChain([prev, 'optionalAccess',
|
|
2468
|
+
orderId: _nullishCoalesce(_nullishCoalesce(expectedOrderUuidRef.current, () => ( _optionalChain([prev, 'optionalAccess', _88 => _88.orderId]))), () => ( ext)),
|
|
2400
2469
|
status: parsed.status,
|
|
2401
|
-
orderCrypto: _nullishCoalesce(_nullishCoalesce(parsed.orderCrypto, () => ( _optionalChain([prev, 'optionalAccess',
|
|
2402
|
-
orderCryptoAmount: _nullishCoalesce(_nullishCoalesce(parsed.orderCryptoAmount, () => ( _optionalChain([prev, 'optionalAccess',
|
|
2403
|
-
transactionId: _nullishCoalesce(_nullishCoalesce(parsed.transactionId, () => ( _optionalChain([prev, 'optionalAccess',
|
|
2470
|
+
orderCrypto: _nullishCoalesce(_nullishCoalesce(parsed.orderCrypto, () => ( _optionalChain([prev, 'optionalAccess', _89 => _89.orderCrypto]))), () => ( null)),
|
|
2471
|
+
orderCryptoAmount: _nullishCoalesce(_nullishCoalesce(parsed.orderCryptoAmount, () => ( _optionalChain([prev, 'optionalAccess', _90 => _90.orderCryptoAmount]))), () => ( null)),
|
|
2472
|
+
transactionId: _nullishCoalesce(_nullishCoalesce(parsed.transactionId, () => ( _optionalChain([prev, 'optionalAccess', _91 => _91.transactionId]))), () => ( null)),
|
|
2404
2473
|
receivedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
2405
|
-
paidAmountUsd: _nullishCoalesce(_optionalChain([prev, 'optionalAccess',
|
|
2406
|
-
paidAmountEur: _nullishCoalesce(_optionalChain([prev, 'optionalAccess',
|
|
2407
|
-
onrampFeeUsd: _nullishCoalesce(_optionalChain([prev, 'optionalAccess',
|
|
2408
|
-
paymentMethod: _nullishCoalesce(_optionalChain([prev, 'optionalAccess',
|
|
2474
|
+
paidAmountUsd: _nullishCoalesce(_optionalChain([prev, 'optionalAccess', _92 => _92.paidAmountUsd]), () => ( null)),
|
|
2475
|
+
paidAmountEur: _nullishCoalesce(_optionalChain([prev, 'optionalAccess', _93 => _93.paidAmountEur]), () => ( null)),
|
|
2476
|
+
onrampFeeUsd: _nullishCoalesce(_optionalChain([prev, 'optionalAccess', _94 => _94.onrampFeeUsd]), () => ( null)),
|
|
2477
|
+
paymentMethod: _nullishCoalesce(_optionalChain([prev, 'optionalAccess', _95 => _95.paymentMethod]), () => ( null))
|
|
2409
2478
|
}));
|
|
2410
2479
|
}
|
|
2411
2480
|
window.addEventListener("message", onMessage);
|
|
2412
2481
|
return () => window.removeEventListener("message", onMessage);
|
|
2413
2482
|
}, []);
|
|
2414
2483
|
_react.useEffect.call(void 0, () => {
|
|
2415
|
-
|
|
2484
|
+
const swappedProvesLive = orderState !== null && !(variant === "fiat" && orderState.status === "payment_pending");
|
|
2485
|
+
if (phase === "iframe" && (swappedProvesLive || latestEvent !== null)) {
|
|
2416
2486
|
setPhase("tracker");
|
|
2417
2487
|
}
|
|
2418
|
-
}, [phase, orderState, latestEvent]);
|
|
2488
|
+
}, [phase, orderState, latestEvent, variant]);
|
|
2419
2489
|
const stepStates = _react.useMemo.call(void 0,
|
|
2420
|
-
() => deriveStepStates(_nullishCoalesce(_optionalChain([orderState, 'optionalAccess',
|
|
2490
|
+
() => deriveStepStates(_nullishCoalesce(_optionalChain([orderState, 'optionalAccess', _96 => _96.status]), () => ( null)), latestEvent),
|
|
2421
2491
|
[orderState, latestEvent]
|
|
2422
2492
|
);
|
|
2423
2493
|
const terminalState = _react.useMemo.call(void 0, () => {
|
|
2424
|
-
if (
|
|
2494
|
+
if (_chunkIRI34U6Ncjs.isFailedEvent.call(void 0, _nullishCoalesce(latestEvent, () => ( void 0)))) {
|
|
2425
2495
|
return {
|
|
2426
2496
|
kind: "failed",
|
|
2427
|
-
message:
|
|
2497
|
+
message: _chunkIRI34U6Ncjs.failureMessageForEvent.call(void 0, _nullishCoalesce(latestEvent, () => ( void 0)))
|
|
2428
2498
|
};
|
|
2429
2499
|
}
|
|
2430
|
-
if (_optionalChain([orderState, 'optionalAccess',
|
|
2500
|
+
if (_optionalChain([orderState, 'optionalAccess', _97 => _97.status]) === "order_cancelled") {
|
|
2431
2501
|
const banner = bannerForStatus("order_cancelled", {});
|
|
2432
2502
|
return { kind: "cancelled", message: _nullishCoalesce(banner.detail, () => ( banner.title)) };
|
|
2433
2503
|
}
|
|
@@ -2435,33 +2505,44 @@ function SwappedIframeStep({
|
|
|
2435
2505
|
}, [latestEvent, orderState, bannerForStatus]);
|
|
2436
2506
|
_react.useEffect.call(void 0, () => {
|
|
2437
2507
|
if (completeFiredRef.current || failedFiredRef.current) return;
|
|
2438
|
-
const t = _optionalChain([latestEvent, 'optionalAccess',
|
|
2508
|
+
const t = _optionalChain([latestEvent, 'optionalAccess', _98 => _98.type]);
|
|
2439
2509
|
const isSuccess = t === "bridge-complete";
|
|
2440
2510
|
if (!isSuccess) return;
|
|
2441
2511
|
const txHash = currentDepositTxHashRef.current;
|
|
2442
2512
|
if (!txHash) return;
|
|
2443
2513
|
completeFiredRef.current = true;
|
|
2444
|
-
|
|
2514
|
+
const info = {
|
|
2515
|
+
smartAccount,
|
|
2445
2516
|
txHash,
|
|
2446
|
-
orderCrypto: _nullishCoalesce(_optionalChain([orderState, 'optionalAccess',
|
|
2517
|
+
orderCrypto: _nullishCoalesce(_optionalChain([orderState, 'optionalAccess', _99 => _99.orderCrypto]), () => ( null)),
|
|
2447
2518
|
// Base-unit source amount from the deposit row/event, consistent with the
|
|
2448
2519
|
// wallet/QR path. ProcessingStep + onLifecycle expect base units.
|
|
2449
|
-
amount: _nullishCoalesce(
|
|
2520
|
+
amount: _nullishCoalesce(_chunkIRI34U6Ncjs.getEventSourceDetails.call(void 0, _nullishCoalesce(latestEvent, () => ( void 0))).amount, () => ( null)),
|
|
2521
|
+
expectedOrderUuid: expectedOrderUuidRef.current,
|
|
2450
2522
|
initialEvent: _nullishCoalesce(latestEvent, () => ( void 0))
|
|
2451
|
-
}
|
|
2452
|
-
|
|
2523
|
+
};
|
|
2524
|
+
completeTimeoutRef.current = setTimeout(() => {
|
|
2525
|
+
completeTimeoutRef.current = null;
|
|
2526
|
+
onSwappedCompleteRef.current(info);
|
|
2527
|
+
}, SWAPPED_SUCCESS_HANDOFF_DELAY_MS);
|
|
2528
|
+
}, [latestEvent, orderState, smartAccount]);
|
|
2453
2529
|
_react.useEffect.call(void 0, () => {
|
|
2454
2530
|
if (failedFiredRef.current || completeFiredRef.current) return;
|
|
2455
|
-
if (!
|
|
2531
|
+
if (!_chunkIRI34U6Ncjs.isFailedEvent.call(void 0, _nullishCoalesce(latestEvent, () => ( void 0)))) return;
|
|
2456
2532
|
const txHash = currentDepositTxHashRef.current;
|
|
2457
2533
|
if (!txHash) return;
|
|
2458
2534
|
failedFiredRef.current = true;
|
|
2459
2535
|
setPhase("tracker");
|
|
2460
|
-
_optionalChain([onSwappedFailedRef, 'access',
|
|
2536
|
+
_optionalChain([onSwappedFailedRef, 'access', _100 => _100.current, 'optionalCall', _101 => _101(
|
|
2461
2537
|
txHash,
|
|
2462
|
-
|
|
2538
|
+
_chunkIRI34U6Ncjs.failureMessageForEvent.call(void 0, _nullishCoalesce(latestEvent, () => ( void 0)))
|
|
2463
2539
|
)]);
|
|
2464
2540
|
}, [latestEvent]);
|
|
2541
|
+
const immersive = variant === "fiat" && phase === "iframe" && !loadError;
|
|
2542
|
+
_react.useEffect.call(void 0, () => {
|
|
2543
|
+
_optionalChain([onImmersiveChangeRef, 'access', _102 => _102.current, 'optionalCall', _103 => _103(immersive)]);
|
|
2544
|
+
}, [immersive]);
|
|
2545
|
+
_react.useEffect.call(void 0, () => () => _optionalChain([onImmersiveChangeRef, 'access', _104 => _104.current, 'optionalCall', _105 => _105(false)]), []);
|
|
2465
2546
|
if (phase === "tracker") {
|
|
2466
2547
|
const paymentReceived = stepStates[0] === "complete";
|
|
2467
2548
|
if (variant === "connect" && !terminalState && paymentReceived) {
|
|
@@ -2470,8 +2551,8 @@ function SwappedIframeStep({
|
|
|
2470
2551
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2471
2552
|
SwappedOrderTracker,
|
|
2472
2553
|
{
|
|
2473
|
-
amount: _nullishCoalesce(_optionalChain([orderState, 'optionalAccess',
|
|
2474
|
-
currency: _nullishCoalesce(_optionalChain([orderState, 'optionalAccess',
|
|
2554
|
+
amount: _nullishCoalesce(_optionalChain([orderState, 'optionalAccess', _106 => _106.orderCryptoAmount]), () => ( null)),
|
|
2555
|
+
currency: _nullishCoalesce(_optionalChain([orderState, 'optionalAccess', _107 => _107.orderCrypto]), () => ( "USDC")),
|
|
2475
2556
|
stepStates,
|
|
2476
2557
|
terminal: terminalState,
|
|
2477
2558
|
onRetry: () => setRetryToken((n) => n + 1),
|
|
@@ -2493,7 +2574,7 @@ function SwappedIframeStep({
|
|
|
2493
2574
|
}
|
|
2494
2575
|
)
|
|
2495
2576
|
] }),
|
|
2496
|
-
!loadError && !iframeLoaded && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-fiat-onramp-loading", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2577
|
+
!loadError && !iframeLoaded && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-fiat-onramp-loading", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Spinner, {}) }),
|
|
2497
2578
|
widgetUrl && !loadError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2498
2579
|
"iframe",
|
|
2499
2580
|
{
|
|
@@ -2508,21 +2589,21 @@ function SwappedIframeStep({
|
|
|
2508
2589
|
retryToken
|
|
2509
2590
|
)
|
|
2510
2591
|
] }) }),
|
|
2511
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2592
|
+
loadError && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
2512
2593
|
] });
|
|
2513
2594
|
}
|
|
2514
2595
|
function deriveStepStates(swappedStatus, latestEvent) {
|
|
2515
|
-
if (
|
|
2596
|
+
if (_chunkIRI34U6Ncjs.isFailedEvent.call(void 0, _nullishCoalesce(latestEvent, () => ( void 0)))) {
|
|
2516
2597
|
return ["complete", "complete", "failed", "pending"];
|
|
2517
2598
|
}
|
|
2518
2599
|
if (swappedStatus === "order_cancelled") {
|
|
2519
2600
|
return ["failed", "pending", "pending", "pending"];
|
|
2520
2601
|
}
|
|
2521
2602
|
const step1Complete = swappedStatus === "order_completed" || swappedStatus === "order_broadcasted";
|
|
2522
|
-
const step2Complete = latestEvent !== null;
|
|
2523
|
-
const step3Complete = _optionalChain([latestEvent, 'optionalAccess',
|
|
2603
|
+
const step2Complete = latestEvent !== null || swappedStatus === "order_broadcasted";
|
|
2604
|
+
const step3Complete = _optionalChain([latestEvent, 'optionalAccess', _108 => _108.type]) === "bridge-complete";
|
|
2524
2605
|
if (step3Complete) {
|
|
2525
|
-
return ["complete", "complete", "complete", "
|
|
2606
|
+
return ["complete", "complete", "complete", "complete"];
|
|
2526
2607
|
}
|
|
2527
2608
|
if (step2Complete) {
|
|
2528
2609
|
return ["complete", "complete", "active", "pending"];
|
|
@@ -2571,10 +2652,11 @@ function FiatOnrampStep({
|
|
|
2571
2652
|
onSwappedFailed,
|
|
2572
2653
|
onClose,
|
|
2573
2654
|
onGoBack,
|
|
2574
|
-
onError
|
|
2655
|
+
onError,
|
|
2656
|
+
onImmersiveChange
|
|
2575
2657
|
}) {
|
|
2576
2658
|
const loadUrl = _react.useCallback.call(void 0, async () => {
|
|
2577
|
-
const prefetched = _optionalChain([consumePrefetchedUrl, 'optionalCall',
|
|
2659
|
+
const prefetched = _optionalChain([consumePrefetchedUrl, 'optionalCall', _109 => _109(smartAccount, paymentMethod)]);
|
|
2578
2660
|
if (prefetched) {
|
|
2579
2661
|
try {
|
|
2580
2662
|
const cached = await prefetched;
|
|
@@ -2602,7 +2684,8 @@ function FiatOnrampStep({
|
|
|
2602
2684
|
onSwappedFailed,
|
|
2603
2685
|
onClose,
|
|
2604
2686
|
onGoBack,
|
|
2605
|
-
onError
|
|
2687
|
+
onError,
|
|
2688
|
+
onImmersiveChange
|
|
2606
2689
|
}
|
|
2607
2690
|
);
|
|
2608
2691
|
}
|
|
@@ -2648,7 +2731,8 @@ function ExchangeConnectStep({
|
|
|
2648
2731
|
onSwappedFailed,
|
|
2649
2732
|
onClose,
|
|
2650
2733
|
onGoBack,
|
|
2651
|
-
onError
|
|
2734
|
+
onError,
|
|
2735
|
+
onImmersiveChange
|
|
2652
2736
|
}) {
|
|
2653
2737
|
const loadUrl = _react.useCallback.call(void 0, async () => {
|
|
2654
2738
|
const res = await service.getSwappedConnectUrl({
|
|
@@ -2672,7 +2756,8 @@ function ExchangeConnectStep({
|
|
|
2672
2756
|
onSwappedFailed,
|
|
2673
2757
|
onClose,
|
|
2674
2758
|
onGoBack,
|
|
2675
|
-
onError
|
|
2759
|
+
onError,
|
|
2760
|
+
onImmersiveChange
|
|
2676
2761
|
}
|
|
2677
2762
|
);
|
|
2678
2763
|
}
|
|
@@ -2684,7 +2769,7 @@ ExchangeConnectStep.displayName = "ExchangeConnectStep";
|
|
|
2684
2769
|
function ExchangeLogo({ exchange }) {
|
|
2685
2770
|
const [failed, setFailed] = _react.useState.call(void 0, false);
|
|
2686
2771
|
if (!exchange.logoUrl || failed) {
|
|
2687
|
-
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2772
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BankIcon, {});
|
|
2688
2773
|
}
|
|
2689
2774
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2690
2775
|
"img",
|
|
@@ -2719,7 +2804,7 @@ function ExchangeSelectStep({
|
|
|
2719
2804
|
const message = err instanceof Error ? err.message : "Failed to load exchanges";
|
|
2720
2805
|
setExchanges([]);
|
|
2721
2806
|
setError(message);
|
|
2722
|
-
_optionalChain([onError, 'optionalCall',
|
|
2807
|
+
_optionalChain([onError, 'optionalCall', _110 => _110(message, "SWAPPED_CONNECT_EXCHANGES_FAILED")]);
|
|
2723
2808
|
}).finally(() => {
|
|
2724
2809
|
if (!cancelled) setLoading(false);
|
|
2725
2810
|
});
|
|
@@ -2730,14 +2815,14 @@ function ExchangeSelectStep({
|
|
|
2730
2815
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen rs-exchange-select", children: [
|
|
2731
2816
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
2732
2817
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2733
|
-
|
|
2818
|
+
_chunkIRI34U6Ncjs.BodyHeader,
|
|
2734
2819
|
{
|
|
2735
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2820
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.UnplugIcon, {}),
|
|
2736
2821
|
title: "Connect exchange",
|
|
2737
2822
|
subtitle: "Select an exchange to connect"
|
|
2738
2823
|
}
|
|
2739
2824
|
),
|
|
2740
|
-
loading && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-exchange-select-state", "aria-live": "polite", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2825
|
+
loading && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-exchange-select-state", "aria-live": "polite", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Spinner, {}) }),
|
|
2741
2826
|
!loading && error && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-exchange-select-state", "aria-live": "polite", children: [
|
|
2742
2827
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-exchange-select-state-title", children: "Couldn\u2019t load exchanges" }),
|
|
2743
2828
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -2763,7 +2848,7 @@ function ExchangeSelectStep({
|
|
|
2763
2848
|
)
|
|
2764
2849
|
] }),
|
|
2765
2850
|
!loading && !error && exchanges.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-exchange-grid", children: exchanges.map((exchange) => {
|
|
2766
|
-
const brand =
|
|
2851
|
+
const brand = _chunkIRI34U6Ncjs.getExchangeLogo.call(void 0, exchange.name, exchange.connection);
|
|
2767
2852
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
2768
2853
|
"button",
|
|
2769
2854
|
{
|
|
@@ -2786,7 +2871,7 @@ function ExchangeSelectStep({
|
|
|
2786
2871
|
);
|
|
2787
2872
|
}) })
|
|
2788
2873
|
] }),
|
|
2789
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2874
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
2790
2875
|
] });
|
|
2791
2876
|
}
|
|
2792
2877
|
ExchangeSelectStep.displayName = "ExchangeSelectStep";
|
|
@@ -2798,25 +2883,24 @@ function DepositAddressSkeleton({
|
|
|
2798
2883
|
uiConfig,
|
|
2799
2884
|
allowedRoutes
|
|
2800
2885
|
}) {
|
|
2801
|
-
const allowedChainSet = _optionalChain([allowedRoutes, 'optionalAccess',
|
|
2802
|
-
const allowedTokenSet = _optionalChain([allowedRoutes, 'optionalAccess',
|
|
2886
|
+
const allowedChainSet = _optionalChain([allowedRoutes, 'optionalAccess', _111 => _111.sourceChains]) ? new Set(allowedRoutes.sourceChains) : null;
|
|
2887
|
+
const allowedTokenSet = _optionalChain([allowedRoutes, 'optionalAccess', _112 => _112.sourceTokens]) ? new Set(allowedRoutes.sourceTokens.map((s) => s.toUpperCase())) : null;
|
|
2803
2888
|
const evmChainIds = (() => {
|
|
2804
|
-
const all =
|
|
2889
|
+
const all = _chunkPUMTR35Ecjs.getSupportedChainIds.call(void 0, );
|
|
2805
2890
|
return allowedChainSet ? all.filter((id) => allowedChainSet.has(id)) : all;
|
|
2806
2891
|
})();
|
|
2807
2892
|
const defaultChainId = evmChainIds.includes(BASE_CHAIN_ID) ? BASE_CHAIN_ID : evmChainIds[0];
|
|
2808
2893
|
const tokensForChain = (() => {
|
|
2809
|
-
const all =
|
|
2894
|
+
const all = _chunkPUMTR35Ecjs.getTargetTokenSymbolsForChain.call(void 0, defaultChainId);
|
|
2810
2895
|
return allowedTokenSet ? all.filter((s) => allowedTokenSet.has(s.toUpperCase())) : all;
|
|
2811
2896
|
})();
|
|
2812
2897
|
const defaultToken = tokensForChain.includes("USDC") ? "USDC" : _nullishCoalesce(tokensForChain[0], () => ( "USDC"));
|
|
2813
|
-
const chainName =
|
|
2814
|
-
const chainIcon =
|
|
2815
|
-
const tokenIcon = _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, defaultToken);
|
|
2898
|
+
const chainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, defaultChainId);
|
|
2899
|
+
const chainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, defaultChainId);
|
|
2816
2900
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", "aria-busy": "true", children: [
|
|
2817
2901
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-sr-only", role: "status", children: "Preparing deposit details\u2026" }),
|
|
2818
2902
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body", children: [
|
|
2819
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2903
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TransferCryptoIcon, {}), title: "Transfer crypto" }),
|
|
2820
2904
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-deposit-address-selectors", "aria-hidden": "true", children: [
|
|
2821
2905
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-deposit-address-dropdown", children: [
|
|
2822
2906
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-deposit-address-dropdown-label", children: "Supported chain" }),
|
|
@@ -2830,7 +2914,7 @@ function DepositAddressSkeleton({
|
|
|
2830
2914
|
}
|
|
2831
2915
|
),
|
|
2832
2916
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: chainName }),
|
|
2833
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2917
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronDownIcon, { className: "rs-deposit-address-dropdown-chevron" })
|
|
2834
2918
|
] })
|
|
2835
2919
|
] }),
|
|
2836
2920
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-deposit-address-dropdown", children: [
|
|
@@ -2838,9 +2922,9 @@ function DepositAddressSkeleton({
|
|
|
2838
2922
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Supported token" }),
|
|
2839
2923
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-deposit-address-min", children: [
|
|
2840
2924
|
"Min.$",
|
|
2841
|
-
(_nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess',
|
|
2842
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2843
|
-
|
|
2925
|
+
(_nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _113 => _113.minDepositUsd]), () => ( 0.1))).toFixed(2),
|
|
2926
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Tooltip, { content: "Minimum deposit amount required for the selected chain.", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2927
|
+
_chunkIRI34U6Ncjs.InfoIcon,
|
|
2844
2928
|
{
|
|
2845
2929
|
className: "rs-deposit-address-min-icon",
|
|
2846
2930
|
"aria-hidden": "true"
|
|
@@ -2849,16 +2933,15 @@ function DepositAddressSkeleton({
|
|
|
2849
2933
|
] })
|
|
2850
2934
|
] }),
|
|
2851
2935
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-deposit-address-dropdown-trigger", children: [
|
|
2852
|
-
|
|
2853
|
-
|
|
2936
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2937
|
+
_chunkIRI34U6Ncjs.TokenIcon,
|
|
2854
2938
|
{
|
|
2855
|
-
|
|
2856
|
-
alt: "",
|
|
2939
|
+
symbol: defaultToken,
|
|
2857
2940
|
className: "rs-deposit-address-dropdown-icon"
|
|
2858
2941
|
}
|
|
2859
2942
|
),
|
|
2860
2943
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: defaultToken }),
|
|
2861
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2944
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronDownIcon, { className: "rs-deposit-address-dropdown-chevron" })
|
|
2862
2945
|
] })
|
|
2863
2946
|
] })
|
|
2864
2947
|
] }),
|
|
@@ -2879,7 +2962,7 @@ function DepositAddressSkeleton({
|
|
|
2879
2962
|
disabled: true,
|
|
2880
2963
|
"aria-hidden": "true",
|
|
2881
2964
|
children: [
|
|
2882
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2965
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CopyIcon, {}),
|
|
2883
2966
|
"Copy address"
|
|
2884
2967
|
]
|
|
2885
2968
|
}
|
|
@@ -2892,16 +2975,16 @@ function DepositAddressSkeleton({
|
|
|
2892
2975
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-label", children: "Price impact" }),
|
|
2893
2976
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-price-impact-label", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "strong", { children: "0.00%" }) }),
|
|
2894
2977
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2895
|
-
|
|
2978
|
+
_chunkIRI34U6Ncjs.Tooltip,
|
|
2896
2979
|
{
|
|
2897
2980
|
className: "rs-price-impact-info",
|
|
2898
2981
|
content: "Price impact is the difference between expected and execution price, due to trade size and liquidity.",
|
|
2899
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2982
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.InfoIcon, { "aria-hidden": "true" })
|
|
2900
2983
|
}
|
|
2901
2984
|
)
|
|
2902
2985
|
] }),
|
|
2903
2986
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2904
|
-
|
|
2987
|
+
_chunkIRI34U6Ncjs.ChevronDownIcon,
|
|
2905
2988
|
{
|
|
2906
2989
|
className: "rs-price-impact-chevron",
|
|
2907
2990
|
"aria-hidden": "true"
|
|
@@ -2909,7 +2992,7 @@ function DepositAddressSkeleton({
|
|
|
2909
2992
|
)
|
|
2910
2993
|
] }) })
|
|
2911
2994
|
] }),
|
|
2912
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
2995
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
2913
2996
|
] });
|
|
2914
2997
|
}
|
|
2915
2998
|
DepositAddressSkeleton.displayName = "DepositAddressSkeleton";
|
|
@@ -2941,14 +3024,14 @@ function SolanaTokenSelectStep({
|
|
|
2941
3024
|
setError(null);
|
|
2942
3025
|
const portfolioBySymbol = {};
|
|
2943
3026
|
try {
|
|
2944
|
-
|
|
3027
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-token-select", "portfolio:request", {
|
|
2945
3028
|
solanaAddress
|
|
2946
3029
|
});
|
|
2947
3030
|
const portfolio = await service.fetchSolanaPortfolio(solanaAddress);
|
|
2948
3031
|
if (!active) return;
|
|
2949
3032
|
for (const t of portfolio.tokens) {
|
|
2950
3033
|
const symbol = t.symbol.toUpperCase();
|
|
2951
|
-
if (!
|
|
3034
|
+
if (!_chunkPUMTR35Ecjs.SOLANA_TOKENS.some((st) => st.symbol === symbol)) continue;
|
|
2952
3035
|
let parsed = 0n;
|
|
2953
3036
|
try {
|
|
2954
3037
|
parsed = BigInt(t.balance || "0");
|
|
@@ -2964,12 +3047,12 @@ function SolanaTokenSelectStep({
|
|
|
2964
3047
|
};
|
|
2965
3048
|
}
|
|
2966
3049
|
}
|
|
2967
|
-
|
|
3050
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-token-select", "portfolio:success", {
|
|
2968
3051
|
symbols: Object.keys(portfolioBySymbol)
|
|
2969
3052
|
});
|
|
2970
3053
|
} catch (err) {
|
|
2971
3054
|
if (!active) return;
|
|
2972
|
-
|
|
3055
|
+
_chunkIRI34U6Ncjs.debugError.call(void 0, debug, "solana-token-select", "portfolio:failure", err, {
|
|
2973
3056
|
solanaAddress
|
|
2974
3057
|
});
|
|
2975
3058
|
setError(
|
|
@@ -2980,7 +3063,7 @@ function SolanaTokenSelectStep({
|
|
|
2980
3063
|
return;
|
|
2981
3064
|
}
|
|
2982
3065
|
const results = [];
|
|
2983
|
-
for (const token of
|
|
3066
|
+
for (const token of _chunkPUMTR35Ecjs.SOLANA_TOKENS) {
|
|
2984
3067
|
const fromPortfolio = portfolioBySymbol[token.symbol];
|
|
2985
3068
|
if (fromPortfolio && fromPortfolio.balance > 0n) {
|
|
2986
3069
|
results.push({
|
|
@@ -2994,7 +3077,7 @@ function SolanaTokenSelectStep({
|
|
|
2994
3077
|
setTokenBalances(results);
|
|
2995
3078
|
setLoading(false);
|
|
2996
3079
|
const totalUsd = results.reduce((sum, r) => sum + r.balanceUsd, 0);
|
|
2997
|
-
_optionalChain([onTotalBalanceComputed, 'optionalCall',
|
|
3080
|
+
_optionalChain([onTotalBalanceComputed, 'optionalCall', _114 => _114(totalUsd)]);
|
|
2998
3081
|
}
|
|
2999
3082
|
void loadBalances();
|
|
3000
3083
|
return () => {
|
|
@@ -3016,30 +3099,30 @@ function SolanaTokenSelectStep({
|
|
|
3016
3099
|
const raw = _viem.formatUnits.call(void 0, entry.balance, entry.token.decimals);
|
|
3017
3100
|
const numeric = Number(raw);
|
|
3018
3101
|
if (!Number.isFinite(numeric)) return raw;
|
|
3019
|
-
return
|
|
3102
|
+
return _chunkIRI34U6Ncjs.tokenFormatter.format(numeric);
|
|
3020
3103
|
} catch (e22) {
|
|
3021
3104
|
return "--";
|
|
3022
3105
|
}
|
|
3023
3106
|
};
|
|
3024
|
-
const chainIcon =
|
|
3025
|
-
const chainName =
|
|
3107
|
+
const chainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, "solana");
|
|
3108
|
+
const chainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, "solana");
|
|
3026
3109
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
3027
3110
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body", children: [
|
|
3028
3111
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3029
|
-
|
|
3112
|
+
_chunkIRI34U6Ncjs.BodyHeader,
|
|
3030
3113
|
{
|
|
3031
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3114
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}),
|
|
3032
3115
|
title: "Your assets",
|
|
3033
3116
|
subtitle: "Select source assets to transfer"
|
|
3034
3117
|
}
|
|
3035
3118
|
),
|
|
3036
3119
|
loading && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-loading-state", style: { padding: "40px 12px" }, children: [
|
|
3037
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3120
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Spinner, { className: "rs-text-tertiary" }),
|
|
3038
3121
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-text-sm rs-text-tertiary", children: "Loading balances" })
|
|
3039
3122
|
] }),
|
|
3040
|
-
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3123
|
+
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: error }),
|
|
3041
3124
|
!loading && !error && rows.length === 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-empty-state", children: [
|
|
3042
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3125
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, { className: "rs-empty-icon" }),
|
|
3043
3126
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-empty-text", children: "No funds in connected wallet" }),
|
|
3044
3127
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-empty-address", children: [
|
|
3045
3128
|
solanaAddress.slice(0, 6),
|
|
@@ -3059,7 +3142,6 @@ function SolanaTokenSelectStep({
|
|
|
3059
3142
|
!loading && !error && rows.length > 0 && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-list", children: rows.map((entry) => {
|
|
3060
3143
|
const isSelected = selectedSymbol === entry.token.symbol;
|
|
3061
3144
|
const tokenAmount = formatBalance(entry);
|
|
3062
|
-
const tokenIcon = _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, entry.token.symbol);
|
|
3063
3145
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3064
3146
|
"button",
|
|
3065
3147
|
{
|
|
@@ -3070,7 +3152,13 @@ function SolanaTokenSelectStep({
|
|
|
3070
3152
|
children: [
|
|
3071
3153
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-info", children: [
|
|
3072
3154
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-icon-wrapper", children: [
|
|
3073
|
-
|
|
3155
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3156
|
+
_chunkIRI34U6Ncjs.TokenIcon,
|
|
3157
|
+
{
|
|
3158
|
+
symbol: entry.token.symbol,
|
|
3159
|
+
fallback: entry.token.symbol.slice(0, 4)
|
|
3160
|
+
}
|
|
3161
|
+
) }),
|
|
3074
3162
|
chainIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-chain-badge", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: chainIcon, alt: chainName }) })
|
|
3075
3163
|
] }),
|
|
3076
3164
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-text", children: [
|
|
@@ -3088,14 +3176,14 @@ function SolanaTokenSelectStep({
|
|
|
3088
3176
|
] })
|
|
3089
3177
|
] })
|
|
3090
3178
|
] }),
|
|
3091
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-balance", children: entry.balanceUsd > 0 ?
|
|
3179
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-balance", children: entry.balanceUsd > 0 ? _chunkIRI34U6Ncjs.currencyFormatter.format(entry.balanceUsd) : tokenAmount !== "--" ? `${tokenAmount} ${entry.token.symbol}` : "--" })
|
|
3092
3180
|
]
|
|
3093
3181
|
},
|
|
3094
3182
|
entry.token.symbol
|
|
3095
3183
|
);
|
|
3096
3184
|
}) }),
|
|
3097
3185
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3098
|
-
|
|
3186
|
+
_chunkIRI34U6Ncjs.Button,
|
|
3099
3187
|
{
|
|
3100
3188
|
onClick: () => selectedEntry && onContinue(
|
|
3101
3189
|
selectedEntry.token,
|
|
@@ -3108,7 +3196,7 @@ function SolanaTokenSelectStep({
|
|
|
3108
3196
|
}
|
|
3109
3197
|
)
|
|
3110
3198
|
] }),
|
|
3111
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3199
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
3112
3200
|
] });
|
|
3113
3201
|
}
|
|
3114
3202
|
|
|
@@ -3132,7 +3220,6 @@ function SolanaAmountStep({
|
|
|
3132
3220
|
targetChain,
|
|
3133
3221
|
targetChainName,
|
|
3134
3222
|
targetTokenSymbol,
|
|
3135
|
-
targetTokenIcon,
|
|
3136
3223
|
appBalanceUsd,
|
|
3137
3224
|
onContinue,
|
|
3138
3225
|
debug
|
|
@@ -3140,8 +3227,8 @@ function SolanaAmountStep({
|
|
|
3140
3227
|
const [amount, setAmount] = _react.useState.call(void 0, "");
|
|
3141
3228
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
3142
3229
|
const hasAppliedDefaultRef = _react.useRef.call(void 0, false);
|
|
3143
|
-
const isSourceStablecoin =
|
|
3144
|
-
const isMaxDefault = _optionalChain([defaultAmount, 'optionalAccess',
|
|
3230
|
+
const isSourceStablecoin = _chunkPUMTR35Ecjs.isStablecoinSymbol.call(void 0, token.symbol);
|
|
3231
|
+
const isMaxDefault = _optionalChain([defaultAmount, 'optionalAccess', _115 => _115.trim, 'call', _116 => _116(), 'access', _117 => _117.toLowerCase, 'call', _118 => _118()]) === "max";
|
|
3145
3232
|
const tokenPriceUsd = _react.useMemo.call(void 0, () => {
|
|
3146
3233
|
if (isSourceStablecoin) return 1;
|
|
3147
3234
|
try {
|
|
@@ -3161,7 +3248,7 @@ function SolanaAmountStep({
|
|
|
3161
3248
|
const raw = _viem.formatUnits.call(void 0, balance, token.decimals);
|
|
3162
3249
|
const numeric = Number(raw);
|
|
3163
3250
|
if (!Number.isFinite(numeric)) return raw;
|
|
3164
|
-
return
|
|
3251
|
+
return _chunkIRI34U6Ncjs.tokenFormatter.format(numeric);
|
|
3165
3252
|
} catch (e24) {
|
|
3166
3253
|
return "\u2026";
|
|
3167
3254
|
}
|
|
@@ -3178,7 +3265,7 @@ function SolanaAmountStep({
|
|
|
3178
3265
|
}
|
|
3179
3266
|
}, [balance, token.decimals, tokenPriceUsd, balanceUsd]);
|
|
3180
3267
|
const spendableBalance = _react.useMemo.call(void 0, () => {
|
|
3181
|
-
if (!
|
|
3268
|
+
if (!_chunkPUMTR35Ecjs.isNativeSol.call(void 0, token)) return balance;
|
|
3182
3269
|
return balance > SOL_FEE_RESERVE_LAMPORTS ? balance - SOL_FEE_RESERVE_LAMPORTS : 0n;
|
|
3183
3270
|
}, [balance, token]);
|
|
3184
3271
|
const spendableBalanceUsd = _react.useMemo.call(void 0, () => {
|
|
@@ -3243,8 +3330,8 @@ function SolanaAmountStep({
|
|
|
3243
3330
|
return null;
|
|
3244
3331
|
}
|
|
3245
3332
|
}, [numericAmount, isSourceStablecoin, hasPricing, tokenPriceUsd, token.decimals]);
|
|
3246
|
-
const minDepositUsd = targetChain ===
|
|
3247
|
-
const maxDepositUsd = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess',
|
|
3333
|
+
const minDepositUsd = targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID ? Math.max(_chunkPUMTR35Ecjs.HYPERCORE_MIN_DEPOSIT_USD, _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _119 => _119.minDepositUsd]), () => ( 0))) : _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _120 => _120.minDepositUsd]), () => ( null));
|
|
3334
|
+
const maxDepositUsd = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _121 => _121.maxDepositUsd]), () => ( null));
|
|
3248
3335
|
const isBelowMin = minDepositUsd !== null && numericAmount > 0 && numericAmount < minDepositUsd;
|
|
3249
3336
|
const isAboveMax = maxDepositUsd !== null && numericAmount > maxDepositUsd;
|
|
3250
3337
|
const exceedsBalance = Boolean(
|
|
@@ -3254,7 +3341,7 @@ function SolanaAmountStep({
|
|
|
3254
3341
|
const handlePresetClick = (percentage) => {
|
|
3255
3342
|
const formatted = computePresetAmount(percentage);
|
|
3256
3343
|
if (!formatted) return;
|
|
3257
|
-
|
|
3344
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-amount", "amount:preset", {
|
|
3258
3345
|
percentage,
|
|
3259
3346
|
symbol: token.symbol,
|
|
3260
3347
|
formatted
|
|
@@ -3289,7 +3376,7 @@ function SolanaAmountStep({
|
|
|
3289
3376
|
try {
|
|
3290
3377
|
amountInUnits = _viem.parseUnits.call(void 0, sourceAmountStr, token.decimals);
|
|
3291
3378
|
} catch (e29) {
|
|
3292
|
-
|
|
3379
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-amount", "amount:invalid", {
|
|
3293
3380
|
amount,
|
|
3294
3381
|
sourceAmount: sourceAmountStr,
|
|
3295
3382
|
reason: "parse-units-failed"
|
|
@@ -3298,13 +3385,13 @@ function SolanaAmountStep({
|
|
|
3298
3385
|
return;
|
|
3299
3386
|
}
|
|
3300
3387
|
if (amountInUnits > spendableBalance) {
|
|
3301
|
-
const isReserveIssue =
|
|
3388
|
+
const isReserveIssue = _chunkPUMTR35Ecjs.isNativeSol.call(void 0, token) && amountInUnits <= balance;
|
|
3302
3389
|
setError(
|
|
3303
3390
|
isReserveIssue ? "Use a bit less than your full SOL balance" : "Insufficient balance"
|
|
3304
3391
|
);
|
|
3305
3392
|
return;
|
|
3306
3393
|
}
|
|
3307
|
-
|
|
3394
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-amount", "amount:continue", {
|
|
3308
3395
|
symbol: token.symbol,
|
|
3309
3396
|
inputAmountUsd: amount,
|
|
3310
3397
|
sourceAmount: sourceAmountStr,
|
|
@@ -3315,10 +3402,9 @@ function SolanaAmountStep({
|
|
|
3315
3402
|
};
|
|
3316
3403
|
const continueLabel = exceedsBalance ? "Insufficient balance" : isAboveMax ? "Continue with max allowed deposit" : isBelowMin ? "Continue with minimum deposit" : "Continue";
|
|
3317
3404
|
const continueDisabled = exceedsBalance || numericAmount === 0 && !isBelowMin;
|
|
3318
|
-
const sourceTokenIcon = _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, token.symbol);
|
|
3319
3405
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
3320
3406
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
3321
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3407
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}), title: "Wallet deposit" }),
|
|
3322
3408
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-section", children: [
|
|
3323
3409
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-display", children: [
|
|
3324
3410
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -3338,13 +3424,13 @@ function SolanaAmountStep({
|
|
|
3338
3424
|
" available",
|
|
3339
3425
|
computedBalanceUsd !== null && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment, { children: [
|
|
3340
3426
|
" (~",
|
|
3341
|
-
|
|
3427
|
+
_chunkIRI34U6Ncjs.currencyFormatter.format(computedBalanceUsd),
|
|
3342
3428
|
")"
|
|
3343
3429
|
] })
|
|
3344
3430
|
] }),
|
|
3345
3431
|
minDepositUsd !== null && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-amount-meta-minimum", children: [
|
|
3346
3432
|
"Min. deposit ",
|
|
3347
|
-
|
|
3433
|
+
_chunkIRI34U6Ncjs.currencyFormatter.format(minDepositUsd)
|
|
3348
3434
|
] })
|
|
3349
3435
|
] })
|
|
3350
3436
|
] }),
|
|
@@ -3367,7 +3453,7 @@ function SolanaAmountStep({
|
|
|
3367
3453
|
"Solana ",
|
|
3368
3454
|
token.symbol
|
|
3369
3455
|
] }),
|
|
3370
|
-
|
|
3456
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: token.symbol }) })
|
|
3371
3457
|
] })
|
|
3372
3458
|
] }),
|
|
3373
3459
|
targetChainName && targetTokenSymbol && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-detail-row", children: [
|
|
@@ -3378,18 +3464,18 @@ function SolanaAmountStep({
|
|
|
3378
3464
|
" ",
|
|
3379
3465
|
targetTokenSymbol
|
|
3380
3466
|
] }),
|
|
3381
|
-
|
|
3467
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: targetTokenSymbol }) })
|
|
3382
3468
|
] })
|
|
3383
3469
|
] }),
|
|
3384
3470
|
balanceAfterUsd !== null && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-detail-row", children: [
|
|
3385
3471
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Balance after deposit" }),
|
|
3386
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-value", children:
|
|
3472
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-value", children: _chunkIRI34U6Ncjs.currencyFormatter.format(balanceAfterUsd) })
|
|
3387
3473
|
] })
|
|
3388
3474
|
] }),
|
|
3389
|
-
targetChain ===
|
|
3390
|
-
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3475
|
+
targetChain === _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "warning", children: "First deposit to a new HyperCore account includes a ~1 USDC activation fee." }),
|
|
3476
|
+
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: error }),
|
|
3391
3477
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3392
|
-
|
|
3478
|
+
_chunkIRI34U6Ncjs.Button,
|
|
3393
3479
|
{
|
|
3394
3480
|
onClick: handleContinue,
|
|
3395
3481
|
fullWidth: true,
|
|
@@ -3398,7 +3484,7 @@ function SolanaAmountStep({
|
|
|
3398
3484
|
}
|
|
3399
3485
|
)
|
|
3400
3486
|
] }),
|
|
3401
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3487
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
3402
3488
|
] });
|
|
3403
3489
|
}
|
|
3404
3490
|
|
|
@@ -3421,10 +3507,10 @@ var _spltoken = require('@solana/spl-token');
|
|
|
3421
3507
|
var DEFAULT_SOLANA_RPC_URL = "https://api.mainnet.solana.com";
|
|
3422
3508
|
var cachedConnections = /* @__PURE__ */ new Map();
|
|
3423
3509
|
function getSolanaRpcUrl(rpcUrls) {
|
|
3424
|
-
return _nullishCoalesce(
|
|
3510
|
+
return _nullishCoalesce(_chunkIRI34U6Ncjs.rpcUrlFor.call(void 0, rpcUrls, "solana"), () => ( DEFAULT_SOLANA_RPC_URL));
|
|
3425
3511
|
}
|
|
3426
3512
|
function hasConfiguredSolanaRpcUrl(rpcUrls) {
|
|
3427
|
-
return
|
|
3513
|
+
return _chunkIRI34U6Ncjs.rpcUrlFor.call(void 0, rpcUrls, "solana") !== void 0;
|
|
3428
3514
|
}
|
|
3429
3515
|
function getSolanaConnection(rpcUrls) {
|
|
3430
3516
|
const rpcUrl = getSolanaRpcUrl(rpcUrls);
|
|
@@ -3526,23 +3612,21 @@ function SolanaConfirmStep({
|
|
|
3526
3612
|
onError,
|
|
3527
3613
|
debug
|
|
3528
3614
|
}) {
|
|
3529
|
-
const rpcUrls =
|
|
3615
|
+
const rpcUrls = _chunkIRI34U6Ncjs.useRpcUrls.call(void 0, );
|
|
3530
3616
|
const [isSubmitting, setIsSubmitting] = _react.useState.call(void 0, false);
|
|
3531
3617
|
const [error, setError] = _react.useState.call(void 0, null);
|
|
3532
|
-
const targetSymbol =
|
|
3533
|
-
const sourceChainName =
|
|
3534
|
-
const targetChainName =
|
|
3535
|
-
const sourceChainIcon =
|
|
3536
|
-
const targetChainIcon =
|
|
3537
|
-
const
|
|
3538
|
-
const
|
|
3539
|
-
const
|
|
3540
|
-
const feeTooltip = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _110 => _110.feeTooltip]), () => ( (feeSponsored ? "Network fees are sponsored for this deposit." : "Network fees apply.")));
|
|
3541
|
-
const formattedAmount = sourceAmount && Number.isFinite(Number(sourceAmount)) ? _nullishCoalesce(_chunkVPWWFWZTcjs.formatTokenAmount.call(void 0, Number(sourceAmount), token.symbol), () => ( "0")) : "0";
|
|
3618
|
+
const targetSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
3619
|
+
const sourceChainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, "solana");
|
|
3620
|
+
const targetChainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChain);
|
|
3621
|
+
const sourceChainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, "solana");
|
|
3622
|
+
const targetChainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, targetChain);
|
|
3623
|
+
const feeSponsored = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _122 => _122.feeSponsored]), () => ( false));
|
|
3624
|
+
const feeTooltip = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _123 => _123.feeTooltip]), () => ( (feeSponsored ? "Network fees are sponsored for this deposit." : "Network fees apply.")));
|
|
3625
|
+
const formattedAmount = sourceAmount && Number.isFinite(Number(sourceAmount)) ? _nullishCoalesce(_chunkIRI34U6Ncjs.formatTokenAmount.call(void 0, Number(sourceAmount), token.symbol), () => ( "0")) : "0";
|
|
3542
3626
|
const receiveDisplay = (() => {
|
|
3543
3627
|
const usdValue = Number(targetAmount);
|
|
3544
3628
|
const sourceAmountUsd = Number.isFinite(usdValue) && usdValue > 0 ? usdValue : void 0;
|
|
3545
|
-
const estimate =
|
|
3629
|
+
const estimate = _chunkIRI34U6Ncjs.formatReceiveEstimate.call(void 0, {
|
|
3546
3630
|
sourceAmount: Number.isFinite(Number(sourceAmount)) ? Number(sourceAmount) : void 0,
|
|
3547
3631
|
sourceSymbol: token.symbol,
|
|
3548
3632
|
targetSymbol,
|
|
@@ -3554,7 +3638,7 @@ function SolanaConfirmStep({
|
|
|
3554
3638
|
})();
|
|
3555
3639
|
const handleConfirm = async () => {
|
|
3556
3640
|
if (!solanaProvider) {
|
|
3557
|
-
|
|
3641
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "submit:blocked", {
|
|
3558
3642
|
reason: "missing-provider"
|
|
3559
3643
|
});
|
|
3560
3644
|
setError("Solana wallet not connected");
|
|
@@ -3562,7 +3646,7 @@ function SolanaConfirmStep({
|
|
|
3562
3646
|
}
|
|
3563
3647
|
const parsedAmount = parseFloat(sourceAmount);
|
|
3564
3648
|
if (isNaN(parsedAmount) || parsedAmount <= 0) {
|
|
3565
|
-
|
|
3649
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "submit:blocked", {
|
|
3566
3650
|
reason: "invalid-amount",
|
|
3567
3651
|
sourceAmount
|
|
3568
3652
|
});
|
|
@@ -3571,7 +3655,7 @@ function SolanaConfirmStep({
|
|
|
3571
3655
|
}
|
|
3572
3656
|
setError(null);
|
|
3573
3657
|
setIsSubmitting(true);
|
|
3574
|
-
|
|
3658
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "submit:start", {
|
|
3575
3659
|
smartAccount,
|
|
3576
3660
|
solanaAddress,
|
|
3577
3661
|
solanaDepositAddress,
|
|
@@ -3581,7 +3665,7 @@ function SolanaConfirmStep({
|
|
|
3581
3665
|
});
|
|
3582
3666
|
try {
|
|
3583
3667
|
const check = await service.checkAccount(smartAccount);
|
|
3584
|
-
|
|
3668
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "check:success", {
|
|
3585
3669
|
smartAccount,
|
|
3586
3670
|
isRegistered: check.isRegistered,
|
|
3587
3671
|
targetChain: check.targetChain,
|
|
@@ -3594,12 +3678,12 @@ function SolanaConfirmStep({
|
|
|
3594
3678
|
}
|
|
3595
3679
|
const connection = hasConfiguredSolanaRpcUrl(rpcUrls) ? getSolanaConnection(rpcUrls) : _nullishCoalesce(solanaConnection, () => ( getSolanaConnection(rpcUrls)));
|
|
3596
3680
|
const amountUnits = _viem.parseUnits.call(void 0, sourceAmount, token.decimals);
|
|
3597
|
-
|
|
3681
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "tx:build:start", {
|
|
3598
3682
|
token: token.symbol,
|
|
3599
3683
|
sourceAmount,
|
|
3600
3684
|
amountUnits: amountUnits.toString()
|
|
3601
3685
|
});
|
|
3602
|
-
const transaction =
|
|
3686
|
+
const transaction = _chunkPUMTR35Ecjs.isNativeSol.call(void 0, token) ? await buildSolTransferTransaction(
|
|
3603
3687
|
connection,
|
|
3604
3688
|
solanaAddress,
|
|
3605
3689
|
solanaDepositAddress,
|
|
@@ -3611,10 +3695,10 @@ function SolanaConfirmStep({
|
|
|
3611
3695
|
token.mint,
|
|
3612
3696
|
amountUnits
|
|
3613
3697
|
);
|
|
3614
|
-
|
|
3698
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "tx:build:success", {
|
|
3615
3699
|
token: token.symbol,
|
|
3616
3700
|
instructionCount: transaction.instructions.length,
|
|
3617
|
-
feePayer: _optionalChain([transaction, 'access',
|
|
3701
|
+
feePayer: _optionalChain([transaction, 'access', _124 => _124.feePayer, 'optionalAccess', _125 => _125.toBase58, 'call', _126 => _126()]),
|
|
3618
3702
|
recentBlockhash: transaction.recentBlockhash
|
|
3619
3703
|
});
|
|
3620
3704
|
const txHash = await sendSolanaTransaction(
|
|
@@ -3622,28 +3706,28 @@ function SolanaConfirmStep({
|
|
|
3622
3706
|
connection,
|
|
3623
3707
|
transaction
|
|
3624
3708
|
);
|
|
3625
|
-
|
|
3709
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "solana-confirm", "tx:sent", {
|
|
3626
3710
|
txHash,
|
|
3627
3711
|
amountUnits: amountUnits.toString()
|
|
3628
3712
|
});
|
|
3629
3713
|
onConfirm(txHash, amountUnits.toString());
|
|
3630
3714
|
} catch (err) {
|
|
3631
3715
|
const raw = err instanceof Error ? err.message : "Transfer failed";
|
|
3632
|
-
const message =
|
|
3633
|
-
|
|
3716
|
+
const message = _chunkIRI34U6Ncjs.formatUserError.call(void 0, raw);
|
|
3717
|
+
_chunkIRI34U6Ncjs.debugError.call(void 0, debug, "solana-confirm", "submit:failure", err, {
|
|
3634
3718
|
smartAccount,
|
|
3635
3719
|
token: token.symbol,
|
|
3636
3720
|
sourceAmount
|
|
3637
3721
|
});
|
|
3638
3722
|
setError(message);
|
|
3639
|
-
_optionalChain([onError, 'optionalCall',
|
|
3723
|
+
_optionalChain([onError, 'optionalCall', _127 => _127(message, "SOLANA_TRANSFER_ERROR")]);
|
|
3640
3724
|
} finally {
|
|
3641
3725
|
setIsSubmitting(false);
|
|
3642
3726
|
}
|
|
3643
3727
|
};
|
|
3644
3728
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
3645
3729
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
3646
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3730
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}), title: "Review deposit" }),
|
|
3647
3731
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-details", children: [
|
|
3648
3732
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-detail-row", children: [
|
|
3649
3733
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Source chain" }),
|
|
@@ -3671,14 +3755,14 @@ function SolanaConfirmStep({
|
|
|
3671
3755
|
" ",
|
|
3672
3756
|
token.symbol
|
|
3673
3757
|
] }),
|
|
3674
|
-
|
|
3758
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-review-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: token.symbol }) })
|
|
3675
3759
|
] })
|
|
3676
3760
|
] }),
|
|
3677
3761
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-detail-row", children: [
|
|
3678
3762
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Receive" }),
|
|
3679
3763
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "span", { className: "rs-review-detail-value", children: [
|
|
3680
3764
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: receiveDisplay }),
|
|
3681
|
-
|
|
3765
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-review-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: targetSymbol }) })
|
|
3682
3766
|
] })
|
|
3683
3767
|
] }),
|
|
3684
3768
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-review-detail-row", children: [
|
|
@@ -3691,13 +3775,13 @@ function SolanaConfirmStep({
|
|
|
3691
3775
|
children: "$0.04"
|
|
3692
3776
|
}
|
|
3693
3777
|
),
|
|
3694
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3778
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Tooltip, { content: feeTooltip, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-review-detail-info", "aria-label": "Fee info", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.InfoIcon, {}) }) })
|
|
3695
3779
|
] })
|
|
3696
3780
|
] })
|
|
3697
3781
|
] }),
|
|
3698
|
-
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3782
|
+
error && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: error }),
|
|
3699
3783
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3700
|
-
|
|
3784
|
+
_chunkIRI34U6Ncjs.Button,
|
|
3701
3785
|
{
|
|
3702
3786
|
onClick: handleConfirm,
|
|
3703
3787
|
loading: isSubmitting,
|
|
@@ -3708,7 +3792,7 @@ function SolanaConfirmStep({
|
|
|
3708
3792
|
}
|
|
3709
3793
|
)
|
|
3710
3794
|
] }),
|
|
3711
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3795
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
3712
3796
|
] });
|
|
3713
3797
|
}
|
|
3714
3798
|
|
|
@@ -3722,21 +3806,21 @@ function DappImportAssetSelectStep({
|
|
|
3722
3806
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen", children: [
|
|
3723
3807
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
3724
3808
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3725
|
-
|
|
3809
|
+
_chunkIRI34U6Ncjs.BodyHeader,
|
|
3726
3810
|
{
|
|
3727
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3811
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}),
|
|
3728
3812
|
title: `Transfer from ${sourceLabel}`,
|
|
3729
3813
|
subtitle: "Pick the balance to import"
|
|
3730
3814
|
}
|
|
3731
3815
|
),
|
|
3732
3816
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-asset-list", children: assets.map((asset) => {
|
|
3733
|
-
const tokenAmount = asset.balance ?
|
|
3817
|
+
const tokenAmount = asset.balance ? _chunkIRI34U6Ncjs.tokenFormatter.format(
|
|
3734
3818
|
Number(asset.balance) / 10 ** asset.decimals
|
|
3735
3819
|
) : "0";
|
|
3736
|
-
const balanceUsd = asset.balanceUsd && asset.balanceUsd > 0 ?
|
|
3737
|
-
const
|
|
3738
|
-
const chainIcon =
|
|
3739
|
-
const badge =
|
|
3820
|
+
const balanceUsd = asset.balanceUsd && asset.balanceUsd > 0 ? _chunkIRI34U6Ncjs.currencyFormatter.format(asset.balanceUsd) : `${tokenAmount} ${asset.symbol}`;
|
|
3821
|
+
const assetIcon = asset.icon;
|
|
3822
|
+
const chainIcon = _chunkPUMTR35Ecjs.getChainIcon.call(void 0, asset.chainId);
|
|
3823
|
+
const badge = _chunkPUMTR35Ecjs.getChainBadge.call(void 0, asset.chainId);
|
|
3740
3824
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
3741
3825
|
"button",
|
|
3742
3826
|
{
|
|
@@ -3746,12 +3830,18 @@ function DappImportAssetSelectStep({
|
|
|
3746
3830
|
children: [
|
|
3747
3831
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-info", children: [
|
|
3748
3832
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-asset-icon-wrapper", children: [
|
|
3749
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-icon", children:
|
|
3833
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-icon", children: assetIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: assetIcon, alt: asset.symbol }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3834
|
+
_chunkIRI34U6Ncjs.TokenIcon,
|
|
3835
|
+
{
|
|
3836
|
+
symbol: asset.symbol,
|
|
3837
|
+
fallback: asset.symbol.slice(0, 4)
|
|
3838
|
+
}
|
|
3839
|
+
) }),
|
|
3750
3840
|
chainIcon ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-asset-chain-badge", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3751
3841
|
"img",
|
|
3752
3842
|
{
|
|
3753
3843
|
src: chainIcon,
|
|
3754
|
-
alt:
|
|
3844
|
+
alt: _chunkPUMTR35Ecjs.getChainName.call(void 0, asset.chainId)
|
|
3755
3845
|
}
|
|
3756
3846
|
) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3757
3847
|
"span",
|
|
@@ -3784,7 +3874,7 @@ function DappImportAssetSelectStep({
|
|
|
3784
3874
|
);
|
|
3785
3875
|
}) })
|
|
3786
3876
|
] }),
|
|
3787
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3877
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
3788
3878
|
] });
|
|
3789
3879
|
}
|
|
3790
3880
|
DappImportAssetSelectStep.displayName = "DappImportAssetSelectStep";
|
|
@@ -3801,9 +3891,9 @@ function DappImportAssetSelectSkeleton({
|
|
|
3801
3891
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-sr-only", role: "status", children: error ? "Couldn't load balances" : "Loading balances\u2026" }),
|
|
3802
3892
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-screen-body rs-screen-body--gap-32", children: [
|
|
3803
3893
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3804
|
-
|
|
3894
|
+
_chunkIRI34U6Ncjs.BodyHeader,
|
|
3805
3895
|
{
|
|
3806
|
-
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3896
|
+
icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.WalletIcon, {}),
|
|
3807
3897
|
title: `Transfer from ${sourceLabel}`,
|
|
3808
3898
|
subtitle: "Pick the balance to import"
|
|
3809
3899
|
}
|
|
@@ -3841,7 +3931,7 @@ function DappImportAssetSelectSkeleton({
|
|
|
3841
3931
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Try again" })
|
|
3842
3932
|
}
|
|
3843
3933
|
) }),
|
|
3844
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
3934
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
3845
3935
|
] });
|
|
3846
3936
|
}
|
|
3847
3937
|
DappImportAssetSelectSkeleton.displayName = "DappImportAssetSelectSkeleton";
|
|
@@ -3898,7 +3988,7 @@ async function detectPolymarketWalletKind(params) {
|
|
|
3898
3988
|
contracts: [
|
|
3899
3989
|
{
|
|
3900
3990
|
address: proxyWallet,
|
|
3901
|
-
abi:
|
|
3991
|
+
abi: _chunkWL7AXYQ4cjs.SAFE_ABI,
|
|
3902
3992
|
functionName: "isOwner",
|
|
3903
3993
|
args: [eoa]
|
|
3904
3994
|
},
|
|
@@ -3931,7 +4021,7 @@ async function buildSignedDepositWalletBatch(params) {
|
|
|
3931
4021
|
if (!account || !chain) {
|
|
3932
4022
|
throw new Error("Wallet not connected");
|
|
3933
4023
|
}
|
|
3934
|
-
if (chain.id !==
|
|
4024
|
+
if (chain.id !== _chunk4IOQIWDYcjs.POLYMARKET_POLYGON_CHAIN_ID) {
|
|
3935
4025
|
throw new Error("Switch to Polygon to sign");
|
|
3936
4026
|
}
|
|
3937
4027
|
const owner = await publicClient.readContract({
|
|
@@ -3976,14 +4066,14 @@ async function buildSignedDepositWalletBatch(params) {
|
|
|
3976
4066
|
})),
|
|
3977
4067
|
signature
|
|
3978
4068
|
},
|
|
3979
|
-
sourceToken:
|
|
4069
|
+
sourceToken: _chunk4IOQIWDYcjs.POLYMARKET_USDCE_ADDRESS,
|
|
3980
4070
|
sourceSymbol: tokenKind === "pusd" ? "pUSD" : "USDC.e"
|
|
3981
4071
|
};
|
|
3982
4072
|
}
|
|
3983
4073
|
function buildUsdceTransferCalls(recipient, amount) {
|
|
3984
4074
|
return [
|
|
3985
4075
|
{
|
|
3986
|
-
target:
|
|
4076
|
+
target: _chunk4IOQIWDYcjs.POLYMARKET_USDCE_ADDRESS,
|
|
3987
4077
|
value: 0n,
|
|
3988
4078
|
data: _viem.encodeFunctionData.call(void 0, {
|
|
3989
4079
|
abi: _viem.erc20Abi,
|
|
@@ -3996,21 +4086,21 @@ function buildUsdceTransferCalls(recipient, amount) {
|
|
|
3996
4086
|
function buildPusdUnwrapCalls(recipient, amount) {
|
|
3997
4087
|
return [
|
|
3998
4088
|
{
|
|
3999
|
-
target:
|
|
4089
|
+
target: _chunk4IOQIWDYcjs.POLYMARKET_PUSD_ADDRESS,
|
|
4000
4090
|
value: 0n,
|
|
4001
4091
|
data: _viem.encodeFunctionData.call(void 0, {
|
|
4002
4092
|
abi: _viem.erc20Abi,
|
|
4003
4093
|
functionName: "approve",
|
|
4004
|
-
args: [
|
|
4094
|
+
args: [_chunk4IOQIWDYcjs.POLYMARKET_COLLATERAL_OFFRAMP_ADDRESS, amount]
|
|
4005
4095
|
})
|
|
4006
4096
|
},
|
|
4007
4097
|
{
|
|
4008
|
-
target:
|
|
4098
|
+
target: _chunk4IOQIWDYcjs.POLYMARKET_COLLATERAL_OFFRAMP_ADDRESS,
|
|
4009
4099
|
value: 0n,
|
|
4010
4100
|
data: _viem.encodeFunctionData.call(void 0, {
|
|
4011
4101
|
abi: COLLATERAL_OFFRAMP_ABI,
|
|
4012
4102
|
functionName: "unwrap",
|
|
4013
|
-
args: [
|
|
4103
|
+
args: [_chunk4IOQIWDYcjs.POLYMARKET_USDCE_ADDRESS, recipient, amount]
|
|
4014
4104
|
})
|
|
4015
4105
|
}
|
|
4016
4106
|
];
|
|
@@ -4023,29 +4113,29 @@ var polymarketProvider = {
|
|
|
4023
4113
|
label: "Transfer from Polymarket",
|
|
4024
4114
|
sourceLabel: "Polymarket",
|
|
4025
4115
|
icon: _react.createElement.call(void 0, "img", {
|
|
4026
|
-
src:
|
|
4116
|
+
src: _chunk4IOQIWDYcjs.POLYMARKET_ICON_URL,
|
|
4027
4117
|
alt: "Polymarket",
|
|
4028
4118
|
style: { width: 24, height: 24, borderRadius: 6 }
|
|
4029
4119
|
}),
|
|
4030
|
-
chainId:
|
|
4120
|
+
chainId: _chunk4IOQIWDYcjs.POLYMARKET_POLYGON_CHAIN_ID,
|
|
4031
4121
|
async fetchAvailability({ eoa, getPublicClient: getPublicClient2, signal }) {
|
|
4032
|
-
const proxyWallet = await
|
|
4122
|
+
const proxyWallet = await _chunk4IOQIWDYcjs.fetchPolymarketProxyWallet.call(void 0, eoa, signal);
|
|
4033
4123
|
if (!proxyWallet) return null;
|
|
4034
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
4035
|
-
const polygonClient = getPublicClient2(
|
|
4124
|
+
if (_optionalChain([signal, 'optionalAccess', _128 => _128.aborted])) return null;
|
|
4125
|
+
const polygonClient = getPublicClient2(_chunk4IOQIWDYcjs.POLYMARKET_POLYGON_CHAIN_ID);
|
|
4036
4126
|
if (!polygonClient) return null;
|
|
4037
|
-
const balances = await
|
|
4127
|
+
const balances = await _chunk4IOQIWDYcjs.readPolymarketBalances.call(void 0, {
|
|
4038
4128
|
publicClient: polygonClient,
|
|
4039
4129
|
proxyWallet
|
|
4040
4130
|
});
|
|
4041
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
4131
|
+
if (_optionalChain([signal, 'optionalAccess', _129 => _129.aborted])) return null;
|
|
4042
4132
|
if (balances.pusd === 0n && balances.usdce === 0n) return null;
|
|
4043
4133
|
const walletKind = await detectPolymarketWalletKind({
|
|
4044
4134
|
publicClient: polygonClient,
|
|
4045
4135
|
proxyWallet,
|
|
4046
4136
|
eoa
|
|
4047
4137
|
});
|
|
4048
|
-
if (_optionalChain([signal, 'optionalAccess',
|
|
4138
|
+
if (_optionalChain([signal, 'optionalAccess', _130 => _130.aborted])) return null;
|
|
4049
4139
|
if (!walletKind) return null;
|
|
4050
4140
|
const assets = [];
|
|
4051
4141
|
if (balances.pusd > 0n) {
|
|
@@ -4092,7 +4182,7 @@ var polymarketProvider = {
|
|
|
4092
4182
|
const { txHash } = await backend.submitPolymarketWithdraw(payload);
|
|
4093
4183
|
return { txHash, sourceToken, sourceSymbol, sourceDecimals: 6 };
|
|
4094
4184
|
}
|
|
4095
|
-
const result = await
|
|
4185
|
+
const result = await _chunk4IOQIWDYcjs.executePolymarketSafeTransfer.call(void 0, {
|
|
4096
4186
|
walletClient,
|
|
4097
4187
|
publicClient,
|
|
4098
4188
|
safeAddress: metadata.proxyWallet,
|
|
@@ -4111,17 +4201,17 @@ var polymarketProvider = {
|
|
|
4111
4201
|
function buildAsset(params) {
|
|
4112
4202
|
const { tokenKind, proxyWallet, walletKind, balance } = params;
|
|
4113
4203
|
const isPusd = tokenKind === "pusd";
|
|
4114
|
-
const tokenAddress = isPusd ?
|
|
4204
|
+
const tokenAddress = isPusd ? _chunk4IOQIWDYcjs.POLYMARKET_PUSD_ADDRESS : _chunk4IOQIWDYcjs.POLYMARKET_USDCE_ADDRESS;
|
|
4115
4205
|
const symbol = isPusd ? "pUSD" : "USDC.e";
|
|
4116
4206
|
const balanceUsd = Number(_viem.formatUnits.call(void 0, balance, 6));
|
|
4117
4207
|
const metadata = { proxyWallet, tokenKind, walletKind };
|
|
4118
4208
|
return {
|
|
4119
4209
|
id: `polymarket:${tokenKind}`,
|
|
4120
|
-
chainId:
|
|
4210
|
+
chainId: _chunk4IOQIWDYcjs.POLYMARKET_POLYGON_CHAIN_ID,
|
|
4121
4211
|
token: tokenAddress,
|
|
4122
4212
|
symbol,
|
|
4123
4213
|
name: isPusd ? "Polymarket USD" : "Polygon USDC.e",
|
|
4124
|
-
icon: isPusd ?
|
|
4214
|
+
icon: isPusd ? _chunk4IOQIWDYcjs.POLYMARKET_ICON_URL : void 0,
|
|
4125
4215
|
decimals: 6,
|
|
4126
4216
|
balance: balance.toString(),
|
|
4127
4217
|
balanceUsd: Number.isFinite(balanceUsd) ? balanceUsd : 0,
|
|
@@ -4131,8 +4221,8 @@ function buildAsset(params) {
|
|
|
4131
4221
|
// pUSD unwraps to USDC.e via the offramp; USDC.e is what actually
|
|
4132
4222
|
// arrives at the smart account, so it's also what the orchestrator
|
|
4133
4223
|
// bridges from.
|
|
4134
|
-
depositToken:
|
|
4135
|
-
depositChainId:
|
|
4224
|
+
depositToken: _chunk4IOQIWDYcjs.POLYMARKET_USDCE_ADDRESS,
|
|
4225
|
+
depositChainId: _chunk4IOQIWDYcjs.POLYMARKET_POLYGON_CHAIN_ID,
|
|
4136
4226
|
providerMetadata: metadata
|
|
4137
4227
|
};
|
|
4138
4228
|
}
|
|
@@ -4182,7 +4272,8 @@ function createInitialState(overrides) {
|
|
|
4182
4272
|
txHash: null,
|
|
4183
4273
|
directTransfer: false,
|
|
4184
4274
|
swappedContext: null,
|
|
4185
|
-
initialEvent: null
|
|
4275
|
+
initialEvent: null,
|
|
4276
|
+
quoteFeeBreakdown: null
|
|
4186
4277
|
},
|
|
4187
4278
|
dappImport: {
|
|
4188
4279
|
activeProviderId: null,
|
|
@@ -4236,7 +4327,7 @@ function readPortfolioEntry(portfolio, network, address) {
|
|
|
4236
4327
|
function computeDappImportStatus(providerId, inputs) {
|
|
4237
4328
|
const { owner, availability, availabilityOwner, setup } = inputs;
|
|
4238
4329
|
if (!owner) return "needs-connect";
|
|
4239
|
-
const entry = _optionalChain([availabilityOwner, 'optionalAccess',
|
|
4330
|
+
const entry = _optionalChain([availabilityOwner, 'optionalAccess', _131 => _131.toLowerCase, 'call', _132 => _132()]) === owner.toLowerCase() ? availability[providerId] : void 0;
|
|
4240
4331
|
if (entry === "loading" || entry === void 0) return "loading";
|
|
4241
4332
|
if (entry === "error") {
|
|
4242
4333
|
return {
|
|
@@ -4590,12 +4681,12 @@ function applyAction(state, action) {
|
|
|
4590
4681
|
requestKey: action.requestKey,
|
|
4591
4682
|
cacheKey: action.cacheKey,
|
|
4592
4683
|
status: "loading",
|
|
4593
|
-
smartAccount: _nullishCoalesce(_optionalChain([existing, 'optionalAccess',
|
|
4594
|
-
sessionOwnerAddress: _nullishCoalesce(_optionalChain([existing, 'optionalAccess',
|
|
4595
|
-
solanaDepositAddress: _nullishCoalesce(_optionalChain([existing, 'optionalAccess',
|
|
4684
|
+
smartAccount: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _133 => _133.smartAccount]), () => ( null)),
|
|
4685
|
+
sessionOwnerAddress: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _134 => _134.sessionOwnerAddress]), () => ( null)),
|
|
4686
|
+
solanaDepositAddress: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _135 => _135.solanaDepositAddress]), () => ( null)),
|
|
4596
4687
|
message: null,
|
|
4597
4688
|
cacheable: action.cacheable,
|
|
4598
|
-
attemptNonce: _nullishCoalesce(_optionalChain([existing, 'optionalAccess',
|
|
4689
|
+
attemptNonce: _nullishCoalesce(_optionalChain([existing, 'optionalAccess', _136 => _136.attemptNonce]), () => ( 0))
|
|
4599
4690
|
}));
|
|
4600
4691
|
}
|
|
4601
4692
|
case "setup/ready": {
|
|
@@ -4792,10 +4883,22 @@ function applyAction(state, action) {
|
|
|
4792
4883
|
txHash: action.txHash,
|
|
4793
4884
|
directTransfer: _nullishCoalesce(action.directTransfer, () => ( false)),
|
|
4794
4885
|
swappedContext: _nullishCoalesce(action.swappedContext, () => ( null)),
|
|
4795
|
-
initialEvent: _nullishCoalesce(action.initialEvent, () => ( null))
|
|
4886
|
+
initialEvent: _nullishCoalesce(action.initialEvent, () => ( null)),
|
|
4887
|
+
quoteFeeBreakdown: _nullishCoalesce(action.quoteFeeBreakdown, () => ( null))
|
|
4796
4888
|
},
|
|
4797
4889
|
flow: { ...state.flow, step: "processing" }
|
|
4798
4890
|
};
|
|
4891
|
+
case "processing/quote-fee-breakdown-loaded":
|
|
4892
|
+
if (state.flow.step !== "processing" || _optionalChain([state, 'access', _137 => _137.processing, 'access', _138 => _138.txHash, 'optionalAccess', _139 => _139.toLowerCase, 'call', _140 => _140()]) !== action.txHash.toLowerCase()) {
|
|
4893
|
+
return state;
|
|
4894
|
+
}
|
|
4895
|
+
return {
|
|
4896
|
+
...state,
|
|
4897
|
+
processing: {
|
|
4898
|
+
...state.processing,
|
|
4899
|
+
quoteFeeBreakdown: action.quoteFeeBreakdown
|
|
4900
|
+
}
|
|
4901
|
+
};
|
|
4799
4902
|
case "dapp-import/availability-loading":
|
|
4800
4903
|
return {
|
|
4801
4904
|
...state,
|
|
@@ -4963,7 +5066,8 @@ function applyAction(state, action) {
|
|
|
4963
5066
|
txHash: null,
|
|
4964
5067
|
directTransfer: false,
|
|
4965
5068
|
swappedContext: null,
|
|
4966
|
-
initialEvent: null
|
|
5069
|
+
initialEvent: null,
|
|
5070
|
+
quoteFeeBreakdown: null
|
|
4967
5071
|
},
|
|
4968
5072
|
// Drop fetched availability wholesale. The fetch effect refetches
|
|
4969
5073
|
// unconditionally on remount (so keeping the map saves nothing),
|
|
@@ -5064,15 +5168,15 @@ var SetupError = class extends Error {
|
|
|
5064
5168
|
}
|
|
5065
5169
|
};
|
|
5066
5170
|
async function resolveSessionOwner(eoaAddress) {
|
|
5067
|
-
const local =
|
|
5171
|
+
const local = _chunkIRI34U6Ncjs.loadSessionOwnerFromStorage.call(void 0, eoaAddress);
|
|
5068
5172
|
if (local) {
|
|
5069
5173
|
return {
|
|
5070
|
-
account:
|
|
5174
|
+
account: _chunkIRI34U6Ncjs.accountFromPrivateKey.call(void 0, local.privateKey),
|
|
5071
5175
|
address: local.address
|
|
5072
5176
|
};
|
|
5073
5177
|
}
|
|
5074
|
-
const created =
|
|
5075
|
-
|
|
5178
|
+
const created = _chunkIRI34U6Ncjs.createSessionOwnerKey.call(void 0, );
|
|
5179
|
+
_chunkIRI34U6Ncjs.saveSessionOwnerToStorage.call(void 0, eoaAddress, created.privateKey, created.address);
|
|
5076
5180
|
return { account: created.account, address: created.address };
|
|
5077
5181
|
}
|
|
5078
5182
|
function stableStringify(value) {
|
|
@@ -5128,7 +5232,7 @@ var setupRequestDedupe = /* @__PURE__ */ new Map();
|
|
|
5128
5232
|
function readDedupedAccountSetupResult(requestKey) {
|
|
5129
5233
|
const now = Date.now();
|
|
5130
5234
|
const existing = setupRequestDedupe.get(requestKey);
|
|
5131
|
-
if (_optionalChain([existing, 'optionalAccess',
|
|
5235
|
+
if (_optionalChain([existing, 'optionalAccess', _141 => _141.settled]) && existing.expiresAt > now && existing.result) {
|
|
5132
5236
|
return existing.result;
|
|
5133
5237
|
}
|
|
5134
5238
|
return null;
|
|
@@ -5139,7 +5243,7 @@ async function runAccountSetup(input, deps) {
|
|
|
5139
5243
|
try {
|
|
5140
5244
|
const sessionOwner = await resolveSessionOwner(input.ownerAddress);
|
|
5141
5245
|
const cacheKey = computeCacheKey(input, sessionOwner.address);
|
|
5142
|
-
|
|
5246
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "account-setup", "setup:start", {
|
|
5143
5247
|
owner: input.ownerAddress,
|
|
5144
5248
|
sessionOwner: sessionOwner.address,
|
|
5145
5249
|
forceRegister: _nullishCoalesce(input.forceRegister, () => ( false))
|
|
@@ -5147,7 +5251,7 @@ async function runAccountSetup(input, deps) {
|
|
|
5147
5251
|
const setup = await service.setupAccount({
|
|
5148
5252
|
ownerAddress: input.ownerAddress,
|
|
5149
5253
|
sessionOwnerAddress: sessionOwner.address,
|
|
5150
|
-
targetChain:
|
|
5254
|
+
targetChain: _chunkPUMTR35Ecjs.targetChainToCaip2.call(void 0, input.targetChain),
|
|
5151
5255
|
targetToken: input.targetToken,
|
|
5152
5256
|
recipient: input.recipient,
|
|
5153
5257
|
outputTokenRules: input.outputTokenRules,
|
|
@@ -5185,7 +5289,7 @@ async function runAccountSetup(input, deps) {
|
|
|
5185
5289
|
primaryType: typedData.primaryType,
|
|
5186
5290
|
message: typedData.message
|
|
5187
5291
|
});
|
|
5188
|
-
const sessionDetails =
|
|
5292
|
+
const sessionDetails = _chunkIRI34U6Ncjs.buildSessionDetails.call(void 0,
|
|
5189
5293
|
setup.sessionDetailsUnsigned,
|
|
5190
5294
|
signature
|
|
5191
5295
|
);
|
|
@@ -5199,10 +5303,10 @@ async function runAccountSetup(input, deps) {
|
|
|
5199
5303
|
eoaAddress: input.ownerAddress,
|
|
5200
5304
|
sessionOwner: sessionOwner.address,
|
|
5201
5305
|
target: {
|
|
5202
|
-
chain:
|
|
5306
|
+
chain: _chunkPUMTR35Ecjs.targetChainToCaip2.call(void 0, input.targetChain),
|
|
5203
5307
|
token: input.targetToken,
|
|
5204
5308
|
...input.recipient && { recipient: input.recipient },
|
|
5205
|
-
..._optionalChain([input, 'access',
|
|
5309
|
+
..._optionalChain([input, 'access', _142 => _142.outputTokenRules, 'optionalAccess', _143 => _143.length]) && {
|
|
5206
5310
|
outputTokenRules: input.outputTokenRules
|
|
5207
5311
|
},
|
|
5208
5312
|
...input.rejectUnmapped != null && {
|
|
@@ -5218,7 +5322,7 @@ async function runAccountSetup(input, deps) {
|
|
|
5218
5322
|
isRegistered: true
|
|
5219
5323
|
};
|
|
5220
5324
|
} catch (error) {
|
|
5221
|
-
|
|
5325
|
+
_chunkIRI34U6Ncjs.debugError.call(void 0, debug, "account-setup", "setup:failed", error, {
|
|
5222
5326
|
owner: input.ownerAddress
|
|
5223
5327
|
});
|
|
5224
5328
|
if (error instanceof SetupError) throw error;
|
|
@@ -5229,7 +5333,7 @@ function runAccountSetupDeduped(input, deps, requestKey) {
|
|
|
5229
5333
|
const now = Date.now();
|
|
5230
5334
|
const existing = setupRequestDedupe.get(requestKey);
|
|
5231
5335
|
if (existing && (!existing.settled || existing.expiresAt > now)) {
|
|
5232
|
-
|
|
5336
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, deps.debug, "account-setup", "setup:dedupe-hit", {
|
|
5233
5337
|
owner: input.ownerAddress,
|
|
5234
5338
|
forceRegister: _nullishCoalesce(input.forceRegister, () => ( false))
|
|
5235
5339
|
});
|
|
@@ -5320,6 +5424,33 @@ function isSameRoute2(sourceChain, sourceToken, targetChain, targetToken) {
|
|
|
5320
5424
|
var SWAPPED_SOURCE_CHAIN = 8453;
|
|
5321
5425
|
var SWAPPED_SOURCE_TOKEN = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
|
|
5322
5426
|
var SWAPPED_SOURCE_DECIMALS = 6;
|
|
5427
|
+
var SWAPPED_QUOTE_FEE_TIMEOUT_MS = 2500;
|
|
5428
|
+
async function fetchQuoteFeeBreakdown(params) {
|
|
5429
|
+
try {
|
|
5430
|
+
if (BigInt(params.amount) <= 0n) return void 0;
|
|
5431
|
+
} catch (e30) {
|
|
5432
|
+
return void 0;
|
|
5433
|
+
}
|
|
5434
|
+
let timeoutId;
|
|
5435
|
+
try {
|
|
5436
|
+
const quote = await Promise.race([
|
|
5437
|
+
params.service.getQuotePreview({
|
|
5438
|
+
account: params.account,
|
|
5439
|
+
sourceChainId: params.sourceChainId,
|
|
5440
|
+
sourceToken: params.sourceToken,
|
|
5441
|
+
amount: params.amount
|
|
5442
|
+
}),
|
|
5443
|
+
new Promise((resolve) => {
|
|
5444
|
+
timeoutId = setTimeout(resolve, SWAPPED_QUOTE_FEE_TIMEOUT_MS, null);
|
|
5445
|
+
})
|
|
5446
|
+
]);
|
|
5447
|
+
return _optionalChain([quote, 'optionalAccess', _144 => _144.fees, 'optionalAccess', _145 => _145.breakdown]);
|
|
5448
|
+
} catch (e31) {
|
|
5449
|
+
return void 0;
|
|
5450
|
+
} finally {
|
|
5451
|
+
if (timeoutId !== void 0) clearTimeout(timeoutId);
|
|
5452
|
+
}
|
|
5453
|
+
}
|
|
5323
5454
|
var DEFAULT_FIAT_ONRAMP_METHODS = [
|
|
5324
5455
|
{
|
|
5325
5456
|
method: "creditcard",
|
|
@@ -5444,7 +5575,12 @@ function deriveStep(flow, d, p, activeEntry, fiat, exchange) {
|
|
|
5444
5575
|
balanceUsd: d.balanceUsd
|
|
5445
5576
|
};
|
|
5446
5577
|
case "processing":
|
|
5447
|
-
if (!smartAccount || !p.txHash || !d.amount || d.sourceChain === null || d.sourceChain === "unknown" ||
|
|
5578
|
+
if (!smartAccount || !p.txHash || !d.amount || d.sourceChain === null || d.sourceChain === "unknown" || // HyperCore is a QR/deposit-address-only source (no wallet flow), so it
|
|
5579
|
+
// never dispatches `deposit/submitted` and never reaches this store
|
|
5580
|
+
// `processing` step — its completion is tracked by the DepositNotification
|
|
5581
|
+
// on the deposit-address screen. Excluding it here keeps `sourceChain`
|
|
5582
|
+
// narrowed to the EVM/Solana shape ProcessingStep expects.
|
|
5583
|
+
d.sourceChain === "hypercore" || !d.sourceToken) {
|
|
5448
5584
|
return { type: "setup" };
|
|
5449
5585
|
}
|
|
5450
5586
|
return {
|
|
@@ -5460,7 +5596,8 @@ function deriveStep(flow, d, p, activeEntry, fiat, exchange) {
|
|
|
5460
5596
|
inputAmountUsd: _nullishCoalesce(d.inputAmountUsd, () => ( void 0)),
|
|
5461
5597
|
directTransfer: p.directTransfer,
|
|
5462
5598
|
swappedContext: _nullishCoalesce(p.swappedContext, () => ( void 0)),
|
|
5463
|
-
initialEvent: _nullishCoalesce(p.initialEvent, () => ( void 0))
|
|
5599
|
+
initialEvent: _nullishCoalesce(p.initialEvent, () => ( void 0)),
|
|
5600
|
+
quoteFeeBreakdown: _nullishCoalesce(p.quoteFeeBreakdown, () => ( void 0))
|
|
5464
5601
|
};
|
|
5465
5602
|
}
|
|
5466
5603
|
}
|
|
@@ -5494,7 +5631,7 @@ function DepositFlow({
|
|
|
5494
5631
|
appBalanceUsd,
|
|
5495
5632
|
outputTokenRules,
|
|
5496
5633
|
rejectUnmapped,
|
|
5497
|
-
signerAddress =
|
|
5634
|
+
signerAddress = _chunkPUMTR35Ecjs.DEFAULT_SIGNER_ADDRESS,
|
|
5498
5635
|
sessionChainIds,
|
|
5499
5636
|
forceRegister = false,
|
|
5500
5637
|
enableSolana = true,
|
|
@@ -5511,17 +5648,18 @@ function DepositFlow({
|
|
|
5511
5648
|
uiConfig,
|
|
5512
5649
|
allowedRoutes,
|
|
5513
5650
|
onStepChange,
|
|
5651
|
+
onSwappedImmersiveChange,
|
|
5514
5652
|
onClose,
|
|
5515
5653
|
onLifecycle,
|
|
5516
5654
|
onEvent,
|
|
5517
5655
|
onError,
|
|
5518
5656
|
debug
|
|
5519
5657
|
}) {
|
|
5520
|
-
const rpcUrls =
|
|
5521
|
-
const onStepChangeRef =
|
|
5522
|
-
const onEventRef =
|
|
5523
|
-
const onLifecycleRef =
|
|
5524
|
-
const onErrorRef =
|
|
5658
|
+
const rpcUrls = _chunkIRI34U6Ncjs.useRpcUrls.call(void 0, );
|
|
5659
|
+
const onStepChangeRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onStepChange);
|
|
5660
|
+
const onEventRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onEvent);
|
|
5661
|
+
const onLifecycleRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onLifecycle);
|
|
5662
|
+
const onErrorRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onError);
|
|
5525
5663
|
const storeApi = useDepositStoreApi();
|
|
5526
5664
|
const flowSlice = useDepositStore((s) => s.flow);
|
|
5527
5665
|
const depositSlice = useDepositStore((s) => s.deposit);
|
|
@@ -5538,13 +5676,13 @@ function DepositFlow({
|
|
|
5538
5676
|
const stableWalletSelectionKeyRef = _react.useRef.call(void 0, null);
|
|
5539
5677
|
const logFlow = _react.useCallback.call(void 0,
|
|
5540
5678
|
(message, data) => {
|
|
5541
|
-
|
|
5679
|
+
_chunkIRI34U6Ncjs.debugLog.call(void 0, debug, "deposit-flow", message, data);
|
|
5542
5680
|
},
|
|
5543
5681
|
[debug]
|
|
5544
5682
|
);
|
|
5545
5683
|
const logFlowError = _react.useCallback.call(void 0,
|
|
5546
5684
|
(message, error, data) => {
|
|
5547
|
-
|
|
5685
|
+
_chunkIRI34U6Ncjs.debugError.call(void 0, debug, "deposit-flow", message, error, data);
|
|
5548
5686
|
},
|
|
5549
5687
|
[debug]
|
|
5550
5688
|
);
|
|
@@ -5568,12 +5706,12 @@ function DepositFlow({
|
|
|
5568
5706
|
};
|
|
5569
5707
|
}, [enableSwappedPreconnect]);
|
|
5570
5708
|
const dappSwitchChain = _react.useMemo.call(void 0, () => {
|
|
5571
|
-
if (!_optionalChain([dappWalletClient, 'optionalAccess',
|
|
5709
|
+
if (!_optionalChain([dappWalletClient, 'optionalAccess', _146 => _146.switchChain])) return void 0;
|
|
5572
5710
|
return async (chainId) => {
|
|
5573
|
-
await _optionalChain([dappWalletClient, 'access',
|
|
5711
|
+
await _optionalChain([dappWalletClient, 'access', _147 => _147.switchChain, 'optionalCall', _148 => _148({ id: chainId })]);
|
|
5574
5712
|
};
|
|
5575
5713
|
}, [dappWalletClient]);
|
|
5576
|
-
const connectedWalletAddress = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess',
|
|
5714
|
+
const connectedWalletAddress = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _149 => _149.account, 'optionalAccess', _150 => _150.address]), () => ( null));
|
|
5577
5715
|
const walletOptions = _react.useMemo.call(void 0, () => {
|
|
5578
5716
|
const options = [];
|
|
5579
5717
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -5587,7 +5725,7 @@ function DepositFlow({
|
|
|
5587
5725
|
});
|
|
5588
5726
|
seen.add(id);
|
|
5589
5727
|
}
|
|
5590
|
-
if (enableSolana && _optionalChain([reownWallet, 'optionalAccess',
|
|
5728
|
+
if (enableSolana && _optionalChain([reownWallet, 'optionalAccess', _151 => _151.isConnected]) && reownWallet.isSolana && reownWallet.solanaAddress && dappAddress) {
|
|
5591
5729
|
const id = _nullishCoalesce(reownWallet.caipAddress, () => ( `solana:${reownWallet.solanaAddress}`));
|
|
5592
5730
|
if (!seen.has(id)) {
|
|
5593
5731
|
options.push({
|
|
@@ -5599,7 +5737,7 @@ function DepositFlow({
|
|
|
5599
5737
|
});
|
|
5600
5738
|
seen.add(id);
|
|
5601
5739
|
}
|
|
5602
|
-
} else if (_optionalChain([reownWallet, 'optionalAccess',
|
|
5740
|
+
} else if (_optionalChain([reownWallet, 'optionalAccess', _152 => _152.address]) && reownWallet.isConnected && reownWallet.walletClient && reownWallet.publicClient && !seen.has(`evm:${reownWallet.address.toLowerCase()}`)) {
|
|
5603
5741
|
const id = `evm:${reownWallet.address.toLowerCase()}`;
|
|
5604
5742
|
if (!seen.has(id)) {
|
|
5605
5743
|
options.push({
|
|
@@ -5616,20 +5754,20 @@ function DepositFlow({
|
|
|
5616
5754
|
}, [
|
|
5617
5755
|
connectedWalletAddress,
|
|
5618
5756
|
dappAddress,
|
|
5619
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5620
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5621
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5622
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5623
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5757
|
+
_optionalChain([reownWallet, 'optionalAccess', _153 => _153.address]),
|
|
5758
|
+
_optionalChain([reownWallet, 'optionalAccess', _154 => _154.isConnected]),
|
|
5759
|
+
_optionalChain([reownWallet, 'optionalAccess', _155 => _155.walletClient]),
|
|
5760
|
+
_optionalChain([reownWallet, 'optionalAccess', _156 => _156.publicClient]),
|
|
5761
|
+
_optionalChain([reownWallet, 'optionalAccess', _157 => _157.icon]),
|
|
5624
5762
|
enableSolana,
|
|
5625
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5626
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5627
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5763
|
+
_optionalChain([reownWallet, 'optionalAccess', _158 => _158.isSolana]),
|
|
5764
|
+
_optionalChain([reownWallet, 'optionalAccess', _159 => _159.solanaAddress]),
|
|
5765
|
+
_optionalChain([reownWallet, 'optionalAccess', _160 => _160.caipAddress])
|
|
5628
5766
|
]);
|
|
5629
|
-
const canAutoLock = _optionalChain([dappWalletClient, 'optionalAccess',
|
|
5767
|
+
const canAutoLock = _optionalChain([dappWalletClient, 'optionalAccess', _161 => _161.account]) && dappAddress && !reownWallet && !enableFiatOnramp && !enableExchangeConnect;
|
|
5630
5768
|
const hasWalletOptions = walletOptions.length > 0;
|
|
5631
5769
|
const hasReownSession = Boolean(
|
|
5632
|
-
enableSolana ? _optionalChain([reownWallet, 'optionalAccess',
|
|
5770
|
+
enableSolana ? _optionalChain([reownWallet, 'optionalAccess', _162 => _162.isConnected]) || _optionalChain([reownWallet, 'optionalAccess', _163 => _163.address]) : _optionalChain([reownWallet, 'optionalAccess', _164 => _164.address])
|
|
5633
5771
|
);
|
|
5634
5772
|
const isDappImportWalletHydrating = Boolean(
|
|
5635
5773
|
hasDappWalletClientProp && dappWalletClient === void 0 || reownWallet && !hasReownSession && !reownWallet.isReady
|
|
@@ -5649,9 +5787,9 @@ function DepositFlow({
|
|
|
5649
5787
|
isConnectSelectionConfirmed,
|
|
5650
5788
|
selectedWalletId
|
|
5651
5789
|
]);
|
|
5652
|
-
const setupChainId = typeof targetChain === "number" && !
|
|
5653
|
-
const targetSymbol =
|
|
5654
|
-
const isTargetStablecoin =
|
|
5790
|
+
const setupChainId = typeof targetChain === "number" && !_chunkPUMTR35Ecjs.isVirtualDestination.call(void 0, targetChain) ? targetChain : typeof defaultSourceChain === "number" ? defaultSourceChain : _chains.base.id;
|
|
5791
|
+
const targetSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
5792
|
+
const isTargetStablecoin = _chunkPUMTR35Ecjs.isStablecoinSymbol.call(void 0, targetSymbol);
|
|
5655
5793
|
const targetMarketPriceRef = _react.useRef.call(void 0, null);
|
|
5656
5794
|
_react.useEffect.call(void 0, () => {
|
|
5657
5795
|
targetMarketPriceRef.current = null;
|
|
@@ -5677,16 +5815,16 @@ function DepositFlow({
|
|
|
5677
5815
|
return {
|
|
5678
5816
|
ownerAddress: dappAddress,
|
|
5679
5817
|
walletClient: void 0,
|
|
5680
|
-
publicClient: _nullishCoalesce(dappPublicClient, () => (
|
|
5818
|
+
publicClient: _nullishCoalesce(dappPublicClient, () => ( _chunkIRI34U6Ncjs.getPublicClient.call(void 0, setupChainId, rpcUrls))),
|
|
5681
5819
|
switchChain: void 0
|
|
5682
5820
|
};
|
|
5683
5821
|
}
|
|
5684
5822
|
if (canAutoLock) {
|
|
5685
|
-
const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess',
|
|
5823
|
+
const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _165 => _165.chain, 'optionalAccess', _166 => _166.id]), () => ( setupChainId));
|
|
5686
5824
|
return {
|
|
5687
5825
|
ownerAddress: dappWalletClient.account.address,
|
|
5688
5826
|
walletClient: dappWalletClient,
|
|
5689
|
-
publicClient: _nullishCoalesce(dappPublicClient, () => (
|
|
5827
|
+
publicClient: _nullishCoalesce(dappPublicClient, () => ( _chunkIRI34U6Ncjs.getPublicClient.call(void 0, fallbackChainId, rpcUrls))),
|
|
5690
5828
|
switchChain: dappSwitchChain
|
|
5691
5829
|
};
|
|
5692
5830
|
}
|
|
@@ -5700,24 +5838,24 @@ function DepositFlow({
|
|
|
5700
5838
|
return {
|
|
5701
5839
|
ownerAddress: dappAddress,
|
|
5702
5840
|
walletClient: void 0,
|
|
5703
|
-
publicClient: _nullishCoalesce(dappPublicClient, () => (
|
|
5841
|
+
publicClient: _nullishCoalesce(dappPublicClient, () => ( _chunkIRI34U6Ncjs.getPublicClient.call(void 0, setupChainId, rpcUrls))),
|
|
5704
5842
|
switchChain: void 0
|
|
5705
5843
|
};
|
|
5706
5844
|
}
|
|
5707
|
-
if (selectedOption.kind === "connected" && _optionalChain([dappWalletClient, 'optionalAccess',
|
|
5708
|
-
const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess',
|
|
5845
|
+
if (selectedOption.kind === "connected" && _optionalChain([dappWalletClient, 'optionalAccess', _167 => _167.account]) && selectedOption.address && dappWalletClient.account.address.toLowerCase() === selectedOption.address.toLowerCase()) {
|
|
5846
|
+
const fallbackChainId = _nullishCoalesce(_optionalChain([dappWalletClient, 'optionalAccess', _168 => _168.chain, 'optionalAccess', _169 => _169.id]), () => ( setupChainId));
|
|
5709
5847
|
return {
|
|
5710
5848
|
ownerAddress: dappWalletClient.account.address,
|
|
5711
5849
|
walletClient: dappWalletClient,
|
|
5712
|
-
publicClient: _nullishCoalesce(dappPublicClient, () => (
|
|
5850
|
+
publicClient: _nullishCoalesce(dappPublicClient, () => ( _chunkIRI34U6Ncjs.getPublicClient.call(void 0, fallbackChainId, rpcUrls))),
|
|
5713
5851
|
switchChain: dappSwitchChain
|
|
5714
5852
|
};
|
|
5715
5853
|
}
|
|
5716
|
-
if (selectedOption.kind === "external" && _optionalChain([reownWallet, 'optionalAccess',
|
|
5854
|
+
if (selectedOption.kind === "external" && _optionalChain([reownWallet, 'optionalAccess', _170 => _170.address]) && selectedOption.address && reownWallet.address.toLowerCase() === selectedOption.address.toLowerCase()) {
|
|
5717
5855
|
return {
|
|
5718
5856
|
ownerAddress: reownWallet.address,
|
|
5719
5857
|
walletClient: reownWallet.walletClient,
|
|
5720
|
-
publicClient: _nullishCoalesce(reownWallet.publicClient, () => (
|
|
5858
|
+
publicClient: _nullishCoalesce(reownWallet.publicClient, () => ( _chunkIRI34U6Ncjs.getPublicClient.call(void 0, setupChainId, rpcUrls))),
|
|
5721
5859
|
switchChain: reownWallet.switchChain
|
|
5722
5860
|
};
|
|
5723
5861
|
}
|
|
@@ -5756,7 +5894,7 @@ function DepositFlow({
|
|
|
5756
5894
|
return {
|
|
5757
5895
|
ownerAddress: dappAddress,
|
|
5758
5896
|
walletClient: void 0,
|
|
5759
|
-
publicClient: _nullishCoalesce(dappPublicClient, () => (
|
|
5897
|
+
publicClient: _nullishCoalesce(dappPublicClient, () => ( _chunkIRI34U6Ncjs.getPublicClient.call(void 0, setupChainId, rpcUrls))),
|
|
5760
5898
|
switchChain: void 0
|
|
5761
5899
|
};
|
|
5762
5900
|
}
|
|
@@ -5781,37 +5919,37 @@ function DepositFlow({
|
|
|
5781
5919
|
const selectedEvmWalletOwner = _react.useMemo.call(void 0, () => {
|
|
5782
5920
|
if (!selectedWalletId) return null;
|
|
5783
5921
|
const opt = walletOptions.find((o) => o.id === selectedWalletId);
|
|
5784
|
-
if (_optionalChain([opt, 'optionalAccess',
|
|
5922
|
+
if (_optionalChain([opt, 'optionalAccess', _171 => _171.kind]) === "external" && opt.address) {
|
|
5785
5923
|
return opt.address;
|
|
5786
5924
|
}
|
|
5787
|
-
if (_optionalChain([opt, 'optionalAccess',
|
|
5925
|
+
if (_optionalChain([opt, 'optionalAccess', _172 => _172.kind]) === "connected" && opt.address) {
|
|
5788
5926
|
return opt.address;
|
|
5789
5927
|
}
|
|
5790
5928
|
return null;
|
|
5791
5929
|
}, [selectedWalletId, walletOptions]);
|
|
5792
5930
|
const dappImportOwner = _react.useMemo.call(void 0, () => {
|
|
5793
5931
|
if (selectedEvmWalletOwner) return selectedEvmWalletOwner;
|
|
5794
|
-
if (_optionalChain([reownWallet, 'optionalAccess',
|
|
5932
|
+
if (_optionalChain([reownWallet, 'optionalAccess', _173 => _173.address]) && reownWallet.isConnected) {
|
|
5795
5933
|
return reownWallet.address;
|
|
5796
5934
|
}
|
|
5797
5935
|
if (connectedWalletAddress) return connectedWalletAddress;
|
|
5798
5936
|
return null;
|
|
5799
5937
|
}, [
|
|
5800
5938
|
selectedEvmWalletOwner,
|
|
5801
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5802
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
5939
|
+
_optionalChain([reownWallet, 'optionalAccess', _174 => _174.address]),
|
|
5940
|
+
_optionalChain([reownWallet, 'optionalAccess', _175 => _175.isConnected]),
|
|
5803
5941
|
connectedWalletAddress
|
|
5804
5942
|
]);
|
|
5805
5943
|
const activeOwner = _react.useMemo.call(void 0,
|
|
5806
5944
|
() => resolveOwnerForMode(flowMode, {
|
|
5807
5945
|
dappAddress,
|
|
5808
|
-
walletOwner: _nullishCoalesce(_optionalChain([signerContext, 'optionalAccess',
|
|
5946
|
+
walletOwner: _nullishCoalesce(_optionalChain([signerContext, 'optionalAccess', _176 => _176.ownerAddress]), () => ( (canAutoLock ? connectedWalletAddress : selectedEvmWalletOwner))),
|
|
5809
5947
|
dappImportOwner
|
|
5810
5948
|
}),
|
|
5811
5949
|
[
|
|
5812
5950
|
flowMode,
|
|
5813
5951
|
dappAddress,
|
|
5814
|
-
_optionalChain([signerContext, 'optionalAccess',
|
|
5952
|
+
_optionalChain([signerContext, 'optionalAccess', _177 => _177.ownerAddress]),
|
|
5815
5953
|
canAutoLock,
|
|
5816
5954
|
connectedWalletAddress,
|
|
5817
5955
|
selectedEvmWalletOwner,
|
|
@@ -5840,12 +5978,12 @@ function DepositFlow({
|
|
|
5840
5978
|
return;
|
|
5841
5979
|
}
|
|
5842
5980
|
lastActiveSetupLifecycleKeyRef.current = lifecycleKey;
|
|
5843
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
5981
|
+
_optionalChain([onLifecycleRef, 'access', _178 => _178.current, 'optionalCall', _179 => _179({
|
|
5844
5982
|
type: "smart-account-changed",
|
|
5845
5983
|
evm: activeEntry.smartAccount,
|
|
5846
5984
|
solana: _nullishCoalesce(activeEntry.solanaDepositAddress, () => ( null))
|
|
5847
5985
|
})]);
|
|
5848
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
5986
|
+
_optionalChain([onLifecycleRef, 'access', _180 => _180.current, 'optionalCall', _181 => _181({
|
|
5849
5987
|
type: "connected",
|
|
5850
5988
|
address: activeOwner,
|
|
5851
5989
|
smartAccount: activeEntry.smartAccount
|
|
@@ -5891,7 +6029,7 @@ function DepositFlow({
|
|
|
5891
6029
|
const currentBackHandler = canGoBackFromHere ? handleBack : void 0;
|
|
5892
6030
|
const currentScreen = showConnectStep ? "connect" : effectiveStep.type;
|
|
5893
6031
|
_react.useEffect.call(void 0, () => {
|
|
5894
|
-
_optionalChain([onStepChangeRef, 'access',
|
|
6032
|
+
_optionalChain([onStepChangeRef, 'access', _182 => _182.current, 'optionalCall', _183 => _183(currentBackHandler, currentScreen)]);
|
|
5895
6033
|
}, [currentBackHandler, currentScreen, onStepChangeRef]);
|
|
5896
6034
|
const lastModalHeightRef = _react.useRef.call(void 0, 0);
|
|
5897
6035
|
const modalContentElRef = _react.useRef.call(void 0, null);
|
|
@@ -5901,7 +6039,7 @@ function DepositFlow({
|
|
|
5901
6039
|
modalContentElRef.current = mc;
|
|
5902
6040
|
const ro = new ResizeObserver((entries) => {
|
|
5903
6041
|
for (const entry of entries) {
|
|
5904
|
-
const border = _optionalChain([entry, 'access',
|
|
6042
|
+
const border = _optionalChain([entry, 'access', _184 => _184.borderBoxSize, 'optionalAccess', _185 => _185[0], 'optionalAccess', _186 => _186.blockSize]);
|
|
5905
6043
|
lastModalHeightRef.current = typeof border === "number" ? border : entry.contentRect.height;
|
|
5906
6044
|
}
|
|
5907
6045
|
});
|
|
@@ -5942,23 +6080,23 @@ function DepositFlow({
|
|
|
5942
6080
|
}
|
|
5943
6081
|
lastStepOpenEventKeyRef.current = stepOpenEventKey;
|
|
5944
6082
|
if (effectiveStep.type === "select-asset") {
|
|
5945
|
-
_optionalChain([onEventRef, 'access',
|
|
6083
|
+
_optionalChain([onEventRef, 'access', _187 => _187.current, 'optionalCall', _188 => _188({
|
|
5946
6084
|
type: "deposit_modal_connected_wallet_select_source_open",
|
|
5947
6085
|
total_balance_in_external_wallet: totalBalanceUsd,
|
|
5948
6086
|
pred_balance: totalBalanceUsd
|
|
5949
6087
|
})]);
|
|
5950
6088
|
} else if (effectiveStep.type === "deposit-address") {
|
|
5951
|
-
const chainName =
|
|
5952
|
-
const tokenSymbol =
|
|
5953
|
-
_optionalChain([onEventRef, 'access',
|
|
6089
|
+
const chainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChain);
|
|
6090
|
+
const tokenSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
6091
|
+
_optionalChain([onEventRef, 'access', _189 => _189.current, 'optionalCall', _190 => _190({
|
|
5954
6092
|
type: "deposit_modal_transfer_crypto_open",
|
|
5955
6093
|
default_chain: chainName,
|
|
5956
6094
|
default_token: tokenSymbol,
|
|
5957
6095
|
pred_balance: totalBalanceUsd
|
|
5958
6096
|
})]);
|
|
5959
6097
|
} else if (effectiveStep.type === "amount" && stepSendToken) {
|
|
5960
|
-
const receiveSymbol =
|
|
5961
|
-
_optionalChain([onEventRef, 'access',
|
|
6098
|
+
const receiveSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
6099
|
+
_optionalChain([onEventRef, 'access', _191 => _191.current, 'optionalCall', _192 => _192({
|
|
5962
6100
|
type: "deposit_modal_connected_wallet_enter_value_open",
|
|
5963
6101
|
send_token: stepSendToken,
|
|
5964
6102
|
receive_token: receiveSymbol,
|
|
@@ -5991,7 +6129,7 @@ function DepositFlow({
|
|
|
5991
6129
|
targetToken
|
|
5992
6130
|
]);
|
|
5993
6131
|
_react.useEffect.call(void 0, () => {
|
|
5994
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6132
|
+
_optionalChain([onLifecycleRef, 'access', _193 => _193.current, 'optionalCall', _194 => _194({
|
|
5995
6133
|
type: "balance-changed",
|
|
5996
6134
|
totalUsd: totalBalanceUsd
|
|
5997
6135
|
})]);
|
|
@@ -6007,7 +6145,7 @@ function DepositFlow({
|
|
|
6007
6145
|
const handleConfirmWallet = _react.useCallback.call(void 0,
|
|
6008
6146
|
(walletId) => {
|
|
6009
6147
|
const selectedOption = walletOptions.find((o) => o.id === walletId);
|
|
6010
|
-
const mode = enableSolana && _optionalChain([selectedOption, 'optionalAccess',
|
|
6148
|
+
const mode = enableSolana && _optionalChain([selectedOption, 'optionalAccess', _195 => _195.kind]) === "solana" ? "solana-wallet" : "wallet";
|
|
6011
6149
|
storeApi.dispatch({
|
|
6012
6150
|
type: "connect/wallet-confirmed",
|
|
6013
6151
|
walletId,
|
|
@@ -6017,7 +6155,7 @@ function DepositFlow({
|
|
|
6017
6155
|
[walletOptions, enableSolana, storeApi]
|
|
6018
6156
|
);
|
|
6019
6157
|
const isSolanaWalletConnected = Boolean(
|
|
6020
|
-
enableSolana && _optionalChain([reownWallet, 'optionalAccess',
|
|
6158
|
+
enableSolana && _optionalChain([reownWallet, 'optionalAccess', _196 => _196.isConnected]) && _optionalChain([reownWallet, 'optionalAccess', _197 => _197.isSolana])
|
|
6021
6159
|
);
|
|
6022
6160
|
const dappImportsKey = dappImports ? Object.keys(dappImports).filter((k) => dappImports[k]).sort().join(",") : "";
|
|
6023
6161
|
const enabledDappImportProviders = _react.useMemo.call(void 0,
|
|
@@ -6034,7 +6172,7 @@ function DepositFlow({
|
|
|
6034
6172
|
const owner = dappImportOwner;
|
|
6035
6173
|
if (owner) {
|
|
6036
6174
|
const wallet = walletOptions.find(
|
|
6037
|
-
(o) => _optionalChain([(_nullishCoalesce(o.address, () => ( null))), 'optionalAccess',
|
|
6175
|
+
(o) => _optionalChain([(_nullishCoalesce(o.address, () => ( null))), 'optionalAccess', _198 => _198.toLowerCase, 'call', _199 => _199()]) === owner.toLowerCase()
|
|
6038
6176
|
);
|
|
6039
6177
|
if (wallet) {
|
|
6040
6178
|
storeApi.dispatch({
|
|
@@ -6075,8 +6213,8 @@ function DepositFlow({
|
|
|
6075
6213
|
eoa: dappImportOwner,
|
|
6076
6214
|
getPublicClient: (chainId) => {
|
|
6077
6215
|
try {
|
|
6078
|
-
return
|
|
6079
|
-
} catch (
|
|
6216
|
+
return _chunkIRI34U6Ncjs.getPublicClient.call(void 0, chainId, rpcUrls);
|
|
6217
|
+
} catch (e32) {
|
|
6080
6218
|
return null;
|
|
6081
6219
|
}
|
|
6082
6220
|
},
|
|
@@ -6152,7 +6290,7 @@ function DepositFlow({
|
|
|
6152
6290
|
}, [activeDappImportProviderId, enabledDappImportProviders]);
|
|
6153
6291
|
const activeDappImportAvailability = _react.useMemo.call(void 0, () => {
|
|
6154
6292
|
if (!activeDappImportProviderId) return null;
|
|
6155
|
-
if (!dappImportOwner || _optionalChain([dappImportAvailabilityOwner, 'optionalAccess',
|
|
6293
|
+
if (!dappImportOwner || _optionalChain([dappImportAvailabilityOwner, 'optionalAccess', _200 => _200.toLowerCase, 'call', _201 => _201()]) !== dappImportOwner.toLowerCase()) {
|
|
6156
6294
|
return null;
|
|
6157
6295
|
}
|
|
6158
6296
|
const entry = dappImportAvailability[activeDappImportProviderId];
|
|
@@ -6193,7 +6331,7 @@ function DepositFlow({
|
|
|
6193
6331
|
setup: setupSlice
|
|
6194
6332
|
});
|
|
6195
6333
|
const pinnableWallet = dappImportOwner ? _nullishCoalesce(walletOptions.find(
|
|
6196
|
-
(o) => _optionalChain([(_nullishCoalesce(o.address, () => ( null))), 'optionalAccess',
|
|
6334
|
+
(o) => _optionalChain([(_nullishCoalesce(o.address, () => ( null))), 'optionalAccess', _202 => _202.toLowerCase, 'call', _203 => _203()]) === dappImportOwner.toLowerCase()
|
|
6197
6335
|
), () => ( null)) : null;
|
|
6198
6336
|
const outcome = resolveBootOutcome({
|
|
6199
6337
|
status,
|
|
@@ -6235,7 +6373,7 @@ function DepositFlow({
|
|
|
6235
6373
|
if (dappImportOwner) {
|
|
6236
6374
|
const plan = bootRetryPlan({
|
|
6237
6375
|
setupStatus: readSetupForOwner(snapshot.setup, dappImportOwner).status,
|
|
6238
|
-
availabilityEntry: _optionalChain([snapshot, 'access',
|
|
6376
|
+
availabilityEntry: _optionalChain([snapshot, 'access', _204 => _204.dappImport, 'access', _205 => _205.availabilityOwner, 'optionalAccess', _206 => _206.toLowerCase, 'call', _207 => _207()]) === dappImportOwner.toLowerCase() ? snapshot.dappImport.availability[providerId] : void 0
|
|
6239
6377
|
});
|
|
6240
6378
|
if (plan.restartSetup) {
|
|
6241
6379
|
storeApi.dispatch({
|
|
@@ -6316,7 +6454,7 @@ function DepositFlow({
|
|
|
6316
6454
|
swappedUrlPrefetchRef.current.clear();
|
|
6317
6455
|
}, [dappAddress]);
|
|
6318
6456
|
const handleNewDeposit = _react.useCallback.call(void 0, () => {
|
|
6319
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6457
|
+
_optionalChain([onLifecycleRef, 'access', _208 => _208.current, 'optionalCall', _209 => _209({
|
|
6320
6458
|
type: "smart-account-changed",
|
|
6321
6459
|
evm: null,
|
|
6322
6460
|
solana: null
|
|
@@ -6362,13 +6500,13 @@ function DepositFlow({
|
|
|
6362
6500
|
};
|
|
6363
6501
|
push(dappAddress);
|
|
6364
6502
|
push(connectedWalletAddress);
|
|
6365
|
-
push(_optionalChain([reownWallet, 'optionalAccess',
|
|
6503
|
+
push(_optionalChain([reownWallet, 'optionalAccess', _210 => _210.address]));
|
|
6366
6504
|
push(dappImportOwner);
|
|
6367
6505
|
return owners;
|
|
6368
6506
|
}, [
|
|
6369
6507
|
dappAddress,
|
|
6370
6508
|
connectedWalletAddress,
|
|
6371
|
-
_optionalChain([reownWallet, 'optionalAccess',
|
|
6509
|
+
_optionalChain([reownWallet, 'optionalAccess', _211 => _211.address]),
|
|
6372
6510
|
dappImportOwner
|
|
6373
6511
|
]);
|
|
6374
6512
|
_react.useEffect.call(void 0, () => {
|
|
@@ -6382,7 +6520,7 @@ function DepositFlow({
|
|
|
6382
6520
|
try {
|
|
6383
6521
|
sessionOwner = await resolveSessionOwner(owner);
|
|
6384
6522
|
} catch (error) {
|
|
6385
|
-
|
|
6523
|
+
_chunkIRI34U6Ncjs.debugError.call(void 0,
|
|
6386
6524
|
debug,
|
|
6387
6525
|
"deposit-flow",
|
|
6388
6526
|
"session-owner:resolve-failed",
|
|
@@ -6489,11 +6627,11 @@ function DepositFlow({
|
|
|
6489
6627
|
return;
|
|
6490
6628
|
}
|
|
6491
6629
|
storeApi.dispatch({ type: "portfolio/loading", network, address });
|
|
6492
|
-
const requestId = _optionalChain([readPortfolioEntry, 'call',
|
|
6630
|
+
const requestId = _optionalChain([readPortfolioEntry, 'call', _212 => _212(
|
|
6493
6631
|
storeApi.getState().portfolio,
|
|
6494
6632
|
network,
|
|
6495
6633
|
address
|
|
6496
|
-
), 'optionalAccess',
|
|
6634
|
+
), 'optionalAccess', _213 => _213.requestId]);
|
|
6497
6635
|
if (requestId === void 0) return;
|
|
6498
6636
|
void (async () => {
|
|
6499
6637
|
try {
|
|
@@ -6507,7 +6645,7 @@ function DepositFlow({
|
|
|
6507
6645
|
requestId,
|
|
6508
6646
|
totalUsd: portfolio.totalUsd
|
|
6509
6647
|
});
|
|
6510
|
-
} catch (
|
|
6648
|
+
} catch (e33) {
|
|
6511
6649
|
storeApi.dispatch({
|
|
6512
6650
|
type: "portfolio/failed",
|
|
6513
6651
|
network,
|
|
@@ -6525,7 +6663,7 @@ function DepositFlow({
|
|
|
6525
6663
|
sourceChain: data.sourceChain,
|
|
6526
6664
|
amount: data.amount
|
|
6527
6665
|
});
|
|
6528
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6666
|
+
_optionalChain([onLifecycleRef, 'access', _214 => _214.current, 'optionalCall', _215 => _215({ type: "submitted", ...data })]);
|
|
6529
6667
|
},
|
|
6530
6668
|
[logFlow, onLifecycleRef]
|
|
6531
6669
|
);
|
|
@@ -6544,8 +6682,8 @@ function DepositFlow({
|
|
|
6544
6682
|
);
|
|
6545
6683
|
const handleSolanaAmountContinue = _react.useCallback.call(void 0,
|
|
6546
6684
|
(token, sourceAmount, inputAmountUsd) => {
|
|
6547
|
-
const targetSym =
|
|
6548
|
-
const isTargetStable =
|
|
6685
|
+
const targetSym = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
6686
|
+
const isTargetStable = _chunkPUMTR35Ecjs.isStablecoinSymbol.call(void 0, targetSym);
|
|
6549
6687
|
const targetTokenPriceUsd = isTargetStable ? 1 : targetMarketPriceRef.current;
|
|
6550
6688
|
logFlow("solana:amount:continue", {
|
|
6551
6689
|
token: token.symbol,
|
|
@@ -6585,7 +6723,7 @@ function DepositFlow({
|
|
|
6585
6723
|
sourceDecimals: tokenAtSubmit.decimals,
|
|
6586
6724
|
inputAmountUsd: amountUsd
|
|
6587
6725
|
});
|
|
6588
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6726
|
+
_optionalChain([onLifecycleRef, 'access', _216 => _216.current, 'optionalCall', _217 => _217({
|
|
6589
6727
|
type: "submitted",
|
|
6590
6728
|
txHash,
|
|
6591
6729
|
sourceChain: "solana",
|
|
@@ -6598,7 +6736,7 @@ function DepositFlow({
|
|
|
6598
6736
|
);
|
|
6599
6737
|
const handleAssetContinue = _react.useCallback.call(void 0,
|
|
6600
6738
|
(asset) => {
|
|
6601
|
-
_optionalChain([onEventRef, 'access',
|
|
6739
|
+
_optionalChain([onEventRef, 'access', _218 => _218.current, 'optionalCall', _219 => _219({
|
|
6602
6740
|
type: "deposit_modal_connected_wallet_select_source_cta_click",
|
|
6603
6741
|
total_balance_in_external_wallet: totalBalanceUsd,
|
|
6604
6742
|
pred_balance: totalBalanceUsd,
|
|
@@ -6621,8 +6759,8 @@ function DepositFlow({
|
|
|
6621
6759
|
activeOwner
|
|
6622
6760
|
);
|
|
6623
6761
|
if (entry.status !== "ready") return;
|
|
6624
|
-
const targetSym =
|
|
6625
|
-
const isTargetStable =
|
|
6762
|
+
const targetSym = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
6763
|
+
const isTargetStable = _chunkPUMTR35Ecjs.isStablecoinSymbol.call(void 0, targetSym);
|
|
6626
6764
|
const targetTokenPriceUsd = isTargetStable ? 1 : targetMarketPriceRef.current;
|
|
6627
6765
|
storeApi.dispatch({
|
|
6628
6766
|
type: "amount/entered",
|
|
@@ -6636,7 +6774,7 @@ function DepositFlow({
|
|
|
6636
6774
|
[targetToken, targetChain, storeApi, activeOwner]
|
|
6637
6775
|
);
|
|
6638
6776
|
const handleDepositSubmitted = _react.useCallback.call(void 0,
|
|
6639
|
-
(txHash, chainId, amount, token) => {
|
|
6777
|
+
(txHash, chainId, amount, token, quoteFeeBreakdown) => {
|
|
6640
6778
|
logFlow("evm:submitted", {
|
|
6641
6779
|
txHash,
|
|
6642
6780
|
sourceChain: chainId,
|
|
@@ -6652,10 +6790,11 @@ function DepositFlow({
|
|
|
6652
6790
|
sourceChain: chainId,
|
|
6653
6791
|
sourceToken: token,
|
|
6654
6792
|
amount,
|
|
6655
|
-
sourceSymbol: _optionalChain([asset, 'optionalAccess',
|
|
6656
|
-
sourceDecimals: _optionalChain([asset, 'optionalAccess',
|
|
6793
|
+
sourceSymbol: _optionalChain([asset, 'optionalAccess', _220 => _220.symbol]),
|
|
6794
|
+
sourceDecimals: _optionalChain([asset, 'optionalAccess', _221 => _221.decimals]),
|
|
6657
6795
|
inputAmountUsd: _nullishCoalesce(depositAtSubmit.inputAmountUsd, () => ( void 0)),
|
|
6658
|
-
directTransfer: !dappImport && isSameRoute2(chainId, token, targetChain, targetToken)
|
|
6796
|
+
directTransfer: !dappImport && isSameRoute2(chainId, token, targetChain, targetToken),
|
|
6797
|
+
quoteFeeBreakdown
|
|
6659
6798
|
});
|
|
6660
6799
|
},
|
|
6661
6800
|
[logFlow, storeApi, targetChain, targetToken]
|
|
@@ -6670,10 +6809,12 @@ function DepositFlow({
|
|
|
6670
6809
|
const stateAtComplete = storeApi.getState();
|
|
6671
6810
|
const swappedContext = stateAtComplete.flow.mode === "exchange-connect" ? {
|
|
6672
6811
|
variant: "connect",
|
|
6673
|
-
method: stateAtComplete.exchange.selectedConnection
|
|
6812
|
+
method: stateAtComplete.exchange.selectedConnection,
|
|
6813
|
+
expectedOrderUuid: info.expectedOrderUuid
|
|
6674
6814
|
} : stateAtComplete.flow.mode === "fiat-onramp" ? {
|
|
6675
6815
|
variant: "fiat",
|
|
6676
|
-
method: stateAtComplete.fiat.selectedMethod
|
|
6816
|
+
method: stateAtComplete.fiat.selectedMethod,
|
|
6817
|
+
expectedOrderUuid: info.expectedOrderUuid
|
|
6677
6818
|
} : void 0;
|
|
6678
6819
|
storeApi.dispatch({
|
|
6679
6820
|
type: "deposit/submitted",
|
|
@@ -6686,25 +6827,40 @@ function DepositFlow({
|
|
|
6686
6827
|
swappedContext,
|
|
6687
6828
|
initialEvent: info.initialEvent
|
|
6688
6829
|
});
|
|
6689
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6830
|
+
_optionalChain([onLifecycleRef, 'access', _222 => _222.current, 'optionalCall', _223 => _223({
|
|
6690
6831
|
type: "submitted",
|
|
6691
6832
|
txHash: info.txHash,
|
|
6692
6833
|
sourceChain: SWAPPED_SOURCE_CHAIN,
|
|
6693
6834
|
amount,
|
|
6694
6835
|
sourceDecimals: SWAPPED_SOURCE_DECIMALS
|
|
6695
6836
|
})]);
|
|
6837
|
+
void (async () => {
|
|
6838
|
+
const quoteFeeBreakdown = await fetchQuoteFeeBreakdown({
|
|
6839
|
+
service,
|
|
6840
|
+
account: info.smartAccount,
|
|
6841
|
+
sourceChainId: SWAPPED_SOURCE_CHAIN,
|
|
6842
|
+
sourceToken: SWAPPED_SOURCE_TOKEN,
|
|
6843
|
+
amount
|
|
6844
|
+
});
|
|
6845
|
+
if (!quoteFeeBreakdown) return;
|
|
6846
|
+
storeApi.dispatch({
|
|
6847
|
+
type: "processing/quote-fee-breakdown-loaded",
|
|
6848
|
+
txHash: info.txHash,
|
|
6849
|
+
quoteFeeBreakdown
|
|
6850
|
+
});
|
|
6851
|
+
})();
|
|
6696
6852
|
},
|
|
6697
|
-
[logFlow,
|
|
6853
|
+
[logFlow, onLifecycleRef, service, storeApi]
|
|
6698
6854
|
);
|
|
6699
6855
|
const handleDepositSubmittedCallback = _react.useCallback.call(void 0,
|
|
6700
6856
|
(txHash, sourceChain, amount) => {
|
|
6701
6857
|
const depositAtSubmit = storeApi.getState().deposit;
|
|
6702
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6858
|
+
_optionalChain([onLifecycleRef, 'access', _224 => _224.current, 'optionalCall', _225 => _225({
|
|
6703
6859
|
type: "submitted",
|
|
6704
6860
|
txHash,
|
|
6705
6861
|
sourceChain,
|
|
6706
6862
|
amount,
|
|
6707
|
-
sourceDecimals: _optionalChain([depositAtSubmit, 'access',
|
|
6863
|
+
sourceDecimals: _optionalChain([depositAtSubmit, 'access', _226 => _226.selectedAsset, 'optionalAccess', _227 => _227.decimals]),
|
|
6708
6864
|
amountUsd: _nullishCoalesce(depositAtSubmit.inputAmountUsd, () => ( void 0))
|
|
6709
6865
|
})]);
|
|
6710
6866
|
},
|
|
@@ -6713,7 +6869,7 @@ function DepositFlow({
|
|
|
6713
6869
|
const handleDepositComplete = _react.useCallback.call(void 0,
|
|
6714
6870
|
(txHash, destinationTxHash, context) => {
|
|
6715
6871
|
logFlow("deposit:complete", { txHash, destinationTxHash, ...context });
|
|
6716
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6872
|
+
_optionalChain([onLifecycleRef, 'access', _228 => _228.current, 'optionalCall', _229 => _229({
|
|
6717
6873
|
type: "complete",
|
|
6718
6874
|
txHash,
|
|
6719
6875
|
destinationTxHash,
|
|
@@ -6725,14 +6881,14 @@ function DepositFlow({
|
|
|
6725
6881
|
const handleDepositFailed = _react.useCallback.call(void 0,
|
|
6726
6882
|
(txHash, error) => {
|
|
6727
6883
|
logFlowError("deposit:failed", error, { txHash });
|
|
6728
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
6884
|
+
_optionalChain([onLifecycleRef, 'access', _230 => _230.current, 'optionalCall', _231 => _231({ type: "failed", txHash, error })]);
|
|
6729
6885
|
},
|
|
6730
6886
|
[logFlowError, onLifecycleRef]
|
|
6731
6887
|
);
|
|
6732
6888
|
const handleError = _react.useCallback.call(void 0,
|
|
6733
6889
|
(message, code) => {
|
|
6734
6890
|
logFlowError("flow:error", message, { code });
|
|
6735
|
-
_optionalChain([onErrorRef, 'access',
|
|
6891
|
+
_optionalChain([onErrorRef, 'access', _232 => _232.current, 'optionalCall', _233 => _233({ message, code })]);
|
|
6736
6892
|
},
|
|
6737
6893
|
[logFlowError, onErrorRef]
|
|
6738
6894
|
);
|
|
@@ -6790,8 +6946,8 @@ function DepositFlow({
|
|
|
6790
6946
|
address: _nullishCoalesce(_nullishCoalesce(option.address, () => ( option.solanaAddress)), () => ( option.id)),
|
|
6791
6947
|
state,
|
|
6792
6948
|
errorReason: _nullishCoalesce(entry.message, () => ( void 0)),
|
|
6793
|
-
balanceStatus: _nullishCoalesce(_optionalChain([portfolioEntry, 'optionalAccess',
|
|
6794
|
-
balanceUsd: _optionalChain([portfolioEntry, 'optionalAccess',
|
|
6949
|
+
balanceStatus: _nullishCoalesce(_optionalChain([portfolioEntry, 'optionalAccess', _234 => _234.status]), () => ( "loading")),
|
|
6950
|
+
balanceUsd: _optionalChain([portfolioEntry, 'optionalAccess', _235 => _235.status]) === "ready" ? portfolioEntry.totalUsd : null
|
|
6795
6951
|
};
|
|
6796
6952
|
});
|
|
6797
6953
|
}, [walletOptions, setupSlice, dappAddress, portfolioSlice]);
|
|
@@ -6808,7 +6964,7 @@ function DepositFlow({
|
|
|
6808
6964
|
);
|
|
6809
6965
|
if (showConnectStep) {
|
|
6810
6966
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-body", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6811
|
-
|
|
6967
|
+
_chunkIRI34U6Ncjs.ConnectStep,
|
|
6812
6968
|
{
|
|
6813
6969
|
walletRows,
|
|
6814
6970
|
transferCryptoState: dappAddress ? transferCryptoState : void 0,
|
|
@@ -6841,7 +6997,7 @@ function DepositFlow({
|
|
|
6841
6997
|
},
|
|
6842
6998
|
dappImports: connectStepDappImports,
|
|
6843
6999
|
onSelectDappImport: (providerId) => {
|
|
6844
|
-
const availabilityEntry = dappImportOwner && _optionalChain([dappImportAvailabilityOwner, 'optionalAccess',
|
|
7000
|
+
const availabilityEntry = dappImportOwner && _optionalChain([dappImportAvailabilityOwner, 'optionalAccess', _236 => _236.toLowerCase, 'call', _237 => _237()]) === dappImportOwner.toLowerCase() ? dappImportAvailability[providerId] : void 0;
|
|
6845
7001
|
if (availabilityEntry === "error") {
|
|
6846
7002
|
storeApi.dispatch({
|
|
6847
7003
|
type: "dapp-import/availability-retry-requested"
|
|
@@ -6892,9 +7048,9 @@ function DepositFlow({
|
|
|
6892
7048
|
onDepositComplete: handleDepositComplete,
|
|
6893
7049
|
onDepositFailed: handleDepositFailed,
|
|
6894
7050
|
onCopyAddress: () => {
|
|
6895
|
-
const chainName =
|
|
6896
|
-
const tokenSymbol =
|
|
6897
|
-
_optionalChain([onEvent, 'optionalCall',
|
|
7051
|
+
const chainName = _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChain);
|
|
7052
|
+
const tokenSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
7053
|
+
_optionalChain([onEvent, 'optionalCall', _238 => _238({
|
|
6898
7054
|
type: "deposit_modal_transfer_crypto_cta_click",
|
|
6899
7055
|
default_chain: chainName,
|
|
6900
7056
|
default_token: tokenSymbol,
|
|
@@ -6936,11 +7092,12 @@ function DepositFlow({
|
|
|
6936
7092
|
onClose: _nullishCoalesce(onClose, () => ( (() => {
|
|
6937
7093
|
}))),
|
|
6938
7094
|
onGoBack: handleBack,
|
|
6939
|
-
onError: handleError
|
|
7095
|
+
onError: handleError,
|
|
7096
|
+
onImmersiveChange: onSwappedImmersiveChange
|
|
6940
7097
|
}
|
|
6941
7098
|
),
|
|
6942
7099
|
step.type === "processing" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
6943
|
-
|
|
7100
|
+
_chunkIRI34U6Ncjs.ProcessingStep,
|
|
6944
7101
|
{
|
|
6945
7102
|
smartAccount: step.smartAccount,
|
|
6946
7103
|
solanaDepositAddress: step.solanaDepositAddress,
|
|
@@ -6954,10 +7111,12 @@ function DepositFlow({
|
|
|
6954
7111
|
sourceDecimals: step.sourceDecimals,
|
|
6955
7112
|
amountUsd: step.inputAmountUsd,
|
|
6956
7113
|
swappedContext: step.swappedContext,
|
|
7114
|
+
quoteFeeBreakdown: step.quoteFeeBreakdown,
|
|
6957
7115
|
service,
|
|
6958
7116
|
directTransfer: step.directTransfer,
|
|
6959
7117
|
initialEvent: step.initialEvent,
|
|
6960
7118
|
isSwappedOrder: true,
|
|
7119
|
+
uiConfig,
|
|
6961
7120
|
onClose,
|
|
6962
7121
|
onNewDeposit: handleNewDeposit,
|
|
6963
7122
|
onDepositComplete: handleDepositComplete,
|
|
@@ -7005,11 +7164,12 @@ function DepositFlow({
|
|
|
7005
7164
|
onClose: _nullishCoalesce(onClose, () => ( (() => {
|
|
7006
7165
|
}))),
|
|
7007
7166
|
onGoBack: handleBack,
|
|
7008
|
-
onError: handleError
|
|
7167
|
+
onError: handleError,
|
|
7168
|
+
onImmersiveChange: onSwappedImmersiveChange
|
|
7009
7169
|
}
|
|
7010
7170
|
),
|
|
7011
7171
|
step.type === "processing" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7012
|
-
|
|
7172
|
+
_chunkIRI34U6Ncjs.ProcessingStep,
|
|
7013
7173
|
{
|
|
7014
7174
|
smartAccount: step.smartAccount,
|
|
7015
7175
|
solanaDepositAddress: step.solanaDepositAddress,
|
|
@@ -7023,10 +7183,12 @@ function DepositFlow({
|
|
|
7023
7183
|
sourceDecimals: step.sourceDecimals,
|
|
7024
7184
|
amountUsd: step.inputAmountUsd,
|
|
7025
7185
|
swappedContext: step.swappedContext,
|
|
7186
|
+
quoteFeeBreakdown: step.quoteFeeBreakdown,
|
|
7026
7187
|
service,
|
|
7027
7188
|
directTransfer: step.directTransfer,
|
|
7028
7189
|
initialEvent: step.initialEvent,
|
|
7029
7190
|
isSwappedOrder: true,
|
|
7191
|
+
uiConfig,
|
|
7030
7192
|
onClose,
|
|
7031
7193
|
onNewDeposit: handleNewDeposit,
|
|
7032
7194
|
onDepositComplete: handleDepositComplete,
|
|
@@ -7041,8 +7203,8 @@ function DepositFlow({
|
|
|
7041
7203
|
}
|
|
7042
7204
|
if (isSolanaWalletMode) {
|
|
7043
7205
|
if (!dappAddress) return null;
|
|
7044
|
-
const solanaAddr = _optionalChain([reownWallet, 'optionalAccess',
|
|
7045
|
-
const solanaProvider = _optionalChain([reownWallet, 'optionalAccess',
|
|
7206
|
+
const solanaAddr = _optionalChain([reownWallet, 'optionalAccess', _239 => _239.solanaAddress]);
|
|
7207
|
+
const solanaProvider = _optionalChain([reownWallet, 'optionalAccess', _240 => _240.solanaProvider]);
|
|
7046
7208
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-modal-body", children: [
|
|
7047
7209
|
effectiveStep.type === "setup" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7048
7210
|
AccountPreparingSkeleton,
|
|
@@ -7074,11 +7236,8 @@ function DepositFlow({
|
|
|
7074
7236
|
defaultAmount: effectiveStep.inputAmountUsd,
|
|
7075
7237
|
uiConfig,
|
|
7076
7238
|
targetChain,
|
|
7077
|
-
targetChainName:
|
|
7078
|
-
targetTokenSymbol:
|
|
7079
|
-
targetTokenIcon: _chunkABVRVW3Pcjs.getTokenIcon.call(void 0,
|
|
7080
|
-
_chunkABVRVW3Pcjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain)
|
|
7081
|
-
),
|
|
7239
|
+
targetChainName: _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChain),
|
|
7240
|
+
targetTokenSymbol: _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain),
|
|
7082
7241
|
appBalanceUsd,
|
|
7083
7242
|
onContinue: handleSolanaAmountContinue,
|
|
7084
7243
|
debug
|
|
@@ -7099,7 +7258,7 @@ function DepositFlow({
|
|
|
7099
7258
|
targetToken,
|
|
7100
7259
|
service,
|
|
7101
7260
|
solanaProvider,
|
|
7102
|
-
solanaConnection: _optionalChain([reownWallet, 'optionalAccess',
|
|
7261
|
+
solanaConnection: _optionalChain([reownWallet, 'optionalAccess', _241 => _241.solanaConnection]),
|
|
7103
7262
|
uiConfig,
|
|
7104
7263
|
onConfirm: handleSolanaConfirmed,
|
|
7105
7264
|
onError: handleError,
|
|
@@ -7140,7 +7299,7 @@ function DepositFlow({
|
|
|
7140
7299
|
) })
|
|
7141
7300
|
] }) : null,
|
|
7142
7301
|
effectiveStep.type === "processing" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7143
|
-
|
|
7302
|
+
_chunkIRI34U6Ncjs.ProcessingStep,
|
|
7144
7303
|
{
|
|
7145
7304
|
smartAccount: effectiveStep.smartAccount,
|
|
7146
7305
|
solanaDepositAddress: effectiveStep.solanaDepositAddress,
|
|
@@ -7156,6 +7315,7 @@ function DepositFlow({
|
|
|
7156
7315
|
service,
|
|
7157
7316
|
directTransfer: effectiveStep.directTransfer,
|
|
7158
7317
|
initialEvent: effectiveStep.initialEvent,
|
|
7318
|
+
quoteFeeBreakdown: effectiveStep.quoteFeeBreakdown,
|
|
7159
7319
|
onClose,
|
|
7160
7320
|
onNewDeposit: handleNewDeposit,
|
|
7161
7321
|
onDepositComplete: handleDepositComplete,
|
|
@@ -7176,7 +7336,7 @@ function DepositFlow({
|
|
|
7176
7336
|
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7177
7337
|
DappImportAssetSelectSkeleton,
|
|
7178
7338
|
{
|
|
7179
|
-
sourceLabel: _nullishCoalesce(_optionalChain([activeDappImportProvider, 'optionalAccess',
|
|
7339
|
+
sourceLabel: _nullishCoalesce(_optionalChain([activeDappImportProvider, 'optionalAccess', _242 => _242.sourceLabel]), () => ( "")),
|
|
7180
7340
|
error: dappImportBootError,
|
|
7181
7341
|
onRetry: handleBootRetry
|
|
7182
7342
|
}
|
|
@@ -7184,16 +7344,16 @@ function DepositFlow({
|
|
|
7184
7344
|
}
|
|
7185
7345
|
);
|
|
7186
7346
|
}
|
|
7187
|
-
if (!_optionalChain([signerContext, 'optionalAccess',
|
|
7347
|
+
if (!_optionalChain([signerContext, 'optionalAccess', _243 => _243.walletClient]) || !_optionalChain([signerContext, 'optionalAccess', _244 => _244.publicClient])) {
|
|
7188
7348
|
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-body", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-step", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-loading-state", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-loading-text", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-loading-title", children: "Connecting wallet\u2026" }) }) }) }) });
|
|
7189
7349
|
}
|
|
7190
7350
|
const ownerAddress = signerContext.ownerAddress;
|
|
7191
|
-
const ownerChainId = _nullishCoalesce(_nullishCoalesce(_optionalChain([signerContext, 'access',
|
|
7351
|
+
const ownerChainId = _nullishCoalesce(_nullishCoalesce(_optionalChain([signerContext, 'access', _245 => _245.walletClient, 'optionalAccess', _246 => _246.chain, 'optionalAccess', _247 => _247.id]), () => ( _optionalChain([signerContext, 'access', _248 => _248.publicClient, 'access', _249 => _249.chain, 'optionalAccess', _250 => _250.id]))), () => ( setupChainId));
|
|
7192
7352
|
const getReadClientForChain = (chainId) => {
|
|
7193
|
-
if (_optionalChain([signerContext, 'access',
|
|
7353
|
+
if (_optionalChain([signerContext, 'access', _251 => _251.publicClient, 'access', _252 => _252.chain, 'optionalAccess', _253 => _253.id]) === chainId) {
|
|
7194
7354
|
return signerContext.publicClient;
|
|
7195
7355
|
}
|
|
7196
|
-
return
|
|
7356
|
+
return _chunkIRI34U6Ncjs.getPublicClient.call(void 0, chainId, rpcUrls);
|
|
7197
7357
|
};
|
|
7198
7358
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-modal-body", children: [
|
|
7199
7359
|
effectiveStep.type === "setup" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7223,7 +7383,7 @@ function DepositFlow({
|
|
|
7223
7383
|
effectiveStep.type === "dapp-import-asset-select" && activeDappImportProvider && activeDappImportAvailability && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7224
7384
|
DappImportAssetSelectStep,
|
|
7225
7385
|
{
|
|
7226
|
-
sourceLabel: _nullishCoalesce(_optionalChain([activeDappImportAvailability, 'access',
|
|
7386
|
+
sourceLabel: _nullishCoalesce(_optionalChain([activeDappImportAvailability, 'access', _254 => _254.assets, 'access', _255 => _255[0], 'optionalAccess', _256 => _256.sourceLabel]), () => ( activeDappImportProvider.sourceLabel)),
|
|
7227
7387
|
assets: activeDappImportAvailability.assets,
|
|
7228
7388
|
onSelect: handleDappImportAssetSelected
|
|
7229
7389
|
}
|
|
@@ -7249,8 +7409,8 @@ function DepositFlow({
|
|
|
7249
7409
|
service,
|
|
7250
7410
|
onContinue: handleAmountContinue,
|
|
7251
7411
|
onCtaClick: (ctaName) => {
|
|
7252
|
-
const receiveSymbol =
|
|
7253
|
-
_optionalChain([onEvent, 'optionalCall',
|
|
7412
|
+
const receiveSymbol = _chunkPUMTR35Ecjs.getTargetTokenSymbol.call(void 0, targetToken, targetChain);
|
|
7413
|
+
_optionalChain([onEvent, 'optionalCall', _257 => _257({
|
|
7254
7414
|
type: "deposit_modal_connected_wallet_enter_value_cta_click",
|
|
7255
7415
|
send_token: effectiveStep.asset.symbol,
|
|
7256
7416
|
receive_token: receiveSymbol,
|
|
@@ -7302,7 +7462,7 @@ function DepositFlow({
|
|
|
7302
7462
|
}
|
|
7303
7463
|
),
|
|
7304
7464
|
effectiveStep.type === "processing" && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7305
|
-
|
|
7465
|
+
_chunkIRI34U6Ncjs.ProcessingStep,
|
|
7306
7466
|
{
|
|
7307
7467
|
smartAccount: effectiveStep.smartAccount,
|
|
7308
7468
|
solanaDepositAddress: effectiveStep.solanaDepositAddress,
|
|
@@ -7318,6 +7478,7 @@ function DepositFlow({
|
|
|
7318
7478
|
service,
|
|
7319
7479
|
directTransfer: effectiveStep.directTransfer,
|
|
7320
7480
|
initialEvent: effectiveStep.initialEvent,
|
|
7481
|
+
quoteFeeBreakdown: effectiveStep.quoteFeeBreakdown,
|
|
7321
7482
|
uiConfig,
|
|
7322
7483
|
onClose,
|
|
7323
7484
|
onNewDeposit: handleNewDeposit,
|
|
@@ -7347,15 +7508,16 @@ function formatDate(iso) {
|
|
|
7347
7508
|
month: "short",
|
|
7348
7509
|
year: "numeric"
|
|
7349
7510
|
});
|
|
7350
|
-
} catch (
|
|
7511
|
+
} catch (e34) {
|
|
7351
7512
|
return iso;
|
|
7352
7513
|
}
|
|
7353
7514
|
}
|
|
7354
7515
|
function resolveChainId(value) {
|
|
7355
7516
|
if (value === void 0 || value === null) return null;
|
|
7356
7517
|
if (typeof value === "number") return value;
|
|
7357
|
-
if (
|
|
7358
|
-
|
|
7518
|
+
if (_chunkPUMTR35Ecjs.isSolanaCaip2.call(void 0, value) || value === "solana") return "solana";
|
|
7519
|
+
if (_chunkPUMTR35Ecjs.isHyperCoreCaip2.call(void 0, value) || value === "hypercore") return "hypercore";
|
|
7520
|
+
const parsed = _chunkPUMTR35Ecjs.parseEvmChainId.call(void 0, value);
|
|
7359
7521
|
if (parsed !== null) return parsed;
|
|
7360
7522
|
const num = Number(value);
|
|
7361
7523
|
return Number.isFinite(num) ? num : null;
|
|
@@ -7364,7 +7526,7 @@ function resolveTokenSymbol(token, chainId) {
|
|
|
7364
7526
|
if (!token) return "";
|
|
7365
7527
|
if (chainId === "solana") {
|
|
7366
7528
|
const normalized = token.toLowerCase();
|
|
7367
|
-
const matched =
|
|
7529
|
+
const matched = _chunkPUMTR35Ecjs.SOLANA_TOKENS.find(
|
|
7368
7530
|
(entry) => entry.mint.toLowerCase() === normalized
|
|
7369
7531
|
);
|
|
7370
7532
|
if (matched) return matched.symbol;
|
|
@@ -7373,7 +7535,8 @@ function resolveTokenSymbol(token, chainId) {
|
|
|
7373
7535
|
}
|
|
7374
7536
|
}
|
|
7375
7537
|
if (chainId !== null && chainId !== void 0 && chainId !== "solana" && /^0x[a-fA-F0-9]{40}$/.test(token)) {
|
|
7376
|
-
const
|
|
7538
|
+
const evmChainId = chainId === "hypercore" ? _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID : chainId;
|
|
7539
|
+
const sym = _chunkPUMTR35Ecjs.getTokenSymbol.call(void 0, token, evmChainId);
|
|
7377
7540
|
if (sym !== "Token") return sym;
|
|
7378
7541
|
}
|
|
7379
7542
|
return shortenHash(token);
|
|
@@ -7384,7 +7547,7 @@ function formatAmount(rawAmount, token, chainId) {
|
|
|
7384
7547
|
if (token && chainId !== null && chainId !== void 0) {
|
|
7385
7548
|
if (chainId === "solana") {
|
|
7386
7549
|
const normalized = token.toLowerCase();
|
|
7387
|
-
const matched =
|
|
7550
|
+
const matched = _chunkPUMTR35Ecjs.SOLANA_TOKENS.find(
|
|
7388
7551
|
(entry) => entry.mint.toLowerCase() === normalized
|
|
7389
7552
|
);
|
|
7390
7553
|
if (matched) {
|
|
@@ -7393,7 +7556,8 @@ function formatAmount(rawAmount, token, chainId) {
|
|
|
7393
7556
|
decimals = 9;
|
|
7394
7557
|
}
|
|
7395
7558
|
} else if (/^0x[a-fA-F0-9]{40}$/.test(token)) {
|
|
7396
|
-
|
|
7559
|
+
const evmChainId = chainId === "hypercore" ? _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID : chainId;
|
|
7560
|
+
decimals = _chunkPUMTR35Ecjs.getTokenDecimalsByAddress.call(void 0, token, evmChainId);
|
|
7397
7561
|
}
|
|
7398
7562
|
}
|
|
7399
7563
|
try {
|
|
@@ -7405,13 +7569,13 @@ function formatAmount(rawAmount, token, chainId) {
|
|
|
7405
7569
|
let frac = fracStr.slice(0, 5).replace(/0+$/, "");
|
|
7406
7570
|
if (frac.length < 2) frac = frac.padEnd(2, "0");
|
|
7407
7571
|
return `${whole}.${frac}`;
|
|
7408
|
-
} catch (
|
|
7572
|
+
} catch (e35) {
|
|
7409
7573
|
return rawAmount;
|
|
7410
7574
|
}
|
|
7411
7575
|
}
|
|
7412
7576
|
function getTxExplorerUrl(txHash, chainId) {
|
|
7413
7577
|
if (!chainId) return null;
|
|
7414
|
-
const base2 =
|
|
7578
|
+
const base2 = _chunkPUMTR35Ecjs.getExplorerUrl.call(void 0, chainId);
|
|
7415
7579
|
if (!base2) return null;
|
|
7416
7580
|
return `${base2}/tx/${txHash}`;
|
|
7417
7581
|
}
|
|
@@ -7454,7 +7618,7 @@ function DepositHistoryPanel({
|
|
|
7454
7618
|
);
|
|
7455
7619
|
const visibleDeposits = _react.useMemo.call(void 0, () => {
|
|
7456
7620
|
const sourceHashes = new Set(
|
|
7457
|
-
deposits.map((d) => _optionalChain([d, 'access',
|
|
7621
|
+
deposits.map((d) => _optionalChain([d, 'access', _258 => _258.sourceTxHash, 'optionalAccess', _259 => _259.toLowerCase, 'call', _260 => _260()])).filter((h) => Boolean(h))
|
|
7458
7622
|
);
|
|
7459
7623
|
return deposits.filter(
|
|
7460
7624
|
(d) => !(d.txHash && sourceHashes.has(d.txHash.toLowerCase()))
|
|
@@ -7476,7 +7640,7 @@ function DepositHistoryPanel({
|
|
|
7476
7640
|
className: "rs-modal-header-back",
|
|
7477
7641
|
"aria-label": "Back",
|
|
7478
7642
|
onClick: onClose,
|
|
7479
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7643
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronLeftIcon, {})
|
|
7480
7644
|
}
|
|
7481
7645
|
) }),
|
|
7482
7646
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-header-nav-right", children: onCloseModal && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7486,29 +7650,29 @@ function DepositHistoryPanel({
|
|
|
7486
7650
|
className: "rs-modal-close",
|
|
7487
7651
|
"aria-label": "Close",
|
|
7488
7652
|
onClick: onCloseModal,
|
|
7489
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7653
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CloseIcon, {})
|
|
7490
7654
|
}
|
|
7491
7655
|
) })
|
|
7492
7656
|
] }),
|
|
7493
7657
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-screen", children: [
|
|
7494
7658
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-screen-body", children: [
|
|
7495
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7659
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.BodyHeader, { icon: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.HistoryIcon, {}), title: "History" }),
|
|
7496
7660
|
isLoading && deposits.length === 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-empty", children: [
|
|
7497
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-glyph", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7661
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-glyph", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.HistoryIcon, {}) }),
|
|
7498
7662
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-empty-text", children: [
|
|
7499
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7663
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Spinner, { className: "rs-spinner--sm" }),
|
|
7500
7664
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-hint", children: "Loading history\u2026" })
|
|
7501
7665
|
] })
|
|
7502
7666
|
] }),
|
|
7503
7667
|
error && !isLoading && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-empty", children: [
|
|
7504
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-glyph", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7668
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-glyph", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.AlertTriangleIcon, {}) }),
|
|
7505
7669
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-empty-text", children: [
|
|
7506
7670
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-title", children: "Couldn't load history" }),
|
|
7507
7671
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-hint", children: error })
|
|
7508
7672
|
] })
|
|
7509
7673
|
] }),
|
|
7510
7674
|
!isLoading && !error && visibleDeposits.length === 0 && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-empty", children: [
|
|
7511
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-glyph", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7675
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-glyph", "aria-hidden": "true", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.HistoryIcon, {}) }),
|
|
7512
7676
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-empty-text", children: [
|
|
7513
7677
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-title", children: "No deposits yet" }),
|
|
7514
7678
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-empty-hint", children: "Your deposit history will appear here" })
|
|
@@ -7528,7 +7692,7 @@ function DepositHistoryPanel({
|
|
|
7528
7692
|
)
|
|
7529
7693
|
] })
|
|
7530
7694
|
] }),
|
|
7531
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7695
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.PoweredBy, {})
|
|
7532
7696
|
] })
|
|
7533
7697
|
]
|
|
7534
7698
|
}
|
|
@@ -7539,12 +7703,11 @@ function HistoryCard({ deposit }) {
|
|
|
7539
7703
|
const status = normalizeStatus(deposit.status, deposit.isSpam);
|
|
7540
7704
|
const sourceChainId = resolveChainId(deposit.chain);
|
|
7541
7705
|
const targetChainId = resolveChainId(deposit.targetChain);
|
|
7542
|
-
const sourceChainName = sourceChainId ?
|
|
7543
|
-
const targetChainName = targetChainId ?
|
|
7544
|
-
const sourceChainIcon = sourceChainId ?
|
|
7545
|
-
const targetChainIcon = targetChainId ?
|
|
7706
|
+
const sourceChainName = sourceChainId ? _chunkPUMTR35Ecjs.getChainName.call(void 0, sourceChainId) : null;
|
|
7707
|
+
const targetChainName = targetChainId ? _chunkPUMTR35Ecjs.getChainName.call(void 0, targetChainId) : null;
|
|
7708
|
+
const sourceChainIcon = sourceChainId ? _chunkPUMTR35Ecjs.getChainIcon.call(void 0, sourceChainId) : void 0;
|
|
7709
|
+
const targetChainIcon = targetChainId ? _chunkPUMTR35Ecjs.getChainIcon.call(void 0, targetChainId) : void 0;
|
|
7546
7710
|
const sourceSymbol = resolveTokenSymbol(deposit.token, sourceChainId);
|
|
7547
|
-
const sourceTokenIcon = sourceSymbol ? _chunkABVRVW3Pcjs.getTokenIcon.call(void 0, sourceSymbol) : void 0;
|
|
7548
7711
|
const rawAmount = deposit.sourceAmount && deposit.sourceAmount !== "0" ? deposit.sourceAmount : deposit.amount;
|
|
7549
7712
|
const formattedAmount = rawAmount ? formatAmount(rawAmount, deposit.token, sourceChainId) : null;
|
|
7550
7713
|
const displayAmount = formattedAmount ? sourceSymbol && /^USD/.test(sourceSymbol) ? `$${Number(formattedAmount).toLocaleString("en-US", {
|
|
@@ -7553,7 +7716,8 @@ function HistoryCard({ deposit }) {
|
|
|
7553
7716
|
})}` : `${formattedAmount} ${sourceSymbol}` : "\u2014";
|
|
7554
7717
|
const date = deposit.createdAt ? formatDate(deposit.createdAt) : null;
|
|
7555
7718
|
const txTypeLabel = `Deposit${sourceSymbol ? ` ${sourceSymbol}` : ""}`;
|
|
7556
|
-
const
|
|
7719
|
+
const srcTxHash = sourceChainId === "hypercore" ? deposit.txHash : deposit.sourceTxHash;
|
|
7720
|
+
const srcTxUrl = srcTxHash ? getTxExplorerUrl(srcTxHash, sourceChainId) : null;
|
|
7557
7721
|
return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
7558
7722
|
"button",
|
|
7559
7723
|
{
|
|
@@ -7564,7 +7728,7 @@ function HistoryCard({ deposit }) {
|
|
|
7564
7728
|
children: [
|
|
7565
7729
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-card-row", children: [
|
|
7566
7730
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-card-icons", children: [
|
|
7567
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-card-token", children:
|
|
7731
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-card-token", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.TokenIcon, { symbol: sourceSymbol, fallback: sourceSymbol.slice(0, 2) }) }),
|
|
7568
7732
|
sourceChainIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-history-card-chain", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: sourceChainIcon, alt: "" }) })
|
|
7569
7733
|
] }),
|
|
7570
7734
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-history-card-text", children: [
|
|
@@ -7591,7 +7755,7 @@ function HistoryCard({ deposit }) {
|
|
|
7591
7755
|
targetChainIcon && /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { className: "rs-amount-detail-icon", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "img", { src: targetChainIcon, alt: "" }) })
|
|
7592
7756
|
] })
|
|
7593
7757
|
] }),
|
|
7594
|
-
srcTxUrl &&
|
|
7758
|
+
srcTxUrl && srcTxHash && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-amount-detail-row", children: [
|
|
7595
7759
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: "Transaction details" }),
|
|
7596
7760
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
|
|
7597
7761
|
"a",
|
|
@@ -7602,8 +7766,8 @@ function HistoryCard({ deposit }) {
|
|
|
7602
7766
|
className: "rs-history-card-link",
|
|
7603
7767
|
onClick: (e) => e.stopPropagation(),
|
|
7604
7768
|
children: [
|
|
7605
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: shortenHash(
|
|
7606
|
-
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7769
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "span", { children: shortenHash(srcTxHash) }),
|
|
7770
|
+
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ArrowUpRightIcon, {})
|
|
7607
7771
|
]
|
|
7608
7772
|
}
|
|
7609
7773
|
)
|
|
@@ -7618,7 +7782,7 @@ DepositHistoryPanel.displayName = "DepositHistoryPanel";
|
|
|
7618
7782
|
// src/DepositModal.tsx
|
|
7619
7783
|
|
|
7620
7784
|
var ReownDepositInner = _react.lazy.call(void 0,
|
|
7621
|
-
() => Promise.resolve().then(() => _interopRequireWildcard(require("./DepositModalReown-
|
|
7785
|
+
() => Promise.resolve().then(() => _interopRequireWildcard(require("./DepositModalReown-J5YFZKFS.cjs"))).then((m) => ({ default: m.DepositModalReown }))
|
|
7622
7786
|
);
|
|
7623
7787
|
function sortByCreatedAtDesc(items) {
|
|
7624
7788
|
return [...items].sort((a, b) => {
|
|
@@ -7667,9 +7831,9 @@ function DepositModalInner({
|
|
|
7667
7831
|
defaultAmount,
|
|
7668
7832
|
recipient,
|
|
7669
7833
|
appBalanceUsd,
|
|
7670
|
-
backendUrl =
|
|
7834
|
+
backendUrl = _chunkPUMTR35Ecjs.DEFAULT_BACKEND_URL,
|
|
7671
7835
|
rpcUrls: rpcUrlsProp,
|
|
7672
|
-
signerAddress =
|
|
7836
|
+
signerAddress = _chunkPUMTR35Ecjs.DEFAULT_SIGNER_ADDRESS,
|
|
7673
7837
|
sessionChainIds,
|
|
7674
7838
|
forceRegister = false,
|
|
7675
7839
|
enableSolana = true,
|
|
@@ -7696,12 +7860,13 @@ function DepositModalInner({
|
|
|
7696
7860
|
debug
|
|
7697
7861
|
}) {
|
|
7698
7862
|
const modalRef = _react.useRef.call(void 0, null);
|
|
7699
|
-
const onReadyRef =
|
|
7863
|
+
const onReadyRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onReady);
|
|
7700
7864
|
const [currentScreen, setCurrentScreen] = _react.useState.call(void 0, "connect");
|
|
7865
|
+
const [swappedImmersive, setSwappedImmersive] = _react.useState.call(void 0, false);
|
|
7701
7866
|
const [backHandler, setBackHandler] = _react.useState.call(void 0,
|
|
7702
7867
|
void 0
|
|
7703
7868
|
);
|
|
7704
|
-
const showHistoryButton = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess',
|
|
7869
|
+
const showHistoryButton = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _261 => _261.showHistoryButton]), () => ( false));
|
|
7705
7870
|
const historyButtonVisible = showHistoryButton && (currentScreen === "select-asset" || currentScreen === "deposit-address");
|
|
7706
7871
|
const [historyOpen, setHistoryOpen] = _react.useState.call(void 0, false);
|
|
7707
7872
|
const [historyDeposits, setHistoryDeposits] = _react.useState.call(void 0, []);
|
|
@@ -7712,23 +7877,23 @@ function DepositModalInner({
|
|
|
7712
7877
|
const cursorRef = _react.useRef.call(void 0, null);
|
|
7713
7878
|
const historyStaleRef = _react.useRef.call(void 0, false);
|
|
7714
7879
|
const historyLoadedRef = _react.useRef.call(void 0, false);
|
|
7715
|
-
const targetChain = targetChainProp === "solana" ? "solana" :
|
|
7716
|
-
const sourceChain = sourceChainProp ?
|
|
7717
|
-
const rpcUrls =
|
|
7880
|
+
const targetChain = targetChainProp === "solana" ? "solana" : _chunkPUMTR35Ecjs.getChainId.call(void 0, targetChainProp);
|
|
7881
|
+
const sourceChain = sourceChainProp ? _chunkPUMTR35Ecjs.getChainId.call(void 0, sourceChainProp) : void 0;
|
|
7882
|
+
const rpcUrls = _chunkIRI34U6Ncjs.useStableRpcUrls.call(void 0, rpcUrlsProp);
|
|
7718
7883
|
const [recipientIsContract, setRecipientIsContract] = _react.useState.call(void 0, false);
|
|
7719
|
-
const onErrorRef =
|
|
7884
|
+
const onErrorRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onError);
|
|
7720
7885
|
_react.useEffect.call(void 0, () => {
|
|
7721
|
-
if (targetChain !==
|
|
7886
|
+
if (targetChain !== _chunkPUMTR35Ecjs.HYPERCORE_CHAIN_ID || !_viem.isAddress.call(void 0, recipient, { strict: false })) {
|
|
7722
7887
|
setRecipientIsContract(false);
|
|
7723
7888
|
return;
|
|
7724
7889
|
}
|
|
7725
7890
|
let cancelled = false;
|
|
7726
|
-
|
|
7891
|
+
_chunkIRI34U6Ncjs.getHyperEvmReadClient.call(void 0, rpcUrls).getCode({ address: recipient }).then((code) => {
|
|
7727
7892
|
if (cancelled) return;
|
|
7728
|
-
const isContract =
|
|
7893
|
+
const isContract = _chunkPUMTR35Ecjs.isContractBytecode.call(void 0, code);
|
|
7729
7894
|
setRecipientIsContract(isContract);
|
|
7730
7895
|
if (isContract) {
|
|
7731
|
-
_optionalChain([onErrorRef, 'access',
|
|
7896
|
+
_optionalChain([onErrorRef, 'access', _262 => _262.current, 'optionalCall', _263 => _263({
|
|
7732
7897
|
message: "HyperCore deposits require an EOA recipient; the configured recipient is a smart contract.",
|
|
7733
7898
|
code: "HYPERCORE_RECIPIENT_NOT_EOA"
|
|
7734
7899
|
})]);
|
|
@@ -7741,12 +7906,30 @@ function DepositModalInner({
|
|
|
7741
7906
|
};
|
|
7742
7907
|
}, [targetChain, recipient, onErrorRef, rpcUrls]);
|
|
7743
7908
|
const service = _react.useMemo.call(void 0,
|
|
7744
|
-
() =>
|
|
7909
|
+
() => _chunkIRI34U6Ncjs.createDepositService.call(void 0, backendUrl, {
|
|
7745
7910
|
debug,
|
|
7746
7911
|
debugScope: "service:deposit"
|
|
7747
7912
|
}),
|
|
7748
7913
|
[backendUrl, debug]
|
|
7749
7914
|
);
|
|
7915
|
+
const [clientSetup, setClientSetup] = _react.useState.call(void 0,
|
|
7916
|
+
null
|
|
7917
|
+
);
|
|
7918
|
+
_react.useEffect.call(void 0, () => {
|
|
7919
|
+
if (!isOpen) return;
|
|
7920
|
+
let active = true;
|
|
7921
|
+
service.getSetup().then((config) => {
|
|
7922
|
+
if (active) setClientSetup(config);
|
|
7923
|
+
});
|
|
7924
|
+
return () => {
|
|
7925
|
+
active = false;
|
|
7926
|
+
};
|
|
7927
|
+
}, [isOpen, service]);
|
|
7928
|
+
_react.useEffect.call(void 0, () => {
|
|
7929
|
+
if (debug && clientSetup) {
|
|
7930
|
+
console.debug("[deposit] client setup config (not shown yet)", clientSetup);
|
|
7931
|
+
}
|
|
7932
|
+
}, [debug, clientSetup]);
|
|
7750
7933
|
const store = _react.useMemo.call(void 0,
|
|
7751
7934
|
() => createDepositStore({ targetChain, targetToken }),
|
|
7752
7935
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -7757,12 +7940,12 @@ function DepositModalInner({
|
|
|
7757
7940
|
}, [store, targetChain, targetToken]);
|
|
7758
7941
|
_react.useEffect.call(void 0, () => {
|
|
7759
7942
|
if (isOpen && modalRef.current) {
|
|
7760
|
-
|
|
7943
|
+
_chunkIRI34U6Ncjs.applyTheme.call(void 0, modalRef.current, theme);
|
|
7761
7944
|
}
|
|
7762
7945
|
}, [isOpen, theme]);
|
|
7763
7946
|
_react.useEffect.call(void 0, () => {
|
|
7764
7947
|
if (isOpen) {
|
|
7765
|
-
_optionalChain([onReadyRef, 'access',
|
|
7948
|
+
_optionalChain([onReadyRef, 'access', _264 => _264.current, 'optionalCall', _265 => _265()]);
|
|
7766
7949
|
}
|
|
7767
7950
|
}, [isOpen, onReadyRef]);
|
|
7768
7951
|
const handleStepChange = _react.useCallback.call(void 0,
|
|
@@ -7838,10 +8021,10 @@ function DepositModalInner({
|
|
|
7838
8021
|
fetchHistory("initial");
|
|
7839
8022
|
}
|
|
7840
8023
|
}, [historyOpen, fetchHistory]);
|
|
7841
|
-
const onLifecycleRef =
|
|
8024
|
+
const onLifecycleRef = _chunkIRI34U6Ncjs.useLatestRef.call(void 0, onLifecycle);
|
|
7842
8025
|
const handleLifecycle = _react.useCallback.call(void 0,
|
|
7843
8026
|
(event) => {
|
|
7844
|
-
_optionalChain([onLifecycleRef, 'access',
|
|
8027
|
+
_optionalChain([onLifecycleRef, 'access', _266 => _266.current, 'optionalCall', _267 => _267(event)]);
|
|
7845
8028
|
if (event.type === "smart-account-changed" && !event.evm && !event.solana) {
|
|
7846
8029
|
historyStaleRef.current = true;
|
|
7847
8030
|
}
|
|
@@ -7860,6 +8043,9 @@ function DepositModalInner({
|
|
|
7860
8043
|
cursorRef.current = null;
|
|
7861
8044
|
historyStaleRef.current = false;
|
|
7862
8045
|
historyLoadedRef.current = false;
|
|
8046
|
+
setCurrentScreen("connect");
|
|
8047
|
+
setBackHandler(void 0);
|
|
8048
|
+
setSwappedImmersive(false);
|
|
7863
8049
|
}
|
|
7864
8050
|
}, [isOpen]);
|
|
7865
8051
|
_react.useEffect.call(void 0, () => {
|
|
@@ -7867,18 +8053,20 @@ function DepositModalInner({
|
|
|
7867
8053
|
store.dispatch({ type: "flow/reset" });
|
|
7868
8054
|
}
|
|
7869
8055
|
}, [isOpen, store]);
|
|
7870
|
-
const showBackButton = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess',
|
|
8056
|
+
const showBackButton = _nullishCoalesce(_optionalChain([uiConfig, 'optionalAccess', _268 => _268.showBackButton]), () => ( true));
|
|
7871
8057
|
const canGoBack = backHandler !== void 0;
|
|
7872
|
-
|
|
7873
|
-
|
|
8058
|
+
const hideHeaderChrome = swappedImmersive;
|
|
8059
|
+
const modalClassName = `rs-modal${hideHeaderChrome ? " rs-modal--swapped-iframe" : ""}`;
|
|
8060
|
+
return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.RpcUrlsProvider, { value: rpcUrls, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, DepositStoreProvider, { store, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8061
|
+
_chunkIRI34U6Ncjs.Modal,
|
|
7874
8062
|
{
|
|
7875
8063
|
isOpen,
|
|
7876
8064
|
onClose,
|
|
7877
8065
|
className,
|
|
7878
8066
|
inline,
|
|
7879
8067
|
closeOnOverlayClick,
|
|
7880
|
-
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: modalRef, className:
|
|
7881
|
-
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-modal-header--redesigned", children: [
|
|
8068
|
+
children: /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { ref: modalRef, className: modalClassName, children: [
|
|
8069
|
+
!hideHeaderChrome && /* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-modal-header--redesigned", children: [
|
|
7882
8070
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-header-nav-left", children: showBackButton && canGoBack && backHandler && /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7883
8071
|
"button",
|
|
7884
8072
|
{
|
|
@@ -7886,7 +8074,7 @@ function DepositModalInner({
|
|
|
7886
8074
|
className: "rs-modal-header-back",
|
|
7887
8075
|
"aria-label": "Go back",
|
|
7888
8076
|
onClick: backHandler,
|
|
7889
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8077
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.ChevronLeftIcon, {})
|
|
7890
8078
|
}
|
|
7891
8079
|
) }),
|
|
7892
8080
|
/* @__PURE__ */ _jsxruntime.jsxs.call(void 0, "div", { className: "rs-modal-header-nav-right", children: [
|
|
@@ -7898,7 +8086,7 @@ function DepositModalInner({
|
|
|
7898
8086
|
"aria-label": "Deposit history",
|
|
7899
8087
|
onClick: handleHistoryOpen,
|
|
7900
8088
|
disabled: !recipient,
|
|
7901
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8089
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.HistoryIcon, {})
|
|
7902
8090
|
}
|
|
7903
8091
|
),
|
|
7904
8092
|
/* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
@@ -7908,12 +8096,12 @@ function DepositModalInner({
|
|
|
7908
8096
|
onClick: onClose,
|
|
7909
8097
|
className: "rs-modal-close",
|
|
7910
8098
|
"aria-label": "Close",
|
|
7911
|
-
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8099
|
+
children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.CloseIcon, {})
|
|
7912
8100
|
}
|
|
7913
8101
|
)
|
|
7914
8102
|
] })
|
|
7915
8103
|
] }),
|
|
7916
|
-
recipientIsContract ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-body", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
8104
|
+
recipientIsContract ? /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { className: "rs-modal-body", children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkIRI34U6Ncjs.Callout, { variant: "error", children: "HyperCore deposits require an EOA recipient. The configured recipient is a smart contract, which is not supported." }) }) : /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
|
|
7917
8105
|
DepositFlow,
|
|
7918
8106
|
{
|
|
7919
8107
|
dappWalletClient,
|
|
@@ -7947,6 +8135,7 @@ function DepositModalInner({
|
|
|
7947
8135
|
uiConfig,
|
|
7948
8136
|
allowedRoutes,
|
|
7949
8137
|
onStepChange: handleStepChange,
|
|
8138
|
+
onSwappedImmersiveChange: setSwappedImmersive,
|
|
7950
8139
|
onClose,
|
|
7951
8140
|
onLifecycle: handleLifecycle,
|
|
7952
8141
|
onEvent,
|