@paraswap/dex-lib 3.4.0 → 3.4.1

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 (360) hide show
  1. package/.vscode/launch.json +53 -0
  2. package/.vscode/settings.json +2 -0
  3. package/.vscode/tasks.json +15 -0
  4. package/README.md +3 -3
  5. package/abis.txt +92 -0
  6. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  7. package/build/abi/{integral/relayer.json → wombat/pool.json} +587 -446
  8. package/build/config.js +0 -35
  9. package/build/config.js.map +1 -1
  10. package/build/constants.d.ts +0 -1
  11. package/build/constants.js +0 -1
  12. package/build/constants.js.map +1 -1
  13. package/build/dex/augustus-rfq.js +0 -1
  14. package/build/dex/augustus-rfq.js.map +1 -1
  15. package/build/dex/curve-v1/config.js +1 -57
  16. package/build/dex/curve-v1/config.js.map +1 -1
  17. package/build/dex/curve-v1-factory/config.js +1 -1
  18. package/build/dex/curve-v1-factory/config.js.map +1 -1
  19. package/build/dex/etherfi.js +1 -1
  20. package/build/dex/gmx/gmx.js.map +1 -1
  21. package/build/dex/index.js +0 -14
  22. package/build/dex/index.js.map +1 -1
  23. package/build/dex/nerve/config.js +0 -399
  24. package/build/dex/nerve/config.js.map +1 -1
  25. package/build/dex/paraswap-limit-orders/config.js +0 -7
  26. package/build/dex/paraswap-limit-orders/config.js.map +1 -1
  27. package/build/dex/quick-perps/quick-perps.js.map +1 -1
  28. package/build/dex/quickswap/config.js +0 -8
  29. package/build/dex/quickswap/config.js.map +1 -1
  30. package/build/dex/solidly/config.js +1 -27
  31. package/build/dex/solidly/config.js.map +1 -1
  32. package/build/dex/solidly/solidly.js +0 -2
  33. package/build/dex/solidly/solidly.js.map +1 -1
  34. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  35. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  36. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  37. package/build/dex/stable-pool/stable-pool.js +1 -8
  38. package/build/dex/stable-pool/stable-pool.js.map +1 -1
  39. package/build/dex/stable-pool.js +1 -8
  40. package/build/dex/stable-pool.js.map +1 -1
  41. package/build/dex/uniswap-v2/config.js +0 -152
  42. package/build/dex/uniswap-v2/config.js.map +1 -1
  43. package/build/dex/uniswap-v2/constants.js +0 -1
  44. package/build/dex/uniswap-v2/constants.js.map +1 -1
  45. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  46. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  47. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  48. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  49. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  50. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  51. package/build/dex/weth/config.js +0 -3
  52. package/build/dex/weth/config.js.map +1 -1
  53. package/build/dex/wsteth/wsteth.js.map +1 -1
  54. package/build/types.d.ts +0 -1
  55. package/package.json +1 -1
  56. package/src/config.ts +0 -39
  57. package/src/constants.ts +0 -1
  58. package/src/dex/augustus-rfq.ts +0 -1
  59. package/src/dex/curve-v1/config.ts +1 -57
  60. package/src/dex/curve-v1/curve-v1-e2e.test.ts +0 -51
  61. package/src/dex/curve-v1-factory/config.ts +1 -1
  62. package/src/dex/etherfi.ts +1 -1
  63. package/src/dex/gmx/gmx.ts +1 -4
  64. package/src/dex/index.ts +0 -14
  65. package/src/dex/nerve/config.ts +0 -400
  66. package/src/dex/nerve/nerve-e2e.test.ts +0 -507
  67. package/src/dex/nerve/nerve-events.test.ts +0 -268
  68. package/src/dex/paraswap-limit-orders/config.ts +0 -7
  69. package/src/dex/paraswap-limit-orders/paraswap-limit-orders-e2e.test.ts +2 -2
  70. package/src/dex/paraswap-limit-orders/paraswap-limit-orders-integration.test.ts +1 -1
  71. package/src/dex/quick-perps/quick-perps.ts +1 -4
  72. package/src/dex/quickswap/config.ts +0 -9
  73. package/src/dex/quickswap/quickswap-e2e.test.ts +0 -97
  74. package/src/dex/solidly/config.ts +1 -30
  75. package/src/dex/solidly/solidly-e2e.test.ts +0 -280
  76. package/src/dex/solidly/solidly-integration.test.ts +0 -135
  77. package/src/dex/solidly/solidly.ts +0 -2
  78. package/src/dex/stable-pool/stable-pool.ts +1 -8
  79. package/src/dex/uniswap-v2/config.ts +0 -185
  80. package/src/dex/uniswap-v2/constants.ts +0 -1
  81. package/src/dex/uniswap-v2/uniswap-v2-e2e-avalanche.test.ts +0 -272
  82. package/src/dex/uniswap-v2/uniswap-v2-e2e-base.test.ts +0 -6
  83. package/src/dex/uniswap-v2/uniswap-v2-e2e-bsc.test.ts +0 -325
  84. package/src/dex/uniswap-v2/uniswap-v2-e2e-mainnet.test.ts +0 -175
  85. package/src/dex/uniswap-v2/uniswap-v2-e2e-polygon.test.ts +0 -413
  86. package/src/dex/weth/config.ts +0 -3
  87. package/src/dex/wsteth/wsteth.ts +1 -4
  88. package/src/types.ts +0 -1
  89. package/tests/constants-e2e.ts +0 -21
  90. package/tests/generate-new-limit-order.ts +1 -1
  91. package/.idea/aws.xml +0 -17
  92. package/.idea/codeStyles/Project.xml +0 -19
  93. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  94. package/.idea/misc.xml +0 -6
  95. package/.idea/modules.xml +0 -8
  96. package/.idea/paraswap-dex-lib.iml +0 -9
  97. package/.idea/prettier.xml +0 -7
  98. package/.idea/vcs.xml +0 -6
  99. package/build/abi/AugustusV6.abi.json +0 -395
  100. package/build/abi/algebra/AlgebraPool.abi.json +0 -727
  101. package/build/abi/curve-v1/StableSwapFRXETH.json +0 -889
  102. package/build/abi/curve-v1/StableSwapWBETH.json +0 -1223
  103. package/build/abi/sushiswap-v3/QuoterV2.json +0 -267
  104. package/build/abi/sushiswap-v3/RouterProcessor3.json +0 -289
  105. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  106. package/build/abi/uniswap-v3/pancakeswap-v3/PancakeswapV3QuoterV2.abi.json +0 -285
  107. package/build/abi/uniswap-v3/pancakeswap-v3/PancakeswapV3Router.abi.json +0 -583
  108. package/build/abi/wBETH.json +0 -1527
  109. package/build/abi/woo-fi/WooFeeManager.abi.json +0 -318
  110. package/build/abi/woo-fi/WooPP.abi.json +0 -548
  111. package/build/abi/woo-fi/Wooracle.abi.json +0 -260
  112. package/build/dex/aave-v3/tokens/arbitrum.json +0 -50
  113. package/build/dex/aave-v3/tokens/avalanche.json +0 -74
  114. package/build/dex/aave-v3/tokens/fantom.json +0 -62
  115. package/build/dex/aave-v3/tokens/optimism.json +0 -50
  116. package/build/dex/aave-v3/tokens/polygon.json +0 -116
  117. package/build/dex/algebra/algebra-pool.d.ts +0 -114
  118. package/build/dex/algebra/algebra-pool.js +0 -448
  119. package/build/dex/algebra/algebra-pool.js.map +0 -1
  120. package/build/dex/balancer-v2/Gyro3Pool.d.ts +0 -43
  121. package/build/dex/balancer-v2/Gyro3Pool.js +0 -160
  122. package/build/dex/balancer-v2/Gyro3Pool.js.map +0 -1
  123. package/build/dex/balancer-v2/LinearMath.d.ts +0 -88
  124. package/build/dex/balancer-v2/LinearMath.js +0 -285
  125. package/build/dex/balancer-v2/LinearMath.js.map +0 -1
  126. package/build/dex/balancer-v2/LinearPool.d.ts +0 -81
  127. package/build/dex/balancer-v2/LinearPool.js +0 -444
  128. package/build/dex/balancer-v2/LinearPool.js.map +0 -1
  129. package/build/dex/balancer-v2/PhantomStablePool.d.ts +0 -90
  130. package/build/dex/balancer-v2/PhantomStablePool.js +0 -418
  131. package/build/dex/balancer-v2/PhantomStablePool.js.map +0 -1
  132. package/build/dex/balancer-v2/StableMath.d.ts +0 -9
  133. package/build/dex/balancer-v2/StableMath.js +0 -272
  134. package/build/dex/balancer-v2/StableMath.js.map +0 -1
  135. package/build/dex/balancer-v2/balancer-v2-pool.d.ts +0 -140
  136. package/build/dex/balancer-v2/balancer-v2-pool.js +0 -647
  137. package/build/dex/balancer-v2/balancer-v2-pool.js.map +0 -1
  138. package/build/dex/curve-v1/pools/frxETHpool.d.ts +0 -7
  139. package/build/dex/curve-v1/pools/frxETHpool.js +0 -27
  140. package/build/dex/curve-v1/pools/frxETHpool.js.map +0 -1
  141. package/build/dex/curve-v1/pools/wbETHpool.d.ts +0 -29
  142. package/build/dex/curve-v1/pools/wbETHpool.js +0 -408
  143. package/build/dex/curve-v1/pools/wbETHpool.js.map +0 -1
  144. package/build/dex/integral/config.d.ts +0 -4
  145. package/build/dex/integral/config.js +0 -18
  146. package/build/dex/integral/config.js.map +0 -1
  147. package/build/dex/integral/integral-pool.d.ts +0 -39
  148. package/build/dex/integral/integral-pool.js +0 -67
  149. package/build/dex/integral/integral-pool.js.map +0 -1
  150. package/build/dex/integral/integral.d.ts +0 -48
  151. package/build/dex/integral/integral.js +0 -402
  152. package/build/dex/integral/integral.js.map +0 -1
  153. package/build/dex/integral/types.d.ts +0 -25
  154. package/build/dex/integral/types.js +0 -9
  155. package/build/dex/integral/types.js.map +0 -1
  156. package/build/dex/lighter-v1/abi/erc20.json +0 -222
  157. package/build/dex/lighter-v1/abi/factory.json +0 -291
  158. package/build/dex/lighter-v1/abi/order_book.json +0 -594
  159. package/build/dex/lighter-v1/abi/order_book_helper.json +0 -176
  160. package/build/dex/lighter-v1/abi/router.json +0 -488
  161. package/build/dex/lighter-v1/config.d.ts +0 -4
  162. package/build/dex/lighter-v1/config.js +0 -17
  163. package/build/dex/lighter-v1/config.js.map +0 -1
  164. package/build/dex/lighter-v1/constants.d.ts +0 -2
  165. package/build/dex/lighter-v1/constants.js +0 -13
  166. package/build/dex/lighter-v1/constants.js.map +0 -1
  167. package/build/dex/lighter-v1/lighter-v1-pool.d.ts +0 -57
  168. package/build/dex/lighter-v1/lighter-v1-pool.js +0 -310
  169. package/build/dex/lighter-v1/lighter-v1-pool.js.map +0 -1
  170. package/build/dex/lighter-v1/lighter-v1.d.ts +0 -45
  171. package/build/dex/lighter-v1/lighter-v1.js +0 -331
  172. package/build/dex/lighter-v1/lighter-v1.js.map +0 -1
  173. package/build/dex/lighter-v1/types.d.ts +0 -40
  174. package/build/dex/lighter-v1/types.js +0 -3
  175. package/build/dex/lighter-v1/types.js.map +0 -1
  176. package/build/dex/pancakeswap-v3/types.d.ts +0 -14
  177. package/build/dex/pancakeswap-v3/types.js +0 -3
  178. package/build/dex/pancakeswap-v3/types.js.map +0 -1
  179. package/build/dex/quickswap/camelot-v3.d.ts +0 -6
  180. package/build/dex/quickswap/camelot-v3.js +0 -19
  181. package/build/dex/quickswap/camelot-v3.js.map +0 -1
  182. package/build/dex/quickswap/zyberswap-v3.d.ts +0 -6
  183. package/build/dex/quickswap/zyberswap-v3.js +0 -19
  184. package/build/dex/quickswap/zyberswap-v3.js.map +0 -1
  185. package/build/dex/quickswap-v3.d.ts +0 -21
  186. package/build/dex/quickswap-v3.js +0 -40
  187. package/build/dex/quickswap-v3.js.map +0 -1
  188. package/build/dex/ramses-v2/config.d.ts +0 -4
  189. package/build/dex/ramses-v2/config.js +0 -28
  190. package/build/dex/ramses-v2/config.js.map +0 -1
  191. package/build/dex/ramses-v2/constants.d.ts +0 -28
  192. package/build/dex/ramses-v2/constants.js +0 -35
  193. package/build/dex/ramses-v2/constants.js.map +0 -1
  194. package/build/dex/ramses-v2/contract-math/BitMath.d.ts +0 -4
  195. package/build/dex/ramses-v2/contract-math/BitMath.js +0 -93
  196. package/build/dex/ramses-v2/contract-math/BitMath.js.map +0 -1
  197. package/build/dex/ramses-v2/contract-math/FixedPoint128.d.ts +0 -3
  198. package/build/dex/ramses-v2/contract-math/FixedPoint128.js +0 -8
  199. package/build/dex/ramses-v2/contract-math/FixedPoint128.js.map +0 -1
  200. package/build/dex/ramses-v2/contract-math/FixedPoint96.d.ts +0 -4
  201. package/build/dex/ramses-v2/contract-math/FixedPoint96.js +0 -9
  202. package/build/dex/ramses-v2/contract-math/FixedPoint96.js.map +0 -1
  203. package/build/dex/ramses-v2/contract-math/FullMath.d.ts +0 -4
  204. package/build/dex/ramses-v2/contract-math/FullMath.js +0 -19
  205. package/build/dex/ramses-v2/contract-math/FullMath.js.map +0 -1
  206. package/build/dex/ramses-v2/contract-math/LiquidityMath.d.ts +0 -3
  207. package/build/dex/ramses-v2/contract-math/LiquidityMath.js +0 -22
  208. package/build/dex/ramses-v2/contract-math/LiquidityMath.js.map +0 -1
  209. package/build/dex/ramses-v2/contract-math/Oracle.d.ts +0 -10
  210. package/build/dex/ramses-v2/contract-math/Oracle.js +0 -133
  211. package/build/dex/ramses-v2/contract-math/Oracle.js.map +0 -1
  212. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.d.ts +0 -10
  213. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js +0 -91
  214. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js.map +0 -1
  215. package/build/dex/ramses-v2/contract-math/SwapMath.d.ts +0 -8
  216. package/build/dex/ramses-v2/contract-math/SwapMath.js +0 -70
  217. package/build/dex/ramses-v2/contract-math/SwapMath.js.map +0 -1
  218. package/build/dex/ramses-v2/contract-math/Tick.d.ts +0 -7
  219. package/build/dex/ramses-v2/contract-math/Tick.js +0 -45
  220. package/build/dex/ramses-v2/contract-math/Tick.js.map +0 -1
  221. package/build/dex/ramses-v2/contract-math/TickBitMap.d.ts +0 -8
  222. package/build/dex/ramses-v2/contract-math/TickBitMap.js +0 -87
  223. package/build/dex/ramses-v2/contract-math/TickBitMap.js.map +0 -1
  224. package/build/dex/ramses-v2/contract-math/TickMath.d.ts +0 -8
  225. package/build/dex/ramses-v2/contract-math/TickMath.js +0 -162
  226. package/build/dex/ramses-v2/contract-math/TickMath.js.map +0 -1
  227. package/build/dex/ramses-v2/contract-math/UnsafeMath.d.ts +0 -3
  228. package/build/dex/ramses-v2/contract-math/UnsafeMath.js +0 -10
  229. package/build/dex/ramses-v2/contract-math/UnsafeMath.js.map +0 -1
  230. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.d.ts +0 -18
  231. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js +0 -392
  232. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js.map +0 -1
  233. package/build/dex/ramses-v2/contract-math/utils.d.ts +0 -3
  234. package/build/dex/ramses-v2/contract-math/utils.js +0 -16
  235. package/build/dex/ramses-v2/contract-math/utils.js.map +0 -1
  236. package/build/dex/ramses-v2/ramses-v2-pool.d.ts +0 -42
  237. package/build/dex/ramses-v2/ramses-v2-pool.js +0 -307
  238. package/build/dex/ramses-v2/ramses-v2-pool.js.map +0 -1
  239. package/build/dex/ramses-v2/ramses-v2.d.ts +0 -61
  240. package/build/dex/ramses-v2/ramses-v2.js +0 -690
  241. package/build/dex/ramses-v2/ramses-v2.js.map +0 -1
  242. package/build/dex/ramses-v2/types.d.ts +0 -154
  243. package/build/dex/ramses-v2/types.js +0 -9
  244. package/build/dex/ramses-v2/types.js.map +0 -1
  245. package/build/dex/ramses-v2/utils.d.ts +0 -6
  246. package/build/dex/ramses-v2/utils.js +0 -71
  247. package/build/dex/ramses-v2/utils.js.map +0 -1
  248. package/build/dex/solidly/forks-override/fvm.d.ts +0 -20
  249. package/build/dex/solidly/forks-override/fvm.js +0 -42
  250. package/build/dex/solidly/forks-override/fvm.js.map +0 -1
  251. package/build/dex/sushiswap-v3/config.d.ts +0 -4
  252. package/build/dex/sushiswap-v3/config.js +0 -132
  253. package/build/dex/sushiswap-v3/config.js.map +0 -1
  254. package/build/dex/sushiswap-v3/constants.d.ts +0 -4
  255. package/build/dex/sushiswap-v3/constants.js +0 -32
  256. package/build/dex/sushiswap-v3/constants.js.map +0 -1
  257. package/build/dex/sushiswap-v3/sushiswap-v3-original.d.ts +0 -56
  258. package/build/dex/sushiswap-v3/sushiswap-v3-original.js +0 -598
  259. package/build/dex/sushiswap-v3/sushiswap-v3-original.js.map +0 -1
  260. package/build/dex/sushiswap-v3/sushiswap-v3-pool.d.ts +0 -1
  261. package/build/dex/sushiswap-v3/sushiswap-v3-pool.js +0 -6
  262. package/build/dex/sushiswap-v3/sushiswap-v3-pool.js.map +0 -1
  263. package/build/dex/sushiswap-v3/sushiswap-v3.d.ts +0 -21
  264. package/build/dex/sushiswap-v3/sushiswap-v3.js +0 -58
  265. package/build/dex/sushiswap-v3/sushiswap-v3.js.map +0 -1
  266. package/build/dex/sushiswap-v3/token.d.ts +0 -6
  267. package/build/dex/sushiswap-v3/token.js +0 -23
  268. package/build/dex/sushiswap-v3/token.js.map +0 -1
  269. package/build/dex/sushiswap-v3/types.d.ts +0 -15
  270. package/build/dex/sushiswap-v3/types.js +0 -18
  271. package/build/dex/sushiswap-v3/types.js.map +0 -1
  272. package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.d.ts +0 -12
  273. package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.js +0 -23
  274. package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.js.map +0 -1
  275. package/build/dex/woo-fi/config.d.ts +0 -4
  276. package/build/dex/woo-fi/config.js +0 -141
  277. package/build/dex/woo-fi/config.js.map +0 -1
  278. package/build/dex/woo-fi/constants.d.ts +0 -5
  279. package/build/dex/woo-fi/constants.js +0 -20
  280. package/build/dex/woo-fi/constants.js.map +0 -1
  281. package/build/dex/woo-fi/types.d.ts +0 -48
  282. package/build/dex/woo-fi/types.js +0 -3
  283. package/build/dex/woo-fi/types.js.map +0 -1
  284. package/build/dex/woo-fi/woo-fi-decimal-math.d.ts +0 -14
  285. package/build/dex/woo-fi/woo-fi-decimal-math.js +0 -42
  286. package/build/dex/woo-fi/woo-fi-decimal-math.js.map +0 -1
  287. package/build/dex/woo-fi/woo-fi-math.d.ts +0 -31
  288. package/build/dex/woo-fi/woo-fi-math.js +0 -300
  289. package/build/dex/woo-fi/woo-fi-math.js.map +0 -1
  290. package/build/dex/woo-fi/woo-fi.d.ts +0 -65
  291. package/build/dex/woo-fi/woo-fi.js +0 -480
  292. package/build/dex/woo-fi/woo-fi.js.map +0 -1
  293. package/build/executor/IExecutorBytecodeBuilder.d.ts +0 -6
  294. package/build/executor/IExecutorBytecodeBuilder.js +0 -3
  295. package/build/executor/IExecutorBytecodeBuilder.js.map +0 -1
  296. package/src/abi/AaveV1_lending_pool.json +0 -27
  297. package/src/abi/platypus/asset.json +0 -490
  298. package/src/abi/platypus/avax-pool.json +0 -820
  299. package/src/abi/platypus/oracle.json +0 -119
  300. package/src/abi/platypus/pool.json +0 -677
  301. package/src/abi/smardex/all/smardex-router.json +0 -648
  302. package/src/abi/smardex/layer-1/smardex-factory.json +0 -242
  303. package/src/abi/smardex/layer-1/smardex-pool.json +0 -506
  304. package/src/abi/smardex/layer-2/smardex-factory.json +0 -185
  305. package/src/abi/smardex/layer-2/smardex-pool.json +0 -578
  306. package/src/abi/swaap-v1/asset.json +0 -490
  307. package/src/abi/swaap-v1/oracle.json +0 -119
  308. package/src/abi/swaap-v1/pool.json +0 -1346
  309. package/src/dex/aave-v1/aave-v1-e2e.test.ts +0 -105
  310. package/src/dex/aave-v1/aave-v1-integration.test.ts +0 -100
  311. package/src/dex/aave-v1/aave-v1.ts +0 -261
  312. package/src/dex/aave-v1/config.ts +0 -22
  313. package/src/dex/aave-v1/tokens-mainnet.json +0 -134
  314. package/src/dex/aave-v1/tokens.ts +0 -58
  315. package/src/dex/aave-v1/types.ts +0 -24
  316. package/src/dex/platypus/asset.ts +0 -139
  317. package/src/dex/platypus/config.ts +0 -72
  318. package/src/dex/platypus/platypus-e2e.test.ts +0 -168
  319. package/src/dex/platypus/platypus-events.test.ts +0 -167
  320. package/src/dex/platypus/platypus-integration.test.ts +0 -256
  321. package/src/dex/platypus/platypus.ts +0 -639
  322. package/src/dex/platypus/pool-avax.ts +0 -92
  323. package/src/dex/platypus/pool-base.ts +0 -155
  324. package/src/dex/platypus/pool-pure.ts +0 -71
  325. package/src/dex/platypus/pool-subscriber.ts +0 -239
  326. package/src/dex/platypus/pool.ts +0 -99
  327. package/src/dex/platypus/types.ts +0 -104
  328. package/src/dex/quickswap/spiritswap-v3.ts +0 -19
  329. package/src/dex/smardex/config.ts +0 -67
  330. package/src/dex/smardex/constants.ts +0 -35
  331. package/src/dex/smardex/sdk/constants.ts +0 -10
  332. package/src/dex/smardex/sdk/core.ts +0 -832
  333. package/src/dex/smardex/sdk/errors.ts +0 -18
  334. package/src/dex/smardex/sdk/types.ts +0 -68
  335. package/src/dex/smardex/sdk/utils.ts +0 -156
  336. package/src/dex/smardex/smardex-e2e.test.ts +0 -275
  337. package/src/dex/smardex/smardex-event-pool.ts +0 -164
  338. package/src/dex/smardex/smardex-events.test.ts +0 -297
  339. package/src/dex/smardex/smardex-integration.test.ts +0 -258
  340. package/src/dex/smardex/smardex.ts +0 -770
  341. package/src/dex/smardex/types.ts +0 -69
  342. package/src/dex/solidly/forks-override/cone.ts +0 -67
  343. package/src/dex/solidly/forks-override/solisnek.ts +0 -10
  344. package/src/dex/swaap-v1/config.ts +0 -62
  345. package/src/dex/swaap-v1/constants.ts +0 -22
  346. package/src/dex/swaap-v1/libraries/ChainlinkUtils.ts +0 -152
  347. package/src/dex/swaap-v1/libraries/Const.ts +0 -29
  348. package/src/dex/swaap-v1/libraries/GeometricBrownianMotion.ts +0 -433
  349. package/src/dex/swaap-v1/libraries/LogExpMath.ts +0 -511
  350. package/src/dex/swaap-v1/libraries/MathMMM.ts +0 -717
  351. package/src/dex/swaap-v1/libraries/Num.ts +0 -184
  352. package/src/dex/swaap-v1/libraries/PoolQuotations.ts +0 -322
  353. package/src/dex/swaap-v1/libraries/Struct.ts +0 -66
  354. package/src/dex/swaap-v1/swaap-v1-e2e.test.ts +0 -75
  355. package/src/dex/swaap-v1/swaap-v1-events.test.ts +0 -138
  356. package/src/dex/swaap-v1/swaap-v1-integration.test.ts +0 -232
  357. package/src/dex/swaap-v1/swaap-v1-pool.ts +0 -919
  358. package/src/dex/swaap-v1/swaap-v1.ts +0 -668
  359. package/src/dex/swaap-v1/types.ts +0 -124
  360. package/src/dex/uniswap-v2/uniswap-v2-e2e-ropsten.test.ts +0 -481
