Skip to content

Commit 37b22cd

Browse files
committed
code refactor
1 parent d9ed73e commit 37b22cd

File tree

15 files changed

+130
-659
lines changed

15 files changed

+130
-659
lines changed

projects/photon-protocol/index.js

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,15 @@
11
const ADDRESSES = require('../helper/coreAssets.json')
22
const { stakingUnknownPricedLP } = require("../helper/staking");
3-
const { sumTokensAndLPsSharedOwners } = require("../helper/unwrapLPs");
3+
const { sumTokensExport } = require("../helper/unwrapLPs");
44

55
const photon = "0x2F1305F0619ADa14688A4291953bd7d284f9C2a5";
66
const stakingContract = "0x81177472Ce36A9b1AB573804CD215C72cEb76F36";
77
const photonbusd = "0xEBAa17dA7D5C616441290669E9D2c982c8B1Da25"; //PHOTON-BUSD
88
const treasury = "0x0f90591b01DE6F832e8B8E4ec3525efD423BCaD1";
9-
const treasuryTokens = [
10-
[ADDRESSES.bsc.BUSD, false], // BUSD
11-
];
12-
13-
async function tvl (timestamp, block, chainBlocks) {
14-
let balances = {};
15-
await sumTokensAndLPsSharedOwners(balances, treasuryTokens, [treasury], chainBlocks.bsc, "bsc", addr=>`bsc:${addr}`);
16-
return balances;
17-
}
189

1910
module.exports = {
20-
bsc: {
21-
tvl,
22-
staking: stakingUnknownPricedLP(stakingContract, photon, "bsc", photonbusd, addr=>`bsc:${addr}`)
23-
}
11+
bsc: {
12+
tvl: sumTokensExport({ tokens: [ADDRESSES.bsc.BUSD], owner: treasury }),
13+
staking: stakingUnknownPricedLP(stakingContract, photon, "bsc", photonbusd, addr => `bsc:${addr}`)
14+
}
2415
}

projects/piggybankdao/index.js

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,17 @@
1-
const ADDRESSES = require('../helper/coreAssets.json')
2-
const {sumTokensAndLPsSharedOwners, sumLPWithOnlyOneToken} = require('../helper/unwrapLPs')
31
const { stakingPricedLP } = require('../helper/staking')
42

53

6-
const treasury = "0x6687379035822ee15e2164f9C1280fBEAd0D7627";
74
const PB_TOKEN = "0x0E75CDb914DdCcA683357dD94d26Caa39BC14B16"
85
const LP_TOKEN = "0xd3a6eebbe6f6d9197a7fc2aaaf94d8b0ec51f8a8";
96
const STAKING_ADDRESS = "0xE4738791690AF507C8C7Bf5981ef541568C7C312"
107
const COREASSETNAME = "magic-internet-money";
118
const CHAIN = "avax";
12-
const MIM = "0x130966628846bfd36ff31a822705796e8cb8c18d"
13-
14-
15-
async function avaxTvl(time, ethBlock, chainBlocks){
16-
const balances = {}
17-
const transform = addr => 'avax:'+addr
18-
await sumLPWithOnlyOneToken(balances, "0xd3a6eebbe6f6d9197a7fc2aaaf94d8b0ec51f8a8", treasury, MIM, chainBlocks.avax, "avax", transform)
19-
await sumTokensAndLPsSharedOwners(balances, [
20-
[MIM, false],
21-
[ADDRESSES.avax.WBTC_e, false]
22-
], [treasury], chainBlocks.avax, "avax", transform)
23-
return balances
24-
}
259

2610
module.exports={
2711
deadFrom: 1648765747,
2812
misrepresentedTokens: true,
2913
avax:{
30-
tvl: avaxTvl,
14+
tvl: () => ({}),
3115
staking: stakingPricedLP(STAKING_ADDRESS, PB_TOKEN, CHAIN, LP_TOKEN, COREASSETNAME, true),
3216
}
3317
}

projects/purefi/index.js

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
const { staking, stakings } = require("../helper/staking");
2-
const { sumTokensAndLPsSharedOwners } = require("../helper/unwrapLPs");
32

43
/*** Ethereum Addresses ***/
54
const UFI = "0xcDa4e840411C00a614aD9205CAEC807c7458a0E3";
@@ -51,23 +50,8 @@ const farmingStakingContracts_polygon = [
5150
"0xF1a44C75E4D92f4DA737485f96b0c2a1327d91b2",
5251
];
5352

