four-flap-meme-sdk 2.2.8 → 2.2.11

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 +87 -20
  142. package/dist/index.js +217 -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 +254 -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 -1
  166. package/dist/shared/flap/constants.js +4 -3
  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 -4
  171. package/dist/shared/flap/index.js +5 -4
  172. package/dist/shared/flap/launch-v6.d.ts +127 -0
  173. package/dist/shared/flap/launch-v6.js +123 -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 +151 -142
  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 +86 -86
  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-create-token.d.ts +19 -37
  199. package/dist/shared/flap/portal-create-token.js +124 -121
  200. package/dist/shared/flap/portal.d.ts +2 -1
  201. package/dist/shared/flap/portal.js +28 -36
  202. package/dist/shared/flap/vanity.d.ts +6 -6
  203. package/dist/shared/flap/vanity.js +21 -15
  204. package/dist/shared/flap/vault.d.ts +93 -25
  205. package/dist/shared/flap/vault.js +126 -75
  206. package/dist/shared/four/tax-token.d.ts +1 -1
  207. package/dist/shared/four/tax-token.js +7 -27
  208. package/dist/shared/index.d.ts +0 -6
  209. package/dist/shared/index.js +0 -4
  210. package/dist/utils/airdrop-sweep.d.ts +76 -4
  211. package/dist/utils/airdrop-sweep.js +55 -42
  212. package/dist/utils/bundle-helpers.d.ts +243 -9
  213. package/dist/utils/bundle-helpers.js +584 -10
  214. package/dist/utils/constants.d.ts +61 -5
  215. package/dist/utils/constants.js +80 -5
  216. package/dist/utils/contract-factory.d.ts +4 -2
  217. package/dist/utils/contract-factory.js +18 -25
  218. package/dist/utils/erc20.d.ts +89 -7
  219. package/dist/utils/erc20.js +125 -94
  220. package/dist/utils/errors.d.ts +1 -12
  221. package/dist/utils/errors.js +1 -60
  222. package/dist/utils/holders-maker.d.ts +138 -2
  223. package/dist/utils/holders-maker.js +661 -26
  224. package/dist/utils/lp-inspect.d.ts +112 -2
  225. package/dist/utils/lp-inspect.js +223 -73
  226. package/dist/utils/mpcExclusive.d.ts +5 -2
  227. package/dist/utils/mpcExclusive.js +3 -4
  228. package/dist/utils/private-sale.d.ts +58 -2
  229. package/dist/utils/private-sale.js +15 -4
  230. package/dist/utils/provider-factory.d.ts +0 -4
  231. package/dist/utils/provider-factory.js +0 -10
  232. package/dist/utils/quote-helpers.d.ts +45 -4
  233. package/dist/utils/quote-helpers.js +74 -17
  234. package/dist/utils/stealth-transfer.d.ts +28 -2
  235. package/dist/utils/stealth-transfer.js +15 -31
  236. package/dist/utils/swap-helpers.d.ts +15 -2
  237. package/dist/utils/swap-helpers.js +11 -6
  238. package/dist/utils/wallet.d.ts +25 -2
  239. package/dist/utils/wallet.js +10 -13
  240. package/package.json +4 -160
  241. package/dist/__tests__/subpath-exports.test.d.ts +0 -1
  242. package/dist/__tests__/subpath-exports.test.js +0 -64
  243. package/dist/abis/common.d.ts +0 -85
  244. package/dist/abis/common.js +0 -264
  245. package/dist/abis/contracts/TaxToken.json +0 -969
  246. package/dist/abis/contracts/TokenManager2.json +0 -136
  247. package/dist/abis/contracts/index.d.ts +0 -5
  248. package/dist/abis/contracts/index.js +0 -5
  249. package/dist/abis/flap/index.d.ts +0 -3
  250. package/dist/abis/flap/index.js +0 -3
  251. package/dist/abis/flap/portal-events.d.ts +0 -6
  252. package/dist/abis/flap/portal-events.js +0 -17
  253. package/dist/abis/flap/portal.d.ts +0 -6
  254. package/dist/abis/flap/portal.js +0 -37
  255. package/dist/abis/flap/vault.d.ts +0 -171
  256. package/dist/abis/flap/vault.js +0 -91
  257. package/dist/abis/index.d.ts +0 -8
  258. package/dist/abis/index.js +0 -11
  259. package/dist/bundle-core/__tests__/config-helpers.test.d.ts +0 -1
  260. package/dist/bundle-core/__tests__/config-helpers.test.js +0 -28
  261. package/dist/bundle-core/__tests__/facade-parity.test.d.ts +0 -1
  262. package/dist/bundle-core/__tests__/facade-parity.test.js +0 -33
  263. package/dist/bundle-core/__tests__/sign-context-helpers.test.d.ts +0 -1
  264. package/dist/bundle-core/__tests__/sign-context-helpers.test.js +0 -60
  265. package/dist/bundle-core/__tests__/sign-fixture.test.d.ts +0 -1
  266. package/dist/bundle-core/__tests__/sign-fixture.test.js +0 -220
  267. package/dist/bundle-core/__tests__/sign-fixtures.d.ts +0 -10
  268. package/dist/bundle-core/__tests__/sign-fixtures.js +0 -16
  269. package/dist/bundle-core/config-helpers.d.ts +0 -36
  270. package/dist/bundle-core/config-helpers.js +0 -57
  271. package/dist/bundle-core/errors.d.ts +0 -50
  272. package/dist/bundle-core/errors.js +0 -35
  273. package/dist/bundle-core/four-meme/approve-tokenmanager.d.ts +0 -7
  274. package/dist/bundle-core/four-meme/approve-tokenmanager.js +0 -99
  275. package/dist/bundle-core/four-meme/core-helpers.d.ts +0 -8
  276. package/dist/bundle-core/four-meme/core-helpers.js +0 -40
  277. package/dist/bundle-core/four-meme/core.d.ts +0 -4
  278. package/dist/bundle-core/four-meme/core.js +0 -515
  279. package/dist/bundle-core/four-meme/pancake-proxy.d.ts +0 -28
  280. package/dist/bundle-core/four-meme/pancake-proxy.js +0 -679
  281. package/dist/bundle-core/four-meme/private.d.ts +0 -27
  282. package/dist/bundle-core/four-meme/private.js +0 -465
  283. package/dist/bundle-core/four-meme/sign-context-helpers.d.ts +0 -2
  284. package/dist/bundle-core/four-meme/sign-context-helpers.js +0 -2
  285. package/dist/bundle-core/four-meme/swap-buy-first.d.ts +0 -8
  286. package/dist/bundle-core/four-meme/swap-buy-first.js +0 -493
  287. package/dist/bundle-core/four-meme/swap-hop-helpers.d.ts +0 -6
  288. package/dist/bundle-core/four-meme/swap-hop-helpers.js +0 -63
  289. package/dist/bundle-core/four-meme/swap-internal.d.ts +0 -3
  290. package/dist/bundle-core/four-meme/swap-internal.js +0 -18
  291. package/dist/bundle-core/four-meme/swap-sign-helpers.d.ts +0 -27
  292. package/dist/bundle-core/four-meme/swap-sign-helpers.js +0 -105
  293. package/dist/bundle-core/four-meme/swap.d.ts +0 -17
  294. package/dist/bundle-core/four-meme/swap.js +0 -505
  295. package/dist/bundle-core/four-meme/types/buy-first.d.ts +0 -50
  296. package/dist/bundle-core/four-meme/types/buy-first.js +0 -1
  297. package/dist/bundle-core/four-meme/types/core-flow.d.ts +0 -63
  298. package/dist/bundle-core/four-meme/types/core-flow.js +0 -1
  299. package/dist/bundle-core/four-meme/types/index.d.ts +0 -600
  300. package/dist/bundle-core/four-meme/types/index.js +0 -1
  301. package/dist/bundle-core/four-meme/types/swap-internal.d.ts +0 -19
  302. package/dist/bundle-core/four-meme/types/swap-internal.js +0 -1
  303. package/dist/bundle-core/four-meme/types.d.ts +0 -1
  304. package/dist/bundle-core/four-meme/types.js +0 -1
  305. package/dist/bundle-core/four-meme/utils-disperse.d.ts +0 -7
  306. package/dist/bundle-core/four-meme/utils-disperse.js +0 -396
  307. package/dist/bundle-core/four-meme/utils-pairwise.d.ts +0 -8
  308. package/dist/bundle-core/four-meme/utils-pairwise.js +0 -328
  309. package/dist/bundle-core/four-meme/utils-sweep.d.ts +0 -8
  310. package/dist/bundle-core/four-meme/utils-sweep.js +0 -744
  311. package/dist/bundle-core/index.d.ts +0 -8
  312. package/dist/bundle-core/index.js +0 -8
  313. package/dist/bundle-core/internal.d.ts +0 -21
  314. package/dist/bundle-core/internal.js +0 -182
  315. package/dist/bundle-core/sign-context-helpers.d.ts +0 -25
  316. package/dist/bundle-core/sign-context-helpers.js +0 -67
  317. package/dist/bundle-core/submit.d.ts +0 -293
  318. package/dist/bundle-core/submit.js +0 -727
  319. package/dist/bundle-core/types/index.d.ts +0 -8
  320. package/dist/bundle-core/types/index.js +0 -1
  321. package/dist/bundle-core/types.d.ts +0 -1
  322. package/dist/bundle-core/types.js +0 -1
  323. package/dist/chains/bsc/four/utils-disperse.d.ts +0 -1
  324. package/dist/chains/bsc/four/utils-disperse.js +0 -1
  325. package/dist/chains/bsc/four/utils-pairwise.d.ts +0 -1
  326. package/dist/chains/bsc/four/utils-pairwise.js +0 -1
  327. package/dist/chains/bsc/four/utils-sweep.d.ts +0 -1
  328. package/dist/chains/bsc/four/utils-sweep.js +0 -1
  329. package/dist/chains/bsc/iro.d.ts +0 -5
  330. package/dist/chains/bsc/iro.js +0 -4
  331. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.d.ts +0 -159
  332. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.js +0 -117
  333. package/dist/chains/bsc/pancake/bundle-swap-helpers.d.ts +0 -241
  334. package/dist/chains/bsc/pancake/bundle-swap-helpers.js +0 -565
  335. package/dist/chains/eni/flat-aliases.d.ts +0 -10
  336. package/dist/chains/eni/flat-aliases.js +0 -8
  337. package/dist/chains/eni/submit.d.ts +0 -43
  338. package/dist/chains/eni/submit.js +0 -286
  339. package/dist/chains/xlayer/eip7702/flat-aliases.d.ts +0 -13
  340. package/dist/chains/xlayer/eip7702/flat-aliases.js +0 -10
  341. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.d.ts +0 -79
  342. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.js +0 -1
  343. package/dist/chains/xlayer/eip7702/transfer-context-helpers.d.ts +0 -26
  344. package/dist/chains/xlayer/eip7702/transfer-context-helpers.js +0 -57
  345. package/dist/chains/xlayer/eip7702/volume-helpers.d.ts +0 -148
  346. package/dist/chains/xlayer/eip7702/volume-helpers.js +0 -48
  347. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.d.ts +0 -126
  348. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.js +0 -228
  349. package/dist/contracts/tm-bundle-helpers.d.ts +0 -88
  350. package/dist/contracts/tm-bundle-helpers.js +0 -72
  351. package/dist/contracts/tm-bundle-merkle/utils-disperse.d.ts +0 -1
  352. package/dist/contracts/tm-bundle-merkle/utils-disperse.js +0 -1
  353. package/dist/contracts/tm-bundle-merkle/utils-pairwise.d.ts +0 -1
  354. package/dist/contracts/tm-bundle-merkle/utils-pairwise.js +0 -1
  355. package/dist/contracts/tm-bundle-merkle/utils-sweep.d.ts +0 -1
  356. package/dist/contracts/tm-bundle-merkle/utils-sweep.js +0 -1
  357. package/dist/dex/direct-router-helpers.d.ts +0 -264
  358. package/dist/dex/direct-router-helpers.js +0 -539
  359. package/dist/dex/types.d.ts +0 -81
  360. package/dist/dex/types.js +0 -1
  361. package/dist/exports/root-bundle-and-tooling.d.ts +0 -27
  362. package/dist/exports/root-bundle-and-tooling.js +0 -30
  363. package/dist/exports/root-eni-and-bsc-iro.d.ts +0 -26
  364. package/dist/exports/root-eni-and-bsc-iro.js +0 -66
  365. package/dist/exports/root-foundations.d.ts +0 -35
  366. package/dist/exports/root-foundations.js +0 -70
  367. package/dist/exports/root-swap-dex-and-xlayer.d.ts +0 -30
  368. package/dist/exports/root-swap-dex-and-xlayer.js +0 -78
  369. package/dist/flap/index.d.ts +0 -10
  370. package/dist/flap/index.js +0 -8
  371. package/dist/flows/index.d.ts +0 -1
  372. package/dist/flows/index.js +0 -1
  373. package/dist/merkle/index.d.ts +0 -12
  374. package/dist/merkle/index.js +0 -11
  375. package/dist/shared/clients/index.d.ts +0 -8
  376. package/dist/shared/clients/index.js +0 -8
  377. package/dist/shared/constants/quote.d.ts +0 -30
  378. package/dist/shared/constants/quote.js +0 -37
  379. package/dist/shared/flap/portal-bundle-merkle/core-helpers.d.ts +0 -32
  380. package/dist/shared/flap/portal-bundle-merkle/core-helpers.js +0 -83
  381. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.d.ts +0 -125
  382. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.js +0 -113
  383. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.d.ts +0 -149
  384. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.js +0 -259
  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
