emmet.sdk
Version:
Emmet.Bridge SDK library
31 lines • 1.47 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getEvmTokenAllowances = void 0;
const chains_1 = require("../../chains");
const tokens_1 = require("../../tokens");
const types_1 = require("../../types");
const format_1 = require("../format");
const verifiers_1 = require("../verifiers");
const getContract_1 = require("./getContract");
const getPublicClient_1 = require("./getPublicClient");
async function getEvmTokenAllowances(account, chainName, provider) {
let allowances = {};
if ((0, verifiers_1.isEvmAddress)(account) && chainName) {
const publicClient = (0, getPublicClient_1.getPublicClient)(account, chainName, types_1.testnets, provider, true);
for await (const tokenName of types_1.TestnetTokenNames) {
const token = tokens_1.testnetTokens[tokenName];
const address = token.address[chainName.toLowerCase()];
if (address) {
const contract = (0, getContract_1.getContract)(address, token.abi, publicClient);
const chain = chains_1.ALL_CHAINS[(0, format_1.formatChainName)(chainName)];
allowances[tokenName] = (await contract.read.allowance([
account,
chain.bridge.toString()
])).toString();
}
}
}
return allowances || undefined;
}
exports.getEvmTokenAllowances = getEvmTokenAllowances;
//# sourceMappingURL=getEvmTokenAllowances.js.map