@0xtorch/evm 0.0.10 → 0.0.12

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 (410) hide show
  1. package/.DS_Store +0 -0
  2. package/_cjs/analyzer/analyze.js.map +1 -1
  3. package/_cjs/analyzer/axieMarketplace/analyze.js +37 -130
  4. package/_cjs/analyzer/axieMarketplace/analyze.js.map +1 -1
  5. package/_cjs/analyzer/gasFee/analyze.js +22 -21
  6. package/_cjs/analyzer/gasFee/analyze.js.map +1 -1
  7. package/_cjs/analyzer/index.js +2 -1
  8. package/_cjs/analyzer/index.js.map +1 -1
  9. package/_cjs/analyzer/json/analyze.js +21 -29
  10. package/_cjs/analyzer/json/analyze.js.map +1 -1
  11. package/_cjs/analyzer/json/components/comment.js +47 -0
  12. package/_cjs/analyzer/json/components/comment.js.map +1 -0
  13. package/_cjs/analyzer/json/components/erc1155.js +93 -0
  14. package/_cjs/analyzer/json/components/erc1155.js.map +1 -0
  15. package/_cjs/analyzer/json/components/erc1155Raw.js +31 -0
  16. package/_cjs/analyzer/json/components/erc1155Raw.js.map +1 -0
  17. package/_cjs/analyzer/json/components/erc20.js +90 -0
  18. package/_cjs/analyzer/json/components/erc20.js.map +1 -0
  19. package/_cjs/analyzer/json/components/erc20Raw.js +28 -0
  20. package/_cjs/analyzer/json/components/erc20Raw.js.map +1 -0
  21. package/_cjs/analyzer/json/components/erc721.js +78 -0
  22. package/_cjs/analyzer/json/components/erc721.js.map +1 -0
  23. package/_cjs/analyzer/json/components/erc721Raw.js +29 -0
  24. package/_cjs/analyzer/json/components/erc721Raw.js.map +1 -0
  25. package/_cjs/analyzer/json/components/id.js +47 -0
  26. package/_cjs/analyzer/json/components/id.js.map +1 -0
  27. package/_cjs/analyzer/json/components/internal.js +78 -0
  28. package/_cjs/analyzer/json/components/internal.js.map +1 -0
  29. package/_cjs/analyzer/json/components/internalRaw.js +26 -0
  30. package/_cjs/analyzer/json/components/internalRaw.js.map +1 -0
  31. package/_cjs/analyzer/json/components/logArgument.js +67 -0
  32. package/_cjs/analyzer/json/components/logArgument.js.map +1 -0
  33. package/_cjs/analyzer/json/components/logArgumentRaw.js +41 -0
  34. package/_cjs/analyzer/json/components/logArgumentRaw.js.map +1 -0
  35. package/_cjs/analyzer/json/components/transfer.js +435 -0
  36. package/_cjs/analyzer/json/components/transfer.js.map +1 -0
  37. package/_cjs/analyzer/json/condition/address.js +106 -0
  38. package/_cjs/analyzer/json/condition/address.js.map +1 -0
  39. package/_cjs/analyzer/json/condition/argumentValue.js +31 -0
  40. package/_cjs/analyzer/json/condition/argumentValue.js.map +1 -0
  41. package/_cjs/analyzer/json/condition/index.js +10 -0
  42. package/_cjs/analyzer/json/condition/index.js.map +1 -0
  43. package/_cjs/analyzer/json/condition/value.js +65 -0
  44. package/_cjs/analyzer/json/condition/value.js.map +1 -0
  45. package/_cjs/analyzer/json/generator.js +774 -0
  46. package/_cjs/analyzer/json/generator.js.map +1 -0
  47. package/_cjs/analyzer/json/index.js +3 -1
  48. package/_cjs/analyzer/json/index.js.map +1 -1
  49. package/_cjs/analyzer/json/schemas/generator.js +279 -0
  50. package/_cjs/analyzer/json/schemas/generator.js.map +1 -0
  51. package/_cjs/analyzer/json/schemas/index.js +303 -0
  52. package/_cjs/analyzer/json/schemas/index.js.map +1 -0
  53. package/_cjs/analyzer/json/schemas/utils.js +14 -0
  54. package/_cjs/analyzer/json/schemas/utils.js.map +1 -0
  55. package/_cjs/analyzer/parsers/transfer.js +149 -0
  56. package/_cjs/analyzer/parsers/transfer.js.map +1 -0
  57. package/_cjs/analyzer/seaport/analyze.js +166 -158
  58. package/_cjs/analyzer/seaport/analyze.js.map +1 -1
  59. package/_cjs/analyzer/spam/analyze.js +61 -90
  60. package/_cjs/analyzer/spam/analyze.js.map +1 -1
  61. package/_cjs/analyzer/swap/analyze.js +50 -75
  62. package/_cjs/analyzer/swap/analyze.js.map +1 -1
  63. package/_cjs/analyzer/transfer/analyze.js +37 -84
  64. package/_cjs/analyzer/transfer/analyze.js.map +1 -1
  65. package/_cjs/index.js +3 -2
  66. package/_cjs/index.js.map +1 -1
  67. package/_cjs/utils/create.js +28 -0
  68. package/_cjs/utils/create.js.map +1 -0
  69. package/_cjs/utils/index.js +3 -1
  70. package/_cjs/utils/index.js.map +1 -1
  71. package/_esm/analyzer/analyze.js.map +1 -1
  72. package/_esm/analyzer/axieMarketplace/analyze.js +37 -130
  73. package/_esm/analyzer/axieMarketplace/analyze.js.map +1 -1
  74. package/_esm/analyzer/gasFee/analyze.js +23 -21
  75. package/_esm/analyzer/gasFee/analyze.js.map +1 -1
  76. package/_esm/analyzer/index.js +1 -1
  77. package/_esm/analyzer/index.js.map +1 -1
  78. package/_esm/analyzer/json/analyze.js +22 -29
  79. package/_esm/analyzer/json/analyze.js.map +1 -1
  80. package/_esm/analyzer/json/components/comment.js +43 -0
  81. package/_esm/analyzer/json/components/comment.js.map +1 -0
  82. package/_esm/analyzer/json/components/erc1155.js +88 -0
  83. package/_esm/analyzer/json/components/erc1155.js.map +1 -0
  84. package/_esm/analyzer/json/components/erc1155Raw.js +27 -0
  85. package/_esm/analyzer/json/components/erc1155Raw.js.map +1 -0
  86. package/_esm/analyzer/json/components/erc20.js +85 -0
  87. package/_esm/analyzer/json/components/erc20.js.map +1 -0
  88. package/_esm/analyzer/json/components/erc20Raw.js +24 -0
  89. package/_esm/analyzer/json/components/erc20Raw.js.map +1 -0
  90. package/_esm/analyzer/json/components/erc721.js +73 -0
  91. package/_esm/analyzer/json/components/erc721.js.map +1 -0
  92. package/_esm/analyzer/json/components/erc721Raw.js +25 -0
  93. package/_esm/analyzer/json/components/erc721Raw.js.map +1 -0
  94. package/_esm/analyzer/json/components/id.js +43 -0
  95. package/_esm/analyzer/json/components/id.js.map +1 -0
  96. package/_esm/analyzer/json/components/internal.js +73 -0
  97. package/_esm/analyzer/json/components/internal.js.map +1 -0
  98. package/_esm/analyzer/json/components/internalRaw.js +22 -0
  99. package/_esm/analyzer/json/components/internalRaw.js.map +1 -0
  100. package/_esm/analyzer/json/components/logArgument.js +62 -0
  101. package/_esm/analyzer/json/components/logArgument.js.map +1 -0
  102. package/_esm/analyzer/json/components/logArgumentRaw.js +37 -0
  103. package/_esm/analyzer/json/components/logArgumentRaw.js.map +1 -0
  104. package/_esm/analyzer/json/components/transfer.js +431 -0
  105. package/_esm/analyzer/json/components/transfer.js.map +1 -0
  106. package/_esm/analyzer/json/condition/address.js +102 -0
  107. package/_esm/analyzer/json/condition/address.js.map +1 -0
  108. package/_esm/analyzer/json/condition/argumentValue.js +27 -0
  109. package/_esm/analyzer/json/condition/argumentValue.js.map +1 -0
  110. package/_esm/analyzer/json/condition/index.js +4 -0
  111. package/_esm/analyzer/json/condition/index.js.map +1 -0
  112. package/_esm/analyzer/json/condition/value.js +61 -0
  113. package/_esm/analyzer/json/condition/value.js.map +1 -0
  114. package/_esm/analyzer/json/generator.js +825 -0
  115. package/_esm/analyzer/json/generator.js.map +1 -0
  116. package/_esm/analyzer/json/index.js +1 -0
  117. package/_esm/analyzer/json/index.js.map +1 -1
  118. package/_esm/analyzer/json/schemas/generator.js +340 -0
  119. package/_esm/analyzer/json/schemas/generator.js.map +1 -0
  120. package/_esm/analyzer/json/schemas/index.js +299 -0
  121. package/_esm/analyzer/json/schemas/index.js.map +1 -0
  122. package/_esm/analyzer/json/schemas/utils.js +11 -0
  123. package/_esm/analyzer/json/schemas/utils.js.map +1 -0
  124. package/_esm/analyzer/parsers/transfer.js +129 -0
  125. package/_esm/analyzer/parsers/transfer.js.map +1 -0
  126. package/_esm/analyzer/seaport/analyze.js +167 -158
  127. package/_esm/analyzer/seaport/analyze.js.map +1 -1
  128. package/_esm/analyzer/spam/analyze.js +62 -92
  129. package/_esm/analyzer/spam/analyze.js.map +1 -1
  130. package/_esm/analyzer/swap/analyze.js +51 -75
  131. package/_esm/analyzer/swap/analyze.js.map +1 -1
  132. package/_esm/analyzer/transfer/analyze.js +38 -86
  133. package/_esm/analyzer/transfer/analyze.js.map +1 -1
  134. package/_esm/index.js +1 -1
  135. package/_esm/index.js.map +1 -1
  136. package/_esm/utils/create.js +21 -0
  137. package/_esm/utils/create.js.map +1 -0
  138. package/_esm/utils/index.js +1 -0
  139. package/_esm/utils/index.js.map +1 -1
  140. package/_types/analyzer/analyze.d.ts +11 -16
  141. package/_types/analyzer/analyze.d.ts.map +1 -1
  142. package/_types/analyzer/analyzer.d.ts +9 -1
  143. package/_types/analyzer/analyzer.d.ts.map +1 -1
  144. package/_types/analyzer/axieMarketplace/analyze.d.ts +9 -2
  145. package/_types/analyzer/axieMarketplace/analyze.d.ts.map +1 -1
  146. package/_types/analyzer/gasFee/analyze.d.ts +9 -2
  147. package/_types/analyzer/gasFee/analyze.d.ts.map +1 -1
  148. package/_types/analyzer/index.d.ts +1 -1
  149. package/_types/analyzer/index.d.ts.map +1 -1
  150. package/_types/analyzer/json/analyze.d.ts +9 -2
  151. package/_types/analyzer/json/analyze.d.ts.map +1 -1
  152. package/_types/analyzer/json/components/comment.d.ts +20 -0
  153. package/_types/analyzer/json/components/comment.d.ts.map +1 -0
  154. package/_types/analyzer/json/components/erc1155.d.ts +32 -0
  155. package/_types/analyzer/json/components/erc1155.d.ts.map +1 -0
  156. package/_types/analyzer/json/components/erc1155Raw.d.ts +18 -0
  157. package/_types/analyzer/json/components/erc1155Raw.d.ts.map +1 -0
  158. package/_types/analyzer/json/components/erc20.d.ts +32 -0
  159. package/_types/analyzer/json/components/erc20.d.ts.map +1 -0
  160. package/_types/analyzer/json/components/erc20Raw.d.ts +18 -0
  161. package/_types/analyzer/json/components/erc20Raw.d.ts.map +1 -0
  162. package/_types/analyzer/json/components/erc721.d.ts +32 -0
  163. package/_types/analyzer/json/components/erc721.d.ts.map +1 -0
  164. package/_types/analyzer/json/components/erc721Raw.d.ts +18 -0
  165. package/_types/analyzer/json/components/erc721Raw.d.ts.map +1 -0
  166. package/_types/analyzer/json/components/id.d.ts +20 -0
  167. package/_types/analyzer/json/components/id.d.ts.map +1 -0
  168. package/_types/analyzer/json/components/internal.d.ts +32 -0
  169. package/_types/analyzer/json/components/internal.d.ts.map +1 -0
  170. package/_types/analyzer/json/components/internalRaw.d.ts +18 -0
  171. package/_types/analyzer/json/components/internalRaw.d.ts.map +1 -0
  172. package/_types/analyzer/json/components/logArgument.d.ts +32 -0
  173. package/_types/analyzer/json/components/logArgument.d.ts.map +1 -0
  174. package/_types/analyzer/json/components/logArgumentRaw.d.ts +18 -0
  175. package/_types/analyzer/json/components/logArgumentRaw.d.ts.map +1 -0
  176. package/_types/analyzer/json/components/transfer.d.ts +20 -0
  177. package/_types/analyzer/json/components/transfer.d.ts.map +1 -0
  178. package/_types/analyzer/json/condition/address.d.ts +18 -0
  179. package/_types/analyzer/json/condition/address.d.ts.map +1 -0
  180. package/_types/analyzer/json/condition/argumentValue.d.ts +18 -0
  181. package/_types/analyzer/json/condition/argumentValue.d.ts.map +1 -0
  182. package/_types/analyzer/json/condition/index.d.ts +4 -0
  183. package/_types/analyzer/json/condition/index.d.ts.map +1 -0
  184. package/_types/analyzer/json/condition/value.d.ts +18 -0
  185. package/_types/analyzer/json/condition/value.d.ts.map +1 -0
  186. package/_types/analyzer/json/generator.d.ts +20 -0
  187. package/_types/analyzer/json/generator.d.ts.map +1 -0
  188. package/_types/analyzer/json/index.d.ts +1 -0
  189. package/_types/analyzer/json/index.d.ts.map +1 -1
  190. package/_types/analyzer/json/schemas/generator.d.ts +56942 -0
  191. package/_types/analyzer/json/schemas/generator.d.ts.map +1 -0
  192. package/_types/analyzer/json/schemas/index.d.ts +1348 -0
  193. package/_types/analyzer/json/schemas/index.d.ts.map +1 -0
  194. package/_types/analyzer/json/schemas/utils.d.ts +4 -0
  195. package/_types/analyzer/json/schemas/utils.d.ts.map +1 -0
  196. package/_types/analyzer/json/types.d.ts +42 -172
  197. package/_types/analyzer/json/types.d.ts.map +1 -1
  198. package/_types/analyzer/parsers/transfer.d.ts +46 -0
  199. package/_types/analyzer/parsers/transfer.d.ts.map +1 -0
  200. package/_types/analyzer/seaport/analyze.d.ts +9 -2
  201. package/_types/analyzer/seaport/analyze.d.ts.map +1 -1
  202. package/_types/analyzer/seaport/orderFulfilled.d.ts +8 -8
  203. package/_types/analyzer/spam/analyze.d.ts +9 -2
  204. package/_types/analyzer/spam/analyze.d.ts.map +1 -1
  205. package/_types/analyzer/swap/analyze.d.ts +9 -2
  206. package/_types/analyzer/swap/analyze.d.ts.map +1 -1
  207. package/_types/analyzer/transfer/analyze.d.ts +9 -2
  208. package/_types/analyzer/transfer/analyze.d.ts.map +1 -1
  209. package/_types/analyzer/types.d.ts +6 -6
  210. package/_types/analyzer/types.d.ts.map +1 -1
  211. package/_types/decoder/tests.d.ts +3 -3
  212. package/_types/explorers/definitions/blockscout.d.ts +60 -4
  213. package/_types/explorers/definitions/blockscout.d.ts.map +1 -1
  214. package/_types/explorers/definitions/etherscan.d.ts +60 -4
  215. package/_types/explorers/definitions/etherscan.d.ts.map +1 -1
  216. package/_types/explorers/definitions/roninExplorer.d.ts +60 -4
  217. package/_types/explorers/definitions/roninExplorer.d.ts.map +1 -1
  218. package/_types/explorers/externals/blockscout/getInternalTransactionsByAddress.d.ts +2 -2
  219. package/_types/getAccountsTransactionFulls/getAccountsTransactionFulls.d.ts +9 -1
  220. package/_types/getAccountsTransactionFulls/getAccountsTransactionFulls.d.ts.map +1 -1
  221. package/_types/getTransactionFull/getTransactionFull.d.ts +9 -1
  222. package/_types/getTransactionFull/getTransactionFull.d.ts.map +1 -1
  223. package/_types/index.d.ts +1 -1
  224. package/_types/index.d.ts.map +1 -1
  225. package/_types/types/log.d.ts +6 -6
  226. package/_types/types/transaction.d.ts +3 -4
  227. package/_types/types/transaction.d.ts.map +1 -1
  228. package/_types/utils/create.d.ts +23 -0
  229. package/_types/utils/create.d.ts.map +1 -0
  230. package/_types/utils/index.d.ts +1 -0
  231. package/_types/utils/index.d.ts.map +1 -1
  232. package/analyzer/analyze.ts +6 -30
  233. package/analyzer/axieMarketplace/analyze.ts +67 -150
  234. package/analyzer/gasFee/analyze.ts +29 -36
  235. package/analyzer/index.ts +1 -1
  236. package/analyzer/json/analyze.ts +32 -53
  237. package/analyzer/json/components/comment.ts +62 -0
  238. package/analyzer/json/components/erc1155.ts +132 -0
  239. package/analyzer/json/components/erc1155Raw.ts +46 -0
  240. package/analyzer/json/components/erc20.ts +129 -0
  241. package/analyzer/json/components/erc20Raw.ts +43 -0
  242. package/analyzer/json/components/erc721.ts +117 -0
  243. package/analyzer/json/components/erc721Raw.ts +46 -0
  244. package/analyzer/json/components/id.ts +62 -0
  245. package/analyzer/json/components/internal.ts +117 -0
  246. package/analyzer/json/components/internalRaw.ts +39 -0
  247. package/analyzer/json/components/logArgument.ts +99 -0
  248. package/analyzer/json/components/logArgumentRaw.ts +57 -0
  249. package/analyzer/json/components/transfer.ts +531 -0
  250. package/analyzer/json/condition/address.ts +124 -0
  251. package/analyzer/json/condition/argumentValue.ts +43 -0
  252. package/analyzer/json/condition/index.ts +3 -0
  253. package/analyzer/json/condition/value.ts +76 -0
  254. package/analyzer/json/generator.ts +1166 -0
  255. package/analyzer/json/index.ts +1 -0
  256. package/analyzer/json/schemas/generator.ts +387 -0
  257. package/analyzer/json/schemas/index.ts +363 -0
  258. package/analyzer/json/schemas/utils.ts +12 -0
  259. package/analyzer/json/types.ts +111 -207
  260. package/analyzer/parsers/transfer.ts +301 -0
  261. package/analyzer/seaport/analyze.ts +229 -196
  262. package/analyzer/spam/analyze.ts +79 -112
  263. package/analyzer/swap/analyze.ts +67 -101
  264. package/analyzer/transfer/analyze.ts +54 -100
  265. package/analyzer/types.ts +5 -21
  266. package/index.ts +1 -0
  267. package/package.json +3 -3
  268. package/types/transaction.ts +2 -14
  269. package/utils/create.ts +57 -0
  270. package/utils/index.ts +1 -0
  271. package/_cjs/analyzer/createAccountActionByAction/addLiquidity.js +0 -28
  272. package/_cjs/analyzer/createAccountActionByAction/addLiquidity.js.map +0 -1
  273. package/_cjs/analyzer/createAccountActionByAction/atomicArbitrage.js +0 -79
  274. package/_cjs/analyzer/createAccountActionByAction/atomicArbitrage.js.map +0 -1
  275. package/_cjs/analyzer/createAccountActionByAction/bridgeFrom.js +0 -38
  276. package/_cjs/analyzer/createAccountActionByAction/bridgeFrom.js.map +0 -1
  277. package/_cjs/analyzer/createAccountActionByAction/bridgeTo.js +0 -38
  278. package/_cjs/analyzer/createAccountActionByAction/bridgeTo.js.map +0 -1
  279. package/_cjs/analyzer/createAccountActionByAction/buyNft.js +0 -59
  280. package/_cjs/analyzer/createAccountActionByAction/buyNft.js.map +0 -1
  281. package/_cjs/analyzer/createAccountActionByAction/createAccountActionByAction.js +0 -69
  282. package/_cjs/analyzer/createAccountActionByAction/createAccountActionByAction.js.map +0 -1
  283. package/_cjs/analyzer/createAccountActionByAction/deposit.js +0 -41
  284. package/_cjs/analyzer/createAccountActionByAction/deposit.js.map +0 -1
  285. package/_cjs/analyzer/createAccountActionByAction/depositWithBond.js +0 -28
  286. package/_cjs/analyzer/createAccountActionByAction/depositWithBond.js.map +0 -1
  287. package/_cjs/analyzer/createAccountActionByAction/freeMintNft.js +0 -32
  288. package/_cjs/analyzer/createAccountActionByAction/freeMintNft.js.map +0 -1
  289. package/_cjs/analyzer/createAccountActionByAction/index.js +0 -6
  290. package/_cjs/analyzer/createAccountActionByAction/index.js.map +0 -1
  291. package/_cjs/analyzer/createAccountActionByAction/removeLiquidity.js +0 -28
  292. package/_cjs/analyzer/createAccountActionByAction/removeLiquidity.js.map +0 -1
  293. package/_cjs/analyzer/createAccountActionByAction/spam.js +0 -58
  294. package/_cjs/analyzer/createAccountActionByAction/spam.js.map +0 -1
  295. package/_cjs/analyzer/createAccountActionByAction/trade.js +0 -59
  296. package/_cjs/analyzer/createAccountActionByAction/trade.js.map +0 -1
  297. package/_cjs/analyzer/createAccountActionByAction/transactionFee.js +0 -29
  298. package/_cjs/analyzer/createAccountActionByAction/transactionFee.js.map +0 -1
  299. package/_cjs/analyzer/createAccountActionByAction/transfer.js +0 -74
  300. package/_cjs/analyzer/createAccountActionByAction/transfer.js.map +0 -1
  301. package/_cjs/analyzer/createAccountActionByAction/withdraw.js +0 -38
  302. package/_cjs/analyzer/createAccountActionByAction/withdraw.js.map +0 -1
  303. package/_cjs/analyzer/createAccountActionByAction/withdrawWithBond.js +0 -28
  304. package/_cjs/analyzer/createAccountActionByAction/withdrawWithBond.js.map +0 -1
  305. package/_cjs/analyzer/json/generatorAnyLog.js +0 -163
  306. package/_cjs/analyzer/json/generatorAnyLog.js.map +0 -1
  307. package/_cjs/analyzer/json/generatorAnyTokenTransfer.js +0 -102
  308. package/_cjs/analyzer/json/generatorAnyTokenTransfer.js.map +0 -1
  309. package/_cjs/analyzer/json/generatorSpecificTokenTransfer.js +0 -343
  310. package/_cjs/analyzer/json/generatorSpecificTokenTransfer.js.map +0 -1
  311. package/_esm/analyzer/createAccountActionByAction/addLiquidity.js +0 -24
  312. package/_esm/analyzer/createAccountActionByAction/addLiquidity.js.map +0 -1
  313. package/_esm/analyzer/createAccountActionByAction/atomicArbitrage.js +0 -79
  314. package/_esm/analyzer/createAccountActionByAction/atomicArbitrage.js.map +0 -1
  315. package/_esm/analyzer/createAccountActionByAction/bridgeFrom.js +0 -34
  316. package/_esm/analyzer/createAccountActionByAction/bridgeFrom.js.map +0 -1
  317. package/_esm/analyzer/createAccountActionByAction/bridgeTo.js +0 -34
  318. package/_esm/analyzer/createAccountActionByAction/bridgeTo.js.map +0 -1
  319. package/_esm/analyzer/createAccountActionByAction/buyNft.js +0 -59
  320. package/_esm/analyzer/createAccountActionByAction/buyNft.js.map +0 -1
  321. package/_esm/analyzer/createAccountActionByAction/createAccountActionByAction.js +0 -80
  322. package/_esm/analyzer/createAccountActionByAction/createAccountActionByAction.js.map +0 -1
  323. package/_esm/analyzer/createAccountActionByAction/deposit.js +0 -38
  324. package/_esm/analyzer/createAccountActionByAction/deposit.js.map +0 -1
  325. package/_esm/analyzer/createAccountActionByAction/depositWithBond.js +0 -24
  326. package/_esm/analyzer/createAccountActionByAction/depositWithBond.js.map +0 -1
  327. package/_esm/analyzer/createAccountActionByAction/freeMintNft.js +0 -28
  328. package/_esm/analyzer/createAccountActionByAction/freeMintNft.js.map +0 -1
  329. package/_esm/analyzer/createAccountActionByAction/index.js +0 -2
  330. package/_esm/analyzer/createAccountActionByAction/index.js.map +0 -1
  331. package/_esm/analyzer/createAccountActionByAction/removeLiquidity.js +0 -24
  332. package/_esm/analyzer/createAccountActionByAction/removeLiquidity.js.map +0 -1
  333. package/_esm/analyzer/createAccountActionByAction/spam.js +0 -54
  334. package/_esm/analyzer/createAccountActionByAction/spam.js.map +0 -1
  335. package/_esm/analyzer/createAccountActionByAction/trade.js +0 -59
  336. package/_esm/analyzer/createAccountActionByAction/trade.js.map +0 -1
  337. package/_esm/analyzer/createAccountActionByAction/transactionFee.js +0 -25
  338. package/_esm/analyzer/createAccountActionByAction/transactionFee.js.map +0 -1
  339. package/_esm/analyzer/createAccountActionByAction/transfer.js +0 -70
  340. package/_esm/analyzer/createAccountActionByAction/transfer.js.map +0 -1
  341. package/_esm/analyzer/createAccountActionByAction/withdraw.js +0 -34
  342. package/_esm/analyzer/createAccountActionByAction/withdraw.js.map +0 -1
  343. package/_esm/analyzer/createAccountActionByAction/withdrawWithBond.js +0 -24
  344. package/_esm/analyzer/createAccountActionByAction/withdrawWithBond.js.map +0 -1
  345. package/_esm/analyzer/json/generatorAnyLog.js +0 -159
  346. package/_esm/analyzer/json/generatorAnyLog.js.map +0 -1
  347. package/_esm/analyzer/json/generatorAnyTokenTransfer.js +0 -98
  348. package/_esm/analyzer/json/generatorAnyTokenTransfer.js.map +0 -1
  349. package/_esm/analyzer/json/generatorSpecificTokenTransfer.js +0 -339
  350. package/_esm/analyzer/json/generatorSpecificTokenTransfer.js.map +0 -1
  351. package/_types/analyzer/createAccountActionByAction/addLiquidity.d.ts +0 -59
  352. package/_types/analyzer/createAccountActionByAction/addLiquidity.d.ts.map +0 -1
  353. package/_types/analyzer/createAccountActionByAction/atomicArbitrage.d.ts +0 -59
  354. package/_types/analyzer/createAccountActionByAction/atomicArbitrage.d.ts.map +0 -1
  355. package/_types/analyzer/createAccountActionByAction/bridgeFrom.d.ts +0 -59
  356. package/_types/analyzer/createAccountActionByAction/bridgeFrom.d.ts.map +0 -1
  357. package/_types/analyzer/createAccountActionByAction/bridgeTo.d.ts +0 -59
  358. package/_types/analyzer/createAccountActionByAction/bridgeTo.d.ts.map +0 -1
  359. package/_types/analyzer/createAccountActionByAction/buyNft.d.ts +0 -59
  360. package/_types/analyzer/createAccountActionByAction/buyNft.d.ts.map +0 -1
  361. package/_types/analyzer/createAccountActionByAction/createAccountActionByAction.d.ts +0 -59
  362. package/_types/analyzer/createAccountActionByAction/createAccountActionByAction.d.ts.map +0 -1
  363. package/_types/analyzer/createAccountActionByAction/deposit.d.ts +0 -59
  364. package/_types/analyzer/createAccountActionByAction/deposit.d.ts.map +0 -1
  365. package/_types/analyzer/createAccountActionByAction/depositWithBond.d.ts +0 -59
  366. package/_types/analyzer/createAccountActionByAction/depositWithBond.d.ts.map +0 -1
  367. package/_types/analyzer/createAccountActionByAction/freeMintNft.d.ts +0 -53
  368. package/_types/analyzer/createAccountActionByAction/freeMintNft.d.ts.map +0 -1
  369. package/_types/analyzer/createAccountActionByAction/index.d.ts +0 -2
  370. package/_types/analyzer/createAccountActionByAction/index.d.ts.map +0 -1
  371. package/_types/analyzer/createAccountActionByAction/removeLiquidity.d.ts +0 -59
  372. package/_types/analyzer/createAccountActionByAction/removeLiquidity.d.ts.map +0 -1
  373. package/_types/analyzer/createAccountActionByAction/spam.d.ts +0 -59
  374. package/_types/analyzer/createAccountActionByAction/spam.d.ts.map +0 -1
  375. package/_types/analyzer/createAccountActionByAction/trade.d.ts +0 -59
  376. package/_types/analyzer/createAccountActionByAction/trade.d.ts.map +0 -1
  377. package/_types/analyzer/createAccountActionByAction/transactionFee.d.ts +0 -59
  378. package/_types/analyzer/createAccountActionByAction/transactionFee.d.ts.map +0 -1
  379. package/_types/analyzer/createAccountActionByAction/transfer.d.ts +0 -59
  380. package/_types/analyzer/createAccountActionByAction/transfer.d.ts.map +0 -1
  381. package/_types/analyzer/createAccountActionByAction/withdraw.d.ts +0 -59
  382. package/_types/analyzer/createAccountActionByAction/withdraw.d.ts.map +0 -1
  383. package/_types/analyzer/createAccountActionByAction/withdrawWithBond.d.ts +0 -59
  384. package/_types/analyzer/createAccountActionByAction/withdrawWithBond.d.ts.map +0 -1
  385. package/_types/analyzer/json/generatorAnyLog.d.ts +0 -55
  386. package/_types/analyzer/json/generatorAnyLog.d.ts.map +0 -1
  387. package/_types/analyzer/json/generatorAnyTokenTransfer.d.ts +0 -54
  388. package/_types/analyzer/json/generatorAnyTokenTransfer.d.ts.map +0 -1
  389. package/_types/analyzer/json/generatorSpecificTokenTransfer.d.ts +0 -55
  390. package/_types/analyzer/json/generatorSpecificTokenTransfer.d.ts.map +0 -1
  391. package/analyzer/createAccountActionByAction/addLiquidity.ts +0 -60
  392. package/analyzer/createAccountActionByAction/atomicArbitrage.ts +0 -115
  393. package/analyzer/createAccountActionByAction/bridgeFrom.ts +0 -61
  394. package/analyzer/createAccountActionByAction/bridgeTo.ts +0 -61
  395. package/analyzer/createAccountActionByAction/buyNft.ts +0 -106
  396. package/analyzer/createAccountActionByAction/createAccountActionByAction.ts +0 -181
  397. package/analyzer/createAccountActionByAction/deposit.ts +0 -64
  398. package/analyzer/createAccountActionByAction/depositWithBond.ts +0 -60
  399. package/analyzer/createAccountActionByAction/freeMintNft.ts +0 -54
  400. package/analyzer/createAccountActionByAction/index.ts +0 -1
  401. package/analyzer/createAccountActionByAction/removeLiquidity.ts +0 -60
  402. package/analyzer/createAccountActionByAction/spam.ts +0 -79
  403. package/analyzer/createAccountActionByAction/trade.ts +0 -105
  404. package/analyzer/createAccountActionByAction/transactionFee.ts +0 -51
  405. package/analyzer/createAccountActionByAction/transfer.ts +0 -95
  406. package/analyzer/createAccountActionByAction/withdraw.ts +0 -61
  407. package/analyzer/createAccountActionByAction/withdrawWithBond.ts +0 -60
  408. package/analyzer/json/generatorAnyLog.ts +0 -207
  409. package/analyzer/json/generatorAnyTokenTransfer.ts +0 -118
  410. package/analyzer/json/generatorSpecificTokenTransfer.ts +0 -425