@@ -8,7 +8,7 @@ const PORTAL_ABI = [
8
8
  'function newTokenV2((string name,string symbol,string meta,uint8 dexThresh,bytes32 salt,uint16 taxRate,uint8 migratorType,address quoteToken,uint256 quoteAmt,address beneficiary,bytes permitData)) external payable returns (address)',
9
9
  'function swapExactInputBuy((address inputToken,address outputToken,uint256 inputAmount,uint256 minOutputAmount,bytes permitData)) external payable returns (uint256)',
10
10
  'function swapExactInputSell((address inputToken,address outputToken,uint256 inputAmount,uint256 minOutputAmount,bytes permitData)) external returns (uint256)',
11
- 'function quoteExactInput((address inputToken,address outputToken,uint256 inputAmount)) external returns (uint256)',
11
+ 'function quoteExactInput((address inputToken,address outputToken,uint256 inputAmount)) external returns (uint256)'
12
12
  ];
13
13
  /**
14
14
  * Flap Protocol Bundle 交易方法
@@ -18,20 +18,20 @@ const PORTAL_ABI = [
18
18
  const ERRORS = {
19
19
  NO_PRIVATE_KEY: {
20
20
  en: 'At least 1 private key (creator) is required',
21
- zh: '至少需要 1 个私钥(创建者)',
21
+ zh: '至少需要 1 个私钥(创建者)'
22
22
  },
23
23
  AMOUNT_MISMATCH: {
24
24
  en: (buyCount, buyerCount) => `Buy amount count (${buyCount}) must equal buyer count (${buyerCount})`,
25
- zh: (buyCount, buyerCount) => `购买金额数量(${buyCount})必须等于买家数量(${buyerCount})`,
25
+ zh: (buyCount, buyerCount) => `购买金额数量(${buyCount})必须等于买家数量(${buyerCount})`
26
26
  },
27
27
  KEY_AMOUNT_MISMATCH: {
28
28
  en: 'Private key count and amount count must match',
29
- zh: '私钥和购买金额数量必须一致',
29
+ zh: '私钥和购买金额数量必须一致'
30
30
  },
31
31
  SELL_KEY_AMOUNT_MISMATCH: {
32
32
  en: 'Private key count and sell amount count must match',
33
- zh: '私钥和卖出数量必须一致',
34
- },
33
+ zh: '私钥和卖出数量必须一致'
34
+ }
35
35
  };
36
36
  // 获取错误信息(根据环境语言)
37
37
  function getErrorMessage(key, ...args) {
@@ -56,11 +56,28 @@ async function estimateGasWithMultiplier(provider, txRequest, multiplier) {
56
56
  function getTxType(config) {
57
57
  return config.txType ?? 0; // 默认 Legacy (type 0),适用于 48.club/BSC
58
58
  }
59
+ /**
60
+ * 构建完整的交易请求(包含 gas 估算和交易类型)
61
+ */
62
+ async function buildTxRequest(provider, unsigned, from, nonce, gasPrice, config, value) {
63
+ const gasLimit = await estimateGasWithMultiplier(provider, { ...unsigned, from, value }, config.gasLimitMultiplier);
64
+ return {
65
+ ...unsigned,
66
+ from,
67
+ nonce,
68
+ gasLimit,
69
+ gasPrice,
70
+ chainId: 56,
71
+ type: getTxType(config)
72
+ };
73
+ }
59
74
  /**
60
75
  * Flap Protocol: 创建代币 + 捆绑购买
61
76
  */
