viem 0.0.1-alpha.2 → 0.0.1-alpha.21

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 (483) hide show
  1. package/chains/package.json +1 -1
  2. package/clients/package.json +1 -1
  3. package/dist/{rpc-655c0ba4.d.ts → chain-32f56cfa.d.ts} +78 -17
  4. package/dist/chain-f12cdc7f.d.ts +5 -0
  5. package/dist/chains.d.ts +1291 -74
  6. package/dist/chains.js +125 -129
  7. package/dist/chains.js.map +1 -0
  8. package/dist/chains.mjs +129 -0
  9. package/dist/chains.mjs.map +1 -0
  10. package/dist/{chunk-YQRTXQ2G.js → chunk-46BO7YAQ.mjs} +3 -15
  11. package/dist/chunk-46BO7YAQ.mjs.map +1 -0
  12. package/dist/chunk-57ZOFERP.mjs +256 -0
  13. package/dist/chunk-57ZOFERP.mjs.map +1 -0
  14. package/dist/{chunk-3EOU525X.js → chunk-62VTYU2V.mjs} +1207 -564
  15. package/dist/chunk-62VTYU2V.mjs.map +1 -0
  16. package/dist/{chunk-4HNVS7AM.js → chunk-DGO77E2H.mjs} +330 -539
  17. package/dist/chunk-DGO77E2H.mjs.map +1 -0
  18. package/dist/chunk-DSPMAIDO.mjs +176 -0
  19. package/dist/chunk-DSPMAIDO.mjs.map +1 -0
  20. package/dist/chunk-EC3NUIJE.js +176 -0
  21. package/dist/chunk-EC3NUIJE.js.map +1 -0
  22. package/dist/chunk-KEHGSYDO.js +259 -0
  23. package/dist/chunk-KEHGSYDO.js.map +1 -0
  24. package/dist/chunk-KZMJR27B.js +889 -0
  25. package/dist/chunk-KZMJR27B.js.map +1 -0
  26. package/dist/chunk-O2GYLJVD.js +2689 -0
  27. package/dist/chunk-O2GYLJVD.js.map +1 -0
  28. package/dist/chunk-W7BWWAC4.js +256 -0
  29. package/dist/chunk-W7BWWAC4.js.map +1 -0
  30. package/dist/clients/index.d.ts +8 -7
  31. package/dist/clients/index.js +24 -25
  32. package/dist/clients/index.js.map +1 -0
  33. package/dist/clients/index.mjs +24 -0
  34. package/dist/clients/index.mjs.map +1 -0
  35. package/dist/contract-9af4608b.d.ts +142 -0
  36. package/dist/createClient-5d316c7e.d.ts +62 -0
  37. package/dist/createPublicClient-9d2b42e1.d.ts +19 -0
  38. package/dist/createTestClient-79498dab.d.ts +34 -0
  39. package/dist/createWalletClient-f69a5230.d.ts +30 -0
  40. package/dist/{eip1193-8f7c22ce.d.ts → eip1193-6c485d63.d.ts} +13 -10
  41. package/dist/index.d.ts +424 -11
  42. package/dist/index.js +395 -292
  43. package/dist/index.js.map +1 -0
  44. package/dist/index.mjs +395 -0
  45. package/dist/index.mjs.map +1 -0
  46. package/dist/{parseGwei-fd7a0f7d.d.ts → parseGwei-4308ad80.d.ts} +82 -139
  47. package/dist/public.d.ts +11 -0
  48. package/dist/public.js +59 -0
  49. package/dist/public.js.map +1 -0
  50. package/dist/public.mjs +59 -0
  51. package/dist/public.mjs.map +1 -0
  52. package/dist/{rpc-3c0e3985.d.ts → rpc-26932bae.d.ts} +1 -38
  53. package/dist/sendTransaction-1c8290a9.d.ts +12 -0
  54. package/dist/stopImpersonatingAccount-7781842a.d.ts +156 -0
  55. package/dist/test.d.ts +6 -0
  56. package/dist/test.js +60 -0
  57. package/dist/test.js.map +1 -0
  58. package/dist/test.mjs +60 -0
  59. package/dist/test.mjs.map +1 -0
  60. package/dist/transactionRequest-341b6ed2.d.ts +15 -0
  61. package/dist/utils/index.d.ts +51 -8
  62. package/dist/utils/index.js +171 -156
  63. package/dist/utils/index.js.map +1 -0
  64. package/dist/utils/index.mjs +171 -0
  65. package/dist/utils/index.mjs.map +1 -0
  66. package/dist/wallet.d.ts +8 -0
  67. package/dist/wallet.js +24 -0
  68. package/dist/wallet.js.map +1 -0
  69. package/dist/wallet.mjs +24 -0
  70. package/dist/wallet.mjs.map +1 -0
  71. package/dist/watchAsset-afaad3c7.d.ts +38 -0
  72. package/dist/{watchAsset-04ab8db5.d.ts → watchPendingTransactions-3b722547.d.ts} +67 -217
  73. package/dist/{webSocket-c6e0d26f.d.ts → webSocket-b180e679.d.ts} +4 -9
  74. package/dist/window.d.ts +3 -2
  75. package/dist/window.js +1 -0
  76. package/dist/window.js.map +1 -0
  77. package/dist/window.mjs +1 -0
  78. package/dist/window.mjs.map +1 -0
  79. package/package.json +30 -66
  80. package/src/_test/abis.ts +1413 -0
  81. package/src/_test/bench.ts +15 -0
  82. package/src/_test/constants.ts +60 -0
  83. package/src/_test/globalSetup.ts +11 -0
  84. package/src/_test/index.ts +23 -0
  85. package/src/_test/setup.ts +8 -0
  86. package/src/_test/utils.ts +112 -0
  87. package/src/actions/index.test.ts +78 -0
  88. package/src/actions/index.ts +174 -0
  89. package/src/actions/public/call.bench.ts +48 -0
  90. package/src/actions/public/call.test.ts +99 -0
  91. package/src/actions/public/call.ts +97 -0
  92. package/src/actions/public/createBlockFilter.bench.ts +11 -0
  93. package/src/actions/public/createBlockFilter.test.ts +9 -0
  94. package/src/actions/public/createBlockFilter.ts +14 -0
  95. package/src/actions/public/createContractEventFilter.test.ts +119 -0
  96. package/src/actions/public/createContractEventFilter.ts +69 -0
  97. package/src/actions/public/createEventFilter.test.ts +245 -0
  98. package/src/actions/public/createEventFilter.ts +76 -0
  99. package/src/actions/public/createPendingTransactionFilter.bench.ts +11 -0
  100. package/src/actions/public/createPendingTransactionFilter.test.ts +9 -0
  101. package/src/actions/public/createPendingTransactionFilter.ts +14 -0
  102. package/src/actions/public/deployContract.test.ts +56 -0
  103. package/src/actions/public/deployContract.ts +38 -0
  104. package/src/actions/public/estimateGas.bench.ts +46 -0
  105. package/src/actions/public/estimateGas.test.ts +92 -0
  106. package/src/actions/public/estimateGas.ts +61 -0
  107. package/src/actions/public/getBalance.test.ts +83 -0
  108. package/src/actions/public/getBalance.ts +37 -0
  109. package/src/actions/public/getBlock.bench.ts +28 -0
  110. package/src/actions/public/getBlock.test.ts +575 -0
  111. package/src/actions/public/getBlock.ts +65 -0
  112. package/src/actions/public/getBlockNumber.bench.ts +28 -0
  113. package/src/actions/public/getBlockNumber.test.ts +27 -0
  114. package/src/actions/public/getBlockNumber.ts +32 -0
  115. package/src/actions/public/getBlockTransactionCount.bench.ts +15 -0
  116. package/src/actions/public/getBlockTransactionCount.test.ts +57 -0
  117. package/src/actions/public/getBlockTransactionCount.ts +52 -0
  118. package/src/actions/public/getBytecode.test.ts +27 -0
  119. package/src/actions/public/getBytecode.ts +32 -0
  120. package/src/actions/public/getChainId.bench.ts +15 -0
  121. package/src/actions/public/getChainId.test.ts +8 -0
  122. package/src/actions/public/getChainId.ts +7 -0
  123. package/src/actions/public/getFeeHistory.bench.ts +18 -0
  124. package/src/actions/public/getFeeHistory.test.ts +137 -0
  125. package/src/actions/public/getFeeHistory.ts +44 -0
  126. package/src/actions/public/getFilterChanges.bench.ts +13 -0
  127. package/src/actions/public/getFilterChanges.test.ts +189 -0
  128. package/src/actions/public/getFilterChanges.ts +23 -0
  129. package/src/actions/public/getFilterLogs.test.ts +104 -0
  130. package/src/actions/public/getFilterLogs.ts +20 -0
  131. package/src/actions/public/getGasPrice.bench.ts +28 -0
  132. package/src/actions/public/getGasPrice.test.ts +8 -0
  133. package/src/actions/public/getGasPrice.ts +15 -0
  134. package/src/actions/public/getLogs.test.ts +107 -0
  135. package/src/actions/public/getLogs.ts +84 -0
  136. package/src/actions/public/getStorageAt.test.ts +34 -0
  137. package/src/actions/public/getStorageAt.ts +32 -0
  138. package/src/actions/public/getTransaction.bench.ts +33 -0
  139. package/src/actions/public/getTransaction.test.ts +311 -0
  140. package/src/actions/public/getTransaction.ts +95 -0
  141. package/src/actions/public/getTransactionConfirmations.test.ts +69 -0
  142. package/src/actions/public/getTransactionConfirmations.ts +38 -0
  143. package/src/actions/public/getTransactionCount.test.ts +56 -0
  144. package/src/actions/public/getTransactionCount.ts +34 -0
  145. package/src/actions/public/getTransactionReceipt.bench.ts +33 -0
  146. package/src/actions/public/getTransactionReceipt.test.ts +179 -0
  147. package/src/actions/public/getTransactionReceipt.ts +34 -0
  148. package/src/actions/public/index.test.ts +43 -0
  149. package/src/actions/public/index.ts +149 -0
  150. package/src/actions/public/readContract.test.ts +128 -0
  151. package/src/actions/public/readContract.ts +87 -0
  152. package/src/actions/public/simulateContract.bench.ts +31 -0
  153. package/src/actions/public/simulateContract.test.ts +238 -0
  154. package/src/actions/public/simulateContract.ts +98 -0
  155. package/src/actions/public/uninstallFilter.bench.ts +13 -0
  156. package/src/actions/public/uninstallFilter.test.ts +65 -0
  157. package/src/actions/public/uninstallFilter.ts +17 -0
  158. package/src/actions/public/waitForTransactionReceipt.test.ts +322 -0
  159. package/src/actions/public/waitForTransactionReceipt.ts +170 -0
  160. package/src/actions/public/watchBlockNumber.test.ts +166 -0
  161. package/src/actions/public/watchBlockNumber.ts +79 -0
  162. package/src/actions/public/watchBlocks.test.ts +210 -0
  163. package/src/actions/public/watchBlocks.ts +114 -0
  164. package/src/actions/public/watchContractEvent.test.ts +301 -0
  165. package/src/actions/public/watchContractEvent.ts +108 -0
  166. package/src/actions/public/watchEvent.test.ts +190 -0
  167. package/src/actions/public/watchEvent.ts +95 -0
  168. package/src/actions/public/watchPendingTransactions.test.ts +116 -0
  169. package/src/actions/public/watchPendingTransactions.ts +74 -0
  170. package/src/actions/test/dropTransaction.test.ts +34 -0
  171. package/src/actions/test/dropTransaction.ts +17 -0
  172. package/src/actions/test/getAutomine.test.ts +14 -0
  173. package/src/actions/test/getAutomine.ts +11 -0
  174. package/src/actions/test/getTxpoolContent.test.ts +45 -0
  175. package/src/actions/test/getTxpoolContent.ts +7 -0
  176. package/src/actions/test/getTxpoolStatus.test.ts +41 -0
  177. package/src/actions/test/getTxpoolStatus.ts +12 -0
  178. package/src/actions/test/impersonateAccount.test.ts +28 -0
  179. package/src/actions/test/impersonateAccount.ts +17 -0
  180. package/src/actions/test/increaseTime.test.ts +18 -0
  181. package/src/actions/test/increaseTime.ts +17 -0
  182. package/src/actions/test/index.test.ts +38 -0
  183. package/src/actions/test/index.ts +77 -0
  184. package/src/actions/test/inspectTxpool.test.ts +50 -0
  185. package/src/actions/test/inspectTxpool.ts +7 -0
  186. package/src/actions/test/mine.test.ts +20 -0
  187. package/src/actions/test/mine.ts +16 -0
  188. package/src/actions/test/removeBlockTimestampInterval.test.ts +23 -0
  189. package/src/actions/test/removeBlockTimestampInterval.ts +7 -0
  190. package/src/actions/test/reset.test.ts +19 -0
  191. package/src/actions/test/reset.ts +18 -0
  192. package/src/actions/test/revert.test.ts +39 -0
  193. package/src/actions/test/revert.ts +14 -0
  194. package/src/actions/test/sendUnsignedTransaction.test.ts +52 -0
  195. package/src/actions/test/sendUnsignedTransaction.ts +19 -0
  196. package/src/actions/test/setAutomine.test.ts +14 -0
  197. package/src/actions/test/setAutomine.ts +8 -0
  198. package/src/actions/test/setBalance.test.ts +29 -0
  199. package/src/actions/test/setBalance.ts +20 -0
  200. package/src/actions/test/setBlockGasLimit.test.ts +21 -0
  201. package/src/actions/test/setBlockGasLimit.ts +17 -0
  202. package/src/actions/test/setBlockTimestampInterval.test.ts +23 -0
  203. package/src/actions/test/setBlockTimestampInterval.ts +16 -0
  204. package/src/actions/test/setCode.test.ts +26 -0
  205. package/src/actions/test/setCode.ts +19 -0
  206. package/src/actions/test/setCoinbase.test.ts +11 -0
  207. package/src/actions/test/setCoinbase.ts +17 -0
  208. package/src/actions/test/setIntervalMining.test.ts +30 -0
  209. package/src/actions/test/setIntervalMining.ts +16 -0
  210. package/src/actions/test/setLoggingEnabled.test.ts +10 -0
  211. package/src/actions/test/setLoggingEnabled.ts +8 -0
  212. package/src/actions/test/setMinGasPrice.test.ts +22 -0
  213. package/src/actions/test/setMinGasPrice.ts +17 -0
  214. package/src/actions/test/setNextBlockBaseFeePerGas.test.ts +23 -0
  215. package/src/actions/test/setNextBlockBaseFeePerGas.ts +17 -0
  216. package/src/actions/test/setNextBlockTimestamp.test.ts +19 -0
  217. package/src/actions/test/setNextBlockTimestamp.ts +17 -0
  218. package/src/actions/test/setNonce.test.ts +28 -0
  219. package/src/actions/test/setNonce.ts +20 -0
  220. package/src/actions/test/setRpcUrl.test.ts +9 -0
  221. package/src/actions/test/setRpcUrl.ts +8 -0
  222. package/src/actions/test/setStorageAt.test.ts +36 -0
  223. package/src/actions/test/setStorageAt.ts +26 -0
  224. package/src/actions/test/snapshot.test.ts +18 -0
  225. package/src/actions/test/snapshot.ts +7 -0
  226. package/src/actions/test/stopImpersonatingAccount.test.ts +31 -0
  227. package/src/actions/test/stopImpersonatingAccount.ts +17 -0
  228. package/src/actions/wallet/addChain.test.ts +14 -0
  229. package/src/actions/wallet/addChain.ts +21 -0
  230. package/src/actions/wallet/getAccounts.test.ts +22 -0
  231. package/src/actions/wallet/getAccounts.ts +7 -0
  232. package/src/actions/wallet/getPermissions.test.ts +24 -0
  233. package/src/actions/wallet/getPermissions.ts +9 -0
  234. package/src/actions/wallet/index.test.ts +20 -0
  235. package/src/actions/wallet/index.ts +30 -0
  236. package/src/actions/wallet/requestAccounts.test.ts +13 -0
  237. package/src/actions/wallet/requestAccounts.ts +7 -0
  238. package/src/actions/wallet/requestPermissions.test.ts +26 -0
  239. package/src/actions/wallet/requestPermissions.ts +19 -0
  240. package/src/actions/wallet/sendTransaction.bench.ts +57 -0
  241. package/src/actions/wallet/sendTransaction.test.ts +440 -0
  242. package/src/actions/wallet/sendTransaction.ts +77 -0
  243. package/src/actions/wallet/signMessage.test.ts +62 -0
  244. package/src/actions/wallet/signMessage.ts +35 -0
  245. package/src/actions/wallet/switchChain.test.ts +22 -0
  246. package/src/actions/wallet/switchChain.ts +19 -0
  247. package/src/actions/wallet/watchAsset.test.ts +41 -0
  248. package/src/actions/wallet/watchAsset.ts +16 -0
  249. package/src/actions/wallet/writeContract.test.ts +54 -0
  250. package/src/actions/wallet/writeContract.ts +56 -0
  251. package/src/chains.test.ts +1912 -0
  252. package/src/chains.ts +99 -0
  253. package/src/clients/createClient.test.ts +295 -0
  254. package/src/clients/createClient.ts +81 -0
  255. package/src/clients/createPublicClient.test.ts +165 -0
  256. package/src/clients/createPublicClient.ts +49 -0
  257. package/src/clients/createTestClient.test.ts +145 -0
  258. package/src/clients/createTestClient.ts +72 -0
  259. package/src/clients/createWalletClient.test.ts +121 -0
  260. package/src/clients/createWalletClient.ts +54 -0
  261. package/src/clients/index.test.ts +19 -0
  262. package/src/clients/index.ts +31 -0
  263. package/src/clients/transports/createTransport.test.ts +58 -0
  264. package/src/clients/transports/createTransport.ts +48 -0
  265. package/src/clients/transports/custom.test.ts +98 -0
  266. package/src/clients/transports/custom.ts +34 -0
  267. package/src/clients/transports/fallback.test.ts +223 -0
  268. package/src/clients/transports/fallback.ts +48 -0
  269. package/src/clients/transports/http.test.ts +110 -0
  270. package/src/clients/transports/http.ts +51 -0
  271. package/src/clients/transports/index.test.ts +15 -0
  272. package/src/clients/transports/index.ts +17 -0
  273. package/src/clients/transports/webSocket.test.ts +164 -0
  274. package/src/clients/transports/webSocket.ts +117 -0
  275. package/src/errors/abi.test.ts +83 -0
  276. package/src/errors/abi.ts +238 -0
  277. package/src/errors/address.test.ts +14 -0
  278. package/src/errors/address.ts +9 -0
  279. package/src/errors/base.test.ts +72 -0
  280. package/src/errors/base.ts +57 -0
  281. package/src/errors/block.test.ts +24 -0
  282. package/src/errors/block.ts +18 -0
  283. package/src/errors/contract.ts +125 -0
  284. package/src/errors/data.ts +20 -0
  285. package/src/errors/encoding.ts +60 -0
  286. package/src/errors/index.ts +77 -0
  287. package/src/errors/log.ts +8 -0
  288. package/src/errors/request.test.ts +331 -0
  289. package/src/errors/request.ts +163 -0
  290. package/src/errors/rpc.test.ts +88 -0
  291. package/src/errors/rpc.ts +113 -0
  292. package/src/errors/transaction.test.ts +83 -0
  293. package/src/errors/transaction.ts +54 -0
  294. package/src/errors/transport.test.ts +12 -0
  295. package/src/errors/transport.ts +12 -0
  296. package/src/index.test.ts +214 -0
  297. package/src/index.ts +373 -0
  298. package/src/public.ts +80 -0
  299. package/src/test.ts +51 -0
  300. package/src/types/block.ts +71 -0
  301. package/src/types/chain.ts +6 -0
  302. package/src/types/contract.ts +342 -0
  303. package/src/types/eip1193.ts +1041 -0
  304. package/src/types/fee.ts +47 -0
  305. package/src/types/filter.ts +8 -0
  306. package/src/types/formatter.ts +23 -0
  307. package/src/types/index.ts +78 -0
  308. package/src/types/log.ts +22 -0
  309. package/src/types/misc.ts +5 -0
  310. package/src/types/rpc.ts +35 -0
  311. package/src/types/transaction.ts +145 -0
  312. package/src/types/utils.ts +67 -0
  313. package/src/types/window.ts +9 -0
  314. package/src/utils/abi/decodeAbi.bench.ts +135 -0
  315. package/src/utils/abi/decodeAbi.test.ts +1615 -0
  316. package/src/utils/abi/decodeAbi.ts +296 -0
  317. package/src/utils/abi/decodeDeployData.test.ts +159 -0
  318. package/src/utils/abi/decodeDeployData.ts +41 -0
  319. package/src/utils/abi/decodeErrorResult.test.ts +130 -0
  320. package/src/utils/abi/decodeErrorResult.ts +28 -0
  321. package/src/utils/abi/decodeFunctionData.test.ts +140 -0
  322. package/src/utils/abi/decodeFunctionData.ts +29 -0
  323. package/src/utils/abi/decodeFunctionResult.test.ts +262 -0
  324. package/src/utils/abi/decodeFunctionResult.ts +53 -0
  325. package/src/utils/abi/encodeAbi.bench.ts +163 -0
  326. package/src/utils/abi/encodeAbi.test.ts +1448 -0
  327. package/src/utils/abi/encodeAbi.ts +264 -0
  328. package/src/utils/abi/encodeDeployData.test.ts +131 -0
  329. package/src/utils/abi/encodeDeployData.ts +37 -0
  330. package/src/utils/abi/encodeErrorResult.test.ts +197 -0
  331. package/src/utils/abi/encodeErrorResult.ts +40 -0
  332. package/src/utils/abi/encodeEventTopics.test.ts +348 -0
  333. package/src/utils/abi/encodeEventTopics.ts +69 -0
  334. package/src/utils/abi/encodeFunctionData.test.ts +140 -0
  335. package/src/utils/abi/encodeFunctionData.ts +38 -0
  336. package/src/utils/abi/encodeFunctionResult.test.ts +284 -0
  337. package/src/utils/abi/encodeFunctionResult.ts +39 -0
  338. package/src/utils/abi/formatAbiItem.test.ts +335 -0
  339. package/src/utils/abi/formatAbiItem.ts +41 -0
  340. package/src/utils/abi/formatAbiItemWithArgs.test.ts +291 -0
  341. package/src/utils/abi/formatAbiItemWithArgs.ts +27 -0
  342. package/src/utils/abi/getAbiItem.ts +5 -0
  343. package/src/utils/abi/index.test.ts +23 -0
  344. package/src/utils/abi/index.ts +38 -0
  345. package/src/utils/address/getAddress.bench.ts +22 -0
  346. package/src/utils/address/getAddress.test.ts +46 -0
  347. package/src/utils/address/getAddress.ts +28 -0
  348. package/src/utils/address/getContractAddress.bench.ts +20 -0
  349. package/src/utils/address/getContractAddress.test.ts +78 -0
  350. package/src/utils/address/getContractAddress.ts +59 -0
  351. package/src/utils/address/index.test.ts +17 -0
  352. package/src/utils/address/index.ts +16 -0
  353. package/src/utils/address/isAddress.test.ts +10 -0
  354. package/src/utils/address/isAddress.ts +10 -0
  355. package/src/utils/address/isAddressEqual.test.ts +55 -0
  356. package/src/utils/address/isAddressEqual.ts +6 -0
  357. package/src/utils/buildRequest.test.ts +365 -0
  358. package/src/utils/buildRequest.ts +45 -0
  359. package/src/utils/chain.test.ts +43 -0
  360. package/src/utils/chain.ts +8 -0
  361. package/src/utils/contract/extractFunctionParts.test.ts +109 -0
  362. package/src/utils/contract/extractFunctionParts.ts +27 -0
  363. package/src/utils/contract/getContractError.test.ts +97 -0
  364. package/src/utils/contract/getContractError.ts +66 -0
  365. package/src/utils/contract/index.test.ts +15 -0
  366. package/src/utils/contract/index.ts +8 -0
  367. package/src/utils/data/concat.test.ts +35 -0
  368. package/src/utils/data/concat.ts +34 -0
  369. package/src/utils/data/index.test.ts +23 -0
  370. package/src/utils/data/index.ts +13 -0
  371. package/src/utils/data/isBytes.test.ts +9 -0
  372. package/src/utils/data/isBytes.ts +7 -0
  373. package/src/utils/data/isHex.test.ts +13 -0
  374. package/src/utils/data/isHex.ts +5 -0
  375. package/src/utils/data/pad.bench.ts +39 -0
  376. package/src/utils/data/pad.test.ts +367 -0
  377. package/src/utils/data/pad.ts +53 -0
  378. package/src/utils/data/size.test.ts +18 -0
  379. package/src/utils/data/size.ts +13 -0
  380. package/src/utils/data/slice.test.ts +203 -0
  381. package/src/utils/data/slice.ts +60 -0
  382. package/src/utils/data/trim.bench.ts +50 -0
  383. package/src/utils/data/trim.test.ts +175 -0
  384. package/src/utils/data/trim.ts +33 -0
  385. package/src/utils/encoding/decodeBytes.bench.ts +40 -0
  386. package/src/utils/encoding/decodeBytes.test.ts +144 -0
  387. package/src/utils/encoding/decodeBytes.ts +63 -0
  388. package/src/utils/encoding/decodeHex.bench.ts +24 -0
  389. package/src/utils/encoding/decodeHex.test.ts +167 -0
  390. package/src/utils/encoding/decodeHex.ts +76 -0
  391. package/src/utils/encoding/decodeRlp.bench.ts +34 -0
  392. package/src/utils/encoding/decodeRlp.test.ts +350 -0
  393. package/src/utils/encoding/decodeRlp.ts +121 -0
  394. package/src/utils/encoding/encodeBytes.bench.ts +41 -0
  395. package/src/utils/encoding/encodeBytes.test.ts +676 -0
  396. package/src/utils/encoding/encodeBytes.ts +59 -0
  397. package/src/utils/encoding/encodeHex.bench.ts +60 -0
  398. package/src/utils/encoding/encodeHex.test.ts +232 -0
  399. package/src/utils/encoding/encodeHex.ts +104 -0
  400. package/src/utils/encoding/encodeRlp.bench.ts +54 -0
  401. package/src/utils/encoding/encodeRlp.test.ts +254 -0
  402. package/src/utils/encoding/encodeRlp.ts +48 -0
  403. package/src/utils/encoding/index.test.ts +32 -0
  404. package/src/utils/encoding/index.ts +36 -0
  405. package/src/utils/formatters/block.bench.ts +51 -0
  406. package/src/utils/formatters/block.test.ts +115 -0
  407. package/src/utils/formatters/block.ts +37 -0
  408. package/src/utils/formatters/extract.test.ts +14 -0
  409. package/src/utils/formatters/extract.ts +18 -0
  410. package/src/utils/formatters/feeHistory.test.ts +66 -0
  411. package/src/utils/formatters/feeHistory.ts +12 -0
  412. package/src/utils/formatters/format.test.ts +93 -0
  413. package/src/utils/formatters/format.ts +90 -0
  414. package/src/utils/formatters/index.test.ts +27 -0
  415. package/src/utils/formatters/index.ts +34 -0
  416. package/src/utils/formatters/log.test.ts +79 -0
  417. package/src/utils/formatters/log.ts +12 -0
  418. package/src/utils/formatters/transaction.test.ts +271 -0
  419. package/src/utils/formatters/transaction.ts +63 -0
  420. package/src/utils/formatters/transactionReceipt.bench.ts +73 -0
  421. package/src/utils/formatters/transactionReceipt.test.ts +151 -0
  422. package/src/utils/formatters/transactionReceipt.ts +63 -0
  423. package/src/utils/formatters/transactionRequest.bench.ts +29 -0
  424. package/src/utils/formatters/transactionRequest.test.ts +237 -0
  425. package/src/utils/formatters/transactionRequest.ts +56 -0
  426. package/src/utils/hash/getEventSignature.test.ts +61 -0
  427. package/src/utils/hash/getEventSignature.ts +4 -0
  428. package/src/utils/hash/getFunctionSignature.test.ts +22 -0
  429. package/src/utils/hash/getFunctionSignature.ts +5 -0
  430. package/src/utils/hash/hashFunction.test.ts +65 -0
  431. package/src/utils/hash/hashFunction.ts +12 -0
  432. package/src/utils/hash/index.test.ts +13 -0
  433. package/src/utils/hash/index.ts +5 -0
  434. package/src/utils/hash/keccak256.test.ts +59 -0
  435. package/src/utils/hash/keccak256.ts +23 -0
  436. package/src/utils/index.test.ts +110 -0
  437. package/src/utils/index.ts +137 -0
  438. package/src/utils/observe.test.ts +176 -0
  439. package/src/utils/observe.ts +66 -0
  440. package/src/utils/poll.test.ts +127 -0
  441. package/src/utils/poll.ts +42 -0
  442. package/src/utils/promise/index.test.ts +14 -0
  443. package/src/utils/promise/index.ts +3 -0
  444. package/src/utils/promise/withCache.test.ts +97 -0
  445. package/src/utils/promise/withCache.ts +73 -0
  446. package/src/utils/promise/withRetry.test.ts +231 -0
  447. package/src/utils/promise/withRetry.ts +61 -0
  448. package/src/utils/promise/withTimeout.test.ts +37 -0
  449. package/src/utils/promise/withTimeout.ts +39 -0
  450. package/src/utils/rpc.test.ts +992 -0
  451. package/src/utils/rpc.ts +292 -0
  452. package/src/utils/stringify.test.ts +13 -0
  453. package/src/utils/stringify.ts +5 -0
  454. package/src/utils/uid.ts +14 -0
  455. package/src/utils/unit/constants.test.ts +22 -0
  456. package/src/utils/unit/constants.ts +12 -0
  457. package/src/utils/unit/formatEther.test.ts +75 -0
  458. package/src/utils/unit/formatEther.ts +6 -0
  459. package/src/utils/unit/formatGwei.test.ts +32 -0
  460. package/src/utils/unit/formatGwei.ts +6 -0
  461. package/src/utils/unit/formatUnit.bench.ts +26 -0
  462. package/src/utils/unit/formatUnit.test.ts +40 -0
  463. package/src/utils/unit/formatUnit.ts +16 -0
  464. package/src/utils/unit/index.test.ts +28 -0
  465. package/src/utils/unit/index.ts +7 -0
  466. package/src/utils/unit/parseEther.test.ts +126 -0
  467. package/src/utils/unit/parseEther.ts +6 -0
  468. package/src/utils/unit/parseGwei.test.ts +50 -0
  469. package/src/utils/unit/parseGwei.ts +6 -0
  470. package/src/utils/unit/parseUnit.bench.ts +26 -0
  471. package/src/utils/unit/parseUnit.test.ts +54 -0
  472. package/src/utils/unit/parseUnit.ts +27 -0
  473. package/src/utils/wait.ts +3 -0
  474. package/src/wallet.ts +23 -0
  475. package/src/window.ts +1 -0
  476. package/utils/package.json +1 -1
  477. package/window/package.json +1 -1
  478. package/actions/package.json +0 -4
  479. package/dist/BaseError-7688f84e.d.ts +0 -18
  480. package/dist/actions/index.d.ts +0 -8
  481. package/dist/actions/index.js +0 -123
  482. package/dist/createWalletClient-915223f3.d.ts +0 -130
  483. package/dist/transactionRequest-ade896ac.d.ts +0 -44
