@sentio/sdk 2.0.0-rc.19 → 2.0.0-rc.20

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 (333) hide show
  1. package/lib/aptos/codegen/codegen.d.ts +1 -3
  2. package/lib/aptos/codegen/codegen.js +12 -16
  3. package/lib/aptos/codegen/codegen.js.map +1 -1
  4. package/lib/aptos/network.js +1 -1
  5. package/lib/aptos/network.js.map +1 -1
  6. package/lib/aptos/run-codegen.js +2 -2
  7. package/lib/aptos/run-codegen.js.map +1 -1
  8. package/lib/core/big-decimal.d.ts +2 -0
  9. package/lib/core/big-decimal.js +8 -0
  10. package/lib/core/big-decimal.js.map +1 -1
  11. package/lib/{chain.d.ts → core/chain.d.ts} +0 -0
  12. package/lib/{chain.js → core/chain.js} +0 -0
  13. package/lib/core/chain.js.map +1 -0
  14. package/lib/core/index.d.ts +2 -4
  15. package/lib/core/index.js +2 -4
  16. package/lib/core/index.js.map +1 -1
  17. package/lib/core/numberish.d.ts +0 -2
  18. package/lib/core/numberish.js +0 -9
  19. package/lib/core/numberish.js.map +1 -1
  20. package/lib/core/sui-plugin.js +1 -1
  21. package/lib/core/sui-plugin.js.map +1 -1
  22. package/lib/core/sui-processor.d.ts +1 -1
  23. package/lib/core/sui-processor.js +1 -1
  24. package/lib/core/sui-processor.js.map +1 -1
  25. package/lib/eth/account-processor.d.ts +4 -4
  26. package/lib/eth/account-processor.js +4 -4
  27. package/lib/eth/account-processor.js.map +1 -1
  28. package/lib/eth/base-processor-template.d.ts +5 -5
  29. package/lib/eth/base-processor-template.js +1 -1
  30. package/lib/eth/base-processor-template.js.map +1 -1
  31. package/lib/eth/base-processor.d.ts +5 -5
  32. package/lib/eth/base-processor.js +1 -1
  33. package/lib/eth/base-processor.js.map +1 -1
  34. package/lib/{core → eth}/bind-options.d.ts +0 -0
  35. package/lib/{core → eth}/bind-options.js +0 -0
  36. package/lib/eth/bind-options.js.map +1 -0
  37. package/lib/eth/binds.d.ts +2 -2
  38. package/lib/eth/binds.js +1 -1
  39. package/lib/eth/binds.js.map +1 -1
  40. package/lib/{builtin → eth/builtin}/eacaggregatorproxy/index.d.ts +0 -0
  41. package/lib/{builtin → eth/builtin}/eacaggregatorproxy/index.js +0 -0
  42. package/lib/eth/builtin/eacaggregatorproxy/index.js.map +1 -0
  43. package/lib/{builtin → eth/builtin}/eacaggregatorproxy/test-utils.d.ts +0 -0
  44. package/lib/{builtin → eth/builtin}/eacaggregatorproxy/test-utils.js +0 -0
  45. package/lib/eth/builtin/eacaggregatorproxy/test-utils.js.map +1 -0
  46. package/lib/{builtin → eth/builtin}/erc1155/index.d.ts +0 -0
  47. package/lib/{builtin → eth/builtin}/erc1155/index.js +0 -0
  48. package/lib/eth/builtin/erc1155/index.js.map +1 -0
  49. package/lib/{builtin → eth/builtin}/erc1155/test-utils.d.ts +0 -0
  50. package/lib/{builtin → eth/builtin}/erc1155/test-utils.js +0 -0
  51. package/lib/eth/builtin/erc1155/test-utils.js.map +1 -0
  52. package/lib/{builtin → eth/builtin}/erc20/index.d.ts +0 -0
  53. package/lib/{builtin → eth/builtin}/erc20/index.js +0 -0
  54. package/lib/eth/builtin/erc20/index.js.map +1 -0
  55. package/lib/{builtin → eth/builtin}/erc20/test-utils.d.ts +0 -0
  56. package/lib/{builtin → eth/builtin}/erc20/test-utils.js +0 -0
  57. package/lib/eth/builtin/erc20/test-utils.js.map +1 -0
  58. package/lib/{builtin → eth/builtin}/erc20bytes/index.d.ts +0 -0
  59. package/lib/{builtin → eth/builtin}/erc20bytes/index.js +0 -0
  60. package/lib/eth/builtin/erc20bytes/index.js.map +1 -0
  61. package/lib/{builtin → eth/builtin}/erc20bytes/test-utils.d.ts +0 -0
  62. package/lib/{builtin → eth/builtin}/erc20bytes/test-utils.js +0 -0
  63. package/lib/eth/builtin/erc20bytes/test-utils.js.map +1 -0
  64. package/lib/{builtin → eth/builtin}/erc721/index.d.ts +0 -0
  65. package/lib/{builtin → eth/builtin}/erc721/index.js +0 -0
  66. package/lib/eth/builtin/erc721/index.js.map +1 -0
  67. package/lib/{builtin → eth/builtin}/erc721/test-utils.d.ts +0 -0
  68. package/lib/{builtin → eth/builtin}/erc721/test-utils.js +0 -0
  69. package/lib/eth/builtin/erc721/test-utils.js.map +1 -0
  70. package/lib/{builtin → eth/builtin}/index.d.ts +0 -0
  71. package/lib/{builtin → eth/builtin}/index.js +0 -0
  72. package/lib/eth/builtin/index.js.map +1 -0
  73. package/lib/{builtin → eth/builtin}/internal/EACAggregatorProxy.d.ts +0 -0
  74. package/lib/{builtin → eth/builtin}/internal/EACAggregatorProxy.js +0 -0
  75. package/lib/eth/builtin/internal/EACAggregatorProxy.js.map +1 -0
  76. package/lib/{builtin → eth/builtin}/internal/ERC1155.d.ts +0 -0
  77. package/lib/{builtin → eth/builtin}/internal/ERC1155.js +0 -0
  78. package/lib/eth/builtin/internal/ERC1155.js.map +1 -0
  79. package/lib/{builtin → eth/builtin}/internal/ERC20.d.ts +0 -0
  80. package/lib/{builtin → eth/builtin}/internal/ERC20.js +0 -0
  81. package/lib/eth/builtin/internal/ERC20.js.map +1 -0
  82. package/lib/{builtin → eth/builtin}/internal/ERC20Bytes.d.ts +0 -0
  83. package/lib/{builtin → eth/builtin}/internal/ERC20Bytes.js +0 -0
  84. package/lib/eth/builtin/internal/ERC20Bytes.js.map +1 -0
  85. package/lib/{builtin → eth/builtin}/internal/ERC721.d.ts +0 -0
  86. package/lib/{builtin → eth/builtin}/internal/ERC721.js +0 -0
  87. package/lib/eth/builtin/internal/ERC721.js.map +1 -0
  88. package/lib/{builtin → eth/builtin}/internal/WETH9.d.ts +0 -0
  89. package/lib/{builtin → eth/builtin}/internal/WETH9.js +0 -0
  90. package/lib/eth/builtin/internal/WETH9.js.map +1 -0
  91. package/lib/{builtin → eth/builtin}/internal/common.d.ts +0 -0
  92. package/lib/{builtin → eth/builtin}/internal/common.js +0 -0
  93. package/lib/eth/builtin/internal/common.js.map +1 -0
  94. package/lib/{builtin → eth/builtin}/internal/eacaggregatorproxy_processor.d.ts +1 -1
  95. package/lib/{builtin → eth/builtin}/internal/eacaggregatorproxy_processor.js +1 -1
  96. package/lib/eth/builtin/internal/eacaggregatorproxy_processor.js.map +1 -0
  97. package/lib/{builtin → eth/builtin}/internal/erc1155_processor.d.ts +1 -1
  98. package/lib/{builtin → eth/builtin}/internal/erc1155_processor.js +1 -1
  99. package/lib/eth/builtin/internal/erc1155_processor.js.map +1 -0
  100. package/lib/{builtin → eth/builtin}/internal/erc20_processor.d.ts +1 -1
  101. package/lib/{builtin → eth/builtin}/internal/erc20_processor.js +1 -1
  102. package/lib/eth/builtin/internal/erc20_processor.js.map +1 -0
  103. package/lib/{builtin → eth/builtin}/internal/erc20bytes_processor.d.ts +1 -1
  104. package/lib/{builtin → eth/builtin}/internal/erc20bytes_processor.js +1 -1
  105. package/lib/eth/builtin/internal/erc20bytes_processor.js.map +1 -0
  106. package/lib/{builtin → eth/builtin}/internal/erc721_processor.d.ts +1 -1
  107. package/lib/{builtin → eth/builtin}/internal/erc721_processor.js +1 -1
  108. package/lib/eth/builtin/internal/erc721_processor.js.map +1 -0
  109. package/lib/{builtin → eth/builtin}/internal/factories/EACAggregatorProxy__factory.d.ts +0 -0
  110. package/lib/{builtin → eth/builtin}/internal/factories/EACAggregatorProxy__factory.js +0 -0
  111. package/lib/eth/builtin/internal/factories/EACAggregatorProxy__factory.js.map +1 -0
  112. package/lib/{builtin → eth/builtin}/internal/factories/ERC1155__factory.d.ts +0 -0
  113. package/lib/{builtin → eth/builtin}/internal/factories/ERC1155__factory.js +0 -0
  114. package/lib/eth/builtin/internal/factories/ERC1155__factory.js.map +1 -0
  115. package/lib/{builtin → eth/builtin}/internal/factories/ERC20Bytes__factory.d.ts +0 -0
  116. package/lib/{builtin → eth/builtin}/internal/factories/ERC20Bytes__factory.js +0 -0
  117. package/lib/eth/builtin/internal/factories/ERC20Bytes__factory.js.map +1 -0
  118. package/lib/{builtin → eth/builtin}/internal/factories/ERC20__factory.d.ts +0 -0
  119. package/lib/{builtin → eth/builtin}/internal/factories/ERC20__factory.js +0 -0
  120. package/lib/eth/builtin/internal/factories/ERC20__factory.js.map +1 -0
  121. package/lib/{builtin → eth/builtin}/internal/factories/ERC721__factory.d.ts +0 -0
  122. package/lib/{builtin → eth/builtin}/internal/factories/ERC721__factory.js +0 -0
  123. package/lib/eth/builtin/internal/factories/ERC721__factory.js.map +1 -0
  124. package/lib/{builtin → eth/builtin}/internal/factories/WETH9__factory.d.ts +0 -0
  125. package/lib/{builtin → eth/builtin}/internal/factories/WETH9__factory.js +0 -0
  126. package/lib/eth/builtin/internal/factories/WETH9__factory.js.map +1 -0
  127. package/lib/{builtin → eth/builtin}/internal/factories/index.d.ts +0 -0
  128. package/lib/{builtin → eth/builtin}/internal/factories/index.js +0 -0
  129. package/lib/eth/builtin/internal/factories/index.js.map +1 -0
  130. package/lib/{builtin → eth/builtin}/internal/index.d.ts +0 -0
  131. package/lib/{builtin → eth/builtin}/internal/index.js +0 -0
  132. package/lib/eth/builtin/internal/index.js.map +1 -0
  133. package/lib/{builtin → eth/builtin}/internal/weth9_processor.d.ts +1 -1
  134. package/lib/{builtin → eth/builtin}/internal/weth9_processor.js +1 -1
  135. package/lib/eth/builtin/internal/weth9_processor.js.map +1 -0
  136. package/lib/{builtin → eth/builtin}/weth9/index.d.ts +0 -0
  137. package/lib/{builtin → eth/builtin}/weth9/index.js +0 -0
  138. package/lib/eth/builtin/weth9/index.js.map +1 -0
  139. package/lib/{builtin → eth/builtin}/weth9/test-utils.d.ts +0 -0
  140. package/lib/{builtin → eth/builtin}/weth9/test-utils.js +0 -0
  141. package/lib/eth/builtin/weth9/test-utils.js.map +1 -0
  142. package/lib/eth/codegen/codegen.d.ts +1 -0
  143. package/lib/eth/codegen/codegen.js +53 -0
  144. package/lib/eth/codegen/codegen.js.map +1 -0
  145. package/lib/{target-ethers-sentio/index.d.cts → eth/codegen/ethers-sentio.d.ts} +1 -1
  146. package/lib/eth/codegen/ethers-sentio.js +57 -0
  147. package/lib/eth/codegen/ethers-sentio.js.map +1 -0
  148. package/lib/{target-ethers-sentio/event-handler.d.cts → eth/codegen/event-handler.d.ts} +0 -0
  149. package/lib/eth/codegen/event-handler.js +46 -0
  150. package/lib/eth/codegen/event-handler.js.map +1 -0
  151. package/lib/{target-ethers-sentio/file.d.cts → eth/codegen/file.d.ts} +0 -0
  152. package/lib/{target-ethers-sentio/file.cjs → eth/codegen/file.js} +27 -34
  153. package/lib/eth/codegen/file.js.map +1 -0
  154. package/lib/{target-ethers-sentio/functions-handler.d.cts → eth/codegen/functions-handler.d.ts} +0 -0
  155. package/lib/{target-ethers-sentio/functions-handler.cjs → eth/codegen/functions-handler.js} +13 -18
  156. package/lib/eth/codegen/functions-handler.js.map +1 -0
  157. package/lib/eth/codegen/index.d.ts +1 -0
  158. package/lib/eth/codegen/index.js +2 -0
  159. package/lib/eth/codegen/index.js.map +1 -0
  160. package/lib/{target-ethers-sentio/types.d.cts → eth/codegen/types.d.ts} +0 -0
  161. package/lib/{target-ethers-sentio/types.cjs → eth/codegen/types.js} +4 -10
  162. package/lib/eth/codegen/types.js.map +1 -0
  163. package/lib/{target-ethers-sentio/view-function.d.cts → eth/codegen/view-function.d.ts} +0 -0
  164. package/lib/{target-ethers-sentio/view-function.cjs → eth/codegen/view-function.js} +13 -20
  165. package/lib/eth/codegen/view-function.js.map +1 -0
  166. package/lib/{core → eth}/context.d.ts +3 -3
  167. package/lib/{core → eth}/context.js +3 -3
  168. package/lib/eth/context.js.map +1 -0
  169. package/lib/eth/error.d.ts +1 -0
  170. package/lib/eth/error.js +3 -0
  171. package/lib/eth/error.js.map +1 -0
  172. package/lib/eth/eth.d.ts +10 -2
  173. package/lib/eth/eth.js +43 -1
  174. package/lib/eth/eth.js.map +1 -1
  175. package/lib/eth/generic-processor.d.ts +2 -2
  176. package/lib/eth/generic-processor.js +1 -1
  177. package/lib/eth/generic-processor.js.map +1 -1
  178. package/lib/eth/generic-processor.test.js.map +1 -1
  179. package/lib/eth/index.d.ts +4 -1
  180. package/lib/eth/index.js +4 -1
  181. package/lib/eth/index.js.map +1 -1
  182. package/lib/eth/run-codegen.d.ts +2 -0
  183. package/lib/eth/run-codegen.js +12 -0
  184. package/lib/eth/run-codegen.js.map +1 -0
  185. package/lib/index.d.ts +1 -3
  186. package/lib/index.js +1 -5
  187. package/lib/index.js.map +1 -1
  188. package/lib/solana/codegen/codegen.d.ts +1 -1
  189. package/lib/solana/codegen/codegen.js +1 -1
  190. package/lib/solana/codegen/codegen.js.map +1 -1
  191. package/lib/solana/run-codegen.js +2 -2
  192. package/lib/solana/run-codegen.js.map +1 -1
  193. package/lib/testing/test-processor-server.js +1 -1
  194. package/lib/testing/test-processor-server.js.map +1 -1
  195. package/lib/testing/test-provider.js +1 -1
  196. package/lib/testing/test-provider.js.map +1 -1
  197. package/lib/tsup.config.ts +3 -0
  198. package/lib/utils/dex-price.js +2 -2
  199. package/lib/utils/dex-price.js.map +1 -1
  200. package/lib/utils/token.d.ts +0 -1
  201. package/lib/utils/token.js +17 -28
  202. package/lib/utils/token.js.map +1 -1
  203. package/package.json +22 -21
  204. package/src/aptos/codegen/codegen.ts +13 -22
  205. package/src/aptos/codegen/tsconfig.json +1 -1
  206. package/src/aptos/network.ts +1 -1
  207. package/src/aptos/run-codegen.ts +2 -2
  208. package/src/core/big-decimal.ts +11 -0
  209. package/src/{chain.ts → core/chain.ts} +0 -0
  210. package/src/core/index.ts +2 -5
  211. package/src/core/numberish.ts +0 -11
  212. package/src/core/sui-plugin.ts +1 -1
  213. package/src/core/sui-processor.ts +1 -1
  214. package/src/{abis → eth/abis}/EACAggregatorProxy.json +0 -0
  215. package/src/{abis → eth/abis}/ERC1155.json +0 -0
  216. package/src/{abis → eth/abis}/ERC20.json +0 -0
  217. package/src/{abis → eth/abis}/ERC20Bytes.json +0 -0
  218. package/src/{abis → eth/abis}/ERC721.json +0 -0
  219. package/src/{abis → eth/abis}/WETH9.json +0 -0
  220. package/src/eth/account-processor.ts +7 -7
  221. package/src/eth/base-processor-template.ts +5 -5
  222. package/src/eth/base-processor.ts +6 -6
  223. package/src/{core → eth}/bind-options.ts +0 -0
  224. package/src/eth/binds.ts +2 -2
  225. package/src/{builtin → eth/builtin}/eacaggregatorproxy/index.ts +0 -0
  226. package/src/{builtin → eth/builtin}/eacaggregatorproxy/test-utils.ts +0 -0
  227. package/src/{builtin → eth/builtin}/erc1155/index.ts +0 -0
  228. package/src/{builtin → eth/builtin}/erc1155/test-utils.ts +0 -0
  229. package/src/{builtin → eth/builtin}/erc20/index.ts +0 -0
  230. package/src/{builtin → eth/builtin}/erc20/test-utils.ts +0 -0
  231. package/src/{builtin → eth/builtin}/erc20bytes/index.ts +0 -0
  232. package/src/{builtin → eth/builtin}/erc20bytes/test-utils.ts +0 -0
  233. package/src/{builtin → eth/builtin}/erc721/index.ts +0 -0
  234. package/src/{builtin → eth/builtin}/erc721/test-utils.ts +0 -0
  235. package/src/{builtin → eth/builtin}/index.ts +0 -0
  236. package/src/{builtin → eth/builtin}/internal/EACAggregatorProxy.ts +0 -0
  237. package/src/{builtin → eth/builtin}/internal/ERC1155.ts +0 -0
  238. package/src/{builtin → eth/builtin}/internal/ERC20.ts +0 -0
  239. package/src/{builtin → eth/builtin}/internal/ERC20Bytes.ts +0 -0
  240. package/src/{builtin → eth/builtin}/internal/ERC721.ts +0 -0
  241. package/src/{builtin → eth/builtin}/internal/WETH9.ts +0 -0
  242. package/src/{builtin → eth/builtin}/internal/common.ts +0 -0
  243. package/src/{builtin → eth/builtin}/internal/eacaggregatorproxy_processor.ts +1 -1
  244. package/src/{builtin → eth/builtin}/internal/erc1155_processor.ts +1 -1
  245. package/src/{builtin → eth/builtin}/internal/erc20_processor.ts +1 -1
  246. package/src/{builtin → eth/builtin}/internal/erc20bytes_processor.ts +1 -1
  247. package/src/{builtin → eth/builtin}/internal/erc721_processor.ts +1 -1
  248. package/src/{builtin → eth/builtin}/internal/factories/EACAggregatorProxy__factory.ts +0 -0
  249. package/src/{builtin → eth/builtin}/internal/factories/ERC1155__factory.ts +0 -0
  250. package/src/{builtin → eth/builtin}/internal/factories/ERC20Bytes__factory.ts +0 -0
  251. package/src/{builtin → eth/builtin}/internal/factories/ERC20__factory.ts +0 -0
  252. package/src/{builtin → eth/builtin}/internal/factories/ERC721__factory.ts +0 -0
  253. package/src/{builtin → eth/builtin}/internal/factories/WETH9__factory.ts +0 -0
  254. package/src/{builtin → eth/builtin}/internal/factories/index.ts +0 -0
  255. package/src/{builtin → eth/builtin}/internal/index.ts +0 -0
  256. package/src/{builtin → eth/builtin}/internal/weth9_processor.ts +1 -1
  257. package/src/{builtin → eth/builtin}/weth9/index.ts +0 -0
  258. package/src/{builtin → eth/builtin}/weth9/test-utils.ts +0 -0
  259. package/src/eth/codegen/codegen.ts +62 -0
  260. package/src/{target-ethers-sentio/index.cts → eth/codegen/ethers-sentio.ts} +2 -2
  261. package/src/{target-ethers-sentio/event-handler.cts → eth/codegen/event-handler.ts} +2 -2
  262. package/src/{target-ethers-sentio/file.cts → eth/codegen/file.ts} +6 -6
  263. package/src/{target-ethers-sentio/functions-handler.cts → eth/codegen/functions-handler.ts} +4 -4
  264. package/src/eth/codegen/index.ts +1 -0
  265. package/src/eth/codegen/tsconfig.json +8 -0
  266. package/src/{target-ethers-sentio/types.cts → eth/codegen/types.ts} +1 -1
  267. package/src/{target-ethers-sentio/view-function.cts → eth/codegen/view-function.ts} +5 -3
  268. package/src/{core → eth}/context.ts +4 -4
  269. package/src/eth/error.ts +4 -0
  270. package/src/eth/eth.ts +53 -3
  271. package/src/eth/generic-processor.ts +2 -2
  272. package/src/eth/index.ts +5 -3
  273. package/src/eth/run-codegen.ts +12 -0
  274. package/src/index.ts +1 -6
  275. package/src/solana/codegen/codegen.ts +1 -1
  276. package/src/solana/codegen/tsconfig.json +1 -1
  277. package/src/solana/run-codegen.ts +2 -2
  278. package/src/testing/test-processor-server.ts +1 -1
  279. package/src/testing/test-provider.ts +1 -1
  280. package/src/tsup.config.ts +3 -0
  281. package/src/utils/dex-price.ts +2 -2
  282. package/src/utils/token.ts +19 -30
  283. package/lib/builtin/eacaggregatorproxy/index.js.map +0 -1
  284. package/lib/builtin/eacaggregatorproxy/test-utils.js.map +0 -1
  285. package/lib/builtin/erc1155/index.js.map +0 -1
  286. package/lib/builtin/erc1155/test-utils.js.map +0 -1
  287. package/lib/builtin/erc20/index.js.map +0 -1
  288. package/lib/builtin/erc20/test-utils.js.map +0 -1
  289. package/lib/builtin/erc20bytes/index.js.map +0 -1
  290. package/lib/builtin/erc20bytes/test-utils.js.map +0 -1
  291. package/lib/builtin/erc721/index.js.map +0 -1
  292. package/lib/builtin/erc721/test-utils.js.map +0 -1
  293. package/lib/builtin/index.js.map +0 -1
  294. package/lib/builtin/internal/EACAggregatorProxy.js.map +0 -1
  295. package/lib/builtin/internal/ERC1155.js.map +0 -1
  296. package/lib/builtin/internal/ERC20.js.map +0 -1
  297. package/lib/builtin/internal/ERC20Bytes.js.map +0 -1
  298. package/lib/builtin/internal/ERC721.js.map +0 -1
  299. package/lib/builtin/internal/WETH9.js.map +0 -1
  300. package/lib/builtin/internal/common.js.map +0 -1
  301. package/lib/builtin/internal/eacaggregatorproxy_processor.js.map +0 -1
  302. package/lib/builtin/internal/erc1155_processor.js.map +0 -1
  303. package/lib/builtin/internal/erc20_processor.js.map +0 -1
  304. package/lib/builtin/internal/erc20bytes_processor.js.map +0 -1
  305. package/lib/builtin/internal/erc721_processor.js.map +0 -1
  306. package/lib/builtin/internal/factories/EACAggregatorProxy__factory.js.map +0 -1
  307. package/lib/builtin/internal/factories/ERC1155__factory.js.map +0 -1
  308. package/lib/builtin/internal/factories/ERC20Bytes__factory.js.map +0 -1
  309. package/lib/builtin/internal/factories/ERC20__factory.js.map +0 -1
  310. package/lib/builtin/internal/factories/ERC721__factory.js.map +0 -1
  311. package/lib/builtin/internal/factories/WETH9__factory.js.map +0 -1
  312. package/lib/builtin/internal/factories/index.js.map +0 -1
  313. package/lib/builtin/internal/index.js.map +0 -1
  314. package/lib/builtin/internal/weth9_processor.js.map +0 -1
  315. package/lib/builtin/weth9/index.js.map +0 -1
  316. package/lib/builtin/weth9/test-utils.js.map +0 -1
  317. package/lib/chain.js.map +0 -1
  318. package/lib/core/bind-options.js.map +0 -1
  319. package/lib/core/context.js.map +0 -1
  320. package/lib/error.d.ts +0 -7
  321. package/lib/error.js +0 -36
  322. package/lib/error.js.map +0 -1
  323. package/lib/target-ethers-sentio/event-handler.cjs +0 -52
  324. package/lib/target-ethers-sentio/event-handler.cjs.map +0 -1
  325. package/lib/target-ethers-sentio/file.cjs.map +0 -1
  326. package/lib/target-ethers-sentio/functions-handler.cjs.map +0 -1
  327. package/lib/target-ethers-sentio/index.cjs +0 -61
  328. package/lib/target-ethers-sentio/index.cjs.map +0 -1
  329. package/lib/target-ethers-sentio/types.cjs.map +0 -1
  330. package/lib/target-ethers-sentio/view-function.cjs.map +0 -1
  331. package/src/error.ts +0 -43
  332. package/src/target-ethers-sentio/.eslintrc.json +0 -14
  333. package/src/target-ethers-sentio/tsconfig.json +0 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weth9_processor.js","sourceRoot":"","sources":["../../../../src/eth/builtin/internal/weth9_processor.ts"],"names":[],"mappings":"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","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\nimport { Overrides } from \"ethers\";\nimport { Networkish } from \"ethers/providers\";\nimport {\n addContractByABI,\n getContractByABI,\n addProcessor,\n getProcessor,\n getProvider,\n transformEtherError,\n Trace,\n BindOptions,\n BaseProcessor,\n BaseProcessorTemplate,\n BoundContractView,\n ContractContext,\n ContractView,\n DummyProvider,\n TypedCallTrace,\n toBlockTag,\n} from \"@sentio/sdk/eth\";\nimport { EthFetchConfig } from \"@sentio/protos\";\n\nimport { WETH9, WETH9__factory } from \"./index.js\";\nimport {\n ApprovalEvent,\n ApprovalEventFilter,\n TransferEvent,\n TransferEventFilter,\n DepositEvent,\n DepositEventFilter,\n WithdrawalEvent,\n WithdrawalEventFilter,\n} from \"./WETH9.js\";\n\nexport interface NameCallObject {}\n\nexport type NameCallTrace = TypedCallTrace<[], NameCallObject> & Trace;\n\nexport interface ApproveCallObject {\n guy: string;\n wad: bigint;\n}\n\nexport type ApproveCallTrace = TypedCallTrace<\n [string, bigint],\n ApproveCallObject\n> &\n Trace;\n\nexport interface TotalSupplyCallObject {}\n\nexport type TotalSupplyCallTrace = TypedCallTrace<[], TotalSupplyCallObject> &\n Trace;\n\nexport interface TransferFromCallObject {\n src: string;\n dst: string;\n wad: bigint;\n}\n\nexport type TransferFromCallTrace = TypedCallTrace<\n [string, string, bigint],\n TransferFromCallObject\n> &\n Trace;\n\nexport interface WithdrawCallObject {\n wad: bigint;\n}\n\nexport type WithdrawCallTrace = TypedCallTrace<[bigint], WithdrawCallObject> &\n Trace;\n\nexport interface DecimalsCallObject {}\n\nexport type DecimalsCallTrace = TypedCallTrace<[], DecimalsCallObject> & Trace;\n\nexport interface BalanceOfCallObject {}\n\nexport type BalanceOfCallTrace = TypedCallTrace<[string], BalanceOfCallObject> &\n Trace;\n\nexport interface SymbolCallObject {}\n\nexport type SymbolCallTrace = TypedCallTrace<[], SymbolCallObject> & Trace;\n\nexport interface TransferCallObject {\n dst: string;\n wad: bigint;\n}\n\nexport type TransferCallTrace = TypedCallTrace<\n [string, bigint],\n TransferCallObject\n> &\n Trace;\n\nexport interface DepositCallObject {}\n\nexport type DepositCallTrace = TypedCallTrace<[], DepositCallObject> & Trace;\n\nexport interface AllowanceCallObject {}\n\nexport type AllowanceCallTrace = TypedCallTrace<\n [string, string],\n AllowanceCallObject\n> &\n Trace;\n\nconst templateContract = WETH9__factory.connect(\"0x0\", DummyProvider);\n\nexport class WETH9ContractView extends ContractView<WETH9> {\n constructor(contract: WETH9) {\n super(contract);\n }\n\n async name(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"name()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"totalSupply()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async decimals(overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"decimals()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async balanceOf(arg0: string, overrides?: Overrides): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"balanceOf(address)\")(\n arg0,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n try {\n return await this.contract.getFunction(\"symbol()\")(overrides || {});\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n\n async allowance(\n arg0: string,\n arg1: string,\n overrides?: Overrides\n ): Promise<bigint> {\n try {\n return await this.contract.getFunction(\"allowance(address,address)\")(\n arg0,\n arg1,\n overrides || {}\n );\n } catch (e) {\n throw transformEtherError(e, undefined);\n }\n }\n}\n\nexport class WETH9BoundContractView extends BoundContractView<\n WETH9,\n WETH9ContractView\n> {\n async name(overrides?: Overrides): Promise<string> {\n if (!overrides && this.context) {\n overrides = {\n blockTag: toBlockTag(this.context.blockNumber),\n };\n }\n return await this.view.name(overrides || {});\n }\n\n async totalSupply(overrides?: Overrides): Promise<bigint> {\n if (!overrides && this.context) {\n overrides = {\n blockTag: toBlockTag(this.context.blockNumber),\n };\n }\n return await this.view.totalSupply(overrides || {});\n }\n\n async decimals(overrides?: Overrides): Promise<bigint> {\n if (!overrides && this.context) {\n overrides = {\n blockTag: toBlockTag(this.context.blockNumber),\n };\n }\n return await this.view.decimals(overrides || {});\n }\n\n async balanceOf(arg0: string, overrides?: Overrides): Promise<bigint> {\n if (!overrides && this.context) {\n overrides = {\n blockTag: toBlockTag(this.context.blockNumber),\n };\n }\n return await this.view.balanceOf(arg0, overrides || {});\n }\n\n async symbol(overrides?: Overrides): Promise<string> {\n if (!overrides && this.context) {\n overrides = {\n blockTag: toBlockTag(this.context.blockNumber),\n };\n }\n return await this.view.symbol(overrides || {});\n }\n\n async allowance(\n arg0: string,\n arg1: string,\n overrides?: Overrides\n ): Promise<bigint> {\n if (!overrides && this.context) {\n overrides = {\n blockTag: toBlockTag(this.context.blockNumber),\n };\n }\n return await this.view.allowance(arg0, arg1, overrides || {});\n }\n}\n\nexport type WETH9Context = ContractContext<WETH9, WETH9BoundContractView>;\n\nexport class WETH9Processor extends BaseProcessor<\n WETH9,\n WETH9BoundContractView\n> {\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: WETH9Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: WETH9Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventDeposit(\n handler: (event: DepositEvent, ctx: WETH9Context) => void,\n filter?: DepositEventFilter | DepositEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Deposit(address,uint256)\"](null, null);\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventWithdrawal(\n handler: (event: WithdrawalEvent, ctx: WETH9Context) => void,\n filter?: WithdrawalEventFilter | WithdrawalEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Withdrawal(address,uint256)\"](\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onCallName(\n handler: (call: NameCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x06fdde03\", handler, fetchConfig);\n }\n\n onCallApprove(\n handler: (call: ApproveCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x095ea7b3\", handler, fetchConfig);\n }\n\n onCallTotalSupply(\n handler: (call: TotalSupplyCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x18160ddd\", handler, fetchConfig);\n }\n\n onCallTransferFrom(\n handler: (call: TransferFromCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x23b872dd\", handler, fetchConfig);\n }\n\n onCallWithdraw(\n handler: (call: WithdrawCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x2e1a7d4d\", handler, fetchConfig);\n }\n\n onCallDecimals(\n handler: (call: DecimalsCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x313ce567\", handler, fetchConfig);\n }\n\n onCallBalanceOf(\n handler: (call: BalanceOfCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x70a08231\", handler, fetchConfig);\n }\n\n onCallSymbol(\n handler: (call: SymbolCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0x95d89b41\", handler, fetchConfig);\n }\n\n onCallTransfer(\n handler: (call: TransferCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0xa9059cbb\", handler, fetchConfig);\n }\n\n onCallDeposit(\n handler: (call: DepositCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0xd0e30db0\", handler, fetchConfig);\n }\n\n onCallAllowance(\n handler: (call: AllowanceCallTrace, ctx: WETH9Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"0xdd62ed3e\", handler, fetchConfig);\n }\n\n public static filters = {\n Approval(src?: string | null, guy?: string | null, wad?: null) {\n return templateContract.filters[\"Approval(address,address,uint256)\"](\n src,\n guy,\n wad\n );\n },\n Transfer(src?: string | null, dst?: string | null, wad?: null) {\n return templateContract.filters[\"Transfer(address,address,uint256)\"](\n src,\n dst,\n wad\n );\n },\n Deposit(dst?: string | null, wad?: null) {\n return templateContract.filters[\"Deposit(address,uint256)\"](dst, wad);\n },\n Withdrawal(src?: string | null, wad?: null) {\n return templateContract.filters[\"Withdrawal(address,uint256)\"](src, wad);\n },\n };\n\n protected CreateBoundContractView(): WETH9BoundContractView {\n const view = getWETH9Contract(this.config.address, this.config.network);\n return new WETH9BoundContractView(view);\n }\n\n public static bind(options: BindOptions): WETH9Processor {\n if (!options.name) {\n options.name = \"WETH9\";\n }\n let processor = getProcessor(options) as WETH9Processor;\n if (!processor) {\n processor = new WETH9Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n}\n\nexport class WETH9ProcessorTemplate extends BaseProcessorTemplate<\n WETH9,\n WETH9BoundContractView\n> {\n bindInternal(options: BindOptions) {\n if (!options.name) {\n options.name = \"WETH9\";\n }\n let processor = getProcessor(options) as WETH9Processor;\n if (!processor) {\n processor = new WETH9Processor(options);\n addProcessor(options, processor);\n }\n return processor;\n }\n\n onEventApproval(\n handler: (event: ApprovalEvent, ctx: WETH9Context) => void,\n filter?: ApprovalEventFilter | ApprovalEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Approval(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventTransfer(\n handler: (event: TransferEvent, ctx: WETH9Context) => void,\n filter?: TransferEventFilter | TransferEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Transfer(address,address,uint256)\"](\n null,\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventDeposit(\n handler: (event: DepositEvent, ctx: WETH9Context) => void,\n filter?: DepositEventFilter | DepositEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Deposit(address,uint256)\"](null, null);\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n\n onEventWithdrawal(\n handler: (event: WithdrawalEvent, ctx: WETH9Context) => void,\n filter?: WithdrawalEventFilter | WithdrawalEventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters[\"Withdrawal(address,uint256)\"](\n null,\n null\n );\n }\n return super.onEvent(handler, filter!, fetchConfig);\n }\n}\n\nexport function getWETH9Contract(\n address: string,\n network: Networkish = 1\n): WETH9ContractView {\n let contract = getContractByABI(\n \"WETH9\",\n address,\n network\n ) as WETH9ContractView;\n if (!contract) {\n const rawContract = WETH9__factory.connect(address, getProvider(network));\n contract = new WETH9ContractView(rawContract);\n addContractByABI(\"WETH9\", address, network, contract);\n }\n return contract;\n}\n"]}
