mirror of
https://github.com/Matysh/houseplan-card
synced 2026-07-31 08:28:31 +00:00
fix v1.7.2: mobile 'configuration error' on cold start — register card as Lovelace resource (awaited before render) instead of only add_extra_js_url (raced); idempotent version update + YAML-mode fallback; _loadFromServer retries (up to 8 hass ticks) so card doesn't stick on onboarding if WS not ready yet
This commit is contained in:
@@ -28,9 +28,11 @@ houseplan-card/
|
||||
|
||||
## Ключевые решения
|
||||
|
||||
1. **Один репозиторий — интеграция + карточка.** Интеграция сама раздаёт JS
|
||||
(`hass.http.async_register_static_paths` + `frontend.add_extra_js_url`), пользователю не
|
||||
нужно прописывать ресурс Lovelace. Паттерн как у browser_mod/xiaomi_vacuum_map.
|
||||
1. **Один репозиторий — интеграция + карточка.** Интеграция раздаёт JS
|
||||
(`async_register_static_paths`) и регистрирует его как **Lovelace-ресурс** (module) —
|
||||
фронтенд дожидается ресурсов перед рендером, поэтому карточка работает и на холодном старте
|
||||
мобильного приложения (в отличие от `add_extra_js_url`, который остаётся фолбэком для
|
||||
YAML-режима). Пользователю не нужно вручную добавлять ресурс.
|
||||
2. **Раскладка иконок — на сервере.** `helpers.storage.Store(1, "houseplan.layout")` →
|
||||
`.storage/houseplan.layout`. Карточка читает/пишет через `hass.callWS`
|
||||
(`houseplan/layout/get|set|update`). Fallback — localStorage (если интеграции нет).
|
||||
|
||||
Reference in New Issue
Block a user