viem 0.0.1-alpha.24 → 0.0.1-alpha.26

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 (510) hide show
  1. package/contract/package.json +4 -0
  2. package/dist/call-3476b8ee.d.ts +22 -0
  3. package/dist/{chain-afa13f5a.d.ts → chain-42de87e5.d.ts} +20 -14
  4. package/dist/{chain-e33d019b.d.ts → chain-b0cfb141.d.ts} +1 -1
  5. package/dist/chains.d.ts +20 -8
  6. package/dist/chains.js +46 -46
  7. package/dist/chains.mjs +1 -1
  8. package/dist/{chunk-3ARWEJ3G.mjs → chunk-BSAB6UH4.mjs} +18 -2
  9. package/dist/chunk-BSAB6UH4.mjs.map +1 -0
  10. package/dist/{chunk-4D5XG6XB.js → chunk-DSQO3E4F.js} +367 -429
  11. package/dist/chunk-DSQO3E4F.js.map +1 -0
  12. package/dist/{chunk-A2HXAZXC.js → chunk-LINNE4N4.js} +199 -161
  13. package/dist/chunk-LINNE4N4.js.map +1 -0
  14. package/dist/{chunk-LQVMDX5I.mjs → chunk-PRG3BBPZ.mjs} +397 -459
  15. package/dist/chunk-PRG3BBPZ.mjs.map +1 -0
  16. package/dist/{chunk-YQUC52RL.mjs → chunk-QSIX64VZ.mjs} +136 -98
  17. package/dist/chunk-QSIX64VZ.mjs.map +1 -0
  18. package/dist/{chunk-ZYSXBTBB.js → chunk-YTG4YXMB.js} +30 -14
  19. package/dist/chunk-YTG4YXMB.js.map +1 -0
  20. package/dist/{contract-70f4ddbe.d.ts → contract-9dd2f98b.d.ts} +44 -31
  21. package/dist/contract.d.ts +129 -0
  22. package/dist/contract.js +55 -0
  23. package/dist/{clients/index.js.map → contract.js.map} +0 -0
  24. package/dist/contract.mjs +55 -0
  25. package/dist/{clients/index.mjs.map → contract.mjs.map} +0 -0
  26. package/dist/{createClient-60e3ab98.d.ts → createClient-6689596e.d.ts} +11 -5
  27. package/dist/{createPublicClient-d3d12dc3.d.ts → createPublicClient-fd558574.d.ts} +3 -3
  28. package/dist/{createTestClient-5f4532c4.d.ts → createTestClient-bc1d9028.d.ts} +3 -3
  29. package/dist/{createWalletClient-9ec3df4f.d.ts → createWalletClient-4df88244.d.ts} +3 -3
  30. package/dist/decodeErrorResult-ac835649.d.ts +16 -0
  31. package/dist/{eip1193-9317a312.d.ts → eip1193-617a05ae.d.ts} +2 -2
  32. package/dist/ens.d.ts +82 -1
  33. package/dist/ens.js +208 -3
  34. package/dist/ens.js.map +1 -1
  35. package/dist/ens.mjs +209 -4
  36. package/dist/ens.mjs.map +1 -1
  37. package/dist/getAbiItem-d2e8bd76.d.ts +97 -0
  38. package/dist/index.d.ts +113 -180
  39. package/dist/index.js +259 -279
  40. package/dist/index.js.map +1 -1
  41. package/dist/index.mjs +267 -287
  42. package/dist/index.mjs.map +1 -1
  43. package/dist/public.d.ts +353 -10
  44. package/dist/public.js +3 -4
  45. package/dist/public.mjs +6 -7
  46. package/dist/readContract-c460f23a.d.ts +10 -0
  47. package/dist/rpc-8c10fc98.d.ts +119 -0
  48. package/dist/{sendTransaction-54a0d509.d.ts → sendTransaction-7ce442c0.d.ts} +3 -3
  49. package/dist/test.d.ts +160 -5
  50. package/dist/test.js +222 -18
  51. package/dist/test.js.map +1 -1
  52. package/dist/test.mjs +233 -29
  53. package/dist/test.mjs.map +1 -1
  54. package/dist/transactionReceipt-44dbf122.d.ts +26 -0
  55. package/dist/{transactionRequest-bdf57f7d.d.ts → transactionRequest-f437b4ba.d.ts} +1 -1
  56. package/dist/utils/index.d.ts +228 -21
  57. package/dist/utils/index.js +2 -6
  58. package/dist/utils/index.mjs +3 -7
  59. package/dist/wallet.d.ts +41 -7
  60. package/dist/wallet.js +3 -3
  61. package/dist/wallet.mjs +2 -2
  62. package/dist/watchEvent-569c9976.d.ts +41 -0
  63. package/dist/window.d.ts +2 -2
  64. package/ens/package.json +4 -0
  65. package/package.json +16 -12
  66. package/public/package.json +4 -0
  67. package/test/package.json +4 -0
  68. package/wallet/package.json +4 -0
  69. package/clients/package.json +0 -4
  70. package/dist/chunk-3ARWEJ3G.mjs.map +0 -1
  71. package/dist/chunk-4D5XG6XB.js.map +0 -1
  72. package/dist/chunk-6QTEW2BE.mjs +0 -260
  73. package/dist/chunk-6QTEW2BE.mjs.map +0 -1
  74. package/dist/chunk-A2HXAZXC.js.map +0 -1
  75. package/dist/chunk-KRPS5CIB.mjs +0 -256
  76. package/dist/chunk-KRPS5CIB.mjs.map +0 -1
  77. package/dist/chunk-LQVMDX5I.mjs.map +0 -1
  78. package/dist/chunk-N3IOPT3R.js +0 -256
  79. package/dist/chunk-N3IOPT3R.js.map +0 -1
  80. package/dist/chunk-YQUC52RL.mjs.map +0 -1
  81. package/dist/chunk-ZSTVHQ6J.js +0 -260
  82. package/dist/chunk-ZSTVHQ6J.js.map +0 -1
  83. package/dist/chunk-ZYSXBTBB.js.map +0 -1
  84. package/dist/clients/index.d.ts +0 -9
  85. package/dist/clients/index.js +0 -24
  86. package/dist/clients/index.mjs +0 -24
  87. package/dist/normalize-ef9240c0.d.ts +0 -33
  88. package/dist/parseGwei-492ab7dd.d.ts +0 -355
  89. package/dist/rpc-26932bae.d.ts +0 -61
  90. package/dist/stopImpersonatingAccount-c1a4b7e5.d.ts +0 -156
  91. package/dist/watchAsset-d59d6e35.d.ts +0 -38
  92. package/dist/watchPendingTransactions-ea21b31d.d.ts +0 -373
  93. package/dist/webSocket-775b4037.d.ts +0 -83
  94. package/src/_test/abis.ts +0 -1420
  95. package/src/_test/bench.ts +0 -15
  96. package/src/_test/constants.ts +0 -61
  97. package/src/_test/globalSetup.ts +0 -11
  98. package/src/_test/index.ts +0 -25
  99. package/src/_test/setup.ts +0 -8
  100. package/src/_test/utils.ts +0 -150
  101. package/src/actions/index.test.ts +0 -81
  102. package/src/actions/index.ts +0 -182
  103. package/src/actions/public/call.bench.ts +0 -48
  104. package/src/actions/public/call.test.ts +0 -99
  105. package/src/actions/public/call.ts +0 -97
  106. package/src/actions/public/createBlockFilter.bench.ts +0 -11
  107. package/src/actions/public/createBlockFilter.test.ts +0 -9
  108. package/src/actions/public/createBlockFilter.ts +0 -14
  109. package/src/actions/public/createContractEventFilter.test.ts +0 -119
  110. package/src/actions/public/createContractEventFilter.ts +0 -69
  111. package/src/actions/public/createEventFilter.test.ts +0 -245
  112. package/src/actions/public/createEventFilter.ts +0 -76
  113. package/src/actions/public/createPendingTransactionFilter.bench.ts +0 -11
  114. package/src/actions/public/createPendingTransactionFilter.test.ts +0 -9
  115. package/src/actions/public/createPendingTransactionFilter.ts +0 -14
  116. package/src/actions/public/deployContract.test.ts +0 -56
  117. package/src/actions/public/deployContract.ts +0 -38
  118. package/src/actions/public/estimateGas.bench.ts +0 -46
  119. package/src/actions/public/estimateGas.test.ts +0 -92
  120. package/src/actions/public/estimateGas.ts +0 -61
  121. package/src/actions/public/getBalance.test.ts +0 -83
  122. package/src/actions/public/getBalance.ts +0 -37
  123. package/src/actions/public/getBlock.bench.ts +0 -28
  124. package/src/actions/public/getBlock.test.ts +0 -575
  125. package/src/actions/public/getBlock.ts +0 -65
  126. package/src/actions/public/getBlockNumber.bench.ts +0 -28
  127. package/src/actions/public/getBlockNumber.test.ts +0 -27
  128. package/src/actions/public/getBlockNumber.ts +0 -32
  129. package/src/actions/public/getBlockTransactionCount.bench.ts +0 -15
  130. package/src/actions/public/getBlockTransactionCount.test.ts +0 -57
  131. package/src/actions/public/getBlockTransactionCount.ts +0 -52
  132. package/src/actions/public/getBytecode.test.ts +0 -27
  133. package/src/actions/public/getBytecode.ts +0 -32
  134. package/src/actions/public/getChainId.bench.ts +0 -15
  135. package/src/actions/public/getChainId.test.ts +0 -8
  136. package/src/actions/public/getChainId.ts +0 -7
  137. package/src/actions/public/getFeeHistory.bench.ts +0 -18
  138. package/src/actions/public/getFeeHistory.test.ts +0 -137
  139. package/src/actions/public/getFeeHistory.ts +0 -44
  140. package/src/actions/public/getFilterChanges.bench.ts +0 -13
  141. package/src/actions/public/getFilterChanges.test.ts +0 -189
  142. package/src/actions/public/getFilterChanges.ts +0 -23
  143. package/src/actions/public/getFilterLogs.test.ts +0 -104
  144. package/src/actions/public/getFilterLogs.ts +0 -20
  145. package/src/actions/public/getGasPrice.bench.ts +0 -19
  146. package/src/actions/public/getGasPrice.test.ts +0 -8
  147. package/src/actions/public/getGasPrice.ts +0 -15
  148. package/src/actions/public/getLogs.test.ts +0 -107
  149. package/src/actions/public/getLogs.ts +0 -84
  150. package/src/actions/public/getStorageAt.test.ts +0 -34
  151. package/src/actions/public/getStorageAt.ts +0 -32
  152. package/src/actions/public/getTransaction.bench.ts +0 -33
  153. package/src/actions/public/getTransaction.test.ts +0 -311
  154. package/src/actions/public/getTransaction.ts +0 -95
  155. package/src/actions/public/getTransactionConfirmations.test.ts +0 -69
  156. package/src/actions/public/getTransactionConfirmations.ts +0 -38
  157. package/src/actions/public/getTransactionCount.test.ts +0 -56
  158. package/src/actions/public/getTransactionCount.ts +0 -34
  159. package/src/actions/public/getTransactionReceipt.bench.ts +0 -33
  160. package/src/actions/public/getTransactionReceipt.test.ts +0 -179
  161. package/src/actions/public/getTransactionReceipt.ts +0 -34
  162. package/src/actions/public/index.test.ts +0 -44
  163. package/src/actions/public/index.ts +0 -152
  164. package/src/actions/public/multicall.test.ts +0 -452
  165. package/src/actions/public/multicall.ts +0 -103
  166. package/src/actions/public/readContract.test.ts +0 -328
  167. package/src/actions/public/readContract.ts +0 -73
  168. package/src/actions/public/simulateContract.bench.ts +0 -41
  169. package/src/actions/public/simulateContract.test.ts +0 -410
  170. package/src/actions/public/simulateContract.ts +0 -94
  171. package/src/actions/public/uninstallFilter.bench.ts +0 -13
  172. package/src/actions/public/uninstallFilter.test.ts +0 -65
  173. package/src/actions/public/uninstallFilter.ts +0 -17
  174. package/src/actions/public/waitForTransactionReceipt.test.ts +0 -322
  175. package/src/actions/public/waitForTransactionReceipt.ts +0 -170
  176. package/src/actions/public/watchBlockNumber.test.ts +0 -166
  177. package/src/actions/public/watchBlockNumber.ts +0 -79
  178. package/src/actions/public/watchBlocks.test.ts +0 -210
  179. package/src/actions/public/watchBlocks.ts +0 -114
  180. package/src/actions/public/watchContractEvent.test.ts +0 -305
  181. package/src/actions/public/watchContractEvent.ts +0 -108
  182. package/src/actions/public/watchEvent.test.ts +0 -195
  183. package/src/actions/public/watchEvent.ts +0 -95
  184. package/src/actions/public/watchPendingTransactions.test.ts +0 -116
  185. package/src/actions/public/watchPendingTransactions.ts +0 -74
  186. package/src/actions/test/dropTransaction.test.ts +0 -34
  187. package/src/actions/test/dropTransaction.ts +0 -17
  188. package/src/actions/test/getAutomine.test.ts +0 -14
  189. package/src/actions/test/getAutomine.ts +0 -11
  190. package/src/actions/test/getTxpoolContent.test.ts +0 -45
  191. package/src/actions/test/getTxpoolContent.ts +0 -7
  192. package/src/actions/test/getTxpoolStatus.test.ts +0 -41
  193. package/src/actions/test/getTxpoolStatus.ts +0 -12
  194. package/src/actions/test/impersonateAccount.test.ts +0 -26
  195. package/src/actions/test/impersonateAccount.ts +0 -17
  196. package/src/actions/test/increaseTime.test.ts +0 -18
  197. package/src/actions/test/increaseTime.ts +0 -17
  198. package/src/actions/test/index.test.ts +0 -38
  199. package/src/actions/test/index.ts +0 -77
  200. package/src/actions/test/inspectTxpool.test.ts +0 -50
  201. package/src/actions/test/inspectTxpool.ts +0 -7
  202. package/src/actions/test/mine.test.ts +0 -20
  203. package/src/actions/test/mine.ts +0 -16
  204. package/src/actions/test/removeBlockTimestampInterval.test.ts +0 -23
  205. package/src/actions/test/removeBlockTimestampInterval.ts +0 -7
  206. package/src/actions/test/reset.test.ts +0 -19
  207. package/src/actions/test/reset.ts +0 -18
  208. package/src/actions/test/revert.test.ts +0 -39
  209. package/src/actions/test/revert.ts +0 -14
  210. package/src/actions/test/sendUnsignedTransaction.test.ts +0 -52
  211. package/src/actions/test/sendUnsignedTransaction.ts +0 -19
  212. package/src/actions/test/setAutomine.test.ts +0 -14
  213. package/src/actions/test/setAutomine.ts +0 -8
  214. package/src/actions/test/setBalance.test.ts +0 -29
  215. package/src/actions/test/setBalance.ts +0 -20
  216. package/src/actions/test/setBlockGasLimit.test.ts +0 -21
  217. package/src/actions/test/setBlockGasLimit.ts +0 -17
  218. package/src/actions/test/setBlockTimestampInterval.test.ts +0 -23
  219. package/src/actions/test/setBlockTimestampInterval.ts +0 -16
  220. package/src/actions/test/setCode.test.ts +0 -26
  221. package/src/actions/test/setCode.ts +0 -19
  222. package/src/actions/test/setCoinbase.test.ts +0 -11
  223. package/src/actions/test/setCoinbase.ts +0 -17
  224. package/src/actions/test/setIntervalMining.test.ts +0 -30
  225. package/src/actions/test/setIntervalMining.ts +0 -16
  226. package/src/actions/test/setLoggingEnabled.test.ts +0 -10
  227. package/src/actions/test/setLoggingEnabled.ts +0 -8
  228. package/src/actions/test/setMinGasPrice.test.ts +0 -22
  229. package/src/actions/test/setMinGasPrice.ts +0 -17
  230. package/src/actions/test/setNextBlockBaseFeePerGas.test.ts +0 -23
  231. package/src/actions/test/setNextBlockBaseFeePerGas.ts +0 -17
  232. package/src/actions/test/setNextBlockTimestamp.test.ts +0 -19
  233. package/src/actions/test/setNextBlockTimestamp.ts +0 -17
  234. package/src/actions/test/setNonce.test.ts +0 -28
  235. package/src/actions/test/setNonce.ts +0 -20
  236. package/src/actions/test/setRpcUrl.test.ts +0 -9
  237. package/src/actions/test/setRpcUrl.ts +0 -8
  238. package/src/actions/test/setStorageAt.test.ts +0 -36
  239. package/src/actions/test/setStorageAt.ts +0 -26
  240. package/src/actions/test/snapshot.test.ts +0 -18
  241. package/src/actions/test/snapshot.ts +0 -7
  242. package/src/actions/test/stopImpersonatingAccount.test.ts +0 -29
  243. package/src/actions/test/stopImpersonatingAccount.ts +0 -17
  244. package/src/actions/wallet/addChain.test.ts +0 -14
  245. package/src/actions/wallet/addChain.ts +0 -21
  246. package/src/actions/wallet/getAccounts.test.ts +0 -22
  247. package/src/actions/wallet/getAccounts.ts +0 -7
  248. package/src/actions/wallet/getPermissions.test.ts +0 -24
  249. package/src/actions/wallet/getPermissions.ts +0 -9
  250. package/src/actions/wallet/index.test.ts +0 -20
  251. package/src/actions/wallet/index.ts +0 -30
  252. package/src/actions/wallet/requestAccounts.test.ts +0 -13
  253. package/src/actions/wallet/requestAccounts.ts +0 -7
  254. package/src/actions/wallet/requestPermissions.test.ts +0 -26
  255. package/src/actions/wallet/requestPermissions.ts +0 -19
  256. package/src/actions/wallet/sendTransaction.bench.ts +0 -57
  257. package/src/actions/wallet/sendTransaction.test.ts +0 -440
  258. package/src/actions/wallet/sendTransaction.ts +0 -77
  259. package/src/actions/wallet/signMessage.test.ts +0 -61
  260. package/src/actions/wallet/signMessage.ts +0 -35
  261. package/src/actions/wallet/switchChain.test.ts +0 -21
  262. package/src/actions/wallet/switchChain.ts +0 -19
  263. package/src/actions/wallet/watchAsset.test.ts +0 -40
  264. package/src/actions/wallet/watchAsset.ts +0 -16
  265. package/src/actions/wallet/writeContract.test.ts +0 -84
  266. package/src/actions/wallet/writeContract.ts +0 -47
  267. package/src/chains.test.ts +0 -1912
  268. package/src/chains.ts +0 -99
  269. package/src/clients/createClient.test.ts +0 -295
  270. package/src/clients/createClient.ts +0 -81
  271. package/src/clients/createPublicClient.test.ts +0 -165
  272. package/src/clients/createPublicClient.ts +0 -49
  273. package/src/clients/createTestClient.test.ts +0 -145
  274. package/src/clients/createTestClient.ts +0 -72
  275. package/src/clients/createWalletClient.test.ts +0 -121
  276. package/src/clients/createWalletClient.ts +0 -54
  277. package/src/clients/index.test.ts +0 -19
  278. package/src/clients/index.ts +0 -31
  279. package/src/clients/transports/createTransport.test.ts +0 -58
  280. package/src/clients/transports/createTransport.ts +0 -48
  281. package/src/clients/transports/custom.test.ts +0 -98
  282. package/src/clients/transports/custom.ts +0 -34
  283. package/src/clients/transports/fallback.test.ts +0 -257
  284. package/src/clients/transports/fallback.ts +0 -50
  285. package/src/clients/transports/http.test.ts +0 -109
  286. package/src/clients/transports/http.ts +0 -51
  287. package/src/clients/transports/index.test.ts +0 -15
  288. package/src/clients/transports/index.ts +0 -17
  289. package/src/clients/transports/webSocket.test.ts +0 -163
  290. package/src/clients/transports/webSocket.ts +0 -117
  291. package/src/constants/abis.test.ts +0 -53
  292. package/src/constants/abis.ts +0 -44
  293. package/src/constants/index.test.ts +0 -14
  294. package/src/constants/index.ts +0 -3
  295. package/src/constants/solidity.test.ts +0 -41
  296. package/src/constants/solidity.ts +0 -35
  297. package/src/ens.ts +0 -5
  298. package/src/errors/abi.test.ts +0 -81
  299. package/src/errors/abi.ts +0 -238
  300. package/src/errors/address.test.ts +0 -14
  301. package/src/errors/address.ts +0 -9
  302. package/src/errors/base.test.ts +0 -114
  303. package/src/errors/base.ts +0 -57
  304. package/src/errors/block.test.ts +0 -24
  305. package/src/errors/block.ts +0 -18
  306. package/src/errors/contract.test.ts +0 -233
  307. package/src/errors/contract.ts +0 -178
  308. package/src/errors/data.ts +0 -20
  309. package/src/errors/encoding.ts +0 -60
  310. package/src/errors/index.ts +0 -79
  311. package/src/errors/log.ts +0 -8
  312. package/src/errors/request.test.ts +0 -330
  313. package/src/errors/request.ts +0 -163
  314. package/src/errors/rpc.test.ts +0 -87
  315. package/src/errors/rpc.ts +0 -113
  316. package/src/errors/transaction.test.ts +0 -83
  317. package/src/errors/transaction.ts +0 -54
  318. package/src/errors/transport.test.ts +0 -11
  319. package/src/errors/transport.ts +0 -12
  320. package/src/index.test.ts +0 -263
  321. package/src/index.ts +0 -389
  322. package/src/public.ts +0 -80
  323. package/src/test.ts +0 -51
  324. package/src/types/block.ts +0 -71
  325. package/src/types/chain.ts +0 -6
  326. package/src/types/contract.ts +0 -393
  327. package/src/types/eip1193.ts +0 -1041
  328. package/src/types/fee.ts +0 -47
  329. package/src/types/filter.ts +0 -8
  330. package/src/types/formatter.ts +0 -23
  331. package/src/types/index.ts +0 -83
  332. package/src/types/log.ts +0 -22
  333. package/src/types/misc.ts +0 -5
  334. package/src/types/multicall.ts +0 -82
  335. package/src/types/rpc.ts +0 -35
  336. package/src/types/transaction.ts +0 -145
  337. package/src/types/utils.ts +0 -67
  338. package/src/types/window.ts +0 -9
  339. package/src/utils/abi/decodeAbi.bench.ts +0 -135
  340. package/src/utils/abi/decodeAbi.test.ts +0 -1614
  341. package/src/utils/abi/decodeAbi.ts +0 -300
  342. package/src/utils/abi/decodeDeployData.test.ts +0 -151
  343. package/src/utils/abi/decodeDeployData.ts +0 -44
  344. package/src/utils/abi/decodeErrorResult.test.ts +0 -230
  345. package/src/utils/abi/decodeErrorResult.ts +0 -45
  346. package/src/utils/abi/decodeFunctionData.test.ts +0 -139
  347. package/src/utils/abi/decodeFunctionData.ts +0 -29
  348. package/src/utils/abi/decodeFunctionResult.test.ts +0 -333
  349. package/src/utils/abi/decodeFunctionResult.ts +0 -57
  350. package/src/utils/abi/encodeAbi.bench.ts +0 -163
  351. package/src/utils/abi/encodeAbi.test.ts +0 -1447
  352. package/src/utils/abi/encodeAbi.ts +0 -273
  353. package/src/utils/abi/encodeDeployData.test.ts +0 -124
  354. package/src/utils/abi/encodeDeployData.ts +0 -40
  355. package/src/utils/abi/encodeErrorResult.test.ts +0 -192
  356. package/src/utils/abi/encodeErrorResult.ts +0 -47
  357. package/src/utils/abi/encodeEventTopics.test.ts +0 -345
  358. package/src/utils/abi/encodeEventTopics.ts +0 -75
  359. package/src/utils/abi/encodeFunctionData.test.ts +0 -138
  360. package/src/utils/abi/encodeFunctionData.ts +0 -45
  361. package/src/utils/abi/encodeFunctionResult.test.ts +0 -279
  362. package/src/utils/abi/encodeFunctionResult.ts +0 -41
  363. package/src/utils/abi/formatAbiItem.test.ts +0 -335
  364. package/src/utils/abi/formatAbiItem.ts +0 -41
  365. package/src/utils/abi/formatAbiItemWithArgs.test.ts +0 -291
  366. package/src/utils/abi/formatAbiItemWithArgs.ts +0 -27
  367. package/src/utils/abi/getAbiItem.test.ts +0 -547
  368. package/src/utils/abi/getAbiItem.ts +0 -95
  369. package/src/utils/abi/index.test.ts +0 -23
  370. package/src/utils/abi/index.ts +0 -42
  371. package/src/utils/address/getAddress.bench.ts +0 -22
  372. package/src/utils/address/getAddress.test.ts +0 -46
  373. package/src/utils/address/getAddress.ts +0 -28
  374. package/src/utils/address/getContractAddress.bench.ts +0 -20
  375. package/src/utils/address/getContractAddress.test.ts +0 -78
  376. package/src/utils/address/getContractAddress.ts +0 -59
  377. package/src/utils/address/index.test.ts +0 -17
  378. package/src/utils/address/index.ts +0 -16
  379. package/src/utils/address/isAddress.test.ts +0 -10
  380. package/src/utils/address/isAddress.ts +0 -10
  381. package/src/utils/address/isAddressEqual.test.ts +0 -55
  382. package/src/utils/address/isAddressEqual.ts +0 -6
  383. package/src/utils/buildRequest.test.ts +0 -365
  384. package/src/utils/buildRequest.ts +0 -45
  385. package/src/utils/chain.test.ts +0 -43
  386. package/src/utils/chain.ts +0 -8
  387. package/src/utils/contract/extractFunctionParts.test.ts +0 -109
  388. package/src/utils/contract/extractFunctionParts.ts +0 -27
  389. package/src/utils/contract/getContractError.test.ts +0 -282
  390. package/src/utils/contract/getContractError.ts +0 -58
  391. package/src/utils/contract/index.test.ts +0 -15
  392. package/src/utils/contract/index.ts +0 -8
  393. package/src/utils/data/concat.test.ts +0 -35
  394. package/src/utils/data/concat.ts +0 -34
  395. package/src/utils/data/index.test.ts +0 -23
  396. package/src/utils/data/index.ts +0 -13
  397. package/src/utils/data/isBytes.test.ts +0 -9
  398. package/src/utils/data/isBytes.ts +0 -7
  399. package/src/utils/data/isHex.test.ts +0 -13
  400. package/src/utils/data/isHex.ts +0 -5
  401. package/src/utils/data/pad.bench.ts +0 -30
  402. package/src/utils/data/pad.test.ts +0 -367
  403. package/src/utils/data/pad.ts +0 -53
  404. package/src/utils/data/size.test.ts +0 -18
  405. package/src/utils/data/size.ts +0 -13
  406. package/src/utils/data/slice.test.ts +0 -203
  407. package/src/utils/data/slice.ts +0 -60
  408. package/src/utils/data/trim.bench.ts +0 -34
  409. package/src/utils/data/trim.test.ts +0 -175
  410. package/src/utils/data/trim.ts +0 -33
  411. package/src/utils/encoding/decodeBytes.bench.ts +0 -40
  412. package/src/utils/encoding/decodeBytes.test.ts +0 -144
  413. package/src/utils/encoding/decodeBytes.ts +0 -63
  414. package/src/utils/encoding/decodeHex.bench.ts +0 -24
  415. package/src/utils/encoding/decodeHex.test.ts +0 -167
  416. package/src/utils/encoding/decodeHex.ts +0 -76
  417. package/src/utils/encoding/decodeRlp.bench.ts +0 -34
  418. package/src/utils/encoding/decodeRlp.test.ts +0 -350
  419. package/src/utils/encoding/decodeRlp.ts +0 -121
  420. package/src/utils/encoding/encodeBytes.bench.ts +0 -29
  421. package/src/utils/encoding/encodeBytes.test.ts +0 -676
  422. package/src/utils/encoding/encodeBytes.ts +0 -59
  423. package/src/utils/encoding/encodeHex.bench.ts +0 -49
  424. package/src/utils/encoding/encodeHex.test.ts +0 -232
  425. package/src/utils/encoding/encodeHex.ts +0 -104
  426. package/src/utils/encoding/encodeRlp.bench.ts +0 -54
  427. package/src/utils/encoding/encodeRlp.test.ts +0 -254
  428. package/src/utils/encoding/encodeRlp.ts +0 -48
  429. package/src/utils/encoding/index.test.ts +0 -32
  430. package/src/utils/encoding/index.ts +0 -36
  431. package/src/utils/ens/index.test.ts +0 -13
  432. package/src/utils/ens/index.ts +0 -5
  433. package/src/utils/ens/labelhash.test.ts +0 -55
  434. package/src/utils/ens/labelhash.ts +0 -16
  435. package/src/utils/ens/namehash.test.ts +0 -65
  436. package/src/utils/ens/namehash.ts +0 -28
  437. package/src/utils/ens/normalize.bench.ts +0 -14
  438. package/src/utils/ens/normalize.test.ts +0 -35
  439. package/src/utils/ens/normalize.ts +0 -14
  440. package/src/utils/formatters/block.bench.ts +0 -51
  441. package/src/utils/formatters/block.test.ts +0 -115
  442. package/src/utils/formatters/block.ts +0 -37
  443. package/src/utils/formatters/extract.test.ts +0 -14
  444. package/src/utils/formatters/extract.ts +0 -18
  445. package/src/utils/formatters/feeHistory.test.ts +0 -66
  446. package/src/utils/formatters/feeHistory.ts +0 -12
  447. package/src/utils/formatters/format.test.ts +0 -93
  448. package/src/utils/formatters/format.ts +0 -90
  449. package/src/utils/formatters/index.test.ts +0 -27
  450. package/src/utils/formatters/index.ts +0 -34
  451. package/src/utils/formatters/log.test.ts +0 -79
  452. package/src/utils/formatters/log.ts +0 -12
  453. package/src/utils/formatters/transaction.test.ts +0 -271
  454. package/src/utils/formatters/transaction.ts +0 -63
  455. package/src/utils/formatters/transactionReceipt.bench.ts +0 -73
  456. package/src/utils/formatters/transactionReceipt.test.ts +0 -151
  457. package/src/utils/formatters/transactionReceipt.ts +0 -63
  458. package/src/utils/formatters/transactionRequest.bench.ts +0 -29
  459. package/src/utils/formatters/transactionRequest.test.ts +0 -237
  460. package/src/utils/formatters/transactionRequest.ts +0 -56
  461. package/src/utils/hash/getEventSignature.test.ts +0 -61
  462. package/src/utils/hash/getEventSignature.ts +0 -4
  463. package/src/utils/hash/getFunctionSignature.test.ts +0 -22
  464. package/src/utils/hash/getFunctionSignature.ts +0 -5
  465. package/src/utils/hash/hashFunction.test.ts +0 -65
  466. package/src/utils/hash/hashFunction.ts +0 -12
  467. package/src/utils/hash/index.test.ts +0 -13
  468. package/src/utils/hash/index.ts +0 -5
  469. package/src/utils/hash/keccak256.test.ts +0 -59
  470. package/src/utils/hash/keccak256.ts +0 -21
  471. package/src/utils/index.test.ts +0 -113
  472. package/src/utils/index.ts +0 -141
  473. package/src/utils/observe.test.ts +0 -176
  474. package/src/utils/observe.ts +0 -66
  475. package/src/utils/poll.test.ts +0 -127
  476. package/src/utils/poll.ts +0 -42
  477. package/src/utils/promise/index.test.ts +0 -14
  478. package/src/utils/promise/index.ts +0 -3
  479. package/src/utils/promise/withCache.test.ts +0 -97
  480. package/src/utils/promise/withCache.ts +0 -73
  481. package/src/utils/promise/withRetry.test.ts +0 -231
  482. package/src/utils/promise/withRetry.ts +0 -61
  483. package/src/utils/promise/withTimeout.test.ts +0 -37
  484. package/src/utils/promise/withTimeout.ts +0 -39
  485. package/src/utils/rpc.test.ts +0 -989
  486. package/src/utils/rpc.ts +0 -292
  487. package/src/utils/stringify.test.ts +0 -13
  488. package/src/utils/stringify.ts +0 -5
  489. package/src/utils/uid.ts +0 -14
  490. package/src/utils/unit/constants.test.ts +0 -22
  491. package/src/utils/unit/constants.ts +0 -12
  492. package/src/utils/unit/formatEther.test.ts +0 -75
  493. package/src/utils/unit/formatEther.ts +0 -6
  494. package/src/utils/unit/formatGwei.test.ts +0 -32
  495. package/src/utils/unit/formatGwei.ts +0 -6
  496. package/src/utils/unit/formatUnit.bench.ts +0 -21
  497. package/src/utils/unit/formatUnit.test.ts +0 -40
  498. package/src/utils/unit/formatUnit.ts +0 -16
  499. package/src/utils/unit/index.test.ts +0 -28
  500. package/src/utils/unit/index.ts +0 -7
  501. package/src/utils/unit/parseEther.test.ts +0 -126
  502. package/src/utils/unit/parseEther.ts +0 -6
  503. package/src/utils/unit/parseGwei.test.ts +0 -50
  504. package/src/utils/unit/parseGwei.ts +0 -6
  505. package/src/utils/unit/parseUnit.bench.ts +0 -21
  506. package/src/utils/unit/parseUnit.test.ts +0 -54
  507. package/src/utils/unit/parseUnit.ts +0 -27
  508. package/src/utils/wait.ts +0 -3
  509. package/src/wallet.ts +0 -23
  510. package/src/window.ts +0 -1
