UNPKG

iobroker.lovelace

Version:

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

2 lines 5.2 kB
"use strict";(self.webpackChunkhome_assistant_frontend=self.webpackChunkhome_assistant_frontend||[]).push([["84184"],{98620:function(e,a,s){s.a(e,(async function(e,i){try{s.r(a),s.d(a,{HuiAreaCardEditor:()=>k});var t=s(61701),n=(s(19083),s(71695),s(61893),s(9359),s(56475),s(70104),s(19423),s(40251),s(92519),s(42179),s(89256),s(24931),s(88463),s(57449),s(19814),s(61006),s(47021),s(57243)),r=s(50778),o=s(27486),l=s(62900),c=s(36522),d=(s(29073),s(82820)),u=s(18200),h=s(73850),_=s(1416),v=s(96309),m=e([d]);d=(m.then?(await m)():m)[0];let f,p=e=>e;const y=(0,l.f0)(u.I,(0,l.Ry)({area:(0,l.jt)((0,l.Z_)()),navigation_path:(0,l.jt)((0,l.Z_)()),theme:(0,l.jt)((0,l.Z_)()),show_camera:(0,l.jt)((0,l.O7)()),camera_view:(0,l.jt)((0,l.Z_)()),aspect_ratio:(0,l.jt)((0,l.Z_)()),alert_classes:(0,l.jt)((0,l.IX)((0,l.Z_)())),sensor_classes:(0,l.jt)((0,l.IX)((0,l.Z_)()))}));let k=(0,t.Z)([(0,r.Mo)("hui-area-card-editor")],(function(e,a){return{F:class extends a{constructor(...a){super(...a),e(this)}},d:[{kind:"field",decorators:[(0,r.Cb)({attribute:!1})],key:"hass",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_config",value:void 0},{kind:"field",decorators:[(0,r.SB)()],key:"_numericDeviceClasses",value:void 0},{kind:"field",key:"_schema",value(){return(0,o.Z)(((e,a,s)=>[{name:"area",selector:{area:{}}},{name:"show_camera",required:!1,selector:{boolean:{}}},...e?[{name:"camera_view",selector:{select:{options:["auto","live"]}}}]:[],{name:"",type:"grid",schema:[{name:"navigation_path",required:!1,selector:{navigation:{}}},{name:"theme",required:!1,selector:{theme:{}}},{name:"aspect_ratio",default:d.DEFAULT_ASPECT_RATIO,selector:{text:{}}}]},{name:"alert_classes",selector:{select:{reorder:!0,multiple:!0,custom_value:!0,options:a}}},{name:"sensor_classes",selector:{select:{reorder:!0,multiple:!0,custom_value:!0,options:s}}}]))}},{kind:"field",key:"_binaryClassesForArea",value(){return(0,o.Z)((e=>this._classesForArea(e,"binary_sensor")))}},{kind:"field",key:"_sensorClassesForArea",value(){return(0,o.Z)(((e,a)=>this._classesForArea(e,"sensor",a)))}},{kind:"method",key:"_classesForArea",value:function(e,a,s){const i=Object.values(this.hass.entities).filter((s=>{var i;return(0,h.M)(s.entity_id)===a&&!s.entity_category&&!s.hidden&&(s.area_id===e||s.device_id&&(null===(i=this.hass.devices[s.device_id])||void 0===i?void 0:i.area_id)===e)})).map((e=>{var a;return(null===(a=this.hass.states[e.entity_id])||void 0===a?void 0:a.attributes.device_class)||""})).filter((e=>e&&("sensor"!==a||!s||s.includes(e))));return[...new Set(i)]}},{kind:"field",key:"_buildBinaryOptions",value(){return(0,o.Z)(((e,a)=>this._buildOptions("binary_sensor",e,a)))}},{kind:"field",key:"_buildSensorOptions",value(){return(0,o.Z)(((e,a)=>this._buildOptions("sensor",e,a)))}},{kind:"method",key:"_buildOptions",value:function(e,a,s){const i=[...new Set([...a,...s])].map((a=>({value:a,label:this.hass.localize(`component.${e}.entity_component.${a}.name`)||a})));return i.sort(((e,a)=>(0,_.fe)(e.label,a.label,this.hass.locale.language))),i}},{kind:"method",key:"setConfig",value:function(e){(0,l.hu)(e,y),this._config=e}},{kind:"method",key:"updated",value:async function(){if(this.hass&&!this._numericDeviceClasses){const{numeric_device_classes:e}=await(0,v.ib)(this.hass);this._numericDeviceClasses=e}}},{kind:"method",key:"render",value:function(){if(!this.hass||!this._config)return n.Ld;const e=this._binaryClassesForArea(this._config.area||""),a=this._sensorClassesForArea(this._config.area||"",this._numericDeviceClasses),s=this._buildBinaryOptions(e,this._config.alert_classes||d.DEVICE_CLASSES.binary_sensor),i=this._buildSensorOptions(a,this._config.sensor_classes||d.DEVICE_CLASSES.sensor),t=this._schema(this._config.show_camera||!1,s,i),r=Object.assign({camera_view:"auto",alert_classes:d.DEVICE_CLASSES.binary_sensor,sensor_classes:d.DEVICE_CLASSES.sensor},this._config);return(0,n.dy)(f||(f=p` <ha-form .hass="${0}" .data="${0}" .schema="${0}" .computeLabel="${0}" @value-changed="${0}"></ha-form> `),this.hass,r,t,this._computeLabelCallback,this._valueChanged)}},{kind:"method",key:"_valueChanged",value:function(e){const a=e.detail.value;a.show_camera||delete a.camera_view,(0,c.B)(this,"config-changed",{config:a})}},{kind:"field",key:"_computeLabelCallback",value(){return e=>{switch(e.name){case"theme":return`${this.hass.localize("ui.panel.lovelace.editor.card.generic.theme")} (${this.hass.localize("ui.panel.lovelace.editor.card.config.optional")})`;case"area":return this.hass.localize("ui.panel.lovelace.editor.card.area.name");case"navigation_path":return this.hass.localize("ui.panel.lovelace.editor.action-editor.navigation_path");case"aspect_ratio":return this.hass.localize("ui.panel.lovelace.editor.card.generic.aspect_ratio");case"camera_view":return this.hass.localize("ui.panel.lovelace.editor.card.generic.camera_view")}return this.hass.localize(`ui.panel.lovelace.editor.card.area.${e.name}`)}}}]}}),n.oi);i()}catch(f){i(f)}}))},18200:function(e,a,s){s.d(a,{I:()=>t});var i=s(62900);const t=(0,i.Ry)({type:(0,i.Z_)(),view_layout:(0,i.Yj)(),layout_options:(0,i.Yj)(),grid_options:(0,i.Yj)(),visibility:(0,i.Yj)()})}}]); //# sourceMappingURL=84184.2a0bab07961bb084.js.map