four-flap-meme-sdk 2.2.8 → 2.2.10

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 (474) 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.d.ts +2 -2
  36. package/dist/chains/bsc/platforms/iro/factory.js +1 -3
  37. package/dist/chains/bsc/platforms/iro/index.d.ts +5 -5
  38. package/dist/chains/bsc/platforms/iro/index.js +3 -3
  39. package/dist/chains/bsc/platforms/iro/pool.js +10 -31
  40. package/dist/chains/bsc/platforms/iro/token.js +1 -4
  41. package/dist/chains/eni/batch-router/bundle-approve.js +3 -4
  42. package/dist/chains/eni/batch-router/transfer.js +25 -55
  43. package/dist/chains/eni/batch-router/utils.js +6 -32
  44. package/dist/chains/eni/bundler/sign.js +6 -5
  45. package/dist/chains/eni/bundler/submit.js +4 -1
  46. package/dist/chains/eni/constants.js +1 -1
  47. package/dist/chains/eni/index.d.ts +1 -2
  48. package/dist/chains/eni/index.js +0 -1
  49. package/dist/chains/eni/platforms/daoaas/create.js +2 -2
  50. package/dist/chains/eni/platforms/daoaas/index.d.ts +3 -3
  51. package/dist/chains/eni/platforms/daoaas/index.js +3 -3
  52. package/dist/chains/eni/platforms/daoaas/meta.js +6 -9
  53. package/dist/chains/eni/platforms/daoaas/portal-direct.js +44 -28
  54. package/dist/chains/eni/platforms/daoaas/portal.js +6 -10
  55. package/dist/chains/eni/platforms/dswap/liquidity.js +26 -58
  56. package/dist/chains/eni/platforms/fair-launch/index.d.ts +2 -2
  57. package/dist/chains/eni/platforms/fair-launch/index.js +1 -1
  58. package/dist/chains/eni/platforms/fair-launch/launcher.js +46 -87
  59. package/dist/chains/eni/platforms/fair-launch/pool.js +1 -4
  60. package/dist/chains/eni/platforms/fair-launch/presets.js +2 -2
  61. package/dist/chains/eni/platforms/iro/factory.d.ts +2 -2
  62. package/dist/chains/eni/platforms/iro/factory.js +1 -3
  63. package/dist/chains/eni/platforms/iro/index.d.ts +6 -6
  64. package/dist/chains/eni/platforms/iro/index.js +4 -4
  65. package/dist/chains/eni/platforms/iro/pool.js +26 -90
  66. package/dist/chains/eni/platforms/iro/token.js +31 -107
  67. package/dist/chains/eni/platforms/iro/whitelist.js +18 -6
  68. package/dist/chains/index.d.ts +0 -13
  69. package/dist/chains/index.js +0 -13
  70. package/dist/chains/xlayer/eip7702/bundle-approve.d.ts +26 -2
  71. package/dist/chains/xlayer/eip7702/bundle-approve.js +21 -11
  72. package/dist/chains/xlayer/eip7702/bundle-buy.d.ts +6 -2
  73. package/dist/chains/xlayer/eip7702/bundle-buy.js +51 -13
  74. package/dist/chains/xlayer/eip7702/bundle-create.js +59 -93
  75. package/dist/chains/xlayer/eip7702/bundle-sell.d.ts +6 -2
  76. package/dist/chains/xlayer/eip7702/bundle-sell.js +111 -29
  77. package/dist/chains/xlayer/eip7702/bundle-swap.d.ts +65 -3
  78. package/dist/chains/xlayer/eip7702/bundle-swap.js +245 -51
  79. package/dist/chains/xlayer/eip7702/constants.d.ts +16 -1
  80. package/dist/chains/xlayer/eip7702/constants.js +21 -3
  81. package/dist/chains/xlayer/eip7702/index.d.ts +46 -28
  82. package/dist/chains/xlayer/eip7702/index.js +81 -28
  83. package/dist/chains/xlayer/eip7702/multi-hop-transfer.d.ts +203 -2
  84. package/dist/chains/xlayer/eip7702/multi-hop-transfer.js +307 -63
  85. package/dist/chains/xlayer/eip7702/types.d.ts +0 -88
  86. package/dist/chains/xlayer/eip7702/utils.d.ts +3 -0
  87. package/dist/chains/xlayer/eip7702/utils.js +28 -23
  88. package/dist/chains/xlayer/eip7702/volume.d.ts +184 -6
  89. package/dist/chains/xlayer/eip7702/volume.js +164 -89
  90. package/dist/chains/xlayer/eoa/constants.js +1 -1
  91. package/dist/chains/xlayer/eoa/dex-helpers.js +5 -5
  92. package/dist/chains/xlayer/eoa/eoa-bundle-swap.d.ts +95 -1
  93. package/dist/chains/xlayer/eoa/eoa-bundle-swap.js +299 -66
  94. package/dist/chains/xlayer/eoa/eoa-wash-volume.d.ts +1 -1
  95. package/dist/chains/xlayer/eoa/eoa-wash-volume.js +23 -18
  96. package/dist/chains/xlayer/eoa/index.d.ts +6 -10
  97. package/dist/chains/xlayer/eoa/index.js +23 -8
  98. package/dist/chains/xlayer/eoa/portal-ops.js +2 -7
  99. package/dist/chains/xlayer/eoa/router-manager.js +3 -3
  100. package/dist/chains/xlayer/eoa/types.d.ts +2 -2
  101. package/dist/chains/xlayer/eoa/types.js +3 -1
  102. package/dist/chains/xlayer/index.d.ts +2 -3
  103. package/dist/chains/xlayer/index.js +7 -4
  104. package/dist/contracts/helper3.d.ts +5 -20
  105. package/dist/contracts/helper3.js +20 -56
  106. package/dist/contracts/tm-bundle-merkle/approve-tokenmanager.d.ts +26 -1
  107. package/dist/contracts/tm-bundle-merkle/approve-tokenmanager.js +113 -1
  108. package/dist/contracts/tm-bundle-merkle/config.d.ts +67 -5
  109. package/dist/contracts/tm-bundle-merkle/config.js +114 -2
  110. package/dist/contracts/tm-bundle-merkle/core.d.ts +4 -1
  111. package/dist/contracts/tm-bundle-merkle/core.js +591 -1
  112. package/dist/contracts/tm-bundle-merkle/index.d.ts +5 -5
  113. package/dist/contracts/tm-bundle-merkle/index.js +5 -5
  114. package/dist/contracts/tm-bundle-merkle/internal.d.ts +46 -2
  115. package/dist/contracts/tm-bundle-merkle/internal.js +238 -2
  116. package/dist/contracts/tm-bundle-merkle/pancake-proxy.d.ts +28 -1
  117. package/dist/contracts/tm-bundle-merkle/pancake-proxy.js +686 -1
  118. package/dist/contracts/tm-bundle-merkle/private.d.ts +27 -1
  119. package/dist/contracts/tm-bundle-merkle/private.js +476 -1
  120. package/dist/contracts/tm-bundle-merkle/submit.d.ts +314 -3
  121. package/dist/contracts/tm-bundle-merkle/submit.js +928 -3
  122. package/dist/contracts/tm-bundle-merkle/swap-buy-first.d.ts +55 -2
  123. package/dist/contracts/tm-bundle-merkle/swap-buy-first.js +506 -2
  124. package/dist/contracts/tm-bundle-merkle/swap-internal.d.ts +3 -1
  125. package/dist/contracts/tm-bundle-merkle/swap-internal.js +18 -1
  126. package/dist/contracts/tm-bundle-merkle/swap.d.ts +144 -2
  127. package/dist/contracts/tm-bundle-merkle/swap.js +764 -2
  128. package/dist/contracts/tm-bundle-merkle/types.d.ts +476 -1
  129. package/dist/contracts/tm-bundle-merkle/utils.d.ts +18 -6
  130. package/dist/contracts/tm-bundle-merkle/utils.js +1501 -6
  131. package/dist/contracts/tm-bundle.d.ts +51 -3
  132. package/dist/contracts/tm-bundle.js +177 -108
  133. package/dist/contracts/tm.d.ts +2 -3
  134. package/dist/contracts/tm.js +32 -37
  135. package/dist/contracts/tm1.js +4 -9
  136. package/dist/contracts/tm2.js +4 -9
  137. package/dist/dex/direct-router.d.ts +125 -3
  138. package/dist/dex/direct-router.js +666 -237
  139. package/dist/flows/create.d.ts +1 -2
  140. package/dist/flows/create.js +6 -6
  141. package/dist/index.d.ts +86 -20
  142. package/dist/index.js +216 -20
  143. package/dist/shared/abis/TaxToken.json +105 -0
  144. package/dist/shared/abis/TokenManager2.json +60 -0
  145. package/dist/shared/abis/common.d.ts +83 -2
  146. package/dist/shared/abis/common.js +253 -2
  147. package/dist/shared/abis/index.d.ts +6 -5
  148. package/dist/shared/abis/index.js +7 -5
  149. package/dist/shared/clients/blockrazor.js +25 -39
  150. package/dist/shared/clients/club48.d.ts +2 -2
  151. package/dist/shared/clients/club48.js +29 -34
  152. package/dist/shared/clients/emitservice.js +0 -2
  153. package/dist/shared/clients/four.d.ts +6 -21
  154. package/dist/shared/clients/four.js +24 -29
  155. package/dist/shared/clients/merkle.js +34 -27
  156. package/dist/shared/constants/addresses.d.ts +1 -1
  157. package/dist/shared/constants/addresses.js +2 -11
  158. package/dist/shared/constants/chains.d.ts +1 -1
  159. package/dist/shared/constants/chains.js +1 -1
  160. package/dist/shared/constants/gas.d.ts +1 -1
  161. package/dist/shared/constants/gas.js +6 -2
  162. package/dist/shared/constants/index.d.ts +0 -3
  163. package/dist/shared/constants/index.js +0 -1
  164. package/dist/shared/flap/abi.js +1 -1
  165. package/dist/shared/flap/constants.d.ts +2 -3
  166. package/dist/shared/flap/constants.js +4 -5
  167. package/dist/shared/flap/curve.js +0 -3
  168. package/dist/shared/flap/errors.d.ts +4 -1
  169. package/dist/shared/flap/errors.js +1 -20
  170. package/dist/shared/flap/index.d.ts +5 -5
  171. package/dist/shared/flap/index.js +5 -5
  172. package/dist/shared/flap/launch-v6.d.ts +117 -0
  173. package/dist/shared/flap/launch-v6.js +111 -0
  174. package/dist/shared/flap/meta.d.ts +18 -22
  175. package/dist/shared/flap/meta.js +17 -12
  176. package/dist/shared/flap/permit.js +2 -5
  177. package/dist/shared/flap/pinata.d.ts +6 -22
  178. package/dist/shared/flap/pinata.js +26 -21
  179. package/dist/shared/flap/portal-bundle-merkle/config.d.ts +72 -3
  180. package/dist/shared/flap/portal-bundle-merkle/config.js +124 -4
  181. package/dist/shared/flap/portal-bundle-merkle/core.d.ts +4 -0
  182. package/dist/shared/flap/portal-bundle-merkle/core.js +267 -161
  183. package/dist/shared/flap/portal-bundle-merkle/create-to-dex.d.ts +4 -17
  184. package/dist/shared/flap/portal-bundle-merkle/create-to-dex.js +195 -104
  185. package/dist/shared/flap/portal-bundle-merkle/curve-to-dex.js +92 -100
  186. package/dist/shared/flap/portal-bundle-merkle/index.d.ts +7 -11
  187. package/dist/shared/flap/portal-bundle-merkle/index.js +7 -4
  188. package/dist/shared/flap/portal-bundle-merkle/pancake-proxy.js +68 -71
  189. package/dist/shared/flap/portal-bundle-merkle/private.js +114 -61
  190. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first.d.ts +64 -1
  191. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first.js +247 -66
  192. package/dist/shared/flap/portal-bundle-merkle/swap.d.ts +71 -2
  193. package/dist/shared/flap/portal-bundle-merkle/swap.js +410 -103
  194. package/dist/shared/flap/portal-bundle-merkle/types.d.ts +12 -88
  195. package/dist/shared/flap/portal-bundle-merkle/utils.d.ts +80 -1
  196. package/dist/shared/flap/portal-bundle-merkle/utils.js +265 -145
  197. package/dist/shared/flap/portal-bundle.js +56 -55
  198. package/dist/shared/flap/portal.d.ts +3 -14
  199. package/dist/shared/flap/portal.js +26 -49
  200. package/dist/shared/flap/vanity.d.ts +5 -8
  201. package/dist/shared/flap/vanity.js +20 -21
  202. package/dist/shared/flap/vault.d.ts +93 -25
  203. package/dist/shared/flap/vault.js +126 -75
  204. package/dist/shared/four/tax-token.d.ts +1 -1
  205. package/dist/shared/four/tax-token.js +7 -27
  206. package/dist/shared/index.d.ts +0 -6
  207. package/dist/shared/index.js +0 -4
  208. package/dist/utils/airdrop-sweep.d.ts +76 -4
  209. package/dist/utils/airdrop-sweep.js +55 -42
  210. package/dist/utils/bundle-helpers.d.ts +243 -9
  211. package/dist/utils/bundle-helpers.js +584 -10
  212. package/dist/utils/constants.d.ts +61 -5
  213. package/dist/utils/constants.js +80 -5
  214. package/dist/utils/contract-factory.d.ts +4 -2
  215. package/dist/utils/contract-factory.js +18 -25
  216. package/dist/utils/erc20.d.ts +89 -7
  217. package/dist/utils/erc20.js +125 -94
  218. package/dist/utils/errors.d.ts +1 -12
  219. package/dist/utils/errors.js +1 -60
  220. package/dist/utils/holders-maker.d.ts +138 -2
  221. package/dist/utils/holders-maker.js +661 -26
  222. package/dist/utils/lp-inspect.d.ts +112 -2
  223. package/dist/utils/lp-inspect.js +223 -73
  224. package/dist/utils/mpcExclusive.d.ts +5 -2
  225. package/dist/utils/mpcExclusive.js +3 -4
  226. package/dist/utils/private-sale.d.ts +58 -2
  227. package/dist/utils/private-sale.js +15 -4
  228. package/dist/utils/provider-factory.d.ts +0 -4
  229. package/dist/utils/provider-factory.js +0 -10
  230. package/dist/utils/quote-helpers.d.ts +45 -4
  231. package/dist/utils/quote-helpers.js +74 -17
  232. package/dist/utils/stealth-transfer.d.ts +28 -2
  233. package/dist/utils/stealth-transfer.js +15 -31
  234. package/dist/utils/swap-helpers.d.ts +15 -2
  235. package/dist/utils/swap-helpers.js +11 -6
  236. package/dist/utils/wallet.d.ts +25 -2
  237. package/dist/utils/wallet.js +10 -13
  238. package/package.json +4 -160
  239. package/dist/__tests__/subpath-exports.test.d.ts +0 -1
  240. package/dist/__tests__/subpath-exports.test.js +0 -64
  241. package/dist/abis/common.d.ts +0 -85
  242. package/dist/abis/common.js +0 -264
  243. package/dist/abis/contracts/TaxToken.json +0 -969
  244. package/dist/abis/contracts/TokenManager2.json +0 -136
  245. package/dist/abis/contracts/index.d.ts +0 -5
  246. package/dist/abis/contracts/index.js +0 -5
  247. package/dist/abis/flap/index.d.ts +0 -3
  248. package/dist/abis/flap/index.js +0 -3
  249. package/dist/abis/flap/portal-events.d.ts +0 -6
  250. package/dist/abis/flap/portal-events.js +0 -17
  251. package/dist/abis/flap/portal.d.ts +0 -6
  252. package/dist/abis/flap/portal.js +0 -37
  253. package/dist/abis/flap/vault.d.ts +0 -171
  254. package/dist/abis/flap/vault.js +0 -91
  255. package/dist/abis/index.d.ts +0 -8
  256. package/dist/abis/index.js +0 -11
  257. package/dist/bundle-core/__tests__/config-helpers.test.d.ts +0 -1
  258. package/dist/bundle-core/__tests__/config-helpers.test.js +0 -28
  259. package/dist/bundle-core/__tests__/facade-parity.test.d.ts +0 -1
  260. package/dist/bundle-core/__tests__/facade-parity.test.js +0 -33
  261. package/dist/bundle-core/__tests__/sign-context-helpers.test.d.ts +0 -1
  262. package/dist/bundle-core/__tests__/sign-context-helpers.test.js +0 -60
  263. package/dist/bundle-core/__tests__/sign-fixture.test.d.ts +0 -1
  264. package/dist/bundle-core/__tests__/sign-fixture.test.js +0 -220
  265. package/dist/bundle-core/__tests__/sign-fixtures.d.ts +0 -10
  266. package/dist/bundle-core/__tests__/sign-fixtures.js +0 -16
  267. package/dist/bundle-core/config-helpers.d.ts +0 -36
  268. package/dist/bundle-core/config-helpers.js +0 -57
  269. package/dist/bundle-core/errors.d.ts +0 -50
  270. package/dist/bundle-core/errors.js +0 -35
  271. package/dist/bundle-core/four-meme/approve-tokenmanager.d.ts +0 -7
  272. package/dist/bundle-core/four-meme/approve-tokenmanager.js +0 -99
  273. package/dist/bundle-core/four-meme/core-helpers.d.ts +0 -8
  274. package/dist/bundle-core/four-meme/core-helpers.js +0 -40
  275. package/dist/bundle-core/four-meme/core.d.ts +0 -4
  276. package/dist/bundle-core/four-meme/core.js +0 -515
  277. package/dist/bundle-core/four-meme/pancake-proxy.d.ts +0 -28
  278. package/dist/bundle-core/four-meme/pancake-proxy.js +0 -679
  279. package/dist/bundle-core/four-meme/private.d.ts +0 -27
  280. package/dist/bundle-core/four-meme/private.js +0 -465
  281. package/dist/bundle-core/four-meme/sign-context-helpers.d.ts +0 -2
  282. package/dist/bundle-core/four-meme/sign-context-helpers.js +0 -2
  283. package/dist/bundle-core/four-meme/swap-buy-first.d.ts +0 -8
  284. package/dist/bundle-core/four-meme/swap-buy-first.js +0 -493
  285. package/dist/bundle-core/four-meme/swap-hop-helpers.d.ts +0 -6
  286. package/dist/bundle-core/four-meme/swap-hop-helpers.js +0 -63
  287. package/dist/bundle-core/four-meme/swap-internal.d.ts +0 -3
  288. package/dist/bundle-core/four-meme/swap-internal.js +0 -18
  289. package/dist/bundle-core/four-meme/swap-sign-helpers.d.ts +0 -27
  290. package/dist/bundle-core/four-meme/swap-sign-helpers.js +0 -105
  291. package/dist/bundle-core/four-meme/swap.d.ts +0 -17
  292. package/dist/bundle-core/four-meme/swap.js +0 -505
  293. package/dist/bundle-core/four-meme/types/buy-first.d.ts +0 -50
  294. package/dist/bundle-core/four-meme/types/buy-first.js +0 -1
  295. package/dist/bundle-core/four-meme/types/core-flow.d.ts +0 -63
  296. package/dist/bundle-core/four-meme/types/core-flow.js +0 -1
  297. package/dist/bundle-core/four-meme/types/index.d.ts +0 -600
  298. package/dist/bundle-core/four-meme/types/index.js +0 -1
  299. package/dist/bundle-core/four-meme/types/swap-internal.d.ts +0 -19
  300. package/dist/bundle-core/four-meme/types/swap-internal.js +0 -1
  301. package/dist/bundle-core/four-meme/types.d.ts +0 -1
  302. package/dist/bundle-core/four-meme/types.js +0 -1
  303. package/dist/bundle-core/four-meme/utils-disperse.d.ts +0 -7
  304. package/dist/bundle-core/four-meme/utils-disperse.js +0 -396
  305. package/dist/bundle-core/four-meme/utils-pairwise.d.ts +0 -8
  306. package/dist/bundle-core/four-meme/utils-pairwise.js +0 -328
  307. package/dist/bundle-core/four-meme/utils-sweep.d.ts +0 -8
  308. package/dist/bundle-core/four-meme/utils-sweep.js +0 -744
  309. package/dist/bundle-core/index.d.ts +0 -8
  310. package/dist/bundle-core/index.js +0 -8
  311. package/dist/bundle-core/internal.d.ts +0 -21
  312. package/dist/bundle-core/internal.js +0 -182
  313. package/dist/bundle-core/sign-context-helpers.d.ts +0 -25
  314. package/dist/bundle-core/sign-context-helpers.js +0 -67
  315. package/dist/bundle-core/submit.d.ts +0 -293
  316. package/dist/bundle-core/submit.js +0 -727
  317. package/dist/bundle-core/types/index.d.ts +0 -8
  318. package/dist/bundle-core/types/index.js +0 -1
  319. package/dist/bundle-core/types.d.ts +0 -1
  320. package/dist/bundle-core/types.js +0 -1
  321. package/dist/chains/bsc/four/utils-disperse.d.ts +0 -1
  322. package/dist/chains/bsc/four/utils-disperse.js +0 -1
  323. package/dist/chains/bsc/four/utils-pairwise.d.ts +0 -1
  324. package/dist/chains/bsc/four/utils-pairwise.js +0 -1
  325. package/dist/chains/bsc/four/utils-sweep.d.ts +0 -1
  326. package/dist/chains/bsc/four/utils-sweep.js +0 -1
  327. package/dist/chains/bsc/iro.d.ts +0 -5
  328. package/dist/chains/bsc/iro.js +0 -4
  329. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.d.ts +0 -159
  330. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.js +0 -117
  331. package/dist/chains/bsc/pancake/bundle-swap-helpers.d.ts +0 -241
  332. package/dist/chains/bsc/pancake/bundle-swap-helpers.js +0 -565
  333. package/dist/chains/eni/flat-aliases.d.ts +0 -10
  334. package/dist/chains/eni/flat-aliases.js +0 -8
  335. package/dist/chains/eni/submit.d.ts +0 -43
  336. package/dist/chains/eni/submit.js +0 -286
  337. package/dist/chains/xlayer/eip7702/flat-aliases.d.ts +0 -13
  338. package/dist/chains/xlayer/eip7702/flat-aliases.js +0 -10
  339. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.d.ts +0 -79
  340. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.js +0 -1
  341. package/dist/chains/xlayer/eip7702/transfer-context-helpers.d.ts +0 -26
  342. package/dist/chains/xlayer/eip7702/transfer-context-helpers.js +0 -57
  343. package/dist/chains/xlayer/eip7702/volume-helpers.d.ts +0 -148
  344. package/dist/chains/xlayer/eip7702/volume-helpers.js +0 -48
  345. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.d.ts +0 -126
  346. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.js +0 -228
  347. package/dist/contracts/tm-bundle-helpers.d.ts +0 -88
  348. package/dist/contracts/tm-bundle-helpers.js +0 -72
  349. package/dist/contracts/tm-bundle-merkle/utils-disperse.d.ts +0 -1
  350. package/dist/contracts/tm-bundle-merkle/utils-disperse.js +0 -1
  351. package/dist/contracts/tm-bundle-merkle/utils-pairwise.d.ts +0 -1
  352. package/dist/contracts/tm-bundle-merkle/utils-pairwise.js +0 -1
  353. package/dist/contracts/tm-bundle-merkle/utils-sweep.d.ts +0 -1
  354. package/dist/contracts/tm-bundle-merkle/utils-sweep.js +0 -1
  355. package/dist/dex/direct-router-helpers.d.ts +0 -264
  356. package/dist/dex/direct-router-helpers.js +0 -539
  357. package/dist/dex/types.d.ts +0 -81
  358. package/dist/dex/types.js +0 -1
  359. package/dist/exports/root-bundle-and-tooling.d.ts +0 -27
  360. package/dist/exports/root-bundle-and-tooling.js +0 -30
  361. package/dist/exports/root-eni-and-bsc-iro.d.ts +0 -26
  362. package/dist/exports/root-eni-and-bsc-iro.js +0 -66
  363. package/dist/exports/root-foundations.d.ts +0 -35
  364. package/dist/exports/root-foundations.js +0 -70
  365. package/dist/exports/root-swap-dex-and-xlayer.d.ts +0 -30
  366. package/dist/exports/root-swap-dex-and-xlayer.js +0 -78
  367. package/dist/flap/index.d.ts +0 -10
  368. package/dist/flap/index.js +0 -8
  369. package/dist/flows/index.d.ts +0 -1
  370. package/dist/flows/index.js +0 -1
  371. package/dist/merkle/index.d.ts +0 -12
  372. package/dist/merkle/index.js +0 -11
  373. package/dist/shared/clients/index.d.ts +0 -8
  374. package/dist/shared/clients/index.js +0 -8
  375. package/dist/shared/constants/quote.d.ts +0 -30
  376. package/dist/shared/constants/quote.js +0 -37
  377. package/dist/shared/flap/portal-bundle-merkle/core-helpers.d.ts +0 -32
  378. package/dist/shared/flap/portal-bundle-merkle/core-helpers.js +0 -83
  379. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.d.ts +0 -125
  380. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.js +0 -113
  381. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.d.ts +0 -149
  382. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.js +0 -259
  383. package/dist/shared/flap/portal-create-token.d.ts +0 -81
  384. package/dist/shared/flap/portal-create-token.js +0 -255
  385. package/dist/shared/foundation/dex/v3-path.d.ts +0 -6
  386. package/dist/shared/foundation/dex/v3-path.js +0 -35
  387. package/dist/shared/foundation/gas/bundle-gas.d.ts +0 -49
  388. package/dist/shared/foundation/gas/bundle-gas.js +0 -93
  389. package/dist/shared/foundation/gas/profit-hop.d.ts +0 -20
  390. package/dist/shared/foundation/gas/profit-hop.js +0 -72
  391. package/dist/shared/foundation/index.d.ts +0 -13
  392. package/dist/shared/foundation/index.js +0 -12
  393. package/dist/shared/foundation/nonce/nonce-manager.d.ts +0 -17
  394. package/dist/shared/foundation/nonce/nonce-manager.js +0 -183
  395. package/dist/shared/foundation/normalize-unknown.d.ts +0 -9
  396. package/dist/shared/foundation/normalize-unknown.js +0 -29
  397. package/dist/shared/foundation/sdk-logger.d.ts +0 -13
  398. package/dist/shared/foundation/sdk-logger.js +0 -12
  399. package/dist/shared/foundation/tx/build-request.d.ts +0 -17
  400. package/dist/shared/foundation/tx/build-request.js +0 -25
  401. package/dist/shared/foundation/tx/sign-batch.d.ts +0 -5
  402. package/dist/shared/foundation/tx/sign-batch.js +0 -26
  403. package/dist/shared/foundation/tx/wallet-sign-patch.d.ts +0 -1
  404. package/dist/shared/foundation/tx/wallet-sign-patch.js +0 -18
  405. package/dist/shared/foundation/types/airdrop-sweep.d.ts +0 -79
  406. package/dist/shared/foundation/types/airdrop-sweep.js +0 -1
  407. package/dist/shared/foundation/types/erc20.d.ts +0 -65
  408. package/dist/shared/foundation/types/erc20.js +0 -1
  409. package/dist/shared/foundation/types/holders-maker.d.ts +0 -64
  410. package/dist/shared/foundation/types/holders-maker.js +0 -1
  411. package/dist/shared/foundation/types/index.d.ts +0 -7
  412. package/dist/shared/foundation/types/index.js +0 -1
  413. package/dist/shared/foundation/types/lp-inspect.d.ts +0 -102
  414. package/dist/shared/foundation/types/lp-inspect.js +0 -1
  415. package/dist/shared/foundation/types/multicall.d.ts +0 -5
  416. package/dist/shared/foundation/types/multicall.js +0 -1
  417. package/dist/shared/foundation/types/private-sale.d.ts +0 -35
  418. package/dist/shared/foundation/types/private-sale.js +0 -1
  419. package/dist/shared/foundation/types/quote-helpers.d.ts +0 -17
  420. package/dist/shared/foundation/types/quote-helpers.js +0 -1
  421. package/dist/types/errors.d.ts +0 -27
  422. package/dist/types/errors.js +0 -34
  423. package/dist/utils/holders-maker/addresses.d.ts +0 -12
  424. package/dist/utils/holders-maker/addresses.js +0 -15
  425. package/dist/utils/holders-maker/buy-tx.d.ts +0 -44
  426. package/dist/utils/holders-maker/buy-tx.js +0 -278
  427. package/dist/utils/holders-maker/constants.d.ts +0 -6
  428. package/dist/utils/holders-maker/constants.js +0 -7
  429. package/dist/utils/holders-maker/disperse.d.ts +0 -18
  430. package/dist/utils/holders-maker/disperse.js +0 -90
  431. package/dist/utils/holders-maker/routing.d.ts +0 -4
  432. package/dist/utils/holders-maker/routing.js +0 -45
  433. package/dist/utils/holders-maker/transfer-tx.d.ts +0 -4
  434. package/dist/utils/holders-maker/transfer-tx.js +0 -67
  435. package/dist/utils/holders-maker-helpers.d.ts +0 -9
  436. package/dist/utils/holders-maker-helpers.js +0 -9
  437. package/dist/utils/hop-chains.d.ts +0 -35
  438. package/dist/utils/hop-chains.js +0 -215
  439. package/dist/utils/lp-inspect-helpers.d.ts +0 -9
  440. package/dist/utils/lp-inspect-helpers.js +0 -109
  441. package/dist/utils/types/airdrop-sweep.d.ts +0 -1
  442. package/dist/utils/types/airdrop-sweep.js +0 -1
  443. package/dist/utils/types/contract-factory.d.ts +0 -1
  444. package/dist/utils/types/contract-factory.js +0 -1
  445. package/dist/utils/types/erc20.d.ts +0 -1
  446. package/dist/utils/types/erc20.js +0 -1
  447. package/dist/utils/types/errors.d.ts +0 -1
  448. package/dist/utils/types/errors.js +0 -1
  449. package/dist/utils/types/holders-maker.d.ts +0 -1
  450. package/dist/utils/types/holders-maker.js +0 -1
  451. package/dist/utils/types/hop-chains.d.ts +0 -8
  452. package/dist/utils/types/hop-chains.js +0 -1
  453. package/dist/utils/types/index.d.ts +0 -13
  454. package/dist/utils/types/index.js +0 -1
  455. package/dist/utils/types/lp-inspect.d.ts +0 -1
  456. package/dist/utils/types/lp-inspect.js +0 -1
  457. package/dist/utils/types/mpc-exclusive.d.ts +0 -5
  458. package/dist/utils/types/mpc-exclusive.js +0 -1
  459. package/dist/utils/types/private-sale.d.ts +0 -1
  460. package/dist/utils/types/private-sale.js +0 -1
  461. package/dist/utils/types/quote-helpers.d.ts +0 -1
  462. package/dist/utils/types/quote-helpers.js +0 -1
  463. package/dist/utils/types/stealth-transfer.d.ts +0 -44
  464. package/dist/utils/types/stealth-transfer.js +0 -1
  465. package/dist/utils/types/wallet.d.ts +0 -25
  466. package/dist/utils/types/wallet.js +0 -1
  467. package/dist/vanity/index.d.ts +0 -5
  468. package/dist/vanity/index.js +0 -5
  469. package/src/abis/contracts/TaxToken.json +0 -969
  470. package/src/abis/contracts/TokenManager.json +0 -836
  471. package/src/abis/contracts/TokenManager2.json +0 -136
  472. package/src/abis/contracts/TokenManagerHelper3.json +0 -993
  473. /package/dist/{abis/contracts → shared/abis}/TokenManager.json +0 -0
  474. /package/dist/{abis/contracts → shared/abis}/TokenManagerHelper3.json +0 -0
