features/wallet/tx_detail_sheet
library
Classes
-
TxDetailSheet
-
The sheet body (public for widget tests — pump it directly in a
ProviderScope, the shield-sheet idiom).
Functions
-
showTxDetailSheet(BuildContext context, TxSummary tx)
→ Future<void>
-
Open the transaction-detail sheet for one history row (#320; maintainer: "I
can't tap on any activity to see the details that usually user needs").
Shows everything
TxSummary carries — amount, status with a plain-language
explanation, fee, date, mined height, memo presence, and the full txid with
a copy affordance. Memo CONTENT and the recipient address are not on the
summary DTO (net-new FFI plumbing) — an explicit follow-up, not shown here.
Freely dismissible: purely informational, it owns no in-flight operation.
-
txIsCancelled(TxSummary tx)
→ bool
-
Whether this status means the transaction DID NOT move funds (expired ⇒
cancelled unmined, funds returned to spendable — state.rs; failed ⇒
endpoint-rejected, never accepted). Drives the struck-through amount and
the "no funds left your wallet" reassurance (the maintainer's "what does
expired mean" ask).
-
txRowStatusExplanation(WalletLocalizations l10n, TxSummary tx)
→ String
-
The explanation REFINED by the delivery reading, the sibling of
txRowStatusLabel: the Pending sentence affirms "sent to the Zcash
network", which is FALSE for a transaction the wallet is still retrying
(no endpoint has taken it yet) and for one it is holding — those two get
their own honest sentences; everything else falls through. An EXPIRED
attempt the wallet will send again (S7 C1) says so, and says not to.
-
txRowStatusLabel(WalletLocalizations l10n, TxSummary tx)
→ String
-
The status word REFINED by the wallet's delivery reading for a transaction
it created (stage S8
obligation, row 10) — the list row and the detail
sheet both use this, so the two surfaces cannot disagree. An unmined
wallet-created transaction reads "Retrying" while the wallet still owes its
broadcast and "Saved" while it is kept without a retry promise; every other
reading (accepted — an endpoint has it, so Pending's "sent to the network"
is true — confirmed, the forward-compat unknown, or no reading at all)
falls through to txStatusLabel. Matched EXPLICITLY, no _, for the same
reason as txStatusLabel's Unknown arm.
-
txStatusExplanation(WalletLocalizations l10n, TxStatus s)
→ String
-
Plain-language explanation of the status for the detail sheet.
-
txStatusLabel(WalletLocalizations l10n, TxStatus s)
→ String
-
Status word for a history row / the detail sheet — ONE mapping for both
surfaces (the list row imports this; they must never disagree).