@oasisprotocol/privana-sdk 0.5.6 → 0.5.7
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/{chunk-DLGIPF4N.js → chunk-4VOTSHNC.js} +20 -2
- package/dist/chunk-4VOTSHNC.js.map +1 -0
- package/dist/{chunk-TNR7AA52.cjs → chunk-FFYLKZ7J.cjs} +20 -2
- package/dist/chunk-FFYLKZ7J.cjs.map +1 -0
- package/dist/index.cjs +257 -248
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +17 -8
- package/dist/index.js.map +1 -1
- package/dist/on-ramp.cjs +3 -3
- package/dist/on-ramp.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-DLGIPF4N.js.map +0 -1
- package/dist/chunk-TNR7AA52.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
4
|
+
var chunkFFYLKZ7J_cjs = require('./chunk-FFYLKZ7J.cjs');
|
|
5
5
|
var react = require('react');
|
|
6
6
|
var reactQuery = require('@tanstack/react-query');
|
|
7
7
|
var wagmi = require('wagmi');
|
|
@@ -35,18 +35,18 @@ var DialogPrimitive__namespace = /*#__PURE__*/_interopNamespace(DialogPrimitive)
|
|
|
35
35
|
|
|
36
36
|
// src/sdk/hooks/use-privana-client.ts
|
|
37
37
|
function usePrivanaClient() {
|
|
38
|
-
const { client } =
|
|
38
|
+
const { client } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
39
39
|
return client;
|
|
40
40
|
}
|
|
41
41
|
var hostedAuthExchangeInflight = /* @__PURE__ */ new Map();
|
|
42
42
|
function normalizeHostedAuthError(error) {
|
|
43
|
-
if (error instanceof
|
|
44
|
-
return new
|
|
43
|
+
if (error instanceof chunkFFYLKZ7J_cjs.AccountingApiError && error.detail) {
|
|
44
|
+
return new chunkFFYLKZ7J_cjs.HostedAuthError(error.detail);
|
|
45
45
|
}
|
|
46
46
|
if (error instanceof Error) {
|
|
47
47
|
return error;
|
|
48
48
|
}
|
|
49
|
-
return new
|
|
49
|
+
return new chunkFFYLKZ7J_cjs.HostedAuthError("Hosted authentication failed.");
|
|
50
50
|
}
|
|
51
51
|
function useHostedRedirectAuth() {
|
|
52
52
|
const {
|
|
@@ -57,30 +57,30 @@ function useHostedRedirectAuth() {
|
|
|
57
57
|
setHostedAuthSession,
|
|
58
58
|
clearHostedAuthSession,
|
|
59
59
|
refreshHostedAuthSession
|
|
60
|
-
} =
|
|
60
|
+
} = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
61
61
|
const [error, setError] = react.useState(null);
|
|
62
62
|
const [isLoading, setIsLoading] = react.useState(false);
|
|
63
63
|
const loginInflight = react.useRef(null);
|
|
64
64
|
const completionInflight = react.useRef(null);
|
|
65
65
|
const pendingStorageKey = react.useMemo(
|
|
66
|
-
() => hostedAuthConfig ?
|
|
66
|
+
() => hostedAuthConfig ? chunkFFYLKZ7J_cjs.createHostedAuthPendingStorageKey(client.getBaseUrl(), hostedAuthConfig) : null,
|
|
67
67
|
[client, hostedAuthConfig]
|
|
68
68
|
);
|
|
69
69
|
const clearPendingLogin = react.useCallback(() => {
|
|
70
70
|
if (!pendingStorageKey || typeof window === "undefined") return;
|
|
71
|
-
|
|
71
|
+
chunkFFYLKZ7J_cjs.clearHostedAuthPendingTransaction(window.sessionStorage, pendingStorageKey);
|
|
72
72
|
}, [pendingStorageKey]);
|
|
73
73
|
const login = react.useCallback(async () => {
|
|
74
74
|
if (!hostedAuthConfig) {
|
|
75
|
-
throw new
|
|
75
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthRequiredError(
|
|
76
76
|
"Hosted redirect authentication is not configured for this provider."
|
|
77
77
|
);
|
|
78
78
|
}
|
|
79
79
|
if (typeof window === "undefined") {
|
|
80
|
-
throw new
|
|
80
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthError("Hosted redirect authentication requires a browser environment.");
|
|
81
81
|
}
|
|
82
82
|
if (!pendingStorageKey) {
|
|
83
|
-
throw new
|
|
83
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthError("Hosted redirect authentication storage is not configured.");
|
|
84
84
|
}
|
|
85
85
|
if (loginInflight.current) {
|
|
86
86
|
return loginInflight.current;
|
|
@@ -89,10 +89,10 @@ function useHostedRedirectAuth() {
|
|
|
89
89
|
setIsLoading(true);
|
|
90
90
|
setError(null);
|
|
91
91
|
try {
|
|
92
|
-
const verifier =
|
|
93
|
-
const codeChallenge = await
|
|
94
|
-
const state =
|
|
95
|
-
|
|
92
|
+
const verifier = chunkFFYLKZ7J_cjs.createPkceVerifier();
|
|
93
|
+
const codeChallenge = await chunkFFYLKZ7J_cjs.createPkceChallenge(verifier);
|
|
94
|
+
const state = chunkFFYLKZ7J_cjs.createHostedAuthState();
|
|
95
|
+
chunkFFYLKZ7J_cjs.persistHostedAuthPendingTransaction(window.sessionStorage, pendingStorageKey, {
|
|
96
96
|
codeVerifier: verifier,
|
|
97
97
|
state
|
|
98
98
|
});
|
|
@@ -121,15 +121,15 @@ function useHostedRedirectAuth() {
|
|
|
121
121
|
}, [clearPendingLogin, client, hostedAuthConfig, networkConfig.chainId, pendingStorageKey]);
|
|
122
122
|
const completeLogin = react.useCallback(async () => {
|
|
123
123
|
if (!hostedAuthConfig) {
|
|
124
|
-
throw new
|
|
124
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthRequiredError(
|
|
125
125
|
"Hosted redirect authentication is not configured for this provider."
|
|
126
126
|
);
|
|
127
127
|
}
|
|
128
128
|
if (typeof window === "undefined") {
|
|
129
|
-
throw new
|
|
129
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthError("Hosted redirect authentication requires a browser environment.");
|
|
130
130
|
}
|
|
131
131
|
if (!pendingStorageKey) {
|
|
132
|
-
throw new
|
|
132
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthError("Hosted redirect authentication storage is not configured.");
|
|
133
133
|
}
|
|
134
134
|
if (completionInflight.current) {
|
|
135
135
|
return completionInflight.current;
|
|
@@ -139,30 +139,30 @@ function useHostedRedirectAuth() {
|
|
|
139
139
|
setError(null);
|
|
140
140
|
const callbackUrl = new URL(window.location.href);
|
|
141
141
|
const cleanupCallbackUrl = () => {
|
|
142
|
-
window.history.replaceState(null, "",
|
|
142
|
+
window.history.replaceState(null, "", chunkFFYLKZ7J_cjs.stripHostedAuthCallbackParams(callbackUrl));
|
|
143
143
|
};
|
|
144
144
|
try {
|
|
145
|
-
const callback =
|
|
145
|
+
const callback = chunkFFYLKZ7J_cjs.parseHostedAuthCallback(callbackUrl, hostedAuthConfig.redirectUri);
|
|
146
146
|
if (!callback) {
|
|
147
147
|
return null;
|
|
148
148
|
}
|
|
149
|
-
const pending =
|
|
149
|
+
const pending = chunkFFYLKZ7J_cjs.readHostedAuthPendingTransaction(window.sessionStorage, pendingStorageKey);
|
|
150
150
|
if (!pending) {
|
|
151
151
|
clearPendingLogin();
|
|
152
152
|
cleanupCallbackUrl();
|
|
153
|
-
throw new
|
|
153
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthError(
|
|
154
154
|
"Hosted authentication response could not be matched to a pending login request."
|
|
155
155
|
);
|
|
156
156
|
}
|
|
157
157
|
if (!callback.state || callback.state !== pending.state) {
|
|
158
158
|
clearPendingLogin();
|
|
159
159
|
cleanupCallbackUrl();
|
|
160
|
-
throw new
|
|
160
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthStateMismatchError();
|
|
161
161
|
}
|
|
162
162
|
if ("error" in callback) {
|
|
163
163
|
clearPendingLogin();
|
|
164
164
|
cleanupCallbackUrl();
|
|
165
|
-
throw new
|
|
165
|
+
throw new chunkFFYLKZ7J_cjs.HostedAuthError(
|
|
166
166
|
callback.errorDescription || callback.error || "Hosted authentication failed."
|
|
167
167
|
);
|
|
168
168
|
}
|
|
@@ -177,7 +177,7 @@ function useHostedRedirectAuth() {
|
|
|
177
177
|
client_id: hostedAuthConfig.clientId,
|
|
178
178
|
redirect_uri: hostedAuthConfig.redirectUri
|
|
179
179
|
});
|
|
180
|
-
const session =
|
|
180
|
+
const session = chunkFFYLKZ7J_cjs.buildHostedAuthSession(response, hostedAuthConfig);
|
|
181
181
|
setHostedAuthSession(session);
|
|
182
182
|
clearPendingLogin();
|
|
183
183
|
cleanupCallbackUrl();
|
|
@@ -222,7 +222,7 @@ function useHostedRedirectAuth() {
|
|
|
222
222
|
try {
|
|
223
223
|
return await refreshHostedAuthSession();
|
|
224
224
|
} catch (refreshError) {
|
|
225
|
-
const normalizedError = refreshError instanceof Error ? refreshError : new
|
|
225
|
+
const normalizedError = refreshError instanceof Error ? refreshError : new chunkFFYLKZ7J_cjs.HostedAuthError("Hosted authentication refresh failed.");
|
|
226
226
|
setError(normalizedError);
|
|
227
227
|
throw normalizedError;
|
|
228
228
|
} finally {
|
|
@@ -242,12 +242,12 @@ function useHostedRedirectAuth() {
|
|
|
242
242
|
}
|
|
243
243
|
function useBalance(options = {}) {
|
|
244
244
|
const queryClient = react.useContext(reactQuery.QueryClientContext);
|
|
245
|
-
const accountingContext =
|
|
245
|
+
const accountingContext = chunkFFYLKZ7J_cjs.useSafePrivanaContext();
|
|
246
246
|
const hasProviders = !!queryClient && !!accountingContext;
|
|
247
247
|
const client = accountingContext?.client;
|
|
248
248
|
const defaultToken = accountingContext?.defaultToken;
|
|
249
249
|
const pollingInterval = accountingContext?.pollingInterval ?? 1e4;
|
|
250
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
250
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
251
251
|
const tokenId = options.tokenId ?? defaultToken?.id;
|
|
252
252
|
const query = reactQuery.useQuery({
|
|
253
253
|
queryKey: ["accounting-balance", ...privateReadQueryScope, tokenId],
|
|
@@ -264,7 +264,7 @@ function useBalance(options = {}) {
|
|
|
264
264
|
return {
|
|
265
265
|
balance: balanceWei,
|
|
266
266
|
balanceWei,
|
|
267
|
-
balanceFormatted:
|
|
267
|
+
balanceFormatted: chunkFFYLKZ7J_cjs.formatTokenAmount(balanceWei),
|
|
268
268
|
tokenSymbol: query.data?.token_symbol ?? "",
|
|
269
269
|
chainId: query.data?.chain_id ?? "",
|
|
270
270
|
isLoading: query.isPending || query.isLoading,
|
|
@@ -274,8 +274,8 @@ function useBalance(options = {}) {
|
|
|
274
274
|
};
|
|
275
275
|
}
|
|
276
276
|
function useBatchBalances(options) {
|
|
277
|
-
const { client, pollingInterval } =
|
|
278
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
277
|
+
const { client, pollingInterval } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
278
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
279
279
|
const query = reactQuery.useQuery({
|
|
280
280
|
queryKey: ["accounting-batch-balances", ...privateReadQueryScope, options.tokenIds],
|
|
281
281
|
queryFn: async () => {
|
|
@@ -307,17 +307,17 @@ function storageKey(address) {
|
|
|
307
307
|
return `privana:pending-deposit:${address.toLowerCase()}`;
|
|
308
308
|
}
|
|
309
309
|
function savePendingDeposit(address, data) {
|
|
310
|
-
const stored =
|
|
310
|
+
const stored = chunkFFYLKZ7J_cjs.setBrowserStorageItem(storageKey(address), JSON.stringify(data));
|
|
311
311
|
if (!stored && data.signedLock) {
|
|
312
312
|
throw new Error("Unable to persist pending locked deposit for recovery");
|
|
313
313
|
}
|
|
314
314
|
}
|
|
315
315
|
function loadPendingDeposit(address) {
|
|
316
316
|
try {
|
|
317
|
-
const raw =
|
|
317
|
+
const raw = chunkFFYLKZ7J_cjs.getBrowserStorageItem(storageKey(address));
|
|
318
318
|
if (!raw) return null;
|
|
319
319
|
const data = JSON.parse(raw);
|
|
320
|
-
if (Date.now() - data.savedAt > STALE_MS && !(data.signedLock &&
|
|
320
|
+
if (Date.now() - data.savedAt > STALE_MS && !(data.signedLock && chunkFFYLKZ7J_cjs.isSignedLockUsable(data.signedLock))) {
|
|
321
321
|
clearPendingDeposit(address);
|
|
322
322
|
return null;
|
|
323
323
|
}
|
|
@@ -329,21 +329,21 @@ function loadPendingDeposit(address) {
|
|
|
329
329
|
function clearPendingDeposit(address, onlyForTxHash) {
|
|
330
330
|
if (onlyForTxHash) {
|
|
331
331
|
try {
|
|
332
|
-
const raw =
|
|
332
|
+
const raw = chunkFFYLKZ7J_cjs.getBrowserStorageItem(storageKey(address));
|
|
333
333
|
const recordTxHash = raw ? JSON.parse(raw).txHash : void 0;
|
|
334
334
|
if (recordTxHash && recordTxHash !== onlyForTxHash) return;
|
|
335
335
|
} catch {
|
|
336
336
|
}
|
|
337
337
|
}
|
|
338
|
-
|
|
338
|
+
chunkFFYLKZ7J_cjs.removeBrowserStorageItem(storageKey(address));
|
|
339
339
|
}
|
|
340
340
|
function useDeposit(options = {}) {
|
|
341
341
|
const { address } = wagmi.useAccount();
|
|
342
|
-
const { client, enabledTokens, getChainById: getChainById2, networkConfig, serviceAddress } =
|
|
342
|
+
const { client, enabledTokens, getChainById: getChainById2, networkConfig, serviceAddress } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
343
343
|
const { data: walletClient } = wagmi.useWalletClient();
|
|
344
344
|
const queryClient = reactQuery.useQueryClient();
|
|
345
345
|
const config = wagmi.useConfig();
|
|
346
|
-
const { executePrivateRead, privateReadAddress } =
|
|
346
|
+
const { executePrivateRead, privateReadAddress } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
347
347
|
const privateReadAddressRef = react.useRef(privateReadAddress);
|
|
348
348
|
privateReadAddressRef.current = privateReadAddress;
|
|
349
349
|
const [depositAddress, setDepositAddress] = react.useState(null);
|
|
@@ -382,7 +382,7 @@ function useDeposit(options = {}) {
|
|
|
382
382
|
const submitPendingLockAfterCredit = react.useCallback(
|
|
383
383
|
async (signedLock, creditedAmount) => {
|
|
384
384
|
try {
|
|
385
|
-
const result = await
|
|
385
|
+
const result = await chunkFFYLKZ7J_cjs.submitPendingLock({
|
|
386
386
|
client,
|
|
387
387
|
payload: signedLock,
|
|
388
388
|
creditedAmount
|
|
@@ -393,7 +393,7 @@ function useDeposit(options = {}) {
|
|
|
393
393
|
queryClient.invalidateQueries({ queryKey: ["accounting-history"] });
|
|
394
394
|
onLockSubmittedRef.current?.(result);
|
|
395
395
|
} catch (err) {
|
|
396
|
-
const error2 = err instanceof
|
|
396
|
+
const error2 = err instanceof chunkFFYLKZ7J_cjs.PostDepositLockError ? err : new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
397
397
|
err instanceof Error ? err.message : "Lock submission failed",
|
|
398
398
|
"submission-failed",
|
|
399
399
|
BigInt(signedLock.amount),
|
|
@@ -412,7 +412,7 @@ function useDeposit(options = {}) {
|
|
|
412
412
|
error: verificationError,
|
|
413
413
|
verify,
|
|
414
414
|
reset: resetVerification
|
|
415
|
-
} =
|
|
415
|
+
} = chunkFFYLKZ7J_cjs.useDepositVerification({
|
|
416
416
|
pollInterval: options.pollInterval,
|
|
417
417
|
pollTimeout: options.pollTimeout,
|
|
418
418
|
onCredited: (hash, response, creditedAmount) => {
|
|
@@ -462,7 +462,7 @@ function useDeposit(options = {}) {
|
|
|
462
462
|
} = wagmi.useSendTransaction();
|
|
463
463
|
const isSendingTx = isWritingContract || isSendingNative;
|
|
464
464
|
const sendError = writeError ?? sendNativeError;
|
|
465
|
-
const { ensureCorrectChain } =
|
|
465
|
+
const { ensureCorrectChain } = chunkFFYLKZ7J_cjs.useEnsureCorrectChain();
|
|
466
466
|
const invalidateGeneration = react.useCallback(() => {
|
|
467
467
|
generationRef.current++;
|
|
468
468
|
}, []);
|
|
@@ -511,16 +511,16 @@ function useDeposit(options = {}) {
|
|
|
511
511
|
const confirmations = resolveConfirmations(persisted.depositAddress, persisted.chainId);
|
|
512
512
|
let confirmed = false;
|
|
513
513
|
try {
|
|
514
|
-
const receipt = await
|
|
514
|
+
const receipt = await chunkFFYLKZ7J_cjs.getTransactionReceipt(config, {
|
|
515
515
|
hash,
|
|
516
516
|
chainId: persisted.chainId
|
|
517
517
|
});
|
|
518
|
-
const blockNumber = await
|
|
518
|
+
const blockNumber = await chunkFFYLKZ7J_cjs.getBlockNumber(config, { chainId: persisted.chainId });
|
|
519
519
|
confirmed = blockNumber - receipt.blockNumber + 1n >= BigInt(confirmations);
|
|
520
520
|
} catch {
|
|
521
521
|
}
|
|
522
522
|
if (!confirmed) {
|
|
523
|
-
await
|
|
523
|
+
await chunkFFYLKZ7J_cjs.waitForTransactionReceipt(config, {
|
|
524
524
|
hash,
|
|
525
525
|
chainId: persisted.chainId,
|
|
526
526
|
confirmations
|
|
@@ -572,13 +572,13 @@ function useDeposit(options = {}) {
|
|
|
572
572
|
);
|
|
573
573
|
}
|
|
574
574
|
const confirmations = resolveConfirmations(addrResponse, sourceChain.id);
|
|
575
|
-
if (params.postDepositLock && !
|
|
575
|
+
if (params.postDepositLock && !chunkFFYLKZ7J_cjs.canUseBrowserStorage()) {
|
|
576
576
|
throw new Error("Browser storage is required for locked deposit recovery");
|
|
577
577
|
}
|
|
578
|
-
const lockAmount =
|
|
578
|
+
const lockAmount = chunkFFYLKZ7J_cjs.clampLockAmount(params.amount, params.postDepositLock?.maxAmount);
|
|
579
579
|
let signedLock;
|
|
580
580
|
if (params.postDepositLock) {
|
|
581
|
-
const lockOwner =
|
|
581
|
+
const lockOwner = chunkFFYLKZ7J_cjs.requireDepositLockOwner(address, privateReadAddress);
|
|
582
582
|
setIsSwitchingChain(true);
|
|
583
583
|
try {
|
|
584
584
|
await ensureCorrectChain(networkConfig.chainId);
|
|
@@ -586,15 +586,15 @@ function useDeposit(options = {}) {
|
|
|
586
586
|
if (!isStale()) setIsSwitchingChain(false);
|
|
587
587
|
}
|
|
588
588
|
if (isStale()) return;
|
|
589
|
-
const signingWalletClient = await
|
|
589
|
+
const signingWalletClient = await chunkFFYLKZ7J_cjs.getWalletClient(config, {
|
|
590
590
|
chainId: networkConfig.chainId
|
|
591
591
|
});
|
|
592
|
-
signedLock = await
|
|
592
|
+
signedLock = await chunkFFYLKZ7J_cjs.createSignedLockRequest({
|
|
593
593
|
client,
|
|
594
594
|
walletClient: signingWalletClient,
|
|
595
595
|
userAddress: lockOwner,
|
|
596
596
|
networkConfig,
|
|
597
|
-
serviceAddress:
|
|
597
|
+
serviceAddress: chunkFFYLKZ7J_cjs.requireServiceAddress(
|
|
598
598
|
params.postDepositLock.serviceAddress ?? serviceAddress
|
|
599
599
|
),
|
|
600
600
|
tokenId: params.tokenId,
|
|
@@ -648,7 +648,7 @@ function useDeposit(options = {}) {
|
|
|
648
648
|
try {
|
|
649
649
|
setIsWaitingForConfirmation(true);
|
|
650
650
|
try {
|
|
651
|
-
await
|
|
651
|
+
await chunkFFYLKZ7J_cjs.waitForTransactionReceipt(config, {
|
|
652
652
|
hash,
|
|
653
653
|
chainId: sourceChain.id,
|
|
654
654
|
confirmations
|
|
@@ -724,10 +724,10 @@ function useDeposit(options = {}) {
|
|
|
724
724
|
}
|
|
725
725
|
function useDepositAddress(options = {}) {
|
|
726
726
|
const queryClient = react.useContext(reactQuery.QueryClientContext);
|
|
727
|
-
const accountingContext =
|
|
727
|
+
const accountingContext = chunkFFYLKZ7J_cjs.useSafePrivanaContext();
|
|
728
728
|
const hasProviders = !!queryClient && !!accountingContext;
|
|
729
729
|
const client = accountingContext?.client;
|
|
730
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
730
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
731
731
|
const isReady = hasProviders && privateReadReady && !!privateReadAddress && !!client;
|
|
732
732
|
const query = reactQuery.useQuery({
|
|
733
733
|
queryKey: ["accounting-deposit-address", ...privateReadQueryScope],
|
|
@@ -751,9 +751,9 @@ function useDepositAddress(options = {}) {
|
|
|
751
751
|
function useWithdraw(options = {}) {
|
|
752
752
|
const { address } = wagmi.useAccount();
|
|
753
753
|
const { data: walletClient } = wagmi.useWalletClient();
|
|
754
|
-
const { client, networkConfig } =
|
|
754
|
+
const { client, networkConfig } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
755
755
|
const queryClient = reactQuery.useQueryClient();
|
|
756
|
-
const { chainId, ensureCorrectChain } =
|
|
756
|
+
const { chainId, ensureCorrectChain } = chunkFFYLKZ7J_cjs.useEnsureCorrectChain();
|
|
757
757
|
const pollInterval = options.pollInterval ?? 3e3;
|
|
758
758
|
const pollTimeout = options.pollTimeout ?? 18e4;
|
|
759
759
|
const [currentStep, setCurrentStep] = react.useState("idle");
|
|
@@ -821,7 +821,7 @@ function useWithdraw(options = {}) {
|
|
|
821
821
|
if (isStale()) return void 0;
|
|
822
822
|
const nonce = BigInt(nonceResponse.nonce);
|
|
823
823
|
setCurrentStep("signing");
|
|
824
|
-
const signature = await
|
|
824
|
+
const signature = await chunkFFYLKZ7J_cjs.signWithdrawMessage({
|
|
825
825
|
walletClient,
|
|
826
826
|
chainId: signingChainId,
|
|
827
827
|
verifyingContract: networkConfig.accountingContract,
|
|
@@ -950,7 +950,7 @@ function useWithdraw(options = {}) {
|
|
|
950
950
|
function useLockFunds(options = {}) {
|
|
951
951
|
const { address } = wagmi.useAccount();
|
|
952
952
|
const { data: walletClient } = wagmi.useWalletClient();
|
|
953
|
-
const { client, networkConfig, serviceAddress } =
|
|
953
|
+
const { client, networkConfig, serviceAddress } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
954
954
|
const queryClient = reactQuery.useQueryClient();
|
|
955
955
|
const mutation = reactQuery.useMutation({
|
|
956
956
|
mutationFn: async (params) => {
|
|
@@ -961,7 +961,7 @@ function useLockFunds(options = {}) {
|
|
|
961
961
|
throw new Error("Service address not configured");
|
|
962
962
|
}
|
|
963
963
|
const { nonce } = await client.getLockNonce(address);
|
|
964
|
-
const signature = await
|
|
964
|
+
const signature = await chunkFFYLKZ7J_cjs.signLockMessage({
|
|
965
965
|
walletClient,
|
|
966
966
|
chainId: networkConfig.chainId,
|
|
967
967
|
verifyingContract: networkConfig.accountingContract,
|
|
@@ -1009,7 +1009,7 @@ function useLockFunds(options = {}) {
|
|
|
1009
1009
|
}
|
|
1010
1010
|
function useUnlockFunds(options = {}) {
|
|
1011
1011
|
const { address } = wagmi.useAccount();
|
|
1012
|
-
const { client } =
|
|
1012
|
+
const { client } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1013
1013
|
const queryClient = reactQuery.useQueryClient();
|
|
1014
1014
|
const unlockMutation = reactQuery.useMutation({
|
|
1015
1015
|
mutationFn: async (params) => {
|
|
@@ -1079,7 +1079,7 @@ function useUnlockFunds(options = {}) {
|
|
|
1079
1079
|
function useTransfer(options = {}) {
|
|
1080
1080
|
const { address } = wagmi.useAccount();
|
|
1081
1081
|
const { data: walletClient } = wagmi.useWalletClient();
|
|
1082
|
-
const { client, networkConfig, serviceAddress } =
|
|
1082
|
+
const { client, networkConfig, serviceAddress } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1083
1083
|
const queryClient = reactQuery.useQueryClient();
|
|
1084
1084
|
const transferMutation = reactQuery.useMutation({
|
|
1085
1085
|
mutationFn: async (params) => {
|
|
@@ -1087,7 +1087,7 @@ function useTransfer(options = {}) {
|
|
|
1087
1087
|
throw new Error("Wallet not connected");
|
|
1088
1088
|
}
|
|
1089
1089
|
const { nonce } = await client.getTransferNonce(address);
|
|
1090
|
-
const signature = await
|
|
1090
|
+
const signature = await chunkFFYLKZ7J_cjs.signTransferMessage({
|
|
1091
1091
|
walletClient,
|
|
1092
1092
|
chainId: networkConfig.chainId,
|
|
1093
1093
|
verifyingContract: networkConfig.accountingContract,
|
|
@@ -1124,7 +1124,7 @@ function useTransfer(options = {}) {
|
|
|
1124
1124
|
throw new Error("Service address not configured");
|
|
1125
1125
|
}
|
|
1126
1126
|
const { nonce } = await client.getTransferLockedNonce(serviceAddress);
|
|
1127
|
-
const signature = await
|
|
1127
|
+
const signature = await chunkFFYLKZ7J_cjs.signTransferLockedMessage({
|
|
1128
1128
|
walletClient,
|
|
1129
1129
|
chainId: networkConfig.chainId,
|
|
1130
1130
|
verifyingContract: networkConfig.accountingContract,
|
|
@@ -1184,8 +1184,8 @@ function useTransfer(options = {}) {
|
|
|
1184
1184
|
};
|
|
1185
1185
|
}
|
|
1186
1186
|
function useLockedFunds(options = {}) {
|
|
1187
|
-
const { client, pollingInterval, serviceAddress } =
|
|
1188
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
1187
|
+
const { client, pollingInterval, serviceAddress } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1188
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
1189
1189
|
const query = reactQuery.useQuery({
|
|
1190
1190
|
queryKey: ["accounting-locked-funds", ...privateReadQueryScope, serviceAddress ?? null],
|
|
1191
1191
|
queryFn: async () => {
|
|
@@ -1207,8 +1207,8 @@ function useLockedFunds(options = {}) {
|
|
|
1207
1207
|
};
|
|
1208
1208
|
}
|
|
1209
1209
|
function useTotalLockedBalance(options = {}) {
|
|
1210
|
-
const { client, pollingInterval, defaultToken } =
|
|
1211
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
1210
|
+
const { client, pollingInterval, defaultToken } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1211
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
1212
1212
|
const tokenId = options.tokenId ?? defaultToken?.id;
|
|
1213
1213
|
const query = reactQuery.useQuery({
|
|
1214
1214
|
queryKey: ["accounting-total-locked-balance", ...privateReadQueryScope, tokenId],
|
|
@@ -1229,8 +1229,8 @@ function useTotalLockedBalance(options = {}) {
|
|
|
1229
1229
|
};
|
|
1230
1230
|
}
|
|
1231
1231
|
function useExpiredLocks(options = {}) {
|
|
1232
|
-
const { client, pollingInterval } =
|
|
1233
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
1232
|
+
const { client, pollingInterval } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1233
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
1234
1234
|
const query = reactQuery.useQuery({
|
|
1235
1235
|
queryKey: ["accounting-expired-locks", ...privateReadQueryScope],
|
|
1236
1236
|
queryFn: async () => {
|
|
@@ -1251,14 +1251,14 @@ function useExpiredLocks(options = {}) {
|
|
|
1251
1251
|
};
|
|
1252
1252
|
}
|
|
1253
1253
|
function statusCodeOf(error) {
|
|
1254
|
-
return error instanceof
|
|
1254
|
+
return error instanceof chunkFFYLKZ7J_cjs.AccountingApiError ? error.statusCode : void 0;
|
|
1255
1255
|
}
|
|
1256
1256
|
function usePendingDeposits(options = {}) {
|
|
1257
1257
|
const queryClient = react.useContext(reactQuery.QueryClientContext);
|
|
1258
|
-
const accountingContext =
|
|
1258
|
+
const accountingContext = chunkFFYLKZ7J_cjs.useSafePrivanaContext();
|
|
1259
1259
|
const hasProviders = !!queryClient && !!accountingContext;
|
|
1260
1260
|
const client = accountingContext?.client;
|
|
1261
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
1261
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
1262
1262
|
const { chainId, tokenAddress, lookbackBlocks } = options;
|
|
1263
1263
|
const query = reactQuery.useQuery({
|
|
1264
1264
|
queryKey: ["accounting-pending-deposits", ...privateReadQueryScope, chainId, tokenAddress],
|
|
@@ -1305,7 +1305,7 @@ function usePendingDeposits(options = {}) {
|
|
|
1305
1305
|
}
|
|
1306
1306
|
function usePendingWithdrawals(options = {}) {
|
|
1307
1307
|
const { address, isConnected } = wagmi.useAccount();
|
|
1308
|
-
const { client, pollingInterval } =
|
|
1308
|
+
const { client, pollingInterval } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1309
1309
|
const query = reactQuery.useQuery({
|
|
1310
1310
|
queryKey: ["accounting-pending-withdrawals", address],
|
|
1311
1311
|
queryFn: async () => {
|
|
@@ -1341,8 +1341,8 @@ function usePendingWithdrawals(options = {}) {
|
|
|
1341
1341
|
};
|
|
1342
1342
|
}
|
|
1343
1343
|
function useHistory(options = {}) {
|
|
1344
|
-
const { client, pollingInterval } =
|
|
1345
|
-
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } =
|
|
1344
|
+
const { client, pollingInterval } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1345
|
+
const { executePrivateRead, privateReadAddress, privateReadQueryScope, privateReadReady } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
1346
1346
|
const offset = options.offset ?? -1;
|
|
1347
1347
|
const limit = options.limit ?? 50;
|
|
1348
1348
|
const query = reactQuery.useQuery({
|
|
@@ -1366,7 +1366,7 @@ function useHistory(options = {}) {
|
|
|
1366
1366
|
};
|
|
1367
1367
|
}
|
|
1368
1368
|
function useTokenInfo(options = {}) {
|
|
1369
|
-
const { client } =
|
|
1369
|
+
const { client } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1370
1370
|
const { tokenId } = options;
|
|
1371
1371
|
const query = reactQuery.useQuery({
|
|
1372
1372
|
queryKey: ["accounting-token-info", tokenId],
|
|
@@ -1386,7 +1386,7 @@ function useTokenInfo(options = {}) {
|
|
|
1386
1386
|
};
|
|
1387
1387
|
}
|
|
1388
1388
|
function useTokenList(options = {}) {
|
|
1389
|
-
const { client } =
|
|
1389
|
+
const { client } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1390
1390
|
const query = reactQuery.useQuery({
|
|
1391
1391
|
queryKey: ["accounting-token-list"],
|
|
1392
1392
|
queryFn: () => client.listTokens(),
|
|
@@ -1404,7 +1404,7 @@ function useTokenList(options = {}) {
|
|
|
1404
1404
|
function useModifyLock(options = {}) {
|
|
1405
1405
|
const { address } = wagmi.useAccount();
|
|
1406
1406
|
const { data: walletClient } = wagmi.useWalletClient();
|
|
1407
|
-
const { client, networkConfig } =
|
|
1407
|
+
const { client, networkConfig } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1408
1408
|
const queryClient = reactQuery.useQueryClient();
|
|
1409
1409
|
const mutation = reactQuery.useMutation({
|
|
1410
1410
|
mutationFn: async (params) => {
|
|
@@ -1412,7 +1412,7 @@ function useModifyLock(options = {}) {
|
|
|
1412
1412
|
throw new Error("Wallet not connected");
|
|
1413
1413
|
}
|
|
1414
1414
|
const { nonce } = await client.getModifyLockNonce(address);
|
|
1415
|
-
const signature = await
|
|
1415
|
+
const signature = await chunkFFYLKZ7J_cjs.signModifyLockMessage({
|
|
1416
1416
|
walletClient,
|
|
1417
1417
|
chainId: networkConfig.chainId,
|
|
1418
1418
|
verifyingContract: networkConfig.accountingContract,
|
|
@@ -1471,7 +1471,7 @@ function DialogOverlay({
|
|
|
1471
1471
|
{
|
|
1472
1472
|
"data-slot": "dialog-overlay",
|
|
1473
1473
|
"data-privana": true,
|
|
1474
|
-
className:
|
|
1474
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
1475
1475
|
"data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",
|
|
1476
1476
|
className
|
|
1477
1477
|
),
|
|
@@ -1493,7 +1493,7 @@ function DialogContent({
|
|
|
1493
1493
|
{
|
|
1494
1494
|
"data-slot": "dialog-content",
|
|
1495
1495
|
"data-privana": true,
|
|
1496
|
-
className:
|
|
1496
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
1497
1497
|
"bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 outline-none sm:max-w-lg",
|
|
1498
1498
|
className
|
|
1499
1499
|
),
|
|
@@ -1521,7 +1521,7 @@ function DialogTitle({ className, ...props }) {
|
|
|
1521
1521
|
DialogPrimitive__namespace.Title,
|
|
1522
1522
|
{
|
|
1523
1523
|
"data-slot": "dialog-title",
|
|
1524
|
-
className:
|
|
1524
|
+
className: chunkFFYLKZ7J_cjs.cn("text-lg leading-none font-semibold", className),
|
|
1525
1525
|
...props
|
|
1526
1526
|
}
|
|
1527
1527
|
);
|
|
@@ -1534,7 +1534,7 @@ function DialogDescription({
|
|
|
1534
1534
|
DialogPrimitive__namespace.Description,
|
|
1535
1535
|
{
|
|
1536
1536
|
"data-slot": "dialog-description",
|
|
1537
|
-
className:
|
|
1537
|
+
className: chunkFFYLKZ7J_cjs.cn("text-muted-foreground text-sm", className),
|
|
1538
1538
|
...props
|
|
1539
1539
|
}
|
|
1540
1540
|
);
|
|
@@ -1576,7 +1576,7 @@ function sessionKey(owner, sessionId) {
|
|
|
1576
1576
|
return `${SESSION_PREFIX}${owner.toLowerCase()}:${sessionId}`;
|
|
1577
1577
|
}
|
|
1578
1578
|
function activeSessionId(owner) {
|
|
1579
|
-
const value =
|
|
1579
|
+
const value = chunkFFYLKZ7J_cjs.getSharedBrowserStorageItem(activeSessionKey(owner));
|
|
1580
1580
|
return value || void 0;
|
|
1581
1581
|
}
|
|
1582
1582
|
function isPositiveIntegerString(value) {
|
|
@@ -1608,7 +1608,7 @@ function isSessionRecord(value) {
|
|
|
1608
1608
|
}
|
|
1609
1609
|
function writeSessionRecord(session) {
|
|
1610
1610
|
const id = externalDepositSessionId(session.chainId, session.tokenId);
|
|
1611
|
-
return
|
|
1611
|
+
return chunkFFYLKZ7J_cjs.setSharedBrowserStorageItem(sessionKey(session.owner, id), JSON.stringify(session));
|
|
1612
1612
|
}
|
|
1613
1613
|
function saveExternalDepositLockSession(session, expectedSession = null) {
|
|
1614
1614
|
if (!isSessionRecord(session)) throw new Error("Invalid external deposit lock session");
|
|
@@ -1622,12 +1622,12 @@ function saveExternalDepositLockSession(session, expectedSession = null) {
|
|
|
1622
1622
|
throw new Error("Unable to persist external deposit lock session");
|
|
1623
1623
|
}
|
|
1624
1624
|
if (previousId !== nextId) {
|
|
1625
|
-
if (!
|
|
1626
|
-
|
|
1625
|
+
if (!chunkFFYLKZ7J_cjs.setSharedBrowserStorageItem(activeSessionKey(session.owner), nextId)) {
|
|
1626
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(sessionKey(session.owner, nextId));
|
|
1627
1627
|
throw new Error("Unable to persist external deposit lock session");
|
|
1628
1628
|
}
|
|
1629
1629
|
if (previousId) {
|
|
1630
|
-
|
|
1630
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(sessionKey(session.owner, previousId));
|
|
1631
1631
|
}
|
|
1632
1632
|
}
|
|
1633
1633
|
}
|
|
@@ -1636,17 +1636,17 @@ function loadExternalDepositLockSession(owner) {
|
|
|
1636
1636
|
if (!id) return void 0;
|
|
1637
1637
|
const key = sessionKey(owner, id);
|
|
1638
1638
|
try {
|
|
1639
|
-
const raw =
|
|
1639
|
+
const raw = chunkFFYLKZ7J_cjs.getSharedBrowserStorageItem(key);
|
|
1640
1640
|
const parsed = raw ? JSON.parse(raw) : void 0;
|
|
1641
1641
|
if (!isSessionRecord(parsed) || parsed.owner.toLowerCase() !== owner.toLowerCase() || externalDepositSessionId(parsed.chainId, parsed.tokenId) !== id) {
|
|
1642
|
-
|
|
1643
|
-
|
|
1642
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(key);
|
|
1643
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(activeSessionKey(owner));
|
|
1644
1644
|
return void 0;
|
|
1645
1645
|
}
|
|
1646
1646
|
return parsed;
|
|
1647
1647
|
} catch {
|
|
1648
|
-
|
|
1649
|
-
|
|
1648
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(key);
|
|
1649
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(activeSessionKey(owner));
|
|
1650
1650
|
return void 0;
|
|
1651
1651
|
}
|
|
1652
1652
|
}
|
|
@@ -1677,8 +1677,8 @@ function clearExternalDepositLockSession(owner, expectedSessionId, expectedGener
|
|
|
1677
1677
|
const current = loadExternalDepositLockSession(owner);
|
|
1678
1678
|
if (!current || current.generation !== expectedGeneration) return;
|
|
1679
1679
|
}
|
|
1680
|
-
|
|
1681
|
-
|
|
1680
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(sessionKey(owner, id));
|
|
1681
|
+
chunkFFYLKZ7J_cjs.removeSharedBrowserStorageItem(activeSessionKey(owner));
|
|
1682
1682
|
}
|
|
1683
1683
|
function isSameVerification(left, right) {
|
|
1684
1684
|
if (!left || !right) return left === right;
|
|
@@ -1731,7 +1731,7 @@ function markSubmissionAmbiguous(session, signature) {
|
|
|
1731
1731
|
return writeSessionRecord({ ...current, submissionAmbiguous: true });
|
|
1732
1732
|
}
|
|
1733
1733
|
function ambiguousSubmissionError(error) {
|
|
1734
|
-
return new
|
|
1734
|
+
return new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
1735
1735
|
"Lock submission could not be confirmed. Retry only the saved signature, or check locked funds before stopping recovery.",
|
|
1736
1736
|
error.reason,
|
|
1737
1737
|
error.signedAmount,
|
|
@@ -1744,7 +1744,7 @@ function ambiguousSubmissionError(error) {
|
|
|
1744
1744
|
}
|
|
1745
1745
|
function isDefinitiveSubmissionFailure(error) {
|
|
1746
1746
|
const cause = error.cause;
|
|
1747
|
-
return cause instanceof
|
|
1747
|
+
return cause instanceof chunkFFYLKZ7J_cjs.AccountingApiError && cause.statusCode !== 408 && cause.statusCode < 500;
|
|
1748
1748
|
}
|
|
1749
1749
|
function submissionLockName(session) {
|
|
1750
1750
|
return `privana:external-deposit-lock:submit:${session.owner.toLowerCase()}:${externalDepositSessionId(session.chainId, session.tokenId)}`;
|
|
@@ -1764,7 +1764,7 @@ async function submitExternalDepositLock(client, session) {
|
|
|
1764
1764
|
return withSubmissionLock(session, async (crossTabExclusive) => {
|
|
1765
1765
|
const current = loadExternalDepositLockSession(session.owner);
|
|
1766
1766
|
if (!current || current.generation !== session.generation) {
|
|
1767
|
-
throw new
|
|
1767
|
+
throw new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
1768
1768
|
"External deposit lock session changed before submission",
|
|
1769
1769
|
"not-found",
|
|
1770
1770
|
BigInt(session.maxLockAmount),
|
|
@@ -1783,7 +1783,7 @@ async function submitExternalDepositLock(client, session) {
|
|
|
1783
1783
|
async function submitExternalDepositLockAttempt(client, session, crossTabExclusive) {
|
|
1784
1784
|
const creditedAmount = session.creditedAmount ? BigInt(session.creditedAmount) : void 0;
|
|
1785
1785
|
if (!creditedAmount) {
|
|
1786
|
-
throw new
|
|
1786
|
+
throw new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
1787
1787
|
"External deposit has not been credited",
|
|
1788
1788
|
"submission-failed",
|
|
1789
1789
|
BigInt(session.maxLockAmount)
|
|
@@ -1791,7 +1791,7 @@ async function submitExternalDepositLockAttempt(client, session, crossTabExclusi
|
|
|
1791
1791
|
}
|
|
1792
1792
|
const payload = session.payload;
|
|
1793
1793
|
if (!payload) {
|
|
1794
|
-
throw new
|
|
1794
|
+
throw new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
1795
1795
|
"No persisted signed policy found for this deposit session",
|
|
1796
1796
|
"not-found",
|
|
1797
1797
|
BigInt(session.maxLockAmount),
|
|
@@ -1799,7 +1799,7 @@ async function submitExternalDepositLockAttempt(client, session, crossTabExclusi
|
|
|
1799
1799
|
);
|
|
1800
1800
|
}
|
|
1801
1801
|
try {
|
|
1802
|
-
return await
|
|
1802
|
+
return await chunkFFYLKZ7J_cjs.submitPendingLock({
|
|
1803
1803
|
client,
|
|
1804
1804
|
payload,
|
|
1805
1805
|
creditedAmount,
|
|
@@ -1810,23 +1810,23 @@ async function submitExternalDepositLockAttempt(client, session, crossTabExclusi
|
|
|
1810
1810
|
}
|
|
1811
1811
|
});
|
|
1812
1812
|
} catch (err) {
|
|
1813
|
-
if (err instanceof
|
|
1813
|
+
if (err instanceof chunkFFYLKZ7J_cjs.PostDepositLockError && err.reason === "submission-failed" && crossTabExclusive && !session.submissionAmbiguous && isDefinitiveSubmissionFailure(err)) {
|
|
1814
1814
|
if (!clearSubmittedPayload(session, payload.signature, true)) {
|
|
1815
1815
|
const latest = loadExternalDepositLockSession(session.owner);
|
|
1816
1816
|
if (latest?.submissionAmbiguous) throw ambiguousSubmissionError(err);
|
|
1817
1817
|
}
|
|
1818
|
-
} else if (err instanceof
|
|
1818
|
+
} else if (err instanceof chunkFFYLKZ7J_cjs.PostDepositLockError && err.reason === "submission-failed") {
|
|
1819
1819
|
const ambiguous = markSubmissionAmbiguous(session, payload.signature) || loadExternalDepositLockSession(session.owner)?.submissionAmbiguous === true;
|
|
1820
1820
|
if (ambiguous) throw ambiguousSubmissionError(err);
|
|
1821
1821
|
} else {
|
|
1822
1822
|
const current = loadExternalDepositLockSession(session.owner);
|
|
1823
1823
|
if (session.submissionAmbiguous || current?.submissionAmbiguous) {
|
|
1824
|
-
if (err instanceof
|
|
1824
|
+
if (err instanceof chunkFFYLKZ7J_cjs.PostDepositLockError) throw ambiguousSubmissionError(err);
|
|
1825
1825
|
throw err;
|
|
1826
1826
|
}
|
|
1827
1827
|
if (!clearSubmittedPayload(session, payload.signature)) {
|
|
1828
1828
|
const latest = loadExternalDepositLockSession(session.owner);
|
|
1829
|
-
if (latest?.submissionAmbiguous && err instanceof
|
|
1829
|
+
if (latest?.submissionAmbiguous && err instanceof chunkFFYLKZ7J_cjs.PostDepositLockError) {
|
|
1830
1830
|
throw ambiguousSubmissionError(err);
|
|
1831
1831
|
}
|
|
1832
1832
|
}
|
|
@@ -1839,12 +1839,12 @@ function useExternalDepositLock({
|
|
|
1839
1839
|
onLockSubmitted,
|
|
1840
1840
|
onLockFailed
|
|
1841
1841
|
}) {
|
|
1842
|
-
const { client, networkConfig, serviceAddress, getTokenById, tokensStatus } =
|
|
1842
|
+
const { client, networkConfig, serviceAddress, getTokenById, tokensStatus } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
1843
1843
|
const config = wagmi.useConfig();
|
|
1844
1844
|
const queryClient = reactQuery.useQueryClient();
|
|
1845
1845
|
const { address } = wagmi.useAccount();
|
|
1846
|
-
const { privateReadAddress } =
|
|
1847
|
-
const { ensureCorrectChain } =
|
|
1846
|
+
const { privateReadAddress } = chunkFFYLKZ7J_cjs.usePrivateReadRequest();
|
|
1847
|
+
const { ensureCorrectChain } = chunkFFYLKZ7J_cjs.useEnsureCorrectChain();
|
|
1848
1848
|
const [isSigning, setIsSigning] = react.useState(false);
|
|
1849
1849
|
const [isSubmittingLock, setIsSubmittingLock] = react.useState(false);
|
|
1850
1850
|
const [session, setSession] = react.useState(null);
|
|
@@ -1904,7 +1904,7 @@ function useExternalDepositLock({
|
|
|
1904
1904
|
result = await submitExternalDepositLock(client, submission);
|
|
1905
1905
|
} catch (err) {
|
|
1906
1906
|
const stored = loadExternalDepositLockSession(active.owner);
|
|
1907
|
-
const error = err instanceof
|
|
1907
|
+
const error = err instanceof chunkFFYLKZ7J_cjs.PostDepositLockError ? err : new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
1908
1908
|
err instanceof Error ? err.message : "Lock submission failed",
|
|
1909
1909
|
"submission-failed",
|
|
1910
1910
|
BigInt(active.maxLockAmount),
|
|
@@ -1983,7 +1983,7 @@ function useExternalDepositLock({
|
|
|
1983
1983
|
void submitSession(restored);
|
|
1984
1984
|
} else if (restored.creditedAmount) {
|
|
1985
1985
|
notifyFailure(
|
|
1986
|
-
new
|
|
1986
|
+
new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
1987
1987
|
"Deposit credited; sign a fresh policy to lock the funds",
|
|
1988
1988
|
"not-found",
|
|
1989
1989
|
BigInt(restored.maxLockAmount),
|
|
@@ -2023,10 +2023,10 @@ function useExternalDepositLock({
|
|
|
2023
2023
|
if (signingRef.current || settlingRef.current) {
|
|
2024
2024
|
throw new Error("A policy operation is already in progress");
|
|
2025
2025
|
}
|
|
2026
|
-
if (!
|
|
2026
|
+
if (!chunkFFYLKZ7J_cjs.canUseSharedBrowserStorage()) {
|
|
2027
2027
|
throw new Error("Browser storage is required for locked deposit recovery");
|
|
2028
2028
|
}
|
|
2029
|
-
const owner =
|
|
2029
|
+
const owner = chunkFFYLKZ7J_cjs.requireDepositLockOwner(address, privateReadAddress);
|
|
2030
2030
|
if (sessionRef.current || loadExternalDepositLockSession(owner)) {
|
|
2031
2031
|
throw new Error("Finish or cancel the active external deposit before starting another");
|
|
2032
2032
|
}
|
|
@@ -2035,26 +2035,26 @@ function useExternalDepositLock({
|
|
|
2035
2035
|
if (token.contract === viem.zeroAddress) {
|
|
2036
2036
|
throw new Error("External deposits support ERC20 tokens only");
|
|
2037
2037
|
}
|
|
2038
|
-
const targetService =
|
|
2039
|
-
const lockDuration = allowance.lockDuration ??
|
|
2038
|
+
const targetService = chunkFFYLKZ7J_cjs.requireServiceAddress(serviceAddress);
|
|
2039
|
+
const lockDuration = allowance.lockDuration ?? chunkFFYLKZ7J_cjs.DEFAULT_LOCK_DURATION_SECONDS;
|
|
2040
2040
|
signingRef.current = true;
|
|
2041
2041
|
setIsSigning(true);
|
|
2042
2042
|
try {
|
|
2043
2043
|
await ensureCorrectChain(networkConfig.chainId);
|
|
2044
|
-
const signingWalletClient = await
|
|
2044
|
+
const signingWalletClient = await chunkFFYLKZ7J_cjs.getWalletClient(config, {
|
|
2045
2045
|
chainId: networkConfig.chainId
|
|
2046
2046
|
});
|
|
2047
|
-
const payload = await
|
|
2047
|
+
const payload = await chunkFFYLKZ7J_cjs.createSignedLockRequest({
|
|
2048
2048
|
client,
|
|
2049
2049
|
walletClient: signingWalletClient,
|
|
2050
2050
|
userAddress: owner,
|
|
2051
2051
|
networkConfig,
|
|
2052
2052
|
serviceAddress: targetService,
|
|
2053
2053
|
tokenId: token.id,
|
|
2054
|
-
amount:
|
|
2054
|
+
amount: chunkFFYLKZ7J_cjs.clampLockAmount(amount, BigInt(allowance.value)),
|
|
2055
2055
|
lockDuration
|
|
2056
2056
|
});
|
|
2057
|
-
const startBlock = await
|
|
2057
|
+
const startBlock = await chunkFFYLKZ7J_cjs.getBlockNumber(config, { chainId: token.chainId });
|
|
2058
2058
|
if (startBlock > BigInt(Number.MAX_SAFE_INTEGER)) {
|
|
2059
2059
|
throw new Error("Source-chain block number exceeds the supported range");
|
|
2060
2060
|
}
|
|
@@ -2120,7 +2120,7 @@ function useExternalDepositLock({
|
|
|
2120
2120
|
pendingCreditedTransitionRef.current = { predecessor: active, credited };
|
|
2121
2121
|
installSession(credited);
|
|
2122
2122
|
notifyFailure(
|
|
2123
|
-
new
|
|
2123
|
+
new chunkFFYLKZ7J_cjs.PostDepositLockError(
|
|
2124
2124
|
err instanceof Error ? err.message : "Unable to persist credited deposit state",
|
|
2125
2125
|
"submission-failed",
|
|
2126
2126
|
BigInt(active.maxLockAmount),
|
|
@@ -2180,7 +2180,7 @@ function useExternalDepositLock({
|
|
|
2180
2180
|
if (!token || token.chainId !== active.chainId || token.contract === viem.zeroAddress) {
|
|
2181
2181
|
throw new Error("The credited token is no longer available");
|
|
2182
2182
|
}
|
|
2183
|
-
const targetService =
|
|
2183
|
+
const targetService = chunkFFYLKZ7J_cjs.requireServiceAddress(serviceAddress);
|
|
2184
2184
|
if (targetService.toLowerCase() !== active.serviceAddress.toLowerCase()) {
|
|
2185
2185
|
throw new Error("The service for this credited deposit has changed");
|
|
2186
2186
|
}
|
|
@@ -2193,17 +2193,17 @@ function useExternalDepositLock({
|
|
|
2193
2193
|
"The previous lock submission may have succeeded; a fresh signature is unsafe"
|
|
2194
2194
|
);
|
|
2195
2195
|
}
|
|
2196
|
-
const owner =
|
|
2196
|
+
const owner = chunkFFYLKZ7J_cjs.requireDepositLockOwner(address, privateReadAddress);
|
|
2197
2197
|
const amount = externalDepositRetryAmount(active);
|
|
2198
2198
|
let retrySession;
|
|
2199
2199
|
signingRef.current = true;
|
|
2200
2200
|
setIsSigning(true);
|
|
2201
2201
|
try {
|
|
2202
2202
|
await ensureCorrectChain(networkConfig.chainId);
|
|
2203
|
-
const signingWalletClient = await
|
|
2203
|
+
const signingWalletClient = await chunkFFYLKZ7J_cjs.getWalletClient(config, {
|
|
2204
2204
|
chainId: networkConfig.chainId
|
|
2205
2205
|
});
|
|
2206
|
-
const payload = await
|
|
2206
|
+
const payload = await chunkFFYLKZ7J_cjs.createSignedLockRequest({
|
|
2207
2207
|
client,
|
|
2208
2208
|
walletClient: signingWalletClient,
|
|
2209
2209
|
userAddress: owner,
|
|
@@ -2336,7 +2336,7 @@ function BaseIcon({ className, size = 24 }) {
|
|
|
2336
2336
|
}
|
|
2337
2337
|
);
|
|
2338
2338
|
}
|
|
2339
|
-
function
|
|
2339
|
+
function EthereumIcon({ className, size = 24 }) {
|
|
2340
2340
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2341
2341
|
"svg",
|
|
2342
2342
|
{
|
|
@@ -2387,18 +2387,19 @@ function WETHIcon({ className, size = 24 }) {
|
|
|
2387
2387
|
}
|
|
2388
2388
|
function getTokenIcon(symbol, size) {
|
|
2389
2389
|
const iconSize = size ?? 24;
|
|
2390
|
-
switch (symbol.toUpperCase()) {
|
|
2390
|
+
switch ((symbol ?? "").toUpperCase()) {
|
|
2391
2391
|
case "USDC":
|
|
2392
2392
|
return /* @__PURE__ */ jsxRuntime.jsx(USDCIcon, { size: iconSize });
|
|
2393
|
+
case "ETH":
|
|
2393
2394
|
case "WETH":
|
|
2394
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2395
|
+
return /* @__PURE__ */ jsxRuntime.jsx(EthereumIcon, { size: iconSize });
|
|
2395
2396
|
default:
|
|
2396
2397
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2397
2398
|
"div",
|
|
2398
2399
|
{
|
|
2399
2400
|
className: "bg-muted flex items-center justify-center rounded-full text-xs font-bold",
|
|
2400
2401
|
style: { width: iconSize, height: iconSize },
|
|
2401
|
-
children: symbol.slice(0, 2)
|
|
2402
|
+
children: (symbol ?? "?").slice(0, 2)
|
|
2402
2403
|
}
|
|
2403
2404
|
);
|
|
2404
2405
|
}
|
|
@@ -2406,8 +2407,12 @@ function getTokenIcon(symbol, size) {
|
|
|
2406
2407
|
function getChainIcon(chainId, size) {
|
|
2407
2408
|
const iconSize = size ?? 24;
|
|
2408
2409
|
switch (chainId) {
|
|
2410
|
+
case 8453:
|
|
2409
2411
|
case 84532:
|
|
2410
2412
|
return /* @__PURE__ */ jsxRuntime.jsx(BaseIcon, { size: iconSize });
|
|
2413
|
+
case 1:
|
|
2414
|
+
case 11155111:
|
|
2415
|
+
return /* @__PURE__ */ jsxRuntime.jsx(EthereumIcon, { size: iconSize });
|
|
2411
2416
|
default:
|
|
2412
2417
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2413
2418
|
"div",
|
|
@@ -2420,16 +2425,17 @@ function getChainIcon(chainId, size) {
|
|
|
2420
2425
|
}
|
|
2421
2426
|
}
|
|
2422
2427
|
function TokenSelectorView({ selectedTokenId, onSelect }) {
|
|
2423
|
-
const { enabledTokens } =
|
|
2428
|
+
const { enabledTokens, getChainById: getChainById2 } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
2424
2429
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-muted flex flex-col rounded-[10px] p-3", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex max-h-72 flex-col gap-1 overflow-y-auto", children: [
|
|
2425
2430
|
enabledTokens.map((token) => {
|
|
2426
2431
|
const isSelected = selectedTokenId === token.id;
|
|
2432
|
+
const chainName = getChainById2(token.chainId)?.name;
|
|
2427
2433
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
2428
2434
|
"button",
|
|
2429
2435
|
{
|
|
2430
2436
|
type: "button",
|
|
2431
2437
|
onClick: () => onSelect(token.id),
|
|
2432
|
-
className:
|
|
2438
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
2433
2439
|
"hover:bg-secondary flex w-full cursor-pointer items-center gap-3 rounded-lg px-3 py-2 text-left transition-colors",
|
|
2434
2440
|
isSelected && "bg-secondary"
|
|
2435
2441
|
),
|
|
@@ -2437,7 +2443,10 @@ function TokenSelectorView({ selectedTokenId, onSelect }) {
|
|
|
2437
2443
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-6 w-6 shrink-0 overflow-hidden rounded-full", children: getTokenIcon(token.symbol, 24) }),
|
|
2438
2444
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
|
|
2439
2445
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-foreground text-sm font-medium", children: token.symbol }),
|
|
2440
|
-
/* @__PURE__ */ jsxRuntime.
|
|
2446
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-muted-foreground text-[11px]", children: [
|
|
2447
|
+
"on ",
|
|
2448
|
+
chainName ?? "\u2014"
|
|
2449
|
+
] })
|
|
2441
2450
|
] }),
|
|
2442
2451
|
isSelected && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-primary flex h-4 w-4 shrink-0 items-center justify-center rounded-full", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
2443
2452
|
"svg",
|
|
@@ -2484,7 +2493,7 @@ function CreditCardWidgetView({
|
|
|
2484
2493
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref: containerRef, className: "bg-muted flex flex-col gap-6 rounded-[10px] p-5", children: [
|
|
2485
2494
|
/* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-foreground text-[28px] leading-8 font-medium", children: "Complete your purchase" }),
|
|
2486
2495
|
token && moonpayCurrencyCode ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2487
|
-
|
|
2496
|
+
chunkFFYLKZ7J_cjs.FiatOnRampForm,
|
|
2488
2497
|
{
|
|
2489
2498
|
tokenId: token.id,
|
|
2490
2499
|
currencyCode: moonpayCurrencyCode,
|
|
@@ -2773,7 +2782,7 @@ function ChevronDownIcon({
|
|
|
2773
2782
|
height: "16",
|
|
2774
2783
|
viewBox: "0 0 16 16",
|
|
2775
2784
|
fill: "none",
|
|
2776
|
-
className:
|
|
2785
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
2777
2786
|
"transition-transform",
|
|
2778
2787
|
direction === "right" && "-rotate-90",
|
|
2779
2788
|
direction === "up" && "rotate-180",
|
|
@@ -2926,7 +2935,7 @@ function PolicyTermRow({
|
|
|
2926
2935
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2927
2936
|
"div",
|
|
2928
2937
|
{
|
|
2929
|
-
className:
|
|
2938
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
2930
2939
|
"mt-0.5 shrink-0",
|
|
2931
2940
|
kind === "permission" ? "text-emerald-500" : "text-orange-500"
|
|
2932
2941
|
),
|
|
@@ -2999,7 +3008,7 @@ function DepositView({
|
|
|
2999
3008
|
onSubmit,
|
|
3000
3009
|
isSubmitting = false
|
|
3001
3010
|
}) {
|
|
3002
|
-
const { getChainById: getChainById2, chains, serviceName, serviceIcon, networkConfig, hostedAuthConfig } =
|
|
3011
|
+
const { getChainById: getChainById2, chains, serviceName, serviceIcon, networkConfig, hostedAuthConfig } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
3003
3012
|
const { address, isConnected } = wagmi.useAccount();
|
|
3004
3013
|
const appName = serviceName ?? "Privana";
|
|
3005
3014
|
const chain = selectedToken ? getChainById2(selectedToken.chainId) : void 0;
|
|
@@ -3023,7 +3032,7 @@ function DepositView({
|
|
|
3023
3032
|
query: { enabled: isConnectedSource && !!address && !!selectedToken && !isNative }
|
|
3024
3033
|
});
|
|
3025
3034
|
const walletBalance = isNative ? nativeBalanceData?.value : erc20Balance;
|
|
3026
|
-
const formattedWalletBalance = walletBalance != null && selectedToken ?
|
|
3035
|
+
const formattedWalletBalance = walletBalance != null && selectedToken ? chunkFFYLKZ7J_cjs.formatTokenAmount(walletBalance.toString(), selectedToken.decimals) : "0.00";
|
|
3027
3036
|
const {
|
|
3028
3037
|
minBuyAmount: moonpayMinBuy,
|
|
3029
3038
|
isLoading: moonpayLimitsLoading,
|
|
@@ -3036,7 +3045,7 @@ function DepositView({
|
|
|
3036
3045
|
const hasValidAmount = !!amount && parseFloat(amount) > 0;
|
|
3037
3046
|
const maxAmountDecimals = isCreditCard ? 2 : selectedToken?.decimals;
|
|
3038
3047
|
const tooManyDecimals = hasValidAmount && maxAmountDecimals != null && amount.includes(".") && amount.split(".")[1].length > maxAmountDecimals;
|
|
3039
|
-
const exceedsBalance = isConnectedSource && hasValidAmount && !tooManyDecimals && !!selectedToken && walletBalance != null &&
|
|
3048
|
+
const exceedsBalance = isConnectedSource && hasValidAmount && !tooManyDecimals && !!selectedToken && walletBalance != null && chunkFFYLKZ7J_cjs.parseTokenAmount(amount, selectedToken.decimals) > walletBalance;
|
|
3040
3049
|
const belowMoonpayMin = isCreditCard && hasValidAmount && moonpayMinBuy != null && parseFloat(amount) < moonpayMinBuy;
|
|
3041
3050
|
const moonpayLimitsUnready = isCreditCard && !!selectedToken?.moonpayCurrencyCode && moonpayMinBuy == null;
|
|
3042
3051
|
const creditCardUnavailable = isCreditCard && !!selectedToken && !selectedToken.moonpayCurrencyCode;
|
|
@@ -3044,7 +3053,7 @@ function DepositView({
|
|
|
3044
3053
|
const externalMinimumRequired = isExternal && !!allowance && !!selectedToken;
|
|
3045
3054
|
const externalMinimumLoading = externalMinimumRequired && externalMinimum === void 0;
|
|
3046
3055
|
const externalMinimumUnavailable = externalMinimumRequired && externalMinimum === null;
|
|
3047
|
-
const belowExternalMinimum = externalMinimumRequired && hasValidAmount && !tooManyDecimals && !!selectedToken && typeof externalMinimum === "bigint" &&
|
|
3056
|
+
const belowExternalMinimum = externalMinimumRequired && hasValidAmount && !tooManyDecimals && !!selectedToken && typeof externalMinimum === "bigint" && chunkFFYLKZ7J_cjs.parseTokenAmount(amount, selectedToken.decimals) < externalMinimum;
|
|
3048
3057
|
const externalNeedsWallet = isExternal && (!!allowance || !hostedAuthConfig);
|
|
3049
3058
|
const needsConnect = (isConnectedSource || externalNeedsWallet) && !isConnected;
|
|
3050
3059
|
const canDeposit = hasValidAmount && !!selectedToken && !tooManyDecimals && !exceedsBalance && !belowMoonpayMin && !moonpayLimitsUnready && !creditCardUnavailable && !externalTokenUnavailable && !externalMinimumLoading && !externalMinimumUnavailable && !belowExternalMinimum && !needsConnect;
|
|
@@ -3101,7 +3110,7 @@ function DepositView({
|
|
|
3101
3110
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3102
3111
|
"div",
|
|
3103
3112
|
{
|
|
3104
|
-
className:
|
|
3113
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
3105
3114
|
"border-border bg-input flex items-center gap-2 rounded-[10px] border",
|
|
3106
3115
|
isConnectedSource ? "py-1 pr-1 pl-3" : "px-3 py-3"
|
|
3107
3116
|
),
|
|
@@ -3241,7 +3250,7 @@ function ExternalDepositView({
|
|
|
3241
3250
|
onDiscardLock,
|
|
3242
3251
|
lock
|
|
3243
3252
|
}) {
|
|
3244
|
-
const { getChainById: getChainById2, getTokenById, serviceName } =
|
|
3253
|
+
const { getChainById: getChainById2, getTokenById, serviceName } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
3245
3254
|
const appName = serviceName ?? "Privana";
|
|
3246
3255
|
const { depositAddress, isReady, isLoading } = depositAddressState;
|
|
3247
3256
|
const chain = token ? getChainById2(token.chainId) : void 0;
|
|
@@ -3257,7 +3266,7 @@ function ExternalDepositView({
|
|
|
3257
3266
|
const [nothingFound, setNothingFound] = react.useState(false);
|
|
3258
3267
|
const [credited, setCredited] = react.useState(null);
|
|
3259
3268
|
const [showCancelWarning, setShowCancelWarning] = react.useState(false);
|
|
3260
|
-
const verification =
|
|
3269
|
+
const verification = chunkFFYLKZ7J_cjs.useDepositVerification({
|
|
3261
3270
|
onCredited: (txHash, _response, creditedAmount) => {
|
|
3262
3271
|
if (settleAfterCredit) {
|
|
3263
3272
|
void settleAfterCredit(txHash, creditedAmount);
|
|
@@ -3381,11 +3390,11 @@ function ExternalDepositView({
|
|
|
3381
3390
|
] }),
|
|
3382
3391
|
showDepositInstructions && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
3383
3392
|
!scanPaused && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: "Send the displayed amount in one transfer. Transfers below the minimum are not combined or automatically returned." }),
|
|
3384
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-secondary flex h-50 items-center justify-center rounded-[10px]", children: !isReady ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground px-6 text-center text-sm", children: "Connect your wallet to generate a deposit address." }) : depositAddress ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-[10px] bg-white p-3", children: /* @__PURE__ */ jsxRuntime.jsx(qrcode_react.QRCodeSVG, { value: depositAddress, size: 160 }) }) : isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
3393
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "bg-secondary flex h-50 items-center justify-center rounded-[10px]", children: !isReady ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground px-6 text-center text-sm", children: "Connect your wallet to generate a deposit address." }) : depositAddress ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-[10px] bg-white p-3", children: /* @__PURE__ */ jsxRuntime.jsx(qrcode_react.QRCodeSVG, { value: depositAddress, size: 160 }) }) : isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkFFYLKZ7J_cjs.Skeleton, { className: "h-full w-full rounded-[10px]" }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-sm", children: "Deposit address unavailable" }) }),
|
|
3385
3394
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
|
|
3386
3395
|
/* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: "Deposit Address" }),
|
|
3387
3396
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-3", children: [
|
|
3388
|
-
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-border flex h-10 min-w-0 flex-1 items-center rounded-[10px] border px-3", children: depositAddress ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-foreground min-w-0 flex-1 truncate text-sm", children: depositAddress }) : isReady && isLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
3397
|
+
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-border flex h-10 min-w-0 flex-1 items-center rounded-[10px] border px-3", children: depositAddress ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-foreground min-w-0 flex-1 truncate text-sm", children: depositAddress }) : isReady && isLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkFFYLKZ7J_cjs.Skeleton, { className: "h-4 w-3/4" }) : /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground text-sm", children: "\u2014" }) }),
|
|
3389
3398
|
/* @__PURE__ */ jsxRuntime.jsxs(
|
|
3390
3399
|
"button",
|
|
3391
3400
|
{
|
|
@@ -3440,7 +3449,7 @@ function ExternalDepositView({
|
|
|
3440
3449
|
TransactionSuccessView,
|
|
3441
3450
|
{
|
|
3442
3451
|
title: "Deposit Credited",
|
|
3443
|
-
message: `Transfer ${
|
|
3452
|
+
message: `Transfer ${chunkFFYLKZ7J_cjs.shortenAddress(credited.txHash)} has been credited to your Privana balance.`,
|
|
3444
3453
|
onDone: () => {
|
|
3445
3454
|
setCredited(null);
|
|
3446
3455
|
verification.reset();
|
|
@@ -3469,7 +3478,7 @@ function ExternalDepositView({
|
|
|
3469
3478
|
{
|
|
3470
3479
|
title: "Awaiting Deposit",
|
|
3471
3480
|
subtitle: listening ? "We are listening for your incoming transaction for the next hour." : "We've stopped listening automatically. Use the button below to check for your deposit.",
|
|
3472
|
-
remaining: listening ?
|
|
3481
|
+
remaining: listening ? chunkFFYLKZ7J_cjs.formatCountdown(secondsLeft) : void 0
|
|
3473
3482
|
}
|
|
3474
3483
|
),
|
|
3475
3484
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-3", children: [
|
|
@@ -3498,7 +3507,7 @@ function ExternalDepositView({
|
|
|
3498
3507
|
] });
|
|
3499
3508
|
}
|
|
3500
3509
|
function MoonPayGate({ enabled, children }) {
|
|
3501
|
-
const { networkConfig } =
|
|
3510
|
+
const { networkConfig } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
3502
3511
|
const apiKey = networkConfig.moonpayApiKey;
|
|
3503
3512
|
if (!enabled || !apiKey) return /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children });
|
|
3504
3513
|
return /* @__PURE__ */ jsxRuntime.jsx(moonpayReact.MoonPayProvider, { apiKey, children });
|
|
@@ -3519,7 +3528,7 @@ function MethodTabs({
|
|
|
3519
3528
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
3520
3529
|
"div",
|
|
3521
3530
|
{
|
|
3522
|
-
className:
|
|
3531
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
3523
3532
|
"bg-input absolute top-1 bottom-1 left-1 w-[calc(50%-8px)] rounded-md transition-transform duration-200",
|
|
3524
3533
|
activeTab === "credit-card" && "translate-x-[calc(100%+8px)]"
|
|
3525
3534
|
)
|
|
@@ -3530,7 +3539,7 @@ function MethodTabs({
|
|
|
3530
3539
|
{
|
|
3531
3540
|
type: "button",
|
|
3532
3541
|
onClick: () => onTabChange("crypto"),
|
|
3533
|
-
className:
|
|
3542
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
3534
3543
|
"relative z-10 flex-1 cursor-pointer rounded-md px-3 py-[9px] text-sm font-medium transition-colors",
|
|
3535
3544
|
activeTab === "crypto" ? "text-foreground" : "text-muted-foreground"
|
|
3536
3545
|
),
|
|
@@ -3542,7 +3551,7 @@ function MethodTabs({
|
|
|
3542
3551
|
{
|
|
3543
3552
|
type: "button",
|
|
3544
3553
|
onClick: () => onTabChange("credit-card"),
|
|
3545
|
-
className:
|
|
3554
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
3546
3555
|
"relative z-10 flex-1 cursor-pointer rounded-md px-3 py-[9px] text-sm font-medium transition-colors",
|
|
3547
3556
|
activeTab === "credit-card" ? "text-foreground" : "text-muted-foreground"
|
|
3548
3557
|
),
|
|
@@ -3586,7 +3595,7 @@ function DepositModalContent({
|
|
|
3586
3595
|
onCloseBlockedChange,
|
|
3587
3596
|
onExit
|
|
3588
3597
|
}) {
|
|
3589
|
-
const { serviceName, enabledTokens, defaultToken, hostedAuthConfig, getChainById: getChainById2, getTokenById } =
|
|
3598
|
+
const { serviceName, enabledTokens, defaultToken, hostedAuthConfig, getChainById: getChainById2, getTokenById } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
3590
3599
|
const { address } = wagmi.useAccount();
|
|
3591
3600
|
const appName = serviceName ?? "Privana";
|
|
3592
3601
|
const [activeTab, setActiveTab] = react.useState(defaultTab);
|
|
@@ -3721,7 +3730,7 @@ function DepositModalContent({
|
|
|
3721
3730
|
sonner.toast.error("External deposits support ERC20 tokens only");
|
|
3722
3731
|
return;
|
|
3723
3732
|
}
|
|
3724
|
-
const depositAmount =
|
|
3733
|
+
const depositAmount = chunkFFYLKZ7J_cjs.parseTokenAmount(args.amount, token2.decimals);
|
|
3725
3734
|
if (!allowance) {
|
|
3726
3735
|
setView("external-deposit");
|
|
3727
3736
|
return;
|
|
@@ -3754,7 +3763,7 @@ function DepositModalContent({
|
|
|
3754
3763
|
setCancelled(false);
|
|
3755
3764
|
deposit({
|
|
3756
3765
|
tokenId: token.id,
|
|
3757
|
-
amount:
|
|
3766
|
+
amount: chunkFFYLKZ7J_cjs.parseTokenAmount(args.amount, token.decimals),
|
|
3758
3767
|
postDepositLock: allowance ? {
|
|
3759
3768
|
maxAmount: BigInt(allowance.value),
|
|
3760
3769
|
lockDuration: allowance.lockDuration
|
|
@@ -3795,7 +3804,7 @@ function DepositModalContent({
|
|
|
3795
3804
|
];
|
|
3796
3805
|
const hasExternalLockRecovery = view === "external-deposit" && !!externalLock.session?.creditedAmount;
|
|
3797
3806
|
const externalSubmissionAmbiguous = hasExternalLockRecovery && !!lockFailure?.submissionMayHaveSucceeded;
|
|
3798
|
-
const savedExternalPayloadUsable = !!externalLock.session?.payload &&
|
|
3807
|
+
const savedExternalPayloadUsable = !!externalLock.session?.payload && chunkFFYLKZ7J_cjs.isSignedLockUsable(externalLock.session.payload);
|
|
3799
3808
|
const ambiguousRecoveryMustBeAbandoned = externalSubmissionAmbiguous && !savedExternalPayloadUsable;
|
|
3800
3809
|
const externalRecoveryExitLabel = externalSubmissionAmbiguous ? "Stop recovery" : "Keep funds unlocked";
|
|
3801
3810
|
const lockFailureToken = hasExternalLockRecovery && externalLock.session ? getTokenById(externalLock.session.tokenId) ?? selectedToken : selectedToken;
|
|
@@ -3865,7 +3874,7 @@ function DepositModalContent({
|
|
|
3865
3874
|
onClick: onClose,
|
|
3866
3875
|
disabled: isUnsafeToClose,
|
|
3867
3876
|
"aria-label": "Close",
|
|
3868
|
-
className:
|
|
3877
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
3869
3878
|
"absolute top-6 right-5 z-20 flex h-5 w-5 items-center justify-center transition-colors",
|
|
3870
3879
|
isUnsafeToClose ? "text-muted-foreground/40 cursor-not-allowed" : "text-muted-foreground hover:text-foreground cursor-pointer"
|
|
3871
3880
|
),
|
|
@@ -4073,7 +4082,7 @@ function DepositInlineModal({ className, ...handlers }) {
|
|
|
4073
4082
|
"div",
|
|
4074
4083
|
{
|
|
4075
4084
|
"data-privana": true,
|
|
4076
|
-
className:
|
|
4085
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
4077
4086
|
"bg-card relative flex w-[560px] max-w-full flex-col gap-2 overflow-hidden rounded-2xl p-2 shadow-lg",
|
|
4078
4087
|
className
|
|
4079
4088
|
),
|
|
@@ -4089,7 +4098,7 @@ function WithdrawView({
|
|
|
4089
4098
|
onPendingChange,
|
|
4090
4099
|
onWithdrawSuccess
|
|
4091
4100
|
}) {
|
|
4092
|
-
const { chains, getChainById: getChainById2 } =
|
|
4101
|
+
const { chains, getChainById: getChainById2 } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
4093
4102
|
const { isConnected, address } = wagmi.useAccount();
|
|
4094
4103
|
const [showSuccess, setShowSuccess] = react.useState(false);
|
|
4095
4104
|
const [showTimeout, setShowTimeout] = react.useState(false);
|
|
@@ -4103,7 +4112,7 @@ function WithdrawView({
|
|
|
4103
4112
|
tokenId: selectedToken?.id,
|
|
4104
4113
|
enabled: !!selectedToken
|
|
4105
4114
|
});
|
|
4106
|
-
const formattedBalance = selectedToken ?
|
|
4115
|
+
const formattedBalance = selectedToken ? chunkFFYLKZ7J_cjs.formatTokenAmount(balanceWei, selectedToken.decimals) : "0.00";
|
|
4107
4116
|
const { withdraw, isPending, currentStep, error, reset } = useWithdraw({
|
|
4108
4117
|
onProcessingSuccess: () => {
|
|
4109
4118
|
onAmountChange("");
|
|
@@ -4119,7 +4128,7 @@ function WithdrawView({
|
|
|
4119
4128
|
setShowTimeout(true);
|
|
4120
4129
|
}
|
|
4121
4130
|
});
|
|
4122
|
-
const explorerUrl = address && targetChain ?
|
|
4131
|
+
const explorerUrl = address && targetChain ? chunkFFYLKZ7J_cjs.getExplorerAddressUrl(targetChain.id, address) : void 0;
|
|
4123
4132
|
const getStepStatus = (step, after) => {
|
|
4124
4133
|
if (currentStep === step) return "active";
|
|
4125
4134
|
if (after.includes(currentStep)) return "completed";
|
|
@@ -4144,7 +4153,7 @@ function WithdrawView({
|
|
|
4144
4153
|
}, [isPending, cancelled, onPendingChange]);
|
|
4145
4154
|
const hasValidAmount = !!amount && parseFloat(amount) > 0;
|
|
4146
4155
|
const tooManyDecimals = !!hasValidAmount && !!selectedToken && amount.includes(".") && amount.split(".")[1].length > selectedToken.decimals;
|
|
4147
|
-
const exceedsBalance = !!hasValidAmount && !tooManyDecimals && !!selectedToken && !isBalanceLoading && !isBalanceError &&
|
|
4156
|
+
const exceedsBalance = !!hasValidAmount && !tooManyDecimals && !!selectedToken && !isBalanceLoading && !isBalanceError && chunkFFYLKZ7J_cjs.parseTokenAmount(amount, selectedToken.decimals) > BigInt(balanceWei);
|
|
4148
4157
|
const canWithdraw = isConnected && hasValidAmount && !!selectedToken && !tooManyDecimals && !exceedsBalance;
|
|
4149
4158
|
const handleMax = () => {
|
|
4150
4159
|
if (!selectedToken) return;
|
|
@@ -4156,7 +4165,7 @@ function WithdrawView({
|
|
|
4156
4165
|
setCancelled(false);
|
|
4157
4166
|
await withdraw({
|
|
4158
4167
|
tokenId: selectedToken.id,
|
|
4159
|
-
amount:
|
|
4168
|
+
amount: chunkFFYLKZ7J_cjs.parseTokenAmount(amount, selectedToken.decimals)
|
|
4160
4169
|
});
|
|
4161
4170
|
};
|
|
4162
4171
|
const handleCancel = () => {
|
|
@@ -4176,7 +4185,7 @@ function WithdrawView({
|
|
|
4176
4185
|
title: "Withdrawal Complete",
|
|
4177
4186
|
message: `Your ${selectedToken.symbol} withdrawal has been processed. Funds should appear in your wallet shortly.`,
|
|
4178
4187
|
explorerUrl,
|
|
4179
|
-
explorerLabel: targetChain ?
|
|
4188
|
+
explorerLabel: targetChain ? chunkFFYLKZ7J_cjs.getExplorerLabel(targetChain.id) : void 0,
|
|
4180
4189
|
onDone: handleDone
|
|
4181
4190
|
}
|
|
4182
4191
|
) });
|
|
@@ -4288,7 +4297,7 @@ function WithdrawModalContent({
|
|
|
4288
4297
|
onBack,
|
|
4289
4298
|
onWithdrawSuccess
|
|
4290
4299
|
}) {
|
|
4291
|
-
const { serviceName, enabledTokens, defaultToken, hostedAuthConfig } =
|
|
4300
|
+
const { serviceName, enabledTokens, defaultToken, hostedAuthConfig } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
4292
4301
|
const { address } = wagmi.useAccount();
|
|
4293
4302
|
const appName = serviceName ?? "Privana";
|
|
4294
4303
|
const [view, setView] = react.useState("form");
|
|
@@ -4414,7 +4423,7 @@ function WithdrawInlineModal({ className, onWithdrawSuccess }) {
|
|
|
4414
4423
|
"div",
|
|
4415
4424
|
{
|
|
4416
4425
|
"data-privana": true,
|
|
4417
|
-
className:
|
|
4426
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
4418
4427
|
"bg-card relative flex w-[560px] max-w-full flex-col gap-2 overflow-hidden rounded-2xl p-2 shadow-lg",
|
|
4419
4428
|
className
|
|
4420
4429
|
),
|
|
@@ -4458,14 +4467,14 @@ function SegmentedBalanceBar({
|
|
|
4458
4467
|
showAvailable && /* @__PURE__ */ jsxRuntime.jsx(
|
|
4459
4468
|
"div",
|
|
4460
4469
|
{
|
|
4461
|
-
className:
|
|
4470
|
+
className: chunkFFYLKZ7J_cjs.cn(AVAILABLE_COLOR, "rounded-l-full", !showInUse && "rounded-r-full"),
|
|
4462
4471
|
style: { flexGrow: grow(availableWei) }
|
|
4463
4472
|
}
|
|
4464
4473
|
),
|
|
4465
4474
|
showInUse && /* @__PURE__ */ jsxRuntime.jsx(
|
|
4466
4475
|
"div",
|
|
4467
4476
|
{
|
|
4468
|
-
className:
|
|
4477
|
+
className: chunkFFYLKZ7J_cjs.cn(IN_USE_COLOR, "rounded-r-full", !showAvailable && "rounded-l-full"),
|
|
4469
4478
|
style: { flexGrow: grow(inUseWei) }
|
|
4470
4479
|
}
|
|
4471
4480
|
)
|
|
@@ -4473,7 +4482,7 @@ function SegmentedBalanceBar({
|
|
|
4473
4482
|
}
|
|
4474
4483
|
function BalanceLegendItem({ color, label }) {
|
|
4475
4484
|
return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1.5", children: [
|
|
4476
|
-
/* @__PURE__ */ jsxRuntime.jsx("span", { className:
|
|
4485
|
+
/* @__PURE__ */ jsxRuntime.jsx("span", { className: chunkFFYLKZ7J_cjs.cn("h-2.5 w-2.5 rounded-full", color) }),
|
|
4477
4486
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-foreground text-sm leading-5", children: label })
|
|
4478
4487
|
] });
|
|
4479
4488
|
}
|
|
@@ -4486,7 +4495,7 @@ function WalletBalanceView({
|
|
|
4486
4495
|
onAddFunds,
|
|
4487
4496
|
onWithdraw
|
|
4488
4497
|
}) {
|
|
4489
|
-
const { serviceName, serviceIcon, defaultToken } =
|
|
4498
|
+
const { serviceName, serviceIcon, defaultToken } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
4490
4499
|
const appName = serviceName ?? "Privana";
|
|
4491
4500
|
const token = defaultToken;
|
|
4492
4501
|
const {
|
|
@@ -4499,14 +4508,14 @@ function WalletBalanceView({
|
|
|
4499
4508
|
const variant = !session ? "idle" : inUseWei === 0n ? "session-zero" : availableWei === 0n ? "fully-in-use" : "mixed";
|
|
4500
4509
|
const expiry = session?.expiry;
|
|
4501
4510
|
useNow(3e4, expiry != null);
|
|
4502
|
-
const countdown = expiry != null ?
|
|
4511
|
+
const countdown = expiry != null ? chunkFFYLKZ7J_cjs.formatTimeRemaining(expiry) : null;
|
|
4503
4512
|
const decimals = token?.decimals ?? 18;
|
|
4504
|
-
const totalFormatted =
|
|
4505
|
-
const availableFormatted =
|
|
4506
|
-
const inUseFormatted =
|
|
4513
|
+
const totalFormatted = chunkFFYLKZ7J_cjs.formatTokenAmount((availableWei + inUseWei).toString(), decimals);
|
|
4514
|
+
const availableFormatted = chunkFFYLKZ7J_cjs.formatTokenAmount(availableWei.toString(), decimals);
|
|
4515
|
+
const inUseFormatted = chunkFFYLKZ7J_cjs.formatTokenAmount(inUseWei.toString(), decimals);
|
|
4507
4516
|
const hasValidAmount = !!amount && parseFloat(amount) > 0;
|
|
4508
4517
|
const tooManyDecimals = hasValidAmount && !!token && amount.includes(".") && amount.split(".")[1].length > token.decimals;
|
|
4509
|
-
const exceedsBalance = hasValidAmount && !tooManyDecimals && !!token && !isBalanceLoading && !isBalanceError &&
|
|
4518
|
+
const exceedsBalance = hasValidAmount && !tooManyDecimals && !!token && !isBalanceLoading && !isBalanceError && chunkFFYLKZ7J_cjs.parseTokenAmount(amount, token.decimals) > availableWei;
|
|
4510
4519
|
const canFundSession = hasValidAmount && !!token && !tooManyDecimals && !exceedsBalance && !isBalanceLoading && !isBalanceError;
|
|
4511
4520
|
const handleMax = () => {
|
|
4512
4521
|
const max = availableFormatted.replace(/\s/g, "");
|
|
@@ -4524,7 +4533,7 @@ function WalletBalanceView({
|
|
|
4524
4533
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-sm leading-[14px]", children: "Total" }),
|
|
4525
4534
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "bg-secondary text-muted-foreground rounded-full px-2 py-[5px] text-[10px] leading-[10px] font-bold", children: token?.symbol ?? "\u2014" })
|
|
4526
4535
|
] }),
|
|
4527
|
-
isBalanceLoading ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
4536
|
+
isBalanceLoading ? /* @__PURE__ */ jsxRuntime.jsx(chunkFFYLKZ7J_cjs.Skeleton, { className: "h-9 w-40" }) : isBalanceError ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-muted-foreground text-[32px] leading-9 font-medium", children: "\u2014" }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-foreground text-[32px] leading-9 font-medium", children: totalFormatted })
|
|
4528
4537
|
] }),
|
|
4529
4538
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-2", children: [
|
|
4530
4539
|
/* @__PURE__ */ jsxRuntime.jsx(SegmentedBalanceBar, { availableWei, inUseWei }),
|
|
@@ -4675,7 +4684,7 @@ function WalletModalContent({
|
|
|
4675
4684
|
onCloseBlockedChange,
|
|
4676
4685
|
...depositHandlers
|
|
4677
4686
|
}) {
|
|
4678
|
-
const { serviceName, hostedAuthConfig } =
|
|
4687
|
+
const { serviceName, hostedAuthConfig } = chunkFFYLKZ7J_cjs.usePrivanaContext();
|
|
4679
4688
|
const { address } = wagmi.useAccount();
|
|
4680
4689
|
const appName = serviceName ?? "Privana";
|
|
4681
4690
|
const [view, setView] = react.useState("balance");
|
|
@@ -4779,7 +4788,7 @@ function WalletModalContent({
|
|
|
4779
4788
|
onClick: onClose,
|
|
4780
4789
|
disabled: closeBlocked,
|
|
4781
4790
|
"aria-label": "Close",
|
|
4782
|
-
className:
|
|
4791
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
4783
4792
|
"absolute top-6 right-5 z-20 flex h-5 w-5 items-center justify-center transition-colors",
|
|
4784
4793
|
closeBlocked ? "text-muted-foreground/40 cursor-not-allowed" : "text-muted-foreground hover:text-foreground cursor-pointer"
|
|
4785
4794
|
),
|
|
@@ -4907,7 +4916,7 @@ function WalletInlineModal({ className, ...handlers }) {
|
|
|
4907
4916
|
"div",
|
|
4908
4917
|
{
|
|
4909
4918
|
"data-privana": true,
|
|
4910
|
-
className:
|
|
4919
|
+
className: chunkFFYLKZ7J_cjs.cn(
|
|
4911
4920
|
"bg-card relative flex w-[560px] max-w-full flex-col gap-2 overflow-hidden rounded-2xl p-2 shadow-lg",
|
|
4912
4921
|
className
|
|
4913
4922
|
),
|
|
@@ -4918,295 +4927,295 @@ function WalletInlineModal({ className, ...handlers }) {
|
|
|
4918
4927
|
|
|
4919
4928
|
Object.defineProperty(exports, "AccountingApiError", {
|
|
4920
4929
|
enumerable: true,
|
|
4921
|
-
get: function () { return
|
|
4930
|
+
get: function () { return chunkFFYLKZ7J_cjs.AccountingApiError; }
|
|
4922
4931
|
});
|
|
4923
4932
|
Object.defineProperty(exports, "Button", {
|
|
4924
4933
|
enumerable: true,
|
|
4925
|
-
get: function () { return
|
|
4934
|
+
get: function () { return chunkFFYLKZ7J_cjs.Button; }
|
|
4926
4935
|
});
|
|
4927
4936
|
Object.defineProperty(exports, "DEFAULT_LOCK_DURATION_SECONDS", {
|
|
4928
4937
|
enumerable: true,
|
|
4929
|
-
get: function () { return
|
|
4938
|
+
get: function () { return chunkFFYLKZ7J_cjs.DEFAULT_LOCK_DURATION_SECONDS; }
|
|
4930
4939
|
});
|
|
4931
4940
|
Object.defineProperty(exports, "DEFAULT_ONRAMP_LOCK_BUFFER", {
|
|
4932
4941
|
enumerable: true,
|
|
4933
|
-
get: function () { return
|
|
4942
|
+
get: function () { return chunkFFYLKZ7J_cjs.DEFAULT_ONRAMP_LOCK_BUFFER; }
|
|
4934
4943
|
});
|
|
4935
4944
|
Object.defineProperty(exports, "HOSTED_AUTH_CLOCK_SKEW_MS", {
|
|
4936
4945
|
enumerable: true,
|
|
4937
|
-
get: function () { return
|
|
4946
|
+
get: function () { return chunkFFYLKZ7J_cjs.HOSTED_AUTH_CLOCK_SKEW_MS; }
|
|
4938
4947
|
});
|
|
4939
4948
|
Object.defineProperty(exports, "HostedAuthError", {
|
|
4940
4949
|
enumerable: true,
|
|
4941
|
-
get: function () { return
|
|
4950
|
+
get: function () { return chunkFFYLKZ7J_cjs.HostedAuthError; }
|
|
4942
4951
|
});
|
|
4943
4952
|
Object.defineProperty(exports, "HostedAuthRequiredError", {
|
|
4944
4953
|
enumerable: true,
|
|
4945
|
-
get: function () { return
|
|
4954
|
+
get: function () { return chunkFFYLKZ7J_cjs.HostedAuthRequiredError; }
|
|
4946
4955
|
});
|
|
4947
4956
|
Object.defineProperty(exports, "HostedAuthStateMismatchError", {
|
|
4948
4957
|
enumerable: true,
|
|
4949
|
-
get: function () { return
|
|
4958
|
+
get: function () { return chunkFFYLKZ7J_cjs.HostedAuthStateMismatchError; }
|
|
4950
4959
|
});
|
|
4951
4960
|
Object.defineProperty(exports, "HttpClient", {
|
|
4952
4961
|
enumerable: true,
|
|
4953
|
-
get: function () { return
|
|
4962
|
+
get: function () { return chunkFFYLKZ7J_cjs.HttpClient; }
|
|
4954
4963
|
});
|
|
4955
4964
|
Object.defineProperty(exports, "LOCK_TYPES", {
|
|
4956
4965
|
enumerable: true,
|
|
4957
|
-
get: function () { return
|
|
4966
|
+
get: function () { return chunkFFYLKZ7J_cjs.LOCK_TYPES; }
|
|
4958
4967
|
});
|
|
4959
4968
|
Object.defineProperty(exports, "MODIFY_LOCK_TYPES", {
|
|
4960
4969
|
enumerable: true,
|
|
4961
|
-
get: function () { return
|
|
4970
|
+
get: function () { return chunkFFYLKZ7J_cjs.MODIFY_LOCK_TYPES; }
|
|
4962
4971
|
});
|
|
4963
4972
|
Object.defineProperty(exports, "NETWORK_CONFIG", {
|
|
4964
4973
|
enumerable: true,
|
|
4965
|
-
get: function () { return
|
|
4974
|
+
get: function () { return chunkFFYLKZ7J_cjs.NETWORK_CONFIG; }
|
|
4966
4975
|
});
|
|
4967
4976
|
Object.defineProperty(exports, "NetworkError", {
|
|
4968
4977
|
enumerable: true,
|
|
4969
|
-
get: function () { return
|
|
4978
|
+
get: function () { return chunkFFYLKZ7J_cjs.NetworkError; }
|
|
4970
4979
|
});
|
|
4971
4980
|
Object.defineProperty(exports, "PostDepositLockError", {
|
|
4972
4981
|
enumerable: true,
|
|
4973
|
-
get: function () { return
|
|
4982
|
+
get: function () { return chunkFFYLKZ7J_cjs.PostDepositLockError; }
|
|
4974
4983
|
});
|
|
4975
4984
|
Object.defineProperty(exports, "PrivanaClient", {
|
|
4976
4985
|
enumerable: true,
|
|
4977
|
-
get: function () { return
|
|
4986
|
+
get: function () { return chunkFFYLKZ7J_cjs.PrivanaClient; }
|
|
4978
4987
|
});
|
|
4979
4988
|
Object.defineProperty(exports, "PrivanaProvider", {
|
|
4980
4989
|
enumerable: true,
|
|
4981
|
-
get: function () { return
|
|
4990
|
+
get: function () { return chunkFFYLKZ7J_cjs.PrivanaProvider; }
|
|
4982
4991
|
});
|
|
4983
4992
|
Object.defineProperty(exports, "SUPPORTED_CHAINS", {
|
|
4984
4993
|
enumerable: true,
|
|
4985
|
-
get: function () { return
|
|
4994
|
+
get: function () { return chunkFFYLKZ7J_cjs.SUPPORTED_CHAINS; }
|
|
4986
4995
|
});
|
|
4987
4996
|
Object.defineProperty(exports, "SiweAuthProvider", {
|
|
4988
4997
|
enumerable: true,
|
|
4989
|
-
get: function () { return
|
|
4998
|
+
get: function () { return chunkFFYLKZ7J_cjs.SiweAuthProvider; }
|
|
4990
4999
|
});
|
|
4991
5000
|
Object.defineProperty(exports, "Skeleton", {
|
|
4992
5001
|
enumerable: true,
|
|
4993
|
-
get: function () { return
|
|
5002
|
+
get: function () { return chunkFFYLKZ7J_cjs.Skeleton; }
|
|
4994
5003
|
});
|
|
4995
5004
|
Object.defineProperty(exports, "TRANSFER_LOCKED_TYPES", {
|
|
4996
5005
|
enumerable: true,
|
|
4997
|
-
get: function () { return
|
|
5006
|
+
get: function () { return chunkFFYLKZ7J_cjs.TRANSFER_LOCKED_TYPES; }
|
|
4998
5007
|
});
|
|
4999
5008
|
Object.defineProperty(exports, "TRANSFER_TYPES", {
|
|
5000
5009
|
enumerable: true,
|
|
5001
|
-
get: function () { return
|
|
5010
|
+
get: function () { return chunkFFYLKZ7J_cjs.TRANSFER_TYPES; }
|
|
5002
5011
|
});
|
|
5003
5012
|
Object.defineProperty(exports, "ValidationError", {
|
|
5004
5013
|
enumerable: true,
|
|
5005
|
-
get: function () { return
|
|
5014
|
+
get: function () { return chunkFFYLKZ7J_cjs.ValidationError; }
|
|
5006
5015
|
});
|
|
5007
5016
|
Object.defineProperty(exports, "WITHDRAW_FROM_LOCK_TYPES", {
|
|
5008
5017
|
enumerable: true,
|
|
5009
|
-
get: function () { return
|
|
5018
|
+
get: function () { return chunkFFYLKZ7J_cjs.WITHDRAW_FROM_LOCK_TYPES; }
|
|
5010
5019
|
});
|
|
5011
5020
|
Object.defineProperty(exports, "WITHDRAW_TYPES", {
|
|
5012
5021
|
enumerable: true,
|
|
5013
|
-
get: function () { return
|
|
5022
|
+
get: function () { return chunkFFYLKZ7J_cjs.WITHDRAW_TYPES; }
|
|
5014
5023
|
});
|
|
5015
5024
|
Object.defineProperty(exports, "applyLockBuffer", {
|
|
5016
5025
|
enumerable: true,
|
|
5017
|
-
get: function () { return
|
|
5026
|
+
get: function () { return chunkFFYLKZ7J_cjs.applyLockBuffer; }
|
|
5018
5027
|
});
|
|
5019
5028
|
Object.defineProperty(exports, "applyRefreshResponse", {
|
|
5020
5029
|
enumerable: true,
|
|
5021
|
-
get: function () { return
|
|
5030
|
+
get: function () { return chunkFFYLKZ7J_cjs.applyRefreshResponse; }
|
|
5022
5031
|
});
|
|
5023
5032
|
Object.defineProperty(exports, "buildHostedAuthSession", {
|
|
5024
5033
|
enumerable: true,
|
|
5025
|
-
get: function () { return
|
|
5034
|
+
get: function () { return chunkFFYLKZ7J_cjs.buildHostedAuthSession; }
|
|
5026
5035
|
});
|
|
5027
5036
|
Object.defineProperty(exports, "buildSiweStatement", {
|
|
5028
5037
|
enumerable: true,
|
|
5029
|
-
get: function () { return
|
|
5038
|
+
get: function () { return chunkFFYLKZ7J_cjs.buildSiweStatement; }
|
|
5030
5039
|
});
|
|
5031
5040
|
Object.defineProperty(exports, "buttonVariants", {
|
|
5032
5041
|
enumerable: true,
|
|
5033
|
-
get: function () { return
|
|
5042
|
+
get: function () { return chunkFFYLKZ7J_cjs.buttonVariants; }
|
|
5034
5043
|
});
|
|
5035
5044
|
Object.defineProperty(exports, "clampLockAmount", {
|
|
5036
5045
|
enumerable: true,
|
|
5037
|
-
get: function () { return
|
|
5046
|
+
get: function () { return chunkFFYLKZ7J_cjs.clampLockAmount; }
|
|
5038
5047
|
});
|
|
5039
5048
|
Object.defineProperty(exports, "clearHostedAuthPendingTransaction", {
|
|
5040
5049
|
enumerable: true,
|
|
5041
|
-
get: function () { return
|
|
5050
|
+
get: function () { return chunkFFYLKZ7J_cjs.clearHostedAuthPendingTransaction; }
|
|
5042
5051
|
});
|
|
5043
5052
|
Object.defineProperty(exports, "clearPendingLock", {
|
|
5044
5053
|
enumerable: true,
|
|
5045
|
-
get: function () { return
|
|
5054
|
+
get: function () { return chunkFFYLKZ7J_cjs.clearPendingLock; }
|
|
5046
5055
|
});
|
|
5047
5056
|
Object.defineProperty(exports, "createDomain", {
|
|
5048
5057
|
enumerable: true,
|
|
5049
|
-
get: function () { return
|
|
5058
|
+
get: function () { return chunkFFYLKZ7J_cjs.createDomain; }
|
|
5050
5059
|
});
|
|
5051
5060
|
Object.defineProperty(exports, "createHostedAuthPendingStorageKey", {
|
|
5052
5061
|
enumerable: true,
|
|
5053
|
-
get: function () { return
|
|
5062
|
+
get: function () { return chunkFFYLKZ7J_cjs.createHostedAuthPendingStorageKey; }
|
|
5054
5063
|
});
|
|
5055
5064
|
Object.defineProperty(exports, "createHostedAuthState", {
|
|
5056
5065
|
enumerable: true,
|
|
5057
|
-
get: function () { return
|
|
5066
|
+
get: function () { return chunkFFYLKZ7J_cjs.createHostedAuthState; }
|
|
5058
5067
|
});
|
|
5059
5068
|
Object.defineProperty(exports, "createHostedAuthStorageKey", {
|
|
5060
5069
|
enumerable: true,
|
|
5061
|
-
get: function () { return
|
|
5070
|
+
get: function () { return chunkFFYLKZ7J_cjs.createHostedAuthStorageKey; }
|
|
5062
5071
|
});
|
|
5063
5072
|
Object.defineProperty(exports, "createLockExpiry", {
|
|
5064
5073
|
enumerable: true,
|
|
5065
|
-
get: function () { return
|
|
5074
|
+
get: function () { return chunkFFYLKZ7J_cjs.createLockExpiry; }
|
|
5066
5075
|
});
|
|
5067
5076
|
Object.defineProperty(exports, "createPkceChallenge", {
|
|
5068
5077
|
enumerable: true,
|
|
5069
|
-
get: function () { return
|
|
5078
|
+
get: function () { return chunkFFYLKZ7J_cjs.createPkceChallenge; }
|
|
5070
5079
|
});
|
|
5071
5080
|
Object.defineProperty(exports, "createPkceVerifier", {
|
|
5072
5081
|
enumerable: true,
|
|
5073
|
-
get: function () { return
|
|
5082
|
+
get: function () { return chunkFFYLKZ7J_cjs.createPkceVerifier; }
|
|
5074
5083
|
});
|
|
5075
5084
|
Object.defineProperty(exports, "createSignedLockRequest", {
|
|
5076
5085
|
enumerable: true,
|
|
5077
|
-
get: function () { return
|
|
5086
|
+
get: function () { return chunkFFYLKZ7J_cjs.createSignedLockRequest; }
|
|
5078
5087
|
});
|
|
5079
5088
|
Object.defineProperty(exports, "getAccountingContract", {
|
|
5080
5089
|
enumerable: true,
|
|
5081
|
-
get: function () { return
|
|
5090
|
+
get: function () { return chunkFFYLKZ7J_cjs.getAccountingContract; }
|
|
5082
5091
|
});
|
|
5083
5092
|
Object.defineProperty(exports, "getApiUrl", {
|
|
5084
5093
|
enumerable: true,
|
|
5085
|
-
get: function () { return
|
|
5094
|
+
get: function () { return chunkFFYLKZ7J_cjs.getApiUrl; }
|
|
5086
5095
|
});
|
|
5087
5096
|
Object.defineProperty(exports, "getChainById", {
|
|
5088
5097
|
enumerable: true,
|
|
5089
|
-
get: function () { return
|
|
5098
|
+
get: function () { return chunkFFYLKZ7J_cjs.getChainById; }
|
|
5090
5099
|
});
|
|
5091
5100
|
Object.defineProperty(exports, "getChainId", {
|
|
5092
5101
|
enumerable: true,
|
|
5093
|
-
get: function () { return
|
|
5102
|
+
get: function () { return chunkFFYLKZ7J_cjs.getChainId; }
|
|
5094
5103
|
});
|
|
5095
5104
|
Object.defineProperty(exports, "getExplorerAddressUrl", {
|
|
5096
5105
|
enumerable: true,
|
|
5097
|
-
get: function () { return
|
|
5106
|
+
get: function () { return chunkFFYLKZ7J_cjs.getExplorerAddressUrl; }
|
|
5098
5107
|
});
|
|
5099
5108
|
Object.defineProperty(exports, "getExplorerLabel", {
|
|
5100
5109
|
enumerable: true,
|
|
5101
|
-
get: function () { return
|
|
5110
|
+
get: function () { return chunkFFYLKZ7J_cjs.getExplorerLabel; }
|
|
5102
5111
|
});
|
|
5103
5112
|
Object.defineProperty(exports, "isHostedAuthRefreshActive", {
|
|
5104
5113
|
enumerable: true,
|
|
5105
|
-
get: function () { return
|
|
5114
|
+
get: function () { return chunkFFYLKZ7J_cjs.isHostedAuthRefreshActive; }
|
|
5106
5115
|
});
|
|
5107
5116
|
Object.defineProperty(exports, "isHostedAuthSessionActive", {
|
|
5108
5117
|
enumerable: true,
|
|
5109
|
-
get: function () { return
|
|
5118
|
+
get: function () { return chunkFFYLKZ7J_cjs.isHostedAuthSessionActive; }
|
|
5110
5119
|
});
|
|
5111
5120
|
Object.defineProperty(exports, "isSignedLockUsable", {
|
|
5112
5121
|
enumerable: true,
|
|
5113
|
-
get: function () { return
|
|
5122
|
+
get: function () { return chunkFFYLKZ7J_cjs.isSignedLockUsable; }
|
|
5114
5123
|
});
|
|
5115
5124
|
Object.defineProperty(exports, "loadPendingLock", {
|
|
5116
5125
|
enumerable: true,
|
|
5117
|
-
get: function () { return
|
|
5126
|
+
get: function () { return chunkFFYLKZ7J_cjs.loadPendingLock; }
|
|
5118
5127
|
});
|
|
5119
5128
|
Object.defineProperty(exports, "normalizeAddress", {
|
|
5120
5129
|
enumerable: true,
|
|
5121
|
-
get: function () { return
|
|
5130
|
+
get: function () { return chunkFFYLKZ7J_cjs.normalizeAddress; }
|
|
5122
5131
|
});
|
|
5123
5132
|
Object.defineProperty(exports, "normalizeHex", {
|
|
5124
5133
|
enumerable: true,
|
|
5125
|
-
get: function () { return
|
|
5134
|
+
get: function () { return chunkFFYLKZ7J_cjs.normalizeHex; }
|
|
5126
5135
|
});
|
|
5127
5136
|
Object.defineProperty(exports, "parseHostedAuthCallback", {
|
|
5128
5137
|
enumerable: true,
|
|
5129
|
-
get: function () { return
|
|
5138
|
+
get: function () { return chunkFFYLKZ7J_cjs.parseHostedAuthCallback; }
|
|
5130
5139
|
});
|
|
5131
5140
|
Object.defineProperty(exports, "persistHostedAuthPendingTransaction", {
|
|
5132
5141
|
enumerable: true,
|
|
5133
|
-
get: function () { return
|
|
5142
|
+
get: function () { return chunkFFYLKZ7J_cjs.persistHostedAuthPendingTransaction; }
|
|
5134
5143
|
});
|
|
5135
5144
|
Object.defineProperty(exports, "readHostedAuthPendingTransaction", {
|
|
5136
5145
|
enumerable: true,
|
|
5137
|
-
get: function () { return
|
|
5146
|
+
get: function () { return chunkFFYLKZ7J_cjs.readHostedAuthPendingTransaction; }
|
|
5138
5147
|
});
|
|
5139
5148
|
Object.defineProperty(exports, "readStoredHostedAuthSession", {
|
|
5140
5149
|
enumerable: true,
|
|
5141
|
-
get: function () { return
|
|
5150
|
+
get: function () { return chunkFFYLKZ7J_cjs.readStoredHostedAuthSession; }
|
|
5142
5151
|
});
|
|
5143
5152
|
Object.defineProperty(exports, "requireDepositLockOwner", {
|
|
5144
5153
|
enumerable: true,
|
|
5145
|
-
get: function () { return
|
|
5154
|
+
get: function () { return chunkFFYLKZ7J_cjs.requireDepositLockOwner; }
|
|
5146
5155
|
});
|
|
5147
5156
|
Object.defineProperty(exports, "requireServiceAddress", {
|
|
5148
5157
|
enumerable: true,
|
|
5149
|
-
get: function () { return
|
|
5158
|
+
get: function () { return chunkFFYLKZ7J_cjs.requireServiceAddress; }
|
|
5150
5159
|
});
|
|
5151
5160
|
Object.defineProperty(exports, "savePendingLock", {
|
|
5152
5161
|
enumerable: true,
|
|
5153
|
-
get: function () { return
|
|
5162
|
+
get: function () { return chunkFFYLKZ7J_cjs.savePendingLock; }
|
|
5154
5163
|
});
|
|
5155
5164
|
Object.defineProperty(exports, "signLockMessage", {
|
|
5156
5165
|
enumerable: true,
|
|
5157
|
-
get: function () { return
|
|
5166
|
+
get: function () { return chunkFFYLKZ7J_cjs.signLockMessage; }
|
|
5158
5167
|
});
|
|
5159
5168
|
Object.defineProperty(exports, "signModifyLockMessage", {
|
|
5160
5169
|
enumerable: true,
|
|
5161
|
-
get: function () { return
|
|
5170
|
+
get: function () { return chunkFFYLKZ7J_cjs.signModifyLockMessage; }
|
|
5162
5171
|
});
|
|
5163
5172
|
Object.defineProperty(exports, "signTransferLockedMessage", {
|
|
5164
5173
|
enumerable: true,
|
|
5165
|
-
get: function () { return
|
|
5174
|
+
get: function () { return chunkFFYLKZ7J_cjs.signTransferLockedMessage; }
|
|
5166
5175
|
});
|
|
5167
5176
|
Object.defineProperty(exports, "signTransferMessage", {
|
|
5168
5177
|
enumerable: true,
|
|
5169
|
-
get: function () { return
|
|
5178
|
+
get: function () { return chunkFFYLKZ7J_cjs.signTransferMessage; }
|
|
5170
5179
|
});
|
|
5171
5180
|
Object.defineProperty(exports, "signWithdrawFromLockMessage", {
|
|
5172
5181
|
enumerable: true,
|
|
5173
|
-
get: function () { return
|
|
5182
|
+
get: function () { return chunkFFYLKZ7J_cjs.signWithdrawFromLockMessage; }
|
|
5174
5183
|
});
|
|
5175
5184
|
Object.defineProperty(exports, "signWithdrawMessage", {
|
|
5176
5185
|
enumerable: true,
|
|
5177
|
-
get: function () { return
|
|
5186
|
+
get: function () { return chunkFFYLKZ7J_cjs.signWithdrawMessage; }
|
|
5178
5187
|
});
|
|
5179
5188
|
Object.defineProperty(exports, "stripHostedAuthCallbackParams", {
|
|
5180
5189
|
enumerable: true,
|
|
5181
|
-
get: function () { return
|
|
5190
|
+
get: function () { return chunkFFYLKZ7J_cjs.stripHostedAuthCallbackParams; }
|
|
5182
5191
|
});
|
|
5183
5192
|
Object.defineProperty(exports, "submitPendingLock", {
|
|
5184
5193
|
enumerable: true,
|
|
5185
|
-
get: function () { return
|
|
5194
|
+
get: function () { return chunkFFYLKZ7J_cjs.submitPendingLock; }
|
|
5186
5195
|
});
|
|
5187
5196
|
Object.defineProperty(exports, "syncHostedAuthSessionToClient", {
|
|
5188
5197
|
enumerable: true,
|
|
5189
|
-
get: function () { return
|
|
5198
|
+
get: function () { return chunkFFYLKZ7J_cjs.syncHostedAuthSessionToClient; }
|
|
5190
5199
|
});
|
|
5191
5200
|
Object.defineProperty(exports, "useDepositVerification", {
|
|
5192
5201
|
enumerable: true,
|
|
5193
|
-
get: function () { return
|
|
5202
|
+
get: function () { return chunkFFYLKZ7J_cjs.useDepositVerification; }
|
|
5194
5203
|
});
|
|
5195
5204
|
Object.defineProperty(exports, "usePrivanaContext", {
|
|
5196
5205
|
enumerable: true,
|
|
5197
|
-
get: function () { return
|
|
5206
|
+
get: function () { return chunkFFYLKZ7J_cjs.usePrivanaContext; }
|
|
5198
5207
|
});
|
|
5199
5208
|
Object.defineProperty(exports, "useSafeAccount", {
|
|
5200
5209
|
enumerable: true,
|
|
5201
|
-
get: function () { return
|
|
5210
|
+
get: function () { return chunkFFYLKZ7J_cjs.useSafeAccount; }
|
|
5202
5211
|
});
|
|
5203
5212
|
Object.defineProperty(exports, "useSafePrivanaContext", {
|
|
5204
5213
|
enumerable: true,
|
|
5205
|
-
get: function () { return
|
|
5214
|
+
get: function () { return chunkFFYLKZ7J_cjs.useSafePrivanaContext; }
|
|
5206
5215
|
});
|
|
5207
5216
|
Object.defineProperty(exports, "useSiweAuth", {
|
|
5208
5217
|
enumerable: true,
|
|
5209
|
-
get: function () { return
|
|
5218
|
+
get: function () { return chunkFFYLKZ7J_cjs.useSiweAuth; }
|
|
5210
5219
|
});
|
|
5211
5220
|
exports.DepositInlineModal = DepositInlineModal;
|
|
5212
5221
|
exports.DepositModal = DepositModal;
|