feat: HA light target live color preview — per-entity swatches via WebSocket
Lint & Test / test (push) Successful in 1m24s

- Cache per-entity colors in HALightTargetProcessor._update_lights()
- Broadcast colors_update to WS clients at target's update_rate
- WS endpoint: /api/v1/output-targets/{target_id}/ha-light/ws
- Frontend: connect WS when target runs, update swatch colors live
- Card shows colored boxes per mapped entity with entity name labels
This commit is contained in:
2026-03-28 18:28:16 +03:00
parent 381ee75371
commit 40751fecb7
31 changed files with 6245 additions and 8351 deletions
@@ -1553,6 +1553,35 @@
height: 16px;
}
/* HA Light color swatches */
.ha-light-swatches {
display: flex;
flex-wrap: wrap;
gap: 6px;
margin-top: 8px;
}
.ha-light-swatch {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 3px 8px;
border-radius: 4px;
background: var(--bg-color);
border: 1px solid var(--border-color);
font-size: 0.75rem;
}
.ha-light-swatch .swatch-color {
display: inline-block;
width: 16px;
height: 16px;
border-radius: 3px;
border: 1px solid rgba(255,255,255,0.2);
transition: background 0.3s;
}
.ha-light-swatch .swatch-label {
opacity: 0.8;
}
.btn-remove-mapping:hover {
opacity: 1;
}