@@ -1,138 +0,0 @@
1
- import dotenv from 'dotenv';
2
- dotenv.config();
3
-
4
- import axios from 'axios';
5
- import { SwaapV1 } from './swaap-v1';
6
- import { SwaapV1Pool } from './swaap-v1-pool';
7
- import { SwaapV1Config } from './config';
8
- import { Network } from '../../constants';
9
- import { DummyDexHelper } from '../../dex-helper/index';
10
- import { testEventSubscriber } from '../../../tests/utils-events';
11
- import { SwaapV1PoolState, SubgraphPoolBase } from './types';
12
-
13
- jest.setTimeout(50 * 1000);
14
- const dexKey = 'SwaapV1';
15
- const network = Network.POLYGON;
16
- const config = SwaapV1Config[dexKey][network];
17
-
18
- const initBlock = new Map<string, number>([
19
- ['0x7f5f7411c2c7ec60e2db946abbe7dc354254870b', 29524183],
20
- ]);
21
-
22
- async function getSubgraphPool(
23
- address: string,
24
- blockNumber: number,
25
- ): Promise<SubgraphPoolBase> {
26
- const id = address.toLowerCase();
27
- const query = `query ($blockNumber: Int, $id: Bytes!) {
28
- pools: pools(block: { number: $blockNumber }, where: {id: $id}) {
29
- id
30
- tokens {
31
- address
32
- decimals
33
- oracleInitialState {
34
- proxy
35
- price: fixedPointPrice
36
- decimals
37
- }
38
- }
39
- liquidity
40
- swapFee
41
- dynamicCoverageFeesZ
42
- dynamicCoverageFeesHorizon
43
- priceStatisticsLookbackInSec
44
- priceStatisticsLookbackInRound
45
- priceStatisticsLookbackStepInRound
46
- maxPriceUnpegRatio
47
- }
48
- }`;
49
- const variables = {
50
- blockNumber,
51
- id,
52
- };
53
- const data = await axios.post(
54
- config.subgraphURL,
55
- { query, variables },
56
- { timeout: 5000 },
57
- );
58
- return data.data.data.pools[0];
59
- }
60
-
61
- async function fetchOnePoolState(
62
- pool: SwaapV1Pool,
63
- blockNumber: number,
64
- ): Promise<SwaapV1PoolState> {
65
- const state = await pool.generateState(blockNumber);
66
- return state;
67
- }
68
-
69
- describe('SwaapV1 Event', function () {
70
- const blockNumbers: { [event: string]: [number, string][] } = {
71
- Swap: [
72
- [29831233, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'],
73
- [29830840, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'],
74
- ],
75
- Exit: [
76
- [29820384, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'],
77
- [29809164, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'],
78
- ],
79
- Join: [
80
- [29829227, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'], // Joinswap
81
- [29828025, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'],
82
- ],
83
- AnswerUpdated: [[29799898, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b']],
84
- LB_STEP_IN_ROUND_TOPIC: [
85
- [33424651, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b'],
86
- ],
87
- SWAP_FEE_TOPIC: [[33678249, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b']],
88
- Z_TOPIC: [[33679213, '0x7f5f7411c2c7ec60e2db946abbe7dc354254870b']],
89
- };
90
-
91
- describe('SwaapV1EventPool', function () {
92
- Object.keys(blockNumbers).forEach((event: string) => {
93
- blockNumbers[event].forEach(([blockNumber, poolAddress]) => {
94
- it(`Should return the correct state after the ${blockNumber}:${event}`, async function () {
95
- const dexHelper = new DummyDexHelper(network);
96
-
97
- const startBlock = Math.max(
98
- initBlock.get(poolAddress)!,
99
- blockNumber - 1,
100
- );
101
- const startSubPool: SubgraphPoolBase = (
102
- await SwaapV1.initPools(dexHelper, startBlock, [
103
- await getSubgraphPool(poolAddress, startBlock),
104
- ])
105
- ).get(poolAddress.toLowerCase())!;
106
- const startSubPoolSwaapV1Pool = new SwaapV1Pool(
107
- dexKey,
108
- network,
109
- startSubPool,
110
- dexHelper,
111
- );
112
-
113
- const endSubPool: SubgraphPoolBase = (
114
- await SwaapV1.initPools(dexHelper, blockNumber, [
115
- await getSubgraphPool(poolAddress, blockNumber),
116
- ])
117
- ).get(poolAddress.toLowerCase())!;
118
- const endSubPoolSwaapV1Pool = new SwaapV1Pool(
119
- dexKey,
120
- network,
121
- endSubPool,
122
- dexHelper,
123
- );
124
-
125
- await testEventSubscriber(
126
- startSubPoolSwaapV1Pool,
127
- startSubPoolSwaapV1Pool.addressesSubscribed,
128
- (_blockNumber: number) =>
129
- fetchOnePoolState(endSubPoolSwaapV1Pool, _blockNumber),
130
- blockNumber,
131
- `${dexKey}_${poolAddress}`,
132
- dexHelper.provider,
133
- );
134
- });
135
- });
136
- });
137
- });
138
- });
@@ -1,232 +0,0 @@
1
- import dotenv from 'dotenv';
2
- dotenv.config();
3
-
4
- import { Interface, Result } from '@ethersproject/abi';
5
- import { DummyDexHelper } from '../../dex-helper/index';
6
- import { MAX_UINT, Network, SwapSide } from '../../constants';
7
- import { BI_POWS } from '../../bigint-constants';
8
- import { SwaapV1 } from './swaap-v1';
9
- import {
10
- checkPoolPrices,
11
- checkPoolsLiquidity,
12
- checkConstantPoolPrices,
13
- } from '../../../tests/utils';
14
- import { Tokens } from '../../../tests/constants-e2e';
15
- import { BlockHeader } from 'web3-eth';
16
-
17
- function getReaderCalldata(
18
- exchangeAddress: string,
19
- readerIface: Interface,
20
- amounts: bigint[],
21
- funcName: string,
22
- srcTokenAddress: string,
23
- destTokenAddress: string,
24
- isSell: boolean,
25
- ) {
26
- return amounts.map(amount => ({
27
- target: exchangeAddress,
28
- callData: readerIface.encodeFunctionData(funcName, [
29
- srcTokenAddress,
30
- isSell ? amount : MAX_UINT,
31
- destTokenAddress,
32
- isSell ? 0 : amount,
33
- MAX_UINT,
34
- ]),
35
- }));
36
- }
37
-
38
- function decodeReaderResult(
39
- results: Result,
40
- readerIface: Interface,
41
- funcName: string,
42
- ) {
43
- return results.map(result => {
44
- const parsed = readerIface.decodeFunctionResult(funcName, result);
45
- return BigInt(parsed[0].amount);
46
- });
47
- }
48
-
49
- async function checkOnChainPricing(
50
- swaapV1: SwaapV1,
51
- blockNumber: number,
52
- prices: bigint[],
53
- amounts: bigint[],
54
- srcTokenAddress: string,
55
- destTokenAddress: string,
56
- side: SwapSide,
57
- ) {
58
- const exchangeAddress = '0x7f5f7411c2c7eC60e2db946aBbe7DC354254870B';
59
-
60
- const readerIface = SwaapV1.poolInterface;
61
-
62
- const isSell = side == SwapSide.SELL ? true : false;
63
- const funcName = isSell ? 'getAmountOutGivenInMMM' : 'getAmountInGivenOutMMM';
64
- const readerCallData = getReaderCalldata(
65
- exchangeAddress,
66
- readerIface,
67
- amounts.slice(1),
68
- funcName,
69
- srcTokenAddress,
70
- destTokenAddress,
71
- isSell,
72
- );
73
- const readerResult = (
74
- await swaapV1.dexHelper.multiContract.methods
75
- .aggregate(readerCallData)
76
- .call({}, blockNumber)
77
- ).returnData;
78
-
79
- const expectedPrices = [0n].concat(
80
- decodeReaderResult(readerResult, readerIface, funcName),
81
- );
82
-
83
- expect(prices).toEqual(expectedPrices);
84
- }
85
-
86
- async function testPricingOnNetwork(
87
- swaapV1: SwaapV1,
88
- network: Network,
89
- dexKey: string,
90
- block: BlockHeader,
91
- srcTokenSymbol: string,
92
- destTokenSymbol: string,
93
- side: SwapSide,
94
- amounts: bigint[],
95
- ) {
96
- const networkTokens = Tokens[network];
97
-
98
- const pools = await swaapV1.getPoolIdentifiers(
99
- networkTokens[srcTokenSymbol],
100
- networkTokens[destTokenSymbol],
101
- side,
102
- block.number,
103
- );
104
- console.log(
105
- `${srcTokenSymbol} <> ${destTokenSymbol} Pool Identifiers: `,
106
- pools,
107
- );
108
-
109
- expect(pools.length).toBeGreaterThan(0);
110
-
111
- const poolPrices = await swaapV1.getPricesVolumeLogic(
112
- networkTokens[srcTokenSymbol],
113
- networkTokens[destTokenSymbol],
114
- amounts,
115
- side,
116
- block.number,
117
- BigInt(block.timestamp),
118
- pools,
119
- );
120
- console.log(
121
- `${srcTokenSymbol} <> ${destTokenSymbol} Pool Prices: `,
122
- poolPrices,
123
- );
124
-
125
- expect(poolPrices).not.toBeNull();
126
- if (swaapV1.hasConstantPriceLargeAmounts) {
127
- checkConstantPoolPrices(poolPrices!, amounts, dexKey);
128
- } else {
129
- checkPoolPrices(poolPrices!, amounts, side, dexKey);
130
- }
131
-
132
- // Check if onchain pricing equals to calculated ones
133
- await checkOnChainPricing(
134
- swaapV1,
135
- block.number,
136
- poolPrices![0].prices,
137
- amounts,
138
- networkTokens[srcTokenSymbol].address,
139
- networkTokens[destTokenSymbol].address,
140
- side,
141
- );
142
- }
143
-
144
- describe('SwaapV1', function () {
145
- const dexKey = 'SwaapV1';
146
-
147
- let block: BlockHeader | undefined = undefined;
148
- let swaapV1: SwaapV1;
149
-
150
- describe('Polygon', () => {
151
- const network = Network.POLYGON;
152
- const dexHelper = new DummyDexHelper(network);
153
-
154
- const tokens = Tokens[network];
155
-
156
- // TODO: Put here token Symbol to check against
157
- // Don't forget to update relevant tokens in constant-e2e.ts
158
- const srcTokenSymbol = 'USDC';
159
- const destTokenSymbol = 'WETH';
160
-
161
- const amountsForSell = [
162
- 0n,
163
- 1n * BI_POWS[tokens[srcTokenSymbol].decimals],
164
- 2n * BI_POWS[tokens[srcTokenSymbol].decimals],
165
- 3n * BI_POWS[tokens[srcTokenSymbol].decimals],
166
- 4n * BI_POWS[tokens[srcTokenSymbol].decimals],
167
- 5n * BI_POWS[tokens[srcTokenSymbol].decimals],
168
- 6n * BI_POWS[tokens[srcTokenSymbol].decimals],
169
- 7n * BI_POWS[tokens[srcTokenSymbol].decimals],
170
- 8n * BI_POWS[tokens[srcTokenSymbol].decimals],
171
- 9n * BI_POWS[tokens[srcTokenSymbol].decimals],
172
- 10n * BI_POWS[tokens[srcTokenSymbol].decimals],
173
- ];
174
-
175
- const amountsForBuy = [0n, 1n * BI_POWS[tokens[destTokenSymbol].decimals]];
176
-
177
- beforeAll(async () => {
178
- swaapV1 = new SwaapV1(network, dexKey, dexHelper);
179
-
180
- block = await dexHelper.web3Provider.eth.getBlock('latest');
181
-
182
- if (swaapV1.initializePricing) {
183
- await swaapV1.initializePricing(block.number);
184
- }
185
- });
186
-
187
- it('getPoolIdentifiers and getPricesVolume SELL', async function () {
188
- await testPricingOnNetwork(
189
- swaapV1,
190
- network,
191
- dexKey,
192
- block!,
193
- srcTokenSymbol,
194
- destTokenSymbol,
195
- SwapSide.SELL,
196
- amountsForSell,
197
- );
198
- });
199
-
200
- it('getPoolIdentifiers and getPricesVolume BUY', async function () {
201
- await testPricingOnNetwork(
202
- swaapV1,
203
- network,
204
- dexKey,
205
- block!,
206
- srcTokenSymbol,
207
- destTokenSymbol,
208
- SwapSide.BUY,
209
- amountsForBuy,
210
- );
211
- });
212
-
213
- it('getTopPoolsForToken', async function () {
214
- // We have to check without calling initializePricing, because
215
- // pool-tracker is not calling that function
216
- const newSwaapV1 = new SwaapV1(network, dexKey, dexHelper);
217
- const poolLiquidity = await newSwaapV1.getTopPoolsForToken(
218
- tokens[srcTokenSymbol].address,
219
- 10,
220
- );
221
- console.log(`${srcTokenSymbol} Top Pools:`, poolLiquidity);
222
-
223
- if (!newSwaapV1.hasConstantPriceLargeAmounts) {
224
- checkPoolsLiquidity(
225
- poolLiquidity,
226
- Tokens[network][srcTokenSymbol].address,
227
- dexKey,
228
- );
229
- }
230
- });
231
- });
232
- });