@circle-fin/usdckit 0.21.1 → 0.22.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/cjs/actions/generateTransferLink.d.ts +3 -3
- package/dist/cjs/actions/generateTransferLink.js +3 -0
- package/dist/cjs/actions/generateTransferLink.test.js +17 -0
- package/dist/cjs/actions/getSwapExactInQuote.d.ts +3 -3
- package/dist/cjs/actions/getTokenBalance.d.ts +30 -0
- package/dist/cjs/actions/getTokenBalance.js +51 -0
- package/dist/cjs/actions/getTokenBalance.test.js +165 -0
- package/dist/cjs/actions/index.d.ts +9 -1
- package/dist/cjs/actions/index.js +12 -9
- package/dist/cjs/actions/index.test.js +2 -0
- package/dist/cjs/actions/swapExactIn.d.ts +3 -3
- package/dist/cjs/actions/sweep.d.ts +3 -2
- package/dist/cjs/actions/sweep.js +5 -5
- package/dist/cjs/actions/sweep.test.js +13 -10
- package/dist/cjs/actions/transfer.d.ts +2 -2
- package/dist/cjs/actions/transfer.js +58 -30
- package/dist/cjs/actions/transfer.test.js +334 -135
- package/dist/cjs/chains.d.ts +2 -0
- package/dist/cjs/chains.js +12 -0
- package/dist/cjs/client.d.ts +35 -0
- package/dist/cjs/client.js +12 -0
- package/dist/cjs/extractChain.d.ts +109 -109
- package/dist/cjs/index.d.ts +4 -1
- package/dist/cjs/index.js +56 -10
- package/dist/cjs/index.test.js +1 -0
- package/dist/cjs/metadata.js +1 -1
- package/dist/cjs/onResponse.d.ts +1 -1
- package/dist/cjs/onResponse.js +3 -0
- package/dist/cjs/providers/circle-wallets/actions/createAccount.d.ts +2 -1
- package/dist/cjs/providers/circle-wallets/actions/createContractExecutionTransaction.d.ts +9 -1
- package/dist/cjs/providers/circle-wallets/actions/createContractExecutionTransaction.js +8 -0
- package/dist/cjs/providers/circle-wallets/actions/createTransaction.d.ts +4 -1
- package/dist/cjs/providers/circle-wallets/actions/createTransaction.js +3 -0
- package/dist/cjs/providers/circle-wallets/actions/createWalletSet.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/createWallets.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/deriveWallet.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/drip.d.ts +2 -1
- package/dist/cjs/providers/circle-wallets/actions/estimateContractExecutionFee.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/estimateTransferFee.d.ts +2 -1
- package/dist/cjs/providers/circle-wallets/actions/estimateTransferFee.js +2 -3
- package/dist/cjs/providers/circle-wallets/actions/estimateTransferFee.test.js +1 -20
- package/dist/cjs/providers/circle-wallets/actions/getAccounts.d.ts +2 -1
- package/dist/cjs/providers/circle-wallets/actions/getNotificationSignature.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/getTokenBalances.d.ts +4 -15
- package/dist/cjs/providers/circle-wallets/actions/getTransactionById.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/getWallet.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/getWalletTokenBalance.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/getWalletsWithBalances.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/importContract.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/index.d.ts +0 -8
- package/dist/cjs/providers/circle-wallets/actions/index.js +0 -8
- package/dist/cjs/providers/circle-wallets/actions/index.test.js +0 -4
- package/dist/cjs/providers/circle-wallets/actions/listTransactions.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/listWallets.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/requestTestnetTokens.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/signTransaction.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/verifyNotification.d.ts +1 -1
- package/dist/cjs/providers/circle-wallets/actions/writeContract.d.ts +2 -1
- package/dist/cjs/providers/circle-wallets/actions/writeContract.js +2 -5
- package/dist/cjs/providers/circle-wallets/actions/writeContract.test.js +9 -18
- package/dist/cjs/providers/circle-wallets/index.d.ts +4481 -0
- package/dist/cjs/providers/circle-wallets/index.js +40 -3
- package/dist/cjs/providers/circle-wallets/index.test.js +52 -3
- package/dist/cjs/providers/circle-wallets/transports/http.d.ts +19 -1
- package/dist/cjs/providers/circle-wallets/transports/http.js +2 -2
- package/dist/cjs/providers/circle-wallets/transports/http.test.js +24 -4
- package/dist/cjs/providers/circle-wallets/transports/index.d.ts +102 -22
- package/dist/cjs/providers/circle-wallets/transports/index.js +255 -1
- package/dist/cjs/providers/circle-wallets/transports/index.test.js +1623 -183
- package/dist/cjs/providers/circle-wallets/utils/index.d.ts +1 -0
- package/dist/cjs/providers/circle-wallets/utils/index.js +27 -0
- package/dist/cjs/providers/circle-wallets/utils/toSolanaSigner.d.ts +4 -0
- package/dist/cjs/providers/circle-wallets/utils/toSolanaSigner.js +33 -0
- package/dist/cjs/providers/circle-wallets/utils/toSolanaSigner.test.js +129 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.d.ts +3 -3
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.js +5 -8
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/bridge.d.ts +3 -3
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/bridge.js +0 -3
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.d.ts +3 -3
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.js +5 -9
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.js +6 -7
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/listMessages.d.ts +3 -3
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.d.ts +3 -3
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.js +5 -9
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.d.ts +3 -2
- package/dist/cjs/providers/cross-chain-transfer-protocol/transports/http.d.ts +0 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/transports/index.d.ts +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/transports/index.test.js +2 -2
- package/dist/cjs/providers/solana/actions/getAccountInfo.d.ts +23 -0
- package/dist/cjs/providers/{circle-wallets/actions/signTypedData.js → solana/actions/getAccountInfo.js} +7 -5
- package/dist/cjs/providers/solana/actions/getAccountInfo.test.js +39 -0
- package/dist/cjs/providers/solana/actions/getBalance.d.ts +15 -0
- package/dist/cjs/providers/solana/actions/getBalance.js +23 -0
- package/dist/cjs/providers/solana/actions/getBalance.test.js +35 -0
- package/dist/cjs/providers/solana/actions/getBlock.d.ts +60 -0
- package/dist/{esm/providers/circle-wallets/actions/signTypedData.js → cjs/providers/solana/actions/getBlock.js} +9 -4
- package/dist/cjs/providers/solana/actions/getBlock.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlock.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getBlockCommitment.d.ts +13 -0
- package/dist/cjs/providers/solana/actions/getBlockCommitment.js +23 -0
- package/dist/cjs/providers/solana/actions/getBlockCommitment.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlockCommitment.test.js +36 -0
- package/dist/cjs/providers/solana/actions/getBlockHeight.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getBlockHeight.js +23 -0
- package/dist/cjs/providers/solana/actions/getBlockHeight.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlockHeight.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getBlockProduction.d.ts +23 -0
- package/dist/cjs/providers/solana/actions/getBlockProduction.js +23 -0
- package/dist/cjs/providers/solana/actions/getBlockProduction.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlockProduction.test.js +40 -0
- package/dist/cjs/providers/solana/actions/getBlockTime.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getBlockTime.js +23 -0
- package/dist/cjs/providers/solana/actions/getBlockTime.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlockTime.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getBlocks.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getBlocks.js +23 -0
- package/dist/cjs/providers/solana/actions/getBlocks.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlocks.test.js +35 -0
- package/dist/cjs/providers/solana/actions/getBlocksWithLimit.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getBlocksWithLimit.js +23 -0
- package/dist/cjs/providers/solana/actions/getBlocksWithLimit.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getBlocksWithLimit.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getClusterName.d.ts +8 -0
- package/dist/cjs/providers/solana/actions/getClusterName.js +25 -0
- package/dist/cjs/providers/solana/actions/getClusterName.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getClusterName.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getClusterNodes.d.ts +25 -0
- package/dist/cjs/providers/solana/actions/getClusterNodes.js +23 -0
- package/dist/cjs/providers/solana/actions/getClusterNodes.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getClusterNodes.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getEpochInfo.d.ts +17 -0
- package/dist/cjs/providers/solana/actions/getEpochInfo.js +23 -0
- package/dist/cjs/providers/solana/actions/getEpochInfo.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getEpochInfo.test.js +39 -0
- package/dist/cjs/providers/solana/actions/getEpochSchedule.d.ts +16 -0
- package/dist/cjs/providers/solana/actions/getEpochSchedule.js +23 -0
- package/dist/cjs/providers/solana/actions/getEpochSchedule.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getEpochSchedule.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getFeeForMessage.d.ts +15 -0
- package/dist/cjs/providers/solana/actions/getFeeForMessage.js +23 -0
- package/dist/cjs/providers/solana/actions/getFeeForMessage.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getFeeForMessage.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getFirstAvailableBlock.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getFirstAvailableBlock.js +23 -0
- package/dist/cjs/providers/solana/actions/getFirstAvailableBlock.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getFirstAvailableBlock.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getGenesisHash.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getGenesisHash.js +23 -0
- package/dist/cjs/providers/solana/actions/getGenesisHash.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getGenesisHash.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getHealth.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getHealth.js +23 -0
- package/dist/cjs/providers/solana/actions/getHealth.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getHealth.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getHighestSnapshotSlot.d.ts +13 -0
- package/dist/cjs/providers/solana/actions/getHighestSnapshotSlot.js +23 -0
- package/dist/cjs/providers/solana/actions/getHighestSnapshotSlot.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getHighestSnapshotSlot.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getIdentity.d.ts +12 -0
- package/dist/cjs/providers/solana/actions/getIdentity.js +23 -0
- package/dist/cjs/providers/solana/actions/getIdentity.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getIdentity.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getInflationGovernor.d.ts +16 -0
- package/dist/cjs/providers/solana/actions/getInflationGovernor.js +23 -0
- package/dist/cjs/providers/solana/actions/getInflationGovernor.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getInflationGovernor.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getInflationRate.d.ts +15 -0
- package/dist/cjs/providers/solana/actions/getInflationRate.js +23 -0
- package/dist/cjs/providers/solana/actions/getInflationRate.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getInflationRate.test.js +39 -0
- package/dist/cjs/providers/solana/actions/getInflationReward.d.ts +16 -0
- package/dist/cjs/providers/solana/actions/getInflationReward.js +23 -0
- package/dist/cjs/providers/solana/actions/getInflationReward.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getInflationReward.test.js +35 -0
- package/dist/cjs/providers/solana/actions/getLargestAccounts.d.ts +18 -0
- package/dist/cjs/providers/solana/actions/getLargestAccounts.js +23 -0
- package/dist/cjs/providers/solana/actions/getLargestAccounts.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getLargestAccounts.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getLatestBlockhash.d.ts +18 -0
- package/dist/cjs/providers/solana/actions/getLatestBlockhash.js +23 -0
- package/dist/cjs/providers/solana/actions/getLatestBlockhash.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getLatestBlockhash.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getLeaderSchedule.d.ts +12 -0
- package/dist/cjs/providers/solana/actions/getLeaderSchedule.js +23 -0
- package/dist/cjs/providers/solana/actions/getLeaderSchedule.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getLeaderSchedule.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getMaxRetransmitSlot.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getMaxRetransmitSlot.js +23 -0
- package/dist/cjs/providers/solana/actions/getMaxRetransmitSlot.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getMaxRetransmitSlot.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getMaxShredInsertSlot.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getMaxShredInsertSlot.js +23 -0
- package/dist/cjs/providers/solana/actions/getMaxShredInsertSlot.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getMaxShredInsertSlot.test.js +32 -0
- package/dist/cjs/providers/solana/actions/getMinimumBalanceForRentExemption.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getMinimumBalanceForRentExemption.js +23 -0
- package/dist/cjs/providers/solana/actions/getMinimumBalanceForRentExemption.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getMinimumBalanceForRentExemption.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getMultipleAccounts.d.ts +23 -0
- package/dist/cjs/providers/solana/actions/getMultipleAccounts.js +23 -0
- package/dist/cjs/providers/solana/actions/getMultipleAccounts.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getMultipleAccounts.test.js +43 -0
- package/dist/cjs/providers/solana/actions/getProgramAccounts.d.ts +21 -0
- package/dist/cjs/providers/solana/actions/getProgramAccounts.js +23 -0
- package/dist/cjs/providers/solana/actions/getProgramAccounts.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getProgramAccounts.test.js +39 -0
- package/dist/cjs/providers/solana/actions/getRecentPerformanceSamples.d.ts +16 -0
- package/dist/cjs/providers/solana/actions/getRecentPerformanceSamples.js +23 -0
- package/dist/cjs/providers/solana/actions/getRecentPerformanceSamples.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getRecentPerformanceSamples.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getRecentPrioritizationFees.d.ts +13 -0
- package/dist/cjs/providers/solana/actions/getRecentPrioritizationFees.js +23 -0
- package/dist/cjs/providers/solana/actions/getRecentPrioritizationFees.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getRecentPrioritizationFees.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getSignatureStatuses.d.ts +25 -0
- package/dist/cjs/providers/solana/actions/getSignatureStatuses.js +23 -0
- package/dist/cjs/providers/solana/actions/getSignatureStatuses.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getSignatureStatuses.test.js +35 -0
- package/dist/cjs/providers/solana/actions/getSignaturesForAddress.d.ts +17 -0
- package/dist/cjs/providers/solana/actions/getSignaturesForAddress.js +23 -0
- package/dist/cjs/providers/solana/actions/getSignaturesForAddress.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getSignaturesForAddress.test.js +46 -0
- package/dist/cjs/providers/solana/actions/getSlot.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getSlot.js +23 -0
- package/dist/cjs/providers/solana/actions/getSlot.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getSlot.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getSlotLeader.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getSlotLeader.js +23 -0
- package/dist/cjs/providers/solana/actions/getSlotLeader.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getSlotLeader.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getSlotLeaders.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getSlotLeaders.js +23 -0
- package/dist/cjs/providers/solana/actions/getSlotLeaders.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getSlotLeaders.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getSupply.d.ts +21 -0
- package/dist/cjs/providers/solana/actions/getSupply.js +23 -0
- package/dist/cjs/providers/solana/actions/getSupply.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getSupply.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountBalance.d.ts +20 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountBalance.js +23 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountBalance.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountBalance.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByDelegate.d.ts +26 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByDelegate.js +23 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByDelegate.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByDelegate.test.js +35 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByOwner.d.ts +26 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByOwner.js +23 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByOwner.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTokenAccountsByOwner.test.js +39 -0
- package/dist/cjs/providers/solana/actions/getTokenLargestAccounts.d.ts +22 -0
- package/dist/cjs/providers/solana/actions/getTokenLargestAccounts.js +23 -0
- package/dist/cjs/providers/solana/actions/getTokenLargestAccounts.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTokenLargestAccounts.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getTokenSupply.d.ts +20 -0
- package/dist/cjs/providers/solana/actions/getTokenSupply.js +23 -0
- package/dist/cjs/providers/solana/actions/getTokenSupply.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTokenSupply.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getTransaction.d.ts +80 -0
- package/dist/cjs/providers/solana/actions/getTransaction.js +23 -0
- package/dist/cjs/providers/solana/actions/getTransaction.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTransaction.test.js +34 -0
- package/dist/cjs/providers/solana/actions/getTransactionCount.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/getTransactionCount.js +23 -0
- package/dist/cjs/providers/solana/actions/getTransactionCount.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getTransactionCount.test.js +33 -0
- package/dist/cjs/providers/solana/actions/getVersion.d.ts +13 -0
- package/dist/cjs/providers/solana/actions/getVersion.js +23 -0
- package/dist/cjs/providers/solana/actions/getVersion.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getVersion.test.js +35 -0
- package/dist/cjs/providers/solana/actions/getVoteAccounts.d.ts +31 -0
- package/dist/cjs/providers/solana/actions/getVoteAccounts.js +23 -0
- package/dist/cjs/providers/solana/actions/getVoteAccounts.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/getVoteAccounts.test.js +33 -0
- package/dist/cjs/providers/solana/actions/index.d.ts +216 -0
- package/dist/cjs/providers/solana/actions/index.js +190 -0
- package/dist/cjs/providers/solana/actions/index.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/index.test.js +78 -0
- package/dist/cjs/providers/solana/actions/isBlockhashValid.d.ts +15 -0
- package/dist/cjs/providers/solana/actions/isBlockhashValid.js +23 -0
- package/dist/cjs/providers/solana/actions/isBlockhashValid.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/isBlockhashValid.test.js +34 -0
- package/dist/cjs/providers/solana/actions/minimumLedgerSlot.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/minimumLedgerSlot.js +23 -0
- package/dist/cjs/providers/solana/actions/minimumLedgerSlot.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/minimumLedgerSlot.test.js +32 -0
- package/dist/cjs/providers/solana/actions/sendTransaction.d.ts +13 -0
- package/dist/cjs/providers/solana/actions/sendTransaction.js +30 -0
- package/dist/cjs/providers/solana/actions/sendTransaction.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/sendTransaction.test.js +82 -0
- package/dist/cjs/providers/solana/actions/simulateTransaction.d.ts +28 -0
- package/dist/cjs/providers/solana/actions/simulateTransaction.js +30 -0
- package/dist/cjs/providers/solana/actions/simulateTransaction.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/simulateTransaction.test.js +82 -0
- package/dist/cjs/providers/solana/actions/switchCluster.d.ts +10 -0
- package/dist/cjs/providers/solana/actions/switchCluster.js +26 -0
- package/dist/cjs/providers/solana/actions/switchCluster.test.d.ts +1 -0
- package/dist/cjs/providers/solana/actions/switchCluster.test.js +33 -0
- package/dist/cjs/providers/solana/constants.d.ts +6 -0
- package/dist/cjs/providers/solana/constants.js +23 -0
- package/dist/cjs/providers/solana/index.d.ts +101 -0
- package/dist/cjs/providers/solana/index.js +39 -0
- package/dist/cjs/providers/solana/index.test.d.ts +1 -0
- package/dist/cjs/providers/solana/index.test.js +201 -0
- package/dist/cjs/providers/solana/transports/http.d.ts +8 -0
- package/dist/cjs/providers/solana/transports/http.js +20 -0
- package/dist/cjs/providers/solana/transports/http.test.d.ts +1 -0
- package/dist/cjs/providers/solana/transports/http.test.js +88 -0
- package/dist/cjs/providers/solana/transports/index.d.ts +734 -0
- package/dist/cjs/providers/solana/transports/index.js +205 -0
- package/dist/cjs/providers/solana/transports/index.test.d.ts +1 -0
- package/dist/cjs/providers/solana/transports/index.test.js +307 -0
- package/dist/cjs/providers/solana/utils/codecs.d.ts +4 -0
- package/dist/cjs/providers/solana/utils/codecs.js +20 -0
- package/dist/cjs/providers/solana/utils/index.d.ts +2 -0
- package/dist/cjs/providers/solana/utils/index.js +30 -0
- package/dist/cjs/providers/solana/utils/index.test.d.ts +1 -0
- package/dist/cjs/providers/solana/utils/index.test.js +53 -0
- package/dist/cjs/providers/solana/utils/toBase64EncodedWireTransaction.d.ts +26 -0
- package/dist/cjs/providers/solana/utils/toBase64EncodedWireTransaction.js +42 -0
- package/dist/cjs/providers/solana/utils/toBase64EncodedWireTransaction.test.d.ts +1 -0
- package/dist/cjs/providers/solana/utils/toBase64EncodedWireTransaction.test.js +108 -0
- package/dist/cjs/providers/uniswap/actions/exactInputSingle.d.ts +3 -3
- package/dist/cjs/providers/uniswap/actions/exactInputSingle.js +4 -4
- package/dist/cjs/providers/uniswap/actions/getPool.d.ts +3 -2
- package/dist/cjs/providers/uniswap/actions/quoteExactInputSingle.d.ts +3 -2
- package/dist/cjs/types.d.ts +8 -16
- package/dist/cjs/types.js +0 -10
- package/dist/cjs/utils/createConfig.d.ts +36 -0
- package/dist/cjs/utils/createConfig.js +51 -0
- package/dist/cjs/utils/createConfig.test.d.ts +1 -0
- package/dist/cjs/utils/createConfig.test.js +66 -0
- package/dist/cjs/utils/createCustomWalletClient.d.ts +46 -0
- package/dist/cjs/utils/createCustomWalletClient.js +114 -0
- package/dist/cjs/utils/createCustomWalletClient.test.d.ts +1 -0
- package/dist/cjs/utils/createCustomWalletClient.test.js +100 -0
- package/dist/cjs/utils/getChainContractByAddress.d.ts +2 -1
- package/dist/cjs/utils/getClient.d.ts +458 -0
- package/dist/cjs/utils/getClient.js +25 -0
- package/dist/cjs/utils/getClient.test.d.ts +1 -0
- package/dist/cjs/utils/getClient.test.js +46 -0
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.js +1 -0
- package/dist/cjs/utils/index.test.js +2 -0
- package/dist/esm/actions/generateTransferLink.d.ts +3 -3
- package/dist/esm/actions/generateTransferLink.js +3 -0
- package/dist/esm/actions/generateTransferLink.test.js +17 -0
- package/dist/esm/actions/getSwapExactInQuote.d.ts +3 -3
- package/dist/esm/actions/getTokenBalance.d.ts +30 -0
- package/dist/esm/actions/getTokenBalance.js +48 -0
- package/dist/esm/actions/getTokenBalance.test.d.ts +1 -0
- package/dist/esm/actions/getTokenBalance.test.js +163 -0
- package/dist/esm/actions/index.d.ts +9 -1
- package/dist/esm/actions/index.js +12 -9
- package/dist/esm/actions/index.test.js +2 -0
- package/dist/esm/actions/swapExactIn.d.ts +3 -3
- package/dist/esm/actions/sweep.d.ts +3 -2
- package/dist/esm/actions/sweep.js +5 -5
- package/dist/esm/actions/sweep.test.js +13 -10
- package/dist/esm/actions/transfer.d.ts +2 -2
- package/dist/esm/actions/transfer.js +60 -32
- package/dist/esm/actions/transfer.test.js +334 -135
- package/dist/esm/chains.d.ts +2 -0
- package/dist/esm/chains.js +11 -0
- package/dist/esm/client.d.ts +35 -0
- package/dist/esm/client.js +11 -0
- package/dist/esm/extractChain.d.ts +109 -109
- package/dist/esm/index.d.ts +4 -1
- package/dist/esm/index.js +31 -7
- package/dist/esm/index.test.js +1 -0
- package/dist/esm/metadata.js +1 -1
- package/dist/esm/onResponse.d.ts +1 -1
- package/dist/esm/onResponse.js +3 -0
- package/dist/esm/providers/circle-wallets/actions/createAccount.d.ts +2 -1
- package/dist/esm/providers/circle-wallets/actions/createContractExecutionTransaction.d.ts +9 -1
- package/dist/esm/providers/circle-wallets/actions/createContractExecutionTransaction.js +8 -0
- package/dist/esm/providers/circle-wallets/actions/createTransaction.d.ts +4 -1
- package/dist/esm/providers/circle-wallets/actions/createTransaction.js +3 -0
- package/dist/esm/providers/circle-wallets/actions/createWalletSet.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/createWallets.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/deriveWallet.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/drip.d.ts +2 -1
- package/dist/esm/providers/circle-wallets/actions/estimateContractExecutionFee.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/estimateTransferFee.d.ts +2 -1
- package/dist/esm/providers/circle-wallets/actions/estimateTransferFee.js +2 -3
- package/dist/esm/providers/circle-wallets/actions/estimateTransferFee.test.js +1 -20
- package/dist/esm/providers/circle-wallets/actions/getAccounts.d.ts +2 -1
- package/dist/esm/providers/circle-wallets/actions/getNotificationSignature.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/getTokenBalances.d.ts +4 -15
- package/dist/esm/providers/circle-wallets/actions/getTransactionById.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/getWallet.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/getWalletTokenBalance.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/getWalletsWithBalances.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/importContract.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/index.d.ts +0 -8
- package/dist/esm/providers/circle-wallets/actions/index.js +0 -8
- package/dist/esm/providers/circle-wallets/actions/index.test.js +0 -4
- package/dist/esm/providers/circle-wallets/actions/listTransactions.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/listWallets.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/requestTestnetTokens.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/signTransaction.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/verifyNotification.d.ts +1 -1
- package/dist/esm/providers/circle-wallets/actions/writeContract.d.ts +2 -1
- package/dist/esm/providers/circle-wallets/actions/writeContract.js +2 -5
- package/dist/esm/providers/circle-wallets/actions/writeContract.test.js +9 -18
- package/dist/esm/providers/circle-wallets/index.d.ts +4481 -0
- package/dist/esm/providers/circle-wallets/index.js +35 -0
- package/dist/esm/providers/circle-wallets/index.test.js +51 -2
- package/dist/esm/providers/circle-wallets/transports/http.d.ts +19 -1
- package/dist/esm/providers/circle-wallets/transports/http.js +3 -3
- package/dist/esm/providers/circle-wallets/transports/http.test.js +24 -4
- package/dist/esm/providers/circle-wallets/transports/index.d.ts +102 -22
- package/dist/esm/providers/circle-wallets/transports/index.js +257 -3
- package/dist/esm/providers/circle-wallets/transports/index.test.js +1617 -177
- package/dist/esm/providers/circle-wallets/utils/index.d.ts +1 -0
- package/dist/esm/providers/circle-wallets/utils/index.js +11 -0
- package/dist/esm/providers/circle-wallets/utils/toSolanaSigner.d.ts +4 -0
- package/dist/esm/providers/circle-wallets/utils/toSolanaSigner.js +30 -0
- package/dist/esm/providers/circle-wallets/utils/toSolanaSigner.test.d.ts +1 -0
- package/dist/esm/providers/circle-wallets/utils/toSolanaSigner.test.js +127 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.d.ts +3 -3
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.js +7 -10
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/bridge.d.ts +3 -3
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/bridge.js +0 -3
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.d.ts +3 -3
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.js +6 -10
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.js +6 -7
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/listMessages.d.ts +3 -3
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.d.ts +3 -3
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.js +6 -10
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.d.ts +3 -2
- package/dist/esm/providers/cross-chain-transfer-protocol/transports/http.d.ts +0 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/transports/index.d.ts +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/transports/index.test.js +2 -2
- package/dist/esm/providers/solana/actions/getAccountInfo.d.ts +23 -0
- package/dist/esm/providers/solana/actions/getAccountInfo.js +20 -0
- package/dist/esm/providers/solana/actions/getAccountInfo.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getAccountInfo.test.js +37 -0
- package/dist/esm/providers/solana/actions/getBalance.d.ts +15 -0
- package/dist/esm/providers/solana/actions/getBalance.js +20 -0
- package/dist/esm/providers/solana/actions/getBalance.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBalance.test.js +33 -0
- package/dist/esm/providers/solana/actions/getBlock.d.ts +60 -0
- package/dist/esm/providers/solana/actions/getBlock.js +20 -0
- package/dist/esm/providers/solana/actions/getBlock.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlock.test.js +32 -0
- package/dist/esm/providers/solana/actions/getBlockCommitment.d.ts +13 -0
- package/dist/esm/providers/solana/actions/getBlockCommitment.js +20 -0
- package/dist/esm/providers/solana/actions/getBlockCommitment.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlockCommitment.test.js +34 -0
- package/dist/esm/providers/solana/actions/getBlockHeight.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getBlockHeight.js +20 -0
- package/dist/esm/providers/solana/actions/getBlockHeight.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlockHeight.test.js +31 -0
- package/dist/esm/providers/solana/actions/getBlockProduction.d.ts +23 -0
- package/dist/esm/providers/solana/actions/getBlockProduction.js +20 -0
- package/dist/esm/providers/solana/actions/getBlockProduction.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlockProduction.test.js +38 -0
- package/dist/esm/providers/solana/actions/getBlockTime.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getBlockTime.js +20 -0
- package/dist/esm/providers/solana/actions/getBlockTime.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlockTime.test.js +31 -0
- package/dist/esm/providers/solana/actions/getBlocks.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getBlocks.js +20 -0
- package/dist/esm/providers/solana/actions/getBlocks.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlocks.test.js +33 -0
- package/dist/esm/providers/solana/actions/getBlocksWithLimit.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getBlocksWithLimit.js +20 -0
- package/dist/esm/providers/solana/actions/getBlocksWithLimit.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getBlocksWithLimit.test.js +32 -0
- package/dist/esm/providers/solana/actions/getClusterName.d.ts +8 -0
- package/dist/esm/providers/solana/actions/getClusterName.js +22 -0
- package/dist/esm/providers/solana/actions/getClusterName.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getClusterName.test.js +30 -0
- package/dist/esm/providers/solana/actions/getClusterNodes.d.ts +25 -0
- package/dist/esm/providers/solana/actions/getClusterNodes.js +20 -0
- package/dist/esm/providers/solana/actions/getClusterNodes.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getClusterNodes.test.js +30 -0
- package/dist/esm/providers/solana/actions/getEpochInfo.d.ts +17 -0
- package/dist/esm/providers/solana/actions/getEpochInfo.js +20 -0
- package/dist/esm/providers/solana/actions/getEpochInfo.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getEpochInfo.test.js +37 -0
- package/dist/esm/providers/solana/actions/getEpochSchedule.d.ts +16 -0
- package/dist/esm/providers/solana/actions/getEpochSchedule.js +20 -0
- package/dist/esm/providers/solana/actions/getEpochSchedule.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getEpochSchedule.test.js +30 -0
- package/dist/esm/providers/solana/actions/getFeeForMessage.d.ts +15 -0
- package/dist/esm/providers/solana/actions/getFeeForMessage.js +20 -0
- package/dist/esm/providers/solana/actions/getFeeForMessage.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getFeeForMessage.test.js +31 -0
- package/dist/esm/providers/solana/actions/getFirstAvailableBlock.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getFirstAvailableBlock.js +20 -0
- package/dist/esm/providers/solana/actions/getFirstAvailableBlock.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getFirstAvailableBlock.test.js +30 -0
- package/dist/esm/providers/solana/actions/getGenesisHash.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getGenesisHash.js +20 -0
- package/dist/esm/providers/solana/actions/getGenesisHash.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getGenesisHash.test.js +30 -0
- package/dist/esm/providers/solana/actions/getHealth.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getHealth.js +20 -0
- package/dist/esm/providers/solana/actions/getHealth.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getHealth.test.js +30 -0
- package/dist/esm/providers/solana/actions/getHighestSnapshotSlot.d.ts +13 -0
- package/dist/esm/providers/solana/actions/getHighestSnapshotSlot.js +20 -0
- package/dist/esm/providers/solana/actions/getHighestSnapshotSlot.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getHighestSnapshotSlot.test.js +30 -0
- package/dist/esm/providers/solana/actions/getIdentity.d.ts +12 -0
- package/dist/esm/providers/solana/actions/getIdentity.js +20 -0
- package/dist/esm/providers/solana/actions/getIdentity.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getIdentity.test.js +30 -0
- package/dist/esm/providers/solana/actions/getInflationGovernor.d.ts +16 -0
- package/dist/esm/providers/solana/actions/getInflationGovernor.js +20 -0
- package/dist/esm/providers/solana/actions/getInflationGovernor.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getInflationGovernor.test.js +31 -0
- package/dist/esm/providers/solana/actions/getInflationRate.d.ts +15 -0
- package/dist/esm/providers/solana/actions/getInflationRate.js +20 -0
- package/dist/esm/providers/solana/actions/getInflationRate.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getInflationRate.test.js +37 -0
- package/dist/esm/providers/solana/actions/getInflationReward.d.ts +16 -0
- package/dist/esm/providers/solana/actions/getInflationReward.js +20 -0
- package/dist/esm/providers/solana/actions/getInflationReward.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getInflationReward.test.js +33 -0
- package/dist/esm/providers/solana/actions/getLargestAccounts.d.ts +18 -0
- package/dist/esm/providers/solana/actions/getLargestAccounts.js +20 -0
- package/dist/esm/providers/solana/actions/getLargestAccounts.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getLargestAccounts.test.js +31 -0
- package/dist/esm/providers/solana/actions/getLatestBlockhash.d.ts +18 -0
- package/dist/esm/providers/solana/actions/getLatestBlockhash.js +20 -0
- package/dist/esm/providers/solana/actions/getLatestBlockhash.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getLatestBlockhash.test.js +31 -0
- package/dist/esm/providers/solana/actions/getLeaderSchedule.d.ts +12 -0
- package/dist/esm/providers/solana/actions/getLeaderSchedule.js +20 -0
- package/dist/esm/providers/solana/actions/getLeaderSchedule.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getLeaderSchedule.test.js +32 -0
- package/dist/esm/providers/solana/actions/getMaxRetransmitSlot.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getMaxRetransmitSlot.js +20 -0
- package/dist/esm/providers/solana/actions/getMaxRetransmitSlot.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getMaxRetransmitSlot.test.js +30 -0
- package/dist/esm/providers/solana/actions/getMaxShredInsertSlot.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getMaxShredInsertSlot.js +20 -0
- package/dist/esm/providers/solana/actions/getMaxShredInsertSlot.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getMaxShredInsertSlot.test.js +30 -0
- package/dist/esm/providers/solana/actions/getMinimumBalanceForRentExemption.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getMinimumBalanceForRentExemption.js +20 -0
- package/dist/esm/providers/solana/actions/getMinimumBalanceForRentExemption.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getMinimumBalanceForRentExemption.test.js +32 -0
- package/dist/esm/providers/solana/actions/getMultipleAccounts.d.ts +23 -0
- package/dist/esm/providers/solana/actions/getMultipleAccounts.js +20 -0
- package/dist/esm/providers/solana/actions/getMultipleAccounts.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getMultipleAccounts.test.js +41 -0
- package/dist/esm/providers/solana/actions/getProgramAccounts.d.ts +21 -0
- package/dist/esm/providers/solana/actions/getProgramAccounts.js +20 -0
- package/dist/esm/providers/solana/actions/getProgramAccounts.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getProgramAccounts.test.js +37 -0
- package/dist/esm/providers/solana/actions/getRecentPerformanceSamples.d.ts +16 -0
- package/dist/esm/providers/solana/actions/getRecentPerformanceSamples.js +20 -0
- package/dist/esm/providers/solana/actions/getRecentPerformanceSamples.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getRecentPerformanceSamples.test.js +31 -0
- package/dist/esm/providers/solana/actions/getRecentPrioritizationFees.d.ts +13 -0
- package/dist/esm/providers/solana/actions/getRecentPrioritizationFees.js +20 -0
- package/dist/esm/providers/solana/actions/getRecentPrioritizationFees.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getRecentPrioritizationFees.test.js +32 -0
- package/dist/esm/providers/solana/actions/getSignatureStatuses.d.ts +25 -0
- package/dist/esm/providers/solana/actions/getSignatureStatuses.js +20 -0
- package/dist/esm/providers/solana/actions/getSignatureStatuses.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getSignatureStatuses.test.js +33 -0
- package/dist/esm/providers/solana/actions/getSignaturesForAddress.d.ts +17 -0
- package/dist/esm/providers/solana/actions/getSignaturesForAddress.js +20 -0
- package/dist/esm/providers/solana/actions/getSignaturesForAddress.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getSignaturesForAddress.test.js +44 -0
- package/dist/esm/providers/solana/actions/getSlot.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getSlot.js +20 -0
- package/dist/esm/providers/solana/actions/getSlot.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getSlot.test.js +31 -0
- package/dist/esm/providers/solana/actions/getSlotLeader.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getSlotLeader.js +20 -0
- package/dist/esm/providers/solana/actions/getSlotLeader.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getSlotLeader.test.js +31 -0
- package/dist/esm/providers/solana/actions/getSlotLeaders.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getSlotLeaders.js +20 -0
- package/dist/esm/providers/solana/actions/getSlotLeaders.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getSlotLeaders.test.js +32 -0
- package/dist/esm/providers/solana/actions/getSupply.d.ts +21 -0
- package/dist/esm/providers/solana/actions/getSupply.js +20 -0
- package/dist/esm/providers/solana/actions/getSupply.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getSupply.test.js +31 -0
- package/dist/esm/providers/solana/actions/getTokenAccountBalance.d.ts +20 -0
- package/dist/esm/providers/solana/actions/getTokenAccountBalance.js +20 -0
- package/dist/esm/providers/solana/actions/getTokenAccountBalance.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTokenAccountBalance.test.js +32 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByDelegate.d.ts +26 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByDelegate.js +20 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByDelegate.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByDelegate.test.js +33 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByOwner.d.ts +26 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByOwner.js +20 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByOwner.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTokenAccountsByOwner.test.js +37 -0
- package/dist/esm/providers/solana/actions/getTokenLargestAccounts.d.ts +22 -0
- package/dist/esm/providers/solana/actions/getTokenLargestAccounts.js +20 -0
- package/dist/esm/providers/solana/actions/getTokenLargestAccounts.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTokenLargestAccounts.test.js +32 -0
- package/dist/esm/providers/solana/actions/getTokenSupply.d.ts +20 -0
- package/dist/esm/providers/solana/actions/getTokenSupply.js +20 -0
- package/dist/esm/providers/solana/actions/getTokenSupply.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTokenSupply.test.js +32 -0
- package/dist/esm/providers/solana/actions/getTransaction.d.ts +80 -0
- package/dist/esm/providers/solana/actions/getTransaction.js +20 -0
- package/dist/esm/providers/solana/actions/getTransaction.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTransaction.test.js +32 -0
- package/dist/esm/providers/solana/actions/getTransactionCount.d.ts +10 -0
- package/dist/esm/providers/solana/actions/getTransactionCount.js +20 -0
- package/dist/esm/providers/solana/actions/getTransactionCount.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getTransactionCount.test.js +31 -0
- package/dist/esm/providers/solana/actions/getVersion.d.ts +13 -0
- package/dist/esm/providers/solana/actions/getVersion.js +20 -0
- package/dist/esm/providers/solana/actions/getVersion.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getVersion.test.js +33 -0
- package/dist/esm/providers/solana/actions/getVoteAccounts.d.ts +31 -0
- package/dist/esm/providers/solana/actions/getVoteAccounts.js +20 -0
- package/dist/esm/providers/solana/actions/getVoteAccounts.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/getVoteAccounts.test.js +31 -0
- package/dist/esm/providers/solana/actions/index.d.ts +216 -0
- package/dist/esm/providers/solana/actions/index.js +173 -0
- package/dist/esm/providers/solana/actions/index.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/index.test.js +76 -0
- package/dist/esm/providers/solana/actions/isBlockhashValid.d.ts +15 -0
- package/dist/esm/providers/solana/actions/isBlockhashValid.js +20 -0
- package/dist/esm/providers/solana/actions/isBlockhashValid.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/isBlockhashValid.test.js +32 -0
- package/dist/esm/providers/solana/actions/minimumLedgerSlot.d.ts +10 -0
- package/dist/esm/providers/solana/actions/minimumLedgerSlot.js +20 -0
- package/dist/esm/providers/solana/actions/minimumLedgerSlot.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/minimumLedgerSlot.test.js +30 -0
- package/dist/esm/providers/solana/actions/sendTransaction.d.ts +13 -0
- package/dist/esm/providers/solana/actions/sendTransaction.js +27 -0
- package/dist/esm/providers/solana/actions/sendTransaction.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/sendTransaction.test.js +80 -0
- package/dist/esm/providers/solana/actions/simulateTransaction.d.ts +28 -0
- package/dist/esm/providers/solana/actions/simulateTransaction.js +27 -0
- package/dist/esm/providers/solana/actions/simulateTransaction.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/simulateTransaction.test.js +80 -0
- package/dist/esm/providers/solana/actions/switchCluster.d.ts +10 -0
- package/dist/esm/providers/solana/actions/switchCluster.js +23 -0
- package/dist/esm/providers/solana/actions/switchCluster.test.d.ts +1 -0
- package/dist/esm/providers/solana/actions/switchCluster.test.js +31 -0
- package/dist/esm/providers/solana/constants.d.ts +6 -0
- package/dist/esm/providers/solana/constants.js +17 -0
- package/dist/esm/providers/solana/index.d.ts +101 -0
- package/dist/esm/providers/solana/index.js +21 -0
- package/dist/esm/providers/solana/index.test.d.ts +1 -0
- package/dist/esm/providers/solana/index.test.js +166 -0
- package/dist/esm/providers/solana/transports/http.d.ts +8 -0
- package/dist/esm/providers/solana/transports/http.js +17 -0
- package/dist/esm/providers/solana/transports/http.test.d.ts +1 -0
- package/dist/esm/providers/solana/transports/http.test.js +86 -0
- package/dist/esm/providers/solana/transports/index.d.ts +734 -0
- package/dist/esm/providers/solana/transports/index.js +200 -0
- package/dist/esm/providers/solana/transports/index.test.d.ts +1 -0
- package/dist/esm/providers/solana/transports/index.test.js +272 -0
- package/dist/esm/providers/solana/utils/codecs.d.ts +4 -0
- package/dist/esm/providers/solana/utils/codecs.js +17 -0
- package/dist/esm/providers/solana/utils/index.d.ts +2 -0
- package/dist/esm/providers/solana/utils/index.js +12 -0
- package/dist/esm/providers/solana/utils/index.test.d.ts +1 -0
- package/dist/esm/providers/solana/utils/index.test.js +18 -0
- package/dist/esm/providers/solana/utils/toBase64EncodedWireTransaction.d.ts +26 -0
- package/dist/esm/providers/solana/utils/toBase64EncodedWireTransaction.js +39 -0
- package/dist/esm/providers/solana/utils/toBase64EncodedWireTransaction.test.d.ts +1 -0
- package/dist/esm/providers/solana/utils/toBase64EncodedWireTransaction.test.js +106 -0
- package/dist/esm/providers/uniswap/actions/exactInputSingle.d.ts +3 -3
- package/dist/esm/providers/uniswap/actions/exactInputSingle.js +5 -5
- package/dist/esm/providers/uniswap/actions/getPool.d.ts +3 -2
- package/dist/esm/providers/uniswap/actions/quoteExactInputSingle.d.ts +3 -2
- package/dist/esm/types.d.ts +8 -16
- package/dist/esm/types.js +0 -10
- package/dist/esm/utils/createConfig.d.ts +36 -0
- package/dist/esm/utils/createConfig.js +48 -0
- package/dist/esm/utils/createConfig.test.d.ts +1 -0
- package/dist/esm/utils/createConfig.test.js +64 -0
- package/dist/esm/utils/createCustomWalletClient.d.ts +46 -0
- package/dist/esm/utils/createCustomWalletClient.js +78 -0
- package/dist/esm/utils/createCustomWalletClient.test.d.ts +1 -0
- package/dist/esm/utils/createCustomWalletClient.test.js +98 -0
- package/dist/esm/utils/getChainContractByAddress.d.ts +2 -1
- package/dist/esm/utils/getClient.d.ts +458 -0
- package/dist/esm/utils/getClient.js +22 -0
- package/dist/esm/utils/getClient.test.d.ts +1 -0
- package/dist/esm/utils/getClient.test.js +44 -0
- package/dist/esm/utils/index.d.ts +1 -0
- package/dist/esm/utils/index.js +1 -0
- package/dist/esm/utils/index.test.js +2 -0
- package/package.json +9 -1
- package/dist/cjs/providers/circle-wallets/actions/signTypedData.d.ts +0 -8
- package/dist/cjs/providers/circle-wallets/actions/signTypedData.test.js +0 -51
- package/dist/cjs/providers/circle-wallets/actions/waitForTransactionHash.d.ts +0 -19
- package/dist/cjs/providers/circle-wallets/actions/waitForTransactionHash.js +0 -45
- package/dist/cjs/providers/circle-wallets/actions/waitForTransactionHash.test.js +0 -92
- package/dist/esm/providers/circle-wallets/actions/signTypedData.d.ts +0 -8
- package/dist/esm/providers/circle-wallets/actions/signTypedData.test.js +0 -49
- package/dist/esm/providers/circle-wallets/actions/waitForTransactionHash.d.ts +0 -19
- package/dist/esm/providers/circle-wallets/actions/waitForTransactionHash.js +0 -42
- package/dist/esm/providers/circle-wallets/actions/waitForTransactionHash.test.js +0 -90
- /package/dist/cjs/{providers/circle-wallets/actions/signTypedData.test.d.ts → actions/getTokenBalance.test.d.ts} +0 -0
- /package/dist/cjs/providers/circle-wallets/{actions/waitForTransactionHash.test.d.ts → utils/toSolanaSigner.test.d.ts} +0 -0
- /package/dist/{esm/providers/circle-wallets/actions/signTypedData.test.d.ts → cjs/providers/solana/actions/getAccountInfo.test.d.ts} +0 -0
- /package/dist/{esm/providers/circle-wallets/actions/waitForTransactionHash.test.d.ts → cjs/providers/solana/actions/getBalance.test.d.ts} +0 -0
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
// Copyright (c) 2025, Circle Internet Group, Inc.
|
|
2
|
+
// All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Circle Internet Group, Inc. CONFIDENTIAL
|
|
5
|
+
//
|
|
6
|
+
// This file includes unpublished proprietary source code of Circle Internet
|
|
7
|
+
// Group, Inc. The copyright notice above does not
|
|
8
|
+
// evidence any actual or intended publication of such source code. Disclosure
|
|
9
|
+
// of this source code or any related proprietary information is strictly
|
|
10
|
+
// prohibited without the express written permission of Circle Internet Group, Inc.
|
|
11
|
+
export { http } from './http.js';
|
|
12
|
+
import { createSolanaRpc } from '@solana/kit';
|
|
13
|
+
import { raise } from '../../../utils/raise.js';
|
|
14
|
+
import { Provider as BaseProvider } from '../../index.js';
|
|
15
|
+
/**
|
|
16
|
+
* Solana Provider that implements EIP-1193 interface for Solana RPC methods
|
|
17
|
+
*
|
|
18
|
+
* {@link https://solana.com/docs/rpc/http | Solana JSON-RPC HTTP API Reference}
|
|
19
|
+
*/
|
|
20
|
+
export class Provider extends BaseProvider {
|
|
21
|
+
_clusters;
|
|
22
|
+
constructor({ clusters = {
|
|
23
|
+
devnet: createSolanaRpc('https://api.devnet.solana.com'),
|
|
24
|
+
'mainnet-beta': createSolanaRpc('https://api.mainnet-beta.solana.com'),
|
|
25
|
+
}, }) {
|
|
26
|
+
super();
|
|
27
|
+
const clustersEntries = Object.entries(clusters);
|
|
28
|
+
if (clustersEntries.length === 0) {
|
|
29
|
+
throw new Error('At least one cluster must be provided');
|
|
30
|
+
}
|
|
31
|
+
this._clusters = new Map(clustersEntries);
|
|
32
|
+
this.sol_switchCluster(clustersEntries[0][0]);
|
|
33
|
+
}
|
|
34
|
+
sol_getClusterName() {
|
|
35
|
+
const currentCluster = this.cluster;
|
|
36
|
+
for (const [id, cluster] of this._clusters.entries()) {
|
|
37
|
+
if (id !== undefined && cluster === currentCluster)
|
|
38
|
+
return id;
|
|
39
|
+
}
|
|
40
|
+
throw new Error('Cluster not found');
|
|
41
|
+
}
|
|
42
|
+
sol_switchCluster(clusterName) {
|
|
43
|
+
const cluster = this._clusters.get(clusterName) ?? raise(new Error(`Cluster '${clusterName}' not found`));
|
|
44
|
+
this._clusters.set(undefined, cluster);
|
|
45
|
+
return cluster;
|
|
46
|
+
}
|
|
47
|
+
get cluster() {
|
|
48
|
+
return this._clusters.get(undefined);
|
|
49
|
+
}
|
|
50
|
+
async sol_getAccountInfo(...params) {
|
|
51
|
+
return await this.cluster.getAccountInfo(...params).send();
|
|
52
|
+
}
|
|
53
|
+
async sol_getBalance(...params) {
|
|
54
|
+
return await this.cluster.getBalance(...params).send();
|
|
55
|
+
}
|
|
56
|
+
async sol_getBlock(...params) {
|
|
57
|
+
return await this.cluster.getBlock(...params).send();
|
|
58
|
+
}
|
|
59
|
+
async sol_getBlockCommitment(...params) {
|
|
60
|
+
return await this.cluster.getBlockCommitment(...params).send();
|
|
61
|
+
}
|
|
62
|
+
async sol_getBlockHeight(...params) {
|
|
63
|
+
return await this.cluster.getBlockHeight(...params).send();
|
|
64
|
+
}
|
|
65
|
+
async sol_getBlockProduction(...params) {
|
|
66
|
+
return await this.cluster.getBlockProduction(...params).send();
|
|
67
|
+
}
|
|
68
|
+
async sol_getBlocks(...params) {
|
|
69
|
+
return await this.cluster.getBlocks(...params).send();
|
|
70
|
+
}
|
|
71
|
+
async sol_getBlocksWithLimit(...params) {
|
|
72
|
+
return await this.cluster.getBlocksWithLimit(...params).send();
|
|
73
|
+
}
|
|
74
|
+
async sol_getBlockTime(...params) {
|
|
75
|
+
return await this.cluster.getBlockTime(...params).send();
|
|
76
|
+
}
|
|
77
|
+
async sol_getClusterNodes(...params) {
|
|
78
|
+
return await this.cluster.getClusterNodes(...params).send();
|
|
79
|
+
}
|
|
80
|
+
async sol_getEpochInfo(...params) {
|
|
81
|
+
return await this.cluster.getEpochInfo(...params).send();
|
|
82
|
+
}
|
|
83
|
+
async sol_getEpochSchedule(...params) {
|
|
84
|
+
return await this.cluster.getEpochSchedule(...params).send();
|
|
85
|
+
}
|
|
86
|
+
async sol_getFeeForMessage(...params) {
|
|
87
|
+
return await this.cluster.getFeeForMessage(...params).send();
|
|
88
|
+
}
|
|
89
|
+
async sol_getFirstAvailableBlock(...params) {
|
|
90
|
+
return await this.cluster.getFirstAvailableBlock(...params).send();
|
|
91
|
+
}
|
|
92
|
+
async sol_getGenesisHash(...params) {
|
|
93
|
+
return await this.cluster.getGenesisHash(...params).send();
|
|
94
|
+
}
|
|
95
|
+
async sol_getHealth(...params) {
|
|
96
|
+
return await this.cluster.getHealth(...params).send();
|
|
97
|
+
}
|
|
98
|
+
async sol_getHighestSnapshotSlot(...params) {
|
|
99
|
+
return await this.cluster.getHighestSnapshotSlot(...params).send();
|
|
100
|
+
}
|
|
101
|
+
async sol_getIdentity(...params) {
|
|
102
|
+
return await this.cluster.getIdentity(...params).send();
|
|
103
|
+
}
|
|
104
|
+
async sol_getInflationGovernor(...params) {
|
|
105
|
+
return await this.cluster.getInflationGovernor(...params).send();
|
|
106
|
+
}
|
|
107
|
+
async sol_getInflationRate(...params) {
|
|
108
|
+
return await this.cluster.getInflationRate(...params).send();
|
|
109
|
+
}
|
|
110
|
+
async sol_getInflationReward(...params) {
|
|
111
|
+
return await this.cluster.getInflationReward(...params).send();
|
|
112
|
+
}
|
|
113
|
+
async sol_getLargestAccounts(...params) {
|
|
114
|
+
return await this.cluster.getLargestAccounts(...params).send();
|
|
115
|
+
}
|
|
116
|
+
async sol_getLatestBlockhash(...params) {
|
|
117
|
+
return await this.cluster.getLatestBlockhash(...params).send();
|
|
118
|
+
}
|
|
119
|
+
async sol_getLeaderSchedule(...params) {
|
|
120
|
+
return await this.cluster.getLeaderSchedule(...params).send();
|
|
121
|
+
}
|
|
122
|
+
async sol_getMaxRetransmitSlot(...params) {
|
|
123
|
+
return await this.cluster.getMaxRetransmitSlot(...params).send();
|
|
124
|
+
}
|
|
125
|
+
async sol_getMaxShredInsertSlot(...params) {
|
|
126
|
+
return await this.cluster.getMaxShredInsertSlot(...params).send();
|
|
127
|
+
}
|
|
128
|
+
async sol_getMinimumBalanceForRentExemption(...params) {
|
|
129
|
+
return await this.cluster.getMinimumBalanceForRentExemption(...params).send();
|
|
130
|
+
}
|
|
131
|
+
async sol_getMultipleAccounts(...params) {
|
|
132
|
+
return await this.cluster.getMultipleAccounts(...params).send();
|
|
133
|
+
}
|
|
134
|
+
async sol_getProgramAccounts(...params) {
|
|
135
|
+
return await this.cluster.getProgramAccounts(...params).send();
|
|
136
|
+
}
|
|
137
|
+
async sol_getRecentPerformanceSamples(...params) {
|
|
138
|
+
return await this.cluster.getRecentPerformanceSamples(...params).send();
|
|
139
|
+
}
|
|
140
|
+
async sol_getRecentPrioritizationFees(...params) {
|
|
141
|
+
return await this.cluster.getRecentPrioritizationFees(...params).send();
|
|
142
|
+
}
|
|
143
|
+
async sol_getSignaturesForAddress(...params) {
|
|
144
|
+
return await this.cluster.getSignaturesForAddress(...params).send();
|
|
145
|
+
}
|
|
146
|
+
async sol_getSignatureStatuses(...params) {
|
|
147
|
+
return await this.cluster.getSignatureStatuses(...params).send();
|
|
148
|
+
}
|
|
149
|
+
async sol_getSlot(...params) {
|
|
150
|
+
return await this.cluster.getSlot(...params).send();
|
|
151
|
+
}
|
|
152
|
+
async sol_getSlotLeader(...params) {
|
|
153
|
+
return await this.cluster.getSlotLeader(...params).send();
|
|
154
|
+
}
|
|
155
|
+
async sol_getSlotLeaders(...params) {
|
|
156
|
+
return await this.cluster.getSlotLeaders(...params).send();
|
|
157
|
+
}
|
|
158
|
+
async sol_getSupply(...params) {
|
|
159
|
+
return await this.cluster.getSupply(...params).send();
|
|
160
|
+
}
|
|
161
|
+
async sol_getTokenAccountBalance(...params) {
|
|
162
|
+
return await this.cluster.getTokenAccountBalance(...params).send();
|
|
163
|
+
}
|
|
164
|
+
async sol_getTokenAccountsByDelegate(...params) {
|
|
165
|
+
return await this.cluster.getTokenAccountsByDelegate(...params).send();
|
|
166
|
+
}
|
|
167
|
+
async sol_getTokenAccountsByOwner(...params) {
|
|
168
|
+
return await this.cluster.getTokenAccountsByOwner(...params).send();
|
|
169
|
+
}
|
|
170
|
+
async sol_getTokenLargestAccounts(...params) {
|
|
171
|
+
return await this.cluster.getTokenLargestAccounts(...params).send();
|
|
172
|
+
}
|
|
173
|
+
async sol_getTokenSupply(...params) {
|
|
174
|
+
return await this.cluster.getTokenSupply(...params).send();
|
|
175
|
+
}
|
|
176
|
+
async sol_getTransaction(...params) {
|
|
177
|
+
return await this.cluster.getTransaction(...params).send();
|
|
178
|
+
}
|
|
179
|
+
async sol_getTransactionCount(...params) {
|
|
180
|
+
return await this.cluster.getTransactionCount(...params).send();
|
|
181
|
+
}
|
|
182
|
+
async sol_getVersion(...params) {
|
|
183
|
+
return await this.cluster.getVersion(...params).send();
|
|
184
|
+
}
|
|
185
|
+
async sol_getVoteAccounts(...params) {
|
|
186
|
+
return await this.cluster.getVoteAccounts(...params).send();
|
|
187
|
+
}
|
|
188
|
+
async sol_isBlockhashValid(...params) {
|
|
189
|
+
return await this.cluster.isBlockhashValid(...params).send();
|
|
190
|
+
}
|
|
191
|
+
async sol_minimumLedgerSlot(...params) {
|
|
192
|
+
return await this.cluster.minimumLedgerSlot(...params).send();
|
|
193
|
+
}
|
|
194
|
+
async sol_sendTransaction(...params) {
|
|
195
|
+
return await this.cluster.sendTransaction(...params).send();
|
|
196
|
+
}
|
|
197
|
+
async sol_simulateTransaction(...params) {
|
|
198
|
+
return await this.cluster.simulateTransaction(...params).send();
|
|
199
|
+
}
|
|
200
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
// Copyright (c) 2025, Circle Internet Group, Inc.
|
|
2
|
+
// All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Circle Internet Group, Inc. CONFIDENTIAL
|
|
5
|
+
//
|
|
6
|
+
// This file includes unpublished proprietary source code of Circle Internet
|
|
7
|
+
// Group, Inc. The copyright notice above does not
|
|
8
|
+
// evidence any actual or intended publication of such source code. Disclosure
|
|
9
|
+
// of this source code or any related proprietary information is strictly
|
|
10
|
+
// prohibited without the express written permission of Circle Internet Group, Inc.
|
|
11
|
+
import { createSolanaRpc, address, signature, blockhash } from '@solana/kit';
|
|
12
|
+
import { describe, expect, it, vi, beforeEach } from 'vitest';
|
|
13
|
+
import * as mod from './index.js';
|
|
14
|
+
import { Provider } from './index.js';
|
|
15
|
+
// Mock @solana/kit
|
|
16
|
+
vi.mock('@solana/kit', async (importOriginal) => ({
|
|
17
|
+
...(await importOriginal()),
|
|
18
|
+
createSolanaRpc: vi.fn(() => ({})),
|
|
19
|
+
}));
|
|
20
|
+
describe('solana transports index', () => {
|
|
21
|
+
beforeEach(() => {
|
|
22
|
+
vi.resetAllMocks();
|
|
23
|
+
});
|
|
24
|
+
it('should export http function', () => {
|
|
25
|
+
expect(mod.http).toBeDefined();
|
|
26
|
+
expect(mod.http).toEqual(expect.any(Function));
|
|
27
|
+
});
|
|
28
|
+
it('should export Provider class', () => {
|
|
29
|
+
expect(mod.Provider).toBeDefined();
|
|
30
|
+
expect(mod.Provider).toEqual(expect.any(Function));
|
|
31
|
+
});
|
|
32
|
+
describe('Provider class', () => {
|
|
33
|
+
it('should be instantiable', () => {
|
|
34
|
+
const provider = new Provider({});
|
|
35
|
+
expect(provider).toBeDefined();
|
|
36
|
+
expect(provider).toBeInstanceOf(Provider);
|
|
37
|
+
});
|
|
38
|
+
it('should initialize with default clusters', () => {
|
|
39
|
+
new Provider({});
|
|
40
|
+
expect(createSolanaRpc).toHaveBeenCalledWith('https://api.devnet.solana.com');
|
|
41
|
+
expect(createSolanaRpc).toHaveBeenCalledWith('https://api.mainnet-beta.solana.com');
|
|
42
|
+
expect(createSolanaRpc).toHaveBeenCalledTimes(2);
|
|
43
|
+
});
|
|
44
|
+
it('should initialize with custom clusters', () => {
|
|
45
|
+
const clusters = {
|
|
46
|
+
devnet: createSolanaRpc('https://api.devnet.solana.com'),
|
|
47
|
+
'mainnet-beta': createSolanaRpc('https://api.mainnet-beta.solana.com'),
|
|
48
|
+
};
|
|
49
|
+
new Provider({ clusters });
|
|
50
|
+
expect(createSolanaRpc).toHaveBeenCalledWith('https://api.mainnet-beta.solana.com');
|
|
51
|
+
expect(createSolanaRpc).toHaveBeenCalledWith('https://api.devnet.solana.com');
|
|
52
|
+
expect(createSolanaRpc).toHaveBeenCalledTimes(2);
|
|
53
|
+
});
|
|
54
|
+
it('should initialize with single cluster', () => {
|
|
55
|
+
const clusters = {
|
|
56
|
+
'mainnet-beta': createSolanaRpc('https://api.mainnet-beta.solana.com'),
|
|
57
|
+
};
|
|
58
|
+
new Provider({ clusters });
|
|
59
|
+
expect(createSolanaRpc).toHaveBeenCalledWith('https://api.mainnet-beta.solana.com');
|
|
60
|
+
expect(createSolanaRpc).toHaveBeenCalledTimes(1);
|
|
61
|
+
});
|
|
62
|
+
describe('Cluster switching', () => {
|
|
63
|
+
it('should switch to devnet cluster', async () => {
|
|
64
|
+
const devnetRpc = createSolanaRpc('https://api.devnet.solana.com');
|
|
65
|
+
const mainnetRpc = createSolanaRpc('https://api.mainnet-beta.solana.com');
|
|
66
|
+
const provider = new Provider({
|
|
67
|
+
clusters: {
|
|
68
|
+
devnet: devnetRpc,
|
|
69
|
+
'mainnet-beta': mainnetRpc,
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
const result = await provider.request({ method: 'sol_switchCluster', params: ['devnet'] });
|
|
73
|
+
expect(result).toBe(devnetRpc);
|
|
74
|
+
});
|
|
75
|
+
it('should switch to mainnet-beta cluster', async () => {
|
|
76
|
+
const devnetRpc = createSolanaRpc('https://api.devnet.solana.com');
|
|
77
|
+
const mainnetRpc = createSolanaRpc('https://api.mainnet-beta.solana.com');
|
|
78
|
+
const provider = new Provider({
|
|
79
|
+
clusters: {
|
|
80
|
+
devnet: devnetRpc,
|
|
81
|
+
'mainnet-beta': mainnetRpc,
|
|
82
|
+
},
|
|
83
|
+
});
|
|
84
|
+
const result = await provider.request({ method: 'sol_switchCluster', params: ['mainnet-beta'] });
|
|
85
|
+
expect(result).toBe(mainnetRpc);
|
|
86
|
+
});
|
|
87
|
+
it.each([
|
|
88
|
+
[
|
|
89
|
+
{
|
|
90
|
+
devnet: createSolanaRpc('https://api.devnet.solana.com'),
|
|
91
|
+
},
|
|
92
|
+
'mainnet-beta',
|
|
93
|
+
],
|
|
94
|
+
[
|
|
95
|
+
{
|
|
96
|
+
'mainnet-beta': createSolanaRpc('https://api.mainnet-beta.solana.com'),
|
|
97
|
+
},
|
|
98
|
+
'devnet',
|
|
99
|
+
],
|
|
100
|
+
])('should throw error when switching to non-existent cluster (%s)', async (clusters, targetCluster) => {
|
|
101
|
+
const provider = new Provider({ clusters });
|
|
102
|
+
await expect(provider.request({ method: 'sol_switchCluster', params: [targetCluster] })).rejects.toThrow(`Cluster '${targetCluster}' not found`);
|
|
103
|
+
});
|
|
104
|
+
it('should return current cluster name', async () => {
|
|
105
|
+
const devnetRpc = createSolanaRpc('https://api.devnet.solana.com');
|
|
106
|
+
const mainnetRpc = createSolanaRpc('https://api.mainnet-beta.solana.com');
|
|
107
|
+
const provider = new Provider({
|
|
108
|
+
clusters: {
|
|
109
|
+
devnet: devnetRpc,
|
|
110
|
+
'mainnet-beta': mainnetRpc,
|
|
111
|
+
},
|
|
112
|
+
});
|
|
113
|
+
// Initially should be the first cluster (devnet)
|
|
114
|
+
expect(await provider.request({ method: 'sol_getClusterName', params: [] })).toBe('devnet');
|
|
115
|
+
// Switch to mainnet and verify
|
|
116
|
+
await provider.request({ method: 'sol_switchCluster', params: ['mainnet-beta'] });
|
|
117
|
+
expect(await provider.request({ method: 'sol_getClusterName', params: [] })).toBe('mainnet-beta');
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
it.each([
|
|
121
|
+
[
|
|
122
|
+
'sol_getAccountInfo',
|
|
123
|
+
'getAccountInfo',
|
|
124
|
+
[address('SysvarC1ock11111111111111111111111111111111')],
|
|
125
|
+
{ owner: 'test', lamports: 1000 },
|
|
126
|
+
],
|
|
127
|
+
['sol_getBalance', 'getBalance', [address('SysvarC1ock11111111111111111111111111111111')], { value: 1000000000 }],
|
|
128
|
+
[
|
|
129
|
+
'sol_sendTransaction',
|
|
130
|
+
'sendTransaction',
|
|
131
|
+
['encoded-transaction'],
|
|
132
|
+
'transaction-signature',
|
|
133
|
+
],
|
|
134
|
+
['sol_getVersion', 'getVersion', [], { 'solana-core': '1.16.0' }],
|
|
135
|
+
[
|
|
136
|
+
'sol_simulateTransaction',
|
|
137
|
+
'simulateTransaction',
|
|
138
|
+
['encoded-transaction', {}],
|
|
139
|
+
{ err: null, logs: [], unitsConsumed: 5000 },
|
|
140
|
+
],
|
|
141
|
+
['sol_getBlockHeight', 'getBlockHeight', [], 54321],
|
|
142
|
+
['sol_getBlockProduction', 'getBlockProduction', [], { byIdentity: {} }],
|
|
143
|
+
['sol_getClusterNodes', 'getClusterNodes', [], []],
|
|
144
|
+
['sol_getEpochInfo', 'getEpochInfo', [], { epoch: 123 }],
|
|
145
|
+
['sol_getEpochSchedule', 'getEpochSchedule', [], { slotsPerEpoch: 432000 }],
|
|
146
|
+
['sol_getFirstAvailableBlock', 'getFirstAvailableBlock', [], 1],
|
|
147
|
+
['sol_getGenesisHash', 'getGenesisHash', [], 'genesis-hash'],
|
|
148
|
+
['sol_getHealth', 'getHealth', [], 'ok'],
|
|
149
|
+
['sol_getHighestSnapshotSlot', 'getHighestSnapshotSlot', [], { full: 12345 }],
|
|
150
|
+
['sol_getIdentity', 'getIdentity', [], { identity: 'node-identity' }],
|
|
151
|
+
['sol_getInflationGovernor', 'getInflationGovernor', [], { initial: 0.15 }],
|
|
152
|
+
['sol_getInflationRate', 'getInflationRate', [], { total: 0.08 }],
|
|
153
|
+
['sol_getLargestAccounts', 'getLargestAccounts', [], { value: [] }],
|
|
154
|
+
['sol_getLatestBlockhash', 'getLatestBlockhash', [], { value: { blockhash: 'latest-hash' } }],
|
|
155
|
+
['sol_getLeaderSchedule', 'getLeaderSchedule', [], {}],
|
|
156
|
+
['sol_getMaxRetransmitSlot', 'getMaxRetransmitSlot', [], 12345],
|
|
157
|
+
['sol_getMaxShredInsertSlot', 'getMaxShredInsertSlot', [], 12346],
|
|
158
|
+
['sol_getRecentPerformanceSamples', 'getRecentPerformanceSamples', [], []],
|
|
159
|
+
['sol_getRecentPrioritizationFees', 'getRecentPrioritizationFees', [], []],
|
|
160
|
+
['sol_getSlot', 'getSlot', [], 12345],
|
|
161
|
+
['sol_getSlotLeader', 'getSlotLeader', [], 'slot-leader'],
|
|
162
|
+
['sol_getSupply', 'getSupply', [], { value: { total: 1000000000 } }],
|
|
163
|
+
['sol_getTransactionCount', 'getTransactionCount', [], 54321],
|
|
164
|
+
['sol_getVoteAccounts', 'getVoteAccounts', [], { current: [], delinquent: [] }],
|
|
165
|
+
['sol_minimumLedgerSlot', 'minimumLedgerSlot', [], 1],
|
|
166
|
+
['sol_getBlock', 'getBlock', [12345n], { slot: 12345 }],
|
|
167
|
+
['sol_getBlockCommitment', 'getBlockCommitment', [12345n], { commitment: [10, 15, 20] }],
|
|
168
|
+
['sol_getBlockTime', 'getBlockTime', [12345n], 1234567890],
|
|
169
|
+
['sol_getMinimumBalanceForRentExemption', 'getMinimumBalanceForRentExemption', [128n], { value: 890880 }],
|
|
170
|
+
['sol_getBlocks', 'getBlocks', [1n, 100n], [1, 2, 3]],
|
|
171
|
+
['sol_getBlocksWithLimit', 'getBlocksWithLimit', [1n, 10], [1, 2, 3]],
|
|
172
|
+
['sol_getSlotLeaders', 'getSlotLeaders', [1n, 10], []],
|
|
173
|
+
[
|
|
174
|
+
'sol_getTokenAccountBalance',
|
|
175
|
+
'getTokenAccountBalance',
|
|
176
|
+
[address('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v')],
|
|
177
|
+
{ value: { amount: '1000' } },
|
|
178
|
+
],
|
|
179
|
+
['sol_getProgramAccounts', 'getProgramAccounts', [address('SysvarC1ock11111111111111111111111111111111')], []],
|
|
180
|
+
[
|
|
181
|
+
'sol_getSignaturesForAddress',
|
|
182
|
+
'getSignaturesForAddress',
|
|
183
|
+
[address('EvN4kgKmCmYzdbd5kL8Q8YgkUW5RoqMTpBczrfLExtx7')],
|
|
184
|
+
[],
|
|
185
|
+
],
|
|
186
|
+
[
|
|
187
|
+
'sol_getTokenLargestAccounts',
|
|
188
|
+
'getTokenLargestAccounts',
|
|
189
|
+
[address('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v')],
|
|
190
|
+
{ value: [] },
|
|
191
|
+
],
|
|
192
|
+
[
|
|
193
|
+
'sol_getTokenSupply',
|
|
194
|
+
'getTokenSupply',
|
|
195
|
+
[address('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v')],
|
|
196
|
+
{ value: { amount: '1000000' } },
|
|
197
|
+
],
|
|
198
|
+
[
|
|
199
|
+
'sol_getInflationReward',
|
|
200
|
+
'getInflationReward',
|
|
201
|
+
[[address('EvN4kgKmCmYzdbd5kL8Q8YgkUW5RoqMTpBczrfLExtx7')]],
|
|
202
|
+
[{ amount: 1000 }],
|
|
203
|
+
],
|
|
204
|
+
[
|
|
205
|
+
'sol_getMultipleAccounts',
|
|
206
|
+
'getMultipleAccounts',
|
|
207
|
+
[[address('EvN4kgKmCmYzdbd5kL8Q8YgkUW5RoqMTpBczrfLExtx7')]],
|
|
208
|
+
{ value: [] },
|
|
209
|
+
],
|
|
210
|
+
[
|
|
211
|
+
'sol_getSignatureStatuses',
|
|
212
|
+
'getSignatureStatuses',
|
|
213
|
+
[[signature('5uP3hpCqaGKrzJzGgQ9oAhcLmqjrHWLZBZRzNGJCFhJnHJjhDDkVMvFvLPWmKYPL5Yjds1VLwFbCPfz7hKvdLLXu')]],
|
|
214
|
+
{ value: [] },
|
|
215
|
+
],
|
|
216
|
+
[
|
|
217
|
+
'sol_getFeeForMessage',
|
|
218
|
+
'getFeeForMessage',
|
|
219
|
+
['encoded-message'],
|
|
220
|
+
{ value: 5000 },
|
|
221
|
+
],
|
|
222
|
+
[
|
|
223
|
+
'sol_getTokenAccountsByDelegate',
|
|
224
|
+
'getTokenAccountsByDelegate',
|
|
225
|
+
[
|
|
226
|
+
address('EvN4kgKmCmYzdbd5kL8Q8YgkUW5RoqMTpBczrfLExtx7'),
|
|
227
|
+
{ mint: address('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v') },
|
|
228
|
+
],
|
|
229
|
+
{ value: [] },
|
|
230
|
+
],
|
|
231
|
+
[
|
|
232
|
+
'sol_getTokenAccountsByOwner',
|
|
233
|
+
'getTokenAccountsByOwner',
|
|
234
|
+
[
|
|
235
|
+
address('EvN4kgKmCmYzdbd5kL8Q8YgkUW5RoqMTpBczrfLExtx7'),
|
|
236
|
+
{ mint: address('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v') },
|
|
237
|
+
],
|
|
238
|
+
{ value: [] },
|
|
239
|
+
],
|
|
240
|
+
[
|
|
241
|
+
'sol_getTransaction',
|
|
242
|
+
'getTransaction',
|
|
243
|
+
[signature('5uP3hpCqaGKrzJzGgQ9oAhcLmqjrHWLZBZRzNGJCFhJnHJjhDDkVMvFvLPWmKYPL5Yjds1VLwFbCPfz7hKvdLLXu')],
|
|
244
|
+
{ slot: 12345 },
|
|
245
|
+
],
|
|
246
|
+
[
|
|
247
|
+
'sol_isBlockhashValid',
|
|
248
|
+
'isBlockhashValid',
|
|
249
|
+
[blockhash('5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d')],
|
|
250
|
+
{ value: true },
|
|
251
|
+
],
|
|
252
|
+
])('should implement %s', async (method, solRpcMethodName, params, expected) => {
|
|
253
|
+
const solRpcMethod = vi.fn(() => ({ send: vi.fn(() => expected) }));
|
|
254
|
+
vi.mocked(createSolanaRpc).mockReturnValue({ [solRpcMethodName]: solRpcMethod });
|
|
255
|
+
const testProvider = new Provider({});
|
|
256
|
+
const result = await testProvider.request({ method, params: [...params] });
|
|
257
|
+
expect(solRpcMethod).toHaveBeenCalledWith(...params);
|
|
258
|
+
expect(result).toEqual(expected);
|
|
259
|
+
});
|
|
260
|
+
it('should throw error when clusters object is empty', () => {
|
|
261
|
+
expect(() => new Provider({ clusters: {} })).toThrow();
|
|
262
|
+
});
|
|
263
|
+
it.each([
|
|
264
|
+
['devnet', 'https://custom-devnet.solana.com'],
|
|
265
|
+
['mainnet-beta', 'https://custom-mainnet.solana.com'],
|
|
266
|
+
])('should handle clusters with only %s', async (expectedClusterId, url) => {
|
|
267
|
+
const clusters = { [expectedClusterId]: createSolanaRpc(url) };
|
|
268
|
+
const provider = new Provider({ clusters });
|
|
269
|
+
expect(await provider.request({ method: 'sol_getClusterName', params: [] })).toBe(expectedClusterId);
|
|
270
|
+
});
|
|
271
|
+
});
|
|
272
|
+
});
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const bytesToBase58: (bytes: import("@solana/kit").ReadonlyUint8Array | Uint8Array, offset?: import("@solana/kit").Offset) => string;
|
|
2
|
+
export declare const bytesToBase64: (bytes: import("@solana/kit").ReadonlyUint8Array | Uint8Array, offset?: import("@solana/kit").Offset) => string;
|
|
3
|
+
export declare const base58ToBytes: (value: string) => import("@solana/kit").ReadonlyUint8Array;
|
|
4
|
+
export declare const base64ToBytes: (value: string) => import("@solana/kit").ReadonlyUint8Array;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Copyright (c) 2025, Circle Internet Group, Inc.
|
|
2
|
+
// All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Circle Internet Group, Inc. CONFIDENTIAL
|
|
5
|
+
//
|
|
6
|
+
// This file includes unpublished proprietary source code of Circle Internet
|
|
7
|
+
// Group, Inc. The copyright notice above does not
|
|
8
|
+
// evidence any actual or intended publication of such source code. Disclosure
|
|
9
|
+
// of this source code or any related proprietary information is strictly
|
|
10
|
+
// prohibited without the express written permission of Circle Internet Group, Inc.
|
|
11
|
+
import { getBase58Codec, getBase64Codec } from '@solana/kit';
|
|
12
|
+
const base58 = getBase58Codec();
|
|
13
|
+
const base64 = getBase64Codec();
|
|
14
|
+
export const bytesToBase58 = base58.decode;
|
|
15
|
+
export const bytesToBase64 = base64.decode;
|
|
16
|
+
export const base58ToBytes = base58.encode;
|
|
17
|
+
export const base64ToBytes = base64.encode;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Copyright (c) 2025, Circle Internet Group, Inc.
|
|
2
|
+
// All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Circle Internet Group, Inc. CONFIDENTIAL
|
|
5
|
+
//
|
|
6
|
+
// This file includes unpublished proprietary source code of Circle Internet
|
|
7
|
+
// Group, Inc. The copyright notice above does not
|
|
8
|
+
// evidence any actual or intended publication of such source code. Disclosure
|
|
9
|
+
// of this source code or any related proprietary information is strictly
|
|
10
|
+
// prohibited without the express written permission of Circle Internet Group, Inc.
|
|
11
|
+
export * from './codecs.js';
|
|
12
|
+
export { toBase64EncodedWireTransaction } from './toBase64EncodedWireTransaction.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// Copyright (c) 2025, Circle Internet Group, Inc.
|
|
2
|
+
// All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Circle Internet Group, Inc. CONFIDENTIAL
|
|
5
|
+
//
|
|
6
|
+
// This file includes unpublished proprietary source code of Circle Internet
|
|
7
|
+
// Group, Inc. The copyright notice above does not
|
|
8
|
+
// evidence any actual or intended publication of such source code. Disclosure
|
|
9
|
+
// of this source code or any related proprietary information is strictly
|
|
10
|
+
// prohibited without the express written permission of Circle Internet Group, Inc.
|
|
11
|
+
import { describe, expect, it } from 'vitest';
|
|
12
|
+
import { toBase64EncodedWireTransaction } from './toBase64EncodedWireTransaction.js';
|
|
13
|
+
import * as utils from './index.js';
|
|
14
|
+
describe('index', () => {
|
|
15
|
+
it.each([toBase64EncodedWireTransaction])('should export %s as a function', (fn) => {
|
|
16
|
+
expect(utils[fn.name]).toBe(fn);
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { Base64EncodedWireTransaction } from '@solana/kit';
|
|
2
|
+
/**
|
|
3
|
+
* Converts various transaction formats to a Base64-encoded wire transaction.
|
|
4
|
+
*
|
|
5
|
+
* This utility function handles the conversion of different transaction input types
|
|
6
|
+
* (Buffer, string, or already encoded Base64EncodedWireTransaction) into a consistent
|
|
7
|
+
* Base64EncodedWireTransaction format that can be used with Solana RPC methods.
|
|
8
|
+
*
|
|
9
|
+
* @param tx - The transaction to convert. Can be:
|
|
10
|
+
* - Buffer: Raw transaction bytes that will be converted to base64
|
|
11
|
+
* - string: Already base64-encoded transaction string
|
|
12
|
+
* - Base64EncodedWireTransaction: Already properly typed, returned as-is
|
|
13
|
+
* @returns Base64-encoded wire transaction ready for RPC submission
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* // Convert Buffer to base64
|
|
18
|
+
* const txBuffer = Buffer.from([1, 2, 3]);
|
|
19
|
+
* const base64Tx = toBase64EncodedWireTransaction(txBuffer);
|
|
20
|
+
*
|
|
21
|
+
* // Pass through already encoded string
|
|
22
|
+
* const encodedTx = "SGVsbG8gV29ybGQ=";
|
|
23
|
+
* const result = toBase64EncodedWireTransaction(encodedTx);
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function toBase64EncodedWireTransaction(tx: string | Buffer | Base64EncodedWireTransaction): Base64EncodedWireTransaction;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// Copyright (c) 2025, Circle Internet Group, Inc.
|
|
2
|
+
// All rights reserved.
|
|
3
|
+
//
|
|
4
|
+
// Circle Internet Group, Inc. CONFIDENTIAL
|
|
5
|
+
//
|
|
6
|
+
// This file includes unpublished proprietary source code of Circle Internet
|
|
7
|
+
// Group, Inc. The copyright notice above does not
|
|
8
|
+
// evidence any actual or intended publication of such source code. Disclosure
|
|
9
|
+
// of this source code or any related proprietary information is strictly
|
|
10
|
+
// prohibited without the express written permission of Circle Internet Group, Inc.
|
|
11
|
+
/**
|
|
12
|
+
* Converts various transaction formats to a Base64-encoded wire transaction.
|
|
13
|
+
*
|
|
14
|
+
* This utility function handles the conversion of different transaction input types
|
|
15
|
+
* (Buffer, string, or already encoded Base64EncodedWireTransaction) into a consistent
|
|
16
|
+
* Base64EncodedWireTransaction format that can be used with Solana RPC methods.
|
|
17
|
+
*
|
|
18
|
+
* @param tx - The transaction to convert. Can be:
|
|
19
|
+
* - Buffer: Raw transaction bytes that will be converted to base64
|
|
20
|
+
* - string: Already base64-encoded transaction string
|
|
21
|
+
* - Base64EncodedWireTransaction: Already properly typed, returned as-is
|
|
22
|
+
* @returns Base64-encoded wire transaction ready for RPC submission
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* // Convert Buffer to base64
|
|
27
|
+
* const txBuffer = Buffer.from([1, 2, 3]);
|
|
28
|
+
* const base64Tx = toBase64EncodedWireTransaction(txBuffer);
|
|
29
|
+
*
|
|
30
|
+
* // Pass through already encoded string
|
|
31
|
+
* const encodedTx = "SGVsbG8gV29ybGQ=";
|
|
32
|
+
* const result = toBase64EncodedWireTransaction(encodedTx);
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
export function toBase64EncodedWireTransaction(tx) {
|
|
36
|
+
if (tx instanceof Buffer)
|
|
37
|
+
tx = tx.toString('base64');
|
|
38
|
+
return tx;
|
|
39
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|