homebridge-config-ui-x 4.78.1 → 4.78.2-beta.0

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.
Files changed (85) hide show
  1. package/CHANGELOG.md +17 -2
  2. package/dist/core/auth/auth.controller.d.ts +4 -0
  3. package/dist/core/config/config.service.d.ts +4 -0
  4. package/dist/core/config/config.service.js +2 -0
  5. package/dist/core/config/config.service.js.map +1 -1
  6. package/dist/modules/backup/backup.service.js +2 -1
  7. package/dist/modules/backup/backup.service.js.map +1 -1
  8. package/dist/modules/server/server.service.js +4 -2
  9. package/dist/modules/server/server.service.js.map +1 -1
  10. package/package.json +1 -1
  11. package/public/chunk-2SCPTKR7.js +1 -0
  12. package/public/{chunk-6LFABEVD.js → chunk-4B5B546N.js} +1 -1
  13. package/public/{chunk-RYCM65J5.js → chunk-4EWTRX44.js} +1 -1
  14. package/public/{chunk-LUAP5JIU.js → chunk-4N2YADTF.js} +1 -1
  15. package/public/{chunk-J6LG7572.js → chunk-4WLTWMEZ.js} +1 -1
  16. package/public/chunk-54G4EJNO.js +1 -0
  17. package/public/{chunk-FMIEZK6P.js → chunk-55JMWTF3.js} +1 -1
  18. package/public/{chunk-EDDNQT4K.js → chunk-77PKGTJ6.js} +1 -1
  19. package/public/chunk-APF46O6G.js +1 -0
  20. package/public/chunk-ASVA3NON.js +1 -0
  21. package/public/{chunk-KTBIQM6F.js → chunk-AVCQPCOS.js} +1 -1
  22. package/public/chunk-CLF7Z5FU.js +1 -0
  23. package/public/{chunk-OJIVR22S.js → chunk-D6G4NGNK.js} +1 -1
  24. package/public/{chunk-5LV43K5Q.js → chunk-DCIRWDVW.js} +1 -1
  25. package/public/chunk-DFSVMXD4.js +1 -0
  26. package/public/{chunk-TALXUYCG.js → chunk-E7XYGOQD.js} +1 -1
  27. package/public/{chunk-KPKXYWYI.js → chunk-EJKIFJ3G.js} +1 -1
  28. package/public/chunk-EOEJQUXC.js +1 -0
  29. package/public/chunk-F2VCKTA7.js +1 -0
  30. package/public/{chunk-PV3PJQXB.js → chunk-GGCJJLHN.js} +1 -1
  31. package/public/{chunk-J7ZYSHUZ.js → chunk-IRVOXEFE.js} +1 -1
  32. package/public/chunk-IZQSSGQT.js +1 -0
  33. package/public/chunk-JCSKQSFB.js +1 -0
  34. package/public/{chunk-NWSDLJGS.js → chunk-JEXGGMX5.js} +1 -1
  35. package/public/{chunk-RFN7COZT.js → chunk-JTFO2KJZ.js} +1 -1
  36. package/public/{chunk-KYIHZYMT.js → chunk-JU3SOS44.js} +1 -1
  37. package/public/{chunk-AE2FRIIY.js → chunk-KHCYDPWI.js} +1 -1
  38. package/public/{chunk-X6JNJXEN.js → chunk-KK2BBLPH.js} +1 -1
  39. package/public/chunk-LCRBIOJQ.js +1 -0
  40. package/public/{chunk-SYLE7CUR.js → chunk-LPIANZIZ.js} +1 -1
  41. package/public/{chunk-WM5V72KD.js → chunk-NOVC5ASQ.js} +1 -1
  42. package/public/{chunk-J6TX5B4F.js → chunk-O47K6ZXU.js} +1 -1
  43. package/public/chunk-OFZACWTK.js +1 -0
  44. package/public/{chunk-2VXN7WKJ.js → chunk-PFTJAWJK.js} +1 -1
  45. package/public/{chunk-Y4Q7E7P6.js → chunk-PNDJDJ5J.js} +1 -1
  46. package/public/chunk-POSBD7VV.js +1 -0
  47. package/public/chunk-QF2PH6KT.js +1 -0
  48. package/public/{chunk-WK3DIOUP.js → chunk-QOXK2L5U.js} +1 -1
  49. package/public/{chunk-TGHT3YAQ.js → chunk-QUD6HGBN.js} +2 -2
  50. package/public/{chunk-UMOY3YLS.js → chunk-R2D5KFFL.js} +1 -1
  51. package/public/{chunk-TO5WDII4.js → chunk-RT4A5F4Q.js} +1 -1
  52. package/public/{chunk-UXWMED4C.js → chunk-SA2YD3FJ.js} +1 -1
  53. package/public/{chunk-YFVQVTBT.js → chunk-SQSFBJVO.js} +1 -1
  54. package/public/chunk-SQZCN2E6.js +1 -0
  55. package/public/{chunk-KIJRUF65.js → chunk-TGQOS2G2.js} +1 -1
  56. package/public/{chunk-IONHXP54.js → chunk-TOYUVWM3.js} +1 -1
  57. package/public/{chunk-HSLSQSUK.js → chunk-TZHQDFLX.js} +1 -1
  58. package/public/{chunk-XVOGZWDM.js → chunk-U5H55F36.js} +1 -1
  59. package/public/{chunk-IK32HKVF.js → chunk-UJNJDPHO.js} +1 -1
  60. package/public/{chunk-HJRHEGOR.js → chunk-UWOCPHPM.js} +1 -1
  61. package/public/{chunk-T5BFPPBQ.js → chunk-WHUKNIMX.js} +1 -1
  62. package/public/{chunk-5Q3NKPCR.js → chunk-WW2UANPC.js} +1 -1
  63. package/public/{chunk-R46BD4H7.js → chunk-XK6HSLL7.js} +1 -1
  64. package/public/{chunk-I5MUH5C6.js → chunk-XRLP4JNA.js} +1 -1
  65. package/public/{chunk-53LOYMG6.js → chunk-YUPVYMES.js} +1 -1
  66. package/public/{chunk-BCWAVC5J.js → chunk-ZB4INQMV.js} +1 -1
  67. package/public/{chunk-5XQFBCJG.js → chunk-ZVJVD437.js} +1 -1
  68. package/public/{chunk-ELUNHUWE.js → chunk-ZW5IK3Y4.js} +1 -1
  69. package/public/index.html +1 -1
  70. package/public/{main-N24GDECP.js → main-GJ4KTFJY.js} +1 -1
  71. package/public/chunk-4VN4GBLG.js +0 -1
  72. package/public/chunk-5ZCW3NXI.js +0 -1
  73. package/public/chunk-7DWJTQPZ.js +0 -1
  74. package/public/chunk-AKTOY2ID.js +0 -1
  75. package/public/chunk-ARWR6FQL.js +0 -1
  76. package/public/chunk-BWSWZYVR.js +0 -1
  77. package/public/chunk-C63MPSJQ.js +0 -1
  78. package/public/chunk-FRLDRRIN.js +0 -1
  79. package/public/chunk-K6PDZMYT.js +0 -1
  80. package/public/chunk-MEEKQDYR.js +0 -1
  81. package/public/chunk-MLAMHH27.js +0 -1
  82. package/public/chunk-MQK7CXUI.js +0 -1
  83. package/public/chunk-OJGPSUKN.js +0 -1
  84. package/public/chunk-VK3KWDK4.js +0 -1
  85. package/public/chunk-XOPIKWHI.js +0 -1
