diff options
| author | Adam Soltys <[email protected]> | 2026-11-12 10:19:59 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-11-12 10:19:59 -0700 |
| commit | 188cc8b6471f3114d548aca319c5338fcbe92e5f (patch) | |
| tree | 6e0f8cca707cf982f998232d48fb0d52e00b3c35 /src | |
| parent | 3197c707e6357623eee4e1356003f0c60b71e478 (diff) | |
| download | coinosv3-188cc8b6471f3114d548aca319c5338fcbe92e5f.tar.gz coinosv3-188cc8b6471f3114d548aca319c5338fcbe92e5f.zip | |
Settings → Wallet lists Spending and Savings, each opening its balance card's settings. "can we make the spending wallet settings accessible through the main settings -> wallet page somehow?" (Adam, 2026-11-12), after Nils couldn't find the Spending settings: the gear on the Spending card was the only way in. A "Balance settings" card under the recovery phrase has a row per balance the wallet shows (Spending only once it's set up; a single-purpose wallet shows its one), each opening the same page as that card's gear (coins, renewals, custody and exit for Spending; lock, password, recovery phrase and public key for both). tools/balance-settings-row-test.js (mainnet, only the Ark server's info let through)HEADmaster
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01VMan6UKGJyuGyZFxddYRxS
Diffstat (limited to 'src')
| -rw-r--r-- | src/app.js | 19 | ||||
| -rw-r--r-- | src/i18n.js | 3 |
2 files changed, 21 insertions, 1 deletions
@@ -3213,7 +3213,7 @@ function settingsTab() { // matters if the phone is lost tonight case 'wallet': if (ui.delAcct && a) return deleteAccountView(a); - return page(a ? [recoveryCard(a), walletNameCard(a), pubkeyCard(a), historyExportCard(), deleteAccountCard(a)] : []); + return page(a ? [recoveryCard(a), balanceSettingsCard(a), walletNameCard(a), pubkeyCard(a), historyExportCard(), deleteAccountCard(a)] : []); case 'payments': return page(featureAll('settingsCards').reverse()); case 'pos': return page(featureAll('posSettingsCards').reverse()); // the till's own card first, then the terminal's case 'network': return page([networkCard(), explorerCard()]); // an old bookmark of the tile; the cards live under Advanced now @@ -3906,6 +3906,23 @@ function recoveryCard(a) { ); } +// The balance cards' gears, reachable from Settings → Wallet too: "I simply +// cannot find this option" (Nils, 2026-11-12) about the Spending card's gear. +function balanceSettingsCard(a) { + if (a.id !== activeId) return null; + const views = a.kind ? [a.kind] : spendingActive() ? ['spending', 'savings'] : ['savings']; + const row = (view) => h('button', { + class: 'btn-ghost btn-block balance-settings-row', 'data-view': view, + style: 'display:flex;align-items:center;gap:10px;text-align:left;padding:10px 4px', + onClick: () => openWalletSettings(view), + }, + h('span', { style: 'display:flex;color:var(--muted)', html: GEAR_ICON(18) }), + h('span', { class: 'col', style: 'flex:1;gap:2px' }, + h('span', { style: 'font-weight:600' }, viewLabel(a, view)), + h('span', { class: 'small muted' }, t(view === 'spending' ? 'spendingSettingsDesc' : 'savingsSettingsDesc'))), + h('span', { class: 'muted' }, '›')); + return h('div', { class: 'card col', style: 'gap:4px' }, h('h3', {}, t('balanceSettingsTitle')), ...views.map(row)); +} function walletNameCard(a) { const saveName = () => { const v = (ui.editLabel || '').trim(); diff --git a/src/i18n.js b/src/i18n.js index 1d14a36..194ce40 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -1224,6 +1224,9 @@ const STR = { explorerUrlHint: 'Esplora / electrs REST base, e.g. https://mempool.space/api', walletName: 'Account name', walletSettings: 'Account settings', + balanceSettingsTitle: 'Balance settings', + spendingSettingsDesc: 'Coins, renewals, who holds them, moving them out', + savingsSettingsDesc: 'Lock, password, recovery phrase, public key', securityTitle: 'Security', walletSettingsDesc: 'Name, recovery phrase, public key, and auto-logout for this account.', autolockTitle: 'Log out automatically', |
