homebridge-config-ui-x 4.78.2-beta.10 → 4.78.2-beta.3

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 (169) hide show
  1. package/CHANGELOG.md +4 -18
  2. package/dist/core/config/config.service.js +1 -1
  3. package/dist/core/config/config.service.js.map +1 -1
  4. package/dist/main.js +0 -1
  5. package/dist/main.js.map +1 -1
  6. package/dist/modules/backup/backup.controller.d.ts +0 -1
  7. package/dist/modules/backup/backup.controller.js +0 -11
  8. package/dist/modules/backup/backup.controller.js.map +1 -1
  9. package/dist/modules/backup/backup.service.d.ts +0 -1
  10. package/dist/modules/backup/backup.service.js +7 -20
  11. package/dist/modules/backup/backup.service.js.map +1 -1
  12. package/dist/modules/plugins/plugins.service.js +1 -2
  13. package/dist/modules/plugins/plugins.service.js.map +1 -1
  14. package/dist/modules/status/status.service.js +0 -9
  15. package/dist/modules/status/status.service.js.map +1 -1
  16. package/package.json +1 -1
  17. package/public/3rdpartylicenses.txt +132 -132
  18. package/public/assets/hap-icons/{air-purifier.svg → airpurifier.svg} +11 -11
  19. package/public/assets/hap-icons/{filter-maintenance.svg → filtermaintenance.svg} +1 -1
  20. package/public/assets/hap-icons/{smoke-sensor.svg → smokesensor.svg} +2 -15
  21. package/public/{chunk-CF2ZN7LY.js → chunk-2NQ5FYSH.js} +1 -1
  22. package/public/{chunk-63UHV4TV.js → chunk-2ZIDTLBJ.js} +1 -1
  23. package/public/chunk-34DWN2DX.js +1 -0
  24. package/public/{chunk-LXXELGX4.js → chunk-555LSHXI.js} +1 -1
  25. package/public/chunk-57VLQF3H.js +1 -0
  26. package/public/chunk-5IIUIJPP.js +1 -0
  27. package/public/{chunk-T252YJXA.js → chunk-5NG7YGKN.js} +1 -1
  28. package/public/chunk-5T7R64HM.js +1 -0
  29. package/public/chunk-6HC575DW.js +6 -0
  30. package/public/{chunk-UQYCFN3T.js → chunk-6XANA56B.js} +2 -2
  31. package/public/chunk-6Z6PXBOR.js +20 -0
  32. package/public/chunk-73LZVNIK.js +1 -0
  33. package/public/chunk-7IUQSGQK.js +1 -0
  34. package/public/chunk-7KNXPUZE.js +1 -0
  35. package/public/chunk-7NQITDPX.js +1 -0
  36. package/public/chunk-7R3XQ55D.js +1 -0
  37. package/public/chunk-A5UYRXPM.js +1 -0
  38. package/public/{chunk-UD6SVFW2.js → chunk-AJTG3DAQ.js} +1 -1
  39. package/public/chunk-AMX56GID.js +1 -0
  40. package/public/chunk-B23H4RBK.js +1 -0
  41. package/public/chunk-BCVT2ZGS.js +1 -0
  42. package/public/chunk-BQK7VHZI.js +5 -0
  43. package/public/chunk-BY2CUGGW.js +1 -0
  44. package/public/{chunk-ROYACDP2.js → chunk-C32K5CAV.js} +1 -1
  45. package/public/chunk-CKHHFN5B.js +1 -0
  46. package/public/chunk-D35WUZO6.js +1 -0
  47. package/public/chunk-DAODOEOB.js +1 -0
  48. package/public/chunk-DN4FE2SW.js +1 -0
  49. package/public/chunk-DV2TB6UP.js +1 -0
  50. package/public/chunk-DZC35DKY.js +1 -0
  51. package/public/{chunk-SRP6QX5M.js → chunk-EM4PY2IW.js} +1 -1
  52. package/public/chunk-FRXDQLV5.js +1 -0
  53. package/public/chunk-GD5TBASL.js +1 -0
  54. package/public/chunk-HC6CZKMO.js +1 -0
  55. package/public/chunk-HNIRIW54.js +1 -0
  56. package/public/chunk-HNOT6ZRL.js +1 -0
  57. package/public/chunk-HSDBO7PI.js +1 -0
  58. package/public/chunk-I5UICZTW.js +1 -0
  59. package/public/chunk-IMPGSXGE.js +1 -0
  60. package/public/chunk-IZCMCANO.js +1 -0
  61. package/public/{chunk-7EQ4BJZB.js → chunk-J764EFYE.js} +1 -1
  62. package/public/{chunk-X7PVYZAE.js → chunk-JBQX4JBH.js} +1 -1
  63. package/public/chunk-JG3RKKFX.js +1 -0
  64. package/public/chunk-JJBQY66P.js +23 -0
  65. package/public/chunk-K5HRSVLN.js +1 -0
  66. package/public/chunk-KCGSCDXO.js +1 -0
  67. package/public/chunk-KFUUWA7X.js +1 -0
  68. package/public/chunk-KIDQD7AW.js +4 -0
  69. package/public/chunk-KWXJH2KV.js +1 -0
  70. package/public/chunk-LIDBF3XJ.js +1 -0
  71. package/public/chunk-M2ZLGTH6.js +1 -0
  72. package/public/chunk-M7XZW7BF.js +1 -0
  73. package/public/chunk-NXLDJLPJ.js +1 -0
  74. package/public/chunk-OMTZIJL6.js +1 -0
  75. package/public/{chunk-ASKYLUSK.js → chunk-PLDH5YJJ.js} +1 -1
  76. package/public/chunk-Q4ZG4IKT.js +1 -0
  77. package/public/chunk-Q6T556KU.js +1 -0
  78. package/public/chunk-Q6U762OB.js +1 -0
  79. package/public/{chunk-QDCKP2LU.js → chunk-QJQSHTGR.js} +1 -1
  80. package/public/{chunk-NGNQPAAK.js → chunk-S6UXXPGF.js} +1 -1
  81. package/public/chunk-S7QEVC6H.js +1 -0
  82. package/public/{chunk-EGCUYKRH.js → chunk-SCRWY2OT.js} +1 -1
  83. package/public/chunk-SMVM4V7K.js +1 -0
  84. package/public/chunk-T46IIKTY.js +2 -0
  85. package/public/{chunk-X2SHRXXY.js → chunk-TJJCM4OW.js} +1 -1
  86. package/public/chunk-U4YPPM47.js +1 -0
  87. package/public/chunk-UC3KRTST.js +1 -0
  88. package/public/chunk-VEXAW4H6.js +1 -0
  89. package/public/chunk-VW2O6D3R.js +1 -0
  90. package/public/chunk-W6X46MTW.js +7 -0
  91. package/public/chunk-W7NICAZS.js +12 -0
  92. package/public/{chunk-GDFV4BMO.js → chunk-WTTWP6KF.js} +1 -1
  93. package/public/chunk-WUXDJZ6X.js +1 -0
  94. package/public/{chunk-IDT6WBAB.js → chunk-XEKVGY7L.js} +16 -16
  95. package/public/chunk-XIQKMSXR.js +1 -0
  96. package/public/{chunk-BU6UAZVK.js → chunk-YIVNLLSL.js} +1 -1
  97. package/public/chunk-YUVQILGM.js +1 -0
  98. package/public/chunk-Z7NIAJEB.js +1 -0
  99. package/public/index.html +2 -2
  100. package/public/main-TZDNHWGN.js +1 -0
  101. package/public/{styles-YDIK2EDN.css → styles-RGK5JOII.css} +1 -1
  102. package/public/chunk-22QTGFTJ.js +0 -1
  103. package/public/chunk-3JARG26K.js +0 -3
  104. package/public/chunk-3LKZCKCF.js +0 -1
  105. package/public/chunk-45AWUQUI.js +0 -1
  106. package/public/chunk-4T2GN6EO.js +0 -1
  107. package/public/chunk-4YRWQX3W.js +0 -1
  108. package/public/chunk-5SZ5GQYS.js +0 -2
  109. package/public/chunk-7ATQ5EBC.js +0 -1
  110. package/public/chunk-C5RHCAUK.js +0 -1
  111. package/public/chunk-EITS7TXC.js +0 -1
  112. package/public/chunk-EV45AMNT.js +0 -1
  113. package/public/chunk-F3ERQJVG.js +0 -1
  114. package/public/chunk-FHY3NHWQ.js +0 -1
  115. package/public/chunk-FR5YDBCN.js +0 -1
  116. package/public/chunk-GW2DVJRQ.js +0 -1
  117. package/public/chunk-HELQ6C4L.js +0 -1
  118. package/public/chunk-HSWLFIAJ.js +0 -1
  119. package/public/chunk-HYGTZ767.js +0 -1
  120. package/public/chunk-HZUGXGIE.js +0 -1
  121. package/public/chunk-IN7NZAFJ.js +0 -1
  122. package/public/chunk-J6YDFLQQ.js +0 -1
  123. package/public/chunk-JFXQKHPO.js +0 -1
  124. package/public/chunk-KBSONIC6.js +0 -23
  125. package/public/chunk-KC3UX7RJ.js +0 -1
  126. package/public/chunk-KUQKJUX5.js +0 -1
  127. package/public/chunk-LVSOME36.js +0 -1
  128. package/public/chunk-LZTR2JMZ.js +0 -1
  129. package/public/chunk-N4XOTXZL.js +0 -12
  130. package/public/chunk-O3KBZXCW.js +0 -1
  131. package/public/chunk-OWY3J4XU.js +0 -1
  132. package/public/chunk-P2OFHVSW.js +0 -1
  133. package/public/chunk-PSCHGWYB.js +0 -1
  134. package/public/chunk-PVP6IVZQ.js +0 -5
  135. package/public/chunk-PY6XYKE2.js +0 -1
  136. package/public/chunk-Q3UFAHWJ.js +0 -1
  137. package/public/chunk-QH4OYVQX.js +0 -4
  138. package/public/chunk-QTPIIYXJ.js +0 -4
  139. package/public/chunk-RN7GNGXO.js +0 -1
  140. package/public/chunk-SKZUTSHE.js +0 -7
  141. package/public/chunk-SNKJBIOP.js +0 -1
  142. package/public/chunk-TKQG3CQ6.js +0 -1
  143. package/public/chunk-TQNKRJOX.js +0 -1
  144. package/public/chunk-UJZFMBAF.js +0 -1
  145. package/public/chunk-V7XUKJMZ.js +0 -1
  146. package/public/chunk-VV5VPBPJ.js +0 -1
  147. package/public/chunk-Z565CB6Q.js +0 -1
  148. package/public/chunk-Z73Q5KI4.js +0 -20
  149. package/public/main-PSKITXQI.js +0 -1
  150. /package/public/assets/hap-icons/{air-quality-sensor.svg → airquality.svg} +0 -0
  151. /package/public/assets/hap-icons/{carbon-monoxide-sensor.svg → co-sensor.svg} +0 -0
  152. /package/public/assets/hap-icons/{carbon-dioxide-sensor.svg → co2-sensor.svg} +0 -0
  153. /package/public/assets/hap-icons/{contact-sensor-closed.svg → contactsensor-closed.svg} +0 -0
  154. /package/public/assets/hap-icons/{contact-sensor-open.svg → contactsensor-open.svg} +0 -0
  155. /package/public/assets/hap-icons/{garage-door.svg → garagedoor.svg} +0 -0
  156. /package/public/assets/hap-icons/{humidity-sensor.svg → humidity.svg} +0 -0
  157. /package/public/assets/hap-icons/{leak-sensor.svg → leaksensor.svg} +0 -0
  158. /package/public/assets/hap-icons/{light-sensor.svg → light.svg} +0 -0
  159. /package/public/assets/hap-icons/{light-bulb.svg → lightbulb.svg} +0 -0
  160. /package/public/assets/hap-icons/{motion-sensor.svg → motionsensor.svg} +0 -0
  161. /package/public/assets/hap-icons/{occupancy-sensor.svg → occupancysensor.svg} +0 -0
  162. /package/public/assets/hap-icons/{security-system-active.svg → securitysystem-active.svg} +0 -0
  163. /package/public/assets/hap-icons/{security-system-off.svg → securitysystem-off.svg} +0 -0
  164. /package/public/assets/hap-icons/{security-system-triggered.svg → securitysystem-triggered.svg} +0 -0
  165. /package/public/assets/hap-icons/{stateless-programmable-switch.svg → statelessprogrammableswitch.svg} +0 -0
  166. /package/public/assets/hap-icons/{valve-shower-head.svg → valve-showerhead.svg} +0 -0
  167. /package/public/assets/hap-icons/{valve-faucet.svg → valve-waterfaucet.svg} +0 -0
  168. /package/public/assets/hap-icons/{window-covering-closed.svg → windowcovering-closed.svg} +0 -0
  169. /package/public/assets/hap-icons/{window-covering-open.svg → windowcovering-open.svg} +0 -0
