viem 1.0.1 → 1.0.3

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.
Files changed (376) hide show
  1. package/dist/cjs/chains.js.map +1 -1
  2. package/dist/cjs/errors/base.js +4 -11
  3. package/dist/cjs/errors/base.js.map +1 -1
  4. package/dist/cjs/errors/version.js +1 -1
  5. package/dist/cjs/utils/encoding/toBytes.js.map +1 -1
  6. package/dist/cjs/utils/encoding/toHex.js.map +1 -1
  7. package/dist/cjs/utils/formatters/block.js +3 -1
  8. package/dist/cjs/utils/formatters/block.js.map +1 -1
  9. package/dist/cjs/utils/formatters/transaction.js +3 -1
  10. package/dist/cjs/utils/formatters/transaction.js.map +1 -1
  11. package/dist/cjs/utils/formatters/transactionReceipt.js.map +1 -1
  12. package/dist/cjs/utils/formatters/transactionRequest.js.map +1 -1
  13. package/dist/cjs/utils/hash/getEventSelector.js +5 -1
  14. package/dist/cjs/utils/hash/getEventSelector.js.map +1 -1
  15. package/dist/cjs/utils/hash/getFunctionSelector.js +5 -1
  16. package/dist/cjs/utils/hash/getFunctionSelector.js.map +1 -1
  17. package/dist/cjs/utils/hash/hashFunction.js +5 -1
  18. package/dist/cjs/utils/hash/hashFunction.js.map +1 -1
  19. package/dist/cjs/utils/observe.js.map +1 -1
  20. package/dist/cjs/utils/promise/createBatchScheduler.js.map +1 -1
  21. package/dist/cjs/utils/promise/withCache.js.map +1 -1
  22. package/dist/cjs/utils/rpc.js.map +1 -1
  23. package/dist/cjs/utils/unit/parseUnits.js +1 -2
  24. package/dist/cjs/utils/unit/parseUnits.js.map +1 -1
  25. package/dist/esm/accounts/generateMnemonic.js +7 -0
  26. package/dist/esm/accounts/generateMnemonic.js.map +1 -1
  27. package/dist/esm/accounts/generatePrivateKey.js +5 -0
  28. package/dist/esm/accounts/generatePrivateKey.js.map +1 -1
  29. package/dist/esm/accounts/hdKeyToAccount.js +5 -0
  30. package/dist/esm/accounts/hdKeyToAccount.js.map +1 -1
  31. package/dist/esm/accounts/mnemonicToAccount.js +5 -0
  32. package/dist/esm/accounts/mnemonicToAccount.js.map +1 -1
  33. package/dist/esm/accounts/privateKeyToAccount.js +5 -0
  34. package/dist/esm/accounts/privateKeyToAccount.js.map +1 -1
  35. package/dist/esm/accounts/toAccount.js +5 -0
  36. package/dist/esm/accounts/toAccount.js.map +1 -1
  37. package/dist/esm/accounts/utils/publicKeyToAddress.js +7 -0
  38. package/dist/esm/accounts/utils/publicKeyToAddress.js.map +1 -1
  39. package/dist/esm/accounts/utils/sign.js +8 -0
  40. package/dist/esm/accounts/utils/sign.js.map +1 -1
  41. package/dist/esm/accounts/utils/signMessage.js +6 -0
  42. package/dist/esm/accounts/utils/signMessage.js.map +1 -1
  43. package/dist/esm/accounts/utils/signTypedData.js +6 -0
  44. package/dist/esm/accounts/utils/signTypedData.js.map +1 -1
  45. package/dist/esm/actions/ens/getEnsAddress.js +28 -0
  46. package/dist/esm/actions/ens/getEnsAddress.js.map +1 -1
  47. package/dist/esm/actions/ens/getEnsAvatar.js +28 -0
  48. package/dist/esm/actions/ens/getEnsAvatar.js.map +1 -1
  49. package/dist/esm/actions/ens/getEnsName.js +27 -0
  50. package/dist/esm/actions/ens/getEnsName.js.map +1 -1
  51. package/dist/esm/actions/ens/getEnsResolver.js +28 -0
  52. package/dist/esm/actions/ens/getEnsResolver.js.map +1 -1
  53. package/dist/esm/actions/ens/getEnsText.js +29 -0
  54. package/dist/esm/actions/ens/getEnsText.js.map +1 -1
  55. package/dist/esm/actions/getContract.js +36 -0
  56. package/dist/esm/actions/getContract.js.map +1 -1
  57. package/dist/esm/actions/public/call.js +31 -0
  58. package/dist/esm/actions/public/call.js.map +1 -1
  59. package/dist/esm/actions/public/createBlockFilter.js +21 -0
  60. package/dist/esm/actions/public/createBlockFilter.js.map +1 -1
  61. package/dist/esm/actions/public/createContractEventFilter.js +22 -0
  62. package/dist/esm/actions/public/createContractEventFilter.js.map +1 -1
  63. package/dist/esm/actions/public/createEventFilter.js +23 -0
  64. package/dist/esm/actions/public/createEventFilter.js.map +1 -1
  65. package/dist/esm/actions/public/createPendingTransactionFilter.js +21 -0
  66. package/dist/esm/actions/public/createPendingTransactionFilter.js.map +1 -1
  67. package/dist/esm/actions/public/estimateContractGas.js +27 -0
  68. package/dist/esm/actions/public/estimateContractGas.js.map +1 -1
  69. package/dist/esm/actions/public/estimateGas.js +26 -0
  70. package/dist/esm/actions/public/estimateGas.js.map +1 -1
  71. package/dist/esm/actions/public/getBalance.js +35 -0
  72. package/dist/esm/actions/public/getBalance.js.map +1 -1
  73. package/dist/esm/actions/public/getBlock.js +24 -0
  74. package/dist/esm/actions/public/getBlock.js.map +1 -1
  75. package/dist/esm/actions/public/getBlockNumber.js +23 -0
  76. package/dist/esm/actions/public/getBlockNumber.js.map +1 -1
  77. package/dist/esm/actions/public/getBlockTransactionCount.js +23 -0
  78. package/dist/esm/actions/public/getBlockTransactionCount.js.map +1 -1
  79. package/dist/esm/actions/public/getBytecode.js +23 -0
  80. package/dist/esm/actions/public/getBytecode.js.map +1 -1
  81. package/dist/esm/actions/public/getChainId.js +21 -0
  82. package/dist/esm/actions/public/getChainId.js.map +1 -1
  83. package/dist/esm/actions/public/getFeeHistory.js +24 -0
  84. package/dist/esm/actions/public/getFeeHistory.js.map +1 -1
  85. package/dist/esm/actions/public/getFilterChanges.js +84 -0
  86. package/dist/esm/actions/public/getFilterChanges.js.map +1 -1
  87. package/dist/esm/actions/public/getFilterLogs.js +29 -0
  88. package/dist/esm/actions/public/getFilterLogs.js.map +1 -1
  89. package/dist/esm/actions/public/getGasPrice.js +20 -0
  90. package/dist/esm/actions/public/getGasPrice.js.map +1 -1
  91. package/dist/esm/actions/public/getLogs.js +24 -0
  92. package/dist/esm/actions/public/getLogs.js.map +1 -1
  93. package/dist/esm/actions/public/getStorageAt.js +24 -0
  94. package/dist/esm/actions/public/getStorageAt.js.map +1 -1
  95. package/dist/esm/actions/public/getTransaction.js +24 -0
  96. package/dist/esm/actions/public/getTransaction.js.map +1 -1
  97. package/dist/esm/actions/public/getTransactionConfirmations.js +24 -0
  98. package/dist/esm/actions/public/getTransactionConfirmations.js.map +1 -1
  99. package/dist/esm/actions/public/getTransactionCount.js +23 -0
  100. package/dist/esm/actions/public/getTransactionCount.js.map +1 -1
  101. package/dist/esm/actions/public/getTransactionReceipt.js +24 -0
  102. package/dist/esm/actions/public/getTransactionReceipt.js.map +1 -1
  103. package/dist/esm/actions/public/multicall.js +40 -0
  104. package/dist/esm/actions/public/multicall.js.map +1 -1
  105. package/dist/esm/actions/public/readContract.js +31 -0
  106. package/dist/esm/actions/public/readContract.js.map +1 -1
  107. package/dist/esm/actions/public/simulateContract.js +31 -0
  108. package/dist/esm/actions/public/simulateContract.js.map +1 -1
  109. package/dist/esm/actions/public/uninstallFilter.js +24 -0
  110. package/dist/esm/actions/public/uninstallFilter.js.map +1 -1
  111. package/dist/esm/actions/public/verifyHash.js +10 -0
  112. package/dist/esm/actions/public/verifyHash.js.map +1 -1
  113. package/dist/esm/actions/public/verifyMessage.js +11 -0
  114. package/dist/esm/actions/public/verifyMessage.js.map +1 -1
  115. package/dist/esm/actions/public/verifyTypedData.js +9 -0
  116. package/dist/esm/actions/public/verifyTypedData.js.map +1 -1
  117. package/dist/esm/actions/public/waitForTransactionReceipt.js +52 -0
  118. package/dist/esm/actions/public/waitForTransactionReceipt.js.map +1 -1
  119. package/dist/esm/actions/public/watchBlockNumber.js +31 -0
  120. package/dist/esm/actions/public/watchBlockNumber.js.map +1 -1
  121. package/dist/esm/actions/public/watchBlocks.js +35 -1
  122. package/dist/esm/actions/public/watchBlocks.js.map +1 -1
  123. package/dist/esm/actions/public/watchContractEvent.js +36 -0
  124. package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
  125. package/dist/esm/actions/public/watchEvent.js +38 -0
  126. package/dist/esm/actions/public/watchEvent.js.map +1 -1
  127. package/dist/esm/actions/public/watchPendingTransactions.js +29 -0
  128. package/dist/esm/actions/public/watchPendingTransactions.js.map +1 -1
  129. package/dist/esm/actions/test/dropTransaction.js +22 -0
  130. package/dist/esm/actions/test/dropTransaction.js.map +1 -1
  131. package/dist/esm/actions/test/getAutomine.js +20 -0
  132. package/dist/esm/actions/test/getAutomine.js.map +1 -1
  133. package/dist/esm/actions/test/getTxpoolContent.js +20 -0
  134. package/dist/esm/actions/test/getTxpoolContent.js.map +1 -1
  135. package/dist/esm/actions/test/getTxpoolStatus.js +20 -0
  136. package/dist/esm/actions/test/getTxpoolStatus.js.map +1 -1
  137. package/dist/esm/actions/test/impersonateAccount.js +22 -0
  138. package/dist/esm/actions/test/impersonateAccount.js.map +1 -1
  139. package/dist/esm/actions/test/increaseTime.js +22 -0
  140. package/dist/esm/actions/test/increaseTime.js.map +1 -1
  141. package/dist/esm/actions/test/inspectTxpool.js +20 -0
  142. package/dist/esm/actions/test/inspectTxpool.js.map +1 -1
  143. package/dist/esm/actions/test/mine.js +20 -0
  144. package/dist/esm/actions/test/mine.js.map +1 -1
  145. package/dist/esm/actions/test/removeBlockTimestampInterval.js +19 -0
  146. package/dist/esm/actions/test/removeBlockTimestampInterval.js.map +1 -1
  147. package/dist/esm/actions/test/reset.js +20 -0
  148. package/dist/esm/actions/test/reset.js.map +1 -1
  149. package/dist/esm/actions/test/revert.js +20 -0
  150. package/dist/esm/actions/test/revert.js.map +1 -1
  151. package/dist/esm/actions/test/sendUnsignedTransaction.js +25 -0
  152. package/dist/esm/actions/test/sendUnsignedTransaction.js.map +1 -1
  153. package/dist/esm/actions/test/setAutomine.js +19 -0
  154. package/dist/esm/actions/test/setAutomine.js.map +1 -1
  155. package/dist/esm/actions/test/setBalance.js +23 -0
  156. package/dist/esm/actions/test/setBalance.js.map +1 -1
  157. package/dist/esm/actions/test/setBlockGasLimit.js +20 -0
  158. package/dist/esm/actions/test/setBlockGasLimit.js.map +1 -1
  159. package/dist/esm/actions/test/setBlockTimestampInterval.js +20 -0
  160. package/dist/esm/actions/test/setBlockTimestampInterval.js.map +1 -1
  161. package/dist/esm/actions/test/setCode.js +23 -0
  162. package/dist/esm/actions/test/setCode.js.map +1 -1
  163. package/dist/esm/actions/test/setCoinbase.js +22 -0
  164. package/dist/esm/actions/test/setCoinbase.js.map +1 -1
  165. package/dist/esm/actions/test/setIntervalMining.js +20 -0
  166. package/dist/esm/actions/test/setIntervalMining.js.map +1 -1
  167. package/dist/esm/actions/test/setLoggingEnabled.js +19 -0
  168. package/dist/esm/actions/test/setLoggingEnabled.js.map +1 -1
  169. package/dist/esm/actions/test/setMinGasPrice.js +24 -0
  170. package/dist/esm/actions/test/setMinGasPrice.js.map +1 -1
  171. package/dist/esm/actions/test/setNextBlockBaseFeePerGas.js +22 -0
  172. package/dist/esm/actions/test/setNextBlockBaseFeePerGas.js.map +1 -1
  173. package/dist/esm/actions/test/setNextBlockTimestamp.js +20 -0
  174. package/dist/esm/actions/test/setNextBlockTimestamp.js.map +1 -1
  175. package/dist/esm/actions/test/setNonce.js +23 -0
  176. package/dist/esm/actions/test/setNonce.js.map +1 -1
  177. package/dist/esm/actions/test/setRpcUrl.js +20 -0
  178. package/dist/esm/actions/test/setRpcUrl.js.map +1 -1
  179. package/dist/esm/actions/test/setStorageAt.js +24 -0
  180. package/dist/esm/actions/test/setStorageAt.js.map +1 -1
  181. package/dist/esm/actions/test/snapshot.js +19 -0
  182. package/dist/esm/actions/test/snapshot.js.map +1 -1
  183. package/dist/esm/actions/test/stopImpersonatingAccount.js +22 -0
  184. package/dist/esm/actions/test/stopImpersonatingAccount.js.map +1 -1
  185. package/dist/esm/actions/wallet/addChain.js +19 -0
  186. package/dist/esm/actions/wallet/addChain.js.map +1 -1
  187. package/dist/esm/actions/wallet/deployContract.js +27 -0
  188. package/dist/esm/actions/wallet/deployContract.js.map +1 -1
  189. package/dist/esm/actions/wallet/getAddresses.js +20 -0
  190. package/dist/esm/actions/wallet/getAddresses.js.map +1 -1
  191. package/dist/esm/actions/wallet/getPermissions.js +20 -0
  192. package/dist/esm/actions/wallet/getPermissions.js.map +1 -1
  193. package/dist/esm/actions/wallet/requestAddresses.js +24 -0
  194. package/dist/esm/actions/wallet/requestAddresses.js.map +1 -1
  195. package/dist/esm/actions/wallet/requestPermissions.js +23 -0
  196. package/dist/esm/actions/wallet/requestPermissions.js.map +1 -1
  197. package/dist/esm/actions/wallet/sendTransaction.js +47 -0
  198. package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
  199. package/dist/esm/actions/wallet/signMessage.js +46 -0
  200. package/dist/esm/actions/wallet/signMessage.js.map +1 -1
  201. package/dist/esm/actions/wallet/signTypedData.js +100 -0
  202. package/dist/esm/actions/wallet/signTypedData.js.map +1 -1
  203. package/dist/esm/actions/wallet/switchChain.js +20 -0
  204. package/dist/esm/actions/wallet/switchChain.js.map +1 -1
  205. package/dist/esm/actions/wallet/watchAsset.js +28 -0
  206. package/dist/esm/actions/wallet/watchAsset.js.map +1 -1
  207. package/dist/esm/actions/wallet/writeContract.js +50 -0
  208. package/dist/esm/actions/wallet/writeContract.js.map +1 -1
  209. package/dist/esm/chains.js +96 -96
  210. package/dist/esm/chains.js.map +1 -1
  211. package/dist/esm/clients/createClient.js +3 -0
  212. package/dist/esm/clients/createClient.js.map +1 -1
  213. package/dist/esm/clients/createPublicClient.js +19 -0
  214. package/dist/esm/clients/createPublicClient.js.map +1 -1
  215. package/dist/esm/clients/createTestClient.js +23 -0
  216. package/dist/esm/clients/createTestClient.js.map +1 -1
  217. package/dist/esm/clients/createWalletClient.js +36 -0
  218. package/dist/esm/clients/createWalletClient.js.map +1 -1
  219. package/dist/esm/clients/transports/createTransport.js +3 -0
  220. package/dist/esm/clients/transports/createTransport.js.map +1 -1
  221. package/dist/esm/clients/transports/custom.js +3 -0
  222. package/dist/esm/clients/transports/custom.js.map +1 -1
  223. package/dist/esm/clients/transports/fallback.js +11 -0
  224. package/dist/esm/clients/transports/fallback.js.map +1 -1
  225. package/dist/esm/clients/transports/http.js +6 -1
  226. package/dist/esm/clients/transports/http.js.map +1 -1
  227. package/dist/esm/clients/transports/webSocket.js +6 -1
  228. package/dist/esm/clients/transports/webSocket.js.map +1 -1
  229. package/dist/esm/constants/abis.js +6 -0
  230. package/dist/esm/constants/abis.js.map +1 -1
  231. package/dist/esm/constants/solidity.js +1 -0
  232. package/dist/esm/constants/solidity.js.map +1 -1
  233. package/dist/esm/contract.js +0 -1
  234. package/dist/esm/contract.js.map +1 -1
  235. package/dist/esm/errors/base.js +4 -11
  236. package/dist/esm/errors/base.js.map +1 -1
  237. package/dist/esm/errors/node.js +9 -0
  238. package/dist/esm/errors/node.js.map +1 -1
  239. package/dist/esm/errors/rpc.js +103 -0
  240. package/dist/esm/errors/rpc.js.map +1 -1
  241. package/dist/esm/errors/version.js +1 -1
  242. package/dist/esm/index.js +0 -52
  243. package/dist/esm/index.js.map +1 -1
  244. package/dist/esm/package.json +1 -1
  245. package/dist/esm/types/account.js +1 -1
  246. package/dist/esm/types/account.js.map +1 -1
  247. package/dist/esm/types/eip1193.js +2 -0
  248. package/dist/esm/types/eip1193.js.map +1 -1
  249. package/dist/esm/utils/abi/decodeAbiParameters.js +29 -0
  250. package/dist/esm/utils/abi/decodeAbiParameters.js.map +1 -1
  251. package/dist/esm/utils/abi/decodeEventLog.js +2 -0
  252. package/dist/esm/utils/abi/decodeEventLog.js.map +1 -1
  253. package/dist/esm/utils/abi/encodeAbiParameters.js +10 -1
  254. package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
  255. package/dist/esm/utils/abi/getAbiItem.js +7 -0
  256. package/dist/esm/utils/abi/getAbiItem.js.map +1 -1
  257. package/dist/esm/utils/accounts.js +3 -0
  258. package/dist/esm/utils/accounts.js.map +1 -1
  259. package/dist/esm/utils/buildRequest.js +2 -0
  260. package/dist/esm/utils/buildRequest.js.map +1 -1
  261. package/dist/esm/utils/data/size.js +6 -0
  262. package/dist/esm/utils/data/size.js.map +1 -1
  263. package/dist/esm/utils/data/slice.js +21 -0
  264. package/dist/esm/utils/data/slice.js.map +1 -1
  265. package/dist/esm/utils/encoding/fromBytes.js +79 -0
  266. package/dist/esm/utils/encoding/fromBytes.js.map +1 -1
  267. package/dist/esm/utils/encoding/fromHex.js +106 -0
  268. package/dist/esm/utils/encoding/fromHex.js.map +1 -1
  269. package/dist/esm/utils/encoding/toBytes.js +102 -1
  270. package/dist/esm/utils/encoding/toBytes.js.map +1 -1
  271. package/dist/esm/utils/encoding/toHex.js +108 -2
  272. package/dist/esm/utils/encoding/toHex.js.map +1 -1
  273. package/dist/esm/utils/ens/avatar/parseAvatarRecord.js +6 -2
  274. package/dist/esm/utils/ens/avatar/parseAvatarRecord.js.map +1 -1
  275. package/dist/esm/utils/ens/avatar/utils.js +10 -0
  276. package/dist/esm/utils/ens/avatar/utils.js.map +1 -1
  277. package/dist/esm/utils/ens/labelhash.js +9 -0
  278. package/dist/esm/utils/ens/labelhash.js.map +1 -1
  279. package/dist/esm/utils/ens/namehash.js +12 -0
  280. package/dist/esm/utils/ens/namehash.js.map +1 -1
  281. package/dist/esm/utils/ens/normalize.js +10 -0
  282. package/dist/esm/utils/ens/normalize.js.map +1 -1
  283. package/dist/esm/utils/ens/packetToBytes.js +6 -0
  284. package/dist/esm/utils/ens/packetToBytes.js.map +1 -1
  285. package/dist/esm/utils/filters/createFilterRequestScope.js +5 -0
  286. package/dist/esm/utils/filters/createFilterRequestScope.js.map +1 -1
  287. package/dist/esm/utils/formatters/block.js +4 -1
  288. package/dist/esm/utils/formatters/block.js.map +1 -1
  289. package/dist/esm/utils/formatters/extract.js +3 -0
  290. package/dist/esm/utils/formatters/extract.js.map +1 -1
  291. package/dist/esm/utils/formatters/format.js +3 -0
  292. package/dist/esm/utils/formatters/format.js.map +1 -1
  293. package/dist/esm/utils/formatters/transaction.js +3 -1
  294. package/dist/esm/utils/formatters/transaction.js.map +1 -1
  295. package/dist/esm/utils/formatters/transactionReceipt.js +1 -1
  296. package/dist/esm/utils/formatters/transactionReceipt.js.map +1 -1
  297. package/dist/esm/utils/formatters/transactionRequest.js +1 -1
  298. package/dist/esm/utils/formatters/transactionRequest.js.map +1 -1
  299. package/dist/esm/utils/hash/getEventSelector.js +6 -2
  300. package/dist/esm/utils/hash/getEventSelector.js.map +1 -1
  301. package/dist/esm/utils/hash/getFunctionSelector.js +6 -2
  302. package/dist/esm/utils/hash/getFunctionSelector.js.map +1 -1
  303. package/dist/esm/utils/hash/hashFunction.js +3 -0
  304. package/dist/esm/utils/hash/hashFunction.js.map +1 -1
  305. package/dist/esm/utils/observe.js +7 -2
  306. package/dist/esm/utils/observe.js.map +1 -1
  307. package/dist/esm/utils/poll.js +3 -0
  308. package/dist/esm/utils/poll.js.map +1 -1
  309. package/dist/esm/utils/promise/createBatchScheduler.js +1 -1
  310. package/dist/esm/utils/promise/createBatchScheduler.js.map +1 -1
  311. package/dist/esm/utils/promise/withCache.js +15 -2
  312. package/dist/esm/utils/promise/withCache.js.map +1 -1
  313. package/dist/esm/utils/regex.js +4 -0
  314. package/dist/esm/utils/regex.js.map +1 -1
  315. package/dist/esm/utils/rpc.js +14 -1
  316. package/dist/esm/utils/rpc.js.map +1 -1
  317. package/dist/esm/utils/signature/hashTypedData.js +3 -0
  318. package/dist/esm/utils/signature/hashTypedData.js.map +1 -1
  319. package/dist/esm/utils/signature/recoverPublicKey.js +2 -0
  320. package/dist/esm/utils/signature/recoverPublicKey.js.map +1 -1
  321. package/dist/esm/utils/signature/verifyMessage.js +12 -0
  322. package/dist/esm/utils/signature/verifyMessage.js.map +1 -1
  323. package/dist/esm/utils/signature/verifyTypedData.js +12 -0
  324. package/dist/esm/utils/signature/verifyTypedData.js.map +1 -1
  325. package/dist/esm/utils/transaction/prepareRequest.js +5 -1
  326. package/dist/esm/utils/transaction/prepareRequest.js.map +1 -1
  327. package/dist/esm/utils/transaction/serializeTransaction.js +4 -2
  328. package/dist/esm/utils/transaction/serializeTransaction.js.map +1 -1
  329. package/dist/esm/utils/typedData.js +4 -0
  330. package/dist/esm/utils/typedData.js.map +1 -1
  331. package/dist/esm/utils/unit/parseUnits.js +3 -2
  332. package/dist/esm/utils/unit/parseUnits.js.map +1 -1
  333. package/dist/types/actions/public/getBlockNumber.d.ts +2 -2
  334. package/dist/types/actions/public/getBlockNumber.d.ts.map +1 -1
  335. package/dist/types/chains.d.ts.map +1 -1
  336. package/dist/types/contract.d.ts +1 -1
  337. package/dist/types/contract.d.ts.map +1 -1
  338. package/dist/types/errors/base.d.ts +0 -1
  339. package/dist/types/errors/base.d.ts.map +1 -1
  340. package/dist/types/errors/version.d.ts +1 -1
  341. package/dist/types/index.d.ts +52 -52
  342. package/dist/types/index.d.ts.map +1 -1
  343. package/dist/types/types/account.d.ts +1 -1
  344. package/dist/types/types/account.d.ts.map +1 -1
  345. package/dist/types/utils/formatters/block.d.ts.map +1 -1
  346. package/dist/types/utils/formatters/transaction.d.ts.map +1 -1
  347. package/dist/types/utils/hash/getEventSelector.d.ts +2 -1
  348. package/dist/types/utils/hash/getEventSelector.d.ts.map +1 -1
  349. package/dist/types/utils/hash/getFunctionSelector.d.ts +2 -1
  350. package/dist/types/utils/hash/getFunctionSelector.d.ts.map +1 -1
  351. package/dist/types/utils/hash/hashFunction.d.ts +2 -0
  352. package/dist/types/utils/hash/hashFunction.d.ts.map +1 -1
  353. package/dist/types/utils/observe.d.ts.map +1 -1
  354. package/dist/types/utils/promise/withCache.d.ts.map +1 -1
  355. package/dist/types/utils/unit/parseUnits.d.ts.map +1 -1
  356. package/package.json +1 -1
  357. package/src/chains.ts +120 -97
  358. package/src/contract.ts +3 -3
  359. package/src/errors/base.ts +6 -6
  360. package/src/errors/version.ts +1 -1
  361. package/src/index.ts +221 -221
  362. package/src/types/account.ts +9 -9
  363. package/src/utils/encoding/toBytes.ts +1 -1
  364. package/src/utils/encoding/toHex.ts +2 -2
  365. package/src/utils/formatters/block.ts +3 -1
  366. package/src/utils/formatters/transaction.ts +3 -1
  367. package/src/utils/formatters/transactionReceipt.ts +1 -1
  368. package/src/utils/formatters/transactionRequest.ts +1 -1
  369. package/src/utils/hash/getEventSelector.ts +6 -2
  370. package/src/utils/hash/getFunctionSelector.ts +6 -2
  371. package/src/utils/hash/hashFunction.ts +5 -0
  372. package/src/utils/observe.ts +2 -2
  373. package/src/utils/promise/createBatchScheduler.ts +1 -1
  374. package/src/utils/promise/withCache.ts +2 -2
  375. package/src/utils/rpc.ts +1 -1
  376. package/src/utils/unit/parseUnits.ts +1 -5
