homebridge-config-ui-x 5.0.0-beta.11 → 5.0.0-beta.110

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 (320) hide show
  1. package/CHANGELOG.md +479 -31
  2. package/CONTRIBUTING.md +5 -4
  3. package/LICENSE +1 -1
  4. package/config.schema.json +55 -252
  5. package/dist/bin/hb-service.d.ts +2 -2
  6. package/dist/bin/hb-service.js +52 -51
  7. package/dist/bin/hb-service.js.map +1 -1
  8. package/dist/bin/platforms/darwin.js +3 -11
  9. package/dist/bin/platforms/darwin.js.map +1 -1
  10. package/dist/bin/platforms/win32.js +4 -2
  11. package/dist/bin/platforms/win32.js.map +1 -1
  12. package/dist/bin/standalone.js +1 -0
  13. package/dist/bin/standalone.js.map +1 -1
  14. package/dist/core/auth/auth.controller.d.ts +31 -3
  15. package/dist/core/auth/auth.controller.js.map +1 -1
  16. package/dist/core/auth/auth.module.js +1 -1
  17. package/dist/core/auth/auth.module.js.map +1 -1
  18. package/dist/core/auth/auth.service.js +10 -10
  19. package/dist/core/auth/auth.service.js.map +1 -1
  20. package/dist/core/auth/jwt.strategy.d.ts +3 -1
  21. package/dist/core/config/config.service.d.ts +46 -11
  22. package/dist/core/config/config.service.js +57 -20
  23. package/dist/core/config/config.service.js.map +1 -1
  24. package/dist/core/config/config.startup.js +2 -2
  25. package/dist/core/config/config.startup.js.map +1 -1
  26. package/dist/core/homebridge-ipc/homebridge-ipc.service.js +3 -3
  27. package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
  28. package/dist/index.js +6 -77
  29. package/dist/index.js.map +1 -1
  30. package/dist/main.js +2 -1
  31. package/dist/main.js.map +1 -1
  32. package/dist/modules/accessories/accessories.controller.js +5 -5
  33. package/dist/modules/accessories/accessories.controller.js.map +1 -1
  34. package/dist/modules/accessories/accessories.service.js +8 -7
  35. package/dist/modules/accessories/accessories.service.js.map +1 -1
  36. package/dist/modules/backup/backup.controller.js +7 -7
  37. package/dist/modules/backup/backup.controller.js.map +1 -1
  38. package/dist/modules/backup/backup.service.js +19 -79
  39. package/dist/modules/backup/backup.service.js.map +1 -1
  40. package/dist/modules/child-bridges/child-bridges.service.js +0 -7
  41. package/dist/modules/child-bridges/child-bridges.service.js.map +1 -1
  42. package/dist/modules/config-editor/config-editor.controller.d.ts +7 -1
  43. package/dist/modules/config-editor/config-editor.controller.js +36 -8
  44. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  45. package/dist/modules/config-editor/config-editor.service.d.ts +5 -1
  46. package/dist/modules/config-editor/config-editor.service.js +133 -69
  47. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  48. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.d.ts +1 -1
  49. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +13 -11
  50. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  51. package/dist/modules/log/log.gateway.d.ts +2 -1
  52. package/dist/modules/log/log.gateway.js.map +1 -1
  53. package/dist/modules/log/log.service.js +3 -3
  54. package/dist/modules/log/log.service.js.map +1 -1
  55. package/dist/modules/platform-tools/docker/docker.controller.js +3 -3
  56. package/dist/modules/platform-tools/docker/docker.controller.js.map +1 -1
  57. package/dist/modules/platform-tools/docker/docker.service.js +1 -1
  58. package/dist/modules/platform-tools/docker/docker.service.js.map +1 -1
  59. package/dist/modules/platform-tools/hb-service/hb-service.controller.js +3 -3
  60. package/dist/modules/platform-tools/hb-service/hb-service.controller.js.map +1 -1
  61. package/dist/modules/platform-tools/hb-service/hb-service.service.js +6 -6
  62. package/dist/modules/platform-tools/hb-service/hb-service.service.js.map +1 -1
  63. package/dist/modules/platform-tools/linux/linux.controller.js +2 -2
  64. package/dist/modules/platform-tools/linux/linux.controller.js.map +1 -1
  65. package/dist/modules/platform-tools/linux/linux.service.js +2 -2
  66. package/dist/modules/platform-tools/linux/linux.service.js.map +1 -1
  67. package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +2 -1
  68. package/dist/modules/platform-tools/terminal/terminal.gateway.js.map +1 -1
  69. package/dist/modules/platform-tools/terminal/terminal.service.js +2 -2
  70. package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
  71. package/dist/modules/plugins/plugins.controller.d.ts +2 -0
  72. package/dist/modules/plugins/plugins.controller.js +5 -5
  73. package/dist/modules/plugins/plugins.controller.js.map +1 -1
  74. package/dist/modules/plugins/plugins.service.d.ts +10 -1
  75. package/dist/modules/plugins/plugins.service.js +285 -168
  76. package/dist/modules/plugins/plugins.service.js.map +1 -1
  77. package/dist/modules/server/server.controller.d.ts +33 -3
  78. package/dist/modules/server/server.controller.js +162 -20
  79. package/dist/modules/server/server.controller.js.map +1 -1
  80. package/dist/modules/server/server.service.d.ts +35 -6
  81. package/dist/modules/server/server.service.js +286 -66
  82. package/dist/modules/server/server.service.js.map +1 -1
  83. package/dist/modules/status/status.controller.d.ts +0 -1
  84. package/dist/modules/status/status.controller.js +3 -4
  85. package/dist/modules/status/status.controller.js.map +1 -1
  86. package/dist/modules/status/status.gateway.d.ts +1 -1
  87. package/dist/modules/status/status.service.d.ts +1 -1
  88. package/dist/modules/status/status.service.js +25 -41
  89. package/dist/modules/status/status.service.js.map +1 -1
  90. package/dist/modules/users/users.controller.js +7 -7
  91. package/dist/modules/users/users.controller.js.map +1 -1
  92. package/dist/self-check.js +6 -6
  93. package/dist/self-check.js.map +1 -1
  94. package/package.json +50 -43
  95. package/public/3rdpartylicenses.txt +218 -108
  96. package/public/assets/hap-icons/airpurifier.svg +49 -16
  97. package/public/assets/hap-icons/airquality.svg +24 -13
  98. package/public/assets/hap-icons/co-sensor.svg +72 -0
  99. package/public/assets/hap-icons/co2-sensor.svg +72 -0
  100. package/public/assets/hap-icons/contactsensor-closed.svg +35 -2
  101. package/public/assets/hap-icons/contactsensor-open.svg +80 -2
  102. package/public/assets/hap-icons/door-closed.svg +32 -2
  103. package/public/assets/hap-icons/door-open.svg +48 -2
  104. package/public/assets/hap-icons/fan-off.svg +24 -13
  105. package/public/assets/hap-icons/fan-on.svg +24 -13
  106. package/public/assets/hap-icons/filtermaintenance.svg +26 -0
  107. package/public/assets/hap-icons/garagedoor.svg +24 -13
  108. package/public/assets/hap-icons/humidity.svg +24 -13
  109. package/public/assets/hap-icons/irrigation-system.svg +47 -18
  110. package/public/assets/hap-icons/leaksensor.svg +52 -2
  111. package/public/assets/hap-icons/light.svg +47 -28
  112. package/public/assets/hap-icons/lightbulb.svg +24 -13
  113. package/public/assets/hap-icons/lock-locked.svg +24 -13
  114. package/public/assets/hap-icons/lock-unlocked.svg +24 -13
  115. package/public/assets/hap-icons/motionsensor.svg +100 -2
  116. package/public/assets/hap-icons/occupancysensor.svg +97 -2
  117. package/public/assets/hap-icons/outlet.svg +24 -13
  118. package/public/assets/hap-icons/securitysystem-active.svg +102 -2
  119. package/public/assets/hap-icons/securitysystem-off.svg +68 -2
  120. package/public/assets/hap-icons/securitysystem-triggered.svg +103 -0
  121. package/public/assets/hap-icons/smokesensor.svg +42 -9
  122. package/public/assets/hap-icons/speaker.svg +29 -13
  123. package/public/assets/hap-icons/statelessprogrammableswitch.svg +51 -2
  124. package/public/assets/hap-icons/switch.svg +24 -13
  125. package/public/assets/hap-icons/television.svg +15 -4
  126. package/public/assets/hap-icons/temperature.svg +24 -13
  127. package/public/assets/hap-icons/unknown.svg +24 -13
  128. package/public/assets/hap-icons/valve-generic.svg +27 -16
  129. package/public/assets/hap-icons/valve-irrigation.svg +37 -21
  130. package/public/assets/hap-icons/valve-showerhead.svg +52 -0
  131. package/public/assets/hap-icons/valve-waterfaucet.svg +21 -0
  132. package/public/assets/hap-icons/window-closed.svg +85 -2
  133. package/public/assets/hap-icons/window-open.svg +136 -2
  134. package/public/assets/hap-icons/windowcovering-closed.svg +45 -49
  135. package/public/assets/hap-icons/windowcovering-open.svg +40 -44
  136. package/public/assets/homebridge-color-round.svg +36 -1
  137. package/public/assets/homebridge-logo.svg +11 -1
  138. package/public/assets/mask-icon.svg +5 -1
  139. package/public/assets/plugin-ui-utils/ui.js +3 -0
  140. package/public/assets/plugin-ui-utils/ui.js.map +1 -1
  141. package/public/chunk-2FVPRLQG.js +1 -0
  142. package/public/{chunk-MGBLPFXT.js → chunk-2GSALGGZ.js} +1 -1
  143. package/public/chunk-2IJPNUW7.js +29 -0
  144. package/public/chunk-2NQ5FYSH.js +5 -0
  145. package/public/chunk-3FQVTGEO.js +1 -0
  146. package/public/chunk-3Z2VETLJ.js +1 -0
  147. package/public/{chunk-3TUBDO76.js → chunk-4G5TRQV5.js} +1 -1
  148. package/public/chunk-4I6LLOMI.js +1 -0
  149. package/public/chunk-4N5XER24.js +1 -0
  150. package/public/chunk-555LSHXI.js +1 -0
  151. package/public/{chunk-CCUID66K.js → chunk-5CEP4QNR.js} +1 -1
  152. package/public/chunk-5NG7YGKN.js +1 -0
  153. package/public/chunk-6TUL34DU.js +1 -0
  154. package/public/{chunk-3RNRIJ74.js → chunk-6XANA56B.js} +11 -11
  155. package/public/chunk-BOWJ3GNE.js +1 -0
  156. package/public/chunk-BY2CUGGW.js +1 -0
  157. package/public/{chunk-LM6S4A72.js → chunk-CI7ES5EB.js} +1 -1
  158. package/public/chunk-CXAHE4UR.js +1 -0
  159. package/public/chunk-CYTL54HA.js +1 -0
  160. package/public/chunk-D35WUZO6.js +1 -0
  161. package/public/chunk-DM5SJAXR.js +1 -0
  162. package/public/chunk-DX3J7WR4.js +20 -0
  163. package/public/chunk-ELHQENNT.js +1 -0
  164. package/public/chunk-EM4PY2IW.js +2 -0
  165. package/public/chunk-FGR2Q3QC.js +1 -0
  166. package/public/chunk-FQM6JWF4.js +1 -0
  167. package/public/chunk-GD7WE5NM.js +1 -0
  168. package/public/{chunk-6TCHCTXZ.js → chunk-GMQEHLXV.js} +1 -1
  169. package/public/chunk-GSH6XPH5.js +1 -0
  170. package/public/chunk-HTBBDMIM.js +1 -0
  171. package/public/chunk-IMPGSXGE.js +1 -0
  172. package/public/chunk-IZCQX62P.js +1 -0
  173. package/public/chunk-IZENZ6C7.js +1 -0
  174. package/public/{chunk-QE7DO6J3.js → chunk-J764EFYE.js} +2 -2
  175. package/public/chunk-JBQX4JBH.js +1 -0
  176. package/public/chunk-JROQHF7T.js +1 -0
  177. package/public/chunk-JVERWDTV.js +8 -0
  178. package/public/chunk-KAHHKQN4.js +1 -0
  179. package/public/chunk-KFUUWA7X.js +1 -0
  180. package/public/chunk-LSWNZUER.js +1 -0
  181. package/public/chunk-M5VWLNY3.js +7 -0
  182. package/public/chunk-MDSOQRIW.js +1 -0
  183. package/public/chunk-MFBVZAEQ.js +2 -0
  184. package/public/chunk-MGITCDRJ.js +1 -0
  185. package/public/chunk-NQ5I37UV.js +1 -0
  186. package/public/chunk-NQE2RXH6.js +1 -0
  187. package/public/chunk-O3VYSP26.js +1 -0
  188. package/public/chunk-O7GTAWDZ.js +1 -0
  189. package/public/chunk-OR2P7NW7.js +6 -0
  190. package/public/chunk-OT72EUBX.js +1 -0
  191. package/public/chunk-OUNNY3LQ.js +1 -0
  192. package/public/chunk-P5VEHFPQ.js +1 -0
  193. package/public/chunk-QHLEZFHN.js +1 -0
  194. package/public/{chunk-WNWWUCCZ.js → chunk-QJQSHTGR.js} +3 -3
  195. package/public/chunk-QZ7YTQCT.js +1 -0
  196. package/public/chunk-R4C7YVNE.js +1 -0
  197. package/public/chunk-RPX42C27.js +1 -0
  198. package/public/{chunk-JZZQRLNW.js → chunk-S6UXXPGF.js} +1 -1
  199. package/public/chunk-SCRWY2OT.js +1 -0
  200. package/public/chunk-SVBSGSWA.js +1 -0
  201. package/public/chunk-SWUH5RAT.js +1 -0
  202. package/public/chunk-SYDH2EUJ.js +1 -0
  203. package/public/{chunk-EA5J2VEJ.js → chunk-TJJCM4OW.js} +1 -1
  204. package/public/chunk-TNXIENZS.js +1 -0
  205. package/public/{chunk-UPYKPJUD.js → chunk-TY327ZWV.js} +2 -2
  206. package/public/chunk-U3GYVCZ5.js +1 -0
  207. package/public/chunk-UC3VLQ36.js +23 -0
  208. package/public/chunk-UTDF2KPP.js +1 -0
  209. package/public/chunk-UXMF7TL3.js +1 -0
  210. package/public/chunk-VFFTVCSV.js +1 -0
  211. package/public/chunk-VP6YRYDX.js +1 -0
  212. package/public/chunk-W6X46MTW.js +7 -0
  213. package/public/chunk-WP6HJUZ6.js +1 -0
  214. package/public/{chunk-7EUQWCP5.js → chunk-WTTWP6KF.js} +2 -2
  215. package/public/chunk-WUXDJZ6X.js +1 -0
  216. package/public/chunk-WXHERXH5.js +1 -0
  217. package/public/chunk-YLZEJ2HL.js +5 -0
  218. package/public/chunk-YRRMQRGZ.js +1 -0
  219. package/public/chunk-YSWBG5VY.js +8 -0
  220. package/public/chunk-Z7NIAJEB.js +1 -0
  221. package/public/chunk-ZI5BUHBS.js +1 -0
  222. package/public/index.html +2 -2
  223. package/public/main-EWBCXJ6H.js +1 -0
  224. package/public/media/fa-brands-400-Q3XCMWHQ.woff2 +0 -0
  225. package/public/media/{fa-brands-400-KOKGDU7E.ttf → fa-brands-400-R2XQZCET.ttf} +0 -0
  226. package/public/media/fa-regular-400-QSNYFYRT.woff2 +0 -0
  227. package/public/media/{fa-regular-400-IPMAEX5Y.ttf → fa-regular-400-XUOPSR7E.ttf} +0 -0
  228. package/public/media/fa-solid-900-5ZUYHGA7.woff2 +0 -0
  229. package/public/media/{fa-solid-900-SRFFQLRM.ttf → fa-solid-900-PJNKLK6W.ttf} +0 -0
  230. package/public/polyfills-WE4HA5DL.js +2 -0
  231. package/public/styles-SK4HZ2RX.css +1 -0
  232. package/scripts/upgrade-install-plugin.sh +1 -1
  233. package/public/chunk-23E7VL2P.js +0 -1
  234. package/public/chunk-33LJ3YIR.js +0 -1
  235. package/public/chunk-34W4KCBV.js +0 -1
  236. package/public/chunk-3IX3CLER.js +0 -1
  237. package/public/chunk-3UBYWHRR.js +0 -1
  238. package/public/chunk-52HTAWOT.js +0 -1
  239. package/public/chunk-535DPMCW.js +0 -1
  240. package/public/chunk-56BOPXKC.js +0 -1
  241. package/public/chunk-5M6KOARX.js +0 -1
  242. package/public/chunk-6IAVZXBU.js +0 -20
  243. package/public/chunk-6T27YQ2D.js +0 -1
  244. package/public/chunk-7WLTVXXL.js +0 -1
  245. package/public/chunk-AS2OC4NZ.js +0 -1
  246. package/public/chunk-BKUGARB4.js +0 -7
  247. package/public/chunk-BLUX2UMQ.js +0 -1
  248. package/public/chunk-BPMSJ2VF.js +0 -1
  249. package/public/chunk-BW6NZ6VD.js +0 -6
  250. package/public/chunk-C4ENUEJD.js +0 -1
  251. package/public/chunk-C536FAQ7.js +0 -5
  252. package/public/chunk-CL4YMJZW.js +0 -1
  253. package/public/chunk-D7HF5OGR.js +0 -1
  254. package/public/chunk-DD3R2DFS.js +0 -1
  255. package/public/chunk-DHAYGFW2.js +0 -1
  256. package/public/chunk-DVTSZQXS.js +0 -1
  257. package/public/chunk-EIBIFGLP.js +0 -1
  258. package/public/chunk-F4CW25FV.js +0 -1
  259. package/public/chunk-HL7XXKHI.js +0 -1
  260. package/public/chunk-HSJSWZHD.js +0 -1
  261. package/public/chunk-HUV3VJSE.js +0 -1
  262. package/public/chunk-INJABMER.js +0 -23
  263. package/public/chunk-IU27XSWW.js +0 -1
  264. package/public/chunk-JVAHZDVJ.js +0 -1
  265. package/public/chunk-KQJ7ONUG.js +0 -1
  266. package/public/chunk-KS3FIR4R.js +0 -1
  267. package/public/chunk-KXWJIWYD.js +0 -1
  268. package/public/chunk-LDGB6S2N.js +0 -1
  269. package/public/chunk-M45D5CCT.js +0 -1
  270. package/public/chunk-MIMQGXTO.js +0 -1
  271. package/public/chunk-NKN62APE.js +0 -1
  272. package/public/chunk-NW6AFAD7.js +0 -1
  273. package/public/chunk-NZNNTHFQ.js +0 -1
  274. package/public/chunk-ORPWYWCL.js +0 -5
  275. package/public/chunk-Q2YQ4J5L.js +0 -1
  276. package/public/chunk-QHPDGSZ6.js +0 -1
  277. package/public/chunk-QXHB5Q7H.js +0 -1
  278. package/public/chunk-R2QZPN2M.js +0 -1
  279. package/public/chunk-RDOXIKK6.js +0 -1
  280. package/public/chunk-RHBPQJLQ.js +0 -1
  281. package/public/chunk-RSGTDKO6.js +0 -1
  282. package/public/chunk-RTVXC3Y7.js +0 -1
  283. package/public/chunk-SFK7OSIU.js +0 -1
  284. package/public/chunk-SFLEKDGL.js +0 -1
  285. package/public/chunk-T5R3UG6Z.js +0 -1
  286. package/public/chunk-TB7FJ5XX.js +0 -1
  287. package/public/chunk-TCSXGQNF.js +0 -1
  288. package/public/chunk-TRTZHJGG.js +0 -1
  289. package/public/chunk-TWWDGSRW.js +0 -1
  290. package/public/chunk-TXOB7R5K.js +0 -7
  291. package/public/chunk-U2WFZQTC.js +0 -32
  292. package/public/chunk-UG5DK2RQ.js +0 -2
  293. package/public/chunk-UVNEKL77.js +0 -1
  294. package/public/chunk-VHLIKZYD.js +0 -1
  295. package/public/chunk-WHJOLAED.js +0 -1
  296. package/public/chunk-WHJSVGC7.js +0 -1
  297. package/public/chunk-Y62756RF.js +0 -1
  298. package/public/chunk-YA4WNIBX.js +0 -1
  299. package/public/chunk-ZGUIFA2B.js +0 -1
  300. package/public/chunk-ZLOETFRA.js +0 -8
  301. package/public/chunk-ZT23DWNL.js +0 -1
  302. package/public/main-TLKQDE7H.js +0 -1
  303. package/public/media/01-RQ3S2L53.png +0 -0
  304. package/public/media/02-VNCG2I2A.png +0 -0
  305. package/public/media/03-HI42L4ZG.png +0 -0
  306. package/public/media/04-FJLL55LZ.png +0 -0
  307. package/public/media/05-V3EO6SPT.png +0 -0
  308. package/public/media/06-EOJZCQZN.png +0 -0
  309. package/public/media/07-KMKB5PBD.png +0 -0
  310. package/public/media/08-UQJRF6B2.png +0 -0
  311. package/public/media/09-2DJQFRHH.png +0 -0
  312. package/public/media/arrow_left-CQT7FZM7.svg +0 -4
  313. package/public/media/arrow_right-SBUDRR2G.svg +0 -4
  314. package/public/media/fa-brands-400-6PJPV6JM.woff2 +0 -0
  315. package/public/media/fa-regular-400-OHB6J4OK.woff2 +0 -0
  316. package/public/media/fa-solid-900-ABTK6BNK.woff2 +0 -0
  317. package/public/polyfills-C6JHVXJJ.js +0 -2
  318. package/public/scripts-6GVLYD7F.js +0 -62
  319. package/public/styles-EG5MFQEM.css +0 -1
  320. /package/public/assets/{bootstrap-4 → bootstrap-5}/cssframework/assets.json +0 -0
