Skip to content

Commit 8d61b5e

Browse files
fuxinglohg1nt0ki
andauthored
Add SatLayer Adapter (DefiLlama#12962)
Co-authored-by: g1nt0ki <[email protected]>
1 parent 5984321 commit 8d61b5e

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

projects/satlayer/index.js

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
2+
3+
const { getLogs2 } = require('../helper/cache/getLogs')
4+
const { getUniqueAddresses } = require('../helper/tokenMapping')
5+
const factory = '0x42a856dbEBB97AbC1269EAB32f3bb40C15102819'
6+
7+
module.exports = {
8+
methodology: 'Total amount of BTC staked and restaked on SatLayer.'
9+
}
10+
11+
const config = {
12+
ethereum: { factory, fromBlock: 20564864 },
13+
bsc: { factory, fromBlock: 42094094 },
14+
btr: { factory: "0x2E3c78576735802eD94e52B7e71830e9E44a9a1C", fromBlock: 4532898 },
15+
}
16+
17+
Object.keys(config).forEach(chain => {
18+
const { factory, fromBlock } = config[chain]
19+
module.exports[chain] = {
20+
tvl: async (api) => {
21+
const logs = await getLogs2({ api, factory, eventAbi: "event CapChanged(address token, uint256 cap)", fromBlock, })
22+
const tokens = getUniqueAddresses(logs.map(log => log.token))
23+
return api.sumTokens({ owner: factory, tokens })
24+
}
25+
}
26+
})

0 commit comments

Comments
 (0)