Context
InvoiceResource currently only has ListInvoices and CreateInvoice pages. There is no way to open a specific invoice for editing. A dedicated EditRecord page is required to house the invoice form and the status-dependent action bar described in #223 (draft) and #224 (paid).
Invoices are too complex for a slide-over (line items, tax calculation, totals, credit notes) — a full page is the right pattern here, matching InvoicePlane v1 behaviour.
User story
As a user, I want to open a specific invoice in a full edit page so I can modify line items, adjust dates, view calculated totals, and trigger invoice actions (download, send, copy, credit note) from the top-right header bar.
Acceptance criteria
Parent of #223 (draft invoice actions) and #224 (paid invoice actions).
Child of the Invoices Epic #15.
Context
InvoiceResourcecurrently only hasListInvoicesandCreateInvoicepages. There is no way to open a specific invoice for editing. A dedicatedEditRecordpage is required to house the invoice form and the status-dependent action bar described in #223 (draft) and #224 (paid).Invoices are too complex for a slide-over (line items, tax calculation, totals, credit notes) — a full page is the right pattern here, matching InvoicePlane v1 behaviour.
User story
As a user, I want to open a specific invoice in a full edit page so I can modify line items, adjust dates, view calculated totals, and trigger invoice actions (download, send, copy, credit note) from the top-right header bar.
Acceptance criteria
Modules/Invoices/Filament/Company/Resources/Invoices/Pages/EditInvoice.phpextendsEditRecordInvoiceResource::getPages()as'edit' => EditInvoice::route('/{record}/edit')CreateInvoice)getHeaderActions()skeleton exists and is ready for [Invoices]: Action dropdown on draft invoice edit screen #223 and [Invoices]: Action dropdown on paid invoice edit screen #224 to populateParent of #223 (draft invoice actions) and #224 (paid invoice actions).
Child of the Invoices Epic #15.