diff options
| author | Adam Soltys <[email protected]> | 2026-09-03 20:51:32 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-09-03 20:51:32 -0700 |
| commit | c9ca1ea13f67166c97921e67f4b0489b2bc7bed8 (patch) | |
| tree | 8c5f34585062655f96930871022b9ac0b9a5d6da /src/features | |
| parent | 4982c2bbf01d39fd4cb6775327b1c9bf614f4735 (diff) | |
| download | coinosv3-c9ca1ea13f67166c97921e67f4b0489b2bc7bed8.tar.gz coinosv3-c9ca1ea13f67166c97921e67f4b0489b2bc7bed8.zip | |
The reconcile row sheds its costume entirely: just Sent, a time, an amount — an ordinary send row, because it was the user's own spend and nobody needs an alarm about which device made it. (The ASP's status API returns only a spent bit, so the shown time is when this wallet caught up)
Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01MrkLsNScXe9b6BviUSdmMr
Diffstat (limited to 'src/features')
| -rw-r--r-- | src/features/ark.js | 25 |
1 files changed, 10 insertions, 15 deletions
diff --git a/src/features/ark.js b/src/features/ark.js index d730ea6..f0b0e9d 100644 --- a/src/features/ark.js +++ b/src/features/ark.js @@ -980,25 +980,20 @@ export function arkFeature(ctx) { // coins the server saw spent outside this device's story (another // device, a swept expiry, an adopted renewal) — the row that keeps the // history summing to the balance. Folded per reconcile pass upstream. - // "Spent on another device" read as an accusation; it's now a plain Sent - // wearing a quiet "synced" tag, and a tap unfolds the reassurance. + // Deliberately dressed as an ORDINARY Sent row: the user spent their own + // money and doesn't need an alarm about which device did it. (The ASP's + // status API returns only a spent bit — no spend time or destination — + // so the timestamp is when this wallet found out.) Not tappable: the + // folded row sums several records, so a per-movement detail would show a + // fraction of the amount it advertises. if (m.type === 'reconcile') { - const open = ui.arkReconOpen === m.id; - return h('div', { - class: 'item', style: 'cursor:pointer;flex-wrap:wrap', - onClick: () => { ui.arkReconOpen = open ? null : m.id; render(); }, - }, + return h('div', { class: 'item' }, h('div', { class: 'ico out', html: ARK_MARK(15) }), h('div', { class: 'grow' }, - h('div', { class: 'row gap6', style: 'align-items:center' }, - t('arkReconSent'), h('span', { class: 'tag' }, t('arkReconTag'))), - h('div', { class: 'small faint' }, - timeAgo(m.ts / 1000) + (m.count > 1 ? ` · ${t('arkReconCoins', { n: m.count })}` : ''))), + h('div', {}, t('sent')), + h('div', { class: 'small faint' }, timeAgo(m.ts / 1000))), h('div', { style: 'text-align:right' }, - h('div', { class: 'amount-neg' }, '-' + fmtAmount(m.amountSat))), - open - ? h('div', { class: 'small muted', style: 'flex-basis:100%;margin-top:6px' }, t('arkReconExplain')) - : null); + h('div', { class: 'amount-neg' }, '-' + fmtAmount(m.amountSat)))); } // a renewal moves nothing anywhere — its history amount is what it COST if (m.type === 'refresh') { |
