homebridge-config-ui-x 5.0.0-beta.9 → 5.0.0-beta.91

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 (316) hide show
  1. package/CHANGELOG.md +428 -31
  2. package/CONTRIBUTING.md +5 -4
  3. package/LICENSE +1 -1
  4. package/config.schema.json +37 -192
  5. package/dist/bin/hb-service.d.ts +2 -2
  6. package/dist/bin/hb-service.js +51 -50
  7. package/dist/bin/hb-service.js.map +1 -1
  8. package/dist/bin/platforms/darwin.js +2 -2
  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 +15 -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 +23 -11
  22. package/dist/core/config/config.service.js +39 -19
  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 +1 -1
  43. package/dist/modules/config-editor/config-editor.controller.js +8 -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 +1 -1
  46. package/dist/modules/config-editor/config-editor.service.js +84 -67
  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.js +4 -4
  72. package/dist/modules/plugins/plugins.controller.js.map +1 -1
  73. package/dist/modules/plugins/plugins.service.d.ts +4 -1
  74. package/dist/modules/plugins/plugins.service.js +168 -103
  75. package/dist/modules/plugins/plugins.service.js.map +1 -1
  76. package/dist/modules/server/server.controller.d.ts +28 -3
  77. package/dist/modules/server/server.controller.js +137 -20
  78. package/dist/modules/server/server.controller.js.map +1 -1
  79. package/dist/modules/server/server.service.d.ts +27 -6
  80. package/dist/modules/server/server.service.js +212 -66
  81. package/dist/modules/server/server.service.js.map +1 -1
  82. package/dist/modules/status/status.controller.d.ts +0 -1
  83. package/dist/modules/status/status.controller.js +3 -4
  84. package/dist/modules/status/status.controller.js.map +1 -1
  85. package/dist/modules/status/status.gateway.d.ts +1 -1
  86. package/dist/modules/status/status.service.d.ts +1 -1
  87. package/dist/modules/status/status.service.js +25 -41
  88. package/dist/modules/status/status.service.js.map +1 -1
  89. package/dist/modules/users/users.controller.js +7 -7
  90. package/dist/modules/users/users.controller.js.map +1 -1
  91. package/dist/self-check.js +6 -6
  92. package/dist/self-check.js.map +1 -1
  93. package/package.json +50 -43
  94. package/public/3rdpartylicenses.txt +192 -109
  95. package/public/assets/hap-icons/airpurifier.svg +49 -16
  96. package/public/assets/hap-icons/airquality.svg +24 -13
  97. package/public/assets/hap-icons/co-sensor.svg +72 -0
  98. package/public/assets/hap-icons/co2-sensor.svg +72 -0
  99. package/public/assets/hap-icons/contactsensor-closed.svg +35 -2
  100. package/public/assets/hap-icons/contactsensor-open.svg +80 -2
  101. package/public/assets/hap-icons/door-closed.svg +32 -2
  102. package/public/assets/hap-icons/door-open.svg +48 -2
  103. package/public/assets/hap-icons/fan-off.svg +24 -13
  104. package/public/assets/hap-icons/fan-on.svg +24 -13
  105. package/public/assets/hap-icons/garagedoor.svg +24 -13
  106. package/public/assets/hap-icons/humidity.svg +24 -13
  107. package/public/assets/hap-icons/irrigation-system.svg +47 -18
  108. package/public/assets/hap-icons/leaksensor.svg +52 -2
  109. package/public/assets/hap-icons/light.svg +47 -28
  110. package/public/assets/hap-icons/lightbulb.svg +24 -13
  111. package/public/assets/hap-icons/lock-locked.svg +24 -13
  112. package/public/assets/hap-icons/lock-unlocked.svg +24 -13
  113. package/public/assets/hap-icons/motionsensor.svg +100 -2
  114. package/public/assets/hap-icons/occupancysensor.svg +97 -2
  115. package/public/assets/hap-icons/outlet.svg +24 -13
  116. package/public/assets/hap-icons/securitysystem-active.svg +102 -2
  117. package/public/assets/hap-icons/securitysystem-off.svg +68 -2
  118. package/public/assets/hap-icons/smokesensor.svg +42 -9
  119. package/public/assets/hap-icons/speaker.svg +29 -13
  120. package/public/assets/hap-icons/statelessprogrammableswitch.svg +51 -2
  121. package/public/assets/hap-icons/switch.svg +24 -13
  122. package/public/assets/hap-icons/television.svg +15 -4
  123. package/public/assets/hap-icons/temperature.svg +24 -13
  124. package/public/assets/hap-icons/unknown.svg +24 -13
  125. package/public/assets/hap-icons/valve-generic.svg +27 -16
  126. package/public/assets/hap-icons/valve-irrigation.svg +37 -21
  127. package/public/assets/hap-icons/valve-showerhead.svg +52 -0
  128. package/public/assets/hap-icons/valve-waterfaucet.svg +21 -0
  129. package/public/assets/hap-icons/window-closed.svg +85 -2
  130. package/public/assets/hap-icons/window-open.svg +136 -2
  131. package/public/assets/hap-icons/windowcovering-closed.svg +45 -49
  132. package/public/assets/hap-icons/windowcovering-open.svg +40 -44
  133. package/public/assets/homebridge-color-round.svg +36 -1
  134. package/public/assets/homebridge-logo.svg +11 -1
  135. package/public/assets/mask-icon.svg +5 -1
  136. package/public/assets/plugin-ui-utils/ui.js +3 -0
  137. package/public/assets/plugin-ui-utils/ui.js.map +1 -1
  138. package/public/chunk-2EMPNH2X.js +5 -0
  139. package/public/chunk-2VGFYHDE.js +1 -0
  140. package/public/chunk-346GJNBG.js +1 -0
  141. package/public/chunk-3HISBS3B.js +1 -0
  142. package/public/{chunk-EA5J2VEJ.js → chunk-4VKEWS3F.js} +1 -1
  143. package/public/chunk-4W65T6DT.js +1 -0
  144. package/public/chunk-56VIVSJU.js +1 -0
  145. package/public/chunk-5GQ5LHPJ.js +1 -0
  146. package/public/chunk-5OVPVUOZ.js +1 -0
  147. package/public/chunk-5P7NZODH.js +1 -0
  148. package/public/chunk-6AEKDPHD.js +1 -0
  149. package/public/chunk-6IA7K4TY.js +1 -0
  150. package/public/chunk-6MBDS53J.js +1 -0
  151. package/public/chunk-6MUZSNBL.js +1 -0
  152. package/public/chunk-7LKPHFJR.js +1 -0
  153. package/public/{chunk-QE7DO6J3.js → chunk-ANCTYTNR.js} +2 -2
  154. package/public/{chunk-LWNID63H.js → chunk-ASWAWBAB.js} +2 -2
  155. package/public/chunk-BHX6S5LW.js +1 -0
  156. package/public/chunk-BWWDBVP3.js +1 -0
  157. package/public/chunk-CBKMIXD7.js +1 -0
  158. package/public/{chunk-GR5ZC55C.js → chunk-CEC3XQIL.js} +11 -11
  159. package/public/{chunk-JZZQRLNW.js → chunk-DQBVZWYJ.js} +1 -1
  160. package/public/chunk-EB3RUUUU.js +1 -0
  161. package/public/chunk-EJ3RNOUF.js +1 -0
  162. package/public/chunk-EU2PYI42.js +1 -0
  163. package/public/{chunk-6TCHCTXZ.js → chunk-EWUBHGYD.js} +1 -1
  164. package/public/chunk-FC2ZP4GG.js +1 -0
  165. package/public/chunk-FDPTBVVC.js +2 -0
  166. package/public/chunk-FDZTOO2J.js +1 -0
  167. package/public/{chunk-7EUQWCP5.js → chunk-FIDKTTX5.js} +2 -2
  168. package/public/chunk-FLL5WOYP.js +1 -0
  169. package/public/chunk-FMIYWTUO.js +1 -0
  170. package/public/chunk-FN3OPQ7O.js +1 -0
  171. package/public/chunk-G6ZI7M42.js +1 -0
  172. package/public/chunk-GA7DSDUF.js +1 -0
  173. package/public/chunk-GOW5VSYJ.js +1 -0
  174. package/public/chunk-GWC7VRF6.js +1 -0
  175. package/public/{chunk-MPLDW2J6.js → chunk-HBZONUFA.js} +1 -1
  176. package/public/chunk-HRWCTTRC.js +5 -0
  177. package/public/chunk-HYKYJOGA.js +1 -0
  178. package/public/chunk-IC342R5Q.js +8 -0
  179. package/public/chunk-ICWWGXAA.js +1 -0
  180. package/public/chunk-IF56BKOM.js +1 -0
  181. package/public/chunk-JUHAP4JY.js +1 -0
  182. package/public/chunk-L3LHJ4JZ.js +23 -0
  183. package/public/chunk-L3YFIHHA.js +1 -0
  184. package/public/{chunk-WNWWUCCZ.js → chunk-L7P4OVCU.js} +3 -3
  185. package/public/chunk-LPGZUTF3.js +1 -0
  186. package/public/chunk-MPEMMRY5.js +6 -0
  187. package/public/chunk-MZFQR6RR.js +1 -0
  188. package/public/chunk-NM36IH7P.js +1 -0
  189. package/public/chunk-NR37MAXW.js +7 -0
  190. package/public/{chunk-XSDOEAMI.js → chunk-OMLHTTMP.js} +1 -1
  191. package/public/{chunk-ENKVNFKF.js → chunk-OTCI6CN2.js} +1 -1
  192. package/public/chunk-PRR4LQWG.js +1 -0
  193. package/public/chunk-QGHY5CLC.js +2 -0
  194. package/public/chunk-QRORVNZ7.js +1 -0
  195. package/public/chunk-RGIMTPTA.js +1 -0
  196. package/public/chunk-RK3BSPVK.js +1 -0
  197. package/public/chunk-SEDDFWVS.js +1 -0
  198. package/public/chunk-TLWI6DE6.js +1 -0
  199. package/public/chunk-U5WNNZWN.js +1 -0
  200. package/public/chunk-UAAJJBQH.js +1 -0
  201. package/public/chunk-VQSRL3AI.js +29 -0
  202. package/public/chunk-VWYIDHUF.js +8 -0
  203. package/public/chunk-VZG6DA4F.js +1 -0
  204. package/public/chunk-XEFNJNER.js +1 -0
  205. package/public/chunk-XH3VLWN5.js +1 -0
  206. package/public/chunk-Y3BJZ7QJ.js +1 -0
  207. package/public/chunk-Y6TXYIFY.js +7 -0
  208. package/public/chunk-YDQT2IQW.js +1 -0
  209. package/public/chunk-YOQMEVOQ.js +1 -0
  210. package/public/chunk-YVAFKINR.js +20 -0
  211. package/public/chunk-YWKZ3P6I.js +1 -0
  212. package/public/chunk-Z4SD7E4P.js +1 -0
  213. package/public/chunk-ZNDTZTBG.js +1 -0
  214. package/public/chunk-ZOLUFCSO.js +1 -0
  215. package/public/chunk-ZPSG5SPC.js +1 -0
  216. package/public/chunk-ZSNEJNFO.js +1 -0
  217. package/public/index.html +2 -2
  218. package/public/main-KNYHSHUX.js +1 -0
  219. package/public/media/fa-brands-400-Q3XCMWHQ.woff2 +0 -0
  220. package/public/media/{fa-brands-400-KOKGDU7E.ttf → fa-brands-400-R2XQZCET.ttf} +0 -0
  221. package/public/media/fa-regular-400-QSNYFYRT.woff2 +0 -0
  222. package/public/media/{fa-regular-400-IPMAEX5Y.ttf → fa-regular-400-XUOPSR7E.ttf} +0 -0
  223. package/public/media/fa-solid-900-5ZUYHGA7.woff2 +0 -0
  224. package/public/media/{fa-solid-900-SRFFQLRM.ttf → fa-solid-900-PJNKLK6W.ttf} +0 -0
  225. package/public/polyfills-GCAZ7JAV.js +2 -0
  226. package/public/styles-PKR3EGHP.css +1 -0
  227. package/scripts/upgrade-install-plugin.sh +1 -1
  228. package/public/chunk-2JFSWT5B.js +0 -1
  229. package/public/chunk-2L7ELAST.js +0 -1
  230. package/public/chunk-2S6LQXQQ.js +0 -1
  231. package/public/chunk-33GSDLFJ.js +0 -1
  232. package/public/chunk-3IX3CLER.js +0 -1
  233. package/public/chunk-3OQBMVGJ.js +0 -1
  234. package/public/chunk-4G7JJKXC.js +0 -1
  235. package/public/chunk-4W4R6Q5O.js +0 -1
  236. package/public/chunk-4YG6EOJW.js +0 -1
  237. package/public/chunk-5ABRPQAO.js +0 -1
  238. package/public/chunk-5JQMTC6B.js +0 -1
  239. package/public/chunk-BKCPDNDQ.js +0 -1
  240. package/public/chunk-BKUGARB4.js +0 -7
  241. package/public/chunk-BPMSJ2VF.js +0 -1
  242. package/public/chunk-BVRAVCVU.js +0 -1
  243. package/public/chunk-CCUID66K.js +0 -1
  244. package/public/chunk-CNLFTFGS.js +0 -1
  245. package/public/chunk-COZI4IQZ.js +0 -1
  246. package/public/chunk-DFKBPEBJ.js +0 -1
  247. package/public/chunk-FIWNQUN6.js +0 -1
  248. package/public/chunk-HSJSWZHD.js +0 -1
  249. package/public/chunk-JJL2MTZS.js +0 -1
  250. package/public/chunk-JKN6S535.js +0 -1
  251. package/public/chunk-KQJ7ONUG.js +0 -1
  252. package/public/chunk-KSIUXDRS.js +0 -1
  253. package/public/chunk-KZATMDCZ.js +0 -6
  254. package/public/chunk-L3MK74M5.js +0 -1
  255. package/public/chunk-M2ME37TX.js +0 -8
  256. package/public/chunk-M3VCR6YB.js +0 -1
  257. package/public/chunk-M5AJDIBQ.js +0 -1
  258. package/public/chunk-MK7X7MS5.js +0 -1
  259. package/public/chunk-NBOHFRJZ.js +0 -1
  260. package/public/chunk-NHZHWKSG.js +0 -1
  261. package/public/chunk-NQVE3PCO.js +0 -1
  262. package/public/chunk-NW6AFAD7.js +0 -1
  263. package/public/chunk-NWWJ57YP.js +0 -1
  264. package/public/chunk-NZNNTHFQ.js +0 -1
  265. package/public/chunk-ORPWYWCL.js +0 -5
  266. package/public/chunk-QGKMS5A5.js +0 -1
  267. package/public/chunk-QHPDGSZ6.js +0 -1
  268. package/public/chunk-QOGRNTPH.js +0 -1
  269. package/public/chunk-QXKNQTUO.js +0 -1
  270. package/public/chunk-ROX65GNZ.js +0 -23
  271. package/public/chunk-RTYW4L3V.js +0 -1
  272. package/public/chunk-SQRHRHFP.js +0 -20
  273. package/public/chunk-T7JTTE4M.js +0 -1
  274. package/public/chunk-T7R6ZVT6.js +0 -1
  275. package/public/chunk-TCSXGQNF.js +0 -1
  276. package/public/chunk-THICF3SZ.js +0 -1
  277. package/public/chunk-TUWXLY3X.js +0 -1
  278. package/public/chunk-TXOB7R5K.js +0 -7
  279. package/public/chunk-U5ZKGWCF.js +0 -1
  280. package/public/chunk-UG5DK2RQ.js +0 -2
  281. package/public/chunk-UYFK7HVI.js +0 -1
  282. package/public/chunk-UZOK2K35.js +0 -1
  283. package/public/chunk-VDCXEJXR.js +0 -1
  284. package/public/chunk-VEBWYZYZ.js +0 -1
  285. package/public/chunk-VNARIZ6E.js +0 -1
  286. package/public/chunk-VP4MXPRG.js +0 -1
  287. package/public/chunk-VPJTE4TI.js +0 -1
  288. package/public/chunk-VPKOFODJ.js +0 -1
  289. package/public/chunk-WHJOLAED.js +0 -1
  290. package/public/chunk-WHJSVGC7.js +0 -1
  291. package/public/chunk-WQJUPQJT.js +0 -1
  292. package/public/chunk-XMYXVAEK.js +0 -1
  293. package/public/chunk-XO7XB4PL.js +0 -1
  294. package/public/chunk-XTVTI5YA.js +0 -5
  295. package/public/chunk-YSQSVKZB.js +0 -32
  296. package/public/chunk-Z5GB7FXV.js +0 -1
  297. package/public/chunk-ZT23DWNL.js +0 -1
  298. package/public/main-CNETRB3V.js +0 -1
  299. package/public/media/01-RQ3S2L53.png +0 -0
  300. package/public/media/02-VNCG2I2A.png +0 -0
  301. package/public/media/03-HI42L4ZG.png +0 -0
  302. package/public/media/04-FJLL55LZ.png +0 -0
  303. package/public/media/05-V3EO6SPT.png +0 -0
  304. package/public/media/06-EOJZCQZN.png +0 -0
  305. package/public/media/07-KMKB5PBD.png +0 -0
  306. package/public/media/08-UQJRF6B2.png +0 -0
  307. package/public/media/09-2DJQFRHH.png +0 -0
  308. package/public/media/arrow_left-CQT7FZM7.svg +0 -4
  309. package/public/media/arrow_right-SBUDRR2G.svg +0 -4
  310. package/public/media/fa-brands-400-6PJPV6JM.woff2 +0 -0
  311. package/public/media/fa-regular-400-OHB6J4OK.woff2 +0 -0
  312. package/public/media/fa-solid-900-ABTK6BNK.woff2 +0 -0
  313. package/public/polyfills-C6JHVXJJ.js +0 -2
  314. package/public/scripts-6GVLYD7F.js +0 -62
  315. package/public/styles-EG5MFQEM.css +0 -1
  316. /package/public/assets/{bootstrap-4 → bootstrap-5}/cssframework/assets.json +0 -0
