viem 0.0.0-w-20230725184008 → 0.0.0-w-20230810155401

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 (438) hide show
  1. package/README.md +6 -0
  2. package/chains/utils/package.json +5 -0
  3. package/dist/cjs/accounts/index.js +6 -2
  4. package/dist/cjs/accounts/index.js.map +1 -1
  5. package/dist/cjs/accounts/utils/privateKeyToAddress.js +12 -0
  6. package/dist/cjs/accounts/utils/privateKeyToAddress.js.map +1 -0
  7. package/dist/cjs/accounts/utils/signMessage.js +1 -1
  8. package/dist/cjs/accounts/utils/signMessage.js.map +1 -1
  9. package/dist/cjs/accounts/utils/signTransaction.js.map +1 -1
  10. package/dist/cjs/accounts/utils/signTypedData.js +1 -1
  11. package/dist/cjs/accounts/utils/signTypedData.js.map +1 -1
  12. package/dist/cjs/actions/ens/getEnsAddress.js +18 -13
  13. package/dist/cjs/actions/ens/getEnsAddress.js.map +1 -1
  14. package/dist/cjs/actions/index.js.map +1 -1
  15. package/dist/cjs/actions/public/createContractEventFilter.js.map +1 -1
  16. package/dist/cjs/actions/public/createEventFilter.js +16 -8
  17. package/dist/cjs/actions/public/createEventFilter.js.map +1 -1
  18. package/dist/cjs/actions/public/estimateContractGas.js +1 -1
  19. package/dist/cjs/actions/public/estimateContractGas.js.map +1 -1
  20. package/dist/cjs/actions/public/estimateGas.js +3 -1
  21. package/dist/cjs/actions/public/estimateGas.js.map +1 -1
  22. package/dist/cjs/actions/public/getBlock.js +3 -1
  23. package/dist/cjs/actions/public/getBlock.js.map +1 -1
  24. package/dist/cjs/actions/public/getBlockNumber.js +2 -2
  25. package/dist/cjs/actions/public/getBlockNumber.js.map +1 -1
  26. package/dist/cjs/actions/public/getFilterChanges.js.map +1 -1
  27. package/dist/cjs/actions/public/getFilterLogs.js +1 -1
  28. package/dist/cjs/actions/public/getFilterLogs.js.map +1 -1
  29. package/dist/cjs/actions/public/getLogs.js +16 -10
  30. package/dist/cjs/actions/public/getLogs.js.map +1 -1
  31. package/dist/cjs/actions/public/getTransaction.js +2 -1
  32. package/dist/cjs/actions/public/getTransaction.js.map +1 -1
  33. package/dist/cjs/actions/public/watchBlockNumber.js +1 -1
  34. package/dist/cjs/actions/public/watchBlockNumber.js.map +1 -1
  35. package/dist/cjs/actions/public/watchBlocks.js +2 -1
  36. package/dist/cjs/actions/public/watchBlocks.js.map +1 -1
  37. package/dist/cjs/actions/public/watchContractEvent.js +135 -65
  38. package/dist/cjs/actions/public/watchContractEvent.js.map +1 -1
  39. package/dist/cjs/actions/public/watchEvent.js +138 -59
  40. package/dist/cjs/actions/public/watchEvent.js.map +1 -1
  41. package/dist/cjs/actions/wallet/sendTransaction.js.map +1 -1
  42. package/dist/cjs/actions/wallet/writeContract.js.map +1 -1
  43. package/dist/cjs/chains/{formatters/celo.js → celo/formatters.js} +1 -1
  44. package/dist/cjs/chains/celo/formatters.js.map +1 -0
  45. package/dist/cjs/chains/{serializers/celo.js → celo/serializers.js} +1 -1
  46. package/dist/cjs/chains/celo/serializers.js.map +1 -0
  47. package/dist/cjs/{types/formatter.js → chains/celo/types.js} +1 -1
  48. package/dist/cjs/chains/celo/types.js.map +1 -0
  49. package/dist/cjs/chains/index.js +30 -15
  50. package/dist/cjs/chains/index.js.map +1 -1
  51. package/dist/cjs/chains/optimism/fees.js +7 -0
  52. package/dist/cjs/chains/optimism/fees.js.map +1 -0
  53. package/dist/cjs/chains/{formatters/optimism.js → optimism/formatters.js} +13 -1
  54. package/dist/cjs/chains/optimism/formatters.js.map +1 -0
  55. package/dist/cjs/{types/serializer.js → chains/optimism/types.js} +1 -1
  56. package/dist/cjs/chains/optimism/types.js.map +1 -0
  57. package/dist/cjs/chains/utils.js +11 -0
  58. package/dist/cjs/chains/utils.js.map +1 -0
  59. package/dist/cjs/clients/createClient.js +2 -1
  60. package/dist/cjs/clients/createClient.js.map +1 -1
  61. package/dist/cjs/clients/createPublicClient.js.map +1 -1
  62. package/dist/cjs/clients/createTestClient.js.map +1 -1
  63. package/dist/cjs/clients/createWalletClient.js.map +1 -1
  64. package/dist/cjs/clients/decorators/public.js.map +1 -1
  65. package/dist/cjs/constants/abis.js +12 -2
  66. package/dist/cjs/constants/abis.js.map +1 -1
  67. package/dist/cjs/constants/number.js +101 -0
  68. package/dist/cjs/constants/number.js.map +1 -0
  69. package/dist/cjs/contract.js.map +1 -1
  70. package/dist/cjs/errors/abi.js +8 -1
  71. package/dist/cjs/errors/abi.js.map +1 -1
  72. package/dist/cjs/errors/contract.js +56 -32
  73. package/dist/cjs/errors/contract.js.map +1 -1
  74. package/dist/cjs/errors/node.js +1 -1
  75. package/dist/cjs/errors/node.js.map +1 -1
  76. package/dist/cjs/errors/version.js +1 -1
  77. package/dist/cjs/errors/version.js.map +1 -1
  78. package/dist/cjs/index.js +110 -7
  79. package/dist/cjs/index.js.map +1 -1
  80. package/dist/cjs/public.js.map +1 -1
  81. package/dist/cjs/utils/abi/encodeAbiParameters.js +11 -14
  82. package/dist/cjs/utils/abi/encodeAbiParameters.js.map +1 -1
  83. package/dist/cjs/utils/abi/encodePacked.js +2 -0
  84. package/dist/cjs/utils/abi/encodePacked.js.map +1 -1
  85. package/dist/cjs/utils/chain.js +5 -3
  86. package/dist/cjs/utils/chain.js.map +1 -1
  87. package/dist/cjs/utils/formatters/block.js.map +1 -1
  88. package/dist/cjs/utils/formatters/extract.js.map +1 -1
  89. package/dist/cjs/utils/formatters/formatter.js +1 -0
  90. package/dist/cjs/utils/formatters/formatter.js.map +1 -1
  91. package/dist/cjs/utils/formatters/transaction.js.map +1 -1
  92. package/dist/cjs/utils/formatters/transactionReceipt.js.map +1 -1
  93. package/dist/cjs/utils/formatters/transactionRequest.js.map +1 -1
  94. package/dist/cjs/utils/hash/hashFunction.js +3 -2
  95. package/dist/cjs/utils/hash/hashFunction.js.map +1 -1
  96. package/dist/cjs/utils/promise/withCache.js +3 -3
  97. package/dist/cjs/utils/promise/withCache.js.map +1 -1
  98. package/dist/cjs/utils/signature/hexToSignature.js +12 -0
  99. package/dist/cjs/utils/signature/hexToSignature.js.map +1 -0
  100. package/dist/cjs/utils/signature/signatureToHex.js.map +1 -0
  101. package/dist/cjs/utils/transaction/prepareRequest.js +19 -12
  102. package/dist/cjs/utils/transaction/prepareRequest.js.map +1 -1
  103. package/dist/cjs/utils/unit/parseUnits.js +2 -1
  104. package/dist/cjs/utils/unit/parseUnits.js.map +1 -1
  105. package/dist/esm/accounts/index.js +3 -1
  106. package/dist/esm/accounts/index.js.map +1 -1
  107. package/dist/esm/accounts/utils/privateKeyToAddress.js +15 -0
  108. package/dist/esm/accounts/utils/privateKeyToAddress.js.map +1 -0
  109. package/dist/esm/accounts/utils/signMessage.js +1 -1
  110. package/dist/esm/accounts/utils/signMessage.js.map +1 -1
  111. package/dist/esm/accounts/utils/signTransaction.js.map +1 -1
  112. package/dist/esm/accounts/utils/signTypedData.js +1 -1
  113. package/dist/esm/accounts/utils/signTypedData.js.map +1 -1
  114. package/dist/esm/actions/ens/getEnsAddress.js +19 -14
  115. package/dist/esm/actions/ens/getEnsAddress.js.map +1 -1
  116. package/dist/esm/actions/index.js.map +1 -1
  117. package/dist/esm/actions/public/createContractEventFilter.js.map +1 -1
  118. package/dist/esm/actions/public/createEventFilter.js +16 -8
  119. package/dist/esm/actions/public/createEventFilter.js.map +1 -1
  120. package/dist/esm/actions/public/estimateContractGas.js +1 -1
  121. package/dist/esm/actions/public/estimateContractGas.js.map +1 -1
  122. package/dist/esm/actions/public/estimateGas.js +4 -2
  123. package/dist/esm/actions/public/estimateGas.js.map +1 -1
  124. package/dist/esm/actions/public/getBlock.js +3 -1
  125. package/dist/esm/actions/public/getBlock.js.map +1 -1
  126. package/dist/esm/actions/public/getBlockNumber.js +2 -2
  127. package/dist/esm/actions/public/getBlockNumber.js.map +1 -1
  128. package/dist/esm/actions/public/getFilterChanges.js.map +1 -1
  129. package/dist/esm/actions/public/getFilterLogs.js +1 -1
  130. package/dist/esm/actions/public/getFilterLogs.js.map +1 -1
  131. package/dist/esm/actions/public/getLogs.js +16 -10
  132. package/dist/esm/actions/public/getLogs.js.map +1 -1
  133. package/dist/esm/actions/public/getTransaction.js +2 -1
  134. package/dist/esm/actions/public/getTransaction.js.map +1 -1
  135. package/dist/esm/actions/public/watchBlockNumber.js +1 -1
  136. package/dist/esm/actions/public/watchBlockNumber.js.map +1 -1
  137. package/dist/esm/actions/public/watchBlocks.js +2 -1
  138. package/dist/esm/actions/public/watchBlocks.js.map +1 -1
  139. package/dist/esm/actions/public/watchContractEvent.js +145 -71
  140. package/dist/esm/actions/public/watchContractEvent.js.map +1 -1
  141. package/dist/esm/actions/public/watchEvent.js +148 -65
  142. package/dist/esm/actions/public/watchEvent.js.map +1 -1
  143. package/dist/esm/actions/wallet/sendTransaction.js +1 -1
  144. package/dist/esm/actions/wallet/sendTransaction.js.map +1 -1
  145. package/dist/esm/actions/wallet/writeContract.js.map +1 -1
  146. package/dist/esm/chains/{formatters/celo.js → celo/formatters.js} +2 -2
  147. package/dist/esm/chains/celo/formatters.js.map +1 -0
  148. package/dist/esm/chains/{serializers/celo.js → celo/serializers.js} +1 -1
  149. package/dist/esm/chains/celo/serializers.js.map +1 -0
  150. package/dist/esm/chains/celo/types.js +2 -0
  151. package/dist/esm/chains/celo/types.js.map +1 -0
  152. package/dist/esm/chains/index.js +22 -7
  153. package/dist/esm/chains/index.js.map +1 -1
  154. package/dist/esm/chains/optimism/fees.js +4 -0
  155. package/dist/esm/chains/optimism/fees.js.map +1 -0
  156. package/dist/esm/chains/{formatters/optimism.js → optimism/formatters.js} +15 -2
  157. package/dist/esm/chains/optimism/formatters.js.map +1 -0
  158. package/dist/esm/chains/optimism/types.js +2 -0
  159. package/dist/esm/chains/optimism/types.js.map +1 -0
  160. package/dist/esm/chains/utils.js +4 -0
  161. package/dist/esm/chains/utils.js.map +1 -0
  162. package/dist/esm/clients/createClient.js +2 -1
  163. package/dist/esm/clients/createClient.js.map +1 -1
  164. package/dist/esm/clients/createPublicClient.js.map +1 -1
  165. package/dist/esm/clients/createTestClient.js.map +1 -1
  166. package/dist/esm/clients/createWalletClient.js.map +1 -1
  167. package/dist/esm/clients/decorators/public.js.map +1 -1
  168. package/dist/esm/constants/abis.js +11 -1
  169. package/dist/esm/constants/abis.js.map +1 -1
  170. package/dist/esm/constants/number.js +97 -0
  171. package/dist/esm/constants/number.js.map +1 -0
  172. package/dist/esm/contract.js.map +1 -1
  173. package/dist/esm/errors/abi.js +8 -1
  174. package/dist/esm/errors/abi.js.map +1 -1
  175. package/dist/esm/errors/contract.js +56 -32
  176. package/dist/esm/errors/contract.js.map +1 -1
  177. package/dist/esm/errors/node.js +1 -1
  178. package/dist/esm/errors/node.js.map +1 -1
  179. package/dist/esm/errors/version.js +1 -1
  180. package/dist/esm/errors/version.js.map +1 -1
  181. package/dist/esm/index.js +4 -1
  182. package/dist/esm/index.js.map +1 -1
  183. package/dist/esm/public.js.map +1 -1
  184. package/dist/esm/utils/abi/encodeAbiParameters.js +13 -14
  185. package/dist/esm/utils/abi/encodeAbiParameters.js.map +1 -1
  186. package/dist/esm/utils/abi/encodePacked.js +2 -0
  187. package/dist/esm/utils/abi/encodePacked.js.map +1 -1
  188. package/dist/esm/utils/chain.js +5 -3
  189. package/dist/esm/utils/chain.js.map +1 -1
  190. package/dist/esm/utils/formatters/block.js.map +1 -1
  191. package/dist/esm/utils/formatters/extract.js.map +1 -1
  192. package/dist/esm/utils/formatters/formatter.js +1 -0
  193. package/dist/esm/utils/formatters/formatter.js.map +1 -1
  194. package/dist/esm/utils/formatters/transaction.js.map +1 -1
  195. package/dist/esm/utils/formatters/transactionReceipt.js.map +1 -1
  196. package/dist/esm/utils/formatters/transactionRequest.js.map +1 -1
  197. package/dist/esm/utils/hash/hashFunction.js +3 -2
  198. package/dist/esm/utils/hash/hashFunction.js.map +1 -1
  199. package/dist/esm/utils/promise/withCache.js +3 -3
  200. package/dist/esm/utils/promise/withCache.js.map +1 -1
  201. package/dist/esm/utils/signature/hexToSignature.js +18 -0
  202. package/dist/esm/utils/signature/hexToSignature.js.map +1 -0
  203. package/dist/esm/utils/signature/signatureToHex.js +21 -0
  204. package/dist/esm/utils/signature/signatureToHex.js.map +1 -0
  205. package/dist/esm/utils/transaction/prepareRequest.js +20 -13
  206. package/dist/esm/utils/transaction/prepareRequest.js.map +1 -1
  207. package/dist/esm/utils/unit/parseUnits.js +2 -1
  208. package/dist/esm/utils/unit/parseUnits.js.map +1 -1
  209. package/dist/types/accounts/index.d.ts +3 -1
  210. package/dist/types/accounts/index.d.ts.map +1 -1
  211. package/dist/types/accounts/utils/privateKeyToAddress.d.ts +11 -0
  212. package/dist/types/accounts/utils/privateKeyToAddress.d.ts.map +1 -0
  213. package/dist/types/accounts/utils/signTransaction.d.ts +2 -2
  214. package/dist/types/accounts/utils/signTransaction.d.ts.map +1 -1
  215. package/dist/types/actions/ens/getEnsAddress.d.ts +3 -1
  216. package/dist/types/actions/ens/getEnsAddress.d.ts.map +1 -1
  217. package/dist/types/actions/index.d.ts +5 -1
  218. package/dist/types/actions/index.d.ts.map +1 -1
  219. package/dist/types/actions/public/createContractEventFilter.d.ts +5 -5
  220. package/dist/types/actions/public/createContractEventFilter.d.ts.map +1 -1
  221. package/dist/types/actions/public/createEventFilter.d.ts +20 -7
  222. package/dist/types/actions/public/createEventFilter.d.ts.map +1 -1
  223. package/dist/types/actions/public/estimateGas.d.ts.map +1 -1
  224. package/dist/types/actions/public/getBlock.d.ts +5 -5
  225. package/dist/types/actions/public/getBlock.d.ts.map +1 -1
  226. package/dist/types/actions/public/getBlockNumber.d.ts +4 -2
  227. package/dist/types/actions/public/getBlockNumber.d.ts.map +1 -1
  228. package/dist/types/actions/public/getFilterChanges.d.ts +5 -8
  229. package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
  230. package/dist/types/actions/public/getFilterLogs.d.ts +5 -4
  231. package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
  232. package/dist/types/actions/public/getLogs.d.ts +17 -6
  233. package/dist/types/actions/public/getLogs.d.ts.map +1 -1
  234. package/dist/types/actions/public/getTransaction.d.ts +4 -4
  235. package/dist/types/actions/public/getTransaction.d.ts.map +1 -1
  236. package/dist/types/actions/public/getTransactionReceipt.d.ts +1 -1
  237. package/dist/types/actions/public/getTransactionReceipt.d.ts.map +1 -1
  238. package/dist/types/actions/public/simulateContract.d.ts +2 -2
  239. package/dist/types/actions/public/simulateContract.d.ts.map +1 -1
  240. package/dist/types/actions/public/watchBlocks.d.ts +10 -10
  241. package/dist/types/actions/public/watchBlocks.d.ts.map +1 -1
  242. package/dist/types/actions/public/watchContractEvent.d.ts +35 -9
  243. package/dist/types/actions/public/watchContractEvent.d.ts.map +1 -1
  244. package/dist/types/actions/public/watchEvent.d.ts +48 -14
  245. package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
  246. package/dist/types/actions/wallet/deployContract.d.ts +1 -1
  247. package/dist/types/actions/wallet/deployContract.d.ts.map +1 -1
  248. package/dist/types/actions/wallet/sendTransaction.d.ts +2 -2
  249. package/dist/types/actions/wallet/sendTransaction.d.ts.map +1 -1
  250. package/dist/types/actions/wallet/writeContract.d.ts +4 -2
  251. package/dist/types/actions/wallet/writeContract.d.ts.map +1 -1
  252. package/dist/types/chains/{formatters/celo.d.ts → celo/formatters.d.ts} +30 -85
  253. package/dist/types/chains/celo/formatters.d.ts.map +1 -0
  254. package/dist/types/chains/{serializers/celo.d.ts → celo/serializers.d.ts} +4 -4
  255. package/dist/types/chains/celo/serializers.d.ts.map +1 -0
  256. package/dist/types/chains/celo/types.d.ts +60 -0
  257. package/dist/types/chains/celo/types.d.ts.map +1 -0
  258. package/dist/types/chains/index.d.ts +2527 -2722
  259. package/dist/types/chains/index.d.ts.map +1 -1
  260. package/dist/types/chains/optimism/fees.d.ts +4 -0
  261. package/dist/types/chains/optimism/fees.d.ts.map +1 -0
  262. package/dist/types/chains/{formatters/optimism.d.ts → optimism/formatters.d.ts} +79 -54
  263. package/dist/types/chains/optimism/formatters.d.ts.map +1 -0
  264. package/dist/types/chains/optimism/types.d.ts +53 -0
  265. package/dist/types/chains/optimism/types.d.ts.map +1 -0
  266. package/dist/types/chains/utils.d.ts +6 -0
  267. package/dist/types/chains/utils.d.ts.map +1 -0
  268. package/dist/types/clients/createClient.d.ts +7 -0
  269. package/dist/types/clients/createClient.d.ts.map +1 -1
  270. package/dist/types/clients/createPublicClient.d.ts +1 -1
  271. package/dist/types/clients/createPublicClient.d.ts.map +1 -1
  272. package/dist/types/clients/createTestClient.d.ts +1 -1
  273. package/dist/types/clients/createTestClient.d.ts.map +1 -1
  274. package/dist/types/clients/createWalletClient.d.ts +1 -1
  275. package/dist/types/clients/createWalletClient.d.ts.map +1 -1
  276. package/dist/types/clients/decorators/public.d.ts +11 -10
  277. package/dist/types/clients/decorators/public.d.ts.map +1 -1
  278. package/dist/types/constants/abis.d.ts +16 -1
  279. package/dist/types/constants/abis.d.ts.map +1 -1
  280. package/dist/types/constants/number.d.ts +97 -0
  281. package/dist/types/constants/number.d.ts.map +1 -0
  282. package/dist/types/contract.d.ts +5 -1
  283. package/dist/types/contract.d.ts.map +1 -1
  284. package/dist/types/errors/abi.d.ts +1 -0
  285. package/dist/types/errors/abi.d.ts.map +1 -1
  286. package/dist/types/errors/contract.d.ts +1 -0
  287. package/dist/types/errors/contract.d.ts.map +1 -1
  288. package/dist/types/errors/node.d.ts.map +1 -1
  289. package/dist/types/errors/version.d.ts +1 -1
  290. package/dist/types/errors/version.d.ts.map +1 -1
  291. package/dist/types/index.d.ts +24 -6
  292. package/dist/types/index.d.ts.map +1 -1
  293. package/dist/types/public.d.ts +5 -1
  294. package/dist/types/public.d.ts.map +1 -1
  295. package/dist/types/types/block.d.ts +7 -7
  296. package/dist/types/types/block.d.ts.map +1 -1
  297. package/dist/types/types/chain.d.ts +52 -8
  298. package/dist/types/types/chain.d.ts.map +1 -1
  299. package/dist/types/types/contract.d.ts +1 -1
  300. package/dist/types/types/contract.d.ts.map +1 -1
  301. package/dist/types/types/filter.d.ts +7 -3
  302. package/dist/types/types/filter.d.ts.map +1 -1
  303. package/dist/types/types/log.d.ts +8 -8
  304. package/dist/types/types/log.d.ts.map +1 -1
  305. package/dist/types/types/misc.d.ts.map +1 -1
  306. package/dist/types/types/rpc.d.ts +3 -3
  307. package/dist/types/types/rpc.d.ts.map +1 -1
  308. package/dist/types/types/transaction.d.ts +8 -8
  309. package/dist/types/types/transaction.d.ts.map +1 -1
  310. package/dist/types/types/utils.d.ts +10 -0
  311. package/dist/types/types/utils.d.ts.map +1 -1
  312. package/dist/types/utils/abi/encodeAbiParameters.d.ts.map +1 -1
  313. package/dist/types/utils/chain.d.ts +3 -6
  314. package/dist/types/utils/chain.d.ts.map +1 -1
  315. package/dist/types/utils/formatters/block.d.ts +18 -4
  316. package/dist/types/utils/formatters/block.d.ts.map +1 -1
  317. package/dist/types/utils/formatters/extract.d.ts +2 -2
  318. package/dist/types/utils/formatters/extract.d.ts.map +1 -1
  319. package/dist/types/utils/formatters/formatter.d.ts +2 -1
  320. package/dist/types/utils/formatters/formatter.d.ts.map +1 -1
  321. package/dist/types/utils/formatters/transaction.d.ts +15 -4
  322. package/dist/types/utils/formatters/transaction.d.ts.map +1 -1
  323. package/dist/types/utils/formatters/transactionReceipt.d.ts +4 -4
  324. package/dist/types/utils/formatters/transactionReceipt.d.ts.map +1 -1
  325. package/dist/types/utils/formatters/transactionRequest.d.ts +5 -5
  326. package/dist/types/utils/formatters/transactionRequest.d.ts.map +1 -1
  327. package/dist/types/utils/hash/hashFunction.d.ts +1 -1
  328. package/dist/types/utils/hash/hashFunction.d.ts.map +1 -1
  329. package/dist/types/utils/promise/withCache.d.ts +3 -3
  330. package/dist/types/utils/promise/withCache.d.ts.map +1 -1
  331. package/dist/types/utils/signature/hexToSignature.d.ts +13 -0
  332. package/dist/types/utils/signature/hexToSignature.d.ts.map +1 -0
  333. package/dist/types/utils/signature/signatureToHex.d.ts +17 -0
  334. package/dist/types/utils/signature/signatureToHex.d.ts.map +1 -0
  335. package/dist/types/utils/transaction/prepareRequest.d.ts +6 -11
  336. package/dist/types/utils/transaction/prepareRequest.d.ts.map +1 -1
  337. package/dist/types/utils/unit/parseUnits.d.ts.map +1 -1
  338. package/package.json +9 -2
  339. package/src/accounts/index.ts +7 -1
  340. package/src/accounts/utils/privateKeyToAddress.ts +20 -0
  341. package/src/accounts/utils/signMessage.ts +1 -1
  342. package/src/accounts/utils/signTransaction.ts +2 -2
  343. package/src/accounts/utils/signTypedData.ts +1 -1
  344. package/src/actions/ens/getEnsAddress.ts +24 -15
  345. package/src/actions/index.ts +6 -2
  346. package/src/actions/public/createContractEventFilter.ts +30 -7
  347. package/src/actions/public/createEventFilter.ts +78 -24
  348. package/src/actions/public/estimateContractGas.ts +1 -1
  349. package/src/actions/public/estimateGas.ts +11 -2
  350. package/src/actions/public/getBlock.ts +18 -8
  351. package/src/actions/public/getBlockNumber.ts +5 -3
  352. package/src/actions/public/getFilterChanges.ts +46 -10
  353. package/src/actions/public/getFilterLogs.ts +26 -10
  354. package/src/actions/public/getLogs.ts +73 -18
  355. package/src/actions/public/getTransaction.ts +15 -8
  356. package/src/actions/public/simulateContract.ts +2 -2
  357. package/src/actions/public/watchBlockNumber.ts +1 -1
  358. package/src/actions/public/watchBlocks.ts +37 -18
  359. package/src/actions/public/watchContractEvent.ts +208 -90
  360. package/src/actions/public/watchEvent.ts +262 -104
  361. package/src/actions/wallet/deployContract.ts +1 -1
  362. package/src/actions/wallet/sendTransaction.ts +9 -6
  363. package/src/actions/wallet/writeContract.ts +11 -7
  364. package/src/chains/{formatters/celo.ts → celo/formatters.ts} +29 -48
  365. package/src/chains/{serializers/celo.ts → celo/serializers.ts} +5 -5
  366. package/src/chains/celo/types.ts +111 -0
  367. package/src/chains/index.ts +22 -7
  368. package/src/chains/optimism/fees.ts +5 -0
  369. package/src/chains/optimism/formatters.ts +74 -0
  370. package/src/chains/optimism/types.ts +102 -0
  371. package/src/chains/utils.ts +41 -0
  372. package/src/clients/createClient.ts +9 -0
  373. package/src/clients/createPublicClient.ts +7 -1
  374. package/src/clients/createTestClient.ts +7 -1
  375. package/src/clients/createWalletClient.ts +7 -1
  376. package/src/clients/decorators/public.ts +117 -28
  377. package/src/constants/abis.ts +11 -1
  378. package/src/constants/number.ts +98 -0
  379. package/src/contract.ts +6 -2
  380. package/src/errors/abi.ts +5 -1
  381. package/src/errors/contract.ts +52 -31
  382. package/src/errors/node.ts +2 -1
  383. package/src/errors/version.ts +1 -1
  384. package/src/index.ts +133 -11
  385. package/src/public.ts +6 -2
  386. package/src/types/block.ts +25 -10
  387. package/src/types/chain.ts +91 -14
  388. package/src/types/contract.ts +7 -3
  389. package/src/types/filter.ts +32 -26
  390. package/src/types/log.ts +13 -8
  391. package/src/types/misc.ts +3 -0
  392. package/src/types/rpc.ts +16 -6
  393. package/src/types/transaction.ts +22 -11
  394. package/src/types/utils.ts +11 -0
  395. package/src/utils/abi/encodeAbiParameters.ts +14 -17
  396. package/src/utils/abi/encodePacked.ts +1 -0
  397. package/src/utils/chain.ts +21 -10
  398. package/src/utils/formatters/block.ts +34 -5
  399. package/src/utils/formatters/extract.ts +2 -2
  400. package/src/utils/formatters/formatter.ts +3 -2
  401. package/src/utils/formatters/transaction.ts +28 -3
  402. package/src/utils/formatters/transactionReceipt.ts +9 -3
  403. package/src/utils/formatters/transactionRequest.ts +9 -3
  404. package/src/utils/hash/hashFunction.ts +3 -2
  405. package/src/utils/promise/withCache.ts +5 -5
  406. package/src/utils/signature/hexToSignature.ts +20 -0
  407. package/src/utils/signature/signatureToHex.ts +26 -0
  408. package/src/utils/transaction/prepareRequest.ts +55 -30
  409. package/src/utils/unit/parseUnits.ts +2 -1
  410. package/dist/cjs/accounts/utils/signatureToHex.js.map +0 -1
  411. package/dist/cjs/chains/formatters/celo.js.map +0 -1
  412. package/dist/cjs/chains/formatters/optimism.js.map +0 -1
  413. package/dist/cjs/chains/serializers/celo.js.map +0 -1
  414. package/dist/cjs/types/formatter.js.map +0 -1
  415. package/dist/cjs/types/serializer.js.map +0 -1
  416. package/dist/esm/accounts/utils/signatureToHex.js +0 -7
  417. package/dist/esm/accounts/utils/signatureToHex.js.map +0 -1
  418. package/dist/esm/chains/formatters/celo.js.map +0 -1
  419. package/dist/esm/chains/formatters/optimism.js.map +0 -1
  420. package/dist/esm/chains/serializers/celo.js.map +0 -1
  421. package/dist/esm/types/formatter.js +0 -2
  422. package/dist/esm/types/formatter.js.map +0 -1
  423. package/dist/esm/types/serializer.js +0 -2
  424. package/dist/esm/types/serializer.js.map +0 -1
  425. package/dist/types/accounts/utils/signatureToHex.d.ts +0 -3
  426. package/dist/types/accounts/utils/signatureToHex.d.ts.map +0 -1
  427. package/dist/types/chains/formatters/celo.d.ts.map +0 -1
  428. package/dist/types/chains/formatters/optimism.d.ts.map +0 -1
  429. package/dist/types/chains/serializers/celo.d.ts.map +0 -1
  430. package/dist/types/types/formatter.d.ts +0 -14
  431. package/dist/types/types/formatter.d.ts.map +0 -1
  432. package/dist/types/types/serializer.d.ts +0 -7
  433. package/dist/types/types/serializer.d.ts.map +0 -1
  434. package/src/accounts/utils/signatureToHex.ts +0 -12
  435. package/src/chains/formatters/optimism.ts +0 -91
  436. package/src/types/formatter.ts +0 -33
  437. package/src/types/serializer.ts +0 -19
  438. /package/dist/cjs/{accounts/utils → utils/signature}/signatureToHex.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"celo.d.ts","sourceRoot":"","sources":["../../../../src/chains/formatters/celo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtC,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAW7D,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE;QACR,UAAU,EAAE;YACV,SAAS,EAAE,GAAG,CAAA;YACd,QAAQ,EAAE,GAAG,CAAA;SACd,CAAA;QACD,YAAY,EACR,IAAI,EAAE,GACN,CAAC,cAAc,GAAG;YAChB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;YAC3B,UAAU,EAAE,GAAG,GAAG,IAAI,CAAA;YACtB,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAA;SACpC,CAAC,EAAE,CAAA;KACT,CAAA;IACD,cAAc,EAAE;QACd,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;QAC3B,UAAU,EAAE,GAAG,GAAG,IAAI,CAAA;QACtB,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAA;KACpC,CAAA;IACD,qBAAqB,EAAE;QACrB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;QAC3B,UAAU,EAAE,GAAG,GAAG,IAAI,CAAA;QACtB,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAA;KACpC,CAAA;IACD,kBAAkB,EAAE;QAClB,WAAW,CAAC,EAAE,OAAO,CAAA;QACrB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAC9B,CAAA;IACD,WAAW,EAAE;QACX,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;QAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;QACzB,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAA;KACpC,CAAA;CACF,CAAA;AAED,eAAO,MAAM,cAAc;;;wBAlCX;gBACV,SAAS,EAAE,GAAG,CAAA;gBACd,QAAQ,EAAE,GAAG,CAAA;aACd;0BAEG,IAAI,EAAE,GACN,CAAC,cAAc,GAAG;gBAChB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAA;gBAC3B,UAAU,EAAE,GAAG,GAAG,IAAI,CAAA;gBACtB,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAA;aACpC,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;6BAkBK,OAAO,GAAG,IAAI;4BACf,MAAM,GAAG,IAAI;qCACJ,OAAO,GAAG,IAAI;;;;;2BA7BtB,GAAG;0BACJ,GAAG;;;;;;;;;;;;;yBAWF,OAAO,GAAG,IAAI;wBACf,GAAG,GAAG,IAAI;iCACD,OAAO,GAAG,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAGtB,OAAO,GAAG,IAAI;wBACf,GAAG,GAAG,IAAI;iCACD,OAAO,GAAG,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiER,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"optimism.d.ts","sourceRoot":"","sources":["../../../../src/chains/formatters/optimism.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,OAAO,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,KAAK,EACV,KAAK,EACL,QAAQ,EACR,cAAc,IAAI,eAAe,EAClC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EACV,WAAW,IAAI,YAAY,EAC3B,eAAe,EAChB,MAAM,4BAA4B,CAAA;AAQnC,KAAK,cAAc,GAAG,eAAe,GAAG;IACtC,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,UAAU,CAAC,EAAE,SAAS,CAAA;CACvB,CAAA;AAED,KAAK,WAAW,GAAG,YAAY,GAAG;IAChC,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,UAAU,CAAC,EAAE,SAAS,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,GAClE,gBAAgB,CAAC,QAAQ,CAAC,GAAG;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,UAAU,EAAE,GAAG,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAEH,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAC9C,gBAAgB,GAAG;IACjB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,GAAG,CAAA;IACf,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAEH,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,EAAE;QACR,YAAY,EAAE,IAAI,EAAE,GAAG,uBAAuB,CAAC,gBAAgB,CAAC,EAAE,CAAA;KACnE,CAAA;IACD,cAAc,EAAE,cAAc,GAAG,qBAAqB,CAAA;IACtD,WAAW,EAAE,WAAW,GAAG,kBAAkB,CAAA;CAC9C,CAAA;AAED,eAAO,MAAM,kBAAkB;;;0BANb,IAAI,EAAE,GAAG,uBAAuB,CAAC,gBAAgB,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA7BvD,SAAS;mBACf,SAAS;yBACH,SAAS;;yBAFT,SAAS;mBACf,SAAS;yBACH,SAAS;;yBAFT,SAAS;mBACf,SAAS;yBACH,SAAS;;;;;;;;;;;;;;;;;;;;;;yBAIT,SAAS;mBACf,SAAS;yBACH,SAAS;;;;;;;;;;;;;;;;;;;;;kBAgBd,SAAS;;;wBADH,GAAG;;;;;;;;;;;;;;;;;;;;;;yBAjBJ,SAAS;mBACf,SAAS;yBACH,SAAS;;;;;;;;;;;;;;;;;;;;;;yBAFT,SAAS;mBACf,SAAS;yBACH,SAAS;;;;;;;;;;;;;;;;;;;;;kBAgBd,SAAS;;;wBADH,GAAG;;;;;;;;;;;;;;;;;;;;;;yBAjBJ,SAAS;mBACf,SAAS;yBACH,SAAS;;;;;;;;;;;;;;;;;;;;;;yBAFT,SAAS;mBACf,SAAS;yBACH,SAAS;;;;;;;;;;;;;;;;;;;;;kBAgBd,SAAS;;;wBADH,GAAG;;;;CA+CY,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"celo.d.ts","sourceRoot":"","sources":["../../../../src/chains/serializers/celo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAMtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAG1D,OAAO,KAAK,EACV,UAAU,EACV,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,4BAA4B,CAAA;AAOnC,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,iDAAiD,CAAA;AAExD,eAAO,MAAM,wBAAwB,EAAE,sBAAsB,CAC3D,2BAA2B,CAW5B,CAAA;AAED,eAAO,MAAM,eAAe;;CAEI,CAAA;AAKhC,MAAM,MAAM,4BAA4B,CACtC,SAAS,GAAG,MAAM,EAClB,MAAM,GAAG,MAAM,IACb,2BAA2B,CAAC,SAAS,EAAE,MAAM,CAAC,GAChD,gBAAgB,CAAC,SAAS,CAAC,GAAG;IAC5B,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,QAAQ,CAAC,EAAE,KAAK,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,UAAU,CAAC,EAAE,SAAS,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,CAAA;AAEH,MAAM,MAAM,2BAA2B,GACnC,4BAA4B,GAC5B,uBAAuB,CAAA;AAE3B,MAAM,MAAM,oCAAoC,GAAG,OAAO,MAAM,EAAE,CAAA"}
@@ -1,14 +0,0 @@
1
- import type { Chain } from './chain.js';
2
- export type Formatter<TType extends string = string> = {
3
- format: (args: any) => any;
4
- type: TType;
5
- };
6
- export type Formatters = {
7
- block?: Formatter<'block'>;
8
- transaction?: Formatter<'transaction'>;
9
- transactionReceipt?: Formatter<'transactionReceipt'>;
10
- transactionRequest?: Formatter<'transactionRequest'>;
11
- };
12
- export type ExtractFormatterParameters<TChain extends Chain | undefined, TType extends keyof Formatters, TFallback> = TChain extends Chain<infer _Formatters extends Formatters> ? _Formatters[TType] extends Formatter ? Parameters<_Formatters[TType]['format']>[0] : TFallback : TFallback;
13
- export type ExtractFormatterReturnType<TChain extends Chain | undefined, TType extends keyof Formatters, TFallback> = TChain extends Chain<infer _Formatters extends Formatters> ? _Formatters[TType] extends Formatter ? ReturnType<_Formatters[TType]['format']> : TFallback : TFallback;
14
- //# sourceMappingURL=formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../../src/types/formatter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,IAAI;IACrD,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,GAAG,CAAA;IAC1B,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC1B,WAAW,CAAC,EAAE,SAAS,CAAC,aAAa,CAAC,CAAA;IACtC,kBAAkB,CAAC,EAAE,SAAS,CAAC,oBAAoB,CAAC,CAAA;IACpD,kBAAkB,CAAC,EAAE,SAAS,CAAC,oBAAoB,CAAC,CAAA;CACrD,CAAA;AAED,MAAM,MAAM,0BAA0B,CACpC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,KAAK,SAAS,MAAM,UAAU,EAC9B,SAAS,IACP,MAAM,SAAS,KAAK,CAAC,MAAM,WAAW,SAAS,UAAU,CAAC,GAC1D,WAAW,CAAC,KAAK,CAAC,SAAS,SAAS,GAClC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAC3C,SAAS,GACX,SAAS,CAAA;AAEb,MAAM,MAAM,0BAA0B,CACpC,MAAM,SAAS,KAAK,GAAG,SAAS,EAChC,KAAK,SAAS,MAAM,UAAU,EAC9B,SAAS,IACP,MAAM,SAAS,KAAK,CAAC,MAAM,WAAW,SAAS,UAAU,CAAC,GAC1D,WAAW,CAAC,KAAK,CAAC,SAAS,SAAS,GAClC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,GACxC,SAAS,GACX,SAAS,CAAA"}
@@ -1,7 +0,0 @@
1
- import type { TransactionSerializable, TransactionSerializableGeneric } from '../types/transaction.js';
2
- import type { SerializeTransactionFn } from '../utils/transaction/serializeTransaction.js';
3
- import type { Formatter, Formatters } from './formatter.js';
4
- export type Serializers<TFormatters extends Formatters | undefined = undefined> = {
5
- transaction?: SerializeTransactionFn<TFormatters extends Formatters ? TFormatters['transactionRequest'] extends Formatter ? TransactionSerializableGeneric & Parameters<TFormatters['transactionRequest']['format']>[0] : TransactionSerializable : TransactionSerializable>;
6
- };
7
- //# sourceMappingURL=serializer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"serializer.d.ts","sourceRoot":"","sources":["../../../src/types/serializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,8BAA8B,EAC/B,MAAM,yBAAyB,CAAA;AAChC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAA;AAC1F,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAE3D,MAAM,MAAM,WAAW,CACrB,WAAW,SAAS,UAAU,GAAG,SAAS,GAAG,SAAS,IACpD;IACF,WAAW,CAAC,EAAE,sBAAsB,CAClC,WAAW,SAAS,UAAU,GAC1B,WAAW,CAAC,oBAAoB,CAAC,SAAS,SAAS,GACjD,8BAA8B,GAC5B,UAAU,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAC5D,uBAAuB,GACzB,uBAAuB,CAC5B,CAAA;CACF,CAAA"}
@@ -1,12 +0,0 @@
1
- import { secp256k1 } from '@noble/curves/secp256k1'
2
-
3
- import type { Hex, Signature } from '../../types/misc.js'
4
- import { hexToBigInt } from '../../utils/encoding/fromHex.js'
5
- import { toHex } from '../../utils/encoding/toHex.js'
6
-
7
- export function signatureToHex({ r, s, v }: Signature): Hex {
8
- return `0x${new secp256k1.Signature(
9
- hexToBigInt(r),
10
- hexToBigInt(s),
11
- ).toCompactHex()}${toHex(v).slice(2)}`
12
- }
@@ -1,91 +0,0 @@
1
- import type { FeeValuesEIP1559 } from '../../types/fee.js'
2
- import { type Formatters } from '../../types/formatter.js'
3
- import type { Hash, Hex } from '../../types/misc.js'
4
- import type {
5
- Index,
6
- Quantity,
7
- RpcTransaction as RpcTransaction_,
8
- } from '../../types/rpc.js'
9
- import type {
10
- Transaction as Transaction_,
11
- TransactionBase,
12
- } from '../../types/transaction.js'
13
- import { hexToBigInt } from '../../utils/encoding/fromHex.js'
14
- import { defineBlock } from '../../utils/formatters/block.js'
15
- import {
16
- defineTransaction,
17
- formatTransaction,
18
- } from '../../utils/formatters/transaction.js'
19
-
20
- type RpcTransaction = RpcTransaction_ & {
21
- isSystemTx?: undefined
22
- mint?: undefined
23
- sourceHash?: undefined
24
- }
25
-
26
- type Transaction = Transaction_ & {
27
- isSystemTx?: undefined
28
- mint?: undefined
29
- sourceHash?: undefined
30
- }
31
-
32
- export type RpcDepositTransaction = TransactionBase<Quantity, Index> &
33
- FeeValuesEIP1559<Quantity> & {
34
- isSystemTx?: boolean
35
- mint?: Hex
36
- sourceHash: Hex
37
- type: '0x7e'
38
- }
39
-
40
- export type DepositTransaction = TransactionBase &
41
- FeeValuesEIP1559 & {
42
- isSystemTx?: boolean
43
- mint?: bigint
44
- sourceHash: Hex
45
- type: 'deposit'
46
- }
47
-
48
- export type OptimismFormatOverrides = {
49
- RpcBlock: {
50
- transactions: Hash[] | OptimismFormatOverrides['RpcTransaction'][]
51
- }
52
- RpcTransaction: RpcTransaction | RpcDepositTransaction
53
- Transaction: Transaction | DepositTransaction
54
- }
55
-
56
- export const formattersOptimism = {
57
- block: /*#__PURE__*/ defineBlock({
58
- format(args: OptimismFormatOverrides['RpcBlock']) {
59
- const transactions = args.transactions?.map((transaction) => {
60
- if (typeof transaction === 'string') return transaction
61
- const formatted = formatTransaction(
62
- transaction as RpcTransaction,
63
- ) as OptimismFormatOverrides['Transaction']
64
- if (formatted.typeHex === '0x7e') {
65
- formatted.isSystemTx = transaction.isSystemTx
66
- formatted.mint = transaction.mint
67
- ? hexToBigInt(transaction.mint)
68
- : undefined
69
- formatted.sourceHash = transaction.sourceHash
70
- formatted.type = 'deposit'
71
- }
72
- return formatted
73
- }) as Hash[] | OptimismFormatOverrides['Transaction'][]
74
- return {
75
- transactions,
76
- }
77
- },
78
- }),
79
- transaction: /*#__PURE__*/ defineTransaction({
80
- format(args: OptimismFormatOverrides['RpcTransaction']) {
81
- const transaction = {} as OptimismFormatOverrides['Transaction']
82
- if (args.type === '0x7e') {
83
- transaction.isSystemTx = args.isSystemTx
84
- transaction.mint = args.mint ? hexToBigInt(args.mint) : undefined
85
- transaction.sourceHash = args.sourceHash
86
- transaction.type = 'deposit'
87
- }
88
- return transaction
89
- },
90
- }),
91
- } as const satisfies Formatters
@@ -1,33 +0,0 @@
1
- import type { Chain } from './chain.js'
2
-
3
- export type Formatter<TType extends string = string> = {
4
- format: (args: any) => any
5
- type: TType
6
- }
7
-
8
- export type Formatters = {
9
- block?: Formatter<'block'>
10
- transaction?: Formatter<'transaction'>
11
- transactionReceipt?: Formatter<'transactionReceipt'>
12
- transactionRequest?: Formatter<'transactionRequest'>
13
- }
14
-
15
- export type ExtractFormatterParameters<
16
- TChain extends Chain | undefined,
17
- TType extends keyof Formatters,
18
- TFallback,
19
- > = TChain extends Chain<infer _Formatters extends Formatters>
20
- ? _Formatters[TType] extends Formatter
21
- ? Parameters<_Formatters[TType]['format']>[0]
22
- : TFallback
23
- : TFallback
24
-
25
- export type ExtractFormatterReturnType<
26
- TChain extends Chain | undefined,
27
- TType extends keyof Formatters,
28
- TFallback,
29
- > = TChain extends Chain<infer _Formatters extends Formatters>
30
- ? _Formatters[TType] extends Formatter
31
- ? ReturnType<_Formatters[TType]['format']>
32
- : TFallback
33
- : TFallback
@@ -1,19 +0,0 @@
1
- import type {
2
- TransactionSerializable,
3
- TransactionSerializableGeneric,
4
- } from '../types/transaction.js'
5
- import type { SerializeTransactionFn } from '../utils/transaction/serializeTransaction.js'
6
- import type { Formatter, Formatters } from './formatter.js'
7
-
8
- export type Serializers<
9
- TFormatters extends Formatters | undefined = undefined,
10
- > = {
11
- transaction?: SerializeTransactionFn<
12
- TFormatters extends Formatters
13
- ? TFormatters['transactionRequest'] extends Formatter
14
- ? TransactionSerializableGeneric &
15
- Parameters<TFormatters['transactionRequest']['format']>[0]
16
- : TransactionSerializable
17
- : TransactionSerializable
18
- >
19
- }