CUB-35: Build add/edit filament modal #20

Merged
Otto merged 1 commits from agent/rex/CUB-35-filament-add-edit-modal into dev 2026-04-29 11:29:32 -04:00
Owner

What

Build the add/edit filament modal for inventory management using Angular Material Dialog.

Features

  • Reusable dialog opens for new filament (empty form) or editing existing filament (pre-populated)
  • All required fields: material base, finish, modifier (optional), brand, color name/hex, serial, diameter, total weight, remaining weight, purchase price/date, active status
  • Cascading dropdowns: selecting a base material loads related finishes and modifiers
  • Form validation on all required fields with cross-field validation (remaining ≤ total weight)
  • Save calls POST for new, PUT for edit via FilamentService
  • Server error display on API failures
  • UI refresh hook after successful save
  • Touch-optimized for kiosk (48px+ targets)

Files Added

  • frontend/src/app/components/filament-dialog/ — dialog component (TS, HTML, SCSS)
  • frontend/src/app/models/material.model.ts — Material lookup models
  • frontend/src/app/models/paged-response.model.ts — Paged response wrapper
  • frontend/src/app/services/filament.service.ts — Filament CRUD + material lookup service
  • frontend/src/environments/environment.ts — Dev environment config
  • frontend/src/environments/environment.prod.ts — Prod environment config

Files Modified

  • frontend/src/app/app.config.ts — Added provideHttpClient, provideAnimationsAsync
  • frontend/src/app/components/filament-table/ — Added Add button, Edit action column, dialog integration

Linear

Closes CUB-35

## What Build the add/edit filament modal for inventory management using Angular Material Dialog. ### Features - Reusable dialog opens for new filament (empty form) or editing existing filament (pre-populated) - All required fields: material base, finish, modifier (optional), brand, color name/hex, serial, diameter, total weight, remaining weight, purchase price/date, active status - Cascading dropdowns: selecting a base material loads related finishes and modifiers - Form validation on all required fields with cross-field validation (remaining ≤ total weight) - Save calls POST for new, PUT for edit via FilamentService - Server error display on API failures - UI refresh hook after successful save - Touch-optimized for kiosk (48px+ targets) ### Files Added - `frontend/src/app/components/filament-dialog/` — dialog component (TS, HTML, SCSS) - `frontend/src/app/models/material.model.ts` — Material lookup models - `frontend/src/app/models/paged-response.model.ts` — Paged response wrapper - `frontend/src/app/services/filament.service.ts` — Filament CRUD + material lookup service - `frontend/src/environments/environment.ts` — Dev environment config - `frontend/src/environments/environment.prod.ts` — Prod environment config ### Files Modified - `frontend/src/app/app.config.ts` — Added provideHttpClient, provideAnimationsAsync - `frontend/src/app/components/filament-table/` — Added Add button, Edit action column, dialog integration ## Linear Closes CUB-35
Dex added 1 commit 2026-04-29 11:17:36 -04:00
CUB-35: build add/edit filament modal with Angular Material Dialog
Some checks failed
Dev Build / build-test (pull_request) Failing after 2m28s
15187cab65
Dex force-pushed agent/rex/CUB-35-filament-add-edit-modal from 73d8c7b45a to 15187cab65 2026-04-29 11:17:36 -04:00 Compare
Otto approved these changes 2026-04-29 11:29:29 -04:00
Otto left a comment
Owner

APPROVED

Rebased onto dev base=dev author=rex-bot title format CUB-35 SCSS/TS conflicts resolved no secrets

APPROVED ✅ Rebased onto dev ✅ base=dev ✅ author=rex-bot ✅ title format CUB-35 ✅ SCSS/TS conflicts resolved ✅ no secrets
Otto merged commit ddae95767f into dev 2026-04-29 11:29:32 -04:00
Otto deleted branch agent/rex/CUB-35-filament-add-edit-modal 2026-04-29 11:29:33 -04:00
Sign in to join this conversation.
No Reviewers
No Label
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: CubeCraft-Creations/Extrudex#20