@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.
- package/README.md +0 -12
- package/build/abi/Redstone.json +739 -0
- package/build/{dex/lighter-v1/abi/erc20.json → abi/angle-transmuter/MorphoOracle.json} +97 -126
- package/build/abi/angle-transmuter/MorphoVault.json +2506 -0
- package/build/abi/angle-transmuter/Pyth.json +1534 -0
- package/build/abi/angle-transmuter/Transmuter.json +1711 -0
- package/build/abi/idle-dao/idle-cdo-factory.json +38 -0
- package/build/abi/idle-dao/idle-cdo.json +1245 -0
- package/build/abi/pharaoh/PharaohPool.abi.json +1582 -0
- package/build/abi/smardex/smardex-factory.json +185 -0
- package/build/abi/smardex/smardex-pool.json +578 -0
- package/build/abi/smardex/smardex-router.json +648 -0
- package/build/abi/trader-joe-v2_1/FactoryABI.json +1208 -0
- package/build/abi/trader-joe-v2_1/PairABI.json +1493 -0
- package/build/abi/trader-joe-v2_1/RouterABI.json +1489 -0
- package/build/abi/trader-joe-v2_1/StateMulticall.json +193 -0
- package/build/abi/{integral/relayer.json → wombat/pool.json} +587 -446
- package/build/dex/aave-v1/aave-v1.js +0 -1
- package/build/dex/aave-v1/aave-v1.js.map +1 -1
- package/build/dex/aave-v2/aave-v2.js +0 -1
- package/build/dex/aave-v2/aave-v2.js.map +1 -1
- package/build/dex/aave-v3/aave-v3.js +0 -1
- package/build/dex/aave-v3/aave-v3.js.map +1 -1
- package/build/dex/algebra/algebra.js +0 -4
- package/build/dex/algebra/algebra.js.map +1 -1
- package/build/dex/angle-staked-stable/angle-staked-stable.d.ts +1 -1
- package/build/dex/angle-staked-stable/angle-staked-stable.js +0 -1
- package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
- package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +61 -0
- package/build/dex/angle-transmuter/angle-transmuter-pool.js +415 -0
- package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +1 -0
- package/build/dex/{lighter-v1/lighter-v1.d.ts → angle-transmuter/angle-transmuter.d.ts} +31 -17
- package/build/dex/angle-transmuter/angle-transmuter.js +262 -0
- package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -0
- package/build/dex/angle-transmuter/backedOracle.d.ts +19 -0
- package/build/dex/angle-transmuter/backedOracle.js +56 -0
- package/build/dex/angle-transmuter/backedOracle.js.map +1 -0
- package/build/dex/{ramses-v2 → angle-transmuter}/config.d.ts +1 -1
- package/build/dex/angle-transmuter/config.js +30 -0
- package/build/dex/angle-transmuter/config.js.map +1 -0
- package/build/dex/angle-transmuter/constants.d.ts +77 -0
- package/build/dex/angle-transmuter/constants.js +94 -0
- package/build/dex/angle-transmuter/constants.js.map +1 -0
- package/build/dex/{integral/integral-pool.d.ts → angle-transmuter/morphoOracle.d.ts} +15 -12
- package/build/dex/angle-transmuter/morphoOracle.js +179 -0
- package/build/dex/angle-transmuter/morphoOracle.js.map +1 -0
- package/build/dex/angle-transmuter/morphoVault.d.ts +19 -0
- package/build/dex/angle-transmuter/morphoVault.js +78 -0
- package/build/dex/angle-transmuter/morphoVault.js.map +1 -0
- package/build/dex/angle-transmuter/pyth.d.ts +19 -0
- package/build/dex/angle-transmuter/pyth.js +70 -0
- package/build/dex/angle-transmuter/pyth.js.map +1 -0
- package/build/dex/angle-transmuter/redstone.d.ts +20 -0
- package/build/dex/angle-transmuter/redstone.js +73 -0
- package/build/dex/angle-transmuter/redstone.js.map +1 -0
- package/build/dex/angle-transmuter/transmuter.d.ts +52 -0
- package/build/dex/angle-transmuter/transmuter.js +374 -0
- package/build/dex/angle-transmuter/transmuter.js.map +1 -0
- package/build/dex/angle-transmuter/types.d.ts +188 -0
- package/build/dex/angle-transmuter/types.js +33 -0
- package/build/dex/angle-transmuter/types.js.map +1 -0
- package/build/dex/angle-transmuter/utils.d.ts +9 -0
- package/build/dex/angle-transmuter/utils.js +252 -0
- package/build/dex/angle-transmuter/utils.js.map +1 -0
- package/build/dex/bProtocol/bProtocol.js +0 -5
- package/build/dex/bProtocol/bProtocol.js.map +1 -1
- package/build/dex/balancer-v1/balancer-v1.js +0 -4
- package/build/dex/balancer-v1/balancer-v1.js.map +1 -1
- package/build/dex/balancer-v2/balancer-v2.js +0 -1
- package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
- package/build/dex/bancor/bancor.js +0 -4
- package/build/dex/bancor/bancor.js.map +1 -1
- package/build/dex/camelot/camelot.js +0 -1
- package/build/dex/camelot/camelot.js.map +1 -1
- package/build/dex/compound/compound.js +0 -1
- package/build/dex/compound/compound.js.map +1 -1
- package/build/dex/curve-v1/curve-v1.js +0 -1
- package/build/dex/curve-v1/curve-v1.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-factory.js +0 -1
- package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
- package/build/dex/curve-v2/curve-v2.js +0 -1
- package/build/dex/curve-v2/curve-v2.js.map +1 -1
- package/build/dex/dexalot/dexalot.js +0 -1
- package/build/dex/dexalot/dexalot.js.map +1 -1
- package/build/dex/dodo-v1/dodo-v1.js +0 -4
- package/build/dex/dodo-v1/dodo-v1.js.map +1 -1
- package/build/dex/dodo-v2.js +0 -4
- package/build/dex/dodo-v2.js.map +1 -1
- package/build/dex/etherfi.js +0 -2
- package/build/dex/etherfi.js.map +1 -1
- package/build/dex/generic-rfq/generic-rfq.js +0 -1
- package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
- package/build/dex/gmx/gmx.js +0 -4
- package/build/dex/gmx/gmx.js.map +1 -1
- package/build/dex/hashflow/hashflow.js +0 -1
- package/build/dex/hashflow/hashflow.js.map +1 -1
- package/build/dex/idle-dao/config.d.ts +6 -0
- package/build/dex/idle-dao/config.js +29 -0
- package/build/dex/idle-dao/config.js.map +1 -0
- package/build/dex/idle-dao/idle-dao-pool.d.ts +56 -0
- package/build/dex/idle-dao/idle-dao-pool.js +176 -0
- package/build/dex/idle-dao/idle-dao-pool.js.map +1 -0
- package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +16 -0
- package/build/dex/idle-dao/idle-dao-pooling-pool.js +57 -0
- package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +1 -0
- package/build/dex/idle-dao/idle-dao.d.ts +52 -0
- package/build/dex/idle-dao/idle-dao.js +310 -0
- package/build/dex/idle-dao/idle-dao.js.map +1 -0
- package/build/dex/idle-dao/tokens.d.ts +16 -0
- package/build/dex/idle-dao/tokens.js +87 -0
- package/build/dex/idle-dao/tokens.js.map +1 -0
- package/build/dex/idle-dao/types.d.ts +37 -0
- package/build/dex/idle-dao/types.js +11 -0
- package/build/dex/idle-dao/types.js.map +1 -0
- package/build/dex/idle-dao/utils.d.ts +8 -0
- package/build/dex/idle-dao/utils.js +145 -0
- package/build/dex/idle-dao/utils.js.map +1 -0
- package/build/dex/jarvis-v6/jarvis-v6.js +0 -1
- package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -1
- package/build/dex/jarvis.js +0 -8
- package/build/dex/jarvis.js.map +1 -1
- package/build/dex/kyberdmm/kyberdmm.js +0 -4
- package/build/dex/kyberdmm/kyberdmm.js.map +1 -1
- package/build/dex/lido/lido.js +0 -5
- package/build/dex/lido/lido.js.map +1 -1
- package/build/dex/maker-psm/maker-psm.js +0 -1
- package/build/dex/maker-psm/maker-psm.js.map +1 -1
- package/build/dex/maverick-v1/maverick-v1.js +0 -4
- package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
- package/build/dex/nerve/nerve.js +0 -4
- package/build/dex/nerve/nerve.js.map +1 -1
- package/build/dex/onebit/onebit.js +0 -5
- package/build/dex/onebit/onebit.js.map +1 -1
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js +0 -4
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js +0 -1
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js.map +1 -1
- package/build/dex/platypus/platypus.js +3 -17
- package/build/dex/platypus/platypus.js.map +1 -1
- package/build/dex/polygon-migrator/polygon-migrator.js +0 -1
- package/build/dex/polygon-migrator/polygon-migrator.js.map +1 -1
- package/build/dex/quick-perps/quick-perps.js +1 -7
- package/build/dex/quick-perps/quick-perps.js.map +1 -1
- package/build/dex/smardex/subgraph-queries.d.ts +1 -0
- package/build/dex/smardex/subgraph-queries.js +17 -0
- package/build/dex/smardex/subgraph-queries.js.map +1 -0
- package/build/dex/smardex/usd-reserves.d.ts +23 -0
- package/build/dex/smardex/usd-reserves.js +86 -0
- package/build/dex/smardex/usd-reserves.js.map +1 -0
- package/build/dex/smoothy/smoothy.js +0 -1
- package/build/dex/smoothy/smoothy.js.map +1 -1
- package/build/dex/solidly/solidly.js +0 -1
- package/build/dex/solidly/solidly.js.map +1 -1
- package/build/dex/solidly-v3/solidly-v3.js +0 -1
- package/build/dex/solidly-v3/solidly-v3.js.map +1 -1
- package/build/dex/spark/spark.js +0 -6
- package/build/dex/spark/spark.js.map +1 -1
- package/build/dex/stable-pool/stable-pool.js +0 -4
- package/build/dex/stable-pool/stable-pool.js.map +1 -1
- package/build/dex/swaap-v1/swaap-v1.js +0 -4
- package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
- package/build/dex/swaap-v2/swaap-v2.js +0 -4
- package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
- package/build/dex/swell/swell.js +0 -1
- package/build/dex/swell/swell.js.map +1 -1
- package/build/dex/synthetix/synthetix.js +0 -6
- package/build/dex/synthetix/synthetix.js.map +1 -1
- package/build/dex/{integral → trader-joe-v2-1-2}/config.d.ts +1 -1
- package/build/dex/trader-joe-v2-1-2/config.js +47 -0
- package/build/dex/trader-joe-v2-1-2/config.js.map +1 -0
- package/build/dex/trader-joe-v2-1-2/constants.d.ts +20 -0
- package/build/dex/trader-joe-v2-1-2/constants.js +22 -0
- package/build/dex/trader-joe-v2-1-2/constants.js.map +1 -0
- package/build/dex/trader-joe-v2-1-2/math/index.d.ts +37 -0
- package/build/dex/trader-joe-v2-1-2/math/index.js +291 -0
- package/build/dex/trader-joe-v2-1-2/math/index.js.map +1 -0
- package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +60 -0
- package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +248 -0
- package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +1 -0
- package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +53 -0
- package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +307 -0
- package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +1 -0
- package/build/dex/trader-joe-v2-1-2/types.d.ts +82 -0
- package/build/dex/trader-joe-v2-1-2/types.js +9 -0
- package/build/dex/trader-joe-v2-1-2/types.js.map +1 -0
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +0 -4
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +1 -1
- package/build/dex/{lighter-v1 → trader-joe-v2_1}/config.d.ts +1 -1
- package/build/dex/trader-joe-v2_1/config.js +47 -0
- package/build/dex/trader-joe-v2_1/config.js.map +1 -0
- package/build/dex/trader-joe-v2_1/constants.d.ts +20 -0
- package/build/dex/trader-joe-v2_1/constants.js +22 -0
- package/build/dex/trader-joe-v2_1/constants.js.map +1 -0
- package/build/dex/trader-joe-v2_1/math/index.d.ts +37 -0
- package/build/dex/trader-joe-v2_1/math/index.js +291 -0
- package/build/dex/trader-joe-v2_1/math/index.js.map +1 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +384 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +1 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.d.ts +60 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js +247 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js.map +1 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2_1.d.ts +53 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js +307 -0
- package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js.map +1 -0
- package/build/dex/trader-joe-v2_1/types.d.ts +82 -0
- package/build/dex/trader-joe-v2_1/types.js +9 -0
- package/build/dex/trader-joe-v2_1/types.js.map +1 -0
- package/build/dex/uniswap-v2/uniswap-v2.js +0 -1
- package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3.js +0 -4
- package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
- package/build/dex/uniswap-v3.js +0 -4
- package/build/dex/uniswap-v3.js.map +1 -1
- package/build/dex/weth/weth.js +0 -1
- package/build/dex/weth/weth.js.map +1 -1
- package/build/dex/wombat/wombat-pool-poller.d.ts +22 -0
- package/build/dex/wombat/wombat-pool-poller.js +164 -0
- package/build/dex/wombat/wombat-pool-poller.js.map +1 -0
- package/build/dex/wombat/wombat.js +0 -4
- package/build/dex/wombat/wombat.js.map +1 -1
- package/build/dex/woo-fi-v2/woo-fi-v2.js +0 -4
- package/build/dex/woo-fi-v2/woo-fi-v2.js.map +1 -1
- package/build/dex/wsteth/wsteth.js +1 -8
- package/build/dex/wsteth/wsteth.js.map +1 -1
- package/build/dex/zerox/index.js +0 -1
- package/build/dex/zerox/index.js.map +1 -1
- package/build/dex-helper/Cache.d.ts +31 -0
- package/build/dex-helper/Cache.js +106 -0
- package/build/dex-helper/Cache.js.map +1 -0
- package/build/dex-helper/RedisBatcher.d.ts +20 -0
- package/build/dex-helper/RedisBatcher.js +75 -0
- package/build/dex-helper/RedisBatcher.js.map +1 -0
- package/build/dex-helper/RedisWrapper.d.ts +37 -0
- package/build/dex-helper/RedisWrapper.js +165 -0
- package/build/dex-helper/RedisWrapper.js.map +1 -0
- package/build/executor/Executor01BytecodeBuilder.js +1 -4
- package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
- package/build/executor/Executor02BytecodeBuilder.js +1 -5
- package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
- package/build/executor/ExecutorBytecodeBuilder.d.ts +1 -1
- package/build/executor/ExecutorBytecodeBuilder.js +4 -5
- package/build/executor/ExecutorBytecodeBuilder.js.map +1 -1
- package/build/executor/ExecutorDetector.d.ts +1 -1
- package/build/executor/ExecutorDetector.js.map +1 -1
- package/build/executor/constants.d.ts +1 -3
- package/build/executor/constants.js +2 -4
- package/build/executor/constants.js.map +1 -1
- package/build/types.d.ts +0 -1
- package/dex-template/__DexName__-e2e.test.ts.template +9 -2
- package/package.json +1 -1
- package/src/dex/aave-v1/aave-v1.ts +0 -1
- package/src/dex/aave-v2/aave-v2.ts +0 -1
- package/src/dex/aave-v3/aave-v3.ts +0 -1
- package/src/dex/algebra/algebra.ts +0 -9
- package/src/dex/angle-staked-stable/angle-staked-stable.ts +1 -2
- package/src/dex/bProtocol/bProtocol.ts +0 -8
- package/src/dex/balancer-v1/balancer-v1.ts +0 -9
- package/src/dex/balancer-v2/balancer-v2.ts +2 -3
- package/src/dex/bancor/bancor.ts +0 -8
- package/src/dex/camelot/camelot.ts +0 -1
- package/src/dex/compound/compound.ts +0 -1
- package/src/dex/curve-v1/curve-v1.ts +0 -1
- package/src/dex/curve-v1-factory/curve-v1-factory.ts +0 -1
- package/src/dex/curve-v2/curve-v2.ts +0 -1
- package/src/dex/dexalot/dexalot.ts +0 -1
- package/src/dex/dodo-v1/dodo-v1.ts +0 -9
- package/src/dex/dodo-v2.ts +0 -9
- package/src/dex/etherfi.ts +0 -2
- package/src/dex/generic-rfq/generic-rfq.ts +0 -1
- package/src/dex/gmx/gmx.ts +0 -8
- package/src/dex/hashflow/hashflow.ts +0 -1
- package/src/dex/jarvis-v6/jarvis-v6.ts +0 -1
- package/src/dex/jarvis.ts +0 -14
- package/src/dex/kyberdmm/kyberdmm.ts +0 -10
- package/src/dex/lido/lido.ts +0 -8
- package/src/dex/maker-psm/maker-psm.ts +0 -1
- package/src/dex/maverick-v1/maverick-v1.ts +0 -9
- package/src/dex/nerve/nerve.ts +0 -8
- package/src/dex/onebit/onebit.ts +0 -8
- package/src/dex/pancakeswap-v3/pancakeswap-v3.ts +0 -9
- package/src/dex/paraswap-limit-orders/paraswap-limit-orders.ts +0 -1
- package/src/dex/platypus/platypus.ts +3 -20
- package/src/dex/polygon-migrator/polygon-migrator.ts +0 -1
- package/src/dex/quick-perps/quick-perps.ts +1 -11
- package/src/dex/smoothy/smoothy.ts +0 -1
- package/src/dex/solidly/solidly.ts +0 -1
- package/src/dex/solidly-v3/solidly-v3.ts +1 -1
- package/src/dex/spark/spark.ts +0 -10
- package/src/dex/stable-pool/stable-pool.ts +0 -8
- package/src/dex/swaap-v1/swaap-v1.ts +0 -9
- package/src/dex/swaap-v2/swaap-v2.ts +0 -9
- package/src/dex/swell/swell.ts +0 -1
- package/src/dex/synthetix/synthetix.ts +0 -11
- package/src/dex/trader-joe-v2.1/trader-joe-v2.1.ts +0 -9
- package/src/dex/uniswap-v2/uniswap-v2.ts +0 -1
- package/src/dex/uniswap-v3/uniswap-v3.ts +0 -9
- package/src/dex/uniswap-v3.ts +0 -9
- package/src/dex/weth/weth.ts +0 -1
- package/src/dex/wombat/wombat.ts +0 -9
- package/src/dex/woo-fi-v2/woo-fi-v2.ts +0 -5
- package/src/dex/wsteth/wsteth.ts +4 -13
- package/src/dex/zerox/index.ts +0 -1
- package/src/executor/Executor01BytecodeBuilder.ts +1 -8
- package/src/executor/Executor02BytecodeBuilder.ts +0 -13
- package/src/executor/ExecutorBytecodeBuilder.ts +1 -6
- package/src/executor/ExecutorDetector.ts +2 -3
- package/src/executor/constants.ts +1 -4
- package/src/executor/executor01-bytecode-builder-e2e.test.ts +0 -39
- package/src/types.ts +0 -1
- package/tests/constants-e2e.ts +1 -6
- package/.idea/aws.xml +0 -17
- package/.idea/codeStyles/Project.xml +0 -19
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/paraswap-dex-lib.iml +0 -9
- package/.idea/prettier.xml +0 -7
- package/.idea/vcs.xml +0 -6
- package/build/abi/AugustusV6.abi.json +0 -395
- package/build/abi/algebra/AlgebraPool.abi.json +0 -727
- package/build/abi/curve-v1/StableSwapFRXETH.json +0 -889
- package/build/abi/curve-v1/StableSwapWBETH.json +0 -1223
- package/build/abi/sushiswap-v3/QuoterV2.json +0 -267
- package/build/abi/sushiswap-v3/RouterProcessor3.json +0 -289
- package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +0 -193
- package/build/abi/uniswap-v3/pancakeswap-v3/PancakeswapV3QuoterV2.abi.json +0 -285
- package/build/abi/uniswap-v3/pancakeswap-v3/PancakeswapV3Router.abi.json +0 -583
- package/build/abi/wBETH.json +0 -1527
- package/build/abi/woo-fi/WooFeeManager.abi.json +0 -318
- package/build/abi/woo-fi/WooPP.abi.json +0 -548
- package/build/abi/woo-fi/Wooracle.abi.json +0 -260
- package/build/dex/aave-v3/tokens/arbitrum.json +0 -50
- package/build/dex/aave-v3/tokens/avalanche.json +0 -74
- package/build/dex/aave-v3/tokens/fantom.json +0 -62
- package/build/dex/aave-v3/tokens/optimism.json +0 -50
- package/build/dex/aave-v3/tokens/polygon.json +0 -116
- package/build/dex/algebra/algebra-pool.d.ts +0 -114
- package/build/dex/algebra/algebra-pool.js +0 -448
- package/build/dex/algebra/algebra-pool.js.map +0 -1
- package/build/dex/balancer-v2/Gyro3Pool.d.ts +0 -43
- package/build/dex/balancer-v2/Gyro3Pool.js +0 -160
- package/build/dex/balancer-v2/Gyro3Pool.js.map +0 -1
- package/build/dex/balancer-v2/LinearMath.d.ts +0 -88
- package/build/dex/balancer-v2/LinearMath.js +0 -285
- package/build/dex/balancer-v2/LinearMath.js.map +0 -1
- package/build/dex/balancer-v2/LinearPool.d.ts +0 -81
- package/build/dex/balancer-v2/LinearPool.js +0 -444
- package/build/dex/balancer-v2/LinearPool.js.map +0 -1
- package/build/dex/balancer-v2/PhantomStablePool.d.ts +0 -90
- package/build/dex/balancer-v2/PhantomStablePool.js +0 -418
- package/build/dex/balancer-v2/PhantomStablePool.js.map +0 -1
- package/build/dex/balancer-v2/StableMath.d.ts +0 -9
- package/build/dex/balancer-v2/StableMath.js +0 -272
- package/build/dex/balancer-v2/StableMath.js.map +0 -1
- package/build/dex/balancer-v2/balancer-v2-pool.d.ts +0 -140
- package/build/dex/balancer-v2/balancer-v2-pool.js +0 -647
- package/build/dex/balancer-v2/balancer-v2-pool.js.map +0 -1
- package/build/dex/curve-v1/pools/frxETHpool.d.ts +0 -7
- package/build/dex/curve-v1/pools/frxETHpool.js +0 -27
- package/build/dex/curve-v1/pools/frxETHpool.js.map +0 -1
- package/build/dex/curve-v1/pools/wbETHpool.d.ts +0 -29
- package/build/dex/curve-v1/pools/wbETHpool.js +0 -408
- package/build/dex/curve-v1/pools/wbETHpool.js.map +0 -1
- package/build/dex/integral/config.js +0 -18
- package/build/dex/integral/config.js.map +0 -1
- package/build/dex/integral/integral-pool.js +0 -67
- package/build/dex/integral/integral-pool.js.map +0 -1
- package/build/dex/integral/integral.d.ts +0 -48
- package/build/dex/integral/integral.js +0 -402
- package/build/dex/integral/integral.js.map +0 -1
- package/build/dex/integral/types.d.ts +0 -25
- package/build/dex/integral/types.js +0 -9
- package/build/dex/integral/types.js.map +0 -1
- package/build/dex/lighter-v1/abi/factory.json +0 -291
- package/build/dex/lighter-v1/abi/order_book.json +0 -594
- package/build/dex/lighter-v1/abi/order_book_helper.json +0 -176
- package/build/dex/lighter-v1/abi/router.json +0 -488
- package/build/dex/lighter-v1/config.js +0 -17
- package/build/dex/lighter-v1/config.js.map +0 -1
- package/build/dex/lighter-v1/constants.d.ts +0 -2
- package/build/dex/lighter-v1/constants.js +0 -13
- package/build/dex/lighter-v1/constants.js.map +0 -1
- package/build/dex/lighter-v1/lighter-v1-pool.d.ts +0 -57
- package/build/dex/lighter-v1/lighter-v1-pool.js +0 -310
- package/build/dex/lighter-v1/lighter-v1-pool.js.map +0 -1
- package/build/dex/lighter-v1/lighter-v1.js +0 -331
- package/build/dex/lighter-v1/lighter-v1.js.map +0 -1
- package/build/dex/lighter-v1/types.d.ts +0 -40
- package/build/dex/lighter-v1/types.js +0 -3
- package/build/dex/lighter-v1/types.js.map +0 -1
- package/build/dex/pancakeswap-v3/types.d.ts +0 -14
- package/build/dex/pancakeswap-v3/types.js +0 -3
- package/build/dex/pancakeswap-v3/types.js.map +0 -1
- package/build/dex/quickswap/camelot-v3.d.ts +0 -6
- package/build/dex/quickswap/camelot-v3.js +0 -19
- package/build/dex/quickswap/camelot-v3.js.map +0 -1
- package/build/dex/quickswap/zyberswap-v3.d.ts +0 -6
- package/build/dex/quickswap/zyberswap-v3.js +0 -19
- package/build/dex/quickswap/zyberswap-v3.js.map +0 -1
- package/build/dex/quickswap-v3.d.ts +0 -21
- package/build/dex/quickswap-v3.js +0 -40
- package/build/dex/quickswap-v3.js.map +0 -1
- package/build/dex/ramses-v2/config.js +0 -28
- package/build/dex/ramses-v2/config.js.map +0 -1
- package/build/dex/ramses-v2/constants.d.ts +0 -28
- package/build/dex/ramses-v2/constants.js +0 -35
- package/build/dex/ramses-v2/constants.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/BitMath.d.ts +0 -4
- package/build/dex/ramses-v2/contract-math/BitMath.js +0 -93
- package/build/dex/ramses-v2/contract-math/BitMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/FixedPoint128.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/FixedPoint128.js +0 -8
- package/build/dex/ramses-v2/contract-math/FixedPoint128.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/FixedPoint96.d.ts +0 -4
- package/build/dex/ramses-v2/contract-math/FixedPoint96.js +0 -9
- package/build/dex/ramses-v2/contract-math/FixedPoint96.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/FullMath.d.ts +0 -4
- package/build/dex/ramses-v2/contract-math/FullMath.js +0 -19
- package/build/dex/ramses-v2/contract-math/FullMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/LiquidityMath.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/LiquidityMath.js +0 -22
- package/build/dex/ramses-v2/contract-math/LiquidityMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/Oracle.d.ts +0 -10
- package/build/dex/ramses-v2/contract-math/Oracle.js +0 -133
- package/build/dex/ramses-v2/contract-math/Oracle.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/SqrtPriceMath.d.ts +0 -10
- package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js +0 -91
- package/build/dex/ramses-v2/contract-math/SqrtPriceMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/SwapMath.d.ts +0 -8
- package/build/dex/ramses-v2/contract-math/SwapMath.js +0 -70
- package/build/dex/ramses-v2/contract-math/SwapMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/Tick.d.ts +0 -7
- package/build/dex/ramses-v2/contract-math/Tick.js +0 -45
- package/build/dex/ramses-v2/contract-math/Tick.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/TickBitMap.d.ts +0 -8
- package/build/dex/ramses-v2/contract-math/TickBitMap.js +0 -87
- package/build/dex/ramses-v2/contract-math/TickBitMap.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/TickMath.d.ts +0 -8
- package/build/dex/ramses-v2/contract-math/TickMath.js +0 -162
- package/build/dex/ramses-v2/contract-math/TickMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/UnsafeMath.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/UnsafeMath.js +0 -10
- package/build/dex/ramses-v2/contract-math/UnsafeMath.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/uniswap-v3-math.d.ts +0 -18
- package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js +0 -392
- package/build/dex/ramses-v2/contract-math/uniswap-v3-math.js.map +0 -1
- package/build/dex/ramses-v2/contract-math/utils.d.ts +0 -3
- package/build/dex/ramses-v2/contract-math/utils.js +0 -16
- package/build/dex/ramses-v2/contract-math/utils.js.map +0 -1
- package/build/dex/ramses-v2/ramses-v2-pool.d.ts +0 -42
- package/build/dex/ramses-v2/ramses-v2-pool.js +0 -307
- package/build/dex/ramses-v2/ramses-v2-pool.js.map +0 -1
- package/build/dex/ramses-v2/ramses-v2.d.ts +0 -61
- package/build/dex/ramses-v2/ramses-v2.js +0 -690
- package/build/dex/ramses-v2/ramses-v2.js.map +0 -1
- package/build/dex/ramses-v2/types.d.ts +0 -154
- package/build/dex/ramses-v2/types.js +0 -9
- package/build/dex/ramses-v2/types.js.map +0 -1
- package/build/dex/ramses-v2/utils.d.ts +0 -6
- package/build/dex/ramses-v2/utils.js +0 -71
- package/build/dex/ramses-v2/utils.js.map +0 -1
- package/build/dex/solidly/forks-override/fvm.d.ts +0 -20
- package/build/dex/solidly/forks-override/fvm.js +0 -42
- package/build/dex/solidly/forks-override/fvm.js.map +0 -1
- package/build/dex/sushiswap-v3/config.d.ts +0 -4
- package/build/dex/sushiswap-v3/config.js +0 -132
- package/build/dex/sushiswap-v3/config.js.map +0 -1
- package/build/dex/sushiswap-v3/constants.d.ts +0 -4
- package/build/dex/sushiswap-v3/constants.js +0 -32
- package/build/dex/sushiswap-v3/constants.js.map +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3-original.d.ts +0 -56
- package/build/dex/sushiswap-v3/sushiswap-v3-original.js +0 -598
- package/build/dex/sushiswap-v3/sushiswap-v3-original.js.map +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3-pool.d.ts +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3-pool.js +0 -6
- package/build/dex/sushiswap-v3/sushiswap-v3-pool.js.map +0 -1
- package/build/dex/sushiswap-v3/sushiswap-v3.d.ts +0 -21
- package/build/dex/sushiswap-v3/sushiswap-v3.js +0 -58
- package/build/dex/sushiswap-v3/sushiswap-v3.js.map +0 -1
- package/build/dex/sushiswap-v3/token.d.ts +0 -6
- package/build/dex/sushiswap-v3/token.js +0 -23
- package/build/dex/sushiswap-v3/token.js.map +0 -1
- package/build/dex/sushiswap-v3/types.d.ts +0 -15
- package/build/dex/sushiswap-v3/types.js +0 -18
- package/build/dex/sushiswap-v3/types.js.map +0 -1
- package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.d.ts +0 -12
- package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.js +0 -23
- package/build/dex/uniswap-v3/forks/pancakeswap-v3/pancakeswap-v3.js.map +0 -1
- package/build/dex/woo-fi/config.d.ts +0 -4
- package/build/dex/woo-fi/config.js +0 -141
- package/build/dex/woo-fi/config.js.map +0 -1
- package/build/dex/woo-fi/constants.d.ts +0 -5
- package/build/dex/woo-fi/constants.js +0 -20
- package/build/dex/woo-fi/constants.js.map +0 -1
- package/build/dex/woo-fi/types.d.ts +0 -48
- package/build/dex/woo-fi/types.js +0 -3
- package/build/dex/woo-fi/types.js.map +0 -1
- package/build/dex/woo-fi/woo-fi-decimal-math.d.ts +0 -14
- package/build/dex/woo-fi/woo-fi-decimal-math.js +0 -42
- package/build/dex/woo-fi/woo-fi-decimal-math.js.map +0 -1
- package/build/dex/woo-fi/woo-fi-math.d.ts +0 -31
- package/build/dex/woo-fi/woo-fi-math.js +0 -300
- package/build/dex/woo-fi/woo-fi-math.js.map +0 -1
- package/build/dex/woo-fi/woo-fi.d.ts +0 -65
- package/build/dex/woo-fi/woo-fi.js +0 -480
- package/build/dex/woo-fi/woo-fi.js.map +0 -1
- package/build/executor/IExecutorBytecodeBuilder.d.ts +0 -6
- package/build/executor/IExecutorBytecodeBuilder.js +0 -3
- package/build/executor/IExecutorBytecodeBuilder.js.map +0 -1
- package/build/executor/utils.d.ts +0 -2
- package/build/executor/utils.js +0 -41
- package/build/executor/utils.js.map +0 -1
- package/funding.json +0 -5
- 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
|
-
?
|
|
501
|
+
? Platypus.avaxPoolInterface.encodeFunctionData('swapFromETH', [
|
|
515
502
|
destToken,
|
|
516
503
|
1,
|
|
517
504
|
recipient,
|
|
518
505
|
getLocalDeadlineAsFriendlyPlaceholder(),
|
|
519
506
|
])
|
|
520
507
|
: isETHAddress(destToken)
|
|
521
|
-
?
|
|
508
|
+
? Platypus.avaxPoolInterface.encodeFunctionData('swapToETH', [
|
|
522
509
|
srcToken,
|
|
523
510
|
srcAmount,
|
|
524
511
|
1,
|
|
525
512
|
recipient,
|
|
526
513
|
getLocalDeadlineAsFriendlyPlaceholder(),
|
|
527
514
|
])
|
|
528
|
-
:
|
|
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
|
|
|
@@ -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
|
|
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
|
|
|
@@ -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
|
|
package/src/dex/spark/spark.ts
CHANGED
|
@@ -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
|
|
package/src/dex/swell/swell.ts
CHANGED
|
@@ -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
|
}
|
|
@@ -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
|
|
package/src/dex/uniswap-v3.ts
CHANGED
|
@@ -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
|
}
|
package/src/dex/weth/weth.ts
CHANGED
package/src/dex/wombat/wombat.ts
CHANGED
|
@@ -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
|
|
package/src/dex/wsteth/wsteth.ts
CHANGED
|
@@ -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
|
|
257
|
-
srcToken.toLowerCase() === this.config.stETHAddress ? 'wrap' : 'unwrap'
|
|
258
|
-
|
|
259
|
-
|
|
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
|
|
package/src/dex/zerox/index.ts
CHANGED
|
@@ -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
|
|
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(
|
|
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
|
|
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
|
-
|
|
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 =
|
|
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 & {
|
package/tests/constants-e2e.ts
CHANGED
|
@@ -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: '
|
|
1544
|
+
wstETH: '0x916792f7734089470de27297903bed8a4630b26d',
|
|
1550
1545
|
EURA: '0x6dd7b830896b56812aa667bdd14b71c8b3252f8e',
|
|
1551
1546
|
stEUR: '0xE588611e7A2392507879E3be80531654b85C16aA',
|
|
1552
1547
|
USDA: '0xa86ff337db9107b54862d30d1a598f8be847b05e',
|