UNPKG

iobroker.lovelace

Version:

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

8 lines 50 kB
(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["99266"],{92636:function(e,t,i){"use strict";i.d(t,{z:()=>a});i(19083),i(61006);const a=e=>(t,i)=>e.includes(t,i)},59847:function(e,t,i){"use strict";i.d(t,{N:()=>n});var a=i(73850);const n=e=>(0,a.M)(e.entity_id)},75278:function(e,t,i){"use strict";i.d(t,{e:()=>a});const a=(e,t)=>n(e.attributes,t),n=(e,t)=>!!(e.supported_features&t)},31064:function(e,t,i){"use strict";i.d(t,{T:()=>n});i(19134),i(5740);const a=/^(\w+)\.(\w+)$/,n=e=>a.test(e)},50602:function(e,t,i){"use strict";i.a(e,(async function(e,a){try{i.d(t,{SL:()=>d,l4:()=>h,sJ:()=>l,uf:()=>u});var n=i(16485),s=(i(19083),i(19423),i(11740),i(61006),i(20382)),r=i(34618),o=e([n]);n=(o.then?(await o)():o)[0];const d=e=>l(e.attributes),l=(e,t)=>!!e.unit_of_measurement||!!e.state_class||(t||[]).includes(e.device_class||""),c=e=>{switch(e.number_format){case s.y4.comma_decimal:return["en-US","en"];case s.y4.decimal_comma:return["de","es","it"];case s.y4.space_comma:return["fr","sv","cs"];case s.y4.system:return;default:return e.language}},u=(e,t,i)=>{const a=t?c(t):void 0;return Number.isNaN=Number.isNaN||function e(t){return"number"==typeof t&&e(t)},(null==t?void 0:t.number_format)===s.y4.none||Number.isNaN(Number(e))?Number.isNaN(Number(e))||""===e||(null==t?void 0:t.number_format)!==s.y4.none?"string"==typeof e?e:`${(0,r.N)(e,null==i?void 0:i.maximumFractionDigits).toString()}${"currency"===(null==i?void 0:i.style)?` ${i.currency}`:""}`:new Intl.NumberFormat("en-US",f(e,Object.assign(Object.assign({},i),{},{useGrouping:!1}))).format(Number(e)):new Intl.NumberFormat(a,f(e,i)).format(Number(e))},h=(e,t)=>{var i;const a=null==t?void 0:t.display_precision;return null!=a?{maximumFractionDigits:a,minimumFractionDigits:a}:Number.isInteger(Number(null==e||null===(i=e.attributes)||void 0===i?void 0:i.step))&&Number.isInteger(Number(null==e?void 0:e.state))?{maximumFractionDigits:0}:void 0},f=(e,t)=>{const i=Object.assign({maximumFractionDigits:2},t);if("string"!=typeof e)return i;if(!t||void 0===t.minimumFractionDigits&&void 0===t.maximumFractionDigits){const t=e.indexOf(".")>-1?e.split(".")[1].length:0;i.minimumFractionDigits=t,i.maximumFractionDigits=t}return i};a()}catch(d){a(d)}}))},34618:function(e,t,i){"use strict";i.d(t,{N:()=>a});const a=(e,t=2)=>Math.round(e*10**t)/10**t},45061:function(e,t,i){"use strict";i.d(t,{K:()=>a});const a=e=>{switch(e.language){case"cs":case"de":case"fi":case"fr":case"sk":case"sv":return" ";default:return""}}},32587:function(e,t,i){"use strict";i.a(e,(async function(e,t){try{var a=i(61701),n=(i(19083),i(71695),i(9359),i(56475),i(70104),i(40251),i(61006),i(47021),i(57243)),s=i(50778),r=i(27486),o=i(36522),d=i(31064),l=i(58725),c=e([l]);l=(c.then?(await c)():c)[0];let u,h,f,p=e=>e;(0,a.Z)([(0,s.Mo)("ha-entities-picker")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Array})],key:"value",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.Cb)()],key:"helper",value:void 0},{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:"include-unit-of-measurement"})],key:"includeUnitOfMeasurement",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Array,attribute:"include-entities"})],key:"includeEntities",value:void 0},{kind:"field",decorators:[(0,s.Cb)({type:Array,attribute:"exclude-entities"})],key:"excludeEntities",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:"picked-entity-label"})],key:"pickedEntityLabel",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:"pick-entity-label"})],key:"pickEntityLabel",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"entityFilter",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1,type:Array})],key:"createDomains",value:void 0},{kind:"method",key:"render",value:function(){if(!this.hass)return n.Ld;const e=this._currentEntities;return(0,n.dy)(u||(u=p` ${0} <div> <ha-entity-picker allow-custom-entity .hass="${0}" .includeDomains="${0}" .excludeDomains="${0}" .includeEntities="${0}" .excludeEntities="${0}" .includeDeviceClasses="${0}" .includeUnitOfMeasurement="${0}" .entityFilter="${0}" .label="${0}" .helper="${0}" .disabled="${0}" .createDomains="${0}" .required="${0}" @value-changed="${0}"></ha-entity-picker> </div> `),e.map((e=>(0,n.dy)(h||(h=p` <div> <ha-entity-picker allow-custom-entity .curValue="${0}" .hass="${0}" .includeDomains="${0}" .excludeDomains="${0}" .includeEntities="${0}" .excludeEntities="${0}" .includeDeviceClasses="${0}" .includeUnitOfMeasurement="${0}" .entityFilter="${0}" .value="${0}" .label="${0}" .disabled="${0}" .createDomains="${0}" @value-changed="${0}"></ha-entity-picker> </div> `),e,this.hass,this.includeDomains,this.excludeDomains,this.includeEntities,this.excludeEntities,this.includeDeviceClasses,this.includeUnitOfMeasurement,this.entityFilter,e,this.pickedEntityLabel,this.disabled,this.createDomains,this._entityChanged))),this.hass,this.includeDomains,this.excludeDomains,this.includeEntities,this._excludeEntities(this.value,this.excludeEntities),this.includeDeviceClasses,this.includeUnitOfMeasurement,this.entityFilter,this.pickEntityLabel,this.helper,this.disabled,this.createDomains,this.required&&!e.length,this._addEntity)}},{kind:"field",key:"_excludeEntities",value(){return(0,r.Z)(((e,t)=>void 0===e?t:[...t||[],...e]))}},{kind:"get",key:"_currentEntities",value:function(){return this.value||[]}},{kind:"method",key:"_updateEntities",value:async function(e){this.value=e,(0,o.B)(this,"value-changed",{value:e})}},{kind:"method",key:"_entityChanged",value:function(e){e.stopPropagation();const t=e.currentTarget.curValue,i=e.detail.value;if(i===t||void 0!==i&&!(0,d.T)(i))return;const a=this._currentEntities;i&&!a.includes(i)?this._updateEntities(a.map((e=>e===t?i:e))):this._updateEntities(a.filter((e=>e!==t)))}},{kind:"method",key:"_addEntity",value:async function(e){e.stopPropagation();const t=e.detail.value;if(!t)return;if(e.currentTarget.value="",!t)return;const i=this._currentEntities;i.includes(t)||this._updateEntities([...i,t])}},{kind:"field",static:!0,key:"styles",value(){return(0,n.iv)(f||(f=p`div{margin-top:8px}`))}}]}}),n.oi);t()}catch(u){t(u)}}))},59826:function(e,t,i){"use strict";var a=i(61701),n=(i(71695),i(47021),i(31622)),s=i(57243),r=i(50778),o=i(22344);let d,l=e=>e;(0,a.Z)([(0,r.Mo)("ha-button")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",static:!0,key:"styles",value(){return[o.W,(0,s.iv)(d||(d=l`::slotted([slot=icon]){margin-inline-start:0px;margin-inline-end:8px;direction:var(--direction);display:block}.mdc-button{height:var(--button-height,36px)}.trailing-icon{display:flex}.slot-container{overflow:var(--button-slot-container-overflow,visible)}:host([destructive]){--mdc-theme-primary:var(--error-color)}`))]}}]}}),n.Button)},73729:function(e,t,i){"use strict";i.d(t,{i:()=>m});var a=i(61701),n=i(72621),s=(i(22152),i(71695),i(47021),i(74966)),r=i(51408),o=i(57243),d=i(50778),l=i(76525);i(23334);let c,u,h,f=e=>e;const p=["button","ha-list-item"],m=(e,t)=>{var i;return(0,o.dy)(c||(c=f` <div class="header_title"> <ha-icon-button .label="${0}" .path="${0}" dialogAction="close" class="header_button"></ha-icon-button> <span>${0}</span> </div> `),null!==(i=null==e?void 0:e.localize("ui.common.close"))&&void 0!==i?i:"Close","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",t)};(0,a.Z)([(0,d.Mo)("ha-dialog")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",key:l.gA,value:void 0},{kind:"method",key:"scrollToPos",value:function(e,t){var i;null===(i=this.contentElement)||void 0===i||i.scrollTo(e,t)}},{kind:"method",key:"renderHeading",value:function(){return(0,o.dy)(u||(u=f`<slot name="heading"> ${0} </slot>`),(0,n.Z)(i,"renderHeading",this,3)([]))}},{kind:"method",key:"firstUpdated",value:function(){var e;(0,n.Z)(i,"firstUpdated",this,3)([]),this.suppressDefaultPressSelector=[this.suppressDefaultPressSelector,p].join(", "),this._updateScrolledAttribute(),null===(e=this.contentElement)||void 0===e||e.addEventListener("scroll",this._onScroll,{passive:!0})}},{kind:"method",key:"disconnectedCallback",value:function(){(0,n.Z)(i,"disconnectedCallback",this,3)([]),this.contentElement.removeEventListener("scroll",this._onScroll)}},{kind:"field",key:"_onScroll",value(){return()=>{this._updateScrolledAttribute()}}},{kind:"method",key:"_updateScrolledAttribute",value:function(){this.contentElement&&this.toggleAttribute("scrolled",0!==this.contentElement.scrollTop)}},{kind:"field",static:!0,key:"styles",value(){return[r.W,(0,o.iv)(h||(h=f`:host([scrolled]) ::slotted(ha-dialog-header){border-bottom:1px solid var(--mdc-dialog-scroll-divider-color,rgba(0,0,0,.12))}.mdc-dialog{--mdc-dialog-scroll-divider-color:var( --dialog-scroll-divider-color, var(--divider-color) );z-index:var(--dialog-z-index,8);-webkit-backdrop-filter:var(--ha-dialog-scrim-backdrop-filter,var(--dialog-backdrop-filter,none));backdrop-filter:var(--ha-dialog-scrim-backdrop-filter,var(--dialog-backdrop-filter,none));--mdc-dialog-box-shadow:var(--dialog-box-shadow, none);--mdc-typography-headline6-font-weight:400;--mdc-typography-headline6-font-size:1.574rem}.mdc-dialog__actions{justify-content:var(--justify-action-buttons,flex-end);padding-bottom:max(env(safe-area-inset-bottom),24px)}.mdc-dialog__actions span:first-child{flex:var(--secondary-action-button-flex,unset)}.mdc-dialog__actions span:nth-child(2){flex:var(--primary-action-button-flex,unset)}.mdc-dialog__container{align-items:var(--vertical-align-dialog,center)}.mdc-dialog__title{padding:24px 24px 0 24px}.mdc-dialog__title:has(span){padding:12px 12px 0}.mdc-dialog__actions{padding:12px 24px 12px 24px}.mdc-dialog__title::before{content:unset}.mdc-dialog .mdc-dialog__content{position:var(--dialog-content-position,relative);padding:var(--dialog-content-padding,24px)}:host([hideactions]) .mdc-dialog .mdc-dialog__content{padding-bottom:max(var(--dialog-content-padding,24px),env(safe-area-inset-bottom))}.mdc-dialog .mdc-dialog__surface{position:var(--dialog-surface-position,relative);top:var(--dialog-surface-top);margin-top:var(--dialog-surface-margin-top);min-height:var(--mdc-dialog-min-height,auto);border-radius:var(--ha-dialog-border-radius,28px);-webkit-backdrop-filter:var(--ha-dialog-surface-backdrop-filter,none);backdrop-filter:var(--ha-dialog-surface-backdrop-filter,none);background:var(--ha-dialog-surface-background,var(--mdc-theme-surface,#fff))}:host([flexContent]) .mdc-dialog .mdc-dialog__content{display:flex;flex-direction:column}.header_title{display:flex;align-items:center;direction:var(--direction)}.header_title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;padding-left:4px}.header_button{text-decoration:none;color:inherit;inset-inline-start:initial;inset-inline-end:-12px;direction:var(--direction)}.dialog-actions{inset-inline-start:initial!important;inset-inline-end:0px!important;direction:var(--direction)}`))]}}]}}),s.M)},55486:function(e,t,i){"use strict";var a=i(61701),n=(i(71695),i(47021),i(4918)),s=i(6394),r=i(57243),o=i(50778),d=i(35359),l=i(36522);let c,u,h=e=>e;(0,a.Z)([(0,o.Mo)("ha-formfield")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,o.Cb)({type:Boolean,reflect:!0})],key:"disabled",value(){return!1}},{kind:"method",key:"render",value:function(){const e={"mdc-form-field--align-end":this.alignEnd,"mdc-form-field--space-between":this.spaceBetween,"mdc-form-field--nowrap":this.nowrap};return(0,r.dy)(c||(c=h` <div class="mdc-form-field ${0}"> <slot></slot> <label class="mdc-label" @click="${0}"> <slot name="label">${0}</slot> </label> </div>`),(0,d.$)(e),this._labelClick,this.label)}},{kind:"method",key:"_labelClick",value:function(){const e=this.input;if(e&&(e.focus(),!e.disabled))switch(e.tagName){case"HA-CHECKBOX":e.checked=!e.checked,(0,l.B)(e,"change");break;case"HA-RADIO":e.checked=!0,(0,l.B)(e,"change");break;default:e.click()}}},{kind:"field",static:!0,key:"styles",value(){return[s.W,(0,r.iv)(u||(u=h`:host(:not([alignEnd])) ::slotted(ha-switch){margin-right:10px;margin-inline-end:10px;margin-inline-start:inline}.mdc-form-field{align-items:var(--ha-formfield-align-items,center);gap:4px}.mdc-form-field>label{direction:var(--direction);margin-inline-start:0;margin-inline-end:auto;padding:0}:host([disabled]) label{color:var(--disabled-text-color)}`))]}}]}}),n.a)},65981:function(e,t,i){"use strict";i.r(t),i.d(t,{HaIcon:()=>C});var a=i(61701),n=i(72621),s=(i(19083),i(71695),i(40251),i(61006),i(47021),i(57243)),r=i(50778),o=i(36522),d=i(22381),l=i(80654),c=(i(92745),i(9359),i(31526),i(27608)),u=i(27486),h=i(37394);const f=JSON.parse('{"version":"7.4.47","parts":[{"file":"7a7139d465f1f41cb26ab851a17caa21a9331234"},{"start":"account-supervisor-circle-","file":"9561286c4c1021d46b9006596812178190a7cc1c"},{"start":"alpha-r-c","file":"eb466b7087fb2b4d23376ea9bc86693c45c500fa"},{"start":"arrow-decision-o","file":"4b3c01b7e0723b702940c5ac46fb9e555646972b"},{"start":"baby-f","file":"2611401d85450b95ab448ad1d02c1a432b409ed2"},{"start":"battery-hi","file":"89bcd31855b34cd9d31ac693fb073277e74f1f6a"},{"start":"blur-r","file":"373709cd5d7e688c2addc9a6c5d26c2d57c02c48"},{"start":"briefcase-account-","file":"a75956cf812ee90ee4f656274426aafac81e1053"},{"start":"calendar-question-","file":"3253f2529b5ebdd110b411917bacfacb5b7063e6"},{"start":"car-lig","file":"74566af3501ad6ae58ad13a8b6921b3cc2ef879d"},{"start":"cellphone-co","file":"7677f1cfb2dd4f5562a2aa6d3ae43a2e6997b21a"},{"start":"circle-slice-2","file":"70d08c50ec4522dd75d11338db57846588263ee2"},{"start":"cloud-co","file":"141d2bfa55ca4c83f4bae2812a5da59a84fec4ff"},{"start":"cog-s","file":"5a640365f8e47c609005d5e098e0e8104286d120"},{"start":"cookie-l","file":"dd85b8eb8581b176d3acf75d1bd82e61ca1ba2fc"},{"start":"currency-eur-","file":"15362279f4ebfc3620ae55f79d2830ad86d5213e"},{"start":"delete-o","file":"239434ab8df61237277d7599ebe066c55806c274"},{"start":"draw-","file":"5605918a592070803ba2ad05a5aba06263da0d70"},{"start":"emoticon-po","file":"a838cfcec34323946237a9f18e66945f55260f78"},{"start":"fan","file":"effd56103b37a8c7f332e22de8e4d67a69b70db7"},{"start":"file-question-","file":"b2424b50bd465ae192593f1c3d086c5eec893af8"},{"start":"flask-off-","file":"3b76295cde006a18f0301dd98eed8c57e1d5a425"},{"start":"food-s","file":"1c6941474cbeb1755faaaf5771440577f4f1f9c6"},{"start":"gamepad-u","file":"c6efe18db6bc9654ae3540c7dee83218a5450263"},{"start":"google-f","file":"df341afe6ad4437457cf188499cb8d2df8ac7b9e"},{"start":"head-c","file":"282121c9e45ed67f033edcc1eafd279334c00f46"},{"start":"home-pl","file":"27e8e38fc7adcacf2a210802f27d841b49c8c508"},{"start":"inbox-","file":"0f0316ec7b1b7f7ce3eaabce26c9ef619b5a1694"},{"start":"key-v","file":"ea33462be7b953ff1eafc5dac2d166b210685a60"},{"start":"leaf-circle-","file":"33db9bbd66ce48a2db3e987fdbd37fb0482145a4"},{"start":"lock-p","file":"b89e27ed39e9d10c44259362a4b57f3c579d3ec8"},{"start":"message-s","file":"7b5ab5a5cadbe06e3113ec148f044aa701eac53a"},{"start":"moti","file":"01024d78c248d36805b565e343dd98033cc3bcaf"},{"start":"newspaper-variant-o","file":"22a6ec4a4fdd0a7c0acaf805f6127b38723c9189"},{"start":"on","file":"c73d55b412f394e64632e2011a59aa05e5a1f50d"},{"start":"paw-ou","file":"3f669bf26d16752dc4a9ea349492df93a13dcfbf"},{"start":"pigg","file":"0c24edb27eb1c90b6e33fc05f34ef3118fa94256"},{"start":"printer-pos-sy","file":"41a55cda866f90b99a64395c3bb18c14983dcf0a"},{"start":"read","file":"c7ed91552a3a64c9be88c85e807404cf705b7edf"},{"start":"robot-vacuum-variant-o","file":"917d2a35d7268c0ea9ad9ecab2778060e19d90e0"},{"start":"sees","file":"6e82d9861d8fac30102bafa212021b819f303bdb"},{"start":"shoe-f","file":"e2fe7ce02b5472301418cc90a0e631f187b9f238"},{"start":"snowflake-m","file":"a28ba9f5309090c8b49a27ca20ff582a944f6e71"},{"start":"st","file":"7e92d03f095ec27e137b708b879dfd273bd735ab"},{"start":"su","file":"61c74913720f9de59a379bdca37f1d2f0dc1f9db"},{"start":"tag-plus-","file":"8f3184156a4f38549cf4c4fffba73a6a941166ae"},{"start":"timer-a","file":"baab470d11cfb3a3cd3b063ee6503a77d12a80d0"},{"start":"transit-d","file":"8561c0d9b1ac03fab360fd8fe9729c96e8693239"},{"start":"vector-arrange-b","file":"c9a3439257d4bab33d3355f1f2e11842e8171141"},{"start":"water-ou","file":"02dbccfb8ca35f39b99f5a085b095fc1275005a0"},{"start":"webc","file":"57bafd4b97341f4f2ac20a609d023719f23a619c"},{"start":"zip","file":"65ae094e8263236fa50486584a08c03497a38d93"}]}'),p=(0,u.Z)((async()=>{const e=(0,c.MT)("hass-icon-db","mdi-icon-store");{const t=await(0,c.U2)("_version",e);t?t!==f.version&&(await(0,c.ZH)(e),(0,c.t8)("_version",f.version,e)):(0,c.t8)("_version",f.version,e)}return e})),m=["mdi","hass","hassio","hademo"];let v=[];i(37583);let g,_,b,y=e=>e;const k={},x={},w=(0,d.D)((()=>(async e=>{const t=Object.keys(e),i=await Promise.all(Object.values(e));(await p())("readwrite",(a=>{i.forEach(((i,n)=>{Object.entries(i).forEach((([e,t])=>{a.put(t,e)})),delete e[t[n]]}))}))})(x)),2e3),$={};let C=(0,a.Z)([(0,r.Mo)("ha-icon")],(function(e,t){class a extends t{constructor(...t){super(...t),e(this)}}return{F:a,d:[{kind:"field",decorators:[(0,r.Cb)()],key:"icon",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_path",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_secondaryPath",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_viewBox",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_legacy",value(){return!1}},{kind:"method",key:"willUpdate",value:function(e){(0,n.Z)(a,"willUpdate",this,3)([e]),e.has("icon")&&(this._path=void 0,this._secondaryPath=void 0,this._viewBox=void 0,this._loadIcon())}},{kind:"method",key:"render",value:function(){return this.icon?this._legacy?(0,s.dy)(g||(g=y` <iron-icon .icon="${0}"></iron-icon>`),this.icon):(0,s.dy)(_||(_=y`<ha-svg-icon .path="${0}" .secondaryPath="${0}" .viewBox="${0}"></ha-svg-icon>`),this._path,this._secondaryPath,this._viewBox):s.Ld}},{kind:"method",key:"_loadIcon",value:async function(){if(!this.icon)return;const e=this.icon,[t,a]=this.icon.split(":",2);let n,s=a;if(!t||!s)return;if(!m.includes(t)){const i=l.g[t];return i?void(i&&"function"==typeof i.getIcon&&this._setCustomPath(i.getIcon(s),e)):void(this._legacy=!0)}if(this._legacy=!1,s in k){const e=k[s];let i;e.newName?(i=`Icon ${t}:${s} was renamed to ${t}:${e.newName}, please change your config, it will be removed in version ${e.removeIn}.`,s=e.newName):i=`Icon ${t}:${s} was removed from MDI, please replace this icon with an other icon in your config, it will be removed in version ${e.removeIn}.`,console.warn(i),(0,o.B)(this,"write_log",{level:"warning",message:i})}if(s in $)return void(this._path=$[s]);if("home-assistant"===s){const t=(await i.e("48348").then(i.bind(i,30511))).mdiHomeAssistant;return this.icon===e&&(this._path=t),void($[s]=t)}try{n=await(e=>new Promise(((t,i)=>{if(v.push([e,t,i]),v.length>1)return;const a=p();(0,h.n)(1e3,(async()=>{(await a)("readonly",(e=>{for(const[t,i,a]of v)(0,c.RV)(e.get(t)).then((e=>i(e))).catch((e=>a(e)));v=[]}))})()).catch((e=>{for(const[,,t]of v)t(e);v=[]}))})))(s)}catch(u){n=void 0}if(n)return this.icon===e&&(this._path=n),void($[s]=n);const r=(e=>{let t;for(const i of f.parts){if(void 0!==i.start&&e<i.start)break;t=i}return t.file})(s);if(r in x)return void this._setPath(x[r],s,e);const d=fetch(`/static/mdi/${r}.json`).then((e=>e.json()));x[r]=d,this._setPath(d,s,e),w()}},{kind:"method",key:"_setCustomPath",value:async function(e,t){const i=await e;this.icon===t&&(this._path=i.path,this._secondaryPath=i.secondaryPath,this._viewBox=i.viewBox)}},{kind:"method",key:"_setPath",value:async function(e,t,i){const a=await e;this.icon===i&&(this._path=a[t]),$[t]=a[t]}},{kind:"field",static:!0,key:"styles",value(){return(0,s.iv)(b||(b=y`:host{fill:currentcolor}`))}}]}}),s.oi)},30509:function(e,t,i){"use strict";var a=i(61701),n=(i(71695),i(47021),i(57243)),s=i(50778);let r,o,d=e=>e;(0,a.Z)([(0,s.Mo)("ha-settings-row")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({type:Boolean,reflect:!0})],key:"narrow",value(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean,reflect:!0})],key:"slim",value(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean,attribute:"three-line"})],key:"threeLine",value(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean,attribute:"wrap-heading",reflect:!0})],key:"wrapHeading",value(){return!1}},{kind:"method",key:"render",value:function(){return(0,n.dy)(r||(r=d` <div class="prefix-wrap"> <slot name="prefix"></slot> <div class="body" ?two-line="${0}" ?three-line="${0}"> <slot name="heading"></slot> <div class="secondary"><slot name="description"></slot></div> </div> </div> <div class="content"><slot></slot></div> `),!this.threeLine,this.threeLine)}},{kind:"field",static:!0,key:"styles",value(){return(0,n.iv)(o||(o=d`:host{display:flex;padding:0 16px;align-content:normal;align-self:auto;align-items:center}.body{padding-top:8px;padding-bottom:8px;padding-left:0;padding-inline-start:0;padding-right:16px;padding-inline-end:16px;overflow:hidden;display:var(--layout-vertical_-_display,flex);flex-direction:var(--layout-vertical_-_flex-direction,column);justify-content:var(--layout-center-justified_-_justify-content,center);flex:var(--layout-flex_-_flex,1);flex-basis:var(--layout-flex_-_flex-basis,0.000000001px)}.body[three-line]{min-height:var(--paper-item-body-three-line-min-height,88px)}:host(:not([wrap-heading])) body>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.body>.secondary{display:block;padding-top:4px;font-family:var( --mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif) );-webkit-font-smoothing:antialiased;font-size:var(--mdc-typography-body2-font-size, .875rem);font-weight:var(--mdc-typography-body2-font-weight,400);line-height:normal;color:var(--secondary-text-color)}.body[two-line]{min-height:calc(var(--paper-item-body-two-line-min-height,72px) - 16px);flex:1}.content{display:contents}:host(:not([narrow])) .content{display:var(--settings-row-content-display,flex);justify-content:flex-end;flex:1;padding:16px 0}.content ::slotted(*){width:var(--settings-row-content-width)}:host([narrow]){align-items:normal;flex-direction:column;border-top:1px solid var(--divider-color);padding-bottom:8px}::slotted(ha-switch){padding:16px 0}.secondary{white-space:normal}.prefix-wrap{display:var(--settings-row-prefix-display)}:host([narrow]) .prefix-wrap{display:flex;align-items:center}:host([slim]),:host([slim]) .content,:host([slim]) ::slotted(ha-switch){padding:0}:host([slim]) .body{min-height:0}`))}}]}}),n.oi)},51223:function(e,t,i){"use strict";i.a(e,(async function(e,t){try{var a=i(61701),n=(i(71695),i(47021),i(57243)),s=i(50778),r=i(94571),o=i(59847),d=i(45729),l=(i(65981),i(37583),e([d]));d=(l.then?(await l)():l)[0];let c,u,h,f,p=e=>e;(0,a.Z)([(0,s.Mo)("ha-state-icon")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"stateObj",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"stateValue",value:void 0},{kind:"field",decorators:[(0,s.Cb)()],key:"icon",value:void 0},{kind:"method",key:"render",value:function(){var e,t;const i=this.icon||this.stateObj&&(null===(e=this.hass)||void 0===e||null===(e=e.entities[this.stateObj.entity_id])||void 0===e?void 0:e.icon)||(null===(t=this.stateObj)||void 0===t?void 0:t.attributes.icon);if(i)return(0,n.dy)(c||(c=p`<ha-icon .icon="${0}"></ha-icon>`),i);if(!this.stateObj)return n.Ld;if(!this.hass)return this._renderFallback();const a=(0,d.gD)(this.hass,this.stateObj,this.stateValue).then((e=>e?(0,n.dy)(u||(u=p`<ha-icon .icon="${0}"></ha-icon>`),e):this._renderFallback()));return(0,n.dy)(h||(h=p`${0}`),(0,r.C)(a))}},{kind:"method",key:"_renderFallback",value:function(){const e=(0,o.N)(this.stateObj);return(0,n.dy)(f||(f=p` <ha-svg-icon .path="${0}"></ha-svg-icon> `),d.Ls[e]||d.Rb)}}]}}),n.oi);t()}catch(c){t(c)}}))},83166:function(e,t,i){"use strict";var a=i(61701),n=i(72621),s=(i(71695),i(47021),i(1105)),r=i(33990),o=i(57243),d=i(50778),l=i(5111);let c,u,h,f,p=e=>e;(0,a.Z)([(0,d.Mo)("ha-textfield")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"invalid",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:"error-message"})],key:"errorMessage",value:void 0},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"icon",value(){return!1}},{kind:"field",decorators:[(0,d.Cb)({type:Boolean})],key:"iconTrailing",value(){return!1}},{kind:"field",decorators:[(0,d.Cb)()],key:"autocomplete",value:void 0},{kind:"field",decorators:[(0,d.Cb)()],key:"autocorrect",value:void 0},{kind:"field",decorators:[(0,d.Cb)({attribute:"input-spellcheck"})],key:"inputSpellcheck",value:void 0},{kind:"field",decorators:[(0,d.IO)("input")],key:"formElement",value:void 0},{kind:"method",key:"updated",value:function(e){(0,n.Z)(i,"updated",this,3)([e]),(e.has("invalid")||e.has("errorMessage"))&&(this.setCustomValidity(this.invalid?this.errorMessage||this.validationMessage||"Invalid":""),(this.invalid||this.validateOnInitialRender||e.has("invalid")&&void 0!==e.get("invalid"))&&this.reportValidity()),e.has("autocomplete")&&(this.autocomplete?this.formElement.setAttribute("autocomplete",this.autocomplete):this.formElement.removeAttribute("autocomplete")),e.has("autocorrect")&&(this.autocorrect?this.formElement.setAttribute("autocorrect",this.autocorrect):this.formElement.removeAttribute("autocorrect")),e.has("inputSpellcheck")&&(this.inputSpellcheck?this.formElement.setAttribute("spellcheck",this.inputSpellcheck):this.formElement.removeAttribute("spellcheck"))}},{kind:"method",key:"renderIcon",value:function(e,t=!1){const i=t?"trailing":"leading";return(0,o.dy)(c||(c=p` <span class="mdc-text-field__icon mdc-text-field__icon--${0}" tabindex="${0}"> <slot name="${0}Icon"></slot> </span> `),i,t?1:-1,i)}},{kind:"field",static:!0,key:"styles",value(){return[r.W,(0,o.iv)(u||(u=p`.mdc-text-field__input{width:var(--ha-textfield-input-width,100%)}.mdc-text-field:not(.mdc-text-field--with-leading-icon){padding:var(--text-field-padding,0px 16px)}.mdc-text-field__affix--suffix{padding-left:var(--text-field-suffix-padding-left,12px);padding-right:var(--text-field-suffix-padding-right,0px);padding-inline-start:var(--text-field-suffix-padding-left,12px);padding-inline-end:var(--text-field-suffix-padding-right,0px);direction:ltr}.mdc-text-field--with-leading-icon{padding-inline-start:var(--text-field-suffix-padding-left,0px);padding-inline-end:var(--text-field-suffix-padding-right,16px);direction:var(--direction)}.mdc-text-field--with-leading-icon.mdc-text-field--with-trailing-icon{padding-left:var(--text-field-suffix-padding-left,0px);padding-right:var(--text-field-suffix-padding-right,0px);padding-inline-start:var(--text-field-suffix-padding-left,0px);padding-inline-end:var(--text-field-suffix-padding-right,0px)}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--suffix{color:var(--secondary-text-color)}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__icon{color:var(--secondary-text-color)}.mdc-text-field__icon--leading{margin-inline-start:16px;margin-inline-end:8px;direction:var(--direction)}.mdc-text-field__icon--trailing{padding:var(--textfield-icon-trailing-padding,12px)}.mdc-floating-label:not(.mdc-floating-label--float-above){text-overflow:ellipsis;width:inherit;padding-right:30px;padding-inline-end:30px;padding-inline-start:initial;box-sizing:border-box;direction:var(--direction)}input{text-align:var(--text-field-text-align,start)}input[type=color]{height:20px}::-ms-reveal{display:none}:host([no-spinner]) input::-webkit-inner-spin-button,:host([no-spinner]) input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=color]::-webkit-color-swatch-wrapper{padding:0}:host([no-spinner]) input[type=number]{-moz-appearance:textfield}.mdc-text-field__ripple{overflow:hidden}.mdc-text-field{overflow:var(--text-field-overflow)}.mdc-floating-label{inset-inline-start:16px!important;inset-inline-end:initial!important;transform-origin:var(--float-start);direction:var(--direction);text-align:var(--float-start)}.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label{max-width:calc(100% - 48px - var(--text-field-suffix-padding-left,0px));inset-inline-start:calc(48px + var(--text-field-suffix-padding-left,0px))!important;inset-inline-end:initial!important;direction:var(--direction)}.mdc-text-field__input[type=number]{direction:var(--direction)}.mdc-text-field__affix--prefix{padding-right:var(--text-field-prefix-padding-right,2px);padding-inline-end:var(--text-field-prefix-padding-right,2px);padding-inline-start:initial}.mdc-text-field:not(.mdc-text-field--disabled) .mdc-text-field__affix--prefix{color:var(--mdc-text-field-label-ink-color)}#helper-text ha-markdown{display:inline-block}`)),"rtl"===l.E.document.dir?(0,o.iv)(h||(h=p`.mdc-floating-label,.mdc-text-field--with-leading-icon,.mdc-text-field--with-leading-icon.mdc-text-field--filled .mdc-floating-label,.mdc-text-field__icon--leading,.mdc-text-field__input[type=number]{direction:rtl;--direction:rtl}`)):(0,o.iv)(f||(f=p``))]}}]}}),s.P)},43546:function(e,t,i){"use strict";i.d(t,{Cp:()=>r,TZ:()=>o,W2:()=>s,YY:()=>l,iI:()=>n,j2:()=>d,oT:()=>a});i(19083),i(9359),i(70104),i(77439),i(19423),i(40251),i(97499),i(61006);const a=e=>e.map((e=>{if("string"!==e.type)return e;switch(e.name){case"username":return Object.assign(Object.assign({},e),{},{autocomplete:"username",autofocus:!0});case"password":return Object.assign(Object.assign({},e),{},{autocomplete:"current-password"});case"code":return Object.assign(Object.assign({},e),{},{autocomplete:"one-time-code",autofocus:!0});default:return e}})),n=(e,t)=>e.callWS({type:"auth/sign_path",path:t}),s=async(e,t,i,a)=>e.callWS({type:"config/auth_provider/homeassistant/create",user_id:t,username:i,password:a}),r=(e,t,i)=>e.callWS({type:"config/auth_provider/homeassistant/change_password",current_password:t,new_password:i}),o=(e,t,i)=>e.callWS({type:"config/auth_provider/homeassistant/admin_change_password",user_id:t,password:i}),d=(e,t,i)=>e.callWS({type:"config/auth_provider/homeassistant/admin_change_username",user_id:t,username:i}),l=(e,t,i)=>e.callWS({type:"auth/delete_all_refresh_tokens",token_type:t,delete_current_token:i})},47844:function(e,t,i){"use strict";i.d(t,{T9:()=>f,kU:()=>r,i4:()=>c,sF:()=>n,z9:()=>k,nk:()=>l,Mw:()=>v,Ch:()=>d,Lr:()=>h,jU:()=>o,Xn:()=>m,r:()=>p,B:()=>_,ou:()=>y,zj:()=>b,qW:()=>s});i(19423),i(40251),i(88044),i(71695),i(47021);var a=i(43546);const n=[1,2,3,4,6,8],s=2,r="hls",o="web_rtc",d=(e,t,i)=>`${e}&width=${t}&height=${i}`,l=e=>`/api/camera_proxy_stream/${e.entity_id}?token=${e.attributes.access_token}`,c=async(e,t,i,a)=>{const n=await(async(e,t,i,a,n,...s)=>{let r=a[e];r||(r=a[e]={});const o=r[n];if(o)return o;const d=i(a,n,...s);return r[n]=d,d.then((()=>setTimeout((()=>{r[n]=void 0}),t)),(()=>{r[n]=void 0})),d})("_cameraTmbUrl",9e3,u,e,t);return d(n,i,a)},u=async(e,t)=>{const i=await(0,a.iI)(e,`/api/camera_proxy/${t}`);return e.hassUrl(i.path)},h=async(e,t,i)=>{const a={type:"camera/stream",entity_id:t};i&&(a.format=i);const n=await e.callWS(a);return n.url=e.hassUrl(n.url),n},f=(e,t,i,a)=>e.connection.subscribeMessage(a,{type:"camera/webrtc/offer",entity_id:t,offer:i}),p=(e,t,i,a)=>e.callWS({type:"camera/webrtc/candidate",entity_id:t,session_id:i,candidate:a}),m=(e,t)=>e.callWS({type:"camera/get_prefs",entity_id:t}),v=(e,t,i)=>e.callWS(Object.assign({type:"camera/update_prefs",entity_id:t},i)),g="media-source://camera/",_=e=>e.startsWith(g),b=e=>e.substring(22),y=async(e,t)=>e.callWS({type:"camera/capabilities",entity_id:t}),k=async(e,t)=>e.callWS({type:"camera/webrtc/get_client_config",entity_id:t})},80654:function(e,t,i){"use strict";i.d(t,{g:()=>r});const a=window;"customIconsets"in a||(a.customIconsets={});const n=a.customIconsets,s=window;"customIcons"in s||(s.customIcons={});const r=new Proxy(s.customIcons,{get:(e,t)=>{var i;return null!==(i=e[t])&&void 0!==i?i:n[t]?{getIcon:n[t]}:void 0}})},96194:function(e,t,i){"use strict";i.d(t,{ON:()=>r,PX:()=>o,V_:()=>d,lz:()=>s,nZ:()=>n,rk:()=>c});var a=i(92636);const n="unavailable",s="unknown",r="on",o="off",d=[n,s],l=[n,s,o],c=(0,a.z)(d);(0,a.z)(l)},69919:function(e,t,i){"use strict";i.a(e,(async function(e,a){try{i.d(t,{EX:()=>f,Fj:()=>x,M$:()=>w,SO:()=>p,Sk:()=>v,TN:()=>C,UJ:()=>g,Ym:()=>$,hF:()=>m});i(19083),i(61893),i(9359),i(56475),i(70104),i(40251);var n=i(73358),s=i(73850),r=i(59847),o=i(75278),d=i(50602),l=i(1416),c=i(76131),u=i(72473),h=e([d]);d=(h.then?(await h)():h)[0];let f=function(e){return e[e.INSTALL=1]="INSTALL",e[e.SPECIFIC_VERSION=2]="SPECIFIC_VERSION",e[e.PROGRESS=4]="PROGRESS",e[e.BACKUP=8]="BACKUP",e[e.RELEASE_NOTES=16]="RELEASE_NOTES",e}({});const p=e=>(0,o.e)(e,f.PROGRESS)&&null!==e.attributes.update_percentage,m=(e,t=!1)=>(e.state===n.uo||t&&Boolean(e.attributes.skipped_version))&&(0,o.e)(e,f.INSTALL),v=e=>!!e.attributes.in_progress,g=(e,t)=>e.callWS({type:"update/release_notes",entity_id:t}),_="ioBroker Core",b="ioBroker Supervisor",y="ioBroker Operating System",k=(e,t)=>Object.values(e).filter((e=>"update"===(0,r.N)(e))).sort(((e,i)=>e.attributes.title===_?-3:i.attributes.title===_?3:e.attributes.title===y?-2:i.attributes.title===y?2:e.attributes.title===b?-1:i.attributes.title===b?1:(0,l.fe)(e.attributes.title||e.attributes.friendly_name||"",i.attributes.title||i.attributes.friendly_name||"",t))),x=(e,t=!1)=>k(e).filter((e=>m(e,t))),w=async(e,t)=>{const i=k(t.states,t.locale.language).map((e=>e.entity_id));if(!i.length)return void(0,c.showAlertDialog)(e,{title:t.localize("ui.panel.config.updates.no_update_entities.title"),text:t.localize("ui.panel.config.updates.no_update_entities.description"),warning:!0});(0,u.C)(e,{message:t.localize("ui.panel.config.updates.checking_updates")});let a=0;const n=await t.connection.subscribeEvents((i=>{"update"===(0,s.M)(i.data.entity_id)&&(a++,(0,u.C)(e,{message:t.localize("ui.panel.config.updates.updates_refreshed",{count:a})}))}),"state_changed");await t.callService("homeassistant","update_entity",{entity_id:i}),await new Promise((e=>{setTimeout(e,15e3)})),n(),0===a&&(0,u.C)(e,{message:t.localize("ui.panel.config.updates.no_new_updates")})},$=(e,t)=>{const i=e.state,a=e.attributes;if("off"===i){return a.latest_version&&a.skipped_version===a.latest_version?a.latest_version:t.formatEntityState(e)}if("on"===i&&v(e)){return(0,o.e)(e,f.PROGRESS)&&null!==a.update_percentage?t.localize("ui.card.update.installing_with_progress",{progress:(0,d.uf)(a.update_percentage,t.locale,{maximumFractionDigits:a.display_precision,minimumFractionDigits:a.display_precision})}):t.localize("ui.card.update.installing")}return t.formatEntityState(e)},C=(e,t)=>{var i;if("hassio"!==(null===(i=t[e.entity_id])||void 0===i?void 0:i.domain))return"generic";const a=e.attributes.title||"";return a===_?"home_assistant":[_,b,y].includes(a)?"generic":"addon"};a()}catch(f){a(f)}}))},96530:function(e,t,i){"use strict";i.d(t,{X:()=>s,y:()=>n});var a=i(92636);const n=["input_boolean","input_button","input_text","input_number","input_datetime","input_select","counter","timer","schedule"],s=(0,a.z)(n)},2903:function(e,t,i){"use strict";i.a(e,(async function(e,a){try{i.r(t);var n=i(61701),s=(i(19083),i(71695),i(9359),i(1331),i(52924),i(19423),i(40251),i(61006),i(81804),i(47021),i(57243)),r=i(50778),o=i(27486),d=i(32587),l=(i(59826),i(73729)),c=(i(55486),i(23334),i(2928)),u=(i(30509),i(83166),i(43546)),h=i(4242),f=i(76131),p=i(28008),m=i(73192),v=i(77419),g=i(71364),_=i(36522),b=e([d,c]);[d,c]=b.then?(await b)():b;let y,k,x,w,$,C,E,S,A,O,I,z=e=>e;const L="M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z",D=["device_tracker"],B={round:!0,quality:.75,aspectRatio:1};let N=(0,n.Z)(null,(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_name",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_userId",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_user",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_isAdmin",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_localOnly",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_deviceTrackers",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_picture",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_error",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_params",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_submitting",value(){return!1}},{kind:"field",decorators:[(0,r.SB)()],key:"_personExists",value(){return!1}},{kind:"field",key:"_deviceTrackersAvailable",value(){return(0,o.Z)((e=>Object.keys(e.states).some((e=>"device_tracker"===e.substr(0,e.indexOf("."))))))}},{kind:"method",key:"showDialog",value:async function(e){var t,i;(this._params=e,this._error=void 0,this._params.entry)?(this._personExists=!0,this._name=this._params.entry.name||"",this._userId=this._params.entry.user_id||void 0,this._deviceTrackers=this._params.entry.device_trackers||[],this._picture=this._params.entry.picture||null,this._user=this._userId?this._params.users.find((e=>e.id===this._userId)):void 0,this._isAdmin=null===(t=this._user)||void 0===t?void 0:t.group_ids.includes(h.Pb),this._localOnly=null===(i=this._user)||void 0===i?void 0:i.local_only):(this._personExists=!1,this._name="",this._userId=void 0,this._user=void 0,this._isAdmin=void 0,this._localOnly=void 0,this._deviceTrackers=[],this._picture=null);await this.updateComplete}},{kind:"method",key:"closeDialog",value:function(){if(!this._personExists&&this._userId){var e;const t=null===(e=this._params)||void 0===e?void 0:e.refreshUsers;(0,h.h8)(this.hass,this._userId).then((()=>{null==t||t()})),this._userId=void 0}return this._params=void 0,(0,_.B)(this,"dialog-closed",{dialog:this.localName}),!0}},{kind:"method",key:"render",value:function(){var e;if(!this._params)return s.Ld;const t=""===this._name.trim();return(0,s.dy)(y||(y=z` <ha-dialog open @closed="${0}" scrimClickAction escapeKeyAction .heading="${0}"> <div> ${0} <div class="form"> <ha-textfield dialogInitialFocus .value="${0}" @input="${0}" label="${0}" .validationMessage="${0}" required></ha-textfield> <ha-picture-upload .hass="${0}" .value="${0}" crop select-media .cropOptions="${0}" @change="${0}"></ha-picture-upload> <ha-settings-row> <span slot="heading"> ${0} </span> <span slot="description"> ${0} </span> <ha-switch @change="${0}" .disabled="${0}" .checked="${0}"></ha-switch> </ha-settings-row> ${0} ${0} </div> </div> ${0} <ha-button slot="primaryAction" @click="${0}" .disabled="${0}"> ${0} </ha-button> </ha-dialog> `),this.closeDialog,(0,l.i)(this.hass,this._params.entry?this._params.entry.name:this.hass.localize("ui.panel.config.person.detail.new_person")),this._error?(0,s.dy)(k||(k=z` <div class="error">${0}</div> `),this._error):"",this._name,this._nameChanged,this.hass.localize("ui.panel.config.person.detail.name"),this.hass.localize("ui.panel.config.person.detail.name_error_msg"),this.hass,this._picture,B,this._pictureChanged,this.hass.localize("ui.panel.config.person.detail.allow_login"),this.hass.localize("ui.panel.config.person.detail.allow_login_description"),this._allowLoginChanged,this._user&&(this._user.id===(null===(e=this.hass.user)||void 0===e?void 0:e.id)||this._user.system_generated||this._user.is_owner),this._userId,this._renderUserFields(),this._deviceTrackersAvailable(this.hass)?(0,s.dy)(x||(x=z` <p> ${0} </p> <ha-entities-picker .hass="${0}" .value="${0}" .includeDomains="${0}" .pickedEntityLabel="${0}" .pickEntityLabel="${0}" @value-changed="${0}"> </ha-entities-picker> `),this.hass.localize("ui.panel.config.person.detail.device_tracker_intro"),this.hass,this._deviceTrackers,D,this.hass.localize("ui.panel.config.person.detail.device_tracker_picked"),this.hass.localize("ui.panel.config.person.detail.device_tracker_pick"),this._deviceTrackersChanged):(0,s.dy)(w||(w=z` <p> ${0} </p> <ul> <li> <a href="${0}" target="_blank" rel="noreferrer">${0}</a> </li> <li> <a @click="${0}" href="/config/integrations"> ${0}</a> </li> </ul> `),this.hass.localize("ui.panel.config.person.detail.no_device_tracker_available_intro"),(0,m.R)(this.hass,"/integrations/#presence-detection"),this.hass.localize("ui.panel.config.person.detail.link_presence_detection_integrations"),this.closeDialog,this.hass.localize("ui.panel.config.person.detail.link_integrations_page")),this._params.entry?(0,s.dy)($||($=z` <ha-button slot="secondaryAction" class="warning" @click="${0}" .disabled="${0}"> ${0} </ha-button> `),this._deleteEntry,this._user&&this._user.is_owner||this._submitting,this.hass.localize("ui.panel.config.person.detail.delete")):s.Ld,this._updateEntry,t||this._submitting,this._params.entry?this.hass.localize("ui.panel.config.person.detail.update"):this.hass.localize("ui.panel.config.person.detail.create"))}},{kind:"method",key:"_renderUserFields",value:function(){var e,t,i;const a=this._user;return a?(0,s.dy)(C||(C=z` ${0} ${0} <ha-settings-row> <span slot="heading"> ${0} </span> <span slot="description"> ${0} </span> <ha-switch .disabled="${0}" .checked="${0}" @change="${0}"> </ha-switch> </ha-settings-row> <ha-settings-row> <span slot="heading"> ${0} </span> <span slot="description"> ${0} </span> <ha-switch .disabled="${0}" .checked="${0}" @change="${0}"> </ha-switch> </ha-settings-row> `),a.system_generated?s.Ld:(0,s.dy)(E||(E=z` <ha-settings-row> <span slot="heading"> ${0} </span> <span slot="description">${0}</span> ${0} </ha-settings-row> `),this.hass.localize("ui.panel.config.person.detail.username"),a.username,null!==(e=this.hass.user)&&void 0!==e&&e.is_owner?(0,s.dy)(S||(S=z` <ha-icon-button .path="${0}" @click="${0}" .label="${0}"> </ha-icon-button> `),L,this._changeUsername,this.hass.localize("ui.panel.config.person.detail.change_username")):s.Ld),!a.system_generated&&null!==(t=this.hass.user)&&void 0!==t&&t.is_owner?(0,s.dy)(A||(A=z` <ha-settings-row> <span slot="heading"> ${0} </span> <span slot="description">************</span> ${0} </ha-settings-row> `),this.hass.localize("ui.panel.config.person.detail.password"),null!==(i=this.hass.user)&&void 0!==i&&i.is_owner?(0,s.dy)(O||(O=z` <ha-icon-button .path="${0}" @click="${0}" .label="${0}"> </ha-icon-button> `),L,this._changePassword,this.hass.localize("ui.panel.config.person.detail.change_password")):s.Ld):s.Ld,this.hass.localize("ui.panel.config.person.detail.local_access_only"),this.hass.localize("ui.panel.config.person.detail.local_access_only_description"),a.system_generated,this._localOnly,this._localOnlyChanged,this.hass.localize("ui.panel.config.person.detail.admin"),this.hass.localize("ui.panel.config.person.detail.admin_description"),a.system_generated||a.is_owner,this._isAdmin,this._adminChanged):s.Ld}},{kind:"method",key:"_nameChanged",value:function(e){this._error=void 0,this._name=e.target.value}},{kind:"method",key:"_adminChanged",value:function(e){this._isAdmin=e.target.checked}},{kind:"method",key:"_localOnlyChanged",value:function(e){this._localOnly=e.target.checked}},{kind:"method",key:"_allowLoginChanged",value:async function(e){const t=e.target;if(t.checked)t.checked=!1,(0,v.G)(this,{userAddedCallback:async e=>{var i;e&&(t.checked=!0,this._params.entry&&await this._params.updateEntry({user_id:e.id}),null===(i=this._params)||void 0===i||i.refreshUsers(),this._user=e,this._userId=e.id,this._isAdmin=e.group_ids.includes(h.Pb),this._localOnly=e.local_only)},name:this._name});else if(this._userId){var i;if(!(await(0,f.showConfirmationDialog)(this,{title:this.hass.localize("ui.panel.config.person.detail.confirm_delete_user_title"),text:this.hass.localize("ui.panel.config.person.detail.confirm_delete_user_text",{name:this._name}),confirmText:this.hass.localize("ui.common.delete"),dismissText:this.hass.localize("ui.common.cancel"),destructive:!0})))return void(t.checked=!0);await(0,h.h8)(this.hass,this._userId),null===(i=this._params)||void 0===i||i.refreshUsers(),this._userId=void 0,this._user=void 0,this._isAdmin=void 0,this._localOnly=void 0}}},{kind:"method",key:"_deviceTrackersChanged",value:function(e){this._error=void 0,this._deviceTrackers=e.detail.value}},{kind:"method",key:"_pictureChanged",value:function(e){this._error=void 0,this._picture=e.target.value}},{kind:"method",key:"_changePassword",value:async function(){if(!this._user)return;this._user.credentials.find((e=>"homeassistant"===e.type))?(0,g.o)(this,{userId:this._user.id}):(0,f.showAlertDialog)(this,{title:"No ioBroker credentials found."})}},{kind:"method",key:"_changeUsername",value:async function(){if(!this._user)return;if(!this._user.credentials.find((e=>"homeassistant"===e.type)))return void(0,f.showAlertDialog)(this,{title:"No ioBroker credentials found."});const e=await(0,f.showPromptDialog)(this,{inputLabel:this.hass.localize("ui.panel.config.users.change_username.new_username"),confirmText:this.hass.localize("ui.panel.config.users.change_username.change"),title:this.hass.localize("ui.panel.config.users.change_username.caption"),defaultValue:this._user.username});if(e)try{var t;await(0,u.j2)(this.hass,this._user.id,e),null===(t=this._params)||void 0===t||t.refreshUsers(),this._user=Object.assign(Object.assign({},this._user),{},{username:e}),(0,f.showAlertDialog)(this,{text:this.hass.localize("ui.panel.config.users.change_username.username_changed")})}catch(i){(0,f.showAlertDialog)(this,{title:this.hass.localize("ui.panel.config.users.change_username.failed"),text:i.message})}}},{kind:"method",key:"_updateEntry",value:async function(){this._submitting=!0;try{var e,t,i,a;if(this._userId&&this._name!==(null===(e=this._params.entry)||void 0===e?void 0:e.name)||this._isAdmin!==(null===(t=this._user)||void 0===t?void 0:t.group_ids.includes(h.Pb))||this._localOnly!==(null===(i=this._user)||void 0===i?void 0:i.local_only))await(0,h.Nq)(this.hass,this._userId,{name:this._name.trim(),group_ids:[this._isAdmin?h.Pb:h.CE],local_only:this._localOnly}),null===(a=this._params)||void 0===a||a.refreshUsers();const n={name:this._name.trim(),device_trackers:this._deviceTrackers,user_id:this._userId||null,picture:this._picture};this._params.entry?await this._params.updateEntry(n):(await this._params.createEntry(n),this._personExists=!0),this.closeDialog()}catch(n){this._error=n?n.message:"Unknown error"}finally{this._submitting=!1}}},{kind:"method",key:"_deleteEntry",value:async function(){this._submitting=!0;try{await this._params.removeEntry()&&(this._params.entry.user_id&&(0,h.h8)(this.hass,this._params.entry.user_id),this.closeDialog())}finally{this._submitting=!1}}},{kind:"get",static:!0,key:"styles",value:function(){return[p.yu,(0,s.iv)(I||(I=z`ha-picture-upload,ha-textfield{display:block}ha-picture-upload{margin-bottom:16px;--file-upload-image-border-radius:50%}ha-settings-row{padding:0}a{color:var(--primary-color)}p{color:var(--primary-text-color)}`))]}}]}}),s.oi);customElements.define("dialog-person-detail",N),a()}catch(y){a(y)}}))},77419:function(e,t,i){"use strict";i.d(t,{G:()=>s});i(71695),i(40251),i(47021);var a=i(36522);const n=()=>Promise.all([i.e("5604"),i.e("36265")]).then(i.bind(i,78845)),s=(e,t)=>{(0,a.B)(e,"show-dialog",{dialogTag:"dialog-add-user",dialogImport:n,dialogParams:t})}},71364:function(e,t,i){"use strict";i.d(t,{o:()=>s});i(71695),i(40251),i(47021);var a=i(36522);const n=()=>Promise.all([i.e("63055"),i.e("64880")]).then(i.bind(i,45676)),s=(e,t)=>{(0,a.B)(e,"show-dialog",{dialogTag:"dialog-admin-change-password",dialogImport:n,dialogParams:t})}},30511:function(e,t,i){"use strict";i.r(t),i.d(t,{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"},22152:function(){Element.prototype.toggleAttribute||(Element.prototype.toggleAttribute=function(e,t){return void 0!==t&&(t=!!t),this.hasAttribute(e)?!!t||(this.removeAttribute(e),!1):!1!==t&&(this.setAttribute(e,""),!0)})},31948:function(e,t,i){"use strict";i.a(e,(async function(e,t){try{i(71695),i(40251),i(47021);"function"!=typeof window.ResizeObserver&&(window.ResizeObserver=(await i.e("73378").then(i.bind(i,88198))).default),t()}catch(a){t(a)}}),1)}}]); //# sourceMappingURL=99266.d9d9a4e5954c4a50.js.map