UNPKG

homebridge-config-ui-x

Version:

A web based management, configuration and control platform for Homebridge.

1 lines 220 kB
import{a as E,i as D,o as w,s as x}from"./chunk-D39XL-zh.js";import{$ as Le,Ar as rn$1,Cr as pm,Ct as Qo,E as Dy,Fr as se,Gr as uy,I as Ga$1,It as TT,Jr as ve,K as J,Kr as v3,Kt as Uy,Ln as db,M as Fe,Pr as sc,Q as Ko,Rt as Te,Sn as a$,Tn as ac,U as I_,Un as g,Ut as US,Vt as U3,W as Io,X as Jt$1,Y as Je,Yn as hc,Yr as vy,Yt as Va$1,Zr as w_,ai as xi$1,b as Co,br as pb,cn as Xt$1,d as Ay,dn as Yr,dr as m_,dt as Nf,fn as Z,gt as Pe,hn as _T,hr as nc,i as $y,it as Mi$1,jt as S_,kn as br,kt as ST,n as $T,nn as WS,pt as Ot$1,ri as x_,rn as Wf,rr as jd,sn as Xg,sr as kt$1,st as My,u as An$1,ui as z0,ut as N_,vt as Py,wr as q,x as Cr,y as C_}from"./chunk-D96TCRAL.js";import{l as le,t as Dt$1}from"./chunk-DZYp0NQB.js";import{n as zt$1}from"./chunk-CdJ3i4Aq.js";import{$ as dn$1,B as Hn$1,G as Mt$1,H as Jn$1,J as Xn$1,K as Se,L as $n$1,U as Kn$1,V as Ht,W as Ln$1,X as Yn$1,Y as Ye,at as sn$1,ct as zt$2,et as fn$1,it as qt$1,lt as fe,n as X,nt as mn$1,pt as j,q as Vt$1,r as Y,st as zn$1,t as m,tt as ln$1,ut as si$1,z as Gt$1}from"./main-E3N63CH7.js";import{t as ds$1}from"./chunk-CiY-LsUw.js";import{n as bn$1,r as kn$1,t as Mn$1}from"./chunk-CLsCjV2Q.js";import{t as L}from"./chunk-CyE5Vxdx.js";import{C as p,b as i,f as S,i as E$1,t as A}from"./chunk-nWnpef0a.js";import{t as O}from"./chunk-C-2fYS21.js";import{S as d,p as O$1,v as U}from"./chunk-BuXBmaui.js";import{t as p$1}from"./chunk-BinBJ-zk2.js";import{t as L$1}from"./chunk-tTuB-TjV2.js";import{n as P,t as I}from"./chunk-DOaV0Kb62.js";import{t as Y$1}from"./chunk-DJ26AmHP2.js";import{t as E$2}from"./chunk-C4DEjFyc2.js";import{t as Fe$1}from"./chunk-EvMH-qNV.js";import{t as n}from"./chunk-D3aLTjX52.js";function Lt(n,p){if(n&1&&Dy(0,`i`,26)(1,`i`,27),n&2){let e=ve();Ay(`opacity-muted`,e._matterOnly),se(),Ay(`opacity-muted`,!e._matter)}}function Ot(n,p){n&1&&Dy(0,`i`,19)}function zt(n,p){if(n&1){let e=sc();Va$1(0,`li`,9)(1,`div`,17)(2,`span`,18),Fe(3,Lt,2,4)(4,Ot,1,0,`i`,19),jd(),Va$1(5,`div`),Ot$1(6),Dy(7,`br`),Va$1(8,`small`,20),Dy(9,`i`,21),S_(10,`translate`),Ot$1(11,` · `),Va$1(12,`span`,22),Ot$1(13),jd(),Ot$1(14,` · Homebridge `),jd()()(),Va$1(15,`div`,23)(16,`input`,24),S_(17,`translate`),ac(`click`,function(){let a=Ko(e);return Qo(ve().toggleList(a._username))}),jd(),Dy(18,`label`,25),jd()()}if(n&2){let e=p,i=ve();se(3),Le(i.isMatterSupported?3:4),se(3),kt$1(` `,e.name),se(3),Ay(`green-text`,e._isPaired)(`grey-text`,!e._isPaired),vy(`ngbTooltip`,N_(10,12,e._isPaired?`status.widget.qr_paired`:`status.widget.qr_unpaired`))(`openDelay`,150),se(4),Py(e._username),se(3),vy(`checked`,!i.isInList(e._username))(`disabled`,i.clicked()),Cr(`aria-label`,N_(17,14,`plugins.manage.hide_updates`))}}function Ut(n,p){if(n&1&&Dy(0,`i`,26)(1,`i`,27),n&2){let e=ve().$implicit;Ay(`opacity-muted`,e._matterOnly),se(),Ay(`opacity-muted`,!e._matter)}}function Wt(n,p){n&1&&Dy(0,`i`,19)}function jt(n,p){if(n&1){let e=sc();Va$1(0,`li`,9)(1,`div`,17)(2,`span`,18),Fe(3,Ut,2,4)(4,Wt,1,0,`i`,19),jd(),Va$1(5,`div`),Ot$1(6),Dy(7,`br`),Va$1(8,`small`,20),Dy(9,`i`,21),S_(10,`translate`),Ot$1(11,` · `),Va$1(12,`span`,22),Ot$1(13),jd(),Ot$1(14),S_(15,`titlecase`),jd()()(),Va$1(16,`div`,23)(17,`input`,28),S_(18,`translate`),ac(`click`,function(){let a=Ko(e).$implicit;return Qo(ve().toggleList(a._username))}),jd(),Dy(19,`label`,29),jd()()}if(n&2){let e=p.$implicit,i=ve();se(3),Le(i.isMatterSupported?3:4),se(3),kt$1(` `,e.name,` `),se(3),Ay(`green-text`,e._isPaired)(`grey-text`,!e._isPaired),vy(`ngbTooltip`,N_(10,15,e._isPaired?`status.widget.qr_paired`:`status.widget.qr_unpaired`))(`openDelay`,150),se(4),Py(e._username),se(),kt$1(` · `,N_(15,17,e._category),` `),se(3),vy(`id`,`hidePluginUpdates_${e._username}`)(`checked`,!i.isInList(e._username))(`disabled`,i.clicked()),Cr(`aria-label`,`${N_(18,19,`form.button_allow`)} ${e.name}`),se(2),vy(`for`,`hidePluginUpdates_${e._username}`)}}function Kt(n,p){n&1&&(Ot$1(0),S_(1,`translate`)),n&2&&kt$1(` `,N_(1,1,`form.button_save`),` `)}function Gt(n,p){n&1&&Dy(0,`i`,16)}var wt=(()=>{class n{$activeModal=g(fe);$accessoryOverview=g(Y$1);$api=g(U3);$errors=g(m);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);modalData=g(E$1);clicked=q(!1);mainPairing=q(void 0);pairings=q([]);isMatterSupported=this.$settings.isFeatureEnabled(`matterSupport`);originalBlacklist=[];updatedBlacklist=[];get blacklistHasUpdated(){return this.updatedBlacklist.join(`,`)!==this.originalBlacklist.join(`,`)}ngOnInit(){this.initialize()}initialize(){return E(this,null,function*(){this.updatedBlacklist=this.modalData.existingBlacklist.map(e=>e.trim().toUpperCase()).sort((e,i)=>e.localeCompare(i)),this.originalBlacklist=[...this.updatedBlacklist];try{let{pairings:e}=yield this.$accessoryOverview.get();this.mainPairing.set(e.find(i=>i._main)),this.pairings.set(e.filter(i=>!i._main).sort((i,a)=>i.name.localeCompare(a.name)))}catch(e){console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`)),this.$activeModal.close()}})}toggleList(e){this.updatedBlacklist.includes(e)?this.updatedBlacklist=this.updatedBlacklist.filter(i=>i!==e):(this.updatedBlacklist.push(e),this.updatedBlacklist.sort((i,a)=>i.localeCompare(a)))}isInList(e){return this.updatedBlacklist.includes(e)}updateBlacklist(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$api.put(`/config-editor/ui/accessory-control/instance-blacklist`,{body:this.updatedBlacklist}),this.$settings.setEnvItem(`accessoryControl.instanceBlacklist`,this.updatedBlacklist),this.$activeModal.close()}catch(e){this.clicked.set(!1),console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`))}})}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-accessory-control-lists`]],decls:31,vars:20,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-list-check`,`primary-text`,`icon-xl`],[1,`mb-3`],[1,`list-group`,`list-group-box`,`mt-3`,`mb-0`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`,`flex-row`,`pb-2`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[1,`text-center`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-primary`,3,`click`,`disabled`],[1,`fas`,`fa-circle-notch`,`fa-spin`],[1,`d-flex`,`align-items-center`,`text-start`,`flex-grow-1`,`me-3`],[1,`me-3`,`flex-shrink-0`],[1,`fas`,`fa-lg`,`fa-hap`],[1,`grey-text`],[`container`,`body`,`triggers`,`hover`,`placement`,`left`,1,`fas`,`fa-link`,3,`ngbTooltip`,`openDelay`],[1,`font-monospace`],[1,`text-end`,`grey-text`,`d-flex`,`align-items-center`],[`type`,`checkbox`,`id`,`controlMainBridge`,1,`rendux-input`,3,`click`,`checked`,`disabled`],[`for`,`controlMainBridge`,1,`rendux-label`,`ms-3`],[1,`fas`,`fa-lg`,`fa-hap`,`me-2`],[1,`fas`,`fa-lg`,`fa-matter`],[`type`,`checkbox`,1,`rendux-input`,3,`click`,`id`,`checked`,`disabled`],[1,`rendux-label`,`ms-3`,3,`for`]],template:function(i,a){if(i&1&&(Va$1(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),jd(),Va$1(5,`button`,3),S_(6,`translate`),ac(`click`,function(){return a.dismissModal()}),jd()(),Va$1(7,`div`,4)(8,`div`,5),Dy(9,`i`,6),jd(),Va$1(10,`ul`,7)(11,`li`),Ot$1(12),S_(13,`translate`),jd(),Va$1(14,`li`),Ot$1(15),S_(16,`translate`),jd()(),Va$1(17,`ul`,8),Fe(18,zt,19,16,`li`,9),_T(19,jt,20,21,`li`,9,TT),jd()(),Va$1(21,`div`,10)(22,`div`,11)(23,`button`,12),ac(`click`,function(){return a.dismissModal()}),Ot$1(24),S_(25,`translate`),jd()(),Dy(26,`div`,13),Va$1(27,`div`,14)(28,`button`,15),ac(`click`,function(){return a.updateBlacklist()}),Fe(29,Kt,2,3)(30,Gt,1,0,`i`,16),jd()()()()),i&2){let v;se(3),Py(N_(4,10,`settings.security.ui_control`)),se(2),vy(`disabled`,a.clicked()),Cr(`aria-label`,N_(6,12,`form.button_close`)),se(7),Py(N_(13,14,`settings.security.ui_control_desc`)),se(3),Py(N_(16,16,`settings.security.ui_control_desc_2`)),se(3),Le((v=a.mainPairing())?18:-1,v),se(),ST(a.pairings()),se(4),vy(`disabled`,a.clicked()),se(),kt$1(` `,N_(25,18,`form.button_close`),` `),se(4),vy(`disabled`,!a.blacklistHasUpdated||a.clicked()),se(),Le(a.clicked()?30:29)}},dependencies:[Kn$1,Y,v3,US],encapsulation:2})}return n})();var kt=D(L$1(),1);var qt=n=>({maxBackupSizeText:n});function Qt(n,p){if(n&1&&br(0,`input`,10),n&2)Mi$1(`value`,ve(2).selectedBackup.fileName)}function Jt(n,p){if(n&1){let e=sc();Pe(0,`input`,12),xi$1(`change`,function(a){Ko(e);return Qo(ve(2).handleRestoreFileInput(a))}),Je()}}function Yt(n,p){if(n&1&&(Pe(0,`div`,4)(1,`div`,7),br(2,`i`,8),Je(),Pe(3,`ul`,9)(4,`li`),Ot$1(5),S_(6,`translate`),Je(),Pe(7,`li`),Ot$1(8),S_(9,`translate`),Je(),Pe(10,`li`),Ot$1(11),S_(12,`translate`),Je(),Pe(13,`li`),Ot$1(14),S_(15,`translate`),Je()(),Fe(16,Qt,1,1,`input`,10)(17,Jt,1,0,`input`,11),Je()),n&2){let e=ve();se(5),Py(N_(6,5,`backup.restore_help_one`)),se(3),Py(N_(9,7,`backup.restore_help_two`)),se(3),Py(x_(12,9,`backup.restore_max_size`,w_(14,qt,e.maxFileSizeText))),se(3),Py(N_(15,12,`backup.restore_warning`)),se(2),Le(e.selectedBackup?16:17)}}function Xt(n,p){if(n&1){let e=sc();Pe(0,`button`,18),S_(1,`translate`),xi$1(`click`,function(){Ko(e);return Qo(ve(2).dismissModal())}),Ot$1(2),S_(3,`translate`),Je()}if(n&2)Mi$1(`disabled`,ve(2).clicked()),Cr(`aria-label`,N_(1,3,`form.button_close`)),se(2),kt$1(` `,N_(3,5,`form.button_close`),` `)}function Zt(n,p){if(n&1){let e=sc();Pe(0,`button`,18),S_(1,`translate`),xi$1(`click`,function(){Ko(e);return Qo(ve(2).reopenBackupModal())}),Ot$1(2),S_(3,`translate`),Je()}if(n&2)Mi$1(`disabled`,ve(2).clicked()),Cr(`aria-label`,N_(1,3,`form.button_back`)),se(2),kt$1(` `,N_(3,5,`form.button_back`),` `)}function ei(n,p){n&1&&br(0,`i`,19)}function ti(n,p){if(n&1&&(Pe(0,`span`),Ot$1(1),Je()),n&2){let e=ve(3);se(),kt$1(``,e.uploadPercent(),`% - `)}}function ii(n,p){n&1&&(Pe(0,`span`),Ot$1(1),S_(2,`translate`),Je()),n&2&&(se(),Py(N_(2,1,`backup.label_extracting`)))}function ni(n,p){n&1&&(Pe(0,`span`),Ot$1(1),S_(2,`translate`),Je()),n&2&&(se(),Py(N_(2,1,`backup.label_uploading`)))}function ai(n,p){if(n&1&&(Pe(0,`span`),Fe(1,ei,1,0,`i`,19),Fe(2,ti,2,1,`span`),Fe(3,ii,3,3,`span`)(4,ni,3,3,`span`),Je()),n&2){let e=ve(2);se(),Le(!e.uploadPercent()||e.uploadPercent()===100?1:-1),se(),Le(e.uploadPercent()&&e.uploadPercent()!==100?2:-1),se(),Le(e.uploadPercent()===100?3:4)}}function si(n,p){n&1&&(Ot$1(0),S_(1,`translate`)),n&2&&kt$1(` `,N_(1,1,`form.button_restore`),` `)}function oi(n,p){if(n&1){let e=sc();Pe(0,`div`,6)(1,`div`,13),Fe(2,Xt,4,7,`button`,14)(3,Zt,4,7,`button`,14),Je(),br(4,`div`,15),Pe(5,`div`,16)(6,`button`,17),xi$1(`click`,function(){Ko(e);return Qo(ve().onRestoreBackupClick())}),Fe(7,ai,5,3,`span`)(8,si,2,3),Je()()()}if(n&2){let e=ve();se(2),Le(e.setupWizardRestore?2:3),se(4),Mi$1(`disabled`,!e.selectedBackup&&!e.selectedFile()||e.clicked()),se(),Le(e.clicked()?7:8)}}function ri(n,p){if(n&1){let e=sc();Pe(0,`div`,6),br(1,`div`,13),Pe(2,`div`,15)(3,`button`,20),xi$1(`click`,function(){Ko(e);return Qo(ve().postBackupRestart())}),Ot$1(4),S_(5,`translate`),Je()(),br(6,`div`,16),Je()}n&2&&(se(4),kt$1(` `,N_(5,1,`menu.hbrestart.title`),` `))}var Tt=(()=>{class n{$activeModal=g(fe);$api=g(U3);$modal=g(si$1);$router=g(le);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);$ws=g(ds$1);modalData=g(S);setupWizardRestore=this.modalData.setupWizardRestore??!1;selectedBackup=this.modalData.selectedBackup??null;clicked=q(!1);selectedFile=q(null);restoreInProgress=q(!1);restoreStarted=q(!1);restoreFailed=q(!1);restoreArchiveType=q(`homebridge`);uploadPercent=q(0);io;term;termTarget;fitAddon=new bn$1;webLinksAddon=new kn$1;xtermA11yDisposer=null;maxFileSizeText=globalThis.backup.maxBackupSizeText;get isLightTerminalTheme(){return this.$settings.getEffectiveTerminalLightingMode()===`light`}ngOnInit(){this.initialize()}initialize(){return E(this,null,function*(){this.io=this.$ws.connectToNamespace(`backup`),this.termTarget=document.getElementById(`plugin-log-output`),this.term=new Mn$1(this.$settings.getTerminalOptions({disableStdin:!0})),this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon),this.term.open(this.termTarget),this.xtermA11yDisposer=E$2(this.termTarget),setTimeout(()=>this.fitAddon.fit(),0),this.io.socket.on(`stdout`,e=>{this.term.write(e)}),this.setupWizardRestore&&(this.restoreStarted.set(!0),this.restoreInProgress.set(!0),this.startRestore())})}onRestoreBackupClick(){this.selectedBackup?this.restoreScheduledBackup():this.restoreArchiveType()===`homebridge`?this.uploadHomebridgeArchive():this.restoreArchiveType()===`hbfx`&&this.uploadHbfxArchive()}handleRestoreFileInput(e){let i=e.target.files;i?.length?(this.selectedFile.set(i[0]),this.selectedFile()?.name.endsWith(`.hbfx`)?this.restoreArchiveType.set(`hbfx`):this.restoreArchiveType.set(`homebridge`)):this.selectedFile.set(null)}postBackupRestart(){return E(this,null,function*(){try{yield this.$api.put(`/backup/restart`,{}),this.$activeModal.close(!0),this.$router.navigate([`/`])}catch(e){}})}reopenBackupModal(){this.$activeModal.dismiss(),this.$modal.open(ke,{size:`lg`,backdrop:`static`})}ngOnDestroy(){this.io.end(),this.xtermA11yDisposer?.(),this.term?.dispose()}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}uploadHomebridgeArchive(){return E(this,null,function*(){this.term.reset(),this.clicked.set(!0);let e=new FormData;e.append(`restoreArchive`,this.selectedFile(),this.selectedFile()?.name);try{yield this.$api.post(`/backup/restore`,e),this.restoreStarted.set(!0),this.restoreInProgress.set(!0),setTimeout(()=>{this.startRestore()},500)}catch(i){console.error(i),this.$toastr.error(i.error?.message||this.$translate.instant(`backup.restore_failed`),this.$translate.instant(`toast.title_error`))}finally{this.clicked.set(!1)}})}restoreScheduledBackup(){return E(this,null,function*(){this.term.reset(),this.clicked.set(!0);try{yield this.$api.post(`/backup/scheduled-backups/${this.selectedBackup.id}/restore`,{}),this.restoreStarted.set(!0),this.restoreInProgress.set(!0),setTimeout(()=>{this.startRestore()},500)}catch(e){console.error(e),this.$toastr.error(e.error?.message||this.$translate.instant(`backup.restore_failed`),this.$translate.instant(`toast.title_error`))}finally{this.clicked.set(!1)}})}startRestore(){return E(this,null,function*(){this.io.request(`do-restore`).subscribe({next:()=>{this.restoreInProgress.set(!1),this.$toastr.success(this.$translate.instant(`backup.backup_restored`),this.$translate.instant(`toast.title_success`)),this.setupWizardRestore&&this.postBackupRestart()},error:e=>{this.restoreFailed.set(!0),console.error(e),this.$toastr.error(this.$translate.instant(`backup.restore_failed`),this.$translate.instant(`toast.title_error`))}})})}uploadHbfxArchive(){return E(this,null,function*(){this.term.reset(),this.clicked.set(!0);let e=new FormData;e.append(`restoreArchive`,this.selectedFile(),this.selectedFile()?.name);try{let i=yield this.$api.post(`/backup/restore/hbfx`,e,{reportUploadProgress:!0,observe:`events`});i.type===rn$1.UploadProgress?this.uploadPercent.set(Math.round(100*i.loaded/i.total)):i instanceof Io&&(this.restoreStarted.set(!0),this.restoreInProgress.set(!0),setTimeout(()=>{this.startHbfxRestore()},500))}catch(i){console.error(i),this.$toastr.error(i.error?.message||this.$translate.instant(`backup.restore_failed`),this.$translate.instant(`toast.title_error`))}finally{this.clicked.set(!1)}})}startHbfxRestore(){return E(this,null,function*(){this.io.request(`do-restore-hbfx`).subscribe({next:()=>{this.restoreInProgress.set(!1),this.$toastr.success(this.$translate.instant(`backup.backup_restored`),this.$translate.instant(`toast.title_success`))},error:e=>{this.restoreFailed.set(!0),console.error(e),this.$toastr.error(this.$translate.instant(`backup.restore_failed`),this.$translate.instant(`toast.title_error`))}})})}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-restore`]],decls:11,vars:17,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[`id`,`plugin-log-output`,1,`modal-body`,3,`hidden`],[1,`modal-footer`,`justify-content-between`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-hard-drive`,`primary-text`,`icon-xl`],[1,`mb-3`],[`type`,`text`,`disabled`,``,1,`form-control`,`custom-input`,3,`value`],[`type`,`file`,`id`,`restoreFileUpload`,`accept`,`application/gzip, .gz, .hbfx`,1,`form-control`],[`type`,`file`,`id`,`restoreFileUpload`,`accept`,`application/gzip, .gz, .hbfx`,1,`form-control`,3,`change`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`disabled`],[1,`text-center`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-primary`,3,`click`,`disabled`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[1,`fas`,`fa-circle-notch`,`fa-spin`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-primary`,3,`click`]],template:function(i,a){i&1&&(Pe(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`button`,3),S_(6,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Je()(),Fe(7,Yt,18,16,`div`,4),br(8,`div`,5),Fe(9,oi,9,3,`div`,6),Fe(10,ri,7,3,`div`,6),Je()),i&2&&(Ay(`terminal-light-theme`,a.isLightTerminalTheme),se(3),Py(N_(4,13,`backup.title_backup`)),se(2),Mi$1(`disabled`,a.restoreInProgress()),Cr(`aria-label`,N_(6,15,`form.button_close`)),se(2),Le(!a.restoreStarted()&&!a.setupWizardRestore?7:-1),se(),Ay(`terminal-light-bg`,a.isLightTerminalTheme)(`terminal-dark-bg`,!a.isLightTerminalTheme),Mi$1(`hidden`,!a.restoreStarted()),se(),Le(!a.restoreStarted()||a.restoreFailed()===!0?9:-1),se(),Le(!a.restoreInProgress()&&a.restoreStarted()?10:-1))},dependencies:[v3],encapsulation:2})}return n})();var li=n=>({backupTime:n,dayCount:7});var di=(n,p)=>({backupSize:n,maxBackupSizeText:p});function ci(n,p){if(n&1&&(Ot$1(0),S_(1,`date`),S_(2,`translate`)),n&2)kt$1(` `,x_(2,4,`backup.scheduled_backup_time`,w_(7,li,x_(1,1,ve(2).backupTime(),`shortTime`))),` `)}function pi(n,p){n&1&&(Ot$1(0),S_(1,`translate`)),n&2&&kt$1(` `,N_(1,1,`plugins.settings.restart_required`),` `)}function mi(n,p){if(n&1&&Fe(0,ci,3,9)(1,pi,2,3),n&2)Le(ve().backupTime()?0:1)}function ui(n,p){if(n&1&&(Ot$1(0),S_(1,`translate`)),n&2)kt$1(` `,N_(1,1,ve().backupTime()?`plugins.settings.restart_required`:`backup.scheduled_backup_disabled`),` `)}function hi(n,p){if(n&1&&(Va$1(0,`span`,33),S_(1,`translate`),Dy(2,`i`,40),Ot$1(3),jd()),n&2){let e=ve().$implicit,i=ve(2);vy(`ngbTooltip`,x_(1,3,`backup.backup_exceeds_max_size`,C_(6,di,`${e.size}MB`,i.maxBackupSizeText)))(`openDelay`,150),se(3),kt$1(` `,e.size,`MB `)}}function gi(n,p){if(n&1&&(Va$1(0,`span`),Ot$1(1),jd()),n&2){let e=ve().$implicit;se(),kt$1(``,e.size,`MB`)}}function _i(n,p){if(n&1){let e=sc();Va$1(0,`li`,22)(1,`span`)(2,`span`,32),Ot$1(3),S_(4,`date`),jd(),Dy(5,`br`),Va$1(6,`small`,23),Ot$1(7),S_(8,`date`),Fe(9,hi,4,9,`span`,33)(10,gi,2,1,`span`),jd()(),Va$1(11,`span`,34),S_(12,`translate`),Va$1(13,`button`,35),S_(14,`translate`),S_(15,`translate`),ac(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(2).restore(a))}),Dy(16,`i`,36),jd(),Va$1(17,`button`,37),S_(18,`translate`),S_(19,`translate`),ac(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(2).download(a))}),Dy(20,`i`,38),jd(),Va$1(21,`button`,39),S_(22,`translate`),S_(23,`translate`),ac(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(2).delete(a))}),Dy(24,`i`,25),jd()()()}if(n&2){let e=p.$implicit,i=ve(2);se(2),vy(`ngbTooltip`,e.fileName)(`openDelay`,150),se(),kt$1(` `,x_(4,24,e.timestamp,`mediumDate`),` `),se(4),kt$1(` `,x_(8,27,e.timestamp,`shortTime`),` · `),se(2),Le(e.size>i.maxBackupSize?9:10),se(2),Cr(`aria-label`,N_(12,30,`backup.aria_actions`)),se(2),vy(`disabled`,i.clicked()||i.deleting()||e.size>i.maxBackupSize)(`ngbTooltip`,N_(14,32,`form.button_restore`))(`openDelay`,150),Cr(`aria-label`,N_(15,34,`form.button_restore`)),se(4),vy(`disabled`,i.clicked()||i.deleting())(`ngbTooltip`,N_(18,36,`form.button_download`))(`openDelay`,150),Cr(`aria-label`,N_(19,38,`form.button_download`)),se(4),vy(`disabled`,i.clicked()||i.deleting())(`ngbTooltip`,N_(22,40,`form.button_delete`))(`openDelay`,150),Cr(`aria-label`,N_(23,42,`form.button_delete`)),se(3),Ay(`fa-trash`,e.id!==i.deleting())(`fa-circle-notch`,e.id===i.deleting())(`fa-spin`,e.id===i.deleting())}}function vi(n,p){if(n&1&&(Va$1(0,`ul`,27)(1,`li`,9)(2,`h6`,10),Ot$1(3),S_(4,`translate`),jd()(),_T(5,_i,25,44,`li`,22,TT),jd()),n&2){let e=ve();se(3),Py(N_(4,1,`backup.files_auto`)),se(2),ST(e.scheduledBackups())}}var ke=(()=>{class n{destroyRef=g(Z);$activeModal=g(fe);$api=g(U3);$backup=g(I);$errors=g(m);$modal=g(si$1);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);injector=g(Te);clicked=q(!1);scheduledBackups=q([]);backupTime=q(``);deleting=q(null);currentSettingEnabled=q(!1);currentSettingPath=q(``);enabledFormControl=new Se(!1);pathFormControl=new Se(``);maxBackupSize=globalThis.backup.maxBackupSize;maxBackupSizeText=globalThis.backup.maxBackupSizeText;ngOnInit(){this.getScheduledBackups(),this.getNextBackup(),this.currentSettingEnabled.set(!this.$settings.env.scheduledBackupDisable),this.currentSettingPath.set(this.$settings.env.scheduledBackupPath),this.enabledFormControl.patchValue(this.currentSettingEnabled()),this.pathFormControl.patchValue(this.currentSettingPath()),this.enabledFormControl.valueChanges.pipe(Wf(500),An$1(this.destroyRef)).subscribe(e=>E(this,null,function*(){this.currentSettingEnabled.set(e??!1),yield this.saveUiSettingChange(`scheduledBackupDisable`,!this.currentSettingEnabled())})),this.pathFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(e=>E(this,null,function*(){this.currentSettingPath.set(e??``),yield this.saveUiSettingChange(`scheduledBackupPath`,this.currentSettingPath())}))}download(e){return E(this,null,function*(){try{let i=yield this.$api.get(`/backup/scheduled-backups/${e.id}`,{observe:`response`,responseType:`blob`}),a=e.fileName||`homebridge-backup.tar.gz`,v=i.body.size;if(v>this.maxBackupSize){let N=this.$translate.instant(`backup.backup_exceeds_max_size`,{maxBackupSizeText:this.maxBackupSizeText,size:`${(v/1048576).toFixed(1)}MB`});this.$toastr.warning(N,this.$translate.instant(`toast.title_warning`))}(0,kt.saveAs)(i.body,a)}catch(i){console.error(i),this.$toastr.error(this.$translate.instant(`backup.backup_download_failed`),this.$translate.instant(`toast.title_error`))}})}restore(e){this.$activeModal.close();let i=uy([{provide:S,useValue:{selectedBackup:e}}],this.injector);this.$modal.open(Tt,{size:`lg`,backdrop:`static`,injector:i})}delete(e){return E(this,null,function*(){this.deleting.set(e.id);try{yield this.$api.delete(`/backup/scheduled-backups/${e.id}`),this.getScheduledBackups()}catch(i){console.error(i),this.$toastr.error(this.$translate.instant(`backup.backup_delete_failed`),this.$translate.instant(`toast.title_error`))}finally{this.deleting.set(null)}})}onDownloadBackupClick(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$backup.downloadBackup(),this.clicked.set(!1)}catch(e){this.clicked.set(!1),console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`))}})}onCreateBackupClick(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$api.post(`/backup`,{}),this.getScheduledBackups()}catch(e){console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`))}finally{this.clicked.set(!1)}})}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}saveUiSettingChange(e,i){return E(this,null,function*(){try{yield this.$api.patch(`/config-editor/ui`,{[e]:i}),this.$settings.setEnvItem(e,i),this.$settings.showRestartToast()}catch(a){console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`))}})}getScheduledBackups(){return E(this,null,function*(){try{let e=yield this.$api.get(`/backup/scheduled-backups`);this.scheduledBackups.set(e)}catch(e){console.error(e)}})}getNextBackup(){return E(this,null,function*(){try{let e=yield this.$api.get(`/backup/scheduled-backups/next`);this.backupTime.set(e.next)}catch(e){console.error(e)}})}Date=Date;static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-backup`]],decls:92,vars:84,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`text-center`,`mb-3`],[`aria-hidden`,`true`,1,`fas`,`fa-hard-drive`,`primary-text`,`icon-xl`],[1,`mb-3`],[1,`list-group`,`list-group-box`,`mb-0`],[1,`list-group-item`],[1,`mb-0`,`text-center`],[1,`list-group-item`,`d-flex`,`flex-column`,`flex-md-row`,`align-items-center`],[1,`mb-2`,`mb-md-0`,`w-100`,`w-md-50`],[1,`grey-text`,`small`],[1,`text-start`,`text-md-end`,`w-100`,`w-md-50`],[`type`,`text`,`placeholder`,`/home/pi/homebridge-backups`,1,`form-control`,`custom-input`,`font-monospace`,3,`formControl`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`,`flex-row`,`pb-2`],[1,`text-start`],[1,`small`,`grey-text`],[1,`text-end`,`grey-text`,`d-flex`,`align-items-center`],[`type`,`checkbox`,`id`,`disableScheduledBackups`,1,`rendux-input`,3,`formControl`],[`for`,`disableScheduledBackups`,`aria-hidden`,`true`,1,`rendux-label`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`],[1,`grey-text`],[`type`,`button`,1,`btn`,`btn-primary`,`m-0`,`ms-3`,`py-1`,3,`click`,`disabled`],[`aria-hidden`,`true`,1,`fas`],[`aria-hidden`,`true`,1,`fas`,`fa-arrow-right`],[1,`list-group`,`list-group-box`,`mt-3`,`mb-0`],[1,`modal-footer`,`justify-content-between`],[1,`text-center`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[1,`text-end`],[`container`,`modal`,`triggers`,`hover`,3,`ngbTooltip`,`openDelay`],[`container`,`modal`,`triggers`,`hover`,1,`red-text`,3,`ngbTooltip`,`openDelay`],[`role`,`group`,1,`d-flex`,`flex-nowrap`],[`type`,`button`,`placement`,`bottom`,`container`,`modal`,`triggers`,`hover`,1,`btn`,`btn-primary`,`m-0`,`ms-3`,`py-1`,3,`click`,`disabled`,`ngbTooltip`,`openDelay`],[`aria-hidden`,`true`,1,`fas`,`fa-history`],[`type`,`button`,`placement`,`bottom`,`container`,`modal`,`triggers`,`hover`,1,`btn`,`btn-primary`,`m-0`,`ms-2`,3,`click`,`disabled`,`ngbTooltip`,`openDelay`],[`aria-hidden`,`true`,1,`fas`,`fa-download`],[`type`,`button`,`placement`,`bottom`,`container`,`modal`,`triggers`,`hover`,1,`btn`,`btn-danger`,`m-0`,`ms-2`,3,`click`,`disabled`,`ngbTooltip`,`openDelay`],[`aria-hidden`,`true`,1,`fas`,`fa-exclamation-circle`]],template:function(i,a){i&1&&(Va$1(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),jd(),Va$1(5,`button`,3),S_(6,`translate`),ac(`click`,function(){return a.dismissModal()}),jd()(),Va$1(7,`div`,4)(8,`div`,5),Dy(9,`i`,6),jd(),Va$1(10,`ul`,7)(11,`li`),Ot$1(12),S_(13,`translate`),jd(),Va$1(14,`li`),Ot$1(15),S_(16,`translate`),jd(),Va$1(17,`li`),Ot$1(18),S_(19,`translate`),jd()(),Va$1(20,`ul`,8)(21,`li`,9)(22,`h6`,10),Ot$1(23),S_(24,`translate`),jd()(),Va$1(25,`li`,11)(26,`div`,12),Ot$1(27),S_(28,`translate`),Dy(29,`br`),Va$1(30,`span`,13),Ot$1(31),S_(32,`translate`),jd()(),Va$1(33,`div`,14),Dy(34,`input`,15),S_(35,`translate`),db(),jd()(),Va$1(36,`li`,16)(37,`div`,17),Ot$1(38),S_(39,`translate`),Dy(40,`br`),Va$1(41,`span`,18),Fe(42,mi,2,1)(43,ui,2,3),jd()(),Va$1(44,`div`,19),Dy(45,`input`,20),S_(46,`translate`),db(),Dy(47,`label`,21),jd()(),Va$1(48,`li`,22)(49,`div`)(50,`span`),Ot$1(51),S_(52,`translate`),jd(),Dy(53,`br`),Va$1(54,`small`,23),Ot$1(55),S_(56,`translate`),jd()(),Va$1(57,`button`,24),S_(58,`translate`),ac(`click`,function(){return a.onDownloadBackupClick()}),Dy(59,`i`,25),jd()(),Va$1(60,`li`,22)(61,`div`)(62,`span`),Ot$1(63),S_(64,`translate`),jd(),Dy(65,`br`),Va$1(66,`small`,23),Ot$1(67),S_(68,`translate`),jd()(),Va$1(69,`button`,24),S_(70,`translate`),ac(`click`,function(){return a.onCreateBackupClick()}),Dy(71,`i`,25),jd()(),Va$1(72,`li`,22)(73,`div`)(74,`span`),Ot$1(75),S_(76,`translate`),jd(),Dy(77,`br`),Va$1(78,`small`,23),Ot$1(79),S_(80,`translate`),jd()(),Va$1(81,`button`,24),S_(82,`translate`),ac(`click`,function(){return a.restore(null)}),Dy(83,`i`,26),jd()()(),Fe(84,vi,7,3,`ul`,27),jd(),Va$1(85,`div`,28),Dy(86,`div`,17),Va$1(87,`div`,29)(88,`button`,30),ac(`click`,function(){return a.dismissModal()}),Ot$1(89),S_(90,`translate`),jd()(),Dy(91,`div`,31),jd()()),i&2&&(se(3),Py(N_(4,42,`backup.title_backup`)),se(2),vy(`disabled`,a.clicked()||a.deleting()),Cr(`aria-label`,N_(6,44,`form.button_close`)),se(7),Py(N_(13,46,`backup.backup_help_one`)),se(3),Py(N_(16,48,`backup.backup_help_two`)),se(3),Py(N_(19,50,`backup.backup_warning`)),se(5),Py(N_(24,52,`backup.settings_title`)),se(4),kt$1(` `,N_(28,54,`backup.settings_path`)),se(4),Py(N_(32,56,`backup.settings_path_desc`)),se(3),vy(`formControl`,a.pathFormControl),Cr(`aria-label`,N_(35,58,`backup.settings_path`)),pb(),se(4),kt$1(` `,N_(39,60,`backup.settings_enable`)),se(4),Le(a.enabledFormControl.value?42:43),se(3),vy(`formControl`,a.enabledFormControl),Cr(`aria-label`,N_(46,62,`backup.settings_enable`)),pb(),se(6),Py(N_(52,64,`backup.backup_now`)),se(4),Py(N_(56,66,`backup.backup_now_desc`)),se(2),vy(`disabled`,a.clicked()),Cr(`aria-label`,N_(58,68,`form.button_download`)),se(2),Ay(`fa-arrow-right`,!a.clicked())(`fa-circle-notch`,a.clicked())(`fa-spin`,a.clicked()),se(4),Py(N_(64,70,`backup.backup_now`)),se(4),Py(N_(68,72,`backup.backup_now_save_desc`)),se(2),vy(`disabled`,a.clicked()),Cr(`aria-label`,N_(70,74,`backup.backup_now`)),se(2),Ay(`fa-arrow-right`,!a.clicked())(`fa-circle-notch`,a.clicked())(`fa-spin`,a.clicked()),se(4),Py(N_(76,76,`backup.restore_now`)),se(4),Py(N_(80,78,`backup.restore_now_desc`)),se(2),vy(`disabled`,a.clicked()),Cr(`aria-label`,N_(82,80,`backup.restore_now`)),se(3),Le(a.scheduledBackups().length?84:-1),se(4),vy(`disabled`,a.clicked()||a.deleting()),se(),kt$1(` `,N_(90,82,`form.button_close`),` `))},dependencies:[Y,Jn$1,Ye,Mt$1,Hn$1,mn$1,WS,v3],encapsulation:2})}return n})();function fi(n,p){n&1&&(Pe(0,`div`,5),br(1,`i`,8),Je())}function bi(n,p){n&1&&(Pe(0,`div`,9),br(1,`i`,11),Ot$1(2),S_(3,`translate`),Je()),n&2&&(se(2),kt$1(` `,N_(3,1,`settings.ports.conflict_warning`),` `))}function Ci(n,p){n&1&&br(0,`i`,18)}function xi(n,p){n&1&&br(0,`i`,19)}function Si(n,p){n&1&&br(0,`i`,18)}function yi(n,p){n&1&&br(0,`i`,19)}function Ii(n,p){if(n&1&&Fe(0,Si,1,0,`i`,18)(1,yi,1,0,`i`,19),n&2){let e=ve().$implicit;Le(e.commissioned?0:1)}}function Ei(n,p){n&1&&(Pe(0,`span`,21),Ot$1(1,`—`),Je())}function wi(n,p){if(n&1&&(Pe(0,`ul`,12)(1,`li`,13)(2,`h6`,14),Ot$1(3),Je()(),Pe(4,`li`,15)(5,`span`,16),Ot$1(6),S_(7,`translate`),Je(),Pe(8,`span`,17),Fe(9,Ci,1,0,`i`,18)(10,xi,1,0,`i`,19),Je()(),Pe(11,`li`,15)(12,`span`,16),Ot$1(13),S_(14,`translate`),Je(),Pe(15,`span`,20),Ot$1(16),Je()(),Pe(17,`li`,15)(18,`span`,16),Ot$1(19),S_(20,`translate`),Je(),Pe(21,`span`,20),Ot$1(22),Je()(),Pe(23,`li`,15)(24,`span`,16),Ot$1(25),S_(26,`translate`),Je(),Pe(27,`span`,17),Fe(28,Ii,2,1)(29,Ei,2,0,`span`,21),Je()()()),n&2){let e=p.$implicit,i=p.$index,a=p.$count,v=ve(2);Ay(`mb-3`,i!==a-1)(`mb-0`,i===a-1),se(3),Py(v.displayName(e)),se(3),Py(N_(7,13,`settings.ports.status`)),se(3),Le(e.status===`ok`?9:10),se(4),Py(N_(14,15,`settings.ports.hap_port`)),se(3),Py(e.port),se(3),Py(N_(20,17,`settings.ports.matter_port`)),se(3),Py(e.matterPort??`—`),se(3),Py(N_(26,19,`settings.ports.commissioned`)),se(3),Le(e.matterPort?28:29)}}function Ti(n,p){if(n&1&&(Fe(0,bi,4,3,`div`,9),_T(1,wi,30,21,`ul`,10,TT)),n&2){let e=ve();Le(e.conflicts().length?0:-1),se(),ST(e.entries())}}var $t=(()=>{class n{$activeModal=g(fe);$api=g(U3);$errors=g(m);$toastr=g(z0);$translate=g(Nf);loading=q(!0);entries=q([]);conflicts=q([]);ngOnInit(){this.loadData()}loadData(){return E(this,null,function*(){try{let e=yield this.$api.get(`/server/network/overview`);this.entries.set(this.sortEntries(e.entries)),this.conflicts.set(e.conflicts)}catch(e){console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`))}finally{this.loading.set(!1)}})}displayName(e){return e.service===`Config UI`?`Homebridge UI`:e.bridge}sortEntries(e){return e.sort((i,a)=>i.service===`Homebridge`?-1:a.service===`Homebridge`?1:i.service===`Config UI`?-1:a.service===`Config UI`?1:i.bridge.localeCompare(a.bridge))}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-port-overview-modal`]],decls:14,vars:10,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`],[1,`modal-body`],[1,`text-center`,`py-4`],[1,`modal-footer`,`justify-content-center`],[`type`,`button`,1,`btn`,`btn-elegant`,3,`click`],[1,`fas`,`fa-spinner`,`fa-spin`,`fa-2x`,`primary-text`],[1,`alert`,`alert-warning`,`small`,`py-2`,`px-3`,`mb-3`],[1,`list-group`,`list-group-box`,3,`mb-3`,`mb-0`],[1,`fas`,`fa-exclamation-triangle`,`me-1`],[1,`list-group`,`list-group-box`],[1,`list-group-item`],[1,`mb-0`,`text-center`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`,`flex-column`,`flex-md-row`],[1,`text-start`],[1,`text-start`,`text-md-end`,`grey-text`],[`aria-hidden`,`true`,1,`fas`,`fa-xl`,`fa-check-circle`,`primary-text`],[`aria-hidden`,`true`,1,`fas`,`fa-xl`,`fa-times-circle`,`red-text`],[1,`text-start`,`text-md-end`,`grey-text`,`font-monospace`],[1,`font-monospace`]],template:function(i,a){i&1&&(Pe(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`button`,3),S_(6,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Je()(),Pe(7,`div`,4),Fe(8,fi,2,0,`div`,5)(9,Ti,3,1),Je(),Pe(10,`div`,6)(11,`button`,7),xi$1(`click`,function(){return a.dismissModal()}),Ot$1(12),S_(13,`translate`),Je()()()),i&2&&(se(3),Py(N_(4,4,`settings.ports.title`)),se(2),Cr(`aria-label`,N_(6,6,`form.button_close`)),se(3),Le(a.loading()?8:9),se(4),kt$1(` `,N_(13,8,`form.button_close`),` `))},dependencies:[v3],encapsulation:2})}return n})();function ki(n,p){n&1&&(Va$1(0,`div`,12),Dy(1,`i`,13),jd(),Va$1(2,`p`,14),Ot$1(3),S_(4,`translate`),jd()),n&2&&(se(3),Py(N_(4,1,`reset.no_accessories`)))}function $i(n,p){n&1&&(Va$1(0,`div`,12),Dy(1,`i`,15),jd(),Va$1(2,`ul`,16)(3,`li`),Ot$1(4),S_(5,`translate`),jd(),Va$1(6,`li`),Ot$1(7),S_(8,`translate`),jd(),Va$1(9,`li`),Ot$1(10),S_(11,`translate`),jd()(),Va$1(12,`ngb-alert`,17)(13,`p`,18),Ot$1(14),S_(15,`translate`),jd()()),n&2&&(se(4),Py(N_(5,5,`reset.accessory_all.list_1`)),se(3),Py(N_(8,7,`reset.accessory_all.list_2`)),se(3),Py(N_(11,9,`reset.accessory_all.list_3`)),se(2),vy(`dismissible`,!1),se(2),Py(N_(15,11,`reset.action_is_irreversible`)))}function Mi(n,p){if(n&1){let e=sc();Va$1(0,`button`,19),S_(1,`translate`),ac(`click`,function(){Ko(e);return Qo(ve().dismissModal())}),Ot$1(2),S_(3,`translate`),jd()}if(n&2)vy(`disabled`,ve().clicked()),Cr(`aria-label`,N_(1,3,`form.button_close`)),se(2),kt$1(` `,N_(3,5,`form.button_close`),` `)}function Bi(n,p){if(n&1){let e=sc();Va$1(0,`button`,20),S_(1,`translate`),ac(`click`,function(){Ko(e);return Qo(ve().dismissModal())}),Ot$1(2),S_(3,`translate`),jd()}n&2&&(Cr(`aria-label`,N_(1,2,`form.button_close`)),se(2),kt$1(` `,N_(3,4,`form.button_close`),` `))}function Fi(n,p){n&1&&(Ot$1(0),S_(1,`translate`)),n&2&&kt$1(` `,N_(1,1,`form.button_remove`),` `)}function Pi(n,p){n&1&&Dy(0,`i`,22)}function Di(n,p){if(n&1){let e=sc();Va$1(0,`button`,21),ac(`click`,function(){Ko(e);return Qo(ve().onResetCachedAccessoriesClick())}),Fe(1,Fi,2,3)(2,Pi,1,0,`i`,22),jd()}if(n&2){let e=ve();vy(`disabled`,e.clicked()),se(),Le(e.clicked()?2:1)}}var Mt=(()=>{class n{$activeModal=g(fe);$accessoryOverview=g(Y$1);$api=g(U3);$router=g(le);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);clicked=q(!1);cachedAccessories=q([]);ngOnInit(){this.loadCachedAccessories()}onResetCachedAccessoriesClick(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$api.put(`/server/reset-cached-accessories`,{}),this.$accessoryOverview.invalidate(),this.$toastr.success(this.$translate.instant(`reset.delete_success`),this.$translate.instant(`toast.title_success`)),this.$activeModal.close(),this.$router.navigate([`/restart`],{queryParams:{restarting:!0}})}catch(e){this.clicked.set(!1),console.error(e),this.$toastr.error(this.$translate.instant(`reset.failed_to_reset`),this.$translate.instant(`toast.title_error`))}})}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}loadCachedAccessories(){return E(this,null,function*(){try{let{hapAccessories:e,matterAccessories:i}=yield this.$accessoryOverview.get(),a=this.$settings.isFeatureEnabled(`matterSupport`);this.cachedAccessories.set([...e,...a?i:[]])}catch(e){console.error(e),this.$toastr.error(this.$translate.instant(`reset.error_message`),this.$translate.instant(`toast.title_error`)),this.$activeModal.close()}})}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-remove-all-accessories`]],decls:17,vars:11,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`disabled`],[1,`text-center`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`disabled`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-circle-check`,`primary-text`,`icon-xl`],[1,`mb-0`,`text-center`],[1,`fas`,`fa-network-wired`,`primary-text`,`icon-xl`],[1,`mb-3`],[`type`,`error`,1,`mb-0`,3,`dismissible`],[1,`text-center`,`mb-0`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`click`,`disabled`],[1,`fas`,`fa-circle-notch`,`fa-spin`]],template:function(i,a){i&1&&(Va$1(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),jd(),Va$1(5,`button`,3),S_(6,`translate`),ac(`click`,function(){return a.dismissModal()}),jd()(),Va$1(7,`div`,4),Fe(8,ki,5,3)(9,$i,16,13),jd(),Va$1(10,`div`,5)(11,`div`,6),Fe(12,Mi,4,7,`button`,7),jd(),Va$1(13,`div`,8),Fe(14,Bi,4,6,`button`,9),jd(),Va$1(15,`div`,10),Fe(16,Di,3,2,`button`,11),jd()()()),i&2&&(se(3),Py(N_(4,7,`reset.accessory_all.title`)),se(2),vy(`disabled`,a.clicked()),Cr(`aria-label`,N_(6,9,`form.button_close`)),se(3),Le(a.cachedAccessories().length===0?8:9),se(4),Le(a.cachedAccessories().length>0?12:-1),se(2),Le(a.cachedAccessories().length===0?14:-1),se(2),Le(a.cachedAccessories().length>0?16:-1))},dependencies:[X,v3],encapsulation:2})}return n})();function Ri(n,p){n&1&&(Pe(0,`div`,12),br(1,`i`,13),Je(),Pe(2,`p`,14),Ot$1(3),S_(4,`translate`),Je()),n&2&&(se(3),Py(N_(4,1,`reset.bridge_accessories.empty`)))}function Vi(n,p){if(n&1){let e=sc();Pe(0,`li`,18)(1,`span`,19),br(2,`i`,20),Je(),Pe(3,`span`,21),Ot$1(4),br(5,`br`),Pe(6,`small`,22)(7,`span`,23),Ot$1(8),Je()()(),Pe(9,`button`,24),S_(10,`translate`),xi$1(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(2).toggleList(a._id,a._protocol))}),br(11,`i`,25),Je()()}if(n&2){let e=p.$implicit,i=ve(2);se(2),Ay(`fa-matter`,e._protocol===`matter`)(`fa-hap`,e._protocol!==`matter`),se(2),kt$1(` `,e.name,` `),se(4),Py(e._username),se(),Ay(`btn-danger`,!i.isInList(e._id,e._protocol))(`btn-elegant`,i.isInList(e._id,e._protocol)),Mi$1(`disabled`,i.clicked()),Cr(`aria-label`,N_(10,20,`form.button_delete`)),se(2),Ay(`fa-broom`,!i.isInList(e._id,e._protocol))(`fa-undo`,i.isInList(e._id,e._protocol)&&!i.clicked())(`fa-circle-notch`,i.isInList(e._id,e._protocol)&&i.clicked())(`fa-spin`,i.isInList(e._id,e._protocol)&&i.clicked())}}function Ai(n,p){if(n&1&&(Pe(0,`div`,12),br(1,`i`,15),Je(),Pe(2,`ul`,16)(3,`li`),Ot$1(4),S_(5,`translate`),Je(),Pe(6,`li`),Ot$1(7),S_(8,`translate`),Je(),Pe(9,`li`),Ot$1(10),S_(11,`translate`),Je()(),Pe(12,`ul`,17),_T(13,Vi,12,22,`li`,18,TT),Je()),n&2){let e=ve();se(4),Py(N_(5,3,`reset.bridge_accessories.list_1`)),se(3),Py(N_(8,5,`reset.clear_cache_single.list_3`)),se(3),Py(N_(11,7,`reset.bridge_accessories.list_2`)),se(3),ST(e.pairings())}}function Ni(n,p){if(n&1){let e=sc();Pe(0,`button`,26),xi$1(`click`,function(){Ko(e);return Qo(ve().dismissModal())}),Ot$1(1),S_(2,`translate`),Je()}if(n&2)Mi$1(`disabled`,ve().clicked()),se(),kt$1(` `,N_(2,2,`form.button_close`),` `)}function Hi(n,p){if(n&1){let e=sc();Pe(0,`button`,27),xi$1(`click`,function(){Ko(e);return Qo(ve().dismissModal())}),Ot$1(1),S_(2,`translate`),Je()}n&2&&(se(),kt$1(` `,N_(2,1,`form.button_close`),` `))}function Li(n,p){n&1&&br(0,`i`,29)}function Oi(n,p){if(n&1&&Ot$1(0),n&2)kt$1(` (`,ve(3).toDelete().length,`) `)}function zi(n,p){if(n&1&&(Ot$1(0),S_(1,`translate`),Fe(2,Oi,1,1)),n&2){let e=ve(2);kt$1(` `,N_(1,2,`form.button_remove`),` `),se(2),Le(e.toDelete().length>0?2:-1)}}function Ui(n,p){if(n&1){let e=sc();Pe(0,`button`,28),xi$1(`click`,function(){Ko(e);return Qo(ve().cleanBridges())}),Fe(1,Li,1,0,`i`,29)(2,zi,3,4),Je()}if(n&2){let e=ve();Mi$1(`disabled`,!e.toDelete().length||e.clicked()),se(),Le(e.clicked()?1:2)}}var Bt=(()=>{class n{$activeModal=g(fe);$accessoryOverview=g(Y$1);$api=g(U3);$router=g(le);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);clicked=q(!1);pairings=q([]);toDelete=q([]);isMatterSupported=this.$settings.isFeatureEnabled(`matterSupport`);ngOnInit(){this.loadPairings()}cleanBridges(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$api.delete(`/server/pairings/accessories`,{body:this.toDelete()}),this.$accessoryOverview.invalidate(),this.$toastr.success(this.$translate.instant(`reset.accessory_ind.done`),this.$translate.instant(`toast.title_success`)),this.$activeModal.close(),this.$router.navigate([`/restart`],{queryParams:{restarting:!0}})}catch(e){this.clicked.set(!1),console.error(e),this.$toastr.error(this.$translate.instant(`reset.accessory_ind.fail`),this.$translate.instant(`toast.title_error`))}})}toggleList(e,i){this.toDelete().some(a=>a.id===e&&a.protocol===i)?this.toDelete.set(this.toDelete().filter(a=>a.id!==e||a.protocol!==i)):this.toDelete.update(a=>[...a,{id:e,protocol:i}])}isInList(e,i){return this.toDelete().some(a=>a.id===e&&a.protocol===i)}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}loadPairings(){return E(this,null,function*(){try{let{pairings:e}=yield this.$accessoryOverview.get(),i=e.filter(v=>v._category===`bridge`&&!v._main).sort((v,N)=>v.name.localeCompare(N.name)),a=[];for(let v of i)a.push(x(w({},v),{_protocol:`hap`,_displayName:v.name})),this.isMatterSupported&&v._matter&&a.push(x(w({},v),{_protocol:`matter`,_displayName:v.name}));this.pairings.set(a)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant(`settings.unpair_bridge.load_error`),this.$translate.instant(`toast.title_error`)),this.$activeModal.close()}})}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-remove-bridge-accessories`]],decls:17,vars:11,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`disabled`],[1,`text-center`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`disabled`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-circle-check`,`primary-text`,`icon-xl`],[1,`mb-0`,`text-center`],[1,`fas`,`fa-broom`,`primary-text`,`icon-xl`],[1,`mb-3`],[1,`list-group`,`list-group-box`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`],[1,`me-3`],[1,`fas`,`fa-lg`],[1,`flex-grow-1`],[1,`grey-text`],[1,`font-monospace`],[`type`,`button`,1,`btn`,`m-0`,`ms-3`,3,`click`,`disabled`],[1,`fas`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`click`,`disabled`],[1,`fas`,`fa-circle-notch`,`fa-spin`]],template:function(i,a){i&1&&(Pe(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`button`,3),S_(6,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Je()(),Pe(7,`div`,4),Fe(8,Ri,5,3)(9,Ai,15,9),Je(),Pe(10,`div`,5)(11,`div`,6),Fe(12,Ni,3,4,`button`,7),Je(),Pe(13,`div`,8),Fe(14,Hi,3,3,`button`,9),Je(),Pe(15,`div`,10),Fe(16,Ui,3,2,`button`,11),Je()()()),i&2&&(se(3),Py(N_(4,7,`reset.bridge_accessories.title`)),se(2),Mi$1(`disabled`,a.clicked()),Cr(`aria-label`,N_(6,9,`form.button_close`)),se(3),Le(a.pairings().length===0?8:9),se(4),Le(a.pairings().length>0?12:-1),se(2),Le(a.pairings().length===0?14:-1),se(2),Le(a.pairings().length>0?16:-1))},dependencies:[v3],encapsulation:2})}return n})();function Wi(n,p){n&1&&(Pe(0,`div`,7)(1,`div`,11),Ot$1(2),S_(3,`translate`),Je()()),n&2&&(se(2),kt$1(` `,N_(3,1,`reset.action_is_irreversible`),` `))}function ji(n,p){n&1&&(Ot$1(0),S_(1,`translate`)),n&2&&kt$1(` `,N_(1,1,`form.button_reset`),` `)}function Ki(n,p){n&1&&br(0,`i`,17)}function Gi(n,p){if(n&1){let e=sc();Pe(0,`button`,14),xi$1(`click`,function(a){Ko(e);return Qo(ve().toggleConfirmMode(a))}),br(1,`i`,15),Je(),Pe(2,`button`,16),xi$1(`click`,function(){Ko(e);return Qo(ve().onResetHomebridgeAccessoryClick())}),Fe(3,ji,2,3)(4,Ki,1,0,`i`,17),Je()}if(n&2){let e=ve();Mi$1(`disabled`,e.clicked()),se(2),Mi$1(`disabled`,e.clicked()),se(),Le(e.clicked()?4:3)}}function qi(n,p){if(n&1){let e=sc();Pe(0,`button`,18),xi$1(`click`,function(a){Ko(e);return Qo(ve().toggleConfirmMode(a))}),Ot$1(1),S_(2,`translate`),Je()}n&2&&(se(),kt$1(` `,N_(2,1,`form.button_continue`),` `))}var Ft=(()=>{class n{$activeModal=g(fe);$api=g(U3);$cache=g(p$1);$router=g(le);$toastr=g(z0);$translate=g(Nf);clicked=q(!1);confirmMode=q(!1);toggleConfirmMode(e){this.confirmMode.set(!this.confirmMode()),e.target.blur()}onResetHomebridgeAccessoryClick(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$api.put(`/server/reset-homebridge-accessory`,{}),this.$cache.invalidateAll(),this.$toastr.success(this.$translate.instant(`reset.accessory_reset`),this.$translate.instant(`toast.title_success`)),this.$activeModal.close(),this.$router.navigate([`/restart`])}catch(e){console.error(e),this.$toastr.error(this.$translate.instant(`reset.failed_to_reset`),this.$translate.instant(`toast.title_error`))}})}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-reset-all-bridges`]],decls:34,vars:34,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`text-center`,`mb-4`],[1,`fas`,`fa-bridge`,`primary-text`,`icon-xl`],[1,`alert`,`alert-warning`,`mb-0`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[1,`text-center`],[1,`text-end`],[`type`,`button`,1,`btn`,`btn-primary`],[`type`,`button`,1,`btn`,`btn-elegant`,`me-2`,3,`click`,`disabled`],[1,`fas`,`fa-undo`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`click`,`disabled`],[1,`fas`,`fa-circle-notch`,`fa-spin`],[`type`,`button`,1,`btn`,`btn-primary`,3,`click`]],template:function(i,a){i&1&&(Pe(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`button`,3),S_(6,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Je()(),Pe(7,`div`,4)(8,`div`,5),br(9,`i`,6),Je(),Pe(10,`ul`)(11,`li`),Ot$1(12),S_(13,`translate`),Je(),Pe(14,`li`),Ot$1(15),S_(16,`translate`),Je(),Pe(17,`li`),Ot$1(18),S_(19,`translate`),Je(),Pe(20,`li`),Ot$1(21),S_(22,`translate`),Je()(),Fe(23,Wi,4,3,`div`,7),Je(),Pe(24,`div`,8)(25,`div`,9)(26,`button`,10),S_(27,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Ot$1(28),S_(29,`translate`),Je()(),br(30,`div`,11),Pe(31,`div`,12),Fe(32,Gi,5,3)(33,qi,3,3,`button`,13),Je()()()),i&2&&(se(3),Py(N_(4,18,`reset.bridge_all.title`)),se(2),Mi$1(`disabled`,a.clicked()),Cr(`aria-label`,N_(6,20,`form.button_close`)),se(5),Ay(`opacity-muted`,a.confirmMode())(`mb-0`,!a.confirmMode())(`mb-4`,a.confirmMode()),se(2),Py(N_(13,22,`reset.bridge_all.list_1`)),se(3),Py(N_(16,24,`reset.bridge_all.list_2`)),se(3),Py(N_(19,26,`reset.bridge_all.list_3`)),se(3),Py(N_(22,28,`reset.bridge_all.list_4`)),se(2),Le(a.confirmMode()?23:-1),se(3),Mi$1(`disabled`,a.clicked()),Cr(`aria-label`,N_(27,30,`form.button_close`)),se(2),kt$1(` `,N_(29,32,`form.button_close`),` `),se(4),Le(a.confirmMode()?32:33))},dependencies:[v3],encapsulation:2})}return n})();function Qi(n,p){n&1&&(Pe(0,`div`,12),br(1,`i`,13),Je(),Pe(2,`p`,14),Ot$1(3),S_(4,`translate`),Je()),n&2&&(se(3),Py(N_(4,1,`reset.bridges.empty`)))}function Ji(n,p){if(n&1&&br(0,`i`,28)(1,`i`,29),n&2){let e=ve().$implicit;Ay(`opacity-muted`,e._matterOnly),se(),Ay(`opacity-muted`,!e._matter)}}function Yi(n,p){n&1&&br(0,`i`,22)}function Xi(n,p){if(n&1){let e=sc();Pe(0,`li`,20)(1,`span`,21),Fe(2,Ji,2,4)(3,Yi,1,0,`i`,22),Je(),Pe(4,`span`,23),Ot$1(5),br(6,`br`),Pe(7,`span`,24),Ot$1(8),S_(9,`titlecase`),Je(),br(10,`br`),Pe(11,`small`,25),Ot$1(12),Je()(),Pe(13,`button`,26),S_(14,`translate`),xi$1(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(3).toggleList(a._id,!1))}),br(15,`i`,27),Je()()}if(n&2){let e=p.$implicit,i=ve(3);se(2),Le(i.isMatterSupported?2:3),se(3),kt$1(` `,e.name,` `),se(3),Py(e._main?`Homebridge`:N_(9,18,e._category)),se(4),Py(e._username),se(),Ay(`btn-danger`,!i.isInList(e._id))(`btn-elegant`,i.isInList(e._id)),Mi$1(`disabled`,i.clicked()),Cr(`aria-label`,N_(14,20,`form.button_unpair`)),se(2),Ay(`fa-refresh`,!i.isInList(e._id))(`fa-undo`,i.isInList(e._id)&&!i.clicked())(`fa-circle-notch`,i.isInList(e._id)&&i.clicked())(`fa-spin`,i.isInList(e._id)&&i.clicked())}}function Zi(n,p){if(n&1&&(Pe(0,`ul`,16)(1,`li`,17)(2,`h6`,18),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`p`,19),Ot$1(6),S_(7,`translate`),Je()(),_T(8,Xi,16,22,`li`,20,TT),Je()),n&2){let e=ve(2);se(3),Py(N_(4,2,`reset.bridge_ind.head_non_child`)),se(3),Py(N_(7,4,`reset.bridge_ind.desc_non_child`)),se(2),ST(e.pairingsNonChild())}}function en(n,p){if(n&1&&br(0,`i`,28)(1,`i`,29),n&2){let e=ve().$implicit;se(),Ay(`opacity-muted`,!e._matter)}}function tn(n,p){n&1&&br(0,`i`,22)}function nn(n,p){if(n&1){let e=sc();Pe(0,`li`,20)(1,`span`,21),Fe(2,en,2,2)(3,tn,1,0,`i`,22),Je(),Pe(4,`span`,23),Ot$1(5),br(6,`br`),Pe(7,`small`,25),Ot$1(8),Je()(),Pe(9,`button`,26),S_(10,`translate`),xi$1(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(3).toggleList(a._id,!0))}),br(11,`i`,27),Je()()}if(n&2){let e=p.$implicit,i=ve(3);se(2),Le(i.isMatterSupported?2:3),se(3),kt$1(` `,e.name,` `),se(3),Py(e._username),se(),Ay(`btn-danger`,!i.isInList(e._id))(`btn-elegant`,i.isInList(e._id)),Mi$1(`disabled`,i.clicked()),Cr(`aria-label`,N_(10,17,`form.button_unpair`)),se(2),Ay(`fa-refresh`,!i.isInList(e._id))(`fa-undo`,i.isInList(e._id)&&!i.clicked())(`fa-circle-notch`,i.isInList(e._id)&&i.clicked())(`fa-spin`,i.isInList(e._id)&&i.clicked())}}function an(n,p){if(n&1&&(Pe(0,`ul`,16)(1,`li`,17)(2,`h6`,18),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`p`,19),Ot$1(6),S_(7,`translate`),Je()(),_T(8,nn,12,19,`li`,20,TT),Je()),n&2){let e=ve(2);se(3),Py(N_(4,2,`reset.bridge_ind.head_child_active`)),se(3),Py(N_(7,4,`reset.bridge_ind.desc_child_active`)),se(2),ST(e.pairingsChildActive())}}function sn(n,p){if(n&1&&br(0,`i`,28)(1,`i`,29),n&2){let e=ve().$implicit;se(),Ay(`opacity-muted`,!e._matter)}}function on(n,p){n&1&&br(0,`i`,22)}function rn(n,p){if(n&1){let e=sc();Pe(0,`li`,20)(1,`span`,21),Fe(2,sn,2,2)(3,on,1,0,`i`,22),Je(),Pe(4,`span`,23),Ot$1(5),br(6,`br`),Pe(7,`small`,25),Ot$1(8),Je()(),Pe(9,`button`,26),S_(10,`translate`),xi$1(`click`,function(){let a=Ko(e).$implicit;return Qo(ve(3).toggleList(a._id,!1))}),br(11,`i`,27),Je()()}if(n&2){let e=p.$implicit,i=ve(3);se(2),Le(i.isMatterSupported?2:3),se(3),kt$1(` `,e.name,` `),se(3),Py(e._username),se(),Ay(`btn-danger`,!i.isInList(e._id))(`btn-elegant`,i.isInList(e._id)),Mi$1(`disabled`,i.clicked()),Cr(`aria-label`,N_(10,17,`form.button_unpair`)),se(2),Ay(`fa-trash`,!i.isInList(e._id))(`fa-undo`,i.isInList(e._id)&&!i.clicked())(`fa-circle-notch`,i.isInList(e._id)&&i.clicked())(`fa-spin`,i.isInList(e._id)&&i.clicked())}}function ln(n,p){if(n&1&&(Pe(0,`ul`,16)(1,`li`,17)(2,`h6`,18),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`p`,19),Ot$1(6),S_(7,`translate`),Je()(),_T(8,rn,12,19,`li`,20,TT),Je()),n&2){let e=ve(2);se(3),Py(N_(4,2,`reset.bridge_ind.head_child_stale`)),se(3),Py(N_(7,4,`reset.bridge_ind.desc_child_stale`)),se(2),ST(e.pairingsChildStale())}}function dn(n,p){if(n&1&&(Pe(0,`div`,12),br(1,`i`,15),Je(),Fe(2,Zi,10,6,`ul`,16),Fe(3,an,10,6,`ul`,16),Fe(4,ln,10,6,`ul`,16)),n&2){let e=ve();se(2),Le(e.pairingsNonChild().length>0?2:-1),se(),Le(e.pairingsChildActive().length>0?3:-1),se(),Le(e.pairingsChildStale().length>0?4:-1)}}function cn(n,p){if(n&1){let e=sc();Pe(0,`button`,30),xi$1(`click`,function(){Ko(e);return Qo(ve().dismissModal())}),Ot$1(1),S_(2,`translate`),Je()}if(n&2)Mi$1(`disabled`,ve().clicked()),se(),kt$1(` `,N_(2,2,`form.button_close`),` `)}function pn(n,p){if(n&1){let e=sc();Pe(0,`button`,31),xi$1(`click`,function(){Ko(e);return Qo(ve().dismissModal())}),Ot$1(1),S_(2,`translate`),Je()}n&2&&(se(),kt$1(` `,N_(2,1,`form.button_close`),` `))}function mn(n,p){if(n&1&&Ot$1(0),n&2)kt$1(` (`,ve(3).toDelete().length,`) `)}function un(n,p){if(n&1&&(Ot$1(0),S_(1,`translate`),Fe(2,mn,1,1)),n&2){let e=ve(2);kt$1(` `,N_(1,2,`form.button_reset`),` `),se(2),Le(e.toDelete().length>0?2:-1)}}function hn(n,p){n&1&&br(0,`i`,33)}function gn(n,p){if(n&1){let e=sc();Pe(0,`button`,32),xi$1(`click`,function(){Ko(e);return Qo(ve().removeBridges())}),Fe(1,un,3,4)(2,hn,1,0,`i`,33),Je()}if(n&2){let e=ve();Mi$1(`disabled`,!e.toDelete().length||e.clicked()),se(),Le(e.clicked()?2:1)}}var Pt=(()=>{class n{$activeModal=g(fe);$accessoryOverview=g(Y$1);$api=g(U3);$router=g(le);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);clicked=q(!1);pairingsNonChild=q([]);pairingsChildActive=q([]);pairingsChildStale=q([]);toDelete=q([]);isMatterSupported=this.$settings.isFeatureEnabled(`matterSupport`);ngOnInit(){this.loadPairings()}toggleList(e,i=!1){this.toDelete().some(a=>a.id===e)?this.toDelete.set(this.toDelete().filter(a=>a.id!==e)):this.toDelete.update(a=>[...a,{id:e,resetPairingInfo:i}])}isInList(e){return this.toDelete().some(i=>i.id===e)}removeBridges(){return E(this,null,function*(){this.clicked.set(!0);try{yield this.$api.delete(`/server/pairings`,{body:this.toDelete()}),this.$accessoryOverview.invalidate(),this.$activeModal.close(),this.$router.navigate([`/restart`],{queryParams:{restarting:!0}}),this.$toastr.success(this.$translate.instant(`reset.bridge_ind.done`),this.$translate.instant(`toast.title_success`))}catch(e){this.clicked.set(!1),console.error(e),this.$toastr.error(this.$translate.instant(`reset.bridge_ind.fail`),this.$translate.instant(`toast.title_error`))}})}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}loadPairings(){return E(this,null,function*(){try{let{pairings:e}=yield this.$accessoryOverview.get(),i=e.filter(a=>!a._main).sort((a,v)=>a.name.localeCompare(v.name));this.pairingsChildActive.set(i.filter(a=>a._category===`bridge`&&!a._couldBeStale)),this.pairingsNonChild.set(i.filter(a=>a._category!==`bridge`)),this.pairingsChildStale.set(i.filter(a=>a._category===`bridge`&&a._couldBeStale))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant(`settings.unpair_bridge.load_error`),this.$translate.instant(`toast.title_error`)),this.$activeModal.close()}})}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-reset-individual-bridges`]],decls:17,vars:12,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`disabled`],[1,`text-center`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`disabled`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-circle-check`,`primary-text`,`icon-xl`],[1,`text-center`,`mb-0`],[1,`fas`,`fa-bridge`,`primary-text`,`icon-xl`],[1,`list-group`,`list-group-box`,`mt-3`,`mb-0`],[1,`list-group-item`],[1,`mb-1`,`text-center`],[1,`mb-0`,`small`,`grey-text`,`text-center`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`],[1,`me-3`],[1,`fas`,`fa-lg`,`fa-hap`],[1,`flex-grow-1`],[1,`grey-text`],[1,`grey-text`,`font-monospace`],[`type`,`button`,1,`btn`,`btn-danger`,`m-0`,`ms-3`,3,`click`,`disabled`],[1,`fas`],[1,`fas`,`fa-lg`,`fa-hap`,`me-2`],[1,`fas`,`fa-lg`,`fa-matter`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-danger`,3,`click`,`disabled`],[1,`fas`,`fa-circle-notch`,`fa-spin`]],template:function(i,a){i&1&&(Pe(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`button`,3),S_(6,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Je()(),Pe(7,`div`,4),Fe(8,Qi,5,3),Fe(9,dn,5,3),Je(),Pe(10,`div`,5)(11,`div`,6),Fe(12,cn,3,4,`button`,7),Je(),Pe(13,`div`,8),Fe(14,pn,3,3,`button`,9),Je(),Pe(15,`div`,10),Fe(16,gn,3,2,`button`,11),Je()()()),i&2&&(se(3),Py(N_(4,8,`reset.bridge_ind.title`)),se(2),Mi$1(`disabled`,a.clicked()),Cr(`aria-label`,N_(6,10,`form.button_close`)),se(3),Le(a.pairingsChildActive().length===0&&a.pairingsChildStale().length===0&&a.pairingsNonChild().length===0?8:-1),se(),Le(a.pairingsChildActive().length>0||a.pairingsChildStale().length>0||a.pairingsNonChild().length>0?9:-1),se(3),Le(a.pairingsChildActive().length>0||a.pairingsChildStale().length>0||a.pairingsNonChild().length>0?12:-1),se(2),Le(a.pairingsChildActive().length===0&&a.pairingsChildStale().length===0&&a.pairingsNonChild().length===0?14:-1),se(2),Le(a.pairingsChildActive().length>0||a.pairingsChildStale().length>0||a.pairingsNonChild().length>0?16:-1))},dependencies:[US,v3],styles:[`.opacity-muted[_ngcontent-%COMP%]{opacity:.25}`]})}return n})();function _n(n,p){if(n&1){let e=sc();Va$1(0,`li`,9)(1,`div`)(2,`span`,16),Ot$1(3),jd(),Dy(4,`br`),Va$1(5,`span`,17),Ot$1(6),jd()(),Va$1(7,`span`)(8,`input`,18),Uy(`ngModelChange`,function(a){let v=Ko(e).$implicit;return m_(v.selected,a)||(v.selected=a),Qo(a)}),ac(`ngModelChange`,function(){Ko(e);return Qo(ve().onAdapterSelectionChange())}),jd(),db(),Dy(9,`label`,19),jd()()}if(n&2){let e=p.$implicit;se(3),Py(e.ip4||e.ip6),se(3),Py(e.iface),se(2),vy(`id`,`adapter${e.iface}`),$y(`ngModel`,e.selected),pb(),se(),vy(`for`,`adapter${e.iface}`)}}var Dt=(()=>{class n{$activeModal=g(fe);modalData=g(i);adaptersAvailable=this.modalData.adaptersAvailable;adaptersSelected=this.modalData.adaptersSelected;isUnchanged=q(!0);adaptersOriginal=[];ngOnInit(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersSelected.some(i=>i.iface===e.iface)}),this.adaptersOriginal=this.adaptersSelected.map(e=>e.iface)}onAdapterSelectionChange(){this.isUnchanged.set(this.adaptersOriginal.length===this.adaptersAvailable.filter(e=>e.selected).length&&this.adaptersOriginal.every(e=>this.adaptersAvailable.some(i=>i.iface===e&&i.selected)))}submit(){this.$activeModal.close(this.adaptersAvailable.filter(e=>e.selected).map(e=>e.iface))}closeAndReset(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersOriginal.includes(e.iface)}),this.isUnchanged.set(!0),this.$activeModal.dismiss(`Dismiss`)}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-select-network-interfaces`]],decls:28,vars:19,consts:[[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`],[1,`modal-body`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-ethernet`,`primary-text`,`icon-xl`],[1,`mb-3`],[1,`list-group`,`list-group-box`],[1,`list-group-item`,`d-flex`,`justify-content-between`,`align-items-center`,`flex-row`,`pb-2`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`],[1,`text-center`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-primary`,3,`click`,`disabled`],[1,`font-monospace`],[1,`font-monospace`,`grey-text`],[`type`,`checkbox`,1,`rendux-input`,3,`ngModelChange`,`id`,`ngModel`],[1,`rendux-label`,`ms-3`,3,`for`]],template:function(i,a){i&1&&(Va$1(0,`div`,0)(1,`div`,1)(2,`h5`,2),Ot$1(3),S_(4,`translate`),jd(),Va$1(5,`button`,3),S_(6,`translate`),ac(`click`,function(){return a.closeAndReset()}),jd()(),Va$1(7,`div`,4)(8,`div`,5),Dy(9,`i`,6),jd(),Va$1(10,`ul`,7)(11,`li`),Ot$1(12),S_(13,`translate`),jd()(),Va$1(14,`ul`,8),_T(15,_n,10,5,`li`,9,TT),jd()(),Va$1(17,`div`,10)(18,`div`,11)(19,`button`,12),S_(20,`translate`),ac(`click`,function(){return a.closeAndReset()}),Ot$1(21),S_(22,`translate`),jd()(),Dy(23,`div`,13),Va$1(24,`div`,14)(25,`button`,15),ac(`click`,function(){return a.submit()}),Ot$1(26),S_(27,`translate`),jd()()()()),i&2&&(se(3),Py(N_(4,7,`settings.network.title_network_interfaces`)),se(2),Cr(`aria-label`,N_(6,9,`form.button_close`)),se(7),Py(N_(13,11,`settings.network.message_network_interface`)),se(3),ST(a.adaptersAvailable),se(4),Cr(`aria-label`,N_(20,13,`form.button_close`)),se(2),kt$1(` `,N_(22,15,`form.button_close`),` `),se(4),vy(`disabled`,a.isUnchanged()),se(),kt$1(` `,N_(27,17,`form.button_save`),` `))},dependencies:[Kn$1,Mt$1,Hn$1,ln$1,v3],encapsulation:2})}return n})();var vn=[`keyInput`];var fn=[`certInput`];var bn=[`pfxInput`];function Cn(n,p){n&1&&Dy(0,`i`,17)}function xn(n,p){n&1&&Dy(0,`i`,17)}function Sn(n,p){n&1&&Dy(0,`i`,17)}function yn(n,p){n&1&&Dy(0,`i`,17)}function In(n,p){if(n&1&&(Va$1(0,`ul`,24)(1,`li`,29),Ot$1(2),S_(3,`translate`),Dy(4,`input`,30),db(),Va$1(5,`small`,31),Ot$1(6),S_(7,`translate`),jd()()()),n&2){let e=ve();se(2),kt$1(` `,N_(3,3,`settings.security.selfsigned_hostnames`),` `),se(2),vy(`formControl`,e.hostnamesControl),pb(),se(2),Py(N_(7,5,`settings.security.selfsigned_hostnames_desc`))}}function En(n,p){if(n&1&&(Va$1(0,`small`,33),Ot$1(1),jd()),n&2){let e=ve(2);se(),Py(e.pendingKeyFile()?.name)}}function wn(n,p){if(n&1&&(Va$1(0,`small`,34),Ot$1(1),jd()),n&2){let e=ve(2);se(),Py(e.keyPathControl.value)}}function Tn(n,p){if(n&1&&(Va$1(0,`small`,33),Ot$1(1),jd()),n&2){let e=ve(2);se(),Py(e.pendingCertFile()?.name)}}function kn(n,p){if(n&1&&(Va$1(0,`small`,34),Ot$1(1),jd()),n&2){let e=ve(2);se(),Py(e.certPathControl.value)}}function $n(n,p){if(n&1){let e=sc();Va$1(0,`ul`,24)(1,`li`,29),Ot$1(2),S_(3,`translate`),Va$1(4,`input`,32,0),ac(`change`,function(a){Ko(e);return Qo(ve().onKeyChange(a))}),jd(),Fe(6,En,2,1,`small`,33)(7,wn,2,1,`small`,34),jd(),Va$1(8,`li`,29),Ot$1(9),S_(10,`translate`),Va$1(11,`input`,35,1),ac(`change`,function(a){Ko(e);return Qo(ve().onCertChange(a))}),jd(),Fe(13,Tn,2,1,`small`,33)(14,kn,2,1,`small`,34),jd()()}if(n&2){let e=ve();se(2),kt$1(` `,N_(3,4,`settings.security.key`),` `),se(4),Le(e.pendingKeyFile()?6:e.keyPathControl.value?7:-1),se(3),kt$1(` `,N_(10,6,`settings.security.cert`),` `),se(4),Le(e.pendingCertFile()?13:e.certPathControl.value?14:-1)}}function Mn(n,p){if(n&1&&(Va$1(0,`small`,33),Ot$1(1),jd()),n&2){let e=ve(2);se(),Py(e.pendingPfxFile()?.name)}}function Bn(n,p){if(n&1&&(Va$1(0,`small`,34),Ot$1(1),jd()),n&2){let e=ve(2);se(),Py(e.pfxPathControl.value)}}function Fn(n,p){if(n&1){let e=sc();Va$1(0,`ul`,24)(1,`li`,29),Ot$1(2),S_(3,`translate`),Va$1(4,`input`,36,2),ac(`change`,function(a){Ko(e);return Qo(ve().onPfxChange(a))}),jd(),Fe(6,Mn,2,1,`small`,33)(7,Bn,2,1,`small`,34),jd(),Va$1(8,`li`,29),Ot$1(9),S_(10,`translate`),Dy(11,`input`,37),db(),Va$1(12,`small`,31),Ot$1(13),S_(14,`translate`),jd()()()}if(n&2){let e=ve();se(2),kt$1(` `,N_(3,5,`settings.security.pfx`),` `),se(4),Le(e.pendingPfxFile()?6:e.pfxPathControl.value?7:-1),se(3),kt$1(` `,N_(10,7,`settings.security.pass`),` `),se(2),vy(`formControl`,e.passphraseControl),pb(),se(2),Py(N_(14,9,`settings.security.pass_optional`))}}function Pn(n,p){n&1&&Dy(0,`i`,28)}var Rt=(()=>{class n{destroyRef=g(Z);$api=g(U3);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);$activeModal=g(fe);keyInput=a$(`keyInput`);certInput=a$(`certInput`);pfxInput=a$(`pfxInput`);selectedMode=q(`off`);isSaving=q(!1);isUnchanged=q(!0);pendingKeyFile=q(null);pendingCertFile=q(null);pendingPfxFile=q(null);sslModeControl=new Se(`off`,{nonNullable:!0});hostnamesControl=new Se(``,{nonNullable:!0});keyPathControl=new Se(``,{nonNullable:!0});certPathControl=new Se(``,{nonNullable:!0});pfxPathControl=new Se(``,{nonNullable:!0});passphraseControl=new Se(``,{nonNullable:!0});isFormInvalid=J(()=>{switch(this.selectedMode()){case`selfsigned`:return!this.hostnamesControl.value.trim();case`keycert`:{let i=!!this.pendingKeyFile()||!!this.keyPathControl.value,a=!!this.pendingCertFile()||!!this.certPathControl.value;return!i||!a}case`pfx`:return!(!!this.pendingPfxFile()||!!this.pfxPathControl.value);default:return!1}});originalConfig={mode:`off`,hostnames:``,keyPath:``,certPath:``,pfxPath:``,passphrase:``};ngOnInit(){this.keyPathControl.patchValue(this.$settings.env.ssl?.key||``,{emitEvent:!1}),this.certPathControl.patchValue(this.$settings.env.ssl?.cert||``,{emitEvent:!1}),this.pfxPathControl.patchValue(this.$settings.env.ssl?.pfx||``,{emitEvent:!1}),this.passphraseControl.patchValue(``,{emitEvent:!1}),this.hostnamesControl.patchValue(`localhost, 127.0.0.1`,{emitEvent:!1});let e=this.keyPathControl.value||this.certPathControl.value?`keycert`:this.pfxPathControl.value||this.$settings.env.ssl?.hasPassphrase?`pfx`:`off`;this.selectedMode.set(e),this.sslModeControl.patchValue(e,{emitEvent:!1}),this.originalConfig={mode:e,hostnames:this.hostnamesControl.value,keyPath:this.keyPathControl.value,certPath:this.certPathControl.value,pfxPath:this.pfxPathControl.value,passphrase:this.passphraseControl.value},this.sslModeControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(i=>{this.selectMode(i)}),this.hostnamesControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(()=>this.detectChanges()),this.keyPathControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(()=>this.detectChanges()),this.certPathControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(()=>this.detectChanges()),this.pfxPathControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(()=>this.detectChanges()),this.passphraseControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(()=>this.detectChanges())}selectMode(e){this.selectedMode.set(e),e===`selfsigned`&&!this.hostnamesControl.value&&this.hostnamesControl.patchValue(`localhost, 127.0.0.1`,{emitEvent:!1}),this.detectChanges()}detectChanges(){let e={mode:this.selectedMode(),hostnames:this.hostnamesControl.value,keyPath:this.keyPathControl.value,certPath:this.certPathControl.value,pfxPath:this.pfxPathControl.value,passphrase:this.passphraseControl.value},i=e.mode!==this.originalConfig.mode||e.hostnames!==this.originalConfig.hostnames||e.keyPath!==this.originalConfig.keyPath||e.certPath!==this.originalConfig.certPath||e.pfxPath!==this.originalConfig.pfxPath||e.passphrase!==this.originalConfig.passphrase||!!this.pendingKeyFile()||!!this.pendingCertFile()||!!this.pendingPfxFile();this.isUnchanged.set(!i)}onKeyChange(e){let i=e.target.files;this.pendingKeyFile.set(i&&i.length>0?i[0]:null),this.detectChanges()}onCertChange(e){let i=e.target.files;this.pendingCertFile.set(i&&i.length>0?i[0]:null),this.detectChanges()}onPfxChange(e){let i=e.target.files;this.pendingPfxFile.set(i&&i.length>0?i[0]:null),this.detectChanges()}saveConfiguration(){return E(this,null,function*(){this.isSaving.set(!0);try{let e={};switch(this.selectedMode()){case`off`:e[`ssl.key`]=``,e[`ssl.cert`]=``,e[`ssl.pfx`]=``,e[`ssl.passphrase`]=``;break;case`selfsigned`:{let i=this.hostnamesControl.value.split(`,`).map(v=>v.trim()).filter(v=>!!v),a=yield this.$api.post(`/server/ssl/selfsigned/generate`,{hostnames:i,mode:`keycert`});a?.keyPath&&this.$settings.setEnvItem(`ssl.key`,a.keyPath),a?.certPath&&this.$settings.setEnvItem(`ssl.cert`,a.certPath),this.$settings.setEnvItem(`ssl.pfx`,``),this.$settings.setEnvItem(`ssl.passphrase`,``),this.$activeModal.close(`keycert`);return}case`keycert`:{let i=this.pendingKeyFile(),a=this.pendingCertFile();if(i||a){if(!i||!a)throw new Error(this.$translate.instant(`settings.security.upload_both_files`));let v=new FormData;v.append(`uploads`,i,i.name),v.append(`uploads`,a,a.name);let N=yield this.$api.post(`/server/ssl/keycert`,v);N?.keyPath&&this.keyPathControl.patchValue(N.keyPath,{emitEvent:!1}),N?.certPath&&this.certPathControl.patchValue(N.certPath,{emitEvent:!1}),this.pendingKeyFile.set(null),this.pendingCertFile.set(null),this.resetFileInput(this.keyInput()),this.resetFileInput(this.certInput())}e[`ssl.pfx`]=``,e[`ssl.passphrase`]=``,e[`ssl.key`]=this.keyPathControl.value,e[`ssl.cert`]=this.certPathControl.value;break}case`pfx`:{let i=this.pendingPfxFile();if(i){let a=new FormData;a.append(`upload`,i,i.name),a.append(`passphrase`,this.passphraseControl.value);let v=yield this.$api.post(`/server/ssl/pfx`,a);v?.pfxPath&&this.pfxPathControl.patchValue(v.pfxPath,{emitEvent:!1}),this.pendingPfxFile.set(null),this.resetFileInput(this.pfxInput())}e[`ssl.key`]=``,e[`ssl.cert`]=``,e[`ssl.pfx`]=this.pfxPathControl.value,e[`ssl.passphrase`]=this.passphraseControl.value;break}}if(Object.keys(e).length>0){yield this.$api.patch(`/config-editor/ui`,e);for(let[i,a]of Object.entries(e))this.$settings.setEnvItem(i,a)}this.$activeModal.close(this.selectedMode())}catch(e){console.error(e);let i=e?.error?.message||e?.message||`Unknown error`;this.$toastr.error(i,this.$translate.instant(`toast.title_error`))}finally{this.isSaving.set(!1)}})}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}resetFileInput(e){e&&(e.nativeElement.value=``)}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-ssl-settings-modal`]],viewQuery:function(i,a){i&1&&My(a.keyInput,vn,5)(a.certInput,fn,5)(a.pfxInput,bn,5),i&2&&$T(3)},decls:77,vars:81,consts:[[`keyInput`,``],[`certInput`,``],[`pfxInput`,``],[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`],[1,`modal-body`],[`role`,`radiogroup`,1,`list-group`,`list-group-box`,`mb-0`],[1,`list-group-item`,`text-start`],[1,`d-flex`,`align-items-center`,`w-100`,`mb-0`,`cursor-pointer`],[`type`,`radio`,`name`,`sslMode`,`value`,`off`,1,`visually-hidden`,3,`formControl`],[1,`me-3`],[`aria-hidden`,`true`,1,`fas`,`fa-ban`,`fa-2x`],[1,`flex-grow-1`],[`aria-hidden`,`true`],[1,`grey-text`],[`aria-hidden`,`true`,1,`fas`,`fa-check-circle`,`primary-text`,`fa-xl`],[`type`,`radio`,`name`,`sslMode`,`value`,`selfsigned`,1,`visually-hidden`,3,`formControl`],[`aria-hidden`,`true`,1,`fas`,`fa-shield-alt`,`fa-2x`],[`type`,`radio`,`name`,`sslMode`,`value`,`keycert`,1,`visually-hidden`,3,`formControl`],[`aria-hidden`,`true`,1,`fas`,`fa-key`,`fa-2x`],[`type`,`radio`,`name`,`sslMode`,`value`,`pfx`,1,`visually-hidden`,3,`formControl`],[`aria-hidden`,`true`,1,`fas`,`fa-certificate`,`fa-2x`],[1,`list-group`,`list-group-box`,`mt-4`,`mb-0`],[1,`modal-footer`,`justify-content-between`],[`type`,`button`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[`type`,`button`,1,`btn`,`btn-primary`,3,`click`,`disabled`],[1,`fas`,`fa-spinner`,`fa-spin`,`me-2`],[1,`list-group-item`],[`type`,`text`,`placeholder`,`localhost, 127.0.0.1, homebridge.local`,1,`form-control`,`font-monospace`,3,`formControl`],[1,`form-text`,`grey-text`],[`type`,`file`,`accept`,`.pem,.key`,1,`form-control`,3,`change`],[1,`form-text`,`primary-text`,`font-monospace`],[1,`form-text`,`grey-text`,`font-monospace`],[`type`,`file`,`accept`,`.pem,.crt`,1,`form-control`,3,`change`],[`type`,`file`,`accept`,`.pfx,.p12`,1,`form-control`,3,`change`],[`type`,`password`,`placeholder`,`••••••••`,1,`form-control`,`font-monospace`,3,`formControl`]],template:function(i,a){i&1&&(Va$1(0,`div`,3)(1,`div`,4)(2,`h5`,5),Ot$1(3),S_(4,`translate`),jd(),Va$1(5,`button`,6),S_(6,`translate`),ac(`click`,function(){return a.dismissModal()}),jd()(),Va$1(7,`div`,7)(8,`ul`,8),S_(9,`translate`),Va$1(10,`li`,9)(11,`label`,10),Dy(12,`input`,11),S_(13,`translate`),db(),Va$1(14,`div`,12),Dy(15,`i`,13),jd(),Va$1(16,`div`,14)(17,`div`,15),Ot$1(18),S_(19,`translate`),jd(),Va$1(20,`small`,16),Ot$1(21),S_(22,`translate`),jd()(),Fe(23,Cn,1,0,`i`,17),jd()(),Va$1(24,`li`,9)(25,`label`,10),Dy(26,`input`,18),S_(27,`translate`),db(),Va$1(28,`div`,12),Dy(29,`i`,19),jd(),Va$1(30,`div`,14)(31,`div`,15),Ot$1(32),S_(33,`translate`),jd(),Va$1(34,`small`,16),Ot$1(35),S_(36,`translate`),jd()(),Fe(37,xn,1,0,`i`,17),jd()(),Va$1(38,`li`,9)(39,`label`,10),Dy(40,`input`,20),S_(41,`translate`),db(),Va$1(42,`div`,12),Dy(43,`i`,21),jd(),Va$1(44,`div`,14)(45,`div`,15),Ot$1(46),S_(47,`translate`),jd(),Va$1(48,`small`,16),Ot$1(49),S_(50,`translate`),jd()(),Fe(51,Sn,1,0,`i`,17),jd()(),Va$1(52,`li`,9)(53,`label`,10),Dy(54,`input`,22),S_(55,`translate`),db(),Va$1(56,`div`,12),Dy(57,`i`,23),jd(),Va$1(58,`div`,14)(59,`div`,15),Ot$1(60),S_(61,`translate`),jd(),Va$1(62,`small`,16),Ot$1(63),S_(64,`translate`),jd()(),Fe(65,yn,1,0,`i`,17),jd()()(),Fe(66,In,8,7,`ul`,24),Fe(67,$n,15,8,`ul`,24),Fe(68,Fn,15,11,`ul`,24),jd(),Va$1(69,`div`,25)(70,`button`,26),ac(`click`,function(){return a.dismissModal()}),Ot$1(71),S_(72,`translate`),jd(),Va$1(73,`button`,27),ac(`click`,function(){return a.saveConfiguration()}),Fe(74,Pn,1,0,`i`,28),Ot$1(75),S_(76,`translate`),jd()()()),i&2&&(se(3),Py(N_(4,47,`settings.security.https_configure`)),se(2),Cr(`aria-label`,N_(6,49,`form.button_close`)),se(3),Cr(`aria-label`,N_(9,51,`settings.security.https_configure`)),se(4),vy(`formControl`,a.sslModeControl),Cr(`aria-label`,N_(13,53,`settings.security.ssl_mode_off`)),pb(),se(3),Ay(`primary-text`,a.selectedMode()===`off`)(`grey-text`,a.selectedMode()!==`off`),se(3),Py(N_(19,55,`settings.security.ssl_mode_off`)),se(3),Py(N_(22,57,`settings.security.ssl_mode_off_desc`)),se(2),Le(a.selectedMode()===`off`?23:-1),se(3),vy(`formControl`,a.sslModeControl),Cr(`aria-label`,N_(27,59,`settings.security.ssl_mode_selfsigned`)),pb(),se(3),Ay(`primary-text`,a.selectedMode()===`selfsigned`)(`grey-text`,a.selectedMode()!==`selfsigned`),se(3),Py(N_(33,61,`settings.security.ssl_mode_selfsigned`)),se(3),Py(N_(36,63,`settings.security.ssl_mode_selfsigned_desc`)),se(2),Le(a.selectedMode()===`selfsigned`?37:-1),se(3),vy(`formControl`,a.sslModeControl),Cr(`aria-label`,N_(41,65,`settings.security.ssl_mode_keycert`)),pb(),se(3),Ay(`primary-text`,a.selectedMode()===`keycert`)(`grey-text`,a.selectedMode()!==`keycert`),se(3),Py(N_(47,67,`settings.security.ssl_mode_keycert`)),se(3),Py(N_(50,69,`settings.security.ssl_mode_keycert_desc`)),se(2),Le(a.selectedMode()===`keycert`?51:-1),se(3),vy(`formControl`,a.sslModeControl),Cr(`aria-label`,N_(55,71,`settings.security.ssl_mode_pfx`)),pb(),se(3),Ay(`primary-text`,a.selectedMode()===`pfx`)(`grey-text`,a.selectedMode()!==`pfx`),se(3),Py(N_(61,73,`settings.security.ssl_mode_pfx`)),se(3),Py(N_(64,75,`settings.security.ssl_mode_pfx_desc`)),se(2),Le(a.selectedMode()===`pfx`?65:-1),se(),Le(a.selectedMode()===`selfsigned`?66:-1),se(),Le(a.selectedMode()===`keycert`?67:-1),se(),Le(a.selectedMode()===`pfx`?68:-1),se(2),vy(`disabled`,a.isSaving()),se(),kt$1(` `,N_(72,77,`form.button_close`),` `),se(2),vy(`disabled`,a.isSaving()||a.isUnchanged()||a.isFormInvalid()),se(),Le(a.isSaving()?74:-1),se(),kt$1(` `,N_(76,79,`form.button_save`),` `))},dependencies:[Jn$1,Ye,fn$1,Hn$1,mn$1,v3],encapsulation:2})}return n})();var Dn=[`wallpaperInput`];var Rn=n=>({maxFileSizeText:n});function Vn(n,p){if(n&1){let e=sc();Pe(0,`div`,10),br(1,`img`,20),Pe(2,`button`,21),S_(3,`translate`),xi$1(`click`,function(){Ko(e);return Qo(ve().clearWallpaper())}),br(4,`i`,22),Je()()}if(n&2){let e=ve();se(),Mi$1(`src`,e.wallpaperUrl(),Xg),se(),Cr(`aria-label`,N_(3,2,`form.button_delete`))}}function An(n,p){n&1&&br(0,`div`,11)}var Vt=(()=>{class n{$activeModal=g(fe);$api=g(U3);$errors=g(m);$settings=g(zt$1);$toastr=g(z0);$translate=g(Nf);wallpaperInput=a$(`wallpaperInput`);clicked=q(!1);selectedFile=q(null);wallpaperUrl=q(null);originalWallpaperUrl=q(null);maxFileSizeText=globalThis.backup.maxBackupSizeText;ngOnInit(){this.$settings.env.customWallpaperHash&&(this.wallpaperUrl.set(`${Co.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`),this.originalWallpaperUrl.set(this.wallpaperUrl()))}onFileChange(e){let i=e.target.files;if(i?.length){let a=i[0];if(a.size>globalThis.backup.maxBackupSize){e.target.value=``,this.selectedFile.set(null),this.wallpaperUrl.set(this.originalWallpaperUrl()),this.$toastr.error(this.$translate.instant(`backup.backup_exceeds_max_size`,{maxBackupSizeText:this.maxFileSizeText,size:`${(a.size/(1024*1024)).toFixed(1)}MB`}),this.$translate.instant(`toast.title_error`));return}this.selectedFile.set(a);let v=new FileReader;v.onload=N=>{this.wallpaperUrl.set(N.target.result)},v.readAsDataURL(this.selectedFile())}else this.selectedFile.set(null),this.wallpaperUrl.set(this.originalWallpaperUrl())}saveWallpaper(){return E(this,null,function*(){this.clicked.set(!0);try{if(this.selectedFile()){let e=new FormData;e.append(`wallpaper`,this.selectedFile(),this.selectedFile()?.name),yield this.$api.post(`/server/wallpaper`,e),this.$settings.setItem(`wallpaper`,`ui-wallpaper.${this.selectedFile()?.name.split(`.`).pop()}`),this.$activeModal.close(),this.$toastr.success(this.$translate.instant(`settings.display.wallpaper_success`),this.$translate.instant(`toast.title_success`))}else yield this.$api.delete(`/server/wallpaper`),this.$activeModal.close()}catch(e){console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`)),this.clicked.set(!1)}})}clearWallpaper(){this.selectedFile.set(null),this.wallpaperUrl.set(this.wallpaperUrl()===this.originalWallpaperUrl()?null:this.originalWallpaperUrl());let e=this.wallpaperInput();e&&(e.nativeElement.value=``)}dismissModal(){this.$activeModal.dismiss(`Dismiss`)}static ɵfac=function(i){return new(i||n)};static ɵcmp=nc({type:n,selectors:[[`app-wallpaper`]],viewQuery:function(i,a){i&1&&My(a.wallpaperInput,Dn,5),i&2&&$T()},decls:36,vars:28,consts:[[`wallpaperInput`,``],[1,`modal-content`],[1,`modal-header`],[1,`modal-title`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn-close`,3,`click`,`disabled`],[1,`modal-body`],[1,`text-center`,`mb-3`],[1,`fas`,`fa-image`,`primary-text`,`icon-xl`],[1,`mb-3`],[1,`mb-3`,`text-center`],[1,`position-relative`,`d-inline-block`],[1,`gradient`,`anim`,`rounded`,`wallpaper-placeholder`],[1,`mb-0`],[`type`,`file`,`id`,`wallpaper`,`accept`,`image/*`,1,`form-control`,3,`change`],[1,`modal-footer`,`justify-content-between`],[1,`text-start`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-elegant`,3,`click`,`disabled`],[1,`text-center`],[1,`text-end`],[`type`,`button`,`data-bs-dismiss`,`modal`,1,`btn`,`btn-primary`,3,`click`,`disabled`],[`alt`,`Current Wallpaper`,1,`img-fluid`,`rounded`,`mx-auto`,`d-block`,`wallpaper-preview`,3,`src`],[`type`,`button`,1,`btn`,`btn-danger`,`position-absolute`,`wallpaper-delete-btn`,3,`click`],[1,`fas`,`fa-trash`]],template:function(i,a){i&1&&(Pe(0,`div`,1)(1,`div`,2)(2,`h5`,3),Ot$1(3),S_(4,`translate`),Je(),Pe(5,`button`,4),S_(6,`translate`),xi$1(`click`,function(){return a.dismissModal()}),Je()(),Pe(7,`div`,5)(8,`div`,6),br(9,`i`,7),Je(),Pe(10,`ul`,8)(11,`li`),Ot$1(12),S_(13,`translate`),Je(),Pe(14,`li`),Ot$1(15),S_(16,`translate`),Je(),Pe(17,`li`),Ot$1(18),S_(19,`translate`),Je()(),Pe(20,`div`,9),Fe(21,Vn,5,4,`div`,10)(22,An,1,0,`div`,11),Je(),Pe(23,`div`,12)(24,`input`,13,0),xi$1(`change`,function(N){return a.onFileChange(N)}),Je()()(),Pe(26,`div`,14)(27,`div`,15)(28,`button`,16),xi$1(`click`,function(){return a.dismissModal()}),Ot$1(29),S_(30,`translate`),Je()(),br(31,`div`,17),Pe(32,`div`,18)(33,`button`,19),xi$1(`click`,function(){return a.saveWallpaper()}),Ot$1(34),S_(35,`translate`),Je()()()()),i&2&&(se(3),Py(N_(4,11,`settings.display.wallpaper`)),se(2),Mi$1(`disabled`,a.clicked()),Cr(`aria-label`,N_(6,13,`form.button_close`)),se(7),Py(N_(13,15,`settings.display.wallpaper_intro`)),se(3),Py(x_(16,17,`settings.display.wallpaper_rule`,w_(26,Rn,a.maxFileSizeText))),se(3),Py(N_(19,20,`settings.display.wallpaper_rule2`)),se(3),Le(a.wallpaperUrl()?21:22),se(7),Mi$1(`disabled`,a.clicked()),se(),kt$1(` `,N_(30,22,`form.button_close`),` `),se(4),Mi$1(`disabled`,a.wallpaperUrl()===a.originalWallpaperUrl()||a.clicked()),se(),kt$1(` `,N_(35,24,`form.button_save`),` `))},dependencies:[Jn$1,v3],styles:[`.anim[_ngcontent-%COMP%]{-webkit-animation:_ngcontent-%COMP%_gradient 20s ease infinite;-moz-animation:gradient 20s ease infinite;animation:_ngcontent-%COMP%_gradient 20s ease infinite}.wallpaper-preview[_ngcontent-%COMP%]{height:200px}.wallpaper-delete-btn[_ngcontent-%COMP%]{top:10px;right:10px}.wallpaper-placeholder[_ngcontent-%COMP%]{height:200px;width:350px;margin:0 auto}@keyframes _ngcontent-%COMP%_gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}`]})}return n})();var Nn=[`searchInput`];var Hn=()=>({standalone:!0});var Me=n=>({link:n});function Ln(n,p){if(n&1){let e=sc();Va$1(0,`button`,13),S_(1,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(2).clearSearch())}),Dy(2,`i`,14),jd()}n&2&&Cr(`aria-label`,N_(1,1,`form.button_clear`))}function On(n,p){if(n&1){let e=sc();Va$1(0,`div`,7)(1,`div`,9)(2,`form`,10)(3,`input`,11,0),S_(5,`translate`),ac(`ngModelChange`,function(a){Ko(e);return Qo(ve().onSearchChange(a))}),jd(),db(),Fe(6,Ln,3,3,`button`,12),jd()()()}if(n&2){let e=ve();se(3),vy(`placeholder`,N_(5,4,`form.search`))(`ngModel`,e.searchQuery())(`ngModelOptions`,I_(6,Hn)),pb(),se(3),Le(e.searchQuery()?6:-1)}}function zn(n,p){n&1&&Dy(0,`app-spinner`)}function Un(n,p){n&1&&Dy(0,`i`,26)}function Wn(n,p){if(n&1){let e=sc();Va$1(0,`ul`,21)(1,`li`,22)(2,`div`,23)(3,`span`),Ot$1(4),S_(5,`translate`),jd(),Va$1(6,`div`,24),Dy(7,`input`,25),S_(8,`translate`),db(),Fe(9,Un,1,0,`i`,26),jd()()(),Va$1(10,`li`,22)(11,`div`,27)(12,`span`,28),Ot$1(13),S_(14,`translate`),jd(),Va$1(15,`button`,29),S_(16,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).openBackupModal())}),Dy(17,`i`,30),jd()()(),Va$1(18,`li`,22)(19,`div`,27)(20,`span`,28),Ot$1(21),S_(22,`translate`),jd(),Va$1(23,`button`,29),S_(24,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).openConfigBackup())}),Dy(25,`i`,30),jd()()(),Va$1(26,`li`,22)(27,`div`,27)(28,`span`,28),Ot$1(29),S_(30,`translate`),jd(),Va$1(31,`a`,31),S_(32,`translate`),Dy(33,`i`,30),jd()()()()}if(n&2){let e=ve(3);se(),Ay(`setting-hidden`,e.isItemHidden(`setting-name`)),Cr(`inert`,e.isItemHidden(`setting-name`)||null),se(3),Py(N_(5,24,`settings.name`)),se(3),Ay(`is-invalid`,e.hbNameIsInvalid()),vy(`formControl`,e.hbNameFormControl),Cr(`aria-label`,N_(8,26,`settings.name`)),pb(),se(2),Le(e.hbNameIsSaving()?9:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-backup`)),Cr(`inert`,e.isItemHidden(`setting-backup`)||null),se(3),Py(N_(14,28,`backup.title_backup`)),se(2),Cr(`aria-label`,N_(16,30,`backup.title_backup`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-restore`)),Cr(`inert`,e.isItemHidden(`setting-restore`)||null),se(3),Py(N_(22,32,`config.restore.title`)),se(2),Cr(`aria-label`,N_(24,34,`config.restore.title`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-users`)),Cr(`inert`,e.isItemHidden(`setting-users`)||null),se(3),Py(N_(30,36,`menu.tooltip_user_accounts`)),se(2),Cr(`aria-label`,N_(32,38,`menu.tooltip_user_accounts`))}}function jn(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`general`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,Wn,34,40,`ul`,21),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().general?`true`:`false`)(`aria-controls`,`fieldsGeneral`),se(),Ay(`fa-chevron-down`,e.showFields().general)(`fa-chevron-right`,!e.showFields().general),se(),kt$1(` `,N_(5,8,`settings.general.title_general`),` `),se(2),Le(e.showFields().general?6:-1)}}function Kn(n,p){n&1&&Dy(0,`i`,26)}function Gn(n,p){n&1&&Dy(0,`i`,26)}function qn(n,p){n&1&&Dy(0,`i`,26)}function Qn(n,p){n&1&&Dy(0,`i`,26)}function Jn(n,p){n&1&&Dy(0,`i`,26)}function Yn(n,p){n&1&&Dy(0,`i`,26)}function Xn(n,p){if(n&1&&(Va$1(0,`option`,87),Ot$1(1),jd()),n&2){let e=p.$implicit;vy(`value`,e),se(),Py(e)}}function Zn(n,p){if(n&1&&(Va$1(0,`option`,87),Ot$1(1),jd()),n&2){let e=p.$implicit;vy(`value`,e),se(),Py(e)}}function ea(n,p){if(n&1&&(Va$1(0,`option`,87),Ot$1(1),jd()),n&2){let e=p.$implicit;vy(`value`,e),se(),Py(e===`light`?`Light`:`Dark`)}}function ta(n,p){if(n&1){let e=sc();Va$1(0,`ul`,32)(1,`li`,22)(2,`div`,23),Ot$1(3),S_(4,`translate`),Va$1(5,`div`,24)(6,`select`,33)(7,`option`,34),Ot$1(8),S_(9,`translate`),jd(),Va$1(10,`option`,35),Ot$1(11,`English (en)`),jd(),Va$1(12,`option`,36),Ot$1(13,`Bulgarian (bg)`),jd(),Va$1(14,`option`,37),Ot$1(15,`Catalan (ca)`),jd(),Va$1(16,`option`,38),Ot$1(17,`Chinese - Simplified (zh-CN)`),jd(),Va$1(18,`option`,39),Ot$1(19,`Chinese - Traditional (zh-TW)`),jd(),Va$1(20,`option`,40),Ot$1(21,`Czech (cs)`),jd(),Va$1(22,`option`,41),Ot$1(23,`Finnish (fi)`),jd(),Va$1(24,`option`,42),Ot$1(25,`French (fr)`),jd(),Va$1(26,`option`,43),Ot$1(27,`German (de)`),jd(),Va$1(28,`option`,44),Ot$1(29,`Hungarian (hu)`),jd(),Va$1(30,`option`,45),Ot$1(31,`Indonesian (id)`),jd(),Va$1(32,`option`,46),Ot$1(33,`Hebrew (he)`),jd(),Va$1(34,`option`,47),Ot$1(35,`Italian (it)`),jd(),Va$1(36,`option`,48),Ot$1(37,`Japanese (ja)`),jd(),Va$1(38,`option`,49),Ot$1(39,`Korean (ko)`),jd(),Va$1(40,`option`,50),Ot$1(41,`Macedonian (mk)`),jd(),Va$1(42,`option`,51),Ot$1(43,`Dutch (nl)`),jd(),Va$1(44,`option`,52),Ot$1(45,`Norwegian (no)`),jd(),Va$1(46,`option`,53),Ot$1(47,`Polish (pl)`),jd(),Va$1(48,`option`,54),Ot$1(49,`Portuguese (Portugal)`),jd(),Va$1(50,`option`,55),Ot$1(51,`Portuguese (Brazil)`),jd(),Va$1(52,`option`,56),Ot$1(53,`Russian (ru)`),jd(),Va$1(54,`option`,57),Ot$1(55,`Slovenian (sl)`),jd(),Va$1(56,`option`,58),Ot$1(57,`Spanish (es)`),jd(),Va$1(58,`option`,59),Ot$1(59,`Swedish (sv)`),jd(),Va$1(60,`option`,60),Ot$1(61,`Thai (th)`),jd(),Va$1(62,`option`,61),Ot$1(63,`Turkish (tr)`),jd(),Va$1(64,`option`,62),Ot$1(65,`Ukrainian (uk)`),jd(),Va$1(66,`option`,63),Ot$1(67,`Vietnamese (vi)`),jd()(),db(),Fe(68,Kn,1,0,`i`,26),jd()()(),Va$1(69,`li`,22)(70,`div`,23),Ot$1(71),S_(72,`translate`),Va$1(73,`div`,24)(74,`select`,33)(75,`option`,64),Ot$1(76),S_(77,`translate`),jd(),Va$1(78,`option`,65),Ot$1(79),S_(80,`translate`),jd(),Va$1(81,`option`,66),Ot$1(82),S_(83,`translate`),jd(),Va$1(84,`option`,67),Ot$1(85),S_(86,`translate`),jd(),Va$1(87,`option`,68),Ot$1(88),S_(89,`translate`),jd(),Va$1(90,`option`,69),Ot$1(91),S_(92,`translate`),jd(),Va$1(93,`option`,70),Ot$1(94),S_(95,`translate`),jd(),Va$1(96,`option`,71),Ot$1(97),S_(98,`translate`),jd(),Va$1(99,`option`,72),Ot$1(100),S_(101,`translate`),jd(),Va$1(102,`option`,73),Ot$1(103),S_(104,`translate`),jd(),Va$1(105,`option`,74),Ot$1(106),S_(107,`translate`),jd(),Va$1(108,`option`,75),Ot$1(109),S_(110,`translate`),jd(),Va$1(111,`option`,76),Ot$1(112),S_(113,`translate`),jd()(),db(),Fe(114,Gn,1,0,`i`,26),jd()()(),Va$1(115,`li`,22)(116,`div`,23),Ot$1(117),S_(118,`translate`),Va$1(119,`div`,24)(120,`select`,33)(121,`option`,34),Ot$1(122),S_(123,`translate`),jd(),Va$1(124,`option`,77),Ot$1(125),S_(126,`translate`),jd(),Va$1(127,`option`,78),Ot$1(128),S_(129,`translate`),jd()(),db(),Fe(130,qn,1,0,`i`,26),jd()()(),Va$1(131,`li`,22)(132,`div`,23),Ot$1(133),S_(134,`translate`),Va$1(135,`div`,24)(136,`select`,33)(137,`option`,79),Ot$1(138),S_(139,`translate`),jd(),Va$1(140,`option`,80),Ot$1(141),S_(142,`translate`),jd()(),db(),Fe(143,Qn,1,0,`i`,26),jd()()(),Va$1(144,`li`,22)(145,`div`,23),Ot$1(146),S_(147,`translate`),Va$1(148,`div`,24)(149,`select`,33)(150,`option`,81),Ot$1(151),S_(152,`translate`),jd(),Va$1(153,`option`,82),Ot$1(154),S_(155,`translate`),jd()(),db(),Fe(156,Jn,1,0,`i`,26),jd()()(),Va$1(157,`li`,22)(158,`div`,23)(159,`span`),Ot$1(160),S_(161,`translate`),Dy(162,`br`),Va$1(163,`small`,83),Ot$1(164),S_(165,`translate`),jd()(),Va$1(166,`div`,24),Fe(167,Yn,1,0,`i`,26),Va$1(168,`div`,84)(169,`div`,85)(170,`select`,86),S_(171,`translate`),_T(172,Xn,2,2,`option`,87,TT),jd(),db(),jd(),Va$1(174,`div`,85)(175,`select`,86),S_(176,`translate`),_T(177,Zn,2,2,`option`,87,TT),jd(),db(),jd(),Va$1(179,`div`,85)(180,`select`,88),S_(181,`translate`),_T(182,ea,2,2,`option`,87,TT),jd(),db(),jd()()()()(),Va$1(184,`li`,22)(185,`div`,27)(186,`span`,89),Ot$1(187),S_(188,`translate`),jd(),Va$1(189,`button`,29),S_(190,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).openWallpaperModal())}),Dy(191,`i`,30),jd()()()()}if(n&2){let e=ve(3);se(),Ay(`setting-hidden`,e.isItemHidden(`setting-lang`)),Cr(`inert`,e.isItemHidden(`setting-lang`)||null),se(2),kt$1(` `,N_(4,70,`settings.display.lang`),` `),se(3),vy(`formControl`,e.uiLangFormControl),pb(),se(2),Py(N_(9,72,`form.select.auto`)),se(60),Le(e.uiLangIsSaving()?68:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-theme`)),Cr(`inert`,e.isItemHidden(`setting-theme`)||null),se(2),kt$1(` `,N_(72,74,`settings.display.theme`),` `),se(3),vy(`formControl`,e.uiThemeFormControl),pb(),se(2),Py(N_(77,76,`settings.display.orange`)),se(3),Py(N_(80,78,`settings.display.red`)),se(3),Py(N_(83,80,`settings.display.pink`)),se(3),Py(N_(86,82,`settings.display.purple`)),se(3),Py(N_(89,84,`settings.display.deep_purple`)),se(3),Py(N_(92,86,`settings.display.indigo`)),se(3),Py(N_(95,88,`settings.display.blue`)),se(3),Py(N_(98,90,`settings.display.bluegrey`)),se(3),Py(N_(101,92,`settings.display.cyan`)),se(3),Py(N_(104,94,`settings.display.green`)),se(3),Py(N_(107,96,`settings.display.teal`)),se(3),Py(N_(110,98,`settings.display.grey`)),se(3),Py(N_(113,100,`settings.display.brown`)),se(2),Le(e.uiThemeIsSaving()?114:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-lighting`)),Cr(`inert`,e.isItemHidden(`setting-lighting`)||null),se(2),kt$1(` `,N_(118,102,`settings.display.lighting_mode`),` `),se(3),vy(`formControl`,e.uiLightFormControl),pb(),se(2),Py(N_(123,104,`form.select.auto`)),se(3),Py(N_(126,106,`settings.display.light`)),se(3),Py(N_(129,108,`settings.display.dark`)),se(2),Le(e.uiLightIsSaving()?130:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-menu`)),Cr(`inert`,e.isItemHidden(`setting-menu`)||null),se(2),kt$1(` `,N_(134,110,`settings.display.menu_mode`),` `),se(3),vy(`formControl`,e.uiMenuFormControl),pb(),se(2),Py(N_(139,112,`settings.display.menu_default`)),se(3),Py(N_(142,114,`settings.display.menu_freeze`)),se(2),Le(e.uiMenuIsSaving()?143:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-temp`)),Cr(`inert`,e.isItemHidden(`setting-temp`)||null),se(2),kt$1(` `,N_(147,116,`settings.display.temp_units`),` `),se(3),vy(`formControl`,e.uiTempFormControl),pb(),se(2),Py(N_(152,118,`settings.display.temp_units.c`)),se(3),Py(N_(155,120,`settings.display.temp_units.f`)),se(2),Le(e.uiTempIsSaving()?156:-1),se(),Ay(`setting-hidden`,!(!e.isItemHidden(`setting-terminal-font-size`)||!e.isItemHidden(`setting-terminal-font-weight`)||!e.isItemHidden(`setting-terminal-lighting-mode`))),Cr(`inert`,!(!e.isItemHidden(`setting-terminal-font-size`)||!e.isItemHidden(`setting-terminal-font-weight`)||!e.isItemHidden(`setting-terminal-lighting-mode`))||null),se(3),kt$1(` `,N_(161,122,`settings.terminal.theme`),` `),se(4),Py(N_(165,124,`settings.terminal.theme_desc`)),se(3),Le(e.uiTerminalFontSizeIsSaving()||e.uiTerminalFontWeightIsSaving()||e.uiTerminalLightingModeIsSaving()?167:-1),se(3),vy(`formControl`,e.uiTerminalFontSizeFormControl),Cr(`aria-label`,N_(171,126,`settings.terminal.font_size`)),pb(),se(2),ST(e.fontSizes),se(3),vy(`formControl`,e.uiTerminalFontWeightFormControl),Cr(`aria-label`,N_(176,128,`settings.terminal.font_weight`)),pb(),se(2),ST(e.fontWeights),se(3),Ay(`disabled-no-interaction`,e.isTerminalLightingModeDisabled),vy(`formControl`,e.uiTerminalLightingModeFormControl),Cr(`aria-label`,N_(181,130,`settings.display.lighting_mode`)),pb(),se(2),ST(e.terminalThemes),se(2),Ay(`setting-hidden`,e.isItemHidden(`setting-wallpaper`)),Cr(`inert`,e.isItemHidden(`setting-wallpaper`)||null),se(3),Py(N_(188,132,`settings.display.wallpaper`)),se(2),Cr(`aria-label`,N_(190,134,`settings.display.wallpaper`))}}function ia(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`display`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,ta,192,136,`ul`,32),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().display?`true`:`false`)(`aria-controls`,`fieldsDisplay`),se(),Ay(`fa-chevron-down`,e.showFields().display)(`fa-chevron-right`,!e.showFields().display),se(),kt$1(` `,N_(5,8,`settings.general.title_display`),` `),se(2),Le(e.showFields().display?6:-1)}}function na(n,p){n&1&&Dy(0,`i`,26)}function aa(n,p){n&1&&Dy(0,`i`,26)}function sa(n,p){n&1&&Dy(0,`i`,26)}function oa(n,p){n&1&&Dy(0,`i`,26)}function ra(n,p){n&1&&Dy(0,`i`,26)}function la(n,p){n&1&&Dy(0,`i`,26)}function da(n,p){n&1&&Dy(0,`i`,26)}function ca(n,p){n&1&&Dy(0,`i`,26)}function pa(n,p){n&1&&Dy(0,`i`,26)}function ma(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,23)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,24),Dy(10,`input`,114),S_(11,`translate`),db(),Fe(12,pa,1,0,`i`,26),jd()()()),n&2){let e=ve(5);Ay(`setting-hidden`,e.isItemHidden(`setting-linux-temp`)),Cr(`inert`,e.isItemHidden(`setting-linux-temp`)||null),se(3),kt$1(` `,N_(4,8,`settings.linux.temp`)),se(4),Py(N_(8,10,`settings.linux.temp_desc`)),se(3),vy(`formControl`,e.uiTempFileFormControl),Cr(`aria-label`,N_(11,12,`settings.linux.temp`)),pb(),se(2),Le(e.uiTempFileIsSaving()?12:-1)}}function ua(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,23)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,24),Dy(10,`input`,111),S_(11,`translate`),db(),Fe(12,da,1,0,`i`,26),jd()()(),Va$1(13,`li`,22)(14,`div`,23)(15,`span`),Ot$1(16),S_(17,`translate`),Dy(18,`br`),Va$1(19,`small`,83),Ot$1(20),S_(21,`translate`),jd()(),Va$1(22,`div`,112),Dy(23,`input`,113),S_(24,`translate`),db(),Fe(25,ca,1,0,`i`,26),jd()()(),Fe(26,ma,13,14,`li`,110)),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-linux-shutdown`)),Cr(`inert`,e.isItemHidden(`setting-linux-shutdown`)||null),se(3),kt$1(` `,N_(4,17,`settings.linux.shutdown`)),se(4),Py(N_(8,19,`settings.linux.shutdown_desc`)),se(3),vy(`formControl`,e.hbLinuxShutdownFormControl),Cr(`aria-label`,N_(11,21,`settings.linux.shutdown`)),pb(),se(2),Le(e.hbLinuxShutdownIsSaving()?12:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-linux-restart`)),Cr(`inert`,e.isItemHidden(`setting-linux-restart`)||null),se(3),kt$1(` `,N_(17,23,`settings.linux.restart`)),se(4),Py(N_(21,25,`settings.linux.restart_desc`)),se(3),vy(`formControl`,e.hbLinuxRestartFormControl),Cr(`aria-label`,N_(24,27,`settings.linux.restart`)),pb(),se(2),Le(e.hbLinuxRestartIsSaving()?25:-1),se(),Le(e.runningOnRaspberryPi?26:-1)}}function ha(n,p){n&1&&Dy(0,`i`,26)}function ga(n,p){n&1&&Dy(0,`i`,26)}function _a(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`a`,115),S_(10,`translate`),Dy(11,`i`,30),jd()()()),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-docker-startup`)),Cr(`inert`,e.isItemHidden(`setting-docker-startup`)||null),se(3),kt$1(` `,N_(4,6,`menu.docker.startup_script`)),se(4),Py(N_(8,8,`platform.docker.script_help`)),se(2),Cr(`aria-label`,N_(10,10,`menu.docker.startup_script`))}}function va(n,p){if(n&1){let e=sc();Va$1(0,`ul`,90)(1,`li`,22)(2,`div`,27)(3,`span`),Ot$1(4),S_(5,`translate`),Va$1(6,`code`),Ot$1(7,`-D`),jd(),Dy(8,`br`),Va$1(9,`small`,83),Ot$1(10),S_(11,`translate`),jd()(),Va$1(12,`div`,91)(13,`div`,92),Dy(14,`input`,93),S_(15,`translate`),db(),Dy(16,`label`,94),jd(),Fe(17,na,1,0,`i`,26),jd()()(),Va$1(18,`li`,22)(19,`div`,27)(20,`span`),Ot$1(21),S_(22,`translate`),Va$1(23,`code`),Ot$1(24,`-K`),jd(),Dy(25,`br`),Va$1(26,`small`,83),Ot$1(27),S_(28,`translate`),jd()(),Va$1(29,`div`,91)(30,`div`,92),Dy(31,`input`,95),S_(32,`translate`),db(),Dy(33,`label`,96),jd(),Fe(34,aa,1,0,`i`,26),jd()()(),Va$1(35,`li`,22)(36,`div`,27)(37,`span`),Ot$1(38),S_(39,`translate`),Va$1(40,`code`),Ot$1(41,`-I`),jd(),Dy(42,`br`),Va$1(43,`small`,83),Ot$1(44),S_(45,`translate`),jd()(),Va$1(46,`div`,91)(47,`div`,92),Dy(48,`input`,97),S_(49,`translate`),db(),Dy(50,`label`,98),jd(),Fe(51,sa,1,0,`i`,26),jd()()(),Va$1(52,`li`,22)(53,`div`,27)(54,`span`,89),Ot$1(55),S_(56,`translate`),Dy(57,`br`),Va$1(58,`small`,83),Ot$1(59),S_(60,`translate`),jd()(),Va$1(61,`button`,29),S_(62,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).accessoryUiControl())}),Dy(63,`i`,30),jd()()(),Va$1(64,`li`,22)(65,`div`,23)(66,`span`),Ot$1(67),S_(68,`translate`),Dy(69,`br`),Va$1(70,`small`,83),Dy(71,`span`,99),S_(72,`translate`),Ot$1(73),S_(74,`translate`),jd()(),Va$1(75,`div`,100)(76,`div`,101),Dy(77,`input`,102),S_(78,`translate`),db(),Fe(79,oa,1,0,`i`,26),jd()()()(),Va$1(80,`li`,22)(81,`div`,27)(82,`span`),Ot$1(83),S_(84,`translate`),Dy(85,`br`),Va$1(86,`small`,83),Ot$1(87),S_(88,`translate`),jd()(),Va$1(89,`div`,91)(90,`div`,92),Dy(91,`input`,103),S_(92,`translate`),db(),Dy(93,`label`,104),jd(),Fe(94,ra,1,0,`i`,26),jd()()(),Va$1(95,`li`,22)(96,`div`,23)(97,`span`),Ot$1(98),S_(99,`translate`),Dy(100,`br`),Va$1(101,`small`,83),Ot$1(102),S_(103,`translate`),jd()(),Va$1(104,`div`,24),Dy(105,`input`,105),S_(106,`translate`),db(),Fe(107,la,1,0,`i`,26),jd()()(),Fe(108,ua,27,29),Va$1(109,`li`,22)(110,`div`,23)(111,`span`)(112,`span`,106),Ot$1(113,`DEBUG`),jd(),Dy(114,`br`)(115,`small`,107),S_(116,`translate`),jd(),Va$1(117,`div`,24),Dy(118,`input`,108),db(),Fe(119,ha,1,0,`i`,26),jd()()(),Va$1(120,`li`,22)(121,`div`,23)(122,`span`)(123,`span`,106),Ot$1(124,`NODE_OPTIONS`),jd(),Dy(125,`br`),Va$1(126,`small`,83),Ot$1(127),S_(128,`translate`),jd()(),Va$1(129,`div`,24),Dy(130,`input`,109),db(),Fe(131,ga,1,0,`i`,26),jd()()(),Fe(132,_a,12,12,`li`,110),jd()}if(n&2){let e=ve(3);se(),Ay(`setting-hidden`,e.isItemHidden(`setting-debug`)),Cr(`inert`,e.isItemHidden(`setting-debug`)||null),se(3),kt$1(` `,N_(5,73,`settings.startup.debug`),` `),se(6),Py(N_(11,75,e.debugFieldDesc)),se(4),vy(`formControl`,e.hbDebugFormControl),Cr(`aria-label`,N_(15,77,`settings.startup.debug`)),pb(),se(3),Le(e.hbDebugIsSaving()?17:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-keep`)),Cr(`inert`,e.isItemHidden(`setting-keep`)||null),se(3),kt$1(` `,N_(22,79,`settings.startup.keep_accessories`),` `),se(6),Py(N_(28,81,`settings.startup.keep_accessories_desc`)),se(4),vy(`formControl`,e.hbKeepFormControl),Cr(`aria-label`,N_(32,83,`settings.startup.keep_accessories`)),pb(),se(3),Le(e.hbKeepIsSaving()?34:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-insecure`)),Cr(`inert`,e.isItemHidden(`setting-insecure`)||null),se(3),kt$1(` `,N_(39,85,`settings.startup.insecure`),` `),se(6),Py(N_(45,87,`settings.startup.insecure_desc`)),se(4),vy(`formControl`,e.hbInsecureFormControl),Cr(`aria-label`,N_(49,89,`settings.startup.insecure`)),pb(),se(3),Le(e.hbInsecureIsSaving()?51:-1),se(),Ay(`setting-hidden`,!(!e.isItemHidden(`setting-security-control`)&&e.hbInsecureFormControl.value)),Cr(`inert`,!(!e.isItemHidden(`setting-security-control`)&&e.hbInsecureFormControl.value)||null),se(3),kt$1(` `,N_(56,91,`settings.security.ui_control`)),se(4),Py(N_(60,93,`settings.security.ui_control_desc`)),se(2),Cr(`aria-label`,N_(62,95,`settings.security.ui_control`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-scheduled-restart`)),Cr(`inert`,e.isItemHidden(`setting-scheduled-restart`)||null),se(3),kt$1(` `,N_(68,97,`settings.startup.scheduled_restart`)),se(4),vy(`innerHtml`,x_(72,99,`settings.startup.scheduled_restart_desc`,w_(123,Me,e.linkCron)),Ga$1),se(2),kt$1(` `,N_(74,102,`settings.startup.scheduled_restart_desc_2`),` `),se(4),Xt$1(`letter-spacing`,`0.15em`)(`text-align`,`center`),vy(`formControl`,e.scheduledRestartCronFormControl),Cr(`aria-label`,N_(78,104,`settings.startup.scheduled_restart`)),pb(),se(2),Le(e.scheduledRestartCronIsSaving()?79:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-metrics-startup`)),Cr(`inert`,e.isItemHidden(`setting-metrics-startup`)||null),se(3),kt$1(` `,N_(84,106,`settings.startup.metrics`)),se(4),Py(N_(88,108,`settings.startup.metrics_desc`)),se(4),vy(`formControl`,e.uiMetricsFormControl),Cr(`aria-label`,N_(92,110,`settings.startup.metrics`)),pb(),se(3),Le(e.uiMetricsIsSaving()?94:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-package-path`)),Cr(`inert`,e.isItemHidden(`setting-package-path`)||null),se(3),kt$1(` `,N_(99,112,`settings.network.hb_package`)),se(4),Py(N_(103,114,`settings.network.hb_package_desc`)),se(3),vy(`formControl`,e.hbPackageFormControl),Cr(`aria-label`,N_(106,116,`settings.network.hb_package`)),pb(),se(2),Le(e.hbPackageIsSaving()?107:-1),se(),Le(e.platform===`linux`?108:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-env-debug-manual`)),Cr(`inert`,e.isItemHidden(`setting-env-debug-manual`)||null),se(6),vy(`innerHTML`,x_(116,118,`settings.service.debug_tooltip`,w_(125,Me,e.linkDebug)),Ga$1),se(3),vy(`formControl`,e.hbEnvDebugFormControl),pb(),se(),Le(e.hbEnvDebugIsSaving()?119:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-env-node`)),Cr(`inert`,e.isItemHidden(`setting-env-node`)||null),se(7),Py(N_(128,121,`settings.service.node_tooltip`)),se(3),vy(`formControl`,e.hbEnvNodeFormControl),pb(),se(),Le(e.hbEnvNodeIsSaving()?131:-1),se(),Le(e.runningInDocker?132:-1)}}function fa(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`startup`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,va,133,127,`ul`,90),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().startup?`true`:`false`)(`aria-controls`,`fieldsStartup`),se(),Ay(`fa-chevron-down`,e.showFields().startup)(`fa-chevron-right`,!e.showFields().startup),se(),kt$1(` `,N_(5,8,`settings.title_startup_options`),` `),se(2),Le(e.showFields().startup?6:-1)}}function ba(n,p){n&1&&Dy(0,`i`,135)}function Ca(n,p){if(n&1&&(Va$1(0,`span`,134),Fe(1,ba,1,0,`i`,135),Ot$1(2),Va$1(3,`span`,136),Ot$1(4),S_(5,`translate`),jd()()),n&2){let e=p.$implicit;Ay(`badge-danger`,e.missing)(`badge-info`,!e.missing),se(),Le(e.missing?1:-1),se(),kt$1(` `,e.iface,`: `),se(2),Py(e.missing?N_(5,7,`settings.mdns_advertiser_not_connected`):e.ip4||e.ip6)}}function xa(n,p){n&1&&(Va$1(0,`option`,120),Ot$1(1),S_(2,`translate`),jd()),n&2&&(se(),kt$1(`Avahi (`,N_(2,1,`settings.mdns_advertiser_rec`),`)`))}function Sa(n,p){n&1&&(Va$1(0,`option`,123),Ot$1(1),S_(2,`translate`),jd()),n&2&&(se(),kt$1(` systemd-resolved (`,N_(2,1,`settings.mdns_advertiser_exp`),`) `))}function ya(n,p){n&1&&Dy(0,`i`,26)}function Ia(n,p){n&1&&Dy(0,`i`,26)}function Ea(n,p){n&1&&Dy(0,`i`,26)}function wa(n,p){n&1&&Dy(0,`i`,26)}function Ta(n,p){n&1&&(Dy(0,`br`),Va$1(1,`small`,83),Dy(2,`i`,137),Ot$1(3),S_(4,`translate`),jd()),n&2&&(se(3),kt$1(` `,N_(4,1,`settings.warning_pwa`),` `))}function ka(n,p){n&1&&Dy(0,`i`,26)}function $a(n,p){n&1&&(Dy(0,`br`),Va$1(1,`small`,83),Dy(2,`i`,137),Ot$1(3),S_(4,`translate`),jd()),n&2&&(se(3),kt$1(` `,N_(4,1,`settings.warning_pwa`),` `))}function Ma(n,p){n&1&&Dy(0,`i`,26)}function Ba(n,p){n&1&&(Dy(0,`br`),Va$1(1,`small`,83),Dy(2,`i`,137),Ot$1(3),S_(4,`translate`),jd()),n&2&&(se(3),kt$1(` `,N_(4,1,`settings.warning_pwa`),` `))}function Fa(n,p){n&1&&Dy(0,`i`,26)}function Pa(n,p){if(n&1){let e=sc();Va$1(0,`ul`,116)(1,`li`,22)(2,`div`,27)(3,`span`,89),Ot$1(4),S_(5,`translate`),Dy(6,`br`),Va$1(7,`div`,117),Ot$1(8),S_(9,`translate`),jd(),_T(10,Ca,6,9,`span`,118,TT),jd(),Va$1(12,`button`,119),S_(13,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).selectNetworkInterfaces())}),Dy(14,`i`,30),jd()()(),Va$1(15,`li`,22)(16,`div`,23)(17,`span`),Ot$1(18),S_(19,`translate`),Dy(20,`br`),Va$1(21,`small`,83),Ot$1(22),S_(23,`translate`),jd()(),Va$1(24,`div`,24)(25,`select`,33),S_(26,`translate`),Fe(27,xa,3,3,`option`,120),Va$1(28,`option`,121),Ot$1(29),S_(30,`translate`),jd(),Va$1(31,`option`,122),Ot$1(32,`Bonjour HAP`),jd(),Fe(33,Sa,3,3,`option`,123),jd(),db(),Fe(34,ya,1,0,`i`,26),jd()()(),Va$1(35,`li`,22)(36,`div`,27)(37,`span`),Ot$1(38),S_(39,`translate`),Dy(40,`br`),Va$1(41,`small`,83),Ot$1(42),S_(43,`translate`),jd()(),Va$1(44,`div`,91)(45,`div`,92),Dy(46,`input`,124),S_(47,`translate`),db(),Dy(48,`label`,125),jd(),Fe(49,Ia,1,0,`i`,26),jd()()(),Va$1(50,`li`,22)(51,`div`,23)(52,`span`),Ot$1(53),S_(54,`translate`),Dy(55,`br`),Va$1(56,`small`,83),Ot$1(57),S_(58,`translate`),jd()(),Va$1(59,`div`,24),Dy(60,`input`,126),S_(61,`translate`),db(),Fe(62,Ea,1,0,`i`,26),jd()()(),Va$1(63,`li`,22)(64,`div`,23)(65,`span`),Ot$1(66),S_(67,`translate`),Dy(68,`br`),Va$1(69,`small`,83),Ot$1(70),S_(71,`translate`),jd()(),Va$1(72,`div`,24),Fe(73,wa,1,0,`i`,26),Va$1(74,`div`,84),Dy(75,`input`,127),S_(76,`translate`),db(),Dy(77,`input`,128),S_(78,`translate`),db(),jd()()()(),Va$1(79,`li`,22)(80,`div`,23)(81,`span`),Ot$1(82),S_(83,`translate`),Dy(84,`br`)(85,`small`,129),S_(86,`translate`),Fe(87,Ta,5,3),jd(),Va$1(88,`div`,24),Dy(89,`input`,130),S_(90,`translate`),db(),Fe(91,ka,1,0,`i`,26),jd()()(),Va$1(92,`li`,22)(93,`div`,23)(94,`span`),Ot$1(95),S_(96,`translate`),Dy(97,`br`),Va$1(98,`small`,83),Ot$1(99),S_(100,`translate`),jd(),Fe(101,$a,5,3),jd(),Va$1(102,`div`,24),Dy(103,`input`,131),S_(104,`translate`),db(),Fe(105,Ma,1,0,`i`,26),jd()()(),Va$1(106,`li`,22)(107,`div`,23)(108,`span`),Ot$1(109),S_(110,`translate`),Dy(111,`br`),Va$1(112,`small`,83),Ot$1(113),S_(114,`translate`),jd(),Fe(115,Ba,5,3),jd(),Va$1(116,`div`,24),Dy(117,`input`,132),S_(118,`translate`),db(),Fe(119,Fa,1,0,`i`,26),jd()()(),Va$1(120,`li`,22)(121,`div`,27)(122,`span`),Ot$1(123),S_(124,`translate`),jd(),Va$1(125,`button`,133),ac(`click`,function(){Ko(e);return Qo(ve(3).openPortOverview())}),Dy(126,`i`,30),jd()()()()}if(n&2){let e=ve(3);se(),Ay(`setting-hidden`,e.isItemHidden(`setting-interfaces`)),Cr(`inert`,e.isItemHidden(`setting-interfaces`)||null),se(3),kt$1(` `,N_(5,83,`settings.network.title_network_interfaces`)),se(4),Py(N_(9,85,`settings.network.message_network_interface`)),se(2),ST(e.adaptersSelected()),se(2),vy(`disabled`,!e.adaptersAvailable().length),Cr(`aria-label`,N_(13,87,`settings.network.title_network_interfaces`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-mdns`)),Cr(`inert`,e.isItemHidden(`setting-mdns`)||null),se(3),kt$1(` `,N_(19,89,`settings.mdns_advertiser`)),se(4),Py(N_(23,91,`settings.mdns_advertiser_help`)),se(3),vy(`formControl`,e.hbMDnsFormControl),Cr(`aria-label`,N_(26,93,`settings.mdns_advertiser`)),pb(),se(2),Le(e.showAvahiMdnsOption()?27:-1),se(2),kt$1(` Ciao `,e.showAvahiMdnsOption()?``:`(${N_(30,95,`settings.mdns_advertiser_rec`)})`,` `),se(4),Le(e.showResolvedMdnsOption()?33:-1),se(),Le(e.hbMDnsIsSaving()?34:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-mdns-advertise`)),Cr(`inert`,e.isItemHidden(`setting-mdns-advertise`)||null),se(3),kt$1(` `,N_(39,97,`settings.network.mdns_advertise`)),se(4),Py(N_(43,99,`settings.network.mdns_advertise_help`)),se(4),vy(`formControl`,e.enableMdnsAdvertiseFormControl),Cr(`aria-label`,N_(47,101,`settings.network.mdns_advertise`)),pb(),se(3),Le(e.enableMdnsAdvertiseIsSaving()?49:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-port-hb`)),Cr(`inert`,e.isItemHidden(`setting-port-hb`)||null),se(3),kt$1(` `,N_(54,103,`settings.network.port_hb`)),se(4),Py(N_(58,105,`settings.network.port_hb_desc`)),se(3),Ay(`is-invalid`,e.hbPortIsInvalid()),vy(`formControl`,e.hbPortFormControl),Cr(`aria-label`,N_(61,107,`settings.network.port_hb`)),pb(),se(2),Le(e.hbPortIsSaving()?62:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-port-range`)),Cr(`inert`,e.isItemHidden(`setting-port-range`)||null),se(3),kt$1(` `,N_(67,109,`settings.network.port_range`)),se(4),Py(N_(71,111,`settings.network.port_range_desc`)),se(3),Le(e.hbStartPortIsSaving()||e.hbEndPortIsSaving()?73:-1),se(2),Ay(`is-invalid`,e.hbStartPortIsInvalid()),vy(`formControl`,e.hbStartPortFormControl),Cr(`aria-label`,N_(76,113,`settings.network.port_range`)),pb(),se(2),Ay(`is-invalid`,e.hbEndPortIsInvalid()),vy(`formControl`,e.hbEndPortFormControl),Cr(`aria-label`,N_(78,115,`settings.network.port_end`)),pb(),se(2),Ay(`setting-hidden`,e.isItemHidden(`setting-network-host`)),Cr(`inert`,e.isItemHidden(`setting-network-host`)||null),se(3),kt$1(` `,N_(83,117,`settings.network.host`)),se(3),vy(`innerHtml`,N_(86,119,`settings.network.host_desc`),Ga$1),se(2),Le(e.isPwa?87:-1),se(2),vy(`formControl`,e.uiHostFormControl),Cr(`aria-label`,N_(90,121,`settings.network.host`)),pb(),se(2),Le(e.uiHostIsSaving()?91:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-network-proxy`)),Cr(`inert`,e.isItemHidden(`setting-network-proxy`)||null),se(3),kt$1(` `,N_(96,123,`settings.network.proxy`)),se(4),Py(N_(100,125,`settings.network.proxy_desc`)),se(2),Le(e.isPwa?101:-1),se(2),vy(`formControl`,e.uiProxyHostFormControl),Cr(`aria-label`,N_(104,127,`settings.network.proxy`)),pb(),se(2),Le(e.uiProxyHostIsSaving()?105:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-ui-port-network`)),Cr(`inert`,e.isItemHidden(`setting-ui-port-network`)||null),se(3),kt$1(` `,N_(110,129,`settings.network.port_ui`)),se(4),Py(N_(114,131,`settings.network.port_ui_desc`)),se(2),Le(e.isPwa?115:-1),se(2),Ay(`is-invalid`,e.uiPortIsInvalid()),vy(`formControl`,e.uiPortFormControl),Cr(`aria-label`,N_(118,133,`settings.network.port_ui`)),pb(),se(2),Le(e.uiPortIsSaving()?119:-1),se(),Ay(`setting-hidden`,!(e.isMatterSupported&&!e.isItemHidden(`setting-port-overview`))),Cr(`inert`,!(e.isMatterSupported&&!e.isItemHidden(`setting-port-overview`))||null),se(3),kt$1(` `,N_(124,135,`settings.ports.title`),` `)}}function Da(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`network`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,Pa,127,137,`ul`,116),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().network?`true`:`false`)(`aria-controls`,`fieldsNetwork`),se(),Ay(`fa-chevron-down`,e.showFields().network)(`fa-chevron-right`,!e.showFields().network),se(),kt$1(` `,N_(5,8,`settings.network.title_network`),` `),se(2),Le(e.showFields().network?6:-1)}}function Ra(n,p){n&1&&Dy(0,`i`,26)}function Va(n,p){n&1&&Dy(0,`i`,26)}function Aa(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Va$1(5,`span`,143),Ot$1(6),S_(7,`translate`),jd(),Dy(8,`br`),Va$1(9,`small`,83),Ot$1(10),S_(11,`translate`),jd()(),Va$1(12,`div`,91)(13,`div`,92),Dy(14,`input`,144),S_(15,`translate`),db(),Dy(16,`label`,145),jd(),Fe(17,Va,1,0,`i`,26),jd()()()),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-hap-disable-identifying-material`)),Cr(`inert`,e.isItemHidden(`setting-hap-disable-identifying-material`)||null),se(3),kt$1(` `,N_(4,9,`settings.hap.disable_identifying_material`),` `),se(3),Py(N_(7,11,`common.labels.beta`)),se(4),Py(N_(11,13,`settings.hap.disable_identifying_material_desc`)),se(4),vy(`formControl`,e.hapDisableIdentifyingMaterialFormControl),Cr(`aria-label`,N_(15,15,`settings.hap.disable_identifying_material`)),pb(),se(3),Le(e.hapDisableIdentifyingMaterialIsSaving()?17:-1)}}function Na(n,p){n&1&&Dy(0,`i`,26)}function Ha(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Va$1(5,`span`,143),Ot$1(6),S_(7,`translate`),jd(),Dy(8,`br`),Va$1(9,`small`,83),Ot$1(10),S_(11,`translate`),jd()(),Va$1(12,`div`,91)(13,`div`,92),Dy(14,`input`,146),S_(15,`translate`),db(),Dy(16,`label`,147),jd(),Fe(17,Na,1,0,`i`,26),jd()()()),n&2){let e=ve(4);se(3),kt$1(` `,N_(4,6,`settings.hap.externals_only`),` `),se(3),Py(N_(7,8,`common.labels.beta`)),se(4),Py(N_(11,10,`settings.hap.externals_only_desc`)),se(4),vy(`formControl`,e.hapExternalsOnlyFormControl),Cr(`aria-label`,N_(15,12,`settings.hap.externals_only`)),pb(),se(3),Le(e.hapExternalsOnlyIsSaving()?17:-1)}}function La(n,p){if(n&1&&(Va$1(0,`p`,138),Ot$1(1),S_(2,`translate`),jd(),Va$1(3,`ul`,139)(4,`li`,22)(5,`div`,27)(6,`span`),Ot$1(7),S_(8,`translate`),Dy(9,`br`),Va$1(10,`small`,83),Ot$1(11),S_(12,`translate`),jd()(),Va$1(13,`div`,140),S_(14,`translate`),Va$1(15,`div`,92),Dy(16,`input`,141),S_(17,`translate`),db(),Dy(18,`label`,142),jd(),Fe(19,Ra,1,0,`i`,26),jd()()(),Fe(20,Aa,18,17,`li`,110),Fe(21,Ha,18,14,`li`,22),jd()),n&2){let e=ve(3);se(),Py(N_(2,12,`settings.hap.desc`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-hap-enabled`)),Cr(`inert`,e.isItemHidden(`setting-hap-enabled`)||null),se(3),kt$1(` `,N_(8,14,`common.labels.enabled`)),se(4),Py(N_(12,16,e.allowMatterDisableInPlace?`settings.hap.enabled_desc_in_place`:`settings.hap.enabled_desc`)),se(2),vy(`title`,!e.allowDisableAllProtocols&&!e.matterEnabledFormControl.value&&e.hapEnabledFormControl.value?N_(14,18,`settings.hap.requires_matter`):``),se(3),vy(`formControl`,e.hapEnabledFormControl),Cr(`aria-label`,N_(17,20,`common.labels.enabled`)),pb(),se(3),Le(e.hapEnabledIsSaving()?19:-1),se(),Le(e.isHapDisableIdentifyingMaterialEnabled?20:-1),se(),Le(e.isProtocolExternalsOnlyEnabled&&e.hapEnabledFormControl.value===!1?21:-1)}}function Oa(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`hap`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,La,22,22),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().hap?`true`:`false`)(`aria-controls`,`fieldsHap`),se(),Ay(`fa-chevron-down`,e.showFields().hap)(`fa-chevron-right`,!e.showFields().hap),se(),kt$1(` `,N_(5,8,`settings.hap.title`),` `),se(2),Le(e.showFields().hap?6:-1)}}function za(n,p){n&1&&Dy(0,`i`,26)}function Ua(n,p){n&1&&Dy(0,`i`,26)}function Wa(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Va$1(5,`span`,143),Ot$1(6),S_(7,`translate`),jd(),Dy(8,`br`),Va$1(9,`small`,83),Ot$1(10),S_(11,`translate`),jd()(),Va$1(12,`div`,91)(13,`div`,92),Dy(14,`input`,153),S_(15,`translate`),db(),Dy(16,`label`,154),jd(),Fe(17,Ua,1,0,`i`,26),jd()()()),n&2){let e=ve(4);se(3),kt$1(` `,N_(4,6,`settings.matter.externals_only`),` `),se(3),Py(N_(7,8,`common.labels.beta`)),se(4),Py(N_(11,10,`settings.matter.externals_only_desc`)),se(4),vy(`formControl`,e.matterExternalsOnlyFormControl),Cr(`aria-label`,N_(15,12,`settings.matter.externals_only`)),pb(),se(3),Le(e.matterExternalsOnlyIsSaving()?17:-1)}}function ja(n,p){n&1&&Dy(0,`i`,26)}function Ka(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,23)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,24),Dy(10,`input`,155),S_(11,`translate`),db(),Fe(12,ja,1,0,`i`,26),jd()()()),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-matter-port`)),Cr(`inert`,e.isItemHidden(`setting-matter-port`)||null),se(3),kt$1(` `,N_(4,10,`settings.matter.port`)),se(4),Py(N_(8,12,`settings.matter.port_desc`)),se(3),Ay(`is-invalid`,e.matterPortIsInvalid()),vy(`formControl`,e.matterPortFormControl),Cr(`aria-label`,N_(11,14,`settings.matter.port`)),pb(),se(2),Le(e.matterPortIsSaving()?12:-1)}}function Ga(n,p){n&1&&Dy(0,`i`,26)}function qa(n,p){n&1&&Dy(0,`i`,26)}function Qa(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Va$1(5,`span`,143),Ot$1(6),S_(7,`translate`),jd(),Dy(8,`br`),Va$1(9,`small`,83),Ot$1(10),S_(11,`translate`),jd()(),Va$1(12,`div`,91)(13,`div`,92),Dy(14,`input`,156),S_(15,`translate`),db(),Dy(16,`label`,157),jd(),Fe(17,qa,1,0,`i`,26),jd()()()),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-matter-disable-ipv4`)),Cr(`inert`,e.isItemHidden(`setting-matter-disable-ipv4`)||null),se(3),kt$1(` `,N_(4,9,`settings.matter.disable_ipv4`),` `),se(3),Py(N_(7,11,`common.labels.beta`)),se(4),Py(N_(11,13,`settings.matter.disable_ipv4_desc`)),se(4),vy(`formControl`,e.matterDisableIpv4FormControl),Cr(`aria-label`,N_(15,15,`settings.matter.disable_ipv4`)),pb(),se(3),Le(e.matterDisableIpv4IsSaving()?17:-1)}}function Ja(n,p){if(n&1&&(Va$1(0,`p`,138),Ot$1(1),S_(2,`translate`),jd(),Va$1(3,`ul`,148)(4,`li`,22)(5,`div`,27)(6,`span`),Ot$1(7),S_(8,`translate`),Va$1(9,`span`,143),Ot$1(10),S_(11,`translate`),jd(),Dy(12,`br`),Va$1(13,`small`,83),Ot$1(14),S_(15,`translate`),jd()(),Va$1(16,`div`,140),S_(17,`translate`),Va$1(18,`div`,92),Dy(19,`input`,149),S_(20,`translate`),db(),Dy(21,`label`,150),jd(),Fe(22,za,1,0,`i`,26),jd()()(),Fe(23,Wa,18,14,`li`,22),Fe(24,Ka,13,16,`li`,110),Va$1(25,`li`,22)(26,`div`,23)(27,`span`),Ot$1(28),S_(29,`translate`),Dy(30,`br`),Va$1(31,`small`,83),Ot$1(32),S_(33,`translate`),jd()(),Va$1(34,`div`,24),Fe(35,Ga,1,0,`i`,26),Va$1(36,`div`,84),Dy(37,`input`,151),S_(38,`translate`),db(),Dy(39,`input`,152),S_(40,`translate`),db(),jd()()()(),Fe(41,Qa,18,17,`li`,110),jd()),n&2){let e=ve(3);se(),Py(N_(2,28,`settings.matter.desc`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-matter-enabled`)),Cr(`inert`,e.isItemHidden(`setting-matter-enabled`)||null),se(3),kt$1(` `,N_(8,30,`common.labels.enabled`),` `),se(3),Py(N_(11,32,`common.labels.beta`)),se(4),Py(N_(15,34,e.allowMatterDisableInPlace?`settings.matter.enabled_desc_in_place`:`settings.matter.enabled_desc`)),se(2),vy(`title`,!e.allowDisableAllProtocols&&!e.hapEnabledFormControl.value&&e.matterEnabledFormControl.value?N_(17,36,`settings.matter.requires_hap`):``),se(3),vy(`formControl`,e.matterEnabledFormControl),Cr(`aria-label`,N_(20,38,`common.labels.enabled`)),pb(),se(3),Le(e.matterEnabledIsSaving()?22:-1),se(),Le(e.isProtocolExternalsOnlyEnabled&&e.matterEnabledFormControl.value===!1?23:-1),se(),Le(e.matterEnabledFormControl.value?24:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-matter-port-range`)),Cr(`inert`,e.isItemHidden(`setting-matter-port-range`)||null),se(3),kt$1(` `,N_(29,40,`settings.network.port_range`)),se(4),Py(N_(33,42,`settings.matter.port_range_desc`)),se(3),Le(e.matterStartPortIsSaving()||e.matterEndPortIsSaving()?35:-1),se(2),Ay(`is-invalid`,e.matterStartPortIsInvalid()),vy(`formControl`,e.matterStartPortFormControl),Cr(`aria-label`,N_(38,44,`settings.network.port_range`)),pb(),se(2),Ay(`is-invalid`,e.matterEndPortIsInvalid()),vy(`formControl`,e.matterEndPortFormControl),Cr(`aria-label`,N_(40,46,`settings.network.port_range`)),pb(),se(2),Le(e.isMatterDisableIpv4Enabled&&e.matterEnabledFormControl.value?41:-1)}}function Ya(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`matter`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,Ja,42,48),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().matter?`true`:`false`)(`aria-controls`,`fieldsMatter`),se(),Ay(`fa-chevron-down`,e.showFields().matter)(`fa-chevron-right`,!e.showFields().matter),se(),kt$1(` `,N_(5,8,`settings.matter.title`),` `),se(2),Le(e.showFields().matter?6:-1)}}function Xa(n,p){n&1&&Dy(0,`i`,26)}function Za(n,p){n&1&&Dy(0,`i`,26)}function es(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,23)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,24),Dy(10,`input`,160),S_(11,`translate`),db(),Fe(12,Za,1,0,`i`,26),jd()()()),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-terminal-log-truncate`)),Cr(`inert`,e.isItemHidden(`setting-terminal-log-truncate`)||null),se(3),kt$1(` `,N_(4,10,`settings.terminal.log_truncate`)),se(4),Py(N_(8,12,`settings.terminal.log_truncate_desc`)),se(3),Ay(`is-invalid`,e.hbLogTruncateIsInvalid()),vy(`formControl`,e.hbLogTruncateFormControl),Cr(`aria-label`,N_(11,14,`settings.terminal.log_truncate`)),pb(),se(2),Le(e.hbLogTruncateIsSaving()?12:-1)}}function ts(n,p){n&1&&Dy(0,`i`,26)}function is(n,p){n&1&&Dy(0,`i`,26)}function ns(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,91)(10,`div`,92),Dy(11,`input`,163),S_(12,`translate`),db(),Dy(13,`label`,164),jd(),Fe(14,is,1,0,`i`,26),jd()()()),n&2){let e=ve(5);Ay(`setting-hidden`,e.isItemHidden(`setting-terminal-warning`)),Cr(`inert`,e.isItemHidden(`setting-terminal-warning`)||null),se(3),kt$1(` `,N_(4,8,`settings.terminal.warning`)),se(4),Py(N_(8,10,`settings.terminal.warning_help`)),se(4),vy(`formControl`,e.uiTerminalHideWarningFormControl),Cr(`aria-label`,N_(12,12,`settings.terminal.warning`)),pb(),se(3),Le(e.uiTerminalHideWarningIsSaving()?14:-1)}}function as(n,p){n&1&&Dy(0,`i`,26)}function ss(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,23)(2,`div`,165)(3,`span`),Ot$1(4),S_(5,`translate`),jd(),Va$1(6,`div`,166),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,24),Dy(10,`input`,167),S_(11,`translate`),db(),Fe(12,as,1,0,`i`,26),jd()()()),n&2){let e=ve(5);Ay(`setting-hidden`,e.isItemHidden(`setting-terminal-buffer`)),Cr(`inert`,e.isItemHidden(`setting-terminal-buffer`)||null),se(4),Py(N_(5,10,`settings.terminal.buffer_size`)),se(3),Py(N_(8,12,`settings.terminal.buffer_size_help`)),se(3),Ay(`is-invalid`,e.uiTerminalBufferSizeIsInvalid()),vy(`formControl`,e.uiTerminalBufferSizeFormControl),Cr(`aria-label`,N_(11,14,`settings.terminal.buffer_size`)),pb(),se(2),Le(e.uiTerminalBufferSizeIsSaving()?12:-1)}}function os(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,91)(10,`div`,92),Dy(11,`input`,161),S_(12,`translate`),db(),Dy(13,`label`,162),jd(),Fe(14,ts,1,0,`i`,26),jd()()(),Fe(15,ns,15,14,`li`,110)(16,ss,13,16,`li`,110)),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-terminal-persistence`)),Cr(`inert`,e.isItemHidden(`setting-terminal-persistence`)||null),se(3),kt$1(` `,N_(4,9,`settings.terminal.persistence`)),se(4),Py(N_(8,11,`settings.terminal.persistence_help`)),se(4),vy(`formControl`,e.uiTerminalPersistenceFormControl),Cr(`aria-label`,N_(12,13,`settings.terminal.persistence`)),pb(),se(3),Le(e.uiTerminalPersistenceIsSaving()?14:-1),se(),Le(e.uiTerminalPersistenceFormControl.value?16:15)}}function rs(n,p){if(n&1&&(Va$1(0,`ul`,158)(1,`li`,22)(2,`div`,23)(3,`span`),Ot$1(4),S_(5,`translate`),Dy(6,`br`),Va$1(7,`small`,83),Ot$1(8),S_(9,`translate`),jd()(),Va$1(10,`div`,24),Dy(11,`input`,159),S_(12,`translate`),db(),Fe(13,Xa,1,0,`i`,26),jd()()(),Fe(14,es,13,16,`li`,110),Fe(15,os,17,15),jd()),n&2){let e=ve(3);se(),Ay(`setting-hidden`,e.isItemHidden(`setting-terminal-log-max`)),Cr(`inert`,e.isItemHidden(`setting-terminal-log-max`)||null),se(3),kt$1(` `,N_(5,12,`settings.terminal.log_max`)),se(4),Py(N_(9,14,`settings.terminal.log_max_desc`)),se(3),Ay(`is-invalid`,e.hbLogSizeIsInvalid()),vy(`formControl`,e.hbLogSizeFormControl),Cr(`aria-label`,N_(12,16,`settings.terminal.log_max`)),pb(),se(2),Le(e.hbLogSizeIsSaving()?13:-1),se(),Le(e.hbLogSizeFormControl.value>0?14:-1),se(),Le(e.enableTerminalAccess?15:-1)}}function ls(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`terminal`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,rs,16,18,`ul`,158),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().terminal?`true`:`false`)(`aria-controls`,`fieldsTerminal`),se(),Ay(`fa-chevron-down`,e.showFields().terminal)(`fa-chevron-right`,!e.showFields().terminal),se(),kt$1(` `,N_(5,8,`settings.network.title_terminal`),` `),se(2),Le(e.showFields().terminal?6:-1)}}function ds(n,p){n&1&&Dy(0,`i`,26)}function cs(n,p){n&1&&Dy(0,`i`,175)}function ps(n,p){n&1&&Dy(0,`i`,183)}function ms(n,p){if(n&1&&(Va$1(0,`li`,22)(1,`div`,27)(2,`span`),Ot$1(3),S_(4,`translate`),Dy(5,`br`),Va$1(6,`small`,83),Ot$1(7),S_(8,`translate`),jd()(),Va$1(9,`div`,91)(10,`div`,92),Dy(11,`input`,173),S_(12,`translate`),db(),Dy(13,`label`,174),jd(),Fe(14,cs,1,0,`i`,175),jd()()(),Va$1(15,`li`,22)(16,`div`,23)(17,`span`),Ot$1(18),S_(19,`translate`),Dy(20,`br`),Va$1(21,`small`,83),Ot$1(22),S_(23,`translate`),jd()(),Va$1(24,`div`,24)(25,`div`,176)(26,`div`,91),Dy(27,`input`,177),S_(28,`translate`),db(),Va$1(29,`label`,178),Ot$1(30),S_(31,`translate`),jd()(),Va$1(32,`div`,91),Dy(33,`input`,179),S_(34,`translate`),db(),Va$1(35,`label`,180),Ot$1(36),S_(37,`translate`),jd()(),Va$1(38,`div`,91),Dy(39,`input`,181),S_(40,`translate`),db(),Va$1(41,`label`,182),Ot$1(42),S_(43,`translate`),jd()()(),Fe(44,ps,1,0,`i`,183),jd()()()),n&2){let e=ve(4);Ay(`setting-hidden`,e.isItemHidden(`setting-session-inactivity`)),Cr(`inert`,e.isItemHidden(`setting-session-inactivity`)||null),se(3),kt$1(` `,N_(4,29,`settings.startup.session_inactivity_based`)),se(4),Py(N_(8,31,`settings.startup.session_inactivity_based_desc`)),se(4),vy(`formControl`,e.uiSessionTimeoutInactivityBasedFormControl),Cr(`aria-label`,N_(12,33,`settings.startup.session_inactivity_based`)),pb(),se(3),Le(e.uiSessionTimeoutInactivityBasedIsSaving()?14:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-security-session`)),Cr(`inert`,e.isItemHidden(`setting-security-session`)||null),se(3),kt$1(` `,N_(19,35,`settings.startup.session`)),se(4),Py(N_(23,37,`settings.startup.session_desc`)),se(5),Ay(`is-invalid`,e.uiSessionTimeoutDaysIsInvalid()),vy(`formControl`,e.uiSessionTimeoutDaysFormControl),Cr(`aria-label`,N_(28,39,`settings.startup.session_days`)),pb(),se(3),Py(N_(31,41,`settings.startup.session_days`)),se(3),Ay(`is-invalid`,e.uiSessionTimeoutHoursIsInvalid()),vy(`formControl`,e.uiSessionTimeoutHoursFormControl),Cr(`aria-label`,N_(34,43,`settings.startup.session_hours`)),pb(),se(3),Py(N_(37,45,`settings.startup.session_hours`)),se(3),Ay(`is-invalid`,e.uiSessionTimeoutMinutesIsInvalid()),vy(`formControl`,e.uiSessionTimeoutMinutesFormControl),Cr(`aria-label`,N_(40,47,`settings.startup.session_minutes`)),pb(),se(3),Py(N_(43,49,`settings.startup.session_minutes`)),se(2),Le(e.uiSessionTimeoutIsSaving()?44:-1)}}function us(n,p){if(n&1&&(Va$1(0,`small`,83),Dy(1,`span`,99),S_(2,`translate`),jd()),n&2){let e=ve(4);se(),vy(`innerHtml`,x_(2,1,`settings.security.https_raspbian`,w_(4,Me,e.linkRaspbianSsl)),Ga$1)}}function hs(n,p){n&1&&(Dy(0,`br`),Va$1(1,`small`,83),Dy(2,`i`,137),Ot$1(3),S_(4,`translate`),jd()),n&2&&(se(3),kt$1(` `,N_(4,1,`settings.warning_pwa`),` `))}function gs(n,p){if(n&1&&(Va$1(0,`small`,83),Ot$1(1),S_(2,`translate`),jd(),Fe(3,hs,5,3)),n&2){let e=ve(4);se(),Py(N_(2,2,`settings.security.https_desc`)),se(2),Le(e.isPwa?3:-1)}}function _s(n,p){if(n&1){let e=sc();Va$1(0,`ul`,168)(1,`li`,22)(2,`div`,27)(3,`span`),Ot$1(4),S_(5,`translate`),Dy(6,`br`),Va$1(7,`small`,83),Ot$1(8),S_(9,`translate`),jd()(),Va$1(10,`div`,91)(11,`div`,92),Dy(12,`input`,169),S_(13,`translate`),db(),Dy(14,`label`,170),jd(),Fe(15,ds,1,0,`i`,26),jd()()(),Fe(16,ms,45,51),Va$1(17,`li`,22)(18,`div`,27)(19,`span`,89),Ot$1(20),S_(21,`translate`),Dy(22,`br`),Va$1(23,`small`,83),Ot$1(24),S_(25,`translate`),jd(),Fe(26,us,3,6,`small`,83)(27,gs,4,4),jd(),Va$1(28,`div`,91)(29,`div`,92)(30,`input`,171),S_(31,`translate`),ac(`click`,function(a){Ko(e);let v=ve(3);return!v.isPwa&&!v.runningOnRaspbianImage&&v.openSslModal(),Qo(a.preventDefault())}),jd(),Dy(32,`label`,172),jd()()()()()}if(n&2){let e=ve(3);se(),Ay(`setting-hidden`,e.isItemHidden(`setting-security-auth`)),Cr(`inert`,e.isItemHidden(`setting-security-auth`)||null),se(3),kt$1(` `,N_(5,18,`settings.security.auth`)),se(4),Py(N_(9,20,`settings.security.auth_desc`)),se(4),vy(`formControl`,e.uiAuthFormControl),Cr(`aria-label`,N_(13,22,`settings.security.auth`)),pb(),se(3),Le(e.uiAuthIsSaving()?15:-1),se(),Le(e.uiAuthFormControl.value?16:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-security-https`)),Cr(`inert`,e.isItemHidden(`setting-security-https`)||null),se(3),kt$1(` `,N_(21,24,`settings.security.https_enable`)),se(4),Py(N_(25,26,`settings.security.https_enable_desc`)),se(2),Le(e.runningOnRaspbianImage?26:27),se(4),vy(`checked`,e.runningOnRaspbianImage||e.uiSslTypeFormControl.value!==`off`)(`disabled`,e.isPwa||e.runningOnRaspbianImage),Cr(`aria-label`,N_(31,28,`settings.security.https_enable`))}}function vs(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`security`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,_s,33,30,`ul`,168),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().security?`true`:`false`)(`aria-controls`,`fieldsSecurity`),se(),Ay(`fa-chevron-down`,e.showFields().security)(`fa-chevron-right`,!e.showFields().security),se(),kt$1(` `,N_(5,8,`settings.network.title_security`),` `),se(2),Le(e.showFields().security?6:-1)}}function fs(n,p){n&1&&Dy(0,`i`,26)}function bs(n,p){if(n&1){let e=sc();Va$1(0,`p`,138),Ot$1(1),S_(2,`translate`),jd(),Va$1(3,`ul`,184)(4,`li`,22)(5,`div`,27)(6,`span`),Ot$1(7),S_(8,`translate`),Dy(9,`br`),Va$1(10,`small`,83),Ot$1(11),S_(12,`translate`),jd()(),Va$1(13,`div`,91)(14,`div`,92),Dy(15,`input`,185),S_(16,`translate`),db(),Dy(17,`label`,186),jd(),Fe(18,fs,1,0,`i`,26),jd()()(),Va$1(19,`li`,22)(20,`div`,27)(21,`span`,89),Ot$1(22),S_(23,`translate`),Dy(24,`br`),Va$1(25,`small`,83),Ot$1(26),S_(27,`translate`),jd()(),Va$1(28,`button`,29),S_(29,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).removeSingleCachedAccessories())}),Dy(30,`i`,30),jd()()(),Va$1(31,`li`,22)(32,`div`,27)(33,`span`,89),Ot$1(34),S_(35,`translate`),Dy(36,`br`),Va$1(37,`small`,83),Ot$1(38),S_(39,`translate`),jd()(),Va$1(40,`button`,29),S_(41,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).removeBridgeAccessories())}),Dy(42,`i`,30),jd()()(),Va$1(43,`li`,22)(44,`div`,27)(45,`span`,89),Ot$1(46),S_(47,`translate`),Dy(48,`br`),Va$1(49,`small`,83),Ot$1(50),S_(51,`translate`),jd()(),Va$1(52,`button`,29),S_(53,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).removeAllCachedAccessories())}),Dy(54,`i`,30),jd()()()()}if(n&2){let e=ve(3);se(),Py(N_(2,27,`settings.cache.desc`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-accessory-debug`)),Cr(`inert`,e.isItemHidden(`setting-accessory-debug`)||null),se(3),kt$1(` `,N_(8,29,`settings.accessory.debug`)),se(4),Py(N_(12,31,`settings.accessory.debug_desc`)),se(4),vy(`formControl`,e.uiAccDebugFormControl),Cr(`aria-label`,N_(16,33,`settings.accessory.debug`)),pb(),se(3),Le(e.uiAccDebugIsSaving()?18:-1),se(),Ay(`setting-hidden`,e.isItemHidden(`setting-reset-accessory-ind`)),Cr(`inert`,e.isItemHidden(`setting-reset-accessory-ind`)||null),se(3),kt$1(` `,N_(23,35,`reset.accessory_ind.title`)),se(4),Py(N_(27,37,`reset.accessory_ind.desc`)),se(2),Cr(`aria-label`,N_(29,39,`reset.accessory_ind.title`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-reset-bridge-accessories`)),Cr(`inert`,e.isItemHidden(`setting-reset-bridge-accessories`)||null),se(3),kt$1(` `,N_(35,41,`reset.bridge_accessories.title`)),se(4),Py(N_(39,43,`reset.bridge_accessories.desc`)),se(2),Cr(`aria-label`,N_(41,45,`reset.accessory_all.title`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-reset-accessory-all`)),Cr(`inert`,e.isItemHidden(`setting-reset-accessory-all`)||null),se(3),kt$1(` `,N_(47,47,`reset.accessory_all.title`)),se(4),Py(N_(51,49,`reset.accessory_all.desc`)),se(2),Cr(`aria-label`,N_(53,51,`reset.accessory_all.title`))}}function Cs(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`cache`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,bs,55,53),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().cache?`true`:`false`)(`aria-controls`,`fieldsCache`),se(),Ay(`fa-chevron-down`,e.showFields().cache)(`fa-chevron-right`,!e.showFields().cache),se(),kt$1(` `,N_(5,8,`menu.label_accessories`),` `),se(2),Le(e.showFields().cache?6:-1)}}function xs(n,p){if(n&1){let e=sc();Va$1(0,`p`,138),Ot$1(1),S_(2,`translate`),jd(),Va$1(3,`ul`,187)(4,`li`,22)(5,`div`,27)(6,`span`,89),Ot$1(7),S_(8,`translate`),Dy(9,`br`),Va$1(10,`small`,83),Ot$1(11),S_(12,`translate`),jd()(),Va$1(13,`button`,29),S_(14,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).unpairAccessory())}),Dy(15,`i`,30),jd()()(),Va$1(16,`li`,22)(17,`div`,27)(18,`span`,89),Ot$1(19),S_(20,`translate`),S_(21,`titlecase`),Dy(22,`br`),Va$1(23,`small`,83),Ot$1(24),S_(25,`translate`),jd()(),Va$1(26,`button`,29),S_(27,`translate`),ac(`click`,function(){Ko(e);return Qo(ve(3).resetHomebridgeState())}),Dy(28,`i`,30),jd()()()()}if(n&2){let e=ve(3);se(),Py(N_(2,13,`reset.bridges.desc`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-reset-bridge-ind`)),Cr(`inert`,e.isItemHidden(`setting-reset-bridge-ind`)||null),se(3),kt$1(` `,N_(8,15,`reset.bridge_ind.title`)),se(4),Py(N_(12,17,`reset.bridge_ind.desc`)),se(2),Cr(`aria-label`,N_(14,19,`reset.bridge_ind.title`)),se(3),Ay(`setting-hidden`,e.isItemHidden(`setting-reset-bridge-all`)),Cr(`inert`,e.isItemHidden(`setting-reset-bridge-all`)||null),se(3),kt$1(` `,N_(21,23,N_(20,21,`reset.bridge_all.title`))),se(5),Py(N_(25,25,`reset.bridge_all.desc`)),se(2),Cr(`aria-label`,N_(27,27,`reset.bridge_all.title`))}}function Ss(n,p){if(n&1){let e=sc();Va$1(0,`div`,16)(1,`h5`,18)(2,`button`,19),ac(`click`,function(){Ko(e);return Qo(ve(2).toggleSection(`reset`))}),Dy(3,`i`,20),Ot$1(4),S_(5,`translate`),jd()(),Fe(6,xs,29,29),jd()}if(n&2){let e=ve(2);se(2),Cr(`aria-expanded`,e.showFields().reset?`true`:`false`)(`aria-controls`,`fieldsReset`),se(),Ay(`fa-chevron-down`,e.showFields().reset)(`fa-chevron-right`,!e.showFields().reset),se(),kt$1(` `,N_(5,8,`reset.bridges.title`),` `),se(2),Le(e.showFields().reset?6:-1)}}function ys(n,p){if(n&1&&(Va$1(0,`div`,15),Fe(1,jn,7,10,`div`,16),Fe(2,ia,7,10,`div`,16),Fe(3,fa,7,10,`div`,16),Fe(4,Da,7,10,`div`,16),Fe(5,Oa,7,10,`div`,16),Fe(6,Ya,7,10,`div`,16),Fe(7,ls,7,10,`div`,16),Fe(8,vs,7,10,`div`,16),Fe(9,Cs,7,10,`div`,16),Fe(10,Ss,7,10,`div`,16),Dy(11,`div`,17),jd()),n&2){let e=ve();Ay(`theme-transitioning`,e.isThemeTransitioning()),se(),Le(e.isSectionVisible(`general`)?1:-1),se(),Le(e.isSectionVisible(`display`)?2:-1),se(),Le(e.isSectionVisible(`startup`)?3:-1),se(),Le(e.isSectionVisible(`network`)?4:-1),se(),Le(e.isMatterSupported&&e.isSectionVisible(`hap`)?5:-1),se(),Le(e.isMatterSupported&&e.isSectionVisible(`matter`)?6:-1),se(),Le(e.isSectionVisible(`terminal`)?7:-1),se(),Le(e.isSectionVisible(`security`)?8:-1),se(),Le(e.isSectionVisible(`cache`)?9:-1),se(),Le(e.isSectionVisible(`reset`)?10:-1)}}var Ol=(()=>{class n$1{destroyRef=g(Z);injector=g(Te);cdr=g(hc);$api=g(U3);$errors=g(m);$modal=g(si$1);$notification=g(j);$router=g(le);$settings=g(zt$1);$terminal=g(L);$toastr=g(z0);$translate=g(Nf);searchInput=a$(`searchInput`);showSearchBar=q(!1);searchQuery=q(``);isThemeTransitioning=q(!1);showFields=q({general:!0,display:!0,startup:!0,network:!0,hap:!0,matter:!0,security:!0,terminal:!0,reset:!0,cache:!0});hiddenItems=q({});sectionItems={general:[`setting-name`,`setting-backup`,`setting-restore`,`setting-users`],display:[`setting-lang`,`setting-theme`,`setting-lighting`,`setting-menu`,`setting-temp`,`setting-terminal-font-size`,`setting-terminal-font-weight`,`setting-terminal-lighting-mode`,`setting-wallpaper`],startup:[`setting-debug`,`setting-keep`,`setting-insecure`,`setting-security-control`,`setting-scheduled-restart`,`setting-metrics-startup`,`setting-package-path`,`setting-linux-shutdown`,`setting-linux-restart`,`setting-linux-temp`,`setting-env-debug-manual`,`setting-env-node`,`setting-docker-startup`],network:[`setting-interfaces`,`setting-mdns`,`setting-mdns-advertise`,`setting-port-hb`,`setting-port-range`,`setting-network-host`,`setting-network-proxy`,`setting-ui-port-network`,`setting-port-overview`],hap:[`setting-hap-enabled`,`setting-hap-disable-identifying-material`],matter:[`setting-matter-enabled`,`setting-matter-port`,`setting-matter-port-range`,`setting-matter-disable-ipv4`],terminal:[`setting-terminal-log-max`,`setting-terminal-log-truncate`,`setting-terminal-persistence`,`setting-terminal-warning`,`setting-terminal-buffer`],security:[`setting-security-auth`,`setting-session-inactivity`,`setting-security-session`,`setting-security-https`],cache:[`setting-accessory-debug`,`setting-reset-accessory-ind`,`setting-reset-bridge-accessories`,`setting-reset-accessory-all`],reset:[`setting-reset-bridge-ind`,`setting-reset-bridge-all`]};loading=q(!0);debugFieldDesc=`settings.startup.debug_desc_v1`;showAvahiMdnsOption=q(!1);showResolvedMdnsOption=q(!1);adaptersAvailable=q([]);adaptersSelected=q([]);runningInDocker=this.$settings.env.runningInDocker;runningOnRaspberryPi=this.$settings.env.runningOnRaspberryPi;runningOnRaspbianImage=this.$settings.env.runningOnRaspbianImage;platform=this.$settings.env.platform;enableTerminalAccess=this.$settings.env.enableTerminalAccess;isMatterSupported=this.$settings.isFeatureEnabled(`matterSupport`);allowDisableAllProtocols=this.$settings.isFeatureEnabled(`disableAllProtocols`);allowMatterDisableInPlace=this.$settings.isFeatureEnabled(`matterDisableInPlace`);isProtocolExternalsOnlyEnabled=this.$settings.isFeatureEnabled(`protocolExternalsOnly`);isMatterDisableIpv4Enabled=this.$settings.isFeatureEnabled(`matterDisableIpv4`);isHapDisableIdentifyingMaterialEnabled=this.$settings.isFeatureEnabled(`hapDisableIdentifyingMaterial`);isPwa=!!n();hbNameIsInvalid=q(!1);hbNameIsSaving=q(!1);hbNameFormControl=new Se(``);uiLangIsSaving=q(!1);uiLangFormControl=new Se(``);uiThemeIsSaving=q(!1);uiThemeFormControl=new Se(``);uiLightIsSaving=q(!1);uiLightFormControl=new Se(``);uiMenuIsSaving=q(!1);uiMenuFormControl=new Se(``);uiTempIsSaving=q(!1);uiTempFormControl=new Se(``);uiTerminalPersistenceIsSaving=q(!1);uiTerminalPersistenceFormControl=new Se(!1);uiTerminalHideWarningIsSaving=q(!1);uiTerminalHideWarningFormControl=new Se(!1);uiTerminalBufferSizeIsSaving=q(!1);uiTerminalBufferSizeIsInvalid=q(!1);uiTerminalBufferSizeFormControl=new Se(globalThis.terminal.bufferSize);uiTerminalFontSizeIsSaving=q(!1);uiTerminalFontSizeFormControl=new Se(13);fontSizes=[10,11,12,13,14,15,16,17,18,19,20];uiTerminalFontWeightIsSaving=q(!1);uiTerminalFontWeightFormControl=new Se(`400`);fontWeights=[`100`,`200`,`300`,`400`,`500`,`600`,`700`,`800`,`900`,`bold`,`normal`];uiTerminalLightingModeIsSaving=q(!1);uiTerminalLightingModeFormControl=new Se(`dark`);get terminalThemes(){return this.$settings.actualLightingMode===`light`?[`light`,`dark`]:[`dark`]}get isTerminalLightingModeDisabled(){return this.$settings.actualLightingMode===`dark`}hbDebugIsSaving=q(!1);hbDebugFormControl=new Se(!1);hbInsecureIsSaving=q(!1);hbInsecureFormControl=new Se(!1);hbKeepIsSaving=q(!1);hbKeepFormControl=new Se(!1);hbEnvDebugIsSaving=q(!1);hbEnvDebugFormControl=new Se(``);hbEnvNodeIsSaving=q(!1);hbEnvNodeFormControl=new Se(``);hbLogSizeIsInvalid=q(!1);hbLogSizeIsSaving=q(!1);hbLogSizeFormControl=new Se(-1);hbLogTruncateIsInvalid=q(!1);hbLogTruncateIsSaving=q(!1);hbLogTruncateFormControl=new Se(0);hbMDnsIsSaving=q(!1);hbMDnsFormControl=new Se(``);enableMdnsAdvertiseFormControl=new Se(!1);enableMdnsAdvertiseIsSaving=q(!1);hbPortIsInvalid=q(!1);hbPortIsSaving=q(!1);hbPortFormControl=new Se(0);uiPortIsInvalid=q(!1);uiPortIsSaving=q(!1);uiPortFormControl=new Se(0);hbStartPortIsInvalid=q(!1);hbStartPortIsSaving=q(!1);hbStartPortFormControl=new Se(0);hbEndPortIsInvalid=q(!1);hbEndPortIsSaving=q(!1);hbEndPortFormControl=new Se(0);uiHostIsSaving=q(!1);uiHostFormControl=new Se(``);uiProxyHostIsSaving=q(!1);uiProxyHostFormControl=new Se(``);uiAuthIsSaving=q(!1);uiAuthFormControl=new $n$1(!0);uiSessionTimeoutDaysIsInvalid=q(!1);uiSessionTimeoutHoursIsInvalid=q(!1);uiSessionTimeoutMinutesIsInvalid=q(!1);uiSessionTimeoutIsSaving=q(!1);uiSessionTimeoutDaysFormControl=new Se(0);uiSessionTimeoutHoursFormControl=new Se(8);uiSessionTimeoutMinutesFormControl=new Se(0);uiSessionTimeoutInactivityBasedIsSaving=q(!1);uiSessionTimeoutInactivityBasedFormControl=new Se(!1);uiSslTypeFormControl=new Se(`off`);uiSslKeyIsSaving=q(!1);uiSslKeyFormControl=new Se(``);uiSslCertIsSaving=q(!1);uiSslCertFormControl=new Se(``);uiSslPfxIsSaving=q(!1);uiSslPfxFormControl=new Se(``);uiSslPassphraseIsSaving=q(!1);uiSslPassphraseFormControl=new Se(``);uiSslSelfSignedHostnamesIsSaving=q(!1);uiSslSelfSignedHostnamesFormControl=new Se(``);hbPackageIsSaving=q(!1);hbPackageFormControl=new Se(``);uiMetricsIsSaving=q(!1);uiMetricsFormControl=new Se(!0);uiAccDebugIsSaving=q(!1);uiAccDebugFormControl=new Se(!1);uiTempFileIsSaving=q(!1);uiTempFileFormControl=new Se(``);hbLinuxShutdownIsSaving=q(!1);hbLinuxShutdownFormControl=new Se(``);hbLinuxRestartIsSaving=q(!1);hbLinuxRestartFormControl=new Se(``);scheduledRestartCronIsInvalid=q(!1);scheduledRestartCronIsSaving=q(!1);scheduledRestartCronFormControl=new Se(``);hapEnabledIsSaving=q(!1);hapEnabledFormControl=new Se(!0);hapExternalsOnlyIsSaving=q(!1);hapExternalsOnlyFormControl=new Se(!1);hapDisableIdentifyingMaterialIsSaving=q(!1);hapDisableIdentifyingMaterialFormControl=new Se(!1);matterEnabledIsSaving=q(!1);matterEnabledFormControl=new Se(!1);matterExternalsOnlyIsSaving=q(!1);matterExternalsOnlyFormControl=new Se(!1);matterPortIsInvalid=q(!1);matterPortIsSaving=q(!1);matterPortFormControl=new Se(0);matterStartPortIsInvalid=q(!1);matterStartPortIsSaving=q(!1);matterStartPortFormControl=new Se(0);matterEndPortIsInvalid=q(!1);matterEndPortIsSaving=q(!1);matterEndPortFormControl=new Se(0);matterDisableIpv4IsSaving=q(!1);matterDisableIpv4FormControl=new Se(!1);matterConfigCache={};linkDebug=`<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Debug-Common-Values" target="_blank" rel="noopener noreferrer"><i class="fas fa-up-right-from-square primary-text"></i></a>`;linkRaspbianSsl=`<a href="https://github.com/homebridge/homebridge-raspbian-image/wiki/SSL-HTTPS-Access" target="_blank" rel="noopener noreferrer"><i class="fas fa-up-right-from-square primary-text"></i></a>`;linkCron=`<a href="https://crontab.guru/" target="_blank" rel="noopener noreferrer"><i class="fas fa-up-right-from-square primary-text"></i></a>`;toggleSearch(){this.showSearchBar.update(e=>!e),this.showSearchBar()?Yr(this.injector,()=>{pm(()=>{let e=this.searchInput();e&&e.nativeElement.focus()})}):this.clearSearch()}onSearchChange(e){this.searchQuery.set(e),this.filterSettings()}clearSearch(){this.searchQuery.set(``),this.filterSettings()}filterSettings(){if(this.hiddenItems.set({}),!this.searchQuery())return;let e=this.searchQuery().toLowerCase(),i=this.getItemsContent(),a=this.getSectionContent(),v=new Set;for(let[K,ne]of Object.entries(a))ne.toLowerCase().includes(e)&&v.add(K);let N={};Object.entries(i).forEach(([K,ne])=>{if(Object.entries(this.sectionItems).some(([w,At])=>v.has(w)&&At.includes(K)))return;ne&&ne.toLowerCase().includes(e)||(N[K]=!0)});for(let K of this.getUnavailableItems())N[K]=!0;this.hiddenItems.set(N)}getUnavailableItems(){let e=[];return this.platform!==`linux`?e.push(`setting-linux-shutdown`,`setting-linux-restart`,`setting-linux-temp`):this.runningOnRaspberryPi||e.push(`setting-linux-temp`),this.runningInDocker||e.push(`setting-docker-startup`),this.matterEnabledFormControl.value||e.push(`setting-matter-port`,`setting-matter-port-range`,`setting-matter-disable-ipv4`),this.isMatterDisableIpv4Enabled||e.push(`setting-matter-disable-ipv4`),this.isHapDisableIdentifyingMaterialEnabled||e.push(`setting-hap-disable-identifying-material`),this.hbLogSizeFormControl.value>0||e.push(`setting-terminal-log-truncate`),this.enableTerminalAccess?this.uiTerminalPersistenceFormControl.value?e.push(`setting-terminal-warning`):e.push(`setting-terminal-buffer`):e.push(`setting-terminal-persistence`,`setting-terminal-warning`,`setting-terminal-buffer`),this.uiAuthFormControl.value||e.push(`setting-session-inactivity`,`setting-security-session`),e}isItemHidden(e){let i=!!this.hiddenItems()[e];return this.searchQuery(),i}isSectionVisible(e){if(!this.searchQuery())return!0;let i=this.sectionItems[e];return i?i.some(a=>!this.isItemHidden(a)):!0}getSectionContent(){return{general:this.$translate.instant(`settings.general.title_general`),display:this.$translate.instant(`settings.general.title_display`),startup:this.$translate.instant(`settings.title_startup_options`),network:this.$translate.instant(`settings.network.title_network`),hap:`${this.$translate.instant(`settings.hap.title`)} ${this.$translate.instant(`settings.hap.desc`)}`,matter:`${this.$translate.instant(`settings.matter.title`)} ${this.$translate.instant(`settings.matter.desc`)}`,terminal:this.$translate.instant(`settings.network.title_terminal`),security:this.$translate.instant(`settings.network.title_security`),cache:`${this.$translate.instant(`menu.label_accessories`)} ${this.$translate.instant(`settings.cache.desc`)}`,reset:`${this.$translate.instant(`reset.bridges.title`)} ${this.$translate.instant(`reset.bridges.desc`)}`}}getItemsContent(){return{"setting-name":this.$translate.instant(`settings.name`),"setting-backup":this.$translate.instant(`backup.title_backup`),"setting-restore":this.$translate.instant(`config.restore.title`),"setting-users":this.$translate.instant(`menu.tooltip_user_accounts`),"setting-lang":this.$translate.instant(`settings.display.lang`),"setting-theme":this.$translate.instant(`settings.display.theme`),"setting-lighting":this.$translate.instant(`settings.display.lighting_mode`),"setting-menu":this.$translate.instant(`settings.display.menu_mode`),"setting-temp":this.$translate.instant(`settings.display.temp_units`),"setting-terminal-font-size":this.$translate.instant(`settings.terminal.theme`),"setting-terminal-font-weight":this.$translate.instant(`settings.terminal.theme`),"setting-terminal-lighting-mode":this.$translate.instant(`settings.terminal.theme`),"setting-wallpaper":this.$translate.instant(`settings.display.wallpaper`),"setting-debug":this.$translate.instant(`settings.startup.debug`),"setting-keep":this.$translate.instant(`settings.startup.keep_accessories`),"setting-insecure":this.$translate.instant(`settings.startup.insecure`),"setting-security-control":this.$translate.instant(`settings.security.ui_control`),"setting-scheduled-restart":this.$translate.instant(`settings.startup.scheduled_restart`),"setting-metrics-startup":this.$translate.instant(`settings.startup.metrics`),"setting-package-path":this.$translate.instant(`settings.network.hb_package`),"setting-linux-shutdown":this.$translate.instant(`settings.linux.shutdown`),"setting-linux-restart":this.$translate.instant(`settings.linux.restart`),"setting-linux-temp":this.$translate.instant(`settings.linux.temp`),"setting-env-debug-manual":`DEBUG`,"setting-env-node":`NODE OPTIONS`,"setting-docker-startup":this.$translate.instant(`menu.docker.startup_script`),"setting-interfaces":this.$translate.instant(`settings.network.title_network_interfaces`),"setting-mdns":this.$translate.instant(`settings.mdns_advertiser`),"setting-mdns-advertise":this.$translate.instant(`settings.network.mdns_advertise`),"setting-port-hb":this.$translate.instant(`settings.network.port_hb`),"setting-port-range":this.$translate.instant(`settings.network.port_range`),"setting-network-host":this.$translate.instant(`settings.network.host`),"setting-network-proxy":this.$translate.instant(`settings.network.proxy`),"setting-ui-port-network":this.$translate.instant(`settings.network.port_ui`),"setting-port-overview":this.$translate.instant(`settings.ports.title`),"setting-hap-enabled":`${this.$translate.instant(`common.labels.enabled`)} ${this.$translate.instant(`settings.hap.enabled_desc`)}`,"setting-hap-disable-identifying-material":`${this.$translate.instant(`settings.hap.disable_identifying_material`)} ${this.$translate.instant(`settings.hap.disable_identifying_material_desc`)}`,"setting-matter-enabled":`${this.$translate.instant(`common.labels.enabled`)} ${this.$translate.instant(`settings.matter.enabled_desc`)}`,"setting-matter-port":`${this.$translate.instant(`settings.matter.port`)} ${this.$translate.instant(`settings.matter.port_desc`)}`,"setting-matter-port-range":`${this.$translate.instant(`settings.network.port_range`)} ${this.$translate.instant(`settings.matter.port_range_desc`)}`,"setting-matter-disable-ipv4":`${this.$translate.instant(`settings.matter.disable_ipv4`)} ${this.$translate.instant(`settings.matter.disable_ipv4_desc`)}`,"setting-terminal-log-max":this.$translate.instant(`settings.terminal.log_max`),"setting-terminal-log-truncate":this.$translate.instant(`settings.terminal.log_truncate`),"setting-terminal-persistence":this.$translate.instant(`settings.terminal.persistence`),"setting-terminal-warning":this.$translate.instant(`settings.terminal.warning`),"setting-terminal-buffer":this.$translate.instant(`settings.terminal.buffer_size`),"setting-security-auth":this.$translate.instant(`settings.security.auth`),"setting-session-inactivity":this.$translate.instant(`settings.startup.session_inactivity_based`),"setting-security-session":this.$translate.instant(`settings.startup.session`),"setting-security-https":this.$translate.instant(`settings.security.https_enable`),"setting-accessory-debug":this.$translate.instant(`settings.accessory.debug`),"setting-reset-accessory-ind":this.$translate.instant(`reset.accessory_ind.title`),"setting-reset-bridge-accessories":this.$translate.instant(`reset.bridge_accessories.title`),"setting-reset-accessory-all":this.$translate.instant(`reset.accessory_all.title`),"setting-reset-bridge-ind":this.$translate.instant(`reset.bridge_ind.title`),"setting-reset-bridge-all":this.$translate.instant(`reset.bridge_all.title`)}}ngOnInit(){this.initialize()}initialize(){return E(this,null,function*(){let e=this.$translate.instant(`menu.label_settings`);this.$settings.setPageTitle(e),this.$settings.isFeatureEnabled(`childBridgeDebugMode`)&&(this.debugFieldDesc=`settings.startup.debug_desc_v2`),yield this.initNetworkingOptions(),yield this.initStartupSettings(),this.isPwa&&(this.uiPortFormControl.disable(),this.uiHostFormControl.disable(),this.uiProxyHostFormControl.disable(),this.uiSslTypeFormControl.disable(),this.uiSslKeyFormControl.disable(),this.uiSslCertFormControl.disable(),this.uiSslPfxFormControl.disable(),this.uiSslPassphraseFormControl.disable(),this.uiSslSelfSignedHostnamesFormControl.disable()),this.runningOnRaspbianImage&&this.uiSslTypeFormControl.disable(),this.hbNameFormControl.patchValue(this.$settings.env.homebridgeInstanceName,{emitEvent:!1}),this.hbNameFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.hbNameSave(w)),this.uiLangFormControl.patchValue(this.$settings.env.lang,{emitEvent:!1}),this.uiLangFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiLangSave(w)),this.uiThemeFormControl.patchValue(this.$settings.theme,{emitEvent:!1}),this.uiThemeFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiThemeSave(w)),this.uiLightFormControl.patchValue(this.$settings.lightingMode,{emitEvent:!1}),this.uiLightFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiLightSave(w)),this.uiMenuFormControl.patchValue(this.$settings.menuMode,{emitEvent:!1}),this.uiMenuFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiMenuSave(w)),this.uiTempFormControl.patchValue(this.$settings.env.temperatureUnits,{emitEvent:!1}),this.uiTempFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiTempSave(w)),this.uiTerminalPersistenceFormControl.patchValue(this.$settings.env.terminal?.persistence??null,{emitEvent:!1}),this.uiTerminalPersistenceFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiTerminalPersistenceSave(w)),this.uiTerminalHideWarningFormControl.patchValue(this.$settings.env.terminal?.hideWarning??null,{emitEvent:!1}),this.uiTerminalHideWarningFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiTerminalHideWarningSave(w)),this.uiTerminalBufferSizeFormControl.patchValue(this.$settings.env.terminal?.bufferSize??null,{emitEvent:!1}),this.uiTerminalBufferSizeFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiTerminalBufferSizeSave(w));let i=this.$settings.env.terminal?.fontSize;i!==void 0&&(i<10||i>20)?(this.deleteInvalidSetting(`terminal.fontSize`),this.uiTerminalFontSizeFormControl.patchValue(13,{emitEvent:!1})):this.uiTerminalFontSizeFormControl.patchValue(i||13,{emitEvent:!1}),this.uiTerminalFontSizeFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiTerminalFontSizeSave(w));let a=this.$settings.env.terminal?.fontWeight;a!==void 0&&!this.fontWeights.includes(String(a))?(this.deleteInvalidSetting(`terminal.fontWeight`),this.uiTerminalFontWeightFormControl.patchValue(`400`,{emitEvent:!1})):this.uiTerminalFontWeightFormControl.patchValue(a||`400`,{emitEvent:!1}),this.uiTerminalFontWeightFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiTerminalFontWeightSave(w));let v=this.$settings.env.terminal?.lightingMode,N=this.$settings.actualLightingMode===`light`&&v||`dark`;this.uiTerminalLightingModeFormControl.patchValue(N,{emitEvent:!1}),this.isTerminalLightingModeDisabled&&this.uiTerminalLightingModeFormControl.disable({emitEvent:!1}),this.uiTerminalLightingModeFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiTerminalLightingModeSave(w)),this.hbLogSizeFormControl.patchValue(this.$settings.env.log?.maxSize??null,{emitEvent:!1}),this.hbLogSizeFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.hbLogSizeSave(w)),this.hbLogTruncateFormControl.patchValue(this.$settings.env.log?.truncateSize??null,{emitEvent:!1}),this.hbLogTruncateFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.hbLogTruncateSave(w)),this.uiPortFormControl.patchValue(this.$settings.env.port,{emitEvent:!1}),this.uiPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiPortSave(w)),this.uiAuthFormControl.patchValue(this.$settings.formAuth,{emitEvent:!1}),this.uiAuthFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiAuthSave(w));let K=this.$settings.sessionTimeout,ne=Math.floor(K/86400),Be=Math.floor(K%86400/3600),Fe=Math.floor(K%3600/60);this.uiSessionTimeoutDaysFormControl.patchValue(ne,{emitEvent:!1}),this.uiSessionTimeoutHoursFormControl.patchValue(Be,{emitEvent:!1}),this.uiSessionTimeoutMinutesFormControl.patchValue(Fe,{emitEvent:!1}),this.uiSessionTimeoutDaysFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(()=>this.uiSessionTimeoutSaveFromFields()),this.uiSessionTimeoutHoursFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(()=>this.uiSessionTimeoutSaveFromFields()),this.uiSessionTimeoutMinutesFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(()=>this.uiSessionTimeoutSaveFromFields()),this.uiSessionTimeoutInactivityBasedFormControl.patchValue(this.$settings.sessionTimeoutInactivityBased||!1,{emitEvent:!1}),this.uiSessionTimeoutInactivityBasedFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiSessionTimeoutInactivityBasedSave(w)),this.uiSslKeyFormControl.patchValue(this.$settings.env.ssl?.key||``,{emitEvent:!1}),this.uiSslKeyFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiSslKeySave(w)),this.uiSslCertFormControl.patchValue(this.$settings.env.ssl?.cert||``,{emitEvent:!1}),this.uiSslCertFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiSslCertSave(w)),this.uiSslPfxFormControl.patchValue(this.$settings.env.ssl?.pfx||``,{emitEvent:!1}),this.uiSslPfxFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiSslPfxSave(w)),this.uiSslPassphraseFormControl.patchValue(``,{emitEvent:!1}),this.uiSslPassphraseFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiSslPassphraseSave(w)),this.uiSslSelfSignedHostnamesFormControl.patchValue(this.$settings.env.ssl?.selfSignedHostnames?.join(`, `)||`localhost, 127.0.0.1`,{emitEvent:!1}),this.uiSslSelfSignedHostnamesFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiSslSelfSignedHostnamesSave(w)),this.uiSslTypeFormControl.patchValue(this.$settings.env.ssl?.selfSigned?`selfsigned`:this.$settings.env.ssl?.key||this.$settings.env.ssl?.cert?`keycert`:this.$settings.env.ssl?.pfx||this.$settings.env.ssl?.hasPassphrase?`pfx`:`off`,{emitEvent:!1}),this.uiSslTypeFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiSslTypeSave(w)),this.uiHostFormControl.patchValue(this.$settings.host||``,{emitEvent:!1}),this.uiHostFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiHostSave(w)),this.uiProxyHostFormControl.patchValue(this.$settings.proxyHost||``,{emitEvent:!1}),this.uiProxyHostFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiProxyHostSave(w)),this.hbPackageFormControl.patchValue(this.$settings.env.homebridgePackagePath||``,{emitEvent:!1}),this.hbPackageFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.hbPackageSave(w)),this.uiMetricsFormControl.patchValue(!this.$settings.env.disableServerMetricsMonitoring,{emitEvent:!1}),this.uiMetricsFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiMetricsSave(w)),this.enableMdnsAdvertiseFormControl.patchValue(this.$settings.env.enableMdnsAdvertise||!1,{emitEvent:!1}),this.enableMdnsAdvertiseFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.enableMdnsAdvertiseSave(w)),this.uiAccDebugFormControl.patchValue(this.$settings.env.accessoryControl?.debug??null,{emitEvent:!1}),this.uiAccDebugFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(w=>this.uiAccDebugSave(w)),this.uiTempFileFormControl.patchValue(this.$settings.env.temp??null,{emitEvent:!1}),this.uiTempFileFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.uiTempFileSave(w)),this.hbLinuxShutdownFormControl.patchValue(this.$settings.env.linux?.shutdown??null,{emitEvent:!1}),this.hbLinuxShutdownFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.hbLinuxShutdownSave(w)),this.hbLinuxRestartFormControl.patchValue(this.$settings.env.linux?.restart??null,{emitEvent:!1}),this.hbLinuxRestartFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.hbLinuxRestartSave(w)),this.scheduledRestartCronFormControl.patchValue(this.$settings.env.scheduledRestartCron||``,{emitEvent:!1}),this.scheduledRestartCronFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(w=>this.scheduledRestartCronSave(w)),yield this.initMatterSettings(),yield this.initHapSettings(),this.loading.set(!1)})}openBackupModal(){this.$modal.open(ke,{size:`lg`,backdrop:`static`})}openConfigBackup(){this.$router.navigate([`/config`],{queryParams:{action:`restore`}})}openWallpaperModal(){this.$modal.open(Vt,{size:`lg`,backdrop:`static`})}openSslModal(){return E(this,null,function*(){let e=this.$modal.open(Rt,{size:`lg`,backdrop:`static`});try{let i=yield e.result;this.uiSslTypeFormControl.patchValue(i,{emitEvent:!1}),this.cdr.detectChanges(),this.$settings.showRestartToast()}catch(i){}})}resetHomebridgeState(){this.$modal.open(Ft,{size:`lg`,backdrop:`static`})}unpairAccessory(){this.$modal.open(Pt,{size:`lg`,backdrop:`static`})}removeAllCachedAccessories(){this.$modal.open(Mt,{size:`lg`,backdrop:`static`})}accessoryUiControl(){return E(this,null,function*(){try{let e=uy([{provide:E$1,useValue:{existingBlacklist:this.$settings.env.accessoryControl?.instanceBlacklist||[]}}],this.injector);yield this.$modal.open(wt,{size:`lg`,backdrop:`static`,injector:e}).result,this.$settings.showRestartToast()}catch(e){e!==`Dismiss`&&(console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`)))}})}removeSingleCachedAccessories(){let e=uy([{provide:p,useValue:{selectedBridge:``}}],this.injector);this.$modal.open(Fe$1,{size:`lg`,backdrop:`static`,injector:e})}removeBridgeAccessories(){this.$modal.open(Bt,{size:`lg`,backdrop:`static`})}selectNetworkInterfaces(){return E(this,null,function*(){let e=uy([{provide:i,useValue:{adaptersAvailable:this.adaptersAvailable(),adaptersSelected:this.adaptersSelected()}}],this.injector),i$1=this.$modal.open(Dt,{size:`lg`,backdrop:`static`,injector:e});try{let a=yield i$1.result;this.buildBridgeNetworkAdapterList(a),yield this.$api.put(`/server/network-interfaces/bridge`,{adapters:a}),this.$settings.showRestartToast()}catch(a){a!==`Dismiss`&&(console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`)))}})}openPortOverview(){this.$modal.open($t,{size:`lg`,backdrop:`static`})}toggleSection(e){this.showFields.set(x(w({},this.showFields()),{[e]:!this.showFields()[e]}))}initStartupSettings(){return E(this,null,function*(){try{let e=yield this.$api.get(`/platform-tools/hb-service/homebridge-startup-settings`);this.hbDebugFormControl.patchValue(e.HOMEBRIDGE_DEBUG,{emitEvent:!1}),this.hbDebugFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(i=>this.hbDebugSave(i)),this.hbInsecureFormControl.patchValue(e.HOMEBRIDGE_INSECURE,{emitEvent:!1}),this.hbInsecureFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(i=>this.hbInsecureSave(i)),this.hbKeepFormControl.patchValue(e.HOMEBRIDGE_KEEP_ORPHANS,{emitEvent:!1}),this.hbKeepFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(i=>this.hbKeepSave(i)),this.hbEnvDebugFormControl.patchValue(e.ENV_DEBUG,{emitEvent:!1}),this.hbEnvDebugFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(i=>this.hbEnvDebugSave(i)),this.hbEnvNodeFormControl.patchValue(e.ENV_NODE_OPTIONS,{emitEvent:!1}),this.hbEnvNodeFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(i=>this.hbEnvNodeSave(i))}catch(e){console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`))}})}initNetworkingOptions(){return E(this,null,function*(){try{yield this.getNetworkSettings(),(this.$settings.env.runningInLinux||this.$settings.env.runningInDocker||this.$settings.env.runningInSynologyPackage||this.$settings.env.runningInPackageMode)&&(this.showAvahiMdnsOption.set(!0),this.showResolvedMdnsOption.set(!0))}catch(e){console.error(e),this.$toastr.error(this.$errors.toToastMessage(e),this.$translate.instant(`toast.title_error`))}})}getNetworkSettings(){return E(this,null,function*(){let[e,i,a,v,N]=yield Promise.all([this.$api.get(`/server/network-interfaces/system`),this.$api.get(`/server/network-interfaces/bridge`),this.$api.get(`/server/mdns-advertiser`),this.$api.get(`/server/port`),this.$api.get(`/server/ports`)]);this.adaptersAvailable.set(e),this.buildBridgeNetworkAdapterList(i),this.hbMDnsFormControl.patchValue(a.advertiser,{emitEvent:!1}),this.hbMDnsFormControl.valueChanges.pipe(Wf(750),An$1(this.destroyRef)).subscribe(K=>this.hbMDnsSave(K)),this.hbPortFormControl.patchValue(v.port,{emitEvent:!1}),this.hbPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(K=>this.hbPortSave(K)),this.hbStartPortFormControl.patchValue(N.start??null,{emitEvent:!1}),this.hbStartPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(K=>this.hbStartPortSave(K)),this.hbEndPortFormControl.patchValue(N.end??null,{emitEvent:!1}),this.hbEndPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(K=>this.hbEndPortSave(K))})}pendingUiChanges=new Map;pendingUiFlushTimer=null;pendingUiFlush=null;static UI_FLUSH_COALESCE_MS=150;saveUiSettingChange(e,i){return E(this,null,function*(){try{yield this.queueUiSettingChange(e,i)}catch(a){console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`))}})}queueUiSettingChange(e,i){if(this.pendingUiChanges.set(e,i),!this.pendingUiFlush){let a,v,N=new Promise((K,ne)=>{a=K,v=ne});this.pendingUiFlush={promise:N,resolve:a,reject:v}}return this.pendingUiFlushTimer&&clearTimeout(this.pendingUiFlushTimer),this.pendingUiFlushTimer=setTimeout(()=>{this.flushPendingUiChanges()},n$1.UI_FLUSH_COALESCE_MS),this.pendingUiFlush.promise}flushPendingUiChanges(){return E(this,null,function*(){if(this.pendingUiFlushTimer&&(clearTimeout(this.pendingUiFlushTimer),this.pendingUiFlushTimer=null),this.pendingUiChanges.size===0||!this.pendingUiFlush)return;let e=Object.fromEntries(this.pendingUiChanges),i=this.pendingUiFlush;this.pendingUiChanges=new Map,this.pendingUiFlush=null;try{yield this.$api.patch(`/config-editor/ui`,e),i.resolve()}catch(a){i.reject(a)}})}hbNameSave(e){return E(this,null,function*(){if(!e||!O$1.test(e)){this.hbNameIsInvalid.set(!0);return}try{this.hbNameIsSaving.set(!0),yield this.$api.put(`/server/name`,{name:e}),this.$settings.setEnvItem(`homebridgeInstanceName`,e),this.hbNameIsInvalid.set(!1),setTimeout(()=>{this.hbNameIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbNameIsSaving.set(!1)}})}uiLangSave(e){return E(this,null,function*(){try{this.uiLangIsSaving.set(!0),this.$settings.setLang(e),yield this.saveUiSettingChange(`lang`,e),setTimeout(()=>{this.uiLangIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiLangIsSaving.set(!1)}})}uiThemeSave(e){return E(this,null,function*(){try{this.uiThemeIsSaving.set(!0),this.isThemeTransitioning.set(!0),yield new Promise(i=>setTimeout(i,250)),this.$settings.setTheme(e),yield this.saveUiSettingChange(`theme`,e),yield new Promise(i=>setTimeout(i,100)),this.isThemeTransitioning.set(!1),setTimeout(()=>{this.uiThemeIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiThemeIsSaving.set(!1),this.isThemeTransitioning.set(!1)}})}uiLightSave(e){return E(this,null,function*(){try{this.uiLightIsSaving.set(!0),this.isThemeTransitioning.set(!0),yield new Promise(i=>setTimeout(i,250)),this.$settings.setLightingMode(e,`user`),yield this.saveUiSettingChange(`lightingMode`,e),yield new Promise(i=>setTimeout(i,100)),this.isThemeTransitioning.set(!1),setTimeout(()=>{this.uiLightIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiLightIsSaving.set(!1),this.isThemeTransitioning.set(!1)}})}uiMenuSave(e){return E(this,null,function*(){try{this.uiMenuIsSaving.set(!0),this.$settings.setMenuMode(e),yield this.saveUiSettingChange(`menuMode`,e),window.location.reload()}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiMenuIsSaving.set(!1)}})}uiTempSave(e){return E(this,null,function*(){try{this.uiTempIsSaving.set(!0),this.$settings.setEnvItem(`temperatureUnits`,e),yield this.saveUiSettingChange(`tempUnits`,e),setTimeout(()=>{this.uiTempIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTempIsSaving.set(!1)}})}uiTerminalPersistenceSave(e){return E(this,null,function*(){if(!e&&this.$terminal.hasActiveSession()){let i=uy([{provide:A,useValue:{title:this.$translate.instant(`settings.terminal.persistence_confirm_title`),message:this.$translate.instant(`settings.terminal.persistence_confirm_message`),message2:this.$translate.instant(`common.phrases.are_you_sure`),confirmButtonLabel:this.$translate.instant(`form.button_continue`),confirmButtonClass:`btn-primary`,faIconClass:`fas fa-exclamation-triangle text-warning`}}],this.injector),a=this.$modal.open(O,{size:`lg`,backdrop:`static`,injector:i});try{yield a.result}catch(v){this.uiTerminalPersistenceFormControl.patchValue(!0,{emitEvent:!1});return}}try{this.uiTerminalPersistenceIsSaving.set(!0),e||this.$terminal.destroyPersistentSession(),this.$settings.setEnvItem(`terminal.persistence`,e),yield this.saveUiSettingChange(`terminal.persistence`,e),setTimeout(()=>{this.uiTerminalPersistenceIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTerminalPersistenceIsSaving.set(!1)}})}uiTerminalHideWarningSave(e){return E(this,null,function*(){try{this.uiTerminalHideWarningIsSaving.set(!0),this.$settings.setEnvItem(`terminal.hideWarning`,e),yield this.saveUiSettingChange(`terminal.hideWarning`,e),setTimeout(()=>{this.uiTerminalHideWarningIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTerminalHideWarningIsSaving.set(!1)}})}uiTerminalBufferSizeSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||e<0||Number.isInteger(e)===!1)){this.uiTerminalBufferSizeIsInvalid.set(!0);return}try{this.uiTerminalBufferSizeIsSaving.set(!0),this.$settings.setEnvItem(`terminal.bufferSize`,e),yield this.saveUiSettingChange(`terminal.bufferSize`,e),this.uiTerminalBufferSizeIsInvalid.set(!1),setTimeout(()=>{this.uiTerminalBufferSizeIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTerminalBufferSizeIsSaving.set(!1)}})}uiTerminalFontSizeSave(e){return E(this,null,function*(){try{this.uiTerminalFontSizeIsSaving.set(!0),this.$settings.setEnvItem(`terminal.fontSize`,e),yield this.saveUiSettingChange(`terminal.fontSize`,e),setTimeout(()=>{this.uiTerminalFontSizeIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTerminalFontSizeIsSaving.set(!1)}})}uiTerminalFontWeightSave(e){return E(this,null,function*(){try{this.uiTerminalFontWeightIsSaving.set(!0),this.$settings.setEnvItem(`terminal.fontWeight`,e),yield this.saveUiSettingChange(`terminal.fontWeight`,e),setTimeout(()=>{this.uiTerminalFontWeightIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTerminalFontWeightIsSaving.set(!1)}})}uiTerminalLightingModeSave(e){return E(this,null,function*(){try{this.uiTerminalLightingModeIsSaving.set(!0),this.$settings.setEnvItem(`terminal.lightingMode`,e),yield this.saveUiSettingChange(`terminal.lightingMode`,e),setTimeout(()=>{this.uiTerminalLightingModeIsSaving.set(!1)},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTerminalLightingModeIsSaving.set(!1)}})}hbDebugSave(e){return E(this,null,function*(){try{this.hbDebugIsSaving.set(!0),yield this.$api.put(`/platform-tools/hb-service/homebridge-startup-settings`,{HOMEBRIDGE_DEBUG:e,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value}),setTimeout(()=>{this.hbDebugIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbDebugIsSaving.set(!1)}})}hbInsecureSave(e){return E(this,null,function*(){try{this.hbInsecureIsSaving.set(!0),yield this.$api.put(`/platform-tools/hb-service/homebridge-startup-settings`,{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:e,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value}),setTimeout(()=>{this.hbInsecureIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbInsecureIsSaving.set(!1)}})}hbKeepSave(e){return E(this,null,function*(){try{this.hbKeepIsSaving.set(!0),yield this.$api.put(`/platform-tools/hb-service/homebridge-startup-settings`,{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:e,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value}),this.$settings.setKeepOrphans(e),setTimeout(()=>{this.hbKeepIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbKeepIsSaving.set(!1)}})}hbEnvDebugSave(e){return E(this,null,function*(){try{this.hbEnvDebugIsSaving.set(!0),yield this.$api.put(`/platform-tools/hb-service/homebridge-startup-settings`,{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:e,ENV_NODE_OPTIONS:this.hbEnvNodeFormControl.value}),setTimeout(()=>{this.hbEnvDebugIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbEnvDebugIsSaving.set(!1)}})}hbEnvNodeSave(e){return E(this,null,function*(){try{this.hbEnvNodeIsSaving.set(!0),yield this.$api.put(`/platform-tools/hb-service/homebridge-startup-settings`,{HOMEBRIDGE_DEBUG:this.hbDebugFormControl.value,HOMEBRIDGE_KEEP_ORPHANS:this.hbKeepFormControl.value,HOMEBRIDGE_INSECURE:this.hbInsecureFormControl.value,ENV_DEBUG:this.hbEnvDebugFormControl.value,ENV_NODE_OPTIONS:e}),setTimeout(()=>{this.hbEnvNodeIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbEnvNodeIsSaving.set(!1)}})}hbLogSizeSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||e<-1||Number.isInteger(e)===!1)){this.hbLogSizeIsInvalid.set(!0);return}try{this.hbLogSizeIsSaving.set(!0),this.$settings.setEnvItem(`log.maxSize`,e),(!e||e===-1)&&(yield this.saveUiSettingChange(`log.truncateSize`,null),this.hbLogTruncateIsInvalid.set(!1)),yield this.saveUiSettingChange(`log.maxSize`,e),this.hbLogSizeIsInvalid.set(!1),setTimeout(()=>{this.hbLogSizeIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbLogSizeIsSaving.set(!1)}})}hbLogTruncateSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||e<0||Number.isInteger(e)===!1)){this.hbLogTruncateIsInvalid.set(!0);return}try{this.hbLogTruncateIsSaving.set(!0),this.$settings.setEnvItem(`log.truncateSize`,e),yield this.saveUiSettingChange(`log.truncateSize`,e),this.hbLogTruncateIsInvalid.set(!1),setTimeout(()=>{this.hbLogTruncateIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbLogTruncateIsSaving.set(!1)}})}hbMDnsSave(e){return E(this,null,function*(){try{this.hbMDnsIsSaving.set(!0),yield this.$api.put(`/server/mdns-advertiser`,{advertiser:e}),setTimeout(()=>{this.hbMDnsIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbMDnsIsSaving.set(!1)}})}hbPortSave(e){return E(this,null,function*(){if(e===this.uiPortFormControl.value){this.hbPortIsInvalid.set(!0);return}try{this.hbPortIsSaving.set(!0),yield this.$api.put(`/server/port`,{port:e}),this.hbPortIsInvalid.set(!1),setTimeout(()=>{this.hbPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbPortIsSaving.set(!1)}})}hbStartPortSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||!Number.isInteger(e)||e<1025||e>65533)){this.hbStartPortIsInvalid.set(!0);return}let i=this.hbEndPortFormControl.value;if(e&&i&&e>=i){this.hbStartPortIsInvalid.set(!0);return}try{this.hbStartPortIsSaving.set(!0),this.hbStartPortIsInvalid.set(!1),yield this.$api.put(`/server/ports`,{start:e||void 0,end:i||void 0}),setTimeout(()=>{this.hbStartPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(a){console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`)),this.hbStartPortIsSaving.set(!1),this.hbStartPortIsInvalid.set(!0)}})}hbEndPortSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||!Number.isInteger(e)||e<1025||e>65533)){this.hbEndPortIsInvalid.set(!0);return}let i=this.hbStartPortFormControl.value;if(e&&i&&i>=e){this.hbEndPortIsInvalid.set(!0);return}try{this.hbEndPortIsSaving.set(!0),this.hbEndPortIsInvalid.set(!1),yield this.$api.put(`/server/ports`,{start:i||void 0,end:e||void 0}),setTimeout(()=>{this.hbEndPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(a){console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`)),this.hbEndPortIsSaving.set(!1),this.hbEndPortIsInvalid.set(!0)}})}uiPortSave(e){return E(this,null,function*(){if(!e||typeof e!=`number`||e<1025||e>65533||Number.isInteger(e)===!1||e===this.hbPortFormControl.value){this.uiPortIsInvalid.set(!0);return}try{this.uiPortIsSaving.set(!0),this.$settings.setEnvItem(`port`,e),yield this.saveUiSettingChange(`port`,e),this.uiPortIsInvalid.set(!1),setTimeout(()=>{this.uiPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiPortIsSaving.set(!1)}})}uiAuthSave(e){return E(this,null,function*(){try{this.uiAuthIsSaving.set(!0),this.$settings.setItem(`formAuth`,e),yield this.saveUiSettingChange(`auth`,e?`form`:`none`),this.$notification.formAuthEnabled.set(e),setTimeout(()=>{this.uiAuthIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiAuthIsSaving.set(!1)}})}uiSessionTimeoutSaveFromFields(){return E(this,null,function*(){let e=this.normalizeSessionTimeoutField(this.uiSessionTimeoutDaysFormControl,this.uiSessionTimeoutDaysIsInvalid,0,365),i=this.normalizeSessionTimeoutField(this.uiSessionTimeoutHoursFormControl,this.uiSessionTimeoutHoursIsInvalid,0,23),a=this.normalizeSessionTimeoutField(this.uiSessionTimeoutMinutesFormControl,this.uiSessionTimeoutMinutesIsInvalid,0,59);if(e===null||i===null||a===null)return;let v=e*86400+i*3600+a*60;if(v<600){this.uiSessionTimeoutMinutesIsInvalid.set(!0);return}try{this.uiSessionTimeoutIsSaving.set(!0),this.$settings.setItem(`sessionTimeout`,v),yield this.saveUiSettingChange(`sessionTimeout`,v),this.uiSessionTimeoutDaysIsInvalid.set(!1),this.uiSessionTimeoutHoursIsInvalid.set(!1),this.uiSessionTimeoutMinutesIsInvalid.set(!1),setTimeout(()=>{this.uiSessionTimeoutIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(N){console.error(N),this.$toastr.error(this.$errors.toToastMessage(N),this.$translate.instant(`toast.title_error`)),this.uiSessionTimeoutIsSaving.set(!1)}})}normalizeSessionTimeoutField(e,i,a,v){let N=e.value??0;return typeof N!=`number`||Number.isNaN(N)||N<a||N>v||!Number.isInteger(N)?(i.set(!0),null):(i.set(!1),e.patchValue(N,{emitEvent:!1}),N)}uiSessionTimeoutInactivityBasedSave(e){return E(this,null,function*(){try{this.uiSessionTimeoutInactivityBasedIsSaving.set(!0),this.$settings.setItem(`sessionTimeoutInactivityBased`,e),yield this.saveUiSettingChange(`sessionTimeoutInactivityBased`,e),setTimeout(()=>{this.uiSessionTimeoutInactivityBasedIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiSessionTimeoutInactivityBasedIsSaving.set(!1)}})}uiSslKeySave(e){return E(this,null,function*(){try{this.uiSslKeyIsSaving.set(!0),this.$settings.setEnvItem(`ssl.key`,e),yield this.saveUiSettingChange(`ssl.key`,e),setTimeout(()=>{this.uiSslKeyIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiSslKeyIsSaving.set(!1)}})}uiSslCertSave(e){return E(this,null,function*(){try{this.uiSslCertIsSaving.set(!0),this.$settings.setEnvItem(`ssl.cert`,e),yield this.saveUiSettingChange(`ssl.cert`,e),setTimeout(()=>{this.uiSslCertIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiSslCertIsSaving.set(!1)}})}uiSslPfxSave(e){return E(this,null,function*(){try{this.uiSslPfxIsSaving.set(!0),this.$settings.setEnvItem(`ssl.pfx`,e),yield this.saveUiSettingChange(`ssl.pfx`,e),setTimeout(()=>{this.uiSslPfxIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiSslPfxIsSaving.set(!1)}})}uiSslPassphraseSave(e){return E(this,null,function*(){try{this.uiSslPassphraseIsSaving.set(!0),this.$settings.setEnvItem(`ssl.passphrase`,e),yield this.saveUiSettingChange(`ssl.passphrase`,e),setTimeout(()=>{this.uiSslPassphraseIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiSslPassphraseIsSaving.set(!1)}})}uiSslSelfSignedHostnamesSave(e){return E(this,null,function*(){try{this.uiSslSelfSignedHostnamesIsSaving.set(!0);let i=e.split(`,`).map(a=>a.trim()).filter(a=>a.length>0);this.$settings.setEnvItem(`ssl.selfSignedHostnames`,i),yield this.saveUiSettingChange(`ssl.selfSignedHostnames`,i),setTimeout(()=>{this.uiSslSelfSignedHostnamesIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiSslSelfSignedHostnamesIsSaving.set(!1)}})}uiSslTypeSave(e){return E(this,null,function*(){switch(e){case`keycert`:this.uiSslPfxFormControl.patchValue(``,{emitEvent:!1}),this.uiSslPassphraseFormControl.patchValue(``,{emitEvent:!1}),this.$settings.setEnvItem(`ssl.pfx`,``),this.$settings.setEnvItem(`ssl.passphrase`,``),this.$settings.setEnvItem(`ssl.selfSigned`,!1),yield this.saveUiSettingChange(`ssl.selfSigned`,!1);break;case`pfx`:this.uiSslKeyFormControl.patchValue(``,{emitEvent:!1}),this.uiSslCertFormControl.patchValue(``,{emitEvent:!1}),this.$settings.setEnvItem(`ssl.key`,``),this.$settings.setEnvItem(`ssl.cert`,``),this.$settings.setEnvItem(`ssl.selfSigned`,!1),yield this.saveUiSettingChange(`ssl.selfSigned`,!1);break;case`selfsigned`:this.uiSslKeyFormControl.patchValue(``,{emitEvent:!1}),this.uiSslCertFormControl.patchValue(``,{emitEvent:!1}),this.uiSslPfxFormControl.patchValue(``,{emitEvent:!1}),this.uiSslPassphraseFormControl.patchValue(``,{emitEvent:!1}),this.$settings.setEnvItem(`ssl.key`,``),this.$settings.setEnvItem(`ssl.cert`,``),this.$settings.setEnvItem(`ssl.pfx`,``),this.$settings.setEnvItem(`ssl.passphrase`,``),this.$settings.setEnvItem(`ssl.selfSigned`,!0),yield this.saveUiSettingChange(`ssl.selfSigned`,!0),this.uiSslSelfSignedHostnamesFormControl.value||this.uiSslSelfSignedHostnamesFormControl.patchValue(`localhost, 127.0.0.1`,{emitEvent:!0}),this.$settings.showRestartToast();break;default:this.uiSslKeyFormControl.patchValue(``,{emitEvent:!1}),this.uiSslCertFormControl.patchValue(``,{emitEvent:!1}),this.uiSslPfxFormControl.patchValue(``,{emitEvent:!1}),this.uiSslPassphraseFormControl.patchValue(``,{emitEvent:!1}),this.uiSslSelfSignedHostnamesFormControl.patchValue(``,{emitEvent:!1}),this.$settings.setEnvItem(`ssl.key`,``),this.$settings.setEnvItem(`ssl.cert`,``),this.$settings.setEnvItem(`ssl.pfx`,``),this.$settings.setEnvItem(`ssl.passphrase`,``),this.$settings.setEnvItem(`ssl.selfSigned`,!1),this.$settings.setEnvItem(`ssl.selfSignedHostnames`,[]),yield this.saveUiSettingChange(`ssl`,``),this.$settings.showRestartToast()}})}uiHostSave(e){return E(this,null,function*(){try{this.uiHostIsSaving.set(!0),this.$settings.setItem(`host`,e),yield this.saveUiSettingChange(`host`,e),setTimeout(()=>{this.uiHostIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiHostIsSaving.set(!1)}})}uiProxyHostSave(e){return E(this,null,function*(){try{this.uiProxyHostIsSaving.set(!0),this.$settings.setItem(`proxyHost`,e),yield this.saveUiSettingChange(`proxyHost`,e),setTimeout(()=>{this.uiProxyHostIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiProxyHostIsSaving.set(!1)}})}hbPackageSave(e){return E(this,null,function*(){try{this.hbPackageIsSaving.set(!0),this.$settings.setEnvItem(`homebridgePackagePath`,e),yield this.saveUiSettingChange(`homebridgePackagePath`,e),setTimeout(()=>{this.hbPackageIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbPackageIsSaving.set(!1)}})}uiMetricsSave(e){return E(this,null,function*(){try{this.uiMetricsIsSaving.set(!0),this.$settings.setEnvItem(`disableServerMetricsMonitoring`,!e),yield this.saveUiSettingChange(`disableServerMetricsMonitoring`,!e),setTimeout(()=>{this.uiMetricsIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiMetricsIsSaving.set(!1)}})}enableMdnsAdvertiseSave(e){return E(this,null,function*(){try{this.enableMdnsAdvertiseIsSaving.set(!0),this.$settings.setEnvItem(`enableMdnsAdvertise`,e),yield this.saveUiSettingChange(`enableMdnsAdvertise`,e),setTimeout(()=>{this.enableMdnsAdvertiseIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`))}})}uiAccDebugSave(e){return E(this,null,function*(){try{this.uiAccDebugIsSaving.set(!0),this.$settings.setEnvItem(`accessoryControl.debug`,e),yield this.saveUiSettingChange(`accessoryControl.debug`,e),setTimeout(()=>{this.uiAccDebugIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiAccDebugIsSaving.set(!1)}})}uiTempFileSave(e){return E(this,null,function*(){try{this.uiTempFileIsSaving.set(!0),this.$settings.setEnvItem(`temp`,e),yield this.saveUiSettingChange(`temp`,e),setTimeout(()=>{this.uiTempFileIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.uiTempFileIsSaving.set(!1)}})}hbLinuxShutdownSave(e){return E(this,null,function*(){try{this.hbLinuxShutdownIsSaving.set(!0),this.$settings.setEnvItem(`linux.shutdown`,e),yield this.saveUiSettingChange(`linux.shutdown`,e),setTimeout(()=>{this.hbLinuxShutdownIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbLinuxShutdownIsSaving.set(!1)}})}hbLinuxRestartSave(e){return E(this,null,function*(){try{this.hbLinuxRestartIsSaving.set(!0),this.$settings.setEnvItem(`linux.restart`,e),yield this.saveUiSettingChange(`linux.restart`,e),setTimeout(()=>{this.hbLinuxRestartIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(i=>console.error(i)).finally(()=>this.$settings.showRestartToast()).catch(i=>{console.error(i),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hbLinuxRestartIsSaving.set(!1)}})}validateCronExpression(e){if(!e||!e.trim())return!0;let i=e.trim().split(d);return i.length!==5?!1:i.every(a=>U.test(a))}scheduledRestartCronSave(e){return E(this,null,function*(){if(!this.validateCronExpression(e)){this.scheduledRestartCronIsInvalid.set(!0);return}this.scheduledRestartCronIsInvalid.set(!1);try{this.scheduledRestartCronIsSaving.set(!0);let i=e?.trim()?e:null;this.$settings.setEnvItem(`scheduledRestartCron`,i),yield this.saveUiSettingChange(`scheduledRestartCron`,i),setTimeout(()=>{this.scheduledRestartCronIsSaving.set(!1),this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{}).catch(a=>console.error(a)).finally(()=>this.$settings.showRestartToast()).catch(a=>{console.error(a),this.$settings.showRestartToast()})},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.scheduledRestartCronIsSaving.set(!1)}})}deleteInvalidSetting(e){return E(this,null,function*(){try{yield this.$api.delete(`/config-editor/ui/${e}`)}catch(i){console.error(`Failed to delete invalid setting ${e}:`,i)}})}initMatterSettings(){return E(this,null,function*(){try{let[e,i]=yield Promise.all([this.$api.get(`/config-editor/matter`),this.$api.get(`/config-editor/matter/ports`)]),a=e!==null&&e.enabled!==!1;(e?.port||e?.disableIpv4)&&(this.matterConfigCache={port:e.port,disableIpv4:e.disableIpv4===!0||void 0}),a?this.matterPortFormControl.patchValue(e.port||``,{emitEvent:!1}):this.matterPortFormControl.patchValue(0,{emitEvent:!1}),this.matterPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(v=>this.matterPortSave(v)),this.matterDisableIpv4FormControl.patchValue(e?.disableIpv4===!0,{emitEvent:!1}),this.isMatterDisableIpv4Enabled&&this.matterDisableIpv4FormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(v=>this.matterDisableIpv4Save(v===!0)),this.matterStartPortFormControl.patchValue(i.start??null,{emitEvent:!1}),this.matterStartPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(v=>this.matterStartPortSave(v)),this.matterEndPortFormControl.patchValue(i.end??null,{emitEvent:!1}),this.matterEndPortFormControl.valueChanges.pipe(Wf(1500),An$1(this.destroyRef)).subscribe(v=>this.matterEndPortSave(v)),this.matterEnabledFormControl.patchValue(a,{emitEvent:!1}),this.matterExternalsOnlyFormControl.patchValue(e?.externalsOnly===!0,{emitEvent:!1}),this.matterEnabledFormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(v=>this.matterEnabledSave(v)),this.isProtocolExternalsOnlyEnabled&&this.matterExternalsOnlyFormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(v=>this.matterExternalsOnlySave(v===!0))}catch(e){console.error(e),this.matterEnabledFormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(i=>this.matterEnabledSave(i))}})}matterExternalsOnlySave(e){return E(this,null,function*(){if(this.matterEnabledFormControl.value===!1)try{this.matterExternalsOnlyIsSaving.set(!0),yield this.$api.put(`/config-editor/matter/enabled`,{enabled:!1,externalsOnly:e,restart:!1}),yield this.requestFullServiceRestart()}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.matterExternalsOnlyFormControl.patchValue(!e,{emitEvent:!1})}finally{this.matterExternalsOnlyIsSaving.set(!1)}})}matterDisableIpv4Save(e){return E(this,null,function*(){try{this.matterDisableIpv4IsSaving.set(!0);let i=this.matterPortFormControl.value;yield this.$api.put(`/config-editor/matter`,{port:i||void 0,disableIpv4:e||void 0}),setTimeout(()=>{this.matterDisableIpv4IsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.matterDisableIpv4FormControl.patchValue(!e,{emitEvent:!1}),this.matterDisableIpv4IsSaving.set(!1)}})}matterPortSave(e){return E(this,null,function*(){if(!e&&e!==0){try{this.matterPortIsSaving.set(!0),this.matterPortIsInvalid.set(!1),yield this.$api.put(`/config-editor/matter`,{port:void 0,disableIpv4:this.matterDisableIpv4FormControl.value||void 0}),setTimeout(()=>{this.matterPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.matterPortIsSaving.set(!1)}return}if(typeof e!=`number`||e<1024||e>65535||Number.isInteger(e)===!1){this.matterPortIsInvalid.set(!0);return}if([5353,8080,8443].includes(e)){this.matterPortIsInvalid.set(!0),this.$toastr.error(`Port 5353, 8080, and 8443 are reserved and cannot be used`,this.$translate.instant(`toast.title_error`));return}try{this.matterPortIsSaving.set(!0),this.matterPortIsInvalid.set(!1),yield this.$api.put(`/config-editor/matter`,{port:e,disableIpv4:this.matterDisableIpv4FormControl.value||void 0}),setTimeout(()=>{this.matterPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.matterPortIsSaving.set(!1),this.matterPortIsInvalid.set(!0)}})}matterStartPortSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||!Number.isInteger(e)||e<1025||e>65533)){this.matterStartPortIsInvalid.set(!0);return}let i=this.matterEndPortFormControl.value;if(e&&i&&e>=i){this.matterStartPortIsInvalid.set(!0);return}try{this.matterStartPortIsSaving.set(!0),this.matterStartPortIsInvalid.set(!1),yield this.$api.put(`/config-editor/matter/ports`,{start:e||void 0,end:i||void 0}),setTimeout(()=>{this.matterStartPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(a){console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`)),this.matterStartPortIsSaving.set(!1),this.matterStartPortIsInvalid.set(!0)}})}matterEndPortSave(e){return E(this,null,function*(){if(e&&(typeof e!=`number`||!Number.isInteger(e)||e<1025||e>65533)){this.matterEndPortIsInvalid.set(!0);return}let i=this.matterStartPortFormControl.value;if(e&&i&&i>=e){this.matterEndPortIsInvalid.set(!0);return}try{this.matterEndPortIsSaving.set(!0),this.matterEndPortIsInvalid.set(!1),yield this.$api.put(`/config-editor/matter/ports`,{start:i||void 0,end:e||void 0}),setTimeout(()=>{this.matterEndPortIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}catch(a){console.error(a),this.$toastr.error(this.$errors.toToastMessage(a),this.$translate.instant(`toast.title_error`)),this.matterEndPortIsSaving.set(!1),this.matterEndPortIsInvalid.set(!0)}})}matterEnabledSave(e){return E(this,null,function*(){if(!e&&!this.hapEnabledFormControl.value&&!this.allowDisableAllProtocols){this.$toastr.info(this.$translate.instant(`settings.matter.requires_hap`),this.$translate.instant(`toast.title_notice`)),this.matterEnabledFormControl.patchValue(!0,{emitEvent:!1});return}if(this.allowMatterDisableInPlace){try{if(this.matterEnabledIsSaving.set(!0),e){let i=this.matterConfigCache.port;if(!i)try{i=(yield this.$api.get(`/server/port/new/matter`)).port}catch(v){console.error(`Failed to get Matter port, using fallback`,v),i=Math.floor(Math.random()*12+5530)}let a=this.matterConfigCache.disableIpv4||void 0;yield this.$api.put(`/config-editor/matter`,{port:i,disableIpv4:a}),i!==void 0&&this.matterPortFormControl.patchValue(i,{emitEvent:!1}),this.matterDisableIpv4FormControl.patchValue(a===!0,{emitEvent:!1}),this.matterConfigCache={port:i,disableIpv4:a},this.isProtocolExternalsOnlyEnabled&&this.matterExternalsOnlyFormControl.patchValue(!1,{emitEvent:!1})}else{this.matterConfigCache={port:this.matterPortFormControl.value||void 0,disableIpv4:this.matterDisableIpv4FormControl.value||void 0};let i={enabled:!1,restart:!1};this.isProtocolExternalsOnlyEnabled&&(i.externalsOnly=this.matterExternalsOnlyFormControl.value===!0),yield this.$api.put(`/config-editor/matter/enabled`,i)}yield this.requestFullServiceRestart()}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.matterEnabledFormControl.patchValue(!e,{emitEvent:!1})}finally{this.matterEnabledIsSaving.set(!1)}return}try{if(this.matterEnabledIsSaving.set(!0),e){let i;if(this.matterConfigCache.port)i=this.matterConfigCache.port;else try{i=(yield this.$api.get(`/server/port/new/matter`)).port}catch(v){console.error(`Failed to get Matter port, using fallback`,v),i=Math.floor(Math.random()*12+5530)}let a=this.matterConfigCache.disableIpv4||void 0;yield this.$api.put(`/config-editor/matter`,{port:i,disableIpv4:a}),i!==void 0&&this.matterPortFormControl.patchValue(i,{emitEvent:!1}),this.matterDisableIpv4FormControl.patchValue(a===!0,{emitEvent:!1}),this.matterConfigCache={port:i,disableIpv4:a},setTimeout(()=>{this.matterEnabledIsSaving.set(!1),this.$settings.showRestartToast()},1e3)}else{let i=uy([{provide:A,useValue:{title:this.$translate.instant(`settings.matter.disable`),message:this.$translate.instant(this.allowMatterDisableInPlace?`settings.matter.disable_desc_in_place`:`settings.matter.disable_desc`),message2:this.$translate.instant(`common.phrases.are_you_sure`),confirmButtonLabel:this.$translate.instant(`form.button_continue`),confirmButtonClass:`btn-danger`,faIconClass:`fas fa-exclamation-triangle text-warning`}}],this.injector),a=this.$modal.open(O,{size:`lg`,backdrop:`static`,injector:i});try{yield a.result,this.matterConfigCache={port:this.matterPortFormControl.value||void 0},this.$settings.restartToastRef&&(this.$toastr.clear(this.$settings.restartToastRef.toastId),this.$settings.restartToastRef=null),this.$router.navigate([`/restart`],{queryParams:{alreadyRestarting:`true`}}),this.allowMatterDisableInPlace?yield this.$api.put(`/config-editor/matter/enabled`,{enabled:!1}):yield this.$api.delete(`/config-editor/matter`)}catch(v){v===`Dismiss`?(this.matterEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.matterEnabledIsSaving.set(!1)):(console.error(v),this.$toastr.error(this.$errors.toToastMessage(v),this.$translate.instant(`toast.title_error`)),this.matterEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.matterEnabledIsSaving.set(!1))}}}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.matterEnabledFormControl.patchValue(e,{emitEvent:!1}),this.matterEnabledIsSaving.set(!1)}})}initHapSettings(){return E(this,null,function*(){try{let{enabled:e,externalsOnly:i,disableIdentifyingMaterial:a}=yield this.$api.get(`/config-editor/hap`);this.hapEnabledFormControl.patchValue(e,{emitEvent:!1}),this.hapExternalsOnlyFormControl.patchValue(i===!0,{emitEvent:!1}),this.hapDisableIdentifyingMaterialFormControl.patchValue(a===!0,{emitEvent:!1})}catch(e){console.error(e),this.hapEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.hapExternalsOnlyFormControl.patchValue(!1,{emitEvent:!1}),this.hapDisableIdentifyingMaterialFormControl.patchValue(!1,{emitEvent:!1})}this.hapEnabledFormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(e=>this.hapEnabledSave(e)),this.isProtocolExternalsOnlyEnabled&&this.hapExternalsOnlyFormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(e=>this.hapExternalsOnlySave(e===!0)),this.isHapDisableIdentifyingMaterialEnabled&&this.hapDisableIdentifyingMaterialFormControl.valueChanges.pipe(An$1(this.destroyRef)).subscribe(e=>this.hapDisableIdentifyingMaterialSave(e===!0))})}hapExternalsOnlySave(e){return E(this,null,function*(){if(this.hapEnabledFormControl.value===!1)try{this.hapExternalsOnlyIsSaving.set(!0),yield this.$api.put(`/config-editor/hap`,{enabled:!1,externalsOnly:e,disableIdentifyingMaterial:this.hapDisableIdentifyingMaterialFormControl.value===!0,restart:!1}),yield this.requestFullServiceRestart()}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hapExternalsOnlyFormControl.patchValue(!e,{emitEvent:!1})}finally{this.hapExternalsOnlyIsSaving.set(!1)}})}hapDisableIdentifyingMaterialSave(e){return E(this,null,function*(){try{this.hapDisableIdentifyingMaterialIsSaving.set(!0),yield this.$api.put(`/config-editor/hap`,{enabled:this.hapEnabledFormControl.value!==!1,externalsOnly:this.hapExternalsOnlyFormControl.value===!0,disableIdentifyingMaterial:e,restart:!1}),yield this.requestFullServiceRestart()}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hapDisableIdentifyingMaterialFormControl.patchValue(!e,{emitEvent:!1})}finally{this.hapDisableIdentifyingMaterialIsSaving.set(!1)}})}hapEnabledSave(e){return E(this,null,function*(){if(!e&&!this.matterEnabledFormControl.value&&!this.allowDisableAllProtocols){this.$toastr.info(this.$translate.instant(`settings.hap.requires_matter`),this.$translate.instant(`toast.title_notice`)),this.hapEnabledFormControl.patchValue(!0,{emitEvent:!1});return}if(this.allowMatterDisableInPlace){try{this.hapEnabledIsSaving.set(!0);let i={enabled:e,restart:!1};this.isProtocolExternalsOnlyEnabled&&(e?this.hapExternalsOnlyFormControl.patchValue(!1,{emitEvent:!1}):i.externalsOnly=this.hapExternalsOnlyFormControl.value===!0),this.isHapDisableIdentifyingMaterialEnabled&&(i.disableIdentifyingMaterial=this.hapDisableIdentifyingMaterialFormControl.value===!0),yield this.$api.put(`/config-editor/hap`,i),yield this.requestFullServiceRestart()}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hapEnabledFormControl.patchValue(!e,{emitEvent:!1})}finally{this.hapEnabledIsSaving.set(!1)}return}try{if(this.hapEnabledIsSaving.set(!0),e)yield this.$api.put(`/config-editor/hap`,{enabled:!0,disableIdentifyingMaterial:this.isHapDisableIdentifyingMaterialEnabled?this.hapDisableIdentifyingMaterialFormControl.value===!0:void 0}),setTimeout(()=>{this.hapEnabledIsSaving.set(!1),this.$settings.showRestartToast()},1e3);else{let i=uy([{provide:A,useValue:{title:this.$translate.instant(`settings.hap.disable`),message:this.$translate.instant(`settings.hap.disable_desc`),message2:this.$translate.instant(`common.phrases.are_you_sure`),confirmButtonLabel:this.$translate.instant(`form.button_continue`),confirmButtonClass:`btn-danger`,faIconClass:`fas fa-exclamation-triangle text-warning`}}],this.injector),a=this.$modal.open(O,{size:`lg`,backdrop:`static`,injector:i});try{yield a.result,this.$settings.restartToastRef&&(this.$toastr.clear(this.$settings.restartToastRef.toastId),this.$settings.restartToastRef=null),this.$router.navigate([`/restart`],{queryParams:{alreadyRestarting:`true`}}),yield this.$api.put(`/config-editor/hap`,{enabled:!1,disableIdentifyingMaterial:this.isHapDisableIdentifyingMaterialEnabled?this.hapDisableIdentifyingMaterialFormControl.value===!0:void 0})}catch(v){v===`Dismiss`?(this.hapEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.hapEnabledIsSaving.set(!1)):(console.error(v),this.$toastr.error(this.$errors.toToastMessage(v),this.$translate.instant(`toast.title_error`)),this.hapEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.hapEnabledIsSaving.set(!1))}}}catch(i){console.error(i),this.$toastr.error(this.$errors.toToastMessage(i),this.$translate.instant(`toast.title_error`)),this.hapEnabledFormControl.patchValue(!e,{emitEvent:!1}),this.hapEnabledIsSaving.set(!1)}})}buildBridgeNetworkAdapterList(e){if(!e.length){this.adaptersSelected.set([]);return}this.adaptersSelected.set(e.map(i=>{let a=this.adaptersAvailable().find(v=>v.iface===i);return a?{iface:a.iface,selected:!0,missing:!1,ip4:a.ip4,ip6:a.ip6}:{iface:i,selected:!0,missing:!0}}))}requestFullServiceRestart(){return E(this,null,function*(){try{yield this.$api.put(`/platform-tools/hb-service/set-full-service-restart-flag`,{})}catch(e){console.error(e)}finally{this.$settings.showRestartToast()}})}static ɵfac=function(i){return new(i||n$1)};static ɵcmp=nc({type:n$1,selectors:[[`app-settings`]],viewQuery:function(i,a){i&1&&My(a.searchInput,Nn,5),i&2&&$T()},decls:12,vars:11,consts:[[`searchInput`,``],[1,`row`,`mb-3`],[1,`col-6`],[1,`primary-text`,`m-0`],[1,`col-6`,`text-end`],[`type`,`button`,`aria-controls`,`settings-search-region`,1,`btn`,`btn-elegant`,`my-0`,`me-0`,3,`click`],[`aria-hidden`,`true`],[`id`,`settings-search-region`,1,`row`],[1,`settings-content`,3,`theme-transitioning`],[1,`col-md-12`],[`novalidate`,``],[`type`,`text`,1,`search-bar`,3,`ngModelChange`,`placeholder`,`ngModel`,`ngModelOptions`],[`type`,`button`,1,`search-bar-clear`],[`type`,`button`,1,`search-bar-clear`,3,`click`],[`aria-hidden`,`true`,1,`fas`,`fa-square-xmark`],[1,`settings-content`],[1,`my-4`],[1,`pb-3`],[1,`primary-text`,`mt-3`],[`type`,`button`,1,`disclosure-toggle`,3,`click`],[`aria-hidden`,`true`,1,`fa`],[`id`,`fieldsGeneral`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[1,`setting-row`,`list-group-item`],[1,`setting-row-inner`,`d-block`,`d-md-flex`,`justify-content-between`,`align-items-center`],[1,`my-3`,`my-md-0`,`ps-0`,`ps-md-5`,`w-auto`,`d-flex`,`align-items-center`],[`type`,`text`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,3,`formControl`],[`aria-hidden`,`true`,1,`fas`,`fa-floppy-disk`,`primary-text`,`fa-xl`,`me-0`,`me-md-2`,`ms-2`,`ms-md-0`,`order-2`,`order-md-1`,`save-indicator`],[1,`setting-row-inner`,`d-flex`,`justify-content-between`,`align-items-center`],[`aria-hidden`,`true`,1,`pe-2`],[`type`,`button`,1,`btn`,`btn-primary`,`waves-effect`,`m-0`,`ms-3`,`py-1`,`min-w-50`,3,`click`],[`aria-hidden`,`true`,1,`fas`,`fa-arrow-right`],[`routerLink`,`/users`,1,`btn`,`btn-primary`,`waves-effect`,`m-0`,`ms-3`,`py-1`,`min-w-50`],[`id`,`fieldsDisplay`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[1,`custom-select`,`resp-select`,`order-1`,`order-md-2`,3,`formControl`],[`value`,`auto`],[`value`,`en`],[`value`,`bg`],[`value`,`ca`],[`value`,`zh-CN`],[`value`,`zh-TW`],[`value`,`cs`],[`value`,`fi`],[`value`,`fr`],[`value`,`de`],[`value`,`hu`],[`value`,`id`],[`value`,`he`],[`value`,`it`],[`value`,`ja`],[`value`,`ko`],[`value`,`mk`],[`value`,`nl`],[`value`,`no`],[`value`,`pl`],[`value`,`pt`],[`value`,`pt-BR`],[`value`,`ru`],[`value`,`sl`],[`value`,`es`],[`value`,`sv`],[`value`,`th`],[`value`,`tr`],[`value`,`uk`],[`value`,`vi`],[`value`,`orange`],[`value`,`red`],[`value`,`pink`],[`value`,`purple`],[`value`,`deep-purple`],[`value`,`indigo`],[`value`,`blue`],[`value`,`blue-grey`],[`value`,`cyan`],[`value`,`green`],[`value`,`teal`],[`value`,`grey`],[`value`,`brown`],[`value`,`light`],[`value`,`dark`],[`value`,`default`],[`value`,`freeze`],[`value`,`c`],[`value`,`f`],[1,`grey-text`,`pe-2`],[1,`d-flex`,`gap-2`,`order-1`,`order-md-2`,`resp-select-width`],[1,`d-flex`,`flex-column`,`flex-fill`],[1,`custom-select`,`w-100`,3,`formControl`],[3,`value`],[1,`custom-select`,`terminal-theme-select`,`w-100`,3,`formControl`],[1,`pe-2`],[`id`,`fieldsStartup`,1,`list-group`,`list-group-box`,`mb-4`,`mx-0`],[1,`d-flex`,`align-items-center`],[1,`order-1`,`order-md-2`],[`type`,`checkbox`,`id`,`homebridgeDebugMode`,1,`rendux-input`,3,`formControl`],[`for`,`homebridgeDebugMode`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`checkbox`,`id`,`homebridgeKeepOrphans`,1,`rendux-input`,3,`formControl`],[`for`,`homebridgeKeepOrphans`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`checkbox`,`id`,`homebridgeInsecureMode`,1,`rendux-input`,3,`formControl`],[`for`,`homebridgeInsecureMode`,1,`rendux-label`,`ms-3`,`min-w-50`],[3,`innerHtml`],[1,`my-3`,`my-md-0`,`ps-0`,`ps-md-5`,`w-auto`,`d-flex`,`flex-column`,`align-items-end`],[1,`d-flex`,`align-items-center`,`w-100`],[`type`,`text`,`placeholder`,`mm hh dd MM ww`,`maxlength`,`30`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`checkbox`,`id`,`homebridgeMetrics`,1,`rendux-input`,3,`formControl`],[`for`,`homebridgeMetrics`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`text`,`placeholder`,`/usr/local/lib/node_modules/homebridge`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[1,`font-monospace`],[1,`grey-text`,`pe-2`,3,`innerHTML`],[`type`,`text`,`placeholder`,`HAP-NodeJS:Advertiser,HAP-NodeJS:Service`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`text`,`placeholder`,`--max-old-space-size=512 --max-http-header-size=8192`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[1,`setting-row`,`list-group-item`,3,`setting-hidden`],[`type`,`text`,`placeholder`,`shutdown`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[1,`my-3`,`my-md-0`,`ps-0`,`ps-md-5`,`w-auto`,`d-flex`,`align-items-center`,`font-monospace`],[`type`,`text`,`placeholder`,`reboot`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,3,`formControl`],[`type`,`text`,`placeholder`,`/sys/class/thermal/thermal_zone0/temp`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`routerLink`,`/platform-tools/docker/startup-script`,1,`btn`,`btn-primary`,`waves-effect`,`m-0`,`ms-3`,`py-1`,`min-w-50`],[`id`,`fieldsNetwork`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[1,`small`,`grey-text`,`pe-2`],[1,`badge`,`badge-primary`,`me-1`,3,`badge-danger`,`badge-info`],[`type`,`button`,1,`btn`,`btn-primary`,`waves-effect`,`m-0`,`ms-3`,`py-1`,`min-w-50`,3,`click`,`disabled`],[`value`,`avahi`],[`value`,`ciao`],[`value`,`bonjour-hap`],[`value`,`resolved`],[`type`,`checkbox`,`id`,`enableMdnsAdvertise`,1,`rendux-input`,3,`formControl`],[`for`,`enableMdnsAdvertise`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`number`,`min`,`1025`,`max`,`65533`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`number`,`min`,`1025`,`max`,`65533`,`placeholder`,`1025`,1,`form-control`,`custom-input`,`font-monospace`,`flex-fill`,3,`formControl`],[`type`,`number`,`min`,`1025`,`max`,`65533`,`placeholder`,`65533`,1,`form-control`,`custom-input`,`font-monospace`,`flex-fill`,3,`formControl`],[1,`grey-text`,`pe-2`,3,`innerHtml`],[`type`,`text`,`pattern`,`^[^{}/:\\\\s]+(?::\\d+)?$`,`placeholder`,`0.0.0.0`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`text`,`pattern`,`^[^{}/:\\\\s]+(?::\\d+)?$`,`placeholder`,`example.com:8443`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`number`,`min`,`1025`,`max`,`65533`,`placeholder`,`8581`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`button`,1,`btn`,`btn-primary`,`waves-effect`,3,`click`],[1,`badge`,`badge-primary`,`me-1`],[`aria-hidden`,`true`,1,`fas`,`fa-exclamation-triangle`],[1,`fw-normal`],[`aria-hidden`,`true`,1,`fas`,`fa-exclamation-triangle`,`red-text`],[1,`small`,`grey-text`,`mb-2`,`mx-0`],[`id`,`fieldsHap`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[1,`d-flex`,`align-items-center`,3,`title`],[`type`,`checkbox`,`id`,`hapEnabled`,1,`rendux-input`,3,`formControl`],[`for`,`hapEnabled`,1,`rendux-label`,`ms-3`,`min-w-50`],[1,`badge`,`badge-primary`,`ms-1`],[`type`,`checkbox`,`id`,`hapDisableIdentifyingMaterial`,1,`rendux-input`,3,`formControl`],[`for`,`hapDisableIdentifyingMaterial`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`checkbox`,`id`,`hapExternalsOnly`,1,`rendux-input`,3,`formControl`],[`for`,`hapExternalsOnly`,1,`rendux-label`,`ms-3`,`min-w-50`],[`id`,`fieldsMatter`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[`type`,`checkbox`,`id`,`matterEnabled`,1,`rendux-input`,3,`formControl`],[`for`,`matterEnabled`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`number`,`min`,`1025`,`max`,`65533`,`placeholder`,`5530`,1,`form-control`,`custom-input`,`font-monospace`,`flex-fill`,3,`formControl`],[`type`,`number`,`min`,`1025`,`max`,`65533`,`placeholder`,`5541`,1,`form-control`,`custom-input`,`font-monospace`,`flex-fill`,3,`formControl`],[`type`,`checkbox`,`id`,`matterExternalsOnly`,1,`rendux-input`,3,`formControl`],[`for`,`matterExternalsOnly`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`number`,`min`,`1024`,`max`,`65535`,`placeholder`,`5540`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`checkbox`,`id`,`matterDisableIpv4`,1,`rendux-input`,3,`formControl`],[`for`,`matterDisableIpv4`,1,`rendux-label`,`ms-3`,`min-w-50`],[`id`,`fieldsTerminal`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[`type`,`number`,`min`,`-1`,`placeholder`,`1000000`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`number`,`min`,`0`,`placeholder`,`200000`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`type`,`checkbox`,`id`,`terminalPersistence`,1,`rendux-input`,3,`formControl`],[`for`,`terminalPersistence`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`checkbox`,`id`,`terminalHideWarning`,1,`rendux-input`,3,`formControl`],[`for`,`terminalHideWarning`,1,`rendux-label`,`ms-3`,`min-w-50`],[1,`d-flex`,`flex-column`],[1,`small`,`grey-text`],[`type`,`number`,`min`,`10000`,`max`,`100000`,`step`,`10000`,1,`form-control`,`custom-input`,`resp-input`,`order-1`,`order-md-2`,`font-monospace`,3,`formControl`],[`id`,`fieldsSecurity`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`],[`type`,`checkbox`,`id`,`uiAuthForm`,1,`rendux-input`,3,`formControl`],[`for`,`uiAuthForm`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`checkbox`,`id`,`httpsEnabled`,1,`rendux-input`,3,`click`,`checked`,`disabled`],[`for`,`httpsEnabled`,1,`rendux-label`,`ms-3`,`min-w-50`],[`type`,`checkbox`,`id`,`session-inactivity-based`,1,`rendux-input`,3,`formControl`],[`for`,`session-inactivity-based`,1,`rendux-label`,`ms-3`,`min-w-50`],[`aria-hidden`,`true`,1,`fas`,`fa-floppy-disk`,`primary-text`,`fa-xl`,`me-0`,`me-md-2`,`ms-2`,`ms-md-0`,`save-indicator`],[1,`d-flex`,`align-items-center`,`gap-2`,`order-md-2`],[`type`,`number`,`min`,`0`,`max`,`365`,`placeholder`,`0`,`id`,`session-timeout-days`,1,`form-control`,`custom-input`,`font-monospace`,`text-end-input`,3,`formControl`],[`for`,`session-timeout-days`,1,`ms-1`,`me-2`,`mb-0`,`text-nowrap`,`grey-text`,`small`],[`type`,`number`,`min`,`0`,`max`,`23`,`placeholder`,`8`,`id`,`session-timeout-hours`,1,`form-control`,`custom-input`,`font-monospace`,`text-end-input`,3,`formControl`],[`for`,`session-timeout-hours`,1,`ms-1`,`me-2`,`mb-0`,`text-nowrap`,`grey-text`,`small`],[`type`,`number`,`min`,`0`,`max`,`59`,`placeholder`,`0`,`id`,`session-timeout-minutes`,1,`form-control`,`custom-input`,`font-monospace`,`text-end-input`,3,`formControl`],[`for`,`session-timeout-minutes`,1,`ms-1`,`me-2`,`mb-0`,`text-nowrap`,`grey-text`,`small`],[`aria-hidden`,`true`,1,`fas`,`fa-floppy-disk`,`primary-text`,`fa-xl`,`me-0`,`me-md-2`,`ms-2`,`ms-md-0`,`order-md-1`,`save-indicator`],[`id`,`fieldsCache`,1,`list-group`,`list-group-box`,`mb-4`,`mx-0`],[`type`,`checkbox`,`id`,`accessoryDebug`,1,`rendux-input`,3,`formControl`],[`for`,`accessoryDebug`,1,`rendux-label`,`ms-3`,`min-w-50`],[`id`,`fieldsReset`,1,`list-group`,`list-group-box`,`mt-2`,`mx-0`]],template:function(i,a){i&1&&(Va$1(0,`div`,1)(1,`div`,2)(2,`h3`,3),Ot$1(3),S_(4,`translate`),jd()(),Va$1(5,`div`,4)(6,`button`,5),S_(7,`translate`),ac(`click`,function(){return a.toggleSearch()}),Dy(8,`i`,6),jd()()(),Fe(9,On,7,7,`div`,7),Fe(10,zn,1,0,`app-spinner`)(11,ys,12,12,`div`,8)),i&2&&(se(3),Py(N_(4,7,`menu.settings.title`)),se(3),Cr(`aria-label`,N_(7,9,`form.search`))(`aria-expanded`,a.showSearchBar()),se(2),Jt$1(`fas fa-search${a.showSearchBar()?` primary-text`:``}`),se(),Le(a.showSearchBar()?9:-1),se(),Le(a.loading()?10:11))},dependencies:[Dt$1,Kn$1,zn$1,Xn$1,Yn$1,Ye,dn$1,Mt$1,Vt$1,Hn$1,Ln$1,qt$1,zt$2,Ht,Gt$1,ln$1,sn$1,Jn$1,mn$1,P,US,v3],styles:[`.settings-content[_ngcontent-%COMP%]{opacity:1;transition:opacity .25s ease-in-out}.settings-content.theme-transitioning[_ngcontent-%COMP%]{opacity:0}.disabled-no-interaction[_ngcontent-%COMP%]{pointer-events:none!important;cursor:not-allowed!important;opacity:.6!important}form[_ngcontent-%COMP%]{position:relative}.search-bar[_ngcontent-%COMP%]{outline:none;box-sizing:inherit!important;background-color:inherit;height:50px!important;width:100%;border-width:.5px;padding:10px 45px 10px 10px;margin-bottom:15px}@media(hover:hover){.search-bar[_ngcontent-%COMP%]:hover{border:1px solid #000000}}.search-bar[_ngcontent-%COMP%]:focus{border:1px solid #000000;box-shadow:0 1px #000}.search-bar-clear[_ngcontent-%COMP%]{position:absolute;right:8px;top:25px;height:50px;background:transparent;border:none;font-size:20px;color:#d0d0d0;cursor:pointer;padding:0 8px;display:flex;align-items:center}.search-bar-clear[_ngcontent-%COMP%]:hover{color:#a0a0a0}.cron-input[_ngcontent-%COMP%]{letter-spacing:.15em;text-align:center}.text-end-input[_ngcontent-%COMP%]{text-align:right}.min-w-50[_ngcontent-%COMP%]{min-width:50px}.list-group-box[_ngcontent-%COMP%]{overflow:hidden}.setting-row[_ngcontent-%COMP%]{display:grid;grid-template-rows:1fr;transition:grid-template-rows .45s cubic-bezier(0,0,.2,1),opacity .45s cubic-bezier(0,0,.2,1),transform .45s cubic-bezier(0,0,.2,1),padding .45s cubic-bezier(0,0,.2,1),border-bottom-width .45s cubic-bezier(0,0,.2,1);opacity:1;transform:scale(1)}.setting-row.setting-hidden[_ngcontent-%COMP%]{grid-template-rows:0fr;opacity:0;transform:scale(.98);padding:0!important;border-bottom:0!important;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,1,1)}.setting-row-inner[_ngcontent-%COMP%]{overflow:hidden;min-height:0}.save-indicator[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_fadeIn .75s ease}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.setting-row[_ngcontent-%COMP%]{transition:none}.save-indicator[_ngcontent-%COMP%]{animation:none}}`]})}return n$1})();export{Ol as SettingsComponent};