@@ -1,21 +1,30 @@
1
- import { createBigDecimal } from '@0xtorch/big-decimal';
2
- import { createEvmAccount } from '../../creates/createEvmAccount';
3
- import { toLowerHex } from '../../types';
4
- import { createAccountActionByAction } from '../createAccountActionByAction';
1
+ import { parseNormalActionToAccountActions } from '@0xtorch/core';
2
+ import { createEvmAddressId } from '../../utils';
3
+ import { createEvmActionSource } from '../../utils/create';
4
+ import { parseErc1155TransferToActionTransferIn, parseErc20TransferToActionTransferIn, parseErc20TransferToActionTransferNone, parseErc721TransferToActionTransferIn, parseInternalTransactionToActionTransferNone, parseTransactionValueToActionTransferNone, } from '../parsers/transfer';
5
5
  export const analyzeAsSpam = ({ chain, transaction, accountAddresses, }) => {
6
6
  // 全ての native token(include internalTx),erc20,721,1155 transfer を transfer action として normal action 作成
7
7
  const normalActions = generateNormalActions(chain, transaction);
8
8
  // accountAddresses が含まれているものについて account action 作成
9
- const optionalAccountActions = normalActions.map((action) => createAccountActionByAction(action, transaction, accountAddresses));
10
- const accountActions = optionalAccountActions
11
- .filter((action) => action !== undefined)
12
- .map((action, index) => ({ ...action, order: index }));
9
+ const accountIds = new Set(accountAddresses.map((address) => createEvmAddressId({ chainId: chain.id, address })));
10
+ const source = createEvmActionSource({
11
+ chainId: chain.id,
12
+ transactionHash: transaction.transactionHash,
13
+ });
14
+ const accountActions = normalActions.flatMap((action) => parseNormalActionToAccountActions({
15
+ action,
16
+ accountIds,
17
+ source,
18
+ // TODO 値を入れる
19
+ cexAccountIds: undefined,
20
+ }));
13
21
  return Promise.resolve({
14
22
  actions: normalActions,
15
23
  accountActions: accountActions,
16
24
  });
17
25
  };
