Skip to content

Commit 7ae44ed

Browse files
authored
Add base to elfi (DefiLlama#14151)
1 parent 118aac0 commit 7ae44ed

File tree

1 file changed

+38
-22
lines changed

1 file changed

+38
-22
lines changed

projects/elfi/index.js

Lines changed: 38 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,46 @@
1-
21
const ADDRESSES = require('../helper/coreAssets.json')
32
const { getLogs2 } = require('../helper/cache/getLogs')
4-
5-
const tradeVault = '0x8772bB60EA1BBA8a7729a90ff1907855FD55ba83'
6-
const lpVault = '0xbC268D619b406bdfCA1B4AC30d50Ba30AB38E96f'
7-
const portfolioVault = '0x9099824Be9aB2b691ce0E478853Cb15Fb81FF677'
8-
9-
const elfUSD = '0x70B8117b3177a7CE42BEe021E89625f27E45b98C'
10-
11-
module.exports = {
12-
arbitrum: {
13-
tvl,
14-
},
15-
};
16-
17-
async function tvl(api) {
3+
const vaults = {
4+
'arbitrum': ['0x8772bB60EA1BBA8a7729a90ff1907855FD55ba83', '0xbC268D619b406bdfCA1B4AC30d50Ba30AB38E96f', '0x9099824Be9aB2b691ce0E478853Cb15Fb81FF677'],
5+
'base': ['0x9099824Be9aB2b691ce0E478853Cb15Fb81FF677', '0x8772bB60EA1BBA8a7729a90ff1907855FD55ba83', '0xb059B996C2Ebf23E77dD3110AE1f334caBF2DeA2'],
6+
}
7+
const elfUSD = {
8+
'arbitrum': '0x70B8117b3177a7CE42BEe021E89625f27E45b98C',
9+
'base': '0xc367281626dDbf7fE93229A396AE8E29dE25D5E2'
10+
}
11+
async function arbitrum_tvl(api) {
1812
const logs = await getLogs2({
1913
api,
2014
factory: '0x153c613D572c050104086c7113d00B76Fbaa5d55',
2115
eventAbi: 'event MarketCreated (bytes32 code, string stakeTokenName, address indexToken, address baseToken, address stakeToken)',
2216
fromBlock: 233088372,
2317
})
24-
25-
const ownerTokens = logs.map(log => [[log.baseToken, log.indexToken], log.stakeToken])
26-
ownerTokens.push([[ADDRESSES.arbitrum.USDC_CIRCLE], elfUSD])
27-
const tokens = ownerTokens.map(([tokens]) => tokens).flat()
28-
await api.sumTokens({ tokens, owners: [lpVault, portfolioVault, tradeVault] })
29-
return api.sumTokens({ ownerTokens})
30-
}
18+
const assetTokens = [ADDRESSES.arbitrum.USDC_CIRCLE, ADDRESSES.arbitrum.DAI, ADDRESSES.arbitrum.USDT, ADDRESSES.arbitrum.LINK, ADDRESSES.arbitrum.ARB]
19+
const tokens = logs.reduce((acc, log) =>
20+
[...acc, log.baseToken, log.indexToken], assetTokens)
21+
const owners = logs.reduce((acc, log) =>
22+
[...acc, log.stakeToken], [...vaults.arbitrum, elfUSD.arbitrum])
23+
return api.sumTokens({ tokens, owners })
24+
}
25+
async function base_tvl(api) {
26+
const logs = await getLogs2({
27+
api,
28+
factory: '0x957e0C2Ea128b0307B5730ff83e0bA508b729d50',
29+
eventAbi: 'event MarketCreated (bytes32 code, string stakeTokenName, address indexToken, address baseToken, address stakeToken)',
30+
fromBlock: 26932589,
31+
})
32+
const assetTokens = [ADDRESSES.base.USDC, ADDRESSES.base.USDT, ADDRESSES.base.DAI]
33+
const tokens = logs.reduce((acc, log) =>
34+
[...acc, log.baseToken, log.indexToken], assetTokens)
35+
const owners = logs.reduce((acc, log) =>
36+
[...acc, log.stakeToken], [...vaults.base, elfUSD.base])
37+
return api.sumTokens({ tokens, owners })
38+
}
39+
module.exports = {
40+
arbitrum: {
41+
tvl: arbitrum_tvl,
42+
},
43+
base: {
44+
tvl: base_tvl,
45+
},
46+
};

0 commit comments

Comments
 (0)