File without changes
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/eth/builtin/weth9/index.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AAEpB,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\n\nexport * from \"../internal/weth9_processor.js\";\nexport * from \"../internal/WETH9.js\";\nexport * from \"./test-utils.js\";\n"]}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.js","sourceRoot":"","sources":["../../../../src/eth/builtin/weth9/test-utils.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,gBAAgB,GAKjB,MAAM,YAAY,CAAC;AACpB,MAAM,SAAS,GAAG;IAChB,SAAS,EACP,oEAAoE;IACtE,WAAW,EAAE,CAAC;IACd,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,KAAK;IACd,eAAe,EACb,oEAAoE;IACtE,gBAAgB,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,UAAU,eAAe,CAC7B,eAAuB,EACvB,KAA0B;IAE1B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,cAAc,CAC9D,mCAAmC,EACnC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAClC,CAAC;IACF,OAAO;QACL,GAAG,SAAS;QACZ,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,MAAM,EAAE,UAAU,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,eAAuB,EACvB,KAA0B;IAE1B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,cAAc,CAC9D,mCAAmC,EACnC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAClC,CAAC;IACF,OAAO;QACL,GAAG,SAAS;QACZ,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,MAAM,EAAE,UAAU,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,eAAuB,EACvB,KAAyB;IAEzB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,cAAc,CAC9D,0BAA0B,EAC1B,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CACvB,CAAC;IACF,OAAO;QACL,GAAG,SAAS;QACZ,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,MAAM,EAAE,UAAU,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,eAAuB,EACvB,KAA4B;IAE5B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,cAAc,CAC9D,6BAA6B,EAC7B,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CACvB,CAAC;IACF,OAAO;QACL,GAAG,SAAS;QACZ,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,MAAM,EAAE,UAAU,CAAC,MAAM;KAC1B,CAAC;AACJ,CAAC","sourcesContent":["/* Autogenerated file. Do not edit manually. */\n/* tslint:disable */\n/* eslint-disable */\nimport { LogParams } from \"ethers/providers\";\nimport {\n getWETH9Contract,\n ApprovalEventObject,\n TransferEventObject,\n DepositEventObject,\n WithdrawalEventObject,\n} from \"./index.js\";\nconst mockField = {\n blockHash:\n \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n blockNumber: 0,\n logIndex: 0,\n removed: false,\n transactionHash:\n \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n transactionIndex: 0,\n};\n\nexport function mockApprovalLog(\n contractAddress: string,\n event: ApprovalEventObject\n): LogParams {\n const contract = getWETH9Contract(contractAddress);\n const encodedLog = contract.rawContract.interface.encodeEventLog(\n \"Approval(address,address,uint256)\",\n [event.src, event.guy, event.wad]\n );\n return {\n ...mockField,\n index: 0,\n address: contractAddress,\n data: encodedLog.data,\n topics: encodedLog.topics,\n };\n}\n\nexport function mockTransferLog(\n contractAddress: string,\n event: TransferEventObject\n): LogParams {\n const contract = getWETH9Contract(contractAddress);\n const encodedLog = contract.rawContract.interface.encodeEventLog(\n \"Transfer(address,address,uint256)\",\n [event.src, event.dst, event.wad]\n );\n return {\n ...mockField,\n index: 0,\n address: contractAddress,\n data: encodedLog.data,\n topics: encodedLog.topics,\n };\n}\n\nexport function mockDepositLog(\n contractAddress: string,\n event: DepositEventObject\n): LogParams {\n const contract = getWETH9Contract(contractAddress);\n const encodedLog = contract.rawContract.interface.encodeEventLog(\n \"Deposit(address,uint256)\",\n [event.dst, event.wad]\n );\n return {\n ...mockField,\n index: 0,\n address: contractAddress,\n data: encodedLog.data,\n topics: encodedLog.topics,\n };\n}\n\nexport function mockWithdrawalLog(\n contractAddress: string,\n event: WithdrawalEventObject\n): LogParams {\n const contract = getWETH9Contract(contractAddress);\n const encodedLog = contract.rawContract.interface.encodeEventLog(\n \"Withdrawal(address,uint256)\",\n [event.src, event.wad]\n );\n return {\n ...mockField,\n index: 0,\n address: contractAddress,\n data: encodedLog.data,\n topics: encodedLog.topics,\n };\n}\n"]}
@@ -0,0 +1 @@
1
+ export declare function codegen(abisDir: string, outDir: string): Promise<void>;
@@ -0,0 +1,53 @@
1
+ import { loadFileDescriptions, processOutput, skipEmptyAbis } from 'typechain/dist/typechain/io.js';
2
+ import * as fs from 'fs';
3
+ import { DEFAULT_FLAGS } from 'typechain';
4
+ import EthersSentio from './ethers-sentio.js';
5
+ import * as prettier from 'prettier';
6
+ import path from 'path';
7
+ import mkdirp from 'mkdirp';
8
+ export async function codegen(abisDir, outDir) {
9
+ if (!fs.existsSync(abisDir)) {
10
+ return;
11
+ }
12
+ console.log('Generated', await codegenInternal(abisDir, outDir), 'files');
13
+ }
14
+ async function codegenInternal(abisDir, outDir) {
15
+ let allFiles = fs.readdirSync(abisDir);
16
+ if (allFiles.length === 0) {
17
+ return 0;
18
+ }
19
+ allFiles = allFiles.map((f) => path.resolve(abisDir, f));
20
+ allFiles = skipEmptyAbis(allFiles);
21
+ if (allFiles.length === 0) {
22
+ return 0;
23
+ }
24
+ const outInternal = path.resolve(outDir, 'internal');
25
+ if (!fs.existsSync(outInternal)) {
26
+ fs.mkdirSync(outInternal, { recursive: true });
27
+ }
28
+ // skip empty paths
29
+ const config = {
30
+ cwd: process.cwd(),
31
+ flags: DEFAULT_FLAGS,
32
+ inputDir: abisDir,
33
+ target: '',
34
+ outDir: outInternal,
35
+ allFiles: allFiles,
36
+ filesToProcess: allFiles,
37
+ };
38
+ const services = {
39
+ fs,
40
+ prettier,
41
+ mkdirp: mkdirp.sync,
42
+ };
43
+ let filesGenerated = 0;
44
+ const target = new EthersSentio(config);
45
+ const fileDescriptions = loadFileDescriptions(services, config.filesToProcess);
46
+ filesGenerated += processOutput(services, config, await target.beforeRun());
47
+ for (const fd of fileDescriptions) {
48
+ filesGenerated += processOutput(services, config, await target.transformFile(fd));
49
+ }
50
+ filesGenerated += processOutput(services, config, target.afterRun());
51
+ return filesGenerated;
52
+ }
53
+ //# sourceMappingURL=codegen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../../../src/eth/codegen/codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AACnG,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,EAAU,aAAa,EAAY,MAAM,WAAW,CAAA;AAC3D,OAAO,YAAY,MAAM,oBAAoB,CAAA;AAC7C,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAA;AACpC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAe,EAAE,MAAc;IAC3D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC3B,OAAM;KACP;IACD,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAA;AAC3E,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,OAAe,EAAE,MAAc;IAC5D,IAAI,QAAQ,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,CAAC,CAAA;KACT;IACD,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IAExD,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;IAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,CAAC,CAAA;KACT;IACD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;QAC/B,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;KAC/C;IAED,mBAAmB;IACnB,MAAM,MAAM,GAAW;QACrB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,OAAO;QACjB,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,QAAQ;QAClB,cAAc,EAAE,QAAQ;KACzB,CAAA;IACD,MAAM,QAAQ,GAAa;QACzB,EAAE;QACF,QAAQ;QACR,MAAM,EAAE,MAAM,CAAC,IAAI;KACpB,CAAA;IACD,IAAI,cAAc,GAAG,CAAC,CAAA;IAEtB,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAA;IAEvC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,CAAA;IAE9E,cAAc,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;IAE3E,KAAK,MAAM,EAAE,IAAI,gBAAgB,EAAE;QACjC,cAAc,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAA;KAClF;IAED,cAAc,IAAI,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;IAEpE,OAAO,cAAc,CAAA;AACvB,CAAC","sourcesContent":["import { loadFileDescriptions, processOutput, skipEmptyAbis } from 'typechain/dist/typechain/io.js'\nimport * as fs from 'fs'\nimport { Config, DEFAULT_FLAGS, Services } from 'typechain'\nimport EthersSentio from './ethers-sentio.js'\nimport * as prettier from 'prettier'\nimport path from 'path'\nimport mkdirp from 'mkdirp'\n\nexport async function codegen(abisDir: string, outDir: string) {\n if (!fs.existsSync(abisDir)) {\n return\n }\n console.log('Generated', await codegenInternal(abisDir, outDir), 'files')\n}\n\nasync function codegenInternal(abisDir: string, outDir: string): Promise<number> {\n let allFiles = fs.readdirSync(abisDir)\n if (allFiles.length === 0) {\n return 0\n }\n allFiles = allFiles.map((f) => path.resolve(abisDir, f))\n\n allFiles = skipEmptyAbis(allFiles)\n if (allFiles.length === 0) {\n return 0\n }\n const outInternal = path.resolve(outDir, 'internal')\n if (!fs.existsSync(outInternal)) {\n fs.mkdirSync(outInternal, { recursive: true })\n }\n\n // skip empty paths\n const config: Config = {\n cwd: process.cwd(),\n flags: DEFAULT_FLAGS,\n inputDir: abisDir,\n target: '',\n outDir: outInternal,\n allFiles: allFiles,\n filesToProcess: allFiles,\n }\n const services: Services = {\n fs,\n prettier,\n mkdirp: mkdirp.sync,\n }\n let filesGenerated = 0\n\n const target = new EthersSentio(config)\n\n const fileDescriptions = loadFileDescriptions(services, config.filesToProcess)\n\n filesGenerated += processOutput(services, config, await target.beforeRun())\n\n for (const fd of fileDescriptions) {\n filesGenerated += processOutput(services, config, await target.transformFile(fd))\n }\n\n filesGenerated += processOutput(services, config, target.afterRun())\n\n return filesGenerated\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  import Ethers from '@sentio/ethers-v6';
2
2
  import { Config, FileDescription } from 'typechain';
