homebridge-config-ui-x 5.12.1-beta.5 → 5.12.1-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/platforms/linux.js.map +1 -1
- package/package.json +2 -2
- package/public/3rdpartylicenses.txt +13 -1
- package/public/chunk-2F2PDTDB.js +1 -0
- package/public/{chunk-HMF2EYMY.js → chunk-2JLK533I.js} +1 -1
- package/public/{chunk-MAJDTCMY.js → chunk-2QUH2FXS.js} +1 -1
- package/public/{chunk-TR77UVYU.js → chunk-2R4HORTN.js} +1 -1
- package/public/{chunk-E55EDX5Y.js → chunk-3RTPACYF.js} +1 -1
- package/public/chunk-3T6KISS2.js +1 -0
- package/public/chunk-3VAD7GQK.js +1 -0
- package/public/chunk-3WNDNRRB.js +1 -0
- package/public/{chunk-4BX7KSQH.js → chunk-3X54YJUZ.js} +1 -1
- package/public/{chunk-VFMCVZHO.js → chunk-4J3J7FSY.js} +1 -1
- package/public/chunk-4RSOPME5.js +1 -0
- package/public/{chunk-2DRLNNDM.js → chunk-55DZYJHI.js} +1 -1
- package/public/chunk-57L4H7AA.js +1 -0
- package/public/chunk-5G2OIZ66.js +1 -0
- package/public/{chunk-LR2GN2Y2.js → chunk-5GNJNTLA.js} +1 -1
- package/public/{chunk-BZLBFDQG.js → chunk-5VXOT5GC.js} +1 -1
- package/public/{chunk-M3DSUNBG.js → chunk-6P53ACWC.js} +1 -1
- package/public/{chunk-IHAA5URA.js → chunk-6VNMVWFY.js} +1 -1
- package/public/chunk-732GW26P.js +1 -0
- package/public/{chunk-VWUZDCBZ.js → chunk-7AD56BSX.js} +2 -2
- package/public/{chunk-6U3YEWBO.js → chunk-7LOFSGZK.js} +1 -1
- package/public/{chunk-AHIRH7NQ.js → chunk-7LZXNMQ7.js} +1 -1
- package/public/chunk-7QNFIL7X.js +1 -0
- package/public/{chunk-3BODPB3K.js → chunk-ALTMINMJ.js} +1 -1
- package/public/{chunk-XUP37AHQ.js → chunk-ARR3OK4P.js} +5 -5
- package/public/{chunk-XTQWZF3J.js → chunk-AYPSIX2K.js} +1 -1
- package/public/chunk-B37HWUCD.js +1 -0
- package/public/{chunk-GDBXX4WT.js → chunk-BADNEAHD.js} +2 -2
- package/public/{chunk-RDHUW73W.js → chunk-BNNKKGLH.js} +1 -1
- package/public/{chunk-J56ZFHCF.js → chunk-BT3EMPD7.js} +1 -1
- package/public/chunk-BWJIQBIJ.js +1 -0
- package/public/{chunk-S2GJNEOI.js → chunk-C5UZ5BUH.js} +1 -1
- package/public/{chunk-X66UFY6K.js → chunk-CU6MTMVY.js} +1 -1
- package/public/{chunk-TV5ACJCB.js → chunk-D3QQAOPW.js} +1 -1
- package/public/chunk-DRY2ILHE.js +1 -0
- package/public/chunk-DSI2TVUT.js +1 -0
- package/public/{chunk-BRGXDZZE.js → chunk-EKYMLGZU.js} +1 -1
- package/public/{chunk-CAY6MDP6.js → chunk-F332UHUK.js} +1 -1
- package/public/{chunk-DUPASTS2.js → chunk-FDGOZLRL.js} +1 -1
- package/public/chunk-G5C66QEU.js +1 -0
- package/public/{chunk-CP2QJXVO.js → chunk-GFJO2QTW.js} +1 -1
- package/public/{chunk-C64AHVUO.js → chunk-GIBUKDL3.js} +1 -1
- package/public/{chunk-NPMJGEDY.js → chunk-HOHCTPYN.js} +1 -1
- package/public/{chunk-HH2FDI7W.js → chunk-HOWYXHPL.js} +1 -1
- package/public/chunk-HZA5LDUU.js +19 -0
- package/public/{chunk-UVWXUC5Y.js → chunk-I5AP453W.js} +1 -1
- package/public/chunk-I7YFJOCI.js +1 -0
- package/public/{chunk-3NHWMCB7.js → chunk-IBPLHJH5.js} +1 -1
- package/public/chunk-IMAK4R64.js +1 -0
- package/public/chunk-IRXJL347.js +1 -0
- package/public/{chunk-YDYBCBXX.js → chunk-IVGUGJ5O.js} +1 -1
- package/public/{chunk-KIFEAONI.js → chunk-IXSMCZ5A.js} +1 -1
- package/public/{chunk-QGJKMFM5.js → chunk-J3GYRR3Q.js} +1 -1
- package/public/{chunk-F5MBSCH4.js → chunk-JJ5CEM72.js} +3 -3
- package/public/chunk-JNPGEJ3W.js +1 -0
- package/public/{chunk-4OEYZBSF.js → chunk-JTQQTKY7.js} +1 -1
- package/public/{chunk-5QHRLSAE.js → chunk-K73S26T3.js} +1 -1
- package/public/{chunk-UH3C2FAE.js → chunk-KAPGBFLJ.js} +1 -1
- package/public/{chunk-2QSUQ4VI.js → chunk-KDNXPUO5.js} +1 -1
- package/public/chunk-KLWYBXMO.js +5 -0
- package/public/chunk-LMQIRO2C.js +1 -0
- package/public/chunk-LMWHU5BN.js +1 -0
- package/public/{chunk-5QQ2XMII.js → chunk-LVC2MQ7H.js} +1 -1
- package/public/{chunk-F2HGBWZZ.js → chunk-MM3ZUHP2.js} +1 -1
- package/public/{chunk-Z2RGI4BU.js → chunk-MOTTUPLZ.js} +1 -1
- package/public/chunk-MQWN43LI.js +1 -0
- package/public/{chunk-5A2G7KDR.js → chunk-MRHB36HC.js} +1 -1
- package/public/{chunk-ATJM3XYR.js → chunk-MTYIEY2M.js} +1 -1
- package/public/chunk-MW5T6P3D.js +1 -0
- package/public/chunk-MXDOJJGQ.js +1 -0
- package/public/chunk-NO3WWNTD.js +1 -0
- package/public/chunk-ON7YXJNY.js +1 -0
- package/public/{chunk-IXMOGLOS.js → chunk-P4ODKUQK.js} +1 -1
- package/public/{chunk-NYEZF6Y3.js → chunk-PQPDMNKK.js} +1 -1
- package/public/{chunk-3LY5FRVV.js → chunk-PSSWIPLS.js} +1 -1
- package/public/chunk-PSTNNJB4.js +1 -0
- package/public/chunk-Q2RBJQKF.js +36 -0
- package/public/chunk-QJULMVF4.js +1 -0
- package/public/{chunk-V45KU64F.js → chunk-QMHMKWPA.js} +1 -1
- package/public/{chunk-65AW3ZMH.js → chunk-QPIMSYGY.js} +1 -1
- package/public/{chunk-VCWYDWAJ.js → chunk-R2AXYPVZ.js} +1 -1
- package/public/{chunk-WGTVNYII.js → chunk-RGRPV7TK.js} +1 -1
- package/public/{chunk-4P4VAV7I.js → chunk-S3E6JDMS.js} +1 -1
- package/public/{chunk-VV4S6PBO.js → chunk-S5H22WRF.js} +1 -1
- package/public/{chunk-RWABUVQY.js → chunk-SCW535TW.js} +1 -1
- package/public/{chunk-OTMZDL7S.js → chunk-SGI3H2QJ.js} +1 -1
- package/public/{chunk-Y6B4ENQ3.js → chunk-UCTE5J3F.js} +1 -1
- package/public/chunk-UKJBJA6I.js +1 -0
- package/public/chunk-URPE4YWQ.js +1 -0
- package/public/{chunk-DJGU4NTG.js → chunk-UU7UROHF.js} +1 -1
- package/public/{chunk-UHG23NUX.js → chunk-UUDM2ZE6.js} +1 -1
- package/public/{chunk-H7F7H5MW.js → chunk-V62JRIHN.js} +1 -1
- package/public/{chunk-FNRDBHYN.js → chunk-V6SS3LLE.js} +1 -1
- package/public/{chunk-RMDVYT7X.js → chunk-VFZPU4ZL.js} +1 -1
- package/public/chunk-VJN6YUS2.js +1 -0
- package/public/{chunk-664C4LX2.js → chunk-VY4NTNG3.js} +1 -1
- package/public/{chunk-DOJGHPYJ.js → chunk-WVBGE4PG.js} +1 -1
- package/public/{chunk-JPAZUSRO.js → chunk-WZXTVC6W.js} +1 -1
- package/public/{chunk-PTJ3UZME.js → chunk-X35N33BQ.js} +1 -1
- package/public/{chunk-YCASP3MF.js → chunk-X5XGTC24.js} +1 -1
- package/public/chunk-YASBCOYX.js +1 -0
- package/public/{chunk-FLCYKKEZ.js → chunk-YBWJOGCK.js} +1 -1
- package/public/{chunk-QSXJHCTT.js → chunk-YD4U26CQ.js} +1 -1
- package/public/chunk-YIHVWXAX.js +92 -0
- package/public/chunk-YKLNKZD5.js +2 -0
- package/public/chunk-YLQLLNQ6.js +1 -0
- package/public/{chunk-A5JF6PDD.js → chunk-YQXFTYEI.js} +1 -1
- package/public/chunk-YWTJYVRK.js +1 -0
- package/public/{chunk-Q5X66PGK.js → chunk-YXAXWARF.js} +1 -1
- package/public/{chunk-NTQWCIIF.js → chunk-ZBOWFMAD.js} +1 -1
- package/public/{chunk-2K66PSKD.js → chunk-ZH3VNDIS.js} +1 -1
- package/public/{chunk-3YXAYQFV.js → chunk-ZIFXCMBJ.js} +1 -1
- package/public/{chunk-AY35X64S.js → chunk-ZMEMMUUF.js} +1 -1
- package/public/{chunk-DCBZUBGA.js → chunk-ZONYERCP.js} +1 -1
- package/public/{chunk-KEESKHLN.js → chunk-ZRGZJ2SE.js} +1 -1
- package/public/index.html +2 -2
- package/public/{main-QHHXZV7U.js → main-XUQ5G5JD.js} +1 -1
- package/public/styles-SBKKVTID.css +1 -0
- package/public/chunk-2FKL7WTN.js +0 -1
- package/public/chunk-3B3NAPXD.js +0 -1
- package/public/chunk-3BOXIXZY.js +0 -1
- package/public/chunk-3N3RJBS3.js +0 -19
- package/public/chunk-6KHLSYCO.js +0 -1
- package/public/chunk-7GUHWJ4X.js +0 -1
- package/public/chunk-7JD74YRM.js +0 -1
- package/public/chunk-AST2OLG2.js +0 -1
- package/public/chunk-AZLCZPTC.js +0 -1
- package/public/chunk-B4AJQJMI.js +0 -1
- package/public/chunk-BJV2F6QZ.js +0 -1
- package/public/chunk-BMOLDRJ3.js +0 -9
- package/public/chunk-BUZBTHD2.js +0 -1
- package/public/chunk-C5CMRH2U.js +0 -1
- package/public/chunk-CXSRVC7V.js +0 -1
- package/public/chunk-DQVHBQLA.js +0 -1
- package/public/chunk-FH62LNHX.js +0 -35
- package/public/chunk-GYM2PPGX.js +0 -1
- package/public/chunk-H2UKSDHZ.js +0 -1
- package/public/chunk-HBK7LF6W.js +0 -1
- package/public/chunk-JBILFYTL.js +0 -1
- package/public/chunk-K3WEJJSS.js +0 -2
- package/public/chunk-KDXP3F5S.js +0 -1
- package/public/chunk-KYBKIBTT.js +0 -1
- package/public/chunk-LINXSUG2.js +0 -1
- package/public/chunk-LPJ4GDP3.js +0 -1
- package/public/chunk-LPWY3RKY.js +0 -1
- package/public/chunk-MUHHYXFN.js +0 -1
- package/public/chunk-MVT3BOGV.js +0 -5
- package/public/chunk-N6F32H34.js +0 -1
- package/public/chunk-NPABPWX3.js +0 -1
- package/public/chunk-OU66C3M2.js +0 -1
- package/public/chunk-P67JXXO4.js +0 -1
- package/public/chunk-UPP5DT2A.js +0 -1
- package/public/chunk-VV4LXPCS.js +0 -1
- package/public/chunk-XYVW562Y.js +0 -1
- package/public/chunk-ZPKMGNNM.js +0 -1
- package/public/chunk-ZVU2KU6A.js +0 -1
- package/public/styles-WJHG5ONB.css +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as mt}from"./chunk-TUN7H57E.js";import{a as ft}from"./chunk-KLWYBXMO.js";import{a as ut}from"./chunk-ZRGZJ2SE.js";import{a as vt}from"./chunk-JTQQTKY7.js";import{a as Ct}from"./chunk-C5UZ5BUH.js";import{a as _t}from"./chunk-R2AXYPVZ.js";import{a as ht,c as gt}from"./chunk-Q2RBJQKF.js";import{a as Fe}from"./chunk-7LOFSGZK.js";import{a as Dt}from"./chunk-V62JRIHN.js";import{a as Me,p as Ie,q as Ee,r as we,s as pt}from"./chunk-HOWYXHPL.js";import{a as ct}from"./chunk-G5C66QEU.js";import{a as ke}from"./chunk-SGI3H2QJ.js";import{a as Te}from"./chunk-I5AP453W.js";import{s as U,t as fe}from"./chunk-BNNKKGLH.js";import{e as J,f as Je}from"./chunk-F332UHUK.js";import{a as $}from"./chunk-GIBUKDL3.js";import"./chunk-VY4NTNG3.js";import{A as lt,B as dt,C as ge,D as oe,b as ue,c as _e,e as ae,f as Xe,i as Ze,j as M,k as et,l as ye,m as tt,n as it,q as he,t as nt,u as at,w as ot,x as st,y as rt}from"./chunk-WZXTVC6W.js";import{b as Y}from"./chunk-2QUH2FXS.js";import{C as L,D as H,F as O,H as Ye,I as z,f as me,h as Ge,s as Qe,t as qe}from"./chunk-7AD56BSX.js";import{Ab as u,Cb as K,Db as G,Dc as r,Eb as Q,Ec as l,F,Fb as _,Fc as q,Gb as o,Hb as s,Ib as p,Jb as S,Kb as y,Kc as je,Lb as P,Oc as ne,Rb as B,Rc as Ke,Sb as V,Ua as te,Va as Ve,Xb as T,Yb as R,Za as i,Zb as h,Zc as $e,_c as be,aa as I,ad as re,cd as xe,db as Ne,ea as Se,ec as de,fa as Ae,fc as ce,ga as w,ha as k,hc as se,ic as W,jc as D,kc as d,lc as g,ma as le,mb as ie,mc as f,nb as N,nc as He,rc as Le,sa as v,sc as Oe,tc as ze,uc as Ue,wc as We,xc as X,yb as b,yc as A,zb as m,zc as pe}from"./chunk-JJ5CEM72.js";import{a as Ce,b as ve,g as Pt,h as x}from"./chunk-VJN6YUS2.js";var bt=(t,c)=>({"green-text":t,"grey-text":c});function Rt(t,c){if(t&1){let e=B();o(0,"li",9)(1,"div",10),d(2),p(3,"br"),o(4,"small",11),p(5,"i",12),r(6,"translate"),d(7," \xB7 "),o(8,"span",13),d(9),s(),d(10),r(11,"titlecase"),s()(),o(12,"div",14)(13,"input",23),r(14,"translate"),T("click",function(){let a=w(e).$implicit,C=h();return k(C.toggleList(a._username))}),s(),p(15,"label",24),s()()}if(t&2){let e=c.$implicit,n=h();i(2),f(" ",e.name," "),i(3),D(A(18,bt,e._isPaired,!e._isPaired)),_("ngbTooltip",l(6,12,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired"))("openDelay",150),i(4),g(e._username),i(),f(" \xB7 ",l(11,14,e._category)," "),i(3),_("id","hidePluginUpdates_"+e._username)("checked",!n.isInList(e._username))("disabled",n.clicked()),b("aria-label",l(14,16,"form.button_allow")+" "+e.name),i(2),_("for","hidePluginUpdates_"+e._username)}}function At(t,c){t&1&&(d(0),r(1,"translate")),t&2&&f(" ",l(1,1,"form.button_save")," ")}function Vt(t,c){t&1&&p(0,"i",22)}var xt=(()=>{class t{$activeModal=I(U);$api=I(z);$settings=I(Y);$toastr=I(O);$translate=I(L);modalData=I(Ee);clicked=v(!1);mainPairing=v(void 0);pairings=v([]);originalBlacklist=[];updatedBlacklist=[];get blacklistHasUpdated(){return this.updatedBlacklist.join(",")!==this.originalBlacklist.join(",")}ngOnInit(){this.initialize()}initialize(){return x(this,null,function*(){this.updatedBlacklist=this.modalData.existingBlacklist.map(e=>e.trim().toUpperCase()).sort((e,n)=>e.localeCompare(n)),this.originalBlacklist=[...this.updatedBlacklist];try{let e=yield this.$api.get("/server/pairings");this.mainPairing.set(e.find(n=>n._main)),this.pairings.set(e.filter(n=>!n._main).sort((n,a)=>n.name.localeCompare(a.name)))}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}toggleList(e){this.updatedBlacklist.includes(e)?this.updatedBlacklist=this.updatedBlacklist.filter(n=>n!==e):(this.updatedBlacklist.push(e),this.updatedBlacklist.sort((n,a)=>n.localeCompare(a)))}isInList(e){return this.updatedBlacklist.includes(e)}updateBlacklist(){return x(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(e.message,this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],decls:45,vars:36,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",2,"font-size","75px"],[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,"text-start"],[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,"modal-footer","justify-content-between"],["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"],["type","checkbox",1,"rendux-input",3,"click","id","checked","disabled"],[1,"rendux-label","ms-3",3,"for"]],template:function(n,a){n&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),s(),o(5,"button",3),r(6,"translate"),T("click",function(){return a.dismissModal()}),s()(),o(7,"div",4)(8,"div",5),p(9,"i",6),s(),o(10,"ul",7)(11,"li"),d(12),r(13,"translate"),s(),o(14,"li"),d(15),r(16,"translate"),s()(),o(17,"ul",8)(18,"li",9)(19,"div",10),d(20),p(21,"br"),o(22,"small",11),p(23,"i",12),r(24,"translate"),d(25," \xB7 "),o(26,"span",13),d(27),s(),d(28," \xB7 Homebridge "),s()(),o(29,"div",14)(30,"input",15),r(31,"translate"),T("click",function(){return a.toggleList(a.mainPairing()._username)}),s(),p(32,"label",16),s()(),G(33,Rt,16,21,"li",9,K),s()(),o(35,"div",17)(36,"div",10)(37,"button",18),T("click",function(){return a.dismissModal()}),d(38),r(39,"translate"),s()(),p(40,"div",19),o(41,"div",20)(42,"button",21),T("click",function(){return a.updateBlacklist()}),m(43,At,2,3),m(44,Vt,1,0,"i",22),s()()()()),n&2&&(i(3),g(l(4,19,"settings.security.ui_control")),i(2),_("disabled",a.clicked()),b("aria-label",l(6,21,"form.button_close")),i(7),g(l(13,23,"settings.security.ui_control_desc")),i(3),g(l(16,25,"settings.security.ui_control_desc_2")),i(5),f(" ",a.mainPairing().name),i(3),D(A(33,bt,a.mainPairing()._isPaired,!a.mainPairing()._isPaired)),_("ngbTooltip",l(24,27,a.mainPairing()._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired"))("openDelay",150),i(4),g(a.mainPairing()._username),i(3),_("checked",!a.isInList(a.mainPairing()._username))("disabled",a.clicked()),b("aria-label",l(31,29,"plugins.manage.hide_updates")),i(3),Q(a.pairings()),i(4),_("disabled",a.clicked()),i(),f(" ",l(39,31,"form.button_close")," "),i(4),_("disabled",!a.blacklistHasUpdated||a.clicked()),i(),u(a.clicked()?-1:43),i(),u(a.clicked()?44:-1))},dependencies:[ge,ke,H,me],encapsulation:2})}return t})();var It=Pt(Dt(),1);var Nt=t=>({maxBackupSizeText:t});function Ht(t,c){if(t&1&&P(0,"input",10),t&2){let e=h(2);V("value",e.selectedBackup.fileName)}}function Lt(t,c){if(t&1){let e=B();S(0,"input",12),R("change",function(a){w(e);let C=h(2);return k(C.handleRestoreFileInput(a))}),y()}}function Ot(t,c){if(t&1&&(S(0,"div",4)(1,"div",7),P(2,"i",8),y(),S(3,"ul",9)(4,"li"),d(5),r(6,"translate"),y(),S(7,"li"),d(8),r(9,"translate"),y(),S(10,"li"),d(11),r(12,"translate"),y(),S(13,"li"),d(14),r(15,"translate"),y()(),m(16,Ht,1,1,"input",10),m(17,Lt,1,0,"input",11),y()),t&2){let e=h();i(5),g(l(6,6,"backup.restore_help_one")),i(3),g(l(9,8,"backup.restore_help_two")),i(3),g(q(12,10,"backup.restore_max_size",X(15,Nt,e.maxFileSizeText))),i(3),g(l(15,13,"backup.restore_warning")),i(2),u(e.selectedBackup?16:-1),i(),u(e.selectedBackup?-1:17)}}function zt(t,c){if(t&1){let e=B();S(0,"button",18),r(1,"translate"),R("click",function(){w(e);let a=h(2);return k(a.dismissModal())}),d(2),r(3,"translate"),y()}if(t&2){let e=h(2);V("disabled",e.clicked()),b("aria-label",l(1,3,"form.button_close")),i(2),f(" ",l(3,5,"form.button_close")," ")}}function Ut(t,c){if(t&1){let e=B();S(0,"button",18),r(1,"translate"),R("click",function(){w(e);let a=h(2);return k(a.reopenBackupModal())}),d(2),r(3,"translate"),y()}if(t&2){let e=h(2);V("disabled",e.clicked()),b("aria-label",l(1,3,"form.button_back")),i(2),f(" ",l(3,5,"form.button_back")," ")}}function Wt(t,c){t&1&&P(0,"i",19)}function jt(t,c){if(t&1&&(S(0,"span"),d(1),y()),t&2){let e=h(3);i(),f("",e.uploadPercent(),"% - ")}}function Kt(t,c){t&1&&(S(0,"span"),d(1),r(2,"translate"),y()),t&2&&(i(),g(l(2,1,"backup.label_extracting")))}function Gt(t,c){t&1&&(S(0,"span"),d(1),r(2,"translate"),y()),t&2&&(i(),g(l(2,1,"backup.label_uploading")))}function Qt(t,c){if(t&1&&(S(0,"span"),m(1,Wt,1,0,"i",19),m(2,jt,2,1,"span"),m(3,Kt,3,3,"span"),m(4,Gt,3,3,"span"),y()),t&2){let e=h(2);i(),u(!e.uploadPercent()||e.uploadPercent()===100?1:-1),i(),u(e.uploadPercent()&&e.uploadPercent()!==100?2:-1),i(),u(e.uploadPercent()===100?3:-1),i(),u(e.uploadPercent()!==100?4:-1)}}function qt(t,c){t&1&&(d(0),r(1,"translate")),t&2&&f(" ",l(1,1,"form.button_restore")," ")}function Jt(t,c){if(t&1){let e=B();S(0,"div",6)(1,"div",13),m(2,zt,4,7,"button",14),m(3,Ut,4,7,"button",14),y(),P(4,"div",15),S(5,"div",16)(6,"button",17),R("click",function(){w(e);let a=h();return k(a.onRestoreBackupClick())}),m(7,Qt,5,4,"span"),m(8,qt,2,3),y()()()}if(t&2){let e=h();i(2),u(e.setupWizardRestore?2:-1),i(),u(e.setupWizardRestore?-1:3),i(3),V("disabled",!e.selectedBackup&&!e.selectedFile()||e.clicked()),i(),u(e.clicked()?7:-1),i(),u(e.clicked()?-1:8)}}function Yt(t,c){if(t&1){let e=B();S(0,"div",6),P(1,"div",13),S(2,"div",15)(3,"button",20),R("click",function(){w(e);let a=h();return k(a.postBackupRestart())}),d(4),r(5,"translate"),y()(),P(6,"div",16),y()}t&2&&(i(4),f(" ",l(5,1,"menu.hbrestart.title")," "))}var St=(()=>{class t{$activeModal=I(U);$api=I(z);$modal=I(fe);$router=I(J);$toastr=I(O);$translate=I(L);$ws=I(ct);modalData=I(we);setupWizardRestore=this.modalData.setupWizardRestore??!1;selectedBackup=this.modalData.selectedBackup??null;clicked=v(!1);selectedFile=v(null);restoreInProgress=v(!1);restoreStarted=v(!1);restoreFailed=v(!1);restoreArchiveType=v("homebridge");uploadPercent=v(0);io;term=new gt;termTarget;fitAddon=new ht;maxFileSizeText=globalThis.backup.maxBackupSizeText;ngOnInit(){this.initialize()}initialize(){return x(this,null,function*(){this.io=this.$ws.connectToNamespace("backup"),this.termTarget=document.getElementById("plugin-log-output"),this.term.open(this.termTarget),this.fitAddon.fit(),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 n=e.target.files;n?.length?(this.selectedFile.set(n[0]),this.selectedFile()?.name.endsWith(".hbfx")?this.restoreArchiveType.set("hbfx"):this.restoreArchiveType.set("homebridge")):this.selectedFile.set(null)}postBackupRestart(){return x(this,null,function*(){try{yield this.$api.put("/backup/restart",{}),this.$activeModal.close(!0),this.$router.navigate(["/"])}catch{}})}reopenBackupModal(){this.$activeModal.dismiss(),this.$modal.open(Be,{size:"lg",backdrop:"static"})}ngOnDestroy(){this.io.end()}dismissModal(){this.$activeModal.dismiss("Dismiss")}uploadHomebridgeArchive(){return x(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(n){console.error(n),this.$toastr.error(n.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}finally{this.clicked.set(!1)}})}restoreScheduledBackup(){return x(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 x(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 x(this,null,function*(){this.term.reset(),this.clicked.set(!0);let e=new FormData;e.append("restoreArchive",this.selectedFile(),this.selectedFile()?.name);try{let n=yield this.$api.post("/backup/restore/hbfx",e,{reportProgress:!0,observe:"events"});n.type===Qe.UploadProgress?this.uploadPercent.set(Math.round(100*n.loaded/n.total)):n instanceof qe&&(this.restoreStarted.set(!0),this.restoreInProgress.set(!0),setTimeout(()=>{this.startHbfxRestore()},500))}catch(n){console.error(n),this.$toastr.error(n.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}finally{this.clicked.set(!1)}})}startHbfxRestore(){return x(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 \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],decls:11,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"],["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",2,"font-size","75px"],[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,"fa","fa-circle-notch","fa-spin"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(n,a){n&1&&(S(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),y(),S(5,"button",3),r(6,"translate"),R("click",function(){return a.dismissModal()}),y()(),m(7,Ot,18,17,"div",4),P(8,"div",5),m(9,Jt,9,5,"div",6),m(10,Yt,7,3,"div",6),y()),n&2&&(i(3),g(l(4,7,"backup.title_backup")),i(2),V("disabled",a.restoreInProgress()),b("aria-label",l(6,9,"form.button_close")),i(2),u(!a.restoreStarted()&&!a.setupWizardRestore?7:-1),i(),V("hidden",!a.restoreStarted()),i(),u(!a.restoreStarted()||a.restoreFailed()===!0?9:-1),i(),u(!a.restoreInProgress()&&a.restoreStarted?10:-1))},dependencies:[H],encapsulation:2})}return t})();var yt=(t,c)=>({"fa-arrow-right":t,"fa-circle-notch fa-spin":c}),Xt=t=>({backupTime:t,dayCount:7}),Zt=(t,c)=>({"fa-trash":t,"fa-circle-notch fa-spin":c}),ei=(t,c)=>({backupSize:t,maxBackupSizeText:c});function ti(t,c){if(t&1&&(d(0),r(1,"date"),r(2,"translate")),t&2){let e=h(2);f(" ",q(2,4,"backup.scheduled_backup_time",X(7,Xt,q(1,1,e.backupTime(),"shortTime")))," ")}}function ii(t,c){t&1&&(d(0),r(1,"translate")),t&2&&f(" ",l(1,1,"plugins.settings.restart_required")," ")}function ni(t,c){if(t&1&&m(0,ti,3,9)(1,ii,2,3),t&2){let e=h();u(e.backupTime()?0:1)}}function ai(t,c){if(t&1&&(d(0),r(1,"translate")),t&2){let e=h();f(" ",l(1,1,e.backupTime()?"plugins.settings.restart_required":"backup.scheduled_backup_disabled")," ")}}function oi(t,c){if(t&1&&(o(0,"span",33),r(1,"translate"),p(2,"i",40),d(3),s()),t&2){let e=h().$implicit,n=h(2);_("ngbTooltip",q(1,3,"backup.backup_exceeds_max_size",A(6,ei,e.size+"MB",n.maxBackupSizeText)))("openDelay",150),i(3),f(" ",e.size,"MB ")}}function si(t,c){if(t&1&&(o(0,"span"),d(1),s()),t&2){let e=h().$implicit;i(),f("",e.size,"MB")}}function ri(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span")(2,"span",32),d(3),r(4,"date"),s(),p(5,"br"),o(6,"small",23),d(7),r(8,"date"),m(9,oi,4,9,"span",33),m(10,si,2,1,"span"),s()(),o(11,"span",34)(12,"button",35),r(13,"translate"),r(14,"translate"),T("click",function(){let a=w(e).$implicit,C=h(2);return k(C.restore(a))}),p(15,"i",36),s(),o(16,"button",37),r(17,"translate"),r(18,"translate"),T("click",function(){let a=w(e).$implicit,C=h(2);return k(C.download(a))}),p(19,"i",38),s(),o(20,"button",39),r(21,"translate"),r(22,"translate"),T("click",function(){let a=w(e).$implicit,C=h(2);return k(C.delete(a))}),p(23,"i",25),s()()()}if(t&2){let e=c.$implicit,n=h(2);i(2),_("ngbTooltip",e.fileName)("openDelay",150),i(),f(" ",q(4,20,e.timestamp,"mediumDate")," "),i(4),f(" ",q(8,23,e.timestamp,"shortTime")," \xB7 "),i(2),u(e.size>n.maxBackupSize?9:-1),i(),u(e.size<=n.maxBackupSize?10:-1),i(2),_("disabled",n.clicked()||n.deleting()||e.size>n.maxBackupSize)("ngbTooltip",l(13,26,"form.button_restore"))("openDelay",150),b("aria-label",l(14,28,"form.button_restore")),i(4),_("disabled",n.clicked()||n.deleting())("ngbTooltip",l(17,30,"form.button_download"))("openDelay",150),b("aria-label",l(18,32,"form.button_download")),i(4),_("disabled",n.clicked()||n.deleting())("ngbTooltip",l(21,34,"form.button_delete"))("openDelay",150),b("aria-label",l(22,36,"form.button_delete")),i(3),D(A(38,Zt,e.id!==n.deleting(),e.id===n.deleting()))}}function li(t,c){if(t&1&&(o(0,"ul",27)(1,"li",9)(2,"h6",10),d(3),r(4,"translate"),s()(),G(5,ri,24,41,"li",22,K),s()),t&2){let e=h();i(3),g(l(4,1,"backup.files_auto")),i(2),Q(e.scheduledBackups())}}var Be=(()=>{class t{destroyRef=I(le);$activeModal=I(U);$api=I(z);$backup=I(vt);$modal=I(fe);$router=I(J);$settings=I(Y);$toastr=I(O);$translate=I(L);injector=I(Se);clicked=v(!1);scheduledBackups=v([]);backupTime=v("");deleting=v(null);currentSettingEnabled=v(!1);currentSettingPath=v("");enabledFormControl=new M(!1);pathFormControl=new M("");maxBackupSize=globalThis.backup.maxBackupSize;maxBackupSizeText=globalThis.backup.maxBackupSizeText;restartToastIsShown=!1;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(F(500),$(this.destroyRef)).subscribe(e=>x(this,null,function*(){this.currentSettingEnabled.set(e),yield this.saveUiSettingChange("scheduledBackupDisable",!this.currentSettingEnabled())})),this.pathFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(e=>x(this,null,function*(){this.currentSettingPath.set(e),yield this.saveUiSettingChange("scheduledBackupPath",this.currentSettingPath())}))}download(e){return x(this,null,function*(){try{let n=yield this.$api.get(`/backup/scheduled-backups/${e.id}`,{observe:"response",responseType:"blob"}),a=e.fileName||"homebridge-backup.tar.gz",C=n.body.size;if(C>this.maxBackupSize){let j=this.$translate.instant("backup.backup_exceeds_max_size",{maxBackupSizeText:this.maxBackupSizeText,size:`${(C/1048576).toFixed(1)}MB`});this.$toastr.warning(j,this.$translate.instant("toast.title_warning"))}(0,It.saveAs)(n.body,a)}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})}restore(e){this.$activeModal.close();let n=ie([{provide:we,useValue:{selectedBackup:e}}],this.injector);this.$modal.open(St,{size:"lg",backdrop:"static",injector:n})}delete(e){return x(this,null,function*(){this.deleting.set(e.id);try{yield this.$api.delete(`/backup/scheduled-backups/${e.id}`),this.getScheduledBackups()}catch(n){console.error(n),this.$toastr.error(this.$translate.instant("backup.backup_delete_failed"),this.$translate.instant("toast.title_error"))}finally{this.deleting.set(null)}})}onDownloadBackupClick(){return x(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(e.message,this.$translate.instant("toast.title_error"))}})}onCreateBackupClick(){return x(this,null,function*(){this.clicked.set(!0);try{yield this.$api.post("/backup",{}),this.getScheduledBackups()}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}finally{this.clicked.set(!1)}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}saveUiSettingChange(e,n){return x(this,null,function*(){try{yield this.$api.put("/config-editor/ui",{key:e,value:n}),this.$settings.setEnvItem(e,n),this.showRestartToast()}catch(a){console.error(a),this.$toastr.error(a.message,this.$translate.instant("toast.title_error"))}})}getScheduledBackups(){return x(this,null,function*(){try{let e=yield this.$api.get("/backup/scheduled-backups");this.scheduledBackups.set(e)}catch(e){console.error(e)}})}getNextBackup(){return x(this,null,function*(){try{let e=yield this.$api.get("/backup/scheduled-backups/next");this.backupTime.set(e.next)}catch(e){console.error(e)}})}showRestartToast(){if(!this.restartToastIsShown){this.restartToastIsShown=!0;let e=this.$toastr.info(this.$translate.instant("settings.changes.saved"),this.$translate.instant("menu.hbrestart.title"),{timeOut:0,tapToDismiss:!0,disableTimeOut:!0,positionClass:"toast-bottom-right",enableHtml:!0});e&&e.onTap&&e.onTap.pipe($(this.destroyRef)).subscribe(()=>{this.$router.navigate(["/restart"])})}}Date=Date;static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],decls:92,vars:82,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-hard-drive","primary-text",2,"font-size","75px"],[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",1,"rendux-label"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"btn","btn-primary","m-0","ms-3","py-1",3,"click","disabled"],[1,"fas"],[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"],[2,"display","flex","flex-wrap","nowrap"],["placement","bottom","container","modal","triggers","hover",1,"btn","btn-primary","m-0","ms-3","py-1",3,"click","disabled","ngbTooltip","openDelay"],[1,"fas","fa-history"],["placement","bottom","container","modal","triggers","hover",1,"btn","btn-primary","m-0","ms-2",3,"click","disabled","ngbTooltip","openDelay"],[1,"fas","fa-download"],["placement","bottom","container","modal","triggers","hover",1,"btn","btn-danger","m-0","ms-2",3,"click","disabled","ngbTooltip","openDelay"],[1,"fas","fa-exclamation-circle"]],template:function(n,a){n&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),s(),o(5,"button",3),r(6,"translate"),T("click",function(){return a.dismissModal()}),s()(),o(7,"div",4)(8,"div",5),p(9,"i",6),s(),o(10,"ul",7)(11,"li"),d(12),r(13,"translate"),s(),o(14,"li"),d(15),r(16,"translate"),s(),o(17,"li"),d(18),r(19,"translate"),s()(),o(20,"ul",8)(21,"li",9)(22,"h6",10),d(23),r(24,"translate"),s()(),o(25,"li",11)(26,"div",12),d(27),r(28,"translate"),p(29,"br"),o(30,"span",13),d(31),r(32,"translate"),s()(),o(33,"div",14),p(34,"input",15),r(35,"translate"),s()(),o(36,"li",16)(37,"div",17),d(38),r(39,"translate"),p(40,"br"),o(41,"span",18),m(42,ni,2,1)(43,ai,2,3),s()(),o(44,"div",19),p(45,"input",20),r(46,"translate"),p(47,"label",21),s()(),o(48,"li",22)(49,"div")(50,"span"),d(51),r(52,"translate"),s(),p(53,"br"),o(54,"small",23),d(55),r(56,"translate"),s()(),o(57,"button",24),r(58,"translate"),T("click",function(){return a.onDownloadBackupClick()}),p(59,"i",25),s()(),o(60,"li",22)(61,"div")(62,"span"),d(63),r(64,"translate"),s(),p(65,"br"),o(66,"small",23),d(67),r(68,"translate"),s()(),o(69,"button",24),r(70,"translate"),T("click",function(){return a.onCreateBackupClick()}),p(71,"i",25),s()(),o(72,"li",22)(73,"div")(74,"span"),d(75),r(76,"translate"),s(),p(77,"br"),o(78,"small",23),d(79),r(80,"translate"),s()(),o(81,"button",24),r(82,"translate"),T("click",function(){return a.restore(null)}),p(83,"i",26),s()()(),m(84,li,7,3,"ul",27),s(),o(85,"div",28),p(86,"div",17),o(87,"div",29)(88,"button",30),T("click",function(){return a.dismissModal()}),d(89),r(90,"translate"),s()(),p(91,"div",31),s()()),n&2&&(i(3),g(l(4,34,"backup.title_backup")),i(2),_("disabled",a.clicked()||a.deleting()),b("aria-label",l(6,36,"form.button_close")),i(7),g(l(13,38,"backup.backup_help_one")),i(3),g(l(16,40,"backup.backup_help_two")),i(3),g(l(19,42,"backup.backup_warning")),i(5),g(l(24,44,"backup.settings_title")),i(4),f(" ",l(28,46,"backup.settings_path")),i(4),g(l(32,48,"backup.settings_path_desc")),i(3),_("formControl",a.pathFormControl),b("aria-label",l(35,50,"backup.settings_path")),i(4),f(" ",l(39,52,"backup.settings_enable")),i(4),u(a.enabledFormControl.value?42:43),i(3),_("formControl",a.enabledFormControl),b("aria-label",l(46,54,"backup.settings_enable")),i(6),g(l(52,56,"backup.backup_now")),i(4),g(l(56,58,"backup.backup_now_desc")),i(2),_("disabled",a.clicked()),b("aria-label",l(58,60,"backup.backup_now")),i(2),D(A(76,yt,!a.clicked(),a.clicked())),i(4),g(l(64,62,"backup.backup_now")),i(4),g(l(68,64,"backup.backup_now_save_desc")),i(2),_("disabled",a.clicked()),b("aria-label",l(70,66,"backup.backup_now")),i(2),D(A(79,yt,!a.clicked(),a.clicked())),i(4),g(l(76,68,"backup.restore_now")),i(4),g(l(80,70,"backup.restore_now_desc")),i(2),_("disabled",a.clicked()),b("aria-label",l(82,72,"backup.restore_now")),i(3),u(a.scheduledBackups().length?84:-1),i(4),_("disabled",a.clicked()||a.deleting()),i(),f(" ",l(90,74,"form.button_close")," "))},dependencies:[ke,oe,_e,ue,ae,he,Ge,H],encapsulation:2})}return t})();function di(t,c){t&1&&(o(0,"div",12),p(1,"i",13),s(),o(2,"p",14),d(3),r(4,"translate"),s()),t&2&&(i(3),g(l(4,1,"reset.no_accessories")))}function ci(t,c){t&1&&(o(0,"div",12),p(1,"i",15),s(),o(2,"ul",16)(3,"li"),d(4),r(5,"translate"),s(),o(6,"li"),d(7),r(8,"translate"),s(),o(9,"li"),d(10),r(11,"translate"),s()(),o(12,"ngb-alert",17)(13,"p",18),d(14),r(15,"translate"),s()()),t&2&&(i(4),g(l(5,5,"reset.accessory_all.list_1")),i(3),g(l(8,7,"reset.accessory_all.list_2")),i(3),g(l(11,9,"reset.accessory_all.list_3")),i(2),_("dismissible",!1),i(2),g(l(15,11,"reset.action_is_irreversible")))}function pi(t,c){if(t&1){let e=B();o(0,"button",19),r(1,"translate"),T("click",function(){w(e);let a=h();return k(a.dismissModal())}),d(2),r(3,"translate"),s()}if(t&2){let e=h();_("disabled",e.clicked()),b("aria-label",l(1,3,"form.button_close")),i(2),f(" ",l(3,5,"form.button_close")," ")}}function mi(t,c){if(t&1){let e=B();o(0,"button",20),r(1,"translate"),T("click",function(){w(e);let a=h();return k(a.dismissModal())}),d(2),r(3,"translate"),s()}t&2&&(b("aria-label",l(1,2,"form.button_close")),i(2),f(" ",l(3,4,"form.button_close")," "))}function ui(t,c){t&1&&(d(0),r(1,"translate")),t&2&&f(" ",l(1,1,"form.button_remove")," ")}function _i(t,c){t&1&&p(0,"i",22)}function hi(t,c){if(t&1){let e=B();o(0,"button",21),T("click",function(){w(e);let a=h();return k(a.onResetCachedAccessoriesClick())}),m(1,ui,2,3),m(2,_i,1,0,"i",22),s()}if(t&2){let e=h();_("disabled",e.clicked()),i(),u(e.clicked()?-1:1),i(),u(e.clicked()?2:-1)}}var Et=(()=>{class t{$activeModal=I(U);$api=I(z);$router=I(J);$toastr=I(O);$translate=I(L);clicked=v(!1);cachedAccessories=v([]);ngOnInit(){this.loadCachedAccessories()}onResetCachedAccessoriesClick(){return x(this,null,function*(){this.clicked.set(!0);try{yield this.$api.put("/server/reset-cached-accessories",{}),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 x(this,null,function*(){try{this.cachedAccessories.set(yield this.$api.get("/server/cached-accessories"))}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],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",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-network-wired","primary-text",2,"font-size","75px"],[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(n,a){n&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),s(),o(5,"button",3),r(6,"translate"),T("click",function(){return a.dismissModal()}),s()(),o(7,"div",4),m(8,di,5,3),m(9,ci,16,13),s(),o(10,"div",5)(11,"div",6),m(12,pi,4,7,"button",7),s(),o(13,"div",8),m(14,mi,4,6,"button",9),s(),o(15,"div",10),m(16,hi,3,3,"button",11),s()()()),n&2&&(i(3),g(l(4,8,"reset.accessory_all.title")),i(2),_("disabled",a.clicked()),b("aria-label",l(6,10,"form.button_close")),i(3),u(a.cachedAccessories.length===0?8:-1),i(),u(a.cachedAccessories.length>0?9:-1),i(3),u(a.cachedAccessories.length>0?12:-1),i(2),u(a.cachedAccessories.length===0?14:-1),i(2),u(a.cachedAccessories.length>0?16:-1))},dependencies:[Te,H],encapsulation:2})}return t})();var gi=(t,c)=>({"fa-matter":t,"fa-hap":c}),fi=(t,c)=>({"btn-danger":t,"btn-elegant":c}),Ci=(t,c,e)=>({"fa-broom":t,"fa-undo":c,"fa-circle-notch fa-spin":e});function vi(t,c){t&1&&(S(0,"div",12),P(1,"i",13),y(),S(2,"p",14),d(3),r(4,"translate"),y()),t&2&&(i(3),g(l(4,1,"reset.bridge_accessories.empty")))}function bi(t,c){if(t&1){let e=B();S(0,"li",18)(1,"span",19),P(2,"i",20),y(),S(3,"span",21),d(4),P(5,"br"),S(6,"small",22)(7,"span",23),d(8),y()()(),S(9,"button",24),r(10,"translate"),R("click",function(){let a=w(e).$implicit,C=h(2);return k(C.toggleList(a._id,a._protocol))}),P(11,"i",25),y()()}if(t&2){let e=c.$implicit,n=h(2);i(2),D(A(12,gi,e._protocol==="matter",e._protocol!=="matter")),i(2),f(" ",e.name," "),i(4),g(e._username),i(),D(A(15,fi,!n.isInList(e._id,e._protocol),n.isInList(e._id,e._protocol))),V("disabled",n.clicked()),b("aria-label",l(10,10,"form.button_delete")),i(2),D(pe(18,Ci,!n.isInList(e._id,e._protocol),n.isInList(e._id,e._protocol)&&!n.clicked(),n.isInList(e._id,e._protocol)&&n.clicked()))}}function xi(t,c){if(t&1&&(S(0,"div",12),P(1,"i",15),y(),S(2,"ul",16)(3,"li"),d(4),r(5,"translate"),y(),S(6,"li"),d(7),r(8,"translate"),y(),S(9,"li"),d(10),r(11,"translate"),y()(),S(12,"ul",17),G(13,bi,12,22,"li",18,K),y()),t&2){let e=h();i(4),g(l(5,3,"reset.bridge_accessories.list_1")),i(3),g(l(8,5,"reset.clear_cache_single.list_3")),i(3),g(l(11,7,"reset.bridge_accessories.list_2")),i(3),Q(e.pairings())}}function Si(t,c){if(t&1){let e=B();S(0,"button",26),R("click",function(){w(e);let a=h();return k(a.dismissModal())}),d(1),r(2,"translate"),y()}if(t&2){let e=h();V("disabled",e.clicked()),i(),f(" ",l(2,2,"form.button_close")," ")}}function yi(t,c){if(t&1){let e=B();S(0,"button",27),R("click",function(){w(e);let a=h();return k(a.dismissModal())}),d(1),r(2,"translate"),y()}t&2&&(i(),f(" ",l(2,1,"form.button_close")," "))}function Ii(t,c){t&1&&P(0,"i",29)}function Ei(t,c){if(t&1&&d(0),t&2){let e=h(3);f(" (",e.toDelete().length,") ")}}function wi(t,c){if(t&1&&(d(0),r(1,"translate"),m(2,Ei,1,1)),t&2){let e=h(2);f(" ",l(1,2,"form.button_remove")," "),i(2),u(e.toDelete().length>0?2:-1)}}function ki(t,c){if(t&1){let e=B();S(0,"button",28),R("click",function(){w(e);let a=h();return k(a.cleanBridges())}),m(1,Ii,1,0,"i",29)(2,wi,3,4),y()}if(t&2){let e=h();V("disabled",!e.toDelete().length||e.clicked()),i(),u(e.clicked()?1:2)}}var wt=(()=>{class t{$activeModal=I(U);$api=I(z);$router=I(J);$settings=I(Y);$toastr=I(O);$translate=I(L);clicked=v(!1);pairings=v([]);toDelete=v([]);isMatterSupported=this.$settings.isFeatureEnabled("matterSupport");ngOnInit(){this.loadPairings()}cleanBridges(){return x(this,null,function*(){this.clicked.set(!0);try{yield this.$api.delete("/server/pairings/accessories",{body:this.toDelete()}),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,n){this.toDelete().some(a=>a.id===e&&a.protocol===n)?this.toDelete.set(this.toDelete().filter(a=>a.id!==e||a.protocol!==n)):this.toDelete.update(a=>[...a,{id:e,protocol:n}])}isInList(e,n){return this.toDelete().some(a=>a.id===e&&a.protocol===n)}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadPairings(){return x(this,null,function*(){try{let e=(yield this.$api.get("/server/pairings")).filter(a=>a._category==="bridge"&&!a._main).sort((a,C)=>a.name.localeCompare(C.name)),n=[];for(let a of e)n.push(ve(Ce({},a),{_protocol:"hap",_displayName:a.name})),this.isMatterSupported&&a._matter&&n.push(ve(Ce({},a),{_protocol:"matter",_displayName:a.name}));this.pairings.set(n)}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 \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],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",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-broom","primary-text",2,"font-size","75px"],[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"],[1,"btn","btn-danger","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(n,a){n&1&&(S(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),y(),S(5,"button",3),r(6,"translate"),R("click",function(){return a.dismissModal()}),y()(),S(7,"div",4),m(8,vi,5,3),m(9,xi,15,9),y(),S(10,"div",5)(11,"div",6),m(12,Si,3,4,"button",7),y(),S(13,"div",8),m(14,yi,3,3,"button",9),y(),S(15,"div",10),m(16,ki,3,2,"button",11),y()()()),n&2&&(i(3),g(l(4,8,"reset.bridge_accessories.title")),i(2),V("disabled",a.clicked()),b("aria-label",l(6,10,"form.button_close")),i(3),u(a.pairings().length===0?8:-1),i(),u(a.pairings().length>0?9:-1),i(3),u(a.pairings().length>0?12:-1),i(2),u(a.pairings().length===0?14:-1),i(2),u(a.pairings().length>0?16:-1))},dependencies:[H],encapsulation:2})}return t})();function Ti(t,c){t&1&&(d(0),r(1,"translate")),t&2&&f(" ",l(1,1,"form.button_reset")," ")}function Bi(t,c){t&1&&p(0,"i",16)}var kt=(()=>{class t{$activeModal=I(U);$api=I(z);$router=I(J);$toastr=I(O);$translate=I(L);clicked=v(!1);onResetHomebridgeAccessoryClick(){return x(this,null,function*(){this.clicked.set(!0);try{yield this.$api.put("/server/reset-homebridge-accessory",{}),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 \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],decls:38,vars:33,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-bridge","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","error",1,"mb-0",3,"dismissible"],[1,"text-center","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","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-circle-notch","fa-spin"]],template:function(n,a){n&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),s(),o(5,"button",3),r(6,"translate"),T("click",function(){return a.dismissModal()}),s()(),o(7,"div",4)(8,"div",5),p(9,"i",6),s(),o(10,"ul",7)(11,"li"),d(12),r(13,"translate"),s(),o(14,"li"),d(15),r(16,"translate"),s(),o(17,"li"),d(18),r(19,"translate"),s(),o(20,"li"),d(21),r(22,"translate"),s()(),o(23,"ngb-alert",8)(24,"p",9),d(25),r(26,"translate"),s()()(),o(27,"div",10)(28,"div",11)(29,"button",12),r(30,"translate"),T("click",function(){return a.dismissModal()}),d(31),r(32,"translate"),s()(),p(33,"div",13),o(34,"div",14)(35,"button",15),T("click",function(){return a.onResetHomebridgeAccessoryClick()}),m(36,Ti,2,3),m(37,Bi,1,0,"i",16),s()()()()),n&2&&(i(3),g(l(4,15,"reset.bridge_all.title")),i(2),_("disabled",a.clicked()),b("aria-label",l(6,17,"form.button_close")),i(7),g(l(13,19,"reset.bridge_all.list_1")),i(3),g(l(16,21,"reset.bridge_all.list_2")),i(3),g(l(19,23,"reset.bridge_all.list_3")),i(3),g(l(22,25,"reset.bridge_all.list_4")),i(2),_("dismissible",!1),i(2),g(l(26,27,"reset.action_is_irreversible")),i(4),_("disabled",a.clicked()),b("aria-label",l(30,29,"form.button_close")),i(2),f(" ",l(32,31,"form.button_close")," "),i(4),_("disabled",a.clicked()),i(),u(a.clicked()?-1:36),i(),u(a.clicked()?37:-1))},dependencies:[Te,H],encapsulation:2})}return t})();var De=(t,c)=>({"btn-danger":t,"btn-elegant":c}),Tt=(t,c,e)=>({"fa-refresh":t,"fa-undo":c,"fa-circle-notch fa-spin":e}),$i=(t,c,e)=>({"fa-trash":t,"fa-undo":c,"fa-circle-notch fa-spin":e});function Mi(t,c){t&1&&(S(0,"div",12),P(1,"i",13),y(),S(2,"p",14),d(3),r(4,"translate"),y()),t&2&&(i(3),g(l(4,1,"reset.bridges.empty")))}function Fi(t,c){if(t&1&&P(0,"i",27)(1,"i",28),t&2){let e=h().$implicit;se("opacity",e._matterOnly?"0.25":"1"),i(),se("opacity",e._matter?"1":"0.25")}}function Pi(t,c){t&1&&P(0,"i",22)}function Di(t,c){if(t&1){let e=B();S(0,"li",20)(1,"span",21),m(2,Fi,2,4)(3,Pi,1,0,"i",22),y(),S(4,"span",23),d(5),P(6,"br"),S(7,"small",24),d(8),r(9,"titlecase"),y()(),S(10,"button",25),r(11,"translate"),R("click",function(){let a=w(e).$implicit,C=h(3);return k(C.toggleList(a._id,!1))}),P(12,"i",26),y()()}if(t&2){let e=c.$implicit,n=h(3);i(2),u(n.isMatterSupported?2:3),i(3),f(" ",e.name," "),i(3),He(" ",e._username," \xB7 ",e._main?"Homebridge":l(9,10,e._category)," "),i(2),D(A(14,De,!n.isInList(e._id),n.isInList(e._id))),V("disabled",n.clicked()),b("aria-label",l(11,12,"form.button_unpair")),i(2),D(pe(17,Tt,!n.isInList(e._id),n.isInList(e._id)&&!n.clicked(),n.isInList(e._id)&&n.clicked()))}}function Ri(t,c){if(t&1&&(S(0,"ul",16)(1,"li",17)(2,"h6",18),d(3),r(4,"translate"),y(),S(5,"p",19),d(6),r(7,"translate"),y()(),G(8,Di,13,21,"li",20,K),y()),t&2){let e=h(2);i(3),g(l(4,2,"reset.bridge_ind.head_non_child")),i(3),g(l(7,4,"reset.bridge_ind.desc_non_child")),i(2),Q(e.pairingsNonChild())}}function Ai(t,c){if(t&1&&P(0,"i",27)(1,"i",28),t&2){let e=h().$implicit;i(),se("opacity",e._matter?"1":"0.25")}}function Vi(t,c){t&1&&P(0,"i",22)}function Ni(t,c){if(t&1){let e=B();S(0,"li",20)(1,"span",21),m(2,Ai,2,2)(3,Vi,1,0,"i",22),y(),S(4,"span",23),d(5),P(6,"br"),S(7,"small",24),d(8),y()(),S(9,"button",25),r(10,"translate"),R("click",function(){let a=w(e).$implicit,C=h(3);return k(C.toggleList(a._id,!0))}),P(11,"i",26),y()()}if(t&2){let e=c.$implicit,n=h(3);i(2),u(n.isMatterSupported?2:3),i(3),f(" ",e.name," "),i(3),g(e._username),i(),D(A(11,De,!n.isInList(e._id),n.isInList(e._id))),V("disabled",n.clicked()),b("aria-label",l(10,9,"form.button_unpair")),i(2),D(pe(14,Tt,!n.isInList(e._id),n.isInList(e._id)&&!n.clicked(),n.isInList(e._id)&&n.clicked()))}}function Hi(t,c){if(t&1&&(S(0,"ul",16)(1,"li",17)(2,"h6",18),d(3),r(4,"translate"),y(),S(5,"p",19),d(6),r(7,"translate"),y()(),G(8,Ni,12,18,"li",20,K),y()),t&2){let e=h(2);i(3),g(l(4,2,"reset.bridge_ind.head_child_active")),i(3),g(l(7,4,"reset.bridge_ind.desc_child_active")),i(2),Q(e.pairingsChildActive())}}function Li(t,c){if(t&1&&P(0,"i",27)(1,"i",28),t&2){let e=h().$implicit;i(),se("opacity",e._matter?"1":"0.25")}}function Oi(t,c){t&1&&P(0,"i",22)}function zi(t,c){if(t&1){let e=B();S(0,"li",20)(1,"span",21),m(2,Li,2,2)(3,Oi,1,0,"i",22),y(),S(4,"span",23),d(5),P(6,"br"),S(7,"small",24),d(8),y()(),S(9,"button",25),r(10,"translate"),R("click",function(){let a=w(e).$implicit,C=h(3);return k(C.toggleList(a._id,!1))}),P(11,"i",26),y()()}if(t&2){let e=c.$implicit,n=h(3);i(2),u(n.isMatterSupported?2:3),i(3),f(" ",e.name," "),i(3),g(e._username),i(),D(A(11,De,!n.isInList(e._id),n.isInList(e._id))),V("disabled",n.clicked()),b("aria-label",l(10,9,"form.button_unpair")),i(2),D(pe(14,$i,!n.isInList(e._id),n.isInList(e._id)&&!n.clicked(),n.isInList(e._id)&&n.clicked()))}}function Ui(t,c){if(t&1&&(S(0,"ul",16)(1,"li",17)(2,"h6",18),d(3),r(4,"translate"),y(),S(5,"p",19),d(6),r(7,"translate"),y()(),G(8,zi,12,18,"li",20,K),y()),t&2){let e=h(2);i(3),g(l(4,2,"reset.bridge_ind.head_child_stale")),i(3),g(l(7,4,"reset.bridge_ind.desc_child_stale")),i(2),Q(e.pairingsChildStale())}}function Wi(t,c){if(t&1&&(S(0,"div",12),P(1,"i",15),y(),m(2,Ri,10,6,"ul",16),m(3,Hi,10,6,"ul",16),m(4,Ui,10,6,"ul",16)),t&2){let e=h();i(2),u(e.pairingsNonChild().length>0?2:-1),i(),u(e.pairingsChildActive().length>0?3:-1),i(),u(e.pairingsChildStale().length>0?4:-1)}}function ji(t,c){if(t&1){let e=B();S(0,"button",29),R("click",function(){w(e);let a=h();return k(a.dismissModal())}),d(1),r(2,"translate"),y()}if(t&2){let e=h();V("disabled",e.clicked()),i(),f(" ",l(2,2,"form.button_close")," ")}}function Ki(t,c){if(t&1){let e=B();S(0,"button",30),R("click",function(){w(e);let a=h();return k(a.dismissModal())}),d(1),r(2,"translate"),y()}t&2&&(i(),f(" ",l(2,1,"form.button_close")," "))}function Gi(t,c){if(t&1&&d(0),t&2){let e=h(3);f(" (",e.toDelete().length,") ")}}function Qi(t,c){if(t&1&&(d(0),r(1,"translate"),m(2,Gi,1,1)),t&2){let e=h(2);f(" ",l(1,2,"form.button_reset")," "),i(2),u(e.toDelete().length>0?2:-1)}}function qi(t,c){t&1&&P(0,"i",32)}function Ji(t,c){if(t&1){let e=B();S(0,"button",31),R("click",function(){w(e);let a=h();return k(a.removeBridges())}),m(1,Qi,3,4),m(2,qi,1,0,"i",32),y()}if(t&2){let e=h();V("disabled",!e.toDelete().length||e.clicked()),i(),u(e.clicked()?-1:1),i(),u(e.clicked()?2:-1)}}var Bt=(()=>{class t{$activeModal=I(U);$api=I(z);$router=I(J);$settings=I(Y);$toastr=I(O);$translate=I(L);clicked=v(!1);pairingsNonChild=v([]);pairingsChildActive=v([]);pairingsChildStale=v([]);toDelete=v([]);isMatterSupported=this.$settings.isFeatureEnabled("matterSupport");ngOnInit(){this.loadPairings()}toggleList(e,n=!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:n}])}isInList(e){return this.toDelete().some(n=>n.id===e)}removeBridges(){return x(this,null,function*(){this.clicked.set(!0);try{yield this.$api.delete("/server/pairings",{body:this.toDelete()}),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 x(this,null,function*(){try{let e=(yield this.$api.get("/server/pairings")).filter(n=>!n._main).sort((n,a)=>n.name.localeCompare(a.name));this.pairingsChildActive.set(e.filter(n=>n._category==="bridge"&&!n._couldBeStale)),this.pairingsNonChild.set(e.filter(n=>n._category!=="bridge")),this.pairingsChildStale.set(e.filter(n=>n._category==="bridge"&&n._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 \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],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",2,"font-size","75px"],[1,"text-center","mb-0"],[1,"fas","fa-bridge","primary-text",2,"font-size","75px"],[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","font-monospace"],[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(n,a){n&1&&(S(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),y(),S(5,"button",3),r(6,"translate"),R("click",function(){return a.dismissModal()}),y()(),S(7,"div",4),m(8,Mi,5,3),m(9,Wi,5,3),y(),S(10,"div",5)(11,"div",6),m(12,ji,3,4,"button",7),y(),S(13,"div",8),m(14,Ki,3,3,"button",9),y(),S(15,"div",10),m(16,Ji,3,3,"button",11),y()()()),n&2&&(i(3),g(l(4,8,"reset.bridge_ind.title")),i(2),V("disabled",a.clicked()),b("aria-label",l(6,10,"form.button_close")),i(3),u(a.pairingsChildActive().length===0&&a.pairingsChildStale().length===0&&a.pairingsNonChild().length===0?8:-1),i(),u(a.pairingsChildActive().length>0||a.pairingsChildStale().length>0||a.pairingsNonChild().length>0?9:-1),i(3),u(a.pairingsChildActive().length>0||a.pairingsChildStale().length>0||a.pairingsNonChild().length>0?12:-1),i(2),u(a.pairingsChildActive().length===0&&a.pairingsChildStale().length===0&&a.pairingsNonChild().length===0?14:-1),i(2),u(a.pairingsChildActive().length>0||a.pairingsChildStale().length>0||a.pairingsNonChild().length>0?16:-1))},dependencies:[me,H],encapsulation:2})}return t})();function Yi(t,c){if(t&1){let e=B();o(0,"li",9)(1,"div")(2,"span",16),d(3),s(),p(4,"br"),o(5,"span",17),d(6),s()(),o(7,"span")(8,"input",18),ze("ngModelChange",function(a){let C=w(e).$implicit;return Oe(C.selected,a)||(C.selected=a),k(a)}),T("ngModelChange",function(){w(e);let a=h();return k(a.onAdapterSelectionChange())}),s(),p(9,"label",19),s()()}if(t&2){let e=c.$implicit;i(3),g(e.ip4||e.ip6),i(3),g(e.iface),i(2),_("id","adapter"+e.iface),Le("ngModel",e.selected),i(),_("for","adapter"+e.iface)}}var $t=(()=>{class t{$activeModal=I(U);modalData=I(Ie);adaptersAvailable=this.modalData.adaptersAvailable;adaptersSelected=this.modalData.adaptersSelected;isUnchanged=v(!0);adaptersOriginal=[];ngOnInit(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersSelected.some(n=>n.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(n=>n.iface===e&&n.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 \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],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",2,"font-size","75px"],[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(n,a){n&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),d(3),r(4,"translate"),s(),o(5,"button",3),r(6,"translate"),T("click",function(){return a.closeAndReset()}),s()(),o(7,"div",4)(8,"div",5),p(9,"i",6),s(),o(10,"ul",7)(11,"li"),d(12),r(13,"translate"),s()(),o(14,"ul",8),G(15,Yi,10,5,"li",9,K),s()(),o(17,"div",10)(18,"div",11)(19,"button",12),r(20,"translate"),T("click",function(){return a.closeAndReset()}),d(21),r(22,"translate"),s()(),p(23,"div",13),o(24,"div",14)(25,"button",15),T("click",function(){return a.submit()}),d(26),r(27,"translate"),s()()()()),n&2&&(i(3),g(l(4,7,"settings.network.title_network_interfaces")),i(2),b("aria-label",l(6,9,"form.button_close")),i(7),g(l(13,11,"settings.network.message_network_interface")),i(3),Q(a.adaptersAvailable),i(4),b("aria-label",l(20,13,"form.button_close")),i(2),f(" ",l(22,15,"form.button_close")," "),i(4),_("disabled",a.isUnchanged()),i(),f(" ",l(27,17,"form.button_save")," "))},dependencies:[ge,ue,ae,ye,H],encapsulation:2})}return t})();var Xi=["keyInput"],Zi=["certInput"],en=["pfxInput"];function tn(t,c){t&1&&p(0,"i",14)}function nn(t,c){t&1&&p(0,"i",14)}function an(t,c){t&1&&p(0,"i",14)}function on(t,c){t&1&&p(0,"i",14)}function sn(t,c){if(t&1&&(o(0,"ul",18)(1,"li",23),d(2),r(3,"translate"),p(4,"input",24),o(5,"small",25),d(6),r(7,"translate"),s()()()),t&2){let e=h();i(2),f(" ",l(3,3,"settings.security.selfsigned_hostnames")," "),i(2),_("formControl",e.hostnamesControl),i(2),g(l(7,5,"settings.security.selfsigned_hostnames_desc"))}}function rn(t,c){if(t&1&&(o(0,"small",27),d(1),s()),t&2){let e=h(2);i(),g(e.keyPathControl.value)}}function ln(t,c){if(t&1&&(o(0,"small",27),d(1),s()),t&2){let e=h(2);i(),g(e.certPathControl.value)}}function dn(t,c){if(t&1){let e=B();o(0,"ul",18)(1,"li",23),d(2),r(3,"translate"),o(4,"input",26,0),T("change",function(a){w(e);let C=h();return k(C.onKeyChange(a))}),s(),m(6,rn,2,1,"small",27),s(),o(7,"li",23),d(8),r(9,"translate"),o(10,"input",28,1),T("change",function(a){w(e);let C=h();return k(C.onCertChange(a))}),s(),m(12,ln,2,1,"small",27),s()()}if(t&2){let e=h();i(2),f(" ",l(3,4,"settings.security.key")," "),i(4),u(e.keyPathControl.value?6:-1),i(2),f(" ",l(9,6,"settings.security.cert")," "),i(4),u(e.certPathControl.value?12:-1)}}function cn(t,c){if(t&1&&(o(0,"small",27),d(1),s()),t&2){let e=h(2);i(),g(e.pfxPathControl.value)}}function pn(t,c){if(t&1){let e=B();o(0,"ul",18)(1,"li",23),d(2),r(3,"translate"),o(4,"input",29,2),T("change",function(a){w(e);let C=h();return k(C.onPfxChange(a))}),s(),m(6,cn,2,1,"small",27),s(),o(7,"li",23),d(8),r(9,"translate"),p(10,"input",30),o(11,"small",25),d(12),r(13,"translate"),s()()()}if(t&2){let e=h();i(2),f(" ",l(3,5,"settings.security.pfx")," "),i(4),u(e.pfxPathControl.value?6:-1),i(2),f(" ",l(9,7,"settings.security.pass")," "),i(2),_("formControl",e.passphraseControl),i(2),g(l(13,9,"settings.security.pass_optional"))}}function mn(t,c){t&1&&p(0,"i",22)}var Mt=(()=>{class t{destroyRef=I(le);$api=I(z);$settings=I(Y);$toastr=I(O);$translate=I(L);$activeModal=I(U);keyInput=ne("keyInput");certInput=ne("certInput");pfxInput=ne("pfxInput");selectedMode=v("off");isSaving=v(!1);isUnchanged=v(!0);hostnamesControl=new M("",{nonNullable:!0});keyPathControl=new M("",{nonNullable:!0});certPathControl=new M("",{nonNullable:!0});pfxPathControl=new M("",{nonNullable:!0});passphraseControl=new M("",{nonNullable:!0});isFormInvalid=je(()=>{switch(this.selectedMode()){case"selfsigned":return!this.hostnamesControl.value.trim();case"keycert":{let n=this.keyPathControl.value,a=this.certPathControl.value;return!n||!a}case"pfx":return!this.pfxPathControl.value;case"off":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(this.$settings.env.ssl?.passphrase||"",{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.passphraseControl.value?"pfx":"off";this.selectedMode.set(e),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.hostnamesControl.valueChanges.pipe($(this.destroyRef)).subscribe(()=>this.detectChanges()),this.keyPathControl.valueChanges.pipe($(this.destroyRef)).subscribe(()=>this.detectChanges()),this.certPathControl.valueChanges.pipe($(this.destroyRef)).subscribe(()=>this.detectChanges()),this.pfxPathControl.valueChanges.pipe($(this.destroyRef)).subscribe(()=>this.detectChanges()),this.passphraseControl.valueChanges.pipe($(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},n=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.isUnchanged.set(!n)}onKeyChange(e){return x(this,null,function*(){let n=e.target.files;if(!(!n||n.length===0)){this.isSaving.set(!0);try{let a=new FormData;a.append("uploads",n[0],n[0].name);let C=yield this.$api.post("/server/ssl/keycert",a);C?.keyPath&&(this.keyPathControl.patchValue(C.keyPath),this.detectChanges())}catch(a){console.error(a);let C=a?.error?.message||a?.message||"Unknown error";this.$toastr.error(C,this.$translate.instant("toast.title_error"))}finally{this.isSaving.set(!1);let a=this.keyInput();a&&(a.nativeElement.value="")}}})}onCertChange(e){return x(this,null,function*(){let n=e.target.files;if(!(!n||n.length===0)){this.isSaving.set(!0);try{let a=new FormData;a.append("uploads",n[0],n[0].name);let C=yield this.$api.post("/server/ssl/keycert",a);C?.certPath&&(this.certPathControl.patchValue(C.certPath),this.detectChanges())}catch(a){console.error(a);let C=a?.error?.message||a?.message||"Unknown error";this.$toastr.error(C,this.$translate.instant("toast.title_error"))}finally{this.isSaving.set(!1);let a=this.certInput();a&&(a.nativeElement.value="")}}})}onPfxChange(e){return x(this,null,function*(){let n=e.target.files;if(!(!n||n.length===0)){this.isSaving.set(!0);try{let a=new FormData;a.append("upload",n[0],n[0].name);let C=yield this.$api.post("/server/ssl/pfx",a);C?.pfxPath&&this.pfxPathControl.patchValue(C.pfxPath),this.selectedMode.set("pfx"),this.detectChanges()}catch(a){console.error(a);let C=a?.error?.message||a?.message||"Unknown error";this.$toastr.error(C,this.$translate.instant("toast.title_error"))}finally{this.isSaving.set(!1);let a=this.pfxInput();a&&(a.nativeElement.value="")}}})}saveConfiguration(){return x(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 n=this.hostnamesControl.value.split(",").map(C=>C.trim()).filter(C=>!!C),a=yield this.$api.post("/server/ssl/selfsigned/generate",{hostnames:n,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":e["ssl.pfx"]="",e["ssl.passphrase"]="",e["ssl.key"]=this.keyPathControl.value,e["ssl.cert"]=this.certPathControl.value;break;case"pfx":e["ssl.key"]="",e["ssl.cert"]="",e["ssl.pfx"]=this.pfxPathControl.value,e["ssl.passphrase"]=this.passphraseControl.value;break}for(let[n,a]of Object.entries(e))yield this.$api.put("/config-editor/ui",{key:n,value:a}),this.$settings.setEnvItem(n,a);this.$activeModal.close(this.selectedMode())}catch(e){console.error(e);let n=e?.error?.message||e?.message||"Unknown error";this.$toastr.error(n,this.$translate.instant("toast.title_error"))}finally{this.isSaving.set(!1)}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],viewQuery:function(n,a){n&1&&de(a.keyInput,Xi,5)(a.certInput,Zi,5)(a.pfxInput,en,5),n&2&&ce(3)},decls:64,vars:62,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"],[1,"list-group","mb-0"],["type","button",1,"list-group-item","d-flex","align-items-center","text-start",3,"click"],[1,"me-3"],[1,"fas","fa-ban","fa-2x"],[1,"flex-grow-1"],[1,"grey-text"],[1,"fas","fa-check-circle","primary-text","fa-xl"],[1,"fas","fa-shield-alt","fa-2x"],[1,"fas","fa-key","fa-2x"],[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","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","\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022",1,"form-control","font-monospace",3,"formControl"]],template:function(n,a){n&1&&(o(0,"div",3)(1,"div",4)(2,"h5",5),d(3),r(4,"translate"),s(),o(5,"button",6),r(6,"translate"),T("click",function(){return a.dismissModal()}),s()(),o(7,"div",7)(8,"div",8)(9,"button",9),T("click",function(){return a.selectMode("off")}),o(10,"div",10),p(11,"i",11),s(),o(12,"div",12)(13,"div"),d(14),r(15,"translate"),s(),o(16,"small",13),d(17),r(18,"translate"),s()(),m(19,tn,1,0,"i",14),s(),o(20,"button",9),T("click",function(){return a.selectMode("selfsigned")}),o(21,"div",10),p(22,"i",15),s(),o(23,"div",12)(24,"div"),d(25),r(26,"translate"),s(),o(27,"small",13),d(28),r(29,"translate"),s()(),m(30,nn,1,0,"i",14),s(),o(31,"button",9),T("click",function(){return a.selectMode("keycert")}),o(32,"div",10),p(33,"i",16),s(),o(34,"div",12)(35,"div"),d(36),r(37,"translate"),s(),o(38,"small",13),d(39),r(40,"translate"),s()(),m(41,an,1,0,"i",14),s(),o(42,"button",9),T("click",function(){return a.selectMode("pfx")}),o(43,"div",10),p(44,"i",17),s(),o(45,"div",12)(46,"div"),d(47),r(48,"translate"),s(),o(49,"small",13),d(50),r(51,"translate"),s()(),m(52,on,1,0,"i",14),s()(),m(53,sn,8,7,"ul",18),m(54,dn,13,8,"ul",18),m(55,pn,14,11,"ul",18),s(),o(56,"div",19)(57,"button",20),T("click",function(){return a.dismissModal()}),d(58),r(59,"translate"),s(),o(60,"button",21),T("click",function(){return a.saveConfiguration()}),m(61,mn,1,0,"i",22),d(62),r(63,"translate"),s()()()),n&2&&(i(3),g(l(4,38,"settings.security.https_configure")),i(2),b("aria-label",l(6,40,"form.button_close")),i(6),W("primary-text",a.selectedMode()==="off")("grey-text",a.selectedMode()!=="off"),i(3),g(l(15,42,"settings.security.ssl_mode_off")),i(3),g(l(18,44,"settings.security.ssl_mode_off_desc")),i(2),u(a.selectedMode()==="off"?19:-1),i(3),W("primary-text",a.selectedMode()==="selfsigned")("grey-text",a.selectedMode()!=="selfsigned"),i(3),g(l(26,46,"settings.security.ssl_mode_selfsigned")),i(3),g(l(29,48,"settings.security.ssl_mode_selfsigned_desc")),i(2),u(a.selectedMode()==="selfsigned"?30:-1),i(3),W("primary-text",a.selectedMode()==="keycert")("grey-text",a.selectedMode()!=="keycert"),i(3),g(l(37,50,"settings.security.ssl_mode_keycert")),i(3),g(l(40,52,"settings.security.ssl_mode_keycert_desc")),i(2),u(a.selectedMode()==="keycert"?41:-1),i(3),W("primary-text",a.selectedMode()==="pfx")("grey-text",a.selectedMode()!=="pfx"),i(3),g(l(48,54,"settings.security.ssl_mode_pfx")),i(3),g(l(51,56,"settings.security.ssl_mode_pfx_desc")),i(2),u(a.selectedMode()==="pfx"?52:-1),i(),u(a.selectedMode()==="selfsigned"?53:-1),i(),u(a.selectedMode()==="keycert"?54:-1),i(),u(a.selectedMode()==="pfx"?55:-1),i(2),_("disabled",a.isSaving()),i(),f(" ",l(59,58,"form.button_close")," "),i(2),_("disabled",a.isSaving()||a.isUnchanged()||a.isFormInvalid()),i(),u(a.isSaving()?61:-1),i(),f(" ",l(63,60,"form.button_save")," "))},dependencies:[oe,_e,ae,he,H],encapsulation:2})}return t})();var un=["wallpaperInput"],_n=t=>({maxFileSizeText:t});function hn(t,c){if(t&1){let e=B();S(0,"div",10),P(1,"img",20),S(2,"button",21),r(3,"translate"),R("click",function(){w(e);let a=h();return k(a.clearWallpaper())}),P(4,"i",22),y()()}if(t&2){let e=h();i(),V("src",e.wallpaperUrl(),Ve),i(),b("aria-label",l(3,2,"form.button_delete"))}}function gn(t,c){t&1&&P(0,"div",11)}var Ft=(()=>{class t{$activeModal=I(U);$api=I(z);$settings=I(Y);$toastr=I(O);$translate=I(L);wallpaperInput=ne("wallpaperInput");clicked=v(!1);selectedFile=v(null);wallpaperUrl=v(null);originalWallpaperUrl=v(null);maxFileSizeText=globalThis.backup.maxBackupSizeText;ngOnInit(){this.$settings.env.customWallpaperHash&&(this.wallpaperUrl.set(`${Ye.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`),this.originalWallpaperUrl.set(this.wallpaperUrl()))}onFileChange(e){let n=e.target.files;if(n?.length){this.selectedFile.set(n[0]);let a=new FileReader;a.onload=C=>{this.wallpaperUrl.set(C.target.result)},a.readAsDataURL(this.selectedFile())}else this.selectedFile.set(null),this.wallpaperUrl.set(this.originalWallpaperUrl())}saveWallpaper(){return x(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(e.error?.message,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 \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],viewQuery:function(n,a){n&1&&de(a.wallpaperInput,un,5),n&2&&ce()},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",2,"font-size","75px"],[1,"mb-3"],[1,"mb-3","text-center"],[1,"position-relative","d-inline-block"],[1,"gradient","anim","rounded",2,"height","200px","width","350px","margin","0 auto"],[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",2,"height","200px",3,"src"],[1,"btn","btn-danger","position-absolute",2,"top","10px","right","10px",3,"click"],[1,"fas","fa-trash"]],template:function(n,a){if(n&1){let C=B();S(0,"div",1)(1,"div",2)(2,"h5",3),d(3),r(4,"translate"),y(),S(5,"button",4),r(6,"translate"),R("click",function(){return w(C),k(a.dismissModal())}),y()(),S(7,"div",5)(8,"div",6),P(9,"i",7),y(),S(10,"ul",8)(11,"li"),d(12),r(13,"translate"),y(),S(14,"li"),d(15),r(16,"translate"),y(),S(17,"li"),d(18),r(19,"translate"),y()(),S(20,"div",9),m(21,hn,5,4,"div",10)(22,gn,1,0,"div",11),y(),S(23,"div",12)(24,"input",13,0),R("change",function(E){return w(C),k(a.onFileChange(E))}),y()()(),S(26,"div",14)(27,"div",15)(28,"button",16),R("click",function(){return w(C),k(a.dismissModal())}),d(29),r(30,"translate"),y()(),P(31,"div",17),S(32,"div",18)(33,"button",19),R("click",function(){return w(C),k(a.saveWallpaper())}),d(34),r(35,"translate"),y()()()()}n&2&&(i(3),g(l(4,11,"settings.display.wallpaper")),i(2),V("disabled",a.clicked()),b("aria-label",l(6,13,"form.button_close")),i(7),g(l(13,15,"settings.display.wallpaper_intro")),i(3),g(q(16,17,"settings.display.wallpaper_rule",X(26,_n,a.maxFileSizeText))),i(3),g(l(19,20,"settings.display.wallpaper_rule2")),i(3),u(a.wallpaperUrl()?21:22),i(7),V("disabled",a.clicked()),i(),f(" ",l(30,22,"form.button_close")," "),i(4),V("disabled",a.wallpaperUrl()===a.originalWallpaperUrl()||a.clicked()),i(),f(" ",l(35,24,"form.button_save")," "))},dependencies:[oe,H],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}@keyframes _ngcontent-%COMP%_gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}"]})}return t})();var fn=["searchInput"],Cn=()=>({standalone:!0}),ee=(t,c)=>({"fa-chevron-down":t,"fa-chevron-right":c}),Re=t=>({link:t}),vn=(t,c)=>({"badge-danger":t,"badge-info":c});function bn(t,c){if(t&1){let e=B();o(0,"button",12),r(1,"translate"),T("click",function(){w(e);let a=h(2);return k(a.clearSearch())}),p(2,"i",13),s()}t&2&&b("aria-label",l(1,1,"form.button_clear"))}function xn(t,c){if(t&1){let e=B();o(0,"div",6)(1,"div",8)(2,"form",9)(3,"input",10,0),r(5,"translate"),T("ngModelChange",function(a){w(e);let C=h();return k(C.onSearchChange(a))}),s(),m(6,bn,3,3,"button",11),s()()()}if(t&2){let e=h();i(3),_("placeholder",l(5,4,"form.search"))("ngModel",e.searchQuery())("ngModelOptions",We(6,Cn)),i(3),u(e.searchQuery()?6:-1)}}function Sn(t,c){t&1&&p(0,"app-spinner")}function yn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function In(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),s(),o(4,"div",23),p(5,"input",24),r(6,"translate"),m(7,yn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),g(l(3,7,"settings.name")),i(3),W("is-invalid",e.hbNameIsInvalid()),_("formControl",e.hbNameFormControl),b("aria-label",l(6,9,"settings.name")),i(2),u(e.hbNameIsSaving()?7:-1)}}function En(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),s(),o(4,"button",27),r(5,"translate"),T("click",function(){w(e);let a=h(4);return k(a.openBackupModal())}),p(6,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),g(l(3,3,"backup.title_backup")),i(2),b("aria-label",l(5,5,"backup.title_backup")))}function wn(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),s(),o(4,"button",27),r(5,"translate"),T("click",function(){w(e);let a=h(4);return k(a.openConfigBackup())}),p(6,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),g(l(3,3,"config.restore.title")),i(2),b("aria-label",l(5,5,"config.restore.title")))}function kn(t,c){t&1&&(o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),s(),o(4,"a",29),r(5,"translate"),p(6,"i",28),s()()),t&2&&(_("@smoothHide",void 0),i(2),g(l(3,3,"menu.tooltip_user_accounts")),i(2),b("aria-label",l(5,5,"menu.tooltip_user_accounts")))}function Tn(t,c){if(t&1&&(o(0,"ul",20),m(1,In,8,11,"li",21),m(2,En,7,7,"li",22),m(3,wn,7,7,"li",22),m(4,kn,7,7,"li",22),s()),t&2){let e=h(3);i(),u(e.isItemHidden("setting-name")?-1:1),i(),u(e.isItemHidden("setting-backup")?-1:2),i(),u(e.isItemHidden("setting-restore")?-1:3),i(),u(e.isItemHidden("setting-users")?-1:4)}}function Bn(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("general"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,Tn,5,4,"ul",20),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().general?"true":"false")("aria-controls","fieldsGeneral"),i(2),D(A(8,ee,e.showFields().general,!e.showFields().general)),i(),f(" ",l(5,6,"settings.general.title_general")," "),i(2),u(e.showFields().general?6:-1)}}function $n(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Mn(t,c){if(t&1&&(o(0,"li",21),d(1),r(2,"translate"),o(3,"div",23)(4,"select",31)(5,"option",32),d(6),r(7,"translate"),s(),o(8,"option",33),d(9,"Bulgarian (bg)"),s(),o(10,"option",34),d(11,"Catalan (ca)"),s(),o(12,"option",35),d(13,"Chinese - Simplified (zh-CN)"),s(),o(14,"option",36),d(15,"Chinese - Traditional (zh-TW)"),s(),o(16,"option",37),d(17,"Czech (cs)"),s(),o(18,"option",38),d(19,"Dutch (nl)"),s(),o(20,"option",39),d(21,"English (en)"),s(),o(22,"option",40),d(23,"Finnish (fi)"),s(),o(24,"option",41),d(25,"French (fr)"),s(),o(26,"option",42),d(27,"German (de)"),s(),o(28,"option",43),d(29,"Hebrew (he)"),s(),o(30,"option",44),d(31,"Hungarian (hu)"),s(),o(32,"option",45),d(33,"Indonesian (id)"),s(),o(34,"option",46),d(35,"Italian (it)"),s(),o(36,"option",47),d(37,"Japanese (ja)"),s(),o(38,"option",48),d(39,"Korean (ko)"),s(),o(40,"option",49),d(41,"Macedonian (mk)"),s(),o(42,"option",50),d(43,"Norwegian (no)"),s(),o(44,"option",51),d(45,"Polish (pl)"),s(),o(46,"option",52),d(47,"Portuguese (Brazil)"),s(),o(48,"option",53),d(49,"Portuguese (Portugal)"),s(),o(50,"option",54),d(51,"Russian (ru)"),s(),o(52,"option",55),d(53,"Slovenian (sl)"),s(),o(54,"option",56),d(55,"Spanish (es)"),s(),o(56,"option",57),d(57,"Swedish (sv)"),s(),o(58,"option",58),d(59,"Thai (th)"),s(),o(60,"option",59),d(61,"Turkish (tr)"),s(),o(62,"option",60),d(63,"Ukrainian (uk)"),s()(),m(64,$n,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(),f(" ",l(2,5,"settings.display.lang")," "),i(3),_("formControl",e.uiLangFormControl),i(2),g(l(7,7,"form.select.auto")),i(58),u(e.uiLangIsSaving()?64:-1)}}function Fn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Pn(t,c){if(t&1&&(o(0,"li",21),d(1),r(2,"translate"),o(3,"div",23)(4,"select",31)(5,"option",61),d(6),r(7,"translate"),s(),o(8,"option",62),d(9),r(10,"translate"),s(),o(11,"option",63),d(12),r(13,"translate"),s(),o(14,"option",64),d(15),r(16,"translate"),s(),o(17,"option",65),d(18),r(19,"translate"),s(),o(20,"option",66),d(21),r(22,"translate"),s(),o(23,"option",67),d(24),r(25,"translate"),s(),o(26,"option",68),d(27),r(28,"translate"),s(),o(29,"option",69),d(30),r(31,"translate"),s(),o(32,"option",70),d(33),r(34,"translate"),s(),o(35,"option",71),d(36),r(37,"translate"),s(),o(38,"option",72),d(39),r(40,"translate"),s(),o(41,"option",73),d(42),r(43,"translate"),s()(),m(44,Fn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(),f(" ",l(2,17,"settings.display.theme")," "),i(3),_("formControl",e.uiThemeFormControl),i(2),g(l(7,19,"settings.display.orange")),i(3),g(l(10,21,"settings.display.red")),i(3),g(l(13,23,"settings.display.pink")),i(3),g(l(16,25,"settings.display.purple")),i(3),g(l(19,27,"settings.display.deep_purple")),i(3),g(l(22,29,"settings.display.indigo")),i(3),g(l(25,31,"settings.display.blue")),i(3),g(l(28,33,"settings.display.bluegrey")),i(3),g(l(31,35,"settings.display.cyan")),i(3),g(l(34,37,"settings.display.green")),i(3),g(l(37,39,"settings.display.teal")),i(3),g(l(40,41,"settings.display.grey")),i(3),g(l(43,43,"settings.display.brown")),i(2),u(e.uiThemeIsSaving()?44:-1)}}function Dn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Rn(t,c){if(t&1&&(o(0,"li",21),d(1),r(2,"translate"),o(3,"div",23)(4,"select",31)(5,"option",32),d(6),r(7,"translate"),s(),o(8,"option",74),d(9),r(10,"translate"),s(),o(11,"option",75),d(12),r(13,"translate"),s()(),m(14,Dn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(),f(" ",l(2,7,"settings.display.lighting_mode")," "),i(3),_("formControl",e.uiLightFormControl),i(2),g(l(7,9,"form.select.auto")),i(3),g(l(10,11,"settings.display.light")),i(3),g(l(13,13,"settings.display.dark")),i(2),u(e.uiLightIsSaving()?14:-1)}}function An(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Vn(t,c){if(t&1&&(o(0,"li",21),d(1),r(2,"translate"),o(3,"div",23)(4,"select",31)(5,"option",76),d(6),r(7,"translate"),s(),o(8,"option",77),d(9),r(10,"translate"),s()(),m(11,An,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(),f(" ",l(2,6,"settings.display.menu_mode")," "),i(3),_("formControl",e.uiMenuFormControl),i(2),g(l(7,8,"settings.display.menu_default")),i(3),g(l(10,10,"settings.display.menu_freeze")),i(2),u(e.uiMenuIsSaving()?11:-1)}}function Nn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Hn(t,c){if(t&1&&(o(0,"li",21),d(1),r(2,"translate"),o(3,"div",23)(4,"select",31)(5,"option",78),d(6),r(7,"translate"),s(),o(8,"option",79),d(9),r(10,"translate"),s()(),m(11,Nn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(),f(" ",l(2,6,"settings.display.temp_units")," "),i(3),_("formControl",e.uiTempFormControl),i(2),g(l(7,8,"settings.display.temp_units.c")),i(3),g(l(10,10,"settings.display.temp_units.f")),i(2),u(e.uiTempIsSaving()?11:-1)}}function Ln(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function On(t,c){if(t&1&&(o(0,"li",22),d(1),r(2,"translate"),o(3,"div",80)(4,"div",81),p(5,"input",82),r(6,"translate"),p(7,"label",83),s(),m(8,Ln,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(),f(" ",l(2,5,"settings.display.show_betas")," "),i(4),_("formControl",e.uiAlwaysShowBetasFormControl),b("aria-label",l(6,7,"settings.display.show_betas")),i(3),u(e.uiAlwaysShowBetasIsSaving()?8:-1)}}function zn(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),s(),o(4,"button",27),r(5,"translate"),T("click",function(){w(e);let a=h(4);return k(a.openWallpaperModal())}),p(6,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),g(l(3,3,"settings.display.wallpaper")),i(2),b("aria-label",l(5,5,"settings.display.wallpaper")))}function Un(t,c){if(t&1&&(o(0,"ul",30),m(1,Mn,65,9,"li",21),m(2,Pn,45,45,"li",21),m(3,Rn,15,15,"li",21),m(4,Vn,12,12,"li",21),m(5,Hn,12,12,"li",21),m(6,On,9,9,"li",22),m(7,zn,7,7,"li",22),s()),t&2){let e=h(3);i(),u(e.isItemHidden("setting-lang")?-1:1),i(),u(e.isItemHidden("setting-theme")?-1:2),i(),u(e.isItemHidden("setting-lighting")?-1:3),i(),u(e.isItemHidden("setting-menu")?-1:4),i(),u(e.isItemHidden("setting-temp")?-1:5),i(),u(e.isItemHidden("setting-betas")?-1:6),i(),u(e.isItemHidden("setting-wallpaper")?-1:7)}}function Wn(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("display"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,Un,8,7,"ul",30),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().display?"true":"false")("aria-controls","fieldsDisplay"),i(2),D(A(8,ee,e.showFields().display,!e.showFields().display)),i(),f(" ",l(5,6,"settings.general.title_display")," "),i(2),u(e.showFields().display?6:-1)}}function jn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Kn(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),o(4,"code"),d(5,"-D"),s(),p(6,"br"),o(7,"small",85),d(8),r(9,"translate"),s()(),o(10,"div",80)(11,"div",81),p(12,"input",86),r(13,"translate"),p(14,"label",87),s(),m(15,jn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.startup.debug")," "),i(6),g(l(9,8,e.debugFieldDesc)),i(4),_("formControl",e.hbDebugFormControl),b("aria-label",l(13,10,"settings.startup.debug")),i(3),u(e.hbDebugIsSaving()?15:-1)}}function Gn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Qn(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),o(4,"code"),d(5,"-K"),s(),p(6,"br"),o(7,"small",85),d(8),r(9,"translate"),s()(),o(10,"div",80)(11,"div",81),p(12,"input",88),r(13,"translate"),p(14,"label",89),s(),m(15,Gn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.startup.keep_accessories")," "),i(6),g(l(9,8,"settings.startup.keep_accessories_desc")),i(4),_("formControl",e.hbKeepFormControl),b("aria-label",l(13,10,"settings.startup.keep_accessories")),i(3),u(e.hbKeepIsSaving()?15:-1)}}function qn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Jn(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),o(4,"code"),d(5,"-I"),s(),p(6,"br"),o(7,"small",85),d(8),r(9,"translate"),s()(),o(10,"div",80)(11,"div",81),p(12,"input",90),r(13,"translate"),p(14,"label",91),s(),m(15,qn,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.startup.insecure")," "),i(6),g(l(9,8,"settings.startup.insecure_desc")),i(4),_("formControl",e.hbInsecureFormControl),b("aria-label",l(13,10,"settings.startup.insecure")),i(3),u(e.hbInsecureIsSaving()?15:-1)}}function Yn(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"button",27),r(9,"translate"),T("click",function(){w(e);let a=h(4);return k(a.accessoryUiControl())}),p(10,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(3,4,"settings.security.ui_control")),i(4),g(l(7,6,"settings.security.ui_control_desc")),i(2),b("aria-label",l(9,8,"settings.security.ui_control")))}function Xn(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Zn(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),o(4,"span",92),d(5),r(6,"translate"),s(),p(7,"br"),o(8,"small",85),p(9,"span",93),r(10,"translate"),d(11),r(12,"translate"),s()(),o(13,"div",94)(14,"div",95),p(15,"input",96),r(16,"translate"),m(17,Xn,1,1,"i",25),s()()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,12,"settings.startup.scheduled_restart")," "),i(3),g(l(6,14,"common.labels.beta")),i(4),_("innerHtml",q(10,16,"settings.startup.scheduled_restart_desc",X(23,Re,e.linkCron)),te),i(2),f(" ",l(12,19,"settings.startup.scheduled_restart_desc_2")," "),i(4),se("letter-spacing","0.15em")("text-align","center"),_("formControl",e.scheduledRestartCronFormControl),b("aria-label",l(16,21,"settings.startup.scheduled_restart")),i(2),u(e.scheduledRestartCronIsSaving()?17:-1)}}function ea(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function ta(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",80)(9,"div",81),p(10,"input",97),r(11,"translate"),p(12,"label",98),s(),m(13,ea,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.startup.metrics")),i(4),g(l(7,8,"settings.startup.metrics_desc")),i(4),_("formControl",e.uiMetricsFormControl),b("aria-label",l(11,10,"settings.startup.metrics")),i(3),u(e.uiMetricsIsSaving()?13:-1)}}function ia(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function na(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",99),r(10,"translate"),m(11,ia,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.network.hb_package")),i(4),g(l(7,8,"settings.network.hb_package_desc")),i(3),_("formControl",e.hbPackageFormControl),b("aria-label",l(10,10,"settings.network.hb_package")),i(2),u(e.hbPackageIsSaving()?11:-1)}}function aa(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function oa(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function sa(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",101),p(9,"input",102),r(10,"translate"),m(11,oa,1,1,"i",25),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.linux.restart")),i(4),g(l(7,8,"settings.linux.restart_desc")),i(3),_("formControl",e.hbLinuxRestartFormControl),b("aria-label",l(10,10,"settings.linux.restart")),i(2),u(e.hbLinuxRestartIsSaving()?11:-1)}}function ra(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function la(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",103),r(10,"translate"),m(11,ra,1,1,"i",25),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.linux.temp")),i(4),g(l(7,8,"settings.linux.temp_desc")),i(3),_("formControl",e.uiTempFileFormControl),b("aria-label",l(10,10,"settings.linux.temp")),i(2),u(e.uiTempFileIsSaving()?11:-1)}}function da(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",100),r(10,"translate"),m(11,aa,1,1,"i",25),s()(),m(12,sa,12,12,"li",21),m(13,la,12,12,"li",21)),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.linux.shutdown")),i(4),g(l(7,10,"settings.linux.shutdown_desc")),i(3),_("formControl",e.hbLinuxShutdownFormControl),b("aria-label",l(10,12,"settings.linux.shutdown")),i(2),u(e.hbLinuxShutdownIsSaving()?11:-1),i(),u(e.isItemHidden("setting-linux-restart")?-1:12),i(),u(e.runningOnRaspberryPi?13:-1)}}function ca(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function pa(t,c){if(t&1&&(o(0,"li",21)(1,"span")(2,"span",104),d(3,"DEBUG"),s(),p(4,"br")(5,"small",105),r(6,"translate"),s(),o(7,"div",23),p(8,"input",106),m(9,ca,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(5),_("innerHTML",q(6,4,"settings.service.debug_tooltip",X(7,Re,e.linkDebug)),te),i(3),_("formControl",e.hbEnvDebugFormControl),i(),u(e.hbEnvDebugIsSaving()?9:-1)}}function ma(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function ua(t,c){if(t&1&&(o(0,"li",21)(1,"span")(2,"span",104),d(3,"NODE_OPTIONS"),s(),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",107),m(10,ma,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(6),g(l(7,4,"settings.service.node_tooltip")),i(3),_("formControl",e.hbEnvNodeFormControl),i(),u(e.hbEnvNodeIsSaving()?10:-1)}}function _a(t,c){t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"a",108),r(9,"translate"),p(10,"i",28),s()()),t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(3,4,"menu.docker.startup_script")),i(4),g(l(7,6,"platform.docker.script_help")),i(2),b("aria-label",l(9,8,"menu.docker.startup_script")))}function ha(t,c){if(t&1&&(o(0,"ul",84),m(1,Kn,16,12,"li",22),m(2,Qn,16,12,"li",22),m(3,Jn,16,12,"li",22),m(4,Yn,11,10,"li",22),m(5,Zn,18,25,"li",21),m(6,ta,14,12,"li",22),m(7,na,12,12,"li",21),m(8,da,14,14),m(9,pa,10,9,"li",21),m(10,ua,11,6,"li",21),m(11,_a,11,10,"li",22),s()),t&2){let e=h(3);i(),u(e.isItemHidden("setting-debug")?-1:1),i(),u(e.isItemHidden("setting-keep")?-1:2),i(),u(e.isItemHidden("setting-insecure")?-1:3),i(),u(!e.isItemHidden("setting-security-control")&&e.hbInsecureFormControl.value?4:-1),i(),u(e.isItemHidden("setting-scheduled-restart")?-1:5),i(),u(e.isItemHidden("setting-metrics-startup")?-1:6),i(),u(e.isItemHidden("setting-package-path")?-1:7),i(),u(e.platform==="linux"?8:-1),i(),u(e.isItemHidden("setting-env-debug-manual")?-1:9),i(),u(e.isItemHidden("setting-env-node")?-1:10),i(),u(e.runningInDocker?11:-1)}}function ga(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("startup"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,ha,12,11,"ul",84),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().startup?"true":"false")("aria-controls","fieldsStartup"),i(2),D(A(8,ee,e.showFields().startup,!e.showFields().startup)),i(),f(" ",l(5,6,"settings.title_startup_options")," "),i(2),u(e.showFields().startup?6:-1)}}function fa(t,c){t&1&&p(0,"i",114)}function Ca(t,c){if(t&1&&(o(0,"span",113),m(1,fa,1,0,"i",114),d(2),o(3,"span",115),d(4),r(5,"translate"),s()()),t&2){let e=c.$implicit;D(A(7,vn,e.missing,!e.missing)),i(),u(e.missing?1:-1),i(),f(" ",e.iface,": "),i(2),g(e.missing?l(5,5,"settings.mdns_advertiser_not_connected"):e.ip4||e.ip6)}}function va(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),p(4,"br"),o(5,"div",110),d(6),r(7,"translate"),s(),G(8,Ca,6,10,"span",111,K),s(),o(10,"button",112),r(11,"translate"),T("click",function(){w(e);let a=h(4);return k(a.selectNetworkInterfaces())}),p(12,"i",28),s()()}if(t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,5,"settings.network.title_network_interfaces")),i(4),g(l(7,7,"settings.network.message_network_interface")),i(2),Q(e.adaptersSelected()),i(2),_("disabled",!e.adaptersAvailable().length),b("aria-label",l(11,9,"settings.network.title_network_interfaces"))}}function ba(t,c){t&1&&(o(0,"option",116),d(1),r(2,"translate"),s()),t&2&&(i(),f("Avahi (",l(2,1,"settings.mdns_advertiser_rec"),")"))}function xa(t,c){t&1&&(o(0,"option",119),d(1),r(2,"translate"),s()),t&2&&(i(),f("systemd-resolved (",l(2,1,"settings.mdns_advertiser_exp"),")"))}function Sa(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function ya(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23)(9,"select",31),r(10,"translate"),m(11,ba,3,3,"option",116),o(12,"option",117),d(13),r(14,"translate"),s(),o(15,"option",118),d(16,"Bonjour HAP"),s(),m(17,xa,3,3,"option",119),s(),m(18,Sa,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,9,"settings.mdns_advertiser")),i(4),g(l(7,11,"settings.mdns_advertiser_help")),i(3),_("formControl",e.hbMDnsFormControl),b("aria-label",l(10,13,"settings.mdns_advertiser")),i(2),u(e.showAvahiMdnsOption()?11:-1),i(2),f(" Ciao ",e.showAvahiMdnsOption()?"":"("+l(14,15,"settings.mdns_advertiser_rec")+")"," "),i(4),u(e.showResolvedMdnsOption()?17:-1),i(),u(e.hbMDnsIsSaving()?18:-1)}}function Ia(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Ea(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",120),r(10,"translate"),m(11,Ia,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.network.port_hb")),i(4),g(l(7,10,"settings.network.port_hb_desc")),i(3),W("is-invalid",e.hbPortIsInvalid()),_("formControl",e.hbPortFormControl),b("aria-label",l(10,12,"settings.network.port_hb")),i(2),u(e.hbPortIsSaving()?11:-1)}}function wa(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function ka(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",120),r(10,"translate"),m(11,wa,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.network.port_start")),i(4),g(l(7,10,"settings.network.port_start_desc")),i(3),W("is-invalid",e.hbStartPortIsInvalid()),_("formControl",e.hbStartPortFormControl),b("aria-label",l(10,12,"settings.network.port_start")),i(2),u(e.hbStartPortIsSaving()?11:-1)}}function Ta(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Ba(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",120),r(10,"translate"),m(11,Ta,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.network.port_end")),i(4),g(l(7,10,"settings.network.port_end_desc")),i(3),W("is-invalid",e.hbEndPortIsInvalid()),_("formControl",e.hbEndPortFormControl),b("aria-label",l(10,12,"settings.network.port_end")),i(2),u(e.hbEndPortIsSaving()?11:-1)}}function $a(t,c){t&1&&(p(0,"br"),o(1,"small",85),p(2,"i",123),d(3),r(4,"translate"),s()),t&2&&(i(3),f(" ",l(4,1,"settings.warning_pwa")," "))}function Ma(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Fa(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br")(5,"small",121),r(6,"translate"),m(7,$a,5,3),s(),o(8,"div",23),p(9,"input",122),r(10,"translate"),m(11,Ma,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,7,"settings.network.host")),i(3),_("innerHtml",l(6,9,"settings.network.host_desc"),te),i(2),u(e.isPwa?7:-1),i(2),_("formControl",e.uiHostFormControl),b("aria-label",l(10,11,"settings.network.host")),i(2),u(e.uiHostIsSaving()?11:-1)}}function Pa(t,c){t&1&&(p(0,"br"),o(1,"small",85),p(2,"i",123),d(3),r(4,"translate"),s()),t&2&&(i(3),f(" ",l(4,1,"settings.warning_pwa")," "))}function Da(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Ra(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s(),m(8,Pa,5,3),s(),o(9,"div",23),p(10,"input",124),r(11,"translate"),m(12,Da,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,7,"settings.network.proxy")),i(4),g(l(7,9,"settings.network.proxy_desc")),i(2),u(e.isPwa?8:-1),i(2),_("formControl",e.uiProxyHostFormControl),b("aria-label",l(11,11,"settings.network.proxy")),i(2),u(e.uiProxyHostIsSaving()?12:-1)}}function Aa(t,c){t&1&&(p(0,"br"),o(1,"small",85),p(2,"i",123),d(3),r(4,"translate"),s()),t&2&&(i(3),f(" ",l(4,1,"settings.warning_pwa")," "))}function Va(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Na(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s(),m(8,Aa,5,3),s(),o(9,"div",23),p(10,"input",125),r(11,"translate"),m(12,Va,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,9,"settings.network.port_ui")),i(4),g(l(7,11,"settings.network.port_ui_desc")),i(2),u(e.isPwa?8:-1),i(2),W("is-invalid",e.uiPortIsInvalid()),_("formControl",e.uiPortFormControl),b("aria-label",l(11,13,"settings.network.port_ui")),i(2),u(e.uiPortIsSaving()?12:-1)}}function Ha(t,c){t&1&&(p(0,"br"),o(1,"small",85),p(2,"i",123)(3,"span",93),r(4,"translate"),s()),t&2&&(i(3),_("innerHtml",l(4,1,"settings.warning_webroot"),te))}function La(t,c){t&1&&(p(0,"br"),o(1,"small",85),p(2,"i",123)(3,"span",93),r(4,"translate"),s()),t&2&&(i(3),_("innerHtml",l(4,1,"settings.warning_pwa"),te))}function Oa(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function za(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),o(4,"span",92),d(5),r(6,"translate"),s(),p(7,"br")(8,"small",121),r(9,"translate"),m(10,Ha,5,3)(11,La,5,3),s(),o(12,"div",23),p(13,"input",126),r(14,"translate"),m(15,Oa,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.network.webroot")," "),i(3),g(l(6,10,"common.labels.beta")),i(3),_("innerHtml",l(9,12,"settings.network.webroot_desc"),te),i(2),u(e.webrootSettingDisabledAccess?10:e.isPwa?11:-1),i(3),_("formControl",e.uiWebrootFormControl),b("aria-label",l(14,14,"settings.network.webroot")),i(2),u(e.uiWebrootIsSaving()?15:-1)}}function Ua(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Wa(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),o(4,"span",92),d(5),r(6,"translate"),s(),p(7,"br"),o(8,"small",85),d(9),r(10,"translate"),s()(),o(11,"div",80)(12,"div",81),p(13,"input",127),r(14,"translate"),p(15,"label",128),s(),m(16,Ua,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,7,"settings.network.mdns_advertise")," "),i(3),g(l(6,9,"common.labels.beta")),i(4),g(l(10,11,"settings.network.mdns_advertise_help")),i(4),_("formControl",e.enableMdnsAdvertiseFormControl),b("aria-label",l(14,13,"settings.network.mdns_advertise")),i(3),u(e.enableMdnsAdvertiseIsSaving()?16:-1)}}function ja(t,c){if(t&1&&(o(0,"ul",109),m(1,va,13,11,"li",22),m(2,ya,19,17,"li",21),m(3,Ea,12,14,"li",21),m(4,ka,12,14,"li",21),m(5,Ba,12,14,"li",21),m(6,Fa,12,13,"li",21),m(7,Ra,13,13,"li",21),m(8,Na,13,15,"li",21),m(9,za,16,16,"li",21),m(10,Wa,17,15,"li",22),s()),t&2){let e=h(3);i(),u(e.isItemHidden("setting-interfaces")?-1:1),i(),u(e.isItemHidden("setting-mdns")?-1:2),i(),u(e.isItemHidden("setting-port-hb")?-1:3),i(),u(e.isItemHidden("setting-port-range")?-1:4),i(),u(e.isItemHidden("setting-port-end")?-1:5),i(),u(e.isItemHidden("setting-network-host")?-1:6),i(),u(e.isItemHidden("setting-network-proxy")?-1:7),i(),u(e.isItemHidden("setting-ui-port-network")?-1:8),i(),u(e.isItemHidden("setting-webroot-network")?-1:9),i(),u(e.isItemHidden("setting-mdns-advertise")?-1:10)}}function Ka(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("network"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,ja,11,10,"ul",109),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().network?"true":"false")("aria-controls","fieldsNetwork"),i(2),D(A(8,ee,e.showFields().network,!e.showFields().network)),i(),f(" ",l(5,6,"settings.network.title_network")," "),i(2),u(e.showFields().network?6:-1)}}function Ga(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Qa(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),o(4,"span",92),d(5),r(6,"translate"),s(),p(7,"br"),o(8,"small",85),d(9),r(10,"translate"),s()(),o(11,"div",80)(12,"div",81),p(13,"input",131),r(14,"translate"),p(15,"label",132),s(),m(16,Ga,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,7,"common.labels.enabled")," "),i(3),g(l(6,9,"common.labels.beta")),i(4),g(l(10,11,"settings.matter.enabled_desc")),i(4),_("formControl",e.matterEnabledFormControl),b("aria-label",l(14,13,"common.labels.enabled")),i(3),u(e.matterEnabledIsSaving()?16:-1)}}function qa(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Ja(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",133),r(10,"translate"),m(11,qa,1,1,"i",25),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.matter.port")),i(4),g(l(7,10,"settings.matter.port_desc")),i(3),W("is-invalid",e.matterPortIsInvalid()),_("formControl",e.matterPortFormControl),b("aria-label",l(10,12,"settings.matter.port")),i(2),u(e.matterPortIsSaving()?11:-1)}}function Ya(t,c){if(t&1&&m(0,Ja,12,14,"li",21),t&2){let e=h(4);u(e.isItemHidden("setting-matter-port")?-1:0)}}function Xa(t,c){if(t&1&&(o(0,"p",129),d(1),r(2,"translate"),s(),o(3,"ul",130),m(4,Qa,17,15,"li",22),m(5,Ya,1,1),s()),t&2){let e=h(3);i(),g(l(2,3,"settings.matter.desc")),i(3),u(e.isItemHidden("setting-matter-enabled")?-1:4),i(),u(e.matterEnabledFormControl.value?5:-1)}}function Za(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("matter"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,Xa,6,5),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().matter?"true":"false")("aria-controls","fieldsMatter"),i(2),D(A(8,ee,e.showFields().matter,!e.showFields().matter)),i(),f(" ",l(5,6,"settings.matter.title")," "),i(2),u(e.showFields().matter?6:-1)}}function eo(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function to(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",135),r(10,"translate"),m(11,eo,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.terminal.log_max")),i(4),g(l(7,10,"settings.terminal.log_max_desc")),i(3),W("is-invalid",e.hbLogSizeIsInvalid()),_("formControl",e.hbLogSizeFormControl),b("aria-label",l(10,12,"settings.terminal.log_max")),i(2),u(e.hbLogSizeIsSaving()?11:-1)}}function io(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function no(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",136),r(10,"translate"),m(11,io,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.terminal.log_truncate")),i(4),g(l(7,10,"settings.terminal.log_truncate_desc")),i(3),W("is-invalid",e.hbLogTruncateIsInvalid()),_("formControl",e.hbLogTruncateFormControl),b("aria-label",l(10,12,"settings.terminal.log_truncate")),i(2),u(e.hbLogTruncateIsSaving()?11:-1)}}function ao(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function oo(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",80)(9,"div",81),p(10,"input",137),r(11,"translate"),p(12,"label",138),s(),m(13,ao,1,1,"i",25),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.terminal.persistence")),i(4),g(l(7,8,"settings.terminal.persistence_help")),i(4),_("formControl",e.uiTerminalPersistenceFormControl),b("aria-label",l(11,10,"settings.terminal.persistence")),i(3),u(e.uiTerminalPersistenceIsSaving()?13:-1)}}function so(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function ro(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",80)(9,"div",81),p(10,"input",139),r(11,"translate"),p(12,"label",140),s(),m(13,so,1,1,"i",25),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.terminal.warning")),i(4),g(l(7,8,"settings.terminal.warning_help")),i(4),_("formControl",e.uiTerminalHideWarningFormControl),b("aria-label",l(11,10,"settings.terminal.warning")),i(3),u(e.uiTerminalHideWarningIsSaving()?13:-1)}}function lo(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function co(t,c){if(t&1&&(o(0,"li",21)(1,"div",141)(2,"span"),d(3),r(4,"translate"),s(),o(5,"div",142),d(6),r(7,"translate"),s()(),o(8,"div",23),p(9,"input",143),r(10,"translate"),m(11,lo,1,1,"i",25),s()()),t&2){let e=h(6);_("@smoothHide",void 0),i(3),g(l(4,8,"settings.terminal.buffer_size")),i(3),g(l(7,10,"settings.terminal.buffer_size_help")),i(3),W("is-invalid",e.uiTerminalBufferSizeIsInvalid()),_("formControl",e.uiTerminalBufferSizeFormControl),b("aria-label",l(10,12,"settings.terminal.buffer_size")),i(2),u(e.uiTerminalBufferSizeIsSaving()?11:-1)}}function po(t,c){if(t&1&&m(0,co,12,14,"li",21),t&2){let e=h(5);u(e.isItemHidden("setting-terminal-buffer")?-1:0)}}function mo(t,c){if(t&1&&(m(0,oo,14,12,"li",22),m(1,ro,14,12,"li",22),m(2,po,1,1)),t&2){let e=h(4);u(e.isItemHidden("setting-terminal-persistence")?-1:0),i(),u(e.uiTerminalPersistenceFormControl.value?-1:1),i(),u(e.uiTerminalPersistenceFormControl.value?2:-1)}}function uo(t,c){if(t&1&&(o(0,"ul",134),m(1,to,12,14,"li",21),m(2,no,12,14,"li",21),m(3,mo,3,3),s()),t&2){let e=h(3);i(),u(e.isItemHidden("setting-terminal-log-max")?-1:1),i(),u(e.hbLogSizeFormControl.value>0?2:-1),i(),u(e.enableTerminalAccess?3:-1)}}function _o(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("terminal"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,uo,4,3,"ul",134),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().terminal?"true":"false")("aria-controls","fieldsTerminal"),i(2),D(A(8,ee,e.showFields().terminal,!e.showFields().terminal)),i(),f(" ",l(5,6,"settings.network.title_terminal")," "),i(2),u(e.showFields().terminal?6:-1)}}function ho(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function go(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",80)(9,"div",81),p(10,"input",145),r(11,"translate"),p(12,"label",146),s(),m(13,ho,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.security.auth")),i(4),g(l(7,8,"settings.security.auth_desc")),i(4),_("formControl",e.uiAuthFormControl),b("aria-label",l(11,10,"settings.security.auth")),i(3),u(e.uiAuthIsSaving()?13:-1)}}function fo(t,c){t&1&&p(0,"i",149),t&2&&_("@fadeInOut",void 0)}function Co(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),o(4,"span",92),d(5),r(6,"translate"),s(),p(7,"br"),o(8,"small",85),d(9),r(10,"translate"),s()(),o(11,"div",80)(12,"div",81),p(13,"input",147),r(14,"translate"),p(15,"label",148),s(),m(16,fo,1,1,"i",149),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,7,"settings.startup.session_inactivity_based")," "),i(3),g(l(6,9,"common.labels.beta")),i(4),g(l(10,11,"settings.startup.session_inactivity_based_desc")),i(4),_("formControl",e.uiSessionTimeoutInactivityBasedFormControl),b("aria-label",l(14,13,"settings.startup.session_inactivity_based")),i(3),u(e.uiSessionTimeoutInactivityBasedIsSaving()?16:-1)}}function vo(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function bo(t,c){if(t&1&&(o(0,"li",21)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",23)(9,"div",150)(10,"div",80),p(11,"input",151),r(12,"translate"),o(13,"label",152),d(14),r(15,"translate"),s()(),o(16,"div",80),p(17,"input",153),r(18,"translate"),o(19,"label",152),d(20),r(21,"translate"),s()(),o(22,"div",80),p(23,"input",154),r(24,"translate"),o(25,"label",152),d(26),r(27,"translate"),s()()(),m(28,vo,1,1,"i",25),s()()),t&2){let e=h(5);_("@smoothHide",void 0),i(2),f(" ",l(3,19,"settings.startup.session")),i(4),g(l(7,21,"settings.startup.session_desc")),i(5),W("is-invalid",e.uiSessionTimeoutIsInvalid()),_("formControl",e.uiSessionTimeoutDaysFormControl),b("aria-label",l(12,23,"settings.startup.session_days")),i(3),g(l(15,25,"settings.startup.session_days")),i(3),W("is-invalid",e.uiSessionTimeoutIsInvalid()),_("formControl",e.uiSessionTimeoutHoursFormControl),b("aria-label",l(18,27,"settings.startup.session_hours")),i(3),g(l(21,29,"settings.startup.session_hours")),i(3),W("is-invalid",e.uiSessionTimeoutIsInvalid()),_("formControl",e.uiSessionTimeoutMinutesFormControl),b("aria-label",l(24,31,"settings.startup.session_minutes")),i(3),g(l(27,33,"settings.startup.session_minutes")),i(2),u(e.uiSessionTimeoutIsSaving()?28:-1)}}function xo(t,c){if(t&1&&(m(0,Co,17,15,"li",22),m(1,bo,29,35,"li",21)),t&2){let e=h(4);u(e.isItemHidden("setting-session-inactivity")?-1:0),i(),u(e.isItemHidden("setting-security-session")?-1:1)}}function So(t,c){if(t&1&&(o(0,"small",85),p(1,"span",93),r(2,"translate"),s()),t&2){let e=h(5);i(),_("innerHtml",q(2,1,"settings.security.https_raspbian",X(4,Re,e.linkRaspbianSsl)),te)}}function yo(t,c){t&1&&(p(0,"br"),o(1,"small",85),p(2,"i",123),d(3),r(4,"translate"),s()),t&2&&(i(3),f(" ",l(4,1,"settings.warning_pwa")," "))}function Io(t,c){if(t&1&&(o(0,"small",85),d(1),r(2,"translate"),s(),m(3,yo,5,3)),t&2){let e=h(5);i(),g(l(2,2,"settings.security.https_desc")),i(2),u(e.isPwa?3:-1)}}function Eo(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),o(4,"span",92),d(5),r(6,"translate"),s(),p(7,"br"),o(8,"small",85),d(9),r(10,"translate"),s(),m(11,So,3,6,"small",85)(12,Io,4,4),s(),o(13,"div",80)(14,"div",81)(15,"input",155),r(16,"translate"),T("click",function(a){w(e);let C=h(4);return!C.isPwa&&!C.runningOnRaspbianImage&&C.openSslModal(),k(a.preventDefault())}),s(),p(17,"label",156),s()()()}if(t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,8,"settings.security.https_enable")," "),i(3),g(l(6,10,"common.labels.beta")),i(4),g(l(10,12,"settings.security.https_enable_desc")),i(2),u(e.runningOnRaspbianImage?11:12),i(4),_("checked",e.runningOnRaspbianImage||e.uiSslTypeFormControl.value!=="off")("disabled",e.isPwa||e.runningOnRaspbianImage),b("aria-label",l(16,14,"settings.security.https_enable"))}}function wo(t,c){if(t&1&&(o(0,"ul",144),m(1,go,14,12,"li",22),m(2,xo,2,2),m(3,Eo,18,16,"li",22),s()),t&2){let e=h(3);i(),u(e.isItemHidden("setting-security-auth")?-1:1),i(),u(e.uiAuthFormControl.value?2:-1),i(),u(e.isItemHidden("setting-security-https")?-1:3)}}function ko(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("security"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,wo,4,3,"ul",144),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().security?"true":"false")("aria-controls","fieldsSecurity"),i(2),D(A(8,ee,e.showFields().security,!e.showFields().security)),i(),f(" ",l(5,6,"settings.network.title_security")," "),i(2),u(e.showFields().security?6:-1)}}function To(t,c){t&1&&p(0,"i",25),t&2&&_("@fadeInOut",void 0)}function Bo(t,c){if(t&1&&(o(0,"li",22)(1,"span"),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"div",80)(9,"div",81),p(10,"input",158),r(11,"translate"),p(12,"label",159),s(),m(13,To,1,1,"i",25),s()()),t&2){let e=h(4);_("@smoothHide",void 0),i(2),f(" ",l(3,6,"settings.accessory.debug")),i(4),g(l(7,8,"settings.accessory.debug_desc")),i(4),_("formControl",e.uiAccDebugFormControl),b("aria-label",l(11,10,"settings.accessory.debug")),i(3),u(e.uiAccDebugIsSaving()?13:-1)}}function $o(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"button",27),r(9,"translate"),T("click",function(){w(e);let a=h(4);return k(a.removeSingleCachedAccessories())}),p(10,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(3,4,"reset.accessory_ind.title")),i(4),g(l(7,6,"reset.accessory_ind.desc")),i(2),b("aria-label",l(9,8,"reset.accessory_ind.title")))}function Mo(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"button",27),r(9,"translate"),T("click",function(){w(e);let a=h(4);return k(a.removeBridgeAccessories())}),p(10,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(3,4,"reset.bridge_accessories.title")),i(4),g(l(7,6,"reset.bridge_accessories.desc")),i(2),b("aria-label",l(9,8,"reset.accessory_all.title")))}function Fo(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"button",27),r(9,"translate"),T("click",function(){w(e);let a=h(4);return k(a.removeAllCachedAccessories())}),p(10,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(3,4,"reset.accessory_all.title")),i(4),g(l(7,6,"reset.accessory_all.desc")),i(2),b("aria-label",l(9,8,"reset.accessory_all.title")))}function Po(t,c){if(t&1&&(o(0,"p",129),d(1),r(2,"translate"),s(),o(3,"ul",157),m(4,Bo,14,12,"li",22),m(5,$o,11,10,"li",22),m(6,Mo,11,10,"li",22),m(7,Fo,11,10,"li",22),s()),t&2){let e=h(3);i(),g(l(2,5,"settings.cache.desc")),i(3),u(e.isItemHidden("setting-accessory-debug")?-1:4),i(),u(e.isItemHidden("setting-reset-accessory-ind")?-1:5),i(),u(e.isItemHidden("setting-reset-bridge-accessories")?-1:6),i(),u(e.isItemHidden("setting-reset-accessory-all")?-1:7)}}function Do(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("cache"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,Po,8,7),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().cache?"true":"false")("aria-controls","fieldsCache"),i(2),D(A(8,ee,e.showFields().cache,!e.showFields().cache)),i(),f(" ",l(5,6,"menu.label_accessories")," "),i(2),u(e.showFields().cache?6:-1)}}function Ro(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),p(4,"br"),o(5,"small",85),d(6),r(7,"translate"),s()(),o(8,"button",27),r(9,"translate"),T("click",function(){w(e);let a=h(4);return k(a.unpairAccessory())}),p(10,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(3,4,"reset.bridge_ind.title")),i(4),g(l(7,6,"reset.bridge_ind.desc")),i(2),b("aria-label",l(9,8,"reset.bridge_ind.title")))}function Ao(t,c){if(t&1){let e=B();o(0,"li",22)(1,"span",26),d(2),r(3,"translate"),r(4,"titlecase"),p(5,"br"),o(6,"small",85),d(7),r(8,"translate"),s()(),o(9,"button",27),r(10,"translate"),T("click",function(){w(e);let a=h(4);return k(a.resetHomebridgeState())}),p(11,"i",28),s()()}t&2&&(_("@smoothHide",void 0),i(2),f(" ",l(4,6,l(3,4,"reset.bridge_all.title"))),i(5),g(l(8,8,"reset.bridge_all.desc")),i(2),b("aria-label",l(10,10,"reset.bridge_all.title")))}function Vo(t,c){if(t&1&&(o(0,"p",129),d(1),r(2,"translate"),s(),o(3,"ul",160),m(4,Ro,11,10,"li",22),m(5,Ao,12,12,"li",22),s()),t&2){let e=h(3);i(),g(l(2,3,"reset.bridges.desc")),i(3),u(e.isItemHidden("setting-reset-bridge-ind")?-1:4),i(),u(e.isItemHidden("setting-reset-bridge-all")?-1:5)}}function No(t,c){if(t&1){let e=B();o(0,"div",15)(1,"div",17),T("click",function(){w(e);let a=h(2);return k(a.toggleSection("reset"))}),o(2,"h5",18),p(3,"i",19),d(4),r(5,"translate"),s()(),m(6,Vo,6,5),s()}if(t&2){let e=h(2);i(),b("aria-expanded",e.showFields().reset?"true":"false")("aria-controls","fieldsReset"),i(2),D(A(8,ee,e.showFields().reset,!e.showFields().reset)),i(),f(" ",l(5,6,"reset.bridges.title")," "),i(2),u(e.showFields().reset?6:-1)}}function Ho(t,c){if(t&1&&(o(0,"div",14),m(1,Bn,7,11,"div",15),m(2,Wn,7,11,"div",15),m(3,ga,7,11,"div",15),m(4,Ka,7,11,"div",15),m(5,Za,7,11,"div",15),m(6,_o,7,11,"div",15),m(7,ko,7,11,"div",15),m(8,Do,7,11,"div",15),m(9,No,7,11,"div",15),p(10,"div",16),s()),t&2){let e=h();W("theme-transitioning",e.isThemeTransitioning()),i(),u(e.isSectionVisible("general")?1:-1),i(),u(e.isSectionVisible("display")?2:-1),i(),u(e.isSectionVisible("startup")?3:-1),i(),u(e.isSectionVisible("network")?4:-1),i(),u(e.isMatterSupported&&e.isSectionVisible("matter")?5:-1),i(),u(e.isSectionVisible("terminal")?6:-1),i(),u(e.isSectionVisible("security")?7:-1),i(),u(e.isSectionVisible("cache")?8:-1),i(),u(e.isSectionVisible("reset")?9:-1)}}var yl=(()=>{class t{destroyRef=I(le);injector=I(Se);cdr=I(Ke);$api=I(z);$modal=I(fe);$notification=I(ut);$router=I(J);$settings=I(Y);$terminal=I(ft);$toastr=I(O);$translate=I(L);searchInput=ne("searchInput");showSearchBar=v(!1);searchQuery=v("");isThemeTransitioning=v(!1);showFields=v({general:!0,display:!0,startup:!0,network:!0,matter:!0,security:!0,terminal:!0,reset:!0,cache:!0});hiddenItems=v({});loading=v(!0);debugFieldDesc="settings.startup.debug_desc_v1";showAvahiMdnsOption=v(!1);showResolvedMdnsOption=v(!1);adaptersAvailable=v([]);adaptersSelected=v([]);hbNameIsInvalid=v(!1);hbNameIsSaving=v(!1);hbNameFormControl=new M("");uiLangIsSaving=v(!1);uiLangFormControl=new M("");uiThemeIsSaving=v(!1);uiThemeFormControl=new M("");uiLightIsSaving=v(!1);uiLightFormControl=new M("");uiMenuIsSaving=v(!1);uiMenuFormControl=new M("");uiTempIsSaving=v(!1);uiTempFormControl=new M("");uiAlwaysShowBetasIsSaving=v(!1);uiAlwaysShowBetasFormControl=new M(!1);uiTerminalPersistenceIsSaving=v(!1);uiTerminalPersistenceFormControl=new M(!1);uiTerminalHideWarningIsSaving=v(!1);uiTerminalHideWarningFormControl=new M(!1);uiTerminalBufferSizeIsSaving=v(!1);uiTerminalBufferSizeIsInvalid=v(!1);uiTerminalBufferSizeFormControl=new M(globalThis.terminal.bufferSize);hbDebugIsSaving=v(!1);hbDebugFormControl=new M(!1);hbInsecureIsSaving=v(!1);hbInsecureFormControl=new M(!1);hbKeepIsSaving=v(!1);hbKeepFormControl=new M(!1);hbEnvDebugIsSaving=v(!1);hbEnvDebugFormControl=new M("");hbEnvNodeIsSaving=v(!1);hbEnvNodeFormControl=new M("");hbLogSizeIsInvalid=v(!1);hbLogSizeIsSaving=v(!1);hbLogSizeFormControl=new M(-1);hbLogTruncateIsInvalid=v(!1);hbLogTruncateIsSaving=v(!1);hbLogTruncateFormControl=new M(0);hbMDnsIsSaving=v(!1);hbMDnsFormControl=new M("");enableMdnsAdvertiseFormControl=new M(!1);enableMdnsAdvertiseIsSaving=v(!1);hbPortIsInvalid=v(!1);hbPortIsSaving=v(!1);hbPortFormControl=new M(0);uiPortIsInvalid=v(!1);uiPortIsSaving=v(!1);uiPortFormControl=new M(0);hbStartPortIsInvalid=v(!1);hbStartPortIsSaving=v(!1);hbStartPortFormControl=new M(0);hbEndPortIsInvalid=v(!1);hbEndPortIsSaving=v(!1);hbEndPortFormControl=new M(0);uiHostIsSaving=v(!1);uiHostFormControl=new M("");uiWebrootIsSaving=v(!1);uiWebrootFormControl=new M("");uiProxyHostIsSaving=v(!1);uiProxyHostFormControl=new M("");uiAuthIsSaving=v(!1);uiAuthFormControl=new et(!0);uiSessionTimeoutIsInvalid=v(!1);uiSessionTimeoutIsSaving=v(!1);uiSessionTimeoutDaysFormControl=new M(0);uiSessionTimeoutHoursFormControl=new M(8);uiSessionTimeoutMinutesFormControl=new M(0);uiSessionTimeoutInactivityBasedIsSaving=v(!1);uiSessionTimeoutInactivityBasedFormControl=new M(!1);uiSslTypeFormControl=new M("off");uiSslKeyIsSaving=v(!1);uiSslKeyFormControl=new M("");uiSslCertIsSaving=v(!1);uiSslCertFormControl=new M("");uiSslPfxIsSaving=v(!1);uiSslPfxFormControl=new M("");uiSslPassphraseIsSaving=v(!1);uiSslPassphraseFormControl=new M("");uiSslSelfSignedHostnamesIsSaving=v(!1);uiSslSelfSignedHostnamesFormControl=new M("");hbPackageIsSaving=v(!1);hbPackageFormControl=new M("");uiMetricsIsSaving=v(!1);uiMetricsFormControl=new M(!0);uiAccDebugIsSaving=v(!1);uiAccDebugFormControl=new M(!1);uiTempFileIsSaving=v(!1);uiTempFileFormControl=new M("");hbLinuxShutdownIsSaving=v(!1);hbLinuxShutdownFormControl=new M("");hbLinuxRestartIsSaving=v(!1);hbLinuxRestartFormControl=new M("");scheduledRestartCronIsInvalid=v(!1);scheduledRestartCronIsSaving=v(!1);scheduledRestartCronFormControl=new M("");matterEnabledIsSaving=v(!1);matterEnabledFormControl=new M(!1);matterPortIsInvalid=v(!1);matterPortIsSaving=v(!1);matterPortFormControl=new M(0);matterConfigCache={};isMatterSupported=this.$settings.isFeatureEnabled("matterSupport");webrootSettingDisabledAccess=!1;isPwa=mt();runningOnRaspbianImage=this.$settings.env.runningOnRaspbianImage;platform=this.$settings.env.platform;runningOnRaspberryPi=this.$settings.env.runningOnRaspberryPi;runningInDocker=this.$settings.env.runningInDocker;enableTerminalAccess=this.$settings.env.enableTerminalAccess;restartToastIsShown=!1;linkDebug='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Debug-Common-Values" target="_blank" rel="noopener noreferrer"><i class="fa fa-external-link-alt 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="fa fa-external-link-alt primary-text"></i></a>';linkCron='<a href="https://crontab.guru/" target="_blank" rel="noopener noreferrer"><i class="fa fa-external-link-alt primary-text"></i></a>';toggleSearch(){this.showSearchBar.update(e=>!e),this.showSearchBar()?Ae(this.injector,()=>{Ne(()=>{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(),n=this.getItemsContent(),a={};Object.entries(n).forEach(([C,j])=>{j&&j.toLowerCase().includes(e)||(a[C]=!0)}),this.hiddenItems.set(a)}isItemHidden(e){let n=!!this.hiddenItems()[e];return this.searchQuery(),n}isSectionVisible(e){if(!this.searchQuery())return!0;let a={general:["setting-name","setting-backup","setting-restore","setting-users"],display:["setting-lang","setting-theme","setting-lighting","setting-menu","setting-temp","setting-betas","setting-wallpaper"],startup:["setting-debug","setting-insecure","setting-security-control","setting-keep","setting-scheduled-restart","setting-metrics-startup","setting-package-path","setting-linux-restart","setting-env-debug-manual","setting-env-node"],network:["setting-interfaces","setting-mdns","setting-port-hb","setting-port-range","setting-port-end","setting-network-host","setting-network-proxy","setting-ui-port-network","setting-webroot-network","setting-mdns-advertise"],matter:["setting-matter-enabled","setting-matter-port"],terminal:["setting-terminal-log-max","setting-terminal-persistence","setting-terminal-buffer"],security:["setting-security-auth","setting-session-inactivity","setting-security-session","setting-security-https","setting-security-cert","setting-security-pass","setting-security-selfsigned-hostnames","setting-security-control"],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"]}[e];return a?a.some(C=>!this.isItemHidden(C)):!0}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-betas":this.$translate.instant("settings.display.show_betas"),"setting-wallpaper":this.$translate.instant("settings.display.wallpaper"),"setting-debug":this.$translate.instant("settings.startup.debug"),"setting-insecure":this.$translate.instant("settings.startup.insecure"),"setting-keep":this.$translate.instant("settings.startup.keep_accessories"),"setting-scheduled-restart":this.$translate.instant("settings.startup.scheduled_restart"),"setting-metrics-startup":this.$translate.instant("settings.startup.metrics"),"setting-env-debug":this.$translate.instant("settings.startup.env_debug"),"setting-env-debug-manual":"DEBUG","setting-env-node":this.$translate.instant("settings.startup.env_node_options"),"setting-log-size":this.$translate.instant("settings.startup.log_length"),"setting-log-truncate":this.$translate.instant("settings.startup.truncate_log"),"setting-package-path":this.$translate.instant("settings.startup.homebridge_package_path"),"setting-mdns":this.$translate.instant("settings.mdns_advertiser"),"setting-interfaces":this.$translate.instant("settings.network.title_network_interfaces"),"setting-port-hb":this.$translate.instant("settings.network.port_hb"),"setting-port-bridge":this.$translate.instant("settings.network.port.bridge"),"setting-port-range":this.$translate.instant("settings.network.port.start"),"setting-port-end":this.$translate.instant("settings.network.port.end"),"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-webroot-network":this.$translate.instant("settings.network.webroot"),"setting-mdns-advertise":this.$translate.instant("settings.network.mdns_advertise"),"setting-matter-enabled":`${this.$translate.instant("settings.matter.title")} ${this.$translate.instant("common.labels.enabled")} ${this.$translate.instant("settings.matter.enabled_desc")}`,"setting-matter-port":`${this.$translate.instant("settings.matter.title")} ${this.$translate.instant("settings.matter.port")} ${this.$translate.instant("settings.matter.port_desc")}`,"setting-security-auth":this.$translate.instant("settings.security.auth"),"setting-security-session":this.$translate.instant("settings.startup.session"),"setting-security-https":this.$translate.instant("settings.security.https"),"setting-security-cert":this.$translate.instant("settings.security.cert"),"setting-security-pass":this.$translate.instant("settings.security.pass"),"setting-security-selfsigned-hostnames":this.$translate.instant("settings.security.selfsigned_hostnames"),"setting-security-control":this.$translate.instant("settings.security.ui_control"),"setting-ui-port":this.$translate.instant("settings.security.webui_port"),"setting-ui-host":this.$translate.instant("settings.security.webui_host"),"setting-ui-auth":this.$translate.instant("settings.security.webui_auth"),"setting-session-timeout":this.$translate.instant("settings.security.session_timeout"),"setting-session-inactivity":this.$translate.instant("settings.startup.session_inactivity_based"),"setting-proxy":this.$translate.instant("settings.security.webui_proxy_host"),"setting-ssl":this.$translate.instant("settings.security.ssl_key"),"setting-terminal-log-max":this.$translate.instant("settings.terminal.log_max"),"setting-terminal-persistence":this.$translate.instant("settings.terminal.persistence"),"setting-terminal-warning":this.$translate.instant("settings.terminal.hide_warning"),"setting-terminal-buffer":this.$translate.instant("settings.terminal.buffer_size"),"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"),"setting-reset-state":this.$translate.instant("settings.reset.reset_homebridge_state"),"setting-unpair":this.$translate.instant("settings.reset.unpair_bridges"),"setting-metrics":this.$translate.instant("settings.reset.enable_metrics"),"setting-accessory-control":this.$translate.instant("settings.reset.control_panel"),"setting-accessory-debug":this.$translate.instant("settings.accessory.debug"),"setting-temp-files":this.$translate.instant("settings.reset.temp_files"),"setting-linux-shutdown":this.$translate.instant("settings.reset.linux_shutdown"),"setting-linux-restart":this.$translate.instant("settings.reset.linux_restart"),"setting-cache-all":this.$translate.instant("settings.cache.title_clear_cache"),"setting-cache-bridge":this.$translate.instant("settings.cache.title_clear_bridge_cache"),"setting-cache-accessories":this.$translate.instant("settings.cache.title_clear_cached_accessories")}}ngOnInit(){this.initialize()}initialize(){return x(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.$settings.originalWebroot===globalThis.webroot.errorCode&&(this.webrootSettingDisabledAccess=!0,this.uiWebrootFormControl.disable()),this.isPwa&&(this.uiPortFormControl.disable(),this.uiHostFormControl.disable(),this.uiWebrootFormControl.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(F(1500),$(this.destroyRef)).subscribe(E=>this.hbNameSave(E)),this.uiLangFormControl.patchValue(this.$settings.env.lang,{emitEvent:!1}),this.uiLangFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiLangSave(E)),this.uiThemeFormControl.patchValue(this.$settings.theme,{emitEvent:!1}),this.uiThemeFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiThemeSave(E)),this.uiLightFormControl.patchValue(this.$settings.lightingMode,{emitEvent:!1}),this.uiLightFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiLightSave(E)),this.uiMenuFormControl.patchValue(this.$settings.menuMode,{emitEvent:!1}),this.uiMenuFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiMenuSave(E)),this.uiTempFormControl.patchValue(this.$settings.env.temperatureUnits,{emitEvent:!1}),this.uiTempFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiTempSave(E)),this.uiAlwaysShowBetasFormControl.patchValue(this.$settings.env.plugins?.alwaysShowBetas||!1,{emitEvent:!1}),this.uiAlwaysShowBetasFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiAlwaysShowBetasSave(E)),this.uiTerminalPersistenceFormControl.patchValue(this.$settings.env.terminal?.persistence,{emitEvent:!1}),this.uiTerminalPersistenceFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiTerminalPersistenceSave(E)),this.uiTerminalHideWarningFormControl.patchValue(this.$settings.env.terminal?.hideWarning,{emitEvent:!1}),this.uiTerminalHideWarningFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiTerminalHideWarningSave(E)),this.uiTerminalBufferSizeFormControl.patchValue(this.$settings.env.terminal?.bufferSize,{emitEvent:!1}),this.uiTerminalBufferSizeFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiTerminalBufferSizeSave(E)),this.hbLogSizeFormControl.patchValue(this.$settings.env.log?.maxSize,{emitEvent:!1}),this.hbLogSizeFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbLogSizeSave(E)),this.hbLogTruncateFormControl.patchValue(this.$settings.env.log?.truncateSize,{emitEvent:!1}),this.hbLogTruncateFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbLogTruncateSave(E)),this.uiPortFormControl.patchValue(this.$settings.env.port,{emitEvent:!1}),this.uiPortFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiPortSave(E)),this.uiAuthFormControl.patchValue(this.$settings.formAuth,{emitEvent:!1}),this.uiAuthFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiAuthSave(E));let n=this.$settings.sessionTimeout,a=Math.floor(n/86400),C=Math.floor(n%86400/3600),j=Math.floor(n%3600/60);this.uiSessionTimeoutDaysFormControl.patchValue(a,{emitEvent:!1}),this.uiSessionTimeoutHoursFormControl.patchValue(C,{emitEvent:!1}),this.uiSessionTimeoutMinutesFormControl.patchValue(j,{emitEvent:!1}),this.uiSessionTimeoutDaysFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(()=>this.uiSessionTimeoutSaveFromFields()),this.uiSessionTimeoutHoursFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(()=>this.uiSessionTimeoutSaveFromFields()),this.uiSessionTimeoutMinutesFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(()=>this.uiSessionTimeoutSaveFromFields()),this.uiSessionTimeoutInactivityBasedFormControl.patchValue(this.$settings.sessionTimeoutInactivityBased||!1,{emitEvent:!1}),this.uiSessionTimeoutInactivityBasedFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiSessionTimeoutInactivityBasedSave(E)),this.uiSslKeyFormControl.patchValue(this.$settings.env.ssl?.key||"",{emitEvent:!1}),this.uiSslKeyFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiSslKeySave(E)),this.uiSslCertFormControl.patchValue(this.$settings.env.ssl?.cert||"",{emitEvent:!1}),this.uiSslCertFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiSslCertSave(E)),this.uiSslPfxFormControl.patchValue(this.$settings.env.ssl?.pfx||"",{emitEvent:!1}),this.uiSslPfxFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiSslPfxSave(E)),this.uiSslPassphraseFormControl.patchValue(this.$settings.env.ssl?.passphrase||"",{emitEvent:!1}),this.uiSslPassphraseFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiSslPassphraseSave(E)),this.uiSslSelfSignedHostnamesFormControl.patchValue(this.$settings.env.ssl?.selfSignedHostnames?.join(", ")||"localhost, 127.0.0.1",{emitEvent:!1}),this.uiSslSelfSignedHostnamesFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiSslSelfSignedHostnamesSave(E)),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?.passphrase?"pfx":"off",{emitEvent:!1}),this.uiSslTypeFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiSslTypeSave(E)),this.uiHostFormControl.patchValue(this.$settings.host||"",{emitEvent:!1}),this.uiHostFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiHostSave(E)),this.uiWebrootFormControl.patchValue(this.$settings.webroot||"",{emitEvent:!1}),this.uiWebrootFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiWebrootSave(E)),this.uiProxyHostFormControl.patchValue(this.$settings.proxyHost||"",{emitEvent:!1}),this.uiProxyHostFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiProxyHostSave(E)),this.hbPackageFormControl.patchValue(this.$settings.env.homebridgePackagePath||"",{emitEvent:!1}),this.hbPackageFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbPackageSave(E)),this.uiMetricsFormControl.patchValue(!this.$settings.env.disableServerMetricsMonitoring,{emitEvent:!1}),this.uiMetricsFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiMetricsSave(E)),this.enableMdnsAdvertiseFormControl.patchValue(this.$settings.env.enableMdnsAdvertise||!1,{emitEvent:!1}),this.enableMdnsAdvertiseFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.enableMdnsAdvertiseSave(E)),this.uiAccDebugFormControl.patchValue(this.$settings.env.accessoryControl?.debug,{emitEvent:!1}),this.uiAccDebugFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.uiAccDebugSave(E)),this.uiTempFileFormControl.patchValue(this.$settings.env.temp,{emitEvent:!1}),this.uiTempFileFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.uiTempFileSave(E)),this.hbLinuxShutdownFormControl.patchValue(this.$settings.env.linux?.shutdown,{emitEvent:!1}),this.hbLinuxShutdownFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbLinuxShutdownSave(E)),this.hbLinuxRestartFormControl.patchValue(this.$settings.env.linux?.restart,{emitEvent:!1}),this.hbLinuxRestartFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbLinuxRestartSave(E)),this.scheduledRestartCronFormControl.patchValue(this.$settings.env.scheduledRestartCron||"",{emitEvent:!1}),this.scheduledRestartCronFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.scheduledRestartCronSave(E)),yield this.initMatterSettings(),this.loading.set(!1)})}openBackupModal(){this.$modal.open(Be,{size:"lg",backdrop:"static"})}openConfigBackup(){this.$router.navigate(["/config"],{queryParams:{action:"restore"}})}openWallpaperModal(){this.$modal.open(Ft,{size:"lg",backdrop:"static"})}openSslModal(){return x(this,null,function*(){let e=this.$modal.open(Mt,{size:"lg",backdrop:"static"});try{let n=yield e.result;this.uiSslTypeFormControl.patchValue(n,{emitEvent:!1}),this.cdr.detectChanges(),this.showRestartToast()}catch{}})}resetHomebridgeState(){this.$modal.open(kt,{size:"lg",backdrop:"static"})}unpairAccessory(){this.$modal.open(Bt,{size:"lg",backdrop:"static"})}removeAllCachedAccessories(){this.$modal.open(Et,{size:"lg",backdrop:"static"})}accessoryUiControl(){return x(this,null,function*(){try{let e=ie([{provide:Ee,useValue:{existingBlacklist:this.$settings.env.accessoryControl?.instanceBlacklist||[]}}],this.injector);yield this.$modal.open(xt,{size:"lg",backdrop:"static",injector:e}).result,this.showRestartToast()}catch(e){e!=="Dismiss"&&(console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error")))}})}removeSingleCachedAccessories(){let e=ie([{provide:pt,useValue:{selectedBridge:""}}],this.injector);this.$modal.open(Ct,{size:"lg",backdrop:"static",injector:e})}removeBridgeAccessories(){this.$modal.open(wt,{size:"lg",backdrop:"static"})}selectNetworkInterfaces(){return x(this,null,function*(){let e=ie([{provide:Ie,useValue:{adaptersAvailable:this.adaptersAvailable(),adaptersSelected:this.adaptersSelected()}}],this.injector),n=this.$modal.open($t,{size:"lg",backdrop:"static",injector:e});try{let a=yield n.result;this.buildBridgeNetworkAdapterList(a),yield this.$api.put("/server/network-interfaces/bridge",{adapters:a}),this.showRestartToast()}catch(a){a!=="Dismiss"&&(console.error(a),this.$toastr.error(a.message,this.$translate.instant("toast.title_error")))}})}toggleSection(e){this.showFields.set(ve(Ce({},this.showFields()),{[e]:!this.showFields()[e]}))}initStartupSettings(){return x(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(F(750),$(this.destroyRef)).subscribe(n=>this.hbDebugSave(n)),this.hbInsecureFormControl.patchValue(e.HOMEBRIDGE_INSECURE,{emitEvent:!1}),this.hbInsecureFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(n=>this.hbInsecureSave(n)),this.hbKeepFormControl.patchValue(e.HOMEBRIDGE_KEEP_ORPHANS,{emitEvent:!1}),this.hbKeepFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(n=>this.hbKeepSave(n)),this.hbEnvDebugFormControl.patchValue(e.ENV_DEBUG,{emitEvent:!1}),this.hbEnvDebugFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(n=>this.hbEnvDebugSave(n)),this.hbEnvNodeFormControl.patchValue(e.ENV_NODE_OPTIONS,{emitEvent:!1}),this.hbEnvNodeFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(n=>this.hbEnvNodeSave(n))}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}initNetworkingOptions(){return x(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(e.message,this.$translate.instant("toast.title_error"))}})}getNetworkSettings(){return x(this,null,function*(){let[e,n,a,C,j]=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(n),this.hbMDnsFormControl.patchValue(a.advertiser,{emitEvent:!1}),this.hbMDnsFormControl.valueChanges.pipe(F(750),$(this.destroyRef)).subscribe(E=>this.hbMDnsSave(E)),this.hbPortFormControl.patchValue(C.port,{emitEvent:!1}),this.hbPortFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbPortSave(E)),this.hbStartPortFormControl.patchValue(j.start,{emitEvent:!1}),this.hbStartPortFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbStartPortSave(E)),this.hbEndPortFormControl.patchValue(j.end,{emitEvent:!1}),this.hbEndPortFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(E=>this.hbEndPortSave(E))})}saveUiSettingChange(e,n){return x(this,null,function*(){try{yield this.$api.put("/config-editor/ui",{key:e,value:n})}catch(a){console.error(a),this.$toastr.error(a.message,this.$translate.instant("toast.title_error"))}})}hbNameSave(e){return x(this,null,function*(){if(!e||!/^[\p{L}\p{N}][\p{L}\p{N} ']*[\p{L}\p{N}]$/u.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(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbNameIsSaving.set(!1)}})}uiLangSave(e){return x(this,null,function*(){try{this.uiLangIsSaving.set(!0),this.$settings.setLang(e),yield this.saveUiSettingChange("lang",e),setTimeout(()=>{this.uiLangIsSaving.set(!1)},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiLangIsSaving.set(!1)}})}uiThemeSave(e){return x(this,null,function*(){try{this.uiThemeIsSaving.set(!0),this.isThemeTransitioning.set(!0),yield new Promise(n=>setTimeout(n,250)),this.$settings.setTheme(e),yield this.saveUiSettingChange("theme",e),yield new Promise(n=>setTimeout(n,100)),this.isThemeTransitioning.set(!1),setTimeout(()=>{this.uiThemeIsSaving.set(!1)},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiThemeIsSaving.set(!1),this.isThemeTransitioning.set(!1)}})}uiLightSave(e){return x(this,null,function*(){try{this.uiLightIsSaving.set(!0),this.isThemeTransitioning.set(!0),yield new Promise(n=>setTimeout(n,250)),this.$settings.setLightingMode(e,"user"),yield this.saveUiSettingChange("lightingMode",e),yield new Promise(n=>setTimeout(n,100)),this.isThemeTransitioning.set(!1),setTimeout(()=>{this.uiLightIsSaving.set(!1)},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiLightIsSaving.set(!1),this.isThemeTransitioning.set(!1)}})}uiMenuSave(e){return x(this,null,function*(){try{this.uiMenuIsSaving.set(!0),this.$settings.setMenuMode(e),yield this.saveUiSettingChange("menuMode",e),window.location.reload()}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiMenuIsSaving.set(!1)}})}uiTempSave(e){return x(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(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTempIsSaving.set(!1)}})}uiAlwaysShowBetasSave(e){return x(this,null,function*(){try{this.uiAlwaysShowBetasIsSaving.set(!0),this.$settings.setEnvItem("plugins.alwaysShowBetas",e),yield this.saveUiSettingChange("plugins.alwaysShowBetas",e),setTimeout(()=>{this.uiAlwaysShowBetasIsSaving.set(!1)},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiAlwaysShowBetasIsSaving.set(!1)}})}uiTerminalPersistenceSave(e){return x(this,null,function*(){if(!e&&this.$terminal.hasActiveSession()){let n=ie([{provide:Me,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(Fe,{size:"lg",backdrop:"static",injector:n});try{yield a.result}catch{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(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTerminalPersistenceIsSaving.set(!1)}})}uiTerminalHideWarningSave(e){return x(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(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTerminalHideWarningIsSaving.set(!1)}})}uiTerminalBufferSizeSave(e){return x(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(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTerminalBufferSizeIsSaving.set(!1)}})}hbDebugSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbDebugIsSaving.set(!1)}})}hbInsecureSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbInsecureIsSaving.set(!1)}})}hbKeepSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbKeepIsSaving.set(!1)}})}hbEnvDebugSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbEnvDebugIsSaving.set(!1)}})}hbEnvNodeSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbEnvNodeIsSaving.set(!1)}})}hbLogSizeSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLogSizeIsSaving.set(!1)}})}hbLogTruncateSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLogTruncateIsSaving.set(!1)}})}hbMDnsSave(e){return x(this,null,function*(){try{this.hbMDnsIsSaving.set(!0),yield this.$api.put("/server/mdns-advertiser",{advertiser:e}),setTimeout(()=>{this.hbMDnsIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbMDnsIsSaving.set(!1)}})}hbPortSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbPortIsSaving.set(!1)}})}hbStartPortSave(e){return x(this,null,function*(){try{this.hbStartPortIsSaving.set(!0),yield this.$api.put("/server/ports",{start:e,end:this.hbEndPortFormControl.value}),this.hbStartPortIsInvalid.set(!1),setTimeout(()=>{this.hbStartPortIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbStartPortIsSaving.set(!1)}})}hbEndPortSave(e){return x(this,null,function*(){try{this.hbEndPortIsSaving.set(!0),yield this.$api.put("/server/ports",{start:this.hbStartPortFormControl.value,end:e}),this.hbEndPortIsInvalid.set(!1),setTimeout(()=>{this.hbEndPortIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbEndPortIsSaving.set(!1)}})}uiPortSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiPortIsSaving.set(!1)}})}uiAuthSave(e){return x(this,null,function*(){try{this.uiAuthIsSaving.set(!0),this.$settings.setItem("formAuth",e),yield this.saveUiSettingChange("auth",e?"form":"none"),this.$notification.formAuthEnabled.next(e),setTimeout(()=>{this.uiAuthIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiAuthIsSaving.set(!1)}})}uiSessionTimeoutSaveFromFields(){return x(this,null,function*(){let e=this.uiSessionTimeoutDaysFormControl.value||0,n=this.uiSessionTimeoutHoursFormControl.value||0,a=this.uiSessionTimeoutMinutesFormControl.value||0;if(typeof e!="number"||e<0||e>365||!Number.isInteger(e)||typeof n!="number"||n<0||n>23||!Number.isInteger(n)||typeof a!="number"||a<0||a>59||!Number.isInteger(a)){this.uiSessionTimeoutIsInvalid.set(!0);return}let C=e*86400+n*3600+a*60;if(C<600||C>864e5){this.uiSessionTimeoutIsInvalid.set(!0);return}try{this.uiSessionTimeoutIsSaving.set(!0),this.$settings.setItem("sessionTimeout",C),yield this.saveUiSettingChange("sessionTimeout",C),this.uiSessionTimeoutIsInvalid.set(!1),setTimeout(()=>{this.uiSessionTimeoutIsSaving.set(!1),this.showRestartToast()},1e3)}catch(j){console.error(j),this.$toastr.error(j.message,this.$translate.instant("toast.title_error")),this.uiSessionTimeoutIsSaving.set(!1)}})}uiSessionTimeoutInactivityBasedSave(e){return x(this,null,function*(){try{this.uiSessionTimeoutInactivityBasedIsSaving.set(!0),this.$settings.setItem("sessionTimeoutInactivityBased",e),yield this.saveUiSettingChange("sessionTimeoutInactivityBased",e),setTimeout(()=>{this.uiSessionTimeoutInactivityBasedIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSessionTimeoutInactivityBasedIsSaving.set(!1)}})}uiSslKeySave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslKeyIsSaving.set(!1)}})}uiSslCertSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslCertIsSaving.set(!1)}})}uiSslPfxSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslPfxIsSaving.set(!1)}})}uiSslPassphraseSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslPassphraseIsSaving.set(!1)}})}uiSslSelfSignedHostnamesSave(e){return x(this,null,function*(){try{this.uiSslSelfSignedHostnamesIsSaving.set(!0);let n=e.split(",").map(a=>a.trim()).filter(a=>a.length>0);this.$settings.setEnvItem("ssl.selfSignedHostnames",n),yield this.saveUiSettingChange("ssl.selfSignedHostnames",n),setTimeout(()=>{this.uiSslSelfSignedHostnamesIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiSslSelfSignedHostnamesIsSaving.set(!1)}})}uiSslTypeSave(e){return x(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.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.showRestartToast()}})}uiHostSave(e){return x(this,null,function*(){try{this.uiHostIsSaving.set(!0),this.$settings.setItem("host",e),yield this.saveUiSettingChange("host",e),setTimeout(()=>{this.uiHostIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiHostIsSaving.set(!1)}})}uiWebrootSave(e){return x(this,null,function*(){try{this.uiWebrootIsSaving.set(!0),e=e?`/${e}`.replace(/\/+/g,"/").replace(/\/$/,""):"",e==="/"&&(e=""),this.$settings.setItem("webroot",e),yield this.saveUiSettingChange("webroot",e),this.uiWebrootFormControl.patchValue(e,{emitEvent:!1}),setTimeout(()=>{this.uiWebrootIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiWebrootIsSaving.set(!1)}})}uiProxyHostSave(e){return x(this,null,function*(){try{this.uiProxyHostIsSaving.set(!0),this.$settings.setItem("proxyHost",e),yield this.saveUiSettingChange("proxyHost",e),setTimeout(()=>{this.uiProxyHostIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiProxyHostIsSaving.set(!1)}})}hbPackageSave(e){return x(this,null,function*(){try{this.hbPackageIsSaving.set(!0),this.$settings.setEnvItem("homebridgePackagePath",e),yield this.saveUiSettingChange("homebridgePackagePath",e),setTimeout(()=>{this.hbPackageIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbPackageIsSaving.set(!1)}})}uiMetricsSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiMetricsIsSaving.set(!1)}})}enableMdnsAdvertiseSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error"))}})}uiAccDebugSave(e){return x(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.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiAccDebugIsSaving.set(!1)}})}uiTempFileSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.uiTempFileIsSaving.set(!1)}})}hbLinuxShutdownSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLinuxShutdownIsSaving.set(!1)}})}hbLinuxRestartSave(e){return x(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(n=>console.error(n)).finally(()=>this.showRestartToast()).catch(n=>{console.error(n),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.hbLinuxRestartIsSaving.set(!1)}})}validateCronExpression(e){if(!e||!e.trim())return!0;let n=e.trim().split(/\s+/);if(n.length!==5)return!1;let a=/^[\d*,\-/]+$/;return n.every(C=>a.test(C))}scheduledRestartCronSave(e){return x(this,null,function*(){if(!this.validateCronExpression(e)){this.scheduledRestartCronIsInvalid.set(!0);return}this.scheduledRestartCronIsInvalid.set(!1);try{this.scheduledRestartCronIsSaving.set(!0);let n=e?.trim()?e:null;this.$settings.setEnvItem("scheduledRestartCron",n),yield this.$api.put("/config-editor/ui",{key:"scheduledRestartCron",value:n}),setTimeout(()=>{this.scheduledRestartCronIsSaving.set(!1),this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).catch(a=>console.error(a)).finally(()=>this.showRestartToast()).catch(a=>{console.error(a),this.showRestartToast()})},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.scheduledRestartCronIsSaving.set(!1)}})}initMatterSettings(){return x(this,null,function*(){try{let e=yield this.$api.get("/config-editor/matter"),n=e!==null;n?this.matterPortFormControl.patchValue(e.port||"",{emitEvent:!1}):this.matterPortFormControl.patchValue(0,{emitEvent:!1}),this.matterPortFormControl.valueChanges.pipe(F(1500),$(this.destroyRef)).subscribe(a=>this.matterPortSave(a)),this.matterEnabledFormControl.patchValue(n,{emitEvent:!1}),this.matterEnabledFormControl.valueChanges.subscribe(a=>this.matterEnabledSave(a))}catch(e){console.error(e),this.matterEnabledFormControl.valueChanges.subscribe(n=>this.matterEnabledSave(n))}})}matterPortSave(e){return x(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}),setTimeout(()=>{this.matterPortIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,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}),setTimeout(()=>{this.matterPortIsSaving.set(!1),this.showRestartToast()},1e3)}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.matterPortIsSaving.set(!1),this.matterPortIsInvalid.set(!0)}})}matterEnabledSave(e){return x(this,null,function*(){try{if(this.matterEnabledIsSaving.set(!0),e){let n;if(this.matterConfigCache.port)n=this.matterConfigCache.port;else try{n=(yield this.$api.get("/server/port/new/matter")).port}catch(a){console.error("Failed to get Matter port, using fallback",a),n=Math.floor(Math.random()*12+5530)}yield this.$api.put("/config-editor/matter",{port:n}),n!==void 0&&this.matterPortFormControl.patchValue(n,{emitEvent:!1}),this.matterConfigCache={port:n},setTimeout(()=>{this.matterEnabledIsSaving.set(!1),this.showRestartToast()},1e3)}else{let n=ie([{provide:Me,useValue:{title:"Disable Matter",message:"Disabling Matter will delete all Matter bridge files. This action cannot be undone.",message2:"Are you sure you want to continue?",confirmButtonLabel:"Continue",confirmButtonClass:"btn-danger",faIconClass:"fas fa-exclamation-triangle text-warning"}}],this.injector),a=this.$modal.open(Fe,{size:"lg",backdrop:"static",injector:n});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.restartToastIsShown=!1),this.$router.navigate(["/restart"],{queryParams:{alreadyRestarting:"true"}}),yield this.$api.delete("/config-editor/matter")}catch(C){C==="Dismiss"?(this.matterEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.matterEnabledIsSaving.set(!1)):(console.error(C),this.$toastr.error(C.message,this.$translate.instant("toast.title_error")),this.matterEnabledFormControl.patchValue(!0,{emitEvent:!1}),this.matterEnabledIsSaving.set(!1))}}}catch(n){console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error")),this.matterEnabledFormControl.patchValue(e,{emitEvent:!1}),this.matterEnabledIsSaving.set(!1)}})}buildBridgeNetworkAdapterList(e){if(!e.length){this.adaptersSelected.set([]);return}this.adaptersSelected.set(e.map(n=>{let a=this.adaptersAvailable().find(C=>C.iface===n);return a?{iface:a.iface,selected:!0,missing:!1,ip4:a.ip4,ip6:a.ip6}:{iface:n,selected:!0,missing:!0}}))}showRestartToast(){this.restartToastIsShown||(this.restartToastIsShown=!0,this.$settings.restartToastRef=this.$toastr.info(this.$translate.instant("settings.changes.saved"),this.$translate.instant("menu.hbrestart.title"),{timeOut:0,tapToDismiss:!0,disableTimeOut:!0,positionClass:"toast-bottom-right",enableHtml:!0}),this.$settings.restartToastRef&&this.$settings.restartToastRef.onTap&&this.$settings.restartToastRef.onTap.pipe($(this.destroyRef)).subscribe(()=>{this.$router.navigate(["/restart"])}))}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=N({type:t,selectors:[["ng-component"]],viewQuery:function(n,a){n&1&&de(a.searchInput,fn,5),n&2&&ce()},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",1,"btn","btn-elegant","my-0","me-0",3,"click"],[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"],["role","button","tabindex","0",1,"mt-3","hover-pointer",3,"click"],[1,"primary-text"],[1,"fa"],["id","fieldsGeneral",1,"list-group","list-group-box","mt-2","mx-0"],[1,"list-group-item","d-block","d-md-flex","justify-content-between","align-items-center"],[1,"list-group-item","d-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"],[1,"fas","fa-floppy-disk","primary-text","fa-xl","me-0","me-md-2","ms-2","ms-md-0","order-2","order-md-1"],[1,"pe-2"],[1,"btn","btn-primary","waves-effect","m-0","ms-3","py-1",2,"min-width","50px",3,"click"],[1,"fas","fa-arrow-right"],["routerLink","/users",1,"btn","btn-primary","waves-effect","m-0","ms-3","py-1",2,"min-width","50px"],["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","bg"],["value","ca"],["value","zh-CN"],["value","zh-TW"],["value","cs"],["value","nl"],["value","en"],["value","fi"],["value","fr"],["value","de"],["value","he"],["value","hu"],["value","id"],["value","it"],["value","ja"],["value","ko"],["value","mk"],["value","no"],["value","pl"],["value","pt-BR"],["value","pt"],["value","ru"],["value","sl"],["value","es"],["value","sv"],["value","th"],["value","tr"],["value","uk"],["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,"d-flex","align-items-center"],[1,"order-1","order-md-2"],["type","checkbox","id","uiAlwaysShowBetas",1,"rendux-input",3,"formControl"],["for","uiAlwaysShowBetas",1,"rendux-label","ms-3",2,"min-width","50px"],["id","fieldsStartup",1,"list-group","list-group-box","mb-4","mx-0"],[1,"grey-text","pe-2"],["type","checkbox","id","homebridgeDebugMode",1,"rendux-input",3,"formControl"],["for","homebridgeDebugMode",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","homebridgeKeepOrphans",1,"rendux-input",3,"formControl"],["for","homebridgeKeepOrphans",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","homebridgeInsecureMode",1,"rendux-input",3,"formControl"],["for","homebridgeInsecureMode",1,"rendux-label","ms-3",2,"min-width","50px"],[1,"badge","badge-primary","ms-1"],[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",2,"min-width","50px"],["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"],["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"],[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"],["routerLink","/platform-tools/docker/startup-script",1,"btn","btn-primary","waves-effect","m-0","ms-3","py-1",2,"min-width","50px"],["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,"class"],[1,"btn","btn-primary","waves-effect","m-0","ms-3","py-1",2,"min-width","50px",3,"click","disabled"],[1,"badge","badge-primary","me-1"],[1,"fas","fa-exclamation-triangle"],[1,"fw-normal"],["value","avahi"],["value","ciao"],["value","bonjour-hap"],["value","resolved"],["type","number","min","1025","max","65533",1,"form-control","custom-input","resp-input","order-1","order-md-2","font-monospace",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"],[1,"fas","fa-exclamation-triangle","red-text"],["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","text","placeholder","/",1,"form-control","custom-input","resp-input","order-1","order-md-2","font-monospace",3,"formControl"],["type","checkbox","id","enableMdnsAdvertise",1,"rendux-input",3,"formControl"],["for","enableMdnsAdvertise",1,"rendux-label","ms-3",2,"min-width","50px"],[1,"small","grey-text","mb-2","mx-0"],["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",2,"min-width","50px"],["type","number","min","1024","max","65535","placeholder","5540",1,"form-control","custom-input","resp-input","order-1","order-md-2","font-monospace",3,"formControl"],["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",2,"min-width","50px"],["type","checkbox","id","terminalHideWarning",1,"rendux-input",3,"formControl"],["for","terminalHideWarning",1,"rendux-label","ms-3",2,"min-width","50px"],[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",2,"min-width","50px"],["type","checkbox","id","session-inactivity-based",1,"rendux-input",3,"formControl"],["for","session-inactivity-based",1,"rendux-label","ms-3",2,"min-width","50px"],[1,"fas","fa-floppy-disk","primary-text","fa-xl","me-0","me-md-2","ms-2","ms-md-0"],[1,"d-flex","align-items-center","gap-2"],["type","number","min","0","max","365","placeholder","0",1,"form-control","custom-input","font-monospace",2,"width","44px","text-align","right",3,"formControl"],[1,"ms-1","me-2","mb-0","text-nowrap","grey-text","small"],["type","number","min","0","max","23","placeholder","8",1,"form-control","custom-input","font-monospace",2,"width","44px","text-align","right",3,"formControl"],["type","number","min","0","max","59","placeholder","0",1,"form-control","custom-input","font-monospace",2,"width","44px","text-align","right",3,"formControl"],["type","checkbox","id","httpsEnabled",1,"rendux-input",3,"click","checked","disabled"],["for","httpsEnabled",1,"rendux-label","ms-3",2,"min-width","50px"],["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",2,"min-width","50px"],["id","fieldsReset",1,"list-group","list-group-box","mt-2","mx-0"]],template:function(n,a){n&1&&(o(0,"div",1)(1,"div",2)(2,"h3",3),d(3),r(4,"translate"),s()(),o(5,"div",4)(6,"button",5),r(7,"translate"),T("click",function(){return a.toggleSearch()}),p(8,"i"),s()()(),m(9,xn,7,7,"div",6),m(10,Sn,1,0,"app-spinner")(11,Ho,11,11,"div",7)),n&2&&(i(3),g(l(4,7,"menu.settings.title")),i(3),b("aria-label",l(7,9,"form.search")),i(2),D(Ue("fas",a.showSearchBar()?" primary-text":""," fa-search")),i(),u(a.showSearchBar()?9:-1),i(),u(a.loading()?10:11))},dependencies:[Je,ge,tt,at,ot,_e,it,ue,nt,ae,Xe,lt,dt,rt,st,ye,Ze,oe,he,_t,me,H],styles:["body{transition:background-color .5s ease-in-out}.settings-content[_ngcontent-%COMP%]{opacity:1;transition:opacity .25s ease-in-out}.settings-content.theme-transitioning[_ngcontent-%COMP%]{opacity:0}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}"],data:{animation:[$e("fadeInOut",[xe(":enter",[re({opacity:0}),be("750ms",re({opacity:1}))]),xe(":leave",[be("750ms",re({opacity:0}))])]),$e("smoothHide",[xe(":enter",[re({opacity:.01,height:"0px",marginBottom:0,transform:"scale(0.97)"}),be("450ms cubic-bezier(0.0, 0.0, 0.2, 1)",re({opacity:1,height:"*",marginBottom:"*",transform:"scale(1)"}))]),xe(":leave",[be("150ms cubic-bezier(0.4, 0.0, 1, 1)",re({opacity:0,height:0,marginBottom:0,paddingTop:0,paddingBottom:0,transform:"scale(0.98)"}))])])]}})}return t})();export{yl as SettingsComponent};
|