UNPKG

iobroker.lovelace

Version:

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

1 lines 11.8 kB
export const __rspack_esm_id=6839;export const __rspack_esm_ids=[6839];export const __webpack_modules__={45100(a,t,e){e.a(a,async function(a,s){try{e.r(t),e.d(t,{HaIconButtonPrev:()=>g});var i=e(62826),o=e(5124),n=e(22441),l=e(63091),d=e(26300),h=a([d]);d=(h.then?(await h)():h)[0];const c="M15.41,16.58L10.83,12L15.41,7.41L14,6L8,12L14,18L15.41,16.58Z",r="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z";class g extends o.WF{render(){return o.qy` <ha-icon-button .disabled="${this.disabled}" .label="${this.label||this.hass?.localize("ui.common.back")||"Back"}" .path="${this._icon}" .href="${this.href}" .target="${this.target}" .rel="${this.rel}" .download="${this.download}"></ha-icon-button> `}constructor(...a){super(...a),this.disabled=!1,this._icon="rtl"===l.G.document.dir?r:c}}(0,i.Cg)([(0,n.MZ)({attribute:!1})],g.prototype,"hass",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean})],g.prototype,"disabled",void 0),(0,i.Cg)([(0,n.MZ)()],g.prototype,"label",void 0),(0,i.Cg)([(0,n.MZ)()],g.prototype,"href",void 0),(0,i.Cg)([(0,n.MZ)()],g.prototype,"target",void 0),(0,i.Cg)([(0,n.MZ)()],g.prototype,"rel",void 0),(0,i.Cg)([(0,n.MZ)()],g.prototype,"download",void 0),(0,i.Cg)([(0,n.wk)()],g.prototype,"_icon",void 0),g=(0,i.Cg)([(0,n.EM)("ha-icon-button-prev")],g),s()}catch(a){s(a)}})},54164(a,t,e){e.a(a,async function(a,t){try{e(74423),e(18111),e(61701);var s=e(62826),i=e(5124),o=e(22441),n=e(6412),l=e(1087),d=e(71727),h=(e(9503),e(67094),e(31420)),c=e(44144),r=a([h]);h=(r.then?(await r)():r)[0];const g="M6,2H18A2,2 0 0,1 20,4V20A2,2 0 0,1 18,22H6A2,2 0 0,1 4,20V4A2,2 0 0,1 6,2M12,4A6,6 0 0,0 6,10C6,13.31 8.69,16 12.1,16L11.22,13.77C10.95,13.29 11.11,12.68 11.59,12.4L12.45,11.9C12.93,11.63 13.54,11.79 13.82,12.27L15.74,14.69C17.12,13.59 18,11.9 18,10A6,6 0 0,0 12,4M12,9A1,1 0 0,1 13,10A1,1 0 0,1 12,11A1,1 0 0,1 11,10A1,1 0 0,1 12,9M7,18A1,1 0 0,0 6,19A1,1 0 0,0 7,20A1,1 0 0,0 8,19A1,1 0 0,0 7,18M12.09,13.27L14.58,19.58L17.17,18.08L12.95,12.77L12.09,13.27Z",p="M4,5C2.89,5 2,5.89 2,7V17C2,18.11 2.89,19 4,19H20C21.11,19 22,18.11 22,17V7C22,5.89 21.11,5 20,5H4M4.5,7A1,1 0 0,1 5.5,8A1,1 0 0,1 4.5,9A1,1 0 0,1 3.5,8A1,1 0 0,1 4.5,7M7,7H20V17H7V7M8,8V16H11V8H8M12,8V16H15V8H12M16,8V16H19V8H16M9,9H10V10H9V9M13,9H14V10H13V9M17,9H18V10H17V9Z";class _ extends i.WF{render(){return i.qy` <div class="agents"> ${this.agents.map(a=>this._renderAgent(a))} </div> `}_renderAgent(a){const t=(0,d.m)(a.agent_id),e=(0,h.q7)(this.hass.localize,a.agent_id,this.agents),s=this.disabled||this.disabledAgentIds?.includes(a.agent_id)||!1;return i.qy` <ha-checkbox .checked="${this.value.includes(a.agent_id)}" .value="${a.agent_id}" .disabled="${s}" @change="${this._checkboxChanged}"> <span class="label ${(0,n.H)({disabled:s})}"> ${(0,h.Bi)(a.agent_id)?i.qy` <ha-svg-icon .path="${g}"> </ha-svg-icon> `:(0,h.jU)(a.agent_id)?i.qy` <ha-svg-icon .path="${p}"></ha-svg-icon> `:i.qy` <img .src="${(0,c.MR)({domain:t,type:"icon",darkOptimized:this.hass.themes?.darkMode},this.hass.auth.data.hassUrl)}" crossorigin="anonymous" referrerpolicy="no-referrer" alt=""> `} ${e} </span> </ha-checkbox> `}_checkboxChanged(a){const t=a.target,e=t.value,s=this.value.indexOf(e);t.checked&&-1===s?this.value=[...this.value,e]:t.checked||-1===s||(this.value=[...this.value.slice(0,s),...this.value.slice(s+1)]),(0,l.r)(this,"value-changed",{value:this.value})}constructor(...a){super(...a),this.disabled=!1}}_.styles=i.AH`img{height:24px;width:24px}ha-svg-icon{--mdc-icon-size:24px;color:var(--primary-text-color)}.agents{display:flex;flex-direction:column;gap:var(--ha-space-2);padding-inline-start:var(--ha-space-2);padding-bottom:var(--ha-space-3)}.label{display:flex;flex-direction:row;align-items:center;gap:var(--ha-space-4);font-size:var(--ha-font-size-l);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal);letter-spacing:.5px}span.disabled{color:var(--disabled-text-color)}span.disabled ha-svg-icon{color:var(--disabled-text-color)}`,(0,s.Cg)([(0,o.MZ)({attribute:!1})],_.prototype,"hass",void 0),(0,s.Cg)([(0,o.MZ)({type:Boolean})],_.prototype,"disabled",void 0),(0,s.Cg)([(0,o.MZ)({attribute:!1})],_.prototype,"agents",void 0),(0,s.Cg)([(0,o.MZ)({attribute:!1})],_.prototype,"disabledAgentIds",void 0),(0,s.Cg)([(0,o.MZ)({attribute:!1})],_.prototype,"value",void 0),_=(0,s.Cg)([(0,o.EM)("ha-backup-agents-picker")],_),t()}catch(a){t(a)}})},60490(a,t,e){e.a(a,async function(a,s){try{e.r(t);e(74423),e(18111),e(22489),e(61701);var i=e(62826),o=e(5124),n=e(22441),l=e(36312),d=e(1087),h=e(38962),c=e(18350),r=e(72554),g=(e(93444),e(76538),e(11382),e(26300)),p=e(45100),_=e(606),u=e(91485),m=(e(83892),e(31420)),f=e(14503),b=e(59717),v=e(54164),y=a([h,c,r,g,p,_,u,b,v,m]);[h,c,r,g,p,_,u,b,v,m]=y.then?(await y)():y;const $="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z",k={data:{include_homeassistant:!0,include_database:!0,include_folders:[],include_all_addons:!0},name:"",agents_mode:"all",agent_ids:[]},C=["data","sync"],D=[m.oJ];class w extends o.WF{showDialog(a){this._step=C[0],this._formData=k,this._params=a,this._open=!0,this._fetchAgents(),this._fetchBackupConfig()}_dialogClosed(){this._params.cancel&&this._params.cancel(),this._open=!1,this._step=void 0,this._formData=void 0,this._agents=[],this._backupConfig=void 0,this._params=void 0,(0,d.r)(this,"dialog-closed",{dialog:this.localName})}async _fetchAgents(){const{agents:a}=await(0,m.P_)(this.hass);this._agents=a.filter(a=>a.agent_id!==m.oJ||this._params?.cloudStatus?.logged_in&&this._params?.cloudStatus?.active_subscription).sort((a,t)=>(0,m.yj)(a.agent_id,t.agent_id))}async _fetchBackupConfig(){const{config:a}=await(0,m.Xm)(this.hass);this._backupConfig=a}closeDialog(){return this._open=!1,!0}_previousStep(){const a=C.indexOf(this._step);0!==a&&(this._step=C[a-1])}_nextStep(){const a=C.indexOf(this._step);a!==C.length-1&&(this._step=C[a+1])}get _allAgentIds(){return this._agents.map(a=>a.agent_id)}willUpdate(a){if(super.willUpdate(a),a.has("_step")&&"sync"===this._step&&this._formData){const a=this._disabledAgentIds();if(a.length){const t=("all"===this._formData.agents_mode?this._allAgentIds:this._formData.agent_ids).filter(t=>!a.includes(t));this._formData={...this._formData,agents_mode:"custom",agent_ids:t}}}}render(){if(!this._step||!this._formData)return o.s6;const a=this.hass.localize(`ui.panel.config.backup.dialogs.generate.${this._step}.title`),t=this._step===C[0],e=this._step===C[C.length-1],s=this._formData.agent_ids;return o.qy` <ha-dialog .open="${this._open}" @closed="${this._dialogClosed}"> <ha-dialog-header slot="header"> ${t?o.qy` <ha-icon-button slot="navigationIcon" data-dialog="close" .label="${this.hass.localize("ui.common.close")}" .path="${$}"></ha-icon-button> `:o.qy` <ha-icon-button-prev slot="navigationIcon" @click="${this._previousStep}"></ha-icon-button-prev> `} <span slot="title" .title="${a}"> ${a} </span> </ha-dialog-header> <div class="content"> ${"data"===this._step?this._renderData():this._renderSync()} </div> <ha-dialog-footer slot="footer"> ${t?o.qy` <ha-button slot="secondaryAction" @click="${this.closeDialog}" appearance="plain"> ${this.hass.localize("ui.common.cancel")} </ha-button> `:o.s6} ${e?o.qy` <ha-button slot="primaryAction" @click="${this._submit}" .disabled="${"custom"===this._formData.agents_mode&&!s.length}"> ${this.hass.localize("ui.panel.config.backup.dialogs.generate.actions.create")} </ha-button> `:o.qy` <ha-button slot="primaryAction" @click="${this._nextStep}" .disabled="${"data"===this._step&&this._noDataSelected}"> ${this.hass.localize("ui.common.next")} </ha-button> `} </ha-dialog-footer> </ha-dialog> `}get _noDataSelected(){const a=(0,l.x)(this.hass.config,"hassio");return!(this._formData?.data.include_homeassistant||this._formData?.data.include_database||a&&this._formData?.data.include_folders?.length||a&&this._formData?.data.include_all_addons||a&&this._formData?.data.include_addons?.length)}_renderData(){return this._formData?o.qy` <ha-backup-config-data .hass="${this.hass}" .value="${this._formData.data}" @value-changed="${this._dataConfigChanged}"></ha-backup-config-data> `:o.s6}_dataConfigChanged(a){a.stopPropagation();const t=a.detail.value;this._formData={...this._formData,data:t}}_renderSync(){if(!this._formData)return o.s6;const a=this._disabledAgentIds();return o.qy` <ha-input name="name" .label="${this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.name")}" .value="${this._formData.name}" @change="${this._nameChanged}"> </ha-input> <ha-row-item> <span slot="headline"> ${this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.locations")} </span> <span slot="supporting-text"> ${this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.locations_description")} </span> <ha-select slot="end" @selected="${this._selectChanged}" .value="${this._formData.agents_mode}" .options="${[{value:"all",label:this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.locations_options.all",{count:this._allAgentIds.length}),disabled:!!a.length},{value:"custom",label:this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.locations_options.custom")}]}"></ha-select> </ha-row-item> ${a.length?o.qy` <ha-alert alert-type="info" .title="${this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.ha_cloud_alert.title")}"> ${this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.ha_cloud_alert.description")} </ha-alert> `:o.s6} ${"custom"===this._formData.agents_mode?o.qy` <ha-expansion-panel .header="${this.hass.localize("ui.panel.config.backup.dialogs.generate.sync.locations")}" outlined expanded> <ha-backup-agents-picker .hass="${this.hass}" .value="${this._formData.agent_ids}" @value-changed="${this._agentsChanged}" .agents="${this._agents}" .disabledAgentIds="${a}"></ha-backup-agents-picker> </ha-expansion-panel> `:o.s6} `}_selectChanged(a){const t=a.detail.value;this._formData={...this._formData,agents_mode:t}}_agentsChanged(a){this._formData={...this._formData,agent_ids:a.detail.value}}_nameChanged(a){this._formData={...this._formData,name:a.target.value??""}}_disabledAgentIds(){if(!this._formData)return[];const a=this._allAgentIds;return this._formData.data.include_homeassistant?[]:D.filter(t=>a.includes(t))}async _submit(){if(!this._formData)return;const{agent_ids:a,agents_mode:t,name:e,data:s}=this._formData,i={name:e,password:this._backupConfig?.create_backup.password||void 0,agent_ids:"all"===t?this._allAgentIds:a,include_homeassistant:s.include_homeassistant||s.include_database,include_database:s.include_database};(0,l.x)(this.hass.config,"hassio")&&(i.include_folders=s.include_folders,i.include_all_addons=s.include_all_addons,i.include_addons=s.include_addons),i.include_homeassistant||(i.agent_ids=i.agent_ids.filter(a=>!D.includes(a))),this._params.submit?.(i),this.closeDialog()}static get styles(){return[f.RF,f.nA,o.AH`ha-dialog{--dialog-content-padding:24px}ha-row-item{--ha-row-item-padding-inline:0}ha-row-item ha-select{min-width:210px}@media all and (max-width:450px){ha-row-item ha-select{min-width:160px;width:160px}}ha-row-item ha-select>span{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}ha-input{width:100%}.content{padding-top:0}ha-alert{margin-bottom:16px;display:block}`]}constructor(...a){super(...a),this._agents=[],this._open=!1}}(0,i.Cg)([(0,n.MZ)({attribute:!1})],w.prototype,"hass",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_step",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_agents",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_backupConfig",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_params",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_formData",void 0),(0,i.Cg)([(0,n.wk)()],w.prototype,"_open",void 0),w=(0,i.Cg)([(0,n.EM)("ha-dialog-generate-backup")],w),s()}catch(a){s(a)}})}};