package/dist/chains.js CHANGED
@@ -1,133 +1,129 @@
1
- import {
2
- formatBlock,
3
- formatTransaction,
4
- formatTransactionReceipt,
5
- formatTransactionRequest
6
- } from "./chunk-3EOU525X.js";
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
2
+
3
+
4
+
5
+
6
+
7
+ var _chunkO2GYLJVDjs = require('./chunk-O2GYLJVD.js');
7
8
 
8
9
  // src/chains.ts
9
- import {
10
- arbitrumGoerli as arbitrumGoerli_,
11
- arbitrum as arbitrum_,
12
- avalancheFuji as avalancheFuji_,
13
- avalanche as avalanche_,
14
- bscTestnet as bscTestnet_,
15
- bsc as bsc_,
16
- fantomTestnet as fantomTestnet_,
17
- fantom as fantom_,
18
- foundry as foundry_,
19
- goerli as goerli_,
20
- hardhat as hardhat_,
21
- localhost as localhost_,
22
- mainnet as mainnet_,
23
- optimismGoerli as optimismGoerli_,
24
- optimism as optimism_,
25
- polygonMumbai as polygonMumbai_,
26
- polygon as polygon_,
27
- sepolia as sepolia_
28
- } from "@wagmi/chains";
29
- function defineChain(chain) {
30
- return chain;
31
- }
32
- function defineFormatter({
33
- format
34
- }) {
35
- return ({
36
- exclude,
37
- format: formatOverride
38
- }) => (data) => {
39
- const formatted = format(data);
40
- if (exclude) {
41
- for (const key of exclude) {
42
- delete formatted[key];
43
- }
44
- }
45
- return {
46
- ...formatted,
47
- ...formatOverride?.(data)
48
- };
49
- };
50
- }
51
- var defineBlock = defineFormatter({ format: formatBlock });
52
- var defineTransaction = defineFormatter({ format: formatTransaction });
53
- var defineTransactionRequest = defineFormatter({
54
- format: formatTransactionRequest
55
- });
56
- var defineTransactionReceipt = defineFormatter({
57
- format: formatTransactionReceipt
58
- });
59
- var arbitrumGoerli = defineChain(arbitrumGoerli_);
60
- var arbitrum = defineChain(arbitrum_);
61
- var avalancheFuji = defineChain(avalancheFuji_);
62
- var avalanche = defineChain(avalanche_);
63
- var bscTestnet = defineChain(bscTestnet_);
64
- var bsc = defineChain(bsc_);
65
- var celo = defineChain({
66
- id: 42220,
67
- name: "Celo",
68
- network: "celo",
69
- nativeCurrency: { name: "Celo", symbol: "CELO", decimals: 18 },
70
- rpcUrls: {
71
- default: { http: ["https://rpc.ankr.com/celo"] }
72
- },
73
- formatters: {
74
- block: defineBlock({
75
- exclude: ["difficulty", "gasLimit", "mixHash", "nonce", "uncles"],
76
- format: (block) => ({
77
- randomness: block.randomness
78
- })
79
- }),
80
- transaction: defineTransaction({
81
- format: (transaction) => ({
82
- feeCurrency: transaction.feeCurrency,
83
- gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
84
- gatewayFeeRecipient: transaction.gatewayFeeRecipient
85
- })
86
- }),
87
- transactionRequest: defineTransactionRequest({
88
- format: (transactionRequest) => ({
89
- feeCurrency: transactionRequest.feeCurrency,
90
- gatewayFee: transactionRequest.gatewayFee,
91
- gatewayFeeRecipient: transactionRequest.gatewayFeeRecipient
92
- })
10
+ var _chains = require('@wagmi/chains'); var chains = _interopRequireWildcard(_chains);
11
+ var celoFormatters = {
12
+ block: _chunkO2GYLJVDjs.defineBlock.call(void 0, {
13
+ exclude: ["difficulty", "gasLimit", "mixHash", "nonce", "uncles"],
14
+ format: (block) => ({
15
+ randomness: block.randomness
93
16
  })
94
- }
95
- });
96
- var fantomTestnet = defineChain(fantomTestnet_);
97
- var fantom = defineChain(fantom_);
98
- var foundry = defineChain(foundry_);
99
- var goerli = defineChain(goerli_);
100
- var hardhat = defineChain(hardhat_);
101
- var localhost = defineChain(localhost_);
102
- var mainnet = defineChain(mainnet_);
103
- var optimismGoerli = defineChain(optimismGoerli_);
104
- var optimism = defineChain(optimism_);
105
- var polygonMumbai = defineChain(polygonMumbai_);
106
- var polygon = defineChain(polygon_);
107
- var sepolia = defineChain(sepolia_);
108
- export {
109
- arbitrum,
110
- arbitrumGoerli,
111
- avalanche,
112
- avalancheFuji,
113
- bsc,
114
- bscTestnet,
115
- celo,
116
- defineBlock,
117
- defineChain,
118
- defineTransaction,
119
- defineTransactionReceipt,
120
- defineTransactionRequest,
121
- fantom,
122
- fantomTestnet,
123
- foundry,
124
- goerli,
125
- hardhat,
126
- localhost,
127
- mainnet,
128
- optimism,
129
- optimismGoerli,
130
- polygon,
131
- polygonMumbai,
132
- sepolia
17
+ }),
18
+ transaction: _chunkO2GYLJVDjs.defineTransaction.call(void 0, {
19
+ format: (transaction) => ({
20
+ feeCurrency: transaction.feeCurrency,
21
+ gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
22
+ gatewayFeeRecipient: transaction.gatewayFeeRecipient
23
+ })
24
+ }),
25
+ transactionReceipt: _chunkO2GYLJVDjs.defineTransactionReceipt.call(void 0, {
26
+ format: (transaction) => ({
27
+ feeCurrency: transaction.feeCurrency,
28
+ gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
29
+ gatewayFeeRecipient: transaction.gatewayFeeRecipient
30
+ })
31
+ }),
32
+ transactionRequest: _chunkO2GYLJVDjs.defineTransactionRequest.call(void 0, {
33
+ format: (transactionRequest) => ({
34
+ feeCurrency: transactionRequest.feeCurrency,
35
+ gatewayFee: transactionRequest.gatewayFee,
36
+ gatewayFeeRecipient: transactionRequest.gatewayFeeRecipient
37
+ })
38
+ })
133
39
  };
40
+ var arbitrum2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.arbitrum);
41
+ var arbitrumGoerli2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.arbitrumGoerli);
42
+ var aurora2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.aurora);
43
+ var auroraGoerli = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.auroraTestnet);
44
+ var avalanche2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.avalanche);
45
+ var avalancheFuji2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.avalancheFuji);
46
+ var bronos2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.bronos);
47
+ var bronosTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.bronosTestnet);
48
+ var bsc2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.bsc);
49
+ var bscTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.bscTestnet);
50
+ var canto2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.canto);
51
+ var celo2 = _chunkO2GYLJVDjs.defineChain.call(void 0, {
52
+ ...chains.celo,
53
+ formatters: celoFormatters
54
+ });
55
+ var celoAlfajores2 = _chunkO2GYLJVDjs.defineChain.call(void 0, {
56
+ ...chains.celoAlfajores,
57
+ formatters: celoFormatters
58
+ });
59
+ var crossbell2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.crossbell);
60
+ var evmos2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.evmos);
61
+ var evmosTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.evmosTestnet);
62
+ var fantom2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.fantom);
63
+ var fantomTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.fantomTestnet);
64
+ var filecoin2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.filecoin);
65
+ var filecoinTestnet = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.filecoinHyperspace);
66
+ var foundry2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.foundry);
67
+ var goerli2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.goerli);
68
+ var gnosis2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.gnosis);
69
+ var gnosisChiado2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.gnosisChiado);
70
+ var hardhat2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.hardhat);
71
+ var iotex2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.iotex);
72
+ var iotexTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.iotexTestnet);
73
+ var localhost2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.localhost);
74
+ var mainnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.mainnet);
75
+ var metis2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.metis);
76
+ var metisGoerli2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.metisGoerli);
77
+ var optimism2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.optimism);
78
+ var optimismGoerli2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.optimismGoerli);
79
+ var polygon2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.polygon);
80
+ var polygonMumbai2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.polygonMumbai);
81
+ var sepolia2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.sepolia);
82
+ var taraxa2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.taraxa);
83
+ var taraxaTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.taraxaTestnet);
84
+ var zkSync2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.zkSync);
85
+ var zkSyncTestnet2 = _chunkO2GYLJVDjs.defineChain.call(void 0, chains.zkSyncTestnet);
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+ exports.arbitrum = arbitrum2; exports.arbitrumGoerli = arbitrumGoerli2; exports.aurora = aurora2; exports.auroraGoerli = auroraGoerli; exports.avalanche = avalanche2; exports.avalancheFuji = avalancheFuji2; exports.bronos = bronos2; exports.bronosTestnet = bronosTestnet2; exports.bsc = bsc2; exports.bscTestnet = bscTestnet2; exports.canto = canto2; exports.celo = celo2; exports.celoAlfajores = celoAlfajores2; exports.crossbell = crossbell2; exports.defineChain = _chunkO2GYLJVDjs.defineChain; exports.evmos = evmos2; exports.evmosTestnet = evmosTestnet2; exports.fantom = fantom2; exports.fantomTestnet = fantomTestnet2; exports.filecoin = filecoin2; exports.filecoinTestnet = filecoinTestnet; exports.foundry = foundry2; exports.gnosis = gnosis2; exports.gnosisChiado = gnosisChiado2; exports.goerli = goerli2; exports.hardhat = hardhat2; exports.iotex = iotex2; exports.iotexTestnet = iotexTestnet2; exports.localhost = localhost2; exports.mainnet = mainnet2; exports.metis = metis2; exports.metisGoerli = metisGoerli2; exports.optimism = optimism2; exports.optimismGoerli = optimismGoerli2; exports.polygon = polygon2; exports.polygonMumbai = polygonMumbai2; exports.sepolia = sepolia2; exports.taraxa = taraxa2; exports.taraxaTestnet = taraxaTestnet2; exports.zkSync = zkSync2; exports.zkSyncTestnet = zkSyncTestnet2;
129
+ //# sourceMappingURL=chains.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/chains.ts"],"names":["arbitrum","arbitrumGoerli","aurora","avalanche","avalancheFuji","bronos","bronosTestnet","bsc","bscTestnet","canto","celo","celoAlfajores","crossbell","evmos","evmosTestnet","fantom","fantomTestnet","filecoin","foundry","goerli","gnosis","gnosisChiado","hardhat","iotex","iotexTestnet","localhost","mainnet","metis","metisGoerli","optimism","optimismGoerli","polygon","polygonMumbai","sepolia","taraxa","taraxaTestnet","zkSync","zkSyncTestnet"],"mappings":";;;;;;;;;AAAA,YAAY,YAAY;AAcxB,IAAM,iBAAiB;AAAA,EACrB,OAAO,YAAY;AAAA,IACjB,SAAS,CAAC,cAAc,YAAY,WAAW,SAAS,QAAQ;AAAA,IAChE,QAAQ,CAAC,WAAW;AAAA,MAClB,YAAY,MAAM;AAAA,IAIpB;AAAA,EACF,CAAC;AAAA,EACD,aAAa,kBAAkB;AAAA,IAC7B,QAAQ,CAAC,iBAAiB;AAAA,MACxB,aAAa,YAAY;AAAA,MACzB,YAAY,YAAY,aACpB,OAAO,YAAY,UAAsB,IACzC;AAAA,MACJ,qBAAqB,YAAY;AAAA,IACnC;AAAA,EACF,CAAC;AAAA,EACD,oBAAoB,yBAAyB;AAAA,IAC3C,QAAQ,CAAC,iBAAiB;AAAA,MACxB,aAAa,YAAY;AAAA,MACzB,YAAY,YAAY,aACpB,OAAO,YAAY,UAAsB,IACzC;AAAA,MACJ,qBAAqB,YAAY;AAAA,IACnC;AAAA,EACF,CAAC;AAAA,EACD,oBAAoB,yBAAyB;AAAA,IAC3C,QAAQ,CAAC,wBAAwB;AAAA,MAC/B,aAAa,mBAAmB;AAAA,MAChC,YAAY,mBAAmB;AAAA,MAC/B,qBAAqB,mBAAmB;AAAA,IAG1C;AAAA,EACF,CAAC;AACH;AAEO,IAAMA,YAAW,YAAmB,eAAQ;AAC5C,IAAMC,kBAAiB,YAAmB,qBAAc;AACxD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAM,eAAe,YAAmB,oBAAa;AACrD,IAAMC,aAAY,YAAmB,gBAAS;AAC9C,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,OAAM,YAAmB,UAAG;AAClC,IAAMC,cAAa,YAAmB,iBAAU;AAChD,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,QAAO,YAAY;AAAA,EAC9B,GAAU;AAAA,EACV,YAAY;AACd,CAAC;AACM,IAAMC,iBAAgB,YAAY;AAAA,EACvC,GAAU;AAAA,EACV,YAAY;AACd,CAAC;AACM,IAAMC,aAAY,YAAmB,gBAAS;AAC9C,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,gBAAe,YAAmB,mBAAY;AACpD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,YAAW,YAAmB,eAAQ;AAC5C,IAAM,kBAAkB,YAAmB,yBAAkB;AAC7D,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,gBAAe,YAAmB,mBAAY;AACpD,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,gBAAe,YAAmB,mBAAY;AACpD,IAAMC,aAAY,YAAmB,gBAAS;AAC9C,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,eAAc,YAAmB,kBAAW;AAClD,IAAMC,YAAW,YAAmB,eAAQ;AAC5C,IAAMC,kBAAiB,YAAmB,qBAAc;AACxD,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa","sourcesContent":["import * as chains from '@wagmi/chains'\n\nimport type { Address, Hex, Quantity } from './types'\nimport {\n defineBlock,\n defineChain,\n defineTransaction,\n defineTransactionReceipt,\n defineTransactionRequest,\n} from './utils'\n\nexport type { Chain } from './types'\nexport { defineChain } from './utils'\n\nconst celoFormatters = {\n block: defineBlock({\n exclude: ['difficulty', 'gasLimit', 'mixHash', 'nonce', 'uncles'],\n format: (block) => ({\n randomness: block.randomness as {\n committed: Hex\n revealed: Hex\n },\n }),\n }),\n transaction: defineTransaction({\n format: (transaction) => ({\n feeCurrency: transaction.feeCurrency as Address | null,\n gatewayFee: transaction.gatewayFee\n ? BigInt(transaction.gatewayFee as Quantity)\n : null,\n gatewayFeeRecipient: transaction.gatewayFeeRecipient as Address | null,\n }),\n }),\n transactionReceipt: defineTransactionReceipt({\n format: (transaction) => ({\n feeCurrency: transaction.feeCurrency as Address | null,\n gatewayFee: transaction.gatewayFee\n ? BigInt(transaction.gatewayFee as Quantity)\n : null,\n gatewayFeeRecipient: transaction.gatewayFeeRecipient as Address | null,\n }),\n }),\n transactionRequest: defineTransactionRequest({\n format: (transactionRequest) => ({\n feeCurrency: transactionRequest.feeCurrency as Address | undefined,\n gatewayFee: transactionRequest.gatewayFee as Quantity | undefined,\n gatewayFeeRecipient: transactionRequest.gatewayFeeRecipient as\n | Address\n | undefined,\n }),\n }),\n}\n\nexport const arbitrum = defineChain(chains.arbitrum)\nexport const arbitrumGoerli = defineChain(chains.arbitrumGoerli)\nexport const aurora = defineChain(chains.aurora)\nexport const auroraGoerli = defineChain(chains.auroraTestnet)\nexport const avalanche = defineChain(chains.avalanche)\nexport const avalancheFuji = defineChain(chains.avalancheFuji)\nexport const bronos = defineChain(chains.bronos)\nexport const bronosTestnet = defineChain(chains.bronosTestnet)\nexport const bsc = defineChain(chains.bsc)\nexport const bscTestnet = defineChain(chains.bscTestnet)\nexport const canto = defineChain(chains.canto)\nexport const celo = defineChain({\n ...chains.celo,\n formatters: celoFormatters,\n})\nexport const celoAlfajores = defineChain({\n ...chains.celoAlfajores,\n formatters: celoFormatters,\n})\nexport const crossbell = defineChain(chains.crossbell)\nexport const evmos = defineChain(chains.evmos)\nexport const evmosTestnet = defineChain(chains.evmosTestnet)\nexport const fantom = defineChain(chains.fantom)\nexport const fantomTestnet = defineChain(chains.fantomTestnet)\nexport const filecoin = defineChain(chains.filecoin)\nexport const filecoinTestnet = defineChain(chains.filecoinHyperspace)\nexport const foundry = defineChain(chains.foundry)\nexport const goerli = defineChain(chains.goerli)\nexport const gnosis = defineChain(chains.gnosis)\nexport const gnosisChiado = defineChain(chains.gnosisChiado)\nexport const hardhat = defineChain(chains.hardhat)\nexport const iotex = defineChain(chains.iotex)\nexport const iotexTestnet = defineChain(chains.iotexTestnet)\nexport const localhost = defineChain(chains.localhost)\nexport const mainnet = defineChain(chains.mainnet)\nexport const metis = defineChain(chains.metis)\nexport const metisGoerli = defineChain(chains.metisGoerli)\nexport const optimism = defineChain(chains.optimism)\nexport const optimismGoerli = defineChain(chains.optimismGoerli)\nexport const polygon = defineChain(chains.polygon)\nexport const polygonMumbai = defineChain(chains.polygonMumbai)\nexport const sepolia = defineChain(chains.sepolia)\nexport const taraxa = defineChain(chains.taraxa)\nexport const taraxaTestnet = defineChain(chains.taraxaTestnet)\nexport const zkSync = defineChain(chains.zkSync)\nexport const zkSyncTestnet = defineChain(chains.zkSyncTestnet)\n"]}
@@ -0,0 +1,129 @@
1
+ import {
2
+ defineBlock,
3
+ defineChain,
4
+ defineTransaction,
5
+ defineTransactionReceipt,
6
+ defineTransactionRequest
7
+ } from "./chunk-62VTYU2V.mjs";
8
+
9
+ // src/chains.ts
10
+ import * as chains from "@wagmi/chains";
11
+ var celoFormatters = {
12
+ block: defineBlock({
13
+ exclude: ["difficulty", "gasLimit", "mixHash", "nonce", "uncles"],
14
+ format: (block) => ({
15
+ randomness: block.randomness
16
+ })
17
+ }),
18
+ transaction: defineTransaction({
19
+ format: (transaction) => ({
20
+ feeCurrency: transaction.feeCurrency,
21
+ gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
22
+ gatewayFeeRecipient: transaction.gatewayFeeRecipient
23
+ })
24
+ }),
25
+ transactionReceipt: defineTransactionReceipt({
26
+ format: (transaction) => ({
27
+ feeCurrency: transaction.feeCurrency,
28
+ gatewayFee: transaction.gatewayFee ? BigInt(transaction.gatewayFee) : null,
29
+ gatewayFeeRecipient: transaction.gatewayFeeRecipient
30
+ })
31
+ }),
32
+ transactionRequest: defineTransactionRequest({
33
+ format: (transactionRequest) => ({
34
+ feeCurrency: transactionRequest.feeCurrency,
35
+ gatewayFee: transactionRequest.gatewayFee,
36
+ gatewayFeeRecipient: transactionRequest.gatewayFeeRecipient
37
+ })
38
+ })
39
+ };
40
+ var arbitrum2 = defineChain(chains.arbitrum);
41
+ var arbitrumGoerli2 = defineChain(chains.arbitrumGoerli);
42
+ var aurora2 = defineChain(chains.aurora);
43
+ var auroraGoerli = defineChain(chains.auroraTestnet);
44
+ var avalanche2 = defineChain(chains.avalanche);
45
+ var avalancheFuji2 = defineChain(chains.avalancheFuji);
46
+ var bronos2 = defineChain(chains.bronos);
47
+ var bronosTestnet2 = defineChain(chains.bronosTestnet);
48
+ var bsc2 = defineChain(chains.bsc);
49
+ var bscTestnet2 = defineChain(chains.bscTestnet);
50
+ var canto2 = defineChain(chains.canto);
51
+ var celo2 = defineChain({
52
+ ...chains.celo,
53
+ formatters: celoFormatters
54
+ });
55
+ var celoAlfajores2 = defineChain({
56
+ ...chains.celoAlfajores,
57
+ formatters: celoFormatters
58
+ });
59
+ var crossbell2 = defineChain(chains.crossbell);
60
+ var evmos2 = defineChain(chains.evmos);
61
+ var evmosTestnet2 = defineChain(chains.evmosTestnet);
62
+ var fantom2 = defineChain(chains.fantom);
63
+ var fantomTestnet2 = defineChain(chains.fantomTestnet);
64
+ var filecoin2 = defineChain(chains.filecoin);
65
+ var filecoinTestnet = defineChain(chains.filecoinHyperspace);
66
+ var foundry2 = defineChain(chains.foundry);
67
+ var goerli2 = defineChain(chains.goerli);
68
+ var gnosis2 = defineChain(chains.gnosis);
69
+ var gnosisChiado2 = defineChain(chains.gnosisChiado);
70
+ var hardhat2 = defineChain(chains.hardhat);
71
+ var iotex2 = defineChain(chains.iotex);
72
+ var iotexTestnet2 = defineChain(chains.iotexTestnet);
73
+ var localhost2 = defineChain(chains.localhost);
74
+ var mainnet2 = defineChain(chains.mainnet);
75
+ var metis2 = defineChain(chains.metis);
76
+ var metisGoerli2 = defineChain(chains.metisGoerli);
77
+ var optimism2 = defineChain(chains.optimism);
78
+ var optimismGoerli2 = defineChain(chains.optimismGoerli);
79
+ var polygon2 = defineChain(chains.polygon);
80
+ var polygonMumbai2 = defineChain(chains.polygonMumbai);
81
+ var sepolia2 = defineChain(chains.sepolia);
82
+ var taraxa2 = defineChain(chains.taraxa);
83
+ var taraxaTestnet2 = defineChain(chains.taraxaTestnet);
84
+ var zkSync2 = defineChain(chains.zkSync);
85
+ var zkSyncTestnet2 = defineChain(chains.zkSyncTestnet);
86
+ export {
87
+ arbitrum2 as arbitrum,
88
+ arbitrumGoerli2 as arbitrumGoerli,
89
+ aurora2 as aurora,
90
+ auroraGoerli,
91
+ avalanche2 as avalanche,
92
+ avalancheFuji2 as avalancheFuji,
93
+ bronos2 as bronos,
94
+ bronosTestnet2 as bronosTestnet,
95
+ bsc2 as bsc,
96
+ bscTestnet2 as bscTestnet,
97
+ canto2 as canto,
98
+ celo2 as celo,
99
+ celoAlfajores2 as celoAlfajores,
100
+ crossbell2 as crossbell,
101
+ defineChain,
102
+ evmos2 as evmos,
103
+ evmosTestnet2 as evmosTestnet,
104
+ fantom2 as fantom,
105
+ fantomTestnet2 as fantomTestnet,
106
+ filecoin2 as filecoin,
107
+ filecoinTestnet,
108
+ foundry2 as foundry,
109
+ gnosis2 as gnosis,
110
+ gnosisChiado2 as gnosisChiado,
111
+ goerli2 as goerli,
112
+ hardhat2 as hardhat,
113
+ iotex2 as iotex,
114
+ iotexTestnet2 as iotexTestnet,
115
+ localhost2 as localhost,
116
+ mainnet2 as mainnet,
117
+ metis2 as metis,
118
+ metisGoerli2 as metisGoerli,
119
+ optimism2 as optimism,
120
+ optimismGoerli2 as optimismGoerli,
121
+ polygon2 as polygon,
122
+ polygonMumbai2 as polygonMumbai,
123
+ sepolia2 as sepolia,
124
+ taraxa2 as taraxa,
125
+ taraxaTestnet2 as taraxaTestnet,
126
+ zkSync2 as zkSync,
127
+ zkSyncTestnet2 as zkSyncTestnet
128
+ };
129
+ //# sourceMappingURL=chains.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/chains.ts"],"sourcesContent":["import * as chains from '@wagmi/chains'\n\nimport type { Address, Hex, Quantity } from './types'\nimport {\n defineBlock,\n defineChain,\n defineTransaction,\n defineTransactionReceipt,\n defineTransactionRequest,\n} from './utils'\n\nexport type { Chain } from './types'\nexport { defineChain } from './utils'\n\nconst celoFormatters = {\n block: defineBlock({\n exclude: ['difficulty', 'gasLimit', 'mixHash', 'nonce', 'uncles'],\n format: (block) => ({\n randomness: block.randomness as {\n committed: Hex\n revealed: Hex\n },\n }),\n }),\n transaction: defineTransaction({\n format: (transaction) => ({\n feeCurrency: transaction.feeCurrency as Address | null,\n gatewayFee: transaction.gatewayFee\n ? BigInt(transaction.gatewayFee as Quantity)\n : null,\n gatewayFeeRecipient: transaction.gatewayFeeRecipient as Address | null,\n }),\n }),\n transactionReceipt: defineTransactionReceipt({\n format: (transaction) => ({\n feeCurrency: transaction.feeCurrency as Address | null,\n gatewayFee: transaction.gatewayFee\n ? BigInt(transaction.gatewayFee as Quantity)\n : null,\n gatewayFeeRecipient: transaction.gatewayFeeRecipient as Address | null,\n }),\n }),\n transactionRequest: defineTransactionRequest({\n format: (transactionRequest) => ({\n feeCurrency: transactionRequest.feeCurrency as Address | undefined,\n gatewayFee: transactionRequest.gatewayFee as Quantity | undefined,\n gatewayFeeRecipient: transactionRequest.gatewayFeeRecipient as\n | Address\n | undefined,\n }),\n }),\n}\n\nexport const arbitrum = defineChain(chains.arbitrum)\nexport const arbitrumGoerli = defineChain(chains.arbitrumGoerli)\nexport const aurora = defineChain(chains.aurora)\nexport const auroraGoerli = defineChain(chains.auroraTestnet)\nexport const avalanche = defineChain(chains.avalanche)\nexport const avalancheFuji = defineChain(chains.avalancheFuji)\nexport const bronos = defineChain(chains.bronos)\nexport const bronosTestnet = defineChain(chains.bronosTestnet)\nexport const bsc = defineChain(chains.bsc)\nexport const bscTestnet = defineChain(chains.bscTestnet)\nexport const canto = defineChain(chains.canto)\nexport const celo = defineChain({\n ...chains.celo,\n formatters: celoFormatters,\n})\nexport const celoAlfajores = defineChain({\n ...chains.celoAlfajores,\n formatters: celoFormatters,\n})\nexport const crossbell = defineChain(chains.crossbell)\nexport const evmos = defineChain(chains.evmos)\nexport const evmosTestnet = defineChain(chains.evmosTestnet)\nexport const fantom = defineChain(chains.fantom)\nexport const fantomTestnet = defineChain(chains.fantomTestnet)\nexport const filecoin = defineChain(chains.filecoin)\nexport const filecoinTestnet = defineChain(chains.filecoinHyperspace)\nexport const foundry = defineChain(chains.foundry)\nexport const goerli = defineChain(chains.goerli)\nexport const gnosis = defineChain(chains.gnosis)\nexport const gnosisChiado = defineChain(chains.gnosisChiado)\nexport const hardhat = defineChain(chains.hardhat)\nexport const iotex = defineChain(chains.iotex)\nexport const iotexTestnet = defineChain(chains.iotexTestnet)\nexport const localhost = defineChain(chains.localhost)\nexport const mainnet = defineChain(chains.mainnet)\nexport const metis = defineChain(chains.metis)\nexport const metisGoerli = defineChain(chains.metisGoerli)\nexport const optimism = defineChain(chains.optimism)\nexport const optimismGoerli = defineChain(chains.optimismGoerli)\nexport const polygon = defineChain(chains.polygon)\nexport const polygonMumbai = defineChain(chains.polygonMumbai)\nexport const sepolia = defineChain(chains.sepolia)\nexport const taraxa = defineChain(chains.taraxa)\nexport const taraxaTestnet = defineChain(chains.taraxaTestnet)\nexport const zkSync = defineChain(chains.zkSync)\nexport const zkSyncTestnet = defineChain(chains.zkSyncTestnet)\n"],"mappings":";;;;;;;;;AAAA,YAAY,YAAY;AAcxB,IAAM,iBAAiB;AAAA,EACrB,OAAO,YAAY;AAAA,IACjB,SAAS,CAAC,cAAc,YAAY,WAAW,SAAS,QAAQ;AAAA,IAChE,QAAQ,CAAC,WAAW;AAAA,MAClB,YAAY,MAAM;AAAA,IAIpB;AAAA,EACF,CAAC;AAAA,EACD,aAAa,kBAAkB;AAAA,IAC7B,QAAQ,CAAC,iBAAiB;AAAA,MACxB,aAAa,YAAY;AAAA,MACzB,YAAY,YAAY,aACpB,OAAO,YAAY,UAAsB,IACzC;AAAA,MACJ,qBAAqB,YAAY;AAAA,IACnC;AAAA,EACF,CAAC;AAAA,EACD,oBAAoB,yBAAyB;AAAA,IAC3C,QAAQ,CAAC,iBAAiB;AAAA,MACxB,aAAa,YAAY;AAAA,MACzB,YAAY,YAAY,aACpB,OAAO,YAAY,UAAsB,IACzC;AAAA,MACJ,qBAAqB,YAAY;AAAA,IACnC;AAAA,EACF,CAAC;AAAA,EACD,oBAAoB,yBAAyB;AAAA,IAC3C,QAAQ,CAAC,wBAAwB;AAAA,MAC/B,aAAa,mBAAmB;AAAA,MAChC,YAAY,mBAAmB;AAAA,MAC/B,qBAAqB,mBAAmB;AAAA,IAG1C;AAAA,EACF,CAAC;AACH;AAEO,IAAMA,YAAW,YAAmB,eAAQ;AAC5C,IAAMC,kBAAiB,YAAmB,qBAAc;AACxD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAM,eAAe,YAAmB,oBAAa;AACrD,IAAMC,aAAY,YAAmB,gBAAS;AAC9C,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,OAAM,YAAmB,UAAG;AAClC,IAAMC,cAAa,YAAmB,iBAAU;AAChD,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,QAAO,YAAY;AAAA,EAC9B,GAAU;AAAA,EACV,YAAY;AACd,CAAC;AACM,IAAMC,iBAAgB,YAAY;AAAA,EACvC,GAAU;AAAA,EACV,YAAY;AACd,CAAC;AACM,IAAMC,aAAY,YAAmB,gBAAS;AAC9C,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,gBAAe,YAAmB,mBAAY;AACpD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,YAAW,YAAmB,eAAQ;AAC5C,IAAM,kBAAkB,YAAmB,yBAAkB;AAC7D,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,gBAAe,YAAmB,mBAAY;AACpD,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,gBAAe,YAAmB,mBAAY;AACpD,IAAMC,aAAY,YAAmB,gBAAS;AAC9C,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,SAAQ,YAAmB,YAAK;AACtC,IAAMC,eAAc,YAAmB,kBAAW;AAClD,IAAMC,YAAW,YAAmB,eAAQ;AAC5C,IAAMC,kBAAiB,YAAmB,qBAAc;AACxD,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,WAAU,YAAmB,cAAO;AAC1C,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;AACtD,IAAMC,UAAS,YAAmB,aAAM;AACxC,IAAMC,iBAAgB,YAAmB,oBAAa;","names":["arbitrum","arbitrumGoerli","aurora","avalanche","avalancheFuji","bronos","bronosTestnet","bsc","bscTestnet","canto","celo","celoAlfajores","crossbell","evmos","evmosTestnet","fantom","fantomTestnet","filecoin","foundry","goerli","gnosis","gnosisChiado","hardhat","iotex","iotexTestnet","localhost","mainnet","metis","metisGoerli","optimism","optimismGoerli","polygon","polygonMumbai","sepolia","taraxa","taraxaTestnet","zkSync","zkSyncTestnet"]}
@@ -1,9 +1,9 @@
1
1
  import {
2
- BaseError,
2
+ UrlRequiredError,
3
3
  buildRequest,
4
4
  getSocket,
5
5
  rpc
6
- } from "./chunk-3EOU525X.js";
6
+ } from "./chunk-62VTYU2V.mjs";
7
7
 
