viem 0.3.0-tsc-nodenext-2.20230407T050527 → 0.3.1
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/accounts/generateMnemonic.js +0 -7
- package/dist/cjs/accounts/generateMnemonic.js.map +1 -1
- package/dist/cjs/accounts/generatePrivateKey.js +0 -5
- package/dist/cjs/accounts/generatePrivateKey.js.map +1 -1
- package/dist/cjs/accounts/hdKeyToAccount.js +0 -5
- package/dist/cjs/accounts/hdKeyToAccount.js.map +1 -1
- package/dist/cjs/accounts/mnemonicToAccount.js +0 -5
- package/dist/cjs/accounts/mnemonicToAccount.js.map +1 -1
- package/dist/cjs/accounts/privateKeyToAccount.js +0 -5
- package/dist/cjs/accounts/privateKeyToAccount.js.map +1 -1
- package/dist/cjs/accounts/toAccount.js +0 -5
- package/dist/cjs/accounts/toAccount.js.map +1 -1
- package/dist/cjs/accounts/utils/publicKeyToAddress.js +0 -7
- package/dist/cjs/accounts/utils/publicKeyToAddress.js.map +1 -1
- package/dist/cjs/accounts/utils/sign.js +0 -8
- package/dist/cjs/accounts/utils/sign.js.map +1 -1
- package/dist/cjs/accounts/utils/signMessage.js +0 -6
- package/dist/cjs/accounts/utils/signMessage.js.map +1 -1
- package/dist/cjs/accounts/utils/signTypedData.js +0 -6
- package/dist/cjs/accounts/utils/signTypedData.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsAddress.js +0 -6
- package/dist/cjs/actions/ens/getEnsAddress.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsAvatar.js +0 -3
- package/dist/cjs/actions/ens/getEnsAvatar.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsName.js +0 -12
- package/dist/cjs/actions/ens/getEnsName.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsResolver.js +0 -3
- package/dist/cjs/actions/ens/getEnsResolver.js.map +1 -1
- package/dist/cjs/actions/ens/getEnsText.js +0 -15
- package/dist/cjs/actions/ens/getEnsText.js.map +1 -1
- package/dist/cjs/actions/getContract.js +0 -14
- package/dist/cjs/actions/getContract.js.map +1 -1
- package/dist/cjs/actions/public/call.js +0 -1
- package/dist/cjs/actions/public/call.js.map +1 -1
- package/dist/cjs/actions/public/createBlockFilter.js +5 -1
- package/dist/cjs/actions/public/createBlockFilter.js.map +1 -1
- package/dist/cjs/actions/public/createContractEventFilter.js +5 -0
- package/dist/cjs/actions/public/createContractEventFilter.js.map +1 -1
- package/dist/cjs/actions/public/createEventFilter.js +5 -0
- package/dist/cjs/actions/public/createEventFilter.js.map +1 -1
- package/dist/cjs/actions/public/createPendingTransactionFilter.js +5 -1
- package/dist/cjs/actions/public/createPendingTransactionFilter.js.map +1 -1
- package/dist/cjs/actions/public/estimateContractGas.js.map +1 -1
- package/dist/cjs/actions/public/estimateGas.js +0 -4
- package/dist/cjs/actions/public/estimateGas.js.map +1 -1
- package/dist/cjs/actions/public/getBalance.js +0 -3
- package/dist/cjs/actions/public/getBalance.js.map +1 -1
- package/dist/cjs/actions/public/getBlock.js.map +1 -1
- package/dist/cjs/actions/public/getBlockNumber.js +0 -3
- package/dist/cjs/actions/public/getBlockNumber.js.map +1 -1
- package/dist/cjs/actions/public/getBlockTransactionCount.js.map +1 -1
- package/dist/cjs/actions/public/getBytecode.js.map +1 -1
- package/dist/cjs/actions/public/getChainId.js.map +1 -1
- package/dist/cjs/actions/public/getFeeHistory.js +0 -3
- package/dist/cjs/actions/public/getFeeHistory.js.map +1 -1
- package/dist/cjs/actions/public/getFilterChanges.js +2 -3
- package/dist/cjs/actions/public/getFilterChanges.js.map +1 -1
- package/dist/cjs/actions/public/getFilterLogs.js +2 -3
- package/dist/cjs/actions/public/getFilterLogs.js.map +1 -1
- package/dist/cjs/actions/public/getGasPrice.js +0 -3
- package/dist/cjs/actions/public/getGasPrice.js.map +1 -1
- package/dist/cjs/actions/public/getLogs.js +0 -4
- package/dist/cjs/actions/public/getLogs.js.map +1 -1
- package/dist/cjs/actions/public/getStorageAt.js.map +1 -1
- package/dist/cjs/actions/public/getTransaction.js +0 -1
- package/dist/cjs/actions/public/getTransaction.js.map +1 -1
- package/dist/cjs/actions/public/getTransactionConfirmations.js.map +1 -1
- package/dist/cjs/actions/public/getTransactionCount.js +0 -3
- package/dist/cjs/actions/public/getTransactionCount.js.map +1 -1
- package/dist/cjs/actions/public/getTransactionReceipt.js.map +1 -1
- package/dist/cjs/actions/public/multicall.js +0 -1
- package/dist/cjs/actions/public/multicall.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 +2 -2
- package/dist/cjs/actions/public/uninstallFilter.js.map +1 -1
- package/dist/cjs/actions/public/waitForTransactionReceipt.js +0 -11
- package/dist/cjs/actions/public/waitForTransactionReceipt.js.map +1 -1
- package/dist/cjs/actions/public/watchBlockNumber.js +0 -7
- package/dist/cjs/actions/public/watchBlockNumber.js.map +1 -1
- package/dist/cjs/actions/public/watchBlocks.js +1 -13
- package/dist/cjs/actions/public/watchBlocks.js.map +1 -1
- package/dist/cjs/actions/public/watchContractEvent.js +0 -6
- package/dist/cjs/actions/public/watchContractEvent.js.map +1 -1
- package/dist/cjs/actions/public/watchEvent.js +0 -6
- package/dist/cjs/actions/public/watchEvent.js.map +1 -1
- package/dist/cjs/actions/public/watchPendingTransactions.js.map +1 -1
- package/dist/cjs/actions/wallet/deployContract.js.map +1 -1
- package/dist/cjs/actions/wallet/sendTransaction.js +0 -2
- package/dist/cjs/actions/wallet/sendTransaction.js.map +1 -1
- package/dist/cjs/actions/wallet/signTypedData.js +0 -2
- package/dist/cjs/actions/wallet/signTypedData.js.map +1 -1
- package/dist/cjs/adapters/ethers.js +0 -5
- package/dist/cjs/adapters/ethers.js.map +1 -1
- package/dist/cjs/clients/createClient.js +0 -3
- package/dist/cjs/clients/createClient.js.map +1 -1
- package/dist/cjs/clients/createPublicClient.js +0 -3
- package/dist/cjs/clients/createPublicClient.js.map +1 -1
- package/dist/cjs/clients/createTestClient.js +0 -3
- package/dist/cjs/clients/createTestClient.js.map +1 -1
- package/dist/cjs/clients/createWalletClient.js +0 -3
- package/dist/cjs/clients/createWalletClient.js.map +1 -1
- package/dist/cjs/clients/decorators/public.js.map +1 -1
- package/dist/cjs/clients/decorators/wallet.js.map +1 -1
- package/dist/cjs/clients/transports/createTransport.js +0 -3
- package/dist/cjs/clients/transports/createTransport.js.map +1 -1
- package/dist/cjs/clients/transports/custom.js +0 -3
- package/dist/cjs/clients/transports/custom.js.map +1 -1
- package/dist/cjs/clients/transports/fallback.js +18 -12
- package/dist/cjs/clients/transports/fallback.js.map +1 -1
- package/dist/cjs/clients/transports/http.js +1 -6
- package/dist/cjs/clients/transports/http.js.map +1 -1
- package/dist/cjs/clients/transports/webSocket.js +1 -6
- package/dist/cjs/clients/transports/webSocket.js.map +1 -1
- package/dist/cjs/constants/abis.js +0 -1
- package/dist/cjs/constants/abis.js.map +1 -1
- package/dist/cjs/constants/solidity.js +0 -1
- package/dist/cjs/constants/solidity.js.map +1 -1
- package/dist/cjs/errors/abi.js.map +1 -1
- package/dist/cjs/errors/account.js.map +1 -1
- package/dist/cjs/errors/address.js.map +1 -1
- package/dist/cjs/errors/base.js +27 -21
- package/dist/cjs/errors/base.js.map +1 -1
- package/dist/cjs/errors/block.js.map +1 -1
- package/dist/cjs/errors/chain.js.map +1 -1
- package/dist/cjs/errors/contract.js.map +1 -1
- package/dist/cjs/errors/data.js.map +1 -1
- package/dist/cjs/errors/encoding.js.map +1 -1
- package/dist/cjs/errors/ens.js.map +1 -1
- package/dist/cjs/errors/estimateGas.js.map +1 -1
- package/dist/cjs/errors/index.js +27 -23
- package/dist/cjs/errors/index.js.map +1 -1
- package/dist/cjs/errors/log.js.map +1 -1
- package/dist/cjs/errors/node.js +0 -9
- package/dist/cjs/errors/node.js.map +1 -1
- package/dist/cjs/errors/request.js +50 -259
- package/dist/cjs/errors/request.js.map +1 -1
- package/dist/cjs/errors/rpc.js +271 -50
- package/dist/cjs/errors/rpc.js.map +1 -1
- package/dist/cjs/errors/transaction.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/cjs/errors/version.js.map +1 -1
- package/dist/cjs/index.js +10 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/eip1193.js +0 -2
- package/dist/cjs/types/eip1193.js.map +1 -1
- package/dist/cjs/utils/abi/decodeAbiParameters.js +0 -29
- package/dist/cjs/utils/abi/decodeAbiParameters.js.map +1 -1
- package/dist/cjs/utils/abi/decodeEventLog.js +0 -2
- package/dist/cjs/utils/abi/decodeEventLog.js.map +1 -1
- package/dist/cjs/utils/abi/encodeAbiParameters.js +1 -10
- package/dist/cjs/utils/abi/encodeAbiParameters.js.map +1 -1
- package/dist/cjs/utils/abi/getAbiItem.js +0 -7
- package/dist/cjs/utils/abi/getAbiItem.js.map +1 -1
- package/dist/cjs/utils/accounts.js +0 -3
- package/dist/cjs/utils/accounts.js.map +1 -1
- package/dist/cjs/utils/buildRequest.js +16 -3
- package/dist/cjs/utils/buildRequest.js.map +1 -1
- package/dist/cjs/utils/data/size.js +0 -6
- package/dist/cjs/utils/data/size.js.map +1 -1
- package/dist/cjs/utils/data/slice.js +0 -21
- package/dist/cjs/utils/data/slice.js.map +1 -1
- package/dist/cjs/utils/encoding/fromBytes.js +0 -15
- package/dist/cjs/utils/encoding/fromBytes.js.map +1 -1
- package/dist/cjs/utils/encoding/fromHex.js +0 -15
- package/dist/cjs/utils/encoding/fromHex.js.map +1 -1
- package/dist/cjs/utils/encoding/toBytes.js +0 -13
- package/dist/cjs/utils/encoding/toBytes.js.map +1 -1
- package/dist/cjs/utils/encoding/toHex.js +0 -15
- package/dist/cjs/utils/encoding/toHex.js.map +1 -1
- package/dist/cjs/utils/ens/avatar/parseAvatarRecord.js +2 -6
- package/dist/cjs/utils/ens/avatar/parseAvatarRecord.js.map +1 -1
- package/dist/cjs/utils/ens/avatar/utils.js +0 -10
- package/dist/cjs/utils/ens/avatar/utils.js.map +1 -1
- package/dist/cjs/utils/ens/labelhash.js +0 -9
- package/dist/cjs/utils/ens/labelhash.js.map +1 -1
- package/dist/cjs/utils/ens/namehash.js +0 -12
- package/dist/cjs/utils/ens/namehash.js.map +1 -1
- package/dist/cjs/utils/ens/normalize.js +0 -10
- package/dist/cjs/utils/ens/normalize.js.map +1 -1
- package/dist/cjs/utils/ens/packetToBytes.js +0 -4
- package/dist/cjs/utils/ens/packetToBytes.js.map +1 -1
- package/dist/cjs/utils/errors/getNodeError.js +28 -27
- package/dist/cjs/utils/errors/getNodeError.js.map +1 -1
- package/dist/cjs/utils/filters/createFilterRequestScope.js +14 -0
- package/dist/cjs/utils/filters/createFilterRequestScope.js.map +1 -0
- package/dist/cjs/utils/formatters/block.js +0 -1
- package/dist/cjs/utils/formatters/block.js.map +1 -1
- package/dist/cjs/utils/formatters/extract.js +0 -3
- package/dist/cjs/utils/formatters/extract.js.map +1 -1
- package/dist/cjs/utils/formatters/format.js +0 -3
- package/dist/cjs/utils/formatters/format.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/observe.js +0 -5
- package/dist/cjs/utils/observe.js.map +1 -1
- package/dist/cjs/utils/poll.js +0 -3
- package/dist/cjs/utils/poll.js.map +1 -1
- package/dist/cjs/utils/promise/withCache.js +0 -13
- package/dist/cjs/utils/promise/withCache.js.map +1 -1
- package/dist/cjs/utils/regex.js +0 -4
- package/dist/cjs/utils/regex.js.map +1 -1
- package/dist/cjs/utils/rpc.js +3 -13
- package/dist/cjs/utils/rpc.js.map +1 -1
- package/dist/cjs/utils/signature/hashTypedData.js +0 -3
- package/dist/cjs/utils/signature/hashTypedData.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 -13
- 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/cjs/utils/transaction/prepareRequest.js +0 -4
- package/dist/cjs/utils/transaction/prepareRequest.js.map +1 -1
- package/dist/cjs/utils/transaction/serializeTransaction.js +2 -4
- package/dist/cjs/utils/transaction/serializeTransaction.js.map +1 -1
- package/dist/cjs/utils/typedData.js +0 -4
- package/dist/cjs/utils/typedData.js.map +1 -1
- package/dist/cjs/utils/unit/parseUnits.js +0 -2
- package/dist/cjs/utils/unit/parseUnits.js.map +1 -1
- package/dist/esm/accounts/generateMnemonic.js +0 -7
- package/dist/esm/accounts/generateMnemonic.js.map +1 -1
- package/dist/esm/accounts/generatePrivateKey.js +0 -5
- package/dist/esm/accounts/generatePrivateKey.js.map +1 -1
- package/dist/esm/accounts/hdKeyToAccount.js +0 -5
- package/dist/esm/accounts/hdKeyToAccount.js.map +1 -1
- package/dist/esm/accounts/mnemonicToAccount.js +0 -5
- package/dist/esm/accounts/mnemonicToAccount.js.map +1 -1
- package/dist/esm/accounts/privateKeyToAccount.js +0 -5
- package/dist/esm/accounts/privateKeyToAccount.js.map +1 -1
- package/dist/esm/accounts/toAccount.js +0 -5
- package/dist/esm/accounts/toAccount.js.map +1 -1
- package/dist/esm/accounts/utils/publicKeyToAddress.js +0 -7
- package/dist/esm/accounts/utils/publicKeyToAddress.js.map +1 -1
- package/dist/esm/accounts/utils/sign.js +0 -8
- package/dist/esm/accounts/utils/sign.js.map +1 -1
- package/dist/esm/accounts/utils/signMessage.js +0 -6
- package/dist/esm/accounts/utils/signMessage.js.map +1 -1
- package/dist/esm/accounts/utils/signTypedData.js +0 -6
- package/dist/esm/accounts/utils/signTypedData.js.map +1 -1
- package/dist/esm/actions/ens/getEnsAddress.js +0 -6
- package/dist/esm/actions/ens/getEnsAddress.js.map +1 -1
- package/dist/esm/actions/ens/getEnsAvatar.js +0 -3
- package/dist/esm/actions/ens/getEnsAvatar.js.map +1 -1
- package/dist/esm/actions/ens/getEnsName.js +0 -12
- package/dist/esm/actions/ens/getEnsName.js.map +1 -1
- package/dist/esm/actions/ens/getEnsResolver.js +0 -3
- package/dist/esm/actions/ens/getEnsResolver.js.map +1 -1
- package/dist/esm/actions/ens/getEnsText.js +0 -15
- package/dist/esm/actions/ens/getEnsText.js.map +1 -1
- package/dist/esm/actions/getContract.js +0 -14
- package/dist/esm/actions/getContract.js.map +1 -1
- package/dist/esm/actions/public/call.js +0 -1
- package/dist/esm/actions/public/call.js.map +1 -1
- package/dist/esm/actions/public/createBlockFilter.js +5 -1
- package/dist/esm/actions/public/createBlockFilter.js.map +1 -1
- package/dist/esm/actions/public/createContractEventFilter.js +5 -0
- package/dist/esm/actions/public/createContractEventFilter.js.map +1 -1
- package/dist/esm/actions/public/createEventFilter.js +5 -0
- package/dist/esm/actions/public/createEventFilter.js.map +1 -1
- package/dist/esm/actions/public/createPendingTransactionFilter.js +5 -1
- package/dist/esm/actions/public/createPendingTransactionFilter.js.map +1 -1
- package/dist/esm/actions/public/estimateContractGas.js.map +1 -1
- package/dist/esm/actions/public/estimateGas.js +0 -4
- package/dist/esm/actions/public/estimateGas.js.map +1 -1
- package/dist/esm/actions/public/getBalance.js +0 -3
- package/dist/esm/actions/public/getBalance.js.map +1 -1
- package/dist/esm/actions/public/getBlock.js.map +1 -1
- package/dist/esm/actions/public/getBlockNumber.js +0 -3
- package/dist/esm/actions/public/getBlockNumber.js.map +1 -1
- package/dist/esm/actions/public/getBlockTransactionCount.js.map +1 -1
- package/dist/esm/actions/public/getBytecode.js.map +1 -1
- package/dist/esm/actions/public/getChainId.js.map +1 -1
- package/dist/esm/actions/public/getFeeHistory.js +0 -3
- package/dist/esm/actions/public/getFeeHistory.js.map +1 -1
- package/dist/esm/actions/public/getFilterChanges.js +2 -3
- package/dist/esm/actions/public/getFilterChanges.js.map +1 -1
- package/dist/esm/actions/public/getFilterLogs.js +2 -3
- package/dist/esm/actions/public/getFilterLogs.js.map +1 -1
- package/dist/esm/actions/public/getGasPrice.js +0 -3
- package/dist/esm/actions/public/getGasPrice.js.map +1 -1
- package/dist/esm/actions/public/getLogs.js +0 -4
- package/dist/esm/actions/public/getLogs.js.map +1 -1
- package/dist/esm/actions/public/getStorageAt.js.map +1 -1
- package/dist/esm/actions/public/getTransaction.js +0 -1
- package/dist/esm/actions/public/getTransaction.js.map +1 -1
- package/dist/esm/actions/public/getTransactionConfirmations.js.map +1 -1
- package/dist/esm/actions/public/getTransactionCount.js +0 -3
- package/dist/esm/actions/public/getTransactionCount.js.map +1 -1
- package/dist/esm/actions/public/getTransactionReceipt.js.map +1 -1
- package/dist/esm/actions/public/multicall.js +0 -1
- package/dist/esm/actions/public/multicall.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 +2 -2
- package/dist/esm/actions/public/uninstallFilter.js.map +1 -1
- package/dist/esm/actions/public/waitForTransactionReceipt.js +0 -11
- package/dist/esm/actions/public/waitForTransactionReceipt.js.map +1 -1
- package/dist/esm/actions/public/watchBlockNumber.js +0 -7
- package/dist/esm/actions/public/watchBlockNumber.js.map +1 -1
- package/dist/esm/actions/public/watchBlocks.js +1 -13
- package/dist/esm/actions/public/watchBlocks.js.map +1 -1
- package/dist/esm/actions/public/watchContractEvent.js +0 -6
- package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
- package/dist/esm/actions/public/watchEvent.js +0 -6
- package/dist/esm/actions/public/watchEvent.js.map +1 -1
- package/dist/esm/actions/public/watchPendingTransactions.js.map +1 -1
- package/dist/esm/actions/wallet/deployContract.js.map +1 -1
- package/dist/esm/actions/wallet/sendTransaction.js +0 -2
- package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
- package/dist/esm/actions/wallet/signTypedData.js +0 -2
- package/dist/esm/actions/wallet/signTypedData.js.map +1 -1
- package/dist/esm/adapters/ethers.js +0 -5
- package/dist/esm/adapters/ethers.js.map +1 -1
- package/dist/esm/clients/createClient.js +0 -3
- package/dist/esm/clients/createClient.js.map +1 -1
- package/dist/esm/clients/createPublicClient.js +0 -3
- package/dist/esm/clients/createPublicClient.js.map +1 -1
- package/dist/esm/clients/createTestClient.js +0 -3
- package/dist/esm/clients/createTestClient.js.map +1 -1
- package/dist/esm/clients/createWalletClient.js +0 -3
- package/dist/esm/clients/createWalletClient.js.map +1 -1
- package/dist/esm/clients/decorators/public.js.map +1 -1
- package/dist/esm/clients/decorators/wallet.js.map +1 -1
- package/dist/esm/clients/transports/createTransport.js +0 -3
- package/dist/esm/clients/transports/createTransport.js.map +1 -1
- package/dist/esm/clients/transports/custom.js +0 -3
- package/dist/esm/clients/transports/custom.js.map +1 -1
- package/dist/esm/clients/transports/fallback.js +18 -12
- package/dist/esm/clients/transports/fallback.js.map +1 -1
- package/dist/esm/clients/transports/http.js +1 -6
- package/dist/esm/clients/transports/http.js.map +1 -1
- package/dist/esm/clients/transports/webSocket.js +1 -6
- package/dist/esm/clients/transports/webSocket.js.map +1 -1
- package/dist/esm/constants/abis.js +0 -1
- package/dist/esm/constants/abis.js.map +1 -1
- package/dist/esm/constants/solidity.js +0 -1
- package/dist/esm/constants/solidity.js.map +1 -1
- package/dist/esm/errors/abi.js.map +1 -1
- package/dist/esm/errors/account.js.map +1 -1
- package/dist/esm/errors/address.js.map +1 -1
- package/dist/esm/errors/base.js +27 -21
- package/dist/esm/errors/base.js.map +1 -1
- package/dist/esm/errors/block.js.map +1 -1
- package/dist/esm/errors/chain.js.map +1 -1
- package/dist/esm/errors/contract.js.map +1 -1
- package/dist/esm/errors/data.js.map +1 -1
- package/dist/esm/errors/encoding.js.map +1 -1
- package/dist/esm/errors/ens.js.map +1 -1
- package/dist/esm/errors/estimateGas.js.map +1 -1
- package/dist/esm/errors/index.js +4 -4
- package/dist/esm/errors/index.js.map +1 -1
- package/dist/esm/errors/log.js.map +1 -1
- package/dist/esm/errors/node.js +0 -9
- package/dist/esm/errors/node.js.map +1 -1
- package/dist/esm/errors/request.js +45 -241
- package/dist/esm/errors/request.js.map +1 -1
- package/dist/esm/errors/rpc.js +249 -45
- package/dist/esm/errors/rpc.js.map +1 -1
- package/dist/esm/errors/transaction.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/esm/errors/version.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/eip1193.js +0 -2
- package/dist/esm/types/eip1193.js.map +1 -1
- package/dist/esm/utils/abi/decodeAbiParameters.js +0 -29
- package/dist/esm/utils/abi/decodeAbiParameters.js.map +1 -1
- package/dist/esm/utils/abi/decodeEventLog.js +0 -2
- package/dist/esm/utils/abi/decodeEventLog.js.map +1 -1
- package/dist/esm/utils/abi/encodeAbiParameters.js +1 -10
- package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
- package/dist/esm/utils/abi/getAbiItem.js +0 -7
- package/dist/esm/utils/abi/getAbiItem.js.map +1 -1
- package/dist/esm/utils/accounts.js +0 -3
- package/dist/esm/utils/accounts.js.map +1 -1
- package/dist/esm/utils/buildRequest.js +16 -3
- package/dist/esm/utils/buildRequest.js.map +1 -1
- package/dist/esm/utils/data/size.js +0 -6
- package/dist/esm/utils/data/size.js.map +1 -1
- package/dist/esm/utils/data/slice.js +0 -21
- package/dist/esm/utils/data/slice.js.map +1 -1
- package/dist/esm/utils/encoding/fromBytes.js +0 -15
- package/dist/esm/utils/encoding/fromBytes.js.map +1 -1
- package/dist/esm/utils/encoding/fromHex.js +0 -15
- package/dist/esm/utils/encoding/fromHex.js.map +1 -1
- package/dist/esm/utils/encoding/toBytes.js +0 -13
- package/dist/esm/utils/encoding/toBytes.js.map +1 -1
- package/dist/esm/utils/encoding/toHex.js +0 -15
- package/dist/esm/utils/encoding/toHex.js.map +1 -1
- package/dist/esm/utils/ens/avatar/parseAvatarRecord.js +2 -6
- package/dist/esm/utils/ens/avatar/parseAvatarRecord.js.map +1 -1
- package/dist/esm/utils/ens/avatar/utils.js +0 -10
- package/dist/esm/utils/ens/avatar/utils.js.map +1 -1
- package/dist/esm/utils/ens/labelhash.js +0 -9
- package/dist/esm/utils/ens/labelhash.js.map +1 -1
- package/dist/esm/utils/ens/namehash.js +0 -12
- package/dist/esm/utils/ens/namehash.js.map +1 -1
- package/dist/esm/utils/ens/normalize.js +0 -10
- package/dist/esm/utils/ens/normalize.js.map +1 -1
- package/dist/esm/utils/ens/packetToBytes.js +0 -4
- package/dist/esm/utils/ens/packetToBytes.js.map +1 -1
- package/dist/esm/utils/errors/getNodeError.js +3 -2
- package/dist/esm/utils/errors/getNodeError.js.map +1 -1
- package/dist/esm/utils/filters/createFilterRequestScope.js +10 -0
- package/dist/esm/utils/filters/createFilterRequestScope.js.map +1 -0
- package/dist/esm/utils/formatters/block.js +0 -1
- package/dist/esm/utils/formatters/block.js.map +1 -1
- package/dist/esm/utils/formatters/extract.js +0 -3
- package/dist/esm/utils/formatters/extract.js.map +1 -1
- package/dist/esm/utils/formatters/format.js +0 -3
- package/dist/esm/utils/formatters/format.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/observe.js +0 -5
- package/dist/esm/utils/observe.js.map +1 -1
- package/dist/esm/utils/poll.js +0 -3
- package/dist/esm/utils/poll.js.map +1 -1
- package/dist/esm/utils/promise/withCache.js +0 -13
- package/dist/esm/utils/promise/withCache.js.map +1 -1
- package/dist/esm/utils/regex.js +0 -4
- package/dist/esm/utils/regex.js.map +1 -1
- package/dist/esm/utils/rpc.js +4 -14
- package/dist/esm/utils/rpc.js.map +1 -1
- package/dist/esm/utils/signature/hashTypedData.js +0 -3
- package/dist/esm/utils/signature/hashTypedData.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 -13
- 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/esm/utils/transaction/prepareRequest.js +0 -4
- package/dist/esm/utils/transaction/prepareRequest.js.map +1 -1
- package/dist/esm/utils/transaction/serializeTransaction.js +2 -4
- package/dist/esm/utils/transaction/serializeTransaction.js.map +1 -1
- package/dist/esm/utils/typedData.js +0 -4
- package/dist/esm/utils/typedData.js.map +1 -1
- package/dist/esm/utils/unit/parseUnits.js +0 -2
- package/dist/esm/utils/unit/parseUnits.js.map +1 -1
- package/dist/types/actions/ens/getEnsAddress.d.ts +28 -5
- package/dist/types/actions/ens/getEnsAddress.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsAvatar.d.ts +28 -2
- package/dist/types/actions/ens/getEnsAvatar.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsName.d.ts +19 -3
- package/dist/types/actions/ens/getEnsName.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsResolver.d.ts +29 -3
- package/dist/types/actions/ens/getEnsResolver.d.ts.map +1 -1
- package/dist/types/actions/ens/getEnsText.d.ts +22 -7
- package/dist/types/actions/ens/getEnsText.d.ts.map +1 -1
- package/dist/types/actions/getContract.d.ts +42 -3
- package/dist/types/actions/getContract.d.ts.map +1 -1
- package/dist/types/actions/public/call.d.ts +29 -1
- package/dist/types/actions/public/call.d.ts.map +1 -1
- package/dist/types/actions/public/createBlockFilter.d.ts +21 -0
- package/dist/types/actions/public/createBlockFilter.d.ts.map +1 -1
- package/dist/types/actions/public/createContractEventFilter.d.ts +22 -0
- package/dist/types/actions/public/createContractEventFilter.d.ts.map +1 -1
- package/dist/types/actions/public/createEventFilter.d.ts +23 -0
- package/dist/types/actions/public/createEventFilter.d.ts.map +1 -1
- package/dist/types/actions/public/createPendingTransactionFilter.d.ts +21 -0
- package/dist/types/actions/public/createPendingTransactionFilter.d.ts.map +1 -1
- package/dist/types/actions/public/estimateContractGas.d.ts +28 -0
- package/dist/types/actions/public/estimateContractGas.d.ts.map +1 -1
- package/dist/types/actions/public/estimateGas.d.ts +27 -2
- package/dist/types/actions/public/estimateGas.d.ts.map +1 -1
- package/dist/types/actions/public/getBalance.d.ts +34 -1
- package/dist/types/actions/public/getBalance.d.ts.map +1 -1
- package/dist/types/actions/public/getBlock.d.ts +28 -1
- package/dist/types/actions/public/getBlock.d.ts.map +1 -1
- package/dist/types/actions/public/getBlockNumber.d.ts +21 -1
- package/dist/types/actions/public/getBlockNumber.d.ts.map +1 -1
- package/dist/types/actions/public/getBlockTransactionCount.d.ts +23 -0
- package/dist/types/actions/public/getBlockTransactionCount.d.ts.map +1 -1
- package/dist/types/actions/public/getBytecode.d.ts +23 -0
- package/dist/types/actions/public/getBytecode.d.ts.map +1 -1
- package/dist/types/actions/public/getChainId.d.ts +21 -0
- package/dist/types/actions/public/getChainId.d.ts.map +1 -1
- package/dist/types/actions/public/getFeeHistory.d.ts +33 -1
- package/dist/types/actions/public/getFeeHistory.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterChanges.d.ts +84 -1
- package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterLogs.d.ts +29 -1
- package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
- package/dist/types/actions/public/getGasPrice.d.ts +18 -1
- package/dist/types/actions/public/getGasPrice.d.ts.map +1 -1
- package/dist/types/actions/public/getLogs.d.ts +22 -3
- package/dist/types/actions/public/getLogs.d.ts.map +1 -1
- package/dist/types/actions/public/getStorageAt.d.ts +24 -0
- package/dist/types/actions/public/getStorageAt.d.ts.map +1 -1
- package/dist/types/actions/public/getTransaction.d.ts +24 -1
- package/dist/types/actions/public/getTransaction.d.ts.map +1 -1
- package/dist/types/actions/public/getTransactionConfirmations.d.ts +24 -0
- package/dist/types/actions/public/getTransactionConfirmations.d.ts.map +1 -1
- package/dist/types/actions/public/getTransactionCount.d.ts +21 -1
- package/dist/types/actions/public/getTransactionCount.d.ts.map +1 -1
- package/dist/types/actions/public/getTransactionReceipt.d.ts +24 -0
- package/dist/types/actions/public/getTransactionReceipt.d.ts.map +1 -1
- package/dist/types/actions/public/multicall.d.ts +39 -0
- package/dist/types/actions/public/multicall.d.ts.map +1 -1
- package/dist/types/actions/public/readContract.d.ts +32 -0
- package/dist/types/actions/public/readContract.d.ts.map +1 -1
- package/dist/types/actions/public/simulateContract.d.ts +32 -0
- package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
- package/dist/types/actions/public/uninstallFilter.d.ts +26 -1
- package/dist/types/actions/public/uninstallFilter.d.ts.map +1 -1
- package/dist/types/actions/public/waitForTransactionReceipt.d.ts +48 -2
- package/dist/types/actions/public/waitForTransactionReceipt.d.ts.map +1 -1
- package/dist/types/actions/public/watchBlockNumber.d.ts +25 -1
- package/dist/types/actions/public/watchBlockNumber.d.ts.map +1 -1
- package/dist/types/actions/public/watchBlocks.d.ts +24 -2
- package/dist/types/actions/public/watchBlocks.d.ts.map +1 -1
- package/dist/types/actions/public/watchContractEvent.d.ts +31 -0
- package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
- package/dist/types/actions/public/watchEvent.d.ts +37 -1
- package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
- package/dist/types/actions/public/watchPendingTransactions.d.ts +47 -4
- package/dist/types/actions/public/watchPendingTransactions.d.ts.map +1 -1
- package/dist/types/actions/wallet/deployContract.d.ts +27 -0
- package/dist/types/actions/wallet/deployContract.d.ts.map +1 -1
- package/dist/types/clients/decorators/public.d.ts +996 -1
- package/dist/types/clients/decorators/public.d.ts.map +1 -1
- package/dist/types/clients/decorators/wallet.d.ts +25 -0
- package/dist/types/clients/decorators/wallet.d.ts.map +1 -1
- package/dist/types/clients/transports/fallback.d.ts +14 -0
- package/dist/types/clients/transports/fallback.d.ts.map +1 -1
- package/dist/types/errors/abi.d.ts.map +1 -1
- package/dist/types/errors/account.d.ts.map +1 -1
- package/dist/types/errors/address.d.ts.map +1 -1
- package/dist/types/errors/base.d.ts +1 -0
- package/dist/types/errors/base.d.ts.map +1 -1
- package/dist/types/errors/block.d.ts.map +1 -1
- package/dist/types/errors/chain.d.ts.map +1 -1
- package/dist/types/errors/contract.d.ts.map +1 -1
- package/dist/types/errors/data.d.ts.map +1 -1
- package/dist/types/errors/encoding.d.ts.map +1 -1
- package/dist/types/errors/ens.d.ts.map +1 -1
- package/dist/types/errors/estimateGas.d.ts.map +1 -1
- package/dist/types/errors/index.d.ts +4 -4
- package/dist/types/errors/index.d.ts.map +1 -1
- package/dist/types/errors/log.d.ts.map +1 -1
- package/dist/types/errors/node.d.ts.map +1 -1
- package/dist/types/errors/request.d.ts +42 -80
- package/dist/types/errors/request.d.ts.map +1 -1
- package/dist/types/errors/rpc.d.ts +189 -43
- package/dist/types/errors/rpc.d.ts.map +1 -1
- package/dist/types/errors/transaction.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/errors/version.d.ts.map +1 -1
- package/dist/types/index.d.ts +4 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/types/eip1193.d.ts +2 -1
- package/dist/types/types/eip1193.d.ts.map +1 -1
- package/dist/types/types/filter.d.ts +2 -0
- package/dist/types/types/filter.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/types/window.d.ts +2 -4
- package/dist/types/types/window.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/buildRequest.d.ts.map +1 -1
- package/dist/types/utils/errors/getNodeError.d.ts +1 -1
- package/dist/types/utils/errors/getNodeError.d.ts.map +1 -1
- package/dist/types/utils/filters/createFilterRequestScope.d.ts +16 -0
- package/dist/types/utils/filters/createFilterRequestScope.d.ts.map +1 -0
- 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.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 +2 -2
- package/src/actions/ens/getEnsAddress.ts +28 -5
- package/src/actions/ens/getEnsAvatar.ts +28 -2
- package/src/actions/ens/getEnsName.ts +19 -3
- package/src/actions/ens/getEnsResolver.ts +29 -3
- package/src/actions/ens/getEnsText.ts +22 -7
- package/src/actions/getContract.ts +42 -3
- package/src/actions/public/call.ts +29 -1
- package/src/actions/public/createBlockFilter.ts +26 -1
- package/src/actions/public/createContractEventFilter.ts +28 -0
- package/src/actions/public/createEventFilter.ts +30 -0
- package/src/actions/public/createPendingTransactionFilter.ts +26 -1
- package/src/actions/public/estimateContractGas.ts +28 -0
- package/src/actions/public/estimateGas.ts +27 -2
- package/src/actions/public/getBalance.ts +34 -1
- package/src/actions/public/getBlock.ts +28 -1
- package/src/actions/public/getBlockNumber.ts +21 -1
- package/src/actions/public/getBlockTransactionCount.ts +23 -0
- package/src/actions/public/getBytecode.ts +23 -0
- package/src/actions/public/getChainId.ts +21 -0
- package/src/actions/public/getFeeHistory.ts +33 -1
- package/src/actions/public/getFilterChanges.ts +85 -2
- package/src/actions/public/getFilterLogs.ts +30 -2
- package/src/actions/public/getGasPrice.ts +18 -1
- package/src/actions/public/getLogs.ts +23 -4
- package/src/actions/public/getStorageAt.ts +24 -0
- package/src/actions/public/getTransaction.ts +24 -1
- package/src/actions/public/getTransactionConfirmations.ts +24 -0
- package/src/actions/public/getTransactionCount.ts +21 -1
- package/src/actions/public/getTransactionReceipt.ts +24 -0
- package/src/actions/public/multicall.ts +39 -0
- package/src/actions/public/readContract.ts +32 -0
- package/src/actions/public/simulateContract.ts +32 -0
- package/src/actions/public/uninstallFilter.ts +27 -2
- package/src/actions/public/waitForTransactionReceipt.ts +48 -2
- package/src/actions/public/watchBlockNumber.ts +25 -1
- package/src/actions/public/watchBlocks.ts +24 -2
- package/src/actions/public/watchContractEvent.ts +31 -0
- package/src/actions/public/watchEvent.ts +37 -1
- package/src/actions/public/watchPendingTransactions.ts +49 -4
- package/src/actions/wallet/deployContract.ts +27 -0
- package/src/clients/decorators/public.ts +996 -1
- package/src/clients/decorators/wallet.ts +25 -0
- package/src/clients/transports/fallback.ts +46 -2
- package/src/errors/abi.ts +25 -25
- package/src/errors/account.ts +1 -1
- package/src/errors/address.ts +1 -1
- package/src/errors/base.ts +7 -5
- package/src/errors/block.ts +1 -1
- package/src/errors/chain.ts +4 -4
- package/src/errors/contract.ts +7 -7
- package/src/errors/data.ts +1 -1
- package/src/errors/encoding.ts +7 -7
- package/src/errors/ens.ts +4 -4
- package/src/errors/estimateGas.ts +2 -2
- package/src/errors/index.ts +15 -11
- package/src/errors/log.ts +1 -1
- package/src/errors/node.ts +12 -12
- package/src/errors/request.ts +82 -175
- package/src/errors/rpc.ts +355 -89
- package/src/errors/transaction.ts +11 -11
- package/src/errors/version.ts +1 -1
- package/src/index.ts +9 -1
- package/src/types/eip1193.ts +6 -1
- package/src/types/filter.ts +3 -0
- package/src/types/index.ts +2 -0
- package/src/types/window.ts +2 -4
- package/src/utils/abi/getAbiItem.ts +9 -8
- package/src/utils/buildRequest.ts +19 -1
- package/src/utils/errors/getNodeError.ts +2 -3
- package/src/utils/filters/createFilterRequestScope.ts +42 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/rpc.ts +6 -4
- package/src/utils/signature/index.ts +6 -0
- package/src/utils/signature/recoverAddress.ts +2 -17
- package/src/utils/signature/recoverPublicKey.ts +30 -0
@@ -18,10 +18,23 @@ import {
|
|
18
18
|
UnknownRpcError,
|
19
19
|
UserRejectedRequestError,
|
20
20
|
} from '../errors/index.js'
|
21
|
+
import {
|
22
|
+
ChainDisconnectedError,
|
23
|
+
ProviderDisconnectedError,
|
24
|
+
UnauthorizedProviderError,
|
25
|
+
UnsupportedProviderMethodError,
|
26
|
+
} from '../errors/rpc.js'
|
21
27
|
import { withRetry } from './promise/index.js'
|
22
28
|
|
23
29
|
export const isDeterministicError = (error: Error) => {
|
24
|
-
if ('code' in error)
|
30
|
+
if ('code' in error)
|
31
|
+
return (
|
32
|
+
error.code !== -1 &&
|
33
|
+
error.code !== -32004 &&
|
34
|
+
error.code !== -32005 &&
|
35
|
+
error.code !== -32042 &&
|
36
|
+
error.code !== -32603
|
37
|
+
)
|
25
38
|
if (error instanceof HttpRequestError && error.status)
|
26
39
|
return (
|
27
40
|
error.status !== 408 &&
|
@@ -66,7 +79,12 @@ export function buildRequest<TRequest extends (args: any) => Promise<any>>(
|
|
66
79
|
if (err.code === -32004) throw new MethodNotSupportedRpcError(err)
|
67
80
|
if (err.code === -32005) throw new LimitExceededRpcError(err)
|
68
81
|
if (err.code === -32006) throw new JsonRpcVersionUnsupportedError(err)
|
82
|
+
if (err.code === -32042) throw new MethodNotSupportedRpcError(err)
|
69
83
|
if (err.code === 4001) throw new UserRejectedRequestError(err)
|
84
|
+
if (err.code === 4100) throw new UnauthorizedProviderError(err)
|
85
|
+
if (err.code === 4200) throw new UnsupportedProviderMethodError(err)
|
86
|
+
if (err.code === 4900) throw new ProviderDisconnectedError(err)
|
87
|
+
if (err.code === 4901) throw new ChainDisconnectedError(err)
|
70
88
|
if (err.code === 4902) throw new SwitchChainError(err)
|
71
89
|
if (err_ instanceof BaseError) throw err_
|
72
90
|
throw new UnknownRpcError(err as Error)
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import type { SendTransactionParameters } from '../../actions/index.js'
|
2
|
-
import type
|
2
|
+
import { RpcRequestError, type BaseError } from '../../errors/index.js'
|
3
3
|
import {
|
4
4
|
ExecutionRevertedError,
|
5
5
|
FeeCapTooHighError,
|
@@ -11,7 +11,6 @@ import {
|
|
11
11
|
NonceMaxValueError,
|
12
12
|
NonceTooHighError,
|
13
13
|
NonceTooLowError,
|
14
|
-
RpcError,
|
15
14
|
TipAboveFeeCapError,
|
16
15
|
TransactionRejectedRpcError,
|
17
16
|
TransactionTypeNotSupportedError,
|
@@ -22,7 +21,7 @@ export function containsNodeError(err: BaseError) {
|
|
22
21
|
return (
|
23
22
|
err instanceof TransactionRejectedRpcError ||
|
24
23
|
err instanceof InvalidInputRpcError ||
|
25
|
-
(err instanceof
|
24
|
+
(err instanceof RpcRequestError && err.code === ExecutionRevertedError.code)
|
26
25
|
)
|
27
26
|
}
|
28
27
|
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import type { Chain } from '../../chains.js'
|
2
|
+
import type { PublicClient, Transport } from '../../clients/index.js'
|
3
|
+
import type { OnResponseFn } from '../../clients/transports/fallback.js'
|
4
|
+
import type { Requests } from '../../types/eip1193.js'
|
5
|
+
import type { Hex } from '../../types/index.js'
|
6
|
+
|
7
|
+
type CreateFilterRequestScopeParameters = {
|
8
|
+
method:
|
9
|
+
| 'eth_newFilter'
|
10
|
+
| 'eth_newPendingTransactionFilter'
|
11
|
+
| 'eth_newBlockFilter'
|
12
|
+
}
|
13
|
+
// TODO: Narrow `request` to filter-based methods (ie. `eth_getFilterLogs`, etc).
|
14
|
+
type CreateFilterRequestScopeReturnType = (id: Hex) => Requests['request']
|
15
|
+
|
16
|
+
/**
|
17
|
+
* Scopes `request` to the filter ID. If the client is a fallback, it will
|
18
|
+
* listen for responses and scope the child transport `request` function
|
19
|
+
* to the successful filter ID.
|
20
|
+
*/
|
21
|
+
export function createFilterRequestScope<TChain extends Chain | undefined>(
|
22
|
+
client: PublicClient<Transport, TChain>,
|
23
|
+
{ method }: CreateFilterRequestScopeParameters,
|
24
|
+
): CreateFilterRequestScopeReturnType {
|
25
|
+
const requestMap: Record<Hex, PublicClient<Transport, TChain>['request']> = {}
|
26
|
+
|
27
|
+
if (client.transport.type === 'fallback')
|
28
|
+
client.transport.onResponse?.(
|
29
|
+
({
|
30
|
+
method: method_,
|
31
|
+
response: id,
|
32
|
+
status,
|
33
|
+
transport,
|
34
|
+
}: Parameters<OnResponseFn>[0]) => {
|
35
|
+
if (status === 'success' && method === method_)
|
36
|
+
requestMap[id as Hex] = transport.request
|
37
|
+
},
|
38
|
+
)
|
39
|
+
|
40
|
+
return ((id) =>
|
41
|
+
requestMap[id] || client.request) as CreateFilterRequestScopeReturnType
|
42
|
+
}
|
package/src/utils/index.ts
CHANGED
@@ -165,6 +165,8 @@ export type {
|
|
165
165
|
RecoverAddressReturnType,
|
166
166
|
RecoverMessageAddressParameters,
|
167
167
|
RecoverMessageAddressReturnType,
|
168
|
+
RecoverPublicKeyParameters,
|
169
|
+
RecoverPublicKeyReturnType,
|
168
170
|
RecoverTypedDataAddressParameters,
|
169
171
|
RecoverTypedDataAddressReturnType,
|
170
172
|
VerifyMessageParameters,
|
@@ -177,6 +179,7 @@ export {
|
|
177
179
|
hashTypedData,
|
178
180
|
recoverAddress,
|
179
181
|
recoverMessageAddress,
|
182
|
+
recoverPublicKey,
|
180
183
|
recoverTypedDataAddress,
|
181
184
|
verifyMessage,
|
182
185
|
verifyTypedData,
|
package/src/utils/rpc.ts
CHANGED
@@ -2,7 +2,7 @@ import WebSocket from 'isomorphic-ws'
|
|
2
2
|
import type { MessageEvent } from 'isomorphic-ws'
|
3
3
|
import {
|
4
4
|
HttpRequestError,
|
5
|
-
|
5
|
+
RpcRequestError,
|
6
6
|
TimeoutError,
|
7
7
|
WebSocketRequestError,
|
8
8
|
} from '../errors/index.js'
|
@@ -107,12 +107,12 @@ async function http(
|
|
107
107
|
}
|
108
108
|
|
109
109
|
if (data.error) {
|
110
|
-
throw new
|
110
|
+
throw new RpcRequestError({ body, error: data.error, url })
|
111
111
|
}
|
112
112
|
return data as RpcResponse
|
113
113
|
} catch (err) {
|
114
114
|
if (err instanceof HttpRequestError) throw err
|
115
|
-
if (err instanceof
|
115
|
+
if (err instanceof RpcRequestError) throw err
|
116
116
|
if (err instanceof TimeoutError) throw err
|
117
117
|
throw new HttpRequestError({
|
118
118
|
body,
|
@@ -224,7 +224,9 @@ function webSocket(
|
|
224
224
|
if (typeof message.id === 'number' && id_ !== message.id) return
|
225
225
|
|
226
226
|
if (message.error) {
|
227
|
-
onError?.(
|
227
|
+
onError?.(
|
228
|
+
new RpcRequestError({ body, error: message.error, url: socket.url }),
|
229
|
+
)
|
228
230
|
} else {
|
229
231
|
onData?.(message)
|
230
232
|
}
|
@@ -18,6 +18,12 @@ export type {
|
|
18
18
|
} from './recoverMessageAddress.js'
|
19
19
|
export { recoverMessageAddress } from './recoverMessageAddress.js'
|
20
20
|
|
21
|
+
export type {
|
22
|
+
RecoverPublicKeyParameters,
|
23
|
+
RecoverPublicKeyReturnType,
|
24
|
+
} from './recoverPublicKey.js'
|
25
|
+
export { recoverPublicKey } from './recoverPublicKey.js'
|
26
|
+
|
21
27
|
export type {
|
22
28
|
RecoverTypedDataAddressParameters,
|
23
29
|
RecoverTypedDataAddressReturnType,
|
@@ -1,7 +1,6 @@
|
|
1
1
|
import type { Address, ByteArray, Hex } from '../../types/index.js'
|
2
2
|
import { publicKeyToAddress } from '../accounts.js'
|
3
|
-
import {
|
4
|
-
import { hexToNumber, toHex } from '../encoding/index.js'
|
3
|
+
import { recoverPublicKey } from './recoverPublicKey.js'
|
5
4
|
|
6
5
|
export type RecoverAddressParameters = {
|
7
6
|
hash: Hex | ByteArray
|
@@ -13,19 +12,5 @@ export async function recoverAddress({
|
|
13
12
|
hash,
|
14
13
|
signature,
|
15
14
|
}: RecoverAddressParameters): Promise<RecoverAddressReturnType> {
|
16
|
-
|
17
|
-
const hashHex = isHex(hash) ? hash : toHex(hash)
|
18
|
-
|
19
|
-
// Derive v = recoveryId + 27 from end of the signature (27 is added when signing the message)
|
20
|
-
// The recoveryId represents the y-coordinate on the secp256k1 elliptic curve and can have a value [0, 1].
|
21
|
-
const v = hexToNumber(`0x${signatureHex.slice(130)}`)
|
22
|
-
|
23
|
-
const { secp256k1 } = await import('@noble/curves/secp256k1')
|
24
|
-
const publicKey = secp256k1.Signature.fromCompact(
|
25
|
-
signatureHex.substring(2, 130),
|
26
|
-
)
|
27
|
-
.addRecoveryBit(v - 27)
|
28
|
-
.recoverPublicKey(hashHex.substring(2))
|
29
|
-
.toHex(false)
|
30
|
-
return publicKeyToAddress(`0x${publicKey}`)
|
15
|
+
return publicKeyToAddress(await recoverPublicKey({ hash: hash, signature }))
|
31
16
|
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import type { ByteArray, Hex } from '../../types/index.js'
|
2
|
+
import { isHex } from '../data/index.js'
|
3
|
+
import { hexToNumber, toHex } from '../encoding/index.js'
|
4
|
+
|
5
|
+
export type RecoverPublicKeyParameters = {
|
6
|
+
hash: Hex | ByteArray
|
7
|
+
signature: Hex | ByteArray
|
8
|
+
}
|
9
|
+
export type RecoverPublicKeyReturnType = Hex
|
10
|
+
|
11
|
+
export async function recoverPublicKey({
|
12
|
+
hash,
|
13
|
+
signature,
|
14
|
+
}: RecoverPublicKeyParameters): Promise<RecoverPublicKeyReturnType> {
|
15
|
+
const signatureHex = isHex(signature) ? signature : toHex(signature)
|
16
|
+
const hashHex = isHex(hash) ? hash : toHex(hash)
|
17
|
+
|
18
|
+
// Derive v = recoveryId + 27 from end of the signature (27 is added when signing the message)
|
19
|
+
// The recoveryId represents the y-coordinate on the secp256k1 elliptic curve and can have a value [0, 1].
|
20
|
+
const v = hexToNumber(`0x${signatureHex.slice(130)}`)
|
21
|
+
|
22
|
+
const { secp256k1 } = await import('@noble/curves/secp256k1')
|
23
|
+
const publicKey = secp256k1.Signature.fromCompact(
|
24
|
+
signatureHex.substring(2, 130),
|
25
|
+
)
|
26
|
+
.addRecoveryBit(v - 27)
|
27
|
+
.recoverPublicKey(hashHex.substring(2))
|
28
|
+
.toHex(false)
|
29
|
+
return `0x${publicKey}`
|
30
|
+
}
|