aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-10-09 14:51:06 -0700
committerAdam Soltys <[email protected]>2026-10-09 14:51:06 -0700
commitdc00cc50befdc2603a15c2de624607010e5e7248 (patch)
tree9bc2544dbc9d98818c4794cd5f0c9cdb9c3d648d /src
parenta30c16fcaac5c89acc1ace58aff8a6746ab45d05 (diff)
downloadcoinosv3-dc00cc50befdc2603a15c2de624607010e5e7248.tar.gz
coinosv3-dc00cc50befdc2603a15c2de624607010e5e7248.zip
Amounts: no plus sign on money coming in either — the word (Received) and the green say it. History rows, transaction details, the "payment received" screens (wallet, Spending, gifts, boards/onboards) and the till's paid bills. The till's tip choices keep theirs: "+$2" there is what a tip adds to the bill.
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Vps2H27rhbG9ZqseGfMrc3
Diffstat (limited to 'src')
-rw-r--r--src/app.js6
-rw-r--r--src/features/ark.js12
-rw-r--r--src/features/gifts.js2
-rw-r--r--src/features/pos.js2
4 files changed, 11 insertions, 11 deletions
diff --git a/src/app.js b/src/app.js
index dbda72c..e8ce701 100644
--- a/src/app.js
+++ b/src/app.js
@@ -4965,7 +4965,7 @@ function receiveTab() {
},
h('div', { class: 'check-badge' }, '✓'),
h('h2', { style: 'margin:0' }, t('paymentReceived')),
- amt ? h('div', { class: 'amount-pos', style: 'font-size:18px' }, '+' + fmtAmount(amt) + ' ' + unitLabel()) : null,
+ amt ? h('div', { class: 'amount-pos', style: 'font-size:18px' }, fmtAmount(amt) + ' ' + unitLabel()) : null,
h('div', { class: 'small muted' }, t('tapToProceed'))
);
}
@@ -5886,7 +5886,7 @@ function txHistoryItem(tx) {
),
h('div', { style: 'text-align:right' },
// priced at the moment it happened, not at today's number
- h('div', { class: incoming ? 'amount-pos' : 'amount-neg' }, (incoming ? '+' : '') + fmtAmount(Math.abs(tx.net), tx.blockTime)),
+ h('div', { class: incoming ? 'amount-pos' : 'amount-neg' }, fmtAmount(Math.abs(tx.net), tx.blockTime)),
!incoming && tx.fee ? h('div', { class: 'small faint' }, t('feeShort', { x: fmtAmount(tx.fee, tx.blockTime) })) : null
)
);
@@ -6008,7 +6008,7 @@ function txDetailView(tx) {
h('span', { class: `tag ${tx.confirmed ? 'conf' : 'pending'}` }, tx.confirmed ? t('confirmedTag') : t('pendingTag'))
),
h('div', { class: 'amt', style: 'font-size:30px' },
- h('span', { class: incoming ? 'amount-pos' : 'amount-neg' }, (incoming ? '+' : '') + fmtAmount(Math.abs(tx.net), tx.blockTime)),
+ h('span', { class: incoming ? 'amount-pos' : 'amount-neg' }, fmtAmount(Math.abs(tx.net), tx.blockTime)),
' ', unitTag('unit')
),
h('div', { class: 'summary col', style: 'gap:0' },
diff --git a/src/features/ark.js b/src/features/ark.js
index a9f4487..2aef8c5 100644
--- a/src/features/ark.js
+++ b/src/features/ark.js
@@ -1422,7 +1422,7 @@ export function arkFeature(ctx) {
h('div', { class: 'small faint' }, timeAgo(m.ts / 1000))),
h('div', { style: 'text-align:right' },
// in fiat this is what the payment was worth when it was made
- h('div', { class: failed ? 'muted' : incoming ? 'amount-pos' : 'amount-neg' }, (failed ? '' : incoming ? '+' : '') + fmtAmount(m.amountSat, m.ts / 1000)))
+ h('div', { class: failed ? 'muted' : incoming ? 'amount-pos' : 'amount-neg' }, fmtAmount(m.amountSat, m.ts / 1000)))
);
}
@@ -1553,7 +1553,7 @@ export function arkFeature(ctx) {
? h('div', { class: m.feeSat > 0 ? 'amount-neg' : 'small faint', style: 'font-size:20px' },
m.feeSat > 0 ? fmtAmount(m.feeSat) + ' ' + unitLabel() : t('arkDepthFree'))
: h('div', { class: failed ? 'muted' : incoming ? 'amount-pos' : 'amount-neg', style: 'font-size:20px;display:flex;align-items:baseline;gap:6px' },
- (failed ? '' : incoming ? '+' : '') + fmtAmount(m.amountSat, m.ts / 1000), unitTag()), // the unit toggles, as on the balance
+ fmtAmount(m.amountSat, m.ts / 1000), unitTag()), // the unit toggles, as on the balance
row(t('dateLabel'), new Date(m.ts).toLocaleString()),
ctx.worthLine ? ctx.worthLine(m.amountSat, m.ts / 1000, row) : null,
// a feature that knows more about this movement (the till: bill and tip)
@@ -3459,7 +3459,7 @@ export function arkFeature(ctx) {
},
h('div', { class: 'check-badge' }, '✓'),
h('h2', { style: 'margin:0' }, t('paymentReceived')),
- amt ? h('div', { class: 'amount-pos', style: 'font-size:18px' }, '+' + fmtAmount(amt) + ' ' + unitLabel()) : null,
+ amt ? h('div', { class: 'amount-pos', style: 'font-size:18px' }, fmtAmount(amt) + ' ' + unitLabel()) : null,
h('div', { class: 'small muted' }, t('tapToProceed'))
);
}
@@ -3476,7 +3476,7 @@ export function arkFeature(ctx) {
{ class: 'card col', style: 'align-items:center;text-align:center;gap:14px;padding:40px 20px' },
h('div', { class: 'check-badge' }, '✓'),
h('h2', { style: 'margin:0' }, t('arkOffboardedTitle')),
- h('div', { class: 'amount-pos', style: 'font-size:18px' }, '+' + fmtAmount(o.netSat) + ' ' + unitLabel()),
+ h('div', { class: 'amount-pos', style: 'font-size:18px' }, fmtAmount(o.netSat) + ' ' + unitLabel()),
h('p', { class: 'small muted', style: 'margin:0' }, t('arkOffboardedNote')),
o.feeSat ? h('div', { class: 'small faint' }, t('feeShort', { x: fmtAmount(o.feeSat) })) : null,
h('div', { class: 'addr-box', style: 'width:100%' }, o.txid),
@@ -3498,7 +3498,7 @@ export function arkFeature(ctx) {
{ class: 'card col', style: 'align-items:center;text-align:center;gap:14px;padding:40px 20px' },
h('div', { class: 'check-badge' }, '✓'),
h('h2', { style: 'margin:0' }, t('arkBoardedTitle')),
- h('div', { class: 'amount-pos', style: 'font-size:18px' }, '+' + fmtAmount(b.netSat) + ' ' + unitLabel()),
+ h('div', { class: 'amount-pos', style: 'font-size:18px' }, fmtAmount(b.netSat) + ' ' + unitLabel()),
h('p', { class: 'small muted', style: 'margin:0' }, boardedNote()),
h('div', { class: 'addr-box', style: 'width:100%' }, b.txid),
h('div', { class: 'row gap6' },
@@ -4140,7 +4140,7 @@ export function arkFeature(ctx) {
h('div', { class: 'row gap6', style: 'font-weight:600;margin:12px 0 2px;align-items:center' }, h('span', { html: ARK_ICON(16) }), t('arkBoardHistory')),
h('div', { class: 'line' },
h('span', { class: 'k' }, t('arkBalance')),
- h('span', { class: 'v' }, '+' + fmtAmount(a.amountSat - a.feeSat) + ' ' + unitLabel())),
+ h('span', { class: 'v' }, fmtAmount(a.amountSat - a.feeSat) + ' ' + unitLabel())),
a.feeSat > 0
? h('div', { class: 'line' },
h('span', { class: 'k' }, t('arkBoardFeeLabel')),
diff --git a/src/features/gifts.js b/src/features/gifts.js
index 4d68a50..56fd99e 100644
--- a/src/features/gifts.js
+++ b/src/features/gifts.js
@@ -936,7 +936,7 @@ export function giftsFeature(ctx) {
},
h('div', { class: 'check-badge' }, '✓'),
h('h2', { style: 'margin:0' }, t('paymentReceived')),
- amt ? h('div', { class: 'amount-pos', style: 'font-size:18px' }, '+' + fmtAmount(amt) + ' ' + unitLabel()) : null,
+ amt ? h('div', { class: 'amount-pos', style: 'font-size:18px' }, fmtAmount(amt) + ' ' + unitLabel()) : null,
h('div', { class: 'small muted' }, t('tapToProceed'))
);
}
diff --git a/src/features/pos.js b/src/features/pos.js
index dafd388..3727862 100644
--- a/src/features/pos.js
+++ b/src/features/pos.js
@@ -246,7 +246,7 @@ export function posFeature(ctx) {
h('span', { class: 'small muted', style: 'overflow:hidden;text-overflow:ellipsis;white-space:nowrap' },
new Date(x.paidAt || x.at).toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }) + (x.note ? ' · ' + x.note : '')
+ (x.status === 'open' ? ' · ' + t('posAwaiting') : x.status === 'void' ? ' · ' + t('posVoid') : ''))),
- h('span', { class: 'amount-pos', style: 'white-space:nowrap' }, (x.status === 'paid' ? '+' : '') + fmtAmount(x.billSat + x.tipSat)));
+ h('span', { class: 'amount-pos', style: 'white-space:nowrap' }, fmtAmount(x.billSat + x.tipSat)));
return h('div', { class: 'card col', style: 'gap:8px' },
h('h3', { style: 'margin:0' }, t('posSalesToday')),
h('div', { class: 'row between' }, h('span', { class: 'muted' }, t('posBills')), h('span', {}, fmtAmount(sum('billSat')) + ' ' + unitLabel())),