@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,139 +0,0 @@
1
- import { DeepReadonly } from 'ts-essentials';
2
- import { PartialEventSubscriber } from '../../composed-event-subscriber';
3
- import {
4
- Address,
5
- BlockHeader,
6
- Log,
7
- Logger,
8
- MultiCallInput,
9
- MultiCallOutput,
10
- } from '../../types';
11
- import { Lens } from '../../lens';
12
- import { Interface } from '@ethersproject/abi';
13
- import AssetABI from '../../abi/platypus/asset.json';
14
- import { PlatypusAssetState } from './types';
15
-
16
- export class PlatypusAssetSubscriber<State> extends PartialEventSubscriber<
17
- State,
18
- PlatypusAssetState
19
- > {
20
- static readonly assetInterface = new Interface(AssetABI);
21
-
22
- constructor(
23
- private asset: Address,
24
- lens: Lens<DeepReadonly<State>, DeepReadonly<PlatypusAssetState>>,
25
- logger: Logger,
26
- ) {
27
- super([asset], lens, logger);
28
- }
29
-
30
- public processLog(
31
- state: DeepReadonly<PlatypusAssetState>,
32
- log: Readonly<Log>,
33
- blockHeader: Readonly<BlockHeader>,
34
- ): DeepReadonly<PlatypusAssetState> | null {
35
- try {
36
- const parsed = PlatypusAssetSubscriber.assetInterface.parseLog(log);
37
- switch (parsed.name) {
38
- case 'CashAdded': {
39
- const previousCashPosition = BigInt(
40
- parsed.args.previousCashPosition.toString(),
41
- );
42
- const cashBeingAdded = BigInt(parsed.args.cashBeingAdded.toString());
43
- if (state.cash !== previousCashPosition) {
44
- this.logger.error('state.cash !== previousCashPosition');
45
- }
46
- return {
47
- cash: previousCashPosition + cashBeingAdded,
48
- liability: state.liability,
49
- };
50
- }
51
- case 'CashRemoved': {
52
- const previousCashPosition = BigInt(
53
- parsed.args.previousCashPosition.toString(),
54
- );
55
- const cashBeingRemoved = BigInt(
56
- parsed.args.cashBeingRemoved.toString(),
57
- );
58
- if (state.cash !== previousCashPosition) {
59
- this.logger.error('state.cash !== previousCashPosition');
60
- }
61
- return {
62
- cash: previousCashPosition - cashBeingRemoved,
63
- liability: state.liability,
64
- };
65
- }
66
- case 'LiabilityAdded': {
67
- const previousLiabilityPosition = BigInt(
68
- parsed.args.previousLiabilityPosition.toString(),
69
- );
70
- const liabilityBeingAdded = BigInt(
71
- parsed.args.liabilityBeingAdded.toString(),
72
- );
73
- if (state.liability !== previousLiabilityPosition) {
74
- this.logger.error('state.liability !== previousLiabilityPosition');
75
- }
76
- return {
77
- cash: state.cash,
78
- liability: previousLiabilityPosition + liabilityBeingAdded,
79
- };
80
- }
81
- case 'LiabilityRemoved': {
82
- const previousLiabilityPosition = BigInt(
83
- parsed.args.previousLiabilityPosition.toString(),
84
- );
85
- const liabilityBeingRemoved = BigInt(
86
- parsed.args.liabilityBeingRemoved.toString(),
87
- );
88
- if (state.liability !== previousLiabilityPosition) {
89
- this.logger.error('state.liability !== previousLiabilityPosition');
90
- }
91
- return {
92
- cash: state.cash,
93
- liability: previousLiabilityPosition - liabilityBeingRemoved,
94
- };
95
- }
96
- default:
97
- return null;
98
- }
99
- } catch (e) {
100
- this.logger.error('Failed to parse log', e);
101
- return null;
102
- }
103
- }
104
-
105
- public getGenerateStateMultiCallInputs(): MultiCallInput[] {
106
- return [
107
- {
108
- target: this.asset,
109
- callData:
110
- PlatypusAssetSubscriber.assetInterface.encodeFunctionData('cash'),
111
- },
112
- {
113
- target: this.asset,
114
- callData:
115
- PlatypusAssetSubscriber.assetInterface.encodeFunctionData(
116
- 'liability',
117
- ),
118
- },
119
- ];
120
- }
121
-
122
- public generateState(
123
- multicallOutputs: MultiCallOutput[],
124
- blockNumber?: number | 'latest',
125
- ): DeepReadonly<PlatypusAssetState> {
126
- return {
127
- cash: BigInt(
128
- PlatypusAssetSubscriber.assetInterface
129
- .decodeFunctionResult('cash', multicallOutputs[0])[0]
130
- .toString(),
131
- ),
132
- liability: BigInt(
133
- PlatypusAssetSubscriber.assetInterface
134
- .decodeFunctionResult('liability', multicallOutputs[1])[0]
135
- .toString(),
136
- ),
137
- };
138
- }
139
- }
@@ -1,72 +0,0 @@
1
- import { DexParams, PlatypusOracleType } from './types';
2
- import { DexConfigMap } from '../../types';
3
- import { Network, SwapSide } from '../../constants';
4
-
5
- export const PlatypusConfig: DexConfigMap<DexParams> = {
6
- Platypus: {
7
- [Network.AVALANCHE]: {
8
- pools: [
9
- {
10
- address: '0xbe52548488992Cc76fFA1B42f3A58F646864df45',
11
- name: 'Main USD Pool',
12
- oracleType: PlatypusOracleType.ChainLink,
13
- },
14
- {
15
- address: '0xB8E567fc23c39C94a1f6359509D7b43D1Fbed824',
16
- name: 'Alt Pool Frax',
17
- oracleType: PlatypusOracleType.ChainLink,
18
- },
19
- {
20
- address: '0x30C30d826be87Cd0A4b90855C2F38f7FcfE4eaA7',
21
- name: 'Alt Pool MIM',
22
- oracleType: PlatypusOracleType.ChainLink,
23
- },
24
- {
25
- address: '0x39dE4e02F76Dbd4352Ec2c926D8d64Db8aBdf5b2',
26
- name: 'Alt Pool BTC',
27
- oracleType: PlatypusOracleType.None,
28
- },
29
- {
30
- address: '0x4658EA7e9960D6158a261104aAA160cC953bb6ba',
31
- name: 'Alt Pool sAVAX',
32
- oracleType: PlatypusOracleType.StakedAvax,
33
- },
34
- {
35
- address: '0xC828D995C686AaBA78A4aC89dfc8eC0Ff4C5be83',
36
- name: 'Alt Pool YUSD',
37
- oracleType: PlatypusOracleType.None,
38
- },
39
- {
40
- address: '0x233Ba46B01d2FbF1A31bDBc500702E286d6de218',
41
- name: 'Factory Pool H2O',
42
- oracleType: PlatypusOracleType.None,
43
- },
44
- {
45
- address: '0x27912AE6Ba9a54219d8287C3540A8969FF35500B',
46
- name: 'Factory Pool MONEY',
47
- oracleType: PlatypusOracleType.None,
48
- },
49
- {
50
- address: '0x91BB10D68C72d64a7cE10482b453153eEa03322C',
51
- name: 'Factory Pool TSD',
52
- oracleType: PlatypusOracleType.None,
53
- },
54
- ],
55
- },
56
- },
57
- };
58
-
59
- export const Adapters: {
60
- [chainId: number]: {
61
- [side: string]: { name: string; index: number }[] | null;
62
- };
63
- } = {
64
- [Network.AVALANCHE]: {
65
- [SwapSide.SELL]: [
66
- {
67
- name: 'AvalancheAdapter01',
68
- index: 10,
69
- },
70
- ],
71
- },
72
- };
@@ -1,168 +0,0 @@
1
- import dotenv from 'dotenv';
2
- dotenv.config();
3
-
4
- import { testE2E } from '../../../tests/utils-e2e';
5
- import { Tokens, Holders } from '../../../tests/constants-e2e';
6
- import { Network, ContractMethod, SwapSide } from '../../constants';
7
- import { StaticJsonRpcProvider } from '@ethersproject/providers';
8
- import { generateConfig } from '../../config';
9
-
10
- describe('Platypus E2E', () => {
11
- const dexKey = 'Platypus';
12
-
13
- describe('Platypus AVALANCHE_V6', () => {
14
- const network = Network.AVALANCHE;
15
- const tokens = Tokens[network];
16
- const holders = Holders[network];
17
- const provider = new StaticJsonRpcProvider(
18
- generateConfig(network).privateHttpProvider,
19
- network,
20
- );
21
-
22
- const tokenASymbol: string = 'USDC';
23
- const tokenBSymbol: string = 'DAIE';
24
-
25
- const tokenAAmount: string = '9999000000';
26
- const tokenBAmount: string = '9999000000000000000000';
27
-
28
- const sideToContractMethods = new Map([
29
- [
30
- SwapSide.SELL,
31
- [
32
- ContractMethod.swapExactAmountIn,
33
- // ContractMethod.simpleSwap,
34
- // ContractMethod.multiSwap,
35
- // ContractMethod.megaSwap,
36
- ],
37
- ],
38
- ]);
39
-
40
- const poolTokenSymbols: string[] = [
41
- 'newFRAX',
42
- 'MIM',
43
- 'YUSD',
44
- // 'H2O', // pool is paused
45
- 'MONEY',
46
- 'TSD',
47
- ];
48
-
49
- sideToContractMethods.forEach((contractMethods, side) =>
50
- contractMethods.forEach((contractMethod: ContractMethod) => {
51
- describe(`${contractMethod}`, () => {
52
- it(`${tokenASymbol} -> ${tokenBSymbol}`, async () => {
53
- await testE2E(
54
- tokens[tokenASymbol],
55
- tokens[tokenBSymbol],
56
- holders[tokenASymbol],
57
- side === SwapSide.SELL ? tokenAAmount : tokenBAmount,
58
- side,
59
- dexKey,
60
- contractMethod,
61
- network,
62
- provider,
63
- );
64
- });
65
- it(`${tokenBSymbol} -> ${tokenASymbol}`, async () => {
66
- await testE2E(
67
- tokens[tokenBSymbol],
68
- tokens[tokenASymbol],
69
- holders[tokenBSymbol],
70
- side === SwapSide.SELL ? tokenBAmount : tokenAAmount,
71
- side,
72
- dexKey,
73
- contractMethod,
74
- network,
75
- provider,
76
- );
77
- });
78
- it(`AVAX -> sAVAX`, async () => {
79
- await testE2E(
80
- tokens['AVAX'],
81
- tokens['sAVAX'],
82
- holders['AVAX'],
83
- '999000000000000000000',
84
- side,
85
- dexKey,
86
- contractMethod,
87
- network,
88
- provider,
89
- );
90
- });
91
- it(`WAVAX -> sAVAX`, async () => {
92
- await testE2E(
93
- tokens['WAVAX'],
94
- tokens['sAVAX'],
95
- holders['WAVAX'],
96
- '999000000000000000000',
97
- side,
98
- dexKey,
99
- contractMethod,
100
- network,
101
- provider,
102
- );
103
- });
104
- it(`sAVAX -> AVAX`, async () => {
105
- await testE2E(
106
- tokens['sAVAX'],
107
- tokens['AVAX'],
108
- holders['sAVAX'],
109
- '999000000000000000000',
110
- side,
111
- dexKey,
112
- contractMethod,
113
- network,
114
- provider,
115
- );
116
- });
117
- it(`sAVAX -> WAVAX`, async () => {
118
- await testE2E(
119
- tokens['sAVAX'],
120
- tokens['WAVAX'],
121
- holders['sAVAX'],
122
- '999000000000000000000',
123
- side,
124
- dexKey,
125
- contractMethod,
126
- network,
127
- provider,
128
- );
129
- });
130
- if (
131
- contractMethod === ContractMethod.simpleSwap &&
132
- side === SwapSide.SELL
133
- ) {
134
- poolTokenSymbols.forEach(poolTokenSymbol => {
135
- it(`${tokenASymbol} -> ${poolTokenSymbol}`, async () => {
136
- await testE2E(
137
- tokens[tokenASymbol],
138
- tokens[poolTokenSymbol],
139
- holders[tokenASymbol],
140
- tokenAAmount,
141
- side,
142
- dexKey,
143
- contractMethod,
144
- network,
145
- provider,
146
- );
147
- });
148
- });
149
- }
150
- });
151
- }),
152
- );
153
-
154
- it(`wBTC -> BTCb`, async () => {
155
- await testE2E(
156
- tokens['wBTC'],
157
- tokens['BTCb'],
158
- holders['wBTC'],
159
- '300000000',
160
- SwapSide.SELL,
161
- dexKey,
162
- ContractMethod.simpleSwap,
163
- network,
164
- provider,
165
- );
166
- });
167
- });
168
- });
@@ -1,167 +0,0 @@
1
- import dotenv from 'dotenv';
2
- dotenv.config();
3
-
4
- import { Platypus } from './platypus';
5
- import { PlatypusPoolBase } from './pool-base';
6
- import { PlatypusPool } from './pool';
7
- import { PlatypusAvaxPool } from './pool-avax';
8
- import { PlatypusConfig } from './config';
9
- import { Network } from '../../constants';
10
- import { DummyDexHelper } from '../../dex-helper/index';
11
- import {
12
- testEventSubscriber,
13
- getSavedConfig,
14
- saveConfig,
15
- } from '../../../tests/utils-events';
16
- import {
17
- PlatypusOracleType,
18
- PlatypusConfigInfo,
19
- PlatypusPoolStateCommon,
20
- } from './types';
21
-
22
- jest.setTimeout(50 * 1000);
23
- const dexKey = 'Platypus';
24
- const network = Network.AVALANCHE;
25
- const config = PlatypusConfig[dexKey][network];
26
- const poolIndex = 0;
27
-
28
- async function fetchPoolState<T extends PlatypusPoolStateCommon>(
29
- platypusPool: PlatypusPoolBase<T>,
30
- blockNumber: number,
31
- ) {
32
- return await platypusPool.generateState(blockNumber);
33
- }
34
-
35
- describe('Platypus Event', function () {
36
- /*
37
- CashAdded [
38
- 13967197, 13967347,
39
- 13968151, 13968200,
40
- 13968422, 13968513,
41
- 13968690, 13968780,
42
- 13968791, 13968951,
43
- 13969056
44
- ]
45
- CashRemoved [
46
- 13967310, 13967398,
47
- 13967401, 13967705,
48
- 13967832, 13967867,
49
- 13968025, 13968138,
50
- 13968467, 13968489,
51
- 13968604, 13968978,
52
- 13969060
53
- ]
54
- LiabilityAdded [ 13967398, 13967401, 13967705, 13967832, 13967867, 13968025 ]
55
- LiabilityRemoved [
56
- 13967310, 13968138,
57
- 13968467, 13968489,
58
- 13968604, 13968978,
59
- 13969060
60
- ]
61
- AnswerUpdated [ 13941238 ]
62
- HaircutRateUpdated [ 10134648 ]
63
- */
64
- const blockNumbers: { [eventName: string]: number[] } = {
65
- CashAdded: [13967197],
66
- CashRemoved: [13967398],
67
- LiabilityAdded: [13967401],
68
- LiabilityRemoved: [13967310],
69
- AnswerUpdated: [13941238],
70
- HaircutRateUpdated: [10134648],
71
- };
72
-
73
- describe('PlatypusPool', function () {
74
- Object.keys(blockNumbers).forEach((event: string) => {
75
- blockNumbers[event].forEach((blockNumber: number) => {
76
- it(`Should return the correct state after the ${blockNumber}:${event}`, async function () {
77
- const dexHelper = new DummyDexHelper(network);
78
-
79
- let cfgInfo = getSavedConfig<PlatypusConfigInfo>(blockNumber, dexKey);
80
- if (!cfgInfo) {
81
- const dex = new Platypus(network, dexKey, dexHelper);
82
- cfgInfo = await dex.generateConfigInfo(blockNumber);
83
- saveConfig(blockNumber, dexKey, cfgInfo);
84
- }
85
-
86
- const cfgInfoPool =
87
- cfgInfo.pools[config.pools[poolIndex].address.toLowerCase()];
88
- if (cfgInfoPool.oracleType !== PlatypusOracleType.ChainLink) {
89
- throw new Error('Wrong Platypus oracle type for this test!');
90
- }
91
- const platypusPool = new PlatypusPool(
92
- dexKey,
93
- network,
94
- config.pools[poolIndex].name,
95
- config.pools[poolIndex].address,
96
- cfgInfoPool,
97
- dexHelper,
98
- );
99
-
100
- await testEventSubscriber(
101
- platypusPool,
102
- platypusPool.addressesSubscribed,
103
- (_blockNumber: number) =>
104
- fetchPoolState(platypusPool, _blockNumber),
105
- blockNumber,
106
- `${dexKey}_${config.pools[poolIndex].address}`,
107
- dexHelper.provider,
108
- );
109
- });
110
- });
111
- });
112
- });
113
-
114
- /*
115
- Submitted [ 16399520, 16401225 ]
116
- Redeem [ 16402280, 16402429 ]
117
- AccrueRewards [ 16401653, 16403057 ]
118
- */
119
- const blockNumbersAvax: { [eventName: string]: number[] } = {
120
- Submitted: [16399520, 16401225],
121
- Redeem: [16402280, 16402429],
122
- AccrueRewards: [16401653, 16403057],
123
- };
124
-
125
- const poolIndexAvax = 4;
126
-
127
- describe('PlatypusAvaxPool', function () {
128
- Object.keys(blockNumbersAvax).forEach((event: string) => {
129
- blockNumbersAvax[event].forEach((blockNumber: number) => {
130
- it(`Should return the correct state after the ${blockNumber}:${event}`, async function () {
131
- const dexHelper = new DummyDexHelper(network);
132
-
133
- let cfgInfo = getSavedConfig<PlatypusConfigInfo>(blockNumber, dexKey);
134
- if (!cfgInfo) {
135
- const dex = new Platypus(network, dexKey, dexHelper);
136
- cfgInfo = await dex.generateConfigInfo(blockNumber);
137
- saveConfig(blockNumber, dexKey, cfgInfo);
138
- }
139
-
140
- const cfgInfoPool =
141
- cfgInfo.pools[config.pools[poolIndexAvax].address.toLowerCase()];
142
- if (cfgInfoPool.oracleType !== PlatypusOracleType.StakedAvax) {
143
- throw new Error('Wrong Platypus oracle type for this test!');
144
- }
145
- const platypusPool = new PlatypusAvaxPool(
146
- dexKey,
147
- network,
148
- config.pools[poolIndexAvax].name,
149
- config.pools[poolIndexAvax].address,
150
- cfgInfoPool,
151
- dexHelper,
152
- );
153
-
154
- await testEventSubscriber(
155
- platypusPool,
156
- platypusPool.addressesSubscribed,
157
- (_blockNumber: number) =>
158
- fetchPoolState(platypusPool, _blockNumber),
159
- blockNumber,
160
- `${dexKey}_${config.pools[poolIndexAvax].address}`,
161
- dexHelper.provider,
162
- );
163
- });
164
- });
165
- });
166
- });
167
- });