@@ -0,0 +1,8 @@
1
+ import{a as S,b as O,c as U}from"./chunk-Y6TXYIFY.js";import{a as g}from"./chunk-OMLHTTMP.js";import{M as w,e as x,g as h,ga as E,la as L,n as R}from"./chunk-NR37MAXW.js";var F=x((v,b)=>{(function(a,l){typeof define=="function"&&define.amd?define([],l):typeof v<"u"?l():(l(),a.FileSaver={})})(v,function(){"use strict";function a(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function l(e,t,n){var i=new XMLHttpRequest;i.open("GET",e),i.responseType="blob",i.onload=function(){r(i.response,t,n)},i.onerror=function(){console.error("could not download file")},i.send()}function d(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function c(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var s=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,m=s.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),r=s.saveAs||(typeof window!="object"||window!==s?function(){}:"download"in HTMLAnchorElement.prototype&&!m?function(e,t,n){var i=s.URL||s.webkitURL,o=document.createElement("a");t=t||e.name||"download",o.download=t,o.rel="noopener",typeof e=="string"?(o.href=e,o.origin===location.origin?c(o):d(o.href)?l(e,t,n):c(o,o.target="_blank")):(o.href=i.createObjectURL(e),setTimeout(function(){i.revokeObjectURL(o.href)},4e4),setTimeout(function(){c(o)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,n){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(a(e,n),t);else if(d(e))l(e,t,n);else{var i=document.createElement("a");i.href=e,i.target="_blank",setTimeout(function(){c(i)})}}:function(e,t,n,i){if(i=i||open("","_blank"),i&&(i.document.title=i.document.body.innerText="downloading..."),typeof e=="string")return l(e,t,n);var o=e.type==="application/octet-stream",z=/constructor/i.test(s.HTMLElement)||s.safari,y=/CriOS\/[\d]+/.test(navigator.userAgent);if((y||o&&z||m)&&typeof FileReader<"u"){var u=new FileReader;u.onloadend=function(){var f=u.result;f=y?f:f.replace(/^data:[^;]*;/,"data:attachment/file;"),i?i.location.href=f:location=f,i=null},u.readAsDataURL(e)}else{var A=s.URL||s.webkitURL,p=A.createObjectURL(e);i?i.location=p:location.href=p,i=null,setTimeout(function(){A.revokeObjectURL(p)},4e4)}});s.saveAs=r.saveAs=r,typeof b<"u"&&(b.exports=r)})});var k=h(S(),1),j=h(O(),1),T=h(U(),1);var W=(()=>{class a{$ws=L(g);term;io;fitAddon;webLinksAddon;resize;elementResize;pluginName;constructor(){}startTerminal(d,c={},s,m){this.pluginName=m,this.elementResize=s,this.io=this.$ws.connectToNamespace("log"),this.term=new k.Terminal(c),setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.fitAddon=new j.FitAddon,this.webLinksAddon=new T.WebLinksAddon,this.resize=new R,this.term.open(d.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.connected.subscribe(()=>{this.term.reset(),this.io.socket.emit("tail-log",{cols:this.term.cols,rows:this.term.rows})}),this.io.socket.on("disconnect",()=>{this.term.write(`
2
+ \r
3
+ \rWebsocket failed to connect. Is the server running?
4
+ \r
5
+ \r`)}),this.resize.pipe(w(500)).subscribe(r=>{this.io.socket.emit("resize",r)}),this.io.socket.on("stdout",r=>{if(this.pluginName){let e=r.split(`
6
+ \r`),t=!1;e.forEach(n=>{if(n){if(t)if(n.match(/36m\[.*?\]/))t=!1;else{this.term.write(`${n}
7
+ \r`);return}n.includes(`36m[${this.pluginName}]`)&&(this.term.write(`${n}
8
+ \r`),t=!0)}})}else this.term.write(r)}),this.term.onResize(r=>{this.resize.next(r)}),this.elementResize&&this.elementResize.pipe(w(100)).subscribe({next:()=>{this.fitAddon.fit()}})}destroyTerminal(){this.io.end(),this.term.dispose(),this.resize.complete(),this.elementResize&&this.elementResize.complete()}static \u0275fac=function(c){return new(c||a)};static \u0275prov=E({token:a,factory:a.\u0275fac,providedIn:"root"})}return a})();export{W as a,F as b};
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-7LKPHFJR.js";import{a as f}from"./chunk-QGHY5CLC.js";import{q as u}from"./chunk-2EMPNH2X.js";import{A as p,z as n}from"./chunk-EJ3RNOUF.js";import{g as i}from"./chunk-ZOLUFCSO.js";import"./chunk-OMLHTTMP.js";import"./chunk-HBZONUFA.js";import"./chunk-ZPSG5SPC.js";import"./chunk-RGIMTPTA.js";import"./chunk-FDPTBVVC.js";import{c as d}from"./chunk-GOW5VSYJ.js";import{ha as t,kd as m,mb as r}from"./chunk-NR37MAXW.js";var M=[{path:"",loadComponent:()=>import("./chunk-FDZTOO2J.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{b as a}from"./chunk-6IA7K4TY.js";import"./chunk-IC342R5Q.js";import"./chunk-EB3RUUUU.js";import"./chunk-DQBVZWYJ.js";import"./chunk-2EMPNH2X.js";import"./chunk-EJ3RNOUF.js";import"./chunk-ZOLUFCSO.js";import"./chunk-OMLHTTMP.js";import"./chunk-HBZONUFA.js";import"./chunk-ZPSG5SPC.js";import"./chunk-RGIMTPTA.js";import"./chunk-FDPTBVVC.js";import"./chunk-GOW5VSYJ.js";import"./chunk-NR37MAXW.js";export{a as AccessoriesComponent};
@@ -0,0 +1 @@
1
+ import{A as j,c as $,d as C,e as T,f as N,g as q,j as w,m as H,p as z,q as D,w as G,x as Q,z as A}from"./chunk-EJ3RNOUF.js";import{d as U}from"./chunk-ZOLUFCSO.js";import{c as X}from"./chunk-HBZONUFA.js";import{b as K}from"./chunk-ZPSG5SPC.js";import{m as J}from"./chunk-RGIMTPTA.js";import{b as W}from"./chunk-GOW5VSYJ.js";import{$a as n,Ac as l,Bc as d,Hb as p,Ib as u,Lc as b,M as I,Nb as m,Nc as V,Ob as r,Pb as a,Qb as s,Xa as x,Xb as M,Yb as F,bd as B,dc as v,ec as L,ed as O,fb as k,h as y,jc as c,kc as h,la as f,lb as E,lc as P,sd as R,w as S,wc as g}from"./chunk-NR37MAXW.js";var Z=["password"],ee=["username"],te=["otp"],ie=e=>({background:e}),ne=e=>({anim:e}),Y=e=>({"is-invalid":e});function oe(e,_){if(e&1&&(r(0,"div",8)(1,"span",12),s(2,"i",13),a(),s(3,"input",14,0),l(5,"translate"),a(),r(6,"div",8)(7,"span",12),s(8,"i",15),a(),s(9,"input",16,1),l(11,"translate"),a()),e&2){let i=F();n(3),m("placeholder",d(5,4,"users.label_username"))("ngClass",g(8,Y,i.form.controls.username.dirty&&i.form.controls.username.errors)),n(6),m("placeholder",d(11,6,"users.label_password"))("ngClass",g(10,Y,i.form.controls.password.dirty&&i.form.controls.password.errors))}}function ae(e,_){e&1&&(r(0,"div",8)(1,"span",12),s(2,"i",17),a(),s(3,"input",18,2),l(5,"translate"),a()),e&2&&(n(3),m("placeholder",d(5,1,"login.label_2fa_code")))}function re(e,_){e&1&&(r(0,"div",9)(1,"div",12),s(2,"i",19),a(),r(3,"div",20)(4,"div",21),c(5),l(6,"translate"),a(),s(7,"div",22),l(8,"translate"),a()()),e&2&&(n(5),h(d(6,2,"login.invalid_credentials")),n(2),m("innerHTML",d(8,4,"login.invalid_credentials_2"),x))}function se(e,_){e&1&&(r(0,"div",9)(1,"div",12),s(2,"i",19),a(),r(3,"div",20)(4,"div",21),c(5),l(6,"translate"),a(),s(7,"div",22),l(8,"translate"),a()()),e&2&&(n(5),h(d(6,2,"login.invalid_code")),n(2),m("innerHTML",d(8,4,"login.invalid_credentials_2"),x))}var ye=(()=>{class e{cdr;$auth=f(X);$router=f(U);$settings=f(K);passwordInput=b("password");usernameInput=b("username");otpInput=b("otp");form;backgroundStyle;invalidCredentials=!1;invalid2faCode=!1;twoFactorCodeRequired=!1;inProgress=!1;targetRoute;constructor(i){this.cdr=i}ngOnInit(){this.form=new q({username:new w(""),password:new w("")}),this.form.valueChanges.pipe(I(500)).subscribe(i=>{let o=this.passwordInput()?.nativeElement.value;o&&o!==i.password&&this.form.controls.password.setValue(o)}),this.targetRoute=window.sessionStorage.getItem("target_route")||"",this.setBackground()}ngAfterViewChecked(){this.cdr.detectChanges()}setBackground(){return y(this,null,function*(){if(this.$settings.settingsLoaded||(yield S(this.$settings.onSettingsLoaded)),this.$settings.env.customWallpaperHash&&this.$settings.env.customWallpaperHash){let i=`${J.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`;this.backgroundStyle=`url('${i}') center/cover`}})}onSubmit(){return y(this,null,function*(){this.invalidCredentials=!1,this.invalid2faCode=!1,this.inProgress=!0,document.getElementById("submit-button")?.blur();let i=this.passwordInput()?.nativeElement.value;i&&i!==this.form.get("password").value&&this.form.controls.password.setValue(i);let o=this.usernameInput()?.nativeElement.value;if(o&&o!==this.form.get("username").value&&this.form.controls.username.setValue(o),this.twoFactorCodeRequired){let t=this.otpInput()?.nativeElement.value;t&&t!==this.form.get("otp").value&&this.form.controls.username.setValue(t)}try{yield this.$auth.login(this.form.getRawValue()),this.$router.navigateByUrl(this.targetRoute),window.sessionStorage.removeItem("target_route")}catch(t){t.status===412?(this.form.controls.otp?(this.form.controls.otp.setErrors(["Invalid Code"]),this.invalid2faCode=!0):this.form.addControl("otp",new w("",[C.required,C.minLength(6),C.maxLength(6)])),this.twoFactorCodeRequired=!0,setTimeout(()=>{document.getElementById("form-ota").focus()},100)):this.invalidCredentials=!0}this.inProgress=!1})}static \u0275fac=function(o){return new(o||e)(k(V))};static \u0275cmp=E({type:e,selectors:[["ng-component"]],viewQuery:function(o,t){o&1&&(v(t.passwordInput,Z,5),v(t.usernameInput,ee,5),v(t.otpInput,te,5)),o&2&&L(3)},decls:15,vars:18,consts:[["username",""],["password",""],["otp",""],[1,"login-container","gradient","d-flex","align-items-start","justify-content-center",3,"ngStyle","ngClass"],[1,"w-100","login-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"],["novalidate","",3,"ngSubmit","formGroup"],[1,"mb-4","text-center"],[1,"input-group","mb-4"],[1,"input-group","no-border","mb-4"],[1,"text-center"],["tabindex","3","id","submit-button","type","submit",1,"btn","btn-primary","mb-2",3,"disabled"],[1,"input-group-text","custom-input"],[1,"fas","fa-fw","fa-user","primary-text","fa-lg"],["formControlName","username","type","text","id","form-username","autofocus","","autocomplete","username","autocapitalize","none","tabindex","1","required","",1,"form-control","custom-input",3,"placeholder","ngClass"],[1,"fas","fa-fw","fa-lock","primary-text","fa-lg"],["formControlName","password","type","password","id","form-pass","autocomplete","current-password","tabindex","2","required","",1,"form-control","custom-input",3,"placeholder","ngClass"],[1,"fas","fa-fw","fa-key","primary-text","fa-lg"],["formControlName","otp","type","text","id","form-ota","autofocus","","autocomplete","one-time-code","autocapitalize","none","inputmode","numeric","pattern","[0-9]*","tabindex","1",1,"form-control","custom-input",3,"placeholder"],[1,"fas","fa-fw","fa-exclamation-triangle","pink-text","fa-lg"],[1,"form-control","custom-input"],[1,"small","grey-text","fw-semibold"],[1,"small","grey-text",3,"innerHTML"]],template:function(o,t){o&1&&(r(0,"div",3)(1,"div",4),s(2,"img",5),r(3,"form",6),M("ngSubmit",function(){return t.onSubmit()}),r(4,"h4",7),c(5),l(6,"translate"),a(),p(7,oe,12,12),p(8,ae,6,3,"div",8),p(9,re,9,6,"div",9),p(10,se,9,6,"div",9),r(11,"div",10)(12,"button",11),c(13),l(14,"translate"),a()()()()()),o&2&&(m("ngStyle",g(14,ie,t.backgroundStyle))("ngClass",g(16,ne,!t.backgroundStyle)),n(3),m("formGroup",t.form),n(2),h(d(6,10,"setup.welcome_to_homebridge")),n(2),u(t.twoFactorCodeRequired?-1:7),n(),u(t.twoFactorCodeRequired?8:-1),n(),u(t.invalidCredentials?9:-1),n(),u(t.invalid2faCode?10:-1),n(2),m("disabled",t.form.invalid),n(),P(" ",d(14,12,"form.label_continue")," "))},dependencies:[O,A,H,$,T,N,G,Q,j,z,D,B,W,R],styles:["body{overflow:scroll!important} body.dark-mode .login-card{background-color:#2b2b2b;color:#fff}.login-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%}}.login-card[_ngcontent-%COMP%]{max-width:550px;border-radius:1rem;padding-right:25px;padding-left:25px;background-color:#ffffffe6}.login-card[_ngcontent-%COMP%] .form-control[_ngcontent-%COMP%]:focus{background-color:inherit!important}@media screen and (max-width: 575px){.login-card[_ngcontent-%COMP%]{margin-left:1em;margin-right:1em}}.homebridge-logo[_ngcontent-%COMP%]{margin-bottom:10px}.btn-primary[_ngcontent-%COMP%]{background-color:#4a266c!important;border-color:#4a266c!important}"]})}return e})();export{ye as a};
@@ -0,0 +1 @@
1
+ import{a as l,b as a,c as u,d as g,e as C,f as M}from"./chunk-GA7DSDUF.js";import{a as d}from"./chunk-MZFQR6RR.js";import{a as c}from"./chunk-EB3RUUUU.js";import"./chunk-VQSRL3AI.js";import"./chunk-CEC3XQIL.js";import"./chunk-FIDKTTX5.js";import"./chunk-L7P4OVCU.js";import"./chunk-DQBVZWYJ.js";import"./chunk-VWYIDHUF.js";import"./chunk-Y6TXYIFY.js";import"./chunk-ANCTYTNR.js";import"./chunk-YWKZ3P6I.js";import"./chunk-FMIYWTUO.js";import{q as s}from"./chunk-2EMPNH2X.js";import{A as p,z as n}from"./chunk-EJ3RNOUF.js";import{g as m}from"./chunk-ZOLUFCSO.js";import"./chunk-OMLHTTMP.js";import"./chunk-HBZONUFA.js";import"./chunk-ZPSG5SPC.js";import"./chunk-RGIMTPTA.js";import"./chunk-FDPTBVVC.js";import{c as f}from"./chunk-GOW5VSYJ.js";import{ha as t,kd as i,mb as e}from"./chunk-NR37MAXW.js";var N=[{path:"",loadComponent:()=>import("./chunk-EU2PYI42.js").then(o=>o.SettingsComponent),canActivate:[d]}],R=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[m.forChild(N),m]})}return o})();var L=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[i,n,p,f,s,R,M,u,a,c,g,l,C]})}return o})();export{L as SettingsModule};