Add DELETE /api/exports/{id} endpoint with cascade delete, trash icon
buttons on both the exports list and export detail pages, and disable
browser caching for static files to prevent stale JS issues.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace dark blueprint theme with a clean light theme for better
readability. Bump all font sizes (10px labels to 12px, 13px body
text to 14px) and improve text contrast for users with reading
glasses. Icon colors now use CSS variables instead of hardcoded hex.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Each export record now keeps a complete BOM snapshot instead of moving
BomItems between records. CutTemplate gains a Revision field that
auto-increments when the content hash changes across exports for the
same drawing+item, and stays the same when the geometry is unchanged.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Detach EquipmentBox event before programmatically setting equipment to
prevent async UpdateDrawingDropdownAsync from clearing the drawing
selection and duplicating entries. Also update ExportRecord.PdfContentHash
in StorePdfAsync so the web frontend can serve PDF downloads.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add static HTML/CSS/JS frontend with export browser, search, and
file download capabilities served via UseStaticFiles.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add find-existing endpoint and upsert logic to POST so re-exporting
a part updates the existing BomItem rather than creating duplicates.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add list/search, equipment/drawing number lookups, PDF hash tracking,
cut template lookup, DXF zip download, and wire up FileStorageService
and static files in Program.cs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add separate EquipmentNo and DrawingNo fields alongside the combined
DrawingNumber, plus a Title field for labeling exports. Updated across
Core model, DbContext, API DTOs, and ExportDXF models.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add FileStorageService for DXF/PDF storage using content hashing,
FileStorageOptions config, FilesController for uploads, and
FileBrowserController for browsing stored files.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add initial FabWorksDbContext migration that creates the FormPrograms
table with FK to BomItems. Existing tables (ExportRecords, BomItems,
CutTemplates) are excluded from the migration since they were already
created by ExportDXF's ExportDxfDbContext. Also adds EF Core Design
package to FabWorks.Api for migration tooling support.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>