@turnkey/react-wallet-kit 2.7.1 → 2.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs +10 -1
- package/dist/_virtual/_rollupPluginBabelHelpers.mjs.map +1 -1
- package/dist/components/auth/Action.d.ts +1 -0
- package/dist/components/auth/Action.d.ts.map +1 -1
- package/dist/components/auth/Action.js +10 -3
- package/dist/components/auth/Action.js.map +1 -1
- package/dist/components/auth/Action.mjs +10 -3
- package/dist/components/auth/Action.mjs.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts +2 -0
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.d.ts.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.js +7 -4
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.js.map +1 -1
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs +22 -12
- package/dist/components/auth/wallet/DesktopWalletConnectScreen.mjs.map +1 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.d.ts.map +1 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.js +2 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.js.map +1 -1
- package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs +2 -2
- package/dist/components/auth/wallet/ExternalWalletChainSelector.mjs.map +1 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts +1 -0
- package/dist/components/auth/wallet/MobileWalletConnectScreen.d.ts.map +1 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.js +3 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.js.map +1 -1
- package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs +16 -8
- package/dist/components/auth/wallet/MobileWalletConnectScreen.mjs.map +1 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts +2 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.d.ts.map +1 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.js +8 -3
- package/dist/components/auth/wallet/ShowAllWalletsScreen.js.map +1 -1
- package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs +8 -3
- package/dist/components/auth/wallet/ShowAllWalletsScreen.mjs.map +1 -1
- package/dist/components/design/Success.d.ts +1 -1
- package/dist/components/design/Success.d.ts.map +1 -1
- package/dist/components/design/Success.js +2 -2
- package/dist/components/design/Success.js.map +1 -1
- package/dist/components/design/Success.mjs +2 -2
- package/dist/components/design/Success.mjs.map +1 -1
- package/dist/components/design/Svg.d.ts +1 -0
- package/dist/components/design/Svg.d.ts.map +1 -1
- package/dist/components/design/Svg.js +32 -12
- package/dist/components/design/Svg.js.map +1 -1
- package/dist/components/design/Svg.mjs +32 -13
- package/dist/components/design/Svg.mjs.map +1 -1
- package/dist/components/design/TabNav.d.ts +13 -0
- package/dist/components/design/TabNav.d.ts.map +1 -0
- package/dist/components/design/TabNav.js +64 -0
- package/dist/components/design/TabNav.js.map +1 -0
- package/dist/components/design/TabNav.mjs +81 -0
- package/dist/components/design/TabNav.mjs.map +1 -0
- package/dist/components/funding/CryptoAmountInput.d.ts +11 -0
- package/dist/components/funding/CryptoAmountInput.d.ts.map +1 -0
- package/dist/components/funding/CryptoAmountInput.js +82 -0
- package/dist/components/funding/CryptoAmountInput.js.map +1 -0
- package/dist/components/funding/CryptoAmountInput.mjs +87 -0
- package/dist/components/funding/CryptoAmountInput.mjs.map +1 -0
- package/dist/components/funding/CurrencyDropdown.d.ts +8 -0
- package/dist/components/funding/CurrencyDropdown.d.ts.map +1 -0
- package/dist/components/funding/CurrencyDropdown.js +132 -0
- package/dist/components/funding/CurrencyDropdown.js.map +1 -0
- package/dist/components/funding/CurrencyDropdown.mjs +132 -0
- package/dist/components/funding/CurrencyDropdown.mjs.map +1 -0
- package/dist/components/funding/FiatAmountInput.d.ts +11 -0
- package/dist/components/funding/FiatAmountInput.d.ts.map +1 -0
- package/dist/components/funding/FiatAmountInput.js +94 -0
- package/dist/components/funding/FiatAmountInput.js.map +1 -0
- package/dist/components/funding/FiatAmountInput.mjs +105 -0
- package/dist/components/funding/FiatAmountInput.mjs.map +1 -0
- package/dist/components/funding/OffRamp.d.ts +3 -0
- package/dist/components/funding/OffRamp.d.ts.map +1 -0
- package/dist/components/funding/OffRamp.js +31 -0
- package/dist/components/funding/OffRamp.js.map +1 -0
- package/dist/components/funding/OffRamp.mjs +30 -0
- package/dist/components/funding/OffRamp.mjs.map +1 -0
- package/dist/components/funding/OffRampAmount.d.ts +22 -0
- package/dist/components/funding/OffRampAmount.d.ts.map +1 -0
- package/dist/components/funding/OffRampAmount.js +304 -0
- package/dist/components/funding/OffRampAmount.js.map +1 -0
- package/dist/components/funding/OffRampAmount.mjs +376 -0
- package/dist/components/funding/OffRampAmount.mjs.map +1 -0
- package/dist/components/funding/OffRampDeposit.d.ts +22 -0
- package/dist/components/funding/OffRampDeposit.d.ts.map +1 -0
- package/dist/components/funding/OffRampDeposit.js +455 -0
- package/dist/components/funding/OffRampDeposit.js.map +1 -0
- package/dist/components/funding/OffRampDeposit.mjs +551 -0
- package/dist/components/funding/OffRampDeposit.mjs.map +1 -0
- package/dist/components/funding/OffRampReturn.d.ts +2 -0
- package/dist/components/funding/OffRampReturn.d.ts.map +1 -0
- package/dist/components/funding/OffRampReturn.js +144 -0
- package/dist/components/funding/OffRampReturn.js.map +1 -0
- package/dist/components/funding/OffRampReturn.mjs +146 -0
- package/dist/components/funding/OffRampReturn.mjs.map +1 -0
- package/dist/components/funding/OnRamp.d.ts +7 -0
- package/dist/components/funding/OnRamp.d.ts.map +1 -0
- package/dist/components/funding/OnRamp.js +64 -0
- package/dist/components/funding/OnRamp.js.map +1 -0
- package/dist/components/funding/OnRamp.mjs +58 -0
- package/dist/components/funding/OnRamp.mjs.map +1 -0
- package/dist/components/funding/OnRampAmount.d.ts +21 -0
- package/dist/components/funding/OnRampAmount.d.ts.map +1 -0
- package/dist/components/funding/OnRampAmount.js +229 -0
- package/dist/components/funding/OnRampAmount.js.map +1 -0
- package/dist/components/funding/OnRampAmount.mjs +312 -0
- package/dist/components/funding/OnRampAmount.mjs.map +1 -0
- package/dist/components/funding/OnRampCash.d.ts +3 -0
- package/dist/components/funding/OnRampCash.d.ts.map +1 -0
- package/dist/components/funding/OnRampCash.js +26 -0
- package/dist/components/funding/OnRampCash.js.map +1 -0
- package/dist/components/funding/OnRampCash.mjs +25 -0
- package/dist/components/funding/OnRampCash.mjs.map +1 -0
- package/dist/components/funding/OnRampCrypto.d.ts +11 -0
- package/dist/components/funding/OnRampCrypto.d.ts.map +1 -0
- package/dist/components/funding/OnRampCrypto.js +126 -0
- package/dist/components/funding/OnRampCrypto.js.map +1 -0
- package/dist/components/funding/OnRampCrypto.mjs +148 -0
- package/dist/components/funding/OnRampCrypto.mjs.map +1 -0
- package/dist/components/funding/OnRampCryptoSend.d.ts +15 -0
- package/dist/components/funding/OnRampCryptoSend.d.ts.map +1 -0
- package/dist/components/funding/OnRampCryptoSend.js +251 -0
- package/dist/components/funding/OnRampCryptoSend.js.map +1 -0
- package/dist/components/funding/OnRampCryptoSend.mjs +323 -0
- package/dist/components/funding/OnRampCryptoSend.mjs.map +1 -0
- package/dist/components/funding/OnRampCryptoStatus.d.ts +14 -0
- package/dist/components/funding/OnRampCryptoStatus.d.ts.map +1 -0
- package/dist/components/funding/OnRampCryptoStatus.js +153 -0
- package/dist/components/funding/OnRampCryptoStatus.js.map +1 -0
- package/dist/components/funding/OnRampCryptoStatus.mjs +272 -0
- package/dist/components/funding/OnRampCryptoStatus.mjs.map +1 -0
- package/dist/components/funding/OnRampExternalAccountSelector.d.ts +11 -0
- package/dist/components/funding/OnRampExternalAccountSelector.d.ts.map +1 -0
- package/dist/components/funding/OnRampExternalAccountSelector.js +95 -0
- package/dist/components/funding/OnRampExternalAccountSelector.js.map +1 -0
- package/dist/components/funding/OnRampExternalAccountSelector.mjs +109 -0
- package/dist/components/funding/OnRampExternalAccountSelector.mjs.map +1 -0
- package/dist/components/funding/OnRampExternalWallet.d.ts +12 -0
- package/dist/components/funding/OnRampExternalWallet.d.ts.map +1 -0
- package/dist/components/funding/OnRampExternalWallet.js +218 -0
- package/dist/components/funding/OnRampExternalWallet.js.map +1 -0
- package/dist/components/funding/OnRampExternalWallet.mjs +303 -0
- package/dist/components/funding/OnRampExternalWallet.mjs.map +1 -0
- package/dist/components/funding/OnRampStatus.d.ts +15 -0
- package/dist/components/funding/OnRampStatus.d.ts.map +1 -0
- package/dist/components/funding/OnRampStatus.js +114 -0
- package/dist/components/funding/OnRampStatus.js.map +1 -0
- package/dist/components/funding/OnRampStatus.mjs +166 -0
- package/dist/components/funding/OnRampStatus.mjs.map +1 -0
- package/dist/components/funding/PaymentMethods.d.ts +35 -0
- package/dist/components/funding/PaymentMethods.d.ts.map +1 -0
- package/dist/components/funding/PaymentMethods.js +173 -0
- package/dist/components/funding/PaymentMethods.js.map +1 -0
- package/dist/components/funding/PaymentMethods.mjs +180 -0
- package/dist/components/funding/PaymentMethods.mjs.map +1 -0
- package/dist/components/funding/QuoteDetails.d.ts +13 -0
- package/dist/components/funding/QuoteDetails.d.ts.map +1 -0
- package/dist/components/funding/QuoteDetails.js +124 -0
- package/dist/components/funding/QuoteDetails.js.map +1 -0
- package/dist/components/funding/QuoteDetails.mjs +121 -0
- package/dist/components/funding/QuoteDetails.mjs.map +1 -0
- package/dist/components/funding/QuoteOption.d.ts +23 -0
- package/dist/components/funding/QuoteOption.d.ts.map +1 -0
- package/dist/components/funding/QuoteOption.js +153 -0
- package/dist/components/funding/QuoteOption.js.map +1 -0
- package/dist/components/funding/QuoteOption.mjs +150 -0
- package/dist/components/funding/QuoteOption.mjs.map +1 -0
- package/dist/components/funding/QuotePicker.d.ts +13 -0
- package/dist/components/funding/QuotePicker.d.ts.map +1 -0
- package/dist/components/funding/QuotePicker.js +49 -0
- package/dist/components/funding/QuotePicker.js.map +1 -0
- package/dist/components/funding/QuotePicker.mjs +48 -0
- package/dist/components/funding/QuotePicker.mjs.map +1 -0
- package/dist/components/funding/TokenSelect.d.ts +18 -0
- package/dist/components/funding/TokenSelect.d.ts.map +1 -0
- package/dist/components/funding/TokenSelect.js +198 -0
- package/dist/components/funding/TokenSelect.js.map +1 -0
- package/dist/components/funding/TokenSelect.mjs +210 -0
- package/dist/components/funding/TokenSelect.mjs.map +1 -0
- package/dist/components/funding/offRampRedirect.d.ts +61 -0
- package/dist/components/funding/offRampRedirect.d.ts.map +1 -0
- package/dist/components/funding/offRampRedirect.js +282 -0
- package/dist/components/funding/offRampRedirect.js.map +1 -0
- package/dist/components/funding/offRampRedirect.mjs +274 -0
- package/dist/components/funding/offRampRedirect.mjs.map +1 -0
- package/dist/components/send-transaction/SendTransaction.d.ts.map +1 -1
- package/dist/components/send-transaction/SendTransaction.js +8 -6
- package/dist/components/send-transaction/SendTransaction.js.map +1 -1
- package/dist/components/send-transaction/SendTransaction.mjs +8 -6
- package/dist/components/send-transaction/SendTransaction.mjs.map +1 -1
- package/dist/components/send-transaction/helpers.d.ts.map +1 -1
- package/dist/components/send-transaction/helpers.js +4 -0
- package/dist/components/send-transaction/helpers.js.map +1 -1
- package/dist/components/send-transaction/helpers.mjs +4 -0
- package/dist/components/send-transaction/helpers.mjs.map +1 -1
- package/dist/components/sign/Message.d.ts.map +1 -1
- package/dist/components/sign/Message.js +2 -1
- package/dist/components/sign/Message.js.map +1 -1
- package/dist/components/sign/Message.mjs +2 -2
- package/dist/components/sign/Message.mjs.map +1 -1
- package/dist/providers/SupportedAssetsProvider.d.ts +18 -0
- package/dist/providers/SupportedAssetsProvider.d.ts.map +1 -0
- package/dist/providers/SupportedAssetsProvider.js +71 -0
- package/dist/providers/SupportedAssetsProvider.js.map +1 -0
- package/dist/providers/SupportedAssetsProvider.mjs +114 -0
- package/dist/providers/SupportedAssetsProvider.mjs.map +1 -0
- package/dist/providers/TurnkeyProvider.d.ts.map +1 -1
- package/dist/providers/TurnkeyProvider.js +2 -1
- package/dist/providers/TurnkeyProvider.js.map +1 -1
- package/dist/providers/TurnkeyProvider.mjs +2 -1
- package/dist/providers/TurnkeyProvider.mjs.map +1 -1
- package/dist/providers/client/Provider.d.ts.map +1 -1
- package/dist/providers/client/Provider.js +98 -153
- package/dist/providers/client/Provider.js.map +1 -1
- package/dist/providers/client/Provider.mjs +214 -328
- package/dist/providers/client/Provider.mjs.map +1 -1
- package/dist/providers/client/Types.d.ts +37 -12
- package/dist/providers/client/Types.d.ts.map +1 -1
- package/dist/providers/client/Types.js.map +1 -1
- package/dist/providers/client/Types.mjs.map +1 -1
- package/dist/providers/modal/Provider.d.ts +1 -0
- package/dist/providers/modal/Provider.d.ts.map +1 -1
- package/dist/providers/modal/Provider.js +12 -0
- package/dist/providers/modal/Provider.js.map +1 -1
- package/dist/providers/modal/Provider.mjs +15 -0
- package/dist/providers/modal/Provider.mjs.map +1 -1
- package/dist/providers/modal/Root.d.ts.map +1 -1
- package/dist/providers/modal/Root.js +16 -14
- package/dist/providers/modal/Root.js.map +1 -1
- package/dist/providers/modal/Root.mjs +16 -14
- package/dist/providers/modal/Root.mjs.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/method-types.d.ts +21 -9
- package/dist/types/method-types.d.ts.map +1 -1
- package/dist/utils/funding/buildCryptoTransfer.d.ts +41 -0
- package/dist/utils/funding/buildCryptoTransfer.d.ts.map +1 -0
- package/dist/utils/funding/buildCryptoTransfer.js +134 -0
- package/dist/utils/funding/buildCryptoTransfer.js.map +1 -0
- package/dist/utils/funding/buildCryptoTransfer.mjs +128 -0
- package/dist/utils/funding/buildCryptoTransfer.mjs.map +1 -0
- package/dist/utils/funding/chainLabel.d.ts +2 -0
- package/dist/utils/funding/chainLabel.d.ts.map +1 -0
- package/dist/utils/funding/chainLabel.js +19 -0
- package/dist/utils/funding/chainLabel.js.map +1 -0
- package/dist/utils/funding/chainLabel.mjs +18 -0
- package/dist/utils/funding/chainLabel.mjs.map +1 -0
- package/dist/utils/funding/depositPlan.d.ts +28 -0
- package/dist/utils/funding/depositPlan.d.ts.map +1 -0
- package/dist/utils/funding/depositPlan.js +127 -0
- package/dist/utils/funding/depositPlan.js.map +1 -0
- package/dist/utils/funding/depositPlan.mjs +120 -0
- package/dist/utils/funding/depositPlan.mjs.map +1 -0
- package/dist/utils/funding/index.d.ts +8 -0
- package/dist/utils/funding/index.d.ts.map +1 -0
- package/dist/utils/funding/onRampTokens.d.ts +6 -0
- package/dist/utils/funding/onRampTokens.d.ts.map +1 -0
- package/dist/utils/funding/onRampTokens.js +21 -0
- package/dist/utils/funding/onRampTokens.js.map +1 -0
- package/dist/utils/funding/onRampTokens.mjs +26 -0
- package/dist/utils/funding/onRampTokens.mjs.map +1 -0
- package/dist/utils/funding/rankQuotes.d.ts +7 -0
- package/dist/utils/funding/rankQuotes.d.ts.map +1 -0
- package/dist/utils/funding/rankQuotes.js +37 -0
- package/dist/utils/funding/rankQuotes.js.map +1 -0
- package/dist/utils/funding/rankQuotes.mjs +50 -0
- package/dist/utils/funding/rankQuotes.mjs.map +1 -0
- package/dist/utils/funding/sendCryptoTransfer.d.ts +26 -0
- package/dist/utils/funding/sendCryptoTransfer.d.ts.map +1 -0
- package/dist/utils/funding/sendCryptoTransfer.js +281 -0
- package/dist/utils/funding/sendCryptoTransfer.js.map +1 -0
- package/dist/utils/funding/sendCryptoTransfer.mjs +405 -0
- package/dist/utils/funding/sendCryptoTransfer.mjs.map +1 -0
- package/dist/utils/funding/tokenSymbol.d.ts +7 -0
- package/dist/utils/funding/tokenSymbol.d.ts.map +1 -0
- package/dist/utils/funding/tokenSymbol.js +32 -0
- package/dist/utils/funding/tokenSymbol.js.map +1 -0
- package/dist/utils/funding/tokenSymbol.mjs +31 -0
- package/dist/utils/funding/tokenSymbol.mjs.map +1 -0
- package/dist/utils/utils.d.ts +1 -0
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +5 -0
- package/dist/utils/utils.js.map +1 -1
- package/dist/utils/utils.mjs +7 -1
- package/dist/utils/utils.mjs.map +1 -1
- package/package.json +7 -3
- package/dist/components/onramp/OnRamp.d.ts +0 -14
- package/dist/components/onramp/OnRamp.d.ts.map +0 -1
- package/dist/components/onramp/OnRamp.js +0 -61
- package/dist/components/onramp/OnRamp.js.map +0 -1
- package/dist/components/onramp/OnRamp.mjs +0 -79
- package/dist/components/onramp/OnRamp.mjs.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendCryptoTransfer.js","sources":["../../../src/utils/funding/sendCryptoTransfer.ts"],"sourcesContent":[null],"names":["SOLANA_DEVNET_RPC","isSolanaDevnet","caip2","startsWith","includes","solanaRpcUrl","rpcUrl","undefined","buildUnsignedOnRampTransaction","params","transfer","provider","transactionType","TurnkeyError","TurnkeyErrorCodes","SIGN_AND_SEND_TRANSACTION_ERROR","buildUnsignedSolanaTransaction","buildUnsignedEthereumTransaction","sendErrorMessage","error","messages","seen","Set","current","has","add","record","message","trim","push","cause","some","test","specific","reverse","find","isUserRejected","code","evmChainId","chainInfo","namespace","Chain","Ethereum","chainId","Number","parseInt","slice","length","to","kind","tokenAddress","value","BigInt","amount","data","request","from","numberToHex","nonceHex","gasHex","Promise","all","evmRequest","nonce","String","gas","priorityHex","block","baseFeePerGas","Error","maxPriorityFeePerGas","maxFeePerGas","serializeTransaction","type","gasPrice","rpc","createSolanaRpc","address","payer","createNoopSigner","instructions","mint","mintAddress","mintAccount","getAccountInfo","encoding","send","INVALID_REQUEST","tokenProgram","owner","TOKEN_PROGRAM_ADDRESS","fromTokenAccount","findAssociatedTokenPda","toTokenAccount","destination","getCreateAssociatedTokenInstruction","ata","getTransferInstruction","source","authority","programAddress","getTransferSolInstruction","latestBlockhash","getLatestBlockhash","commitment","transaction","compileTransaction","setTransactionMessageLifetimeUsingBlockhash","appendTransactionMessageInstructions","setTransactionMessageFeePayer","createTransactionMessage","version","binary","atob","getBase64EncodedWireTransaction","uint8ArrayToHexString","Uint8Array","char","charCodeAt","switchSelectedEthereumChain","hexChainId","ensureEthereumChain","toString","caught","chainName","nativeCurrency","name","symbol","decimals","rpcUrls","embeddedDepositTransaction","asset","quotedToken","atomicAmount","transferFromAsset","unsignedTransaction","signWith","method","call"],"mappings":"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"}
|
|
@@ -0,0 +1,405 @@
|
|
|
1
|
+
import { typeof as _typeof, asyncToGenerator as _asyncToGenerator, regenerator as _regenerator, objectSpread2 as _objectSpread2, slicedToArray as _slicedToArray } from '../../_virtual/_rollupPluginBabelHelpers.mjs';
|
|
2
|
+
import { getTransferSolInstruction } from '@solana-program/system';
|
|
3
|
+
import { getCreateAssociatedTokenInstruction, getTransferInstruction, findAssociatedTokenPda, TOKEN_PROGRAM_ADDRESS } from '@solana-program/token';
|
|
4
|
+
import { compileTransaction, setTransactionMessageLifetimeUsingBlockhash, appendTransactionMessageInstructions, setTransactionMessageFeePayer, createTransactionMessage, getBase64EncodedWireTransaction, createSolanaRpc, address, createNoopSigner } from '@solana/kit';
|
|
5
|
+
import { atob, uint8ArrayToHexString } from '@turnkey/encoding';
|
|
6
|
+
import { Chain, TurnkeyError, TurnkeyErrorCodes } from '@turnkey/core';
|
|
7
|
+
import { serializeTransaction, numberToHex } from 'viem';
|
|
8
|
+
import { transferFromAsset } from './buildCryptoTransfer.mjs';
|
|
9
|
+
|
|
10
|
+
var SOLANA_DEVNET_RPC = "https://api.devnet.solana.com";
|
|
11
|
+
function isSolanaDevnet(caip2) {
|
|
12
|
+
return caip2.startsWith("solana:") && (caip2.includes("devnet") || caip2.includes("EtWTRABZaYq6iMfeYKouRu166VU2xqa1"));
|
|
13
|
+
}
|
|
14
|
+
// Public devnet endpoint used when a caller does not pass rpcUrl.
|
|
15
|
+
function solanaRpcUrl(caip2, rpcUrl) {
|
|
16
|
+
if (rpcUrl) return rpcUrl;
|
|
17
|
+
if (isSolanaDevnet(caip2)) return SOLANA_DEVNET_RPC;
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
function buildUnsignedOnRampTransaction(_x) {
|
|
21
|
+
return _buildUnsignedOnRampTransaction.apply(this, arguments);
|
|
22
|
+
}
|
|
23
|
+
function _buildUnsignedOnRampTransaction() {
|
|
24
|
+
_buildUnsignedOnRampTransaction = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(params) {
|
|
25
|
+
var transfer, provider, rpcUrl;
|
|
26
|
+
return _regenerator().w(function (_context) {
|
|
27
|
+
while (1) switch (_context.n) {
|
|
28
|
+
case 0:
|
|
29
|
+
transfer = params.transfer, provider = params.provider, rpcUrl = params.rpcUrl;
|
|
30
|
+
if (!(transfer.transactionType === "TRANSACTION_TYPE_SOLANA")) {
|
|
31
|
+
_context.n = 2;
|
|
32
|
+
break;
|
|
33
|
+
}
|
|
34
|
+
if (rpcUrl) {
|
|
35
|
+
_context.n = 1;
|
|
36
|
+
break;
|
|
37
|
+
}
|
|
38
|
+
throw new TurnkeyError("Missing rpcUrl: connected Solana wallets require an RPC URL to broadcast transactions.", TurnkeyErrorCodes.SIGN_AND_SEND_TRANSACTION_ERROR);
|
|
39
|
+
case 1:
|
|
40
|
+
return _context.a(2, buildUnsignedSolanaTransaction(transfer, rpcUrl));
|
|
41
|
+
case 2:
|
|
42
|
+
return _context.a(2, buildUnsignedEthereumTransaction(transfer, provider));
|
|
43
|
+
}
|
|
44
|
+
}, _callee);
|
|
45
|
+
}));
|
|
46
|
+
return _buildUnsignedOnRampTransaction.apply(this, arguments);
|
|
47
|
+
}
|
|
48
|
+
function sendErrorMessage(error) {
|
|
49
|
+
var messages = [];
|
|
50
|
+
var seen = new Set();
|
|
51
|
+
var current = error;
|
|
52
|
+
while (current && _typeof(current) === "object" && !seen.has(current)) {
|
|
53
|
+
seen.add(current);
|
|
54
|
+
var record = current;
|
|
55
|
+
if (typeof record.message === "string" && record.message.trim()) {
|
|
56
|
+
messages.push(record.message.trim());
|
|
57
|
+
}
|
|
58
|
+
current = record.cause;
|
|
59
|
+
}
|
|
60
|
+
if (messages.some(function (message) {
|
|
61
|
+
return /insufficient|out\s*of\s*funds/i.test(message);
|
|
62
|
+
})) {
|
|
63
|
+
return "Insufficient funds.";
|
|
64
|
+
}
|
|
65
|
+
var specific = [].concat(messages).reverse().find(function (message) {
|
|
66
|
+
return !/^failed to /i.test(message);
|
|
67
|
+
});
|
|
68
|
+
return specific !== null && specific !== void 0 ? specific : "Unable to send this transfer.";
|
|
69
|
+
}
|
|
70
|
+
function isUserRejected(error) {
|
|
71
|
+
var seen = new Set();
|
|
72
|
+
var current = error;
|
|
73
|
+
while (current && _typeof(current) === "object" && !seen.has(current)) {
|
|
74
|
+
seen.add(current);
|
|
75
|
+
var record = current;
|
|
76
|
+
if (record.code === 4001 || record.code === "ACTION_REJECTED") return true;
|
|
77
|
+
if (typeof record.message === "string" && /user rejected|user denied|rejected the request/i.test(record.message)) {
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
current = record.cause;
|
|
81
|
+
}
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
function evmChainId(chainInfo) {
|
|
85
|
+
if (chainInfo.namespace !== Chain.Ethereum || !("chainId" in chainInfo)) {
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
var chainId = chainInfo.chainId;
|
|
89
|
+
if (typeof chainId !== "string") return undefined;
|
|
90
|
+
return chainId.startsWith("0x") ? Number.parseInt(chainId, 16) : Number(chainId);
|
|
91
|
+
}
|
|
92
|
+
function buildUnsignedEthereumTransaction(_x2, _x3) {
|
|
93
|
+
return _buildUnsignedEthereumTransaction.apply(this, arguments);
|
|
94
|
+
}
|
|
95
|
+
function _buildUnsignedEthereumTransaction() {
|
|
96
|
+
_buildUnsignedEthereumTransaction = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(transfer, provider) {
|
|
97
|
+
var chainId, to, value, data, request, _yield$Promise$all, _yield$Promise$all2, nonceHex, gasHex, nonce, gas, _yield$Promise$all3, _yield$Promise$all4, priorityHex, block, baseFeePerGas, maxPriorityFeePerGas, maxFeePerGas, gasPrice, _t, _t2, _t3;
|
|
98
|
+
return _regenerator().w(function (_context2) {
|
|
99
|
+
while (1) switch (_context2.p = _context2.n) {
|
|
100
|
+
case 0:
|
|
101
|
+
chainId = Number(transfer.caip2.slice("eip155:".length));
|
|
102
|
+
to = transfer.kind === "erc20" ? transfer.tokenAddress : transfer.to;
|
|
103
|
+
value = transfer.kind === "native" ? BigInt(transfer.amount) : 0n;
|
|
104
|
+
data = transfer.kind === "erc20" ? transfer.data : "0x";
|
|
105
|
+
request = {
|
|
106
|
+
from: transfer.from,
|
|
107
|
+
to: to,
|
|
108
|
+
value: numberToHex(value),
|
|
109
|
+
data: data
|
|
110
|
+
};
|
|
111
|
+
_context2.n = 1;
|
|
112
|
+
return Promise.all([evmRequest(provider, "eth_getTransactionCount", [transfer.from, "pending"]), evmRequest(provider, "eth_estimateGas", [request])]);
|
|
113
|
+
case 1:
|
|
114
|
+
_yield$Promise$all = _context2.v;
|
|
115
|
+
_yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 2);
|
|
116
|
+
nonceHex = _yield$Promise$all2[0];
|
|
117
|
+
gasHex = _yield$Promise$all2[1];
|
|
118
|
+
nonce = Number(BigInt(String(nonceHex)));
|
|
119
|
+
gas = BigInt(String(gasHex)) * 12n / 10n;
|
|
120
|
+
_context2.p = 2;
|
|
121
|
+
_context2.n = 3;
|
|
122
|
+
return Promise.all([evmRequest(provider, "eth_maxPriorityFeePerGas"), evmRequest(provider, "eth_getBlockByNumber", ["latest", false])]);
|
|
123
|
+
case 3:
|
|
124
|
+
_yield$Promise$all3 = _context2.v;
|
|
125
|
+
_yield$Promise$all4 = _slicedToArray(_yield$Promise$all3, 2);
|
|
126
|
+
priorityHex = _yield$Promise$all4[0];
|
|
127
|
+
block = _yield$Promise$all4[1];
|
|
128
|
+
baseFeePerGas = block === null || block === void 0 ? void 0 : block.baseFeePerGas;
|
|
129
|
+
if (baseFeePerGas) {
|
|
130
|
+
_context2.n = 4;
|
|
131
|
+
break;
|
|
132
|
+
}
|
|
133
|
+
throw new Error("Missing base fee");
|
|
134
|
+
case 4:
|
|
135
|
+
maxPriorityFeePerGas = BigInt(String(priorityHex));
|
|
136
|
+
maxFeePerGas = BigInt(baseFeePerGas) * 2n + maxPriorityFeePerGas;
|
|
137
|
+
return _context2.a(2, serializeTransaction({
|
|
138
|
+
type: "eip1559",
|
|
139
|
+
chainId: chainId,
|
|
140
|
+
nonce: nonce,
|
|
141
|
+
gas: gas,
|
|
142
|
+
maxFeePerGas: maxFeePerGas,
|
|
143
|
+
maxPriorityFeePerGas: maxPriorityFeePerGas,
|
|
144
|
+
to: to,
|
|
145
|
+
value: value,
|
|
146
|
+
data: data
|
|
147
|
+
}));
|
|
148
|
+
case 5:
|
|
149
|
+
_context2.p = 5;
|
|
150
|
+
_t = _context2.v;
|
|
151
|
+
if (!isUserRejected(_t)) {
|
|
152
|
+
_context2.n = 6;
|
|
153
|
+
break;
|
|
154
|
+
}
|
|
155
|
+
throw _t;
|
|
156
|
+
case 6:
|
|
157
|
+
_t2 = BigInt;
|
|
158
|
+
_t3 = String;
|
|
159
|
+
_context2.n = 7;
|
|
160
|
+
return evmRequest(provider, "eth_gasPrice");
|
|
161
|
+
case 7:
|
|
162
|
+
gasPrice = _t2(_t3(_context2.v));
|
|
163
|
+
return _context2.a(2, serializeTransaction({
|
|
164
|
+
type: "legacy",
|
|
165
|
+
chainId: chainId,
|
|
166
|
+
nonce: nonce,
|
|
167
|
+
gas: gas,
|
|
168
|
+
gasPrice: gasPrice,
|
|
169
|
+
to: to,
|
|
170
|
+
value: value,
|
|
171
|
+
data: data
|
|
172
|
+
}));
|
|
173
|
+
}
|
|
174
|
+
}, _callee2, null, [[2, 5]]);
|
|
175
|
+
}));
|
|
176
|
+
return _buildUnsignedEthereumTransaction.apply(this, arguments);
|
|
177
|
+
}
|
|
178
|
+
function buildUnsignedSolanaTransaction(_x4, _x5) {
|
|
179
|
+
return _buildUnsignedSolanaTransaction.apply(this, arguments);
|
|
180
|
+
}
|
|
181
|
+
function _buildUnsignedSolanaTransaction() {
|
|
182
|
+
_buildUnsignedSolanaTransaction = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(transfer, rpcUrl) {
|
|
183
|
+
var rpc, from, to, payer, instructions, _mintAccount$value$ow, mint, mintAccount, tokenProgram, _yield$findAssociated, _yield$findAssociated2, fromTokenAccount, _yield$findAssociated3, _yield$findAssociated4, toTokenAccount, destination, _yield$rpc$getLatestB, latestBlockhash, transaction, binary;
|
|
184
|
+
return _regenerator().w(function (_context3) {
|
|
185
|
+
while (1) switch (_context3.n) {
|
|
186
|
+
case 0:
|
|
187
|
+
rpc = createSolanaRpc(rpcUrl);
|
|
188
|
+
from = address(transfer.from);
|
|
189
|
+
to = address(transfer.to);
|
|
190
|
+
payer = createNoopSigner(from);
|
|
191
|
+
instructions = [];
|
|
192
|
+
if (!(transfer.kind === "spl")) {
|
|
193
|
+
_context3.n = 6;
|
|
194
|
+
break;
|
|
195
|
+
}
|
|
196
|
+
mint = address(transfer.mintAddress);
|
|
197
|
+
_context3.n = 1;
|
|
198
|
+
return rpc.getAccountInfo(mint, {
|
|
199
|
+
encoding: "base64"
|
|
200
|
+
}).send();
|
|
201
|
+
case 1:
|
|
202
|
+
mintAccount = _context3.v;
|
|
203
|
+
if (mintAccount.value) {
|
|
204
|
+
_context3.n = 2;
|
|
205
|
+
break;
|
|
206
|
+
}
|
|
207
|
+
throw new TurnkeyError("Token mint was not found.", TurnkeyErrorCodes.INVALID_REQUEST);
|
|
208
|
+
case 2:
|
|
209
|
+
tokenProgram = (_mintAccount$value$ow = mintAccount.value.owner) !== null && _mintAccount$value$ow !== void 0 ? _mintAccount$value$ow : TOKEN_PROGRAM_ADDRESS;
|
|
210
|
+
_context3.n = 3;
|
|
211
|
+
return findAssociatedTokenPda({
|
|
212
|
+
owner: from,
|
|
213
|
+
tokenProgram: tokenProgram,
|
|
214
|
+
mint: mint
|
|
215
|
+
});
|
|
216
|
+
case 3:
|
|
217
|
+
_yield$findAssociated = _context3.v;
|
|
218
|
+
_yield$findAssociated2 = _slicedToArray(_yield$findAssociated, 1);
|
|
219
|
+
fromTokenAccount = _yield$findAssociated2[0];
|
|
220
|
+
_context3.n = 4;
|
|
221
|
+
return findAssociatedTokenPda({
|
|
222
|
+
owner: to,
|
|
223
|
+
tokenProgram: tokenProgram,
|
|
224
|
+
mint: mint
|
|
225
|
+
});
|
|
226
|
+
case 4:
|
|
227
|
+
_yield$findAssociated3 = _context3.v;
|
|
228
|
+
_yield$findAssociated4 = _slicedToArray(_yield$findAssociated3, 1);
|
|
229
|
+
toTokenAccount = _yield$findAssociated4[0];
|
|
230
|
+
_context3.n = 5;
|
|
231
|
+
return rpc.getAccountInfo(toTokenAccount, {
|
|
232
|
+
encoding: "base64"
|
|
233
|
+
}).send();
|
|
234
|
+
case 5:
|
|
235
|
+
destination = _context3.v;
|
|
236
|
+
if (!destination.value) {
|
|
237
|
+
instructions.push(getCreateAssociatedTokenInstruction({
|
|
238
|
+
payer: payer,
|
|
239
|
+
ata: toTokenAccount,
|
|
240
|
+
owner: to,
|
|
241
|
+
mint: mint,
|
|
242
|
+
tokenProgram: tokenProgram
|
|
243
|
+
}));
|
|
244
|
+
}
|
|
245
|
+
instructions.push(getTransferInstruction({
|
|
246
|
+
source: fromTokenAccount,
|
|
247
|
+
destination: toTokenAccount,
|
|
248
|
+
authority: payer,
|
|
249
|
+
amount: BigInt(transfer.amount)
|
|
250
|
+
}, {
|
|
251
|
+
programAddress: tokenProgram
|
|
252
|
+
}));
|
|
253
|
+
_context3.n = 7;
|
|
254
|
+
break;
|
|
255
|
+
case 6:
|
|
256
|
+
instructions.push(getTransferSolInstruction({
|
|
257
|
+
source: payer,
|
|
258
|
+
destination: to,
|
|
259
|
+
amount: BigInt(transfer.amount)
|
|
260
|
+
}));
|
|
261
|
+
case 7:
|
|
262
|
+
_context3.n = 8;
|
|
263
|
+
return rpc.getLatestBlockhash({
|
|
264
|
+
commitment: "finalized"
|
|
265
|
+
}).send();
|
|
266
|
+
case 8:
|
|
267
|
+
_yield$rpc$getLatestB = _context3.v;
|
|
268
|
+
latestBlockhash = _yield$rpc$getLatestB.value;
|
|
269
|
+
transaction = compileTransaction(setTransactionMessageLifetimeUsingBlockhash(latestBlockhash, appendTransactionMessageInstructions(instructions, setTransactionMessageFeePayer(from, createTransactionMessage({
|
|
270
|
+
version: "legacy"
|
|
271
|
+
})))));
|
|
272
|
+
binary = atob(getBase64EncodedWireTransaction(transaction));
|
|
273
|
+
return _context3.a(2, uint8ArrayToHexString(Uint8Array.from(binary, function (_char) {
|
|
274
|
+
return _char.charCodeAt(0);
|
|
275
|
+
})));
|
|
276
|
+
}
|
|
277
|
+
}, _callee3);
|
|
278
|
+
}));
|
|
279
|
+
return _buildUnsignedSolanaTransaction.apply(this, arguments);
|
|
280
|
+
}
|
|
281
|
+
function switchSelectedEthereumChain(provider, hexChainId) {
|
|
282
|
+
return evmRequest(provider, "wallet_switchEthereumChain", [{
|
|
283
|
+
chainId: hexChainId
|
|
284
|
+
}]);
|
|
285
|
+
}
|
|
286
|
+
function ensureEthereumChain(_x6, _x7) {
|
|
287
|
+
return _ensureEthereumChain.apply(this, arguments);
|
|
288
|
+
}
|
|
289
|
+
function _ensureEthereumChain() {
|
|
290
|
+
_ensureEthereumChain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(provider, chainId) {
|
|
291
|
+
var hexChainId, code, _t4;
|
|
292
|
+
return _regenerator().w(function (_context4) {
|
|
293
|
+
while (1) switch (_context4.p = _context4.n) {
|
|
294
|
+
case 0:
|
|
295
|
+
hexChainId = "0x".concat(chainId.toString(16));
|
|
296
|
+
_context4.p = 1;
|
|
297
|
+
_context4.n = 2;
|
|
298
|
+
return switchSelectedEthereumChain(provider, hexChainId);
|
|
299
|
+
case 2:
|
|
300
|
+
_context4.n = 5;
|
|
301
|
+
break;
|
|
302
|
+
case 3:
|
|
303
|
+
_context4.p = 3;
|
|
304
|
+
_t4 = _context4.v;
|
|
305
|
+
code = _t4.code; // 4902 means the wallet does not know this chain. Only Sepolia has a
|
|
306
|
+
// known RPC here. Other chains keep the wallet's own add-network error.
|
|
307
|
+
if (!(code !== 4902 || chainId !== 11155111)) {
|
|
308
|
+
_context4.n = 4;
|
|
309
|
+
break;
|
|
310
|
+
}
|
|
311
|
+
throw _t4;
|
|
312
|
+
case 4:
|
|
313
|
+
_context4.n = 5;
|
|
314
|
+
return evmRequest(provider, "wallet_addEthereumChain", [{
|
|
315
|
+
chainId: hexChainId,
|
|
316
|
+
chainName: "Sepolia",
|
|
317
|
+
nativeCurrency: {
|
|
318
|
+
name: "Ether",
|
|
319
|
+
symbol: "ETH",
|
|
320
|
+
decimals: 18
|
|
321
|
+
},
|
|
322
|
+
rpcUrls: ["https://rpc.sepolia.org"]
|
|
323
|
+
}]);
|
|
324
|
+
case 5:
|
|
325
|
+
return _context4.a(2);
|
|
326
|
+
}
|
|
327
|
+
}, _callee4, null, [[1, 3]]);
|
|
328
|
+
}));
|
|
329
|
+
return _ensureEthereumChain.apply(this, arguments);
|
|
330
|
+
}
|
|
331
|
+
function embeddedDepositTransaction(_x8) {
|
|
332
|
+
return _embeddedDepositTransaction.apply(this, arguments);
|
|
333
|
+
}
|
|
334
|
+
function _embeddedDepositTransaction() {
|
|
335
|
+
_embeddedDepositTransaction = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(params) {
|
|
336
|
+
var caip2, asset, quotedToken, from, to, atomicAmount, rpcUrl, transfer, unsignedTransaction;
|
|
337
|
+
return _regenerator().w(function (_context5) {
|
|
338
|
+
while (1) switch (_context5.n) {
|
|
339
|
+
case 0:
|
|
340
|
+
caip2 = params.caip2, asset = params.asset, quotedToken = params.quotedToken, from = params.from, to = params.to, atomicAmount = params.atomicAmount, rpcUrl = params.rpcUrl;
|
|
341
|
+
transfer = transferFromAsset({
|
|
342
|
+
caip2: caip2,
|
|
343
|
+
asset: asset,
|
|
344
|
+
quotedToken: quotedToken,
|
|
345
|
+
from: from,
|
|
346
|
+
to: to,
|
|
347
|
+
atomicAmount: atomicAmount
|
|
348
|
+
});
|
|
349
|
+
if (!(transfer.transactionType === "TRANSACTION_TYPE_SOLANA")) {
|
|
350
|
+
_context5.n = 3;
|
|
351
|
+
break;
|
|
352
|
+
}
|
|
353
|
+
if (rpcUrl) {
|
|
354
|
+
_context5.n = 1;
|
|
355
|
+
break;
|
|
356
|
+
}
|
|
357
|
+
throw new TurnkeyError("A Solana RPC URL is required to send this asset. Pass rpcUrl to handleOffRamp.", TurnkeyErrorCodes.INVALID_REQUEST);
|
|
358
|
+
case 1:
|
|
359
|
+
_context5.n = 2;
|
|
360
|
+
return buildUnsignedSolanaTransaction(transfer, rpcUrl);
|
|
361
|
+
case 2:
|
|
362
|
+
unsignedTransaction = _context5.v;
|
|
363
|
+
return _context5.a(2, {
|
|
364
|
+
unsignedTransaction: unsignedTransaction,
|
|
365
|
+
signWith: from,
|
|
366
|
+
caip2: caip2
|
|
367
|
+
});
|
|
368
|
+
case 3:
|
|
369
|
+
if (!(transfer.kind === "erc20")) {
|
|
370
|
+
_context5.n = 4;
|
|
371
|
+
break;
|
|
372
|
+
}
|
|
373
|
+
return _context5.a(2, {
|
|
374
|
+
from: from,
|
|
375
|
+
to: transfer.tokenAddress,
|
|
376
|
+
caip2: caip2,
|
|
377
|
+
value: "0",
|
|
378
|
+
data: transfer.data
|
|
379
|
+
});
|
|
380
|
+
case 4:
|
|
381
|
+
return _context5.a(2, {
|
|
382
|
+
from: from,
|
|
383
|
+
to: to,
|
|
384
|
+
caip2: caip2,
|
|
385
|
+
value: atomicAmount
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
}, _callee5);
|
|
389
|
+
}));
|
|
390
|
+
return _embeddedDepositTransaction.apply(this, arguments);
|
|
391
|
+
}
|
|
392
|
+
function evmRequest(provider, method, params) {
|
|
393
|
+
var request = provider.request;
|
|
394
|
+
if (typeof request !== "function") {
|
|
395
|
+
throw new TurnkeyError("This wallet cannot send Ethereum transactions.", TurnkeyErrorCodes.INVALID_REQUEST);
|
|
396
|
+
}
|
|
397
|
+
return request.call(provider, _objectSpread2({
|
|
398
|
+
method: method
|
|
399
|
+
}, params ? {
|
|
400
|
+
params: params
|
|
401
|
+
} : {}));
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
export { SOLANA_DEVNET_RPC, buildUnsignedOnRampTransaction, buildUnsignedSolanaTransaction, embeddedDepositTransaction, ensureEthereumChain, evmChainId, isSolanaDevnet, isUserRejected, sendErrorMessage, solanaRpcUrl, switchSelectedEthereumChain };
|
|
405
|
+
//# sourceMappingURL=sendCryptoTransfer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sendCryptoTransfer.mjs","sources":["../../../src/utils/funding/sendCryptoTransfer.ts"],"sourcesContent":[null],"names":["SOLANA_DEVNET_RPC","isSolanaDevnet","caip2","startsWith","includes","solanaRpcUrl","rpcUrl","undefined","buildUnsignedOnRampTransaction","_x","_buildUnsignedOnRampTransaction","apply","arguments","_asyncToGenerator","_regenerator","m","_callee","params","transfer","provider","w","_context","n","transactionType","TurnkeyError","TurnkeyErrorCodes","SIGN_AND_SEND_TRANSACTION_ERROR","a","buildUnsignedSolanaTransaction","buildUnsignedEthereumTransaction","sendErrorMessage","error","messages","seen","Set","current","_typeof","has","add","record","message","trim","push","cause","some","test","specific","concat","reverse","find","isUserRejected","code","evmChainId","chainInfo","namespace","Chain","Ethereum","chainId","Number","parseInt","_x2","_x3","_buildUnsignedEthereumTransaction","_callee2","to","value","data","request","_yield$Promise$all","_yield$Promise$all2","nonceHex","gasHex","nonce","gas","_yield$Promise$all3","_yield$Promise$all4","priorityHex","block","baseFeePerGas","maxPriorityFeePerGas","maxFeePerGas","gasPrice","_t","_t2","_t3","_context2","p","slice","length","kind","tokenAddress","BigInt","amount","from","numberToHex","Promise","all","evmRequest","v","_slicedToArray","String","Error","serializeTransaction","type","_x4","_x5","_buildUnsignedSolanaTransaction","_callee3","rpc","payer","instructions","_mintAccount$value$ow","mint","mintAccount","tokenProgram","_yield$findAssociated","_yield$findAssociated2","fromTokenAccount","_yield$findAssociated3","_yield$findAssociated4","toTokenAccount","destination","_yield$rpc$getLatestB","latestBlockhash","transaction","binary","_context3","createSolanaRpc","address","createNoopSigner","mintAddress","getAccountInfo","encoding","send","INVALID_REQUEST","owner","TOKEN_PROGRAM_ADDRESS","findAssociatedTokenPda","getCreateAssociatedTokenInstruction","ata","getTransferInstruction","source","authority","programAddress","getTransferSolInstruction","getLatestBlockhash","commitment","compileTransaction","setTransactionMessageLifetimeUsingBlockhash","appendTransactionMessageInstructions","setTransactionMessageFeePayer","createTransactionMessage","version","atob","getBase64EncodedWireTransaction","uint8ArrayToHexString","Uint8Array","char","charCodeAt","switchSelectedEthereumChain","hexChainId","ensureEthereumChain","_x6","_x7","_ensureEthereumChain","_callee4","_t4","_context4","toString","chainName","nativeCurrency","name","symbol","decimals","rpcUrls","embeddedDepositTransaction","_x8","_embeddedDepositTransaction","_callee5","asset","quotedToken","atomicAmount","unsignedTransaction","_context5","transferFromAsset","signWith","method","call","_objectSpread"],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { OnRampCaip19, OnRampCaip2, v1AssetMetadata } from "@turnkey/core";
|
|
2
|
+
export declare function caip2Of(token: OnRampCaip19): OnRampCaip2;
|
|
3
|
+
export declare function assetOf(token: string): string;
|
|
4
|
+
export declare function tokenMetadata(token: OnRampCaip19, assetsByCaip2: Record<string, v1AssetMetadata[]>): v1AssetMetadata | undefined;
|
|
5
|
+
export declare function tokenSymbol(token: OnRampCaip19, assetsByCaip2: Record<string, v1AssetMetadata[]>): string;
|
|
6
|
+
export declare function tokenDecimals(token: OnRampCaip19, assetsByCaip2: Record<string, v1AssetMetadata[]>): number;
|
|
7
|
+
//# sourceMappingURL=tokenSymbol.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenSymbol.d.ts","sourceRoot":"","sources":["../../../src/utils/funding/tokenSymbol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhF,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,WAAW,CAExD;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,UAEpC;AAWD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,YAAY,EACnB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,GAC/C,eAAe,GAAG,SAAS,CAE7B;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,YAAY,EACnB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,UAKjD;AAED,wBAAgB,aAAa,CAC3B,KAAK,EAAE,YAAY,EACnB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,GAC/C,MAAM,CAER"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
function caip2Of(token) {
|
|
4
|
+
return token.slice(0, token.indexOf("/"));
|
|
5
|
+
}
|
|
6
|
+
function assetOf(token) {
|
|
7
|
+
return token.slice(token.indexOf("/") + 1);
|
|
8
|
+
}
|
|
9
|
+
function fallbackTokenSymbol(token) {
|
|
10
|
+
if (token.endsWith("slip44:60")) return "ETH";
|
|
11
|
+
if (token.endsWith("slip44:501")) return "SOL";
|
|
12
|
+
if (token.includes("0x7ceb23fd6bc0add59e62ac25578270cff1b9f619")) {
|
|
13
|
+
return "WETH";
|
|
14
|
+
}
|
|
15
|
+
return "USDC";
|
|
16
|
+
}
|
|
17
|
+
function tokenMetadata(token, assetsByCaip2) {
|
|
18
|
+
return assetsByCaip2[caip2Of(token)]?.find(asset => asset.caip19 === token);
|
|
19
|
+
}
|
|
20
|
+
function tokenSymbol(token, assetsByCaip2) {
|
|
21
|
+
return tokenMetadata(token, assetsByCaip2)?.symbol || fallbackTokenSymbol(token);
|
|
22
|
+
}
|
|
23
|
+
function tokenDecimals(token, assetsByCaip2) {
|
|
24
|
+
return tokenMetadata(token, assetsByCaip2)?.decimals ?? 6;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
exports.assetOf = assetOf;
|
|
28
|
+
exports.caip2Of = caip2Of;
|
|
29
|
+
exports.tokenDecimals = tokenDecimals;
|
|
30
|
+
exports.tokenMetadata = tokenMetadata;
|
|
31
|
+
exports.tokenSymbol = tokenSymbol;
|
|
32
|
+
//# sourceMappingURL=tokenSymbol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenSymbol.js","sources":["../../../src/utils/funding/tokenSymbol.ts"],"sourcesContent":[null],"names":["caip2Of","token","slice","indexOf","assetOf","fallbackTokenSymbol","endsWith","includes","tokenMetadata","assetsByCaip2","find","asset","caip19","tokenSymbol","symbol","tokenDecimals","decimals"],"mappings":";;AAEM,SAAUA,OAAOA,CAACC,KAAmB,EAAA;AACzC,EAAA,OAAOA,KAAK,CAACC,KAAK,CAAC,CAAC,EAAED,KAAK,CAACE,OAAO,CAAC,GAAG,CAAC,CAAgB;AAC1D;AAEM,SAAUC,OAAOA,CAACH,KAAa,EAAA;AACnC,EAAA,OAAOA,KAAK,CAACC,KAAK,CAACD,KAAK,CAACE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5C;AAEA,SAASE,mBAAmBA,CAACJ,KAAmB,EAAA;EAC9C,IAAIA,KAAK,CAACK,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,KAAK;EAC7C,IAAIL,KAAK,CAACK,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK;AAC9C,EAAA,IAAIL,KAAK,CAACM,QAAQ,CAAC,4CAA4C,CAAC,EAAE;AAChE,IAAA,OAAO,MAAM;AACf,EAAA;AACA,EAAA,OAAO,MAAM;AACf;AAEM,SAAUC,aAAaA,CAC3BP,KAAmB,EACnBQ,aAAgD,EAAA;AAEhD,EAAA,OAAOA,aAAa,CAACT,OAAO,CAACC,KAAK,CAAC,CAAC,EAAES,IAAI,CAAEC,KAAK,IAAKA,KAAK,CAACC,MAAM,KAAKX,KAAK,CAAC;AAC/E;AAEM,SAAUY,WAAWA,CACzBZ,KAAmB,EACnBQ,aAAgD,EAAA;AAEhD,EAAA,OACED,aAAa,CAACP,KAAK,EAAEQ,aAAa,CAAC,EAAEK,MAAM,IAAIT,mBAAmB,CAACJ,KAAK,CAAC;AAE7E;AAEM,SAAUc,aAAaA,CAC3Bd,KAAmB,EACnBQ,aAAgD,EAAA;EAEhD,OAAOD,aAAa,CAACP,KAAK,EAAEQ,aAAa,CAAC,EAAEO,QAAQ,IAAI,CAAC;AAC3D;;;;;;;;"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
function caip2Of(token) {
|
|
2
|
+
return token.slice(0, token.indexOf("/"));
|
|
3
|
+
}
|
|
4
|
+
function assetOf(token) {
|
|
5
|
+
return token.slice(token.indexOf("/") + 1);
|
|
6
|
+
}
|
|
7
|
+
function fallbackTokenSymbol(token) {
|
|
8
|
+
if (token.endsWith("slip44:60")) return "ETH";
|
|
9
|
+
if (token.endsWith("slip44:501")) return "SOL";
|
|
10
|
+
if (token.includes("0x7ceb23fd6bc0add59e62ac25578270cff1b9f619")) {
|
|
11
|
+
return "WETH";
|
|
12
|
+
}
|
|
13
|
+
return "USDC";
|
|
14
|
+
}
|
|
15
|
+
function tokenMetadata(token, assetsByCaip2) {
|
|
16
|
+
var _assetsByCaip2$caip2O;
|
|
17
|
+
return (_assetsByCaip2$caip2O = assetsByCaip2[caip2Of(token)]) === null || _assetsByCaip2$caip2O === void 0 ? void 0 : _assetsByCaip2$caip2O.find(function (asset) {
|
|
18
|
+
return asset.caip19 === token;
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
function tokenSymbol(token, assetsByCaip2) {
|
|
22
|
+
var _tokenMetadata;
|
|
23
|
+
return ((_tokenMetadata = tokenMetadata(token, assetsByCaip2)) === null || _tokenMetadata === void 0 ? void 0 : _tokenMetadata.symbol) || fallbackTokenSymbol(token);
|
|
24
|
+
}
|
|
25
|
+
function tokenDecimals(token, assetsByCaip2) {
|
|
26
|
+
var _tokenMetadata$decima, _tokenMetadata2;
|
|
27
|
+
return (_tokenMetadata$decima = (_tokenMetadata2 = tokenMetadata(token, assetsByCaip2)) === null || _tokenMetadata2 === void 0 ? void 0 : _tokenMetadata2.decimals) !== null && _tokenMetadata$decima !== void 0 ? _tokenMetadata$decima : 6;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export { assetOf, caip2Of, tokenDecimals, tokenMetadata, tokenSymbol };
|
|
31
|
+
//# sourceMappingURL=tokenSymbol.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenSymbol.mjs","sources":["../../../src/utils/funding/tokenSymbol.ts"],"sourcesContent":[null],"names":["caip2Of","token","slice","indexOf","assetOf","fallbackTokenSymbol","endsWith","includes","tokenMetadata","assetsByCaip2","_assetsByCaip2$caip2O","find","asset","caip19","tokenSymbol","_tokenMetadata","symbol","tokenDecimals","_tokenMetadata$decima","_tokenMetadata2","decimals"],"mappings":"AAEM,SAAUA,OAAOA,CAACC,KAAmB,EAAA;AACzC,EAAA,OAAOA,KAAK,CAACC,KAAK,CAAC,CAAC,EAAED,KAAK,CAACE,OAAO,CAAC,GAAG,CAAC,CAAgB;AAC1D;AAEM,SAAUC,OAAOA,CAACH,KAAa,EAAA;AACnC,EAAA,OAAOA,KAAK,CAACC,KAAK,CAACD,KAAK,CAACE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5C;AAEA,SAASE,mBAAmBA,CAACJ,KAAmB,EAAA;EAC9C,IAAIA,KAAK,CAACK,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,KAAK;EAC7C,IAAIL,KAAK,CAACK,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK;AAC9C,EAAA,IAAIL,KAAK,CAACM,QAAQ,CAAC,4CAA4C,CAAC,EAAE;AAChE,IAAA,OAAO,MAAM;AACf,EAAA;AACA,EAAA,OAAO,MAAM;AACf;AAEM,SAAUC,aAAaA,CAC3BP,KAAmB,EACnBQ,aAAgD,EAAA;AAAA,EAAA,IAAAC,qBAAA;AAEhD,EAAA,OAAA,CAAAA,qBAAA,GAAOD,aAAa,CAACT,OAAO,CAACC,KAAK,CAAC,CAAC,MAAA,IAAA,IAAAS,qBAAA,KAAA,MAAA,GAAA,MAAA,GAA7BA,qBAAA,CAA+BC,IAAI,CAAC,UAACC,KAAK,EAAA;AAAA,IAAA,OAAKA,KAAK,CAACC,MAAM,KAAKZ,KAAK;EAAA,CAAA,CAAC;AAC/E;AAEM,SAAUa,WAAWA,CACzBb,KAAmB,EACnBQ,aAAgD,EAAA;AAAA,EAAA,IAAAM,cAAA;AAEhD,EAAA,OACE,EAAAA,cAAA,GAAAP,aAAa,CAACP,KAAK,EAAEQ,aAAa,CAAC,cAAAM,cAAA,KAAA,MAAA,GAAA,MAAA,GAAnCA,cAAA,CAAqCC,MAAM,KAAIX,mBAAmB,CAACJ,KAAK,CAAC;AAE7E;AAEM,SAAUgB,aAAaA,CAC3BhB,KAAmB,EACnBQ,aAAgD,EAAA;EAAA,IAAAS,qBAAA,EAAAC,eAAA;EAEhD,OAAA,CAAAD,qBAAA,IAAAC,eAAA,GAAOX,aAAa,CAACP,KAAK,EAAEQ,aAAa,CAAC,cAAAU,eAAA,KAAA,MAAA,GAAA,MAAA,GAAnCA,eAAA,CAAqCC,QAAQ,cAAAF,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,CAAC;AAC3D;;;;"}
|
package/dist/utils/utils.d.ts
CHANGED
|
@@ -38,5 +38,6 @@ export declare function useScreenSize(): {
|
|
|
38
38
|
export declare function isWalletConnect(wallet: WalletProvider): boolean;
|
|
39
39
|
export declare function findWalletConnectProvider(walletProviders: WalletProvider[], chain: Chain): WalletProvider | undefined;
|
|
40
40
|
export declare function useWalletProviderState(initialState?: WalletProvider[]): readonly [WalletProvider[], (newProviders: WalletProvider[]) => void];
|
|
41
|
+
export declare function truncateAddress(address: string | null | undefined, prefix?: number, suffix?: number): string;
|
|
41
42
|
export declare function mergeWalletsWithoutDuplicates(existingWallets: Wallet[], newWallets: Wallet[]): Wallet[];
|
|
42
43
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EACL,KAAK,MAAM,EACX,cAAc,EAEd,KAAK,EAGL,WAAW,EACZ,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,4BAA4B,QAAY,CAAC;AAEtD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;CAgCtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,uBAAwB,GAAG,EAAE,KAAK,IAAI,MACjE,CAAC,oBAEJ,CAgBF,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,OAAO,GAAG,SAAS,KAAG,OAE9D,CAAC;AAIF,eAAO,MAAM,qBAAqB,YACvB,OAAO,GAAG,SAAS,cAChB,WAAW,KACtB,WAAW,GAAG,SACyC,CAAC;AAE3D,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EACrC,SAAS,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;CAAE,EACvD,eAAe,SAA8B,EAC7C,YAAY,oBAA4B,GACvC,OAAO,CAAC,CAAC,CAAC,CA4CZ;AAGD,wBAAgB,aAAa;;;;EAyB5B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAE/D;AAGD,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,cAAc,EAAE,EACjC,KAAK,EAAE,KAAK,GACX,cAAc,GAAG,SAAS,CAM5B;AAED,wBAAgB,sBAAsB,CAAC,YAAY,GAAE,cAAc,EAAO,8CA4BvD,cAAc,EAAE,WAWlC;AAED,wBAAgB,6BAA6B,CAC3C,eAAe,EAAE,MAAM,EAAE,EACzB,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,EAAE,CAMV"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,EACL,KAAK,MAAM,EACX,cAAc,EAEd,KAAK,EAGL,WAAW,EACZ,MAAM,eAAe,CAAC;AAEvB,eAAO,MAAM,4BAA4B,QAAY,CAAC;AAEtD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;CAgCtB,CAAC;AAEF,eAAO,MAAM,oBAAoB,uBAAwB,GAAG,EAAE,KAAK,IAAI,MACjE,CAAC,oBAEJ,CAgBF,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,OAAO,GAAG,SAAS,KAAG,OAE9D,CAAC;AAIF,eAAO,MAAM,qBAAqB,YACvB,OAAO,GAAG,SAAS,cAChB,WAAW,KACtB,WAAW,GAAG,SACyC,CAAC;AAE3D,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EACrC,SAAS,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAA;CAAE,EACvD,eAAe,SAA8B,EAC7C,YAAY,oBAA4B,GACvC,OAAO,CAAC,CAAC,CAAC,CA4CZ;AAGD,wBAAgB,aAAa;;;;EAyB5B;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAE/D;AAGD,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,cAAc,EAAE,EACjC,KAAK,EAAE,KAAK,GACX,cAAc,GAAG,SAAS,CAM5B;AAED,wBAAgB,sBAAsB,CAAC,YAAY,GAAE,cAAc,EAAO,8CA4BvD,cAAc,EAAE,WAWlC;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAClC,MAAM,SAAI,EACV,MAAM,SAAI,UAIX;AAED,wBAAgB,6BAA6B,CAC3C,eAAe,EAAE,MAAM,EAAE,EACzB,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,EAAE,CAMV"}
|
package/dist/utils/utils.js
CHANGED
|
@@ -110,6 +110,10 @@ function useWalletProviderState(initialState = []) {
|
|
|
110
110
|
}, []);
|
|
111
111
|
return [walletProviders, updateWalletProviders];
|
|
112
112
|
}
|
|
113
|
+
function truncateAddress(address, prefix = 4, suffix = 4) {
|
|
114
|
+
if (!address || address.length <= prefix + suffix) return address ?? "";
|
|
115
|
+
return `${address.slice(0, prefix)}...${address.slice(-suffix)}`;
|
|
116
|
+
}
|
|
113
117
|
function mergeWalletsWithoutDuplicates(existingWallets, newWallets) {
|
|
114
118
|
const existingWalletIds = new Set(existingWallets.map(w => w.walletId));
|
|
115
119
|
const uniqueNewWallets = newWallets.filter(w => !existingWalletIds.has(w.walletId));
|
|
@@ -122,6 +126,7 @@ exports.isValidSession = isValidSession;
|
|
|
122
126
|
exports.isWalletConnect = isWalletConnect;
|
|
123
127
|
exports.mergeWalletsWithoutDuplicates = mergeWalletsWithoutDuplicates;
|
|
124
128
|
exports.resolveRefreshStamper = resolveRefreshStamper;
|
|
129
|
+
exports.truncateAddress = truncateAddress;
|
|
125
130
|
exports.useDebouncedCallback = useDebouncedCallback;
|
|
126
131
|
exports.useScreenSize = useScreenSize;
|
|
127
132
|
exports.useWalletProviderState = useWalletProviderState;
|
package/dist/utils/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../../src/utils/utils.ts"],"sourcesContent":[null],"names":["SESSION_WARNING_THRESHOLD_MS","useDebouncedCallback","fn","wait","timer","useRef","fnRef","current","useCallback","args","clearTimeout","setTimeout","isValidSession","session","expiry","undefined","Date","now","resolveRefreshStamper","stampWith","StamperType","ApiKey","withTurnkeyErrorHandling","sessionExpireFn","callbacks","fallbackMessage","fallbackCode","TurnkeyErrorCodes","UNKNOWN","error","tkError","TurnkeyActivityError","TurnkeyActivityConsensusNeededError","TurnkeyError","code","SESSION_EXPIRED","INTERNAL_ERROR","WALLET_CONNECT_EXPIRED","onError","useScreenSize","width","setWidth","useState","window","innerWidth","height","setHeight","innerHeight","useEffect","handleResize","addEventListener","removeEventListener","isMobile","isWalletConnect","wallet","interfaceType","WalletInterfaceType","WalletConnect","findWalletConnectProvider","walletProviders","chain","find","p","chainInfo","namespace","useWalletProviderState","initialState","setWalletProviders","prevProvidersRef","isSameWalletProvider","a","b","length","key","provider","name","info","connectedAddresses","map","x","toLowerCase","sort","join","uri","isLoading","A","B","i","updateWalletProviders","newProviders","mergeWalletsWithoutDuplicates","existingWallets","newWallets","existingWalletIds","Set","w","walletId","uniqueNewWallets","filter","has"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../src/utils/utils.ts"],"sourcesContent":[null],"names":["SESSION_WARNING_THRESHOLD_MS","useDebouncedCallback","fn","wait","timer","useRef","fnRef","current","useCallback","args","clearTimeout","setTimeout","isValidSession","session","expiry","undefined","Date","now","resolveRefreshStamper","stampWith","StamperType","ApiKey","withTurnkeyErrorHandling","sessionExpireFn","callbacks","fallbackMessage","fallbackCode","TurnkeyErrorCodes","UNKNOWN","error","tkError","TurnkeyActivityError","TurnkeyActivityConsensusNeededError","TurnkeyError","code","SESSION_EXPIRED","INTERNAL_ERROR","WALLET_CONNECT_EXPIRED","onError","useScreenSize","width","setWidth","useState","window","innerWidth","height","setHeight","innerHeight","useEffect","handleResize","addEventListener","removeEventListener","isMobile","isWalletConnect","wallet","interfaceType","WalletInterfaceType","WalletConnect","findWalletConnectProvider","walletProviders","chain","find","p","chainInfo","namespace","useWalletProviderState","initialState","setWalletProviders","prevProvidersRef","isSameWalletProvider","a","b","length","key","provider","name","info","connectedAddresses","map","x","toLowerCase","sort","join","uri","isLoading","A","B","i","updateWalletProviders","newProviders","truncateAddress","address","prefix","suffix","slice","mergeWalletsWithoutDuplicates","existingWallets","newWallets","existingWalletIds","Set","w","walletId","uniqueNewWallets","filter","has"],"mappings":"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"}
|