Skip to content

Commit add6efe

Browse files
committed
split adapters according to protocol slug
1 parent a68f34c commit add6efe

File tree

4 files changed

+91
-63
lines changed

4 files changed

+91
-63
lines changed

src/adaptors/avant-avbtc/index.js

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
const { getData } = require('../avant-aveth/shared')
2+
3+
// Avalanche tokens
4+
const avBTC = '0xfd2c2A98009d0cBed715882036e43d26C4289053'
5+
const savBTC = '0x649342c6bff544d82DF1B2bA3C93e0C22cDeBa84' // Staked avBTC (ERC-4626)
6+
7+
async function apy() {
8+
const savBTCData = await getData('avax', savBTC, avBTC)
9+
10+
return [
11+
{
12+
pool: `${savBTC}-avax`,
13+
chain: 'avax',
14+
project: 'avant-avbtc',
15+
symbol: 'savBTC',
16+
tvlUsd: savBTCData.tvlUsd,
17+
apyBase: savBTCData.apyBase,
18+
underlyingTokens: [avBTC],
19+
poolMeta: 'ERC-4626: savBTC → avBTC',
20+
url: 'https://www.avantprotocol.com',
21+
},
22+
]
23+
}
24+
25+
module.exports = {
26+
timetravel: false,
27+
apy,
28+
url: 'https://www.avantprotocol.com',
29+
}

src/adaptors/avant-aveth/index.js

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
const { getData } = require('./shared')
2+
3+
// Ethereum tokens
4+
const avETH = '0x9469470C9878bf3d6d0604831d9A3A366156f7EE'
5+
const savETH = '0xDA06eE2dACF9245Aa80072a4407deBDea0D7e341' // Staked avETH (ERC-4626)
6+
const wETH = '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2'
7+
8+
async function apy() {
9+
const savETHData = await getData('ethereum', savETH, avETH, wETH)
10+
11+
return [
12+
{
13+
pool: `${savETH}-ethereum`,
14+
chain: 'ethereum',
15+
project: 'avant-aveth',
16+
symbol: 'savETH',
17+
tvlUsd: savETHData.tvlUsd,
18+
apyBase: savETHData.apyBase,
19+
underlyingTokens: [avETH],
20+
poolMeta: 'ERC-4626: savETH → avETH',
21+
url: 'https://www.avantprotocol.com',
22+
},
23+
]
24+
}
25+
26+
module.exports = {
27+
timetravel: false,
28+
apy,
29+
url: 'https://www.avantprotocol.com',
30+
}

src/adaptors/avant-protocol/index.js renamed to src/adaptors/avant-aveth/shared.js

Lines changed: 3 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,6 @@ const sdk = require('@defillama/sdk')
22
const axios = require('axios')
33
const utils = require('../utils')
44