@@ -1,260 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
2
-
3
-
4
-
5
-
6
-
7
- var _chunk4D5XG6XBjs = require('./chunk-4D5XG6XB.js');
8
-
9
- // src/clients/transports/createTransport.ts
10
- function createTransport(config, value) {
11
- return {
12
- config,
13
- value
14
- };
15
- }
16
-
17
- // src/clients/transports/custom.ts
18
- function custom(provider, { key = "custom", name = "Custom Provider" } = {}) {
19
- return () => createTransport({
20
- key,
21
- name,
22
- request: provider.request.bind(provider),
23
- type: "custom"
24
- });
25
- }
26
-
27
- // src/clients/transports/fallback.ts
28
- function fallback(transports, { key = "fallback", name = "Fallback" } = {}) {
29
- return ({ chain }) => createTransport(
30
- {
31
- key,
32
- name,
33
- async request({ method, params }) {
34
- const fetch = async (i = 0) => {
35
- const transport = transports[i]({ chain });
36
- try {
37
- return await transport.config.request({
38
- method,
39
- params
40
- });
41
- } catch (err) {
42
- if (!(err instanceof _chunk4D5XG6XBjs.RpcError) && i < transports.length - 1)
43
- return fetch(i + 1);
44
- throw err;
45
- }
46
- };
47
- return fetch();
48
- },
49
- type: "fallback"
50
- },
51
- {
52
- transports: transports.map(
53
- (fn) => fn({ chain })
54
- )
55
- }
56
- );
57
- }
58
-
59
- // src/clients/transports/http.ts
60
- function http(url, { key = "http", name = "HTTP JSON-RPC" } = {}) {
61
- return ({ chain }) => {
62
- const url_ = url || _optionalChain([chain, 'optionalAccess', _ => _.rpcUrls, 'access', _2 => _2.default, 'access', _3 => _3.http, 'access', _4 => _4[0]]);
63
- if (!url_)
64
- throw new (0, _chunk4D5XG6XBjs.UrlRequiredError)();
65
- return createTransport(
66
- {
67
- key,
68
- name,
69
- async request({ method, params }) {
70
- const { result } = await _chunk4D5XG6XBjs.rpc.http(url_, {
71
- body: {
72
- method,
73
- params
74
- }
75
- });
76
- return result;
77
- },
78
- type: "http"
79
- },
80
- {
81
- url
82
- }
83
- );
84
- };
85
- }
86
-
87
- // src/clients/transports/webSocket.ts
88
- function webSocket(url, {
89
- key = "webSocket",
90
- name = "WebSocket JSON-RPC"
91
- } = {}) {
92
- return ({ chain }) => {
93
- const url_ = url || _optionalChain([chain, 'optionalAccess', _5 => _5.rpcUrls, 'access', _6 => _6.default, 'access', _7 => _7.webSocket, 'optionalAccess', _8 => _8[0]]);
94
- if (!url_)
95
- throw new (0, _chunk4D5XG6XBjs.UrlRequiredError)();
96
- return createTransport(
97
- {
98
- key,
99
- name,
100
- async request({ method, params }) {
101
- const socket = await _chunk4D5XG6XBjs.getSocket.call(void 0, url_);
102
- const { result } = await _chunk4D5XG6XBjs.rpc.webSocketAsync(socket, {
103
- body: { method, params }
104
- });
105
- return result;
106
- },
107
- type: "webSocket"
108
- },
109
- {
110
- getSocket() {
111
- return _chunk4D5XG6XBjs.getSocket.call(void 0, url_);
112
- },
113
- async subscribe({ params, onData, onError }) {
114
- const socket = await _chunk4D5XG6XBjs.getSocket.call(void 0, url_);
115
- const { result: subscriptionId } = await new Promise(
116
- (resolve, reject) => _chunk4D5XG6XBjs.rpc.webSocket(socket, {
117
- body: {
118
- method: "eth_subscribe",
119
- params
120
- },
121
- onData: (data) => {
122
- if (typeof data.id === "number") {
123
- resolve(data);
124
- return;
125
- }
126
- onData(data);
127
- },
128
- onError: (error) => {
129
- reject(error);
130
- _optionalChain([onError, 'optionalCall', _9 => _9(error)]);
131
- }
132
- })
133
- );
134
- return {
135
- subscriptionId,
136
- async unsubscribe() {
137
- return new Promise(
138
- (resolve, reject) => _chunk4D5XG6XBjs.rpc.webSocket(socket, {
139
- body: {
140
- method: "eth_unsubscribe",
141
- params: [subscriptionId]
142
- },
143
- onData: resolve,
144
- onError: reject
145
- })
146
- );
147
- }
148
- };
149
- }
150
- }
151
- );
152
- };
153
- }
154
-
155
- // src/utils/uid.ts
156
- var size = 256;
157
- var index = size;
158
- var buffer;
159
- function uid(length = 11) {
160
- if (!buffer || index + length > size * 2) {
161
- buffer = "";
162
- index = 0;
163
- for (let i = 0; i < size; i++) {
164
- buffer += (256 + Math.random() * 256 | 0).toString(16).substring(1);
165
- }
166
- }
167
- return buffer.substring(index, index++ + length);
168
- }
169
-
170
- // src/clients/createClient.ts
171
- function createClient({
172
- chain,
173
- key = "base",
174
- name = "Base Client",
175
- pollingInterval = 4e3,
176
- transport,
177
- type = "base"
178
- }) {
179
- const { config, value } = transport({ chain });
180
- return {
181
- chain,
182
- key,
183
- name,
184
- pollingInterval,
185
- request: _chunk4D5XG6XBjs.buildRequest.call(void 0, config.request),
186
- transport: { ...config, ...value },
187
- type,
188
- uid: uid()
189
- };
190
- }
191
-
192
- // src/clients/createPublicClient.ts
193
- function createPublicClient({
194
- chain,
195
- key = "public",
196
- name = "Public Client",
197
- transport,
198
- pollingInterval
199
- }) {
200
- chain;
201
- return createClient({
202
- chain,
203
- key,
204
- name,
205
- pollingInterval,
206
- transport,
207
- type: "publicClient"
208
- });
209
- }
210
-
211
- // src/clients/createTestClient.ts
212
- function createTestClient({
213
- chain,
214
- key = "test",
215
- name = "Test Client",
216
- mode,
217
- pollingInterval,
218
- transport
219
- }) {
220
- return {
221
- ...createClient({
222
- chain,
223
- key,
224
- name,
225
- pollingInterval,
226
- transport,
227
- type: "testClient"
228
- }),
229
- mode
230
- };
231
- }
232
-
233
- // src/clients/createWalletClient.ts
234
- function createWalletClient({
235
- transport,
236
- key = "wallet",
237
- name = "Wallet Client",
238
- pollingInterval
239
- }) {
240
- return createClient({
241
- key,
242
- name,
243
- pollingInterval,
244
- transport,
245
- type: "walletClient"
246
- });
247
- }
248
-
249
-
250
-
251
-
252
-
253
-
254
-
255
-
256
-
257
-
258
-
259
- exports.createTransport = createTransport; exports.custom = custom; exports.fallback = fallback; exports.http = http; exports.webSocket = webSocket; exports.createClient = createClient; exports.createPublicClient = createPublicClient; exports.createTestClient = createTestClient; exports.createWalletClient = createWalletClient;
260
- //# sourceMappingURL=chunk-ZSTVHQ6J.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/clients/transports/createTransport.ts","../src/clients/transports/custom.ts","../src/clients/transports/fallback.ts","../src/clients/transports/http.ts","../src/clients/transports/webSocket.ts","../src/utils/uid.ts","../src/clients/createClient.ts","../src/clients/createPublicClient.ts","../src/clients/createTestClient.ts","../src/clients/createWalletClient.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Chain } from '../../types'\nimport type { Requests } from '../../types/eip1193'\n\nexport type BaseRpcRequests = {\n request(...args: any): Promise<any>\n}\n\nexport type TransportConfig<\n TType extends string = string,\n TRequests extends BaseRpcRequests['request'] = Requests['request'],\n> = {\n /** The name of the transport. */\n name: string\n /** The key of the transport. */\n key: string\n /** The JSON-RPC request function that matches the EIP-1193 request spec. */\n request: TRequests\n /** The type of the transport. */\n type: TType\n}\n\nexport type Transport<\n TType extends string = string,\n TRpcAttributes = Record<string, any>,\n> = <TChain extends Chain = Chain>({\n chain,\n}: {\n chain?: TChain\n}) => {\n config: TransportConfig<TType>\n value?: TRpcAttributes\n}\n\n/**\n * @description Creates an transport intended to be used with a client.\n */\nexport function createTransport<\n TType extends string = string,\n TRpcAttributes = any,\n>(\n config: TransportConfig<TType>,\n value?: TRpcAttributes,\n): ReturnType<Transport<TType, TRpcAttributes>> {\n return {\n config,\n value,\n }\n}\n","import type {\n BaseRpcRequests,\n Transport,\n TransportConfig,\n} from './createTransport'\nimport { createTransport } from './createTransport'\n\ntype EthereumProvider = { request: BaseRpcRequests['request'] }\n\nexport type CustomTransportConfig = {\n /** The key of the transport. */\n key?: TransportConfig['key']\n /** The name of the transport. */\n name?: TransportConfig['name']\n}\n\nexport type CustomTransport = Transport<'custom', EthereumProvider['request']>\n\n/**\n * @description Creates a custom transport given an EIP-1193 compliant `request` attribute.\n */\nexport function custom<TProvider extends EthereumProvider>(\n /** An Ethereum provider with an EIP-1193 \"request\" attribute. */\n provider: TProvider,\n { key = 'custom', name = 'Custom Provider' }: CustomTransportConfig = {},\n): CustomTransport {\n return () =>\n createTransport({\n key,\n name,\n request: provider.request.bind(provider),\n type: 'custom',\n })\n}\n","import { HttpRequestError, RpcError } from '../../errors'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\nexport type FallbackTransportConfig = {\n /** The key of the Fallback transport. */\n key?: TransportConfig['key']\n /** The name of the Fallback transport. */\n name?: TransportConfig['name']\n}\n\nexport type FallbackTransport = Transport<\n 'fallback',\n { transports: Transport[] }\n>\n\nexport function fallback(\n transports: Transport[],\n { key = 'fallback', name = 'Fallback' }: FallbackTransportConfig = {},\n): FallbackTransport {\n return ({ chain }) =>\n createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const fetch = async (i: number = 0): Promise<any> => {\n const transport = transports[i]({ chain })\n try {\n return await transport.config.request({\n method,\n params,\n } as any)\n } catch (err) {\n if (!(err instanceof RpcError) && i < transports.length - 1)\n return fetch(i + 1)\n throw err\n }\n }\n return fetch()\n },\n type: 'fallback',\n },\n {\n transports: transports.map(\n (fn) => fn({ chain }) as unknown as Transport,\n ),\n },\n )\n}\n","import { UrlRequiredError } from '../../errors'\nimport { rpc } from '../../utils/rpc'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\nexport type HttpTransportConfig = {\n /** The key of the HTTP transport. */\n key?: TransportConfig['key']\n /** The name of the HTTP transport. */\n name?: TransportConfig['name']\n}\n\nexport type HttpTransport = Transport<\n 'http',\n {\n url?: string\n }\n>\n\n/**\n * @description Creates a HTTP transport that connects to a JSON-RPC API.\n */\nexport function http(\n /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n url?: string,\n { key = 'http', name = 'HTTP JSON-RPC' }: HttpTransportConfig = {},\n): HttpTransport {\n return ({ chain }) => {\n const url_ = url || chain?.rpcUrls.default.http[0]\n if (!url_) throw new UrlRequiredError()\n return createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const { result } = await rpc.http(url_, {\n body: {\n method,\n params,\n },\n })\n return result\n },\n type: 'http',\n },\n {\n url,\n },\n )\n }\n}\n","import { UrlRequiredError } from '../../errors'\nimport type { Hash } from '../../types'\nimport type { RpcResponse } from '../../utils/rpc'\nimport { getSocket, rpc } from '../../utils/rpc'\nimport type { Transport, TransportConfig } from './createTransport'\nimport { createTransport } from './createTransport'\n\ntype WebSocketTransportSubscribeArgs = {\n onData: (data: RpcResponse) => void\n onError?: (error: any) => void\n}\n\ntype WebSocketTransportSubscribeResponse = {\n subscriptionId: Hash\n unsubscribe: () => Promise<RpcResponse<boolean>>\n}\n\ntype WebSocketTransportSubscribe = {\n subscribe(\n args: WebSocketTransportSubscribeArgs & {\n /**\n * @description Add information about compiled contracts\n * @link https://hardhat.org/hardhat-network/docs/reference#hardhat_addcompilationresult\n */\n params: ['newHeads']\n },\n ): Promise<WebSocketTransportSubscribeResponse>\n}\n\nexport type WebSocketTransportConfig = {\n /** The key of the WebSocket transport. */\n key?: TransportConfig['key']\n /** The name of the WebSocket transport. */\n name?: TransportConfig['name']\n}\n\nexport type WebSocketTransport = Transport<\n 'webSocket',\n {\n getSocket(): Promise<WebSocket>\n subscribe: WebSocketTransportSubscribe['subscribe']\n }\n>\n\n/**\n * @description Creates a WebSocket transport that connects to a JSON-RPC API.\n */\nexport function webSocket(\n /** URL of the JSON-RPC API. Defaults to the chain's public RPC URL. */\n url?: string,\n {\n key = 'webSocket',\n name = 'WebSocket JSON-RPC',\n }: WebSocketTransportConfig = {},\n): WebSocketTransport {\n return ({ chain }) => {\n const url_ = url || chain?.rpcUrls.default.webSocket?.[0]\n if (!url_) throw new UrlRequiredError()\n return createTransport(\n {\n key,\n name,\n async request({ method, params }) {\n const socket = await getSocket(url_)\n const { result } = await rpc.webSocketAsync(socket, {\n body: { method, params },\n })\n return result\n },\n type: 'webSocket',\n },\n {\n getSocket() {\n return getSocket(url_)\n },\n async subscribe({ params, onData, onError }: any) {\n const socket = await getSocket(url_)\n const { result: subscriptionId } = await new Promise<any>(\n (resolve, reject) =>\n rpc.webSocket(socket, {\n body: {\n method: 'eth_subscribe',\n params,\n },\n onData: (data) => {\n if (typeof data.id === 'number') {\n resolve(data)\n return\n }\n onData(data)\n },\n onError: (error) => {\n reject(error)\n onError?.(error)\n },\n }),\n )\n return {\n subscriptionId,\n async unsubscribe() {\n return new Promise<any>((resolve, reject) =>\n rpc.webSocket(socket, {\n body: {\n method: 'eth_unsubscribe',\n params: [subscriptionId],\n },\n onData: resolve,\n onError: reject,\n }),\n )\n },\n }\n },\n },\n )\n }\n}\n","let size = 256\nlet index = size\nlet buffer: string\n\nexport function uid(length = 11) {\n if (!buffer || index + length > size * 2) {\n buffer = ''\n index = 0\n for (let i = 0; i < size; i++) {\n buffer += ((256 + Math.random() * 256) | 0).toString(16).substring(1)\n }\n }\n return buffer.substring(index, index++ + length)\n}\n","import { Chain } from '../types'\nimport type { Requests } from '../types/eip1193'\nimport { buildRequest } from '../utils/buildRequest'\nimport { uid } from '../utils/uid'\nimport type { BaseRpcRequests, Transport } from './transports/createTransport'\n\nexport type Client<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TRequests extends BaseRpcRequests = Requests,\n> = {\n /** Chain for the client. */\n chain?: TChain\n /** A key for the client. */\n key: string\n /** A name for the client. */\n name: string\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval: number\n /** Request function wrapped with friendly error handling */\n request: TRequests['request']\n /** The RPC transport (http, webSocket, custom, etc) */\n transport: ReturnType<TTransport>['config'] & ReturnType<TTransport>['value']\n /** The type of client. */\n type: string\n /** A unique ID for the client. */\n uid: string\n}\n\nexport type ClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TRequests extends BaseRpcRequests = Requests,\n> = Partial<\n Pick<\n Client<TTransport, TChain, TRequests>,\n 'chain' | 'key' | 'name' | 'pollingInterval' | 'type'\n >\n> & {\n transport: TTransport\n}\n\n/**\n * @description Creates a base RPC client with the given transport.\n *\n * - Intended to be used as a base for other RPC clients.\n * - Has access to _all_ EIP-1474 RPC methods.\n *\n * @example\n * import { mainnet } from 'viem/chains'\n * import { createClient, http } from 'viem/clients'\n * const client = createClient(http({ chain: mainnet }))\n */\nexport function createClient<\n TTransport extends Transport,\n TChain extends Chain,\n TRequests extends BaseRpcRequests,\n>({\n chain,\n key = 'base',\n name = 'Base Client',\n pollingInterval = 4_000,\n transport,\n type = 'base',\n}: ClientConfig<TTransport, TChain, TRequests>): Client<\n TTransport,\n TChain,\n TRequests\n> {\n const { config, value } = transport({ chain })\n return {\n chain,\n key,\n name,\n pollingInterval,\n request: buildRequest(config.request),\n transport: { ...config, ...value },\n type,\n uid: uid(),\n }\n}\n","import type { PublicRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\n\nexport type PublicClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = Pick<\n ClientConfig<TTransport, TChain>,\n 'chain' | 'key' | 'name' | 'pollingInterval' | 'transport'\n>\n\nexport type PublicClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = Client<TTransport, TChain, PublicRequests>\n\n/**\n * @description Creates a public client with a given transport.\n *\n * - Only has access to \"public\" EIP-1474 RPC methods (ie. `eth_blockNumber`, etc).\n *\n * @example\n * import { mainnet } from 'viem/chains'\n * import { createPublicClient, http } from 'viem/clients'\n * const client = createPublicClient(http({ chain: mainnet }))\n */\nexport function createPublicClient<\n TTransport extends Transport,\n TChain extends Chain,\n>({\n chain,\n key = 'public',\n name = 'Public Client',\n transport,\n pollingInterval,\n}: PublicClientConfig<TTransport, TChain>): PublicClient<TTransport, TChain> {\n chain\n return createClient({\n chain,\n key,\n name,\n pollingInterval,\n transport,\n type: 'publicClient',\n })\n}\n","import type { TestRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\n\ntype TestClientModes = 'anvil' | 'hardhat'\n\nexport type TestClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TMode extends TestClientModes = TestClientModes,\n> = {\n chain?: ClientConfig<TTransport, TChain>['chain']\n /** The key of the client. */\n key?: ClientConfig['key']\n /** Mode of the test client. Available: \"anvil\" | \"hardhat\" */\n mode: TMode\n /** The name of the client. */\n name?: ClientConfig['name']\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval?: ClientConfig['pollingInterval']\n transport: ClientConfig<TTransport, TChain>['transport']\n}\n\nexport type TestClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n TMode extends TestClientModes = TestClientModes,\n> = Client<TTransport, TChain, TestRequests<TMode>> & {\n mode: TMode\n}\n\n/**\n * @description Creates a test client with a given transport.\n *\n * - Only has access to \"test\" RPC methods (ie. `anvil_setBalance`,\n * `evm_mine`, etc).\n *\n * @example\n * import { createTestClient, http } from 'viem'\n * import { local } from 'viem/chains'\n * const client = createTestClient({ chain: local, mode: 'anvil', transport: http() })\n */\nexport function createTestClient<\n TTransport extends Transport,\n TChain extends Chain,\n TMode extends TestClientModes,\n>({\n chain,\n key = 'test',\n name = 'Test Client',\n mode,\n pollingInterval,\n transport,\n}: TestClientConfig<TTransport, TChain, TMode>): TestClient<\n TTransport,\n TChain,\n TMode\n> {\n return {\n ...createClient({\n chain,\n key,\n name,\n pollingInterval,\n transport,\n type: 'testClient',\n }),\n mode,\n }\n}\n","import type { SignableRequests, WalletRequests } from '../types/eip1193'\nimport type { Transport } from './transports/createTransport'\nimport type { Client, ClientConfig } from './createClient'\nimport { createClient } from './createClient'\nimport { Chain } from '../types'\n\nexport type WalletClientConfig<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = {\n chain?: ClientConfig<TTransport, TChain>['chain']\n /** The key of the Wallet Client. */\n key?: ClientConfig['key']\n /** The name of the Wallet Client. */\n name?: ClientConfig['name']\n /** Frequency (in ms) for polling enabled actions & events. Defaults to 4_000 milliseconds. */\n pollingInterval?: ClientConfig['pollingInterval']\n transport: ClientConfig<TTransport, TChain>['transport']\n}\n\nexport type WalletClient<\n TTransport extends Transport = Transport,\n TChain extends Chain = Chain,\n> = Client<TTransport, TChain, SignableRequests & WalletRequests>\n\n/**\n * @description Creates a wallet client with a given transport.\n *\n * - Only has access to \"wallet\" & \"signable\" EIP-1474 RPC methods\n * (ie. `eth_sendTransaction`, `eth_requestAccounts`, etc).\n *\n * @example\n * import { createWalletClient, custom } from 'viem'\n * const client = createWalletClient(\n * custom(window.ethereum)\n * )\n */\nexport function createWalletClient<\n TTransport extends Transport,\n TChain extends Chain,\n>({\n transport,\n key = 'wallet',\n name = 'Wallet Client',\n pollingInterval,\n}: WalletClientConfig<TTransport, TChain>): WalletClient<TTransport, TChain> {\n return createClient({\n key,\n name,\n pollingInterval,\n transport,\n type: 'walletClient',\n })\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/actions/wallet/addChain.ts","../src/actions/wallet/getAccounts.ts","../src/actions/wallet/getPermissions.ts","../src/actions/wallet/requestAccounts.ts","../src/actions/wallet/requestPermissions.ts","../src/actions/wallet/sendTransaction.ts","../src/actions/wallet/signMessage.ts","../src/actions/wallet/switchChain.ts","../src/actions/wallet/watchAsset.ts","../src/actions/wallet/writeContract.ts"],"names":[],"mappings":"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","sourcesContent":["import type { WalletClient } from '../../clients'\nimport type { Chain } from '../../types'\nimport { numberToHex } from '../../utils'\n\nexport async function addChain(client: WalletClient, chain: Chain) {\n const { id, name, nativeCurrency, rpcUrls, blockExplorers } = chain\n await client.request({\n method: 'wallet_addEthereumChain',\n params: [\n {\n chainId: numberToHex(id),\n chainName: name,\n nativeCurrency,\n rpcUrls: rpcUrls.default.http,\n blockExplorerUrls: blockExplorers\n ? Object.values(blockExplorers).map(({ url }) => url)\n : undefined,\n },\n ],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport { checksumAddress } from '../../utils/address'\n\nexport async function getAccounts(client: WalletClient) {\n const addresses = await client.request({ method: 'eth_accounts' })\n return addresses.map((address) => checksumAddress(address))\n}\n","import type { WalletClient } from '../../clients'\nimport type { WalletPermission } from '../../types/eip1193'\n\nexport type GetPermissionsResponse = WalletPermission[]\n\nexport async function getPermissions(client: WalletClient) {\n const permissions = await client.request({ method: 'wallet_getPermissions' })\n return permissions\n}\n","import type { WalletClient } from '../../clients'\nimport { getAddress } from '../../utils'\n\nexport async function requestAccounts(client: WalletClient) {\n const addresses = await client.request({ method: 'eth_requestAccounts' })\n return addresses.map((address) => getAddress(address))\n}\n","import type { WalletClient } from '../../clients'\nimport type { WalletPermission } from '../../types/eip1193'\n\nexport type RequestPermissionsArgs = {\n eth_accounts: Record<string, any>\n} & {\n [key: string]: Record<string, any>\n}\nexport type RequestPermissionsResponse = WalletPermission[]\n\nexport async function requestPermissions(\n client: WalletClient,\n permissions: RequestPermissionsArgs,\n) {\n return client.request({\n method: 'wallet_requestPermissions',\n params: [permissions],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport { InvalidGasArgumentsError } from '../../errors'\nimport type {\n Chain,\n Formatter,\n Hash,\n MergeIntersectionProperties,\n TransactionRequest,\n} from '../../types'\nimport type { Formatted, TransactionRequestFormatter } from '../../utils'\nimport { extract, format, formatTransactionRequest } from '../../utils'\n\nexport type FormattedTransactionRequest<\n TFormatter extends Formatter | undefined = Formatter,\n> = MergeIntersectionProperties<\n Formatted<TFormatter, TransactionRequest, true>,\n TransactionRequest\n>\n\nexport type SendTransactionArgs<TChain extends Chain = Chain> =\n FormattedTransactionRequest<TransactionRequestFormatter<TChain>> & {\n chain?: TChain\n }\n\nexport type SendTransactionResponse = Hash\n\nexport async function sendTransaction<TChain extends Chain>(\n client: WalletClient,\n {\n chain,\n from,\n accessList,\n data,\n gas,\n gasPrice,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n ...rest\n }: SendTransactionArgs<TChain>,\n): Promise<SendTransactionResponse> {\n if (\n maxFeePerGas !== undefined &&\n maxPriorityFeePerGas !== undefined &&\n maxFeePerGas < maxPriorityFeePerGas\n )\n throw new InvalidGasArgumentsError()\n\n const formatter = chain?.formatters?.transactionRequest\n const request_ = format(\n {\n from,\n accessList,\n data,\n gas,\n gasPrice,\n maxFeePerGas,\n maxPriorityFeePerGas,\n nonce,\n to,\n value,\n // Pick out extra data that might exist on the chain's transaction request type.\n ...extract(rest, { formatter }),\n } as TransactionRequest,\n {\n formatter: formatter || formatTransactionRequest,\n },\n )\n\n const hash = await client.request({\n method: 'eth_sendTransaction',\n params: [request_],\n })\n return hash\n}\n","import type { WalletClient } from '../../clients'\nimport { BaseError } from '../../errors'\nimport type { Address, ByteArray, Hex } from '../../types'\nimport { encodeHex } from '../../utils'\n\nexport type SignMessageArgs = {\n from: Address\n data: Hex | ByteArray\n}\n\nexport type SignMessageResponse = Hex\n\nexport async function signMessage(\n client: WalletClient,\n { from, data: data_ }: SignMessageArgs,\n): Promise<SignMessageResponse> {\n let data\n if (typeof data_ === 'string') {\n if (!data_.startsWith('0x'))\n throw new BaseError(\n `data (\"${data_}\") must be a hex value. Encode it first to a hex with the \\`encodeHex\\` util.`,\n {\n docsPath: '/TODO',\n },\n )\n data = data_\n } else {\n data = encodeHex(data_)\n }\n const signed = await client.request({\n method: 'personal_sign',\n params: [data, from],\n })\n return signed\n}\n","import type { WalletClient } from '../../clients'\nimport { Chain } from '../../types'\nimport { numberToHex } from '../../utils'\n\nexport type SwitchChainArgs = { id: Chain['id'] }\n\nexport async function switchChain(\n client: WalletClient,\n { id }: SwitchChainArgs,\n) {\n await client.request({\n method: 'wallet_switchEthereumChain',\n params: [\n {\n chainId: numberToHex(id),\n },\n ],\n })\n}\n","import type { WalletClient } from '../../clients'\nimport type { WatchAssetParams } from '../../types/eip1193'\n\nexport type WatchAssetArgs = WatchAssetParams\nexport type WatchAssetResponse = boolean\n\nexport async function watchAsset(\n client: WalletClient,\n params: WatchAssetParams,\n): Promise<WatchAssetResponse> {\n const added = await client.request({\n method: 'wallet_watchAsset',\n params: [params],\n })\n return added\n}\n","import { Abi } from 'abitype'\n\nimport type { WalletClient } from '../../clients'\nimport type { Chain, ContractConfig, GetValue } from '../../types'\nimport { EncodeFunctionDataArgs, encodeFunctionData } from '../../utils'\nimport {\n sendTransaction,\n SendTransactionArgs,\n SendTransactionResponse,\n} from './sendTransaction'\n\nexport type WriteContractArgs<\n TChain extends Chain = Chain,\n TAbi extends Abi | readonly unknown[] = Abi,\n TFunctionName extends string = string,\n> = Omit<SendTransactionArgs<TChain>, 'to' | 'data' | 'value'> & {\n value?: GetValue<TAbi, TFunctionName, SendTransactionArgs<TChain>['value']>\n} & ContractConfig<TAbi, TFunctionName, 'payable' | 'nonpayable'>\n\nexport type WriteContractResponse = SendTransactionResponse\n\nexport async function writeContract<\n TChain extends Chain,\n TAbi extends Abi | readonly unknown[],\n TFunctionName extends string,\n>(\n client: WalletClient,\n {\n abi,\n address,\n args,\n functionName,\n ...request\n }: WriteContractArgs<TChain, TAbi, TFunctionName>,\n): Promise<WriteContractResponse> {\n const data = encodeFunctionData({\n abi,\n args,\n functionName,\n } as unknown as EncodeFunctionDataArgs<TAbi, TFunctionName>)\n const hash = await sendTransaction(client, {\n data,\n to: address,\n ...request,\n } as unknown as SendTransactionArgs<TChain>)\n return hash\n}\n"]}
@@ -1,9 +0,0 @@
1
- export { C as Client, a as ClientConfig, T as Transport, b as TransportConfig, c as createClient, d as createTransport } from '../createClient-60e3ab98.js';
2
- export { C as CustomTransport, a as CustomTransportConfig, F as FallbackTransport, b as FallbackTransportConfig, H as HttpTransport, c as HttpTransportConfig, W as WebSocketTransport, d as WebSocketTransportConfig, e as custom, f as fallback, h as http, w as webSocket } from '../webSocket-775b4037.js';
3
- export { P as PublicClient, a as PublicClientConfig, c as createPublicClient } from '../createPublicClient-d3d12dc3.js';
4
- export { T as TestClient, a as TestClientConfig, c as createTestClient } from '../createTestClient-5f4532c4.js';
5
- export { W as WalletClient, a as WalletClientConfig, c as createWalletClient } from '../createWalletClient-9ec3df4f.js';
6
- import '../chain-afa13f5a.js';
7
- import '@wagmi/chains';
8
- import '../eip1193-9317a312.js';
9
- import '../rpc-26932bae.js';
@@ -1,24 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
- var _chunkZSTVHQ6Jjs = require('../chunk-ZSTVHQ6J.js');
12
- require('../chunk-4D5XG6XB.js');
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
- exports.createClient = _chunkZSTVHQ6Jjs.createClient; exports.createPublicClient = _chunkZSTVHQ6Jjs.createPublicClient; exports.createTestClient = _chunkZSTVHQ6Jjs.createTestClient; exports.createTransport = _chunkZSTVHQ6Jjs.createTransport; exports.createWalletClient = _chunkZSTVHQ6Jjs.createWalletClient; exports.custom = _chunkZSTVHQ6Jjs.custom; exports.fallback = _chunkZSTVHQ6Jjs.fallback; exports.http = _chunkZSTVHQ6Jjs.http; exports.webSocket = _chunkZSTVHQ6Jjs.webSocket;
24
- //# sourceMappingURL=index.js.map
@@ -1,24 +0,0 @@
1
- import {
2
- createClient,
3
- createPublicClient,
4
- createTestClient,
5
- createTransport,
6
- createWalletClient,
7
- custom,
8
- fallback,
9
- http,
10
- webSocket
11
- } from "../chunk-6QTEW2BE.mjs";
12
- import "../chunk-LQVMDX5I.mjs";
13
- export {
14
- createClient,
15
- createPublicClient,
16
- createTestClient,
17
- createTransport,
18
- createWalletClient,
19
- custom,
20
- fallback,
21
- http,
22
- webSocket
23
- };
24
- //# sourceMappingURL=index.mjs.map
@@ -1,33 +0,0 @@
1
- /**
2
- * @description Hashes ENS label
3
- *
4
- * @example
5
- * labelhash('eth')
6
- * '0x4f5b812789fc606be1b3b16908db13fc7a9adf7ca72641f84d75b47069d3d7f0'
7
- */
8
- declare function labelhash(label: string): `0x${string}`;
9
-
10
- /**
11
- * @description Hashes ENS name
12
- *
13
- * @example
14
- * namehash('wagmi-dev.eth')
15
- * '0xf246651c1b9a6b141d19c2604e9a58f567973833990f830d882534a747801359'
16
- *
17
- * @see https://eips.ethereum.org/EIPS/eip-137
18
- * @see https://docs.ens.domains/contract-api-reference/name-processing#hashing-names
19
- */
20
- declare function namehash(name: string): `0x${string}`;
21
-
22
- /**
23
- * @description Normalizes ENS name
24
- *
25
- * @example
26
- * normalize('wagmi-dev.eth')
27
- * 'wagmi-dev.eth'
28
- *
29
- * @see https://docs.ens.domains/contract-api-reference/name-processing#normalising-names
30
- */
31
- declare function normalize(name: string): string;
32
-
33
- export { normalize as a, labelhash as l, namehash as n };