viem 0.0.1-sushi.27 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (523) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +132 -2
  3. package/abi/package.json +4 -0
  4. package/dist/abi.d.ts +6 -0
  5. package/dist/abi.js +21 -0
  6. package/dist/abi.js.map +1 -0
  7. package/dist/abi.mjs +21 -0
  8. package/dist/abi.mjs.map +1 -0
  9. package/dist/chain-819c7ff7.d.ts +553 -0
  10. package/dist/{chain-83ece55b.d.ts → chain-a4f98ba3.d.ts} +1 -1
  11. package/dist/chains.d.ts +7 -5
  12. package/dist/chains.js +46 -46
  13. package/dist/chains.mjs +1 -1
  14. package/dist/chunk-APZXOA44.mjs +208 -0
  15. package/dist/chunk-APZXOA44.mjs.map +1 -0
  16. package/dist/chunk-HCZO3OIX.js +208 -0
  17. package/dist/chunk-HCZO3OIX.js.map +1 -0
  18. package/dist/{chunk-RPR4ZSAP.mjs → chunk-I7AINPMM.mjs} +2754 -456
  19. package/dist/chunk-I7AINPMM.mjs.map +1 -0
  20. package/dist/chunk-QJNPIGP5.js +5326 -0
  21. package/dist/chunk-QJNPIGP5.js.map +1 -0
  22. package/dist/contract.d.ts +9 -122
  23. package/dist/contract.js +4 -4
  24. package/dist/contract.mjs +18 -18
  25. package/dist/{createClient-cc01b906.d.ts → createClient-a47ae6f5.d.ts} +13 -13
  26. package/dist/createPublicClient-e2eae0fc.d.ts +771 -0
  27. package/dist/{eip1193-bbebfb3d.d.ts → eip1193-a882d1b8.d.ts} +14 -3
  28. package/dist/encodeFunctionResult-9eb553ce.d.ts +75 -0
  29. package/dist/encodePacked-4c019ed8.d.ts +12 -0
  30. package/dist/ens.d.ts +8 -69
  31. package/dist/ens.js +4 -199
  32. package/dist/ens.js.map +1 -1
  33. package/dist/ens.mjs +6 -201
  34. package/dist/ens.mjs.map +1 -1
  35. package/dist/formatAbiItem-622d2303.d.ts +14 -0
  36. package/dist/getAbiItem-159f3263.d.ts +22 -0
  37. package/dist/index.d.ts +106 -55
  38. package/dist/index.js +451 -41
  39. package/dist/index.js.map +1 -1
  40. package/dist/index.mjs +445 -35
  41. package/dist/index.mjs.map +1 -1
  42. package/dist/namehash-afff0feb.d.ts +25 -0
  43. package/dist/parseGwei-a2d0d77a.d.ts +497 -0
  44. package/dist/public.d.ts +11 -336
  45. package/dist/public.js +4 -3
  46. package/dist/public.mjs +3 -2
  47. package/dist/test-13f4413b.d.ts +205 -0
  48. package/dist/test.d.ts +8 -149
  49. package/dist/test.js +19 -222
  50. package/dist/test.js.map +1 -1
  51. package/dist/test.mjs +29 -232
  52. package/dist/test.mjs.map +1 -1
  53. package/dist/utils/index.d.ts +44 -231
  54. package/dist/utils/index.js +30 -2
  55. package/dist/utils/index.mjs +61 -33
  56. package/dist/wallet.d.ts +6 -41
  57. package/dist/wallet.js +2 -3
  58. package/dist/wallet.mjs +5 -6
  59. package/dist/window.d.ts +4 -2
  60. package/package.json +9 -6
  61. package/dist/call-14050d5c.d.ts +0 -23
  62. package/dist/chain-9a8c6614.d.ts +0 -372
  63. package/dist/chunk-3MFDRMZW.js +0 -3028
  64. package/dist/chunk-3MFDRMZW.js.map +0 -1
  65. package/dist/chunk-4MP6LO5V.js +0 -192
  66. package/dist/chunk-4MP6LO5V.js.map +0 -1
  67. package/dist/chunk-MV7PYF3D.mjs +0 -192
  68. package/dist/chunk-MV7PYF3D.mjs.map +0 -1
  69. package/dist/chunk-PSLMBGQ4.mjs +0 -1091
  70. package/dist/chunk-PSLMBGQ4.mjs.map +0 -1
  71. package/dist/chunk-RPR4ZSAP.mjs.map +0 -1
  72. package/dist/chunk-XB55RCBE.js +0 -1091
  73. package/dist/chunk-XB55RCBE.js.map +0 -1
  74. package/dist/contract-3b4a1df6.d.ts +0 -166
  75. package/dist/createPublicClient-9823f081.d.ts +0 -19
  76. package/dist/createTestClient-63b16109.d.ts +0 -34
  77. package/dist/createWalletClient-6dbbe0ee.d.ts +0 -30
  78. package/dist/decodeErrorResult-b0d3ce71.d.ts +0 -16
  79. package/dist/getAbiItem-540089dd.d.ts +0 -97
  80. package/dist/readContract-5c96b3bc.d.ts +0 -10
  81. package/dist/rpc-c367eceb.d.ts +0 -121
  82. package/dist/sendTransaction-50d22f3e.d.ts +0 -12
  83. package/dist/transactionReceipt-504958d3.d.ts +0 -26
  84. package/dist/transactionRequest-37f60d32.d.ts +0 -15
  85. package/dist/watchEvent-ca77f9e9.d.ts +0 -41
  86. package/src/_test/abis.ts +0 -1420
  87. package/src/_test/bench.ts +0 -15
  88. package/src/_test/constants.ts +0 -63
  89. package/src/_test/generated.ts +0 -128
  90. package/src/_test/globalSetup.ts +0 -11
  91. package/src/_test/index.ts +0 -25
  92. package/src/_test/setup.ts +0 -8
  93. package/src/_test/utils.ts +0 -155
  94. package/src/actions/ens/getEnsAddress.bench.ts +0 -26
  95. package/src/actions/ens/getEnsAddress.test.ts +0 -97
  96. package/src/actions/ens/getEnsAddress.ts +0 -122
  97. package/src/actions/ens/getEnsName.bench.ts +0 -30
  98. package/src/actions/ens/getEnsName.test.ts +0 -101
  99. package/src/actions/ens/getEnsName.ts +0 -106
  100. package/src/actions/ens/index.test.ts +0 -12
  101. package/src/actions/ens/index.ts +0 -3
  102. package/src/actions/index.test.ts +0 -81
  103. package/src/actions/index.ts +0 -182
  104. package/src/actions/public/call.bench.ts +0 -48
  105. package/src/actions/public/call.test.ts +0 -99
  106. package/src/actions/public/call.ts +0 -97
  107. package/src/actions/public/createBlockFilter.bench.ts +0 -11
  108. package/src/actions/public/createBlockFilter.test.ts +0 -9
  109. package/src/actions/public/createBlockFilter.ts +0 -14
  110. package/src/actions/public/createContractEventFilter.test.ts +0 -119
  111. package/src/actions/public/createContractEventFilter.ts +0 -69
  112. package/src/actions/public/createEventFilter.test.ts +0 -277
  113. package/src/actions/public/createEventFilter.ts +0 -93
  114. package/src/actions/public/createPendingTransactionFilter.bench.ts +0 -11
  115. package/src/actions/public/createPendingTransactionFilter.test.ts +0 -9
  116. package/src/actions/public/createPendingTransactionFilter.ts +0 -14
  117. package/src/actions/public/estimateGas.bench.ts +0 -46
  118. package/src/actions/public/estimateGas.test.ts +0 -92
  119. package/src/actions/public/estimateGas.ts +0 -61
  120. package/src/actions/public/getBalance.test.ts +0 -83
  121. package/src/actions/public/getBalance.ts +0 -37
  122. package/src/actions/public/getBlock.bench.ts +0 -28
  123. package/src/actions/public/getBlock.test.ts +0 -575
  124. package/src/actions/public/getBlock.ts +0 -65
  125. package/src/actions/public/getBlockNumber.bench.ts +0 -28
  126. package/src/actions/public/getBlockNumber.test.ts +0 -27
  127. package/src/actions/public/getBlockNumber.ts +0 -32
  128. package/src/actions/public/getBlockTransactionCount.bench.ts +0 -15
  129. package/src/actions/public/getBlockTransactionCount.test.ts +0 -57
  130. package/src/actions/public/getBlockTransactionCount.ts +0 -52
  131. package/src/actions/public/getBytecode.test.ts +0 -27
  132. package/src/actions/public/getBytecode.ts +0 -32
  133. package/src/actions/public/getChainId.bench.ts +0 -15
  134. package/src/actions/public/getChainId.test.ts +0 -8
  135. package/src/actions/public/getChainId.ts +0 -7
  136. package/src/actions/public/getFeeHistory.bench.ts +0 -18
  137. package/src/actions/public/getFeeHistory.test.ts +0 -137
  138. package/src/actions/public/getFeeHistory.ts +0 -44
  139. package/src/actions/public/getFilterChanges.bench.ts +0 -13
  140. package/src/actions/public/getFilterChanges.test.ts +0 -383
  141. package/src/actions/public/getFilterChanges.ts +0 -23
  142. package/src/actions/public/getFilterLogs.test.ts +0 -297
  143. package/src/actions/public/getFilterLogs.ts +0 -20
  144. package/src/actions/public/getGasPrice.bench.ts +0 -19
  145. package/src/actions/public/getGasPrice.test.ts +0 -8
  146. package/src/actions/public/getGasPrice.ts +0 -15
  147. package/src/actions/public/getLogs.test.ts +0 -306
  148. package/src/actions/public/getLogs.ts +0 -84
  149. package/src/actions/public/getStorageAt.test.ts +0 -34
  150. package/src/actions/public/getStorageAt.ts +0 -32
  151. package/src/actions/public/getTransaction.bench.ts +0 -33
  152. package/src/actions/public/getTransaction.test.ts +0 -311
  153. package/src/actions/public/getTransaction.ts +0 -95
  154. package/src/actions/public/getTransactionConfirmations.test.ts +0 -69
  155. package/src/actions/public/getTransactionConfirmations.ts +0 -38
  156. package/src/actions/public/getTransactionCount.test.ts +0 -56
  157. package/src/actions/public/getTransactionCount.ts +0 -34
  158. package/src/actions/public/getTransactionReceipt.bench.ts +0 -33
  159. package/src/actions/public/getTransactionReceipt.test.ts +0 -179
  160. package/src/actions/public/getTransactionReceipt.ts +0 -34
  161. package/src/actions/public/index.test.ts +0 -43
  162. package/src/actions/public/index.ts +0 -146
  163. package/src/actions/public/multicall.test.ts +0 -452
  164. package/src/actions/public/multicall.ts +0 -108
  165. package/src/actions/public/readContract.test.ts +0 -328
  166. package/src/actions/public/readContract.ts +0 -73
  167. package/src/actions/public/simulateContract.bench.ts +0 -41
  168. package/src/actions/public/simulateContract.test.ts +0 -410
  169. package/src/actions/public/simulateContract.ts +0 -91
  170. package/src/actions/public/uninstallFilter.bench.ts +0 -13
  171. package/src/actions/public/uninstallFilter.test.ts +0 -65
  172. package/src/actions/public/uninstallFilter.ts +0 -17
  173. package/src/actions/public/waitForTransactionReceipt.test.ts +0 -322
  174. package/src/actions/public/waitForTransactionReceipt.ts +0 -170
  175. package/src/actions/public/watchBlockNumber.test.ts +0 -166
  176. package/src/actions/public/watchBlockNumber.ts +0 -79
  177. package/src/actions/public/watchBlocks.test.ts +0 -210
  178. package/src/actions/public/watchBlocks.ts +0 -114
  179. package/src/actions/public/watchContractEvent.test.ts +0 -305
  180. package/src/actions/public/watchContractEvent.ts +0 -108
  181. package/src/actions/public/watchEvent.test.ts +0 -195
  182. package/src/actions/public/watchEvent.ts +0 -95
  183. package/src/actions/public/watchPendingTransactions.test.ts +0 -116
  184. package/src/actions/public/watchPendingTransactions.ts +0 -74
  185. package/src/actions/test/dropTransaction.test.ts +0 -34
  186. package/src/actions/test/dropTransaction.ts +0 -17
  187. package/src/actions/test/getAutomine.test.ts +0 -14
  188. package/src/actions/test/getAutomine.ts +0 -11
  189. package/src/actions/test/getTxpoolContent.test.ts +0 -45
  190. package/src/actions/test/getTxpoolContent.ts +0 -7
  191. package/src/actions/test/getTxpoolStatus.test.ts +0 -41
  192. package/src/actions/test/getTxpoolStatus.ts +0 -12
  193. package/src/actions/test/impersonateAccount.test.ts +0 -26
  194. package/src/actions/test/impersonateAccount.ts +0 -17
  195. package/src/actions/test/increaseTime.test.ts +0 -18
  196. package/src/actions/test/increaseTime.ts +0 -17
  197. package/src/actions/test/index.test.ts +0 -38
  198. package/src/actions/test/index.ts +0 -77
  199. package/src/actions/test/inspectTxpool.test.ts +0 -50
  200. package/src/actions/test/inspectTxpool.ts +0 -7
  201. package/src/actions/test/mine.test.ts +0 -20
  202. package/src/actions/test/mine.ts +0 -16
  203. package/src/actions/test/removeBlockTimestampInterval.test.ts +0 -23
  204. package/src/actions/test/removeBlockTimestampInterval.ts +0 -7
  205. package/src/actions/test/reset.test.ts +0 -19
  206. package/src/actions/test/reset.ts +0 -18
  207. package/src/actions/test/revert.test.ts +0 -39
  208. package/src/actions/test/revert.ts +0 -14
  209. package/src/actions/test/sendUnsignedTransaction.test.ts +0 -52
  210. package/src/actions/test/sendUnsignedTransaction.ts +0 -19
  211. package/src/actions/test/setAutomine.test.ts +0 -14
  212. package/src/actions/test/setAutomine.ts +0 -8
  213. package/src/actions/test/setBalance.test.ts +0 -29
  214. package/src/actions/test/setBalance.ts +0 -20
  215. package/src/actions/test/setBlockGasLimit.test.ts +0 -21
  216. package/src/actions/test/setBlockGasLimit.ts +0 -17
  217. package/src/actions/test/setBlockTimestampInterval.test.ts +0 -23
  218. package/src/actions/test/setBlockTimestampInterval.ts +0 -16
  219. package/src/actions/test/setCode.test.ts +0 -26
  220. package/src/actions/test/setCode.ts +0 -19
  221. package/src/actions/test/setCoinbase.test.ts +0 -11
  222. package/src/actions/test/setCoinbase.ts +0 -17
  223. package/src/actions/test/setIntervalMining.test.ts +0 -30
  224. package/src/actions/test/setIntervalMining.ts +0 -16
  225. package/src/actions/test/setLoggingEnabled.test.ts +0 -10
  226. package/src/actions/test/setLoggingEnabled.ts +0 -8
  227. package/src/actions/test/setMinGasPrice.test.ts +0 -22
  228. package/src/actions/test/setMinGasPrice.ts +0 -17
  229. package/src/actions/test/setNextBlockBaseFeePerGas.test.ts +0 -23
  230. package/src/actions/test/setNextBlockBaseFeePerGas.ts +0 -17
  231. package/src/actions/test/setNextBlockTimestamp.test.ts +0 -19
  232. package/src/actions/test/setNextBlockTimestamp.ts +0 -17
  233. package/src/actions/test/setNonce.test.ts +0 -28
  234. package/src/actions/test/setNonce.ts +0 -20
  235. package/src/actions/test/setRpcUrl.test.ts +0 -9
  236. package/src/actions/test/setRpcUrl.ts +0 -8
  237. package/src/actions/test/setStorageAt.test.ts +0 -36
  238. package/src/actions/test/setStorageAt.ts +0 -26
  239. package/src/actions/test/snapshot.test.ts +0 -18
  240. package/src/actions/test/snapshot.ts +0 -7
  241. package/src/actions/test/stopImpersonatingAccount.test.ts +0 -29
  242. package/src/actions/test/stopImpersonatingAccount.ts +0 -17
  243. package/src/actions/wallet/addChain.test.ts +0 -14
  244. package/src/actions/wallet/addChain.ts +0 -21
  245. package/src/actions/wallet/deployContract.test.ts +0 -55
  246. package/src/actions/wallet/deployContract.ts +0 -38
  247. package/src/actions/wallet/getAccounts.test.ts +0 -22
  248. package/src/actions/wallet/getAccounts.ts +0 -7
  249. package/src/actions/wallet/getPermissions.test.ts +0 -24
  250. package/src/actions/wallet/getPermissions.ts +0 -9
  251. package/src/actions/wallet/index.test.ts +0 -21
  252. package/src/actions/wallet/index.ts +0 -36
  253. package/src/actions/wallet/requestAccounts.test.ts +0 -13
  254. package/src/actions/wallet/requestAccounts.ts +0 -7
  255. package/src/actions/wallet/requestPermissions.test.ts +0 -26
  256. package/src/actions/wallet/requestPermissions.ts +0 -19
  257. package/src/actions/wallet/sendTransaction.bench.ts +0 -57
  258. package/src/actions/wallet/sendTransaction.test.ts +0 -440
  259. package/src/actions/wallet/sendTransaction.ts +0 -77
  260. package/src/actions/wallet/signMessage.test.ts +0 -61
  261. package/src/actions/wallet/signMessage.ts +0 -35
  262. package/src/actions/wallet/switchChain.test.ts +0 -21
  263. package/src/actions/wallet/switchChain.ts +0 -19
  264. package/src/actions/wallet/watchAsset.test.ts +0 -40
  265. package/src/actions/wallet/watchAsset.ts +0 -16
  266. package/src/actions/wallet/writeContract.test.ts +0 -84
  267. package/src/actions/wallet/writeContract.ts +0 -47
  268. package/src/chains.test.ts +0 -439
  269. package/src/chains.ts +0 -99
  270. package/src/clients/createClient.test.ts +0 -295
  271. package/src/clients/createClient.ts +0 -81
  272. package/src/clients/createPublicClient.test.ts +0 -165
  273. package/src/clients/createPublicClient.ts +0 -49
  274. package/src/clients/createTestClient.test.ts +0 -145
  275. package/src/clients/createTestClient.ts +0 -72
  276. package/src/clients/createWalletClient.test.ts +0 -121
  277. package/src/clients/createWalletClient.ts +0 -54
  278. package/src/clients/index.test.ts +0 -19
  279. package/src/clients/index.ts +0 -31
  280. package/src/clients/transports/createTransport.test.ts +0 -58
  281. package/src/clients/transports/createTransport.ts +0 -48
  282. package/src/clients/transports/custom.test.ts +0 -98
  283. package/src/clients/transports/custom.ts +0 -34
  284. package/src/clients/transports/fallback.test.ts +0 -393
  285. package/src/clients/transports/fallback.ts +0 -58
  286. package/src/clients/transports/http.test.ts +0 -109
  287. package/src/clients/transports/http.ts +0 -51
  288. package/src/clients/transports/index.test.ts +0 -15
  289. package/src/clients/transports/index.ts +0 -17
  290. package/src/clients/transports/webSocket.test.ts +0 -164
  291. package/src/clients/transports/webSocket.ts +0 -118
  292. package/src/constants/abis.test.ts +0 -53
  293. package/src/constants/abis.ts +0 -44
  294. package/src/constants/index.test.ts +0 -14
  295. package/src/constants/index.ts +0 -3
  296. package/src/constants/solidity.test.ts +0 -41
  297. package/src/constants/solidity.ts +0 -35
  298. package/src/contract.test.ts +0 -32
  299. package/src/contract.ts +0 -68
  300. package/src/ens.test.ts +0 -15
  301. package/src/ens.ts +0 -8
  302. package/src/errors/abi.test.ts +0 -81
  303. package/src/errors/abi.ts +0 -254
  304. package/src/errors/address.test.ts +0 -14
  305. package/src/errors/address.ts +0 -9
  306. package/src/errors/base.test.ts +0 -114
  307. package/src/errors/base.ts +0 -57
  308. package/src/errors/block.test.ts +0 -24
  309. package/src/errors/block.ts +0 -18
  310. package/src/errors/chain.test.ts +0 -46
  311. package/src/errors/chain.ts +0 -33
  312. package/src/errors/contract.test.ts +0 -233
  313. package/src/errors/contract.ts +0 -178
  314. package/src/errors/data.ts +0 -20
  315. package/src/errors/encoding.ts +0 -60
  316. package/src/errors/index.ts +0 -82
  317. package/src/errors/log.ts +0 -8
  318. package/src/errors/request.test.ts +0 -330
  319. package/src/errors/request.ts +0 -163
  320. package/src/errors/rpc.test.ts +0 -87
  321. package/src/errors/rpc.ts +0 -113
  322. package/src/errors/transaction.test.ts +0 -83
  323. package/src/errors/transaction.ts +0 -54
  324. package/src/errors/transport.test.ts +0 -11
  325. package/src/errors/transport.ts +0 -12
  326. package/src/index.test.ts +0 -116
  327. package/src/index.ts +0 -132
  328. package/src/public.test.ts +0 -36
  329. package/src/public.ts +0 -76
  330. package/src/test.test.ts +0 -38
  331. package/src/test.ts +0 -52
  332. package/src/types/block.ts +0 -71
  333. package/src/types/chain.ts +0 -6
  334. package/src/types/contract.ts +0 -497
  335. package/src/types/eip1193.ts +0 -1041
  336. package/src/types/fee.ts +0 -47
  337. package/src/types/filter.ts +0 -8
  338. package/src/types/formatter.ts +0 -23
  339. package/src/types/index.ts +0 -84
  340. package/src/types/log.ts +0 -22
  341. package/src/types/misc.ts +0 -5
  342. package/src/types/multicall.ts +0 -82
  343. package/src/types/rpc.ts +0 -35
  344. package/src/types/transaction.ts +0 -145
  345. package/src/types/utils.ts +0 -88
  346. package/src/types/window.ts +0 -9
  347. package/src/utils/abi/decodeAbi.bench.ts +0 -135
  348. package/src/utils/abi/decodeAbi.test.ts +0 -1614
  349. package/src/utils/abi/decodeAbi.ts +0 -300
  350. package/src/utils/abi/decodeDeployData.test.ts +0 -151
  351. package/src/utils/abi/decodeDeployData.ts +0 -44
  352. package/src/utils/abi/decodeErrorResult.test.ts +0 -230
  353. package/src/utils/abi/decodeErrorResult.ts +0 -45
  354. package/src/utils/abi/decodeEventLog.test.ts +0 -542
  355. package/src/utils/abi/decodeEventLog.ts +0 -107
  356. package/src/utils/abi/decodeFunctionData.test.ts +0 -138
  357. package/src/utils/abi/decodeFunctionData.ts +0 -32
  358. package/src/utils/abi/decodeFunctionResult.test.ts +0 -333
  359. package/src/utils/abi/decodeFunctionResult.ts +0 -57
  360. package/src/utils/abi/encodeAbi.bench.ts +0 -163
  361. package/src/utils/abi/encodeAbi.test.ts +0 -1447
  362. package/src/utils/abi/encodeAbi.ts +0 -273
  363. package/src/utils/abi/encodeDeployData.test.ts +0 -124
  364. package/src/utils/abi/encodeDeployData.ts +0 -40
  365. package/src/utils/abi/encodeErrorResult.test.ts +0 -192
  366. package/src/utils/abi/encodeErrorResult.ts +0 -47
  367. package/src/utils/abi/encodeEventTopics.test.ts +0 -345
  368. package/src/utils/abi/encodeEventTopics.ts +0 -75
  369. package/src/utils/abi/encodeFunctionData.test.ts +0 -138
  370. package/src/utils/abi/encodeFunctionData.ts +0 -42
  371. package/src/utils/abi/encodeFunctionResult.test.ts +0 -279
  372. package/src/utils/abi/encodeFunctionResult.ts +0 -41
  373. package/src/utils/abi/formatAbiItem.test.ts +0 -335
  374. package/src/utils/abi/formatAbiItem.ts +0 -41
  375. package/src/utils/abi/formatAbiItemWithArgs.test.ts +0 -291
  376. package/src/utils/abi/formatAbiItemWithArgs.ts +0 -27
  377. package/src/utils/abi/getAbiItem.test.ts +0 -547
  378. package/src/utils/abi/getAbiItem.ts +0 -95
  379. package/src/utils/abi/index.test.ts +0 -24
  380. package/src/utils/abi/index.ts +0 -48
  381. package/src/utils/address/getAddress.bench.ts +0 -22
  382. package/src/utils/address/getAddress.test.ts +0 -46
  383. package/src/utils/address/getAddress.ts +0 -28
  384. package/src/utils/address/getContractAddress.bench.ts +0 -20
  385. package/src/utils/address/getContractAddress.test.ts +0 -78
  386. package/src/utils/address/getContractAddress.ts +0 -59
  387. package/src/utils/address/index.test.ts +0 -17
  388. package/src/utils/address/index.ts +0 -16
  389. package/src/utils/address/isAddress.test.ts +0 -10
  390. package/src/utils/address/isAddress.ts +0 -10
  391. package/src/utils/address/isAddressEqual.test.ts +0 -55
  392. package/src/utils/address/isAddressEqual.ts +0 -6
  393. package/src/utils/buildRequest.test.ts +0 -428
  394. package/src/utils/buildRequest.ts +0 -72
  395. package/src/utils/chain.test.ts +0 -43
  396. package/src/utils/chain.ts +0 -8
  397. package/src/utils/contract/extractFunctionParts.test.ts +0 -109
  398. package/src/utils/contract/extractFunctionParts.ts +0 -27
  399. package/src/utils/contract/getContractError.test.ts +0 -282
  400. package/src/utils/contract/getContractError.ts +0 -58
  401. package/src/utils/contract/index.test.ts +0 -15
  402. package/src/utils/contract/index.ts +0 -8
  403. package/src/utils/data/concat.test.ts +0 -35
  404. package/src/utils/data/concat.ts +0 -34
  405. package/src/utils/data/index.test.ts +0 -23
  406. package/src/utils/data/index.ts +0 -13
  407. package/src/utils/data/isBytes.test.ts +0 -9
  408. package/src/utils/data/isBytes.ts +0 -7
  409. package/src/utils/data/isHex.test.ts +0 -13
  410. package/src/utils/data/isHex.ts +0 -5
  411. package/src/utils/data/pad.bench.ts +0 -30
  412. package/src/utils/data/pad.test.ts +0 -367
  413. package/src/utils/data/pad.ts +0 -53
  414. package/src/utils/data/size.test.ts +0 -18
  415. package/src/utils/data/size.ts +0 -13
  416. package/src/utils/data/slice.test.ts +0 -203
  417. package/src/utils/data/slice.ts +0 -60
  418. package/src/utils/data/trim.bench.ts +0 -34
  419. package/src/utils/data/trim.test.ts +0 -175
  420. package/src/utils/data/trim.ts +0 -33
  421. package/src/utils/encoding/decodeBytes.bench.ts +0 -40
  422. package/src/utils/encoding/decodeBytes.test.ts +0 -144
  423. package/src/utils/encoding/decodeBytes.ts +0 -63
  424. package/src/utils/encoding/decodeHex.bench.ts +0 -24
  425. package/src/utils/encoding/decodeHex.test.ts +0 -167
  426. package/src/utils/encoding/decodeHex.ts +0 -76
  427. package/src/utils/encoding/decodeRlp.bench.ts +0 -34
  428. package/src/utils/encoding/decodeRlp.test.ts +0 -350
  429. package/src/utils/encoding/decodeRlp.ts +0 -121
  430. package/src/utils/encoding/encodeBytes.bench.ts +0 -29
  431. package/src/utils/encoding/encodeBytes.test.ts +0 -676
  432. package/src/utils/encoding/encodeBytes.ts +0 -59
  433. package/src/utils/encoding/encodeHex.bench.ts +0 -49
  434. package/src/utils/encoding/encodeHex.test.ts +0 -232
  435. package/src/utils/encoding/encodeHex.ts +0 -104
  436. package/src/utils/encoding/encodeRlp.bench.ts +0 -54
  437. package/src/utils/encoding/encodeRlp.test.ts +0 -254
  438. package/src/utils/encoding/encodeRlp.ts +0 -48
  439. package/src/utils/encoding/index.test.ts +0 -32
  440. package/src/utils/encoding/index.ts +0 -36
  441. package/src/utils/ens/index.test.ts +0 -14
  442. package/src/utils/ens/index.ts +0 -7
  443. package/src/utils/ens/labelhash.test.ts +0 -55
  444. package/src/utils/ens/labelhash.ts +0 -16
  445. package/src/utils/ens/namehash.test.ts +0 -65
  446. package/src/utils/ens/namehash.ts +0 -28
  447. package/src/utils/ens/normalize.bench.ts +0 -14
  448. package/src/utils/ens/normalize.test.ts +0 -35
  449. package/src/utils/ens/normalize.ts +0 -14
  450. package/src/utils/ens/packetToBytes.test.ts +0 -11
  451. package/src/utils/ens/packetToBytes.ts +0 -29
  452. package/src/utils/formatters/block.bench.ts +0 -51
  453. package/src/utils/formatters/block.test.ts +0 -115
  454. package/src/utils/formatters/block.ts +0 -37
  455. package/src/utils/formatters/extract.test.ts +0 -14
  456. package/src/utils/formatters/extract.ts +0 -18
  457. package/src/utils/formatters/feeHistory.test.ts +0 -66
  458. package/src/utils/formatters/feeHistory.ts +0 -12
  459. package/src/utils/formatters/format.test.ts +0 -93
  460. package/src/utils/formatters/format.ts +0 -90
  461. package/src/utils/formatters/index.test.ts +0 -27
  462. package/src/utils/formatters/index.ts +0 -34
  463. package/src/utils/formatters/log.test.ts +0 -79
  464. package/src/utils/formatters/log.ts +0 -12
  465. package/src/utils/formatters/transaction.test.ts +0 -271
  466. package/src/utils/formatters/transaction.ts +0 -63
  467. package/src/utils/formatters/transactionReceipt.bench.ts +0 -73
  468. package/src/utils/formatters/transactionReceipt.test.ts +0 -151
  469. package/src/utils/formatters/transactionReceipt.ts +0 -63
  470. package/src/utils/formatters/transactionRequest.bench.ts +0 -29
  471. package/src/utils/formatters/transactionRequest.test.ts +0 -237
  472. package/src/utils/formatters/transactionRequest.ts +0 -56
  473. package/src/utils/hash/getEventSignature.test.ts +0 -61
  474. package/src/utils/hash/getEventSignature.ts +0 -4
  475. package/src/utils/hash/getFunctionSignature.test.ts +0 -22
  476. package/src/utils/hash/getFunctionSignature.ts +0 -5
  477. package/src/utils/hash/hashFunction.test.ts +0 -65
  478. package/src/utils/hash/hashFunction.ts +0 -12
  479. package/src/utils/hash/index.test.ts +0 -13
  480. package/src/utils/hash/index.ts +0 -5
  481. package/src/utils/hash/keccak256.test.ts +0 -59
  482. package/src/utils/hash/keccak256.ts +0 -21
  483. package/src/utils/index.test.ts +0 -111
  484. package/src/utils/index.ts +0 -142
  485. package/src/utils/observe.test.ts +0 -176
  486. package/src/utils/observe.ts +0 -66
  487. package/src/utils/poll.test.ts +0 -127
  488. package/src/utils/poll.ts +0 -42
  489. package/src/utils/promise/index.test.ts +0 -14
  490. package/src/utils/promise/index.ts +0 -3
  491. package/src/utils/promise/withCache.test.ts +0 -97
  492. package/src/utils/promise/withCache.ts +0 -73
  493. package/src/utils/promise/withRetry.test.ts +0 -231
  494. package/src/utils/promise/withRetry.ts +0 -61
  495. package/src/utils/promise/withTimeout.test.ts +0 -37
  496. package/src/utils/promise/withTimeout.ts +0 -39
  497. package/src/utils/rpc.test.ts +0 -990
  498. package/src/utils/rpc.ts +0 -294
  499. package/src/utils/stringify.test.ts +0 -13
  500. package/src/utils/stringify.ts +0 -5
  501. package/src/utils/uid.ts +0 -14
  502. package/src/utils/unit/constants.test.ts +0 -22
  503. package/src/utils/unit/constants.ts +0 -12
  504. package/src/utils/unit/formatEther.test.ts +0 -75
  505. package/src/utils/unit/formatEther.ts +0 -6
  506. package/src/utils/unit/formatGwei.test.ts +0 -32
  507. package/src/utils/unit/formatGwei.ts +0 -6
  508. package/src/utils/unit/formatUnit.bench.ts +0 -21
  509. package/src/utils/unit/formatUnit.test.ts +0 -40
  510. package/src/utils/unit/formatUnit.ts +0 -16
  511. package/src/utils/unit/index.test.ts +0 -28
  512. package/src/utils/unit/index.ts +0 -7
  513. package/src/utils/unit/parseEther.test.ts +0 -126
  514. package/src/utils/unit/parseEther.ts +0 -6
  515. package/src/utils/unit/parseGwei.test.ts +0 -50
  516. package/src/utils/unit/parseGwei.ts +0 -6
  517. package/src/utils/unit/parseUnit.bench.ts +0 -21
  518. package/src/utils/unit/parseUnit.test.ts +0 -54
  519. package/src/utils/unit/parseUnit.ts +0 -27
  520. package/src/utils/wait.ts +0 -3
  521. package/src/wallet.test.ts +0 -19
  522. package/src/wallet.ts +0 -23
  523. package/src/window.ts +0 -1
