viem 0.3.0 → 0.3.2
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/ens/getEnsAddress.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsAvatar.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsName.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsResolver.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsText.js.map +1 -1
- package/dist/cjs/actions/getContract.js.map +1 -1
- package/dist/cjs/actions/public/estimateContractGas.js.map +1 -1
- package/dist/cjs/actions/public/getBalance.js.map +1 -1
- package/dist/cjs/actions/public/getFilterChanges.js.map +1 -1
- package/dist/cjs/actions/public/getFilterLogs.js.map +1 -1
- package/dist/cjs/actions/public/getLogs.js.map +1 -1
- package/dist/cjs/actions/public/readContract.js.map +1 -1
- package/dist/cjs/actions/public/simulateContract.js.map +1 -1
- package/dist/cjs/actions/public/uninstallFilter.js.map +1 -1
- package/dist/cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
- package/dist/cjs/actions/public/watchContractEvent.js.map +1 -1
- package/dist/cjs/actions/public/watchEvent.js.map +1 -1
- package/dist/cjs/actions/public/watchPendingTransactions.js.map +1 -1
- package/dist/cjs/actions/test/dropTransaction.js.map +1 -1
- package/dist/cjs/actions/test/getAutomine.js.map +1 -1
- package/dist/cjs/actions/test/getTxpoolContent.js.map +1 -1
- package/dist/cjs/actions/test/getTxpoolStatus.js.map +1 -1
- package/dist/cjs/actions/test/impersonateAccount.js.map +1 -1
- package/dist/cjs/actions/test/increaseTime.js.map +1 -1
- package/dist/cjs/actions/test/inspectTxpool.js.map +1 -1
- package/dist/cjs/actions/test/mine.js.map +1 -1
- package/dist/cjs/actions/test/removeBlockTimestampInterval.js.map +1 -1
- package/dist/cjs/actions/test/reset.js.map +1 -1
- package/dist/cjs/actions/test/revert.js.map +1 -1
- package/dist/cjs/actions/test/sendUnsignedTransaction.js.map +1 -1
- package/dist/cjs/actions/test/setAutomine.js.map +1 -1
- package/dist/cjs/actions/test/setBalance.js.map +1 -1
- package/dist/cjs/actions/test/setBlockGasLimit.js.map +1 -1
- package/dist/cjs/actions/test/setBlockTimestampInterval.js.map +1 -1
- package/dist/cjs/actions/test/setCode.js.map +1 -1
- package/dist/cjs/actions/test/setCoinbase.js.map +1 -1
- package/dist/cjs/actions/test/setIntervalMining.js.map +1 -1
- package/dist/cjs/actions/test/setLoggingEnabled.js.map +1 -1
- package/dist/cjs/actions/test/setMinGasPrice.js.map +1 -1
- package/dist/cjs/actions/test/setNextBlockBaseFeePerGas.js.map +1 -1
- package/dist/cjs/actions/test/setNextBlockTimestamp.js.map +1 -1
- package/dist/cjs/actions/test/setNonce.js.map +1 -1
- package/dist/cjs/actions/test/setRpcUrl.js.map +1 -1
- package/dist/cjs/actions/test/setStorageAt.js.map +1 -1
- package/dist/cjs/actions/test/snapshot.js.map +1 -1
- package/dist/cjs/actions/test/stopImpersonatingAccount.js.map +1 -1
- package/dist/cjs/actions/wallet/addChain.js.map +1 -1
- package/dist/cjs/actions/wallet/getAddresses.js.map +1 -1
- package/dist/cjs/actions/wallet/getPermissions.js.map +1 -1
- package/dist/cjs/actions/wallet/requestAddresses.js.map +1 -1
- package/dist/cjs/actions/wallet/requestPermissions.js.map +1 -1
- package/dist/cjs/actions/wallet/sendTransaction.js.map +1 -1
- package/dist/cjs/actions/wallet/signMessage.js.map +1 -1
- package/dist/cjs/actions/wallet/signTypedData.js.map +1 -1
- package/dist/cjs/actions/wallet/switchChain.js.map +1 -1
- package/dist/cjs/actions/wallet/watchAsset.js.map +1 -1
- package/dist/cjs/actions/wallet/writeContract.js.map +1 -1
- package/dist/cjs/clients/createPublicClient.js.map +1 -1
- package/dist/cjs/clients/createTestClient.js.map +1 -1
- package/dist/cjs/clients/createWalletClient.js.map +1 -1
- package/dist/cjs/clients/decorators/test.js.map +1 -1
- package/dist/cjs/clients/decorators/wallet.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/index.js +2 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils/abi/getAbiItem.js.map +1 -1
- package/dist/cjs/utils/index.js +2 -1
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/rpc.js +3 -6
- package/dist/cjs/utils/rpc.js.map +1 -1
- package/dist/cjs/utils/signature/index.js +3 -1
- package/dist/cjs/utils/signature/index.js.map +1 -1
- package/dist/cjs/utils/signature/recoverAddress.js +2 -11
- package/dist/cjs/utils/signature/recoverAddress.js.map +1 -1
- package/dist/cjs/utils/signature/recoverPublicKey.js +18 -0
- package/dist/cjs/utils/signature/recoverPublicKey.js.map +1 -0
- package/dist/esm/actions/ens/getEnsAddress.js.map +1 -1
- package/dist/esm/actions/ens/getEnsAvatar.js.map +1 -1
- package/dist/esm/actions/ens/getEnsName.js.map +1 -1
- package/dist/esm/actions/ens/getEnsResolver.js.map +1 -1
- package/dist/esm/actions/ens/getEnsText.js.map +1 -1
- package/dist/esm/actions/getContract.js.map +1 -1
- package/dist/esm/actions/public/estimateContractGas.js.map +1 -1
- package/dist/esm/actions/public/getBalance.js.map +1 -1
- package/dist/esm/actions/public/getFilterChanges.js.map +1 -1
- package/dist/esm/actions/public/getFilterLogs.js.map +1 -1
- package/dist/esm/actions/public/getLogs.js.map +1 -1
- package/dist/esm/actions/public/readContract.js.map +1 -1
- package/dist/esm/actions/public/simulateContract.js.map +1 -1
- package/dist/esm/actions/public/uninstallFilter.js.map +1 -1
- package/dist/esm/actions/public/waitForTransactionReceipt.js.map +1 -1
- package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
- package/dist/esm/actions/public/watchEvent.js.map +1 -1
- package/dist/esm/actions/public/watchPendingTransactions.js.map +1 -1
- package/dist/esm/actions/test/dropTransaction.js.map +1 -1
- package/dist/esm/actions/test/getAutomine.js.map +1 -1
- package/dist/esm/actions/test/getTxpoolContent.js.map +1 -1
- package/dist/esm/actions/test/getTxpoolStatus.js.map +1 -1
- package/dist/esm/actions/test/impersonateAccount.js.map +1 -1
- package/dist/esm/actions/test/increaseTime.js.map +1 -1
- package/dist/esm/actions/test/inspectTxpool.js.map +1 -1
- package/dist/esm/actions/test/mine.js.map +1 -1
- package/dist/esm/actions/test/removeBlockTimestampInterval.js.map +1 -1
- package/dist/esm/actions/test/reset.js.map +1 -1
- package/dist/esm/actions/test/revert.js.map +1 -1
- package/dist/esm/actions/test/sendUnsignedTransaction.js.map +1 -1
- package/dist/esm/actions/test/setAutomine.js.map +1 -1
- package/dist/esm/actions/test/setBalance.js.map +1 -1
- package/dist/esm/actions/test/setBlockGasLimit.js.map +1 -1
- package/dist/esm/actions/test/setBlockTimestampInterval.js.map +1 -1
- package/dist/esm/actions/test/setCode.js.map +1 -1
- package/dist/esm/actions/test/setCoinbase.js.map +1 -1
- package/dist/esm/actions/test/setIntervalMining.js.map +1 -1
- package/dist/esm/actions/test/setLoggingEnabled.js.map +1 -1
- package/dist/esm/actions/test/setMinGasPrice.js.map +1 -1
- package/dist/esm/actions/test/setNextBlockBaseFeePerGas.js.map +1 -1
- package/dist/esm/actions/test/setNextBlockTimestamp.js.map +1 -1
- package/dist/esm/actions/test/setNonce.js.map +1 -1
- package/dist/esm/actions/test/setRpcUrl.js.map +1 -1
- package/dist/esm/actions/test/setStorageAt.js.map +1 -1
- package/dist/esm/actions/test/snapshot.js.map +1 -1
- package/dist/esm/actions/test/stopImpersonatingAccount.js.map +1 -1
- package/dist/esm/actions/wallet/addChain.js.map +1 -1
- package/dist/esm/actions/wallet/getAddresses.js.map +1 -1
- package/dist/esm/actions/wallet/getPermissions.js.map +1 -1
- package/dist/esm/actions/wallet/requestAddresses.js.map +1 -1
- package/dist/esm/actions/wallet/requestPermissions.js.map +1 -1
- package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
- package/dist/esm/actions/wallet/signMessage.js.map +1 -1
- package/dist/esm/actions/wallet/signTypedData.js.map +1 -1
- package/dist/esm/actions/wallet/switchChain.js.map +1 -1
- package/dist/esm/actions/wallet/watchAsset.js.map +1 -1
- package/dist/esm/actions/wallet/writeContract.js.map +1 -1
- package/dist/esm/clients/createPublicClient.js.map +1 -1
- package/dist/esm/clients/createTestClient.js.map +1 -1
- package/dist/esm/clients/createWalletClient.js.map +1 -1
- package/dist/esm/clients/decorators/test.js.map +1 -1
- package/dist/esm/clients/decorators/wallet.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/utils/abi/getAbiItem.js.map +1 -1
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/rpc.js +1 -1
- package/dist/esm/utils/rpc.js.map +1 -1
- package/dist/esm/utils/signature/index.js +1 -0
- package/dist/esm/utils/signature/index.js.map +1 -1
- package/dist/esm/utils/signature/recoverAddress.js +2 -11
- package/dist/esm/utils/signature/recoverAddress.js.map +1 -1
- package/dist/esm/utils/signature/recoverPublicKey.js +14 -0
- package/dist/esm/utils/signature/recoverPublicKey.js.map +1 -0
- package/dist/types/actions/ens/getEnsAddress.d.ts +0 -1
- package/dist/types/actions/ens/getEnsAddress.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsAvatar.d.ts +0 -1
- package/dist/types/actions/ens/getEnsAvatar.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsName.d.ts +0 -1
- package/dist/types/actions/ens/getEnsName.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsResolver.d.ts +0 -1
- package/dist/types/actions/ens/getEnsResolver.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsText.d.ts +0 -1
- package/dist/types/actions/ens/getEnsText.d.ts.map +1 -1
- package/dist/types/actions/getContract.d.ts +104 -2
- package/dist/types/actions/getContract.d.ts.map +1 -1
- package/dist/types/actions/public/estimateContractGas.d.ts +0 -1
- package/dist/types/actions/public/estimateContractGas.d.ts.map +1 -1
- package/dist/types/actions/public/getBalance.d.ts +0 -1
- package/dist/types/actions/public/getBalance.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterChanges.d.ts +0 -1
- package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterLogs.d.ts +0 -1
- package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
- package/dist/types/actions/public/getLogs.d.ts +2 -2
- package/dist/types/actions/public/getLogs.d.ts.map +1 -1
- package/dist/types/actions/public/readContract.d.ts +2 -3
- package/dist/types/actions/public/readContract.d.ts.map +1 -1
- package/dist/types/actions/public/simulateContract.d.ts +1 -2
- package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
- package/dist/types/actions/public/uninstallFilter.d.ts +0 -1
- package/dist/types/actions/public/uninstallFilter.d.ts.map +1 -1
- package/dist/types/actions/public/waitForTransactionReceipt.d.ts +0 -1
- package/dist/types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
- package/dist/types/actions/public/watchContractEvent.d.ts +0 -1
- package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
- package/dist/types/actions/public/watchEvent.d.ts +0 -1
- package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
- package/dist/types/actions/public/watchPendingTransactions.d.ts +0 -1
- package/dist/types/actions/public/watchPendingTransactions.d.ts.map +1 -1
- package/dist/types/actions/test/dropTransaction.d.ts +22 -0
- package/dist/types/actions/test/dropTransaction.d.ts.map +1 -1
- package/dist/types/actions/test/getAutomine.d.ts +20 -0
- package/dist/types/actions/test/getAutomine.d.ts.map +1 -1
- package/dist/types/actions/test/getTxpoolContent.d.ts +22 -0
- package/dist/types/actions/test/getTxpoolContent.d.ts.map +1 -1
- package/dist/types/actions/test/getTxpoolStatus.d.ts +20 -0
- package/dist/types/actions/test/getTxpoolStatus.d.ts.map +1 -1
- package/dist/types/actions/test/impersonateAccount.d.ts +22 -0
- package/dist/types/actions/test/impersonateAccount.d.ts.map +1 -1
- package/dist/types/actions/test/increaseTime.d.ts +22 -0
- package/dist/types/actions/test/increaseTime.d.ts.map +1 -1
- package/dist/types/actions/test/inspectTxpool.d.ts +20 -0
- package/dist/types/actions/test/inspectTxpool.d.ts.map +1 -1
- package/dist/types/actions/test/mine.d.ts +20 -0
- package/dist/types/actions/test/mine.d.ts.map +1 -1
- package/dist/types/actions/test/removeBlockTimestampInterval.d.ts +19 -0
- package/dist/types/actions/test/removeBlockTimestampInterval.d.ts.map +1 -1
- package/dist/types/actions/test/reset.d.ts +20 -0
- package/dist/types/actions/test/reset.d.ts.map +1 -1
- package/dist/types/actions/test/revert.d.ts +20 -0
- package/dist/types/actions/test/revert.d.ts.map +1 -1
- package/dist/types/actions/test/sendUnsignedTransaction.d.ts +25 -0
- package/dist/types/actions/test/sendUnsignedTransaction.d.ts.map +1 -1
- package/dist/types/actions/test/setAutomine.d.ts +19 -0
- package/dist/types/actions/test/setAutomine.d.ts.map +1 -1
- package/dist/types/actions/test/setBalance.d.ts +23 -0
- package/dist/types/actions/test/setBalance.d.ts.map +1 -1
- package/dist/types/actions/test/setBlockGasLimit.d.ts +20 -0
- package/dist/types/actions/test/setBlockGasLimit.d.ts.map +1 -1
- package/dist/types/actions/test/setBlockTimestampInterval.d.ts +20 -0
- package/dist/types/actions/test/setBlockTimestampInterval.d.ts.map +1 -1
- package/dist/types/actions/test/setCode.d.ts +23 -0
- package/dist/types/actions/test/setCode.d.ts.map +1 -1
- package/dist/types/actions/test/setCoinbase.d.ts +22 -0
- package/dist/types/actions/test/setCoinbase.d.ts.map +1 -1
- package/dist/types/actions/test/setIntervalMining.d.ts +20 -0
- package/dist/types/actions/test/setIntervalMining.d.ts.map +1 -1
- package/dist/types/actions/test/setLoggingEnabled.d.ts +19 -0
- package/dist/types/actions/test/setLoggingEnabled.d.ts.map +1 -1
- package/dist/types/actions/test/setMinGasPrice.d.ts +24 -0
- package/dist/types/actions/test/setMinGasPrice.d.ts.map +1 -1
- package/dist/types/actions/test/setNextBlockBaseFeePerGas.d.ts +22 -0
- package/dist/types/actions/test/setNextBlockBaseFeePerGas.d.ts.map +1 -1
- package/dist/types/actions/test/setNextBlockTimestamp.d.ts +20 -0
- package/dist/types/actions/test/setNextBlockTimestamp.d.ts.map +1 -1
- package/dist/types/actions/test/setNonce.d.ts +23 -0
- package/dist/types/actions/test/setNonce.d.ts.map +1 -1
- package/dist/types/actions/test/setRpcUrl.d.ts +20 -0
- package/dist/types/actions/test/setRpcUrl.d.ts.map +1 -1
- package/dist/types/actions/test/setStorageAt.d.ts +24 -0
- package/dist/types/actions/test/setStorageAt.d.ts.map +1 -1
- package/dist/types/actions/test/snapshot.d.ts +19 -0
- package/dist/types/actions/test/snapshot.d.ts.map +1 -1
- package/dist/types/actions/test/stopImpersonatingAccount.d.ts +22 -0
- package/dist/types/actions/test/stopImpersonatingAccount.d.ts.map +1 -1
- package/dist/types/actions/wallet/addChain.d.ts +20 -0
- package/dist/types/actions/wallet/addChain.d.ts.map +1 -1
- package/dist/types/actions/wallet/deployContract.d.ts +1 -1
- package/dist/types/actions/wallet/getAddresses.d.ts +20 -0
- package/dist/types/actions/wallet/getAddresses.d.ts.map +1 -1
- package/dist/types/actions/wallet/getPermissions.d.ts +20 -0
- package/dist/types/actions/wallet/getPermissions.d.ts.map +1 -1
- package/dist/types/actions/wallet/requestAddresses.d.ts +24 -0
- package/dist/types/actions/wallet/requestAddresses.d.ts.map +1 -1
- package/dist/types/actions/wallet/requestPermissions.d.ts +26 -3
- package/dist/types/actions/wallet/requestPermissions.d.ts.map +1 -1
- package/dist/types/actions/wallet/sendTransaction.d.ts +45 -0
- package/dist/types/actions/wallet/sendTransaction.d.ts.map +1 -1
- package/dist/types/actions/wallet/signMessage.d.ts +46 -0
- package/dist/types/actions/wallet/signMessage.d.ts.map +1 -1
- package/dist/types/actions/wallet/signTypedData.d.ts +98 -0
- package/dist/types/actions/wallet/signTypedData.d.ts.map +1 -1
- package/dist/types/actions/wallet/switchChain.d.ts +21 -0
- package/dist/types/actions/wallet/switchChain.d.ts.map +1 -1
- package/dist/types/actions/wallet/watchAsset.d.ts +28 -0
- package/dist/types/actions/wallet/watchAsset.d.ts.map +1 -1
- package/dist/types/actions/wallet/writeContract.d.ts +50 -0
- package/dist/types/actions/wallet/writeContract.d.ts.map +1 -1
- package/dist/types/clients/createPublicClient.d.ts +17 -1
- package/dist/types/clients/createPublicClient.d.ts.map +1 -1
- package/dist/types/clients/createTestClient.d.ts +20 -0
- package/dist/types/clients/createTestClient.d.ts.map +1 -1
- package/dist/types/clients/createWalletClient.d.ts +34 -1
- package/dist/types/clients/createWalletClient.d.ts.map +1 -1
- package/dist/types/clients/decorators/public.d.ts +37 -37
- package/dist/types/clients/decorators/test.d.ts +536 -0
- package/dist/types/clients/decorators/test.d.ts.map +1 -1
- package/dist/types/clients/decorators/wallet.d.ts +389 -2
- package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/utils/abi/getAbiItem.d.ts +1 -1
- package/dist/types/utils/abi/getAbiItem.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +2 -2
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/rpc.d.ts +1 -1
- package/dist/types/utils/rpc.d.ts.map +1 -1
- package/dist/types/utils/signature/index.d.ts +2 -0
- package/dist/types/utils/signature/index.d.ts.map +1 -1
- package/dist/types/utils/signature/recoverAddress.d.ts.map +1 -1
- package/dist/types/utils/signature/recoverPublicKey.d.ts +8 -0
- package/dist/types/utils/signature/recoverPublicKey.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/actions/ens/getEnsAddress.ts +0 -1
- package/src/actions/ens/getEnsAvatar.ts +0 -1
- package/src/actions/ens/getEnsName.ts +0 -1
- package/src/actions/ens/getEnsResolver.ts +0 -1
- package/src/actions/ens/getEnsText.ts +0 -1
- package/src/actions/getContract.ts +104 -2
- package/src/actions/public/estimateContractGas.ts +0 -1
- package/src/actions/public/getBalance.ts +0 -1
- package/src/actions/public/getFilterChanges.ts +0 -1
- package/src/actions/public/getFilterLogs.ts +0 -1
- package/src/actions/public/getLogs.ts +3 -3
- package/src/actions/public/readContract.ts +2 -3
- package/src/actions/public/simulateContract.ts +1 -2
- package/src/actions/public/uninstallFilter.ts +0 -1
- package/src/actions/public/waitForTransactionReceipt.ts +0 -1
- package/src/actions/public/watchContractEvent.ts +0 -1
- package/src/actions/public/watchEvent.ts +0 -1
- package/src/actions/public/watchPendingTransactions.ts +0 -1
- package/src/actions/test/dropTransaction.ts +22 -0
- package/src/actions/test/getAutomine.ts +20 -0
- package/src/actions/test/getTxpoolContent.ts +22 -0
- package/src/actions/test/getTxpoolStatus.ts +20 -0
- package/src/actions/test/impersonateAccount.ts +22 -0
- package/src/actions/test/increaseTime.ts +22 -0
- package/src/actions/test/inspectTxpool.ts +20 -0
- package/src/actions/test/mine.ts +20 -0
- package/src/actions/test/removeBlockTimestampInterval.ts +19 -0
- package/src/actions/test/reset.ts +20 -0
- package/src/actions/test/revert.ts +20 -0
- package/src/actions/test/sendUnsignedTransaction.ts +25 -0
- package/src/actions/test/setAutomine.ts +19 -0
- package/src/actions/test/setBalance.ts +23 -0
- package/src/actions/test/setBlockGasLimit.ts +20 -0
- package/src/actions/test/setBlockTimestampInterval.ts +20 -0
- package/src/actions/test/setCode.ts +23 -0
- package/src/actions/test/setCoinbase.ts +22 -0
- package/src/actions/test/setIntervalMining.ts +20 -0
- package/src/actions/test/setLoggingEnabled.ts +19 -0
- package/src/actions/test/setMinGasPrice.ts +24 -0
- package/src/actions/test/setNextBlockBaseFeePerGas.ts +22 -0
- package/src/actions/test/setNextBlockTimestamp.ts +20 -0
- package/src/actions/test/setNonce.ts +23 -0
- package/src/actions/test/setRpcUrl.ts +20 -0
- package/src/actions/test/setStorageAt.ts +24 -0
- package/src/actions/test/snapshot.ts +19 -0
- package/src/actions/test/stopImpersonatingAccount.ts +22 -0
- package/src/actions/wallet/addChain.ts +20 -0
- package/src/actions/wallet/deployContract.ts +1 -1
- package/src/actions/wallet/getAddresses.ts +20 -0
- package/src/actions/wallet/getPermissions.ts +20 -0
- package/src/actions/wallet/requestAddresses.ts +24 -0
- package/src/actions/wallet/requestPermissions.ts +31 -6
- package/src/actions/wallet/sendTransaction.ts +45 -0
- package/src/actions/wallet/signMessage.ts +46 -0
- package/src/actions/wallet/signTypedData.ts +98 -0
- package/src/actions/wallet/switchChain.ts +24 -1
- package/src/actions/wallet/watchAsset.ts +28 -0
- package/src/actions/wallet/writeContract.ts +50 -0
- package/src/clients/createPublicClient.ts +17 -1
- package/src/clients/createTestClient.ts +20 -0
- package/src/clients/createWalletClient.ts +34 -1
- package/src/clients/decorators/public.ts +37 -37
- package/src/clients/decorators/test.ts +536 -0
- package/src/clients/decorators/wallet.ts +389 -2
- package/src/errors/version.ts +1 -1
- package/src/index.ts +3 -0
- package/src/utils/abi/getAbiItem.ts +9 -8
- package/src/utils/index.ts +3 -0
- package/src/utils/rpc.ts +2 -2
- package/src/utils/signature/index.ts +6 -0
- package/src/utils/signature/recoverAddress.ts +2 -17
- package/src/utils/signature/recoverPublicKey.ts +30 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../src/actions/test/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,SAAS,EACV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD,wBAAsB,QAAQ,CAAC,MAAM,SAAS,KAAK,GAAG,SAAS,EAC7D,MAAM,EAAE,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,0BAKtD"}
|
1
|
+
{"version":3,"file":"snapshot.d.ts","sourceRoot":"","sources":["../../../../src/actions/test/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,SAAS,EACV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAEjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,QAAQ,CAAC,MAAM,SAAS,KAAK,GAAG,SAAS,EAC7D,MAAM,EAAE,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,0BAKtD"}
|
@@ -4,5 +4,27 @@ export type StopImpersonatingAccountParameters = {
|
|
4
4
|
/** The account to impersonate. */
|
5
5
|
address: Address;
|
6
6
|
};
|
7
|
+
/**
|
8
|
+
* Stop impersonating an account after having previously used [`impersonateAccount`](https://viem.sh/docs/actions/test/impersonateAccount).
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/actions/test/stopImpersonatingAccount.html
|
11
|
+
*
|
12
|
+
* @param client - Client to use
|
13
|
+
* @param parameters – {@link StopImpersonatingAccountParameters}
|
14
|
+
*
|
15
|
+
* @example
|
16
|
+
* import { createTestClient, http } from 'viem'
|
17
|
+
* import { foundry } from 'viem/chains'
|
18
|
+
* import { stopImpersonatingAccount } from 'viem/test'
|
19
|
+
*
|
20
|
+
* const client = createTestClient({
|
21
|
+
* mode: 'anvil',
|
22
|
+
* chain: 'foundry',
|
23
|
+
* transport: http(),
|
24
|
+
* })
|
25
|
+
* await stopImpersonatingAccount(client, {
|
26
|
+
* address: '0xa5cc3c03994DB5b0d9A5eEdD10CabaB0813678AC',
|
27
|
+
* })
|
28
|
+
*/
|
7
29
|
export declare function stopImpersonatingAccount<TChain extends Chain | undefined>(client: TestClient<TestClientMode, Transport, TChain>, { address }: StopImpersonatingAccountParameters): Promise<void>;
|
8
30
|
//# sourceMappingURL=stopImpersonatingAccount.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"stopImpersonatingAccount.d.ts","sourceRoot":"","sources":["../../../../src/actions/test/stopImpersonatingAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,SAAS,EACV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,MAAM,kCAAkC,GAAG;IAC/C,kCAAkC;IAClC,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,wBAAsB,wBAAwB,CAC5C,MAAM,SAAS,KAAK,GAAG,SAAS,EAEhC,MAAM,EAAE,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,EACrD,EAAE,OAAO,EAAE,EAAE,kCAAkC,iBAMhD"}
|
1
|
+
{"version":3,"file":"stopImpersonatingAccount.d.ts","sourceRoot":"","sources":["../../../../src/actions/test/stopImpersonatingAccount.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACd,SAAS,EACV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAE1D,MAAM,MAAM,kCAAkC,GAAG;IAC/C,kCAAkC;IAClC,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,SAAS,KAAK,GAAG,SAAS,EAEhC,MAAM,EAAE,UAAU,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,EACrD,EAAE,OAAO,EAAE,EAAE,kCAAkC,iBAMhD"}
|
@@ -1,7 +1,27 @@
|
|
1
1
|
import type { Transport, WalletClient } from '../../clients/index.js';
|
2
2
|
import type { Account, Chain } from '../../types/index.js';
|
3
3
|
export type AddChainParameters = {
|
4
|
+
/** The chain to add to the wallet. */
|
4
5
|
chain: Chain;
|
5
6
|
};
|
7
|
+
/**
|
8
|
+
* Adds an EVM chain to the wallet.
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/actions/wallet/addChain.html
|
11
|
+
* - JSON-RPC Methods: [`eth_addEthereumChain`](https://eips.ethereum.org/EIPS/eip-3085)
|
12
|
+
*
|
13
|
+
* @param client - Client to use
|
14
|
+
* @param parameters - {@link AddChainParameters}
|
15
|
+
*
|
16
|
+
* @example
|
17
|
+
* import { createWalletClient, custom } from 'viem'
|
18
|
+
* import { optimism } from 'viem/chains'
|
19
|
+
* import { addChain } from 'viem/wallet'
|
20
|
+
*
|
21
|
+
* const client = createWalletClient({
|
22
|
+
* transport: custom(window.ethereum),
|
23
|
+
* })
|
24
|
+
* await addChain(client, { chain: optimism })
|
25
|
+
*/
|
6
26
|
export declare function addChain<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: WalletClient<Transport, TChain, TAccount>, { chain }: AddChainParameters): Promise<void>;
|
7
27
|
//# sourceMappingURL=addChain.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"addChain.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/addChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED,wBAAsB,QAAQ,CAC5B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EAEpC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EAAE,KAAK,EAAE,EAAE,kBAAkB,iBAiB9B"}
|
1
|
+
{"version":3,"file":"addChain.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/addChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,sCAAsC;IACtC,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,QAAQ,CAC5B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EAEpC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EAAE,KAAK,EAAE,EAAE,kBAAkB,iBAiB9B"}
|
@@ -24,7 +24,7 @@ export type DeployContractReturnType = SendTransactionReturnType;
|
|
24
24
|
* import { deployContract } from 'viem/contract'
|
25
25
|
*
|
26
26
|
* const client = createWalletClient({
|
27
|
-
* account
|
27
|
+
* account: privateKeyToAccount('0x…'),
|
28
28
|
* chain: mainnet,
|
29
29
|
* transport: http(),
|
30
30
|
* })
|
@@ -2,5 +2,25 @@ import type { Address } from 'abitype';
|
|
2
2
|
import type { Transport, WalletClient } from '../../clients/index.js';
|
3
3
|
import type { Account, Chain } from '../../types/index.js';
|
4
4
|
export type GetAddressesReturnType = Address[];
|
5
|
+
/**
|
6
|
+
* Returns a list of account addresses owned by the wallet or client.
|
7
|
+
*
|
8
|
+
* - Docs: https://viem.sh/docs/actions/wallet/getAddresses.html
|
9
|
+
* - JSON-RPC Methods: [`eth_accounts`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_accounts)
|
10
|
+
*
|
11
|
+
* @param client - Client to use
|
12
|
+
* @returns List of account addresses owned by the wallet or client. {@link GetAddressesReturnType}
|
13
|
+
*
|
14
|
+
* @example
|
15
|
+
* import { createWalletClient, custom } from 'viem'
|
16
|
+
* import { mainnet } from 'viem/chains'
|
17
|
+
* import { getAddresses } from 'viem/wallet'
|
18
|
+
*
|
19
|
+
* const client = createWalletClient({
|
20
|
+
* chain: mainnet,
|
21
|
+
* transport: custom(window.ethereum),
|
22
|
+
* })
|
23
|
+
* const accounts = await getAddresses(client)
|
24
|
+
*/
|
5
25
|
export declare function getAddresses<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>): Promise<GetAddressesReturnType>;
|
6
26
|
//# sourceMappingURL=getAddresses.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getAddresses.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/getAddresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,sBAAsB,GAAG,OAAO,EAAE,CAAA;AAE9C,wBAAsB,YAAY,CAChC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GAChD,OAAO,CAAC,sBAAsB,CAAC,CAGjC"}
|
1
|
+
{"version":3,"file":"getAddresses.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/getAddresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,sBAAsB,GAAG,OAAO,EAAE,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,YAAY,CAChC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GAChD,OAAO,CAAC,sBAAsB,CAAC,CAGjC"}
|
@@ -2,5 +2,25 @@ import type { Transport, WalletClient } from '../../clients/index.js';
|
|
2
2
|
import type { Account, Chain } from '../../types/index.js';
|
3
3
|
import type { WalletPermission } from '../../types/eip1193.js';
|
4
4
|
export type GetPermissionsReturnType = WalletPermission[];
|
5
|
+
/**
|
6
|
+
* Gets the wallets current permissions.
|
7
|
+
*
|
8
|
+
* - Docs: https://viem.sh/docs/actions/wallet/getPermissions.html
|
9
|
+
* - JSON-RPC Methods: [`wallet_getPermissions`](https://eips.ethereum.org/EIPS/eip-2255)
|
10
|
+
*
|
11
|
+
* @param client - Client to use
|
12
|
+
* @returns The wallet permissions. {@link GetPermissionsReturnType}
|
13
|
+
*
|
14
|
+
* @example
|
15
|
+
* import { createWalletClient, custom } from 'viem'
|
16
|
+
* import { mainnet } from 'viem/chains'
|
17
|
+
* import { getPermissions } from 'viem/wallet'
|
18
|
+
*
|
19
|
+
* const client = createWalletClient({
|
20
|
+
* chain: mainnet,
|
21
|
+
* transport: custom(window.ethereum),
|
22
|
+
* })
|
23
|
+
* const permissions = await getPermissions(client)
|
24
|
+
*/
|
5
25
|
export declare function getPermissions<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>): Promise<WalletPermission[]>;
|
6
26
|
//# sourceMappingURL=getPermissions.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"getPermissions.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/getPermissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,EAAE,CAAA;AAEzD,wBAAsB,cAAc,CAClC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAChD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,+BAGlD"}
|
1
|
+
{"version":3,"file":"getPermissions.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/getPermissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,EAAE,CAAA;AAEzD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,cAAc,CAClC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAChD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,+BAGlD"}
|
@@ -2,5 +2,29 @@ import type { Address } from 'abitype';
|
|
2
2
|
import type { Transport, WalletClient } from '../../clients/index.js';
|
3
3
|
import type { Account, Chain } from '../../types/index.js';
|
4
4
|
export type RequestAddressesReturnType = Address[];
|
5
|
+
/**
|
6
|
+
* Requests a list of accounts managed by a wallet.
|
7
|
+
*
|
8
|
+
* - Docs: https://viem.sh/docs/actions/wallet/requestAddresses.html
|
9
|
+
* - JSON-RPC Methods: [`eth_requestAccounts`](https://eips.ethereum.org/EIPS/eip-1102)
|
10
|
+
*
|
11
|
+
* Sends a request to the wallet, asking for permission to access the user's accounts. After the user accepts the request, it will return a list of accounts (addresses).
|
12
|
+
*
|
13
|
+
* This API can be useful for dapps that need to access the user's accounts in order to execute transactions or interact with smart contracts.
|
14
|
+
*
|
15
|
+
* @param client - Client to use
|
16
|
+
* @returns List of accounts managed by a wallet {@link RequestAddressesReturnType}
|
17
|
+
*
|
18
|
+
* @example
|
19
|
+
* import { createWalletClient, custom } from 'viem'
|
20
|
+
* import { mainnet } from 'viem/chains'
|
21
|
+
* import { requestAddresses } from 'viem/wallet'
|
22
|
+
*
|
23
|
+
* const client = createWalletClient({
|
24
|
+
* chain: mainnet,
|
25
|
+
* transport: custom(window.ethereum),
|
26
|
+
* })
|
27
|
+
* const accounts = await requestAddresses(client)
|
28
|
+
*/
|
5
29
|
export declare function requestAddresses<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>): Promise<RequestAddressesReturnType>;
|
6
30
|
//# sourceMappingURL=requestAddresses.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"requestAddresses.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/requestAddresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,0BAA0B,GAAG,OAAO,EAAE,CAAA;AAElD,wBAAsB,gBAAgB,CACpC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GAChD,OAAO,CAAC,0BAA0B,CAAC,CAGrC"}
|
1
|
+
{"version":3,"file":"requestAddresses.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/requestAddresses.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,0BAA0B,GAAG,OAAO,EAAE,CAAA;AAElD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,GAChD,OAAO,CAAC,0BAA0B,CAAC,CAGrC"}
|
@@ -1,11 +1,34 @@
|
|
1
1
|
import type { Transport, WalletClient } from '../../clients/index.js';
|
2
|
-
import type { Account, Chain } from '../../types/index.js';
|
2
|
+
import type { Account, Chain, Prettify } from '../../types/index.js';
|
3
3
|
import type { WalletPermission } from '../../types/eip1193.js';
|
4
|
-
export type RequestPermissionsParameters = {
|
4
|
+
export type RequestPermissionsParameters = Prettify<{
|
5
5
|
eth_accounts: Record<string, any>;
|
6
6
|
} & {
|
7
7
|
[key: string]: Record<string, any>;
|
8
|
-
}
|
8
|
+
}>;
|
9
9
|
export type RequestPermissionsReturnType = WalletPermission[];
|
10
|
+
/**
|
11
|
+
* Requests permissions for a wallet.
|
12
|
+
*
|
13
|
+
* - Docs: https://viem.sh/docs/actions/wallet/requestPermissions.html
|
14
|
+
* - JSON-RPC Methods: [`wallet_requestPermissions`](https://eips.ethereum.org/EIPS/eip-2255)
|
15
|
+
*
|
16
|
+
* @param client - Client to use
|
17
|
+
* @param parameters - {@link RequestPermissionsParameters}
|
18
|
+
* @returns The wallet permissions. {@link RequestPermissionsReturnType}
|
19
|
+
*
|
20
|
+
* @example
|
21
|
+
* import { createWalletClient, custom } from 'viem'
|
22
|
+
* import { mainnet } from 'viem/chains'
|
23
|
+
* import { requestPermissions } from 'viem/wallet'
|
24
|
+
*
|
25
|
+
* const client = createWalletClient({
|
26
|
+
* chain: mainnet,
|
27
|
+
* transport: custom(window.ethereum),
|
28
|
+
* })
|
29
|
+
* const permissions = await requestPermissions(client, {
|
30
|
+
* eth_accounts: {}
|
31
|
+
* })
|
32
|
+
*/
|
10
33
|
export declare function requestPermissions<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, permissions: RequestPermissionsParameters): Promise<WalletPermission[]>;
|
11
34
|
//# sourceMappingURL=requestPermissions.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"requestPermissions.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/requestPermissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;
|
1
|
+
{"version":3,"file":"requestPermissions.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/requestPermissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,MAAM,4BAA4B,GAAG,QAAQ,CACjD;IACE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAClC,GAAG;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CACnC,CACF,CAAA;AACD,MAAM,MAAM,4BAA4B,GAAG,gBAAgB,EAAE,CAAA;AAE7D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,WAAW,EAAE,4BAA4B,+BAM1C"}
|
@@ -4,5 +4,50 @@ import type { Formatted, TransactionRequestFormatter } from '../../utils/index.j
|
|
4
4
|
export type FormattedTransactionRequest<TFormatter extends Formatter | undefined = Formatter> = MergeIntersectionProperties<Omit<Formatted<TFormatter, TransactionRequest, true>, 'from'>, TransactionRequest>;
|
5
5
|
export type SendTransactionParameters<TChain extends Chain | undefined = Chain | undefined, TAccount extends Account | undefined = Account | undefined, TChainOverride extends Chain | undefined = Chain> = FormattedTransactionRequest<TransactionRequestFormatter<TChainOverride>> & GetAccountParameter<TAccount> & GetChain<TChain, TChainOverride>;
|
6
6
|
export type SendTransactionReturnType = Hash;
|
7
|
+
/**
|
8
|
+
* Creates, signs, and sends a new transaction to the network.
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/actions/wallet/sendTransaction.html
|
11
|
+
* - Examples: https://stackblitz.com/github/wagmi-dev/viem/tree/main/examples/transactions/sending-transactions
|
12
|
+
* - JSON-RPC Methods:
|
13
|
+
* - JSON-RPC Accounts: [`eth_sendTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendtransaction)
|
14
|
+
* - Local Accounts: [`eth_sendRawTransaction`](https://ethereum.org/en/developers/docs/apis/json-rpc/#eth_sendrawtransaction)
|
15
|
+
*
|
16
|
+
* @param client - Client to use
|
17
|
+
* @param parameters - {@link SendTransactionParameters}
|
18
|
+
* @returns The [Transaction](https://viem.sh/docs/glossary/terms.html#transaction) hash. {@link SendTransactionReturnType}
|
19
|
+
*
|
20
|
+
* @example
|
21
|
+
* import { createWalletClient, custom } from 'viem'
|
22
|
+
* import { mainnet } from 'viem/chains'
|
23
|
+
* import { sendTransaction } from 'viem/wallet'
|
24
|
+
*
|
25
|
+
* const client = createWalletClient({
|
26
|
+
* chain: mainnet,
|
27
|
+
* transport: custom(window.ethereum),
|
28
|
+
* })
|
29
|
+
* const hash = await sendTransaction(client, {
|
30
|
+
* account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
|
31
|
+
* to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
|
32
|
+
* value: 1000000000000000000n,
|
33
|
+
* })
|
34
|
+
*
|
35
|
+
* @example
|
36
|
+
* // Account Hoisting
|
37
|
+
* import { createWalletClient, http } from 'viem'
|
38
|
+
* import { privateKeyToAccount } from 'viem/accounts'
|
39
|
+
* import { mainnet } from 'viem/chains'
|
40
|
+
* import { sendTransaction } from 'viem/wallet'
|
41
|
+
*
|
42
|
+
* const client = createWalletClient({
|
43
|
+
* account: privateKeyToAccount('0x…'),
|
44
|
+
* chain: mainnet,
|
45
|
+
* transport: http(),
|
46
|
+
* })
|
47
|
+
* const hash = await sendTransaction(client, {
|
48
|
+
* to: '0x70997970c51812dc3a010c7d01b50e0d17dc79c8',
|
49
|
+
* value: 1000000000000000000n,
|
50
|
+
* })
|
51
|
+
*/
|
7
52
|
export declare function sendTransaction<TChain extends Chain | undefined, TAccount extends Account | undefined, TChainOverride extends Chain | undefined>(client: WalletClient<Transport, TChain, TAccount>, args: SendTransactionParameters<TChain, TAccount, TChainOverride>): Promise<SendTransactionReturnType>;
|
8
53
|
//# sourceMappingURL=sendTransaction.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sendTransaction.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/sendTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAOrE,OAAO,KAAK,EACV,OAAO,EACP,mBAAmB,EACnB,KAAK,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,2BAA2B,EAC3B,kBAAkB,EAEnB,MAAM,sBAAsB,CAAA;AAU7B,OAAO,KAAK,EACV,SAAS,EACT,2BAA2B,EAC5B,MAAM,sBAAsB,CAAA;AAG7B,MAAM,MAAM,2BAA2B,CACrC,UAAU,SAAS,SAAS,GAAG,SAAS,GAAG,SAAS,IAClD,2BAA2B,CAC7B,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,EAC7D,kBAAkB,CACnB,CAAA;AAED,MAAM,MAAM,yBAAyB,CACnC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,IAC9C,2BAA2B,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC,GAC1E,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAElC,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAA;AAE5C,wBAAsB,eAAe,CACnC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,cAAc,SAAS,KAAK,GAAG,SAAS,EAExC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,IAAI,EAAE,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,GAChE,OAAO,CAAC,yBAAyB,CAAC,CAyFpC"}
|
1
|
+
{"version":3,"file":"sendTransaction.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/sendTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAOrE,OAAO,KAAK,EACV,OAAO,EACP,mBAAmB,EACnB,KAAK,EACL,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,2BAA2B,EAC3B,kBAAkB,EAEnB,MAAM,sBAAsB,CAAA;AAU7B,OAAO,KAAK,EACV,SAAS,EACT,2BAA2B,EAC5B,MAAM,sBAAsB,CAAA;AAG7B,MAAM,MAAM,2BAA2B,CACrC,UAAU,SAAS,SAAS,GAAG,SAAS,GAAG,SAAS,IAClD,2BAA2B,CAC7B,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,EAC7D,kBAAkB,CACnB,CAAA;AAED,MAAM,MAAM,yBAAyB,CACnC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACpD,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,EAC1D,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,IAC9C,2BAA2B,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC,GAC1E,mBAAmB,CAAC,QAAQ,CAAC,GAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;AAElC,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAA;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,wBAAsB,eAAe,CACnC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,cAAc,SAAS,KAAK,GAAG,SAAS,EAExC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,IAAI,EAAE,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,GAChE,OAAO,CAAC,yBAAyB,CAAC,CAyFpC"}
|
@@ -4,5 +4,51 @@ export type SignMessageParameters<TAccount extends Account | undefined = Account
|
|
4
4
|
message: string;
|
5
5
|
};
|
6
6
|
export type SignMessageReturnType = Hex;
|
7
|
+
/**
|
8
|
+
* Calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256("\x19Ethereum Signed Message:\n" + len(message) + message))`.
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/actions/wallet/signMessage.html
|
11
|
+
* - JSON-RPC Methods:
|
12
|
+
* - JSON-RPC Accounts: [`personal_sign`](https://docs.metamask.io/guide/signing-data.html#personal-sign)
|
13
|
+
* - Local Accounts: Signs locally. No JSON-RPC request.
|
14
|
+
*
|
15
|
+
* With the calculated signature, you can:
|
16
|
+
* - use [`verifyMessage`](https://viem.sh/docs/utilities/verifyMessage) to verify the signature,
|
17
|
+
* - use [`recoverMessageAddress`](https://viem.sh/docs/utilities/recoverMessageAddress) to recover the signing address from a signature.
|
18
|
+
*
|
19
|
+
* @param client - Client to use
|
20
|
+
* @param parameters - {@link SignMessageParameters}
|
21
|
+
* @returns The signed message. {@link SignMessageReturnType}
|
22
|
+
*
|
23
|
+
* @example
|
24
|
+
* import { createWalletClient, custom } from 'viem'
|
25
|
+
* import { mainnet } from 'viem/chains'
|
26
|
+
* import { signMessage } from 'viem/wallet'
|
27
|
+
*
|
28
|
+
* const client = createWalletClient({
|
29
|
+
* chain: mainnet,
|
30
|
+
* transport: custom(window.ethereum),
|
31
|
+
* })
|
32
|
+
* const signature = await signMessage(client, {
|
33
|
+
* account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
|
34
|
+
* message: 'hello world',
|
35
|
+
* })
|
36
|
+
*
|
37
|
+
* @example
|
38
|
+
* // Account Hoisting
|
39
|
+
* import { createWalletClient, custom } from 'viem'
|
40
|
+
* import { privateKeyToAccount } from 'viem/accounts'
|
41
|
+
* import { mainnet } from 'viem/chains'
|
42
|
+
* import { signMessage } from 'viem/wallet'
|
43
|
+
*
|
44
|
+
* const client = createWalletClient({
|
45
|
+
* account: privateKeyToAccount('0x…'),
|
46
|
+
* chain: mainnet,
|
47
|
+
* transport: custom(window.ethereum),
|
48
|
+
* })
|
49
|
+
* const signature = await signMessage(client, {
|
50
|
+
* message: 'hello world',
|
51
|
+
* })
|
52
|
+
*/
|
7
53
|
export declare function signMessage<TChain extends Chain | undefined, TAccount extends Account | undefined>(client: WalletClient<Transport, TChain, TAccount>, { account: account_, message, }: SignMessageParameters<TAccount>): Promise<SignMessageReturnType>;
|
8
54
|
//# sourceMappingURL=signMessage.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"signMessage.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/signMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,GAAG,EACJ,MAAM,sBAAsB,CAAA;AAG7B,MAAM,MAAM,qBAAqB,CAC/B,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACxD,mBAAmB,CAAC,QAAQ,CAAC,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,GAAG,CAAA;AAEvC,wBAAsB,WAAW,CAC/B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EAEpC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EACE,OAAO,EAAE,QAAyB,EAClC,OAAO,GACR,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GACjC,OAAO,CAAC,qBAAqB,CAAC,CAWhC"}
|
1
|
+
{"version":3,"file":"signMessage.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/signMessage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,GAAG,EACJ,MAAM,sBAAsB,CAAA;AAG7B,MAAM,MAAM,qBAAqB,CAC/B,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACxD,mBAAmB,CAAC,QAAQ,CAAC,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,GAAG,CAAA;AAEvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAsB,WAAW,CAC/B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EAEpC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EACE,OAAO,EAAE,QAAyB,EAClC,OAAO,GACR,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GACjC,OAAO,CAAC,qBAAqB,CAAC,CAWhC"}
|
@@ -5,6 +5,104 @@ export type SignTypedDataParameters<TTypedData extends TypedData | {
|
|
5
5
|
[key: string]: unknown;
|
6
6
|
} = TypedData, TPrimaryType extends string = string, TAccount extends Account | undefined = undefined> = GetAccountParameter<TAccount> & TypedDataDefinition<TTypedData, TPrimaryType>;
|
7
7
|
export type SignTypedDataReturnType = Hex;
|
8
|
+
/**
|
9
|
+
* Signs typed data and calculates an Ethereum-specific signature in [EIP-191 format](https://eips.ethereum.org/EIPS/eip-191): `keccak256("\x19Ethereum Signed Message:\n" + len(message) + message))`.
|
10
|
+
*
|
11
|
+
* - Docs: https://viem.sh/docs/actions/wallet/signTypedData.html
|
12
|
+
* - JSON-RPC Methods:
|
13
|
+
* - JSON-RPC Accounts: [`eth_signTypedData_v4`](https://docs.metamask.io/guide/signing-data.html#signtypeddata-v4)
|
14
|
+
* - Local Accounts: Signs locally. No JSON-RPC request.
|
15
|
+
*
|
16
|
+
* @param client - Client to use
|
17
|
+
* @param parameters - {@link SignTypedDataParameters}
|
18
|
+
* @returns The signed data. {@link SignTypedDataReturnType}
|
19
|
+
*
|
20
|
+
* @example
|
21
|
+
* import { createWalletClient, custom } from 'viem'
|
22
|
+
* import { mainnet } from 'viem/chains'
|
23
|
+
* import { signTypedData } from 'viem/wallet'
|
24
|
+
*
|
25
|
+
* const client = createWalletClient({
|
26
|
+
* chain: mainnet,
|
27
|
+
* transport: custom(window.ethereum),
|
28
|
+
* })
|
29
|
+
* const signature = await signTypedData(client, {
|
30
|
+
* account: '0xA0Cf798816D4b9b9866b5330EEa46a18382f251e',
|
31
|
+
* domain: {
|
32
|
+
* name: 'Ether Mail',
|
33
|
+
* version: '1',
|
34
|
+
* chainId: 1,
|
35
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
36
|
+
* },
|
37
|
+
* types: {
|
38
|
+
* Person: [
|
39
|
+
* { name: 'name', type: 'string' },
|
40
|
+
* { name: 'wallet', type: 'address' },
|
41
|
+
* ],
|
42
|
+
* Mail: [
|
43
|
+
* { name: 'from', type: 'Person' },
|
44
|
+
* { name: 'to', type: 'Person' },
|
45
|
+
* { name: 'contents', type: 'string' },
|
46
|
+
* ],
|
47
|
+
* },
|
48
|
+
* primaryType: 'Mail',
|
49
|
+
* message: {
|
50
|
+
* from: {
|
51
|
+
* name: 'Cow',
|
52
|
+
* wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',
|
53
|
+
* },
|
54
|
+
* to: {
|
55
|
+
* name: 'Bob',
|
56
|
+
* wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',
|
57
|
+
* },
|
58
|
+
* contents: 'Hello, Bob!',
|
59
|
+
* },
|
60
|
+
* })
|
61
|
+
*
|
62
|
+
* @example
|
63
|
+
* // Account Hoisting
|
64
|
+
* import { createWalletClient, http } from 'viem'
|
65
|
+
* import { privateKeyToAccount } from 'viem/accounts'
|
66
|
+
* import { mainnet } from 'viem/chains'
|
67
|
+
* import { signTypedData } from 'viem/wallet'
|
68
|
+
*
|
69
|
+
* const client = createWalletClient({
|
70
|
+
* account: privateKeyToAccount('0x…'),
|
71
|
+
* chain: mainnet,
|
72
|
+
* transport: http(),
|
73
|
+
* })
|
74
|
+
* const signature = await signTypedData(client, {
|
75
|
+
* domain: {
|
76
|
+
* name: 'Ether Mail',
|
77
|
+
* version: '1',
|
78
|
+
* chainId: 1,
|
79
|
+
* verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC',
|
80
|
+
* },
|
81
|
+
* types: {
|
82
|
+
* Person: [
|
83
|
+
* { name: 'name', type: 'string' },
|
84
|
+
* { name: 'wallet', type: 'address' },
|
85
|
+
* ],
|
86
|
+
* Mail: [
|
87
|
+
* { name: 'from', type: 'Person' },
|
88
|
+
* { name: 'to', type: 'Person' },
|
89
|
+
* { name: 'contents', type: 'string' },
|
90
|
+
* ],
|
91
|
+
* },
|
92
|
+
* primaryType: 'Mail',
|
93
|
+
* message: {
|
94
|
+
* from: {
|
95
|
+
* name: 'Cow',
|
96
|
+
* wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826',
|
97
|
+
* },
|
98
|
+
* to: {
|
99
|
+
* name: 'Bob',
|
100
|
+
* wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB',
|
101
|
+
* },
|
102
|
+
* contents: 'Hello, Bob!',
|
103
|
+
* },
|
104
|
+
* })
|
105
|
+
*/
|
8
106
|
export declare function signTypedData<TTypedData extends TypedData | {
|
9
107
|
[key: string]: unknown;
|
10
108
|
}, TPrimaryType extends string, TChain extends Chain | undefined, TAccount extends Account | undefined>(client: WalletClient<Transport, TChain, TAccount>, { account: account_, domain, message, primaryType, types: types_, }: SignTypedDataParameters<TTypedData, TPrimaryType, TAccount>): Promise<SignTypedDataReturnType>;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"signTypedData.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/signTypedData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,GAAG,EACH,mBAAmB,EACpB,MAAM,sBAAsB,CAAA;AAQ7B,MAAM,MAAM,uBAAuB,CACjC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,SAAS,EACrE,YAAY,SAAS,MAAM,GAAG,MAAM,EACpC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,IAC9C,mBAAmB,CAAC,QAAQ,CAAC,GAC/B,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;AAE/C,MAAM,MAAM,uBAAuB,GAAG,GAAG,CAAA;AAEzC,wBAAsB,aAAa,CACjC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EACzD,YAAY,SAAS,MAAM,EAC3B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EAEpC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EACE,OAAO,EAAE,QAAyB,EAClC,MAAM,EACN,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,GACd,EAAE,uBAAuB,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,GAC7D,OAAO,CAAC,uBAAuB,CAAC,CA8ClC"}
|
1
|
+
{"version":3,"file":"signTypedData.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/signTypedData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,mBAAmB,EACnB,GAAG,EACH,mBAAmB,EACpB,MAAM,sBAAsB,CAAA;AAQ7B,MAAM,MAAM,uBAAuB,CACjC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,SAAS,EACrE,YAAY,SAAS,MAAM,GAAG,MAAM,EACpC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,IAC9C,mBAAmB,CAAC,QAAQ,CAAC,GAC/B,mBAAmB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;AAE/C,MAAM,MAAM,uBAAuB,GAAG,GAAG,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AACH,wBAAsB,aAAa,CACjC,UAAU,SAAS,SAAS,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EACzD,YAAY,SAAS,MAAM,EAC3B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EAEpC,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EACE,OAAO,EAAE,QAAyB,EAClC,MAAM,EACN,OAAO,EACP,WAAW,EACX,KAAK,EAAE,MAAM,GACd,EAAE,uBAAuB,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,GAC7D,OAAO,CAAC,uBAAuB,CAAC,CA8ClC"}
|
@@ -1,7 +1,28 @@
|
|
1
1
|
import type { Transport, WalletClient } from '../../clients/index.js';
|
2
2
|
import type { Account, Chain } from '../../types/index.js';
|
3
3
|
export type SwitchChainParameters = {
|
4
|
+
/** ID of Chain to switch to */
|
4
5
|
id: Chain['id'];
|
5
6
|
};
|
7
|
+
/**
|
8
|
+
* Switch the target chain in a wallet.
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/actions/wallet/switchChain.html
|
11
|
+
* - JSON-RPC Methods: [`eth_switchEthereumChain`](https://eips.ethereum.org/EIPS/eip-3326)
|
12
|
+
*
|
13
|
+
* @param client - Client to use
|
14
|
+
* @param parameters - {@link SwitchChainParameters}
|
15
|
+
*
|
16
|
+
* @example
|
17
|
+
* import { createWalletClient, custom } from 'viem'
|
18
|
+
* import { mainnet, optimism } from 'viem/chains'
|
19
|
+
* import { switchChain } from 'viem/wallet'
|
20
|
+
*
|
21
|
+
* const client = createWalletClient({
|
22
|
+
* chain: mainnet,
|
23
|
+
* transport: custom(window.ethereum),
|
24
|
+
* })
|
25
|
+
* await switchChain(client, { id: optimism.id })
|
26
|
+
*/
|
6
27
|
export declare function switchChain<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, { id }: SwitchChainParameters): Promise<void>;
|
7
28
|
//# sourceMappingURL=switchChain.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"switchChain.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/switchChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,qBAAqB,GAAG;
|
1
|
+
{"version":3,"file":"switchChain.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/switchChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAG1D,MAAM,MAAM,qBAAqB,GAAG;IAClC,+BAA+B;IAC/B,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;CAChB,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,WAAW,CAC/B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EAAE,EAAE,EAAE,EAAE,qBAAqB,iBAU9B"}
|
@@ -3,5 +3,33 @@ import type { Account, Chain } from '../../types/index.js';
|
|
3
3
|
import type { WatchAssetParams } from '../../types/eip1193.js';
|
4
4
|
export type WatchAssetParameters = WatchAssetParams;
|
5
5
|
export type WatchAssetReturnType = boolean;
|
6
|
+
/**
|
7
|
+
* Adds an EVM chain to the wallet.
|
8
|
+
*
|
9
|
+
* - Docs: https://viem.sh/docs/actions/wallet/watchAsset.html
|
10
|
+
* - JSON-RPC Methods: [`eth_switchEthereumChain`](https://eips.ethereum.org/EIPS/eip-747)
|
11
|
+
*
|
12
|
+
* @param client - Client to use
|
13
|
+
* @param parameters - {@link WatchAssetParameters}
|
14
|
+
* @returns Boolean indicating if the token was successfully added. {@link WatchAssetReturnType}
|
15
|
+
*
|
16
|
+
* @example
|
17
|
+
* import { createWalletClient, custom } from 'viem'
|
18
|
+
* import { mainnet } from 'viem/chains'
|
19
|
+
* import { watchAsset } from 'viem/wallet'
|
20
|
+
*
|
21
|
+
* const client = createWalletClient({
|
22
|
+
* chain: mainnet,
|
23
|
+
* transport: custom(window.ethereum),
|
24
|
+
* })
|
25
|
+
* const success = await watchAsset(client, {
|
26
|
+
* type: 'ERC20',
|
27
|
+
* options: {
|
28
|
+
* address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
29
|
+
* decimals: 18,
|
30
|
+
* symbol: 'WETH',
|
31
|
+
* },
|
32
|
+
* })
|
33
|
+
*/
|
6
34
|
export declare function watchAsset<TChain extends Chain | undefined, TAccount extends Account | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, params: WatchAssetParameters): Promise<WatchAssetReturnType>;
|
7
35
|
//# sourceMappingURL=watchAsset.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"watchAsset.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/watchAsset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAA;AACnD,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAA;AAE1C,wBAAsB,UAAU,CAC9B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAM/B"}
|
1
|
+
{"version":3,"file":"watchAsset.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/watchAsset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAA;AACnD,MAAM,MAAM,oBAAoB,GAAG,OAAO,CAAA;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,UAAU,CAC9B,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAEhD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAM/B"}
|
@@ -4,5 +4,55 @@ import type { Account, Chain, ContractFunctionConfig, GetChain, GetValue } from
|
|
4
4
|
import type { SendTransactionParameters, SendTransactionReturnType } from './sendTransaction.js';
|
5
5
|
export type WriteContractParameters<TAbi extends Abi | readonly unknown[] = Abi, TFunctionName extends string = string, TChain extends Chain | undefined = Chain, TAccount extends Account | undefined = undefined, TChainOverride extends Chain | undefined = undefined> = ContractFunctionConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'> & Omit<SendTransactionParameters<TChain, TAccount, TChainOverride>, 'chain' | 'to' | 'data' | 'value'> & GetChain<TChain, TChainOverride> & GetValue<TAbi, TFunctionName, SendTransactionParameters<TChain>['value']>;
|
6
6
|
export type WriteContractReturnType = SendTransactionReturnType;
|
7
|
+
/**
|
8
|
+
* Executes a write function on a contract.
|
9
|
+
*
|
10
|
+
* - Docs: https://viem.sh/docs/contract/writeContract.html
|
11
|
+
* - Examples: https://stackblitz.com/github/wagmi-dev/viem/tree/main/examples/contracts/writing-to-contracts
|
12
|
+
*
|
13
|
+
* A "write" function on a Solidity contract modifies the state of the blockchain. These types of functions require gas to be executed, and hence a [Transaction](https://viem.sh/docs/glossary/terms) is needed to be broadcast in order to change the state.
|
14
|
+
*
|
15
|
+
* Internally, uses a [Wallet Client](https://viem.sh/docs/clients/wallet) to call the [`sendTransaction` action](https://viem.sh/docs/actions/wallet/sendTransaction) with [ABI-encoded `data`](https://viem.sh/docs/contract/encodeFunctionData).
|
16
|
+
*
|
17
|
+
* __Warning: The `write` internally sends a transaction – it does not validate if the contract write will succeed (the contract may throw an error). It is highly recommended to [simulate the contract write with `contract.simulate`](https://viem.sh/docs/contract/writeContract.html#usage) before you execute it.__
|
18
|
+
*
|
19
|
+
* @param client - Client to use
|
20
|
+
* @param parameters - {@link WriteContractParameters}
|
21
|
+
* @returns A [Transaction Hash](https://viem.sh/docs/glossary/terms#hash). {@link WriteContractReturnType}
|
22
|
+
*
|
23
|
+
* @example
|
24
|
+
* import { createWalletClient, custom, parseAbi } from 'viem'
|
25
|
+
* import { mainnet } from 'viem/chains'
|
26
|
+
* import { writeContract } from 'viem/contract'
|
27
|
+
*
|
28
|
+
* const client = createWalletClient({
|
29
|
+
* chain: mainnet,
|
30
|
+
* transport: custom(window.ethereum),
|
31
|
+
* })
|
32
|
+
* const hash = await writeContract(client, {
|
33
|
+
* address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',
|
34
|
+
* abi: parseAbi(['function mint(uint32 tokenId) nonpayable']),
|
35
|
+
* functionName: 'mint',
|
36
|
+
* args: [69420],
|
37
|
+
* })
|
38
|
+
*
|
39
|
+
* @example
|
40
|
+
* // With Validation
|
41
|
+
* import { createWalletClient, http, parseAbi } from 'viem'
|
42
|
+
* import { mainnet } from 'viem/chains'
|
43
|
+
* import { simulateContract, writeContract } from 'viem/contract'
|
44
|
+
*
|
45
|
+
* const client = createWalletClient({
|
46
|
+
* chain: mainnet,
|
47
|
+
* transport: http(),
|
48
|
+
* })
|
49
|
+
* const { request } = await simulateContract(client, {
|
50
|
+
* address: '0xFBA3912Ca04dd458c843e2EE08967fC04f3579c2',
|
51
|
+
* abi: parseAbi(['function mint(uint32 tokenId) nonpayable']),
|
52
|
+
* functionName: 'mint',
|
53
|
+
* args: [69420],
|
54
|
+
* }
|
55
|
+
* const hash = await writeContract(client, request)
|
56
|
+
*/
|
7
57
|
export declare function writeContract<TChain extends Chain | undefined, TAccount extends Account | undefined, TAbi extends Abi | readonly unknown[], TFunctionName extends string, TChainOverride extends Chain | undefined = undefined>(client: WalletClient<Transport, TChain, TAccount>, { abi, address, args, functionName, ...request }: WriteContractParameters<TAbi, TFunctionName, TChain, TAccount, TChainOverride>): Promise<WriteContractReturnType>;
|
8
58
|
//# sourceMappingURL=writeContract.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"writeContract.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/writeContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAElC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,sBAAsB,EACtB,QAAQ,EACR,QAAQ,EACT,MAAM,sBAAsB,CAAA;AAI7B,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAE7B,MAAM,MAAM,uBAAuB,CACjC,IAAI,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,GAAG,GAAG,EAC3C,aAAa,SAAS,MAAM,GAAG,MAAM,EACrC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,EACxC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAChD,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,IAClD,sBAAsB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAG,YAAY,CAAC,GACvE,IAAI,CACF,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,EAC3D,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,CAClC,GACD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,GAChC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;AAE3E,MAAM,MAAM,uBAAuB,GAAG,yBAAyB,CAAA;AAE/D,wBAAsB,aAAa,CACjC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,IAAI,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,EACrC,aAAa,SAAS,MAAM,EAC5B,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEpD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EACE,GAAG,EACH,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,GAAG,OAAO,EACX,EAAE,uBAAuB,CACxB,IAAI,EACJ,aAAa,EACb,MAAM,EACN,QAAQ,EACR,cAAc,CACf,GACA,OAAO,CAAC,uBAAuB,CAAC,CAYlC"}
|
1
|
+
{"version":3,"file":"writeContract.d.ts","sourceRoot":"","sources":["../../../../src/actions/wallet/writeContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAElC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EACV,OAAO,EACP,KAAK,EACL,sBAAsB,EACtB,QAAQ,EACR,QAAQ,EACT,MAAM,sBAAsB,CAAA;AAI7B,OAAO,KAAK,EACV,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,sBAAsB,CAAA;AAE7B,MAAM,MAAM,uBAAuB,CACjC,IAAI,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,GAAG,GAAG,EAC3C,aAAa,SAAS,MAAM,GAAG,MAAM,EACrC,MAAM,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,EACxC,QAAQ,SAAS,OAAO,GAAG,SAAS,GAAG,SAAS,EAChD,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,IAClD,sBAAsB,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,GAAG,YAAY,CAAC,GACvE,IAAI,CACF,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC,EAC3D,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,CAClC,GACD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,GAChC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;AAE3E,MAAM,MAAM,uBAAuB,GAAG,yBAAyB,CAAA;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAsB,aAAa,CACjC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,QAAQ,SAAS,OAAO,GAAG,SAAS,EACpC,IAAI,SAAS,GAAG,GAAG,SAAS,OAAO,EAAE,EACrC,aAAa,SAAS,MAAM,EAC5B,cAAc,SAAS,KAAK,GAAG,SAAS,GAAG,SAAS,EAEpD,MAAM,EAAE,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EACjD,EACE,GAAG,EACH,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,GAAG,OAAO,EACX,EAAE,uBAAuB,CACxB,IAAI,EACJ,aAAa,EACb,MAAM,EACN,QAAQ,EACR,cAAc,CACf,GACA,OAAO,CAAC,uBAAuB,CAAC,CAYlC"}
|