UNPKG

iobroker.lovelace

Version:

With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI

4 lines 54 kB
export const __webpack_ids__=["49149"];export const __webpack_modules__={17803:function(e,t,i){i.d(t,{I:()=>a,_:()=>n});const a=(e,t,i,a)=>{const[n,s,d]=e.split(".",3);return Number(n)>t||Number(n)===t&&(void 0===a?Number(s)>=i:Number(s)>i)||void 0!==a&&Number(n)===t&&Number(s)===i&&Number(d)>=a},n=e=>e.includes("dev")},50602:function(e,t,i){i.a(e,(async function(e,a){try{i.d(t,{SL:()=>r,l4:()=>h,sJ:()=>l,uf:()=>u});var n=i(16485),s=i(20382),d=i(34618),o=e([n]);n=(o.then?(await o)():o)[0];const r=e=>l(e.attributes),l=(e,t)=>!!e.unit_of_measurement||!!e.state_class||(t||[]).includes(e.device_class||""),c=e=>{switch(e.number_format){case s.y4.comma_decimal:return["en-US","en"];case s.y4.decimal_comma:return["de","es","it"];case s.y4.space_comma:return["fr","sv","cs"];case s.y4.system:return;default:return e.language}},u=(e,t,i)=>{const a=t?c(t):void 0;return Number.isNaN=Number.isNaN||function e(t){return"number"==typeof t&&e(t)},t?.number_format===s.y4.none||Number.isNaN(Number(e))?Number.isNaN(Number(e))||""===e||t?.number_format!==s.y4.none?"string"==typeof e?e:`${(0,d.N)(e,i?.maximumFractionDigits).toString()}${"currency"===i?.style?` ${i.currency}`:""}`:new Intl.NumberFormat("en-US",f(e,{...i,useGrouping:!1})).format(Number(e)):new Intl.NumberFormat(a,f(e,i)).format(Number(e))},h=(e,t)=>{const i=t?.display_precision;return null!=i?{maximumFractionDigits:i,minimumFractionDigits:i}:Number.isInteger(Number(e?.attributes?.step))&&Number.isInteger(Number(e?.state))?{maximumFractionDigits:0}:void 0},f=(e,t)=>{const i={maximumFractionDigits:2,...t};if("string"!=typeof e)return i;if(!t||void 0===t.minimumFractionDigits&&void 0===t.maximumFractionDigits){const t=e.indexOf(".")>-1?e.split(".")[1].length:0;i.minimumFractionDigits=t,i.maximumFractionDigits=t}return i};a()}catch(e){a(e)}}))},34618:function(e,t,i){i.d(t,{N:()=>a});const a=(e,t=2)=>Math.round(e*10**t)/10**t},81282:function(e,t,i){var a=i(44249),n=(i(9359),i(68107),i(56475),i(70104),i(52924),i(57243)),s=i(15093),d=i(35359),o=i(27486),r=i(36522),l=i(73850),c=i(24360),u=i(82100),h=i(46329),f=i(76131),v=i(61107);i(94279),i(23334),i(7285),i(37583);const p=e=>n.dy`<ha-list-item graphic="icon" class="${(0,d.$)({"add-new":e.area_id===m})}"> ${e.icon?n.dy`<ha-icon slot="graphic" .icon="${e.icon}"></ha-icon>`:n.dy`<ha-svg-icon slot="graphic" .path="${"M20 2H4C2.9 2 2 2.9 2 4V20C2 21.11 2.9 22 4 22H20C21.11 22 22 21.11 22 20V4C22 2.9 21.11 2 20 2M4 6L6 4H10.9L4 10.9V6M4 13.7L13.7 4H18.6L4 18.6V13.7M20 18L18 20H13.1L20 13.1V18M20 10.3L10.3 20H5.4L20 5.4V10.3Z"}"></ha-svg-icon>`} ${e.name} </ha-list-item>`,m="___ADD_NEW___",b="___NO_ITEMS___",_="___ADD_NEW_SUGGESTION___";(0,a.Z)([(0,s.Mo)("ha-area-picker")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"value",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"helper",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"placeholder",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Boolean,attribute:"no-add"})],key:"noAdd",value:()=>!1},{kind:"field",decorators:[(0,s.Cb)({type:Array,attribute:"include-domains"})],key:"includeDomains",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Array,attribute:"exclude-domains"})],key:"excludeDomains",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Array,attribute:"include-device-classes"})],key:"includeDeviceClasses",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Array,attribute:"exclude-areas"})],key:"excludeAreas",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"deviceFilter",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"entityFilter",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"required",value:()=>!1},{kind:"field",decorators:[(0,s.SB)()],key:"_opened",value:void 0},{kind:"field",decorators:[(0,s.IO)("ha-combo-box",!0)],key:"comboBox",value:void 0},{kind:"field",key:"_suggestion",value:void 0},{kind:"field",key:"_init",value:()=>!1},{kind:"method",key:"open",value:async function(){await this.updateComplete,await(this.comboBox?.open())}},{kind:"method",key:"focus",value:async function(){await this.updateComplete,await(this.comboBox?.focus())}},{kind:"field",key:"_getAreas",value(){return(0,o.Z)(((e,t,i,a,n,s,d,o,r,c)=>{let u,f,v={};(a||n||s||d||o)&&(v=(0,h.R6)(i),u=t,f=i.filter((e=>e.area_id)),a&&(u=u.filter((e=>{const t=v[e.id];return!(!t||!t.length)&&v[e.id].some((e=>a.includes((0,l.M)(e.entity_id))))})),f=f.filter((e=>a.includes((0,l.M)(e.entity_id))))),n&&(u=u.filter((e=>{const t=v[e.id];return!t||!t.length||i.every((e=>!n.includes((0,l.M)(e.entity_id))))})),f=f.filter((e=>!n.includes((0,l.M)(e.entity_id))))),s&&(u=u.filter((e=>{const t=v[e.id];return!(!t||!t.length)&&v[e.id].some((e=>{const t=this.hass.states[e.entity_id];return!!t&&(t.attributes.device_class&&s.includes(t.attributes.device_class))}))})),f=f.filter((e=>{const t=this.hass.states[e.entity_id];return t.attributes.device_class&&s.includes(t.attributes.device_class)}))),d&&(u=u.filter((e=>d(e)))),o&&(u=u.filter((e=>{const t=v[e.id];return!(!t||!t.length)&&v[e.id].some((e=>{const t=this.hass.states[e.entity_id];return!!t&&o(t)}))})),f=f.filter((e=>{const t=this.hass.states[e.entity_id];return!!t&&o(t)}))));let p,_=e;return u&&(p=u.filter((e=>e.area_id)).map((e=>e.area_id))),f&&(p=(p??[]).concat(f.filter((e=>e.area_id)).map((e=>e.area_id)))),p&&(_=_.filter((e=>p.includes(e.area_id)))),c&&(_=_.filter((e=>!c.includes(e.area_id)))),_.length||(_=[{area_id:b,floor_id:null,name:this.hass.localize("ui.components.area-picker.no_areas"),picture:null,icon:null,aliases:[],labels:[],temperature_entity_id:null,humidity_entity_id:null,created_at:0,modified_at:0}]),r?_:[..._,{area_id:m,floor_id:null,name:this.hass.localize("ui.components.area-picker.add_new"),picture:null,icon:"mdi:plus",aliases:[],labels:[],temperature_entity_id:null,humidity_entity_id:null,created_at:0,modified_at:0}]}))}},{kind:"method",key:"updated",value:function(e){if(!this._init&&this.hass||this._init&&e.has("_opened")&&this._opened){this._init=!0;const e=this._getAreas(Object.values(this.hass.areas),Object.values(this.hass.devices),Object.values(this.hass.entities),this.includeDomains,this.excludeDomains,this.includeDeviceClasses,this.deviceFilter,this.entityFilter,this.noAdd,this.excludeAreas).map((e=>({...e,strings:[e.area_id,...e.aliases,e.name]})));this.comboBox.items=e,this.comboBox.filteredItems=e}}},{kind:"method",key:"render",value:function(){return n.dy` <ha-combo-box .hass="${this.hass}" .helper="${this.helper}" item-value-path="area_id" item-id-path="area_id" item-label-path="name" .value="${this._value}" .disabled="${this.disabled}" .required="${this.required}" .label="${void 0===this.label&&this.hass?this.hass.localize("ui.components.area-picker.area"):this.label}" .placeholder="${this.placeholder?this.hass.areas[this.placeholder]?.name:void 0}" .renderer="${p}" @filter-changed="${this._filterChanged}" @opened-changed="${this._openedChanged}" @value-changed="${this._areaChanged}"> </ha-combo-box> `}},{kind:"method",key:"_filterChanged",value:function(e){const t=e.target,i=e.detail.value;if(!i)return void(this.comboBox.filteredItems=this.comboBox.items);const a=(0,c.q)(i,t.items?.filter((e=>![b,m].includes(e.label_id)))||[]);0===a.length?this.noAdd?(this._suggestion=i,this.comboBox.filteredItems=[{area_id:_,floor_id:null,name:this.hass.localize("ui.components.area-picker.add_new_sugestion",{name:this._suggestion}),icon:"mdi:plus",picture:null,labels:[],aliases:[],temperature_entity_id:null,humidity_entity_id:null,created_at:0,modified_at:0}]):this.comboBox.filteredItems=[{area_id:b,floor_id:null,name:this.hass.localize("ui.components.area-picker.no_match"),icon:null,picture:null,labels:[],aliases:[],temperature_entity_id:null,humidity_entity_id:null,created_at:0,modified_at:0}]:this.comboBox.filteredItems=a}},{kind:"get",key:"_value",value:function(){return this.value||""}},{kind:"method",key:"_openedChanged",value:function(e){this._opened=e.detail.value}},{kind:"method",key:"_areaChanged",value:function(e){e.stopPropagation();let t=e.detail.value;if(t===b)return t="",void this.comboBox.setInputValue("");[_,m].includes(t)?(e.target.value=this._value,this.hass.loadFragmentTranslation("config"),(0,v.E)(this,{suggestedName:t===_?this._suggestion:"",createEntry:async e=>{try{const t=await(0,u.Lo)(this.hass,e),i=[...Object.values(this.hass.areas),t];this.comboBox.filteredItems=this._getAreas(i,Object.values(this.hass.devices),Object.values(this.hass.entities),this.includeDomains,this.excludeDomains,this.includeDeviceClasses,this.deviceFilter,this.entityFilter,this.noAdd,this.excludeAreas),await this.updateComplete,await this.comboBox.updateComplete,this._setValue(t.area_id)}catch(e){(0,f.showAlertDialog)(this,{title:this.hass.localize("ui.components.area-picker.failed_create_area"),text:e.message})}}}),this._suggestion=void 0,this.comboBox.setInputValue("")):t!==this._value&&this._setValue(t)}},{kind:"method",key:"_setValue",value:function(e){this.value=e,setTimeout((()=>{(0,r.B)(this,"value-changed",{value:e}),(0,r.B)(this,"change")}),0)}}]}}),n.oi)},94279:function(e,t,i){var a=i(44249),n=i(72621),s=(i(9359),i(31526),i(2394)),d=(i(30080),i(43631)),o=i(57243),r=i(15093),l=i(20552),c=i(36522);i(23334),i(7285),i(83166);(0,d.hC)("vaadin-combo-box-item",o.iv`:host{padding:0!important}:host([focused]:not([disabled])){background-color:rgba(var(--rgb-primary-text-color,0,0,0),.12)}:host([selected]:not([disabled])){background-color:transparent;color:var(--mdc-theme-primary);--mdc-ripple-color:var(--mdc-theme-primary);--mdc-theme-text-primary-on-background:var(--mdc-theme-primary)}:host([selected]:not([disabled])):before{background-color:var(--mdc-theme-primary);opacity:.12;content:"";position:absolute;top:0;left:0;width:100%;height:100%}:host([selected][focused]:not([disabled])):before{opacity:.24}:host(:hover:not([disabled])){background-color:transparent}[part=content]{width:100%}[part=checkmark]{display:none}`);(0,a.Z)([(0,r.Mo)("ha-combo-box")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"value",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"placeholder",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"validationMessage",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"helper",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"error-message"})],key:"errorMessage",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"invalid",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"icon",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"items",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"filteredItems",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"dataProvider",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"allow-custom-value",type:Boolean})],key:"allowCustomValue",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({attribute:"item-value-path"})],key:"itemValuePath",value:()=>"value"},{kind:"field",decorators:[(0,r.Cb)({attribute:"item-label-path"})],key:"itemLabelPath",value:()=>"label"},{kind:"field",decorators:[(0,r.Cb)({attribute:"item-id-path"})],key:"itemIdPath",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"renderer",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"required",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean,reflect:!0})],key:"opened",value:()=>!1},{kind:"field",decorators:[(0,r.IO)("vaadin-combo-box-light",!0)],key:"_comboBox",value:void 0},{kind:"field",decorators:[(0,r.IO)("ha-textfield",!0)],key:"_inputElement",value:void 0},{kind:"field",key:"_overlayMutationObserver",value:void 0},{kind:"field",key:"_bodyMutationObserver",value:void 0},{kind:"method",key:"open",value:async function(){await this.updateComplete,this._comboBox?.open()}},{kind:"method",key:"focus",value:async function(){await this.updateComplete,await(this._inputElement?.updateComplete),this._inputElement?.focus()}},{kind:"method",key:"disconnectedCallback",value:function(){(0,n.Z)(i,"disconnectedCallback",this,3)([]),this._overlayMutationObserver&&(this._overlayMutationObserver.disconnect(),this._overlayMutationObserver=void 0),this._bodyMutationObserver&&(this._bodyMutationObserver.disconnect(),this._bodyMutationObserver=void 0)}},{kind:"get",key:"selectedItem",value:function(){return this._comboBox.selectedItem}},{kind:"method",key:"setInputValue",value:function(e){this._comboBox.value=e}},{kind:"method",key:"render",value:function(){return o.dy` <vaadin-combo-box-light .itemValuePath="${this.itemValuePath}" .itemIdPath="${this.itemIdPath}" .itemLabelPath="${this.itemLabelPath}" .items="${this.items}" .value="${this.value||""}" .filteredItems="${this.filteredItems}" .dataProvider="${this.dataProvider}" .allowCustomValue="${this.allowCustomValue}" .disabled="${this.disabled}" .required="${this.required}" ${(0,s.t)(this.renderer||this._defaultRowRenderer)} @opened-changed="${this._openedChanged}" @filter-changed="${this._filterChanged}" @value-changed="${this._valueChanged}" attr-for-value="value"> <ha-textfield label="${(0,l.o)(this.label)}" placeholder="${(0,l.o)(this.placeholder)}" ?disabled="${this.disabled}" ?required="${this.required}" validationMessage="${(0,l.o)(this.validationMessage)}" .errorMessage="${this.errorMessage}" class="input" autocapitalize="none" autocomplete="off" autocorrect="off" input-spellcheck="false" .suffix="${o.dy`<div style="width:28px" role="none presentation"></div>`}" .icon="${this.icon}" .invalid="${this.invalid}" .helper="${this.helper}" helperPersistent> <slot name="icon" slot="leadingIcon"></slot> </ha-textfield> ${this.value?o.dy`<ha-svg-icon role="button" tabindex="-1" aria-label="${(0,l.o)(this.hass?.localize("ui.common.clear"))}" class="clear-button" .path="${"M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"}" @click="${this._clearValue}"></ha-svg-icon>`:""} <ha-svg-icon role="button" tabindex="-1" aria-label="${(0,l.o)(this.label)}" aria-expanded="${this.opened?"true":"false"}" class="toggle-button" .path="${this.opened?"M7,15L12,10L17,15H7Z":"M7,10L12,15L17,10H7Z"}" @click="${this._toggleOpen}"></ha-svg-icon> </vaadin-combo-box-light> `}},{kind:"field",key:"_defaultRowRenderer",value(){return e=>o.dy`<ha-list-item> ${this.itemLabelPath?e[this.itemLabelPath]:e} </ha-list-item>`}},{kind:"method",key:"_clearValue",value:function(e){e.stopPropagation(),(0,c.B)(this,"value-changed",{value:void 0})}},{kind:"method",key:"_toggleOpen",value:function(e){this.opened?(this._comboBox?.close(),e.stopPropagation()):this._comboBox?.inputElement.focus()}},{kind:"method",key:"_openedChanged",value:function(e){e.stopPropagation();const t=e.detail.value;if(setTimeout((()=>{this.opened=t}),0),(0,c.B)(this,"opened-changed",{value:e.detail.value}),t){const e=document.querySelector("vaadin-combo-box-overlay");e&&this._removeInert(e),this._observeBody()}else this._bodyMutationObserver?.disconnect(),this._bodyMutationObserver=void 0}},{kind:"method",key:"_observeBody",value:function(){"MutationObserver"in window&&!this._bodyMutationObserver&&(this._bodyMutationObserver=new MutationObserver((e=>{e.forEach((e=>{e.addedNodes.forEach((e=>{"VAADIN-COMBO-BOX-OVERLAY"===e.nodeName&&this._removeInert(e)})),e.removedNodes.forEach((e=>{"VAADIN-COMBO-BOX-OVERLAY"===e.nodeName&&(this._overlayMutationObserver?.disconnect(),this._overlayMutationObserver=void 0)}))}))})),this._bodyMutationObserver.observe(document.body,{childList:!0}))}},{kind:"method",key:"_removeInert",value:function(e){if(e.inert)return e.inert=!1,this._overlayMutationObserver?.disconnect(),void(this._overlayMutationObserver=void 0);"MutationObserver"in window&&!this._overlayMutationObserver&&(this._overlayMutationObserver=new MutationObserver((e=>{e.forEach((e=>{if("inert"===e.attributeName){const t=e.target;t.inert&&(this._overlayMutationObserver?.disconnect(),this._overlayMutationObserver=void 0,t.inert=!1)}}))})),this._overlayMutationObserver.observe(e,{attributes:!0}))}},{kind:"method",key:"_filterChanged",value:function(e){e.stopPropagation(),(0,c.B)(this,"filter-changed",{value:e.detail.value})}},{kind:"method",key:"_valueChanged",value:function(e){e.stopPropagation(),this.allowCustomValue||(this._comboBox._closeOnBlurIsPrevented=!0);const t=e.detail.value;t!==this.value&&(0,c.B)(this,"value-changed",{value:t||void 0})}},{kind:"field",static:!0,key:"styles",value:()=>o.iv`:host{display:block;width:100%}vaadin-combo-box-light{position:relative;--vaadin-combo-box-overlay-max-height:calc(45vh - 56px)}ha-textfield{width:100%}ha-textfield>ha-icon-button{--mdc-icon-button-size:24px;padding:2px;color:var(--secondary-text-color)}ha-svg-icon{color:var(--input-dropdown-icon-color);position:absolute;cursor:pointer}.toggle-button{right:12px;top:-10px;inset-inline-start:initial;inset-inline-end:12px;direction:var(--direction)}:host([opened]) .toggle-button{color:var(--primary-color)}.clear-button{--mdc-icon-size:20px;top:-7px;right:36px;inset-inline-start:initial;inset-inline-end:36px;direction:var(--direction)}`}]}}),o.oi)},65981:function(e,t,i){i.r(t),i.d(t,{HaIcon:()=>k});var a=i(44249),n=i(72621),s=i(57243),d=i(15093),o=i(36522),r=i(22381),l=i(80654),c=(i(92745),i(9359),i(31526),i(27608)),u=i(27486),h=i(37394);const f=JSON.parse('{"version":"7.4.47","parts":[{"file":"7a7139d465f1f41cb26ab851a17caa21a9331234"},{"start":"account-supervisor-circle-","file":"9561286c4c1021d46b9006596812178190a7cc1c"},{"start":"alpha-r-c","file":"eb466b7087fb2b4d23376ea9bc86693c45c500fa"},{"start":"arrow-decision-o","file":"4b3c01b7e0723b702940c5ac46fb9e555646972b"},{"start":"baby-f","file":"2611401d85450b95ab448ad1d02c1a432b409ed2"},{"start":"battery-hi","file":"89bcd31855b34cd9d31ac693fb073277e74f1f6a"},{"start":"blur-r","file":"373709cd5d7e688c2addc9a6c5d26c2d57c02c48"},{"start":"briefcase-account-","file":"a75956cf812ee90ee4f656274426aafac81e1053"},{"start":"calendar-question-","file":"3253f2529b5ebdd110b411917bacfacb5b7063e6"},{"start":"car-lig","file":"74566af3501ad6ae58ad13a8b6921b3cc2ef879d"},{"start":"cellphone-co","file":"7677f1cfb2dd4f5562a2aa6d3ae43a2e6997b21a"},{"start":"circle-slice-2","file":"70d08c50ec4522dd75d11338db57846588263ee2"},{"start":"cloud-co","file":"141d2bfa55ca4c83f4bae2812a5da59a84fec4ff"},{"start":"cog-s","file":"5a640365f8e47c609005d5e098e0e8104286d120"},{"start":"cookie-l","file":"dd85b8eb8581b176d3acf75d1bd82e61ca1ba2fc"},{"start":"currency-eur-","file":"15362279f4ebfc3620ae55f79d2830ad86d5213e"},{"start":"delete-o","file":"239434ab8df61237277d7599ebe066c55806c274"},{"start":"draw-","file":"5605918a592070803ba2ad05a5aba06263da0d70"},{"start":"emoticon-po","file":"a838cfcec34323946237a9f18e66945f55260f78"},{"start":"fan","file":"effd56103b37a8c7f332e22de8e4d67a69b70db7"},{"start":"file-question-","file":"b2424b50bd465ae192593f1c3d086c5eec893af8"},{"start":"flask-off-","file":"3b76295cde006a18f0301dd98eed8c57e1d5a425"},{"start":"food-s","file":"1c6941474cbeb1755faaaf5771440577f4f1f9c6"},{"start":"gamepad-u","file":"c6efe18db6bc9654ae3540c7dee83218a5450263"},{"start":"google-f","file":"df341afe6ad4437457cf188499cb8d2df8ac7b9e"},{"start":"head-c","file":"282121c9e45ed67f033edcc1eafd279334c00f46"},{"start":"home-pl","file":"27e8e38fc7adcacf2a210802f27d841b49c8c508"},{"start":"inbox-","file":"0f0316ec7b1b7f7ce3eaabce26c9ef619b5a1694"},{"start":"key-v","file":"ea33462be7b953ff1eafc5dac2d166b210685a60"},{"start":"leaf-circle-","file":"33db9bbd66ce48a2db3e987fdbd37fb0482145a4"},{"start":"lock-p","file":"b89e27ed39e9d10c44259362a4b57f3c579d3ec8"},{"start":"message-s","file":"7b5ab5a5cadbe06e3113ec148f044aa701eac53a"},{"start":"moti","file":"01024d78c248d36805b565e343dd98033cc3bcaf"},{"start":"newspaper-variant-o","file":"22a6ec4a4fdd0a7c0acaf805f6127b38723c9189"},{"start":"on","file":"c73d55b412f394e64632e2011a59aa05e5a1f50d"},{"start":"paw-ou","file":"3f669bf26d16752dc4a9ea349492df93a13dcfbf"},{"start":"pigg","file":"0c24edb27eb1c90b6e33fc05f34ef3118fa94256"},{"start":"printer-pos-sy","file":"41a55cda866f90b99a64395c3bb18c14983dcf0a"},{"start":"read","file":"c7ed91552a3a64c9be88c85e807404cf705b7edf"},{"start":"robot-vacuum-variant-o","file":"917d2a35d7268c0ea9ad9ecab2778060e19d90e0"},{"start":"sees","file":"6e82d9861d8fac30102bafa212021b819f303bdb"},{"start":"shoe-f","file":"e2fe7ce02b5472301418cc90a0e631f187b9f238"},{"start":"snowflake-m","file":"a28ba9f5309090c8b49a27ca20ff582a944f6e71"},{"start":"st","file":"7e92d03f095ec27e137b708b879dfd273bd735ab"},{"start":"su","file":"61c74913720f9de59a379bdca37f1d2f0dc1f9db"},{"start":"tag-plus-","file":"8f3184156a4f38549cf4c4fffba73a6a941166ae"},{"start":"timer-a","file":"baab470d11cfb3a3cd3b063ee6503a77d12a80d0"},{"start":"transit-d","file":"8561c0d9b1ac03fab360fd8fe9729c96e8693239"},{"start":"vector-arrange-b","file":"c9a3439257d4bab33d3355f1f2e11842e8171141"},{"start":"water-ou","file":"02dbccfb8ca35f39b99f5a085b095fc1275005a0"},{"start":"webc","file":"57bafd4b97341f4f2ac20a609d023719f23a619c"},{"start":"zip","file":"65ae094e8263236fa50486584a08c03497a38d93"}]}'),v=(0,u.Z)((async()=>{const e=(0,c.MT)("hass-icon-db","mdi-icon-store");{const t=await(0,c.U2)("_version",e);t?t!==f.version&&(await(0,c.ZH)(e),(0,c.t8)("_version",f.version,e)):(0,c.t8)("_version",f.version,e)}return e})),p=["mdi","hass","hassio","hademo"];let m=[];i(37583);const b={},_={},g=(0,r.D)((()=>(async e=>{const t=Object.keys(e),i=await Promise.all(Object.values(e));(await v())("readwrite",(a=>{i.forEach(((i,n)=>{Object.entries(i).forEach((([e,t])=>{a.put(t,e)})),delete e[t[n]]}))}))})(_)),2e3),y={};let k=(0,a.Z)([(0,d.Mo)("ha-icon")],(function(e,t){class a extends t{constructor(...t){super(...t),e(this)}}return{F:a,d:[{kind:"field",decorators:[(0,d.Cb)()],key:"icon",value:void 0},{kind:"field",decorators:[(0,d.SB)()],key:"_path",value:void 0},{kind:"field",decorators:[(0,d.SB)()],key:"_secondaryPath",value:void 0},{kind:"field",decorators:[(0,d.SB)()],key:"_viewBox",value:void 0},{kind:"field",decorators:[(0,d.SB)()],key:"_legacy",value:()=>!1},{kind:"method",key:"willUpdate",value:function(e){(0,n.Z)(a,"willUpdate",this,3)([e]),e.has("icon")&&(this._path=void 0,this._secondaryPath=void 0,this._viewBox=void 0,this._loadIcon())}},{kind:"method",key:"render",value:function(){return this.icon?this._legacy?s.dy` <iron-icon .icon="${this.icon}"></iron-icon>`:s.dy`<ha-svg-icon .path="${this._path}" .secondaryPath="${this._secondaryPath}" .viewBox="${this._viewBox}"></ha-svg-icon>`:s.Ld}},{kind:"method",key:"_loadIcon",value:async function(){if(!this.icon)return;const e=this.icon,[t,a]=this.icon.split(":",2);let n,s=a;if(!t||!s)return;if(!p.includes(t)){const i=l.g[t];return i?void(i&&"function"==typeof i.getIcon&&this._setCustomPath(i.getIcon(s),e)):void(this._legacy=!0)}if(this._legacy=!1,s in b){const e=b[s];let i;e.newName?(i=`Icon ${t}:${s} was renamed to ${t}:${e.newName}, please change your config, it will be removed in version ${e.removeIn}.`,s=e.newName):i=`Icon ${t}:${s} was removed from MDI, please replace this icon with an other icon in your config, it will be removed in version ${e.removeIn}.`,console.warn(i),(0,o.B)(this,"write_log",{level:"warning",message:i})}if(s in y)return void(this._path=y[s]);if("home-assistant"===s){const t=(await i.e("48348").then(i.bind(i,30511))).mdiHomeAssistant;return this.icon===e&&(this._path=t),void(y[s]=t)}try{n=await(e=>new Promise(((t,i)=>{if(m.push([e,t,i]),m.length>1)return;const a=v();(0,h.n)(1e3,(async()=>{(await a)("readonly",(e=>{for(const[t,i,a]of m)(0,c.RV)(e.get(t)).then((e=>i(e))).catch((e=>a(e)));m=[]}))})()).catch((e=>{for(const[,,t]of m)t(e);m=[]}))})))(s)}catch(e){n=void 0}if(n)return this.icon===e&&(this._path=n),void(y[s]=n);const d=(e=>{let t;for(const i of f.parts){if(void 0!==i.start&&e<i.start)break;t=i}return t.file})(s);if(d in _)return void this._setPath(_[d],s,e);const r=fetch(`/static/mdi/${d}.json`).then((e=>e.json()));_[d]=r,this._setPath(r,s,e),g()}},{kind:"method",key:"_setCustomPath",value:async function(e,t){const i=await e;this.icon===t&&(this._path=i.path,this._secondaryPath=i.secondaryPath,this._viewBox=i.viewBox)}},{kind:"method",key:"_setPath",value:async function(e,t,i){const a=await e;this.icon===i&&(this._path=a[t]),y[t]=a[t]}},{kind:"field",static:!0,key:"styles",value:()=>s.iv`:host{fill:currentcolor}`}]}}),s.oi)},7285:function(e,t,i){i.d(t,{M:()=>l});var a=i(44249),n=i(72621),s=i(65703),d=i(46289),o=i(57243),r=i(15093);let l=(0,a.Z)([(0,r.Mo)("ha-list-item")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"method",key:"renderRipple",value:function(){return this.noninteractive?"":(0,n.Z)(i,"renderRipple",this,3)([])}},{kind:"get",static:!0,key:"styles",value:function(){return[d.W,o.iv`:host{padding-left:var(--mdc-list-side-padding-left,var(--mdc-list-side-padding,20px));padding-inline-start:var(--mdc-list-side-padding-left,var(--mdc-list-side-padding,20px));padding-right:var(--mdc-list-side-padding-right,var(--mdc-list-side-padding,20px));padding-inline-end:var(--mdc-list-side-padding-right,var(--mdc-list-side-padding,20px))}:host([graphic=avatar]:not([twoLine])),:host([graphic=icon]:not([twoLine])){height:48px}span.material-icons:first-of-type{margin-inline-start:0px!important;margin-inline-end:var(--mdc-list-item-graphic-margin,16px)!important;direction:var(--direction)!important}span.material-icons:last-of-type{margin-inline-start:auto!important;margin-inline-end:0px!important;direction:var(--direction)!important}.mdc-deprecated-list-item__meta{display:var(--mdc-list-item-meta-display);align-items:center;flex-shrink:0}:host([graphic=icon]:not([twoline])) .mdc-deprecated-list-item__graphic{margin-inline-end:var(--mdc-list-item-graphic-margin,20px)!important}:host([multiline-secondary]){height:auto}:host([multiline-secondary]) .mdc-deprecated-list-item__text{padding:8px 0}:host([multiline-secondary]) .mdc-deprecated-list-item__secondary-text{text-overflow:initial;white-space:normal;overflow:auto;display:inline-block;margin-top:10px}:host([multiline-secondary]) .mdc-deprecated-list-item__primary-text{margin-top:10px}:host([multiline-secondary]) .mdc-deprecated-list-item__secondary-text::before{display:none}:host([multiline-secondary]) .mdc-deprecated-list-item__primary-text::before{display:none}:host([disabled]){color:var(--disabled-text-color)}:host([noninteractive]){pointer-events:unset}`,"rtl"===document.dir?o.iv`span.material-icons:first-of-type,span.material-icons:last-of-type{direction:rtl!important;--direction:rtl}`:o.iv``]}}]}}),s.K)},51223:function(e,t,i){i.a(e,(async function(e,t){try{var a=i(44249),n=i(57243),s=i(15093),d=i(94571),o=i(59847),r=i(45729),l=(i(65981),i(37583),e([r]));r=(l.then?(await l)():l)[0];(0,a.Z)([(0,s.Mo)("ha-state-icon")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"stateObj",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"stateValue",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"icon",value:void 0},{kind:"method",key:"render",value:function(){const e=this.icon||this.stateObj&&this.hass?.entities[this.stateObj.entity_id]?.icon||this.stateObj?.attributes.icon;if(e)return n.dy`<ha-icon .icon="${e}"></ha-icon>`;if(!this.stateObj)return n.Ld;if(!this.hass)return this._renderFallback();const t=(0,r.gD)(this.hass,this.stateObj,this.stateValue).then((e=>e?n.dy`<ha-icon .icon="${e}"></ha-icon>`:this._renderFallback()));return n.dy`${(0,d.C)(t)}`}},{kind:"method",key:"_renderFallback",value:function(){const e=(0,o.N)(this.stateObj);return n.dy` <ha-svg-icon .path="${r.Ls[e]||r.Rb}"></ha-svg-icon> `}}]}}),n.oi);t()}catch(e){t(e)}}))},40917:function(e,t,i){var a=i(44249),n=i(72621),s=i(27323),d=i(33990),o=i(88540),r=i(57243),l=i(15093);(0,a.Z)([(0,l.Mo)("ha-textarea")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,l.Cb)({type:Boolean,reflect:!0})],key:"autogrow",value:()=>!1},{kind:"method",key:"updated",value:function(e){(0,n.Z)(i,"updated",this,3)([e]),this.autogrow&&e.has("value")&&(this.mdcRoot.dataset.value=this.value+'=​"')}},{kind:"field",static:!0,key:"styles",value:()=>[d.W,o.W,r.iv`:host([autogrow]) .mdc-text-field{position:relative;min-height:74px;min-width:178px;max-height:200px}:host([autogrow]) .mdc-text-field:after{content:attr(data-value);margin-top:23px;margin-bottom:9px;line-height:1.5rem;min-height:42px;padding:0px 32px 0 16px;letter-spacing:var( --mdc-typography-subtitle1-letter-spacing, .009375em );visibility:hidden;white-space:pre-wrap}:host([autogrow]) .mdc-text-field__input{position:absolute;height:calc(100% - 32px)}:host([autogrow]) .mdc-text-field.mdc-text-field--no-label:after{margin-top:16px;margin-bottom:16px}.mdc-floating-label{inset-inline-start:16px!important;inset-inline-end:initial!important;transform-origin:var(--float-start) top}@media only screen and (min-width:459px){:host([mobile-multiline]) .mdc-text-field__input{white-space:nowrap;max-height:16px}}`]}]}}),s.O)},83166:function(e,t,i){var a=i(44249),n=i(72621),s=i(1105),d=i(33990),o=i(57243),r=i(15093),l=i(5111);(0,a.Z)([(0,r.Mo)("ha-textfield")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"invalid",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"error-message"})],key:"errorMessage",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"icon",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"iconTrailing",value:()=>!1},{kind:"field",decorators:[(0,r.Cb)()],key:"autocomplete",value:void 0},{kind:"field",decorators:[(0,r.Cb)()],key:"autocorrect",value:void 0},{kind:"field",decorators:[(0,r.Cb)({attribute:"input-spellcheck"})],key:"inputSpellcheck",value:void 0},{kind:"field",decorators:[(0,r.IO)("input")],key:"formElement",value:void 0},{kind:"method",key:"updated",value:function(e){(0,n.Z)(i,"updated",this,3)([e]),(e.has("invalid")||e.has("errorMessage"))&&(this.setCustomValidity(this.invalid?this.errorMessage||this.validationMessage||"Invalid":""),(this.invalid||this.validateOnInitialRender||e.has("invalid")&&void 0!==e.get("invalid"))&&this.reportValidity()),e.has("autocomplete")&&(this.autocomplete?this.formElement.setAttribute("autocomplete",this.autocomplete):this.formElement.removeAttribute("autocomplete")),e.has("autocorrect")&&(this.autocorrect?this.formElement.setAttribute("autocorrect",this.autocorrect):this.formElement.removeAttribute("autocorrect")),e.has("inputSpellcheck")&&(this.inputSpellcheck?this.formElement.setAttribute("spellcheck",this.inputSpellcheck):this.formElement.removeAttribute("spellcheck"))}},{kind:"method",key:"renderIcon",value:function(e,t=!1){const i=t?"trailing":"leading";return o.dy` <span class="mdc-text-field__icon mdc-text-field__icon--${i}" tabindex="${t?1:-1}"> <slot name="${i}Icon"></slot> </span> `}},{kind:"field",static:!0,key:"styles",value:()=>[d.W,o.iv`.mdc-text-field__input{width:var(--ha-textfield-input-width,100%)}.mdc-text-field:not(.mdc-text-field--with-leading-icon){padding:var(--text-field-padding,0px 16px)}.mdc-text-field__affix--suffix{padding-left:var(--text-field-suffix-padding-left,12px);padding-right:var(--text-field-suffix-padding-right,0px);padding-inline-start:var(--text-field-suffix-padding-left,12px);padding-inline-end:var(--text-field-suffix-padding-right,0px);direction:ltr}.mdc-text-field--with-leading-icon{padding-inline-start:var(--text-field-suffix-padding-left,0px);padding-inline-end:var(--text-field-suffix-padding-right,16px);direction:var(--direction)}.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon{padding-left:var(--text-field-suffix-padding-left,0px);padding-right:var(--text-field-suffix-padding-right,0px);padding-inline-start:var(--text-field-suffix-padding-left,0px);padding-inline-end:var(--text-field-suffix-padding-right,0px)}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--suffix{color:var(--secondary-text-color)}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon{color:var(--secondary-text-color)}.mdc-text-field__icon--leading{margin-inline-start:16px;margin-inline-end:8px;direction:var(--direction)}.mdc-text-field__icon--trailing{padding:var(--textfield-icon-trailing-padding,12px)}.mdc-floating-label:not(.mdc-floating-label--float-above){text-overflow:ellipsis;width:inherit;padding-right:30px;padding-inline-end:30px;padding-inline-start:initial;box-sizing:border-box;direction:var(--direction)}input{text-align:var(--text-field-text-align,start)}input[type=color]{height:20px}::-ms-reveal{display:none}:host([no-spinner]) input::-webkit-inner-spin-button,:host([no-spinner]) input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=color]::-webkit-color-swatch-wrapper{padding:0}:host([no-spinner]) input[type=number]{-moz-appearance:textfield}.mdc-text-field__ripple{overflow:hidden}.mdc-text-field{overflow:var(--text-field-overflow)}.mdc-floating-label{inset-inline-start:16px!important;inset-inline-end:initial!important;transform-origin:var(--float-start);direction:var(--direction);text-align:var(--float-start)}.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label{max-width:calc(100% - 48px - var(--text-field-suffix-padding-left,0px));inset-inline-start:calc(48px + var(--text-field-suffix-padding-left,0px))!important;inset-inline-end:initial!important;direction:var(--direction)}.mdc-text-field__input[type=number]{direction:var(--direction)}.mdc-text-field__affix--prefix{padding-right:var(--text-field-prefix-padding-right,2px);padding-inline-end:var(--text-field-prefix-padding-right,2px);padding-inline-start:initial}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--prefix{color:var(--mdc-text-field-label-ink-color)}#helper-text ha-markdown{display:inline-block}`,"rtl"===l.E.document.dir?o.iv`.mdc-floating-label,.mdc-text-field--with-leading-icon,.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label,.mdc-text-field__icon--leading,.mdc-text-field__input[type=number]{direction:rtl;--direction:rtl}`:o.iv``]}]}}),s.P)},43546:function(e,t,i){i.d(t,{Cp:()=>d,TZ:()=>o,W2:()=>s,YY:()=>l,iI:()=>n,j2:()=>r,oT:()=>a});i(9359),i(70104);const a=e=>e.map((e=>{if("string"!==e.type)return e;switch(e.name){case"username":return{...e,autocomplete:"username",autofocus:!0};case"password":return{...e,autocomplete:"current-password"};case"code":return{...e,autocomplete:"one-time-code",autofocus:!0};default:return e}})),n=(e,t)=>e.callWS({type:"auth/sign_path",path:t}),s=async(e,t,i,a)=>e.callWS({type:"config/auth_provider/homeassistant/create",user_id:t,username:i,password:a}),d=(e,t,i)=>e.callWS({type:"config/auth_provider/homeassistant/change_password",current_password:t,new_password:i}),o=(e,t,i)=>e.callWS({type:"config/auth_provider/homeassistant/admin_change_password",user_id:t,password:i}),r=(e,t,i)=>e.callWS({type:"config/auth_provider/homeassistant/admin_change_username",user_id:t,username:i}),l=(e,t,i)=>e.callWS({type:"auth/delete_all_refresh_tokens",token_type:t,delete_current_token:i})},99650:function(e,t,i){i.d(t,{B:()=>g,Ch:()=>l,Lr:()=>f,Mw:()=>b,T9:()=>v,Xn:()=>m,i4:()=>u,jU:()=>r,kU:()=>o,nk:()=>c,ou:()=>k,qW:()=>d,r:()=>p,sF:()=>s,z9:()=>x,zj:()=>y});var a=i(86190),n=i(43546);const s=[1,2,3,4,6,8],d=2,o="hls",r="web_rtc",l=(e,t,i)=>`${e}&width=${t}&height=${i}`,c=e=>`/api/camera_proxy_stream/${e.entity_id}?token=${e.attributes.access_token}`,u=async(e,t,i,n)=>{const s=await(0,a.U)("_cameraTmbUrl",9e3,h,e,t);return l(s,i,n)},h=async(e,t)=>{const i=await(0,n.iI)(e,`/api/camera_proxy/${t}`);return e.hassUrl(i.path)},f=async(e,t,i)=>{const a={type:"camera/stream",entity_id:t};i&&(a.format=i);const n=await e.callWS(a);return n.url=e.hassUrl(n.url),n},v=(e,t,i,a)=>e.connection.subscribeMessage(a,{type:"camera/webrtc/offer",entity_id:t,offer:i}),p=(e,t,i,a)=>e.callWS({type:"camera/webrtc/candidate",entity_id:t,session_id:i,candidate:a}),m=(e,t)=>e.callWS({type:"camera/get_prefs",entity_id:t}),b=(e,t,i)=>e.callWS({type:"camera/update_prefs",entity_id:t,...i}),_="media-source://camera/",g=e=>e.startsWith(_),y=e=>e.substring(22),k=async(e,t)=>e.callWS({type:"camera/capabilities",entity_id:t}),x=async(e,t)=>e.callWS({type:"camera/webrtc/get_client_config",entity_id:t})},80654:function(e,t,i){i.d(t,{g:()=>d});const a=window;"customIconsets"in a||(a.customIconsets={});const n=a.customIconsets,s=window;"customIcons"in s||(s.customIcons={});const d=new Proxy(s.customIcons,{get:(e,t)=>e[t]??(n[t]?{getIcon:n[t]}:void 0)})},96194:function(e,t,i){i.d(t,{ON:()=>d,PX:()=>o,V_:()=>r,lz:()=>s,nZ:()=>n,rk:()=>c});var a=i(92636);const n="unavailable",s="unknown",d="on",o="off",r=[n,s],l=[n,s,o],c=(0,a.z)(r);(0,a.z)(l)},69919:function(e,t,i){i.a(e,(async function(e,a){try{i.d(t,{EX:()=>f,Fj:()=>x,M$:()=>w,SO:()=>v,Sk:()=>m,TN:()=>C,UJ:()=>b,Ym:()=>$,hF:()=>p});i(9359),i(56475),i(70104);var n=i(73358),s=i(73850),d=i(59847),o=i(75278),r=i(50602),l=i(1416),c=i(76131),u=i(72473),h=e([r]);r=(h.then?(await h)():h)[0];let f=function(e){return e[e.INSTALL=1]="INSTALL",e[e.SPECIFIC_VERSION=2]="SPECIFIC_VERSION",e[e.PROGRESS=4]="PROGRESS",e[e.BACKUP=8]="BACKUP",e[e.RELEASE_NOTES=16]="RELEASE_NOTES",e}({});const v=e=>(0,o.e)(e,f.PROGRESS)&&null!==e.attributes.update_percentage,p=(e,t=!1)=>(e.state===n.uo||t&&Boolean(e.attributes.skipped_version))&&(0,o.e)(e,f.INSTALL),m=e=>!!e.attributes.in_progress,b=(e,t)=>e.callWS({type:"update/release_notes",entity_id:t}),_="ioBroker Core",g="ioBroker Supervisor",y="ioBroker Operating System",k=(e,t)=>Object.values(e).filter((e=>"update"===(0,d.N)(e))).sort(((e,i)=>e.attributes.title===_?-3:i.attributes.title===_?3:e.attributes.title===y?-2:i.attributes.title===y?2:e.attributes.title===g?-1:i.attributes.title===g?1:(0,l.fe)(e.attributes.title||e.attributes.friendly_name||"",i.attributes.title||i.attributes.friendly_name||"",t))),x=(e,t=!1)=>k(e).filter((e=>p(e,t))),w=async(e,t)=>{const i=k(t.states,t.locale.language).map((e=>e.entity_id));if(!i.length)return void(0,c.showAlertDialog)(e,{title:t.localize("ui.panel.config.updates.no_update_entities.title"),text:t.localize("ui.panel.config.updates.no_update_entities.description"),warning:!0});(0,u.C)(e,{message:t.localize("ui.panel.config.updates.checking_updates")});let a=0;const n=await t.connection.subscribeEvents((i=>{"update"===(0,s.M)(i.data.entity_id)&&(a++,(0,u.C)(e,{message:t.localize("ui.panel.config.updates.updates_refreshed",{count:a})}))}),"state_changed");await t.callService("homeassistant","update_entity",{entity_id:i}),await new Promise((e=>{setTimeout(e,15e3)})),n(),0===a&&(0,u.C)(e,{message:t.localize("ui.panel.config.updates.no_new_updates")})},$=(e,t)=>{const i=e.state,a=e.attributes;if("off"===i){return a.latest_version&&a.skipped_version===a.latest_version?a.latest_version:t.formatEntityState(e)}if("on"===i&&m(e)){return(0,o.e)(e,f.PROGRESS)&&null!==a.update_percentage?t.localize("ui.card.update.installing_with_progress",{progress:(0,r.uf)(a.update_percentage,t.locale,{maximumFractionDigits:a.display_precision,minimumFractionDigits:a.display_precision})}):t.localize("ui.card.update.installing")}return t.formatEntityState(e)},C=(e,t)=>{const i=e.entity_id,a=t[i]?.domain;if("hassio"!==a)return"generic";const n=e.attributes.title||"";return n===_?"home_assistant":[_,g,y].includes(n)?"generic":"addon"};a()}catch(e){a(e)}}))},61107:function(e,t,i){i.d(t,{E:()=>s,O:()=>n});var a=i(36522);const n=()=>Promise.all([i.e("46379"),i.e("66031"),i.e("72206"),i.e("97983"),i.e("24199"),i.e("27506"),i.e("42950"),i.e("65505"),i.e("58640"),i.e("83423"),i.e("18865"),i.e("27090"),i.e("88975"),i.e("3049"),i.e("21876"),i.e("89790"),i.e("61843"),i.e("15626")]).then(i.bind(i,2711)),s=(e,t)=>{(0,a.B)(e,"show-dialog",{dialogTag:"dialog-area-registry-detail",dialogImport:n,dialogParams:t})}},71220:function(e,t,i){i.d(t,{Dm:()=>o,jg:()=>s,p4:()=>n,pN:()=>d,xC:()=>a});const a=e=>{let t=e;return"string"==typeof e&&(t=parseInt(e,16)),"0x"+t.toString(16).padStart(4,"0")},n=e=>e.split(":").slice(-4).reverse().join(""),s=(e,t)=>{const i=e.user_given_name?e.user_given_name:e.name,a=t.user_given_name?t.user_given_name:t.name;return i.localeCompare(a)},d=(e,t)=>{const i=e.name,a=t.name;return i.localeCompare(a)},o=e=>`${e.name} (Endpoint id: ${e.endpoint_id}, Id: ${a(e.id)}, Type: ${e.type})`},24992:function(e,t,i){i.a(e,(async function(e,a){try{i.r(t);var n=i(44249),s=i(72621),d=(i(9359),i(70104),i(31622),i(57243)),o=i(15093),r=i(17170),l=i(74794),c=(i(97546),i(28008)),u=i(73192),h=i(34976),f=i(82323),v=(i(40917),e([r,f,h]));[r,f,h]=v.then?(await v)():v;(0,n.Z)([(0,o.Mo)("zha-add-devices-page")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,o.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,o.Cb)({type:Boolean})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,o.Cb)({attribute:"is-wide",type:Boolean})],key:"isWide",value:()=>!1},{kind:"field",decorators:[(0,o.Cb)({attribute:!1})],key:"route",value:void 0},{kind:"field",decorators:[(0,o.SB)()],key:"_error",value:void 0},{kind:"field",decorators:[(0,o.SB)()],key:"_discoveredDevices",value:()=>({})},{kind:"field",decorators:[(0,o.SB)()],key:"_formattedEvents",value:()=>""},{kind:"field",decorators:[(0,o.SB)()],key:"_active",value:()=>!1},{kind:"field",decorators:[(0,o.SB)()],key:"_showHelp",value:()=>!1},{kind:"field",decorators:[(0,o.SB)()],key:"_showLogs",value:()=>!1},{kind:"field",key:"_ieeeAddress",value:void 0},{kind:"field",key:"_addDevicesTimeoutHandle",value(){}},{kind:"field",key:"_subscribed",value:void 0},{kind:"method",key:"connectedCallback",value:function(){(0,s.Z)(i,"connectedCallback",this,3)([]),this.route&&this.route.path&&""!==this.route.path?this._ieeeAddress=this.route.path.substring(1):this._ieeeAddress=void 0,this._subscribe()}},{kind:"method",key:"disconnectedCallback",value:function(){(0,s.Z)(i,"disconnectedCallback",this,3)([]),this._unsubscribe(),this._error=void 0,this._discoveredDevices={},this._formattedEvents=""}},{kind:"method",key:"updated",value:function(e){(0,s.Z)(i,"updated",this,3)([e]),!e.has("hass")||this._active||e.get("hass")||this._subscribe()}},{kind:"method",key:"render",value:function(){return d.dy` <hass-tabs-subpage .hass="${this.hass}" .narrow="${this.narrow}" .route="${this.route}" .tabs="${h.zhaTabs}"> <mwc-button slot="toolbar-icon" @click="${this._toggleLogs}">${this._showLogs?"Hide logs":"Show logs"}</mwc-button> <div class="searching"> ${this._active?d.dy` <h1> ${this.hass.localize("ui.panel.config.zha.add_device_page.spinner")} </h1> <ha-spinner aria-label="Searching"></ha-spinner> `:d.dy` <div> <mwc-button @click="${this._subscribe}" class="search-button"> ${this.hass.localize("ui.panel.config.zha.add_device_page.search_again")} </mwc-button> </div> `} </div> ${this._error?d.dy` <div class="error">${this._error}</div> `:""} <div class="content"> ${Object.keys(this._discoveredDevices).length<1?d.dy` <div class="discovery-text"> <h4> ${this.hass.localize("ui.panel.config.zha.add_device_page.pairing_mode",{documentation_link:d.dy` <a target="_blank" rel="noopener noreferrer" href="${(0,u.R)(this.hass,"/integrations/zha#adding-devices")}"> ${this.hass.localize("ui.panel.config.zha.add_device_page.pairing_mode_link")} </a> `})} </h4> <h4> ${this.hass.localize(this._active?"ui.panel.config.zha.add_device_page.discovered_text":"ui.panel.config.zha.add_device_page.no_devices_found")} </h4> </div> `:d.dy` ${Object.values(this._discoveredDevices).map((e=>d.dy` <zha-device-pairing-status-card class="card" .hass="${this.hass}" .device="${e}" .narrow="${this.narrow}" .showHelp="${this._showHelp}"></zha-device-pairing-status-card> `))} `} </div> ${this._showLogs?d.dy`<ha-textarea readonly="readonly" class="log" autogrow .value="${this._formattedEvents}"> </ha-textarea>`:""} </hass-tabs-subpage> `}},{kind:"method",key:"_toggleLogs",value:function(){this._showLogs=!this._showLogs}},{kind:"method",key:"_handleMessage",value:function(e){e.type===l.t3&&(this._formattedEvents+=e.log_entry.message+"\n"),e.type&&l.An.includes(e.type)&&(this._discoveredDevices[e.device_info.ieee]=e.device_info)}},{kind:"method",key:"_unsubscribe",value:function(){this._active=!1,this._addDevicesTimeoutHandle&&clearTimeout(this._addDevicesTimeoutHandle),this._subscribed&&(this._subscribed.then((e=>e())),this._subscribed=void 0)}},{kind:"method",key:"_deactivate",value:function(){this._active=!1,this._addDevicesTimeoutHandle&&clearTimeout(this._addDevicesTimeoutHandle)}},{kind:"method",key:"_subscribe",value:function(){if(!this.hass)return;this._active=!0;const e={type:"zha/devices/permit",duration:254};this._ieeeAddress&&(e.ieee=this._ieeeAddress),this._subscribed=this.hass.connection.subscribeMessage((e=>this._handleMessage(e)),e),this._addDevicesTimeoutHandle=setTimeout((()=>this._deactivate()),254e3)}},{kind:"get",static:!0,key:"styles",value:function(){return[c.Qx,d.iv`.discovery-text{width:100%;padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center}.content{display:flex;flex-wrap:wrap;padding:4px;justify-content:center}.error{color:var(--error-color)}ha-spinner{margin:20px}.searching{margin-top:20px;display:flex;flex-direction:column;align-items:center;text-align:center}.card{margin:8px}.log{padding:16px}.toggle-help-icon{position:absolute;margin-top:16px;margin-right:16px;margin-inline-end:16px;margin-inline-start:initial;top:-6px;right:0;inset-inline-end:0;inset-inline-start:initial;color:var(--primary-color)}.search-button{margin-top:16px;margin-left:16px;margin-inline-start:16px;margin-inline-end:initial}.help-text{color:grey;padding-left:16px;padding-inline-start:16px;padding-inline-end:initial}ha-textarea{width:100%}`]}}]}}),d.oi);a()}catch(e){a(e)}}))},84162:function(e,t,i){i.a(e,(async function(e,t){try{var a=i(44249),n=(i(9359),i(56475),i(70104),i(57243)),s=i(15093),d=i(27486),o=i(36522),r=i(47194),l=i(1416),c=i(34798),u=i(5460),h=(i(81282),i(54977),i(83166),i(46329)),f=i(63318),v=i(76131),p=i(6736),m=i(28008),b=i(71220),_=e([u]);u=(_.then?(await _)():_)[0];(0,a.Z)([(0,s.Mo)("zha-device-card")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"device",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"narrow",value:()=>!1},{kind:"field",decorators:[(0,s.SB)()],key:"_entities",value:()=>[]},{kind:"field",key:"_deviceEntities",value(){return(0,d.Z)(((e,t)=>t.filter((t=>t.device_id===e)).map((e=>({...e,stateName:this._computeEntityName(e)}))).sort(((e,t)=>(0,l.$K)(e.stateName||`zzz${e.entity_id}`,t.stateName||`zzz${t.entity_id}`,this.hass.locale.language)))))}},{kind:"method",key:"hassSubscribe",value:function(){return[(0,f.LM)(this.hass.connection,(e=>{this._entities=e}))]}},{kind:"method",key:"render",value:function(){if(!this.hass||!this.device)return n.Ld;const e=this._deviceEntities(this.device.device_reg_id,this._entities);return n.dy` <ha-card> <div class="card-content"> <div> <div class="model">${this.device.model}</div> <div class="manuf"> ${this.hass.localize("ui.dialogs.zha_device_info.manuf",{manufacturer:this.device.manufacturer})} </div> </div> <div class="device-entities"> ${e.map((e=>e.disabled_by?"":n.dy` <state-badge @click="${this._openMoreInfo}" .title="${e.stateName}" .hass="${this.hass}" .stateObj="${this.hass.states[e.entity_id]}" slot="item-icon"></state-badge> `))} </div> <ha-textfield type="string" @change="${this._rename}" .value="${this.device.user_given_name||this.device.name}" .label="${this.hass.localize("ui.dialogs.zha_device_info.zha_device_card.device_name_placeholder")}"></ha-textfield> <ha-area-picker .hass="${this.hass}" .device="${this.device.device_reg_id}" @value-changed="${this._areaPicked}"></ha-area-picker> </div> </ha-card> `}},{kind:"method",key:"_rename",value:async function(e){if(!this.hass||!this.device)return;const t=this.device,i=t.user_given_name||t.name,a=e.target.value;if(this.device.user_given_name=a,await(0,h.t1)(this.hass,t.device_reg_id,{name_by_user:a}),!i||!a||i===a)return;const n=this._deviceEntities(t.device_reg_id,this._entities),s=(0,c.l)(i),d=(0,c.l)(a),o=(0,b.p4)(t.ieee),r=n.map((e=>{const t=e.name||e.stateName;let n=null,r=null;if(t&&t.includes(i)&&(r=t.replace(` ${o}`,""),r=r.replace(i,a),n=e.entity_id.replace(`_${o}`,""),n=n.replace(s,d)),r||n)return(0,f.Nv)(this.hass,e.entity_id,{name:r||t,disabled_by:e.disabled_by,new_entity_id:n||e.entity_id})}));await Promise.all(r)}},{kind:"method",key:"_openMoreInfo",value:function(e){(0,o.B)(this,"hass-more-info",{entityId:e.currentTarget.stateObj.entity_id})}},{kind:"method",key:"_computeEntityName",value:function(e){return this.hass.states[e.entity_id]?(0,r.C)(this.hass.states[e.entity_id]):e.name}},{kind:"method",key:"_areaPicked",value:async function(e){const t=e.currentTarget,i=e.detail.value;try{await(0,h.t1)(this.hass,this.device.device_reg_id,{area_id:i}),this.device.area_id=i}ca