test: harden marker rollback review gates

Issue: #442
User-Visible: no
This commit is contained in:
Sergey Matyunin
2026-09-04 00:21:06 +03:00
parent fcd4e3ddfe
commit f9ac1eab35
21 changed files with 154 additions and 152 deletions
@@ -1,125 +1,125 @@
{
"schema": 1,
"fingerprint": "4e8e80e2c125257ca4ae9222e54a57b88f14757c520801bf6c28ebb62c8281fa",
"fingerprint": "56c4f193c6899f80181491944c9d6679698be4658a0ed5ba54dc08d1409538e3",
"entry": "houseplan-card.js",
"initialViewFiles": [
"houseplan-assets/houseplan-card-CheE6i9L.js",
"houseplan-assets/houseplan-card-BYuSDJH2.js",
"houseplan-card.js"
],
"initialViewGzipBytes": 293148,
"initialViewGzipBytes": 293163,
"lazyFiles": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/de-CtdCgGNT.js",
"houseplan-assets/editor-a0TiMYLK.js",
"houseplan-assets/fr-C_YoglnG.js",
"houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js",
"houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/de-CF711iTL.js",
"houseplan-assets/editor-DBDu1fmS.js",
"houseplan-assets/fr-A4-MjeBb.js",
"houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js",
"houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js"
],
"lazyGzipBytes": 222077,
"lazyGzipBytes": 222109,
"lazyEditorFiles": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/editor-a0TiMYLK.js",
"houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/editor-DBDu1fmS.js",
"houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js"
],
"lazyEditorGzipBytes": 166046,
"lazyEditorGzipBytes": 166061,
"lazyOnboardingFiles": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js"
],
"lazyOnboardingGzipBytes": 14231,
"lazyOnboardingGzipBytes": 14241,
"lazyLocaleFiles": [
"houseplan-assets/de-CtdCgGNT.js",
"houseplan-assets/fr-C_YoglnG.js"
"houseplan-assets/de-CF711iTL.js",
"houseplan-assets/fr-A4-MjeBb.js"
],
"lazyLocaleGzipBytes": 49078,
"lazyLocaleGzipBytes": 49090,
"files": [
{
"path": "houseplan-assets/backdrop-pick-D2rfOCFq.js",
"sha256": "bf2fc78b96e1f99e347924dd5eee54b3406bb6a78639301fd79b4d56e1efd251",
"path": "houseplan-assets/backdrop-pick-oWJolMYh.js",
"sha256": "77bedfa35c239b51d4395faff3decd94de86ab24d16e35746ea592696b6eeba2",
"rawBytes": 21418,
"gzipBytes": 7278,
"gzipBytes": 7283,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/de-CtdCgGNT.js",
"sha256": "6a52b552d343d8f969997904d7d3b8146d699ef87fa5d3eed506f3cec6a42a3a",
"path": "houseplan-assets/de-CF711iTL.js",
"sha256": "fc710917dd87b57c5d2bba9b636a28473373540d02348a4175fee903771fb6ec",
"rawBytes": 82140,
"gzipBytes": 24808,
"gzipBytes": 24814,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/editor-a0TiMYLK.js",
"sha256": "00980a861d57c8c31544ea828308fd7746380633134d29f4dddeb7d32e418669",
"path": "houseplan-assets/editor-DBDu1fmS.js",
"sha256": "5e321ab61ddb1ac20c3911c9e82e8ddc6a62404d5d8dbca6780db37cc6ff0c98",
"rawBytes": 3826,
"gzipBytes": 1581,
"gzipBytes": 1585,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/fr-C_YoglnG.js",
"sha256": "61fd6f6b50ae250f8d95e6b893d4973354927dd0920044e67ea09bfbbafbfa8f",
"path": "houseplan-assets/fr-A4-MjeBb.js",
"sha256": "d247900cdb0bdd2988b3f601bb08e7182c54c2ea05918a8d8edbd6cb5fdc8a70",
"rawBytes": 84267,
"gzipBytes": 24270,
"gzipBytes": 24276,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-card-CheE6i9L.js",
"sha256": "f3069dacc6e4c6ae46bec78b957748f21053d573f7c80c327787ec8a68e3d6a9",
"path": "houseplan-assets/houseplan-card-BYuSDJH2.js",
"sha256": "f39bf9406326084842e9819c4eb8591cee812635e7b78c25809a72dc8f7f5373",
"rawBytes": 1040585,
"gzipBytes": 292354,
"gzipBytes": 292365,
"isEntry": false,
"imports": [],
"dynamicImports": [
"houseplan-assets/de-CtdCgGNT.js",
"houseplan-assets/editor-a0TiMYLK.js",
"houseplan-assets/fr-C_YoglnG.js",
"houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js",
"houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js"
"houseplan-assets/de-CF711iTL.js",
"houseplan-assets/editor-DBDu1fmS.js",
"houseplan-assets/fr-A4-MjeBb.js",
"houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js",
"houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js"
]
},
{
"path": "houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js",
"sha256": "7cc4ee224f6efbd9d16dd8ff1dd00a87b8d566dec444272265f02dea0ebd95a3",
"path": "houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js",
"sha256": "c0df87b7ae1657caa84c811f8efc016c0063d5a17221e221029b00176f5dc466",
"rawBytes": 597836,
"gzipBytes": 157187,
"gzipBytes": 157193,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js",
"sha256": "4f2c09b2688fbc967913c8f1166d3f9515a1dc82c9debe82be4bffae707f28e4",
"path": "houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js",
"sha256": "e7ce402a46b4f03687f86ae010905d4d75b5b972e7784a1e34b4fd36c463c117",
"rawBytes": 28088,
"gzipBytes": 6953,
"gzipBytes": 6958,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-card.js",
"sha256": "821870c8e6cba7a01d630b5a2a412f5d76d4afc639c3eba926b13b41f27508c2",
"sha256": "cf7f4bd0b7bd554d86d54119c7367b553e9f5d8272ee2e95b48469c169e25928",
"rawBytes": 1183,
"gzipBytes": 794,
"gzipBytes": 798,
"isEntry": true,
"imports": [
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
}
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="4e8e80e2c125257ca4ae9222e54a57b88f14757c520801bf6c28ebb62c8281fa";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-CheE6i9L.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__="56c4f193c6899f80181491944c9d6679698be4658a0ed5ba54dc08d1409538e3";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-BYuSDJH2.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}
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="4e8e80e2c125257ca4ae9222e54a57b88f14757c520801bf6c28ebb62c8281fa";try{await import("./houseplan-assets/houseplan-card-CheE6i9L.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__="56c4f193c6899f80181491944c9d6679698be4658a0ed5ba54dc08d1409538e3";try{await import("./houseplan-assets/houseplan-card-BYuSDJH2.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)}
+55 -55
View File
@@ -1,125 +1,125 @@
{
"schema": 1,
"fingerprint": "4e8e80e2c125257ca4ae9222e54a57b88f14757c520801bf6c28ebb62c8281fa",
"fingerprint": "56c4f193c6899f80181491944c9d6679698be4658a0ed5ba54dc08d1409538e3",
"entry": "houseplan-card.js",
"initialViewFiles": [
"houseplan-assets/houseplan-card-CheE6i9L.js",
"houseplan-assets/houseplan-card-BYuSDJH2.js",
"houseplan-card.js"
],
"initialViewGzipBytes": 293148,
"initialViewGzipBytes": 293163,
"lazyFiles": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/de-CtdCgGNT.js",
"houseplan-assets/editor-a0TiMYLK.js",
"houseplan-assets/fr-C_YoglnG.js",
"houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js",
"houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/de-CF711iTL.js",
"houseplan-assets/editor-DBDu1fmS.js",
"houseplan-assets/fr-A4-MjeBb.js",
"houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js",
"houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js"
],
"lazyGzipBytes": 222077,
"lazyGzipBytes": 222109,
"lazyEditorFiles": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/editor-a0TiMYLK.js",
"houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/editor-DBDu1fmS.js",
"houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js"
],
"lazyEditorGzipBytes": 166046,
"lazyEditorGzipBytes": 166061,
"lazyOnboardingFiles": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js"
],
"lazyOnboardingGzipBytes": 14231,
"lazyOnboardingGzipBytes": 14241,
"lazyLocaleFiles": [
"houseplan-assets/de-CtdCgGNT.js",
"houseplan-assets/fr-C_YoglnG.js"
"houseplan-assets/de-CF711iTL.js",
"houseplan-assets/fr-A4-MjeBb.js"
],
"lazyLocaleGzipBytes": 49078,
"lazyLocaleGzipBytes": 49090,
"files": [
{
"path": "houseplan-assets/backdrop-pick-D2rfOCFq.js",
"sha256": "bf2fc78b96e1f99e347924dd5eee54b3406bb6a78639301fd79b4d56e1efd251",
"path": "houseplan-assets/backdrop-pick-oWJolMYh.js",
"sha256": "77bedfa35c239b51d4395faff3decd94de86ab24d16e35746ea592696b6eeba2",
"rawBytes": 21418,
"gzipBytes": 7278,
"gzipBytes": 7283,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/de-CtdCgGNT.js",
"sha256": "6a52b552d343d8f969997904d7d3b8146d699ef87fa5d3eed506f3cec6a42a3a",
"path": "houseplan-assets/de-CF711iTL.js",
"sha256": "fc710917dd87b57c5d2bba9b636a28473373540d02348a4175fee903771fb6ec",
"rawBytes": 82140,
"gzipBytes": 24808,
"gzipBytes": 24814,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/editor-a0TiMYLK.js",
"sha256": "00980a861d57c8c31544ea828308fd7746380633134d29f4dddeb7d32e418669",
"path": "houseplan-assets/editor-DBDu1fmS.js",
"sha256": "5e321ab61ddb1ac20c3911c9e82e8ddc6a62404d5d8dbca6780db37cc6ff0c98",
"rawBytes": 3826,
"gzipBytes": 1581,
"gzipBytes": 1585,
"isEntry": false,
"imports": [
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/fr-C_YoglnG.js",
"sha256": "61fd6f6b50ae250f8d95e6b893d4973354927dd0920044e67ea09bfbbafbfa8f",
"path": "houseplan-assets/fr-A4-MjeBb.js",
"sha256": "d247900cdb0bdd2988b3f601bb08e7182c54c2ea05918a8d8edbd6cb5fdc8a70",
"rawBytes": 84267,
"gzipBytes": 24270,
"gzipBytes": 24276,
"isEntry": false,
"imports": [],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-card-CheE6i9L.js",
"sha256": "f3069dacc6e4c6ae46bec78b957748f21053d573f7c80c327787ec8a68e3d6a9",
"path": "houseplan-assets/houseplan-card-BYuSDJH2.js",
"sha256": "f39bf9406326084842e9819c4eb8591cee812635e7b78c25809a72dc8f7f5373",
"rawBytes": 1040585,
"gzipBytes": 292354,
"gzipBytes": 292365,
"isEntry": false,
"imports": [],
"dynamicImports": [
"houseplan-assets/de-CtdCgGNT.js",
"houseplan-assets/editor-a0TiMYLK.js",
"houseplan-assets/fr-C_YoglnG.js",
"houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js",
"houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js"
"houseplan-assets/de-CF711iTL.js",
"houseplan-assets/editor-DBDu1fmS.js",
"houseplan-assets/fr-A4-MjeBb.js",
"houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js",
"houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js"
]
},
{
"path": "houseplan-assets/houseplan-editor-runtime-BFZoQ3uF.js",
"sha256": "7cc4ee224f6efbd9d16dd8ff1dd00a87b8d566dec444272265f02dea0ebd95a3",
"path": "houseplan-assets/houseplan-editor-runtime-B9vxxIYH.js",
"sha256": "c0df87b7ae1657caa84c811f8efc016c0063d5a17221e221029b00176f5dc466",
"rawBytes": 597836,
"gzipBytes": 157187,
"gzipBytes": 157193,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-assets/houseplan-onboarding-runtime-z8tmcLTE.js",
"sha256": "4f2c09b2688fbc967913c8f1166d3f9515a1dc82c9debe82be4bffae707f28e4",
"path": "houseplan-assets/houseplan-onboarding-runtime-2O6rGYyJ.js",
"sha256": "e7ce402a46b4f03687f86ae010905d4d75b5b972e7784a1e34b4fd36c463c117",
"rawBytes": 28088,
"gzipBytes": 6953,
"gzipBytes": 6958,
"isEntry": false,
"imports": [
"houseplan-assets/backdrop-pick-D2rfOCFq.js",
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/backdrop-pick-oWJolMYh.js",
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
},
{
"path": "houseplan-card.js",
"sha256": "821870c8e6cba7a01d630b5a2a412f5d76d4afc639c3eba926b13b41f27508c2",
"sha256": "cf7f4bd0b7bd554d86d54119c7367b553e9f5d8272ee2e95b48469c169e25928",
"rawBytes": 1183,
"gzipBytes": 794,
"gzipBytes": 798,
"isEntry": true,
"imports": [
"houseplan-assets/houseplan-card-CheE6i9L.js"
"houseplan-assets/houseplan-card-BYuSDJH2.js"
],
"dynamicImports": []
}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="4e8e80e2c125257ca4ae9222e54a57b88f14757c520801bf6c28ebb62c8281fa";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-CheE6i9L.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__="56c4f193c6899f80181491944c9d6679698be4658a0ed5ba54dc08d1409538e3";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-BYuSDJH2.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}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1 +1 @@
globalThis.__HOUSEPLAN_BUILD_FINGERPRINT__="4e8e80e2c125257ca4ae9222e54a57b88f14757c520801bf6c28ebb62c8281fa";try{await import("./houseplan-assets/houseplan-card-CheE6i9L.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__="56c4f193c6899f80181491944c9d6679698be4658a0ed5ba54dc08d1409538e3";try{await import("./houseplan-assets/houseplan-card-BYuSDJH2.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)}
+4 -2
View File
@@ -5397,8 +5397,10 @@ const MUTANT_DEFINITIONS = [
+ 'restore the marker that the server already accepted (#442 AC3)',
patches: [{
file: 'src/houseplan-editor-runtime.ts',
find: ' configAccepted = true;\n if (newPos) {',
replace: ' if (newPos) {',
find: ' if (!configAccepted && attempt) {\n'
+ ' rollbackOptimistic(this.host, attempt, contentFingerprint);',
replace: ' if (attempt) {\n'
+ ' this.host._serverCfg = attempt.previous;',
}],
},
{
+1 -1
View File
@@ -11931,7 +11931,7 @@ export class HouseplanCard extends LitElement {
${this._vacFit ? html`<div class="vaccalbar" aria-busy=${String(!!this._vacFit.busy)}>
<span>${this._t('vac.fit_hint')}</span>
<button class="btn ghostbtn" ?disabled=${this._vacFit.busy}
@click=${() => this._vacFitTurn({ rot: ((this._vacFit!.p.rot + 90) % 360) as any })}>${this._t('vac.fit_rotate')}</button>
@click=${() => this._vacFitTurn({ rot: ((this._vacFit!.p.rot + 90) % 360) as FitParams['rot'] })}>${this._t('vac.fit_rotate')}</button>
<button class="btn ghostbtn" ?disabled=${this._vacFit.busy}
@click=${() => this._vacFitTurn({ mir: !this._vacFit!.p.mir })}>${this._t('vac.fit_mirror')}</button>
<button class="btn" ?disabled=${this._vacFit.busy}
+1 -1
View File
@@ -44,7 +44,7 @@ export interface VacuumCalibrationWriteHost {
_cfgRev: number;
_saveConfigDebounced: { pending: () => boolean; cancel: () => void };
_regSignature: string;
_markerDialog: any;
_markerDialog: { busy: boolean } | null;
_vacCalConfirm: CalibrationProposal | null;
_vacFit: VacuumFit | null;
_space: string;