iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
10 lines • 47.9 kB
JavaScript
export const __rspack_esm_id=9205;export const __rspack_esm_ids=[9205];export const __webpack_modules__={93421(t,e,i){i.d(e,{IW:()=>d,dH:()=>l,fI:()=>c});i(44114);var a=i(35211),s=i(22792),o=i(32172);const r=(t,e)=>{let i=t;for(const t of e){if(null==i)return;i=i[t]}return i},n=(t,e,i)=>{const s=(0,o.p)({transformer:function(t){return i.call(this,t)},watch:e?[e]:[]}),r=(0,a.Fg)({context:t,subscribe:!0});return(t,e)=>{s(t,e),r(t,e)}},c=t=>n(s.iN,t.entityIdPath[0],function(e){const i=r(this,t.entityIdPath);return"string"==typeof i?e?.[i]:void 0}),l=t=>n(s.X1,t.entityIdPath[0],function(e){const i=r(this,t.entityIdPath);return"string"==typeof i?e?.[i]:void 0}),d=()=>n(s.D5,void 0,({localize:t})=>t)},32172(t,e,i){i.d(e,{p:()=>a});i(18111),i(7588),i(45367),i(92731),i(17642),i(58004),i(33853),i(45876),i(32475),i(15024),i(31698);function a(t){return(e,i)=>{if("object"==typeof i)throw new Error("This decorator does not support this compilation type.");const a=String(i),s=e;if(s._transformers){if(!s.hasOwnProperty("_transformers")){const t=s._transformers;s._transformers=new Map,t.forEach((t,e)=>s._transformers.set(e,t))}}else{s._transformers=new Map,s._watching=new Map;const t=s.willUpdate;s.willUpdate=function(e){t.call(this,e);const i=new Set;e.forEach((t,e)=>{const a=this._watching.get(e);void 0!==a&&a.forEach(t=>i.add(t))}),i.forEach(t=>{this[t]=this[`__original_${String(t)}`]})}}s._transformers.set(i,t.transformer),t.watch&&t.watch.forEach(t=>{let e=s._watching.get(t);e||(e=new Set,s._watching.set(t,e)),e.add(i)});const o=Object.getOwnPropertyDescriptor(e,i);let r;if(void 0===o)r={get(){return this[`__transform_${a}`]},set(t){const e=this[`__transform_${a}`],i=this._transformers.get(a);this[`__transform_${a}`]=i?i.call(this,t):t,this[`__original_${a}`]=t,this.requestUpdate(a,e)},configurable:!0,enumerable:!0};else{const t=o.set;r={...o,set(e){const i=this[`__transform_${a}`],s=this._transformers.get(a);this[`__transform_${a}`]=s?s.call(this,e):e,this[`__original_${a}`]=e,this.requestUpdate(a,i),t?.call(this,e)}}}Object.defineProperty(e,i,r)}}},69093(t,e,i){i.d(e,{t:()=>s});var a=i(71727);const s=t=>(0,a.m)(t.entity_id)},82286(t,e,i){i.d(e,{$:()=>a});const a=(t,e)=>s(t.attributes,e),s=(t,e)=>0!==(t.supported_features&e)},20058(t,e,i){i.a(t,async function(t,a){try{i.d(e,{QL:()=>h,ZQ:()=>p,ZV:()=>d,ty:()=>c,x:()=>n});var s=i(74487),o=(i(74423),i(18111),i(61701),i(46927)),r=t([s]);s=(r.then?(await r)():r)[0];const n=t=>c(t.attributes),c=(t,e)=>!!t.unit_of_measurement||!!t.state_class||(e||[]).includes(t.device_class||""),l=t=>{switch(t.number_format){case o.jG.comma_decimal:return["en-US","en"];case o.jG.decimal_comma:return["de","es","it"];case o.jG.space_comma:return["fr","sv","cs"];case o.jG.quote_decimal:return["de-CH"];case o.jG.system:return;default:return t.language}},d=(t,e,i)=>h(t,e,i).map(t=>t.value).join(""),h=(t,e,i)=>{const a=e?l(e):void 0;return e?.number_format===o.jG.none||Number.isNaN(Number(t))?Number.isNaN(Number(t))||""===t||e?.number_format!==o.jG.none?[{type:"literal",value:t}]:new Intl.NumberFormat("en-US",u(t,{...i,useGrouping:!1})).formatToParts(Number(t)):new Intl.NumberFormat(a,u(t,i)).formatToParts(Number(t))},p=(t,e)=>{const i=e?.display_precision;return null!=i?{maximumFractionDigits:i,minimumFractionDigits:i}:Number.isInteger(Number(t?.attributes?.step))&&Number.isInteger(Number(t?.state))?{maximumFractionDigits:0}:void 0},u=(t,e)=>{const i={maximumFractionDigits:2,...e};if("string"!=typeof t)return i;if(!e||void 0===e.minimumFractionDigits&&void 0===e.maximumFractionDigits){const e=t.indexOf(".")>-1?t.split(".")[1].length:0;i.minimumFractionDigits=e,i.maximumFractionDigits=e}return i};a()}catch(t){a(t)}})},38962(t,e,i){i.a(t,async function(t,a){try{i.r(e);var s=i(62826),o=i(5124),r=i(22441),n=i(6412),c=i(93421),l=i(1087),d=i(26300),h=(i(67094),t([d]));d=(h.then?(await h)():h)[0];const p="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",u={info:"M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z",warning:"M12,2L1,21H23M12,6L19.53,19H4.47M11,10V14H13V10M11,16V18H13V16",error:"M11,15H13V17H11V15M11,7H13V13H11V7M12,2C6.47,2 2,6.5 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20Z",success:"M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2,4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z"};class b extends o.WF{render(){return o.qy` <div class="issue-type ${(0,n.H)({[this.alertType]:!0})}" role="alert"> <div class="icon ${this.title?"":"no-title"}"> <slot name="icon"> <ha-svg-icon .path="${u[this.alertType]}"></ha-svg-icon> </slot> </div> <div class="${(0,n.H)({content:!0,narrow:this.narrow})}"> <div class="main-content"> ${this.title?o.qy`<div class="title">${this.title}</div>`:o.s6} <slot></slot> </div> <div class="action"> <slot name="action"> ${this.dismissable?o.qy`<ha-icon-button ="${this._dismissClicked}" .label="${this._localize?.("ui.common.dismiss_alert")}" .path="${p}"></ha-icon-button>`:o.s6} </slot> </div> </div> </div> `}_dismissClicked(){(0,l.r)(this,"alert-dismissed-clicked")}constructor(...t){super(...t),this.title="",this.alertType="info",this.dismissable=!1,this.narrow=!1}}b.styles=o.AH`.issue-type{position:relative;padding:8px;display:flex}.icon{height:var(--ha-alert-icon-size,24px);width:var(--ha-alert-icon-size,24px)}.issue-type::after{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.12;pointer-events:none;content:"";border-radius:var(--ha-border-radius-sm)}.icon.no-title{align-self:center}.content{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:var(--float-start)}.content.narrow{flex-direction:column;align-items:flex-end}.action{z-index:1;width:min-content;--mdc-theme-primary:var(--primary-text-color)}.main-content{overflow-wrap:anywhere;word-break:break-word;line-height:normal;margin-left:8px;margin-right:0;margin-inline-start:8px;margin-inline-end:8px}.title{margin-top:2px;font-weight:var(--ha-font-weight-bold)}.action ha-icon-button{--mdc-theme-primary:var(--primary-text-color);--ha-icon-button-size:36px}.issue-type.info>.icon{color:var(--info-color)}.issue-type.info::after{background-color:var(--info-color)}.issue-type.warning>.icon{color:var(--warning-color)}.issue-type.warning::after{background-color:var(--warning-color)}.issue-type.error>.icon{color:var(--error-color)}.issue-type.error::after{background-color:var(--error-color)}.issue-type.success>.icon{color:var(--success-color)}.issue-type.success::after{background-color:var(--success-color)}:host ::slotted(ul){margin:0;padding-inline-start:20px}`,(0,s.Cg)([(0,r.MZ)()],b.prototype,"title",void 0),(0,s.Cg)([(0,r.MZ)({attribute:"alert-type"})],b.prototype,"alertType",void 0),(0,s.Cg)([(0,r.MZ)({type:Boolean})],b.prototype,"dismissable",void 0),(0,s.Cg)([(0,r.wk)(),(0,c.IW)()],b.prototype,"_localize",void 0),(0,s.Cg)([(0,r.MZ)({type:Boolean})],b.prototype,"narrow",void 0),b=(0,s.Cg)([(0,r.EM)("ha-alert")],b),a()}catch(t){a(t)}})},832(t,e,i){i.a(t,async function(t,e){try{var a=i(62826),s=i(5124),o=i(22441),r=i(1087),n=i(26613),c=t([n]);n=(c.then?(await c)():c)[0];class l extends s.WF{render(){return this.aliases?s.qy` <ha-input-multi .value="${this.aliases}" .disabled="${this.disabled}" .sortable="${this.sortable}" update-on-blur .label="${this.hass.localize("ui.dialogs.aliases.label")}" .removeLabel="${this.hass.localize("ui.dialogs.aliases.remove")}" .addLabel="${this.hass.localize("ui.dialogs.aliases.add")}" item-index -changed="${this._aliasesChanged}"> </ha-input-multi> `:s.s6}_aliasesChanged(t){t.stopPropagation(),(0,r.r)(this,"value-changed",{value:t.detail.value})}constructor(...t){super(...t),this.disabled=!1,this.sortable=!1}}(0,a.Cg)([(0,o.MZ)({attribute:!1})],l.prototype,"hass",void 0),(0,a.Cg)([(0,o.MZ)({type:Array})],l.prototype,"aliases",void 0),(0,a.Cg)([(0,o.MZ)({type:Boolean})],l.prototype,"disabled",void 0),(0,a.Cg)([(0,o.MZ)({type:Boolean})],l.prototype,"sortable",void 0),l=(0,a.Cg)([(0,o.EM)("ha-aliases-editor")],l),e()}catch(t){e(t)}})},30716(t,e,i){var a=i(62826),s=i(72274),o=i(34875),r=i(7731),n=i(5124),c=i(22441),l=i(1087);const d=t=>t.preventDefault();var h=i(57237);i(9503);class p extends s.h{async onChange(t){t.stopPropagation(),super.onChange(t),(0,l.r)(this,t.type)}render(){const t=this.renderText(),e=this.graphic&&"control"!==this.graphic&&!this.left?this.renderGraphic():n.s6,i=this.hasMeta&&this.left?this.renderMeta():n.s6,a=this.renderRipple();return n.qy` ${a} ${e} ${this.left?"":t} <ha-checkbox tabindex="${this.separateCheckboxClick?this.tabindex:-1}" .checked="${this.selected}" .indeterminate="${this.indeterminate}" ?disabled="${this.disabled||this.checkboxDisabled}" ="${this.onChange}" ="${this.separateCheckboxClick?h.d:d}" class="${this.left?"left":""}"> </ha-checkbox> ${this.left?t:""} ${i}`}constructor(...t){super(...t),this.checkboxDisabled=!1,this.indeterminate=!1,this.separateCheckboxClick=!1}}p.styles=[r.R,o.R,n.AH`:host{--mdc-theme-secondary:var(--primary-color)}:host([graphic=avatar]) .mdc-deprecated-list-item__graphic,:host([graphic=control]) .mdc-deprecated-list-item__graphic,:host([graphic=large]) .mdc-deprecated-list-item__graphic,:host([graphic=medium]) .mdc-deprecated-list-item__graphic{margin-inline-end:var(--mdc-list-item-graphic-margin,16px);margin-inline-start:0px;direction:var(--direction)}ha-checkbox{flex-shrink:0;direction:var(--direction);margin-inline-start:auto;margin-inline-end:0;height:100%;justify-content:center}ha-checkbox.left{margin-inline-start:0}.mdc-deprecated-list-item__graphic{margin-top:var(--check-list-item-graphic-margin-top)}:host([graphic=icon]) .mdc-deprecated-list-item__graphic{margin-inline-start:0;margin-inline-end:var(--mdc-list-item-graphic-margin,32px)}`],(0,a.Cg)([(0,c.MZ)({type:Boolean,attribute:"checkbox-disabled"})],p.prototype,"checkboxDisabled",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean})],p.prototype,"indeterminate",void 0),(0,a.Cg)([(0,c.MZ)({type:Boolean,attribute:"separate-checkbox-click"})],p.prototype,"separateCheckboxClick",void 0),p=(0,a.Cg)([(0,c.EM)("ha-check-list-item")],p)},47680(t,e,i){i.r(e),i.d(e,{HaIcon:()=>x});i(74423);var a=i(62826),s=i(5124),o=i(22441),r=i(1087),n=i(9899),c=i(700),l=(i(44114),i(18111),i(7588),i(95192)),d=i(7553);const h=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"}]}');let p;const u=()=>(p||(p=b().catch(t=>{throw p=void 0,t})),p),b=async()=>{const t=(0,l.y$)("hass-icon-db","mdi-icon-store"),e=await(0,l.Jt)("_version",t);return e?e!==h.version&&(await(0,l.IU)(t),(0,l.hZ)("_version",h.version,t)):(0,l.hZ)("_version",h.version,t),t},g=["mdi","hass","hassio","hademo"];let m=[];i(67094);const f={},v={},y=(0,n.s)(()=>(async t=>{const e=Object.keys(t),i=await Promise.allSettled(Object.values(t));(await u())("readwrite",a=>{i.forEach((i,s)=>{"fulfilled"===i.status&&Object.entries(i.value).forEach(([t,e])=>{a.put(e,t)}),delete t[e[s]]})})})(v),2e3),_={},w={"home-assistant":()=>i.e(58781).then(i.bind(i,53580)).then(t=>t.mdiHomeAssistant),"music-assistant":()=>i.e(56009).then(i.bind(i,10576)).then(t=>t.mdiMusicAssistant),esphome:()=>i.e(88800).then(i.bind(i,45091)).then(t=>t.mdiEsphomeLogo)};class x extends s.WF{willUpdate(t){super.willUpdate(t),t.has("icon")&&(this._path=void 0,this._secondaryPath=void 0,this._viewBox=void 0,this._loadIcon())}render(){return this.icon?this._legacy?s.qy` <iron-icon .icon="${this.icon}"></iron-icon>`:s.qy`<ha-svg-icon .path="${this._path}" .secondaryPath="${this._secondaryPath}" .viewBox="${this._viewBox}"></ha-svg-icon>`:s.s6}async _loadIcon(){if(!this.icon)return;const t=this.icon,[e,i]=this.icon.split(":",2);let a,s=i;if(!e||!s)return;if(!g.includes(e)){const i=c.y[e];return i?void(i&&"function"==typeof i.getIcon&&this._setCustomPath(i.getIcon(s),t)):void(this._legacy=!0)}if(this._legacy=!1,s in f){const t=f[s];let i;t.newName?(i=`Icon ${e}:${s} was renamed to ${e}:${t.newName}, please change your config, it will be removed in version ${t.removeIn}.`,s=t.newName):i=`Icon ${e}:${s} was removed from MDI, please replace this icon with an other icon in your config, it will be removed in version ${t.removeIn}.`,console.warn(i),(0,r.r)(this,"write_log",{level:"warning",message:i})}if(s in _)return void(this._path=_[s]);if(s in w){const e=await w[s]();return this.icon===t&&(this._path=e),void(_[s]=e)}try{a=await(t=>new Promise((e,i)=>{if(m.push([t,e,i]),m.length>1)return;const a=u();(0,d.h)(1e3,(async()=>{(await a)("readonly",t=>{for(const[e,i,a]of m)(0,l.Yd)(t.get(e)).then(t=>i(t)).catch(t=>a(t));m=[]})})()).catch(t=>{for(const[,,e]of m)e(t);m=[]})}))(s)}catch(t){a=void 0}if(a)return this.icon===t&&(this._path=a),void(_[s]=a);const o=(t=>{let e;for(const i of h.parts){if(void 0!==i.start&&t<i.start)break;e=i}return e.file})(s);if(o in v)return void this._setPath(v[o],s,t);const n=fetch(`/static/mdi/${o}.json`).then(t=>t.json());v[o]=n,this._setPath(n,s,t),n.catch(()=>{delete v[o]}),y()}async _setCustomPath(t,e){const i=await t;this.icon===e&&(this._path=i.path,this._secondaryPath=i.secondaryPath,this._viewBox=i.viewBox)}async _setPath(t,e,i){try{const a=await t;this.icon===i&&(this._path=a[e]),_[e]=a[e]}catch(t){}}constructor(...t){super(...t),this._legacy=!1}}x.styles=s.AH`:host{fill:currentcolor}`,(0,a.Cg)([(0,o.MZ)()],x.prototype,"icon",void 0),(0,a.Cg)([(0,o.wk)()],x.prototype,"_path",void 0),(0,a.Cg)([(0,o.wk)()],x.prototype,"_secondaryPath",void 0),(0,a.Cg)([(0,o.wk)()],x.prototype,"_viewBox",void 0),(0,a.Cg)([(0,o.wk)()],x.prototype,"_legacy",void 0),x=(0,a.Cg)([(0,o.EM)("ha-icon")],x)},3449(t,e,i){var a=i(62826),s=i(5124),o=i(22441);class r extends s.WF{render(){return s.qy`<slot></slot>`}constructor(...t){super(...t),this.disabled=!1}}r.styles=s.AH`:host{display:block;color:var(--mdc-text-field-label-ink-color,rgba(0,0,0,.6));font-size:var(--ha-font-size-s);padding-left:16px;padding-right:16px;padding-inline-start:16px;padding-inline-end:16px;letter-spacing:var(
--mdc-typography-caption-letter-spacing,
.0333333333em
);line-height:normal}:host([disabled]){color:var(--mdc-text-field-disabled-ink-color,rgba(0,0,0,.6))}`,(0,a.Cg)([(0,o.MZ)({type:Boolean,reflect:!0})],r.prototype,"disabled",void 0),r=(0,a.Cg)([(0,o.EM)("ha-input-helper-text")],r)},8630(t,e,i){var a=i(62826),s=i(68618),o=i(11081),r=i(22441);class n extends s.iY{}n.styles=o.R,n=(0,a.Cg)([(0,r.EM)("ha-list")],n)},2846(t,e,i){i.d(e,{G:()=>l,J:()=>c});var a=i(62826),s=i(58168),o=i(82553),r=i(5124),n=i(22441);i(54276);const c=[o.R,r.AH`:host{--ha-icon-display:block;--md-sys-color-primary:var(--primary-text-color);--md-sys-color-secondary:var(--secondary-text-color);--md-sys-color-surface:var(--card-background-color);--md-sys-color-on-surface:var(--primary-text-color);--md-sys-color-on-surface-variant:var(--secondary-text-color)}md-item{overflow:var(--md-item-overflow,hidden);align-items:var(--md-item-align-items,center);gap:var(--ha-md-list-item-gap,16px)}`];class l extends s.n{renderRipple(){return"text"===this.type?r.s6:r.qy`<ha-ripple part="ripple" for="item" ?disabled="${this.disabled&&"link"!==this.type}"></ha-ripple>`}}l.styles=c,l=(0,a.Cg)([(0,n.EM)("ha-md-list-item")],l)},85938(t,e,i){i(18111),i(22489),i(46058);var a=i(62826),s=i(5124),o=i(22441),r=i(1087);class n extends s.WF{updated(t){t.has("disabled")&&(this.disabled?this._destroySortable():this._createSortable())}disconnectedCallback(){super.disconnectedCallback(),this._shouldBeDestroy=!0,setTimeout(()=>{this._shouldBeDestroy&&(this._destroySortable(),this._shouldBeDestroy=!1)},1)}connectedCallback(){super.connectedCallback(),this._shouldBeDestroy=!1,this.hasUpdated&&!this.disabled&&this._createSortable()}createRenderRoot(){return this}render(){return this.noStyle?s.s6:s.qy` <style>.sortable-fallback{display:none!important}.sortable-ghost{box-shadow:0 0 0 2px var(--primary-color);background:rgba(var(--rgb-primary-color),.25);border-radius:var(--ha-border-radius-sm);opacity:.4}.sortable-drag{border-radius:var(--ha-border-radius-sm);opacity:1;background:var(--card-background-color);box-shadow:0px 4px 8px 3px #00000026;cursor:grabbing}</style> `}async _createSortable(){if(this._sortable)return;const t=this.children[0];if(!t)return;const e=(await Promise.all([i.e(85283),i.e(70322)]).then(i.bind(i,80745))).default,a={scroll:!0,forceAutoScrollFallback:!0,scrollSpeed:20,animation:150,...this.options,onChoose:this._handleChoose,onStart:this._handleStart,onEnd:this._handleEnd,onUpdate:this._handleUpdate,onAdd:this._handleAdd,onRemove:this._handleRemove};this.draggableSelector&&(a.draggable=this.draggableSelector),this.handleSelector&&(a.handle=this.handleSelector),void 0!==this.invertSwap&&(a.invertSwap=this.invertSwap),this.group&&(a.group=this.group),this.filter&&(a.filter=this.filter),this._sortable=new e(t,a)}_destroySortable(){this._sortable&&(this._sortable.destroy(),this._sortable=void 0)}constructor(...t){super(...t),this.disabled=!1,this.noStyle=!1,this.invertSwap=!1,this.rollback=!0,this._shouldBeDestroy=!1,this._handleUpdate=t=>{(0,r.r)(this,"item-moved",{newIndex:t.newIndex,oldIndex:t.oldIndex})},this._handleAdd=t=>{(0,r.r)(this,"item-added",{index:t.newIndex,data:t.item.sortableData,item:t.item})},this._handleRemove=t=>{(0,r.r)(this,"item-removed",{index:t.oldIndex})},this._handleEnd=async t=>{(0,r.r)(this,"drag-end"),this.rollback&&t.item.placeholder&&(t.item.placeholder.replaceWith(t.item),delete t.item.placeholder)},this._handleStart=()=>{(0,r.r)(this,"drag-start")},this._handleChoose=t=>{this.rollback&&(t.item.placeholder=document.createComment("sort-placeholder"),t.item.after(t.item.placeholder))}}}(0,a.Cg)([(0,o.MZ)({type:Boolean})],n.prototype,"disabled",void 0),(0,a.Cg)([(0,o.MZ)({type:Boolean,attribute:"no-style"})],n.prototype,"noStyle",void 0),(0,a.Cg)([(0,o.MZ)({type:String,attribute:"draggable-selector"})],n.prototype,"draggableSelector",void 0),(0,a.Cg)([(0,o.MZ)({type:String,attribute:"handle-selector"})],n.prototype,"handleSelector",void 0),(0,a.Cg)([(0,o.MZ)({type:String,attribute:"filter"})],n.prototype,"filter",void 0),(0,a.Cg)([(0,o.MZ)({type:String})],n.prototype,"group",void 0),(0,a.Cg)([(0,o.MZ)({type:Boolean,attribute:"invert-swap"})],n.prototype,"invertSwap",void 0),(0,a.Cg)([(0,o.MZ)({attribute:!1})],n.prototype,"options",void 0),(0,a.Cg)([(0,o.MZ)({type:Boolean})],n.prototype,"rollback",void 0),n=(0,a.Cg)([(0,o.EM)("ha-sortable")],n)},93367(t,e,i){i.a(t,async function(t,e){try{var a=i(62826),s=i(35211),o=i(5124),r=i(22441),n=i(91450),c=i(69093),l=i(22792),d=i(85694),h=(i(47680),i(67094),t([d]));d=(h.then?(await h)():h)[0];class p extends o.WF{render(){const t=this.icon||this.stateObj&&this._entities?.[this.stateObj.entity_id]?.icon||this.stateObj?.attributes.icon;if(t)return o.qy`<ha-icon .icon="${t}"></ha-icon>`;if(!this.stateObj)return o.s6;if(!this._config||!this._connection||!this._entities)return this._renderFallback();const e=(0,d.fq)(this._entities,this._config.config,this._connection.connection,this.stateObj,this.stateValue).then(t=>t?o.qy`<ha-icon .icon="${t}"></ha-icon>`:this._renderFallback());return o.qy`${(0,n.T)(e)}`}_renderFallback(){const t=(0,c.t)(this.stateObj);return o.qy` <ha-svg-icon .path="${d.l[t]||d.lW}"></ha-svg-icon> `}}(0,a.Cg)([(0,r.MZ)({attribute:!1})],p.prototype,"stateObj",void 0),(0,a.Cg)([(0,r.MZ)({attribute:!1})],p.prototype,"stateValue",void 0),(0,a.Cg)([(0,r.MZ)()],p.prototype,"icon",void 0),(0,a.Cg)([(0,r.wk)(),(0,s.Fg)({context:l.WF,subscribe:!0})],p.prototype,"_config",void 0),(0,a.Cg)([(0,r.wk)(),(0,s.Fg)({context:l.Wq,subscribe:!0})],p.prototype,"_connection",void 0),(0,a.Cg)([(0,r.wk)(),(0,s.Fg)({context:l.X1,subscribe:!0})],p.prototype,"_entities",void 0),p=(0,a.Cg)([(0,r.EM)("ha-state-icon")],p),e()}catch(t){e(t)}})},59646(t,e,i){i.a(t,async function(t,e){try{var a=i(62826),s=i(29344),o=i(5124),r=i(22441),n=i(88360),c=t([s]);s=(c.then?(await c)():c)[0];class l extends s.A{updated(t){super.updated(t),t.has("haptic")&&(this.haptic?this.addEventListener("change",this._forwardHaptic):this.removeEventListener("change",this._forwardHaptic))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("change",this._forwardHaptic)}static get styles(){return[s.A.styles,o.AH`:host{--wa-form-control-toggle-size:var(--ha-switch-size, 24px);--wa-form-control-required-content:var(
--ha-switch-required-marker,
var(--ha-input-required-marker, "*")
);--wa-form-control-required-content-offset:var(
--ha-switch-required-marker-offset,
0.1rem
);--thumb-size:var(--ha-switch-thumb-size, 18px);--width:var(--ha-switch-width, 48px)}label{position:relative;height:max(var(--thumb-size),var(--wa-form-control-toggle-size))}label::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:var(--ha-switch-min-touch-size,40px);min-height:var(--ha-switch-min-touch-size,40px)}label.disabled::before{pointer-events:none}.switch{background-color:var(--ha-switch-background-color,var(--ha-color-fill-disabled-quiet-resting));border-color:var(--ha-switch-border-color,var(--ha-color-border-neutral-normal))}label:not(.disabled) .input:focus-visible~.switch,label:not(.disabled):hover .switch{background-color:var(--ha-switch-background-color-hover,var(--ha-switch-background-color,var(--ha-color-fill-disabled-quiet-hover)))}.checked .switch{background-color:var(--ha-switch-checked-background-color,var(--ha-color-fill-primary-normal-resting));border-color:var(--ha-switch-checked-border-color,var(--ha-color-border-primary-loud))}label:not(.disabled).checked .input:focus-visible~.switch,label:not(.disabled).checked:hover .switch{background-color:var(--ha-switch-checked-background-color-hover,var(--ha-switch-checked-background-color,var(--ha-color-fill-primary-normal-hover)));border-color:var(--ha-switch-checked-border-color-hover,var(--ha-switch-checked-border-color,var(--ha-color-border-primary-loud)))}.switch .thumb{background-color:var(--ha-switch-thumb-background-color,var(--ha-color-on-neutral-normal));border-color:var(--ha-switch-thumb-border-color,var(--ha-color-on-neutral-normal));border-style:var(--wa-form-control-border-style);border-width:var(--wa-form-control-border-width);box-shadow:var(--ha-switch-thumb-box-shadow,var(--ha-box-shadow-s))}label:not(.disabled) .input:focus-visible~.switch .thumb,label:not(.disabled):hover .switch .thumb{background-color:var(--ha-switch-thumb-background-color-hover,var(--ha-switch-thumb-background-color,var(--ha-color-on-neutral-normal)));border-color:var(--ha-switch-thumb-border-color-hover,var(--ha-switch-thumb-border-color,var(--ha-color-on-neutral-normal)))}.checked .switch .thumb{background-color:var(--ha-switch-checked-thumb-background-color,var(--ha-color-on-primary-normal));border-color:var(--ha-switch-checked-thumb-border-color,var(--ha-color-on-primary-normal))}label:not(.disabled).checked .input:focus-visible~.switch .thumb,label:not(.disabled).checked:hover .switch .thumb{background-color:var(--ha-switch-checked-thumb-background-color-hover,var(--ha-switch-checked-thumb-background-color,var(--ha-color-on-primary-normal)));border-color:var(--ha-switch-checked-thumb-border-color-hover,var(--ha-switch-checked-thumb-border-color,var(--ha-color-on-primary-normal)))}label.disabled{opacity:var(--ha-switch-disabled-opacity, .3);cursor:not-allowed}label:not(.disabled) .input:focus-visible~.switch .thumb{outline:0;outline-offset:none}label:not(.disabled) .input:focus-visible~.switch{outline:var(--wa-focus-ring);outline-offset:var(--wa-focus-ring-offset)}:host(:empty) slot.label{display:none}`]}constructor(...t){super(...t),this.haptic=!1,this._forwardHaptic=()=>{(0,n.j)(this,"light")}}}(0,a.Cg)([(0,r.MZ)({type:Boolean})],l.prototype,"haptic",void 0),l=(0,a.Cg)([(0,r.EM)("ha-switch")],l),e()}catch(t){e(t)}})},26613(t,e,i){i.a(t,async function(t,e){try{var a=i(62826),s=i(35211),o=i(5124),r=i(22441),n=i(75751),c=i(1087),l=i(22792),d=i(14503),h=i(18350),p=i(26300),u=(i(3449),i(85938),i(91485)),b=t([h,p,u]);[h,p,u]=b.then?(await b)():b;const g="M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19M8,9H16V19H8V9M15.5,4L14.5,3H9.5L8.5,4H5V6H19V4H15.5Z",m="M21 11H3V9H21V11M21 13H3V15H21V13Z",f="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";class v extends o.WF{render(){return o.qy` <ha-sortable handle-selector=".handle" draggable-selector=".row" .disabled="${!this.sortable||this.disabled}" -moved="${this._itemMoved}"> <div class="items"> ${(0,n.u)(this._items,(t,e)=>`${t}-${e}`,(t,e)=>{const i=""+(this.itemIndex?` ${e+1}`:"");return o.qy` <div class="layout horizontal center-center row"> <ha-input .type="${this.inputType}" .autocomplete="${this.autocomplete}" .disabled="${this.disabled}" dialogInitialFocus="${e}" .index="${e}" class="flex-auto" .label="${""+(this.label?`${this.label}${i}`:"")}" .value="${t}" ?data-last="${e===this._items.length-1}" ="${this._editItem}" ="${this._editItem}" ="${this._keyDown}"> ${this.inputPrefix?o.qy`<span slot="start">${this.inputPrefix}</span>`:o.s6} ${this.inputSuffix?o.qy`<span slot="end">${this.inputSuffix}</span>`:o.s6} </ha-input> <ha-icon-button .disabled="${this.disabled}" .index="${e}" slot="navigationIcon" .label="${this.removeLabel??this._i18n?.localize("ui.common.remove")??"Remove"}" ="${this._removeItem}" .path="${g}"></ha-icon-button> ${this.sortable?o.qy`<ha-svg-icon class="handle" .path="${m}"></ha-svg-icon>`:o.s6} </div> `})} </div> </ha-sortable> <div class="layout horizontal"> <ha-button size="small" appearance="filled" ="${this._addItem}" .disabled="${this.disabled||null!=this.max&&this._items.length>=this.max}"> <ha-svg-icon slot="start" .path="${f}"></ha-svg-icon> ${this.addLabel??(this.label?this._i18n?.localize("ui.components.multi-textfield.add_item",{item:this.label}):this._i18n?.localize("ui.common.add"))??"Add"} </ha-button> </div> ${this.helper?o.qy`<ha-input-helper-text .disabled="${this.disabled}">${this.helper}</ha-input-helper-text>`:o.s6} `}get _items(){return this.value??[]}async _addItem(){if(null!=this.max&&this._items.length>=this.max)return;const t=[...this._items,""];this._fireChanged(t),await this.updateComplete,this._lastInput?.focus()}async _editItem(t){if(this.updateOnBlur&&"input"===t.type)return;if(!this.updateOnBlur&&"change"===t.type)return;const e=t.target.index,i=[...this._items];i[e]=t.target.value,this._fireChanged(i)}async _keyDown(t){"Enter"===t.key&&(t.stopPropagation(),this._addItem())}_itemMoved(t){t.stopPropagation();const{oldIndex:e,newIndex:i}=t.detail,a=[...this._items],[s]=a.splice(e,1);a.splice(i,0,s),this._fireChanged(a)}async _removeItem(t){const e=t.target.index,i=[...this._items];i.splice(e,1),this._fireChanged(i)}_fireChanged(t){this.value=t,(0,c.r)(this,"value-changed",{value:t})}static get styles(){return[d.RF,o.AH`.row{margin-bottom:8px;--ha-input-padding-bottom:0}ha-icon-button{display:block}.handle{cursor:grab;padding:8px;margin:-8px}`]}constructor(...t){super(...t),this.disabled=!1,this.itemIndex=!1,this.sortable=!1,this.updateOnBlur=!1}}(0,a.Cg)([(0,r.MZ)({attribute:!1})],v.prototype,"value",void 0),(0,a.Cg)([(0,r.MZ)({type:Boolean})],v.prototype,"disabled",void 0),(0,a.Cg)([(0,r.MZ)()],v.prototype,"label",void 0),(0,a.Cg)([(0,r.MZ)()],v.prototype,"helper",void 0),(0,a.Cg)([(0,r.MZ)({attribute:"input-type"})],v.prototype,"inputType",void 0),(0,a.Cg)([(0,r.MZ)({attribute:"input-suffix"})],v.prototype,"inputSuffix",void 0),(0,a.Cg)([(0,r.MZ)({attribute:"input-prefix"})],v.prototype,"inputPrefix",void 0),(0,a.Cg)([(0,r.MZ)()],v.prototype,"autocomplete",void 0),(0,a.Cg)([(0,r.MZ)({attribute:"add-label"})],v.prototype,"addLabel",void 0),(0,a.Cg)([(0,r.MZ)({attribute:"remove-label"})],v.prototype,"removeLabel",void 0),(0,a.Cg)([(0,r.MZ)({attribute:"item-index",type:Boolean})],v.prototype,"itemIndex",void 0),(0,a.Cg)([(0,r.MZ)({type:Number})],v.prototype,"max",void 0),(0,a.Cg)([(0,r.MZ)({type:Boolean})],v.prototype,"sortable",void 0),(0,a.Cg)([(0,r.MZ)({type:Boolean,attribute:"update-on-blur"})],v.prototype,"updateOnBlur",void 0),(0,a.Cg)([(0,r.wk)(),(0,s.Fg)({context:l.D5,subscribe:!0})],v.prototype,"_i18n",void 0),(0,a.Cg)([(0,r.P)("ha-input[data-last]")],v.prototype,"_lastInput",void 0),v=(0,a.Cg)([(0,r.EM)("ha-input-multi")],v),e()}catch(t){e(t)}})},700(t,e,i){i.d(e,{y:()=>r});const a=window;"customIconsets"in a||(a.customIconsets={});const s=a.customIconsets,o=window;"customIcons"in o||(o.customIcons={});const r=new Proxy(o.customIcons,{get:(t,e)=>t[e]??(s[e]?{getIcon:s[e]}:void 0)})},89441(t,e,i){i.d(e,{O:()=>s});var a=i(1087);const s=t=>class extends t{closeDialog(t){if(this._closePromise)return this._closePromise;const e=this.shadowRoot?.querySelector("ha-adaptive-popover, ha-adaptive-dialog, ha-dialog, ha-bottom-sheet");return e&&(this._closePromise=new Promise(t=>{this._closeResolve=t}),e.open=!1),this._closePromise||!0}connectedCallback(){super.connectedCallback(),this.addEventListener("closed",this._removeDialog,{once:!0})}disconnectedCallback(){this._dialogClosedFired||(0,a.r)(this,"dialog-closed",{dialog:this.localName}),this.removeEventListener("closed",this._removeDialog),super.disconnectedCallback()}constructor(...t){super(...t),this.dialogNext=!0,this._dialogClosedFired=!1,this._removeDialog=t=>{t.stopPropagation(),this._closeResolve?.(!0),this._closePromise=void 0,this._closeResolve=void 0,this._dialogClosedFired=!0,(0,a.r)(this,"dialog-closed",{dialog:this.localName}),this.remove()}}}},54706(t,e,i){i.d(e,{E:()=>o});i(74423),i(18111),i(13579);var a=i(62826),s=i(22441);const o=t=>{class e extends t{connectedCallback(){super.connectedCallback(),this._checkSubscribed()}disconnectedCallback(){if(super.disconnectedCallback(),this.__unsubs){for(;this.__unsubs.length;){const t=this.__unsubs.pop();t instanceof Promise?t.then(t=>t()):t()}this.__unsubs=void 0}}updated(t){if(super.updated(t),t.has("hass"))this._checkSubscribed();else if(this.hassSubscribeRequiredHostProps)for(const e of t.keys())if(this.hassSubscribeRequiredHostProps.includes(e))return void this._checkSubscribed()}hassSubscribe(){return[]}_checkSubscribed(){void 0===this.__unsubs&&this.isConnected&&void 0!==this.hass&&!this.hassSubscribeRequiredHostProps?.some(t=>void 0===this[t])&&(this.__unsubs=this.hassSubscribe())}}return(0,a.Cg)([(0,s.MZ)({attribute:!1})],e.prototype,"hass",void 0),e}},17338(t,e,i){i.a(t,async function(t,a){try{i.r(e);i(74423),i(44114),i(18111),i(81148),i(22489),i(61701);var s=i(62826),o=(i(46974),i(35211)),r=i(5124),n=i(22441),c=i(63672),l=i(22786),d=i(74705),h=i(28978),p=i(15638),u=i(18350),b=(i(30716),i(72554)),g=(i(93444),i(8630),i(93367)),m=i(36866),f=i(22792),v=i(14782),y=i(89441),_=i(14503),w=i(85614),x=i(95341),k=t([u,b,g,m,x]);[u,b,g,m,x]=k.then?(await k)():k;class $ extends((0,y.O)(r.WF)){render(){if(!this.params)return r.s6;const t=this._i18n.localize("ui.panel.config.voice_assistants.expose.expose_dialog.header"),e=this._i18n.localize("ui.panel.config.voice_assistants.expose.expose_dialog.expose_to",{assistants:this.params.filterAssistants.map(t=>v.aK[t].name).join(", ")}),i=this._filterEntities(this.params.exposedEntities,this._filter);return r.qy` <ha-dialog open header-title="${t}" header-subtitle="${e}" prevent-scrim-close -show="${this._loadVirtualizer}"> <ha-input-search appearance="outlined" .value="${this._filter}" ="${this._filterChanged}"></ha-input-search> <ha-list multi> ${this._dialogReady?r.qy` <lit-virtualizer scroller class="ha-scrollbar" ="${this._itemClicked}" ="${this._handleItemKeydown}" .items="${i}" .renderItem="${this._renderItem}" .keyFunction="${this._keyFunction}"> </lit-virtualizer>`:r.s6} </ha-list> <ha-dialog-footer slot="footer"> <ha-button slot="secondaryAction" appearance="plain" ="${this.closeDialog}"> ${this._i18n.localize("ui.common.cancel")} </ha-button> <ha-button slot="primaryAction" ="${this._expose}" .disabled="${0===this._selected.length}"> ${this._i18n.localize("ui.panel.config.voice_assistants.expose.expose_dialog.expose_entities",{count:this._selected.length})} </ha-button> </ha-dialog-footer> </ha-dialog> `}async _loadVirtualizer(){await(0,w.i)(),this._dialogReady=!0}_handleItemKeydown(t){"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this._itemClicked(t))}_itemClicked(t){const e=t.target.closest("ha-check-list-item");e.selected=!e.selected}_filterChanged(t){this._filter=t.target.value}_expose(){this.params.exposeEntities(this._selected),this.closeDialog()}static get styles(){return[_.RF,_.dp,r.AH`ha-dialog{--dialog-content-padding:0}ha-list{position:relative}lit-virtualizer{height:500px}ha-input-search{padding:0 var(--ha-space-3)}lit-virtualizer{width:100%;contain:size layout!important}ha-check-list-item{width:100%;height:72px}ha-check-list-item[threeLine]{height:88px}ha-check-list-item .entity-id{line-height:var(--ha-line-height-normal);padding-left:var(--ha-space-1);font-size:var(--ha-font-size-xs)}ha-check-list-item ha-state-icon{margin-left:var(--ha-space-6);margin-inline-start:var(--ha-space-6);margin-inline-end:initial} all and (max-height:800px){lit-virtualizer{height:334px}} all and (max-height:600px){lit-virtualizer{height:238px}} all and (max-width:500px),all and (max-height:500px){lit-virtualizer{height:calc(100vh - 210px - var(--safe-area-inset-top,0px) - var(--safe-area-inset-bottom,0px))}ha-check-list-item ha-state-icon{margin-left:var(--ha-space-2);margin-inline-start:var(--ha-space-2);margin-inline-end:initial}}`]}constructor(...t){super(...t),this._selected=[],this._dialogReady=!1,this._keyFunction=t=>t.entity.entity_id,this._handleSelected=t=>{const e=t.target.value;if(t.detail.selected){if(this._selected.includes(e))return;this._selected=[...this._selected,e]}else this._selected=this._selected.filter(t=>t!==e)},this._filterEntities=(0,l.A)((t,e)=>{const i=e?.toLowerCase(),a=[];for(const e of Object.values(this._states)){if(this.params.filterAssistants.every(i=>t[e.entity_id]?.[i]))continue;const s=(0,d.Cf)(e,[{type:"entity"},{type:"device"},{type:"area"}],this._registries.entities,this._registries.devices,this._registries.areas,this._registries.floors);if(!i){a.push({entity:e,nameList:s});continue}if(e.entity_id.toLowerCase().includes(i)){a.push({entity:e,nameList:s});continue}const o=(0,h.u)(e);if(o?.toLowerCase().includes(i)){a.push({entity:e,nameList:s});continue}const[,r,n]=s;r?.toLowerCase().includes(i)?a.push({entity:e,nameList:s}):n?.toLowerCase().includes(i)&&a.push({entity:e,nameList:s})}return a}),this._renderItem=t=>{const{entity:e,nameList:i}=t,[a,s,o]=i,n=(0,p.qC)(this._i18n.language,this._i18n.translationMetadata.translations),l=a||s||e.entity_id,d=[o,a?s:void 0].filter(Boolean).join(n?" ◂ ":" ▸ "),h=this._config?.userData?.showEntityIdPicker;return r.qy` <ha-check-list-item tabindex="0" graphic="icon" ?twoLine="${d}" ?threeLine="${h}" .value="${e.entity_id}" .selected="${this._selected.includes(e.entity_id)}" -selected="${this._handleSelected}"> <ha-state-icon title="${(0,c.J)(e?.state)}" slot="graphic" .stateObj="${e}"></ha-state-icon> ${l} ${d||h?r.qy`<span slot="secondary"> ${d} ${h?r.qy`<br><span class="entity-id">${e.entity_id}</span>`:r.s6} </span>`:r.s6} </ha-check-list-item> `}}}(0,s.Cg)([(0,n.wk)()],$.prototype,"_filter",void 0),(0,s.Cg)([(0,n.wk)()],$.prototype,"_selected",void 0),(0,s.Cg)([(0,n.wk)()],$.prototype,"_dialogReady",void 0),(0,s.Cg)([(0,n.wk)(),(0,o.Fg)({context:f.D5,subscribe:!0})],$.prototype,"_i18n",void 0),(0,s.Cg)([(0,n.wk)(),(0,o.Fg)({context:f.WF,subscribe:!0})],$.prototype,"_config",void 0),(0,s.Cg)([(0,o.Fg)({context:f.iN,subscribe:!0})],$.prototype,"_states",void 0),(0,s.Cg)([(0,o.Fg)({context:f.Hd,subscribe:!0})],$.prototype,"_registries",void 0),$=(0,s.Cg)([(0,n.EM)("dialog-expose-entity")],$),a()}catch(t){a(t)}})},95341(t,e,i){i.a(t,async function(t,e){try{i(74423),i(18111),i(22489),i(61701);var a=i(62826),s=i(5124),o=i(22441),r=i(22786),n=i(36312),c=i(1087),l=i(28978),d=i(84446),h=i(38962),p=i(832),u=(i(9503),i(2846),i(59646)),b=(i(61037),i(53211)),g=i(71117),m=i(59241),f=i(14782),v=i(56982),y=i(54706),_=i(14503),w=i(36918),x=t([h,p,u]);[h,p,u]=x.then?(await x)():x;const k="M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z";class $ extends((0,y.E)(s.WF)){willUpdate(t){(0,n.x)(this.hass.config,"cloud")&&(t.has("entityId")&&this.entityId&&this._fetchEntities(),this.hasUpdated||(0,g.eN)(this.hass).then(t=>{this._cloudStatus=t}))}async _fetchEntities(){try{const t=await(0,v.kz)(this.hass,this.entityId);this._googleEntity=t,this.requestUpdate("_googleEntity")}catch(t){"not_supported"===t.code&&(this._unsupported["cloud.google_assistant"]=!0,this.requestUpdate("_unsupported"))}try{await(0,b.Gk)(this.hass,this.entityId)}catch(t){"not_supported"===t.code&&(this._unsupported["cloud.alexa"]=!0,this.requestUpdate("_unsupported"))}}render(){const t=!0===this._cloudStatus?.logged_in&&!0===this._cloudStatus.prefs.google_enabled,e=!0===this._cloudStatus?.logged_in&&!0===this._cloudStatus.prefs.alexa_enabled,i=[...Object.keys(f.aK)],a=[...i],o=e&&!(0,d.z)(this._cloudStatus.alexa_entities),r=t&&!(0,d.z)(this._cloudStatus.google_entities);t?r&&a.splice(a.indexOf("cloud.google_assistant"),1):(i.splice(i.indexOf("cloud.google_assistant"),1),a.splice(i.indexOf("cloud.google_assistant"),1)),e?o&&a.splice(a.indexOf("cloud.alexa"),1):(i.splice(i.indexOf("cloud.alexa"),1),a.splice(a.indexOf("cloud.alexa"),1));const n=a.some(t=>this.exposed[t]);let c;(o||r)&&(c=this._getEntityFilterFuncs(this._cloudStatus.google_entities,this._cloudStatus.alexa_entities));const h=o&&c.alexa(this.entityId),p=r&&c.google(this.entityId),u=n||h||p;return s.qy` <ha-md-list-item> <h3 slot="headline"> ${this.hass.localize("ui.dialogs.voice-settings.expose_header")} </h3> <ha-switch slot="end" ="${this._toggleAll}" .assistants="${a}" .checked="${u}"></ha-switch> </ha-md-list-item> ${u?i.map(t=>{const e=!this._unsupported[t],i=o&&"cloud.alexa"===t?h:r&&"cloud.google_assistant"===t?p:this.exposed[t],a=o&&"cloud.alexa"===t||r&&"cloud.google_assistant"===t,n="cloud.google_assistant"===t&&!r&&e&&this._googleEntity?.might_2fa;return s.qy` <ha-md-list-item> <voice-assistant-brand-icon slot="start" .voiceAssistantId="${t}" .hass="${this.hass}"> </voice-assistant-brand-icon> <span slot="headline">${f.aK[t].name}</span> ${e?s.s6:s.qy`<div slot="supporting-text" class="unsupported"> <ha-svg-icon .path="${k}"></ha-svg-icon> ${this.hass.localize("ui.dialogs.voice-settings.unsupported")} </div>`} ${a?s.qy` <div slot="supporting-text"> ${this.hass.localize("ui.dialogs.voice-settings.manual_config")} </div> `:s.s6} ${n?s.qy` <ha-checkbox slot="supporting-text" .checked="${!this._googleEntity.disable_2fa}" ="${this._2faChanged}"> ${this.hass.localize("ui.dialogs.voice-settings.ask_pin")} </ha-checkbox> `:s.s6} <ha-switch slot="end" .assistant="${t}" ="${this._toggleAssistant}" .disabled="${a||!i&&!e}" .checked="${i}"></ha-switch> </ha-md-list-item> `}):s.s6} <h3 class="header"> ${this.hass.localize("ui.dialogs.voice-settings.aliases_header")} </h3> <p class="description"> ${this.hass.localize("ui.dialogs.voice-settings.aliases_description")} </p> ${this.entry?s.qy` <ha-md-list-item> <span slot="headline"> ${this.hass.states[this.entityId]?(0,l.u)(this.hass.states[this.entityId]):this.entityId} </span> <span slot="supporting-text"> ${this.hass.localize("ui.dialogs.voice-settings.entity_name_alias_description")} </span> <ha-switch slot="end" .checked="${(this._aliases??this.entry.aliases).includes(null)}" ="${this._toggleEntityNameAlias}"></ha-switch> </ha-md-list-item> <ha-aliases-editor .hass="${this.hass}" .aliases="${(this._aliases??this.entry.aliases).filter(t=>null!==t)}" sortable -changed="${this._aliasesChanged}"></ha-aliases-editor> `:s.qy`<ha-alert alert-type="warning"> ${this.hass.localize("ui.dialogs.voice-settings.aliases_no_unique_id",{faq_link:s.qy`<a href="${(0,w.o)(this.hass,"/faq/unique_id")}" target="_blank" rel="noreferrer">${this.hass.localize("ui.dialogs.entity_registry.faq")}</a>`})} </ha-alert>`} `}async _toggleEntityNameAlias(t){const e=t.target.checked,i=this._aliases??this.entry?.aliases??[];this._aliases=e?[null,...i.filter(t=>null!==t)]:i.filter(t=>null!==t),await this._saveAliases()}_aliasesChanged(t){const e=(this._aliases??this.entry?.aliases??[]).includes(null)?[null]:[],i=t.detail.value;this._aliases=[...e,...i],this._saveAliases()}async _2faChanged(t){try{await(0,g.p1)(this.hass,this.entityId,!t.target.checked)}catch(e){t.target.checked=!t.target.checked}}async _saveAliases(){if(!this._aliases)return;const t=this._aliases.includes(null)?[null]:[],e=this._aliases.filter(t=>null!==t).map(t=>t.trim()).filter(t=>t),i=await(0,m.G_)(this.hass,this.entityId,{aliases:[...t,...e]});(0,c.r)(this,"entity-entry-updated",i.entity_entry)}async _toggleAssistant(t){if((0,f.ij)(this.hass,[t.target.assistant],[this.entityId],t.target.checked),this.entry){const t=await(0,m.v)(this.hass,this.entityId);(0,c.r)(this,"entity-entry-updated",t)}(0,c.r)(this,"exposed-entities-changed")}async _toggleAll(t){const e=t.target.checked?t.target.assistants.filter(t=>!this._unsupported[t]):t.target.assistants;if((0,f.ij)(this.hass,e,[this.entityId],t.target.checked),this.entry){const t=await(0,m.v)(this.hass,this.entityId);(0,c.r)(this,"entity-entry-updated",t)}(0,c.r)(this,"exposed-entities-changed")}static get styles(){return[_.RF,s.AH`:host{display:block;margin:32px;margin-top:0}ha-md-list-item{--md-list-item-leading-space:0;--md-list-item-trailing-space:0;--md-item-overflow:visible}img{height:32px;width:32px;margin-right:16px;margin-inline-end:16px;margin-inline-start:initial}ha-aliases-editor{display:block}ha-alert{display:block;margin-top:16px}.unsupported{display:flex;align-items:center}.unsupported ha-svg-icon{color:var(--error-color);--mdc-icon-size:16px;margin-right:4px;margin-inline-end:4px;margin-inline-start:initial}.header{margin-top:8px;margin-bottom:4px}.description{color:var(--secondary-text-color);font-size:var(--ha-font-size-m);line-height:var(--ha-line-height-condensed);margin-top:0;margin-bottom:16px}`]}constructor(...t){super(...t),this._unsupported={},this._getEntityFilterFuncs=(0,r.A)((t,e)=>({google:(0,d.p)(t.include_domains,t.include_entities,t.exclude_domains,t.exclude_entities),alexa:(0,d.p)(e.include_domains,e.include_entities,e.exclude_domains,e.exclude_entities)}))}}(0,a.Cg)([(0,o.MZ)({attribute:!1})],$.prototype,"hass",void 0),(0,a.Cg)([(0,o.MZ)({attribute:!1})],$.prototype,"entityId",void 0),(0,a.Cg)([(0,o.MZ)({attribute:!1})],$.prototype,"exposed",void 0),(0,a.Cg)([(0,o.MZ)({attribute:!1})],$.prototype,"entry",void 0),(0,a.Cg)([(0,o.wk)()],$.prototype,"_cloudStatus",void 0),(0,a.Cg)([(0,o.wk)()],$.prototype,"_aliases",void 0),(0,a.Cg)([(0,o.wk)()],$.prototype,"_googleEntity",void 0),(0,a.Cg)([(0,o.wk)()],$.prototype,"_unsupported",void 0),$=(0,a.Cg)([(0,o.EM)("entity-voice-settings")],$),e()}catch(t){e(t)}})},53580(t,e,i){i.d(e,{mdiHomeAssistant:()=>a});const a="m12.151 1.5882c-.3262 0-.6523.1291-.8996.3867l-8.3848 8.7354c-.0619.0644-.1223.1368-.1807.2154-.0588.0789-.1151.1638-.1688.2534-.2593.4325-.4552.9749-.5232 1.4555-.0026.018-.0076.0369-.0094.0548-.0121.0987-.0184.1944-.0184.2857v8.0124a1.2731 1.2731 0 001.2731 1.2731h7.8313l-3.4484-3.593a1.7399 1.7399 0 111.0803-1.125l2.6847 2.7972v-10.248a1.7399 1.7399 0 111.5276-0v7.187l2.6702-2.782a1.7399 1.7399 0 111.0566 1.1505l-3.7269 3.8831v2.7299h8.174a1.2471 1.2471 0 001.2471-1.2471v-8.0375c0-.0912-.0059-.1868-.0184-.2855-.0603-.4935-.2636-1.0617-.5326-1.5105-.0537-.0896-.1101-.1745-.1684-.253-.0588-.079-.1191-.1513-.181-.2158l-8.3848-8.7363c-.2473-.2577-.5735-.3866-.8995-.3864"},36918(t,e,i){i.d(e,{o:()=>a});const a=(t,e)=>`https://www.iobroker.net/#${t.language&&t.language.split("-")[0]||"en"}/adapters/adapterref/iobroker.lovelace/README.md#`}};