UNPKG

iobroker.lovelace

Version:

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

1 lines 10.6 kB
"use strict";(self.rspackChunkhome_assistant_frontend=self.rspackChunkhome_assistant_frontend||[]).push([[88661],{82262:function(a,s,i){i.d(s,{S:function(){return e}});i(3362),i(62953);var t=i(1087);const e=(a,s)=>{(0,t.r)(a,"show-dialog",{dialogTag:"dialog-local-backup-location",dialogImport:()=>i.e(39031).then(i.bind(i,74186)),dialogParams:s})}},12084:function(a,s,i){i.a(a,async function(a,t){try{i.r(s);i(3362),i(62953);var e=i(40445),o=i(5124),n=i(67576),c=i(36312),l=i(1087),d=i(9899),r=i(12587),h=i(38962),u=i(18350),g=(i(76776),i(29823)),p=(i(70947),i(26300)),_=(i(43661),i(67094),i(31420)),f=i(26581),v=i(81310),b=i(44144),C=i(36918),k=i(30619),m=i(59717),$=i(40840),y=i(82262),w=a([h,u,g,p,v,k,m,$,_]);[h,u,g,p,v,k,m,$,_]=w.then?(await w)():w;let A,x,z,U,S,M,H,L=a=>a;const j="M12,16A2,2 0 0,1 14,18A2,2 0 0,1 12,20A2,2 0 0,1 10,18A2,2 0 0,1 12,16M12,10A2,2 0 0,1 14,12A2,2 0 0,1 12,14A2,2 0 0,1 10,12A2,2 0 0,1 12,10M12,4A2,2 0 0,1 14,6A2,2 0 0,1 12,8A2,2 0 0,1 10,6A2,2 0 0,1 12,4Z",O="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",V="M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z";class E extends o.WF{willUpdate(a){super.willUpdate(a),a.has("config")&&!this._config&&(this._config=this.config),!this.hasUpdated&&(0,c.x)(this.hass.config,"hassio")&&this._getSupervisorUpdateConfig()}connectedCallback(){super.connectedCallback(),this._scrollToSection(),this._config=this.config}async _getSupervisorUpdateConfig(){try{this._supervisorUpdateConfig=await(0,f.y)(this.hass)}catch(a){console.error(a),this._supervisorUpdateConfigError=this.hass.localize("ui.panel.config.backup.settings.schedule.error_load",{error:(null==a?void 0:a.message)||a})}}async _scrollToSection(){var a,s;if("locations"===window.location.hash.substring(1)&&(0,c.x)(this.hass.config,"hassio")&&(null===(a=this._config)||void 0===a||!a.create_backup.include_all_addons)&&null!==(s=this._config)&&void 0!==s&&null!==(s=s.create_backup.include_addons)&&void 0!==s&&s.length)return this.addEventListener("backup-addons-fetched",async()=>{await(0,r.E)(),this._scrolltoHash()}),void setTimeout(()=>{this._clearHash()},500);await(0,r.E)(),this._scrolltoHash()}_scrolltoHash(){const a=window.location.hash.substring(1);if(a){const s=this.shadowRoot.getElementById(a);null==s||s.scrollIntoView(),this._clearHash()}}_clearHash(){history.replaceState(null,"",window.location.pathname)}render(){var a,s;if(!this._config)return o.s6;const i=(0,c.x)(this.hass.config,"hassio");return(0,o.qy)(A||(A=L` <hass-subpage back-path="/config/backup" .hass="${0}" .narrow="${0}" .header="${0}"> ${0} <div class="content"> <ha-card id="schedule"> <div class="card-header"> ${0} </div> <div class="card-content"> <p> ${0} </p> ${0} <ha-backup-config-schedule .hass="${0}" .value="${0}" .supervisor="${0}" .supervisorUpdateConfig="${0}" @update-config-changed="${0}" @value-changed="${0}"></ha-backup-config-schedule> </div> </ha-card> <ha-card id="data"> <div class="card-header"> ${0} </div> <div class="card-content"> <ha-backup-config-data .hass="${0}" .value="${0}" @value-changed="${0}" force-home-assistant hide-addon-version></ha-backup-config-data> </div> </ha-card> <ha-card class="agents" id="locations"> <div class="card-header"> ${0} </div> <div class="card-content"> <p> ${0} </p> <ha-backup-config-agents .hass="${0}" .value="${0}" .agentsConfig="${0}" .cloudStatus="${0}" .agents="${0}" @value-changed="${0}" show-settings></ha-backup-config-agents> ${0} </div> ${0} <div class="card-actions"> <ha-button size="small" href="${0}" target="_blank" rel="noreferrer" appearance="plain"> <ha-svg-icon slot="start" .path="${0}"></ha-svg-icon> ${0} </ha-button> ${0} </div> </ha-card> </div> </hass-subpage> `),this.hass,this.narrow,this.hass.localize("ui.panel.config.backup.settings.header"),i?(0,o.qy)(x||(x=L` <ha-dropdown slot="toolbar-icon" @wa-select="${0}"> <ha-icon-button slot="trigger" .label="${0}" .path="${0}"></ha-icon-button> <ha-dropdown-item value="change_local_location"> <ha-svg-icon slot="icon" .path="${0}"></ha-svg-icon> ${0} </ha-dropdown-item> </ha-dropdown> `),this._handleDropdownSelect,this.hass.localize("ui.common.menu"),j,O,this.hass.localize("ui.panel.config.backup.settings.menu.change_default_location")):o.s6,this.hass.localize("ui.panel.config.backup.settings.schedule.title"),this.hass.localize("ui.panel.config.backup.settings.schedule.description"),this._supervisorUpdateConfigError?(0,o.qy)(z||(z=L`<ha-alert alert-type="error"> ${0} </ha-alert>`),this._supervisorUpdateConfigError):o.s6,this.hass,this._config,i,this._supervisorUpdateConfig,this._supervisorUpdateConfigChanged,this._scheduleConfigChanged,this.hass.localize("ui.panel.config.backup.settings.data.title"),this.hass,this._dataConfig,this._dataConfigChanged,this.hass.localize("ui.panel.config.backup.settings.locations.title"),this.hass.localize("ui.panel.config.backup.settings.locations.description"),this.hass,this._config.create_backup.agent_ids,this._config.agents,this.cloudStatus,this.agents,this._agentsConfigChanged,this._config.create_backup.agent_ids.length?o.s6:(0,o.qy)(U||(U=L` <ha-alert alert-type="warning" .title="${0}"> ${0} </ha-alert> <br> `),this.hass.localize("ui.panel.config.backup.settings.locations.no_location"),this.hass.localize("ui.panel.config.backup.settings.locations.no_location_description")),null!==(a=this.cloudStatus)&&void 0!==a&&a.logged_in||!(0,c.x)(this.hass.config,"cloud")?o.s6:(0,o.qy)(S||(S=L`<ha-card class="cloud-info"> <div class="cloud-header"> <img .src="${0}" crossorigin="anonymous" referrerpolicy="no-referrer" alt="Nabu Casa logo" slot="start"> <span>${0}</span> </div> <div class="card-content"> ${0} </div> <div class="card-actions"> <ha-button appearance="plain" href="/config/cloud/login"> ${0} </ha-button> <ha-button href="/config/cloud/register" appearance="filled"> ${0} </ha-button> </div> </ha-card>`),(0,b.MR)({domain:"cloud",type:"icon",darkOptimized:null===(s=this.hass.themes)||void 0===s?void 0:s.darkMode},this.hass.auth.data.hassUrl),this.hass.localize("ui.panel.config.backup.settings.locations.ha_cloud_backup",{home_assistant_cloud:"ioBroker Cloud"}),this.hass.localize("ui.panel.config.backup.settings.locations.ha_cloud_description"),this.hass.localize("ui.panel.config.voice_assistants.assistants.cloud.sign_in"),this.hass.localize("ui.panel.config.voice_assistants.assistants.cloud.try_one_month")),(0,C.o)(this.hass,"/integrations/#backup"),V,this.hass.localize("ui.panel.config.backup.settings.locations.more_locations"),i?(0,o.qy)(M||(M=L`<ha-button size="small" appearance="plain" href="/config/storage"> ${0} </ha-button>`),this.hass.localize("ui.panel.config.backup.settings.locations.manage_network_storage")):o.s6)}async _supervisorUpdateConfigChanged(a){const s=a.detail.value;this._supervisorUpdateConfig=Object.assign(Object.assign({},this._supervisorUpdateConfig),s),this._debounceSaveSupervisorUpdateConfig()}_scheduleConfigChanged(a){const s=a.detail.value;this._config=Object.assign(Object.assign({},this._config),{},{schedule:s.schedule,retention:s.retention}),this._debounceSave()}get _dataConfig(){const{include_addons:a,include_all_addons:s,include_database:i,include_folders:t}=this._config.create_backup;return{include_homeassistant:!0,include_database:i,include_folders:t||void 0,include_all_addons:s,include_addons:a||void 0}}_dataConfigChanged(a){const s=a.detail.value;this._config=Object.assign(Object.assign({},this._config),{},{create_backup:Object.assign(Object.assign({},this.config.create_backup),{},{include_database:s.include_database,include_folders:s.include_folders||null,include_all_addons:s.include_all_addons,include_addons:s.include_addons||null})}),this._debounceSave()}_agentsConfigChanged(a){const s=a.detail.value;this._config=Object.assign(Object.assign({},this._config),{},{create_backup:Object.assign(Object.assign({},this._config.create_backup),{},{agent_ids:s})}),this._debounceSave()}async _saveSupervisorUpdateConfig(){if(this._supervisorUpdateConfig)try{await(0,f.r)(this.hass,this._supervisorUpdateConfig)}catch(a){console.error(a),this._supervisorUpdateConfigError=this.hass.localize("ui.panel.config.backup.settings.schedule.error_save",{error:(null==a?void 0:a.message)||(null==a?void 0:a.toString())})}}async _save(){await(0,_.gF)(this.hass,this._config),(0,l.r)(this,"ha-refresh-backup-config")}_handleDropdownSelect(a){var s;"change_local_location"===(null===(s=a.detail)||void 0===s||null===(s=s.item)||void 0===s?void 0:s.value)&&this._changeLocalLocation()}constructor(...a){super(...a),this.narrow=!1,this.agents=[],this._changeLocalLocation=()=>{(0,y.S)(this,{})},this._debounceSaveSupervisorUpdateConfig=(0,d.s)(()=>this._saveSupervisorUpdateConfig(),500),this._debounceSave=(0,d.s)(()=>this._save(),500)}}E.styles=(0,o.AH)(H||(H=L`ha-card{scroll-margin-top:16px}p{color:var(--secondary-text-color)}p.error{color:var(--error-color)}.content{padding:28px 20px 0;max-width:690px;margin:0 auto;gap:var(--ha-space-6);display:flex;flex-direction:column;margin-bottom:24px}.alert{--mdc-theme-primary:var(--error-color)}.card-header{padding-bottom:8px}.card-content{padding-bottom:0}a{text-decoration:none}.cloud-info{margin:0 16px 16px}.cloud-info .cloud-header{display:flex;gap:var(--ha-space-4);font-size:var(--ha-font-size-xl);align-items:center;padding:16px}.cloud-info .cloud-header img{width:48px}.cloud-info .card-content{padding-bottom:16px}.cloud-info .card-actions{display:flex;justify-content:space-between}ha-button[size=small] ha-svg-icon{--mdc-icon-size:16px}`)),(0,e.Cg)([(0,n.MZ)({attribute:!1})],E.prototype,"hass",void 0),(0,e.Cg)([(0,n.MZ)({attribute:!1})],E.prototype,"cloudStatus",void 0),(0,e.Cg)([(0,n.MZ)({type:Boolean})],E.prototype,"narrow",void 0),(0,e.Cg)([(0,n.MZ)({attribute:!1})],E.prototype,"config",void 0),(0,e.Cg)([(0,n.MZ)({attribute:!1})],E.prototype,"agents",void 0),(0,e.Cg)([(0,n.wk)()],E.prototype,"_config",void 0),(0,e.Cg)([(0,n.wk)()],E.prototype,"_supervisorUpdateConfig",void 0),(0,e.Cg)([(0,n.wk)()],E.prototype,"_supervisorUpdateConfigError",void 0),E=(0,e.Cg)([(0,n.EM)("ha-config-backup-settings")],E),t()}catch(A){t(A)}})}}]);