@paraswap/dex-lib 3.3.1-return-amount-pos.3 → 3.3.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 (515) hide show
  1. package/README.md +0 -12
  2. package/build/abi/Redstone.json +739 -0
  3. package/build/{dex/lighter-v1/abi/erc20.json → abi/angle-transmuter/MorphoOracle.json} +97 -126
  4. package/build/abi/angle-transmuter/MorphoVault.json +2506 -0
  5. package/build/abi/angle-transmuter/Pyth.json +1534 -0
  6. package/build/abi/angle-transmuter/Transmuter.json +1711 -0
  7. package/build/abi/idle-dao/idle-cdo-factory.json +38 -0
  8. package/build/abi/idle-dao/idle-cdo.json +1245 -0
  9. package/build/abi/pharaoh/PharaohPool.abi.json +1582 -0
  10. package/build/abi/smardex/smardex-factory.json +185 -0
  11. package/build/abi/smardex/smardex-pool.json +578 -0
  12. package/build/abi/smardex/smardex-router.json +648 -0
  13. package/build/abi/trader-joe-v2_1/FactoryABI.json +1208 -0
  14. package/build/abi/trader-joe-v2_1/PairABI.json +1493 -0
  15. package/build/abi/trader-joe-v2_1/RouterABI.json +1489 -0
  16. package/build/abi/trader-joe-v2_1/StateMulticall.json +193 -0
  17. package/build/abi/{integral/relayer.json → wombat/pool.json} +587 -446
  18. package/build/dex/aave-v1/aave-v1.js +0 -1
  19. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  20. package/build/dex/aave-v2/aave-v2.js +0 -1
  21. package/build/dex/aave-v2/aave-v2.js.map +1 -1
  22. package/build/dex/aave-v3/aave-v3.js +0 -1
  23. package/build/dex/aave-v3/aave-v3.js.map +1 -1
  24. package/build/dex/algebra/algebra.js +0 -4
  25. package/build/dex/algebra/algebra.js.map +1 -1
  26. package/build/dex/angle-staked-stable/angle-staked-stable.d.ts +1 -1
  27. package/build/dex/angle-staked-stable/angle-staked-stable.js +0 -1
  28. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
  29. package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +61 -0
  30. package/build/dex/angle-transmuter/angle-transmuter-pool.js +415 -0
  31. package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +1 -0
  32. package/build/dex/{lighter-v1/lighter-v1.d.ts → angle-transmuter/angle-transmuter.d.ts} +31 -17
  33. package/build/dex/angle-transmuter/angle-transmuter.js +262 -0
  34. package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -0
  35. package/build/dex/angle-transmuter/backedOracle.d.ts +19 -0
  36. package/build/dex/angle-transmuter/backedOracle.js +56 -0
  37. package/build/dex/angle-transmuter/backedOracle.js.map +1 -0
  38. package/build/dex/{ramses-v2 → angle-transmuter}/config.d.ts +1 -1
  39. package/build/dex/angle-transmuter/config.js +30 -0
  40. package/build/dex/angle-transmuter/config.js.map +1 -0
  41. package/build/dex/angle-transmuter/constants.d.ts +77 -0
  42. package/build/dex/angle-transmuter/constants.js +94 -0
  43. package/build/dex/angle-transmuter/constants.js.map +1 -0
  44. package/build/dex/{integral/integral-pool.d.ts → angle-transmuter/morphoOracle.d.ts} +15 -12
  45. package/build/dex/angle-transmuter/morphoOracle.js +179 -0
  46. package/build/dex/angle-transmuter/morphoOracle.js.map +1 -0
  47. package/build/dex/angle-transmuter/morphoVault.d.ts +19 -0
  48. package/build/dex/angle-transmuter/morphoVault.js +78 -0
  49. package/build/dex/angle-transmuter/morphoVault.js.map +1 -0
  50. package/build/dex/angle-transmuter/pyth.d.ts +19 -0
  51. package/build/dex/angle-transmuter/pyth.js +70 -0
  52. package/build/dex/angle-transmuter/pyth.js.map +1 -0
  53. package/build/dex/angle-transmuter/redstone.d.ts +20 -0
  54. package/build/dex/angle-transmuter/redstone.js +73 -0
  55. package/build/dex/angle-transmuter/redstone.js.map +1 -0
  56. package/build/dex/angle-transmuter/transmuter.d.ts +52 -0
  57. package/build/dex/angle-transmuter/transmuter.js +374 -0
  58. package/build/dex/angle-transmuter/transmuter.js.map +1 -0
  59. package/build/dex/angle-transmuter/types.d.ts +188 -0
  60. package/build/dex/angle-transmuter/types.js +33 -0
  61. package/build/dex/angle-transmuter/types.js.map +1 -0
  62. package/build/dex/angle-transmuter/utils.d.ts +9 -0
  63. package/build/dex/angle-transmuter/utils.js +252 -0
  64. package/build/dex/angle-transmuter/utils.js.map +1 -0
  65. package/build/dex/bProtocol/bProtocol.js +0 -5
  66. package/build/dex/bProtocol/bProtocol.js.map +1 -1
  67. package/build/dex/balancer-v1/balancer-v1.js +0 -4
  68. package/build/dex/balancer-v1/balancer-v1.js.map +1 -1
  69. package/build/dex/balancer-v2/balancer-v2.js +0 -1
  70. package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
  71. package/build/dex/bancor/bancor.js +0 -4
  72. package/build/dex/bancor/bancor.js.map +1 -1
  73. package/build/dex/camelot/camelot.js +0 -1
  74. package/build/dex/camelot/camelot.js.map +1 -1
  75. package/build/dex/compound/compound.js +0 -1
  76. package/build/dex/compound/compound.js.map +1 -1
  77. package/build/dex/curve-v1/curve-v1.js +0 -1
  78. package/build/dex/curve-v1/curve-v1.js.map +1 -1
  79. package/build/dex/curve-v1-factory/curve-v1-factory.js +0 -1
  80. package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
  81. package/build/dex/curve-v2/curve-v2.js +0 -1
  82. package/build/dex/curve-v2/curve-v2.js.map +1 -1
  83. package/build/dex/dexalot/dexalot.js +0 -1
  84. package/build/dex/dexalot/dexalot.js.map +1 -1
  85. package/build/dex/dodo-v1/dodo-v1.js +0 -4
  86. package/build/dex/dodo-v1/dodo-v1.js.map +1 -1
  87. package/build/dex/dodo-v2.js +0 -4
  88. package/build/dex/dodo-v2.js.map +1 -1
  89. package/build/dex/etherfi.js +0 -2
  90. package/build/dex/etherfi.js.map +1 -1
  91. package/build/dex/generic-rfq/generic-rfq.js +0 -1
  92. package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
  93. package/build/dex/gmx/gmx.js +0 -4
  94. package/build/dex/gmx/gmx.js.map +1 -1
  95. package/build/dex/hashflow/hashflow.js +0 -1
  96. package/build/dex/hashflow/hashflow.js.map +1 -1
  97. package/build/dex/idle-dao/config.d.ts +6 -0
  98. package/build/dex/idle-dao/config.js +29 -0
  99. package/build/dex/idle-dao/config.js.map +1 -0
  100. package/build/dex/idle-dao/idle-dao-pool.d.ts +56 -0
  101. package/build/dex/idle-dao/idle-dao-pool.js +176 -0
  102. package/build/dex/idle-dao/idle-dao-pool.js.map +1 -0
  103. package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +16 -0
  104. package/build/dex/idle-dao/idle-dao-pooling-pool.js +57 -0
  105. package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +1 -0
  106. package/build/dex/idle-dao/idle-dao.d.ts +52 -0
  107. package/build/dex/idle-dao/idle-dao.js +310 -0
  108. package/build/dex/idle-dao/idle-dao.js.map +1 -0
  109. package/build/dex/idle-dao/tokens.d.ts +16 -0
  110. package/build/dex/idle-dao/tokens.js +87 -0
  111. package/build/dex/idle-dao/tokens.js.map +1 -0
  112. package/build/dex/idle-dao/types.d.ts +37 -0
  113. package/build/dex/idle-dao/types.js +11 -0
  114. package/build/dex/idle-dao/types.js.map +1 -0
  115. package/build/dex/idle-dao/utils.d.ts +8 -0
  116. package/build/dex/idle-dao/utils.js +145 -0
  117. package/build/dex/idle-dao/utils.js.map +1 -0
  118. package/build/dex/jarvis-v6/jarvis-v6.js +0 -1
  119. package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -1
  120. package/build/dex/jarvis.js +0 -8
  121. package/build/dex/jarvis.js.map +1 -1
  122. package/build/dex/kyberdmm/kyberdmm.js +0 -4
  123. package/build/dex/kyberdmm/kyberdmm.js.map +1 -1
  124. package/build/dex/lido/lido.js +0 -5
  125. package/build/dex/lido/lido.js.map +1 -1
  126. package/build/dex/maker-psm/maker-psm.js +0 -1
  127. package/build/dex/maker-psm/maker-psm.js.map +1 -1
  128. package/build/dex/maverick-v1/maverick-v1.js +0 -4
  129. package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
  130. package/build/dex/nerve/nerve.js +0 -4
  131. package/build/dex/nerve/nerve.js.map +1 -1
  132. package/build/dex/onebit/onebit.js +0 -5
  133. package/build/dex/onebit/onebit.js.map +1 -1
  134. package/build/dex/pancakeswap-v3/pancakeswap-v3.js +0 -4
  135. package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
  136. package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js +0 -1
  137. package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js.map +1 -1
  138. package/build/dex/platypus/platypus.js +3 -17
  139. package/build/dex/platypus/platypus.js.map +1 -1
  140. package/build/dex/polygon-migrator/polygon-migrator.js +0 -1
  141. package/build/dex/polygon-migrator/polygon-migrator.js.map +1 -1
  142. package/build/dex/quick-perps/quick-perps.js +1 -7
  143. package/build/dex/quick-perps/quick-perps.js.map +1 -1
  144. package/build/dex/smardex/subgraph-queries.d.ts +1 -0
  145. package/build/dex/smardex/subgraph-queries.js +17 -0
  146. package/build/dex/smardex/subgraph-queries.js.map +1 -0
  147. package/build/dex/smardex/usd-reserves.d.ts +23 -0
  148. package/build/dex/smardex/usd-reserves.js +86 -0
  149. package/build/dex/smardex/usd-reserves.js.map +1 -0
  150. package/build/dex/smoothy/smoothy.js +0 -1
  151. package/build/dex/smoothy/smoothy.js.map +1 -1
  152. package/build/dex/solidly/solidly.js +0 -1
  153. package/build/dex/solidly/solidly.js.map +1 -1
  154. package/build/dex/solidly-v3/solidly-v3.js +0 -1
  155. package/build/dex/solidly-v3/solidly-v3.js.map +1 -1
  156. package/build/dex/spark/spark.js +0 -6
  157. package/build/dex/spark/spark.js.map +1 -1
  158. package/build/dex/stable-pool/stable-pool.js +0 -4
  159. package/build/dex/stable-pool/stable-pool.js.map +1 -1
  160. package/build/dex/swaap-v1/swaap-v1.js +0 -4
  161. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  162. package/build/dex/swaap-v2/swaap-v2.js +0 -4
  163. package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
  164. package/build/dex/swell/swell.js +0 -1
  165. package/build/dex/swell/swell.js.map +1 -1
  166. package/build/dex/synthetix/synthetix.js +0 -6
  167. package/build/dex/synthetix/synthetix.js.map +1 -1
  168. package/build/dex/{integral → trader-joe-v2-1-2}/config.d.ts +1 -1
  169. package/build/dex/trader-joe-v2-1-2/config.js +47 -0
  170. package/build/dex/trader-joe-v2-1-2/config.js.map +1 -0
  171. package/build/dex/trader-joe-v2-1-2/constants.d.ts +20 -0
  172. package/build/dex/trader-joe-v2-1-2/constants.js +22 -0
  173. package/build/dex/trader-joe-v2-1-2/constants.js.map +1 -0
  174. package/build/dex/trader-joe-v2-1-2/math/index.d.ts +37 -0
  175. package/build/dex/trader-joe-v2-1-2/math/index.js +291 -0
  176. package/build/dex/trader-joe-v2-1-2/math/index.js.map +1 -0
  177. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +60 -0
  178. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +248 -0
  179. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +1 -0
  180. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +53 -0
  181. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +307 -0
  182. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +1 -0
  183. package/build/dex/trader-joe-v2-1-2/types.d.ts +82 -0
  184. package/build/dex/trader-joe-v2-1-2/types.js +9 -0
  185. package/build/dex/trader-joe-v2-1-2/types.js.map +1 -0
  186. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +0 -4
  187. package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +1 -1
  188. package/build/dex/{lighter-v1 → trader-joe-v2_1}/config.d.ts +1 -1
  189. package/build/dex/trader-joe-v2_1/config.js +47 -0
  190. package/build/dex/trader-joe-v2_1/config.js.map +1 -0
  191. package/build/dex/trader-joe-v2_1/constants.d.ts +20 -0
  192. package/build/dex/trader-joe-v2_1/constants.js +22 -0
  193. package/build/dex/trader-joe-v2_1/constants.js.map +1 -0
  194. package/build/dex/trader-joe-v2_1/math/index.d.ts +37 -0
  195. package/build/dex/trader-joe-v2_1/math/index.js +291 -0
  196. package/build/dex/trader-joe-v2_1/math/index.js.map +1 -0
  197. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
  198. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +384 -0
  199. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +1 -0
  200. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.d.ts +60 -0
  201. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js +247 -0
  202. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js.map +1 -0
  203. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.d.ts +53 -0
  204. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js +307 -0
  205. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js.map +1 -0
  206. package/build/dex/trader-joe-v2_1/types.d.ts +82 -0
  207. package/build/dex/trader-joe-v2_1/types.js +9 -0
  208. package/build/dex/trader-joe-v2_1/types.js.map +1 -0
  209. package/build/dex/uniswap-v2/uniswap-v2.js +0 -1
  210. package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
  211. package/build/dex/uniswap-v3/uniswap-v3.js +0 -4
  212. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  213. package/build/dex/uniswap-v3.js +0 -4
  214. package/build/dex/uniswap-v3.js.map +1 -1
  215. package/build/dex/weth/weth.js +0 -1
  216. package/build/dex/weth/weth.js.map +1 -1
  217. package/build/dex/wombat/wombat-pool-poller.d.ts +22 -0
  218. package/build/dex/wombat/wombat-pool-poller.js +164 -0
  219. package/build/dex/wombat/wombat-pool-poller.js.map +1 -0
  220. package/build/dex/wombat/wombat.js +0 -4
  221. package/build/dex/wombat/wombat.js.map +1 -1
  222. package/build/dex/woo-fi-v2/woo-fi-v2.js +0 -4
  223. package/build/dex/woo-fi-v2/woo-fi-v2.js.map +1 -1
  224. package/build/dex/wsteth/wsteth.js +1 -8
  225. package/build/dex/wsteth/wsteth.js.map +1 -1
  226. package/build/dex/zerox/index.js +0 -1
  227. package/build/dex/zerox/index.js.map +1 -1
  228. package/build/dex-helper/Cache.d.ts +31 -0
  229. package/build/dex-helper/Cache.js +106 -0
  230. package/build/dex-helper/Cache.js.map +1 -0
  231. package/build/dex-helper/RedisBatcher.d.ts +20 -0
  232. package/build/dex-helper/RedisBatcher.js +75 -0
  233. package/build/dex-helper/RedisBatcher.js.map +1 -0
  234. package/build/dex-helper/RedisWrapper.d.ts +37 -0
  235. package/build/dex-helper/RedisWrapper.js +165 -0
  236. package/build/dex-helper/RedisWrapper.js.map +1 -0
  237. package/build/executor/Executor01BytecodeBuilder.js +1 -4
  238. package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
  239. package/build/executor/Executor02BytecodeBuilder.js +1 -5
  240. package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
  241. package/build/executor/ExecutorBytecodeBuilder.d.ts +1 -1
  242. package/build/executor/ExecutorBytecodeBuilder.js +4 -5
  243. package/build/executor/ExecutorBytecodeBuilder.js.map +1 -1
  244. package/build/executor/ExecutorDetector.d.ts +1 -1
  245. package/build/executor/ExecutorDetector.js.map +1 -1
  246. package/build/executor/constants.d.ts +1 -3
  247. package/build/executor/constants.js +2 -4
  248. package/build/executor/constants.js.map +1 -1
  249. package/build/types.d.ts +0 -1
  250. package/dex-template/__DexName__-e2e.test.ts.template +9 -2
  251. package/package.json +1 -1
  252. package/src/dex/aave-v1/aave-v1.ts +0 -1
  253. package/src/dex/aave-v2/aave-v2.ts +0 -1
  254. package/src/dex/aave-v3/aave-v3.ts +0 -1
  255. package/src/dex/algebra/algebra.ts +0 -9
  256. package/src/dex/angle-staked-stable/angle-staked-stable.ts +1 -2
  257. package/src/dex/bProtocol/bProtocol.ts +0 -8
  258. package/src/dex/balancer-v1/balancer-v1.ts +0 -9
  259. package/src/dex/balancer-v2/balancer-v2.ts +2 -3
  260. package/src/dex/bancor/bancor.ts +0 -8
  261. package/src/dex/camelot/camelot.ts +0 -1
  262. package/src/dex/compound/compound.ts +0 -1
  263. package/src/dex/curve-v1/curve-v1.ts +0 -1
  264. package/src/dex/curve-v1-factory/curve-v1-factory.ts +0 -1
  265. package/src/dex/curve-v2/curve-v2.ts +0 -1
  266. package/src/dex/dexalot/dexalot.ts +0 -1
  267. package/src/dex/dodo-v1/dodo-v1.ts +0 -9
  268. package/src/dex/dodo-v2.ts +0 -9
  269. package/src/dex/etherfi.ts +0 -2
  270. package/src/dex/generic-rfq/generic-rfq.ts +0 -1
  271. package/src/dex/gmx/gmx.ts +0 -8
  272. package/src/dex/hashflow/hashflow.ts +0 -1
  273. package/src/dex/jarvis-v6/jarvis-v6.ts +0 -1
  274. package/src/dex/jarvis.ts +0 -14
  275. package/src/dex/kyberdmm/kyberdmm.ts +0 -10
  276. package/src/dex/lido/lido.ts +0 -8
  277. package/src/dex/maker-psm/maker-psm.ts +0 -1
  278. package/src/dex/maverick-v1/maverick-v1.ts +0 -9
  279. package/src/dex/nerve/nerve.ts +0 -8
  280. package/src/dex/onebit/onebit.ts +0 -8
  281. package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +0 -9
  282. package/src/dex/paraswap-limit-orders/paraswap-limit-orders.ts +0 -1
  283. package/src/dex/platypus/platypus.ts +3 -20
  284. package/src/dex/polygon-migrator/polygon-migrator.ts +0 -1
  285. package/src/dex/quick-perps/quick-perps.ts +1 -11
  286. package/src/dex/smoothy/smoothy.ts +0 -1
  287. package/src/dex/solidly/solidly.ts +0 -1
  288. package/src/dex/solidly-v3/solidly-v3.ts +1 -1
  289. package/src/dex/spark/spark.ts +0 -10
  290. package/src/dex/stable-pool/stable-pool.ts +0 -8
  291. package/src/dex/swaap-v1/swaap-v1.ts +0 -9
  292. package/src/dex/swaap-v2/swaap-v2.ts +0 -9
  293. package/src/dex/swell/swell.ts +0 -1
  294. package/src/dex/synthetix/synthetix.ts +0 -11
  295. package/src/dex/trader-joe-v2.1/trader-joe-v2.1.ts +0 -9
  296. package/src/dex/uniswap-v2/uniswap-v2.ts +0 -1
  297. package/src/dex/uniswap-v3/uniswap-v3.ts +0 -9
  298. package/src/dex/uniswap-v3.ts +0 -9
  299. package/src/dex/weth/weth.ts +0 -1
  300. package/src/dex/wombat/wombat.ts +0 -9
  301. package/src/dex/woo-fi-v2/woo-fi-v2.ts +0 -5
  302. package/src/dex/wsteth/wsteth.ts +4 -13
  303. package/src/dex/zerox/index.ts +0 -1
  304. package/src/executor/Executor01BytecodeBuilder.ts +1 -8
  305. package/src/executor/Executor02BytecodeBuilder.ts +0 -13
  306. package/src/executor/ExecutorBytecodeBuilder.ts +1 -6
  307. package/src/executor/ExecutorDetector.ts +2 -3
  308. package/src/executor/constants.ts +1 -4
  309. package/src/executor/executor01-bytecode-builder-e2e.test.ts +0 -39
  310. package/src/types.ts +0 -1
  311. package/tests/constants-e2e.ts +1 -6
  312. package/.idea/aws.xml +0 -17
  313. package/.idea/codeStyles/Project.xml +0 -19
  314. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  315. package/.idea/misc.xml +0 -6
  316. package/.idea/modules.xml +0 -8
  317. package/.idea/paraswap-dex-lib.iml +0 -9
  318. package/.idea/prettier.xml +0 -7
  319. package/.idea/vcs.xml +0 -6
  320. package/build/abi/AugustusV6.abi.json +0 -395
  321. package/build/abi/algebra/AlgebraPool.abi.json +0 -727
  322. package/build/abi/curve-v1/StableSwapFRXETH.json +0 -889
  323. package/build/abi/curve-v1/StableSwapWBETH.json +0 -1223
  324. package/build/abi/sushiswap-v3/QuoterV2.json +0 -267
  325. package/build/abi/sushiswap-v3/RouterProcessor3.json +0 -289
  326. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
  327. package/build/abi/uniswap-v3/pancakeswap-v3/PancakeswapV3QuoterV2.abi.json +0 -285
  328. package/build/abi/uniswap-v3/pancakeswap-v3/PancakeswapV3Router.abi.json +0 -583
  329. package/build/abi/wBETH.json +0 -1527
  330. package/build/abi/woo-fi/WooFeeManager.abi.json +0 -318
  331. package/build/abi/woo-fi/WooPP.abi.json +0 -548
  332. package/build/abi/woo-fi/Wooracle.abi.json +0 -260
  333. package/build/dex/aave-v3/tokens/arbitrum.json +0 -50
  334. package/build/dex/aave-v3/tokens/avalanche.json +0 -74
  335. package/build/dex/aave-v3/tokens/fantom.json +0 -62
  336. package/build/dex/aave-v3/tokens/optimism.json +0 -50
  337. package/build/dex/aave-v3/tokens/polygon.json +0 -116
  338. package/build/dex/algebra/algebra-pool.d.ts +0 -114
  339. package/build/dex/algebra/algebra-pool.js +0 -448
  340. package/build/dex/algebra/algebra-pool.js.map +0 -1
  341. package/build/dex/balancer-v2/Gyro3Pool.d.ts +0 -43
  342. package/build/dex/balancer-v2/Gyro3Pool.js +0 -160
  343. package/build/dex/balancer-v2/Gyro3Pool.js.map +0 -1
  344. package/build/dex/balancer-v2/LinearMath.d.ts +0 -88
  345. package/build/dex/balancer-v2/LinearMath.js +0 -285
  346. package/build/dex/balancer-v2/LinearMath.js.map +0 -1
  347. package/build/dex/balancer-v2/LinearPool.d.ts +0 -81
  348. package/build/dex/balancer-v2/LinearPool.js +0 -444
  349. package/build/dex/balancer-v2/LinearPool.js.map +0 -1
  350. package/build/dex/balancer-v2/PhantomStablePool.d.ts +0 -90
  351. package/build/dex/balancer-v2/PhantomStablePool.js +0 -418
  352. package/build/dex/balancer-v2/PhantomStablePool.js.map +0 -1
  353. package/build/dex/balancer-v2/StableMath.d.ts +0 -9
  354. package/build/dex/balancer-v2/StableMath.js +0 -272
  355. package/build/dex/balancer-v2/StableMath.js.map +0 -1
  356. package/build/dex/balancer-v2/balancer-v2-pool.d.ts +0 -140
  357. package/build/dex/balancer-v2/balancer-v2-pool.js +0 -647
  358. package/build/dex/balancer-v2/balancer-v2-pool.js.map +0 -1
  359. package/build/dex/curve-v1/pools/frxETHpool.d.ts +0 -7
  360. package/build/dex/curve-v1/pools/frxETHpool.js +0 -27
  361. package/build/dex/curve-v1/pools/frxETHpool.js.map +0 -1
  362. package/build/dex/curve-v1/pools/wbETHpool.d.ts +0 -29
  363. package/build/dex/curve-v1/pools/wbETHpool.js +0 -408
  364. package/build/dex/curve-v1/pools/wbETHpool.js.map +0 -1
  365. package/build/dex/integral/config.js +0 -18
  366. package/build/dex/integral/config.js.map +0 -1
  367. package/build/dex/integral/integral-pool.js +0 -67
  368. package/build/dex/integral/integral-pool.js.map +0 -1
  369. package/build/dex/integral/integral.d.ts +0 -48
  370. package/build/dex/integral/integral.js +0 -402
  371. package/build/dex/integral/integral.js.map +0 -1
  372. package/build/dex/integral/types.d.ts +0 -25
  373. package/build/dex/integral/types.js +0 -9
  374. package/build/dex/integral/types.js.map +0 -1
  375. package/build/dex/lighter-v1/abi/factory.json +0 -291
  376. package/build/dex/lighter-v1/abi/order_book.json +0 -594
  377. package/build/dex/lighter-v1/abi/order_book_helper.json +0 -176
  378. package/build/dex/lighter-v1/abi/router.json +0 -488
  379. package/build/dex/lighter-v1/config.js +0 -17
  380. package/build/dex/lighter-v1/config.js.map +0 -1
  381. package/build/dex/lighter-v1/constants.d.ts +0 -2
  382. package/build/dex/lighter-v1/constants.js +0 -13
  383. package/build/dex/lighter-v1/constants.js.map +0 -1
  384. package/build/dex/lighter-v1/lighter-v1-pool.d.ts +0 -57
  385. package/build/dex/lighter-v1/lighter-v1-pool.js +0 -310
  386. package/build/dex/lighter-v1/lighter-v1-pool.js.map +0 -1
  387. package/build/dex/lighter-v1/lighter-v1.js +0 -331
  388. package/build/dex/lighter-v1/lighter-v1.js.map +0 -1
  389. package/build/dex/lighter-v1/types.d.ts +0 -40
  390. package/build/dex/lighter-v1/types.js +0 -3
  391. package/build/dex/lighter-v1/types.js.map +0 -1
  392. package/build/dex/pancakeswap-v3/types.d.ts +0 -14
  393. package/build/dex/pancakeswap-v3/types.js +0 -3
  394. package/build/dex/pancakeswap-v3/types.js.map +0 -1
  395. package/build/dex/quickswap/camelot-v3.d.ts +0 -6
  396. package/build/dex/quickswap/camelot-v3.js +0 -19
  397. package/build/dex/quickswap/camelot-v3.js.map +0 -1
  398. package/build/dex/quickswap/zyberswap-v3.d.ts +0 -6
  399. package/build/dex/quickswap/zyberswap-v3.js +0 -19
  400. package/build/dex/quickswap/zyberswap-v3.js.map +0 -1
  401. package/build/dex/quickswap-v3.d.ts +0 -21
  402. package/build/dex/quickswap-v3.js +0 -40
  403. package/build/dex/quickswap-v3.js.map +0 -1
  404. package/build/dex/ramses-v2/config.js +0 -28
  405. package/build/dex/ramses-v2/config.js.map +0 -1
  406. package/build/dex/ramses-v2/constants.d.ts +0 -28
  407. package/build/dex/ramses-v2/constants.js +0 -35
  408. package/build/dex/ramses-v2/constants.js.map +0 -1
  409. package/build/dex/ramses-v2/contract-math/BitMath.d.ts +0 -4
  410. package/build/dex/ramses-v2/contract-math/BitMath.js +0 -93
  411. package/build/dex/ramses-v2/contract-math/BitMath.js.map +0 -1
  412. package/build/dex/ramses-v2/contract-math/FixedPoint128.d.ts +0 -3
  413. package/build/dex/ramses-v2/contract-math/FixedPoint128.js +0 -8
  414. package/build/dex/ramses-v2/contract-math/FixedPoint128.js.map +0 -1
  415. package/build/dex/ramses-v2/contract-math/FixedPoint96.d.ts +0 -4
  416. package/build/dex/ramses-v2/contract-math/FixedPoint96.js +0 -9
  417. package/build/dex/ramses-v2/contract-math/FixedPoint96.js.map +0 -1
  418. package/build/dex/ramses-v2/contract-math/FullMath.d.ts +0 -4
  419. package/build/dex/ramses-v2/contract-math/FullMath.js +0 -19
  420. package/build/dex/ramses-v2/contract-math/FullMath.js.map +0 -1
  421. package/build/dex/ramses-v2/contract-math/LiquidityMath.d.ts +0 -3
  422. package/build/dex/ramses-v2/contract-math/LiquidityMath.js +0 -22
  423. package/build/dex/ramses-v2/contract-math/LiquidityMath.js.map +0 -1
  424. package/build/dex/ramses-v2/contract-math/Oracle.d.ts +0 -10
  425. package/build/dex/ramses-v2/contract-math/Oracle.js +0 -133
  426. package/build/dex/ramses-v2/contract-math/Oracle.js.map +0 -1
  427. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.d.ts +0 -10
  428. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js +0 -91
  429. package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js.map +0 -1
  430. package/build/dex/ramses-v2/contract-math/SwapMath.d.ts +0 -8
  431. package/build/dex/ramses-v2/contract-math/SwapMath.js +0 -70
  432. package/build/dex/ramses-v2/contract-math/SwapMath.js.map +0 -1
  433. package/build/dex/ramses-v2/contract-math/Tick.d.ts +0 -7
  434. package/build/dex/ramses-v2/contract-math/Tick.js +0 -45
  435. package/build/dex/ramses-v2/contract-math/Tick.js.map +0 -1
  436. package/build/dex/ramses-v2/contract-math/TickBitMap.d.ts +0 -8
  437. package/build/dex/ramses-v2/contract-math/TickBitMap.js +0 -87
  438. package/build/dex/ramses-v2/contract-math/TickBitMap.js.map +0 -1
  439. package/build/dex/ramses-v2/contract-math/TickMath.d.ts +0 -8
  440. package/build/dex/ramses-v2/contract-math/TickMath.js +0 -162
  441. package/build/dex/ramses-v2/contract-math/TickMath.js.map +0 -1
  442. package/build/dex/ramses-v2/contract-math/UnsafeMath.d.ts +0 -3
  443. package/build/dex/ramses-v2/contract-math/UnsafeMath.js +0 -10
  444. package/build/dex/ramses-v2/contract-math/UnsafeMath.js.map +0 -1
  445. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.d.ts +0 -18
  446. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js +0 -392
  447. package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js.map +0 -1
  448. package/build/dex/ramses-v2/contract-math/utils.d.ts +0 -3
  449. package/build/dex/ramses-v2/contract-math/utils.js +0 -16
  450. package/build/dex/ramses-v2/contract-math/utils.js.map +0 -1
  451. package/build/dex/ramses-v2/ramses-v2-pool.d.ts +0 -42
  452. package/build/dex/ramses-v2/ramses-v2-pool.js +0 -307
  453. package/build/dex/ramses-v2/ramses-v2-pool.js.map +0 -1
  454. package/build/dex/ramses-v2/ramses-v2.d.ts +0 -61
  455. package/build/dex/ramses-v2/ramses-v2.js +0 -690
  456. package/build/dex/ramses-v2/ramses-v2.js.map +0 -1
  457. package/build/dex/ramses-v2/types.d.ts +0 -154
  458. package/build/dex/ramses-v2/types.js +0 -9
  459. package/build/dex/ramses-v2/types.js.map +0 -1
  460. package/build/dex/ramses-v2/utils.d.ts +0 -6
  461. package/build/dex/ramses-v2/utils.js +0 -71
  462. package/build/dex/ramses-v2/utils.js.map +0 -1
  463. package/build/dex/solidly/forks-override/fvm.d.ts +0 -20
  464. package/build/dex/solidly/forks-override/fvm.js +0 -42
  465. package/build/dex/solidly/forks-override/fvm.js.map +0 -1
  466. package/build/dex/sushiswap-v3/config.d.ts +0 -4
  467. package/build/dex/sushiswap-v3/config.js +0 -132
  468. package/build/dex/sushiswap-v3/config.js.map +0 -1
  469. package/build/dex/sushiswap-v3/constants.d.ts +0 -4
  470. package/build/dex/sushiswap-v3/constants.js +0 -32
  471. package/build/dex/sushiswap-v3/constants.js.map +0 -1
  472. package/build/dex/sushiswap-v3/sushiswap-v3-original.d.ts +0 -56
  473. package/build/dex/sushiswap-v3/sushiswap-v3-original.js +0 -598
  474. package/build/dex/sushiswap-v3/sushiswap-v3-original.js.map +0 -1
  475. package/build/dex/sushiswap-v3/sushiswap-v3-pool.d.ts +0 -1
  476. package/build/dex/sushiswap-v3/sushiswap-v3-pool.js +0 -6
  477. package/build/dex/sushiswap-v3/sushiswap-v3-pool.js.map +0 -1
  478. package/build/dex/sushiswap-v3/sushiswap-v3.d.ts +0 -21
  479. package/build/dex/sushiswap-v3/sushiswap-v3.js +0 -58
  480. package/build/dex/sushiswap-v3/sushiswap-v3.js.map +0 -1
  481. package/build/dex/sushiswap-v3/token.d.ts +0 -6
  482. package/build/dex/sushiswap-v3/token.js +0 -23
  483. package/build/dex/sushiswap-v3/token.js.map +0 -1
  484. package/build/dex/sushiswap-v3/types.d.ts +0 -15
  485. package/build/dex/sushiswap-v3/types.js +0 -18
  486. package/build/dex/sushiswap-v3/types.js.map +0 -1
  487. package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.d.ts +0 -12
  488. package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.js +0 -23
  489. package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.js.map +0 -1
  490. package/build/dex/woo-fi/config.d.ts +0 -4
  491. package/build/dex/woo-fi/config.js +0 -141
  492. package/build/dex/woo-fi/config.js.map +0 -1
  493. package/build/dex/woo-fi/constants.d.ts +0 -5
  494. package/build/dex/woo-fi/constants.js +0 -20
  495. package/build/dex/woo-fi/constants.js.map +0 -1
  496. package/build/dex/woo-fi/types.d.ts +0 -48
  497. package/build/dex/woo-fi/types.js +0 -3
  498. package/build/dex/woo-fi/types.js.map +0 -1
  499. package/build/dex/woo-fi/woo-fi-decimal-math.d.ts +0 -14
  500. package/build/dex/woo-fi/woo-fi-decimal-math.js +0 -42
  501. package/build/dex/woo-fi/woo-fi-decimal-math.js.map +0 -1
  502. package/build/dex/woo-fi/woo-fi-math.d.ts +0 -31
  503. package/build/dex/woo-fi/woo-fi-math.js +0 -300
  504. package/build/dex/woo-fi/woo-fi-math.js.map +0 -1
  505. package/build/dex/woo-fi/woo-fi.d.ts +0 -65
  506. package/build/dex/woo-fi/woo-fi.js +0 -480
  507. package/build/dex/woo-fi/woo-fi.js.map +0 -1
  508. package/build/executor/IExecutorBytecodeBuilder.d.ts +0 -6
  509. package/build/executor/IExecutorBytecodeBuilder.js +0 -3
  510. package/build/executor/IExecutorBytecodeBuilder.js.map +0 -1
  511. package/build/executor/utils.d.ts +0 -2
  512. package/build/executor/utils.js +0 -41
  513. package/build/executor/utils.js.map +0 -1
  514. package/funding.json +0 -5
  515. package/src/executor/utils.ts +0 -62
