iobroker.lovelace
Version:
With this adapter you can build visualization for ioBroker with Home Assistant Lovelace UI
1 lines • 34.4 kB
JavaScript
export const __rspack_esm_id=13148;export const __rspack_esm_ids=[13148];export const __webpack_modules__={80785(t,e,a){function i(t){return!!t&&(t instanceof Date&&!isNaN(t.valueOf()))}a.d(e,{A:()=>i})},380(t,e,a){a.d(e,{D:()=>r,P:()=>n});a(74423);var i=a(67932),o=a(46927),s=a(96029);const n=t=>t.first_weekday===o.zt.language?"weekInfo"in Intl.Locale.prototype?new Intl.Locale(t.language).weekInfo.firstDay%7:(0,i.S)(t.language)%7:s.Z.includes(t.first_weekday)?s.Z.indexOf(t.first_weekday):1,r=t=>{const e=n(t);return s.Z[e]}},95747(t,e,a){a.a(t,async function(t,i){try{a.d(e,{CL:()=>_,GH:()=>w,Rl:()=>u,ZS:()=>v,aQ:()=>m,r6:()=>d,yg:()=>y});var o=a(74487),s=a(22786),n=a(72487),r=a(30162),l=a(8480),c=a(69543),h=t([o,l,n,r]);[o,l,n,r]=h.then?(await h)():h;const d=(t,e,a)=>p(e,a.time_zone).format(t),p=(0,s.A)((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"long",day:"numeric",hour:(0,c.J)(t)?"numeric":"2-digit",minute:"2-digit",hourCycle:(0,c.J)(t)?"h12":"h23",timeZone:(0,l.wj)(t.time_zone,e)})),u=t=>g().format(t),g=(0,s.A)(()=>new Intl.DateTimeFormat(void 0,{year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit"})),m=(t,e,a)=>f(e,a.time_zone).format(t),f=(0,s.A)((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"short",day:"numeric",hour:(0,c.J)(t)?"numeric":"2-digit",minute:"2-digit",hourCycle:(0,c.J)(t)?"h12":"h23",timeZone:(0,l.wj)(t.time_zone,e)})),v=(t,e,a)=>b(e,a.time_zone).format(t),b=(0,s.A)((t,e)=>new Intl.DateTimeFormat(t.language,{month:"short",day:"numeric",hour:(0,c.J)(t)?"numeric":"2-digit",minute:"2-digit",hourCycle:(0,c.J)(t)?"h12":"h23",timeZone:(0,l.wj)(t.time_zone,e)})),_=(t,e,a)=>(new Date).getFullYear()===t.getFullYear()?v(t,e,a):m(t,e,a),y=(t,e,a)=>x(e,a.time_zone).format(t),x=(0,s.A)((t,e)=>new Intl.DateTimeFormat(t.language,{year:"numeric",month:"long",day:"numeric",hour:(0,c.J)(t)?"numeric":"2-digit",minute:"2-digit",second:"2-digit",hourCycle:(0,c.J)(t)?"h12":"h23",timeZone:(0,l.wj)(t.time_zone,e)})),w=(t,e,a)=>`${(0,n.zB)(t,e,a)}, ${(0,r.fU)(t,e,a)}`;i()}catch(t){i(t)}})},98975(t,e,a){a.a(t,async function(t,i){try{a.d(e,{K:()=>c});var o=a(74487),s=a(22786),n=a(63927),r=t([o,n]);[o,n]=r.then?(await r)():r;const l=(0,s.A)(t=>new Intl.RelativeTimeFormat(t.language,{numeric:"auto"})),c=(t,e,a,i=!0)=>{const o=(0,n.x)(t,a,e);return i?l(e).format(o.value,o.unit):Intl.NumberFormat(e.language,{style:"unit",unit:o.unit,unitDisplay:"long"}).format(Math.abs(o.value))};i()}catch(t){i(t)}})},96029(t,e,a){a.d(e,{Tq:()=>n,Z:()=>o,ZV:()=>i,sj:()=>s});const i=["sun","mon","tue","wed","thu","fri","sat"],o=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"],s={0:"sun",1:"mon",2:"tue",3:"wed",4:"thu",5:"fri",6:"sat"},n={sun:"sunday",mon:"monday",tue:"tuesday",wed:"wednesday",thu:"thursday",fri:"friday",sat:"saturday"}},63927(t,e,a){a.a(t,async function(t,i){try{a.d(e,{x:()=>d});var o=a(6946),s=a(52640),n=a(38684),r=a(380);const l=1e3,c=60,h=60*c;function d(t,e=Date.now(),a,i={}){const d={...p,...i||{}},u=(+t-+e)/l;if(Math.abs(u)<d.second)return{value:Math.round(u),unit:"second"};const g=u/c;if(Math.abs(g)<d.minute)return{value:Math.round(g),unit:"minute"};const m=u/h;if(Math.abs(m)<d.hour)return{value:Math.round(m),unit:"hour"};const f=new Date(t),v=new Date(e);f.setHours(0,0,0,0),v.setHours(0,0,0,0);const b=(0,o.c)(f,v);if(0===b)return{value:Math.round(m),unit:"hour"};if(Math.abs(b)<d.day)return{value:b,unit:"day"};const _=(0,r.P)(a),y=(0,s.k)(f,{weekStartsOn:_}),x=(0,s.k)(v,{weekStartsOn:_}),w=(0,n.I)(y,x);if(0===w)return{value:b,unit:"day"};if(Math.abs(w)<d.week)return{value:w,unit:"week"};const k=f.getFullYear()-v.getFullYear(),I=12*k+f.getMonth()-v.getMonth();return 0===I?{value:w,unit:"week"}:Math.abs(I)<d.month||0===k?{value:I,unit:"month"}:{value:Math.round(k),unit:"year"}}const p={second:59,minute:59,hour:22,day:5,week:4,month:11};i()}catch(u){i(u)}})},28170(t,e,a){a.d(e,{o:()=>l});var i=a(62826),o=a(5124),s=a(22441),n=a(1087),r=a(83892);class l extends r.x{connectedCallback(){super.connectedCallback(),this.hasAttribute("role")||this.setAttribute("role",this.defaultRole),(0,n.r)(this,"ha-list-item-register",{item:this})}disconnectedCallback(){super.disconnectedCallback(),(0,n.r)(this,"ha-list-item-unregister",{item:this})}activate(){this.click()}constructor(...t){super(...t),this.interactive=!1,this.defaultRole="listitem"}}l.styles=[r.x.styles,o.AH`:host{--ha-list-item-focus-radius:var(--ha-border-radius-sm);--ha-list-item-focus-width:2px;--ha-list-item-focus-width-start:var(--ha-space-2);--ha-list-item-focus-offset:-2px;--ha-list-item-focus-background:var(--ha-color-fill-neutral-quiet-hover)}:host(:focus){outline:0}.base{border-radius:var(--ha-list-item-focus-radius);outline:var(--ha-list-item-focus-width) solid transparent;outline-offset:var(--ha-list-item-focus-offset);transition:outline-color var(--ha-animation-duration-fast) ease-out,background-color var(--ha-animation-duration-fast) ease-out} ha-list-item-focus-in{from{outline-width:var(--ha-list-item-focus-width-start);outline-offset:calc(-1 * var(--ha-list-item-focus-width-start))}to{outline-width:var(--ha-list-item-focus-width);outline-offset:var(--ha-list-item-focus-offset)}}:host(:focus-visible) .base{outline-color:var(--ha-color-focus);background-color:var(--ha-list-item-focus-background);animation:ha-list-item-focus-in var(--ha-animation-duration-normal) ease-in}`],(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],l.prototype,"interactive",void 0),l=(0,i.Cg)([(0,s.EM)("ha-list-item-base")],l)},1671(t,e,a){var i=a(62826),o=a(5124),s=a(22441),n=a(63672),r=(a(54276),a(28170));class l extends r.o{activate(){this._item?.click()}_renderBase(t){return void 0!==this.href?o.qy`<a part="base" class="base interactive" id="item" href="${(0,n.J)(this.disabled?void 0:this.href)}" target="${(0,n.J)(this.target)}" rel="${(0,n.J)(this.rel)}" download="${(0,n.J)(this.download)}" tabindex="-1" aria-disabled="${this.disabled?"true":"false"}"> ${this._renderRipple()}${t} </a>`:o.qy`<button part="base" class="base interactive" id="item" type="button" ?disabled="${this.disabled}" tabindex="-1"> ${this._renderRipple()}${t} </button>`}_renderRipple(){return o.qy`<ha-ripple part="ripple" for="item" ?disabled="${this.disabled}"></ha-ripple>`}constructor(...t){super(...t),this.interactive=!0}}l.styles=[r.o.styles,o.AH`:host{cursor:pointer;--ha-ripple-color:var(--primary-text-color)}:host([disabled]){cursor:default}.base.interactive{width:100%;border:none;background:0 0;color:inherit;font:inherit;text-align:inherit;text-decoration:none;appearance:none;cursor:inherit}:host([disabled]) .base.interactive{color:var(--disabled-text-color)}`],(0,i.Cg)([(0,s.MZ)({type:String})],l.prototype,"href",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],l.prototype,"target",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],l.prototype,"rel",void 0),(0,i.Cg)([(0,s.MZ)({type:String})],l.prototype,"download",void 0),(0,i.Cg)([(0,s.P)("#item")],l.prototype,"_item",void 0),l=(0,i.Cg)([(0,s.EM)("ha-list-item-button")],l)},83892(t,e,a){a.d(e,{x:()=>r});a(18111),a(13579);var i=a(62826),o=a(92070),s=a(5124),n=a(22441);class r extends s.WF{_onSlotChange(t){return e=>{const a=e.target.assignedNodes({flatten:!0}).some(t=>t.nodeType===Node.ELEMENT_NODE||t.nodeType===Node.TEXT_NODE&&""!==t.textContent?.trim());"start"===t?this._hasStart=a:this._hasEnd=a}}render(){return this._renderBase(this._renderInner())}_renderBase(t){return s.qy`<div part="base" class="base" id="item">${t}</div>`}_renderInner(){const t=this._slotController.test("content");return s.qy` <div part="start" class="start" ?hidden="${!this._hasStart}"> <slot name="start" ="${this._onSlotChange("start")}"></slot> </div> <div part="content" class="content"> ${t?s.qy`<slot name="content"></slot>`:this._renderDefaultContent()} </div> <div part="end" class="end" ?hidden="${!this._hasEnd}"> <slot name="end" ="${this._onSlotChange("end")}"></slot> </div> `}_renderDefaultContent(){const t=this._slotController.test("headline"),e=this._slotController.test("supporting-text"),a=t||void 0!==this.headline,i=e||void 0!==this.supportingText;return s.qy` ${a?s.qy`<div part="headline" class="headline"> <slot name="headline">${this.headline??s.s6}</slot> </div>`:s.s6} ${i?s.qy`<div part="supporting-text" class="supporting"> <slot name="supporting-text">${this.supportingText??s.s6}</slot> </div>`:s.s6} `}constructor(...t){super(...t),this.disabled=!1,this._slotController=new o.X(this,"headline","supporting-text","content"),this._hasStart=!1,this._hasEnd=!1}}r.styles=s.AH`:host{display:block;color:var(--primary-text-color);font-size:var(--ha-font-size-m);line-height:var(--ha-line-height-normal)}:host([disabled]){color:var(--disabled-text-color);pointer-events:none}.base{position:relative;display:flex;flex-direction:row;align-items:center;gap:var(--ha-row-item-gap,var(--ha-space-4));padding-block:var(--ha-row-item-padding-block,var(--ha-space-3));padding-inline:var(--ha-row-item-padding-inline,var(--ha-space-4));min-height:var(--ha-row-item-min-height,48px);box-sizing:border-box}.content{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;justify-content:center}.end,.start{display:flex;align-items:center;flex:0 0 auto}.end[hidden],.start[hidden]{display:none}.headline{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.supporting{color:var(--secondary-text-color);font-size:var(--ha-font-size-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`,(0,i.Cg)([(0,n.MZ)({type:String})],r.prototype,"headline",void 0),(0,i.Cg)([(0,n.MZ)({type:String,attribute:"supporting-text"})],r.prototype,"supportingText",void 0),(0,i.Cg)([(0,n.MZ)({type:Boolean,reflect:!0})],r.prototype,"disabled",void 0),(0,i.Cg)([(0,n.wk)()],r.prototype,"_hasStart",void 0),(0,i.Cg)([(0,n.wk)()],r.prototype,"_hasEnd",void 0),r=(0,i.Cg)([(0,n.EM)("ha-row-item")],r)},50723(t,e,a){a.d(e,{N:()=>h});a(74423),a(18111),a(22489),a(7588);var i=a(62826),o=a(5124),s=a(22441),n=a(91335);a(44114);const r=t=>{const e=[];let a=t;for(;a;){e.push(a);const t=a.parentNode;if(t instanceof ShadowRoot)a=t.host;else if(t)a=t;else{const t=a.getRootNode();a=t instanceof ShadowRoot?t.host:null}}return e.reverse()},l=(t,e)=>{if(t===e)return 0;const a=r(t),i=r(e);let o=0;for(;o<a.length&&o<i.length&&a[o]===i[o];)o++;return 0===o?0:o===a.length?-1:o===i.length?1:a[o].compareDocumentPosition(i[o])&Node.DOCUMENT_POSITION_FOLLOWING?-1:1};var c=a(1087);class h extends o.WF{connectedCallback(){super.connectedCallback(),this.hasAttribute("ha-list")||this.setAttribute("ha-list",""),!this.hasAttribute("role")&&this.hostRole&&this.setAttribute("role",this.hostRole),this._unbindKeys=(0,n.Tc)(this,{ArrowDown:this._onForward,ArrowUp:this._onBack,Home:this._onHome,End:this._onEnd,Enter:this._onActivate,Space:this._onActivate}),this.addEventListener("focusin",this._onFocusIn),this.addEventListener("ha-list-item-register",this._onItemRegister),this.addEventListener("ha-list-item-unregister",this._onItemUnregister)}disconnectedCallback(){super.disconnectedCallback(),this._unbindKeys?.(),this._unbindKeys=void 0,this.removeEventListener("focusin",this._onFocusIn),this.removeEventListener("ha-list-item-register",this._onItemRegister),this.removeEventListener("ha-list-item-unregister",this._onItemUnregister)}focus(t){this.items.length?this.focusItemAtIndex(this._activeItemIndex>=0?this._activeItemIndex:0):super.focus(t)}focusItemAtIndex(t){t<0||this.setActiveItemIndex(t,!0)}getActiveItemIndex(){return this._activeItemIndex}setActiveItemIndex(t,e=!1){this._hasFocusableItem?(this._activeItemIndex=Math.max(0,Math.min(this.items.length-1,t)),this._isFocusable(this._activeItemIndex)||(this._activeItemIndex=this._firstFocusableIndex),this._applyActive(e)):this._activeItemIndex=-1}updateListItems(){this._recomputeFocusableIndexes(),(this._activeItemIndex>=this.items.length||!this._hasFocusableItem||this._activeItemIndex<0)&&(this._activeItemIndex=this._firstFocusableIndex),this._applyActive(!1)}_recomputeFocusableIndexes(){let t=-1,e=-1;for(let a=0;a<this.items.length;a++)this._isFocusable(a)&&(-1===t&&(t=a),e=a);this._firstFocusableIndex=t,this._lastFocusableIndex=e,this._hasFocusableItem=-1!==t}render(){return o.qy`<div part="base" class="base"> <slot></slot> </div>`}_isFocusable(t){const e=this.items[t];return!!e&&e.interactive&&!e.disabled}_applyActive(t){this.items.forEach((t,e)=>{t.interactive&&!t.disabled?t.tabIndex=e===this._activeItemIndex?0:-1:t.removeAttribute("tabindex")}),t&&this._activeItemIndex>=0&&this.items[this._activeItemIndex]?.focus()}_moveFocus(t,e){!this._hasFocusableItem||e<0||e===this._activeItemIndex||(t.preventDefault(),this._activeItemIndex=e,this._applyActive(!0))}_stepIndex(t,e){const a=this.items.length;if(!a||!this._hasFocusableItem)return t;let i=t;for(let o=0;o<a;o++){if(i+=e,i<0||i>=a){if(!this.wrapFocus)return t;i=(i+a)%a}if(this._isFocusable(i))return i}return t}constructor(...t){super(...t),this.wrapFocus=!1,this.ariaLabel=null,this.items=[],this.hostRole="list",this._activeItemIndex=-1,this._firstFocusableIndex=-1,this._lastFocusableIndex=-1,this._hasFocusableItem=!1,this._onItemRegister=t=>{t.stopPropagation();const e=t.detail.item;if(this.items.includes(e))return;const a=[...this.items,e];a.sort(l),this.items=a,this.updateListItems()},this._onItemUnregister=t=>{t.stopPropagation();const e=t.detail.item;this.items.includes(e)&&(this.items=this.items.filter(t=>t!==e),this.updateListItems())},this._onFocusIn=t=>{const e=t.composedPath();for(let t=0;t<this.items.length;t++)if(e.includes(this.items[t]))return void(t!==this._activeItemIndex&&(this._activeItemIndex=t,this._applyActive(!1)))},this._onForward=t=>{this._moveFocus(t,this._stepIndex(this._activeItemIndex,1))},this._onBack=t=>{this._moveFocus(t,this._stepIndex(this._activeItemIndex,-1))},this._onHome=t=>{this._moveFocus(t,this._firstFocusableIndex)},this._onEnd=t=>{this._moveFocus(t,this._lastFocusableIndex)},this._onActivate=t=>{if(!this._isFocusable(this._activeItemIndex))return;t.preventDefault();const e=this.items[this._activeItemIndex];e.activate(),(0,c.r)(this,"ha-list-activated",{index:this._activeItemIndex,item:e})}}}h.styles=o.AH`:host{display:block}.base{display:flex;flex-direction:column;gap:var(--ha-list-gap,0);padding:var(--ha-list-padding,0);margin:0;list-style:none}`,(0,i.Cg)([(0,s.MZ)({type:Boolean,attribute:"wrap-focus"})],h.prototype,"wrapFocus",void 0),(0,i.Cg)([(0,s.MZ)({type:String,attribute:"aria-label",reflect:!0})],h.prototype,"ariaLabel",void 0),h=(0,i.Cg)([(0,s.EM)("ha-list-base")],h)},47819(t,e,a){var i=a(62826),o=a(5124),s=a(22441),n=a(63672),r=a(50723);class l extends r.N{render(){return o.qy`<nav part="nav" aria-label="${(0,n.J)(this.ariaLabel??void 0)}"> <div part="base" class="base" role="list"> <slot></slot> </div> </nav>`}constructor(...t){super(...t),this.hostRole="",this.ariaLabel=null}}(0,i.Cg)([(0,s.MZ)({type:String,attribute:"aria-label",reflect:!1})],l.prototype,"ariaLabel",void 0),l=(0,i.Cg)([(0,s.EM)("ha-list-nav")],l)},31420(t,e,a){a.a(t,async function(t,i){try{a.d(e,{Bi:()=>L,Dt:()=>X,EB:()=>z,IW:()=>F,P_:()=>$,SG:()=>M,Sx:()=>j,T2:()=>v,Xm:()=>_,Ye:()=>b,Zm:()=>E,cq:()=>U,dH:()=>S,en:()=>Y,gF:()=>x,gb:()=>y,gv:()=>Z,jU:()=>B,kI:()=>A,mF:()=>D,mu:()=>C,oJ:()=>W,pI:()=>k,pL:()=>V,q5:()=>P,q7:()=>R,qk:()=>f,sp:()=>H,uM:()=>K,v3:()=>N,xN:()=>G,yL:()=>w,yj:()=>T,zZ:()=>I});a(74423),a(16573),a(78100),a(77936),a(18111),a(22489),a(20116),a(7588),a(61701),a(37467),a(44732),a(79577),a(16632),a(34226),a(9486),a(20456),a(14603),a(47566),a(98721);var o=a(22711),s=a(97732),n=a(6226),r=a(22786),l=a(80785),c=a(95747),h=a(30162),d=a(36918),p=a(30039),u=a(39889),g=a(95350),m=t([o,c,h]);[o,c,h]=m.then?(await m)():m;var f=function(t){return t.NEVER="never",t.DAILY="daily",t.CUSTOM_DAYS="custom_days",t}({});const v=["mon","tue","wed","thu","fri","sat","sun"],b=t=>t.sort((t,e)=>v.indexOf(t)-v.indexOf(e)),_=t=>t.callWS({type:"backup/config/info"}),y=(t,e)=>t.callWS({type:"backup/config/update",...e}),x=(t,e)=>y(t,{create_backup:{agent_ids:e.create_backup.agent_ids,include_folders:e.create_backup.include_folders??[],include_database:e.create_backup.include_database,include_addons:e.create_backup.include_addons??[],include_all_addons:e.create_backup.include_all_addons,password:e.create_backup.password},retention:e.retention,schedule:e.schedule}),w=(t,e,a)=>`/api/backup/download/${t}?agent_id=${e}${a?`&password=${a}`:""}`,k=t=>t.callWS({type:"backup/info"}),I=(t,e)=>t.callWS({type:"backup/details",backup_id:e}),$=t=>t.callWS({type:"backup/agents/info"}),C=(t,e)=>t.callWS({type:"backup/delete",backup_id:e}),M=(t,e)=>t.callWS({type:"backup/generate",...e}),F=t=>t.callWS({type:"backup/generate_with_automatic_settings"}),S=(t,e)=>t.callWS({type:"backup/restore",...e}),A=async(t,e,a)=>{const i=new FormData;i.append("file",e);const o=new URLSearchParams;return a.forEach(t=>{o.append("agent_id",t)}),(0,u.QE)(t.fetchWithAuth(`/api/backup/upload?${o.toString()}`,{method:"POST",body:i}))},z=t=>{const e=t.find(L);if(e)return e;const a=t.find(B);return a||t[0]},E=(t,e,a,i)=>t.callWS({type:"backup/can_decrypt_on_download",backup_id:e,agent_id:a,password:i}),Z="backup.local",D="hassio.local",W="cloud.cloud",L=t=>[Z,D].includes(t),B=t=>{const[e,a]=t.split(".");return"hassio"===e&&"local"!==a},R=(t,e,a)=>{if(L(e))return t("ui.panel.config.backup.agents.local_agent");const i=a.find(t=>t.agent_id===e),o=e.split(".")[0],s=i?i.name:e.split(".")[1];if(B(e))return s;const n=(0,g.p$)(t,o);return a.filter(t=>t.agent_id.split(".")[0]===o).length>1?`${n}: ${s}`:n},N=t=>Math.max(...Object.values(t.agents).map(t=>t.size)),q=["automatic","app_update","manual"],P=(0,o.z)(t=>t?q:q.filter(t=>"app_update"!==t)),H=(t,e)=>t.with_automatic_settings?"automatic":!e||null==t.extra_metadata?.["supervisor.addon_update"]&&null==t.extra_metadata?.["supervisor.app_update"]?"manual":"app_update",T=(t,e)=>{const a=L(t),i=L(e),o=B(t),s=B(e),n=(t,e)=>t?1:e?2:3,r=n(a,o),l=n(i,s);return r!==l?r-l:t.localeCompare(e)},U=()=>{const t="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",e="xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx";let a="";const i=new Uint8Array(34);return crypto.getRandomValues(i),i.forEach((i,o)=>{a+="-"===e[o]?"-":t[i%36]}),a},O=(t,e)=>"data:text/plain;charset=utf-8,"+encodeURIComponent(`${t.localize("ui.panel.config.backup.emergency_kit_file.title")}\n\n${t.localize("ui.panel.config.backup.emergency_kit_file.description")}\n\n${t.localize("ui.panel.config.backup.emergency_kit_file.date")} ${(0,c.r6)(new Date,t.locale,t.config)}\n\n${t.localize("ui.panel.config.backup.emergency_kit_file.instance")}\n${t.config.location_name}\n\n${t.localize("ui.panel.config.backup.emergency_kit_file.url")}\n${t.auth.data.hassUrl}\n\n${t.localize("ui.panel.config.backup.emergency_kit_file.encryption_key")}\n${e}\n\n${t.localize("ui.panel.config.backup.emergency_kit_file.more_info",{link:(0,d.o)(t,"/more-info/backup-emergency-kit")})}`),J=(t,e)=>`home_assistant_backup_emergency_kit_${e?`${e}_`:""}${(0,c.GH)(new Date,t.locale,t.config).replace(",","").replace(" ","_")}.txt`,j=(t,e,a)=>(0,p.R)(O(t,e),J(t,a)),K=(0,s.g)((0,n.a)(new Date,4),45),V=(0,s.g)((0,n.a)(new Date,5),45),Y=(0,r.A)((t,e,a)=>{if((0,l.A)(a))return(0,h.fU)(a,t,e);if("string"==typeof a&&a){const i=a.split(":"),o=(0,s.g)((0,n.a)(new Date,parseInt(i[0])),parseInt(i[1]));return(0,h.fU)(o,t,e)}return`${(0,h.fU)(K,t,e)} - ${(0,h.fU)(V,t,e)}`}),G="application/x-tar",X={file:void 0};i()}catch(t){i(t)}})},16869(t,e,a){a.d(e,{B:()=>o,g:()=>i});a(74423);const i=window.externalAppV2||window.externalApp||window.webkit?.messageHandlers?.getExternalAuth||location.search.includes("external_auth=1"),o=window.externalApp||window.externalAppV2},93758(t,e,a){a.d(e,{CO:()=>h,NS:()=>c,f$:()=>s,ok:()=>n});var i=a(35518),o=a(9899);const s=async t=>(await t.callWS({type:"labs/list"})).features,n=(t,e,a,i,o)=>t.callWS({type:"labs/update",domain:e,preview_feature:a,enabled:i,...void 0!==o&&{create_backup:o}}),r=t=>t.sendMessagePromise({type:"labs/list"}).then(t=>t.features),l=(t,e)=>t.subscribeEvents((0,o.s)(()=>r(t).then(t=>e.setState(t,!0)),500,!0),"labs_updated"),c=(t,e)=>(0,i.N)("_labFeatures",r,l,t,e),h=(t,e,a,i)=>t.subscribeMessage(i,{type:"labs/subscribe",domain:e,preview_feature:a})},81310(t,e,a){a.a(t,async function(t,e){try{var i=a(62826),o=a(5124),s=a(22441),n=a(6412),r=a(26218),l=a(91926),c=a(90248),h=a(2054),d=a(14503),p=t([c,h]);[c,h]=p.then?(await p)():p;class u extends o.WF{render(){return o.qy` <div class="toolbar ${(0,n.H)({narrow:this.narrow})}"> <div class="toolbar-content"> ${this.mainPage||history.state?.root?o.qy` <ha-menu-button .hass="${this.hass}" .narrow="${this.narrow}"></ha-menu-button> `:this.backPath?o.qy` <ha-icon-button-arrow-prev href="${this.backPath}" .hass="${this.hass}"></ha-icon-button-arrow-prev> `:o.qy` <ha-icon-button-arrow-prev .hass="${this.hass}" ="${this._backTapped}"></ha-icon-button-arrow-prev> `} <div class="main-title"> <slot name="header">${this.header}</slot> </div> <slot name="toolbar-icon"></slot> </div> </div> <div class="${(0,n.H)({content:!0,"ha-scrollbar":this.scrollable,"not-scrollable":!this.scrollable})}" ="${this._saveScrollPos}"> <slot></slot> </div> <div id="fab"> <slot name="fab"></slot> </div> `}_saveScrollPos(t){this._savedScrollPos=t.target.scrollTop}_backTapped(){this.backCallback?this.backCallback():(0,l.OE)()}static get styles(){return[d.dp,o.AH`:host{display:block;height:100%;background-color:var(--primary-background-color);overflow:hidden;position:relative}:host([narrow]){width:100%;position:fixed}.toolbar{background-color:var(--app-header-background-color);padding-top:var(--safe-area-inset-top);padding-right:var(--safe-area-inset-right)}:host([narrow]) .toolbar{padding-left:var(--safe-area-inset-left)}.toolbar-content{display:flex;align-items:center;font-size:var(--ha-font-size-xl);height:var(--header-height);font-weight:var(--ha-font-weight-normal);color:var(--app-header-text-color,#fff);border-bottom:var(--app-header-border-bottom,none);box-sizing:border-box;padding:8px 12px}.toolbar a{color:var(--sidebar-text-color);text-decoration:none}::slotted([slot=toolbar-icon]),ha-icon-button-arrow-prev,ha-menu-button{display:flex;align-items:center;pointer-events:auto;color:var(--sidebar-icon-color)}.main-title{margin-inline-start:var(--ha-space-6);line-height:var(--ha-line-height-normal);min-width:0;flex-grow:1;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.narrow .main-title{margin-inline-start:var(--ha-space-2)}.content{position:relative;width:calc(100% - var(--safe-area-inset-right,0px));height:calc(100% - 1px - var(--header-height,0px) - var(--safe-area-inset-top,0px) - var(--safe-area-inset-bottom,0px));padding-bottom:var(--safe-area-inset-bottom,0px);margin-right:var(--safe-area-inset-right);overflow-y:auto;overflow:auto;-webkit-overflow-scrolling:touch}.content.not-scrollable{overflow:hidden;display:flex;flex-direction:column}:host([narrow]) .content{width:calc(100% - var(--safe-area-inset-left,0px) - var(--safe-area-inset-right,0px));margin-left:var(--safe-area-inset-left)}#fab{position:absolute;right:calc(16px + var(--safe-area-inset-right,0px));inset-inline-end:calc(16px + var(--safe-area-inset-right,0px));inset-inline-start:initial;bottom:calc(16px + var(--safe-area-inset-bottom,0px));z-index:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--ha-space-2);--ha-button-box-shadow:var(--ha-box-shadow-l)}:host([narrow]) #fab.tabs{bottom:calc(84px + var(--safe-area-inset-bottom,0px))}#fab[is-wide]{bottom:calc(24px + var(--safe-area-inset-bottom,0px));right:calc(24px + var(--safe-area-inset-right,0px));inset-inline-end:calc(24px + var(--safe-area-inset-right,0px));inset-inline-start:initial}`]}constructor(...t){super(...t),this.mainPage=!1,this.narrow=!1,this.scrollable=!0}}(0,i.Cg)([(0,s.MZ)({attribute:!1})],u.prototype,"hass",void 0),(0,i.Cg)([(0,s.MZ)()],u.prototype,"header",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,attribute:"main-page"})],u.prototype,"mainPage",void 0),(0,i.Cg)([(0,s.MZ)({type:String,attribute:"back-path"})],u.prototype,"backPath",void 0),(0,i.Cg)([(0,s.MZ)({attribute:!1})],u.prototype,"backCallback",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,reflect:!0})],u.prototype,"narrow",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],u.prototype,"scrollable",void 0),(0,i.Cg)([(0,r.a)(".content")],u.prototype,"_savedScrollPos",void 0),(0,i.Cg)([(0,s.Ls)({passive:!0})],u.prototype,"_saveScrollPos",null),u=(0,i.Cg)([(0,s.EM)("hass-subpage")],u),e()}catch(t){e(t)}})},22823(t,e,a){a(18111),a(61701);var i=a(62826),o=a(5124),s=a(22441);a(43661),a(67094),a(1671),a(47819);class n extends o.WF{render(){return o.qy` <ha-list-nav .ariaLabel="${this.label}"> ${this.pages.map(t=>{const e=t.path.endsWith("#external-app-configuration");return o.qy` <ha-list-item-button .href="${e?void 0:t.path}" ="${e?this._handleExternalApp:void 0}"> <div slot="start" class="${t.iconColor?"icon-background":""}" .style="background-color: ${t.iconColor||"undefined"}"> <ha-svg-icon .path="${t.iconPath}" .secondaryPath="${t.iconSecondaryPath}" .viewBox="${t.iconViewBox}"></ha-svg-icon> </div> <span slot="headline">${t.name}</span> ${this.hasSecondary?o.qy`<span slot="supporting-text">${t.description}</span>`:""} ${this.narrow?"":o.qy`<ha-icon-next slot="end"></ha-icon-next>`} </ha-list-item-button> `})} </ha-list-nav> `}_handleExternalApp(){this.hass.auth.external.fireMessage({type:"config_screen/show"})}constructor(...t){super(...t),this.narrow=!1,this.hasSecondary=!1}}n.styles=o.AH`ha-icon-next,ha-svg-icon{color:var(--secondary-text-color);height:24px;width:24px;display:block}ha-svg-icon{padding:8px}.icon-background{border-radius:var(--ha-border-radius-circle)}.icon-background ha-svg-icon{color:#fff}`,(0,i.Cg)([(0,s.MZ)({attribute:!1})],n.prototype,"hass",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],n.prototype,"narrow",void 0),(0,i.Cg)([(0,s.MZ)({attribute:!1})],n.prototype,"pages",void 0),(0,i.Cg)([(0,s.MZ)({attribute:"has-secondary",type:Boolean})],n.prototype,"hasSecondary",void 0),(0,i.Cg)([(0,s.MZ)()],n.prototype,"label",void 0),n=(0,i.Cg)([(0,s.EM)("ha-config-navigation-list")],n)},22235(t,e,a){a.a(t,async function(t,i){try{a.r(e);a(18111),a(22489),a(20116),a(61701),a(18237),a(13579);var o=a(62826),s=a(5124),n=a(22441),r=a(63708),l=a(36312),c=a(98975),h=a(67258),d=(a(76776),a(26300)),p=a(31420),u=a(71117),g=a(31462),m=a(15336),f=a(93758),v=a(9835),b=a(81310),_=a(14503),y=(a(22823),a(20820),a(25635)),x=t([d,b,c,p]);[d,b,c,p]=x.then?(await x)():x;const w="M16.56,5.44L15.11,6.89C16.84,7.94 18,9.83 18,12A6,6 0 0,1 12,18A6,6 0 0,1 6,12C6,9.83 7.16,7.94 8.88,6.88L7.44,5.44C5.36,6.88 4,9.28 4,12A8,8 0 0,0 12,20A8,8 0 0,0 20,12C20,9.28 18.64,6.88 16.56,5.44M13,3H11V13H13";class k extends s.WF{render(){const t=y.configSections.general.filter(t=>(0,r.fW)(this.hass,t)).map(t=>{let e;switch(t.translationKey){case"backup":e=this._latestBackupDate?this.hass.localize("ui.panel.config.backup.description",{relative_time:(0,c.K)(this._latestBackupDate,this.hass.locale)}):this.hass.localize("ui.panel.config.backup.description_no_backup");break;case"network":e=this.hass.localize("ui.panel.config.network.description",{state:this._externalAccess?this.hass.localize("ui.panel.config.network.enabled"):this.hass.localize("ui.panel.config.network.disabled")});break;case"storage":e=this._storageInfo?this.hass.localize("ui.panel.config.storage.description",{percent_used:`${Math.round((this._storageInfo.total-this._storageInfo.free)/this._storageInfo.total*100)}${(0,h.d)(this.hass.locale)}%`,free_space:`${this._storageInfo.free} GB`}):"";break;case"hardware":e=this._boardName||this.hass.localize("ui.panel.config.hardware.description");break;case"labs":e=this._labFeatures&&this._labFeatures.some(t=>t.enabled)?this.hass.localize("ui.panel.config.labs.description_enabled"):this.hass.localize("ui.panel.config.labs.description");break;default:e=this.hass.localize(`ui.panel.config.${t.translationKey}.description`)}return{...t,name:t.translationKey?this.hass.localize(`ui.panel.config.${t.translationKey}.caption`):t.name,description:e}});return s.qy` <hass-subpage .hass="${this.hass}" back-path="/config" .header="${this.hass.localize("ui.panel.config.dashboard.system.main")}" .narrow="${this.narrow}"> <ha-icon-button slot="toolbar-icon" .path="${w}" .label="${this.hass.localize("ui.panel.config.system_dashboard.restart_homeassistant")}" ="${this._showRestartDialog}"></ha-icon-button> <ha-config-section .narrow="${this.narrow}" .isWide="${this.isWide}" full-width> <ha-card outlined> <ha-config-navigation-list .hass="${this.hass}" .narrow="${this.narrow}" .pages="${t}" has-secondary .label="${this.hass.localize("ui.panel.config.dashboard.system.main")}"></ha-config-navigation-list> </ha-card> </ha-config-section> </hass-subpage> `}firstUpdated(t){super.firstUpdated(t),this._fetchNetworkStatus();const e=(0,l.x)(this.hass.config,"hassio");this._fetchBackupInfo(),this._fetchHardwareInfo(e),this._fetchLabFeatures(),e&&this._fetchStorageInfo()}async _fetchBackupInfo(){const t=(0,l.x)(this.hass.config,"backup")?await(0,p.pI)(this.hass).then(t=>t.backups):[];t.length>0&&(this._latestBackupDate=t.map(t=>new Date(t.date)).reduce((t,e)=>t>e?t:e))}async _fetchHardwareInfo(t){if((0,l.x)(this.hass.config,"hardware")){const t=await this.hass.callWS({type:"hardware/info"});this._boardName=t?.hardware.find(t=>null!==t.board)?.name}else if(t){const t=await(0,m.PB)(this.hass);t.board&&(this._boardName=g.S[t.board])}}async _fetchStorageInfo(){const t=await(0,m.Ku)(this.hass);this._storageInfo={used:t.disk_used,free:t.disk_free,total:t.disk_total}}async _fetchNetworkStatus(){if((0,l.x)(this.hass.config,"cloud")){if((await(0,u.eN)(this.hass)).logged_in)return void(this._externalAccess=!0)}this._externalAccess=null!=this.hass.config.external_url}async _fetchLabFeatures(){(0,l.x)(this.hass.config,"labs")&&(this._labFeatures=await(0,f.f$)(this.hass))}async _showRestartDialog(){(0,v.lD)(this)}static get styles(){return[_.RF,s.AH`:host(:not([narrow])) ha-card{margin-bottom:max(24px,var(--safe-area-inset-bottom))}ha-config-section{margin:auto;margin-top:-32px;max-width:600px}ha-card{overflow:hidden;margin-bottom:24px;margin-bottom:max(24px,var(--safe-area-inset-bottom))}ha-card a{text-decoration:none;color:var(--primary-text-color)}.title{font-size:var(--ha-font-size-l);padding:16px;padding-bottom:0}.restart-section{display:flex;align-items:center;flex-direction:column;justify-content:center;margin-bottom:24px} all and (max-width:600px){ha-card{border-width:1px 0;border-radius:var(--ha-border-radius-square);box-shadow:unset}ha-config-section{margin-top:-42px}}`]}constructor(...t){super(...t),this.narrow=!1,this.isWide=!1,this._externalAccess=!1}}(0,o.Cg)([(0,n.MZ)({attribute:!1})],k.prototype,"hass",void 0),(0,o.Cg)([(0,n.MZ)({type:Boolean,reflect:!0})],k.prototype,"narrow",void 0),(0,o.Cg)([(0,n.MZ)({attribute:"is-wide",type:Boolean})],k.prototype,"isWide",void 0),(0,o.Cg)([(0,n.MZ)({attribute:!1})],k.prototype,"cloudStatus",void 0),(0,o.Cg)([(0,n.wk)()],k.prototype,"_latestBackupDate",void 0),(0,o.Cg)([(0,n.wk)()],k.prototype,"_boardName",void 0),(0,o.Cg)([(0,n.wk)()],k.prototype,"_storageInfo",void 0),(0,o.Cg)([(0,n.wk)()],k.prototype,"_externalAccess",void 0),(0,o.Cg)([(0,n.wk)()],k.prototype,"_labFeatures",void 0),k=(0,o.Cg)([(0,n.EM)("ha-config-system-navigation")],k),i()}catch(t){i(t)}})},20820(t,e,a){var i=a(62826),o=a(5124),s=a(22441),n=a(6412);class r extends o.WF{render(){return o.qy` <div class="content ${(0,n.H)({narrow:!this.isWide,"full-width":this.fullWidth})}"> <div class="header"><slot name="header"></slot></div> <div class="together layout ${(0,n.H)({narrow:!this.isWide,vertical:this.vertical||!this.isWide,horizontal:!this.vertical&&this.isWide})}"> <div class="intro"><slot name="introduction"></slot></div> <div class="panel flex-auto"><slot></slot></div> </div> </div> `}constructor(...t){super(...t),this.isWide=!1,this.vertical=!1,this.fullWidth=!1}}r.styles=o.AH`:host{display:block}.content{padding:28px 20px 0;max-width:1040px;margin:0 auto}.layout{display:flex}.horizontal{flex-direction:row}.vertical{flex-direction:column}.flex-auto{flex:1 1 auto}.header{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-size:var(--ha-font-size-2xl);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-condensed);opacity:var(--dark-primary-opacity)}.together{margin-top:var(--config-section-content-together-margin-top,32px)}.intro{font-family:var(--ha-font-family-body);-webkit-font-smoothing:var(--ha-font-smoothing);-moz-osx-font-smoothing:var(--ha-moz-osx-font-smoothing);font-weight:var(--ha-font-weight-normal);line-height:var(--ha-line-height-normal);width:100%;opacity:var(--dark-primary-opacity);font-size:var(--ha-font-size-m);padding-bottom:20px}.horizontal .intro{max-width:400px;margin-right:40px;margin-inline-end:40px;margin-inline-start:initial}.panel{margin-top:-24px}.panel ::slotted(*){margin-top:24px;display:block}.narrow.content{max-width:640px}.narrow .together{margin-top:var(--config-section-narrow-content-together-margin-top,var(--config-section-content-together-margin-top,20px))}.narrow .intro{padding-bottom:20px;margin-right:0;margin-inline-end:0;margin-inline-start:initial;max-width:500px}.full-width{padding:0}.full-width .layout{flex-direction:column}`,(0,i.Cg)([(0,s.MZ)({attribute:"is-wide",type:Boolean})],r.prototype,"isWide",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean})],r.prototype,"vertical",void 0),(0,i.Cg)([(0,s.MZ)({type:Boolean,attribute:"full-width"})],r.prototype,"fullWidth",void 0),r=(0,i.Cg)([(0,s.EM)("ha-config-section")],r)},36918(t,e,a){a.d(e,{o:()=>i});const i=(t,e)=>`https://www.iobroker.net/#${t.language&&t.language.split("-")[0]||"en"}/adapters/adapterref/iobroker.lovelace/README.md#`},30039(t,e,a){a.d(e,{R:()=>o});a(14603),a(47566),a(98721);var i=a(16869);const o=(t,e="")=>{const a=document.createElement("a");a.target="_blank",a.href=t,a.download=e,a.style.display="none",document.body.appendChild(a),a.dispatchEvent(new MouseEvent("click")),document.body.removeChild(a),t.startsWith("blob:")&&(i.B?setTimeout(()=>URL.revokeObjectURL(t),1e4):URL.revokeObjectURL(t))}},89429(t){t.exports=function(){}}};