I accept supabase_apply_migration
Columns added. Let me re-read the files I need to modify since their content was omitted from context.
Now let me read the site config and navbar logo markup to reuse the logo design.
I have everything I need. The user gave invoice-specific company details (note the phone +1 (954) 939-8617 differs from the site-wide 754 number), so I'll keep these scoped to the invoice to avoid breaking the rest of the site. Let me read the admin actions file to add a payment-status action.
Now I'll implement everything. First, update the types to include the new fields.
Now add a setPaymentStatus server action to admin.ts.
Now rewrite the InvoiceActions component with separate Download/Print buttons and a functional payment-status toggle.
Now the full invoice redesign with logo, company details, QR code, payment stamp, due date, and terms.
Now let me build to catch any errors.
Build is clean. Let me verify the new invoice in the browser. I'll bootstrap a temporary admin, create a test shipment, and view the invoice.
An admin already exists (the user created their own), so I shouldn't touch it. I'll create a temporary test admin + shipment via SQL to verify the invoice, then remove only the test data. Let me generate a bcrypt hash and a test data set.
I accept supabase_execute_sql
Test data inserted. Let me log in as the test admin and view the new invoice.
The invoice looks professional and complete — logo, full company details, INVOICE header with number/issued/due dates, red UNPAID stamp, PAID/UNPAID toggle, Download PDF + Print Invoice buttons, Bill To / Shipment / Ship To sections, line-item table, totals, Terms & Conditions, and a working QR code. Let me test the PAID toggle and mobile view.
The PAID button label includes icons. Let me snapshot to get the exact ref.
Everything works perfectly: the PAID toggle persists to the database and flips the stamp to green, and the mobile layout stacks cleanly with a centered QR code. Now let me remove the temporary test data (keeping your real admin account untouched).
I accept supabase_execute_sql