@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,90 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.queryLDF = queryLDF;
|
|
4
|
-
const ldf_1 = require("../ldf");
|
|
5
|
-
const Constants_1 = require("./Constants");
|
|
6
|
-
const FullMathX96_1 = require("./FullMathX96");
|
|
7
|
-
const IdleBalance_1 = require("./IdleBalance");
|
|
8
|
-
const LiquidityAmounts_1 = require("./LiquidityAmounts");
|
|
9
|
-
const Math_1 = require("./Math");
|
|
10
|
-
const TickMath_1 = require("./TickMath");
|
|
11
|
-
function queryLDF(key, sqrtPriceX96, tick, arithmeticMeanTick, ldf, ldfParams, ldfState, balance0, balance1, idleBalance, dexParams) {
|
|
12
|
-
let totalLiquidity = 0n;
|
|
13
|
-
let totalDensity0X96 = 0n;
|
|
14
|
-
let totalDensity1X96 = 0n;
|
|
15
|
-
let liquidityDensityOfRoundedTickX96 = 0n;
|
|
16
|
-
let activeBalance0 = 0n;
|
|
17
|
-
let activeBalance1 = 0n;
|
|
18
|
-
let newLdfState = Constants_1.ZERO_BYTES_32;
|
|
19
|
-
let shouldSurge = false;
|
|
20
|
-
const { roundedTick, nextRoundedTick } = (0, Math_1.roundTick)(tick, key.tickSpacing);
|
|
21
|
-
const roundedTickSqrtRatio = TickMath_1.TickMath.getSqrtPriceAtTick(roundedTick);
|
|
22
|
-
const nextRoundedTickSqrtRatio = TickMath_1.TickMath.getSqrtPriceAtTick(nextRoundedTick);
|
|
23
|
-
let density0RightOfRoundedTickX96;
|
|
24
|
-
let density1LeftOfRoundedTickX96;
|
|
25
|
-
({
|
|
26
|
-
liquidityDensityX96_: liquidityDensityOfRoundedTickX96,
|
|
27
|
-
cumulativeAmount0DensityX96: density0RightOfRoundedTickX96,
|
|
28
|
-
cumulativeAmount1DensityX96: density1LeftOfRoundedTickX96,
|
|
29
|
-
newLdfState,
|
|
30
|
-
shouldSurge,
|
|
31
|
-
} = (0, ldf_1._query)(key, roundedTick, arithmeticMeanTick, tick, ldfParams, ldfState, ldf, dexParams));
|
|
32
|
-
const { amount0: density0OfRoundedTickX96, amount1: density1OfRoundedTickX96, } = LiquidityAmounts_1.LiquidityAmounts.getAmountsForLiquidity(sqrtPriceX96, roundedTickSqrtRatio, nextRoundedTickSqrtRatio, liquidityDensityOfRoundedTickX96, true);
|
|
33
|
-
totalDensity0X96 = density0RightOfRoundedTickX96 + density0OfRoundedTickX96;
|
|
34
|
-
totalDensity1X96 = density1LeftOfRoundedTickX96 + density1OfRoundedTickX96;
|
|
35
|
-
if (!shouldSurge) {
|
|
36
|
-
const { rawBalance, isToken0 } = IdleBalance_1.IdleBalanceLibrary.fromIdleBalance(idleBalance);
|
|
37
|
-
if (isToken0) {
|
|
38
|
-
balance0 = (0, Math_1.subReLU)(balance0, rawBalance);
|
|
39
|
-
}
|
|
40
|
-
else {
|
|
41
|
-
balance1 = (0, Math_1.subReLU)(balance1, rawBalance);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
if (balance0 !== 0n || balance1 !== 0n) {
|
|
45
|
-
const noToken0 = balance0 === 0n || totalDensity0X96 === 0n;
|
|
46
|
-
const noToken1 = balance1 === 0n || totalDensity1X96 === 0n;
|
|
47
|
-
const totalLiquidityEstimate0 = noToken0
|
|
48
|
-
? 0n
|
|
49
|
-
: (0, Math_1.mulDiv)(balance0, Constants_1.Q96, totalDensity0X96);
|
|
50
|
-
const totalLiquidityEstimate1 = noToken1
|
|
51
|
-
? 0n
|
|
52
|
-
: (0, Math_1.mulDiv)(balance1, Constants_1.Q96, totalDensity1X96);
|
|
53
|
-
const useLiquidityEstimate0 = (totalLiquidityEstimate0 < totalLiquidityEstimate1 ||
|
|
54
|
-
totalDensity1X96 === 0n) &&
|
|
55
|
-
totalDensity0X96 !== 0n;
|
|
56
|
-
if (useLiquidityEstimate0) {
|
|
57
|
-
totalLiquidity = noToken0
|
|
58
|
-
? 0n
|
|
59
|
-
: (0, Math_1.roundUpFullMulDivResult)(balance0, Constants_1.Q96, totalDensity0X96, totalLiquidityEstimate0);
|
|
60
|
-
activeBalance0 = noToken0
|
|
61
|
-
? 0n
|
|
62
|
-
: (0, Math_1.min)(balance0, FullMathX96_1.FullMathX96.fullMulX96(totalLiquidityEstimate0, totalDensity0X96));
|
|
63
|
-
activeBalance1 = noToken1
|
|
64
|
-
? 0n
|
|
65
|
-
: (0, Math_1.min)(balance1, FullMathX96_1.FullMathX96.fullMulX96(totalLiquidityEstimate0, totalDensity1X96));
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
totalLiquidity = noToken1
|
|
69
|
-
? 0n
|
|
70
|
-
: (0, Math_1.roundUpFullMulDivResult)(balance1, Constants_1.Q96, totalDensity1X96, totalLiquidityEstimate1);
|
|
71
|
-
activeBalance0 = noToken0
|
|
72
|
-
? 0n
|
|
73
|
-
: (0, Math_1.min)(balance0, FullMathX96_1.FullMathX96.fullMulX96(totalLiquidityEstimate1, totalDensity0X96));
|
|
74
|
-
activeBalance1 = noToken1
|
|
75
|
-
? 0n
|
|
76
|
-
: (0, Math_1.min)(balance1, FullMathX96_1.FullMathX96.fullMulX96(totalLiquidityEstimate1, totalDensity1X96));
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
return {
|
|
80
|
-
totalLiquidity,
|
|
81
|
-
totalDensity0X96,
|
|
82
|
-
totalDensity1X96,
|
|
83
|
-
liquidityDensityOfRoundedTickX96,
|
|
84
|
-
activeBalance0,
|
|
85
|
-
activeBalance1,
|
|
86
|
-
newLdfState,
|
|
87
|
-
shouldSurge,
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
//# sourceMappingURL=QueryLDF.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryLDF.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/lib/QueryLDF.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.queryTwap = queryTwap;
|
|
4
|
-
const BunniHookLogic_1 = require("../logic/BunniHookLogic");
|
|
5
|
-
function queryTwap(state, twapSecondsAgo, blockTimestamp) {
|
|
6
|
-
const secondsAgos = [];
|
|
7
|
-
secondsAgos[0] = twapSecondsAgo;
|
|
8
|
-
secondsAgos[1] = 0n;
|
|
9
|
-
const tickCumulatives = (0, BunniHookLogic_1.observe)(state, secondsAgos, blockTimestamp);
|
|
10
|
-
const tickCumulativesDelta = tickCumulatives[1] - tickCumulatives[0];
|
|
11
|
-
return tickCumulativesDelta / twapSecondsAgo;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=QueryTwap.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueryTwap.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/lib/QueryTwap.ts"],"names":[],"mappings":";;AAGA,8BAYC;AAfD,4DAAkD;AAGlD,SAAgB,SAAS,CACvB,KAAgB,EAChB,cAAsB,EACtB,cAAsB;IAEtB,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,WAAW,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;IAChC,WAAW,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAEpB,MAAM,eAAe,GAAa,IAAA,wBAAO,EAAC,KAAK,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;IAC9E,MAAM,oBAAoB,GAAW,eAAe,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IAC7E,OAAO,oBAAoB,GAAG,cAAc,CAAC;AAC/C,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare abstract class SqrtPriceMath {
|
|
2
|
-
static getNextSqrtPriceFromAmount0RoundingUp(sqrtPX96: bigint, liquidity: bigint, amount: bigint, add: boolean): bigint;
|
|
3
|
-
static getNextSqrtPriceFromAmount1RoundingDown(sqrtPX96: bigint, liquidity: bigint, amount: bigint, add: boolean): bigint;
|
|
4
|
-
static getNextSqrtPriceFromInput(sqrtPX96: bigint, liquidity: bigint, amountIn: bigint, zeroForOne: boolean): bigint;
|
|
5
|
-
static getNextSqrtPriceFromOutput(sqrtPX96: bigint, liquidity: bigint, amountOut: bigint, zeroForOne: boolean): bigint;
|
|
6
|
-
static getAmount0Delta(sqrtPriceAX96: bigint, sqrtPriceBX96: bigint, liquidity: bigint, roundUp: boolean): bigint;
|
|
7
|
-
static getAmount1Delta(sqrtPriceAX96: bigint, sqrtPriceBX96: bigint, liquidity: bigint, roundUp: boolean): bigint;
|
|
8
|
-
}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SqrtPriceMath = void 0;
|
|
4
|
-
const bigint_constants_1 = require("../../../bigint-constants");
|
|
5
|
-
const Constants_1 = require("./Constants");
|
|
6
|
-
const Math_1 = require("./Math");
|
|
7
|
-
class SqrtPriceMath {
|
|
8
|
-
static getNextSqrtPriceFromAmount0RoundingUp(sqrtPX96, liquidity, amount, add) {
|
|
9
|
-
if (amount === 0n)
|
|
10
|
-
return sqrtPX96;
|
|
11
|
-
const numerator1 = liquidity << 96n;
|
|
12
|
-
if (add) {
|
|
13
|
-
const product = amount * sqrtPX96;
|
|
14
|
-
if (product / amount === sqrtPX96) {
|
|
15
|
-
const denominator = numerator1 + product;
|
|
16
|
-
if (denominator >= numerator1) {
|
|
17
|
-
return (0, Math_1.mulDivUp)(numerator1, sqrtPX96, denominator);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return (0, Math_1.divUp)(numerator1, numerator1 / sqrtPX96 + amount);
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
const product = amount * sqrtPX96;
|
|
24
|
-
if (product / amount !== sqrtPX96 || numerator1 <= product) {
|
|
25
|
-
throw new Error('PriceOverflow');
|
|
26
|
-
}
|
|
27
|
-
const denominator = numerator1 - product;
|
|
28
|
-
return (0, Math_1.mulDivUp)(numerator1, sqrtPX96, denominator);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
static getNextSqrtPriceFromAmount1RoundingDown(sqrtPX96, liquidity, amount, add) {
|
|
32
|
-
if (add) {
|
|
33
|
-
const quotient = amount <= bigint_constants_1.BI_MAX_UINT160
|
|
34
|
-
? (amount << 96n) / liquidity
|
|
35
|
-
: (0, Math_1.mulDiv)(amount, Constants_1.Q96, liquidity);
|
|
36
|
-
return sqrtPX96 + quotient;
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
const quotient = amount <= bigint_constants_1.BI_MAX_UINT160
|
|
40
|
-
? (0, Math_1.divUp)(amount << 96n, liquidity)
|
|
41
|
-
: (0, Math_1.mulDivUp)(amount, Constants_1.Q96, liquidity);
|
|
42
|
-
if (sqrtPX96 <= quotient) {
|
|
43
|
-
throw new Error('NotEnoughLiquidity');
|
|
44
|
-
}
|
|
45
|
-
return sqrtPX96 - quotient;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
static getNextSqrtPriceFromInput(sqrtPX96, liquidity, amountIn, zeroForOne) {
|
|
49
|
-
if (sqrtPX96 === 0n || liquidity === 0n) {
|
|
50
|
-
throw new Error('InvalidPriceOrLiquidity');
|
|
51
|
-
}
|
|
52
|
-
return zeroForOne
|
|
53
|
-
? this.getNextSqrtPriceFromAmount0RoundingUp(sqrtPX96, liquidity, amountIn, true)
|
|
54
|
-
: this.getNextSqrtPriceFromAmount1RoundingDown(sqrtPX96, liquidity, amountIn, true);
|
|
55
|
-
}
|
|
56
|
-
static getNextSqrtPriceFromOutput(sqrtPX96, liquidity, amountOut, zeroForOne) {
|
|
57
|
-
if (sqrtPX96 === 0n || liquidity === 0n) {
|
|
58
|
-
throw new Error('InvalidPriceOrLiquidity');
|
|
59
|
-
}
|
|
60
|
-
return zeroForOne
|
|
61
|
-
? this.getNextSqrtPriceFromAmount1RoundingDown(sqrtPX96, liquidity, amountOut, false)
|
|
62
|
-
: this.getNextSqrtPriceFromAmount0RoundingUp(sqrtPX96, liquidity, amountOut, false);
|
|
63
|
-
}
|
|
64
|
-
static getAmount0Delta(sqrtPriceAX96, sqrtPriceBX96, liquidity, roundUp) {
|
|
65
|
-
if (sqrtPriceAX96 > sqrtPriceBX96) {
|
|
66
|
-
[sqrtPriceAX96, sqrtPriceBX96] = [sqrtPriceBX96, sqrtPriceAX96];
|
|
67
|
-
}
|
|
68
|
-
if (sqrtPriceAX96 === 0n) {
|
|
69
|
-
throw new Error('InvalidPrice');
|
|
70
|
-
}
|
|
71
|
-
const numerator1 = liquidity << 96n;
|
|
72
|
-
const numerator2 = sqrtPriceBX96 - sqrtPriceAX96;
|
|
73
|
-
return roundUp
|
|
74
|
-
? (0, Math_1.divUp)((0, Math_1.mulDivUp)(numerator1, numerator2, sqrtPriceBX96), sqrtPriceAX96)
|
|
75
|
-
: (0, Math_1.mulDiv)(numerator1, numerator2, sqrtPriceBX96) / sqrtPriceAX96;
|
|
76
|
-
}
|
|
77
|
-
static getAmount1Delta(sqrtPriceAX96, sqrtPriceBX96, liquidity, roundUp) {
|
|
78
|
-
return roundUp
|
|
79
|
-
? (0, Math_1.mulDivUp)(liquidity, sqrtPriceBX96 - sqrtPriceAX96, Constants_1.Q96)
|
|
80
|
-
: (0, Math_1.mulDiv)(liquidity, sqrtPriceBX96 - sqrtPriceAX96, Constants_1.Q96);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
exports.SqrtPriceMath = SqrtPriceMath;
|
|
84
|
-
//# sourceMappingURL=SqrtPriceMath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SqrtPriceMath.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/lib/SqrtPriceMath.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export declare abstract class TickMath {
|
|
2
|
-
private constructor();
|
|
3
|
-
static MIN_TICK: bigint;
|
|
4
|
-
static MAX_TICK: bigint;
|
|
5
|
-
static MIN_SQRT_PRICE: bigint;
|
|
6
|
-
static MAX_SQRT_PRICE: bigint;
|
|
7
|
-
static maxUsableTick(tickSpacing: bigint): bigint;
|
|
8
|
-
static minUsableTick(tickSpacing: bigint): bigint;
|
|
9
|
-
static getSqrtPriceAtTick(tick: bigint): bigint;
|
|
10
|
-
static getTickAtSqrtPrice(sqrtPriceX96: bigint): bigint;
|
|
11
|
-
}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TickMath = void 0;
|
|
4
|
-
const bigint_constants_1 = require("../../../bigint-constants");
|
|
5
|
-
const BitMath_1 = require("./BitMath");
|
|
6
|
-
function mulShift(val, mulBy) {
|
|
7
|
-
return (val * BigInt(mulBy)) >> 128n;
|
|
8
|
-
}
|
|
9
|
-
const Q32 = 2n ** 32n;
|
|
10
|
-
class TickMath {
|
|
11
|
-
constructor() { }
|
|
12
|
-
static MIN_TICK = -887272n;
|
|
13
|
-
static MAX_TICK = 887272n;
|
|
14
|
-
static MIN_SQRT_PRICE = 4295128739n;
|
|
15
|
-
static MAX_SQRT_PRICE = 1461446703485210103287273052203988822378723970342n;
|
|
16
|
-
static maxUsableTick(tickSpacing) {
|
|
17
|
-
return (this.MAX_TICK / tickSpacing) * tickSpacing;
|
|
18
|
-
}
|
|
19
|
-
static minUsableTick(tickSpacing) {
|
|
20
|
-
return (this.MIN_TICK / tickSpacing) * tickSpacing;
|
|
21
|
-
}
|
|
22
|
-
static getSqrtPriceAtTick(tick) {
|
|
23
|
-
if (tick < this.MIN_TICK || this.MAX_TICK < tick) {
|
|
24
|
-
throw new Error(`InvalidTick(${tick})`);
|
|
25
|
-
}
|
|
26
|
-
const absTick = tick < 0n ? -tick : tick;
|
|
27
|
-
let ratio = (absTick & 1n) !== 0n
|
|
28
|
-
? BigInt('0xfffcb933bd6fad37aa2d162d1a594001')
|
|
29
|
-
: BigInt('0x100000000000000000000000000000000');
|
|
30
|
-
if ((absTick & 2n) !== 0n)
|
|
31
|
-
ratio = mulShift(ratio, '0xfff97272373d413259a46990580e213a');
|
|
32
|
-
if ((absTick & 4n) !== 0n)
|
|
33
|
-
ratio = mulShift(ratio, '0xfff2e50f5f656932ef12357cf3c7fdcc');
|
|
34
|
-
if ((absTick & 8n) !== 0n)
|
|
35
|
-
ratio = mulShift(ratio, '0xffe5caca7e10e4e61c3624eaa0941cd0');
|
|
36
|
-
if ((absTick & 16n) !== 0n)
|
|
37
|
-
ratio = mulShift(ratio, '0xffcb9843d60f6159c9db58835c926644');
|
|
38
|
-
if ((absTick & 32n) !== 0n)
|
|
39
|
-
ratio = mulShift(ratio, '0xff973b41fa98c081472e6896dfb254c0');
|
|
40
|
-
if ((absTick & 64n) !== 0n)
|
|
41
|
-
ratio = mulShift(ratio, '0xff2ea16466c96a3843ec78b326b52861');
|
|
42
|
-
if ((absTick & 128n) !== 0n)
|
|
43
|
-
ratio = mulShift(ratio, '0xfe5dee046a99a2a811c461f1969c3053');
|
|
44
|
-
if ((absTick & 256n) !== 0n)
|
|
45
|
-
ratio = mulShift(ratio, '0xfcbe86c7900a88aedcffc83b479aa3a4');
|
|
46
|
-
if ((absTick & 512n) !== 0n)
|
|
47
|
-
ratio = mulShift(ratio, '0xf987a7253ac413176f2b074cf7815e54');
|
|
48
|
-
if ((absTick & 1024n) !== 0n)
|
|
49
|
-
ratio = mulShift(ratio, '0xf3392b0822b70005940c7a398e4b70f3');
|
|
50
|
-
if ((absTick & 2048n) !== 0n)
|
|
51
|
-
ratio = mulShift(ratio, '0xe7159475a2c29b7443b29c7fa6e889d9');
|
|
52
|
-
if ((absTick & 4096n) !== 0n)
|
|
53
|
-
ratio = mulShift(ratio, '0xd097f3bdfd2022b8845ad8f792aa5825');
|
|
54
|
-
if ((absTick & 8192n) !== 0n)
|
|
55
|
-
ratio = mulShift(ratio, '0xa9f746462d870fdf8a65dc1f90e061e5');
|
|
56
|
-
if ((absTick & 16384n) !== 0n)
|
|
57
|
-
ratio = mulShift(ratio, '0x70d869a156d2a1b890bb3df62baf32f7');
|
|
58
|
-
if ((absTick & 32768n) !== 0n)
|
|
59
|
-
ratio = mulShift(ratio, '0x31be135f97d08fd981231505542fcfa6');
|
|
60
|
-
if ((absTick & 65536n) !== 0n)
|
|
61
|
-
ratio = mulShift(ratio, '0x9aa508b5b7a84e1c677de54f3e99bc9');
|
|
62
|
-
if ((absTick & 131072n) !== 0n)
|
|
63
|
-
ratio = mulShift(ratio, '0x5d6af8dedb81196699c329225ee604');
|
|
64
|
-
if ((absTick & 262144n) !== 0n)
|
|
65
|
-
ratio = mulShift(ratio, '0x2216e584f5fa1ea926041bedfe98');
|
|
66
|
-
if ((absTick & 524288n) !== 0n)
|
|
67
|
-
ratio = mulShift(ratio, '0x48a170391f7dc42444e8fa2');
|
|
68
|
-
if (tick > 0n)
|
|
69
|
-
ratio = bigint_constants_1.BI_MAX_UINT256 / ratio;
|
|
70
|
-
return ratio % Q32 > 0n ? ratio / Q32 + 1n : ratio / Q32;
|
|
71
|
-
}
|
|
72
|
-
static getTickAtSqrtPrice(sqrtPriceX96) {
|
|
73
|
-
const sqrtPriceX128 = sqrtPriceX96 << 32n;
|
|
74
|
-
const msb = BitMath_1.BitMath.mostSignificantBit(sqrtPriceX128);
|
|
75
|
-
let r;
|
|
76
|
-
if (msb >= 128n) {
|
|
77
|
-
r = sqrtPriceX128 >> (msb - 127n);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
r = sqrtPriceX128 << (127n - msb);
|
|
81
|
-
}
|
|
82
|
-
let log_2 = (msb - 128n) << 64n;
|
|
83
|
-
for (let i = 0; i < 14; i++) {
|
|
84
|
-
r = (r * r) >> 127n;
|
|
85
|
-
const f = r >> 128n;
|
|
86
|
-
log_2 = log_2 | (f << BigInt(63 - i));
|
|
87
|
-
r = r >> f;
|
|
88
|
-
}
|
|
89
|
-
const log_sqrt10001 = log_2 * 255738958999603826347141n;
|
|
90
|
-
const tickLow = (log_sqrt10001 - 3402992956809132418596140100660247210n) >> 128n;
|
|
91
|
-
const tickHigh = (log_sqrt10001 + 291339464771989622907027621153398088495n) >> 128n;
|
|
92
|
-
return tickLow === tickHigh
|
|
93
|
-
? tickLow
|
|
94
|
-
: TickMath.getSqrtPriceAtTick(tickHigh) <= sqrtPriceX96
|
|
95
|
-
? tickHigh
|
|
96
|
-
: tickLow;
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
exports.TickMath = TickMath;
|
|
100
|
-
//# sourceMappingURL=TickMath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TickMath.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/lib/TickMath.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getReservesInUnderlying = getReservesInUnderlying;
|
|
4
|
-
const constants_1 = require("../../../constants");
|
|
5
|
-
const getOnChainState_1 = require("../getOnChainState");
|
|
6
|
-
async function getReservesInUnderlying(reserveAmount, vault, blockNumber, dexHelper) {
|
|
7
|
-
return vault === constants_1.NULL_ADDRESS
|
|
8
|
-
? reserveAmount
|
|
9
|
-
: await (0, getOnChainState_1.ERC4626_previewRedeem)(reserveAmount, vault, blockNumber, dexHelper);
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=VaultMath.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VaultMath.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/lib/VaultMath.ts"],"names":[],"mappings":";;AAIA,0DASC;AAbD,kDAAkD;AAElD,wDAA2D;AAEpD,KAAK,UAAU,uBAAuB,CAC3C,aAAqB,EACrB,KAAa,EACb,WAAmB,EACnB,SAAqB;IAErB,OAAO,KAAK,KAAK,wBAAY;QAC3B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,MAAM,IAAA,uCAAqB,EAAC,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAChF,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Bid, PoolState } from '../types';
|
|
2
|
-
export declare function getTopBid(state: PoolState, blockNumber: bigint, deploymentBlockNumber: bigint, K: bigint): Bid;
|
|
3
|
-
export declare function getTopBidWrite(state: PoolState, blockNumber: bigint, deploymentBlockNumber: bigint, K: bigint): Bid;
|
|
4
|
-
export declare function _updateAmAmmWrite(state: PoolState, blockNumber: bigint, deploymentBlockNumber: bigint, K: bigint): {
|
|
5
|
-
manager: string;
|
|
6
|
-
payload: string;
|
|
7
|
-
};
|
|
8
|
-
export declare function _updateAmAmmView(state: PoolState, blockNumber: bigint, deploymentBlockNumber: bigint, K: bigint): {
|
|
9
|
-
topBid: Bid;
|
|
10
|
-
nextBid: Bid;
|
|
11
|
-
};
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getTopBid = getTopBid;
|
|
4
|
-
exports.getTopBidWrite = getTopBidWrite;
|
|
5
|
-
exports._updateAmAmmWrite = _updateAmAmmWrite;
|
|
6
|
-
exports._updateAmAmmView = _updateAmAmmView;
|
|
7
|
-
const constants_1 = require("../../../constants");
|
|
8
|
-
const Constants_1 = require("../lib/Constants");
|
|
9
|
-
const Math_1 = require("../lib/Math");
|
|
10
|
-
function getTopBid(state, blockNumber, deploymentBlockNumber, K) {
|
|
11
|
-
const { topBid } = _updateAmAmmView(state, blockNumber, deploymentBlockNumber, K);
|
|
12
|
-
return topBid;
|
|
13
|
-
}
|
|
14
|
-
function getTopBidWrite(state, blockNumber, deploymentBlockNumber, K) {
|
|
15
|
-
_updateAmAmmWrite(state, blockNumber, deploymentBlockNumber, K);
|
|
16
|
-
return state.topBid;
|
|
17
|
-
}
|
|
18
|
-
function _updateAmAmmWrite(state, blockNumber, deploymentBlockNumber, K) {
|
|
19
|
-
const currentBlockIdx = blockNumber - deploymentBlockNumber;
|
|
20
|
-
let topBid = state.topBid;
|
|
21
|
-
let nextBid = state.nextBid;
|
|
22
|
-
let updatedTopBid = false;
|
|
23
|
-
let updatedNextBid = false;
|
|
24
|
-
let rentCharged = 0n;
|
|
25
|
-
let stepHasUpdatedTopBid = false;
|
|
26
|
-
let stepHasUpdatedNextBid = false;
|
|
27
|
-
let stepRentCharged = 0n;
|
|
28
|
-
while (true) {
|
|
29
|
-
({
|
|
30
|
-
topBid,
|
|
31
|
-
nextBid,
|
|
32
|
-
updatedTopBid: stepHasUpdatedTopBid,
|
|
33
|
-
updatedNextBid: stepHasUpdatedNextBid,
|
|
34
|
-
} = _stateTransition(currentBlockIdx, topBid, nextBid, K));
|
|
35
|
-
if (!stepHasUpdatedTopBid && !stepHasUpdatedNextBid) {
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
updatedTopBid = updatedTopBid || stepHasUpdatedTopBid;
|
|
39
|
-
updatedNextBid = updatedNextBid || stepHasUpdatedNextBid;
|
|
40
|
-
rentCharged += stepRentCharged;
|
|
41
|
-
}
|
|
42
|
-
if (updatedTopBid)
|
|
43
|
-
state.topBid = topBid;
|
|
44
|
-
if (updatedNextBid)
|
|
45
|
-
state.nextBid = nextBid;
|
|
46
|
-
return { manager: topBid.manager, payload: topBid.payload };
|
|
47
|
-
}
|
|
48
|
-
function _updateAmAmmView(state, blockNumber, deploymentBlockNumber, K) {
|
|
49
|
-
const currentBlockIdx = blockNumber - deploymentBlockNumber;
|
|
50
|
-
let topBid = state.topBid;
|
|
51
|
-
let nextBid = state.nextBid;
|
|
52
|
-
let stepHasUpdatedTopBid = false;
|
|
53
|
-
let stepHasUpdatedNextBid = false;
|
|
54
|
-
while (true) {
|
|
55
|
-
({
|
|
56
|
-
topBid,
|
|
57
|
-
nextBid,
|
|
58
|
-
updatedTopBid: stepHasUpdatedTopBid,
|
|
59
|
-
updatedNextBid: stepHasUpdatedNextBid,
|
|
60
|
-
} = _stateTransition(currentBlockIdx, topBid, nextBid, K));
|
|
61
|
-
if (!stepHasUpdatedTopBid && !stepHasUpdatedNextBid) {
|
|
62
|
-
break;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
return { topBid, nextBid };
|
|
66
|
-
}
|
|
67
|
-
function _stateTransition(currentBlockIdx, topBid, nextBid, K) {
|
|
68
|
-
let updatedTopBid = false;
|
|
69
|
-
let updatedNextBid = false;
|
|
70
|
-
let rentCharged = 0n;
|
|
71
|
-
let refundManager = constants_1.NULL_ADDRESS;
|
|
72
|
-
let refundAmount = 0n;
|
|
73
|
-
if (nextBid.manager === constants_1.NULL_ADDRESS) {
|
|
74
|
-
if (topBid.manager !== constants_1.NULL_ADDRESS) {
|
|
75
|
-
const blocksPassed = currentBlockIdx - topBid.blockIdx;
|
|
76
|
-
const rentOwed = blocksPassed * topBid.rent;
|
|
77
|
-
if (rentOwed >= topBid.deposit) {
|
|
78
|
-
rentCharged = topBid.deposit;
|
|
79
|
-
topBid = _resetBid();
|
|
80
|
-
updatedTopBid = true;
|
|
81
|
-
}
|
|
82
|
-
else if (rentOwed !== 0n) {
|
|
83
|
-
rentCharged = rentOwed;
|
|
84
|
-
topBid.deposit -= rentOwed;
|
|
85
|
-
topBid.blockIdx = currentBlockIdx;
|
|
86
|
-
updatedTopBid = true;
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
if (topBid.manager === constants_1.NULL_ADDRESS) {
|
|
92
|
-
const nextBidStartBlockIdx = nextBid.blockIdx + K;
|
|
93
|
-
if (currentBlockIdx >= nextBidStartBlockIdx) {
|
|
94
|
-
topBid = nextBid;
|
|
95
|
-
topBid.blockIdx = nextBidStartBlockIdx;
|
|
96
|
-
nextBid = _resetBid();
|
|
97
|
-
updatedTopBid = true;
|
|
98
|
-
updatedNextBid = true;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
const nextBidIsBetter = nextBid.rent > (0, Math_1.mulWad)(topBid.rent, Constants_1.MIN_BID_MULTIPLIER);
|
|
103
|
-
const blocksPassed = nextBidIsBetter
|
|
104
|
-
? (0, Math_1.min)(currentBlockIdx - topBid.blockIdx, nextBid.blockIdx + K - topBid.blockIdx)
|
|
105
|
-
: currentBlockIdx - topBid.blockIdx;
|
|
106
|
-
const rentOwed = blocksPassed * topBid.rent;
|
|
107
|
-
if (rentOwed >= topBid.deposit) {
|
|
108
|
-
rentCharged = topBid.deposit;
|
|
109
|
-
topBid = _resetBid();
|
|
110
|
-
const latestProcessedBlockIdx = nextBidIsBetter
|
|
111
|
-
? (0, Math_1.min)(currentBlockIdx, nextBid.blockIdx + K)
|
|
112
|
-
: currentBlockIdx;
|
|
113
|
-
nextBid.blockIdx = (0, Math_1.max)(nextBid.blockIdx, latestProcessedBlockIdx - K);
|
|
114
|
-
updatedTopBid = true;
|
|
115
|
-
updatedNextBid = true;
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
if (rentOwed !== 0n) {
|
|
119
|
-
rentCharged = rentOwed;
|
|
120
|
-
topBid.deposit -= rentOwed;
|
|
121
|
-
topBid.blockIdx = currentBlockIdx;
|
|
122
|
-
updatedTopBid = true;
|
|
123
|
-
}
|
|
124
|
-
const nextBidStartBlockIdx = nextBid.blockIdx + K;
|
|
125
|
-
if (currentBlockIdx >= nextBidStartBlockIdx && nextBidIsBetter) {
|
|
126
|
-
refundManager = topBid.manager;
|
|
127
|
-
refundAmount = topBid.deposit;
|
|
128
|
-
topBid = nextBid;
|
|
129
|
-
topBid.blockIdx = nextBidStartBlockIdx;
|
|
130
|
-
nextBid = _resetBid();
|
|
131
|
-
updatedTopBid = true;
|
|
132
|
-
updatedNextBid = true;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
return {
|
|
138
|
-
topBid,
|
|
139
|
-
nextBid,
|
|
140
|
-
updatedTopBid,
|
|
141
|
-
updatedNextBid,
|
|
142
|
-
rentCharged,
|
|
143
|
-
refundManager,
|
|
144
|
-
refundAmount,
|
|
145
|
-
};
|
|
146
|
-
}
|
|
147
|
-
function _resetBid() {
|
|
148
|
-
return {
|
|
149
|
-
manager: constants_1.NULL_ADDRESS,
|
|
150
|
-
blockIdx: 0n,
|
|
151
|
-
payload: Constants_1.ZERO_BYTES_6,
|
|
152
|
-
rent: 0n,
|
|
153
|
-
deposit: 0n,
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
//# sourceMappingURL=AmAmm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AmAmm.js","sourceRoot":"","sources":["../../../../src/dex/bunni-v2/logic/AmAmm.ts"],"names":[],"mappings":";;AAKA,8BAcC;AAED,wCASC;AAED,8CAuCC;AAED,4CA4BC;AArGD,kDAAkD;AAClD,gDAAoE;AACpE,sCAA+C;AAG/C,SAAgB,SAAS,CACvB,KAAgB,EAChB,WAAmB,EACnB,qBAA6B,EAC7B,CAAS;IAET,MAAM,EAAE,MAAM,EAAE,GAAG,gBAAgB,CACjC,KAAK,EACL,WAAW,EACX,qBAAqB,EACrB,CAAC,CACF,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAgB,cAAc,CAC5B,KAAgB,EAChB,WAAmB,EACnB,qBAA6B,EAC7B,CAAS;IAET,iBAAiB,CAAC,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC;IAEhE,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED,SAAgB,iBAAiB,CAC/B,KAAgB,EAChB,WAAmB,EACnB,qBAA6B,EAC7B,CAAS;IAET,MAAM,eAAe,GAAG,WAAW,GAAG,qBAAqB,CAAC;IAE5D,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC1B,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC5B,IAAI,aAAa,GAAY,KAAK,CAAC;IACnC,IAAI,cAAc,GAAY,KAAK,CAAC;IACpC,IAAI,WAAW,GAAW,EAAE,CAAC;IAE7B,IAAI,oBAAoB,GAAY,KAAK,CAAC;IAC1C,IAAI,qBAAqB,GAAY,KAAK,CAAC;IAC3C,IAAI,eAAe,GAAW,EAAE,CAAC;IAEjC,OAAO,IAAI,EAAE,CAAC;QACZ,CAAC;YACC,MAAM;YACN,OAAO;YACP,aAAa,EAAE,oBAAoB;YACnC,cAAc,EAAE,qBAAqB;SACtC,GAAG,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,oBAAoB,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACpD,MAAM;QACR,CAAC;QAED,aAAa,GAAG,aAAa,IAAI,oBAAoB,CAAC;QACtD,cAAc,GAAG,cAAc,IAAI,qBAAqB,CAAC;QACzD,WAAW,IAAI,eAAe,CAAC;IACjC,CAAC;IAED,IAAI,aAAa;QAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IACzC,IAAI,cAAc;QAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAE5C,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AAC9D,CAAC;AAED,SAAgB,gBAAgB,CAC9B,KAAgB,EAChB,WAAmB,EACnB,qBAA6B,EAC7B,CAAS;IAET,MAAM,eAAe,GAAG,WAAW,GAAG,qBAAqB,CAAC;IAE5D,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC1B,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAE5B,IAAI,oBAAoB,GAAY,KAAK,CAAC;IAC1C,IAAI,qBAAqB,GAAY,KAAK,CAAC;IAE3C,OAAO,IAAI,EAAE,CAAC;QACZ,CAAC;YACC,MAAM;YACN,OAAO;YACP,aAAa,EAAE,oBAAoB;YACnC,cAAc,EAAE,qBAAqB;SACtC,GAAG,gBAAgB,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,oBAAoB,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACpD,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC;AAED,SAAS,gBAAgB,CACvB,eAAuB,EACvB,MAAW,EACX,OAAY,EACZ,CAAS;IAUT,IAAI,aAAa,GAAY,KAAK,CAAC;IACnC,IAAI,cAAc,GAAY,KAAK,CAAC;IACpC,IAAI,WAAW,GAAW,EAAE,CAAC;IAC7B,IAAI,aAAa,GAAW,wBAAY,CAAC;IACzC,IAAI,YAAY,GAAW,EAAE,CAAC;IAE9B,IAAI,OAAO,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;QACrC,IAAI,MAAM,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;YACpC,MAAM,YAAY,GAAG,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC;YACvD,MAAM,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;YAC5C,IAAI,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC/B,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC7B,MAAM,GAAG,SAAS,EAAE,CAAC;gBACrB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;iBAAM,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;gBAC3B,WAAW,GAAG,QAAQ,CAAC;gBACvB,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC;gBAC3B,MAAM,CAAC,QAAQ,GAAG,eAAe,CAAC;gBAClC,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,MAAM,CAAC,OAAO,KAAK,wBAAY,EAAE,CAAC;YACpC,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YAClD,IAAI,eAAe,IAAI,oBAAoB,EAAE,CAAC;gBAC5C,MAAM,GAAG,OAAO,CAAC;gBACjB,MAAM,CAAC,QAAQ,GAAG,oBAAoB,CAAC;gBACvC,OAAO,GAAG,SAAS,EAAE,CAAC;gBAEtB,aAAa,GAAG,IAAI,CAAC;gBACrB,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,eAAe,GACnB,OAAO,CAAC,IAAI,GAAG,IAAA,aAAM,EAAC,MAAM,CAAC,IAAI,EAAE,8BAAkB,CAAC,CAAC;YACzD,MAAM,YAAY,GAAG,eAAe;gBAClC,CAAC,CAAC,IAAA,UAAG,EACD,eAAe,GAAG,MAAM,CAAC,QAAQ,EACjC,OAAO,CAAC,QAAQ,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CACvC;gBACH,CAAC,CAAC,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC;YACtC,MAAM,QAAQ,GAAG,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC;YAE5C,IAAI,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC/B,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC7B,MAAM,GAAG,SAAS,EAAE,CAAC;gBACrB,MAAM,uBAAuB,GAAG,eAAe;oBAC7C,CAAC,CAAC,IAAA,UAAG,EAAC,eAAe,EAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;oBAC5C,CAAC,CAAC,eAAe,CAAC;gBACpB,OAAO,CAAC,QAAQ,GAAG,IAAA,UAAG,EAAC,OAAO,CAAC,QAAQ,EAAE,uBAAuB,GAAG,CAAC,CAAC,CAAC;gBAEtE,aAAa,GAAG,IAAI,CAAC;gBACrB,cAAc,GAAG,IAAI,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;oBACpB,WAAW,GAAG,QAAQ,CAAC;oBAEvB,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC;oBAC3B,MAAM,CAAC,QAAQ,GAAG,eAAe,CAAC;oBAElC,aAAa,GAAG,IAAI,CAAC;gBACvB,CAAC;gBAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;gBAClD,IAAI,eAAe,IAAI,oBAAoB,IAAI,eAAe,EAAE,CAAC;oBAC/D,aAAa,GAAG,MAAM,CAAC,OAAO,CAAC;oBAC/B,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC;oBAE9B,MAAM,GAAG,OAAO,CAAC;oBACjB,MAAM,CAAC,QAAQ,GAAG,oBAAoB,CAAC;oBACvC,OAAO,GAAG,SAAS,EAAE,CAAC;oBAEtB,aAAa,GAAG,IAAI,CAAC;oBACrB,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,OAAO;QACP,aAAa;QACb,cAAc;QACd,WAAW;QACX,aAAa;QACb,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,SAAS;IAChB,OAAO;QACL,OAAO,EAAE,wBAAY;QACrB,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,wBAAY;QACrB,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;KACZ,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { IDexHelper } from '../../../dex-helper';
|
|
2
|
-
import { HookParams, ObservationState, PoolState, Slot0, SwapParams, DexParams } from '../types';
|
|
3
|
-
export declare function afterInitialize(sqrtPriceX96: bigint, tick: bigint, twapSecondsAgo: bigint, hookParams: string, blockTimestamp: bigint): {
|
|
4
|
-
slot0: Slot0;
|
|
5
|
-
observationState: ObservationState;
|
|
6
|
-
};
|
|
7
|
-
export declare function beforeSwap(state: PoolState, blockNumber: bigint, blockTimestamp: bigint, params: SwapParams, hookFeesModifier: bigint, hookDeploymentBlock: bigint, K: bigint, dexHelper: IDexHelper, dexParams: DexParams): Promise<void>;
|
|
8
|
-
export declare function decodeParams(hookParams: string): HookParams;
|
|
9
|
-
export declare function observe(state: PoolState, secondsAgos: bigint[], blockTimestamp: bigint): bigint[];
|
|
10
|
-
export declare function _shouldSurgeFromVaults(state: PoolState, hookParams: HookParams, reserveBalance0: bigint, reserveBalance1: bigint): boolean;
|