feat: show estimated USD value for ETH in approve-tx view
All checks were successful
check / check (push) Successful in 13s

Use getPrice/formatUsd from shared/prices to display the USD estimate
next to the ETH amount in the dapp transaction approval view, matching
the behavior already present in the manual send confirmation view.

closes #138
This commit is contained in:
2026-03-01 11:10:02 -08:00
parent d35bfb7d23
commit 71c79e72a8

View File

@@ -9,6 +9,7 @@ const {
} = require("./helpers");
const { state, saveState } = require("../../shared/state");
const { formatEther, formatUnits, Interface, toUtf8String } = require("ethers");
const { getPrice, formatUsd } = require("../../shared/prices");
const { ERC20_ABI } = require("../../shared/constants");
const { TOKEN_BY_ADDRESS } = require("../../shared/tokenList");
const txStatus = require("./txStatus");
@@ -243,8 +244,14 @@ function showTxApproval(details) {
$("approve-tx-to").innerHTML = escapeHtml("(contract creation)");
}
const ethValueFormatted = formatTxValue(
formatEther(details.txParams.value || "0"),
);
const ethPrice = getPrice("ETH");
const ethUsd = ethPrice ? parseFloat(ethValueFormatted) * ethPrice : null;
const usdStr = formatUsd(ethUsd);
$("approve-tx-value").textContent =
formatTxValue(formatEther(details.txParams.value || "0")) + " ETH";
ethValueFormatted + " ETH" + (usdStr ? " (" + usdStr + ")" : "");
// Decode calldata (reuse decoded from above)
const decodedEl = $("approve-tx-decoded");