Skip to content

Commit ac3f38f

Browse files
authored
Merge pull request #2073 from reservoir-labs/master
feat: new logic for Reservoir Finance on AVAX
2 parents f35eb4e + 6c9363b commit ac3f38f

File tree

1 file changed

+14
-31
lines changed

1 file changed

+14
-31
lines changed

src/adaptors/reservoir/index.js

Lines changed: 14 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,24 @@
1-
const { request, gql } = require('graphql-request');
1+
const { fetchURL } = require('../../helper/utils');
22

3-
const GRAPHQL_URL = 'https://data.staging.arkiver.net/robolabs/reservoir-mainnet-v2/graphql';
4-
5-
const graphQuery = gql`
6-
query GetStats {
7-
PairSnapshots {
8-
swapApr
9-
managedApy
10-
pair {
11-
address
12-
curveId
13-
token0
14-
token1
15-
token0Symbol
16-
token1Symbol
17-
tvlUSD
18-
}
19-
}
20-
}
21-
`;
3+
const API_URL = 'https://api.reservoir.fi/v1/pairs';
224

235
const getApy = async () => {
24-
const { PairSnapshots } = await request(GRAPHQL_URL, graphQuery);
6+
const { data: pairs } = await fetchURL(API_URL);
257

26-
return PairSnapshots.map((snapshot) => {
27-
const symbols = snapshot.pair.token0Symbol + '-' + snapshot.pair.token1Symbol
28-
const poolType = snapshot.pair.curveId === 0 ? 'Constant Product' : 'Stable'
8+
return pairs.map((pair) => {
9+
const symbols = pair.token0.symbol + '-' + pair.token1.symbol
10+
const poolType = pair.curveId === 0 ? 'Constant Product' : 'Stable'
11+
const tvlUSD = pair.token0.usdPrice * Number(pair.token0Reserve) + pair.token1.usdPrice * Number(pair.token1Reserve)
2912
return {
30-
pool: snapshot.pair.address,
13+
pool: pair.address,
3114
chain: 'Avalanche',
3215
project: 'reservoir',
3316
symbol: symbols,
34-
tvlUsd: snapshot.pair.tvlUSD,
35-
apyBase: (snapshot.swapApr + snapshot.managedApy) * 100, // to convert into percentage form
36-
apyReward: 0,
37-
rewardTokens: [], // we do not have incentive tokens at this point
38-
underlyingTokens: [snapshot.pair.token0, snapshot.pair.token1],
17+
tvlUsd: tvlUSD,
18+
apyBase: pair.swapApr,
19+
apyReward: pair.supplyApr,
20+
rewardTokens: ['0x2e3b32730B4F6b6502BdAa9122df3B026eDE5391'],
21+
underlyingTokens: [pair.token0.contractAddress, pair.token1.contractAddress],
3922
poolMeta: poolType
4023
}
4124
})
@@ -44,5 +27,5 @@ const getApy = async () => {
4427
module.exports = {
4528
timetravel: false,
4629
apy: getApy,
47-
url: 'https://analytics.reservoir.fi/',
30+
url: 'https://app.reservoir.fi/analytics',
4831
};

0 commit comments

Comments
 (0)