update brahma adapter

This commit is contained in:
g1nt0ki
2022-05-18 19:25:32 +05:30
parent a3707c32f3
commit d91ded8074
2 changed files with 48 additions and 8 deletions

View File

@@ -0,0 +1,28 @@
{
"wantToken": {
"inputs": [],
"name": "wantToken",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
"totalVaultFunds": {
"inputs": [],
"name": "totalVaultFunds",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
}

View File

@@ -1,16 +1,28 @@
const axios = require("axios");
const sdk = require('@defillama/sdk')
const abi = require('./abi.json')
const BASE_API = "https://vault-api.brahma.fi";
const ENDPOINTS = {
tvl: "/tvl",
};
const vaults = [
'0xAa0508FcD0352B206F558b2B817dcC1F0cc3F401', // ETH Maxi
'0x1c4ceb52ab54a35f9d03fcc156a7c57f965e081e', // PM USDC
]
const tvl = async (timestamp, block) => {
const result = await axios.default.get(`${BASE_API}${ENDPOINTS.tvl}`);
const calls = vaults.map(v => ({ target: v }))
const balances = {}
if (result.status !== 200) return {};
const [
tokens, balance
] = await Promise.all([
sdk.api.abi.multiCall({ block, calls, abi: abi.wantToken }),
// sdk.api.abi.multiCall({ block, calls, abi: abi.totalVaultFunds }),
sdk.api.abi.multiCall({ block, calls, abi: 'erc20:totalSupply' }),
]).then(o => o.map(i => i.output))
return result.data?.data || {};
tokens.forEach((i, j) => {
balances[i.output] = balance[j].output
});
return balances
};
module.exports = {