@@ -38,7 +38,6 @@ import PoolABI from '../../abi/platypus/pool.json';
38
38
  import AvaxPoolABI from '../../abi/platypus/avax-pool.json';
39
39
  import AssetABI from '../../abi/platypus/asset.json';
40
40
  import OracleABI from '../../abi/platypus/oracle.json';
41
- import { extractReturnAmountPosition } from '../../executor/utils';
42
41
 
43
42
  export class Platypus extends SimpleExchange implements IDex<PlatypusData> {
44
43
  static readonly erc20Interface = new Interface(ERC20ABI);
@@ -498,34 +497,22 @@ export class Platypus extends SimpleExchange implements IDex<PlatypusData> {
498
497
  data: PlatypusData,
499
498
  side: SwapSide,
500
499
  ): DexExchangeParam {
501
- const iface = isETHAddress(srcToken)
502
- ? Platypus.avaxPoolInterface
503
- : isETHAddress(destToken)
504
- ? Platypus.avaxPoolInterface
505
- : Platypus.poolInterface;
506
-
507
- const swapFunction = isETHAddress(srcToken)
508
- ? 'swapFromETH'
509
- : isETHAddress(destToken)
510
- ? 'swapToETH'
511
- : 'swap';
512
-
513
500
  const swapData = isETHAddress(srcToken)
514
- ? iface.encodeFunctionData(swapFunction, [
501
+ ? Platypus.avaxPoolInterface.encodeFunctionData('swapFromETH', [
515
502
  destToken,
516
503
  1,
517
504
  recipient,
518
505
  getLocalDeadlineAsFriendlyPlaceholder(),
519
506
  ])
520
507
  : isETHAddress(destToken)
521
- ? iface.encodeFunctionData(swapFunction, [
508
+ ? Platypus.avaxPoolInterface.encodeFunctionData('swapToETH', [
522
509
  srcToken,
523
510
  srcAmount,
524
511
  1,
525
512
  recipient,
526
513
  getLocalDeadlineAsFriendlyPlaceholder(),
527
514
  ])
528
- : iface.encodeFunctionData(swapFunction, [
515
+ : Platypus.poolInterface.encodeFunctionData('swap', [
529
516
  srcToken,
530
517
  destToken,
531
518
  srcAmount,
@@ -539,10 +526,6 @@ export class Platypus extends SimpleExchange implements IDex<PlatypusData> {
539
526
  dexFuncHasRecipient: true,
540
527
  exchangeData: swapData,
541
528
  targetExchange: data.pool,
542
- returnAmountPos:
543
- side === SwapSide.SELL
544
- ? extractReturnAmountPosition(iface, swapFunction, 'actualToAmount')
545
- : undefined,
546
529
  };
547
530
  }
548
531
 
@@ -181,7 +181,6 @@ export class PolygonMigrator
181
181
  dexFuncHasRecipient: false,
182
182
  exchangeData: swapData,
183
183
  targetExchange: this.migratorAddress,
184
- returnAmountPos: undefined,
185
184
  };
186
185
  }
187
186
 
@@ -24,7 +24,6 @@ import { QuickPerpsConfig, Adapters } from './config';
24
24
  import { Vault } from './vault';
25
25
  import ERC20ABI from '../../abi/erc20.json';
26
26
  import { solidityPack } from 'ethers/lib/utils';
27
- import { extractReturnAmountPosition } from '../../executor/utils';
28
27
 
29
28
  const QuickPerpsGasCost = 300 * 1000;
30
29
 
@@ -229,9 +228,7 @@ export class QuickPerps extends SimpleExchange implements IDex<QuickPerpsData> {
229
228
  data: QuickPerpsData,
230
229
  side: SwapSide,
231
230
  ): DexExchangeParam {
232
- const iface = Vault.interface;
233
- const functionName = 'swap';
234
- const swapData = iface.encodeFunctionData(functionName, [
231
+ const swapData = Vault.interface.encodeFunctionData('swap', [
235
232
  srcToken,
236
233
  destToken,
237
234
  recipient,
@@ -244,13 +241,6 @@ export class QuickPerps extends SimpleExchange implements IDex<QuickPerpsData> {
244
241
  targetExchange: this.params.vault,
245
242
  swappedAmountNotPresentInExchangeData: true,
246
243
  transferSrcTokenBeforeSwap: this.params.vault,
247
- returnAmountPos:
248
- side === SwapSide.SELL
249
- ? extractReturnAmountPosition(
250
- iface,
251
- functionName,
252
- )
253
- : undefined,
254
244
  };
255
245
  }
256
246
 
@@ -104,7 +104,6 @@ export class Smoothy
104
104
  dexFuncHasRecipient: false,
105
105
  exchangeData: swapData,
106
106
  targetExchange: exchange,
107
- returnAmountPos: undefined,
108
107
  };
109
108
  }
110
109
  }
@@ -683,7 +683,6 @@ export class Solidly extends UniswapV2 {
683
683
  transferSrcTokenBeforeSwap: data.isFeeTokenInRoute
684
684
  ? undefined
685
685
  : data.pools[0].address,
686
- returnAmountPos: undefined,
687
686
  };
688
687
  }
689
688
  }
@@ -47,6 +47,7 @@ import { assert, DeepReadonly } from 'ts-essentials';
47
47
  import { uniswapV3Math } from './contract-math/uniswap-v3-math';
48
48
  import { Contract } from 'web3-eth-contract';
49
49
  import { AbiItem } from 'web3-utils';
50
+ import { OptimalSwapExchange } from '@paraswap/core';
50
51
  import { TickMath } from './contract-math/TickMath';
51
52
  import { OnPoolCreatedCallback, SolidlyV3Factory } from './solidly-v3-factory';
52
53
 
@@ -724,7 +725,6 @@ export class SolidlyV3
724
725
  dexFuncHasRecipient: true,
725
726
  exchangeData: swapData,
726
727
  targetExchange: data.poolAddress,
727
- returnAmountPos: undefined,
728
728
  };
729
729
  }
730
730
 
@@ -24,7 +24,6 @@ import { Interface } from 'ethers/lib/utils';
24
24
  import { SparkSDaiEventPool } from './spark-sdai-pool';
25
25
  import { BI_POWS } from '../../bigint-constants';
26
26
  import { SDAI_DEPOSIT_GAS_COST, SDAI_REDEEM_GAS_COST } from './constants';
27
- import { extractReturnAmountPosition } from '../../executor/utils';
28
27
 
29
28
  export class Spark
30
29
  extends SimpleExchange
@@ -242,15 +241,6 @@ export class Spark
242
241
  dexFuncHasRecipient: true,
243
242
  exchangeData: swapData,
244
243
  targetExchange: exchange,
245
- returnAmountPos: isSell
246
- ? extractReturnAmountPosition(
247
- this.sdaiInterface,
248
- this.isDai(srcToken)
249
- ? SparkSDaiFunctions.deposit
250
- : SparkSDaiFunctions.redeem,
251
- this.isDai(srcToken) ? 'shares' : 'assets',
252
- )
253
- : undefined,
254
244
  };
255
245
  }
256
246
 
@@ -12,7 +12,6 @@ import { SimpleExchange } from '../simple-exchange';
12
12
  import StablePoolABI from '../../abi/StablePool.json';
13
13
  import { IDexHelper } from '../../dex-helper';
14
14
  import { StablePoolFunctions, StablePoolData, StablePoolParam } from './types';
15
- import { extractReturnAmountPosition } from '../../executor/utils';
16
15
 
17
16
  export class StablePool
18
17
  extends SimpleExchange
@@ -124,13 +123,6 @@ export class StablePool
124
123
  dexFuncHasRecipient: false,
125
124
  exchangeData: swapData,
126
125
  targetExchange: exchange,
127
- returnAmountPos:
128
- side === SwapSide.SELL
129
- ? extractReturnAmountPosition(
130
- this.exchangeRouterInterface,
131
- StablePoolFunctions.swap,
132
- )
133
- : undefined,
134
126
  };
135
127
  }
