iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 3.39 kB
JavaScript
export const __rspack_esm_id=14558;export const __rspack_esm_ids=[14558];export const __webpack_modules__={34370(i,e,a){a(18111),a(7588),i.exports=function i(e){return Object.freeze(e),Object.getOwnPropertyNames(e).forEach(function(a){!e.hasOwnProperty(a)||null===e[a]||"object"!=typeof e[a]&&"function"!=typeof e[a]||Object.isFrozen(e[a])||i(e[a])}),e}},69293(i,e,a){a.a(i,async function(i,s){try{a.r(e),a.d(e,{HuiDialogSuggestBadge:()=>y});a(18111),a(61701);var t=a(62826),o=a(34370),n=a.n(o),r=a(5124),g=a(22441),l=a(1087),d=a(10763),h=a(18350),p=(a(93444),a(72554)),c=a(14503),_=a(92255),f=a(43908),m=a(82360),u=a(75196),v=i([d,h,p,f]);[d,h,p,f]=v.then?(await v)():v;class y extends r.WF{showDialog(i){this._params=i,this._badgeConfig=i.badgeConfig,this._open=!0,Object.isFrozen(this._badgeConfig)||(this._badgeConfig=n()(this._badgeConfig)),this._yamlEditor&&this._yamlEditor.setValue(this._badgeConfig)}closeDialog(){this._open=!1}_dialogClosed(){this._open=!1,this._params=void 0,this._badgeConfig=void 0,(0,l.r)(this,"dialog-closed",{dialog:this.localName})}_renderPreview(){return this._badgeConfig?r.qy` <div class="element-preview"> ${this._badgeConfig.map(i=>r.qy` <hui-badge .hass="${this.hass}" .config="${i}" preview></hui-badge> `)} </div> `:r.s6}render(){return this._params?r.qy` <ha-dialog .open="${this._open}" header-title="${this.hass.localize("ui.panel.lovelace.editor.suggest_badge.header")}" ="${this._dialogClosed}"> <div> ${this._renderPreview()} ${this._params.yaml&&this._badgeConfig?r.qy` <div class="editor"> <ha-yaml-editor .defaultValue="${this._badgeConfig}" in-dialog></ha-yaml-editor> </div> `:r.s6} </div> <ha-dialog-footer slot="footer"> <ha-button slot="secondaryAction" appearance="plain" ="${this.closeDialog}" autofocus> ${this._params.yaml?this.hass.localize("ui.common.close"):this.hass.localize("ui.common.cancel")} </ha-button> ${this._params.yaml?r.s6:r.qy` <ha-button slot="primaryAction" ="${this._save}" .loading="${this._saving}"> ${this.hass.localize("ui.panel.lovelace.editor.suggest_badge.add")} </ha-button> `} </ha-dialog-footer> </ha-dialog> `:r.s6}static get styles(){return[c.nA,r.AH`ha-dialog{--dialog-z-index:6}.hidden{display:none}.element-preview{position:relative;display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:center;gap:var(--ha-space-2);margin:0}.editor{padding-top:16px}`]}_computeNewConfig(i,e){const{viewIndex:a}=(0,u.$P)(e),s=this._badgeConfig;return(0,m.En)(i,[a],s)}async _save(){if(!(this._params?.lovelaceConfig&&this._params?.path&&this._params?.saveConfig&&this._badgeConfig))return;this._saving=!0;const i=this._computeNewConfig(this._params.lovelaceConfig,this._params.path);await this._params.saveConfig(i),this._saving=!1,(0,_.f)(this,this.hass),this.closeDialog()}constructor(...i){super(...i),this._open=!1,this._saving=!1}}(0,t.Cg)([(0,g.MZ)({attribute:!1})],y.prototype,"hass",void 0),(0,t.Cg)([(0,g.wk)()],y.prototype,"_params",void 0),(0,t.Cg)([(0,g.wk)()],y.prototype,"_open",void 0),(0,t.Cg)([(0,g.wk)()],y.prototype,"_badgeConfig",void 0),(0,t.Cg)([(0,g.wk)()],y.prototype,"_saving",void 0),(0,t.Cg)([(0,g.P)("ha-yaml-editor")],y.prototype,"_yamlEditor",void 0),y=(0,t.Cg)([(0,g.EM)("hui-dialog-suggest-badge")],y),s()}catch(i){s(i)}})},92255(i,e,a){a.d(e,{f:()=>t});var s=a(81619);const t=(i,e)=>(0,s.P)(i,{message:e.localize("ui.common.successfully_saved")})}};