fix: keep vacuum routes pending until a floor is chosen

Issue: #441
User-Visible: yes
This commit is contained in:
Sergey Matyunin
2026-09-03 19:22:55 +00:00
committed by claude[bot]
parent 79e922203a
commit fa41d2981c
26 changed files with 901 additions and 506 deletions
@@ -1,125 +1,125 @@
{
"schema": 1,
"fingerprint": "657e45b11db7e7ff870131c04228933d27e226165848926d21fd2d5f25651aa9",
"fingerprint": "c53b73316a258130996655c414c72f311c57727d88a947b8ef0feaf9ab6d127a",
"entry": "houseplan-card.js",
"initialViewFiles": [
"houseplan-assets/houseplan-card-KiAYj10F.js",
"houseplan-assets/houseplan-card-DTTdyKSp.js",
"houseplan-card.js"
],
"initialViewGzipBytes": 292984,
"initialViewGzipBytes": 292981,
"lazyFiles": [
"houseplan-assets/backdrop-pick-BSlJmdKA.js",
"houseplan-assets/de-8ycErMrc.js",
"houseplan-assets/editor-Btgdn4cS.js",
"houseplan-assets/fr-DESFTmoo.js",
"houseplan-assets/houseplan-editor-runtime-BMOXcbvu.js",
"houseplan-assets/houseplan-onboarding-runtime-D0HESg_j.js"
"houseplan-assets/backdrop-pick-38iG-EgB.js",
"houseplan-assets/de-Bk5XCaFW.js",
"houseplan-assets/editor-DV9aaxh3.js",
"houseplan-assets/fr-Bc8GcNwg.js",
"houseplan-assets/houseplan-editor-runtime-Cv3Tj4ec.js",
"houseplan-assets/houseplan-onboarding-runtime-B0SCo751.js"
],
"lazyGzipBytes": 220425,
"lazyGzipBytes": 221159,
"lazyEditorFiles": [
"houseplan-assets/backdrop-pick-BSlJmdKA.js",
"houseplan-assets/editor-Btgdn4cS.js",
"houseplan-assets/houseplan-editor-runtime-BMOXcbvu.js"
"houseplan-assets/backdrop-pick-38iG-EgB.js",
"houseplan-assets/editor-DV9aaxh3.js",
"houseplan-assets/houseplan-editor-runtime-Cv3Tj4ec.js"
],
"lazyEditorGzipBytes": 164374,
"lazyEditorGzipBytes": 165116,
"lazyOnboardingFiles": [
"houseplan-assets/backdrop-pick-BSlJmdKA.js",
"houseplan-assets/houseplan-onboarding-runtime-D0HESg_j.js"
"houseplan-assets/backdrop-pick-38iG-EgB.js",
"houseplan-assets/houseplan-onboarding-runtime-B0SCo751.js"
],
"lazyOnboardingGzipBytes": 14238,
"lazyOnboardingGzipBytes": 14235,
"lazyLocaleFiles": [
"houseplan-assets/de-8ycErMrc.js",
"houseplan-assets/fr-DESFTmoo.js"
"houseplan-assets/de-Bk5XCaFW.js",
"houseplan-assets/fr-Bc8GcNwg.js"
],
"lazyLocaleGzipBytes": 49093,
"lazyLocaleGzipBytes": 49089,
"files": [
{
"path": "houseplan-assets/backdrop-pick-BSlJmdKA.js",
"sha256": "96c1bdff6d868047b7493712c8fe6c9bbae2b1746bfceaef9a4099b5fcd9a63a",
"path": "houseplan-assets/backdrop-pick-38iG-EgB.js",
"sha256": "418abed95e5fe5029e8e1b63cdb63fa7c334d6a5ba7673786363d596975ca2fb",
"rawBytes": 21418,
"gzipBytes": 7280,
"gzipBytes": 7281,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-KiAYj10F.js"
"houseplan-assets/houseplan-card-DTTdyKSp.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/de-8ycErMrc.js",
"sha256": "7ba3842af5b58f96a7ffec9b01937aa5d7219577dbb25259a6f33fd06d6d002c",
"path": "houseplan-assets/de-Bk5XCaFW.js",
"sha256": "26becc9124786aa6a0e221214c6019ff1d0d6e6c24ee3d387f063ca6aa4a616d",
"rawBytes": 82140,
"gzipBytes": 24815,
"gzipBytes": 24814,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/editor-Btgdn4cS.js",
"sha256": "e6c4ef572f15ca3e8418ee1872b55e3d0c85f2d33c25bcd2660687f2ac62360c",
"path": "houseplan-assets/editor-DV9aaxh3.js",
"sha256": "a62e2706d2f58371e5056aab0a4a96051493ae1441fa7b419e95058b8c34202a",
"rawBytes": 3826,
"gzipBytes": 1584,
"gzipBytes": 1583,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-KiAYj10F.js"
"houseplan-assets/houseplan-card-DTTdyKSp.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/fr-DESFTmoo.js",
"sha256": "2806c8942afed7e7cbf87b344605685b886dbcfbef059c8b78a0867745ca66aa",
"path": "houseplan-assets/fr-Bc8GcNwg.js",
"sha256": "e75de097700b0db364d2d3c0bca4a10f22343d17c9eaa6dbeba7a789e235af05",
"rawBytes": 84267,
"gzipBytes": 24278,
"gzipBytes": 24275,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-card-KiAYj10F.js",
"sha256": "939a6e9dcbb126cb53925d30c8a4193ddc301b419d9f14959b536fbbb78b861f",
"path": "houseplan-assets/houseplan-card-DTTdyKSp.js",
"sha256": "8f045ff75d013ccdab48546a218d9cbe15f2cdec038060cdf018c1915a68400c",
"rawBytes": 1039585,
"gzipBytes": 292186,
"gzipBytes": 292185,
"isEntry": false,
"imports": [],
"dynamicImports": [
"houseplan-assets/de-8ycErMrc.js",
"houseplan-assets/editor-Btgdn4cS.js",
"houseplan-assets/fr-DESFTmoo.js",
"houseplan-assets/houseplan-editor-runtime-BMOXcbvu.js",
"houseplan-assets/houseplan-onboarding-runtime-D0HESg_j.js"
"houseplan-assets/de-Bk5XCaFW.js",
"houseplan-assets/editor-DV9aaxh3.js",
"houseplan-assets/fr-Bc8GcNwg.js",
"houseplan-assets/houseplan-editor-runtime-Cv3Tj4ec.js",
"houseplan-assets/houseplan-onboarding-runtime-B0SCo751.js"
]
},
{
"path": "houseplan-assets/houseplan-editor-runtime-BMOXcbvu.js",
"sha256": "506cd2dc007e85e6b676e96bc0bbe37ac998f3289ec8ced749fd03bedf014db6",
"rawBytes": 592159,
"gzipBytes": 155510,
"path": "houseplan-assets/houseplan-editor-runtime-Cv3Tj4ec.js",
"sha256": "9ddf1cf2fcc3c446fea56579599cdd1104736e55f2404837be9064109dbc1f29",
"rawBytes": 595044,
"gzipBytes": 156252,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-BSlJmdKA.js",
"houseplan-assets/houseplan-card-KiAYj10F.js"
"houseplan-assets/backdrop-pick-38iG-EgB.js",
"houseplan-assets/houseplan-card-DTTdyKSp.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-onboarding-runtime-D0HESg_j.js",
"sha256": "49b2e0228b4c4af5743344552eca63821fd148ca3e5fa195a38fdb868a192f81",
"path": "houseplan-assets/houseplan-onboarding-runtime-B0SCo751.js",
"sha256": "a9e31ea033c1df4c50f28dc6ccd013a1a12335176c2ce358b1b7144c9c70e14c",
"rawBytes": 28088,
"gzipBytes": 6958,
"gzipBytes": 6954,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-BSlJmdKA.js",
"houseplan-assets/houseplan-card-KiAYj10F.js"
"houseplan-assets/backdrop-pick-38iG-EgB.js",
"houseplan-assets/houseplan-card-DTTdyKSp.js"
],
"dynamicImports": []
},
{
"path": "houseplan-card.js",
"sha256": "937b428bc4e8c0edab1ea83c5f026c895da89484810fe40731e28d0d33fca31d",
"sha256": "77de82b5156123bd48fa0ab2d385ee50404135c634f0208c1c6e453690cc6aca",
"rawBytes": 1183,
"gzipBytes": 798,
"gzipBytes": 796,
"isEntry": true,
"imports": [
"houseplan-assets/houseplan-card-KiAYj10F.js"
"houseplan-assets/houseplan-card-DTTdyKSp.js"
],
"dynamicImports": []
}
@@ -1,4 +1,4 @@
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="657e45b11db7e7ff870131c04228933d27e226165848926d21fd2d5f25651aa9";import{g as e,l as o,t,dm as s,A as a,dn as i,dp as l,dq as n,E as r,c}from"./houseplan-card-KiAYj10F.js";class h extends e{constructor(){super(...arguments),this._spaces=null,this._spacesLoading=!1,this._spacesAuthoritative=!1}setConfig(e){this._config=e}async _loadSpaces(){if(!this._spaces&&!this._spacesLoading&&this.hass){this._spacesLoading=!0;try{const e=await this.hass.callWS({type:"houseplan/config/get"});this._spaces=(e?.config?.spaces||[]).map(e=>({value:e.id,label:e.title||e.id})),this._spacesAuthoritative=!0}catch{this._spaces=[],this._spacesAuthoritative=!1}finally{this._spacesLoading=!1}}}get _lang(){return o(this.hass,this._config?.language)}get _floorToken(){const e=this._config?.floor;return"number"==typeof e?`__houseplan_yaml_floor_index__:${String(e)}`:null}get _formData(){const e={...this._config},o=this._floorToken;return o?e.floor=o:Object.prototype.hasOwnProperty.call(e,"floor")||(e.floor=""),e}get _schema(){const e=this._spaces||[],o=this._lang,a=[{value:"",label:t(o,"editor.floor_none")}],i=this._floorToken;i&&a.push({value:i,label:t(o,"editor.floor_index",{index:String(this._config?.floor)})});const l="string"==typeof this._config?.floor?this._config.floor:"";l&&!e.some(e=>e.value===l)&&a.push({value:l,label:l}),a.push(...e);const n="string"==typeof this._config?.default_floor?this._config.default_floor:"",r=[...e];return n&&!e.some(e=>e.value===n)&&r.unshift({value:n,label:n}),[{name:"title",selector:{text:{}}},{name:"floor",selector:{select:{mode:"dropdown",options:a}}},e.length?{name:"default_floor",selector:{select:{mode:"dropdown",options:r}}}:{name:"default_floor",selector:{text:{}}},{name:"language",selector:{select:{mode:"dropdown",options:s(t(o,"editor.lang_auto"),this._config?.language)}}},{name:"icon_size",selector:{number:{min:1,max:6,step:.1,mode:"box"}}},{name:"show_temperature",selector:{boolean:{}}},{name:"live_states",selector:{boolean:{}}},{name:"show_signal",selector:{boolean:{}}},{name:"kiosk",selector:{boolean:{}}},{name:"cycle",selector:{number:{min:0,max:3600,step:5,mode:"box"}}}]}render(){if(!this.hass||!this._config)return a;const e=i(this,l,o(this.hass,this._config.language));if("cold"===e)return n();if("warm"===e)return r;this._loadSpaces();const s=this._lang,h={title:t(s,"editor.title"),floor:t(s,"editor.floor"),default_floor:t(s,"editor.default_floor"),language:t(s,"editor.language"),icon_size:t(s,"editor.icon_size"),show_temperature:t(s,"editor.show_temperature"),live_states:t(s,"editor.live_states"),show_signal:t(s,"editor.show_signal"),kiosk:t(s,"editor.kiosk"),cycle:t(s,"editor.cycle")},f=this._schema,_=function(e,o,t){if(!t||null===o)return null;const s="string"==typeof e?.default_floor?e.default_floor:"";return!s||o.some(e=>e.value===s)?null:s}(this._config,this._spaces,this._spacesAuthoritative),d=e=>c`<ha-form
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="c53b73316a258130996655c414c72f311c57727d88a947b8ef0feaf9ab6d127a";import{k as e,l as o,t,dm as s,A as a,dn as i,dp as l,dq as n,E as r,c}from"./houseplan-card-DTTdyKSp.js";class h extends e{constructor(){super(...arguments),this._spaces=null,this._spacesLoading=!1,this._spacesAuthoritative=!1}setConfig(e){this._config=e}async _loadSpaces(){if(!this._spaces&&!this._spacesLoading&&this.hass){this._spacesLoading=!0;try{const e=await this.hass.callWS({type:"houseplan/config/get"});this._spaces=(e?.config?.spaces||[]).map(e=>({value:e.id,label:e.title||e.id})),this._spacesAuthoritative=!0}catch{this._spaces=[],this._spacesAuthoritative=!1}finally{this._spacesLoading=!1}}}get _lang(){return o(this.hass,this._config?.language)}get _floorToken(){const e=this._config?.floor;return"number"==typeof e?`__houseplan_yaml_floor_index__:${String(e)}`:null}get _formData(){const e={...this._config},o=this._floorToken;return o?e.floor=o:Object.prototype.hasOwnProperty.call(e,"floor")||(e.floor=""),e}get _schema(){const e=this._spaces||[],o=this._lang,a=[{value:"",label:t(o,"editor.floor_none")}],i=this._floorToken;i&&a.push({value:i,label:t(o,"editor.floor_index",{index:String(this._config?.floor)})});const l="string"==typeof this._config?.floor?this._config.floor:"";l&&!e.some(e=>e.value===l)&&a.push({value:l,label:l}),a.push(...e);const n="string"==typeof this._config?.default_floor?this._config.default_floor:"",r=[...e];return n&&!e.some(e=>e.value===n)&&r.unshift({value:n,label:n}),[{name:"title",selector:{text:{}}},{name:"floor",selector:{select:{mode:"dropdown",options:a}}},e.length?{name:"default_floor",selector:{select:{mode:"dropdown",options:r}}}:{name:"default_floor",selector:{text:{}}},{name:"language",selector:{select:{mode:"dropdown",options:s(t(o,"editor.lang_auto"),this._config?.language)}}},{name:"icon_size",selector:{number:{min:1,max:6,step:.1,mode:"box"}}},{name:"show_temperature",selector:{boolean:{}}},{name:"live_states",selector:{boolean:{}}},{name:"show_signal",selector:{boolean:{}}},{name:"kiosk",selector:{boolean:{}}},{name:"cycle",selector:{number:{min:0,max:3600,step:5,mode:"box"}}}]}render(){if(!this.hass||!this._config)return a;const e=i(this,l,o(this.hass,this._config.language));if("cold"===e)return n();if("warm"===e)return r;this._loadSpaces();const s=this._lang,h={title:t(s,"editor.title"),floor:t(s,"editor.floor"),default_floor:t(s,"editor.default_floor"),language:t(s,"editor.language"),icon_size:t(s,"editor.icon_size"),show_temperature:t(s,"editor.show_temperature"),live_states:t(s,"editor.live_states"),show_signal:t(s,"editor.show_signal"),kiosk:t(s,"editor.kiosk"),cycle:t(s,"editor.cycle")},f=this._schema,_=function(e,o,t){if(!t||null===o)return null;const s="string"==typeof e?.default_floor?e.default_floor:"";return!s||o.some(e=>e.value===s)?null:s}(this._config,this._spaces,this._spacesAuthoritative),d=e=>c`<ha-form
.hass=${this.hass}
.data=${this._formData}
.schema=${e}
@@ -1 +1 @@
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="657e45b11db7e7ff870131c04228933d27e226165848926d21fd2d5f25651aa9";try{await import("./houseplan-assets/houseplan-card-KiAYj10F.js")}catch(e){if(!customElements.get("houseplan-card")){const l=String(navigator.language||"en").toLowerCase();const m=l.startsWith("ru")?"House Plan обновился — перезагрузите страницу (Ctrl+F5).":l.startsWith("de")?"House Plan wurde aktualisiert — bitte laden Sie die Seite neu (Strg+F5).":l.startsWith("fr")?"House Plan a été mis à jour — veuillez recharger la page (Ctrl+F5).":"House Plan was updated — please reload the page (Ctrl+F5).";customElements.define("houseplan-card",class extends HTMLElement{setConfig(){}getCardSize(){return 1}connectedCallback(){this.style.cssText="display:block;box-sizing:border-box;padding:16px;border:1px solid var(--divider-color,#e0e0e0);border-radius:var(--ha-card-border-radius,12px);background:var(--card-background-color,#fff);color:var(--primary-text-color,#212121);font:14px/1.4 var(--paper-font-body1_-_font-family,sans-serif)";this.textContent=m}})}console.error("[houseplan] stale entry: the main chunk is unavailable",e)}
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="c53b73316a258130996655c414c72f311c57727d88a947b8ef0feaf9ab6d127a";try{await import("./houseplan-assets/houseplan-card-DTTdyKSp.js")}catch(e){if(!customElements.get("houseplan-card")){const l=String(navigator.language||"en").toLowerCase();const m=l.startsWith("ru")?"House Plan обновился — перезагрузите страницу (Ctrl+F5).":l.startsWith("de")?"House Plan wurde aktualisiert — bitte laden Sie die Seite neu (Strg+F5).":l.startsWith("fr")?"House Plan a été mis à jour — veuillez recharger la page (Ctrl+F5).":"House Plan was updated — please reload the page (Ctrl+F5).";customElements.define("houseplan-card",class extends HTMLElement{setConfig(){}getCardSize(){return 1}connectedCallback(){this.style.cssText="display:block;box-sizing:border-box;padding:16px;border:1px solid var(--divider-color,#e0e0e0);border-radius:var(--ha-card-border-radius,12px);background:var(--card-background-color,#fff);color:var(--primary-text-color,#212121);font:14px/1.4 var(--paper-font-body1_-_font-family,sans-serif)";this.textContent=m}})}console.error("[houseplan] stale entry: the main chunk is unavailable",e)}