@steerprotocol/sdk 0.1.3 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/base/SmartRewards.js +465 -0
- package/dist/cjs/base/SmartRewards.js.map +1 -0
- package/dist/cjs/base/SubgraphClient.js.map +1 -1
- package/dist/cjs/base/VaultClient.js +87 -0
- package/dist/cjs/base/VaultClient.js.map +1 -1
- package/dist/cjs/client.js +37 -0
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/const/abis/UniswapPool.js +5 -0
- package/dist/cjs/const/abis/UniswapPool.js.map +1 -0
- package/dist/cjs/const/deployments/abis.js +2215 -17113
- package/dist/cjs/const/deployments/abis.js.map +1 -1
- package/dist/cjs/const/deployments/apechain.js +1 -7
- package/dist/cjs/const/deployments/apechain.js.map +1 -1
- package/dist/cjs/const/deployments/arbitrum.js +1 -10
- package/dist/cjs/const/deployments/arbitrum.js.map +1 -1
- package/dist/cjs/const/deployments/arbitrumgoerli.js +1 -13
- package/dist/cjs/const/deployments/arbitrumgoerli.js.map +1 -1
- package/dist/cjs/const/deployments/astar.js +1 -7
- package/dist/cjs/const/deployments/astar.js.map +1 -1
- package/dist/cjs/const/deployments/astarzkevm.js +1 -7
- package/dist/cjs/const/deployments/astarzkevm.js.map +1 -1
- package/dist/cjs/const/deployments/avalanche.js +1 -10
- package/dist/cjs/const/deployments/avalanche.js.map +1 -1
- package/dist/cjs/const/deployments/bartiotest.js +1 -7
- package/dist/cjs/const/deployments/bartiotest.js.map +1 -1
- package/dist/cjs/const/deployments/base.js +1 -8
- package/dist/cjs/const/deployments/base.js.map +1 -1
- package/dist/cjs/const/deployments/blast.js +1 -8
- package/dist/cjs/const/deployments/blast.js.map +1 -1
- package/dist/cjs/const/deployments/bsc.js +1 -9
- package/dist/cjs/const/deployments/bsc.js.map +1 -1
- package/dist/cjs/const/deployments/bttc.js +1 -7
- package/dist/cjs/const/deployments/bttc.js.map +1 -1
- package/dist/cjs/const/deployments/celo.js +1 -9
- package/dist/cjs/const/deployments/celo.js.map +1 -1
- package/dist/cjs/const/deployments/evmos.js +1 -8
- package/dist/cjs/const/deployments/evmos.js.map +1 -1
- package/dist/cjs/const/deployments/fantom.js +1 -7
- package/dist/cjs/const/deployments/fantom.js.map +1 -1
- package/dist/cjs/const/deployments/filecoin.js +1 -7
- package/dist/cjs/const/deployments/filecoin.js.map +1 -1
- package/dist/cjs/const/deployments/flare.js +1 -7
- package/dist/cjs/const/deployments/flare.js.map +1 -1
- package/dist/cjs/const/deployments/goerli.js +1 -13
- package/dist/cjs/const/deployments/goerli.js.map +1 -1
- package/dist/cjs/const/deployments/kava.js +1 -7
- package/dist/cjs/const/deployments/kava.js.map +1 -1
- package/dist/cjs/const/deployments/linea.js +1 -8
- package/dist/cjs/const/deployments/linea.js.map +1 -1
- package/dist/cjs/const/deployments/localhost.js +1 -28
- package/dist/cjs/const/deployments/localhost.js.map +1 -1
- package/dist/cjs/const/deployments/mainnet.js +1 -4
- package/dist/cjs/const/deployments/mainnet.js.map +1 -1
- package/dist/cjs/const/deployments/manta.js +1 -7
- package/dist/cjs/const/deployments/manta.js.map +1 -1
- package/dist/cjs/const/deployments/mantle.js +1 -7
- package/dist/cjs/const/deployments/mantle.js.map +1 -1
- package/dist/cjs/const/deployments/metis.js +1 -8
- package/dist/cjs/const/deployments/metis.js.map +1 -1
- package/dist/cjs/const/deployments/mode.js +1 -8
- package/dist/cjs/const/deployments/mode.js.map +1 -1
- package/dist/cjs/const/deployments/moonbeam.js +1 -7
- package/dist/cjs/const/deployments/moonbeam.js.map +1 -1
- package/dist/cjs/const/deployments/mumbai.js +1 -14
- package/dist/cjs/const/deployments/mumbai.js.map +1 -1
- package/dist/cjs/const/deployments/okxtestnet.js +1 -7
- package/dist/cjs/const/deployments/okxtestnet.js.map +1 -1
- package/dist/cjs/const/deployments/opbnb.js +1 -7
- package/dist/cjs/const/deployments/opbnb.js.map +1 -1
- package/dist/cjs/const/deployments/optimism.js +1 -9
- package/dist/cjs/const/deployments/optimism.js.map +1 -1
- package/dist/cjs/const/deployments/optimismgoerli.js +1 -13
- package/dist/cjs/const/deployments/optimismgoerli.js.map +1 -1
- package/dist/cjs/const/deployments/polygon.js +1 -9
- package/dist/cjs/const/deployments/polygon.js.map +1 -1
- package/dist/cjs/const/deployments/polyzkevm.js +1 -9
- package/dist/cjs/const/deployments/polyzkevm.js.map +1 -1
- package/dist/cjs/const/deployments/rinkeby.js +0 -3
- package/dist/cjs/const/deployments/rinkeby.js.map +1 -1
- package/dist/cjs/const/deployments/rootstock.js +1 -7
- package/dist/cjs/const/deployments/rootstock.js.map +1 -1
- package/dist/cjs/const/deployments/ropsten.js +1 -6
- package/dist/cjs/const/deployments/ropsten.js.map +1 -1
- package/dist/cjs/const/deployments/scroll.js +1 -8
- package/dist/cjs/const/deployments/scroll.js.map +1 -1
- package/dist/cjs/const/deployments/sei.js +1 -7
- package/dist/cjs/const/deployments/sei.js.map +1 -1
- package/dist/cjs/const/deployments/sonic.js +1 -7
- package/dist/cjs/const/deployments/sonic.js.map +1 -1
- package/dist/cjs/const/deployments/taiko.js +1 -7
- package/dist/cjs/const/deployments/taiko.js.map +1 -1
- package/dist/cjs/const/deployments/telos.js +1 -8
- package/dist/cjs/const/deployments/telos.js.map +1 -1
- package/dist/cjs/const/deployments/thundercore.js +1 -8
- package/dist/cjs/const/deployments/thundercore.js.map +1 -1
- package/dist/cjs/const/deployments/unichainsepolia.js +1 -7
- package/dist/cjs/const/deployments/unichainsepolia.js.map +1 -1
- package/dist/cjs/const/deployments/xlayer.js +1 -7
- package/dist/cjs/const/deployments/xlayer.js.map +1 -1
- package/dist/cjs/const/deployments/zircuit.js +1 -7
- package/dist/cjs/const/deployments/zircuit.js.map +1 -1
- package/dist/cjs/const/subgraph.js.map +1 -1
- package/dist/cjs/index.js +59 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/scripts/processDeployments.js +43 -14
- package/dist/cjs/scripts/processDeployments.js.map +1 -1
- package/dist/esm/base/SmartRewards.js +461 -0
- package/dist/esm/base/SmartRewards.js.map +1 -0
- package/dist/esm/base/SubgraphClient.js.map +1 -1
- package/dist/esm/base/VaultClient.js +87 -0
- package/dist/esm/base/VaultClient.js.map +1 -1
- package/dist/esm/client.js +37 -0
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/const/abis/UniswapPool.js +2 -0
- package/dist/esm/const/abis/UniswapPool.js.map +1 -0
- package/dist/esm/const/deployments/abis.js +2215 -17113
- package/dist/esm/const/deployments/abis.js.map +1 -1
- package/dist/esm/const/deployments/apechain.js +1 -7
- package/dist/esm/const/deployments/apechain.js.map +1 -1
- package/dist/esm/const/deployments/arbitrum.js +1 -10
- package/dist/esm/const/deployments/arbitrum.js.map +1 -1
- package/dist/esm/const/deployments/arbitrumgoerli.js +1 -13
- package/dist/esm/const/deployments/arbitrumgoerli.js.map +1 -1
- package/dist/esm/const/deployments/astar.js +1 -7
- package/dist/esm/const/deployments/astar.js.map +1 -1
- package/dist/esm/const/deployments/astarzkevm.js +1 -7
- package/dist/esm/const/deployments/astarzkevm.js.map +1 -1
- package/dist/esm/const/deployments/avalanche.js +1 -10
- package/dist/esm/const/deployments/avalanche.js.map +1 -1
- package/dist/esm/const/deployments/bartiotest.js +1 -7
- package/dist/esm/const/deployments/bartiotest.js.map +1 -1
- package/dist/esm/const/deployments/base.js +1 -8
- package/dist/esm/const/deployments/base.js.map +1 -1
- package/dist/esm/const/deployments/blast.js +1 -8
- package/dist/esm/const/deployments/blast.js.map +1 -1
- package/dist/esm/const/deployments/bsc.js +1 -9
- package/dist/esm/const/deployments/bsc.js.map +1 -1
- package/dist/esm/const/deployments/bttc.js +1 -7
- package/dist/esm/const/deployments/bttc.js.map +1 -1
- package/dist/esm/const/deployments/celo.js +1 -9
- package/dist/esm/const/deployments/celo.js.map +1 -1
- package/dist/esm/const/deployments/evmos.js +1 -8
- package/dist/esm/const/deployments/evmos.js.map +1 -1
- package/dist/esm/const/deployments/fantom.js +1 -7
- package/dist/esm/const/deployments/fantom.js.map +1 -1
- package/dist/esm/const/deployments/filecoin.js +1 -7
- package/dist/esm/const/deployments/filecoin.js.map +1 -1
- package/dist/esm/const/deployments/flare.js +1 -7
- package/dist/esm/const/deployments/flare.js.map +1 -1
- package/dist/esm/const/deployments/goerli.js +1 -13
- package/dist/esm/const/deployments/goerli.js.map +1 -1
- package/dist/esm/const/deployments/kava.js +1 -7
- package/dist/esm/const/deployments/kava.js.map +1 -1
- package/dist/esm/const/deployments/linea.js +1 -8
- package/dist/esm/const/deployments/linea.js.map +1 -1
- package/dist/esm/const/deployments/localhost.js +1 -28
- package/dist/esm/const/deployments/localhost.js.map +1 -1
- package/dist/esm/const/deployments/mainnet.js +1 -4
- package/dist/esm/const/deployments/mainnet.js.map +1 -1
- package/dist/esm/const/deployments/manta.js +1 -7
- package/dist/esm/const/deployments/manta.js.map +1 -1
- package/dist/esm/const/deployments/mantle.js +1 -7
- package/dist/esm/const/deployments/mantle.js.map +1 -1
- package/dist/esm/const/deployments/metis.js +1 -8
- package/dist/esm/const/deployments/metis.js.map +1 -1
- package/dist/esm/const/deployments/mode.js +1 -8
- package/dist/esm/const/deployments/mode.js.map +1 -1
- package/dist/esm/const/deployments/moonbeam.js +1 -7
- package/dist/esm/const/deployments/moonbeam.js.map +1 -1
- package/dist/esm/const/deployments/mumbai.js +1 -14
- package/dist/esm/const/deployments/mumbai.js.map +1 -1
- package/dist/esm/const/deployments/okxtestnet.js +1 -7
- package/dist/esm/const/deployments/okxtestnet.js.map +1 -1
- package/dist/esm/const/deployments/opbnb.js +1 -7
- package/dist/esm/const/deployments/opbnb.js.map +1 -1
- package/dist/esm/const/deployments/optimism.js +1 -9
- package/dist/esm/const/deployments/optimism.js.map +1 -1
- package/dist/esm/const/deployments/optimismgoerli.js +1 -13
- package/dist/esm/const/deployments/optimismgoerli.js.map +1 -1
- package/dist/esm/const/deployments/polygon.js +1 -9
- package/dist/esm/const/deployments/polygon.js.map +1 -1
- package/dist/esm/const/deployments/polyzkevm.js +1 -9
- package/dist/esm/const/deployments/polyzkevm.js.map +1 -1
- package/dist/esm/const/deployments/rinkeby.js +0 -3
- package/dist/esm/const/deployments/rinkeby.js.map +1 -1
- package/dist/esm/const/deployments/rootstock.js +1 -7
- package/dist/esm/const/deployments/rootstock.js.map +1 -1
- package/dist/esm/const/deployments/ropsten.js +1 -6
- package/dist/esm/const/deployments/ropsten.js.map +1 -1
- package/dist/esm/const/deployments/scroll.js +1 -8
- package/dist/esm/const/deployments/scroll.js.map +1 -1
- package/dist/esm/const/deployments/sei.js +1 -7
- package/dist/esm/const/deployments/sei.js.map +1 -1
- package/dist/esm/const/deployments/sonic.js +1 -7
- package/dist/esm/const/deployments/sonic.js.map +1 -1
- package/dist/esm/const/deployments/taiko.js +1 -7
- package/dist/esm/const/deployments/taiko.js.map +1 -1
- package/dist/esm/const/deployments/telos.js +1 -8
- package/dist/esm/const/deployments/telos.js.map +1 -1
- package/dist/esm/const/deployments/thundercore.js +1 -8
- package/dist/esm/const/deployments/thundercore.js.map +1 -1
- package/dist/esm/const/deployments/unichainsepolia.js +1 -7
- package/dist/esm/const/deployments/unichainsepolia.js.map +1 -1
- package/dist/esm/const/deployments/xlayer.js +1 -7
- package/dist/esm/const/deployments/xlayer.js.map +1 -1
- package/dist/esm/const/deployments/zircuit.js +1 -7
- package/dist/esm/const/deployments/zircuit.js.map +1 -1
- package/dist/esm/const/subgraph.js.map +1 -1
- package/dist/esm/index.js +59 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/scripts/processDeployments.js +43 -14
- package/dist/esm/scripts/processDeployments.js.map +1 -1
- package/dist/types/base/SmartRewards.d.ts +278 -0
- package/dist/types/base/SmartRewards.d.ts.map +1 -0
- package/dist/types/base/SubgraphClient.d.ts +1 -1
- package/dist/types/base/SubgraphClient.d.ts.map +1 -1
- package/dist/types/base/VaultClient.d.ts +2 -0
- package/dist/types/base/VaultClient.d.ts.map +1 -1
- package/dist/types/client.d.ts +39 -0
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/const/abis/UniswapPool.d.ts +36 -0
- package/dist/types/const/abis/UniswapPool.d.ts.map +1 -0
- package/dist/types/const/deployments/abis.d.ts +1896 -13406
- package/dist/types/const/deployments/abis.d.ts.map +1 -1
- package/dist/types/const/deployments/apechain.d.ts +0 -6
- package/dist/types/const/deployments/apechain.d.ts.map +1 -1
- package/dist/types/const/deployments/arbitrum.d.ts +0 -9
- package/dist/types/const/deployments/arbitrum.d.ts.map +1 -1
- package/dist/types/const/deployments/arbitrumgoerli.d.ts +0 -12
- package/dist/types/const/deployments/arbitrumgoerli.d.ts.map +1 -1
- package/dist/types/const/deployments/astar.d.ts +0 -6
- package/dist/types/const/deployments/astar.d.ts.map +1 -1
- package/dist/types/const/deployments/astarzkevm.d.ts +0 -6
- package/dist/types/const/deployments/astarzkevm.d.ts.map +1 -1
- package/dist/types/const/deployments/avalanche.d.ts +0 -9
- package/dist/types/const/deployments/avalanche.d.ts.map +1 -1
- package/dist/types/const/deployments/bartiotest.d.ts +0 -6
- package/dist/types/const/deployments/bartiotest.d.ts.map +1 -1
- package/dist/types/const/deployments/base.d.ts +0 -7
- package/dist/types/const/deployments/base.d.ts.map +1 -1
- package/dist/types/const/deployments/blast.d.ts +0 -7
- package/dist/types/const/deployments/blast.d.ts.map +1 -1
- package/dist/types/const/deployments/bsc.d.ts +0 -8
- package/dist/types/const/deployments/bsc.d.ts.map +1 -1
- package/dist/types/const/deployments/bttc.d.ts +0 -6
- package/dist/types/const/deployments/bttc.d.ts.map +1 -1
- package/dist/types/const/deployments/celo.d.ts +0 -8
- package/dist/types/const/deployments/celo.d.ts.map +1 -1
- package/dist/types/const/deployments/evmos.d.ts +0 -7
- package/dist/types/const/deployments/evmos.d.ts.map +1 -1
- package/dist/types/const/deployments/fantom.d.ts +0 -6
- package/dist/types/const/deployments/fantom.d.ts.map +1 -1
- package/dist/types/const/deployments/filecoin.d.ts +0 -6
- package/dist/types/const/deployments/filecoin.d.ts.map +1 -1
- package/dist/types/const/deployments/flare.d.ts +0 -6
- package/dist/types/const/deployments/flare.d.ts.map +1 -1
- package/dist/types/const/deployments/goerli.d.ts +0 -12
- package/dist/types/const/deployments/goerli.d.ts.map +1 -1
- package/dist/types/const/deployments/kava.d.ts +0 -6
- package/dist/types/const/deployments/kava.d.ts.map +1 -1
- package/dist/types/const/deployments/linea.d.ts +0 -7
- package/dist/types/const/deployments/linea.d.ts.map +1 -1
- package/dist/types/const/deployments/localhost.d.ts +0 -27
- package/dist/types/const/deployments/localhost.d.ts.map +1 -1
- package/dist/types/const/deployments/mainnet.d.ts +1 -4
- package/dist/types/const/deployments/mainnet.d.ts.map +1 -1
- package/dist/types/const/deployments/manta.d.ts +0 -6
- package/dist/types/const/deployments/manta.d.ts.map +1 -1
- package/dist/types/const/deployments/mantle.d.ts +0 -6
- package/dist/types/const/deployments/mantle.d.ts.map +1 -1
- package/dist/types/const/deployments/metis.d.ts +0 -7
- package/dist/types/const/deployments/metis.d.ts.map +1 -1
- package/dist/types/const/deployments/mode.d.ts +0 -7
- package/dist/types/const/deployments/mode.d.ts.map +1 -1
- package/dist/types/const/deployments/moonbeam.d.ts +0 -6
- package/dist/types/const/deployments/moonbeam.d.ts.map +1 -1
- package/dist/types/const/deployments/mumbai.d.ts +0 -13
- package/dist/types/const/deployments/mumbai.d.ts.map +1 -1
- package/dist/types/const/deployments/okxtestnet.d.ts +0 -6
- package/dist/types/const/deployments/okxtestnet.d.ts.map +1 -1
- package/dist/types/const/deployments/opbnb.d.ts +0 -6
- package/dist/types/const/deployments/opbnb.d.ts.map +1 -1
- package/dist/types/const/deployments/optimism.d.ts +0 -8
- package/dist/types/const/deployments/optimism.d.ts.map +1 -1
- package/dist/types/const/deployments/optimismgoerli.d.ts +0 -12
- package/dist/types/const/deployments/optimismgoerli.d.ts.map +1 -1
- package/dist/types/const/deployments/polygon.d.ts +0 -8
- package/dist/types/const/deployments/polygon.d.ts.map +1 -1
- package/dist/types/const/deployments/polyzkevm.d.ts +0 -8
- package/dist/types/const/deployments/polyzkevm.d.ts.map +1 -1
- package/dist/types/const/deployments/rinkeby.d.ts +0 -3
- package/dist/types/const/deployments/rinkeby.d.ts.map +1 -1
- package/dist/types/const/deployments/rootstock.d.ts +0 -6
- package/dist/types/const/deployments/rootstock.d.ts.map +1 -1
- package/dist/types/const/deployments/ropsten.d.ts +0 -5
- package/dist/types/const/deployments/ropsten.d.ts.map +1 -1
- package/dist/types/const/deployments/scroll.d.ts +0 -7
- package/dist/types/const/deployments/scroll.d.ts.map +1 -1
- package/dist/types/const/deployments/sei.d.ts +0 -6
- package/dist/types/const/deployments/sei.d.ts.map +1 -1
- package/dist/types/const/deployments/sonic.d.ts +0 -6
- package/dist/types/const/deployments/sonic.d.ts.map +1 -1
- package/dist/types/const/deployments/taiko.d.ts +0 -6
- package/dist/types/const/deployments/taiko.d.ts.map +1 -1
- package/dist/types/const/deployments/telos.d.ts +0 -7
- package/dist/types/const/deployments/telos.d.ts.map +1 -1
- package/dist/types/const/deployments/thundercore.d.ts +0 -7
- package/dist/types/const/deployments/thundercore.d.ts.map +1 -1
- package/dist/types/const/deployments/unichainsepolia.d.ts +0 -6
- package/dist/types/const/deployments/unichainsepolia.d.ts.map +1 -1
- package/dist/types/const/deployments/xlayer.d.ts +0 -6
- package/dist/types/const/deployments/xlayer.d.ts.map +1 -1
- package/dist/types/const/deployments/zircuit.d.ts +0 -6
- package/dist/types/const/deployments/zircuit.d.ts.map +1 -1
- package/dist/types/const/subgraph.d.ts.map +1 -1
- package/dist/types/index.d.ts +59 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +23 -3
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SubgraphClient } from './SubgraphClient';
|
|
2
2
|
import { abis } from '../const/deployments/abis';
|
|
3
|
+
import { UniswapV3PoolABI } from '../const/abis/UniswapPool';
|
|
3
4
|
const VAULT_ABI = abis.QuickSwapUniv3MultiPositionLiquidityManager;
|
|
4
5
|
const PERIPHERY_ABI = abis.SteerPeriphery;
|
|
5
6
|
export class VaultClient extends SubgraphClient {
|
|
@@ -81,6 +82,70 @@ export class VaultClient extends SubgraphClient {
|
|
|
81
82
|
};
|
|
82
83
|
}
|
|
83
84
|
}
|
|
85
|
+
async getDepositRatio(vaultAddress) {
|
|
86
|
+
try {
|
|
87
|
+
// Get vault details to check balances and decimals
|
|
88
|
+
const vaultDetails = await this.publicClient.readContract({
|
|
89
|
+
address: vaultAddress,
|
|
90
|
+
abi: PERIPHERY_ABI,
|
|
91
|
+
functionName: 'vaultDetailsByAddress',
|
|
92
|
+
args: [vaultAddress]
|
|
93
|
+
});
|
|
94
|
+
const token0Balance = vaultDetails.token0Balance;
|
|
95
|
+
const token1Balance = vaultDetails.token1Balance;
|
|
96
|
+
const token0Decimals = vaultDetails.token0Decimals;
|
|
97
|
+
const token1Decimals = vaultDetails.token1Decimals;
|
|
98
|
+
// Case 1: No liquidity in the vault
|
|
99
|
+
if (token0Balance === 0n && token1Balance === 0n) {
|
|
100
|
+
// Get the pool contract to fetch current price
|
|
101
|
+
const pool = await this.pool(vaultAddress);
|
|
102
|
+
if (!pool.data)
|
|
103
|
+
throw new Error('Failed to retrieve pool for ratio calculation');
|
|
104
|
+
// Get current sqrtPriceX96
|
|
105
|
+
const [sqrtPriceX96] = await this.publicClient.readContract({
|
|
106
|
+
address: pool.data,
|
|
107
|
+
abi: UniswapV3PoolABI,
|
|
108
|
+
functionName: 'slot0'
|
|
109
|
+
});
|
|
110
|
+
// Calculate price = (sqrtPriceX96^2) / 2^192
|
|
111
|
+
const price = (sqrtPriceX96 * sqrtPriceX96) / (2n ** 192n);
|
|
112
|
+
// Adjust for decimal differences
|
|
113
|
+
const decimalAdjustment = 10n ** BigInt(token1Decimals - token0Decimals);
|
|
114
|
+
const nativeTokenRatio = price / decimalAdjustment;
|
|
115
|
+
return {
|
|
116
|
+
data: nativeTokenRatio,
|
|
117
|
+
status: 200,
|
|
118
|
+
success: true
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
// Case 2: Vault has liquidity
|
|
122
|
+
// If token1Balance is 0, return token0Balance
|
|
123
|
+
if (token1Balance === 0n) {
|
|
124
|
+
return {
|
|
125
|
+
data: token0Balance,
|
|
126
|
+
status: 200,
|
|
127
|
+
success: true
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
// Calculate ratio = token0Balance / token1Balance
|
|
131
|
+
// Adjust for decimal precision
|
|
132
|
+
const decimalAdjustment = 10n ** BigInt(token1Decimals - token0Decimals);
|
|
133
|
+
const ratio = (token0Balance * decimalAdjustment) / token1Balance;
|
|
134
|
+
return {
|
|
135
|
+
data: ratio,
|
|
136
|
+
status: 200,
|
|
137
|
+
success: true
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
return {
|
|
142
|
+
data: null,
|
|
143
|
+
status: 500,
|
|
144
|
+
success: false,
|
|
145
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
}
|
|
84
149
|
/**
|
|
85
150
|
* Withdraws tokens from a vault
|
|
86
151
|
* @param params The withdrawal parameters
|
|
@@ -308,5 +373,27 @@ export class VaultClient extends SubgraphClient {
|
|
|
308
373
|
};
|
|
309
374
|
}
|
|
310
375
|
}
|
|
376
|
+
async pool(vaultAddress) {
|
|
377
|
+
try {
|
|
378
|
+
const pool = await this.publicClient.readContract({
|
|
379
|
+
address: vaultAddress,
|
|
380
|
+
abi: VAULT_ABI,
|
|
381
|
+
functionName: 'pool',
|
|
382
|
+
});
|
|
383
|
+
return {
|
|
384
|
+
data: pool,
|
|
385
|
+
status: 200,
|
|
386
|
+
success: true,
|
|
387
|
+
};
|
|
388
|
+
}
|
|
389
|
+
catch (error) {
|
|
390
|
+
return {
|
|
391
|
+
data: null,
|
|
392
|
+
status: 500,
|
|
393
|
+
success: false,
|
|
394
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
395
|
+
};
|
|
396
|
+
}
|
|
397
|
+
}
|
|
311
398
|
}
|
|
312
399
|
//# sourceMappingURL=VaultClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VaultClient.js","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"VaultClient.js","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/client.js
CHANGED
|
@@ -1,6 +1,35 @@
|
|
|
1
1
|
import { SubgraphClient } from './base/SubgraphClient';
|
|
2
2
|
import { VaultClient } from './base/VaultClient';
|
|
3
|
+
/**
|
|
4
|
+
* The main client for interacting with the Steer Protocol.
|
|
5
|
+
* This client provides access to vault operations and smart rewards functionality.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import { createPublicClient, http } from 'viem';
|
|
10
|
+
* import { mainnet } from 'viem/chains';
|
|
11
|
+
* import { SteerClient } from '@steerprotocol/sdk';
|
|
12
|
+
*
|
|
13
|
+
* // Create viem client
|
|
14
|
+
* const client = createPublicClient({
|
|
15
|
+
* chain: mainnet,
|
|
16
|
+
* transport: http()
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* // Initialize the Steer client
|
|
20
|
+
* const steerClient = new SteerClient({
|
|
21
|
+
* environment: 'production',
|
|
22
|
+
* client: client
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @group Client
|
|
27
|
+
*/
|
|
3
28
|
export class SteerClient extends SubgraphClient {
|
|
29
|
+
/**
|
|
30
|
+
* Creates a new instance of the SteerClient
|
|
31
|
+
* @param config - The configuration object for the client
|
|
32
|
+
*/
|
|
4
33
|
constructor(config) {
|
|
5
34
|
super(config.client);
|
|
6
35
|
this.environment = config.environment || 'production';
|
|
@@ -8,6 +37,14 @@ export class SteerClient extends SubgraphClient {
|
|
|
8
37
|
}
|
|
9
38
|
/**
|
|
10
39
|
* Gets the active chain ID from the client
|
|
40
|
+
* @returns A promise that resolves to the active chain ID
|
|
41
|
+
* @throws Error if no active chain is found
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const chainId = await steerClient.getActiveChain();
|
|
46
|
+
* console.log(chainId.data); // e.g., 1 for Ethereum mainnet
|
|
47
|
+
* ```
|
|
11
48
|
*/
|
|
12
49
|
async getActiveChain() {
|
|
13
50
|
const activeChain = await this.client.chain?.id;
|
package/dist/esm/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,MAAM,OAAO,WAAY,SAAQ,cAAc;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,OAAO,WAAY,SAAQ,cAAc;IAO7C;;;OAGG;IACH,YAAY,MAAmB;QAC7B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,YAAY,CAAC;QACtD,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,MAAqC,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,cAAc;QACzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QAEhD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO;YACL,IAAI,EAAE,WAA2B;YACjC,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export const UniswapV3PoolABI = [{ "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "int24", "name": "tickLower", "type": "int24" }, { "indexed": true, "internalType": "int24", "name": "tickUpper", "type": "int24" }, { "indexed": false, "internalType": "uint128", "name": "amount", "type": "uint128" }, { "indexed": false, "internalType": "uint256", "name": "amount0", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount1", "type": "uint256" }], "name": "Burn", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": false, "internalType": "address", "name": "recipient", "type": "address" }, { "indexed": true, "internalType": "int24", "name": "tickLower", "type": "int24" }, { "indexed": true, "internalType": "int24", "name": "tickUpper", "type": "int24" }, { "indexed": false, "internalType": "uint128", "name": "amount0", "type": "uint128" }, { "indexed": false, "internalType": "uint128", "name": "amount1", "type": "uint128" }], "name": "Collect", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": true, "internalType": "address", "name": "recipient", "type": "address" }, { "indexed": false, "internalType": "uint128", "name": "amount0", "type": "uint128" }, { "indexed": false, "internalType": "uint128", "name": "amount1", "type": "uint128" }], "name": "CollectProtocol", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": true, "internalType": "address", "name": "recipient", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount0", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount1", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "paid0", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "paid1", "type": "uint256" }], "name": "Flash", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "uint16", "name": "observationCardinalityNextOld", "type": "uint16" }, { "indexed": false, "internalType": "uint16", "name": "observationCardinalityNextNew", "type": "uint16" }], "name": "IncreaseObservationCardinalityNext", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "uint160", "name": "sqrtPriceX96", "type": "uint160" }, { "indexed": false, "internalType": "int24", "name": "tick", "type": "int24" }], "name": "Initialize", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "int24", "name": "tickLower", "type": "int24" }, { "indexed": true, "internalType": "int24", "name": "tickUpper", "type": "int24" }, { "indexed": false, "internalType": "uint128", "name": "amount", "type": "uint128" }, { "indexed": false, "internalType": "uint256", "name": "amount0", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "amount1", "type": "uint256" }], "name": "Mint", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "uint8", "name": "feeProtocol0Old", "type": "uint8" }, { "indexed": false, "internalType": "uint8", "name": "feeProtocol1Old", "type": "uint8" }, { "indexed": false, "internalType": "uint8", "name": "feeProtocol0New", "type": "uint8" }, { "indexed": false, "internalType": "uint8", "name": "feeProtocol1New", "type": "uint8" }], "name": "SetFeeProtocol", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": true, "internalType": "address", "name": "recipient", "type": "address" }, { "indexed": false, "internalType": "int256", "name": "amount0", "type": "int256" }, { "indexed": false, "internalType": "int256", "name": "amount1", "type": "int256" }, { "indexed": false, "internalType": "uint160", "name": "sqrtPriceX96", "type": "uint160" }, { "indexed": false, "internalType": "uint128", "name": "liquidity", "type": "uint128" }, { "indexed": false, "internalType": "int24", "name": "tick", "type": "int24" }], "name": "Swap", "type": "event" }, { "inputs": [{ "internalType": "int24", "name": "tickLower", "type": "int24" }, { "internalType": "int24", "name": "tickUpper", "type": "int24" }, { "internalType": "uint128", "name": "amount", "type": "uint128" }], "name": "burn", "outputs": [{ "internalType": "uint256", "name": "amount0", "type": "uint256" }, { "internalType": "uint256", "name": "amount1", "type": "uint256" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "int24", "name": "tickLower", "type": "int24" }, { "internalType": "int24", "name": "tickUpper", "type": "int24" }, { "internalType": "uint128", "name": "amount0Requested", "type": "uint128" }, { "internalType": "uint128", "name": "amount1Requested", "type": "uint128" }], "name": "collect", "outputs": [{ "internalType": "uint128", "name": "amount0", "type": "uint128" }, { "internalType": "uint128", "name": "amount1", "type": "uint128" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint128", "name": "amount0Requested", "type": "uint128" }, { "internalType": "uint128", "name": "amount1Requested", "type": "uint128" }], "name": "collectProtocol", "outputs": [{ "internalType": "uint128", "name": "amount0", "type": "uint128" }, { "internalType": "uint128", "name": "amount1", "type": "uint128" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "factory", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "fee", "outputs": [{ "internalType": "uint24", "name": "", "type": "uint24" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "feeGrowthGlobal0X128", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "feeGrowthGlobal1X128", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount0", "type": "uint256" }, { "internalType": "uint256", "name": "amount1", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" }], "name": "flash", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint16", "name": "observationCardinalityNext", "type": "uint16" }], "name": "increaseObservationCardinalityNext", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint160", "name": "sqrtPriceX96", "type": "uint160" }], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "liquidity", "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "maxLiquidityPerTick", "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "int24", "name": "tickLower", "type": "int24" }, { "internalType": "int24", "name": "tickUpper", "type": "int24" }, { "internalType": "uint128", "name": "amount", "type": "uint128" }, { "internalType": "bytes", "name": "data", "type": "bytes" }], "name": "mint", "outputs": [{ "internalType": "uint256", "name": "amount0", "type": "uint256" }, { "internalType": "uint256", "name": "amount1", "type": "uint256" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "name": "observations", "outputs": [{ "internalType": "uint32", "name": "blockTimestamp", "type": "uint32" }, { "internalType": "int56", "name": "tickCumulative", "type": "int56" }, { "internalType": "uint160", "name": "secondsPerLiquidityCumulativeX128", "type": "uint160" }, { "internalType": "bool", "name": "initialized", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint32[]", "name": "secondsAgos", "type": "uint32[]" }], "name": "observe", "outputs": [{ "internalType": "int56[]", "name": "tickCumulatives", "type": "int56[]" }, { "internalType": "uint160[]", "name": "secondsPerLiquidityCumulativeX128s", "type": "uint160[]" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "name": "positions", "outputs": [{ "internalType": "uint128", "name": "liquidity", "type": "uint128" }, { "internalType": "uint256", "name": "feeGrowthInside0LastX128", "type": "uint256" }, { "internalType": "uint256", "name": "feeGrowthInside1LastX128", "type": "uint256" }, { "internalType": "uint128", "name": "tokensOwed0", "type": "uint128" }, { "internalType": "uint128", "name": "tokensOwed1", "type": "uint128" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "protocolFees", "outputs": [{ "internalType": "uint128", "name": "token0", "type": "uint128" }, { "internalType": "uint128", "name": "token1", "type": "uint128" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint8", "name": "feeProtocol0", "type": "uint8" }, { "internalType": "uint8", "name": "feeProtocol1", "type": "uint8" }], "name": "setFeeProtocol", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "slot0", "outputs": [{ "internalType": "uint160", "name": "sqrtPriceX96", "type": "uint160" }, { "internalType": "int24", "name": "tick", "type": "int24" }, { "internalType": "uint16", "name": "observationIndex", "type": "uint16" }, { "internalType": "uint16", "name": "observationCardinality", "type": "uint16" }, { "internalType": "uint16", "name": "observationCardinalityNext", "type": "uint16" }, { "internalType": "uint8", "name": "feeProtocol", "type": "uint8" }, { "internalType": "bool", "name": "unlocked", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "int24", "name": "tickLower", "type": "int24" }, { "internalType": "int24", "name": "tickUpper", "type": "int24" }], "name": "snapshotCumulativesInside", "outputs": [{ "internalType": "int56", "name": "tickCumulativeInside", "type": "int56" }, { "internalType": "uint160", "name": "secondsPerLiquidityInsideX128", "type": "uint160" }, { "internalType": "uint32", "name": "secondsInside", "type": "uint32" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "bool", "name": "zeroForOne", "type": "bool" }, { "internalType": "int256", "name": "amountSpecified", "type": "int256" }, { "internalType": "uint160", "name": "sqrtPriceLimitX96", "type": "uint160" }, { "internalType": "bytes", "name": "data", "type": "bytes" }], "name": "swap", "outputs": [{ "internalType": "int256", "name": "amount0", "type": "int256" }, { "internalType": "int256", "name": "amount1", "type": "int256" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "int16", "name": "", "type": "int16" }], "name": "tickBitmap", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "tickSpacing", "outputs": [{ "internalType": "int24", "name": "", "type": "int24" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "int24", "name": "", "type": "int24" }], "name": "ticks", "outputs": [{ "internalType": "uint128", "name": "liquidityGross", "type": "uint128" }, { "internalType": "int128", "name": "liquidityNet", "type": "int128" }, { "internalType": "uint256", "name": "feeGrowthOutside0X128", "type": "uint256" }, { "internalType": "uint256", "name": "feeGrowthOutside1X128", "type": "uint256" }, { "internalType": "int56", "name": "tickCumulativeOutside", "type": "int56" }, { "internalType": "uint160", "name": "secondsPerLiquidityOutsideX128", "type": "uint160" }, { "internalType": "uint32", "name": "secondsOutside", "type": "uint32" }, { "internalType": "bool", "name": "initialized", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "token0", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "token1", "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" }];
|
|
2
|
+
//# sourceMappingURL=UniswapPool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UniswapPool.js","sourceRoot":"","sources":["../../../../src/const/abis/UniswapPool.ts"],"names":[],"mappings":"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"}
|