package/src/index.ts CHANGED
@@ -35,160 +35,160 @@ export {
35
35
  type GetContractReturnType,
36
36
  } from './actions/getContract.js'
37
37
  export type { AddChainParameters } from './actions/wallet/addChain.js'
38
- export {
39
- type CallParameters,
40
- type CallReturnType,
38
+ export type {
39
+ CallParameters,
40
+ CallReturnType,
41
41
  } from './actions/public/call.js'
42
42
  export type { CreateBlockFilterReturnType } from './actions/public/createBlockFilter.js'
43
- export {
44
- type CreateContractEventFilterParameters,
45
- type CreateContractEventFilterReturnType,
43
+ export type {
44
+ CreateContractEventFilterParameters,
45
+ CreateContractEventFilterReturnType,
46
46
  } from './actions/public/createContractEventFilter.js'
47
- export {
48
- type CreateEventFilterParameters,
49
- type CreateEventFilterReturnType,
47
+ export type {
48
+ CreateEventFilterParameters,
49
+ CreateEventFilterReturnType,
50
50
  } from './actions/public/createEventFilter.js'
51
51
  export type { CreatePendingTransactionFilterReturnType } from './actions/public/createPendingTransactionFilter.js'
52
- export {
53
- type DeployContractParameters,
54
- type DeployContractReturnType,
52
+ export type {
53
+ DeployContractParameters,
54
+ DeployContractReturnType,
55
55
  } from './actions/wallet/deployContract.js'
56
56
  export type { DropTransactionParameters } from './actions/test/dropTransaction.js'
57
- export {
58
- type EstimateContractGasParameters,
59
- type EstimateContractGasReturnType,
57
+ export type {
58
+ EstimateContractGasParameters,
59
+ EstimateContractGasReturnType,
60
60
  } from './actions/public/estimateContractGas.js'
61
- export {
62
- type EstimateGasParameters,
63
- type EstimateGasReturnType,
61
+ export type {
62
+ EstimateGasParameters,
63
+ EstimateGasReturnType,
64
64
  } from './actions/public/estimateGas.js'
65
65
  export type { GetAddressesReturnType } from './actions/wallet/getAddresses.js'
66
- export {
67
- type GetBalanceParameters,
68
- type GetBalanceReturnType,
66
+ export type {
67
+ GetBalanceParameters,
68
+ GetBalanceReturnType,
69
69
  } from './actions/public/getBalance.js'
70
- export {
71
- type GetBlockNumberParameters,
72
- type GetBlockNumberReturnType,
70
+ export type {
71
+ GetBlockNumberParameters,
72
+ GetBlockNumberReturnType,
73
73
  } from './actions/public/getBlockNumber.js'
74
- export {
75
- type GetBlockParameters,
76
- type GetBlockReturnType,
74
+ export type {
75
+ GetBlockParameters,
76
+ GetBlockReturnType,
77
77
  } from './actions/public/getBlock.js'
78
- export {
79
- type GetBlockTransactionCountParameters,
80
- type GetBlockTransactionCountReturnType,
78
+ export type {
79
+ GetBlockTransactionCountParameters,
80
+ GetBlockTransactionCountReturnType,
81
81
  } from './actions/public/getBlockTransactionCount.js'
82
- export {
83
- type GetBytecodeParameters,
84
- type GetBytecodeReturnType,
82
+ export type {
83
+ GetBytecodeParameters,
84
+ GetBytecodeReturnType,
85
85
  } from './actions/public/getBytecode.js'
86
86
  export type { GetChainIdReturnType } from './actions/public/getChainId.js'
87
- export {
88
- type GetEnsAddressParameters,
89
- type GetEnsAddressReturnType,
87
+ export type {
88
+ GetEnsAddressParameters,
89
+ GetEnsAddressReturnType,
90
90
  } from './actions/ens/getEnsAddress.js'
91
- export {
92
- type GetEnsNameParameters,
93
- type GetEnsNameReturnType,
91
+ export type {
92
+ GetEnsNameParameters,
93
+ GetEnsNameReturnType,
94
94
  } from './actions/ens/getEnsName.js'
95
- export {
96
- type GetEnsResolverParameters,
97
- type GetEnsResolverReturnType,
95
+ export type {
96
+ GetEnsResolverParameters,
97
+ GetEnsResolverReturnType,
98
98
  } from './actions/ens/getEnsResolver.js'
99
- export {
100
- type GetFeeHistoryParameters,
101
- type GetFeeHistoryReturnType,
99
+ export type {
100
+ GetFeeHistoryParameters,
101
+ GetFeeHistoryReturnType,
102
102
  } from './actions/public/getFeeHistory.js'
103
- export {
104
- type GetFilterChangesParameters,
105
- type GetFilterChangesReturnType,
103
+ export type {
104
+ GetFilterChangesParameters,
105
+ GetFilterChangesReturnType,
106
106
  } from './actions/public/getFilterChanges.js'
107
- export {
108
- type GetFilterLogsParameters,
109
- type GetFilterLogsReturnType,
107
+ export type {
108
+ GetFilterLogsParameters,
109
+ GetFilterLogsReturnType,
110
110
  } from './actions/public/getFilterLogs.js'
111
111
  export type { GetGasPriceReturnType } from './actions/public/getGasPrice.js'
112
- export {
113
- type GetLogsParameters,
114
- type GetLogsReturnType,
112
+ export type {
113
+ GetLogsParameters,
114
+ GetLogsReturnType,
115
115
  } from './actions/public/getLogs.js'
116
116
  export type { GetPermissionsReturnType } from './actions/wallet/getPermissions.js'
117
- export {
118
- type GetStorageAtParameters,
119
- type GetStorageAtReturnType,
117
+ export type {
118
+ GetStorageAtParameters,
119
+ GetStorageAtReturnType,
120
120
  } from './actions/public/getStorageAt.js'
121
- export {
122
- type GetTransactionConfirmationsParameters,
123
- type GetTransactionConfirmationsReturnType,
121
+ export type {
122
+ GetTransactionConfirmationsParameters,
123
+ GetTransactionConfirmationsReturnType,
124
124
  } from './actions/public/getTransactionConfirmations.js'
125
- export {
126
- type GetTransactionCountParameters,
127
- type GetTransactionCountReturnType,
125
+ export type {
126
+ GetTransactionCountParameters,
127
+ GetTransactionCountReturnType,
128
128
  } from './actions/public/getTransactionCount.js'
129
- export {
130
- type GetTransactionParameters,
131
- type GetTransactionReturnType,
129
+ export type {
130
+ GetTransactionParameters,
131
+ GetTransactionReturnType,
132
132
  } from './actions/public/getTransaction.js'
133
- export {
134
- type GetTransactionReceiptParameters,
135
- type GetTransactionReceiptReturnType,
133
+ export type {
134
+ GetTransactionReceiptParameters,
135
+ GetTransactionReceiptReturnType,
136
136
  } from './actions/public/getTransactionReceipt.js'
137
137
  export type { ImpersonateAccountParameters } from './actions/test/impersonateAccount.js'
138
138
  export type { IncreaseTimeParameters } from './actions/test/increaseTime.js'
139
139
  export type { MineParameters } from './actions/test/mine.js'
140
- export {
141
- type MulticallParameters,
142
- type MulticallReturnType,
140
+ export type {
141
+ MulticallParameters,
142
+ MulticallReturnType,
143
143
  } from './actions/public/multicall.js'
144
- export {
145
- type OnBlock,
146
- type OnBlockParameter,
147
- type WatchBlocksParameters,
148
- type WatchBlocksReturnType,
144
+ export type {
145
+ OnBlock,
146
+ OnBlockParameter,
147
+ WatchBlocksParameters,
148
+ WatchBlocksReturnType,
149
149
  } from './actions/public/watchBlocks.js'
150
- export {
151
- type OnBlockNumberFn,
152
- type OnBlockNumberParameter,
153
- type WatchBlockNumberParameters,
154
- type WatchBlockNumberReturnType,
150
+ export type {
151
+ OnBlockNumberFn,
152
+ OnBlockNumberParameter,
153
+ WatchBlockNumberParameters,
154
+ WatchBlockNumberReturnType,
155
155
  } from './actions/public/watchBlockNumber.js'
156
- export {
157
- type OnLogsFn,
158
- type OnLogsParameter,
159
- type WatchEventParameters,
160
- type WatchEventReturnType,
156
+ export type {
157
+ OnLogsFn,
158
+ OnLogsParameter,
159
+ WatchEventParameters,
160
+ WatchEventReturnType,
161
161
  } from './actions/public/watchEvent.js'
162
- export {
163
- type OnTransactionsFn,
164
- type OnTransactionsParameter,
165
- type WatchPendingTransactionsParameters,
166
- type WatchPendingTransactionsReturnType,
162
+ export type {
163
+ OnTransactionsFn,
164
+ OnTransactionsParameter,
165
+ WatchPendingTransactionsParameters,
166
+ WatchPendingTransactionsReturnType,
167
167
  } from './actions/public/watchPendingTransactions.js'
168
- export {
169
- type ReadContractParameters,
170
- type ReadContractReturnType,
168
+ export type {
169
+ ReadContractParameters,
170
+ ReadContractReturnType,
171
171
  } from './actions/public/readContract.js'
172
- export {
173
- type ReplacementReason,
174
- type ReplacementReturnType,
175
- type WaitForTransactionReceiptParameters,
176
- type WaitForTransactionReceiptReturnType,
172
+ export type {
173
+ ReplacementReason,
174
+ ReplacementReturnType,
175
+ WaitForTransactionReceiptParameters,
176
+ WaitForTransactionReceiptReturnType,
177
177
  } from './actions/public/waitForTransactionReceipt.js'
178
178
  export type { RequestAddressesReturnType } from './actions/wallet/requestAddresses.js'
179
- export {
180
- type RequestPermissionsReturnType,
181
- type RequestPermissionsParameters,
179
+ export type {
180
+ RequestPermissionsReturnType,
181
+ RequestPermissionsParameters,
182
182
  } from './actions/wallet/requestPermissions.js'
183
183
  export type { ResetParameters } from './actions/test/reset.js'
184
184
  export type { RevertParameters } from './actions/test/revert.js'
185
- export {
186
- type SendTransactionParameters,
187
- type SendTransactionReturnType,
185
+ export type {
186
+ SendTransactionParameters,
187
+ SendTransactionReturnType,
188
188
  } from './actions/wallet/sendTransaction.js'
189
- export {
190
- type SendUnsignedTransactionParameters,
191
- type SendUnsignedTransactionReturnType,
189
+ export type {
190
+ SendUnsignedTransactionParameters,
191
+ SendUnsignedTransactionReturnType,
192
192
  } from './actions/test/sendUnsignedTransaction.js'
193
193
  export type { SetBalanceParameters } from './actions/test/setBalance.js'
194
194
  export type { SetBlockGasLimitParameters } from './actions/test/setBlockGasLimit.js'
@@ -201,35 +201,35 @@ export type { SetNextBlockBaseFeePerGasParameters } from './actions/test/setNext
201
201
  export type { SetNextBlockTimestampParameters } from './actions/test/setNextBlockTimestamp.js'
202
202
  export type { SetNonceParameters } from './actions/test/setNonce.js'
203
203
  export type { SetStorageAtParameters } from './actions/test/setStorageAt.js'
204
- export {
205
- type SignMessageParameters,
206
- type SignMessageReturnType,
204
+ export type {
205
+ SignMessageParameters,
206
+ SignMessageReturnType,
207
207
  } from './actions/wallet/signMessage.js'
208
- export {
209
- type SignTypedDataParameters,
210
- type SignTypedDataReturnType,
208
+ export type {
209
+ SignTypedDataParameters,
210
+ SignTypedDataReturnType,
211
211
  } from './actions/wallet/signTypedData.js'
212
- export {
213
- type SimulateContractParameters,
214
- type SimulateContractReturnType,
212
+ export type {
213
+ SimulateContractParameters,
214
+ SimulateContractReturnType,
215
215
  } from './actions/public/simulateContract.js'
216
216
  export type { StopImpersonatingAccountParameters } from './actions/test/stopImpersonatingAccount.js'
217
217
  export type { SwitchChainParameters } from './actions/wallet/switchChain.js'
218
- export {
219
- type UninstallFilterParameters,
220
- type UninstallFilterReturnType,
218
+ export type {
219
+ UninstallFilterParameters,
220
+ UninstallFilterReturnType,
221
221
  } from './actions/public/uninstallFilter.js'
222
- export {
223
- type WatchAssetParameters,
224
- type WatchAssetReturnType,
222
+ export type {
223
+ WatchAssetParameters,
224
+ WatchAssetReturnType,
225
225
  } from './actions/wallet/watchAsset.js'
226
- export {
227
- type WatchContractEventParameters,
228
- type WatchContractEventReturnType,
226
+ export type {
227
+ WatchContractEventParameters,
228
+ WatchContractEventReturnType,
229
229
  } from './actions/public/watchContractEvent.js'
230
- export {
231
- type WriteContractParameters,
232
- type WriteContractReturnType,
230
+ export type {
231
+ WriteContractParameters,
232
+ WriteContractReturnType,
233
233
  } from './actions/wallet/writeContract.js'
234
234
  export {
235
235
  type Client,
@@ -381,69 +381,69 @@ export {
381
381
  } from './errors/transaction.js'
382
382
  export { SizeExceedsPaddingSizeError } from './errors/data.js'
383
383
  export { UrlRequiredError } from './errors/transport.js'
384
- export {
385
- type AbiItem,
386
- type ContractFunctionConfig,
387
- type ContractFunctionResult,
388
- type GetConstructorArgs,
389
- type GetErrorArgs,
390
- type GetEventArgs,
391
- type GetEventArgsFromTopics,
392
- type GetFunctionArgs,
393
- type GetValue,
394
- type InferErrorName,
395
- type InferEventName,
396
- type InferFunctionName,
397
- type InferItemName,
384
+ export type {
385
+ AbiItem,
386
+ ContractFunctionConfig,
387
+ ContractFunctionResult,
388
+ GetConstructorArgs,
389
+ GetErrorArgs,
390
+ GetEventArgs,
391
+ GetEventArgsFromTopics,
392
+ GetFunctionArgs,
393
+ GetValue,
394
+ InferErrorName,
395
+ InferEventName,
396
+ InferFunctionName,
397
+ InferItemName,
398
398
  } from './types/contract.js'
399
- export {
400
- type AccessList,
401
- type Transaction,
402
- type TransactionBase,
403
- type TransactionEIP1559,
404
- type TransactionEIP2930,
405
- type TransactionLegacy,
406
- type TransactionReceipt,
407
- type TransactionRequest,
408
- type TransactionRequestBase,
409
- type TransactionRequestEIP1559,
410
- type TransactionRequestEIP2930,
411
- type TransactionRequestLegacy,
412
- type TransactionSerializable,
413
- type TransactionSerializableBase,
414
- type TransactionSerializableEIP1559,
415
- type TransactionSerializableEIP2930,
416
- type TransactionSerializableLegacy,
417
- type TransactionSerialized,
418
- type TransactionSerializedEIP1559,
419
- type TransactionSerializedEIP2930,
420
- type TransactionSerializedLegacy,
421
- type TransactionType,
399
+ export type {
400
+ AccessList,
401
+ Transaction,
402
+ TransactionBase,
403
+ TransactionEIP1559,
404
+ TransactionEIP2930,
405
+ TransactionLegacy,
406
+ TransactionReceipt,
407
+ TransactionRequest,
408
+ TransactionRequestBase,
409
+ TransactionRequestEIP1559,
410
+ TransactionRequestEIP2930,
411
+ TransactionRequestLegacy,
412
+ TransactionSerializable,
413
+ TransactionSerializableBase,
414
+ TransactionSerializableEIP1559,
415
+ TransactionSerializableEIP2930,
416
+ TransactionSerializableLegacy,
417
+ TransactionSerialized,
418
+ TransactionSerializedEIP1559,
419
+ TransactionSerializedEIP2930,
420
+ TransactionSerializedLegacy,
421
+ TransactionType,
422
422
  } from './types/transaction.js'
423
- export {
424
- type Account,
425
- type AccountSource,
426
- type CustomSource,
427
- type HDAccount,
428
- type HDOptions,
429
- type JsonRpcAccount,
430
- type LocalAccount,
431
- type PrivateKeyAccount,
423
+ export type {
424
+ Account,
425
+ AccountSource,
426
+ CustomSource,
427
+ HDAccount,
428
+ HDOptions,
429
+ JsonRpcAccount,
430
+ LocalAccount,
431
+ PrivateKeyAccount,
432
432
  } from './accounts/types.js'
433
- export { type AssetGateway, type AssetGatewayUrls } from './types/ens.js'
434
- export {
435
- type Block,
436
- type BlockIdentifier,
437
- type BlockNumber,
438
- type BlockTag,
439
- type Uncle,
433
+ export type { AssetGateway, AssetGatewayUrls } from './types/ens.js'
434
+ export type {
435
+ Block,
436
+ BlockIdentifier,
437
+ BlockNumber,
438
+ BlockTag,
439
+ Uncle,
440
440
  } from './types/block.js'
441
- export {
442
- type ByteArray,
443
- type Hash,
444
- type Hex,
445
- type LogTopic,
446
- type Signature,
441
+ export type {
442
+ ByteArray,
443
+ Hash,
444
+ Hex,
445
+ LogTopic,
446
+ Signature,
447
447
  } from './types/misc.js'
448
448
  export type { Chain } from './types/chain.js'
449
449
  export type {
@@ -466,43 +466,43 @@ export type {
466
466
  WalletPermission,
467
467
  WalletRpcSchema,
468
468
  } from './types/eip1193.js'
469
- export {
470
- type FeeHistory,
471
- type FeeValues,
472
- type FeeValuesEIP1559,
473
- type FeeValuesLegacy,
469
+ export type {
470
+ FeeHistory,
471
+ FeeValues,
472
+ FeeValuesEIP1559,
473
+ FeeValuesLegacy,
474
474
  } from './types/fee.js'
475
- export {
476
- type Formatter,
477
- type Formatters,
475
+ export type {
476
+ Formatter,
477
+ Formatters,
478
478
  } from './types/formatter.js'
479
- export {
480
- type GetTypedDataDomain,
481
- type GetTypedDataMessage,
482
- type GetTypedDataPrimaryType,
483
- type GetTypedDataTypes,
484
- type TypedDataDefinition,
479
+ export type {
480
+ GetTypedDataDomain,
481
+ GetTypedDataMessage,
482
+ GetTypedDataPrimaryType,
483
+ GetTypedDataTypes,
484
+ TypedDataDefinition,
485
485
  } from './types/typedData.js'
486
486
  export type { GetTransportConfig } from './types/transport.js'
487
487
  export type { HDKey } from '@scure/bip32'
488
488
  export type { Log } from './types/log.js'
489
- export {
490
- type MulticallContracts,
491
- type MulticallResult,
492
- type MulticallResults,
489
+ export type {
490
+ MulticallContracts,
491
+ MulticallResult,
492
+ MulticallResults,
493
493
  } from './types/multicall.js'
494
494
  export type { ParseAccount } from './types/account.js'
495
- export {
496
- type RpcBlock,
497
- type RpcBlockIdentifier,
498
- type RpcBlockNumber,
499
- type RpcFeeHistory,
500
- type RpcFeeValues,
501
- type RpcLog,
502
- type RpcTransaction,
503
- type RpcTransactionReceipt,
504
- type RpcTransactionRequest,
505
- type RpcUncle,
495
+ export type {
496
+ RpcBlock,
497
+ RpcBlockIdentifier,
498
+ RpcBlockNumber,
499
+ RpcFeeHistory,
500
+ RpcFeeValues,
501
+ RpcLog,
502
+ RpcTransaction,
503
+ RpcTransactionReceipt,
504
+ RpcTransactionRequest,
505
+ RpcUncle,
506
506
  } from './types/rpc.js'
507
507
  export { labelhash } from './utils/ens/labelhash.js'
508
508
  export { namehash } from './utils/ens/namehash.js'
@@ -559,9 +559,9 @@ export {
559
559
  type EncodeFunctionResultParameters,
560
560
  encodeFunctionResult,
561
561
  } from './utils/abi/encodeFunctionResult.js'
562
- export {
563
- type ExtractFormatter,
564
- type Formatted,
562
+ export type {
563
+ ExtractFormatter,
564
+ Formatted,
565
565
  } from './utils/formatters/format.js'
566
566
  export {
567
567
  type FormattedTransaction,
@@ -15,14 +15,14 @@ export type ParseAccount<TAccount extends Account | Address | undefined> =
15
15
  | (TAccount extends Address ? JsonRpcAccount : never)
16
16
  | (TAccount extends undefined ? undefined : never)
17
17
 
18
- export {
19
- type Account,
20
- type AccountSource,
21
- type CustomSource,
22
- type HDAccount,
23
- type HDOptions,
24
- type JsonRpcAccount,
25
- type LocalAccount,
26
- type PrivateKeyAccount,
18
+ export type {
19
+ Account,
20
+ AccountSource,
21
+ CustomSource,
22
+ HDAccount,
23
+ HDOptions,
24
+ JsonRpcAccount,
25
+ LocalAccount,
26
+ PrivateKeyAccount,
27
27
  } from '../accounts/types.js'
28
28
  export type { HDKey } from '@scure/bip32'
@@ -6,7 +6,7 @@ import { pad } from '../data/pad.js'
6
6
  import { assertSize } from './fromHex.js'
7
7
  import { type NumberToHexOpts, numberToHex } from './toHex.js'
8
8
 
9
- const encoder = new TextEncoder()
9
+ const encoder = /*#__PURE__*/ new TextEncoder()
10
10
 
11
11
  export type ToBytesParameters = {
12
12
  /** Size of the output bytes. */
@@ -4,7 +4,7 @@ import { pad } from '../data/pad.js'
4
4
 
5
5
  import { assertSize } from './fromHex.js'
6
6
 
7
- const hexes = Array.from({ length: 256 }, (_v, i) =>
7
+ const hexes = /*#__PURE__*/ Array.from({ length: 256 }, (_v, i) =>
8
8
  i.toString(16).padStart(2, '0'),
9
9
  )
10
10
 
@@ -201,7 +201,7 @@ export type StringToHexOpts = {
201
201
  size?: number
202
202
  }
203
203
 
204
- const encoder = new TextEncoder()
204
+ const encoder = /*#__PURE__*/ new TextEncoder()
205
205
 
206
206
  /**
207
207
  * Encodes a UTF-8 string into a hex string
@@ -44,4 +44,6 @@ export function formatBlock(block: Partial<RpcBlock>) {
44
44
  } as Block
45
45
  }
46
46
 
47
- export const defineBlock = defineFormatter({ format: formatBlock })
47
+ export const defineBlock = /*#__PURE__*/ defineFormatter({
48
+ format: formatBlock,
49
+ })
@@ -67,4 +67,6 @@ export function formatTransaction(transaction: Partial<RpcTransaction>) {
67
67
  return transaction_ as Transaction
68
68
  }
69
69
 
70
- export const defineTransaction = defineFormatter({ format: formatTransaction })
70
+ export const defineTransaction = /*#__PURE__*/ defineFormatter({
71
+ format: formatTransaction,
72
+ })
@@ -67,6 +67,6 @@ export function formatTransactionReceipt(
67
67
  } as TransactionReceipt
68
68
  }
69
69
 
70
- export const defineTransactionReceipt = defineFormatter({
70
+ export const defineTransactionReceipt = /*#__PURE__*/ defineFormatter({
71
71
  format: formatTransactionReceipt,
72
72
  })
@@ -56,6 +56,6 @@ export function formatTransactionRequest(
56
56
  } as RpcTransactionRequest
57
57
  }
58
58
 
59
- export const defineTransactionRequest = defineFormatter({
59
+ export const defineTransactionRequest = /*#__PURE__*/ defineFormatter({
60
60
  format: formatTransactionRequest,
61
61
  })
@@ -1,5 +1,9 @@
1
1
  import type { EventDefinition } from '../../types/contract.js'
2
+ import type { AbiEvent } from 'abitype'
2
3
 
3
- import { hashFunction } from './hashFunction.js'
4
+ import { hashAbiItem, hashFunction } from './hashFunction.js'
4
5
 
5
- export const getEventSelector = (event: EventDefinition) => hashFunction(event)
6
+ export const getEventSelector = (event: EventDefinition | AbiEvent) => {
7
+ if (typeof event === 'string') return hashFunction(event)
8
+ return hashAbiItem(event)
9
+ }
@@ -1,5 +1,9 @@
1
1
  import { slice } from '../data/slice.js'
2
+ import type { AbiFunction } from 'abitype'
2
3
 
3
- import { hashFunction } from './hashFunction.js'
4
+ import { hashAbiItem, hashFunction } from './hashFunction.js'
4
5
 
5
- export const getFunctionSelector = (fn: string) => slice(hashFunction(fn), 0, 4)
6
+ export const getFunctionSelector = (fn: string | AbiFunction) => {
7
+ if (typeof fn === 'string') return slice(hashFunction(fn), 0, 4)
8
+ return slice(hashAbiItem(fn), 0, 4)
9
+ }
@@ -3,6 +3,7 @@ import {
3
3
  extractFunctionParams,
4
4
  } from '../contract/extractFunctionParts.js'
5
5
  import { toBytes } from '../encoding/toBytes.js'
6
+ import type { AbiEvent, AbiFunction } from 'abitype'
6
7
 
7
8
  import { keccak256 } from './keccak256.js'
8
9
 
@@ -13,3 +14,7 @@ export function hashFunction(def: string) {
13
14
  const params = extractFunctionParams(def) || []
14
15
  return hash(`${name}(${params.map(({ type }) => type).join(',')})`)
15
16
  }
17
+
18
+ export function hashAbiItem(def: AbiFunction | AbiEvent) {
19
+ return hash(`${def.name}(${def.inputs.map(({ type }) => type).join(',')})`)
20
+ }