136
128
  }
@@ -41,7 +41,6 @@ import {
41
41
  import { SwaapV1Pool } from './swaap-v1-pool';
42
42
  import PoolABI from '../../abi/swaap-v1/pool.json';
43
43
  import { PoolQuotations } from './libraries/PoolQuotations';
44
- import { extractReturnAmountPosition } from '../../executor/utils';
45
44
 
46
45
  export class SwaapV1 extends SimpleExchange implements IDex<SwaapV1Data> {
47
46
  static readonly poolInterface = new Interface(PoolABI);
@@ -287,14 +286,6 @@ export class SwaapV1 extends SimpleExchange implements IDex<SwaapV1Data> {
287
286
  dexFuncHasRecipient: false,
288
287
  exchangeData: swapData,
289
288
  targetExchange: data.pool,
290
- returnAmountPos:
291
- side === SwapSide.SELL
292
- ? extractReturnAmountPosition(
293
- SwaapV1.poolInterface,
294
- functionName,
295
- 'tokenAmountOut',
296
- )
297
- : undefined,
298
289
  };
299
290
  }
300
291
 
@@ -77,7 +77,6 @@ import {
77
77
  } from '../generic-rfq/types';
78
78
  import { BI_MAX_UINT256 } from '../../bigint-constants';
79
79
  import { SpecialDex } from '../../executor/types';
80
- import { extractReturnAmountPosition } from '../../executor/utils';
81
80
 
82
81
  const BLACKLISTED = 'blacklisted';
83
82
 
@@ -477,14 +476,6 @@ export class SwaapV2 extends SimpleExchange implements IDex<SwaapV2Data> {
477
476
  exchangeData: callData,
478
477
  specialDexFlag: SpecialDex.SWAP_ON_SWAAP_V2_SINGLE,
479
478
  targetExchange: router,
480
- returnAmountPos:
481
- side === SwapSide.SELL
482
- ? extractReturnAmountPosition(
483
- this.routerInterface,
484
- 'swap',
485
- 'amountCalculated',
486
- )
487
- : undefined,
488
479
  };
489
480
  }
