@steerprotocol/sdk 1.30.4 → 1.30.6
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/dist/cjs/const/amm/configs/ammConfig.js +33 -34
- package/dist/cjs/const/amm/configs/ammConfig.js.map +1 -1
- package/dist/cjs/const/amm/configs/protocols/index.js +0 -39
- package/dist/cjs/const/amm/configs/protocols/index.js.map +1 -1
- package/dist/cjs/const/stabilityVaults/index.js +1 -1
- package/dist/cjs/const/stabilityVaults/index.js.map +1 -1
- package/dist/esm/base/FeeManagerClient.js +26 -22
- package/dist/esm/base/FeeManagerClient.js.map +1 -1
- package/dist/esm/base/PoolClient.js +19 -15
- package/dist/esm/base/PoolClient.js.map +1 -1
- package/dist/esm/base/SmartRewardClient.js +10 -6
- package/dist/esm/base/SmartRewardClient.js.map +1 -1
- package/dist/esm/base/SmartRewards.js +11 -7
- package/dist/esm/base/SmartRewards.js.map +1 -1
- package/dist/esm/base/StakingClient.js +18 -14
- package/dist/esm/base/StakingClient.js.map +1 -1
- package/dist/esm/base/SubgraphClient.js +8 -4
- package/dist/esm/base/SubgraphClient.js.map +1 -1
- package/dist/esm/base/VaultClient.js +55 -37
- package/dist/esm/base/VaultClient.js.map +1 -1
- package/dist/esm/base/vault/deposit/index.js +42 -38
- package/dist/esm/base/vault/deposit/index.js.map +1 -1
- package/dist/esm/base/vault/deposit/types.js +2 -1
- package/dist/esm/base/vault/single-asset/calculateLimitPrice.js +39 -32
- package/dist/esm/base/vault/single-asset/calculateLimitPrice.js.map +1 -1
- package/dist/esm/base/vault/single-asset/calculateSwapAmount.js +8 -5
- package/dist/esm/base/vault/single-asset/calculateSwapAmount.js.map +1 -1
- package/dist/esm/base/vault/single-asset/estimateLpTokens.js +12 -7
- package/dist/esm/base/vault/single-asset/estimateLpTokens.js.map +1 -1
- package/dist/esm/base/vault/single-asset/index.js +32 -6
- package/dist/esm/base/vault/single-asset/index.js.map +1 -1
- package/dist/esm/base/vault/single-asset/simulateSwap.js +30 -24
- package/dist/esm/base/vault/single-asset/simulateSwap.js.map +1 -1
- package/dist/esm/base/vault/single-asset/singleAssetDeposit.js +33 -29
- package/dist/esm/base/vault/single-asset/singleAssetDeposit.js.map +1 -1
- package/dist/esm/base/vault/single-asset/types.js +5 -2
- package/dist/esm/base/vault/single-asset/types.js.map +1 -1
- package/dist/esm/base/vault/utils.js +16 -7
- package/dist/esm/base/vault/utils.js.map +1 -1
- package/dist/esm/base/vault/withdraw/index.js +10 -6
- package/dist/esm/base/vault/withdraw/index.js.map +1 -1
- package/dist/esm/base/vault/withdraw/types.js +2 -1
- package/dist/esm/client.js +15 -11
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/const/abis/UniswapPool.js +4 -1
- package/dist/esm/const/abis/UniswapPool.js.map +1 -1
- package/dist/esm/const/abis/erc1155.js +4 -1
- package/dist/esm/const/abis/erc1155.js.map +1 -1
- package/dist/esm/const/abis/erc20.js +4 -1
- package/dist/esm/const/abis/erc20.js.map +1 -1
- package/dist/esm/const/abis/erc721.js +4 -1
- package/dist/esm/const/abis/erc721.js.map +1 -1
- package/dist/esm/const/abis/feeManager.js +4 -1
- package/dist/esm/const/abis/feeManager.js.map +1 -1
- package/dist/esm/const/abis/index.js +24 -8
- package/dist/esm/const/abis/index.js.map +1 -1
- package/dist/esm/const/abis/quoter.js +9 -6
- package/dist/esm/const/abis/quoter.js.map +1 -1
- package/dist/esm/const/abis/singleTokenDeposit.js +4 -1
- package/dist/esm/const/abis/singleTokenDeposit.js.map +1 -1
- package/dist/esm/const/abis/vaultFees.js +4 -1
- package/dist/esm/const/abis/vaultFees.js.map +1 -1
- package/dist/esm/const/amm/configs/ammConfig.js +98 -95
- package/dist/esm/const/amm/configs/ammConfig.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js +12 -8
- package/dist/esm/const/amm/configs/protocols/aerodrome-v2.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/aerodrome.js +12 -8
- package/dist/esm/const/amm/configs/protocols/aerodrome.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/arthswap.js +14 -10
- package/dist/esm/const/amm/configs/protocols/arthswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/baseswap.js +11 -7
- package/dist/esm/const/amm/configs/protocols/baseswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/basex.js +12 -8
- package/dist/esm/const/amm/configs/protocols/basex.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/beam.js +11 -7
- package/dist/esm/const/amm/configs/protocols/beam.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/beamswap.js +11 -7
- package/dist/esm/const/amm/configs/protocols/beamswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/blackhole.js +12 -8
- package/dist/esm/const/amm/configs/protocols/blackhole.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/camelot.js +17 -13
- package/dist/esm/const/amm/configs/protocols/camelot.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/crust.js +11 -7
- package/dist/esm/const/amm/configs/protocols/crust.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/cypher.js +13 -9
- package/dist/esm/const/amm/configs/protocols/cypher.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/dodo.js +11 -7
- package/dist/esm/const/amm/configs/protocols/dodo.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/dragonswap.js +11 -7
- package/dist/esm/const/amm/configs/protocols/dragonswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/eddy.js +11 -7
- package/dist/esm/const/amm/configs/protocols/eddy.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/equilibre.js +11 -7
- package/dist/esm/const/amm/configs/protocols/equilibre.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/fenix.js +11 -7
- package/dist/esm/const/amm/configs/protocols/fenix.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/forge.js +13 -9
- package/dist/esm/const/amm/configs/protocols/forge.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/fusionx.js +12 -8
- package/dist/esm/const/amm/configs/protocols/fusionx.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/glyph.js +13 -9
- package/dist/esm/const/amm/configs/protocols/glyph.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/henjin.js +11 -7
- package/dist/esm/const/amm/configs/protocols/henjin.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/hercules.js +11 -7
- package/dist/esm/const/amm/configs/protocols/hercules.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/horiza.js +13 -9
- package/dist/esm/const/amm/configs/protocols/horiza.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/index.js +56 -79
- package/dist/esm/const/amm/configs/protocols/index.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/katana.js +10 -6
- package/dist/esm/const/amm/configs/protocols/katana.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/katanaIntegral.js +10 -6
- package/dist/esm/const/amm/configs/protocols/katanaIntegral.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/kim.js +15 -11
- package/dist/esm/const/amm/configs/protocols/kim.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/kinetix.js +14 -10
- package/dist/esm/const/amm/configs/protocols/kinetix.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/kodiak.js +14 -10
- package/dist/esm/const/amm/configs/protocols/kodiak.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/kyo.js +12 -8
- package/dist/esm/const/amm/configs/protocols/kyo.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/linehub.js +11 -7
- package/dist/esm/const/amm/configs/protocols/linehub.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/lynex.js +13 -9
- package/dist/esm/const/amm/configs/protocols/lynex.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/machinex.js +13 -9
- package/dist/esm/const/amm/configs/protocols/machinex.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/maia.js +13 -9
- package/dist/esm/const/amm/configs/protocols/maia.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/metavault.js +16 -12
- package/dist/esm/const/amm/configs/protocols/metavault.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/nest.js +12 -8
- package/dist/esm/const/amm/configs/protocols/nest.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/novaswap.js +11 -7
- package/dist/esm/const/amm/configs/protocols/novaswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/ocelex.js +11 -7
- package/dist/esm/const/amm/configs/protocols/ocelex.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/pancakeswap.js +17 -13
- package/dist/esm/const/amm/configs/protocols/pancakeswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/poolshark.js +11 -7
- package/dist/esm/const/amm/configs/protocols/poolshark.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js +12 -8
- package/dist/esm/const/amm/configs/protocols/quickswap-algebra.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/quickswap-integral.js +17 -13
- package/dist/esm/const/amm/configs/protocols/quickswap-integral.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js +20 -16
- package/dist/esm/const/amm/configs/protocols/quickswap-univ3.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/quickswap.js +18 -14
- package/dist/esm/const/amm/configs/protocols/quickswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/retro.js +13 -9
- package/dist/esm/const/amm/configs/protocols/retro.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/sailor.js +11 -7
- package/dist/esm/const/amm/configs/protocols/sailor.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/shadow.js +13 -9
- package/dist/esm/const/amm/configs/protocols/shadow.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/silverswap.js +15 -11
- package/dist/esm/const/amm/configs/protocols/silverswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/spark-integral.js +12 -8
- package/dist/esm/const/amm/configs/protocols/spark-integral.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/spark.js +11 -7
- package/dist/esm/const/amm/configs/protocols/spark.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/spark32.js +11 -7
- package/dist/esm/const/amm/configs/protocols/spark32.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/spookyswap.js +11 -7
- package/dist/esm/const/amm/configs/protocols/spookyswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/stellaswap.js +13 -9
- package/dist/esm/const/amm/configs/protocols/stellaswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/supswap.js +11 -7
- package/dist/esm/const/amm/configs/protocols/supswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/sushi.js +73 -69
- package/dist/esm/const/amm/configs/protocols/sushi.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/swapmode.js +11 -7
- package/dist/esm/const/amm/configs/protocols/swapmode.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/swapsicle.js +11 -7
- package/dist/esm/const/amm/configs/protocols/swapsicle.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/thena.js +13 -9
- package/dist/esm/const/amm/configs/protocols/thena.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/thick.js +12 -8
- package/dist/esm/const/amm/configs/protocols/thick.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/thickv2.js +12 -8
- package/dist/esm/const/amm/configs/protocols/thickv2.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/thruster.js +12 -8
- package/dist/esm/const/amm/configs/protocols/thruster.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/uniswap.js +83 -79
- package/dist/esm/const/amm/configs/protocols/uniswap.js.map +1 -1
- package/dist/esm/const/amm/configs/protocols/wasabee.js +11 -7
- package/dist/esm/const/amm/configs/protocols/wasabee.js.map +1 -1
- package/dist/esm/const/amm/index.js +19 -3
- package/dist/esm/const/amm/index.js.map +1 -1
- package/dist/esm/const/amm/utils/beacon.js +76 -70
- package/dist/esm/const/amm/utils/beacon.js.map +1 -1
- package/dist/esm/const/amm/utils/contracts.js +26 -16
- package/dist/esm/const/amm/utils/contracts.js.map +1 -1
- package/dist/esm/const/amm/utils/index.js +46 -22
- package/dist/esm/const/amm/utils/index.js.map +1 -1
- package/dist/esm/const/amm/utils/protocol.js +24 -16
- package/dist/esm/const/amm/utils/protocol.js.map +1 -1
- package/dist/esm/const/api.js +7 -3
- package/dist/esm/const/api.js.map +1 -1
- package/dist/esm/const/capabilities.js +20 -15
- package/dist/esm/const/capabilities.js.map +1 -1
- package/dist/esm/const/chain.js +12 -9
- package/dist/esm/const/chain.js.map +1 -1
- package/dist/esm/const/deployments/abis.js +4 -1
- package/dist/esm/const/deployments/abis.js.map +1 -1
- package/dist/esm/const/deployments/apechain.js +4 -1
- package/dist/esm/const/deployments/apechain.js.map +1 -1
- package/dist/esm/const/deployments/arbitrum.js +4 -1
- package/dist/esm/const/deployments/arbitrum.js.map +1 -1
- package/dist/esm/const/deployments/arbitrumgoerli.js +4 -1
- package/dist/esm/const/deployments/arbitrumgoerli.js.map +1 -1
- package/dist/esm/const/deployments/astar.js +4 -1
- package/dist/esm/const/deployments/astar.js.map +1 -1
- package/dist/esm/const/deployments/astarzkevm.js +4 -1
- package/dist/esm/const/deployments/astarzkevm.js.map +1 -1
- package/dist/esm/const/deployments/avalanche.js +4 -1
- package/dist/esm/const/deployments/avalanche.js.map +1 -1
- package/dist/esm/const/deployments/bartiotest.js +4 -1
- package/dist/esm/const/deployments/bartiotest.js.map +1 -1
- package/dist/esm/const/deployments/base.js +4 -1
- package/dist/esm/const/deployments/base.js.map +1 -1
- package/dist/esm/const/deployments/bera.js +4 -1
- package/dist/esm/const/deployments/bera.js.map +1 -1
- package/dist/esm/const/deployments/berachainbartio.js +4 -1
- package/dist/esm/const/deployments/berachainbartio.js.map +1 -1
- package/dist/esm/const/deployments/blast.js +4 -1
- package/dist/esm/const/deployments/blast.js.map +1 -1
- package/dist/esm/const/deployments/bsc.js +4 -1
- package/dist/esm/const/deployments/bsc.js.map +1 -1
- package/dist/esm/const/deployments/celo.js +4 -1
- package/dist/esm/const/deployments/celo.js.map +1 -1
- package/dist/esm/const/deployments/core.js +4 -1
- package/dist/esm/const/deployments/core.js.map +1 -1
- package/dist/esm/const/deployments/eth.js +4 -1
- package/dist/esm/const/deployments/eth.js.map +1 -1
- package/dist/esm/const/deployments/evmos.js +4 -1
- package/dist/esm/const/deployments/evmos.js.map +1 -1
- package/dist/esm/const/deployments/fantom.js +4 -1
- package/dist/esm/const/deployments/fantom.js.map +1 -1
- package/dist/esm/const/deployments/filecoin.js +4 -1
- package/dist/esm/const/deployments/filecoin.js.map +1 -1
- package/dist/esm/const/deployments/flare.js +4 -1
- package/dist/esm/const/deployments/flare.js.map +1 -1
- package/dist/esm/const/deployments/goerli.js +4 -1
- package/dist/esm/const/deployments/goerli.js.map +1 -1
- package/dist/esm/const/deployments/hemi.js +4 -1
- package/dist/esm/const/deployments/hemi.js.map +1 -1
- package/dist/esm/const/deployments/hyperevm.js +4 -1
- package/dist/esm/const/deployments/hyperevm.js.map +1 -1
- package/dist/esm/const/deployments/index.js +99 -48
- package/dist/esm/const/deployments/index.js.map +1 -1
- package/dist/esm/const/deployments/katana.js +4 -1
- package/dist/esm/const/deployments/katana.js.map +1 -1
- package/dist/esm/const/deployments/kava.js +4 -1
- package/dist/esm/const/deployments/kava.js.map +1 -1
- package/dist/esm/const/deployments/linea.js +4 -1
- package/dist/esm/const/deployments/linea.js.map +1 -1
- package/dist/esm/const/deployments/localhost.js +4 -1
- package/dist/esm/const/deployments/localhost.js.map +1 -1
- package/dist/esm/const/deployments/manta.js +4 -1
- package/dist/esm/const/deployments/manta.js.map +1 -1
- package/dist/esm/const/deployments/mantle.js +4 -1
- package/dist/esm/const/deployments/mantle.js.map +1 -1
- package/dist/esm/const/deployments/metis.js +4 -1
- package/dist/esm/const/deployments/metis.js.map +1 -1
- package/dist/esm/const/deployments/mode.js +4 -1
- package/dist/esm/const/deployments/mode.js.map +1 -1
- package/dist/esm/const/deployments/moonbeam.js +4 -1
- package/dist/esm/const/deployments/moonbeam.js.map +1 -1
- package/dist/esm/const/deployments/mumbai.js +4 -1
- package/dist/esm/const/deployments/mumbai.js.map +1 -1
- package/dist/esm/const/deployments/nibiru.js +4 -1
- package/dist/esm/const/deployments/nibiru.js.map +1 -1
- package/dist/esm/const/deployments/okxtestnet.js +4 -1
- package/dist/esm/const/deployments/okxtestnet.js.map +1 -1
- package/dist/esm/const/deployments/optimism.js +4 -1
- package/dist/esm/const/deployments/optimism.js.map +1 -1
- package/dist/esm/const/deployments/optimismgoerli.js +4 -1
- package/dist/esm/const/deployments/optimismgoerli.js.map +1 -1
- package/dist/esm/const/deployments/peaq.js +4 -1
- package/dist/esm/const/deployments/peaq.js.map +1 -1
- package/dist/esm/const/deployments/polygon.js +4 -1
- package/dist/esm/const/deployments/polygon.js.map +1 -1
- package/dist/esm/const/deployments/polyzkevm.js +4 -1
- package/dist/esm/const/deployments/polyzkevm.js.map +1 -1
- package/dist/esm/const/deployments/pyzkevm.js +4 -1
- package/dist/esm/const/deployments/pyzkevm.js.map +1 -1
- package/dist/esm/const/deployments/ronin.js +4 -1
- package/dist/esm/const/deployments/ronin.js.map +1 -1
- package/dist/esm/const/deployments/rootstock.js +4 -1
- package/dist/esm/const/deployments/rootstock.js.map +1 -1
- package/dist/esm/const/deployments/saga.js +4 -1
- package/dist/esm/const/deployments/saga.js.map +1 -1
- package/dist/esm/const/deployments/scroll.js +4 -1
- package/dist/esm/const/deployments/scroll.js.map +1 -1
- package/dist/esm/const/deployments/sei.js +4 -1
- package/dist/esm/const/deployments/sei.js.map +1 -1
- package/dist/esm/const/deployments/soneium.js +4 -1
- package/dist/esm/const/deployments/soneium.js.map +1 -1
- package/dist/esm/const/deployments/sonic.js +4 -1
- package/dist/esm/const/deployments/sonic.js.map +1 -1
- package/dist/esm/const/deployments/taiko.js +4 -1
- package/dist/esm/const/deployments/taiko.js.map +1 -1
- package/dist/esm/const/deployments/tataratestnet.js +4 -1
- package/dist/esm/const/deployments/tataratestnet.js.map +1 -1
- package/dist/esm/const/deployments/telos.js +4 -1
- package/dist/esm/const/deployments/telos.js.map +1 -1
- package/dist/esm/const/deployments/thundercore.js +4 -1
- package/dist/esm/const/deployments/thundercore.js.map +1 -1
- package/dist/esm/const/deployments/uni.js +4 -1
- package/dist/esm/const/deployments/uni.js.map +1 -1
- package/dist/esm/const/deployments/xlayer.js +4 -1
- package/dist/esm/const/deployments/xlayer.js.map +1 -1
- package/dist/esm/const/deployments/zeta.js +4 -1
- package/dist/esm/const/deployments/zeta.js.map +1 -1
- package/dist/esm/const/deployments/zircuit.js +4 -1
- package/dist/esm/const/deployments/zircuit.js.map +1 -1
- package/dist/esm/const/deployments/zklinknova.js +4 -1
- package/dist/esm/const/deployments/zklinknova.js.map +1 -1
- package/dist/esm/const/index.js +28 -12
- package/dist/esm/const/index.js.map +1 -1
- package/dist/esm/const/network.js +232 -223
- package/dist/esm/const/network.js.map +1 -1
- package/dist/esm/const/protocol.js +97 -83
- package/dist/esm/const/protocol.js.map +1 -1
- package/dist/esm/const/quoter.js +53 -42
- package/dist/esm/const/quoter.js.map +1 -1
- package/dist/esm/const/stabilityVaults/index.js +17 -1
- package/dist/esm/const/stabilityVaults/index.js.map +1 -1
- package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js +15 -10
- package/dist/esm/const/stabilityVaults/stabilityVaultsConfig.js.map +1 -1
- package/dist/esm/const/subgraph.js +60 -56
- package/dist/esm/const/subgraph.js.map +1 -1
- package/dist/esm/const/thegraph.js +5 -1
- package/dist/esm/const/thegraph.js.map +1 -1
- package/dist/esm/index.js +31 -12
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/scripts/processDeployments.js +15 -10
- package/dist/esm/scripts/processDeployments.js.map +1 -1
- package/dist/esm/types.js +2 -1
- package/dist/esm/utils/PoolQueryAdapter.js +44 -38
- package/dist/esm/utils/PoolQueryAdapter.js.map +1 -1
- package/dist/esm/utils/SubgraphVaultClient.js +10 -6
- package/dist/esm/utils/SubgraphVaultClient.js.map +1 -1
- package/dist/esm/utils/subgraph-types.js +2 -1
- package/dist/types/const/amm/configs/ammConfig.d.ts.map +1 -1
- package/dist/types/const/amm/configs/protocols/index.d.ts +0 -39
- package/dist/types/const/amm/configs/protocols/index.d.ts.map +1 -1
- package/dist/types/const/stabilityVaults/index.d.ts +1 -1
- package/dist/types/const/stabilityVaults/index.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/const/amm/configs/ammConfig.ts +2 -3
- package/src/const/amm/configs/protocols/index.ts +1 -40
- package/src/const/stabilityVaults/index.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../src/const/subgraph.ts"],"names":[],"mappings":"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","sourcesContent":["import { SteerSupportedChains } from \"../types.js\";\nimport { Chain, ChainId } from \"./chain.js\";\n\n\n\n/**\n * Interface representing network-specific data and configuration\n */\nexport interface NetworkData {\n /** Chain ID of the network */\n chainId: number;\n /** Symbol of the wrapped native token */\n wrappedNativeToken: string;\n /** Address of the network's native token wrapper contract */\n address: string;\n /** Optional network name */\n name?: string;\n}\n\n\n/**\n * URL for accessing deprecated bundle information\n */\nexport const deprecatedBundlesURL = \"https://api.steer.finance/deprecated-bundles\"\n\n \n/**\n * Configuration mapping of supported chains to their respective subgraph endpoints.\n * Each chain has a dedicated subgraph URL for querying protocol data.\n * Updated each chains for ormi and thegraph\n*/\nexport const steerSubgraphConfig: {\n [protocol in SteerSupportedChains]: string\n} = {\n [Chain.Polygon]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-polygon/prod/gn\",\n [Chain.BSC]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GLDP56fPGDz3MtmhtfTkz5CxWiqiNLACVrsJ9RqQeL4U\",\n [Chain.Optimism]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GgW1EwNARL3dyo3acQ3VhraQQ66MHT7QnYuGcQc5geDG\",\n [Chain.Arbitrum]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-arbitrum/prod/gn\",\n [Chain.Evmos]:\n \"https://subgraph.satsuma-prod.com/769a117cc018/steer/steer-protocol-evmos/api\",\n [Chain.Thundercore]:\n \"https://subgraph.steer.finance/thundercore/subgraphs/name/steerprotocol/steer-thundercore\",\n [Chain.Metis]:\n \"https://api.metis.0xgraph.xyz/api/public/b88b5696-b69d-46be-b212-5c55a9b1492f/subgraphs/steer-protocol-metis/prod/gn\",\n [Chain.Base]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-base/prod/gn\",\n [Chain.Avalanche]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GZotTj3rQJ8ZqVyodtK8TcnKcUxMgeF7mCJHGPYbu8dA\",\n [Chain.PolygonzkEVM]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-polygon-zkevm/prod/gn\",\n [Chain.Celo]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/BPaFHyfVrhv3pdjGodpQcWggAg1Bcrvc9SFc2t2BXeho\",\n [Chain.Kava]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-kava/prod/gn\",\n [Chain.Linea]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-linea/prod/gn\",\n [Chain.Scroll]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/822PfgbgBzC98Huwf37uxvF9YGZMA5nDeETpstkR55Sn\",\n [Chain.Manta]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-manta/prod/gn\",\n [Chain.Astar]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar/prod/gn\",\n [Chain.Fantom]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/9uyX2WDuaxmcYh11ehUhU68M9uSCp5FXVQV2w4LqbpbV\",\n [Chain.OkxTestnet]:\n \"https://subgraph.steer.finance/steer-x1-testnet/subgraphs/name/steerprotocol/steer-okxtestnet\",\n [Chain.Mantle]:\n \"https://subgraph-api.mantle.xyz/subgraphs/name/steerprotocol/steer-protocol-mantle\",\n [Chain.AstarZkevm]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar-zkevm/1.1.1/gn\",\n [Chain.Blast]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-blast/prod/gn\",\n [Chain.Mode]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mode/prod/gn\",\n [Chain.Telos]:\n \"https://telos.api.ormilabs.com/api/public/39892398-bfdd-48ac-b776-77ad8a5b4b9e/subgraphs/steer-protocol-telos/prod/gn\",\n [Chain.XLayer]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3\",\n [Chain.Taiko]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-taiko/prod/gn\",\n [Chain.Rootstock]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/H3pANqbMVTiFCUXHjXYr2mHbXvn5my5o66Gxbwcg7Aqm\",\n [Chain.ZklinkNova]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zklink-nova/1.0.1/gn\",\n [Chain.Flare]:\n \"https://api.goldsky.com/api/public/project_cm2k9xbkz4qg901vs51bm5uau/subgraphs/steer-protocol-flare/prod/gn\",\n [Chain.BeraChainBartio]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-berachain-bartio/prod/gn',\n [Chain.Filecoin]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-filecoin/prod/gn',\n [Chain.Apechain]:\n 'https://apeapi.0xgraph.xyz/api/public/4ea21b03-9850-4796-8068-ec71bbe022db/subgraphs/steer-protocol-apechain/prod/gn',\n [Chain.Zircuit]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zircuit/prod/gn',\n [Chain.Moonbeam]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/4D2pLLQuGsAkdZAUgqxxnk4Mcu3aMjEV1HJ2F63kC7w6',\n [Chain.Sei]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-sei/prod/gn',\n [Chain.Sonic]:\n 'https://api.0xgraph.xyz/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-sonic/prod/gn',\n [Chain.Zeta]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/HFH41DyzAXxYmT5eszVWn2T7UxViMroPJ4XJV8vhDGNN',\n [Chain.Mainnet]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mainnet/prod/gn',\n [Chain.Soneium]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3',\n [Chain.Bera]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-bera/prod/gn',\n [Chain.Unichain]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/EoLK36f26Dr7maXyNKxJmEBJkoYVCMh1d4ENtT5hJgyB',\n [Chain.Hemi]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/2eACJtEGuELqN5roUiHG1jqmCpXt5aimcc8xZdvtMv4z',\n [Chain.TataraTestnet]:\n 'https://api.studio.thegraph.com/query/78728/steer-protocol-tatara-testnet/version/latest',\n [Chain.Core]:\n 'https://thegraph.coredao.org/subgraphs/name/steer-protocol-core',\n [Chain.Peaq]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/45pjWAnAXULpS6UDajzCtLcZYuohwuMm4UuSDjegMKAT',\n [Chain.Katana]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/D6CST1Az8c8KvMf8ktcEcWds89YVQxbKG6v8yo7FAzzM',\n [Chain.Ronin]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/793Lz5oiK51wdm9kCLtHqunkAPk2qjg7denpCrHqrLcA',\n [Chain.Saga]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-saga-evm/prod/gn',\n [Chain.Nibiru]:\n 'https://app.sentio.xyz//api/v1/graphql/rakesh/steer-protocol-nibiru',\n [Chain.Hyperevm]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-hyperevm/prod/gn'\n}\n\n/**\n * Retrieves the subgraph URL for a given chain ID.\n * \n * @param chainId - The numeric identifier of the blockchain network\n * @returns The subgraph URL for the given chain ID, or undefined if not found\n * @example\n * ```typescript\n * const subgraphUrl = getSubgraphUrlByChainId(1);\n * // Returns the Ethereum mainnet subgraph URL\n * ```\n */\nexport function getSubgraphUrlByChainId(chainId: number): string | undefined {\n // Convert chainId to Chain enum value using ChainId enum\n const [chainName] = Object.entries(ChainId).find(([, id]) => Number(id) === chainId) || [];\n if (!chainName) return undefined;\n \n // Get the Chain enum value\n const chain = Chain[chainName as keyof typeof Chain];\n if (!chain) return undefined;\n\n // Return the subgraph URL from steerSubgraphConfig\n return steerSubgraphConfig[chain];\n}"]}
|
|
1
|
+
{"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../src/const/subgraph.ts"],"names":[],"mappings":"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","sourcesContent":["import { SteerSupportedChains } from \"../types.js\";\nimport { Chain, ChainId } from \"./chain.js\";\n\n\n\n/**\n * Interface representing network-specific data and configuration\n */\nexport interface NetworkData {\n /** Chain ID of the network */\n chainId: number;\n /** Symbol of the wrapped native token */\n wrappedNativeToken: string;\n /** Address of the network's native token wrapper contract */\n address: string;\n /** Optional network name */\n name?: string;\n}\n\n\n/**\n * URL for accessing deprecated bundle information\n */\nexport const deprecatedBundlesURL = \"https://api.steer.finance/deprecated-bundles\"\n\n \n/**\n * Configuration mapping of supported chains to their respective subgraph endpoints.\n * Each chain has a dedicated subgraph URL for querying protocol data.\n * Updated each chains for ormi and thegraph\n*/\nexport const steerSubgraphConfig: {\n [protocol in SteerSupportedChains]: string\n} = {\n [Chain.Polygon]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-polygon/prod/gn\",\n [Chain.BSC]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GLDP56fPGDz3MtmhtfTkz5CxWiqiNLACVrsJ9RqQeL4U\",\n [Chain.Optimism]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GgW1EwNARL3dyo3acQ3VhraQQ66MHT7QnYuGcQc5geDG\",\n [Chain.Arbitrum]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-arbitrum/prod/gn\",\n [Chain.Evmos]:\n \"https://subgraph.satsuma-prod.com/769a117cc018/steer/steer-protocol-evmos/api\",\n [Chain.Thundercore]:\n \"https://subgraph.steer.finance/thundercore/subgraphs/name/steerprotocol/steer-thundercore\",\n [Chain.Metis]:\n \"https://api.metis.0xgraph.xyz/api/public/b88b5696-b69d-46be-b212-5c55a9b1492f/subgraphs/steer-protocol-metis/prod/gn\",\n [Chain.Base]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-base/prod/gn\",\n [Chain.Avalanche]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/GZotTj3rQJ8ZqVyodtK8TcnKcUxMgeF7mCJHGPYbu8dA\",\n [Chain.PolygonzkEVM]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-polygon-zkevm/prod/gn\",\n [Chain.Celo]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/BPaFHyfVrhv3pdjGodpQcWggAg1Bcrvc9SFc2t2BXeho\",\n [Chain.Kava]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-kava/prod/gn\",\n [Chain.Linea]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-linea/prod/gn\",\n [Chain.Scroll]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/822PfgbgBzC98Huwf37uxvF9YGZMA5nDeETpstkR55Sn\",\n [Chain.Manta]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-manta/prod/gn\",\n [Chain.Astar]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar/prod/gn\",\n [Chain.Fantom]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/9uyX2WDuaxmcYh11ehUhU68M9uSCp5FXVQV2w4LqbpbV\",\n [Chain.OkxTestnet]:\n \"https://subgraph.steer.finance/steer-x1-testnet/subgraphs/name/steerprotocol/steer-okxtestnet\",\n [Chain.Mantle]:\n \"https://subgraph-api.mantle.xyz/subgraphs/name/steerprotocol/steer-protocol-mantle\",\n [Chain.AstarZkevm]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-astar-zkevm/1.1.1/gn\",\n [Chain.Blast]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-blast/prod/gn\",\n [Chain.Mode]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mode/prod/gn\",\n [Chain.Telos]:\n \"https://telos.api.ormilabs.com/api/public/39892398-bfdd-48ac-b776-77ad8a5b4b9e/subgraphs/steer-protocol-telos/prod/gn\",\n [Chain.XLayer]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3\",\n [Chain.Taiko]:\n \"https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-taiko/prod/gn\",\n [Chain.Rootstock]:\n \"https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/H3pANqbMVTiFCUXHjXYr2mHbXvn5my5o66Gxbwcg7Aqm\",\n [Chain.ZklinkNova]:\n \"https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zklink-nova/1.0.1/gn\",\n [Chain.Flare]:\n \"https://api.goldsky.com/api/public/project_cm2k9xbkz4qg901vs51bm5uau/subgraphs/steer-protocol-flare/prod/gn\",\n [Chain.BeraChainBartio]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-berachain-bartio/prod/gn',\n [Chain.Filecoin]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-filecoin/prod/gn',\n [Chain.Apechain]:\n 'https://apeapi.0xgraph.xyz/api/public/4ea21b03-9850-4796-8068-ec71bbe022db/subgraphs/steer-protocol-apechain/prod/gn',\n [Chain.Zircuit]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-zircuit/prod/gn',\n [Chain.Moonbeam]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/4D2pLLQuGsAkdZAUgqxxnk4Mcu3aMjEV1HJ2F63kC7w6',\n [Chain.Sei]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-sei/prod/gn',\n [Chain.Sonic]:\n 'https://api.0xgraph.xyz/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-sonic/prod/gn',\n [Chain.Zeta]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/HFH41DyzAXxYmT5eszVWn2T7UxViMroPJ4XJV8vhDGNN',\n [Chain.Mainnet]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-mainnet/prod/gn',\n [Chain.Soneium]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/8gCrUHrVS9rHwvDPLTn4Wz6od68ULb7azYuQz25JjRK3',\n [Chain.Bera]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-bera/prod/gn',\n [Chain.Unichain]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/EoLK36f26Dr7maXyNKxJmEBJkoYVCMh1d4ENtT5hJgyB',\n [Chain.Hemi]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/2eACJtEGuELqN5roUiHG1jqmCpXt5aimcc8xZdvtMv4z',\n [Chain.TataraTestnet]:\n 'https://api.studio.thegraph.com/query/78728/steer-protocol-tatara-testnet/version/latest',\n [Chain.Core]:\n 'https://thegraph.coredao.org/subgraphs/name/steer-protocol-core',\n [Chain.Peaq]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/45pjWAnAXULpS6UDajzCtLcZYuohwuMm4UuSDjegMKAT',\n [Chain.Katana]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/D6CST1Az8c8KvMf8ktcEcWds89YVQxbKG6v8yo7FAzzM',\n [Chain.Ronin]:\n 'https://subgraph-proxy-server-xf2uthetka-as.a.run.app/gateway-arbitrum/793Lz5oiK51wdm9kCLtHqunkAPk2qjg7denpCrHqrLcA',\n [Chain.Saga]:\n 'https://api.goldsky.com/api/public/project_clohj3ta78ok12nzs5m8yag0b/subgraphs/steer-protocol-saga-evm/prod/gn',\n [Chain.Nibiru]:\n 'https://app.sentio.xyz//api/v1/graphql/rakesh/steer-protocol-nibiru',\n [Chain.Hyperevm]:\n 'https://api.subgraph.ormilabs.com/api/public/803c8c8c-be12-4188-8523-b9853e23051d/subgraphs/steer-protocol-hyperevm/prod/gn'\n}\n\n/**\n * Retrieves the subgraph URL for a given chain ID.\n * \n * @param chainId - The numeric identifier of the blockchain network\n * @returns The subgraph URL for the given chain ID, or undefined if not found\n * @example\n * ```typescript\n * const subgraphUrl = getSubgraphUrlByChainId(1);\n * // Returns the Ethereum mainnet subgraph URL\n * ```\n */\nexport function getSubgraphUrlByChainId(chainId: number): string | undefined {\n // Convert chainId to Chain enum value using ChainId enum\n const [chainName] = Object.entries(ChainId).find(([, id]) => Number(id) === chainId) || [];\n if (!chainName) return undefined;\n \n // Get the Chain enum value\n const chain = Chain[chainName as keyof typeof Chain];\n if (!chain) return undefined;\n\n // Return the subgraph URL from steerSubgraphConfig\n return steerSubgraphConfig[chain];\n}"]}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTheGraphResolverUrl = void 0;
|
|
4
|
+
const getTheGraphResolverUrl = (subgraphId, isDeploymentId, apiKey) => {
|
|
2
5
|
return `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/${isDeploymentId ? 'deployments' : 'subgraphs'}/id/${subgraphId}`;
|
|
3
6
|
};
|
|
7
|
+
exports.getTheGraphResolverUrl = getTheGraphResolverUrl;
|
|
4
8
|
//# sourceMappingURL=thegraph.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thegraph.js","sourceRoot":"","sources":["../../../src/const/thegraph.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"thegraph.js","sourceRoot":"","sources":["../../../src/const/thegraph.ts"],"names":[],"mappings":";;;AAAO,MAAM,sBAAsB,GAAG,CAAC,UAAkB,EAAE,cAAuB,EAAE,MAAc,EAAE,EAAE;IAClG,OAAO,qDAAqD,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,OAAO,UAAU,EAAE,CAAC;AACxI,CAAC,CAAC;AAFS,QAAA,sBAAsB,0BAE/B","sourcesContent":["export const getTheGraphResolverUrl = (subgraphId: string, isDeploymentId: boolean, apiKey: string) => {\n return `https://gateway-arbitrum.network.thegraph.com/api/${apiKey}/${isDeploymentId ? 'deployments' : 'subgraphs'}/id/${subgraphId}`;\n };"]}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,15 +1,34 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.PoolClient = exports.SubgraphVaultClient = void 0;
|
|
18
|
+
__exportStar(require("./utils/subgraph-types.js"), exports);
|
|
19
|
+
var SubgraphVaultClient_js_1 = require("./utils/SubgraphVaultClient.js");
|
|
20
|
+
Object.defineProperty(exports, "SubgraphVaultClient", { enumerable: true, get: function () { return SubgraphVaultClient_js_1.SubgraphVaultClient; } });
|
|
21
|
+
__exportStar(require("./base/SmartRewards.js"), exports);
|
|
22
|
+
__exportStar(require("./client.js"), exports);
|
|
23
|
+
__exportStar(require("./types.js"), exports);
|
|
24
|
+
__exportStar(require("./base/VaultClient.js"), exports);
|
|
25
|
+
__exportStar(require("./base/SubgraphClient.js"), exports);
|
|
26
|
+
__exportStar(require("./base/StakingClient.js"), exports);
|
|
27
|
+
__exportStar(require("./base/FeeManagerClient.js"), exports);
|
|
28
|
+
__exportStar(require("./base/vault/single-asset/index.js"), exports);
|
|
29
|
+
var PoolClient_js_1 = require("./base/PoolClient.js");
|
|
30
|
+
Object.defineProperty(exports, "PoolClient", { enumerable: true, get: function () { return PoolClient_js_1.PoolClient; } });
|
|
31
|
+
__exportStar(require("./const/index.js"), exports);
|
|
13
32
|
/**
|
|
14
33
|
* @packageDocumentation
|
|
15
34
|
*
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,yEAAqE;AAA5D,6HAAA,mBAAmB,OAAA;AAC5B,yDAAuC;AACvC,8CAA4B;AAC5B,6CAA2B;AAC3B,wDAAsC;AACtC,2DAAyC;AACzC,0DAAwC;AACxC,6DAA2C;AAC3C,qEAAmD;AAEnD,sDAAkD;AAAzC,2GAAA,UAAU,OAAA;AACnB,mDAAiC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG","sourcesContent":["export * from './utils/subgraph-types.js';\nexport { SubgraphVaultClient } from './utils/SubgraphVaultClient.js';\nexport * from './base/SmartRewards.js';\nexport * from './client.js';\nexport * from './types.js';\nexport * from './base/VaultClient.js';\nexport * from './base/SubgraphClient.js';\nexport * from './base/StakingClient.js';\nexport * from './base/FeeManagerClient.js';\nexport * from './base/vault/single-asset/index.js';\nexport type { GraphQLTokenData, GraphQLPoolData } from './base/PoolClient.js';\nexport { PoolClient } from './base/PoolClient.js';\nexport * from './const/index.js';\n\n/**\n * @packageDocumentation\n *\n * The Steer Protocol SDK provides a comprehensive interface for interacting with Steer Protocol's smart contracts and services.\n *\n * ## Key Features\n *\n * - Smart Rewards Management\n * - Campaign Interactions\n * - Claim Management\n * - Multi-chain Support\n *\n * ## Quick Start\n *\n * ```typescript\n * import { createPublicClient, createWalletClient, http } from 'viem';\n * import { mainnet } from 'viem/chains';\n * import { SteerClient } from '@steerprotocol/sdk';\n *\n * // Create viem clients\n * const publicClient = createPublicClient({\n * chain: mainnet,\n * transport: http()\n * });\n *\n * const walletClient = createWalletClient({\n * chain: mainnet,\n * transport: http()\n * });\n *\n * // Initialize the Steer client with both public and wallet clients\n * const steerClient = new SteerClient({\n * environment: 'production',\n * client: publicClient,\n * walletClient: walletClient // Optional: Provide for write operations\n * });\n *\n * // Use vault operations (read-only if no wallet client)\n * const vaults = await steerClient.vaults.getLatestVaults();\n *\n * // Use rewards functionality (read-only if no wallet client)\n * const campaigns = await steerClient.rewards.getCampaigns(1);\n * const summary = await steerClient.rewards.getRewardSummary(userAddress, chainId);\n *\n * // Write operations (requires wallet client)\n * if (steerClient.rewards) {\n * const tx = await steerClient.rewards.claimCampaignRewards(userAddress, chainId);\n * }\n * ```\n *\n * ## Smart Rewards\n *\n * The Smart Rewards functionality is accessible through the SteerClient's rewards property.\n * It provides comprehensive functionality for managing rewards:\n *\n * - View reward balances and claim history (read-only operations)\n * - Claim rewards across multiple campaigns (requires wallet client)\n * - Track historical claims\n * - Get comprehensive reward summaries\n *\n * For write operations like claiming rewards, make sure to provide a wallet client when initializing the SteerClient.\n *\n * See {@link SmartRewards} for detailed API documentation.\n */\n"]}
|
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const fs_1 = __importDefault(require("fs"));
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
3
8
|
const WHITELISTED_CONTRACTS = [
|
|
4
9
|
'BundleRegistry',
|
|
5
10
|
'GasVault',
|
|
@@ -73,20 +78,20 @@ function transformContractData(input) {
|
|
|
73
78
|
return result;
|
|
74
79
|
}
|
|
75
80
|
// Read the deployment file
|
|
76
|
-
const deploymentPath =
|
|
77
|
-
const outputDir =
|
|
81
|
+
const deploymentPath = path_1.default.join(process.cwd(), 'node_modules/@steerprotocol/contracts/deployments/composite_deployment.json');
|
|
82
|
+
const outputDir = path_1.default.join(process.cwd(), 'src/const/deployments');
|
|
78
83
|
try {
|
|
79
|
-
const data = JSON.parse(
|
|
84
|
+
const data = JSON.parse(fs_1.default.readFileSync(deploymentPath, 'utf8'));
|
|
80
85
|
const transformed = transformContractData(data);
|
|
81
86
|
// Ensure output directory exists
|
|
82
|
-
if (!
|
|
83
|
-
|
|
87
|
+
if (!fs_1.default.existsSync(outputDir)) {
|
|
88
|
+
fs_1.default.mkdirSync(outputDir, { recursive: true });
|
|
84
89
|
}
|
|
85
90
|
// Write ABIs file
|
|
86
91
|
const abisContent = `// This file is auto-generated. Do not edit directly.
|
|
87
92
|
export const abis = ${JSON.stringify(transformed.abis, null, 2)} as const;
|
|
88
93
|
`;
|
|
89
|
-
|
|
94
|
+
fs_1.default.writeFileSync(path_1.default.join(outputDir, 'abis.ts'), abisContent);
|
|
90
95
|
// Write individual chain files
|
|
91
96
|
Object.entries(transformed.chains).forEach(([chainName, chainData]) => {
|
|
92
97
|
const chainContent = `// This file is auto-generated. Do not edit directly.
|
|
@@ -98,7 +103,7 @@ interface Contract {
|
|
|
98
103
|
|
|
99
104
|
export const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(chainData, null, 2)} as const;
|
|
100
105
|
`;
|
|
101
|
-
|
|
106
|
+
fs_1.default.writeFileSync(path_1.default.join(outputDir, `${chainName}.ts`), chainContent);
|
|
102
107
|
});
|
|
103
108
|
// Create index file to export everything
|
|
104
109
|
const chainExports = Object.keys(transformed.chains)
|
|
@@ -108,7 +113,7 @@ export const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(
|
|
|
108
113
|
export { abis } from './abis.js';
|
|
109
114
|
${chainExports}
|
|
110
115
|
`;
|
|
111
|
-
|
|
116
|
+
fs_1.default.writeFileSync(path_1.default.join(outputDir, 'index.ts'), indexContent);
|
|
112
117
|
console.log('Successfully generated deployment files');
|
|
113
118
|
}
|
|
114
119
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processDeployments.js","sourceRoot":"","sources":["../../../src/scripts/processDeployments.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"processDeployments.js","sourceRoot":"","sources":["../../../src/scripts/processDeployments.ts"],"names":[],"mappings":";;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAyCxB,MAAM,qBAAqB,GAAG;IAC5B,gBAAgB;IAChB,UAAU;IACV,gBAAgB;IAChB,gBAAgB;IAChB,kBAAkB;IAClB,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,oBAAoB;IACpB,uBAAuB;IACvB,uBAAuB;IACvB,YAAY;IACZ,iBAAiB;IACjB,qBAAqB;IACrB,qBAAqB;IACrB,cAAc;IACd,eAAe;IACf,gBAAgB;IAChB,eAAe;IACf,gBAAgB;IAChB,mBAAmB;IACnB,wBAAwB;IACxB,sBAAsB;IACtB,mBAAmB;IACnB,wCAAwC;IACxC,wBAAwB;IACxB,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,gBAAgB;IAChB,gBAAgB;IAChB,cAAc;IACd,oBAAoB;IACpB,sBAAsB;IACtB,UAAU;IACV,aAAa;IACb,qCAAqC;IACrC,sCAAsC;IACtC,6CAA6C;CAC9C,CAAC;AAEF,SAAS,qBAAqB,CAAC,KAAsB;IACnD,MAAM,MAAM,GAAsB;QAChC,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE;KACX,CAAC;IAEF,qBAAqB;IACrB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QACvC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QAE9B,qCAAqC;QACrC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YACpD,uCAAuC;YACvC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClD,OAAO;YACT,CAAC;YAED,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YAE/C,+CAA+C;YAC/C,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,GAAG;gBACvC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpE,CAAC;YAEF,6BAA6B;YAC7B,0DAA0D;YAC1D,IAAI,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,2BAA2B;AAC3B,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAC9B,OAAO,CAAC,GAAG,EAAE,EACb,6EAA6E,CAC9E,CAAC;AACF,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;AAEpE,IAAI,CAAC;IACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAoB,CAAC;IACpF,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAEhD,iCAAiC;IACjC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,YAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,kBAAkB;IAClB,MAAM,WAAW,GAAG;sBACA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;CAC9D,CAAC;IACA,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;IAE/D,+BAA+B;IAC/B,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE;QACpE,MAAM,YAAY,GAAG;;;;;;;eAOV,SAAS,yCAAyC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;CAClG,CAAC;QACE,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,SAAS,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,yCAAyC;IACzC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;SACjD,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,YAAY,SAAS,uBAAuB,SAAS,OAAO,CAAC;SAChF,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,MAAM,YAAY,GAAG;;EAErB,YAAY;CACb,CAAC;IACA,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;IAEjE,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AACzD,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC","sourcesContent":["import fs from 'fs';\nimport path from 'path';\n\ntype AbiItem = {\n type: string;\n name?: string;\n inputs?: Array<{ name: string; type: string; indexed?: boolean }>;\n outputs?: Array<{ name: string; type: string }>;\n stateMutability?: string;\n anonymous?: boolean;\n};\n\ninterface Contract {\n address: string;\n abi?: AbiItem[];\n startBlock?: number;\n}\n\ninterface ChainContracts {\n contracts: {\n [key: string]: Contract;\n };\n}\n\ninterface DeploymentInput {\n [chainName: string]: ChainContracts;\n}\n\ninterface TransformedResult {\n abis: {\n [key: string]: AbiItem[];\n };\n chains: {\n [chainName: string]: {\n [contractName: string]: {\n address: string;\n startBlock?: number;\n };\n };\n };\n}\n\nconst WHITELISTED_CONTRACTS = [\n 'BundleRegistry',\n 'GasVault',\n 'KeeperRegistry',\n 'SteerPeriphery',\n 'StrategyRegistry',\n 'VaultRegistry',\n \"Orchestrator\",\n \"BundleRegistry\",\n // 'Helper',\n // 'StakingRewards',\n // 'DefaultProxyAdmin',\n // 'WhitelistRegistry',\n // 'Beacon',\n // 'DynamicJobs',\n // 'QuoterV2Camelot',\n // 'QuoterV2Uniswap',\n // 'QuoterV2',\n // 'TestERC20',\n // 'TestFaucet',\n // 'TestToken',\n // 'TestToken2',\n // 'DummyContract',\n // 'InternalGovernance',\n // 'InternalTimelock',\n // 'NFTDescriptor',\n // 'NonfungibleTokenPositionDescriptor',\n // 'RewardOrchestrator',\n // 'RunnerRegistry',\n // 'RunnerRewarder',\n // 'SteerGovernance',\n // 'SteerToken',\n // 'SwapRouter',\n // 'Timelock',\n // 'TreasuryVester',\n // 'UniswapV3Factory',\n // 'WETH',\n // 'Staking',\n // 'SteerPeriphery Implementation_1',\n 'CamelotMultiPositionLiquidityManager',\n 'QuickSwapUniv3MultiPositionLiquidityManager',\n];\n\nfunction transformContractData(input: DeploymentInput): TransformedResult {\n const result: TransformedResult = {\n abis: {},\n chains: {},\n };\n\n // Process each chain\n Object.keys(input).forEach((chainName) => {\n const chain = input[chainName];\n result.chains[chainName] = {};\n\n // Process each contract in the chain\n Object.keys(chain.contracts).forEach((contractName) => {\n // Skip if contract is not in whitelist\n if (!WHITELISTED_CONTRACTS.includes(contractName)) {\n return;\n }\n\n const contract = chain.contracts[contractName];\n\n // Add contract address and startBlock to chain\n result.chains[chainName][contractName] = {\n address: contract.address,\n ...(contract.startBlock ? { startBlock: contract.startBlock } : {})\n };\n\n // Store ABI by contract name\n // Only store if we haven't seen this contract name before\n if (contract.abi && !result.abis[contractName]) {\n result.abis[contractName] = contract.abi;\n }\n });\n });\n\n return result;\n}\n\n// Read the deployment file\nconst deploymentPath = path.join(\n process.cwd(),\n 'node_modules/@steerprotocol/contracts/deployments/composite_deployment.json'\n);\nconst outputDir = path.join(process.cwd(), 'src/const/deployments');\n\ntry {\n const data = JSON.parse(fs.readFileSync(deploymentPath, 'utf8')) as DeploymentInput;\n const transformed = transformContractData(data);\n\n // Ensure output directory exists\n if (!fs.existsSync(outputDir)) {\n fs.mkdirSync(outputDir, { recursive: true });\n }\n\n // Write ABIs file\n const abisContent = `// This file is auto-generated. Do not edit directly.\nexport const abis = ${JSON.stringify(transformed.abis, null, 2)} as const;\n`;\n fs.writeFileSync(path.join(outputDir, 'abis.ts'), abisContent);\n\n // Write individual chain files\n Object.entries(transformed.chains).forEach(([chainName, chainData]) => {\n const chainContent = `// This file is auto-generated. Do not edit directly.\n\ninterface Contract {\n address: string;\n startBlock?: number;\n}\n\nexport const ${chainName}Addresses: Record<string, Contract> = ${JSON.stringify(chainData, null, 2)} as const;\n`;\n fs.writeFileSync(path.join(outputDir, `${chainName}.ts`), chainContent);\n });\n\n // Create index file to export everything\n const chainExports = Object.keys(transformed.chains)\n .map((chainName) => `export { ${chainName}Addresses } from './${chainName}.js';`)\n .join('\\n');\n\n const indexContent = `// This file is auto-generated. Do not edit directly.\nexport { abis } from './abis.js';\n${chainExports}\n`;\n fs.writeFileSync(path.join(outputDir, 'index.ts'), indexContent);\n\n console.log('Successfully generated deployment files');\n} catch (error) {\n console.error('Error processing deployments:', error);\n process.exit(1);\n}\n"]}
|
package/dist/esm/types.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/**
|
|
2
3
|
* @fileoverview Pool Query Adapter - Provides GraphQL queries for different DEX protocols
|
|
3
4
|
* @module PoolQueryAdapter
|
|
4
5
|
*/
|
|
5
|
-
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.getPoolDetailsQuery = exports.getTokenPoolsQueryByAddress = exports.FETCH_TOKEN_POOLS_KYO = exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = exports.FETCH_TOKEN_POOLS_POOLSHARK = exports.FETCH_TOKEN_POOLS_SHADOW = exports.FETCH_TOKEN_POOLS_UNISWAP = exports.FETCH_TOKEN_POOLS_ARTHSWAP = exports.FETCH_TOKEN_POOLS_OCELEX = exports.FETCH_TOKEN_POOLS_ALGEBRA = exports.getTopPoolsQuery = void 0;
|
|
8
|
+
const index_js_1 = require("../const/index.js");
|
|
6
9
|
/**
|
|
7
10
|
* GraphQL query to fetch top pools from Shadow protocol by volume
|
|
8
11
|
* Returns pools ordered by volumeUSD in descending order
|
|
@@ -248,23 +251,23 @@ const FETCH_ARTHSWAP_TOP_POOLS = `
|
|
|
248
251
|
* // Returns FETCH_TOP_POOLS_UNISWAP query
|
|
249
252
|
* ```
|
|
250
253
|
*/
|
|
251
|
-
|
|
252
|
-
if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {
|
|
254
|
+
const getTopPoolsQuery = (protocol, isAlgebraPool) => {
|
|
255
|
+
if (protocol === index_js_1.Protocol.ArthSwap || protocol === index_js_1.Protocol.ThickV2) {
|
|
253
256
|
return FETCH_ARTHSWAP_TOP_POOLS;
|
|
254
257
|
}
|
|
255
|
-
else if (protocol === Protocol.Thruster) {
|
|
258
|
+
else if (protocol === index_js_1.Protocol.Thruster) {
|
|
256
259
|
return FETCH_TOP_POOLS_THRUSTER;
|
|
257
260
|
}
|
|
258
|
-
else if (protocol === Protocol.Ocelex) {
|
|
261
|
+
else if (protocol === index_js_1.Protocol.Ocelex) {
|
|
259
262
|
return FETCH_TOP_POOLS_OCELEX;
|
|
260
263
|
}
|
|
261
|
-
else if (protocol === Protocol.PoolShark) {
|
|
264
|
+
else if (protocol === index_js_1.Protocol.PoolShark) {
|
|
262
265
|
return FETCH_POOLSHARK_TOP_POOLS;
|
|
263
266
|
}
|
|
264
|
-
else if (protocol === Protocol.Kyo) {
|
|
267
|
+
else if (protocol === index_js_1.Protocol.Kyo) {
|
|
265
268
|
return FETCH_TOP_POOLS_KYO;
|
|
266
269
|
}
|
|
267
|
-
else if (isShadowProtocol(protocol)) {
|
|
270
|
+
else if ((0, index_js_1.isShadowProtocol)(protocol)) {
|
|
268
271
|
return FETCH_TOP_POOLS_SHADOW;
|
|
269
272
|
}
|
|
270
273
|
else if (isAlgebraPool) {
|
|
@@ -274,13 +277,14 @@ export const getTopPoolsQuery = (protocol, isAlgebraPool) => {
|
|
|
274
277
|
return FETCH_TOP_POOLS_UNISWAP;
|
|
275
278
|
}
|
|
276
279
|
};
|
|
280
|
+
exports.getTopPoolsQuery = getTopPoolsQuery;
|
|
277
281
|
// --- Token Pool Queries for fetchPoolsForTokens ---
|
|
278
282
|
/**
|
|
279
283
|
* GraphQL query to fetch pools containing a specific token from Algebra-based protocols
|
|
280
284
|
* Returns up to 50 pools ordered by volume that contain the specified token
|
|
281
285
|
* @internal
|
|
282
286
|
*/
|
|
283
|
-
|
|
287
|
+
exports.FETCH_TOKEN_POOLS_ALGEBRA = `
|
|
284
288
|
query pools($token: String!) {
|
|
285
289
|
pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
|
|
286
290
|
or: [
|
|
@@ -316,7 +320,7 @@ query pools($token: String!) {
|
|
|
316
320
|
* Returns up to 50 pools that contain the specified token
|
|
317
321
|
* @internal
|
|
318
322
|
*/
|
|
319
|
-
|
|
323
|
+
exports.FETCH_TOKEN_POOLS_OCELEX = `
|
|
320
324
|
query pools($token: ID!) {
|
|
321
325
|
pools(first: 50, where: {
|
|
322
326
|
or: [
|
|
@@ -350,7 +354,7 @@ query pools($token: ID!) {
|
|
|
350
354
|
* Returns up to 50 pools ordered by volume that contain the specified token
|
|
351
355
|
* @internal
|
|
352
356
|
*/
|
|
353
|
-
|
|
357
|
+
exports.FETCH_TOKEN_POOLS_ARTHSWAP = `
|
|
354
358
|
query pools($token: String!) {
|
|
355
359
|
pools(limit: 50, orderBy: volumeUSD_DESC, where: {
|
|
356
360
|
OR: [
|
|
@@ -387,7 +391,7 @@ query pools($token: String!) {
|
|
|
387
391
|
* Returns up to 50 pools ordered by volume that contain the specified token
|
|
388
392
|
* @internal
|
|
389
393
|
*/
|
|
390
|
-
|
|
394
|
+
exports.FETCH_TOKEN_POOLS_UNISWAP = `
|
|
391
395
|
query pools($token: String!) {
|
|
392
396
|
pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
|
|
393
397
|
or: [
|
|
@@ -426,7 +430,7 @@ query pools($token: String!) {
|
|
|
426
430
|
* Returns up to 50 CL pools ordered by volume that contain the specified token
|
|
427
431
|
* @internal
|
|
428
432
|
*/
|
|
429
|
-
|
|
433
|
+
exports.FETCH_TOKEN_POOLS_SHADOW = `
|
|
430
434
|
query pools($token: String!) {
|
|
431
435
|
clPools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
|
|
432
436
|
or: [
|
|
@@ -465,7 +469,7 @@ query pools($token: String!) {
|
|
|
465
469
|
* Returns up to 50 limit pools ordered by TVL that contain the specified token
|
|
466
470
|
* @internal
|
|
467
471
|
*/
|
|
468
|
-
|
|
472
|
+
exports.FETCH_TOKEN_POOLS_POOLSHARK = `
|
|
469
473
|
query pools($token: String!) {
|
|
470
474
|
limitPools(first: 50, orderBy: totalValueLockedEth, orderDirection: desc, where: {
|
|
471
475
|
or: [
|
|
@@ -507,7 +511,7 @@ query pools($token: String!) {
|
|
|
507
511
|
* Returns up to 50 pools ordered by volume where token is the first token
|
|
508
512
|
* @internal
|
|
509
513
|
*/
|
|
510
|
-
|
|
514
|
+
exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `
|
|
511
515
|
query pools($token: String!) {
|
|
512
516
|
pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
|
|
513
517
|
token0: $token
|
|
@@ -536,7 +540,7 @@ query pools($token: String!) {
|
|
|
536
540
|
* Returns up to 50 pools ordered by volume where token is the second token
|
|
537
541
|
* @internal
|
|
538
542
|
*/
|
|
539
|
-
|
|
543
|
+
exports.FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `
|
|
540
544
|
query pools($token: String!) {
|
|
541
545
|
pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
|
|
542
546
|
token1: $token
|
|
@@ -565,7 +569,7 @@ query pools($token: String!) {
|
|
|
565
569
|
* Returns up to 50 pools ordered by TVL where token is the first token
|
|
566
570
|
* @internal
|
|
567
571
|
*/
|
|
568
|
-
|
|
572
|
+
exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `
|
|
569
573
|
query pools($token: String!) {
|
|
570
574
|
pools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {
|
|
571
575
|
token0: $token
|
|
@@ -598,7 +602,7 @@ query pools($token: String!) {
|
|
|
598
602
|
* Returns up to 50 pools ordered by TVL where token is the second token
|
|
599
603
|
* @internal
|
|
600
604
|
*/
|
|
601
|
-
|
|
605
|
+
exports.FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `
|
|
602
606
|
query pools($token: String!) {
|
|
603
607
|
pools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {
|
|
604
608
|
token1: $token
|
|
@@ -631,7 +635,7 @@ query pools($token: String!) {
|
|
|
631
635
|
* Returns up to 50 pools ordered by volume that contain the specified token
|
|
632
636
|
* @internal
|
|
633
637
|
*/
|
|
634
|
-
|
|
638
|
+
exports.FETCH_TOKEN_POOLS_KYO = `
|
|
635
639
|
query pools($token: String!) {
|
|
636
640
|
pools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {
|
|
637
641
|
or: [
|
|
@@ -678,29 +682,30 @@ query pools($token: String!) {
|
|
|
678
682
|
* // Returns FETCH_TOKEN_POOLS_UNISWAP query
|
|
679
683
|
* ```
|
|
680
684
|
*/
|
|
681
|
-
|
|
685
|
+
const getTokenPoolsQueryByAddress = (isAlgebraPool, protocol) => {
|
|
682
686
|
if (isAlgebraPool) {
|
|
683
|
-
if (protocol === Protocol.Ocelex) {
|
|
684
|
-
return FETCH_TOKEN_POOLS_OCELEX;
|
|
687
|
+
if (protocol === index_js_1.Protocol.Ocelex) {
|
|
688
|
+
return exports.FETCH_TOKEN_POOLS_OCELEX;
|
|
685
689
|
}
|
|
686
|
-
return FETCH_TOKEN_POOLS_ALGEBRA;
|
|
690
|
+
return exports.FETCH_TOKEN_POOLS_ALGEBRA;
|
|
687
691
|
}
|
|
688
|
-
else if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {
|
|
689
|
-
return FETCH_TOKEN_POOLS_ARTHSWAP;
|
|
692
|
+
else if (protocol === index_js_1.Protocol.ArthSwap || protocol === index_js_1.Protocol.ThickV2) {
|
|
693
|
+
return exports.FETCH_TOKEN_POOLS_ARTHSWAP;
|
|
690
694
|
}
|
|
691
|
-
else if (protocol === Protocol.PoolShark) {
|
|
692
|
-
return FETCH_TOKEN_POOLS_POOLSHARK;
|
|
695
|
+
else if (protocol === index_js_1.Protocol.PoolShark) {
|
|
696
|
+
return exports.FETCH_TOKEN_POOLS_POOLSHARK;
|
|
693
697
|
}
|
|
694
|
-
else if (protocol === Protocol.Kyo) {
|
|
695
|
-
return FETCH_TOKEN_POOLS_KYO;
|
|
698
|
+
else if (protocol === index_js_1.Protocol.Kyo) {
|
|
699
|
+
return exports.FETCH_TOKEN_POOLS_KYO;
|
|
696
700
|
}
|
|
697
|
-
else if (isShadowProtocol(protocol)) {
|
|
698
|
-
return FETCH_TOKEN_POOLS_SHADOW;
|
|
701
|
+
else if ((0, index_js_1.isShadowProtocol)(protocol)) {
|
|
702
|
+
return exports.FETCH_TOKEN_POOLS_SHADOW;
|
|
699
703
|
}
|
|
700
704
|
else {
|
|
701
|
-
return FETCH_TOKEN_POOLS_UNISWAP;
|
|
705
|
+
return exports.FETCH_TOKEN_POOLS_UNISWAP;
|
|
702
706
|
}
|
|
703
707
|
};
|
|
708
|
+
exports.getTokenPoolsQueryByAddress = getTokenPoolsQueryByAddress;
|
|
704
709
|
/**
|
|
705
710
|
* GraphQL query to fetch detailed information for a specific pool from Algebra-based protocols
|
|
706
711
|
* Returns pool details including tokens, volume, tick, and liquidity
|
|
@@ -905,20 +910,20 @@ query pools($pool: String! ) {
|
|
|
905
910
|
* // Returns FETCH_POOL_DETAILS_UNISWAP query
|
|
906
911
|
* ```
|
|
907
912
|
*/
|
|
908
|
-
|
|
909
|
-
if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {
|
|
913
|
+
const getPoolDetailsQuery = (isAlgebraPool, protocol) => {
|
|
914
|
+
if (protocol === index_js_1.Protocol.ArthSwap || protocol === index_js_1.Protocol.ThickV2) {
|
|
910
915
|
return FETCH_POOL_DETAILS_ARTHSWAP;
|
|
911
916
|
}
|
|
912
|
-
else if (protocol === Protocol.Ocelex) {
|
|
917
|
+
else if (protocol === index_js_1.Protocol.Ocelex) {
|
|
913
918
|
return FETCH_POOL_DETAILS_OCELEX;
|
|
914
919
|
}
|
|
915
|
-
else if (protocol === Protocol.PoolShark) {
|
|
920
|
+
else if (protocol === index_js_1.Protocol.PoolShark) {
|
|
916
921
|
return FETCH_POOL_DETAILS_POOLSHARK;
|
|
917
922
|
}
|
|
918
|
-
else if (protocol === Protocol.Kyo) {
|
|
923
|
+
else if (protocol === index_js_1.Protocol.Kyo) {
|
|
919
924
|
return FETCH_POOL_DETAILS_KYO;
|
|
920
925
|
}
|
|
921
|
-
else if (protocol && isShadowProtocol(protocol)) {
|
|
926
|
+
else if (protocol && (0, index_js_1.isShadowProtocol)(protocol)) {
|
|
922
927
|
return FETCH_POOL_DETAILS_SHADOW;
|
|
923
928
|
}
|
|
924
929
|
else if (isAlgebraPool) {
|
|
@@ -928,4 +933,5 @@ export const getPoolDetailsQuery = (isAlgebraPool, protocol) => {
|
|
|
928
933
|
return FETCH_POOL_DETAILS_UNISWAP;
|
|
929
934
|
}
|
|
930
935
|
};
|
|
936
|
+
exports.getPoolDetailsQuery = getPoolDetailsQuery;
|
|
931
937
|
//# sourceMappingURL=PoolQueryAdapter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PoolQueryAdapter.js","sourceRoot":"","sources":["../../../src/utils/PoolQueryAdapter.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Pool Query Adapter - Provides GraphQL queries for different DEX protocols\n * @module PoolQueryAdapter\n */\n\nimport { isShadowProtocol, Protocol } from '../const/index.js';\n\n/**\n * GraphQL query to fetch top pools from Shadow protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_SHADOW = `\nquery {\n\tclPools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Uniswap V3 protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_UNISWAP = `\nquery {\n\tpools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Thruster protocol by TVL\n * Returns pools ordered by totalValueLockedETH in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_THRUSTER = `\nquery {\n\tpools(first: 500, orderBy: totalValueLockedETH, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from PoolShark protocol by volume\n * Returns limit pools ordered by volumeUsd in descending order\n * @internal\n */\nconst FETCH_POOLSHARK_TOP_POOLS = `\n{\n limitPools(first: 500, orderBy: volumeUsd, orderDirection: desc, subgraphError: allow) {\n id\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n }\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Algebra-based protocols by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_ALGEBRA = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Ocelex protocol\n * Returns first 500 pools with basic volume and liquidity data\n * @internal\n */\nconst FETCH_TOP_POOLS_OCELEX = `\nquery {\n\tpools(first: 500){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Kyo protocol by volume\n * Returns pools ordered by volumeUSD in descending order with fee information\n * @internal\n */\nconst FETCH_TOP_POOLS_KYO = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from ArthSwap protocol by volume\n * Returns pools ordered by volumeUSD_DESC with fee tier information\n * @internal\n */\nconst FETCH_ARTHSWAP_TOP_POOLS = `\n{\n pools(limit:500, orderBy: volumeUSD_DESC) {\n id\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n }\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching top pools based on protocol type\n * \n * @param protocol - The DEX protocol to fetch pools from\n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @returns GraphQL query string for fetching top pools\n * \n * @example\n * ```typescript\n * const query = getTopPoolsQuery(Protocol.UniswapV3, false);\n * // Returns FETCH_TOP_POOLS_UNISWAP query\n * ```\n */\nexport const getTopPoolsQuery = (protocol: Protocol, isAlgebraPool: boolean): string => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_ARTHSWAP_TOP_POOLS;\n } else if (protocol === Protocol.Thruster) {\n return FETCH_TOP_POOLS_THRUSTER;\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_TOP_POOLS_OCELEX;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOLSHARK_TOP_POOLS;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOP_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOP_POOLS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_TOP_POOLS_ALGEBRA;\n } else {\n return FETCH_TOP_POOLS_UNISWAP;\n }\n};\n\n// --- Token Pool Queries for fetchPoolsForTokens ---\n\n/**\n * GraphQL query to fetch pools containing a specific token from Algebra-based protocols\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ALGEBRA = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Ocelex protocol\n * Returns up to 50 pools that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_OCELEX = `\nquery pools($token: ID!) {\n\tpools(first: 50, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from ArthSwap protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ARTHSWAP = `\nquery pools($token: String!) {\n\tpools(limit: 50, orderBy: volumeUSD_DESC, where: {\n OR: [\n {\n\t\t\t\ttoken0Id_eq: $token\n }\n {\n token1Id_eq: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Uniswap V3 protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_UNISWAP = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Shadow protocol\n * Returns up to 50 CL pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_SHADOW = `\nquery pools($token: String!) {\n\tclPools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from PoolShark protocol\n * Returns up to 50 limit pools ordered by TVL that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_POOLSHARK = `\nquery pools($token: String!) {\n\tlimitPools(first: 50, orderBy: totalValueLockedEth, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Kyo protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_KYO = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching pools containing a specific token\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pools from\n * @returns GraphQL query string for fetching token pools\n * \n * @example\n * ```typescript\n * const query = getTokenPoolsQueryByAddress(false, Protocol.UniswapV3);\n * // Returns FETCH_TOKEN_POOLS_UNISWAP query\n * ```\n */\nexport const getTokenPoolsQueryByAddress = (isAlgebraPool: boolean, protocol: Protocol) => {\n if (isAlgebraPool) {\n if (protocol === Protocol.Ocelex) {\n return FETCH_TOKEN_POOLS_OCELEX;\n }\n return FETCH_TOKEN_POOLS_ALGEBRA;\n } else if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_TOKEN_POOLS_ARTHSWAP;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_TOKEN_POOLS_POOLSHARK;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOKEN_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOKEN_POOLS_SHADOW;\n } else {\n return FETCH_TOKEN_POOLS_UNISWAP;\n }\n};\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Algebra-based protocols\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ALGEBRA = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Ocelex protocol\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_OCELEX = `\nquery pools($pool: ID!) {\n\tpool(id: $pool){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Uniswap V3 protocol\n * Returns comprehensive pool details including fees, TVL, and volume data\n * @internal\n */\nconst FETCH_POOL_DETAILS_UNISWAP = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n totalValueLockedETH\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Shadow protocol\n * Returns CL pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_SHADOW = `\nquery pools($pool: String! ) {\n\tclPool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from PoolShark protocol\n * Returns limit pool details including tokens, volume, and fee information\n * @internal\n */\nconst FETCH_POOL_DETAILS_POOLSHARK = `\nquery pools($pool: String! ) {\n\tlimitPools(where: {id: $pool}){\n\t\tid\n volumeUsd\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier {\n id\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from ArthSwap protocol\n * Returns pool details including tokens, volume, fee tier, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ARTHSWAP = `\nquery pools($pool: String! ) {\n\tpools(where: {id_eq: $pool}){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Kyo protocol\n * Returns pool details including tokens, volume, fee, and liquidity with decimals\n * @internal\n */\nconst FETCH_POOL_DETAILS_KYO = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * Returns the appropriate GraphQL query for fetching detailed pool information\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pool details from (optional)\n * @returns GraphQL query string for fetching pool details\n * \n * @example\n * ```typescript\n * const query = getPoolDetailsQuery(false, Protocol.UniswapV3);\n * // Returns FETCH_POOL_DETAILS_UNISWAP query\n * ```\n */\nexport const getPoolDetailsQuery = (isAlgebraPool: boolean, protocol?: Protocol) => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_POOL_DETAILS_ARTHSWAP\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_POOL_DETAILS_OCELEX\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOL_DETAILS_POOLSHARK\n } else if (protocol === Protocol.Kyo) {\n return FETCH_POOL_DETAILS_KYO;\n } else if (protocol && isShadowProtocol(protocol)) {\n return FETCH_POOL_DETAILS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_POOL_DETAILS_ALGEBRA;\n } else {\n return FETCH_POOL_DETAILS_UNISWAP\n }\n }"]}
|
|
1
|
+
{"version":3,"file":"PoolQueryAdapter.js","sourceRoot":"","sources":["../../../src/utils/PoolQueryAdapter.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview Pool Query Adapter - Provides GraphQL queries for different DEX protocols\n * @module PoolQueryAdapter\n */\n\nimport { isShadowProtocol, Protocol } from '../const/index.js';\n\n/**\n * GraphQL query to fetch top pools from Shadow protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_SHADOW = `\nquery {\n\tclPools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Uniswap V3 protocol by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_UNISWAP = `\nquery {\n\tpools(first: $limit, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Thruster protocol by TVL\n * Returns pools ordered by totalValueLockedETH in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_THRUSTER = `\nquery {\n\tpools(first: 500, orderBy: totalValueLockedETH, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from PoolShark protocol by volume\n * Returns limit pools ordered by volumeUsd in descending order\n * @internal\n */\nconst FETCH_POOLSHARK_TOP_POOLS = `\n{\n limitPools(first: 500, orderBy: volumeUsd, orderDirection: desc, subgraphError: allow) {\n id\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n }\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Algebra-based protocols by volume\n * Returns pools ordered by volumeUSD in descending order\n * @internal\n */\nconst FETCH_TOP_POOLS_ALGEBRA = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Ocelex protocol\n * Returns first 500 pools with basic volume and liquidity data\n * @internal\n */\nconst FETCH_TOP_POOLS_OCELEX = `\nquery {\n\tpools(first: 500){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from Kyo protocol by volume\n * Returns pools ordered by volumeUSD in descending order with fee information\n * @internal\n */\nconst FETCH_TOP_POOLS_KYO = `\nquery {\n\tpools(first: 500, orderBy: volumeUSD, orderDirection: desc, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch top pools from ArthSwap protocol by volume\n * Returns pools ordered by volumeUSD_DESC with fee tier information\n * @internal\n */\nconst FETCH_ARTHSWAP_TOP_POOLS = `\n{\n pools(limit:500, orderBy: volumeUSD_DESC) {\n id\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n }\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching top pools based on protocol type\n * \n * @param protocol - The DEX protocol to fetch pools from\n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @returns GraphQL query string for fetching top pools\n * \n * @example\n * ```typescript\n * const query = getTopPoolsQuery(Protocol.UniswapV3, false);\n * // Returns FETCH_TOP_POOLS_UNISWAP query\n * ```\n */\nexport const getTopPoolsQuery = (protocol: Protocol, isAlgebraPool: boolean): string => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_ARTHSWAP_TOP_POOLS;\n } else if (protocol === Protocol.Thruster) {\n return FETCH_TOP_POOLS_THRUSTER;\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_TOP_POOLS_OCELEX;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOLSHARK_TOP_POOLS;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOP_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOP_POOLS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_TOP_POOLS_ALGEBRA;\n } else {\n return FETCH_TOP_POOLS_UNISWAP;\n }\n};\n\n// --- Token Pool Queries for fetchPoolsForTokens ---\n\n/**\n * GraphQL query to fetch pools containing a specific token from Algebra-based protocols\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ALGEBRA = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Ocelex protocol\n * Returns up to 50 pools that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_OCELEX = `\nquery pools($token: ID!) {\n\tpools(first: 50, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from ArthSwap protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_ARTHSWAP = `\nquery pools($token: String!) {\n\tpools(limit: 50, orderBy: volumeUSD_DESC, where: {\n OR: [\n {\n\t\t\t\ttoken0Id_eq: $token\n }\n {\n token1Id_eq: $token\n }\n ]\n }){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Uniswap V3 protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_UNISWAP = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Shadow protocol\n * Returns up to 50 CL pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_SHADOW = `\nquery pools($token: String!) {\n\tclPools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from PoolShark protocol\n * Returns up to 50 limit pools ordered by TVL that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_POOLSHARK = `\nquery pools($token: String!) {\n\tlimitPools(first: 50, orderBy: totalValueLockedEth, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUsd\n totalValueLockedEth\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier {\n id\n }\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Lynex protocol\n * Returns up to 50 pools ordered by volume where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_LYNEX_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n token1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token0 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the first token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN0 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken0: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools where specified token is token1 from Thruster protocol\n * Returns up to 50 pools ordered by TVL where token is the second token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_THRUSTER_TOKEN1 = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: totalValueLockedETH, orderDirection: desc, where: {\n\t\ttoken1: $token\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n totalValueLockedETH\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * GraphQL query to fetch pools containing a specific token from Kyo protocol\n * Returns up to 50 pools ordered by volume that contain the specified token\n * @internal\n */\nexport const FETCH_TOKEN_POOLS_KYO = `\nquery pools($token: String!) {\n\tpools(first: 50, orderBy: volumeUSD, orderDirection: desc, where: {\n or: [\n {\n\t\t\t\ttoken0: $token\n }\n {\n token1: $token\n }\n ]\n }, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`;\n\n/**\n * Returns the appropriate GraphQL query for fetching pools containing a specific token\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pools from\n * @returns GraphQL query string for fetching token pools\n * \n * @example\n * ```typescript\n * const query = getTokenPoolsQueryByAddress(false, Protocol.UniswapV3);\n * // Returns FETCH_TOKEN_POOLS_UNISWAP query\n * ```\n */\nexport const getTokenPoolsQueryByAddress = (isAlgebraPool: boolean, protocol: Protocol) => {\n if (isAlgebraPool) {\n if (protocol === Protocol.Ocelex) {\n return FETCH_TOKEN_POOLS_OCELEX;\n }\n return FETCH_TOKEN_POOLS_ALGEBRA;\n } else if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_TOKEN_POOLS_ARTHSWAP;\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_TOKEN_POOLS_POOLSHARK;\n } else if (protocol === Protocol.Kyo) {\n return FETCH_TOKEN_POOLS_KYO;\n } else if (isShadowProtocol(protocol)) {\n return FETCH_TOKEN_POOLS_SHADOW;\n } else {\n return FETCH_TOKEN_POOLS_UNISWAP;\n }\n};\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Algebra-based protocols\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ALGEBRA = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Ocelex protocol\n * Returns pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_OCELEX = `\nquery pools($pool: ID!) {\n\tpool(id: $pool){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Uniswap V3 protocol\n * Returns comprehensive pool details including fees, TVL, and volume data\n * @internal\n */\nconst FETCH_POOL_DETAILS_UNISWAP = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n totalValueLockedETH\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Shadow protocol\n * Returns CL pool details including tokens, volume, tick, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_SHADOW = `\nquery pools($pool: String! ) {\n\tclPool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from PoolShark protocol\n * Returns limit pool details including tokens, volume, and fee information\n * @internal\n */\nconst FETCH_POOL_DETAILS_POOLSHARK = `\nquery pools($pool: String! ) {\n\tlimitPools(where: {id: $pool}){\n\t\tid\n volumeUsd\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier {\n id\n }\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from ArthSwap protocol\n * Returns pool details including tokens, volume, fee tier, and liquidity\n * @internal\n */\nconst FETCH_POOL_DETAILS_ARTHSWAP = `\nquery pools($pool: String! ) {\n\tpools(where: {id_eq: $pool}){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n }\n token1 {\n id\n name\n symbol\n }\n feeTier\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * GraphQL query to fetch detailed information for a specific pool from Kyo protocol\n * Returns pool details including tokens, volume, fee, and liquidity with decimals\n * @internal\n */\nconst FETCH_POOL_DETAILS_KYO = `\nquery pools($pool: String! ) {\n\tpool(id: $pool, subgraphError: allow){\n\t\tid\n volumeUSD\n token0 {\n id\n name\n symbol\n decimals\n }\n token1 {\n id\n name\n symbol\n decimals\n }\n fee\n volumeToken0\n volumeToken1\n tick\n liquidity\n\t}\n}\n`\n\n/**\n * Returns the appropriate GraphQL query for fetching detailed pool information\n * \n * @param isAlgebraPool - Whether the protocol is based on Algebra\n * @param protocol - The DEX protocol to fetch pool details from (optional)\n * @returns GraphQL query string for fetching pool details\n * \n * @example\n * ```typescript\n * const query = getPoolDetailsQuery(false, Protocol.UniswapV3);\n * // Returns FETCH_POOL_DETAILS_UNISWAP query\n * ```\n */\nexport const getPoolDetailsQuery = (isAlgebraPool: boolean, protocol?: Protocol) => {\n if (protocol === Protocol.ArthSwap || protocol === Protocol.ThickV2) {\n return FETCH_POOL_DETAILS_ARTHSWAP\n } else if (protocol === Protocol.Ocelex) {\n return FETCH_POOL_DETAILS_OCELEX\n } else if (protocol === Protocol.PoolShark) {\n return FETCH_POOL_DETAILS_POOLSHARK\n } else if (protocol === Protocol.Kyo) {\n return FETCH_POOL_DETAILS_KYO;\n } else if (protocol && isShadowProtocol(protocol)) {\n return FETCH_POOL_DETAILS_SHADOW;\n } else if (isAlgebraPool) {\n return FETCH_POOL_DETAILS_ALGEBRA;\n } else {\n return FETCH_POOL_DETAILS_UNISWAP\n }\n }"]}
|