@@ -1 +0,0 @@
1
- import{a}from"./chunk-UMOY3YLS.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as ContainerRestartComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-2VXN7WKJ.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as RestartLinuxComponent};
@@ -1 +0,0 @@
1
- import{b as a}from"./chunk-I5MUH5C6.js";import"./chunk-TGHT3YAQ.js";import"./chunk-RYCM65J5.js";import"./chunk-S6UXXPGF.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as AccessoriesComponent};
@@ -1 +0,0 @@
1
- import{g as a}from"./chunk-C63MPSJQ.js";import"./chunk-RYCM65J5.js";import"./chunk-SYLE7CUR.js";import"./chunk-6XANA56B.js";import"./chunk-WTTWP6KF.js";import"./chunk-QJQSHTGR.js";import"./chunk-S6UXXPGF.js";import"./chunk-TALXUYCG.js";import"./chunk-AJTG3DAQ.js";import"./chunk-J764EFYE.js";import"./chunk-SCRWY2OT.js";import"./chunk-IMPGSXGE.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as SettingsComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-HJRHEGOR.js";import"./chunk-6LFABEVD.js";import"./chunk-AJTG3DAQ.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as TerminalComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-WK3DIOUP.js";import"./chunk-WTTWP6KF.js";import"./chunk-S6UXXPGF.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as StartupScriptComponent};
@@ -1 +0,0 @@
1
- import{a as Le}from"./chunk-RYCM65J5.js";import{a as Ne,w as Oe}from"./chunk-SYLE7CUR.js";import{b as it}from"./chunk-TALXUYCG.js";import{a as et,b as tt}from"./chunk-AJTG3DAQ.js";import{g as oe,m as P,n as G,t as re}from"./chunk-2NQ5FYSH.js";import{A as te,b as Y,c as ne,e as Z,j as E,k as we,l as Ee,n as Be,o as ae,r as Te,s as $e,t as Fe,u as Pe,v as Re,x as Ae,z as ee}from"./chunk-5NG7YGKN.js";import{d as O,e as Me}from"./chunk-JBQX4JBH.js";import{a as Ve}from"./chunk-XVOGZWDM.js";import{b as j}from"./chunk-J6LG7572.js";import{c as ke,d as de,f as ie,g as ce,k as A,m as De,n as M}from"./chunk-OJGPSUKN.js";import{c as ye,d as Ie}from"./chunk-EM4PY2IW.js";import{a as R,b as F}from"./chunk-555LSHXI.js";import{$a as t,Ac as r,Bc as s,Cc as z,Gb as v,Hb as h,Ib as _,Kb as V,Lb as N,M as w,Mb as L,Nb as m,Ob as n,Pb as a,Qb as d,Ub as k,Xa as pe,Xb as f,Ya as _e,Yb as b,ac as ge,bc as be,bd as U,cc as ve,g as le,gd as X,h as S,id as Se,jc as l,kc as u,la as C,lb as $,lc as g,qc as fe,ra as y,rc as Ce,sa as I,sc as xe,w as B,wc as D,xc as T,yc as J}from"./chunk-W6X46MTW.js";var ze=(i,c)=>({"green-text":i,"grey-text":c});function nt(i,c){if(i&1){let e=k();n(0,"li",9)(1,"div",10),l(2),d(3,"br"),n(4,"small",11),d(5,"i",12),r(6,"translate"),l(7," \xB7 "),n(8,"span",13),l(9),a(),l(10),r(11,"titlecase"),a()(),n(12,"div",14)(13,"input",23),r(14,"translate"),f("click",function(){let p=y(e).$implicit,x=b();return I(x.toggleList(p._username))}),a(),d(15,"label",24),a()()}if(i&2){let e=c.$implicit,o=b();t(2),g(" ",e.name," "),t(3),m("ngbTooltip",s(6,10,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired"))("ngClass",T(16,ze,e._isPaired,!e._isPaired)),t(4),u(e._username),t(),g(" \xB7 ",s(11,12,e._category)," "),t(3),m("id","hidePluginUpdates_"+e._username)("checked",!o.isInList(e._username))("disabled",o.clicked),v("aria-label",s(14,14,"form.button_allow")+" "+e.name),t(2),m("for","hidePluginUpdates_"+e._username)}}function at(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_save")," ")}function ot(i,c){i&1&&d(0,"i",22)}var Ue=(()=>{class i{$activeModal=C(P);$api=C(M);$settings=C(j);$toastr=C(A);$translate=C(R);originalBlacklist=[];updatedBlacklist=[];existingBlacklist=[];clicked=!1;mainPairing={};pairings=[];constructor(){}get blacklistHasUpdated(){return this.updatedBlacklist.join(",")!==this.originalBlacklist.join(",")}ngOnInit(){return S(this,null,function*(){this.updatedBlacklist=this.existingBlacklist.map(e=>e.trim().toUpperCase()).sort((e,o)=>e.localeCompare(o)),this.originalBlacklist=[...this.updatedBlacklist];try{let e=yield B(this.$api.get("/server/pairings"));this.mainPairing=e.find(o=>o._main),this.pairings=e.filter(o=>!o._main).sort((o,p)=>o.name.localeCompare(p.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(o=>o!==e):(this.updatedBlacklist.push(e),this.updatedBlacklist.sort((o,p)=>o.localeCompare(p)))}isInList(e){return this.updatedBlacklist.includes(e)}updateBlacklist(){return S(this,null,function*(){this.clicked=!0;try{yield B(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=!1,console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],inputs:{existingBlacklist:"existingBlacklist"},decls:45,vars:34,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fas","fa-fw","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","openDelay","150","triggers","hover","placement","left",1,"fas","fa-fw","fa-link",3,"ngbTooltip","ngClass"],[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-fw","fa-spinner","fa-pulse"],["type","checkbox",1,"rendux-input",3,"click","id","checked","disabled"],[1,"rendux-label","ms-3",3,"for"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4)(8,"div",5),d(9,"i",6),a(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),a(),n(14,"li"),l(15),r(16,"translate"),a()(),n(17,"ul",8)(18,"li",9)(19,"div",10),l(20),d(21,"br"),n(22,"small",11),d(23,"i",12),r(24,"translate"),l(25," \xB7 "),n(26,"span",13),l(27),a(),l(28," \xB7 Homebridge "),a()(),n(29,"div",14)(30,"input",15),r(31,"translate"),f("click",function(){return p.toggleList(p.mainPairing._username)}),a(),d(32,"label",16),a()(),N(33,nt,16,19,"li",9,V),a()(),n(35,"div",17)(36,"div",10)(37,"button",18),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),l(38),r(39,"translate"),a()(),d(40,"div",19),n(41,"div",20)(42,"button",21),f("click",function(){return p.updateBlacklist()}),h(43,at,2,3),h(44,ot,1,0,"i",22),a()()()()),o&2&&(t(3),u(s(4,17,"settings.security.ui_control")),t(2),m("disabled",p.clicked),v("aria-label",s(6,19,"form.button_close")),t(7),u(s(13,21,"settings.security.ui_control_desc")),t(3),u(s(16,23,"settings.security.ui_control_desc_2")),t(5),g(" ",p.mainPairing.name),t(3),m("ngbTooltip",s(24,25,p.mainPairing._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired"))("ngClass",T(31,ze,p.mainPairing._isPaired,!p.mainPairing._isPaired)),t(4),u(p.mainPairing._username),t(3),m("checked",!p.isInList(p.mainPairing._username))("disabled",p.clicked),v("aria-label",s(31,27,"plugins.manage.hide_updates")),t(3),L(p.pairings),t(4),m("disabled",p.clicked),t(),g(" ",s(39,29,"form.button_close")," "),t(4),m("disabled",!p.blacklistHasUpdated||p.clicked),t(),_(p.clicked?-1:43),t(),_(p.clicked?44:-1))},dependencies:[U,F,ee,X,re],encapsulation:2})}return i})();var me=le(it(),1);var He=le(et(),1),We=le(tt(),1);var rt=i=>({maxBackupSizeText:i});function st(i,c){if(i&1&&d(0,"input",10),i&2){let e=b(2);m("value",e.selectedBackup.fileName)}}function lt(i,c){if(i&1){let e=k();n(0,"input",12),f("change",function(p){y(e);let x=b(2);return I(x.handleRestoreFileInput(p.target.files))}),a()}}function pt(i,c){if(i&1&&(n(0,"div",4)(1,"div",7),d(2,"i",8),a(),n(3,"ul",9)(4,"li"),l(5),r(6,"translate"),a(),n(7,"li"),l(8),r(9,"translate"),a(),n(10,"li"),l(11),r(12,"translate"),a(),n(13,"li"),l(14),r(15,"translate"),a()(),h(16,st,1,1,"input",10),h(17,lt,1,0,"input",11),a()),i&2){let e=b();t(5),u(s(6,6,"backup.restore_help_one")),t(3),u(s(9,8,"backup.restore_help_two")),t(3),u(z(12,10,"backup.restore_max_size",D(15,rt,e.maxFileSizeText))),t(3),u(s(15,13,"backup.restore_warning")),t(2),_(e.selectedBackup?16:-1),t(),_(e.selectedBackup?-1:17)}}function dt(i,c){if(i&1){let e=k();n(0,"button",18),r(1,"translate"),f("click",function(){y(e);let p=b(2);return I(p.$activeModal.dismiss("Dismiss"))}),l(2),r(3,"translate"),a()}if(i&2){let e=b(2);m("disabled",e.clicked),v("aria-label",s(1,3,"form.button_close")),t(2),g(" ",s(3,5,"form.button_close")," ")}}function ct(i,c){if(i&1){let e=k();n(0,"button",18),r(1,"translate"),f("click",function(){y(e);let p=b(2);return I(p.reopenBackupModal())}),l(2),r(3,"translate"),a()}if(i&2){let e=b(2);m("disabled",e.clicked),v("aria-label",s(1,3,"form.button_back")),t(2),g(" ",s(3,5,"form.button_back")," ")}}function mt(i,c){i&1&&d(0,"i",19)}function ut(i,c){if(i&1&&(n(0,"span"),l(1),a()),i&2){let e=b(3);t(),g("",e.uploadPercent,"% - ")}}function ht(i,c){i&1&&(n(0,"span"),l(1," Extracting Archive"),a())}function _t(i,c){i&1&&(n(0,"span"),l(1),r(2,"translate"),a()),i&2&&(t(),g(" ",s(2,1,"backup.label_uploading")))}function gt(i,c){if(i&1&&(n(0,"span"),h(1,mt,1,0,"i",19),h(2,ut,2,1,"span"),h(3,ht,2,0,"span"),h(4,_t,3,3,"span"),a()),i&2){let e=b(2);t(),_(!e.uploadPercent||e.uploadPercent===100?1:-1),t(),_(e.uploadPercent&&e.uploadPercent!==100?2:-1),t(),_(e.uploadPercent===100?3:-1),t(),_(e.uploadPercent!==100?4:-1)}}function bt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_restore")," ")}function vt(i,c){if(i&1){let e=k();n(0,"div",6)(1,"div",13),h(2,dt,4,7,"button",14),h(3,ct,4,7,"button",14),a(),d(4,"div",15),n(5,"div",16)(6,"button",17),f("click",function(){y(e);let p=b();return I(p.onRestoreBackupClick())}),h(7,gt,5,4,"span"),h(8,bt,2,3),a()()()}if(i&2){let e=b();t(2),_(e.setupWizardRestore?2:-1),t(),_(e.setupWizardRestore?-1:3),t(3),m("disabled",!e.selectedBackup&&!e.selectedFile||e.clicked),t(),_(e.clicked?7:-1),t(),_(e.clicked?-1:8)}}function ft(i,c){if(i&1){let e=k();n(0,"div",6),d(1,"div",13),n(2,"div",15)(3,"button",20),f("click",function(){y(e);let p=b();return I(p.postBackupRestart())}),l(4),r(5,"translate"),a()(),d(6,"div",16),a()}i&2&&(t(4),g(" ",s(5,1,"menu.hbrestart.title")," "))}var Ke=(()=>{class i{$activeModal=C(P);$api=C(M);$modal=C(G);$route=C(O);$toastr=C(A);$translate=C(R);$ws=C(Ve);setupWizardRestore=!1;selectedBackup=null;clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;restoreArchiveType="homebridge";uploadPercent=0;term=new He.Terminal;termTarget;fitAddon=new We.FitAddon;io;constructor(){}ngOnInit(){return S(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=!0,this.restoreInProgress=!0,this.startRestore())})}onRestoreBackupClick(){this.selectedBackup?this.restoreScheduledBackup():this.restoreArchiveType==="homebridge"?this.uploadHomebridgeArchive():this.restoreArchiveType==="hbfx"&&this.uploadHbfxArchive()}uploadHomebridgeArchive(){this.term.reset(),this.clicked=!0;let e=new FormData;e.append("restoreArchive",this.selectedFile,this.selectedFile.name),this.$api.post("/backup/restore",e).subscribe({next:()=>{this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startRestore()},500),this.clicked=!1},error:o=>{console.error(o),this.$toastr.error(o.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error")),this.clicked=!1}})}restoreScheduledBackup(){return S(this,null,function*(){this.term.reset(),this.clicked=!0,this.$api.post(`/backup/scheduled-backups/${this.selectedBackup.id}/restore`,{}).subscribe({next:()=>{this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startRestore()},500),this.clicked=!1},error:e=>{console.error(e),this.$toastr.error(e.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error")),this.clicked=!1}})})}startRestore(){return S(this,null,function*(){this.io.request("do-restore").subscribe({next:()=>{this.restoreInProgress=!1,this.$toastr.success(this.$translate.instant("backup.backup_restored"),this.$translate.instant("toast.title_success")),this.setupWizardRestore&&this.postBackupRestart()},error:e=>{this.restoreFailed=!0,console.error(e),this.$toastr.error(this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})})}uploadHbfxArchive(){this.term.reset(),this.clicked=!0;let e=new FormData;e.append("restoreArchive",this.selectedFile,this.selectedFile.name),this.$api.post("/backup/restore/hbfx",e,{reportProgress:!0,observe:"events"}).subscribe({next:o=>{o.type===ye.UploadProgress?this.uploadPercent=Math.round(100*o.loaded/o.total):o instanceof Ie&&(this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startHbfxRestore()},500),this.clicked=!1)},error:o=>{this.clicked=!1,console.error(o),this.$toastr.error(o.error?.message||this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})}startHbfxRestore(){return S(this,null,function*(){this.io.request("do-restore-hbfx").subscribe({next:()=>{this.restoreInProgress=!1,this.$toastr.success(this.$translate.instant("backup.backup_restored"),this.$translate.instant("toast.title_success"))},error:e=>{this.restoreFailed=!0,console.error(e),this.$toastr.error(this.$translate.instant("backup.restore_failed"),this.$translate.instant("toast.title_error"))}})})}handleRestoreFileInput(e){e.length?(this.selectedFile=e[0],this.selectedFile.name.endsWith(".hbfx")?this.restoreArchiveType="hbfx":this.restoreArchiveType="homebridge"):delete this.selectedFile}postBackupRestart(){this.$api.put("/backup/restart",{}).subscribe({next:()=>{this.$activeModal.close(!0),this.$route.navigate(["/"])},error:()=>{}})}reopenBackupModal(){this.$activeModal.dismiss(),this.$modal.open(se,{size:"lg",backdrop:"static"})}ngOnDestroy(){this.io.end()}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],inputs:{setupWizardRestore:"setupWizardRestore",selectedBackup:"selectedBackup"},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-fw","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-fw","fa-circle-notch","fa-spin"],["type","button","data-bs-dismiss","modal",1,"btn","btn-primary",3,"click"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),h(7,pt,18,17,"div",4),d(8,"div",5),h(9,vt,9,5,"div",6),h(10,ft,7,3,"div",6),a()),o&2&&(t(3),u(s(4,7,"backup.title_backup")),t(2),m("disabled",p.restoreInProgress),v("aria-label",s(6,9,"form.button_close")),t(2),_(!p.restoreStarted&&!p.setupWizardRestore?7:-1),t(),m("hidden",!p.restoreStarted),t(),_(!p.restoreStarted||p.restoreFailed===!0?9:-1),t(),_(!p.restoreInProgress&&p.restoreStarted?10:-1))},dependencies:[F],encapsulation:2})}return i})();var Ct=(i,c)=>({"fa-arrow-right":i,"fa-cog fa-spin":c}),xt=i=>({backupTime:i,dayCount:7}),St=(i,c)=>({"fa-trash":i,"fa-cog fa-spin":c}),yt=(i,c)=>({backupSize:i,maxBackupSizeText:c});function It(i,c){if(i&1&&(n(0,"li",23)(1,"label",28),l(2),r(3,"translate"),a(),n(4,"div",29),d(5,"input",30),r(6,"translate"),a()()),i&2){let e=b();t(2),u(s(3,3,"backup.settings_path")),t(3),m("formControl",e.pathFormControl),v("aria-label",s(6,5,"backup.settings_path"))}}function kt(i,c){if(i&1&&(l(0),r(1,"date"),r(2,"translate")),i&2){let e=b(2);g(" ",z(2,4,"backup.scheduled_backup_time",D(7,xt,z(1,1,e.backupTime,"shortTime")))," ")}}function wt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"backup.scheduled_backup_disabled")," ")}function Et(i,c){if(i&1&&(n(0,"span",33),r(1,"translate"),d(2,"i",40),l(3),a()),i&2){let e=b().$implicit;m("ngbTooltip",z(1,2,"backup.backup_exceeds_max_size",T(5,yt,e.size+"MB",e.maxBackupSizeText))),t(3),g(" ",e.size,"MB ")}}function Bt(i,c){if(i&1&&(n(0,"span"),l(1),a()),i&2){let e=b().$implicit;t(),g(" ",e.size,"MB ")}}function Tt(i,c){if(i&1){let e=k();n(0,"li",9)(1,"span")(2,"span",32),l(3),r(4,"date"),a(),d(5,"br"),n(6,"small",10),l(7),r(8,"date"),h(9,Et,4,8,"span",33),h(10,Bt,2,1,"span"),a()(),n(11,"span",34)(12,"button",35),r(13,"translate"),r(14,"translate"),f("click",function(){let p=y(e).$implicit,x=b(2);return I(x.restore(p))}),d(15,"i",36),a(),n(16,"button",37),r(17,"translate"),r(18,"translate"),f("click",function(){let p=y(e).$implicit,x=b(2);return I(x.download(p))}),d(19,"i",38),a(),n(20,"button",39),r(21,"translate"),r(22,"translate"),f("click",function(){let p=y(e).$implicit,x=b(2);return I(x.delete(p))}),d(23,"i",12),a()()()}if(i&2){let e=c.$implicit,o=b(2);t(2),m("ngbTooltip",e.fileName),t(),g(" ",z(4,15,e.timestamp,"mediumDate")," "),t(4),g(" ",z(8,18,e.timestamp,"shortTime")," \xB7 "),t(2),_(e.size>e.maxBackupSize?9:-1),t(),_(e.size<=e.maxBackupSize?10:-1),t(2),m("disabled",o.clicked||o.deleting||e.size>e.maxBackupSize)("ngbTooltip",s(13,21,"form.button_restore")),v("aria-label",s(14,23,"form.button_restore")),t(4),m("disabled",o.clicked||o.deleting)("ngbTooltip",s(17,25,"form.button_download")),v("aria-label",s(18,27,"form.button_download")),t(4),m("disabled",o.clicked||o.deleting)("ngbTooltip",s(21,29,"form.button_delete")),v("aria-label",s(22,31,"form.button_delete")),t(3),m("ngClass",T(33,St,e.id!==o.deleting,e.id===o.deleting))}}function $t(i,c){if(i&1&&(n(0,"ul",14)(1,"li",15)(2,"h6",16),l(3),r(4,"translate"),a(),n(5,"p",31),h(6,kt,3,9),h(7,wt,2,3),a()(),N(8,Tt,24,36,"li",9,V),a()),i&2){let e=b();t(3),u(s(4,3,"backup.files_auto")),t(3),_(e.currentSettingEnabled&&e.backupTime?6:-1),t(),_(!e.currentSettingEnabled||!e.backupTime?7:-1),t(),L(e.scheduledBackups)}}var se=(()=>{class i{$activeModal=C(P);$api=C(M);$modal=C(G);$router=C(O);$settings=C(j);$toastr=C(A);$translate=C(R);restartToastIsShown=!1;clicked=!1;scheduledBackups=[];backupTime;deleting=null;currentSettingEnabled=!1;currentSettingPath="";enabledFormControl=new E(!1);pathFormControl=new E("");constructor(){}ngOnInit(){this.getScheduledBackups(),this.getNextBackup(),this.currentSettingEnabled=!this.$settings.env.scheduledBackupDisable,this.currentSettingPath=this.$settings.env.scheduledBackupPath,this.enabledFormControl.patchValue(this.currentSettingEnabled),this.pathFormControl.patchValue(this.currentSettingPath),this.enabledFormControl.valueChanges.pipe(w(750)).subscribe(e=>S(this,null,function*(){this.currentSettingEnabled=e,yield this.saveUiSettingChange("scheduledBackupDisable",!this.currentSettingEnabled)})),this.pathFormControl.valueChanges.pipe(w(1500)).subscribe(e=>S(this,null,function*(){this.currentSettingPath=e,yield this.saveUiSettingChange("scheduledBackupPath",this.currentSettingPath)}))}saveUiSettingChange(e,o){return S(this,null,function*(){try{yield B(this.$api.put("/config-editor/ui",{key:e,value:o})),this.showRestartToast()}catch(p){console.error(p),this.$toastr.error(p.message,this.$translate.instant("toast.title_error"))}})}getScheduledBackups(){this.$api.get("/backup/scheduled-backups").subscribe({next:e=>{this.scheduledBackups=e},error:e=>console.error(e)})}getNextBackup(){this.$api.get("/backup/scheduled-backups/next").subscribe({next:e=>{this.backupTime=e.next},error:e=>{console.error(e)}})}download(e){this.$api.get(`/backup/scheduled-backups/${e.id}`,{observe:"response",responseType:"blob"}).subscribe({next:o=>{let p=e.fileName||"homebridge-backup.tar.gz",x=o.body.size;if(x>globalThis.backup.maxBackupSize){let K=this.$translate.instant("backup.backup_exceeds_max_size",{maxBackupSizeText:globalThis.backup.maxBackupSizeText,size:`${(x/1048576).toFixed(1)}MB`});this.$toastr.warning(K,this.$translate.instant("toast.title_warning"))}(0,me.saveAs)(o.body,p)},error:o=>{console.error(o),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})}restore(e){this.$activeModal.close();let o=this.$modal.open(Ke,{size:"lg",backdrop:"static"});o.componentInstance.selectedBackup=e}delete(e){this.deleting=e.id,this.$api.delete(`/backup/scheduled-backups/${e.id}`).subscribe({next:()=>{this.getScheduledBackups(),this.deleting=null},error:o=>{this.deleting=null,console.error(o),this.$toastr.error(this.$translate.instant("backup.backup_delete_failed"),this.$translate.instant("toast.title_error"))}})}onDownloadBackupClick(){return S(this,null,function*(){this.clicked=!0,this.$api.get("/backup/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{let o=e.headers.get("File-Name")||"homebridge-backup.tar.gz";this.clicked=!1;let p=e.body.size;if(p>globalThis.backup.maxBackupSize){let x=this.$translate.instant("backup.backup_exceeds_max_size",{maxBackupSizeText:globalThis.backup.maxBackupSizeText,size:`${(p/1048576).toFixed(1)}MB`});this.$toastr.warning(x,this.$translate.instant("toast.title_warning"))}(0,me.saveAs)(e.body,o)},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})})}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.subscribe(()=>{this.$router.navigate(["/restart"])})}}Date=Date;static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],decls:70,vars:59,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-fw","fa-hard-drive","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"btn","btn-primary","m-0","ms-3",3,"click","disabled"],[1,"fas","fa-fw",3,"ngClass"],[1,"fas","fa-fw","fa-arrow-right"],[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","flex-row","pb-2"],[1,"text-start"],[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","flex-column","flex-md-row","align-items-center"],[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"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["type","text","placeholder","/home/pi/homebridge-backups",1,"form-control","custom-input",3,"formControl"],[1,"small","grey-text","mb-0","text-center"],["container","modal","openDelay","150","triggers","hover",3,"ngbTooltip"],["container","modal","openDelay","150","triggers","hover",1,"red-text",3,"ngbTooltip"],[2,"display","flex","flex-wrap","nowrap"],["placement","bottom","container","modal","openDelay","150","triggers","hover",1,"btn","btn-primary","m-0","ms-3",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-history"],["placement","bottom","container","modal","openDelay","150","triggers","hover",1,"btn","btn-primary","m-0","ms-2",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["placement","bottom","container","modal","openDelay","150","triggers","hover",1,"btn","btn-danger","m-0","ms-2",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-exclamation-circle"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4)(8,"div",5),d(9,"i",6),a(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),a(),n(14,"li"),l(15),r(16,"translate"),a(),n(17,"li"),l(18),r(19,"translate"),a()(),n(20,"ul",8)(21,"li",9)(22,"div")(23,"span"),l(24),r(25,"translate"),a(),d(26,"br"),n(27,"small",10),l(28),r(29,"translate"),a()(),n(30,"button",11),r(31,"translate"),f("click",function(){return p.onDownloadBackupClick()}),d(32,"i",12),a()(),n(33,"li",9)(34,"div")(35,"span"),l(36),r(37,"translate"),a(),d(38,"br"),n(39,"small",10),l(40),r(41,"translate"),a()(),n(42,"button",11),r(43,"translate"),f("click",function(){return p.restore(null)}),d(44,"i",13),a()()(),n(45,"ul",14)(46,"li",15)(47,"h6",16),l(48),r(49,"translate"),a(),n(50,"p",17),l(51),r(52,"translate"),a()(),n(53,"li",18)(54,"span",19),l(55),r(56,"translate"),a(),n(57,"div",20),d(58,"input",21),r(59,"translate"),d(60,"label",22),a()(),h(61,It,7,7,"li",23),a(),h(62,$t,10,5,"ul",14),a(),n(63,"div",24),d(64,"div",19),n(65,"div",25)(66,"button",26),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),l(67),r(68,"translate"),a()(),d(69,"div",27),a()()),o&2&&(t(3),u(s(4,24,"backup.title_backup")),t(2),m("disabled",p.clicked||p.deleting),v("aria-label",s(6,26,"form.button_close")),t(7),u(s(13,28,"backup.backup_help_one")),t(3),u(s(16,30,"backup.backup_help_two")),t(3),u(s(19,32,"backup.backup_warning")),t(6),u(s(25,34,"backup.backup_now")),t(4),u(s(29,36,"backup.backup_now_desc")),t(2),m("disabled",p.clicked),v("aria-label",s(31,38,"backup.backup_now")),t(2),m("ngClass",T(56,Ct,!p.clicked,p.clicked)),t(4),u(s(37,40,"backup.restore_now")),t(4),u(s(41,42,"backup.restore_now_desc")),t(2),m("disabled",p.clicked),v("aria-label",s(43,44,"backup.restore_now")),t(6),u(s(49,46,"backup.settings_title")),t(3),u(s(52,48,"form.auto_save")),t(4),u(s(56,50,"backup.settings_enable")),t(3),m("formControl",p.enabledFormControl),v("aria-label",s(59,52,"backup.settings_enable")),t(3),_(p.currentSettingEnabled?61:-1),t(),_(p.scheduledBackups.length?62:-1),t(4),m("disabled",p.clicked||p.deleting),t(),g(" ",s(68,54,"form.button_close")," "))},dependencies:[re,U,Se,F,te,ne,Y,Z,ae],encapsulation:2})}return i})();function Ft(i,c){i&1&&(n(0,"div",12),d(1,"i",13),a(),n(2,"p",14),l(3),r(4,"translate"),a()),i&2&&(t(3),u(s(4,1,"reset.no_accessories")))}function Pt(i,c){i&1&&(n(0,"div",12),d(1,"i",15),a(),n(2,"ul",16)(3,"li"),l(4),r(5,"translate"),a(),n(6,"li"),l(7),r(8,"translate"),a(),n(9,"li"),l(10),r(11,"translate"),a()(),n(12,"ngb-alert",17)(13,"p",18),l(14),r(15,"translate"),a()()),i&2&&(t(4),u(s(5,5,"reset.accessory_all.list_1")),t(3),u(s(8,7,"reset.accessory_all.list_2")),t(3),u(s(11,9,"reset.accessory_all.list_3")),t(2),m("dismissible",!1),t(2),u(s(15,11,"reset.action_is_irreversible")))}function Rt(i,c){if(i&1){let e=k();n(0,"button",19),r(1,"translate"),f("click",function(){y(e);let p=b();return I(p.$activeModal.dismiss("Dismiss"))}),l(2),r(3,"translate"),a()}if(i&2){let e=b();m("disabled",e.clicked),v("aria-label",s(1,3,"form.button_close")),t(2),g(" ",s(3,5,"form.button_close")," ")}}function At(i,c){if(i&1){let e=k();n(0,"button",20),r(1,"translate"),f("click",function(){y(e);let p=b();return I(p.$activeModal.dismiss("Dismiss"))}),l(2),r(3,"translate"),a()}i&2&&(v("aria-label",s(1,2,"form.button_close")),t(2),g(" ",s(3,4,"form.button_close")," "))}function Mt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_remove")," ")}function Dt(i,c){i&1&&d(0,"i",22)}function Vt(i,c){if(i&1){let e=k();n(0,"button",21),f("click",function(){y(e);let p=b();return I(p.onResetCachedAccessoriesClick())}),h(1,Mt,2,3),h(2,Dt,1,0,"i",22),a()}if(i&2){let e=b();m("disabled",e.clicked),t(),_(e.clicked?-1:1),t(),_(e.clicked?2:-1)}}var je=(()=>{class i{$activeModal=C(P);$api=C(M);$router=C(O);$toastr=C(A);$translate=C(R);clicked=!1;cachedAccessories=[];constructor(){}ngOnInit(){this.loadCachedAccessories()}loadCachedAccessories(){return S(this,null,function*(){try{this.cachedAccessories=yield B(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()}})}onResetCachedAccessoriesClick(){return this.clicked=!0,this.$api.put("/server/reset-cached-accessories",{}).subscribe({next:()=>{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}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.failed_to_reset"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,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-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","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-fw","fa-spinner","fa-pulse"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4),h(8,Ft,5,3),h(9,Pt,16,13),a(),n(10,"div",5)(11,"div",6),h(12,Rt,4,7,"button",7),a(),n(13,"div",8),h(14,At,4,6,"button",9),a(),n(15,"div",10),h(16,Vt,3,3,"button",11),a()()()),o&2&&(t(3),u(s(4,8,"reset.accessory_all.title")),t(2),m("disabled",p.clicked),v("aria-label",s(6,10,"form.button_close")),t(3),_(p.cachedAccessories.length===0?8:-1),t(),_(p.cachedAccessories.length>0?9:-1),t(3),_(p.cachedAccessories.length>0?12:-1),t(2),_(p.cachedAccessories.length===0?14:-1),t(2),_(p.cachedAccessories.length>0?16:-1))},dependencies:[oe,F],encapsulation:2})}return i})();var Nt=(i,c)=>({"green-text":i,"grey-text":c}),Lt=(i,c)=>({"btn-danger":i,"btn-elegant":c}),Ot=(i,c,e)=>({"fa-broom":i,"fa-undo":c,"fa-spinner fa-pulse":e});function zt(i,c){i&1&&(n(0,"div",12),d(1,"i",13),a(),n(2,"p",14),l(3),r(4,"translate"),a()),i&2&&(t(3),u(s(4,1,"reset.bridge_accessories.empty")))}function Ut(i,c){if(i&1){let e=k();n(0,"li",18)(1,"span"),l(2),d(3,"br"),n(4,"small",19),d(5,"i",20),l(6),r(7,"translate"),n(8,"span",21),l(9),a()()(),n(10,"button",22),r(11,"translate"),f("click",function(){let p=y(e).$implicit,x=b(2);return I(x.toggleList(p._id))}),d(12,"i",23),a()()}if(i&2){let e=c.$implicit,o=b(2);t(2),g(" ",e.name," "),t(3),m("ngClass",T(12,Nt,e._isPaired,!e._isPaired)),t(),g(" ",s(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),m("disabled",o.clicked)("ngClass",T(15,Lt,!o.toDelete.includes(e._id),o.toDelete.includes(e._id))),v("aria-label",s(11,10,"form.button_delete")),t(2),m("ngClass",J(18,Ot,!o.toDelete.includes(e._id),o.toDelete.includes(e._id)&&!o.clicked,o.toDelete.includes(e._id)&&o.clicked))}}function Ht(i,c){if(i&1&&(n(0,"div",12),d(1,"i",15),a(),n(2,"ul",16)(3,"li"),l(4),r(5,"translate"),a(),n(6,"li"),l(7),r(8,"translate"),a(),n(9,"li"),l(10),r(11,"translate"),a()(),n(12,"ul",17),N(13,Ut,13,22,"li",18,V),a()),i&2){let e=b();t(4),u(s(5,3,"reset.bridge_accessories.list_1")),t(3),u(s(8,5,"reset.clear_cache_single.list_3")),t(3),u(s(11,7,"reset.bridge_accessories.list_2")),t(3),L(e.pairings)}}function Wt(i,c){if(i&1){let e=k();n(0,"button",24),f("click",function(){y(e);let p=b();return I(p.$activeModal.dismiss("Dismiss"))}),l(1),r(2,"translate"),a()}if(i&2){let e=b();m("disabled",e.clicked),t(),g(" ",s(2,2,"form.button_close")," ")}}function Kt(i,c){if(i&1){let e=k();n(0,"button",25),f("click",function(){y(e);let p=b();return I(p.$activeModal.dismiss("Dismiss"))}),l(1),r(2,"translate"),a()}i&2&&(t(),g(" ",s(2,1,"form.button_close")," "))}function Gt(i,c){if(i&1&&l(0),i&2){let e=b(3);g(" (",e.toDelete.length,") ")}}function jt(i,c){if(i&1&&(l(0),r(1,"translate"),h(2,Gt,1,1)),i&2){let e=b(2);g(" ",s(1,2,"form.button_remove")," "),t(2),_(e.toDelete.length>0?2:-1)}}function qt(i,c){i&1&&d(0,"i",27)}function Qt(i,c){if(i&1){let e=k();n(0,"button",26),f("click",function(){y(e);let p=b();return I(p.cleanBridges())}),h(1,jt,3,4),h(2,qt,1,0,"i",27),a()}if(i&2){let e=b();m("disabled",!e.toDelete.length||e.clicked),t(),_(e.clicked?-1:1),t(),_(e.clicked?2:-1)}}var qe=(()=>{class i{$activeModal=C(P);$api=C(M);$router=C(O);$toastr=C(A);$translate=C(R);clicked=!1;pairings=[];toDelete=[];constructor(){}ngOnInit(){this.loadPairings()}loadPairings(){return S(this,null,function*(){try{this.pairings=(yield B(this.$api.get("/server/pairings"))).filter(e=>e._category==="bridge"&&!e._main).sort((e,o)=>e.name.localeCompare(o.name))}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()}})}toggleList(e){this.toDelete.includes(e)?this.toDelete=this.toDelete.filter(o=>o!==e):this.toDelete.push(e)}cleanBridges(){return this.clicked=!0,this.$api.delete("/server/pairings/accessories",{body:this.toDelete.map(e=>({id:e}))}).subscribe({next:()=>{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}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,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-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-fw","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,"grey-text"],[1,"fas","fa-fw","fa-link",3,"ngClass"],[1,"font-monospace"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["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-fw","fa-spinner","fa-pulse"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4),h(8,zt,5,3),h(9,Ht,15,9),a(),n(10,"div",5)(11,"div",6),h(12,Wt,3,4,"button",7),a(),n(13,"div",8),h(14,Kt,3,3,"button",9),a(),n(15,"div",10),h(16,Qt,3,3,"button",11),a()()()),o&2&&(t(3),u(s(4,8,"reset.bridge_accessories.title")),t(2),m("disabled",p.clicked),v("aria-label",s(6,10,"form.button_close")),t(3),_(p.pairings.length===0?8:-1),t(),_(p.pairings.length>0?9:-1),t(3),_(p.pairings.length>0?12:-1),t(2),_(p.pairings.length===0?14:-1),t(2),_(p.pairings.length>0?16:-1))},dependencies:[U,F],encapsulation:2})}return i})();function Jt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_reset")," ")}function Xt(i,c){i&1&&d(0,"i",16)}var Qe=(()=>{class i{$activeModal=C(P);$api=C(M);$route=C(O);$toastr=C(A);$translate=C(R);clicked;constructor(){}onResetHomebridgeAccessoryClick(){return this.clicked=!0,this.$api.put("/server/reset-homebridge-accessory",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_reset"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$route.navigate(["/restart"])},error:e=>{console.error(e),this.$toastr.error(this.$translate.instant("reset.failed_to_reset"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,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-fw","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-fw","fa-spinner","fa-pulse"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4)(8,"div",5),d(9,"i",6),a(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),a(),n(14,"li"),l(15),r(16,"translate"),a(),n(17,"li"),l(18),r(19,"translate"),a(),n(20,"li"),l(21),r(22,"translate"),a()(),n(23,"ngb-alert",8)(24,"p",9),l(25),r(26,"translate"),a()()(),n(27,"div",10)(28,"div",11)(29,"button",12),r(30,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),l(31),r(32,"translate"),a()(),d(33,"div",13),n(34,"div",14)(35,"button",15),f("click",function(){return p.onResetHomebridgeAccessoryClick()}),h(36,Jt,2,3),h(37,Xt,1,0,"i",16),a()()()()),o&2&&(t(3),u(s(4,15,"reset.bridge_all.title")),t(2),m("disabled",p.clicked),v("aria-label",s(6,17,"form.button_close")),t(7),u(s(13,19,"reset.bridge_all.list_1")),t(3),u(s(16,21,"reset.bridge_all.list_2")),t(3),u(s(19,23,"reset.bridge_all.list_3")),t(3),u(s(22,25,"reset.bridge_all.list_4")),t(2),m("dismissible",!1),t(2),u(s(26,27,"reset.action_is_irreversible")),t(4),m("disabled",p.clicked),v("aria-label",s(30,29,"form.button_close")),t(2),g(" ",s(32,31,"form.button_close")," "),t(4),m("disabled",p.clicked),t(),_(p.clicked?-1:36),t(),_(p.clicked?37:-1))},dependencies:[oe,F],encapsulation:2})}return i})();var ue=(i,c)=>({"green-text":i,"grey-text":c}),he=(i,c)=>({"btn-danger":i,"btn-elegant":c}),Je=(i,c,e)=>({"fa-refresh":i,"fa-undo":c,"fa-spinner fa-pulse":e}),Yt=(i,c,e)=>({"fa-trash":i,"fa-undo":c,"fa-spinner fa-pulse":e});function Zt(i,c){i&1&&(n(0,"div",12),d(1,"i",13),a(),n(2,"p",14),l(3),r(4,"translate"),a()),i&2&&(t(3),u(s(4,1,"reset.bridges.empty")))}function ei(i,c){if(i&1){let e=k();n(0,"li",20)(1,"span"),l(2),d(3,"br"),n(4,"small",21),d(5,"i",22),l(6),r(7,"translate"),n(8,"span",23),l(9),a(),l(10),r(11,"titlecase"),a()(),n(12,"button",24),r(13,"translate"),f("click",function(){let p=y(e).$implicit,x=b(3);return I(x.toggleList(p._id,!1))}),d(14,"i",25),a()()}if(i&2){let e=c.$implicit,o=b(3);t(2),g(" ",e.name," "),t(3),m("ngClass",T(15,ue,e._isPaired,!e._isPaired)),t(),g(" ",s(7,9,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),g(" \xB7 ",e._main?"Homebridge":s(11,11,e._category)," "),t(2),m("disabled",o.clicked)("ngClass",T(18,he,!o.isInList(e._id),o.isInList(e._id))),v("aria-label",s(13,13,"form.button_unpair")),t(2),m("ngClass",J(21,Je,!o.isInList(e._id),o.isInList(e._id)&&!o.clicked,o.isInList(e._id)&&o.clicked))}}function ti(i,c){if(i&1&&(n(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),a(),n(5,"p",19),l(6),r(7,"translate"),a()(),N(8,ei,15,25,"li",20,V),a()),i&2){let e=b(2);t(3),u(s(4,2,"reset.bridge_ind.head_non_child")),t(3),u(s(7,4,"reset.bridge_ind.desc_non_child")),t(2),L(e.pairingsNonChild)}}function ii(i,c){if(i&1){let e=k();n(0,"li",20)(1,"span"),l(2),d(3,"br"),n(4,"small",21),d(5,"i",22),l(6),r(7,"translate"),n(8,"span",23),l(9),a()()(),n(10,"button",24),r(11,"translate"),f("click",function(){let p=y(e).$implicit,x=b(3);return I(x.toggleList(p._id,!0))}),d(12,"i",25),a()()}if(i&2){let e=c.$implicit,o=b(3);t(2),g(" ",e.name," "),t(3),m("ngClass",T(12,ue,e._isPaired,!e._isPaired)),t(),g(" ",s(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),m("disabled",o.clicked)("ngClass",T(15,he,!o.isInList(e._id),o.isInList(e._id))),v("aria-label",s(11,10,"form.button_unpair")),t(2),m("ngClass",J(18,Je,!o.isInList(e._id),o.isInList(e._id)&&!o.clicked,o.isInList(e._id)&&o.clicked))}}function ni(i,c){if(i&1&&(n(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),a(),n(5,"p",19),l(6),r(7,"translate"),a()(),N(8,ii,13,22,"li",20,V),a()),i&2){let e=b(2);t(3),u(s(4,2,"reset.bridge_ind.head_child_active")),t(3),u(s(7,4,"reset.bridge_ind.desc_child_active")),t(2),L(e.pairingsChildActive)}}function ai(i,c){if(i&1){let e=k();n(0,"li",20)(1,"span"),l(2),d(3,"br"),n(4,"small",21),d(5,"i",22),l(6),r(7,"translate"),n(8,"span",23),l(9),a()()(),n(10,"button",24),r(11,"translate"),f("click",function(){let p=y(e).$implicit,x=b(3);return I(x.toggleList(p._id,!1))}),d(12,"i",25),a()()}if(i&2){let e=c.$implicit,o=b(3);t(2),g(" ",e.name," "),t(3),m("ngClass",T(12,ue,e._isPaired,!e._isPaired)),t(),g(" ",s(7,8,e._isPaired?"status.widget.qr_paired":"status.widget.qr_unpaired")," \xB7 "),t(3),u(e._username),t(),m("disabled",o.clicked)("ngClass",T(15,he,!o.isInList(e._id),o.isInList(e._id))),v("aria-label",s(11,10,"form.button_unpair")),t(2),m("ngClass",J(18,Yt,!o.isInList(e._id),o.isInList(e._id)&&!o.clicked,o.isInList(e._id)&&o.clicked))}}function oi(i,c){if(i&1&&(n(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),a(),n(5,"p",19),l(6),r(7,"translate"),a()(),N(8,ai,13,22,"li",20,V),a()),i&2){let e=b(2);t(3),u(s(4,2,"reset.bridge_ind.head_child_stale")),t(3),u(s(7,4,"reset.bridge_ind.desc_child_stale")),t(2),L(e.pairingsChildStale)}}function ri(i,c){if(i&1&&(n(0,"div",12),d(1,"i",15),a(),h(2,ti,10,6,"ul",16),h(3,ni,10,6,"ul",16),h(4,oi,10,6,"ul",16)),i&2){let e=b();t(2),_(e.pairingsNonChild.length>0?2:-1),t(),_(e.pairingsChildActive.length>0?3:-1),t(),_(e.pairingsChildStale.length>0?4:-1)}}function si(i,c){if(i&1){let e=k();n(0,"button",26),f("click",function(){y(e);let p=b();return I(p.$activeModal.dismiss("Dismiss"))}),l(1),r(2,"translate"),a()}if(i&2){let e=b();m("disabled",e.clicked),t(),g(" ",s(2,2,"form.button_close")," ")}}function li(i,c){if(i&1){let e=k();n(0,"button",27),f("click",function(){y(e);let p=b();return I(p.$activeModal.dismiss("Dismiss"))}),l(1),r(2,"translate"),a()}i&2&&(t(),g(" ",s(2,1,"form.button_close")," "))}function pi(i,c){if(i&1&&l(0),i&2){let e=b(3);g(" (",e.toDelete.length,") ")}}function di(i,c){if(i&1&&(l(0),r(1,"translate"),h(2,pi,1,1)),i&2){let e=b(2);g(" ",s(1,2,"form.button_reset")," "),t(2),_(e.toDelete.length>0?2:-1)}}function ci(i,c){i&1&&d(0,"i",29)}function mi(i,c){if(i&1){let e=k();n(0,"button",28),f("click",function(){y(e);let p=b();return I(p.removeBridges())}),h(1,di,3,4),h(2,ci,1,0,"i",29),a()}if(i&2){let e=b();m("disabled",!e.toDelete.length||e.clicked),t(),_(e.clicked?-1:1),t(),_(e.clicked?2:-1)}}var Xe=(()=>{class i{$activeModal=C(P);$api=C(M);$router=C(O);$toastr=C(A);$translate=C(R);clicked=!1;pairingsNonChild=[];pairingsChildActive=[];pairingsChildStale=[];toDelete=[];constructor(){}ngOnInit(){this.loadPairings()}loadPairings(){return S(this,null,function*(){try{let e=(yield B(this.$api.get("/server/pairings"))).filter(o=>!o._main).sort((o,p)=>o.name.localeCompare(p.name));this.pairingsChildActive=e.filter(o=>o._category==="bridge"&&!o._couldBeStale),this.pairingsNonChild=e.filter(o=>o._category!=="bridge"),this.pairingsChildStale=e.filter(o=>o._category==="bridge"&&o._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()}})}toggleList(e,o=!1){this.toDelete.some(p=>p.id===e)?this.toDelete=this.toDelete.filter(p=>p.id!==e):this.toDelete.push({id:e,resetPairingInfo:o})}isInList(e){return this.toDelete.some(o=>o.id===e)}removeBridges(){return this.clicked=!0,this.$api.delete("/server/pairings",{body:this.toDelete}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.bridge_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.bridge_ind.fail"),this.$translate.instant("toast.title_error"))}})}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,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-fw","fa-circle-check","primary-text",2,"font-size","75px"],[1,"text-center","mb-0"],[1,"fas","fa-fw","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,"grey-text"],[1,"fas","fa-fw","fa-link",3,"ngClass"],[1,"font-monospace"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas","fa-fw",3,"ngClass"],["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-fw","fa-spinner","fa-pulse"]],template:function(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4),h(8,Zt,5,3),h(9,ri,5,3),a(),n(10,"div",5)(11,"div",6),h(12,si,3,4,"button",7),a(),n(13,"div",8),h(14,li,3,3,"button",9),a(),n(15,"div",10),h(16,mi,3,3,"button",11),a()()()),o&2&&(t(3),u(s(4,8,"reset.bridge_ind.title")),t(2),m("disabled",p.clicked),v("aria-label",s(6,10,"form.button_close")),t(3),_(p.pairingsChildActive.length===0&&p.pairingsChildStale.length===0&&p.pairingsNonChild.length===0?8:-1),t(),_(p.pairingsChildActive.length>0||p.pairingsChildStale.length>0||p.pairingsNonChild.length>0?9:-1),t(3),_(p.pairingsChildActive.length>0||p.pairingsChildStale.length>0||p.pairingsNonChild.length>0?12:-1),t(2),_(p.pairingsChildActive.length===0&&p.pairingsChildStale.length===0&&p.pairingsNonChild.length===0?14:-1),t(2),_(p.pairingsChildActive.length>0||p.pairingsChildStale.length>0||p.pairingsNonChild.length>0?16:-1))},dependencies:[U,X,F],encapsulation:2})}return i})();function ui(i,c){if(i&1){let e=k();n(0,"li",9)(1,"div")(2,"span",16),l(3),a(),d(4,"br"),n(5,"span",17),l(6),a()(),n(7,"span")(8,"input",18),xe("ngModelChange",function(p){let x=y(e).$implicit;return Ce(x.selected,p)||(x.selected=p),I(p)}),f("ngModelChange",function(){y(e);let p=b();return I(p.onAdapterSelectionChange())}),a(),d(9,"label",19),a()()}if(i&2){let e=c.$implicit;t(3),u(e.ip4||e.ip6),t(3),u(e.iface),t(2),m("id","adapter"+e.iface),fe("ngModel",e.selected),t(),m("for","adapter"+e.iface)}}var Ye=(()=>{class i{$activeModal=C(P);adaptersAvailable=[];adaptersOriginal=[];isUnchanged=!0;constructor(){}ngOnInit(){this.adaptersOriginal=this.adaptersAvailable.filter(e=>e.selected).map(e=>e.iface)}onAdapterSelectionChange(){this.isUnchanged=this.adaptersOriginal.length===this.adaptersAvailable.filter(e=>e.selected).length&&this.adaptersOriginal.every(e=>this.adaptersAvailable.some(o=>o.iface===e&&o.selected))}submit(){this.$activeModal.close(this.adaptersAvailable.filter(e=>e.selected).map(e=>e.iface))}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],inputs:{adaptersAvailable:"adaptersAvailable"},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-fw","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(o,p){o&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),a(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),a()(),n(7,"div",4)(8,"div",5),d(9,"i",6),a(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),a()(),n(14,"ul",8),N(15,ui,10,5,"li",9,V),a()(),n(17,"div",10)(18,"div",11)(19,"button",12),r(20,"translate"),f("click",function(){return p.$activeModal.dismiss("Dismiss")}),l(21),r(22,"translate"),a()(),d(23,"div",13),n(24,"div",14)(25,"button",15),f("click",function(){return p.submit()}),l(26),r(27,"translate"),a()()()()),o&2&&(t(3),u(s(4,7,"settings.network.title_network_interfaces")),t(2),v("aria-label",s(6,9,"form.button_close")),t(7),u(s(13,11,"settings.network.message_network_interface")),t(3),L(p.adaptersAvailable),t(4),v("aria-label",s(20,13,"form.button_close")),t(2),g(" ",s(22,15,"form.button_close")," "),t(4),m("disabled",p.isUnchanged),t(),g(" ",s(27,17,"form.button_save")," "))},dependencies:[ee,Y,Z,Ee,F],encapsulation:2})}return i})();var hi=["wallpaperInput"],_i=i=>({maxFileSizeText:i});function gi(i,c){if(i&1){let e=k();n(0,"div",10),d(1,"img",20),n(2,"button",21),r(3,"translate"),f("click",function(){y(e);let p=b();return I(p.clearWallpaper())}),d(4,"i",22),a()()}if(i&2){let e=b();t(),m("src",e.wallpaperUrl,_e),t(),v("aria-label",s(3,2,"form.button_delete"))}}function bi(i,c){i&1&&d(0,"div",11)}var Ze=(()=>{class i{$activeModal=C(P);$api=C(M);$modal=C(G);$settings=C(j);$toastr=C(A);$translate=C(R);clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;wallpaperUrl=null;originalWallpaperUrl=null;wallpaperInput;constructor(){}ngOnInit(){this.$settings.env.customWallpaperHash&&(this.wallpaperUrl=`${De.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`,this.originalWallpaperUrl=this.wallpaperUrl)}onFileChange(e){if(e.length){this.selectedFile=e[0];let o=new FileReader;o.onload=p=>{this.wallpaperUrl=p.target.result},o.readAsDataURL(this.selectedFile)}else delete this.selectedFile,this.wallpaperUrl=this.originalWallpaperUrl}saveWallpaper(){if(this.clicked=!0,this.selectedFile){let e=new FormData;e.append("wallpaper",this.selectedFile,this.selectedFile.name),this.$api.post("/server/wallpaper",e).subscribe({next:()=>{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"))},error:o=>{console.error(o),this.$toastr.error(o.error?.message,this.$translate.instant("toast.title_error")),this.clicked=!1}})}else this.$api.delete("/server/wallpaper").subscribe({next:()=>{this.$activeModal.close()},error:e=>{console.error(e),this.$toastr.error(e.error?.message,this.$translate.instant("toast.title_error")),this.clicked=!1}})}clearWallpaper(){this.selectedFile=null,this.wallpaperUrl=this.wallpaperUrl===this.originalWallpaperUrl?null:this.originalWallpaperUrl,this.wallpaperInput.nativeElement.value=""}cancel(){this.$activeModal.dismiss()}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],viewQuery:function(o,p){if(o&1&&ge(hi,5),o&2){let x;be(x=ve())&&(p.wallpaperInput=x.first)}},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-fw","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-fw","fa-trash"]],template:function(o,p){if(o&1){let x=k();n(0,"div",1)(1,"div",2)(2,"h5",3),l(3),r(4,"translate"),a(),n(5,"button",4),r(6,"translate"),f("click",function(){return y(x),I(p.$activeModal.dismiss("Dismiss"))}),a()(),n(7,"div",5)(8,"div",6),d(9,"i",7),a(),n(10,"ul",8)(11,"li"),l(12),r(13,"translate"),a(),n(14,"li"),l(15),r(16,"translate"),a(),n(17,"li"),l(18),r(19,"translate"),a()(),n(20,"div",9),h(21,gi,5,4,"div",10)(22,bi,1,0,"div",11),a(),n(23,"div",12)(24,"input",13,0),f("change",function(H){return y(x),I(p.onFileChange(H.target.files))}),a()()(),n(26,"div",14)(27,"div",15)(28,"button",16),f("click",function(){return y(x),I(p.cancel())}),l(29),r(30,"translate"),a()(),d(31,"div",17),n(32,"div",18)(33,"button",19),f("click",function(){return y(x),I(p.saveWallpaper())}),l(34),r(35,"translate"),a()()()()}o&2&&(t(3),u(s(4,11,"settings.display.wallpaper")),t(2),m("disabled",p.clicked),v("aria-label",s(6,13,"form.button_close")),t(7),u(s(13,15,"settings.display.wallpaper_intro")),t(3),u(z(16,17,"settings.display.wallpaper_rule",D(26,_i,p.maxFileSizeText))),t(3),u(s(19,20,"settings.display.wallpaper_rule2")),t(3),_(p.wallpaperUrl?21:22),t(7),m("disabled",p.clicked),t(),g(" ",s(30,22,"form.button_close")," "),t(4),m("disabled",p.wallpaperUrl===p.originalWallpaperUrl||p.clicked),t(),g(" ",s(35,24,"form.button_save")," "))},dependencies:[te,F],styles:[".anim[_ngcontent-%COMP%]{-webkit-animation:_ngcontent-%COMP%_gradient 20s ease infinite;-moz-animation:gradient 20s ease infinite;-o-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 i})();var Q=(i,c)=>({"fa-chevron-down":i,"fa-chevron-right":c}),q=i=>({"is-invalid":i}),vi=i=>({link:i}),fi=(i,c)=>({"badge-danger":i,"badge-info":c});function Ci(i,c){i&1&&d(0,"app-spinner")}function xi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Si(i,c){if(i&1){let e=k();n(0,"ul",5)(1,"li",12)(2,"span"),l(3),r(4,"translate"),a(),n(5,"div",13),d(6,"input",14),r(7,"translate"),h(8,xi,1,1,"i",15),a()(),n(9,"li",16)(10,"span",17),l(11),r(12,"translate"),a(),n(13,"button",18),r(14,"translate"),f("click",function(){y(e);let p=b();return I(p.openUiSettings())}),d(15,"i",19),a()(),n(16,"li",16)(17,"span",17),l(18),r(19,"translate"),a(),n(20,"button",18),r(21,"translate"),f("click",function(){y(e);let p=b();return I(p.openBackupModal())}),d(22,"i",19),a()(),n(23,"li",16)(24,"span",17),l(25),r(26,"translate"),a(),n(27,"a",20),r(28,"translate"),d(29,"i",19),a()()()}if(i&2){let e=b();t(3),u(s(4,11,"settings.name")),t(3),m("formControl",e.hbNameFormControl)("ngClass",D(27,q,e.hbNameIsInvalid)),v("aria-label",s(7,13,"settings.name")),t(2),_(e.hbNameIsSaving?8:-1),t(3),u(s(12,15,"menu.label_settings_advanced")),t(2),v("aria-label",s(14,17,"menu.label_settings_advanced")),t(5),g(" ",s(19,19,"backup.title_backup")," "),t(2),v("aria-label",s(21,21,"backup.title_backup")),t(5),g(" ",s(26,23,"menu.tooltip_user_accounts")," "),t(2),v("aria-label",s(28,25,"menu.tooltip_user_accounts"))}}function yi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ii(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function ki(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function wi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ei(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Bi(i,c){if(i&1){let e=k();n(0,"ul",6)(1,"li",12),l(2),r(3,"translate"),n(4,"div",21)(5,"select",22)(6,"option",23),l(7),r(8,"translate"),a(),n(9,"option",24),l(10,"Bulgarian (bg)"),a(),n(11,"option",25),l(12,"Catalan (ca)"),a(),n(13,"option",26),l(14,"Chinese - Simplified (zh-CN)"),a(),n(15,"option",27),l(16,"Chinese - Traditional (zh-TW)"),a(),n(17,"option",28),l(18,"Czech (cs)"),a(),n(19,"option",29),l(20,"Dutch (nl)"),a(),n(21,"option",30),l(22,"English (en)"),a(),n(23,"option",31),l(24,"Finnish (fi)"),a(),n(25,"option",32),l(26,"French (fr)"),a(),n(27,"option",33),l(28,"German (de)"),a(),n(29,"option",34),l(30,"Hebrew (he)"),a(),n(31,"option",35),l(32,"Hungarian (hu)"),a(),n(33,"option",36),l(34,"Indonesian (id)"),a(),n(35,"option",37),l(36,"Italian (it)"),a(),n(37,"option",38),l(38,"Japanese (ja)"),a(),n(39,"option",39),l(40,"Korean (ko)"),a(),n(41,"option",40),l(42,"Macedonian (mk)"),a(),n(43,"option",41),l(44,"Norwegian (no)"),a(),n(45,"option",42),l(46,"Polish (pl)"),a(),n(47,"option",43),l(48,"Portuguese (Brazil)"),a(),n(49,"option",44),l(50,"Portuguese (Portugal)"),a(),n(51,"option",45),l(52,"Russian (ru)"),a(),n(53,"option",46),l(54,"Slovenian (sl)"),a(),n(55,"option",47),l(56,"Spanish (es)"),a(),n(57,"option",48),l(58,"Swedish (sv)"),a(),n(59,"option",49),l(60,"Thai (th)"),a(),n(61,"option",50),l(62,"Turkish (tr)"),a(),n(63,"option",51),l(64,"Ukrainian (uk)"),a()(),h(65,yi,1,1,"i",15),a()(),n(66,"li",12),l(67),r(68,"translate"),n(69,"div",21)(70,"select",22)(71,"option",52),l(72),r(73,"translate"),a(),n(74,"option",53),l(75),r(76,"translate"),a(),n(77,"option",54),l(78),r(79,"translate"),a(),n(80,"option",55),l(81),r(82,"translate"),a(),n(83,"option",56),l(84),r(85,"translate"),a(),n(86,"option",57),l(87),r(88,"translate"),a(),n(89,"option",58),l(90),r(91,"translate"),a(),n(92,"option",59),l(93),r(94,"translate"),a(),n(95,"option",60),l(96),r(97,"translate"),a(),n(98,"option",61),l(99),r(100,"translate"),a(),n(101,"option",62),l(102),r(103,"translate"),a(),n(104,"option",63),l(105),r(106,"translate"),a(),n(107,"option",64),l(108),r(109,"translate"),a()(),h(110,Ii,1,1,"i",15),a()(),n(111,"li",12),l(112),r(113,"translate"),n(114,"div",21)(115,"select",22)(116,"option",23),l(117),r(118,"translate"),a(),n(119,"option",65),l(120),r(121,"translate"),a(),n(122,"option",66),l(123),r(124,"translate"),a()(),h(125,ki,1,1,"i",15),a()(),n(126,"li",12),l(127),r(128,"translate"),n(129,"div",21)(130,"select",22)(131,"option",67),l(132),r(133,"translate"),a(),n(134,"option",68),l(135),r(136,"translate"),a()(),h(137,wi,1,1,"i",15),a()(),n(138,"li",12),l(139),r(140,"translate"),n(141,"div",21)(142,"select",22)(143,"option",69),l(144),r(145,"translate"),a(),n(146,"option",70),l(147),r(148,"translate"),a()(),h(149,Ei,1,1,"i",15),a()(),n(150,"li",16)(151,"span",17),l(152),r(153,"translate"),a(),n(154,"button",18),r(155,"translate"),f("click",function(){y(e);let p=b();return I(p.openWallpaperModal())}),d(156,"i",19),a()()()}if(i&2){let e=b();t(2),g(" ",s(3,38,"settings.display.lang")," "),t(3),m("formControl",e.uiLangFormControl),t(2),u(s(8,40,"form.select.auto")),t(58),_(e.uiLangIsSaving?65:-1),t(2),g(" ",s(68,42,"settings.display.theme")," "),t(3),m("formControl",e.uiThemeFormControl),t(2),u(s(73,44,"settings.display.orange")),t(3),u(s(76,46,"settings.display.red")),t(3),u(s(79,48,"settings.display.pink")),t(3),u(s(82,50,"settings.display.purple")),t(3),u(s(85,52,"settings.display.deep_purple")),t(3),u(s(88,54,"settings.display.indigo")),t(3),u(s(91,56,"settings.display.blue")),t(3),u(s(94,58,"settings.display.bluegrey")),t(3),u(s(97,60,"settings.display.cyan")),t(3),u(s(100,62,"settings.display.green")),t(3),u(s(103,64,"settings.display.teal")),t(3),u(s(106,66,"settings.display.grey")),t(3),u(s(109,68,"settings.display.brown")),t(2),_(e.uiThemeIsSaving?110:-1),t(2),g(" ",s(113,70,"settings.display.lighting_mode")," "),t(3),m("formControl",e.uiLightFormControl),t(2),u(s(118,72,"form.select.auto")),t(3),u(s(121,74,"settings.display.light")),t(3),u(s(124,76,"settings.display.dark")),t(2),_(e.uiLightIsSaving?125:-1),t(2),g(" ",s(128,78,"settings.display.menu_mode")," "),t(3),m("formControl",e.uiMenuFormControl),t(2),u(s(133,80,"settings.display.menu_default")),t(3),u(s(136,82,"settings.display.menu_freeze")),t(2),_(e.uiMenuIsSaving?137:-1),t(2),g(" ",s(140,84,"settings.display.temp_units")," "),t(3),m("formControl",e.uiTempFormControl),t(2),u(s(145,86,"settings.display.temp_units.c")),t(3),u(s(148,88,"settings.display.temp_units.f")),t(2),_(e.uiTempIsSaving?149:-1),t(3),u(s(153,90,"settings.display.wallpaper")),t(2),v("aria-label",s(155,92,"settings.display.wallpaper"))}}function Ti(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function $i(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Fi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Pi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ri(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ai(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Mi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Di(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Vi(i,c){if(i&1&&(n(0,"li",12)(1,"span"),l(2),r(3,"translate"),d(4,"br"),n(5,"small",72),l(6),r(7,"translate"),a()(),n(8,"div",21),d(9,"input",91),r(10,"translate"),h(11,Di,1,1,"i",15),a()()),i&2){let e=b(5);t(2),g(" ",s(3,5,"settings.linux.temp")),t(4),u(s(7,7,"settings.linux.temp_desc")),t(3),m("formControl",e.uiTempFileFormControl),v("aria-label",s(10,9,"settings.linux.temp")),t(2),_(e.uiTempFileIsSaving?11:-1)}}function Ni(i,c){if(i&1&&(n(0,"li",12)(1,"span"),l(2),r(3,"translate"),d(4,"br"),n(5,"small",72),l(6),r(7,"translate"),a()(),n(8,"div",21),d(9,"input",89),r(10,"translate"),h(11,Ai,1,1,"i",15),a()(),n(12,"li",12)(13,"span"),l(14),r(15,"translate"),d(16,"br"),n(17,"small",72),l(18),r(19,"translate"),a()(),n(20,"div",21),d(21,"input",90),r(22,"translate"),h(23,Mi,1,1,"i",15),a()(),h(24,Vi,12,11,"li",12)),i&2){let e=b(4);t(2),g(" ",s(3,11,"settings.linux.shutdown")),t(4),u(s(7,13,"settings.linux.shutdown_desc")),t(3),m("formControl",e.hbLinuxShutdownFormControl),v("aria-label",s(10,15,"settings.linux.shutdown")),t(2),_(e.hbLinuxShutdownIsSaving?11:-1),t(3),g(" ",s(15,17,"settings.linux.restart")),t(4),u(s(19,19,"settings.linux.restart_desc")),t(3),m("formControl",e.hbLinuxRestartFormControl),v("aria-label",s(22,21,"settings.linux.restart")),t(2),_(e.hbLinuxRestartIsSaving?23:-1),t(),_(e.$settings.env.runningOnRaspberryPi?24:-1)}}function Li(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Oi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function zi(i,c){if(i&1&&(n(0,"li",16)(1,"span"),l(2),r(3,"translate"),n(4,"code"),l(5,"-D"),a(),d(6,"br"),n(7,"small",72),l(8),r(9,"translate"),a()(),n(10,"div",74)(11,"div",75),d(12,"input",76),r(13,"translate"),d(14,"label",77),a(),h(15,Ti,1,1,"i",15),a()(),n(16,"li",16)(17,"span"),l(18),r(19,"translate"),n(20,"code"),l(21,"-I"),a(),d(22,"br"),n(23,"small",72),l(24),r(25,"translate"),a()(),n(26,"div",74)(27,"div",75),d(28,"input",78),r(29,"translate"),d(30,"label",79),a(),h(31,$i,1,1,"i",15),a()(),n(32,"li",16)(33,"span"),l(34),r(35,"translate"),n(36,"code"),l(37,"-K"),a(),d(38,"br"),n(39,"small",72),l(40),r(41,"translate"),a()(),n(42,"div",74)(43,"div",75),d(44,"input",80),r(45,"translate"),d(46,"label",81),a(),h(47,Fi,1,1,"i",15),a()(),n(48,"li",16)(49,"span"),l(50),r(51,"translate"),d(52,"br"),n(53,"small",72),l(54),r(55,"translate"),a()(),n(56,"div",74)(57,"div",75),d(58,"input",82),r(59,"translate"),d(60,"label",83),a(),h(61,Pi,1,1,"i",15),a()(),n(62,"li",12)(63,"span"),l(64),r(65,"translate"),d(66,"br"),n(67,"small",72),l(68),r(69,"translate"),a()(),n(70,"div",21),d(71,"input",84),r(72,"translate"),h(73,Ri,1,1,"i",15),a()(),h(74,Ni,25,23),n(75,"li",12)(76,"span")(77,"span",85),l(78,"DEBUG"),a(),d(79,"br")(80,"small",86),r(81,"translate"),a(),n(82,"div",21),d(83,"input",87),h(84,Li,1,1,"i",15),a()(),n(85,"li",12)(86,"span")(87,"span",85),l(88,"NODE_OPTIONS"),a(),d(89,"br"),n(90,"small",72),l(91),r(92,"translate"),a()(),n(93,"div",21),d(94,"input",88),h(95,Oi,1,1,"i",15),a()()),i&2){let e=b(3);t(2),g(" ",s(3,32,"settings.startup.debug")," "),t(6),g(" ",s(9,34,e.isHbV2?"settings.startup.debug_desc_v2":"settings.startup.debug_desc_v1")," "),t(4),m("formControl",e.hbDebugFormControl),v("aria-label",s(13,36,"settings.startup.debug")),t(3),_(e.hbDebugIsSaving?15:-1),t(3),g(" ",s(19,38,"settings.startup.insecure")," "),t(6),u(s(25,40,"settings.startup.insecure_desc")),t(4),m("formControl",e.hbInsecureFormControl),v("aria-label",s(29,42,"settings.startup.insecure")),t(3),_(e.hbInsecureIsSaving?31:-1),t(3),g(" ",s(35,44,"settings.startup.keep_accessories")," "),t(6),u(s(41,46,"settings.startup.keep_accessories_desc")),t(4),m("formControl",e.hbKeepFormControl),v("aria-label",s(45,48,"settings.startup.keep_accessories")),t(3),_(e.hbKeepIsSaving?47:-1),t(3),g(" ",s(51,50,"settings.startup.metrics")),t(4),u(s(55,52,"settings.startup.metrics_desc")),t(4),m("formControl",e.uiMetricsFormControl),v("aria-label",s(59,54,"settings.startup.metrics")),t(3),_(e.uiMetricsIsSaving?61:-1),t(3),g(" ",s(65,56,"settings.network.hb_package")),t(4),u(s(69,58,"settings.network.hb_package_desc")),t(3),m("formControl",e.hbPackageFormControl),v("aria-label",s(72,60,"settings.network.hb_package")),t(2),_(e.hbPackageIsSaving?73:-1),t(),_(e.$settings.env.platform==="linux"?74:-1),t(6),m("innerHTML",z(81,62,"settings.service.debug_tooltip",D(67,vi,e.linkDebug)),pe),t(3),m("formControl",e.hbEnvDebugFormControl),t(),_(e.hbEnvDebugIsSaving?84:-1),t(7),u(s(92,65,"settings.service.node_tooltip")),t(3),m("formControl",e.hbEnvNodeFormControl),t(),_(e.hbEnvNodeIsSaving?95:-1)}}function Ui(i,c){i&1&&(n(0,"li",16)(1,"span"),l(2),r(3,"translate"),d(4,"br"),n(5,"small",72),l(6),r(7,"translate"),a()(),n(8,"a",92),r(9,"translate"),d(10,"i",19),a()()),i&2&&(t(2),g(" ",s(3,3,"menu.docker.startup_script")),t(4),u(s(7,5,"platform.docker.script_help")),t(2),v("aria-label",s(9,7,"menu.docker.startup_script")))}function Hi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Wi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ki(i,c){if(i&1&&(n(0,"li",12)(1,"span"),l(2),r(3,"translate"),d(4,"br"),n(5,"small",72),l(6),r(7,"translate"),a()(),n(8,"div",21),d(9,"input",93),r(10,"translate"),h(11,Wi,1,1,"i",15),a()()),i&2){let e=b(3);t(2),g(" ",s(3,6,"settings.startup.log_truncate")),t(4),u(s(7,8,"settings.startup.log_truncate_desc")),t(3),m("formControl",e.hbLogTruncateFormControl)("ngClass",D(12,q,e.hbLogTruncateIsInvalid)),v("aria-label",s(10,10,"settings.startup.log_truncate")),t(2),_(e.hbLogTruncateIsSaving?11:-1)}}function Gi(i,c){if(i&1&&(n(0,"ul",71),h(1,zi,96,69),h(2,Ui,11,9,"li",16),n(3,"li",12)(4,"span"),l(5),r(6,"translate"),d(7,"br"),n(8,"small",72),l(9),r(10,"translate"),a()(),n(11,"div",21),d(12,"input",73),r(13,"translate"),h(14,Hi,1,1,"i",15),a()(),h(15,Ki,12,14,"li",12),a()),i&2){let e=b(2);t(),_(e.$settings.env.serviceMode?1:-1),t(),_(e.$settings.env.runningInDocker?2:-1),t(3),g(" ",s(6,9,"settings.startup.log_max")),t(4),u(s(10,11,"settings.startup.log_max_desc")),t(3),m("formControl",e.hbLogSizeFormControl)("ngClass",D(15,q,e.hbLogSizeIsInvalid)),v("aria-label",s(13,13,"settings.startup.log_max")),t(2),_(e.hbLogSizeIsSaving?14:-1),t(),_(e.hbLogSizeFormControl.value>0?15:-1)}}function ji(i,c){if(i&1){let e=k();n(0,"div",1)(1,"div",2),f("click",function(){y(e);let p=b();return I(p.toggleSection("startup"))}),n(2,"h5",3),d(3,"i",4),l(4),r(5,"translate"),a()(),h(6,Gi,16,17,"ul",71),a()}if(i&2){let e=b();t(),v("aria-expanded",e.showFields.startup?"true":"false")("aria-controls","fieldsStartup"),t(2),m("ngClass",T(7,Q,e.showFields.startup,!e.showFields.startup)),t(),g(" ",s(5,5,"settings.title_startup_options")," "),t(2),_(e.showFields.startup?6:-1)}}function qi(i,c){i&1&&d(0,"i",106)}function Qi(i,c){if(i&1&&(n(0,"span",95),h(1,qi,1,0,"i",106),l(2),n(3,"span",107),l(4),r(5,"translate"),a()()),i&2){let e=c.$implicit;m("ngClass",T(6,fi,e.missing,!e.missing)),t(),_(e.missing?1:-1),t(),g(" ",e.iface,": "),t(2),u(e.missing?s(5,4,"settings.mdns_advertiser_not_connected"):e.ip4||e.ip6)}}function Ji(i,c){i&1&&(n(0,"option",97),l(1),r(2,"translate"),a()),i&2&&(t(),g("Avahi (",s(2,1,"settings.mdns_advertiser_rec"),")"))}function Xi(i,c){i&1&&(n(0,"option",100),l(1),r(2,"translate"),a()),i&2&&(t(),g("systemd-resolved (",s(2,1,"settings.mdns_advertiser_exp"),")"))}function Yi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Zi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function en(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function tn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function nn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function an(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function on(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function rn(i,c){if(i&1){let e=k();n(0,"ul",7)(1,"li",16)(2,"span",17),l(3),r(4,"translate"),d(5,"br"),n(6,"div",94),l(7),r(8,"translate"),a(),N(9,Qi,6,9,"span",95,V),a(),n(11,"button",96),r(12,"translate"),f("click",function(){y(e);let p=b();return I(p.selectNetworkInterfaces())}),d(13,"i",19),a()(),n(14,"li",12)(15,"span"),l(16),r(17,"translate"),d(18,"br"),n(19,"small",72),l(20),r(21,"translate"),a()(),n(22,"div",21)(23,"select",22),r(24,"translate"),h(25,Ji,3,3,"option",97),n(26,"option",98),l(27),r(28,"translate"),a(),n(29,"option",99),l(30,"Bonjour HAP"),a(),h(31,Xi,3,3,"option",100),a(),h(32,Yi,1,1,"i",15),a()(),n(33,"li",12)(34,"span"),l(35),r(36,"translate"),d(37,"br"),n(38,"small",72),l(39),r(40,"translate"),a()(),n(41,"div",21),d(42,"input",101),r(43,"translate"),h(44,Zi,1,1,"i",15),a()(),n(45,"li",12)(46,"span"),l(47),r(48,"translate"),d(49,"br"),n(50,"small",72),l(51),r(52,"translate"),a()(),n(53,"div",21),d(54,"input",102),r(55,"translate"),h(56,en,1,1,"i",15),a()(),n(57,"li",12)(58,"span"),l(59),r(60,"translate"),d(61,"br"),n(62,"small",72),l(63),r(64,"translate"),a()(),n(65,"div",21),d(66,"input",101),r(67,"translate"),h(68,tn,1,1,"i",15),a()(),n(69,"li",12)(70,"span"),l(71),r(72,"translate"),d(73,"br"),n(74,"small",72),l(75),r(76,"translate"),a()(),n(77,"div",21),d(78,"input",101),r(79,"translate"),h(80,nn,1,1,"i",15),a()(),n(81,"li",12)(82,"span"),l(83),r(84,"translate"),d(85,"br")(86,"small",103),r(87,"translate"),a(),n(88,"div",21),d(89,"input",104),r(90,"translate"),h(91,an,1,1,"i",15),a()(),n(92,"li",12)(93,"span"),l(94),r(95,"translate"),d(96,"br"),n(97,"small",72),l(98),r(99,"translate"),a()(),n(100,"div",21),d(101,"input",105),r(102,"translate"),h(103,on,1,1,"i",15),a()()()}if(i&2){let e=b();t(3),g(" ",s(4,46,"settings.network.title_network_interfaces")),t(4),u(s(8,48,"settings.network.message_network_interface")),t(2),L(e.adaptersSelected),t(2),m("disabled",!e.adaptersAvailable.length),v("aria-label",s(12,50,"settings.network.title_network_interfaces")),t(5),g(" ",s(17,52,"settings.mdns_advertiser")),t(4),u(s(21,54,"settings.mdns_advertiser_help")),t(3),m("formControl",e.hbMDnsFormControl),v("aria-label",s(24,56,"settings.mdns_advertiser")),t(2),_(e.showAvahiMdnsOption?25:-1),t(2),g(" Ciao ",e.showAvahiMdnsOption?"":"("+s(28,58,"settings.mdns_advertiser_rec")+")"," "),t(4),_(e.showResolvedMdnsOption?31:-1),t(),_(e.hbMDnsIsSaving?32:-1),t(3),g(" ",s(36,60,"settings.network.port_hb")),t(4),u(s(40,62,"settings.network.port_hb_desc")),t(3),m("formControl",e.hbPortFormControl)("ngClass",D(96,q,e.hbPortIsInvalid)),v("aria-label",s(43,64,"settings.network.port_hb")),t(2),_(e.hbPortIsSaving?44:-1),t(3),g(" ",s(48,66,"settings.network.port_ui")),t(4),u(s(52,68,"settings.network.port_ui_desc")),t(3),m("formControl",e.uiPortFormControl)("ngClass",D(98,q,e.uiPortIsInvalid)),v("aria-label",s(55,70,"settings.network.port_ui")),t(2),_(e.uiPortIsSaving?56:-1),t(3),g(" ",s(60,72,"settings.network.port_start")),t(4),u(s(64,74,"settings.network.port_start_desc")),t(3),m("formControl",e.hbStartPortFormControl)("ngClass",D(100,q,e.hbStartPortIsInvalid)),v("aria-label",s(67,76,"settings.network.port_start")),t(2),_(e.hbStartPortIsSaving?68:-1),t(3),g(" ",s(72,78,"settings.network.port_end")),t(4),u(s(76,80,"settings.network.port_end_desc")),t(3),m("formControl",e.hbEndPortFormControl)("ngClass",D(102,q,e.hbEndPortIsInvalid)),v("aria-label",s(79,82,"settings.network.port_end")),t(2),_(e.hbEndPortIsSaving?80:-1),t(3),g(" ",s(84,84,"settings.network.host")),t(3),m("innerHtml",s(87,86,"settings.network.host_desc"),pe),t(3),m("formControl",e.uiHostFormControl),v("aria-label",s(90,88,"settings.network.host")),t(2),_(e.uiHostIsSaving?91:-1),t(3),g(" ",s(95,90,"settings.network.proxy")),t(4),u(s(99,92,"settings.network.proxy_desc")),t(3),m("formControl",e.uiProxyHostFormControl),v("aria-label",s(102,94,"settings.network.proxy")),t(2),_(e.uiProxyHostIsSaving?103:-1)}}function sn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function ln(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function pn(i,c){if(i&1&&(n(0,"li",12)(1,"span"),l(2),r(3,"translate"),d(4,"br"),n(5,"small",72),l(6),r(7,"translate"),a()(),n(8,"div",21),d(9,"input",113),r(10,"translate"),h(11,ln,1,1,"i",15),a()()),i&2){let e=b(2);t(2),g(" ",s(3,6,"settings.startup.session")),t(4),u(s(7,8,"settings.startup.session_desc")),t(3),m("formControl",e.uiSessionTimeoutFormControl)("ngClass",D(12,q,e.uiSessionTimeoutIsInvalid)),v("aria-label",s(10,10,"settings.startup.session")),t(2),_(e.uiSessionTimeoutIsSaving?11:-1)}}function dn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function cn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function mn(i,c){if(i&1&&(n(0,"li",12)(1,"span"),l(2),r(3,"translate"),a(),n(4,"div",21),d(5,"input",114),r(6,"translate"),h(7,dn,1,1,"i",15),a()(),n(8,"li",12)(9,"span"),l(10),r(11,"translate"),a(),n(12,"div",21),d(13,"input",115),r(14,"translate"),h(15,cn,1,1,"i",15),a()()),i&2){let e=b(2);t(2),u(s(3,8,"settings.security.key")),t(3),m("formControl",e.uiSslKeyFormControl),v("aria-label",s(6,10,"settings.security.key")),t(2),_(e.uiSslKeyIsSaving?7:-1),t(3),u(s(11,12,"settings.security.cert")),t(3),m("formControl",e.uiSslCertFormControl),v("aria-label",s(14,14,"settings.security.cert")),t(2),_(e.uiSslCertIsSaving?15:-1)}}function un(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function hn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function _n(i,c){if(i&1){let e=k();n(0,"li",12)(1,"span"),l(2),r(3,"translate"),a(),n(4,"div",21),d(5,"input",116),r(6,"translate"),h(7,un,1,1,"i",15),a()(),n(8,"li",12)(9,"span"),l(10),r(11,"translate"),a(),n(12,"div",21)(13,"input",117),r(14,"translate"),f("focus",function(){y(e);let p=b(2);return I(p.showPfxPassphrase=!0)})("blur",function(){y(e);let p=b(2);return I(p.showPfxPassphrase=!1)}),a(),h(15,hn,1,1,"i",15),a()()}if(i&2){let e=b(2);t(2),u(s(3,9,"settings.security.pfx")),t(3),m("formControl",e.uiSslPfxFormControl),v("aria-label",s(6,11,"settings.security.pfx")),t(2),_(e.uiSslPfxIsSaving?7:-1),t(3),u(s(11,13,"settings.security.pass")),t(3),m("type",e.showPfxPassphrase?"text":"password")("formControl",e.uiSslPassphraseFormControl),v("aria-label",s(14,15,"settings.security.pass")),t(2),_(e.uiSslPassphraseIsSaving?15:-1)}}function gn(i,c){if(i&1){let e=k();n(0,"ul",8)(1,"li",16)(2,"span"),l(3),r(4,"translate"),d(5,"br"),n(6,"small",72),l(7),r(8,"translate"),a()(),n(9,"div",74)(10,"div",75),d(11,"input",108),r(12,"translate"),d(13,"label",109),a(),h(14,sn,1,1,"i",15),a()(),h(15,pn,12,14,"li",12),n(16,"li",12)(17,"span"),l(18),r(19,"translate"),d(20,"br"),n(21,"small",72),l(22),r(23,"translate"),a()(),n(24,"div",21)(25,"select",22),r(26,"translate"),n(27,"option",110),l(28),r(29,"translate"),a(),n(30,"option",111),l(31),r(32,"translate"),a(),n(33,"option",112),l(34),r(35,"translate"),a()()()(),h(36,mn,16,16),h(37,_n,16,17),n(38,"li",16)(39,"span",17),l(40),r(41,"translate"),d(42,"br"),n(43,"small",72),l(44),r(45,"translate"),a()(),n(46,"button",18),r(47,"translate"),f("click",function(){y(e);let p=b();return I(p.accessoryUiControl())}),d(48,"i",19),a()()()}if(i&2){let e=b();t(3),g(" ",s(4,18,"settings.security.auth")),t(4),g(" ",s(8,20,"settings.security.auth_desc")," "),t(4),m("formControl",e.uiAuthFormControl),v("aria-label",s(12,22,"settings.security.auth")),t(3),_(e.uiAuthIsSaving?14:-1),t(),_(e.uiAuthFormControl.value?15:-1),t(3),g(" ",s(19,24,"settings.security.https")),t(4),u(s(23,26,"settings.security.https_desc")),t(3),m("formControl",e.uiSslTypeFormControl),v("aria-label",s(26,28,"settings.security.https")),t(3),u(s(29,30,"accessories.control.off")),t(3),u(s(32,32,"settings.security.https_keycert")),t(3),u(s(35,34,"settings.security.https_pfx")),t(2),_(e.uiSslTypeFormControl.value==="keycert"?36:-1),t(),_(e.uiSslTypeFormControl.value==="pfx"?37:-1),t(3),g(" ",s(41,36,"settings.security.ui_control")),t(4),u(s(45,38,"settings.security.ui_control_desc")),t(2),v("aria-label",s(47,40,"settings.security.ui_control"))}}function bn(i,c){i&1&&(n(0,"p",9),l(1),r(2,"translate"),a()),i&2&&(t(),u(s(2,1,"settings.cache.desc")))}function vn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function fn(i,c){if(i&1){let e=k();n(0,"ul",118)(1,"li",16)(2,"span"),l(3),r(4,"translate"),d(5,"br"),n(6,"small",72),l(7),r(8,"translate"),a()(),n(9,"div",74)(10,"div",75),d(11,"input",119),r(12,"translate"),d(13,"label",120),a(),h(14,vn,1,1,"i",15),a()(),n(15,"li",16)(16,"span",17),l(17),r(18,"translate"),d(19,"br"),n(20,"small",72),l(21),r(22,"translate"),a()(),n(23,"button",18),r(24,"translate"),f("click",function(){y(e);let p=b(2);return I(p.removeSingleCachedAccessories())}),d(25,"i",19),a()(),n(26,"li",16)(27,"span",17),l(28),r(29,"translate"),d(30,"br"),n(31,"small",72),l(32),r(33,"translate"),a()(),n(34,"button",18),r(35,"translate"),f("click",function(){y(e);let p=b(2);return I(p.removeBridgeAccessories())}),d(36,"i",19),a()(),n(37,"li",16)(38,"span",17),l(39),r(40,"translate"),d(41,"br"),n(42,"small",72),l(43),r(44,"translate"),a()(),n(45,"button",18),r(46,"translate"),f("click",function(){y(e);let p=b(2);return I(p.removeAllCachedAccessories())}),d(47,"i",19),a()()()}if(i&2){let e=b(2);t(3),g(" ",s(4,14,"settings.accessory.debug")),t(4),u(s(8,16,"settings.accessory.debug_desc")),t(4),m("formControl",e.uiAccDebugFormControl),v("aria-label",s(12,18,"settings.accessory.debug")),t(3),_(e.uiAccDebugIsSaving?14:-1),t(3),g(" ",s(18,20,"reset.accessory_ind.title")),t(4),u(s(22,22,"reset.accessory_ind.desc")),t(2),v("aria-label",s(24,24,"reset.accessory_ind.title")),t(5),g(" ",s(29,26,"reset.bridge_accessories.title")),t(4),u(s(33,28,"reset.bridge_accessories.desc")),t(2),v("aria-label",s(35,30,"reset.accessory_all.title")),t(5),g(" ",s(40,32,"reset.accessory_all.title")),t(4),u(s(44,34,"reset.accessory_all.desc")),t(2),v("aria-label",s(46,36,"reset.accessory_all.title"))}}function Cn(i,c){if(i&1){let e=k();n(0,"div",1)(1,"div",2),f("click",function(){y(e);let p=b();return I(p.toggleSection("cache"))}),n(2,"h5",3),d(3,"i",4),l(4),r(5,"translate"),a()(),h(6,bn,3,3,"p",9),h(7,fn,48,38,"ul",118),a()}if(i&2){let e=b();t(),v("aria-expanded",e.showFields.cache?"true":"false")("aria-controls","fieldsCache"),t(2),m("ngClass",T(8,Q,e.showFields.cache,!e.showFields.cache)),t(),g(" ",s(5,6,"settings.cache.title")," "),t(2),_(e.showFields.cache?6:-1),t(),_(e.showFields.cache?7:-1)}}function xn(i,c){i&1&&(n(0,"p",9),l(1),r(2,"translate"),a()),i&2&&(t(),u(s(2,1,"reset.bridges.desc")))}function Sn(i,c){if(i&1){let e=k();n(0,"li",16)(1,"span",17),l(2),r(3,"translate"),d(4,"br"),n(5,"small",72),l(6),r(7,"translate"),a()(),n(8,"button",18),r(9,"translate"),f("click",function(){y(e);let p=b(2);return I(p.unpairAccessory())}),d(10,"i",19),a()()}i&2&&(t(2),g(" ",s(3,3,"reset.bridge_ind.title")),t(4),u(s(7,5,"reset.bridge_ind.desc")),t(2),v("aria-label",s(9,7,"reset.bridge_ind.title")))}function yn(i,c){if(i&1){let e=k();n(0,"ul",10),h(1,Sn,11,9,"li",16),n(2,"li",16)(3,"span",17),l(4),r(5,"translate"),r(6,"titlecase"),d(7,"br"),n(8,"small",72),l(9),r(10,"translate"),a()(),n(11,"button",18),r(12,"translate"),f("click",function(){y(e);let p=b();return I(p.resetHomebridgeState())}),d(13,"i",19),a()()()}if(i&2){let e=b();t(),_(e.$settings.env.serviceMode?1:-1),t(3),g(" ",s(6,6,s(5,4,"reset.bridge_all.title"))),t(5),u(s(10,8,"reset.bridge_all.desc")),t(2),v("aria-label",s(12,10,"reset.bridge_all.title"))}}var Oo=(()=>{class i{$api=C(M);$modal=C(G);$plugin=C(Oe);$router=C(O);$settings=C(j);$toastr=C(A);$translate=C(R);restartToastIsShown=!1;showFields={general:!0,display:!0,startup:!0,network:!0,security:!0,reset:!0,cache:!0};loading=!0;isHbV2=!1;showAvahiMdnsOption=!1;showResolvedMdnsOption=!1;adaptersAvailable=[];adaptersSelected=[];showPfxPassphrase=!1;hbNameIsInvalid=!1;hbNameIsSaving=!1;hbNameFormControl=new E("");uiLangIsSaving=!1;uiLangFormControl=new E("");uiThemeIsSaving=!1;uiThemeFormControl=new E("");uiLightIsSaving=!1;uiLightFormControl=new E("");uiMenuIsSaving=!1;uiMenuFormControl=new E("");uiTempIsSaving=!1;uiTempFormControl=new E("");hbDebugIsSaving=!1;hbDebugFormControl=new E(!1);hbInsecureIsSaving=!1;hbInsecureFormControl=new E(!1);hbKeepIsSaving=!1;hbKeepFormControl=new E(!1);hbEnvDebugIsSaving=!1;hbEnvDebugFormControl=new E("");hbEnvNodeIsSaving=!1;hbEnvNodeFormControl=new E("");hbLogSizeIsInvalid=!1;hbLogSizeIsSaving=!1;hbLogSizeFormControl=new E(-1);hbLogTruncateIsInvalid=!1;hbLogTruncateIsSaving=!1;hbLogTruncateFormControl=new E(0);hbMDnsIsSaving=!1;hbMDnsFormControl=new E("");hbPortIsInvalid=!1;hbPortIsSaving=!1;hbPortFormControl=new E(0);hbStartPortIsInvalid=!1;hbStartPortIsSaving=!1;hbStartPortFormControl=new E(0);hbEndPortIsInvalid=!1;hbEndPortIsSaving=!1;hbEndPortFormControl=new E(0);uiPortIsInvalid=!1;uiPortIsSaving=!1;uiPortFormControl=new E(0);uiAuthIsSaving=!1;uiAuthFormControl=new we(!0);uiSessionTimeoutIsInvalid=!1;uiSessionTimeoutIsSaving=!1;uiSessionTimeoutFormControl=new E(0);uiSslTypeFormControl=new E("off");uiSslKeyIsSaving=!1;uiSslKeyFormControl=new E("");uiSslCertIsSaving=!1;uiSslCertFormControl=new E("");uiSslPfxIsSaving=!1;uiSslPfxFormControl=new E("");uiSslPassphraseIsSaving=!1;uiSslPassphraseFormControl=new E("");uiHostIsSaving=!1;uiHostFormControl=new E("");uiProxyHostIsSaving=!1;uiProxyHostFormControl=new E("");hbPackageIsSaving=!1;hbPackageFormControl=new E("");uiMetricsIsSaving=!1;uiMetricsFormControl=new E(!0);uiAccDebugIsSaving=!1;uiAccDebugFormControl=new E(!1);uiTempFileIsSaving=!1;uiTempFileFormControl=new E("");hbLinuxShutdownIsSaving=!1;hbLinuxShutdownFormControl=new E("");hbLinuxRestartIsSaving=!1;hbLinuxRestartFormControl=new E("");linkDebug='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Debug-Common-Values" target="_blank"><i class="fa fa-fw fa-external-link-alt primary-text"></i></a>';constructor(){}ngOnInit(){return S(this,null,function*(){this.isHbV2=this.$settings.env.homebridgeVersion.startsWith("2"),yield this.initNetworkingOptions(),this.$settings.env.serviceMode&&(yield this.initServiceModeForm()),this.hbNameFormControl.patchValue(this.$settings.env.homebridgeInstanceName),this.hbNameFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbNameSave(e)),this.uiLangFormControl.patchValue(this.$settings.env.lang),this.uiLangFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiLangSave(e)),this.uiThemeFormControl.patchValue(this.$settings.theme),this.uiThemeFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiThemeSave(e)),this.uiLightFormControl.patchValue(this.$settings.lightingMode),this.uiLightFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiLightSave(e)),this.uiMenuFormControl.patchValue(this.$settings.menuMode),this.uiMenuFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiMenuSave(e)),this.uiTempFormControl.patchValue(this.$settings.env.temperatureUnits),this.uiTempFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiTempSave(e)),this.hbLogSizeFormControl.patchValue(this.$settings.env.log?.maxSize),this.hbLogSizeFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLogSizeSave(e)),this.hbLogTruncateFormControl.patchValue(this.$settings.env.log?.truncateSize),this.hbLogTruncateFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLogTruncateSave(e)),this.uiPortFormControl.patchValue(this.$settings.env.port),this.uiPortFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiPortSave(e)),this.uiAuthFormControl.patchValue(this.$settings.formAuth),this.uiAuthFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiAuthSave(e)),this.uiSessionTimeoutFormControl.patchValue(this.$settings.sessionTimeout),this.uiSessionTimeoutFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiSessionTimeoutSave(e)),this.uiSslKeyFormControl.patchValue(this.$settings.env.ssl?.key||""),this.uiSslKeyFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslKeySave(e)),this.uiSslCertFormControl.patchValue(this.$settings.env.ssl?.cert||""),this.uiSslCertFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslCertSave(e)),this.uiSslPfxFormControl.patchValue(this.$settings.env.ssl?.pfx||""),this.uiSslPfxFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslPfxSave(e)),this.uiSslPassphraseFormControl.patchValue(this.$settings.env.ssl?.passphrase||""),this.uiSslPassphraseFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiSslPassphraseSave(e)),this.uiSslTypeFormControl.patchValue(this.uiSslKeyFormControl.value||this.uiSslCertFormControl.value?"keycert":this.uiSslPfxFormControl.value||this.uiSslPassphraseFormControl.value?"pfx":"off"),this.uiSslTypeFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiSslTypeSave(e)),this.uiHostFormControl.patchValue(this.$settings.env.host||""),this.uiHostFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiHostSave(e)),this.uiProxyHostFormControl.patchValue(this.$settings.env.proxyHost||""),this.uiProxyHostFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiProxyHostSave(e)),this.hbPackageFormControl.patchValue(this.$settings.env.homebridgePackagePath||""),this.hbPackageFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbPackageSave(e)),this.uiMetricsFormControl.patchValue(!this.$settings.env.disableServerMetricsMonitoring),this.uiMetricsFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiMetricsSave(e)),this.uiAccDebugFormControl.patchValue(this.$settings.env.accessoryControl?.debug),this.uiAccDebugFormControl.valueChanges.pipe(w(750)).subscribe(e=>this.uiAccDebugSave(e)),this.uiTempFileFormControl.patchValue(this.$settings.env.temp),this.uiTempFileFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.uiTempFileSave(e)),this.hbLinuxShutdownFormControl.patchValue(this.$settings.env.linux?.shutdown),this.hbLinuxShutdownFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLinuxShutdownSave(e)),this.hbLinuxRestartFormControl.patchValue(this.$settings.env.linux?.restart),this.hbLinuxRestartFormControl.valueChanges.pipe(w(1500)).subscribe(e=>this.hbLinuxRestartSave(e)),this.loading=!1})}initServiceModeForm(){return S(this,null,function*(){try{let e=yield B(this.$api.get("/platform-tools/hb-service/homebridge-startup-settings"));this.hbDebugFormControl.patchValue(e.HOMEBRIDGE_DEBUG),this.hbDebugFormControl.valueChanges.pipe(w(750)).subscribe(o=>this.hbDebugSave(o)),this.hbInsecureFormControl.patchValue(e.HOMEBRIDGE_INSECURE),this.hbInsecureFormControl.valueChanges.pipe(w(750)).subscribe(o=>this.hbInsecureSave(o)),this.hbKeepFormControl.patchValue(e.HOMEBRIDGE_KEEP_ORPHANS),this.hbKeepFormControl.valueChanges.pipe(w(750)).subscribe(o=>this.hbKeepSave(o)),this.hbEnvDebugFormControl.patchValue(e.ENV_DEBUG),this.hbEnvDebugFormControl.valueChanges.pipe(w(1500)).subscribe(o=>this.hbEnvDebugSave(o)),this.hbEnvNodeFormControl.patchValue(e.ENV_NODE_OPTIONS),this.hbEnvNodeFormControl.valueChanges.pipe(w(1500)).subscribe(o=>this.hbEnvNodeSave(o))}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}initNetworkingOptions(){return S(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=!0,this.showResolvedMdnsOption=!0)}catch(e){console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}getNetworkSettings(){return S(this,null,function*(){return Promise.all([B(this.$api.get("/server/network-interfaces/system")),B(this.$api.get("/server/network-interfaces/bridge")),B(this.$api.get("/server/mdns-advertiser")),B(this.$api.get("/server/port")),B(this.$api.get("/server/ports"))]).then(([e,o,p,x,K])=>{this.adaptersAvailable=e,this.buildBridgeNetworkAdapterList(o),this.hbMDnsFormControl.patchValue(p.advertiser),this.hbMDnsFormControl.valueChanges.pipe(w(750)).subscribe(H=>this.hbMDnsSave(H)),this.hbPortFormControl.patchValue(x.port),this.hbPortFormControl.valueChanges.pipe(w(1500)).subscribe(H=>this.hbPortSave(H)),this.hbStartPortFormControl.patchValue(K.start),this.hbStartPortFormControl.valueChanges.pipe(w(1500)).subscribe(H=>this.hbStartPortSave(H)),this.hbEndPortFormControl.patchValue(K.end),this.hbEndPortFormControl.valueChanges.pipe(w(1500)).subscribe(H=>this.hbEndPortSave(H))})})}saveUiSettingChange(e,o){return S(this,null,function*(){try{yield B(this.$api.put("/config-editor/ui",{key:e,value:o}))}catch(p){console.error(p),this.$toastr.error(p.message,this.$translate.instant("toast.title_error"))}})}hbNameSave(e){return S(this,null,function*(){if(!e||!/^[\p{L}\p{N}][\p{L}\p{N} ']*[\p{L}\p{N}]$/u.test(e)){this.hbNameIsInvalid=!0;return}try{this.hbNameIsSaving=!0,yield B(this.$api.put("/server/name",{name:e})),this.$settings.setEnvItem("homebridgeInstanceName",e),this.hbNameIsInvalid=!1,setTimeout(()=>{this.hbNameIsSaving=!1},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbNameIsSaving=!1}})}uiLangSave(e){return S(this,null,function*(){try{this.uiLangIsSaving=!0,this.$settings.setLang(e),yield this.saveUiSettingChange("lang",e),setTimeout(()=>{this.uiLangIsSaving=!1},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiLangIsSaving=!1}})}uiThemeSave(e){return S(this,null,function*(){try{this.uiThemeIsSaving=!0,this.$settings.setTheme(e),yield this.saveUiSettingChange("theme",e),setTimeout(()=>{this.uiThemeIsSaving=!1},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiThemeIsSaving=!1}})}uiLightSave(e){return S(this,null,function*(){try{this.uiLightIsSaving=!0,this.$settings.setLightingMode(e,"user"),yield this.saveUiSettingChange("lightingMode",e),setTimeout(()=>{this.uiLightIsSaving=!1},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiLightIsSaving=!1}})}uiMenuSave(e){return S(this,null,function*(){try{this.uiMenuIsSaving=!0,this.$settings.setMenuMode(e),yield this.saveUiSettingChange("menuMode",e),window.location.reload()}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiMenuIsSaving=!1}})}uiTempSave(e){return S(this,null,function*(){try{this.uiTempIsSaving=!0,this.$settings.setEnvItem("temperatureUnits",e),yield this.saveUiSettingChange("tempUnits",e),setTimeout(()=>{this.uiTempIsSaving=!1},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiTempIsSaving=!1}})}hbDebugSave(e){return S(this,null,function*(){try{this.hbDebugIsSaving=!0,yield B(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=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbDebugIsSaving=!1}})}hbInsecureSave(e){return S(this,null,function*(){try{this.hbInsecureIsSaving=!0,yield B(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=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbInsecureIsSaving=!1}})}hbKeepSave(e){return S(this,null,function*(){try{this.hbKeepIsSaving=!0,yield B(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})),setTimeout(()=>{this.hbKeepIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbKeepIsSaving=!1}})}hbEnvDebugSave(e){return S(this,null,function*(){try{this.hbEnvDebugIsSaving=!0,yield B(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=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbEnvDebugIsSaving=!1}})}hbEnvNodeSave(e){return S(this,null,function*(){try{this.hbEnvNodeIsSaving=!0,yield B(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=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbEnvNodeIsSaving=!1}})}hbLogSizeSave(e){return S(this,null,function*(){if(e&&(typeof e!="number"||e<-1||Number.isInteger(e)===!1)){this.hbLogSizeIsInvalid=!0;return}try{this.hbLogSizeIsSaving=!0,this.$settings.setEnvItem("log.maxSize",e),(!e||e===-1)&&(yield this.saveUiSettingChange("log.truncateSize",null),this.hbLogTruncateIsInvalid=!1),yield this.saveUiSettingChange("log.maxSize",e),this.hbLogSizeIsInvalid=!1,setTimeout(()=>{this.hbLogSizeIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbLogSizeIsSaving=!1}})}hbLogTruncateSave(e){return S(this,null,function*(){if(e&&(typeof e!="number"||e<0||Number.isInteger(e)===!1)){this.hbLogTruncateIsInvalid=!0;return}try{this.hbLogTruncateIsSaving=!0,this.$settings.setEnvItem("log.truncateSize",e),yield this.saveUiSettingChange("log.truncateSize",e),this.hbLogTruncateIsInvalid=!1,setTimeout(()=>{this.hbLogTruncateIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbLogTruncateIsSaving=!1}})}hbMDnsSave(e){return S(this,null,function*(){try{this.hbMDnsIsSaving=!0,yield B(this.$api.put("/server/mdns-advertiser",{advertiser:e})),setTimeout(()=>{this.hbMDnsIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbMDnsIsSaving=!1}})}hbPortSave(e){return S(this,null,function*(){if(e===this.uiPortFormControl.value){this.hbPortIsInvalid=!0;return}try{this.hbPortIsSaving=!0,yield B(this.$api.put("/server/port",{port:e})),this.hbPortIsInvalid=!1,setTimeout(()=>{this.hbPortIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbPortIsSaving=!1}})}hbStartPortSave(e){return S(this,null,function*(){try{this.hbStartPortIsSaving=!0,yield B(this.$api.put("/server/ports",{start:e,end:this.hbEndPortFormControl.value})),this.hbStartPortIsInvalid=!1,setTimeout(()=>{this.hbStartPortIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbStartPortIsSaving=!1}})}hbEndPortSave(e){return S(this,null,function*(){try{this.hbEndPortIsSaving=!0,yield B(this.$api.put("/server/ports",{start:this.hbStartPortFormControl.value,end:e})),this.hbEndPortIsInvalid=!1,setTimeout(()=>{this.hbEndPortIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbEndPortIsSaving=!1}})}uiPortSave(e){return S(this,null,function*(){if(!e||typeof e!="number"||e<1025||e>65533||Number.isInteger(e)===!1||e===this.hbPortFormControl.value){this.uiPortIsInvalid=!0;return}try{this.uiPortIsSaving=!0,this.$settings.setEnvItem("port",e),yield this.saveUiSettingChange("port",e),this.uiPortIsInvalid=!1,setTimeout(()=>{this.uiPortIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiPortIsSaving=!1}})}uiAuthSave(e){return S(this,null,function*(){try{this.uiAuthIsSaving=!0,this.$settings.setItem("formAuth",e),yield this.saveUiSettingChange("auth",e?"form":"none"),setTimeout(()=>{this.uiAuthIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiAuthIsSaving=!1}})}uiSessionTimeoutSave(e){return S(this,null,function*(){if(e&&(typeof e!="number"||e<600||e>864e5||Number.isInteger(e)===!1)){this.uiSessionTimeoutIsInvalid=!0;return}try{this.uiSessionTimeoutIsSaving=!0,this.$settings.setItem("sessionTimeout",e),yield this.saveUiSettingChange("sessionTimeout",e),this.uiSessionTimeoutIsInvalid=!1,setTimeout(()=>{this.uiSessionTimeoutIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiSessionTimeoutIsSaving=!1}})}uiSslKeySave(e){return S(this,null,function*(){try{this.uiSslKeyIsSaving=!0,this.$settings.setEnvItem("ssl.key",e),yield this.saveUiSettingChange("ssl.key",e),setTimeout(()=>{this.uiSslKeyIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiSslKeyIsSaving=!1}})}uiSslCertSave(e){return S(this,null,function*(){try{this.uiSslCertIsSaving=!0,this.$settings.setEnvItem("ssl.cert",e),yield this.saveUiSettingChange("ssl.cert",e),setTimeout(()=>{this.uiSslCertIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiSslCertIsSaving=!1}})}uiSslPfxSave(e){return S(this,null,function*(){try{this.uiSslPfxIsSaving=!0,this.$settings.setEnvItem("ssl.pfx",e),yield this.saveUiSettingChange("ssl.pfx",e),setTimeout(()=>{this.uiSslPfxIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiSslPfxIsSaving=!1}})}uiSslPassphraseSave(e){return S(this,null,function*(){try{this.uiSslPassphraseIsSaving=!0,this.$settings.setEnvItem("ssl.passphrase",e),yield this.saveUiSettingChange("ssl.passphrase",e),setTimeout(()=>{this.uiSslPassphraseIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiSslPassphraseIsSaving=!1}})}uiSslTypeSave(e){return S(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","");break;case"pfx":this.uiSslKeyFormControl.patchValue("",{emitEvent:!1}),this.uiSslCertFormControl.patchValue("",{emitEvent:!1}),this.$settings.setEnvItem("ssl.key",""),this.$settings.setEnvItem("ssl.cert","");break;default: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",""),yield this.saveUiSettingChange("ssl",""),this.showRestartToast()}})}uiHostSave(e){return S(this,null,function*(){try{this.uiHostIsSaving=!0,this.$settings.setEnvItem("host",e),yield this.saveUiSettingChange("host",e),setTimeout(()=>{this.uiHostIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiHostIsSaving=!1}})}uiProxyHostSave(e){return S(this,null,function*(){try{this.uiProxyHostIsSaving=!0,this.$settings.setEnvItem("proxyHost",e),yield this.saveUiSettingChange("proxyHost",e),setTimeout(()=>{this.uiProxyHostIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiProxyHostIsSaving=!1}})}hbPackageSave(e){return S(this,null,function*(){try{this.hbPackageIsSaving=!0,this.$settings.setEnvItem("homebridgePackagePath",e),yield this.saveUiSettingChange("homebridgePackagePath",e),setTimeout(()=>{this.hbPackageIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbPackageIsSaving=!1}})}uiMetricsSave(e){return S(this,null,function*(){try{this.uiMetricsIsSaving=!0,this.$settings.setEnvItem("disableServerMetricsMonitoring",!e),yield this.saveUiSettingChange("disableServerMetricsMonitoring",!e),setTimeout(()=>{this.uiMetricsIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiMetricsIsSaving=!1}})}uiAccDebugSave(e){return S(this,null,function*(){try{this.uiAccDebugIsSaving=!0,this.$settings.setEnvItem("accessoryControl.debug",e),yield this.saveUiSettingChange("accessoryControl.debug",e),setTimeout(()=>{this.uiAccDebugIsSaving=!1,this.showRestartToast()},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiAccDebugIsSaving=!1}})}uiTempFileSave(e){return S(this,null,function*(){try{this.uiTempFileIsSaving=!0,this.$settings.setEnvItem("temp",e),yield this.saveUiSettingChange("temp",e),setTimeout(()=>{this.uiTempFileIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.uiTempFileIsSaving=!1}})}hbLinuxShutdownSave(e){return S(this,null,function*(){try{this.hbLinuxShutdownIsSaving=!0,this.$settings.setEnvItem("linux.shutdown",e),yield this.saveUiSettingChange("linux.shutdown",e),setTimeout(()=>{this.hbLinuxShutdownIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbLinuxShutdownIsSaving=!1}})}hbLinuxRestartSave(e){return S(this,null,function*(){try{this.hbLinuxRestartIsSaving=!0,this.$settings.setEnvItem("linux.restart",e),yield this.saveUiSettingChange("linux.restart",e),setTimeout(()=>{this.hbLinuxRestartIsSaving=!1,this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>this.showRestartToast(),error:o=>{console.error(o),this.showRestartToast()}})},1e3)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.hbLinuxRestartIsSaving=!1}})}openUiSettings(){this.$plugin.settings({name:"homebridge-config-ui-x",displayName:"Homebridge UI",settingsSchema:!0,links:{}})}openBackupModal(){this.$modal.open(se,{size:"lg",backdrop:"static"})}openWallpaperModal(){this.$modal.open(Ze,{size:"lg",backdrop:"static"})}resetHomebridgeState(){this.$modal.open(Qe,{size:"lg",backdrop:"static"})}unpairAccessory(){this.$modal.open(Xe,{size:"lg",backdrop:"static"})}removeAllCachedAccessories(){this.$modal.open(je,{size:"lg",backdrop:"static"})}accessoryUiControl(){return S(this,null,function*(){try{let e=this.$modal.open(Ue,{size:"lg",backdrop:"static"});e.componentInstance.existingBlacklist=this.$settings.env.accessoryControl?.instanceBlacklist||[],yield e.result,this.showRestartToast()}catch(e){e!=="Dismiss"&&(console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error")))}})}removeSingleCachedAccessories(){this.$modal.open(Le,{size:"lg",backdrop:"static"})}removeBridgeAccessories(){this.$modal.open(qe,{size:"lg",backdrop:"static"})}selectNetworkInterfaces(){return S(this,null,function*(){let e=this.$modal.open(Ye,{size:"lg",backdrop:"static"});e.componentInstance.adaptersAvailable=this.adaptersAvailable;try{let o=yield e.result;this.buildBridgeNetworkAdapterList(o),yield B(this.$api.put("/server/network-interfaces/bridge",{adapters:o})),this.showRestartToast()}catch(o){o!=="Dismiss"&&(console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")))}})}buildBridgeNetworkAdapterList(e){if(!e.length){this.adaptersSelected=[];return}this.adaptersSelected=e.map(o=>{let p=this.adaptersAvailable.find(x=>x.iface===o);return p?{iface:p.iface,selected:!0,missing:!1,ip4:p.ip4,ip6:p.ip6}:{iface:o,selected:!0,missing:!0}})}toggleSection(e){this.showFields[e]=!this.showFields[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.subscribe(()=>{this.$router.navigate(["/restart"])})}}static \u0275fac=function(o){return new(o||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],decls:43,vars:57,consts:[[1,"primary-text","m-0"],[1,"my-4"],["role","button","tabindex","0",1,"mt-3","hover-pointer",3,"click"],[1,"primary-text"],[1,"fa","fa-fw",3,"ngClass"],["id","fieldsGeneral",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsDisplay",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsNetwork",1,"list-group","list-group-box","mt-2","mx-0"],["id","fieldsSecurity",1,"list-group","list-group-box","mt-2","mx-0"],[1,"small","grey-text","mb-2","mx-0"],["id","fieldsReset",1,"list-group","list-group-box","mt-2","mx-0"],[1,"pb-3"],[1,"list-group-item","d-block","d-md-flex","justify-content-between","align-items-center"],[1,"my-3","my-md-0","pl-0","pl-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","ngClass"],[1,"fas","fa-fw","fa-floppy-disk","primary-text","fa-xl","me-0","me-md-2","ms-2","ms-md-0","order-2","order-md-1"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"pe-2"],[1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px",3,"click"],[1,"fas","fa-fw","fa-arrow-right"],["routerLink","/users",1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px"],[1,"my-3","my-md-0","ps-0","ps-md-5","w-auto","d-flex","align-items-center"],[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"],["id","fieldsStartup",1,"list-group","list-group-box","mb-4","mx-0"],[1,"grey-text","pe-2"],["type","number","min","-1","placeholder","1000000",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],[1,"d-flex","align-items-center"],[1,"order-1","order-md-2"],["type","checkbox","id","homebridgeDebugMode",1,"rendux-input",3,"formControl"],["for","homebridgeDebugMode",1,"rendux-label","ms-3",2,"min-width","50px"],["type","checkbox","id","homebridgeInsecureMode",1,"rendux-input",3,"formControl"],["for","homebridgeInsecureMode",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","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",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",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",3,"formControl"],["type","text","placeholder","shutdown",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["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",3,"formControl"],["routerLink","/platform-tools/docker/startup-script",1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px"],["type","number","min","0","placeholder","200000",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],[1,"small","grey-text","pe-2"],[1,"badge","badge-primary","me-1",3,"ngClass"],[1,"btn","btn-primary","waves-effect","m-0","ms-3",2,"min-width","50px",3,"click","disabled"],["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",3,"formControl","ngClass"],["type","number","min","1025","max","65533","placeholder","8581",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],[1,"grey-text","pe-2",3,"innerHtml"],["type","text","pattern","^[^{}/ :\\\\]+(?::\\d+)?$","placeholder","0.0.0.0",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","pattern","^[^{}/ :\\\\]+(?::\\d+)?$","placeholder","example.com:8443",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],[1,"fas","fa-fw","fa-exclamation-triangle"],[1,"fw-normal"],["type","checkbox","id","uiAuthForm",1,"rendux-input",3,"formControl"],["for","uiAuthForm",1,"rendux-label","ms-3",2,"min-width","50px"],["value","off"],["value","keycert"],["value","pfx"],["type","number","min","600","max","86400000","placeholder","28800",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl","ngClass"],["type","text","placeholder","/Users/.../certs/server.key",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","/Users/.../certs/server.crt",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["type","text","placeholder","/Users/.../certs/server.pfx",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"formControl"],["placeholder","mypassphrase",1,"form-control","custom-input","resp-input","order-1","order-md-2",3,"focus","blur","type","formControl"],["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"]],template:function(o,p){o&1&&(h(0,Ci,1,0,"app-spinner"),n(1,"h3",0),l(2),r(3,"translate"),a(),n(4,"div",1)(5,"div",2),f("click",function(){return p.toggleSection("general")}),n(6,"h5",3),d(7,"i",4),l(8),r(9,"translate"),a()(),h(10,Si,30,29,"ul",5),a(),n(11,"div",1)(12,"div",2),f("click",function(){return p.toggleSection("display")}),n(13,"h5",3),d(14,"i",4),l(15),r(16,"translate"),a()(),h(17,Bi,157,94,"ul",6),a(),h(18,ji,7,10,"div",1),n(19,"div",1)(20,"div",2),f("click",function(){return p.toggleSection("network")}),n(21,"h5",3),d(22,"i",4),l(23),r(24,"translate"),a()(),h(25,rn,104,104,"ul",7),a(),n(26,"div",1)(27,"div",2),f("click",function(){return p.toggleSection("security")}),n(28,"h5",3),d(29,"i",4),l(30),r(31,"translate"),a()(),h(32,gn,49,42,"ul",8),a(),h(33,Cn,8,11,"div",1),n(34,"div",1)(35,"div",2),f("click",function(){return p.toggleSection("reset")}),n(36,"h5",3),d(37,"i",4),l(38),r(39,"translate"),a()(),h(40,xn,3,3,"p",9),h(41,yn,14,12,"ul",10),a(),d(42,"div",11)),o&2&&(_(p.loading?0:-1),t(2),u(s(3,30,"menu.settings.title")),t(3),v("aria-expanded",p.showFields.general?"true":"false")("aria-controls","fieldsGeneral"),t(2),m("ngClass",T(42,Q,p.showFields.general,!p.showFields.general)),t(),g(" ",s(9,32,"settings.general.title_general")," "),t(2),_(p.showFields.general?10:-1),t(2),v("aria-expanded",p.showFields.display?"true":"false")("aria-controls","fieldsDisplay"),t(2),m("ngClass",T(45,Q,p.showFields.display,!p.showFields.display)),t(),g(" ",s(16,34,"settings.general.title_display")," "),t(2),_(p.showFields.display?17:-1),t(),_(p.$settings.env.serviceMode||p.$settings.env.runningInDocker?18:-1),t(2),v("aria-expanded",p.showFields.network?"true":"false")("aria-controls","fieldsNetwork"),t(2),m("ngClass",T(48,Q,p.showFields.network,!p.showFields.network)),t(),g(" ",s(24,36,"settings.network.title_network")," "),t(2),_(p.showFields.network?25:-1),t(2),v("aria-expanded",p.showFields.security?"true":"false")("aria-controls","fieldsSecurity"),t(2),m("ngClass",T(51,Q,p.showFields.security,!p.showFields.security)),t(),g(" ",s(31,38,"settings.network.title_security")," "),t(2),_(p.showFields.security?32:-1),t(),_(p.$settings.env.serviceMode?33:-1),t(2),v("aria-expanded",p.showFields.reset?"true":"false")("aria-controls","fieldsReset"),t(2),m("ngClass",T(54,Q,p.showFields.reset,!p.showFields.reset)),t(),g(" ",s(39,40,"reset.bridges.title")," "),t(2),_(p.showFields.reset?40:-1),t(),_(p.showFields.reset?41:-1))},dependencies:[U,Me,ee,$e,Fe,ne,Be,Y,Te,Z,Ae,Re,Pe,te,ae,X,F,Ne],encapsulation:2,data:{animation:[ke("fadeInOut",[ce(":enter",[ie({opacity:0}),de("750ms",ie({opacity:1}))]),ce(":leave",[de("750ms",ie({opacity:0}))])])]}})}return i})();export{Ue as a,se as b,je as c,Qe as d,Ye as e,Ze as f,Oo as g};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-IK32HKVF.js";import"./chunk-WUXDJZ6X.js";import"./chunk-SYLE7CUR.js";import"./chunk-6XANA56B.js";import"./chunk-WTTWP6KF.js";import"./chunk-QJQSHTGR.js";import"./chunk-S6UXXPGF.js";import"./chunk-TALXUYCG.js";import"./chunk-AJTG3DAQ.js";import"./chunk-J764EFYE.js";import"./chunk-SCRWY2OT.js";import"./chunk-IMPGSXGE.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as PluginsComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-5XQFBCJG.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as LoginComponent};
@@ -1 +0,0 @@
1
- import{g as a}from"./chunk-KYIHZYMT.js";import"./chunk-6LFABEVD.js";import"./chunk-TGHT3YAQ.js";import"./chunk-RYCM65J5.js";import"./chunk-Z7NIAJEB.js";import"./chunk-SYLE7CUR.js";import"./chunk-6XANA56B.js";import"./chunk-WTTWP6KF.js";import"./chunk-QJQSHTGR.js";import"./chunk-S6UXXPGF.js";import"./chunk-TALXUYCG.js";import"./chunk-AJTG3DAQ.js";import"./chunk-J764EFYE.js";import"./chunk-SCRWY2OT.js";import"./chunk-IMPGSXGE.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as StatusComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-KPKXYWYI.js";import"./chunk-5NG7YGKN.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as SetupWizardComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-53LOYMG6.js";import"./chunk-TALXUYCG.js";import"./chunk-AJTG3DAQ.js";import"./chunk-IMPGSXGE.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as LogsComponent};
@@ -1 +0,0 @@
1
- import{e as ft,m as gt}from"./chunk-EM4PY2IW.js";import{$a as r,Fb as M,Gb as E,Nb as l,Ob as h,Pb as p,Qb as F,Rb as Y,Sb as K,Ub as Q,Wa as ht,Wb as mt,Xa as q,Xb as j,Yb as c,a as u,b as T,cb as dt,dd as J,e as xt,fb as y,ga as C,gc as A,ha as lt,ic as m,ja as ct,jc as f,ka as w,la as _,lb as G,lc as b,ma as ut,mb as pt,n as g,ra as V,rb as S,sa as z,ua as N,ub as U,va as Z,za as O}from"./chunk-W6X46MTW.js";var Tt=xt((De,Ut)=>{Ut.exports={name:"homebridge-config-ui-x",displayName:"Homebridge UI",version:"4.78.1",description:"A web based management, configuration and control platform for Homebridge.",author:"oznu <dev@oz.nu>",license:"MIT",funding:[{type:"github",url:"https://github.com/sponsors/oznu"},{type:"paypal",url:"https://paypal.me/oznu"}],repository:{type:"git",url:"git+https://github.com/homebridge/homebridge-config-ui-x.git"},bugs:{url:"https://github.com/homebridge/homebridge-config-ui-x/issues"},keywords:["homebridge-plugin","ui","gui","web","homebridge","homebridge-config-ui-x","ui-x","config-ui-x","homebridge-x","homebridge server","homebridge ui","homebridge-ui","homebridge gui","homebridge-gui","web interface","config ui","management","config editor","linux","macOS","osx","windows","raspberry pi","accessory control","smart home","hb-service"],main:"./dist/index.js",bin:{"homebridge-config-ui-x":"dist/bin/standalone.js","hb-service":"dist/bin/hb-service.js"},engines:{node:"^18 || ^20 || ^22",homebridge:"^1.8.0 || ^2.0.0-beta.0"},scripts:{build:"npm run build:server && npm run build:ui","build:server":"rimraf dist && tsc -p tsconfig.build.json","build:ui":"npm run build --prefix ui",check:"npm run check:server && npm run check:ui","check:server":"npm install && npm outdated","check:ui":"npm install --prefix ui && npm outdated --prefix ui","lang-sync":"ts-node scripts/lang-sync.ts",lint:"eslint . --max-warnings=0","lint:fix":"npm run lint -- --fix",prepublishOnly:"npm i --package-lock-only && npm run lint && npm run build",start:"ts-node -r tsconfig-paths/register src/main.ts",test:"vitest run","test-coverage":"npm run test -- --coverage","upgrade-install":"./scripts/upgrade-install.sh",watch:'concurrently "npm run watch:ui" "npm run watch:server"',"watch:server":"nodemon","watch:ui":"npm run start --prefix ui"},dependencies:{"@fastify/helmet":"11.1.1","@fastify/multipart":"8.3.1","@fastify/static":"7.0.4","@homebridge/hap-client":"3.1.0","@homebridge/node-pty-prebuilt-multiarch":"0.11.14","@nestjs/axios":"3.1.3","@nestjs/common":"10.4.19","@nestjs/core":"10.4.19","@nestjs/jwt":"10.2.0","@nestjs/passport":"10.0.3","@nestjs/platform-fastify":"10.4.19","@nestjs/platform-socket.io":"10.4.19","@nestjs/swagger":"8.1.1","@nestjs/websockets":"10.4.19",axios:"1.10.0","bash-color":"0.0.4","class-transformer":"0.5.1","class-validator":"0.14.2",commander:"13.1.0",dayjs:"1.11.13",fastify:"4.29.1","fs-extra":"11.3.0",jsonwebtoken:"9.0.2",lodash:"4.17.21","node-cache":"5.1.2","node-schedule":"2.1.1",ora:"5.4.1",otplib:"12.0.1","p-limit":"3.1.0",passport:"0.7.0","passport-jwt":"4.0.1","reflect-metadata":"0.2.2",rxjs:"7.8.2",semver:"7.7.2",systeminformation:"5.27.7",tail:"2.2.6",tar:"7.4.3","tcp-port-used":"1.0.2",unzipper:"0.12.3"},devDependencies:{"@antfu/eslint-config":"^4.16.2","@nestjs/testing":"^10.4.19","@prettier/plugin-xml":"^3.4.1","@types/fs-extra":"^11.0.4","@types/lodash":"^4.17.20","@types/node":"^24.0.10","@types/node-schedule":"^2.1.7","@types/passport-jwt":"^4.0.1","@types/semver":"^7.7.0","@types/tail":"^2.2.3","@types/tcp-port-used":"^1.0.4","@types/unzipper":"^0.10.11","@vitest/coverage-v8":"^3.2.4",concurrently:"^9.2.0","eslint-plugin-format":"^1.0.1","form-data":"^4.0.3",nodemon:"^3.1.10",rimraf:"^6.0.1","ts-loader":"^9.5.2","ts-node":"^10.9.2","tsconfig-paths":"^4.2.0",typescript:"^5.8.3","unplugin-swc":"^1.5.5",vitest:"^3.2.4"},overrides:{"@nestjs/platform-fastify":{fastify:"4.29.1"},vitest:{vite:"^6.3.5"}},maintainers:[{email:"bwp91@icloud.com",name:"bwp91"},{email:"dev@oz.nu",name:"oznu"},{email:"northern.man1@gmail.com",name:"northernman"},{email:"mail@anderl-bauer.de",name:"supereg"},{email:"khaos.tian@gmail.com",name:"khaost"},{email:"erik.baauw@xs4all.nl",name:"ebaauw"},{email:"donavan.becker@icloud.com",name:"donavanbecker"},{email:"dustin.greif@gmail.com",name:"dustin.greif"},{email:"nfarina@gmail.com",name:"nfarina"}],scarfSettings:{enabled:!1}}});var v=function(i){return i[i.State=0]="State",i[i.Transition=1]="Transition",i[i.Sequence=2]="Sequence",i[i.Group=3]="Group",i[i.Animate=4]="Animate",i[i.Keyframes=5]="Keyframes",i[i.Style=6]="Style",i[i.Trigger=7]="Trigger",i[i.Reference=8]="Reference",i[i.AnimateChild=9]="AnimateChild",i[i.AnimateRef=10]="AnimateRef",i[i.Query=11]="Query",i[i.Stagger=12]="Stagger",i}(v||{}),It="*";function tt(i,s){return{type:v.Trigger,name:i,definitions:s,options:{}}}function P(i,s=null){return{type:v.Animate,styles:s,timings:i}}function Yt(i,s=null){return{type:v.Sequence,steps:i,options:s}}function R(i){return{type:v.Style,styles:i,offset:null}}function H(i,s,t){return{type:v.State,name:i,styles:s,options:t}}function B(i,s,t=null){return{type:v.Transition,expr:i,animation:s,options:t}}var W=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(s=0,t=0){this.totalTime=s+t}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(s=>s()),this._onDoneFns=[])}onStart(s){this._originalOnStartFns.push(s),this._onStartFns.push(s)}onDone(s){this._originalOnDoneFns.push(s),this._onDoneFns.push(s)}onDestroy(s){this._onDestroyFns.push(s)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(s=>s()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(s=>s()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(s){this._position=this.totalTime?s*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(s){let t=s=="start"?this._onStartFns:this._onDoneFns;t.forEach(e=>e()),t.length=0}},X=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(s){this.players=s;let t=0,e=0,n=0,o=this.players.length;o==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(a=>{a.onDone(()=>{++t==o&&this._onFinish()}),a.onDestroy(()=>{++e==o&&this._onDestroy()}),a.onStart(()=>{++n==o&&this._onStart()})}),this.totalTime=this.players.reduce((a,d)=>Math.max(a,d.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(s=>s()),this._onDoneFns=[])}init(){this.players.forEach(s=>s.init())}onStart(s){this._onStartFns.push(s)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(s=>s()),this._onStartFns=[])}onDone(s){this._onDoneFns.push(s)}onDestroy(s){this._onDestroyFns.push(s)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(s=>s.play())}pause(){this.players.forEach(s=>s.pause())}restart(){this.players.forEach(s=>s.restart())}finish(){this._onFinish(),this.players.forEach(s=>s.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(s=>s.destroy()),this._onDestroyFns.forEach(s=>s()),this._onDestroyFns=[])}reset(){this.players.forEach(s=>s.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(s){let t=s*this.totalTime;this.players.forEach(e=>{let n=e.totalTime?Math.min(1,t/e.totalTime):1;e.setPosition(n)})}getPosition(){let s=this.players.reduce((t,e)=>t===null||e.totalTime>t.totalTime?e:t,null);return s!=null?s.getPosition():0}beforeDestroy(){this.players.forEach(s=>{s.beforeDestroy&&s.beforeDestroy()})}triggerCallback(s){let t=s=="start"?this._onStartFns:this._onDoneFns;t.forEach(e=>e()),t.length=0}},Ot="!";var _t=["toast-component",""];function Et(i,s){if(i&1){let t=Q();h(0,"button",5),j("click",function(){V(t);let n=c();return z(n.remove())}),h(1,"span",6),f(2,"\xD7"),p()()}}function Ft(i,s){if(i&1&&(Y(0),f(1),K()),i&2){let t=c(2);r(),b("[",t.duplicatesCount+1,"]")}}function jt(i,s){if(i&1&&(h(0,"div"),f(1),S(2,Ft,2,1,"ng-container",4),p()),i&2){let t=c();m(t.options.titleClass),E("aria-label",t.title),r(),b(" ",t.title," "),r(),l("ngIf",t.duplicatesCount)}}function At(i,s){if(i&1&&F(0,"div",7),i&2){let t=c();m(t.options.messageClass),l("innerHTML",t.message,q)}}function Rt(i,s){if(i&1&&(h(0,"div",8),f(1),p()),i&2){let t=c();m(t.options.messageClass),E("aria-label",t.message),r(),b(" ",t.message," ")}}function Ht(i,s){if(i&1&&(h(0,"div"),F(1,"div",9),p()),i&2){let t=c();r(),A("width",t.width()+"%")}}function kt(i,s){if(i&1){let t=Q();h(0,"button",5),j("click",function(){V(t);let n=c();return z(n.remove())}),h(1,"span",6),f(2,"\xD7"),p()()}}function Nt(i,s){if(i&1&&(Y(0),f(1),K()),i&2){let t=c(2);r(),b("[",t.duplicatesCount+1,"]")}}function Mt(i,s){if(i&1&&(h(0,"div"),f(1),S(2,Nt,2,1,"ng-container",4),p()),i&2){let t=c();m(t.options.titleClass),E("aria-label",t.title),r(),b(" ",t.title," "),r(),l("ngIf",t.duplicatesCount)}}function Pt(i,s){if(i&1&&F(0,"div",7),i&2){let t=c();m(t.options.messageClass),l("innerHTML",t.message,q)}}function Bt(i,s){if(i&1&&(h(0,"div",8),f(1),p()),i&2){let t=c();m(t.options.messageClass),E("aria-label",t.message),r(),b(" ",t.message," ")}}function $t(i,s){if(i&1&&(h(0,"div"),F(1,"div",9),p()),i&2){let t=c();r(),A("width",t.width()+"%")}}var et=class{_attachedHost;component;viewContainerRef;injector;constructor(s,t){this.component=s,this.injector=t}attach(s,t){return this._attachedHost=s,s.attach(this,t)}detach(){let s=this._attachedHost;if(s)return this._attachedHost=void 0,s.detach()}get isAttached(){return this._attachedHost!=null}setAttachedHost(s){this._attachedHost=s}},it=class{_attachedPortal;_disposeFn;attach(s,t){return this._attachedPortal=s,this.attachComponentPortal(s,t)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(s){this._disposeFn=s}},st=class{_overlayRef;componentInstance;duplicatesCount=0;_afterClosed=new g;_activate=new g;_manualClose=new g;_resetTimeout=new g;_countDuplicate=new g;constructor(s){this._overlayRef=s}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(s,t){s&&this._resetTimeout.next(),t&&this._countDuplicate.next(++this.duplicatesCount)}},D=class{toastId;config;message;title;toastType;toastRef;_onTap=new g;_onAction=new g;constructor(s,t,e,n,o,a){this.toastId=s,this.config=t,this.message=e,this.title=n,this.toastType=o,this.toastRef=a,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(s){this._onAction.next(s)}onAction(){return this._onAction.asObservable()}},vt={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,includeTitleDuplicates:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},yt=new ct("ToastConfig"),nt=class extends it{_hostDomElement;_componentFactoryResolver;_appRef;constructor(s,t,e){super(),this._hostDomElement=s,this._componentFactoryResolver=t,this._appRef=e}attachComponentPortal(s,t){let e=this._componentFactoryResolver.resolveComponentFactory(s.component),n;return n=e.create(s.injector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()}),t?this._hostDomElement.insertBefore(this._getComponentRootNode(n),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(n)),n}_getComponentRootNode(s){return s.hostView.rootNodes[0]}},Lt=(()=>{class i{_document=_(Z);_containerElement;ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let t=this._document.createElement("div");t.classList.add("overlay-container"),t.setAttribute("aria-live","polite"),this._document.body.appendChild(t),this._containerElement=t}static \u0275fac=function(e){return new(e||i)};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),ot=class{_portalHost;constructor(s){this._portalHost=s}attach(s,t=!0){return this._portalHost.attach(s,t)}detach(){return this._portalHost.detach()}},Vt=(()=>{class i{_overlayContainer=_(Lt);_componentFactoryResolver=_(dt);_appRef=_(M);_document=_(Z);_paneElements=new Map;create(t,e){return this._createOverlayRef(this.getPaneElement(t,e))}getPaneElement(t="",e){return this._paneElements.get(e)||this._paneElements.set(e,{}),this._paneElements.get(e)[t]||(this._paneElements.get(e)[t]=this._createPaneElement(t,e)),this._paneElements.get(e)[t]}_createPaneElement(t,e){let n=this._document.createElement("div");return n.id="toast-container",n.classList.add(t),n.classList.add("toast-container"),e?e.getContainerElement().appendChild(n):this._overlayContainer.getContainerElement().appendChild(n),n}_createPortalHost(t){return new nt(t,this._componentFactoryResolver,this._appRef)}_createOverlayRef(t){return new ot(this._createPortalHost(t))}static \u0275fac=function(e){return new(e||i)};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),bt=(()=>{class i{overlay;_injector;sanitizer;ngZone;toastrConfig;currentlyActive=0;toasts=[];overlayContainer;previousToastMessage;index=0;constructor(t,e,n,o,a){this.overlay=e,this._injector=n,this.sanitizer=o,this.ngZone=a,this.toastrConfig=u(u({},t.default),t.config),t.config.iconClasses&&(this.toastrConfig.iconClasses=u(u({},t.default.iconClasses),t.config.iconClasses))}show(t,e,n={},o=""){return this._preBuildNotification(o,t,e,this.applyConfig(n))}success(t,e,n={}){let o=this.toastrConfig.iconClasses.success||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}error(t,e,n={}){let o=this.toastrConfig.iconClasses.error||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}info(t,e,n={}){let o=this.toastrConfig.iconClasses.info||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}warning(t,e,n={}){let o=this.toastrConfig.iconClasses.warning||"";return this._preBuildNotification(o,t,e,this.applyConfig(n))}clear(t){for(let e of this.toasts)if(t!==void 0){if(e.toastId===t){e.toastRef.manualClose();return}}else e.toastRef.manualClose()}remove(t){let e=this._findToast(t);if(!e||(e.activeToast.toastRef.close(),this.toasts.splice(e.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length))return!1;if(this.currentlyActive<this.toastrConfig.maxOpened&&this.toasts[this.currentlyActive]){let n=this.toasts[this.currentlyActive].toastRef;n.isInactive()||(this.currentlyActive=this.currentlyActive+1,n.activate())}return!0}findDuplicate(t="",e="",n,o){let{includeTitleDuplicates:a}=this.toastrConfig;for(let d of this.toasts){let k=a&&d.title===t;if((!a||k)&&d.message===e)return d.toastRef.onDuplicate(n,o),d}return null}applyConfig(t={}){return u(u({},this.toastrConfig),t)}_findToast(t){for(let e=0;e<this.toasts.length;e++)if(this.toasts[e].toastId===t)return{index:e,activeToast:this.toasts[e]};return null}_preBuildNotification(t,e,n,o){return o.onActivateTick?this.ngZone.run(()=>this._buildNotification(t,e,n,o)):this._buildNotification(t,e,n,o)}_buildNotification(t,e,n,o){if(!o.toastComponent)throw new Error("toastComponent required");let a=this.findDuplicate(n,e,this.toastrConfig.resetTimeoutOnDuplicate&&o.timeOut>0,this.toastrConfig.countDuplicates);if((this.toastrConfig.includeTitleDuplicates&&n||e)&&this.toastrConfig.preventDuplicates&&a!==null)return a;this.previousToastMessage=e;let d=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(d=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));let k=this.overlay.create(o.positionClass,this.overlayContainer);this.index=this.index+1;let rt=e;e&&o.enableHtml&&(rt=this.sanitizer.sanitize(ht.HTML,e));let I=new st(k),$=new D(this.index,o,rt,n,t,I),Ct=[{provide:D,useValue:$}],wt=N.create({providers:Ct,parent:this._injector}),Dt=new et(o.toastComponent,wt),at=k.attach(Dt,o.newestOnTop);I.componentInstance=at.instance;let L={toastId:this.index,title:n||"",message:e||"",toastRef:I,onShown:I.afterActivate(),onHidden:I.afterClosed(),onTap:$.onTap(),onAction:$.onAction(),portal:at};return d||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{L.toastRef.activate()})),this.toasts.push(L),L}static \u0275fac=function(e){return new(e||i)(w(yt),w(Vt),w(N),w(gt),w(U))};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})(),zt=(()=>{class i{toastrService;toastPackage;ngZone;message;title;options;duplicatesCount;originalTimeout;width=O(-1);toastClasses="";state;get _state(){return this.state()}get displayStyle(){if(this.state().value==="inactive")return"none"}timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.ngZone=n,this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o}),this.state=O({value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.update(t=>T(u({},t),{value:"active"})),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let t=new Date().getTime(),e=this.hideTime-t;this.width.set(e/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(n=>100-n),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.update(t=>T(u({},t),{value:"active"})),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){this.state().value!=="removed"&&(clearTimeout(this.timeout),this.state.update(t=>T(u({},t),{value:"removed"})),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){this.state().value!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state().value!=="removed"&&this.options.disableTimeOut!=="extendedTimeOut"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state().value==="removed"||(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(t),e)):this.timeout=setTimeout(()=>t(),e)}outsideInterval(t,e){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(t),e)):this.intervalId=setInterval(()=>t(),e)}runInsideAngular(t){this.ngZone?this.ngZone.run(()=>t()):t()}static \u0275fac=function(e){return new(e||i)(y(bt),y(D),y(U))};static \u0275cmp=G({type:i,selectors:[["","toast-component",""]],hostVars:5,hostBindings:function(e,n){e&1&&j("click",function(){return n.tapToast()})("mouseenter",function(){return n.stickAround()})("mouseleave",function(){return n.delayedHideToast()}),e&2&&(mt("@flyInOut",n._state),m(n.toastClasses),A("display",n.displayStyle))},attrs:_t,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(e,n){e&1&&S(0,Et,3,0,"button",0)(1,jt,3,5,"div",1)(2,At,1,3,"div",2)(3,Rt,2,4,"div",3)(4,Ht,2,2,"div",4),e&2&&(l("ngIf",n.options.closeButton),r(),l("ngIf",n.title),r(),l("ngIf",n.message&&n.options.enableHtml),r(),l("ngIf",n.message&&!n.options.enableHtml),r(),l("ngIf",n.options.progressBar))},dependencies:[J],encapsulation:2,data:{animation:[tt("flyInOut",[H("inactive",R({opacity:0})),H("active",R({opacity:1})),H("removed",R({opacity:0})),B("inactive => active",P("{{ easeTime }}ms {{ easing }}")),B("active => removed",P("{{ easeTime }}ms {{ easing }}"))])]},changeDetection:0})}return i})(),Zt=T(u({},vt),{toastComponent:zt}),qt=(i={})=>ut([{provide:yt,useValue:{default:Zt,config:i}}]),be=(()=>{class i{static forRoot(t={}){return{ngModule:i,providers:[qt(t)]}}static \u0275fac=function(e){return new(e||i)};static \u0275mod=pt({type:i});static \u0275inj=lt({})}return i})();var Gt=(()=>{class i{toastrService;toastPackage;appRef;message;title;options;duplicatesCount;originalTimeout;width=O(-1);toastClasses="";get displayStyle(){return this.state()==="inactive"?"none":null}state=O("inactive");timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(t,e,n){this.toastrService=t,this.toastPackage=e,this.appRef=n,this.message=e.message,this.title=e.title,this.options=e.config,this.originalTimeout=e.config.timeOut,this.toastClasses=`${e.toastType} ${e.config.toastClass}`,this.sub=e.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=e.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=e.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=e.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.set("active"),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let t=new Date().getTime(),e=this.hideTime-t;this.width.set(e/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(n=>100-n),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.set("active"),this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=new Date().getTime()+(this.originalTimeout||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.state.set("removed"),this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){this.state()!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state()==="removed"||(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}static \u0275fac=function(e){return new(e||i)(y(bt),y(D),y(M))};static \u0275cmp=G({type:i,selectors:[["","toast-component",""]],hostVars:4,hostBindings:function(e,n){e&1&&j("click",function(){return n.tapToast()})("mouseenter",function(){return n.stickAround()})("mouseleave",function(){return n.delayedHideToast()}),e&2&&(m(n.toastClasses),A("display",n.displayStyle))},attrs:_t,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(e,n){e&1&&S(0,kt,3,0,"button",0)(1,Mt,3,5,"div",1)(2,Pt,1,3,"div",2)(3,Bt,2,4,"div",3)(4,$t,2,2,"div",4),e&2&&(l("ngIf",n.options.closeButton),r(),l("ngIf",n.title),r(),l("ngIf",n.message&&n.options.enableHtml),r(),l("ngIf",n.message&&!n.options.enableHtml),r(),l("ngIf",n.options.progressBar))},dependencies:[J],encapsulation:2,changeDetection:0})}return i})(),Te=T(u({},vt),{toastComponent:Gt});var x={serverTarget:Tt().version,production:!0,socket:"",api:{base:"/api",socket:`${window.location.protocol==="http:"?"ws://":"wss://"}${window.location.host}`,origin:window.location.origin},jwt:{tokenKey:"access_token",allowedDomains:[document.location.host],disallowedRoutes:[`${window.location.protocol}//${document.location.host}/api/auth/login`]},apiHttpOptions:{},owm:{appid:"fec67b55f7f74deaa28df89ba6a60821"}};var Fe=(()=>{class i{$http=_(ft);constructor(){}get(t,e){return this.$http.get(`${x.api.base}${t}`,e)}post(t,e,n){return this.$http.post(`${x.api.base}${t}`,e,n)}put(t,e,n){return this.$http.put(`${x.api.base}${t}`,e,n)}patch(t,e,n){return this.$http.patch(`${x.api.base}${t}`,e,n)}delete(t,e){return this.$http.delete(`${x.api.base}${t}`,e)}static \u0275fac=function(e){return new(e||i)};static \u0275prov=C({token:i,factory:i.\u0275fac,providedIn:"root"})}return i})();export{v as a,It as b,tt as c,P as d,Yt as e,R as f,B as g,W as h,X as i,Ot as j,bt as k,be as l,x as m,Fe as n};
@@ -1 +0,0 @@
1
- import{e as a}from"./chunk-FMIEZK6P.js";import"./chunk-J764EFYE.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as UsersComponent};
@@ -1 +0,0 @@
1
- import{a}from"./chunk-NWSDLJGS.js";import"./chunk-JBQX4JBH.js";import"./chunk-XVOGZWDM.js";import"./chunk-R46BD4H7.js";import"./chunk-J6LG7572.js";import"./chunk-OJGPSUKN.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as RestartComponent};