UNPKG

iobroker.lovelace

Version:

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

63 lines 64 kB
"use strict";(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[23223],{26218:function(t,e,a){a.d(e,{a:function(){return o}});a(16280);const i=(0,a(77796).n)(t=>{history.replaceState({scrollPosition:t},"")},300);function o(t){return(e,a)=>{if("object"==typeof a)throw new Error("This decorator does not support this compilation type.");const o=e.connectedCallback;e.connectedCallback=function(){o.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(){var t;return this[`__${String(a)}`]||(null===(t=history.state)||void 0===t?void 0:t.scrollPosition)},set(t){i(t),this[`__${String(a)}`]=t},configurable:!0,enumerable:!0};else{const t=r.set;s=Object.assign(Object.assign({},r),{},{set(e){i(e),this[`__${String(a)}`]=e,null==t||t.call(this,e)}})}Object.defineProperty(e,a,s)}}},69093:function(t,e,a){a.d(e,{t:function(){return o}});var i=a(71727);const o=t=>(0,i.m)(t.entity_id)},82286:function(t,e,a){a.d(e,{$:function(){return i}});const i=(t,e)=>o(t.attributes,e),o=(t,e)=>0!==(t.supported_features&e)},34470:function(t,e,a){a.d(e,{E:function(){return o}});let i;const o=(0,a(5124).AH)(i||(i=(t=>t)`ha-state-icon[data-domain=alarm_control_panel][data-state=arming],ha-state-icon[data-domain=alarm_control_panel][data-state=pending],ha-state-icon[data-domain=alarm_control_panel][data-state=triggered],ha-state-icon[data-domain=lock][data-state=jammed]{animation:pulse 1s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:0}100%{opacity:1}}ha-state-icon[data-state=unavailable]{color:var(--state-unavailable-color)}`))},60353:function(t,e,a){a.d(e,{u:function(){return i}});class i{start(t){const e=Date.now();this._startY=t,this._startTime=e,this._lastY=t,this._lastTime=e,this._delta=0}move(t){const e=Date.now();return this._delta=this._startY-t,this._lastY=t,this._lastTime=e,this._delta}end(){const t=this.getVelocity(),e=Math.abs(t)>this._velocityThreshold;return{velocity:t,delta:this._delta,isSwipe:e,isDownwardSwipe:t>0}}getDelta(){return this._delta}getVelocity(){if(Date.now()-this._lastTime>=this._movementTimeThreshold)return 0;const t=this._lastTime-this._startTime;return t>0?(this._lastY-this._startY)/t:0}reset(){this._startY=0,this._delta=0,this._startTime=0,this._lastY=0,this._lastTime=0}constructor(t={}){var e,a;this._startY=0,this._delta=0,this._startTime=0,this._lastY=0,this._lastTime=0,this._velocityThreshold=null!==(e=t.velocitySwipeThreshold)&&void 0!==e?e:.5,this._movementTimeThreshold=null!==(a=t.movementTimeThreshold)&&void 0!==a?a:100}}},77796:function(t,e,a){a.d(e,{n:function(){return i}});a(62953);const i=(t,e,a=!0,i=!0)=>{let o,r=0;const s=(...s)=>{const n=()=>{r=!1===a?0:Date.now(),o=void 0,t(...s)},l=Date.now();r||!1!==a||(r=l);const d=e-(l-r);d<=0||d>e?(o&&(clearTimeout(o),o=void 0),r=l,t(...s)):o||!1===i||(o=window.setTimeout(n,d))};return s.cancel=()=>{clearTimeout(o),o=void 0,r=0},s}},3931:function(t,e,a){a.d(e,{U:function(){return i}});a(3362),a(62953);const i=async(t,e,a,i,o,...r)=>{let s=i[t];s||(s=i[t]={});const n=s[o];if(n)return n;const l=a(i,o,...r);return s[o]=l,l.then(()=>setTimeout(()=>{s[o]=void 0},e),()=>{s[o]=void 0}),l}},82474:function(t,e,a){a.a(t,async function(t,e){try{a(13609),a(18111),a(20116),a(61701),a(3362),a(62953);var i=a(40445),o=a(5124),r=a(67576),s=a(22786),n=a(1087),l=a(74705),d=a(78649),h=a(53756),c=a(95350),p=a(24367),u=a(19711),g=(a(75064),a(38508)),v=(a(47680),a(67094),a(74281)),f=t([g,v]);[g,v]=f.then?(await f)():f;let m,b,y,_,w,x,k,C,$,M,E,T,A,O,S,Z=t=>t;const z="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z",j="M11,13.5V21.5H3V13.5H11M12,2L17.5,11H6.5L12,2M17.5,13C20,13 22,15 22,17.5C22,20 20,22 17.5,22C15,22 13,20 13,17.5C13,15 15,13 17.5,13Z",H="___create-new-entity___";class I extends o.WF{willUpdate(t){var e;this._pendingEntityId&&t.has("hass")&&this.hass.states!==(null===(e=t.get("hass"))||void 0===e?void 0:e.states)&&this.hass.states[this._pendingEntityId]&&(this._setValue(this._pendingEntityId),this._pendingEntityId=void 0)}firstUpdated(t){super.firstUpdated(t),this.hass.loadBackendTranslation("title")}_findExtraOption(t){var e;return t?null===(e=this.extraOptions)||void 0===e?void 0:e.find(e=>e.id===t):void 0}_renderExtraOptionStart(t){const e=t.entity_id?this.hass.states[t.entity_id]:void 0;return e?(0,o.qy)(m||(m=Z` <state-badge slot="start" .stateObj="${0}" .hass="${0}"></state-badge> `),e,this.hass):t.icon_path?(0,o.qy)(b||(b=Z` <ha-svg-icon slot="start" .path="${0}" style="margin:0 4px"></ha-svg-icon> `),t.icon_path):t.icon?(0,o.qy)(y||(y=Z`<ha-icon slot="start" .icon="${0}"></ha-icon>`),t.icon):o.s6}get _showEntityId(){var t;return this.showEntityId||(null===(t=this.hass.userData)||void 0===t?void 0:t.showEntityIdPicker)}_shouldHideClearIcon(){var t;return!(null===(t=this._findExtraOption(this.value))||void 0===t||!t.hide_clear)}render(){var t,e;const a=null!==(t=this.placeholder)&&void 0!==t?t:this.hass.localize("ui.components.entity.entity-picker.placeholder");return(0,o.qy)(_||(_=Z` <ha-generic-picker .hass="${0}" .disabled="${0}" .autofocus="${0}" .allowCustomValue="${0}" .required="${0}" .label="${0}" .placeholder="${0}" .helper="${0}" .value="${0}" .searchLabel="${0}" .notFoundLabel="${0}" .rowRenderer="${0}" .getItems="${0}" .getAdditionalItems="${0}" .hideClearIcon="${0}" .searchFn="${0}" .valueRenderer="${0}" .searchKeys="${0}" use-top-label .addButtonLabel="${0}" .unknownItemText="${0}" @value-changed="${0}"> </ha-generic-picker> `),this.hass,this.disabled,this.autofocus,this.allowCustomEntity,this.required,this.label,a,this.helper,this.addButton?void 0:this.value,this.searchLabel,this._notFoundLabel,this._rowRenderer,this._getItems,this._getAdditionalItems,this.hideClearIcon||this._shouldHideClearIcon(),this._searchFn,this._valueRenderer,h.t,this.addButton?null!==(e=this.addButtonLabel)&&void 0!==e?e:this.hass.localize("ui.components.entity.entity-picker.add"):void 0,this.hass.localize("ui.components.entity.entity-picker.unknown"),this._valueChanged)}async open(){var t;await this.updateComplete,await(null===(t=this._picker)||void 0===t?void 0:t.open())}_valueChanged(t){t.stopPropagation();const e=t.detail.value;if(e){if(e.startsWith(H)){const t=e.substring(H.length);return void(0,u.$)(this,{domain:t,dialogClosedCallback:t=>{t.entityId&&(this.hass.states[t.entityId]?this._setValue(t.entityId):this._pendingEntityId=t.entityId)}})}((0,d.n)(e)||this._findExtraOption(e))&&this._setValue(e)}else this._setValue(void 0)}_setValue(t){this.value=t,(0,n.r)(this,"value-changed",{value:t}),(0,n.r)(this,"change")}constructor(...t){super(...t),this.autofocus=!1,this.disabled=!1,this.required=!1,this.showEntityId=!1,this.hideClearIcon=!1,this.addButton=!1,this._valueRenderer=t=>{const e=t||"",a=this._findExtraOption(e);if(a)return(0,o.qy)(w||(w=Z` ${0} <span slot="headline">${0}</span> ${0} `),this._renderExtraOptionStart(a),a.primary,a.secondary?(0,o.qy)(x||(x=Z`<span slot="supporting-text">${0}</span>`),a.secondary):o.s6);const i=this.hass.states[e];if(!i)return(0,o.qy)(k||(k=Z` <ha-svg-icon slot="start" .path="${0}" style="margin:0 4px"></ha-svg-icon> <span slot="headline">${0}</span> `),j,e);const{primary:r,secondary:s}=(0,l.Bj)(this.hass,i);return(0,o.qy)(C||(C=Z` <state-badge .hass="${0}" .stateObj="${0}" slot="start"></state-badge> <span slot="headline">${0}</span> <span slot="supporting-text">${0}</span> `),this.hass,i,r,s)},this._rowRenderer=(t,e)=>{const a=this._showEntityId;return(0,o.qy)($||($=Z` <ha-combo-box-item type="button" compact="compact" .borderTop="${0}"> ${0} <span slot="headline">${0}</span> ${0} ${0} ${0} </ha-combo-box-item> `),0!==e,t.icon_path?(0,o.qy)(M||(M=Z` <ha-svg-icon slot="start" style="margin:0 4px" .path="${0}"></ha-svg-icon> `),t.icon_path):(0,o.qy)(E||(E=Z` <state-badge slot="start" .stateObj="${0}" .hass="${0}"></state-badge> `),t.stateObj,this.hass),t.primary,t.secondary?(0,o.qy)(T||(T=Z`<span slot="supporting-text">${0}</span>`),t.secondary):o.s6,t.stateObj&&a?(0,o.qy)(A||(A=Z` <span slot="supporting-text" class="code"> ${0} </span> `),t.stateObj.entity_id):o.s6,t.domain_name&&!a?(0,o.qy)(O||(O=Z` <div slot="trailing-supporting-text" class="domain"> ${0} </div> `),t.domain_name):o.s6)},this._getAdditionalItems=()=>this._getCreateItems(this.hass.localize,this.createDomains),this._getCreateItems=(0,s.A)((t,e)=>null!=e&&e.length?(this.hass.loadFragmentTranslation("config"),e.map(e=>{const a=t("ui.components.entity.entity-picker.create_helper",{domain:(0,p.z)(e)?t(`ui.panel.config.helpers.types.${e}`)||e:(0,c.p$)(t,e)});return{id:H+e,primary:a,secondary:t("ui.components.entity.entity-picker.new_entity"),icon_path:z}})):[]),this._getEntitiesMemoized=(0,s.A)(h.w),this._getItems=()=>{var t;const e=this._getEntitiesMemoized(this.hass,this.includeDomains,this.excludeDomains,this.entityFilter,this.includeDeviceClasses,this.includeUnitOfMeasurement,this.includeEntities,this.excludeEntities,this.value);if(null!==(t=this.extraOptions)&&void 0!==t&&t.length){return[...this.extraOptions.map(t=>Object.assign(Object.assign({},t),{},{stateObj:t.entity_id?this.hass.states[t.entity_id]:void 0})),...e]}return e},this._searchFn=(t,e)=>{const a=e.findIndex(e=>{var a;return(null===(a=e.stateObj)||void 0===a?void 0:a.entity_id)===t});if(-1===a)return e;const[i]=e.splice(a,1);return e.unshift(i),e},this._notFoundLabel=t=>this.hass.localize("ui.components.entity.entity-picker.no_match",{term:(0,o.qy)(S||(S=Z`<b>‘${0}’</b>`),t)})}}(0,i.Cg)([(0,r.MZ)({attribute:!1})],I.prototype,"hass",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean})],I.prototype,"autofocus",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean})],I.prototype,"disabled",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean})],I.prototype,"required",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean,attribute:"allow-custom-entity"})],I.prototype,"allowCustomEntity",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean,attribute:"show-entity-id"})],I.prototype,"showEntityId",void 0),(0,i.Cg)([(0,r.MZ)()],I.prototype,"label",void 0),(0,i.Cg)([(0,r.MZ)()],I.prototype,"value",void 0),(0,i.Cg)([(0,r.MZ)()],I.prototype,"helper",void 0),(0,i.Cg)([(0,r.MZ)()],I.prototype,"placeholder",void 0),(0,i.Cg)([(0,r.MZ)({type:String,attribute:"search-label"})],I.prototype,"searchLabel",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],I.prototype,"createDomains",void 0),(0,i.Cg)([(0,r.MZ)({type:Array,attribute:"include-domains"})],I.prototype,"includeDomains",void 0),(0,i.Cg)([(0,r.MZ)({type:Array,attribute:"exclude-domains"})],I.prototype,"excludeDomains",void 0),(0,i.Cg)([(0,r.MZ)({type:Array,attribute:"include-device-classes"})],I.prototype,"includeDeviceClasses",void 0),(0,i.Cg)([(0,r.MZ)({type:Array,attribute:"include-unit-of-measurement"})],I.prototype,"includeUnitOfMeasurement",void 0),(0,i.Cg)([(0,r.MZ)({type:Array,attribute:"include-entities"})],I.prototype,"includeEntities",void 0),(0,i.Cg)([(0,r.MZ)({type:Array,attribute:"exclude-entities"})],I.prototype,"excludeEntities",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],I.prototype,"entityFilter",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],I.prototype,"extraOptions",void 0),(0,i.Cg)([(0,r.MZ)({attribute:"hide-clear-icon",type:Boolean})],I.prototype,"hideClearIcon",void 0),(0,i.Cg)([(0,r.MZ)({attribute:"add-button",type:Boolean})],I.prototype,"addButton",void 0),(0,i.Cg)([(0,r.MZ)({attribute:"add-button-label"})],I.prototype,"addButtonLabel",void 0),(0,i.Cg)([(0,r.P)("ha-generic-picker")],I.prototype,"_picker",void 0),(0,i.Cg)([(0,r.wk)()],I.prototype,"_pendingEntityId",void 0),I=(0,i.Cg)([(0,r.EM)("ha-entity-picker")],I),e()}catch(m){e(m)}})},74281:function(t,e,a){a.a(t,async function(t,e){try{a(18111),a(7588),a(45367),a(92731),a(62953);var i=a(40445),o=a(5124),r=a(67576),s=a(63672),n=a(89784),l=a(71727),d=a(69093),h=a(52658),c=a(34470),p=a(10897),u=a(38279),g=a(93367),v=t([g]);g=(v.then?(await v)():v)[0];let f,m,b,y=t=>t;const _="M13 14H11V9H13M13 18H11V16H13M1 21H23L12 2L1 21Z";class w extends o.WF{connectedCallback(){var t,e;super.connectedCallback(),this.hasUpdated&&void 0===this.overrideImage&&(null!==(t=this.stateObj)&&void 0!==t&&t.attributes.entity_picture||null!==(e=this.stateObj)&&void 0!==e&&e.attributes.entity_picture_local)&&this.requestUpdate("stateObj")}disconnectedCallback(){var t,e;super.disconnectedCallback(),void 0===this.overrideImage&&(null!==(t=this.stateObj)&&void 0!==t&&t.attributes.entity_picture||null!==(e=this.stateObj)&&void 0!==e&&e.attributes.entity_picture_local)&&(this.style.backgroundImage="")}get _stateColor(){var t;const e=this.stateObj?(0,d.t)(this.stateObj):void 0;return null!==(t=this.stateColor)&&void 0!==t?t:"light"===e}render(){const t=this.stateObj;if(!t&&!this.overrideIcon&&!this.overrideImage)return(0,o.qy)(f||(f=y`<div class="missing"> <ha-svg-icon .path="${0}"></ha-svg-icon> </div>`),_);const e=this.getClass();if(e&&e.forEach((t,e)=>{t?this.classList.add(e):this.classList.remove(e)}),!this.icon)return o.s6;const a=t?(0,d.t)(t):void 0;return(0,o.qy)(m||(m=y`<ha-state-icon style="${0}" data-domain="${0}" data-state="${0}" .icon="${0}" .stateObj="${0}"></ha-state-icon>`),(0,n.W)(this._iconStyle),(0,s.J)(a),(0,s.J)(null==t?void 0:t.state),this.overrideIcon,t)}willUpdate(t){if(super.willUpdate(t),!(t.has("stateObj")||t.has("overrideImage")||t.has("overrideIcon")||t.has("stateColor")||t.has("color")))return;const e=this.stateObj,a={};let i="";if(this.icon=!0,e){const t=(0,l.m)(e.entity_id);if(void 0===this.overrideImage)if(!e.attributes.entity_picture_local&&!e.attributes.entity_picture||this.overrideIcon){if(this.color)a.color=this.color;else if(this._stateColor){const t=(0,h.Se)(e);if(t&&(a.color=t),e.attributes.rgb_color&&(a.color=`rgb(${e.attributes.rgb_color.join(",")})`),e.attributes.brightness){const t=e.attributes.brightness;if("number"!=typeof t){const a=`Type error: state-badge expected number, but type of ${e.entity_id}.attributes.brightness is ${typeof t} (${t})`;console.warn(a)}a.filter=(0,h.mT)(e)}if(e.attributes.hvac_action){const t=e.attributes.hvac_action;t in u.sx?a.color=(0,h.Se)(e,u.sx[t]):delete a.color}}}else{let a=e.attributes.entity_picture_local||e.attributes.entity_picture;this.hass&&(a=this.hass.hassUrl(a)),"camera"===t&&(a=(0,p.su)(a,80,80)),i=`url(${a})`,this.icon=!1}else if(this.overrideImage){let t=this.overrideImage;this.hass&&(t=this.hass.hassUrl(t)),i=`url(${t})`,this.icon=!1}}this._iconStyle=a,this.style.backgroundImage=i}getClass(){const t=new Map(["has-no-radius","has-media-image","has-image"].map(t=>[t,!1]));if(this.stateObj){const e=(0,l.m)(this.stateObj.entity_id);"update"===e?t.set("has-no-radius",!0):"media_player"===e||"camera"===e?t.set("has-media-image",!0):""!==this.style.backgroundImage&&t.set("has-image",!0)}return t}static get styles(){return[c.E,(0,o.AH)(b||(b=y`:host{position:relative;display:inline-flex;width:40px;color:var(--state-icon-color);border-radius:var(--state-badge-border-radius,50%);height:40px;background-size:cover;box-sizing:border-box;--state-inactive-color:initial;align-items:center;justify-content:center}:host(.has-image){border-radius:var(--state-badge-with-image-border-radius,50%)}:host(.has-media-image){border-radius:var(--state-badge-with-media-image-border-radius,8%)}:host(.has-no-radius){border-radius:var(--ha-border-radius-square)}:host(:focus){outline:0}:host(:not([icon]):focus){border:2px solid var(--divider-color)}:host([icon]:focus){background:var(--divider-color)}ha-state-icon{transition:color .3s ease-in-out,filter .3s ease-in-out}.missing{color:#fce588}`))]}constructor(...t){super(...t),this.icon=!0,this._iconStyle={}}}(0,i.Cg)([(0,r.MZ)({attribute:!1})],w.prototype,"stateObj",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],w.prototype,"overrideIcon",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],w.prototype,"overrideImage",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],w.prototype,"stateColor",void 0),(0,i.Cg)([(0,r.MZ)()],w.prototype,"color",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],w.prototype,"icon",void 0),(0,i.Cg)([(0,r.wk)()],w.prototype,"_iconStyle",void 0),w=(0,i.Cg)([(0,r.EM)("state-badge")],w),e()}catch(f){e(f)}})},99611:function(t,e,a){a.a(t,async function(t,e){try{a(18111),a(13579),a(3362),a(17642),a(58004),a(33853),a(45876),a(32475),a(15024),a(31698),a(62953);var i=a(40445),o=a(1126),r=a(35211),s=a(5124),n=a(67576),l=a(1087),d=a(60353),h=a(22792),c=a(59992),p=a(14503),u=a(22348),g=t([o,c]);[o,c]=g.then?(await g)():g;let v,f,m=t=>t;const b=300,y=new Set(["ha-control-slider","ha-slider","ha-control-switch","ha-control-circular-slider","ha-hs-color-picker","ha-map","ha-more-info-control-select-container","ha-filter-chip"]),_=new Set(["volume-slider-container","forecast"]);class w extends((0,c.V)(s.WF)){get scrollableElement(){return this._bodyElement}connectedCallback(){super.connectedCallback(),this.addEventListener("slider-interaction-start",this._handleSliderInteractionStart,{capture:!0}),this.addEventListener("slider-interaction-stop",this._handleSliderInteractionStop,{capture:!0})}updated(t){super.updated(t),t.has("open")&&(this._drawerOpen=this.open)}render(){return(0,s.qy)(v||(v=m` <wa-drawer id="drawer" placement="bottom" .open="${0}" .lightDismiss="${0}" .ariaLabelledby="${0}" .ariaDescribedby="${0}" @keydown="${0}" @wa-show="${0}" @wa-after-show="${0}" @wa-hide="${0}" @wa-after-hide="${0}" @click="${0}" without-header @touchstart="${0}"> <div class="handle-wrapper" aria-hidden="true"> <div class="handle"></div> </div> <slot name="header"></slot> <div class="content-wrapper"> <div id="body" class="body ha-scrollbar"> <slot></slot> </div> ${0} </div> <slot name="footer"></slot> </wa-drawer> `),this._drawerOpen,!this.preventScrimClose,this.ariaLabelledBy,this.ariaDescribedBy,this._handleKeyDown,this._handleShow,this._handleAfterShow,this._handleHide,this._handleAfterHide,this._handleCloseAction,this._handleTouchStart,this.renderScrollableFades())}_startResizing(t){document.addEventListener("touchmove",this._handleTouchMove,{passive:!1}),document.addEventListener("touchend",this._handleTouchEnd),document.addEventListener("touchcancel",this._handleTouchEnd),this._gestureRecognizer.start(t)}_animateSnapBack(){this.style.setProperty("--dialog-transition",`transform ${b}ms ease-out`),this.style.removeProperty("--dialog-transform"),setTimeout(()=>{this.style.removeProperty("--dialog-transition")},b)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("slider-interaction-start",this._handleSliderInteractionStart,{capture:!0}),this.removeEventListener("slider-interaction-stop",this._handleSliderInteractionStop,{capture:!0}),this._unregisterResizeHandlers(),this._isDragging=!1}static get styles(){return[...super.styles,p.dp,(0,s.AH)(f||(f=m`wa-drawer{--wa-color-surface-raised:transparent;--spacing:0;--size:var(--ha-bottom-sheet-height, auto);--show-duration:${0}ms;--hide-duration:${0}ms}wa-drawer::part(dialog){max-height:min(var(--ha-bottom-sheet-max-height,90vh),calc(100vh - max(var(--safe-area-inset-top),48px)));max-height:min(var(--ha-bottom-sheet-max-height,90dvh),calc(100dvh - max(var(--safe-area-inset-top),48px)));align-items:center;transform:var(--dialog-transform);transition:var(--dialog-transition)}@media (prefers-reduced-motion:reduce){wa-drawer{--wa-color-surface-raised:transparent;--spacing:0;--size:var(--ha-bottom-sheet-height, auto);--show-duration:1ms;--hide-duration:1ms}wa-drawer::part(dialog){transition:1ms}}wa-drawer::part(dialog)::backdrop{-webkit-backdrop-filter:var(--ha-bottom-sheet-scrim-backdrop-filter,var(--ha-dialog-scrim-backdrop-filter,var(--dialog-backdrop-filter,none)));backdrop-filter:var(--ha-bottom-sheet-scrim-backdrop-filter,var(--ha-dialog-scrim-backdrop-filter,var(--dialog-backdrop-filter,none)));background-color:var(--ha-bottom-sheet-scrim-color,var(--mdc-dialog-scrim-color,none))}wa-drawer::part(body){max-width:var(--ha-bottom-sheet-max-width);width:100%;position:relative;border-top-left-radius:var(--ha-bottom-sheet-border-radius,var(--ha-dialog-border-radius,var(--ha-border-radius-2xl)));border-top-right-radius:var(--ha-bottom-sheet-border-radius,var(--ha-dialog-border-radius,var(--ha-border-radius-2xl)));background-color:var(--ha-bottom-sheet-surface-background,var(--ha-dialog-surface-background,var(--card-background-color,var(--ha-color-surface-default))));-webkit-backdrop-filter:var(--ha-bottom-sheet-surface-backdrop-filter,var(--ha-dialog-surface-backdrop-filter,none));backdrop-filter:var(--ha-bottom-sheet-surface-backdrop-filter,var(--ha-dialog-surface-backdrop-filter,none));padding:var(--ha-bottom-sheet-padding,0 var(--safe-area-inset-right) var(--safe-area-inset-bottom) var(--safe-area-inset-left))}:host([flexcontent]) wa-drawer::part(body){display:flex;flex-direction:column}:host([prevent-scrim-close]) .handle-wrapper{display:none}.handle-wrapper{position:absolute;top:0;inset-inline-start:0;width:100%;padding-bottom:2px;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:1}.handle-wrapper .handle{height:16px;width:200px;display:flex;justify-content:center;align-items:center}.handle-wrapper .handle::after{content:"";border-radius:var(--ha-border-radius-md);height:4px;background:var(--ha-bottom-sheet-handle-color,var(--divider-color));width:40px}.content-wrapper{position:relative;flex:1;display:flex;flex-direction:column;min-height:0}.body{padding:var(--ha-bottom-sheet-content-padding,0);box-sizing:border-box}:host([flexcontent]) .body{flex:1;max-width:100%;display:flex;flex-direction:column;padding:var(--ha-bottom-sheet-content-padding,var(--ha-bottom-sheet-padding,0 var(--safe-area-inset-right) var(--safe-area-inset-bottom) var(--safe-area-inset-left)));box-sizing:border-box}slot[name=footer]{display:block;padding:0}::slotted([slot=footer]){display:flex;padding:var(--ha-space-3) var(--ha-space-4) var(--ha-space-4) var(--ha-space-4);gap:var(--ha-space-3);justify-content:flex-end;align-items:center;width:100%;box-sizing:border-box}:host([flexcontent]) slot[name=footer]{flex-shrink:0}`),b,b)]}constructor(...t){super(...t),this.open=!1,this.flexContent=!1,this.preventScrimClose=!1,this._drawerOpen=!1,this._sliderInteractionActive=!1,this._gestureRecognizer=new d.u,this._isDragging=!1,this._escapePressed=!1,this._handleShow=async()=>{this._drawerOpen=!0,this.open=!0,(0,l.r)(this,"opened"),await this.updateComplete,requestAnimationFrame(()=>{var t;const e=this._autofocusElement;null!==(t=this._hassConfig)&&void 0!==t&&t.auth.external&&(0,u.V)(this._hassConfig.auth.external)?e&&(e.id||(e.id="ha-bottom-sheet-autofocus"),this._hassConfig.auth.external.fireMessage({type:"focus_element",payload:{element_id:e.id}})):null==e||e.focus()})},this._handleAfterShow=()=>{(0,l.r)(this,"after-show")},this._handleSliderInteractionStart=()=>{this._sliderInteractionActive=!0},this._handleSliderInteractionStop=()=>{this._sliderInteractionActive=!1},this._handleAfterHide=t=>{if(this._sliderInteractionActive)return this._drawerOpen=!0,void(this.open=!0);t.eventPhase===Event.AT_TARGET&&(this.open=!1,this._drawerOpen=!1,(0,l.r)(this,"closed"))},this._handleHide=t=>{if(t.eventPhase!==Event.AT_TARGET)return;const e=t.detail.source===t.target.drawer;if(this._sliderInteractionActive)return t.preventDefault(),this._drawerOpen=!0,this.open=!0,void(this._escapePressed=!1);this.preventScrimClose&&this._escapePressed&&e&&t.preventDefault(),this._escapePressed=!1},this._handleKeyDown=t=>{"Escape"===t.key&&(this._escapePressed=!0,this.preventScrimClose&&t.preventDefault(),t.stopPropagation(),t.currentTarget.open=!1)},this._handleCloseAction=t=>{t.composedPath().some(t=>t instanceof HTMLElement&&("close"===t.getAttribute("data-dialog")||"close"===t.getAttribute("data-drawer")))&&(this._drawerOpen=!1)},this._handleTouchStart=t=>{if(this.preventScrimClose)return;const e=t.composedPath();for(const a of e){if(a===this._drawer)break;if(a instanceof HTMLElement&&(a.scrollTop>0||y.has(a.localName)||Array.from(a.classList).some(t=>_.has(t))))return}t.stopPropagation(),this._startResizing(t.touches[0].clientY)},this._handleTouchMove=t=>{const e=t.touches[0].clientY,a=this._gestureRecognizer.move(e);a<0&&(t.preventDefault(),this._isDragging=!0,requestAnimationFrame(()=>{this._isDragging&&this.style.setProperty("--dialog-transform",`translateY(${-1*a}px)`)}))},this._handleTouchEnd=()=>{var t;this._unregisterResizeHandlers(),this._isDragging=!1;const e=this._gestureRecognizer.end();if(e.isSwipe)return void(e.isDownwardSwipe?this._drawerOpen=!1:this._animateSnapBack());const a=null===(t=this._drawer.shadowRoot)||void 0===t?void 0:t.querySelector('[part="body"]'),i=(null==a?void 0:a.offsetHeight)||0;i>0&&e.delta<0&&Math.abs(e.delta)>.5*i?this._drawerOpen=!1:this._animateSnapBack()},this._unregisterResizeHandlers=()=>{document.removeEventListener("touchmove",this._handleTouchMove),document.removeEventListener("touchend",this._handleTouchEnd),document.removeEventListener("touchcancel",this._handleTouchEnd)}}}(0,i.Cg)([(0,n.MZ)({attribute:"aria-labelledby"})],w.prototype,"ariaLabelledBy",void 0),(0,i.Cg)([(0,n.MZ)({attribute:"aria-describedby"})],w.prototype,"ariaDescribedBy",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean})],w.prototype,"open",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean,reflect:!0,attribute:"flexcontent"})],w.prototype,"flexContent",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean,reflect:!0,attribute:"prevent-scrim-close"})],w.prototype,"preventScrimClose",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_drawerOpen",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_sliderInteractionActive",void 0),(0,i.Cg)([(0,n.wk)(),(0,r.Fg)({context:h.WF,subscribe:!0})],w.prototype,"_hassConfig",void 0),(0,i.Cg)([(0,n.P)("#drawer")],w.prototype,"_drawer",void 0),(0,i.Cg)([(0,n.P)("#body")],w.prototype,"_bodyElement",void 0),(0,i.Cg)([(0,n.P)("[autofocus]")],w.prototype,"_autofocusElement",void 0),w=(0,i.Cg)([(0,n.EM)("ha-bottom-sheet")],w),e()}catch(v){e(v)}})},76776:function(t,e,a){a(62953);var i=a(40445),o=a(5124),r=a(67576);let s,n,l,d=t=>t;class h extends o.WF{render(){return(0,o.qy)(s||(s=d` ${0} <slot></slot> `),this.header?(0,o.qy)(n||(n=d`<h1 class="card-header">${0}</h1>`),this.header):o.s6)}constructor(...t){super(...t),this.raised=!1}}h.styles=(0,o.AH)(l||(l=d`: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,i.Cg)([(0,r.MZ)()],h.prototype,"header",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],h.prototype,"raised",void 0),h=(0,i.Cg)([(0,r.EM)("ha-card")],h)},90248:function(t,e,a){a.a(t,async function(t,i){try{a.r(e),a.d(e,{HaIconButtonArrowPrev:function(){return g}});a(62953);var o=a(40445),r=a(5124),s=a(67576),n=a(63091),l=a(26300),d=t([l]);l=(d.then?(await d)():d)[0];let h,c=t=>t;const p="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z",u="M4,11V13H16L10.5,18.5L11.92,19.92L19.84,12L11.92,4.08L10.5,5.5L16,11H4Z";class g extends r.WF{render(){var t;return(0,r.qy)(h||(h=c` <ha-icon-button .disabled="${0}" .label="${0}" .path="${0}" .href="${0}" .target="${0}" .rel="${0}" .download="${0}"></ha-icon-button> `),this.disabled,this.label||(null===(t=this.hass)||void 0===t?void 0:t.localize("ui.common.back"))||"Back",this._icon,this.href,this.target,this.rel,this.download)}constructor(...t){super(...t),this.disabled=!1,this._icon="rtl"===n.G.document.dir?u:p}}(0,o.Cg)([(0,s.MZ)({attribute:!1})],g.prototype,"hass",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean})],g.prototype,"disabled",void 0),(0,o.Cg)([(0,s.MZ)()],g.prototype,"label",void 0),(0,o.Cg)([(0,s.MZ)()],g.prototype,"href",void 0),(0,o.Cg)([(0,s.MZ)()],g.prototype,"target",void 0),(0,o.Cg)([(0,s.MZ)()],g.prototype,"rel",void 0),(0,o.Cg)([(0,s.MZ)()],g.prototype,"download",void 0),(0,o.Cg)([(0,s.wk)()],g.prototype,"_icon",void 0),g=(0,o.Cg)([(0,s.EM)("ha-icon-button-arrow-prev")],g),i()}catch(h){i(h)}})},26300:function(t,e,a){a.a(t,async function(t,i){try{a.r(e),a.d(e,{HaIconButton:function(){return v}});a(62953);var o=a(40445),r=a(5124),s=a(67576),n=a(63672),l=a(18350),d=(a(67094),t([l]));l=(d.then?(await d)():d)[0];let h,c,p,u,g=t=>t;class v extends r.WF{render(){return(0,r.qy)(h||(h=g` <ha-button appearance="plain" variant="neutral" aria-label="${0}" title="${0}" aria-haspopup="${0}" .disabled="${0}" .iconTag="${0}" .href="${0}" .target="${0}" .rel="${0}" .download="${0}"> ${0} </ha-button> `),(0,n.J)(this.label),(0,n.J)(this.hideTitle?void 0:this.label),(0,n.J)(this.ariaHasPopup),this.disabled,this.path?"ha-svg-icon":"span",this.href,this.target,this.rel,this.download,this.path?(0,r.qy)(c||(c=g`<ha-svg-icon aria-hidden="true" .path="${0}"></ha-svg-icon>`),this.path):(0,r.qy)(p||(p=g`<span><slot></slot></span>`)))}constructor(...t){super(...t),this.disabled=!1,this.hideTitle=!1,this.selected=!1}}v.shadowRootOptions={mode:"open",delegatesFocus:!0},v.styles=(0,r.AH)(u||(u=g`: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}@media (hover:hover){:host(:hover:not([disabled])) ha-button::after{opacity:.1}}`)),(0,o.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],v.prototype,"disabled",void 0),(0,o.Cg)([(0,s.MZ)({type:String})],v.prototype,"path",void 0),(0,o.Cg)([(0,s.MZ)({type:String})],v.prototype,"label",void 0),(0,o.Cg)([(0,s.MZ)({type:String,attribute:"aria-haspopup"})],v.prototype,"ariaHasPopup",void 0),(0,o.Cg)([(0,s.MZ)({attribute:"hide-title",type:Boolean})],v.prototype,"hideTitle",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],v.prototype,"selected",void 0),(0,o.Cg)([(0,s.MZ)()],v.prototype,"href",void 0),(0,o.Cg)([(0,s.MZ)()],v.prototype,"target",void 0),(0,o.Cg)([(0,s.MZ)()],v.prototype,"rel",void 0),(0,o.Cg)([(0,s.MZ)()],v.prototype,"download",void 0),v=(0,o.Cg)([(0,s.EM)("ha-icon-button")],v),i()}catch(h){i(h)}})},2054:function(t,e,a){a.a(t,async function(t,e){try{a(16280),a(62953);var i=a(40445),o=a(5124),r=a(67576),s=a(1087),n=a(44249),l=a(26300),d=t([l]);l=(d.then?(await d)():d)[0];let h,c,p,u=t=>t;const g="M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z";class v extends o.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 o.s6;const t=this._hasNotifications&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);return(0,o.qy)(h||(h=u` <ha-icon-button .label="${0}" .path="${0}" @click="${0}"></ha-icon-button> ${0} `),this.hass.localize("ui.sidebar.sidebar_toggle"),g,this._toggleMenu,t?(0,o.qy)(c||(c=u`<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,i=!1===(null==e?void 0:e.kioskMode)&&(a||"always_hidden"===(null==e?void 0:e.dockedSidebar)),o=!1===this.hass.kioskMode&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);this.hasUpdated&&i===o||(this._show=o||this._alwaysVisible,o?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}}v.styles=(0,o.AH)(p||(p=u`: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,i.Cg)([(0,r.MZ)({type:Boolean})],v.prototype,"narrow",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],v.prototype,"hass",void 0),(0,i.Cg)([(0,r.wk)()],v.prototype,"_hasNotifications",void 0),(0,i.Cg)([(0,r.wk)()],v.prototype,"_show",void 0),v=(0,i.Cg)([(0,r.EM)("ha-menu-button")],v),e()}catch(h){e(h)}})},54276:function(t,e,a){a(62953);var i=a(40445),o=a(76482),r=a(91382),s=a(96245),n=a(5124),l=a(67576);let d;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){null==t||t.removeEventListener("touchend",this._handleTouchEnd),null==e||e.addEventListener("touchend",this._handleTouchEnd)}constructor(...t){super(...t),this.attachableTouchController=new o.i(this,this._onTouchControlChange.bind(this)),this._handleTouchEnd=()=>{this.disabled||super.endPressAnimation()}}}h.styles=[s.R,(0,n.AH)(d||(d=(t=>t)`: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,i.Cg)([(0,l.EM)("ha-ripple")],h)},8034:function(t,e,a){a(27495),a(62953);var i=a(40445),o=a(92070),r=a(5124),s=a(67576);let n,l,d,h=t=>t;class c extends r.WF{render(){const t=this._hasSlotController.test("description");return(0,r.qy)(n||(n=h` <div class="prefix-wrap"> <slot name="prefix"></slot> <div class="body" part="heading" ?two-line="${0}" ?three-line="${0}"> <slot name="heading"></slot> ${0} </div> </div> <div class="content"> <slot></slot> </div> `),!this.threeLine&&t,this.threeLine,t?(0,r.qy)(l||(l=h`<span class="secondary"><slot name="description"></slot></span>`)):r.s6)}constructor(...t){super(...t),this.narrow=!1,this.slim=!1,this.threeLine=!1,this.wrapHeading=!1,this.empty=!1,this._hasSlotController=new o.X(this,"description")}}c.styles=(0,r.AH)(d||(d=h`:host{display:flex;padding:0 var(--ha-space-4);align-content:normal;align-self:auto;align-items:center}.body{padding-top:var(--settings-row-body-padding-top,var(--ha-space-2));padding-bottom:var(--settings-row-body-padding-bottom,var(--ha-space-2));padding-left:0;padding-inline-start:0;padding-right:var(--ha-space-4);padding-inline-end:var(--ha-space-4);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:88px}:host(:not([wrap-heading])) body>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.body>.secondary{display:block;padding-top:var(--ha-space-1);font-family:var(
        --mdc-typography-body2-font-family,
        var(--mdc-typography-font-family, var(--ha-font-family-body))
      );font-size:var(--mdc-typography-body2-font-size, var(--ha-font-size-s));-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-weight:var(--mdc-typography-body2-font-weight,var(--ha-font-weight-normal));line-height:normal;color:var(--secondary-text-color)}.body[two-line]{min-height:calc(72px - 16px);flex:1}.content{display:contents}:host(:not([narrow])) .content{display:var(--settings-row-content-display,flex);justify-content:flex-end;flex:1;min-width:0;padding:var(--settings-row-content-padding-block,var(--ha-space-4)) 0}:host([empty]) .content{display:none}.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:var(--ha-space-2)}::slotted(ha-switch){padding:var(--settings-row-switch-padding-block,var(--ha-space-4)) 0}.secondary{white-space:normal}.prefix-wrap{flex:var(--settings-row-prefix-flex,1);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}`)),(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],c.prototype,"narrow",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],c.prototype,"slim",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,attribute:"three-line"})],c.prototype,"threeLine",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,attribute:"wrap-heading",reflect:!0})],c.prototype,"wrapHeading",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],c.prototype,"empty",void 0),c=(0,i.Cg)([(0,s.EM)("ha-settings-row")],c)},67094:function(t,e,a){a.r(e),a.d(e,{HaSvgIcon:function(){return c}});var i=a(40445),o=a(5124),r=a(67576);let s,n,l,d,h=t=>t;class c extends o.WF{render(){return(0,o.JW)(s||(s=h` <svg viewBox="${0}" preserveAspectRatio="xMidYMid meet" focusable="false" role="img" aria-hidden="true"> <g> ${0} ${0} </g> </svg>`),this.viewBox||"0 0 24 24",this.path?(0,o.JW)(n||(n=h`<path class="primary-path" d="${0}"></path>`),this.path):o.s6,this.secondaryPath?(0,o.JW)(l||(l=h`<path class="secondary-path" d="${0}"></path>`),this.secondaryPath):o.s6)}}c.styles=(0,o.AH)(d||(d=h`: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,i.Cg)([(0,r.MZ)()],c.prototype,"path",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],c.prototype,"secondaryPath",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],c.prototype,"viewBox",void 0),c=(0,i.Cg)([(0,r.EM)("ha-svg-icon")],c)},34127:function(t,e,a){a.a(t,async function(t,e){try{a(62953);var i=a(40445),o=a(52630),r=a(5124),s=a(67576),n=t([o]);o=(n.then?(await n)():n)[0];let l,d=t=>t;class h extends o.A{static get styles(){return[o.A.styles,(0,r.AH)(l||(l=d`:host{--wa-tooltip-background-color:var(
            --ha-tooltip-background-color,
            var(--ha-color-surface-default)
          );--wa-tooltip-content-color:var(
            --ha-tooltip-text-color,
            var(--primary-text-color)
          );--wa-tooltip-font-family:var(
            --ha-tooltip-font-family,
            var(--ha-font-family-body)
          );--wa-tooltip-font-size:var(
            --ha-tooltip-font-size,
            var(--ha-font-size-m)
          );--wa-tooltip-font-weight:var(
            --ha-tooltip-font-weight,
            var(--ha-font-weight-medium)
          );--wa-tooltip-line-height:var(
            --ha-tooltip-line-height,
            var(--ha-line-height-condensed)
          );--wa-tooltip-padding:var(--ha-tooltip-padding, var(--ha-space-2));--wa-tooltip-border-radius:var(
            --ha-tooltip-border-radius,
            var(--ha-border-radius-md)
          );--wa-tooltip-arrow-size:var(--ha-tooltip-arrow-size, 0px);--wa-tooltip-border-width:0px;--wa-z-index-tooltip:1000}.tooltip::part(popup){animation-duration:var(--ha-tooltip-animation-duration, 0)}.body{box-shadow:var(--ha-tooltip-box-shadow,var(--ha-box-shadow-m))}`))]}constructor(...t){super(...t),this.showDelay=350,this.hideDelay=150}}(0,i.Cg)([(0,s.MZ)({attribute:"show-delay",type:Number})],h.prototype,"showDelay",void 0),(0,i.Cg)([(0,s.MZ)({attribute:"hide-delay",type:Number})],h.prototype,"hideDelay",void 0),h=(0,i.Cg)([(0,s.EM)("ha-tooltip")],h),e()}catch(l){e(l)}})},49142:function(t,e,a){a.d(e,{HU:function(){return r},Pj:function(){return s},sG:function(){return o},xW:function(){return i}});a(3362);var i=function(t){return t[t.GENERATE_DATA=1]="GENERATE_DATA",t[t.SUPPORT_ATTACHMENTS=2]="SUPPORT_ATTACHMENTS",t[t.GENERATE_IMAGE=4]="GENERATE_IMAGE",t}({});const o=t=>t.callWS({type:"ai_task/preferences/get"}),r=(t,e)=>t.callWS(Object.assign({type:"ai_task/preferences/set"},e)),s=async(t,e)=>(await t.callService("ai_task","generate_data",e,void 0,!0,!0)).response},82e3:function(t,e,a){a.d(e,{D5:function(){return i},Fy:function(){return s},Gk:function(){return d},Hg:function(){return o},Y_:function(){return h},ds:function(){return l},e0:function(){return r},ec:function(){return n}});a(74423),a(18111),a(61701),a(33110),a(3362);const i=14881==a.j?`${location.protocol}//${location.host}`:null,o=t=>t.map(t=>{if("string"!==t.type)return t;switch(t.name){case"username":return Object.assign(Object.assign({},t),{},{autocomplete:"username",autofocus:!0});case"password":return Object.assign(Object.assign({},t),{},{autocomplete:"current-password"});case"code":return Object.assign(Object.assign({},t),{},{autocomplete:"one-time-code",autofocus:!0});default:return t}}),r=(t,e)=>t.callWS({type:"auth/sign_path",path:e}),s=async(t,e,a,i)=>t.callWS({type:"config/auth_provider/homeassistant/create",user_id:e,username:a,password:i}),n=(t,e,a)=>t.callWS({type:"config/auth_provider/homeassistant/change_password",current_password:e,new_password:a}),l=(t,e,a)=>t.callWS({type:"config/auth_provider/homeassistant/admin_change_password",user_id:e,password:a}),d=(t,e,a)=>t.callWS({type:"config/auth_provider/homeassistant/admin_change_username",user_id:e,username:a}),h=(t,e,a)=>t.callWS({type:"auth/delete_all_refresh_tokens",token_type:e,delete_current_token:a})},10897:function(t,e,a){a.d(e,{C4:function(){return d},CK:function(){return l},FX:function(){return v},UC:function(){return u},_Z:function(){return y},bT:function(){return _},j4:function(){return m},sd:function(){return r},su:function(){return n},vc:function(){return b},w8:function(){return p},wv:function(){return c},y3:function(){return g},zS:function(){return s}});a(3362);var i=a(3931),o=a(82e3);const r=[1,2,3,4,6,8],s="web_rtc",n=(t,e,a)=>`${t}&width=${e}&height=${a}`,l=t=>t.attributes.access_token?`/api/camera_proxy_stream/${t.entity_id}?token=${t.attributes.access_token}`:void 0,d=async(t,e,a,o)=>{const r=await(0,i.U)("_cameraTmbUrl",9e3,h,t,e);return n(r,a,o)},h=async(t,e)=>{const a=await(0,o.e0)(t,`/api/camera_proxy/${e}`);return t.hassUrl(a.path)},c=async(t,e,a)=>{const i={type:"camera/stream",entity_id:e};a&&(i.format=a);const o=await t.callWS(i);return o.url=t.hassUrl(o.url),o},p=(t,e,a,i)=>t.connection.subscribeMessage(i,{type:"camera/webrtc/offer",entity_id:e,offer:a}),u=(t,e,a,i)=>t.callWS({type:"camera/webrtc/candidate",entity_id:e,session_id:a,candidate:i}),g=(t,e)=>t.callWS({type:"camera/get_prefs",entity_id:e}),v=(t,e,a)=>t.callWS(Object.assign({type:"camera/update_prefs",entity_id:e},a)),f="media-source://camera/",m=t=>t.startsWith(f),b=t=>t.substring(22),y=async(t,e)=>t.callWS({type:"camera/capabilities",entity_id:e}),_=async(t,e)=>t.callWS({type:"camera/webrtc/get_client_config",entity_id:e})},53756:function(t,e,a){a.d(e,{t:function(){return l},w:function(){return d}});a(74423),a(18111),a(22489),a(61701),a(62953);var i=a(71727),o=a(74705),r=a(28978),s=a(15638),n=a(95350);const l=[{name:"search_labels.entityName",weight:10},{name:"search_labels.friendlyName",weight:8},{name:"search_labels.deviceName",weight:7},{name:"search_labels.areaName",weight:6},{name:"search_labels.domainName",weight:6},{name:"search_labels.entityId",weight:3}],d=(t,e,a,l,d,h,c,p,u,g="")=>{let v,f=Object.keys(t.states);return c&&(f=f.filter(t=>c.includes(t))),p&&(f=f.filter(t=>!p.includes(t))),e&&(f=f.filter(t=>e.includes((0,i.m)(t)))),a&&(f=f.filter(t=>!a.includes((0,i.m)(t)))),v=f.map(e=>{const a=t.states[e],l=(0,r.u)(a),[d,h,c]=(0,o.Cf)(a,[{type:"entity"},{type:"device"},{type:"area"}],t.entities,t.devices,t.areas,t.floors),p=(0,n.p$)(t.localize,(0,i.m)(e)),u=(0,s.qC)(t.language,t.translationMetadata.translations),v=d||h||e,f=[c,d?h:void 0].filter(Boolean).join(u?" ◂ ":" ▸ ");return{id:`${g}${e}`,primary:v,secondary:f,domain_name:p,sorting_label:[v,f].filter(Boolean).join("_"),search_labels:{entityName:d||null,deviceName:h||null,areaName:c||null,domainName:p||null,friendlyName:l||null,entityId:e},stateObj:a}}),d&&(v=v.filter(t=>{var e;return t.id===u||(null===(e=t.stateObj)||void 0===e?void 0:e.attributes.device_class)&&d.includes(t.stateObj.attributes.device_class)})),h&&(v=v.filter(t=>{var e;return t.id===u||(null===(e=t.stateObj)||void 0===e?void 0:e.attributes.unit_of_measurement)&&h.includes(t.stateObj.attributes.unit_of_measurement)})),l&&(v=v.filter(t=>t.id===u||t.stateObj&&l(t.stateObj))),v}},44249:function(t,e,a){a.d(e,{V:function(){return i}});a(62953);const i=(t,e)=>{const a=new o,i=t.subscribeMessage(t=>e(a.processMessage(t)),{type:"persistent_notification/subscribe"});return()=>{i.then(t=>null==t?void 0:t())}};class o{processMessage(t){if("removed"===t.type)for(const e of Object.keys(t.notifications))delete this.notifications[e];else this.notifications=Object.assign(Object.assign({},this.notifications),t.notifications);return Object.values(this.notifications)}constructor(){this.notifications={}}}},81310:function(t,e,a){a.a(t,async function(t,e){try{a(62953);var i=a(40445),o=a(5124),r=a(67576),s=a(6412),n=a(26218),l=a(91926),d=a(90248),h=a(2054),c=a(14503),p=t([d,h]);[d,h]=p.then?(await p)():p;let u,g,v,f,m,b=t=>t;class y extends o.WF{render(){var t;return(0,o.qy)(u||(u=b` <div class="toolbar ${0}"> <div class="toolbar-content"> ${0} <div class="main-title"> <slot name="header">${0}</slot> </div> <slot name="toolbar-icon"></slot> </div> </div> <div class="${0}" @scroll="${0}"> <slot></slot> </div> <div id="fab"> <slot name="fab"></slot> </div> `),(0,s.H)({narrow:this.narrow}),this.mainPage||null!==(t=history.state)&&void 0!==t&&t.root?(0,o.qy)(g||(g=b` <ha-menu-button .hass="${0}" .narrow="${0}"></ha-menu-button> `),this.hass,this.narrow):this.backPath?(0,o.qy)(v||(v=b` <ha-icon-button-arrow-prev href="${0}" .hass="${0}"></ha-icon-button-arrow-prev> `),this.backPath,this.hass):(0,o.qy)(f||(f=b` <ha-icon-button-arrow-prev .hass="${0}" @click="${0}"></ha-icon-button-arrow-prev> `),this.hass,this._backTapped),this.header,(0,s.H)({content:!0,"ha-scrollbar":this.scrollable,"not-scrollable":!this.scrollable}),this._saveScrollPos)}_saveScrollPos(t){this._savedScrollPos=t.target.scrollTop}_backTapped(){this.backCallback?this.backCallback():(0,l.OE)()}static get styles(){return[c.dp,(0,o.AH)(m||(m=b`:host{display:block;height:100%;background-color:var(--primary-background-color);overflow:hidden;position:relative}:host([narrow]){width:100%;position:fixed}.toolbar{background-color:var(--app-header-background-color);padding-top:var(--safe-area-inset-top);padding-right:var(--safe-area-inset-right)}:host([narrow]) .toolbar{padding-left:var(--safe-area-inset-left)}.toolbar-content{display:flex;align-items:center;font-size:var(--ha-font-size-xl);height:var(--header-height);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;padding:8px 12px}.toolbar a{color:var(--sidebar-text-color);text-decoration:none}::slotted([slot=toolbar-icon]),ha-icon-button-arrow-prev,ha-menu-button{display:flex;align-items:center;pointer-events:auto;color:var(--sidebar-icon-color)}.main-title{margin-inline-start:var(--ha-space-6);line-height:var(--ha-line-height-normal);min-width:0;flex-grow:1;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.narrow .main-title{margin-inline-start:var(--ha-space-2)}.content{position:relative;width:calc(100% - var(--safe-area-inset-right,0px));height:calc(100% - 1px - var(--header-height,0px) - var(--safe-area-inset-top,0px) - var(--safe-area-inset-bottom,0px));padding-bottom:var(--safe-area-inset-bottom,0px);margin-right:var(--safe-area-inset-right);overflow-y:auto;overflow:auto;-webkit-overflow-scrolling:touch}.content.not-scrollable{overflow:hidden;display:flex;flex-direction:column}:host([narrow]) .content{width:calc(100% - var(--safe-area-inset-left,0px) - var(--safe-area-inset-right,0px));margin-left:var(--safe-area-inset-left)}#fab{position:absolute;right:calc(16px + var(--safe-area-inset-right,0px));inset-inline-end:calc(16px + var(--safe-area-inset-right,0px));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]) #fab.tabs{bottom:calc(84px + var(--safe-area-inset-bottom,0px))}#fab[is-wide]{bottom:calc(24px + var(--safe-area-inset-bottom,0px));right:calc(24px + var(--safe-area-inset-right,0px));inset-inline-end:calc(24px + var(--safe-area-inset-right,0px));inset-inline-start:initial}`))]}constructor(...t){super(...t),this.mainPage=!1,this.narrow=!1,this.scrollable=!0}}(0,i.Cg)([(0,r.MZ)({attribute:!1})],y.prototype,"hass",void 0),(0,i.Cg)([(0,r.MZ)()],y.prototype,"header",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean,attribute:"main-page"})],y.prototype,"mainPage",void 0),(0,i.Cg)([(0,r.MZ)({type:String,attribute:"back-path"})],y.prototype,"backPath",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],y.prototype,"backCallback",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],y.prototype,"narrow",void 0),(0,i.Cg)([(0,r.MZ)({type:Boolean})],y.prototype,"scrollable",void 0),(0,i.Cg)([(0,n.a)(".content")],y.prototype,"_savedScrollPos",void 0),(0,i.Cg)([(0,r.Ls)({passive:!0})],y.prototype,"_saveScrollPos",null),y=(0,i.Cg)([(0,r.EM)("hass-subpage")],y),e()}catch(u){e(u)}})},73200:function(t,e,a){a.a(t,async function(t,e){try{a(3362),a(62953);var i=a(40445),o=a(5124),r=a(67576),s=a(36312),n=a(71727),l=a(82286),d=a(82474),h=(a(76776),a(8034),a(49142)),c=a(44144),p=a(36918),u=t([d]);d=(u.then?(await u)():u)[0];let g,v,f,m=t=>t;const b="M11,18H13V16H11V18M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,6A4,4 0 0,0 8,10H10A2,2 0 0,1 12,8A2,2 0 0,1 14,10C14,12 11,11.75 11,15H13C13,12.75 16,12.5 16,10A4,4 0 0,0 12,6Z",y="M12,1L9,9L1,12L9,15L12,23L15,15L23,12L15,9L12,1Z",_=t=>"ai_task"===(0,n.m)(t.entity_id)&&(0,l.$)(t,h.xW.GENERATE_DATA),w=t=>"ai_task"===(0,n.m)(t.entity_id)&&(0,l.$)(t,h.xW.GENERATE_IMAGE);class x extends o.WF{firstUpdated(t){super.firstUpdated(t),this.hass&&(0,s.x)(this.hass.config,"ai_task")&&(0,h.sG)(this.hass).then(t=>{this._prefs=t})}render(){var t,e,a;return(0,o.qy)(g||(g=m` <ha-card outlined> <h1 class="card-header"> <img alt="" src="${0}" crossorigin="anonymous" referrerpolicy="no-referrer">${0} </h1> <div class="header-actions"> <ha-icon-button .label="${0}" .path="${0}" href="${0}" target="_blank" rel="noreferrer" class="icon-link"></ha-icon-button> </div> <div class="card-content"> <p> ${0} </p> <ha-settings-row .narrow="${0}"> <span slot="heading"> ${0} </span> <span slot="description"> ${0} </span> <ha-entity-picker data-name="gen_data_entity_id" .hass="${0}" .disabled="${0}" .value="${0}" .entityFilter="${0}" @value-changed="${0}"></ha-entity-picker> </ha-settings-row> <ha-settings-row .narrow="${0}"> <span slot="heading"> ${0} </span> <span slot="description"> ${0} </span> <ha-entity-picker data-name="gen_image_entity_id" .hass="${0}" .disabled="${0}" .value="${0}" .entityFilter="${0}" @value-changed="${0}"></ha-entity-picker> </ha-settings-row> </div> <div class="card-actions"> <ha-progress-button @click="${0}"> ${0} </ha-progress-button> </div> </ha-card> `),(0,c.MR)({domain:"ai_task",type:"icon",darkOptimized:null===(t=this.hass.themes)||void 0===t?void 0:t.darkMode},this.hass.auth.data.hassUrl),this.hass.localize("ui.panel.config.ai_task.header"),this.hass.localize("ui.panel.config.cloud.account.alexa.link_learn_how_it_works"),b,(0,p.o)(this.hass,"/integrations/ai_task/"),this.hass.localize("ui.panel.config.ai_task.description",{button:(0,o.qy)(v||(v=m`<ha-svg-icon .path="${0}"></ha-svg-icon>`),y)}),this.narrow,this.hass.localize("ui.panel.config.ai_task.gen_data_header"),this.hass.localize("ui.panel.config.ai_task.gen_data_description"),this.hass,void 0===this._prefs&&(0,s.x)(this.hass.config,"ai_task"),this._gen_data_entity_id||(null===(e=this._prefs)||void 0===e?void 0:e.gen_data_entity_id),_,this._handlePrefChange,this.narrow,this.hass.localize("ui.panel.config.ai_task.gen_image_header"),this.hass.localize("ui.panel.config.ai_task.gen_image_description"),this.hass,void 0===this._prefs&&(0,s.x)(this.hass.config,"ai_task"),this._gen_image_entity_id||(null===(a=this._prefs)||void 0===a?void 0:a.gen_image_entity_id),w,this._handlePrefChange,this._update,this.hass.localize("ui.common.save"))}_handlePrefChange(t){const e=t.target.dataset.name,a=t.detail.value||null;this[`_${e}`]=a}async _update(t){const e=t.target;if(e.progress)return;e.progress=!0;const a=this._prefs,i={gen_data_entity_id:this._gen_data_entity_id,gen_image_entity_id:this._gen_image_entity_id};this._prefs=Object.assign(Object.assign({},this._prefs),i);try{this._prefs=await(0,h.HU)(this.hass,Object.assign({},i)),e.actionSuccess()}catch(o){e.actionError(),this._prefs=a}finally{e.progress=!1}}constructor(...t){super(...t),this.narrow=!1}}x.styles=(0,o.AH)(f||(f=m`.card-header{display:flex;align-items:center}.card-header img{max-width:28px;margin-right:16px}ha-settings-row{padding:0}.header-actions{position:absolute;right:0px;inset-inline-end:0px;inset-inline-start:initial;top:24px;display:flex;flex-direction:row}.header-actions .icon-link{margin-top:-16px;margin-right:8px;margin-inline-end:8px;margin-inline-start:initial;direction:var(--direction);color:var(--secondary-text-color)}.card-actions{text-align:right}ha-entity-picker{flex:1;margin-left:16px}:host([narrow]) ha-entity-picker{margin-left:0}`)),(0,i.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],x.prototype,"narrow",void 0),(0,i.Cg)([(0,r.MZ)({attribute:!1})],x.prototype,"hass",void 0),(0,i.Cg)([(0,r.wk)()],x.prototype,"_prefs",void 0),x=(0,i.Cg)([(0,r.EM)("ai-task-pref")],x),e()}catch(g){e(g)}})},25702:function(t,e,a){a.a(t,async function(t,i){try{a.r(e);a(62953);var o=a(40445),r=a(5124),s=a(67576),n=a(81310),l=a(73200),d=t([n,l]);[n,l]=d.then?(await d)():d;let h,c,p=t=>t;class u extends r.WF{render(){return(0,r.qy)(h||(h=p` <hass-subpage back-path="/config/system" .hass="${0}" .narrow="${0}" .header="${0}"> <div class="content"> <ai-task-pref .hass="${0}" .narrow="${0}"></ai-task-pref> </div> </hass-subpage> `),this.hass,this.narrow,this.hass.localize("ui.panel.config.ai_tasks.caption"),this.hass,this.narrow)}constructor(...t){super(...t),this.narrow=!1}}u.styles=(0,r.AH)(c||(c=p`.content{padding:var(--ha-space-7) var(--ha-space-5) 0;max-width:1040px;margin:0 auto}ai-task-pref{max-width:600px;margin:0 auto;display:block}`)),(0,o.Cg)([(0,s.MZ)({attribute:!1})],u.prototype,"hass",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean})],u.prototype,"narrow",void 0),u=(0,o.Cg)([(0,s.EM)("ha-config-section-ai-tasks")],u),i()}catch(h){i(h)}})},24367:function(t,e,a){a.d(e,{L:function(){return o},z:function(){return r}});var i=a(23832);const o=["input_boolean","input_button","input_text","input_number","input_datetime","input_select","counter","timer","schedule"],r=(0,i.g)(o)},19711:function(t,e,a){a.d(e,{$:function(){return r}});a(3362),a(62953);var i=a(1087);const o=()=>Promise.all([a.e(80131),a.e(70183),a.e(47677)]).then(a.bind(a,79029)),r=(t,e)=>{(0,i.r)(t,"show-dialog",{dialogTag:"dialog-helper-detail",dialogImport:o,dialogParams:e})}},53580:function(t,e,a){a.d(e,{mdiHomeAssistant:function(){return i}});const i="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"},69235:function(t,e,a){a.a(t,async function(t,e){try{a(3362),a(62953);"function"!=typeof window.ResizeObserver&&(window.ResizeObserver=(await a.e(71055).then(a.bind(a,52370))).default),e()}catch(i){e(i)}},1)},14503:function(t,e,a){a.d(e,{RF:function(){return p},dp:function(){return v},kO:function(){return g},nA:function(){return u},og:function(){return c}});var i=a(5124);let o,r,s,n,l,d,h=t=>t;const c=(0,i.AH)(o||(o=h`button.link{background:0 0;color:inherit;border:none;padding:0;font:inherit;text-align:left;text-decoration:underline;cursor:pointer;outline:0}`)),p=(0,i.AH)(r||(r=h`: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}@media (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)}${0} .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}`),c),u=(0,i.AH)(s||(s=h`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)}@media 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)}`)),g=(0,i.AH)(n||(n=h`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
        )
    )}@media 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}}`)),v=(0,i.AH)(l||(l=h`.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}`));(0,i.AH)(d||(d=h`body{background-color:var(--primary-background-color);color:var(--primary-text-color);height:calc(100vh - 32px);width:100vw}`))},36918:function(t,e,a){a.d(e,{o:function(){return i}});const i=(t,e)=>`https://www.iobroker.net/#${t.language&&t.language.split("-")[0]||"en"}/adapters/adapterref/iobroker.lovelace/README.md#`}}]);