From 6a282eb490e016fa1a147282f349b0118c1bc68b Mon Sep 17 00:00:00 2001 From: CCOSTAN Date: Thu, 7 Mar 2024 18:15:52 +0000 Subject: [PATCH] Closes #1407 --- config/packages/juicenet.yaml | 133 ------------------ .../www/community/button-card/button-card.js | 36 ++--- .../community/button-card/button-card.js.gz | Bin 27995 -> 27994 bytes 3 files changed, 19 insertions(+), 150 deletions(-) delete mode 100755 config/packages/juicenet.yaml diff --git a/config/packages/juicenet.yaml b/config/packages/juicenet.yaml deleted file mode 100755 index 3ce13e0c..00000000 --- a/config/packages/juicenet.yaml +++ /dev/null @@ -1,133 +0,0 @@ -#------------------------------------------- -# @CCOSTAN -# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig -# JuiceBox 40 Support - https://amzn.to/3eA95dV -# https://www.vcloudinfo.com/2018/06/using-home-assistant-to-fix-my-juicebox.html -#------------------------------------------- -# Moved to UI integration -# juicenet: -# access_token: !secret juicenet_access_token - -command_line: - switch: - name: Restart Juicebox - unique_id: restart_juicebox_switch - command_on: "/usr/bin/curl -k 'http://192.168.10.91/command/reboot'" - -############################################################################# -### Automations - Alerts related to the JuiceBox (https://amzn.to/2AZVQ37) -############################################################################## -automation: - - alias: 'Car Charging Alerts' - id: fa805e4a-08fa-4626-870f-e3df98ca3d84 - initial_state: 'on' - trigger: - - platform: state - entity_id: sensor.carlojuice_charging_status - - action: - - service: script.notify_engine - data: - value1: "The Garage charger is now in {{ states('sensor.carlojuice_charging_status') }} mode." - who: 'parents' - group: 'information' - - - alias: 'Juicebox Self-Heal' - id: e693f117-c75d-4bb9-a8f3-c104b226d0c5 - initial_state: 'on' - trigger: - - platform: state - entity_id: sensor.carlojuice_charging_status - to: 'disconnect' - for: - minutes: 6 - - platform: time_pattern - hours: '/4' - - condition: - - condition: state - entity_id: sensor.carlojuice_charging_status - state: 'disconnect' - for: - minutes: 5 - - - condition: template - value_template: > - {%- if state_attr('automation.juicebox_selfheal', 'last_triggered')-%} - {{ (as_timestamp(now()) - as_timestamp(state_attr('automation.juicebox_selfheal', 'last_triggered'))) > 10000 }} - {%- else -%} - true - {%- endif -%} - - action: - - service: homeassistant.turn_on - entity_id: switch.restart_juicebox - - - - alias: 'JuiceBox AMP Alert!' - id: b805f213-a938-4d90-8d18-e88ff4d41776 - initial_state: 'on' - trigger: - - platform: numeric_state - entity_id: sensor.carlojuice_amps - above: 24 - for: - minutes: 2 - - platform: event - event_type: event_did_someone_help_juicebox_AMPS - - condition: - - condition: state - entity_id: sensor.carlojuice_charging_status - state: 'charging' - - action: - - service: input_boolean.turn_on - entity_id: input_boolean.alert_mode - - - service: script.notify_engine - data: - value1: "The Juice Box Charger is pulling {{ states('sensor.carlojuice_amps') }} AMPs. This is above the safety mark of 30. Please unplug charger immediately." - who: 'parents' - group: 'JuiceBox' - - - service: script.speech_engine - data: - value1: "The Juice Box Charger is pulling {{ states('sensor.carlojuice_amps') }} AMPs. This is above the safety mark of 30. Please unplug charger immediately." - - - delay: 00:02:00 - - event: event_did_someone_help_juicebox_AMPS - - - alias: 'JuiceBox Temp Alert!' - id: ddb36236-6ee1-4ba4-8839-661db3658401 - initial_state: 'on' - trigger: - - platform: numeric_state - entity_id: sensor.carlojuice_temperature - above: 139 - for: - minutes: 2 - - platform: event - event_type: event_did_someone_help_juicebox_TEMP - - condition: - - condition: state - entity_id: sensor.carlojuice_charging_status - state: 'charging' - - action: - - service: input_boolean.turn_on - entity_id: input_boolean.alert_mode - - - service: script.notify_engine - data: - value1: "The Juice Box Charger is running very Hot. Temperature is around {{ states('sensor.carlojuice_temperature') }} degrees. This is above the safety mark of 140. Please unplug the car immediately." - who: 'parents' - group: 'JuiceBox' - - - service: script.speech_engine - data: - value1: "The Juice Box Charger is running very Hot. Temperature is around {{ states('sensor.carlojuice_temperature') }} degrees. This is above the safety mark of 140. Please unplug the car immediately." - - - delay: 00:02:00 - - event: event_did_someone_help_juicebox_TEMP diff --git a/config/www/community/button-card/button-card.js b/config/www/community/button-card/button-card.js index 94f92dd5..50b17e47 100755 --- a/config/www/community/button-card/button-card.js +++ b/config/www/community/button-card/button-card.js @@ -1,4 +1,4 @@ -function t(t,e,i,n){var r,s=arguments.length,o=s<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 a=t.length-1;a>=0;a--)(r=t[a])&&(o=(s<3?r(o):s>3?r(e,i,o):r(e,i))||o);return s>3&&o&&Object.defineProperty(e,i,o),o}const e=window,i=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),r=new WeakMap;class s{constructor(t,e,i){if(this._$cssResult$=!0,i!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(i&&void 0===t){const i=void 0!==e&&1===e.length;i&&(t=r.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),i&&r.set(e,t))}return t}toString(){return this.cssText}}const o=i?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new s("string"==typeof t?t:t+"",void 0,n))(e)})(t):t;var a;const l=window,c=l.trustedTypes,h=c?c.emptyScript:"",u=l.reactiveElementPolyfillSupport,d={toAttribute(t,e){switch(e){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,e)=>e!==t&&(e==e||t==t),m={attribute:!0,type:String,converter:d,reflect:!1,hasChanged:f},p="finalized";class g extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var e;this.finalize(),(null!==(e=this.h)&&void 0!==e?e:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,i)=>{const n=this._$Ep(i,e);void 0!==n&&(this._$Ev.set(n,i),t.push(n))})),t}static createProperty(t,e=m){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const i="symbol"==typeof t?Symbol():"__"+t,n=this.getPropertyDescriptor(t,i,e);void 0!==n&&Object.defineProperty(this.prototype,t,n)}}static getPropertyDescriptor(t,e,i){return{get(){return this[e]},set(n){const r=this[t];this[e]=n,this.requestUpdate(t,r,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||m}static finalize(){if(this.hasOwnProperty(p))return!1;this[p]=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const i of e)this.createProperty(i,t[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift(o(t))}else void 0!==t&&e.push(o(t));return e}static _$Ep(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,i;(null!==(e=this._$ES)&&void 0!==e?e:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(i=t.hostConnected)||void 0===i||i.call(t))}removeController(t){var e;null===(e=this._$ES)||void 0===e||e.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Ei.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const n=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return((t,n)=>{i?t.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((i=>{const n=document.createElement("style"),r=e.litNonce;void 0!==r&&n.setAttribute("nonce",r),n.textContent=i.cssText,t.appendChild(n)}))})(n,this.constructor.elementStyles),n}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$EO(t,e,i=m){var n;const r=this.constructor._$Ep(t,i);if(void 0!==r&&!0===i.reflect){const s=(void 0!==(null===(n=i.converter)||void 0===n?void 0:n.toAttribute)?i.converter:d).toAttribute(e,i.type);this._$El=t,null==s?this.removeAttribute(r):this.setAttribute(r,s),this._$El=null}}_$AK(t,e){var i;const n=this.constructor,r=n._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=n.getPropertyOptions(r),s="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(i=t.converter)||void 0===i?void 0:i.fromAttribute)?t.converter:d;this._$El=r,this[r]=s.fromAttribute(e,t.type),this._$El=null}}requestUpdate(t,e,i){let n=!0;void 0!==t&&(((i=i||this.constructor.getPropertyOptions(t)).hasChanged||f)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===i.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,i))):n=!1),!this.isUpdatePending&&n&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,e)=>this[e]=t)),this._$Ei=void 0);let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(i)):this._$Ek()}catch(t){throw e=!1,this._$Ek(),t}e&&this._$AE(i)}willUpdate(t){}_$AE(t){var e;null===(e=this._$ES)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$EO(e,this[e],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}var _;g[p]=!0,g.elementProperties=new Map,g.elementStyles=[],g.shadowRootOptions={mode:"open"},null==u||u({ReactiveElement:g}),(null!==(a=l.reactiveElementVersions)&&void 0!==a?a:l.reactiveElementVersions=[]).push("1.6.2");const v=window,b=v.trustedTypes,y=b?b.createPolicy("lit-html",{createHTML:t=>t}):void 0,w="$lit$",$=`lit$${(Math.random()+"").slice(9)}$`,A="?"+$,k=`<${A}>`,x=document,S=()=>x.createComment(""),E=t=>null===t||"object"!=typeof t&&"function"!=typeof t,O=Array.isArray,T="[ \t\n\f\r]",C=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,M=/-->/g,j=/>/g,H=RegExp(`>|${T}(?:([^\\s"'>=/]+)(${T}*=${T}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),D=/'/g,R=/"/g,N=/^(?:script|style|textarea|title)$/i,P=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),z=Symbol.for("lit-noChange"),I=Symbol.for("lit-nothing"),L=new WeakMap,F=x.createTreeWalker(x,129,null,!1);function V(t,e){if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==y?y.createHTML(e):e}const U=(t,e)=>{const i=t.length-1,n=[];let r,s=2===e?"":"",o=C;for(let a=0;a"===l[0]?(o=null!=r?r:C,c=-1):void 0===l[1]?c=-2:(c=o.lastIndex-l[2].length,i=l[1],o=void 0===l[3]?H:'"'===l[3]?R:D):o===R||o===D?o=H:o===M||o===j?o=C:(o=H,r=void 0);const u=o===H&&t[a+1].startsWith("/>")?" ":"";s+=o===C?e+k:c>=0?(n.push(i),e.slice(0,c)+w+e.slice(c)+$+u):e+$+(-2===c?(n.push(void 0),a):u)}return[V(t,s+(t[i]||"")+(2===e?"":"")),n]};class B{constructor({strings:t,_$litType$:e},i){let n;this.parts=[];let r=0,s=0;const o=t.length-1,a=this.parts,[l,c]=U(t,e);if(this.el=B.createElement(l,i),F.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=F.nextNode())&&a.length0){n.textContent=b?b.emptyScript:"";for(let i=0;iO(t)||"function"==typeof(null==t?void 0:t[Symbol.iterator]))(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==I&&E(this._$AH)?this._$AA.nextSibling.data=t:this.$(x.createTextNode(t)),this._$AH=t}g(t){var e;const{values:i,_$litType$:n}=t,r="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=B.createElement(V(n.h,n.h[0]),this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===r)this._$AH.v(i);else{const t=new q(r,this),e=t.u(this.options);t.v(i),this.$(e),this._$AH=t}}_$AC(t){let e=L.get(t.strings);return void 0===e&&L.set(t.strings,e=new B(t)),e}T(t){O(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,n=0;for(const r of t)n===e.length?e.push(i=new Z(this.k(S()),this.k(S()),this,this.options)):i=e[n],i._$AI(r),n++;n2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=I}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,n){const r=this.strings;let s=!1;if(void 0===r)t=W(this,t,e,0),s=!E(t)||t!==this._$AH&&t!==z,s&&(this._$AH=t);else{const n=t;let o,a;for(t=r[0],o=0;o{var n,r;const s=null!==(n=null==i?void 0:i.renderBefore)&&void 0!==n?n:e;let o=s._$litPart$;if(void 0===o){const t=null!==(r=null==i?void 0:i.renderBefore)&&void 0!==r?r:null;s._$litPart$=o=new Z(e.insertBefore(S(),t),t,void 0,null!=i?i:{})}return o._$AI(t),o})(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return z}}nt.finalized=!0,nt._$litElement$=!0,null===(et=globalThis.litElementHydrateSupport)||void 0===et||et.call(globalThis,{LitElement:nt});const rt=globalThis.litElementPolyfillSupport;null==rt||rt({LitElement:nt}),(null!==(it=globalThis.litElementVersions)&&void 0!==it?it:globalThis.litElementVersions=[]).push("3.3.2");const st=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?{...e,finisher(i){i.createProperty(e.key,t)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){"function"==typeof e.initializer&&(this[e.key]=e.initializer.call(this))},finisher(i){i.createProperty(e.key,t)}};function ot(t){return(e,i)=>void 0!==i?((t,e,i)=>{e.constructor.createProperty(i,t)})(t,e,i):st(t,e)}const at=({finisher:t,descriptor:e})=>(i,n)=>{var r;if(void 0===n){const n=null!==(r=i.originalKey)&&void 0!==r?r:i.key,s=null!=e?{kind:"method",placement:"prototype",key:n,descriptor:e(i.key)}:{...i,key:n};return null!=t&&(s.finisher=function(e){t(e,n)}),s}{const r=i.constructor;void 0!==e&&Object.defineProperty(i,n,e(n)),null==t||t(r,n)}};var lt;null===(lt=window.HTMLSlotElement)||void 0===lt||lt.prototype.assignedElements;class ct{constructor(t){this.startPress=e=>{t().then((t=>{t&&t.startPress(e)}))},this.endPress=()=>{t().then((t=>{t&&t.endPress()}))},this.startFocus=()=>{t().then((t=>{t&&t.startFocus()}))},this.endFocus=()=>{t().then((t=>{t&&t.endFocus()}))},this.startHover=()=>{t().then((t=>{t&&t.startHover()}))},this.endHover=()=>{t().then((t=>{t&&t.endHover()}))}}}const ht=1,ut=2,dt=t=>(...e)=>({_$litDirective$:t,values:e});class ft{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}const mt="important",pt=" !"+mt,gt=dt(class extends ft{constructor(t){var e;if(super(t),t.type!==ht||"style"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(t){return Object.keys(t).reduce(((e,i)=>{const n=t[i];return null==n?e:e+`${i=i.includes("-")?i:i.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${n};`}),"")}update(t,[e]){const{style:i}=t.element;if(void 0===this.ut){this.ut=new Set;for(const t in e)this.ut.add(t);return this.render(e)}this.ut.forEach((t=>{null==e[t]&&(this.ut.delete(t),t.includes("-")?i.removeProperty(t):i[t]="")}));for(const n in e){const t=e[n];if(null!=t){this.ut.add(n);const e="string"==typeof t&&t.endsWith(pt);n.includes("-")||e?i.setProperty(n,e?t.slice(0,-11):t,e?mt:""):i[n]=t}}return z}});class _t extends ft{constructor(t){if(super(t),this.et=I,t.type!==ut)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===I||null==t)return this.ft=void 0,this.et=t;if(t===z)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.et)return this.ft;this.et=t;const e=[t];return e.raw=e,this.ft={_$litType$:this.constructor.resultType,strings:e,values:[]}}}_t.directiveName="unsafeHTML",_t.resultType=1;const vt=dt(_t),bt=dt(class extends ft{constructor(t){var e;if(super(t),t.type!==ht||"class"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter((e=>t[e])).join(" ")+" "}update(t,[e]){var i,n;if(void 0===this.it){this.it=new Set,void 0!==t.strings&&(this.nt=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in e)e[t]&&!(null===(i=this.nt)||void 0===i?void 0:i.has(t))&&this.it.add(t);return this.render(e)}const r=t.element.classList;this.it.forEach((t=>{t in e||(r.remove(t),this.it.delete(t))}));for(const s in e){const t=!!e[s];t===this.it.has(s)||(null===(n=this.nt)||void 0===n?void 0:n.has(s))||(t?(r.add(s),this.it.add(s)):(r.remove(s),this.it.delete(s)))}return z}}),yt=(t,e,i,n)=>{n=n||{},i=null==i?{}:i;const 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},wt=(t,e)=>{if(t===e)return!0;if(t&&e&&"object"==typeof t&&"object"==typeof e){if(t.constructor!==e.constructor)return!1;let i,n;if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(i=n;0!=i--;)if(!wt(t[i],e[i]))return!1;return!0}if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(i of t.entries())if(!e.has(i[0]))return!1;for(i of t.entries())if(!wt(i[1],e.get(i[0])))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(i of t.entries())if(!e.has(i[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(e)){if(n=t.length,n!==e.length)return!1;for(i=n;0!=i--;)if(t[i]!==e[i])return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===e.toString();const r=Object.keys(t);if(n=r.length,n!==Object.keys(e).length)return!1;for(i=n;0!=i--;)if(!Object.prototype.hasOwnProperty.call(e,r[i]))return!1;for(i=n;0!=i--;){const n=r[i];if(!wt(t[n],e[n]))return!1}return!0}return t!=t&&e!=e},$t="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;class At extends HTMLElement{constructor(){super(),this.holdTime=500,this.held=!1,this.cancelled=!1,this.isRepeating=!1,this.repeatCount=0,this.ripple=document.createElement("mwc-ripple")}connectedCallback(){Object.assign(this.style,{position:"fixed",width:$t?"100px":"50px",height:$t?"100px":"50px",transform:"translate(-50%, -50%)",pointerEvents:"none",zIndex:"999"}),this.appendChild(this.ripple),this.ripple.primary=!0,["touchcancel","mouseout","mouseup","touchmove","mousewheel","wheel","scroll"].forEach((t=>{document.addEventListener(t,(()=>{this.cancelled=!0,this.timer&&(this.stopAnimation(),clearTimeout(this.timer),this.timer=void 0,this.isRepeating&&this.repeatTimeout&&(clearInterval(this.repeatTimeout),this.isRepeating=!1))}),{passive:!0})}))}bind(t,e){t.actionHandler&&wt(e,t.actionHandler.options)||(t.actionHandler?(t.removeEventListener("touchstart",t.actionHandler.start),t.removeEventListener("touchend",t.actionHandler.end),t.removeEventListener("touchcancel",t.actionHandler.end),t.removeEventListener("mousedown",t.actionHandler.start),t.removeEventListener("click",t.actionHandler.end),t.removeEventListener("keyup",t.actionHandler.handleEnter)):t.addEventListener("contextmenu",(t=>{const e=t||window.event;return e.preventDefault&&e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0,e.returnValue=!1,!1})),t.actionHandler={options:e},e.disabled||(t.actionHandler.start=i=>{let n,r;this.cancelled=!1,i.touches?(n=i.touches[0].clientX,r=i.touches[0].clientY):(n=i.clientX,r=i.clientY),e.hasHold&&(this.held=!1,this.timer=window.setTimeout((()=>{this.startAnimation(n,r),this.held=!0,e.repeat&&!this.isRepeating&&(this.repeatCount=0,this.isRepeating=!0,this.repeatTimeout=setInterval((()=>{yt(t,"action",{action:"hold"}),this.repeatCount++,this.repeatTimeout&&e.repeatLimit&&this.repeatCount>=e.repeatLimit&&(clearInterval(this.repeatTimeout),this.isRepeating=!1)}),e.repeat))}),this.holdTime))},t.actionHandler.end=t=>{if(["touchend","touchcancel"].includes(t.type)&&this.cancelled)return void(this.isRepeating&&this.repeatTimeout&&(clearInterval(this.repeatTimeout),this.isRepeating=!1));const i=t.target;t.cancelable&&t.preventDefault(),e.hasHold&&(clearTimeout(this.timer),this.isRepeating&&this.repeatTimeout&&clearInterval(this.repeatTimeout),this.isRepeating=!1,this.stopAnimation(),this.timer=void 0),e.hasHold&&this.held?e.repeat||yt(i,"action",{action:"hold"}):e.hasDoubleClick?"click"===t.type&&t.detail<2||!this.dblClickTimeout?this.dblClickTimeout=window.setTimeout((()=>{this.dblClickTimeout=void 0,yt(i,"action",{action:"tap"})}),250):(clearTimeout(this.dblClickTimeout),this.dblClickTimeout=void 0,yt(i,"action",{action:"double_tap"})):yt(i,"action",{action:"tap"})},t.actionHandler.handleEnter=t=>{13===t.keyCode&&t.currentTarget.actionHandler.end(t)},t.addEventListener("touchstart",t.actionHandler.start,{passive:!0}),t.addEventListener("touchend",t.actionHandler.end),t.addEventListener("touchcancel",t.actionHandler.end),t.addEventListener("mousedown",t.actionHandler.start,{passive:!0}),t.addEventListener("click",t.actionHandler.end),t.addEventListener("keyup",t.actionHandler.handleEnter)))}startAnimation(t,e){Object.assign(this.style,{left:`${t}px`,top:`${e}px`,display:null}),this.ripple.disabled=!1,this.ripple.startPress(),this.ripple.unbounded=!0}stopAnimation(){this.ripple.endPress(),this.ripple.disabled=!0,this.style.display="none"}}customElements.define("button-card-action-handler",At);const kt=(t,e)=>{const i=(()=>{const t=document.body;if(t.querySelector("button-card-action-handler"))return t.querySelector("button-card-action-handler");const e=document.createElement("button-card-action-handler");return t.appendChild(e),e})();i&&i.bind(t,e)},xt=dt(class extends ft{update(t,[e]){return kt(t.element,e),z}render(t){}});function St(t,e){(function(t){return"string"==typeof t&&-1!==t.indexOf(".")&&1===parseFloat(t)})(t)&&(t="100%");var i=function(t){return"string"==typeof t&&-1!==t.indexOf("%")}(t);return t=360===e?t:Math.min(e,Math.max(0,parseFloat(t))),i&&(t=parseInt(String(t*e),10)/100),Math.abs(t-e)<1e-6?1:t=360===e?(t<0?t%e+e:t%e)/parseFloat(String(e)):t%e/parseFloat(String(e))}function Et(t){return Math.min(1,Math.max(0,t))}function Ot(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function Tt(t){return t<=1?"".concat(100*Number(t),"%"):t}function Ct(t){return 1===t.length?"0"+t:String(t)}function Mt(t,e,i){t=St(t,255),e=St(e,255),i=St(i,255);var n=Math.max(t,e,i),r=Math.min(t,e,i),s=0,o=0,a=(n+r)/2;if(n===r)o=0,s=0;else{var l=n-r;switch(o=a>.5?l/(2-n-r):l/(n+r),n){case t:s=(e-i)/l+(e1&&(i-=1),i<1/6?t+6*i*(e-t):i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}function Ht(t,e,i){t=St(t,255),e=St(e,255),i=St(i,255);var n=Math.max(t,e,i),r=Math.min(t,e,i),s=0,o=n,a=n-r,l=0===n?0:a/n;if(n===r)s=0;else{switch(n){case t:s=(e-i)/a+(e>16,g:(65280&t)>>8,b:255&t}}(e)),this.originalInput=e;var r=It(e);this.originalInput=e,this.r=r.r,this.g=r.g,this.b=r.b,this.a=r.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(n=i.format)&&void 0!==n?n:r.format,this.gradientType=i.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=r.ok}return t.prototype.isDark=function(){return this.getBrightness()<128},t.prototype.isLight=function(){return!this.isDark()},t.prototype.getBrightness=function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},t.prototype.getLuminance=function(){var t=this.toRgb(),e=t.r/255,i=t.g/255,n=t.b/255;return.2126*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.7152*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))},t.prototype.getAlpha=function(){return this.a},t.prototype.setAlpha=function(t){return this.a=Ot(t),this.roundA=Math.round(100*this.a)/100,this},t.prototype.isMonochrome=function(){return 0===this.toHsl().s},t.prototype.toHsv=function(){var t=Ht(this.r,this.g,this.b);return{h:360*t.h,s:t.s,v:t.v,a:this.a}},t.prototype.toHsvString=function(){var t=Ht(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),n=Math.round(100*t.v);return 1===this.a?"hsv(".concat(e,", ").concat(i,"%, ").concat(n,"%)"):"hsva(".concat(e,", ").concat(i,"%, ").concat(n,"%, ").concat(this.roundA,")")},t.prototype.toHsl=function(){var t=Mt(this.r,this.g,this.b);return{h:360*t.h,s:t.s,l:t.l,a:this.a}},t.prototype.toHslString=function(){var t=Mt(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),n=Math.round(100*t.l);return 1===this.a?"hsl(".concat(e,", ").concat(i,"%, ").concat(n,"%)"):"hsla(".concat(e,", ").concat(i,"%, ").concat(n,"%, ").concat(this.roundA,")")},t.prototype.toHex=function(t){return void 0===t&&(t=!1),Dt(this.r,this.g,this.b,t)},t.prototype.toHexString=function(t){return void 0===t&&(t=!1),"#"+this.toHex(t)},t.prototype.toHex8=function(t){return void 0===t&&(t=!1),function(t,e,i,n,r){var s=[Ct(Math.round(t).toString(16)),Ct(Math.round(e).toString(16)),Ct(Math.round(i).toString(16)),Ct(Rt(n))];return r&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}(this.r,this.g,this.b,this.a,t)},t.prototype.toHex8String=function(t){return void 0===t&&(t=!1),"#"+this.toHex8(t)},t.prototype.toHexShortString=function(t){return void 0===t&&(t=!1),1===this.a?this.toHexString(t):this.toHex8String(t)},t.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},t.prototype.toRgbString=function(){var t=Math.round(this.r),e=Math.round(this.g),i=Math.round(this.b);return 1===this.a?"rgb(".concat(t,", ").concat(e,", ").concat(i,")"):"rgba(".concat(t,", ").concat(e,", ").concat(i,", ").concat(this.roundA,")")},t.prototype.toPercentageRgb=function(){var t=function(t){return"".concat(Math.round(100*St(t,255)),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},t.prototype.toPercentageRgbString=function(){var t=function(t){return Math.round(100*St(t,255))};return 1===this.a?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},t.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var t="#"+Dt(this.r,this.g,this.b,!1),e=0,i=Object.entries(zt);e=0;return e||!n||!t.startsWith("hex")&&"name"!==t?("rgb"===t&&(i=this.toRgbString()),"prgb"===t&&(i=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(i=this.toHexString()),"hex3"===t&&(i=this.toHexString(!0)),"hex4"===t&&(i=this.toHex8String(!0)),"hex8"===t&&(i=this.toHex8String()),"name"===t&&(i=this.toName()),"hsl"===t&&(i=this.toHslString()),"hsv"===t&&(i=this.toHsvString()),i||this.toHexString()):"name"===t&&0===this.a?this.toName():this.toRgbString()},t.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},t.prototype.clone=function(){return new t(this.toString())},t.prototype.lighten=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.l+=e/100,i.l=Et(i.l),new t(i)},t.prototype.brighten=function(e){void 0===e&&(e=10);var i=this.toRgb();return i.r=Math.max(0,Math.min(255,i.r-Math.round(-e/100*255))),i.g=Math.max(0,Math.min(255,i.g-Math.round(-e/100*255))),i.b=Math.max(0,Math.min(255,i.b-Math.round(-e/100*255))),new t(i)},t.prototype.darken=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.l-=e/100,i.l=Et(i.l),new t(i)},t.prototype.tint=function(t){return void 0===t&&(t=10),this.mix("white",t)},t.prototype.shade=function(t){return void 0===t&&(t=10),this.mix("black",t)},t.prototype.desaturate=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.s-=e/100,i.s=Et(i.s),new t(i)},t.prototype.saturate=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.s+=e/100,i.s=Et(i.s),new t(i)},t.prototype.greyscale=function(){return this.desaturate(100)},t.prototype.spin=function(e){var i=this.toHsl(),n=(i.h+e)%360;return i.h=n<0?360+n:n,new t(i)},t.prototype.mix=function(e,i){void 0===i&&(i=50);var n=this.toRgb(),r=new t(e).toRgb(),s=i/100;return new t({r:(r.r-n.r)*s+n.r,g:(r.g-n.g)*s+n.g,b:(r.b-n.b)*s+n.b,a:(r.a-n.a)*s+n.a})},t.prototype.analogous=function(e,i){void 0===e&&(e=6),void 0===i&&(i=30);var n=this.toHsl(),r=360/i,s=[this];for(n.h=(n.h-(r*e>>1)+720)%360;--e;)n.h=(n.h+r)%360,s.push(new t(n));return s},t.prototype.complement=function(){var e=this.toHsl();return e.h=(e.h+180)%360,new t(e)},t.prototype.monochromatic=function(e){void 0===e&&(e=6);for(var i=this.toHsv(),n=i.h,r=i.s,s=i.v,o=[],a=1/e;e--;)o.push(new t({h:n,s:r,v:s})),s=(s+a)%1;return o},t.prototype.splitcomplement=function(){var e=this.toHsl(),i=e.h;return[this,new t({h:(i+72)%360,s:e.s,l:e.l}),new t({h:(i+216)%360,s:e.s,l:e.l})]},t.prototype.onBackground=function(e){var i=this.toRgb(),n=new t(e).toRgb(),r=i.a+n.a*(1-i.a);return new t({r:(i.r*i.a+n.r*n.a*(1-i.a))/r,g:(i.g*i.a+n.g*n.a*(1-i.a))/r,b:(i.b*i.a+n.b*n.a*(1-i.a))/r,a:r})},t.prototype.triad=function(){return this.polyad(3)},t.prototype.tetrad=function(){return this.polyad(4)},t.prototype.polyad=function(e){for(var i=this.toHsl(),n=i.h,r=[this],s=360/e,o=1;oYt.includes(t,e));var Yt;const Kt=new Set(["fan","input_boolean","light","switch","group","automation","humidifier"]),Jt=["auto","auto-no-temperature"],Xt=["card","label-card"],Qt=["--ha-card-background","--card-background-color"],te="var(--primary-text-color)";function ee(t){return t.substr(0,t.indexOf("."))}function ie(t,e){const i=[];let n=e;return"var"===e.trim().substring(0,3)&&(e.split(",").forEach((t=>{const e=t.match(/var\(\s*([a-zA-Z0-9-]*)/);e&&i.push(e[1])})),i.some((e=>{const i=window.getComputedStyle(t).getPropertyValue(e);return!!i&&(n=i,!0)}))),n}function ne(...t){const e=t=>t&&"object"==typeof t;return t.reduce(((t,i)=>(Object.keys(i).forEach((n=>{const r=t[n],s=i[n];Array.isArray(r)&&Array.isArray(s)?t[n]=r.concat(...s):e(r)&&e(s)?t[n]=ne(r,s):t[n]=s})),t)),{})}function re(t,e){let i=[];return t&&t.forEach((t=>{let n=t;e&&e.forEach((e=>{e.id&&t.id&&e.id==t.id&&(n=ne(n,e))})),i.push(n)})),e&&(i=i.concat(e.filter((e=>!t||!t.find((t=>!(!t.id||!e.id)&&t.id==e.id)))))),i}function se(t,e){if(void 0===t)return!1;const i=ee(t.entity_id),n=void 0!==e?e:null==t?void 0:t.state;if(["button","event","input_button","scene"].includes(i))return n!==Zt;if(Gt(n))return!1;if("off"===n&&"alert"!==i)return!1;switch(i){case"alarm_control_panel":return"disarmed"!==n;case"alert":return"idle"!==n;case"cover":return"closed"!==n;case"device_tracker":case"person":return"not_home"!==n;case"lock":return"locked"!==n;case"media_player":return"standby"!==n;case"vacuum":return!["idle","docked","paused"].includes(n);case"plant":return"problem"===n;case"group":return["on","home","open","locked","problem"].includes(n);case"timer":return"active"===n;case"camera":return"streaming"===n}return!0}function oe(t){return Array.isArray(t)?t.reverse().reduce(((t,e)=>`var(${e}${t?`, ${t}`:""})`),void 0):`var(${t})`}function ae(t){const e=t.split(":").map(Number);return 3600*e[0]+60*e[1]+e[2]}const le=t=>t<10?`0${t}`:t;const ce=new Set(["call-service","divider","section","weblink","cast","select"]),he={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"},ue=((t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[n+1]),t[0]);return new s(i,t,n)})` +function t(t,e,i,n){var r,s=arguments.length,a=s<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,n);else for(var o=t.length-1;o>=0;o--)(r=t[o])&&(a=(s<3?r(a):s>3?r(e,i,a):r(e,i))||a);return s>3&&a&&Object.defineProperty(e,i,a),a}const e=window,i=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,n=Symbol(),r=new WeakMap;class s{constructor(t,e,i){if(this._$cssResult$=!0,i!==n)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const e=this.t;if(i&&void 0===t){const i=void 0!==e&&1===e.length;i&&(t=r.get(e)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),i&&r.set(e,t))}return t}toString(){return this.cssText}}const a=i?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const i of t.cssRules)e+=i.cssText;return(t=>new s("string"==typeof t?t:t+"",void 0,n))(e)})(t):t;var o;const l=window,c=l.trustedTypes,h=c?c.emptyScript:"",u=l.reactiveElementPolyfillSupport,d={toAttribute(t,e){switch(e){case Boolean:t=t?h:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let i=t;switch(e){case Boolean:i=null!==t;break;case Number:i=null===t?null:Number(t);break;case Object:case Array:try{i=JSON.parse(t)}catch(t){i=null}}return i}},f=(t,e)=>e!==t&&(e==e||t==t),m={attribute:!0,type:String,converter:d,reflect:!1,hasChanged:f},p="finalized";class g extends HTMLElement{constructor(){super(),this._$Ei=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$El=null,this.u()}static addInitializer(t){var e;this.finalize(),(null!==(e=this.h)&&void 0!==e?e:this.h=[]).push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,i)=>{const n=this._$Ep(i,e);void 0!==n&&(this._$Ev.set(n,i),t.push(n))})),t}static createProperty(t,e=m){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const i="symbol"==typeof t?Symbol():"__"+t,n=this.getPropertyDescriptor(t,i,e);void 0!==n&&Object.defineProperty(this.prototype,t,n)}}static getPropertyDescriptor(t,e,i){return{get(){return this[e]},set(n){const r=this[t];this[e]=n,this.requestUpdate(t,r,i)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||m}static finalize(){if(this.hasOwnProperty(p))return!1;this[p]=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),void 0!==t.h&&(this.h=[...t.h]),this.elementProperties=new Map(t.elementProperties),this._$Ev=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const i of e)this.createProperty(i,t[i])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const i=new Set(t.flat(1/0).reverse());for(const t of i)e.unshift(a(t))}else void 0!==t&&e.push(a(t));return e}static _$Ep(t,e){const i=e.attribute;return!1===i?void 0:"string"==typeof i?i:"string"==typeof t?t.toLowerCase():void 0}u(){var t;this._$E_=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Eg(),this.requestUpdate(),null===(t=this.constructor.h)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,i;(null!==(e=this._$ES)&&void 0!==e?e:this._$ES=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(i=t.hostConnected)||void 0===i||i.call(t))}removeController(t){var e;null===(e=this._$ES)||void 0===e||e.splice(this._$ES.indexOf(t)>>>0,1)}_$Eg(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Ei.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const n=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return((t,n)=>{i?t.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((i=>{const n=document.createElement("style"),r=e.litNonce;void 0!==r&&n.setAttribute("nonce",r),n.textContent=i.cssText,t.appendChild(n)}))})(n,this.constructor.elementStyles),n}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,i){this._$AK(t,i)}_$EO(t,e,i=m){var n;const r=this.constructor._$Ep(t,i);if(void 0!==r&&!0===i.reflect){const s=(void 0!==(null===(n=i.converter)||void 0===n?void 0:n.toAttribute)?i.converter:d).toAttribute(e,i.type);this._$El=t,null==s?this.removeAttribute(r):this.setAttribute(r,s),this._$El=null}}_$AK(t,e){var i;const n=this.constructor,r=n._$Ev.get(t);if(void 0!==r&&this._$El!==r){const t=n.getPropertyOptions(r),s="function"==typeof t.converter?{fromAttribute:t.converter}:void 0!==(null===(i=t.converter)||void 0===i?void 0:i.fromAttribute)?t.converter:d;this._$El=r,this[r]=s.fromAttribute(e,t.type),this._$El=null}}requestUpdate(t,e,i){let n=!0;void 0!==t&&(((i=i||this.constructor.getPropertyOptions(t)).hasChanged||f)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===i.reflect&&this._$El!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,i))):n=!1),!this.isUpdatePending&&n&&(this._$E_=this._$Ej())}async _$Ej(){this.isUpdatePending=!0;try{await this._$E_}catch(t){Promise.reject(t)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Ei&&(this._$Ei.forEach(((t,e)=>this[e]=t)),this._$Ei=void 0);let e=!1;const i=this._$AL;try{e=this.shouldUpdate(i),e?(this.willUpdate(i),null===(t=this._$ES)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(i)):this._$Ek()}catch(t){throw e=!1,this._$Ek(),t}e&&this._$AE(i)}willUpdate(t){}_$AE(t){var e;null===(e=this._$ES)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$Ek(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$E_}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$EO(e,this[e],t))),this._$EC=void 0),this._$Ek()}updated(t){}firstUpdated(t){}}var _;g[p]=!0,g.elementProperties=new Map,g.elementStyles=[],g.shadowRootOptions={mode:"open"},null==u||u({ReactiveElement:g}),(null!==(o=l.reactiveElementVersions)&&void 0!==o?o:l.reactiveElementVersions=[]).push("1.6.2");const v=window,b=v.trustedTypes,y=b?b.createPolicy("lit-html",{createHTML:t=>t}):void 0,w="$lit$",$=`lit$${(Math.random()+"").slice(9)}$`,A="?"+$,x=`<${A}>`,k=document,S=()=>k.createComment(""),E=t=>null===t||"object"!=typeof t&&"function"!=typeof t,O=Array.isArray,T="[ \t\n\f\r]",C=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,M=/-->/g,j=/>/g,H=RegExp(`>|${T}(?:([^\\s"'>=/]+)(${T}*=${T}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),D=/'/g,R=/"/g,N=/^(?:script|style|textarea|title)$/i,P=(t=>(e,...i)=>({_$litType$:t,strings:e,values:i}))(1),z=Symbol.for("lit-noChange"),I=Symbol.for("lit-nothing"),L=new WeakMap,F=k.createTreeWalker(k,129,null,!1);function V(t,e){if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==y?y.createHTML(e):e}const U=(t,e)=>{const i=t.length-1,n=[];let r,s=2===e?"":"",a=C;for(let o=0;o"===l[0]?(a=null!=r?r:C,c=-1):void 0===l[1]?c=-2:(c=a.lastIndex-l[2].length,i=l[1],a=void 0===l[3]?H:'"'===l[3]?R:D):a===R||a===D?a=H:a===M||a===j?a=C:(a=H,r=void 0);const u=a===H&&t[o+1].startsWith("/>")?" ":"";s+=a===C?e+x:c>=0?(n.push(i),e.slice(0,c)+w+e.slice(c)+$+u):e+$+(-2===c?(n.push(void 0),o):u)}return[V(t,s+(t[i]||"")+(2===e?"":"")),n]};class B{constructor({strings:t,_$litType$:e},i){let n;this.parts=[];let r=0,s=0;const a=t.length-1,o=this.parts,[l,c]=U(t,e);if(this.el=B.createElement(l,i),F.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(n=F.nextNode())&&o.length0){n.textContent=b?b.emptyScript:"";for(let i=0;iO(t)||"function"==typeof(null==t?void 0:t[Symbol.iterator]))(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==I&&E(this._$AH)?this._$AA.nextSibling.data=t:this.$(k.createTextNode(t)),this._$AH=t}g(t){var e;const{values:i,_$litType$:n}=t,r="number"==typeof n?this._$AC(t):(void 0===n.el&&(n.el=B.createElement(V(n.h,n.h[0]),this.options)),n);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===r)this._$AH.v(i);else{const t=new q(r,this),e=t.u(this.options);t.v(i),this.$(e),this._$AH=t}}_$AC(t){let e=L.get(t.strings);return void 0===e&&L.set(t.strings,e=new B(t)),e}T(t){O(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let i,n=0;for(const r of t)n===e.length?e.push(i=new Z(this.k(S()),this.k(S()),this,this.options)):i=e[n],i._$AI(r),n++;n2||""!==i[0]||""!==i[1]?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=I}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,i,n){const r=this.strings;let s=!1;if(void 0===r)t=W(this,t,e,0),s=!E(t)||t!==this._$AH&&t!==z,s&&(this._$AH=t);else{const n=t;let a,o;for(t=r[0],a=0;a{var n,r;const s=null!==(n=null==i?void 0:i.renderBefore)&&void 0!==n?n:e;let a=s._$litPart$;if(void 0===a){const t=null!==(r=null==i?void 0:i.renderBefore)&&void 0!==r?r:null;s._$litPart$=a=new Z(e.insertBefore(S(),t),t,void 0,null!=i?i:{})}return a._$AI(t),a})(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Do)||void 0===t||t.setConnected(!1)}render(){return z}}nt.finalized=!0,nt._$litElement$=!0,null===(et=globalThis.litElementHydrateSupport)||void 0===et||et.call(globalThis,{LitElement:nt});const rt=globalThis.litElementPolyfillSupport;null==rt||rt({LitElement:nt}),(null!==(it=globalThis.litElementVersions)&&void 0!==it?it:globalThis.litElementVersions=[]).push("3.3.2");const st=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?{...e,finisher(i){i.createProperty(e.key,t)}}:{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){"function"==typeof e.initializer&&(this[e.key]=e.initializer.call(this))},finisher(i){i.createProperty(e.key,t)}};function at(t){return(e,i)=>void 0!==i?((t,e,i)=>{e.constructor.createProperty(i,t)})(t,e,i):st(t,e)}const ot=({finisher:t,descriptor:e})=>(i,n)=>{var r;if(void 0===n){const n=null!==(r=i.originalKey)&&void 0!==r?r:i.key,s=null!=e?{kind:"method",placement:"prototype",key:n,descriptor:e(i.key)}:{...i,key:n};return null!=t&&(s.finisher=function(e){t(e,n)}),s}{const r=i.constructor;void 0!==e&&Object.defineProperty(i,n,e(n)),null==t||t(r,n)}};var lt;null===(lt=window.HTMLSlotElement)||void 0===lt||lt.prototype.assignedElements;class ct{constructor(t){this.startPress=e=>{t().then((t=>{t&&t.startPress(e)}))},this.endPress=()=>{t().then((t=>{t&&t.endPress()}))},this.startFocus=()=>{t().then((t=>{t&&t.startFocus()}))},this.endFocus=()=>{t().then((t=>{t&&t.endFocus()}))},this.startHover=()=>{t().then((t=>{t&&t.startHover()}))},this.endHover=()=>{t().then((t=>{t&&t.endHover()}))}}}const ht=1,ut=2,dt=t=>(...e)=>({_$litDirective$:t,values:e});class ft{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}}const mt="important",pt=" !"+mt,gt=dt(class extends ft{constructor(t){var e;if(super(t),t.type!==ht||"style"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(t){return Object.keys(t).reduce(((e,i)=>{const n=t[i];return null==n?e:e+`${i=i.includes("-")?i:i.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${n};`}),"")}update(t,[e]){const{style:i}=t.element;if(void 0===this.ut){this.ut=new Set;for(const t in e)this.ut.add(t);return this.render(e)}this.ut.forEach((t=>{null==e[t]&&(this.ut.delete(t),t.includes("-")?i.removeProperty(t):i[t]="")}));for(const n in e){const t=e[n];if(null!=t){this.ut.add(n);const e="string"==typeof t&&t.endsWith(pt);n.includes("-")||e?i.setProperty(n,e?t.slice(0,-11):t,e?mt:""):i[n]=t}}return z}});class _t extends ft{constructor(t){if(super(t),this.et=I,t.type!==ut)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===I||null==t)return this.ft=void 0,this.et=t;if(t===z)return t;if("string"!=typeof t)throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.et)return this.ft;this.et=t;const e=[t];return e.raw=e,this.ft={_$litType$:this.constructor.resultType,strings:e,values:[]}}}_t.directiveName="unsafeHTML",_t.resultType=1;const vt=dt(_t),bt=dt(class extends ft{constructor(t){var e;if(super(t),t.type!==ht||"class"!==t.name||(null===(e=t.strings)||void 0===e?void 0:e.length)>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(t){return" "+Object.keys(t).filter((e=>t[e])).join(" ")+" "}update(t,[e]){var i,n;if(void 0===this.it){this.it=new Set,void 0!==t.strings&&(this.nt=new Set(t.strings.join(" ").split(/\s/).filter((t=>""!==t))));for(const t in e)e[t]&&!(null===(i=this.nt)||void 0===i?void 0:i.has(t))&&this.it.add(t);return this.render(e)}const r=t.element.classList;this.it.forEach((t=>{t in e||(r.remove(t),this.it.delete(t))}));for(const s in e){const t=!!e[s];t===this.it.has(s)||(null===(n=this.nt)||void 0===n?void 0:n.has(s))||(t?(r.add(s),this.it.add(s)):(r.remove(s),this.it.delete(s)))}return z}}),yt=(t,e,i,n)=>{n=n||{},i=null==i?{}:i;const 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},wt=(t,e)=>{if(t===e)return!0;if(t&&e&&"object"==typeof t&&"object"==typeof e){if(t.constructor!==e.constructor)return!1;let i,n;if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(i=n;0!=i--;)if(!wt(t[i],e[i]))return!1;return!0}if(t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(i of t.entries())if(!e.has(i[0]))return!1;for(i of t.entries())if(!wt(i[1],e.get(i[0])))return!1;return!0}if(t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(i of t.entries())if(!e.has(i[0]))return!1;return!0}if(ArrayBuffer.isView(t)&&ArrayBuffer.isView(e)){if(n=t.length,n!==e.length)return!1;for(i=n;0!=i--;)if(t[i]!==e[i])return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===e.toString();const r=Object.keys(t);if(n=r.length,n!==Object.keys(e).length)return!1;for(i=n;0!=i--;)if(!Object.prototype.hasOwnProperty.call(e,r[i]))return!1;for(i=n;0!=i--;){const n=r[i];if(!wt(t[n],e[n]))return!1}return!0}return t!=t&&e!=e},$t="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;class At extends HTMLElement{constructor(){super(),this.holdTime=500,this.held=!1,this.cancelled=!1,this.isRepeating=!1,this.repeatCount=0,this.ripple=document.createElement("mwc-ripple")}connectedCallback(){Object.assign(this.style,{position:"fixed",width:$t?"100px":"50px",height:$t?"100px":"50px",transform:"translate(-50%, -50%)",pointerEvents:"none",zIndex:"999"}),this.appendChild(this.ripple),this.ripple.primary=!0,["touchcancel","mouseout","mouseup","touchmove","mousewheel","wheel","scroll"].forEach((t=>{document.addEventListener(t,(()=>{this.cancelled=!0,this.timer&&(this.stopAnimation(),clearTimeout(this.timer),this.timer=void 0,this.isRepeating&&this.repeatTimeout&&(clearInterval(this.repeatTimeout),this.isRepeating=!1))}),{passive:!0})}))}bind(t,e){t.actionHandler&&wt(e,t.actionHandler.options)||(t.actionHandler?(t.removeEventListener("touchstart",t.actionHandler.start),t.removeEventListener("touchend",t.actionHandler.end),t.removeEventListener("touchcancel",t.actionHandler.end),t.removeEventListener("mousedown",t.actionHandler.start),t.removeEventListener("click",t.actionHandler.end),t.removeEventListener("keyup",t.actionHandler.handleEnter)):t.addEventListener("contextmenu",(t=>{const e=t||window.event;return e.preventDefault&&e.preventDefault(),e.stopPropagation&&e.stopPropagation(),e.cancelBubble=!0,e.returnValue=!1,!1})),t.actionHandler={options:e},e.disabled||(t.actionHandler.start=i=>{let n,r;this.cancelled=!1,i.touches?(n=i.touches[0].clientX,r=i.touches[0].clientY):(n=i.clientX,r=i.clientY),e.hasHold&&(this.held=!1,this.timer=window.setTimeout((()=>{this.startAnimation(n,r),this.held=!0,e.repeat&&!this.isRepeating&&(this.repeatCount=0,this.isRepeating=!0,this.repeatTimeout=setInterval((()=>{yt(t,"action",{action:"hold"}),this.repeatCount++,this.repeatTimeout&&e.repeatLimit&&this.repeatCount>=e.repeatLimit&&(clearInterval(this.repeatTimeout),this.isRepeating=!1)}),e.repeat))}),this.holdTime))},t.actionHandler.end=t=>{if(["touchend","touchcancel"].includes(t.type)&&this.cancelled)return void(this.isRepeating&&this.repeatTimeout&&(clearInterval(this.repeatTimeout),this.isRepeating=!1));const i=t.target;t.cancelable&&t.preventDefault(),e.hasHold&&(clearTimeout(this.timer),this.isRepeating&&this.repeatTimeout&&clearInterval(this.repeatTimeout),this.isRepeating=!1,this.stopAnimation(),this.timer=void 0),e.hasHold&&this.held?e.repeat||yt(i,"action",{action:"hold"}):e.hasDoubleClick?"click"===t.type&&t.detail<2||!this.dblClickTimeout?this.dblClickTimeout=window.setTimeout((()=>{this.dblClickTimeout=void 0,yt(i,"action",{action:"tap"})}),250):(clearTimeout(this.dblClickTimeout),this.dblClickTimeout=void 0,yt(i,"action",{action:"double_tap"})):yt(i,"action",{action:"tap"})},t.actionHandler.handleEnter=t=>{13===t.keyCode&&t.currentTarget.actionHandler.end(t)},t.addEventListener("touchstart",t.actionHandler.start,{passive:!0}),t.addEventListener("touchend",t.actionHandler.end),t.addEventListener("touchcancel",t.actionHandler.end),t.addEventListener("mousedown",t.actionHandler.start,{passive:!0}),t.addEventListener("click",t.actionHandler.end),t.addEventListener("keyup",t.actionHandler.handleEnter)))}startAnimation(t,e){Object.assign(this.style,{left:`${t}px`,top:`${e}px`,display:null}),this.ripple.disabled=!1,this.ripple.startPress(),this.ripple.unbounded=!0}stopAnimation(){this.ripple.endPress(),this.ripple.disabled=!0,this.style.display="none"}}customElements.define("button-card-action-handler",At);const xt=(t,e)=>{const i=(()=>{const t=document.body;if(t.querySelector("button-card-action-handler"))return t.querySelector("button-card-action-handler");const e=document.createElement("button-card-action-handler");return t.appendChild(e),e})();i&&i.bind(t,e)},kt=dt(class extends ft{update(t,[e]){return xt(t.element,e),z}render(t){}});function St(t,e){(function(t){return"string"==typeof t&&-1!==t.indexOf(".")&&1===parseFloat(t)})(t)&&(t="100%");var i=function(t){return"string"==typeof t&&-1!==t.indexOf("%")}(t);return t=360===e?t:Math.min(e,Math.max(0,parseFloat(t))),i&&(t=parseInt(String(t*e),10)/100),Math.abs(t-e)<1e-6?1:t=360===e?(t<0?t%e+e:t%e)/parseFloat(String(e)):t%e/parseFloat(String(e))}function Et(t){return Math.min(1,Math.max(0,t))}function Ot(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function Tt(t){return t<=1?"".concat(100*Number(t),"%"):t}function Ct(t){return 1===t.length?"0"+t:String(t)}function Mt(t,e,i){t=St(t,255),e=St(e,255),i=St(i,255);var n=Math.max(t,e,i),r=Math.min(t,e,i),s=0,a=0,o=(n+r)/2;if(n===r)a=0,s=0;else{var l=n-r;switch(a=o>.5?l/(2-n-r):l/(n+r),n){case t:s=(e-i)/l+(e1&&(i-=1),i<1/6?t+6*i*(e-t):i<.5?e:i<2/3?t+(e-t)*(2/3-i)*6:t}function Ht(t,e,i){t=St(t,255),e=St(e,255),i=St(i,255);var n=Math.max(t,e,i),r=Math.min(t,e,i),s=0,a=n,o=n-r,l=0===n?0:o/n;if(n===r)s=0;else{switch(n){case t:s=(e-i)/o+(e>16,g:(65280&t)>>8,b:255&t}}(e)),this.originalInput=e;var r=It(e);this.originalInput=e,this.r=r.r,this.g=r.g,this.b=r.b,this.a=r.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(n=i.format)&&void 0!==n?n:r.format,this.gradientType=i.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=r.ok}return t.prototype.isDark=function(){return this.getBrightness()<128},t.prototype.isLight=function(){return!this.isDark()},t.prototype.getBrightness=function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},t.prototype.getLuminance=function(){var t=this.toRgb(),e=t.r/255,i=t.g/255,n=t.b/255;return.2126*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.7152*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))},t.prototype.getAlpha=function(){return this.a},t.prototype.setAlpha=function(t){return this.a=Ot(t),this.roundA=Math.round(100*this.a)/100,this},t.prototype.isMonochrome=function(){return 0===this.toHsl().s},t.prototype.toHsv=function(){var t=Ht(this.r,this.g,this.b);return{h:360*t.h,s:t.s,v:t.v,a:this.a}},t.prototype.toHsvString=function(){var t=Ht(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),n=Math.round(100*t.v);return 1===this.a?"hsv(".concat(e,", ").concat(i,"%, ").concat(n,"%)"):"hsva(".concat(e,", ").concat(i,"%, ").concat(n,"%, ").concat(this.roundA,")")},t.prototype.toHsl=function(){var t=Mt(this.r,this.g,this.b);return{h:360*t.h,s:t.s,l:t.l,a:this.a}},t.prototype.toHslString=function(){var t=Mt(this.r,this.g,this.b),e=Math.round(360*t.h),i=Math.round(100*t.s),n=Math.round(100*t.l);return 1===this.a?"hsl(".concat(e,", ").concat(i,"%, ").concat(n,"%)"):"hsla(".concat(e,", ").concat(i,"%, ").concat(n,"%, ").concat(this.roundA,")")},t.prototype.toHex=function(t){return void 0===t&&(t=!1),Dt(this.r,this.g,this.b,t)},t.prototype.toHexString=function(t){return void 0===t&&(t=!1),"#"+this.toHex(t)},t.prototype.toHex8=function(t){return void 0===t&&(t=!1),function(t,e,i,n,r){var s=[Ct(Math.round(t).toString(16)),Ct(Math.round(e).toString(16)),Ct(Math.round(i).toString(16)),Ct(Rt(n))];return r&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}(this.r,this.g,this.b,this.a,t)},t.prototype.toHex8String=function(t){return void 0===t&&(t=!1),"#"+this.toHex8(t)},t.prototype.toHexShortString=function(t){return void 0===t&&(t=!1),1===this.a?this.toHexString(t):this.toHex8String(t)},t.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},t.prototype.toRgbString=function(){var t=Math.round(this.r),e=Math.round(this.g),i=Math.round(this.b);return 1===this.a?"rgb(".concat(t,", ").concat(e,", ").concat(i,")"):"rgba(".concat(t,", ").concat(e,", ").concat(i,", ").concat(this.roundA,")")},t.prototype.toPercentageRgb=function(){var t=function(t){return"".concat(Math.round(100*St(t,255)),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},t.prototype.toPercentageRgbString=function(){var t=function(t){return Math.round(100*St(t,255))};return 1===this.a?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},t.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var t="#"+Dt(this.r,this.g,this.b,!1),e=0,i=Object.entries(zt);e=0;return e||!n||!t.startsWith("hex")&&"name"!==t?("rgb"===t&&(i=this.toRgbString()),"prgb"===t&&(i=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(i=this.toHexString()),"hex3"===t&&(i=this.toHexString(!0)),"hex4"===t&&(i=this.toHex8String(!0)),"hex8"===t&&(i=this.toHex8String()),"name"===t&&(i=this.toName()),"hsl"===t&&(i=this.toHslString()),"hsv"===t&&(i=this.toHsvString()),i||this.toHexString()):"name"===t&&0===this.a?this.toName():this.toRgbString()},t.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},t.prototype.clone=function(){return new t(this.toString())},t.prototype.lighten=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.l+=e/100,i.l=Et(i.l),new t(i)},t.prototype.brighten=function(e){void 0===e&&(e=10);var i=this.toRgb();return i.r=Math.max(0,Math.min(255,i.r-Math.round(-e/100*255))),i.g=Math.max(0,Math.min(255,i.g-Math.round(-e/100*255))),i.b=Math.max(0,Math.min(255,i.b-Math.round(-e/100*255))),new t(i)},t.prototype.darken=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.l-=e/100,i.l=Et(i.l),new t(i)},t.prototype.tint=function(t){return void 0===t&&(t=10),this.mix("white",t)},t.prototype.shade=function(t){return void 0===t&&(t=10),this.mix("black",t)},t.prototype.desaturate=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.s-=e/100,i.s=Et(i.s),new t(i)},t.prototype.saturate=function(e){void 0===e&&(e=10);var i=this.toHsl();return i.s+=e/100,i.s=Et(i.s),new t(i)},t.prototype.greyscale=function(){return this.desaturate(100)},t.prototype.spin=function(e){var i=this.toHsl(),n=(i.h+e)%360;return i.h=n<0?360+n:n,new t(i)},t.prototype.mix=function(e,i){void 0===i&&(i=50);var n=this.toRgb(),r=new t(e).toRgb(),s=i/100;return new t({r:(r.r-n.r)*s+n.r,g:(r.g-n.g)*s+n.g,b:(r.b-n.b)*s+n.b,a:(r.a-n.a)*s+n.a})},t.prototype.analogous=function(e,i){void 0===e&&(e=6),void 0===i&&(i=30);var n=this.toHsl(),r=360/i,s=[this];for(n.h=(n.h-(r*e>>1)+720)%360;--e;)n.h=(n.h+r)%360,s.push(new t(n));return s},t.prototype.complement=function(){var e=this.toHsl();return e.h=(e.h+180)%360,new t(e)},t.prototype.monochromatic=function(e){void 0===e&&(e=6);for(var i=this.toHsv(),n=i.h,r=i.s,s=i.v,a=[],o=1/e;e--;)a.push(new t({h:n,s:r,v:s})),s=(s+o)%1;return a},t.prototype.splitcomplement=function(){var e=this.toHsl(),i=e.h;return[this,new t({h:(i+72)%360,s:e.s,l:e.l}),new t({h:(i+216)%360,s:e.s,l:e.l})]},t.prototype.onBackground=function(e){var i=this.toRgb(),n=new t(e).toRgb(),r=i.a+n.a*(1-i.a);return new t({r:(i.r*i.a+n.r*n.a*(1-i.a))/r,g:(i.g*i.a+n.g*n.a*(1-i.a))/r,b:(i.b*i.a+n.b*n.a*(1-i.a))/r,a:r})},t.prototype.triad=function(){return this.polyad(3)},t.prototype.tetrad=function(){return this.polyad(4)},t.prototype.polyad=function(e){for(var i=this.toHsl(),n=i.h,r=[this],s=360/e,a=1;aYt.includes(t,e));var Yt;const Kt=new Set(["fan","input_boolean","light","switch","group","automation","humidifier"]),Jt=["auto","auto-no-temperature"],Xt=["card","label-card"],Qt=["--ha-card-background","--card-background-color"],te="var(--primary-text-color)";function ee(t){return t.substr(0,t.indexOf("."))}function ie(t,e){const i=[];let n=e;return"var"===e.trim().substring(0,3)&&(e.split(",").forEach((t=>{const e=t.match(/var\(\s*([a-zA-Z0-9-]*)/);e&&i.push(e[1])})),i.some((e=>{const i=window.getComputedStyle(t).getPropertyValue(e);return!!i&&(n=i,!0)}))),n}function ne(...t){const e=t=>t&&"object"==typeof t;return t.reduce(((t,i)=>(Object.keys(i).forEach((n=>{const r=t[n],s=i[n];Array.isArray(r)&&Array.isArray(s)?t[n]=r.concat(...s):e(r)&&e(s)?t[n]=ne(r,s):t[n]=s})),t)),{})}function re(t,e){let i=[];return t&&t.forEach((t=>{let n=t;e&&e.forEach((e=>{e.id&&t.id&&e.id==t.id&&(n=ne(n,e))})),i.push(n)})),e&&(i=i.concat(e.filter((e=>!t||!t.find((t=>!(!t.id||!e.id)&&t.id==e.id)))))),i}function se(t,e){if(void 0===t)return!1;const i=ee(t.entity_id),n=void 0!==e?e:null==t?void 0:t.state;if(["button","event","input_button","scene"].includes(i))return n!==Zt;if(Gt(n))return!1;if("off"===n&&"alert"!==i)return!1;switch(i){case"alarm_control_panel":return"disarmed"!==n;case"alert":return"idle"!==n;case"cover":return"closed"!==n;case"device_tracker":case"person":return"not_home"!==n;case"lock":return"locked"!==n;case"media_player":return"standby"!==n;case"vacuum":return!["idle","docked","paused"].includes(n);case"plant":return"problem"===n;case"group":return["on","home","open","locked","problem"].includes(n);case"timer":return"active"===n;case"camera":return"streaming"===n}return!0}function ae(t){return Array.isArray(t)?t.reverse().reduce(((t,e)=>`var(${e}${t?`, ${t}`:""})`),void 0):`var(${t})`}function oe(t){const e=t.split(":").map(Number);return 3600*e[0]+60*e[1]+e[2]}const le=t=>t<10?`0${t}`:t;const ce=new Set(["call-service","divider","section","weblink","cast","select"]),he={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"},ue=((t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,i,n)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+t[n+1]),t[0]);return new s(i,t,n)})` :host { position: relative; display: block; @@ -423,7 +423,7 @@ function t(t,e,i,n){var r,s=arguments.length,o=s<3?e:null===n?n=Object.getOwnPro height: 100%; } } -`;var de,fe,me,pe,ge;!function(t){t.language="language",t.system="system",t.comma_decimal="comma_decimal",t.decimal_comma="decimal_comma",t.space_comma="space_comma",t.none="none"}(de||(de={})),function(t){t.language="language",t.system="system",t.am_pm="12",t.twenty_four="24"}(fe||(fe={})),function(t){t.local="local",t.server="server"}(me||(me={})),function(t){t.language="language",t.system="system",t.DMY="DMY",t.MDY="MDY",t.YMD="YMD"}(pe||(pe={})),function(t){t.language="language",t.monday="monday",t.tuesday="tuesday",t.wednesday="wednesday",t.thursday="thursday",t.friday="friday",t.saturday="saturday",t.sunday="sunday"}(ge||(ge={}));const _e=(t,e,i)=>{const n=e?(t=>{switch(t.number_format){case de.comma_decimal:return["en-US","en"];case de.decimal_comma:return["de","es","it"];case de.space_comma:return["fr","sv","cs"];case de.system:return;default:return t.language}})(e):void 0;if(Number.isNaN=Number.isNaN||function t(e){return"number"==typeof e&&t(e)},(null==e?void 0:e.number_format)!==de.none&&!Number.isNaN(Number(t))&&Intl)try{return new Intl.NumberFormat(n,be(t,i)).format(Number(t))}catch(r){return console.error(r),new Intl.NumberFormat(void 0,be(t,i)).format(Number(t))}return"string"==typeof t?t:`${((t,e=2)=>Math.round(t*10**e)/10**e)(t,null==i?void 0:i.maximumFractionDigits).toString()}${"currency"===(null==i?void 0:i.style)?` ${i.currency}`:""}`},ve=(t,e,i)=>{var n;let r=null==i?void 0:i.display_precision;return void 0!==e&&(r=e),null!=r?{maximumFractionDigits:r,minimumFractionDigits:r}:Number.isInteger(Number(null===(n=t.attributes)||void 0===n?void 0:n.step))&&Number.isInteger(Number(t.state))?{maximumFractionDigits:0}:null!=t.attributes.step?{maximumFractionDigits:Math.ceil(Math.log10(1/t.attributes.step))}:void 0},be=(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};var ye,we,$e,Ae,ke;!function(t){t.language="language",t.system="system",t.comma_decimal="comma_decimal",t.decimal_comma="decimal_comma",t.space_comma="space_comma",t.none="none"}(ye||(ye={})),function(t){t.language="language",t.system="system",t.am_pm="12",t.twenty_four="24"}(we||(we={})),function(t){t.local="local",t.server="server"}($e||($e={})),function(t){t.language="language",t.system="system",t.DMY="DMY",t.MDY="MDY",t.YMD="YMD"}(Ae||(Ae={})),function(t){t.language="language",t.monday="monday",t.tuesday="tuesday",t.wednesday="wednesday",t.thursday="thursday",t.friday="friday",t.saturday="saturday",t.sunday="sunday"}(ke||(ke={}));const xe=(t,e=2)=>{let i=""+t;for(let n=1;nfunction(t){const e=Math.floor(t/1e3/3600),i=Math.floor(t/1e3%3600/60),n=Math.floor(t/1e3%3600%60),r=Math.floor(t%1e3);return e>0?`${e}:${xe(i)}:${xe(n)}`:i>0?`${i}:${xe(n)}`:n>0||r>0?`${n}${r>0?`.${xe(r,3)}`:""}`:null}(parseFloat(t)*Se[e])||"0";var Oe=Number.isNaN||function(t){return"number"==typeof t&&t!=t};function Te(t,e){if(t.length!==e.length)return!1;for(var i=0;inew Intl.DateTimeFormat(t.language,{weekday:"long",month:"long",day:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),je=(t,e,i)=>He(e,i.time_zone).format(t),He=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"long",day:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),De=(t,e,i)=>{var n,r,s,o;const a=Re(e,i.time_zone);if(e.date_format===pe.language||e.date_format===pe.system)return a.format(t);const l=a.formatToParts(t),c=null===(n=l.find((t=>"literal"===t.type)))||void 0===n?void 0:n.value,h=null===(r=l.find((t=>"day"===t.type)))||void 0===r?void 0:r.value,u=null===(s=l.find((t=>"month"===t.type)))||void 0===s?void 0:s.value,d=null===(o=l.find((t=>"year"===t.type)))||void 0===o?void 0:o.value,f=l[l.length-1];let m="literal"===(null==f?void 0:f.type)?null==f?void 0:f.value:"";"bg"===e.language&&e.date_format===pe.YMD&&(m="");return{[pe.DMY]:`${h}${c}${u}${c}${d}${m}`,[pe.MDY]:`${u}${c}${h}${c}${d}${m}`,[pe.YMD]:`${d}${c}${u}${c}${h}${m}`}[e.date_format]},Re=Ce(((t,e)=>{const i=t.date_format===pe.system?void 0:t.language;return t.date_format===pe.language||(t.date_format,pe.system),new Intl.DateTimeFormat(i,{year:"numeric",month:"numeric",day:"numeric",timeZone:"server"===t.time_zone?e:void 0})})),Ne=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{day:"numeric",month:"short",timeZone:"server"===t.time_zone?e:void 0}))),Pe=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{month:"long",year:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),ze=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{month:"long",timeZone:"server"===t.time_zone?e:void 0}))),Ie=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),Le=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{weekday:"long",timeZone:"server"===t.time_zone?e:void 0}))),Fe=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{weekday:"short",timeZone:"server"===t.time_zone?e:void 0}))),Ve=Ce((t=>{if(t.time_format===fe.language||t.time_format===fe.system){const e=t.time_format===fe.language?t.language:void 0,i=(new Date).toLocaleString(e);return i.includes("AM")||i.includes("PM")}return t.time_format===fe.am_pm})),Ue=(t,e,i)=>Be(e,i.time_zone).format(t),Be=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{hour:"numeric",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),We=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",second:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),qe=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{weekday:"long",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Ze=Ce(((t,e)=>new Intl.DateTimeFormat("en-GB",{hour:"numeric",minute:"2-digit",hour12:!1,timeZone:"server"===t.time_zone?e:void 0}))),Ge=(t,e,i)=>Ye(e,i.time_zone).format(t),Ye=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{year:"numeric",month:"long",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Ke=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{year:"numeric",month:"short",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Je=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{month:"short",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Xe=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{year:"numeric",month:"long",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",second:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Qe=(t,e)=>0!=(t.supported_features&e),ti=t=>(t=>Qe(t,4)&&"number"==typeof t.in_progress)(t)||!!t.in_progress,ei=(t,e,i,n,r,s,o)=>{const a=r[e.entity_id];return ii(t,i,n,a,e.entity_id,e.attributes,s,void 0!==o?o:e.state)},ii=(t,e,i,n,r,s,o,a)=>{var l;if("unknown"===a||"unavailable"===a)return t(`state.default.${a}`);if(function(t){return!!t.unit_of_measurement||!!t.state_class}(s)){if("duration"===s.device_class&&s.unit_of_measurement&&Se[s.unit_of_measurement])try{return Ee(a,s.unit_of_measurement)}catch(h){}if("monetary"===s.device_class)try{return _e(a,e,Object.assign({style:"currency",currency:(null==o?void 0:o.units)||s.unit_of_measurement,minimumFractionDigits:2},ve({state:a,attributes:s},null==o?void 0:o.numeric_precision,n)))}catch(h){}const t=(null==o?void 0:o.show_units)?(null==o?void 0:o.units)?null==o?void 0:o.units:s.unit_of_measurement:void 0,i=t?"%"===t?(t=>{switch(t.language){case"cz":case"de":case"fi":case"fr":case"sk":case"sv":return" ";default:return""}})(e)+"%":` ${t}`:"";return`${_e(a,e,ve({state:a,attributes:s},null==o?void 0:o.numeric_precision,n))}${i}`}const c=ee(r);if("datetime"===c){const t=new Date(a);return Ge(t,e,i)}if(["date","input_datetime","time"].includes(c))try{const t=a.split(" ");if(2===t.length)return Ge(new Date(t.join("T")),Object.assign(Object.assign({},e),{time_zone:$e.local}),i);if(1===t.length){if(a.includes("-"))return je(new Date(`${a}T00:00`),Object.assign(Object.assign({},e),{time_zone:$e.local}),i);if(a.includes(":")){const t=new Date;return Ue(new Date(`${t.toISOString().split("T")[0]}T${a}`),Object.assign(Object.assign({},e),{time_zone:$e.local}),i)}}return a}catch(u){return a}if("counter"===c||"number"===c||"input_number"===c)return _e(a,e,ve({state:a,attributes:s},null==o?void 0:o.numeric_precision,n));if(["button","event","input_button","scene","stt","tts"].includes(c)||"sensor"===c&&"timestamp"===s.device_class)try{return Ge(new Date(a),e,i)}catch(h){return a}return"update"===c?"on"===a?ti(s)?Qe(s,4)&&"number"==typeof s.in_progress?t("ui.card.update.installing_with_progress",{progress:s.in_progress}):t("ui.card.update.installing"):s.latest_version:s.skipped_version===s.latest_version?null!==(l=s.latest_version)&&void 0!==l?l:t("state.default.unavailable"):t("ui.card.update.up_to_date"):(null==n?void 0:n.translation_key)&&t(`component.${n.platform}.entity.${c}.${n.translation_key}.state.${a}`)||s.device_class&&t(`component.${c}.entity_component.${s.device_class}.state.${a}`)||t(`component.${c}.entity_component._.state.${a}`)||a};var ni=Function.prototype.toString,ri=Object.create,si=Object.defineProperty,oi=Object.getOwnPropertyDescriptor,ai=Object.getOwnPropertyNames,li=Object.getOwnPropertySymbols,ci=Object.getPrototypeOf,hi=Object.prototype,ui=hi.hasOwnProperty,di=hi.propertyIsEnumerable,fi="function"==typeof li,mi="function"==typeof WeakMap,pi=function(){if(mi)return function(){return new WeakMap};var t=function(){function t(){this._keys=[],this._values=[]}return t.prototype.has=function(t){return!!~this._keys.indexOf(t)},t.prototype.get=function(t){return this._values[this._keys.indexOf(t)]},t.prototype.set=function(t,e){this._keys.push(t),this._values.push(e)},t}();return function(){return new t}}(),gi=function(t,e){var i=t.__proto__||ci(t);if(!i)return ri(null);var n=i.constructor;if(n===e.Object)return i===e.Object.prototype?{}:ri(i);if(~ni.call(n).indexOf("[native code]"))try{return new n}catch(hi){}return ri(i)},_i=function(t,e,i,n){var r=gi(t,e);for(var s in n.set(t,r),t)ui.call(t,s)&&(r[s]=i(t[s],n));if(fi)for(var o=li(t),a=0,l=o.length,c=void 0;a{if((void 0!==e?e:null==t?void 0:t.state)===Zt)return"var(--state-unavailable-color)";const n=Si(t,e,i);return n?oe(n):void 0},xi=(t,e,i,n)=>{const r=void 0!==i?i:e.state,s=se(e,i),o=[],a=function(t,e="_"){const i="àáäâãåăæąçćčđďèéěėëêęğǵḧìíïîįłḿǹńňñòóöôœøṕŕřßşśšșťțùúüûǘůűūųẃẍÿýźžż·/_,:;",n=`aaaaaaaaacccddeeeeeeegghiiiiilmnnnnooooooprrsssssttuuuuuuuuuwxyyzzz${e}${e}${e}${e}${e}${e}`,r=new RegExp(i.split("").join("|"),"g");return t.toString().toLowerCase().replace(/\s+/g,e).replace(r,(t=>n.charAt(i.indexOf(t)))).replace(/&/g,`${e}and${e}`).replace(/[^\w-]+/g,"").replace(/-/g,e).replace(new RegExp(`(${e})\\1+`,"g"),"$1").replace(new RegExp(`^${e}+`),"").replace(new RegExp(`${e}+$`),"")}(r,"_"),l=s?"active":"inactive";if(n&&Xt.includes(n)&&"inactive"==l)return Qt;const c=e.attributes.device_class;return c&&o.push(`--state-${t}-${c}-${a}-color`),o.push(`--state-${t}-${a}-color`,`--state-${t}-${l}-color`,`--state-${l}-color`),o},Si=(t,e,i)=>{const n=void 0!==e?e:null==t?void 0:t.state,r=ee(t.entity_id),s=t.attributes.device_class;if("sensor"===r&&"battery"===s){const t=(t=>{const e=Number(t);if(!isNaN(e))return e>=70?"--state-sensor-battery-high-color":e>=30?"--state-sensor-battery-medium-color":"--state-sensor-battery-low-color"})(n);if(t)return[t]}if("group"===r){const n=(t=>{const e=t.attributes.entity_id||[],i=[...new Set(e.map((t=>ee(t))))];return 1===i.length?i[0]:void 0})(t);if(n&&Ai.has(n))return xi(n,t,e,i)}return Ai.has(r)?xi(r,t,e,i):i&&Xt.includes(i)?Qt:void 0};let Ei=window.cardHelpers;const Oi=new Promise((async t=>{Ei&&t(),window.loadCardHelpers&&(Ei=await window.loadCardHelpers(),window.cardHelpers=Ei,t())}));console.info("%c BUTTON-CARD \n%c Version 4.1.1 ","color: orange; font-weight: bold; background: black","color: white; font-weight: bold; background: dimgray"),window.customCards=window.customCards||[],window.customCards.push({type:"button-card",name:"Button-Card",preview:!1,description:"A massively customizable custom button card"});let Ti=class extends nt{constructor(){super(...arguments),this._cards={},this._cardsConfig={},this._entities=[],this._initialSetupComplete=!1,this._rippleHandlers=new ct((()=>this._ripple))}get _doIHaveEverything(){return!!this._hass&&!!this._config&&this.isConnected}set hass(t){this._hass=t,Object.keys(this._cards).forEach((t=>{this._cards[t].hass=this._hass})),this._initialSetupComplete||this._finishSetup()}disconnectedCallback(){super.disconnectedCallback(),this._clearInterval()}connectedCallback(){super.connectedCallback(),this._initialSetupComplete?this._startTimerCountdown():this._finishSetup()}_evaluateVariablesSkipError(t){var e;if(this._evaledVariables={},null===(e=this._config)||void 0===e?void 0:e.variables){Object.keys(this._config.variables).sort().forEach((e=>{try{this._evaledVariables[e]=this._objectEvalTemplate(t,this._config.variables[e])}catch(_t){}}))}}_finishSetup(){if(!this._initialSetupComplete&&this._doIHaveEverything){if(this._evaluateVariablesSkipError(),this._config.entity){const t=this._getTemplateOrValue(void 0,this._config.entity);this._config.entity=t,this._stateObj=this._hass.states[t]}this._evaluateVariablesSkipError(this._stateObj),this._config.entity&&Kt.has(ee(this._config.entity))?this._config=Object.assign({tap_action:{action:"toggle"}},this._config):this._config.entity?this._config=Object.assign({tap_action:{action:"more-info"}},this._config):this._config=Object.assign({tap_action:{action:"none"}},this._config);const t=JSON.stringify(this._config);if(this._entities=[],Array.isArray(this._config.triggers_update))this._config.triggers_update.forEach((t=>{try{const e=this._getTemplateOrValue(this._stateObj,t);null==e||this._entities.includes(e)||this._entities.push(e)}catch(_t){}}));else if("string"==typeof this._config.triggers_update){const t=this._getTemplateOrValue(this._stateObj,this._config.triggers_update);t&&"all"!==t?this._entities.push(t):this._config.triggers_update=t}if("all"!==this._config.triggers_update){const e=new RegExp(/states\[\s*('|\\")([a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)\1\s*\]/,"gm"),i=new RegExp(/states\[\s*('|\\")([a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)\1\s*\]/,"m"),n=t.match(e);null==n||n.forEach((t=>{const e=t.match(i);e&&!this._entities.includes(e[2])&&this._entities.push(e[2])}))}this._config.entity&&!this._entities.includes(this._config.entity)&&this._entities.push(this._config.entity),this._expandTriggerGroups();const e=new RegExp("\\[\\[\\[.*\\]\\]\\]","m");this._hasTemplate=!("all"!==this._config.triggers_update||!t.match(e)),this._startTimerCountdown(),this._initialSetupComplete=!0}}_startTimerCountdown(){if(this._config&&this._config.entity&&"timer"===ee(this._config.entity)){const t=this._hass.states[this._config.entity];this._startInterval(t)}}_createCard(t){if(Ei)return Ei.createCardElement(t);{const e=((t,e=!1)=>{const i=(t,e)=>n("hui-error-card",{type:"error",error:t,config:e}),n=(t,e)=>{const n=window.document.createElement(t);try{if(!n.setConfig)return;n.setConfig(e)}catch(r){return console.error(t,r),i(r.message,e)}return n};if(!t||"object"!=typeof t||!e&&!t.type)return i("No type defined",t);let r=t.type;if(r&&r.startsWith("custom:"))r=r.substr(7);else if(e)if(ce.has(r))r=`hui-${r}-row`;else{if(!t.entity)return i("Invalid config given.",t);const e=t.entity.split(".",1)[0];r=`hui-${he[e]||"text"}-entity-row`}else r=`hui-${r}-card`;if(customElements.get(r))return n(r,t);const s=i(`Custom element doesn't exist: ${t.type}.`,t);s.style.display="None";const o=setTimeout((()=>{s.style.display=""}),2e3);return customElements.whenDefined(t.type).then((()=>{clearTimeout(o),yt(s,"ll-rebuild",{},s)})),s})(t);return Oi.then((()=>{yt(e,"ll-rebuild",{})})),e}}static get styles(){return ue}render(){var t;if(!this._config||!this._hass)return P``;this._stateObj=this._config.entity?this._hass.states[this._config.entity]:void 0;try{if(this._evaledVariables={},null===(t=this._config)||void 0===t?void 0:t.variables){Object.keys(this._config.variables).sort().forEach((t=>{this._evaledVariables[t]=this._objectEvalTemplate(this._stateObj,this._config.variables[t])}))}return this._cardHtml()}catch(_t){_t.stack?console.error(_t.stack):console.error(_t);const e=document.createElement("hui-error-card");return e.setConfig({type:"error",error:_t.toString(),origConfig:this._config}),P` ${e} `}}shouldUpdate(t){return!(!this._hasTemplate&&!t.has("_timeRemaining")&&!function(t,e){if(e.has("_config"))return!0;const i=e.get("_hass");if(i)return t._entities.some((function(e){return(null==i?void 0:i.states[e])!==t._hass.states[e]}));return!1}(this,t))&&(this._expandTriggerGroups(),!0)}updated(t){if(super.updated(t),this._config&&this._config.entity&&"timer"===ee(this._config.entity)&&t.has("_hass")){const e=this._hass.states[this._config.entity],i=t.get("_hass");(i?i.states[this._config.entity]:void 0)!==e?this._startInterval(e):e||this._clearInterval()}}_clearInterval(){this._interval&&(window.clearInterval(this._interval),this._interval=void 0)}_startInterval(t){this._clearInterval(),this._calculateRemaining(t),"active"===t.state&&(this._interval=window.setInterval((()=>this._calculateRemaining(t)),1e3))}_calculateRemaining(t){t.attributes.remaining&&(this._timeRemaining=(t=>{if(!t.attributes.remaining)return;let e=ae(t.attributes.remaining);if("active"===t.state){const i=(new Date).getTime(),n=new Date(t.last_changed).getTime();e=Math.max(e-(i-n)/1e3,0)}return e})(t))}_computeTimeDisplay(t){if(t)return function(t){const e=Math.floor(t/3600),i=Math.floor(t%3600/60),n=Math.floor(t%3600%60);return e>0?`${e}:${le(i)}:${le(n)}`:i>0?`${i}:${le(n)}`:n>0?""+n:null}(this._timeRemaining||ae(t.attributes.duration))}_getMatchingConfigState(t){if(!this._config.state)return;const e=this._config.state.find((t=>"template"===t.operator));if(!t&&!e)return;let i;const n=this._config.state.find((e=>{if(!e.operator)return t&&this._getTemplateOrValue(t,e.value)==t.state;switch(e.operator){case"==":return t&&t.state==this._getTemplateOrValue(t,e.value);case"<=":return t&&t.state<=this._getTemplateOrValue(t,e.value);case"<":return t&&t.state=":return t&&t.state>=this._getTemplateOrValue(t,e.value);case">":return t&&t.state>this._getTemplateOrValue(t,e.value);case"!=":return t&&t.state!=this._getTemplateOrValue(t,e.value);case"regex":return!(!t||!t.state.match(this._getTemplateOrValue(t,e.value)));case"template":return this._getTemplateOrValue(t,e.value);case"default":return i=e,!1;default:return!1}}));return!n&&i?i:n}_localize(t,e,i,n=!0,r){var s;return ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,{numeric_precision:"card"===i?null===(s=this._config)||void 0===s?void 0:s.numeric_precision:i,show_units:n,units:r},e)}_relativeTime(t,e=!1){return t?P` +`;var de,fe,me,pe,ge;!function(t){t.language="language",t.system="system",t.comma_decimal="comma_decimal",t.decimal_comma="decimal_comma",t.space_comma="space_comma",t.none="none"}(de||(de={})),function(t){t.language="language",t.system="system",t.am_pm="12",t.twenty_four="24"}(fe||(fe={})),function(t){t.local="local",t.server="server"}(me||(me={})),function(t){t.language="language",t.system="system",t.DMY="DMY",t.MDY="MDY",t.YMD="YMD"}(pe||(pe={})),function(t){t.language="language",t.monday="monday",t.tuesday="tuesday",t.wednesday="wednesday",t.thursday="thursday",t.friday="friday",t.saturday="saturday",t.sunday="sunday"}(ge||(ge={}));const _e=(t,e,i)=>{const n=e?(t=>{switch(t.number_format){case de.comma_decimal:return["en-US","en"];case de.decimal_comma:return["de","es","it"];case de.space_comma:return["fr","sv","cs"];case de.system:return;default:return t.language}})(e):void 0;if(Number.isNaN=Number.isNaN||function t(e){return"number"==typeof e&&t(e)},(null==e?void 0:e.number_format)!==de.none&&!Number.isNaN(Number(t))&&Intl)try{return new Intl.NumberFormat(n,be(t,i)).format(Number(t))}catch(r){return console.error(r),new Intl.NumberFormat(void 0,be(t,i)).format(Number(t))}return"string"==typeof t?t:`${((t,e=2)=>Math.round(t*10**e)/10**e)(t,null==i?void 0:i.maximumFractionDigits).toString()}${"currency"===(null==i?void 0:i.style)?` ${i.currency}`:""}`},ve=(t,e,i)=>{var n;let r=null==i?void 0:i.display_precision;return void 0!==e&&(r=e),null!=r?{maximumFractionDigits:r,minimumFractionDigits:r}:Number.isInteger(Number(null===(n=t.attributes)||void 0===n?void 0:n.step))&&Number.isInteger(Number(t.state))?{maximumFractionDigits:0}:null!=t.attributes.step?{maximumFractionDigits:Math.ceil(Math.log10(1/t.attributes.step))}:void 0},be=(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};var ye,we,$e,Ae,xe;!function(t){t.language="language",t.system="system",t.comma_decimal="comma_decimal",t.decimal_comma="decimal_comma",t.space_comma="space_comma",t.none="none"}(ye||(ye={})),function(t){t.language="language",t.system="system",t.am_pm="12",t.twenty_four="24"}(we||(we={})),function(t){t.local="local",t.server="server"}($e||($e={})),function(t){t.language="language",t.system="system",t.DMY="DMY",t.MDY="MDY",t.YMD="YMD"}(Ae||(Ae={})),function(t){t.language="language",t.monday="monday",t.tuesday="tuesday",t.wednesday="wednesday",t.thursday="thursday",t.friday="friday",t.saturday="saturday",t.sunday="sunday"}(xe||(xe={}));const ke=(t,e=2)=>{let i=""+t;for(let n=1;nfunction(t){const e=Math.floor(t/1e3/3600),i=Math.floor(t/1e3%3600/60),n=Math.floor(t/1e3%3600%60),r=Math.floor(t%1e3);return e>0?`${e}:${ke(i)}:${ke(n)}`:i>0?`${i}:${ke(n)}`:n>0||r>0?`${n}${r>0?`.${ke(r,3)}`:""}`:null}(parseFloat(t)*Se[e])||"0";var Oe=Number.isNaN||function(t){return"number"==typeof t&&t!=t};function Te(t,e){if(t.length!==e.length)return!1;for(var i=0;inew Intl.DateTimeFormat(t.language,{weekday:"long",month:"long",day:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),je=(t,e,i)=>He(e,i.time_zone).format(t),He=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"long",day:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),De=(t,e,i)=>{var n,r,s,a;const o=Re(e,i.time_zone);if(e.date_format===pe.language||e.date_format===pe.system)return o.format(t);const l=o.formatToParts(t),c=null===(n=l.find((t=>"literal"===t.type)))||void 0===n?void 0:n.value,h=null===(r=l.find((t=>"day"===t.type)))||void 0===r?void 0:r.value,u=null===(s=l.find((t=>"month"===t.type)))||void 0===s?void 0:s.value,d=null===(a=l.find((t=>"year"===t.type)))||void 0===a?void 0:a.value,f=l[l.length-1];let m="literal"===(null==f?void 0:f.type)?null==f?void 0:f.value:"";"bg"===e.language&&e.date_format===pe.YMD&&(m="");return{[pe.DMY]:`${h}${c}${u}${c}${d}${m}`,[pe.MDY]:`${u}${c}${h}${c}${d}${m}`,[pe.YMD]:`${d}${c}${u}${c}${h}${m}`}[e.date_format]},Re=Ce(((t,e)=>{const i=t.date_format===pe.system?void 0:t.language;return t.date_format===pe.language||(t.date_format,pe.system),new Intl.DateTimeFormat(i,{year:"numeric",month:"numeric",day:"numeric",timeZone:"server"===t.time_zone?e:void 0})})),Ne=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{day:"numeric",month:"short",timeZone:"server"===t.time_zone?e:void 0}))),Pe=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{month:"long",year:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),ze=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{month:"long",timeZone:"server"===t.time_zone?e:void 0}))),Ie=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",timeZone:"server"===t.time_zone?e:void 0}))),Le=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{weekday:"long",timeZone:"server"===t.time_zone?e:void 0}))),Fe=Ce(((t,e)=>new Intl.DateTimeFormat(t.language,{weekday:"short",timeZone:"server"===t.time_zone?e:void 0}))),Ve=Ce((t=>{if(t.time_format===fe.language||t.time_format===fe.system){const e=t.time_format===fe.language?t.language:void 0,i=(new Date).toLocaleString(e);return i.includes("AM")||i.includes("PM")}return t.time_format===fe.am_pm})),Ue=(t,e,i)=>Be(e,i.time_zone).format(t),Be=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{hour:"numeric",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),We=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",second:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),qe=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{weekday:"long",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Ze=Ce(((t,e)=>new Intl.DateTimeFormat("en-GB",{hour:"numeric",minute:"2-digit",hour12:!1,timeZone:"server"===t.time_zone?e:void 0}))),Ge=(t,e,i)=>Ye(e,i.time_zone).format(t),Ye=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{year:"numeric",month:"long",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Ke=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{year:"numeric",month:"short",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Je=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{month:"short",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Xe=Ce(((t,e)=>new Intl.DateTimeFormat("en"!==t.language||Ve(t)?t.language:"en-u-hc-h23",{year:"numeric",month:"long",day:"numeric",hour:Ve(t)?"numeric":"2-digit",minute:"2-digit",second:"2-digit",hour12:Ve(t),timeZone:"server"===t.time_zone?e:void 0}))),Qe=(t,e)=>0!=(t.supported_features&e),ti=t=>(t=>Qe(t,4)&&"number"==typeof t.in_progress)(t)||!!t.in_progress,ei=(t,e,i,n,r,s,a)=>{const o=r[e.entity_id];return ii(t,i,n,o,e.entity_id,e.attributes,s,void 0!==a?a:e.state)},ii=(t,e,i,n,r,s,a,o)=>{var l;if("unknown"===o||"unavailable"===o)return t(`state.default.${o}`);if(function(t){return!!t.unit_of_measurement||!!t.state_class}(s)){if("duration"===s.device_class&&s.unit_of_measurement&&Se[s.unit_of_measurement])try{return Ee(o,s.unit_of_measurement)}catch(h){}if("monetary"===s.device_class)try{return _e(o,e,Object.assign({style:"currency",currency:(null==a?void 0:a.units)||s.unit_of_measurement,minimumFractionDigits:2},ve({state:o,attributes:s},null==a?void 0:a.numeric_precision,n)))}catch(h){}const t=(null==a?void 0:a.show_units)?(null==a?void 0:a.units)?null==a?void 0:a.units:s.unit_of_measurement:void 0,i=t?"%"===t?(t=>{switch(t.language){case"cz":case"de":case"fi":case"fr":case"sk":case"sv":return" ";default:return""}})(e)+"%":` ${t}`:"";return`${_e(o,e,ve({state:o,attributes:s},null==a?void 0:a.numeric_precision,n))}${i}`}const c=ee(r);if("datetime"===c){const t=new Date(o);return Ge(t,e,i)}if(["date","input_datetime","time"].includes(c))try{const t=o.split(" ");if(2===t.length)return Ge(new Date(t.join("T")),Object.assign(Object.assign({},e),{time_zone:$e.local}),i);if(1===t.length){if(o.includes("-"))return je(new Date(`${o}T00:00`),Object.assign(Object.assign({},e),{time_zone:$e.local}),i);if(o.includes(":")){const t=new Date;return Ue(new Date(`${t.toISOString().split("T")[0]}T${o}`),Object.assign(Object.assign({},e),{time_zone:$e.local}),i)}}return o}catch(u){return o}if("counter"===c||"number"===c||"input_number"===c)return _e(o,e,ve({state:o,attributes:s},null==a?void 0:a.numeric_precision,n));if(["button","event","input_button","scene","stt","tts"].includes(c)||"sensor"===c&&"timestamp"===s.device_class)try{return Ge(new Date(o),e,i)}catch(h){return o}return"update"===c?"on"===o?ti(s)?Qe(s,4)&&"number"==typeof s.in_progress?t("ui.card.update.installing_with_progress",{progress:s.in_progress}):t("ui.card.update.installing"):s.latest_version:s.skipped_version===s.latest_version?null!==(l=s.latest_version)&&void 0!==l?l:t("state.default.unavailable"):t("ui.card.update.up_to_date"):(null==n?void 0:n.translation_key)&&t(`component.${n.platform}.entity.${c}.${n.translation_key}.state.${o}`)||s.device_class&&t(`component.${c}.entity_component.${s.device_class}.state.${o}`)||t(`component.${c}.entity_component._.state.${o}`)||o};var ni=Function.prototype.toString,ri=Object.create,si=Object.defineProperty,ai=Object.getOwnPropertyDescriptor,oi=Object.getOwnPropertyNames,li=Object.getOwnPropertySymbols,ci=Object.getPrototypeOf,hi=Object.prototype,ui=hi.hasOwnProperty,di=hi.propertyIsEnumerable,fi="function"==typeof li,mi="function"==typeof WeakMap,pi=function(){if(mi)return function(){return new WeakMap};var t=function(){function t(){this._keys=[],this._values=[]}return t.prototype.has=function(t){return!!~this._keys.indexOf(t)},t.prototype.get=function(t){return this._values[this._keys.indexOf(t)]},t.prototype.set=function(t,e){this._keys.push(t),this._values.push(e)},t}();return function(){return new t}}(),gi=function(t,e){var i=t.__proto__||ci(t);if(!i)return ri(null);var n=i.constructor;if(n===e.Object)return i===e.Object.prototype?{}:ri(i);if(~ni.call(n).indexOf("[native code]"))try{return new n}catch(hi){}return ri(i)},_i=function(t,e,i,n){var r=gi(t,e);for(var s in n.set(t,r),t)ui.call(t,s)&&(r[s]=i(t[s],n));if(fi)for(var a=li(t),o=0,l=a.length,c=void 0;o{if((void 0!==e?e:null==t?void 0:t.state)===Zt)return"var(--state-unavailable-color)";const n=Si(t,e,i);return n?ae(n):void 0},ki=(t,e,i,n)=>{const r=void 0!==i?i:e.state,s=se(e,i),a=[],o=function(t,e="_"){const i="àáäâãåăæąçćčđďèéěėëêęğǵḧìíïîįłḿǹńňñòóöôœøṕŕřßşśšșťțùúüûǘůűūųẃẍÿýźžż·/_,:;",n=`aaaaaaaaacccddeeeeeeegghiiiiilmnnnnooooooprrsssssttuuuuuuuuuwxyyzzz${e}${e}${e}${e}${e}${e}`,r=new RegExp(i.split("").join("|"),"g");return t.toString().toLowerCase().replace(/\s+/g,e).replace(r,(t=>n.charAt(i.indexOf(t)))).replace(/&/g,`${e}and${e}`).replace(/[^\w-]+/g,"").replace(/-/g,e).replace(new RegExp(`(${e})\\1+`,"g"),"$1").replace(new RegExp(`^${e}+`),"").replace(new RegExp(`${e}+$`),"")}(r,"_"),l=s?"active":"inactive";if(n&&Xt.includes(n)&&"inactive"==l)return Qt;const c=e.attributes.device_class;return c&&a.push(`--state-${t}-${c}-${o}-color`),a.push(`--state-${t}-${o}-color`,`--state-${t}-${l}-color`,`--state-${l}-color`),a},Si=(t,e,i)=>{const n=void 0!==e?e:null==t?void 0:t.state,r=ee(t.entity_id),s=t.attributes.device_class;if("sensor"===r&&"battery"===s){const t=(t=>{const e=Number(t);if(!isNaN(e))return e>=70?"--state-sensor-battery-high-color":e>=30?"--state-sensor-battery-medium-color":"--state-sensor-battery-low-color"})(n);if(t)return[t]}if("group"===r){const n=(t=>{const e=t.attributes.entity_id||[],i=[...new Set(e.map((t=>ee(t))))];return 1===i.length?i[0]:void 0})(t);if(n&&Ai.has(n))return ki(n,t,e,i)}return Ai.has(r)?ki(r,t,e,i):i&&Xt.includes(i)?Qt:void 0};let Ei=window.cardHelpers;const Oi=new Promise((async t=>{Ei&&t(),window.loadCardHelpers&&(Ei=await window.loadCardHelpers(),window.cardHelpers=Ei,t())}));console.info("%c BUTTON-CARD \n%c Version 4.1.2 ","color: orange; font-weight: bold; background: black","color: white; font-weight: bold; background: dimgray"),window.customCards=window.customCards||[],window.customCards.push({type:"button-card",name:"Button-Card",preview:!1,description:"A massively customizable custom button card"});let Ti=class extends nt{constructor(){super(...arguments),this._cards={},this._cardsConfig={},this._entities=[],this._initialSetupComplete=!1,this._rippleHandlers=new ct((()=>this._ripple))}get _doIHaveEverything(){return!!this._hass&&!!this._config&&this.isConnected}set hass(t){this._hass=t,Object.keys(this._cards).forEach((t=>{this._cards[t].hass=this._hass})),this._initialSetupComplete||this._finishSetup()}disconnectedCallback(){super.disconnectedCallback(),this._clearInterval()}connectedCallback(){super.connectedCallback(),this._initialSetupComplete?this._startTimerCountdown():this._finishSetup()}_evaluateVariablesSkipError(t){var e;if(this._evaledVariables={},null===(e=this._config)||void 0===e?void 0:e.variables){Object.keys(this._config.variables).sort().forEach((e=>{try{this._evaledVariables[e]=this._objectEvalTemplate(t,this._config.variables[e])}catch(_t){}}))}}_finishSetup(){if(!this._initialSetupComplete&&this._doIHaveEverything){if(this._evaluateVariablesSkipError(),this._config.entity){const t=this._getTemplateOrValue(void 0,this._config.entity);this._config.entity=t,this._stateObj=this._hass.states[t]}this._evaluateVariablesSkipError(this._stateObj),this._config.entity&&Kt.has(ee(this._config.entity))?this._config=Object.assign({tap_action:{action:"toggle"}},this._config):this._config.entity?this._config=Object.assign({tap_action:{action:"more-info"}},this._config):this._config=Object.assign({tap_action:{action:"none"}},this._config);const t=JSON.stringify(this._config);if(this._entities=[],Array.isArray(this._config.triggers_update))this._config.triggers_update.forEach((t=>{try{const e=this._getTemplateOrValue(this._stateObj,t);null==e||this._entities.includes(e)||this._entities.push(e)}catch(_t){}}));else if("string"==typeof this._config.triggers_update){const t=this._getTemplateOrValue(this._stateObj,this._config.triggers_update);t&&"all"!==t?this._entities.push(t):this._config.triggers_update=t}if("all"!==this._config.triggers_update){const e=new RegExp(/states\[\s*('|\\")([a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)\1\s*\]/,"gm"),i=new RegExp(/states\[\s*('|\\")([a-zA-Z0-9_]+\.[a-zA-Z0-9_]+)\1\s*\]/,"m"),n=t.match(e);null==n||n.forEach((t=>{const e=t.match(i);e&&!this._entities.includes(e[2])&&this._entities.push(e[2])}))}this._config.entity&&!this._entities.includes(this._config.entity)&&this._entities.push(this._config.entity),this._expandTriggerGroups();const e=new RegExp("\\[\\[\\[.*\\]\\]\\]","m");this._hasTemplate=!("all"!==this._config.triggers_update||!t.match(e)),this._startTimerCountdown(),this._initialSetupComplete=!0}}_startTimerCountdown(){if(this._config&&this._config.entity&&"timer"===ee(this._config.entity)){const t=this._hass.states[this._config.entity];this._startInterval(t)}}_createCard(t){if(Ei)return Ei.createCardElement(t);{const e=((t,e=!1)=>{const i=(t,e)=>n("hui-error-card",{type:"error",error:t,config:e}),n=(t,e)=>{const n=window.document.createElement(t);try{if(!n.setConfig)return;n.setConfig(e)}catch(r){return console.error(t,r),i(r.message,e)}return n};if(!t||"object"!=typeof t||!e&&!t.type)return i("No type defined",t);let r=t.type;if(r&&r.startsWith("custom:"))r=r.substr(7);else if(e)if(ce.has(r))r=`hui-${r}-row`;else{if(!t.entity)return i("Invalid config given.",t);const e=t.entity.split(".",1)[0];r=`hui-${he[e]||"text"}-entity-row`}else r=`hui-${r}-card`;if(customElements.get(r))return n(r,t);const s=i(`Custom element doesn't exist: ${t.type}.`,t);s.style.display="None";const a=setTimeout((()=>{s.style.display=""}),2e3);return customElements.whenDefined(t.type).then((()=>{clearTimeout(a),yt(s,"ll-rebuild",{},s)})),s})(t);return Oi.then((()=>{yt(e,"ll-rebuild",{})})),e}}static get styles(){return ue}render(){var t;if(!this._config||!this._hass)return P``;this._stateObj=this._config.entity?this._hass.states[this._config.entity]:void 0;try{if(this._evaledVariables={},null===(t=this._config)||void 0===t?void 0:t.variables){Object.keys(this._config.variables).sort().forEach((t=>{this._evaledVariables[t]=this._objectEvalTemplate(this._stateObj,this._config.variables[t])}))}return this._cardHtml()}catch(_t){_t.stack?console.error(_t.stack):console.error(_t);const e=document.createElement("hui-error-card");return e.setConfig({type:"error",error:_t.toString(),origConfig:this._config}),P` ${e} `}}shouldUpdate(t){return!(!this._hasTemplate&&!t.has("_timeRemaining")&&!function(t,e){if(e.has("_config"))return!0;const i=e.get("_hass");if(i)return t._entities.some((function(e){return(null==i?void 0:i.states[e])!==t._hass.states[e]}));return!1}(this,t))&&(this._expandTriggerGroups(),!0)}updated(t){if(super.updated(t),this._config&&this._config.entity&&"timer"===ee(this._config.entity)&&t.has("_hass")){const e=this._hass.states[this._config.entity],i=t.get("_hass");(i?i.states[this._config.entity]:void 0)!==e?this._startInterval(e):e||this._clearInterval()}}_clearInterval(){this._interval&&(window.clearInterval(this._interval),this._interval=void 0)}_startInterval(t){this._clearInterval(),this._calculateRemaining(t),"active"===t.state&&(this._interval=window.setInterval((()=>this._calculateRemaining(t)),1e3))}_calculateRemaining(t){t.attributes.remaining&&(this._timeRemaining=(t=>{if(!t.attributes.remaining)return;let e=oe(t.attributes.remaining);if("active"===t.state){const i=(new Date).getTime(),n=new Date(t.last_changed).getTime();e=Math.max(e-(i-n)/1e3,0)}return e})(t))}_computeTimeDisplay(t){if(t)return function(t){const e=Math.floor(t/3600),i=Math.floor(t%3600/60),n=Math.floor(t%3600%60);return e>0?`${e}:${le(i)}:${le(n)}`:i>0?`${i}:${le(n)}`:n>0?""+n:null}(this._timeRemaining||oe(t.attributes.duration))}_getMatchingConfigState(t){if(!this._config.state)return;const e=this._config.state.find((t=>"template"===t.operator));if(!t&&!e)return;let i;const n=this._config.state.find((e=>{if(!e.operator)return t&&this._getTemplateOrValue(t,e.value)==t.state;switch(e.operator){case"==":return t&&t.state==this._getTemplateOrValue(t,e.value);case"<=":return t&&t.state<=this._getTemplateOrValue(t,e.value);case"<":return t&&t.state=":return t&&t.state>=this._getTemplateOrValue(t,e.value);case">":return t&&t.state>this._getTemplateOrValue(t,e.value);case"!=":return t&&t.state!=this._getTemplateOrValue(t,e.value);case"regex":return!(!t||!t.state.match(this._getTemplateOrValue(t,e.value)));case"template":return this._getTemplateOrValue(t,e.value);case"default":return i=e,!1;default:return!1}}));return!n&&i?i:n}_localize(t,e,i,n=!0,r){var s;return ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,{numeric_precision:"card"===i?null===(s=this._config)||void 0===s?void 0:s.numeric_precision:i,show_units:n,units:r},e)}_relativeTime(t,e=!1){return t?P` - `:""}_getTemplateHelpers(){return{localize:this._localize.bind(this),formatDateTime:t=>Ge(new Date(t),this._hass.locale,this._hass.config),formatShortDateTimeWithYear:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ke(i,n.time_zone).format(e);var e,i,n},formatShortDateTime:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Je(i,n.time_zone).format(e);var e,i,n},formatDateTimeWithSeconds:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Xe(i,n.time_zone).format(e);var e,i,n},formatDateTimeNumeric:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,`${De(e,i,n)}, ${Ue(e,i,n)}`;var e,i,n},relativeTime:this._relativeTime.bind(this),formatTime:t=>Ue(new Date(t),this._hass.locale,this._hass.config),formatTimeWithSeconds:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,We(i,n.time_zone).format(e);var e,i,n},formatTimeWeekday:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,qe(i,n.time_zone).format(e);var e,i,n},formatTime24h:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ze(i,n.time_zone).format(e);var e,i,n},formatDateWeekdayDay:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Me(i,n.time_zone).format(e);var e,i,n},formatDate:t=>je(new Date(t),this._hass.locale,this._hass.config),formatDateNumeric:t=>De(new Date(t),this._hass.locale,this._hass.config),formatDateShort:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ne(i,n.time_zone).format(e);var e,i,n},formatDateMonthYear:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Pe(i,n.time_zone).format(e);var e,i,n},formatDateMonth:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,ze(i,n.time_zone).format(e);var e,i,n},formatDateYear:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ie(i,n.time_zone).format(e);var e,i,n},formatDateWeekday:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Le(i,n.time_zone).format(e);var e,i,n},formatDateWeekdayShort:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Fe(i,n.time_zone).format(e);var e,i,n}}}_evalTemplate(t,e){try{return new Function("states","entity","user","hass","variables","html","helpers",`'use strict'; ${e}`).call(this,this._hass.states,t,this._hass.user,this._hass,this._evaledVariables,P,this._getTemplateHelpers())}catch(_t){const i=e.length<=100?e.trim():`${e.trim().substring(0,98)}...`;throw _t.message=`${_t.name}: ${_t.message} in '${i}'`,_t.name="ButtonCardJSTemplateError",_t}}_objectEvalTemplate(t,e){const i=$i(e);return this._getTemplateOrValue(t,i)}_getTemplateOrValue(t,e){if(["number","boolean"].includes(typeof e))return e;if(!e)return e;if("object"==typeof e)return Object.keys(e).forEach((i=>{e[i]=this._getTemplateOrValue(t,e[i])})),e;const i=e.trim();return"[[["===i.substring(0,3)&&"]]]"===i.slice(-3)?this._evalTemplate(t,i.slice(3,-3)):e}_getColorForLightEntity(t,e,i){let n=te;return Xt.includes(n)&&(n=oe(Qt)),t&&(se(t)?(n=t.attributes.rgb_color?`rgb(${t.attributes.rgb_color.join(",")})`:e&&t.attributes.color_temp&&t.attributes.min_mireds&&t.attributes.max_mireds?function(t,e,i){const n=new Wt("rgb(255, 160, 0)"),r=new Wt("rgb(166, 209, 255)"),s=new Wt("white"),o=(t-e)/(i-e)*100;return o<50?qt(r).mix(s,2*o).toRgbString():qt(s).mix(n,2*(o-50)).toRgbString()}(t.attributes.color_temp,t.attributes.min_mireds,t.attributes.max_mireds):ki(t,t.state,i)||te,t.attributes.brightness&&(n=function(t,e,i){const n=new Wt(ie(t,e));if(n.isValid){const t=n.mix("black",100-i).toString();if(t)return t}return e}(this,n,(t.attributes.brightness+245)/5))):n=ki(t,t.state,i)||te),n}_buildCssColorAttribute(t,e){var i,n;let r,s="";return(null==e?void 0:e.color)?s=e.color:this._config.color&&(s=this._config.color),Jt.includes(s)&&(!t||t&&"light"!==ee(t.entity_id))&&(s=""),r=Jt.includes(s)?this._getColorForLightEntity(t,"auto-no-temperature"!==s,null===(i=this._config)||void 0===i?void 0:i.color_type):s||(t&&ki(t,t.state,null===(n=this._config)||void 0===n?void 0:n.color_type)||te),r}_buildIcon(t,e){if(!this._config.show_icon)return;let i;if(null==e?void 0:e.icon)i=e.icon;else{if(!this._config.icon)return;i=this._config.icon}return this._getTemplateOrValue(t,i)}_buildEntityPicture(t,e){if(!this._config.show_entity_picture||!t&&!e&&!this._config.entity_picture)return;let i;return(null==e?void 0:e.entity_picture)?i=e.entity_picture:this._config.entity_picture?i=this._config.entity_picture:t&&(i=t.attributes&&t.attributes.entity_picture?t.attributes.entity_picture:void 0),this._getTemplateOrValue(t,i)}_buildStyleGeneric(t,e,i){var n,r;let s={};if((null===(n=this._config.styles)||void 0===n?void 0:n[i])&&(s=Object.assign(s,...this._config.styles[i])),null===(r=null==e?void 0:e.styles)||void 0===r?void 0:r[i]){let t={};t=Object.assign(t,...e.styles[i]),s=Object.assign(Object.assign({},s),t)}return Object.keys(s).forEach((e=>{s[e]=this._getTemplateOrValue(t,s[e])})),s}_buildCustomStyleGeneric(t,e,i){var n,r,s,o;let a={};if((null===(r=null===(n=this._config.styles)||void 0===n?void 0:n.custom_fields)||void 0===r?void 0:r[i])&&(a=Object.assign(a,...this._config.styles.custom_fields[i])),null===(o=null===(s=null==e?void 0:e.styles)||void 0===s?void 0:s.custom_fields)||void 0===o?void 0:o[i]){let t={};t=Object.assign(t,...e.styles.custom_fields[i]),a=Object.assign(Object.assign({},a),t)}return Object.keys(a).forEach((e=>{a[e]=this._getTemplateOrValue(t,a[e])})),a}_buildName(t,e){if(!1===this._config.show_name)return;let i;var n;return(null==e?void 0:e.name)?i=e.name:this._config.name?i=this._config.name:t&&(i=t.attributes&&t.attributes.friendly_name?t.attributes.friendly_name:(n=t.entity_id).substr(n.indexOf(".")+1)),this._getTemplateOrValue(t,i)}_buildStateString(t){let e;return this._config.show_state&&t&&t.state&&("timer"===ee(t.entity_id)?"idle"===t.state||0===this._timeRemaining?e=ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,this._config):(e=this._computeTimeDisplay(t),"paused"===t.state&&(e+=` (${ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,this._config)})`)):e=ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,this._config)),e}_buildLastChanged(t,e){return this._config.show_last_changed&&t?P` + `:""}_getTemplateHelpers(){return{localize:this._localize.bind(this),formatDateTime:t=>Ge(new Date(t),this._hass.locale,this._hass.config),formatShortDateTimeWithYear:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ke(i,n.time_zone).format(e);var e,i,n},formatShortDateTime:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Je(i,n.time_zone).format(e);var e,i,n},formatDateTimeWithSeconds:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Xe(i,n.time_zone).format(e);var e,i,n},formatDateTimeNumeric:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,`${De(e,i,n)}, ${Ue(e,i,n)}`;var e,i,n},relativeTime:this._relativeTime.bind(this),formatTime:t=>Ue(new Date(t),this._hass.locale,this._hass.config),formatTimeWithSeconds:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,We(i,n.time_zone).format(e);var e,i,n},formatTimeWeekday:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,qe(i,n.time_zone).format(e);var e,i,n},formatTime24h:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ze(i,n.time_zone).format(e);var e,i,n},formatDateWeekdayDay:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Me(i,n.time_zone).format(e);var e,i,n},formatDate:t=>je(new Date(t),this._hass.locale,this._hass.config),formatDateNumeric:t=>De(new Date(t),this._hass.locale,this._hass.config),formatDateShort:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ne(i,n.time_zone).format(e);var e,i,n},formatDateMonthYear:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Pe(i,n.time_zone).format(e);var e,i,n},formatDateMonth:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,ze(i,n.time_zone).format(e);var e,i,n},formatDateYear:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Ie(i,n.time_zone).format(e);var e,i,n},formatDateWeekday:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Le(i,n.time_zone).format(e);var e,i,n},formatDateWeekdayShort:t=>{return e=new Date(t),i=this._hass.locale,n=this._hass.config,Fe(i,n.time_zone).format(e);var e,i,n}}}_evalTemplate(t,e){try{return new Function("states","entity","user","hass","variables","html","helpers",`'use strict'; ${e}`).call(this,this._hass.states,t,this._hass.user,this._hass,this._evaledVariables,P,this._getTemplateHelpers())}catch(_t){const i=e.length<=100?e.trim():`${e.trim().substring(0,98)}...`;throw _t.message=`${_t.name}: ${_t.message} in '${i}'`,_t.name="ButtonCardJSTemplateError",_t}}_objectEvalTemplate(t,e){const i=$i(e);return this._getTemplateOrValue(t,i)}_getTemplateOrValue(t,e){if(["number","boolean"].includes(typeof e))return e;if(!e)return e;if("object"==typeof e)return Object.keys(e).forEach((i=>{e[i]=this._getTemplateOrValue(t,e[i])})),e;const i=e.trim();return"[[["===i.substring(0,3)&&"]]]"===i.slice(-3)?this._evalTemplate(t,i.slice(3,-3)):e}_getColorForLightEntity(t,e,i){let n=te;return Xt.includes(n)&&(n=ae(Qt)),t&&(se(t)?(n=t.attributes.rgb_color?`rgb(${t.attributes.rgb_color.join(",")})`:e&&t.attributes.color_temp&&t.attributes.min_mireds&&t.attributes.max_mireds?function(t,e,i){const n=new Wt("rgb(255, 160, 0)"),r=new Wt("rgb(166, 209, 255)"),s=new Wt("white"),a=(t-e)/(i-e)*100;return a<50?qt(r).mix(s,2*a).toRgbString():qt(s).mix(n,2*(a-50)).toRgbString()}(t.attributes.color_temp,t.attributes.min_mireds,t.attributes.max_mireds):xi(t,t.state,i)||te,t.attributes.brightness&&(n=function(t,e,i){const n=new Wt(ie(t,e));if(n.isValid){const t=n.mix("black",100-i).toString();if(t)return t}return e}(this,n,(t.attributes.brightness+245)/5))):n=xi(t,t.state,i)||te),n}_buildCssColorAttribute(t,e){var i,n;let r,s="";return(null==e?void 0:e.color)?s=e.color:this._config.color&&(s=this._config.color),Jt.includes(s)&&(!t||t&&"light"!==ee(t.entity_id))&&(s=""),r=Jt.includes(s)?this._getColorForLightEntity(t,"auto-no-temperature"!==s,null===(i=this._config)||void 0===i?void 0:i.color_type):s||(t&&xi(t,t.state,null===(n=this._config)||void 0===n?void 0:n.color_type)||te),r}_buildIcon(t,e){if(!this._config.show_icon)return;let i;if(null==e?void 0:e.icon)i=e.icon;else{if(!this._config.icon)return;i=this._config.icon}return this._getTemplateOrValue(t,i)}_buildEntityPicture(t,e){if(!this._config.show_entity_picture||!t&&!e&&!this._config.entity_picture)return;let i;return(null==e?void 0:e.entity_picture)?i=e.entity_picture:this._config.entity_picture?i=this._config.entity_picture:t&&(i=t.attributes&&t.attributes.entity_picture?t.attributes.entity_picture:void 0),this._getTemplateOrValue(t,i)}_buildStyleGeneric(t,e,i){var n,r;let s={};if((null===(n=this._config.styles)||void 0===n?void 0:n[i])&&(s=Object.assign(s,...this._config.styles[i])),null===(r=null==e?void 0:e.styles)||void 0===r?void 0:r[i]){let t={};t=Object.assign(t,...e.styles[i]),s=Object.assign(Object.assign({},s),t)}return Object.keys(s).forEach((e=>{s[e]=this._getTemplateOrValue(t,s[e])})),s}_buildCustomStyleGeneric(t,e,i){var n,r,s,a;let o={};if((null===(r=null===(n=this._config.styles)||void 0===n?void 0:n.custom_fields)||void 0===r?void 0:r[i])&&(o=Object.assign(o,...this._config.styles.custom_fields[i])),null===(a=null===(s=null==e?void 0:e.styles)||void 0===s?void 0:s.custom_fields)||void 0===a?void 0:a[i]){let t={};t=Object.assign(t,...e.styles.custom_fields[i]),o=Object.assign(Object.assign({},o),t)}return Object.keys(o).forEach((e=>{o[e]=this._getTemplateOrValue(t,o[e])})),o}_buildName(t,e){if(!1===this._config.show_name)return;let i;var n;return(null==e?void 0:e.name)?i=e.name:this._config.name?i=this._config.name:t&&(i=t.attributes&&t.attributes.friendly_name?t.attributes.friendly_name:(n=t.entity_id).substr(n.indexOf(".")+1)),this._getTemplateOrValue(t,i)}_buildStateString(t){let e;return this._config.show_state&&t&&t.state&&("timer"===ee(t.entity_id)?"idle"===t.state||0===this._timeRemaining?e=ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,this._config):(e=this._computeTimeDisplay(t),"paused"===t.state&&(e+=` (${ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,this._config)})`)):e=ei(this._hass.localize,t,this._hass.locale,this._hass.config,this._hass.entities,this._config)),e}_buildLastChanged(t,e){return this._config.show_last_changed&&t?P` {const i=this._config.custom_fields[e];i.card?i.do_not_eval?r[e]=$i(i.card):r[e]=this._objectEvalTemplate(t,i.card):n[e]=this._getTemplateOrValue(t,i)})),(null==e?void 0:e.custom_fields)&&Object.keys(e.custom_fields).forEach((i=>{const s=e.custom_fields[i];s.card?s.do_not_eval?r[i]=$i(s.card):r[i]=this._objectEvalTemplate(t,s.card):n[i]=this._getTemplateOrValue(t,s)})),Object.keys(n).forEach((r=>{if(null!=n[r]){const s=Object.assign(Object.assign({},this._buildCustomStyleGeneric(t,e,r)),{"grid-area":r});i=P` ${i}
${this._unsafeHTMLorNot(n[r])}
- `}})),Object.keys(r).forEach((n=>{if(null!=r[n]){const s=Object.assign(Object.assign({},this._buildCustomStyleGeneric(t,e,n)),{"grid-area":n});let o;wt(this._cardsConfig[n],r[n])?o=this._cards[n]:(o=this._createCard(r[n]),this._cards[n]=o,this._cardsConfig[n]=$i(r[n])),o.hass=this._hass,i=P` + `}})),Object.keys(r).forEach((n=>{if(null!=r[n]){const s=Object.assign(Object.assign({},this._buildCustomStyleGeneric(t,e,n)),{"grid-area":n});let a;wt(this._cardsConfig[n],r[n])?a=this._cards[n]:(a=this._createCard(r[n]),this._cards[n]=a,this._cardsConfig[n]=$i(r[n])),a.hass=this._hass,i=P` ${i}
- ${o} + ${a}
- `}})),i}_isClickable(t,e){let i=!0;const n=this._getTemplateOrValue(t,this._config.tap_action.action),r=this._getTemplateOrValue(t,this._config.hold_action.action),s=this._getTemplateOrValue(t,this._config.double_tap_action.action);let o=!1;return this._config.custom_fields&&(o=Object.keys(this._config.custom_fields).some((t=>!!this._config.custom_fields[t].card))),!o&&e&&e.custom_fields?Object.keys(e.custom_fields).some((t=>!!e.custom_fields[t].card)):(i=!("none"==n&&"none"==r&&"none"==s&&!o),i)}_rotate(t){return!!(null==t?void 0:t.spin)}_blankCardColoredHtml(t){const e=Object.assign({background:"none","box-shadow":"none","border-style":"none"},t);return P` + `}})),i}_hasChildCards(t){return!!t&&Object.keys(t).some((e=>!!t[e].card))}_isClickable(t,e){const i=this._getTemplateOrValue(t,this._config.tap_action.action),n=this._getTemplateOrValue(t,this._config.hold_action.action),r=this._getTemplateOrValue(t,this._config.double_tap_action.action),s=this._hasChildCards(this._config.custom_fields)||!(!e||!this._hasChildCards(e.custom_fields));return"none"!=i||"none"!=n||"none"!=r||s}_rotate(t){return!!(null==t?void 0:t.spin)}_blankCardColoredHtml(t){const e=Object.assign({background:"none","box-shadow":"none","border-style":"none"},t);return P`
- `}_cardHtml(){var t,e,i,n;const r=this._getMatchingConfigState(this._stateObj);let s="var(--state-inactive-color)";(null==r?void 0:r.color)&&!Jt.includes(r.color)?s=r.color:(null===(t=this._config)||void 0===t?void 0:t.color)&&!Jt.includes(this._config.color)?this._stateObj?se(this._stateObj)&&(s=(null===(e=this._config)||void 0===e?void 0:e.color)||s):s=this._config.color:s=this._buildCssColorAttribute(this._stateObj,r);let o=s,a={},l={};const c={},h=this._buildStyleGeneric(this._stateObj,r,"lock"),u=this._buildStyleGeneric(this._stateObj,r,"card"),d=this._buildStyleGeneric(this._stateObj,r,"tooltip"),f={"button-card-main":!0,disabled:!this._isClickable(this._stateObj,r)};switch((null===(i=this._config)||void 0===i?void 0:i.tooltip)&&this.classList.add("tooltip"),u.width&&(this.style.setProperty("flex","0 0 auto"),this.style.setProperty("max-width","fit-content")),this._config.color_type){case"blank-card":return this._blankCardColoredHtml(u);case"card":case"label-card":{const t=function(t,e){const i=new Wt(ie(t,e)).getLuminance(),n=new Wt({r:225,g:225,b:225}),r=n.getLuminance(),s=new Wt({r:28,g:28,b:28}),o=s.getLuminance();return 0===i||(Math.max(i,r)+.05)/Math.min(i,r+.05)>(Math.max(i,o)+.05)/Math.min(i,o+.05)?n.toRgbString():s.toRgbString()}(this,s);a.color=t,l.color=t,a["background-color"]=s,a=Object.assign(Object.assign({},a),u),o="inherit";break}default:a=u}this._config.aspect_ratio?(c["--aspect-ratio"]=this._config.aspect_ratio,a.position="absolute"):c.display="inline",this.style.setProperty("--button-card-light-color",this._getColorForLightEntity(this._stateObj,!0)),this.style.setProperty("--button-card-light-color-no-temperature",this._getColorForLightEntity(this._stateObj,!1)),l=Object.assign(Object.assign({},l),h);const m=this._config.extra_styles?P` + `}_cardHtml(){var t,e,i,n;const r=this._getMatchingConfigState(this._stateObj);let s="var(--state-inactive-color)";(null==r?void 0:r.color)&&!Jt.includes(r.color)?s=r.color:(null===(t=this._config)||void 0===t?void 0:t.color)&&!Jt.includes(this._config.color)?this._stateObj?se(this._stateObj)&&(s=(null===(e=this._config)||void 0===e?void 0:e.color)||s):s=this._config.color:s=this._buildCssColorAttribute(this._stateObj,r);let a=s,o={},l={};const c={},h=this._buildStyleGeneric(this._stateObj,r,"lock"),u=this._buildStyleGeneric(this._stateObj,r,"card"),d=this._buildStyleGeneric(this._stateObj,r,"tooltip"),f={"button-card-main":!0,disabled:!this._isClickable(this._stateObj,r)};switch((null===(i=this._config)||void 0===i?void 0:i.tooltip)&&this.classList.add("tooltip"),u.width&&(this.style.setProperty("flex","0 0 auto"),this.style.setProperty("max-width","fit-content")),this._config.color_type){case"blank-card":return this._blankCardColoredHtml(u);case"card":case"label-card":{const t=function(t,e){const i=new Wt(ie(t,e)).getLuminance(),n=new Wt({r:225,g:225,b:225}),r=n.getLuminance(),s=new Wt({r:28,g:28,b:28}),a=s.getLuminance();return 0===i||(Math.max(i,r)+.05)/Math.min(i,r+.05)>(Math.max(i,a)+.05)/Math.min(i,a+.05)?n.toRgbString():s.toRgbString()}(this,s);o.color=t,l.color=t,o["background-color"]=s,o=Object.assign(Object.assign({},o),u),a="inherit";break}default:o=u}this._config.aspect_ratio?(c["--aspect-ratio"]=this._config.aspect_ratio,o.position="absolute"):c.display="inline",this.style.setProperty("--button-card-light-color",this._getColorForLightEntity(this._stateObj,!0)),this.style.setProperty("--button-card-light-color-no-temperature",this._getColorForLightEntity(this._stateObj,!1)),l=Object.assign(Object.assign({},l),h);const m=this._config.extra_styles?P` @@ -471,7 +471,7 @@ function t(t,e,i,n){var r,s=arguments.length,o=s<3?e:null===n?n=Object.getOwnPro - ${this._buttonContent(this._stateObj,r,o)} + ${this._buttonContent(this._stateObj,r,a)} ${this._getLock(l)} @@ -498,14 +498,14 @@ function t(t,e,i,n){var r,s=arguments.length,o=s<3?e:null===n?n=Object.getOwnPro id="overlay" style=${gt(t)} @action=${this._handleUnlockType} - .actionHandler=${xt({hasDoubleClick:"double_tap"===this._config.lock.unlock,hasHold:"hold"===this._config.lock.unlock})} + .actionHandler=${kt({hasDoubleClick:"double_tap"===this._config.lock.unlock,hasHold:"hold"===this._config.lock.unlock})} .config="${this._config}" > - `:P``}_buttonContent(t,e,i){const n=this._buildName(t,e),r=(null==e?void 0:e.state_display)||this._config.state_display||void 0,s=this._config.show_state&&r?this._getTemplateOrValue(t,r):void 0,o=s||this._buildStateString(t),a=function(t,e){if(!t&&!e)return;let i;return i=e?t?`${t}: ${e}`:e:t,i}(n,o);switch(this._config.layout){case"icon_name_state":case"name_state":return this._gridHtml(t,e,this._config.layout,i,a,void 0);default:return this._gridHtml(t,e,this._config.layout,i,n,o)}}_unsafeHTMLorNot(t){return t.strings||t.values?t:vt(`${t}`)}_gridHtml(t,e,i,n,r,s){const o=this._getIconHtml(t,e,n),a=[i],l=this._buildLabel(t,e),c=this._buildStyleGeneric(t,e,"name"),h=this._buildStyleGeneric(t,e,"state"),u=this._buildStyleGeneric(t,e,"label"),d=this._buildLastChanged(t,u),f=this._buildStyleGeneric(t,e,"grid");return o||a.push("no-icon"),r||a.push("no-name"),s||a.push("no-state"),l||d||a.push("no-label"),P` -
- ${o||""} + `:P``}_buttonContent(t,e,i){const n=this._buildName(t,e),r=(null==e?void 0:e.state_display)||this._config.state_display||void 0,s=this._config.show_state&&r?this._getTemplateOrValue(t,r):void 0,a=s||this._buildStateString(t),o=function(t,e){if(!t&&!e)return;let i;return i=e?t?`${t}: ${e}`:e:t,i}(n,a);switch(this._config.layout){case"icon_name_state":case"name_state":return this._gridHtml(t,e,this._config.layout,i,o,void 0);default:return this._gridHtml(t,e,this._config.layout,i,n,a)}}_unsafeHTMLorNot(t){return t.strings||t.values?t:vt(`${t}`)}_gridHtml(t,e,i,n,r,s){const a=this._getIconHtml(t,e,n),o=[i],l=this._buildLabel(t,e),c=this._buildStyleGeneric(t,e,"name"),h=this._buildStyleGeneric(t,e,"state"),u=this._buildStyleGeneric(t,e,"label"),d=this._buildLastChanged(t,u),f=this._buildStyleGeneric(t,e,"grid");return a||o.push("no-icon"),r||o.push("no-name"),s||o.push("no-state"),l||d||o.push("no-label"),P` +
+ ${a||""} ${r?P`
${this._unsafeHTMLorNot(r)} @@ -523,11 +523,13 @@ function t(t,e,i,n){var r,s=arguments.length,o=s<3?e:null===n?n=Object.getOwnPro `:""} ${d||""} ${this._buildCustomFields(t,e)}
- `}_getIconHtml(t,e,i){const n=this._buildIcon(t,e),r=this._buildEntityPicture(t,e),s=this._buildStyleGeneric(t,e,"entity_picture"),o=this._buildStyleGeneric(t,e,"icon"),a=this._buildStyleGeneric(t,e,"img_cell"),l=this._buildStyleGeneric(t,e,"card"),c=Object.assign({color:i,width:this._config.size,"--ha-icon-display":l.height?"inline":void 0,position:this._config.aspect_ratio||l.height?"absolute":"relative"},o),h=Object.assign(Object.assign({},c),s),u=this._buildLiveStream(h),d=this._config.show_icon&&(n||t);if(d||r){let i;return t&&(i=ee(t.entity_id)),P` -
+ `}_getIconHtml(t,e,i){const n=this._buildIcon(t,e),r=this._buildEntityPicture(t,e),s=this._buildStyleGeneric(t,e,"entity_picture"),a=this._buildStyleGeneric(t,e,"icon"),o=this._buildStyleGeneric(t,e,"img_cell"),l=this._buildStyleGeneric(t,e,"card"),c=Object.assign({color:i,width:this._config.size,"--ha-icon-display":l.height?"inline":void 0,position:this._config.aspect_ratio||l.height?"absolute":"relative"},a),h=Object.assign(Object.assign({},c),s),u=this._buildLiveStream(h),d=this._config.show_icon&&(n||t);if(d||r){let i;return t&&(i=ee(t.entity_id)),P` +
${!d||r||u?"":P` null!=t?t:I)(null==t?void 0:t.state)} style=${gt(c)} @@ -554,4 +556,4 @@ function t(t,e,i,n){var r,s=arguments.length,o=s<3?e:null===n?n=Object.getOwnPro cameraView="live" style=${gt(t)} > - `:void 0}_configFromLLTemplates(t,e){const i=e.template;if(!i)return e;let n,r={};const s=i&&Array.isArray(i)?i:[i];return null==s||s.forEach((e=>{var i;if(!(null===(i=t.config.button_card_templates)||void 0===i?void 0:i[e]))throw new Error(`Button-card template '${e}' is missing!`);const s=this._configFromLLTemplates(t,t.config.button_card_templates[e]);r=ne(r,s),n=re(n,s.state)})),r=ne(r,e),r.state=re(n,e.state),r}setConfig(t){if(!t)throw new Error("Invalid configuration");this._initialSetupComplete&&(this._initialSetupComplete=!1),this._cards={},this._cardsConfig={};const e=function(){let t=document.querySelector("home-assistant");if(t=t&&t.shadowRoot,t=t&&t.querySelector("home-assistant-main"),t=t&&t.shadowRoot,t=t&&t.querySelector("app-drawer-layout partial-panel-resolver, ha-drawer partial-panel-resolver"),t=t&&t.shadowRoot||t,t=t&&t.querySelector("ha-panel-lovelace"),t=t&&t.shadowRoot,t=t&&t.querySelector("hui-root"),t){const e=t.lovelace;return e.current_view=t.___curView,e}return null}()||function(){let t=document.querySelector("hc-main");if(t=t&&t.shadowRoot,t=t&&t.querySelector("hc-lovelace"),t=t&&t.shadowRoot,t=t&&(t.querySelector("hui-view")||t.querySelector("hui-panel-view")),t){const e=t.lovelace;return e.current_view=t.___curView,e}return null}();let i=$i(t);i=this._configFromLLTemplates(e,i),this._config=Object.assign(Object.assign({type:"custom:button-card",group_expand:!1,hold_action:{action:"none"},double_tap_action:{action:"none"},layout:"vertical",size:"40%",color_type:"icon",show_name:!0,show_state:!1,show_icon:!0,show_units:!0,show_label:!1,show_entity_picture:!1,show_live_stream:!1,card_size:3},i),{lock:Object.assign({enabled:!1,duration:5,unlock:"tap"},i.lock)}),this._initialSetupComplete||this._finishSetup()}_loopGroup(t){t&&t.forEach((t=>{var e,i;(null===(e=this._hass)||void 0===e?void 0:e.states[t])&&((null===(i=this._hass.states[t].attributes)||void 0===i?void 0:i.entity_id)?this._loopGroup(this._hass.states[t].attributes.entity_id):this._entities.includes(t)||this._entities.push(t))}))}_expandTriggerGroups(){var t;this._hass&&(null===(t=this._config)||void 0===t?void 0:t.group_expand)&&this._entities&&this._entities.forEach((t=>{var e,i,n,r,s;(null===(n=null===(i=null===(e=this._hass)||void 0===e?void 0:e.states[t])||void 0===i?void 0:i.attributes)||void 0===n?void 0:n.entity_id)&&this._loopGroup(null===(s=null===(r=this._hass)||void 0===r?void 0:r.states[t].attributes)||void 0===s?void 0:s.entity_id)}))}getCardSize(){var t;return(null===(t=this._config)||void 0===t?void 0:t.card_size)||3}_evalActions(t,e){var i,n,r,s,o;const a=$i(t),l=t=>t?(Object.keys(t).forEach((e=>{"object"==typeof t[e]?t[e]=l(t[e]):t[e]=this._getTemplateOrValue(this._stateObj,t[e])})),t):t;return"entity"===(null===(n=null===(i=a[e])||void 0===i?void 0:i.service_data)||void 0===n?void 0:n.entity_id)&&(a[e].service_data.entity_id=t.entity),"entity"===(null===(s=null===(r=a[e])||void 0===r?void 0:r.data)||void 0===s?void 0:s.entity_id)&&(a[e].data.entity_id=t.entity),a[e]=l(a[e]),!a[e].confirmation&&a.confirmation&&(a[e].confirmation=l(a.confirmation)),(null===(o=a[e])||void 0===o?void 0:o.entity)&&(a.entity=a[e].entity),a}handleRippleActivate(t){this._ripple.then((e=>e&&"function"==typeof e.startPress&&this._rippleHandlers.startPress(t)))}handleRippleDeactivate(){this._ripple.then((t=>t&&"function"==typeof t.endPress&&this._rippleHandlers.endPress()))}handleRippleFocus(){this._ripple.then((t=>t&&"function"==typeof t.startFocus&&this._rippleHandlers.startFocus()))}handleRippleBlur(){this._ripple.then((t=>t&&"function"==typeof t.endFocus&&this._rippleHandlers.endFocus()))}_handleAction(t){var e;if(null===(e=t.detail)||void 0===e?void 0:e.action)switch(t.detail.action){case"tap":case"hold":case"double_tap":const e=this._config;if(!e)return;const i=t.detail.action,n=this._evalActions(e,`${i}_action`);(async(t,e,i,n)=>{yt(t,"hass-action",{config:i,action:n})})(this,this._hass,n,i)}}_handleUnlockType(t){const e=this._config;e&&e.lock.unlock===t.detail.action&&this._handleLock()}_handleLock(){var t;const e=this.shadowRoot.getElementById("lock");if(!e)return;if(this._config.lock.exemptions){if(!(null===(t=this._hass.user)||void 0===t?void 0:t.name)||!this._hass.user.id)return;let i=!1;if(this._config.lock.exemptions.forEach((t=>{var e,n;(!i&&t.user===(null===(e=this._hass.user)||void 0===e?void 0:e.id)||t.username===(null===(n=this._hass.user)||void 0===n?void 0:n.name))&&(i=!0)})),!i)return e.classList.add("invalid"),void window.setTimeout((()=>{e&&e.classList.remove("invalid")}),3e3)}const i=this.shadowRoot.getElementById("overlay");if(i.style.setProperty("pointer-events","none"),e){const t=document.createAttribute("icon");t.value="mdi:lock-open-outline",e.attributes.setNamedItem(t),e.classList.add("hidden")}window.setTimeout((()=>{if(i.style.setProperty("pointer-events",""),e){e.classList.remove("hidden");const t=document.createAttribute("icon");t.value="mdi:lock-outline",e.attributes.setNamedItem(t)}}),1e3*this._config.lock.duration)}_stopPropagation(t){t.stopPropagation()}};t([ot()],Ti.prototype,"_hass",void 0),t([ot()],Ti.prototype,"_config",void 0),t([ot()],Ti.prototype,"_timeRemaining",void 0),t([function(t){return at({descriptor:e=>({async get(){var e;return await this.updateComplete,null===(e=this.renderRoot)||void 0===e?void 0:e.querySelector(t)},enumerable:!0,configurable:!0})})}("mwc-ripple")],Ti.prototype,"_ripple",void 0),t([function(t){return at({finisher:(e,i)=>{Object.assign(e.prototype[i],t)}})}({passive:!0})],Ti.prototype,"handleRippleActivate",null),Ti=t([(t=>e=>"function"==typeof e?((t,e)=>(customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:i,elements:n}=e;return{kind:i,elements:n,finisher(e){customElements.define(t,e)}}})(t,e))("button-card")],Ti); + `:void 0}_configFromLLTemplates(t,e){const i=e.template;if(!i)return e;let n,r={};const s=i&&Array.isArray(i)?i:[i];return null==s||s.forEach((e=>{var i;if(!(null===(i=t.config.button_card_templates)||void 0===i?void 0:i[e]))throw new Error(`Button-card template '${e}' is missing!`);const s=this._configFromLLTemplates(t,t.config.button_card_templates[e]);r=ne(r,s),n=re(n,s.state)})),r=ne(r,e),r.state=re(n,e.state),r}setConfig(t){if(!t)throw new Error("Invalid configuration");this._initialSetupComplete&&(this._initialSetupComplete=!1),this._cards={},this._cardsConfig={};const e=function(){let t=document.querySelector("home-assistant");if(t=t&&t.shadowRoot,t=t&&t.querySelector("home-assistant-main"),t=t&&t.shadowRoot,t=t&&t.querySelector("app-drawer-layout partial-panel-resolver, ha-drawer partial-panel-resolver"),t=t&&t.shadowRoot||t,t=t&&t.querySelector("ha-panel-lovelace"),t=t&&t.shadowRoot,t=t&&t.querySelector("hui-root"),t){const e=t.lovelace;return e.current_view=t.___curView,e}return null}()||function(){let t=document.querySelector("hc-main");if(t=t&&t.shadowRoot,t=t&&t.querySelector("hc-lovelace"),t=t&&t.shadowRoot,t=t&&(t.querySelector("hui-view")||t.querySelector("hui-panel-view")),t){const e=t.lovelace;return e.current_view=t.___curView,e}return null}();let i=$i(t);i=this._configFromLLTemplates(e,i),this._config=Object.assign(Object.assign({type:"custom:button-card",group_expand:!1,hold_action:{action:"none"},double_tap_action:{action:"none"},layout:"vertical",size:"40%",color_type:"icon",show_name:!0,show_state:!1,show_icon:!0,show_units:!0,show_label:!1,show_entity_picture:!1,show_live_stream:!1,card_size:3},i),{lock:Object.assign({enabled:!1,duration:5,unlock:"tap"},i.lock)}),this._initialSetupComplete||this._finishSetup()}_loopGroup(t){t&&t.forEach((t=>{var e,i;(null===(e=this._hass)||void 0===e?void 0:e.states[t])&&((null===(i=this._hass.states[t].attributes)||void 0===i?void 0:i.entity_id)?this._loopGroup(this._hass.states[t].attributes.entity_id):this._entities.includes(t)||this._entities.push(t))}))}_expandTriggerGroups(){var t;this._hass&&(null===(t=this._config)||void 0===t?void 0:t.group_expand)&&this._entities&&this._entities.forEach((t=>{var e,i,n,r,s;(null===(n=null===(i=null===(e=this._hass)||void 0===e?void 0:e.states[t])||void 0===i?void 0:i.attributes)||void 0===n?void 0:n.entity_id)&&this._loopGroup(null===(s=null===(r=this._hass)||void 0===r?void 0:r.states[t].attributes)||void 0===s?void 0:s.entity_id)}))}getCardSize(){var t;return(null===(t=this._config)||void 0===t?void 0:t.card_size)||3}_evalActions(t,e){var i,n,r,s,a;const o=$i(t),l=t=>t?(Object.keys(t).forEach((e=>{"object"==typeof t[e]?t[e]=l(t[e]):t[e]=this._getTemplateOrValue(this._stateObj,t[e])})),t):t;return"entity"===(null===(n=null===(i=o[e])||void 0===i?void 0:i.service_data)||void 0===n?void 0:n.entity_id)&&(o[e].service_data.entity_id=t.entity),"entity"===(null===(s=null===(r=o[e])||void 0===r?void 0:r.data)||void 0===s?void 0:s.entity_id)&&(o[e].data.entity_id=t.entity),o[e]=l(o[e]),!o[e].confirmation&&o.confirmation&&(o[e].confirmation=l(o.confirmation)),(null===(a=o[e])||void 0===a?void 0:a.entity)&&(o.entity=o[e].entity),o}handleRippleActivate(t){this._ripple.then((e=>e&&"function"==typeof e.startPress&&this._rippleHandlers.startPress(t)))}handleRippleDeactivate(){this._ripple.then((t=>t&&"function"==typeof t.endPress&&this._rippleHandlers.endPress()))}handleRippleFocus(){this._ripple.then((t=>t&&"function"==typeof t.startFocus&&this._rippleHandlers.startFocus()))}handleRippleBlur(){this._ripple.then((t=>t&&"function"==typeof t.endFocus&&this._rippleHandlers.endFocus()))}_handleAction(t){var e;if(null===(e=t.detail)||void 0===e?void 0:e.action)switch(t.detail.action){case"tap":case"hold":case"double_tap":const e=this._config;if(!e)return;const i=t.detail.action,n=this._evalActions(e,`${i}_action`);(async(t,e,i,n)=>{yt(t,"hass-action",{config:i,action:n})})(this,this._hass,n,i)}}_handleUnlockType(t){const e=this._config;e&&e.lock.unlock===t.detail.action&&this._handleLock()}_handleLock(){var t;const e=this.shadowRoot.getElementById("lock");if(!e)return;if(this._config.lock.exemptions){if(!(null===(t=this._hass.user)||void 0===t?void 0:t.name)||!this._hass.user.id)return;let i=!1;if(this._config.lock.exemptions.forEach((t=>{var e,n;(!i&&t.user===(null===(e=this._hass.user)||void 0===e?void 0:e.id)||t.username===(null===(n=this._hass.user)||void 0===n?void 0:n.name))&&(i=!0)})),!i)return e.classList.add("invalid"),void window.setTimeout((()=>{e&&e.classList.remove("invalid")}),3e3)}const i=this.shadowRoot.getElementById("overlay");if(i.style.setProperty("pointer-events","none"),e){const t=document.createAttribute("icon");t.value="mdi:lock-open-outline",e.attributes.setNamedItem(t),e.classList.add("hidden")}window.setTimeout((()=>{if(i.style.setProperty("pointer-events",""),e){e.classList.remove("hidden");const t=document.createAttribute("icon");t.value="mdi:lock-outline",e.attributes.setNamedItem(t)}}),1e3*this._config.lock.duration)}_stopPropagation(t){t.stopPropagation()}};t([at()],Ti.prototype,"_hass",void 0),t([at()],Ti.prototype,"_config",void 0),t([at()],Ti.prototype,"_timeRemaining",void 0),t([function(t){return ot({descriptor:e=>({async get(){var e;return await this.updateComplete,null===(e=this.renderRoot)||void 0===e?void 0:e.querySelector(t)},enumerable:!0,configurable:!0})})}("mwc-ripple")],Ti.prototype,"_ripple",void 0),t([function(t){return ot({finisher:(e,i)=>{Object.assign(e.prototype[i],t)}})}({passive:!0})],Ti.prototype,"handleRippleActivate",null),Ti=t([(t=>e=>"function"==typeof e?((t,e)=>(customElements.define(t,e),e))(t,e):((t,e)=>{const{kind:i,elements:n}=e;return{kind:i,elements:n,finisher(e){customElements.define(t,e)}}})(t,e))("button-card")],Ti); diff --git a/config/www/community/button-card/button-card.js.gz b/config/www/community/button-card/button-card.js.gz index dfb909b35993148651779c703935ce28161a4299..7faf3d2342a116889c12a727dfb03dda435c848b 100755 GIT binary patch delta 24245 zcmV()K;OUH+5y_y0e>Hh2nhK4>16`{Vs&(MZ*DDPVRB?HYI6Y8y=!wENs=J;{eDFu z2MuPjvIYj>x|?%tiwOq{m8zp?*B?jDbfd=wredv>p9x_^-sPY(|dcMlH_kMSZJ zW;~7>nVq@J`8A2^$;MSOQVW zYmeA4PJ)a%fq!34((v|Jn6kzgIzzx?Ka=3Ly1n>;-|5AzmSZP=b`T#r8yj}u+c=8E z4jeCifFIZl{1Cu87Z-ukOIWr@q6Xw|Yy=w{a+D)B<`Gk)l=a+TIgFz;YcT(mN2B=E z{uWZWG_R;z-)^2=y4-X8pqJ+af3rK7L3}K)1$s1@ilvw`I$>U zGoLMitQx5vlkJ>`kN_nxKkg~Ci{eOQd}Bl7I&;Lp8r&CY06Ji-OVc1IqzC2g%ukSf zZRR*`UKuh327sOjX$9;$ZHf2&vuJ3W&^s=)nUi}08h^m&{mg%mdH5efQ4kGrMHKq) z1Jn-)8O*n=9@4%XYXgdA*yuNlkfjc5`doD(i5jcofKuB^37~w{Wqs(kX;~5vu(ljP z%hItk$IE)Ox+Ky=Me9R9Y{O*3OpabdBdI&}hy7uj&F0zJJ~06g+FL-Wgatz+^Cuxg zDt;A*XF6jZhWm^8JWeuqlP>26ZGf844wf00!T-0BABYT)^(>r`e+(N6E^b3 zOLy*D!0UpLzh@&$a*9a#m)Qo&J*tyMNI(r(x2zistJ0XS=K}9zcpu*Bz0>jD_z(XLd zEEi2c8UBpeIBR1GhV;?aBmqd4Q)HlP1>o2-5}Lcl+EM&)IAm!WCmS1UR9=f2oI*nd z09@w$*GfqMnT$q>B+oiJvYMGI@c?+QQ6e(8f|`1XTm;F5e`cMfF{QOlle`micRnE@ zV@%`$J6yVido`Mb06oYKdotgT1m+UY9dgUG9}a;Y-nwgTgg4 ziAB#v)}AUte}$FQZnq)fa1}8rW&mwf@^YSWQsfz>L0EHL#nLn;b%Hz#=pTWpRZm|8 zGlmFuR}~P%iA4^}vXwbPY8RIqce4Y2n9CGn@FcWTzp&Uunm`((J>&OhE;KYzG< zaO}R-D!;q$+c3j#B_u#sLiGo&|A~($0n$``aiPxV*0h3Pp3LQ`?n}R5fpA~@)2)u2 zg#{z^n0pe0pqqFcxQ`9e`n^1Q!xbl{KZ=Eh0gyba$%N$1yF{dTLspS-p^mqj00BXz_a3Scm zAqUt9upvuJc)fVe`e*H&qG3<&F{vYbt4=Ajktjc&btANBp&-T6<}G65)?Rutd0^q8 zQQ$u!lNA<-@f>%L_u^(VH;3VgE>-7l=nj2oa0u^~X|N*)n9J!k40#h`EBf7G{tgh65U!-MW&Kk%RDy0A?7-b~p#?AtG3TbyP# z{y@7#qDa`<+q9aPN<`>D`%fLS?wvzAnTAB{`Dx#JAo}elvDMB`Ld6=;yQ z<=I1X1TE}Lo!fIN2Avw!?i}`?dbfY9Tk6L*-eb}EHy0Q9=P?ZLDJ47?3ExA)BM*Uu z-HFnI#8fPNf*Le}gSgo}#1n@kOMlHX;Fp^ZET?ZZa7KG+(-(+k&3E4Lf#2!dkzlK+ z8cC+safeRxw5fi=kM-sP2nzn#EhLhmuBC)h?05@hd_6$=Pn$LxWPz#e^`U?Nrmcu; zQ&AVpL3Fs32U}kj4zbSFa?V_1m9wSZW(a+9j$_mW?00~Kl_@Y@KF zt%;tp(zDS2vSgYG@u=sk_HdCT@bd)-K3^8aeGJ-MTpCiz{%vHVvP43eEHOPMcde+q zNfV6?%nZ~e%*GBYigkhp2)(vy_@E~nA55>_0(E~Hgqr9{& z&Uco)XkBieI%KxYpl!g~rhU-v|H&b2`P#RgO~EO+(~Ct9=X8+Tb;*CM=_PIiPK4TrL?*i+TT&_FU6b~NXwk4Vt-)H5^x|{ zPt?wW2_n-m5nveW%)uJ2GKlvF9p}7g*h3wrc$TkOG6!SxU<>CUZ_9>OB}jA8$pMClB`7X^*x)ah zT7Lgpn$9xA70V6Wm}UqD{@zgsF~oVo+`A>}tDREfb5PPB#pZt&DN$Rb3ht#i>hHcYJ6QK0sA{Dze(qMAu zn_*uK%CkdKgob$XK`p$d!{EpxyCea*^-33BGd{dgoFkfL7{~6!M~_wpKg_VQw5oDTf(}etBX5 zWVt^CeX)E(_1041M!?0_Z~fr29zXg&u*xZn~G z#X1#Im-V(N30G*J5mo%oPTiCm-sgi5U0ZNeuyggg<)T2VI8P}|EV69)Bl)$ivZJdI z5n!cX**ZHvK>SXN8U(-Dj1QMVZX7kpUBC{Fl}8W!QXLc*k@eP1mM1uY!nV|@_;o1| zoLtIjt0I5?P=o5*NZb#fNyiD7yuf6hVrE;8rwZZ87#0HFCW!lYRhK}`jD+%oc=ES2 zQl9$HR#W^#gW|vRnL+(re8+NwAE~TIb3f-~;>)n)8%LZ4{&sPZmt1H)VPQ+mw3%BU1h&_K+wovGr*!49b8Bl2PN6w1OXcp~o z!bLJjR!5r9xnM=) zxtJdrMH+@jg!=rP4R#(V{Oh(d-{G#ng@1p6*E@v;k9#oM1=$t*FpRg}x{D&q!PV~Q zlI;^z&`Igj3NLW)A8c{BB=p>cUFf-&Q7u=ZjTMo!lp~ak_-kj ztOyD6CE=efk+#lX+UDT$AEvtS4f^SnnZ;9Sz!Uyvvlp3WlpIEoI#lk8r{iMh+$}X(>*BUMEi7M6PxcrQLsPh*D`JSJD*qn1VEoiqbTJxfHYUU<;WxDhRLy z^(X8<4H^_CLaw(uP8*%GZSp81l9m)C=^K=6&w!YOjNEtHwT_EwS9-MyTM$S>@hCVC zNC>22xz^3k#syn21en{wv+uPh;=Hy-47sU6*Rb*nY$WnC>IC;*NT!*e0RAdad+h~# zNxpMNg)UaTMhCnZ975Lt?0S8YbatHgdk_E*gpH3)VB!8OHj^t983{DIhX&Vzntr^K zO%$VlV=_8}Q5t?=!W;(3PehvhhV`eYI1+kf0`gOmXc22qPT>1%o&t7o_!`GzT{*Z` z3$=pL=+Y`#QK(OYXcUT0Oi#=@&lpv!pX(UJ*mDGzWPuW+^*RflS(hil9EqD5%(PvE zQ<2TD>TYS(i3K8)oz=Us=SpTMIl-^XlAUvZMOKblg<0mGpy%MzY!;R-^vE;+44oG; z`%CwC#*yq%UaRgX_Nag4RSFnKuv_hW?QP4U3rP&NxS3q|QKr|{ZgWUxXm?C5jzzTd@`FVn%2*XKi)o7!BjhCC81`-1MRNTv@Gy;TkeTiKfmEDJySshV9O3`^UL5s@%lLe$Z8?Fo zrr?E8M>mo`7(J6lN zez}bD>m%fL6Up7a+$PfPQq5H}e-g%nAbgEo=7pY~jqv8LqXg8ZLN|O?boxg1lmqAyWCdJ&iIPv>UbN^`aJV4EpBkSJMBA$vq_q%!*pwZ#Vp)Y630LwrFFI_kztFr+<#8elAP}Pp2?Nc-Oaln+2L=XT;^bb8OtR z#+-#C%Y|f5-zBE|uY?UNK8-9l?*vwb8z+2%)BQ`RBHH7|l|ARYM(pCE(?z6Sen52( z{X$;8%Yr@Db%&BWNCa7K+L4!k@eI*ya57f#8LeLVp_{Q(*h|F;kQ9qCOw_r8%gapE zuqC>WaN+we45}tm)0>^hU~0T=V6)7`IE_%TS=N^`CJDrxC4DbWOk`95%cgc5m~nJ* z5e1eNPfnZeFwwAlg-^U3i+3*2*WXQ-db7q&?Db4LXZ_th)O8u&Yjm}Lr7^P;y1_@1 zKFodK!%VtewekFHKaAB9GFd_h4TQ!$_%Z^pMsn780 ziS4wrDT{=ABJL545_C!0S*lA0BT>zE>g%Zjwo!@N`YIkSR#(f5*u~y1uciuAdV2~g zcXD}eRHW3~<<(RHQAw$PiPOyQx{J);az`0Doss83?nafLG{Rbu_DF`zn&xL*nV)MZ ztglO#6CP#7gExKFz(E66hkeEN7TUwySsLGkGE&mffYfkjnQw`6u^`G|3Bu3Dn$?_T z?j-X^nJvbpRMqPEggpw_g4_r?(iI+7&lK(N;@XZdh{J9NG&$3MLsnTS>-QqUYT-QC zDtdgqp0dU})6rtcYHms&@WY}{aMWiWYaXwk!z6-)7={brX|~m}9MH|U z3esS2+I{c$_9+{Gyye-&EPj76OD{l+aqPZ-K(2|K6W403Z&*&zHDu|np92>>2F8YV z4ow4iU?!kCCscTR>FXP<1%58*Nb!_Krmkof?qZ^hc4PtE)#8PZ8X5xvQ-un?(gGFi zAUjmXtOYVxavvtzDIrE~w~d?H9*4?44zX}cG!l?$H5(0o#5g)B4)mZ1<|wyYS8sGm z)*xJX<{5f@6o3NdtxtFNG*BQ5`kD3!YjwM@MTVpqS)2gg=n(Dnxq7L%#Zh+2!YV8& z;%6CJTh-!%c`_G8<<^K^6==w8TDH>|29cn3V}+1IRb#-(6Fe=DJ9;V=4$~ZSn#Wnu z+zSk=Cu?YbpASk=_|1KCZw_}D0<@Q& zO$|;Je}yp>TxH9kB@{UZGpkOt2Zta)j7z9mA*py0RMqs(Z*S9dW^h|3XG?eAkA*-+AH!hcFE zkBp6ORON77F$1nSoEafNqDZl)C^K%VE4KvQuk=sbe3NeG@ByErV+*{M;8dBXV18@m zlcb_TXjlcr9WF=RnZAPS>f;A(dZdX#yJJr^P~gY{Dxi}@ojfUq!wt?{;X}m*qGnu#wP=i;p$qG+ZS_1v+i)128zsG>1g|bi5qQv;rnwV>j5WdnPuauH3@F zKIP&9_Iq5LUe1>u*VjF9o`orsx#xq$U=YH>Hja&D5->#d=??L#b4U>~WVjt0tb5V~)3*1XzjVCQJ8J@2nM%W-3xfhj=0E zuQxU-5zMlhG~o!FnOqKcJq2Gm9fU)k>()ngKuN1TG~H+|Kj+OGK=J|9_h6mzR;z~| zl53}#aKmI6k|HmvuL&V|=ACljLNL5iiX24>`)%qNKT6$-P*Z@!ge%Y8H3|b`<2j>$ zbB)pfDV{^Rj1JgEt!n@bjH3iFqhij&r3pCPhKML6%v0t1`iM zs1f~3G^FC0)wQJZ@}~0WXVg~yQ?rVHqGTdH(@#uHngy71t))-_ta$lF7?PNq6jw^Q zCA|T`ay`AoB3xpTQE{nfObwfiCP0sD>8`^rFpjc#F`Uxg8ZC3ehygq+IN=lYM{3W4 zcdxO?E0Bg+`k+(D1AU>GD|Oz7*-Zm;P2+I%nu9jA-I3bnl!bZdEx~O=BN!KdPrqSv zCc>$xw1iR~#S4(jY>6UPz3p4hm$1|r@p0U9;OHE!O=ydJ$3~WW z%17DMThIDdx6_%wvpj1X|F~1eC)2DZBTIrP#mmE&zg5(VC+6NZRyFjbuTC*6`ym*nR z&&3?Rs0d17m3lg5R9gK_hZvE?IxOlM8rRk1P}jC~)D&Y%Vj|H{k?SdQlpBLJ8z zdLUy#?j}ef0HvK5cZ{lq&5A)EQmGQuA)A11sKsZ9U*IElwTM$kXs9E9!Q6|ZWDJ-^ zW+mKPNtf$(KsLyybY=>pIi=_?#Z=>T)-GlB?fS!K%UGwC<|rBW2&-!XbyVv?;^nmz zecYrXQObx6@Hc~V2wUs7H|q;HFH&l`iafB!sl{95RYJ7L0sUPDWV*0iqFQ}Kd2t~v zxeTl1d&qf036I%0fbAWBMWQOC*mPkGs1|v7Fd@3dQl%s+Ch+6b|Uc#w+Se1`%J z*%`2I$0?7?KbLfaSHBplji`Q(szf9Z?Qh zjhoaZ{}!}!if&>QQaLV(v!}qybpSS#iHk)lv70ir&TNAz5a9VMvd?`@L_-2oxEfWo zzrr%NS4n}w8t%B&weABrniU9m&hP-m5_q-TbMfJ`haYkQ0WOpJAU+Chz0JL7NtR8% z%acMOEGL+JKq#;|U8=&Z;uq4RkozCk2h?AhHe~Mr8iGip9EYj#PF$O|!6$7*JtLZt!l^Gy2(_(WV= z+uL|kXdgF_^v&^`(>KvYX4tgZ9`EmXokBo)h6Q*l z!vb4o2FDB}7s$A~OgH@{Qe%9Q%&2Ix}c#OOUV_@)SYx53dP~vSHegNFJcgz`k`V*o*0`vn8-Ov}OAssK? zjPi-llOR!F#c+HThT~Njj%zU-x+h*>VEA$Qtrhe^eb~-8@ zpVxrl-^c%{B*sMbox3h|`| zU`v7ysENc}k9UWvt2h}>If8lr{++GiP$VX7BpX%5Qkrf^WcTmy+zVtP3sgV5!yz`+O+!brxB&AUR z3#TK}sIAdGoFF---46Z_e=3UF?R3=dGZw-!K%yFr$4C)!*s9VL_8Vs-cB)u^10`h| zt2_4xzzfimD2N1g3`g6;?V(7U;3)1Q4Z>LYNt~Psj8HR*a>pIEvkMi%;Dj`5Kyf-1 zdCt25XNbh;+y-Frhe*2%`2x_57P_x}B22CHUdjD@nPL1%b(#AHT3Z1{)KXl6`u zzmEK=Km%4Wx*@Sg*=6 z8PVO{Q5V^y$PuhaE{J>G?OmYb86QOkF?R2F@8835^C-iu?o0^VF;3x(!>&JxQzdU1 z0vZoNmE)028bFIta1wlfALpEA#DWo}o+(KL?F03qhba~qjkj?!ND#;+-s#BSqa+w0 z$_Kk_3(#oDgkYNrQGyuJczjo;N#u_Lz%sNv4?<@0CC1n;P9UYLH31^w{;o(f5g3f2 zG!yA2`arIAkaN$2d2klMVCMn@;}KwB&Vu1|z8H_i_=CZHOiLDj#D{jb?*O6cB{u8~ z2YB0HftVhRg3bspAH=64&D94TM%1dQXIJ77m^=gQ>-3$SJ9lv5D0B!4h6y`UiVR9U zlzT~h7N}Kqx4Uy6XEFso6f#wEcW`&Rdk0h1vJZAU_qH%08tL}NcZ0h-(1*ze*zREa z9wntySfgTvZX*tVQ_i9YS6k58-r5>rLU=+P6p#S_gM32Gd-zt3(#0D#@_ALq2-luM{@u*^tlC}1MztWJ_GLse%^&oIZdoD zCd#w0NvqJq&N4^zP}gj+)w`Fp+AKBQEVbV(4WoJOvE2FeURMlFyG~J{oH_?f`%APD zC(gzOeN5EHllCb<33WUIX{umL)yI=RDjt8gX$XUj5P7d-xQ12)Opo8TyDf&m(^rCa z<5+y-Pv^D>S@*?GuYjZj?gnlO|BGFIcn}^+TphqqS7uSNK-qyTiCLITn45|y6$)#x zGFM|HbSM&pLP;vV!a9`5i{!3wT=cKR4zXzFBtA!MfKcGMu@#Vlwn@ZBlQ|x5vKD{8 z%>df1+q@O@BLDl$j$yP}v%7f*ajJeJi0ZqAdCLO!B8jd<;wRMzNlk==mg8Q_7ZH6R z@T`K~SPAe@z<-%xpsMrutrw_OMDFG@Jgko0BtKmM0CEF81A^{2NcyYtCzL-}nLnU> zV4fnD|JRvs*?mu&WqF{+oX{quX!ZwBb+li@xPr&IOioYKqBxz{OY4*1?-M z>BXBj_F>c3ZGH{ocMe=gPBGcJRyrgC0I(t*_q)&8?lt=RHuKLP?e8Cb`{LPa4}INb zxbLrVT}}pO5;2PAS0W=Q=LA;sJIDe`DdZsKP#u)5YSA8oTz^~z|+0W z-~X&{A9PyxgVy+A>#M`_?$WvH_xdK*-Ko~yDwVDIE$ZI=sDA6=*!?Its&E;K=9i{% zSlvGWDX3;yNJ4#}S-nLrtHCk?hdSdduM-pYqzt3ukY;&7PXN9i()DuoVr;4ESfJepY_CX#4~&i zyH{60o~HXrTLjl@Pw@3@@i~Ccfpn0C&p?(%M6$M{tAf^Yn3$yfx{i^eW7k2^umY@?O~MZtbF%i&_0^%&yi~9(vfi?G!5&S~aUu z01)|rdi>2~phMNzTleqZ2A!w5y?YP-PMY2B-P@=fZFbq6O5kI+icHockbNZ+U>K=?pFK$mXK5P_|&#pv)uu;ZL^Di z+^zOq$7#0jb+@-}+gw-Um1?}MTIb#tREu=As8TJeR;wW3VK|=#tL8K)7Ede1OOZwc zpN`XSvVO`m@;r{>;WUY7tOh83Z7++TrXlQfOVu&?q&kyNrSE^3TKRHOD2jo-7ied< zQTs{pT}s$}fvyYsgTz5iAA*fuzbBv{0}rw{)RD^ALDe#z$(i_z>e;X4^`cM@$VHGLQZ;1X7{u^F~{%{rgpZ`SY4_BZ+ z{226yKOy?rySjh1nO}J&!x4t8e_W3#H>+#2jP6TYwti+c)f#2*?Aiu*uh~{{VY)cbh8p z3&OlAR?g*4w4h(9?Po!qQhUyV_OzN)L2oNLRkcG_qrVkdRFQ8McoFQxa;}mUxk{DE z5GTUT+YRd6gb%%9$q*0rCai>TG58ucMGZ%Z_i9U+@SR)cCZNoismz$5?CNKB2jrOe6)aFi-hz20V*e)3HrDX;Mh$;eUdRX@_#J%{?BZfAqIc`eN5#;1 z42)jblIb;eVPBDqjvKoUb!5I zp}Td3cFU!9FDr#*Xx!y8BKS78kcQO;l)5KNoYa&!$xEn5lZ)f@%#J%1IU)e?s<^ML z2Qq(TR7Hqg<>z~Qph`6DDo@|r+jW{%u3qeF7{*cE4hXGc>SB_{=qwO(uVK zNFpiqIbx(&;5eXgVX&Q61f1=5+Jrx7qfKCuMZnT1Wdh0=@iDpY@ztW86D>Y75Bm$XM#OKl9hf&VnSyP|hj;l4DN z$^?e5^<75XJC4?@Okqfr1Y|>Zu2Y;(v}WOBEwSI-WIcwVK>~A(=Tji8)JxnGFU1Sx zsc)yv*!eZ4`7iX(@obk-3v{?f`QK zGIvnU4d}7VB8yLWFj~cB=5cryjO;t*It!ObgJMV<;$QsOT5w(9qbHwsHUN zhpZ6#v?SOH2U%iKolENbbs;eF?=pfkT)FmeahIEXCQ;&@7RG!UB)_)R(-hEAcYKJb5ml#Rhwf(3cI z(N$$@x|s11A9I#ihmQLT0EhBru~rnf@cmAFF>H}A0Pi6p7eJCi@PG{b0W_9nFT#(tCD zw&fG=o!0%<;caIVHl27wRJ@vqyUHc0j%f^=1&lkW!ISsjCm2kA2J^^9`*=GSt&)>G zGAIS@z~f1|Ctc&@P(qJSE=jq}5fCv9%xk`g;6JE~*_P#3Ty=l!*^FY(+GfxxZlEC2 zfG0kMf&%$~;ZciW+!7TjOsAwyAB+2mvK;_`spBy!%5*kBp16=sKS-FMe-yqppa+-8 z*%fc`9%vgY1zRmlm6-Gl=Yi!pj3S(KjDkS_#c#UMIwFJu1QD(|FA5k6*GUru*er&T;?BGf{Ei0Tnm^4F@D{NtX$IzMFr8l1QcS{=wui`c3=z;uMr3b zVn515z2(menC!V6&9RT11*QsJiA^4ZV(u83KSoPfKhOHdZUdtz9DA0vbdHr+bv#)p zgT%bcxcJ*H-|k@(A1;@YITXxsuiNP#cLW4V z&JLL&XVFWom9hls3MZ4F@Dav8uu>)?e^{pspWTD4Efh{k`cjMnl&w>SS1W;@Ju8bR z6QqY+66a~d5TiOU&ypW_agaRh1-ZN9z$i?_;3>&o&;as6B3U@lcw*VNq&tnw6F{mw z39^68LwT%n@LS&9$(u)V^Te`o&E?^V#nO_C#l^5%I4)I>7>+0Tj+@Gd%*0>3dl04g zl)U(BxkRv@q+3^TmAoyn-tyn4fVkucz4Hlk3X@_)7>gmJn?_<(>bJFY7mQx>ksv`k~NW%w8iFcNrn(|=Ny+Xuf zlKTw|hQdaTEN!OTs*W1_%`<45Za?k$?=sK+6vB_9lpG@gyI{5;cGK zJt@8wLeFCy|AR)u!|R5PbNFgBbWlTpG7OOa^eA10Olb^|q(oY)MS`rwBf+VJe&{u% z<`@81Zvp(X79V0D4^ken<`Vvu3aRWB;6}1)$Z&_Ed0bd{W!Gy=`Dnx#@Z*rlqTj>h@bQ0HOFcy1K#RNTIe@hk5$I_#1FyNYWH?8dpJWz< zy?-EZAwv1LDCABHSyH^9G7;-FHg7lh%l*cFFb)#lxV>4Z0TL&Xi`yt)D*JYt&B7H$ ze;G#@cO_0J)TXX7i{G!P@G=}VPUOoz7=ZRGp0IKJF0Yxcs7UdzB2e9)yqkZ+WU^%Q z$q499)~m1c0;YZr?PG{c)vMc(ft12Cs#*U}DxN%oYJ;=JBk~+_8!vIwLqW$2P#Ywr zBkE|1CYow75kpfzR-n3(2pFbFla_-Go6k7R_}pozFJ!YdGc#SRqoLsI7}Xj&@2JtYT0DVd$`cWBS7a(as&dUWYzBXt1zf?H zubMBA$c!as;5=W9V_<*oz-C1^cRL*;RYKj~0{!O-roUmzMb(+nFvO@jGqp}0g5^fSzX`ID^|MuTFnMTgZZgdY`P z(Wu0mc40ByQ)tdPTYFoi0C#`x%fQNsCd{Y&w$QsQOJflvdlL8>FDvdzl`VJD+*`K^+XX6C6mZ=0=^xFAC zepEYJ(to$>N_5Q_u$&Q4GtBOc z*hI2(C>CE;;?nG;q|a+~3wzruJ1&*EqQJ5`VH#6)7y*Ah?ka4cl6X~_zazxfLSIH| zJ^bZTe+P4Ppl0T96<_l5$=gy(vcL%B@NQNiy;=GAM#ZmRR){2&FCe^GQdTi0AS`MH zC1?O8tzfnMT_LbZAn@6wg%OI&9p@WB1fd0+=l~R+RXtaLn+5M$wTacb0y@|Zjf+q# z*;~!2-|v5Z+(xy2CrqgvWV+Y4};4ifQPUs<~XZtn|9N{hy)p zmu%da(CCucy7|0-5Gp9Z`Hu5vgve_D=^v$kQhe~NuL?l;838CQLzuW_4QVQXrm74 z@E2V#uS7onEwACqBz%quxE|6qI4hBVJ=Epxd=d)x35e_9u)>IHDfy3wL;=sI(Vx-I zCt-i_YpQ%5ELOPb3V!g%!lHoZ)3GSqSw+(~z~W8THT8PU1^!7Gy$KesUg1UddKEUV zzeIKS*IBE7RD4{%SWB9~W!(No_`vS2hmP=%f{r3QD_PEJ#RwZZ!d8y19ujX5KWn#wDc%xc-|5o10zpFSyn4<@1>hg6!Hz{-y=BkE$&t7U}3-yeUG zsEZ)paQ|4>!ZkR=m2KRNsEd^^C+b4k>k_q^nxB-Y|5y{TQUXyM*Fi_9wVCv@tn{n2 znFD%S>b8HY)e6!%8)mHpt@*bO8xI=Zm?vr08sbAr66~5Y?8{o*J>9=mFgPl6#v_1=Osbgr^ zGz@Jz*W7H_!g<8(%5j`)0aTCi)raN9Gx5^ld7bHAoI@Sc^^_5F$IP8Ech1}i>#dpB zLbG-lM3Y4@VZNol@FBMJECmYlE%6sqhVg6`9F5qJ&w|jm3O_MlejZVVZxw%jQj6%! zpmL2Ln1?PK>Zvn(#4ax2KX_lq3>0${ScBQo91^-)_#-=onLaxj$BV?bw(dd?W9(sE z-$Oja(a|4jnn^h+YSSpYk#SkO4W~9?2+s;tiw`D^i|zv1d{1+kLz^ z5m|>lRkT2Lx+p$vV6hZ$S7b(Eg9vreF*%N(pr?3h7NyCPrFv2U_q2cau$qbG(y^K2 z2@iSnB^LhfZF+6YH-B7Qm?0T;w3M27isBlnEiRETb%}(PkhSLfBS!0JV`I(i$kuO^ zIU5_#qAYZ>an_V?@`#5CWwbS{o}^^Id7|?;yT3f(mgQ=TZGlb%S|Hid!ZdE zV2d}8!cLJ!D7#7fA6ieWa z8H{}ZvIXBC*Y}zt1!)8$W^*K$RgK9TOpdb(z|PW>5mt=OsM%FDXjX@eha#><7*Dz# zySrJb4}>C@*Aj@S@~ma?InWh-Z7rb^dHPFYTdR2bbIe|2272%&ehto5C{R(Nme`Ej zFy^hu2d!>j-;aNR-x%^s+-2~9b=3Ff1D)0P;xiT4lZzPrXUsii?mBZHGWXrzf1!Vd zBIE3*6#A#w!|BHf{dKIn{!>)#s=-L+tPRn~aZHt!op`TgmbzOh>m)${j=~WdNAio+{eoIK%kdWp=Wz(;c;(nBzGM=)Nw0db@sWh4bi@BOQ!!x>F*)!Q0b2qVVYrM0 zqj~KG$z&m(Qe9rtw z`BhG>jy(p6jjyOng)HYO?)fQWZ%6p(PZ)zVbb+0K5RyMA9q5B4d?@bw{Vt{pf`T`S zH|BpK_2@k$_n8vTc#-;hLp6HJ@J3!#w9p1k!>U$N)k-Q`8R=GnLMu48 zs~QPZBY|vW?1u-TT)wTY2qpny*T9O@e8;NhSTx(OBvXUHR(sZ9A|gjitD$0K> z4+*nO_u3EQz)pFIpKX%2Un)KqvyrbBg zgeAq8wKwDzuWsCRflrl?a-*)_e_Gc!>g(C3a_1ZM_VuR`LBem@6U_78trEd_AGp^10oFyNguf-oa)o{mXjJ$!Bf?=@3i zK}!C9M5TAyfZ?M2){vuLULyFvycYV=!nZ~@{WW&JV{AHO0p)&!@2M zGZ#6J78v7Tt2M&SGQMcLNV;1dHFL8m{Pj-?vM8hhHz2MIA!S2)cKb7o>4$%xYD}f2 zdD9_&{D^*c-4V5Z{^j+_WvzQND1L4%gWq1V41W7l;s5$-@*i(%e)-28tYp)FSEK#K zPc_=VAH)02e|(ht8Tsa~v~{Vo=A%(u1*|w4GYZU?ZZK>T!x*8^{}oy-?oyEOvb_a_ z?9n`lCr~GK0FaA|wY5T`%eXwBKbC=;(p<}r{RFlHI{ugryT&;lwm|vVHL~G5x2Z!z z`t%{_2N;HvEc;8Bm-};LwJQ$EcCKP00*2y~VMY@H@so8%L;;^+u#cn?DUb=KEJ;>#gA5giG>m*ln~dZBqT-=>8ZP$m>qW>vWDkwSTjJI}f_6AX{Pj+adrU z65?n3FVz{cLLgw|pmVrvyt z6`9bdQtnM6SHj;6GqWr$k|4k-gUBI-AQKT40M%@MIU_YGF?Iy?YYwFWl^$y0aU_@W zVoqxUd+1w2NW}e&V@y*JlUhh2f1h5VjiuvV){2EsIH4pJKb^P?;#9s=2tp&Pbj71jv4I(o~_Fp8>ujA6rp zk|PxHQ5&5Taf`E*nnxS$my}bgycB|6>IEp@ic-AP@=!H+WTqA?m7Baqe-lTgDzP|4 zkGTJp)KY3*nQ;^CaWG6Us-c_e1i&20CNHGUJWq$4rD)j1xCrQ3S76rEa() zcmHfQh{Mz!n)$C3s4vIvRA=Y`xC`!2dFi!hcSMQGC-YhQgcd)Nh&$%KrL?ttp@baN zj=GFrv*7LXVD8R&>4~A4e+og{sDA)ORus5j^? zuhTaFVcwGV&B&@xX|8-0Q}%jL+st9*jm^S);^r_!Fk|(;rfgNlr&fW_FGU=_pzF93 zUg|-{dv6~d5gbQH7Z*d0Cr#+xqUR#vw8GW13lv8=&633ssIo_=f3|oUB8W&IavEv* zAp7S_4_Xt#^&duDydWMqx#P=0L|(g%VLW1omQ!{{ixe;Cpl;^i;iDKw+%LZxC`$O-A)eDLmw)^A0^Pn+)>p7KSU(CvEOk+Kal!~ zJCsqKd+}b_Yc^wN1n36`@soQ>8!3zcsrc3eo#RoO8~FI3yE?)Kc%|a3p$+z8fHrVQ zZ2&kKg;hqOaS$Anze-sVr&m`JJ^B0O&R>@+qQCdWACoCdcL5`lp-U-$K$`m0WpdpF z`MO!a!Wik@MQ^b;f@QF9f`i4O52JuTZhr0&pjMrkubf9@#c~YZgquznFdDXO!81w~ z#H04IiY-AyyHLDHh75hH!eElZLJED$a_!j1X9Q^Kfo+6M-vU+8g)PY>iWBw-_Ng+N zQ}PV-Hjbf|Wa^AkVe5=GtW>5gC@szS@a>sQI)fxw%MLlEJVQ22hB*1{2E^doAap^~ zDh>zI)bOilc8!4k1}y>G4ycoVOgMiF){^)zXdZx6xftVj_$|e4?$;%1M=8fslpuc> zhd7MqXLg_mK}=AzMs#0D!Kd6gJ1qhv8y|=ga)eHym!O7R&5m?q8bihEYC~1k_0W%y zMWADwjZ=W^i;Ji&6}rl#$aGbtjxuC=Kl5^qpr7N!xu0`WHnBDm^>1y?>~;94T?JMGh_Y_tf) zr-<@yr97cG3(`eoK2;;bysLk0wW}UfICR{1+;E)&TC=b50tUYI^E3I+%0RGg>Cu_|}n?KUHIW z`0qaa(+~gShyVV=|M20T{ox;d_@DmppMCh}fB4V;@Q?rSU;W{~{P2H2fB0Yi@MnMc zZ$A8s5C7{Q{`3!j{x|>E-~Q!4|M0(k_}@SL#fSgn4}bCFfAY6~`S1VcuYUYbfBY{# z{L2sj>chYO@PB{!KY#qMKm6t2{?$ME@t^$oryu_O$3Oq^&wl);|KU%6{Ad5+&p!Os zhrj;tZ$JE-zxi)}{EL4d|K*SW;>Umew}1VQ{`Rl`@rQr^;otrE*FXNhKmObQ@Bi66 za=o4fGX6MF{|tx2(TItECX*@0f5KS=|HSmqJV{dgC(9Pwk z$O*xQPv{9dm*q$k-~|X5lv=s#P=2w3oD5D`f`W`*m;lNH#H>a&bY#4#l$*p2f##oN&c?;*wn{M-%hTvN3 zU8}z6@3Cm}*eSGa7NGofQD6z?`R!P(A~apM(A?2NtAd@7499ejWF1*Nj19?&}^)2?9lI6OyV zvh=)_fgX*xiwodi+&^fy+e%Of~nE}BpD(^_bBe9A%;Pmz6NDj~;&WxY2kMLDF}^!rHjo?zXoYB)ch)e4GT)g!PIs#|LpZ z>J?($%O_S2H4ZKHt4V)E3e{w>?9Wke^DHC4I!KWKpI!M< zBt4>}c>?Q>oubdnNSY|=J)DP)8J=LAu<)!Q+UDvt!!tURlD1G{p0z`SVd6jrk-`q$R+aVGG1Cv^)r54J_u5 z=rMoGjN!B1A{WL2DNjL)ggF05Y{Sg9ZD3ty0U!z3?KO@@@w2DF33~z>+8N}dXvL>fjX5 zb{|n_1>9#RkMNue=r~f3c$bE7#L&hBjP|=A;Yf$+{#!m5@AIga-}TG&RG5u)Q6wSd zgDzh-m9uC1oEukePgG6kyk^d*rcnm={RwcE;`4TBFslXTfE`K@gc0TmWWSa%9zcJz z*7t!oeWcax2!^`^Dp)RyC=#}vl^B@4fFd>a{IV>{KXd*}QG7*m@ zN+V@mx7*zEC7^O)Rejx7bK6@EaSy%t)r8%&Y;=>6@wL3#VByKN21o z-nsm%UcXu{3*9MtF0_8*wr6pI?=OFi*K?P^7qcEqEr;cBW z>#IlBY~%89ZV9<;h*vL(GSHW`*30N!$B^9W`gL$;CHgA0;Af<3swS=hIWvEEf}3K^ zy*a?gRc~Fqd1E=o8>>f$%{T4BPv=b+O1?SVgsm3ZE%|3^4BLwId#_B*bA)!KOP_}2 z^aSkMN@_UR!lRK|g1{`~v$ecqWs7yJq`rf?l1kHgHwUfdwV0rv<30g&+Fs54SZ@HE z^#AtlH*XHb|1H8-PjgO1fc|LOwFrTpQB{a`+)E_&rCL}A1XOLUT;3Eks4|A75efzK z3I<(TY6TflEq~ZEMxs@k4CSae(?@+6bqN6Pi9UmP!rOW76Y*F&?wmBCiFg%jUGpxM za+9^K>4LZDFi0xkQYoh-%cVb)k5u~s0+WkXCIJMqvQ-iTe>cH9GRq?s>6iGd+*NBY z?Eb4`{e<}5G-#>9Eo4u|6bdha0LACudY3*y~{&CR#^*Rk2Xx$-2nnMqZOQ`7V9 zM^oEp$Mmmnf@$hq2Cewyo`1M$&s%q=pWf^5Zc15lf4q-B$B>`jv~%q8`;R6TtYR#R z$Dh;?@t99X!Hb)s;5o)N_&hxI)kpRH>HWUHX}_OmxX(V4)IYuFuRpTq&qQNiU90=0 z@QyH?2=LBX@xGP1+$isdrW8*dO&;jwo079HnMlypSDN}TDVw3=^HgXimV0~)$~J`K z^{rk*GdgFAOHpJwDw}1BYAAMO{B~Gma1Z!)1+ii4rI&P!mSdR4YR+-(M9k;R7xex!@-p1@yXOpXTcDzYQUwu9Do$0?Or z+AHwku0V&o0vnF^4zCI*Ph*ZA9;{e+kRT~U4E^_DHm^V*7pqI&7UJo5cy4IKjG%E@ z(!&!F)8ghs1E#NUBg>6~GAOWXuYjz%b$8p@+;)JBBfn-u4zT(oIv#tJrbOZoRWrr~ zL03LY028WXnN$hiln{3<`l&BJlU-bQe_@70v_XiGzjt9FDb9HXdG#nG;!#ZsL<4!)S?UD8LN`G2hle;%tzkL9Fe%#@sMb^VfS8?i1_*Nd!3Jm0g5AyIi^ zLv&xF&>*IiS&k@m6{8s^oJFJXjKJxy&hkjx%%!LDf{F@{$~3#qbr}(wJcMeJi8*G) zO^1mpc_f@4xWK52$MgndeT$Dm^K|v%qN69EaBA3R{%1d?C^|tKe*HCPf3B`I4`A~- zDxQ0@rhnYP>w!NhXrTM!#^fhP0J=(v3I94svq$38x^N}BI@#s{H%z#B!gBc;i#TPW zmoKeC@+IdhSD&zy&sYiv@THQ(iv0ES2|b!-WLnJsYVjg6J=V@07*aEQRW7=M@pIz(H5-}2FpA@4D+kH- zAZZ6w5@@|tj4UmUjMKWES75wY+2rn^(WU2GHnba)l8;!Nrdbu9ekpu1Xly1GUl@6eZ*7>*rs` z$%{C%X&B4BO=!zlo69m95(5p9iH77L`kZKp%4mq>ea4`7n%R~6h|sx95cC7zys8%+ zdbUo<9m=VwTP)}Ye{Nl~NL^GMuWpyF{kd1qOPN9AgHnaGKM^;8d^InCjX4H|3nt{i zQz|?R`S9&E%VzOnI3@SAYgU-WD30UP=qBYC^P7P4|JQb9J#OPj_&vX(TgdiGyObxG zY=A(9XPCs#3L!st6}eRllxf3o*q)`8~HYT(c$NPgSmkzcGrSPcF1=moj!p?!%HBTOksd? z6wMp_TBtv_b<7iV#|{C}abh$6U!?63rz@|kGIML!XV=cEJq-KKGXi7(n+r6~#g0db zj^(T8as#b|f2Mf2>qUX^s{C`?|E!NkxL?*)Yx@CTheMcyU9m+bUZ&g6*duAQa`uZh zy!#viWki2-m#D>mjGJ`|rz0?))mdK0wDHu_PW0~dnl_-=hPy%$=d5UOS7d=BGWGiq zNyjT|Z;}Xwjqro}&T#N%KYR8@nk&Q={i(gqe|9LQf7E_hC@=~VLqovG)in}Q@td2Q zYg2((_j*kEGYK#9v-h^@(RnWINi3Vev`8NlUKC`^O~d|*5}%?~KO9r}+V1+bRoEdPaoEnT(pFX37CWf*ad9wl3Szu91_;`u zc5k8rf16D@=gz-VZkXXk%3(PS6{JV!=C){Bf*vylxu1P0vUaV!mN|^3A>cy7Q4NES zW&Q|f_1V?4E7V&DlI?p+Zqmn?T0`WgqK##i`XF*5l?`1pJCqW2;phk36VXd{_Rm+Jz)^gn0MUPM3eqhgDX=*cUyR5~n`(v#)ZF;z7K zvlQBCnrL3}`Y&2h>R;8npeNZ9;pIJ@xzj4JJx(+zwre;LZ7}};LgMF6If7P;y&Y+q ze>OX4;f|cEm*MJN5Xbx|rbog1#b|L+&308&kgyk|ADXJ%6Tb7R5Bn;%h%gw8?$9_k z4FQb$Z9jPDdv~4_zVe zn*zPfP9j@MbUL|D@apgKc}x!Y#J-aSf7bRe`Tfe`_ma6gKC?s;2ClMC4wgbJwJUYF|o6!>}z;o7ws<*P+&iNhbJITd8$(zXq^`rzXk#FFGdvT~g52HJeL^io>(@@B{5chYGcg>j zI?D-nIkT3=(U9PmL@Z8VhJl~BwPz5wzqZ)lpBRpP>GA7NTHqS3XbyX7x<7Y#9;Qlu z&$&RBfQ|#K)<@z03jbULo2*Fi@3`8xBrmXf9bcMT-q^*&tvdIF*ZAYX*n1MpY_o`%NE1z zT5>7OyZaMb>vv6X4xhWEhW_H?$Mpm>_sLXQ~M+B)d}cPql;~E z?J=8tX>Oq2hJ%pgV|P!ePKy>qQ}_VjqH z7#Ie4EFCd)n6e(qDKyqYHRAGk%&Zq`jJkd(7EA%!m0 zZC$Y_b-7PQH2}wBUs)>v5*-*BbO`poK6Oc6Md+?&k-}T34a_i4H*hvI`E%VI(a9Ew zKe@uf-l?S#d)~+MhQ+{3R5;QaZGTw#m{#7ociLk8HFk15f9{t-kPMCz%QsTf41*iI z262f4vynZGzD1aru>xx*qK0FGr_?e_+ceH9)NU>u`%|tZ&RL;h~W*@VutA$Ft#^2$@3=t3gd!+DCjtVTrL{eV0<*ch;BO+YE+S3{c4Z z()U?mbNHrSf3I*}wRc`NZU28x{D;9zEuv~m&0RM*UhS0U4ip0c5X+5WtH|U76g0N+}PwS<1V=Ulq;OrU0tG z{d9fbLyehVVz@rjBf~MwF`^_y$z5z0z@E3FQ3NUCa1(fm99>dZDx&fZi@NJEn-o6C zU{(%hf164HtgsFJIJe;>HuPD5(;AS(NJGWmu^O7{Kl{A?`bS>o1Z@r1^GzNj=fuP& zE#o$|3-+TVTkh{w1&hj0ChM~GD-!3{PItRFtJ5!e9rG3KYM0hH^O*9M#B~nr{~@o% z70_WWI8wsbDRA+zQKzzcSv};KDdB=K<9V&&e>GMyK%Hi)sUFyi^CY)-h*3@{r|#eh zk_VA@#)0cXI4kFWtd(5ki@wt8jG2bssp8-R)L-~s@*;AP|KW159s*s8Pz;+q?35N| z0!7%x6efT*iPUJp%Tq=J2^off@`euAg&!6JP4l1x@8%?co!J(vvWzluUhjkB&~mAM#keEtFLu~e1)Zo5_1NIK_>AZw4d{7?>xXC^pA%=P zq#}~Q^(FC2UIwZ^O)s8UP2xJTQqXhvdBZTJzw*&%1^gAVJ zjBWI27#PxR7;eLbeZ;nI_=+nG6FuVTe+G@J$tcwB2$XY6Ngg^scAW%@Gy(lD^BFNW z`2g8>fb{G8Agu428|wakoxkZ*`4`{+bqotazrU>{ygeX!u#hO70>p^#)^=Xp+HP%E2fcnv0uDum!acwe`m>X zgFtEY!dv1$i!#Lj!DgLyWOhs!Dx3vTyp=zijLWB;;n^V+0^|SUOlc1_ovy^Q+J)*(?Tc$VFoqA23Ssn{k zRuO|L&$7Hti*ke}OV?Fp*O7(QW47ra+h;ot+4T6QVGc}uXowbSgT_;Ee>%`UyC&hw z1))4jDGTm@oM_3+oc9$?bcFvAbE!ZaBqn(wq*S&=KxP-^14wCswjkFUYC61Hv!Fz^ zhSiedv8*|$55-NAl~{in{!8))tNmUMM?W$N82tL{+bopMjQ09D2=vlw{0PLF){L*C z1JBdt4Z9!*(8CV_qz3)1<}u)bPy6@{Fz^Sb_jd zEdDalguy*%h7oCR5ds*9sG%)!T_+2^yTfIP>i4j+HX=D~iM}ePt9;0f+8`J|&!1E3 zq28r^;(IHrK0_z_{LXe2Vco|0145h!f-fAAFp_sT2-LmTtuz?Sf2Cp5G?DM}t+ta3 zD~%uYj)v~+ZJVQBPYjl7U1V7f&30ppboNwu8omWpeaydSj^|9T>j)0`AHxl=T&%91TnfuYc>E?a2XriZ0(1nK`r;wx3xSjjNrhpbDf|3gu z3MDjLyz+@l%TT7taFZ)=wh1;B0;!@ONoeKNIDCdf28>N6C|GEKwJp@=8om>1<_NJq c-dWdm+*uS_DfejF(frAO0ZZfv-0XG%00eGL{r~^~ delta 24262 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 tOenI@z|po)pKJI|sF5Sg`gmhq*KuP}Xr