@paraswap/dex-lib 4.8.24 → 4.8.25
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/AaveV2_lending_pool.json +53 -0
- package/build/abi/Bancor.json +392 -0
- package/build/abi/Compound_CETH.json +12 -0
- package/build/abi/SSPM.json +829 -0
- package/build/abi/Smoothy.json +1049 -0
- package/build/abi/StaderOracle.json +2170 -0
- package/build/abi/aave-weth-gateway-avalanche.json +242 -0
- package/build/abi/aave-weth-gateway-polygon.json +242 -0
- package/build/abi/aave-weth-gateway.json +24 -0
- package/build/abi/bunni-v2/BunniHook.abi.json +1921 -0
- package/build/abi/bunni-v2/BunniHub.abi.json +1598 -0
- package/build/abi/bunni-v2/BunniToken.abi.json +833 -0
- package/build/abi/bunni-v2/FeeOverrideHooklet.abi.json +1947 -0
- package/build/abi/bunni-v2/FloodPlain.abi.json +1195 -0
- package/build/abi/bunni-v2/PoolManager.abi.json +1366 -0
- package/build/abi/bunni-v2/V4Quoter.abi.json +637 -0
- package/build/abi/concentrator/arUSD.json +568 -0
- package/build/abi/concentrator/arUSD5115.json +1746 -0
- package/build/abi/gmx/fast-price-events.json +70 -0
- package/build/abi/gmx/fast-price-feed.json +748 -0
- package/build/abi/gmx/reader.json +337 -0
- package/build/abi/gmx/vault-price-feed.json +477 -0
- package/build/abi/gmx/vault.json +2002 -0
- package/build/abi/jarvis/ChainlinkAccessControlledOffchainAggregator.json +1009 -0
- package/build/abi/jarvis/SynthereumPriceFeed.json +381 -0
- package/build/abi/jarvis/jarvis-v6-pool.json +1041 -0
- package/build/abi/kyberdmm/kyber-dmm-exchange-router.abi.json +1148 -0
- package/build/abi/kyberdmm/kyber-dmm-factory.abi.json +335 -0
- package/build/abi/kyberdmm/kyber-dmm-pool.abi.json +803 -0
- package/build/abi/synthetix/CombinedSynthetix.abi.json +442 -0
- package/build/abi/wombat/asset.json +743 -0
- package/build/abi/wombat/bmw.json +1247 -0
- package/build/abi/wombat/pool-v2.json +1289 -0
- package/build/abi/wombat/pool-v3.json +2013 -0
- package/build/dex/aave-v2/aave-v2.d.ts +33 -0
- package/build/dex/aave-v2/aave-v2.js +328 -0
- package/build/dex/aave-v2/aave-v2.js.map +1 -0
- package/build/dex/aave-v2/config.d.ts +14 -0
- package/build/dex/aave-v2/config.js +49 -0
- package/build/dex/aave-v2/config.js.map +1 -0
- package/build/dex/aave-v2/tokenlist.json +904 -0
- package/build/dex/aave-v2/tokens.d.ts +8 -0
- package/build/dex/aave-v2/tokens.js +65 -0
- package/build/dex/aave-v2/tokens.js.map +1 -0
- package/build/dex/aave-v2/types.d.ts +33 -0
- package/build/dex/aave-v2/types.js +11 -0
- package/build/dex/aave-v2/types.js.map +1 -0
- package/build/dex/bancor/bancor.d.ts +15 -0
- package/build/dex/bancor/bancor.js +74 -0
- package/build/dex/bancor/bancor.js.map +1 -0
- package/build/dex/bancor/config.d.ts +6 -0
- package/build/dex/bancor/config.js +11 -0
- package/build/dex/bancor/config.js.map +1 -0
- package/build/dex/bancor/types.d.ts +16 -0
- package/build/dex/bancor/types.js +8 -0
- package/build/dex/bancor/types.js.map +1 -0
- package/build/dex/bebop/bebop.js +1 -1
- package/build/dex/bebop/bebop.js.map +1 -1
- package/build/dex/bunni-v2/bunni-v2-pool.d.ts +62 -0
- package/build/dex/bunni-v2/bunni-v2-pool.js +505 -0
- package/build/dex/bunni-v2/bunni-v2-pool.js.map +1 -0
- package/build/dex/bunni-v2/bunni-v2.d.ts +51 -0
- package/build/dex/bunni-v2/bunni-v2.js +460 -0
- package/build/dex/bunni-v2/bunni-v2.js.map +1 -0
- package/build/dex/{renegade → bunni-v2}/config.d.ts +1 -1
- package/build/dex/bunni-v2/config.js +130 -0
- package/build/dex/bunni-v2/config.js.map +1 -0
- package/build/dex/bunni-v2/encoder.d.ts +19 -0
- package/build/dex/{pancakeswap-infinity → bunni-v2}/encoder.js +199 -88
- package/build/dex/bunni-v2/encoder.js.map +1 -0
- package/build/dex/bunni-v2/getOnChainState.d.ts +26 -0
- package/build/dex/bunni-v2/getOnChainState.js +493 -0
- package/build/dex/bunni-v2/getOnChainState.js.map +1 -0
- package/build/dex/bunni-v2/hook/BunniSwapMath.d.ts +7 -0
- package/build/dex/bunni-v2/hook/BunniSwapMath.js +198 -0
- package/build/dex/bunni-v2/hook/BunniSwapMath.js.map +1 -0
- package/build/dex/bunni-v2/hook/SwapMath.d.ts +8 -0
- package/build/dex/bunni-v2/hook/SwapMath.js +65 -0
- package/build/dex/bunni-v2/hook/SwapMath.js.map +1 -0
- package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.d.ts +33 -0
- package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.js +33 -0
- package/build/dex/bunni-v2/hooklet/FeeOverrideHooklet.js.map +1 -0
- package/build/dex/bunni-v2/hooklet/index.d.ts +21 -0
- package/build/dex/bunni-v2/hooklet/index.js +64 -0
- package/build/dex/bunni-v2/hooklet/index.js.map +1 -0
- package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.d.ts +70 -0
- package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.js +277 -0
- package/build/dex/bunni-v2/ldf/CarpetedDoubleGeometricDistribution.js.map +1 -0
- package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.d.ts +64 -0
- package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.js +262 -0
- package/build/dex/bunni-v2/ldf/CarpetedGeometricDistribution.js.map +1 -0
- package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.d.ts +60 -0
- package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.js +224 -0
- package/build/dex/bunni-v2/ldf/DoubleGeometricDistribution.js.map +1 -0
- package/build/dex/bunni-v2/ldf/GeometricDistribution.d.ts +56 -0
- package/build/dex/bunni-v2/ldf/GeometricDistribution.js +489 -0
- package/build/dex/bunni-v2/ldf/GeometricDistribution.js.map +1 -0
- package/build/dex/bunni-v2/ldf/LDFType.d.ts +5 -0
- package/build/dex/bunni-v2/ldf/LDFType.js +10 -0
- package/build/dex/bunni-v2/ldf/LDFType.js.map +1 -0
- package/build/dex/bunni-v2/ldf/ShiftMode.d.ts +7 -0
- package/build/dex/bunni-v2/ldf/ShiftMode.js +19 -0
- package/build/dex/bunni-v2/ldf/ShiftMode.js.map +1 -0
- package/build/dex/bunni-v2/ldf/UniformDistribution.d.ts +55 -0
- package/build/dex/bunni-v2/ldf/UniformDistribution.js +291 -0
- package/build/dex/bunni-v2/ldf/UniformDistribution.js.map +1 -0
- package/build/dex/bunni-v2/ldf/index.d.ts +15 -0
- package/build/dex/bunni-v2/ldf/index.js +21 -0
- package/build/dex/bunni-v2/ldf/index.js.map +1 -0
- package/build/dex/bunni-v2/lib/AmAmmPayload.d.ts +4 -0
- package/build/dex/bunni-v2/lib/AmAmmPayload.js +10 -0
- package/build/dex/bunni-v2/lib/AmAmmPayload.js.map +1 -0
- package/build/dex/bunni-v2/lib/BitMath.d.ts +4 -0
- package/build/dex/bunni-v2/lib/BitMath.js +24 -0
- package/build/dex/bunni-v2/lib/BitMath.js.map +1 -0
- package/build/dex/bunni-v2/lib/Constants.d.ts +15 -0
- package/build/dex/bunni-v2/lib/Constants.js +19 -0
- package/build/dex/bunni-v2/lib/Constants.js.map +1 -0
- package/build/dex/bunni-v2/lib/ExpMath.d.ts +5 -0
- package/build/dex/bunni-v2/lib/ExpMath.js +121 -0
- package/build/dex/bunni-v2/lib/ExpMath.js.map +1 -0
- package/build/dex/bunni-v2/lib/FeeMath.d.ts +2 -0
- package/build/dex/bunni-v2/lib/FeeMath.js +27 -0
- package/build/dex/bunni-v2/lib/FeeMath.js.map +1 -0
- package/build/dex/bunni-v2/lib/FixedPointMath.d.ts +3 -0
- package/build/dex/bunni-v2/lib/FixedPointMath.js +15 -0
- package/build/dex/bunni-v2/lib/FixedPointMath.js.map +1 -0
- package/build/dex/bunni-v2/lib/FullMathX96.d.ts +4 -0
- package/build/dex/bunni-v2/lib/FullMathX96.js +21 -0
- package/build/dex/bunni-v2/lib/FullMathX96.js.map +1 -0
- package/build/dex/bunni-v2/lib/IdleBalance.d.ts +11 -0
- package/build/dex/bunni-v2/lib/IdleBalance.js +33 -0
- package/build/dex/bunni-v2/lib/IdleBalance.js.map +1 -0
- package/build/dex/bunni-v2/lib/LiquidityAmounts.d.ts +6 -0
- package/build/dex/bunni-v2/lib/LiquidityAmounts.js +25 -0
- package/build/dex/bunni-v2/lib/LiquidityAmounts.js.map +1 -0
- package/build/dex/bunni-v2/lib/Math.d.ts +28 -0
- package/build/dex/bunni-v2/lib/Math.js +169 -0
- package/build/dex/bunni-v2/lib/Math.js.map +1 -0
- package/build/dex/bunni-v2/lib/Oracle.d.ts +27 -0
- package/build/dex/bunni-v2/lib/Oracle.js +180 -0
- package/build/dex/bunni-v2/lib/Oracle.js.map +1 -0
- package/build/dex/bunni-v2/lib/QueryLDF.d.ts +12 -0
- package/build/dex/bunni-v2/lib/QueryLDF.js +90 -0
- package/build/dex/bunni-v2/lib/QueryLDF.js.map +1 -0
- package/build/dex/bunni-v2/lib/QueryTwap.d.ts +2 -0
- package/build/dex/bunni-v2/lib/QueryTwap.js +13 -0
- package/build/dex/bunni-v2/lib/QueryTwap.js.map +1 -0
- package/build/dex/bunni-v2/lib/SqrtPriceMath.d.ts +8 -0
- package/build/dex/bunni-v2/lib/SqrtPriceMath.js +84 -0
- package/build/dex/bunni-v2/lib/SqrtPriceMath.js.map +1 -0
- package/build/dex/bunni-v2/lib/TickMath.d.ts +11 -0
- package/build/dex/bunni-v2/lib/TickMath.js +100 -0
- package/build/dex/bunni-v2/lib/TickMath.js.map +1 -0
- package/build/dex/bunni-v2/lib/VaultMath.d.ts +2 -0
- package/build/dex/bunni-v2/lib/VaultMath.js +11 -0
- package/build/dex/bunni-v2/lib/VaultMath.js.map +1 -0
- package/build/dex/bunni-v2/logic/AmAmm.d.ts +11 -0
- package/build/dex/bunni-v2/logic/AmAmm.js +156 -0
- package/build/dex/bunni-v2/logic/AmAmm.js.map +1 -0
- package/build/dex/bunni-v2/logic/BunniHookLogic.d.ts +10 -0
- package/build/dex/bunni-v2/logic/BunniHookLogic.js +298 -0
- package/build/dex/bunni-v2/logic/BunniHookLogic.js.map +1 -0
- package/build/dex/bunni-v2/logic/BunniHubLogic.d.ts +5 -0
- package/build/dex/bunni-v2/logic/BunniHubLogic.js +245 -0
- package/build/dex/bunni-v2/logic/BunniHubLogic.js.map +1 -0
- package/build/dex/bunni-v2/logic/BunniQuoter.d.ts +12 -0
- package/build/dex/bunni-v2/logic/BunniQuoter.js +201 -0
- package/build/dex/bunni-v2/logic/BunniQuoter.js.map +1 -0
- package/build/dex/bunni-v2/subgraph.d.ts +7 -0
- package/build/dex/bunni-v2/subgraph.js +184 -0
- package/build/dex/bunni-v2/subgraph.js.map +1 -0
- package/build/dex/bunni-v2/types.d.ts +257 -0
- package/build/dex/{renegade/api → bunni-v2}/types.js.map +1 -1
- package/build/dex/bunni-v2/utils.d.ts +12 -0
- package/build/dex/bunni-v2/utils.js +182 -0
- package/build/dex/bunni-v2/utils.js.map +1 -0
- package/build/dex/compound/compound.d.ts +15 -0
- package/build/dex/compound/compound.js +57 -0
- package/build/dex/compound/compound.js.map +1 -0
- package/build/dex/compound/types.d.ts +8 -0
- package/build/dex/compound/types.js +9 -0
- package/build/dex/compound/types.js.map +1 -0
- package/build/dex/concentrator-arusd/concentrator-arusd-event.d.ts +17 -0
- package/build/dex/concentrator-arusd/concentrator-arusd-event.js +69 -0
- package/build/dex/concentrator-arusd/concentrator-arusd-event.js.map +1 -0
- package/build/dex/concentrator-arusd/concentrator-arusd.d.ts +41 -0
- package/build/dex/concentrator-arusd/concentrator-arusd.js +202 -0
- package/build/dex/concentrator-arusd/concentrator-arusd.js.map +1 -0
- package/build/dex/concentrator-arusd/config.d.ts +3 -0
- package/build/dex/concentrator-arusd/config.js +14 -0
- package/build/dex/concentrator-arusd/config.js.map +1 -0
- package/build/dex/concentrator-arusd/types.d.ts +14 -0
- package/build/dex/concentrator-arusd/types.js.map +1 -0
- package/build/dex/concentrator-arusd/utils.d.ts +4 -0
- package/build/dex/concentrator-arusd/utils.js +26 -0
- package/build/dex/concentrator-arusd/utils.js.map +1 -0
- package/build/dex/curve-v1/forks/swerve/config.d.ts +4 -0
- package/build/dex/curve-v1/forks/swerve/config.js +47 -0
- package/build/dex/curve-v1/forks/swerve/config.js.map +1 -0
- package/build/dex/curve-v1/forks/swerve/swerve.d.ts +16 -0
- package/build/dex/curve-v1/forks/swerve/swerve.js +46 -0
- package/build/dex/curve-v1/forks/swerve/swerve.js.map +1 -0
- package/build/dex/gmx/config.d.ts +11 -0
- package/build/dex/gmx/config.js +61 -0
- package/build/dex/gmx/config.js.map +1 -0
- package/build/dex/gmx/fast-price-feed.d.ts +26 -0
- package/build/dex/gmx/fast-price-feed.js +184 -0
- package/build/dex/gmx/fast-price-feed.js.map +1 -0
- package/build/dex/gmx/gmx.d.ts +54 -0
- package/build/dex/gmx/gmx.js +247 -0
- package/build/dex/gmx/gmx.js.map +1 -0
- package/build/dex/gmx/pool.d.ts +21 -0
- package/build/dex/gmx/pool.js +212 -0
- package/build/dex/gmx/pool.js.map +1 -0
- package/build/dex/gmx/types.d.ts +100 -0
- package/build/dex/gmx/types.js +3 -0
- package/build/dex/gmx/types.js.map +1 -0
- package/build/dex/gmx/usdg.d.ts +15 -0
- package/build/dex/gmx/usdg.js +62 -0
- package/build/dex/gmx/usdg.js.map +1 -0
- package/build/dex/gmx/vault-price-feed.d.ts +47 -0
- package/build/dex/gmx/vault-price-feed.js +245 -0
- package/build/dex/gmx/vault-price-feed.js.map +1 -0
- package/build/dex/gmx/vault-utils.d.ts +8 -0
- package/build/dex/gmx/vault-utils.js +42 -0
- package/build/dex/gmx/vault-utils.js.map +1 -0
- package/build/dex/gmx/vault.d.ts +46 -0
- package/build/dex/gmx/vault.js +182 -0
- package/build/dex/gmx/vault.js.map +1 -0
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.d.ts +15 -0
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js +51 -0
- package/build/dex/jarvis-v6/chainLinkpriceFeed-event.js.map +1 -0
- package/build/dex/jarvis-v6/config.d.ts +4 -0
- package/build/dex/jarvis-v6/config.js +244 -0
- package/build/dex/jarvis-v6/config.js.map +1 -0
- package/build/dex/jarvis-v6/jarvis-v6-events.d.ts +27 -0
- package/build/dex/jarvis-v6/jarvis-v6-events.js +54 -0
- package/build/dex/jarvis-v6/jarvis-v6-events.js.map +1 -0
- package/build/dex/jarvis-v6/jarvis-v6.d.ts +49 -0
- package/build/dex/jarvis-v6/jarvis-v6.js +321 -0
- package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -0
- package/build/dex/jarvis-v6/syntheteumPool-event.d.ts +15 -0
- package/build/dex/jarvis-v6/syntheteumPool-event.js +49 -0
- package/build/dex/jarvis-v6/syntheteumPool-event.js.map +1 -0
- package/build/dex/jarvis-v6/types.d.ts +48 -0
- package/build/dex/jarvis-v6/types.js +9 -0
- package/build/dex/jarvis-v6/types.js.map +1 -0
- package/build/dex/jarvis-v6/utils.d.ts +13 -0
- package/build/dex/jarvis-v6/utils.js +75 -0
- package/build/dex/jarvis-v6/utils.js.map +1 -0
- package/build/dex/kyberdmm/config.d.ts +9 -0
- package/build/dex/kyberdmm/config.js +59 -0
- package/build/dex/kyberdmm/config.js.map +1 -0
- package/build/dex/kyberdmm/fee-formula.d.ts +15 -0
- package/build/dex/kyberdmm/fee-formula.js +88 -0
- package/build/dex/kyberdmm/fee-formula.js.map +1 -0
- package/build/dex/kyberdmm/kyberdmm.d.ts +55 -0
- package/build/dex/kyberdmm/kyberdmm.js +447 -0
- package/build/dex/kyberdmm/kyberdmm.js.map +1 -0
- package/build/dex/kyberdmm/math-ext.d.ts +2 -0
- package/build/dex/kyberdmm/math-ext.js +27 -0
- package/build/dex/kyberdmm/math-ext.js.map +1 -0
- package/build/dex/kyberdmm/pool.d.ts +50 -0
- package/build/dex/kyberdmm/pool.js +157 -0
- package/build/dex/kyberdmm/pool.js.map +1 -0
- package/build/dex/kyberdmm/types.d.ts +81 -0
- package/build/dex/kyberdmm/types.js +9 -0
- package/build/dex/kyberdmm/types.js.map +1 -0
- package/build/dex/quickswap/thena-fusion.d.ts +6 -0
- package/build/dex/quickswap/thena-fusion.js +19 -0
- package/build/dex/quickswap/thena-fusion.js.map +1 -0
- package/build/dex/smoothy/smoothy.d.ts +16 -0
- package/build/dex/smoothy/smoothy.js +60 -0
- package/build/dex/smoothy/smoothy.js.map +1 -0
- package/build/dex/smoothy/types.d.ts +15 -0
- package/build/dex/smoothy/types.js +8 -0
- package/build/dex/smoothy/types.js.map +1 -0
- package/build/dex/stader/config.d.ts +3 -0
- package/build/dex/stader/config.js +14 -0
- package/build/dex/stader/config.js.map +1 -0
- package/build/dex/stader/stader-pool.d.ts +19 -0
- package/build/dex/stader/stader-pool.js +56 -0
- package/build/dex/stader/stader-pool.js.map +1 -0
- package/build/dex/stader/stader.d.ts +42 -0
- package/build/dex/stader/stader.js +195 -0
- package/build/dex/stader/stader.js.map +1 -0
- package/build/dex/stader/types.d.ts +13 -0
- package/build/dex/stader/types.js +8 -0
- package/build/dex/stader/types.js.map +1 -0
- package/build/dex/stader/utils.d.ts +4 -0
- package/build/dex/stader/utils.js +23 -0
- package/build/dex/stader/utils.js.map +1 -0
- package/build/dex/synthetix/config.d.ts +4 -0
- package/build/dex/synthetix/config.js +53 -0
- package/build/dex/synthetix/config.js.map +1 -0
- package/build/dex/synthetix/constants.d.ts +23 -0
- package/build/dex/synthetix/constants.js +32 -0
- package/build/dex/synthetix/constants.js.map +1 -0
- package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.d.ts +17 -0
- package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.js +102 -0
- package/build/dex/synthetix/contract-math/DexPriceAggregatorUniswapV3.js.map +1 -0
- package/build/dex/synthetix/contract-math/ExchangeRates.d.ts +8 -0
- package/build/dex/synthetix/contract-math/ExchangeRates.js +77 -0
- package/build/dex/synthetix/contract-math/ExchangeRates.js.map +1 -0
- package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.d.ts +17 -0
- package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.js +126 -0
- package/build/dex/synthetix/contract-math/ExchangeRatesWithDexPricing.js.map +1 -0
- package/build/dex/synthetix/contract-math/FullMath.d.ts +3 -0
- package/build/dex/synthetix/contract-math/FullMath.js +14 -0
- package/build/dex/synthetix/contract-math/FullMath.js.map +1 -0
- package/build/dex/synthetix/contract-math/OracleLibrary.d.ts +8 -0
- package/build/dex/synthetix/contract-math/OracleLibrary.js +60 -0
- package/build/dex/synthetix/contract-math/OracleLibrary.js.map +1 -0
- package/build/dex/synthetix/contract-math/SafeDecimalMath.d.ts +9 -0
- package/build/dex/synthetix/contract-math/SafeDecimalMath.js +41 -0
- package/build/dex/synthetix/contract-math/SafeDecimalMath.js.map +1 -0
- package/build/dex/synthetix/contract-math/TickMath.d.ts +7 -0
- package/build/dex/synthetix/contract-math/TickMath.js +63 -0
- package/build/dex/synthetix/contract-math/TickMath.js.map +1 -0
- package/build/dex/synthetix/contract-math/synthetix-math.d.ts +17 -0
- package/build/dex/synthetix/contract-math/synthetix-math.js +127 -0
- package/build/dex/synthetix/contract-math/synthetix-math.js.map +1 -0
- package/build/dex/synthetix/synthetix-state.d.ts +36 -0
- package/build/dex/synthetix/synthetix-state.js +615 -0
- package/build/dex/synthetix/synthetix-state.js.map +1 -0
- package/build/dex/synthetix/synthetix.d.ts +45 -0
- package/build/dex/synthetix/synthetix.js +304 -0
- package/build/dex/synthetix/synthetix.js.map +1 -0
- package/build/dex/synthetix/types.d.ts +90 -0
- package/build/dex/synthetix/types.js +3 -0
- package/build/dex/synthetix/types.js.map +1 -0
- package/build/dex/synthetix/utils.d.ts +10 -0
- package/build/dex/synthetix/utils.js +91 -0
- package/build/dex/synthetix/utils.js.map +1 -0
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.d.ts +7 -0
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js +20 -0
- package/build/dex/trader-joe-v2.1/trader-joe-v2.1.js.map +1 -0
- package/build/dex/uniswap-v4/api-go/compare-pricing.d.ts +1 -0
- package/build/dex/uniswap-v4/api-go/compare-pricing.js +187 -0
- package/build/dex/uniswap-v4/api-go/compare-pricing.js.map +1 -0
- package/build/dex/uniswap-v4/api-go/compare-states.d.ts +1 -0
- package/build/dex/uniswap-v4/api-go/compare-states.js +149 -0
- package/build/dex/uniswap-v4/api-go/compare-states.js.map +1 -0
- package/build/dex/uniswap-v4/api-go/fetch-pool-key.d.ts +0 -0
- package/build/dex/uniswap-v4/api-go/fetch-pool-key.js +140 -0
- package/build/dex/uniswap-v4/api-go/fetch-pool-key.js.map +1 -0
- package/build/dex/wombat/config.d.ts +4 -0
- package/build/dex/wombat/config.js +77 -0
- package/build/dex/wombat/config.js.map +1 -0
- package/build/dex/wombat/types.d.ts +34 -0
- package/build/dex/wombat/types.js +3 -0
- package/build/dex/wombat/types.js.map +1 -0
- package/build/dex/wombat/utils.d.ts +10 -0
- package/build/dex/wombat/utils.js +79 -0
- package/build/dex/wombat/utils.js.map +1 -0
- package/build/dex/wombat/wombat-bmw.d.ts +40 -0
- package/build/dex/wombat/wombat-bmw.js +136 -0
- package/build/dex/wombat/wombat-bmw.js.map +1 -0
- package/build/dex/wombat/wombat-pool.d.ts +60 -0
- package/build/dex/wombat/wombat-pool.js +488 -0
- package/build/dex/wombat/wombat-pool.js.map +1 -0
- package/build/dex/wombat/wombat-quoter.d.ts +17 -0
- package/build/dex/wombat/wombat-quoter.js +192 -0
- package/build/dex/wombat/wombat-quoter.js.map +1 -0
- package/build/dex/wombat/wombat.d.ts +58 -0
- package/build/dex/wombat/wombat.js +298 -0
- package/build/dex/wombat/wombat.js.map +1 -0
- package/build/tenderly-simulation.d.ts +221 -0
- package/build/tenderly-simulation.js +517 -0
- package/build/tenderly-simulation.js.map +1 -0
- package/package.json +1 -1
- package/build/abi/pancakeswap-infinity/cl-pool-manager.abi.json +0 -136
- package/build/abi/pancakeswap-infinity/cl-quoter.abi.json +0 -66
- package/build/abi/pancakeswap-infinity/router.abi.json +0 -23
- package/build/dex/pancakeswap-infinity/config.d.ts +0 -4
- package/build/dex/pancakeswap-infinity/config.js +0 -30
- package/build/dex/pancakeswap-infinity/config.js.map +0 -1
- package/build/dex/pancakeswap-infinity/constants.d.ts +0 -11
- package/build/dex/pancakeswap-infinity/constants.js +0 -15
- package/build/dex/pancakeswap-infinity/constants.js.map +0 -1
- package/build/dex/pancakeswap-infinity/encoder.d.ts +0 -16
- package/build/dex/pancakeswap-infinity/encoder.js.map +0 -1
- package/build/dex/pancakeswap-infinity/liquidity.d.ts +0 -1
- package/build/dex/pancakeswap-infinity/liquidity.js +0 -7
- package/build/dex/pancakeswap-infinity/liquidity.js.map +0 -1
- package/build/dex/pancakeswap-infinity/optimizer.d.ts +0 -2
- package/build/dex/pancakeswap-infinity/optimizer.js +0 -48
- package/build/dex/pancakeswap-infinity/optimizer.js.map +0 -1
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.d.ts +0 -36
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.js +0 -393
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool-manager.js.map +0 -1
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.d.ts +0 -37
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.js +0 -289
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity-pool.js.map +0 -1
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity.d.ts +0 -42
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity.js +0 -350
- package/build/dex/pancakeswap-infinity/pancakeswap-infinity.js.map +0 -1
- package/build/dex/pancakeswap-infinity/subgraph.d.ts +0 -8
- package/build/dex/pancakeswap-infinity/subgraph.js +0 -122
- package/build/dex/pancakeswap-infinity/subgraph.js.map +0 -1
- package/build/dex/pancakeswap-infinity/types.d.ts +0 -101
- package/build/dex/pancakeswap-infinity/types.js.map +0 -1
- package/build/dex/pancakeswap-infinity/utils.d.ts +0 -5
- package/build/dex/pancakeswap-infinity/utils.js +0 -45
- package/build/dex/pancakeswap-infinity/utils.js.map +0 -1
- package/build/dex/renegade/api/auth.d.ts +0 -1
- package/build/dex/renegade/api/auth.js +0 -63
- package/build/dex/renegade/api/auth.js.map +0 -1
- package/build/dex/renegade/api/renegade-client.d.ts +0 -18
- package/build/dex/renegade/api/renegade-client.js +0 -82
- package/build/dex/renegade/api/renegade-client.js.map +0 -1
- package/build/dex/renegade/api/types.d.ts +0 -110
- package/build/dex/renegade/config.js +0 -16
- package/build/dex/renegade/config.js.map +0 -1
- package/build/dex/renegade/constants.d.ts +0 -25
- package/build/dex/renegade/constants.js +0 -47
- package/build/dex/renegade/constants.js.map +0 -1
- package/build/dex/renegade/rate-fetcher.d.ts +0 -23
- package/build/dex/renegade/rate-fetcher.js +0 -135
- package/build/dex/renegade/rate-fetcher.js.map +0 -1
- package/build/dex/renegade/renegade-levels-response.d.ts +0 -22
- package/build/dex/renegade/renegade-levels-response.js +0 -99
- package/build/dex/renegade/renegade-levels-response.js.map +0 -1
- package/build/dex/renegade/renegade.d.ts +0 -57
- package/build/dex/renegade/renegade.js +0 -499
- package/build/dex/renegade/renegade.js.map +0 -1
- package/build/dex/renegade/types.d.ts +0 -38
- package/build/dex/renegade/types.js +0 -4
- package/build/dex/renegade/types.js.map +0 -1
- /package/build/dex/{pancakeswap-infinity → bunni-v2}/types.js +0 -0
- /package/build/dex/{renegade/api → concentrator-arusd}/types.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/dex/pancakeswap-infinity/utils.ts"],"names":[],"mappings":";;AAGA,8BAUC;AAID,oBAcC;AAID,oEAKC;AAGD,4CAUC;AArDD,mCAAgC;AAGhC,SAAgB,SAAS,CAAC,CAAY,EAAE,CAAY;IAClD,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IACD,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,+DAA+D;AAC/D,uEAAuE;AACvE,SAAgB,IAAI,CAAC,GAAY;IAC/B,OAAO,eAAM,CAAC,KAAK,CAAC,SAAS,CAC3B,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CACjC,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,EACjE;QACE,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;QAC3B,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE;QAC3B,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE;QACvB,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE;QAC7B,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;QACjB,GAAG,CAAC,UAAU;KACf,CACF,CACF,CAAC;AACJ,CAAC;AAED,kDAAkD;AAClD,kEAAkE;AAClE,SAAgB,4BAA4B,CAAC,UAAkB;IAC7D,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAClD,oBAAoB;IACpB,OAAO,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;AAChD,CAAC;AAED,qEAAqE;AACrE,SAAgB,gBAAgB,CAC9B,WAAmB,EACnB,kBAA0B,CAAC;IAE3B,MAAM,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;IACnE,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;IAC1D,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAC5B,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,EAC1C,EAAE,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function generateRenegadeAuthHeaders(path: string, body: string, existingHeaders: Record<string, string>, apiKey: string, apiSecret: string): Record<string, string>;
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// Authentication helper for Renegade DEX integration.
|
|
3
|
-
// Implements HMAC-SHA256 authentication signing requests over path, sorted x-renegade-* headers, and body.
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.generateRenegadeAuthHeaders = generateRenegadeAuthHeaders;
|
|
6
|
-
const hmac_1 = require("@noble/hashes/hmac");
|
|
7
|
-
const sha256_1 = require("@noble/hashes/sha256");
|
|
8
|
-
const buffer_1 = require("buffer");
|
|
9
|
-
const constants_1 = require("../constants");
|
|
10
|
-
// Generate authentication headers for Renegade API requests.
|
|
11
|
-
// Adds API key header, generates HMAC-SHA256 signature over path + headers + body, and sets expiration timestamp.
|
|
12
|
-
function generateRenegadeAuthHeaders(path, body, existingHeaders, apiKey, apiSecret) {
|
|
13
|
-
// Clone existing headers to avoid mutation
|
|
14
|
-
const signedHeaders = { ...existingHeaders };
|
|
15
|
-
// Add timestamp and expiry
|
|
16
|
-
const now = Date.now();
|
|
17
|
-
const expiry = now + constants_1.REQUEST_SIGNATURE_DURATION_MS;
|
|
18
|
-
signedHeaders[constants_1.RENEGADE_AUTH_EXPIRATION_HEADER] = expiry.toString();
|
|
19
|
-
// Add API key
|
|
20
|
-
signedHeaders[constants_1.RENEGADE_API_KEY_HEADER] = apiKey;
|
|
21
|
-
// Decode API secret from base64 to Uint8Array
|
|
22
|
-
const apiSecretBytes = decodeBase64(apiSecret);
|
|
23
|
-
// Compute the MAC signature using the headers with expiry
|
|
24
|
-
const signature = computeHmacSignature(path, signedHeaders, body, apiSecretBytes);
|
|
25
|
-
signedHeaders[constants_1.RENEGADE_AUTH_HEADER] = signature;
|
|
26
|
-
// Return new headers object with both auth headers
|
|
27
|
-
return signedHeaders;
|
|
28
|
-
}
|
|
29
|
-
// Compute the HMAC-SHA256 signature for a Renegade API request.
|
|
30
|
-
// Returns base64-encoded HMAC signature without padding.
|
|
31
|
-
function computeHmacSignature(path, headers, body, apiSecret) {
|
|
32
|
-
// Filter and sort x-renegade-* headers (excluding auth header itself)
|
|
33
|
-
const candidateHeaderEntries = Object.entries(headers);
|
|
34
|
-
const renegadeHeaderEntries = candidateHeaderEntries
|
|
35
|
-
.filter(([key]) => key.toLowerCase().startsWith(constants_1.RENEGADE_HEADER_PREFIX))
|
|
36
|
-
.filter(([key]) => key.toLowerCase() !== constants_1.RENEGADE_AUTH_HEADER.toLowerCase());
|
|
37
|
-
// Canonicalize header order (lexicographic by header name, case-insensitive)
|
|
38
|
-
const canonicalHeaderEntries = renegadeHeaderEntries.sort(([a], [b]) => a.toLowerCase().localeCompare(b.toLowerCase()));
|
|
39
|
-
// Prepare crypto primitives
|
|
40
|
-
const encoder = new TextEncoder();
|
|
41
|
-
const mac = hmac_1.hmac.create(sha256_1.sha256, apiSecret);
|
|
42
|
-
// Add path to signature
|
|
43
|
-
mac.update(encoder.encode(path));
|
|
44
|
-
// Add Renegade headers to signature
|
|
45
|
-
for (const [key, value] of canonicalHeaderEntries) {
|
|
46
|
-
mac.update(encoder.encode(key));
|
|
47
|
-
mac.update(encoder.encode(value.toString()));
|
|
48
|
-
}
|
|
49
|
-
// Add stringified body to signature
|
|
50
|
-
mac.update(encoder.encode(body));
|
|
51
|
-
// Generate signature and return as base64 without padding
|
|
52
|
-
const digest = mac.digest();
|
|
53
|
-
return encodeBase64(digest);
|
|
54
|
-
}
|
|
55
|
-
// Decode a base64 string to a Uint8Array.
|
|
56
|
-
function decodeBase64(base64) {
|
|
57
|
-
return new Uint8Array(buffer_1.Buffer.from(base64, 'base64'));
|
|
58
|
-
}
|
|
59
|
-
// Encode a Uint8Array to a base64 string without trailing '=' padding.
|
|
60
|
-
function encodeBase64(data) {
|
|
61
|
-
return buffer_1.Buffer.from(data).toString('base64').replace(/=+$/, '');
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../../src/dex/renegade/api/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Network } from '../../../constants';
|
|
2
|
-
import { IDexHelper } from '../../../dex-helper/idex-helper';
|
|
3
|
-
import { Logger } from '../../../types';
|
|
4
|
-
import { ExternalOrder, QuoteQueryParams, SignedExternalQuote, SponsoredMatchResponse, SponsoredQuoteResponse } from './types';
|
|
5
|
-
export declare class RenegadeClient {
|
|
6
|
-
private readonly dexHelper;
|
|
7
|
-
private readonly network;
|
|
8
|
-
private readonly apiKey;
|
|
9
|
-
private readonly apiSecret;
|
|
10
|
-
private readonly logger;
|
|
11
|
-
private readonly baseUrl;
|
|
12
|
-
constructor(dexHelper: IDexHelper, network: Network, apiKey: string, apiSecret: string, logger: Logger);
|
|
13
|
-
requestQuote(externalOrder: ExternalOrder, queryParams?: QuoteQueryParams): Promise<SponsoredQuoteResponse>;
|
|
14
|
-
assembleExternalMatch(signedQuote: SignedExternalQuote, queryParams?: QuoteQueryParams & {
|
|
15
|
-
updated_order?: ExternalOrder | null;
|
|
16
|
-
}): Promise<SponsoredMatchResponse>;
|
|
17
|
-
private buildUrlWithQueryParams;
|
|
18
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// RenegadeClient - Client for Renegade match endpoint API
|
|
3
|
-
// Handles authentication and HTTP requests to Renegade's external match endpoint.
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.RenegadeClient = void 0;
|
|
6
|
-
const auth_1 = require("./auth");
|
|
7
|
-
const constants_1 = require("../constants");
|
|
8
|
-
// Default headers for Renegade API requests
|
|
9
|
-
const DEFAULT_RENEGADE_HEADERS = {
|
|
10
|
-
'content-type': 'application/json',
|
|
11
|
-
accept: 'application/json;number=string',
|
|
12
|
-
};
|
|
13
|
-
// Client for interacting with Renegade match endpoint API
|
|
14
|
-
class RenegadeClient {
|
|
15
|
-
dexHelper;
|
|
16
|
-
network;
|
|
17
|
-
apiKey;
|
|
18
|
-
apiSecret;
|
|
19
|
-
logger;
|
|
20
|
-
baseUrl;
|
|
21
|
-
constructor(dexHelper, network, apiKey, apiSecret, logger) {
|
|
22
|
-
this.dexHelper = dexHelper;
|
|
23
|
-
this.network = network;
|
|
24
|
-
this.apiKey = apiKey;
|
|
25
|
-
this.apiSecret = apiSecret;
|
|
26
|
-
this.logger = logger;
|
|
27
|
-
this.baseUrl = (0, constants_1.buildRenegadeApiUrl)(this.network);
|
|
28
|
-
}
|
|
29
|
-
// Request a quote from Renegade API
|
|
30
|
-
async requestQuote(externalOrder, queryParams) {
|
|
31
|
-
const requestBody = {
|
|
32
|
-
external_order: externalOrder,
|
|
33
|
-
};
|
|
34
|
-
const { url: quoteUrl, pathWithQuery } = this.buildUrlWithQueryParams(constants_1.RENEGADE_QUOTE_ENDPOINT, queryParams);
|
|
35
|
-
const headers = (0, auth_1.generateRenegadeAuthHeaders)(pathWithQuery, JSON.stringify(requestBody), DEFAULT_RENEGADE_HEADERS, this.apiKey, this.apiSecret);
|
|
36
|
-
this.logger.debug('Requesting quote from Renegade API', {
|
|
37
|
-
url: quoteUrl,
|
|
38
|
-
order: externalOrder,
|
|
39
|
-
queryParams,
|
|
40
|
-
});
|
|
41
|
-
const response = await this.dexHelper.httpRequest.post(quoteUrl, requestBody, constants_1.RENEGADE_API_TIMEOUT_MS, headers);
|
|
42
|
-
return response;
|
|
43
|
-
}
|
|
44
|
-
// Assemble an external match from a signed quote
|
|
45
|
-
async assembleExternalMatch(signedQuote, queryParams) {
|
|
46
|
-
const requestBody = {
|
|
47
|
-
signed_quote: signedQuote,
|
|
48
|
-
};
|
|
49
|
-
if (queryParams?.updated_order !== undefined) {
|
|
50
|
-
requestBody.updated_order = queryParams.updated_order;
|
|
51
|
-
}
|
|
52
|
-
const { updated_order, ...urlQueryParams } = queryParams || {};
|
|
53
|
-
const { url: assembleUrl, pathWithQuery } = this.buildUrlWithQueryParams(constants_1.RENEGADE_ASSEMBLE_ENDPOINT, urlQueryParams);
|
|
54
|
-
const headers = (0, auth_1.generateRenegadeAuthHeaders)(pathWithQuery, JSON.stringify(requestBody), DEFAULT_RENEGADE_HEADERS, this.apiKey, this.apiSecret);
|
|
55
|
-
this.logger.debug('Assembling external match from Renegade API', {
|
|
56
|
-
url: assembleUrl,
|
|
57
|
-
queryParams,
|
|
58
|
-
});
|
|
59
|
-
const response = await this.dexHelper.httpRequest.post(assembleUrl, requestBody, constants_1.RENEGADE_API_TIMEOUT_MS, headers);
|
|
60
|
-
this.logger.debug('Assembled external match from Renegade API', JSON.stringify(response, null, 2));
|
|
61
|
-
return response;
|
|
62
|
-
}
|
|
63
|
-
// Build URL with query parameters from endpoint path and optional query params
|
|
64
|
-
buildUrlWithQueryParams(endpoint, queryParams) {
|
|
65
|
-
const url = new URL(endpoint, this.baseUrl);
|
|
66
|
-
if (queryParams) {
|
|
67
|
-
const searchParams = new URLSearchParams();
|
|
68
|
-
for (const [key, value] of Object.entries(queryParams)) {
|
|
69
|
-
if (value !== undefined) {
|
|
70
|
-
searchParams.append(key, value.toString());
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
url.search = searchParams.toString();
|
|
74
|
-
}
|
|
75
|
-
return {
|
|
76
|
-
url: url.toString(),
|
|
77
|
-
pathWithQuery: url.pathname + url.search,
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
exports.RenegadeClient = RenegadeClient;
|
|
82
|
-
//# sourceMappingURL=renegade-client.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"renegade-client.js","sourceRoot":"","sources":["../../../../src/dex/renegade/api/renegade-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
export type AssembleExternalMatchRequest = {
|
|
2
|
-
signed_quote: SignedExternalQuote;
|
|
3
|
-
do_gas_estimation?: boolean;
|
|
4
|
-
allow_shared?: boolean;
|
|
5
|
-
matching_pool?: string;
|
|
6
|
-
relayer_fee_rate?: number;
|
|
7
|
-
receiver_address?: string | null;
|
|
8
|
-
updated_order?: ExternalOrder | null;
|
|
9
|
-
};
|
|
10
|
-
export type ExternalOrder = {
|
|
11
|
-
quote_mint: string;
|
|
12
|
-
base_mint: string;
|
|
13
|
-
side: 'Buy' | 'Sell';
|
|
14
|
-
base_amount: string;
|
|
15
|
-
quote_amount: string;
|
|
16
|
-
exact_base_output: string;
|
|
17
|
-
exact_quote_output: string;
|
|
18
|
-
min_fill_size: string;
|
|
19
|
-
};
|
|
20
|
-
export type ExternalQuoteRequest = {
|
|
21
|
-
external_order: ExternalOrder;
|
|
22
|
-
matching_pool?: string;
|
|
23
|
-
relayer_fee_rate?: number;
|
|
24
|
-
};
|
|
25
|
-
export type SignedExternalQuote = {
|
|
26
|
-
quote: ApiExternalQuote;
|
|
27
|
-
signature: string;
|
|
28
|
-
};
|
|
29
|
-
export type SponsoredMatchResponse = {
|
|
30
|
-
match_bundle: AtomicMatchApiBundle;
|
|
31
|
-
is_sponsored: boolean;
|
|
32
|
-
gas_sponsorship_info?: GasSponsorshipInfo | null;
|
|
33
|
-
};
|
|
34
|
-
export type SponsoredQuoteResponse = {
|
|
35
|
-
signed_quote: SignedExternalQuote;
|
|
36
|
-
gas_sponsorship_info?: SignedGasSponsorshipInfo | null;
|
|
37
|
-
};
|
|
38
|
-
export type QuoteQueryParams = {
|
|
39
|
-
disable_gas_sponsorship?: boolean;
|
|
40
|
-
refund_address?: string;
|
|
41
|
-
refund_native_eth?: boolean;
|
|
42
|
-
use_gas_sponsorship?: boolean;
|
|
43
|
-
};
|
|
44
|
-
type ApiExternalAssetTransfer = {
|
|
45
|
-
mint: string;
|
|
46
|
-
amount: string;
|
|
47
|
-
};
|
|
48
|
-
type ApiExternalMatchResult = {
|
|
49
|
-
quote_mint: string;
|
|
50
|
-
base_mint: string;
|
|
51
|
-
quote_amount: string;
|
|
52
|
-
base_amount: string;
|
|
53
|
-
direction: 'Buy' | 'Sell';
|
|
54
|
-
};
|
|
55
|
-
type ApiTimestampedPrice = {
|
|
56
|
-
price: string;
|
|
57
|
-
timestamp: number;
|
|
58
|
-
};
|
|
59
|
-
type AtomicMatchApiBundle = {
|
|
60
|
-
match_result: ApiExternalMatchResult;
|
|
61
|
-
fees: FeeTake;
|
|
62
|
-
receive: ApiExternalAssetTransfer;
|
|
63
|
-
send: ApiExternalAssetTransfer;
|
|
64
|
-
settlement_tx: TransactionRequest;
|
|
65
|
-
};
|
|
66
|
-
type ApiExternalQuote = {
|
|
67
|
-
order: ExternalOrder;
|
|
68
|
-
match_result: ApiExternalMatchResult;
|
|
69
|
-
fees: FeeTake;
|
|
70
|
-
send: ApiExternalAssetTransfer;
|
|
71
|
-
receive: ApiExternalAssetTransfer;
|
|
72
|
-
price: ApiTimestampedPrice;
|
|
73
|
-
timestamp: number;
|
|
74
|
-
};
|
|
75
|
-
type FeeTake = {
|
|
76
|
-
relayer_fee: string;
|
|
77
|
-
protocol_fee: string;
|
|
78
|
-
};
|
|
79
|
-
type GasSponsorshipInfo = {
|
|
80
|
-
refund_amount: string;
|
|
81
|
-
refund_native_eth: boolean;
|
|
82
|
-
refund_address: string | null;
|
|
83
|
-
};
|
|
84
|
-
type SignedGasSponsorshipInfo = {
|
|
85
|
-
gas_sponsorship_info: GasSponsorshipInfo;
|
|
86
|
-
signature: string;
|
|
87
|
-
};
|
|
88
|
-
type TransactionRequest = {
|
|
89
|
-
from?: string | null;
|
|
90
|
-
to?: string | null;
|
|
91
|
-
gasPrice?: string;
|
|
92
|
-
maxFeePerGas?: string;
|
|
93
|
-
maxPriorityFeePerGas?: string;
|
|
94
|
-
maxFeePerBlobGas?: string;
|
|
95
|
-
gas?: string;
|
|
96
|
-
value?: string;
|
|
97
|
-
input?: string;
|
|
98
|
-
data?: string;
|
|
99
|
-
nonce?: string;
|
|
100
|
-
chainId?: string;
|
|
101
|
-
accessList?: Array<{
|
|
102
|
-
address: string;
|
|
103
|
-
storageKeys: string[];
|
|
104
|
-
}>;
|
|
105
|
-
type?: string;
|
|
106
|
-
blobVersionedHashes?: string[];
|
|
107
|
-
sidecar?: Record<string, any>;
|
|
108
|
-
authorizationList?: Array<Record<string, any>>;
|
|
109
|
-
};
|
|
110
|
-
export {};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RenegadeConfig = void 0;
|
|
4
|
-
const constants_1 = require("../../constants");
|
|
5
|
-
const constants_2 = require("./constants");
|
|
6
|
-
exports.RenegadeConfig = {
|
|
7
|
-
[constants_2.RENEGADE_NAME]: {
|
|
8
|
-
[constants_1.Network.ARBITRUM]: {
|
|
9
|
-
usdcAddress: '0xaf88d065e77c8cc2239327c5edb3a432268e5831',
|
|
10
|
-
},
|
|
11
|
-
[constants_1.Network.BASE]: {
|
|
12
|
-
usdcAddress: '0x833589fcd6edb6e08f4c7c32d4f71b54bda02913',
|
|
13
|
-
},
|
|
14
|
-
},
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/renegade/config.ts"],"names":[],"mappings":";;;AAEA,+CAA0C;AAC1C,2CAA4C;AAE/B,QAAA,cAAc,GAA4B;IACrD,CAAC,yBAAa,CAAC,EAAE;QACf,CAAC,mBAAO,CAAC,QAAQ,CAAC,EAAE;YAClB,WAAW,EAAE,4CAA4C;SAC1D;QACD,CAAC,mBAAO,CAAC,IAAI,CAAC,EAAE;YACd,WAAW,EAAE,4CAA4C;SAC1D;KACF;CACF,CAAC"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Network } from '../../constants';
|
|
2
|
-
export declare const RENEGADE_NAME = "Renegade";
|
|
3
|
-
export declare const RENEGADE_ARBITRUM_BASE_URL = "https://arbitrum-one.auth-server.renegade.fi";
|
|
4
|
-
export declare const RENEGADE_BASE_BASE_URL = "https://base-mainnet.auth-server.renegade.fi";
|
|
5
|
-
export declare const RENEGADE_LEVELS_ENDPOINT = "/rfqt/v3/levels";
|
|
6
|
-
export declare const RENEGADE_QUOTE_ENDPOINT = "/v0/matching-engine/quote";
|
|
7
|
-
export declare const RENEGADE_ASSEMBLE_ENDPOINT = "/v0/matching-engine/assemble-external-match";
|
|
8
|
-
export declare function buildRenegadeApiUrl(network: Network): string;
|
|
9
|
-
export declare const RENEGADE_LEVELS_CACHE_TTL_SECONDS = 30;
|
|
10
|
-
export declare const RENEGADE_LEVELS_POLLING_INTERVAL = 15000;
|
|
11
|
-
export declare const RENEGADE_LEVELS_CACHE_KEY = "renegade_levels";
|
|
12
|
-
export declare const RENEGADE_TOKEN_METADATA_CACHE_TTL_SECONDS: number;
|
|
13
|
-
export declare const RENEGADE_TOKEN_METADATA_POLLING_INTERVAL: number;
|
|
14
|
-
export declare const RENEGADE_TOKEN_METADATA_CACHE_KEY = "renegade_token_metadata";
|
|
15
|
-
export declare const RENEGADE_QUOTE_CACHE_TTL_SECONDS = 5;
|
|
16
|
-
export declare const RENEGADE_QUOTE_CACHE_KEY = "renegade_quote";
|
|
17
|
-
export declare const RENEGADE_API_TIMEOUT_MS = 10000;
|
|
18
|
-
export declare const RENEGADE_INIT_TIMEOUT_MS = 5000;
|
|
19
|
-
export declare const RENEGADE_HEADER_PREFIX = "x-renegade";
|
|
20
|
-
export declare const RENEGADE_API_KEY_HEADER = "x-renegade-api-key";
|
|
21
|
-
export declare const RENEGADE_AUTH_HEADER = "x-renegade-auth";
|
|
22
|
-
export declare const RENEGADE_AUTH_EXPIRATION_HEADER = "x-renegade-auth-expiration";
|
|
23
|
-
export declare const REQUEST_SIGNATURE_DURATION_MS = 10000;
|
|
24
|
-
export declare const RENEGADE_GAS_COST = 3000000;
|
|
25
|
-
export declare const RENEGADE_TOKEN_MAPPINGS_BASE_URL = "https://raw.githubusercontent.com/renegade-fi/token-mappings/main/";
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RENEGADE_TOKEN_MAPPINGS_BASE_URL = exports.RENEGADE_GAS_COST = exports.REQUEST_SIGNATURE_DURATION_MS = exports.RENEGADE_AUTH_EXPIRATION_HEADER = exports.RENEGADE_AUTH_HEADER = exports.RENEGADE_API_KEY_HEADER = exports.RENEGADE_HEADER_PREFIX = exports.RENEGADE_INIT_TIMEOUT_MS = exports.RENEGADE_API_TIMEOUT_MS = exports.RENEGADE_QUOTE_CACHE_KEY = exports.RENEGADE_QUOTE_CACHE_TTL_SECONDS = exports.RENEGADE_TOKEN_METADATA_CACHE_KEY = exports.RENEGADE_TOKEN_METADATA_POLLING_INTERVAL = exports.RENEGADE_TOKEN_METADATA_CACHE_TTL_SECONDS = exports.RENEGADE_LEVELS_CACHE_KEY = exports.RENEGADE_LEVELS_POLLING_INTERVAL = exports.RENEGADE_LEVELS_CACHE_TTL_SECONDS = exports.RENEGADE_ASSEMBLE_ENDPOINT = exports.RENEGADE_QUOTE_ENDPOINT = exports.RENEGADE_LEVELS_ENDPOINT = exports.RENEGADE_BASE_BASE_URL = exports.RENEGADE_ARBITRUM_BASE_URL = exports.RENEGADE_NAME = void 0;
|
|
4
|
-
exports.buildRenegadeApiUrl = buildRenegadeApiUrl;
|
|
5
|
-
// Constants for Renegade DEX integration
|
|
6
|
-
const constants_1 = require("../../constants");
|
|
7
|
-
exports.RENEGADE_NAME = 'Renegade';
|
|
8
|
-
// Base API URLs for each network
|
|
9
|
-
exports.RENEGADE_ARBITRUM_BASE_URL = 'https://arbitrum-one.auth-server.renegade.fi';
|
|
10
|
-
exports.RENEGADE_BASE_BASE_URL = 'https://base-mainnet.auth-server.renegade.fi';
|
|
11
|
-
exports.RENEGADE_LEVELS_ENDPOINT = '/rfqt/v3/levels';
|
|
12
|
-
exports.RENEGADE_QUOTE_ENDPOINT = '/v0/matching-engine/quote';
|
|
13
|
-
exports.RENEGADE_ASSEMBLE_ENDPOINT = '/v0/matching-engine/assemble-external-match';
|
|
14
|
-
// Get Renegade API base URL for a specific network.
|
|
15
|
-
function buildRenegadeApiUrl(network) {
|
|
16
|
-
switch (network) {
|
|
17
|
-
case constants_1.Network.ARBITRUM:
|
|
18
|
-
return exports.RENEGADE_ARBITRUM_BASE_URL;
|
|
19
|
-
case constants_1.Network.BASE:
|
|
20
|
-
return exports.RENEGADE_BASE_BASE_URL;
|
|
21
|
-
default:
|
|
22
|
-
throw new Error(`Network ${network} is not supported by Renegade`);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
// Caching constants
|
|
26
|
-
exports.RENEGADE_LEVELS_CACHE_TTL_SECONDS = 30;
|
|
27
|
-
exports.RENEGADE_LEVELS_POLLING_INTERVAL = 15_000;
|
|
28
|
-
exports.RENEGADE_LEVELS_CACHE_KEY = 'renegade_levels';
|
|
29
|
-
exports.RENEGADE_TOKEN_METADATA_CACHE_TTL_SECONDS = 24 * 60 * 60; // 24 hours
|
|
30
|
-
exports.RENEGADE_TOKEN_METADATA_POLLING_INTERVAL = 24 * 60 * 60 * 1000; // 24 hours
|
|
31
|
-
exports.RENEGADE_TOKEN_METADATA_CACHE_KEY = 'renegade_token_metadata';
|
|
32
|
-
exports.RENEGADE_QUOTE_CACHE_TTL_SECONDS = 5;
|
|
33
|
-
exports.RENEGADE_QUOTE_CACHE_KEY = 'renegade_quote';
|
|
34
|
-
// API timeout settings
|
|
35
|
-
exports.RENEGADE_API_TIMEOUT_MS = 10_000;
|
|
36
|
-
exports.RENEGADE_INIT_TIMEOUT_MS = 5_000;
|
|
37
|
-
// Authentication constants
|
|
38
|
-
exports.RENEGADE_HEADER_PREFIX = 'x-renegade';
|
|
39
|
-
exports.RENEGADE_API_KEY_HEADER = 'x-renegade-api-key';
|
|
40
|
-
exports.RENEGADE_AUTH_HEADER = 'x-renegade-auth';
|
|
41
|
-
exports.RENEGADE_AUTH_EXPIRATION_HEADER = 'x-renegade-auth-expiration';
|
|
42
|
-
exports.REQUEST_SIGNATURE_DURATION_MS = 10_000;
|
|
43
|
-
// Gas cost estimation
|
|
44
|
-
exports.RENEGADE_GAS_COST = 3_000_000;
|
|
45
|
-
// Token metadata API constants
|
|
46
|
-
exports.RENEGADE_TOKEN_MAPPINGS_BASE_URL = 'https://raw.githubusercontent.com/renegade-fi/token-mappings/main/';
|
|
47
|
-
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/dex/renegade/constants.ts"],"names":[],"mappings":";;;AAiBA,kDASC;AA1BD,yCAAyC;AACzC,+CAA0C;AAE7B,QAAA,aAAa,GAAG,UAAU,CAAC;AAExC,iCAAiC;AACpB,QAAA,0BAA0B,GACrC,8CAA8C,CAAC;AACpC,QAAA,sBAAsB,GACjC,8CAA8C,CAAC;AAEpC,QAAA,wBAAwB,GAAG,iBAAiB,CAAC;AAC7C,QAAA,uBAAuB,GAAG,2BAA2B,CAAC;AACtD,QAAA,0BAA0B,GACrC,6CAA6C,CAAC;AAEhD,oDAAoD;AACpD,SAAgB,mBAAmB,CAAC,OAAgB;IAClD,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,mBAAO,CAAC,QAAQ;YACnB,OAAO,kCAA0B,CAAC;QACpC,KAAK,mBAAO,CAAC,IAAI;YACf,OAAO,8BAAsB,CAAC;QAChC;YACE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,+BAA+B,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,oBAAoB;AACP,QAAA,iCAAiC,GAAG,EAAE,CAAC;AACvC,QAAA,gCAAgC,GAAG,MAAM,CAAC;AAC1C,QAAA,yBAAyB,GAAG,iBAAiB,CAAC;AAE9C,QAAA,yCAAyC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW;AACrE,QAAA,wCAAwC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW;AAC3E,QAAA,iCAAiC,GAAG,yBAAyB,CAAC;AAE9D,QAAA,gCAAgC,GAAG,CAAC,CAAC;AACrC,QAAA,wBAAwB,GAAG,gBAAgB,CAAC;AAEzD,uBAAuB;AACV,QAAA,uBAAuB,GAAG,MAAM,CAAC;AACjC,QAAA,wBAAwB,GAAG,KAAK,CAAC;AAE9C,2BAA2B;AACd,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,uBAAuB,GAAG,oBAAoB,CAAC;AAC/C,QAAA,oBAAoB,GAAG,iBAAiB,CAAC;AACzC,QAAA,+BAA+B,GAAG,4BAA4B,CAAC;AAC/D,QAAA,6BAA6B,GAAG,MAAM,CAAC;AAEpD,sBAAsB;AACT,QAAA,iBAAiB,GAAG,SAAS,CAAC;AAE3C,+BAA+B;AAClB,QAAA,gCAAgC,GAC3C,oEAAoE,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Network } from '../../constants';
|
|
2
|
-
import { IDexHelper } from '../../dex-helper';
|
|
3
|
-
import { Logger } from '../../types';
|
|
4
|
-
import { RenegadeRateFetcherConfig } from './types';
|
|
5
|
-
export declare class RateFetcher {
|
|
6
|
-
private dexHelper;
|
|
7
|
-
private dexKey;
|
|
8
|
-
private network;
|
|
9
|
-
private logger;
|
|
10
|
-
private config;
|
|
11
|
-
private levelsFetcher;
|
|
12
|
-
private levelsCacheKey;
|
|
13
|
-
private levelsCacheTTL;
|
|
14
|
-
private tokenMetadataFetcher;
|
|
15
|
-
private tokenMetadataCacheKey;
|
|
16
|
-
private tokenMetadataCacheTTL;
|
|
17
|
-
constructor(dexHelper: IDexHelper, dexKey: string, network: Network, logger: Logger, config: RenegadeRateFetcherConfig);
|
|
18
|
-
private getChainName;
|
|
19
|
-
private handleLevelsResponse;
|
|
20
|
-
private handleTokenMetadataResponse;
|
|
21
|
-
start(): void;
|
|
22
|
-
stop(): void;
|
|
23
|
-
}
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RateFetcher = void 0;
|
|
4
|
-
const constants_1 = require("../../constants");
|
|
5
|
-
const fetcher_1 = require("../../lib/fetcher/fetcher");
|
|
6
|
-
const auth_1 = require("./api/auth");
|
|
7
|
-
const constants_2 = require("./constants");
|
|
8
|
-
const renegade_levels_response_1 = require("./renegade-levels-response");
|
|
9
|
-
// RateFetcher for Renegade DEX integration using the Fetcher class.
|
|
10
|
-
// This implementation uses the standard Fetcher class with HMAC-SHA256 authentication
|
|
11
|
-
// and includes polling functionality for real-time price level updates.
|
|
12
|
-
class RateFetcher {
|
|
13
|
-
dexHelper;
|
|
14
|
-
dexKey;
|
|
15
|
-
network;
|
|
16
|
-
logger;
|
|
17
|
-
config;
|
|
18
|
-
levelsFetcher;
|
|
19
|
-
levelsCacheKey;
|
|
20
|
-
levelsCacheTTL;
|
|
21
|
-
tokenMetadataFetcher;
|
|
22
|
-
tokenMetadataCacheKey;
|
|
23
|
-
tokenMetadataCacheTTL;
|
|
24
|
-
constructor(dexHelper, dexKey, network, logger, config) {
|
|
25
|
-
this.dexHelper = dexHelper;
|
|
26
|
-
this.dexKey = dexKey;
|
|
27
|
-
this.network = network;
|
|
28
|
-
this.logger = logger;
|
|
29
|
-
this.config = config;
|
|
30
|
-
this.levelsCacheKey = config.levelsCacheKey;
|
|
31
|
-
this.levelsCacheTTL = config.levelsCacheTTL;
|
|
32
|
-
this.tokenMetadataCacheKey = config.tokenMetadataCacheKey;
|
|
33
|
-
this.tokenMetadataCacheTTL = config.tokenMetadataCacheTTL;
|
|
34
|
-
// Build network-specific API URL
|
|
35
|
-
const baseUrl = (0, constants_2.buildRenegadeApiUrl)(this.network);
|
|
36
|
-
const url = `${baseUrl}${constants_2.RENEGADE_LEVELS_ENDPOINT}`;
|
|
37
|
-
// Create authentication function for Renegade API
|
|
38
|
-
const authenticate = (options) => {
|
|
39
|
-
// Convert headers to string format for auth function
|
|
40
|
-
const stringHeaders = {};
|
|
41
|
-
for (const [key, value] of Object.entries(options.headers ?? {})) {
|
|
42
|
-
stringHeaders[key] = String(value);
|
|
43
|
-
}
|
|
44
|
-
// Generate authenticated headers using HMAC-SHA256
|
|
45
|
-
const authenticatedHeaders = (0, auth_1.generateRenegadeAuthHeaders)(constants_2.RENEGADE_LEVELS_ENDPOINT, options.data ? JSON.stringify(options.data) : '', // Convert body to string
|
|
46
|
-
stringHeaders, this.config.apiKey, this.config.apiSecret);
|
|
47
|
-
options.headers = authenticatedHeaders;
|
|
48
|
-
return options;
|
|
49
|
-
};
|
|
50
|
-
// Create caster function to validate and transform response
|
|
51
|
-
const caster = (data) => {
|
|
52
|
-
if (typeof data !== 'object' || data === null) {
|
|
53
|
-
throw new Error('Invalid response format from Renegade API');
|
|
54
|
-
}
|
|
55
|
-
const response = data;
|
|
56
|
-
return new renegade_levels_response_1.RenegadeLevelsResponse(response);
|
|
57
|
-
};
|
|
58
|
-
// Create request info for the Fetcher
|
|
59
|
-
const requestInfo = {
|
|
60
|
-
requestOptions: {
|
|
61
|
-
url,
|
|
62
|
-
method: 'GET',
|
|
63
|
-
headers: {
|
|
64
|
-
'Content-Type': 'application/json',
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
caster,
|
|
68
|
-
authenticate,
|
|
69
|
-
};
|
|
70
|
-
// Initialize the Fetcher
|
|
71
|
-
this.levelsFetcher = new fetcher_1.Fetcher(this.dexHelper.httpRequest, {
|
|
72
|
-
info: requestInfo,
|
|
73
|
-
handler: this.handleLevelsResponse.bind(this),
|
|
74
|
-
}, constants_2.RENEGADE_LEVELS_POLLING_INTERVAL, this.logger);
|
|
75
|
-
const chainName = this.getChainName();
|
|
76
|
-
const tokenUrl = `${constants_2.RENEGADE_TOKEN_MAPPINGS_BASE_URL}${chainName}.json`;
|
|
77
|
-
const tokenCaster = (data) => {
|
|
78
|
-
if (typeof data !== 'object' || data === null) {
|
|
79
|
-
throw new Error('Invalid token metadata response format');
|
|
80
|
-
}
|
|
81
|
-
return data;
|
|
82
|
-
};
|
|
83
|
-
const tokenRequestInfo = {
|
|
84
|
-
requestOptions: {
|
|
85
|
-
url: tokenUrl,
|
|
86
|
-
method: 'GET',
|
|
87
|
-
},
|
|
88
|
-
caster: tokenCaster,
|
|
89
|
-
};
|
|
90
|
-
this.tokenMetadataFetcher = new fetcher_1.Fetcher(this.dexHelper.httpRequest, {
|
|
91
|
-
info: tokenRequestInfo,
|
|
92
|
-
handler: this.handleTokenMetadataResponse.bind(this),
|
|
93
|
-
}, constants_2.RENEGADE_TOKEN_METADATA_POLLING_INTERVAL, this.logger);
|
|
94
|
-
}
|
|
95
|
-
// Get chain name for token mappings URL.
|
|
96
|
-
getChainName() {
|
|
97
|
-
switch (this.network) {
|
|
98
|
-
case constants_1.Network.ARBITRUM:
|
|
99
|
-
return 'arbitrum-one';
|
|
100
|
-
case constants_1.Network.BASE:
|
|
101
|
-
return 'base-mainnet';
|
|
102
|
-
default:
|
|
103
|
-
throw new Error(`Network ${this.network} is not supported for token metadata`);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
// Handle successful levels response from the Fetcher.
|
|
107
|
-
handleLevelsResponse(levelsResponse) {
|
|
108
|
-
const rawData = levelsResponse.getRawData();
|
|
109
|
-
this.logger.info(`Renegade levels response: ${JSON.stringify(rawData)}`);
|
|
110
|
-
this.dexHelper.cache.setex(this.dexKey, this.network, this.levelsCacheKey, this.levelsCacheTTL, JSON.stringify(rawData));
|
|
111
|
-
}
|
|
112
|
-
// Handle successful token metadata response from the Fetcher.
|
|
113
|
-
handleTokenMetadataResponse(tokenRemap) {
|
|
114
|
-
const tokensMap = {};
|
|
115
|
-
for (const tokenInfo of tokenRemap.tokens) {
|
|
116
|
-
const address = tokenInfo.address.toLowerCase();
|
|
117
|
-
tokensMap[address] = {
|
|
118
|
-
address: tokenInfo.address,
|
|
119
|
-
decimals: tokenInfo.decimals,
|
|
120
|
-
symbol: tokenInfo.ticker,
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
this.dexHelper.cache.setex(this.dexKey, this.network, this.tokenMetadataCacheKey, this.tokenMetadataCacheTTL, JSON.stringify(tokensMap));
|
|
124
|
-
}
|
|
125
|
-
start() {
|
|
126
|
-
this.levelsFetcher.startPolling();
|
|
127
|
-
this.tokenMetadataFetcher.startPolling();
|
|
128
|
-
}
|
|
129
|
-
stop() {
|
|
130
|
-
this.levelsFetcher.stopPolling();
|
|
131
|
-
this.tokenMetadataFetcher.stopPolling();
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
exports.RateFetcher = RateFetcher;
|
|
135
|
-
//# sourceMappingURL=rate-fetcher.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/renegade/rate-fetcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { Address, PoolLiquidity } from '../../types';
|
|
2
|
-
import { RenegadeDepth } from './types';
|
|
3
|
-
export declare class RenegadeLevelsResponse {
|
|
4
|
-
private readonly levels;
|
|
5
|
-
private readonly poolLiquidity;
|
|
6
|
-
constructor(data: {
|
|
7
|
-
[pairIdentifier: string]: RenegadeDepth;
|
|
8
|
-
});
|
|
9
|
-
getRawData(): {
|
|
10
|
-
[pairIdentifier: string]: RenegadeDepth;
|
|
11
|
-
};
|
|
12
|
-
getPoolLiquidity(tokenAddress: Address): PoolLiquidity[];
|
|
13
|
-
getDirectionalLiquidityForToken(tokenAddress: Address, usdcAddress: Address): Array<{
|
|
14
|
-
baseToken: Address;
|
|
15
|
-
quoteToken: Address;
|
|
16
|
-
outboundLiquidityUSD: number;
|
|
17
|
-
reverseLiquidityUSD: number;
|
|
18
|
-
isTokenBase: boolean;
|
|
19
|
-
}>;
|
|
20
|
-
private parsePairIdentifier;
|
|
21
|
-
private calculateLiquidityUSD;
|
|
22
|
-
}
|