mega-plant/components
David 58c972c4c9 Invoices: a duplicate is a notice, not a broken invoice
Re-offering a PDF that is already in the register did the safe thing — nothing
was written, no income double-counted — but reported it as a failure, which
was wrong twice over. No toast fired, so if the dialog were not in front of
you the click looked unacknowledged; and it filed an entry in the retry inbox,
where a duplicate is a trap: re-offering it can never succeed unless the
original is deleted first, so it sat in a list of things to fix that could not
be fixed.

Duplicates now get their own status. Nothing is written, no inbox entry is
created, the dialog closes and a notice toast names the copy already held —
site, line count and total — so it is obvious which one it matched. Amber
rather than teal, because nothing was imported and a success-coloured toast
would misread.

Verified by re-uffering PHI 169: invoices 10->10, lines 31->31, inbox 7->7,
failed 0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-10-02 14:59:08 +02:00
..
BookingSelect.tsx Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
ChartsGrid.tsx Round 4: regressions fixed + mobile standard 2026-09-12 12:05:43 +02:00
DashboardCharts.tsx Round 3 (Parts A-B): charts fixes + expenses/overheads cleanup 2026-09-12 11:24:18 +02:00
ExpenseSectionPage.tsx Round 3 (Parts A-B): charts fixes + expenses/overheads cleanup 2026-09-12 11:24:18 +02:00
GlobalSearch.tsx Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
IncomeView.tsx Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
InvoiceIntake.tsx Invoices: a duplicate is a notice, not a broken invoice 2026-10-02 14:59:08 +02:00
InvoiceList.tsx Invoices: Add Invoice becomes a real dialog; quieten the invoice table 2026-10-02 14:35:27 +02:00
InvoiceTable.tsx Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
InvoiceUploader.tsx Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
MachineLineChart.tsx Round 4: regressions fixed + mobile standard 2026-09-12 12:05:43 +02:00
PlantRegisterTable.tsx Plant Register: inline editing, active toggle and cascade-delete impact 2026-10-01 15:59:51 +02:00
RunningView.tsx Round 4: regressions fixed + mobile standard 2026-09-12 12:05:43 +02:00
Sidebar.tsx Brand logo: 3D cube/map icon replaces the M gradient mark 2026-09-12 12:12:30 +02:00
Sparkline.tsx Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
ThemeProvider.tsx Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
ThemeToggle.tsx Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
Toast.tsx Invoices: a duplicate is a notice, not a broken invoice 2026-10-02 14:59:08 +02:00