8
8
  // src/clients/transports/createTransport.ts
9
9
  function createTransport(config, value) {
@@ -13,18 +13,6 @@ function createTransport(config, value) {
13
13
  };
14
14
  }
15
15
 
16
- // src/clients/transports/errors.ts
17
- var UrlRequiredError = class extends BaseError {
18
- constructor() {
19
- super(
20
- "No URL was provided to the Transport. Please provide a valid RPC URL to the Transport.",
21
- {
22
- docsPath: "/TODO"
23
- }
24
- );
25
- }
26
- };
27
-
28
16
  // src/clients/transports/custom.ts
29
17
  function custom(provider, { key = "custom", name = "Custom Provider" } = {}) {
30
18
  return () => createTransport({
@@ -259,7 +247,6 @@ function createWalletClient({
259
247
 
260
248
  export {
261
249
  createTransport,
262
- UrlRequiredError,
263
250
  custom,
264
251
  fallback,
265
252
  http,
@@ -269,3 +256,4 @@ export {
269
256
  createTestClient,
270
257
  createWalletClient
271
258
  };
259
+ //# sourceMappingURL=chunk-46BO7YAQ.mjs.map
@@ -0,0 +1 @@
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"],"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 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 (i < transports.length - 1) 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"],"mappings":"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","names":[]}