54-
const polygonTvl = async (chainBlocks) => {
55-
const balances = {};
56-
57-
let transformAddress = i => `polygon:${i}`;
58-
await sumTokensAndLPsSharedOwners(
59-
balances,
60-
[
61-
[SAFLE_polygon, false],
62-
[SCA_polygon, false],
63-
],
64-
farmingStakingContracts_polygon,
65-
chainBlocks["polygon"],
66-
"polygon",
67-
transformAddress
68-
);
69-
70-
return balances;
53+
const polygonTvl = async (api) => {
54+
return api.sumTokens({ owners: farmingStakingContracts_polygon, tokens: [SAFLE_polygon, SCA_polygon,] });
7155
};
7256

7357
module.exports = {
@@ -82,6 +66,5 @@ module.exports = {
8266
staking: stakings(farmingStakingContracts_polygon, UFI_polygon),
8367
tvl: polygonTvl,
8468
},
85-
//tvl: (tvl) => ({}),
8669
methodology: "Counts tvl of the assets staked on the Farming seccion thgough Farming Contracts",
8770
};

projects/redacted/index.js

Lines changed: 58 additions & 97 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
const ADDRESSES = require('../helper/coreAssets.json')
2-
const { sumTokensAndLPsSharedOwners, sumTokens2, genericUnwrapCvx } = require('../helper/unwrapLPs')
3-
const sdk = require('@defillama/sdk')
2+
const { sumTokens2, genericUnwrapCvx } = require('../helper/unwrapLPs')
43

54
const treasuries = ["0xa52fd396891e7a74b641a2cb1a6999fcf56b077e", "0x086c98855df3c78c6b481b6e1d47bef42e9ac36b"]
65

@@ -20,110 +19,72 @@ const BTRFLYV2 = '0xc55126051B22eBb829D00368f4B12Bde432de5Da'
2019
const cvxCRVPool = '0x0392321e86F42C2F94FBb0c6853052487db521F0'
2120

2221
const rlBTRFLYAbi = {
23-
lockedSupply: "uint256:lockedSupply",
24-
}
25-
26-
async function tvl(timestamp, block, chainBlocks){
27-
const balances = {}
28-
29-
//Add tokens/curve LPs in wallet
30-
await sumTokensAndLPsSharedOwners(balances, [
31-
[CVX, false],
32-
[cvxCRV, false],
33-
[FXS, false],
34-
[CRV, false],
35-
[AURA, false],
36-
// BTRFLY/ETH Curve LP
37-
['0x7483Dd57f6488b0e194A151C57Df6Ec85C00aCE9', false],
38-
[ADDRESSES.ethereum.USDC, false],
39-
[ADDRESSES.ethereum.FRAX, false],
40-
], treasuries, block)
41-
42-
//Add UniswapV3 LPs
43-
await sumTokens2({ balances, owners: treasuries, block, resolveUniV3: true, })
44-
45-
//Add convex deposited curve LPs
46-
await genericUnwrapCvx(balances, treasuries[0], cvxCRVPool, block, 'ethereum')
47-
48-
//This causes an error and not sure why
49-
//await genericUnwrapCvx(balances, treasuries[0], cvxFXSPool, block, 'ethereum')
50-
51-
//Add vlCVX as CVX
52-
const vlCVXBalance = await sdk.api.erc20.balanceOf({
53-
target: ADDRESSES.ethereum.vlCVX,
54-
owner: treasuries[0],
55-
chain: 'ethereum',
56-
block: chainBlocks['ethereum']
57-
}).then(result => result.output)
58-
sdk.util.sumSingleBalance(balances, CVX, vlCVXBalance)
22+
lockedSupply: "uint256:lockedSupply",
23+
}
5924

60-
//Add vlAURA as AURA
61-
const vlAURABalance = await sdk.api.erc20.balanceOf({
62-
target: AURALocker,
63-
owner: treasuries[0],
64-
chain: 'ethereum',
65-
block: chainBlocks['ethereum']
66-
}).then(result => result.output)
67-
sdk.util.sumSingleBalance(balances, AURA, vlAURABalance)
25+
async function tvl(api) {
26+
const block = api.block
27+
const balances = api.getBalances()
28+
const tokens = [
29+
CVX,
30+
cvxCRV,
31+
FXS,
32+
CRV,
33+
AURA,
34+
// BTRFLY/ETH Curve LP
35+
'0x7483Dd57f6488b0e194A151C57Df6Ec85C00aCE9',
36+
ADDRESSES.ethereum.USDC,
37+
ADDRESSES.ethereum.FRAX,
38+
]
6839

69-
//Add staked cvxCRV as cvxCRV
70-
const cvxCRVStakedBalance = await sdk.api.erc20.balanceOf({
71-
target: cvxCRVStaking,
72-
owner: treasuries[0],
73-
chain: 'ethereum',
74-
block: chainBlocks['ethereum']
75-
}).then(result => result.output)
76-
sdk.util.sumSingleBalance(balances, cvxCRV, cvxCRVStakedBalance)
40+
//Add tokens/curve LPs in wallet
41+
await api.sumTokens({ owners: treasuries, tokens })
7742

78-
//Add veFXS as 1/4 FXS since locked for 4 years
79-
const veFXSBalance = await sdk.api.erc20.balanceOf({
80-
target: veFXS,
81-
owner: treasuries[0],
82-
chain: 'ethereum',
83-
block: chainBlocks['ethereum']
84-
}).then(result => result.output)
85-
sdk.util.sumSingleBalance(balances, FXS, veFXSBalance/4)
43+
//Add UniswapV3 LPs
44+
await sumTokens2({ api, owners: treasuries, resolveUniV3: true, })
8645

87-
//Add veCRV as 1 CRV since locked for 4 years
88-
const veCRVBalance = await sdk.api.erc20.balanceOf({
89-
target: veCRV,
90-
owner: treasuries[0],
91-
chain: 'ethereum',
92-
block: chainBlocks['ethereum']
93-
}).then(result => result.output)
94-
sdk.util.sumSingleBalance(balances, CRV, veCRVBalance)
46+
//Add convex deposited curve LPs
47+
await genericUnwrapCvx(balances, treasuries[0], cvxCRVPool, block)
9548

96-
//Add sOHM as OHM since 1:1
97-
const sOHMBalance = await sdk.api.erc20.balanceOf({
98-
target: sOHM,
99-
owner: treasuries[1],
100-
chain: 'ethereum',
101-
block: chainBlocks['ethereum']
102-
}).then(result => result.output)
103-
sdk.util.sumSingleBalance(balances, OHM, sOHMBalance)
49+
//This causes an error and not sure why
50+
//await genericUnwrapCvx(balances, treasuries[0], cvxFXSPool, block, 'ethereum')
10451

105-
return balances
52+
//Add vlCVX as CVX
53+
const [vlCVXBalance, vlAURABalance, cvxCRVStakedBalance, veFXSBalance, veCRVBalance, sOHMBalance] = await api.multiCall({
54+
abi: 'erc20:balanceOf',
55+
calls: [
56+
{ target: ADDRESSES.ethereum.vlCVX, params: treasuries[0] },
57+
{ target: AURALocker, params: treasuries[0] },
58+
{ target: cvxCRVStaking, params: treasuries[0] },
59+
{ target: veFXS, params: treasuries[0] },
60+
{ target: veCRV, params: treasuries[0] },
61+
{ target: sOHM, params: treasuries[1] },
62+
]
63+
})
64+
api.add(CVX, vlCVXBalance)
65+
api.add(AURA, vlAURABalance)
66+
api.add(cvxCRV, cvxCRVStakedBalance)
67+
api.add(CRV, veCRVBalance)
68+
api.add(OHM, sOHMBalance)
69+
api.add(FXS, veFXSBalance / 4)
70+
//Add vlAURA as AURA
71+
//Add staked cvxCRV as cvxCRV
72+
//Add veFXS as 1/4 FXS since locked for 4 years
73+
//Add veCRV as 1 CRV since locked for 4 years
74+
//Add sOHM as OHM since 1:1
10675
}
10776

108-
async function staking(timestamp, block, chainBlocks) {
109-
const balances = {}
110-
111-
//Adding locked BTRFLY
112-
const lockedBTRFLY = await sdk.api.abi.call({
113-
abi: rlBTRFLYAbi.lockedSupply,
114-
target: rlBTRFLY,
115-
chain: 'ethereum',
116-
block: chainBlocks['ethereum'],
117-
}).then(result => result.output)
118-
sdk.util.sumSingleBalance(balances, BTRFLYV2, lockedBTRFLY)
119-
120-
return balances
77+
async function staking(api) {
78+
79+
//Adding locked BTRFLY
80+
const lockedBTRFLY = await api.call({ abi: rlBTRFLYAbi.lockedSupply, target: rlBTRFLY, })
81+
api.add(BTRFLYV2, lockedBTRFLY)
12182
}
12283

12384
module.exports = {
124-
methodology: "tvl = Treasury assets (bonding). staking = rlBTRFLY (locked tokens)",
125-
ethereum:{
126-
tvl,
127-
staking
128-
},
85+
methodology: "tvl = Treasury assets (bonding). staking = rlBTRFLY (locked tokens)",
86+
ethereum: {
87+
tvl,
88+
staking
89+
},
12990
}

0 commit comments

Comments
 (0)