diff options
| author | Adam Soltys <[email protected]> | 2026-10-08 16:42:02 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-10-08 16:42:02 -0700 |
| commit | 8bb6726811d3f49131af57d6a104ee7064aa8172 (patch) | |
| tree | 93ffb3ff225df52f4e3378e846ee4dd3120dd1d0 /src/features | |
| parent | e35764950b59bde6e36bdfad1ca671eef564a6d1 (diff) | |
| download | coinosv3-8bb6726811d3f49131af57d6a104ee7064aa8172.tar.gz coinosv3-8bb6726811d3f49131af57d6a104ee7064aa8172.zip | |
The 'Coins renew in ~N days for X. Manage' line under the Spending balance is gone: the card's gear opens the coins page, which carries the renewal schedule and fees
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/features')
| -rw-r--r-- | src/features/ark.js | 32 |
1 files changed, 3 insertions, 29 deletions
diff --git a/src/features/ark.js b/src/features/ark.js index d5b6e7f..538246d 100644 --- a/src/features/ark.js +++ b/src/features/ark.js @@ -4090,35 +4090,9 @@ export function arkFeature(ctx) { }); else if (expiredSat > 0) lines.push({ text: t('arkExpiredDust', { amount: fmtSats(expiredSat) + ' sats' }), manage: true }); } - // What a unilateral exit would cost is the Spending settings page's - // business (the gear on the card), not a line under the balance. - // An upcoming renewal that will COST something — stated before it - // happens. Ark is new to nearly everyone, and a fee nobody announced - // reads as money gone missing (it did, once). Free renewals — the - // normal case now — pass without comment, and one line under the - // balance is enough: the settings page carries the full story. - if (ark && ark.state && ark._tipH && !wallet.watchOnly) { - const spend = freeCoins(ark.state).filter((v) => v.expiryHeight && !v.expiryRejected); - if (spend.length) { - const tip = ark._tipH; - const RENEW = renewWindow(); - const minExpiry = Math.min(...spend.map((v) => v.expiryHeight)); - const blocksUntil = Math.max(0, minExpiry - RENEW - tip); - // price it at the moment it will actually run: only the coins then - // inside the window ride along, billed at that moment's bracket - const simTip = minExpiry - RENEW + 1; - const batch = spend.filter((v) => v.expiryHeight - simTip < RENEW); - let feeSat = 0; - try { feeSat = ark.refreshFee(batch, simTip); } catch {} - const days = Math.max(1, Math.round(blocksUntil / 144)); - if (feeSat > 0) lines.push({ - text: t(blocksUntil <= 0 ? 'arkRenewForecastNow' : 'arkRenewForecast', { - when: days === 1 ? t('arkCoinsSpanDay') : t('arkCoinsSpanDays', { n: days }), - fee: fmtAmount(feeSat) + ' ' + unitLabel(), - }), manage: true, - }); - } - } + // What a unilateral exit would cost, and when coins renew for how + // much, are the Spending settings page's business (the gear on the + // card), not lines under the balance. // The coins themselves are always one tap away on the card's gear; a // notice that is about them links straight there. const manage = lines.some((l) => l.manage) |
