Show exact amounts and address titles in transaction detail
All checks were successful
check / check (push) Successful in 5s
All checks were successful
check / check (push) Successful in 5s
- Display full-precision amount (no 4-decimal truncation) in the transaction detail view, with native quantity (wei/base units) below - Both amount and native quantity are click-copyable - Show wallet/address title above from/to when the address is ours - Update README Display Consistency to document the exception
This commit is contained in:
@@ -27,6 +27,9 @@ function parseTx(tx, addrLower) {
|
||||
// For contract calls, produce a meaningful label instead of "0.0000 ETH"
|
||||
let symbol = "ETH";
|
||||
let value = formatTxValue(formatEther(rawWei));
|
||||
let exactValue = formatEther(rawWei);
|
||||
let rawAmount = rawWei;
|
||||
let rawUnit = "wei";
|
||||
let direction = from.toLowerCase() === addrLower ? "sent" : "received";
|
||||
let directionLabel = direction === "sent" ? "Sent" : "Received";
|
||||
if (toIsContract && method && method !== "transfer") {
|
||||
@@ -38,6 +41,9 @@ function parseTx(tx, addrLower) {
|
||||
direction = "contract";
|
||||
directionLabel = label;
|
||||
value = "";
|
||||
exactValue = "";
|
||||
rawAmount = "";
|
||||
rawUnit = "";
|
||||
}
|
||||
|
||||
return {
|
||||
@@ -47,6 +53,9 @@ function parseTx(tx, addrLower) {
|
||||
from: from,
|
||||
to: to,
|
||||
value: value,
|
||||
exactValue: exactValue,
|
||||
rawAmount: rawAmount,
|
||||
rawUnit: rawUnit,
|
||||
valueGwei: Math.floor(Number(BigInt(rawWei) / BigInt(1000000000))),
|
||||
symbol: symbol,
|
||||
direction: direction,
|
||||
@@ -63,17 +72,21 @@ function parseTokenTransfer(tt, addrLower) {
|
||||
const from = tt.from?.hash || "";
|
||||
const to = tt.to?.hash || "";
|
||||
const decimals = parseInt(tt.total?.decimals || "18", 10);
|
||||
const rawValue = tt.total?.value || "0";
|
||||
const rawVal = tt.total?.value || "0";
|
||||
const direction = from.toLowerCase() === addrLower ? "sent" : "received";
|
||||
const sym = tt.token?.symbol || "?";
|
||||
return {
|
||||
hash: tt.transaction_hash,
|
||||
blockNumber: tt.block_number,
|
||||
timestamp: Math.floor(new Date(tt.timestamp).getTime() / 1000),
|
||||
from: from,
|
||||
to: to,
|
||||
value: formatTxValue(formatUnits(rawValue, decimals)),
|
||||
value: formatTxValue(formatUnits(rawVal, decimals)),
|
||||
exactValue: formatUnits(rawVal, decimals),
|
||||
rawAmount: rawVal,
|
||||
rawUnit: sym + " base units (10^-" + decimals + ")",
|
||||
valueGwei: null,
|
||||
symbol: tt.token?.symbol || "?",
|
||||
symbol: sym,
|
||||
direction: direction,
|
||||
directionLabel: direction === "sent" ? "Sent" : "Received",
|
||||
isError: false,
|
||||
|
||||
Reference in New Issue
Block a user