3
- export default class EthersSentio extends Ethers {
3
+ export default class EthersSentio extends Ethers.default {
4
4
  constructor(config: Config);
5
5
  transformAbiOrFullJsonFile(file: FileDescription): FileDescription[] | void;
6
6
  afterRun(): FileDescription[];
@@ -0,0 +1,57 @@
1
+ import Ethers from '@sentio/ethers-v6';
2
+ import { extractAbi, extractDocumentation, parse, shortenFullJsonFilePath } from 'typechain';
3
+ import { dirname, join, relative } from 'path';
4
+ import { codeGenIndex, codeGenSentioFile, codeGenTestUtilsFile } from './file.js';
5
+ export default class EthersSentio extends Ethers.default {
6
+ constructor(config) {
7
+ if (!config.outDir) {
8
+ throw new Error('Out put path not specificed');
9
+ }
10
+ super(config);
11
+ }
12
+ // TODO(pc): also have to override transformBinFile, transformFile
13
+ transformAbiOrFullJsonFile(file) {
14
+ const abi = extractAbi(file.contents);
15
+ if (abi.length === 0) {
16
+ return;
17
+ }
18
+ const documentation = extractDocumentation(file.contents);
19
+ const jsonPath = relative(this.cfg.inputDir, shortenFullJsonFilePath(file.path, this.cfg.allFiles));
20
+ const contract = parse(abi, jsonPath, documentation);
21
+ const files = super.transformAbiOrFullJsonFile(file);
22
+ if (files !== undefined) {
23
+ // files.forEach(this.transformFilePath)
24
+ // for (const file of files) {
25
+ // this.transformFilePath(file)
26
+ // }
27
+ return [
28
+ ...files,
29
+ {
30
+ path: join(dirname(files[0].path), `${contract.name.toLowerCase()}_processor.ts`),
31
+ contents: codeGenSentioFile(contract),
32
+ },
33
+ {
34
+ path: join(dirname(files[0].path), '..', contract.name.toLowerCase(), 'index.ts'),
35
+ contents: codeGenIndex(contract),
36
+ },
37
+ {
38
+ path: join(dirname(files[0].path), '..', contract.name.toLowerCase(), 'test-utils.ts'),
39
+ contents: codeGenTestUtilsFile(contract),
40
+ },
41
+ ];
42
+ }
43
+ }
44
+ afterRun() {
45
+ const files = super.afterRun();
46
+ for (const [idx, file] of files.entries()) {
47
+ if (file.path.endsWith('__factory.ts')) {
48
+ file.contents = '// @ts-nocheck\n' + file.contents;
49
+ }
50
+ if (file.path.endsWith('factories/index.ts')) {
51
+ file.contents = file.contents.replaceAll("__factory'", "__factory.js'");
52
+ }
53
+ }
54
+ return files;
55
+ }
56
+ }
57
+ //# sourceMappingURL=ethers-sentio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethers-sentio.js","sourceRoot":"","sources":["../../../src/eth/codegen/ethers-sentio.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAA;AACtC,OAAO,EAAU,UAAU,EAAE,oBAAoB,EAAmB,KAAK,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AACrH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEjF,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,MAAM,CAAC,OAAO;IACtD,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;QACD,KAAK,CAAC,MAAM,CAAC,CAAA;IACf,CAAC;IAED,kEAAkE;IACzD,0BAA0B,CAAC,IAAqB;QACvD,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACrC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAM;SACP;QAED,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEzD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;QACnG,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAA;QACpD,MAAM,KAAK,GAAG,KAAK,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAA;QAEpD,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,wCAAwC;YACxC,8BAA8B;YAC9B,iCAAiC;YACjC,IAAI;YAEJ,OAAO;gBACL,GAAG,KAAK;gBACR;oBACE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC;oBACjF,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,CAAC;iBACtC;gBACD;oBACE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC;oBACjF,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC;iBACjC;gBACD;oBACE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,eAAe,CAAC;oBACtF,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,CAAC;iBACzC;aACF,CAAA;SACF;IACH,CAAC;IAEQ,QAAQ;QACf,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAA;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;YACzC,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;gBACtC,IAAI,CAAC,QAAQ,GAAG,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAA;aACnD;YACD,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;gBAC5C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,eAAe,CAAC,CAAA;aACxE;SACF;QACD,OAAO,KAAK,CAAA;IACd,CAAC;CACF","sourcesContent":["import Ethers from '@sentio/ethers-v6'\nimport { Config, extractAbi, extractDocumentation, FileDescription, parse, shortenFullJsonFilePath } from 'typechain'\nimport { dirname, join, relative } from 'path'\nimport { codeGenIndex, codeGenSentioFile, codeGenTestUtilsFile } from './file.js'\n\nexport default class EthersSentio extends Ethers.default {\n constructor(config: Config) {\n if (!config.outDir) {\n throw new Error('Out put path not specificed')\n }\n super(config)\n }\n\n // TODO(pc): also have to override transformBinFile, transformFile\n override transformAbiOrFullJsonFile(file: FileDescription): FileDescription[] | void {\n const abi = extractAbi(file.contents)\n if (abi.length === 0) {\n return\n }\n\n const documentation = extractDocumentation(file.contents)\n\n const jsonPath = relative(this.cfg.inputDir, shortenFullJsonFilePath(file.path, this.cfg.allFiles))\n const contract = parse(abi, jsonPath, documentation)\n const files = super.transformAbiOrFullJsonFile(file)\n\n if (files !== undefined) {\n // files.forEach(this.transformFilePath)\n // for (const file of files) {\n // this.transformFilePath(file)\n // }\n\n return [\n ...files,\n {\n path: join(dirname(files[0].path), `${contract.name.toLowerCase()}_processor.ts`),\n contents: codeGenSentioFile(contract),\n },\n {\n path: join(dirname(files[0].path), '..', contract.name.toLowerCase(), 'index.ts'),\n contents: codeGenIndex(contract),\n },\n {\n path: join(dirname(files[0].path), '..', contract.name.toLowerCase(), 'test-utils.ts'),\n contents: codeGenTestUtilsFile(contract),\n },\n ]\n }\n }\n\n override afterRun() {\n const files = super.afterRun()\n for (const [idx, file] of files.entries()) {\n if (file.path.endsWith('__factory.ts')) {\n file.contents = '// @ts-nocheck\\n' + file.contents\n }\n if (file.path.endsWith('factories/index.ts')) {\n file.contents = file.contents.replaceAll(\"__factory'\", \"__factory.js'\")\n }\n }\n return files\n }\n}\n"]}
@@ -0,0 +1,46 @@
1
+ import { getFullSignatureAsSymbolForEvent } from 'typechain';
2
+ import { getFullSignatureForEventPatched } from './types.js';
3
+ import { generateEventInputs } from '@sentio/ethers-v6/dist/codegen/events.js';
4
+ export function generateEventHandler(event, contractName, includeArgTypes) {
5
+ const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name;
6
+ const eventNamePrefix = includeArgTypes ? eventName + '_' : eventName;
7
+ const filterName = getFullSignatureForEventPatched(event);
8
+ return `
9
+ onEvent${eventName}(
10
+ handler: (event: ${eventNamePrefix}Event, ctx: ${contractName}Context) => void,
11
+ filter?: ${eventNamePrefix}EventFilter | ${eventNamePrefix}EventFilter[],
12
+ fetchConfig?: EthFetchConfig
13
+ ) {
14
+ if (!filter) {
15
+ filter = templateContract.filters['${filterName}'](${event.inputs.map(() => 'null').join(',')})
16
+ }
17
+ return super.onEvent(handler, filter!, fetchConfig)
18
+ }
19
+ `;
20
+ }
21
+ export function generateEventHandlers(events, contractName) {
22
+ if (events.length === 1) {
23
+ return generateEventHandler(events[0], contractName, false);
24
+ }
25
+ else {
26
+ return events.map((e) => generateEventHandler(e, contractName, true)).join('\n');
27
+ }
28
+ }
29
+ function generateEventFilter(event, includeArgTypes) {
30
+ const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name;
31
+ const filterName = getFullSignatureForEventPatched(event);
32
+ return `
33
+ ${eventName}(${generateEventInputs(event.inputs)}) { return templateContract.filters['${filterName}'](${event.inputs
34
+ .map((i) => i.name)
35
+ .join(',')}) }
36
+ `;
37
+ }
38
+ export function generateEventFilters(events) {
39
+ if (events.length === 1) {
40
+ return [generateEventFilter(events[0], false)];
41
+ }
42
+ else {
43
+ return events.map((e) => generateEventFilter(e, true));
44
+ }
45
+ }
46
+ //# sourceMappingURL=event-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-handler.js","sourceRoot":"","sources":["../../../src/eth/codegen/event-handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,gCAAgC,EAAE,MAAM,WAAW,CAAA;AACxF,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAA;AAE9E,MAAM,UAAU,oBAAoB,CAAC,KAAuB,EAAE,YAAoB,EAAE,eAAwB;IAC1G,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IACxF,MAAM,eAAe,GAAG,eAAe,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;IAErE,MAAM,UAAU,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACzD,OAAO;WACE,SAAS;uBACG,eAAe,eAAe,YAAY;eAClD,eAAe,iBAAiB,eAAe;;;;2CAInB,UAAU,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;GAIhG,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAA0B,EAAE,YAAoB;IACpF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAA;KAC5D;SAAM;QACL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;KACjF;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAuB,EAAE,eAAwB;IAC5E,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,gCAAgC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAA;IAExF,MAAM,UAAU,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACzD,OAAO;MACH,SAAS,IAAI,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,wCAAwC,UAAU,MAAM,KAAK,CAAC,MAAM;SACnH,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SAClB,IAAI,CAAC,GAAG,CAAC;GACX,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA0B;IAC7D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;QACvB,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAA;KAC/C;SAAM;QACL,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;KACvD;AACH,CAAC","sourcesContent":["import { EventDeclaration, Contract, getFullSignatureAsSymbolForEvent } from 'typechain'\nimport { getFullSignatureForEventPatched } from './types.js'\nimport { generateEventInputs } from '@sentio/ethers-v6/dist/codegen/events.js'\n\nexport function generateEventHandler(event: EventDeclaration, contractName: string, includeArgTypes: boolean): string {\n const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name\n const eventNamePrefix = includeArgTypes ? eventName + '_' : eventName\n\n const filterName = getFullSignatureForEventPatched(event)\n return `\n onEvent${eventName}(\n handler: (event: ${eventNamePrefix}Event, ctx: ${contractName}Context) => void,\n filter?: ${eventNamePrefix}EventFilter | ${eventNamePrefix}EventFilter[],\n fetchConfig?: EthFetchConfig\n ) {\n if (!filter) {\n filter = templateContract.filters['${filterName}'](${event.inputs.map(() => 'null').join(',')})\n }\n return super.onEvent(handler, filter!, fetchConfig)\n }\n `\n}\n\nexport function generateEventHandlers(events: EventDeclaration[], contractName: string): string {\n if (events.length === 1) {\n return generateEventHandler(events[0], contractName, false)\n } else {\n return events.map((e) => generateEventHandler(e, contractName, true)).join('\\n')\n }\n}\n\nfunction generateEventFilter(event: EventDeclaration, includeArgTypes: boolean): string {\n const eventName = includeArgTypes ? getFullSignatureAsSymbolForEvent(event) : event.name\n\n const filterName = getFullSignatureForEventPatched(event)\n return `\n ${eventName}(${generateEventInputs(event.inputs)}) { return templateContract.filters['${filterName}'](${event.inputs\n .map((i) => i.name)\n .join(',')}) }\n `\n}\n\nexport function generateEventFilters(events: EventDeclaration[]): string[] {\n if (events.length === 1) {\n return [generateEventFilter(events[0], false)]\n } else {\n return events.map((e) => generateEventFilter(e, true))\n }\n}\n"]}
@@ -1,23 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.codeGenTestUtilsFile = exports.codeGenSentioFile = exports.codeGenIndex = void 0;
4
- const typechain_1 = require("typechain");
5
- const reserved_keywords_1 = require("@sentio/ethers-v6/dist/codegen/reserved-keywords");
6
- const signatures_1 = require("typechain/dist/utils/signatures");
7
- const functions_handler_cjs_1 = require("./functions-handler.cjs");
8
- const event_handler_cjs_1 = require("./event-handler.cjs");
9
- const view_function_cjs_1 = require("./view-function.cjs");
10
- function codeGenIndex(contract) {
1
+ import { createImportsForUsedIdentifiers, getFullSignatureAsSymbolForEvent, getFullSignatureForEvent, } from 'typechain';
2
+ import { reservedKeywords } from '@sentio/ethers-v6/dist/codegen/reserved-keywords.js';
3
+ import { codegenCallTraceTypes, generateCallHandlers } from './functions-handler.js';
4
+ import { generateEventFilters, generateEventHandlers } from './event-handler.js';
5
+ import { generateBoundViewFunctions, generateViewFunctions } from './view-function.js';
6
+ export function codeGenIndex(contract) {
11
7
  return `
12
8
  export * from '../internal/${contract.name.toLowerCase()}_processor.js'
13
9
  export * from '../internal/${contract.name}.js'
14
10
  export * from './test-utils.js'
15
11
  `;
16
12
  }
17
- exports.codeGenIndex = codeGenIndex;
18
- function codeGenSentioFile(contract) {
13
+ export function codeGenSentioFile(contract) {
19
14
  const source = `
20
- ${Object.values(contract.functions).map(functions_handler_cjs_1.codegenCallTraceTypes).join('\n')}
15
+ ${Object.values(contract.functions).map(codegenCallTraceTypes).join('\n')}
21
16
 
22
17
  const templateContract = ${contract.name}__factory.connect("0x0", DummyProvider)
23
18
 
@@ -27,16 +22,16 @@ function codeGenSentioFile(contract) {
27
22
  }
28
23
 
29
24
  ${Object.values(contract.functions)
30
- .filter((f) => !reserved_keywords_1.reservedKeywords.has(f[0].name))
31
- .map((fs) => (0, view_function_cjs_1.generateViewFunctions)(fs))
25
+ .filter((f) => !reservedKeywords.has(f[0].name))
26
+ .map((fs) => generateViewFunctions(fs))
32
27
  .join('\n')}
33
28
  }
34
29
 
35
30
  export class ${contract.name}BoundContractView extends BoundContractView<${contract.name},
36
31
  ${contract.name}ContractView> {
37
32
  ${Object.values(contract.functions)
38
- .filter((f) => !reserved_keywords_1.reservedKeywords.has(f[0].name))
39
- .map((fs) => (0, view_function_cjs_1.generateBoundViewFunctions)(fs))
33
+ .filter((f) => !reservedKeywords.has(f[0].name))
34
+ .map((fs) => generateBoundViewFunctions(fs))
40
35
  .join('\n')}
41
36
  }
42
37
 
@@ -44,16 +39,16 @@ function codeGenSentioFile(contract) {
44
39
 
45
40
  export class ${contract.name}Processor extends BaseProcessor<${contract.name}, ${contract.name}BoundContractView> {
46
41
  ${Object.values(contract.events)
47
- .map((events) => (0, event_handler_cjs_1.generateEventHandlers)(events, contract.name))
42
+ .map((events) => generateEventHandlers(events, contract.name))
48
43
  .join('\n')}
49
44
 
50
45
  ${Object.values(contract.functions)
51
- .map((f) => (0, functions_handler_cjs_1.generateCallHandlers)(f, contract.name))
46
+ .map((f) => generateCallHandlers(f, contract.name))
52
47
  .join('\n')}
53
48
 
54
49
  public static filters = {
55
50
  ${Object.values(contract.events)
56
- .map((events) => (0, event_handler_cjs_1.generateEventFilters)(events))
51
+ .map((events) => generateEventFilters(events))
57
52
  .join(',')}
58
53
  }
59
54
 
@@ -89,12 +84,12 @@ export class ${contract.name}ProcessorTemplate extends BaseProcessorTemplate<${c
89
84
  }
90
85
 
91
86
  ${Object.values(contract.events)
92
- .map((events) => (0, event_handler_cjs_1.generateEventHandlers)(events, contract.name))
87
+ .map((events) => generateEventHandlers(events, contract.name))
93
88
  .join('\n')}
94
89
 
95
90
  ${Object.values(contract.functions)
96
91
  .map((functions) => {
97
- (0, functions_handler_cjs_1.generateCallHandlers)(functions, contract.name);
92
+ generateCallHandlers(functions, contract.name);
98
93
  })
99
94
  .join('\n')}
100
95
  }
@@ -116,8 +111,8 @@ export class ${contract.name}ProcessorTemplate extends BaseProcessorTemplate<${c
116
111
  }
117
112
  else {
118
113
  return events.flatMap((e) => [
119
- `${(0, typechain_1.getFullSignatureAsSymbolForEvent)(e)}_Event`,
120
- `${(0, typechain_1.getFullSignatureAsSymbolForEvent)(e)}_EventFilter`,
114
+ `${getFullSignatureAsSymbolForEvent(e)}_Event`,
115
+ `${getFullSignatureAsSymbolForEvent(e)}_EventFilter`,
121
116
  ]);
122
117
  }
123
118
  });
@@ -136,10 +131,10 @@ export class ${contract.name}ProcessorTemplate extends BaseProcessorTemplate<${c
136
131
  });
137
132
  // dedup namespace
138
133
  const uniqueStructImports = [...new Set(structImports)];
139
- const imports = (0, typechain_1.createImportsForUsedIdentifiers)({
134
+ const imports = createImportsForUsedIdentifiers({
140
135
  ethers: ['BigNumberish', 'Overrides', 'BytesLike'],
141
136
  'ethers/providers': ['Networkish'],
142
- '@sentio/sdk': [
137
+ '@sentio/sdk/eth': [
143
138
  'addContractByABI',
144
139
  'getContractByABI',
145
140
  'addProcessor',
@@ -164,8 +159,7 @@ export class ${contract.name}ProcessorTemplate extends BaseProcessorTemplate<${c
164
159
  }, source);
165
160
  return imports + source;
166
161
  }
167
- exports.codeGenSentioFile = codeGenSentioFile;
168
- function codeGenTestUtilsFile(contract) {
162
+ export function codeGenTestUtilsFile(contract) {
169
163
  const source = `
170
164
  const mockField = {
171
165
  blockHash:
@@ -188,7 +182,7 @@ function codeGenTestUtilsFile(contract) {
188
182
  })
189
183
  .join('\n')}
190
184
  `;
191
- const imports = (0, typechain_1.createImportsForUsedIdentifiers)({
185
+ const imports = createImportsForUsedIdentifiers({
192
186
  'ethers/providers': ['LogParams'],
193
187
  './index.js': [
194
188
  `get${contract.name}Contract`,
@@ -197,25 +191,24 @@ function codeGenTestUtilsFile(contract) {
197
191
  return `${events[0].name}EventObject`;
198
192
  }
199
193
  else {
200
- return events.flatMap((e) => `${(0, typechain_1.getFullSignatureAsSymbolForEvent)(e)}_EventObject`);
194
+ return events.flatMap((e) => `${getFullSignatureAsSymbolForEvent(e)}_EventObject`);
201
195
  }
202
196
  }),
203
197
  ],
204
198
  }, source);
205
199
  return imports + source;
206
200
  }
207
- exports.codeGenTestUtilsFile = codeGenTestUtilsFile;
208
201
  function generateMockEventLogFunction(event, contractName, includeArgTypes) {
209
202
  let eventName = event.name;
210
203
  if (includeArgTypes) {
211
- eventName = (0, typechain_1.getFullSignatureAsSymbolForEvent)(event) + '_';
204
+ eventName = getFullSignatureAsSymbolForEvent(event) + '_';
212
205
  }
213
206
  const eventArgs = event.inputs.map((input, i) => `event.${input.name ?? `arg${i.toString()}`}`);
214
207
  return `
215
208
  export function mock${eventName}Log(contractAddress: string, event: ${eventName}EventObject): LogParams {
216
209
  const contract = get${contractName}Contract(contractAddress)
217
210
  const encodedLog = contract.rawContract.interface.encodeEventLog(
218
- '${(0, signatures_1.getFullSignatureForEvent)(event)}',
211
+ '${getFullSignatureForEvent(event)}',
219
212
  [${eventArgs.join(', ')}]
220
213
  )
221
214
  return {
@@ -228,4 +221,4 @@ function generateMockEventLogFunction(event, contractName, includeArgTypes) {
228
221
  }
229
222
  `;
230
223
  }
231
- //# sourceMappingURL=file.cjs.map
224
+ //# sourceMappingURL=file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/eth/codegen/file.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Contract,\n createImportsForUsedIdentifiers,\n EventDeclaration,\n getFullSignatureAsSymbolForEvent,\n getFullSignatureForEvent,\n} from 'typechain'\n\nimport { reservedKeywords } from '@sentio/ethers-v6/dist/codegen/reserved-keywords.js'\nimport { codegenCallTraceTypes, generateCallHandlers } from './functions-handler.js'\nimport { generateEventFilters, generateEventHandlers } from './event-handler.js'\nimport { generateBoundViewFunctions, generateViewFunctions } from './view-function.js'\n\nexport function codeGenIndex(contract: Contract): string {\n return ` \n export * from '../internal/${contract.name.toLowerCase()}_processor.js'\n export * from '../internal/${contract.name}.js'\n export * from './test-utils.js'\n `\n}\n\nexport function codeGenSentioFile(contract: Contract): string {\n const source = `\n ${Object.values(contract.functions).map(codegenCallTraceTypes).join('\\n')}\n\n const templateContract = ${contract.name}__factory.connect(\"0x0\", DummyProvider)\n\n export class ${contract.name}ContractView extends ContractView<${contract.name}> {\n constructor (contract: ${contract.name}) {\n super(contract);\n }\n\n ${Object.values(contract.functions)\n .filter((f) => !reservedKeywords.has(f[0].name))\n .map((fs) => generateViewFunctions(fs))\n .join('\\n')}\n }\n \n export class ${contract.name}BoundContractView extends BoundContractView<${contract.name}, \n ${contract.name}ContractView> {\n ${Object.values(contract.functions)\n .filter((f) => !reservedKeywords.has(f[0].name))\n .map((fs) => generateBoundViewFunctions(fs))\n .join('\\n')}\n }\n\n export type ${contract.name}Context = ContractContext<${contract.name}, ${contract.name}BoundContractView>\n\n export class ${contract.name}Processor extends BaseProcessor<${contract.name}, ${contract.name}BoundContractView> {\n ${Object.values(contract.events)\n .map((events) => generateEventHandlers(events, contract.name))\n .join('\\n')}\n\n ${Object.values(contract.functions)\n .map((f) => generateCallHandlers(f, contract.name))\n .join('\\n')}\n\n public static filters = {\n ${Object.values(contract.events)\n .map((events) => generateEventFilters(events))\n .join(',')}\n }\n \n protected CreateBoundContractView(): ${contract.name}BoundContractView {\n const view = get${contract.name}Contract(this.config.address, this.config.network)\n return new ${contract.name}BoundContractView(view)\n }\n\n public static bind(options: BindOptions): ${contract.name}Processor {\n if (!options.name) {\n options.name = \"${contract.name}\"\n }\n let processor = getProcessor(options) as ${contract.name}Processor\n if (!processor) {\n processor = new ${contract.name}Processor(options)\n addProcessor(options, processor)\n }\n return processor\n }\n}\n\nexport class ${contract.name}ProcessorTemplate extends BaseProcessorTemplate<${contract.name}, ${\n contract.name\n }BoundContractView> {\n bindInternal(options: BindOptions) {\n if (!options.name) {\n options.name = \"${contract.name}\"\n }\n let processor = getProcessor(options) as ${contract.name}Processor\n if (!processor) {\n processor = new ${contract.name}Processor(options)\n addProcessor(options, processor)\n }\n return processor\n }\n\n ${Object.values(contract.events)\n .map((events) => generateEventHandlers(events, contract.name))\n .join('\\n')}\n \n ${Object.values(contract.functions)\n .map((functions) => {\n generateCallHandlers(functions, contract.name)\n })\n .join('\\n')}\n }\n\n\n export function get${contract.name}Contract(address: string, network: Networkish = 1): ${contract.name}ContractView {\n let contract = getContractByABI(\"${contract.name}\", address, network) as ${contract.name}ContractView\n if (!contract) {\n const rawContract = ${contract.name}__factory.connect(address, getProvider(network))\n contract = new ${contract.name}ContractView(rawContract)\n addContractByABI(\"${contract.name}\", address, network, contract)\n }\n return contract\n }\n `\n const eventsImports = Object.values(contract.events).flatMap((events) => {\n if (events.length === 1) {\n return [`${events[0].name}Event`, `${events[0].name}EventFilter`]\n } else {\n return events.flatMap((e) => [\n `${getFullSignatureAsSymbolForEvent(e)}_Event`,\n `${getFullSignatureAsSymbolForEvent(e)}_EventFilter`,\n ])\n }\n })\n\n const structImports = Object.values(contract.structs).flatMap((structs) => {\n return structs.flatMap((s) => {\n if (!s.structName) {\n return []\n }\n if (s.structName.namespace) {\n return [s.structName.namespace]\n } else {\n return [s.structName.identifier + 'StructOutput', s.structName.identifier + 'Struct']\n }\n })\n })\n // dedup namespace\n const uniqueStructImports = [...new Set(structImports)]\n\n const imports = createImportsForUsedIdentifiers(\n {\n ethers: ['BigNumberish', 'Overrides', 'BytesLike'],\n 'ethers/providers': ['Networkish'],\n '@sentio/sdk/eth': [\n 'addContractByABI',\n 'getContractByABI',\n 'addProcessor',\n 'getProcessor',\n 'getProvider',\n 'transformEtherError',\n 'Trace',\n 'BindOptions',\n 'BaseProcessor',\n 'BaseProcessorTemplate',\n 'BoundContractView',\n 'ContractContext',\n 'ContractView',\n 'DummyProvider',\n 'TypedCallTrace',\n 'toBlockTag',\n ],\n '@sentio/protos': ['EthFetchConfig'],\n './common.js': ['PromiseOrValue'],\n './index.js': [`${contract.name}`, `${contract.name}__factory`],\n [`./${contract.name}.js`]: eventsImports.concat(uniqueStructImports),\n },\n source\n )\n\n return imports + source\n}\n\nexport function codeGenTestUtilsFile(contract: Contract): string {\n const source = `\n const mockField = {\n blockHash:\n \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n blockNumber: 0,\n logIndex: 0,\n removed: false,\n transactionHash:\n \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n transactionIndex: 0,\n }\n ${Object.values(contract.events)\n .map((events) => {\n if (events.length === 1) {\n return generateMockEventLogFunction(events[0], contract.name, false)\n } else {\n return events.map((e) => generateMockEventLogFunction(e, contract.name, true)).join('\\n')\n }\n })\n .join('\\n')}\n `\n\n const imports = createImportsForUsedIdentifiers(\n {\n 'ethers/providers': ['LogParams'],\n './index.js': [\n `get${contract.name}Contract`,\n ...Object.values(contract.events).flatMap((events) => {\n if (events.length === 1) {\n return `${events[0].name}EventObject`\n } else {\n return events.flatMap((e) => `${getFullSignatureAsSymbolForEvent(e)}_EventObject`)\n }\n }),\n ],\n },\n source\n )\n\n return imports + source\n}\n\nfunction generateMockEventLogFunction(event: EventDeclaration, contractName: string, includeArgTypes: boolean): string {\n let eventName = event.name\n if (includeArgTypes) {\n eventName = getFullSignatureAsSymbolForEvent(event) + '_'\n }\n\n const eventArgs = event.inputs.map((input, i) => `event.${input.name ?? `arg${i.toString()}`}`)\n\n return `\n export function mock${eventName}Log(contractAddress: string, event: ${eventName}EventObject): LogParams {\n const contract = get${contractName}Contract(contractAddress)\n const encodedLog = contract.rawContract.interface.encodeEventLog(\n '${getFullSignatureForEvent(event)}',\n [${eventArgs.join(', ')}]\n )\n return {\n ...mockField,\n index: 0,\n address: contractAddress,\n data: encodedLog.data,\n topics: encodedLog.topics,\n }\n }\n `\n}\n"]}
@@ -1,29 +1,24 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.codegenCallTraceTypes = exports.generateCallHandlers = void 0;
4
- const types_1 = require("@sentio/ethers-v6/dist/codegen/types");
5
- const js_sha3_1 = require("js-sha3");
6
- const typechain_1 = require("typechain");
7
- const types_cjs_1 = require("./types.cjs");
8
- function generateCallHandlers(fns, contractName) {
1
+ import { generateOutputComplexTypeAsArray, generateOutputComplexTypesAsObject, } from '@sentio/ethers-v6/dist/codegen/types.js';
2
+ import sha3 from 'js-sha3';
3
+ import { getSignatureForFn } from 'typechain';
4
+ import { getFullSignatureAsSymbolForFunction } from './types.js';
5
+ export function generateCallHandlers(fns, contractName) {
9
6
  if (fns.length === 1) {
10
7
  return generateCallHandler(fns[0], contractName);
11
8
  }
12
- return fns.map((fn) => generateCallHandler(fn, contractName, (0, types_cjs_1.getFullSignatureAsSymbolForFunction)(fn))).join('\n');
9
+ return fns.map((fn) => generateCallHandler(fn, contractName, getFullSignatureAsSymbolForFunction(fn))).join('\n');
13
10
  }
14
- exports.generateCallHandlers = generateCallHandlers;
15
- function codegenCallTraceTypes(fns) {
11
+ export function codegenCallTraceTypes(fns) {
16
12
  if (fns.length === 1) {
17
13
  return codegenCallTraceType(fns[0]);
18
14
  }
19
- return fns.map((fn) => codegenCallTraceType(fn, (0, types_cjs_1.getFullSignatureAsSymbolForFunction)(fn))).join('\n');
15
+ return fns.map((fn) => codegenCallTraceType(fn, getFullSignatureAsSymbolForFunction(fn))).join('\n');
20
16
  }
21
- exports.codegenCallTraceTypes = codegenCallTraceTypes;
22
17
  function codegenCallTraceType(fn, overloadedName) {
23
18
  const identifier = capitalizeFirstChar(overloadedName ?? fn.name);
24
19
  const components = fn.inputs.map((input, i) => ({ name: input.name ?? `arg${i.toString()}`, type: input.type }));
25
- const arrayOutput = (0, types_1.generateOutputComplexTypeAsArray)(components, { useStructs: true });
26
- const objectOutput = (0, types_1.generateOutputComplexTypesAsObject)(components, { useStructs: true }) || '{}';
20
+ const arrayOutput = generateOutputComplexTypeAsArray(components, { useStructs: true });
21
+ const objectOutput = generateOutputComplexTypesAsObject(components, { useStructs: true }) || '{}';
27
22
  return `
28
23
  export interface ${identifier}CallObject ${objectOutput}
29
24
 
@@ -31,10 +26,10 @@ function codegenCallTraceType(fn, overloadedName) {
31
26
  `;
32
27
  }
33
28
  function generateCallHandler(fn, contractName, overloadedName) {
34
- const signature = (0, typechain_1.getSignatureForFn)(fn);
29
+ const signature = getSignatureForFn(fn);
35
30
  // utils.toUtf8Bytes(signature))
36
31
  const test = new TextEncoder().encode(signature);
37
- const sighash = "0x" + (0, js_sha3_1.keccak_256)(test).substring(0, 8);
32
+ const sighash = '0x' + sha3.keccak_256(test).substring(0, 8);
38
33
  return `
39
34
  onCall${capitalizeFirstChar(overloadedName ?? fn.name)}(
40
35
  handler: (call: ${capitalizeFirstChar(overloadedName ?? fn.name)}CallTrace, ctx: ${contractName}Context) => void,
@@ -50,4 +45,4 @@ function capitalizeFirstChar(input) {
50
45
  }
51
46
  return input[0].toUpperCase() + (input.length > 1 ? input.substring(1) : '');
52
47
  }
53
- //# sourceMappingURL=functions-handler.cjs.map
48
+ //# sourceMappingURL=functions-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions-handler.js","sourceRoot":"","sources":["../../../src/eth/codegen/functions-handler.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n generateOutputComplexTypeAsArray,\n generateOutputComplexTypesAsObject,\n} from '@sentio/ethers-v6/dist/codegen/types.js'\nimport sha3 from 'js-sha3'\nimport { FunctionDeclaration, getSignatureForFn } from 'typechain'\nimport { getFullSignatureAsSymbolForFunction } from './types.js'\n\nexport function generateCallHandlers(fns: FunctionDeclaration[], contractName: string): string {\n if (fns.length === 1) {\n return generateCallHandler(fns[0], contractName)\n }\n\n return fns.map((fn) => generateCallHandler(fn, contractName, getFullSignatureAsSymbolForFunction(fn))).join('\\n')\n}\n\nexport function codegenCallTraceTypes(fns: FunctionDeclaration[]): string {\n if (fns.length === 1) {\n return codegenCallTraceType(fns[0])\n }\n\n return fns.map((fn) => codegenCallTraceType(fn, getFullSignatureAsSymbolForFunction(fn))).join('\\n')\n}\n\nfunction codegenCallTraceType(fn: FunctionDeclaration, overloadedName?: string): string {\n const identifier = capitalizeFirstChar(overloadedName ?? fn.name)\n\n const components = fn.inputs.map((input, i) => ({ name: input.name ?? `arg${i.toString()}`, type: input.type }))\n const arrayOutput = generateOutputComplexTypeAsArray(components, { useStructs: true })\n const objectOutput = generateOutputComplexTypesAsObject(components, { useStructs: true }) || '{}'\n\n return `\n export interface ${identifier}CallObject ${objectOutput}\n \n export type ${identifier}CallTrace = TypedCallTrace<${arrayOutput}, ${identifier}CallObject> & Trace\n `\n}\n\nfunction generateCallHandler(fn: FunctionDeclaration, contractName: string, overloadedName?: string): string {\n const signature = getSignatureForFn(fn)\n // utils.toUtf8Bytes(signature))\n\n const test = new TextEncoder().encode(signature)\n const sighash = '0x' + sha3.keccak_256(test).substring(0, 8)\n\n return `\n onCall${capitalizeFirstChar(overloadedName ?? fn.name)}(\n handler: (call: ${capitalizeFirstChar(overloadedName ?? fn.name)}CallTrace, ctx: ${contractName}Context) => void,\n fetchConfig?: EthFetchConfig\n ) {\n return super.onTrace(\"${sighash}\", handler, fetchConfig);\n }\n`\n}\n\nfunction capitalizeFirstChar(input: string): string {\n if (!input) {\n return input\n }\n return input[0].toUpperCase() + (input.length > 1 ? input.substring(1) : '')\n}\n"]}
@@ -0,0 +1 @@
1
+ export * from './codegen.js';
@@ -0,0 +1,2 @@
1
+ export * from './codegen.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/eth/codegen/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA","sourcesContent":["export * from './codegen.js'\n"]}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getFullSignatureForFunction = exports.getFullSignatureForEventPatched = exports.getFullSignatureAsSymbolForFunction = void 0;
4
- function getFullSignatureAsSymbolForFunction(fn) {
1
+ export function getFullSignatureAsSymbolForFunction(fn) {
5
2
  return `${fn.name}_${fn.inputs
6
3
  .map((e) => {
7
4
  if (e.type.type === 'array') {
@@ -13,7 +10,6 @@ function getFullSignatureAsSymbolForFunction(fn) {
13
10
  })
14
11
  .join('_')}`;
15
12
  }
16
- exports.getFullSignatureAsSymbolForFunction = getFullSignatureAsSymbolForFunction;
17
13
  function formatType(type) {
18
14
  if (type.type === 'array') {
19
15
  return formatType(type.itemType) + '[]';
@@ -26,21 +22,19 @@ function formatType(type) {
26
22
  }
27
23
  }
28
24
  // TODO contribute upstream
29
- function getFullSignatureForEventPatched(event) {
25
+ export function getFullSignatureForEventPatched(event) {
30
26
  return `${event.name}(${event.inputs
31
27
  .map((e) => {
32
28
  return formatType(e.type);
33
29
  })
34
30
  .join(',')})`;
35
31
  }
36
- exports.getFullSignatureForEventPatched = getFullSignatureForEventPatched;
37
32
  // TODO check existed func
38
- function getFullSignatureForFunction(fn) {
33
+ export function getFullSignatureForFunction(fn) {
39
34
  return `${fn.name}(${fn.inputs
40
35
  .map((e) => {
41
36
  return formatType(e.type);
42
37
  })
43
38
  .join(',')})`;
44
39
  }
45
- exports.getFullSignatureForFunction = getFullSignatureForFunction;
46
- //# sourceMappingURL=types.cjs.map
40
+ //# sourceMappingURL=types.js.map