UNPKG

iobroker.lovelace

Version:

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

2 lines 37.5 kB
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["71958"],{86431:function(e,i,t){t.d(i,{jL:()=>s,wZ:()=>d});t(71695),t(81804),t(47021);var a=t(47194);const s=e=>{var i;return null===(i=e.name_by_user||e.name)||void 0===i?void 0:i.trim()},d=(e,i,t)=>s(e)||t&&n(i,t)||i.localize("ui.panel.config.devices.unnamed_device",{type:i.localize(`ui.panel.config.devices.type.${e.entry_type||"device"}`)}),n=(e,i)=>{for(const t of i||[]){const i="string"==typeof t?t:t.entity_id,s=e.states[i];if(s)return(0,a.C)(s)}}},98157:function(e,i,t){t.a(e,(async function(e,i){try{var a=t(61701),s=(t(19083),t(71695),t(61893),t(9359),t(68107),t(56475),t(70104),t(52924),t(40251),t(61006),t(47021),t(57243)),d=t(50778),n=t(27486),o=t(36522),l=t(86431),r=t(73850),c=t(1416),h=t(24360),u=t(71857),v=t(94279),p=(t(7285),e([v]));v=(p.then?(await p)():p)[0];let _,y,m=e=>e;const f=e=>(0,s.dy)(_||(_=m`<ha-list-item .twoline="${0}"> <span>${0}</span> <span slot="secondary">${0}</span> </ha-list-item>`),!!e.area,e.name,e.area);(0,a.Z)([(0,d.Mo)("ha-device-picker")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"value",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"helper",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"include-domains"})],key:"includeDomains",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"exclude-domains"})],key:"excludeDomains",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"include-device-classes"})],key:"includeDeviceClasses",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"exclude-devices"})],key:"excludeDevices",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"deviceFilter",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"entityFilter",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"disabled",value(){return!1}},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"required",value(){return!1}},{kind:"field",decorators:[(0,d.SB)()],key:"_opened",value:void 0},{kind:"field",decorators:[(0,d.IO)("ha-combo-box",!0)],key:"comboBox",value:void 0},{kind:"field",key:"_init",value(){return!1}},{kind:"field",key:"_getDevices",value(){return(0,n.Z)(((e,i,t,a,s,d,n,o,h)=>{if(!e.length)return[{id:"no_devices",area:"",name:this.hass.localize("ui.components.device-picker.no_devices"),strings:[]}];let v={};(a||s||d||o)&&(v=(0,u.R6)(t));let p=e.filter((e=>e.id===this.value||!e.disabled_by));a&&(p=p.filter((e=>{const i=v[e.id];return!(!i||!i.length)&&v[e.id].some((e=>a.includes((0,r.M)(e.entity_id))))}))),s&&(p=p.filter((e=>{const i=v[e.id];return!i||!i.length||t.every((e=>!s.includes((0,r.M)(e.entity_id))))}))),h&&(p=p.filter((e=>!h.includes(e.id)))),d&&(p=p.filter((e=>{const i=v[e.id];return!(!i||!i.length)&&v[e.id].some((e=>{const i=this.hass.states[e.entity_id];return!!i&&(i.attributes.device_class&&d.includes(i.attributes.device_class))}))}))),o&&(p=p.filter((e=>{const i=v[e.id];return!(!i||!i.length)&&i.some((e=>{const i=this.hass.states[e.entity_id];return!!i&&o(i)}))}))),n&&(p=p.filter((e=>e.id===this.value||n(e))));const _=p.map((e=>{const t=(0,l.wZ)(e,this.hass,v[e.id]);return{id:e.id,name:t||this.hass.localize("ui.components.device-picker.unnamed_device"),area:e.area_id&&i[e.area_id]?i[e.area_id].name:this.hass.localize("ui.components.device-picker.no_area"),strings:[t||""]}}));return _.length?1===_.length?_:_.sort(((e,i)=>(0,c.$K)(e.name||"",i.name||"",this.hass.locale.language))):[{id:"no_devices",area:"",name:this.hass.localize("ui.components.device-picker.no_match"),strings:[]}]}))}},{kind:"method",key:"open",value:async function(){var e;await this.updateComplete,await(null===(e=this.comboBox)||void 0===e?void 0:e.open())}},{kind:"method",key:"focus",value:async function(){var e;await this.updateComplete,await(null===(e=this.comboBox)||void 0===e?void 0:e.focus())}},{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._getDevices(Object.values(this.hass.devices),this.hass.areas,Object.values(this.hass.entities),this.includeDomains,this.excludeDomains,this.includeDeviceClasses,this.deviceFilter,this.entityFilter,this.excludeDevices);this.comboBox.items=e,this.comboBox.filteredItems=e}}},{kind:"method",key:"render",value:function(){return(0,s.dy)(y||(y=m` <ha-combo-box .hass="${0}" .label="${0}" .value="${0}" .helper="${0}" .renderer="${0}" .disabled="${0}" .required="${0}" item-id-path="id" item-value-path="id" item-label-path="name" @opened-changed="${0}" @value-changed="${0}" @filter-changed="${0}"></ha-combo-box> `),this.hass,void 0===this.label&&this.hass?this.hass.localize("ui.components.device-picker.device"):this.label,this._value,this.helper,f,this.disabled,this.required,this._openedChanged,this._deviceChanged,this._filterChanged)}},{kind:"get",key:"_value",value:function(){return this.value||""}},{kind:"method",key:"_filterChanged",value:function(e){const i=e.target,t=e.detail.value.toLowerCase();i.filteredItems=t.length?(0,h.q)(t,i.items||[]):i.items}},{kind:"method",key:"_deviceChanged",value:function(e){e.stopPropagation();let i=e.detail.value;"no_devices"===i&&(i=""),i!==this._value&&this._setValue(i)}},{kind:"method",key:"_openedChanged",value:function(e){this._opened=e.detail.value}},{kind:"method",key:"_setValue",value:function(e){this.value=e,setTimeout((()=>{(0,o.B)(this,"value-changed",{value:e}),(0,o.B)(this,"change")}),0)}}]}}),s.oi);i()}catch(_){i(_)}}))},25131:function(e,i,t){t.a(e,(async function(e,i){try{var a=t(61701),s=(t(19083),t(71695),t(92745),t(61893),t(9359),t(68107),t(56475),t(1331),t(31526),t(70104),t(52924),t(40251),t(61006),t(47021),t(57243)),d=t(50778),n=t(69634),o=t(27486),l=t(36522),r=t(73850),c=t(1416),h=t(24360),u=t(20172),v=t(71857),p=t(36595),_=t(94279),y=(t(20165),t(23334),t(7285),t(37583),t(57707),e([_]));_=(y.then?(await y)():y)[0];let m,f,k,b,g,$,C=e=>e;const x="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";(0,a.Z)([(0,d.Mo)("ha-area-floor-picker")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"value",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"helper",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"placeholder",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"include-domains"})],key:"includeDomains",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"exclude-domains"})],key:"excludeDomains",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"include-device-classes"})],key:"includeDeviceClasses",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"exclude-areas"})],key:"excludeAreas",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Array,attribute:"exclude-floors"})],key:"excludeFloors",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"deviceFilter",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"entityFilter",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"disabled",value(){return!1}},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"required",value(){return!1}},{kind:"field",decorators:[(0,d.SB)()],key:"_opened",value:void 0},{kind:"field",decorators:[(0,d.IO)("ha-combo-box",!0)],key:"comboBox",value:void 0},{kind:"field",key:"_init",value(){return!1}},{kind:"method",key:"open",value:async function(){var e;await this.updateComplete,await(null===(e=this.comboBox)||void 0===e?void 0:e.open())}},{kind:"method",key:"focus",value:async function(){var e;await this.updateComplete,await(null===(e=this.comboBox)||void 0===e?void 0:e.focus())}},{kind:"field",key:"_rowRenderer",value(){return e=>{const i=(0,u.HE)(this.hass);return(0,s.dy)(m||(m=C` <ha-list-item graphic="icon" style="${0}"> ${0} ${0} ${0} </ha-list-item> `),"area"===e.type&&e.hasFloor?i?"--mdc-list-side-padding-right: 48px;":"--mdc-list-side-padding-left: 48px;":"","area"===e.type&&e.hasFloor?(0,s.dy)(f||(f=C`<ha-tree-indicator style="${0}" .end="${0}" slot="graphic"></ha-tree-indicator>`),(0,n.V)({width:"48px",position:"absolute",top:"0px",left:i?void 0:"8px",right:i?"8px":void 0,transform:i?"scaleX(-1)":""}),e.lastArea):s.Ld,"floor"===e.type?(0,s.dy)(k||(k=C`<ha-floor-icon slot="graphic" .floor="${0}"></ha-floor-icon>`),e):e.icon?(0,s.dy)(b||(b=C`<ha-icon slot="graphic" .icon="${0}"></ha-icon>`),e.icon):(0,s.dy)(g||(g=C`<ha-svg-icon slot="graphic" .path="${0}"></ha-svg-icon>`),x),e.name)}}},{kind:"field",key:"_getAreas",value(){return(0,o.Z)(((e,i,t,a,s,d,n,o,l,h,u)=>{if(!i.length&&!e.length)return[{id:"no_areas",type:"area",name:this.hass.localize("ui.components.area-picker.no_areas"),icon:null,strings:[],level:null}];let _,y,m={};(s||d||n||o||l)&&(m=(0,v.R6)(a),_=t,y=a.filter((e=>e.area_id)),s&&(_=_.filter((e=>{const i=m[e.id];return!(!i||!i.length)&&m[e.id].some((e=>s.includes((0,r.M)(e.entity_id))))})),y=y.filter((e=>s.includes((0,r.M)(e.entity_id))))),d&&(_=_.filter((e=>{const i=m[e.id];return!i||!i.length||a.every((e=>!d.includes((0,r.M)(e.entity_id))))})),y=y.filter((e=>!d.includes((0,r.M)(e.entity_id))))),n&&(_=_.filter((e=>{const i=m[e.id];return!(!i||!i.length)&&m[e.id].some((e=>{const i=this.hass.states[e.entity_id];return!!i&&(i.attributes.device_class&&n.includes(i.attributes.device_class))}))})),y=y.filter((e=>{const i=this.hass.states[e.entity_id];return i.attributes.device_class&&n.includes(i.attributes.device_class)}))),o&&(_=_.filter((e=>o(e)))),l&&(_=_.filter((e=>{const i=m[e.id];return!(!i||!i.length)&&m[e.id].some((e=>{const i=this.hass.states[e.entity_id];return!!i&&l(i)}))})),y=y.filter((e=>{const i=this.hass.states[e.entity_id];return!!i&&l(i)}))));let f,k=i;if(_&&(f=_.filter((e=>e.area_id)).map((e=>e.area_id))),y&&(f=(null!=f?f:[]).concat(y.filter((e=>e.area_id)).map((e=>e.area_id)))),f&&(k=k.filter((e=>f.includes(e.area_id)))),h&&(k=k.filter((e=>!h.includes(e.area_id)))),u&&(k=k.filter((e=>!e.floor_id||!u.includes(e.floor_id)))),!k.length)return[{id:"no_areas",type:"area",name:this.hass.localize("ui.components.area-picker.no_match"),icon:null,strings:[],level:null}];const b=(0,p.N5)(k),g=Object.values(k).filter((e=>!e.floor_id||!b[e.floor_id])),$=Object.entries(b).map((([i,t])=>[e.find((e=>e.floor_id===i)),t])).sort((([e],[i])=>{var t,a;return e.level!==i.level?(null!==(t=e.level)&&void 0!==t?t:0)-(null!==(a=i.level)&&void 0!==a?a:0):(0,c.$K)(e.name,i.name)})),C=[];return $.forEach((([e,i])=>{e&&C.push({id:e.floor_id,type:"floor",name:e.name,icon:e.icon,strings:[e.floor_id,...e.aliases,e.name],level:e.level}),C.push(...i.map(((e,i,t)=>({id:e.area_id,type:"area",name:e.name,icon:e.icon,strings:[e.area_id,...e.aliases,e.name],hasFloor:!0,level:null,lastArea:i===t.length-1}))))})),C.length||g.length||C.push({id:"no_areas",type:"area",name:this.hass.localize("ui.components.area-picker.unassigned_areas"),icon:null,strings:[],level:null}),C.push(...g.map((e=>({id:e.area_id,type:"area",name:e.name,icon:e.icon,strings:[e.area_id,...e.aliases,e.name],level:null})))),C}))}},{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.floors),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.excludeAreas,this.excludeFloors);this.comboBox.items=e,this.comboBox.filteredItems=e}}},{kind:"method",key:"render",value:function(){var e;return(0,s.dy)($||($=C` <ha-combo-box .hass="${0}" .helper="${0}" item-value-path="id" item-id-path="id" item-label-path="name" .value="${0}" .disabled="${0}" .required="${0}" .label="${0}" .placeholder="${0}" .renderer="${0}" @filter-changed="${0}" @opened-changed="${0}" @value-changed="${0}"> </ha-combo-box> `),this.hass,this.helper,this._value,this.disabled,this.required,void 0===this.label&&this.hass?this.hass.localize("ui.components.area-picker.area"):this.label,this.placeholder?null===(e=this.hass.areas[this.placeholder])||void 0===e?void 0:e.name:void 0,this._rowRenderer,this._filterChanged,this._openedChanged,this._areaChanged)}},{kind:"method",key:"_filterChanged",value:function(e){const i=e.target,t=e.detail.value;if(!t)return void(this.comboBox.filteredItems=this.comboBox.items);const a=(0,h.q)(t,i.items||[]);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:async function(e){e.stopPropagation();if("no_areas"===e.detail.value)return;const i=this.comboBox.selectedItem;(0,l.B)(this,"value-changed",{value:{id:i.id,type:i.type}})}}]}}),s.oi);i()}catch(m){i(m)}}))},20165:function(e,i,t){t.d(i,{m:()=>r});var a=t(61701),s=(t(71695),t(47021),t(57243)),d=t(50778);t(65981),t(37583);let n,o,l=e=>e;const r=e=>{switch(e.level){case 0:return"M11,10H13V16H11V10M22,12H19V20H5V12H2L12,3L22,12M15,10A2,2 0 0,0 13,8H11A2,2 0 0,0 9,10V16A2,2 0 0,0 11,18H13A2,2 0 0,0 15,16V10Z";case 1:return"M12,3L2,12H5V20H19V12H22L12,3M10,8H14V18H12V10H10V8Z";case 2:return"M12,3L2,12H5V20H19V12H22L12,3M9,8H13A2,2 0 0,1 15,10V12A2,2 0 0,1 13,14H11V16H15V18H9V14A2,2 0 0,1 11,12H13V10H9V8Z";case 3:return"M12,3L22,12H19V20H5V12H2L12,3M15,11.5V10C15,8.89 14.1,8 13,8H9V10H13V12H11V14H13V16H9V18H13A2,2 0 0,0 15,16V14.5A1.5,1.5 0 0,0 13.5,13A1.5,1.5 0 0,0 15,11.5Z";case-1:return"M12,3L2,12H5V20H19V12H22L12,3M11,15H7V13H11V15M15,18H13V10H11V8H15V18Z"}return"M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z"};(0,a.Z)([(0,d.Mo)("ha-floor-icon")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"floor",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"icon",value:void 0},{kind:"method",key:"render",value:function(){if(this.floor.icon)return(0,s.dy)(n||(n=l`<ha-icon .icon="${0}"></ha-icon>`),this.floor.icon);const e=r(this.floor);return(0,s.dy)(o||(o=l`<ha-svg-icon .path="${0}"></ha-svg-icon>`),e)}}]}}),s.oi)},34363:function(e,i,t){var a=t(61701),s=(t(71695),t(47021),t(57243)),d=t(50778);let n,o,l=e=>e;(0,a.Z)([(0,d.Mo)("ha-input-helper-text")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"method",key:"render",value:function(){return(0,s.dy)(n||(n=l`<slot></slot>`))}},{kind:"field",static:!0,key:"styles",value(){return(0,s.iv)(o||(o=l`:host{display:block;color:var(--mdc-text-field-label-ink-color,rgba(0,0,0,.6));font-size:.75rem;padding-left:16px;padding-right:16px;padding-inline-start:16px;padding-inline-end:16px}`))}}]}}),s.oi)},37432:function(e,i,t){t.a(e,(async function(e,i){try{var a=t(61701),s=(t(19083),t(71695),t(92745),t(9359),t(56475),t(1331),t(31526),t(70104),t(52924),t(19423),t(40251),t(61006),t(88044),t(47021),t(7370)),d=(t(31622),t(81843),t(57243)),n=t(50778),o=t(35359),l=t(95262),r=t(75011),c=t(11259),h=t(36522),u=t(49976),v=t(86431),p=t(73850),_=t(47194),y=t(31064),m=t(63860),f=t(6736),k=t(98157),b=t(58725),g=t(25131),$=t(20165),C=(t(23334),t(34363),t(37583),t(56032)),x=e([k,b,g,C]);[k,b,g,C]=x.then?(await x)():x;let H,V,M,L,F,D,w,O,j,z,B,Z,A,S,P,I,R=e=>e;const E="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",q="M3 6H21V4H3C1.9 4 1 4.9 1 6V18C1 19.1 1.9 20 3 20H7V18H3V6M13 12H9V13.78C8.39 14.33 8 15.11 8 16C8 16.89 8.39 17.67 9 18.22V20H13V18.22C13.61 17.67 14 16.88 14 16S13.61 14.33 13 13.78V12M11 17.5C10.17 17.5 9.5 16.83 9.5 16S10.17 14.5 11 14.5 12.5 15.17 12.5 16 11.83 17.5 11 17.5M22 8H16C15.5 8 15 8.5 15 9V19C15 19.5 15.5 20 16 20H22C22.5 20 23 19.5 23 19V9C23 8.5 22.5 8 22 8M21 18H17V10H21V18Z",T="M10,20V14H14V20H19V12H22L12,3L2,12H5V20H10Z",W="M17.63,5.84C17.27,5.33 16.67,5 16,5H5A2,2 0 0,0 3,7V17A2,2 0 0,0 5,19H16C16.67,19 17.27,18.66 17.63,18.15L22,12L17.63,5.84Z",K="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z",N="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",U="M18.17,12L15,8.83L16.41,7.41L21,12L16.41,16.58L15,15.17L18.17,12M5.83,12L9,15.17L7.59,16.59L3,12L7.59,7.42L9,8.83L5.83,12Z";(0,a.Z)([(0,n.Mo)("ha-target-picker")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"value",value:void 0},{kind:"field",decorators:[(0,n.Cb)()],key:"label",value:void 0},{kind:"field",decorators:[(0,n.Cb)()],key:"helper",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:!1,type:Array})],key:"createDomains",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Array,attribute:"include-domains"})],key:"includeDomains",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Array,attribute:"include-device-classes"})],key:"includeDeviceClasses",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"deviceFilter",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:!1})],key:"entityFilter",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Boolean,reflect:!0})],key:"disabled",value(){return!1}},{kind:"field",decorators:[(0,n.Cb)({attribute:"add-on-top",type:Boolean})],key:"addOnTop",value(){return!1}},{kind:"field",decorators:[(0,n.SB)()],key:"_addMode",value:void 0},{kind:"field",decorators:[(0,n.IO)("#input")],key:"_inputElement",value:void 0},{kind:"field",decorators:[(0,n.IO)(".add-container",!0)],key:"_addContainer",value:void 0},{kind:"field",decorators:[(0,n.SB)()],key:"_labels",value:void 0},{kind:"field",key:"_opened",value(){return!1}},{kind:"method",key:"hassSubscribe",value:function(){return[(0,m.f4)(this.hass.connection,(e=>{this._labels=e}))]}},{kind:"method",key:"render",value:function(){return this.addOnTop?(0,d.dy)(H||(H=R` ${0} ${0} `),this._renderChips(),this._renderItems()):(0,d.dy)(V||(V=R` ${0} ${0} `),this._renderItems(),this._renderChips())}},{kind:"method",key:"_renderItems",value:function(){var e,i,t,a,s;return(0,d.dy)(M||(M=R` <div class="mdc-chip-set items"> ${0} ${0} ${0} ${0} ${0} </div> `),null!==(e=this.value)&&void 0!==e&&e.floor_id?(0,l.r)(this.value.floor_id).map((e=>{const i=this.hass.floors[e];return this._renderChip("floor_id",e,(null==i?void 0:i.name)||e,void 0,null==i?void 0:i.icon,i?(0,$.m)(i):T)})):"",null!==(i=this.value)&&void 0!==i&&i.area_id?(0,l.r)(this.value.area_id).map((e=>{const i=this.hass.areas[e];return this._renderChip("area_id",e,(null==i?void 0:i.name)||e,void 0,null==i?void 0:i.icon,N)})):d.Ld,null!==(t=this.value)&&void 0!==t&&t.device_id?(0,l.r)(this.value.device_id).map((e=>{const i=this.hass.devices[e];return this._renderChip("device_id",e,i?(0,v.wZ)(i,this.hass):e,void 0,void 0,q)})):d.Ld,null!==(a=this.value)&&void 0!==a&&a.entity_id?(0,l.r)(this.value.entity_id).map((e=>{const i=this.hass.states[e];return this._renderChip("entity_id",e,i?(0,_.C)(i):e,i)})):d.Ld,null!==(s=this.value)&&void 0!==s&&s.label_id?(0,l.r)(this.value.label_id).map((e=>{var i,t,a;const s=null===(i=this._labels)||void 0===i?void 0:i.find((i=>i.label_id===e));let d=null!=s&&s.color?(0,r.I)(s.color):void 0;if(null!==(t=d)&&void 0!==t&&t.startsWith("var(")){d=getComputedStyle(this).getPropertyValue(d.substring(4,d.length-1))}return null!==(a=d)&&void 0!==a&&a.startsWith("#")&&(d=(0,c.wK)(d).join(",")),this._renderChip("label_id",e,s?s.name:e,void 0,null==s?void 0:s.icon,W,d)})):d.Ld)}},{kind:"method",key:"_renderChips",value:function(){return(0,d.dy)(L||(L=R` <div class="mdc-chip-set add-container"> <div class="mdc-chip area_id add" .type="${0}" @click="${0}"> <div class="mdc-chip__ripple"></div> <ha-svg-icon class="mdc-chip__icon mdc-chip__icon--leading" .path="${0}"></ha-svg-icon> <span role="gridcell"> <span role="button" tabindex="0" class="mdc-chip__primary-action"> <span class="mdc-chip__text">${0}</span> </span> </span> </div> <div class="mdc-chip device_id add" .type="${0}" @click="${0}"> <div class="mdc-chip__ripple"></div> <ha-svg-icon class="mdc-chip__icon mdc-chip__icon--leading" .path="${0}"></ha-svg-icon> <span role="gridcell"> <span role="button" tabindex="0" class="mdc-chip__primary-action"> <span class="mdc-chip__text">${0}</span> </span> </span> </div> <div class="mdc-chip entity_id add" .type="${0}" @click="${0}"> <div class="mdc-chip__ripple"></div> <ha-svg-icon class="mdc-chip__icon mdc-chip__icon--leading" .path="${0}"></ha-svg-icon> <span role="gridcell"> <span role="button" tabindex="0" class="mdc-chip__primary-action"> <span class="mdc-chip__text">${0}</span> </span> </span> </div> <div class="mdc-chip label_id add" .type="${0}" @click="${0}"> <div class="mdc-chip__ripple"></div> <ha-svg-icon class="mdc-chip__icon mdc-chip__icon--leading" .path="${0}"></ha-svg-icon> <span role="gridcell"> <span role="button" tabindex="0" class="mdc-chip__primary-action"> <span class="mdc-chip__text">${0}</span> </span> </span> </div> ${0} </div> ${0} `),"area_id",this._showPicker,K,this.hass.localize("ui.components.target-picker.add_area_id"),"device_id",this._showPicker,K,this.hass.localize("ui.components.target-picker.add_device_id"),"entity_id",this._showPicker,K,this.hass.localize("ui.components.target-picker.add_entity_id"),"label_id",this._showPicker,K,this.hass.localize("ui.components.target-picker.add_label_id"),this._renderPicker(),this.helper?(0,d.dy)(F||(F=R`<ha-input-helper-text>${0}</ha-input-helper-text>`),this.helper):"")}},{kind:"method",key:"_showPicker",value:function(e){this._addMode=e.currentTarget.type}},{kind:"method",key:"_renderChip",value:function(e,i,t,a,s,n,l){return(0,d.dy)(D||(D=R` <div class="mdc-chip ${0}" style="${0}"> ${0} ${0} <span role="gridcell"> <span role="button" tabindex="0" class="mdc-chip__primary-action"> <span class="mdc-chip__text">${0}</span> </span> </span> ${0} <span role="gridcell"> <ha-tooltip .content="${0}"> <ha-icon-button class="mdc-chip__icon mdc-chip__icon--trailing" .label="${0}" .path="${0}" hide-title .id="${0}" .type="${0}" @click="${0}"></ha-icon-button> </ha-tooltip> </span> </div> `),(0,o.$)({[e]:!0}),l?`--color: rgb(${l}); --background-color: rgba(${l}, .5)`:"",s?(0,d.dy)(w||(w=R`<ha-icon class="mdc-chip__icon mdc-chip__icon--leading" .icon="${0}"></ha-icon>`),s):n?(0,d.dy)(O||(O=R`<ha-svg-icon class="mdc-chip__icon mdc-chip__icon--leading" .path="${0}"></ha-svg-icon>`),n):"",a?(0,d.dy)(j||(j=R`<ha-state-icon class="mdc-chip__icon mdc-chip__icon--leading" .hass="${0}" .stateObj="${0}"></ha-state-icon>`),this.hass,a):"",t,"entity_id"===e?"":(0,d.dy)(z||(z=R`<span role="gridcell"> <ha-tooltip .content="${0}"> <ha-icon-button class="expand-btn mdc-chip__icon mdc-chip__icon--trailing" .label="${0}" .path="${0}" hide-title .id="${0}" .type="${0}" @click="${0}"></ha-icon-button> </ha-tooltip> </span>`),this.hass.localize(`ui.components.target-picker.expand_${e}`),this.hass.localize("ui.components.target-picker.expand"),U,i,e,this._handleExpand),this.hass.localize(`ui.components.target-picker.remove_${e}`),this.hass.localize("ui.components.target-picker.remove"),E,i,e,this._handleRemove)}},{kind:"method",key:"_renderPicker",value:function(){var e,i,t,a,s;return this._addMode?(0,d.dy)(B||(B=R`<mwc-menu-surface open .anchor="${0}" @closed="${0}" @opened="${0}" @opened-changed="${0}" @input="${0}">${0}</mwc-menu-surface>`),this._addContainer,this._onClosed,this._onOpened,this._openedChanged,u.U,"area_id"===this._addMode?(0,d.dy)(Z||(Z=R` <ha-area-floor-picker .hass="${0}" id="input" .type="${0}" .label="${0}" no-add .deviceFilter="${0}" .entityFilter="${0}" .includeDeviceClasses="${0}" .includeDomains="${0}" .excludeAreas="${0}" .excludeFloors="${0}" @value-changed="${0}" @click="${0}"></ha-area-floor-picker> `),this.hass,"area_id",this.hass.localize("ui.components.target-picker.add_area_id"),this.deviceFilter,this.entityFilter,this.includeDeviceClasses,this.includeDomains,(0,l.r)(null===(e=this.value)||void 0===e?void 0:e.area_id),(0,l.r)(null===(i=this.value)||void 0===i?void 0:i.floor_id),this._targetPicked,this._preventDefault):"device_id"===this._addMode?(0,d.dy)(A||(A=R` <ha-device-picker .hass="${0}" id="input" .type="${0}" .label="${0}" .deviceFilter="${0}" .entityFilter="${0}" .includeDeviceClasses="${0}" .includeDomains="${0}" .excludeDevices="${0}" @value-changed="${0}" @click="${0}"></ha-device-picker> `),this.hass,"device_id",this.hass.localize("ui.components.target-picker.add_device_id"),this.deviceFilter,this.entityFilter,this.includeDeviceClasses,this.includeDomains,(0,l.r)(null===(t=this.value)||void 0===t?void 0:t.device_id),this._targetPicked,this._preventDefault):"label_id"===this._addMode?(0,d.dy)(S||(S=R` <ha-label-picker .hass="${0}" id="input" .type="${0}" .label="${0}" no-add .deviceFilter="${0}" .entityFilter="${0}" .includeDeviceClasses="${0}" .includeDomains="${0}" .excludeLabels="${0}" @value-changed="${0}" @click="${0}"></ha-label-picker> `),this.hass,"label_id",this.hass.localize("ui.components.target-picker.add_label_id"),this.deviceFilter,this.entityFilter,this.includeDeviceClasses,this.includeDomains,(0,l.r)(null===(a=this.value)||void 0===a?void 0:a.label_id),this._targetPicked,this._preventDefault):(0,d.dy)(P||(P=R` <ha-entity-picker .hass="${0}" id="input" .type="${0}" .label="${0}" .entityFilter="${0}" .includeDeviceClasses="${0}" .includeDomains="${0}" .excludeEntities="${0}" .createDomains="${0}" @value-changed="${0}" @click="${0}" allow-custom-entity></ha-entity-picker> `),this.hass,"entity_id",this.hass.localize("ui.components.target-picker.add_entity_id"),this.entityFilter,this.includeDeviceClasses,this.includeDomains,(0,l.r)(null===(s=this.value)||void 0===s?void 0:s.entity_id),this.createDomains,this._targetPicked,this._preventDefault)):d.Ld}},{kind:"method",key:"_targetPicked",value:function(e){if(e.stopPropagation(),!e.detail.value)return;let i=e.detail.value;const t=e.currentTarget;let a=t.type;("entity_id"!==a||(0,y.T)(i))&&("area_id"===a&&(i=e.detail.value.id,a=`${e.detail.value.type}_id`),t.value="",this.value&&this.value[a]&&(0,l.r)(this.value[a]).includes(i)||(0,h.B)(this,"value-changed",{value:this.value?Object.assign(Object.assign({},this.value),{},{[a]:this.value[a]?[...(0,l.r)(this.value[a]),i]:i}):{[a]:i}}))}},{kind:"method",key:"_handleExpand",value:function(e){const i=e.currentTarget,t=[],a=[],s=[];if("floor_id"===i.type)Object.values(this.hass.areas).forEach((e=>{var a;e.floor_id!==i.id||null!==(a=this.value.area_id)&&void 0!==a&&a.includes(e.area_id)||!this._areaMeetsFilter(e)||t.push(e.area_id)}));else if("area_id"===i.type)Object.values(this.hass.devices).forEach((e=>{var t;e.area_id!==i.id||null!==(t=this.value.device_id)&&void 0!==t&&t.includes(e.id)||!this._deviceMeetsFilter(e)||a.push(e.id)})),Object.values(this.hass.entities).forEach((e=>{var t;e.area_id!==i.id||null!==(t=this.value.entity_id)&&void 0!==t&&t.includes(e.entity_id)||!this._entityRegMeetsFilter(e)||s.push(e.entity_id)}));else if("device_id"===i.type)Object.values(this.hass.entities).forEach((e=>{var t;e.device_id!==i.id||null!==(t=this.value.entity_id)&&void 0!==t&&t.includes(e.entity_id)||!this._entityRegMeetsFilter(e)||s.push(e.entity_id)}));else{if("label_id"!==i.type)return;Object.values(this.hass.areas).forEach((e=>{var a;!e.labels.includes(i.id)||null!==(a=this.value.area_id)&&void 0!==a&&a.includes(e.area_id)||!this._areaMeetsFilter(e)||t.push(e.area_id)})),Object.values(this.hass.devices).forEach((e=>{var t;!e.labels.includes(i.id)||null!==(t=this.value.device_id)&&void 0!==t&&t.includes(e.id)||!this._deviceMeetsFilter(e)||a.push(e.id)})),Object.values(this.hass.entities).forEach((e=>{var t;!e.labels.includes(i.id)||null!==(t=this.value.entity_id)&&void 0!==t&&t.includes(e.entity_id)||!this._entityRegMeetsFilter(e)||s.push(e.entity_id)}))}let d=this.value;s.length&&(d=this._addItems(d,"entity_id",s)),a.length&&(d=this._addItems(d,"device_id",a)),t.length&&(d=this._addItems(d,"area_id",t)),d=this._removeItem(d,i.type,i.id),(0,h.B)(this,"value-changed",{value:d})}},{kind:"method",key:"_handleRemove",value:function(e){const i=e.currentTarget;(0,h.B)(this,"value-changed",{value:this._removeItem(this.value,i.type,i.id)})}},{kind:"method",key:"_addItems",value:function(e,i,t){return Object.assign(Object.assign({},e),{},{[i]:e[i]?(0,l.r)(e[i]).concat(t):t})}},{kind:"method",key:"_removeItem",value:function(e,i,t){const a=(0,l.r)(e[i]).filter((e=>String(e)!==t));if(a.length)return Object.assign(Object.assign({},e),{},{[i]:a});const s=Object.assign({},e);return delete s[i],Object.keys(s).length?s:void 0}},{kind:"method",key:"_onClosed",value:function(e){e.stopPropagation(),e.target.open=!0}},{kind:"method",key:"_onOpened",value:async function(){var e,i;this._addMode&&(await(null===(e=this._inputElement)||void 0===e?void 0:e.focus()),await(null===(i=this._inputElement)||void 0===i?void 0:i.open()),this._opened=!0)}},{kind:"method",key:"_openedChanged",value:function(e){this._opened&&!e.detail.value&&(this._opened=!1,this._addMode=void 0)}},{kind:"method",key:"_preventDefault",value:function(e){e.preventDefault()}},{kind:"method",key:"_areaMeetsFilter",value:function(e){if(Object.values(this.hass.devices).filter((i=>i.area_id===e.area_id)).some((e=>this._deviceMeetsFilter(e))))return!0;return!!Object.values(this.hass.entities).filter((i=>i.area_id===e.area_id)).some((e=>this._entityRegMeetsFilter(e)))}},{kind:"method",key:"_deviceMeetsFilter",value:function(e){return!!Object.values(this.hass.entities).filter((i=>i.device_id===e.id)).some((e=>this._entityRegMeetsFilter(e)))&&!(this.deviceFilter&&!this.deviceFilter(e))}},{kind:"method",key:"_entityRegMeetsFilter",value:function(e){if(e.entity_category)return!1;if(this.includeDomains&&!this.includeDomains.includes((0,p.M)(e.entity_id)))return!1;if(this.includeDeviceClasses){const i=this.hass.states[e.entity_id];if(!i)return!1;if(!i.attributes.device_class||!this.includeDeviceClasses.includes(i.attributes.device_class))return!1}if(this.entityFilter){const i=this.hass.states[e.entity_id];if(!i)return!1;if(!this.entityFilter(i))return!1}return!0}},{kind:"get",static:!0,key:"styles",value:function(){return(0,d.iv)(I||(I=R`${0} .mdc-chip{color:var(--primary-text-color)}.items{z-index:2}.mdc-chip-set{padding:4px 0}.mdc-chip.add{color:rgba(0,0,0,.87)}.add-container{position:relative;display:inline-flex}.mdc-chip:not(.add){cursor:default}.mdc-chip ha-icon-button{--mdc-icon-button-size:24px;display:flex;align-items:center;outline:0}.mdc-chip ha-icon-button ha-svg-icon{border-radius:50%;background:var(--secondary-text-color)}.mdc-chip__icon.mdc-chip__icon--trailing{width:16px;height:16px;--mdc-icon-size:14px;color:var(--secondary-text-color);margin-inline-start:4px!important;margin-inline-end:-4px!important;direction:var(--direction)}.mdc-chip__icon--leading{display:flex;align-items:center;justify-content:center;--mdc-icon-size:20px;border-radius:50%;padding:6px;margin-left:-13px!important;margin-inline-start:-13px!important;margin-inline-end:4px!important;direction:var(--direction)}.expand-btn{margin-right:0;margin-inline-end:0;margin-inline-start:initial}.mdc-chip.area_id:not(.add),.mdc-chip.floor_id:not(.add){border:1px solid #fed6a4;background:var(--card-background-color)}.mdc-chip.area_id.add,.mdc-chip.area_id:not(.add) .mdc-chip__icon--leading,.mdc-chip.floor_id.add,.mdc-chip.floor_id:not(.add) .mdc-chip__icon--leading{background:#fed6a4}.mdc-chip.device_id:not(.add){border:1px solid #a8e1fb;background:var(--card-background-color)}.mdc-chip.device_id.add,.mdc-chip.device_id:not(.add) .mdc-chip__icon--leading{background:#a8e1fb}.mdc-chip.entity_id:not(.add){border:1px solid #d2e7b9;background:var(--card-background-color)}.mdc-chip.entity_id.add,.mdc-chip.entity_id:not(.add) .mdc-chip__icon--leading{background:#d2e7b9}.mdc-chip.label_id:not(.add){border:1px solid var(--color,#e0e0e0);background:var(--card-background-color)}.mdc-chip.label_id.add,.mdc-chip.label_id:not(.add) .mdc-chip__icon--leading{background:var(--background-color,#e0e0e0)}.mdc-chip:hover{z-index:5}:host([disabled]) .mdc-chip{opacity:var(--light-disabled-opacity);pointer-events:none}mwc-menu-surface{--mdc-menu-min-width:100%}ha-area-floor-picker,ha-device-picker,ha-entity-picker{display:block;width:100%}ha-tooltip{--ha-tooltip-arrow-size:0}`),(0,d.$m)(s))}}]}}),(0,f.f)(d.oi));i()}catch(H){i(H)}}))},56032:function(e,i,t){t.a(e,(async function(e,i){try{var a=t(61701),s=(t(71695),t(47021),t(80519)),d=t(1261),n=t(57243),o=t(50778),l=t(85605),r=e([s]);s=(r.then?(await r)():r)[0];let c,h=e=>e;(0,l.jx)("tooltip.show",{keyframes:[{opacity:0},{opacity:1}],options:{duration:150,easing:"ease"}}),(0,l.jx)("tooltip.hide",{keyframes:[{opacity:1},{opacity:0}],options:{duration:400,easing:"ease"}});(0,a.Z)([(0,o.Mo)("ha-tooltip")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",static:!0,key:"styles",value(){return[d.Z,(0,n.iv)(c||(c=h`:host{--sl-tooltip-background-color:var(--secondary-background-color);--sl-tooltip-color:var(--primary-text-color);--sl-tooltip-font-family:Roboto,sans-serif;--sl-tooltip-font-size:12px;--sl-tooltip-font-weight:normal;--sl-tooltip-line-height:1;--sl-tooltip-padding:8px;--sl-tooltip-border-radius:var(--ha-tooltip-border-radius, 4px);--sl-tooltip-arrow-size:var(--ha-tooltip-arrow-size, 8px);--sl-z-index-tooltip:var(--ha-tooltip-z-index, 1000)}`))]}}]}}),s.Z);i()}catch(c){i(c)}}))},57707:function(e,i,t){var a=t(61701),s=(t(71695),t(47021),t(57243)),d=t(50778);let n,o,l=e=>e;(0,a.Z)([(0,d.Mo)("ha-tree-indicator")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,d.Cb)({type:Boolean,reflect:!0})],key:"end",value(){return!1}},{kind:"method",key:"render",value:function(){return(0,s.dy)(n||(n=l` <svg width="100%" height="100%" viewBox="0 0 48 48"> <line x1="24" y1="0" x2="24" y2="${0}"></line> <line x1="24" y1="24" x2="36" y2="24"></line> </svg> `),this.end?"24":"48")}},{kind:"field",static:!0,key:"styles",value(){return(0,s.iv)(o||(o=l`:host{display:block;width:48px;height:48px}line{stroke:var(--divider-color);stroke-width:2;stroke-dasharray:2}`))}}]}}),s.oi)},36595:function(e,i,t){t.d(i,{N5:()=>n,fu:()=>d,jg:()=>s,z3:()=>a});t(71695),t(92745),t(19423),t(47021),t(1416),t(43839);const a=(e,i)=>e.callWS(Object.assign({type:"config/floor_registry/create"},i)),s=(e,i,t)=>e.callWS(Object.assign({type:"config/floor_registry/update",floor_id:i},t)),d=(e,i)=>e.callWS({type:"config/floor_registry/delete",floor_id:i}),n=e=>{const i={};for(const t of e)t.floor_id&&(t.floor_id in i||(i[t.floor_id]=[]),i[t.floor_id].push(t));return i}},63860:function(e,i,t){t.d(i,{$0:()=>c,NT:()=>n,f4:()=>l,jo:()=>r,uD:()=>h});t(61893),t(19423);var a=t(62212),s=t(1416),d=t(22381);const n=e=>e.sendMessagePromise({type:"config/label_registry/list"}).then((e=>e.sort(((e,i)=>(0,s.$K)(e.name,i.name))))),o=(e,i)=>e.subscribeEvents((0,d.D)((()=>n(e).then((e=>i.setState(e,!0)))),500,!0),"label_registry_updated"),l=(e,i)=>(0,a.B)("_labelRegistry",n,o,e,i),r=(e,i)=>e.callWS(Object.assign({type:"config/label_registry/create"},i)),c=(e,i,t)=>e.callWS(Object.assign({type:"config/label_registry/update",label_id:i},t)),h=(e,i)=>e.callWS({type:"config/label_registry/delete",label_id:i})},6736:function(e,i,t){t.d(i,{f:()=>n});var a=t(61701),s=t(72621),d=(t(19083),t(71695),t(9359),t(52924),t(40251),t(61006),t(47021),t(50778));const n=e=>(0,a.Z)(null,(function(e,i){class t extends i{constructor(...i){super(...i),e(this)}}return{F:t,d:[{kind:"field",decorators:[(0,d.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",key:"hassSubscribeRequiredHostProps",value:void 0},{kind:"field",key:"__unsubs",value:void 0},{kind:"method",key:"connectedCallback",value:function(){(0,s.Z)(t,"connectedCallback",this,3)([]),this._checkSubscribed()}},{kind:"method",key:"disconnectedCallback",value:function(){if((0,s.Z)(t,"disconnectedCallback",this,3)([]),this.__unsubs){for(;this.__unsubs.length;){const e=this.__unsubs.pop();e instanceof Promise?e.then((e=>e())):e()}this.__unsubs=void 0}}},{kind:"method",key:"updated",value:function(e){if((0,s.Z)(t,"updated",this,3)([e]),e.has("hass"))this._checkSubscribed();else if(this.hassSubscribeRequiredHostProps)for(const i of e.keys())if(this.hassSubscribeRequiredHostProps.includes(i))return void this._checkSubscribed()}},{kind:"method",key:"hassSubscribe",value:function(){return[]}},{kind:"method",key:"_checkSubscribed",value:function(){var e;void 0!==this.__unsubs||!this.isConnected||void 0===this.hass||null!==(e=this.hassSubscribeRequiredHostProps)&&void 0!==e&&e.some((e=>void 0===this[e]))||(this.__unsubs=this.hassSubscribe())}}]}}),e)}}]); //# sourceMappingURL=71958.85cd4e186c46ebd4.js.map