5-
// Avalanche tokens
6-
7-
const avUSD = '0x24dE8771bC5DdB3362Db529Fc3358F2df3A0E346'
8-
const savUSD = '0x06d47F3fb376649c3A9Dafe069B3D6E35572219E' // Staked avUSD (ERC-4626)
9-
10-
const avBTC = '0xfd2c2A98009d0cBed715882036e43d26C4289053'
11-
const savBTC = '0x649342c6bff544d82DF1B2bA3C93e0C22cDeBa84' // Staked avBTC (ERC-4626)
12-
13-
// Ethereum tokens
14-
15-
const avETH = '0x9469470C9878bf3d6d0604831d9A3A366156f7EE'
16-
const savETH = '0xDA06eE2dACF9245Aa80072a4407deBDea0D7e341' // Staked avETH (ERC-4626)
17-
const wETH = '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2'
18-
195
const abi = {
206
convertToAssets: { "inputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"name":"convertToAssets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function" },
217
totalAssets: { "inputs":[],"name":"totalAssets","outputs":[{"internalType":"uint256","name":"" ,"type":"uint256"}],"stateMutability":"view","type":"function" },
@@ -33,7 +19,7 @@ async function getBlockAtTimestamp(chain, ts) {
3319
async function readShareToAssetRatio(chain, blockNumber, vault) {
3420
const { output } = await sdk.api.abi.call({
3521
target: vault,
36-
abi: abi.convertToAssets,
22+
abi: abi.convertToAssets,
3723
params: [SHARES.toString()],
3824
chain,
3925
block: blockNumber,
@@ -61,7 +47,7 @@ async function computeApyBase(chain, vault) {
6147
])
6248

6349
const [rNow, rPast] = await Promise.all([
64-
readShareToAssetRatio(chain, bNow, vault),
50+
readShareToAssetRatio(chain, bNow, vault),
6551
readShareToAssetRatio(chain, bPast, vault)
6652
])
6753
if (rNow === 0n || rPast === 0n || rNow === rPast) return 0
@@ -103,52 +89,6 @@ async function getData(chain, vault, underlying, underlyingSubstitute = undefine
10389
return { tvlUsd, apyBase }
10490
}
10591

106-
async function apy() {
107-
const [savUSDData, savBTCData, savETHData] = await Promise.all([
108-
getData('avax', savUSD, avUSD),
109-
getData('avax', savBTC, avBTC),
110-
getData('ethereum', savETH, avETH, wETH)
111-
])
112-
113-
return [
114-
{
115-
pool: `${savUSD}-avax`,
116-
chain: 'avax',
117-
project: 'avant-avusd',
118-
symbol: 'savUSD',
119-
tvlUsd: savUSDData.tvlUsd,
120-
apyBase: savUSDData.apyBase,
121-
underlyingTokens: [avUSD],
122-
poolMeta: 'ERC-4626: savUSD → avUSD',
123-
url: 'https://www.avantprotocol.com',
124-
},
125-
{
126-
pool: `${savBTC}-avax`,
127-
chain: 'avax',
128-
project: 'avant-avbtc',
129-
symbol: 'savBTC',
130-
tvlUsd: savBTCData.tvlUsd,
131-
apyBase: savBTCData.apyBase,
132-
underlyingTokens: [avBTC],
133-
poolMeta: 'ERC-4626: savBTC → avBTC',
134-
url: 'https://www.avantprotocol.com',
135-
},
136-
{
137-
pool: `${savETH}-ethereum`,
138-
chain: 'ethereum',
139-
project: 'avant-aveth',
140-
symbol: 'savETH',
141-
tvlUsd: savETHData.tvlUsd,
142-
apyBase: savETHData.apyBase,
143-
underlyingTokens: [avETH],
144-
poolMeta: 'ERC-4626: savETH → avETH',
145-
url: 'https://www.avantprotocol.com',
146-
},
147-
]
148-
}
149-
15092
module.exports = {
151-
timetravel: false,
152-
apy,
153-
url: 'https://www.avantprotocol.com',
93+
getData,
15494
}

src/adaptors/avant-avusd/index.js

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
const { getData } = require('../avant-aveth/shared')
2+
3+
// Avalanche tokens
4+
const avUSD = '0x24dE8771bC5DdB3362Db529Fc3358F2df3A0E346'
5+
const savUSD = '0x06d47F3fb376649c3A9Dafe069B3D6E35572219E' // Staked avUSD (ERC-4626)
6+
7+
async function apy() {
8+
const savUSDData = await getData('avax', savUSD, avUSD)
9+
10+
return [
11+
{
12+
pool: `${savUSD}-avax`,
13+
chain: 'avax',
14+
project: 'avant-avusd',
15+
symbol: 'savUSD',
16+
tvlUsd: savUSDData.tvlUsd,
17+
apyBase: savUSDData.apyBase,
18+
underlyingTokens: [avUSD],
19+
poolMeta: 'ERC-4626: savUSD → avUSD',
20+
url: 'https://www.avantprotocol.com',
21+
},
22+
]
23+
}
24+
25+
module.exports = {
26+
timetravel: false,
27+
apy,
28+
url: 'https://www.avantprotocol.com',
29+
}

0 commit comments

Comments
 (0)