42 lines
4.4 KiB
JavaScript
42 lines
4.4 KiB
JavaScript
import{_ as e,j as i,e as t,t as o,i as a,y as n,O as r,n as d,d as s}from"./main-85e087f9.js";import"./c.eab7754a.js";import{g as l}from"./c.f2bb3724.js";import{d as c}from"./c.36ae07d6.js";import{c as u}from"./c.874c8cfd.js";import{b as h}from"./c.07e395f8.js";import"./c.fea0de05.js";import"./c.8e28b461.js";import"./c.388f6c87.js";import"./c.7398f5d5.js";e([d("ha-config-entry-picker")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",key:"hass",value:void 0},{kind:"field",decorators:[t()],key:"integration",value:void 0},{kind:"field",decorators:[t()],key:"label",value:void 0},{kind:"field",decorators:[t()],key:"value",value:()=>""},{kind:"field",decorators:[t()],key:"helper",value:void 0},{kind:"field",decorators:[o()],key:"_configEntries",value:void 0},{kind:"field",decorators:[t({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[t({type:Boolean})],key:"required",value:()=>!1},{kind:"field",decorators:[a("ha-combo-box")],key:"_comboBox",value:void 0},{kind:"method",key:"open",value:function(){var e;null===(e=this._comboBox)||void 0===e||e.open()}},{kind:"method",key:"focus",value:function(){var e;null===(e=this._comboBox)||void 0===e||e.focus()}},{kind:"method",key:"firstUpdated",value:function(){this._getConfigEntries()}},{kind:"field",key:"_rowRenderer",value(){return e=>{var i;return n`<mwc-list-item twoline graphic="icon">
|
|
<span
|
|
>${e.title||this.hass.localize("ui.panel.config.integrations.config_entry.unnamed_entry")}</span
|
|
>
|
|
<span slot="secondary">${e.localized_domain_name}</span>
|
|
<img
|
|
slot="graphic"
|
|
src=${h({domain:e.domain,type:"icon",darkOptimized:null===(i=this.hass.themes)||void 0===i?void 0:i.darkMode})}
|
|
referrerpolicy="no-referrer"
|
|
@error=${this._onImageError}
|
|
@load=${this._onImageLoad}
|
|
/>
|
|
</mwc-list-item>`}}},{kind:"method",key:"render",value:function(){return this._configEntries?n`
|
|
<ha-combo-box
|
|
.hass=${this.hass}
|
|
.label=${void 0===this.label&&this.hass?this.hass.localize("ui.components.config-entry-picker.config_entry"):this.label}
|
|
.value=${this._value}
|
|
.required=${this.required}
|
|
.disabled=${this.disabled}
|
|
.helper=${this.helper}
|
|
.renderer=${this._rowRenderer}
|
|
.items=${this._configEntries}
|
|
item-value-path="entry_id"
|
|
item-id-path="entry_id"
|
|
item-label-path="title"
|
|
@value-changed=${this._valueChanged}
|
|
></ha-combo-box>
|
|
`:n``}},{kind:"method",key:"_onImageLoad",value:function(e){e.target.style.visibility="initial"}},{kind:"method",key:"_onImageError",value:function(e){e.target.style.visibility="hidden"}},{kind:"method",key:"_getConfigEntries",value:async function(){l(this.hass,{type:["device","hub","service"],domain:this.integration}).then((e=>{this._configEntries=e.map((e=>({...e,localized_domain_name:c(this.hass.localize,e.domain)}))).sort(((e,i)=>u(e.localized_domain_name+e.title,i.localized_domain_name+i.title)))}))}},{kind:"get",key:"_value",value:function(){return this.value||""}},{kind:"method",key:"_valueChanged",value:function(e){e.stopPropagation();const i=e.detail.value;i!==this._value&&this._setValue(i)}},{kind:"method",key:"_setValue",value:function(e){this.value=e,setTimeout((()=>{r(this,"value-changed",{value:e}),r(this,"change")}),0)}}]}}),i);let v=e([d("ha-selector-config_entry")],(function(e,i){return{F:class extends i{constructor(...i){super(...i),e(this)}},d:[{kind:"field",decorators:[t({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[t({attribute:!1})],key:"selector",value:void 0},{kind:"field",decorators:[t()],key:"value",value:void 0},{kind:"field",decorators:[t()],key:"label",value:void 0},{kind:"field",decorators:[t()],key:"helper",value:void 0},{kind:"field",decorators:[t({type:Boolean})],key:"disabled",value:()=>!1},{kind:"field",decorators:[t({type:Boolean})],key:"required",value:()=>!0},{kind:"method",key:"render",value:function(){var e;return n`<ha-config-entry-picker
|
|
.hass=${this.hass}
|
|
.value=${this.value}
|
|
.label=${this.label}
|
|
.helper=${this.helper}
|
|
.disabled=${this.disabled}
|
|
.required=${this.required}
|
|
.integration=${null===(e=this.selector.config_entry)||void 0===e?void 0:e.integration}
|
|
allow-custom-entity
|
|
></ha-config-entry-picker>`}},{kind:"field",static:!0,key:"styles",value:()=>s`
|
|
ha-config-entry-picker {
|
|
width: 100%;
|
|
}
|
|
`}]}}),i);export{v as HaConfigEntrySelector};
|