@@ -1,330 +0,0 @@
1
- import { expect, test } from 'vitest'
2
- import {
3
- InternalRpcError,
4
- InvalidInputRpcError,
5
- InvalidParamsRpcError,
6
- InvalidRequestRpcError,
7
- JsonRpcVersionUnsupportedError,
8
- LimitExceededRpcError,
9
- MethodNotFoundRpcError,
10
- MethodNotSupportedRpcError,
11
- ParseRpcError,
12
- RequestError,
13
- ResourceNotFoundRpcError,
14
- ResourceUnavailableRpcError,
15
- RpcRequestError,
16
- TransactionRejectedRpcError,
17
- UnknownRpcError,
18
- } from './request'
19
- import { RpcError } from './rpc'
20
-
21
- test('RequestError', () => {
22
- expect(
23
- new RequestError(
24
- new RpcError({
25
- body: { foo: 'bar' },
26
- url: 'https://viem.sh',
27
- error: { code: 1337, message: 'error details' },
28
- }),
29
- {
30
- shortMessage: 'An internal error was received.',
31
- },
32
- ),
33
- ).toMatchInlineSnapshot(`
34
- [RpcError: An internal error was received.
35
-
36
- Details: error details
37
- Version: viem@1.0.2]
38
- `)
39
- })
40
-
41
- test('RpcRequestError', () => {
42
- expect(
43
- new RpcRequestError(
44
- new RpcError({
45
- body: { foo: 'bar' },
46
- url: 'https://viem.sh',
47
- error: { code: 1337, message: 'error details' },
48
- }),
49
- { shortMessage: 'An internal error was received.' },
50
- ),
51
- ).toMatchInlineSnapshot(`
52
- [RpcError: An internal error was received.
53
-
54
- Details: error details
55
- Version: viem@1.0.2]
56
- `)
57
- })
58
-
59
- test('RpcRequestError', () => {
60
- expect(
61
- new RpcRequestError(
62
- new RpcError({
63
- body: { foo: 'bar' },
64
- url: 'https://viem.sh',
65
- error: { code: 1337, message: 'error details' },
66
- }),
67
- {
68
- shortMessage: 'An internal error was received.',
69
- docsPath: '/lol',
70
- },
71
- ),
72
- ).toMatchInlineSnapshot(`
73
- [RpcError: An internal error was received.
74
-
75
- Docs: https://viem.sh/lol
76
- Details: error details
77
- Version: viem@1.0.2]
78
- `)
79
- })
80
-
81
- test('ParseRpcError', () => {
82
- expect(
83
- new ParseRpcError(
84
- new RpcError({
85
- body: { foo: 'bar' },
86
- url: 'https://viem.sh',
87
- error: {
88
- code: -32700,
89
- message: 'message',
90
- },
91
- }),
92
- ),
93
- ).toMatchInlineSnapshot(`
94
- [ParseRpcError: Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.
95
-
96
- Details: message
97
- Version: viem@1.0.2]
98
- `)
99
- })
100
-
101
- test('InvalidRequestRpcError', () => {
102
- expect(
103
- new InvalidRequestRpcError(
104
- new RpcError({
105
- body: { foo: 'bar' },
106
- url: 'https://viem.sh',
107
- error: {
108
- code: -32600,
109
- message: 'message',
110
- },
111
- }),
112
- ),
113
- ).toMatchInlineSnapshot(`
114
- [InvalidRequestRpcError: JSON is not a valid request object.
115
-
116
- Details: message
117
- Version: viem@1.0.2]
118
- `)
119
- })
120
-
121
- test('MethodNotFoundRpcError', () => {
122
- expect(
123
- new MethodNotFoundRpcError(
124
- new RpcError({
125
- body: { foo: 'bar' },
126
- url: 'https://viem.sh',
127
- error: {
128
- code: -32601,
129
- message: 'message',
130
- },
131
- }),
132
- ),
133
- ).toMatchInlineSnapshot(`
134
- [MethodNotFoundRpcError: The method does not exist / is not available.
135
-
136
- Details: message
137
- Version: viem@1.0.2]
138
- `)
139
- })
140
-
141
- test('InvalidParamsRpcError', () => {
142
- expect(
143
- new InvalidParamsRpcError(
144
- new RpcError({
145
- body: { foo: 'bar' },
146
- url: 'https://viem.sh',
147
- error: {
148
- code: -32602,
149
- message: 'message',
150
- },
151
- }),
152
- ),
153
- ).toMatchInlineSnapshot(`
154
- [InvalidParamsRpcError: Invalid parameters were provided to the RPC method.
155
- Double check you have provided the correct parameters.
156
-
157
- Details: message
158
- Version: viem@1.0.2]
159
- `)
160
- })
161
-
162
- test('InternalRpcError', () => {
163
- expect(
164
- new InternalRpcError(
165
- new RpcError({
166
- body: { foo: 'bar' },
167
- url: 'https://viem.sh',
168
- error: {
169
- code: -32603,
170
- message: 'message',
171
- },
172
- }),
173
- ),
174
- ).toMatchInlineSnapshot(`
175
- [InternalRpcError: An internal error was received.
176
-
177
- Details: message
178
- Version: viem@1.0.2]
179
- `)
180
- })
181
-
182
- test('InvalidInputRpcError', () => {
183
- expect(
184
- new InvalidInputRpcError(
185
- new RpcError({
186
- body: { foo: 'bar' },
187
- url: 'https://viem.sh',
188
- error: {
189
- code: -32000,
190
- message: 'message',
191
- },
192
- }),
193
- ),
194
- ).toMatchInlineSnapshot(`
195
- [InvalidInputRpcError: Missing or invalid parameters.
196
- Double check you have provided the correct parameters.
197
-
198
- Details: message
199
- Version: viem@1.0.2]
200
- `)
201
- })
202
-
203
- test('ResourceNotFoundRpcError', () => {
204
- expect(
205
- new ResourceNotFoundRpcError(
206
- new RpcError({
207
- body: { foo: 'bar' },
208
- url: 'https://viem.sh',
209
- error: {
210
- code: -32001,
211
- message: 'message',
212
- },
213
- }),
214
- ),
215
- ).toMatchInlineSnapshot(`
216
- [ResourceNotFoundRpcError: Requested resource not found.
217
-
218
- Details: message
219
- Version: viem@1.0.2]
220
- `)
221
- })
222
-
223
- test('ResourceUnavailableRpcError', () => {
224
- expect(
225
- new ResourceUnavailableRpcError(
226
- new RpcError({
227
- body: { foo: 'bar' },
228
- url: 'https://viem.sh',
229
- error: {
230
- code: -32002,
231
- message: 'message',
232
- },
233
- }),
234
- ),
235
- ).toMatchInlineSnapshot(`
236
- [ResourceUnavailableRpcError: Requested resource not available.
237
-
238
- Details: message
239
- Version: viem@1.0.2]
240
- `)
241
- })
242
-
243
- test('TransactionRejectedRpcError', () => {
244
- expect(
245
- new TransactionRejectedRpcError(
246
- new RpcError({
247
- body: { foo: 'bar' },
248
- url: 'https://viem.sh',
249
- error: {
250
- code: -32003,
251
- message: 'message',
252
- },
253
- }),
254
- ),
255
- ).toMatchInlineSnapshot(`
256
- [TransactionRejectedRpcError: Transaction creation failed.
257
-
258
- Details: message
259
- Version: viem@1.0.2]
260
- `)
261
- })
262
-
263
- test('MethodNotSupportedRpcError', () => {
264
- expect(
265
- new MethodNotSupportedRpcError(
266
- new RpcError({
267
- body: { foo: 'bar' },
268
- url: 'https://viem.sh',
269
- error: {
270
- code: -32004,
271
- message: 'message',
272
- },
273
- }),
274
- ),
275
- ).toMatchInlineSnapshot(`
276
- [MethodNotSupportedRpcError: Method is not implemented.
277
-
278
- Details: message
279
- Version: viem@1.0.2]
280
- `)
281
- })
282
-
283
- test('LimitExceededRpcError', () => {
284
- expect(
285
- new LimitExceededRpcError(
286
- new RpcError({
287
- body: { foo: 'bar' },
288
- url: 'https://viem.sh',
289
- error: {
290
- code: -32005,
291
- message: 'message',
292
- },
293
- }),
294
- ),
295
- ).toMatchInlineSnapshot(`
296
- [LimitExceededRpcError: Request exceeds defined limit.
297
-
298
- Details: message
299
- Version: viem@1.0.2]
300
- `)
301
- })
302
-
303
- test('JsonRpcVersionUnsupportedError', () => {
304
- expect(
305
- new JsonRpcVersionUnsupportedError(
306
- new RpcError({
307
- body: { foo: 'bar' },
308
- url: 'https://viem.sh',
309
- error: {
310
- code: -32006,
311
- message: 'message',
312
- },
313
- }),
314
- ),
315
- ).toMatchInlineSnapshot(`
316
- [JsonRpcVersionUnsupportedError: Version of JSON-RPC protocol is not supported.
317
-
318
- Details: message
319
- Version: viem@1.0.2]
320
- `)
321
- })
322
-
323
- test('UnknownRpcError', async () => {
324
- expect(new UnknownRpcError(new Error('oh no'))).toMatchInlineSnapshot(`
325
- [UnknownRpcError: An unknown RPC error occurred.
326
-
327
- Details: oh no
328
- Version: viem@1.0.2]
329
- `)
330
- })
@@ -1,163 +0,0 @@
1
- import { BaseError } from './base'
2
- import { RpcError } from './rpc'
3
-
4
- export class RequestError extends BaseError {
5
- constructor(
6
- err: Error,
7
- { docsPath, shortMessage }: { docsPath?: string; shortMessage: string },
8
- ) {
9
- super(shortMessage, {
10
- cause: err,
11
- docsPath,
12
- })
13
- this.name = err.name
14
- }
15
- }
16
-
17
- export class RpcRequestError extends RequestError {
18
- code: number
19
-
20
- constructor(
21
- err: RpcError,
22
- { docsPath, shortMessage }: { docsPath?: string; shortMessage: string },
23
- ) {
24
- super(err, { docsPath, shortMessage })
25
- this.code = err.code
26
- this.name = err.name
27
- }
28
- }
29
-
30
- export class ParseRpcError extends RpcRequestError {
31
- name = 'ParseRpcError'
32
- code = -32700
33
-
34
- constructor(err: RpcError) {
35
- super(err, {
36
- shortMessage:
37
- 'Invalid JSON was received by the server. An error occurred on the server while parsing the JSON text.',
38
- })
39
- }
40
- }
41
-
42
- export class InvalidRequestRpcError extends RpcRequestError {
43
- name = 'InvalidRequestRpcError'
44
- code = -32600
45
-
46
- constructor(err: RpcError) {
47
- super(err, { shortMessage: 'JSON is not a valid request object.' })
48
- }
49
- }
50
-
51
- export class MethodNotFoundRpcError extends RpcRequestError {
52
- name = 'MethodNotFoundRpcError'
53
- code = -32601
54
-
55
- constructor(err: RpcError) {
56
- super(err, {
57
- shortMessage: 'The method does not exist / is not available.',
58
- })
59
- }
60
- }
61
-
62
- export class InvalidParamsRpcError extends RpcRequestError {
63
- name = 'InvalidParamsRpcError'
64
- code = -32602
65
-
66
- constructor(err: RpcError) {
67
- super(err, {
68
- shortMessage: [
69
- 'Invalid parameters were provided to the RPC method.',
70
- 'Double check you have provided the correct parameters.',
71
- ].join('\n'),
72
- })
73
- }
74
- }
75
-
76
- export class InternalRpcError extends RpcRequestError {
77
- name = 'InternalRpcError'
78
- code = -32603
79
-
80
- constructor(err: RpcError) {
81
- super(err, { shortMessage: 'An internal error was received.' })
82
- }
83
- }
84
-
85
- export class InvalidInputRpcError extends RpcRequestError {
86
- name = 'InvalidInputRpcError'
87
- code = -32000
88
-
89
- constructor(err: RpcError) {
90
- super(err, {
91
- shortMessage: [
92
- 'Missing or invalid parameters.',
93
- 'Double check you have provided the correct parameters.',
94
- ].join('\n'),
95
- })
96
- }
97
- }
98
-
99
- export class ResourceNotFoundRpcError extends RpcRequestError {
100
- name = 'ResourceNotFoundRpcError'
101
- code = -32001
102
-
103
- constructor(err: RpcError) {
104
- super(err, { shortMessage: 'Requested resource not found.' })
105
- }
106
- }
107
-
108
- export class ResourceUnavailableRpcError extends RpcRequestError {
109
- name = 'ResourceUnavailableRpcError'
110
- code = -32002
111
-
112
- constructor(err: RpcError) {
113
- super(err, { shortMessage: 'Requested resource not available.' })
114
- }
115
- }
116
-
117
- export class TransactionRejectedRpcError extends RpcRequestError {
118
- name = 'TransactionRejectedRpcError'
119
- code = -32003
120
-
121
- constructor(err: RpcError) {
122
- super(err, { shortMessage: 'Transaction creation failed.' })
123
- }
124
- }
125
-
126
- export class MethodNotSupportedRpcError extends RpcRequestError {
127
- name = 'MethodNotSupportedRpcError'
128
- code = -32004
129
-
130
- constructor(err: RpcError) {
131
- super(err, { shortMessage: 'Method is not implemented.' })
132
- }
133
- }
134
-
135
- export class LimitExceededRpcError extends RpcRequestError {
136
- name = 'LimitExceededRpcError'
137
- code = -32005
138
-
139
- constructor(err: RpcError) {
140
- super(err, { shortMessage: 'Request exceeds defined limit.' })
141
- }
142
- }
143
-
144
- export class JsonRpcVersionUnsupportedError extends RpcRequestError {
145
- name = 'JsonRpcVersionUnsupportedError'
146
- code = -32006
147
-
148
- constructor(err: RpcError) {
149
- super(err, {
150
- shortMessage: 'Version of JSON-RPC protocol is not supported.',
151
- })
152
- }
153
- }
154
-
155
- export class UnknownRpcError extends RequestError {
156
- name = 'UnknownRpcError'
157
-
158
- constructor(err: Error) {
159
- super(err, {
160
- shortMessage: 'An unknown RPC error occurred.',
161
- })
162
- }
163
- }
@@ -1,87 +0,0 @@
1
- import { expect, test } from 'vitest'
2
- import { initialBlockNumber } from '../_test'
3
- import { numberToHex } from '../utils'
4
- import {
5
- HttpRequestError,
6
- RpcError,
7
- TimeoutError,
8
- WebSocketRequestError,
9
- } from './rpc'
10
-
11
- test('RpcError', () => {
12
- const err = new RpcError({
13
- body: { foo: 'bar' },
14
- error: { code: 420, message: 'Error' },
15
- url: 'https://lol.com',
16
- })
17
- expect(err).toMatchInlineSnapshot(`
18
- [RpcError: RPC Request failed.
19
-
20
- URL: https://lol.com
21
- Request body: {"foo":"bar"}
22
-
23
- Details: Error
24
- Version: viem@1.0.2]
25
- `)
26
- })
27
-
28
- test('HttpRequestError', () => {
29
- const err = new HttpRequestError({
30
- url: 'https://eth-mainnet.g.alchemy.com/v2/_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC',
31
- body: {
32
- method: 'eth_getBlockByNumber',
33
- params: [numberToHex(initialBlockNumber), false],
34
- },
35
- status: 500,
36
- details: 'Some error',
37
- })
38
- expect(err).toMatchInlineSnapshot(`
39
- [HttpRequestError: HTTP request failed.
40
-
41
- Status: 500
42
- URL: https://eth-mainnet.g.alchemy.com/v2/_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC
43
- Request body: {"method":"eth_getBlockByNumber","params":["0xf86cc2",false]}
44
-
45
- Details: Some error
46
- Version: viem@1.0.2]
47
- `)
48
- })
49
-
50
- test('WebSocketRequestError', () => {
51
- const err = new WebSocketRequestError({
52
- url: 'ws://eth-mainnet.g.alchemy.com/v2/_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC',
53
- body: {
54
- method: 'eth_getBlockByNumber',
55
- params: [numberToHex(initialBlockNumber), false],
56
- },
57
- details: 'Some error',
58
- })
59
- expect(err).toMatchInlineSnapshot(`
60
- [WebSocketRequestError: WebSocket request failed.
61
-
62
- URL: ws://eth-mainnet.g.alchemy.com/v2/_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC
63
- Request body: {"method":"eth_getBlockByNumber","params":["0xf86cc2",false]}
64
-
65
- Details: Some error
66
- Version: viem@1.0.2]
67
- `)
68
- })
69
-
70
- test('TimeoutError', () => {
71
- const err = new TimeoutError({
72
- url: 'https://eth-mainnet.g.alchemy.com/v2/_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC',
73
- body: {
74
- method: 'eth_getBlockByNumber',
75
- params: [numberToHex(initialBlockNumber), false],
76
- },
77
- })
78
- expect(err).toMatchInlineSnapshot(`
79
- [TimeoutError: The request took too long to respond.
80
-
81
- URL: https://eth-mainnet.g.alchemy.com/v2/_gg7wSSi0KMBsdKnGVfHDueq6xMB9EkC
82
- Request body: {"method":"eth_getBlockByNumber","params":["0xf86cc2",false]}
83
-
84
- Details: The request timed out.
85
- Version: viem@1.0.2]
86
- `)
87
- })
package/src/errors/rpc.ts DELETED
@@ -1,113 +0,0 @@
1
- import { stringify } from '../utils'
2
- import { BaseError } from './base'
3
-
4
- export class HttpRequestError extends BaseError {
5
- name = 'HttpRequestError'
6
- status
7
-
8
- constructor({
9
- body,
10
- details,
11
- status,
12
- url,
13
- }: {
14
- body: { [key: string]: unknown }
15
- details: string
16
- status: number
17
- url: string
18
- }) {
19
- super(
20
- [
21
- 'HTTP request failed.',
22
- '',
23
- `Status: ${status}`,
24
- `URL: ${url}`,
25
- `Request body: ${stringify(body)}`,
26
- ].join('\n'),
27
- {
28
- details,
29
- },
30
- )
31
- this.status = status
32
- }
33
- }
34
-
35
- export class WebSocketRequestError extends BaseError {
36
- name = 'WebSocketRequestError'
37
-
38
- constructor({
39
- body,
40
- details,
41
- url,
42
- }: {
43
- body: { [key: string]: unknown }
44
- details: string
45
- url: string
46
- }) {
47
- super(
48
- [
49
- 'WebSocket request failed.',
50
- '',
51
- `URL: ${url}`,
52
- `Request body: ${stringify(body)}`,
53
- ].join('\n'),
54
- {
55
- details,
56
- },
57
- )
58
- }
59
- }
60
-
61
- export class RpcError extends BaseError {
62
- code: number
63
-
64
- name = 'RpcError'
65
-
66
- constructor({
67
- body,
68
- error,
69
- url,
70
- }: {
71
- body: { [key: string]: unknown }
72
- error: { code: number; message: string }
73
- url: string
74
- }) {
75
- super(
76
- [
77
- 'RPC Request failed.',
78
- '',
79
- `URL: ${url}`,
80
- `Request body: ${stringify(body)}`,
81
- ].join('\n'),
82
- {
83
- cause: error as any,
84
- details: error.message,
85
- },
86
- )
87
- this.code = error.code
88
- }
89
- }
90
-
91
- export class TimeoutError extends BaseError {
92
- name = 'TimeoutError'
93
-
94
- constructor({
95
- body,
96
- url,
97
- }: {
98
- body: { [key: string]: unknown }
99
- url: string
100
- }) {
101
- super(
102
- [
103
- 'The request took too long to respond.',
104
- '',
105
- `URL: ${url}`,
106
- `Request body: ${stringify(body)}`,
107
- ].join('\n'),
108
- {
109
- details: 'The request timed out.',
110
- },
111
- )
112
- }
113
- }