Commit Graph

3 Commits

Author SHA1 Message Date
Kyle f43cd3409c Fix undo gaps and add right-click menu items 16-20
Undo fixes:
- Move undo now redraws deviceLayer so devices visually snap back
- Label, reference, gauge, color, and all wire/device property changes are now undoable
- Duplicate and paste are now undoable (deletes cloned devices on Ctrl+Z)

Right-click menu additions (roadmap 16-20):
- Align & distribute: left/right/top/bottom edges, H/V spacing for multi-select
- Bring to front / Send to back via zOrder in device.properties
- Copy/paste wire style (color, gauge, stripe, twisted pair, shielded)
- Select all wires on net highlights every wire sharing the same label
- Lock device: prevents moves, shows padlock badge, persists across refresh

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 17:19:45 -04:00
Kyle 0e507a95d3 Fix wire property persistence and enable server auto-reload
Wire options (twisted pair, shielded, stripe, bundle) were not
persisting because the backend server had stale Python modules loaded
from before the WireUpdate schema was updated with these fields.
Pydantic silently ignored unrecognized fields, so only pre-existing
fields like color_stripe were saved.

Frontend fixes applied alongside the schema work:
- _patchWire now shows visible error on save failure instead of
  swallowing errors and falsely flashing Saved
- Bundle dropdown rebuild is guarded with _updatingBundleDropdown flag
  to prevent spurious change events from triggering unwanted PATCHes
- Enable uvicorn reload=True so server auto-restarts on code changes,
  preventing stale module issues in the future

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 14:57:36 -04:00
Kyle f32203b630 Initial commit — wiring diagram maker with full feature set
- FastAPI + SQLite backend with routers for diagrams, devices, wires,
  bundles, connectors, export, and Octopart/Nexar search
- Konva.js canvas: ortho/direct/curved routing, wire crossings, harness
  mode, snap-to-grid, multi-select, drag, resize, undo
- Wire features: color/stripe, twisted pair helix, shielded glow,
  gauge size label, multi-core bundle grouping, length/unit tracking
- Device library: connector, terminal block, cable, splice, label, group,
  relay, fuse, switch, component with custom connector support
- Exports: BOM CSV, assembly TXT, JSON, formboard layout, PNG image
- Auto-migration for schema changes via ALTER TABLE at startup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 12:51:21 -04:00