@paraswap/dex-lib 4.8.23 → 4.8.24
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/build/abi/pancakeswap-infinity/cl-pool-manager.abi.json +136 -0
- package/build/abi/pancakeswap-infinity/cl-quoter.abi.json +66 -0
- package/build/abi/pancakeswap-infinity/router.abi.json +23 -0
- package/build/dex/dexalot/config.js +4 -4
- package/build/dex/native/constants.d.ts +1 -0
- package/build/dex/native/constants.js +2 -1
- package/build/dex/native/constants.js.map +1 -1
- package/build/dex/native/rate-fetcher.d.ts +1 -0
- package/build/dex/native/rate-fetcher.js +40 -0
- package/build/dex/native/rate-fetcher.js.map +1 -1
- package/build/dex/native/types.d.ts +1 -0
- package/build/dex/native/validators.js +1 -0
- package/build/dex/native/validators.js.map +1 -1
- package/build/dex/pancakeswap-infinity/config.d.ts +4 -0
- package/build/dex/pancakeswap-infinity/config.js +30 -0
- package/build/dex/pancakeswap-infinity/config.js.map +1 -0
- package/build/dex/pancakeswap-infinity/constants.d.ts +11 -0
- package/build/dex/pancakeswap-infinity/constants.js +15 -0
- package/build/dex/pancakeswap-infinity/constants.js.map +1 -0
- package/build/dex/pancakeswap-infinity/encoder.d.ts +16 -0
- package/build/dex/{bunni-v2 → pancakeswap-infinity}/encoder.js +88 -199
- package/build/dex/pancakeswap-infinity/encoder.js.map +1 -0
- package/build/dex/pancakeswap-infinity/liquidity.d.ts +1 -0
- package/build/dex/pancakeswap-infinity/liquidity.js +7 -0
- package/build/dex/pancakeswap-infinity/liquidity.js.map +1 -0
- package/build/dex/pancakeswap-infinity/optimizer.d.ts +2 -0
- package/build/dex/pancakeswap-infinity/optimizer.js +48 -0
- package/build/dex/pancakeswap-infinity/optimizer.js.map +1 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.d.ts +36 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.js +393 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.js.map +1 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.d.ts +37 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.js +289 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.js.map +1 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity.d.ts +42 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity.js +350 -0
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity.js.map +1 -0
- package/build/dex/pancakeswap-infinity/subgraph.d.ts +8 -0
- package/build/dex/pancakeswap-infinity/subgraph.js +122 -0
- package/build/dex/pancakeswap-infinity/subgraph.js.map +1 -0
- package/build/dex/pancakeswap-infinity/types.d.ts +101 -0
- package/build/dex/pancakeswap-infinity/types.js.map +1 -0
- package/build/dex/pancakeswap-infinity/utils.d.ts +5 -0
- package/build/dex/pancakeswap-infinity/utils.js +45 -0
- package/build/dex/pancakeswap-infinity/utils.js.map +1 -0
- package/build/dex/renegade/api/auth.d.ts +1 -0
- package/build/dex/renegade/api/auth.js +63 -0
- package/build/dex/renegade/api/auth.js.map +1 -0
- package/build/dex/renegade/api/renegade-client.d.ts +18 -0
- package/build/dex/renegade/api/renegade-client.js +82 -0
- package/build/dex/renegade/api/renegade-client.js.map +1 -0
- package/build/dex/renegade/api/types.d.ts +110 -0
- package/build/dex/{maker-psm → renegade/api}/types.js.map +1 -1
- package/build/dex/{se-vlr → renegade}/config.d.ts +1 -1
- package/build/dex/renegade/config.js +16 -0
- package/build/dex/renegade/config.js.map +1 -0
- package/build/dex/renegade/constants.d.ts +25 -0
- package/build/dex/renegade/constants.js +47 -0
- package/build/dex/renegade/constants.js.map +1 -0
- package/build/dex/renegade/rate-fetcher.d.ts +23 -0
- package/build/dex/renegade/rate-fetcher.js +135 -0
- package/build/dex/renegade/rate-fetcher.js.map +1 -0
- package/build/dex/renegade/renegade-levels-response.d.ts +22 -0
- package/build/dex/renegade/renegade-levels-response.js +99 -0
- package/build/dex/renegade/renegade-levels-response.js.map +1 -0
- package/build/dex/renegade/renegade.d.ts +57 -0
- package/build/dex/renegade/renegade.js +499 -0
- package/build/dex/renegade/renegade.js.map +1 -0
- package/build/dex/renegade/types.d.ts +38 -0
- package/build/dex/renegade/types.js +4 -0
- package/build/dex/renegade/types.js.map +1 -0
- package/package.json +1 -1
- package/build/abi/AaveV2_lending_pool.json +0 -53
- package/build/abi/BProtocol.json +0 -1155
- package/build/abi/Bancor.json +0 -392
- package/build/abi/Compound_CETH.json +0 -12
- package/build/abi/Jarvis.json +0 -1172
- package/build/abi/MStableAsset.json +0 -1545
- package/build/abi/OneInchLp.json +0 -1304
- package/build/abi/Onebit.json +0 -736
- package/build/abi/SSPM.json +0 -829
- package/build/abi/Shell.json +0 -1294
- package/build/abi/Smoothy.json +0 -1049
- package/build/abi/StaderOracle.json +0 -2170
- package/build/abi/TraderJoeV2Router.json +0 -50
- package/build/abi/aave-weth-gateway-avalanche.json +0 -242
- package/build/abi/aave-weth-gateway-polygon.json +0 -242
- package/build/abi/aave-weth-gateway.json +0 -24
- package/build/abi/bunni-v2/BunniHook.abi.json +0 -1921
- package/build/abi/bunni-v2/BunniHub.abi.json +0 -1598
- package/build/abi/bunni-v2/BunniToken.abi.json +0 -833
- package/build/abi/bunni-v2/FeeOverrideHooklet.abi.json +0 -1947
- package/build/abi/bunni-v2/FloodPlain.abi.json +0 -1195
- package/build/abi/bunni-v2/PoolManager.abi.json +0 -1366
- package/build/abi/bunni-v2/V4Quoter.abi.json +0 -637
- package/build/abi/concentrator/arUSD.json +0 -568
- package/build/abi/concentrator/arUSD5115.json +0 -1746
- package/build/abi/gmx/fast-price-events.json +0 -70
- package/build/abi/gmx/fast-price-feed.json +0 -748
- package/build/abi/gmx/reader.json +0 -337
- package/build/abi/gmx/vault-price-feed.json +0 -477
- package/build/abi/gmx/vault.json +0 -2002
- package/build/abi/idle-dao/idle-cdo-factory.json +0 -38
- package/build/abi/idle-dao/idle-cdo.json +0 -1245
- package/build/abi/infusion/InfusionFactory.json +0 -147
- package/build/abi/infusion/InfusionPair.json +0 -658
- package/build/abi/infusion/InfusionRouter.json +0 -442
- package/build/abi/jarvis/ChainlinkAccessControlledOffchainAggregator.json +0 -1009
- package/build/abi/jarvis/SynthereumPriceFeed.json +0 -381
- package/build/abi/jarvis/jarvis-v6-pool.json +0 -1041
- package/build/abi/kyberdmm/kyber-dmm-exchange-router.abi.json +0 -1148
- package/build/abi/kyberdmm/kyber-dmm-factory.abi.json +0 -335
- package/build/abi/kyberdmm/kyber-dmm-pool.abi.json +0 -803
- package/build/abi/maker-psm/pot.json +0 -322
- package/build/abi/maker-psm/psm.json +0 -243
- package/build/abi/maker-psm/vat.json +0 -363
- package/build/abi/nomiswap-v2/nomiswap-v2-pool.json +0 -773
- package/build/abi/quick-perps/fast-price-events.json +0 -70
- package/build/abi/quick-perps/fast-price-feed.json +0 -741
- package/build/abi/quick-perps/reader.json +0 -313
- package/build/abi/quick-perps/vault-price-feed.json +0 -323
- package/build/abi/quick-perps/vault.json +0 -1953
- package/build/abi/synthetix/CombinedSynthetix.abi.json +0 -442
- package/build/abi/uniswap-v2/excalibur-pool.json +0 -881
- package/build/abi/uniswap-v2/mdex-factory.json +0 -759
- package/build/abi/wUSDM.json +0 -757
- package/build/abi/wombat/asset.json +0 -743
- package/build/abi/wombat/bmw.json +0 -1247
- package/build/abi/wombat/pool-v2.json +0 -1289
- package/build/abi/wombat/pool-v3.json +0 -2013
- package/build/abi/zrx.v2.json +0 -1967
- package/build/abi/zrx.v3.json +0 -3454
- package/build/abi/zrx.v4.json +0 -2193
- package/build/dex/OneInchLp.d.ts +0 -24
- package/build/dex/OneInchLp.js +0 -43
- package/build/dex/OneInchLp.js.map +0 -1
- package/build/dex/aave-v2/aave-v2.d.ts +0 -33
- package/build/dex/aave-v2/aave-v2.js +0 -328
- package/build/dex/aave-v2/aave-v2.js.map +0 -1
- package/build/dex/aave-v2/config.d.ts +0 -14
- package/build/dex/aave-v2/config.js +0 -49
- package/build/dex/aave-v2/config.js.map +0 -1
- package/build/dex/aave-v2/tokenlist.json +0 -904
- package/build/dex/aave-v2/tokens.d.ts +0 -8
- package/build/dex/aave-v2/tokens.js +0 -65
- package/build/dex/aave-v2/tokens.js.map +0 -1
- package/build/dex/aave-v2/types.d.ts +0 -33
- package/build/dex/aave-v2/types.js +0 -11
- package/build/dex/aave-v2/types.js.map +0 -1
- package/build/dex/bProtocol/bProtocol.d.ts +0 -15
- package/build/dex/bProtocol/bProtocol.js +0 -56
- package/build/dex/bProtocol/bProtocol.js.map +0 -1
- package/build/dex/bProtocol/types.d.ts +0 -11
- package/build/dex/bProtocol/types.js +0 -8
- package/build/dex/bProtocol/types.js.map +0 -1
- package/build/dex/bancor/bancor.d.ts +0 -15
- package/build/dex/bancor/bancor.js +0 -74
- package/build/dex/bancor/bancor.js.map +0 -1
- package/build/dex/bancor/config.d.ts +0 -6
- package/build/dex/bancor/config.js +0 -11
- package/build/dex/bancor/config.js.map +0 -1
- package/build/dex/bancor/types.d.ts +0 -16
- package/build/dex/bancor/types.js +0 -8
- package/build/dex/bancor/types.js.map +0 -1
- package/build/dex/bunni-v2/bunni-v2-pool.d.ts +0 -62
- package/build/dex/bunni-v2/bunni-v2-pool.js +0 -505
- package/build/dex/bunni-v2/bunni-v2-pool.js.map +0 -1
- package/build/dex/bunni-v2/bunni-v2.d.ts +0 -51
- package/build/dex/bunni-v2/bunni-v2.js +0 -460
- package/build/dex/bunni-v2/bunni-v2.js.map +0 -1
- package/build/dex/bunni-v2/config.d.ts +0 -3
- package/build/dex/bunni-v2/config.js +0 -130
- package/build/dex/bunni-v2/config.js.map +0 -1
- package/build/dex/bunni-v2/encoder.d.ts +0 -19
- package/build/dex/bunni-v2/encoder.js.map +0 -1
- package/build/dex/bunni-v2/getOnChainState.d.ts +0 -26
- package/build/dex/bunni-v2/getOnChainState.js +0 -493
- package/build/dex/bunni-v2/getOnChainState.js.map +0 -1
- package/build/dex/bunni-v2/hook/BunniSwapMath.d.ts +0 -7
- package/build/dex/bunni-v2/hook/BunniSwapMath.js +0 -198
- package/build/dex/bunni-v2/hook/BunniSwapMath.js.map +0 -1
- package/build/dex/bunni-v2/hook/SwapMath.d.ts +0 -8
- package/build/dex/bunni-v2/hook/SwapMath.js +0 -65
- package/build/dex/bunni-v2/hook/SwapMath.js.map +0 -1
- package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.d.ts +0 -33
- package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.js +0 -33
- package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.js.map +0 -1
- package/build/dex/bunni-v2/hooklet/index.d.ts +0 -21
- package/build/dex/bunni-v2/hooklet/index.js +0 -64
- package/build/dex/bunni-v2/hooklet/index.js.map +0 -1
- package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.d.ts +0 -70
- package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.js +0 -277
- package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.js.map +0 -1
- package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.d.ts +0 -64
- package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.js +0 -262
- package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.js.map +0 -1
- package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.d.ts +0 -60
- package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.js +0 -224
- package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.js.map +0 -1
- package/build/dex/bunni-v2/ldf/GeometricDistribution.d.ts +0 -56
- package/build/dex/bunni-v2/ldf/GeometricDistribution.js +0 -489
- package/build/dex/bunni-v2/ldf/GeometricDistribution.js.map +0 -1
- package/build/dex/bunni-v2/ldf/LDFType.d.ts +0 -5
- package/build/dex/bunni-v2/ldf/LDFType.js +0 -10
- package/build/dex/bunni-v2/ldf/LDFType.js.map +0 -1
- package/build/dex/bunni-v2/ldf/ShiftMode.d.ts +0 -7
- package/build/dex/bunni-v2/ldf/ShiftMode.js +0 -19
- package/build/dex/bunni-v2/ldf/ShiftMode.js.map +0 -1
- package/build/dex/bunni-v2/ldf/UniformDistribution.d.ts +0 -55
- package/build/dex/bunni-v2/ldf/UniformDistribution.js +0 -291
- package/build/dex/bunni-v2/ldf/UniformDistribution.js.map +0 -1
- package/build/dex/bunni-v2/ldf/index.d.ts +0 -15
- package/build/dex/bunni-v2/ldf/index.js +0 -21
- package/build/dex/bunni-v2/ldf/index.js.map +0 -1
- package/build/dex/bunni-v2/lib/AmAmmPayload.d.ts +0 -4
- package/build/dex/bunni-v2/lib/AmAmmPayload.js +0 -10
- package/build/dex/bunni-v2/lib/AmAmmPayload.js.map +0 -1
- package/build/dex/bunni-v2/lib/BitMath.d.ts +0 -4
- package/build/dex/bunni-v2/lib/BitMath.js +0 -24
- package/build/dex/bunni-v2/lib/BitMath.js.map +0 -1
- package/build/dex/bunni-v2/lib/Constants.d.ts +0 -15
- package/build/dex/bunni-v2/lib/Constants.js +0 -19
- package/build/dex/bunni-v2/lib/Constants.js.map +0 -1
- package/build/dex/bunni-v2/lib/ExpMath.d.ts +0 -5
- package/build/dex/bunni-v2/lib/ExpMath.js +0 -121
- package/build/dex/bunni-v2/lib/ExpMath.js.map +0 -1
- package/build/dex/bunni-v2/lib/FeeMath.d.ts +0 -2
- package/build/dex/bunni-v2/lib/FeeMath.js +0 -27
- package/build/dex/bunni-v2/lib/FeeMath.js.map +0 -1
- package/build/dex/bunni-v2/lib/FixedPointMath.d.ts +0 -3
- package/build/dex/bunni-v2/lib/FixedPointMath.js +0 -15
- package/build/dex/bunni-v2/lib/FixedPointMath.js.map +0 -1
- package/build/dex/bunni-v2/lib/FullMathX96.d.ts +0 -4
- package/build/dex/bunni-v2/lib/FullMathX96.js +0 -21
- package/build/dex/bunni-v2/lib/FullMathX96.js.map +0 -1
- package/build/dex/bunni-v2/lib/IdleBalance.d.ts +0 -11
- package/build/dex/bunni-v2/lib/IdleBalance.js +0 -33
- package/build/dex/bunni-v2/lib/IdleBalance.js.map +0 -1
- package/build/dex/bunni-v2/lib/LiquidityAmounts.d.ts +0 -6
- package/build/dex/bunni-v2/lib/LiquidityAmounts.js +0 -25
- package/build/dex/bunni-v2/lib/LiquidityAmounts.js.map +0 -1
- package/build/dex/bunni-v2/lib/Math.d.ts +0 -28
- package/build/dex/bunni-v2/lib/Math.js +0 -169
- package/build/dex/bunni-v2/lib/Math.js.map +0 -1
- package/build/dex/bunni-v2/lib/Oracle.d.ts +0 -27
- package/build/dex/bunni-v2/lib/Oracle.js +0 -180
- package/build/dex/bunni-v2/lib/Oracle.js.map +0 -1
- package/build/dex/bunni-v2/lib/QueryLDF.d.ts +0 -12
- package/build/dex/bunni-v2/lib/QueryLDF.js +0 -90
- package/build/dex/bunni-v2/lib/QueryLDF.js.map +0 -1
- package/build/dex/bunni-v2/lib/QueryTwap.d.ts +0 -2
- package/build/dex/bunni-v2/lib/QueryTwap.js +0 -13
- package/build/dex/bunni-v2/lib/QueryTwap.js.map +0 -1
- package/build/dex/bunni-v2/lib/SqrtPriceMath.d.ts +0 -8
- package/build/dex/bunni-v2/lib/SqrtPriceMath.js +0 -84
- package/build/dex/bunni-v2/lib/SqrtPriceMath.js.map +0 -1
- package/build/dex/bunni-v2/lib/TickMath.d.ts +0 -11
- package/build/dex/bunni-v2/lib/TickMath.js +0 -100
- package/build/dex/bunni-v2/lib/TickMath.js.map +0 -1
- package/build/dex/bunni-v2/lib/VaultMath.d.ts +0 -2
- package/build/dex/bunni-v2/lib/VaultMath.js +0 -11
- package/build/dex/bunni-v2/lib/VaultMath.js.map +0 -1
- package/build/dex/bunni-v2/logic/AmAmm.d.ts +0 -11
- package/build/dex/bunni-v2/logic/AmAmm.js +0 -156
- package/build/dex/bunni-v2/logic/AmAmm.js.map +0 -1
- package/build/dex/bunni-v2/logic/BunniHookLogic.d.ts +0 -10
- package/build/dex/bunni-v2/logic/BunniHookLogic.js +0 -298
- package/build/dex/bunni-v2/logic/BunniHookLogic.js.map +0 -1
- package/build/dex/bunni-v2/logic/BunniHubLogic.d.ts +0 -5
- package/build/dex/bunni-v2/logic/BunniHubLogic.js +0 -245
- package/build/dex/bunni-v2/logic/BunniHubLogic.js.map +0 -1
- package/build/dex/bunni-v2/logic/BunniQuoter.d.ts +0 -12
- package/build/dex/bunni-v2/logic/BunniQuoter.js +0 -201
- package/build/dex/bunni-v2/logic/BunniQuoter.js.map +0 -1
- package/build/dex/bunni-v2/subgraph.d.ts +0 -7
- package/build/dex/bunni-v2/subgraph.js +0 -184
- package/build/dex/bunni-v2/subgraph.js.map +0 -1
- package/build/dex/bunni-v2/types.d.ts +0 -257
- package/build/dex/bunni-v2/types.js.map +0 -1
- package/build/dex/bunni-v2/utils.d.ts +0 -12
- package/build/dex/bunni-v2/utils.js +0 -182
- package/build/dex/bunni-v2/utils.js.map +0 -1
- package/build/dex/compound/compound.d.ts +0 -15
- package/build/dex/compound/compound.js +0 -57
- package/build/dex/compound/compound.js.map +0 -1
- package/build/dex/compound/types.d.ts +0 -8
- package/build/dex/compound/types.js +0 -9
- package/build/dex/compound/types.js.map +0 -1
- package/build/dex/concentrator-arusd/concentrator-arusd-event.d.ts +0 -17
- package/build/dex/concentrator-arusd/concentrator-arusd-event.js +0 -69
- package/build/dex/concentrator-arusd/concentrator-arusd-event.js.map +0 -1
- package/build/dex/concentrator-arusd/concentrator-arusd.d.ts +0 -41
- package/build/dex/concentrator-arusd/concentrator-arusd.js +0 -202
- package/build/dex/concentrator-arusd/concentrator-arusd.js.map +0 -1
- package/build/dex/concentrator-arusd/config.d.ts +0 -3
- package/build/dex/concentrator-arusd/config.js +0 -14
- package/build/dex/concentrator-arusd/config.js.map +0 -1
- package/build/dex/concentrator-arusd/types.d.ts +0 -14
- package/build/dex/concentrator-arusd/types.js.map +0 -1
- package/build/dex/concentrator-arusd/utils.d.ts +0 -4
- package/build/dex/concentrator-arusd/utils.js +0 -26
- package/build/dex/concentrator-arusd/utils.js.map +0 -1
- package/build/dex/curve-v1/forks/swerve/config.d.ts +0 -4
- package/build/dex/curve-v1/forks/swerve/config.js +0 -47
- package/build/dex/curve-v1/forks/swerve/config.js.map +0 -1
- package/build/dex/curve-v1/forks/swerve/swerve.d.ts +0 -16
- package/build/dex/curve-v1/forks/swerve/swerve.js +0 -46
- package/build/dex/curve-v1/forks/swerve/swerve.js.map +0 -1
- package/build/dex/ekubo/pools/base-pool.d.ts +0 -47
- package/build/dex/ekubo/pools/base-pool.js +0 -184
- package/build/dex/ekubo/pools/base-pool.js.map +0 -1
- package/build/dex/ekubo/pools/iface.d.ts +0 -46
- package/build/dex/ekubo/pools/iface.js +0 -75
- package/build/dex/ekubo/pools/iface.js.map +0 -1
- package/build/dex/ekubo/pools/math/price.d.ts +0 -7
- package/build/dex/ekubo/pools/math/price.js +0 -112
- package/build/dex/ekubo/pools/math/price.js.map +0 -1
- package/build/dex/ekubo/pools/oracle-pool.d.ts +0 -10
- package/build/dex/ekubo/pools/oracle-pool.js +0 -19
- package/build/dex/ekubo/pools/oracle-pool.js.map +0 -1
- package/build/dex/ekubo/pools/pool-utils.d.ts +0 -44
- package/build/dex/ekubo/pools/pool-utils.js +0 -240
- package/build/dex/ekubo/pools/pool-utils.js.map +0 -1
- package/build/dex/gmx/config.d.ts +0 -11
- package/build/dex/gmx/config.js +0 -61
- package/build/dex/gmx/config.js.map +0 -1
- package/build/dex/gmx/fast-price-feed.d.ts +0 -26
- package/build/dex/gmx/fast-price-feed.js +0 -184
- package/build/dex/gmx/fast-price-feed.js.map +0 -1
- package/build/dex/gmx/gmx.d.ts +0 -54
- package/build/dex/gmx/gmx.js +0 -247
- package/build/dex/gmx/gmx.js.map +0 -1
- package/build/dex/gmx/pool.d.ts +0 -21
- package/build/dex/gmx/pool.js +0 -212
- package/build/dex/gmx/pool.js.map +0 -1
- package/build/dex/gmx/types.d.ts +0 -100
- package/build/dex/gmx/types.js +0 -3
- package/build/dex/gmx/types.js.map +0 -1
- package/build/dex/gmx/usdg.d.ts +0 -15
- package/build/dex/gmx/usdg.js +0 -62
- package/build/dex/gmx/usdg.js.map +0 -1
- package/build/dex/gmx/vault-price-feed.d.ts +0 -47
- package/build/dex/gmx/vault-price-feed.js +0 -245
- package/build/dex/gmx/vault-price-feed.js.map +0 -1
- package/build/dex/gmx/vault-utils.d.ts +0 -8
- package/build/dex/gmx/vault-utils.js +0 -42
- package/build/dex/gmx/vault-utils.js.map +0 -1
- package/build/dex/gmx/vault.d.ts +0 -46
- package/build/dex/gmx/vault.js +0 -182
- package/build/dex/gmx/vault.js.map +0 -1
- package/build/dex/idle-dao/config.d.ts +0 -5
- package/build/dex/idle-dao/config.js +0 -24
- package/build/dex/idle-dao/config.js.map +0 -1
- package/build/dex/idle-dao/idle-dao.d.ts +0 -42
- package/build/dex/idle-dao/idle-dao.js +0 -279
- package/build/dex/idle-dao/idle-dao.js.map +0 -1
- package/build/dex/idle-dao/token_list.d.ts +0 -4
- package/build/dex/idle-dao/token_list.js +0 -289
- package/build/dex/idle-dao/token_list.js.map +0 -1
- package/build/dex/idle-dao/tokens.d.ts +0 -9
- package/build/dex/idle-dao/tokens.js +0 -68
- package/build/dex/idle-dao/tokens.js.map +0 -1
- package/build/dex/idle-dao/types.d.ts +0 -35
- package/build/dex/idle-dao/types.js +0 -11
- package/build/dex/idle-dao/types.js.map +0 -1
- package/build/dex/idle-dao/utils.d.ts +0 -8
- package/build/dex/idle-dao/utils.js +0 -149
- package/build/dex/idle-dao/utils.js.map +0 -1
- package/build/dex/infusion/config.d.ts +0 -3
- package/build/dex/infusion/config.js +0 -20
- package/build/dex/infusion/config.js.map +0 -1
- package/build/dex/infusion/infusion-stable-pool.d.ts +0 -4
- package/build/dex/infusion/infusion-stable-pool.js +0 -74
- package/build/dex/infusion/infusion-stable-pool.js.map +0 -1
- package/build/dex/infusion/infusion.d.ts +0 -51
- package/build/dex/infusion/infusion.js +0 -500
- package/build/dex/infusion/infusion.js.map +0 -1
- package/build/dex/infusion/types.d.ts +0 -45
- package/build/dex/infusion/types.js +0 -3
- package/build/dex/infusion/types.js.map +0 -1
- package/build/dex/infusion/utils/isStablePair.d.ts +0 -2
- package/build/dex/infusion/utils/isStablePair.js +0 -18
- package/build/dex/infusion/utils/isStablePair.js.map +0 -1
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.d.ts +0 -15
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js +0 -51
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js.map +0 -1
- package/build/dex/jarvis-v6/config.d.ts +0 -4
- package/build/dex/jarvis-v6/config.js +0 -244
- package/build/dex/jarvis-v6/config.js.map +0 -1
- package/build/dex/jarvis-v6/jarvis-v6-events.d.ts +0 -27
- package/build/dex/jarvis-v6/jarvis-v6-events.js +0 -54
- package/build/dex/jarvis-v6/jarvis-v6-events.js.map +0 -1
- package/build/dex/jarvis-v6/jarvis-v6.d.ts +0 -49
- package/build/dex/jarvis-v6/jarvis-v6.js +0 -321
- package/build/dex/jarvis-v6/jarvis-v6.js.map +0 -1
- package/build/dex/jarvis-v6/syntheteumPool-event.d.ts +0 -15
- package/build/dex/jarvis-v6/syntheteumPool-event.js +0 -49
- package/build/dex/jarvis-v6/syntheteumPool-event.js.map +0 -1
- package/build/dex/jarvis-v6/types.d.ts +0 -48
- package/build/dex/jarvis-v6/types.js +0 -9
- package/build/dex/jarvis-v6/types.js.map +0 -1
- package/build/dex/jarvis-v6/utils.d.ts +0 -13
- package/build/dex/jarvis-v6/utils.js +0 -75
- package/build/dex/jarvis-v6/utils.js.map +0 -1
- package/build/dex/jarvis.d.ts +0 -56
- package/build/dex/jarvis.js +0 -163
- package/build/dex/jarvis.js.map +0 -1
- package/build/dex/kyberdmm/config.d.ts +0 -9
- package/build/dex/kyberdmm/config.js +0 -59
- package/build/dex/kyberdmm/config.js.map +0 -1
- package/build/dex/kyberdmm/fee-formula.d.ts +0 -15
- package/build/dex/kyberdmm/fee-formula.js +0 -88
- package/build/dex/kyberdmm/fee-formula.js.map +0 -1
- package/build/dex/kyberdmm/kyberdmm.d.ts +0 -55
- package/build/dex/kyberdmm/kyberdmm.js +0 -447
- package/build/dex/kyberdmm/kyberdmm.js.map +0 -1
- package/build/dex/kyberdmm/math-ext.d.ts +0 -2
- package/build/dex/kyberdmm/math-ext.js +0 -27
- package/build/dex/kyberdmm/math-ext.js.map +0 -1
- package/build/dex/kyberdmm/pool.d.ts +0 -50
- package/build/dex/kyberdmm/pool.js +0 -157
- package/build/dex/kyberdmm/pool.js.map +0 -1
- package/build/dex/kyberdmm/types.d.ts +0 -81
- package/build/dex/kyberdmm/types.js +0 -9
- package/build/dex/kyberdmm/types.js.map +0 -1
- package/build/dex/mStable.d.ts +0 -44
- package/build/dex/mStable.js +0 -75
- package/build/dex/mStable.js.map +0 -1
- package/build/dex/maker-psm/config.d.ts +0 -11
- package/build/dex/maker-psm/config.js +0 -53
- package/build/dex/maker-psm/config.js.map +0 -1
- package/build/dex/maker-psm/maker-psm.d.ts +0 -103
- package/build/dex/maker-psm/maker-psm.js +0 -493
- package/build/dex/maker-psm/maker-psm.js.map +0 -1
- package/build/dex/maker-psm/types.d.ts +0 -39
- package/build/dex/maker-psm/types.js +0 -3
- package/build/dex/onebit/onebit.d.ts +0 -16
- package/build/dex/onebit/onebit.js +0 -61
- package/build/dex/onebit/onebit.js.map +0 -1
- package/build/dex/onebit/types.d.ts +0 -14
- package/build/dex/onebit/types.js +0 -8
- package/build/dex/onebit/types.js.map +0 -1
- package/build/dex/quick-perps/config.d.ts +0 -11
- package/build/dex/quick-perps/config.js +0 -27
- package/build/dex/quick-perps/config.js.map +0 -1
- package/build/dex/quick-perps/fast-price-feed.d.ts +0 -26
- package/build/dex/quick-perps/fast-price-feed.js +0 -184
- package/build/dex/quick-perps/fast-price-feed.js.map +0 -1
- package/build/dex/quick-perps/pool.d.ts +0 -21
- package/build/dex/quick-perps/pool.js +0 -229
- package/build/dex/quick-perps/pool.js.map +0 -1
- package/build/dex/quick-perps/quick-perps.d.ts +0 -53
- package/build/dex/quick-perps/quick-perps.js +0 -247
- package/build/dex/quick-perps/quick-perps.js.map +0 -1
- package/build/dex/quick-perps/types.d.ts +0 -98
- package/build/dex/quick-perps/types.js +0 -3
- package/build/dex/quick-perps/types.js.map +0 -1
- package/build/dex/quick-perps/usdq.d.ts +0 -15
- package/build/dex/quick-perps/usdq.js +0 -62
- package/build/dex/quick-perps/usdq.js.map +0 -1
- package/build/dex/quick-perps/vault-price-feed.d.ts +0 -43
- package/build/dex/quick-perps/vault-price-feed.js +0 -203
- package/build/dex/quick-perps/vault-price-feed.js.map +0 -1
- package/build/dex/quick-perps/vault-utils.d.ts +0 -8
- package/build/dex/quick-perps/vault-utils.js +0 -42
- package/build/dex/quick-perps/vault-utils.js.map +0 -1
- package/build/dex/quick-perps/vault.d.ts +0 -46
- package/build/dex/quick-perps/vault.js +0 -182
- package/build/dex/quick-perps/vault.js.map +0 -1
- package/build/dex/quickswap/thena-fusion.d.ts +0 -6
- package/build/dex/quickswap/thena-fusion.js +0 -19
- package/build/dex/quickswap/thena-fusion.js.map +0 -1
- package/build/dex/se-vlr/config.js +0 -24
- package/build/dex/se-vlr/config.js.map +0 -1
- package/build/dex/se-vlr/se-vlr-pool.d.ts +0 -39
- package/build/dex/se-vlr/se-vlr-pool.js +0 -70
- package/build/dex/se-vlr/se-vlr-pool.js.map +0 -1
- package/build/dex/se-vlr/se-vlr.d.ts +0 -35
- package/build/dex/se-vlr/se-vlr.js +0 -131
- package/build/dex/se-vlr/se-vlr.js.map +0 -1
- package/build/dex/se-vlr/types.d.ts +0 -6
- package/build/dex/se-vlr/types.js +0 -3
- package/build/dex/se-vlr/types.js.map +0 -1
- package/build/dex/shell.d.ts +0 -25
- package/build/dex/shell.js +0 -41
- package/build/dex/shell.js.map +0 -1
- package/build/dex/smoothy/smoothy.d.ts +0 -16
- package/build/dex/smoothy/smoothy.js +0 -60
- package/build/dex/smoothy/smoothy.js.map +0 -1
- package/build/dex/smoothy/types.d.ts +0 -15
- package/build/dex/smoothy/types.js +0 -8
- package/build/dex/smoothy/types.js.map +0 -1
- package/build/dex/solidly/forks-override/aerodrome.d.ts +0 -14
- package/build/dex/solidly/forks-override/aerodrome.js +0 -46
- package/build/dex/solidly/forks-override/aerodrome.js.map +0 -1
- package/build/dex/solidly/forks-override/chronos.d.ts +0 -23
- package/build/dex/solidly/forks-override/chronos.js +0 -141
- package/build/dex/solidly/forks-override/chronos.js.map +0 -1
- package/build/dex/solidly/forks-override/usdfi.d.ts +0 -8
- package/build/dex/solidly/forks-override/usdfi.js +0 -15
- package/build/dex/solidly/forks-override/usdfi.js.map +0 -1
- package/build/dex/solidly/forks-override/velocimeter.d.ts +0 -23
- package/build/dex/solidly/forks-override/velocimeter.js +0 -77
- package/build/dex/solidly/forks-override/velocimeter.js.map +0 -1
- package/build/dex/stader/config.d.ts +0 -3
- package/build/dex/stader/config.js +0 -14
- package/build/dex/stader/config.js.map +0 -1
- package/build/dex/stader/stader-pool.d.ts +0 -19
- package/build/dex/stader/stader-pool.js +0 -56
- package/build/dex/stader/stader-pool.js.map +0 -1
- package/build/dex/stader/stader.d.ts +0 -42
- package/build/dex/stader/stader.js +0 -195
- package/build/dex/stader/stader.js.map +0 -1
- package/build/dex/stader/types.d.ts +0 -13
- package/build/dex/stader/types.js +0 -8
- package/build/dex/stader/types.js.map +0 -1
- package/build/dex/stader/utils.d.ts +0 -4
- package/build/dex/stader/utils.js +0 -23
- package/build/dex/stader/utils.js.map +0 -1
- package/build/dex/synthetix/config.d.ts +0 -4
- package/build/dex/synthetix/config.js +0 -53
- package/build/dex/synthetix/config.js.map +0 -1
- package/build/dex/synthetix/constants.d.ts +0 -23
- package/build/dex/synthetix/constants.js +0 -32
- package/build/dex/synthetix/constants.js.map +0 -1
- package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.d.ts +0 -17
- package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.js +0 -102
- package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.js.map +0 -1
- package/build/dex/synthetix/contract-math/ExchangeRates.d.ts +0 -8
- package/build/dex/synthetix/contract-math/ExchangeRates.js +0 -77
- package/build/dex/synthetix/contract-math/ExchangeRates.js.map +0 -1
- package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.d.ts +0 -17
- package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.js +0 -126
- package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.js.map +0 -1
- package/build/dex/synthetix/contract-math/FullMath.d.ts +0 -3
- package/build/dex/synthetix/contract-math/FullMath.js +0 -14
- package/build/dex/synthetix/contract-math/FullMath.js.map +0 -1
- package/build/dex/synthetix/contract-math/OracleLibrary.d.ts +0 -8
- package/build/dex/synthetix/contract-math/OracleLibrary.js +0 -60
- package/build/dex/synthetix/contract-math/OracleLibrary.js.map +0 -1
- package/build/dex/synthetix/contract-math/SafeDecimalMath.d.ts +0 -9
- package/build/dex/synthetix/contract-math/SafeDecimalMath.js +0 -41
- package/build/dex/synthetix/contract-math/SafeDecimalMath.js.map +0 -1
- package/build/dex/synthetix/contract-math/TickMath.d.ts +0 -7
- package/build/dex/synthetix/contract-math/TickMath.js +0 -63
- package/build/dex/synthetix/contract-math/TickMath.js.map +0 -1
- package/build/dex/synthetix/contract-math/synthetix-math.d.ts +0 -17
- package/build/dex/synthetix/contract-math/synthetix-math.js +0 -127
- package/build/dex/synthetix/contract-math/synthetix-math.js.map +0 -1
- package/build/dex/synthetix/synthetix-state.d.ts +0 -36
- package/build/dex/synthetix/synthetix-state.js +0 -615
- package/build/dex/synthetix/synthetix-state.js.map +0 -1
- package/build/dex/synthetix/synthetix.d.ts +0 -45
- package/build/dex/synthetix/synthetix.js +0 -304
- package/build/dex/synthetix/synthetix.js.map +0 -1
- package/build/dex/synthetix/types.d.ts +0 -90
- package/build/dex/synthetix/types.js +0 -3
- package/build/dex/synthetix/types.js.map +0 -1
- package/build/dex/synthetix/utils.d.ts +0 -10
- package/build/dex/synthetix/utils.js +0 -91
- package/build/dex/synthetix/utils.js.map +0 -1
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.d.ts +0 -7
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +0 -20
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +0 -1
- package/build/dex/trader-joe-v2.d.ts +0 -40
- package/build/dex/trader-joe-v2.js +0 -74
- package/build/dex/trader-joe-v2.js.map +0 -1
- package/build/dex/uniswap-v2/dfyn.d.ts +0 -19
- package/build/dex/uniswap-v2/dfyn.js +0 -61
- package/build/dex/uniswap-v2/dfyn.js.map +0 -1
- package/build/dex/uniswap-v2/excalibur.d.ts +0 -24
- package/build/dex/uniswap-v2/excalibur.js +0 -47
- package/build/dex/uniswap-v2/excalibur.js.map +0 -1
- package/build/dex/uniswap-v2/mdex.d.ts +0 -24
- package/build/dex/uniswap-v2/mdex.js +0 -50
- package/build/dex/uniswap-v2/mdex.js.map +0 -1
- package/build/dex/uniswap-v2/nomiswap-v2.d.ts +0 -24
- package/build/dex/uniswap-v2/nomiswap-v2.js +0 -57
- package/build/dex/uniswap-v2/nomiswap-v2.js.map +0 -1
- package/build/dex/uniswap-v3/uniswap-v3-new.d.ts +0 -94
- package/build/dex/uniswap-v3/uniswap-v3-new.js +0 -923
- package/build/dex/uniswap-v3/uniswap-v3-new.js.map +0 -1
- package/build/dex/uniswap-v4/contract-math/Position.d.ts +0 -3
- package/build/dex/uniswap-v4/contract-math/Position.js +0 -10
- package/build/dex/uniswap-v4/contract-math/Position.js.map +0 -1
- package/build/dex/usual-bond/config.d.ts +0 -3
- package/build/dex/usual-bond/config.js +0 -13
- package/build/dex/usual-bond/config.js.map +0 -1
- package/build/dex/usual-bond/types.d.ts +0 -7
- package/build/dex/usual-bond/types.js +0 -3
- package/build/dex/usual-bond/types.js.map +0 -1
- package/build/dex/usual-bond/usual-bond.d.ts +0 -35
- package/build/dex/usual-bond/usual-bond.js +0 -176
- package/build/dex/usual-bond/usual-bond.js.map +0 -1
- package/build/dex/wombat/config.d.ts +0 -4
- package/build/dex/wombat/config.js +0 -77
- package/build/dex/wombat/config.js.map +0 -1
- package/build/dex/wombat/types.d.ts +0 -34
- package/build/dex/wombat/types.js +0 -3
- package/build/dex/wombat/types.js.map +0 -1
- package/build/dex/wombat/utils.d.ts +0 -10
- package/build/dex/wombat/utils.js +0 -79
- package/build/dex/wombat/utils.js.map +0 -1
- package/build/dex/wombat/wombat-bmw.d.ts +0 -40
- package/build/dex/wombat/wombat-bmw.js +0 -136
- package/build/dex/wombat/wombat-bmw.js.map +0 -1
- package/build/dex/wombat/wombat-pool.d.ts +0 -60
- package/build/dex/wombat/wombat-pool.js +0 -488
- package/build/dex/wombat/wombat-pool.js.map +0 -1
- package/build/dex/wombat/wombat-quoter.d.ts +0 -17
- package/build/dex/wombat/wombat-quoter.js +0 -192
- package/build/dex/wombat/wombat-quoter.js.map +0 -1
- package/build/dex/wombat/wombat.d.ts +0 -58
- package/build/dex/wombat/wombat.js +0 -298
- package/build/dex/wombat/wombat.js.map +0 -1
- package/build/dex/wusdm/config.d.ts +0 -3
- package/build/dex/wusdm/config.js +0 -43
- package/build/dex/wusdm/config.js.map +0 -1
- package/build/dex/wusdm/constants.d.ts +0 -2
- package/build/dex/wusdm/constants.js +0 -6
- package/build/dex/wusdm/constants.js.map +0 -1
- package/build/dex/wusdm/types.d.ts +0 -18
- package/build/dex/wusdm/types.js +0 -11
- package/build/dex/wusdm/types.js.map +0 -1
- package/build/dex/wusdm/wusdm-pool.d.ts +0 -21
- package/build/dex/wusdm/wusdm-pool.js +0 -74
- package/build/dex/wusdm/wusdm-pool.js.map +0 -1
- package/build/dex/wusdm/wusdm.d.ts +0 -46
- package/build/dex/wusdm/wusdm.js +0 -243
- package/build/dex/wusdm/wusdm.js.map +0 -1
- package/build/dex/zerox/config.d.ts +0 -2
- package/build/dex/zerox/config.js +0 -33
- package/build/dex/zerox/config.js.map +0 -1
- package/build/dex/zerox/index.d.ts +0 -22
- package/build/dex/zerox/index.js +0 -225
- package/build/dex/zerox/index.js.map +0 -1
- package/build/dex/zerox/order.d.ts +0 -88
- package/build/dex/zerox/order.js +0 -53
- package/build/dex/zerox/order.js.map +0 -1
- package/build/dex/zerox/types.d.ts +0 -73
- package/build/dex/zerox/types.js +0 -21
- package/build/dex/zerox/types.js.map +0 -1
- /package/build/dex/{bunni-v2 → pancakeswap-infinity}/types.js +0 -0
- /package/build/dex/{concentrator-arusd → renegade/api}/types.js +0 -0
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.computeSwap = computeSwap;
|
|
4
|
-
const ldf_1 = require("../ldf");
|
|
5
|
-
const FullMathX96_1 = require("../lib/FullMathX96");
|
|
6
|
-
const IdleBalance_1 = require("../lib/IdleBalance");
|
|
7
|
-
const Math_1 = require("../lib/Math");
|
|
8
|
-
const QueryLDF_1 = require("../lib/QueryLDF");
|
|
9
|
-
const TickMath_1 = require("../lib/TickMath");
|
|
10
|
-
const SwapMath_1 = require("./SwapMath");
|
|
11
|
-
const EPSILON_FEE = 30n;
|
|
12
|
-
function computeSwap(input, dexParams) {
|
|
13
|
-
const zeroForOne = input.swapParams.zeroForOne;
|
|
14
|
-
const exactIn = input.swapParams.amountSpecified < 0n;
|
|
15
|
-
let updatedSqrtPriceX96 = 0n;
|
|
16
|
-
let inputAmount = exactIn ? -input.swapParams.amountSpecified : 0n;
|
|
17
|
-
let outputAmount = exactIn ? 0n : input.swapParams.amountSpecified;
|
|
18
|
-
const updatedRoundedTickLiquidity = (input.totalLiquidity * input.liquidityDensityOfRoundedTickX96) >> 96n;
|
|
19
|
-
let updatedTick = input.currentTick;
|
|
20
|
-
let sqrtPriceLimitX96 = input.swapParams.sqrtPriceLimitX96;
|
|
21
|
-
const minSqrtPrice = TickMath_1.TickMath.getSqrtPriceAtTick(TickMath_1.TickMath.minUsableTick(input.key.tickSpacing));
|
|
22
|
-
const maxSqrtPrice = TickMath_1.TickMath.getSqrtPriceAtTick(TickMath_1.TickMath.maxUsableTick(input.key.tickSpacing));
|
|
23
|
-
if ((zeroForOne && sqrtPriceLimitX96 <= minSqrtPrice) ||
|
|
24
|
-
(!zeroForOne && sqrtPriceLimitX96 >= maxSqrtPrice)) {
|
|
25
|
-
sqrtPriceLimitX96 = zeroForOne ? minSqrtPrice + 1n : maxSqrtPrice - 1n;
|
|
26
|
-
}
|
|
27
|
-
const { roundedTick, nextRoundedTick } = (0, Math_1.roundTick)(input.currentTick, input.key.tickSpacing);
|
|
28
|
-
let naiveSwapResultSqrtPriceX96 = 0n;
|
|
29
|
-
let naiveSwapAmountIn = 0n;
|
|
30
|
-
let naiveSwapAmountOut = 0n;
|
|
31
|
-
if (updatedRoundedTickLiquidity !== 0n) {
|
|
32
|
-
const tickNext = zeroForOne ? roundedTick : nextRoundedTick;
|
|
33
|
-
const sqrtPriceNextX96 = TickMath_1.TickMath.getSqrtPriceAtTick(tickNext);
|
|
34
|
-
({
|
|
35
|
-
sqrtPriceNextX96: naiveSwapResultSqrtPriceX96,
|
|
36
|
-
amountIn: naiveSwapAmountIn,
|
|
37
|
-
amountOut: naiveSwapAmountOut,
|
|
38
|
-
} = (0, SwapMath_1.computeSwapStep)(input.sqrtPriceX96, (0, SwapMath_1.getSqrtPriceTarget)(zeroForOne, sqrtPriceNextX96, sqrtPriceLimitX96), updatedRoundedTickLiquidity, input.swapParams.amountSpecified, 0n));
|
|
39
|
-
if (exactIn
|
|
40
|
-
? naiveSwapAmountIn === -input.swapParams.amountSpecified
|
|
41
|
-
: naiveSwapAmountOut === input.swapParams.amountSpecified) {
|
|
42
|
-
if (naiveSwapResultSqrtPriceX96 === sqrtPriceNextX96) {
|
|
43
|
-
updatedTick = zeroForOne ? tickNext - 1n : tickNext;
|
|
44
|
-
}
|
|
45
|
-
else if (naiveSwapResultSqrtPriceX96 !== input.sqrtPriceX96) {
|
|
46
|
-
updatedTick = TickMath_1.TickMath.getTickAtSqrtPrice(naiveSwapResultSqrtPriceX96);
|
|
47
|
-
}
|
|
48
|
-
naiveSwapAmountOut = (0, Math_1.min)(naiveSwapAmountOut, zeroForOne ? input.currentActiveBalance1 : input.currentActiveBalance0);
|
|
49
|
-
return {
|
|
50
|
-
updatedSqrtPriceX96: naiveSwapResultSqrtPriceX96,
|
|
51
|
-
updatedTick,
|
|
52
|
-
inputAmount: naiveSwapAmountIn,
|
|
53
|
-
outputAmount: naiveSwapAmountOut,
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
// swap crosses rounded tick
|
|
58
|
-
let inverseCumulativeAmountFnInput = 0n;
|
|
59
|
-
if (exactIn) {
|
|
60
|
-
inverseCumulativeAmountFnInput = zeroForOne
|
|
61
|
-
? input.currentActiveBalance0 + inputAmount
|
|
62
|
-
: input.currentActiveBalance1 + inputAmount;
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
inverseCumulativeAmountFnInput = zeroForOne
|
|
66
|
-
? input.currentActiveBalance1 - outputAmount
|
|
67
|
-
: input.currentActiveBalance0 - outputAmount;
|
|
68
|
-
}
|
|
69
|
-
// LDF compute swap
|
|
70
|
-
let { success, roundedTick: updatedRoundedTick, cumulativeAmount0_: cumulativeAmount0, cumulativeAmount1_: cumulativeAmount1, swapLiquidity, } = (0, ldf_1._computeSwap)(input.key, inverseCumulativeAmountFnInput, input.totalLiquidity, zeroForOne, exactIn, input.arithmeticMeanTick, input.currentTick, input.ldfParams, input.ldfState, input.liquidityDensityFunction, dexParams);
|
|
71
|
-
if (success) {
|
|
72
|
-
if (zeroForOne
|
|
73
|
-
? updatedRoundedTick >= roundedTick
|
|
74
|
-
: updatedRoundedTick <= roundedTick) {
|
|
75
|
-
if (updatedRoundedTickLiquidity === 0n) {
|
|
76
|
-
return {
|
|
77
|
-
updatedSqrtPriceX96: input.sqrtPriceX96,
|
|
78
|
-
updatedTick: input.currentTick,
|
|
79
|
-
inputAmount: 0n,
|
|
80
|
-
outputAmount: 0n,
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
const _tickNext = zeroForOne ? roundedTick : nextRoundedTick;
|
|
84
|
-
if (naiveSwapResultSqrtPriceX96 === TickMath_1.TickMath.getSqrtPriceAtTick(_tickNext)) {
|
|
85
|
-
updatedTick = zeroForOne ? _tickNext - 1n : _tickNext;
|
|
86
|
-
}
|
|
87
|
-
else if (naiveSwapResultSqrtPriceX96 !== input.sqrtPriceX96) {
|
|
88
|
-
updatedTick = TickMath_1.TickMath.getTickAtSqrtPrice(naiveSwapResultSqrtPriceX96);
|
|
89
|
-
}
|
|
90
|
-
naiveSwapAmountOut = (0, Math_1.min)(naiveSwapAmountOut, zeroForOne ? input.currentActiveBalance1 : input.currentActiveBalance0);
|
|
91
|
-
return {
|
|
92
|
-
updatedSqrtPriceX96: naiveSwapResultSqrtPriceX96,
|
|
93
|
-
updatedTick,
|
|
94
|
-
inputAmount: naiveSwapAmountIn,
|
|
95
|
-
outputAmount: naiveSwapAmountOut,
|
|
96
|
-
};
|
|
97
|
-
}
|
|
98
|
-
const tickStart = zeroForOne
|
|
99
|
-
? updatedRoundedTick + input.key.tickSpacing
|
|
100
|
-
: updatedRoundedTick;
|
|
101
|
-
const tickNext = zeroForOne
|
|
102
|
-
? updatedRoundedTick
|
|
103
|
-
: updatedRoundedTick + input.key.tickSpacing;
|
|
104
|
-
const startSqrtPriceX96 = TickMath_1.TickMath.getSqrtPriceAtTick(tickStart);
|
|
105
|
-
if ((zeroForOne && sqrtPriceLimitX96 <= startSqrtPriceX96) ||
|
|
106
|
-
(!zeroForOne && sqrtPriceLimitX96 >= startSqrtPriceX96)) {
|
|
107
|
-
const sqrtPriceNextX96 = TickMath_1.TickMath.getSqrtPriceAtTick(tickNext);
|
|
108
|
-
if (zeroForOne) {
|
|
109
|
-
cumulativeAmount0 = (0, Math_1.max)(cumulativeAmount0, input.currentActiveBalance0);
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
cumulativeAmount1 = (0, Math_1.max)(cumulativeAmount1, input.currentActiveBalance1);
|
|
113
|
-
}
|
|
114
|
-
let hitSqrtPriceLimit = false;
|
|
115
|
-
if (swapLiquidity === 0n || sqrtPriceLimitX96 === startSqrtPriceX96) {
|
|
116
|
-
[naiveSwapResultSqrtPriceX96, naiveSwapAmountIn, naiveSwapAmountOut] = [
|
|
117
|
-
startSqrtPriceX96,
|
|
118
|
-
0n,
|
|
119
|
-
0n,
|
|
120
|
-
];
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
const amountSpecifiedRemaining = exactIn
|
|
124
|
-
? -(inverseCumulativeAmountFnInput -
|
|
125
|
-
(zeroForOne ? cumulativeAmount0 : cumulativeAmount1))
|
|
126
|
-
: (zeroForOne ? cumulativeAmount1 : cumulativeAmount0) -
|
|
127
|
-
inverseCumulativeAmountFnInput;
|
|
128
|
-
({
|
|
129
|
-
sqrtPriceNextX96: naiveSwapResultSqrtPriceX96,
|
|
130
|
-
amountIn: naiveSwapAmountIn,
|
|
131
|
-
amountOut: naiveSwapAmountOut,
|
|
132
|
-
} = (0, SwapMath_1.computeSwapStep)(startSqrtPriceX96, (0, SwapMath_1.getSqrtPriceTarget)(zeroForOne, sqrtPriceNextX96, sqrtPriceLimitX96), swapLiquidity, amountSpecifiedRemaining, EPSILON_FEE));
|
|
133
|
-
if (naiveSwapResultSqrtPriceX96 === sqrtPriceLimitX96 &&
|
|
134
|
-
sqrtPriceLimitX96 !== sqrtPriceNextX96) {
|
|
135
|
-
hitSqrtPriceLimit = true;
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
if (!hitSqrtPriceLimit) {
|
|
139
|
-
updatedTick = tickStart;
|
|
140
|
-
if (naiveSwapResultSqrtPriceX96 === sqrtPriceNextX96) {
|
|
141
|
-
updatedTick = zeroForOne ? tickNext - 1n : tickNext;
|
|
142
|
-
}
|
|
143
|
-
else if (naiveSwapResultSqrtPriceX96 !== startSqrtPriceX96) {
|
|
144
|
-
updatedTick = TickMath_1.TickMath.getTickAtSqrtPrice(naiveSwapResultSqrtPriceX96);
|
|
145
|
-
}
|
|
146
|
-
updatedSqrtPriceX96 = naiveSwapResultSqrtPriceX96;
|
|
147
|
-
if (exactIn
|
|
148
|
-
? naiveSwapAmountIn === -input.swapParams.amountSpecified
|
|
149
|
-
: naiveSwapAmountOut === input.swapParams.amountSpecified) {
|
|
150
|
-
naiveSwapAmountOut = (0, Math_1.min)(naiveSwapAmountOut, zeroForOne
|
|
151
|
-
? input.currentActiveBalance1
|
|
152
|
-
: input.currentActiveBalance0);
|
|
153
|
-
return {
|
|
154
|
-
updatedSqrtPriceX96: naiveSwapResultSqrtPriceX96,
|
|
155
|
-
updatedTick,
|
|
156
|
-
inputAmount: naiveSwapAmountIn,
|
|
157
|
-
outputAmount: naiveSwapAmountOut,
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
if ((zeroForOne && cumulativeAmount1 < naiveSwapAmountOut) ||
|
|
161
|
-
(!zeroForOne && cumulativeAmount0 < naiveSwapAmountOut)) {
|
|
162
|
-
throw new Error('BunniSwapMath__SwapFailed()');
|
|
163
|
-
}
|
|
164
|
-
const updatedActiveBalance0 = zeroForOne
|
|
165
|
-
? cumulativeAmount0 + naiveSwapAmountIn
|
|
166
|
-
: cumulativeAmount0 - naiveSwapAmountOut;
|
|
167
|
-
const updatedActiveBalance1 = zeroForOne
|
|
168
|
-
? cumulativeAmount1 - naiveSwapAmountOut
|
|
169
|
-
: cumulativeAmount1 + naiveSwapAmountIn;
|
|
170
|
-
inputAmount = zeroForOne
|
|
171
|
-
? updatedActiveBalance0 - input.currentActiveBalance0
|
|
172
|
-
: updatedActiveBalance1 - input.currentActiveBalance1;
|
|
173
|
-
outputAmount = zeroForOne
|
|
174
|
-
? (0, Math_1.subReLU)(input.currentActiveBalance1, updatedActiveBalance1)
|
|
175
|
-
: (0, Math_1.subReLU)(input.currentActiveBalance0, updatedActiveBalance0);
|
|
176
|
-
return { updatedSqrtPriceX96, updatedTick, inputAmount, outputAmount };
|
|
177
|
-
}
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
updatedSqrtPriceX96 = sqrtPriceLimitX96;
|
|
181
|
-
updatedTick =
|
|
182
|
-
sqrtPriceLimitX96 === input.sqrtPriceX96
|
|
183
|
-
? input.currentTick
|
|
184
|
-
: TickMath_1.TickMath.getTickAtSqrtPrice(sqrtPriceLimitX96);
|
|
185
|
-
const { totalDensity0X96, totalDensity1X96 } = (0, QueryLDF_1.queryLDF)(input.key, updatedSqrtPriceX96, updatedTick, input.arithmeticMeanTick, input.liquidityDensityFunction, input.ldfParams, input.ldfState, 0n, 0n, IdleBalance_1.IdleBalanceLibrary.ZERO, dexParams);
|
|
186
|
-
const _updatedActiveBalance0 = FullMathX96_1.FullMathX96.fullMulX96Up(totalDensity0X96, input.totalLiquidity);
|
|
187
|
-
const _updatedActiveBalance1 = FullMathX96_1.FullMathX96.fullMulX96Up(totalDensity1X96, input.totalLiquidity);
|
|
188
|
-
if (zeroForOne) {
|
|
189
|
-
inputAmount = _updatedActiveBalance0 - input.currentActiveBalance0;
|
|
190
|
-
outputAmount = (0, Math_1.subReLU)(input.currentActiveBalance1, _updatedActiveBalance1);
|
|
191
|
-
}
|
|
192
|
-
else {
|
|
193
|
-
inputAmount = _updatedActiveBalance1 - input.currentActiveBalance1;
|
|
194
|
-
(0, Math_1.subReLU)(input.currentActiveBalance0, _updatedActiveBalance0);
|
|
195
|
-
}
|
|
196
|
-
return { updatedSqrtPriceX96, updatedTick, inputAmount, outputAmount };
|
|
197
|
-
}
|
|
198
|
-
//# sourceMappingURL=BunniSwapMath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BunniSwapMath.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/hook/BunniSwapMath.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare const MAX_SWAP_FEE: bigint;
|
|
2
|
-
export declare const MIN_FEE_AMOUNT: bigint;
|
|
3
|
-
export declare function getSqrtPriceTarget(zeroForOne: boolean, sqrtPriceNextX96: bigint, sqrtPriceLimitX96: bigint): bigint;
|
|
4
|
-
export declare function computeSwapStep(sqrtPriceCurrentX96: bigint, sqrtPriceTargetX96: bigint, liquidity: bigint, amountRemaining: bigint, feePips: bigint): {
|
|
5
|
-
sqrtPriceNextX96: bigint;
|
|
6
|
-
amountIn: bigint;
|
|
7
|
-
amountOut: bigint;
|
|
8
|
-
};
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MIN_FEE_AMOUNT = exports.MAX_SWAP_FEE = void 0;
|
|
4
|
-
exports.getSqrtPriceTarget = getSqrtPriceTarget;
|
|
5
|
-
exports.computeSwapStep = computeSwapStep;
|
|
6
|
-
const Math_1 = require("../lib/Math");
|
|
7
|
-
const SqrtPriceMath_1 = require("../lib/SqrtPriceMath");
|
|
8
|
-
exports.MAX_SWAP_FEE = 1000000n;
|
|
9
|
-
exports.MIN_FEE_AMOUNT = 1000n;
|
|
10
|
-
function getSqrtPriceTarget(zeroForOne, sqrtPriceNextX96, sqrtPriceLimitX96) {
|
|
11
|
-
return zeroForOne
|
|
12
|
-
? (0, Math_1.max)(sqrtPriceNextX96, sqrtPriceLimitX96)
|
|
13
|
-
: (0, Math_1.min)(sqrtPriceNextX96, sqrtPriceLimitX96);
|
|
14
|
-
}
|
|
15
|
-
function computeSwapStep(sqrtPriceCurrentX96, sqrtPriceTargetX96, liquidity, amountRemaining, feePips) {
|
|
16
|
-
let sqrtPriceNextX96 = 0n;
|
|
17
|
-
let amountIn = 0n;
|
|
18
|
-
let amountOut = 0n;
|
|
19
|
-
let feeAmount = 0n;
|
|
20
|
-
const zeroForOne = sqrtPriceCurrentX96 >= sqrtPriceTargetX96;
|
|
21
|
-
const exactIn = amountRemaining < 0n;
|
|
22
|
-
if (exactIn) {
|
|
23
|
-
const amountRemainingLessFee = (0, Math_1.min)((0, Math_1.mulDiv)(-amountRemaining, exports.MAX_SWAP_FEE - feePips, exports.MAX_SWAP_FEE), (0, Math_1.subReLU)(-amountRemaining, exports.MIN_FEE_AMOUNT));
|
|
24
|
-
amountIn = zeroForOne
|
|
25
|
-
? SqrtPriceMath_1.SqrtPriceMath.getAmount0Delta(sqrtPriceTargetX96, sqrtPriceCurrentX96, liquidity, true)
|
|
26
|
-
: SqrtPriceMath_1.SqrtPriceMath.getAmount1Delta(sqrtPriceCurrentX96, sqrtPriceTargetX96, liquidity, true);
|
|
27
|
-
if (amountRemainingLessFee >= amountIn) {
|
|
28
|
-
sqrtPriceNextX96 = sqrtPriceTargetX96;
|
|
29
|
-
feeAmount =
|
|
30
|
-
feePips === exports.MAX_SWAP_FEE
|
|
31
|
-
? amountIn
|
|
32
|
-
: (0, Math_1.max)((0, Math_1.mulDivUp)(amountIn, feePips, exports.MAX_SWAP_FEE - feePips), exports.MIN_FEE_AMOUNT);
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
amountIn = amountRemainingLessFee;
|
|
36
|
-
sqrtPriceNextX96 = SqrtPriceMath_1.SqrtPriceMath.getNextSqrtPriceFromInput(sqrtPriceCurrentX96, liquidity, amountRemainingLessFee, zeroForOne);
|
|
37
|
-
feeAmount = (0, Math_1.max)(-amountRemaining - amountIn, exports.MIN_FEE_AMOUNT);
|
|
38
|
-
}
|
|
39
|
-
amountOut = zeroForOne
|
|
40
|
-
? SqrtPriceMath_1.SqrtPriceMath.getAmount1Delta(sqrtPriceNextX96, sqrtPriceCurrentX96, liquidity, false)
|
|
41
|
-
: SqrtPriceMath_1.SqrtPriceMath.getAmount0Delta(sqrtPriceCurrentX96, sqrtPriceNextX96, liquidity, false);
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
amountOut = zeroForOne
|
|
45
|
-
? SqrtPriceMath_1.SqrtPriceMath.getAmount1Delta(sqrtPriceTargetX96, sqrtPriceCurrentX96, liquidity, false)
|
|
46
|
-
: SqrtPriceMath_1.SqrtPriceMath.getAmount0Delta(sqrtPriceCurrentX96, sqrtPriceTargetX96, liquidity, false);
|
|
47
|
-
if (amountRemaining >= amountOut) {
|
|
48
|
-
sqrtPriceNextX96 = sqrtPriceTargetX96;
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
amountOut = amountRemaining;
|
|
52
|
-
sqrtPriceNextX96 = SqrtPriceMath_1.SqrtPriceMath.getNextSqrtPriceFromOutput(sqrtPriceCurrentX96, liquidity, amountOut, zeroForOne);
|
|
53
|
-
}
|
|
54
|
-
amountIn = zeroForOne
|
|
55
|
-
? SqrtPriceMath_1.SqrtPriceMath.getAmount0Delta(sqrtPriceNextX96, sqrtPriceCurrentX96, liquidity, true)
|
|
56
|
-
: SqrtPriceMath_1.SqrtPriceMath.getAmount1Delta(sqrtPriceCurrentX96, sqrtPriceNextX96, liquidity, true);
|
|
57
|
-
feeAmount = (0, Math_1.max)((0, Math_1.mulDivUp)(amountIn, feePips, exports.MAX_SWAP_FEE - feePips), exports.MIN_FEE_AMOUNT);
|
|
58
|
-
}
|
|
59
|
-
if (exactIn)
|
|
60
|
-
amountIn = (0, Math_1.min)(amountIn + feeAmount, -amountRemaining);
|
|
61
|
-
else
|
|
62
|
-
amountIn += feeAmount;
|
|
63
|
-
return { sqrtPriceNextX96, amountIn, amountOut };
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=SwapMath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SwapMath.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/hook/SwapMath.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { PoolState, SwapParams } from '../types';
|
|
2
|
-
export declare abstract class FeeOverrideHooklet {
|
|
3
|
-
static beforeSwap(state: PoolState, params: SwapParams): {
|
|
4
|
-
success: boolean;
|
|
5
|
-
feeOverridden: boolean;
|
|
6
|
-
fee: bigint;
|
|
7
|
-
priceOverridden: boolean;
|
|
8
|
-
sqrtPriceX96: bigint;
|
|
9
|
-
};
|
|
10
|
-
static beforeSwapView(state: PoolState, params: SwapParams): {
|
|
11
|
-
success: boolean;
|
|
12
|
-
feeOverridden: boolean;
|
|
13
|
-
fee: bigint;
|
|
14
|
-
priceOverridden: boolean;
|
|
15
|
-
sqrtPriceX96: bigint;
|
|
16
|
-
};
|
|
17
|
-
static afterSwap(state: PoolState): {
|
|
18
|
-
success: boolean;
|
|
19
|
-
};
|
|
20
|
-
static afterSwapView(state: PoolState): {
|
|
21
|
-
success: boolean;
|
|
22
|
-
};
|
|
23
|
-
static _beforeSwap(state: PoolState, params: SwapParams): {
|
|
24
|
-
success: boolean;
|
|
25
|
-
feeOverridden: boolean;
|
|
26
|
-
fee: bigint;
|
|
27
|
-
priceOverridden: boolean;
|
|
28
|
-
sqrtPriceX96: bigint;
|
|
29
|
-
};
|
|
30
|
-
static _afterSwap(state: PoolState): {
|
|
31
|
-
success: boolean;
|
|
32
|
-
};
|
|
33
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FeeOverrideHooklet = void 0;
|
|
4
|
-
class FeeOverrideHooklet {
|
|
5
|
-
static beforeSwap(state, params) {
|
|
6
|
-
return this._beforeSwap(state, params);
|
|
7
|
-
}
|
|
8
|
-
static beforeSwapView(state, params) {
|
|
9
|
-
return this._beforeSwap(state, params);
|
|
10
|
-
}
|
|
11
|
-
static afterSwap(state) {
|
|
12
|
-
return this._afterSwap(state);
|
|
13
|
-
}
|
|
14
|
-
static afterSwapView(state) {
|
|
15
|
-
return this._afterSwap(state);
|
|
16
|
-
}
|
|
17
|
-
static _beforeSwap(state, params) {
|
|
18
|
-
return {
|
|
19
|
-
success: true,
|
|
20
|
-
feeOverridden: params.zeroForOne
|
|
21
|
-
? state.overrideZeroToOne
|
|
22
|
-
: state.overrideOneToZero,
|
|
23
|
-
fee: params.zeroForOne ? state.feeZeroToOne : state.feeOneToZero,
|
|
24
|
-
priceOverridden: false,
|
|
25
|
-
sqrtPriceX96: 0n,
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
static _afterSwap(state) {
|
|
29
|
-
return { success: true };
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
exports.FeeOverrideHooklet = FeeOverrideHooklet;
|
|
33
|
-
//# sourceMappingURL=FeeOverrideHooklet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FeeOverrideHooklet.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/hooklet/FeeOverrideHooklet.ts"],"names":[],"mappings":";;;AAEA,MAAsB,kBAAkB;IACtC,MAAM,CAAC,UAAU,CACf,KAAgB,EAChB,MAAkB;QAQlB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,cAAc,CACnB,KAAgB,EAChB,MAAkB;QAQlB,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,KAAgB;QAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,KAAgB;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,WAAW,CAChB,KAAgB,EAChB,MAAkB;QAQlB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,MAAM,CAAC,UAAU;gBAC9B,CAAC,CAAC,KAAK,CAAC,iBAAiB;gBACzB,CAAC,CAAC,KAAK,CAAC,iBAAiB;YAC3B,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY;YAChE,eAAe,EAAE,KAAK;YACtB,YAAY,EAAE,EAAE;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAgB;QAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;CACF;AA3DD,gDA2DC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { DexParams, PoolState, SwapParams } from '../types';
|
|
2
|
-
export declare function _hookletBeforeSwap(state: PoolState, params: SwapParams, dexParams: DexParams): {
|
|
3
|
-
success: boolean;
|
|
4
|
-
feeOverridden: boolean;
|
|
5
|
-
fee: bigint;
|
|
6
|
-
priceOverridden: boolean;
|
|
7
|
-
sqrtPriceX96: bigint;
|
|
8
|
-
};
|
|
9
|
-
export declare function _hookletBeforeSwapView(state: PoolState, params: SwapParams, dexParams: DexParams): {
|
|
10
|
-
success: boolean;
|
|
11
|
-
feeOverridden: boolean;
|
|
12
|
-
fee: bigint;
|
|
13
|
-
priceOverridden: boolean;
|
|
14
|
-
sqrtPriceX96: bigint;
|
|
15
|
-
};
|
|
16
|
-
export declare function _hookletAfterSwap(state: PoolState, dexParams: DexParams): {
|
|
17
|
-
success: boolean;
|
|
18
|
-
};
|
|
19
|
-
export declare function _hookletAfterSwapView(state: PoolState, dexParams: DexParams): {
|
|
20
|
-
success: boolean;
|
|
21
|
-
};
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports._hookletBeforeSwap = _hookletBeforeSwap;
|
|
4
|
-
exports._hookletBeforeSwapView = _hookletBeforeSwapView;
|
|
5
|
-
exports._hookletAfterSwap = _hookletAfterSwap;
|
|
6
|
-
exports._hookletAfterSwapView = _hookletAfterSwapView;
|
|
7
|
-
const constants_1 = require("../../../constants");
|
|
8
|
-
function _hookletBeforeSwap(state, params, dexParams) {
|
|
9
|
-
if (state.hooklet === constants_1.NULL_ADDRESS) {
|
|
10
|
-
return {
|
|
11
|
-
success: true,
|
|
12
|
-
feeOverridden: false,
|
|
13
|
-
fee: 0n,
|
|
14
|
-
priceOverridden: false,
|
|
15
|
-
sqrtPriceX96: 0n,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
const map = dexParams.hooklets ?? {};
|
|
19
|
-
const module = map[state.hooklet.toLowerCase()];
|
|
20
|
-
if (!module) {
|
|
21
|
-
throw new Error(`Hooklet ${state.hooklet} not yet supported`);
|
|
22
|
-
}
|
|
23
|
-
return module.beforeSwap(state, params);
|
|
24
|
-
}
|
|
25
|
-
function _hookletBeforeSwapView(state, params, dexParams) {
|
|
26
|
-
if (state.hooklet === constants_1.NULL_ADDRESS) {
|
|
27
|
-
return {
|
|
28
|
-
success: true,
|
|
29
|
-
feeOverridden: false,
|
|
30
|
-
fee: 0n,
|
|
31
|
-
priceOverridden: false,
|
|
32
|
-
sqrtPriceX96: 0n,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
const map = dexParams.hooklets ?? {};
|
|
36
|
-
const module = map[state.hooklet.toLowerCase()];
|
|
37
|
-
if (!module) {
|
|
38
|
-
throw new Error(`Hooklet ${state.hooklet} not yet supported`);
|
|
39
|
-
}
|
|
40
|
-
return module.beforeSwapView(state, params);
|
|
41
|
-
}
|
|
42
|
-
function _hookletAfterSwap(state, dexParams) {
|
|
43
|
-
if (state.hooklet === constants_1.NULL_ADDRESS) {
|
|
44
|
-
return { success: true };
|
|
45
|
-
}
|
|
46
|
-
const map = dexParams.hooklets ?? {};
|
|
47
|
-
const module = map[state.hooklet.toLowerCase()];
|
|
48
|
-
if (!module) {
|
|
49
|
-
throw new Error(`Hooklet ${state.hooklet} not yet supported`);
|
|
50
|
-
}
|
|
51
|
-
return module.afterSwap();
|
|
52
|
-
}
|
|
53
|
-
function _hookletAfterSwapView(state, dexParams) {
|
|
54
|
-
if (state.hooklet === constants_1.NULL_ADDRESS) {
|
|
55
|
-
return { success: true };
|
|
56
|
-
}
|
|
57
|
-
const map = dexParams.hooklets ?? {};
|
|
58
|
-
const module = map[state.hooklet.toLowerCase()];
|
|
59
|
-
if (!module) {
|
|
60
|
-
throw new Error(`Hooklet ${state.hooklet} not yet supported`);
|
|
61
|
-
}
|
|
62
|
-
return module.afterSwapView();
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/hooklet/index.ts"],"names":[],"mappings":";;AAGA,gDA6BC;AAED,wDA6BC;AAED,8CAkBC;AAED,sDAkBC;AAvGD,kDAAkD;AAGlD,SAAgB,kBAAkB,CAChC,KAAgB,EAChB,MAAkB,EAClB,SAAoB;IAQpB,IAAI,KAAK,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,KAAK;YACpB,GAAG,EAAE,EAAE;YACP,eAAe,EAAE,KAAK;YACtB,YAAY,EAAE,EAAE;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,SAAgB,sBAAsB,CACpC,KAAgB,EAChB,MAAkB,EAClB,SAAoB;IAQpB,IAAI,KAAK,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,KAAK;YACpB,GAAG,EAAE,EAAE;YACP,eAAe,EAAE,KAAK;YACtB,YAAY,EAAE,EAAE;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAED,SAAgB,iBAAiB,CAC/B,KAAgB,EAChB,SAAoB;IAIpB,IAAI,KAAK,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,SAAS,EAAE,CAAC;AAC5B,CAAC;AAED,SAAgB,qBAAqB,CACnC,KAAgB,EAChB,SAAoB;IAIpB,IAAI,KAAK,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,aAAa,EAAE,CAAC;AAChC,CAAC"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { PoolKey } from '../types';
|
|
2
|
-
import { ShiftMode } from './ShiftMode';
|
|
3
|
-
export declare abstract class CarpetedDoubleGeometricDistribution {
|
|
4
|
-
static query(key: PoolKey, roundedTick: bigint, twapTick: bigint, spotPriceTick: bigint, ldfParams: string, ldfState: string): {
|
|
5
|
-
liquidityDensityX96_: bigint;
|
|
6
|
-
cumulativeAmount0DensityX96: bigint;
|
|
7
|
-
cumulativeAmount1DensityX96: bigint;
|
|
8
|
-
newLdfState: string;
|
|
9
|
-
shouldSurge: boolean;
|
|
10
|
-
};
|
|
11
|
-
static computeSwap(key: PoolKey, inverseCumulativeAmountInput: bigint, totalLiquidity: bigint, zeroForOne: boolean, exactIn: boolean, twapTick: bigint, spotPriceTick: bigint, ldfParams: string, ldfState: string): {
|
|
12
|
-
success: boolean;
|
|
13
|
-
roundedTick: bigint;
|
|
14
|
-
cumulativeAmount0_: bigint;
|
|
15
|
-
cumulativeAmount1_: bigint;
|
|
16
|
-
swapLiquidity: bigint;
|
|
17
|
-
};
|
|
18
|
-
static cumulativeAmount0(key: PoolKey, roundedTick: bigint, totalLiquidity: bigint, twapTick: bigint, spotPriceTick: bigint, ldfParams: string, ldfState: string): bigint;
|
|
19
|
-
static cumulativeAmount1(key: PoolKey, roundedTick: bigint, totalLiquidity: bigint, twapTick: bigint, spotPriceTick: bigint, ldfParams: string, ldfState: string): bigint;
|
|
20
|
-
static _decodeState(ldfState: string): {
|
|
21
|
-
initialized: boolean;
|
|
22
|
-
lastMinTick: bigint;
|
|
23
|
-
};
|
|
24
|
-
static _encodeState(lastMinTick: bigint): string;
|
|
25
|
-
}
|
|
26
|
-
export declare abstract class LibCarpetedDoubleGeometricDistribution {
|
|
27
|
-
static query(roundedTick: bigint, tickSpacing: bigint, params: Params): {
|
|
28
|
-
liquidityDensityX96_: bigint;
|
|
29
|
-
cumulativeAmount0DensityX96: bigint;
|
|
30
|
-
cumulativeAmount1DensityX96: bigint;
|
|
31
|
-
};
|
|
32
|
-
static cumulativeAmount0(roundedTick: bigint, totalLiquidity: bigint, tickSpacing: bigint, params: Params): bigint;
|
|
33
|
-
static cumulativeAmount1(roundedTick: bigint, totalLiquidity: bigint, tickSpacing: bigint, params: Params): bigint;
|
|
34
|
-
static inverseCumulativeAmount0(cumulativeAmount0_: bigint, totalLiquidity: bigint, tickSpacing: bigint, params: Params): {
|
|
35
|
-
success: boolean;
|
|
36
|
-
roundedTick: bigint;
|
|
37
|
-
};
|
|
38
|
-
static inverseCumulativeAmount1(cumulativeAmount1_: bigint, totalLiquidity: bigint, tickSpacing: bigint, params: Params): {
|
|
39
|
-
success: boolean;
|
|
40
|
-
roundedTick: bigint;
|
|
41
|
-
};
|
|
42
|
-
static liquidityDensityX96(roundedTick: bigint, tickSpacing: bigint, params: Params): bigint;
|
|
43
|
-
static computeSwap(inverseCumulativeAmountInput: bigint, totalLiquidity: bigint, zeroForOne: boolean, exactIn: boolean, tickSpacing: bigint, params: Params): {
|
|
44
|
-
success: boolean;
|
|
45
|
-
roundedTick: bigint;
|
|
46
|
-
cumulativeAmount0_: bigint;
|
|
47
|
-
cumulativeAmount1_: bigint;
|
|
48
|
-
swapLiquidity: bigint;
|
|
49
|
-
};
|
|
50
|
-
static getCarpetedLiquidity(totalLiquidity: bigint, tickSpacing: bigint, minTick: bigint, length: bigint, weightCarpet: bigint): {
|
|
51
|
-
leftCarpetLiquidity: bigint;
|
|
52
|
-
mainLiquidity: bigint;
|
|
53
|
-
rightCarpetLiquidity: bigint;
|
|
54
|
-
minUsableTick: bigint;
|
|
55
|
-
maxUsableTick: bigint;
|
|
56
|
-
};
|
|
57
|
-
static decodeParams(twapTick: bigint, tickSpacing: bigint, ldfParams: string): Params;
|
|
58
|
-
}
|
|
59
|
-
type Params = {
|
|
60
|
-
minTick: bigint;
|
|
61
|
-
length0: bigint;
|
|
62
|
-
alpha0X96: bigint;
|
|
63
|
-
weight0: bigint;
|
|
64
|
-
length1: bigint;
|
|
65
|
-
alpha1X96: bigint;
|
|
66
|
-
weight1: bigint;
|
|
67
|
-
weightCarpet: bigint;
|
|
68
|
-
shiftMode: ShiftMode;
|
|
69
|
-
};
|
|
70
|
-
export {};
|