490
481
 
@@ -291,7 +291,6 @@ export class Swell
291
291
  srcAmount,
292
292
  ])
293
293
  : undefined,
294
- returnAmountPos: undefined,
295
294
  };
296
295
  }
297
296
 
@@ -31,7 +31,6 @@ import { SynthetixState } from './synthetix-state';
31
31
  // There are so many ABIs, where I need only one or two functions
32
32
  // So, I decided to unite them into one combined interface
33
33
  import CombinedSynthetixABI from '../../abi/synthetix/CombinedSynthetix.abi.json';
34
- import { extractReturnAmountPosition } from '../../executor/utils';
35
34
 
36
35
  export class Synthetix extends SimpleExchange implements IDex<SynthetixData> {
37
36
  readonly hasConstantPriceLargeAmounts = false;
@@ -358,16 +357,6 @@ export class Synthetix extends SimpleExchange implements IDex<SynthetixData> {
358
357
  dexFuncHasRecipient: false,
359
358
  exchangeData: swapData,
360
359
  targetExchange: exchange,
361
- returnAmountPos:
362
- side === SwapSide.SELL
363
- ? extractReturnAmountPosition(
364
- this.combinedIface,
365
- this.network === Network.OPTIMISM
366
- ? 'exchange'
367
- : 'exchangeAtomically',
368
- 'amountReceived',
369
- )
370
- : undefined,
371
360
  };
372
361
  }
