ABI's from contract/out files
This commit is contained in:
10
token.js
10
token.js
@@ -3,8 +3,8 @@
|
||||
// todo load standard known tokens
|
||||
|
||||
import {ethers} from "ethers";
|
||||
import {erc20Abi} from "./abi.js";
|
||||
import {getProvider} from "./blockchain.js";
|
||||
import {newContract} from "../web/src/blockchain/contract.js";
|
||||
|
||||
const std_arbitrum_tokens = {}
|
||||
const tokens = {
|
||||
@@ -13,8 +13,8 @@ const tokens = {
|
||||
1337: {},
|
||||
}
|
||||
|
||||
export function erc20(chainId, addr, provider=null) {
|
||||
return new ethers.Contract(addr, erc20Abi, provider?provider:getProvider(chainId));
|
||||
export async function erc20(chainId, addr, provider=null) {
|
||||
return await newContract(addr, 'IERC20Metadata', provider?provider:getProvider(chainId));
|
||||
}
|
||||
|
||||
let _loggedNoTokensForChain = false
|
||||
@@ -32,9 +32,9 @@ export async function lookupToken(chainId, address) {
|
||||
let result = chainTokens[address]
|
||||
// console.log('found', result)
|
||||
if (result === undefined) {
|
||||
// todo look in tokens project
|
||||
// todo look in tokens project?
|
||||
const addr = ethers.getAddress(address)
|
||||
const token = erc20(chainId, addr)
|
||||
const token = await erc20(chainId, addr)
|
||||
let [name, symbol, decimals] = await Promise.all([token.name(), token.symbol(), token.decimals()])
|
||||
name = Number(name)
|
||||
decimals = Number(decimals)
|
||||
|
||||
Reference in New Issue
Block a user