@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
|
@@ -0,0 +1,465 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SmartRewards = void 0;
|
|
4
|
+
const subgraph_1 = require("../const/subgraph");
|
|
5
|
+
const viem_1 = require("viem");
|
|
6
|
+
class SmartRewards {
|
|
7
|
+
constructor(client, publicClient, walletClient) {
|
|
8
|
+
this.client = client;
|
|
9
|
+
this.publicClient = publicClient;
|
|
10
|
+
this.walletClient = walletClient;
|
|
11
|
+
}
|
|
12
|
+
async getCampaigns(chainId) {
|
|
13
|
+
const campaigns = await this.client.campaigns({
|
|
14
|
+
filter: {
|
|
15
|
+
chainId,
|
|
16
|
+
},
|
|
17
|
+
});
|
|
18
|
+
return {
|
|
19
|
+
data: (campaigns.data?.campaigns.edges.map((edge) => ({
|
|
20
|
+
...edge.node,
|
|
21
|
+
vaults: edge.node.vaults?.map(vault => ({
|
|
22
|
+
...vault,
|
|
23
|
+
beaconName: vault.beaconName || '',
|
|
24
|
+
name: vault.name || '',
|
|
25
|
+
protocol: vault.protocol || '',
|
|
26
|
+
protocolBaseType: vault.protocolBaseType || '',
|
|
27
|
+
targetProtocol: vault.targetProtocol || ''
|
|
28
|
+
})) || []
|
|
29
|
+
})) || []),
|
|
30
|
+
status: campaigns.status,
|
|
31
|
+
success: true,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Retrieves claim proofs for a user that can be used to claim rewards
|
|
36
|
+
* @param user - Address of the user to get proofs for
|
|
37
|
+
* @param chainId - Chain ID where the claims exist
|
|
38
|
+
* @param campaignId - Optional campaign ID to filter claims
|
|
39
|
+
* @returns Promise resolving to claim proof data with pagination support
|
|
40
|
+
*/
|
|
41
|
+
async getClaimProofs(user, chainId, campaignId) {
|
|
42
|
+
try {
|
|
43
|
+
const response = await this.client.claimProofs({
|
|
44
|
+
user,
|
|
45
|
+
filter: {
|
|
46
|
+
chainId,
|
|
47
|
+
campaignId
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
if (!response.data?.claimProofs) {
|
|
51
|
+
return {
|
|
52
|
+
data: null,
|
|
53
|
+
status: response.status,
|
|
54
|
+
success: true
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
const transformedResponse = {
|
|
58
|
+
totalCount: response.data.claimProofs.totalCount,
|
|
59
|
+
pageInfo: {
|
|
60
|
+
hasNextPage: response.data.claimProofs.pageInfo.hasNextPage,
|
|
61
|
+
endCursor: response.data.claimProofs.pageInfo.endCursor || undefined
|
|
62
|
+
},
|
|
63
|
+
edges: response.data.claimProofs.edges.map(edge => ({
|
|
64
|
+
cursor: edge.cursor,
|
|
65
|
+
node: {
|
|
66
|
+
...edge.node,
|
|
67
|
+
proof: edge.node.proof?.filter((p) => p !== null) || []
|
|
68
|
+
}
|
|
69
|
+
}))
|
|
70
|
+
};
|
|
71
|
+
return {
|
|
72
|
+
data: transformedResponse,
|
|
73
|
+
status: response.status,
|
|
74
|
+
success: true
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
return {
|
|
79
|
+
data: null,
|
|
80
|
+
status: 500,
|
|
81
|
+
success: false,
|
|
82
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Retrieves historical claim data for a specific pool
|
|
88
|
+
* @param chainId - Chain ID where the pool exists
|
|
89
|
+
* @param pool - Address or identifier of the pool
|
|
90
|
+
* @param user - Optional user address to filter claims
|
|
91
|
+
* @returns Promise resolving to paginated claim history data
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* ```typescript
|
|
95
|
+
* // Get all claims for a pool
|
|
96
|
+
* const allClaims = await smartRewards.getClaimRewardsByPool(1, poolAddress);
|
|
97
|
+
*
|
|
98
|
+
* // Get claims for a specific user in a pool
|
|
99
|
+
* const userClaims = await smartRewards.getClaimRewardsByPool(1, poolAddress, userAddress);
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
async getClaimRewardsByPool(chainId, pool, user) {
|
|
103
|
+
try {
|
|
104
|
+
const response = await this.client.claimRewards({
|
|
105
|
+
poolId: pool,
|
|
106
|
+
chainId,
|
|
107
|
+
filter: user ? { user } : undefined
|
|
108
|
+
});
|
|
109
|
+
if (!response.data?.claimRewards) {
|
|
110
|
+
return {
|
|
111
|
+
data: null,
|
|
112
|
+
status: response.status,
|
|
113
|
+
success: true
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
const transformedResponse = {
|
|
117
|
+
totalCount: response.data.claimRewards.totalCount,
|
|
118
|
+
pageInfo: {
|
|
119
|
+
hasNextPage: response.data.claimRewards.pageInfo.hasNextPage,
|
|
120
|
+
endCursor: response.data.claimRewards.pageInfo.endCursor
|
|
121
|
+
},
|
|
122
|
+
edges: response.data.claimRewards.edges.map(edge => ({
|
|
123
|
+
cursor: edge.cursor,
|
|
124
|
+
node: {
|
|
125
|
+
...edge.node,
|
|
126
|
+
timestamp: Number(edge.node.timestamp)
|
|
127
|
+
}
|
|
128
|
+
}))
|
|
129
|
+
};
|
|
130
|
+
return {
|
|
131
|
+
data: transformedResponse,
|
|
132
|
+
status: response.status,
|
|
133
|
+
success: true
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
catch (error) {
|
|
137
|
+
return {
|
|
138
|
+
data: null,
|
|
139
|
+
status: 500,
|
|
140
|
+
success: false,
|
|
141
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Gets a comprehensive summary of a user's reward status
|
|
147
|
+
* @param user - Address of the user
|
|
148
|
+
* @param chainId - Chain ID to check rewards on
|
|
149
|
+
* @param campaignId - Optional campaign ID to filter rewards
|
|
150
|
+
* @param decimals - Number of decimals for formatting (default: 18)
|
|
151
|
+
* @returns Promise resolving to reward summary with both native and formatted values
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```typescript
|
|
155
|
+
* const summary = await smartRewards.getRewardSummary(userAddress, chainId);
|
|
156
|
+
* console.log('Total earned:', summary.data.totalEarned.formatted);
|
|
157
|
+
* console.log('Available to claim:', summary.data.claimable.formatted);
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
160
|
+
async getRewardSummary(user, chainId, campaignId, decimals = 18) {
|
|
161
|
+
try {
|
|
162
|
+
// Get claimable rewards
|
|
163
|
+
const claimProofs = await this.getClaimProofs(user, chainId, campaignId);
|
|
164
|
+
const claimableAmount = claimProofs.data?.edges.reduce((sum, edge) => sum + BigInt(edge.node.amount.split('.')[0]), 0n) || 0n;
|
|
165
|
+
// Get claimed rewards
|
|
166
|
+
const claimedRewards = await this.getClaimRewardsByPool(chainId, campaignId?.toString() || '', user);
|
|
167
|
+
const claimedAmount = claimedRewards.data?.edges.reduce((sum, edge) => sum + BigInt(edge.node.amount.split('.')[0]), 0n) || 0n;
|
|
168
|
+
// Calculate totals
|
|
169
|
+
const totalEarned = claimableAmount + claimedAmount;
|
|
170
|
+
const summary = {
|
|
171
|
+
totalEarned: {
|
|
172
|
+
native: totalEarned,
|
|
173
|
+
formatted: (0, viem_1.formatUnits)(totalEarned, decimals)
|
|
174
|
+
},
|
|
175
|
+
totalClaimed: {
|
|
176
|
+
native: claimedAmount,
|
|
177
|
+
formatted: (0, viem_1.formatUnits)(claimedAmount, decimals)
|
|
178
|
+
},
|
|
179
|
+
claimable: {
|
|
180
|
+
native: claimableAmount,
|
|
181
|
+
formatted: (0, viem_1.formatUnits)(claimableAmount, decimals)
|
|
182
|
+
}
|
|
183
|
+
};
|
|
184
|
+
return {
|
|
185
|
+
data: summary,
|
|
186
|
+
status: 200,
|
|
187
|
+
success: true
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
catch (error) {
|
|
191
|
+
return {
|
|
192
|
+
data: null,
|
|
193
|
+
status: 500,
|
|
194
|
+
success: false,
|
|
195
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
async getSmartRewarderContracts() {
|
|
200
|
+
try {
|
|
201
|
+
const response = await this.client.smartRewarderContracts();
|
|
202
|
+
return {
|
|
203
|
+
data: response.data?.smartRewarderContracts || [],
|
|
204
|
+
status: response.status,
|
|
205
|
+
success: true
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
catch (error) {
|
|
209
|
+
return {
|
|
210
|
+
data: null,
|
|
211
|
+
status: 500,
|
|
212
|
+
success: false,
|
|
213
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Claims rewards from the smart rewarder contract
|
|
219
|
+
* @param params - Parameters required for claiming rewards
|
|
220
|
+
* @returns Promise resolving to transaction hash if successful
|
|
221
|
+
*
|
|
222
|
+
* @remarks
|
|
223
|
+
* This method handles the low-level interaction with the smart contract.
|
|
224
|
+
* For a higher-level interface, consider using {@link claimCampaignRewards} instead.
|
|
225
|
+
*
|
|
226
|
+
* @example
|
|
227
|
+
* ```typescript
|
|
228
|
+
* // Get claim proofs
|
|
229
|
+
* const claimProofs = await smartRewards.getClaimProofs(userAddress, chainId, campaignId);
|
|
230
|
+
*
|
|
231
|
+
* // Get smart rewarder contract
|
|
232
|
+
* const rewarders = await smartRewards.getSmartRewarderContracts();
|
|
233
|
+
* const rewarder = rewarders.data?.find(r => r.chainId === chainId);
|
|
234
|
+
*
|
|
235
|
+
* if (claimProofs.data && rewarder) {
|
|
236
|
+
* // Prepare claim data
|
|
237
|
+
* const claimData = smartRewards.prepareClaimData(claimProofs.data);
|
|
238
|
+
* claimData.rewarderAddress = rewarder.address as Address;
|
|
239
|
+
*
|
|
240
|
+
* // Claim rewards
|
|
241
|
+
* const tx = await smartRewards.claimReward(claimData);
|
|
242
|
+
* }
|
|
243
|
+
* ```
|
|
244
|
+
*
|
|
245
|
+
* @throws Will throw an error if no wallet account is found
|
|
246
|
+
* @throws Will throw an error if contract simulation fails
|
|
247
|
+
*/
|
|
248
|
+
async claimReward(params) {
|
|
249
|
+
try {
|
|
250
|
+
const account = await this.walletClient.getAddresses();
|
|
251
|
+
if (!account[0])
|
|
252
|
+
throw new Error('No account found');
|
|
253
|
+
const { request } = await this.publicClient.simulateContract({
|
|
254
|
+
address: params.rewarderAddress,
|
|
255
|
+
abi: [{
|
|
256
|
+
type: 'function',
|
|
257
|
+
inputs: [
|
|
258
|
+
{ name: 'users', internalType: 'address[]', type: 'address[]' },
|
|
259
|
+
{ name: 'campaignIds', internalType: 'uint256[]', type: 'uint256[]' },
|
|
260
|
+
{ name: 'amounts', internalType: 'uint256[]', type: 'uint256[]' },
|
|
261
|
+
{ name: 'proofs', internalType: 'bytes32[][]', type: 'bytes32[][]' }
|
|
262
|
+
],
|
|
263
|
+
name: 'claim',
|
|
264
|
+
outputs: [],
|
|
265
|
+
stateMutability: 'nonpayable'
|
|
266
|
+
}],
|
|
267
|
+
functionName: 'claim',
|
|
268
|
+
args: [
|
|
269
|
+
params.users,
|
|
270
|
+
params.campaignIds,
|
|
271
|
+
params.amounts,
|
|
272
|
+
params.proofs
|
|
273
|
+
],
|
|
274
|
+
account: account[0]
|
|
275
|
+
});
|
|
276
|
+
const hash = await this.walletClient.writeContract(request);
|
|
277
|
+
return {
|
|
278
|
+
data: hash,
|
|
279
|
+
status: 200,
|
|
280
|
+
success: true
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
catch (error) {
|
|
284
|
+
return {
|
|
285
|
+
data: null,
|
|
286
|
+
status: 500,
|
|
287
|
+
success: false,
|
|
288
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
289
|
+
};
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Helper function to prepare claim data from claim proofs
|
|
294
|
+
* @param proofs - The claim proofs response from getClaimProofs
|
|
295
|
+
* @returns ClaimRewardParams object ready for use with claimReward
|
|
296
|
+
*
|
|
297
|
+
* @remarks
|
|
298
|
+
* This helper function transforms the claim proofs into the format required by the smart contract.
|
|
299
|
+
* Note that the returned object's rewarderAddress is empty and must be set before using with claimReward.
|
|
300
|
+
*
|
|
301
|
+
* @example
|
|
302
|
+
* ```typescript
|
|
303
|
+
* // Get claim proofs and rewarder contract
|
|
304
|
+
* const proofs = await smartRewards.getClaimProofs(userAddress, chainId);
|
|
305
|
+
* const rewarders = await smartRewards.getSmartRewarderContracts();
|
|
306
|
+
* const rewarder = rewarders.data?.find(r => r.chainId === chainId);
|
|
307
|
+
*
|
|
308
|
+
* if (proofs.data && rewarder) {
|
|
309
|
+
* // Prepare the claim data
|
|
310
|
+
* const claimData = smartRewards.prepareClaimData(proofs.data);
|
|
311
|
+
*
|
|
312
|
+
* // Set the rewarder address (required)
|
|
313
|
+
* claimData.rewarderAddress = rewarder.address as Address;
|
|
314
|
+
*
|
|
315
|
+
* // Now the data is ready for claiming
|
|
316
|
+
* const tx = await smartRewards.claimReward(claimData);
|
|
317
|
+
* }
|
|
318
|
+
* ```
|
|
319
|
+
*/
|
|
320
|
+
prepareClaimData(proofs) {
|
|
321
|
+
return {
|
|
322
|
+
users: proofs.edges.map(edge => edge.node.user),
|
|
323
|
+
campaignIds: proofs.edges.map(edge => BigInt(edge.node.campaignId)),
|
|
324
|
+
amounts: proofs.edges.map(edge => BigInt(edge.node.amount.split('.')[0])),
|
|
325
|
+
proofs: proofs.edges.map(edge => edge.node.proof),
|
|
326
|
+
rewarderAddress: '' // This needs to be set by the caller
|
|
327
|
+
};
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
* Convenience function to handle the entire claim process
|
|
331
|
+
* @param userAddress The address of the user claiming rewards
|
|
332
|
+
* @param chainId The chain ID where the campaign exists
|
|
333
|
+
* @param campaignId Optional campaign ID to filter claims
|
|
334
|
+
* @returns Transaction hash if successful, or error details if failed
|
|
335
|
+
*/
|
|
336
|
+
async claimCampaignRewards(userAddress, chainId, campaignId) {
|
|
337
|
+
try {
|
|
338
|
+
// Get claim proofs
|
|
339
|
+
const claimProofsResponse = await this.getClaimProofs(userAddress, chainId, campaignId);
|
|
340
|
+
if (!claimProofsResponse.data || claimProofsResponse.data.edges.length === 0) {
|
|
341
|
+
return {
|
|
342
|
+
data: null,
|
|
343
|
+
status: 400,
|
|
344
|
+
success: false,
|
|
345
|
+
error: 'No claim proofs found'
|
|
346
|
+
};
|
|
347
|
+
}
|
|
348
|
+
// Get smart rewarder contract
|
|
349
|
+
const rewarderResponse = await this.getSmartRewarderContracts();
|
|
350
|
+
const rewarder = rewarderResponse.data?.find(r => r.chainId === chainId);
|
|
351
|
+
if (!rewarder) {
|
|
352
|
+
return {
|
|
353
|
+
data: null,
|
|
354
|
+
status: 400,
|
|
355
|
+
success: false,
|
|
356
|
+
error: `No smart rewarder contract found for chain ${chainId}`
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
// Prepare claim data
|
|
360
|
+
const claimData = this.prepareClaimData(claimProofsResponse.data);
|
|
361
|
+
claimData.rewarderAddress = rewarder.address;
|
|
362
|
+
// Execute claim
|
|
363
|
+
return await this.claimReward(claimData);
|
|
364
|
+
}
|
|
365
|
+
catch (error) {
|
|
366
|
+
return {
|
|
367
|
+
data: null,
|
|
368
|
+
status: 500,
|
|
369
|
+
success: false,
|
|
370
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
371
|
+
};
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
/**
|
|
375
|
+
* Prepares the claim rewards campaign object with all necessary data for contract interaction
|
|
376
|
+
* @param userAddress The address of the user claiming rewards
|
|
377
|
+
* @param chainId The chain ID where the campaign exists
|
|
378
|
+
* @param campaignId Optional campaign ID to filter claims
|
|
379
|
+
* @returns Promise resolving to an object containing all necessary data for claiming rewards
|
|
380
|
+
*
|
|
381
|
+
* @example
|
|
382
|
+
* ```typescript
|
|
383
|
+
* // Get the prepared claim data
|
|
384
|
+
* const claimData = await smartRewards.prepareClaimRewardsCampaign(userAddress, chainId, campaignId);
|
|
385
|
+
*
|
|
386
|
+
* if (claimData.success) {
|
|
387
|
+
* // Use the data with your own contract interaction methods
|
|
388
|
+
* const { address, abi, functionName, args } = claimData.data;
|
|
389
|
+
* // Execute the contract call using your preferred method
|
|
390
|
+
* }
|
|
391
|
+
* ```
|
|
392
|
+
*/
|
|
393
|
+
async prepareClaimRewardsCampaign(userAddress, chainId, campaignId) {
|
|
394
|
+
try {
|
|
395
|
+
// Get claim proofs
|
|
396
|
+
const claimProofsResponse = await this.getClaimProofs(userAddress, chainId, campaignId);
|
|
397
|
+
if (!claimProofsResponse.data || claimProofsResponse.data.edges.length === 0) {
|
|
398
|
+
return {
|
|
399
|
+
data: null,
|
|
400
|
+
status: 400,
|
|
401
|
+
success: false,
|
|
402
|
+
error: 'No claim proofs found'
|
|
403
|
+
};
|
|
404
|
+
}
|
|
405
|
+
// Get smart rewarder contract
|
|
406
|
+
const rewarderResponse = await this.getSmartRewarderContracts();
|
|
407
|
+
const rewarder = rewarderResponse.data?.find(r => r.chainId === chainId);
|
|
408
|
+
if (!rewarder) {
|
|
409
|
+
return {
|
|
410
|
+
data: null,
|
|
411
|
+
status: 400,
|
|
412
|
+
success: false,
|
|
413
|
+
error: `No smart rewarder contract found for chain ${chainId}`
|
|
414
|
+
};
|
|
415
|
+
}
|
|
416
|
+
// Prepare claim data
|
|
417
|
+
const claimData = this.prepareClaimData(claimProofsResponse.data);
|
|
418
|
+
// Prepare the complete contract interaction data
|
|
419
|
+
return {
|
|
420
|
+
data: {
|
|
421
|
+
address: rewarder.address,
|
|
422
|
+
abi: [{
|
|
423
|
+
type: 'function',
|
|
424
|
+
inputs: [
|
|
425
|
+
{ name: 'users', internalType: 'address[]', type: 'address[]' },
|
|
426
|
+
{ name: 'campaignIds', internalType: 'uint256[]', type: 'uint256[]' },
|
|
427
|
+
{ name: 'amounts', internalType: 'uint256[]', type: 'uint256[]' },
|
|
428
|
+
{ name: 'proofs', internalType: 'bytes32[][]', type: 'bytes32[][]' }
|
|
429
|
+
],
|
|
430
|
+
name: 'claim',
|
|
431
|
+
outputs: [],
|
|
432
|
+
stateMutability: 'nonpayable'
|
|
433
|
+
}],
|
|
434
|
+
functionName: 'claim',
|
|
435
|
+
args: [
|
|
436
|
+
claimData.users,
|
|
437
|
+
claimData.campaignIds,
|
|
438
|
+
claimData.amounts,
|
|
439
|
+
claimData.proofs
|
|
440
|
+
]
|
|
441
|
+
},
|
|
442
|
+
status: 200,
|
|
443
|
+
success: true
|
|
444
|
+
};
|
|
445
|
+
}
|
|
446
|
+
catch (error) {
|
|
447
|
+
return {
|
|
448
|
+
data: null,
|
|
449
|
+
status: 500,
|
|
450
|
+
success: false,
|
|
451
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
452
|
+
};
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* Checks if a chain is supported by checking if it has a subgraph URL
|
|
457
|
+
* @param chainId The chain ID to check
|
|
458
|
+
* @returns boolean indicating if the chain is supported
|
|
459
|
+
*/
|
|
460
|
+
supportsChain(chainId) {
|
|
461
|
+
return Object.keys(subgraph_1.subgraphs).includes(chainId.toString());
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
exports.SmartRewards = SmartRewards;
|
|
465
|
+
//# sourceMappingURL=SmartRewards.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SmartRewards.js","sourceRoot":"","sources":["../../../src/base/SmartRewards.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubgraphClient.js","sourceRoot":"","sources":["../../../src/base/SubgraphClient.ts"],"names":[],"mappings":";;;AAEA,gDAA8C;AAE9C,MAAsB,cAAc;IAGlC,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,oBAAoB,CAClC,KAAa,EACb,
|
|
1
|
+
{"version":3,"file":"SubgraphClient.js","sourceRoot":"","sources":["../../../src/base/SubgraphClient.ts"],"names":[],"mappings":";;;AAEA,gDAA8C;AAE9C,MAAsB,cAAc;IAGlC,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;OAKG;IACO,KAAK,CAAC,oBAAoB,CAClC,KAAa,EACb,SAAmC;QAEnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC;QAE5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,OAAO,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE;gBACxC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK;oBACL,SAAS;iBACV,CAAC;aACH,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAErC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC5C,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAS;gBACtB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,IAAS;gBACf,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACO,cAAc,CAAC,OAAe;QACtC,OAAO,oBAAS,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,OAAe;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,oBAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7D,CAAC;CACF;AAlFD,wCAkFC"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VaultClient = void 0;
|
|
4
4
|
const SubgraphClient_1 = require("./SubgraphClient");
|
|
5
5
|
const abis_1 = require("../const/deployments/abis");
|
|
6
|
+
const UniswapPool_1 = require("../const/abis/UniswapPool");
|
|
6
7
|
const VAULT_ABI = abis_1.abis.QuickSwapUniv3MultiPositionLiquidityManager;
|
|
7
8
|
const PERIPHERY_ABI = abis_1.abis.SteerPeriphery;
|
|
8
9
|
class VaultClient extends SubgraphClient_1.SubgraphClient {
|
|
@@ -84,6 +85,70 @@ class VaultClient extends SubgraphClient_1.SubgraphClient {
|
|
|
84
85
|
};
|
|
85
86
|
}
|
|
86
87
|
}
|
|
88
|
+
async getDepositRatio(vaultAddress) {
|
|
89
|
+
try {
|
|
90
|
+
// Get vault details to check balances and decimals
|
|
91
|
+
const vaultDetails = await this.publicClient.readContract({
|
|
92
|
+
address: vaultAddress,
|
|
93
|
+
abi: PERIPHERY_ABI,
|
|
94
|
+
functionName: 'vaultDetailsByAddress',
|
|
95
|
+
args: [vaultAddress]
|
|
96
|
+
});
|
|
97
|
+
const token0Balance = vaultDetails.token0Balance;
|
|
98
|
+
const token1Balance = vaultDetails.token1Balance;
|
|
99
|
+
const token0Decimals = vaultDetails.token0Decimals;
|
|
100
|
+
const token1Decimals = vaultDetails.token1Decimals;
|
|
101
|
+
// Case 1: No liquidity in the vault
|
|
102
|
+
if (token0Balance === 0n && token1Balance === 0n) {
|
|
103
|
+
// Get the pool contract to fetch current price
|
|
104
|
+
const pool = await this.pool(vaultAddress);
|
|
105
|
+
if (!pool.data)
|
|
106
|
+
throw new Error('Failed to retrieve pool for ratio calculation');
|
|
107
|
+
// Get current sqrtPriceX96
|
|
108
|
+
const [sqrtPriceX96] = await this.publicClient.readContract({
|
|
109
|
+
address: pool.data,
|
|
110
|
+
abi: UniswapPool_1.UniswapV3PoolABI,
|
|
111
|
+
functionName: 'slot0'
|
|
112
|
+
});
|
|
113
|
+
// Calculate price = (sqrtPriceX96^2) / 2^192
|
|
114
|
+
const price = (sqrtPriceX96 * sqrtPriceX96) / (2n ** 192n);
|
|
115
|
+
// Adjust for decimal differences
|
|
116
|
+
const decimalAdjustment = 10n ** BigInt(token1Decimals - token0Decimals);
|
|
117
|
+
const nativeTokenRatio = price / decimalAdjustment;
|
|
118
|
+
return {
|
|
119
|
+
data: nativeTokenRatio,
|
|
120
|
+
status: 200,
|
|
121
|
+
success: true
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
// Case 2: Vault has liquidity
|
|
125
|
+
// If token1Balance is 0, return token0Balance
|
|
126
|
+
if (token1Balance === 0n) {
|
|
127
|
+
return {
|
|
128
|
+
data: token0Balance,
|
|
129
|
+
status: 200,
|
|
130
|
+
success: true
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
// Calculate ratio = token0Balance / token1Balance
|
|
134
|
+
// Adjust for decimal precision
|
|
135
|
+
const decimalAdjustment = 10n ** BigInt(token1Decimals - token0Decimals);
|
|
136
|
+
const ratio = (token0Balance * decimalAdjustment) / token1Balance;
|
|
137
|
+
return {
|
|
138
|
+
data: ratio,
|
|
139
|
+
status: 200,
|
|
140
|
+
success: true
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
catch (error) {
|
|
144
|
+
return {
|
|
145
|
+
data: null,
|
|
146
|
+
status: 500,
|
|
147
|
+
success: false,
|
|
148
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred'
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
}
|
|
87
152
|
/**
|
|
88
153
|
* Withdraws tokens from a vault
|
|
89
154
|
* @param params The withdrawal parameters
|
|
@@ -311,6 +376,28 @@ class VaultClient extends SubgraphClient_1.SubgraphClient {
|
|
|
311
376
|
};
|
|
312
377
|
}
|
|
313
378
|
}
|
|
379
|
+
async pool(vaultAddress) {
|
|
380
|
+
try {
|
|
381
|
+
const pool = await this.publicClient.readContract({
|
|
382
|
+
address: vaultAddress,
|
|
383
|
+
abi: VAULT_ABI,
|
|
384
|
+
functionName: 'pool',
|
|
385
|
+
});
|
|
386
|
+
return {
|
|
387
|
+
data: pool,
|
|
388
|
+
status: 200,
|
|
389
|
+
success: true,
|
|
390
|
+
};
|
|
391
|
+
}
|
|
392
|
+
catch (error) {
|
|
393
|
+
return {
|
|
394
|
+
data: null,
|
|
395
|
+
status: 500,
|
|
396
|
+
success: false,
|
|
397
|
+
error: error instanceof Error ? error.message : 'Unknown error occurred',
|
|
398
|
+
};
|
|
399
|
+
}
|
|
400
|
+
}
|
|
314
401
|
}
|
|
315
402
|
exports.VaultClient = VaultClient;
|
|
316
403
|
//# sourceMappingURL=VaultClient.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VaultClient.js","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":";;;AAEA,qDAAkD;AAClD,oDAAiD;
|
|
1
|
+
{"version":3,"file":"VaultClient.js","sourceRoot":"","sources":["../../../src/base/VaultClient.ts"],"names":[],"mappings":"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"}
|