UNPKG

iobroker.lovelace

Version:

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

1 lines 21.3 kB
"use strict";(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[3025],{27167:function(e,t,a){a.d(t,{A:function(){return o}});const i=e=>e<10?`0${e}`:e;function o(e){const t=Math.floor(e/3600),a=Math.floor(e%3600/60),o=Math.floor(e%3600%60);return t>0?`${t}:${i(a)}:${i(o)}`:a>0?`${a}:${i(o)}`:o>0?""+o:null}},15090:function(e,t,a){a.d(t,{nP:function(){return c},vB:function(){return s}});a(44114),a(26910),a(18111),a(22489),a(61701),a(17642),a(58004),a(33853),a(45876),a(32475),a(15024),a(31698),a(62953);var i=a(22675),o=a(52220),n=a(71727),r=a(69093);const s={alarm_control_panel:["armed_away","armed_custom_bypass","armed_home","armed_night","armed_vacation","arming","disarmed","disarming","pending","triggered"],alert:["on","off","idle"],assist_satellite:["idle","listening","responding","processing"],automation:["on","off"],binary_sensor:["on","off"],button:[],calendar:["on","off"],camera:["idle","recording","streaming"],cover:["closed","closing","open","opening"],device_tracker:["home","not_home"],fan:["on","off"],humidifier:["on","off"],infrared:[],input_boolean:["on","off"],input_button:[],lawn_mower:["error","paused","mowing","returning","docked"],light:["on","off"],lock:["jammed","locked","locking","unlocked","unlocking","opening","open"],media_player:["off","on","idle","playing","paused","standby","buffering"],person:["home","not_home"],plant:["ok","problem"],radio_frequency:[],remote:["on","off"],scene:[],schedule:["on","off"],script:["on","off"],siren:["on","off"],sun:["above_horizon","below_horizon"],switch:["on","off"],timer:["active","idle","paused"],update:["on","off"],vacuum:["cleaning","docked","error","idle","paused","returning"],valve:["closed","closing","open","opening"],weather:["clear-night","cloudy","exceptional","fog","hail","lightning-rainy","lightning","partlycloudy","pouring","rainy","snowy-rainy","snowy","sunny","windy-variant","windy"]},l={alarm_control_panel:{code_format:["number","text"]},binary_sensor:{device_class:["battery","battery_charging","co","cold","connectivity","door","garage_door","gas","heat","light","lock","moisture","motion","moving","occupancy","opening","plug","power","presence","problem","running","safety","smoke","sound","tamper","update","vibration","window"]},button:{device_class:["restart","update"]},camera:{frontend_stream_type:["hls","web_rtc"]},climate:{hvac_action:["off","idle","preheating","defrosting","heating","cooling","drying","fan"]},cover:{device_class:["awning","blind","curtain","damper","door","garage","gate","shade","shutter","window"]},device_tracker:{source_type:["bluetooth","bluetooth_le","gps","router"]},fan:{direction:["forward","reverse"]},humidifier:{device_class:["humidifier","dehumidifier"],action:["off","idle","humidifying","drying"]},media_player:{device_class:["tv","speaker","receiver"],media_content_type:["album","app","artist","channel","channels","composer","contributing_artist","episode","game","genre","image","movie","music","playlist","podcast","season","track","tvshow","url","video"],repeat:["off","one","all"]},number:{device_class:["temperature"]},sensor:{device_class:["apparent_power","aqi","battery","carbon_dioxide","carbon_monoxide","current","date","duration","energy","frequency","gas","humidity","illuminance","monetary","nitrogen_dioxide","nitrogen_monoxide","nitrous_oxide","ozone","ph","pm1","pm10","pm25","pm4","power_factor","power","pressure","reactive_power","signal_strength","sulphur_dioxide","temperature","timestamp","uptime","volatile_organic_compounds","volatile_organic_compounds_parts","voltage","volume_flow_rate"],state_class:["measurement","total","total_increasing"]},switch:{device_class:["outlet","switch"]},update:{device_class:["firmware"]},water_heater:{away_mode:["on","off"]}},c=(e,t,a=void 0)=>{const c=(0,r.t)(t),d=[];switch(d.push(...((e,t,a)=>{const r=[];switch(a||r.push(i.Hh,i.HV),!a&&t in s?r.push(...s[t]):a&&t in l&&a in l[t]&&r.push(...l[t][a]),t){case"device_tracker":case"person":a||r.push(...Object.entries(e.states).filter(([e,t])=>"zone"===(0,n.m)(e)&&"zone.home"!==e&&t.attributes.friendly_name).map(([e,t])=>t.attributes.friendly_name).sort((t,a)=>(0,o.xL)(t,a,e.locale.language)))}return r})(e,c,a)),c){case"climate":a?"fan_mode"===a?d.push(...t.attributes.fan_modes):"preset_mode"===a?d.push(...t.attributes.preset_modes):"swing_mode"===a?d.push(...t.attributes.swing_modes):"swing_horizontal_mode"===a&&d.push(...t.attributes.swing_horizontal_modes):d.push(...t.attributes.hvac_modes);break;case"event":"event_type"===a&&d.push(...t.attributes.event_types);break;case"fan":"preset_mode"===a&&d.push(...t.attributes.preset_modes);break;case"humidifier":"mode"===a&&d.push(...t.attributes.available_modes);break;case"input_select":case"select":a||d.push(...t.attributes.options);break;case"light":"effect"===a&&t.attributes.effect_list?d.push(...t.attributes.effect_list):"color_mode"===a&&t.attributes.supported_color_modes&&d.push(...t.attributes.supported_color_modes);break;case"media_player":"sound_mode"===a?d.push(...t.attributes.sound_mode_list):"source"===a&&d.push(...t.attributes.source_list);break;case"remote":"current_activity"===a&&d.push(...t.attributes.activity_list);break;case"sensor":a||"enum"!==t.attributes.device_class||d.push(...t.attributes.options);break;case"vacuum":"fan_speed"===a&&d.push(...t.attributes.fan_speed_list);break;case"water_heater":a&&"operation_mode"!==a||d.push(...t.attributes.operation_list)}return[...new Set(d)]}},58234:function(e,t,a){a.a(e,async function(e,t){try{a(18111),a(20116),a(62953);var i=a(40445),o=a(5124),n=a(67576),r=a(6412),s=a(23832),l=a(27167),c=a(69093),d=a(28978),h=a(15090),u=a(22675),g=a(49141),b=(a(58388),a(93367)),p=e([b]);b=(p.then?(await p)():p)[0];let m,_,f,v,y,w=e=>e;const x="M13 14H11V9H13M13 18H11V16H13M1 21H23L12 2L1 21Z",k=["alarm_control_panel","device_tracker","person"],$=(e,t)=>(0,s.g)(k)(e)&&(0,s.g)(h.vB[e])(t)?`${e}.${t}`:null;class z extends o.WF{connectedCallback(){super.connectedCallback(),this._connected=!0,this._startInterval(this.state)}disconnectedCallback(){super.disconnectedCallback(),this._connected=!1,this._clearInterval()}render(){var e,t;const a=this.state;if(!a)return(0,o.qy)(m||(m=w` <ha-label-badge class="warning" label="${0}" description="${0}"> <ha-svg-icon .path="${0}"></ha-svg-icon> </ha-label-badge> `),this.hass.localize("state_badge.default.error"),this.hass.localize("state_badge.default.entity_not_found"),x);const i=(0,c.t)(a),n=null===(e=this.hass)||void 0===e?void 0:e.entities[a.entity_id],s=this.icon||this._computeShowIcon(i,a,n),l=this.icon?"":this.image?this.image:a.attributes.entity_picture_local||a.attributes.entity_picture,h=l||s?void 0:this._computeValue(i,a,n);return(0,o.qy)(_||(_=w` <ha-label-badge class="${0}" .image="${0}" .label="${0}" .description="${0}"> ${0} ${0} </ha-label-badge> `),(0,r.H)({[i]:!0,"has-unit_of_measurement":"unit_of_measurement"in a.attributes}),l,this._computeLabel(i,a,this._timerTimeRemaining),this.showName?null!==(t=this.name)&&void 0!==t?t:(0,d.u)(a):void 0,!l&&s?(0,o.qy)(f||(f=w`<ha-state-icon .icon="${0}" .stateObj="${0}"></ha-state-icon>`),this.icon,a):"",!h||l||s?"":(0,o.qy)(v||(v=w`<span class="${0}">${0}</span>`),h&&h.length>4?"big":"",h))}updated(e){super.updated(e),this._connected&&e.has("state")&&this._startInterval(this.state)}_computeValue(e,t,a){var i;switch(e){case"alarm_control_panel":case"binary_sensor":case"device_tracker":case"person":case"scene":case"sun":case"timer":return null;case"sensor":if("moon"===(null==a?void 0:a.platform))return null;default:return t.state===u.Hh||t.state===u.HV?"—":null===(i=this.hass.formatEntityStateToParts(t).find(e=>"value"===e.type))||void 0===i?void 0:i.value}}_computeShowIcon(e,t,a){if(t.state===u.Hh)return!1;switch(e){case"alarm_control_panel":case"binary_sensor":case"device_tracker":case"person":case"scene":case"sun":case"timer":return!0;case"sensor":return"moon"===(null==a?void 0:a.platform);default:return!1}}_computeLabel(e,t,a=0){var i;if(t.state===u.Hh||t.state===u.HV)return this.hass.localize(`state_badge.default.${t.state}`);const o=$(e,t.state);return o?this.hass.localize(`state_badge.${o}`):"person"===e||"device_tracker"===e?t.state:"timer"===e?(0,l.A)(a):(null===(i=this.hass.formatEntityStateToParts(t).find(e=>"unit"===e.type))||void 0===i?void 0:i.value)||null}_clearInterval(){this._updateRemaining&&(clearInterval(this._updateRemaining),this._updateRemaining=void 0)}_startInterval(e){this._clearInterval(),e&&"timer"===(0,c.t)(e)&&(this._calculateTimerRemaining(e),"active"===e.state&&(this._updateRemaining=window.setInterval(()=>this._calculateTimerRemaining(this.state),1e3)))}_calculateTimerRemaining(e){this._timerTimeRemaining=(0,g.ls)(e)}constructor(...e){super(...e),this.showName=!1}}z.styles=(0,o.AH)(y||(y=w`:host{cursor:pointer}.big{font-size:var(--ha-font-size-xs)}ha-label-badge{--ha-label-badge-color:var(--label-badge-red)}ha-label-badge.has-unit_of_measurement{--ha-label-badge-label-text-transform:none}ha-label-badge.binary_sensor{--ha-label-badge-color:var(--label-badge-blue)}.red{--ha-label-badge-color:var(--label-badge-red)}.blue{--ha-label-badge-color:var(--label-badge-blue)}.green{--ha-label-badge-color:var(--label-badge-green)}.yellow{--ha-label-badge-color:var(--label-badge-yellow)}.grey{--ha-label-badge-color:var(--label-badge-grey)}.warning{--ha-label-badge-color:var(--label-badge-yellow)}`)),(0,i.Cg)([(0,n.MZ)({attribute:!1})],z.prototype,"hass",void 0),(0,i.Cg)([(0,n.MZ)({attribute:!1})],z.prototype,"state",void 0),(0,i.Cg)([(0,n.MZ)()],z.prototype,"name",void 0),(0,i.Cg)([(0,n.MZ)()],z.prototype,"icon",void 0),(0,i.Cg)([(0,n.MZ)()],z.prototype,"image",void 0),(0,i.Cg)([(0,n.MZ)({attribute:"show-name",type:Boolean})],z.prototype,"showName",void 0),(0,i.Cg)([(0,n.wk)()],z.prototype,"_timerTimeRemaining",void 0),z=(0,i.Cg)([(0,n.EM)("ha-state-label-badge")],z),t()}catch(m){t(m)}})},24671:function(e,t,a){a(62953);var i=a(40445),o=a(5124),n=a(67576),r=a(6412),s=a(63672);a(54276);let l,c,d,h,u=e=>e;class g extends o.WF{render(){const e=this.label;return(0,o.qy)(l||(l=u` <div class="badge ${0}" role="${0}" tabindex="${0}"> <ha-ripple .disabled="${0}"></ha-ripple> <slot name="icon"></slot> ${0} </div> `),(0,r.H)({"icon-only":this.iconOnly}),(0,s.J)("button"===this.type?"button":void 0),(0,s.J)("button"===this.type?"0":void 0),"button"!==this.type,this.iconOnly?o.s6:(0,o.qy)(c||(c=u`<span class="info"> ${0} <span class="content"><slot></slot></span> </span>`),e?(0,o.qy)(d||(d=u`<span class="label">${0}</span>`),e):o.s6))}constructor(...e){super(...e),this.type="badge",this.iconOnly=!1}}g.styles=(0,o.AH)(h||(h=u`:host{--badge-color:var(--secondary-text-color);-webkit-tap-highlight-color:transparent}.badge{position:relative;--ha-ripple-color:var(--badge-color);--ha-ripple-hover-opacity:0.04;--ha-ripple-pressed-opacity:0.12;transition:box-shadow 180ms ease-in-out,border-color 180ms ease-in-out;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--ha-space-2);height:var(--ha-badge-size,36px);min-width:var(--ha-badge-size,36px);padding:0px 12px;box-sizing:border-box;width:auto;border-radius:var(--ha-badge-border-radius,calc(var(--ha-badge-size,36px)/ 2));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);border-width:var(--ha-card-border-width,1px);box-shadow:var(--ha-card-box-shadow,none);border-style:solid;border-color:var(--ha-card-border-color,var(--divider-color,#e0e0e0))}.badge:focus-visible{--shadow-default:var(--ha-card-box-shadow, 0 0 0 0 transparent);--shadow-focus:0 0 0 1px var(--badge-color);border-color:var(--badge-color);box-shadow:var(--shadow-default),var(--shadow-focus)}[role=button]{cursor:pointer}[role=button]:focus{outline:0}.info{display:flex;flex-direction:column;align-items:flex-start;padding-inline-start:initial;text-align:center}.label{font-size:var(--ha-font-size-xs);font-style:normal;font-weight:var(--ha-font-weight-medium);line-height:10px;letter-spacing:.1px;color:var(--secondary-text-color)}.content{font-size:var(--ha-badge-font-size, var(--ha-font-size-s));font-style:normal;font-weight:var(--ha-font-weight-medium);line-height:var(--ha-line-height-condensed);letter-spacing:.1px;color:var(--primary-text-color)}::slotted([slot=icon]){--mdc-icon-size:var(--ha-badge-icon-size, 18px);color:var(--badge-color);line-height:0;margin-left:-4px;margin-right:0;margin-inline-start:-4px;margin-inline-end:0}::slotted(img[slot=icon]){width:30px;height:30px;border-radius:var(--ha-border-radius-circle);object-fit:cover;overflow:hidden;margin-left:-10px;margin-right:0;margin-inline-start:-10px;margin-inline-end:0}.badge.icon-only{padding:0}.badge.icon-only ::slotted([slot=icon]){margin-left:0;margin-right:0;margin-inline-start:0;margin-inline-end:0}`)),(0,i.Cg)([(0,n.MZ)()],g.prototype,"type",void 0),(0,i.Cg)([(0,n.MZ)()],g.prototype,"label",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean,attribute:"icon-only"})],g.prototype,"iconOnly",void 0),g=(0,i.Cg)([(0,n.EM)("ha-badge")],g)},58388:function(e,t,a){a(89463);var i=a(40445),o=a(5124),n=a(67576),r=a(6412);let s,l,c,d,h=e=>e;class u extends o.WF{render(){return(0,o.qy)(s||(s=h` <div class="badge-container"> <div class="label-badge" id="badge"> <div class="value"> <slot></slot> </div> ${0} </div> ${0} </div> `),this.label?(0,o.qy)(l||(l=h` <div class="${0}"> <span>${0}</span> </div> `),(0,r.H)({label:!0,big:this.label.length>5}),this.label):"",this.description?(0,o.qy)(c||(c=h`<div class="title">${0}</div>`),this.description):"")}static get styles(){return[(0,o.AH)(d||(d=h`.badge-container{display:inline-block;text-align:center;vertical-align:top;padding:var(--ha-label-badge-padding,0 0 0 0)}.label-badge{position:relative;display:block;margin:0 auto;width:var(--ha-label-badge-size,2.5em);text-align:center;height:var(--ha-label-badge-size,2.5em);line-height:var(--ha-label-badge-size, 2.5em);font-size:var(--ha-label-badge-font-size, 1.5em);border-radius:var(--ha-label-badge-border-radius,50%);border:.1em solid var(--ha-label-badge-color,var(--primary-color));color:var(--label-badge-text-color,#4c4c4c);white-space:nowrap;background-color:var(--label-badge-background-color,#fff);background-size:cover;transition:border .3s ease-in-out}.label-badge .label.big span{font-size:90%;padding:10% 12% 7% 12%}.label-badge .value{font-size:90%;overflow:hidden;text-overflow:ellipsis}.label-badge .label{position:absolute;bottom:-1em;left:-.2em;right:-.2em;line-height:1em;font-size:.5em}.label-badge .label span{box-sizing:border-box;max-width:100%;display:inline-block;background-color:var(--ha-label-badge-color,var(--primary-color));color:var(--ha-label-badge-label-color,#fff);border-radius:var(--ha-border-radius-lg);padding:9% 16% 8% 16%;font-weight:var(--ha-font-weight-medium);overflow:hidden;text-transform:uppercase;text-overflow:ellipsis;transition:background-color .3s ease-in-out;text-transform:var(--ha-label-badge-label-text-transform,uppercase)}.badge-container .title{margin-top:1em;font-size:var(--ha-label-badge-title-font-size, .9em);width:var(--ha-label-badge-title-width,5em);font-weight:var(--ha-label-badge-title-font-weight,var(--ha-font-weight-normal));overflow:hidden;text-overflow:ellipsis;line-height:normal}`))]}updated(e){super.updated(e),e.has("image")&&(this.shadowRoot.getElementById("badge").style.backgroundImage=this.image?`url(${this.image})`:"")}}(0,i.Cg)([(0,n.MZ)()],u.prototype,"label",void 0),(0,i.Cg)([(0,n.MZ)()],u.prototype,"description",void 0),(0,i.Cg)([(0,n.MZ)()],u.prototype,"image",void 0),u=(0,i.Cg)([(0,n.EM)("ha-label-badge")],u)},17022:function(e,t,a){a.d(t,{A1:function(){return i},CY:function(){return r},Fn:function(){return o},Jz:function(){return l},St:function(){return s},VA:function(){return d},WI:function(){return h},iY:function(){return c},xw:function(){return n}});a(16280),a(3362);const i=(e,t)=>e.callWS({type:"media_source/resolve_media",media_content_id:t}),o=(e,t)=>e.callWS({type:"media_source/browse_media",media_content_id:t}),n="__MANUAL_ENTRY__",r=e=>e.startsWith(n),s=e=>e.startsWith("media-source://"),l=e=>e.startsWith("media-source://media_source"),c=e=>e.startsWith("media-source://image_upload"),d=async(e,t,a)=>{const i=new FormData;i.append("media_content_id",t),i.append("file",a);const o=await e.fetchWithAuth("/api/media_source/local_source/upload",{method:"POST",body:i});if(413===o.status)throw new Error(`Uploaded file is too large (${a.name})`);if(200!==o.status)throw new Error("Unknown error");return o.json()},h=async(e,t)=>e.callWS({type:"media_source/local_source/remove",media_content_id:t})},49141:function(e,t,a){a.d(t,{CR:function(){return r},PF:function(){return d},kL:function(){return n},ls:function(){return c},pZ:function(){return l},r9:function(){return s}});var i=a(90409),o=a(27167);const n=e=>e.callWS({type:"timer/list"}),r=(e,t)=>e.callWS(Object.assign({type:"timer/create"},t)),s=(e,t,a)=>e.callWS(Object.assign({type:"timer/update",timer_id:t},a)),l=(e,t)=>e.callWS({type:"timer/delete",timer_id:t}),c=e=>{if(!e.attributes.remaining)return;let t=(0,i.A)(e.attributes.remaining);if("active"===e.state){const a=(new Date).getTime(),i=new Date(e.attributes.finishes_at).getTime();t=Math.max((i-a)/1e3,0)}return t},d=(e,t,a)=>{if(!t)return null;if("idle"===t.state||0===a)return e.formatEntityState(t);let i=(0,o.A)(a||0)||"0";return"paused"===t.state&&(i=`${i} (${e.formatEntityState(t)})`),i}},67066:function(e,t,a){a.a(e,async function(e,i){try{a.d(t,{P8:function(){return Z},PV:function(){return W},rU:function(){return q},x2:function(){return E}});a(3362),a(62953);var o=a(40445),n=a(5124),r=a(67576),s=a(6412),l=a(89784),c=a(22786),d=a(78870),h=a(79468),u=a(71727),g=a(69093),b=a(47129),p=a(52658),m=(a(24671),a(54276),a(93367)),_=(a(67094),a(10897)),f=a(19037),v=a(13632),y=a(22064),w=a(97176),x=e([m]);m=(x.then?(await x)():x)[0];let k,$,z,C,M,H,A=e=>e;const S="M13,13H11V7H13M13,17H11V15H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z",q=["minimal","standard","complete"],W={type:"entity",show_name:!1,show_state:!0,show_icon:!0},Z=e=>{const t=Object.assign({},e);return e.display_type&&(void 0===e.show_name&&"complete"===e.display_type&&(t.show_name=!0),void 0===e.show_state&&"minimal"===e.display_type&&(t.show_state=!1),delete t.display_type),t};class E extends n.WF{static async getConfigElement(){return await Promise.all([a.e(64442),a.e(35905)]).then(a.bind(a,93048)),document.createElement("hui-entity-badge-editor")}static getStubConfig(e,t,a){return{type:"entity",entity:(0,v.B)(e,1,t,a,["sensor","light","switch"])[0]||""}}setConfig(e){this._config=Object.assign(Object.assign({},W),Z(e))}get hasAction(){var e,t,a,i;return!(null!==(e=this._config)&&void 0!==e&&e.tap_action)||(0,w.h)(null===(t=this._config)||void 0===t?void 0:t.tap_action)||(0,w.h)(null===(a=this._config)||void 0===a?void 0:a.hold_action)||(0,w.h)(null===(i=this._config)||void 0===i?void 0:i.double_tap_action)}_getImageUrl(e){const t=e.attributes.entity_picture_local||e.attributes.entity_picture;if(!t)return;let a=this.hass.hassUrl(t);return"camera"===(0,g.t)(e)&&(a=(0,_.su)(a,32,32)),a}render(){if(!this._config||!this.hass)return n.s6;const e=this._config.entity,t=e?this.hass.states[e]:void 0;if(!t)return(0,n.qy)(k||(k=A` <ha-badge .label="${0}" class="error"> <ha-svg-icon slot="icon" .path="${0}"></ha-svg-icon> ${0} </ha-badge> `),e,S,this.hass.localize("ui.badge.entity.not_found"));const a=(0,b.a)(t),i={"--badge-color":this._computeStateColor(t,this._config.color)},o=this.hass.formatEntityName(t,this._config.name),r=(0,n.qy)($||($=A` <state-display .stateObj="${0}" .hass="${0}" .content="${0}" .name="${0}"> </state-display> `),t,this.hass,this._config.state_content,o),c=this._config.show_state,d=this._config.show_name,h=this._config.show_icon,u=this._config.show_entity_picture?this._getImageUrl(t):void 0,g=c&&d?o:void 0,p=c?r:d?o:void 0;return(0,n.qy)(z||(z=A` <ha-badge .type="${0}" @action="${0}" .actionHandler="${0}" .label="${0}" .iconOnly="${0}" style="${0}" class="${0}"> ${0} ${0} </ha-badge> `),this.hasAction?"button":"badge",this._handleAction,(0,f.T)({hasHold:(0,w.h)(this._config.hold_action),hasDoubleClick:(0,w.h)(this._config.double_tap_action)}),g,!p,(0,l.W)(i),(0,s.H)({active:a}),h?u?(0,n.qy)(C||(C=A`<img slot="icon" src="${0}" aria-hidden>`),u):(0,n.qy)(M||(M=A` <ha-state-icon slot="icon" .stateObj="${0}" .icon="${0}"></ha-state-icon> `),t,this._config.icon):n.s6,p)}_handleAction(e){(0,y.$)(this,this.hass,this._config,e.detail.action)}constructor(...e){super(...e),this._computeStateColor=(0,c.A)((e,t)=>{if(t)return(0,b.a)(e)?(0,d.MP)(t):void 0;if("light"===(0,u.m)(e.entity_id)&&e.attributes.rgb_color){const t=(0,h.bi)(e.attributes.rgb_color);return t[1]<.4&&(t[1]<.1?t[2]=225:t[1]=.4),(0,h.v2)((0,h.hT)(t))}return(0,p.Se)(e)})}}E.styles=(0,n.AH)(H||(H=A`ha-badge{--badge-color:var(--state-inactive-color)}ha-badge.error{--badge-color:var(--red-color)}ha-badge.active{--badge-color:var(--primary-color)}`)),(0,o.Cg)([(0,r.MZ)({attribute:!1})],E.prototype,"hass",void 0),(0,o.Cg)([(0,r.wk)()],E.prototype,"_config",void 0),E=(0,o.Cg)([(0,r.EM)("hui-entity-badge")],E),i()}catch(k){i(k)}})}}]);