iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
2 lines • 6.51 kB
JavaScript
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["79220"],{94264:function(e,t,i){i.d(t,{Ec:()=>d,Mo:()=>f,Oj:()=>v,UK:()=>c,av:()=>y,s_:()=>h});i(19083),i(71695),i(92745),i(52805),i(9359),i(68107),i(56475),i(70104),i(48136),i(52924),i(19423),i(92519),i(42179),i(89256),i(24931),i(88463),i(57449),i(19814),i(61006),i(47021);var n=i(95262),s=i(62201),o=i(31064),r=i(96194);function a(e,t){var i;if((0,o.T)(t)&&e.states[t])return null===(i=e.states[t])||void 0===i?void 0:i.state}function u(e,t){var i;const s=e.entity&&t.states[e.entity]?t.states[e.entity].state:r.lz;let o=null!==(i=e.state)&&void 0!==i?i:e.state_not;if(Array.isArray(o)){const e=o.map((e=>a(t,e))).filter((e=>void 0!==e));o=[...o,...e]}else if("string"==typeof o){const e=a(t,o);o=[o],e&&o.push(e)}return null!=e.state?(0,n.r)(o).includes(s):!(0,n.r)(o).includes(s)}function d(e,t){return e.every((e=>{if("condition"in e)switch(e.condition){case"screen":return!!(i=e).media_query&&matchMedia(i.media_query).matches;case"user":return function(e,t){var i;return!(!e.users||null===(i=t.user)||void 0===i||!i.id)&&e.users.includes(t.user.id)}(e,t);case"numeric_state":return function(e,t){var i;const n=null===(i=e.entity?t.states[e.entity]:void 0)||void 0===i?void 0:i.state;let s=e.above,o=e.below;var r,u;"string"==typeof s&&(s=null!==(r=a(t,s))&&void 0!==r?r:s),"string"==typeof o&&(o=null!==(u=a(t,o))&&void 0!==u?u:o);const d=Number(n),c=Number(s),l=Number(o);return!isNaN(d)&&(null==e.above||isNaN(c)||c<d)&&(null==e.below||isNaN(l)||l>d)}(e,t);case"and":return function(e,t){return!e.conditions||d(e.conditions,t)}(e,t);case"or":return function(e,t){return!e.conditions||e.conditions.some((e=>d([e],t)))}(e,t);default:return u(e,t)}var i;return u(e,t)}))}function c(e){const t=new Set;for(const r of e)if("numeric_state"===r.condition)r.entity&&t.add(r.entity),"string"==typeof r.above&&(0,o.T)(r.above)&&t.add(r.above),"string"==typeof r.below&&(0,o.T)(r.below)&&t.add(r.below);else if("state"===r.condition){var i,s;r.entity&&t.add(r.entity),[...null!==(i=(0,n.r)(r.state))&&void 0!==i?i:[],...null!==(s=(0,n.r)(r.state_not))&&void 0!==s?s:[]].forEach((e=>{e&&(0,o.T)(e)&&t.add(e)}))}else if("conditions"in r&&r.conditions)return new Set([...t,...c(r.conditions)]);return t}function l(e){return null!=e.entity&&(null!=e.state||null!=e.state_not)}function h(e){return e.every((e=>{if("condition"in e)switch(e.condition){case"screen":return null!=e.media_query;case"user":return function(e){return null!=e.users}(e);case"numeric_state":return function(e){return null!=e.entity&&(null!=e.above||null!=e.below)}(e);case"and":case"or":return function(e){return null!=e.conditions}(e);default:return l(e)}return l(e)}))}function f(e,t){return"conditions"in e&&e.conditions?Object.assign(Object.assign({},e),{},{conditions:e.conditions.map((e=>f(e,t)))}):"state"===e.condition||"numeric_state"===e.condition?Object.assign({entity:t},e):e}function v(e){return e.reduce(((e,t)=>("conditions"in t&&t.conditions&&e.push(...v(t.conditions)),"screen"===t.condition&&t.media_query&&e.push(t.media_query),e)),[])}function y(e,t){return v(e).map((e=>(0,s.K)(e,(e=>{t(e)}))))}},34939:function(e,t,i){i.d(t,{g:()=>d});var n=i(61701),s=i(72621),o=(i(22152),i(52247),i(71695),i(9359),i(56475),i(31526),i(47021),i(57243)),r=i(50778),a=i(48045),u=i(94264);let d=(0,n.Z)([(0,r.Mo)("hui-conditional-base")],(function(e,t){class i extends t{constructor(...t){super(...t),e(this)}}return{F:i,d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.Cb)({type:Boolean})],key:"preview",value(){return!1}},{kind:"field",decorators:[(0,r.SB)()],key:"_config",value:void 0},{kind:"field",key:"_element",value:void 0},{kind:"field",key:"_listeners",value(){return[]}},{kind:"field",key:"_mediaQueries",value(){return[]}},{kind:"method",key:"createRenderRoot",value:function(){return this}},{kind:"method",key:"validateConfig",value:function(e){if(!e.conditions)throw new Error("No conditions configured");if(!Array.isArray(e.conditions))throw new Error("Conditions need to be an array");if(!(0,u.s_)(e.conditions))throw new Error("Conditions are invalid");this.lastChild&&this.removeChild(this.lastChild),this._config=e}},{kind:"method",key:"disconnectedCallback",value:function(){(0,s.Z)(i,"disconnectedCallback",this,3)([]),this._clearMediaQueries()}},{kind:"method",key:"connectedCallback",value:function(){(0,s.Z)(i,"connectedCallback",this,3)([]),this._listenMediaQueries(),this._updateVisibility()}},{kind:"method",key:"_clearMediaQueries",value:function(){this._listeners.forEach((e=>e())),this._listeners=[]}},{kind:"method",key:"_listenMediaQueries",value:function(){if(!this._config||!this.hass)return;const e=this._config.conditions.filter((e=>"condition"in e)),t=(0,u.Oj)(e);if((0,a.v)(t,this._mediaQueries))return;this._clearMediaQueries();const i=this._config.conditions,n=1===i.length&&"condition"in i[0]&&"screen"===i[0].condition&&!!i[0].media_query;this._listeners=(0,u.av)(e,(e=>{n?this.setVisibility(e):this._updateVisibility()}))}},{kind:"method",key:"update",value:function(e){(0,s.Z)(i,"update",this,3)([e]),(e.has("_element")||e.has("_config")||e.has("hass")||e.has("preview"))&&(this._listenMediaQueries(),this._updateVisibility())}},{kind:"method",key:"_updateVisibility",value:function(){if(!this._element||!this.hass||!this._config)return;this._element.preview=this.preview;const e=(0,u.Ec)(this._config.conditions,this.hass);this.setVisibility(e)}},{kind:"method",key:"setVisibility",value:function(e){if(!this._element||!this.hass)return;const t=this.preview||e;this.hidden!==!t&&(this.toggleAttribute("hidden",!t),this.style.setProperty("display",t?"":"none")),t?(this._element.hass=this.hass,this._element.parentElement||this.appendChild(this._element)):this._element.parentElement&&this.removeChild(this._element)}}]}}),o.fl)},24272:function(e,t,i){i.a(e,(async function(e,n){try{i.r(t);var s=i(61701),o=(i(52247),i(71695),i(19423),i(47021),i(50778)),r=i(34939),a=i(46542),u=e([a]);a=(u.then?(await u)():u)[0];(0,s.Z)([(0,o.Mo)("hui-conditional-row")],(function(e,t){return{F:class extends t{constructor(...t){super(...t),e(this)}},d:[{kind:"method",key:"setConfig",value:function(e){if(this.validateConfig(e),!e.row)throw new Error("No row configured");this._element=(0,a.m)(e.state_color?Object.assign({state_color:!0},e.row):e.row)}}]}}),r.g);n()}catch(d){n(d)}}))}}]);
//# sourceMappingURL=79220.ed1c5642b3adce34.js.map