four-flap-meme-sdk 2.2.0 → 2.2.2

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 (467) hide show
  1. package/README.en.md +6 -41
  2. package/README.md +0 -31
  3. package/README.zh-CN.md +6 -41
  4. package/dist/chains/bsc/four/approve-tokenmanager.d.ts +26 -1
  5. package/dist/chains/bsc/four/approve-tokenmanager.js +113 -1
  6. package/dist/chains/bsc/four/config.d.ts +67 -5
  7. package/dist/chains/bsc/four/config.js +114 -2
  8. package/dist/chains/bsc/four/core.d.ts +4 -1
  9. package/dist/chains/bsc/four/core.js +592 -1
  10. package/dist/chains/bsc/four/index.d.ts +6 -6
  11. package/dist/chains/bsc/four/index.js +6 -6
  12. package/dist/chains/bsc/four/internal.d.ts +46 -2
  13. package/dist/chains/bsc/four/internal.js +239 -2
  14. package/dist/chains/bsc/four/pancake-proxy.d.ts +28 -1
  15. package/dist/chains/bsc/four/pancake-proxy.js +687 -1
  16. package/dist/chains/bsc/four/private.d.ts +27 -1
  17. package/dist/chains/bsc/four/private.js +477 -1
  18. package/dist/chains/bsc/four/submit.d.ts +315 -2
  19. package/dist/chains/bsc/four/submit.js +752 -2
  20. package/dist/chains/bsc/four/swap-buy-first.d.ts +55 -2
  21. package/dist/chains/bsc/four/swap-buy-first.js +507 -2
  22. package/dist/chains/bsc/four/swap-internal.d.ts +3 -1
  23. package/dist/chains/bsc/four/swap-internal.js +18 -1
  24. package/dist/chains/bsc/four/swap.d.ts +144 -2
  25. package/dist/chains/bsc/four/swap.js +766 -2
  26. package/dist/chains/bsc/four/types.d.ts +476 -1
  27. package/dist/chains/bsc/four/utils.d.ts +18 -5
  28. package/dist/chains/bsc/four/utils.js +1552 -5
  29. package/dist/chains/bsc/pancake/bundle-buy-first.d.ts +91 -1
  30. package/dist/chains/bsc/pancake/bundle-buy-first.js +212 -97
  31. package/dist/chains/bsc/pancake/bundle-swap.d.ts +79 -1
  32. package/dist/chains/bsc/pancake/bundle-swap.js +726 -114
  33. package/dist/chains/bsc/pancake/index.d.ts +2 -4
  34. package/dist/chains/bsc/pancake/index.js +3 -1
  35. package/dist/chains/bsc/platforms/iro/factory.js +1 -3
  36. package/dist/chains/bsc/platforms/iro/index.d.ts +5 -5
  37. package/dist/chains/bsc/platforms/iro/index.js +3 -3
  38. package/dist/chains/bsc/platforms/iro/pool.js +10 -31
  39. package/dist/chains/bsc/platforms/iro/token.js +1 -4
  40. package/dist/chains/eni/batch-router/bundle-approve.js +3 -4
  41. package/dist/chains/eni/batch-router/transfer.js +25 -55
  42. package/dist/chains/eni/batch-router/utils.js +6 -32
  43. package/dist/chains/eni/bundler/sign.js +4 -4
  44. package/dist/chains/eni/bundler/submit.js +4 -1
  45. package/dist/chains/eni/constants.js +1 -1
  46. package/dist/chains/eni/index.d.ts +1 -2
  47. package/dist/chains/eni/index.js +0 -1
  48. package/dist/chains/eni/platforms/daoaas/create.js +2 -2
  49. package/dist/chains/eni/platforms/daoaas/index.d.ts +3 -3
  50. package/dist/chains/eni/platforms/daoaas/index.js +3 -3
  51. package/dist/chains/eni/platforms/daoaas/meta.js +4 -8
  52. package/dist/chains/eni/platforms/daoaas/portal-direct.js +44 -28
  53. package/dist/chains/eni/platforms/daoaas/portal.js +6 -10
  54. package/dist/chains/eni/platforms/dswap/liquidity.js +26 -58
  55. package/dist/chains/eni/platforms/fair-launch/index.d.ts +2 -2
  56. package/dist/chains/eni/platforms/fair-launch/index.js +1 -1
  57. package/dist/chains/eni/platforms/fair-launch/launcher.js +46 -87
  58. package/dist/chains/eni/platforms/fair-launch/pool.js +1 -4
  59. package/dist/chains/eni/platforms/fair-launch/presets.js +2 -2
  60. package/dist/chains/eni/platforms/iro/factory.js +1 -3
  61. package/dist/chains/eni/platforms/iro/index.d.ts +6 -6
  62. package/dist/chains/eni/platforms/iro/index.js +4 -4
  63. package/dist/chains/eni/platforms/iro/pool.js +26 -90
  64. package/dist/chains/eni/platforms/iro/token.js +31 -107
  65. package/dist/chains/eni/platforms/iro/whitelist.js +18 -6
  66. package/dist/chains/index.d.ts +0 -13
  67. package/dist/chains/index.js +0 -13
  68. package/dist/chains/xlayer/eip7702/bundle-approve.d.ts +26 -2
  69. package/dist/chains/xlayer/eip7702/bundle-approve.js +21 -11
  70. package/dist/chains/xlayer/eip7702/bundle-buy.d.ts +6 -2
  71. package/dist/chains/xlayer/eip7702/bundle-buy.js +51 -13
  72. package/dist/chains/xlayer/eip7702/bundle-create.js +59 -93
  73. package/dist/chains/xlayer/eip7702/bundle-sell.d.ts +6 -2
  74. package/dist/chains/xlayer/eip7702/bundle-sell.js +97 -26
  75. package/dist/chains/xlayer/eip7702/bundle-swap.d.ts +65 -3
  76. package/dist/chains/xlayer/eip7702/bundle-swap.js +245 -51
  77. package/dist/chains/xlayer/eip7702/constants.d.ts +16 -1
  78. package/dist/chains/xlayer/eip7702/constants.js +21 -3
  79. package/dist/chains/xlayer/eip7702/index.d.ts +46 -28
  80. package/dist/chains/xlayer/eip7702/index.js +81 -28
  81. package/dist/chains/xlayer/eip7702/multi-hop-transfer.d.ts +203 -2
  82. package/dist/chains/xlayer/eip7702/multi-hop-transfer.js +301 -58
  83. package/dist/chains/xlayer/eip7702/types.d.ts +0 -88
  84. package/dist/chains/xlayer/eip7702/utils.d.ts +3 -0
  85. package/dist/chains/xlayer/eip7702/utils.js +28 -23
  86. package/dist/chains/xlayer/eip7702/volume.d.ts +184 -6
  87. package/dist/chains/xlayer/eip7702/volume.js +158 -83
  88. package/dist/chains/xlayer/eoa/constants.js +1 -1
  89. package/dist/chains/xlayer/eoa/dex-helpers.js +5 -5
  90. package/dist/chains/xlayer/eoa/eoa-bundle-swap.d.ts +95 -1
  91. package/dist/chains/xlayer/eoa/eoa-bundle-swap.js +299 -66
  92. package/dist/chains/xlayer/eoa/eoa-wash-volume.d.ts +1 -1
  93. package/dist/chains/xlayer/eoa/eoa-wash-volume.js +23 -18
  94. package/dist/chains/xlayer/eoa/index.d.ts +6 -10
  95. package/dist/chains/xlayer/eoa/index.js +23 -8
  96. package/dist/chains/xlayer/eoa/portal-ops.js +2 -7
  97. package/dist/chains/xlayer/eoa/router-manager.js +3 -3
  98. package/dist/chains/xlayer/eoa/types.d.ts +2 -2
  99. package/dist/chains/xlayer/eoa/types.js +3 -1
  100. package/dist/chains/xlayer/index.d.ts +2 -3
  101. package/dist/chains/xlayer/index.js +7 -4
  102. package/dist/contracts/helper3.d.ts +5 -20
  103. package/dist/contracts/helper3.js +20 -56
  104. package/dist/contracts/tm-bundle-merkle/approve-tokenmanager.d.ts +26 -1
  105. package/dist/contracts/tm-bundle-merkle/approve-tokenmanager.js +113 -1
  106. package/dist/contracts/tm-bundle-merkle/config.d.ts +67 -5
  107. package/dist/contracts/tm-bundle-merkle/config.js +114 -2
  108. package/dist/contracts/tm-bundle-merkle/core.d.ts +4 -1
  109. package/dist/contracts/tm-bundle-merkle/core.js +591 -1
  110. package/dist/contracts/tm-bundle-merkle/index.d.ts +5 -5
  111. package/dist/contracts/tm-bundle-merkle/index.js +5 -5
  112. package/dist/contracts/tm-bundle-merkle/internal.d.ts +46 -2
  113. package/dist/contracts/tm-bundle-merkle/internal.js +238 -2
  114. package/dist/contracts/tm-bundle-merkle/pancake-proxy.d.ts +28 -1
  115. package/dist/contracts/tm-bundle-merkle/pancake-proxy.js +686 -1
  116. package/dist/contracts/tm-bundle-merkle/private.d.ts +27 -1
  117. package/dist/contracts/tm-bundle-merkle/private.js +476 -1
  118. package/dist/contracts/tm-bundle-merkle/submit.d.ts +314 -3
  119. package/dist/contracts/tm-bundle-merkle/submit.js +928 -3
  120. package/dist/contracts/tm-bundle-merkle/swap-buy-first.d.ts +55 -2
  121. package/dist/contracts/tm-bundle-merkle/swap-buy-first.js +506 -2
  122. package/dist/contracts/tm-bundle-merkle/swap-internal.d.ts +3 -1
  123. package/dist/contracts/tm-bundle-merkle/swap-internal.js +18 -1
  124. package/dist/contracts/tm-bundle-merkle/swap.d.ts +144 -2
  125. package/dist/contracts/tm-bundle-merkle/swap.js +764 -2
  126. package/dist/contracts/tm-bundle-merkle/types.d.ts +476 -1
  127. package/dist/contracts/tm-bundle-merkle/utils.d.ts +18 -6
  128. package/dist/contracts/tm-bundle-merkle/utils.js +1501 -6
  129. package/dist/contracts/tm-bundle.d.ts +51 -3
  130. package/dist/contracts/tm-bundle.js +177 -108
  131. package/dist/contracts/tm.d.ts +2 -3
  132. package/dist/contracts/tm.js +32 -37
  133. package/dist/contracts/tm1.js +4 -9
  134. package/dist/contracts/tm2.js +4 -9
  135. package/dist/dex/direct-router.d.ts +125 -3
  136. package/dist/dex/direct-router.js +666 -237
  137. package/dist/flows/create.d.ts +1 -2
  138. package/dist/flows/create.js +6 -6
  139. package/dist/index.d.ts +85 -20
  140. package/dist/index.js +215 -20
  141. package/dist/shared/abis/TaxToken.json +105 -0
  142. package/dist/shared/abis/TokenManager2.json +60 -0
  143. package/dist/shared/abis/common.d.ts +83 -2
  144. package/dist/shared/abis/common.js +252 -2
  145. package/dist/shared/abis/index.d.ts +6 -5
  146. package/dist/shared/abis/index.js +7 -5
  147. package/dist/shared/clients/blockrazor.js +25 -39
  148. package/dist/shared/clients/club48.d.ts +2 -2
  149. package/dist/shared/clients/club48.js +29 -34
  150. package/dist/shared/clients/emitservice.js +0 -2
  151. package/dist/shared/clients/four.d.ts +5 -5
  152. package/dist/shared/clients/four.js +17 -21
  153. package/dist/shared/clients/merkle.js +34 -27
  154. package/dist/shared/constants/addresses.d.ts +1 -1
  155. package/dist/shared/constants/addresses.js +2 -11
  156. package/dist/shared/constants/chains.d.ts +1 -1
  157. package/dist/shared/constants/chains.js +1 -1
  158. package/dist/shared/constants/gas.d.ts +1 -1
  159. package/dist/shared/constants/gas.js +6 -2
  160. package/dist/shared/constants/index.d.ts +0 -3
  161. package/dist/shared/constants/index.js +0 -1
  162. package/dist/shared/flap/abi.js +1 -1
  163. package/dist/shared/flap/constants.d.ts +2 -1
  164. package/dist/shared/flap/constants.js +3 -2
  165. package/dist/shared/flap/curve.js +0 -3
  166. package/dist/shared/flap/errors.d.ts +4 -1
  167. package/dist/shared/flap/errors.js +1 -20
  168. package/dist/shared/flap/index.d.ts +3 -3
  169. package/dist/shared/flap/index.js +3 -3
  170. package/dist/shared/flap/meta.d.ts +18 -16
  171. package/dist/shared/flap/meta.js +17 -12
  172. package/dist/shared/flap/permit.js +2 -5
  173. package/dist/shared/flap/pinata.d.ts +4 -11
  174. package/dist/shared/flap/pinata.js +16 -21
  175. package/dist/shared/flap/portal-bundle-merkle/config.d.ts +72 -3
  176. package/dist/shared/flap/portal-bundle-merkle/config.js +124 -4
  177. package/dist/shared/flap/portal-bundle-merkle/core.d.ts +4 -0
  178. package/dist/shared/flap/portal-bundle-merkle/core.js +172 -92
  179. package/dist/shared/flap/portal-bundle-merkle/create-to-dex.js +99 -106
  180. package/dist/shared/flap/portal-bundle-merkle/curve-to-dex.js +92 -100
  181. package/dist/shared/flap/portal-bundle-merkle/index.d.ts +7 -11
  182. package/dist/shared/flap/portal-bundle-merkle/index.js +7 -4
  183. package/dist/shared/flap/portal-bundle-merkle/pancake-proxy.js +68 -71
  184. package/dist/shared/flap/portal-bundle-merkle/private.js +114 -61
  185. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first.d.ts +64 -1
  186. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first.js +247 -66
  187. package/dist/shared/flap/portal-bundle-merkle/swap.d.ts +71 -2
  188. package/dist/shared/flap/portal-bundle-merkle/swap.js +410 -103
  189. package/dist/shared/flap/portal-bundle-merkle/types.d.ts +7 -73
  190. package/dist/shared/flap/portal-bundle-merkle/utils.d.ts +80 -1
  191. package/dist/shared/flap/portal-bundle-merkle/utils.js +265 -145
  192. package/dist/shared/flap/portal-bundle.js +56 -55
  193. package/dist/shared/flap/portal.d.ts +3 -1
  194. package/dist/shared/flap/portal.js +25 -32
  195. package/dist/shared/flap/vanity.d.ts +5 -1
  196. package/dist/shared/flap/vanity.js +17 -6
  197. package/dist/shared/flap/vault.d.ts +124 -17
  198. package/dist/shared/flap/vault.js +148 -67
  199. package/dist/shared/four/tax-token.d.ts +1 -1
  200. package/dist/shared/four/tax-token.js +7 -27
  201. package/dist/shared/index.d.ts +0 -6
  202. package/dist/shared/index.js +0 -4
  203. package/dist/utils/airdrop-sweep.d.ts +76 -4
  204. package/dist/utils/airdrop-sweep.js +54 -40
  205. package/dist/utils/bundle-helpers.d.ts +243 -9
  206. package/dist/utils/bundle-helpers.js +584 -10
  207. package/dist/utils/constants.d.ts +61 -5
  208. package/dist/utils/constants.js +80 -5
  209. package/dist/utils/contract-factory.d.ts +4 -2
  210. package/dist/utils/contract-factory.js +18 -25
  211. package/dist/utils/erc20.d.ts +89 -7
  212. package/dist/utils/erc20.js +125 -94
  213. package/dist/utils/errors.d.ts +1 -12
  214. package/dist/utils/errors.js +1 -60
  215. package/dist/utils/holders-maker.d.ts +138 -2
  216. package/dist/utils/holders-maker.js +661 -26
  217. package/dist/utils/lp-inspect.d.ts +112 -2
  218. package/dist/utils/lp-inspect.js +223 -73
  219. package/dist/utils/mpcExclusive.d.ts +5 -2
  220. package/dist/utils/mpcExclusive.js +3 -4
  221. package/dist/utils/private-sale.d.ts +58 -2
  222. package/dist/utils/private-sale.js +15 -4
  223. package/dist/utils/provider-factory.d.ts +0 -4
  224. package/dist/utils/provider-factory.js +0 -10
  225. package/dist/utils/quote-helpers.d.ts +45 -4
  226. package/dist/utils/quote-helpers.js +74 -17
  227. package/dist/utils/stealth-transfer.d.ts +28 -2
  228. package/dist/utils/stealth-transfer.js +15 -31
  229. package/dist/utils/swap-helpers.d.ts +15 -2
  230. package/dist/utils/swap-helpers.js +10 -5
  231. package/dist/utils/wallet.d.ts +25 -2
  232. package/dist/utils/wallet.js +8 -9
  233. package/package.json +4 -159
  234. package/dist/__tests__/subpath-exports.test.d.ts +0 -1
  235. package/dist/__tests__/subpath-exports.test.js +0 -64
  236. package/dist/abis/common.d.ts +0 -85
  237. package/dist/abis/common.js +0 -260
  238. package/dist/abis/contracts/TaxToken.json +0 -969
  239. package/dist/abis/contracts/TokenManager2.json +0 -136
  240. package/dist/abis/contracts/index.d.ts +0 -5
  241. package/dist/abis/contracts/index.js +0 -5
  242. package/dist/abis/flap/index.d.ts +0 -3
  243. package/dist/abis/flap/index.js +0 -3
  244. package/dist/abis/flap/portal-events.d.ts +0 -6
  245. package/dist/abis/flap/portal-events.js +0 -17
  246. package/dist/abis/flap/portal.d.ts +0 -6
  247. package/dist/abis/flap/portal.js +0 -37
  248. package/dist/abis/flap/vault.d.ts +0 -171
  249. package/dist/abis/flap/vault.js +0 -91
  250. package/dist/abis/index.d.ts +0 -8
  251. package/dist/abis/index.js +0 -11
  252. package/dist/bundle-core/__tests__/config-helpers.test.d.ts +0 -1
  253. package/dist/bundle-core/__tests__/config-helpers.test.js +0 -28
  254. package/dist/bundle-core/__tests__/facade-parity.test.d.ts +0 -1
  255. package/dist/bundle-core/__tests__/facade-parity.test.js +0 -33
  256. package/dist/bundle-core/__tests__/sign-context-helpers.test.d.ts +0 -1
  257. package/dist/bundle-core/__tests__/sign-context-helpers.test.js +0 -60
  258. package/dist/bundle-core/__tests__/sign-fixture.test.d.ts +0 -1
  259. package/dist/bundle-core/__tests__/sign-fixture.test.js +0 -220
  260. package/dist/bundle-core/__tests__/sign-fixtures.d.ts +0 -10
  261. package/dist/bundle-core/__tests__/sign-fixtures.js +0 -16
  262. package/dist/bundle-core/config-helpers.d.ts +0 -36
  263. package/dist/bundle-core/config-helpers.js +0 -57
  264. package/dist/bundle-core/errors.d.ts +0 -50
  265. package/dist/bundle-core/errors.js +0 -34
  266. package/dist/bundle-core/four-meme/approve-tokenmanager.d.ts +0 -7
  267. package/dist/bundle-core/four-meme/approve-tokenmanager.js +0 -99
  268. package/dist/bundle-core/four-meme/core-helpers.d.ts +0 -8
  269. package/dist/bundle-core/four-meme/core-helpers.js +0 -40
  270. package/dist/bundle-core/four-meme/core.d.ts +0 -4
  271. package/dist/bundle-core/four-meme/core.js +0 -515
  272. package/dist/bundle-core/four-meme/pancake-proxy.d.ts +0 -28
  273. package/dist/bundle-core/four-meme/pancake-proxy.js +0 -679
  274. package/dist/bundle-core/four-meme/private.d.ts +0 -27
  275. package/dist/bundle-core/four-meme/private.js +0 -465
  276. package/dist/bundle-core/four-meme/sign-context-helpers.d.ts +0 -2
  277. package/dist/bundle-core/four-meme/sign-context-helpers.js +0 -2
  278. package/dist/bundle-core/four-meme/swap-buy-first.d.ts +0 -8
  279. package/dist/bundle-core/four-meme/swap-buy-first.js +0 -493
  280. package/dist/bundle-core/four-meme/swap-hop-helpers.d.ts +0 -6
  281. package/dist/bundle-core/four-meme/swap-hop-helpers.js +0 -63
  282. package/dist/bundle-core/four-meme/swap-internal.d.ts +0 -3
  283. package/dist/bundle-core/four-meme/swap-internal.js +0 -18
  284. package/dist/bundle-core/four-meme/swap-sign-helpers.d.ts +0 -27
  285. package/dist/bundle-core/four-meme/swap-sign-helpers.js +0 -105
  286. package/dist/bundle-core/four-meme/swap.d.ts +0 -17
  287. package/dist/bundle-core/four-meme/swap.js +0 -505
  288. package/dist/bundle-core/four-meme/types/buy-first.d.ts +0 -50
  289. package/dist/bundle-core/four-meme/types/buy-first.js +0 -1
  290. package/dist/bundle-core/four-meme/types/core-flow.d.ts +0 -63
  291. package/dist/bundle-core/four-meme/types/core-flow.js +0 -1
  292. package/dist/bundle-core/four-meme/types/index.d.ts +0 -600
  293. package/dist/bundle-core/four-meme/types/index.js +0 -1
  294. package/dist/bundle-core/four-meme/types/swap-internal.d.ts +0 -19
  295. package/dist/bundle-core/four-meme/types/swap-internal.js +0 -1
  296. package/dist/bundle-core/four-meme/types.d.ts +0 -1
  297. package/dist/bundle-core/four-meme/types.js +0 -1
  298. package/dist/bundle-core/four-meme/utils-disperse.d.ts +0 -7
  299. package/dist/bundle-core/four-meme/utils-disperse.js +0 -396
  300. package/dist/bundle-core/four-meme/utils-pairwise.d.ts +0 -8
  301. package/dist/bundle-core/four-meme/utils-pairwise.js +0 -328
  302. package/dist/bundle-core/four-meme/utils-sweep.d.ts +0 -8
  303. package/dist/bundle-core/four-meme/utils-sweep.js +0 -744
  304. package/dist/bundle-core/index.d.ts +0 -8
  305. package/dist/bundle-core/index.js +0 -8
  306. package/dist/bundle-core/internal.d.ts +0 -21
  307. package/dist/bundle-core/internal.js +0 -182
  308. package/dist/bundle-core/sign-context-helpers.d.ts +0 -25
  309. package/dist/bundle-core/sign-context-helpers.js +0 -67
  310. package/dist/bundle-core/submit.d.ts +0 -293
  311. package/dist/bundle-core/submit.js +0 -727
  312. package/dist/bundle-core/types/index.d.ts +0 -8
  313. package/dist/bundle-core/types/index.js +0 -1
  314. package/dist/bundle-core/types.d.ts +0 -1
  315. package/dist/bundle-core/types.js +0 -1
  316. package/dist/chains/bsc/four/utils-disperse.d.ts +0 -1
  317. package/dist/chains/bsc/four/utils-disperse.js +0 -1
  318. package/dist/chains/bsc/four/utils-pairwise.d.ts +0 -1
  319. package/dist/chains/bsc/four/utils-pairwise.js +0 -1
  320. package/dist/chains/bsc/four/utils-sweep.d.ts +0 -1
  321. package/dist/chains/bsc/four/utils-sweep.js +0 -1
  322. package/dist/chains/bsc/iro.d.ts +0 -5
  323. package/dist/chains/bsc/iro.js +0 -4
  324. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.d.ts +0 -159
  325. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.js +0 -117
  326. package/dist/chains/bsc/pancake/bundle-swap-helpers.d.ts +0 -241
  327. package/dist/chains/bsc/pancake/bundle-swap-helpers.js +0 -565
  328. package/dist/chains/eni/flat-aliases.d.ts +0 -10
  329. package/dist/chains/eni/flat-aliases.js +0 -8
  330. package/dist/chains/eni/submit.d.ts +0 -43
  331. package/dist/chains/eni/submit.js +0 -286
  332. package/dist/chains/xlayer/eip7702/flat-aliases.d.ts +0 -13
  333. package/dist/chains/xlayer/eip7702/flat-aliases.js +0 -10
  334. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.d.ts +0 -79
  335. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.js +0 -1
  336. package/dist/chains/xlayer/eip7702/transfer-context-helpers.d.ts +0 -26
  337. package/dist/chains/xlayer/eip7702/transfer-context-helpers.js +0 -57
  338. package/dist/chains/xlayer/eip7702/volume-helpers.d.ts +0 -148
  339. package/dist/chains/xlayer/eip7702/volume-helpers.js +0 -48
  340. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.d.ts +0 -126
  341. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.js +0 -228
  342. package/dist/contracts/tm-bundle-helpers.d.ts +0 -88
  343. package/dist/contracts/tm-bundle-helpers.js +0 -72
  344. package/dist/contracts/tm-bundle-merkle/utils-disperse.d.ts +0 -1
  345. package/dist/contracts/tm-bundle-merkle/utils-disperse.js +0 -1
  346. package/dist/contracts/tm-bundle-merkle/utils-pairwise.d.ts +0 -1
  347. package/dist/contracts/tm-bundle-merkle/utils-pairwise.js +0 -1
  348. package/dist/contracts/tm-bundle-merkle/utils-sweep.d.ts +0 -1
  349. package/dist/contracts/tm-bundle-merkle/utils-sweep.js +0 -1
  350. package/dist/dex/direct-router-helpers.d.ts +0 -264
  351. package/dist/dex/direct-router-helpers.js +0 -539
  352. package/dist/dex/types.d.ts +0 -81
  353. package/dist/dex/types.js +0 -1
  354. package/dist/exports/root-bundle-and-tooling.d.ts +0 -27
  355. package/dist/exports/root-bundle-and-tooling.js +0 -30
  356. package/dist/exports/root-eni-and-bsc-iro.d.ts +0 -26
  357. package/dist/exports/root-eni-and-bsc-iro.js +0 -66
  358. package/dist/exports/root-foundations.d.ts +0 -35
  359. package/dist/exports/root-foundations.js +0 -70
  360. package/dist/exports/root-swap-dex-and-xlayer.d.ts +0 -30
  361. package/dist/exports/root-swap-dex-and-xlayer.js +0 -78
  362. package/dist/flap/index.d.ts +0 -10
  363. package/dist/flap/index.js +0 -8
  364. package/dist/flows/index.d.ts +0 -1
  365. package/dist/flows/index.js +0 -1
  366. package/dist/merkle/index.d.ts +0 -12
  367. package/dist/merkle/index.js +0 -11
  368. package/dist/shared/clients/index.d.ts +0 -8
  369. package/dist/shared/clients/index.js +0 -8
  370. package/dist/shared/constants/quote.d.ts +0 -30
  371. package/dist/shared/constants/quote.js +0 -37
  372. package/dist/shared/flap/portal-bundle-merkle/core-helpers.d.ts +0 -32
  373. package/dist/shared/flap/portal-bundle-merkle/core-helpers.js +0 -83
  374. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.d.ts +0 -125
  375. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.js +0 -113
  376. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.d.ts +0 -149
  377. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.js +0 -259
  378. package/dist/shared/foundation/dex/v3-path.d.ts +0 -6
  379. package/dist/shared/foundation/dex/v3-path.js +0 -35
  380. package/dist/shared/foundation/gas/bundle-gas.d.ts +0 -39
  381. package/dist/shared/foundation/gas/bundle-gas.js +0 -93
  382. package/dist/shared/foundation/gas/profit-hop.d.ts +0 -20
  383. package/dist/shared/foundation/gas/profit-hop.js +0 -72
  384. package/dist/shared/foundation/index.d.ts +0 -13
  385. package/dist/shared/foundation/index.js +0 -12
  386. package/dist/shared/foundation/nonce/nonce-manager.d.ts +0 -17
  387. package/dist/shared/foundation/nonce/nonce-manager.js +0 -180
  388. package/dist/shared/foundation/normalize-unknown.d.ts +0 -9
  389. package/dist/shared/foundation/normalize-unknown.js +0 -29
  390. package/dist/shared/foundation/sdk-logger.d.ts +0 -13
  391. package/dist/shared/foundation/sdk-logger.js +0 -12
  392. package/dist/shared/foundation/tx/build-request.d.ts +0 -17
  393. package/dist/shared/foundation/tx/build-request.js +0 -25
  394. package/dist/shared/foundation/tx/sign-batch.d.ts +0 -5
  395. package/dist/shared/foundation/tx/sign-batch.js +0 -26
  396. package/dist/shared/foundation/tx/wallet-sign-patch.d.ts +0 -1
  397. package/dist/shared/foundation/tx/wallet-sign-patch.js +0 -18
  398. package/dist/shared/foundation/types/airdrop-sweep.d.ts +0 -79
  399. package/dist/shared/foundation/types/airdrop-sweep.js +0 -1
  400. package/dist/shared/foundation/types/erc20.d.ts +0 -65
  401. package/dist/shared/foundation/types/erc20.js +0 -1
  402. package/dist/shared/foundation/types/holders-maker.d.ts +0 -64
  403. package/dist/shared/foundation/types/holders-maker.js +0 -1
  404. package/dist/shared/foundation/types/index.d.ts +0 -7
  405. package/dist/shared/foundation/types/index.js +0 -1
  406. package/dist/shared/foundation/types/lp-inspect.d.ts +0 -102
  407. package/dist/shared/foundation/types/lp-inspect.js +0 -1
  408. package/dist/shared/foundation/types/multicall.d.ts +0 -5
  409. package/dist/shared/foundation/types/multicall.js +0 -1
  410. package/dist/shared/foundation/types/private-sale.d.ts +0 -35
  411. package/dist/shared/foundation/types/private-sale.js +0 -1
  412. package/dist/shared/foundation/types/quote-helpers.d.ts +0 -17
  413. package/dist/shared/foundation/types/quote-helpers.js +0 -1
  414. package/dist/types/errors.d.ts +0 -27
  415. package/dist/types/errors.js +0 -34
  416. package/dist/utils/holders-maker/addresses.d.ts +0 -12
  417. package/dist/utils/holders-maker/addresses.js +0 -15
  418. package/dist/utils/holders-maker/buy-tx.d.ts +0 -44
  419. package/dist/utils/holders-maker/buy-tx.js +0 -278
  420. package/dist/utils/holders-maker/constants.d.ts +0 -6
  421. package/dist/utils/holders-maker/constants.js +0 -7
  422. package/dist/utils/holders-maker/disperse.d.ts +0 -18
  423. package/dist/utils/holders-maker/disperse.js +0 -90
  424. package/dist/utils/holders-maker/routing.d.ts +0 -4
  425. package/dist/utils/holders-maker/routing.js +0 -45
  426. package/dist/utils/holders-maker/transfer-tx.d.ts +0 -4
  427. package/dist/utils/holders-maker/transfer-tx.js +0 -67
  428. package/dist/utils/holders-maker-helpers.d.ts +0 -9
  429. package/dist/utils/holders-maker-helpers.js +0 -9
  430. package/dist/utils/hop-chains.d.ts +0 -35
  431. package/dist/utils/hop-chains.js +0 -215
  432. package/dist/utils/lp-inspect-helpers.d.ts +0 -9
  433. package/dist/utils/lp-inspect-helpers.js +0 -109
  434. package/dist/utils/types/airdrop-sweep.d.ts +0 -1
  435. package/dist/utils/types/airdrop-sweep.js +0 -1
  436. package/dist/utils/types/contract-factory.d.ts +0 -1
  437. package/dist/utils/types/contract-factory.js +0 -1
  438. package/dist/utils/types/erc20.d.ts +0 -1
  439. package/dist/utils/types/erc20.js +0 -1
  440. package/dist/utils/types/errors.d.ts +0 -1
  441. package/dist/utils/types/errors.js +0 -1
  442. package/dist/utils/types/holders-maker.d.ts +0 -1
  443. package/dist/utils/types/holders-maker.js +0 -1
  444. package/dist/utils/types/hop-chains.d.ts +0 -8
  445. package/dist/utils/types/hop-chains.js +0 -1
  446. package/dist/utils/types/index.d.ts +0 -13
  447. package/dist/utils/types/index.js +0 -1
  448. package/dist/utils/types/lp-inspect.d.ts +0 -1
  449. package/dist/utils/types/lp-inspect.js +0 -1
  450. package/dist/utils/types/mpc-exclusive.d.ts +0 -5
  451. package/dist/utils/types/mpc-exclusive.js +0 -1
  452. package/dist/utils/types/private-sale.d.ts +0 -1
  453. package/dist/utils/types/private-sale.js +0 -1
  454. package/dist/utils/types/quote-helpers.d.ts +0 -1
  455. package/dist/utils/types/quote-helpers.js +0 -1
  456. package/dist/utils/types/stealth-transfer.d.ts +0 -44
  457. package/dist/utils/types/stealth-transfer.js +0 -1
  458. package/dist/utils/types/wallet.d.ts +0 -25
  459. package/dist/utils/types/wallet.js +0 -1
  460. package/dist/vanity/index.d.ts +0 -5
  461. package/dist/vanity/index.js +0 -5
  462. package/src/abis/contracts/TaxToken.json +0 -969
  463. package/src/abis/contracts/TokenManager.json +0 -836
  464. package/src/abis/contracts/TokenManager2.json +0 -136
  465. package/src/abis/contracts/TokenManagerHelper3.json +0 -993
  466. /package/dist/{abis/contracts → shared/abis}/TokenManager.json +0 -0
  467. /package/dist/{abis/contracts → shared/abis}/TokenManagerHelper3.json +0 -0
