From cac6b865c123afc822bd98503b6f03af1d292bbc Mon Sep 17 00:00:00 2001 From: g1nt0ki <99907941+g1nt0ki@users.noreply.github.com> Date: Tue, 29 Nov 2022 14:17:17 +0100 Subject: [PATCH] Add gmd --- .github/workflows/test.yml | 2 +- projects/gmd/index.js | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 projects/gmd/index.js diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index c16e4da37e..f3a9ccf845 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -27,7 +27,7 @@ jobs: npm remove typescript @types/async-retry @types/bn.js ts-node @solendprotocol/solend-sdk npm ci --omit=dev - npm update @defillama/sdk + # npm update @defillama/sdk for i in $(echo $RUN_FILES | tr -d '"[]' | tr "," "\n") do diff --git a/projects/gmd/index.js b/projects/gmd/index.js new file mode 100644 index 0000000000..cbc6638257 --- /dev/null +++ b/projects/gmd/index.js @@ -0,0 +1,32 @@ +const sdk = require("@defillama/sdk"); +const { staking } = require("../helper/staking"); +const chain = 'arbitrum'; +const abi = {"inputs":[],"name":"GLPinVault","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"} +const vault = "0xA7Ce4434A29549864a46fcE8662fD671c06BA49a"; +const stakingAdd = "0x8A19F6BC381caf24C7122296AA51047105924074"; +const GMDaddress = "0x4945970EfeEc98D393b4b979b9bE265A3aE28A8B"; +const stakedGLPaddress = "0x1aDDD80E6039594eE970E5872D247bf0414C8903"; +const GLP_ADDRESS = "0x4277f8F2c384827B5273592FF7CeBd9f2C1ac258"; + +const Tvl = async (timestamp, ethBlock, { arbitrum: block }) => { + const balances = {}; + const { output: vaultBalance } = await sdk.api.abi.call({ + target: vault, + abi, + chain, block, + }) + + sdk.util.sumSingleBalance(balances, GLP_ADDRESS, vaultBalance, chain); + return balances +} + +module.exports = { + methodology: "staked gmd + vault balance", + arbitrum: { + staking: staking(stakingAdd, GMDaddress, "arbitrum"), + tvl: Tvl, + }, + }; + + +