From 4d14ea049f1012d3c7f4ba8f82e8dca4e8408936 Mon Sep 17 00:00:00 2001 From: Marco Kreeft Date: Mon, 12 Sep 2022 17:41:46 +0200 Subject: [PATCH] real fix --- package-lock.json | 2 +- package.json | 2 +- room-card.js | 4 ++-- room-card.js.gz | Bin 18150 -> 18174 bytes src/entity.ts | 4 ++++ src/index.ts | 2 +- 6 files changed, 9 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8e3575b..59f8b9a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "room-card", - "version": "1.3.5", + "version": "1.3.6", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 59d3405..5957ede 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "room-card", - "version": "1.3.5", + "version": "1.3.6", "description": "Show entities in Home Assistant's Lovelace UI", "keywords": [ "home-assistant", diff --git a/room-card.js b/room-card.js index 1622d9f..c561746 100644 --- a/room-card.js +++ b/room-card.js @@ -1,5 +1,5 @@ /*! For license information please see room-card.js.LICENSE.txt */ -(()=>{"use strict";var t={197:(t,e,i)=>{i.r(e),i.d(e,{DEFAULT_DOMAIN_ICON:()=>J,DEFAULT_PANEL:()=>Q,DEFAULT_VIEW_ENTITY_ID:()=>st,DOMAINS_HIDE_MORE_INFO:()=>et,DOMAINS_MORE_INFO_NO_HISTORY:()=>it,DOMAINS_TOGGLE:()=>rt,DOMAINS_WITH_CARD:()=>X,DOMAINS_WITH_MORE_INFO:()=>tt,NumberFormat:()=>n,STATES_OFF:()=>nt,TimeFormat:()=>r,UNIT_C:()=>at,UNIT_F:()=>ot,applyThemesOnElement:()=>F,computeCardSize:()=>R,computeDomain:()=>H,computeEntity:()=>L,computeRTL:()=>V,computeRTLDirection:()=>z,computeStateDisplay:()=>Z,computeStateDomain:()=>q,createThing:()=>dt,debounce:()=>mt,domainIcon:()=>ft,evaluateFilter:()=>pt,fireEvent:()=>lt,fixedIcons:()=>ht,formatDate:()=>c,formatDateMonth:()=>y,formatDateMonthYear:()=>v,formatDateNumeric:()=>m,formatDateShort:()=>f,formatDateTime:()=>A,formatDateTimeNumeric:()=>T,formatDateTimeWithSeconds:()=>E,formatDateWeekday:()=>l,formatDateYear:()=>b,formatNumber:()=>Y,formatTime:()=>k,formatTimeWeekday:()=>M,formatTimeWithSeconds:()=>C,forwardHaptic:()=>vt,getLovelace:()=>Tt,handleAction:()=>wt,handleActionConfig:()=>bt,handleClick:()=>$t,hasAction:()=>At,hasConfigOrEntityChanged:()=>St,hasDoubleClick:()=>Et,isNumericState:()=>W,navigate:()=>gt,numberFormatToLocale:()=>B,relativeTime:()=>j,round:()=>K,stateIcon:()=>Dt,timerTimeRemaining:()=>P,toggleEntity:()=>_t,turnOnOffEntities:()=>Ot,turnOnOffEntity:()=>yt});var n,r,a,o=function(){return o=Object.assign||function(t){for(var e,i=1,n=arguments.length;i0)return{value:Math.round(m),unit:"year"};var h=12*m+c.getMonth()-d.getMonth();if(Math.round(Math.abs(h))>0)return{value:Math.round(h),unit:"month"};var f=r/604800;return{value:Math.round(f),unit:"week"}}(t,i);return n?function(t){return new Intl.RelativeTimeFormat(t.language,{numeric:"auto"})}(e).format(r.value,r.unit):Intl.NumberFormat(e.language,{style:"unit",unit:r.unit,unitDisplay:"long"}).format(Math.abs(r.value))};function P(t){var e,i=3600*(e=t.attributes.remaining.split(":").map(Number))[0]+60*e[1]+e[2];if("active"===t.state){var n=(new Date).getTime(),r=new Date(t.last_changed).getTime();i=Math.max(i-(n-r)/1e3,0)}return i}function U(){return(U=Object.assign||function(t){for(var e=1;e-1?t.split(".")[1].length:0;i.minimumFractionDigits=n,i.maximumFractionDigits=n}return i},Z=function(t,e,i,n){var r=void 0!==n?n:e.state;if("unknown"===r||"unavailable"===r)return t("state.default."+r);if(W(e)){if("monetary"===e.attributes.device_class)try{return Y(r,i,{style:"currency",currency:e.attributes.unit_of_measurement})}catch(t){}return Y(r,i)+(e.attributes.unit_of_measurement?" "+e.attributes.unit_of_measurement:"")}var a=q(e);if("input_datetime"===a){var o;if(void 0===n)return e.attributes.has_date&&e.attributes.has_time?(o=new Date(e.attributes.year,e.attributes.month-1,e.attributes.day,e.attributes.hour,e.attributes.minute),A(o,i)):e.attributes.has_date?(o=new Date(e.attributes.year,e.attributes.month-1,e.attributes.day),c(o,i)):e.attributes.has_time?((o=new Date).setHours(e.attributes.hour,e.attributes.minute),k(o,i)):e.state;try{var s=n.split(" ");if(2===s.length)return A(new Date(s.join("T")),i);if(1===s.length){if(n.includes("-"))return c(new Date(n+"T00:00"),i);if(n.includes(":")){var l=new Date;return k(new Date(l.toISOString().split("T")[0]+"T"+n),i)}}return n}catch(t){return n}}return"humidifier"===a&&"on"===r&&e.attributes.humidity?e.attributes.humidity+" %":"counter"===a||"number"===a||"input_number"===a?Y(r,i):e.attributes.device_class&&t("component."+a+".state."+e.attributes.device_class+"."+r)||t("component."+a+".state._."+r)||r},J="mdi:bookmark",Q="lovelace",X=["climate","cover","configurator","input_select","input_number","input_text","lock","media_player","scene","script","timer","vacuum","water_heater","weblink"],tt=["alarm_control_panel","automation","camera","climate","configurator","cover","fan","group","history_graph","input_datetime","light","lock","media_player","script","sun","updater","vacuum","water_heater","weather"],et=["input_number","input_select","input_text","scene","weblink"],it=["camera","configurator","history_graph","scene"],nt=["closed","locked","off"],rt=new Set(["fan","input_boolean","light","switch","group","automation"]),at="°C",ot="°F",st="group.default_view",lt=function(t,e,i,n){n=n||{},i=null==i?{}:i;var r=new Event(e,{bubbles:void 0===n.bubbles||n.bubbles,cancelable:Boolean(n.cancelable),composed:void 0===n.composed||n.composed});return r.detail=i,t.dispatchEvent(r),r},ut=new Set(["call-service","divider","section","weblink","cast","select"]),ct={alert:"toggle",automation:"toggle",climate:"climate",cover:"cover",fan:"toggle",group:"group",input_boolean:"toggle",input_number:"input-number",input_select:"input-select",input_text:"input-text",light:"toggle",lock:"lock",media_player:"media-player",remote:"toggle",scene:"scene",script:"script",sensor:"sensor",timer:"timer",switch:"toggle",vacuum:"toggle",water_heater:"climate",input_datetime:"input-datetime"},dt=function(t,e){void 0===e&&(e=!1);var i=function(t,e){return n("hui-error-card",{type:"error",error:t,config:e})},n=function(t,e){var n=window.document.createElement(t);try{if(!n.setConfig)return;n.setConfig(e)}catch(n){return console.error(t,n),i(n.message,e)}return n};if(!t||"object"!=typeof t||!e&&!t.type)return i("No type defined",t);var r=t.type;if(r&&r.startsWith("custom:"))r=r.substr("custom:".length);else if(e)if(ut.has(r))r="hui-"+r+"-row";else{if(!t.entity)return i("Invalid config given.",t);var a=t.entity.split(".",1)[0];r="hui-"+(ct[a]||"text")+"-entity-row"}else r="hui-"+r+"-card";if(customElements.get(r))return n(r,t);var o=i("Custom element doesn't exist: "+t.type+".",t);o.style.display="None";var s=setTimeout((function(){o.style.display=""}),2e3);return customElements.whenDefined(t.type).then((function(){clearTimeout(s),lt(o,"ll-rebuild",{},o)})),o},mt=function(t,e,i){var n;return void 0===i&&(i=!1),function(){var r=[].slice.call(arguments),a=this,o=function(){n=null,i||t.apply(a,r)},s=i&&!n;clearTimeout(n),n=setTimeout(o,e),s&&t.apply(a,r)}},ht={alert:"mdi:alert",automation:"mdi:playlist-play",calendar:"mdi:calendar",camera:"mdi:video",climate:"mdi:thermostat",configurator:"mdi:settings",conversation:"mdi:text-to-speech",device_tracker:"mdi:account",fan:"mdi:fan",group:"mdi:google-circles-communities",history_graph:"mdi:chart-line",homeassistant:"mdi:home-assistant",homekit:"mdi:home-automation",image_processing:"mdi:image-filter-frames",input_boolean:"mdi:drawing",input_datetime:"mdi:calendar-clock",input_number:"mdi:ray-vertex",input_select:"mdi:format-list-bulleted",input_text:"mdi:textbox",light:"mdi:lightbulb",mailbox:"mdi:mailbox",notify:"mdi:comment-alert",person:"mdi:account",plant:"mdi:flower",proximity:"mdi:apple-safari",remote:"mdi:remote",scene:"mdi:google-pages",script:"mdi:file-document",sensor:"mdi:eye",simple_alarm:"mdi:bell",sun:"mdi:white-balance-sunny",switch:"mdi:flash",timer:"mdi:timer",updater:"mdi:cloud-upload",vacuum:"mdi:robot-vacuum",water_heater:"mdi:thermometer",weblink:"mdi:open-in-new"};function ft(t,e){if(t in ht)return ht[t];switch(t){case"alarm_control_panel":switch(e){case"armed_home":return"mdi:bell-plus";case"armed_night":return"mdi:bell-sleep";case"disarmed":return"mdi:bell-outline";case"triggered":return"mdi:bell-ring";default:return"mdi:bell"}case"binary_sensor":return e&&"off"===e?"mdi:radiobox-blank":"mdi:checkbox-marked-circle";case"cover":return"closed"===e?"mdi:window-closed":"mdi:window-open";case"lock":return e&&"unlocked"===e?"mdi:lock-open":"mdi:lock";case"media_player":return e&&"off"!==e&&"idle"!==e?"mdi:cast-connected":"mdi:cast";case"zwave":switch(e){case"dead":return"mdi:emoticon-dead";case"sleeping":return"mdi:sleep";case"initializing":return"mdi:timer-sand";default:return"mdi:z-wave"}default:return console.warn("Unable to find icon for domain "+t+" ("+e+")"),"mdi:bookmark"}}var pt=function(t,e){var i=e.value||e,n=e.attribute?t.attributes[e.attribute]:t.state;switch(e.operator||"=="){case"==":return n===i;case"<=":return n<=i;case"<":return n=":return n>=i;case">":return n>i;case"!=":return n!==i;case"regex":return n.match(i);default:return!1}},vt=function(t){lt(window,"haptic",t)},gt=function(t,e,i){void 0===i&&(i=!1),i?history.replaceState(null,"",e):history.pushState(null,"",e),lt(window,"location-changed",{replace:i})},yt=function(t,e,i){void 0===i&&(i=!0);var n,r=H(e),a="group"===r?"homeassistant":r;switch(r){case"lock":n=i?"unlock":"lock";break;case"cover":n=i?"open_cover":"close_cover";break;default:n=i?"turn_on":"turn_off"}return t.callService(a,n,{entity_id:e})},_t=function(t,e){var i=nt.includes(t.states[e].state);return yt(t,e,i)},bt=function(t,e,i,n){if(n||(n={action:"more-info"}),!n.confirmation||n.confirmation.exemptions&&n.confirmation.exemptions.some((function(t){return t.user===e.user.id}))||(vt("warning"),confirm(n.confirmation.text||"Are you sure you want to "+n.action+"?")))switch(n.action){case"more-info":(i.entity||i.camera_image)&<(t,"hass-more-info",{entityId:i.entity?i.entity:i.camera_image});break;case"navigate":n.navigation_path&>(0,n.navigation_path);break;case"url":n.url_path&&window.open(n.url_path);break;case"toggle":i.entity&&(_t(e,i.entity),vt("success"));break;case"call-service":if(!n.service)return void vt("failure");var r=n.service.split(".",2);e.callService(r[0],r[1],n.service_data,n.target),vt("success");break;case"fire-dom-event":lt(t,"ll-custom",n)}},wt=function(t,e,i,n){var r;"double_tap"===n&&i.double_tap_action?r=i.double_tap_action:"hold"===n&&i.hold_action?r=i.hold_action:"tap"===n&&i.tap_action&&(r=i.tap_action),bt(t,e,i,r)},$t=function(t,e,i,n,r){var a;if(r&&i.double_tap_action?a=i.double_tap_action:n&&i.hold_action?a=i.hold_action:!n&&i.tap_action&&(a=i.tap_action),a||(a={action:"more-info"}),!a.confirmation||a.confirmation.exemptions&&a.confirmation.exemptions.some((function(t){return t.user===e.user.id}))||confirm(a.confirmation.text||"Are you sure you want to "+a.action+"?"))switch(a.action){case"more-info":(a.entity||i.entity||i.camera_image)&&(lt(t,"hass-more-info",{entityId:a.entity?a.entity:i.entity?i.entity:i.camera_image}),a.haptic&&vt(a.haptic));break;case"navigate":a.navigation_path&&(gt(0,a.navigation_path),a.haptic&&vt(a.haptic));break;case"url":a.url_path&&window.open(a.url_path),a.haptic&&vt(a.haptic);break;case"toggle":i.entity&&(_t(e,i.entity),a.haptic&&vt(a.haptic));break;case"call-service":if(!a.service)return;var o=a.service.split(".",2),s=o[0],l=o[1],u=U({},a.service_data);"entity"===u.entity_id&&(u.entity_id=i.entity),e.callService(s,l,u,a.target),a.haptic&&vt(a.haptic);break;case"fire-dom-event":lt(t,"ll-custom",a),a.haptic&&vt(a.haptic)}};function At(t){return void 0!==t&&"none"!==t.action}function St(t,e,i){if(e.has("config")||i)return!0;if(t.config.entity){var n=e.get("hass");return!n||n.states[t.config.entity]!==t.hass.states[t.config.entity]}return!1}function Et(t){return void 0!==t&&"none"!==t.action}var Ot=function(t,e,i){void 0===i&&(i=!0);var n={};e.forEach((function(e){if(nt.includes(t.states[e].state)===i){var r=H(e),a=["cover","lock"].includes(r)?r:"homeassistant";a in n||(n[a]=[]),n[a].push(e)}})),Object.keys(n).forEach((function(e){var r;switch(e){case"lock":r=i?"unlock":"lock";break;case"cover":r=i?"open_cover":"close_cover";break;default:r=i?"turn_on":"turn_off"}t.callService(e,r,{entity_id:n[e]})}))},Tt=function(){var t=document.querySelector("home-assistant");if(t=(t=(t=(t=(t=(t=(t=(t=t&&t.shadowRoot)&&t.querySelector("home-assistant-main"))&&t.shadowRoot)&&t.querySelector("app-drawer-layout partial-panel-resolver"))&&t.shadowRoot||t)&&t.querySelector("ha-panel-lovelace"))&&t.shadowRoot)&&t.querySelector("hui-root")){var e=t.lovelace;return e.current_view=t.___curView,e}return null},Nt={humidity:"mdi:water-percent",illuminance:"mdi:brightness-5",temperature:"mdi:thermometer",pressure:"mdi:gauge",power:"mdi:flash",signal_strength:"mdi:wifi"},kt={binary_sensor:function(t,e){var i="off"===t;switch(null==e?void 0:e.attributes.device_class){case"battery":return i?"mdi:battery":"mdi:battery-outline";case"battery_charging":return i?"mdi:battery":"mdi:battery-charging";case"cold":return i?"mdi:thermometer":"mdi:snowflake";case"connectivity":return i?"mdi:server-network-off":"mdi:server-network";case"door":return i?"mdi:door-closed":"mdi:door-open";case"garage_door":return i?"mdi:garage":"mdi:garage-open";case"power":case"plug":return i?"mdi:power-plug-off":"mdi:power-plug";case"gas":case"problem":case"safety":case"tamper":return i?"mdi:check-circle":"mdi:alert-circle";case"smoke":return i?"mdi:check-circle":"mdi:smoke";case"heat":return i?"mdi:thermometer":"mdi:fire";case"light":return i?"mdi:brightness-5":"mdi:brightness-7";case"lock":return i?"mdi:lock":"mdi:lock-open";case"moisture":return i?"mdi:water-off":"mdi:water";case"motion":return i?"mdi:walk":"mdi:run";case"occupancy":case"presence":return i?"mdi:home-outline":"mdi:home";case"opening":return i?"mdi:square":"mdi:square-outline";case"running":return i?"mdi:stop":"mdi:play";case"sound":return i?"mdi:music-note-off":"mdi:music-note";case"update":return i?"mdi:package":"mdi:package-up";case"vibration":return i?"mdi:crop-portrait":"mdi:vibrate";case"window":return i?"mdi:window-closed":"mdi:window-open";default:return i?"mdi:radiobox-blank":"mdi:checkbox-marked-circle"}},cover:function(t){var e="closed"!==t.state;switch(t.attributes.device_class){case"garage":return e?"mdi:garage-open":"mdi:garage";case"door":return e?"mdi:door-open":"mdi:door-closed";case"shutter":return e?"mdi:window-shutter-open":"mdi:window-shutter";case"blind":return e?"mdi:blinds-open":"mdi:blinds";case"window":return e?"mdi:window-open":"mdi:window-closed";default:return ft("cover",t.state)}},sensor:function(t){var e=t.attributes.device_class;if(e&&e in Nt)return Nt[e];if("battery"===e){var i=Number(t.state);if(isNaN(i))return"mdi:battery-unknown";var n=10*Math.round(i/10);return n>=100?"mdi:battery":n<=0?"mdi:battery-alert":"hass:battery-"+n}var r=t.attributes.unit_of_measurement;return"°C"===r||"°F"===r?"mdi:thermometer":ft("sensor")},input_datetime:function(t){return t.attributes.has_date?t.attributes.has_time?ft("input_datetime"):"mdi:calendar":"mdi:clock"}},Dt=function(t){if(!t)return"mdi:bookmark";if(t.attributes.icon)return t.attributes.icon;var e=H(t.entity_id);return e in kt?kt[e](t):ft(e,t.state)}},845:(t,e,i)=>{i.r(e),i.d(e,{default:()=>a});var n=Number.isNaN||function(t){return"number"==typeof t&&t!=t};function r(t,e){if(t.length!==e.length)return!1;for(var i=0;i{Object.defineProperty(e,"__esModule",{value:!0}),e.holdHandler=e.dblClickHandler=e.clickHandler=e.renderInfoEntity=e.renderTitle=e.renderMainEntity=e.renderValue=e.renderIcon=e.renderEntity=e.renderEntitiesRow=e.entityStyles=e.entityStateDisplay=e.renderCustomStateIcon=e.renderConditionIcons=e.entityIcon=e.entityName=e.computeEntity=e.checkConfig=void 0;const n=i(230),r=i(759),a=i(578),o=i(882),s=i(197),l=i(897),u=i(623);e.checkConfig=t=>{if(!t||!t.entities&&!t.entity&&!t.info_entities&&!t.rows)throw new Error("Please define entities.")},e.computeEntity=t=>t.substr(t.indexOf(".")+1),e.entityName=t=>t.name||(t.entity?t.stateObj.attributes.friendly_name||(0,e.computeEntity)(t.stateObj.entity_id):null)||null,e.entityIcon=(t,i,n)=>"icon"in i?"string"==typeof i.icon?i.icon||null:i.icon.state_on?(0,e.renderCustomStateIcon)(t,i.icon):i.icon.conditions?(0,e.renderConditionIcons)(t,i,n):void 0:t.attributes.icon||null,e.renderConditionIcons=(t,e,i)=>{let n=t.state;return e.icon.conditions.filter((t=>{if(t.entity){const e=i.states[t.entity];n=t.attribute?e.attributes[t.attribute]:e.state}return(0,o.checkConditionalValue)(t,n)})).pop()},e.renderCustomStateIcon=(t,e)=>{switch((0,a.computeStateDomain)(t)){case"light":case"switch":case"binary_sensor":return"on"===t.state?e.state_on:e.state_off}},e.entityStateDisplay=(t,e)=>{if((0,o.isUnavailable)(e.stateObj))return t.localize(`state.default.${e.stateObj.state}`);let i=(0,o.getValue)(e),s=void 0!==e.attribute?e.unit:e.unit||e.stateObj.attributes.unit_of_measurement;if(e.format){if(isNaN(parseFloat(i))||!isFinite(i));else if("brightness"===e.format)i=Math.round(i/255*100),s="%";else if(e.format.startsWith("duration"))i=(0,n.secondsToDuration)("duration-m"===e.format?i/1e3:i),s=void 0;else if(e.format.startsWith("precision")){const n=parseInt(e.format.slice(-1),10);i=(0,r.formatNumber)(parseFloat(i),t.locale,{minimumFractionDigits:n,maximumFractionDigits:n})}else"kilo"===e.format?i=(0,r.formatNumber)(i/1e3,t.locale,{maximumFractionDigits:2}):"invert"===e.format?i=(0,r.formatNumber)(i-2*i,t.locale):"position"===e.format&&(i=(0,r.formatNumber)(100-i,t.locale));return`${i}${s?` ${s}`:""}`}if(e.attribute)return`${isNaN(i)?i:(0,r.formatNumber)(i,t.locale)}${s?` ${s}`:""}`;const l=Object.assign(Object.assign({},e.stateObj),{attributes:Object.assign(Object.assign({},e.stateObj.attributes),{unit_of_measurement:s})});return(0,a.computeStateDisplay)(t.localize,l,t.locale)},e.entityStyles=t=>(0,o.isObject)(t)?Object.keys(t).map((e=>`${e}: ${t[e]};`)).join(""):"",e.renderEntitiesRow=(t,i,n,r)=>l.html`
+(()=>{"use strict";var t={197:(t,e,i)=>{i.r(e),i.d(e,{DEFAULT_DOMAIN_ICON:()=>J,DEFAULT_PANEL:()=>Q,DEFAULT_VIEW_ENTITY_ID:()=>st,DOMAINS_HIDE_MORE_INFO:()=>et,DOMAINS_MORE_INFO_NO_HISTORY:()=>it,DOMAINS_TOGGLE:()=>rt,DOMAINS_WITH_CARD:()=>X,DOMAINS_WITH_MORE_INFO:()=>tt,NumberFormat:()=>n,STATES_OFF:()=>nt,TimeFormat:()=>r,UNIT_C:()=>at,UNIT_F:()=>ot,applyThemesOnElement:()=>F,computeCardSize:()=>R,computeDomain:()=>H,computeEntity:()=>L,computeRTL:()=>V,computeRTLDirection:()=>z,computeStateDisplay:()=>Z,computeStateDomain:()=>q,createThing:()=>dt,debounce:()=>mt,domainIcon:()=>ft,evaluateFilter:()=>pt,fireEvent:()=>lt,fixedIcons:()=>ht,formatDate:()=>c,formatDateMonth:()=>y,formatDateMonthYear:()=>v,formatDateNumeric:()=>m,formatDateShort:()=>f,formatDateTime:()=>A,formatDateTimeNumeric:()=>T,formatDateTimeWithSeconds:()=>E,formatDateWeekday:()=>l,formatDateYear:()=>b,formatNumber:()=>Y,formatTime:()=>k,formatTimeWeekday:()=>M,formatTimeWithSeconds:()=>C,forwardHaptic:()=>vt,getLovelace:()=>Tt,handleAction:()=>wt,handleActionConfig:()=>bt,handleClick:()=>$t,hasAction:()=>At,hasConfigOrEntityChanged:()=>St,hasDoubleClick:()=>Et,isNumericState:()=>W,navigate:()=>gt,numberFormatToLocale:()=>B,relativeTime:()=>j,round:()=>K,stateIcon:()=>Dt,timerTimeRemaining:()=>P,toggleEntity:()=>_t,turnOnOffEntities:()=>Ot,turnOnOffEntity:()=>yt});var n,r,a,o=function(){return o=Object.assign||function(t){for(var e,i=1,n=arguments.length;i0)return{value:Math.round(m),unit:"year"};var h=12*m+c.getMonth()-d.getMonth();if(Math.round(Math.abs(h))>0)return{value:Math.round(h),unit:"month"};var f=r/604800;return{value:Math.round(f),unit:"week"}}(t,i);return n?function(t){return new Intl.RelativeTimeFormat(t.language,{numeric:"auto"})}(e).format(r.value,r.unit):Intl.NumberFormat(e.language,{style:"unit",unit:r.unit,unitDisplay:"long"}).format(Math.abs(r.value))};function P(t){var e,i=3600*(e=t.attributes.remaining.split(":").map(Number))[0]+60*e[1]+e[2];if("active"===t.state){var n=(new Date).getTime(),r=new Date(t.last_changed).getTime();i=Math.max(i-(n-r)/1e3,0)}return i}function U(){return(U=Object.assign||function(t){for(var e=1;e-1?t.split(".")[1].length:0;i.minimumFractionDigits=n,i.maximumFractionDigits=n}return i},Z=function(t,e,i,n){var r=void 0!==n?n:e.state;if("unknown"===r||"unavailable"===r)return t("state.default."+r);if(W(e)){if("monetary"===e.attributes.device_class)try{return Y(r,i,{style:"currency",currency:e.attributes.unit_of_measurement})}catch(t){}return Y(r,i)+(e.attributes.unit_of_measurement?" "+e.attributes.unit_of_measurement:"")}var a=q(e);if("input_datetime"===a){var o;if(void 0===n)return e.attributes.has_date&&e.attributes.has_time?(o=new Date(e.attributes.year,e.attributes.month-1,e.attributes.day,e.attributes.hour,e.attributes.minute),A(o,i)):e.attributes.has_date?(o=new Date(e.attributes.year,e.attributes.month-1,e.attributes.day),c(o,i)):e.attributes.has_time?((o=new Date).setHours(e.attributes.hour,e.attributes.minute),k(o,i)):e.state;try{var s=n.split(" ");if(2===s.length)return A(new Date(s.join("T")),i);if(1===s.length){if(n.includes("-"))return c(new Date(n+"T00:00"),i);if(n.includes(":")){var l=new Date;return k(new Date(l.toISOString().split("T")[0]+"T"+n),i)}}return n}catch(t){return n}}return"humidifier"===a&&"on"===r&&e.attributes.humidity?e.attributes.humidity+" %":"counter"===a||"number"===a||"input_number"===a?Y(r,i):e.attributes.device_class&&t("component."+a+".state."+e.attributes.device_class+"."+r)||t("component."+a+".state._."+r)||r},J="mdi:bookmark",Q="lovelace",X=["climate","cover","configurator","input_select","input_number","input_text","lock","media_player","scene","script","timer","vacuum","water_heater","weblink"],tt=["alarm_control_panel","automation","camera","climate","configurator","cover","fan","group","history_graph","input_datetime","light","lock","media_player","script","sun","updater","vacuum","water_heater","weather"],et=["input_number","input_select","input_text","scene","weblink"],it=["camera","configurator","history_graph","scene"],nt=["closed","locked","off"],rt=new Set(["fan","input_boolean","light","switch","group","automation"]),at="°C",ot="°F",st="group.default_view",lt=function(t,e,i,n){n=n||{},i=null==i?{}:i;var r=new Event(e,{bubbles:void 0===n.bubbles||n.bubbles,cancelable:Boolean(n.cancelable),composed:void 0===n.composed||n.composed});return r.detail=i,t.dispatchEvent(r),r},ut=new Set(["call-service","divider","section","weblink","cast","select"]),ct={alert:"toggle",automation:"toggle",climate:"climate",cover:"cover",fan:"toggle",group:"group",input_boolean:"toggle",input_number:"input-number",input_select:"input-select",input_text:"input-text",light:"toggle",lock:"lock",media_player:"media-player",remote:"toggle",scene:"scene",script:"script",sensor:"sensor",timer:"timer",switch:"toggle",vacuum:"toggle",water_heater:"climate",input_datetime:"input-datetime"},dt=function(t,e){void 0===e&&(e=!1);var i=function(t,e){return n("hui-error-card",{type:"error",error:t,config:e})},n=function(t,e){var n=window.document.createElement(t);try{if(!n.setConfig)return;n.setConfig(e)}catch(n){return console.error(t,n),i(n.message,e)}return n};if(!t||"object"!=typeof t||!e&&!t.type)return i("No type defined",t);var r=t.type;if(r&&r.startsWith("custom:"))r=r.substr("custom:".length);else if(e)if(ut.has(r))r="hui-"+r+"-row";else{if(!t.entity)return i("Invalid config given.",t);var a=t.entity.split(".",1)[0];r="hui-"+(ct[a]||"text")+"-entity-row"}else r="hui-"+r+"-card";if(customElements.get(r))return n(r,t);var o=i("Custom element doesn't exist: "+t.type+".",t);o.style.display="None";var s=setTimeout((function(){o.style.display=""}),2e3);return customElements.whenDefined(t.type).then((function(){clearTimeout(s),lt(o,"ll-rebuild",{},o)})),o},mt=function(t,e,i){var n;return void 0===i&&(i=!1),function(){var r=[].slice.call(arguments),a=this,o=function(){n=null,i||t.apply(a,r)},s=i&&!n;clearTimeout(n),n=setTimeout(o,e),s&&t.apply(a,r)}},ht={alert:"mdi:alert",automation:"mdi:playlist-play",calendar:"mdi:calendar",camera:"mdi:video",climate:"mdi:thermostat",configurator:"mdi:settings",conversation:"mdi:text-to-speech",device_tracker:"mdi:account",fan:"mdi:fan",group:"mdi:google-circles-communities",history_graph:"mdi:chart-line",homeassistant:"mdi:home-assistant",homekit:"mdi:home-automation",image_processing:"mdi:image-filter-frames",input_boolean:"mdi:drawing",input_datetime:"mdi:calendar-clock",input_number:"mdi:ray-vertex",input_select:"mdi:format-list-bulleted",input_text:"mdi:textbox",light:"mdi:lightbulb",mailbox:"mdi:mailbox",notify:"mdi:comment-alert",person:"mdi:account",plant:"mdi:flower",proximity:"mdi:apple-safari",remote:"mdi:remote",scene:"mdi:google-pages",script:"mdi:file-document",sensor:"mdi:eye",simple_alarm:"mdi:bell",sun:"mdi:white-balance-sunny",switch:"mdi:flash",timer:"mdi:timer",updater:"mdi:cloud-upload",vacuum:"mdi:robot-vacuum",water_heater:"mdi:thermometer",weblink:"mdi:open-in-new"};function ft(t,e){if(t in ht)return ht[t];switch(t){case"alarm_control_panel":switch(e){case"armed_home":return"mdi:bell-plus";case"armed_night":return"mdi:bell-sleep";case"disarmed":return"mdi:bell-outline";case"triggered":return"mdi:bell-ring";default:return"mdi:bell"}case"binary_sensor":return e&&"off"===e?"mdi:radiobox-blank":"mdi:checkbox-marked-circle";case"cover":return"closed"===e?"mdi:window-closed":"mdi:window-open";case"lock":return e&&"unlocked"===e?"mdi:lock-open":"mdi:lock";case"media_player":return e&&"off"!==e&&"idle"!==e?"mdi:cast-connected":"mdi:cast";case"zwave":switch(e){case"dead":return"mdi:emoticon-dead";case"sleeping":return"mdi:sleep";case"initializing":return"mdi:timer-sand";default:return"mdi:z-wave"}default:return console.warn("Unable to find icon for domain "+t+" ("+e+")"),"mdi:bookmark"}}var pt=function(t,e){var i=e.value||e,n=e.attribute?t.attributes[e.attribute]:t.state;switch(e.operator||"=="){case"==":return n===i;case"<=":return n<=i;case"<":return n=":return n>=i;case">":return n>i;case"!=":return n!==i;case"regex":return n.match(i);default:return!1}},vt=function(t){lt(window,"haptic",t)},gt=function(t,e,i){void 0===i&&(i=!1),i?history.replaceState(null,"",e):history.pushState(null,"",e),lt(window,"location-changed",{replace:i})},yt=function(t,e,i){void 0===i&&(i=!0);var n,r=H(e),a="group"===r?"homeassistant":r;switch(r){case"lock":n=i?"unlock":"lock";break;case"cover":n=i?"open_cover":"close_cover";break;default:n=i?"turn_on":"turn_off"}return t.callService(a,n,{entity_id:e})},_t=function(t,e){var i=nt.includes(t.states[e].state);return yt(t,e,i)},bt=function(t,e,i,n){if(n||(n={action:"more-info"}),!n.confirmation||n.confirmation.exemptions&&n.confirmation.exemptions.some((function(t){return t.user===e.user.id}))||(vt("warning"),confirm(n.confirmation.text||"Are you sure you want to "+n.action+"?")))switch(n.action){case"more-info":(i.entity||i.camera_image)&<(t,"hass-more-info",{entityId:i.entity?i.entity:i.camera_image});break;case"navigate":n.navigation_path&>(0,n.navigation_path);break;case"url":n.url_path&&window.open(n.url_path);break;case"toggle":i.entity&&(_t(e,i.entity),vt("success"));break;case"call-service":if(!n.service)return void vt("failure");var r=n.service.split(".",2);e.callService(r[0],r[1],n.service_data,n.target),vt("success");break;case"fire-dom-event":lt(t,"ll-custom",n)}},wt=function(t,e,i,n){var r;"double_tap"===n&&i.double_tap_action?r=i.double_tap_action:"hold"===n&&i.hold_action?r=i.hold_action:"tap"===n&&i.tap_action&&(r=i.tap_action),bt(t,e,i,r)},$t=function(t,e,i,n,r){var a;if(r&&i.double_tap_action?a=i.double_tap_action:n&&i.hold_action?a=i.hold_action:!n&&i.tap_action&&(a=i.tap_action),a||(a={action:"more-info"}),!a.confirmation||a.confirmation.exemptions&&a.confirmation.exemptions.some((function(t){return t.user===e.user.id}))||confirm(a.confirmation.text||"Are you sure you want to "+a.action+"?"))switch(a.action){case"more-info":(a.entity||i.entity||i.camera_image)&&(lt(t,"hass-more-info",{entityId:a.entity?a.entity:i.entity?i.entity:i.camera_image}),a.haptic&&vt(a.haptic));break;case"navigate":a.navigation_path&&(gt(0,a.navigation_path),a.haptic&&vt(a.haptic));break;case"url":a.url_path&&window.open(a.url_path),a.haptic&&vt(a.haptic);break;case"toggle":i.entity&&(_t(e,i.entity),a.haptic&&vt(a.haptic));break;case"call-service":if(!a.service)return;var o=a.service.split(".",2),s=o[0],l=o[1],u=U({},a.service_data);"entity"===u.entity_id&&(u.entity_id=i.entity),e.callService(s,l,u,a.target),a.haptic&&vt(a.haptic);break;case"fire-dom-event":lt(t,"ll-custom",a),a.haptic&&vt(a.haptic)}};function At(t){return void 0!==t&&"none"!==t.action}function St(t,e,i){if(e.has("config")||i)return!0;if(t.config.entity){var n=e.get("hass");return!n||n.states[t.config.entity]!==t.hass.states[t.config.entity]}return!1}function Et(t){return void 0!==t&&"none"!==t.action}var Ot=function(t,e,i){void 0===i&&(i=!0);var n={};e.forEach((function(e){if(nt.includes(t.states[e].state)===i){var r=H(e),a=["cover","lock"].includes(r)?r:"homeassistant";a in n||(n[a]=[]),n[a].push(e)}})),Object.keys(n).forEach((function(e){var r;switch(e){case"lock":r=i?"unlock":"lock";break;case"cover":r=i?"open_cover":"close_cover";break;default:r=i?"turn_on":"turn_off"}t.callService(e,r,{entity_id:n[e]})}))},Tt=function(){var t=document.querySelector("home-assistant");if(t=(t=(t=(t=(t=(t=(t=(t=t&&t.shadowRoot)&&t.querySelector("home-assistant-main"))&&t.shadowRoot)&&t.querySelector("app-drawer-layout partial-panel-resolver"))&&t.shadowRoot||t)&&t.querySelector("ha-panel-lovelace"))&&t.shadowRoot)&&t.querySelector("hui-root")){var e=t.lovelace;return e.current_view=t.___curView,e}return null},Nt={humidity:"mdi:water-percent",illuminance:"mdi:brightness-5",temperature:"mdi:thermometer",pressure:"mdi:gauge",power:"mdi:flash",signal_strength:"mdi:wifi"},kt={binary_sensor:function(t,e){var i="off"===t;switch(null==e?void 0:e.attributes.device_class){case"battery":return i?"mdi:battery":"mdi:battery-outline";case"battery_charging":return i?"mdi:battery":"mdi:battery-charging";case"cold":return i?"mdi:thermometer":"mdi:snowflake";case"connectivity":return i?"mdi:server-network-off":"mdi:server-network";case"door":return i?"mdi:door-closed":"mdi:door-open";case"garage_door":return i?"mdi:garage":"mdi:garage-open";case"power":case"plug":return i?"mdi:power-plug-off":"mdi:power-plug";case"gas":case"problem":case"safety":case"tamper":return i?"mdi:check-circle":"mdi:alert-circle";case"smoke":return i?"mdi:check-circle":"mdi:smoke";case"heat":return i?"mdi:thermometer":"mdi:fire";case"light":return i?"mdi:brightness-5":"mdi:brightness-7";case"lock":return i?"mdi:lock":"mdi:lock-open";case"moisture":return i?"mdi:water-off":"mdi:water";case"motion":return i?"mdi:walk":"mdi:run";case"occupancy":case"presence":return i?"mdi:home-outline":"mdi:home";case"opening":return i?"mdi:square":"mdi:square-outline";case"running":return i?"mdi:stop":"mdi:play";case"sound":return i?"mdi:music-note-off":"mdi:music-note";case"update":return i?"mdi:package":"mdi:package-up";case"vibration":return i?"mdi:crop-portrait":"mdi:vibrate";case"window":return i?"mdi:window-closed":"mdi:window-open";default:return i?"mdi:radiobox-blank":"mdi:checkbox-marked-circle"}},cover:function(t){var e="closed"!==t.state;switch(t.attributes.device_class){case"garage":return e?"mdi:garage-open":"mdi:garage";case"door":return e?"mdi:door-open":"mdi:door-closed";case"shutter":return e?"mdi:window-shutter-open":"mdi:window-shutter";case"blind":return e?"mdi:blinds-open":"mdi:blinds";case"window":return e?"mdi:window-open":"mdi:window-closed";default:return ft("cover",t.state)}},sensor:function(t){var e=t.attributes.device_class;if(e&&e in Nt)return Nt[e];if("battery"===e){var i=Number(t.state);if(isNaN(i))return"mdi:battery-unknown";var n=10*Math.round(i/10);return n>=100?"mdi:battery":n<=0?"mdi:battery-alert":"hass:battery-"+n}var r=t.attributes.unit_of_measurement;return"°C"===r||"°F"===r?"mdi:thermometer":ft("sensor")},input_datetime:function(t){return t.attributes.has_date?t.attributes.has_time?ft("input_datetime"):"mdi:calendar":"mdi:clock"}},Dt=function(t){if(!t)return"mdi:bookmark";if(t.attributes.icon)return t.attributes.icon;var e=H(t.entity_id);return e in kt?kt[e](t):ft(e,t.state)}},845:(t,e,i)=>{i.r(e),i.d(e,{default:()=>a});var n=Number.isNaN||function(t){return"number"==typeof t&&t!=t};function r(t,e){if(t.length!==e.length)return!1;for(var i=0;i{Object.defineProperty(e,"__esModule",{value:!0}),e.holdHandler=e.dblClickHandler=e.clickHandler=e.renderInfoEntity=e.renderTitle=e.renderMainEntity=e.renderValue=e.renderIcon=e.renderEntity=e.renderEntitiesRow=e.entityStyles=e.entityStateDisplay=e.renderCustomStateIcon=e.renderConditionIcons=e.entityIcon=e.entityName=e.computeEntity=e.checkConfig=void 0;const n=i(230),r=i(759),a=i(578),o=i(882),s=i(197),l=i(897),u=i(623);e.checkConfig=t=>{if(!t||!t.entities&&!t.entity&&!t.info_entities&&!t.rows)throw new Error("Please define entities.")},e.computeEntity=t=>t.substr(t.indexOf(".")+1),e.entityName=t=>t.name||(t.entity?t.stateObj.attributes.friendly_name||(0,e.computeEntity)(t.stateObj.entity_id):null)||null,e.entityIcon=(t,i,n)=>"icon"in i?"string"==typeof i.icon?i.icon||null:i.icon.state_on?(0,e.renderCustomStateIcon)(t,i.icon):i.icon.conditions?(0,e.renderConditionIcons)(t,i,n):void 0:t.attributes.icon||null,e.renderConditionIcons=(t,e,i)=>{let n=t.state;return e.icon.conditions.filter((e=>{if(e.entity){const t=i.states[e.entity];n=e.attribute?t.attributes[e.attribute]:t.state}return e.attribute&&!e.entity&&(n=e.attribute?t.attributes[e.attribute]:t.state),(0,o.checkConditionalValue)(e,n)})).pop()},e.renderCustomStateIcon=(t,e)=>{switch((0,a.computeStateDomain)(t)){case"light":case"switch":case"binary_sensor":return"on"===t.state?e.state_on:e.state_off}},e.entityStateDisplay=(t,e)=>{if((0,o.isUnavailable)(e.stateObj))return t.localize(`state.default.${e.stateObj.state}`);let i=(0,o.getValue)(e),s=void 0!==e.attribute?e.unit:e.unit||e.stateObj.attributes.unit_of_measurement;if(e.format){if(isNaN(parseFloat(i))||!isFinite(i));else if("brightness"===e.format)i=Math.round(i/255*100),s="%";else if(e.format.startsWith("duration"))i=(0,n.secondsToDuration)("duration-m"===e.format?i/1e3:i),s=void 0;else if(e.format.startsWith("precision")){const n=parseInt(e.format.slice(-1),10);i=(0,r.formatNumber)(parseFloat(i),t.locale,{minimumFractionDigits:n,maximumFractionDigits:n})}else"kilo"===e.format?i=(0,r.formatNumber)(i/1e3,t.locale,{maximumFractionDigits:2}):"invert"===e.format?i=(0,r.formatNumber)(i-2*i,t.locale):"position"===e.format&&(i=(0,r.formatNumber)(100-i,t.locale));return`${i}${s?` ${s}`:""}`}if(e.attribute)return`${isNaN(i)?i:(0,r.formatNumber)(i,t.locale)}${s?` ${s}`:""}`;const l=Object.assign(Object.assign({},e.stateObj),{attributes:Object.assign(Object.assign({},e.stateObj.attributes),{unit_of_measurement:s})});return(0,a.computeStateDisplay)(t.localize,l,t.locale)},e.entityStyles=t=>(0,o.isObject)(t)?Object.keys(t).map((e=>`${e}: ${t[e]};`)).join(""):"",e.renderEntitiesRow=(t,i,n,r)=>l.html`
${t.map((t=>(0,e.renderEntity)(t,i,n)))}
`,e.renderEntity=(t,i,n)=>{if(void 0===t||null==t.stateObj||(0,o.hideIf)(t,i))return null;const r=(0,o.getValue)(t),a=(0,e.clickHandler)(t.stateObj.entity_id,t.tap_action,i,n),s=(0,e.dblClickHandler)(t.stateObj.entity_id,t.double_tap_action,i,n),u=(0,e.holdHandler)(t.stateObj.entity_id,t.hold_action,i,n);let c,d,m;const h=()=>{c=!1,d=window.setTimeout((()=>{c=!0}),500)},f=e=>{e.preventDefault(),["touchend","touchcancel"].includes(e.type)&&void 0===d||(window.clearTimeout(d),d=void 0,c?u():void 0!==t.double_tap_action?"click"===e.type&&e.detail<2||!m?m=window.setTimeout((()=>{m=void 0,a()}),250):(window.clearTimeout(m),m=void 0,s()):a())};return l.html`
@@ -27,7 +27,7 @@ @click="${o}" @dblclick="${s}"> ${0===(null===(a=i.entities)||void 0===a?void 0:a.length)||i.icon?(0,e.renderIcon)(t.stateObj,i,n,"main-icon"):void 0!==t.show_state&&!1===t.show_state?"":(0,e.renderValue)(t,n)} -
`},e.renderTitle=(t,i,n,r)=>!0===i.hide_title?"":l.html`
${(0,e.renderMainEntity)(t,i,n,r)} ${i.title}
`,e.renderInfoEntity=(t,i,n)=>{if(void 0===t||!t.stateObj||(0,o.hideIf)(t,i))return null;const r=(0,e.clickHandler)(t.stateObj.entity_id,t.tap_action,i,n);return l.html`
${(0,e.renderValue)(t,i)}
`},e.clickHandler=(t,e,i,n)=>()=>(0,s.handleClick)(n,i,{entity:t,tap_action:e},!1,!1),e.dblClickHandler=(t,e,i,n)=>()=>(0,s.handleClick)(n,i,{entity:t,double_tap_action:e},!1,!0),e.holdHandler=(t,e,i,n)=>()=>(0,s.handleClick)(n,i,{entity:t,hold_action:e},!0,!1)},607:function(t,e,i){var n=this&&this.__decorate||function(t,e,i,n){var r,a=arguments.length,o=a<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(o=(a<3?r(o):a>3?r(e,i,o):r(e,i))||o);return a>3&&o&&Object.defineProperty(e,i,o),o};Object.defineProperty(e,"__esModule",{value:!0});const r=i(897),a=i(595),o=i(461),s=i(882),l=i(299);console.info("%c ROOM-CARD %c 1.3.4","color: cyan; background: black; font-weight: bold;","color: darkblue; background: white; font-weight: bold;");let u=class extends r.LitElement{constructor(){super(...arguments),this.info_entities=[],this.entities=[],this.rows=[],this._refCards=[]}setConfig(t){(0,o.checkConfig)(t),this.config=Object.assign(Object.assign({},t),{name:!1===t.name?" ":t.name,entityIds:(0,s.getEntityIds)(t)})}shouldUpdate(t){return(0,s.hasConfigOrEntitiesChanged)(this.config,t)}set hass(t){var e,i,n,r,a,o,l;this._hass=t,t&&this.config&&(this.config.entity&&(this.stateObj=t.states[this.config.entity],this.entity=Object.assign(Object.assign({},this.config),{stateObj:this.stateObj})),this.info_entities=null!==(i=null===(e=this.config.info_entities)||void 0===e?void 0:e.map((e=>(0,s.mapStateObject)(e,t))))&&void 0!==i?i:[],this.entities=null!==(r=null===(n=this.config.entities)||void 0===n?void 0:n.map((e=>(0,s.mapStateObject)(e,t))))&&void 0!==r?r:[],this.rows=null!==(o=null===(a=this.config.rows)||void 0===a?void 0:a.map((e=>{var i;return{entities:null===(i=e.entities)||void 0===i?void 0:i.map((e=>(0,s.mapStateObject)(e,t)))}})))&&void 0!==o?o:[],this._refCards=null===(l=this.config.cards)||void 0===l?void 0:l.map((e=>(0,s.createCardElement)(e,t))),this.config.hass=t)}static get styles(){return l.style}render(){var t;return this._hass&&this.config?r.html` +
`},e.renderTitle=(t,i,n,r)=>!0===i.hide_title?"":l.html`
${(0,e.renderMainEntity)(t,i,n,r)} ${i.title}
`,e.renderInfoEntity=(t,i,n)=>{if(void 0===t||!t.stateObj||(0,o.hideIf)(t,i))return null;const r=(0,e.clickHandler)(t.stateObj.entity_id,t.tap_action,i,n);return l.html`
${(0,e.renderValue)(t,i)}
`},e.clickHandler=(t,e,i,n)=>()=>(0,s.handleClick)(n,i,{entity:t,tap_action:e},!1,!1),e.dblClickHandler=(t,e,i,n)=>()=>(0,s.handleClick)(n,i,{entity:t,double_tap_action:e},!1,!0),e.holdHandler=(t,e,i,n)=>()=>(0,s.handleClick)(n,i,{entity:t,hold_action:e},!0,!1)},607:function(t,e,i){var n=this&&this.__decorate||function(t,e,i,n){var r,a=arguments.length,o=a<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,i,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(o=(a<3?r(o):a>3?r(e,i,o):r(e,i))||o);return a>3&&o&&Object.defineProperty(e,i,o),o};Object.defineProperty(e,"__esModule",{value:!0});const r=i(897),a=i(595),o=i(461),s=i(882),l=i(299);console.info("%c ROOM-CARD %c 1.3.5","color: cyan; background: black; font-weight: bold;","color: darkblue; background: white; font-weight: bold;");let u=class extends r.LitElement{constructor(){super(...arguments),this.info_entities=[],this.entities=[],this.rows=[],this._refCards=[]}setConfig(t){(0,o.checkConfig)(t),this.config=Object.assign(Object.assign({},t),{name:!1===t.name?" ":t.name,entityIds:(0,s.getEntityIds)(t)})}shouldUpdate(t){return(0,s.hasConfigOrEntitiesChanged)(this.config,t)}set hass(t){var e,i,n,r,a,o,l;this._hass=t,t&&this.config&&(this.config.entity&&(this.stateObj=t.states[this.config.entity],this.entity=Object.assign(Object.assign({},this.config),{stateObj:this.stateObj})),this.info_entities=null!==(i=null===(e=this.config.info_entities)||void 0===e?void 0:e.map((e=>(0,s.mapStateObject)(e,t))))&&void 0!==i?i:[],this.entities=null!==(r=null===(n=this.config.entities)||void 0===n?void 0:n.map((e=>(0,s.mapStateObject)(e,t))))&&void 0!==r?r:[],this.rows=null!==(o=null===(a=this.config.rows)||void 0===a?void 0:a.map((e=>{var i;return{entities:null===(i=e.entities)||void 0===i?void 0:i.map((e=>(0,s.mapStateObject)(e,t)))}})))&&void 0!==o?o:[],this._refCards=null===(l=this.config.cards)||void 0===l?void 0:l.map((e=>(0,s.createCardElement)(e,t))),this.config.hass=t)}static get styles(){return l.style}render(){var t;return this._hass&&this.config?r.html`
${(0,o.renderTitle)(this.entity,this.config,this._hass,this)} diff --git a/room-card.js.gz b/room-card.js.gz index 2a369388994b729a1b159d80e16c6c01abfca832..c29ab2e41c879b246f0ae162276fa935bd685f8f 100644 GIT binary patch delta 10977 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 delta 10953 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 diff --git a/src/entity.ts b/src/entity.ts index 3a7a032..d1101f4 100644 --- a/src/entity.ts +++ b/src/entity.ts @@ -40,6 +40,10 @@ export const renderConditionIcons = (stateObj: HomeAssistantEntity, config: Room if(item.entity) { const entity = hass.states[item.entity]; entityValue = item.attribute ? entity.attributes[item.attribute] : entity.state; + } + + if(item.attribute && !item.entity) { + entityValue = item.attribute ? stateObj.attributes[item.attribute] : stateObj.state; } return checkConditionalValue(item, entityValue); diff --git a/src/index.ts b/src/index.ts index 5d6c5cb..e2a179c 100644 --- a/src/index.ts +++ b/src/index.ts @@ -8,7 +8,7 @@ import { style } from './styles'; import { HomeAssistantEntity, RoomCardConfig, RoomCardEntity, RoomCardRow } from './types/room-card-types'; console.info( - '%c ROOM-CARD %c 1.3.5', + '%c ROOM-CARD %c 1.3.6', 'color: cyan; background: black; font-weight: bold;', 'color: darkblue; background: white; font-weight: bold;' );