@@ -1 +0,0 @@
1
- import{a as n}from"./chunk-Z565CB6Q.js";import"./chunk-ASKYLUSK.js";import{g as r}from"./chunk-X7PVYZAE.js";import"./chunk-BU6UAZVK.js";import"./chunk-HZUGXGIE.js";import"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{ha as o,nb as e}from"./chunk-SKZUTSHE.js";var c=[{path:"",loadComponent:()=>import("./chunk-PSCHGWYB.js").then(t=>t.SettingsComponent),canActivate:[n]}],m=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=e({type:t});static \u0275inj=o({imports:[r.forChild(c),r]})}return t})();var l=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=e({type:t});static \u0275inj=o({imports:[m]})}return t})();export{l as SettingsModule};
@@ -1 +0,0 @@
1
- import{t as k}from"./chunk-CF2ZN7LY.js";import"./chunk-T252YJXA.js";import{d as P}from"./chunk-X7PVYZAE.js";import{b as I}from"./chunk-BU6UAZVK.js";import{k as $,n as O}from"./chunk-HZUGXGIE.js";import{a as y,b as T}from"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{Bc as a,Cc as s,Ib as f,Jb as v,Ob as h,Pb as o,Qb as r,Rb as C,Vb as w,Yb as m,Zb as b,ab as i,kc as l,la as c,lc as S,mb as g,mc as d,ra as u,sa as _}from"./chunk-SKZUTSHE.js";function E(t,x){if(t&1){let n=w();o(0,"p",5)(1,"button",6),m("click",function(){u(n);let e=b();return _(e.restartServer())}),l(2),a(3,"translate"),r()()}t&2&&(i(2),d(" ",s(3,1,"menu.linux.label_restart_server")," "))}function H(t,x){if(t&1){let n=w();o(0,"p",5)(1,"button",6),m("click",function(){u(n);let e=b();return _(e.shutdownServer())}),l(2),a(3,"translate"),r()()}t&2&&(i(2),d(" ",s(3,1,"menu.linux.label_shutdown_server")," "))}function B(t,x){if(t&1){let n=w();o(0,"p",5)(1,"button",6),m("click",function(){u(n);let e=b();return _(e.dockerRestartContainer())}),l(2),a(3,"translate"),r()()}t&2&&(i(2),d(" ",s(3,1,"menu.docker.restart_container")," "))}var G=(()=>{class t{$api=c(O);$router=c(P);$settings=c(I);$toastr=c($);$translate=c(y);canShutdownRestartHost=this.$settings.env.canShutdownRestartHost;runningInDocker=this.$settings.env.runningInDocker;restartHomebridge(){this.$router.navigate(["/restart"])}restartHomebridgeService(){this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{this.$router.navigate(["/restart"])},error:n=>{console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error"))}})}restartServer(){this.$router.navigate(["/platform-tools/linux/restart-server"])}shutdownServer(){this.$router.navigate(["/platform-tools/linux/shutdown-server"])}dockerRestartContainer(){this.$router.navigate(["/platform-tools/docker/restart-container"])}static \u0275fac=function(p){return new(p||t)};static \u0275cmp=g({type:t,selectors:[["ng-component"]],decls:19,vars:15,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"my-4","align-items-center",2,"max-width","1000px","margin","auto"],[1,"w-100","text-center","primary-text","mb-5"],[1,"fas","fa-fw","fa-power-off",2,"font-size","75px"],[1,"w-100","text-center","my-5"],["type","button",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click"],["type","button","container","body","openDelay","150","triggers","hover",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click","ngbTooltip"]],template:function(p,e){p&1&&(o(0,"div",0)(1,"h3",1),l(2),a(3,"translate"),r()(),o(4,"div",2)(5,"div",3),C(6,"i",4),r(),o(7,"p",5)(8,"button",6),m("click",function(){return e.restartHomebridge()}),l(9),a(10,"translate"),r()(),o(11,"p",5)(12,"button",7),a(13,"translate"),m("click",function(){return e.restartHomebridgeService()}),l(14),a(15,"translate"),r()(),f(16,E,4,3,"p",5),f(17,H,4,3,"p",5),f(18,B,4,3,"p",5),r()),p&2&&(i(2),S(s(3,7,"menu.restart.title")),i(7),d(" ",s(10,9,"menu.hbrestart.confirm_hb")," "),i(3),h("ngbTooltip",s(13,11,"reset.force_restart_hb_help_text")),i(2),d(" ",s(15,13,"menu.hbrestart.confirm_ui")," "),i(2),v(e.canShutdownRestartHost?16:-1),i(),v(e.canShutdownRestartHost?17:-1),i(),v(e.runningInDocker?18:-1))},dependencies:[k,T],encapsulation:2})}return t})();export{G as PowerOptionsComponent};
@@ -1 +0,0 @@
1
- import{a as Se}from"./chunk-F3ERQJVG.js";import{l as ke,n as Q}from"./chunk-IDT6WBAB.js";import{a as H}from"./chunk-UQYCFN3T.js";import"./chunk-GDFV4BMO.js";import{a as Be}from"./chunk-NGNQPAAK.js";import"./chunk-QDCKP2LU.js";import"./chunk-63UHV4TV.js";import"./chunk-UD6SVFW2.js";import"./chunk-7EQ4BJZB.js";import"./chunk-EGCUYKRH.js";import{a as ye}from"./chunk-TQNKRJOX.js";import{g as _e,h as Ce,i as he,j as be,k as ve,l as xe,m as $,n as O,t as U}from"./chunk-CF2ZN7LY.js";import{A as fe,c as le,e as re,f as se,g as de,j as pe,m as ce,p as ue,q as me,z as ge}from"./chunk-T252YJXA.js";import{a as W}from"./chunk-ROYACDP2.js";import"./chunk-ASKYLUSK.js";import{a as we,d as Pe}from"./chunk-X7PVYZAE.js";import{b as G}from"./chunk-BU6UAZVK.js";import{k as R,n as L}from"./chunk-HZUGXGIE.js";import{a as q,b as B}from"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{Bc as r,Cc as s,Dc as E,Hb as y,Ib as m,Jb as g,Lb as j,Mb as F,Nb as z,Ob as C,Pb as a,Qb as l,Rb as d,Vb as w,Xa as N,Ya as T,Yb as _,Za as Z,Zb as f,ab as n,bc as ee,cc as ie,cd as M,dc as te,fd as ae,h as k,jc as J,jd as oe,kc as c,la as P,lc as h,mb as S,mc as b,ra as v,sa as x,uc as K,w as D,xc as V,yc as I,zc as ne}from"./chunk-SKZUTSHE.js";var Ne=t=>({pluginName:t});function He(t,p){t&1&&(a(0,"ul",7)(1,"li"),c(2),r(3,"translate"),l(),a(4,"li"),c(5),r(6,"translate"),l()()),t&2&&(n(2),h(s(3,2,"plugins.manage.confirm_disable_accessory_1")),n(3),h(s(6,4,"plugins.manage.confirm_disable_accessory_2")))}function Ae(t,p){t&1&&(a(0,"ul",7)(1,"li"),c(2),r(3,"translate"),l(),a(4,"li"),c(5),r(6,"translate"),l()()),t&2&&(n(2),h(s(3,2,"plugins.manage.confirm_disable_platform_1")),n(3),h(s(6,4,"plugins.manage.confirm_disable_platform_2")))}var Ie=(()=>{class t{$activeModal=P($);pluginName;isConfigured=!1;isConfiguredDynamicPlatform=!1;dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{pluginName:"pluginName",isConfigured:"isConfigured",isConfiguredDynamicPlatform:"isConfiguredDynamicPlatform"},decls:26,vars:22,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,"mb-3","text-center"],[1,"fas","fa-fw","fa-circle-pause","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","warning",1,"mb-0",3,"dismissible"],[1,"w-100","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"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),l(),a(4,"button",3),r(5,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(6,"div",4)(7,"div",5),d(8,"i",6),l(),m(9,He,7,6,"ul",7),m(10,Ae,7,6,"ul",7),a(11,"ngb-alert",8)(12,"p",9),c(13),r(14,"translate"),l()()(),a(15,"div",10)(16,"div",11)(17,"button",12),r(18,"translate"),_("click",function(){return i.dismissModal()}),c(19),r(20,"translate"),l()(),d(21,"div",13),a(22,"div",14)(23,"button",15),_("click",function(){return i.closeModal()}),c(24),r(25,"translate"),l()()()()),o&2&&(n(3),h(i.pluginName),n(),y("aria-label",s(5,9,"form.button_close")),n(5),g(i.isConfigured&&!i.isConfiguredDynamicPlatform?9:-1),n(),g(i.isConfigured&&i.isConfiguredDynamicPlatform?10:-1),n(),C("dismissible",!1),n(2),h(E(14,11,"plugins.manage.confirm_disable",V(20,Ne,i.pluginName))),n(4),y("aria-label",s(18,14,"form.button_close")),n(2),b(" ",s(20,16,"form.button_close")," "),n(5),b(" ",s(25,18,"plugins.manage.disable")," "))},dependencies:[_e,B],encapsulation:2})}return t})();var je=t=>({author:t});function Fe(t,p){if(t&1&&(a(0,"li",9),d(1,"i",15),a(2,"a",16),c(3),l()()),t&2){let e=p.$implicit,o=f();n(),C("ngClass",o.getIconClass(e.type)),n(),C("href",e.url,T),n(),h(e.url)}}var Te=(()=>{class t{$activeModal=P($);plugin;fundingOptions;ngOnInit(){this.plugin.funding||this.$activeModal.close(),this.plugin.name==="homebridge-config-ui-x"&&(this.plugin.author="oznu"),Array.isArray(this.plugin.funding)?this.fundingOptions=this.plugin.funding.map(e=>{if(typeof e=="string")return{type:"other",url:e};if(typeof e=="object")return{type:e.type||"other",url:e.url}}):typeof this.plugin.funding=="string"?this.fundingOptions=[{type:"other",url:this.plugin.funding}]:typeof this.plugin.funding=="object"&&(this.fundingOptions=[{type:this.plugin.funding.type||"other",url:this.plugin.funding.url}])}getIconClass(e){switch(e.toLowerCase()){case"paypal":return"fab fa-fw fa-paypal";case"github":return"fab fa-fw fa-github";case"patreon":return"fab fa-fw fa-patreon";case"kofi":case"ko-fi":return"fas fa-fw fa-coffee";default:return"fas fa-fw fa-link"}}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:28,vars:21,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","pink-text","mb-3"],[1,"fas","fa-fw","fa-heart",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"me-2","primary-text","fa-fw","fa-xl",3,"ngClass"],["target","_blank","rel","noopener noreferrer",1,"text-break-all",3,"href"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),r(4,"translate"),l(),a(5,"button",3),r(6,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(7,"div",4)(8,"div",5),d(9,"i",6),l(),a(10,"ul",7)(11,"li"),c(12),r(13,"translate"),l(),a(14,"li"),c(15),r(16,"translate"),l()(),a(17,"ul",8),F(18,Fe,4,3,"li",9,j),l()(),a(20,"div",10),d(21,"div",11),a(22,"div",12)(23,"button",13),r(24,"translate"),_("click",function(){return i.dismissModal()}),c(25),r(26,"translate"),l()(),d(27,"div",14),l()()),o&2&&(n(3),h(E(4,6,"plugins.donate.tile_donate_to",V(19,je,"@"+i.plugin.author))),n(2),y("aria-label",s(6,9,"form.button_close")),n(7),h(s(13,11,"plugins.donate.message_1")),n(3),h(s(16,13,"plugins.donate.message_2")),n(3),z(i.fundingOptions),n(5),y("aria-label",s(24,15,"form.button_close")),n(2),b(" ",s(26,17,"form.button_close")," "))},dependencies:[M,B],styles:[".text-break-all[_ngcontent-%COMP%]{word-break:break-all}"]})}return t})();var ze=(t,p)=>({"orange-text":t,"grey-text":p}),X=t=>({opacity:t}),Oe=(t,p)=>({"green-text":t,"grey-text":p}),Ue=(t,p)=>({"purple-text":t,"grey-text":p}),qe=(t,p)=>({scopedLink:t,verifiedLink:p});function Re(t,p){t&1&&(a(0,"h6",18),c(1),r(2,"translate"),l(),a(3,"p",19),c(4),r(5,"translate"),l(),a(6,"p",19),c(7),r(8,"translate"),l()),t&2&&(n(),h(s(2,3,"plugins.manage.scoped_subtitle")),n(3),h(s(5,5,"plugins.manage.scoped_message")),n(3),h(s(8,7,"plugins.manage.verified_message")))}function Le(t,p){t&1&&(a(0,"h6",18),c(1),r(2,"translate"),l(),a(3,"p",19),c(4),r(5,"translate"),l()),t&2&&(n(),h(s(2,2,"plugins.manage.verified_subtitle")),n(3),h(s(5,4,"plugins.manage.verified_message")))}function Ge(t,p){t&1&&(a(0,"h6",18),c(1),r(2,"translate"),l(),a(3,"p",19),c(4),r(5,"translate"),l()),t&2&&(n(),h(s(2,2,"plugins.manage.unverified_subtitle")),n(3),h(s(5,4,"plugins.manage.unverified_message")))}function We(t,p){if(t&1){let e=w();a(0,"button",20),_("click",function(){v(e);let i=f();return x(i.dismissModal())}),c(1),r(2,"translate"),l()}t&2&&(n(),b(" ",s(2,1,"form.button_close")," "))}function Qe(t,p){if(t&1){let e=w();a(0,"button",20),_("click",function(){v(e);let i=f();return x(i.dismissModal())}),c(1),r(2,"translate"),l()}t&2&&(n(),b(" ",s(2,1,"form.button_close")," "))}function Je(t,p){if(t&1&&(a(0,"a",17),c(1),r(2,"translate"),d(3,"i",21),l()),t&2){let e=f();C("href",e.plugin.links.homepage||e.plugin.links.npm,T),n(),b(" ",s(2,2,"plugins.button_homepage")," ")}}var Ve=(()=>{class t{$activeModal=P($);plugin;defaultIcon="assets/hb-icon.png";linkScoped='<a href="https://github.com/homebridge/plugins/wiki/Scoped-Plugins" target="_blank"><i class="fas fa-fw fa-external-link-alt primary-text"></i></a>';linkVerified='<a href="https://github.com/homebridge/plugins/wiki/Verified-Plugins" target="_blank"><i class="fas fa-fw fa-external-link-alt primary-text"></i></a>';ngOnInit(){this.plugin.icon||(this.plugin.icon=this.defaultIcon)}handleIconError(){this.plugin.icon=this.defaultIcon}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:32,vars:45,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],["alt","Plugin Icon",1,"mb-3","plugin-icon-card",3,"error","src"],[1,"mb-1"],[1,"grey-text","mb-0","font-monospace"],[1,"grey-text","mb-1","font-monospace"],[1,"mb-3"],[1,"fas","fa-fw","fa-shield-alt","mb-3",2,"font-size","48px",3,"ngClass","ngStyle"],[1,"mb-0","grey-text",3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","text-decoration-none",3,"href"],[1,"mb-2"],[1,"mb-1","grey-text"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"fas","fa-fw","fa-external-link-alt"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),r(4,"translate"),l(),a(5,"button",3),r(6,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(7,"div",4)(8,"img",5),_("error",function(){return i.handleIconError()}),l(),a(9,"h4",6),c(10),l(),a(11,"p",7),c(12),l(),a(13,"p",8),c(14),l(),a(15,"p",9),c(16),l(),d(17,"i",10)(18,"i",10)(19,"i",10),m(20,Re,9,9),m(21,Le,6,6),m(22,Ge,6,6),d(23,"p",11),r(24,"translate"),l(),a(25,"div",12)(26,"div",13),m(27,We,3,3,"button",14),l(),a(28,"div",15),m(29,Qe,3,3,"button",14),l(),a(30,"div",16),m(31,Je,4,4,"a",17),l()()()),o&2&&(n(3),h(s(4,20,"plugins.manage.information")),n(2),y("aria-label",s(6,22,"form.button_close")),n(3),C("src",i.plugin.icon,T),n(2),h(i.plugin.displayName),n(2),h(i.plugin.name),n(2),b("@",i.plugin.author),n(2),h(i.plugin.description),n(),C("ngClass",I(27,ze,!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin,i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin))("ngStyle",V(30,X,!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin?1:.25)),n(),C("ngClass",I(32,Oe,!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin),i.plugin.isHbScoped||!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin))("ngStyle",V(35,X,!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)?1:.25)),n(),C("ngClass",I(37,Ue,i.plugin.isHbScoped,!i.plugin.isHbScoped))("ngStyle",V(40,X,i.plugin.isHbScoped?1:.25)),n(),g(i.plugin.isHbScoped?20:-1),n(),g(!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)?21:-1),n(),g(!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin?22:-1),n(),C("innerHTML",E(24,24,"plugins.manage.more_info",I(42,qe,i.linkScoped,i.linkVerified)),N),n(4),g(i.plugin.links.homepage||i.plugin.links.npm?27:-1),n(2),g(!i.plugin.links.homepage&&!i.plugin.links.npm?29:-1),n(2),g(i.plugin.links.homepage||i.plugin.links.npm?31:-1))},dependencies:[B,M,ae],styles:[".plugin-icon[_ngcontent-%COMP%]{height:75px;width:75px;border-radius:15px;border:1px solid #222222}"]})}return t})();var Ke=(t,p,e)=>({"purple-text":t,"green-text":p,"orange-text":e}),Xe=(t,p)=>({"fa-bridge-circle-exclamation orange-text":t,"fa-bridge-circle-xmark red-text":p});function Ye(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.checkAndUpdatePlugin())}),d(3,"i",24),l()}t&2&&(C("ngbTooltip",s(1,2,"plugins.button_update")),y("aria-label",s(2,4,"plugins.button_update")))}function Ze(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.switchToScoped())}),d(3,"i",25),l()}t&2&&(C("ngbTooltip",s(1,2,"plugins.manage.scoped.switch")),y("aria-label",s(2,4,"plugins.manage.scoped.switch")))}function ei(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.openSettings())}),d(3,"i",26),l()}t&2&&(C("ngbTooltip",s(1,2,"plugins.button_set_up")),y("aria-label",s(2,4,"plugins.button_set_up")))}function ii(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.openBridgeSettings())}),d(3,"i",27),l()}t&2&&(C("ngbTooltip",s(1,2,"child_bridge.setup")),y("aria-label",s(2,4,"child_bridge.setup")))}function ti(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.openBridgeSettings())}),d(3,"i",28),l()}t&2&&(C("ngbTooltip",s(1,2,"child_bridge.bridge_connect")),y("aria-label",s(2,4,"child_bridge.bridge_connect")))}function ni(t,p){if(t&1&&d(0,"i",12),t&2){let e=f();C("ngClass",I(1,Xe,e.childBridgeStatus==="pending",e.childBridgeStatus==="down"))}}function ai(t,p){if(t&1){let e=w();a(0,"a",14),_("click",function(){v(e);let i=f();return x(i.openFundingModal(i.plugin))}),d(1,"i",29),a(2,"span",16),c(3),l()()}if(t&2){let e=f();n(3),b("@",e.plugin.author)}}function oi(t,p){if(t&1&&(a(0,"span",16),d(1,"i",30),c(2),l()),t&2){let e=f();n(2),b("@",e.plugin.author," ")}}function li(t,p){if(t&1&&(a(0,"span"),c(1),r(2,"date"),l()),t&2){let e=f(2);n(),b("(",E(2,1,e.plugin.lastUpdated,"yyyy-MM-dd"),")")}}function ri(t,p){if(t&1&&(a(0,"span"),d(1,"i",31),a(2,"span",16),c(3),m(4,li,3,4,"span"),l()()),t&2){let e=f();n(3),b("v",e.plugin.latestVersion," "),n(),g(e.plugin.lastUpdated?4:-1)}}function si(t,p){if(t&1&&(d(0,"i",32),c(1)),t&2){let e=f();n(),b("v",e.plugin.installedVersion," ")}}function di(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),_("click",function(){v(e);let i=f();return x(i.doChildBridgeAction("restart"))}),d(2,"i",33),l()}if(t&2){let e=f();C("ngbTooltip",s(1,1,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart"))}}function pi(t,p){if(t&1){let e=w();a(0,"a",34),_("click",function(){v(e);let i=f();return x(i.enablePlugin(i.plugin))}),d(1,"i",35),r(2,"translate"),l()}t&2&&(n(),C("ngbTooltip",s(2,1,"plugins.status_disabled")))}function ci(t,p){if(t&1){let e=w();a(0,"a",36),_("click",function(){v(e);let i=f();return x(i.installAlternateVersion())}),d(1,"i",37),l()}}function ui(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.viewPluginLog())}),d(1,"i",46),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.plugin_logs")," "))}function mi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.installAlternateVersion())}),d(1,"i",47),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.manage_version")," "))}function gi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openJsonEditor())}),d(1,"i",48),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.json_config")," "))}function fi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.disablePlugin(i.plugin))}),d(1,"i",49),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.disable")," "))}function _i(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.enablePlugin(i.plugin))}),d(1,"i",50),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.enable")," "))}function Ci(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.uninstallPlugin())}),d(1,"i",51),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.button_uninstall")," "))}function hi(t,p){t&1&&d(0,"div",44)}function bi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.doChildBridgeAction("restart"))}),d(1,"i",53),c(2),r(3,"translate"),l()}if(t&2){let e=f(3);n(2),b(" ",s(3,1,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart")," ")}}function vi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.doChildBridgeAction("stop"))}),d(1,"i",54),c(2),r(3,"translate"),l()}if(t&2){let e=f(3);n(2),b(" ",s(3,1,e.setChildBridges.length>1?"child_bridge.stop_plural":"child_bridge.stop")," ")}}function xi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.doChildBridgeAction("start"))}),d(1,"i",55),c(2),r(3,"translate"),l()}if(t&2){let e=f(3);n(2),b(" ",s(3,1,e.setChildBridges.length>1?"child_bridge.start_plural":"child_bridge.start")," ")}}function wi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.resetChildBridges())}),d(1,"i",56),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"child_bridge.reset_accessories")," "))}function Pi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openBridgeSettings())}),d(1,"i",52),c(2),r(3,"translate"),l(),m(4,bi,4,3,"button",43),m(5,vi,4,3,"button",43),m(6,xi,4,3,"button",43),m(7,wi,4,3,"button",43)}if(t&2){let e=f(2);n(2),b(" ",s(3,5,"child_bridge.bridge_settings")," "),n(2),g(e.childBridgeRestartInProgress?-1:4),n(),g(e.allChildBridgesStopped?-1:5),n(),g(e.allChildBridgesStopped?6:-1),n(),g(e.serviceMode?7:-1)}}function yi(t,p){t&1&&d(0,"div",44)}function Si(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openBridgeSettings())}),d(1,"i",57),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"child_bridge.setup")," "))}function Bi(t,p){t&1&&d(0,"div",44)}function ki(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openBridgeSettings())}),d(1,"i",57),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"child_bridge.setup")," "))}function Ii(t,p){t&1&&d(0,"div",44)}function Ti(t,p){if(t&1&&(a(0,"a",45),d(1,"i",58),c(2),r(3,"translate"),l()),t&2){let e=f(2);C("href",e.plugin.links.bugs,T),n(2),b(" ",s(3,2,"support.links.issue")," ")}}function Vi(t,p){if(t&1){let e=w();a(0,"span",22)(1,"a",38),d(2,"i",39),l(),a(3,"div",40)(4,"button",41),_("click",function(){v(e);let i=f();return x(i.openSettings())}),d(5,"i",42),c(6),r(7,"translate"),l(),m(8,ui,4,3,"button",43),m(9,mi,4,3,"button",43),m(10,gi,4,3,"button",43),m(11,fi,4,3,"button",43),m(12,_i,4,3,"button",43),m(13,Ci,4,3,"button",43),m(14,hi,1,0,"div",44),m(15,Pi,8,7),m(16,yi,1,0,"div",44),m(17,Si,4,3,"button",43),m(18,Bi,1,0,"div",44),m(19,ki,4,3,"button",43),m(20,Ii,1,0,"div",44),m(21,Ti,4,4,"a",45),l()()}if(t&2){let e=f();n(),y("aria-label","Plugin Actions Dropdown"),n(5),b(" ",s(7,16,"plugins.button_settings")," "),n(2),g(e.plugin.isConfigured&&!e.plugin.disabled?8:-1),n(),g(e.plugin.publicPackage?9:-1),n(),g(!e.isMobile&&e.plugin.name!=="homebridge-config-ui-x"?10:-1),n(),g(e.plugin.name!=="homebridge-config-ui-x"&&!e.plugin.disabled?11:-1),n(),g(e.plugin.name!=="homebridge-config-ui-x"&&e.plugin.disabled?12:-1),n(),g(e.plugin.name!=="homebridge-config-ui-x"?13:-1),n(),g(!e.plugin.disabled&&e.plugin.isConfigured&&e.plugin.hasChildBridges&&e.plugin.installedVersion&&e.plugin.name!=="homebridge-config-ui-x"?14:-1),n(),g(e.plugin.hasChildBridges&&!e.plugin.disabled?15:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&!e.plugin.recommendChildBridge?16:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&!e.plugin.recommendChildBridge?17:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&e.plugin.recommendChildBridge&&e.plugin.updateAvailable?18:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&e.plugin.recommendChildBridge&&e.plugin.updateAvailable?19:-1),n(),g(e.plugin.links!=null&&e.plugin.links.bugs?20:-1),n(),g(e.plugin.links!=null&&e.plugin.links.bugs?21:-1)}}var Ee=(()=>{class t{$api=P(L);$md=P(Be);$modal=P(O);$plugin=P(Q);$settings=P(G);$toastr=P(R);$translate=P(q);$ws=P(W);io;plugin;hasChildBridges=!1;hasUnpairedChildBridges=!1;allChildBridgesStopped=!1;childBridgeStatus="pending";childBridgeRestartInProgress=!1;defaultIcon="assets/hb-icon.png";isMobile;setChildBridges=[];hb2Status="unknown";serviceMode=this.$settings.env.serviceMode;set childBridges(e){this.hasChildBridges=e.length>0,this.hasUnpairedChildBridges=e.filter(u=>u.paired===!1).length>0,this.allChildBridgesStopped=e.filter(u=>u.manuallyStopped===!0).length===e.length,this.hasChildBridges&&(e.some(u=>u.status==="down")?this.childBridgeStatus="down":e.some(u=>u.status==="pending")?this.childBridgeStatus="pending":e.some(u=>u.status==="ok")&&(this.childBridgeStatus="ok")),this.setChildBridges=e;let o=this.$settings.env.homebridgeVersion.split(".")[0],i=this.plugin.engines?.homebridge?.split("||").map(u=>u.trim())||[];this.hb2Status=o==="2"?"hide":i.some(u=>u.startsWith("^2")||u.startsWith(">=2"))?"supported":this.hb2Status}ngOnInit(){this.isMobile=this.$md.detect.mobile(),this.io=this.$ws.getExistingNamespace("child-bridges"),this.isMobile&&this.plugin.displayName.toLowerCase().startsWith("homebridge ")&&(this.plugin.displayName=this.plugin.displayName.replace(/^homebridge /i,"")),this.plugin.icon||(this.plugin.icon=this.defaultIcon)}openFundingModal(e){let o=this.$modal.open(Te,{size:"lg",backdrop:"static"});o.componentInstance.plugin=e}pluginInfoModal(e){let o=this.$modal.open(Ve,{size:"lg",backdrop:"static"});o.componentInstance.plugin=e}disablePlugin(e){let o=this.$modal.open(Ie,{size:"lg",backdrop:"static"});o.componentInstance.pluginName=e.displayName,o.componentInstance.isConfigured=e.isConfigured,o.componentInstance.isConfiguredDynamicPlatform=e.isConfiguredDynamicPlatform,o.result.then(()=>k(this,null,function*(){try{yield D(this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/disable`,{})),e.disabled=!0,this.hasChildBridges&&this.doChildBridgeAction("stop"),this.$modal.open(H,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.disable.error"),this.$translate.instant("toast.title_error"))}}))}enablePlugin(e){let o=this.$modal.open(ye,{size:"lg",backdrop:"static"});o.componentInstance.title=e.name,o.componentInstance.message=this.$translate.instant("plugins.manage.confirm_enable",{pluginName:e.displayName}),o.componentInstance.confirmButtonLabel=this.$translate.instant("plugins.manage.enable"),o.componentInstance.faIconClass="fa-circle-play primary-text",o.result.then(()=>k(this,null,function*(){try{yield D(this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/enable`,{})),e.disabled=!1,this.hasChildBridges&&(yield this.doChildBridgeAction("start")),this.$modal.open(H,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.enable.error"),this.$translate.instant("toast.title_error"))}}))}viewPluginLog(){let e=this.$modal.open(ke,{size:"xl",backdrop:"static"});e.componentInstance.plugin=this.plugin}doChildBridgeAction(e){return k(this,null,function*(){this.childBridgeRestartInProgress=!0;try{for(let o of this.setChildBridges)yield D(this.io.request(`${e}-child-bridge`,o.username))}catch(o){console.error(o),this.$toastr.error(this.$translate.instant("plugins.bridge.action_error",{action:e}),this.$translate.instant("toast.title_error")),this.childBridgeRestartInProgress=!1}finally{setTimeout(()=>{this.childBridgeRestartInProgress=!1},e==="restart"?12e3:e==="stop"?6e3:1e3)}})}handleIconError(){this.plugin.icon=this.defaultIcon}checkAndUpdatePlugin(){this.$plugin.checkAndUpdatePlugin(this.plugin,this.plugin.latestVersion)}openSettings(){this.$plugin.settings(this.plugin)}openBridgeSettings(){this.$plugin.bridgeSettings(this.plugin)}switchToScoped(){this.$plugin.switchToScoped(this.plugin)}installAlternateVersion(){this.$plugin.installAlternateVersion(this.plugin)}openJsonEditor(){this.$plugin.jsonEditor(this.plugin)}uninstallPlugin(){this.$plugin.uninstallPlugin(this.plugin,this.setChildBridges)}resetChildBridges(){this.$plugin.resetChildBridges(this.setChildBridges)}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["app-plugin-card"]],inputs:{plugin:"plugin",childBridges:"childBridges"},decls:35,vars:23,consts:[[1,"card","card-body","mb-3"],[1,"d-flex","flex-row","justify-content-between"],[1,"d-flex","flex-column","me-3","align-items-center","justify-content-between"],["alt","Plugin Icon",1,"plugin-icon-card","mb-3",3,"error","src"],[1,"d-flex","flex-column","justify-content-between",2,"min-width","calc(100% - 80px)"],[1,"d-flex","flex-row","align-items-end"],[1,"d-flex","flex-column","w-100"],[1,"d-flex","flex-row"],[1,"card-title","mb-2","text-truncate"],[1,"ms-auto"],["href","javascript:void(0)","container","body","openDelay","150","triggers","hover",1,"card-link",3,"ngbTooltip"],[1,"fas","fa-fw","fa-spinner","fa-pulse","fa-lg","grey-text","ms-3",3,"hidden"],[1,"fas","fa-fw","fa-lg","ms-3",3,"ngClass"],[1,"card-text","mb-2","text-truncate"],["href","javascript:void(0)",1,"card-link",3,"click"],[1,"fas","fa-fw","fa-shield-alt","fa-lg","me-1",3,"ngClass"],[1,"grey-text"],[1,"card-text","mb-2"],["href","javascript:void(0)",1,"card-link"],[1,"card-text","mb-0","grey-text"],["href","javascript:void(0)",1,"card-link","red-text"],["href","javascript:void(0)"],["ngbDropdown","","placement","left",1,"d-inline-block","ms-3","mt-auto"],["href","javascript:void(0)","container","body","openDelay","150","triggers","hover",1,"card-link",3,"click","ngbTooltip"],[1,"far","fa-fw","fa-arrow-alt-circle-up","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-fw","fa-arrow-right-arrow-left","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-fw","fa-sliders","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-fw","fa-bridge","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-fw","fa-qrcode","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-fw","fa-heart","fa-lg","me-1","pink-text"],[1,"fas","fa-fw","fa-heart","fa-lg","me-1",2,"opacity","0.5"],[1,"far","fa-fw","fa-circle-dot","fa-lg","me-1"],[1,"far","fa-fw","fa-circle-check","fa-lg","me-1"],[1,"fas","fa-fw","fa-lg","fa-power-off","ms-3"],["href","javascript:void(0)",1,"card-link","red-text",3,"click"],["container","body","openDelay","150","triggers","hover",1,"far","fa-fw","fa-pause-circle","fa-lg",3,"ngbTooltip"],["href","javascript:void(0)",3,"click"],[1,"far","fa-fw","fa-arrow-alt-circle-down","fa-lg"],["href","javascript:void(0)","ngbDropdownToggle","",1,"card-link","text-decoration-none","mt-auto",2,"outline","none"],[1,"fa-solid","fa-fw","fa-ellipsis-v","fa-lg"],["ngbDropdownMenu","","aria-labelledby","Plugin Actions Dropdown"],["ngbDropdownItem","",3,"click"],[1,"fas","fa-fw","fa-sliders"],["ngbDropdownItem",""],[1,"dropdown-divider"],["ngbDropdownItem","","rel","noopener noreferrer","target","_blank",3,"href"],[1,"fas","fa-fw","fa-wave-square"],[1,"fas","fa-fw","fa-code-compare"],[1,"fas","fa-fw","fa-code"],[1,"far","fa-fw","fa-circle-pause"],[1,"far","fa-fw","fa-circle-play"],[1,"fas","fa-fw","fa-trash"],[1,"fas","fa-fw","fa-bridge"],[1,"fa-fw","icon-button","fas","fa-fw","fa-power-off"],[1,"fas","fa-fw","fa-stop"],[1,"fas","fa-fw","fa-play"],[1,"fas","fa-fw","fa-broom"],[1,"icon-button","fas","fa-fw","fa-bridge"],[1,"icon-button","fa","fa-fw","fa-question-circle-o"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"div",2)(3,"img",3),_("error",function(){return i.handleIconError()}),l()(),a(4,"div",4)(5,"div",5)(6,"div",6)(7,"div",7)(8,"h5",8),c(9),l(),a(10,"div",9),m(11,Ye,4,6,"a",10),m(12,Ze,4,6,"a",10),m(13,ei,4,6,"a",10),m(14,ii,4,6,"a",10),m(15,ti,4,6,"a",10),d(16,"i",11),m(17,ni,1,4,"i",12),l()(),a(18,"p",13)(19,"a",14),_("click",function(){return i.pluginInfoModal(i.plugin)}),d(20,"i",15),a(21,"span",16),c(22),l()()(),a(23,"p",17),m(24,ai,4,1,"a",18),m(25,oi,3,1,"span",16),l(),a(26,"div",7)(27,"p",19),m(28,ri,5,2,"span"),m(29,si,2,1),l(),a(30,"div",9),m(31,di,3,3,"a",10),m(32,pi,3,3,"a",20),m(33,ci,2,0,"a",21),m(34,Vi,22,18,"span",22),l()()()()()()()),o&2&&(n(3),C("src",i.plugin.icon,T),n(6),h(i.plugin.displayName),n(2),g(i.plugin.installedVersion&&i.plugin.updateAvailable&&!i.childBridgeRestartInProgress?11:-1),n(),g(i.plugin.installedVersion&&(i.plugin.newHbScope==null?null:i.plugin.newHbScope.switch)===i.plugin.installedVersion&&!i.childBridgeRestartInProgress?12:-1),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&!i.plugin.isConfigured&&!i.childBridgeRestartInProgress&&!i.plugin.disabled?13:-1),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&i.plugin.isConfigured&&!i.plugin.hasChildBridges&&!i.plugin.disabled&&i.plugin.recommendChildBridge&&!i.childBridgeRestartInProgress?14:-1),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&i.plugin.isConfigured&&i.plugin.hasChildBridges&&!i.childBridgeRestartInProgress&&i.hasUnpairedChildBridges&&i.childBridgeStatus==="ok"&&!i.plugin.disabled?15:-1),n(),C("hidden",!i.childBridgeRestartInProgress),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&i.plugin.isConfigured&&i.plugin.hasChildBridges&&!i.childBridgeRestartInProgress&&!i.hasUnpairedChildBridges&&i.childBridgeStatus!=="ok"&&!i.plugin.disabled?17:-1),n(3),C("ngClass",ne(19,Ke,i.plugin.isHbScoped,!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin),!i.plugin.isHbScoped&&!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin)),n(2),h(i.plugin.name),n(2),g((i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)&&i.plugin.funding?24:-1),n(),g((i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)&&i.plugin.funding?-1:25),n(3),g(i.plugin.publicPackage&&!i.plugin.installedVersion?28:-1),n(),g(i.plugin.installedVersion?29:-1),n(2),g(!i.plugin.disabled&&i.plugin.hasChildBridges&&i.childBridgeStatus==="ok"?31:-1),n(),g(i.plugin.installedVersion&&i.plugin.disabled?32:-1),n(),g(i.plugin.publicPackage&&!i.plugin.installedVersion?33:-1),n(),g(i.plugin.installedVersion?34:-1))},dependencies:[U,M,xe,ve,be,he,Ce,oe,B],encapsulation:2})}return t})();var Me=(()=>{class t{$activeModal=P($);dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],decls:27,vars:21,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,"fa","fa-fw","fa-question-circle-o","primary-text",2,"font-size","75px"],[1,"mb-0"],[3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),c(4),r(5,"translate"),l(),a(6,"button",3),r(7,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(8,"div",4)(9,"div",5),d(10,"i",6),l(),a(11,"ul",7),d(12,"li",8),r(13,"translate"),d(14,"li",8),r(15,"translate"),d(16,"li",8),r(17,"translate"),d(18,"li",8),r(19,"translate"),l()(),a(20,"div",9),d(21,"div",10),a(22,"div",11)(23,"button",12),_("click",function(){return i.dismissModal()}),c(24),r(25,"translate"),l()(),d(26,"div",13),l()()()),o&2&&(n(4),h(s(5,7,"support.title")),n(2),y("aria-label",s(7,9,"form.button_close")),n(6),C("innerHTML",s(13,11,"plugins.support.list_1"),N),n(2),C("innerHTML",s(15,13,"plugins.support.list_2"),N),n(2),C("innerHTML",s(17,15,"plugins.support.list_3"),N),n(2),C("innerHTML",s(19,17,"plugins.support.list_4"),N),n(6),b(" ",s(25,19,"form.button_close")," "))},dependencies:[B],encapsulation:2})}return t})();var Ei=["searchInput"],Mi=(t,p)=>({"fa-magnifying-glass":t,"fa-exclamation-circle":p});function $i(t,p){t&1&&d(0,"app-spinner")}function Di(t,p){if(t&1){let e=w();a(0,"a",15),_("click",function(){v(e);let i=f(3);return x(i.onClearSearch())}),d(1,"i",16),l()}}function Ni(t,p){if(t&1){let e=w();a(0,"div",9)(1,"div",11)(2,"form",12),_("ngSubmit",function(){v(e);let i=f(2);return x(i.onSubmit(i.form))}),d(3,"input",13,0),r(5,"translate"),m(6,Di,2,0,"a",14),l()()()}if(t&2){let e=f(2);n(2),C("formGroup",e.form),n(),C("placeholder",s(5,3,"plugins.placeholder_search_plugin")),n(3),g(e.showExitButton?6:-1)}}function Hi(t,p){if(t&1&&(a(0,"div",17),d(1,"app-plugin-card",19),l()),t&2){let e=p.$implicit,o=f(3);n(),C("plugin",e)("childBridges",o.getPluginChildBridges(e))}}function Ai(t,p){if(t&1&&(a(0,"div",18),d(1,"i",20),a(2,"p"),c(3),r(4,"translate"),l()()),t&2){let e=f(3);n(),C("ngClass",I(4,Mi,!e.showExitButton,e.showExitButton)),n(2),h(s(4,2,e.showExitButton?"plugins.placeholder_search_none":"plugins.placeholder_search_first"))}}function ji(t,p){if(t&1&&(a(0,"div",10),F(1,Hi,2,2,"div",17,j),m(3,Ai,5,7,"div",18),l()),t&2){let e=f(2);n(),z(e.installedPlugins),n(2),g(e.installedPlugins.length===0&&!e.loading&&!e.mainError?3:-1)}}function Fi(t,p){if(t&1&&(m(0,Ni,7,5,"div",9),m(1,ji,4,1,"div",10)),t&2){let e=f();g(e.showSearchBar?0:-1),n(),g(e.loading?-1:1)}}function zi(t,p){t&1&&(a(0,"div",21)(1,"div",22)(2,"code"),c(3,"https://developers.homebridge.io/analytics "),a(4,"a",23),d(5,"i",24),l()()(),a(6,"div",25),c(7),r(8,"translate"),l()(),d(9,"iframe",26)),t&2&&(n(7),h(s(8,1,"plugins.stats_note")))}var Yt=(()=>{class t{searchInput;$api=P(L);$modal=P(O);$plugin=P(Q);$router=P(Pe);$settings=P(G);$toastr=P(R);$translate=P(q);$ws=P(W);isSearchMode=!1;io;navigationSubscription;mainError=!1;loading=!0;tab="main";installedPlugins=[];childBridges=[];showSearchBar=!1;showExitButton=!1;form=new de({query:new pe("")});ngOnInit(){return k(this,null,function*(){this.io=this.$ws.connectToNamespace("child-bridges"),this.io.connected.subscribe(()=>k(this,null,function*(){this.getChildBridgeMetadata(),this.io.socket.emit("monitor-child-bridge-status"),yield this.loadInstalledPlugins(),this.installedPlugins.length||this.showSearch();let{action:e,plugin:o}=this.$router.parseUrl(this.$router.url).queryParams;if(e){let i=this.installedPlugins.find(u=>u.name===o);switch(e){case"just-installed":{i&&(i.isConfigured?this.$modal.open(H,{size:"lg",backdrop:"static"}):this.$plugin.settings(i));break}case"open-manage-version":{i&&this.$plugin.installAlternateVersion(i);break}}this.$router.navigate([],{queryParams:{},replaceUrl:!0,queryParamsHandling:""})}})),this.io.socket.on("child-bridge-status-update",e=>{let o=this.childBridges.find(i=>i.username===e.username);o?Object.assign(o,e):this.childBridges.push(e)}),this.navigationSubscription=this.$router.events.subscribe(e=>{e instanceof we&&this.loadInstalledPlugins()})})}search(){this.installedPlugins=[],this.loading=!0,this.showExitButton=!0,this.$api.get(`/plugins/search/${encodeURIComponent(this.form.value.query)}`).subscribe({next:e=>{let o=new Set;this.installedPlugins=e.reduce((i,u)=>{if(u.name==="homebridge-config-ui-x"||o.has(u.name))return i;if(u.newHbScope){let Y=u.newHbScope.to,$e=e.some(De=>De.name===Y);(u.installedVersion||!$e)&&(o.add(Y),i.push(u))}else i.push(u);return i},[]),this.appendMetaInfo(),this.loading=!1},error:e=>{this.loading=!1,this.isSearchMode=!1,console.error(e),this.$toastr.error(e.error.message||e.message,this.$translate.instant("toast.title_error")),this.loadInstalledPlugins()}})}onClearSearch(){this.loadInstalledPlugins()}onSubmit({value:e}){e.query.length?(this.isSearchMode=!0,this.search()):this.isSearchMode&&(this.isSearchMode=!1,this.loadInstalledPlugins())}showSearch(){this.showSearchBar?(this.showSearchBar=!1,this.isSearchMode&&(this.isSearchMode=!1,this.form.setValue({query:""}),this.loadInstalledPlugins())):(window.document.querySelector("body").classList.remove("bg-black"),this.tab="main",this.showSearchBar=!0,setTimeout(()=>this.searchInput.nativeElement.focus(),0))}showStats(){this.tab==="stats"?(window.document.querySelector("body").classList.remove("bg-black"),this.tab="main"):(window.document.querySelector("body").classList.add("bg-black"),this.tab="stats",this.showSearchBar=!1)}openSupport(){this.$modal.open(Me,{size:"lg",backdrop:"static"})}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.navigationSubscription&&this.navigationSubscription.unsubscribe(),this.io.end()}getPluginChildBridges(e){return this.childBridges.filter(o=>o.plugin===e.name)}loadInstalledPlugins(){return k(this,null,function*(){this.form.setValue({query:""}),this.showExitButton=!1,this.installedPlugins=[],this.loading=!0,this.mainError=!1;try{let e=yield D(this.$api.get("/plugins"));this.installedPlugins=e.filter(i=>i.name!=="homebridge-config-ui-x"),yield this.appendMetaInfo();let o=this.installedPlugins.sort((i,u)=>i.updateAvailable!==u.updateAvailable?i.updateAvailable?-1:1:i.newHbScope&&!u.newHbScope?-1:i.disabled!==u.disabled?i.disabled?1:-1:i.isConfigured!==u.isConfigured?i.isConfigured?1:-1:i.hasChildBridgesUnpaired!==u.hasChildBridgesUnpaired?i.hasChildBridgesUnpaired?-1:1:i.hasChildBridges!==u.hasChildBridges&&this.$settings.env.recommendChildBridges?i.hasChildBridges?1:-1:i.name.localeCompare(u.name));return this.loading=!1,o}catch(e){console.error(e),this.loading=!1,this.mainError=!0,this.$toastr.error(this.$translate.instant("plugins.toast_failed_to_load_plugins"),this.$translate.instant("toast.title_error"))}})}appendMetaInfo(){return k(this,null,function*(){yield Promise.all(this.installedPlugins.filter(e=>e.installedVersion).map(e=>k(this,null,function*(){try{let o=yield D(this.$api.get(`/config-editor/plugin/${encodeURIComponent(e.name)}`));e.isConfigured=o.length>0,e.isConfiguredDynamicPlatform=e.isConfigured&&Object.prototype.hasOwnProperty.call(o[0],"platform"),e.recommendChildBridge=e.isConfiguredDynamicPlatform&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&!["homebridge","homebridge-config-ui-x"].includes(e.name),e.hasChildBridges=e.isConfigured&&o.some(u=>u._bridge&&u._bridge.username);let i=this.getPluginChildBridges(e);e.hasChildBridgesUnpaired=i.some(u=>!u.paired),this.$settings.env.plugins?.hideUpdatesFor?.includes(e.name)&&(e.updateAvailable=!1)}catch{e.isConfigured=!0,e.hasChildBridges=!0}})))})}getChildBridgeMetadata(){this.io.request("get-homebridge-child-bridge-status").subscribe(e=>{this.childBridges=e})}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],viewQuery:function(o,i){if(o&1&&ee(Ei,5),o&2){let u;ie(u=te())&&(i.searchInput=u.first)}},decls:20,vars:26,consts:[["searchInput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","ngbTooltip"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2","d-none","d-md-inline-block",3,"click","ngbTooltip"],["type","button",1,"btn","btn-elegant","my-0","me-0",3,"click"],[1,"fa","fa-fw","fa-question-circle-o"],[1,"row"],[1,"d-flex","flex-wrap","justify-content-between"],[1,"col-md-12"],["novalidate","",3,"ngSubmit","formGroup"],["type","text","formControlName","query",1,"hb-npm-search",3,"placeholder"],["href","javascript:void(0)",1,"hb-npm-search-clear"],["href","javascript:void(0)",1,"hb-npm-search-clear",3,"click"],[1,"far","fa-fw","fa-times-circle"],[1,"hb-plugin-space-between"],[1,"alert","alert-info","mt-4","text-center","w-100"],[3,"plugin","childBridges"],[1,"fas","fa-fw","primary-text","my-3",2,"font-size","75px",3,"ngClass"],[1,"w-100","py-3","hb-stats-header","text-white","text-center"],[1,"mb-2"],["href","https://developers.homebridge.io/analytics","target","_blank"],[1,"fa","fa-fw","fa-external-link"],[1,"small","grey-text"],["src",Z`https://developers.homebridge.io/analytics/`,"sandbox","allow-scripts allow-same-origin allow-popups","referrerpolicy","no-referrer",1,"hb-stats"]],template:function(o,i){o&1&&(m(0,$i,1,0,"app-spinner"),a(1,"div",1)(2,"div",2)(3,"h3",3),c(4),r(5,"translate"),l()(),a(6,"div",4)(7,"button",5),r(8,"translate"),r(9,"translate"),_("click",function(){return i.showSearch()}),d(10,"i"),l(),a(11,"button",6),r(12,"translate"),r(13,"translate"),_("click",function(){return i.showStats()}),d(14,"i"),l(),a(15,"button",7),r(16,"translate"),_("click",function(){return i.openSupport()}),d(17,"i",8),l()()(),m(18,Fi,2,2)(19,zi,10,3)),o&2&&(g(i.loading?0:-1),n(4),h(s(5,14,"menu.label_plugins")),n(3),C("ngbTooltip",s(8,16,"plugins.search")),y("aria-label",s(9,18,"plugins.search")),n(3),J(K("fas fa-fw",i.showSearchBar?" primary-text":""," fa-search")),n(),C("ngbTooltip",s(12,20,"plugins.stats")),y("aria-label",s(13,22,"plugins.stats")),n(3),J(K("fas fa-fw",i.tab==="stats"?" primary-text":""," fa-sliders")),n(),y("aria-label",s(16,24,"support.title")),n(3),g(i.tab==="main"?18:i.tab==="stats"?19:-1))},dependencies:[Se,ge,ce,le,re,se,fe,ue,me,Ee,B,M,U],styles:[".hb-npm-search[_ngcontent-%COMP%]{outline:none;box-sizing:inherit!important;background-color:inherit;height:50px!important;width:100%;border-width:.5px;padding:10px;margin-bottom:15px}@media (hover: hover){.hb-npm-search[_ngcontent-%COMP%]:hover{border:1px solid #000000}}.hb-npm-search[_ngcontent-%COMP%]:focus{border:1px solid #000000;box-shadow:0 1px #000}.hb-npm-search-clear[_ngcontent-%COMP%]{position:absolute;right:25px;font-size:35px;color:#d0d0d0;line-height:50px;cursor:pointer}.hb-plugin-space-between[_ngcontent-%COMP%]{box-sizing:border-box;width:calc(50% - 6.6666666667px)}@media only screen and (max-width: 991px){.hb-plugin-space-between[_ngcontent-%COMP%]{width:100%}}.hb-stats-header[_ngcontent-%COMP%]{background:#242424;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.hb-stats-header[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{border:1px solid grey;border-radius:5px;padding:5px;font-size:.8rem;color:#d3d3d3}.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 121px);width:100%;overflow:hidden;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}@media (max-width: 767px){.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 60px)}}"]})}return t})();export{Yt as PluginsComponent};
@@ -1 +0,0 @@
1
- import{a as Oe}from"./chunk-HYGTZ767.js";import{a as Ne}from"./chunk-LZTR2JMZ.js";import{a as Le}from"./chunk-F3ERQJVG.js";import{n as ze}from"./chunk-IDT6WBAB.js";import"./chunk-UQYCFN3T.js";import"./chunk-GDFV4BMO.js";import"./chunk-NGNQPAAK.js";import"./chunk-QDCKP2LU.js";import{b as at}from"./chunk-63UHV4TV.js";import{a as it,b as nt}from"./chunk-UD6SVFW2.js";import"./chunk-7EQ4BJZB.js";import"./chunk-EGCUYKRH.js";import"./chunk-TQNKRJOX.js";import{g as oe,m as P,n as te,t as re}from"./chunk-CF2ZN7LY.js";import{A as ee,b as X,c as ne,e as Y,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 Me,z as Z}from"./chunk-T252YJXA.js";import{a as De}from"./chunk-ROYACDP2.js";import"./chunk-ASKYLUSK.js";import{d as O,e as Ae}from"./chunk-X7PVYZAE.js";import{b as G}from"./chunk-BU6UAZVK.js";import{c as ke,d as de,f as ie,g as ce,k as M,m as Ve,n as A}from"./chunk-HZUGXGIE.js";import{a as R,b as F}from"./chunk-LXXELGX4.js";import{c as ye,d as Ie}from"./chunk-SRP6QX5M.js";import{Bc as r,Cc as s,Dc as z,Hb as v,Ib as h,Jb as _,Lb as D,M as w,Mb as N,Nb as L,Ob as m,Pb as n,Qb as o,Rb as d,Vb as k,Xa as pe,Ya as _e,Yb as f,Zb as b,ab as t,bc as ge,cc as be,cd as U,dc as ve,g as le,h as S,hd as J,jd as Se,kc as l,la as C,lc as u,mb as $,mc as g,ra as y,rc as fe,sa as I,sc as Ce,tc as xe,w as B,xc as V,yc as T,zc as Q}from"./chunk-SKZUTSHE.js";var Ue=(i,c)=>({"green-text":i,"grey-text":c});function ot(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),o(),l(10),r(11,"titlecase"),o()(),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))}),o(),d(15,"label",24),o()()}if(i&2){let e=c.$implicit,a=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,Ue,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",!a.isInList(e._username))("disabled",a.clicked),v("aria-label",s(14,14,"form.button_allow")+" "+e.name),t(2),m("for","hidePluginUpdates_"+e._username)}}function rt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_save")," ")}function st(i,c){i&1&&d(0,"i",22)}var He=(()=>{class i{$activeModal=C(P);$api=C(A);$settings=C(G);$toastr=C(M);$translate=C(R);originalBlacklist=[];updatedBlacklist=[];existingBlacklist=[];clicked=!1;mainPairing={};pairings=[];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,a)=>e.localeCompare(a)),this.originalBlacklist=[...this.updatedBlacklist];try{let e=yield B(this.$api.get("/server/pairings"));this.mainPairing=e.find(a=>a._main),this.pairings=e.filter(a=>!a._main).sort((a,p)=>a.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(a=>a!==e):(this.updatedBlacklist.push(e),this.updatedBlacklist.sort((a,p)=>a.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"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(a){return new(a||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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),n(7,"div",4)(8,"div",5),d(9,"i",6),o(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o(),n(14,"li"),l(15),r(16,"translate"),o()(),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),o(),l(28," \xB7 Homebridge "),o()(),n(29,"div",14)(30,"input",15),r(31,"translate"),f("click",function(){return p.toggleList(p.mainPairing._username)}),o(),d(32,"label",16),o()(),N(33,ot,16,19,"li",9,D),o()(),n(35,"div",17)(36,"div",10)(37,"button",18),f("click",function(){return p.dismissModal()}),l(38),r(39,"translate"),o()(),d(40,"div",19),n(41,"div",20)(42,"button",21),f("click",function(){return p.updateBlacklist()}),h(43,rt,2,3),h(44,st,1,0,"i",22),o()()()()),a&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,Ue,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,Z,J,re],encapsulation:2})}return i})();var me=le(at(),1);var We=le(it(),1),Ke=le(nt(),1);var lt=i=>({maxBackupSizeText:i});function pt(i,c){if(i&1&&d(0,"input",10),i&2){let e=b(2);m("value",e.selectedBackup.fileName)}}function dt(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))}),o()}}function ct(i,c){if(i&1&&(n(0,"div",4)(1,"div",7),d(2,"i",8),o(),n(3,"ul",9)(4,"li"),l(5),r(6,"translate"),o(),n(7,"li"),l(8),r(9,"translate"),o(),n(10,"li"),l(11),r(12,"translate"),o(),n(13,"li"),l(14),r(15,"translate"),o()(),h(16,pt,1,1,"input",10),h(17,dt,1,0,"input",11),o()),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",V(15,lt,e.maxFileSizeText))),t(3),u(s(15,13,"backup.restore_warning")),t(2),_(e.selectedBackup?16:-1),t(),_(e.selectedBackup?-1:17)}}function mt(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.dismissModal())}),l(2),r(3,"translate"),o()}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 ut(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"),o()}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 ht(i,c){i&1&&d(0,"i",19)}function _t(i,c){if(i&1&&(n(0,"span"),l(1),o()),i&2){let e=b(3);t(),g("",e.uploadPercent,"% - ")}}function gt(i,c){i&1&&(n(0,"span"),l(1," Extracting Archive"),o())}function bt(i,c){i&1&&(n(0,"span"),l(1),r(2,"translate"),o()),i&2&&(t(),g(" ",s(2,1,"backup.label_uploading")))}function vt(i,c){if(i&1&&(n(0,"span"),h(1,ht,1,0,"i",19),h(2,_t,2,1,"span"),h(3,gt,2,0,"span"),h(4,bt,3,3,"span"),o()),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 ft(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_restore")," ")}function Ct(i,c){if(i&1){let e=k();n(0,"div",6)(1,"div",13),h(2,mt,4,7,"button",14),h(3,ut,4,7,"button",14),o(),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,vt,5,4,"span"),h(8,ft,2,3),o()()()}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 xt(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"),o()(),d(6,"div",16),o()}i&2&&(t(4),g(" ",s(5,1,"menu.hbrestart.title")," "))}var Ge=(()=>{class i{$activeModal=C(P);$api=C(A);$modal=C(te);$route=C(O);$toastr=C(M);$translate=C(R);$ws=C(De);io;term=new We.Terminal;termTarget;fitAddon=new Ke.FitAddon;setupWizardRestore=!1;selectedBackup=null;clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;restoreArchiveType="homebridge";uploadPercent=0;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()}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()}dismissModal(){this.$activeModal.dismiss("Dismiss")}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:a=>{console.error(a),this.$toastr.error(a.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:a=>{a.type===ye.UploadProgress?this.uploadPercent=Math.round(100*a.loaded/a.total):a instanceof Ie&&(this.restoreStarted=!0,this.restoreInProgress=!0,setTimeout(()=>{this.startHbfxRestore()},500),this.clicked=!1)},error:a=>{this.clicked=!1,console.error(a),this.$toastr.error(a.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"))}})})}static \u0275fac=function(a){return new(a||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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),h(7,ct,18,17,"div",4),d(8,"div",5),h(9,Ct,9,5,"div",6),h(10,xt,7,3,"div",6),o()),a&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 je=(i,c)=>({"fa-arrow-right":i,"fa-cog fa-spin":c}),St=i=>({backupTime:i,dayCount:7}),yt=(i,c)=>({"fa-trash":i,"fa-cog fa-spin":c}),It=(i,c)=>({backupSize:i,maxBackupSizeText:c});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",V(7,St,z(1,1,e.backupTime,"shortTime")))," ")}}function wt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"plugins.settings.restart_required")," ")}function Et(i,c){if(i&1&&h(0,kt,3,9)(1,wt,2,3),i&2){let e=b();_(e.backupTime?0:1)}}function Bt(i,c){if(i&1&&(l(0),r(1,"translate")),i&2){let e=b();g(" ",s(1,1,e.backupTime?"plugins.settings.restart_required":"backup.scheduled_backup_disabled")," ")}}function Tt(i,c){if(i&1&&(n(0,"span",33),r(1,"translate"),d(2,"i",40),l(3),o()),i&2){let e=b().$implicit;m("ngbTooltip",z(1,2,"backup.backup_exceeds_max_size",T(5,It,e.size+"MB",e.maxBackupSizeText))),t(3),g(" ",e.size,"MB ")}}function $t(i,c){if(i&1&&(n(0,"span"),l(1),o()),i&2){let e=b().$implicit;t(),g(" ",e.size,"MB ")}}function Ft(i,c){if(i&1){let e=k();n(0,"li",22)(1,"span")(2,"span",32),l(3),r(4,"date"),o(),d(5,"br"),n(6,"small",23),l(7),r(8,"date"),h(9,Tt,4,8,"span",33),h(10,$t,2,1,"span"),o()(),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),o(),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),o(),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",25),o()()()}if(i&2){let e=c.$implicit,a=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",a.clicked||a.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",a.clicked||a.deleting)("ngbTooltip",s(17,25,"form.button_download")),v("aria-label",s(18,27,"form.button_download")),t(4),m("disabled",a.clicked||a.deleting)("ngbTooltip",s(21,29,"form.button_delete")),v("aria-label",s(22,31,"form.button_delete")),t(3),m("ngClass",T(33,yt,e.id!==a.deleting,e.id===a.deleting))}}function Pt(i,c){if(i&1&&(n(0,"ul",27)(1,"li",9)(2,"h6",10),l(3),r(4,"translate"),o()(),N(5,Ft,24,36,"li",22,D),o()),i&2){let e=b();t(3),u(s(4,1,"backup.files_auto")),t(2),L(e.scheduledBackups)}}var se=(()=>{class i{$activeModal=C(P);$api=C(A);$modal=C(te);$router=C(O);$settings=C(G);$toastr=C(M);$translate=C(R);restartToastIsShown=!1;Date=Date;clicked=!1;scheduledBackups=[];backupTime;deleting=null;currentSettingEnabled=!1;currentSettingPath="";enabledFormControl=new E(!1);pathFormControl=new E("");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)}))}download(e){this.$api.get(`/backup/scheduled-backups/${e.id}`,{observe:"response",responseType:"blob"}).subscribe({next:a=>{let p=e.fileName||"homebridge-backup.tar.gz",x=a.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)(a.body,p)},error:a=>{console.error(a),this.$toastr.error(this.$translate.instant("backup.backup_download_failed"),this.$translate.instant("toast.title_error"))}})}restore(e){this.$activeModal.close();let a=this.$modal.open(Ge,{size:"lg",backdrop:"static"});a.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:a=>{this.deleting=null,console.error(a),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;try{let e=yield B(this.$api.get("/backup/download",{observe:"response",responseType:"blob"})),a=e.headers.get("File-Name")||"homebridge-backup.tar.gz",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,a),this.clicked=!1}catch(e){this.clicked=!1,console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}onCreateBackupClick(){return S(this,null,function*(){this.clicked=!0;try{yield B(this.$api.post("/backup",{})),this.clicked=!1,this.getScheduledBackups()}catch(e){this.clicked=!1,console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}saveUiSettingChange(e,a){return S(this,null,function*(){try{yield B(this.$api.put("/config-editor/ui",{key:e,value:a})),this.$settings.setEnvItem(e,a),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)}})}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(a){return new(a||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],decls:92,vars:80,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"],[1,"mb-0","text-center"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"grey-text","small"],[1,"text-start","text-md-end","w-100","w-md-50"],["type","text","placeholder","/home/pi/homebridge-backups",1,"form-control","custom-input",3,"formControl"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"small","grey-text"],[1,"text-end","grey-text","d-flex","align-items-center"],["type","checkbox","id","disableScheduledBackups",1,"rendux-input",3,"formControl"],["for","disableScheduledBackups",1,"rendux-label"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"grey-text"],[1,"btn","btn-primary","m-0","ms-3",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,"modal-footer","justify-content-between"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],[1,"text-end"],["container","modal","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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),n(7,"div",4)(8,"div",5),d(9,"i",6),o(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o(),n(14,"li"),l(15),r(16,"translate"),o(),n(17,"li"),l(18),r(19,"translate"),o()(),n(20,"ul",8)(21,"li",9)(22,"h6",10),l(23),r(24,"translate"),o()(),n(25,"li",11)(26,"div",12),l(27),r(28,"translate"),d(29,"br"),n(30,"span",13),l(31),r(32,"translate"),o()(),n(33,"div",14),d(34,"input",15),r(35,"translate"),o()(),n(36,"li",16)(37,"div",17),l(38),r(39,"translate"),d(40,"br"),n(41,"span",18),h(42,Et,2,1)(43,Bt,2,3),o()(),n(44,"div",19),d(45,"input",20),r(46,"translate"),d(47,"label",21),o()(),n(48,"li",22)(49,"div")(50,"span"),l(51),r(52,"translate"),o(),d(53,"br"),n(54,"small",23),l(55),r(56,"translate"),o()(),n(57,"button",24),r(58,"translate"),f("click",function(){return p.onDownloadBackupClick()}),d(59,"i",25),o()(),n(60,"li",22)(61,"div")(62,"span"),l(63),r(64,"translate"),o(),d(65,"br"),n(66,"small",23),l(67),r(68,"translate"),o()(),n(69,"button",24),r(70,"translate"),f("click",function(){return p.onCreateBackupClick()}),d(71,"i",25),o()(),n(72,"li",22)(73,"div")(74,"span"),l(75),r(76,"translate"),o(),d(77,"br"),n(78,"small",23),l(79),r(80,"translate"),o()(),n(81,"button",24),r(82,"translate"),f("click",function(){return p.restore(null)}),d(83,"i",26),o()()(),h(84,Pt,7,3,"ul",27),o(),n(85,"div",28),d(86,"div",17),n(87,"div",29)(88,"button",30),f("click",function(){return p.dismissModal()}),l(89),r(90,"translate"),o()(),d(91,"div",31),o()()),a&2&&(t(3),u(s(4,32,"backup.title_backup")),t(2),m("disabled",p.clicked||p.deleting),v("aria-label",s(6,34,"form.button_close")),t(7),u(s(13,36,"backup.backup_help_one")),t(3),u(s(16,38,"backup.backup_help_two")),t(3),u(s(19,40,"backup.backup_warning")),t(5),u(s(24,42,"backup.settings_title")),t(4),g(" ",s(28,44,"backup.settings_path")),t(4),u(s(32,46,"backup.settings_path_desc")),t(3),m("formControl",p.pathFormControl),v("aria-label",s(35,48,"backup.settings_path")),t(4),g(" ",s(39,50,"backup.settings_enable")),t(4),_(p.enabledFormControl.value?42:43),t(3),m("formControl",p.enabledFormControl),v("aria-label",s(46,52,"backup.settings_enable")),t(6),u(s(52,54,"backup.backup_now")),t(4),u(s(56,56,"backup.backup_now_desc")),t(2),m("disabled",p.clicked),v("aria-label",s(58,58,"backup.backup_now")),t(2),m("ngClass",T(74,je,!p.clicked,p.clicked)),t(4),u(s(64,60,"backup.backup_now")),t(4),u(s(68,62,"backup.backup_now_save_desc")),t(2),m("disabled",p.clicked),v("aria-label",s(70,64,"backup.backup_now")),t(2),m("ngClass",T(77,je,!p.clicked,p.clicked)),t(4),u(s(76,66,"backup.restore_now")),t(4),u(s(80,68,"backup.restore_now_desc")),t(2),m("disabled",p.clicked),v("aria-label",s(82,70,"backup.restore_now")),t(3),_(p.scheduledBackups.length?84:-1),t(4),m("disabled",p.clicked||p.deleting),t(),g(" ",s(90,72,"form.button_close")," "))},dependencies:[re,U,Se,F,ee,ne,X,Y,ae],encapsulation:2})}return i})();function Rt(i,c){i&1&&(n(0,"div",12),d(1,"i",13),o(),n(2,"p",14),l(3),r(4,"translate"),o()),i&2&&(t(3),u(s(4,1,"reset.no_accessories")))}function Mt(i,c){i&1&&(n(0,"div",12),d(1,"i",15),o(),n(2,"ul",16)(3,"li"),l(4),r(5,"translate"),o(),n(6,"li"),l(7),r(8,"translate"),o(),n(9,"li"),l(10),r(11,"translate"),o()(),n(12,"ngb-alert",17)(13,"p",18),l(14),r(15,"translate"),o()()),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 At(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.dismissModal())}),l(2),r(3,"translate"),o()}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 Vt(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.dismissModal())}),l(2),r(3,"translate"),o()}i&2&&(v("aria-label",s(1,2,"form.button_close")),t(2),g(" ",s(3,4,"form.button_close")," "))}function Dt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_remove")," ")}function Nt(i,c){i&1&&d(0,"i",22)}function Lt(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,Dt,2,3),h(2,Nt,1,0,"i",22),o()}if(i&2){let e=b();m("disabled",e.clicked),t(),_(e.clicked?-1:1),t(),_(e.clicked?2:-1)}}var Qe=(()=>{class i{$activeModal=C(P);$api=C(A);$router=C(O);$toastr=C(M);$translate=C(R);clicked=!1;cachedAccessories=[];ngOnInit(){this.loadCachedAccessories()}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"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}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()}})}static \u0275fac=function(a){return new(a||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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),n(7,"div",4),h(8,Rt,5,3),h(9,Mt,16,13),o(),n(10,"div",5)(11,"div",6),h(12,At,4,7,"button",7),o(),n(13,"div",8),h(14,Vt,4,6,"button",9),o(),n(15,"div",10),h(16,Lt,3,3,"button",11),o()()()),a&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 Ot=(i,c)=>({"green-text":i,"grey-text":c}),zt=(i,c)=>({"btn-danger":i,"btn-elegant":c}),Ut=(i,c,e)=>({"fa-broom":i,"fa-undo":c,"fa-spinner fa-pulse":e});function Ht(i,c){i&1&&(n(0,"div",12),d(1,"i",13),o(),n(2,"p",14),l(3),r(4,"translate"),o()),i&2&&(t(3),u(s(4,1,"reset.bridge_accessories.empty")))}function Wt(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),o()()(),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),o()()}if(i&2){let e=c.$implicit,a=b(2);t(2),g(" ",e.name," "),t(3),m("ngClass",T(12,Ot,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",a.clicked)("ngClass",T(15,zt,!a.toDelete.includes(e._id),a.toDelete.includes(e._id))),v("aria-label",s(11,10,"form.button_delete")),t(2),m("ngClass",Q(18,Ut,!a.toDelete.includes(e._id),a.toDelete.includes(e._id)&&!a.clicked,a.toDelete.includes(e._id)&&a.clicked))}}function Kt(i,c){if(i&1&&(n(0,"div",12),d(1,"i",15),o(),n(2,"ul",16)(3,"li"),l(4),r(5,"translate"),o(),n(6,"li"),l(7),r(8,"translate"),o(),n(9,"li"),l(10),r(11,"translate"),o()(),n(12,"ul",17),N(13,Wt,13,22,"li",18,D),o()),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 Gt(i,c){if(i&1){let e=k();n(0,"button",24),f("click",function(){y(e);let p=b();return I(p.dismissModal())}),l(1),r(2,"translate"),o()}if(i&2){let e=b();m("disabled",e.clicked),t(),g(" ",s(2,2,"form.button_close")," ")}}function jt(i,c){if(i&1){let e=k();n(0,"button",25),f("click",function(){y(e);let p=b();return I(p.dismissModal())}),l(1),r(2,"translate"),o()}i&2&&(t(),g(" ",s(2,1,"form.button_close")," "))}function qt(i,c){i&1&&d(0,"i",27)}function Qt(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,Qt,1,1)),i&2){let e=b(2);g(" ",s(1,2,"form.button_remove")," "),t(2),_(e.toDelete.length>0?2:-1)}}function Xt(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,qt,1,0,"i",27)(2,Jt,3,4),o()}if(i&2){let e=b();m("disabled",!e.toDelete.length||e.clicked),t(),_(e.clicked?1:2)}}var Je=(()=>{class i{$activeModal=C(P);$api=C(A);$router=C(O);$toastr=C(M);$translate=C(R);clicked=!1;pairings=[];toDelete=[];ngOnInit(){this.loadPairings()}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"))}})}toggleList(e){this.toDelete.includes(e)?this.toDelete=this.toDelete.filter(a=>a!==e):this.toDelete.push(e)}dismissModal(){this.$activeModal.dismiss("Dismiss")}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,a)=>e.name.localeCompare(a.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()}})}static \u0275fac=function(a){return new(a||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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),n(7,"div",4),h(8,Ht,5,3),h(9,Kt,15,9),o(),n(10,"div",5)(11,"div",6),h(12,Gt,3,4,"button",7),o(),n(13,"div",8),h(14,jt,3,3,"button",9),o(),n(15,"div",10),h(16,Xt,3,2,"button",11),o()()()),a&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 Yt(i,c){i&1&&(l(0),r(1,"translate")),i&2&&g(" ",s(1,1,"form.button_reset")," ")}function Zt(i,c){i&1&&d(0,"i",16)}var Xe=(()=>{class i{$activeModal=C(P);$api=C(A);$route=C(O);$toastr=C(M);$translate=C(R);clicked;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"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(a){return new(a||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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),n(7,"div",4)(8,"div",5),d(9,"i",6),o(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o(),n(14,"li"),l(15),r(16,"translate"),o(),n(17,"li"),l(18),r(19,"translate"),o(),n(20,"li"),l(21),r(22,"translate"),o()(),n(23,"ngb-alert",8)(24,"p",9),l(25),r(26,"translate"),o()()(),n(27,"div",10)(28,"div",11)(29,"button",12),r(30,"translate"),f("click",function(){return p.dismissModal()}),l(31),r(32,"translate"),o()(),d(33,"div",13),n(34,"div",14)(35,"button",15),f("click",function(){return p.onResetHomebridgeAccessoryClick()}),h(36,Yt,2,3),h(37,Zt,1,0,"i",16),o()()()()),a&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}),Ye=(i,c,e)=>({"fa-refresh":i,"fa-undo":c,"fa-spinner fa-pulse":e}),ei=(i,c,e)=>({"fa-trash":i,"fa-undo":c,"fa-spinner fa-pulse":e});function ti(i,c){i&1&&(n(0,"div",12),d(1,"i",13),o(),n(2,"p",14),l(3),r(4,"translate"),o()),i&2&&(t(3),u(s(4,1,"reset.bridges.empty")))}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),o(),l(10),r(11,"titlecase"),o()(),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),o()()}if(i&2){let e=c.$implicit,a=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",a.clicked)("ngClass",T(18,he,!a.isInList(e._id),a.isInList(e._id))),v("aria-label",s(13,13,"form.button_unpair")),t(2),m("ngClass",Q(21,Ye,!a.isInList(e._id),a.isInList(e._id)&&!a.clicked,a.isInList(e._id)&&a.clicked))}}function ni(i,c){if(i&1&&(n(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),o(),n(5,"p",19),l(6),r(7,"translate"),o()(),N(8,ii,15,25,"li",20,D),o()),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 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),o()()(),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),o()()}if(i&2){let e=c.$implicit,a=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",a.clicked)("ngClass",T(15,he,!a.isInList(e._id),a.isInList(e._id))),v("aria-label",s(11,10,"form.button_unpair")),t(2),m("ngClass",Q(18,Ye,!a.isInList(e._id),a.isInList(e._id)&&!a.clicked,a.isInList(e._id)&&a.clicked))}}function oi(i,c){if(i&1&&(n(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),o(),n(5,"p",19),l(6),r(7,"translate"),o()(),N(8,ai,13,22,"li",20,D),o()),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 ri(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),o()()(),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),o()()}if(i&2){let e=c.$implicit,a=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",a.clicked)("ngClass",T(15,he,!a.isInList(e._id),a.isInList(e._id))),v("aria-label",s(11,10,"form.button_unpair")),t(2),m("ngClass",Q(18,ei,!a.isInList(e._id),a.isInList(e._id)&&!a.clicked,a.isInList(e._id)&&a.clicked))}}function si(i,c){if(i&1&&(n(0,"ul",16)(1,"li",17)(2,"h6",18),l(3),r(4,"translate"),o(),n(5,"p",19),l(6),r(7,"translate"),o()(),N(8,ri,13,22,"li",20,D),o()),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 li(i,c){if(i&1&&(n(0,"div",12),d(1,"i",15),o(),h(2,ni,10,6,"ul",16),h(3,oi,10,6,"ul",16),h(4,si,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 pi(i,c){if(i&1){let e=k();n(0,"button",26),f("click",function(){y(e);let p=b();return I(p.dismissModal())}),l(1),r(2,"translate"),o()}if(i&2){let e=b();m("disabled",e.clicked),t(),g(" ",s(2,2,"form.button_close")," ")}}function di(i,c){if(i&1){let e=k();n(0,"button",27),f("click",function(){y(e);let p=b();return I(p.dismissModal())}),l(1),r(2,"translate"),o()}i&2&&(t(),g(" ",s(2,1,"form.button_close")," "))}function ci(i,c){if(i&1&&l(0),i&2){let e=b(3);g(" (",e.toDelete.length,") ")}}function mi(i,c){if(i&1&&(l(0),r(1,"translate"),h(2,ci,1,1)),i&2){let e=b(2);g(" ",s(1,2,"form.button_reset")," "),t(2),_(e.toDelete.length>0?2:-1)}}function ui(i,c){i&1&&d(0,"i",29)}function hi(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,mi,3,4),h(2,ui,1,0,"i",29),o()}if(i&2){let e=b();m("disabled",!e.toDelete.length||e.clicked),t(),_(e.clicked?-1:1),t(),_(e.clicked?2:-1)}}var Ze=(()=>{class i{$activeModal=C(P);$api=C(A);$router=C(O);$toastr=C(M);$translate=C(R);clicked=!1;pairingsNonChild=[];pairingsChildActive=[];pairingsChildStale=[];toDelete=[];ngOnInit(){this.loadPairings()}toggleList(e,a=!1){this.toDelete.some(p=>p.id===e)?this.toDelete=this.toDelete.filter(p=>p.id!==e):this.toDelete.push({id:e,resetPairingInfo:a})}isInList(e){return this.toDelete.some(a=>a.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"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadPairings(){return S(this,null,function*(){try{let e=(yield B(this.$api.get("/server/pairings"))).filter(a=>!a._main).sort((a,p)=>a.name.localeCompare(p.name));this.pairingsChildActive=e.filter(a=>a._category==="bridge"&&!a._couldBeStale),this.pairingsNonChild=e.filter(a=>a._category!=="bridge"),this.pairingsChildStale=e.filter(a=>a._category==="bridge"&&a._couldBeStale)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("settings.unpair_bridge.load_error"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(a){return new(a||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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.dismissModal()}),o()(),n(7,"div",4),h(8,ti,5,3),h(9,li,5,3),o(),n(10,"div",5)(11,"div",6),h(12,pi,3,4,"button",7),o(),n(13,"div",8),h(14,di,3,3,"button",9),o(),n(15,"div",10),h(16,hi,3,3,"button",11),o()()()),a&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,J,F],encapsulation:2})}return i})();function _i(i,c){if(i&1){let e=k();n(0,"li",9)(1,"div")(2,"span",16),l(3),o(),d(4,"br"),n(5,"span",17),l(6),o()(),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())}),o(),d(9,"label",19),o()()}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 et=(()=>{class i{$activeModal=C(P);adaptersOriginal=[];adaptersAvailable=[];adaptersSelected=[];isUnchanged=!0;ngOnInit(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersSelected.some(a=>a.iface===e.iface)}),this.adaptersOriginal=this.adaptersSelected.map(e=>e.iface)}onAdapterSelectionChange(){this.isUnchanged=this.adaptersOriginal.length===this.adaptersAvailable.filter(e=>e.selected).length&&this.adaptersOriginal.every(e=>this.adaptersAvailable.some(a=>a.iface===e&&a.selected))}submit(){this.$activeModal.close(this.adaptersAvailable.filter(e=>e.selected).map(e=>e.iface))}closeAndReset(){this.adaptersAvailable.forEach(e=>{e.selected=this.adaptersOriginal.includes(e.iface)}),this.isUnchanged=!0,this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(a){return new(a||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],inputs:{adaptersAvailable:"adaptersAvailable",adaptersSelected:"adaptersSelected"},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(a,p){a&1&&(n(0,"div",0)(1,"div",1)(2,"h5",2),l(3),r(4,"translate"),o(),n(5,"button",3),r(6,"translate"),f("click",function(){return p.closeAndReset()}),o()(),n(7,"div",4)(8,"div",5),d(9,"i",6),o(),n(10,"ul",7)(11,"li"),l(12),r(13,"translate"),o()(),n(14,"ul",8),N(15,_i,10,5,"li",9,D),o()(),n(17,"div",10)(18,"div",11)(19,"button",12),r(20,"translate"),f("click",function(){return p.closeAndReset()}),l(21),r(22,"translate"),o()(),d(23,"div",13),n(24,"div",14)(25,"button",15),f("click",function(){return p.submit()}),l(26),r(27,"translate"),o()()()()),a&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:[Z,X,Y,Ee,F],encapsulation:2})}return i})();var gi=["wallpaperInput"],bi=i=>({maxFileSizeText:i});function vi(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),o()()}if(i&2){let e=b();t(),m("src",e.wallpaperUrl,_e),t(),v("aria-label",s(3,2,"form.button_delete"))}}function fi(i,c){i&1&&d(0,"div",11)}var tt=(()=>{class i{$activeModal=C(P);$api=C(A);$settings=C(G);$toastr=C(M);$translate=C(R);clicked=!1;maxFileSizeText=globalThis.backup.maxBackupSizeText;selectedFile;wallpaperUrl=null;originalWallpaperUrl=null;wallpaperInput;ngOnInit(){this.$settings.env.customWallpaperHash&&(this.wallpaperUrl=`${Ve.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`,this.originalWallpaperUrl=this.wallpaperUrl)}onFileChange(e){if(e.length){this.selectedFile=e[0];let a=new FileReader;a.onload=p=>{this.wallpaperUrl=p.target.result},a.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:a=>{console.error(a),this.$toastr.error(a.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=""}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(a){return new(a||i)};static \u0275cmp=$({type:i,selectors:[["ng-component"]],viewQuery:function(a,p){if(a&1&&ge(gi,5),a&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(a,p){if(a&1){let x=k();n(0,"div",1)(1,"div",2)(2,"h5",3),l(3),r(4,"translate"),o(),n(5,"button",4),r(6,"translate"),f("click",function(){return y(x),I(p.dismissModal())}),o()(),n(7,"div",5)(8,"div",6),d(9,"i",7),o(),n(10,"ul",8)(11,"li"),l(12),r(13,"translate"),o(),n(14,"li"),l(15),r(16,"translate"),o(),n(17,"li"),l(18),r(19,"translate"),o()(),n(20,"div",9),h(21,vi,5,4,"div",10)(22,fi,1,0,"div",11),o(),n(23,"div",12)(24,"input",13,0),f("change",function(H){return y(x),I(p.onFileChange(H.target.files))}),o()()(),n(26,"div",14)(27,"div",15)(28,"button",16),f("click",function(){return y(x),I(p.dismissModal())}),l(29),r(30,"translate"),o()(),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"),o()()()()}a&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",V(26,bi,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:[ee,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}),j=i=>({"is-invalid":i}),Ci=i=>({link:i}),xi=(i,c)=>({"badge-danger":i,"badge-info":c});function Si(i,c){i&1&&d(0,"app-spinner")}function yi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ii(i,c){if(i&1){let e=k();n(0,"ul",5)(1,"li",12)(2,"span"),l(3),r(4,"translate"),o(),n(5,"div",13),d(6,"input",14),r(7,"translate"),h(8,yi,1,1,"i",15),o()(),n(9,"li",16)(10,"span",17),l(11),r(12,"translate"),o(),n(13,"button",18),r(14,"translate"),f("click",function(){y(e);let p=b();return I(p.openUiSettings())}),d(15,"i",19),o()(),n(16,"li",16)(17,"span",17),l(18),r(19,"translate"),o(),n(20,"button",18),r(21,"translate"),f("click",function(){y(e);let p=b();return I(p.openBackupModal())}),d(22,"i",19),o()(),n(23,"li",16)(24,"span",17),l(25),r(26,"translate"),o(),n(27,"a",20),r(28,"translate"),d(29,"i",19),o()()()}if(i&2){let e=b();t(3),u(s(4,11,"settings.name")),t(3),m("formControl",e.hbNameFormControl)("ngClass",V(27,j,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 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){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ti(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function $i(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"),o(),n(9,"option",24),l(10,"Bulgarian (bg)"),o(),n(11,"option",25),l(12,"Catalan (ca)"),o(),n(13,"option",26),l(14,"Chinese - Simplified (zh-CN)"),o(),n(15,"option",27),l(16,"Chinese - Traditional (zh-TW)"),o(),n(17,"option",28),l(18,"Czech (cs)"),o(),n(19,"option",29),l(20,"Dutch (nl)"),o(),n(21,"option",30),l(22,"English (en)"),o(),n(23,"option",31),l(24,"Finnish (fi)"),o(),n(25,"option",32),l(26,"French (fr)"),o(),n(27,"option",33),l(28,"German (de)"),o(),n(29,"option",34),l(30,"Hebrew (he)"),o(),n(31,"option",35),l(32,"Hungarian (hu)"),o(),n(33,"option",36),l(34,"Indonesian (id)"),o(),n(35,"option",37),l(36,"Italian (it)"),o(),n(37,"option",38),l(38,"Japanese (ja)"),o(),n(39,"option",39),l(40,"Korean (ko)"),o(),n(41,"option",40),l(42,"Macedonian (mk)"),o(),n(43,"option",41),l(44,"Norwegian (no)"),o(),n(45,"option",42),l(46,"Polish (pl)"),o(),n(47,"option",43),l(48,"Portuguese (Brazil)"),o(),n(49,"option",44),l(50,"Portuguese (Portugal)"),o(),n(51,"option",45),l(52,"Russian (ru)"),o(),n(53,"option",46),l(54,"Slovenian (sl)"),o(),n(55,"option",47),l(56,"Spanish (es)"),o(),n(57,"option",48),l(58,"Swedish (sv)"),o(),n(59,"option",49),l(60,"Thai (th)"),o(),n(61,"option",50),l(62,"Turkish (tr)"),o(),n(63,"option",51),l(64,"Ukrainian (uk)"),o()(),h(65,ki,1,1,"i",15),o()(),n(66,"li",12),l(67),r(68,"translate"),n(69,"div",21)(70,"select",22)(71,"option",52),l(72),r(73,"translate"),o(),n(74,"option",53),l(75),r(76,"translate"),o(),n(77,"option",54),l(78),r(79,"translate"),o(),n(80,"option",55),l(81),r(82,"translate"),o(),n(83,"option",56),l(84),r(85,"translate"),o(),n(86,"option",57),l(87),r(88,"translate"),o(),n(89,"option",58),l(90),r(91,"translate"),o(),n(92,"option",59),l(93),r(94,"translate"),o(),n(95,"option",60),l(96),r(97,"translate"),o(),n(98,"option",61),l(99),r(100,"translate"),o(),n(101,"option",62),l(102),r(103,"translate"),o(),n(104,"option",63),l(105),r(106,"translate"),o(),n(107,"option",64),l(108),r(109,"translate"),o()(),h(110,wi,1,1,"i",15),o()(),n(111,"li",12),l(112),r(113,"translate"),n(114,"div",21)(115,"select",22)(116,"option",23),l(117),r(118,"translate"),o(),n(119,"option",65),l(120),r(121,"translate"),o(),n(122,"option",66),l(123),r(124,"translate"),o()(),h(125,Ei,1,1,"i",15),o()(),n(126,"li",12),l(127),r(128,"translate"),n(129,"div",21)(130,"select",22)(131,"option",67),l(132),r(133,"translate"),o(),n(134,"option",68),l(135),r(136,"translate"),o()(),h(137,Bi,1,1,"i",15),o()(),n(138,"li",12),l(139),r(140,"translate"),n(141,"div",21)(142,"select",22)(143,"option",69),l(144),r(145,"translate"),o(),n(146,"option",70),l(147),r(148,"translate"),o()(),h(149,Ti,1,1,"i",15),o()(),n(150,"li",16)(151,"span",17),l(152),r(153,"translate"),o(),n(154,"button",18),r(155,"translate"),f("click",function(){y(e);let p=b();return I(p.openWallpaperModal())}),d(156,"i",19),o()()()}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 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 Mi(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 Vi(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 Ni(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Li(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"),o()(),n(8,"div",21),d(9,"input",91),r(10,"translate"),h(11,Ni,1,1,"i",15),o()()),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 Oi(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"),o()(),n(8,"div",21),d(9,"input",89),r(10,"translate"),h(11,Vi,1,1,"i",15),o()(),n(12,"li",12)(13,"span"),l(14),r(15,"translate"),d(16,"br"),n(17,"small",72),l(18),r(19,"translate"),o()(),n(20,"div",21),d(21,"input",90),r(22,"translate"),h(23,Di,1,1,"i",15),o()(),h(24,Li,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.runningOnRaspberryPi?24:-1)}}function zi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Ui(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Hi(i,c){if(i&1&&(n(0,"li",16)(1,"span"),l(2),r(3,"translate"),n(4,"code"),l(5,"-D"),o(),d(6,"br"),n(7,"small",72),l(8),r(9,"translate"),o()(),n(10,"div",74)(11,"div",75),d(12,"input",76),r(13,"translate"),d(14,"label",77),o(),h(15,Fi,1,1,"i",15),o()(),n(16,"li",16)(17,"span"),l(18),r(19,"translate"),n(20,"code"),l(21,"-I"),o(),d(22,"br"),n(23,"small",72),l(24),r(25,"translate"),o()(),n(26,"div",74)(27,"div",75),d(28,"input",78),r(29,"translate"),d(30,"label",79),o(),h(31,Pi,1,1,"i",15),o()(),n(32,"li",16)(33,"span"),l(34),r(35,"translate"),n(36,"code"),l(37,"-K"),o(),d(38,"br"),n(39,"small",72),l(40),r(41,"translate"),o()(),n(42,"div",74)(43,"div",75),d(44,"input",80),r(45,"translate"),d(46,"label",81),o(),h(47,Ri,1,1,"i",15),o()(),n(48,"li",16)(49,"span"),l(50),r(51,"translate"),d(52,"br"),n(53,"small",72),l(54),r(55,"translate"),o()(),n(56,"div",74)(57,"div",75),d(58,"input",82),r(59,"translate"),d(60,"label",83),o(),h(61,Mi,1,1,"i",15),o()(),n(62,"li",12)(63,"span"),l(64),r(65,"translate"),d(66,"br"),n(67,"small",72),l(68),r(69,"translate"),o()(),n(70,"div",21),d(71,"input",84),r(72,"translate"),h(73,Ai,1,1,"i",15),o()(),h(74,Oi,25,23),n(75,"li",12)(76,"span")(77,"span",85),l(78,"DEBUG"),o(),d(79,"br")(80,"small",86),r(81,"translate"),o(),n(82,"div",21),d(83,"input",87),h(84,zi,1,1,"i",15),o()(),n(85,"li",12)(86,"span")(87,"span",85),l(88,"NODE_OPTIONS"),o(),d(89,"br"),n(90,"small",72),l(91),r(92,"translate"),o()(),n(93,"div",21),d(94,"input",88),h(95,Ui,1,1,"i",15),o()()),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.platform==="linux"?74:-1),t(6),m("innerHTML",z(81,62,"settings.service.debug_tooltip",V(67,Ci,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 Wi(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"),o()(),n(8,"a",92),r(9,"translate"),d(10,"i",19),o()()),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 Ki(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function Gi(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function ji(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"),o()(),n(8,"div",21),d(9,"input",93),r(10,"translate"),h(11,Gi,1,1,"i",15),o()()),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",V(12,j,e.hbLogTruncateIsInvalid)),v("aria-label",s(10,10,"settings.startup.log_truncate")),t(2),_(e.hbLogTruncateIsSaving?11:-1)}}function qi(i,c){if(i&1&&(n(0,"ul",71),h(1,Hi,96,69),h(2,Wi,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"),o()(),n(11,"div",21),d(12,"input",73),r(13,"translate"),h(14,Ki,1,1,"i",15),o()(),h(15,ji,12,14,"li",12),o()),i&2){let e=b(2);t(),_(e.serviceMode?1:-1),t(),_(e.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",V(15,j,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 Qi(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"),o()(),h(6,qi,16,17,"ul",71),o()}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 Ji(i,c){i&1&&d(0,"i",106)}function Xi(i,c){if(i&1&&(n(0,"span",95),h(1,Ji,1,0,"i",106),l(2),n(3,"span",107),l(4),r(5,"translate"),o()()),i&2){let e=c.$implicit;m("ngClass",T(6,xi,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 Yi(i,c){i&1&&(n(0,"option",97),l(1),r(2,"translate"),o()),i&2&&(t(),g("Avahi (",s(2,1,"settings.mdns_advertiser_rec"),")"))}function Zi(i,c){i&1&&(n(0,"option",100),l(1),r(2,"translate"),o()),i&2&&(t(),g("systemd-resolved (",s(2,1,"settings.mdns_advertiser_exp"),")"))}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){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function sn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function ln(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"),o(),N(9,Xi,6,9,"span",95,D),o(),n(11,"button",96),r(12,"translate"),f("click",function(){y(e);let p=b();return I(p.selectNetworkInterfaces())}),d(13,"i",19),o()(),n(14,"li",12)(15,"span"),l(16),r(17,"translate"),d(18,"br"),n(19,"small",72),l(20),r(21,"translate"),o()(),n(22,"div",21)(23,"select",22),r(24,"translate"),h(25,Yi,3,3,"option",97),n(26,"option",98),l(27),r(28,"translate"),o(),n(29,"option",99),l(30,"Bonjour HAP"),o(),h(31,Zi,3,3,"option",100),o(),h(32,en,1,1,"i",15),o()(),n(33,"li",12)(34,"span"),l(35),r(36,"translate"),d(37,"br"),n(38,"small",72),l(39),r(40,"translate"),o()(),n(41,"div",21),d(42,"input",101),r(43,"translate"),h(44,tn,1,1,"i",15),o()(),n(45,"li",12)(46,"span"),l(47),r(48,"translate"),d(49,"br"),n(50,"small",72),l(51),r(52,"translate"),o()(),n(53,"div",21),d(54,"input",102),r(55,"translate"),h(56,nn,1,1,"i",15),o()(),n(57,"li",12)(58,"span"),l(59),r(60,"translate"),d(61,"br"),n(62,"small",72),l(63),r(64,"translate"),o()(),n(65,"div",21),d(66,"input",101),r(67,"translate"),h(68,an,1,1,"i",15),o()(),n(69,"li",12)(70,"span"),l(71),r(72,"translate"),d(73,"br"),n(74,"small",72),l(75),r(76,"translate"),o()(),n(77,"div",21),d(78,"input",101),r(79,"translate"),h(80,on,1,1,"i",15),o()(),n(81,"li",12)(82,"span"),l(83),r(84,"translate"),d(85,"br")(86,"small",103),r(87,"translate"),o(),n(88,"div",21),d(89,"input",104),r(90,"translate"),h(91,rn,1,1,"i",15),o()(),n(92,"li",12)(93,"span"),l(94),r(95,"translate"),d(96,"br"),n(97,"small",72),l(98),r(99,"translate"),o()(),n(100,"div",21),d(101,"input",105),r(102,"translate"),h(103,sn,1,1,"i",15),o()()()}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",V(96,j,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",V(98,j,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",V(100,j,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",V(102,j,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 pn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function dn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function cn(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"),o()(),n(8,"div",21),d(9,"input",113),r(10,"translate"),h(11,dn,1,1,"i",15),o()()),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",V(12,j,e.uiSessionTimeoutIsInvalid)),v("aria-label",s(10,10,"settings.startup.session")),t(2),_(e.uiSessionTimeoutIsSaving?11:-1)}}function mn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function un(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function hn(i,c){if(i&1&&(n(0,"li",12)(1,"span"),l(2),r(3,"translate"),o(),n(4,"div",21),d(5,"input",114),r(6,"translate"),h(7,mn,1,1,"i",15),o()(),n(8,"li",12)(9,"span"),l(10),r(11,"translate"),o(),n(12,"div",21),d(13,"input",115),r(14,"translate"),h(15,un,1,1,"i",15),o()()),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 _n(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function gn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function bn(i,c){if(i&1){let e=k();n(0,"li",12)(1,"span"),l(2),r(3,"translate"),o(),n(4,"div",21),d(5,"input",116),r(6,"translate"),h(7,_n,1,1,"i",15),o()(),n(8,"li",12)(9,"span"),l(10),r(11,"translate"),o(),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)}),o(),h(15,gn,1,1,"i",15),o()()}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 vn(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"),o()(),n(9,"div",74)(10,"div",75),d(11,"input",108),r(12,"translate"),d(13,"label",109),o(),h(14,pn,1,1,"i",15),o()(),h(15,cn,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"),o()(),n(24,"div",21)(25,"select",22),r(26,"translate"),n(27,"option",110),l(28),r(29,"translate"),o(),n(30,"option",111),l(31),r(32,"translate"),o(),n(33,"option",112),l(34),r(35,"translate"),o()()()(),h(36,hn,16,16),h(37,bn,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"),o()(),n(46,"button",18),r(47,"translate"),f("click",function(){y(e);let p=b();return I(p.accessoryUiControl())}),d(48,"i",19),o()()()}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 fn(i,c){i&1&&(n(0,"p",9),l(1),r(2,"translate"),o()),i&2&&(t(),u(s(2,1,"settings.cache.desc")))}function Cn(i,c){i&1&&d(0,"i",15),i&2&&m("@fadeInOut",void 0)}function xn(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"),o()(),n(9,"div",74)(10,"div",75),d(11,"input",119),r(12,"translate"),d(13,"label",120),o(),h(14,Cn,1,1,"i",15),o()(),n(15,"li",16)(16,"span",17),l(17),r(18,"translate"),d(19,"br"),n(20,"small",72),l(21),r(22,"translate"),o()(),n(23,"button",18),r(24,"translate"),f("click",function(){y(e);let p=b(2);return I(p.removeSingleCachedAccessories())}),d(25,"i",19),o()(),n(26,"li",16)(27,"span",17),l(28),r(29,"translate"),d(30,"br"),n(31,"small",72),l(32),r(33,"translate"),o()(),n(34,"button",18),r(35,"translate"),f("click",function(){y(e);let p=b(2);return I(p.removeBridgeAccessories())}),d(36,"i",19),o()(),n(37,"li",16)(38,"span",17),l(39),r(40,"translate"),d(41,"br"),n(42,"small",72),l(43),r(44,"translate"),o()(),n(45,"button",18),r(46,"translate"),f("click",function(){y(e);let p=b(2);return I(p.removeAllCachedAccessories())}),d(47,"i",19),o()()()}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 Sn(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"),o()(),h(6,fn,3,3,"p",9),h(7,xn,48,38,"ul",118),o()}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 yn(i,c){i&1&&(n(0,"p",9),l(1),r(2,"translate"),o()),i&2&&(t(),u(s(2,1,"reset.bridges.desc")))}function In(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"),o()(),n(8,"button",18),r(9,"translate"),f("click",function(){y(e);let p=b(2);return I(p.unpairAccessory())}),d(10,"i",19),o()()}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 kn(i,c){if(i&1){let e=k();n(0,"ul",10),h(1,In,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"),o()(),n(11,"button",18),r(12,"translate"),f("click",function(){y(e);let p=b();return I(p.resetHomebridgeState())}),d(13,"i",19),o()()()}if(i&2){let e=b();t(),_(e.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 Ho=(()=>{class i{$api=C(A);$modal=C(te);$notification=C(Ne);$plugin=C(ze);$router=C(O);$settings=C(G);$toastr=C(M);$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;runningInDocker=this.$settings.env.runningInDocker;runningOnRaspberryPi=this.$settings.env.runningOnRaspberryPi;serviceMode=this.$settings.env.serviceMode;platform=this.$settings.env.platform;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>';ngOnInit(){return S(this,null,function*(){this.isHbV2=this.$settings.env.homebridgeVersion.startsWith("2"),yield this.initNetworkingOptions(),this.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})}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(tt,{size:"lg",backdrop:"static"})}resetHomebridgeState(){this.$modal.open(Xe,{size:"lg",backdrop:"static"})}unpairAccessory(){this.$modal.open(Ze,{size:"lg",backdrop:"static"})}removeAllCachedAccessories(){this.$modal.open(Qe,{size:"lg",backdrop:"static"})}accessoryUiControl(){return S(this,null,function*(){try{let e=this.$modal.open(He,{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(Oe,{size:"lg",backdrop:"static"})}removeBridgeAccessories(){this.$modal.open(Je,{size:"lg",backdrop:"static"})}selectNetworkInterfaces(){return S(this,null,function*(){let e=this.$modal.open(et,{size:"lg",backdrop:"static"});e.componentInstance.adaptersAvailable=this.adaptersAvailable,e.componentInstance.adaptersSelected=this.adaptersSelected;try{let a=yield e.result;this.buildBridgeNetworkAdapterList(a),yield B(this.$api.put("/server/network-interfaces/bridge",{adapters:a})),this.showRestartToast()}catch(a){a!=="Dismiss"&&(console.error(a),this.$toastr.error(a.message,this.$translate.instant("toast.title_error")))}})}toggleSection(e){this.showFields[e]=!this.showFields[e]}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(a=>this.hbDebugSave(a)),this.hbInsecureFormControl.patchValue(e.HOMEBRIDGE_INSECURE),this.hbInsecureFormControl.valueChanges.pipe(w(750)).subscribe(a=>this.hbInsecureSave(a)),this.hbKeepFormControl.patchValue(e.HOMEBRIDGE_KEEP_ORPHANS),this.hbKeepFormControl.valueChanges.pipe(w(750)).subscribe(a=>this.hbKeepSave(a)),this.hbEnvDebugFormControl.patchValue(e.ENV_DEBUG),this.hbEnvDebugFormControl.valueChanges.pipe(w(1500)).subscribe(a=>this.hbEnvDebugSave(a)),this.hbEnvNodeFormControl.patchValue(e.ENV_NODE_OPTIONS),this.hbEnvNodeFormControl.valueChanges.pipe(w(1500)).subscribe(a=>this.hbEnvNodeSave(a))}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,a,p,x,K])=>{this.adaptersAvailable=e,this.buildBridgeNetworkAdapterList(a),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,a){return S(this,null,function*(){try{yield B(this.$api.put("/config-editor/ui",{key:e,value:a}))}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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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"),this.$notification.formAuthEnabled.next(e),setTimeout(()=>{this.uiAuthIsSaving=!1,this.showRestartToast()},1e3)}catch(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.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:a=>{console.error(a),this.showRestartToast()}})},1e3)}catch(a){console.error(a),this.$toastr.error(a.message,this.$translate.instant("toast.title_error")),this.hbLinuxRestartIsSaving=!1}})}buildBridgeNetworkAdapterList(e){if(!e.length){this.adaptersSelected=[];return}this.adaptersSelected=e.map(a=>{let p=this.adaptersAvailable.find(x=>x.iface===a);return p?{iface:p.iface,selected:!0,missing:!1,ip4:p.ip4,ip6:p.ip6}:{iface:a,selected:!0,missing:!0}})}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(a){return new(a||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(a,p){a&1&&(h(0,Si,1,0,"app-spinner"),n(1,"h3",0),l(2),r(3,"translate"),o(),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"),o()(),h(10,Ii,30,29,"ul",5),o(),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"),o()(),h(17,$i,157,94,"ul",6),o(),h(18,Qi,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"),o()(),h(25,ln,104,104,"ul",7),o(),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"),o()(),h(32,vn,49,42,"ul",8),o(),h(33,Sn,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"),o()(),h(40,yn,3,3,"p",9),h(41,kn,14,12,"ul",10),o(),d(42,"div",11)),a&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.serviceMode||p.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.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,Ae,Z,$e,Fe,ne,Be,X,Te,Y,Me,Re,Pe,ee,ae,J,F,Le],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{Ho as SettingsComponent};
@@ -1,5 +0,0 @@
1
- import{a as p,b as w,c as b}from"./chunk-UD6SVFW2.js";import{a as d}from"./chunk-ROYACDP2.js";import{M as i,g as o,ga as m,la as h,n}from"./chunk-SKZUTSHE.js";var c=o(p(),1),a=o(w(),1),l=o(b(),1);var v=(()=>{class t{$ws=h(d);io;fitAddon;webLinksAddon;resize;elementResize;term;destroyTerminal(){this.io.end(),this.term.dispose(),this.resize.complete(),this.elementResize&&this.elementResize.complete()}startTerminal(r,s={},f){this.elementResize=f,this.io=this.$ws.connectToNamespace("platform-tools/terminal"),this.term=new c.Terminal(s),setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.fitAddon=new a.FitAddon,this.webLinksAddon=new l.WebLinksAddon,this.resize=new n,this.term.open(r.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.connected.pipe(i(200)).subscribe(()=>{this.startSession()}),this.io.socket.on("disconnect",()=>{this.term.write(`
2
- \r
3
- \rTerminal disconnected. Is the server running?
4
- \r
5
- \r`)}),this.io.socket.on("process-exit",()=>{this.io.socket.emit("end"),this.startSession()}),this.resize.pipe(i(500)).subscribe(e=>{this.io.socket.emit("resize",e)}),this.io.socket.on("stdout",e=>{this.term.write(e)}),this.term.onData(e=>{this.io.socket.emit("stdin",e)}),this.term.onResize(e=>{this.resize.next(e)}),this.elementResize&&this.elementResize.pipe(i(100)).subscribe({next:()=>{this.fitAddon.fit()}})}startSession(){this.term.reset(),this.io.socket.emit("start-session",{cols:this.term.cols,rows:this.term.rows}),this.resize.next({cols:this.term.cols,rows:this.term.rows})}static \u0275fac=function(s){return new(s||t)};static \u0275prov=m({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{v as a};
@@ -1 +0,0 @@
1
- import{a as ne}from"./chunk-N4XOTXZL.js";import{a as X,b as Y,c as Z}from"./chunk-J6YDFLQQ.js";import{c as ie}from"./chunk-45AWUQUI.js";import"./chunk-HYGTZ767.js";import{a as oe}from"./chunk-NGNQPAAK.js";import{m as D,n as Q,t as U}from"./chunk-CF2ZN7LY.js";import{c as R,e as j,f as z,i as q,l as G,m as J,z as K}from"./chunk-T252YJXA.js";import"./chunk-ROYACDP2.js";import{b as te}from"./chunk-ASKYLUSK.js";import"./chunk-X7PVYZAE.js";import{b as ee}from"./chunk-BU6UAZVK.js";import"./chunk-HZUGXGIE.js";import{b as h}from"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{Bc as s,Cc as l,Dc as O,Hb as v,Ib as M,Jb as w,Lb as $,Mb as F,Nb as V,Ob as _,Pb as a,Qb as r,Rb as p,Vb as B,Xa as N,Yb as b,Zb as m,ab as o,cd as W,kc as d,la as g,lc as u,mb as y,mc as S,ra as C,rc as k,sa as x,sc as A,tc as T,wc as L,xc as E,yc as H}from"./chunk-SKZUTSHE.js";var ae=(()=>{class t{$activeModal=g(D);dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=y({type:t,selectors:[["ng-component"]],decls:31,vars:21,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,"fa","fa-fw","fa-question-circle-o","primary-text",2,"font-size","75px"],[1,"mb-0"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"]],template:function(i,n){i&1&&(a(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),d(4),s(5,"translate"),r(),a(6,"button",3),s(7,"translate"),b("click",function(){return n.dismissModal()}),r()(),a(8,"div",4)(9,"div",5),p(10,"i",6),r(),a(11,"ul",7)(12,"li"),d(13),s(14,"translate"),r(),a(15,"li"),d(16),s(17,"translate"),r(),a(18,"li"),d(19),s(20,"translate"),r(),a(21,"li"),d(22),s(23,"translate"),r()()(),a(24,"div",8),p(25,"div",9),a(26,"div",10)(27,"button",11),b("click",function(){return n.dismissModal()}),d(28),s(29,"translate"),r()(),p(30,"div",12),r()()()),i&2&&(o(4),u(l(5,7,"support.title")),o(2),v("aria-label",l(7,9,"form.button_close")),o(7),u(l(14,11,"accessories.support.list_1")),o(3),u(l(17,13,"accessories.support.list_2")),o(3),u(l(20,15,"accessories.support.list_3")),o(3),u(l(23,17,"accessories.support.list_4")),o(6),S(" ",l(29,19,"form.button_close")," "))},dependencies:[h],encapsulation:2})}return t})();var le=()=>({standalone:!0}),re=(()=>{class t{$activeModal=g(D);roomName;dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(e){this.$activeModal.close(e)}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=y({type:t,selectors:[["ng-component"]],inputs:{roomName:"roomName"},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-folder-plus","primary-text",2,"font-size","75px"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["autocomplete","off","type","text","id","form-name","autofocus","",1,"form-control","custom-input",3,"ngModelChange","keyup.enter","ngModel","ngModelOptions"],[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"]],template:function(i,n){i&1&&(a(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),d(4),s(5,"translate"),r(),a(6,"button",3),s(7,"translate"),b("click",function(){return n.dismissModal()}),r()(),a(8,"div",4)(9,"div",5),p(10,"i",6),r(),a(11,"ul",7)(12,"li",8)(13,"label",9),d(14),s(15,"translate"),r(),a(16,"div",10)(17,"input",11),T("ngModelChange",function(I){return A(n.roomName,I)||(n.roomName=I),I}),b("keyup.enter",function(){return n.closeModal(n.roomName)}),r()()()()(),a(18,"div",12)(19,"div",13)(20,"button",14),b("click",function(){return n.dismissModal()}),d(21),s(22,"translate"),r()(),p(23,"div",15),a(24,"div",16)(25,"button",17),b("click",function(){return n.closeModal(n.roomName)}),d(26),s(27,"translate"),r()()()()()),i&2&&(o(4),u(l(5,8,"accessories.button_add_room")),o(2),v("aria-label",l(7,10,"form.button_close")),o(8),u(l(15,12,"accessories.room_name")),o(3),k("ngModel",n.roomName),_("ngModelOptions",L(18,le)),o(4),S(" ",l(22,14,"form.button_close")," "),o(4),_("disabled",!n.roomName),o(),S(" ",l(27,16,"form.button_save")," "))},dependencies:[K,J,R,j,z,G,q,h],encapsulation:2})}return t})();var se=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=y({type:t,selectors:[["app-drag-here-placeholder"]],decls:5,vars:3,consts:[[1,"accessory-box"],[1,"fas","fa-fw","fa-arrow-alt-circle-down","accessory-icon"],[1,"accessory-label"]],template:function(i,n){i&1&&(a(0,"div",0),p(1,"i",1),a(2,"div",2),d(3),s(4,"translate"),r()()),i&2&&(o(3),u(l(4,1,"accessories.control.drag_here")))},dependencies:[h],styles:[".accessory-box[_ngcontent-%COMP%]{opacity:.2}"]})}return t})();var ce=(t,f)=>({"fa-eye":t,"fa-eye-slash":f}),de=t=>({"cursor-move":t}),pe=t=>({"justify-content-between":t}),me=t=>({link:t});function ue(t,f){if(t&1&&(a(0,"div",0)(1,"div",18)(2,"h5",19),d(3),s(4,"translate"),r()()()),t&2){let e=m().$implicit,i=m(2);o(2),_("ngClass",E(4,de,!i.isMobile)),o(),S(" ",e.name==="Default Room"?l(4,2,"accessories.control.default_room"):e.name," ")}}function _e(t,f){if(t&1&&(a(0,"div",22),p(1,"app-accessory-tile",23),r()),t&2){let e=m().$implicit;o(),_("service",e)}}function be(t,f){if(t&1&&M(0,_e,2,1,"div",22),t&2){let e=f.$implicit,i=m(4);w(!i.hideHidden||!e.hidden?0:-1)}}function fe(t,f){if(t&1){let e=B();a(0,"div",20),T("dragulaModelChange",function(n){C(e);let c=m().$implicit;return A(c.services,n)||(c.services=n),x(n)}),F(1,be,1,1,null,null,$),p(3,"div",21)(4,"div",21)(5,"div",21)(6,"div",21)(7,"div",21)(8,"div",21)(9,"div",21)(10,"div",21)(11,"div",21)(12,"div",21),r()}if(t&2){let e=m().$implicit,i=m(2);_("ngClass",E(3,pe,i.isMobile))("dragula","services-bag"),k("dragulaModel",e.services),o(),V(e.services)}}function ge(t,f){if(t&1){let e=B();a(0,"div",24),T("dragulaModelChange",function(n){C(e);let c=m().$implicit;return A(c.services,n)||(c.services=n),x(n)}),p(1,"app-drag-here-placeholder",25),r()}if(t&2){let e=m().$implicit;_("dragula","services-bag"),k("dragulaModel",e.services)}}function ve(t,f){if(t&1&&(a(0,"div"),M(1,ue,5,6,"div",0),a(2,"div",15),M(3,fe,13,5,"div",16),M(4,ge,2,2,"div",17),r()()),t&2){let e=f.$implicit,i=m(2);o(),w(!i.isMobile||e.services.length?1:-1),o(2),w(e.services.length?3:-1),o(),w(!e.services.length&&!i.isMobile?4:-1)}}function Ce(t,f){if(t&1){let e=B();a(0,"div",1)(1,"div",2)(2,"h3",3),d(3),s(4,"translate"),r()(),a(5,"div",4)(6,"button",5),s(7,"translate"),s(8,"translate"),b("click",function(){C(e);let n=m();return x(n.addRoom())}),p(9,"i",6),r(),a(10,"button",5),s(11,"translate"),s(12,"translate"),s(13,"translate"),s(14,"translate"),b("click",function(){C(e);let n=m();return x(n.hideHidden=!n.hideHidden)}),p(15,"i",7),r(),a(16,"div",8)(17,"button",9),s(18,"translate"),s(19,"translate"),b("click",function(){C(e);let n=m();return x(n.toggleLayoutLock())}),p(20,"i",10),r(),a(21,"button",9),s(22,"translate"),s(23,"translate"),b("click",function(){C(e);let n=m();return x(n.toggleLayoutLock())}),p(24,"i",11),r()(),a(25,"button",12),s(26,"translate"),b("click",function(){C(e);let n=m();return x(n.openSupport())}),p(27,"i",13),r()()(),a(28,"div",14),T("dragulaModelChange",function(n){C(e);let c=m();return A(c.$accessories.rooms,n)||(c.$accessories.rooms=n),x(n)}),F(29,ve,5,3,"div",null,$),r()}if(t&2){let e=m();o(3),u(l(4,17,"accessories.title_accessories")),o(3),_("hidden",e.isMobile)("ngbTooltip",l(7,19,"accessories.button_add_room")),v("aria-label",l(8,21,"accessories.button_add_room")),o(4),_("hidden",e.isMobile)("ngbTooltip",e.hideHidden?l(11,23,"accessories.button_hidden_show"):l(12,25,"accessories.button_hidden_hide")),v("aria-label",e.hideHidden?l(13,27,"accessories.button_hidden_show"):l(14,29,"accessories.button_hidden_hide")),o(5),_("ngClass",H(41,ce,!e.hideHidden,e.hideHidden)),o(2),_("disabled",!e.isMobile)("ngbTooltip",l(18,31,"form.button_unlock")),v("aria-label",l(19,33,"form.button_unlock")),o(4),_("disabled",e.isMobile)("ngbTooltip",l(22,35,"form.button_lock")),v("aria-label",l(23,37,"form.button_lock")),o(4),v("aria-label",l(26,39,"support.title")),o(3),_("dragula","rooms-bag"),k("dragulaModel",e.$accessories.rooms),o(),V(e.$accessories.rooms)}}function xe(t,f){t&1&&(a(0,"p",32),d(1),s(2,"translate"),r()),t&2&&(o(),u(l(2,1,"accessories.settings_link")))}function ye(t,f){if(t&1&&(a(0,"div",0)(1,"div",26)(2,"h3",27),d(3),s(4,"translate"),r()(),a(5,"div",28)(6,"div",29)(7,"h5",30),d(8),s(9,"translate"),r(),p(10,"p",31),s(11,"translate"),M(12,xe,3,3,"p",32),r()()()),t&2){let e=m();o(3),u(l(4,4,"accessories.title_accessories")),o(5),u(l(9,6,"accessories.control_disabled")),o(2),_("innerHTML",O(11,8,"accessories.message_must_use_insecure_mode",E(11,me,e.linkInsecure)),N),o(2),w(e.isAdmin?12:-1)}}var Ye=(()=>{class t{$accessories=g(ie);$auth=g(te);dragulaService=g(X);$modal=g(Q);$settings=g(ee);$md=g(oe);orderSubscription;isAdmin=this.$auth.user.admin;enableAccessories=this.$settings.env.enableAccessories;isMobile=!1;hideHidden=!0;linkInsecure='<a href="https://github.com/homebridge/homebridge-config-ui-x/wiki/Enabling-Accessory-Control" target="_blank"><i class="fa fa-fw fa-external-link-alt primary-text"></i></a>';constructor(){let e=this.dragulaService;this.isMobile=this.$md.detect.mobile(),e.createGroup("rooms-bag",{moves:(i,n,c)=>!this.isMobile&&c.classList.contains("drag-handle")}),e.createGroup("services-bag",{moves:i=>!this.isMobile&&!i.classList.contains("no-drag")}),this.orderSubscription=e.drop().subscribe(()=>{setTimeout(()=>{this.$accessories.saveLayout()})}),this.isMobile=!0}ngOnInit(){this.$accessories.start()}addRoom(){this.$modal.open(re,{size:"lg",backdrop:"static"}).result.then(e=>{!e||!e.length||this.$accessories.rooms.find(i=>i.name===e)||(this.$accessories.rooms.push({name:e,services:[]}),this.isMobile&&this.toggleLayoutLock())}).catch(()=>{})}toggleLayoutLock(){this.isMobile=!this.isMobile,this.isMobile?document.querySelectorAll(".services-bag").forEach(i=>{for(let n=0;n<10;n++){let c=document.createElement("div");c.className="accessory-box invisible py-0 my-0",c.style.height="0",i.appendChild(c)}}):document.querySelectorAll(".invisible").forEach(i=>i.remove())}openSupport(){this.$modal.open(ae,{size:"lg",backdrop:"static"})}ngOnDestroy(){this.$accessories.stop(),this.orderSubscription.unsubscribe(),this.dragulaService.destroy("rooms-bag"),this.dragulaService.destroy("services-bag")}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=y({type:t,selectors:[["app-accessories"]],decls:2,vars:1,consts:[[1,"row"],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end","d-none","d-sm-inline-block"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","hidden","ngbTooltip"],[1,"fas","fa-fw","fa-folder-plus"],[1,"fas","fa-fw",3,"ngClass"],["role","group",1,"btn-group","me-2"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0",3,"click","disabled","ngbTooltip"],[1,"fas","fa-fw","fa-unlock"],[1,"fas","fa-fw","fa-lock"],["type","button",1,"btn","btn-elegant","my-0","me-0",3,"click"],[1,"fa","fa-fw","fa-question-circle-o"],[3,"dragulaModelChange","dragula","dragulaModel"],[1,"row","mb-4"],[1,"col-md-12","d-flex","flex-wrap","noselect","services-bag",3,"ngClass","dragula","dragulaModel"],[1,"col-md-12","d-flex","flex-wrap","noselect",3,"dragula","dragulaModel"],[1,"col-md-12"],[1,"primary-text","drag-handle","room-title","m-0","mb-1","mb-sm-0",3,"ngClass"],[1,"col-md-12","d-flex","flex-wrap","noselect","services-bag",3,"dragulaModelChange","ngClass","dragula","dragulaModel"],[1,"accessory-box","invisible","py-0","my-0",2,"height","0"],[1,"accessory-item","accessory-tab"],[3,"service"],[1,"col-md-12","d-flex","flex-wrap","noselect",3,"dragulaModelChange","dragula","dragulaModel"],[1,"no-drag"],[1,"col-12"],[1,"primary-text","m-0","mb-3"],[1,"col-12","text-center"],["role","alert",1,"alert","alert-warning","p-4"],[1,"mb-3","mt-0"],[1,"mb-0",3,"innerHTML"],[1,"mt-3","mb-0"]],template:function(i,n){i&1&&M(0,Ce,31,44)(1,ye,13,13,"div",0),i&2&&w(n.enableAccessories?0:1)},dependencies:[U,W,Z,Y,ne,se,h],styles:[".room-title[_ngcontent-%COMP%]{margin-left:10px}@media (max-width: 575px){.room-title[_ngcontent-%COMP%]{margin-left:7px}}.services-bag[_ngcontent-%COMP%]{min-height:170px}@media (max-width: 575px){.services-bag[_ngcontent-%COMP%]{min-height:initial}}.cursor-move[_ngcontent-%COMP%]{cursor:move}.gu-transit[_ngcontent-%COMP%] .manage-accessory-button[_ngcontent-%COMP%]{display:none}a[_ngcontent-%COMP%]:hover{text-decoration:none!important}"]})}return t})();export{Ye as AccessoriesComponent};