62
77
  export async function createTokenWithBundleBuy(params) {
63
- const { chain, privateKeys, buyAmounts, tokenInfo, tokenAddress, config } = params;
78
+ const { chain, privateKeys, buyAmounts, tokenInfo, quoteToken, tokenAddress, config } = params;
79
+ // 默认使用 BNB (0地址)
80
+ const quoteTokenAddress = quoteToken || '0x0000000000000000000000000000000000000000';
64
81
  if (privateKeys.length === 0) {
65
82
  throw new Error(getErrorMessage('NO_PRIVATE_KEY'));
66
83
  }
@@ -71,7 +88,7 @@ export async function createTokenWithBundleBuy(params) {
71
88
  const devWallet = new Wallet(privateKeys[0], provider);
72
89
  const club48 = new Club48Client({
73
90
  endpoint: config.club48Endpoint,
74
- explorerEndpoint: config.club48ExplorerEndpoint,
91
+ explorerEndpoint: config.club48ExplorerEndpoint
75
92
  });
76
93
  const blockOffset = config.bundleBlockOffset ?? 100;
77
94
  // 1. 构建交易(为重复地址分配顺序 nonce)
@@ -105,7 +122,7 @@ export async function createTokenWithBundleBuy(params) {
105
122
  quoteToken: params.quoteToken || '0x0000000000000000000000000000000000000000',
106
123
  quoteAmt: 0n,
107
124
  beneficiary: new Wallet(privateKeys[0]).address,
108
- permitData: '0x',
125
+ permitData: '0x'
109
126
  });
110
127
  // 估算 gas 并应用用户配置的安全余量
111
128
  const createGasLimit = await estimateGasWithMultiplier(provider, { ...createTxUnsigned, from: devWallet.address }, config.gasLimitMultiplier);
@@ -116,7 +133,7 @@ export async function createTokenWithBundleBuy(params) {
116
133
  gasLimit: createGasLimit,
117
134
  gasPrice: gasPrice,
118
135
  chainId: 56, // BSC
119
- type: getTxType(config), // 用户可配置:0=Legacy(默认),2=EIP-1559
136
+ type: getTxType(config) // 用户可配置:0=Legacy(默认),2=EIP-1559
120
137
  };
121
138
  const signedCreateTx = await devWallet.signTransaction(createTxRequest);
122
139
  signedTxs.push(signedCreateTx);
@@ -129,7 +146,7 @@ export async function createTokenWithBundleBuy(params) {
129
146
  gasLimit: GAS_LIMITS.BRIBE,
130
147
  chainId: 56,
131
148
  type: 0, // Legacy transaction
132
- nonce: await getNextNonce(devWallet),
149
+ nonce: await getNextNonce(devWallet)
133
150
  });
