Outsource custom GUI class components to dashgui library

Move reusable GUI primitives (PanelTile, EditablePanelTile, base Tile,
ElevatedPill, SingleLineTextEdit) into the shared dashgui package and
consume them via a file: dependency. EditablePanelTile now accepts an
onError prop so error notification stays app-side.
This commit is contained in:
seb
2026-08-08 16:17:16 +02:00
parent 2cbe5dabb2
commit 57fff72f12
38 changed files with 80 additions and 759 deletions

View File

@@ -27,6 +27,19 @@ To test the full PWA precache (production build + preview, no HMR), use
Dashback must be running and your Google account must be authorized on the
backend.
## Shared GUI library (`dashgui`)
Reusable custom GUI class components live in the **`dashgui`** package
(`../dashgui`), installed here as a `file:` dependency (npm workspace symlink)
so source imports are reflected instantly.
- `dashgui/panels` — `PanelTile`, `PanelTileGrid`, `EditablePanelTile`, layout helpers
- `dashgui/tiles` — base `Tile` (extended by `src/components/tiles/*`)
- `dashgui/SingleLineTextEdit`, `dashgui/ElevatedPill`
See `../dashgui/README.md` for details and the dev/mock-page harness used for
future test cases.
## Auth flow
1. On boot the app calls `GET /api/auth/me` with `credentials: 'include'`.