@@ -197,10 +197,10 @@ export function validateLaunchParams(params) {
197
197
  // 模式检测(从参数推断类型)
198
198
  // ============================================================================
199
199
  export function detectLaunchType(params) {
200
- const hasMarketing = params.marketingRates.length > 0 && params.marketingRates.some((r) => r > 0n);
200
+ const hasMarketing = params.marketingRates.length > 0 && params.marketingRates.some(r => r > 0n);
201
201
  const hasBuyback = params.buybackRate > 0n;
202
202
  const hasLpAdd = params.lpAddRate > 0n;
203
- const isBurn = hasMarketing && params.marketingAddrs.every((a) => a.toLowerCase() === DEAD_ADDRESS.toLowerCase());
203
+ const isBurn = hasMarketing && params.marketingAddrs.every(a => a.toLowerCase() === DEAD_ADDRESS.toLowerCase());
204
204
  if (isBurn)
205
205
  return TokenLaunchType.Deflationary;
206
206
  if (hasBuyback && hasMarketing)
@@ -5,14 +5,12 @@
5
5
  */
6
6
  import { Contract, Interface, Wallet, JsonRpcProvider } from 'ethers';
7
7
  import { ENI_CHAIN_ID, ENI_RPC_URL } from '../../constants.js';
8
- import { ENI_IRO_FACTORY_ADDRESS, IRO_FACTORY_ABI, CREATE_PROJECT_GAS_LIMIT } from './constants.js';
8
+ import { ENI_IRO_FACTORY_ADDRESS, IRO_FACTORY_ABI, CREATE_PROJECT_GAS_LIMIT, } from './constants.js';
9
9
  const factoryIface = new Interface(IRO_FACTORY_ABI);
10
10
  // ============================================================================
11
11
  // 只读查询
12
12
  // ============================================================================
13
13
  export class IroFactoryQuery {
14
- provider;
15
- factory;
16
14
  constructor(config = {}) {
17
15
  const rpcUrl = config.rpcUrl ?? ENI_RPC_URL;
18
16
  const chainId = config.chainId ?? ENI_CHAIN_ID;
@@ -8,11 +8,11 @@
8
8
  */
9
9
  export type { WhiteListQuota, IroCreateProjectParams, IroFactoryTokenInfo, IroSubscribeParams, IroPledgeParams, IroTokenPrice, IroPoolRemovePledgeParams, IroPoolExtractParams, IroPoolTransferAwardsParams, IroTokenInfo, IroTxResult, IroCreateProjectResult, IroQueryConfig, IroCreateParams, } from './types.js';
10
10
  export { ENI_IRO_FACTORY_ADDRESS, ENI_IRO_OWNER_ADDRESS, ENI_IRO_SELL_FEE_CONTRACT, ENI_IROSWAP_V2_ROUTER, ENI_IROSWAP_V2_FACTORY, ENI_USDT, IRO_FACTORY_ABI, IRO_TOKEN_ABI, IRO_POOL_ABI, CREATE_PROJECT_GAS_LIMIT, SUBSCRIBE_GAS_LIMIT, POOL_OPERATION_GAS_LIMIT, } from './constants.js';
11
- export { IroFactoryQuery, encodeCreateProjectCall, createProject, parseCreateProjectEvent } from './factory.js';
12
- export { IroTokenQuery, subscribe, pledge, batchSubscribe, batchSubscribeForSubmit } from './token.js';
13
- export type { IroBatchSubscribeForSubmitParams, IroBatchSubscribeForSubmitResult } from './token.js';
14
- export { IroPoolQuery, poolRemovePledge, poolExtract, poolTransferAwards, batchExtract } from './pool.js';
15
- export { ENI_IRO_PLATFORM_URL, setIroApiBase, iroApiCreateProject, iroApiUploadImage } from './api.js';
16
- export type { IroApiCreateProjectRequest, IroApiCreateProjectResponse, IroApiUploadImageResponse } from './api.js';
11
+ export { IroFactoryQuery, encodeCreateProjectCall, createProject, parseCreateProjectEvent, } from './factory.js';
12
+ export { IroTokenQuery, subscribe, pledge, batchSubscribe, batchSubscribeForSubmit, } from './token.js';
13
+ export type { IroBatchSubscribeForSubmitParams, IroBatchSubscribeForSubmitResult, } from './token.js';
14
+ export { IroPoolQuery, poolRemovePledge, poolExtract, poolTransferAwards, batchExtract, } from './pool.js';
15
+ export { ENI_IRO_PLATFORM_URL, setIroApiBase, iroApiCreateProject, iroApiUploadImage, } from './api.js';
16
+ export type { IroApiCreateProjectRequest, IroApiCreateProjectResponse, IroApiUploadImageResponse, } from './api.js';
17
17
  export { IRO_OWNER_WHITELIST_ABI, WHITELIST_GAS_LIMIT, BATCH_WHITELIST_GAS_LIMIT, getTokenWhiteList, addTokenWhiteListForSubmit, batchAddTokenWhiteListForSubmit, removeTokenWhiteListForSubmit, } from './whitelist.js';
18
18
  export type { WhitelistManageConfig, AddWhitelistParams, BatchAddWhitelistParams, RemoveWhitelistParams, GetWhitelistParams, } from './whitelist.js';
@@ -13,19 +13,19 @@ export { ENI_IRO_FACTORY_ADDRESS, ENI_IRO_OWNER_ADDRESS, ENI_IRO_SELL_FEE_CONTRA
13
13
  // ============================================================================
14
14
  // Factory
15
15
  // ============================================================================
16
- export { IroFactoryQuery, encodeCreateProjectCall, createProject, parseCreateProjectEvent } from './factory.js';
16
+ export { IroFactoryQuery, encodeCreateProjectCall, createProject, parseCreateProjectEvent, } from './factory.js';
17
17
  // ============================================================================
18
18
  // Token
19
19
  // ============================================================================
20
- export { IroTokenQuery, subscribe, pledge, batchSubscribe, batchSubscribeForSubmit } from './token.js';
20
+ export { IroTokenQuery, subscribe, pledge, batchSubscribe, batchSubscribeForSubmit, } from './token.js';
21
21
  // ============================================================================
22
22
  // Pool
23
23
  // ============================================================================
24
- export { IroPoolQuery, poolRemovePledge, poolExtract, poolTransferAwards, batchExtract } from './pool.js';
24
+ export { IroPoolQuery, poolRemovePledge, poolExtract, poolTransferAwards, batchExtract, } from './pool.js';
25
25
  // ============================================================================
26
26
  // API
27
27
  // ============================================================================
28
- export { ENI_IRO_PLATFORM_URL, setIroApiBase, iroApiCreateProject, iroApiUploadImage } from './api.js';
28
+ export { ENI_IRO_PLATFORM_URL, setIroApiBase, iroApiCreateProject, iroApiUploadImage, } from './api.js';
29
29
  // ============================================================================
30
30
  // Whitelist Management (IROOwner)
31
31
  // ============================================================================
@@ -11,79 +11,38 @@ const poolIface = new Interface(IRO_POOL_ABI);
11
11
  // 查询
12
12
  // ============================================================================
13
13
  export class IroPoolQuery {
14
- provider;
15
- pool;
16
- poolAddress;
17
14
  constructor(poolAddress, rpcUrl, chainId) {
18
15
  this.poolAddress = poolAddress;
19
16
  this.provider = new JsonRpcProvider(rpcUrl ?? ENI_RPC_URL, chainId ?? ENI_CHAIN_ID, { staticNetwork: true });
20
17
  this.pool = new Contract(poolAddress, IRO_POOL_ABI, this.provider);
21
18
  }
22
- async token() {
23
- return this.pool.token();
24
- }
25
- async totalShare() {
26
- return this.pool.totalShare();
27
- }
28
- async produceNum() {
29
- return this.pool.produceNum();
30
- }
31
- async produceLpNum() {
32
- return this.pool.produceLpNum();
33
- }
34
- async produceLimit() {
35
- return this.pool.produceLimit();
36
- }
37
- async lastAddProduce() {
38
- return this.pool.lastAddProduce();
39
- }
40
- async getDeposit(account) {
41
- return this.pool.getDeposit(account);
42
- }
43
- async getUserPledgeLpForUsdt(user) {
44
- return this.pool.getUserPledgeLpForUsdt(user);
45
- }
46
- async getLPValueForUSDTValue(targetTKAValue) {
47
- return this.pool.getLPValueForUSDTValue(targetTKAValue);
48
- }
19
+ async token() { return this.pool.token(); }
20
+ async totalShare() { return this.pool.totalShare(); }
21
+ async produceNum() { return this.pool.produceNum(); }
22
+ async produceLpNum() { return this.pool.produceLpNum(); }
23
+ async produceLimit() { return this.pool.produceLimit(); }
24
+ async lastAddProduce() { return this.pool.lastAddProduce(); }
25
+ async getDeposit(account) { return this.pool.getDeposit(account); }
26
+ async getUserPledgeLpForUsdt(user) { return this.pool.getUserPledgeLpForUsdt(user); }
27
+ async getLPValueForUSDTValue(targetTKAValue) { return this.pool.getLPValueForUSDTValue(targetTKAValue); }
49
28
  async increaseRateMap(index) {
50
29
  const raw = await this.pool.increaseRateMap(index);
51
30
  return { status: raw[0], rate: BigInt(raw[1]) };
52
31
  }
53
- async totalSupply() {
54
- return this.pool.totalSupply();
55
- }
56
- async balanceOf(account) {
57
- return this.pool.balanceOf(account);
58
- }
59
- async lastPrice() {
60
- return this.pool.lastPrice();
61
- }
32
+ async totalSupply() { return this.pool.totalSupply(); }
33
+ async balanceOf(account) { return this.pool.balanceOf(account); }
34
+ async lastPrice() { return this.pool.lastPrice(); }
62
35
  async userAward(account) {
63
36
  const raw = await this.pool.userAward(account);
64
37
  return {
65
- deposit: BigInt(raw[0]),
66
- debt: BigInt(raw[1]),
67
- share: BigInt(raw[2]),
68
- lastTimestamp: BigInt(raw[3]),
69
- totalDeposit: BigInt(raw[4]),
70
- totalInviteReward: BigInt(raw[5]),
71
- lastInviteReward: BigInt(raw[6]),
72
- pledgeNum: BigInt(raw[7]),
38
+ deposit: BigInt(raw[0]), debt: BigInt(raw[1]), share: BigInt(raw[2]), lastTimestamp: BigInt(raw[3]),
39
+ totalDeposit: BigInt(raw[4]), totalInviteReward: BigInt(raw[5]), lastInviteReward: BigInt(raw[6]), pledgeNum: BigInt(raw[7]),
73
40
  };
74
41
  }
75
- async getUserStake(account) {
76
- return this.pool.getUserStake(account);
77
- }
78
- async ownerAddr() {
79
- return this.pool.ownerAddr();
80
- }
81
- async isInitialized() {
82
- return this.pool.isInitialized();
83
- }
84
- get providerInstance() {
85
- return this.provider;
86
- }
42
+ async getUserStake(account) { return this.pool.getUserStake(account); }
43
+ async ownerAddr() { return this.pool.ownerAddr(); }
44
+ async isInitialized() { return this.pool.isInitialized(); }
45
+ get providerInstance() { return this.provider; }
87
46
  }
88
47
  // ============================================================================
89
48
  // 写入操作 — EIP-1559
@@ -98,14 +57,8 @@ export async function poolRemovePledge(params) {
98
57
  const maxFeePerGas = gasPrice ?? feeData.maxFeePerGas ?? feeData.gasPrice ?? 1000000000n;
99
58
  const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 0n;
100
59
  const signedTx = await wallet.signTransaction({
101
- to: poolAddress,
102
- data: calldata,
103
- nonce,
104
- chainId,
105
- type: 2,
106
- maxFeePerGas,
107
- maxPriorityFeePerGas,
108
- gasLimit: POOL_OPERATION_GAS_LIMIT,
60
+ to: poolAddress, data: calldata, nonce, chainId,
61
+ type: 2, maxFeePerGas, maxPriorityFeePerGas, gasLimit: POOL_OPERATION_GAS_LIMIT,
109
62
  });
110
63
  return { signedTx, from: wallet.address, nonce };
111
64
  }
@@ -119,19 +72,13 @@ export async function poolExtract(params) {
119
72
  const maxFeePerGas = gasPrice ?? feeData.maxFeePerGas ?? feeData.gasPrice ?? 1000000000n;
120
73
  const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 0n;
121
74
  const signedTx = await wallet.signTransaction({
122
- to: poolAddress,
123
- data: calldata,
124
- nonce,
125
- chainId,
126
- type: 2,
127
- maxFeePerGas,
128
- maxPriorityFeePerGas,
129
- gasLimit: POOL_OPERATION_GAS_LIMIT,
75
+ to: poolAddress, data: calldata, nonce, chainId,
76
+ type: 2, maxFeePerGas, maxPriorityFeePerGas, gasLimit: POOL_OPERATION_GAS_LIMIT,
130
77
  });
131
78
  return { signedTx, from: wallet.address, nonce };
132
79
  }
133
80
  export async function poolTransferAwards(params) {
134
- const { rpcUrl = ENI_RPC_URL, chainId = ENI_CHAIN_ID, privateKey, poolAddress, recipients, amounts, gasPrice, } = params;
81
+ const { rpcUrl = ENI_RPC_URL, chainId = ENI_CHAIN_ID, privateKey, poolAddress, recipients, amounts, gasPrice } = params;
135
82
  const provider = new JsonRpcProvider(rpcUrl, chainId, { staticNetwork: true });
136
83
  const wallet = new Wallet(privateKey, provider);
137
84
  const calldata = poolIface.encodeFunctionData('transferAwards', [recipients, amounts]);
@@ -140,14 +87,8 @@ export async function poolTransferAwards(params) {
140
87
  const maxFeePerGas = gasPrice ?? feeData.maxFeePerGas ?? feeData.gasPrice ?? 1000000000n;
141
88
  const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 0n;
142
89
  const signedTx = await wallet.signTransaction({
143
- to: poolAddress,
144
- data: calldata,
145
- nonce,
146
- chainId,
147
- type: 2,
148
- maxFeePerGas,
149
- maxPriorityFeePerGas,
150
- gasLimit: POOL_OPERATION_GAS_LIMIT,
90
+ to: poolAddress, data: calldata, nonce, chainId,
91
+ type: 2, maxFeePerGas, maxPriorityFeePerGas, gasLimit: POOL_OPERATION_GAS_LIMIT,
151
92
  });
152
93
  return { signedTx, from: wallet.address, nonce };
153
94
  }
@@ -157,12 +98,7 @@ export async function batchExtract(params) {
157
98
  const results = [];
158
99
  for (const w of wallets) {
159
100
  const result = await poolExtract({
160
- rpcUrl,
161
- chainId,
162
- privateKey: w.privateKey,
163
- poolAddress,
164
- amount: w.amount,
165
- gasPrice,
101
+ rpcUrl, chainId, privateKey: w.privateKey, poolAddress, amount: w.amount, gasPrice,
166
102
  });
167
103
  signedTransactions.push(result.signedTx);
168
104
  results.push(result);
@@ -13,59 +13,26 @@ const tokenIface = new Interface(IRO_TOKEN_ABI);
13
13
  // 查询
14
14
  // ============================================================================
15
15
  export class IroTokenQuery {
16
- provider;
17
- token;
18
- tokenAddress;
19
16
  constructor(tokenAddress, rpcUrl, chainId) {
20
17
  this.tokenAddress = tokenAddress;
21
18
  this.provider = new JsonRpcProvider(rpcUrl ?? ENI_RPC_URL, chainId ?? ENI_CHAIN_ID, { staticNetwork: true });
22
19
  this.token = new Contract(tokenAddress, IRO_TOKEN_ABI, this.provider);
23
20
  }
24
- async name() {
25
- return this.token.name();
26
- }
27
- async symbol() {
28
- return this.token.symbol();
29
- }
30
- async decimals() {
31
- return Number(await this.token.decimals());
32
- }
33
- async totalSupply() {
34
- return this.token.totalSupply();
35
- }
36
- async balanceOf(account) {
37
- return this.token.balanceOf(account);
38
- }
39
- async allowance(owner, spender) {
40
- return this.token.allowance(owner, spender);
41
- }
42
- async price() {
43
- return this.token.price();
44
- }
45
- async creator() {
46
- return this.token.creator();
47
- }
48
- async isOpen() {
49
- return this.token.isOpen();
50
- }
51
- async isWhitelisted() {
52
- return this.token.isWhitelisted();
53
- }
54
- async isWXOC() {
55
- return this.token.isWXOC();
56
- }
57
- async tradingLimit() {
58
- return this.token.tradingLimit();
59
- }
60
- async totalCreatorFee() {
61
- return this.token.totalCreatorFee();
62
- }
63
- async pool() {
64
- return this.token.POOL();
65
- }
66
- async tka() {
67
- return this.token.TKA();
68
- }
21
+ async name() { return this.token.name(); }
22
+ async symbol() { return this.token.symbol(); }
23
+ async decimals() { return Number(await this.token.decimals()); }
24
+ async totalSupply() { return this.token.totalSupply(); }
25
+ async balanceOf(account) { return this.token.balanceOf(account); }
26
+ async allowance(owner, spender) { return this.token.allowance(owner, spender); }
27
+ async price() { return this.token.price(); }
28
+ async creator() { return this.token.creator(); }
29
+ async isOpen() { return this.token.isOpen(); }
30
+ async isWhitelisted() { return this.token.isWhitelisted(); }
31
+ async isWXOC() { return this.token.isWXOC(); }
32
+ async tradingLimit() { return this.token.tradingLimit(); }
33
+ async totalCreatorFee() { return this.token.totalCreatorFee(); }
34
+ async pool() { return this.token.POOL(); }
35
+ async tka() { return this.token.TKA(); }
69
36
  async getTokenPrice() {
70
37
  const raw = await this.token.getTokenPrice();
71
38
  return {
@@ -79,32 +46,16 @@ export class IroTokenQuery {
79
46
  }
80
47
  async getTokenInfo() {
81
48
  const [name, symbol, decimals, totalSupply, poolAddress, isOpen, priceVal, creatorAddr, tkaAddr] = await Promise.all([
82
- this.name(),
83
- this.symbol(),
84
- this.decimals(),
85
- this.totalSupply(),
86
- this.pool(),
87
- this.isOpen(),
88
- this.price(),
89
- this.creator(),
90
- this.tka(),
49
+ this.name(), this.symbol(), this.decimals(), this.totalSupply(),
50
+ this.pool(), this.isOpen(), this.price(), this.creator(), this.tka(),
91
51
  ]);
92
52
  return {
93
- name,
94
- symbol,
95
- decimals,
96
- totalSupply,
53
+ name, symbol, decimals, totalSupply,
97
54
  tokenAddress: this.tokenAddress,
98
- poolAddress,
99
- isOpen,
100
- price: priceVal,
101
- creator: creatorAddr,
102
- tka: tkaAddr,
55
+ poolAddress, isOpen, price: priceVal, creator: creatorAddr, tka: tkaAddr,
103
56
  };
104
57
  }
105
- get providerInstance() {
106
- return this.provider;
107
- }
58
+ get providerInstance() { return this.provider; }
108
59
  }
109
60
  // ============================================================================
110
61
  // 写入操作 — EIP-1559
@@ -119,15 +70,8 @@ export async function subscribe(params) {
119
70
  const maxFeePerGas = gasPrice ?? feeData.maxFeePerGas ?? feeData.gasPrice ?? 1000000000n;
120
71
  const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 0n;
121
72
  const signedTx = await wallet.signTransaction({
122
- to: tokenAddress,
123
- data: calldata,
124
- value: value ?? 0n,
125
- nonce,
126
- chainId,
127
- type: 2,
128
- maxFeePerGas,
129
- maxPriorityFeePerGas,
130
- gasLimit: subscribeGasLimit ?? SUBSCRIBE_GAS_LIMIT,
73
+ to: tokenAddress, data: calldata, value: value ?? 0n, nonce, chainId,
74
+ type: 2, maxFeePerGas, maxPriorityFeePerGas, gasLimit: subscribeGasLimit ?? SUBSCRIBE_GAS_LIMIT,
131
75
  });
132
76
  return { signedTx, from: wallet.address, nonce };
133
77
  }
@@ -141,15 +85,8 @@ export async function pledge(params) {
141
85
  const maxFeePerGas = gasPrice ?? feeData.maxFeePerGas ?? feeData.gasPrice ?? 1000000000n;
142
86
  const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 0n;
143
87
  const signedTx = await wallet.signTransaction({
144
- to: tokenAddress,
145
- data: calldata,
146
- value: value ?? 0n,
147
- nonce,
148
- chainId,
149
- type: 2,
150
- maxFeePerGas,
151
- maxPriorityFeePerGas,
152
- gasLimit: subscribeGasLimit ?? SUBSCRIBE_GAS_LIMIT,
88
+ to: tokenAddress, data: calldata, value: value ?? 0n, nonce, chainId,
89
+ type: 2, maxFeePerGas, maxPriorityFeePerGas, gasLimit: subscribeGasLimit ?? SUBSCRIBE_GAS_LIMIT,
153
90
  });
154
91
  return { signedTx, from: wallet.address, nonce };
155
92
  }
@@ -162,14 +99,8 @@ export async function batchSubscribe(params) {
162
99
  const results = [];
163
100
  for (const sub of subscribers) {
164
101
  const result = await subscribe({
165
- rpcUrl,
166
- chainId,
167
- privateKey: sub.privateKey,
168
- tokenAddress,
169
- user: sub.user,
170
- amount: sub.amount,
171
- value: sub.value,
172
- gasPrice: resolvedGasPrice,
102
+ rpcUrl, chainId, privateKey: sub.privateKey, tokenAddress,
103
+ user: sub.user, amount: sub.amount, value: sub.value, gasPrice: resolvedGasPrice,
173
104
  });
174
105
  signedTransactions.push(result.signedTx);
175
106
  results.push(result);
@@ -177,7 +108,7 @@ export async function batchSubscribe(params) {
177
108
  return { signedTransactions, results };
178
109
  }
179
110
  export async function batchSubscribeForSubmit(params) {
180
- const { rpcUrl = ENI_RPC_URL, chainId = ENI_CHAIN_ID, tokenAddress, subscribers, approvalTxs = [], gasPrice, subscribeGasLimit, } = params;
111
+ const { rpcUrl = ENI_RPC_URL, chainId = ENI_CHAIN_ID, tokenAddress, subscribers, approvalTxs = [], gasPrice, subscribeGasLimit } = params;
181
112
  if (subscribers.length === 0) {
182
113
  return { signedTransactions: [...approvalTxs], subscribeResults: [], profitAmount: 0n };
183
114
  }
@@ -186,23 +117,16 @@ export async function batchSubscribeForSubmit(params) {
186
117
  const maxFeePerGas = gasPrice ?? feeData.maxFeePerGas ?? feeData.gasPrice ?? 1000000000n;
187
118
  const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 0n;
188
119
  const resolvedGasLimit = subscribeGasLimit ?? SUBSCRIBE_GAS_LIMIT;
189
- const wallets = subscribers.map((sub) => new Wallet(sub.privateKey, provider));
190
- const nonces = await Promise.all(wallets.map((w) => w.getNonce()));
120
+ const wallets = subscribers.map(sub => new Wallet(sub.privateKey, provider));
121
+ const nonces = await Promise.all(wallets.map(w => w.getNonce()));
191
122
  const subscribeTxs = [];
192
123
  const subscribeResults = [];
193
124
  for (let i = 0; i < subscribers.length; i++) {
194
125
  const sub = subscribers[i];
195
126
  const calldata = tokenIface.encodeFunctionData('subscribe', [sub.user, sub.amount]);
196
127
  const signedTx = await wallets[i].signTransaction({
197
- to: tokenAddress,
198
- data: calldata,
199
- value: sub.value ?? 0n,
200
- nonce: nonces[i],
201
- chainId,
202
- type: 2,
203
- maxFeePerGas,
204
- maxPriorityFeePerGas,
205
- gasLimit: resolvedGasLimit,
128
+ to: tokenAddress, data: calldata, value: sub.value ?? 0n, nonce: nonces[i], chainId,
129
+ type: 2, maxFeePerGas, maxPriorityFeePerGas, gasLimit: resolvedGasLimit,
206
130
  });
207
131
  subscribeTxs.push(signedTx);
208
132
  subscribeResults.push({ signedTx, from: wallets[i].address, nonce: nonces[i] });
@@ -25,7 +25,7 @@ export async function getTokenWhiteList(params) {
25
25
  const provider = new JsonRpcProvider(params.rpcUrl || ENI_RPC, params.chainId || ENI_CHAIN_ID);
26
26
  const contract = new Contract(params.iroOwnerAddress, IRO_OWNER_WHITELIST_ABI, provider);
27
27
  const addresses = await contract.getTokenWhiteList(params.tokenAddress);
28
- return addresses.map((a) => ethers.getAddress(a));
28
+ return addresses.map(a => ethers.getAddress(a));
29
29
  }
30
30
  /**
31
31
  * 添加单个白名单地址 (返回签名交易)
@@ -34,7 +34,11 @@ export async function addTokenWhiteListForSubmit(params) {
34
34
  const provider = new JsonRpcProvider(params.rpcUrl || ENI_RPC, params.chainId || ENI_CHAIN_ID);
35
35
  const wallet = new Wallet(params.privateKey, provider);
36
36
  const iface = new ethers.Interface(IRO_OWNER_WHITELIST_ABI);
37
- const data = iface.encodeFunctionData('addTokenWhiteList', [params.tokenAddress, params.addr, params.quota]);
37
+ const data = iface.encodeFunctionData('addTokenWhiteList', [
38
+ params.tokenAddress,
39
+ params.addr,
40
+ params.quota,
41
+ ]);
38
42
  const feeData = await provider.getFeeData();
39
43
  const nonce = await provider.getTransactionCount(wallet.address, 'pending');
40
44
  const tx = await wallet.signTransaction({
@@ -55,12 +59,17 @@ export async function addTokenWhiteListForSubmit(params) {
55
59
  export async function batchAddTokenWhiteListForSubmit(params) {
56
60
  const provider = new JsonRpcProvider(params.rpcUrl || ENI_RPC, params.chainId || ENI_CHAIN_ID);
57
61
  const wallet = new Wallet(params.privateKey, provider);
58
- const tuples = params.entries.map((e) => ({ account: e.addr, quota: e.quota }));
62
+ const tuples = params.entries.map(e => ({ account: e.addr, quota: e.quota }));
59
63
  const iface = new ethers.Interface(IRO_OWNER_WHITELIST_ABI);
60
- const data = iface.encodeFunctionData('batchAddTokenWhiteList', [params.tokenAddress, tuples]);
64
+ const data = iface.encodeFunctionData('batchAddTokenWhiteList', [
65
+ params.tokenAddress,
66
+ tuples,
67
+ ]);
61
68
  const feeData = await provider.getFeeData();
62
69
  const nonce = await provider.getTransactionCount(wallet.address, 'pending');
63
- const gasLimit = params.entries.length > 5 ? BATCH_WHITELIST_GAS_LIMIT * 2n : BATCH_WHITELIST_GAS_LIMIT;
70
+ const gasLimit = params.entries.length > 5
71
+ ? BATCH_WHITELIST_GAS_LIMIT * 2n
72
+ : BATCH_WHITELIST_GAS_LIMIT;
64
73
  const tx = await wallet.signTransaction({
65
74
  to: params.iroOwnerAddress,
66
75
  data,
@@ -80,7 +89,10 @@ export async function removeTokenWhiteListForSubmit(params) {
80
89
  const provider = new JsonRpcProvider(params.rpcUrl || ENI_RPC, params.chainId || ENI_CHAIN_ID);
81
90
  const wallet = new Wallet(params.privateKey, provider);
82
91
  const iface = new ethers.Interface(IRO_OWNER_WHITELIST_ABI);
83
- const data = iface.encodeFunctionData('removeTokenWhiteList', [params.tokenAddress, params.addr]);
92
+ const data = iface.encodeFunctionData('removeTokenWhiteList', [
93
+ params.tokenAddress,
94
+ params.addr,
95
+ ]);
84
96
  const feeData = await provider.getFeeData();
85
97
  const nonce = await provider.getTransactionCount(wallet.address, 'pending');
86
98
  const tx = await wallet.signTransaction({
@@ -7,16 +7,3 @@ export * as bsc from './bsc/index.js';
7
7
  export * as xlayer from './xlayer/index.js';
8
8
  export * as monad from './monad/index.js';
9
9
  export * as eni from './eni/index.js';
10
- /**
11
- * 与包根 `export * as chains` 一致的命名空间(`chains.bsc` / `chains.eni` …)
12
- */
13
- import * as bscNs from './bsc/index.js';
14
- import * as xlayerNs from './xlayer/index.js';
15
- import * as monadNs from './monad/index.js';
16
- import * as eniNs from './eni/index.js';
17
- export declare const chains: {
18
- readonly bsc: typeof bscNs;
19
- readonly xlayer: typeof xlayerNs;
20
- readonly monad: typeof monadNs;
21
- readonly eni: typeof eniNs;
22
- };
@@ -11,16 +11,3 @@ export * as xlayer from './xlayer/index.js';
11
11
  export * as monad from './monad/index.js';
12
12
  // ENI 链
13
13
  export * as eni from './eni/index.js';
14
- /**
15
- * 与包根 `export * as chains` 一致的命名空间(`chains.bsc` / `chains.eni` …)
16
- */
17
- import * as bscNs from './bsc/index.js';
18
- import * as xlayerNs from './xlayer/index.js';
19
- import * as monadNs from './monad/index.js';
20
- import * as eniNs from './eni/index.js';
21
- export const chains = {
22
- bsc: bscNs,
23
- xlayer: xlayerNs,
24
- monad: monadNs,
25
- eni: eniNs,
26
- };
@@ -7,7 +7,7 @@
7
7
  * 在 EIP-7702 中,通过 delegate 调用时 msg.sender 是 EOA 本身
8
8
  * 需要使用 executeApprove 函数
9
9
  */
10
- import type { BundleApproveParams, BundleApproveResult, BundleApproveMultiSpendersParams, BundleApproveMultiSpendersResult, EIP7702Config } from './types.js';
10
+ import type { BundleApproveParams, BundleApproveResult, EIP7702Config } from './types.js';
11
11
  /**
12
12
  * 批量授权 - 生成签名后的交易
13
13
  *
@@ -15,7 +15,31 @@ import type { BundleApproveParams, BundleApproveResult, BundleApproveMultiSpende
15
15
  * @returns 签名后的交易和元数据
16
16
  */
17
17
  export declare function bundleApprove(params: BundleApproveParams): Promise<BundleApproveResult>;
18
- export type { BundleApproveMultiSpendersParams, BundleApproveMultiSpendersResult } from './types.js';
18
+ export interface BundleApproveMultiSpendersParams {
19
+ /** 主钱包(发起交易,支付 gas) */
20
+ mainPrivateKey: string;
21
+ /** 需要授权的钱包私钥列表 */
22
+ privateKeys: string[];
23
+ /** 代币地址 */
24
+ tokenAddress: string;
25
+ /** 授权给的地址列表(多个 spender) */
26
+ spenderAddresses: string[];
27
+ /** 授权金额(可选,默认 MaxUint256) */
28
+ amount?: bigint;
29
+ /** 配置 */
30
+ config?: EIP7702Config;
31
+ }
32
+ export interface BundleApproveMultiSpendersResult {
33
+ /** 签名后的交易 */
34
+ signedTransaction: string;
35
+ /** 元数据 */
36
+ metadata: {
37
+ walletCount: number;
38
+ tokenAddress: string;
39
+ spenderAddresses: string[];
40
+ totalApproveCalls: number;
41
+ };
42
+ }
19
43
  /**
20
44
  * 多 spender 批量授权 - 生成签名后的交易
21
45
  *