fix: fall back to known token list for symbol/name/decimals #54

Merged
sneak merged 2 commits from fix/51-usdc-symbol-fallback into main 2026-02-28 18:04:04 +01:00
2 changed files with 38 additions and 8 deletions
Showing only changes of commit 996003fd79 - Show all commits

View File

@@ -96,7 +96,14 @@ function show() {
const tb = (addr.tokenBalances || []).find( const tb = (addr.tokenBalances || []).find(
(t) => t.address.toLowerCase() === tokenId.toLowerCase(), (t) => t.address.toLowerCase() === tokenId.toLowerCase(),
); );
symbol = (tb && tb.symbol) || (knownToken && knownToken.symbol) || "?"; const tracked = (state.trackedTokens || []).find(
(t) => t.address.toLowerCase() === tokenId.toLowerCase(),
);
symbol =
(tb && tb.symbol) ||
(tracked && tracked.symbol) ||
(knownToken && knownToken.symbol) ||
"?";
amount = tb ? parseFloat(tb.balance || "0") : 0; amount = tb ? parseFloat(tb.balance || "0") : 0;
price = getPrice(symbol); price = getPrice(symbol);
} }
@@ -139,15 +146,26 @@ function show() {
const tb = (addr.tokenBalances || []).find( const tb = (addr.tokenBalances || []).find(
(t) => t.address.toLowerCase() === tokenId.toLowerCase(), (t) => t.address.toLowerCase() === tokenId.toLowerCase(),
); );
const tracked = (state.trackedTokens || []).find(
(t) => t.address.toLowerCase() === tokenId.toLowerCase(),
);
const rawName = const rawName =
(tb && tb.name) || (knownToken && knownToken.name) || null; (tb && tb.name) ||
(tracked && tracked.name) ||
(knownToken && knownToken.name) ||
null;
const rawSymbol = const rawSymbol =
(tb && tb.symbol) || (knownToken && knownToken.symbol) || null; (tb && tb.symbol) ||
(tracked && tracked.symbol) ||
(knownToken && knownToken.symbol) ||
null;
const tokenName = rawName ? escapeHtml(rawName) : null; const tokenName = rawName ? escapeHtml(rawName) : null;
const tokenSymbol = rawSymbol ? escapeHtml(rawSymbol) : null; const tokenSymbol = rawSymbol ? escapeHtml(rawSymbol) : null;
const tokenDecimals = const tokenDecimals =
tb && tb.decimals != null tb && tb.decimals != null
? tb.decimals ? tb.decimals
: tracked && tracked.decimals != null
? tracked.decimals
: knownToken && knownToken.decimals != null : knownToken && knownToken.decimals != null
? knownToken.decimals ? knownToken.decimals
: null; : null;

View File

@@ -74,8 +74,14 @@ function updateSendBalance() {
(t) => t.address.toLowerCase() === token.toLowerCase(), (t) => t.address.toLowerCase() === token.toLowerCase(),
); );
const knownToken = TOKEN_BY_ADDRESS.get(token.toLowerCase()); const knownToken = TOKEN_BY_ADDRESS.get(token.toLowerCase());
const tracked = (state.trackedTokens || []).find(
(t) => t.address.toLowerCase() === token.toLowerCase(),
);
const symbol = const symbol =
(tb && tb.symbol) || (knownToken && knownToken.symbol) || "?"; (tb && tb.symbol) ||
(tracked && tracked.symbol) ||
(knownToken && knownToken.symbol) ||
"?";
const bal = tb ? tb.balance || "0" : "0"; const bal = tb ? tb.balance || "0" : "0";
$("send-balance").textContent = $("send-balance").textContent =
"Current balance: " + bal + " " + symbol; "Current balance: " + bal + " " + symbol;
@@ -127,8 +133,14 @@ function init(_ctx) {
(t) => t.address.toLowerCase() === token.toLowerCase(), (t) => t.address.toLowerCase() === token.toLowerCase(),
); );
const knownTk = TOKEN_BY_ADDRESS.get(token.toLowerCase()); const knownTk = TOKEN_BY_ADDRESS.get(token.toLowerCase());
const trackedTk = (state.trackedTokens || []).find(
(t) => t.address.toLowerCase() === token.toLowerCase(),
);
tokenSymbol = tokenSymbol =
(tb && tb.symbol) || (knownTk && knownTk.symbol) || "?"; (tb && tb.symbol) ||
(trackedTk && trackedTk.symbol) ||
(knownTk && knownTk.symbol) ||
"?";
tokenBalance = tb ? tb.balance || "0" : "0"; tokenBalance = tb ? tb.balance || "0" : "0";
} }