Skip to content

Commit 62740df

Browse files
authored
Merge branch 'DefiLlama:main' into main
2 parents dd731cd + 660a52d commit 62740df

File tree

132 files changed

+2660
-7614
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

132 files changed

+2660
-7614
lines changed

pnpm-lock.yaml

Lines changed: 121 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

projects/HyperBloom/index.js

Lines changed: 46 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,63 @@
11
const { getConfig } = require('../helper/cache')
2+
const { getLogs } = require('../helper/cache/getLogs')
23
const { yieldHelperPair } = require('../helper/unknownTokens')
34

45
const chain = "hyperliquid";
56

7+
// ICHI-powered vaults built for HyperBloom
8+
const config = {
9+
hyperliquid: {
10+
vaultConfigs: [
11+
{ factory: '0xCd952718e6Ef25ac7DBDDd55E501AAA0177dbfA0', fromBlock: 6088464, isAlgebra: false, },
12+
],
13+
},
14+
}
15+
16+
const defaultEvent = 'event ICHIVaultCreated (address indexed sender, address ichiVault, address tokenA, bool allowTokenA, address tokenB, bool allowTokenB, uint24 fee, uint256 count)'
17+
const defaultTopic = '0xde147f43b6837f282eee187234c866cf001806167325f3ea883e36bed0c16a20'
18+
19+
const abi = {
20+
getTotalAmounts: "function getTotalAmounts() view returns (uint256 total0, uint256 total1)"
21+
}
22+
623
module.exports = {
724
misrepresentedTokens: true,
825
};
926

1027
module.exports[chain] = {
11-
tvl: async () => {
28+
tvl: async (api) => {
29+
// Beefy
1230
const pools = await getConfig('hyperbloom', 'https://raw.githubusercontent.com/hyperbloomxyz/vaults.config/refs/heads/master/hyperliquid.json');
1331

1432
const beefyPools = pools.filter(p => p.platformId === 'beefy');
33+
const beefyVaults = beefyPools.map(p => p.earnedTokenAddress).filter(Boolean);
34+
35+
// ICHI
36+
const { vaultConfigs = []} = config[chain]
37+
const blacklistedTokens = []
38+
39+
for (const { factory, fromBlock } of vaultConfigs) {
40+
const logs = await getLogs({ api, target: factory, topics: [defaultTopic], eventAbi: defaultEvent, onlyArgs: true, fromBlock })
41+
42+
let vaultBalances = []
43+
const calls = logs.map(l => l.ichiVault)
44+
45+
vaultBalances = await api.multiCall({ abi: abi.getTotalAmounts, calls, permitFailure: true })
46+
47+
vaultBalances.forEach((b, i) => {
48+
if (!b) return
49+
const { tokenA, tokenB } = logs[i]
50+
if (!blacklistedTokens.includes(tokenA.toLowerCase())) api.add(tokenA, b.total0)
51+
if (!blacklistedTokens.includes(tokenB.toLowerCase())) api.add(tokenB, b.total1)
52+
})
53+
}
1554

16-
const vaults = beefyPools.map(p => p.earnedTokenAddress).filter(Boolean);
55+
const beefyBalances = await yieldHelperPair({ vaults: beefyVaults, chain, useDefaultCoreAssets: true });
56+
57+
Object.entries(beefyBalances).forEach(([token, balance]) => {
58+
api.add(token, balance, { skipChain: true });
59+
});
1760

18-
return yieldHelperPair({ vaults, chain, useDefaultCoreAssets: true });
61+
return api.getBalances();
1962
}
2063
}

projects/LairFinance/index.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,9 @@ const contracts = {
1717
infraredIBGTVault: '0x75F3Be06b02E235f6d0E7EF2D462b29739168301',
1818
infraredWBERALAIRVault: '0x6583e71778A3d275B8A27f1252A125f7a6F875D1',
1919
kodiakBERALAIRLp: '0x9f6cf7aCb2F16f7d906EeeCB0a6020a5Cf91A41d'
20+
},
21+
SOMNIA: {
22+
nodeController: '0x0FdCe181fde9582E6CA9Acf95577E04DAC573a43'
2023
}
2124
}
2225

@@ -105,7 +108,14 @@ async function bera_staking(api) {
105108
}
106109
}
107110

111+
async function somnia_tvl(api) {
112+
const toalStakingAmount = await api.call({ target: contracts.SOMNIA.nodeController, abi: "uint256:totalStakingAmount" })
113+
const totalUnstakingAmount = await api.call({ target: contracts.SOMNIA.nodeController, abi: "uint256:totalUnStakingAmount" })
114+
api.addGasToken(toalStakingAmount - totalUnstakingAmount)
115+
}
116+
108117
module.exports = {
109118
klaytn: { tvl: kaia_tvl, staking: kaia_staking },
110119
berachain:{ tvl: bera_tvl, staking: bera_staking },
120+
somnia:{ tvl: somnia_tvl },
111121
}

projects/MultiSwap/index.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,3 @@ Object.keys(config).forEach(chain => {
3838
}
3939
}
4040
})
41-

0 commit comments

Comments
 (0)