iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
5 lines • 34 kB
JavaScript
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["91339"],{64214:function(t,e,i){i.a(t,(async function(t,a){try{i.d(e,{DG:()=>p,E8:()=>v,Fu:()=>g,NR:()=>b,o0:()=>h,yD:()=>y});var n=i(16485),o=i(27486),r=i(46467),s=i(33570),d=i(11104),l=i(16922),c=t([n,d,r,s]);[n,d,r,s]=c.then?(await c)():c;const h=(t,e,i)=>u(e,i.time_zone).format(t),u=(0,o.Z)(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"long",day:"numeric",hour:(0,l.y)(t)?"numeric":"2-digit",minute:"2-digit",hourCycle:(0,l.y)(t)?"h12":"h23",timeZone:(0,d.f)(t.time_zone,e)}))),p=((0,o.Z)((()=>new Intl.DateTimeFormat(void 0,{year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"}))),(t,e,i)=>m(e,i.time_zone).format(t)),m=(0,o.Z)(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"short",day:"numeric",hour:(0,l.y)(t)?"numeric":"2-digit",minute:"2-digit",hourCycle:(0,l.y)(t)?"h12":"h23",timeZone:(0,d.f)(t.time_zone,e)}))),y=(t,e,i)=>f(e,i.time_zone).format(t),f=(0,o.Z)(((t,e)=>new Intl.DateTimeFormat(t.language,{month:"short",day:"numeric",hour:(0,l.y)(t)?"numeric":"2-digit",minute:"2-digit",hourCycle:(0,l.y)(t)?"h12":"h23",timeZone:(0,d.f)(t.time_zone,e)}))),g=(t,e,i)=>(new Date).getFullYear()===t.getFullYear()?y(t,e,i):p(t,e,i),v=(t,e,i)=>_(e,i.time_zone).format(t),_=(0,o.Z)(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"long",day:"numeric",hour:(0,l.y)(t)?"numeric":"2-digit",minute:"2-digit",second:"2-digit",hourCycle:(0,l.y)(t)?"h12":"h23",timeZone:(0,d.f)(t.time_zone,e)}))),b=(t,e,i)=>`${(0,r.WB)(t,e,i)}, ${(0,s.mr)(t,e,i)}`;a()}catch(h){a(h)}}))},11104:function(t,e,i){i.a(t,(async function(t,a){try{i.d(e,{f:()=>u});var n,o,r,s=i(16485),d=i(20382),l=t([s]);s=(l.then?(await l)():l)[0];const c=null===(n=Intl.DateTimeFormat)||void 0===n||null===(o=(r=n.call(Intl)).resolvedOptions)||void 0===o?void 0:o.call(r).timeZone,h=null!=c?c:"UTC",u=(t,e)=>t===d.c_.local&&c?h:e;a()}catch(c){a(c)}}))},59847:function(t,e,i){i.d(e,{N:()=>n});var a=i(73850);const n=t=>(0,a.M)(t.entity_id)},75278:function(t,e,i){i.d(e,{e:()=>a});const a=(t,e)=>n(t.attributes,e),n=(t,e)=>!!(t.supported_features&e)},87707:function(t,e,i){i.d(e,{Q:()=>a});const a=t=>!(!t.detail.selected||"property"!==t.detail.source)&&(t.currentTarget.selected=!1,!0)},50602:function(t,e,i){i.a(t,(async function(t,a){try{i.d(e,{SL:()=>d,l4:()=>u,sJ:()=>l,uf:()=>h});var n=i(16485),o=(i(19083),i(19423),i(11740),i(61006),i(20382)),r=i(34618),s=t([n]);n=(s.then?(await s)():s)[0];const d=t=>l(t.attributes),l=(t,e)=>!!t.unit_of_measurement||!!t.state_class||(e||[]).includes(t.device_class||""),c=t=>{switch(t.number_format){case o.y4.comma_decimal:return["en-US","en"];case o.y4.decimal_comma:return["de","es","it"];case o.y4.space_comma:return["fr","sv","cs"];case o.y4.system:return;default:return t.language}},h=(t,e,i)=>{const a=e?c(e):void 0;return Number.isNaN=Number.isNaN||function t(e){return"number"==typeof e&&t(e)},(null==e?void 0:e.number_format)===o.y4.none||Number.isNaN(Number(t))?Number.isNaN(Number(t))||""===t||(null==e?void 0:e.number_format)!==o.y4.none?"string"==typeof t?t:`${(0,r.N)(t,null==i?void 0:i.maximumFractionDigits).toString()}${"currency"===(null==i?void 0:i.style)?` ${i.currency}`:""}`:new Intl.NumberFormat("en-US",p(t,Object.assign(Object.assign({},i),{},{useGrouping:!1}))).format(Number(t)):new Intl.NumberFormat(a,p(t,i)).format(Number(t))},u=(t,e)=>{var i;const a=null==e?void 0:e.display_precision;return null!=a?{maximumFractionDigits:a,minimumFractionDigits:a}:Number.isInteger(Number(null==t||null===(i=t.attributes)||void 0===i?void 0:i.step))&&Number.isInteger(Number(null==t?void 0:t.state))?{maximumFractionDigits:0}:void 0},p=(t,e)=>{const i=Object.assign({maximumFractionDigits:2},e);if("string"!=typeof t)return i;if(!e||void 0===e.minimumFractionDigits&&void 0===e.maximumFractionDigits){const e=t.indexOf(".")>-1?t.split(".")[1].length:0;i.minimumFractionDigits=e,i.maximumFractionDigits=e}return i};a()}catch(d){a(d)}}))},54977:function(t,e,i){var a=i(61701),n=(i(71695),i(47021),i(57243)),o=i(50778);let r,s,d,l=t=>t;(0,a.Z)([(0,o.Mo)("ha-card")],(function(t,e){return{F:class extends e{constructor(...e){super(...e),t(this)}},d:[{kind:"field",decorators:[(0,o.Cb)()],key:"header",value:void 0},{kind:"field",decorators:[(0,o.Cb)({type:Boolean,reflect:!0})],key:"raised",value(){return!1}},{kind:"field",static:!0,key:"styles",value(){return(0,n.iv)(r||(r=l`: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,12px);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, 24px);letter-spacing:-.012em;line-height:48px;padding:12px 16px 16px;display:block;margin-block-start:0px;margin-block-end:0px;font-weight:400}:host ::slotted(.card-content:not(:first-child)),slot:not(:first-child)::slotted(.card-content){padding-top:0px;margin-top:-8px}:host ::slotted(.card-content){padding:16px}:host ::slotted(.card-actions){border-top:1px solid var(--divider-color,#e8e8e8);padding:5px 16px}`))}},{kind:"method",key:"render",value:function(){return(0,n.dy)(s||(s=l` ${0} <slot></slot> `),this.header?(0,n.dy)(d||(d=l`<h1 class="card-header">${0}</h1>`),this.header):n.Ld)}}]}}),n.oi)},20130:function(t,e,i){var a=i(61701),n=i(72621),o=(i(71695),i(47021),i(39785)),r=i(52876),s=i(50778),d=i(57243),l=i(5111);let c,h,u,p=t=>t;(0,a.Z)([(0,s.Mo)("ha-fab")],(function(t,e){class i extends e{constructor(...e){super(...e),t(this)}}return{F:i,d:[{kind:"method",key:"firstUpdated",value:function(t){(0,n.Z)(i,"firstUpdated",this,3)([t]),this.style.setProperty("--mdc-theme-secondary","var(--primary-color)")}},{kind:"field",static:!0,key:"styles",value(){return[r.W,(0,d.iv)(c||(c=p`:host .mdc-fab--extended .mdc-fab__icon{margin-inline-start:-8px;margin-inline-end:12px;direction:var(--direction)}:disabled{--mdc-theme-secondary:var(--disabled-text-color);pointer-events:none}`)),"rtl"===l.E.document.dir?(0,d.iv)(h||(h=p`:host .mdc-fab--extended .mdc-fab__icon{direction:rtl}`)):(0,d.iv)(u||(u=p``))]}}]}}),o._)},7285:function(t,e,i){i.d(e,{M:()=>p});var a=i(61701),n=i(72621),o=(i(71695),i(47021),i(65703)),r=i(46289),s=i(57243),d=i(50778);let l,c,h,u=t=>t,p=(0,a.Z)([(0,d.Mo)("ha-list-item")],(function(t,e){class i extends e{constructor(...e){super(...e),t(this)}}return{F:i,d:[{kind:"method",key:"renderRipple",value:function(){return this.noninteractive?"":(0,n.Z)(i,"renderRipple",this,3)([])}},{kind:"get",static:!0,key:"styles",value:function(){return[r.W,(0,s.iv)(l||(l=u`:host{padding-left:var(--mdc-list-side-padding-left,var(--mdc-list-side-padding,20px));padding-inline-start:var(--mdc-list-side-padding-left,var(--mdc-list-side-padding,20px));padding-right:var(--mdc-list-side-padding-right,var(--mdc-list-side-padding,20px));padding-inline-end:var(--mdc-list-side-padding-right,var(--mdc-list-side-padding,20px))}:host([graphic=avatar]:not([twoLine])),:host([graphic=icon]:not([twoLine])){height:48px}span.material-icons:first-of-type{margin-inline-start:0px!important;margin-inline-end:var(--mdc-list-item-graphic-margin,16px)!important;direction:var(--direction)!important}span.material-icons:last-of-type{margin-inline-start:auto!important;margin-inline-end:0px!important;direction:var(--direction)!important}.mdc-deprecated-list-item__meta{display:var(--mdc-list-item-meta-display);align-items:center;flex-shrink:0}:host([graphic=icon]:not([twoline])) .mdc-deprecated-list-item__graphic{margin-inline-end:var(--mdc-list-item-graphic-margin,20px)!important}:host([multiline-secondary]){height:auto}:host([multiline-secondary]) .mdc-deprecated-list-item__text{padding:8px 0}:host([multiline-secondary]) .mdc-deprecated-list-item__secondary-text{text-overflow:initial;white-space:normal;overflow:auto;display:inline-block;margin-top:10px}:host([multiline-secondary]) .mdc-deprecated-list-item__primary-text{margin-top:10px}:host([multiline-secondary]) .mdc-deprecated-list-item__secondary-text::before{display:none}:host([multiline-secondary]) .mdc-deprecated-list-item__primary-text::before{display:none}:host([disabled]){color:var(--disabled-text-color)}:host([noninteractive]){pointer-events:unset}`)),"rtl"===document.dir?(0,s.iv)(c||(c=u`span.material-icons:first-of-type,span.material-icons:last-of-type{direction:rtl!important;--direction:rtl}`)):(0,s.iv)(h||(h=u``))]}}]}}),o.K)},17170:function(t,e,i){i.a(t,(async function(t,a){try{i.r(e),i.d(e,{HaSpinner:()=>p});var n=i(61701),o=i(72621),r=(i(71695),i(47021),i(97677)),s=i(43580),d=i(57243),l=i(50778),c=t([r]);r=(c.then?(await c)():c)[0];let h,u=t=>t,p=(0,n.Z)([(0,l.Mo)("ha-spinner")],(function(t,e){class i extends e{constructor(...e){super(...e),t(this)}}return{F:i,d:[{kind:"field",decorators:[(0,l.Cb)()],key:"size",value:void 0},{kind:"method",key:"updated",value:function(t){if((0,o.Z)(i,"updated",this,3)([t]),t.has("size"))switch(this.size){case"tiny":this.style.setProperty("--ha-spinner-size","16px");break;case"small":this.style.setProperty("--ha-spinner-size","28px");break;case"medium":this.style.setProperty("--ha-spinner-size","48px");break;case"large":this.style.setProperty("--ha-spinner-size","68px");break;case void 0:this.style.removeProperty("--ha-progress-ring-size")}}},{kind:"field",static:!0,key:"styles",value(){return[s.Z,(0,d.iv)(h||(h=u`: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)}`))]}}]}}),r.Z);a()}catch(h){a(h)}}))},56032:function(t,e,i){i.a(t,(async function(t,e){try{var a=i(61701),n=(i(71695),i(47021),i(80519)),o=i(1261),r=i(57243),s=i(50778),d=i(85605),l=t([n]);n=(l.then?(await l)():l)[0];let c,h=t=>t;(0,d.jx)("tooltip.show",{keyframes:[{opacity:0},{opacity:1}],options:{duration:150,easing:"ease"}}),(0,d.jx)("tooltip.hide",{keyframes:[{opacity:1},{opacity:0}],options:{duration:400,easing:"ease"}});(0,a.Z)([(0,s.Mo)("ha-tooltip")],(function(t,e){return{F:class extends e{constructor(...e){super(...e),t(this)}},d:[{kind:"field",static:!0,key:"styles",value(){return[o.Z,(0,r.iv)(c||(c=h`:host{--sl-tooltip-background-color:var(--secondary-background-color);--sl-tooltip-color:var(--primary-text-color);--sl-tooltip-font-family:Roboto,sans-serif;--sl-tooltip-font-size:12px;--sl-tooltip-font-weight:normal;--sl-tooltip-line-height:1;--sl-tooltip-padding:8px;--sl-tooltip-border-radius:var(--ha-tooltip-border-radius, 4px);--sl-tooltip-arrow-size:var(--ha-tooltip-arrow-size, 8px);--sl-z-index-tooltip:var(--ha-tooltip-z-index, 1000)}`))]}}]}}),n.Z);e()}catch(c){e(c)}}))},66929:function(t,e,i){i.d(e,{Ij:()=>n,S7:()=>a});i(19423);const a=(t,e)=>t.callWS(Object.assign({type:"config/core/update"},e)),n=t=>t.callApi("POST","config/core/check_config")},69919:function(t,e,i){i.a(t,(async function(t,a){try{i.d(e,{EX:()=>p,Fj:()=>x,M$:()=>w,SO:()=>m,Sk:()=>f,TN:()=>$,UJ:()=>g,Ym:()=>z,hF:()=>y});i(19083),i(61893),i(9359),i(56475),i(70104),i(40251);var n=i(73358),o=i(73850),r=i(59847),s=i(75278),d=i(50602),l=i(1416),c=i(76131),h=i(72473),u=t([d]);d=(u.then?(await u)():u)[0];let p=function(t){return t[t.INSTALL=1]="INSTALL",t[t.SPECIFIC_VERSION=2]="SPECIFIC_VERSION",t[t.PROGRESS=4]="PROGRESS",t[t.BACKUP=8]="BACKUP",t[t.RELEASE_NOTES=16]="RELEASE_NOTES",t}({});const m=t=>(0,s.e)(t,p.PROGRESS)&&null!==t.attributes.update_percentage,y=(t,e=!1)=>(t.state===n.uo||e&&Boolean(t.attributes.skipped_version))&&(0,s.e)(t,p.INSTALL),f=t=>!!t.attributes.in_progress,g=(t,e)=>t.callWS({type:"update/release_notes",entity_id:e}),v="ioBroker Core",_="ioBroker Supervisor",b="ioBroker Operating System",k=(t,e)=>Object.values(t).filter((t=>"update"===(0,r.N)(t))).sort(((t,i)=>t.attributes.title===v?-3:i.attributes.title===v?3:t.attributes.title===b?-2:i.attributes.title===b?2:t.attributes.title===_?-1:i.attributes.title===_?1:(0,l.fe)(t.attributes.title||t.attributes.friendly_name||"",i.attributes.title||i.attributes.friendly_name||"",e))),x=(t,e=!1)=>k(t).filter((t=>y(t,e))),w=async(t,e)=>{const i=k(e.states,e.locale.language).map((t=>t.entity_id));if(!i.length)return void(0,c.showAlertDialog)(t,{title:e.localize("ui.panel.config.updates.no_update_entities.title"),text:e.localize("ui.panel.config.updates.no_update_entities.description"),warning:!0});(0,h.C)(t,{message:e.localize("ui.panel.config.updates.checking_updates")});let a=0;const n=await e.connection.subscribeEvents((i=>{"update"===(0,o.M)(i.data.entity_id)&&(a++,(0,h.C)(t,{message:e.localize("ui.panel.config.updates.updates_refreshed",{count:a})}))}),"state_changed");await e.callService("homeassistant","update_entity",{entity_id:i}),await new Promise((t=>{setTimeout(t,15e3)})),n(),0===a&&(0,h.C)(t,{message:e.localize("ui.panel.config.updates.no_new_updates")})},z=(t,e)=>{const i=t.state,a=t.attributes;if("off"===i){return a.latest_version&&a.skipped_version===a.latest_version?a.latest_version:e.formatEntityState(t)}if("on"===i&&f(t)){return(0,s.e)(t,p.PROGRESS)&&null!==a.update_percentage?e.localize("ui.card.update.installing_with_progress",{progress:(0,d.uf)(a.update_percentage,e.locale,{maximumFractionDigits:a.display_precision,minimumFractionDigits:a.display_precision})}):e.localize("ui.card.update.installing")}return e.formatEntityState(t)},$=(t,e)=>{var i;if("hassio"!==(null===(i=e[t.entity_id])||void 0===i?void 0:i.domain))return"generic";const a=t.attributes.title||"";return a===v?"home_assistant":[v,_,b].includes(a)?"generic":"addon"};a()}catch(p){a(p)}}))},5374:function(t,e,i){i.d(e,{$H:()=>o,Bf:()=>r,Pc:()=>c,fT:()=>l,vp:()=>s,zt:()=>n});i(19423);var a=i(83523);const n=t=>t.callWS({type:"zone/list"}),o=(t,e)=>t.callWS(Object.assign({type:"zone/create"},e)),r=(t,e,i)=>t.callWS(Object.assign({type:"zone/update",zone_id:e},i)),s=(t,e)=>t.callWS({type:"zone/delete",zone_id:e});let d;const l=t=>{d=t,(0,a.c)("/config/zone/new")},c=()=>{const t=d;return d=void 0,t}},75375:function(t,e,i){i.a(t,(async function(t,a){try{i.r(e);var n=i(61701),o=(i(71695),i(47021),i(57243)),r=i(50778),s=i(17170),d=(i(54202),i(43344),i(28008)),l=t([s]);s=(l.then?(await l)():l)[0];let c,h,u,p,m,y,f=t=>t;(0,n.Z)([(0,r.Mo)("hass-loading-screen")],(function(t,e){return{F:class extends e{constructor(...e){super(...e),t(this)}},d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean,attribute:"no-toolbar"})],key:"noToolbar",value(){return!1}},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"rootnav",value(){return!1}},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"narrow",value(){return!1}},{kind:"field",decorators:[(0,r.Cb)()],key:"message",value:void 0},{kind:"method",key:"render",value:function(){var t;return(0,o.dy)(c||(c=f` ${0} <div class="content"> <ha-spinner></ha-spinner> ${0} </div> `),this.noToolbar?"":(0,o.dy)(h||(h=f`<div class="toolbar"> ${0} </div>`),this.rootnav||null!==(t=history.state)&&void 0!==t&&t.root?(0,o.dy)(u||(u=f` <ha-menu-button .hass="${0}" .narrow="${0}"></ha-menu-button> `),this.hass,this.narrow):(0,o.dy)(p||(p=f` <ha-icon-button-arrow-prev .hass="${0}" ="${0}"></ha-icon-button-arrow-prev> `),this.hass,this._handleBack)),this.message?(0,o.dy)(m||(m=f`<div id="loading-text">${0}</div>`),this.message):o.Ld)}},{kind:"method",key:"_handleBack",value:function(){history.back()}},{kind:"get",static:!0,key:"styles",value:function(){return[d.Qx,(0,o.iv)(y||(y=f`:host{display:block;height:100%;background-color:var(--primary-background-color)}.toolbar{display:flex;align-items:center;font-size:20px;height:var(--header-height);padding:8px 12px;pointer-events:none;background-color:var(--app-header-background-color);font-weight:400;color:var(--app-header-text-color,#fff);border-bottom:var(--app-header-border-bottom,none);box-sizing:border-box} (max-width:599px){.toolbar{padding:4px}}ha-icon-button-arrow-prev,ha-menu-button{pointer-events:auto}.content{height:calc(100% - var(--header-height));display:flex;flex-direction:column;align-items:center;justify-content:center}#loading-text{max-width:350px;margin-top:16px}`))]}}]}}),o.oi);a()}catch(c){a(c)}}))},98241:function(t,e,i){var a=i(61701),n=(i(71695),i(47021),i(57243)),o=i(50778),r=i(35359);let s,d,l=t=>t;(0,a.Z)([(0,o.Mo)("ha-config-section")],(function(t,e){return{F:class extends e{constructor(...e){super(...e),t(this)}},d:[{kind:"field",decorators:[(0,o.Cb)({attribute:"is-wide",type:Boolean})],key:"isWide",value(){return!1}},{kind:"field",decorators:[(0,o.Cb)({type:Boolean})],key:"vertical",value(){return!1}},{kind:"field",decorators:[(0,o.Cb)({type:Boolean,attribute:"full-width"})],key:"fullWidth",value(){return!1}},{kind:"method",key:"render",value:function(){return(0,n.dy)(s||(s=l` <div class="content ${0}"> <div class="header"><slot name="header"></slot></div> <div class="together layout ${0}"> <div class="intro"><slot name="introduction"></slot></div> <div class="panel flex-auto"><slot></slot></div> </div> </div> `),(0,r.$)({narrow:!this.isWide,"full-width":this.fullWidth}),(0,r.$)({narrow:!this.isWide,vertical:this.vertical||!this.isWide,horizontal:!this.vertical&&this.isWide}))}},{kind:"field",static:!0,key:"styles",value(){return(0,n.iv)(d||(d=l`:host{display:block}.content{padding:28px 20px 0;max-width:1040px;margin:0 auto}.layout{display:flex}.horizontal{flex-direction:row}.vertical{flex-direction:column}.flex-auto{flex:1 1 auto}.header{font-family:var(--paper-font-headline_-_font-family);-webkit-font-smoothing:var(--paper-font-headline_-_-webkit-font-smoothing);font-size:var(--paper-font-headline_-_font-size);font-weight:var(--paper-font-headline_-_font-weight);letter-spacing:var(--paper-font-headline_-_letter-spacing);line-height:var(--paper-font-headline_-_line-height);opacity:var(--dark-primary-opacity)}.together{margin-top:var(--config-section-content-together-margin-top,32px)}.intro{font-family:var(--paper-font-subhead_-_font-family);-webkit-font-smoothing:var(--paper-font-subhead_-_-webkit-font-smoothing);font-weight:var(--paper-font-subhead_-_font-weight);line-height:var(--paper-font-subhead_-_line-height);width:100%;opacity:var(--dark-primary-opacity);font-size:14px;padding-bottom:20px}.horizontal .intro{max-width:400px;margin-right:40px;margin-inline-end:40px;margin-inline-start:initial}.panel{margin-top:-24px}.panel ::slotted(*){margin-top:24px;display:block}.narrow.content{max-width:640px}.narrow .together{margin-top:var(--config-section-narrow-content-together-margin-top,var(--config-section-content-together-margin-top,20px))}.narrow .intro{padding-bottom:20px;margin-right:0;margin-inline-end:0;margin-inline-start:initial;max-width:500px}.full-width{padding:0}.full-width .layout{flex-direction:column}`))}}]}}),n.oi)},4507:function(t,e,i){i.a(t,(async function(t,a){try{i.r(e),i.d(e,{HaConfigZone:()=>H});var n=i(61701),o=i(72621),r=(i(19083),i(71695),i(61893),i(9359),i(56475),i(1331),i(70104),i(19423),i(40251),i(19134),i(61006),i(47706),i(88044),i(47021),i(71513),i(75656),i(50100),i(18084),i(2060),i(57243)),s=i(50778),d=i(27486),l=i(59847),c=i(87707),h=i(83523),u=i(1416),p=(i(54977),i(20130),i(23334),i(7285),i(37583),i(56032)),m=i(5346),y=i(66929),f=i(63318),g=i(5374),v=i(76131),_=i(75375),b=(i(97546),i(6736)),k=(i(98241),i(82967)),x=i(95374),w=i(98420),z=t([p,m,_]);[p,m,_]=z.then?(await z)():z;let $,E,C,S,I,Z,P,L,N,F,D,T=t=>t;const B="M20.71,7.04C21.1,6.65 21.1,6 20.71,5.63L18.37,3.29C18,2.9 17.35,2.9 16.96,3.29L15.12,5.12L18.87,8.87M3,17.25V21H6.75L17.81,9.93L14.06,6.18L3,17.25Z",M="M18.66,2C18.4,2 18.16,2.09 17.97,2.28L16.13,4.13L19.88,7.88L21.72,6.03C22.11,5.64 22.11,5 21.72,4.63L19.38,2.28C19.18,2.09 18.91,2 18.66,2M3.28,4L2,5.28L8.5,11.75L4,16.25V20H7.75L12.25,15.5L18.72,22L20,20.72L13.5,14.25L9.75,10.5L3.28,4M15.06,5.19L11.03,9.22L14.78,12.97L18.81,8.94L15.06,5.19Z",O="M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z";let H=(0,n.Z)([(0,s.Mo)("ha-config-zone")],(function(t,e){class i extends e{constructor(...e){super(...e),t(this)}}return{F:i,d:[{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,s.Cb)({attribute:"is-wide",type:Boolean})],key:"isWide",value(){return!1}},{kind:"field",decorators:[(0,s.Cb)({type:Boolean})],key:"narrow",value(){return!1}},{kind:"field",decorators:[(0,s.Cb)({attribute:!1})],key:"route",value:void 0},{kind:"field",decorators:[(0,s.SB)()],key:"_searchParms",value(){return new URLSearchParams(window.location.search)}},{kind:"field",decorators:[(0,s.SB)()],key:"_storageItems",value:void 0},{kind:"field",decorators:[(0,s.SB)()],key:"_stateItems",value:void 0},{kind:"field",decorators:[(0,s.SB)()],key:"_activeEntry",value(){return""}},{kind:"field",decorators:[(0,s.SB)()],key:"_canEditCore",value(){return!1}},{kind:"field",decorators:[(0,s.IO)("ha-locations-editor")],key:"_map",value:void 0},{kind:"field",key:"_regEntities",value(){return[]}},{kind:"field",key:"_getZones",value(){return(0,d.Z)(((t,e)=>{const i=getComputedStyle(this),a=i.getPropertyValue("--accent-color"),n=i.getPropertyValue("--secondary-text-color"),o=i.getPropertyValue("--primary-color"),r=e.map((t=>({id:t.entity_id,icon:t.attributes.icon,name:t.attributes.friendly_name||t.entity_id,latitude:t.attributes.latitude,longitude:t.attributes.longitude,radius:t.attributes.radius,radius_color:"zone.home"===t.entity_id?o:t.attributes.passive?n:a,location_editable:"zone.home"===t.entity_id&&this._canEditCore,radius_editable:"zone.home"===t.entity_id&&this._canEditCore})));return t.map((t=>Object.assign(Object.assign({},t),{},{radius_color:t.passive?n:a,location_editable:!0,radius_editable:!0}))).concat(r)}))}},{kind:"method",key:"hassSubscribe",value:function(){return[(0,f.LM)(this.hass.connection,(t=>{this._regEntities=t.map((t=>t.entity_id)),this._filterStates()}))]}},{kind:"method",key:"render",value:function(){if(!this.hass||void 0===this._storageItems||void 0===this._stateItems)return(0,r.dy)($||($=T`<hass-loading-screen></hass-loading-screen>`));const t=this.hass,e=0===this._storageItems.length&&0===this._stateItems.length?(0,r.dy)(E||(E=T` <div class="empty"> ${0} <br> <mwc-button ="${0}"> ${0}</mwc-button> </div> `),t.localize("ui.panel.config.zone.no_zones_created_yet"),this._createZone,t.localize("ui.panel.config.zone.create_zone")):(0,r.dy)(C||(C=T` <mwc-list> ${0} ${0} </mwc-list> `),this._storageItems.map((e=>(0,r.dy)(S||(S=T` <ha-list-item .entry="${0}" .id="${0}" graphic="icon" .hasMeta="${0}" -selected="${0}" .value="${0}" ?selected="${0}"> <ha-icon .icon="${0}" slot="graphic"></ha-icon> ${0} ${0} </ha-list-item> `),e,this.narrow?e.id:"",!this.narrow,this._itemClicked,e.id,this._activeEntry===e.id,e.icon,e.name,this.narrow?"":(0,r.dy)(I||(I=T` <div slot="meta"> <ha-icon-button .id="${0}" .entry="${0}" ="${0}" .path="${0}" .label="${0}"></ha-icon-button> </div> `),e.id,e,this._openEditEntry,B,t.localize("ui.panel.config.zone.edit_zone"))))),this._stateItems.map((e=>(0,r.dy)(Z||(Z=T` <ha-list-item graphic="icon" .id="${0}" .hasMeta="${0}" .value="${0}" -selected="${0}" ?selected="${0}" .noEdit="${0}"> <ha-icon .icon="${0}" slot="graphic"> </ha-icon> ${0} ${0} </ha-list-item> `),this.narrow?e.entity_id:"",!this.narrow||"zone.home"!==e.entity_id,e.entity_id,this._stateItemClicked,this._activeEntry===e.entity_id,"zone.home"!==e.entity_id||!this._canEditCore,e.attributes.icon,e.attributes.friendly_name||e.entity_id,this.narrow&&"zone.home"===e.entity_id&&!this._canEditCore?r.Ld:(0,r.dy)(P||(P=T`<ha-tooltip slot="meta" placement="left" .content="${0}" .disabled="${0}" hoist> <ha-icon-button .id="${0}" .entityId="${0}" .noEdit="${0}" .path="${0}" .label="${0}" ="${0}"></ha-icon-button> </ha-tooltip>`),t.localize("ui.panel.config.zone.configured_in_yaml"),"zone.home"===e.entity_id,this.narrow?"":e.entity_id,e.entity_id,"zone.home"!==e.entity_id||!this._canEditCore,"zone.home"===e.entity_id&&this._canEditCore?B:M,"zone.home"===e.entity_id?t.localize("ui.panel.config.zone.edit_home"):t.localize("ui.panel.config.zone.edit_zone"),this._editHomeZone)))));return(0,r.dy)(L||(L=T` <hass-tabs-subpage .hass="${0}" .narrow="${0}" .route="${0}" .backPath="${0}" .tabs="${0}"> ${0} ${0} <ha-fab slot="fab" .label="${0}" extended ="${0}"> <ha-svg-icon slot="icon" .path="${0}"></ha-svg-icon> </ha-fab> </hass-tabs-subpage> `),this.hass,this.narrow,this.route,this._searchParms.has("historyBack")?void 0:"/config",k.configSections.areas,this.narrow?(0,r.dy)(N||(N=T` <ha-config-section .isWide="${0}"> <span slot="introduction"> ${0} </span> <ha-card outlined>${0}</ha-card> </ha-config-section> `),this.isWide,t.localize("ui.panel.config.zone.introduction"),e):"",this.narrow?"":(0,r.dy)(F||(F=T` <div class="flex"> <ha-locations-editor .hass="${0}" .locations="${0}" -updated="${0}" -updated="${0}" -clicked="${0}"></ha-locations-editor> <div class="overflow">${0}</div> </div> `),this.hass,this._getZones(this._storageItems,this._stateItems),this._locationUpdated,this._radiusUpdated,this._markerClicked,e),t.localize("ui.panel.config.zone.create_zone"),this._createZone,O)}},{kind:"method",key:"firstUpdated",value:function(t){var e;(0,o.Z)(i,"firstUpdated",this,3)([t]),this._canEditCore=Boolean(null===(e=this.hass.user)||void 0===e?void 0:e.is_admin)&&["storage","default"].includes(this.hass.config.config_source),this._fetchData(),"/new"===this.route.path&&((0,h.c)("/config/zone",{replace:!0}),this._createZone())}},{kind:"method",key:"updated",value:function(){if(!this.route.path.startsWith("/edit/")||!this._stateItems||!this._storageItems)return;const t=this.route.path.slice(6);this._editZone(t),(0,h.c)("/config/zone",{replace:!0}),this.narrow||this._zoomZone(t)}},{kind:"method",key:"willUpdate",value:function(t){(0,o.Z)(i,"updated",this,3)([t]);const e=t.get("hass");e&&this._stateItems&&this._getStates(e)}},{kind:"method",key:"_fetchData",value:async function(){this._storageItems=(await(0,g.zt)(this.hass)).sort(((t,e)=>(0,u.$K)(t.name,e.name,this.hass.locale.language))),this._getStates()}},{kind:"method",key:"_getStates",value:function(t){let e=!1;const i=Object.values(this.hass.states).filter((i=>"zone"===(0,l.N)(i)&&((null==t?void 0:t.states[i.entity_id])!==i&&(e=!0),!this._regEntities.includes(i.entity_id))));e&&(this._stateItems=i)}},{kind:"method",key:"_filterStates",value:function(){if(!this._stateItems)return;const t=this._stateItems.filter((t=>!this._regEntities.includes(t.entity_id)));t.length!==this._stateItems.length&&(this._stateItems=t)}},{kind:"method",key:"_locationUpdated",value:async function(t){if(this._activeEntry=t.detail.id,"zone.home"===t.detail.id&&this._canEditCore)return void(await(0,y.S7)(this.hass,{latitude:t.detail.location[0],longitude:t.detail.location[1]}));const e=this._storageItems.find((e=>e.id===t.detail.id));e&&this._updateEntry(e,{latitude:t.detail.location[0],longitude:t.detail.location[1]})}},{kind:"method",key:"_radiusUpdated",value:async function(t){if(this._activeEntry=t.detail.id,"zone.home"===t.detail.id&&this._canEditCore)return void(await(0,y.S7)(this.hass,{radius:Math.round(t.detail.radius)}));const e=this._storageItems.find((e=>e.id===t.detail.id));e&&this._updateEntry(e,{radius:t.detail.radius})}},{kind:"method",key:"_markerClicked",value:function(t){this._activeEntry=t.detail.id}},{kind:"method",key:"_createZone",value:function(){this._openDialog()}},{kind:"method",key:"_itemClicked",value:function(t){if(!(0,c.Q)(t))return;if(this.narrow)return void this._openEditEntry(t);const e=t.currentTarget.value;this._zoomZone(e),this._activeEntry=e}},{kind:"method",key:"_stateItemClicked",value:function(t){if(!(0,c.Q)(t))return;const e=t.currentTarget.value;this.narrow&&"zone.home"===e?this._editHomeZone(t):(this._zoomZone(e),this._activeEntry=e)}},{kind:"method",key:"_zoomZone",value:async function(t){var e;null===(e=this._map)||void 0===e||e.fitMarker(t)}},{kind:"method",key:"_editZone",value:async function(t){var e;await this.updateComplete,null===(e=this.shadowRoot)||void 0===e||null===(e=e.querySelector(`[id="${t}"]`))||void 0===e||e.click()}},{kind:"method",key:"_openEditEntry",value:function(t){const e=t.currentTarget.entry;this._openDialog(e),t.stopPropagation()}},{kind:"method",key:"_editHomeZone",value:async function(t){t.currentTarget.noEdit?(0,v.showAlertDialog)(this,{title:this.hass.localize("ui.panel.config.zone.can_not_edit"),text:this.hass.localize("ui.panel.config.zone.configured_in_yaml")}):(0,x.q)(this,{updateEntry:t=>this._updateHomeZoneEntry(t)})}},{kind:"method",key:"_createEntry",value:async function(t){var e,i;const a=await(0,g.$H)(this.hass,t);this._storageItems=this._storageItems.concat(a).sort(((t,e)=>(0,u.$K)(t.name,e.name,this.hass.locale.language))),this.narrow||(this._activeEntry=a.id,await this.updateComplete,await(null===(e=this._map)||void 0===e?void 0:e.updateComplete),null===(i=this._map)||void 0===i||i.fitMarker(a.id))}},{kind:"method",key:"_updateHomeZoneEntry",value:async function(t){await(0,y.S7)(this.hass,{latitude:t.latitude,longitude:t.longitude,radius:t.radius}),this._zoomZone("zone.home")}},{kind:"method",key:"_updateEntry",value:async function(t,e,i=!1){var a,n;const o=await(0,g.Bf)(this.hass,t.id,e);this._storageItems=this._storageItems.map((e=>e===t?o:e)),!this.narrow&&i&&(this._activeEntry=t.id,await this.updateComplete,await(null===(a=this._map)||void 0===a?void 0:a.updateComplete),null===(n=this._map)||void 0===n||n.fitMarker(t.id))}},{kind:"method",key:"_removeEntry",value:async function(t){if(!(await(0,v.showConfirmationDialog)(this,{title:this.hass.localize("ui.panel.config.zone.confirm_delete"),dismissText:this.hass.localize("ui.common.cancel"),confirmText:this.hass.localize("ui.common.delete"),destructive:!0})))return!1;try{var e;if(await(0,g.vp)(this.hass,t.id),this._storageItems=this._storageItems.filter((e=>e!==t)),!this.narrow)null===(e=this._map)||void 0===e||e.fitMap();return!0}catch(i){return!1}}},{kind:"method",key:"_openDialog",value:async function(t){(0,w.K)(this,{entry:t,createEntry:t=>this._createEntry(t),updateEntry:t?e=>this._updateEntry(t,e,!0):void 0,removeEntry:t?()=>this._removeEntry(t):void 0})}},{kind:"field",static:!0,key:"styles",value(){return(0,r.iv)(D||(D=T`hass-loading-screen{--app-header-background-color:var(--sidebar-background-color);--app-header-text-color:var(--sidebar-text-color)}ha-list-item{--mdc-list-item-meta-size:48px}a{color:var(--primary-color)}ha-card{margin:16px auto;overflow:hidden}ha-icon,ha-icon-button:not([disabled]){color:var(--secondary-text-color)}ha-icon-button{--mdc-theme-text-disabled-on-light:var(--disabled-text-color)}.empty{text-align:center;padding:8px}.flex{display:flex;height:100%}.overflow{height:100%;overflow:auto}ha-locations-editor{flex-grow:1;height:100%}.flex mwc-list{padding-bottom:64px}.flex .empty,.flex mwc-list{border-left:1px solid var(--divider-color);width:250px;min-height:100%;box-sizing:border-box}ha-card{margin-bottom:100px}ha-tooltip{display:block}`))}}]}}),(0,b.f)(r.oi));a()}catch($){a($)}}))},95374:function(t,e,i){i.d(e,{q:()=>o});i(71695),i(40251),i(47021);var a=i(36522);const n=()=>Promise.all([i.e("97983"),i.e("29273"),i.e("63055"),i.e("76255")]).then(i.bind(i,40468)),o=(t,e)=>{(0,a.B)(t,"show-dialog",{dialogTag:"dialog-home-zone-detail",dialogImport:n,dialogParams:e})}},98420:function(t,e,i){i.d(e,{K:()=>o});i(71695),i(40251),i(47021);var a=i(36522);const n=()=>Promise.all([i.e("97983"),i.e("72172"),i.e("63055"),i.e("92977")]).then(i.bind(i,71779)),o=(t,e)=>{(0,a.B)(t,"show-dialog",{dialogTag:"dialog-zone-detail",dialogImport:n,dialogParams:e})}},16485:function(t,e,i){i.a(t,(async function(t,e){try{i(71695),i(92745),i(40251),i(47021);var a=i(61449),n=i(40574),o=i(30532),r=i(41674),s=i(49722),d=i(76632),l=i(7884),c=i(35185),h=i(65401),u=i(44180),p=i(49447);const t=async()=>{const t=(0,u.sS)(),e=[];(0,o.shouldPolyfill)()&&await Promise.all([i.e("80210"),i.e("74055")]).then(i.bind(i,98133)),(0,s.shouldPolyfill)()&&await Promise.all([i.e("2142"),i.e("75297"),i.e("80210"),i.e("60251")]).then(i.bind(i,59095)),(0,a.shouldPolyfill)(t)&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("68250")]).then(i.bind(i,80561)).then((()=>(0,p.H)()))),(0,h.shouldPolyfill)()&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("65578")]).then(i.bind(i,97995))),(0,n.shouldPolyfill)(t)&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("59826")]).then(i.bind(i,31514))),(0,r.shouldPolyfill)(t)&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("23649")]).then(i.bind(i,93840))),(0,d.shouldPolyfill)(t)&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("42831")]).then(i.bind(i,29559))),(0,l.shouldPolyfill)(t)&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("57377")]).then(i.bind(i,39030)).then((()=>i.e("61236").then(i.t.bind(i,4121,23))))),(0,c.shouldPolyfill)(t)&&e.push(Promise.all([i.e("2142"),i.e("75297"),i.e("13870")]).then(i.bind(i,74546))),0!==e.length&&await Promise.all(e).then((()=>(0,p.n)(t)))};await t(),e()}catch(m){e(m)}}),1)},31948:function(t,e,i){i.a(t,(async function(t,e){try{i(71695),i(40251),i(47021);"function"!=typeof window.ResizeObserver&&(window.ResizeObserver=(await i.e("73378").then(i.bind(i,88198))).default),e()}catch(a){e(a)}}),1)}}]);
//# sourceMappingURL=91339.c8bb3f50acfa7c3c.js.map