373
362
 
@@ -21,7 +21,6 @@ import {
21
21
  TraderJoeV2RouterParam,
22
22
  } from './types';
23
23
  import { TRADERJOE_V2_1_ROUTER_ADDRESS } from './config';
24
- import { extractReturnAmountPosition } from '../../executor/utils';
25
24
 
26
25
  export class TraderJoeV21
27
26
  extends SimpleExchange
@@ -167,14 +166,6 @@ export class TraderJoeV21
167
166
  dexFuncHasRecipient: true,
168
167
  exchangeData: swapData,
169
168
  targetExchange: this.routerAddress,
170
- returnAmountPos:
171
- side === SwapSide.SELL
172
- ? extractReturnAmountPosition(
173
- this.exchangeRouterInterface,
174
- swapFunction,
175
- 'amountOut',
176
- )
177
- : undefined,
178
169
  };
179
170
  }
180
171
  }
@@ -914,7 +914,6 @@ export class UniswapV2
914
914
  targetExchange,
915
915
  specialDexFlag,
916
916
  transferSrcTokenBeforeSwap,
917
- returnAmountPos: undefined,
918
917
  };
919
918
  }
920
919
 
@@ -71,7 +71,6 @@ import {
71
71
  import { OptimalSwapExchange } from '@paraswap/core';
72
72
  import { OnPoolCreatedCallback, UniswapV3Factory } from './uniswap-v3-factory';
73
73
  import { hexConcat, hexlify, hexZeroPad, hexValue } from 'ethers/lib/utils';
74
- import { extractReturnAmountPosition } from '../../executor/utils';
75
74
 
76
75
  type PoolPairsInfo = {
77
76
  token0: Address;
@@ -1142,14 +1141,6 @@ export class UniswapV3
1142
1141
  dexFuncHasRecipient: true,
1143
1142
  exchangeData,
1144
1143
  targetExchange: this.config.router,
1145
- returnAmountPos:
1146
- side === SwapSide.SELL
1147
- ? extractReturnAmountPosition(
1148
- this.routerIface,
1149
- swapFunction,
1150
- 'amountOut',
1151
- )
1152
- : undefined,
1153
1144
  };
1154
1145
  }