@@ -24,14 +24,10 @@ const ZERO_HASH = '0x00000000000000000000000000000000000000000000000000000000000
24
24
  */
25
25
  function lpFeeProfileToV3Fee(lpFeeProfile) {
26
26
  switch (lpFeeProfile) {
27
- case 0:
28
- return V3_FEE_TIERS.MEDIUM; // 0.25%
29
- case 1:
30
- return V3_FEE_TIERS.LOWEST; // 0.01%
31
- case 2:
32
- return V3_FEE_TIERS.HIGH; // 1%
33
- default:
34
- return V3_FEE_TIERS.MEDIUM;
27
+ case 0: return V3_FEE_TIERS.MEDIUM; // 0.25%
28
+ case 1: return V3_FEE_TIERS.LOWEST; // 0.01%
29
+ case 2: return V3_FEE_TIERS.HIGH; // 1%
30
+ default: return V3_FEE_TIERS.MEDIUM;
35
31
  }
36
32
  }
37
33
  /**
@@ -73,28 +69,24 @@ function encodeFlapBuyCall(tokenAddress, inputAmount, useV3OrV4 = false, extensi
73
69
  const portalIface = new Interface(FLAP_PORTAL_ABI);
74
70
  if (useV3OrV4) {
75
71
  // V3/V4 代币使用 swapExactInputV3(支持 extensionData)
76
- return portalIface.encodeFunctionData('swapExactInputV3', [
77
- {
72
+ return portalIface.encodeFunctionData('swapExactInputV3', [{
78
73
  inputToken: ZERO_ADDRESS,
79
74
  outputToken: tokenAddress,
80
75
  inputAmount,
81
76
  minOutputAmount: 0n,
82
77
  permitData: '0x',
83
78
  extensionData,
84
- },
85
- ]);
79
+ }]);
86
80
  }
87
81
  else {
88
82
  // V2 代币使用 swapExactInput
89
- return portalIface.encodeFunctionData('swapExactInput', [
90
- {
83
+ return portalIface.encodeFunctionData('swapExactInput', [{
91
84
  inputToken: ZERO_ADDRESS,
92
85
  outputToken: tokenAddress,
93
86
  inputAmount,
94
87
  minOutputAmount: 0n,
95
88
  permitData: '0x',
96
- },
97
- ]);
89
+ }]);
98
90
  }
99
91
  }
100
92
  /**
@@ -106,8 +98,7 @@ function encodeV3BuyCall(tokenAddress, fee, recipient, deadline, amountIn) {
106
98
  'function multicall(uint256 deadline, bytes[] data) external payable returns (bytes[])',
107
99
  'function refundETH() external payable',
108
100
  ]);
109
- const exactInputData = routerIface.encodeFunctionData('exactInputSingle', [
110
- {
101
+ const exactInputData = routerIface.encodeFunctionData('exactInputSingle', [{
111
102
  tokenIn: WOKB_ADDRESS,
112
103
  tokenOut: tokenAddress,
113
104
  fee,
@@ -115,8 +106,7 @@ function encodeV3BuyCall(tokenAddress, fee, recipient, deadline, amountIn) {
115
106
  amountIn,
116
107
  amountOutMinimum: 0n,
117
108
  sqrtPriceLimitX96: 0n,
118
- },
119
- ]);
109
+ }]);
120
110
  const refundEthData = routerIface.encodeFunctionData('refundETH', []);
121
111
  return routerIface.encodeFunctionData('multicall', [deadline, [exactInputData, refundEthData]]);
122
112
  }
@@ -170,21 +160,22 @@ export async function bundleCreateBuy(params) {
170
160
  const delegateInterface = new Interface(UNIFIED_DELEGATE_ABI);
171
161
  // 创建钱包
172
162
  const devWallet = createWallet(devPrivateKey, provider);
173
- const buyerWallets = buyerPrivateKeys.map((pk) => createWallet(pk, provider));
163
+ const buyerWallets = buyerPrivateKeys.map(pk => createWallet(pk, provider));
174
164
  const allWallets = [devWallet, ...buyerWallets];
175
165
  const mainWallet = devWallet;
176
166
  // 计算买入金额和利润(单边模式:只有买入)
177
- const buyAmountsWei = buyAmounts.map((amt) => ethers.parseEther(amt));
167
+ const buyAmountsWei = buyAmounts.map(amt => ethers.parseEther(amt));
178
168
  const totalBuyAmount = buyAmountsWei.reduce((sum, amt) => sum + amt, 0n);
179
169
  const profitAmount = calculateProfitAmountByUserType(totalBuyAmount, userType, false); // ✅ 支持 userType
180
170
  const profitRecipient = getProfitRecipient(config);
181
171
  // 并行获取 nonce 和 fee data
182
172
  const [nonces, feeData] = await Promise.all([
183
- batchGetNonces(allWallets.map((w) => w.address), provider),
173
+ batchGetNonces(allWallets.map(w => w.address), provider),
184
174
  provider.getFeeData(),
185
175
  ]);
186
176
  // 签名授权
187
- const authorizations = signAuthorizationsWithNonces(allWallets, nonces, delegateAddress, 0);
177
+ const authorizations = signAuthorizationsWithNonces(allWallets, nonces, delegateAddress, 0 // devWallet 是主钱包,索引 0
178
+ );
188
179
  // 构建调用
189
180
  const calls = [];
190
181
  // 1. 利润转账(从开发者钱包)
@@ -225,7 +216,7 @@ export async function bundleCreateBuy(params) {
225
216
  deflationBps: tv2.deflationBps,
226
217
  dividendBps: tv2.dividendBps,
227
218
  lpBps: tv2.lpBps,
228
- minimumShareBalance: BigInt(tv2.minimumShareBalance ?? 10000) * 10n ** 18n,
219
+ minimumShareBalance: BigInt(tv2.minimumShareBalance ?? 10000) * (10n ** 18n),
229
220
  });
230
221
  }
231
222
  else if (useV4) {
@@ -280,15 +271,11 @@ export async function bundleCreateBuy(params) {
280
271
  });
281
272
  }
282
273
  // 使用 executeBatch 从 devWallet 调用 Portal.newToken
283
- const createBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
284
- [
285
- {
274
+ const createBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
286
275
  target: FLAP_PORTAL_ADDRESS,
287
276
  value: params.quoteAmt ?? 0n,
288
277
  data: createData,
289
- },
290
- ],
291
- ]);
278
+ }]]);
292
279
  calls.push({
293
280
  target: devWallet.address,
294
281
  allowFailure: false,
@@ -303,15 +290,11 @@ export async function bundleCreateBuy(params) {
303
290
  const buyAmount = buyAmountsWei[i];
304
291
  // 使用 executeBatch 从 buyerWallet 调用 Portal
305
292
  const buyData = encodeFlapBuyCall(tokenAddress, buyAmount, useV3OrV4, extensionData);
306
- const buyBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
307
- [
308
- {
293
+ const buyBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
309
294
  target: FLAP_PORTAL_ADDRESS,
310
295
  value: buyAmount,
311
296
  data: buyData,
312
- },
313
- ],
314
- ]);
297
+ }]]);
315
298
  // ✅ 修复:value 设为 0n,让钱包使用自己余额买入
316
299
  calls.push({
317
300
  target: buyerWallet.address,
@@ -363,19 +346,19 @@ export async function bundleCreateToDex(params) {
363
346
  const delegateInterface = new Interface(UNIFIED_DELEGATE_ABI);
364
347
  // 创建钱包
365
348
  const payerWallet = createWallet(payerPrivateKey, provider);
366
- const curveBuyerWallets = curveBuyerPrivateKeys.map((pk) => createWallet(pk, provider));
367
- const dexBuyerWallets = dexBuyerPrivateKeys.map((pk) => createWallet(pk, provider));
349
+ const curveBuyerWallets = curveBuyerPrivateKeys.map(pk => createWallet(pk, provider));
350
+ const dexBuyerWallets = dexBuyerPrivateKeys.map(pk => createWallet(pk, provider));
368
351
  // 合并所有钱包(去重)
369
352
  const allWalletsMap = new Map();
370
353
  allWalletsMap.set(payerWallet.address.toLowerCase(), payerWallet);
371
- curveBuyerWallets.forEach((w) => allWalletsMap.set(w.address.toLowerCase(), w));
372
- dexBuyerWallets.forEach((w) => allWalletsMap.set(w.address.toLowerCase(), w));
354
+ curveBuyerWallets.forEach(w => allWalletsMap.set(w.address.toLowerCase(), w));
355
+ dexBuyerWallets.forEach(w => allWalletsMap.set(w.address.toLowerCase(), w));
373
356
  const allWallets = Array.from(allWalletsMap.values());
374
357
  const mainWallet = payerWallet;
375
- const mainWalletIndex = allWallets.findIndex((w) => w.address.toLowerCase() === mainWallet.address.toLowerCase());
358
+ const mainWalletIndex = allWallets.findIndex(w => w.address.toLowerCase() === mainWallet.address.toLowerCase());
376
359
  // 计算金额和利润(单边模式:只有买入)
377
- const curveBuyAmountsWei = curveBuyAmounts.map((amt) => ethers.parseEther(amt));
378
- const dexBuyAmountsWei = dexBuyAmounts.map((amt) => ethers.parseEther(amt));
360
+ const curveBuyAmountsWei = curveBuyAmounts.map(amt => ethers.parseEther(amt));
361
+ const dexBuyAmountsWei = dexBuyAmounts.map(amt => ethers.parseEther(amt));
379
362
  const totalCurveBuyAmount = curveBuyAmountsWei.reduce((sum, amt) => sum + amt, 0n);
380
363
  const totalDexBuyAmount = dexBuyAmountsWei.reduce((sum, amt) => sum + amt, 0n);
381
364
  const totalBuyAmount = totalCurveBuyAmount + totalDexBuyAmount;
@@ -383,7 +366,7 @@ export async function bundleCreateToDex(params) {
383
366
  const profitRecipient = getProfitRecipient(config);
384
367
  // 并行获取 nonce 和 fee data
385
368
  const [nonces, feeData] = await Promise.all([
386
- batchGetNonces(allWallets.map((w) => w.address), provider),
369
+ batchGetNonces(allWallets.map(w => w.address), provider),
387
370
  provider.getFeeData(),
388
371
  ]);
389
372
  // 签名授权
@@ -427,7 +410,7 @@ export async function bundleCreateToDex(params) {
427
410
  deflationBps: tv2.deflationBps,
428
411
  dividendBps: tv2.dividendBps,
429
412
  lpBps: tv2.lpBps,
430
- minimumShareBalance: BigInt(tv2.minimumShareBalance ?? 10000) * 10n ** 18n,
413
+ minimumShareBalance: BigInt(tv2.minimumShareBalance ?? 10000) * (10n ** 18n),
431
414
  });
432
415
  }
433
416
  else {
@@ -449,15 +432,11 @@ export async function bundleCreateToDex(params) {
449
432
  lpFeeProfile: params.lpFeeProfile ?? 0,
450
433
  });
451
434
  }
452
- const createBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
453
- [
454
- {
435
+ const createBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
455
436
  target: FLAP_PORTAL_ADDRESS,
456
437
  value: params.quoteAmt ?? 0n,
457
438
  data: createData,
458
- },
459
- ],
460
- ]);
439
+ }]]);
461
440
  calls.push({
462
441
  target: payerWallet.address,
463
442
  allowFailure: false,
@@ -470,15 +449,11 @@ export async function bundleCreateToDex(params) {
470
449
  const buyerWallet = curveBuyerWallets[i];
471
450
  const buyAmount = curveBuyAmountsWei[i];
472
451
  const buyData = encodeFlapBuyCall(tokenAddress, buyAmount, true, extensionData);
473
- const buyBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
474
- [
475
- {
452
+ const buyBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
476
453
  target: FLAP_PORTAL_ADDRESS,
477
454
  value: buyAmount,
478
455
  data: buyData,
479
- },
480
- ],
481
- ]);
456
+ }]]);
482
457
  // ✅ 修复:value 设为 0n,让钱包使用自己余额买入
483
458
  calls.push({
484
459
  target: buyerWallet.address,
@@ -489,7 +464,7 @@ export async function bundleCreateToDex(params) {
489
464
  }
490
465
  // 4. 外盘买入(如果启用)
491
466
  if (enableDexBuy && dexBuyerWallets.length > 0) {
492
- const dexType = params.lpFeeProfile !== undefined && params.lpFeeProfile >= 0 ? 'V3' : 'V2';
467
+ const dexType = (params.lpFeeProfile !== undefined && params.lpFeeProfile >= 0) ? 'V3' : 'V2';
493
468
  const v3Fee = lpFeeProfileToV3Fee(params.lpFeeProfile);
494
469
  for (let i = 0; i < dexBuyerWallets.length; i++) {
495
470
  const buyerWallet = dexBuyerWallets[i];
@@ -505,15 +480,11 @@ export async function bundleCreateToDex(params) {
505
480
  swapData = encodeV2BuyCall(tokenAddress, buyerWallet.address, deadline);
506
481
  }
507
482
  // 使用 executeBatch 调用 DEX Router
508
- const dexBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
509
- [
510
- {
483
+ const dexBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
511
484
  target: routerAddress,
512
485
  value: buyAmount,
513
486
  data: swapData,
514
- },
515
- ],
516
- ]);
487
+ }]]);
517
488
  // ✅ 修复:value 设为 0n,让钱包使用自己余额买入
518
489
  calls.push({
519
490
  target: buyerWallet.address,
@@ -527,15 +498,16 @@ export async function bundleCreateToDex(params) {
527
498
  const totalValue = params.quoteAmt ?? 0n;
528
499
  // ✅ 动态计算 Gas Limit:基础操作 + 毕业额外 gas
529
500
  // 毕业操作需要约 800 万 gas,加上其他操作的 gas
530
- const baseGas = GAS_ESTIMATE.BASE +
531
- BigInt(allWallets.length) * GAS_ESTIMATE.PER_AUTHORIZATION +
532
- BigInt(calls.length) * GAS_ESTIMATE.PER_CALL_BASE +
533
- BigInt(curveBuyerWallets.length) * GAS_ESTIMATE.BUY_EXTRA + // 内盘买入
534
- BigInt(dexBuyerWallets.length) * GAS_ESTIMATE.BUY_EXTRA + // 外盘买入
535
- GAS_ESTIMATE.CREATE_TOKEN + // 创建代币
536
- GAS_ESTIMATE.GRADUATE; // 毕业操作 (800万)
501
+ const baseGas = GAS_ESTIMATE.BASE
502
+ + BigInt(allWallets.length) * GAS_ESTIMATE.PER_AUTHORIZATION
503
+ + BigInt(calls.length) * GAS_ESTIMATE.PER_CALL_BASE
504
+ + BigInt(curveBuyerWallets.length) * GAS_ESTIMATE.BUY_EXTRA // 内盘买入
505
+ + BigInt(dexBuyerWallets.length) * GAS_ESTIMATE.BUY_EXTRA // 外盘买入
506
+ + GAS_ESTIMATE.CREATE_TOKEN // 创建代币
507
+ + GAS_ESTIMATE.GRADUATE; // 毕业操作 (800万)
537
508
  const dynamicGasLimit = BigInt(Math.ceil(Number(baseGas) * GAS_ESTIMATE.SAFETY_MULTIPLIER));
538
509
  const finalGasLimit = dynamicGasLimit > GAS_ESTIMATE.MAX ? GAS_ESTIMATE.MAX : dynamicGasLimit;
510
+ console.log(`[bundleCreateToDex] 动态 Gas 计算: 授权=${allWallets.length}, 调用=${calls.length}, 内盘=${curveBuyerWallets.length}, 外盘=${dexBuyerWallets.length}, Gas=${finalGasLimit.toString()}`);
539
511
  const toDexConfig = {
540
512
  ...config,
541
513
  gasLimit: finalGasLimit, // ✅ 动态计算的 Gas Limit
@@ -576,7 +548,7 @@ export async function bundleGraduateBuy(params) {
576
548
  const delegateInterface = new Interface(UNIFIED_DELEGATE_ABI);
577
549
  // 创建钱包
578
550
  const payerWallet = createWallet(payerPrivateKey, provider);
579
- const wallets = privateKeys.map((pk) => createWallet(pk, provider));
551
+ const wallets = privateKeys.map(pk => createWallet(pk, provider));
580
552
  // 获取代币状态
581
553
  const portalContract = new Contract(FLAP_PORTAL_ADDRESS, FLAP_PORTAL_ABI, provider);
582
554
  const tokenState = await portalContract.getTokenV7(tokenAddress);
@@ -585,11 +557,12 @@ export async function bundleGraduateBuy(params) {
585
557
  const k = tokenState[6];
586
558
  const lpFeeProfile = Number(tokenState[15]);
587
559
  // 计算毕业容量
588
- const graduationReserveWei = (h * k) / 10n ** 18n;
560
+ const graduationReserveWei = (h * k) / (10n ** 18n);
589
561
  const poolReserveOkb = Number(ethers.formatEther(reserve));
590
562
  const graduateCapacity = graduationAmount ?? Number(ethers.formatEther(graduationReserveWei));
591
563
  const remainingToGraduate = Math.max(0, graduateCapacity - poolReserveOkb);
592
564
  const remainingToGraduateWei = ethers.parseEther(remainingToGraduate.toFixed(18));
565
+ console.log(`[GraduateBuy] Pool Reserve: ${poolReserveOkb.toFixed(4)} OKB, Graduation: ${graduateCapacity.toFixed(4)} OKB, Remaining: ${remainingToGraduate.toFixed(4)} OKB`);
593
566
  // 计算每个钱包的金额
594
567
  const normalizedWalletAmounts = {};
595
568
  if (walletAmounts) {
@@ -617,8 +590,8 @@ export async function bundleGraduateBuy(params) {
617
590
  const dexBuyers = [];
618
591
  const hasFrontendGrouping = curveAddresses && curveAddresses.length > 0;
619
592
  if (hasFrontendGrouping) {
620
- const curveSet = new Set(curveAddresses.map((a) => a.toLowerCase()));
621
- const dexSet = dexAddresses ? new Set(dexAddresses.map((a) => a.toLowerCase())) : new Set();
593
+ const curveSet = new Set(curveAddresses.map(a => a.toLowerCase()));
594
+ const dexSet = dexAddresses ? new Set(dexAddresses.map(a => a.toLowerCase())) : new Set();
622
595
  for (let i = 0; i < wallets.length; i++) {
623
596
  const wallet = wallets[i];
624
597
  const ownerAddr = wallet.address.toLowerCase();
@@ -653,14 +626,15 @@ export async function bundleGraduateBuy(params) {
653
626
  }
654
627
  }
655
628
  }
629
+ console.log(`[GraduateBuy] Curve buyers: ${curveBuyers.length}, DEX buyers: ${dexBuyers.length}`);
656
630
  // 合并所有参与的钱包
657
631
  const allWalletsMap = new Map();
658
632
  allWalletsMap.set(payerWallet.address.toLowerCase(), payerWallet);
659
- curveBuyers.forEach((b) => allWalletsMap.set(b.wallet.address.toLowerCase(), b.wallet));
660
- dexBuyers.forEach((b) => allWalletsMap.set(b.wallet.address.toLowerCase(), b.wallet));
633
+ curveBuyers.forEach(b => allWalletsMap.set(b.wallet.address.toLowerCase(), b.wallet));
634
+ dexBuyers.forEach(b => allWalletsMap.set(b.wallet.address.toLowerCase(), b.wallet));
661
635
  const allWallets = Array.from(allWalletsMap.values());
662
636
  const mainWallet = payerWallet;
663
- const mainWalletIndex = allWallets.findIndex((w) => w.address.toLowerCase() === mainWallet.address.toLowerCase());
637
+ const mainWalletIndex = allWallets.findIndex(w => w.address.toLowerCase() === mainWallet.address.toLowerCase());
664
638
  // 计算金额和利润(单边模式:只有买入)
665
639
  const curveTotalWei = curveBuyers.reduce((sum, b) => sum + b.amount, 0n);
666
640
  const dexTotalWei = dexBuyers.reduce((sum, b) => sum + b.amount, 0n);
@@ -669,7 +643,7 @@ export async function bundleGraduateBuy(params) {
669
643
  const profitRecipient = getProfitRecipient(config);
670
644
  // 并行获取 nonce 和 fee data
671
645
  const [nonces, feeData] = await Promise.all([
672
- batchGetNonces(allWallets.map((w) => w.address), provider),
646
+ batchGetNonces(allWallets.map(w => w.address), provider),
673
647
  provider.getFeeData(),
674
648
  ]);
675
649
  // 签名授权
@@ -687,15 +661,11 @@ export async function bundleGraduateBuy(params) {
687
661
  for (let i = 0; i < curveBuyers.length; i++) {
688
662
  const { wallet, amount } = curveBuyers[i];
689
663
  const buyData = encodeFlapBuyCall(tokenAddress, amount, useV3OrV4, extensionData);
690
- const buyBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
691
- [
692
- {
664
+ const buyBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
693
665
  target: FLAP_PORTAL_ADDRESS,
694
666
  value: amount,
695
667
  data: buyData,
696
- },
697
- ],
698
- ]);
668
+ }]]);
699
669
  // ✅ 修复:value 设为 0n,让钱包使用自己余额买入
700
670
  calls.push({
701
671
  target: wallet.address,
@@ -706,7 +676,7 @@ export async function bundleGraduateBuy(params) {
706
676
  }
707
677
  // 3. 外盘买入
708
678
  if (enableDexBuy && dexBuyers.length > 0) {
709
- const dexType = lpFeeProfile >= 0 ? 'V3' : 'V2';
679
+ const dexType = (lpFeeProfile >= 0) ? 'V3' : 'V2';
710
680
  const v3Fee = lpFeeProfileToV3Fee(lpFeeProfile);
711
681
  for (let i = 0; i < dexBuyers.length; i++) {
712
682
  const { wallet, amount } = dexBuyers[i];
@@ -720,15 +690,11 @@ export async function bundleGraduateBuy(params) {
720
690
  routerAddress = POTATOSWAP_V2_ROUTER;
721
691
  swapData = encodeV2BuyCall(tokenAddress, wallet.address, deadline);
722
692
  }
723
- const dexBatchCall = delegateInterface.encodeFunctionData('executeBatch', [
724
- [
725
- {
693
+ const dexBatchCall = delegateInterface.encodeFunctionData('executeBatch', [[{
726
694
  target: routerAddress,
727
695
  value: amount,
728
696
  data: swapData,
729
- },
730
- ],
731
- ]);
697
+ }]]);
732
698
  // ✅ 修复:value 设为 0n,让钱包使用自己余额买入
733
699
  calls.push({
734
700
  target: wallet.address,
@@ -6,7 +6,12 @@
6
6
  *
7
7
  * 只生成签名,由调用方决定如何提交
8
8
  */
9
- import type { BundleSellParams, BundleSellResult } from './types.js';
9
+ import type { BundleSellParams as BaseBundleSellParams, BundleSellResult } from './types.js';
10
+ import { type UserType } from './utils.js';
11
+ export interface BundleSellParams extends BaseBundleSellParams {
12
+ /** 用户类型(影响利润率) */
13
+ userType?: UserType;
14
+ }
10
15
  /**
11
16
  * 批量卖出 - 生成签名后的交易
12
17
  *
@@ -44,5 +49,4 @@ import type { BundleSellParams, BundleSellResult } from './types.js';
44
49
  * fee: 2500,
45
50
  * });
46
51
  */
47
- export type { BundleSellParams } from './types.js';
48
52
  export declare function bundleSell(params: BundleSellParams): Promise<BundleSellResult>;