@@ -0,0 +1 @@
1
+ import{a as V}from"./chunk-JVERWDTV.js";import{a as q}from"./chunk-SWUH5RAT.js";import{a as _}from"./chunk-IMPGSXGE.js";import{n as B,t as k}from"./chunk-2NQ5FYSH.js";import{k as D,n as F}from"./chunk-6TUL34DU.js";import{a as z,b as E}from"./chunk-555LSHXI.js";import{$a as m,Ac as i,Bc as r,Gb as b,Lc as S,Nb as h,Ob as s,Pb as l,Qb as p,Ub as L,Xb as d,_a as y,dc as T,ec as C,g as j,h as w,jc as x,kc as I,la as o,lb as $,n as v,ra as u,sa as f}from"./chunk-W6X46MTW.js";var H=j(q(),1);var A=["logoutput"],X=(()=>{class c{$api=o(F);$log=o(V);$modal=o(B);$toastr=o(D);$translate=o(z);termTarget=S("logoutput");resizeEvent=new v;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$log.startTerminal(this.termTarget(),{},this.resizeEvent)}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.$log.destroyTerminal()}downloadLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_download_log_file"),t.componentInstance.message=this.$translate.instant("logs.download_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_download"),t.componentInstance.faIconClass="fas fa-fw fa-user-secret primary-text",t.result.then(()=>{this.$api.get("/platform-tools/hb-service/log/download",{observe:"response",responseType:"blob"}).subscribe({next:e=>{(0,H.saveAs)(e.body,"homebridge.log.txt")},error:e=>w(this,null,function*(){let n;try{n=JSON.parse(yield e.error.text()).message}catch(a){console.error(a)}this.$toastr.error(n||this.$translate.instant("logs.download.error"),this.$translate.instant("toast.title_error"))})})}).catch(()=>{})}truncateLogFile(){let t=this.$modal.open(_,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("logs.title_truncate_log_file"),t.componentInstance.message=this.$translate.instant("logs.truncate_log_warning"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_delete"),t.componentInstance.confirmButtonClass="btn-danger",t.componentInstance.faIconClass="fas fa-fw fa-circle-exclamation primary-text",t.result.then(()=>{this.$api.put("/platform-tools/hb-service/log/truncate",{}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("logs.log_file_truncated"),this.$translate.instant("toast.title_success")),this.$log.term.clear()},error:e=>{console.error(e),this.$toastr.error(e.error.message||this.$translate.instant("logs.truncate.error"),this.$translate.instant("toast.title_error"))}})}).catch(()=>{})}static \u0275fac=function(e){return new(e||c)};static \u0275cmp=$({type:c,selectors:[["ng-component"]],viewQuery:function(e,n){e&1&&T(n.termTarget,A,5),e&2&&C()},hostBindings:function(e,n){e&1&&d("resize",function(g){return n.onWindowResize(g)},y)},decls:17,vars:15,consts:[["logoutput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-download"],["container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-0",3,"click","ngbTooltip"],[1,"fas","fa-fw","fa-trash-alt"],[1,"flex-column","d-flex","align-items-stretch","adjust-for-mobile"],["id","log-output",1,"align-self-end","w-100","h-100","mb-1"]],template:function(e,n){if(e&1){let a=L();s(0,"div",1)(1,"div",2)(2,"h3",3),x(3),i(4,"translate"),l()(),s(5,"div",4)(6,"button",5),i(7,"translate"),i(8,"translate"),d("click",function(){return u(a),f(n.downloadLogFile())}),p(9,"i",6),l(),s(10,"button",7),i(11,"translate"),i(12,"translate"),d("click",function(){return u(a),f(n.truncateLogFile())}),p(13,"i",8),l()()(),s(14,"div",9),p(15,"div",10,0),l()}e&2&&(m(3),I(r(4,5,"menu.linux.label_logs")),m(3),h("ngbTooltip",r(7,7,"form.button_download")),b("aria-label",r(8,9,"form.button_download")),m(4),h("ngbTooltip",r(11,11,"form.button_delete")),b("aria-label",r(12,13,"form.button_delete")))},dependencies:[k,E],encapsulation:2})}return c})();export{X as a};
@@ -0,0 +1,2 @@
1
+ import{A as te,c as D,d as F,e as K,f as A,g as J,j as E,m as Q,p as X,q as Y,w as Z,z as ee}from"./chunk-5NG7YGKN.js";import{a as le}from"./chunk-4G5TRQV5.js";import{b as se}from"./chunk-CI7ES5EB.js";import{b as ae}from"./chunk-4I6LLOMI.js";import{k as re,m as U,n as oe}from"./chunk-6TUL34DU.js";import{l as G}from"./chunk-EM4PY2IW.js";import{a as ie,b as ne}from"./chunk-555LSHXI.js";import{$a as n,Ac as a,Bc as s,Gb as L,Hb as z,Ib as I,Nb as m,Ob as o,Pb as r,Qb as u,Ub as $,Xa as M,Xb as x,Yb as _,bd as N,ed as R,fb as b,gc as j,h as k,jc as p,kc as f,lb as O,lc as g,ra as w,sa as C,sd as q,vc as H,w as h,wc as T,xc as B}from"./chunk-W6X46MTW.js";var de=t=>({background:t}),ce=t=>({anim:t}),me=t=>({"progress-bar-animated":t}),ue=()=>["restoring","restarting","restore-complete"],W=(t,c)=>({"is-valid":t,"is-invalid":c});function ge(t,c){if(t&1){let e=$();o(0,"div",5)(1,"h4",6),p(2),a(3,"translate"),r(),u(4,"div",7),a(5,"translate"),o(6,"button",8),x("click",function(){w(e);let i=_();return C(i.onClickGettingStarted())}),p(7),a(8,"translate"),r(),o(9,"a",9),x("click",function(){w(e);let i=_();return C(i.onClickRestoreBackup())}),p(10),a(11,"translate"),r()()}t&2&&(n(2),f(s(3,4,"setup.welcome_to_homebridge")),n(2),m("innerHTML",s(5,6,"setup.intro"),M),n(3),g(" ",s(8,8,"setup.button_get_started")," "),n(3),f(s(11,10,"setup_wizard_restore")))}function _e(t,c){if(t&1){let e=$();o(0,"div",5)(1,"h4",6),p(2),a(3,"translate"),r(),o(4,"div",10),p(5),a(6,"translate"),r(),o(7,"div",11)(8,"form",12),x("ngSubmit",function(){w(e);let i=_();return C(i.createFirstUser())}),o(9,"div",13)(10,"span",14),u(11,"i",15),r(),u(12,"input",16),a(13,"translate"),r(),o(14,"div",13)(15,"span",14),u(16,"i",17),r(),u(17,"input",18),a(18,"translate"),r(),o(19,"div",13)(20,"span",14),u(21,"i",17),r(),u(22,"input",19),a(23,"translate"),r(),o(24,"div",20)(25,"button",21),x("click",function(){w(e);let i=_();return C(i.onClickCancelRestore())}),p(26),a(27,"translate"),r(),o(28,"button",22),p(29),a(30,"translate"),r()()()()()}if(t&2){let e=_();n(2),f(s(3,16,"setup.create_account")),n(3),f(s(6,18,"setup_wizard_create_info")),n(3),m("formGroup",e.createUserForm),n(4),m("readonly",e.loading)("ngClass",B(30,W,e.createUserForm.controls.username.dirty&&e.createUserForm.controls.username.valid,e.createUserForm.controls.username.dirty&&e.createUserForm.controls.username.invalid))("placeholder",s(13,20,"users.label_username")),n(5),m("readonly",e.loading)("ngClass",B(33,W,e.createUserForm.controls.password.dirty&&e.createUserForm.controls.password.valid,e.createUserForm.controls.password.dirty&&e.createUserForm.controls.password.errors))("placeholder",s(18,22,"users.label_password")),n(5),m("readonly",e.loading)("ngClass",B(36,W,e.createUserForm.controls.passwordConfirm.dirty&&e.createUserForm.controls.passwordConfirm.valid,e.createUserForm.controls.passwordConfirm.dirty&&e.createUserForm.controls.passwordConfirm.errors))("placeholder",s(23,24,"users.label_confirm_password")),n(3),m("disabled",e.restoreUploading),n(),g(" ",s(27,26,"form.button_back")," "),n(2),m("disabled",e.createUserForm.invalid||e.loading),n(),g(" ",s(30,28,"form.label_continue")," ")}}function fe(t,c){t&1&&(u(0,"i",25),p(1),a(2,"translate")),t&2&&(n(),g(" ",s(2,1,"backup.label_uploading")," "))}function he(t,c){t&1&&(p(0),a(1,"translate")),t&2&&g(" ",s(1,1,"form.label_continue")," ")}function we(t,c){if(t&1){let e=$();o(0,"div",5)(1,"h4",6),p(2),a(3,"translate"),r(),o(4,"div",10),p(5),a(6,"translate"),r(),o(7,"input",23),x("change",function(i){w(e);let v=_();return C(v.handleRestoreFileInput(i.target.files))}),r(),o(8,"div",20)(9,"button",21),x("click",function(){w(e);let i=_();return C(i.onClickCancelRestore())}),p(10),a(11,"translate"),r(),o(12,"button",24),x("click",function(){w(e);let i=_();return C(i.onRestoreBackupClick())}),z(13,fe,3,3)(14,he,2,3),r()()()}if(t&2){let e=_();n(2),f(s(3,6,"setup_wizard_restore")),n(3),f(s(6,8,"backup.restore_help_one")),n(4),m("disabled",e.restoreUploading),n(),g(" ",s(11,10,"form.button_back")," "),n(2),m("disabled",e.restoreUploading||!e.selectedFile),n(),I(e.restoreUploading?13:14)}}function Ce(t,c){t&1&&(p(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_restoring")," ")}function be(t,c){t&1&&(p(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_starting")," ")}function xe(t,c){t&1&&(p(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_complete")," ")}function ve(t,c){t&1&&(o(0,"a",27),p(1),a(2,"translate"),r()),t&2&&(n(),g(" ",s(2,1,"form.label_continue")," "))}function ye(t,c){if(t&1&&(o(0,"div",5)(1,"h4",6),z(2,Ce,2,3)(3,be,2,3)(4,xe,2,3),r(),u(5,"div",26),z(6,ve,3,3,"a",27),r()),t&2){let e=_();n(2),I(e.step==="restoring"?2:e.step==="restarting"?3:e.step==="restore-complete"?4:-1),n(4),I(e.step==="restore-complete"?6:-1)}}function Se(t,c){t&1&&(o(0,"div",5)(1,"h4",28),p(2),a(3,"translate"),r(),o(4,"div",10),p(5),a(6,"translate"),r(),o(7,"a",29),p(8),a(9,"translate"),r()()),t&2&&(n(2),f(s(3,3,"setup_wizard_complete_title")),n(3),f(s(6,5,"setup_wizard_completed")),n(3),g(" ",s(9,7,"form.label_continue")," "))}var Le=(()=>{class t{$api;$auth;$settings;$title;$toastr;$translate;$ws;io;step="welcome";backgroundStyle;progress=1;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;loading=!1;selectedFile;restoreUploading=!1;createUserForm=new J({username:new E("",[F.required]),password:new E("",[F.compose([F.required,F.minLength(4)])]),passwordConfirm:new E("",[F.required])},this.matchPassword);constructor(e,l,i,v,P,d,V){this.$api=e,this.$auth=l,this.$settings=i,this.$title=v,this.$toastr=P,this.$translate=d,this.$ws=V}ngOnInit(){return k(this,null,function*(){this.$title.setTitle(this.$translate.instant("setup_wizard_page_title")),yield this.setBackground()})}setBackground(){return k(this,null,function*(){if(this.$settings.settingsLoaded||(yield h(this.$settings.onSettingsLoaded)),this.$settings.env.customWallpaperHash){let e=`${U.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`;this.backgroundStyle=`url('${e}') center/cover`}})}matchPassword(e){let l=e.get("password").value,i=e.get("passwordConfirm").value;if(l!==i)e.get("passwordConfirm").setErrors({matchPassword:!0});else return null}onClickGettingStarted(){this.step="create-account",this.progress=50}onClickRestoreBackup(){this.step="restore-backup",this.progress=20}onClickCancelRestore(){this.selectedFile=null,this.step="welcome",this.progress=1}createFirstUser(){return k(this,null,function*(){this.loading=!0,this.progress=75;let e=this.createUserForm.getRawValue();e.name=e.username;try{yield h(this.$api.post("/setup-wizard/create-first-user",e)),this.$settings.env.setupWizardComplete=!0,this.progress=100,this.loading=!1,yield this.$auth.login({username:e.username,password:e.password}),this.step="setup-complete"}catch(l){this.loading=!1,this.progress=50,console.error(l),this.$toastr.error(l.message,this.$translate.instant("toast.title_error"))}})}handleRestoreFileInput(e){e.length?(this.selectedFile=e[0],this.progress=40):(delete this.selectedFile,this.progress=20)}onRestoreBackupClick(){return k(this,null,function*(){this.restoreUploading=!0,this.step="restoring",this.progress=60;try{let e=yield h(this.$api.get("/setup-wizard/get-setup-wizard-token"));window.localStorage.setItem(U.jwt.tokenKey,e.access_token),this.$auth.token=e.access_token,this.progress=65;let l=new FormData;l.append("restoreArchive",this.selectedFile,this.selectedFile.name),yield h(this.$api.post("/backup/restore",l)),this.progress=70,this.io=this.$ws.connectToNamespace("backup");let i=document.getElementById("output");this.io.socket.on("stdout",d=>{d.split(`
2
+ \r`).forEach(y=>{if(y&&!/^[⠇⠏⠋⠙⠹⠸]+$/.test(y)){let S=document.createElement("div"),pe=/\x1B\[(\d{1,2}(;\d{1,2})?)?[mGK]/g;S.innerHTML=y.replace(pe,""),y.includes("[0;31m")?S.classList.add("red-text"):y.includes("[0;32m")?S.classList.add("green-text"):y.includes("[0;33m")?S.classList.add("orange-text"):y.includes("[0;36m")&&S.classList.add("cyan-text"),i.appendChild(S),i.scrollTop=i.scrollHeight}})}),this.restoreStarted=!0,this.restoreInProgress=!0,this.progress=75,yield h(this.io.request("do-restore")),this.progress=80,this.restoreInProgress=!1,yield h(this.$api.put("/backup/restart",{})),this.step="restarting",this.progress=85,window.localStorage.removeItem(U.jwt.tokenKey),this.$auth.token=null;let v=document.createElement("div");v.classList.add("orange-text"),v.innerHTML="Starting Homebridge, please wait...",i.appendChild(v),i.scrollTop=i.scrollHeight,yield new Promise(d=>setTimeout(d,3e3)),this.progress=88,yield new Promise(d=>setTimeout(d,3e3)),this.progress=91,yield new Promise(d=>setTimeout(d,3e3)),this.progress=94,yield new Promise(d=>setTimeout(d,3e3)),this.progress=97,yield new Promise(d=>setTimeout(d,3e3)),this.progress=99;let P=setInterval(()=>k(this,null,function*(){try{yield h(this.$api.get("/auth/settings")),clearInterval(P),this.progress=100,this.restoreUploading=!1,this.step="restore-complete"}catch{}}),1e3)}catch(e){console.error(e),this.restoreUploading=!1,this.restoreFailed=!0,this.progress=20,this.step="restore-backup",this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}finally{this.io&&this.io.end()}})}static \u0275fac=function(l){return new(l||t)(b(oe),b(se),b(ae),b(G),b(re),b(ie),b(le))};static \u0275cmp=O({type:t,selectors:[["ng-component"]],decls:10,vars:14,consts:[[1,"setup-container","gradient","d-flex","align-items-start","justify-content-center",3,"ngStyle","ngClass"],[1,"w-100","setup-card","d-flex","py-4","flex-column"],["ngSrc","/assets/homebridge-color-round.svg","alt","Homebridge Logo","height","100","width","100","priority","true",1,"homebridge-logo","mx-auto","my-3"],[1,"progress","w-100","my-4"],["role","progressbar","aria-valuemin","0","aria-valuemax","100",1,"progress-bar","progress-bar-striped","bg-success",3,"ngClass"],[1,"w-100","d-flex","flex-column","align-items-center","mb-2"],[1,"mb-3","text-center"],[1,"mb-4","small","grey-text","text-center",3,"innerHTML"],["type","button",1,"btn","btn-lg","btn-primary","mb-4",3,"click"],["href","javascript:void(0)",1,"grey-text",3,"click"],[1,"mb-4","small","grey-text","text-center"],[1,"w-100"],["novalidate","",3,"ngSubmit","formGroup"],[1,"input-group","mb-4"],[1,"input-group-text","custom-input"],[1,"fas","fa-fw","fa-user","primary-text","fa-lg"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none","tabindex","1","required","",1,"form-control","custom-input",3,"readonly","ngClass","placeholder"],[1,"fas","fa-fw","fa-lock","primary-text","fa-lg"],["formControlName","password","type","password","id","form-pass","autocomplete","new-password","tabindex","2","required","",1,"form-control","custom-input",3,"readonly","ngClass","placeholder"],["formControlName","passwordConfirm","type","password","id","form-pass-confirm","autocomplete","new-password","tabindex","2","required","",1,"form-control","custom-input",3,"readonly","ngClass","placeholder"],[1,"mt-3","w-100","d-flex","justify-content-between"],["type","button",1,"btn","btn-elegant","ms-0",3,"click","disabled"],["type","submit",1,"btn","btn-primary",3,"disabled"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz",1,"form-control","custom-input","mb-3",3,"change"],["type","button",1,"btn","btn-primary","me-0",3,"click","disabled"],[1,"fas","fa-fw","fa-spinner","fa-pulse"],["id","output",1,"font-monospace","small","alert","alert-info","w-100","text-start","mt-1","mb-0"],["href","/login",1,"btn","btn-lg","btn-primary","mt-4"],[1,"mb-3"],["href","/",1,"btn","btn-lg","btn-primary"]],template:function(l,i){l&1&&(o(0,"div",0)(1,"div",1),u(2,"img",2),o(3,"div",3),u(4,"div",4),r(),z(5,ge,12,12,"div",5)(6,_e,31,39,"div",5)(7,we,15,12,"div",5)(8,ye,7,2,"div",5)(9,Se,10,9,"div",5),r()()),l&2&&(m("ngStyle",T(7,de,i.backgroundStyle))("ngClass",T(9,ce,!i.backgroundStyle)),n(4),j("width",i.progress+"%"),m("ngClass",T(11,me,i.loading||i.restoreUploading)),L("aria-valuenow",i.progress),n(),I(i.step==="welcome"?5:i.step==="create-account"?6:i.step==="restore-backup"?7:H(13,ue).includes(i.step)?8:i.step==="setup-complete"?9:-1))},dependencies:[N,ne,q,ee,Q,D,K,A,Z,te,X,Y,R],styles:["body{overflow:scroll!important} body.dark-mode .setup-card{background-color:#2b2b2b;color:#fff}.setup-container[_ngcontent-%COMP%]{z-index:-1;padding-top:2em;padding-bottom:2em;min-height:100%;background-size:300% 300%}.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%}}.setup-card[_ngcontent-%COMP%]{max-width:550px;border-radius:1rem;padding-right:25px;padding-left:25px;background-color:#ffffffe6}.setup-card[_ngcontent-%COMP%] .form-control[_ngcontent-%COMP%]:focus{background-color:inherit!important}@media screen and (max-width: 575px){.setup-card[_ngcontent-%COMP%]{margin-left:1em;margin-right:1em}}.homebridge-logo[_ngcontent-%COMP%]{margin-bottom:10px}.progress[_ngcontent-%COMP%]{background-color:#ddd}#output[_ngcontent-%COMP%]{height:200px;overflow-y:scroll;white-space:pre-wrap}"]})}return t})();export{Le as a};
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-U3GYVCZ5.js";import{a as f}from"./chunk-MFBVZAEQ.js";import{v as u}from"./chunk-2NQ5FYSH.js";import{A as p,z as n}from"./chunk-5NG7YGKN.js";import{g as i}from"./chunk-JBQX4JBH.js";import"./chunk-4G5TRQV5.js";import"./chunk-CI7ES5EB.js";import"./chunk-4I6LLOMI.js";import"./chunk-6TUL34DU.js";import"./chunk-EM4PY2IW.js";import{c as d}from"./chunk-555LSHXI.js";import{ha as t,kd as m,mb as r}from"./chunk-W6X46MTW.js";var M=[{path:"",loadComponent:()=>import("./chunk-QHLEZFHN.js").then(o=>o.SetupWizardComponent)}],l=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({imports:[i.forChild(M),i]})}return o})();var R=(()=>{class o{static \u0275fac=function(e){return new(e||o)};static \u0275mod=r({type:o});static \u0275inj=t({providers:[a],imports:[m,n,p,d,u,l,f]})}return o})();export{R as SetupWizardModule};
@@ -0,0 +1 @@
1
+ import{a as l,b as a,c as u,d as C,e as g,f as M,g as R}from"./chunk-2FVPRLQG.js";import{a as c}from"./chunk-RPX42C27.js";import{a as d}from"./chunk-LSWNZUER.js";import"./chunk-GMQEHLXV.js";import"./chunk-SWUH5RAT.js";import"./chunk-M5VWLNY3.js";import{v as s}from"./chunk-2NQ5FYSH.js";import{A as p,z as n}from"./chunk-5NG7YGKN.js";import{g as m}from"./chunk-JBQX4JBH.js";import"./chunk-4G5TRQV5.js";import"./chunk-CI7ES5EB.js";import"./chunk-4I6LLOMI.js";import"./chunk-6TUL34DU.js";import"./chunk-EM4PY2IW.js";import{c as f}from"./chunk-555LSHXI.js";import{ha as t,kd as i,mb as e}from"./chunk-W6X46MTW.js";var S=[{path:"",loadComponent:()=>import("./chunk-UXMF7TL3.js").then(o=>o.SettingsComponent),canActivate:[c]}],A=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[m.forChild(S),m]})}return o})();var P=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[i,n,p,f,s,A,R,l,C,u,d,g,a,M]})}return o})();export{P as SettingsModule};
@@ -0,0 +1 @@
1
+ import{a as h}from"./chunk-YLZEJ2HL.js";import{b}from"./chunk-555LSHXI.js";import{$a as s,Ac as w,Bc as y,Lc as T,Ob as r,Pb as o,Qb as c,Xb as u,_a as l,dc as p,ec as f,jc as v,kc as g,la as a,lb as d,n as m}from"./chunk-W6X46MTW.js";var C=["terminaloutput"],k=(()=>{class t{$terminal=a(h);termTarget=T("terminaloutput");resizeEvent=new m;constructor(){}onWindowResize(){this.resizeEvent.next(void 0)}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$terminal.startTerminal(this.termTarget(),{},this.resizeEvent),this.$terminal.term.focus()}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.$terminal.destroyTerminal()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=d({type:t,selectors:[["ng-component"]],viewQuery:function(e,n){e&1&&p(n.termTarget,C,5),e&2&&f()},hostBindings:function(e,n){e&1&&u("resize",function(x){return n.onWindowResize(x)},l)},decls:8,vars:3,consts:[["terminaloutput",""],[1,"row","mb-3"],[1,"col-12"],[1,"primary-text","m-0"],[1,"flex-column","d-flex","align-items-stretch","adjust-for-mobile"],["id","docker-terminal",1,"align-self-end","w-100","h-100","mb-1"]],template:function(e,n){e&1&&(r(0,"div",1)(1,"div",2)(2,"h3",3),v(3),w(4,"translate"),o()()(),r(5,"div",4),c(6,"div",5,0),o()),e&2&&(s(3),g(y(4,1,"menu.linux.label_terminal")))},dependencies:[b],encapsulation:2})}return t})();export{k as a};
@@ -0,0 +1 @@
1
+ import{d as y}from"./chunk-JBQX4JBH.js";import{a as T}from"./chunk-4G5TRQV5.js";import{b as S}from"./chunk-4I6LLOMI.js";import{k as $,n as C}from"./chunk-6TUL34DU.js";import{a as _,b as g}from"./chunk-555LSHXI.js";import{$a as i,Ac as p,Bc as c,Hb as l,Ib as m,Ob as r,Pb as n,Qb as x,Yb as v,jc as o,kc as s,la as a,lb as h}from"./chunk-W6X46MTW.js";function w(t,f){t&1&&(r(0,"p",7),o(1),p(2,"translate"),n()),t&2&&(i(),s(c(2,1,"restart.please_wait_while_server_restarts")))}function k(t,f){if(t&1&&(r(0,"div",8),o(1),n()),t&2){let e=v();i(),s(e.error)}}function b(t,f){t&1&&(r(0,"div",9)(1,"div",11),x(2,"i",12),n()())}function E(t,f){t&1&&(r(0,"div",10),o(1),p(2,"translate"),n()),t&2&&(i(),s(c(2,1,"platform.linux.long_time")))}var A=(()=>{class t{$api=a(C);$router=a(y);$settings=a(S);$toastr=a($);$translate=a(_);$ws=a(T);checkTimeout;checkDelay;resp={};timeout=!1;error=!1;io;constructor(){}ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch(()=>{})}),this.$api.put("/platform-tools/linux/restart-host",{}).subscribe({next:e=>{this.resp=e,this.checkIfServerUp()},error:e=>{console.error(e),this.error=this.$translate.instant("platform.linux.server_restart_error"),this.$toastr.error(this.$translate.instant("platform.linux.server_restart_error"),this.$translate.instant("toast.title_error"))}})}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",e=>{(e.status==="up"||e.status==="pending")&&(this.$toastr.success(this.$translate.instant("platform.linux.server_restarted"),this.$translate.instant("toast.title_success")),this.$router.navigate(["/"]))})},3e4),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("platform.linux.server_taking_long_time"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},12e4)}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}static \u0275fac=function(d){return new(d||t)};static \u0275cmp=h({type:t,selectors:[["ng-component"]],decls:15,vars:10,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,"text-center"],[1,"primary-text","mb-4"],[1,"grey-text"],[1,"alert","alert-error","my-4"],[1,"justify-content-center","my-4"],[1,"alert","alert-warning","my-4"],[1,"restart-progress-box","primary-text"],[1,"fas","fa-fw","fa-spinner","fa-spin"]],template:function(d,u){d&1&&(r(0,"div",0)(1,"h3",1),o(2),p(3,"translate"),n()(),r(4,"div",2)(5,"div",3),x(6,"i",4),n(),r(7,"div",5)(8,"h4",6),o(9),p(10,"translate"),n(),l(11,w,3,3,"p",7),l(12,k,2,1,"div",8),l(13,b,3,0,"div",9),l(14,E,3,3,"div",10),n()()),d&2&&(i(2),s(c(3,6,"menu.restart.title")),i(7),s(c(10,8,"platform.linux.restarting_server")),i(2),m(u.error?-1:11),i(),m(u.error?12:-1),i(),m(u.error?-1:13),i(),m(u.timeout?14:-1))},dependencies:[g],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{A as a};
@@ -0,0 +1 @@
1
+ import{b as a}from"./chunk-WXHERXH5.js";import"./chunk-YSWBG5VY.js";import"./chunk-LSWNZUER.js";import"./chunk-S6UXXPGF.js";import"./chunk-2NQ5FYSH.js";import"./chunk-5NG7YGKN.js";import"./chunk-JBQX4JBH.js";import"./chunk-4G5TRQV5.js";import"./chunk-CI7ES5EB.js";import"./chunk-4I6LLOMI.js";import"./chunk-6TUL34DU.js";import"./chunk-EM4PY2IW.js";import"./chunk-555LSHXI.js";import"./chunk-W6X46MTW.js";export{a as AccessoriesComponent};