1155
1146
 
@@ -15,7 +15,6 @@ import {
15
15
  import UniswapV3RouterABI from '../abi/UniswapV3Router.json';
16
16
  import { NumberAsString } from '@paraswap/core';
17
17
  import { IDexHelper } from '../dex-helper';
18
- import { extractReturnAmountPosition } from '../executor/utils';
19
18
 
20
19
  const UNISWAP_V3_ROUTER_ADDRESSES: { [network: number]: Address } = {
21
20
  [Network.MAINNET]: '0xE592427A0AEce92De3Edee1F18E0157C05861564',
@@ -229,14 +228,6 @@ export class UniswapV3
229
228
  dexFuncHasRecipient: true,
230
229
  exchangeData,
231
230
  targetExchange: this.routerAddress,
232
- returnAmountPos:
233
- side === SwapSide.SELL
234
- ? extractReturnAmountPosition(
235
- this.exchangeRouterInterface,
236
- swapFunction,
237
- 'amountOut',
238
- )
239
- : undefined,
240
231
  };
241
232
  }
242
233
  }
@@ -170,7 +170,6 @@ export class Weth
170
170
  dexFuncHasRecipient: false,
171
171
  exchangeData: swapData,
172
172
  targetExchange: this.address,
173
- returnAmountPos: undefined,
174
173
  };
