iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 4.1 kB
JavaScript
;(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[99117],{91484:function(e,t,n){n.a(e,async function(e,o){try{n.r(t),n.d(t,{HuiButtonCardEditor:function(){return q}});n(74423),n(62953);var a=n(40445),i=n(5124),c=n(67576),s=n(22786),l=n(63533),h=n(1087),r=n(52763),_=n(40205),u=n(999),d=n(91408),m=n(84698),p=n(44155),f=n(7382),g=e([r,_,u]);[r,_,u]=g.then?(await g)():g;let b,y=e=>e;const C="M10,9A1,1 0 0,1 11,8A1,1 0 0,1 12,9V13.47L13.21,13.6L18.15,15.79C18.68,16.03 19,16.56 19,17.14V21.5C18.97,22.32 18.32,22.97 17.5,23H11C10.62,23 10.26,22.85 10,22.57L5.1,18.37L5.84,17.6C6.03,17.39 6.3,17.28 6.58,17.28H6.8L10,19V9M11,5A4,4 0 0,1 15,9C15,10.5 14.2,11.77 13,12.46V11.24C13.61,10.69 14,9.89 14,9A3,3 0 0,0 11,6A3,3 0 0,0 8,9C8,9.89 8.39,10.69 9,11.24V12.46C7.8,11.77 7,10.5 7,9A4,4 0 0,1 11,5Z",v=(0,l.kp)(m.H,(0,l.Ik)({entity:(0,l.lq)((0,l.Yj)()),name:(0,l.lq)(p.q),show_name:(0,l.lq)((0,l.zM)()),icon:(0,l.lq)((0,l.Yj)()),show_icon:(0,l.lq)((0,l.zM)()),icon_height:(0,l.lq)((0,l.Yj)()),tap_action:(0,l.lq)(d.kn),hold_action:(0,l.lq)(d.kn),double_tap_action:(0,l.lq)(d.kn),theme:(0,l.lq)((0,l.Yj)()),show_state:(0,l.lq)((0,l.zM)()),state_color:(0,l.lq)((0,l.zM)()),color:(0,l.lq)((0,l.Yj)())}));class q extends i.WF{setConfig(e){if((0,l.vA)(e,v),void 0!==e.state_color)return delete(e=Object.assign(Object.assign({},e),{},{color:e.state_color?void 0:"none"})).state_color,void(0,h.r)(this,"config-changed",{config:e});this._config=e}render(){var e;if(!this.hass||!this._config)return i.s6;const t=Object.assign({show_name:!0,show_icon:!0},this._config);null!==(e=t.icon_height)&&void 0!==e&&e.includes("px")&&(t.icon_height=String(parseFloat(t.icon_height)));const n=this._schema(this._config.entity);return(0,i.qy)(b||(b=y` <ha-form .hass="${0}" .data="${0}" .schema="${0}" .computeLabel="${0}" .computeHelper="${0}" @value-changed="${0}"></ha-form> `),this.hass,t,n,this._computeLabelCallback,this._computeHelperCallback,this._valueChanged)}_valueChanged(e){const t=e.detail.value;t.icon_height&&!t.icon_height.endsWith("px")&&(t.icon_height+="px"),(0,h.r)(this,"config-changed",{config:t})}constructor(...e){super(...e),this._schema=(0,s.A)(e=>[{name:"entity",selector:{entity:{}}},{name:"name",selector:{entity_name:{}},context:{entity:"entity"}},{name:"",type:"grid",schema:[{name:"icon",selector:{icon:{}},context:{icon_entity:"entity"}},{name:"icon_height",selector:{text:{suffix:"px"}}},{name:"color",selector:{ui_color:{default_color:"state",include_state:!0,include_none:!0}}},{name:"theme",selector:{theme:{}}}]},{name:"",type:"grid",column_min_width:"100px",schema:[{name:"show_name",selector:{boolean:{}}},{name:"show_state",selector:{boolean:{}}},{name:"show_icon",selector:{boolean:{}}}]},{name:"interactions",type:"expandable",flatten:!0,iconPath:C,schema:[{name:"tap_action",selector:{ui_action:{default_action:(0,_.N)(e)}},context:u.Tq},{name:"hold_action",selector:{ui_action:{default_action:"more-info"}},context:u.Tq},{name:"",type:"optional_actions",flatten:!0,schema:[{name:"double_tap_action",selector:{ui_action:{default_action:"none"}},context:u.Tq}]}]}]),this._computeHelperCallback=e=>{switch(e.name){case"tap_action":case"hold_action":return this.hass.localize("ui.panel.lovelace.editor.card.button.default_action_help");default:return}},this._computeLabelCallback=e=>{switch(e.name){case"theme":case"tap_action":case"hold_action":return`${this.hass.localize(`ui.panel.lovelace.editor.card.generic.${e.name}`)} (${this.hass.localize("ui.panel.lovelace.editor.card.config.optional")})`;default:return this.hass.localize(`ui.panel.lovelace.editor.card.generic.${e.name}`)}}}}q.styles=f.U,(0,a.Cg)([(0,c.MZ)({attribute:!1})],q.prototype,"hass",void 0),(0,a.Cg)([(0,c.wk)()],q.prototype,"_config",void 0),q=(0,a.Cg)([(0,c.EM)("hui-button-card-editor")],q),o()}catch(b){o(b)}})},84698:function(e,t,n){n.d(t,{H:function(){return a}});var o=n(63533);const a=(0,o.Ik)({type:(0,o.Yj)(),view_layout:(0,o.bz)(),layout_options:(0,o.bz)(),grid_options:(0,o.bz)(),visibility:(0,o.bz)(),disabled:(0,o.lq)((0,o.zM)())})}}]);