refactor: merge DashboardView and GridStackView into a single dashboard (#19) #31

Merged
pitfriedrich merged 1 commits from ai/issue-19-merge-dashboard into main 2026-07-28 17:15:45 +00:00
Collaborator

Closes #19

DashboardView and GridStackView rendered the same three charts from the same hardcoded data — every chart factory method existed twice. The dashboard is now the grid-based variant at @Route("").

Changes

  • GridStackView deleted. Its GridStackLayout, toolbar (add widget / reset layout), status span and chart factories moved into DashboardView. Widgets stay draggable/resizable and the layout still restores from localStorage.
  • Point-click notifications kept: the old DashboardView showed a Notification on chart point/slice click; the listeners moved over so that behaviour isn't lost.
  • One sizing strategy: charts fill their grid item (width: 100% / height: 100%); the fixed 400px is gone.
  • MainLayout: one dashboard SideNavItem, the nav.gridstack entry is gone. nav.gridstack and page.gridstack removed from all three bundles (de/en/es); the remaining gridstack.* and card.gridstackHint keys are still used by the toolbar and hint widget.
  • Storage key gridstack-demodashboard. A layout saved under the old route is not reused — the merged dashboard starts from the default positions once. Fa.GRID is left in the icon enum, unused.
  • GridStackViewTestDashboardViewTest (git-tracked rename, same five cases against the new route) plus a new case asserting the line/bar/pie charts render.

Tests

./mvnw testTests run: 11, Failures: 0, Errors: 0, Skipped: 0 (DashboardViewTest 6, FormViewPlaywrightTest 5).

🤖 Generated with Claude Code

https://claude.ai/code/session_0124BiJikbhbiEsNfJxdWM69

Closes #19 `DashboardView` and `GridStackView` rendered the same three charts from the same hardcoded data — every chart factory method existed twice. The dashboard is now the grid-based variant at `@Route("")`. ## Changes - **`GridStackView` deleted.** Its `GridStackLayout`, toolbar (add widget / reset layout), status span and chart factories moved into `DashboardView`. Widgets stay draggable/resizable and the layout still restores from `localStorage`. - **Point-click notifications kept**: the old `DashboardView` showed a `Notification` on chart point/slice click; the listeners moved over so that behaviour isn't lost. - **One sizing strategy**: charts fill their grid item (`width: 100%` / `height: 100%`); the fixed `400px` is gone. - **`MainLayout`**: one dashboard `SideNavItem`, the `nav.gridstack` entry is gone. `nav.gridstack` and `page.gridstack` removed from all three bundles (de/en/es); the remaining `gridstack.*` and `card.gridstackHint` keys are still used by the toolbar and hint widget. - **Storage key `gridstack-demo` → `dashboard`.** A layout saved under the old route is not reused — the merged dashboard starts from the default positions once. `Fa.GRID` is left in the icon enum, unused. - **`GridStackViewTest` → `DashboardViewTest`** (git-tracked rename, same five cases against the new route) plus a new case asserting the line/bar/pie charts render. ## Tests `./mvnw test` → `Tests run: 11, Failures: 0, Errors: 0, Skipped: 0` (`DashboardViewTest` 6, `FormViewPlaywrightTest` 5). 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_0124BiJikbhbiEsNfJxdWM69
claude-bot added 1 commit 2026-07-28 17:13:08 +00:00
fix: merge GridStackView into DashboardView (#19)
CI / build-and-test (pull_request) Successful in 2m22s
487c206411
DashboardView and GridStackView rendered the same three charts from the
same hardcoded data, so every chart factory method existed twice. The
dashboard is now the GridStackLayout variant at @Route(""):

- GridStackView deleted, its grid/toolbar/chart factories moved into
  DashboardView, which keeps the point-click notifications the old
  dashboard had.
- Charts size to their widget (100%/100%) instead of a fixed 400px.
- MainLayout has one dashboard entry; nav.gridstack/page.gridstack keys
  dropped from all three bundles.
- Storage key is "dashboard" (was "gridstack-demo"), so a saved layout
  from the old route is not reused.
- GridStackViewTest renamed to DashboardViewTest, plus a test asserting
  the three charts render.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0124BiJikbhbiEsNfJxdWM69
pitfriedrich merged commit 1b846751dd into main 2026-07-28 17:15:45 +00:00
pitfriedrich deleted branch ai/issue-19-merge-dashboard 2026-07-28 17:15:45 +00:00
Sign in to join this conversation.