175
174
  }
176
175
 
@@ -32,7 +32,6 @@ import { WombatBmw } from './wombat-bmw';
32
32
  import { fromWad } from './utils';
33
33
  import { WombatPool } from './wombat-pool';
34
34
  import { StatePollingManager } from '../../lib/stateful-rpc-poller/state-polling-manager';
35
- import { extractReturnAmountPosition } from '../../executor/utils';
36
35
 
37
36
  export class Wombat extends SimpleExchange implements IDex<WombatData> {
38
37
  // contract interfaces
@@ -340,14 +339,6 @@ export class Wombat extends SimpleExchange implements IDex<WombatData> {
340
339
  dexFuncHasRecipient: true,
341
340
  exchangeData: swapData,
342
341
  targetExchange: exchange,
343
- returnAmountPos:
344
- side === SwapSide.SELL
345
- ? extractReturnAmountPosition(
346
- Wombat.poolInterface,
347
- 'swap',
348
- 'actualToAmount',
349
- )
350
- : undefined,
351
342
  };
352
343
  }
353
344
 
@@ -28,7 +28,6 @@ import { addressDecode } from '../../lib/decoders';
28
28
  import { ifaces } from './utils';
29
29
  import { StatePollingManager } from '../../lib/stateful-rpc-poller/state-polling-manager';
30
30
  import { solidityPack } from 'ethers/lib/utils';
31
- import { extractReturnAmountPosition } from '../../executor/utils';
32
31
 
33
32
  export class WooFiV2 extends SimpleExchange implements IDex<WooFiV2Data> {
34
33
  readonly math: WooFiV2Math;
@@ -358,10 +357,6 @@ export class WooFiV2 extends SimpleExchange implements IDex<WooFiV2Data> {
358
357
  exchangeData: swapData,
359
358
  targetExchange: this.config.wooPPV2Address,
360
359
  transferSrcTokenBeforeSwap: this.config.wooPPV2Address,
361
- returnAmountPos:
362
- side === SwapSide.SELL
363
- ? extractReturnAmountPosition(ifaces.PPV2, 'swap', 'realToAmount')
364
- : undefined,
365
360
  };
366
361
  }
367
362
 
@@ -23,7 +23,6 @@ import { uint256ToBigInt } from '../../lib/decoders';
23
23
  import { Utils } from '../../utils';
24
24
  import WSTETH_ABI from '../../abi/wstETH.json';
25
25
  import STETH_ABI from '../../abi/stETH.json';
26
- import { extractReturnAmountPosition } from '../../executor/utils';
27
26
 
28
27
  export class WstETH extends SimpleExchange implements IDex<WstETHData> {
29
28
  static readonly wstETHIface = new Interface(WSTETH_ABI);
@@ -253,24 +252,16 @@ export class WstETH extends SimpleExchange implements IDex<WstETHData> {
253
252
  data: WstETHData,
254
253
  side: SwapSide,
255
254
  ): Promise<DexExchangeParam> {
256
- const swapFunction =
257
- srcToken.toLowerCase() === this.config.stETHAddress ? 'wrap' : 'unwrap';
258
- const exchangeData = WstETH.wstETHIface.encodeFunctionData(swapFunction, [
259
- srcAmount,
260
- ]);
255
+ const exchangeData = WstETH.wstETHIface.encodeFunctionData(
256
+ srcToken.toLowerCase() === this.config.stETHAddress ? 'wrap' : 'unwrap',
257
+ [srcAmount],
258
+ );
261
259
 
262
260
  return {
263
261
  needWrapNative: this.needWrapNative,
264
262
  dexFuncHasRecipient: false,
265
263
  exchangeData,
266
264
  targetExchange: this.config.wstETHAddress,
267
- returnAmountPos:
268
- side === SwapSide.SELL
269
- ? extractReturnAmountPosition(
270
- WstETH.wstETHIface,
271
- swapFunction,
272
- )
273
- : undefined,
274
265
  };
275
266
  }
276
267
 
@@ -257,7 +257,6 @@ export class ZeroX
257
257
  dexFuncHasRecipient: false,
258
258
  exchangeData: swapData,
259
259
  targetExchange: this.getExchange(data),
260
- returnAmountPos: undefined,
261
260
  };
262
261
  }
263
262
 
@@ -4,7 +4,7 @@ import { OptimalRate } from '@paraswap/core';
4
4
  import { isETHAddress } from '../utils';
5
5
  import { DepositWithdrawReturn } from '../dex/weth/types';
6
6
  import { Executors, Flag, SpecialDex } from './types';
7
- import { BYTES_64_LENGTH, DEFAULT_RETURN_AMOUNT_POS } from './constants';
7
+ import { BYTES_64_LENGTH } from './constants';
8
8
  import {
9
9
  DexCallDataParams,
10
10
  ExecutorBytecodeBuilder,
@@ -351,11 +351,6 @@ export class Executor01BytecodeBuilder extends ExecutorBytecodeBuilder<
351
351
  const swap = priceRoute.bestRoute[routeIndex].swaps[swapIndex];
352
352
  let { exchangeData, specialDexFlag } = exchangeParam;
353
353
 
354
- const returnAmountPos =
355
- exchangeParam.returnAmountPos !== undefined
356
- ? exchangeParam.returnAmountPos
357
- : DEFAULT_RETURN_AMOUNT_POS;
358
-
359
354
  let destTokenPos = 0;
360
355
  if (checkDestTokenBalanceAfterSwap && !dontCheckBalanceAfterSwap) {
361
356
  const destTokenAddr = isETHAddress(swap.destToken)
@@ -398,8 +393,6 @@ export class Executor01BytecodeBuilder extends ExecutorBytecodeBuilder<
398
393
  destTokenPos,
399
394
  specialDexFlag || SpecialDex.DEFAULT,
400
395
  flag,
401
- undefined,
402
- returnAmountPos,
403
396
  );
404
397
  }
405
398
 
@@ -22,7 +22,6 @@ import {
22
22
  ZEROS_20_BYTES,
23
23
  ZEROS_28_BYTES,
24
24
  ZEROS_4_BYTES,
25
- DEFAULT_RETURN_AMOUNT_POS,
26
25
  } from './constants';
27
26
  import { assert } from 'ts-essentials';
28
27
 
@@ -277,16 +276,6 @@ export class Executor02BytecodeBuilder extends ExecutorBytecodeBuilder<
277
276
  let { exchangeData, specialDexFlag, targetExchange, needWrapNative } =
278
277
  exchangeParam;
279
278
 
280
- const routeNeedsRootUnwrapEth = this.doesRouteNeedsRootUnwrapEth(
281
- priceRoute,
282
- exchangeParams,
283
- );
284
-
285
- const returnAmountPos =
286
- exchangeParam.returnAmountPos !== undefined && !routeNeedsRootUnwrapEth // prevent returnAmoutPos optimisation if route needs root unwrap eth
287
- ? exchangeParam.returnAmountPos
288
- : DEFAULT_RETURN_AMOUNT_POS;
289
-
290
279
  const applyVerticalBranching = this.doesSwapNeedToApplyVerticalBranching(
291
280
  priceRoute,
292
281
  routeIndex,
@@ -354,8 +343,6 @@ export class Executor02BytecodeBuilder extends ExecutorBytecodeBuilder<
354
343
  destTokenPos,
355
344
  specialDexFlag || SpecialDex.DEFAULT,
356
345
  flag,
357
- undefined,
358
- returnAmountPos,
359
346
  );
360
347
  }
361
348
 
