50c0c9b548
The gauge rendered as multiple black rings. Two causes: 1. recharts RadialBarChart draws each data entry as a CONCENTRIC RING, not an arc segment, so the 3 "track band" entries + value produced 4 nested rings. Render a single value arc over a neutral background track instead, colored by status, with the readout absolutely centered (replacing the -mt-12 hack). 2. The fills used hsl(var(--primary)) / hsl(var(--chart-1)) etc., but this project's Tailwind v4 theme (index.css) defines colors as --color-* holding full hex values (--color-primary: #4f8cff). So the references were doubly invalid (wrong name + hsl() wrapping a hex) -> invalid SVG fill defaults to black. Use var(--color-*) directly, with the semantically correct chart colors: ok=--color-chart-2 (green), warn=--color-chart-3 (amber), crit=--color-chart-4 (red). Also fix the same hsl(var(--x)) -> var(--color-x) bug in LineSeriesChart's tooltip contentStyle (popover/border/popover-foreground). The line stroke palette already used the correct var(--color-chart-N) form. 166/166 frontend tests pass; typecheck + ESLint clean.
1.2 KiB
1.2 KiB
frontend/src/widgets (index)
dir: frontend/src/widgets
role
Provides self-contained dashboard widget components for rendering various data sources (Alertmanager, backups, Jellyfin, Prometheus metrics, qBittorrent, SSH tasks, and static content) in a unified card layout.
parent
index: frontend/src/.pi-map.index.md map: frontend/src/.pi-map.md
children
- frontend/src/widgets/tests index: frontend/src/widgets/tests/.pi-map.index.md map: frontend/src/widgets/tests/.pi-map.md
files
- AlertmanagerAlertsWidget.tsx
- BackupsWidget.tsx
- JellyfinNowPlayingWidget.tsx
- JellyfinWidget.tsx
- MetricChartWidget.tsx
- MetricGaugeWidget.tsx
- MetricMeanWidget.tsx
- PrometheusMetricWidget.tsx
- QbittorrentActiveTorrentsWidget.tsx
- QbittorrentSpeedWidget.tsx
- QbittorrentTotalsWidget.tsx
- SshTaskWidget.tsx
- StaticWidget.tsx
- index.ts
links
index: frontend/src/widgets/.pi-map.index.md map: frontend/src/widgets/.pi-map.md
workflows
- change widgets behavior read: AlertmanagerAlertsWidget.tsx, BackupsWidget.tsx, JellyfinNowPlayingWidget.tsx
- explore widgets subdirectories index: frontend/src/widgets/tests/.pi-map.index.md