mirror of
https://github.com/Matysh/houseplan-card
synced 2026-10-05 14:19:04 +00:00
feat: add per-room temperature thresholds
Issue: #487 User-Visible: yes
This commit is contained in:
@@ -1421,6 +1421,12 @@ Full View and hosted Static use the same resolver and bounded active render
|
||||
snapshot, so a state tick cannot update a temperature fill through a different
|
||||
membership rule.
|
||||
|
||||
Per-room comfort bounds are resolved by `roomTempRangeOf()`: each absent or
|
||||
invalid room side independently inherits the space side, then the effective
|
||||
pair is normalised. Both full and static renderers pass that one result into
|
||||
`resolveEffectiveRoomFill()`, keeping room polygons and thick-opening tunnels
|
||||
in the same temperature band without another climate aggregation pass.
|
||||
|
||||
**File uploads go over HTTP** (not WS, which has a message-size limit): `POST /api/houseplan/upload`
|
||||
(multipart: marker_id + file), HomeAssistantView, requires_auth. Served from `/houseplan_files/files/`.
|
||||
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
before the element is defined and sizes itself from the viewport instead of
|
||||
its height-less container, so the page is no longer blank with a 0 px stage
|
||||
([#488](https://github.com/Matysh/houseplan-card/issues/488)).
|
||||
- Each room can now override the lower and upper comfort-temperature bounds.
|
||||
Either blank field independently inherits its space value; the setting only
|
||||
affects the room and opening-tunnel temperature fill
|
||||
([#487](https://github.com/Matysh/houseplan-card/issues/487)).
|
||||
|
||||
## v1.73.0-beta.5 — 2026-09-08
|
||||
|
||||
|
||||
@@ -13,6 +13,10 @@
|
||||
определения элемента, и берёт высоту от viewport, а не от контейнера без
|
||||
высоты — страница больше не пустая со стейджем 0 px
|
||||
([#488](https://github.com/Matysh/houseplan-card/issues/488)).
|
||||
- В настройках отдельной комнаты теперь можно задать собственные нижнюю и
|
||||
верхнюю границы комфортной температуры. Каждая пустая граница независимо
|
||||
наследуется от пространства; настройка меняет только температурную заливку
|
||||
комнаты и проёмов ([#487](https://github.com/Matysh/houseplan-card/issues/487)).
|
||||
|
||||
## v1.73.0-beta.5 — 2026-09-08
|
||||
|
||||
|
||||
@@ -525,6 +525,15 @@ the Glow base. `none` remains accepted by the model and exposed at room level,
|
||||
where it is still required to suppress an inherited
|
||||
LQI/light/temperature/custom fill for one room.
|
||||
|
||||
Rooms may also store optional `settings.temp_min` and `settings.temp_max`
|
||||
finite numbers. Each absent or explicit `null` side independently inherits
|
||||
`space.settings.temp_min` / `temp_max` (and then the product default). The
|
||||
effective pair is sorted only at the read boundary, so a partial override is
|
||||
not materialised merely because its inherited counterpart crosses it. Current
|
||||
writers sort two explicitly entered values and omit cleared keys. The fields
|
||||
affect only temperature room/tunnel fills. Older cards ignore them and may
|
||||
erase them if they rebuild that room's settings after a downgrade.
|
||||
|
||||
## Per-marker light role and Glow appearance
|
||||
|
||||
`marker.is_light` is tri-state. Missing/null means automatic device-role
|
||||
|
||||
@@ -819,6 +819,12 @@ Plan, Background, preview and the read-only static card add no tab stop.
|
||||
Space fill modes include user colour, temperature comfort range and LQI. Room
|
||||
settings may override the space. Glow is independent from the base fill.
|
||||
|
||||
When a room effectively uses the temperature fill, its settings show optional
|
||||
lower and upper comfort bounds. Each blank field independently inherits the
|
||||
matching space bound, and **As the space** clears both overrides. The range
|
||||
changes only the room floor and opening-tunnel fill; room-card and tooltip
|
||||
temperature values are unchanged.
|
||||
|
||||
A light source may come from automatic classification, an explicit Always
|
||||
role, or a controlled source group. Walls, partitions and columns occlude Glow;
|
||||
open passages transmit it. When a configured light source disappears or loses
|
||||
|
||||
@@ -1338,9 +1338,16 @@ Power=`off`/`unavailable` подавляет даже устаревший ак
|
||||
|---|---|
|
||||
| Общие настройки | Цвет и прозрачность состояний данных, настройки Glow вместе с его радиусом, цвет стен |
|
||||
| Пространство | Режим заливки, свой цвет и прозрачность, независимый переключатель Glow, температурные границы, показ LQI, фон |
|
||||
| Комната | Наследовать или явно выбрать Нет/LQI/Свет/Температуру/свой цвет; свой цвет наследуется от пространства и может быть сброшен; пока наследует Glow пространства |
|
||||
| Комната | Наследовать или явно выбрать Нет/LQI/Свет/Температуру/свой цвет; задать собственные нижнюю и верхнюю границы температуры; свой цвет и каждая пустая температурная граница наследуются от пространства; пока наследует Glow пространства |
|
||||
| Устройство | Выбрать Авто/Всегда/Никогда для собственной световой роли, цвет и яркость Glow, радиус свечения |
|
||||
|
||||
При температурной заливке в настройках комнаты появляется диапазон комфорта.
|
||||
Можно переопределить обе границы или только одну: пустое поле всегда следует
|
||||
соответствующей границе пространства. Кнопка «Как у пространства» очищает оба
|
||||
переопределения. Эти значения меняют только цвет пола комнаты и продолжение
|
||||
этой заливки внутри толстых проёмов — температура в карточке и подсказке
|
||||
остаётся прежней.
|
||||
|
||||
### Что считается светом
|
||||
|
||||
| Источник | Заливка «Свет» | Световое пятно Glow | Жёлтая подложка устройства |
|
||||
|
||||
Reference in New Issue
Block a user