134
151
  signedTxs.push(tipTx);
135
152
  }
@@ -146,7 +163,7 @@ export async function createTokenWithBundleBuy(params) {
146
163
  const exactOut = await quote.quoteExactInput.staticCall({
147
164
  inputToken: '0x0000000000000000000000000000000000000000',
148
165
  outputToken: tokenAddress,
149
- inputAmount: amountIn,
166
+ inputAmount: amountIn
150
167
  });
151
168
  const keep = BigInt(10000 - slippageBps);
152
169
  minAmountOut = (exactOut * keep) / 10000n;
@@ -176,7 +193,7 @@ export async function createTokenWithBundleBuy(params) {
176
193
  gasLimit: buyGasLimit,
177
194
  gasPrice: gasPrice,
178
195
  chainId: 56, // BSC
179
- type: getTxType(config), // 用户可配置
196
+ type: getTxType(config) // 用户可配置
180
197
  };
181
198
  const signedBuyTx = await buyerWallet.signTransaction(buyTxRequest);
182
199
  signedTxs.push(signedBuyTx);
@@ -186,11 +203,11 @@ export async function createTokenWithBundleBuy(params) {
186
203
  const bundleUuid = await club48.sendBundle({
187
204
  txs: signedTxs,
188
205
  maxBlockNumber: (await provider.getBlockNumber()) + blockOffset,
189
- noMerge: config.noMerge,
206
+ noMerge: config.noMerge
190
207
  }, {
191
208
  spMode: params.config.spMode ?? 'timestampPersonalSign',
192
209
  spPrivateKey: params.config.spPrivateKey || privateKeys[0],
193
- spVMode: params.config.spVMode,
210
+ spVMode: params.config.spVMode
194
211
  });
195
212
  // 3. 等待完成
196
213
  const status = await club48.waitForBundle(bundleUuid, params.config.waitTimeoutMs ?? 60000);
@@ -199,7 +216,7 @@ export async function createTokenWithBundleBuy(params) {
199
216
  tokenAddress,
200
217
  status,
201
218
  createTx: signedCreateTx,
202
- buyTxs,
219
+ buyTxs
203
220
  };
204
221
  }
205
222
  /**
@@ -213,7 +230,7 @@ export async function batchBuyWithBundle(params) {
213
230
  const provider = new JsonRpcProvider(config.rpcUrl);
214
231
  const club48 = new Club48Client({
215
232
  endpoint: config.club48Endpoint,
216
- explorerEndpoint: config.club48ExplorerEndpoint,
233
+ explorerEndpoint: config.club48ExplorerEndpoint
217
234
  });
218
235
  const blockOffset = config.bundleBlockOffset ?? 100;
219
236
  const portalAddr = FLAP_PORTAL_ADDRESSES[chain];
@@ -242,7 +259,7 @@ export async function batchBuyWithBundle(params) {
242
259
  gasLimit: GAS_LIMITS.BRIBE,
243
260
  chainId: 56,
244
261
  type: 0, // Legacy transaction
245
- nonce: await getNextNonce(tipWallet),
262
+ nonce: await getNextNonce(tipWallet)
246
263
  });
247
264
  signedTxs.unshift(tipTx);
248
265
  }
@@ -257,7 +274,7 @@ export async function batchBuyWithBundle(params) {
257
274
  const exactOut = await quote.quoteExactInput.staticCall({
258
275
  inputToken: '0x0000000000000000000000000000000000000000',
259
276
  outputToken: tokenAddress,
260
- inputAmount: amountIn,
277
+ inputAmount: amountIn
261
278
  });
262
279
  const keep = BigInt(10000 - slippageBps);
263
280
  minAmountOut = (exactOut * keep) / 10000n;
@@ -275,7 +292,7 @@ export async function batchBuyWithBundle(params) {
275
292
  const estimatedGas = await provider.estimateGas({
276
293
  ...buyTxUnsigned,
277
294
  from: buyerWallet.address,
278
- value: amountIn,
295
+ value: amountIn
279
296
  });
280
297
  const gasLimit = (estimatedGas * 120n) / 100n;
281
298
  const buyTxRequest = {
@@ -285,7 +302,7 @@ export async function batchBuyWithBundle(params) {
285
302
  gasLimit: gasLimit,
286
303
  gasPrice: gasPrice,
287
304
  chainId: 56, // BSC
288
- type: 0, // Legacy transaction
305
+ type: 0 // Legacy transaction
289
306
  };
290
307
  const signedBuyTx = await buyerWallet.signTransaction(buyTxRequest);
291
308
  signedTxs.push(signedBuyTx);
@@ -293,11 +310,11 @@ export async function batchBuyWithBundle(params) {
293
310
  const bundleUuid = await club48.sendBundle({
294
311
  txs: signedTxs,
295
312
  maxBlockNumber: (await provider.getBlockNumber()) + blockOffset,
296
- noMerge: config.noMerge,
313
+ noMerge: config.noMerge
297
314
  }, {
298
315
  spMode: params.config.spMode ?? 'timestampPersonalSign',
299
316
  spPrivateKey: params.config.spPrivateKey || privateKeys[0],
300
- spVMode: params.config.spVMode,
317
+ spVMode: params.config.spVMode
301
318
  });
302
319
  const status = await club48.waitForBundle(bundleUuid);
303
320
  return { bundleUuid, status, buyTxs: signedTxs };
@@ -313,7 +330,7 @@ export async function batchSellWithBundle(params) {
313
330
  const provider = new JsonRpcProvider(config.rpcUrl);
314
331
  const club48 = new Club48Client({
315
332
  endpoint: config.club48Endpoint,
316
- explorerEndpoint: config.club48ExplorerEndpoint,
333
+ explorerEndpoint: config.club48ExplorerEndpoint
317
334
  });
318
335
  const blockOffset = config.bundleBlockOffset ?? 100;
319
336
  const portalAddr = FLAP_PORTAL_ADDRESSES[chain];
@@ -342,7 +359,7 @@ export async function batchSellWithBundle(params) {
342
359
  gasLimit: GAS_LIMITS.BRIBE,
343
360
  chainId: 56,
344
361
  type: 0, // Legacy transaction
345
- nonce: await getNextNonce(tipWallet),
362
+ nonce: await getNextNonce(tipWallet)
346
363
  });
347
364
  signedTxs.unshift(tipTx);
348
365
  }
@@ -361,7 +378,7 @@ export async function batchSellWithBundle(params) {
361
378
  // 估算 gas 并添加 20% 安全余量
362
379
  const estimatedGas = await provider.estimateGas({
363
380
  ...sellTxUnsigned,
364
- from: sellerWallet.address,
381
+ from: sellerWallet.address
365
382
  });
366
383
  const gasLimit = (estimatedGas * 120n) / 100n;
367
384
  const sellTxRequest = {
@@ -371,7 +388,7 @@ export async function batchSellWithBundle(params) {
371
388
  gasLimit: gasLimit,
372
389
  gasPrice: gasPrice,
373
390
  chainId: 56, // BSC
374
- type: 0, // Legacy transaction
391
+ type: 0 // Legacy transaction
375
392
  };
376
393
  const signedSellTx = await sellerWallet.signTransaction(sellTxRequest);
377
394
  signedTxs.push(signedSellTx);
@@ -379,17 +396,17 @@ export async function batchSellWithBundle(params) {
379
396
  const bundleUuid = await club48.sendBundle({
380
397
  txs: signedTxs,
381
398
  maxBlockNumber: (await provider.getBlockNumber()) + blockOffset,
382
- noMerge: config.noMerge,
399
+ noMerge: config.noMerge
383
400
  }, {
384
401
  spMode: params.config.spMode ?? 'timestampPersonalSign',
385
402
  spPrivateKey: params.config.spPrivateKey || privateKeys[0],
386
- spVMode: params.config.spVMode,
403
+ spVMode: params.config.spVMode
387
404
  });
388
405
  const status = await club48.waitForBundle(bundleUuid);
389
406
  return { bundleUuid, status, sellTxs: signedTxs };
390
407
  }
391
408
  export async function flapPrivateBuy(params) {
392
- const { chain, privateKey, tokenAddress, amountIn, config, spPrivateKey } = params;
409
+ const { chain, privateKey, tokenAddress, amountIn, to, config, spPrivateKey } = params;
393
410
  const provider = new JsonRpcProvider(config.rpcUrl);
394
411
  const wallet = new Wallet(privateKey, provider);
395
412
  const club48 = new Club48Client({ endpoint: config.club48Endpoint, explorerEndpoint: config.club48ExplorerEndpoint });
@@ -409,7 +426,7 @@ export async function flapPrivateBuy(params) {
409
426
  const estimatedGas = await provider.estimateGas({
410
427
  ...unsigned,
411
428
  from: wallet.address,
412
- value: amountWei,
429
+ value: amountWei
413
430
  });
414
431
  const gasLimit = (estimatedGas * 120n) / 100n;
415
432
  const req = {
@@ -419,7 +436,7 @@ export async function flapPrivateBuy(params) {
419
436
  gasLimit: gasLimit,
420
437
  gasPrice,
421
438
  chainId: 56,
422
- type: 0, // Legacy transaction
439
+ type: 0 // Legacy transaction
423
440
  };
424
441
  const signed = await wallet.signTransaction(req);
425
442
  if (spPrivateKey)
@@ -446,7 +463,7 @@ export async function flapPrivateSell(params) {
446
463
  // 估算 gas 并添加 20% 安全余量
447
464
  const estimatedGas = await provider.estimateGas({
448
465
  ...unsigned,
449
- from: wallet.address,
466
+ from: wallet.address
450
467
  });
451
468
  const gasLimit = (estimatedGas * 120n) / 100n;
452
469
  const req = {
@@ -456,7 +473,7 @@ export async function flapPrivateSell(params) {
456
473
  gasLimit: gasLimit,
457
474
  gasPrice,
458
475
  chainId: 56,
459
- type: 0, // Legacy transaction
476
+ type: 0 // Legacy transaction
460
477
  };
461
478
  const signed = await wallet.signTransaction(req);
462
479
  if (spPrivateKey)
@@ -499,21 +516,13 @@ export async function flapBatchPrivateBuy(params) {
499
516
  // 估算 gas 并添加 20% 安全余量
500
517
  const estimatedGas = await provider.estimateGas({ ...unsigned, from: w.address, value: amountWei });
501
518
  const gasLimit = (estimatedGas * 120n) / 100n;
502
- const req = {
503
- ...unsigned,
504
- from: w.address,
505
- nonce: await getNextNonce(w),
506
- gasLimit,
507
- gasPrice,
508
- chainId: 56,
509
- type: 0,
510
- };
519
+ const req = { ...unsigned, from: w.address, nonce: await getNextNonce(w), gasLimit, gasPrice, chainId: 56, type: 0 };
511
520
  signedTxs.push(await w.signTransaction(req));
512
521
  }
513
522
  return await sendBatchPrivateTransactions(signedTxs, spPrivateKey, config.club48Endpoint || 'https://puissant-bsc.48.club');
514
523
  }
515
524
  export async function flapBatchPrivateSell(params) {
516
- const { chain, privateKeys, amounts, tokenAddress, config, minEthEach } = params;
525
+ const { chain, privateKeys, amounts, tokenAddress, config, spPrivateKey, minEthEach } = params;
517
526
  if (privateKeys.length !== amounts.length)
518
527
  throw new Error('privateKeys and amounts length mismatch');
519
528
  const provider = new JsonRpcProvider(config.rpcUrl);
@@ -549,15 +558,7 @@ export async function flapBatchPrivateSell(params) {
549
558
  // 估算 gas 并添加 20% 安全余量
550
559
  const estimatedGas = await provider.estimateGas({ ...unsigned, from: w.address });
551
560
  const gasLimit = (estimatedGas * 120n) / 100n;
552
- const req = {
553
- ...unsigned,
554
- from: w.address,
555
- nonce: await getNextNonce(w),
556
- gasLimit,
557
- gasPrice,
558
- chainId: 56,
559
- type: 0,
560
- };
561
+ const req = { ...unsigned, from: w.address, nonce: await getNextNonce(w), gasLimit, gasPrice, chainId: 56, type: 0 };
561
562
  signedTxs.push(await w.signTransaction(req));
562
563
  }
563
564
  // 使用 bundle 通道提交(统一与捆绑买保持一致)
@@ -565,12 +566,12 @@ export async function flapBatchPrivateSell(params) {
565
566
  const bundleUuid = await club48.sendBundle({
566
567
  txs: signedTxs,
567
568
  maxBlockNumber: (await provider.getBlockNumber()) + blockOffset,
568
- noMerge: config.noMerge,
569
+ noMerge: config.noMerge
569
570
  }, {
570
571
  // 若传入 sp 配置,则用于生成 48SP 签名提升打包优先级(与批量买一致)
571
572
  spMode: params.config.spMode ?? 'timestampPersonalSign',
572
573
  spPrivateKey: params.config.spPrivateKey || 'https://puissant-bsc.48.club',
573
- spVMode: params.config.spVMode,
574
+ spVMode: params.config.spVMode
574
575
  });
575
576
  try {
576
577
  const status = await club48.waitForBundle(bundleUuid);
@@ -1,15 +1,10 @@
1
1
  /**
2
2
  * Portal 发币交易构建(newTokenV6 / newTokenV7 / VaultPortal)
3
- *
4
- * 对齐 Flap 官方文档:
5
- * - newTokenV6:TOKEN_V2_PERMIT / TOKEN_TAXED_V3
6
- * - newTokenV7:TOKEN_V3_PERMIT(BSC 标准 V3 / PCS Infinity CL,与 Flap 官网一致)
7
- * - newTokenV4:已弃用(Portal 侧 FeatureDisabled,勿再使用)
8
- * - VaultPortal.newTaxTokenWithVault:带金库的税币(legacy 参数结构)
3
+ * @see https://docs.flap.sh/flap/developers/token-launcher-developers/launch-token-through-portal
9
4
  */
10
5
  import { Contract, type Wallet } from 'ethers';
11
6
  import { type TaxVaultConfig } from './vault.js';
12
- /** 分红代币:将 launching token 本身作为分红代币 */
7
+ import type { TaxV2Config } from './portal-bundle-merkle/types.js';
13
8
  export declare const MAGIC_DIVIDEND_SELF = "0xfEEDFEEDfeEDFEedFEEdFEEDFeEdfEEdFeEdFEEd";
14
9
  export type NormalizedTaxLaunchConfig = {
15
10
  taxDuration: number;
@@ -39,43 +34,30 @@ export type PopulateCreateTokenParams = {
39
34
  dexThresh?: number;
40
35
  salt?: string;
41
36
  migratorType?: number;
42
- /** legacy 单税率(bps),无 buy/sell 时作为对称税率 */
43
37
  taxRate?: number;
38
+ buyTaxRate?: number;
39
+ sellTaxRate?: number;
44
40
  dexId?: number;
45
41
  lpFeeProfile?: number;
46
42
  extensionID?: string;
47
43
  extensionData?: string;
48
- /** 标准 V3 / TOKEN_V3_PERMIT(newTokenV7 + PCS_INFINITY_CL_MIGRATOR,对齐 Flap Portal v5.8.6+) */
44
+ /** 标准 V3 newTokenV7 + TOKEN_V3_PERMIT(与 Flap 官网一致) */
49
45
  useV7Portal?: boolean;
50
- /** @deprecated 使用 useV7Portal */
51
- useV4Portal?: boolean;
52
- /** @deprecated 已合并到 useV7Portal */
53
- useClInfinityLaunch?: boolean;
54
- /** 高级税币 / 税币 V3 配置 */
55
46
  taxConfig?: NormalizedTaxLaunchConfig;
56
- /** 创建时内嵌买入(Flap 文档方式 A:quoteAmt + msg.value) */
57
47
  initialQuoteAmt?: bigint;
58
48
  };
59
- /** TaxV2Config(含 distribution 嵌套)或 flat 结构归一化 */
60
- export declare function normalizeTaxLaunchConfig(input?: {
61
- taxDuration: number;
62
- antiFarmerDuration: number;
63
- mktBps?: number;
64
- deflationBps?: number;
65
- dividendBps?: number;
66
- lpBps?: number;
67
- minimumShareBalance?: number;
68
- buyTaxRate?: number;
69
- sellTaxRate?: number;
70
- dividendToken?: string;
71
- commissionReceiver?: string;
72
- vaultConfig?: TaxVaultConfig;
73
- distribution?: {
74
- mktBps: number;
75
- deflationBps: number;
76
- dividendBps: number;
77
- lpBps: number;
78
- minimumShareBalance?: number;
79
- };
80
- }, fallbackTaxRate?: number): NormalizedTaxLaunchConfig | undefined;
49
+ /** bundle 发币路径:标准 V3(dexId/lpFeeProfile)→ newTokenV7,税币/金库 V6 */
50
+ export declare function resolveCreateTokenLaunchFlags(params: {
51
+ taxRate?: number;
52
+ taxV2Config?: TaxV2Config;
53
+ lpFeeProfile?: number;
54
+ dexId?: number;
55
+ migratorType?: number;
56
+ extensionID?: string;
57
+ }): {
58
+ normalizedTax: NormalizedTaxLaunchConfig | undefined;
59
+ useV7Portal: boolean;
60
+ };
61
+ /** 将 TaxV2Config(含 distribution)归一化;金库发射在税率为 0 时仍返回配置 */
62
+ export declare function normalizeTaxLaunchConfig(input?: TaxV2Config, fallbackTaxRate?: number): NormalizedTaxLaunchConfig | undefined;
81
63
  export declare function populateCreateTokenTransaction(params: PopulateCreateTokenParams): Promise<import("ethers").ContractTransaction>;