iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
63 lines • 49.5 kB
JavaScript
export const __rspack_esm_id=5675;export const __rspack_esm_ids=[5675];export const __webpack_modules__={26218(e,t,a){a.d(t,{a:()=>i});const o=(0,a(77796).n)(e=>{history.replaceState({scrollPosition:e},"")},300);function i(e){return(t,a)=>{if("object"==typeof a)throw new Error("This decorator does not support this compilation type.");const i=t.connectedCallback;t.connectedCallback=function(){i.call(this);const t=this[a];t&&this.updateComplete.then(()=>{const a=this.renderRoot.querySelector(e);a&&setTimeout(()=>{a.scrollTop=t},0)})};const r=Object.getOwnPropertyDescriptor(t,a);let s;if(void 0===r)s={get(){return this[`__${String(a)}`]||history.state?.scrollPosition},set(e){o(e),this[`__${String(a)}`]=e},configurable:!0,enumerable:!0};else{const e=r.set;s={...r,set(t){o(t),this[`__${String(a)}`]=t,e?.call(this,t)}}}Object.defineProperty(t,a,s)}}},77796(e,t,a){a.d(t,{n:()=>o});const o=(e,t,a=!0,o=!0)=>{let i,r=0;const s=(...s)=>{const n=()=>{r=!1===a?0:Date.now(),i=void 0,e(...s)},l=Date.now();r||!1!==a||(r=l);const c=t-(l-r);c<=0||c>t?(i&&(clearTimeout(i),i=void 0),r=l,e(...s)):i||!1===o||(i=window.setTimeout(n,c))};return s.cancel=()=>{clearTimeout(i),i=void 0,r=0},s}},51308(e,t,a){a.a(e,async function(e,t){try{var o=a(62826),i=a(5124),r=a(22441),s=a(1087),n=a(14503),l=a(59646),c=a(34127),h=(a(83892),e([l,c]));[l,c]=h.then?(await h)():h;const d=["usage","statistics"];class p extends i.WF{render(){const e=void 0===this.analytics,t=!e&&this.analytics.preferences.base;return i.qy` <ha-row-item> <span slot="headline">${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.preferences.base.title`)}</span> <span slot="supporting-text">${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.preferences.base.description`)}</span> <ha-switch slot="end" @change="${this._handleRowClick}" .checked="${!!t}" .preference="${"base"}" .disabled="${e}" name="base"></ha-switch> </ha-row-item> ${d.map(e=>i.qy` <ha-row-item> <span slot="headline">${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.preferences.${e}.title`)}</span> <span slot="supporting-text">${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.preferences.${e}.description`)}</span> <ha-switch slot="end" .id="switch-${e}" @change="${this._handleRowClick}" .checked="${!!this.analytics?.preferences[e]}" .preference="${e}" name="${e}"></ha-switch> ${t?i.s6:i.qy`<ha-tooltip .for="switch-${e}" placement="right"> ${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.need_base_enabled`)} </ha-tooltip>`} </ha-row-item> `)} <ha-row-item> <span slot="headline">${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.preferences.diagnostics.title`)}</span> <span slot="supporting-text">${this.localize(`ui.panel.${this.translationKeyPanel}.analytics.preferences.diagnostics.description`)}</span> <ha-switch slot="end" @change="${this._handleRowClick}" .checked="${!!this.analytics?.preferences.diagnostics}" .preference="${"diagnostics"}" .disabled="${e}" name="diagnostics"></ha-switch> </ha-row-item> `}_handleRowClick(e){const t=e.currentTarget,a=t.preference,o=this.analytics?{...this.analytics.preferences}:{};o[a]!==t.checked&&(o[a]=t.checked,d.some(e=>e===a)&&t.checked?o.base=!0:"base"!==a||t.checked||(o.usage=!1,o.statistics=!1),(0,s.r)(this,"analytics-preferences-changed",{preferences:o}))}static get styles(){return[n.RF,i.AH`.error{color:var(--error-color)}ha-row-item{--ha-row-item-padding-inline:0}`]}constructor(...e){super(...e),this.translationKeyPanel="config"}}(0,o.Cg)([(0,r.MZ)({attribute:!1})],p.prototype,"localize",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],p.prototype,"analytics",void 0),(0,o.Cg)([(0,r.MZ)({attribute:"translation_key_panel"})],p.prototype,"translationKeyPanel",void 0),p=(0,o.Cg)([(0,r.EM)("ha-analytics")],p),t()}catch(e){t(e)}})},76776(e,t,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(...e){super(...e),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(e,t,a){a.a(e,async function(e,o){try{a.r(t),a.d(t,{HaIconButtonArrowPrev:()=>p});var i=a(62826),r=a(5124),s=a(22441),n=a(63091),l=a(26300),c=e([l]);l=(c.then?(await c)():c)[0];const h="M20,11V13H8L13.5,18.5L12.08,19.92L4.16,12L12.08,4.08L13.5,5.5L8,11H20Z",d="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(...e){super(...e),this.disabled=!1,this._icon="rtl"===n.G.document.dir?d:h}}(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(e){o(e)}})},26300(e,t,a){a.a(e,async function(e,o){try{a.r(t),a.d(t,{HaIconButton:()=>h});var i=a(62826),r=a(5124),s=a(22441),n=a(63672),l=a(18350),c=(a(67094),e([l]));l=(c.then?(await c)():c)[0];class h 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(...e){super(...e),this.disabled=!1,this.hideTitle=!1,this.selected=!1}}h.shadowRootOptions={mode:"open",delegatesFocus:!0},h.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}@media (hover:hover){:host(:hover:not([disabled])) ha-button::after{opacity:.1}}`,(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],h.prototype,"disabled",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],h.prototype,"path",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],h.prototype,"label",void 0),(0,i.Cg)([(0,s.MZ)({type:String,attribute:"aria-haspopup"})],h.prototype,"ariaHasPopup",void 0),(0,i.Cg)([(0,s.MZ)({attribute:"hide-title",type:Boolean})],h.prototype,"hideTitle",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],h.prototype,"selected",void 0),(0,i.Cg)([(0,s.MZ)()],h.prototype,"href",void 0),(0,i.Cg)([(0,s.MZ)()],h.prototype,"target",void 0),(0,i.Cg)([(0,s.MZ)()],h.prototype,"rel",void 0),(0,i.Cg)([(0,s.MZ)()],h.prototype,"download",void 0),h=(0,i.Cg)([(0,s.EM)("ha-icon-button")],h),o()}catch(e){o(e)}})},2054(e,t,a){a.a(e,async function(e,t){try{var o=a(62826),i=a(5124),r=a(22441),s=a(1087),n=a(44249),l=a(26300),c=e([l]);l=(c.then?(await c)():c)[0];const h="M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z";class d 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 e=this._hasNotifications&&(this.narrow||"always_hidden"===this.hass.dockedSidebar);return i.qy` <ha-icon-button .label="${this.hass.localize("ui.sidebar.sidebar_toggle")}" .path="${h}" @click="${this._toggleMenu}"></ha-icon-button> ${e?i.qy`<div class="dot"></div>`:""} `}willUpdate(e){if(super.willUpdate(e),!e.has("narrow")&&!e.has("hass"))return;const t=e.has("hass")?e.get("hass"):this.hass,a=e.has("narrow")?e.get("narrow"):this.narrow,o=!1===t?.kioskMode&&(a||"always_hidden"===t?.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,e=>{this._hasNotifications=e.length>0})}_toggleMenu(){(0,s.r)(this,"hass-toggle-menu")}constructor(...e){super(...e),this.narrow=!1,this._hasNotifications=!1,this._show=!1,this._alwaysVisible=!1,this._attachNotifOnConnect=!1}}d.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})],d.prototype,"narrow",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],d.prototype,"hass",void 0),(0,o.Cg)([(0,r.wk)()],d.prototype,"_hasNotifications",void 0),(0,o.Cg)([(0,r.wk)()],d.prototype,"_show",void 0),d=(0,o.Cg)([(0,r.EM)("ha-menu-button")],d),t()}catch(e){t(e)}})},65829(e,t,a){a.a(e,async function(e,o){try{a.r(t),a.d(t,{HaSpinner:()=>c});var i=a(62826),r=a(55262),s=a(5124),n=a(22441),l=e([r]);r=(l.then?(await l)():l)[0];class c extends r.A{updated(e){if(super.updated(e),e.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)()],c.prototype,"size",void 0),c=(0,i.Cg)([(0,n.EM)("ha-spinner")],c),o()}catch(e){o(e)}})},67094(e,t,a){a.r(t),a.d(t,{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)},59646(e,t,a){a.a(e,async function(e,t){try{var o=a(62826),i=a(29344),r=a(5124),s=a(22441),n=a(88360),l=e([i]);i=(l.then?(await l)():l)[0];class c extends i.A{updated(e){super.updated(e),e.has("haptic")&&(this.haptic?this.addEventListener("change",this._forwardHaptic):this.removeEventListener("change",this._forwardHaptic))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("change",this._forwardHaptic)}static get styles(){return[i.A.styles,r.AH`:host{--wa-form-control-toggle-size:var(--ha-switch-size, 24px);--wa-form-control-required-content:var(
--ha-switch-required-marker,
var(--ha-input-required-marker, "*")
);--wa-form-control-required-content-offset:var(
--ha-switch-required-marker-offset,
0.1rem
);--thumb-size:var(--ha-switch-thumb-size, 18px);--width:var(--ha-switch-width, 48px)}label{position:relative;height:max(var(--thumb-size),var(--wa-form-control-toggle-size))}label::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:var(--ha-switch-min-touch-size,40px);min-height:var(--ha-switch-min-touch-size,40px)}label.disabled::before{pointer-events:none}.switch{background-color:var(--ha-switch-background-color,var(--ha-color-fill-disabled-quiet-resting));border-color:var(--ha-switch-border-color,var(--ha-color-border-neutral-normal))}label:not(.disabled) .input:focus-visible~.switch,label:not(.disabled):hover .switch{background-color:var(--ha-switch-background-color-hover,var(--ha-switch-background-color,var(--ha-color-fill-disabled-quiet-hover)))}.checked .switch{background-color:var(--ha-switch-checked-background-color,var(--ha-color-fill-primary-normal-resting));border-color:var(--ha-switch-checked-border-color,var(--ha-color-border-primary-loud))}label:not(.disabled).checked .input:focus-visible~.switch,label:not(.disabled).checked:hover .switch{background-color:var(--ha-switch-checked-background-color-hover,var(--ha-switch-checked-background-color,var(--ha-color-fill-primary-normal-hover)));border-color:var(--ha-switch-checked-border-color-hover,var(--ha-switch-checked-border-color,var(--ha-color-border-primary-loud)))}.switch .thumb{background-color:var(--ha-switch-thumb-background-color,var(--ha-color-on-neutral-normal));border-color:var(--ha-switch-thumb-border-color,var(--ha-color-on-neutral-normal));border-style:var(--wa-form-control-border-style);border-width:var(--wa-form-control-border-width);box-shadow:var(--ha-switch-thumb-box-shadow,var(--ha-box-shadow-s))}label:not(.disabled) .input:focus-visible~.switch .thumb,label:not(.disabled):hover .switch .thumb{background-color:var(--ha-switch-thumb-background-color-hover,var(--ha-switch-thumb-background-color,var(--ha-color-on-neutral-normal)));border-color:var(--ha-switch-thumb-border-color-hover,var(--ha-switch-thumb-border-color,var(--ha-color-on-neutral-normal)))}.checked .switch .thumb{background-color:var(--ha-switch-checked-thumb-background-color,var(--ha-color-on-primary-normal));border-color:var(--ha-switch-checked-thumb-border-color,var(--ha-color-on-primary-normal))}label:not(.disabled).checked .input:focus-visible~.switch .thumb,label:not(.disabled).checked:hover .switch .thumb{background-color:var(--ha-switch-checked-thumb-background-color-hover,var(--ha-switch-checked-thumb-background-color,var(--ha-color-on-primary-normal)));border-color:var(--ha-switch-checked-thumb-border-color-hover,var(--ha-switch-checked-thumb-border-color,var(--ha-color-on-primary-normal)))}label.disabled{opacity:var(--ha-switch-disabled-opacity, .3);cursor:not-allowed}label:not(.disabled) .input:focus-visible~.switch .thumb{outline:0;outline-offset:none}label:not(.disabled) .input:focus-visible~.switch{outline:var(--wa-focus-ring);outline-offset:var(--wa-focus-ring-offset)}:host(:empty) slot.label{display:none}`]}constructor(...e){super(...e),this.haptic=!1,this._forwardHaptic=()=>{(0,n.j)(this,"light")}}}(0,o.Cg)([(0,s.MZ)({type:Boolean})],c.prototype,"haptic",void 0),c=(0,o.Cg)([(0,s.EM)("ha-switch")],c),t()}catch(e){t(e)}})},34127(e,t,a){a.a(e,async function(e,t){try{var o=a(62826),i=a(52630),r=a(5124),s=a(22441),n=e([i]);i=(n.then?(await n)():n)[0];class l extends i.A{static get styles(){return[i.A.styles,r.AH`: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(...e){super(...e),this.showDelay=350,this.hideDelay=150}}(0,o.Cg)([(0,s.MZ)({attribute:"show-delay",type:Number})],l.prototype,"showDelay",void 0),(0,o.Cg)([(0,s.MZ)({attribute:"hide-delay",type:Number})],l.prototype,"hideDelay",void 0),l=(0,o.Cg)([(0,s.EM)("ha-tooltip")],l),t()}catch(e){t(e)}})},83892(e,t,a){a.d(t,{x:()=>n});a(18111),a(13579);var o=a(62826),i=a(92070),r=a(5124),s=a(22441);class n extends r.WF{_onSlotChange(e){return t=>{const a=t.target.assignedNodes({flatten:!0}).some(e=>e.nodeType===Node.ELEMENT_NODE||e.nodeType===Node.TEXT_NODE&&""!==e.textContent?.trim());"start"===e?this._hasStart=a:this._hasEnd=a}}render(){return this._renderBase(this._renderInner())}_renderBase(e){return r.qy`<div part="base" class="base" id="item">${e}</div>`}_renderInner(){const e=this._slotController.test("content");return r.qy` <div part="start" class="start" ?hidden="${!this._hasStart}"> <slot name="start" @slotchange="${this._onSlotChange("start")}"></slot> </div> <div part="content" class="content"> ${e?r.qy`<slot name="content"></slot>`:this._renderDefaultContent()} </div> <div part="end" class="end" ?hidden="${!this._hasEnd}"> <slot name="end" @slotchange="${this._onSlotChange("end")}"></slot> </div> `}_renderDefaultContent(){const e=this._slotController.test("headline"),t=this._slotController.test("supporting-text"),a=e||void 0!==this.headline,o=t||void 0!==this.supportingText;return r.qy` ${a?r.qy`<div part="headline" class="headline"> <slot name="headline">${this.headline??r.s6}</slot> </div>`:r.s6} ${o?r.qy`<div part="supporting-text" class="supporting"> <slot name="supporting-text">${this.supportingText??r.s6}</slot> </div>`:r.s6} `}constructor(...e){super(...e),this.disabled=!1,this._slotController=new i.X(this,"headline","supporting-text","content"),this._hasStart=!1,this._hasEnd=!1}}n.styles=r.AH`:host{display:block;color:var(--primary-text-color);font-size:var(--ha-font-size-m);line-height:var(--ha-line-height-normal)}:host([disabled]){color:var(--disabled-text-color);pointer-events:none}.base{position:relative;display:flex;flex-direction:row;align-items:center;gap:var(--ha-row-item-gap,var(--ha-space-4));padding-block:var(--ha-row-item-padding-block,var(--ha-space-3));padding-inline:var(--ha-row-item-padding-inline,var(--ha-space-4));min-height:var(--ha-row-item-min-height,48px);box-sizing:border-box}.content{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;justify-content:center}.end,.start{display:flex;align-items:center;flex:0 0 auto}.end[hidden],.start[hidden]{display:none}.headline{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supporting{color:var(--secondary-text-color);font-size:var(--ha-font-size-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`,(0,o.Cg)([(0,s.MZ)({type:String})],n.prototype,"headline",void 0),(0,o.Cg)([(0,s.MZ)({type:String,attribute:"supporting-text"})],n.prototype,"supportingText",void 0),(0,o.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],n.prototype,"disabled",void 0),(0,o.Cg)([(0,s.wk)()],n.prototype,"_hasStart",void 0),(0,o.Cg)([(0,s.wk)()],n.prototype,"_hasEnd",void 0),n=(0,o.Cg)([(0,s.EM)("ha-row-item")],n)},23460(e,t,a){a.d(t,{P:()=>i,t:()=>o});const o=e=>e.callWS({type:"analytics"}),i=(e,t)=>e.callWS({type:"analytics/preferences",preferences:t})},82e3(e,t,a){a.d(t,{D5:()=>o,Fy:()=>s,Gk:()=>c,Hg:()=>i,Y_:()=>h,ds:()=>l,e0:()=>r,ec:()=>n});a(74423),a(18111),a(61701),a(33110);const o=14881==a.j?`${location.protocol}//${location.host}`:null,i=e=>e.map(e=>{if("string"!==e.type)return e;switch(e.name){case"username":return{...e,autocomplete:"username",autofocus:!0};case"password":return{...e,autocomplete:"current-password"};case"code":return{...e,autocomplete:"one-time-code",autofocus:!0};default:return e}}),r=(e,t)=>e.callWS({type:"auth/sign_path",path:t}),s=async(e,t,a,o)=>e.callWS({type:"config/auth_provider/homeassistant/create",user_id:t,username:a,password:o}),n=(e,t,a)=>e.callWS({type:"config/auth_provider/homeassistant/change_password",current_password:t,new_password:a}),l=(e,t,a)=>e.callWS({type:"config/auth_provider/homeassistant/admin_change_password",user_id:t,password:a}),c=(e,t,a)=>e.callWS({type:"config/auth_provider/homeassistant/admin_change_username",user_id:t,username:a}),h=(e,t,a)=>e.callWS({type:"auth/delete_all_refresh_tokens",token_type:t,delete_current_token:a})},16869(e,t,a){a.d(t,{B:()=>i,g:()=>o});a(74423);const o=window.externalAppV2||window.externalApp||window.webkit?.messageHandlers?.getExternalAuth||location.search.includes("external_auth=1"),i=window.externalApp||window.externalAppV2},93758(e,t,a){a.d(t,{CO:()=>h,NS:()=>c,f$:()=>r,ok:()=>s});var o=a(35518),i=a(9899);const r=async e=>(await e.callWS({type:"labs/list"})).features,s=(e,t,a,o,i)=>e.callWS({type:"labs/update",domain:t,preview_feature:a,enabled:o,...void 0!==i&&{create_backup:i}}),n=e=>e.sendMessagePromise({type:"labs/list"}).then(e=>e.features),l=(e,t)=>e.subscribeEvents((0,i.s)(()=>n(e).then(e=>t.setState(e,!0)),500,!0),"labs_updated"),c=(e,t)=>(0,o.N)("_labFeatures",n,l,e,t),h=(e,t,a,o)=>e.subscribeMessage(o,{type:"labs/subscribe",domain:t,preview_feature:a})},44249(e,t,a){a.d(t,{V:()=>o});const o=(e,t)=>{const a=new i,o=e.subscribeMessage(e=>t(a.processMessage(e)),{type:"persistent_notification/subscribe"});return()=>{o.then(e=>e?.())}};class i{processMessage(e){if("removed"===e.type)for(const t of Object.keys(e.notifications))delete this.notifications[t];else this.notifications={...this.notifications,...e.notifications};return Object.values(this.notifications)}constructor(){this.notifications={}}}},72001(e,t,a){a.d(t,{$D:()=>se,$O:()=>ie,Bm:()=>f,Cr:()=>J,Cy:()=>r,DE:()=>h,DJ:()=>w,El:()=>U,Eo:()=>N,GP:()=>l,Hz:()=>s,Is:()=>b,JZ:()=>E,Lx:()=>O,MY:()=>g,PY:()=>Y,RE:()=>T,S0:()=>V,SG:()=>_,TH:()=>S,Tx:()=>F,U:()=>G,VA:()=>P,VL:()=>c,Ve:()=>re,W6:()=>q,YG:()=>d,YP:()=>z,Yn:()=>k,Z1:()=>te,Zp:()=>C,aG:()=>M,aL:()=>n,au:()=>p,dZ:()=>v,fC:()=>I,i4:()=>Z,iK:()=>x,in:()=>oe,jF:()=>K,jT:()=>R,lz:()=>y,m:()=>$,mQ:()=>W,mR:()=>X,mX:()=>Q,of:()=>ee,pN:()=>ae,qN:()=>j,re:()=>A,sb:()=>H,tj:()=>L,u1:()=>i,wI:()=>m,zI:()=>u,zP:()=>B,zb:()=>D});var o=a(37619),i=function(e){return e[e.Idle=0]="Idle",e[e.Including=1]="Including",e[e.Excluding=2]="Excluding",e[e.Busy=3]="Busy",e[e.SmartStart=4]="SmartStart",e}({}),r=function(e){return e[e.Default=0]="Default",e[e.SmartStart=1]="SmartStart",e[e.Insecure=2]="Insecure",e[e.Security_S0=3]="Security_S0",e[e.Security_S2=4]="Security_S2",e}({}),s=function(e){return e[e.Temporary=-2]="Temporary",e[e.None=-1]="None",e[e.S2_Unauthenticated=0]="S2_Unauthenticated",e[e.S2_Authenticated=1]="S2_Authenticated",e[e.S2_AccessControl=2]="S2_AccessControl",e[e.S0_Legacy=7]="S0_Legacy",e}({}),n=function(e){return e[e.SmartStart=0]="SmartStart",e}({}),l=function(e){return e[e.ZWave=0]="ZWave",e[e.ZWaveLongRange=1]="ZWaveLongRange",e}({}),c=function(e){return e[e.Error_Timeout=-1]="Error_Timeout",e[e.Error_Checksum=0]="Error_Checksum",e[e.Error_TransmissionFailed=1]="Error_TransmissionFailed",e[e.Error_InvalidManufacturerID=2]="Error_InvalidManufacturerID",e[e.Error_InvalidFirmwareID=3]="Error_InvalidFirmwareID",e[e.Error_InvalidFirmwareTarget=4]="Error_InvalidFirmwareTarget",e[e.Error_InvalidHeaderInformation=5]="Error_InvalidHeaderInformation",e[e.Error_InvalidHeaderFormat=6]="Error_InvalidHeaderFormat",e[e.Error_InsufficientMemory=7]="Error_InsufficientMemory",e[e.Error_InvalidHardwareVersion=8]="Error_InvalidHardwareVersion",e[e.OK_WaitingForActivation=253]="OK_WaitingForActivation",e[e.OK_NoRestart=254]="OK_NoRestart",e[e.OK_RestartPending=255]="OK_RestartPending",e}({}),h=function(e){return e[e.Error_Timeout=0]="Error_Timeout",e[e.Error_RetryLimitReached=1]="Error_RetryLimitReached",e[e.Error_Aborted=2]="Error_Aborted",e[e.Error_NotSupported=3]="Error_NotSupported",e[e.OK=255]="OK",e}({}),d=function(e){return e[e.Active=0]="Active",e[e.Inactive=1]="Inactive",e}({});var p=function(e){return e[e.NotAvailable=127]="NotAvailable",e[e.ReceiverSaturated=126]="ReceiverSaturated",e[e.NoSignalDetected=125]="NoSignalDetected",e}({}),v=function(e){return e[e.ZWave_9k6=1]="ZWave_9k6",e[e.ZWave_40k=2]="ZWave_40k",e[e.ZWave_100k=3]="ZWave_100k",e[e.LongRange_100k=4]="LongRange_100k",e}({}),u=function(e){return e[e.Unknown=0]="Unknown",e[e.Asleep=1]="Asleep",e[e.Awake=2]="Awake",e[e.Dead=3]="Dead",e[e.Alive=4]="Alive",e}({});const g=(e,t,a,o,i,r,s)=>e.callWS({type:"zwave_js/invoke_cc_api",device_id:t,command_class:a,endpoint:o,method_name:i,parameters:r,wait_for_result:s}),b=(e,t)=>{if(t.device_id&&t.entry_id)throw new Error("Only one of device or entry ID should be supplied.");if(!t.device_id&&!t.entry_id)throw new Error("Either device or entry ID should be supplied.");return(0,o.X)(e,{type:"zwave_js/network_status",device_id:t.device_id,entry_id:t.entry_id})},_=(e,t)=>e.callWS({type:"zwave_js/data_collection_status",entry_id:t}),y=(e,t,a)=>e.callWS({type:"zwave_js/update_data_collection_preference",entry_id:t,opted_in:a}),f=(e,t)=>e.callWS({type:"zwave_js/get_provisioning_entries",entry_id:t}),w=(e,t,a,o,i,r,s,n=0)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/add_node",entry_id:t,inclusion_strategy:n,qr_code_string:i,qr_provisioning_information:o,planned_provisioning_entry:r,dsk:s}),m=(e,t)=>e.callWS({type:"zwave_js/stop_inclusion",entry_id:t}),x=(e,t,a,o)=>e.callWS({type:"zwave_js/grant_security_classes",entry_id:t,securityClasses:a,clientSideAuth:o}),k=(e,t,a)=>e.callWS({type:"zwave_js/try_parse_dsk_from_qr_code_string",entry_id:t,qr_code_string:a}),z=(e,t,a)=>e.callWS({type:"zwave_js/validate_dsk_and_enter_pin",entry_id:t,pin:a}),C=(e,t,a)=>e.callWS({type:"zwave_js/supports_feature",entry_id:t,feature:a}),S=(e,t,a)=>e.callWS({type:"zwave_js/parse_qr_code_string",entry_id:t,qr_code_string:a}),$=(e,t,a,o,i,r)=>e.callWS({type:"zwave_js/lookup_device",entry_id:t,manufacturerId:a,productType:o,productId:i,applicationVersion:r}),M=(e,t,a,o,i,r)=>e.callWS({type:"zwave_js/provision_smart_start_node",entry_id:t,qr_provisioning_information:a,protocol:o,device_name:i,area_id:r}),E=(e,t,a,o)=>e.callWS({type:"zwave_js/unprovision_smart_start_node",entry_id:t,dsk:a,node_id:o}),j=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_new_devices",entry_id:t}),W=(e,t)=>e.callWS({type:"zwave_js/node_status",device_id:t}),Z=(e,t)=>e.callWS({type:"zwave_js/node_capabilities",device_id:t}),H=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_node_status",device_id:t}),A=(e,t)=>e.callWS({type:"zwave_js/node_metadata",device_id:t}),D=(e,t)=>e.callWS({type:"zwave_js/node_alerts",device_id:t}),q=(e,t)=>e.callWS({type:"zwave_js/get_config_parameters",device_id:t}),I=(e,t,a,o,i,r)=>{const s={type:"zwave_js/set_config_parameter",device_id:t,property:a,endpoint:o,value:i,property_key:r};return e.callWS(s)},P=(e,t,a,o,i,r)=>{const s={type:"zwave_js/set_raw_config_parameter",device_id:t,property:a,value:o,value_size:i,value_format:r};return e.callWS(s)},T=(e,t,a)=>e.callWS({type:"zwave_js/get_raw_config_parameter",device_id:t,property:a}).then(e=>e.value),N=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/refresh_node_info",device_id:t}),R=(e,t)=>e.callWS({type:"zwave_js/rebuild_node_routes",device_id:t}),L=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/remove_failed_node",device_id:t}),O=(e,t)=>(0,o.X)(e,{type:"zwave_js/begin_rebuilding_routes",entry_id:t}),F=(e,t)=>(0,o.X)(e,{type:"zwave_js/stop_rebuilding_routes",entry_id:t}),V=(e,t,a)=>e.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_rebuild_routes_progress",entry_id:t}),B=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_controller_statistics",entry_id:t}),K=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_node_statistics",device_id:t}),U=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_s2_inclusion",entry_id:t}),J=(e,t)=>e.callWS({type:"zwave_js/is_node_firmware_update_in_progress",device_id:t}),G=(e,t)=>e.callWS({type:"zwave_js/is_any_ota_firmware_update_in_progress",entry_id:t}),Y=(e,t)=>e.callWS({type:"zwave_js/hard_reset_controller",entry_id:t}),X=async(e,t,a,o,i)=>{const r=new FormData;r.append("file",a),void 0!==o&&r.append("target",o.toString());const s=await e.fetchWithAuth(`/api/zwave_js/firmware/upload/${t}`,{method:"POST",body:r,signal:i});if(200!==s.status)throw new Error(s.statusText)},Q=(e,t,a)=>e.connection.subscribeMessage(e=>a(e),{type:"zwave_js/subscribe_firmware_update_status",device_id:t}),ee=(e,t)=>e.callWS({type:"zwave_js/abort_firmware_update",device_id:t}),te=(e,t,a)=>e.connection.subscribeMessage(a,{type:"zwave_js/backup_nvm",entry_id:t}),ae=(e,t,a,o)=>e.connection.subscribeMessage(o,{type:"zwave_js/restore_nvm",entry_id:t,data:a}),oe=(e,t,a)=>e.connection.subscribeMessage(a,{type:"zwave_js/subscribe_log_updates",entry_id:t}),ie=(e,t)=>e.callWS({type:"zwave_js/get_log_config",entry_id:t}),re=(e,t,a)=>e.callWS({type:"zwave_js/update_log_config",entry_id:t,config:{level:a}}),se=(e,t)=>e.callWS({type:"zwave_js/cancel_secure_bootstrap_s2",entry_id:t})},81310(e,t,a){a.a(e,async function(e,t){try{var o=a(62826),i=a(5124),r=a(22441),s=a(6412),n=a(26218),l=a(91926),c=a(90248),h=a(2054),d=a(14503),p=e([c,h]);[c,h]=p.then?(await p)():p;class v extends i.WF{render(){return i.qy` <div class="toolbar ${(0,s.H)({narrow:this.narrow})}"> <div class="toolbar-content"> ${this.mainPage||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}" @click="${this._backTapped}"></ha-icon-button-arrow-prev> `} <div class="main-title"> <slot name="header">${this.header}</slot> </div> <slot name="toolbar-icon"></slot> </div> </div> <div class="${(0,s.H)({content:!0,"ha-scrollbar":this.scrollable,"not-scrollable":!this.scrollable})}" @scroll="${this._saveScrollPos}"> <slot></slot> </div> <div id="fab"> <slot name="fab"></slot> </div> `}_saveScrollPos(e){this._savedScrollPos=e.target.scrollTop}_backTapped(){this.backCallback?this.backCallback():(0,l.OE)()}static get styles(){return[d.dp,i.AH`: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(...e){super(...e),this.mainPage=!1,this.narrow=!1,this.scrollable=!0}}(0,o.Cg)([(0,r.MZ)({attribute:!1})],v.prototype,"hass",void 0),(0,o.Cg)([(0,r.MZ)()],v.prototype,"header",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,attribute:"main-page"})],v.prototype,"mainPage",void 0),(0,o.Cg)([(0,r.MZ)({type:String,attribute:"back-path"})],v.prototype,"backPath",void 0),(0,o.Cg)([(0,r.MZ)({attribute:!1})],v.prototype,"backCallback",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean,reflect:!0})],v.prototype,"narrow",void 0),(0,o.Cg)([(0,r.MZ)({type:Boolean})],v.prototype,"scrollable",void 0),(0,o.Cg)([(0,n.a)(".content")],v.prototype,"_savedScrollPos",void 0),(0,o.Cg)([(0,r.Ls)({passive:!0})],v.prototype,"_saveScrollPos",null),v=(0,o.Cg)([(0,r.EM)("hass-subpage")],v),t()}catch(e){t(e)}})},54706(e,t,a){a.d(t,{E:()=>r});a(74423),a(18111),a(13579);var o=a(62826),i=a(22441);const r=e=>{class t extends e{connectedCallback(){super.connectedCallback(),this._checkSubscribed()}disconnectedCallback(){if(super.disconnectedCallback(),this.__unsubs){for(;this.__unsubs.length;){const e=this.__unsubs.pop();e instanceof Promise?e.then(e=>e()):e()}this.__unsubs=void 0}}updated(e){if(super.updated(e),e.has("hass"))this._checkSubscribed();else if(this.hassSubscribeRequiredHostProps)for(const t of e.keys())if(this.hassSubscribeRequiredHostProps.includes(t))return void this._checkSubscribed()}hassSubscribe(){return[]}_checkSubscribed(){void 0===this.__unsubs&&this.isConnected&&void 0!==this.hass&&!this.hassSubscribeRequiredHostProps?.some(e=>void 0===this[e])&&(this.__unsubs=this.hassSubscribe())}}return(0,o.Cg)([(0,i.MZ)({attribute:!1})],t.prototype,"hass",void 0),t}},13133(e,t,a){a.a(e,async function(e,t){try{a(18111),a(20116);var o=a(62826),i=a(5124),r=a(22441),s=a(36312),n=a(6030),l=a(51308),c=a(18350),h=(a(76776),a(65829)),d=(a(67094),a(59646)),p=(a(83892),a(23460)),v=a(82e3),u=a(77423),g=a(93758),b=a(72001),_=a(54706),y=a(14503),f=a(36918),w=a(30039),m=e([l,c,h,d]);[l,c,h,d]=m.then?(await m)():m;const x="M5,20H19V18H5M19,9H15V3H9V9H5L12,16L19,9Z";class k extends((0,_.E)(i.WF)){render(){const e=this._error?this._error:(0,s.x)(this.hass.config,"analytics")?void 0:"Analytics integration not loaded";return i.qy` <ha-card outlined .header="${this.hass.localize("ui.panel.config.analytics.header")||"ioBroker analytics"}"> <div class="card-content"> ${e?i.qy`<div class="error">${e}</div>`:i.s6} <p> ${this.hass.localize("ui.panel.config.analytics.intro")} <a href="${(0,f.o)(this.hass,"/integrations/analytics/")}" target="_blank" rel="noreferrer">${this.hass.localize("ui.panel.config.analytics.learn_more")}</a>. </p> <ha-analytics translation_key_panel="config" @analytics-preferences-changed="${this._preferencesChanged}" .localize="${this.hass.localize}" .analytics="${this._analyticsDetails}"></ha-analytics> </div> </ha-card> ${this._snapshotsLabEnabled?i.qy`<ha-card outlined .header="${this.hass.localize("ui.panel.config.analytics.preferences.snapshots.header")}"> <div class="card-content"> <p> ${this.hass.localize("ui.panel.config.analytics.preferences.snapshots.info",{data_use_statement:i.qy`<a href="https://www.openhomefoundation.org/device-database-data-use-statement" target="_blank" rel="noreferrer">${this.hass.localize("ui.panel.config.analytics.preferences.snapshots.data_use_statement")}</a>`})} </p> <ha-row-item> <span slot="headline"> ${this.hass.localize("ui.panel.config.analytics.preferences.snapshots.title")} </span> <span slot="supporting-text"> ${this.hass.localize("ui.panel.config.analytics.preferences.snapshots.description")} </span> <ha-switch slot="end" @change="${this._handleDeviceRowClick}" .checked="${!!this._analyticsDetails?.preferences.snapshots}" .disabled="${void 0===this._analyticsDetails}"></ha-switch> </ha-row-item> </div> <div class="card-actions"> <ha-button size="small" appearance="plain" @click="${this._downloadDeviceInfo}"> <ha-svg-icon slot="start" .path="${x}"></ha-svg-icon> ${this.hass.localize("ui.panel.config.analytics.download_device_info")} </ha-button> </div> </ha-card>`:i.s6} ${void 0!==this._zwaveEntryId?i.qy`<ha-card outlined data-section="zwave" class="${"zwave"===this._highlightedSection?"highlighted":""}" .header="${this.hass.localize("ui.panel.config.zwave_js.dashboard.data_collection.title")}"> <div class="card-content"> <p> ${this.hass.localize("ui.panel.config.zwave_js.dashboard.data_collection.info",{documentation_link:i.qy`<a target="_blank" href="https://zwave-js.github.io/node-zwave-js/#/data-collection/data-collection" rel="noreferrer">${this.hass.localize("ui.panel.config.zwave_js.dashboard.data_collection.documentation_link")}</a>`})} </p> <ha-row-item> <span slot="headline"> ${this.hass.localize("ui.panel.config.zwave_js.dashboard.data_collection.toggle_title")} </span> <span slot="supporting-text"> ${this.hass.localize("ui.panel.config.zwave_js.dashboard.data_collection.toggle_description")} </span> ${void 0!==this._zwaveDataCollectionOptIn?i.qy` <ha-switch slot="end" @change="${this._zwaveDataCollectionToggled}" .checked="${!0===this._zwaveDataCollectionOptIn}"></ha-switch> `:i.qy`<ha-spinner slot="end" size="small"></ha-spinner>`} </ha-row-item> </div> </ha-card>`:i.s6} `}hassSubscribe(){return[(0,g.CO)(this.hass.connection,"analytics","snapshots",e=>{this._snapshotsLabEnabled=e.enabled})]}firstUpdated(e){super.firstUpdated(e);const t=(0,n.p9)("section");t&&(this._highlightedSection=t),(0,s.x)(this.hass.config,"analytics")&&this._load()}async _load(){this._error=void 0;try{this._analyticsDetails=await(0,p.t)(this.hass)}catch(e){this._error=e.message||e}this._loadZwaveDataCollection()}async _loadZwaveDataCollection(){if((0,s.x)(this.hass.config,"zwave_js"))try{const e=(await(0,u.VN)(this.hass,{domain:"zwave_js"})).find(e=>!e.disabled_by);if(e){this._zwaveEntryId=e.entry_id;const t=await(0,b.SG)(this.hass,e.entry_id);this._zwaveDataCollectionOptIn=!0===t.opted_in||!0===t.enabled,"zwave"===this._highlightedSection&&this.updateComplete.then(()=>{this._scrollToSection("zwave")})}}catch{}}_scrollToSection(e){const t=this.shadowRoot?.querySelector(`[data-section="${e}"]`);t&&(t.scrollIntoView({behavior:"smooth",block:"center"}),setTimeout(()=>{this._highlightedSection=void 0},3e3))}async _save(){this._error=void 0;try{await(0,p.P)(this.hass,this._analyticsDetails?.preferences||{})}catch(e){this._error=e.message||e}}_handleDeviceRowClick(e){const t=e.target;this._analyticsDetails={...this._analyticsDetails,preferences:{...this._analyticsDetails.preferences,snapshots:t.checked}},this._save()}_zwaveDataCollectionToggled(e){(0,b.lz)(this.hass,this._zwaveEntryId,e.target.checked)}_preferencesChanged(e){this._analyticsDetails={...this._analyticsDetails,preferences:e.detail.preferences},this._save()}async _downloadDeviceInfo(){const e=await(0,v.e0)(this.hass,"/api/analytics/devices");(0,w.R)(e.path)}static get styles(){return[y.RF,i.AH`.error{color:var(--error-color)}p{margin-top:0}ha-card:not(:first-of-type){margin-top:24px}ha-row-item{--ha-row-item-padding-inline:0}ha-card{transition:box-shadow .3s ease}ha-card.highlighted{animation:highlight-fade 2.5s ease-out forwards}@keyframes highlight-fade{0%{box-shadow:0 0 0 var(--ha-border-width-md) var(--primary-color),0 0 12px rgba(var(--rgb-primary-color),.4)}100%{box-shadow:0 0 0 var(--ha-border-width-md) transparent,0 0 0 transparent}}`]}constructor(...e){super(...e),this._snapshotsLabEnabled=!1}}(0,o.Cg)([(0,r.MZ)({attribute:!1})],k.prototype,"hass",void 0),(0,o.Cg)([(0,r.wk)()],k.prototype,"_analyticsDetails",void 0),(0,o.Cg)([(0,r.wk)()],k.prototype,"_error",void 0),(0,o.Cg)([(0,r.wk)()],k.prototype,"_snapshotsLabEnabled",void 0),(0,o.Cg)([(0,r.wk)()],k.prototype,"_zwaveEntryId",void 0),(0,o.Cg)([(0,r.wk)()],k.prototype,"_zwaveDataCollectionOptIn",void 0),(0,o.Cg)([(0,r.wk)()],k.prototype,"_highlightedSection",void 0),k=(0,o.Cg)([(0,r.EM)("ha-config-analytics")],k),t()}catch(e){t(e)}})},14503(e,t,a){a.d(t,{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}@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)}${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)}@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)}`,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
)
)}@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}}`,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(e,t,a){a.d(t,{o:()=>o});const o=(e,t)=>`https://www.iobroker.net/#${e.language&&e.language.split("-")[0]||"en"}/adapters/adapterref/iobroker.lovelace/README.md#`},30039(e,t,a){a.d(t,{R:()=>i});a(14603),a(47566),a(98721);var o=a(16869);const i=(e,t="")=>{const a=document.createElement("a");a.target="_blank",a.href=e,a.download=t,a.style.display="none",document.body.appendChild(a),a.dispatchEvent(new MouseEvent("click")),document.body.removeChild(a),e.startsWith("blob:")&&(o.B?setTimeout(()=>URL.revokeObjectURL(e),1e4):URL.revokeObjectURL(e))}},89429(e){e.exports=function(){}}};