feat(260924-i8v): Proxmox-Kachel als Durchstich mit Balken und Zusammenfassung

- Typ proxmox am Ende von WIDGET_TYPES, WIDGET_MODULE_SLUGS = { proxmox: 'proxmox' }
- gemeinsame Statusteile (proxmox-status, HealthBar, status-styles) nach components/proxmox/
- HealthBar variant compact: 6 px, ohne Legende, aria-hidden
- Registry 3/4/8/8, Katalog-/Registry-/API-Tests auf die erste Modul-Kachel umgestellt
- ProxmoxWidget liest nur listServers, zeigt Lade-, Leer-, Fehlerzustand

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-24 13:24:51 +02:00
parent 8bfa4fc467
commit a906c6705d
19 changed files with 556 additions and 69 deletions
+8 -4
View File
@@ -104,6 +104,7 @@ export const WIDGET_TYPES = [
'stopwatch',
'picture-frame',
'xframe',
'proxmox',
] as const;
export type WidgetType = (typeof WIDGET_TYPES)[number];
@@ -114,8 +115,11 @@ export type WidgetType = (typeof WIDGET_TYPES)[number];
* duerfen — im Katalog (Komfort, `visibleWidgetTypes`) und verbindlich
* serverseitig in `DashboardService.getWidgets` (fail-closed).
*
* Heute bewusst leer: alle neun Kacheln sind Plattform-Kacheln ohne
* Modulbezug. Die erste modulgebundene Kachel (Proxmox) traegt hier ihren
* Slug ein.
* Die neun Kacheln von vor quick-260924-i8v sind Plattform-Kacheln ohne
* Modulbezug. Proxmox ist die erste modulgebundene Kachel; ihr Slug ist
* derselbe wie `@UseModule('proxmox')` im Controller und `slug: 'proxmox'`
* in `proxmox.seed.ts`.
*/
export const WIDGET_MODULE_SLUGS: Partial<Record<WidgetType, string>> = {};
export const WIDGET_MODULE_SLUGS: Partial<Record<WidgetType, string>> = {
proxmox: 'proxmox',
};