iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
3 lines • 38.5 kB
JavaScript
/*! For license information please see 92212.65895c412e80f633.js.LICENSE.txt */
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["92212"],{81282:function(e,i,a){a.a(e,(async function(e,i){try{var t=a(61701),o=(a(19083),a(71695),a(9359),a(68107),a(56475),a(70104),a(52924),a(19423),a(40251),a(61006),a(47021),a(57243)),s=a(50778),n=a(35359),r=a(27486),l=a(36522),d=a(73850),c=a(24360),h=a(82100),u=a(71857),p=a(76131),v=a(61107),m=a(94279),y=(a(23334),a(7285),a(37583),e([m]));m=(y.then?(await y)():y)[0];let _,g,b,f,k=e=>e;const $="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",x=e=>(0,o.dy)(_||(_=k`<ha-list-item graphic="icon" class="${0}"> ${0} ${0} </ha-list-item>`),(0,n.$)({"add-new":e.area_id===C}),e.icon?(0,o.dy)(g||(g=k`<ha-icon slot="graphic" .icon="${0}"></ha-icon>`),e.icon):(0,o.dy)(b||(b=k`<ha-svg-icon slot="graphic" .path="${0}"></ha-svg-icon>`),$),e.name),C="___ADD_NEW___",w="___NO_ITEMS___",B="___ADD_NEW_SUGGESTION___";(0,t.Z)([(0,s.Mo)("ha-area-picker")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),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(){return!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(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"required",value(){return!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(){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:"_getAreas",value(){return(0,r.Z)(((e,i,a,t,o,s,n,r,l,c)=>{let h,p,v={};(t||o||s||n||r)&&(v=(0,u.R6)(a),h=i,p=a.filter((e=>e.area_id)),t&&(h=h.filter((e=>{const i=v[e.id];return!(!i||!i.length)&&v[e.id].some((e=>t.includes((0,d.M)(e.entity_id))))})),p=p.filter((e=>t.includes((0,d.M)(e.entity_id))))),o&&(h=h.filter((e=>{const i=v[e.id];return!i||!i.length||a.every((e=>!o.includes((0,d.M)(e.entity_id))))})),p=p.filter((e=>!o.includes((0,d.M)(e.entity_id))))),s&&(h=h.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&&s.includes(i.attributes.device_class))}))})),p=p.filter((e=>{const i=this.hass.states[e.entity_id];return i.attributes.device_class&&s.includes(i.attributes.device_class)}))),n&&(h=h.filter((e=>n(e)))),r&&(h=h.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&&r(i)}))})),p=p.filter((e=>{const i=this.hass.states[e.entity_id];return!!i&&r(i)}))));let m,y=e;return h&&(m=h.filter((e=>e.area_id)).map((e=>e.area_id))),p&&(m=(null!=m?m:[]).concat(p.filter((e=>e.area_id)).map((e=>e.area_id)))),m&&(y=y.filter((e=>m.includes(e.area_id)))),c&&(y=y.filter((e=>!c.includes(e.area_id)))),y.length||(y=[{area_id:w,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}]),l?y:[...y,{area_id:C,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=>Object.assign(Object.assign({},e),{},{strings:[e.area_id,...e.aliases,e.name]})));this.comboBox.items=e,this.comboBox.filteredItems=e}}},{kind:"method",key:"render",value:function(){var e;return(0,o.dy)(f||(f=k` <ha-combo-box .hass="${0}" .helper="${0}" item-value-path="area_id" item-id-path="area_id" item-label-path="name" .value="${0}" .disabled="${0}" .required="${0}" .label="${0}" .placeholder="${0}" .renderer="${0}" -changed="${0}" -changed="${0}" -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,x,this._filterChanged,this._openedChanged,this._areaChanged)}},{kind:"method",key:"_filterChanged",value:function(e){var i;const a=e.target,t=e.detail.value;if(!t)return void(this.comboBox.filteredItems=this.comboBox.items);const o=(0,c.q)(t,(null===(i=a.items)||void 0===i?void 0:i.filter((e=>![w,C].includes(e.label_id))))||[]);0===o.length?this.noAdd?(this._suggestion=t,this.comboBox.filteredItems=[{area_id:B,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:w,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=o}},{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 i=e.detail.value;if(i===w)return i="",void this.comboBox.setInputValue("");[B,C].includes(i)?(e.target.value=this._value,this.hass.loadFragmentTranslation("config"),(0,v.E)(this,{suggestedName:i===B?this._suggestion:"",createEntry:async e=>{try{const i=await(0,h.Lo)(this.hass,e),a=[...Object.values(this.hass.areas),i];this.comboBox.filteredItems=this._getAreas(a,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(i.area_id)}catch(i){(0,p.showAlertDialog)(this,{title:this.hass.localize("ui.components.area-picker.failed_create_area"),text:i.message})}}}),this._suggestion=void 0,this.comboBox.setInputValue("")):i!==this._value&&this._setValue(i)}},{kind:"method",key:"_setValue",value:function(e){this.value=e,setTimeout((()=>{(0,l.B)(this,"value-changed",{value:e}),(0,l.B)(this,"change")}),0)}}]}}),o.oi);i()}catch(_){i(_)}}))},33067:function(e,i,a){a.a(e,(async function(e,i){try{var t=a(61701),o=(a(71695),a(47021),a(57243)),s=a(50778),n=a(94571),r=a(45729),l=a(88238),d=(a(65981),e([r]));r=(d.then?(await d)():d)[0];let c,h,u,p,v,m,y,_=e=>e;(0,t.Z)([(0,s.Mo)("ha-domain-icon")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"domain",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"deviceClass",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"icon",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:"brand-fallback",type:Boolean})],key:"brandFallback",value:void 0},{kind:"method",key:"render",value:function(){if(this.icon)return(0,o.dy)(c||(c=_`<ha-icon .icon="${0}"></ha-icon>`),this.icon);if(!this.domain)return o.Ld;if(!this.hass)return this._renderFallback();const e=(0,r.KS)(this.hass,this.domain,this.deviceClass).then((e=>e?(0,o.dy)(h||(h=_`<ha-icon .icon="${0}"></ha-icon>`),e):this._renderFallback()));return(0,o.dy)(u||(u=_`${0}`),(0,n.C)(e))}},{kind:"method",key:"_renderFallback",value:function(){if(this.domain&&this.domain in r.Ls)return(0,o.dy)(p||(p=_` <ha-svg-icon .path="${0}"></ha-svg-icon> `),r.Ls[this.domain]);if(this.brandFallback){var e;const i=(0,l.X1)({domain:this.domain,type:"icon",darkOptimized:null===(e=this.hass.themes)||void 0===e?void 0:e.darkMode});return(0,o.dy)(v||(v=_` <img alt="" src="${0}" crossorigin="anonymous" referrerpolicy="no-referrer"> `),i)}return(0,o.dy)(m||(m=_`<ha-svg-icon .path="${0}"></ha-svg-icon>`),r.Rb)}},{kind:"field",static:!0,key:"styles",value(){return(0,o.iv)(y||(y=_`img{width:var(--mdc-icon-size,24px)}`))}}]}}),o.oi);i()}catch(c){i(c)}}))},21393:function(e,i,a){a.a(e,(async function(e,t){try{a.r(i),a.d(i,{HaIconPicker:()=>x});var o=a(61701),s=(a(19083),a(71695),a(92745),a(61893),a(9359),a(56475),a(31526),a(70104),a(52924),a(40251),a(92519),a(42179),a(89256),a(24931),a(88463),a(57449),a(19814),a(61006),a(47021),a(57243)),n=a(50778),r=a(27486),l=a(36522),d=a(80654),c=a(94279),h=(a(7285),a(65981),e([c]));c=(h.then?(await h)():h)[0];let u,p,v,m,y,_=e=>e,g=[],b=!1;const f=async()=>{b=!0;const e=await a.e("25016").then(a.t.bind(a,58134,19));g=e.default.map((e=>({icon:`mdi:${e.name}`,parts:new Set(e.name.split("-")),keywords:e.keywords})));const i=[];Object.keys(d.g).forEach((e=>{i.push(k(e))})),(await Promise.all(i)).forEach((e=>{g.push(...e)}))},k=async e=>{try{const i=d.g[e].getIconList;if("function"!=typeof i)return[];const a=await i();return a.map((i=>{var a;return{icon:`${e}:${i.name}`,parts:new Set(i.name.split("-")),keywords:null!==(a=i.keywords)&&void 0!==a?a:[]}}))}catch(i){return console.warn(`Unable to load icon list for ${e} iconset`),[]}},$=e=>(0,s.dy)(u||(u=_`<ha-list-item graphic="avatar"> <ha-icon .icon="${0}" slot="graphic"></ha-icon> ${0} </ha-list-item>`),e.icon,e.icon);let x=(0,o.Z)([(0,n.Mo)("ha-icon-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)()],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)()],key:"placeholder",value:void 0},{kind:"field",decorators:[(0,n.Cb)({attribute:"error-message"})],key:"errorMessage",value:void 0},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"disabled",value(){return!1}},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"required",value(){return!1}},{kind:"field",decorators:[(0,n.Cb)({type:Boolean})],key:"invalid",value(){return!1}},{kind:"method",key:"render",value:function(){return(0,s.dy)(p||(p=_` <ha-combo-box .hass="${0}" item-value-path="icon" item-label-path="icon" .value="${0}" allow-custom-value .dataProvider="${0}" .label="${0}" .helper="${0}" .disabled="${0}" .required="${0}" .placeholder="${0}" .errorMessage="${0}" .invalid="${0}" .renderer="${0}" icon -changed="${0}" -changed="${0}"> ${0} </ha-combo-box> `),this.hass,this._value,b?this._iconProvider:void 0,this.label,this.helper,this.disabled,this.required,this.placeholder,this.errorMessage,this.invalid,$,this._openedChanged,this._valueChanged,this._value||this.placeholder?(0,s.dy)(v||(v=_` <ha-icon .icon="${0}" slot="icon"> </ha-icon> `),this._value||this.placeholder):(0,s.dy)(m||(m=_`<slot slot="icon" name="fallback"></slot>`)))}},{kind:"field",key:"_filterIcons",value(){return(0,r.Z)(((e,i=g)=>{if(!e)return i;const a=[],t=(e,i)=>a.push({icon:e,rank:i});for(const o of i)o.parts.has(e)?t(o.icon,1):o.keywords.includes(e)?t(o.icon,2):o.icon.includes(e)?t(o.icon,3):o.keywords.some((i=>i.includes(e)))&&t(o.icon,4);return 0===a.length&&t(e,0),a.sort(((e,i)=>e.rank-i.rank))}))}},{kind:"field",key:"_iconProvider",value(){return(e,i)=>{const a=this._filterIcons(e.filter.toLowerCase(),g),t=e.page*e.pageSize,o=t+e.pageSize;i(a.slice(t,o),a.length)}}},{kind:"method",key:"_openedChanged",value:async function(e){e.detail.value&&!b&&(await f(),this.requestUpdate())}},{kind:"method",key:"_valueChanged",value:function(e){e.stopPropagation(),this._setValue(e.detail.value)}},{kind:"method",key:"_setValue",value:function(e){this.value=e,(0,l.B)(this,"value-changed",{value:this._value},{bubbles:!1,composed:!1})}},{kind:"get",key:"_value",value:function(){return this.value||""}},{kind:"field",static:!0,key:"styles",value(){return(0,s.iv)(y||(y=_`[slot=icon]{color:var(--primary-text-color);position:relative;bottom:2px}[slot=prefix]{margin-right:8px;margin-inline-end:8px;margin-inline-start:initial}`))}}]}}),s.oi);t()}catch(u){t(u)}}))},61179:function(e,i,a){a.a(e,(async function(e,t){try{a.r(i);var o=a(61701),s=(a(63721),a(19083),a(71695),a(19423),a(40251),a(61006),a(47021),a(31622),a(57243)),n=a(50778),r=a(36522),l=(a(99426),a(33067)),d=a(21393),c=(a(40917),a(83166),a(73422)),h=a(49658),u=(a(41307),a(74666),a(60370),a(81282)),p=a(28008),v=e([l,d,c,h,u]);[l,d,c,h,u]=v.then?(await v)():v;let m,y,_,g,b,f,k,$,x,C,w,B,O=e=>e;const L="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",D="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";(0,o.Z)([(0,n.Mo)("ha-dialog-automation-save")],(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.SB)()],key:"_opened",value(){return!1}},{kind:"field",decorators:[(0,n.SB)()],key:"_error",value:void 0},{kind:"field",decorators:[(0,n.SB)()],key:"_visibleOptionals",value(){return[]}},{kind:"field",decorators:[(0,n.SB)()],key:"_entryUpdates",value:void 0},{kind:"field",key:"_params",value:void 0},{kind:"field",key:"_newName",value:void 0},{kind:"field",key:"_newIcon",value:void 0},{kind:"field",key:"_newDescription",value:void 0},{kind:"method",key:"showDialog",value:function(e){var i,a,t;this._opened=!0,this._params=e,this._newIcon="icon"in e.config?e.config.icon:void 0,this._newName=e.config.alias||this.hass.localize(`ui.panel.config.${this._params.domain}.editor.default_name`),this._newDescription=e.config.description||"",this._entryUpdates=e.entityRegistryUpdate||{area:(null===(i=e.entityRegistryEntry)||void 0===i?void 0:i.area_id)||"",labels:(null===(a=e.entityRegistryEntry)||void 0===a?void 0:a.labels)||[],category:(null===(t=e.entityRegistryEntry)||void 0===t?void 0:t.categories[e.domain])||""},this._visibleOptionals=[this._newDescription?"description":"",this._newIcon?"icon":"",this._entryUpdates.category?"category":"",this._entryUpdates.labels.length>0?"labels":"",this._entryUpdates.area?"area":""]}},{kind:"method",key:"closeDialog",value:function(){return this._params.onClose(),this._opened&&(0,r.B)(this,"dialog-closed",{dialog:this.localName}),this._opened=!1,this._visibleOptionals=[],!0}},{kind:"method",key:"_renderOptionalChip",value:function(e,i){return this._visibleOptionals.includes(e)?s.Ld:(0,s.dy)(m||(m=O` <ha-assist-chip id="${0}" ="${0}" label="${0}"> <ha-svg-icon slot="icon" .path="${0}"></ha-svg-icon> </ha-assist-chip> `),e,this._addOptional,i,D)}},{kind:"method",key:"_renderDiscard",value:function(){return this._params.onDiscard?(0,s.dy)(y||(y=O` <ha-button ="${0}" slot="secondaryAction" class="destructive"> ${0} </ha-button> `),this._handleDiscard,this.hass.localize("ui.common.dont_save")):s.Ld}},{kind:"method",key:"_renderInputs",value:function(){return this._params.hideInputs?s.Ld:(0,s.dy)(_||(_=O` <ha-textfield dialogInitialFocus .value="${0}" .placeholder="${0}" .label="${0}" required type="string" ="${0}"></ha-textfield> ${0} ${0} ${0} ${0} ${0} <ha-chip-set> ${0} ${0} ${0} ${0} ${0} </ha-chip-set> `),this._newName,this.hass.localize(`ui.panel.config.${this._params.domain}.editor.default_name`),this.hass.localize("ui.panel.config.automation.editor.alias"),this._valueChanged,"script"===this._params.domain&&this._visibleOptionals.includes("icon")?(0,s.dy)(g||(g=O` <ha-icon-picker .hass="${0}" .label="${0}" .value="${0}" -changed="${0}"> <ha-domain-icon slot="fallback" domain="${0}" .hass="${0}"> </ha-domain-icon> </ha-icon-picker> `),this.hass,this.hass.localize("ui.panel.config.automation.editor.icon"),this._newIcon,this._iconChanged,this._params.domain,this.hass):s.Ld,this._visibleOptionals.includes("description")?(0,s.dy)(b||(b=O` <ha-textarea .label="${0}" .placeholder="${0}" name="description" autogrow .value="${0}" ="${0}"></ha-textarea>`),this.hass.localize("ui.panel.config.automation.editor.description.label"),this.hass.localize("ui.panel.config.automation.editor.description.placeholder"),this._newDescription,this._valueChanged):s.Ld,this._visibleOptionals.includes("category")?(0,s.dy)(f||(f=O` <ha-category-picker id="category" .hass="${0}" .scope="${0}" .value="${0}" -changed="${0}"></ha-category-picker>`),this.hass,this._params.domain,this._entryUpdates.category,this._registryEntryChanged):s.Ld,this._visibleOptionals.includes("labels")?(0,s.dy)(k||(k=O` <ha-labels-picker id="labels" .hass="${0}" .value="${0}" -changed="${0}"></ha-labels-picker>`),this.hass,this._entryUpdates.labels,this._registryEntryChanged):s.Ld,this._visibleOptionals.includes("area")?(0,s.dy)($||($=O` <ha-area-picker id="area" .hass="${0}" .value="${0}" -changed="${0}"></ha-area-picker>`),this.hass,this._entryUpdates.area,this._registryEntryChanged):s.Ld,this._renderOptionalChip("description",this.hass.localize("ui.panel.config.automation.editor.dialog.add_description")),"script"===this._params.domain?this._renderOptionalChip("icon",this.hass.localize("ui.panel.config.automation.editor.dialog.add_icon")):s.Ld,this._renderOptionalChip("area",this.hass.localize("ui.panel.config.automation.editor.dialog.add_area")),this._renderOptionalChip("category",this.hass.localize("ui.panel.config.automation.editor.dialog.add_category")),this._renderOptionalChip("labels",this.hass.localize("ui.panel.config.automation.editor.dialog.add_labels")))}},{kind:"method",key:"render",value:function(){if(!this._opened)return s.Ld;const e=this.hass.localize(this._params.config.alias?"ui.panel.config.automation.editor.rename":"ui.panel.config.automation.editor.save");return(0,s.dy)(x||(x=O` <ha-dialog open scrimClickAction ="${0}" .heading="${0}"> <ha-dialog-header slot="heading"> <ha-icon-button slot="navigationIcon" dialogAction="cancel" .label="${0}" .path="${0}"></ha-icon-button> <span slot="title">${0}</span> </ha-dialog-header> ${0} ${0} ${0} ${0} <div slot="primaryAction"> <mwc-button ="${0}"> ${0} </mwc-button> <mwc-button ="${0}"> ${0} </mwc-button> </div> </ha-dialog> `),this.closeDialog,e,this.hass.localize("ui.common.close"),L,this._params.title||e,this._error?(0,s.dy)(C||(C=O`<ha-alert alert-type="error">${0}</ha-alert>`),this.hass.localize("ui.panel.config.automation.editor.missing_name")):"",this._params.description?(0,s.dy)(w||(w=O`<p>${0}</p>`),this._params.description):s.Ld,this._renderInputs(),this._renderDiscard(),this.closeDialog,this.hass.localize("ui.common.cancel"),this._save,this.hass.localize(this._params.config.alias&&!this._params.onDiscard?"ui.panel.config.automation.editor.rename":"ui.panel.config.automation.editor.save"))}},{kind:"method",key:"_addOptional",value:function(e){e.stopPropagation();const i=e.target.id;this._visibleOptionals=[...this._visibleOptionals,i]}},{kind:"method",key:"_registryEntryChanged",value:function(e){e.stopPropagation();const i=e.target.id,a=e.detail.value;this._entryUpdates=Object.assign(Object.assign({},this._entryUpdates),{},{[i]:a})}},{kind:"method",key:"_iconChanged",value:function(e){e.stopPropagation(),this._newIcon=e.detail.value||void 0}},{kind:"method",key:"_valueChanged",value:function(e){e.stopPropagation();const i=e.target;"description"===i.name?this._newDescription=i.value:this._newName=i.value}},{kind:"method",key:"_handleDiscard",value:function(){var e,i;null===(e=(i=this._params).onDiscard)||void 0===e||e.call(i),this.closeDialog()}},{kind:"method",key:"_save",value:async function(){this._newName?("script"===this._params.domain?await this._params.updateConfig(Object.assign(Object.assign({},this._params.config),{},{alias:this._newName,description:this._newDescription,icon:this._newIcon}),this._entryUpdates):await this._params.updateConfig(Object.assign(Object.assign({},this._params.config),{},{alias:this._newName,description:this._newDescription}),this._entryUpdates),this.closeDialog()):this._error="Name is required"}},{kind:"get",static:!0,key:"styles",value:function(){return[p.Qx,p.yu,(0,s.iv)(B||(B=O`ha-dialog{--dialog-content-padding:0 24px 24px 24px} all and (min-width:500px){ha-dialog{--mdc-dialog-min-width:min(500px, 95vw);--mdc-dialog-max-width:min(500px, 95vw)}}ha-area-picker,ha-category-picker,ha-icon-picker,ha-labels-picker,ha-textarea,ha-textfield{display:block}ha-area-picker,ha-category-picker,ha-chip-set,ha-icon-picker,ha-labels-picker{margin-top:16px}ha-alert{display:block;margin-bottom:16px}.destructive{--mdc-theme-primary:var(--error-color)}`))]}}]}}),s.oi);t()}catch(m){t(m)}}))},49658:function(e,i,a){a.a(e,(async function(e,i){try{var t=a(61701),o=(a(19083),a(71695),a(92745),a(9359),a(56475),a(70104),a(19423),a(40251),a(47021),a(57243)),s=a(50778),n=a(35359),r=a(27486),l=a(36522),d=a(24360),c=a(94279),h=(a(23334),a(7285),a(37583),a(36540)),u=a(6736),p=a(11917),v=e([c]);c=(v.then?(await v)():v)[0];let m,y,_,g,b=e=>e;const f="M5.5,7A1.5,1.5 0 0,1 4,5.5A1.5,1.5 0 0,1 5.5,4A1.5,1.5 0 0,1 7,5.5A1.5,1.5 0 0,1 5.5,7M21.41,11.58L12.41,2.58C12.05,2.22 11.55,2 11,2H4C2.89,2 2,2.89 2,4V11C2,11.55 2.22,12.05 2.59,12.41L11.58,21.41C11.95,21.77 12.45,22 13,22C13.55,22 14.05,21.77 14.41,21.41L21.41,14.41C21.78,14.05 22,13.55 22,13C22,12.44 21.77,11.94 21.41,11.58Z",k="___ADD_NEW___",$="___NO_CATEGORIES___",x="___ADD_NEW_SUGGESTION___",C=e=>(0,o.dy)(m||(m=b`<ha-list-item graphic="icon" class="${0}"> ${0} ${0} </ha-list-item>`),(0,n.$)({"add-new":e.category_id===k}),e.icon?(0,o.dy)(y||(y=b`<ha-icon slot="graphic" .icon="${0}"></ha-icon>`),e.icon):(0,o.dy)(_||(_=b`<ha-svg-icon .path="${0}" slot="graphic"></ha-svg-icon>`),f),e.name);(0,t.Z)([(0,s.Mo)("ha-category-picker")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"scope",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(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"disabled",value(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"required",value(){return!1}},{kind:"field",decorators:[(0,s.SB)()],key:"_opened",value:void 0},{kind:"field",decorators:[(0,s.SB)()],key:"_categories",value:void 0},{kind:"field",decorators:[(0,s.IO)("ha-combo-box",!0)],key:"comboBox",value:void 0},{kind:"field",key:"hassSubscribeRequiredHostProps",value(){return["scope"]}},{kind:"method",key:"hassSubscribe",value:function(){return[(0,h.U)(this.hass.connection,this.scope,(e=>{this._categories=e}))]}},{kind:"field",key:"_suggestion",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:"_getCategories",value(){return(0,r.Z)(((e,i)=>{const a=e?[...e]:[];return null!=a&&a.length||a.push({category_id:$,name:this.hass.localize("ui.components.category-picker.no_categories"),icon:null}),i?a:[...a,{category_id:k,name:this.hass.localize("ui.components.category-picker.add_new"),icon:"mdi:plus"}]}))}},{kind:"method",key:"updated",value:function(e){if(!this._init&&this.hass&&this._categories||this._init&&e.has("_opened")&&this._opened){this._init=!0;const e=this._getCategories(this._categories,this.noAdd).map((e=>Object.assign(Object.assign({},e),{},{strings:[e.name]})));this.comboBox.items=e,this.comboBox.filteredItems=e}}},{kind:"method",key:"render",value:function(){return this._categories?(0,o.dy)(g||(g=b` <ha-combo-box .hass="${0}" .helper="${0}" item-value-path="category_id" item-id-path="category_id" item-label-path="name" .value="${0}" .disabled="${0}" .required="${0}" .label="${0}" .placeholder="${0}" .renderer="${0}" -changed="${0}" -changed="${0}" -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.category-picker.category"):this.label,this.placeholder,C,this._filterChanged,this._openedChanged,this._categoryChanged):o.Ld}},{kind:"method",key:"_filterChanged",value:function(e){var i;const a=e.target,t=e.detail.value;if(!t)return void(this.comboBox.filteredItems=this.comboBox.items);const o=(0,d.q)(t,(null===(i=a.items)||void 0===i?void 0:i.filter((e=>![$,k].includes(e.category_id))))||[]);0===(null==o?void 0:o.length)?this.noAdd?this.comboBox.filteredItems=[{category_id:$,name:this.hass.localize("ui.components.category-picker.no_match"),icon:null}]:(this._suggestion=t,this.comboBox.filteredItems=[{category_id:x,name:this.hass.localize("ui.components.category-picker.add_new_sugestion",{name:this._suggestion}),icon:"mdi:plus"}]):this.comboBox.filteredItems=o}},{kind:"get",key:"_value",value:function(){return this.value||""}},{kind:"method",key:"_openedChanged",value:function(e){this._opened=e.detail.value}},{kind:"method",key:"_categoryChanged",value:function(e){e.stopPropagation();let i=e.detail.value;if(i===$)return i="",void this.comboBox.setInputValue("");[x,k].includes(i)?(e.target.value=this._value,this.hass.loadFragmentTranslation("config"),(0,p.n)(this,{scope:this.scope,suggestedName:i===x?this._suggestion:"",createEntry:async e=>{const i=await(0,h.DM)(this.hass,this.scope,e);return this._categories=[...this._categories,i],this.comboBox.filteredItems=this._getCategories(this._categories,this.noAdd),await this.updateComplete,await this.comboBox.updateComplete,this._setValue(i.category_id),i}}),this._suggestion=void 0,this.comboBox.setInputValue("")):i!==this._value&&this._setValue(i)}},{kind:"method",key:"_setValue",value:function(e){this.value=e,setTimeout((()=>{(0,l.B)(this,"value-changed",{value:e}),(0,l.B)(this,"change")}),0)}}]}}),(0,u.f)(o.oi));i()}catch(m){i(m)}}))},74514:function(e,i,a){a.d(i,{W:()=>g});var t=a(9065),o=a(50778),s=(a(71695),a(19423),a(47021),a(57243)),n=a(49144),r=a(17077);let l,d,c,h=e=>e;class u extends n.w{constructor(){super(...arguments),this.avatar=!1,this.href="",this.target="",this.removeOnly=!1,this.selected=!1}get primaryId(){return this.href?"link":this.removeOnly?"":"button"}get rippleDisabled(){return!this.href&&(this.disabled||this.softDisabled)}get primaryAction(){return this.removeOnly?null:this.renderRoot.querySelector(".primary.action")}getContainerClasses(){return Object.assign(Object.assign({},super.getContainerClasses()),{},{avatar:this.avatar,disabled:!this.href&&(this.disabled||this.softDisabled),link:!!this.href,selected:this.selected,"has-trailing":!0})}renderPrimaryAction(e){const{ariaLabel:i}=this;return this.href?(0,s.dy)(l||(l=h` <a class="primary action" id="link" aria-label="${0}" href="${0}" target="${0}">${0}</a> `),i||s.Ld,this.href,this.target||s.Ld,e):this.removeOnly?(0,s.dy)(d||(d=h` <span class="primary action" aria-label="${0}"> ${0} </span> `),i||s.Ld,e):(0,s.dy)(c||(c=h` <button class="primary action" id="button" aria-label="${0}" aria-disabled="${0}" ?disabled="${0}" type="button">${0}</button> `),i||s.Ld,this.softDisabled||s.Ld,this.disabled&&!this.alwaysFocusable,e)}renderTrailingAction(e){return(0,r.N)({focusListener:e,ariaLabel:this.ariaLabelRemove,disabled:!this.href&&(this.disabled||this.softDisabled),tabbable:this.removeOnly})}}(0,t.__decorate)([(0,o.Cb)({type:Boolean})],u.prototype,"avatar",void 0),(0,t.__decorate)([(0,o.Cb)()],u.prototype,"href",void 0),(0,t.__decorate)([(0,o.Cb)()],u.prototype,"target",void 0),(0,t.__decorate)([(0,o.Cb)({type:Boolean,attribute:"remove-only"})],u.prototype,"removeOnly",void 0),(0,t.__decorate)([(0,o.Cb)({type:Boolean,reflect:!0})],u.prototype,"selected",void 0),(0,t.__decorate)([(0,o.IO)(".trailing.action")],u.prototype,"trailingAction",void 0);let p;const v=(0,s.iv)(p||(p=(e=>e)`:host{--_container-height:var(--md-input-chip-container-height, 32px);--_disabled-label-text-color:var(--md-input-chip-disabled-label-text-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-label-text-opacity:var(--md-input-chip-disabled-label-text-opacity, 0.38);--_disabled-selected-container-color:var(--md-input-chip-disabled-selected-container-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-selected-container-opacity:var(--md-input-chip-disabled-selected-container-opacity, 0.12);--_label-text-font:var(--md-input-chip-label-text-font, var(--md-sys-typescale-label-large-font, var(--md-ref-typeface-plain, Roboto)));--_label-text-line-height:var(--md-input-chip-label-text-line-height, var(--md-sys-typescale-label-large-line-height, 1.25rem));--_label-text-size:var(--md-input-chip-label-text-size, var(--md-sys-typescale-label-large-size, 0.875rem));--_label-text-weight:var(--md-input-chip-label-text-weight, var(--md-sys-typescale-label-large-weight, var(--md-ref-typeface-weight-medium, 500)));--_selected-container-color:var(--md-input-chip-selected-container-color, var(--md-sys-color-secondary-container, #e8def8));--_selected-focus-label-text-color:var(--md-input-chip-selected-focus-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-label-text-color:var(--md-input-chip-selected-hover-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-color:var(--md-input-chip-selected-hover-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-state-layer-opacity:var(--md-input-chip-selected-hover-state-layer-opacity, 0.08);--_selected-label-text-color:var(--md-input-chip-selected-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-outline-width:var(--md-input-chip-selected-outline-width, 0px);--_selected-pressed-label-text-color:var(--md-input-chip-selected-pressed-label-text-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-color:var(--md-input-chip-selected-pressed-state-layer-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-state-layer-opacity:var(--md-input-chip-selected-pressed-state-layer-opacity, 0.12);--_disabled-outline-color:var(--md-input-chip-disabled-outline-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-outline-opacity:var(--md-input-chip-disabled-outline-opacity, 0.12);--_focus-label-text-color:var(--md-input-chip-focus-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_focus-outline-color:var(--md-input-chip-focus-outline-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-label-text-color:var(--md-input-chip-hover-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-color:var(--md-input-chip-hover-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-state-layer-opacity:var(--md-input-chip-hover-state-layer-opacity, 0.08);--_label-text-color:var(--md-input-chip-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_outline-color:var(--md-input-chip-outline-color, var(--md-sys-color-outline, #79747e));--_outline-width:var(--md-input-chip-outline-width, 1px);--_pressed-label-text-color:var(--md-input-chip-pressed-label-text-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-color:var(--md-input-chip-pressed-state-layer-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-state-layer-opacity:var(--md-input-chip-pressed-state-layer-opacity, 0.12);--_avatar-shape:var(--md-input-chip-avatar-shape, var(--md-sys-shape-corner-full, 9999px));--_avatar-size:var(--md-input-chip-avatar-size, 24px);--_disabled-avatar-opacity:var(--md-input-chip-disabled-avatar-opacity, 0.38);--_disabled-leading-icon-color:var(--md-input-chip-disabled-leading-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-leading-icon-opacity:var(--md-input-chip-disabled-leading-icon-opacity, 0.38);--_icon-size:var(--md-input-chip-icon-size, 18px);--_selected-focus-leading-icon-color:var(--md-input-chip-selected-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-hover-leading-icon-color:var(--md-input-chip-selected-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-leading-icon-color:var(--md-input-chip-selected-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_selected-pressed-leading-icon-color:var(--md-input-chip-selected-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_focus-leading-icon-color:var(--md-input-chip-focus-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_hover-leading-icon-color:var(--md-input-chip-hover-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_leading-icon-color:var(--md-input-chip-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_pressed-leading-icon-color:var(--md-input-chip-pressed-leading-icon-color, var(--md-sys-color-primary, #6750a4));--_disabled-trailing-icon-color:var(--md-input-chip-disabled-trailing-icon-color, var(--md-sys-color-on-surface, #1d1b20));--_disabled-trailing-icon-opacity:var(--md-input-chip-disabled-trailing-icon-opacity, 0.38);--_selected-focus-trailing-icon-color:var(--md-input-chip-selected-focus-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-hover-trailing-icon-color:var(--md-input-chip-selected-hover-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-pressed-trailing-icon-color:var(--md-input-chip-selected-pressed-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_selected-trailing-icon-color:var(--md-input-chip-selected-trailing-icon-color, var(--md-sys-color-on-secondary-container, #1d192b));--_focus-trailing-icon-color:var(--md-input-chip-focus-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_hover-trailing-icon-color:var(--md-input-chip-hover-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_pressed-trailing-icon-color:var(--md-input-chip-pressed-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_trailing-icon-color:var(--md-input-chip-trailing-icon-color, var(--md-sys-color-on-surface-variant, #49454f));--_container-shape-start-start:var(--md-input-chip-container-shape-start-start, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-start-end:var(--md-input-chip-container-shape-start-end, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-end:var(--md-input-chip-container-shape-end-end, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_container-shape-end-start:var(--md-input-chip-container-shape-end-start, var(--md-input-chip-container-shape, var(--md-sys-shape-corner-small, 8px)));--_leading-space:var(--md-input-chip-leading-space, 16px);--_trailing-space:var(--md-input-chip-trailing-space, 16px);--_icon-label-space:var(--md-input-chip-icon-label-space, 8px);--_with-leading-icon-leading-space:var(--md-input-chip-with-leading-icon-leading-space, 8px);--_with-trailing-icon-trailing-space:var(--md-input-chip-with-trailing-icon-trailing-space, 8px)}:host([avatar]){--_container-shape-start-start:var( --md-input-chip-container-shape-start-start, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-start-end:var( --md-input-chip-container-shape-start-end, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-end-end:var( --md-input-chip-container-shape-end-end, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) );--_container-shape-end-start:var( --md-input-chip-container-shape-end-start, var(--md-input-chip-container-shape, calc(var(--_container-height) / 2)) )}.avatar .primary.action{padding-inline-start:4px}.avatar .leading.icon ::slotted(:first-child){border-radius:var(--_avatar-shape);height:var(--_avatar-size);width:var(--_avatar-size)}.disabled.avatar .leading.icon{opacity:var(--_disabled-avatar-opacity)}{.link .outline{border-color:ActiveText}.disabled.avatar .leading.icon{opacity:1}}`));var m=a(98128),y=a(21016),_=a(86529);let g=class extends u{};g.styles=[y.W,_.W,m.W,v],g=(0,t.__decorate)([(0,o.Mo)("md-input-chip")],g)}}]);
//# sourceMappingURL=92212.65895c412e80f633.js.map