Extract circuit grid model
This commit is contained in:
@@ -4,6 +4,15 @@
|
||||
|
||||
The circuit-list editor is a circuit-first planning workspace for distribution-board design. It is optimized for spreadsheet-like editing while preserving electrical domain boundaries: circuit-level data stays on circuits, and load rows stay inside circuits.
|
||||
|
||||
## Frontend Grid Modules
|
||||
|
||||
- `circuit-tree-editor.tsx` owns React state, API commands, undo/redo and drag-and-drop orchestration.
|
||||
- `circuit-grid-model.ts` owns column metadata, circuit/device cell ownership, value projection, formatting, numeric parsing and block sort values.
|
||||
- `circuit-grid-insertion.ts` resolves insertion intent and insertion sort positions.
|
||||
- `circuit-grid-safety.ts` resolves delete intent, BMK conflicts and cross-section move confirmation requirements.
|
||||
|
||||
The pure grid modules have no React state and are covered by focused unit tests. This keeps circuit/device ownership rules testable while the editor UI is split incrementally.
|
||||
|
||||
## Domain Model Overview
|
||||
|
||||
- `CircuitSection`
|
||||
|
||||
Reference in New Issue
Block a user