UNPKG

@dydxfoundation/governance

Version:
30 lines (29 loc) 1.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getGovernanceTokens = exports.filterZeroTokenBalances = void 0; const config_1 = require("../config"); const types_1 = require("../types"); const parsings_1 = require("./parsings"); async function filterZeroTokenBalances(user, erc20Service, tokens) { const balances = await Promise.all(tokens.map(async (token) => { const tokenBalance = (0, parsings_1.parseNumberToEthersBigNumber)(await erc20Service.balanceOf(token, user), config_1.DYDX_TOKEN_DECIMALS); return { tokenBalance, token }; })); return balances .filter((balance) => !balance.tokenBalance.isZero()) .map((balance) => balance.token); } exports.filterZeroTokenBalances = filterZeroTokenBalances; function getGovernanceTokens(network, hardhatTokenAddresses, hardhatSafetyModuleAddresses) { if (network === types_1.Network.hardhat) { return { TOKEN: hardhatTokenAddresses.TOKEN_ADDRESS, STAKED_TOKEN: hardhatSafetyModuleAddresses.SAFETY_MODULE_ADDRESS, }; } return { TOKEN: config_1.dydxTokenAddresses[network].TOKEN_ADDRESS, STAKED_TOKEN: config_1.stakingAddresses[network].SAFETY_MODULE_ADDRESS, }; } exports.getGovernanceTokens = getGovernanceTokens;