@paraswap/dex-lib 3.11.12-cables.1 → 4.0.1-cables.0
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/.github/workflows/ci.yaml +1 -1
- package/build/abi/balancer-v3/batch-router.json +989 -0
- package/build/abi/balancer-v3/router.json +1792 -0
- package/build/abi/balancer-v3/vault-extension.json +2834 -0
- package/build/abi/permit2.json +581 -0
- package/build/composed-event-subscriber.js +10 -2
- package/build/composed-event-subscriber.js.map +1 -1
- package/build/config.js +3 -0
- package/build/config.js.map +1 -1
- package/build/dex/aave-gsm/aave-gsm-pool.js +10 -1
- package/build/dex/aave-gsm/aave-gsm-pool.js.map +1 -1
- package/build/dex/aave-gsm/aave-gsm.js +15 -9
- package/build/dex/aave-gsm/aave-gsm.js.map +1 -1
- package/build/dex/aave-v2/aave-v2.js +8 -3
- package/build/dex/aave-v2/aave-v2.js.map +1 -1
- package/build/dex/aave-v3/aave-v3.js +10 -3
- package/build/dex/aave-v3/aave-v3.js.map +1 -1
- package/build/dex/aave-v3-stata/aave-v3-stata.js +12 -6
- package/build/dex/aave-v3-stata/aave-v3-stata.js.map +1 -1
- package/build/dex/algebra/algebra-factory.js +6 -2
- package/build/dex/algebra/algebra-factory.js.map +1 -1
- package/build/dex/algebra/algebra-pool-v1_1.js +20 -5
- package/build/dex/algebra/algebra-pool-v1_1.js.map +1 -1
- package/build/dex/algebra/algebra-pool-v1_9.js +15 -4
- package/build/dex/algebra/algebra-pool-v1_9.js.map +1 -1
- package/build/dex/algebra/algebra-pool-v1_9_bidirectional_fee.js +6 -0
- package/build/dex/algebra/algebra-pool-v1_9_bidirectional_fee.js.map +1 -1
- package/build/dex/algebra/algebra.js +47 -34
- package/build/dex/algebra/algebra.js.map +1 -1
- package/build/dex/algebra/lib/AlgebraMath.js.map +1 -1
- package/build/dex/algebra/lib/Constants.js +3 -3
- package/build/dex/algebra/lib/Constants.js.map +1 -1
- package/build/dex/angle-staked-stable/angle-staked-stable-pool.js +13 -6
- package/build/dex/angle-staked-stable/angle-staked-stable-pool.js.map +1 -1
- package/build/dex/angle-staked-stable/angle-staked-stable.js +12 -6
- package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
- package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +1 -1
- package/build/dex/angle-transmuter/angle-transmuter-pool.js +7 -0
- package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +1 -1
- package/build/dex/angle-transmuter/angle-transmuter.js +16 -9
- package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -1
- package/build/dex/angle-transmuter/backedOracle.js +4 -2
- package/build/dex/angle-transmuter/backedOracle.js.map +1 -1
- package/build/dex/angle-transmuter/morphoOracle.js +9 -3
- package/build/dex/angle-transmuter/morphoOracle.js.map +1 -1
- package/build/dex/angle-transmuter/morphoVault.js +2 -1
- package/build/dex/angle-transmuter/morphoVault.js.map +1 -1
- package/build/dex/angle-transmuter/pyth.js +4 -2
- package/build/dex/angle-transmuter/pyth.js.map +1 -1
- package/build/dex/angle-transmuter/redstone.js +3 -1
- package/build/dex/angle-transmuter/redstone.js.map +1 -1
- package/build/dex/angle-transmuter/transmuter.js +6 -1
- package/build/dex/angle-transmuter/transmuter.js.map +1 -1
- package/build/dex/augustus-approvals.js +7 -0
- package/build/dex/augustus-approvals.js.map +1 -1
- package/build/dex/augustus-rfq.js +3 -2
- package/build/dex/augustus-rfq.js.map +1 -1
- package/build/dex/balancer-v1/balancer-v1-pool.js +9 -2
- package/build/dex/balancer-v1/balancer-v1-pool.js.map +1 -1
- package/build/dex/balancer-v1/balancer-v1.js +15 -7
- package/build/dex/balancer-v1/balancer-v1.js.map +1 -1
- package/build/dex/balancer-v2/balancer-v2-math.js +46 -46
- package/build/dex/balancer-v2/balancer-v2-math.js.map +1 -1
- package/build/dex/balancer-v2/balancer-v2.d.ts +1 -1
- package/build/dex/balancer-v2/balancer-v2.js +51 -34
- package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
- package/build/dex/balancer-v2/constants.js +2 -2
- package/build/dex/balancer-v2/constants.js.map +1 -1
- package/build/dex/balancer-v2/pools/gyro/Gyro3Pool.js +5 -3
- package/build/dex/balancer-v2/pools/gyro/Gyro3Pool.js.map +1 -1
- package/build/dex/balancer-v2/pools/gyro/GyroEPool.js +3 -1
- package/build/dex/balancer-v2/pools/gyro/GyroEPool.js.map +1 -1
- package/build/dex/balancer-v2/pools/linear/LinearPool.js +8 -5
- package/build/dex/balancer-v2/pools/linear/LinearPool.js.map +1 -1
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js +9 -5
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js.map +1 -1
- package/build/dex/balancer-v2/pools/stable/StableMath.js +1 -1
- package/build/dex/balancer-v2/pools/stable/StableMath.js.map +1 -1
- package/build/dex/balancer-v2/pools/stable/StablePool.js +4 -0
- package/build/dex/balancer-v2/pools/stable/StablePool.js.map +1 -1
- package/build/dex/balancer-v2/pools/weighted/WeightedMath.js +2 -2
- package/build/dex/balancer-v2/pools/weighted/WeightedMath.js.map +1 -1
- package/build/dex/balancer-v2/pools/weighted/WeightedPool.js +3 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedPool.js.map +1 -1
- package/build/dex/balancer-v3/balancer-v3-pool.d.ts +80 -0
- package/build/dex/balancer-v3/balancer-v3-pool.js +461 -0
- package/build/dex/balancer-v3/balancer-v3-pool.js.map +1 -0
- package/build/dex/balancer-v3/balancer-v3.d.ts +57 -0
- package/build/dex/balancer-v3/balancer-v3.js +394 -0
- package/build/dex/balancer-v3/balancer-v3.js.map +1 -0
- package/build/dex/balancer-v3/config.d.ts +9 -0
- package/build/dex/balancer-v3/config.js +41 -0
- package/build/dex/balancer-v3/config.js.map +1 -0
- package/build/dex/balancer-v3/getGasCost.d.ts +2 -0
- package/build/dex/balancer-v3/getGasCost.js +41 -0
- package/build/dex/balancer-v3/getGasCost.js.map +1 -0
- package/build/dex/balancer-v3/getOnChainState.d.ts +10 -0
- package/build/dex/balancer-v3/getOnChainState.js +164 -0
- package/build/dex/balancer-v3/getOnChainState.js.map +1 -0
- package/build/dex/balancer-v3/getPoolsApi.d.ts +2 -0
- package/build/dex/balancer-v3/getPoolsApi.js +85 -0
- package/build/dex/balancer-v3/getPoolsApi.js.map +1 -0
- package/build/dex/balancer-v3/getTopPoolsApi.d.ts +17 -0
- package/build/dex/balancer-v3/getTopPoolsApi.js +66 -0
- package/build/dex/balancer-v3/getTopPoolsApi.js.map +1 -0
- package/build/dex/balancer-v3/optimizer.d.ts +2 -0
- package/build/dex/balancer-v3/optimizer.js +48 -0
- package/build/dex/balancer-v3/optimizer.js.map +1 -0
- package/build/dex/balancer-v3/stablePool.d.ts +7 -0
- package/build/dex/balancer-v3/stablePool.js +73 -0
- package/build/dex/balancer-v3/stablePool.js.map +1 -0
- package/build/dex/balancer-v3/types.d.ts +62 -0
- package/build/dex/balancer-v3/types.js +3 -0
- package/build/dex/balancer-v3/types.js.map +1 -0
- package/build/dex/balancer-v3/weightedPool.d.ts +1 -0
- package/build/dex/balancer-v3/weightedPool.js +6 -0
- package/build/dex/balancer-v3/weightedPool.js.map +1 -0
- package/build/dex/bancor/bancor.js +2 -1
- package/build/dex/bancor/bancor.js.map +1 -1
- package/build/dex/bebop/bebop.js +17 -6
- package/build/dex/bebop/bebop.js.map +1 -1
- package/build/dex/bebop/constants.js +1 -1
- package/build/dex/bebop/constants.js.map +1 -1
- package/build/dex/bebop/rate-fetcher.js +11 -0
- package/build/dex/bebop/rate-fetcher.js.map +1 -1
- package/build/dex/bebop/types.js +1 -4
- package/build/dex/bebop/types.js.map +1 -1
- package/build/dex/cables/cables.js +22 -67
- package/build/dex/cables/cables.js.map +1 -1
- package/build/dex/cables/constants.js +1 -1
- package/build/dex/cables/constants.js.map +1 -1
- package/build/dex/cables/rate-fetcher.js +24 -7
- package/build/dex/cables/rate-fetcher.js.map +1 -1
- package/build/dex/cables/types.js +1 -4
- package/build/dex/cables/types.js.map +1 -1
- package/build/dex/camelot/camelot.js +47 -26
- package/build/dex/camelot/camelot.js.map +1 -1
- package/build/dex/compound/compound.js +2 -1
- package/build/dex/compound/compound.js.map +1 -1
- package/build/dex/concentrator-arusd/concentrator-arusd-event.js +4 -1
- package/build/dex/concentrator-arusd/concentrator-arusd-event.js.map +1 -1
- package/build/dex/concentrator-arusd/concentrator-arusd.js +13 -5
- package/build/dex/concentrator-arusd/concentrator-arusd.js.map +1 -1
- package/build/dex/curve-v1/curve-v1.js +19 -9
- package/build/dex/curve-v1/curve-v1.js.map +1 -1
- package/build/dex/curve-v1/forks/curve-forks/curve-forks.js +2 -1
- package/build/dex/curve-v1/forks/curve-forks/curve-forks.js.map +1 -1
- package/build/dex/curve-v1/forks/swerve/swerve.js +1 -1
- package/build/dex/curve-v1/forks/swerve/swerve.js.map +1 -1
- package/build/dex/curve-v1/pools/3pool.js +5 -0
- package/build/dex/curve-v1/pools/3pool.js.map +1 -1
- package/build/dex/curve-v1/pools/curve-metapool.js +33 -8
- package/build/dex/curve-v1/pools/curve-metapool.js.map +1 -1
- package/build/dex/curve-v1/pools/curve-pool.js +18 -5
- package/build/dex/curve-v1/pools/curve-pool.js.map +1 -1
- package/build/dex/curve-v1/pools/sETHpool.js +1 -0
- package/build/dex/curve-v1/pools/sETHpool.js.map +1 -1
- package/build/dex/curve-v1-factory/config.js +8 -8
- package/build/dex/curve-v1-factory/config.js.map +1 -1
- package/build/dex/curve-v1-factory/constants.js +1 -1
- package/build/dex/curve-v1-factory/constants.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-factory.js +29 -19
- package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js +28 -21
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
- package/build/dex/curve-v1-factory/price-handlers/price-handler.js +10 -6
- package/build/dex/curve-v1-factory/price-handlers/price-handler.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.js +16 -0
- package/build/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js +13 -0
- package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/pool-polling-base.js +31 -9
- package/build/dex/curve-v1-factory/state-polling-pools/pool-polling-base.js.map +1 -1
- package/build/dex/curve-v1-stable-ng/curve-v1-stable-ng.js +12 -6
- package/build/dex/curve-v1-stable-ng/curve-v1-stable-ng.js.map +1 -1
- package/build/dex/curve-v2/curve-v2.js +9 -5
- package/build/dex/curve-v2/curve-v2.js.map +1 -1
- package/build/dex/dexalot/constants.js +1 -1
- package/build/dex/dexalot/constants.js.map +1 -1
- package/build/dex/dexalot/dexalot.js +20 -6
- package/build/dex/dexalot/dexalot.js.map +1 -1
- package/build/dex/dexalot/rate-fetcher.js +16 -0
- package/build/dex/dexalot/rate-fetcher.js.map +1 -1
- package/build/dex/dodo-v1/dodo-v1.js +2 -1
- package/build/dex/dodo-v1/dodo-v1.js.map +1 -1
- package/build/dex/dodo-v2.js +3 -2
- package/build/dex/dodo-v2.js.map +1 -1
- package/build/dex/etherfi.js +9 -4
- package/build/dex/etherfi.js.map +1 -1
- package/build/dex/fluid-dex/config.js +1 -1
- package/build/dex/fluid-dex/config.js.map +1 -1
- package/build/dex/fluid-dex/fluid-dex-factory.js +19 -12
- package/build/dex/fluid-dex/fluid-dex-factory.js.map +1 -1
- package/build/dex/fluid-dex/fluid-dex-liquidity-proxy.js +10 -3
- package/build/dex/fluid-dex/fluid-dex-liquidity-proxy.js.map +1 -1
- package/build/dex/fluid-dex/fluid-dex.js +22 -15
- package/build/dex/fluid-dex/fluid-dex.js.map +1 -1
- package/build/dex/fx-protocol-rusd/fx-protocol-rusd-event.js +5 -0
- package/build/dex/fx-protocol-rusd/fx-protocol-rusd-event.js.map +1 -1
- package/build/dex/fx-protocol-rusd/fx-protocol-rusd.js +13 -4
- package/build/dex/fx-protocol-rusd/fx-protocol-rusd.js.map +1 -1
- package/build/dex/generic-rfq/generic-rfq.js +12 -8
- package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
- package/build/dex/generic-rfq/rate-fetcher.js +15 -3
- package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
- package/build/dex/gmx/fast-price-feed.js +11 -3
- package/build/dex/gmx/fast-price-feed.js.map +1 -1
- package/build/dex/gmx/gmx.js +15 -10
- package/build/dex/gmx/gmx.js.map +1 -1
- package/build/dex/gmx/pool.js +7 -3
- package/build/dex/gmx/pool.js.map +1 -1
- package/build/dex/gmx/usdg.js +2 -1
- package/build/dex/gmx/usdg.js.map +1 -1
- package/build/dex/gmx/vault-price-feed.js +16 -4
- package/build/dex/gmx/vault-price-feed.js.map +1 -1
- package/build/dex/gmx/vault-utils.js +1 -0
- package/build/dex/gmx/vault-utils.js.map +1 -1
- package/build/dex/gmx/vault.js +17 -1
- package/build/dex/gmx/vault.js.map +1 -1
- package/build/dex/hashflow/constants.js +1 -1
- package/build/dex/hashflow/constants.js.map +1 -1
- package/build/dex/hashflow/hashflow.js +35 -20
- package/build/dex/hashflow/hashflow.js.map +1 -1
- package/build/dex/hashflow/rate-fetcher.js +10 -0
- package/build/dex/hashflow/rate-fetcher.js.map +1 -1
- package/build/dex/hashflow/types.js +2 -4
- package/build/dex/hashflow/types.js.map +1 -1
- package/build/dex/idle-dao/idle-dao.js +14 -5
- package/build/dex/idle-dao/idle-dao.js.map +1 -1
- package/build/dex/index.js +19 -12
- package/build/dex/index.js.map +1 -1
- package/build/dex/infusion/infusion.js +9 -5
- package/build/dex/infusion/infusion.js.map +1 -1
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js +2 -1
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js.map +1 -1
- package/build/dex/jarvis-v6/jarvis-v6-events.js +6 -0
- package/build/dex/jarvis-v6/jarvis-v6-events.js.map +1 -1
- package/build/dex/jarvis-v6/jarvis-v6.js +13 -5
- package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -1
- package/build/dex/jarvis-v6/syntheteumPool-event.js +2 -0
- package/build/dex/jarvis-v6/syntheteumPool-event.js.map +1 -1
- package/build/dex/kyberdmm/kyberdmm.js +12 -5
- package/build/dex/kyberdmm/kyberdmm.js.map +1 -1
- package/build/dex/kyberdmm/pool.js +4 -1
- package/build/dex/kyberdmm/pool.js.map +1 -1
- package/build/dex/lido/lido.js +6 -3
- package/build/dex/lido/lido.js.map +1 -1
- package/build/dex/limit-order-exchange.js +1 -0
- package/build/dex/limit-order-exchange.js.map +1 -1
- package/build/dex/lite-psm/lite-psm-event-pool.js +10 -3
- package/build/dex/lite-psm/lite-psm-event-pool.js.map +1 -1
- package/build/dex/lite-psm/lite-psm.js +13 -4
- package/build/dex/lite-psm/lite-psm.js.map +1 -1
- package/build/dex/maker-psm/maker-psm.js +21 -7
- package/build/dex/maker-psm/maker-psm.js.map +1 -1
- package/build/dex/maverick-v1/config.js +3 -3
- package/build/dex/maverick-v1/config.js.map +1 -1
- package/build/dex/maverick-v1/maverick-math/maverick-basic-math.js +2 -2
- package/build/dex/maverick-v1/maverick-math/maverick-basic-math.js.map +1 -1
- package/build/dex/maverick-v1/maverick-math/maverick-pool-math.js +5 -0
- package/build/dex/maverick-v1/maverick-math/maverick-pool-math.js.map +1 -1
- package/build/dex/maverick-v1/maverick-v1-pool.js +17 -1
- package/build/dex/maverick-v1/maverick-v1-pool.js.map +1 -1
- package/build/dex/maverick-v1/maverick-v1.js +13 -5
- package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
- package/build/dex/maverick-v2/config.js +2 -2
- package/build/dex/maverick-v2/config.js.map +1 -1
- package/build/dex/maverick-v2/maverick-math/maverick-basic-math.js +1 -1
- package/build/dex/maverick-v2/maverick-math/maverick-basic-math.js.map +1 -1
- package/build/dex/maverick-v2/maverick-math/maverick-pool-math.js +12 -0
- package/build/dex/maverick-v2/maverick-math/maverick-pool-math.js.map +1 -1
- package/build/dex/maverick-v2/maverick-v2-pool.js +20 -1
- package/build/dex/maverick-v2/maverick-v2-pool.js.map +1 -1
- package/build/dex/maverick-v2/maverick-v2.js +14 -6
- package/build/dex/maverick-v2/maverick-v2.js.map +1 -1
- package/build/dex/nerve/nerve-math.js +6 -4
- package/build/dex/nerve/nerve-math.js.map +1 -1
- package/build/dex/nerve/nerve-pool.js +11 -1
- package/build/dex/nerve/nerve-pool.js.map +1 -1
- package/build/dex/nerve/nerve.js +14 -8
- package/build/dex/nerve/nerve.js.map +1 -1
- package/build/dex/oswap/config.js +1 -1
- package/build/dex/oswap/config.js.map +1 -1
- package/build/dex/oswap/oswap-pool.js +9 -1
- package/build/dex/oswap/oswap-pool.js.map +1 -1
- package/build/dex/oswap/oswap.js +13 -6
- package/build/dex/oswap/oswap.js.map +1 -1
- package/build/dex/pancakeswap-v3/constants.js +3 -3
- package/build/dex/pancakeswap-v3/constants.js.map +1 -1
- package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.js +1 -1
- package/build/dex/pancakeswap-v3/contract-math/FixedPoint128.js.map +1 -1
- package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.js +2 -2
- package/build/dex/pancakeswap-v3/contract-math/FixedPoint96.js.map +1 -1
- package/build/dex/pancakeswap-v3/contract-math/TickMath.js +4 -4
- package/build/dex/pancakeswap-v3/contract-math/TickMath.js.map +1 -1
- package/build/dex/pancakeswap-v3/pancakeswap-v3-factory.js +6 -2
- package/build/dex/pancakeswap-v3/pancakeswap-v3-factory.js.map +1 -1
- package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.js +17 -4
- package/build/dex/pancakeswap-v3/pancakeswap-v3-pool.js.map +1 -1
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js +43 -31
- package/build/dex/pancakeswap-v3/pancakeswap-v3.js.map +1 -1
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js +10 -4
- package/build/dex/paraswap-limit-orders/paraswap-limit-orders.js.map +1 -1
- package/build/dex/polygon-migrator/constants.js +1 -1
- package/build/dex/polygon-migrator/constants.js.map +1 -1
- package/build/dex/polygon-migrator/polygon-migrator.js +12 -3
- package/build/dex/polygon-migrator/polygon-migrator.js.map +1 -1
- package/build/dex/quick-perps/fast-price-feed.js +11 -3
- package/build/dex/quick-perps/fast-price-feed.js.map +1 -1
- package/build/dex/quick-perps/pool.js +7 -3
- package/build/dex/quick-perps/pool.js.map +1 -1
- package/build/dex/quick-perps/quick-perps.js +15 -10
- package/build/dex/quick-perps/quick-perps.js.map +1 -1
- package/build/dex/quick-perps/usdq.js +2 -1
- package/build/dex/quick-perps/usdq.js.map +1 -1
- package/build/dex/quick-perps/vault-price-feed.js +13 -4
- package/build/dex/quick-perps/vault-price-feed.js.map +1 -1
- package/build/dex/quick-perps/vault-utils.js +1 -0
- package/build/dex/quick-perps/vault-utils.js.map +1 -1
- package/build/dex/quick-perps/vault.js +17 -1
- package/build/dex/quick-perps/vault.js.map +1 -1
- package/build/dex/quickswap/quickswap-v3.js +1 -1
- package/build/dex/quickswap/quickswap-v3.js.map +1 -1
- package/build/dex/quickswap/thena-fusion.js +1 -1
- package/build/dex/quickswap/thena-fusion.js.map +1 -1
- package/build/dex/simple-exchange.js +14 -2
- package/build/dex/simple-exchange.js.map +1 -1
- package/build/dex/sky-converter/sky-converter.js +11 -4
- package/build/dex/sky-converter/sky-converter.js.map +1 -1
- package/build/dex/smoothy/smoothy.js +3 -2
- package/build/dex/smoothy/smoothy.js.map +1 -1
- package/build/dex/solidly/forks-override/aerodrome.js +3 -1
- package/build/dex/solidly/forks-override/aerodrome.js.map +1 -1
- package/build/dex/solidly/forks-override/chronos.js +3 -1
- package/build/dex/solidly/forks-override/chronos.js.map +1 -1
- package/build/dex/solidly/forks-override/equalizer.js +3 -1
- package/build/dex/solidly/forks-override/equalizer.js.map +1 -1
- package/build/dex/solidly/forks-override/pharaohV1.js +1 -1
- package/build/dex/solidly/forks-override/pharaohV1.js.map +1 -1
- package/build/dex/solidly/forks-override/ramses.js +3 -1
- package/build/dex/solidly/forks-override/ramses.js.map +1 -1
- package/build/dex/solidly/forks-override/spiritSwapV2.js +4 -2
- package/build/dex/solidly/forks-override/spiritSwapV2.js.map +1 -1
- package/build/dex/solidly/forks-override/thena.js +3 -1
- package/build/dex/solidly/forks-override/thena.js.map +1 -1
- package/build/dex/solidly/forks-override/usdfi.js +1 -1
- package/build/dex/solidly/forks-override/usdfi.js.map +1 -1
- package/build/dex/solidly/forks-override/velocimeter.js +3 -1
- package/build/dex/solidly/forks-override/velocimeter.js.map +1 -1
- package/build/dex/solidly/forks-override/velodrome.js +3 -1
- package/build/dex/solidly/forks-override/velodrome.js.map +1 -1
- package/build/dex/solidly/forks-override/velodromeV2.js +3 -1
- package/build/dex/solidly/forks-override/velodromeV2.js.map +1 -1
- package/build/dex/solidly/solidly-ethereum.js +4 -2
- package/build/dex/solidly/solidly-ethereum.js.map +1 -1
- package/build/dex/solidly/solidly.js +22 -18
- package/build/dex/solidly/solidly.js.map +1 -1
- package/build/dex/solidly-v3/constants.js +2 -2
- package/build/dex/solidly-v3/constants.js.map +1 -1
- package/build/dex/solidly-v3/contract-math/FixedPoint128.js +1 -1
- package/build/dex/solidly-v3/contract-math/FixedPoint128.js.map +1 -1
- package/build/dex/solidly-v3/contract-math/FixedPoint96.js +2 -2
- package/build/dex/solidly-v3/contract-math/FixedPoint96.js.map +1 -1
- package/build/dex/solidly-v3/contract-math/TickMath.js +4 -4
- package/build/dex/solidly-v3/contract-math/TickMath.js.map +1 -1
- package/build/dex/solidly-v3/solidly-v3-factory.js +6 -2
- package/build/dex/solidly-v3/solidly-v3-factory.js.map +1 -1
- package/build/dex/solidly-v3/solidly-v3-pool.js +18 -4
- package/build/dex/solidly-v3/solidly-v3-pool.js.map +1 -1
- package/build/dex/solidly-v3/solidly-v3.js +38 -27
- package/build/dex/solidly-v3/solidly-v3.js.map +1 -1
- package/build/dex/spark/constants.js +2 -2
- package/build/dex/spark/constants.js.map +1 -1
- package/build/dex/spark/spark-sdai-pool.js +6 -1
- package/build/dex/spark/spark-sdai-pool.js.map +1 -1
- package/build/dex/spark/spark.js +15 -3
- package/build/dex/spark/spark.js.map +1 -1
- package/build/dex/stable-pool/stable-pool.js +3 -2
- package/build/dex/stable-pool/stable-pool.js.map +1 -1
- package/build/dex/stader/stader-pool.js +6 -2
- package/build/dex/stader/stader-pool.js.map +1 -1
- package/build/dex/stader/stader.js +15 -5
- package/build/dex/stader/stader.js.map +1 -1
- package/build/dex/stkgho/stkgho-pool.js +8 -1
- package/build/dex/stkgho/stkgho-pool.js.map +1 -1
- package/build/dex/stkgho/stkgho.js +14 -8
- package/build/dex/stkgho/stkgho.js.map +1 -1
- package/build/dex/swaap-v2/constants.js +2 -2
- package/build/dex/swaap-v2/constants.js.map +1 -1
- package/build/dex/swaap-v2/rate-fetcher.js +9 -0
- package/build/dex/swaap-v2/rate-fetcher.js.map +1 -1
- package/build/dex/swaap-v2/swaap-v2.js +22 -13
- package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
- package/build/dex/swell/rsweth-pool.js +4 -1
- package/build/dex/swell/rsweth-pool.js.map +1 -1
- package/build/dex/swell/swell.js +16 -5
- package/build/dex/swell/swell.js.map +1 -1
- package/build/dex/swell/sweth-pool.js +4 -1
- package/build/dex/swell/sweth-pool.js.map +1 -1
- package/build/dex/synthetix/constants.js +2 -2
- package/build/dex/synthetix/constants.js.map +1 -1
- package/build/dex/synthetix/contract-math/TickMath.js +4 -4
- package/build/dex/synthetix/contract-math/TickMath.js.map +1 -1
- package/build/dex/synthetix/synthetix-state.js +10 -2
- package/build/dex/synthetix/synthetix-state.js.map +1 -1
- package/build/dex/synthetix/synthetix.d.ts +1 -1
- package/build/dex/synthetix/synthetix.js +13 -4
- package/build/dex/synthetix/synthetix.js.map +1 -1
- package/build/dex/trader-joe-v2.1/base.js +3 -0
- package/build/dex/trader-joe-v2.1/base.js.map +1 -1
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +2 -2
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +1 -1
- package/build/dex/trader-joe-v2.1/trader-joe-v2.2.js +2 -2
- package/build/dex/trader-joe-v2.1/trader-joe-v2.2.js.map +1 -1
- package/build/dex/uniswap-v2/biswap.js +4 -1
- package/build/dex/uniswap-v2/biswap.js.map +1 -1
- package/build/dex/uniswap-v2/dfyn.js +3 -1
- package/build/dex/uniswap-v2/dfyn.js.map +1 -1
- package/build/dex/uniswap-v2/excalibur.js +4 -1
- package/build/dex/uniswap-v2/excalibur.js.map +1 -1
- package/build/dex/uniswap-v2/mdex.js +4 -1
- package/build/dex/uniswap-v2/mdex.js.map +1 -1
- package/build/dex/uniswap-v2/nomiswap-v2.js +4 -1
- package/build/dex/uniswap-v2/nomiswap-v2.js.map +1 -1
- package/build/dex/uniswap-v2/uniswap-v2-factory.js +6 -2
- package/build/dex/uniswap-v2/uniswap-v2-factory.js.map +1 -1
- package/build/dex/uniswap-v2/uniswap-v2.js +36 -11
- package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
- package/build/dex/uniswap-v3/constants.js +3 -3
- package/build/dex/uniswap-v3/constants.js.map +1 -1
- package/build/dex/uniswap-v3/contract-math/FixedPoint128.js +1 -1
- package/build/dex/uniswap-v3/contract-math/FixedPoint128.js.map +1 -1
- package/build/dex/uniswap-v3/contract-math/FixedPoint96.js +2 -2
- package/build/dex/uniswap-v3/contract-math/FixedPoint96.js.map +1 -1
- package/build/dex/uniswap-v3/contract-math/TickMath.js +4 -4
- package/build/dex/uniswap-v3/contract-math/TickMath.js.map +1 -1
- package/build/dex/uniswap-v3/forks/ramses-v2/ramses-v2-pool.js +8 -1
- package/build/dex/uniswap-v3/forks/ramses-v2/ramses-v2-pool.js.map +1 -1
- package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-factory.js +1 -4
- package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-factory.js.map +1 -1
- package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.js +2 -5
- package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream-pool.js.map +1 -1
- package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.js +13 -6
- package/build/dex/uniswap-v3/forks/velodrome-slipstream/velodrome-slipstream.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3-factory.js +6 -2
- package/build/dex/uniswap-v3/uniswap-v3-factory.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3-pool.js +18 -4
- package/build/dex/uniswap-v3/uniswap-v3-pool.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3.js +32 -19
- package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
- package/build/dex/uniswap-v3.js +4 -2
- package/build/dex/uniswap-v3.js.map +1 -1
- package/build/dex/usual-bond/usual-bond.js +10 -4
- package/build/dex/usual-bond/usual-bond.js.map +1 -1
- package/build/dex/weth/weth.js +10 -3
- package/build/dex/weth/weth.js.map +1 -1
- package/build/dex/wombat/wombat-bmw.js +10 -4
- package/build/dex/wombat/wombat-bmw.js.map +1 -1
- package/build/dex/wombat/wombat-pool.js +21 -17
- package/build/dex/wombat/wombat-pool.js.map +1 -1
- package/build/dex/wombat/wombat-quoter.js +4 -0
- package/build/dex/wombat/wombat-quoter.js.map +1 -1
- package/build/dex/wombat/wombat.js +25 -16
- package/build/dex/wombat/wombat.js.map +1 -1
- package/build/dex/woo-fi-v2/constants.js +3 -3
- package/build/dex/woo-fi-v2/constants.js.map +1 -1
- package/build/dex/woo-fi-v2/woo-fi-v2-math.js +3 -1
- package/build/dex/woo-fi-v2/woo-fi-v2-math.js.map +1 -1
- package/build/dex/woo-fi-v2/woo-fi-v2-pool.js +2 -0
- package/build/dex/woo-fi-v2/woo-fi-v2-pool.js.map +1 -1
- package/build/dex/woo-fi-v2/woo-fi-v2.js +20 -6
- package/build/dex/woo-fi-v2/woo-fi-v2.js.map +1 -1
- package/build/dex/wsteth/wsteth.js +20 -14
- package/build/dex/wsteth/wsteth.js.map +1 -1
- package/build/dex/wusdm/wusdm-pool.js +6 -0
- package/build/dex/wusdm/wusdm-pool.js.map +1 -1
- package/build/dex/wusdm/wusdm.js +12 -4
- package/build/dex/wusdm/wusdm.js.map +1 -1
- package/build/dex-helper/dummy-dex-helper.js +17 -5
- package/build/dex-helper/dummy-dex-helper.js.map +1 -1
- package/build/dex-helper/dummy-limit-order-provider.js +3 -5
- package/build/dex-helper/dummy-limit-order-provider.js.map +1 -1
- package/build/executor/Executor01BytecodeBuilder.js +1 -4
- package/build/executor/Executor01BytecodeBuilder.js.map +1 -1
- package/build/executor/Executor02BytecodeBuilder.js +1 -4
- package/build/executor/Executor02BytecodeBuilder.js.map +1 -1
- package/build/executor/Executor03BytecodeBuilder.js +1 -4
- package/build/executor/Executor03BytecodeBuilder.js.map +1 -1
- package/build/executor/ExecutorBytecodeBuilder.js +3 -0
- package/build/executor/ExecutorBytecodeBuilder.js.map +1 -1
- package/build/executor/ExecutorDetector.js +19 -14
- package/build/executor/ExecutorDetector.js.map +1 -1
- package/build/executor/WETHBytecodeBuilder.js +1 -4
- package/build/executor/WETHBytecodeBuilder.js.map +1 -1
- package/build/generic-swap-transaction-builder.js +7 -0
- package/build/generic-swap-transaction-builder.js.map +1 -1
- package/build/implementations/local-paraswap-sdk.js +7 -0
- package/build/implementations/local-paraswap-sdk.js.map +1 -1
- package/build/lib/api3-feed.js +6 -4
- package/build/lib/api3-feed.js.map +1 -1
- package/build/lib/benqi/staked-avax.js +2 -1
- package/build/lib/benqi/staked-avax.js.map +1 -1
- package/build/lib/chainlink.js +4 -2
- package/build/lib/chainlink.js.map +1 -1
- package/build/lib/fetcher/fetcher.js +8 -3
- package/build/lib/fetcher/fetcher.js.map +1 -1
- package/build/lib/fetcher/wsFetcher.js +11 -4
- package/build/lib/fetcher/wsFetcher.js.map +1 -1
- package/build/lib/generics-events-subscribers/erc20-event-subscriber.js +4 -2
- package/build/lib/generics-events-subscribers/erc20-event-subscriber.js.map +1 -1
- package/build/lib/log-messages-suppressor.js +8 -5
- package/build/lib/log-messages-suppressor.js.map +1 -1
- package/build/lib/multi-wrapper.js +3 -0
- package/build/lib/multi-wrapper.js.map +1 -1
- package/build/lib/promise-scheduler.js +4 -1
- package/build/lib/promise-scheduler.js.map +1 -1
- package/build/lib/stateful-rpc-poller/state-polling-manager.js +19 -17
- package/build/lib/stateful-rpc-poller/state-polling-manager.js.map +1 -1
- package/build/lib/stateful-rpc-poller/stateful-rpc-poller.js +64 -43
- package/build/lib/stateful-rpc-poller/stateful-rpc-poller.js.map +1 -1
- package/build/lib/task-scheduler.js +7 -1
- package/build/lib/task-scheduler.js.map +1 -1
- package/build/lib/validators.js +2 -0
- package/build/lib/validators.js.map +1 -1
- package/build/pools-helper.js +2 -0
- package/build/pools-helper.js.map +1 -1
- package/build/pricing-helper.js +3 -0
- package/build/pricing-helper.js.map +1 -1
- package/build/router/buy.js +3 -1
- package/build/router/buy.js.map +1 -1
- package/build/router/directswap.js +5 -4
- package/build/router/directswap.js.map +1 -1
- package/build/router/index.js +11 -8
- package/build/router/index.js.map +1 -1
- package/build/router/megaswap.js +3 -1
- package/build/router/megaswap.js.map +1 -1
- package/build/router/multiswap.js +3 -1
- package/build/router/multiswap.js.map +1 -1
- package/build/router/payload-encoder.js +1 -0
- package/build/router/payload-encoder.js.map +1 -1
- package/build/router/simpleswap.js +7 -2
- package/build/router/simpleswap.js.map +1 -1
- package/build/router/simpleswapnft.js +1 -1
- package/build/router/simpleswapnft.js.map +1 -1
- package/build/stateful-event-subscriber.js +20 -13
- package/build/stateful-event-subscriber.js.map +1 -1
- package/build/transaction-builder.js +3 -0
- package/build/transaction-builder.js.map +1 -1
- package/package.json +7 -7
- package/src/dex/algebra/lib/AlgebraMath.ts +3 -3
- package/src/dex/angle-transmuter/angle-transmuter-pool.ts +1 -1
- package/src/dex/balancer-v2/balancer-v2.ts +1 -1
- package/src/dex/cables/cables.ts +7 -57
- package/src/dex/synthetix/synthetix.ts +1 -1
- package/tsconfig.json +2 -2
|
@@ -72,6 +72,35 @@ exports.DefaultCoinsABI = {
|
|
|
72
72
|
],
|
|
73
73
|
};
|
|
74
74
|
class CurveV1Factory extends simple_exchange_1.SimpleExchange {
|
|
75
|
+
network;
|
|
76
|
+
dexKey;
|
|
77
|
+
dexHelper;
|
|
78
|
+
adapters;
|
|
79
|
+
config;
|
|
80
|
+
coinsTypeTemplate;
|
|
81
|
+
hasConstantPriceLargeAmounts = false;
|
|
82
|
+
needWrapNative = (priceRoute, swap, se) => {
|
|
83
|
+
const swapSrc = swap.srcToken;
|
|
84
|
+
const swapDest = swap.destToken;
|
|
85
|
+
return this._needWrapNative(swapSrc, swapDest, se.data);
|
|
86
|
+
};
|
|
87
|
+
needWrapNativeForPricing = false;
|
|
88
|
+
isFeeOnTransferSupported = true;
|
|
89
|
+
isStatePollingDex = true;
|
|
90
|
+
factoryAddresses;
|
|
91
|
+
poolManager;
|
|
92
|
+
ifaces;
|
|
93
|
+
areFactoryPoolsFetched = false;
|
|
94
|
+
areCustomPoolsFetched = false;
|
|
95
|
+
SRC_TOKEN_DEX_TRANSFERS = 1;
|
|
96
|
+
DEST_TOKEN_DEX_TRANSFERS = 1;
|
|
97
|
+
directSwapIface = new abi_1.Interface(DirectSwap_json_1.default);
|
|
98
|
+
factoryImplementationsSupportBuySide = new Set([
|
|
99
|
+
types_1.FactoryImplementationNames.FACTORY_PLAIN_2_CRV_EMA,
|
|
100
|
+
types_1.FactoryImplementationNames.FACTORY_STABLE_NG,
|
|
101
|
+
]);
|
|
102
|
+
static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.CurveV1FactoryConfig);
|
|
103
|
+
logger;
|
|
75
104
|
constructor(network, dexKey, dexHelper, adapters = config_1.Adapters[network] || {}, config = config_1.CurveV1FactoryConfig[dexKey][network],
|
|
76
105
|
// This type is used to support different encoding for uint128 and uint256 args
|
|
77
106
|
coinsTypeTemplate = exports.DefaultCoinsABI) {
|
|
@@ -82,24 +111,6 @@ class CurveV1Factory extends simple_exchange_1.SimpleExchange {
|
|
|
82
111
|
this.adapters = adapters;
|
|
83
112
|
this.config = config;
|
|
84
113
|
this.coinsTypeTemplate = coinsTypeTemplate;
|
|
85
|
-
this.hasConstantPriceLargeAmounts = false;
|
|
86
|
-
this.needWrapNative = (priceRoute, swap, se) => {
|
|
87
|
-
const swapSrc = swap.srcToken;
|
|
88
|
-
const swapDest = swap.destToken;
|
|
89
|
-
return this._needWrapNative(swapSrc, swapDest, se.data);
|
|
90
|
-
};
|
|
91
|
-
this.needWrapNativeForPricing = false;
|
|
92
|
-
this.isFeeOnTransferSupported = true;
|
|
93
|
-
this.isStatePollingDex = true;
|
|
94
|
-
this.areFactoryPoolsFetched = false;
|
|
95
|
-
this.areCustomPoolsFetched = false;
|
|
96
|
-
this.SRC_TOKEN_DEX_TRANSFERS = 1;
|
|
97
|
-
this.DEST_TOKEN_DEX_TRANSFERS = 1;
|
|
98
|
-
this.directSwapIface = new abi_1.Interface(DirectSwap_json_1.default);
|
|
99
|
-
this.factoryImplementationsSupportBuySide = new Set([
|
|
100
|
-
types_1.FactoryImplementationNames.FACTORY_PLAIN_2_CRV_EMA,
|
|
101
|
-
types_1.FactoryImplementationNames.FACTORY_STABLE_NG,
|
|
102
|
-
]);
|
|
103
114
|
this.logger = dexHelper.getLogger(`${this.dexKey}-${this.network}`);
|
|
104
115
|
this.factoryAddresses =
|
|
105
116
|
this.config.factories?.map(e => e.address.toLowerCase()) || [];
|
|
@@ -870,5 +881,4 @@ class CurveV1Factory extends simple_exchange_1.SimpleExchange {
|
|
|
870
881
|
}
|
|
871
882
|
}
|
|
872
883
|
exports.CurveV1Factory = CurveV1Factory;
|
|
873
|
-
CurveV1Factory.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.CurveV1FactoryConfig);
|
|
874
884
|
//# sourceMappingURL=curve-v1-factory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve-v1-factory.js","sourceRoot":"","sources":["../../../src/dex/curve-v1-factory/curve-v1-factory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"curve-v1-factory.js","sourceRoot":"","sources":["../../../src/dex/curve-v1-factory/curve-v1-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,32 +16,39 @@ const ts_essentials_1 = require("ts-essentials");
|
|
|
16
16
|
* semi event based, but it may be extended in future when we make full transition from CurveV1
|
|
17
17
|
*/
|
|
18
18
|
class CurveV1FactoryPoolManager {
|
|
19
|
+
name;
|
|
20
|
+
logger;
|
|
21
|
+
dexHelper;
|
|
22
|
+
allPriceHandlers;
|
|
23
|
+
// This is needed because we initialize all factory pools + custom pools
|
|
24
|
+
// Custom pools are not fully supported. I need them only in meta pools as base pool
|
|
25
|
+
// to get poolState, but not for pricing requests.
|
|
26
|
+
// It appears from CurveV1 and CurveV1Factory duality
|
|
27
|
+
// Sometimes it happens that as customPool we have factory plain pool, in that case I use
|
|
28
|
+
// isUsedForPricing flag to identify if it must be used for pricing or not. If yes,
|
|
29
|
+
// it goes to statePollingPoolsFromId
|
|
30
|
+
poolsForOnlyState = {};
|
|
31
|
+
// poolsForOnly State and statePollingPoolsFromId must not have overlapping in pool
|
|
32
|
+
statePollingPoolsFromId = {};
|
|
33
|
+
// This is fast lookup table when you look for pair and searching for coins in all pools
|
|
34
|
+
// In fact it is skewed in favor of CRV, so we still end up with 100 pools for CRV token.
|
|
35
|
+
// It should bo considered for optimizing
|
|
36
|
+
coinAddressesToPoolIdentifiers = {};
|
|
37
|
+
allCurveLiquidityApiSlugs = new Set([
|
|
38
|
+
'/factory',
|
|
39
|
+
'/factory-crvusd',
|
|
40
|
+
'/factory-stable-ng',
|
|
41
|
+
]);
|
|
42
|
+
statePollingManager = polling_manager_1.StatePollingManager;
|
|
43
|
+
taskScheduler;
|
|
44
|
+
liquidityUpdatedAtMs = 0;
|
|
45
|
+
liquidityLastUpdateInfoKey;
|
|
46
|
+
liquidityCacheKey;
|
|
19
47
|
constructor(name, logger, dexHelper, allPriceHandlers, stateUpdatePeriodMs = constants_1.STATE_UPDATE_PERIOD_MS, stateUpdateRetryPeriodMs = constants_1.STATE_UPDATE_RETRY_PERIOD_MS) {
|
|
20
48
|
this.name = name;
|
|
21
49
|
this.logger = logger;
|
|
22
50
|
this.dexHelper = dexHelper;
|
|
23
51
|
this.allPriceHandlers = allPriceHandlers;
|
|
24
|
-
// This is needed because we initialize all factory pools + custom pools
|
|
25
|
-
// Custom pools are not fully supported. I need them only in meta pools as base pool
|
|
26
|
-
// to get poolState, but not for pricing requests.
|
|
27
|
-
// It appears from CurveV1 and CurveV1Factory duality
|
|
28
|
-
// Sometimes it happens that as customPool we have factory plain pool, in that case I use
|
|
29
|
-
// isUsedForPricing flag to identify if it must be used for pricing or not. If yes,
|
|
30
|
-
// it goes to statePollingPoolsFromId
|
|
31
|
-
this.poolsForOnlyState = {};
|
|
32
|
-
// poolsForOnly State and statePollingPoolsFromId must not have overlapping in pool
|
|
33
|
-
this.statePollingPoolsFromId = {};
|
|
34
|
-
// This is fast lookup table when you look for pair and searching for coins in all pools
|
|
35
|
-
// In fact it is skewed in favor of CRV, so we still end up with 100 pools for CRV token.
|
|
36
|
-
// It should bo considered for optimizing
|
|
37
|
-
this.coinAddressesToPoolIdentifiers = {};
|
|
38
|
-
this.allCurveLiquidityApiSlugs = new Set([
|
|
39
|
-
'/factory',
|
|
40
|
-
'/factory-crvusd',
|
|
41
|
-
'/factory-stable-ng',
|
|
42
|
-
]);
|
|
43
|
-
this.statePollingManager = polling_manager_1.StatePollingManager;
|
|
44
|
-
this.liquidityUpdatedAtMs = 0;
|
|
45
52
|
this.taskScheduler = new task_scheduler_1.TaskScheduler(this.name, this.logger, this.updatePollingPoolsInBatch.bind(this), stateUpdatePeriodMs, stateUpdateRetryPeriodMs);
|
|
46
53
|
this.liquidityCacheKey = `${constants_2.CACHE_PREFIX}_liquidity_in_usd`.toLowerCase();
|
|
47
54
|
// In cache we have one reserved key name where we get when all these keys were updated
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve-v1-pool-manager.js","sourceRoot":"","sources":["../../../src/dex/curve-v1-factory/curve-v1-pool-manager.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AAIvB,6DAAyD;AACzD,2CAOqB;AAGrB,2EAA4E;AAC5E,+CAA6D;AAE7D,iDAAuC;AAEvC;;;;GAIG;AAEH,MAAa,yBAAyB;
|
|
1
|
+
{"version":3,"file":"curve-v1-pool-manager.js","sourceRoot":"","sources":["../../../src/dex/curve-v1-factory/curve-v1-pool-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,12 +23,10 @@ const constants_1 = __importDefault(require("./functions/constants"));
|
|
|
23
23
|
const constants_2 = require("../constants");
|
|
24
24
|
const constants_3 = require("@paraswap/core/build/constants");
|
|
25
25
|
class PriceHandler {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
this.priceHandler = PriceHandler.getPriceHandlerFromImplementationName(implementationName, baseImplementationName);
|
|
31
|
-
}
|
|
26
|
+
logger;
|
|
27
|
+
implementationName;
|
|
28
|
+
baseImplementationName;
|
|
29
|
+
priceHandler;
|
|
32
30
|
static getPriceHandlerFromImplementationName(implementationName, baseImplementationName) {
|
|
33
31
|
const constants = constants_1.default[implementationName];
|
|
34
32
|
let _basePool;
|
|
@@ -56,6 +54,12 @@ class PriceHandler {
|
|
|
56
54
|
IMPLEMENTATION_NAME: implementationName,
|
|
57
55
|
};
|
|
58
56
|
}
|
|
57
|
+
constructor(logger, implementationName, baseImplementationName) {
|
|
58
|
+
this.logger = logger;
|
|
59
|
+
this.implementationName = implementationName;
|
|
60
|
+
this.baseImplementationName = baseImplementationName;
|
|
61
|
+
this.priceHandler = PriceHandler.getPriceHandlerFromImplementationName(implementationName, baseImplementationName);
|
|
62
|
+
}
|
|
59
63
|
getOutputs(side, state, amounts, i, j, isUnderlying) {
|
|
60
64
|
return amounts.map(amount => {
|
|
61
65
|
if (amount === 0n) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"price-handler.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/price-handlers/price-handler.ts"],"names":[],"mappings":";;;;;;AAGA,kGAA0F;AAC1F,4EAAoE;AACpE,gEAAwD;AACxD,kEAA0D;AAC1D,0DAAkD;AAClD,sFAA8E;AAC9E,gGAAwF;AACxF,sEAA8D;AAC9D,oFAA4E;AAC5E,8DAAsD;AACtD,sFAA8E;AAC9E,gEAAwD;AACxD,gEAAwD;AACxD,kEAA0D;AAC1D,8DAAsD;AACtD,sEAA8D;AAC9D,4CAAwD;AACxD,8DAA0D;AAE1D,MAAa,YAAY;
|
|
1
|
+
{"version":3,"file":"price-handler.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/price-handlers/price-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,6 +76,22 @@ const ContractABIs = {
|
|
|
76
76
|
// for other pools. I just wanted to make support for custom pools that are used under
|
|
77
77
|
// factory meta pools
|
|
78
78
|
class CustomBasePoolForFactory extends pool_polling_base_1.PoolPollingBase {
|
|
79
|
+
logger;
|
|
80
|
+
dexKey;
|
|
81
|
+
poolIdentifier;
|
|
82
|
+
poolConstants;
|
|
83
|
+
poolContextConstants;
|
|
84
|
+
curveLiquidityApiSlug;
|
|
85
|
+
lpTokenAddress;
|
|
86
|
+
isLendingPool;
|
|
87
|
+
balancesInputType;
|
|
88
|
+
useLending;
|
|
89
|
+
isUsedForPricing;
|
|
90
|
+
contractABIs;
|
|
91
|
+
// We don't have any fee on transfer tokens for custom pools yet.
|
|
92
|
+
// Created separate value to not forget to change in different places after
|
|
93
|
+
// add support for all pools
|
|
94
|
+
static IS_SRC_FEE_ON_TRANSFER_SUPPORTED;
|
|
79
95
|
constructor(logger, dexKey, network, cacheStateKey, implementationName, implementationAddress, address, stateUpdatePeriodMs, poolIdentifier, poolConstants, poolContextConstants, curveLiquidityApiSlug, lpTokenAddress, isLendingPool, balancesInputType, useLending, isUsedForPricing = false, contractABIs = ContractABIs, customGasCost) {
|
|
80
96
|
// Current custom pools are always plain
|
|
81
97
|
super(logger, dexKey, network, cacheStateKey, implementationName, implementationAddress === constants_1.NULL_ADDRESS ? address : implementationAddress, stateUpdatePeriodMs, poolIdentifier, poolConstants, poolContextConstants, address, curveLiquidityApiSlug, isLendingPool, undefined, CustomBasePoolForFactory.IS_SRC_FEE_ON_TRANSFER_SUPPORTED, customGasCost);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-pool-polling.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.ts"],"names":[],"mappings":";;;;;;AAAA,oDAAuB;AASvB,2DAA8E;AAC9E,oDAAwD;AACxD,0CAA0C;AAG1C,kDAAkD;AAClD,iDAAuC;AAWvC,kFAAkF;AAClF,+FAA+F;AAC/F,8BAA8B;AAC9B,MAAM,YAAY,GAAoC;IACpD,iBAAiB,EAAE;QACjB,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,OAAO;KACb;IACD,WAAW,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,IAAI;KACV;IACD,mBAAmB,EAAE;QACnB,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,qBAAqB;QAC3B,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,OAAO,EAAE,KAAK;QACd,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD,CAAC,EAAE;QACD,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,IAAI;KACV;IACD,GAAG,EAAE;QACH,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,IAAI;KACV;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACvC,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,IAAI;KACV;IACD,qBAAqB,EAAE;QACrB,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACxC,GAAG,EAAE,IAAI;KACV;CACF,CAAC;AAEF,uFAAuF;AACvF,sFAAsF;AACtF,qBAAqB;AACrB,MAAa,wBAAyB,SAAQ,mCAAe;
|
|
1
|
+
{"version":3,"file":"custom-pool-polling.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,19 @@ const getStoredRatesABI = (n) => ({
|
|
|
18
18
|
outputs: [{ name: '', type: `uint256[${n}]` }],
|
|
19
19
|
});
|
|
20
20
|
class FactoryStateHandler extends pool_polling_base_1.PoolPollingBase {
|
|
21
|
+
logger;
|
|
22
|
+
dexKey;
|
|
23
|
+
implementationName;
|
|
24
|
+
address;
|
|
25
|
+
config;
|
|
26
|
+
factoryAddress;
|
|
27
|
+
poolIdentifier;
|
|
28
|
+
poolConstants;
|
|
29
|
+
poolContextConstants;
|
|
30
|
+
isSrcFeeOnTransferSupported;
|
|
31
|
+
isStoredRatesSupported;
|
|
32
|
+
factoryIface;
|
|
33
|
+
additionalFuncsIface;
|
|
21
34
|
constructor(logger, dexKey, network, cacheStateKey, implementationName, implementationAddress, address, config, factoryAddress, poolIdentifier, poolConstants, poolContextConstants, isSrcFeeOnTransferSupported, liquidityApiSlug, baseStatePoolPolling, customGasCost, isStoredRatesSupported = false, factoryIface = new abi_1.Interface(FactoryCurveV1_json_1.default), additionalFuncsIface = new abi_1.Interface([
|
|
22
35
|
getStoredRatesABI(poolContextConstants?.N_COINS?.toString() || ''),
|
|
23
36
|
])) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory-pool-polling.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA6D;AAU7D,2DAA8E;AAC9E,4GAAkF;AAClF,oDAI+B;AAM/B,MAAM,oBAAoB,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AACtC,MAAM,oBAAoB,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAE9C,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC;IACxC,IAAI,EAAE,cAAc;IACpB,eAAe,EAAE,MAAM;IACvB,IAAI,EAAE,UAAU;IAChB,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,GAAG,EAAE,CAAC;CAC/C,CAAC,CAAC;AAEH,MAAa,mBAAoB,SAAQ,mCAAe;
|
|
1
|
+
{"version":3,"file":"factory-pool-polling.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,37 @@ exports.PoolPollingBase = void 0;
|
|
|
7
7
|
const web3_eth_abi_1 = __importDefault(require("web3-eth-abi"));
|
|
8
8
|
const constants_1 = require("../constants");
|
|
9
9
|
class PoolPollingBase {
|
|
10
|
+
logger;
|
|
11
|
+
dexKey;
|
|
12
|
+
network;
|
|
13
|
+
cacheStateKey;
|
|
14
|
+
implementationName;
|
|
15
|
+
implementationAddress;
|
|
16
|
+
stateUpdatePeriodMs;
|
|
17
|
+
poolIdentifier;
|
|
18
|
+
poolConstants;
|
|
19
|
+
poolContextConstants;
|
|
20
|
+
address;
|
|
21
|
+
curveLiquidityApiSlug;
|
|
22
|
+
isLendingPool;
|
|
23
|
+
baseStatePoolPolling;
|
|
24
|
+
isSrcFeeOnTransferSupported;
|
|
25
|
+
customGasCost;
|
|
26
|
+
// Used for logger. Better to have which class is failing
|
|
27
|
+
CLASS_NAME = this.constructor.name;
|
|
28
|
+
fullName;
|
|
29
|
+
_poolState = null;
|
|
30
|
+
abiCoder = web3_eth_abi_1.default;
|
|
31
|
+
// This values is used in PoolTracker
|
|
32
|
+
liquidityUSD = 0;
|
|
33
|
+
isMetaPool;
|
|
34
|
+
// For more efficient search in coins
|
|
35
|
+
coinsToIndices;
|
|
36
|
+
underlyingCoinsToIndices;
|
|
37
|
+
underlyingDecimals;
|
|
38
|
+
// Custom pools usually are not used for pricing. But there examples, when
|
|
39
|
+
// factory plain goes as custom one. In that case we must use that for pricing
|
|
40
|
+
isUsedForPricing = true;
|
|
10
41
|
constructor(logger, dexKey, network, cacheStateKey, implementationName, implementationAddress, stateUpdatePeriodMs, poolIdentifier, poolConstants, poolContextConstants, address, curveLiquidityApiSlug, isLendingPool, baseStatePoolPolling, isSrcFeeOnTransferSupported, customGasCost) {
|
|
11
42
|
this.logger = logger;
|
|
12
43
|
this.dexKey = dexKey;
|
|
@@ -24,15 +55,6 @@ class PoolPollingBase {
|
|
|
24
55
|
this.baseStatePoolPolling = baseStatePoolPolling;
|
|
25
56
|
this.isSrcFeeOnTransferSupported = isSrcFeeOnTransferSupported;
|
|
26
57
|
this.customGasCost = customGasCost;
|
|
27
|
-
// Used for logger. Better to have which class is failing
|
|
28
|
-
this.CLASS_NAME = this.constructor.name;
|
|
29
|
-
this._poolState = null;
|
|
30
|
-
this.abiCoder = web3_eth_abi_1.default;
|
|
31
|
-
// This values is used in PoolTracker
|
|
32
|
-
this.liquidityUSD = 0;
|
|
33
|
-
// Custom pools usually are not used for pricing. But there examples, when
|
|
34
|
-
// factory plain goes as custom one. In that case we must use that for pricing
|
|
35
|
-
this.isUsedForPricing = true;
|
|
36
58
|
this.fullName = `${dexKey}-${network}-${this.CLASS_NAME}-${this.implementationName}-${this.address}`;
|
|
37
59
|
this.isMetaPool = baseStatePoolPolling !== undefined;
|
|
38
60
|
this.coinsToIndices = this._reduceToIndexMapping(poolConstants.COINS);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-polling-base.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/state-polling-pools/pool-polling-base.ts"],"names":[],"mappings":";;;;;;AAAA,gEAAoD;AAGpD,4CAGsB;AAYtB,MAAsB,eAAe;
|
|
1
|
+
{"version":3,"file":"pool-polling-base.js","sourceRoot":"","sources":["../../../../src/dex/curve-v1-factory/state-polling-pools/pool-polling-base.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,18 @@ const curve_v1_factory_1 = require("../curve-v1-factory/curve-v1-factory");
|
|
|
5
5
|
const config_1 = require("./config");
|
|
6
6
|
const utils_1 = require("../../utils");
|
|
7
7
|
class CurveV1StableNg extends curve_v1_factory_1.CurveV1Factory {
|
|
8
|
+
network;
|
|
9
|
+
dexKey;
|
|
10
|
+
dexHelper;
|
|
11
|
+
adapters;
|
|
12
|
+
config;
|
|
13
|
+
coinsTypeTemplate;
|
|
14
|
+
// implemented as a function because need to follow CurveV1Factory interface
|
|
15
|
+
needWrapNative = () => {
|
|
16
|
+
return true;
|
|
17
|
+
};
|
|
18
|
+
needWrapNativeForPricing = true;
|
|
19
|
+
static dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.CurveV1StableNgConfig);
|
|
8
20
|
constructor(network, dexKey, dexHelper, adapters = config_1.Adapters[network] || {}, config = config_1.CurveV1StableNgConfig['CurveV1StableNg'][network],
|
|
9
21
|
// This type is used to support different encoding for uint128 and uint256 args
|
|
10
22
|
coinsTypeTemplate = curve_v1_factory_1.DefaultCoinsABI) {
|
|
@@ -15,13 +27,7 @@ class CurveV1StableNg extends curve_v1_factory_1.CurveV1Factory {
|
|
|
15
27
|
this.adapters = adapters;
|
|
16
28
|
this.config = config;
|
|
17
29
|
this.coinsTypeTemplate = coinsTypeTemplate;
|
|
18
|
-
// implemented as a function because need to follow CurveV1Factory interface
|
|
19
|
-
this.needWrapNative = () => {
|
|
20
|
-
return true;
|
|
21
|
-
};
|
|
22
|
-
this.needWrapNativeForPricing = true;
|
|
23
30
|
}
|
|
24
31
|
}
|
|
25
32
|
exports.CurveV1StableNg = CurveV1StableNg;
|
|
26
|
-
CurveV1StableNg.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.CurveV1StableNgConfig);
|
|
27
33
|
//# sourceMappingURL=curve-v1-stable-ng.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curve-v1-stable-ng.js","sourceRoot":"","sources":["../../../src/dex/curve-v1-stable-ng/curve-v1-stable-ng.ts"],"names":[],"mappings":";;;AAAA,2EAG8C;AAG9C,qCAA2D;AAE3D,uCAAoD;AAEpD,MAAa,eAAgB,SAAQ,iCAAc;
|
|
1
|
+
{"version":3,"file":"curve-v1-stable-ng.js","sourceRoot":"","sources":["../../../src/dex/curve-v1-stable-ng/curve-v1-stable-ng.ts"],"names":[],"mappings":";;;AAAA,2EAG8C;AAG9C,qCAA2D;AAE3D,uCAAoD;AAEpD,MAAa,eAAgB,SAAQ,iCAAc;IAYtC;IACA;IACA;IACC;IACA;IAEA;IAjBZ,4EAA4E;IAC5E,cAAc,GAAG,GAAG,EAAE;QACpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,wBAAwB,GAAG,IAAI,CAAC;IAEzB,MAAM,CAAC,kBAAkB,GAC9B,IAAA,6BAAqB,EAAC,8BAAqB,CAAC,CAAC;IAE/C,YACW,OAAgB,EAChB,MAAc,EACd,SAAqB,EACpB,WAAW,iBAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAClC,SAAS,8BAAqB,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC;IACpE,+EAA+E;IACrE,oBAA6B,kCAAe;QAEtD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAR9D,YAAO,GAAP,OAAO,CAAS;QAChB,WAAM,GAAN,MAAM,CAAQ;QACd,cAAS,GAAT,SAAS,CAAY;QACpB,aAAQ,GAAR,QAAQ,CAA0B;QAClC,WAAM,GAAN,MAAM,CAAoD;QAE1D,sBAAiB,GAAjB,iBAAiB,CAA2B;IAGxD,CAAC;;AArBH,0CAsBC"}
|