@@ -25,7 +25,6 @@ import {
25
25
  import { Executors, Flag, SpecialDex } from './types';
26
26
  import { MAX_UINT, Network } from '../constants';
27
27
  import { DexExchangeBuildParam, DexExchangeParam } from '../types';
28
- import { ExecutorDetector } from './ExecutorDetector';
29
28
 
30
29
  const {
31
30
  utils: { hexlify, hexDataLength, hexConcat, hexZeroPad, solidityPack },
@@ -229,7 +228,6 @@ export abstract class ExecutorBytecodeBuilder<S = {}, D = {}> {
229
228
  specialDexFlag: SpecialDex,
230
229
  flag: Flag,
231
230
  toAmountPos = 0,
232
- returnAmountPos = DEFAULT_RETURN_AMOUNT_POS,
233
231
  ): string {
234
232
  const builder =
235
233
  this.type !== Executors.THREE
@@ -244,7 +242,6 @@ export abstract class ExecutorBytecodeBuilder<S = {}, D = {}> {
244
242
  specialDexFlag,
245
243
  flag,
246
244
  toAmountPos,
247
- returnAmountPos,
248
245
  );
249
246
  }
250
247
 
@@ -255,15 +252,13 @@ export abstract class ExecutorBytecodeBuilder<S = {}, D = {}> {
255
252
  destTokenPos: number,
256
253
  specialDexFlag: SpecialDex,
257
254
  flag: Flag,
258
- toAmountPos = 0, // not used for Executor01 and Executor02, just to follow the same interface
259
- returnAmountPos = DEFAULT_RETURN_AMOUNT_POS,
260
255
  ) {
261
256
  return solidityPack(EXECUTOR_01_02_FUNCTION_CALL_DATA_TYPES, [
262
257
  tokenAddress, // token address
263
258
  hexZeroPad(hexlify(hexDataLength(calldata) + BYTES_28_LENGTH), 4), // calldata length + bytes28(0)
264
259
  hexZeroPad(hexlify(fromAmountPos), 2), // fromAmountPos
265
260
  hexZeroPad(hexlify(destTokenPos), 2), // destTokenPos
266
- hexZeroPad(hexlify(returnAmountPos), 1), // returnAmountPos
261
+ hexZeroPad(hexlify(DEFAULT_RETURN_AMOUNT_POS), 1), // TODO: Fix returnAmount Pos
267
262
  hexZeroPad(hexlify(specialDexFlag), 1), // special
268
263
  hexZeroPad(hexlify(flag), 2), // flag
269
264
  ZEROS_28_BYTES, // bytes28(0)
@@ -21,7 +21,7 @@ export class ExecutorDetector {
21
21
  [RouteExecutionType.SINGLE_STEP]: Executors.ONE, // simpleSwap via Executor01
22
22
  [RouteExecutionType.HORIZONTAL_SEQUENCE]: Executors.ONE, // multiSwap via Executor01
23
23
  [RouteExecutionType.VERTICAL_BRANCH]: Executors.TWO, // simpleSwap with percentage on a path via Executor02
24
- [RouteExecutionType.VERTICAL_BRANCH_HORIZONTAL_SEQUENCE]: Executors.TWO, // multiSwap with percentages on paths via Executor02
24
+ [RouteExecutionType.VERTICAL_BRANCH_HORIZONTAL_SEQUENCE]: Executors.TWO, // multiSwap with pecentages on paths via Executor02
25
25
  // megaSwap via Executor02
26
26
  [RouteExecutionType.NESTED_VERTICAL_BRANCH_HORIZONTAL_SEQUENCE]:
27
27
  Executors.TWO,
@@ -46,7 +46,7 @@ export class ExecutorDetector {
46
46
  this.wethBytecodeBuilder = new WETHBytecodeBuilder(this.dexHelper);
47
47
  }
48
48
 
49
- public getRouteExecutionType(priceRoute: OptimalRate): RouteExecutionType {
49
+ protected getRouteExecutionType(priceRoute: OptimalRate): RouteExecutionType {
50
50
  if (
51
51
  priceRoute.bestRoute.length === 1 &&
52
52
  priceRoute.bestRoute[0].percent === 100 &&
@@ -85,7 +85,6 @@ export class ExecutorDetector {
85
85
 
86
86
  throw new Error('Route type is not supported yet');
87
87
  }
88
-
89
88
  detectSpecialExecutor(priceRoute: OptimalRate): Executors | null {
90
89
  if (isSingleWrapRoute(priceRoute)) return Executors.WETH;
91
90
  return null;
@@ -47,10 +47,7 @@ export const EXECUTOR_03_FUNCTION_CALL_DATA_TYPES: string[] = [
47
47
 
48
48
  export const APPROVE_CALLDATA_DEST_TOKEN_POS = 68;
49
49
  export const WRAP_UNWRAP_FROM_AMOUNT_POS = 4;
50
- export const DEFAULT_RETURN_AMOUNT_POS = 255;
51
-
52
- export const RETURN_AMOUNT_POS_0 = 0;
53
- export const RETURN_AMOUNT_POS_32 = 32;
50
+ export const DEFAULT_RETURN_AMOUNT_POS = '0xff';
54
51
 
55
52
  // TODO-v6?: can it be removed after approval/cache task, because we are going to give approvals only once,
56
53
  // therefore for any case initial allowance would be 0
@@ -183,45 +183,6 @@ describe('Executor01ByteCodeBuilder e2e tests', () => {
183
183
  provider,
184
184
  );
185
185
  });
186
-
187
- it('simpleSwap USDC -> ETH', async () => {
188
- await testE2E(
189
- tokens['USDC'],
190
- tokens['ETH'],
191
- holders['USDC'],
192
- '100000000',
193
- SwapSide.SELL,
194
- dexKey,
195
- ContractMethod.simpleSwap,
196
- network,
197
- provider,
198
- );
199
- });
200
- });
201
-
202
- describe('Etherfi', () => {
203
- const dexKey = 'EtherFi';
204
-
205
- const tokens = Tokens[network];
206
- const holders = Holders[network];
207
- const provider = new StaticJsonRpcProvider(
208
- generateConfig(network).privateHttpProvider,
209
- network,
210
- );
211
-
212
- it('simpleSwap eETH -> weETH', async () => {
213
- await testE2E(
214
- tokens['eETH'],
215
- tokens['weETH'],
216
- holders['eETH'],
217
- '100000000000000000',
218
- SwapSide.SELL,
219
- dexKey,
220
- ContractMethod.simpleSwap,
221
- network,
222
- provider,
223
- );
224
- });
225
186
  });
226
187
 
227
188
  describe('BalancerV2', () => {
package/src/types.ts CHANGED
@@ -170,7 +170,6 @@ export type DexExchangeParam = {
170
170
  specialDexSupportsInsertFromAmount?: boolean;
171
171
  swappedAmountNotPresentInExchangeData?: boolean;
172
172
  preSwapUnwrapCalldata?: string;
173
- returnAmountPos: number | undefined;
174
173
  };
175
174
 
176
175
  export type DexExchangeBuildParam = DexExchangeParam & {
@@ -407,10 +407,6 @@ export const Tokens: {
407
407
  address: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',
408
408
  decimals: 18,
409
409
  },
410
- weETH: {
411
- address: '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee',
412
- decimals: 18,
413
- },
414
410
  },
415
411
  [Network.ROPSTEN]: {
416
412
  DAI: {
@@ -1379,7 +1375,6 @@ export const Holders: {
1379
1375
  BNT: '0xf727e20e081aAE428E7c6bE07b156bB21ab587a7',
1380
1376
  USDe: '0x74e6c48e667d698a4cf90665b6960a5bae39e603',
1381
1377
  eETH: '0x0f1DfeF1a40557d279d0de6E49aB306891A638b8',
1382
- weETH: '0xfB4cB868727D9622258bf2B26A8CFc95f6742669',
1383
1378
  },
1384
1379
  [Network.ROPSTEN]: {
1385
1380
  ETH: '0x43262A12d8610AA70C15DbaeAC321d51613c9071',
@@ -1546,7 +1541,7 @@ export const Holders: {
1546
1541
  LINK: '0x7f1fa204bb700853d36994da19f830b6ad18455c',
1547
1542
  DMT: '0x40414f138eb2ef938e6c3629897ef99d4464d4e8',
1548
1543
  PENDLE: '0x5bdf85216ec1e38d6458c870992a69e38e03f7ef',
1549
- wstETH: '0x27edc7700f1820cb38ec3bbb84c542945f21b5a1',
1544
+ wstETH: '0x916792f7734089470de27297903bed8a4630b26d',
1550
1545
  EURA: '0x6dd7b830896b56812aa667bdd14b71c8b3252f8e',
1551
1546
  stEUR: '0xE588611e7A2392507879E3be80531654b85C16aA',
1552
1547
  USDA: '0xa86ff337db9107b54862d30d1a598f8be847b05e',