18
- const generateNormalActions = (chain, { from, to, value, block, internalTransactions, erc20Transfers, erc721Transfers, erc1155Transfers, app, nativeTokenPrice, }) => {
26
+ const generateNormalActions = (chain, transaction) => {
27
+ const { to, value, block, internalTransactions, erc20Transfers, erc721Transfers, erc1155Transfers, app, } = transaction;
19
28
  const mut_actions = [];
20
29
  if (value > 0 && to !== null) {
21
30
  mut_actions.push({
@@ -26,21 +35,10 @@ const generateNormalActions = (chain, { from, to, value, block, internalTransact
26
35
  comment: undefined,
27
36
  app,
28
37
  transfers: [
29
- {
30
- target: '',
31
- direction: 'none',
32
- from: createEvmAccount({
33
- address: toLowerHex(from),
34
- chainId: chain.id,
35
- }),
36
- to: createEvmAccount({
37
- address: toLowerHex(to),
38
- chainId: chain.id,
39
- }),
40
- asset: chain.nativeToken.currency,
41
- amount: createBigDecimal(value, chain.nativeToken.decimals),
42
- price: nativeTokenPrice,
43
- },
38
+ parseTransactionValueToActionTransferNone({
39
+ chain,
40
+ transaction,
41
+ }),
44
42
  ],
45
43
  });
46
44
  }
@@ -56,21 +54,10 @@ const generateNormalActions = (chain, { from, to, value, block, internalTransact
56
54
  comment: undefined,
57
55
  app,
58
56
  transfers: [
59
- {
60
- target: '',
61
- direction: 'none',
62
- from: createEvmAccount({
63
- address: internalTx.from,
64
- chainId: chain.id,
65
- }),
66
- to: createEvmAccount({
67
- address: internalTx.to,
68
- chainId: chain.id,
69
- }),
70
- asset: chain.nativeToken.currency,
71
- amount: createBigDecimal(internalTx.value, chain.nativeToken.decimals),
72
- price: nativeTokenPrice,
73
- },
57
+ parseInternalTransactionToActionTransferNone({
58
+ chain,
59
+ internalTransaction: internalTx,
60
+ }),
74
61
  ],
75
62
  });
76
63
  }
@@ -81,31 +68,38 @@ const generateNormalActions = (chain, { from, to, value, block, internalTransact
81
68
  ].sort((a, b) => a.logIndex - b.logIndex)) {
82
69
  switch (transfer.type) {
83
70
  case 'Erc20Transfer': {
84
- mut_actions.push({
85
- type: 'NormalAction',
86
- action: transfer.price === undefined ? 'spam' : 'transfer',
87
- evidence: 'contract',
88
- timestamp: Number(block.timestamp) * 1000,
89
- comment: undefined,
90
- app,
91
- transfers: [
92
- {
93
- target: '',
94
- direction: 'none',
95
- from: createEvmAccount({
96
- address: transfer.from,
71
+ if (transfer.price === undefined) {
72
+ mut_actions.push({
73
+ type: 'NormalAction',
74
+ action: 'spam',
75
+ evidence: 'contract',
76
+ timestamp: Number(block.timestamp) * 1000,
77
+ comment: undefined,
78
+ app,
79
+ transfers: [
80
+ parseErc20TransferToActionTransferIn({
97
81
  chainId: chain.id,
82
+ transfer,
98
83
  }),
99
- to: createEvmAccount({
100
- address: transfer.to,
84
+ ],
85
+ });
86
+ }
87
+ else {
88
+ mut_actions.push({
89
+ type: 'NormalAction',
90
+ action: 'transfer',
91
+ evidence: 'contract',
92
+ timestamp: Number(block.timestamp) * 1000,
93
+ comment: undefined,
94
+ app,
95
+ transfers: [
96
+ parseErc20TransferToActionTransferNone({
101
97
  chainId: chain.id,
98
+ transfer,
102
99
  }),
103
- asset: transfer.token.currency,
104
- amount: createBigDecimal(transfer.value, transfer.token.decimals),
105
- price: transfer.price,
106
- },
107
- ],
108
- });
100
+ ],
101
+ });
102
+ }
109
103
  break;
110
104
  }
111
105
  case 'Erc721Transfer': {
@@ -117,22 +111,10 @@ const generateNormalActions = (chain, { from, to, value, block, internalTransact
117
111
  comment: undefined,
118
112
  app,
119
113
  transfers: [
120
- {
121
- target: '',
122
- direction: 'none',
123
- from: createEvmAccount({
124
- address: transfer.from,
125
- chainId: chain.id,
126
- }),
127
- to: createEvmAccount({
128
- address: transfer.to,
129
- chainId: chain.id,
130
- }),
131
- asset: transfer.nft,
132
- amount: createBigDecimal('1'),
133
- // TODO 適切な値を入れる (一律 undefined を入れたい)
134
- price: undefined,
135
- },
114
+ parseErc721TransferToActionTransferIn({
115
+ chainId: chain.id,
116
+ transfer,
117
+ }),
136
118
  ],
137
119
  });
138
120
  break;
@@ -146,22 +128,10 @@ const generateNormalActions = (chain, { from, to, value, block, internalTransact
146
128
  comment: undefined,
147
129
  app,
148
130
  transfers: [
149
- {
150
- target: '',
151
- direction: 'none',
152
- from: createEvmAccount({
153
- address: transfer.from,
154
- chainId: chain.id,
155
- }),
156
- to: createEvmAccount({
157
- address: transfer.to,
158
- chainId: chain.id,
159
- }),
160
- asset: transfer.nft,
161
- amount: createBigDecimal(transfer.value, 0),
162
- // TODO 適切な値を入れる (一律 undefined を入れたい)
163
- price: undefined,
164
- },
131
+ parseErc1155TransferToActionTransferIn({
132
+ chainId: chain.id,
133
+ transfer,
134
+ }),
165
135
  ],
166
136
  });
167
137
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../analyzer/spam/analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../analyzer/spam/analyze.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import { createBigDecimal } from '@0xtorch/big-decimal';
1
+ import { parseNormalActionToAccountActions } from '@0xtorch/core';
2
2
  import { zeroAddress } from 'viem';
3
- import { createEvmAccount } from '../../creates/createEvmAccount';
4
3
  import { toLowerHex } from '../../types';
5
- import { createAccountActionByAction } from '../createAccountActionByAction';
4
+ import { createEvmAddressId } from '../../utils';
5
+ import { createEvmActionSource } from '../../utils/create';
6
+ import { parseErc20TransferToActionTransferIn, parseErc20TransferToActionTransferOut, parseInternalTransactionToActionTransferIn, parseInternalTransactionToActionTransferOut, } from '../parsers/transfer';
6
7
  import { parseToTraderJoeLBPairSwap } from './traderJoeLBPairSwap';
7
8
  import { parseToUniv2SwapLog } from './univ2PairSwap';
8
9
  import { parseToUniv3SwapLog } from './univ3PoolSwap';
@@ -121,10 +122,21 @@ export const analyzeSwap = ({ chain, transaction, accountAddresses, }) => {
121
122
  // normal action を生成
122
123
  const normalAction = generateNormalAction(swap, chain, timestamp);
123
124
  // account action を生成
124
- const accountAction = createAccountActionByAction(normalAction, transaction, accountAddresses);
125
+ const accountIds = new Set(accountAddresses.map((address) => createEvmAddressId({ chainId: chain.id, address })));
126
+ const source = createEvmActionSource({
127
+ chainId: chain.id,
128
+ transactionHash: transaction.transactionHash,
129
+ });
130
+ const accountActions = parseNormalActionToAccountActions({
131
+ action: normalAction,
132
+ accountIds,
133
+ source,
134
+ // TODO 値を入れる
135
+ cexAccountIds: undefined,
136
+ });
125
137
  return Promise.resolve({
126
138
  actions: [normalAction],
127
- accountActions: accountAction === undefined ? [] : [accountAction],
139
+ accountActions,
128
140
  });
129
141
  };
130
142
  const generateNormalAction = (swap, chain, timestamp) => {
@@ -144,24 +156,9 @@ const generateNormalAction = (swap, chain, timestamp) => {
144
156
  };
145
157
  const generateNormalActionAtomicArbitrage = (swap, chain, timestamp) => {
146
158
  const { transferIn, transferOut } = swap;
147
- const transferInAsset = transferIn.type === 'Erc20Transfer'
148
- ? transferIn.token.currency
149
- : chain.nativeToken.currency;
150
- const transferOutAsset = transferOut.type === 'Erc20Transfer'
151
- ? transferOut.token.currency
152
- : chain.nativeToken.currency;
153
- if (transferIn.to === undefined ||
154
- transferOut.to === undefined ||
155
- transferInAsset === undefined ||
156
- transferOutAsset === undefined) {
159
+ if (transferIn.to === undefined || transferOut.to === undefined) {
157
160
  throw new Error('invalid swap');
158
161
  }
159
- const transferInDecimals = transferIn.type === 'Erc20Transfer'
160
- ? transferIn.token.decimals
161
- : chain.nativeToken.decimals;
162
- const transferOutDecimals = transferOut.type === 'Erc20Transfer'
163
- ? transferOut.token.decimals
164
- : chain.nativeToken.decimals;
165
162
  return {
166
163
  type: 'NormalAction',
167
164
  action: 'atomic-arbitrage',
@@ -170,50 +167,32 @@ const generateNormalActionAtomicArbitrage = (swap, chain, timestamp) => {
170
167
  comment: undefined,
171
168
  app: undefined,
172
169
  transfers: [
173
- {
174
- target: transferIn.from,
175
- direction: 'out',
176
- from: createEvmAccount({ address: transferIn.from, chainId: chain.id }),
177
- to: createEvmAccount({ address: transferIn.to, chainId: chain.id }),
178
- asset: transferInAsset,
179
- amount: createBigDecimal(transferIn.value, transferInDecimals),
180
- price: transferIn.price,
181
- },
182
- {
183
- target: transferOut.to,
184
- direction: 'in',
185
- from: createEvmAccount({
186
- address: transferOut.from,
170
+ transferIn.type === 'InternalTransaction'
171
+ ? parseInternalTransactionToActionTransferOut({
172
+ chain,
173
+ internalTransaction: transferIn,
174
+ })
175
+ : parseErc20TransferToActionTransferOut({
176
+ chainId: chain.id,
177
+ transfer: transferIn,
178
+ }),
179
+ transferOut.type === 'InternalTransaction'
180
+ ? parseInternalTransactionToActionTransferIn({
181
+ chain,
182
+ internalTransaction: transferOut,
183
+ })
184
+ : parseErc20TransferToActionTransferIn({
187
185
  chainId: chain.id,
186
+ transfer: transferOut,
188
187
  }),
189
- to: createEvmAccount({ address: transferOut.to, chainId: chain.id }),
190
- asset: transferOutAsset,
191
- amount: createBigDecimal(transferOut.value, transferOutDecimals),
192
- price: transferOut.price,
193
- },
194
188
  ],
195
189
  };
196
190
  };
197
191
  const generateNormalActionTrade = (swap, chain, timestamp) => {
198
192
  const { transferIn, transferOut } = swap;
199
- const transferInAsset = transferIn.type === 'Erc20Transfer'
200
- ? transferIn.token.currency
201
- : chain.nativeToken.currency;
202
- const transferOutAsset = transferOut.type === 'Erc20Transfer'
203
- ? transferOut.token.currency
204
- : chain.nativeToken.currency;
205
- if (transferIn.to === undefined ||
206
- transferOut.to === undefined ||
207
- transferInAsset === undefined ||
208
- transferOutAsset === undefined) {
193
+ if (transferIn.to === undefined || transferOut.to === undefined) {
209
194
  throw new Error('invalid swap');
210
195
  }
211
- const transferInDecimals = transferIn.type === 'Erc20Transfer'
212
- ? transferIn.token.decimals
213
- : chain.nativeToken.decimals;
214
- const transferOutDecimals = transferOut.type === 'Erc20Transfer'
215
- ? transferOut.token.decimals
216
- : chain.nativeToken.decimals;
217
196
  return {
218
197
  type: 'NormalAction',
219
198
  action: 'trade',
@@ -222,27 +201,24 @@ const generateNormalActionTrade = (swap, chain, timestamp) => {
222
201
  comment: undefined,
223
202
  app: undefined,
224
203
  transfers: [
225
- {
226
- target: transferIn.from,
227
- direction: 'out',
228
- from: createEvmAccount({ address: transferIn.from, chainId: chain.id }),
229
- to: createEvmAccount({ address: transferIn.to, chainId: chain.id }),
230
- asset: transferInAsset,
231
- amount: createBigDecimal(transferIn.value, transferInDecimals),
232
- price: transferIn.price,
233
- },
234
- {
235
- target: transferOut.to,
236
- direction: 'in',
237
- from: createEvmAccount({
238
- address: transferOut.from,
204
+ transferIn.type === 'InternalTransaction'
205
+ ? parseInternalTransactionToActionTransferOut({
206
+ chain,
207
+ internalTransaction: transferIn,
208
+ })
209
+ : parseErc20TransferToActionTransferOut({
210
+ chainId: chain.id,
211
+ transfer: transferIn,
212
+ }),
213
+ transferOut.type === 'InternalTransaction'
214
+ ? parseInternalTransactionToActionTransferIn({
215
+ chain,
216
+ internalTransaction: transferOut,
217
+ })
218
+ : parseErc20TransferToActionTransferIn({
239
219
  chainId: chain.id,
220
+ transfer: transferOut,
240
221
  }),
241
- to: createEvmAccount({ address: transferOut.to, chainId: chain.id }),
242
- asset: transferOutAsset,
243
- amount: createBigDecimal(transferOut.value, transferOutDecimals),
244
- price: transferOut.price,
245
- },
246
222
  ],
247
223
  };
248
224
  };
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../analyzer/swap/analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../analyzer/swap/analyze.ts"],"names":[],"mappings":"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"}