iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
43 lines • 46.5 kB
JavaScript
/*! For license information please see 55372.60c431f7c4fca68b.js.LICENSE.txt */
export const __rspack_esm_id=55372;export const __rspack_esm_ids=[55372];export const __webpack_modules__={12451(t,e,a){a.d(e,{O:()=>r,i:()=>i.is});var o=a(5124),i=a(12130);class r extends o.WF{click(){if(this.mdcRoot)return this.mdcRoot.focus(),void this.mdcRoot.click();super.click()}createFoundation(){void 0!==this.mdcFoundation&&this.mdcFoundation.destroy(),this.mdcFoundationClass&&(this.mdcFoundation=new this.mdcFoundationClass(this.createAdapter()),this.mdcFoundation.init())}firstUpdated(){this.createFoundation()}}},12130(t,e,a){a.d(e,{SE:()=>h,U9:()=>l,hP:()=>o,is:()=>i});a(44114);const o=t=>t.nodeType===Node.ELEMENT_NODE;function i(t){return{addClass:e=>{t.classList.add(e)},removeClass:e=>{t.classList.remove(e)},hasClass:e=>t.classList.contains(e)}}let r=!1;const s=()=>{},n={get passive(){return r=!0,!1}};document.addEventListener("x",s,n),document.removeEventListener("x",s);const l=(t=window.document)=>{let e=t.activeElement;const a=[];if(!e)return a;for(;e&&(a.push(e),e.shadowRoot);)e=e.shadowRoot.activeElement;return a},h=t=>{const e=l();if(!e.length)return!1;const a=e[e.length-1],o=new Event("check-if-focused",{bubbles:!0,composed:!0});let i=[];const r=t=>{i=t.composedPath()};return document.body.addEventListener("check-if-focused",r),a.dispatchEvent(o),document.body.removeEventListener("check-if-focused",r),-1!==i.indexOf(t)}},63708(t,e,a){a.d(e,{fW:()=>r});a(18111),a(13579);var o=a(44537),i=a(36312);const r=(t,e)=>(l(e)||s(t,e))&&n(t,e),s=(t,e)=>!e.component||(0,o.e)(e.component).some(e=>(0,i.x)(t.config,e)),n=(t,e)=>!e.not_component||!(0,o.e)(e.not_component).some(e=>(0,i.x)(t.config,e)),l=t=>t.core},26218(t,e,a){a.d(e,{a:()=>i});const o=(0,a(77796).n)(t=>{history.replaceState({scrollPosition:t},"")},300);function i(t){return(e,a)=>{if("object"==typeof a)throw new Error("This decorator does not support this compilation type.");const i=e.connectedCallback;e.connectedCallback=function(){i.call(this);const e=this[a];e&&this.updateComplete.then(()=>{const a=this.renderRoot.querySelector(t);a&&setTimeout(()=>{a.scrollTop=e},0)})};const r=Object.getOwnPropertyDescriptor(e,a);let s;if(void 0===r)s={get(){return this[`__${String(a)}`]||history.state?.scrollPosition},set(t){o(t),this[`__${String(a)}`]=t},configurable:!0,enumerable:!0};else{const t=r.set;s={...r,set(e){o(e),this[`__${String(a)}`]=e,t?.call(this,e)}}}Object.defineProperty(e,a,s)}}},76830(t,e,a){a.d(e,{d:()=>o});a(18111),a(20116);const o=(t,e=!0)=>{if(t.defaultPrevented||0!==t.button||t.metaKey||t.ctrlKey||t.shiftKey)return;const a=t.composedPath().find(t=>"A"===t.tagName);if(!a||a.target||a.hasAttribute("download")||"external"===a.getAttribute("rel"))return;let o=a.href;if(!o||-1!==o.indexOf("mailto:"))return;const i=window.location,r=i.origin||i.protocol+"//"+i.host;return o.startsWith(r)&&(o=o.slice(r.length),"#"!==o)?(e&&t.preventDefault(),o):void 0}},69093(t,e,a){a.d(e,{t:()=>i});var o=a(71727);const i=t=>(0,o.m)(t.entity_id)},77796(t,e,a){a.d(e,{n:()=>o});const o=(t,e,a=!0,o=!0)=>{let i,r=0;const s=(...s)=>{const n=()=>{r=!1===a?0:Date.now(),i=void 0,t(...s)},l=Date.now();r||!1!==a||(r=l);const h=e-(l-r);h<=0||h>e?(i&&(clearTimeout(i),i=void 0),r=l,t(...s)):i||!1===o||(i=window.setTimeout(n,h))};return s.cancel=()=>{clearTimeout(i),i=void 0,r=0},s}},76776(t,e,a){var o=a(62826),i=a(5124),r=a(22441);class s extends i.WF{render(){return i.qy` ${this.header?i.qy`<h1 class="card-header">${this.header}</h1>`:i.s6} <slot></slot> `}constructor(...t){super(...t),this.raised=!1}}s.styles=i.AH`:host{background:var(--ha-card-background,var(--card-background-color,#fff));-webkit-backdrop-filter:var(--ha-card-backdrop-filter,none);backdrop-filter:var(--ha-card-backdrop-filter,none);box-shadow:var(--ha-card-box-shadow,none);box-sizing:border-box;border-radius:var(--ha-card-border-radius,var(--ha-border-radius-lg));border-width:var(--ha-card-border-width,1px);border-style:solid;border-color:var(--ha-card-border-color,var(--divider-color,#e0e0e0));color:var(--primary-text-color);display:block;transition:all .3s ease-out;position:relative}:host([raised]){border:none;box-shadow:var(--ha-card-box-shadow,0px 2px 1px -1px rgba(0,0,0,.2),0px 1px 1px 0px rgba(0,0,0,.14),0px 1px 3px 0px rgba(0,0,0,.12))}.card-header,:host ::slotted(.card-header){color:var(--ha-card-header-color,var(--primary-text-color));font-family:var(--ha-card-header-font-family, inherit);font-size:var(--ha-card-header-font-size, var(--ha-font-size-2xl));letter-spacing:-.012em;line-height:var(--ha-line-height-expanded);padding:var(--ha-space-3) var(--ha-space-4) var(--ha-space-4);display:block;margin-block-start:0;margin-block-end:0;font-weight:var(--ha-font-weight-normal)}
:host
::slotted(
.card-content:not(:nth-child(1 of .card-content, .card-header))
),
slot:not(:first-child)::slotted(.card-content) {
padding-top: 0;
margin-top: calc(var(--ha-space-2) * -1);
}
:host ::slotted(.card-content){padding:var(--ha-space-4)}:host ::slotted(.card-actions){border-top:1px solid var(--divider-color,#e8e8e8);padding:var(--ha-space-2)}`,(0,o.Cg)([(0,r.MZ)()],s.prototype,"header",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],s.prototype,"raised",void 0),s=(0,o.Cg)([(0,r.EM)("ha-card")],s)},90248(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaIconButtonArrowPrev:()=>p});var i=a(62826),r=a(5124),s=a(22441),n=a(63091),l=a(26300),h=t([l]);l=(h.then?(await h)():h)[0];const d="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z",c="M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";class p extends r.WF{render(){return r.qy` <ha-icon-button .disabled="${this.disabled}" .label="${this.label||this.hass?.localize("ui.common.back")||"Back"}" .path="${this._icon}" .href="${this.href}" .target="${this.target}" .rel="${this.rel}" .download="${this.download}"></ha-icon-button> `}constructor(...t){super(...t),this.disabled=!1,this._icon="rtl"===n.G.document.dir?c:d}}(0,i.Cg)([(0,s.MZ)({attribute:!1})],p.prototype,"hass",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],p.prototype,"disabled",void 0),(0,i.Cg)([(0,s.MZ)()],p.prototype,"label",void 0),(0,i.Cg)([(0,s.MZ)()],p.prototype,"href",void 0),(0,i.Cg)([(0,s.MZ)()],p.prototype,"target",void 0),(0,i.Cg)([(0,s.MZ)()],p.prototype,"rel",void 0),(0,i.Cg)([(0,s.MZ)()],p.prototype,"download",void 0),(0,i.Cg)([(0,s.wk)()],p.prototype,"_icon",void 0),p=(0,i.Cg)([(0,s.EM)("ha-icon-button-arrow-prev")],p),o()}catch(t){o(t)}})},26300(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaIconButton:()=>d});var i=a(62826),r=a(5124),s=a(22441),n=a(63672),l=a(18350),h=(a(67094),t([l]));l=(h.then?(await h)():h)[0];class d extends r.WF{render(){return r.qy` <ha-button appearance="plain" variant="neutral" aria-label="${(0,n.J)(this.label)}" title="${(0,n.J)(this.hideTitle?void 0:this.label)}" aria-haspopup="${(0,n.J)(this.ariaHasPopup)}" .disabled="${this.disabled}" .iconTag="${this.path?"ha-svg-icon":"span"}" .href="${this.href}" .target="${this.target}" .rel="${this.rel}" .download="${this.download}"> ${this.path?r.qy`<ha-svg-icon aria-hidden="true" .path="${this.path}"></ha-svg-icon>`:r.qy`<span><slot></slot></span>`} </ha-button> `}constructor(...t){super(...t),this.disabled=!1,this.hideTitle=!1,this.selected=!1}}d.shadowRootOptions={mode:"open",delegatesFocus:!0},d.styles=r.AH`:host{display:inline-block;outline:0;--ha-button-height:var(--ha-icon-button-size, 48px)}ha-button{position:relative;isolation:isolate;--wa-form-control-padding-inline:var(
--ha-icon-button-padding-inline,
--ha-space-2
);--wa-color-on-normal:currentColor;--wa-color-fill-quiet:transparent;--ha-button-label-overflow:visible}ha-button::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:50%;background-color:currentColor;opacity:0;pointer-events:none}ha-button::part(base){width:var(--wa-form-control-height);aspect-ratio:1;outline-offset:-4px}ha-button::part(label){display:flex}:host([selected]) ha-button::after{opacity:.1} (hover:hover){:host(:hover:not([disabled])) ha-button::after{opacity:.1}}`,(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],d.prototype,"disabled",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],d.prototype,"path",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],d.prototype,"label",void 0),(0,i.Cg)([(0,s.MZ)({type:String,attribute:"aria-haspopup"})],d.prototype,"ariaHasPopup",void 0),(0,i.Cg)([(0,s.MZ)({attribute:"hide-title",type:Boolean})],d.prototype,"hideTitle",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],d.prototype,"selected",void 0),(0,i.Cg)([(0,s.MZ)()],d.prototype,"href",void 0),(0,i.Cg)([(0,s.MZ)()],d.prototype,"target",void 0),(0,i.Cg)([(0,s.MZ)()],d.prototype,"rel",void 0),(0,i.Cg)([(0,s.MZ)()],d.prototype,"download",void 0),d=(0,i.Cg)([(0,s.EM)("ha-icon-button")],d),o()}catch(t){o(t)}})},28732(t,e,a){var o=a(62826),i=a(27686),r=a(7731),s=a(5124),n=a(22441);class l extends i.J{renderRipple(){return this.noninteractive?"":super.renderRipple()}static get styles(){return[r.R,s.AH`:host{padding-left:var(--mdc-list-side-padding-left,var(--mdc-list-side-padding,20px));padding-inline-start:var(--mdc-list-side-padding-left,var(--mdc-list-side-padding,20px));padding-right:var(--mdc-list-side-padding-right,var(--mdc-list-side-padding,20px));padding-inline-end:var(--mdc-list-side-padding-right,var(--mdc-list-side-padding,20px))}:host([graphic=avatar]:not([twoLine])),:host([graphic=icon]:not([twoLine])){height:48px}span.material-icons:first-of-type{margin-inline-start:0px!important;margin-inline-end:var(--mdc-list-item-graphic-margin,16px)!important;direction:var(--direction)!important}span.material-icons:last-of-type{margin-inline-start:auto!important;margin-inline-end:0px!important;direction:var(--direction)!important}.mdc-deprecated-list-item__meta{display:var(--mdc-list-item-meta-display);align-items:center;flex-shrink:0}:host([graphic=icon]:not([twoline])) .mdc-deprecated-list-item__graphic{margin-inline-end:var(--mdc-list-item-graphic-margin,20px)!important}:host([multiline-secondary]){height:auto}:host([multiline-secondary]) .mdc-deprecated-list-item__text{padding:8px 0}:host([multiline-secondary]) .mdc-deprecated-list-item__secondary-text{text-overflow:initial;white-space:normal;overflow:auto;display:inline-block;margin-top:10px}:host([multiline-secondary]) .mdc-deprecated-list-item__primary-text{margin-top:10px}:host([multiline-secondary]) .mdc-deprecated-list-item__secondary-text::before{display:none}:host([multiline-secondary]) .mdc-deprecated-list-item__primary-text::before{display:none}:host([disabled]){color:var(--disabled-text-color)}:host([noninteractive]){pointer-events:unset}`,"rtl"===document.dir?s.AH`span.material-icons:first-of-type,span.material-icons:last-of-type{direction:rtl!important;--direction:rtl}`:s.AH``]}}l=(0,o.Cg)([(0,n.EM)("ha-list-item")],l)},8630(t,e,a){var o=a(62826),i=a(68618),r=a(11081),s=a(22441);class n extends i.iY{}n.styles=r.R,n=(0,o.Cg)([(0,s.EM)("ha-list")],n)},2054(t,e,a){a.a(t,async function(t,e){try{var o=a(62826),i=a(5124),r=a(22441),s=a(1087),n=a(44249),l=a(26300),h=t([l]);l=(h.then?(await h)():h)[0];const d="M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z";class c extends i.WF{connectedCallback(){super.connectedCallback(),this._attachNotifOnConnect&&(this._attachNotifOnConnect=!1,this._subscribeNotifications())}disconnectedCallback(){super.disconnectedCallback(),this._unsubNotifications&&(this._attachNotifOnConnect=!0,this._unsubNotifications(),this._unsubNotifications=void 0)}render(){if(!this._show)return i.s6;const t=this._hasNotifications&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);return i.qy` <ha-icon-button .label="${this.hass.localize("ui.sidebar.sidebar_toggle")}" .path="${d}" ="${this._toggleMenu}"></ha-icon-button> ${t?i.qy`<div class="dot"></div>`:""} `}willUpdate(t){if(super.willUpdate(t),!t.has("narrow")&&!t.has("hass"))return;const e=t.has("hass")?t.get("hass"):this.hass,a=t.has("narrow")?t.get("narrow"):this.narrow,o=!1===e?.kioskMode&&(a||"always_hidden"===e?.dockedSidebar),i=!1===this.hass.kioskMode&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);this.hasUpdated&&o===i||(this._show=i||this._alwaysVisible,i?this._subscribeNotifications():this._unsubNotifications&&(this._unsubNotifications(),this._unsubNotifications=void 0))}_subscribeNotifications(){if(this._unsubNotifications)throw new Error("Already subscribed");this._unsubNotifications=(0,n.V)(this.hass.connection,t=>{this._hasNotifications=t.length>0})}_toggleMenu(){(0,s.r)(this,"hass-toggle-menu")}constructor(...t){super(...t),this.narrow=!1,this._hasNotifications=!1,this._show=!1,this._alwaysVisible=!1,this._attachNotifOnConnect=!1}}c.styles=i.AH`:host{position:relative}.dot{pointer-events:none;position:absolute;background-color:var(--accent-color);width:12px;height:12px;top:9px;right:7px;inset-inline-end:7px;inset-inline-start:initial;border-radius:var(--ha-border-radius-circle);border:2px solid var(--app-header-background-color)}`,(0,o.Cg)([(0,r.MZ)({type:Boolean})],c.prototype,"narrow",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],c.prototype,"hass",void 0),(0,o.Cg)([(0,r.wk)()],c.prototype,"_hasNotifications",void 0),(0,o.Cg)([(0,r.wk)()],c.prototype,"_show",void 0),c=(0,o.Cg)([(0,r.EM)("ha-menu-button")],c),e()}catch(t){e(t)}})},54276(t,e,a){var o=a(62826),i=a(76482),r=a(91382),s=a(96245),n=a(5124),l=a(22441);class h extends r.n{attach(t){super.attach(t),this.attachableTouchController.attach(t)}disconnectedCallback(){super.disconnectedCallback(),this.hovered=!1,this.pressed=!1}detach(){super.detach(),this.attachableTouchController.detach()}_onTouchControlChange(t,e){t?.removeEventListener("touchend",this._handleTouchEnd),e?.addEventListener("touchend",this._handleTouchEnd)}constructor(...t){super(...t),this.attachableTouchController=new i.i(this,this._onTouchControlChange.bind(this)),this._handleTouchEnd=()=>{this.disabled||super.endPressAnimation()}}}h.styles=[s.R,n.AH`:host{--md-ripple-hover-opacity:var(--ha-ripple-hover-opacity, 0.08);--md-ripple-pressed-opacity:var(--ha-ripple-pressed-opacity, 0.12);--md-ripple-hover-color:var(
--ha-ripple-hover-color,
var(--ha-ripple-color, var(--secondary-text-color))
);--md-ripple-pressed-color:var(
--ha-ripple-pressed-color,
var(--ha-ripple-color, var(--secondary-text-color))
)}`],h=(0,o.Cg)([(0,l.EM)("ha-ripple")],h)},65829(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaSpinner:()=>h});var i=a(62826),r=a(55262),s=a(5124),n=a(22441),l=t([r]);r=(l.then?(await l)():l)[0];class h extends r.A{updated(t){if(super.updated(t),t.has("size"))switch(this.size){case"tiny":this.style.setProperty("--ha-spinner-size","16px");break;case"small":this.style.setProperty("--ha-spinner-size","28px");break;case"medium":this.style.setProperty("--ha-spinner-size","48px");break;case"large":this.style.setProperty("--ha-spinner-size","68px");break;case void 0:this.style.removeProperty("--ha-progress-ring-size")}}static get styles(){return[r.A.styles,s.AH`:host{--indicator-color:var(
--ha-spinner-indicator-color,
var(--primary-color)
);--track-color:var(--ha-spinner-divider-color, var(--divider-color));--track-width:4px;--speed:3.5s;font-size:var(--ha-spinner-size, 48px)}`]}}(0,i.Cg)([(0,n.MZ)()],h.prototype,"size",void 0),h=(0,i.Cg)([(0,n.EM)("ha-spinner")],h),o()}catch(t){o(t)}})},67094(t,e,a){a.r(e),a.d(e,{HaSvgIcon:()=>s});var o=a(62826),i=a(5124),r=a(22441);class s extends i.WF{render(){return i.JW` <svg viewBox="${this.viewBox||"0 0 24 24"}" preserveAspectRatio="xMidYMid meet" focusable="false" role="img" aria-hidden="true"> <g> ${this.path?i.JW`<path class="primary-path" d="${this.path}"></path>`:i.s6} ${this.secondaryPath?i.JW`<path class="secondary-path" d="${this.secondaryPath}"></path>`:i.s6} </g> </svg>`}}s.styles=i.AH`:host{display:var(--ha-icon-display,inline-flex);align-items:center;justify-content:center;position:relative;vertical-align:middle;fill:var(--icon-primary-color,currentcolor);width:var(--mdc-icon-size,24px);height:var(--mdc-icon-size,24px)}svg{width:100%;height:100%;pointer-events:none;display:block}path.primary-path{opacity:var(--icon-primary-opactity, 1)}path.secondary-path{fill:var(--icon-secondary-color,currentcolor);opacity:var(--icon-secondary-opactity, .5)}`,(0,o.Cg)([(0,r.MZ)()],s.prototype,"path",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],s.prototype,"secondaryPath",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],s.prototype,"viewBox",void 0),s=(0,o.Cg)([(0,r.EM)("ha-svg-icon")],s)},43831(t,e,a){var o=a(62826),i=a(5124),r=a(22441),s=a(63672);a(54276);class n extends i.WF{render(){return i.qy` <div tabindex="0" role="tab" aria-selected="${this.active}" aria-label="${(0,s.J)(this.name)}" ="${this._handleKeyDown}"> <slot name="icon"></slot> <span class="name">${this.name}</span> <ha-ripple></ha-ripple> </div> `}_handleKeyDown(t){"Enter"===t.key&&t.target.click()}constructor(...t){super(...t),this.active=!1,this.narrow=!1}}n.styles=i.AH`div{padding:0 32px;display:flex;flex-direction:column;text-align:center;box-sizing:border-box;align-items:center;justify-content:center;width:100%;height:var(--header-height);cursor:pointer;position:relative;outline:0}:host(:not([narrow])) div{flex-direction:row;gap:var(--ha-space-2)}.name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}:host([active]){color:var(--primary-color)}:host(:not([narrow])[active]) div{border-bottom:2px solid var(--primary-color)}:host([narrow]){min-width:0;display:flex;justify-content:center;overflow:hidden}:host([narrow]) div{padding:0 4px}::slotted([slot=icon]){margin-bottom:var(--ha-space-1)}:host(:not([narrow])) ::slotted([slot=icon]){margin-bottom:0}div:focus-visible:before{position:absolute;display:block;content:"";inset:0;background-color:var(--secondary-text-color);opacity:.08}`,(0,o.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],n.prototype,"active",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],n.prototype,"narrow",void 0),(0,o.Cg)([(0,r.MZ)()],n.prototype,"name",void 0),n=(0,o.Cg)([(0,r.EM)("ha-tab")],n)},83119(t,e,a){var o=a(62826),i=a(5124),r=a(22441),s=a(6412),n=a(89784),l=a(28669);class h extends i.WF{render(){if(!this.person)return i.s6;const t=this.person.picture;if(t)return i.qy`<div style="${(0,n.W)({backgroundImage:`url(${this.hass.hassUrl(t)})`})}" class="picture"></div>`;const e=(0,l._2)(this.person.name);return i.qy`<div class="initials ${(0,s.H)({long:e.length>2})}"> ${e} </div>`}}h.styles=i.AH`:host{width:40px;height:40px;display:block}.picture{width:100%;height:100%;background-size:cover;border-radius:var(--ha-border-radius-circle)}.initials{display:inline-flex;justify-content:center;align-items:center;box-sizing:border-box;width:100%;height:100%;border-radius:var(--ha-border-radius-circle);background-color:var(--light-primary-color);text-decoration:none;color:var(--text-light-primary-color,var(--primary-text-color));overflow:hidden;font-size:var(--person-badge-font-size, var(--ha-font-size-m))}.initials.long{font-size:var(--ha-person-badge-font-size-long, var(--ha-font-size-s))}`,(0,o.Cg)([(0,r.MZ)({attribute:!1})],h.prototype,"hass",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],h.prototype,"person",void 0),h=(0,o.Cg)([(0,r.EM)("ha-person-badge")],h)},44249(t,e,a){a.d(e,{V:()=>o});const o=(t,e)=>{const a=new i,o=t.subscribeMessage(t=>e(a.processMessage(t)),{type:"persistent_notification/subscribe"});return()=>{o.then(t=>t?.())}};class i{processMessage(t){if("removed"===t.type)for(const e of Object.keys(t.notifications))delete this.notifications[e];else this.notifications={...this.notifications,...t.notifications};return Object.values(this.notifications)}constructor(){this.notifications={}}}},85547(t,e,a){a.d(e,{Fj:()=>i,Gu:()=>r,H2:()=>n,xA:()=>h,xs:()=>s});a(18111),a(20116);var o=a(69093);const i=t=>t.callWS({type:"person/list"}),r=(t,e)=>t.callWS({type:"person/create",...e}),s=(t,e,a)=>t.callWS({type:"person/update",person_id:e,...a}),n=(t,e)=>t.callWS({type:"person/delete",person_id:e}),l={},h=t=>{if(!t.user?.id)return;const e=l[t.user.id];if(e){const a=t.states[e];if(a&&a.attributes.user_id===t.user.id)return a}const a=Object.values(t.states).find(e=>e.attributes.user_id===t.user.id&&"person"===(0,o.t)(e));return a&&(l[t.user.id]=a.entity_id),a}},28669(t,e,a){a.d(e,{TK:()=>n,_2:()=>h,eR:()=>i,hG:()=>l,hU:()=>r,kg:()=>s,wj:()=>o,xg:()=>d});a(44114),a(18111),a(61701);const o="system-admin",i="system-users",r=async t=>t.callWS({type:"config/auth/list"}),s=async(t,e,a,o)=>t.callWS({type:"config/auth/create",name:e,group_ids:a,local_only:o}),n=async(t,e,a)=>t.callWS({...a,type:"config/auth/update",user_id:e}),l=async(t,e)=>t.callWS({type:"config/auth/delete",user_id:e}),h=t=>t?t.trim().split(" ").slice(0,3).map(t=>t.substring(0,1)).join(""):"?",d=(t,e,a)=>{const o=[],i=e=>t.localize(`ui.panel.config.users.${e}`);return e.is_owner&&o.push(["M12 2C6.47 2 2 6.5 2 12C2 17.5 6.5 22 12 22S22 17.5 22 12 17.5 2 12 2M12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4S20 7.58 20 12C20 16.42 16.42 20 12 20M8 14L7 8L10 10L12 7L14 10L17 8L16 14H8M8.56 16C8.22 16 8 15.78 8 15.44V15H16V15.44C16 15.78 15.78 16 15.44 16H8.56Z",i("is_owner")]),a&&e.system_generated&&o.push(["M11,7H15V9H11V11H13A2,2 0 0,1 15,13V15A2,2 0 0,1 13,17H9V15H13V13H11A2,2 0 0,1 9,11V9A2,2 0 0,1 11,7M12,2A10,10 0 0,1 22,12A10,10 0 0,1 12,22A10,10 0 0,1 2,12A10,10 0 0,1 12,2M12,4A8,8 0 0,0 4,12A8,8 0 0,0 12,20A8,8 0 0,0 20,12A8,8 0 0,0 12,4Z",i("is_system")]),e.local_only&&o.push(["M12 20C7.6 20 4 16.4 4 12S7.6 4 12 4 20 7.6 20 12 16.4 20 12 20M12 2C6.5 2 2 6.5 2 12S6.5 22 12 22 22 17.5 22 12 17.5 2 12 2M11 14H13V17H16V12H18L12 7L6 12H8V17H11V14",i("is_local")]),e.is_active||o.push(["M12 2C17.5 2 22 6.5 22 12S17.5 22 12 22 2 17.5 2 12 6.5 2 12 2M12 4C10.1 4 8.4 4.6 7.1 5.7L18.3 16.9C19.3 15.5 20 13.8 20 12C20 7.6 16.4 4 12 4M16.9 18.3L5.7 7.1C4.6 8.4 4 10.1 4 12C4 16.4 7.6 20 12 20C13.9 20 15.6 19.4 16.9 18.3Z",i("is_not_active")]),o}},23296(t,e,a){a.a(t,async function(t,o){try{a.r(e);var i=a(62826),r=a(5124),s=a(22441),n=a(91926),l=a(65829),h=a(90248),d=a(2054),c=a(14503),p=t([l,h,d]);[l,h,d]=p.then?(await p)():p;class g extends r.WF{render(){return r.qy` ${this.noToolbar?"":r.qy`<div class="toolbar"> ${this.rootnav||history.state?.root?r.qy` <ha-menu-button .hass="${this.hass}" .narrow="${this.narrow}"></ha-menu-button> `:r.qy` <ha-icon-button-arrow-prev .hass="${this.hass}" ="${this._handleBack}"></ha-icon-button-arrow-prev> `} </div>`} <div class="content"> <ha-spinner></ha-spinner> ${this.message?r.qy`<div id="loading-text">${this.message}</div>`:r.s6} </div> `}_handleBack(){(0,n.OE)()}static get styles(){return[c.RF,r.AH`:host{display:block;height:100%;background-color:var(--primary-background-color)}.toolbar{display:flex;align-items:center;font-size:var(--ha-font-size-xl);height:var(--header-height);padding:8px 12px;pointer-events:none;background-color:var(--app-header-background-color);font-weight:var(--ha-font-weight-normal);color:var(--app-header-text-color,#fff);border-bottom:var(--app-header-border-bottom,none);box-sizing:border-box} (max-width:599px){.toolbar{padding:4px}}ha-icon-button-arrow-prev,ha-menu-button{pointer-events:auto}.content{height:calc(100% - var(--header-height));display:flex;flex-direction:column;align-items:center;justify-content:center}#loading-text{max-width:350px;margin-top:16px}`]}constructor(...t){super(...t),this.noToolbar=!1,this.rootnav=!1,this.narrow=!1}}(0,i.Cg)([(0,s.MZ)({attribute:!1})],g.prototype,"hass",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,attribute:"no-toolbar"})],g.prototype,"noToolbar",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],g.prototype,"rootnav",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],g.prototype,"narrow",void 0),(0,i.Cg)([(0,s.MZ)()],g.prototype,"message",void 0),g=(0,i.Cg)([(0,s.EM)("hass-loading-screen")],g),o()}catch(t){o(t)}})},40511(t,e,a){a.a(t,async function(t,e){try{a(18111),a(22489),a(20116),a(61701),a(14603),a(47566),a(98721);var o=a(62826),i=a(5124),r=a(22441),s=a(6412),n=a(22786),l=a(63708),h=a(26218),d=a(76830),c=a(91926),p=a(90248),g=a(2054),v=(a(67094),a(43831),a(14503)),u=t([p,g]);[p,g]=u.then?(await u)():u;const m=t=>t.endsWith("/")&&t.length>1?t.slice(0,-1):t;class f extends i.WF{willUpdate(t){if(t.has("route")){const t=`${this.route.prefix}${this.route.path}`;this._activeTab=this.tabs.find(e=>this._isActiveTabPath(e.path,t))}super.willUpdate(t)}render(){const t=this._getTabs(this.tabs,this._activeTab,this.hass.config.components,this.hass.language,this.hass.userData,this.narrow,this.localizeFunc||this.hass.localize);return i.qy` <div class="toolbar ${(0,s.H)({narrow:this.narrow})}"> <slot name="toolbar"> <div class="toolbar-content"> ${this.mainPage||!this.backPath&&history.state?.root?i.qy` <ha-menu-button .hass="${this.hass}" .narrow="${this.narrow}"></ha-menu-button> `:this.backPath?i.qy` <ha-icon-button-arrow-prev .href="${this.backPath}" .hass="${this.hass}"></ha-icon-button-arrow-prev> `:i.qy` <ha-icon-button-arrow-prev .hass="${this.hass}" ="${this._backTapped}"></ha-icon-button-arrow-prev> `} ${this.narrow||!this.showTabs?i.qy`<div class="main-title"> <slot name="header">${this.showTabs?"":t[0]}</slot> </div>`:""} ${this.showTabs&&!this.narrow?i.qy`<div id="tabbar">${t}</div>`:""} <div id="toolbar-icon"> <slot name="toolbar-icon"></slot> </div> </div> </slot> ${this.showTabs&&this.narrow?i.qy`<div id="tabbar" class="bottom-bar">${t}</div>`:""} </div> <div class="container"> ${this.pane?i.qy`<div class="pane"> <div class="shadow-container"></div> <div class="ha-scrollbar"> <slot name="pane"></slot> </div> </div>`:i.s6} <div class="content ha-scrollbar" ="${this._saveScrollPos}"> <slot></slot> ${this.hasFab?i.qy`<div class="fab-bottom-space"></div>`:i.s6} </div> </div> <div id="fab"> <slot name="fab"></slot> </div> `}_saveScrollPos(t){this._savedScrollPos=t.target.scrollTop}focusContentScroller(){this._content&&(this._content.style.outline="none",this._content.focus({preventScroll:!0}))}_backTapped(){this.backCallback?this.backCallback():(0,c.OE)()}_isActiveTabPath(t,e){try{const a=new URL(t,window.location.origin),o=new URL(e,window.location.origin),i=m(a.pathname),r=m(o.pathname);return!(r!==i&&!r.startsWith(`${i}/`))}catch(a){return e===t||e.startsWith(`${t}/`)}}async _tabClicked(t){const e=(0,d.d)(t);e&&await(0,c.oo)(e,{replace:!0})}static get styles(){return[v.dp,i.AH`:host{display:block;height:100%;background-color:var(--primary-background-color)}:host([narrow]){width:100%;position:fixed}.container{display:flex;height:calc(100% - var(--header-height,0px) - var(--safe-area-inset-top,0px))}ha-menu-button{margin-right:24px;margin-inline-end:24px;margin-inline-start:initial}.toolbar{font-size:var(--ha-font-size-xl);height:calc(var(--header-height,0px) + var(--safe-area-inset-top,0px));padding-top:var(--safe-area-inset-top);padding-right:var(--safe-area-inset-right);background-color:var(--sidebar-background-color);font-weight:var(--ha-font-weight-normal);border-bottom:1px solid var(--divider-color);box-sizing:border-box}:host([narrow]) .toolbar{padding-left:var(--safe-area-inset-left)}.toolbar-content{padding:8px 12px;display:flex;align-items:center;height:100%;box-sizing:border-box}:host([narrow]) .toolbar-content{padding:4px}.toolbar a{color:var(--sidebar-text-color);text-decoration:none}.bottom-bar a{width:25%}#tabbar{display:flex;font-size:var(--ha-font-size-m);overflow:hidden}#tabbar>a{overflow:hidden;max-width:45%}#tabbar.bottom-bar{position:absolute;bottom:0;left:0;padding:0 16px;box-sizing:border-box;background-color:var(--sidebar-background-color);border-top:1px solid var(--divider-color);justify-content:space-around;z-index:2;font-size:var(--ha-font-size-s);width:100%;padding-bottom:var(--safe-area-inset-bottom)}#tabbar:not(.bottom-bar){flex:1;justify-content:center}:host(:not([narrow])) #toolbar-icon{min-width:40px}::slotted([slot=toolbar-icon]),ha-icon-button-arrow-prev,ha-menu-button{display:flex;flex-shrink:0;pointer-events:auto;color:var(--sidebar-icon-color)}.main-title{min-width:0;flex:1;max-height:var(--header-height);line-height:var(--ha-line-height-normal);color:var(--sidebar-text-color);margin-inline-start:var(--main-title-margin,var(--ha-space-6))}.narrow .main-title{margin-inline-start:var(--main-title-margin,var(--ha-space-2))}.content{position:relative;width:100%;margin-right:var(--safe-area-inset-right);margin-inline-end:var(--safe-area-inset-right);overflow:auto;-webkit-overflow-scrolling:touch}:host([narrow]) .content{margin-left:var(--safe-area-inset-left);margin-inline-start:var(--safe-area-inset-left)}:host([narrow][show-tabs]) .content{margin-bottom:calc(var(--header-height,0px) + var(--safe-area-inset-bottom,0px))}.content .fab-bottom-space{height:calc(64px + var(--safe-area-inset-bottom,0px))}:host([narrow][show-tabs]) .content .fab-bottom-space{height:calc(80px + var(--safe-area-inset-bottom,0px))}#fab{position:fixed;right:calc(16px + var(--safe-area-inset-right,0px));inset-inline-end:calc(16px + var(--safe-area-inset-right));inset-inline-start:initial;bottom:calc(16px + var(--safe-area-inset-bottom,0px));z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--ha-space-2);--ha-button-box-shadow:var(--ha-box-shadow-l)}:host([narrow][show-tabs]) #fab{bottom:calc(84px + var(--safe-area-inset-bottom,0px))}#fab[is-wide]{bottom:24px;right:24px;inset-inline-end:24px;inset-inline-start:initial}.pane{border-right:1px solid var(--divider-color);border-inline-end:1px solid var(--divider-color);border-inline-start:initial;box-sizing:border-box;display:flex;flex:0 0 var(--sidepane-width,250px);width:var(--sidepane-width,250px);flex-direction:column;position:relative}.pane .ha-scrollbar{flex:1}`]}constructor(...t){super(...t),this.mainPage=!1,this.narrow=!1,this.isWide=!1,this.pane=!1,this.hasFab=!1,this.showTabs=!1,this._getTabs=(0,n.A)((t,e,a,o,r,s,n)=>{const h=t.filter(t=>(0,l.fW)(this.hass,t));if(h.length<2){if(this.showTabs=!1,1===h.length){const t=h[0];return[t.translationKey?n(t.translationKey):t.name]}return[""]}return this.showTabs=!0,h.map(t=>i.qy` <a href="${t.path}" ="${this._tabClicked}"> <ha-tab .active="${t.path===e?.path}" .narrow="${this.narrow}" .name="${t.translationKey?n(t.translationKey):t.name}"> ${t.iconPath?i.qy`<ha-svg-icon slot="icon" .path="${t.iconPath}"></ha-svg-icon>`:""} </ha-tab> </a> `)})}}(0,o.Cg)([(0,r.MZ)({attribute:!1})],f.prototype,"hass",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],f.prototype,"localizeFunc",void 0),(0,o.Cg)([(0,r.MZ)({type:String,attribute:"back-path"})],f.prototype,"backPath",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],f.prototype,"backCallback",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,attribute:"main-page"})],f.prototype,"mainPage",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],f.prototype,"route",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],f.prototype,"tabs",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],f.prototype,"narrow",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,reflect:!0,attribute:"is-wide"})],f.prototype,"isWide",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean})],f.prototype,"pane",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,attribute:"has-fab"})],f.prototype,"hasFab",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,attribute:"show-tabs",reflect:!0})],f.prototype,"showTabs",void 0),(0,o.Cg)([(0,r.wk)()],f.prototype,"_activeTab",void 0),(0,o.Cg)([(0,r.P)(".content")],f.prototype,"_content",void 0),(0,o.Cg)([(0,h.a)(".content")],f.prototype,"_savedScrollPos",void 0),(0,o.Cg)([(0,r.Ls)({passive:!0})],f.prototype,"_saveScrollPos",null),f=(0,o.Cg)([(0,r.EM)("hass-tabs-subpage")],f),e()}catch(t){e(t)}})},20820(t,e,a){var o=a(62826),i=a(5124),r=a(22441),s=a(6412);class n extends i.WF{render(){return i.qy` <div class="content ${(0,s.H)({narrow:!this.isWide,"full-width":this.fullWidth})}"> <div class="header"><slot name="header"></slot></div> <div class="together layout ${(0,s.H)({narrow:!this.isWide,vertical:this.vertical||!this.isWide,horizontal:!this.vertical&&this.isWide})}"> <div class="intro"><slot name="introduction"></slot></div> <div class="panel flex-auto"><slot></slot></div> </div> </div> `}constructor(...t){super(...t),this.isWide=!1,this.vertical=!1,this.fullWidth=!1}}n.styles=i.AH`:host{display:block}.content{padding:28px 20px 0;max-width:1040px;margin:0 auto}.layout{display:flex}.horizontal{flex-direction:row}.vertical{flex-direction:column}.flex-auto{flex:1 1 auto}.header{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-2xl);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-condensed);opacity:var(--dark-primary-opacity)}.together{margin-top:var(--config-section-content-together-margin-top,32px)}.intro{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal);width:100%;opacity:var(--dark-primary-opacity);font-size:var(--ha-font-size-m);padding-bottom:20px}.horizontal .intro{max-width:400px;margin-right:40px;margin-inline-end:40px;margin-inline-start:initial}.panel{margin-top:-24px}.panel ::slotted(*){margin-top:24px;display:block}.narrow.content{max-width:640px}.narrow .together{margin-top:var(--config-section-narrow-content-together-margin-top,var(--config-section-content-together-margin-top,20px))}.narrow .intro{padding-bottom:20px;margin-right:0;margin-inline-end:0;margin-inline-start:initial;max-width:500px}.full-width{padding:0}.full-width .layout{flex-direction:column}`,(0,o.Cg)([(0,r.MZ)({attribute:"is-wide",type:Boolean})],n.prototype,"isWide",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean})],n.prototype,"vertical",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,attribute:"full-width"})],n.prototype,"fullWidth",void 0),n=(0,o.Cg)([(0,r.EM)("ha-config-section")],n)},84742(t,e,a){a.a(t,async function(t,o){try{a.r(e),a.d(e,{HaConfigPerson:()=>y});a(74423),a(18111),a(22489),a(20116),a(61701),a(17642),a(58004),a(33853),a(45876),a(32475),a(15024),a(31698);var i=a(62826),r=a(5124),s=a(22441),n=a(52220),l=a(18350),h=(a(76776),a(8630),a(28732),a(67094),a(83119),a(85547)),d=a(28669),c=a(65063),p=a(23296),g=a(40511),v=a(36918),u=(a(20820),a(25635)),m=a(58142),f=t([l,p,g]);[l,p,g]=f.then?(await f)():f;const b="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";class y extends r.WF{render(){if(!this.hass||void 0===this._storageItems||void 0===this._configItems)return r.qy` <hass-loading-screen></hass-loading-screen> `;const t=this.hass;return r.qy` <hass-tabs-subpage .hass="${this.hass}" .narrow="${this.narrow}" .route="${this.route}" back-path="/config" .tabs="${u.configSections.persons}" has-fab> <ha-config-section .isWide="${this.isWide}"> <span slot="header">${t.localize("ui.panel.config.person.caption")}</span> <span slot="introduction"> <p>${t.localize("ui.panel.config.person.introduction")}</p> ${this._configItems.length>0?r.qy` <p> ${t.localize("ui.panel.config.person.note_about_persons_configured_in_yaml")} </p> `:""} <a href="${(0,v.o)(this.hass,"/integrations/person/")}" target="_blank" rel="noreferrer"> ${this.hass.localize("ui.panel.config.person.learn_more")} </a> </span> <ha-card outlined class="storage"> <ha-list> ${this._storageItems.map(t=>r.qy` <ha-list-item graphic="avatar" ="${this._openEditEntry}" .entry="${t}"> <ha-person-badge .hass="${this.hass}" .person="${t}" slot="graphic"></ha-person-badge> <span>${t.name}</span> </ha-list-item> `)} </ha-list> ${0===this._storageItems.length?r.qy` <div class="empty"> ${t.localize("ui.panel.config.person.no_persons_created_yet")} <ha-button ="${this._createPerson}" appearance="filled" size="small"> <ha-svg-icon slot="start" .path="${b}"></ha-svg-icon> ${t.localize("ui.panel.config.person.create_person")}</ha-button> </div> `:r.s6} </ha-card> ${this._configItems.length>0?r.qy` <ha-card outlined header="Configuration.yaml persons"> <ha-list> ${this._configItems.map(t=>r.qy` <ha-list-item graphic="avatar"> <ha-person-badge .hass="${this.hass}" .person="${t}" slot="graphic"></ha-person-badge> <span>${t.name}</span> </ha-list-item> `)} </ha-list> </ha-card> `:r.s6} </ha-config-section> <ha-button slot="fab" size="large" ="${this._createPerson}"> <ha-svg-icon slot="start" .path="${b}"></ha-svg-icon> ${t.localize("ui.panel.config.person.add_person")} </ha-button> </hass-tabs-subpage> `}firstUpdated(t){super.firstUpdated(t),this._fetchData(),(0,m.T)()}async _fetchData(){this._usersLoad=(0,d.hU)(this.hass);const t=await(0,h.Fj)(this.hass);this._storageItems=t.storage.sort((t,e)=>(0,n.xL)(t.name,e.name,this.hass.locale.language)),this._configItems=t.config.sort((t,e)=>(0,n.xL)(t.name,e.name,this.hass.locale.language)),this._openDialogIfPersonSpecifiedInRoute()}_openDialogIfPersonSpecifiedInRoute(){if(!this.route.path.includes("/edit/"))return;const t=this.route.path.split("/edit/"),e=t.length>1?t[1]:null;if(!e)return;const a=this._storageItems.find(t=>t.id===e);a?this._openDialog(a):(0,c.showAlertDialog)(this,{title:this.hass?.localize("ui.panel.config.person.person_not_found_title"),text:this.hass?.localize("ui.panel.config.person.person_not_found")})}_createPerson(){this._openDialog()}_openEditEntry(t){const e=t.currentTarget.entry;this._openDialog(e)}_allowedUsers(t,e){const a=new Set;for(const t of[this._configItems,this._storageItems])for(const e of t)e.user_id&&a.add(e.user_id);const o=e?e.user_id:void 0;return t.filter(t=>t.id===o||!a.has(t.id))}async _openDialog(t){const e=await this._usersLoad;(0,m.o)(this,{entry:t,users:this._allowedUsers(e,t),createEntry:async t=>{const e=await(0,h.Gu)(this.hass,t);this._storageItems=this._storageItems.concat(e).sort((t,e)=>(0,n.xL)(t.name,e.name,this.hass.locale.language))},updateEntry:async e=>{const a=await(0,h.xs)(this.hass,t.id,e);this._storageItems=this._storageItems.map(e=>e===t?a:e)},removeEntry:async()=>{if(!await(0,c.dk)(this,{title:this.hass.localize("ui.panel.config.person.confirm_delete_title",{name:t.name}),text:this.hass.localize("ui.panel.config.person.confirm_delete_text"),dismissText:this.hass.localize("ui.common.cancel"),confirmText:this.hass.localize("ui.common.delete"),destructive:!0}))return!1;try{return await(0,h.H2)(this.hass,t.id),this._storageItems=this._storageItems.filter(e=>e!==t),!0}catch(t){return!1}},refreshUsers:()=>{this._usersLoad=(0,d.hU)(this.hass)}})}constructor(...t){super(...t),this.isWide=!1,this.narrow=!1}}y.styles=r.AH`a{color:var(--primary-color)}ha-card{max-width:600px;margin:16px auto;overflow:hidden}.empty{padding:8px;display:flex;align-items:center;justify-content:space-around}ha-list:has(+ .empty){display:none}`,(0,i.Cg)([(0,s.MZ)({attribute:!1})],y.prototype,"hass",void 0),(0,i.Cg)([(0,s.MZ)({attribute:"is-wide",type:Boolean})],y.prototype,"isWide",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],y.prototype,"narrow",void 0),(0,i.Cg)([(0,s.MZ)({attribute:!1})],y.prototype,"route",void 0),(0,i.Cg)([(0,s.wk)()],y.prototype,"_storageItems",void 0),(0,i.Cg)([(0,s.wk)()],y.prototype,"_configItems",void 0),y=(0,i.Cg)([(0,s.EM)("ha-config-person")],y),o()}catch(t){o(t)}})},58142(t,e,a){a.d(e,{T:()=>i,o:()=>r});var o=a(1087);const i=()=>Promise.all([a.e(4801),a.e(39763),a.e(32450),a.e(7305),a.e(92769),a.e(3283),a.e(1882),a.e(29406),a.e(26092),a.e(8851),a.e(1535),a.e(26295),a.e(22106),a.e(45181)]).then(a.bind(a,33256)),r=(t,e)=>{(0,o.r)(t,"show-dialog",{dialogTag:"dialog-person-detail",dialogImport:i,dialogParams:e})}},14503(t,e,a){a.d(e,{RF:()=>r,dp:()=>l,kO:()=>n,nA:()=>s,og:()=>i});var o=a(5124);const i=o.AH`button.link{background:0 0;color:inherit;border:none;padding:0;font:inherit;text-align:left;text-decoration:underline;cursor:pointer;outline:0}`,r=o.AH`:host{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-m);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal)}app-header div[sticky]{height:48px}app-toolbar [main-title]{margin-left:20px;margin-inline-start:20px;margin-inline-end:initial}.header{transition:box-shadow .2s linear,width var(--ha-animation-duration-normal) ease,padding-left var(--ha-animation-duration-normal) ease,padding-right var(--ha-animation-duration-normal) ease} (prefers-reduced-motion:reduce){.header{transition:box-shadow .2s linear}}h1{font-family:var(--ha-font-family-heading);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-2xl);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-condensed)}h2{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--ha-font-size-xl);font-weight:var(--ha-font-weight-medium);line-height:var(--ha-line-height-normal)}h3{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-l);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal)}a{color:var(--primary-color)}.secondary{color:var(--secondary-text-color)}.error{color:var(--error-color)}.warning{color:var(--error-color)}${i} .card-actions a{text-decoration:none}.card-actions .warning{--mdc-theme-primary:var(--error-color)}.layout.horizontal,.layout.vertical{display:flex}.layout.inline{display:inline-flex}.layout.horizontal{flex-direction:row}.layout.vertical{flex-direction:column}.layout.wrap{flex-wrap:wrap}.layout.no-wrap{flex-wrap:nowrap}.layout.center,.layout.center-center{align-items:center}.layout.bottom{align-items:flex-end}.layout.center-center,.layout.center-justified{justify-content:center}.flex{flex:1;flex-basis:0.000000001px}.flex-auto{flex:1 1 auto}.flex-none{flex:none}.layout.justified{justify-content:space-between}`,s=o.AH`ha-adaptive-dialog,ha-dialog{--mdc-dialog-min-width:400px;--mdc-dialog-max-width:600px;--mdc-dialog-max-width:min(600px, 95vw);--justify-action-buttons:space-between;--dialog-container-padding:var(--safe-area-inset-top, 0) var(--safe-area-inset-right, 0) var(--safe-area-inset-bottom, 0) var(--safe-area-inset-left, 0);--dialog-surface-padding:0px}ha-adaptive-dialog .form,ha-dialog .form{color:var(--primary-text-color)}a{color:var(--primary-color)} all and (max-width:450px),all and (max-height:500px){ha-adaptive-dialog,ha-dialog{--mdc-dialog-min-width:100vw;--mdc-dialog-max-width:100vw;--mdc-dialog-min-height:100vh;--mdc-dialog-min-height:100svh;--mdc-dialog-max-height:100vh;--mdc-dialog-max-height:100svh;--dialog-container-padding:0px;--dialog-surface-padding:var(--safe-area-inset-top, 0) var(--safe-area-inset-right, 0) var(--safe-area-inset-bottom, 0) var(--safe-area-inset-left, 0);--vertical-align-dialog:flex-end}ha-dialog{--ha-dialog-border-radius:var(--ha-border-radius-square)}}.error{color:var(--error-color)}`,n=o.AH`ha-adaptive-dialog,ha-dialog{--vertical-align-dialog:flex-start;--dialog-surface-margin-top:var(--ha-space-10);--mdc-dialog-max-height:calc(
100vh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var(
--safe-area-inset-y,
0px
)
);--mdc-dialog-max-height:calc(
100svh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var(
--safe-area-inset-y,
0px
)
);--ha-dialog-max-height:calc(
100vh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var(
--safe-area-inset-y,
0px
)
);--ha-dialog-max-height:calc(
100svh - var(--dialog-surface-margin-top) - var(--ha-space-2) - var(
--safe-area-inset-y,
0px
)
)} all and (max-width:450px),all and (max-height:500px){ha-adaptive-dialog,ha-dialog{--dialog-surface-margin-top:0px;--mdc-dialog-min-height:100vh;--mdc-dialog-min-height:100svh;--mdc-dialog-max-height:100vh;--mdc-dialog-max-height:100svh;--ha-dialog-max-height:100vh;--ha-dialog-max-height:100svh}}`,l=o.AH`.ha-scrollbar::-webkit-scrollbar{width:.4rem;height:.4rem}.ha-scrollbar::-webkit-scrollbar-thumb{border-radius:var(--ha-border-radius-sm);background:var(--scrollbar-thumb-color)}.ha-scrollbar{overflow-y:auto;scrollbar-color:var(--scrollbar-thumb-color) transparent;scrollbar-width:thin}`;o.AH`body{background-color:var(--primary-background-color);color:var(--primary-text-color);height:calc(100vh - 32px);width:100vw}`},36918(t,e,a){a.d(e,{o:()=>o});const o=(t,e)=>`https://www.iobroker.net/#${t.language&&t.language.split("-")[0]||"en"}/adapters/adapterref/iobroker.lovelace/README.md#`},35370(t,e,a){var o=a(26198);t.exports=function(t,e,a){for(var i=0,r=arguments.length>2?a:o(e),s=new t(r);r>i;)s[i]=e[i++];return s}},77957(t,e,a){var o=a(76080),i=a(79504),r=a(47055),s=a(48981),n=a(56969),l=a(26198),h=a(2360),d=a(35370),c=Array,p=i([].push);t.exports=function(t,e,a,i){for(var g,v,u,m=s(t),f=r(m),b=o(e,a),y=h(null),x=l(f),w=0;x>w;w++)u=f[w],(v=n(b(u,w,m)))in y?p(y[v],u):y[v]=[u];if(i&&(g=i(m))!==c)for(v in y)y[v]=d(g,y[v]);return y}},46058(t,e,a){var o=a(46518),i=a(77957),r=a(6469);o({target:"Array",proto:!0},{group:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}}),r("group")},89784(t,e,a){a.d(e,{W:()=>n});a(74423),a(18111),a(18237),a(17642),a(58004),a(33853),a(45876),a(32475),a(15024),a(31698);var o=a(5055),i=a(42017);const r="important",s=" !"+r,n=(0,i.u$)(class extends i.WL{render(t){return Object.keys(t).reduce((e,a)=>{const o=t[a];return null==o?e:e+`${a=a.includes("-")?a:a.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${o};`},"")}update(t,[e]){const{style:a}=t.element;if(void 0===this.ft)return this.ft=new Set(Object.keys(e)),this.render(e);for(const t of this.ft)null==e[t]&&(this.ft.delete(t),t.includes("-")?a.removeProperty(t):a[t]=null);for(const t in e){const o=e[t];if(null!=o){this.ft.add(t);const e="string"==typeof o&&o.endsWith(s);t.includes("-")||e?a.setProperty(t,e?o.slice(0,-11):o,e?r:""):a[t]=o}}return o.c0}constructor(t){if(super(t),t.type!==i.OA.ATTRIBUTE||"style"!==t.name||t.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}})}};