homebridge-config-ui-x 5.4.2-beta.21 → 5.4.2-beta.22

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 (71) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/dist/core/config/config.startup.js +5 -0
  3. package/dist/core/config/config.startup.js.map +1 -1
  4. package/dist/core/spa/spa-html.service.js +3 -0
  5. package/dist/core/spa/spa-html.service.js.map +1 -1
  6. package/dist/core/spa/spa.filter.js +1 -0
  7. package/dist/core/spa/spa.filter.js.map +1 -1
  8. package/dist/main.js +1 -0
  9. package/dist/main.js.map +1 -1
  10. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +2 -1
  11. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  12. package/package.json +1 -1
  13. package/public/{chunk-MKVX26LQ.js → chunk-2UPCJ4RZ.js} +1 -1
  14. package/public/{chunk-GFPRNM6N.js → chunk-3NFSVYPS.js} +1 -1
  15. package/public/{chunk-IJXZNORX.js → chunk-3NKXAKQ2.js} +1 -1
  16. package/public/{chunk-MIOXSBCB.js → chunk-3XEBXTDX.js} +1 -1
  17. package/public/{chunk-W5UULTHE.js → chunk-45EG42JQ.js} +1 -1
  18. package/public/{chunk-G5PK6IZW.js → chunk-4MIRL2RQ.js} +1 -1
  19. package/public/{chunk-RH474C2P.js → chunk-4PRXYUSA.js} +1 -1
  20. package/public/{chunk-VSICB3TW.js → chunk-5CC3KPVH.js} +1 -1
  21. package/public/{chunk-VNH6VAIL.js → chunk-5EO4YIAS.js} +1 -1
  22. package/public/{chunk-YWY6NRRB.js → chunk-5NT3F6GU.js} +1 -1
  23. package/public/{chunk-BH4JDZF4.js → chunk-5PRMERAY.js} +1 -1
  24. package/public/{chunk-FB6OF4XR.js → chunk-5ZJL4HUY.js} +1 -1
  25. package/public/{chunk-2GPXWXUT.js → chunk-6JOIOSE7.js} +1 -1
  26. package/public/chunk-6XU6U2G7.js +1 -0
  27. package/public/{chunk-XBQ6GTWH.js → chunk-BCMB7GW2.js} +1 -1
  28. package/public/{chunk-CDS2MSIW.js → chunk-BIHEWH4L.js} +1 -1
  29. package/public/{chunk-SJP6OUG5.js → chunk-CT2RWPGF.js} +1 -1
  30. package/public/{chunk-F6VJ3EFY.js → chunk-D52W2A3R.js} +1 -1
  31. package/public/{chunk-5YEBXXYW.js → chunk-DDBGIMER.js} +1 -1
  32. package/public/{chunk-LNGNBQBM.js → chunk-DDVFPXU2.js} +1 -1
  33. package/public/{chunk-5RI5TLFW.js → chunk-EAHLR6RC.js} +1 -1
  34. package/public/{chunk-POHAQOWN.js → chunk-EDF7OXVT.js} +1 -1
  35. package/public/{chunk-KCX2WQ7I.js → chunk-GFKGLXPI.js} +1 -1
  36. package/public/{chunk-ZUW7E67I.js → chunk-GNN6Q4HM.js} +1 -1
  37. package/public/{chunk-7FVJXUCR.js → chunk-HCLIKLMG.js} +1 -1
  38. package/public/{chunk-MODJOHCZ.js → chunk-HKEQH7L3.js} +1 -1
  39. package/public/{chunk-DOOSRLOB.js → chunk-HM43QQRQ.js} +1 -1
  40. package/public/{chunk-P6VGWWMV.js → chunk-HNWNRFVA.js} +1 -1
  41. package/public/{chunk-SEYIRMYP.js → chunk-IGUIL7RB.js} +1 -1
  42. package/public/{chunk-NMHMMKMV.js → chunk-IHUI5TFD.js} +1 -1
  43. package/public/{chunk-TXNEVPOK.js → chunk-IMAT3O4H.js} +1 -1
  44. package/public/{chunk-ANRLCCQG.js → chunk-IXEXZ6PY.js} +1 -1
  45. package/public/chunk-JEJVGFYA.js +1 -0
  46. package/public/{chunk-PVFUJ4PR.js → chunk-KM6O5N22.js} +1 -1
  47. package/public/{chunk-GTGO4A2X.js → chunk-KNHRV6SC.js} +1 -1
  48. package/public/{chunk-RN2CW4V7.js → chunk-LKAUKFCZ.js} +1 -1
  49. package/public/{chunk-EKP4IO3L.js → chunk-LV4YRABN.js} +1 -1
  50. package/public/{chunk-E6AE64XW.js → chunk-MECZBYZB.js} +1 -1
  51. package/public/{chunk-NVX4KPO6.js → chunk-MGN7V42K.js} +1 -1
  52. package/public/{chunk-UFFCOH7L.js → chunk-MR6BLYSJ.js} +1 -1
  53. package/public/{chunk-QZJJX4BS.js → chunk-MWOR4EBD.js} +1 -1
  54. package/public/chunk-PLEWNNVD.js +49 -0
  55. package/public/{chunk-YGABEALD.js → chunk-QT4LZWC7.js} +1 -1
  56. package/public/{chunk-UUM2722D.js → chunk-RKKENOWM.js} +1 -1
  57. package/public/{chunk-C64P3A75.js → chunk-RQLARDW7.js} +1 -1
  58. package/public/{chunk-L432DR6J.js → chunk-SRICMFOV.js} +1 -1
  59. package/public/{chunk-YBETHBKT.js → chunk-TB55MGJG.js} +1 -1
  60. package/public/{chunk-MCMJ5GFL.js → chunk-TRDX5VII.js} +1 -1
  61. package/public/chunk-TUN7H57E.js +1 -0
  62. package/public/chunk-URLS7QKY.js +1 -0
  63. package/public/{chunk-XHOBTVZN.js → chunk-VCR7QM3J.js} +1 -1
  64. package/public/{chunk-24MFIAJC.js → chunk-XSXLXWQW.js} +1 -1
  65. package/public/{chunk-UO7UMJN3.js → chunk-ZHBLCCB6.js} +1 -1
  66. package/public/index.html +1 -1
  67. package/public/{main-CVBTY5OH.js → main-RE67AOVC.js} +1 -1
  68. package/public/chunk-BHMKIJVI.js +0 -1
  69. package/public/chunk-OLGI5A27.js +0 -1
  70. package/public/chunk-PCCN3UQI.js +0 -49
  71. package/public/chunk-XSTH4HOH.js +0 -1
package/CHANGELOG.md CHANGED
@@ -28,6 +28,7 @@ All notable changes to `homebridge-config-ui-x` will be documented in this file.
28
28
  - fix link to swagger docs in development mode
29
29
  - fix host and reverse proxy host settings not showing current value
30
30
  - added initial implementation for using a webroot
31
+ - prevent url-based settings from being changed from a pwa
31
32
 
32
33
  ### Other Changes
33
34
 
@@ -57,6 +57,7 @@ async function getStartupConfig() {
57
57
  config.debug = false;
58
58
  node_process_1.default.env.UIX_DEBUG_LOGGING = '0';
59
59
  }
60
+ logger.warn(`raw webroot from config.json: '${ui.webroot}'`);
60
61
  if (ui.webroot && node_process_1.default.env.UIX_DEVELOPMENT !== '1') {
61
62
  let webroot = ui.webroot.toString().trim();
62
63
  if (!webroot.startsWith('/')) {
@@ -65,8 +66,12 @@ async function getStartupConfig() {
65
66
  if (webroot.endsWith('/') && webroot.length > 1) {
66
67
  webroot = webroot.slice(0, -1);
67
68
  }
69
+ logger.warn(`normalised webroot value: '${webroot}'`);
68
70
  config.webroot = webroot;
69
71
  }
72
+ logger.warn(`final index.html file output: ${(0, node_path_1.resolve)(node_process_1.default.env.UIX_BASE_PATH, 'public/index.html')}`);
73
+ const fileContent = await (0, fs_extra_1.readFile)((0, node_path_1.resolve)(node_process_1.default.env.UIX_BASE_PATH, 'public/index.html'), 'utf-8');
74
+ fileContent.split(/\r?\n/).forEach(line => logger.warn(line));
70
75
  return config;
71
76
  }
72
77
  //# sourceMappingURL=config.startup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.startup.js","sourceRoot":"","sources":["../../../src/core/config/config.startup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.startup.js","sourceRoot":"","sources":["../../../src/core/config/config.startup.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,9 @@ const fs_extra_1 = require("fs-extra");
10
10
  class SpaHtmlService {
11
11
  static async updateIndexHtml(webroot) {
12
12
  const indexPath = (0, node_path_1.resolve)(node_process_1.default.env.UIX_BASE_PATH, 'public/index.html');
13
+ if (!(await (0, fs_extra_1.exists)(indexPath))) {
14
+ return;
15
+ }
13
16
  const originalHtml = await (0, fs_extra_1.readFile)(indexPath, 'utf-8');
14
17
  const normalizedWebroot = this.normalizeWebroot(webroot);
15
18
  const modifiedHtml = this.transformHtmlForWebroot(originalHtml, normalizedWebroot);
@@ -1 +1 @@
1
- {"version":3,"file":"spa-html.service.js","sourceRoot":"","sources":["../../../src/core/spa/spa-html.service.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAmC;AACnC,gEAAkC;AAElC,uCAA8C;AAE9C,MAAa,cAAc;IAKzB,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,OAAe;QAC1C,MAAM,SAAS,GAAG,IAAA,mBAAO,EAAC,sBAAO,CAAC,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAA;QACzE,MAAM,YAAY,GAAG,MAAM,IAAA,mBAAQ,EAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QAEvD,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;QACxD,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAA;QAElF,MAAM,IAAA,oBAAS,EAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC1C,CAAC;IAOO,MAAM,CAAC,gBAAgB,CAAC,OAAe;QAC7C,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;YAChC,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IAC1C,CAAC;IAQO,MAAM,CAAC,uBAAuB,CAAC,IAAY,EAAE,OAAe;QAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QAE/C,OAAO,IAAI;aACR,OAAO,CAAC,8BAA8B,EAAE,eAAe,QAAQ,OAAO,CAAC;aACvE,OAAO,CAAC,0BAA0B,EAAE,eAAe,CAAC;aACpD,OAAO,CAAC,+BAA+B,EAAE,oBAAoB,CAAC;aAC9D,OAAO,CAAC,kDAAkD,EAAE,WAAW,CAAC;aACxE,OAAO,CAAC,mBAAmB,EAAE,eAAe,CAAC;aAC7C,OAAO,CAAC,wBAAwB,EAAE,oBAAoB,CAAC;aACvD,OAAO,CAAC,2CAA2C,EAAE,WAAW,CAAC;aACjE,OAAO,CAAC,yBAAyB,EAAE,cAAc,CAAC;aAClD,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;IAChD,CAAC;CACF;AAhDD,wCAgDC"}
1
+ {"version":3,"file":"spa-html.service.js","sourceRoot":"","sources":["../../../src/core/spa/spa-html.service.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAmC;AACnC,gEAAkC;AAElC,uCAAsD;AAEtD,MAAa,cAAc;IAKzB,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,OAAe;QAC1C,MAAM,SAAS,GAAG,IAAA,mBAAO,EAAC,sBAAO,CAAC,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAA;QACzE,IAAI,CAAC,CAAC,MAAM,IAAA,iBAAM,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC/B,OAAM;QACR,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,IAAA,mBAAQ,EAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACvD,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAA;QACxD,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAA;QAClF,MAAM,IAAA,oBAAS,EAAC,SAAS,EAAE,YAAY,CAAC,CAAA;IAC1C,CAAC;IAOO,MAAM,CAAC,gBAAgB,CAAC,OAAe;QAC7C,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;YAChC,OAAO,EAAE,CAAA;QACX,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IAC1C,CAAC;IAQO,MAAM,CAAC,uBAAuB,CAAC,IAAY,EAAE,OAAe;QAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;QAE/C,OAAO,IAAI;aACR,OAAO,CAAC,8BAA8B,EAAE,eAAe,QAAQ,OAAO,CAAC;aACvE,OAAO,CAAC,0BAA0B,EAAE,eAAe,CAAC;aACpD,OAAO,CAAC,+BAA+B,EAAE,oBAAoB,CAAC;aAC9D,OAAO,CAAC,kDAAkD,EAAE,WAAW,CAAC;aACxE,OAAO,CAAC,mBAAmB,EAAE,eAAe,CAAC;aAC7C,OAAO,CAAC,wBAAwB,EAAE,oBAAoB,CAAC;aACvD,OAAO,CAAC,2CAA2C,EAAE,WAAW,CAAC;aACjE,OAAO,CAAC,yBAAyB,EAAE,cAAc,CAAC;aAClD,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;IAChD,CAAC;CACF;AAjDD,wCAiDC"}
@@ -41,6 +41,7 @@ let SpaFilter = class SpaFilter {
41
41
  res.header('Cache-Control', 'no-cache, no-store, must-revalidate');
42
42
  res.header('Pragma', 'no-cache');
43
43
  res.header('Expires', '0');
44
+ res.header('Origin-Agent-Cluster', '?1');
44
45
  res.send(file);
45
46
  }
46
47
  };
@@ -1 +1 @@
1
- {"version":3,"file":"spa.filter.js","sourceRoot":"","sources":["../../../src/core/spa/spa.filter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,yCAAmC;AACnC,gEAAkC;AAElC,2CAAyD;AACzD,uCAAuC;AAGhC,IAAM,SAAS,GAAf,MAAM,SAAS;IAGpB;QACE,IAAI,CAAC,OAAO,GAAG,sBAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAA;IAC9C,CAAC;IAED,KAAK,CAAC,UAAyB,EAAE,IAAmB;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAA;QAG7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA;QAEtG,IAAI,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC;eACpC,iBAAiB,CAAC,UAAU,CAAC,YAAY,CAAC;eAC1C,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC;eACvC,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC;eACxC,iBAAiB,CAAC,KAAK,CAAC,qEAAqE,CAAC,EAAE,CAAC;YACpG,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACxC,CAAC;QAGD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,IAAI,GAAG,IAAA,uBAAY,EAAC,IAAA,mBAAO,EAAC,sBAAO,CAAC,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,CAAA;QAC3F,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACrB,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,qCAAqC,CAAC,CAAA;QAClE,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAChC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;QAC1B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChB,CAAC;CACF,CAAA;AAnCY,8BAAS;oBAAT,SAAS;IADrB,IAAA,cAAK,EAAC,0BAAiB,CAAC;;GACZ,SAAS,CAmCrB"}
1
+ {"version":3,"file":"spa.filter.js","sourceRoot":"","sources":["../../../src/core/spa/spa.filter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,yCAAmC;AACnC,gEAAkC;AAElC,2CAAyD;AACzD,uCAAuC;AAGhC,IAAM,SAAS,GAAf,MAAM,SAAS;IAGpB;QACE,IAAI,CAAC,OAAO,GAAG,sBAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAA;IAC9C,CAAC;IAED,KAAK,CAAC,UAAyB,EAAE,IAAmB;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;QAC/B,MAAM,GAAG,GAAG,GAAG,CAAC,UAAU,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAA;QAG7B,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA;QAEtG,IAAI,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC;eACpC,iBAAiB,CAAC,UAAU,CAAC,YAAY,CAAC;eAC1C,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC;eACvC,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC;eACxC,iBAAiB,CAAC,KAAK,CAAC,qEAAqE,CAAC,EAAE,CAAC;YACpG,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACxC,CAAC;QAGD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACtD,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,IAAI,GAAG,IAAA,uBAAY,EAAC,IAAA,mBAAO,EAAC,sBAAO,CAAC,GAAG,CAAC,aAAa,EAAE,mBAAmB,CAAC,EAAE,OAAO,CAAC,CAAA;QAC3F,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACrB,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,qCAAqC,CAAC,CAAA;QAClE,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;QAChC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;QAC1B,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAA;QACxC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAChB,CAAC;CACF,CAAA;AApCY,8BAAS;oBAAT,SAAS;IADrB,IAAA,cAAK,EAAC,0BAAiB,CAAC;;GACZ,SAAS,CAoCrB"}
package/dist/main.js CHANGED
@@ -80,6 +80,7 @@ async function bootstrap() {
80
80
  res.header('Cache-Control', 'no-cache, no-store, must-revalidate');
81
81
  res.header('Pragma', 'no-cache');
82
82
  res.header('Expires', '0');
83
+ res.header('Origin-Agent-Cluster', '?1');
83
84
  res.send(await (0, fs_extra_1.readFile)((0, node_path_1.resolve)(node_process_1.default.env.UIX_BASE_PATH, 'public/index.html')));
84
85
  });
85
86
  app.useStaticAssets({
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,7 @@ let PluginsSettingsUiService = class PluginsSettingsUiService {
54
54
  if (assetPath === 'index.html') {
55
55
  return reply
56
56
  .type('text/html')
57
+ .header('Origin-Agent-Cluster', '?1')
57
58
  .send(await this.buildIndexHtml(pluginUi, origin));
58
59
  }
59
60
  if (pluginUi.devServer) {
@@ -123,7 +124,7 @@ let PluginsSettingsUiService = class PluginsSettingsUiService {
123
124
  serverEnv: ${JSON.stringify(this.configService.uiSettings(true))},
124
125
  };
125
126
  </script>
126
- <script src="${origin || 'http://localhost:4200'}${this.configService.ui.webroot || ''}/assets/plugin-ui-utils/ui.js?v=${this.configService.package.version}"></script>
127
+ <script src="${origin || 'http://localhost:4200'}${origin ? (this.configService.ui.webroot || '') : ''}/assets/plugin-ui-utils/ui.js?v=${this.configService.package.version}"></script>
127
128
  <script>
128
129
  window.addEventListener('load', () => {
129
130
  window.parent.postMessage({action: 'loaded'}, '*');
@@ -1 +1 @@
1
- {"version":3,"file":"plugins-settings-ui.service.js","sourceRoot":"","sources":["../../../../src/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins-settings-ui.service.js","sourceRoot":"","sources":["../../../../src/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "homebridge-config-ui-x",
3
3
  "displayName": "Homebridge UI",
4
- "version": "5.4.2-beta.21",
4
+ "version": "5.4.2-beta.22",
5
5
  "description": "A web based management, configuration and control platform for Homebridge.",
6
6
  "author": "oznu <dev@oz.nu>",
7
7
  "license": "MIT",
@@ -1,4 +1,4 @@
1
- import{a as z,b,c as k}from"./chunk-MVMZJM7B.js";import{a as u}from"./chunk-UO7UMJN3.js";import{q as f}from"./chunk-FB6OF4XR.js";import{M as t,ea as p,g as n,h as c,ja as a,n as h}from"./chunk-3LEW5FOJ.js";var d=n(z(),1),l=n(b(),1),m=n(k(),1);var v=(()=>{class o{$ws=a(u);$api=a(f);io;fitAddon;webLinksAddon;resize;elementResize;dataDisposable=null;isInitializing=!1;hasUserTyped=!1;term;destroyTerminal(){this.dataDisposable&&(this.dataDisposable.dispose(),this.dataDisposable=null),this.io&&this.io.end(),this.term&&(this.term.dispose(),this.term=null),this.resize&&this.resize.complete(),this.elementResize&&this.elementResize.complete(),this.isInitializing=!1,this.hasUserTyped=!1}destroyPersistentSession(){this.destroyTerminal(),this.$api.post("/platform-tools/terminal/destroy-persistent-session",{}).subscribe({error:s=>console.error("Failed to destroy persistent session:",s)})}detachTerminal(){this.dataDisposable&&(this.dataDisposable.dispose(),this.dataDisposable=null),this.term&&this.term.dispose(),this.resize&&this.resize.complete(),this.elementResize&&this.elementResize.complete(),this.isInitializing=!1}hasActiveSession(){return this.io&&this.io.socket&&this.io.socket.connected}checkBackendPersistentSession(){return c(this,null,function*(){try{return(yield this.$api.get("/platform-tools/terminal/has-persistent-session").toPromise()).hasPersistentSession}catch(s){return console.error("Failed to check backend persistent session:",s),!1}})}hasUserTypedInSession(){return this.hasUserTyped}isTerminalReady(){return this.term&&!this.isInitializing}reconnectTerminal(s,e={},r){if(this.isInitializing)return!1;this.isInitializing=!0,this.elementResize=r,this.io&&this.io.socket&&this.io.socket.connected?(this.term=new m.Terminal(e),this.fitAddon=new d.FitAddon,this.webLinksAddon=new l.WebLinksAddon,setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.resize=new h,this.term.open(s.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.socket.removeAllListeners("stdout"),this.io.socket.removeAllListeners("process-exit"),this.io.socket.on("stdout",i=>{this.term.write(i)}),this.io.socket.on("process-exit",()=>{this.startSession()}),this.dataDisposable&&this.dataDisposable.dispose(),this.dataDisposable=this.term.onData(i=>{this.hasUserTyped=!0,this.io.socket.emit("stdin",i)}),this.term.onResize(i=>{this.resize.next(i)}),this.resize.pipe(t(500)).subscribe(i=>{this.io.socket.emit("resize",i)}),this.elementResize&&this.elementResize.pipe(t(100)).subscribe({next:()=>{this.fitAddon.fit()}}),this.io.socket.emit("start-session",{cols:this.term.cols,rows:this.term.rows}),this.isInitializing=!1):this.startTerminal(s,e,r)}startTerminal(s,e={},r){return this.isInitializing?!1:(this.isInitializing=!0,this.elementResize=r,this.io=this.$ws.connectToNamespace("platform-tools/terminal"),this.term=new m.Terminal(e),setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.fitAddon=new d.FitAddon,this.webLinksAddon=new l.WebLinksAddon,this.resize=new h,this.term.open(s.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.connected.pipe(t(200)).subscribe(()=>{this.startSession()}),this.io.socket.on("disconnect",()=>{this.term.write(`
1
+ import{a as z,b,c as k}from"./chunk-MVMZJM7B.js";import{a as u}from"./chunk-ZHBLCCB6.js";import{q as f}from"./chunk-5ZJL4HUY.js";import{M as t,ea as p,g as n,h as c,ja as a,n as h}from"./chunk-3LEW5FOJ.js";var d=n(z(),1),l=n(b(),1),m=n(k(),1);var v=(()=>{class o{$ws=a(u);$api=a(f);io;fitAddon;webLinksAddon;resize;elementResize;dataDisposable=null;isInitializing=!1;hasUserTyped=!1;term;destroyTerminal(){this.dataDisposable&&(this.dataDisposable.dispose(),this.dataDisposable=null),this.io&&this.io.end(),this.term&&(this.term.dispose(),this.term=null),this.resize&&this.resize.complete(),this.elementResize&&this.elementResize.complete(),this.isInitializing=!1,this.hasUserTyped=!1}destroyPersistentSession(){this.destroyTerminal(),this.$api.post("/platform-tools/terminal/destroy-persistent-session",{}).subscribe({error:s=>console.error("Failed to destroy persistent session:",s)})}detachTerminal(){this.dataDisposable&&(this.dataDisposable.dispose(),this.dataDisposable=null),this.term&&this.term.dispose(),this.resize&&this.resize.complete(),this.elementResize&&this.elementResize.complete(),this.isInitializing=!1}hasActiveSession(){return this.io&&this.io.socket&&this.io.socket.connected}checkBackendPersistentSession(){return c(this,null,function*(){try{return(yield this.$api.get("/platform-tools/terminal/has-persistent-session").toPromise()).hasPersistentSession}catch(s){return console.error("Failed to check backend persistent session:",s),!1}})}hasUserTypedInSession(){return this.hasUserTyped}isTerminalReady(){return this.term&&!this.isInitializing}reconnectTerminal(s,e={},r){if(this.isInitializing)return!1;this.isInitializing=!0,this.elementResize=r,this.io&&this.io.socket&&this.io.socket.connected?(this.term=new m.Terminal(e),this.fitAddon=new d.FitAddon,this.webLinksAddon=new l.WebLinksAddon,setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.resize=new h,this.term.open(s.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.socket.removeAllListeners("stdout"),this.io.socket.removeAllListeners("process-exit"),this.io.socket.on("stdout",i=>{this.term.write(i)}),this.io.socket.on("process-exit",()=>{this.startSession()}),this.dataDisposable&&this.dataDisposable.dispose(),this.dataDisposable=this.term.onData(i=>{this.hasUserTyped=!0,this.io.socket.emit("stdin",i)}),this.term.onResize(i=>{this.resize.next(i)}),this.resize.pipe(t(500)).subscribe(i=>{this.io.socket.emit("resize",i)}),this.elementResize&&this.elementResize.pipe(t(100)).subscribe({next:()=>{this.fitAddon.fit()}}),this.io.socket.emit("start-session",{cols:this.term.cols,rows:this.term.rows}),this.isInitializing=!1):this.startTerminal(s,e,r)}startTerminal(s,e={},r){return this.isInitializing?!1:(this.isInitializing=!0,this.elementResize=r,this.io=this.$ws.connectToNamespace("platform-tools/terminal"),this.term=new m.Terminal(e),setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.fitAddon=new d.FitAddon,this.webLinksAddon=new l.WebLinksAddon,this.resize=new h,this.term.open(s.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.connected.pipe(t(200)).subscribe(()=>{this.startSession()}),this.io.socket.on("disconnect",()=>{this.term.write(`
2
2
  \r
3
3
  \rTerminal disconnected. Is the server running?
4
4
  \r
@@ -1 +1 @@
1
- import{a as s}from"./chunk-SJP6OUG5.js";import"./chunk-GTGO4A2X.js";import"./chunk-YGABEALD.js";import"./chunk-CIVLN3HQ.js";import"./chunk-BQMDK4YS.js";import"./chunk-AM53KSWA.js";import"./chunk-UO7UMJN3.js";import"./chunk-BH4JDZF4.js";import{g as i}from"./chunk-MDV2S56W.js";import"./chunk-5RI5TLFW.js";import"./chunk-FB6OF4XR.js";import{Xa as t,fa as e}from"./chunk-3LEW5FOJ.js";var u=[{path:"",loadComponent:()=>import("./chunk-24MFIAJC.js").then(o=>o.AccessoriesComponent)}],c=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=t({type:o});static \u0275inj=e({imports:[i.forChild(u),i]})}return o})();var l=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=t({type:o});static \u0275inj=e({imports:[s,c]})}return o})();export{l as AccessoriesModule};
1
+ import{a as s}from"./chunk-CT2RWPGF.js";import"./chunk-KNHRV6SC.js";import"./chunk-QT4LZWC7.js";import"./chunk-CIVLN3HQ.js";import"./chunk-BQMDK4YS.js";import"./chunk-AM53KSWA.js";import"./chunk-ZHBLCCB6.js";import"./chunk-5PRMERAY.js";import{g as i}from"./chunk-MDV2S56W.js";import"./chunk-EAHLR6RC.js";import"./chunk-5ZJL4HUY.js";import{Xa as t,fa as e}from"./chunk-3LEW5FOJ.js";var u=[{path:"",loadComponent:()=>import("./chunk-XSXLXWQW.js").then(o=>o.AccessoriesComponent)}],c=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=t({type:o});static \u0275inj=e({imports:[i.forChild(u),i]})}return o})();var l=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=t({type:o});static \u0275inj=e({imports:[s,c]})}return o})();export{l as AccessoriesModule};
@@ -1 +1 @@
1
- import{g as i}from"./chunk-MDV2S56W.js";import{Xa as e,fa as t}from"./chunk-3LEW5FOJ.js";var d=[{path:"",redirectTo:"/",pathMatch:"full"},{path:"docker",loadChildren:()=>import("./chunk-P6VGWWMV.js").then(o=>o.DockerModule)},{path:"linux",loadChildren:()=>import("./chunk-MODJOHCZ.js").then(o=>o.LinuxModule)},{path:"terminal",loadChildren:()=>import("./chunk-YWY6NRRB.js").then(o=>o.TerminalModule)}],l=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[i.forChild(d),i]})}return o})();var p=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[l]})}return o})();export{p as PlatformToolsModule};
1
+ import{g as i}from"./chunk-MDV2S56W.js";import{Xa as e,fa as t}from"./chunk-3LEW5FOJ.js";var d=[{path:"",redirectTo:"/",pathMatch:"full"},{path:"docker",loadChildren:()=>import("./chunk-HNWNRFVA.js").then(o=>o.DockerModule)},{path:"linux",loadChildren:()=>import("./chunk-HKEQH7L3.js").then(o=>o.LinuxModule)},{path:"terminal",loadChildren:()=>import("./chunk-5NT3F6GU.js").then(o=>o.TerminalModule)}],l=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[i.forChild(d),i]})}return o})();var p=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[l]})}return o})();export{p as PlatformToolsModule};
@@ -1 +1 @@
1
- import{a as E}from"./chunk-C64P3A75.js";import{a as S}from"./chunk-MKVX26LQ.js";import"./chunk-MVMZJM7B.js";import"./chunk-7FVJXUCR.js";import"./chunk-BQMDK4YS.js";import"./chunk-AM53KSWA.js";import"./chunk-UO7UMJN3.js";import"./chunk-BH4JDZF4.js";import{b as C}from"./chunk-5RI5TLFW.js";import{l as w}from"./chunk-FB6OF4XR.js";import{Gb as v,Ka as a,La as c,Pb as f,Qb as p,Vb as g,Wa as u,Wb as T,ja as o,mc as y,n as d,nc as b,vb as m,wb as l,xb as h,xc as $}from"./chunk-3LEW5FOJ.js";var _=["terminaloutput"],A=(()=>{class r{$terminal=o(S);$settings=o(C);$navigationGuard=o(E);resizeEvent=new d;termTarget=$("terminaloutput");onWindowResize(){this.resizeEvent.next(void 0)}onBeforeUnload(t){return this.$navigationGuard.handleBeforeUnload(t)}onWindowFocus(){this.activateTerminal()}onClick(){this.activateTerminal()}activateTerminal(){this.$terminal.isTerminalReady()&&this.$terminal.term&&this.$terminal.term.focus()}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$terminal.isTerminalReady()&&this.$terminal.destroyTerminal(),this.$settings.env.terminal?.persistence&&this.$terminal.hasActiveSession()?this.$terminal.reconnectTerminal(this.termTarget(),{},this.resizeEvent):(!this.$settings.env.terminal?.persistence&&this.$terminal.hasActiveSession()&&this.$terminal.destroyPersistentSession(),this.$terminal.startTerminal(this.termTarget(),{},this.resizeEvent)),setTimeout(()=>{this.activateTerminal()},100)}ngAfterViewInit(){document.addEventListener("visibilitychange",this.onVisibilityChange.bind(this))}onVisibilityChange(){!document.hidden&&this.$terminal.isTerminalReady()&&setTimeout(()=>{this.activateTerminal()},100)}canDeactivate(){return this.$navigationGuard.canDeactivate()}ngOnDestroy(){document.removeEventListener("visibilitychange",this.onVisibilityChange.bind(this)),window.document.querySelector("body").classList.remove("bg-black"),this.$settings.env.terminal?.persistence?this.$terminal.detachTerminal():this.$terminal.destroyPersistentSession()}static \u0275fac=function(e){return new(e||r)};static \u0275cmp=u({type:r,selectors:[["ng-component"]],viewQuery:function(e,i){e&1&&f(i.termTarget,_,5),e&2&&p()},hostBindings:function(e,i){e&1&&v("resize",function(n){return i.onWindowResize(n)},a)("beforeunload",function(n){return i.onBeforeUnload(n)},a)("focus",function(n){return i.onWindowFocus(n)},a)("click",function(n){return i.onClick(n)})},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,i){e&1&&(m(0,"div",1)(1,"div",2)(2,"h3",3),g(3),y(4,"translate"),l()()(),m(5,"div",4),h(6,"div",5,0),l()),e&2&&(c(3),T(b(4,1,"menu.linux.label_terminal")))},dependencies:[w],encapsulation:2})}return r})();export{A as TerminalComponent};
1
+ import{a as E}from"./chunk-RQLARDW7.js";import{a as S}from"./chunk-2UPCJ4RZ.js";import"./chunk-MVMZJM7B.js";import"./chunk-HCLIKLMG.js";import"./chunk-BQMDK4YS.js";import"./chunk-AM53KSWA.js";import"./chunk-ZHBLCCB6.js";import"./chunk-5PRMERAY.js";import{b as C}from"./chunk-EAHLR6RC.js";import{l as w}from"./chunk-5ZJL4HUY.js";import{Gb as v,Ka as a,La as c,Pb as f,Qb as p,Vb as g,Wa as u,Wb as T,ja as o,mc as y,n as d,nc as b,vb as m,wb as l,xb as h,xc as $}from"./chunk-3LEW5FOJ.js";var _=["terminaloutput"],A=(()=>{class r{$terminal=o(S);$settings=o(C);$navigationGuard=o(E);resizeEvent=new d;termTarget=$("terminaloutput");onWindowResize(){this.resizeEvent.next(void 0)}onBeforeUnload(t){return this.$navigationGuard.handleBeforeUnload(t)}onWindowFocus(){this.activateTerminal()}onClick(){this.activateTerminal()}activateTerminal(){this.$terminal.isTerminalReady()&&this.$terminal.term&&this.$terminal.term.focus()}ngOnInit(){window.document.querySelector("body").classList.add("bg-black"),this.$terminal.isTerminalReady()&&this.$terminal.destroyTerminal(),this.$settings.env.terminal?.persistence&&this.$terminal.hasActiveSession()?this.$terminal.reconnectTerminal(this.termTarget(),{},this.resizeEvent):(!this.$settings.env.terminal?.persistence&&this.$terminal.hasActiveSession()&&this.$terminal.destroyPersistentSession(),this.$terminal.startTerminal(this.termTarget(),{},this.resizeEvent)),setTimeout(()=>{this.activateTerminal()},100)}ngAfterViewInit(){document.addEventListener("visibilitychange",this.onVisibilityChange.bind(this))}onVisibilityChange(){!document.hidden&&this.$terminal.isTerminalReady()&&setTimeout(()=>{this.activateTerminal()},100)}canDeactivate(){return this.$navigationGuard.canDeactivate()}ngOnDestroy(){document.removeEventListener("visibilitychange",this.onVisibilityChange.bind(this)),window.document.querySelector("body").classList.remove("bg-black"),this.$settings.env.terminal?.persistence?this.$terminal.detachTerminal():this.$terminal.destroyPersistentSession()}static \u0275fac=function(e){return new(e||r)};static \u0275cmp=u({type:r,selectors:[["ng-component"]],viewQuery:function(e,i){e&1&&f(i.termTarget,_,5),e&2&&p()},hostBindings:function(e,i){e&1&&v("resize",function(n){return i.onWindowResize(n)},a)("beforeunload",function(n){return i.onBeforeUnload(n)},a)("focus",function(n){return i.onWindowFocus(n)},a)("click",function(n){return i.onClick(n)})},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,i){e&1&&(m(0,"div",1)(1,"div",2)(2,"h3",3),g(3),y(4,"translate"),l()()(),m(5,"div",4),h(6,"div",5,0),l()),e&2&&(c(3),T(b(4,1,"menu.linux.label_terminal")))},dependencies:[w],encapsulation:2})}return r})();export{A as TerminalComponent};
@@ -1 +1 @@
1
- import{a as w}from"./chunk-UO7UMJN3.js";import"./chunk-BH4JDZF4.js";import{b as $,d as y}from"./chunk-MDV2S56W.js";import{b as T}from"./chunk-5RI5TLFW.js";import{k as g,l as _,n as E,q as S}from"./chunk-FB6OF4XR.js";import{Ib as v,La as r,Vb as a,Wa as x,Wb as s,ja as n,lb as c,mb as d,mc as m,nc as l,vb as o,wb as i,xb as u}from"./chunk-3LEW5FOJ.js";function C(t,f){if(t&1&&(o(0,"div",7),a(1),i()),t&2){let e=v();r(),s(e.error)}}function k(t,f){t&1&&(o(0,"p",9),a(1),m(2,"translate"),i(),o(3,"div",10)(4,"div",11),u(5,"i",12),i()()),t&2&&(r(),s(l(2,1,"restart.please_wait_while_server_restarts")))}function b(t,f){t&1&&(o(0,"div",8),a(1),m(2,"translate"),i()),t&2&&(r(),s(l(2,1,"platform.linux.long_time")))}var z=(()=>{class t{$api=n(S);$route=n($);$router=n(y);$settings=n(T);$toastr=n(E);$translate=n(g);$ws=n(w);checkTimeout;checkDelay;io;resp={};timeout=!1;error=!1;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"))}})}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}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(["/"],{relativeTo:this.$route}))})},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)}static \u0275fac=function(p){return new(p||t)};static \u0275cmp=x({type:t,selectors:[["ng-component"]],decls:14,vars:8,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,"alert","alert-error","my-4"],[1,"alert","alert-warning","my-4"],[1,"grey-text"],[1,"justify-content-center","my-4"],[1,"restart-progress-box","primary-text"],[1,"fas","fa-fw","fa-spinner","fa-spin"]],template:function(p,h){p&1&&(o(0,"div",0)(1,"h3",1),a(2),m(3,"translate"),i()(),o(4,"div",2)(5,"div",3),u(6,"i",4),i(),o(7,"div",5)(8,"h4",6),a(9),m(10,"translate"),i(),c(11,C,2,1,"div",7)(12,k,6,3),c(13,b,3,3,"div",8),i()()),p&2&&(r(2),s(l(3,4,"menu.restart.title")),r(7),s(l(10,6,"platform.linux.restarting_server")),r(2),d(h.error?11:12),r(2),d(h.timeout?13:-1))},dependencies:[_],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{z as RestartLinuxComponent};
1
+ import{a as w}from"./chunk-ZHBLCCB6.js";import"./chunk-5PRMERAY.js";import{b as $,d as y}from"./chunk-MDV2S56W.js";import{b as T}from"./chunk-EAHLR6RC.js";import{k as g,l as _,n as E,q as S}from"./chunk-5ZJL4HUY.js";import{Ib as v,La as r,Vb as a,Wa as x,Wb as s,ja as n,lb as c,mb as d,mc as m,nc as l,vb as o,wb as i,xb as u}from"./chunk-3LEW5FOJ.js";function C(t,f){if(t&1&&(o(0,"div",7),a(1),i()),t&2){let e=v();r(),s(e.error)}}function k(t,f){t&1&&(o(0,"p",9),a(1),m(2,"translate"),i(),o(3,"div",10)(4,"div",11),u(5,"i",12),i()()),t&2&&(r(),s(l(2,1,"restart.please_wait_while_server_restarts")))}function b(t,f){t&1&&(o(0,"div",8),a(1),m(2,"translate"),i()),t&2&&(r(),s(l(2,1,"platform.linux.long_time")))}var z=(()=>{class t{$api=n(S);$route=n($);$router=n(y);$settings=n(T);$toastr=n(E);$translate=n(g);$ws=n(w);checkTimeout;checkDelay;io;resp={};timeout=!1;error=!1;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"))}})}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}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(["/"],{relativeTo:this.$route}))})},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)}static \u0275fac=function(p){return new(p||t)};static \u0275cmp=x({type:t,selectors:[["ng-component"]],decls:14,vars:8,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,"alert","alert-error","my-4"],[1,"alert","alert-warning","my-4"],[1,"grey-text"],[1,"justify-content-center","my-4"],[1,"restart-progress-box","primary-text"],[1,"fas","fa-fw","fa-spinner","fa-spin"]],template:function(p,h){p&1&&(o(0,"div",0)(1,"h3",1),a(2),m(3,"translate"),i()(),o(4,"div",2)(5,"div",3),u(6,"i",4),i(),o(7,"div",5)(8,"h4",6),a(9),m(10,"translate"),i(),c(11,C,2,1,"div",7)(12,k,6,3),c(13,b,3,3,"div",8),i()()),p&2&&(r(2),s(l(3,4,"menu.restart.title")),r(7),s(l(10,6,"platform.linux.restarting_server")),r(2),d(h.error?11:12),r(2),d(h.timeout?13:-1))},dependencies:[_],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{z as RestartLinuxComponent};
@@ -1,2 +1,2 @@
1
- import{B as Y,C as Z,c as G,d as k,e as j,f as D,g as K,j as $,m as A,q as J,r as Q,y as X}from"./chunk-AM53KSWA.js";import{a as ae}from"./chunk-UO7UMJN3.js";import{b as oe}from"./chunk-BH4JDZF4.js";import{b as re}from"./chunk-5RI5TLFW.js";import{k as ee,l as te,n as ie,p as U,q as ne}from"./chunk-FB6OF4XR.js";import{Db as I,Ga as W,Gb as x,Ib as _,Jc as H,La as n,Mc as N,Sb as O,Vb as l,Wa as V,Wb as f,Wc as R,Xb as g,fc as L,gc as B,gd as q,h as S,hc as E,ja as w,kb as M,lb as z,mb as T,mc as a,nc as s,oa as C,pa as b,rb as m,sb as o,tb as r,ub as u,w as h}from"./chunk-3LEW5FOJ.js";var pe=t=>({background:t}),de=t=>({anim:t}),ce=t=>({"progress-bar-animated":t}),me=()=>["restoring","restarting","restore-complete"],P=(t,d)=>({"is-valid":t,"is-invalid":d});function ue(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),u(4,"div",7),a(5,"translate"),o(6,"button",8),x("click",function(){C(e);let i=_();return b(i.onClickGettingStarted())}),l(7),a(8,"translate"),r(),o(9,"a",9),x("click",function(){C(e);let i=_();return b(i.onClickRestoreBackup())}),l(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"),W),n(3),g(" ",s(8,8,"setup.button_get_started")," "),n(3),f(s(11,10,"setup_wizard_restore")))}function ge(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"div",11)(8,"form",12),x("ngSubmit",function(){C(e);let i=_();return b(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(){C(e);let i=_();return b(i.onClickCancelRestore())}),l(26),a(27,"translate"),r(),o(28,"button",22),l(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",E(30,P,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",E(33,P,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",E(36,P,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.button_continue")," ")}}function _e(t,d){t&1&&(u(0,"i",25),l(1),a(2,"translate")),t&2&&(n(),g(" ",s(2,1,"backup.label_uploading")," "))}function fe(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"form.button_continue")," ")}function he(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"input",23),x("change",function(i){C(e);let F=_();return b(F.handleRestoreFileInput(i.target.files))}),r(),o(8,"div",20)(9,"button",21),x("click",function(){C(e);let i=_();return b(i.onClickCancelRestore())}),l(10),a(11,"translate"),r(),o(12,"button",24),x("click",function(){C(e);let i=_();return b(i.onRestoreBackupClick())}),z(13,_e,3,3)(14,fe,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(),T(e.restoreUploading?13:14)}}function we(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_restoring")," ")}function Ce(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_starting")," ")}function be(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_complete")," ")}function xe(t,d){t&1&&(o(0,"a",27),l(1),a(2,"translate"),r()),t&2&&(n(),g(" ",s(2,1,"form.button_continue")," "))}function ve(t,d){if(t&1&&(o(0,"div",5)(1,"h4",6),z(2,we,2,3)(3,Ce,2,3)(4,be,2,3),r(),u(5,"div",26),z(6,xe,3,3,"a",27),r()),t&2){let e=_();n(2),T(e.step==="restoring"?2:e.step==="restarting"?3:e.step==="restore-complete"?4:-1),n(4),T(e.step==="restore-complete"?6:-1)}}function ye(t,d){t&1&&(o(0,"div",5)(1,"h4",28),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"a",29),l(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.button_continue")," "))}var He=(()=>{class t{$api=w(ne);$auth=w(oe);$settings=w(re);$title=w(q);$toastr=w(ie);$translate=w(ee);$ws=w(ae);io;step="welcome";backgroundStyle;progress=1;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;loading=!1;selectedFile;restoreUploading=!1;createUserForm=new K({username:new $("",[k.required]),password:new $("",[k.compose([k.required,k.minLength(4)])]),passwordConfirm:new $("",[k.required])},this.matchPassword);ngOnInit(){return S(this,null,function*(){this.$title.setTitle(this.$translate.instant("setup_wizard_page_title")),yield this.setBackground()})}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 S(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(p){this.loading=!1,this.progress=50,console.error(p),this.$toastr.error(p.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 S(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 p=new FormData;p.append("restoreArchive",this.selectedFile,this.selectedFile.name),yield h(this.$api.post("/backup/restore",p)),this.progress=70,this.io=this.$ws.connectToNamespace("backup");let i=document.getElementById("output");this.io.socket.on("stdout",c=>{c.split(`
1
+ import{B as Y,C as Z,c as G,d as k,e as j,f as D,g as K,j as $,m as A,q as J,r as Q,y as X}from"./chunk-AM53KSWA.js";import{a as ae}from"./chunk-ZHBLCCB6.js";import{b as oe}from"./chunk-5PRMERAY.js";import{b as re}from"./chunk-EAHLR6RC.js";import{k as ee,l as te,n as ie,p as U,q as ne}from"./chunk-5ZJL4HUY.js";import{Db as I,Ga as W,Gb as x,Ib as _,Jc as H,La as n,Mc as N,Sb as O,Vb as l,Wa as V,Wb as f,Wc as R,Xb as g,fc as L,gc as B,gd as q,h as S,hc as E,ja as w,kb as M,lb as z,mb as T,mc as a,nc as s,oa as C,pa as b,rb as m,sb as o,tb as r,ub as u,w as h}from"./chunk-3LEW5FOJ.js";var pe=t=>({background:t}),de=t=>({anim:t}),ce=t=>({"progress-bar-animated":t}),me=()=>["restoring","restarting","restore-complete"],P=(t,d)=>({"is-valid":t,"is-invalid":d});function ue(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),u(4,"div",7),a(5,"translate"),o(6,"button",8),x("click",function(){C(e);let i=_();return b(i.onClickGettingStarted())}),l(7),a(8,"translate"),r(),o(9,"a",9),x("click",function(){C(e);let i=_();return b(i.onClickRestoreBackup())}),l(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"),W),n(3),g(" ",s(8,8,"setup.button_get_started")," "),n(3),f(s(11,10,"setup_wizard_restore")))}function ge(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"div",11)(8,"form",12),x("ngSubmit",function(){C(e);let i=_();return b(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(){C(e);let i=_();return b(i.onClickCancelRestore())}),l(26),a(27,"translate"),r(),o(28,"button",22),l(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",E(30,P,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",E(33,P,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",E(36,P,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.button_continue")," ")}}function _e(t,d){t&1&&(u(0,"i",25),l(1),a(2,"translate")),t&2&&(n(),g(" ",s(2,1,"backup.label_uploading")," "))}function fe(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"form.button_continue")," ")}function he(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"input",23),x("change",function(i){C(e);let F=_();return b(F.handleRestoreFileInput(i.target.files))}),r(),o(8,"div",20)(9,"button",21),x("click",function(){C(e);let i=_();return b(i.onClickCancelRestore())}),l(10),a(11,"translate"),r(),o(12,"button",24),x("click",function(){C(e);let i=_();return b(i.onRestoreBackupClick())}),z(13,_e,3,3)(14,fe,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(),T(e.restoreUploading?13:14)}}function we(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_restoring")," ")}function Ce(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_starting")," ")}function be(t,d){t&1&&(l(0),a(1,"translate")),t&2&&g(" ",s(1,1,"setup_wizard_complete")," ")}function xe(t,d){t&1&&(o(0,"a",27),l(1),a(2,"translate"),r()),t&2&&(n(),g(" ",s(2,1,"form.button_continue")," "))}function ve(t,d){if(t&1&&(o(0,"div",5)(1,"h4",6),z(2,we,2,3)(3,Ce,2,3)(4,be,2,3),r(),u(5,"div",26),z(6,xe,3,3,"a",27),r()),t&2){let e=_();n(2),T(e.step==="restoring"?2:e.step==="restarting"?3:e.step==="restore-complete"?4:-1),n(4),T(e.step==="restore-complete"?6:-1)}}function ye(t,d){t&1&&(o(0,"div",5)(1,"h4",28),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"a",29),l(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.button_continue")," "))}var He=(()=>{class t{$api=w(ne);$auth=w(oe);$settings=w(re);$title=w(q);$toastr=w(ie);$translate=w(ee);$ws=w(ae);io;step="welcome";backgroundStyle;progress=1;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;loading=!1;selectedFile;restoreUploading=!1;createUserForm=new K({username:new $("",[k.required]),password:new $("",[k.compose([k.required,k.minLength(4)])]),passwordConfirm:new $("",[k.required])},this.matchPassword);ngOnInit(){return S(this,null,function*(){this.$title.setTitle(this.$translate.instant("setup_wizard_page_title")),yield this.setBackground()})}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 S(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(p){this.loading=!1,this.progress=50,console.error(p),this.$toastr.error(p.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 S(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 p=new FormData;p.append("restoreArchive",this.selectedFile,this.selectedFile.name),yield h(this.$api.post("/backup/restore",p)),this.progress=70,this.io=this.$ws.connectToNamespace("backup");let i=document.getElementById("output");this.io.socket.on("stdout",c=>{c.split(`
2
2
  \r`).forEach(v=>{if(v&&!/^[⠇⠏⠋⠙⠹⠸]+$/.test(v)){let y=document.createElement("div"),le=/\x1B\[(\d{1,2}(;\d{1,2})?)?[mGK]/g;y.innerHTML=v.replace(le,""),v.includes("[0;31m")?y.classList.add("red-text"):v.includes("[0;32m")?y.classList.add("green-text"):v.includes("[0;33m")?y.classList.add("orange-text"):v.includes("[0;36m")&&y.classList.add("cyan-text"),i.appendChild(y),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 F=document.createElement("div");F.classList.add("orange-text"),F.innerHTML="Starting Homebridge, please wait...",i.appendChild(F),i.scrollTop=i.scrollHeight,yield new Promise(c=>setTimeout(c,3e3)),this.progress=88,yield new Promise(c=>setTimeout(c,3e3)),this.progress=91,yield new Promise(c=>setTimeout(c,3e3)),this.progress=94,yield new Promise(c=>setTimeout(c,3e3)),this.progress=97,yield new Promise(c=>setTimeout(c,3e3)),this.progress=99;let se=setInterval(()=>S(this,null,function*(){try{yield h(this.$api.get("/auth/settings")),clearInterval(se),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()}})}setBackground(){return S(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 p=e.get("password").value,i=e.get("passwordConfirm").value;if(p!==i)e.get("passwordConfirm").setErrors({matchPassword:!0});else return null}static \u0275fac=function(p){return new(p||t)};static \u0275cmp=V({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(p,i){p&1&&(o(0,"div",0)(1,"div",1),u(2,"img",2),o(3,"div",3),u(4,"div",4),r(),z(5,ue,12,12,"div",5)(6,ge,31,39,"div",5)(7,he,15,12,"div",5)(8,ve,7,2,"div",5)(9,ye,10,9,"div",5),r()()),p&2&&(m("ngStyle",B(7,pe,i.backgroundStyle))("ngClass",B(9,de,!i.backgroundStyle)),n(4),O("width",i.progress+"%"),m("ngClass",B(11,ce,i.loading||i.restoreUploading)),M("aria-valuenow",i.progress),n(),T(i.step==="welcome"?5:i.step==="create-account"?6:i.step==="restore-backup"?7:L(13,me).includes(i.step)?8:i.step==="setup-complete"?9:-1))},dependencies:[H,R,Y,A,G,j,D,X,Z,J,Q,N,te],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{He as SetupWizardComponent};
@@ -1 +1 @@
1
- import{g as l}from"./chunk-BQMDK4YS.js";import{l as c}from"./chunk-FB6OF4XR.js";import{Ga as i,Wa as r,hc as s,mc as a,oc as m,rb as o,ub as p}from"./chunk-3LEW5FOJ.js";var f=(e,d)=>({github:e,discord:d}),k=(()=>{class e{linkGithub='<a href="https://github.com/homebridge/homebridge-config-ui-x/issues/new?template=feature-request.yml" target="_blank" rel="noopener noreferrer">GitHub</a>';linkDiscord='<a href="https://discord.gg/kqNCe2D" target="_blank" rel="noopener noreferrer">Discord</a>';static \u0275fac=function(t){return new(t||e)};static \u0275cmp=r({type:e,selectors:[["app-support-banner"]],decls:2,vars:8,consts:[["type","info",1,"mt-3","mb-0","grey-text","small",3,"dismissible","innerHtml"]],template:function(t,n){t&1&&(p(0,"ngb-alert",0),a(1,"translate")),t&2&&o("dismissible",!1)("innerHtml",m(1,2,"common.phrases.support",s(5,f,n.linkGithub,n.linkDiscord)),i)},dependencies:[l,c],encapsulation:2})}return e})();export{k as a};
1
+ import{g as l}from"./chunk-BQMDK4YS.js";import{l as c}from"./chunk-5ZJL4HUY.js";import{Ga as i,Wa as r,hc as s,mc as a,oc as m,rb as o,ub as p}from"./chunk-3LEW5FOJ.js";var f=(e,d)=>({github:e,discord:d}),k=(()=>{class e{linkGithub='<a href="https://github.com/homebridge/homebridge-config-ui-x/issues/new?template=feature-request.yml" target="_blank" rel="noopener noreferrer">GitHub</a>';linkDiscord='<a href="https://discord.gg/kqNCe2D" target="_blank" rel="noopener noreferrer">Discord</a>';static \u0275fac=function(t){return new(t||e)};static \u0275cmp=r({type:e,selectors:[["app-support-banner"]],decls:2,vars:8,consts:[["type","info",1,"mt-3","mb-0","grey-text","small",3,"dismissible","innerHtml"]],template:function(t,n){t&1&&(p(0,"ngb-alert",0),a(1,"translate")),t&2&&o("dismissible",!1)("innerHtml",m(1,2,"common.phrases.support",s(5,f,n.linkGithub,n.linkDiscord)),i)},dependencies:[l,c],encapsulation:2})}return e})();export{k as a};
@@ -1 +1 @@
1
- import{a as E}from"./chunk-7FVJXUCR.js";import{n as S,t as k}from"./chunk-BQMDK4YS.js";import"./chunk-AM53KSWA.js";import{b as P,d as O}from"./chunk-MDV2S56W.js";import{b as B}from"./chunk-5RI5TLFW.js";import{k as T,l as y,n as I,q as V}from"./chunk-FB6OF4XR.js";import{Db as h,Gb as m,Ib as b,La as i,Vb as c,Wa as x,Wb as $,Xb as u,ja as o,lb as f,mb as v,mc as s,nc as l,oa as d,pa as _,rb as g,sb as a,tb as r,ub as C}from"./chunk-3LEW5FOJ.js";function R(e,w){if(e&1){let t=h();a(0,"p",5)(1,"button",6),m("click",function(){d(t);let n=b();return _(n.restartServer())}),c(2),s(3,"translate"),r()()}e&2&&(i(2),u(" ",l(3,1,"menu.linux.label_restart_server")," "))}function D(e,w){if(e&1){let t=h();a(0,"p",5)(1,"button",6),m("click",function(){d(t);let n=b();return _(n.shutdownServer())}),c(2),s(3,"translate"),r()()}e&2&&(i(2),u(" ",l(3,1,"menu.linux.label_shutdown_server")," "))}function M(e,w){if(e&1){let t=h();a(0,"p",5)(1,"button",6),m("click",function(){d(t);let n=b();return _(n.dockerRestartContainer())}),c(2),s(3,"translate"),r()()}e&2&&(i(2),u(" ",l(3,1,"menu.docker.restart_container")," "))}var Q=(()=>{class e{$api=o(V);$modal=o(S);$route=o(P);$router=o(O);$settings=o(B);$toastr=o(I);$translate=o(T);canShutdownRestartHost=this.$settings.env.canShutdownRestartHost;runningInDocker=this.$settings.env.runningInDocker;restartHomebridge(){this.$router.navigate(["/restart"],{relativeTo:this.$route})}restartHomebridgeService(){this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{this.$router.navigate(["/restart"],{relativeTo:this.$route})},error:t=>{console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}restartServer(){this.$router.navigate(["/platform-tools/linux/restart-server"],{relativeTo:this.$route})}shutdownServer(){let t=this.$modal.open(E,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("menu.linux.label_shutdown_server"),t.componentInstance.message=this.$translate.instant("menu.linux.label_shutdown_modal"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_continue"),t.componentInstance.faIconClass="fa fa-fw fa-power-off primary-text",t.result.then(()=>{this.$router.navigate(["/platform-tools/linux/shutdown-server"],{relativeTo:this.$route})}).catch(()=>{})}dockerRestartContainer(){this.$router.navigate(["/platform-tools/docker/restart-container"],{relativeTo:this.$route})}static \u0275fac=function(p){return new(p||e)};static \u0275cmp=x({type:e,selectors:[["ng-component"]],decls:19,vars:16,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","triggers","hover",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click","openDelay","ngbTooltip"]],template:function(p,n){p&1&&(a(0,"div",0)(1,"h3",1),c(2),s(3,"translate"),r()(),a(4,"div",2)(5,"div",3),C(6,"i",4),r(),a(7,"p",5)(8,"button",6),m("click",function(){return n.restartHomebridge()}),c(9),s(10,"translate"),r()(),a(11,"p",5)(12,"button",7),s(13,"translate"),m("click",function(){return n.restartHomebridgeService()}),c(14),s(15,"translate"),r()(),f(16,R,4,3,"p",5),f(17,D,4,3,"p",5),f(18,M,4,3,"p",5),r()),p&2&&(i(2),$(l(3,8,"menu.restart.title")),i(7),u(" ",l(10,10,"menu.hbrestart.confirm_hb")," "),i(3),g("openDelay",150)("ngbTooltip",l(13,12,"reset.force_restart_hb_help_text")),i(2),u(" ",l(15,14,"menu.hbrestart.confirm_ui")," "),i(2),v(n.canShutdownRestartHost?16:-1),i(),v(n.canShutdownRestartHost?17:-1),i(),v(n.runningInDocker?18:-1))},dependencies:[k,y],encapsulation:2})}return e})();export{Q as PowerOptionsComponent};
1
+ import{a as E}from"./chunk-HCLIKLMG.js";import{n as S,t as k}from"./chunk-BQMDK4YS.js";import"./chunk-AM53KSWA.js";import{b as P,d as O}from"./chunk-MDV2S56W.js";import{b as B}from"./chunk-EAHLR6RC.js";import{k as T,l as y,n as I,q as V}from"./chunk-5ZJL4HUY.js";import{Db as h,Gb as m,Ib as b,La as i,Vb as c,Wa as x,Wb as $,Xb as u,ja as o,lb as f,mb as v,mc as s,nc as l,oa as d,pa as _,rb as g,sb as a,tb as r,ub as C}from"./chunk-3LEW5FOJ.js";function R(e,w){if(e&1){let t=h();a(0,"p",5)(1,"button",6),m("click",function(){d(t);let n=b();return _(n.restartServer())}),c(2),s(3,"translate"),r()()}e&2&&(i(2),u(" ",l(3,1,"menu.linux.label_restart_server")," "))}function D(e,w){if(e&1){let t=h();a(0,"p",5)(1,"button",6),m("click",function(){d(t);let n=b();return _(n.shutdownServer())}),c(2),s(3,"translate"),r()()}e&2&&(i(2),u(" ",l(3,1,"menu.linux.label_shutdown_server")," "))}function M(e,w){if(e&1){let t=h();a(0,"p",5)(1,"button",6),m("click",function(){d(t);let n=b();return _(n.dockerRestartContainer())}),c(2),s(3,"translate"),r()()}e&2&&(i(2),u(" ",l(3,1,"menu.docker.restart_container")," "))}var Q=(()=>{class e{$api=o(V);$modal=o(S);$route=o(P);$router=o(O);$settings=o(B);$toastr=o(I);$translate=o(T);canShutdownRestartHost=this.$settings.env.canShutdownRestartHost;runningInDocker=this.$settings.env.runningInDocker;restartHomebridge(){this.$router.navigate(["/restart"],{relativeTo:this.$route})}restartHomebridgeService(){this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{this.$router.navigate(["/restart"],{relativeTo:this.$route})},error:t=>{console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}restartServer(){this.$router.navigate(["/platform-tools/linux/restart-server"],{relativeTo:this.$route})}shutdownServer(){let t=this.$modal.open(E,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("menu.linux.label_shutdown_server"),t.componentInstance.message=this.$translate.instant("menu.linux.label_shutdown_modal"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_continue"),t.componentInstance.faIconClass="fa fa-fw fa-power-off primary-text",t.result.then(()=>{this.$router.navigate(["/platform-tools/linux/shutdown-server"],{relativeTo:this.$route})}).catch(()=>{})}dockerRestartContainer(){this.$router.navigate(["/platform-tools/docker/restart-container"],{relativeTo:this.$route})}static \u0275fac=function(p){return new(p||e)};static \u0275cmp=x({type:e,selectors:[["ng-component"]],decls:19,vars:16,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","triggers","hover",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click","openDelay","ngbTooltip"]],template:function(p,n){p&1&&(a(0,"div",0)(1,"h3",1),c(2),s(3,"translate"),r()(),a(4,"div",2)(5,"div",3),C(6,"i",4),r(),a(7,"p",5)(8,"button",6),m("click",function(){return n.restartHomebridge()}),c(9),s(10,"translate"),r()(),a(11,"p",5)(12,"button",7),s(13,"translate"),m("click",function(){return n.restartHomebridgeService()}),c(14),s(15,"translate"),r()(),f(16,R,4,3,"p",5),f(17,D,4,3,"p",5),f(18,M,4,3,"p",5),r()),p&2&&(i(2),$(l(3,8,"menu.restart.title")),i(7),u(" ",l(10,10,"menu.hbrestart.confirm_hb")," "),i(3),g("openDelay",150)("ngbTooltip",l(13,12,"reset.force_restart_hb_help_text")),i(2),u(" ",l(15,14,"menu.hbrestart.confirm_ui")," "),i(2),v(n.canShutdownRestartHost?16:-1),i(),v(n.canShutdownRestartHost?17:-1),i(),v(n.runningInDocker?18:-1))},dependencies:[k,y],encapsulation:2})}return e})();export{Q as PowerOptionsComponent};
@@ -1 +1 @@
1
- import{a as D}from"./chunk-UO7UMJN3.js";import"./chunk-BH4JDZF4.js";import{b as E,d as R}from"./chunk-MDV2S56W.js";import{b as U}from"./chunk-5RI5TLFW.js";import{k,l as I,n as O,q as B}from"./chunk-FB6OF4XR.js";import{Db as b,Gb as y,Ib as d,Jc as T,La as i,Vb as s,Wa as C,Wb as p,Xb as v,gc as S,hc as x,ja as c,lb as f,mb as h,mc as o,nc as l,oa as $,pa as w,rb as _,sb as r,tb as n,ub as g}from"./chunk-3LEW5FOJ.js";var F=(t,m)=>({"fas fa-fw fa-spinner fa-spin":t,"far fa-fw fa-check-circle":m}),P=t=>({"grey-text":t}),j=(t,m)=>({"far fa-fw fa-circle":t,"fas fa-fw fa-spinner fa-spin":m});function A(t,m){if(t&1&&(r(0,"div",7),s(1),n()),t&2){let e=d();i(),p(e.error)}}function M(t,m){if(t&1&&(r(0,"p",9),s(1),o(2,"translate"),n(),r(3,"div",10)(4,"div",11)(5,"span"),g(6,"i",12),s(7),o(8,"translate"),n()(),r(9,"div",11)(10,"span",12),g(11,"i",12),s(12),o(13,"translate"),n()()()),t&2){let e=d();i(),p(l(2,6,"restart.please_wait_while_server_restarts")),i(5),_("ngClass",x(12,F,!e.uiOnline,e.uiOnline)),i(),v(" ",l(8,8,"restart.ui_online")," "),i(3),_("ngClass",S(15,P,!e.uiOnline)),i(),_("ngClass",x(17,j,!e.uiOnline,e.uiOnline)),i(),v(" ",l(13,10,"restart.service_ready")," ")}}function V(t,m){if(t&1){let e=b();r(0,"p",15)(1,"button",16),y("click",function(){$(e);let u=d(2);return w(u.viewLogs())}),s(2),o(3,"translate"),n()()}t&2&&(i(2),p(l(3,1,"menu.tooltip_view_logs")))}function W(t,m){if(t&1&&(r(0,"div",8)(1,"p"),s(2),o(3,"translate"),n(),r(4,"p",13),s(5),o(6,"translate"),r(7,"span",14),s(8),n()(),f(9,V,4,3,"p",15),n()),t&2){let e=d();i(2),p(l(3,4,"restart.server_is_taking_long_time_to_restart")),i(3),v(" ",l(6,6,"restart.label_restart_command_executed"),": "),i(3),p(e.resp.command||"End Process"),i(),h(e.uiOnline?9:-1)}}var Y=(()=>{class t{$api=c(B);$route=c(E);$router=c(R);$settings=c(U);$toastr=c(O);$translate=c(k);$ws=c(D);checkTimeout;checkDelay;io;uiOnline=!1;error=!1;resp={};timeout=!1;ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch(()=>{})}),this.$router.parseUrl(this.$router.url).queryParams.restarting?(this.uiOnline=!0,this.checkIfServerUp()):this.$api.put("/server/restart",{}).subscribe({next:a=>{this.resp=a,this.checkIfServerUp(),a.restartingUI||(this.uiOnline=!0)},error:a=>{console.error(a),this.error=this.$translate.instant("restart.toast_server_restart_error"),this.$toastr.error(this.$translate.instant("restart.toast_server_restart_error"),this.$translate.instant("toast.title_error"))}})}viewLogs(){this.$settings.webroot!==this.$settings.originalWebroot?this.$router.navigate(!this.$settings.webroot||this.$settings.webroot==="/"?["/logs"]:[`${this.$settings.webroot}/logs`],{replaceUrl:!0}):this.$router.navigate(["/logs"],{relativeTo:this.$route})}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",e=>{this.uiOnline=!0,(e.status==="up"||e.status==="pending")&&(this.$toastr.success(this.$translate.instant("restart.toast_server_restarted"),this.$translate.instant("toast.title_success")),this.$settings.webroot!==this.$settings.originalWebroot?this.$router.navigate(!this.$settings.webroot||this.$settings.webroot==="/"?["/"]:[`${this.$settings.webroot}/`],{replaceUrl:!0}):this.$router.navigate(["/"],{relativeTo:this.$route}))})},7e3),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("restart.toast_server_restart_timeout"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},4e4)}static \u0275fac=function(a){return new(a||t)};static \u0275cmp=C({type:t,selectors:[["ng-component"]],decls:14,vars:8,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,"alert","alert-error","my-4"],[1,"alert","alert-warning","my-4"],[1,"grey-text"],[1,"justify-content-center","my-4"],[1,"restart-progress-box","primary-text"],[3,"ngClass"],[1,"grey-text","mb-0"],[1,"font-monospace"],[1,"mt-2","mb-0"],[1,"btn","btn-primary","mb-0",3,"click"]],template:function(a,u){a&1&&(r(0,"div",0)(1,"h3",1),s(2),o(3,"translate"),n()(),r(4,"div",2)(5,"div",3),g(6,"i",4),n(),r(7,"div",5)(8,"h4",6),s(9),o(10,"translate"),n(),f(11,A,2,1,"div",7)(12,M,14,20),f(13,W,10,8,"div",8),n()()),a&2&&(i(2),p(l(3,4,"menu.restart.title")),i(7),p(l(10,6,"restart.title_restart")),i(2),h(u.error?11:12),i(2),h(u.timeout?13:-1))},dependencies:[T,I],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{Y as RestartComponent};
1
+ import{a as D}from"./chunk-ZHBLCCB6.js";import"./chunk-5PRMERAY.js";import{b as E,d as R}from"./chunk-MDV2S56W.js";import{b as U}from"./chunk-EAHLR6RC.js";import{k,l as I,n as O,q as B}from"./chunk-5ZJL4HUY.js";import{Db as b,Gb as y,Ib as d,Jc as T,La as i,Vb as s,Wa as C,Wb as p,Xb as v,gc as S,hc as x,ja as c,lb as f,mb as h,mc as o,nc as l,oa as $,pa as w,rb as _,sb as r,tb as n,ub as g}from"./chunk-3LEW5FOJ.js";var F=(t,m)=>({"fas fa-fw fa-spinner fa-spin":t,"far fa-fw fa-check-circle":m}),P=t=>({"grey-text":t}),j=(t,m)=>({"far fa-fw fa-circle":t,"fas fa-fw fa-spinner fa-spin":m});function A(t,m){if(t&1&&(r(0,"div",7),s(1),n()),t&2){let e=d();i(),p(e.error)}}function M(t,m){if(t&1&&(r(0,"p",9),s(1),o(2,"translate"),n(),r(3,"div",10)(4,"div",11)(5,"span"),g(6,"i",12),s(7),o(8,"translate"),n()(),r(9,"div",11)(10,"span",12),g(11,"i",12),s(12),o(13,"translate"),n()()()),t&2){let e=d();i(),p(l(2,6,"restart.please_wait_while_server_restarts")),i(5),_("ngClass",x(12,F,!e.uiOnline,e.uiOnline)),i(),v(" ",l(8,8,"restart.ui_online")," "),i(3),_("ngClass",S(15,P,!e.uiOnline)),i(),_("ngClass",x(17,j,!e.uiOnline,e.uiOnline)),i(),v(" ",l(13,10,"restart.service_ready")," ")}}function V(t,m){if(t&1){let e=b();r(0,"p",15)(1,"button",16),y("click",function(){$(e);let u=d(2);return w(u.viewLogs())}),s(2),o(3,"translate"),n()()}t&2&&(i(2),p(l(3,1,"menu.tooltip_view_logs")))}function W(t,m){if(t&1&&(r(0,"div",8)(1,"p"),s(2),o(3,"translate"),n(),r(4,"p",13),s(5),o(6,"translate"),r(7,"span",14),s(8),n()(),f(9,V,4,3,"p",15),n()),t&2){let e=d();i(2),p(l(3,4,"restart.server_is_taking_long_time_to_restart")),i(3),v(" ",l(6,6,"restart.label_restart_command_executed"),": "),i(3),p(e.resp.command||"End Process"),i(),h(e.uiOnline?9:-1)}}var Y=(()=>{class t{$api=c(B);$route=c(E);$router=c(R);$settings=c(U);$toastr=c(O);$translate=c(k);$ws=c(D);checkTimeout;checkDelay;io;uiOnline=!1;error=!1;resp={};timeout=!1;ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch(()=>{})}),this.$router.parseUrl(this.$router.url).queryParams.restarting?(this.uiOnline=!0,this.checkIfServerUp()):this.$api.put("/server/restart",{}).subscribe({next:a=>{this.resp=a,this.checkIfServerUp(),a.restartingUI||(this.uiOnline=!0)},error:a=>{console.error(a),this.error=this.$translate.instant("restart.toast_server_restart_error"),this.$toastr.error(this.$translate.instant("restart.toast_server_restart_error"),this.$translate.instant("toast.title_error"))}})}viewLogs(){this.$settings.webroot!==this.$settings.originalWebroot?this.$router.navigate(!this.$settings.webroot||this.$settings.webroot==="/"?["/logs"]:[`${this.$settings.webroot}/logs`],{replaceUrl:!0}):this.$router.navigate(["/logs"],{relativeTo:this.$route})}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",e=>{this.uiOnline=!0,(e.status==="up"||e.status==="pending")&&(this.$toastr.success(this.$translate.instant("restart.toast_server_restarted"),this.$translate.instant("toast.title_success")),this.$settings.webroot!==this.$settings.originalWebroot?this.$router.navigate(!this.$settings.webroot||this.$settings.webroot==="/"?["/"]:[`${this.$settings.webroot}/`],{replaceUrl:!0}):this.$router.navigate(["/"],{relativeTo:this.$route}))})},7e3),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("restart.toast_server_restart_timeout"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},4e4)}static \u0275fac=function(a){return new(a||t)};static \u0275cmp=C({type:t,selectors:[["ng-component"]],decls:14,vars:8,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,"alert","alert-error","my-4"],[1,"alert","alert-warning","my-4"],[1,"grey-text"],[1,"justify-content-center","my-4"],[1,"restart-progress-box","primary-text"],[3,"ngClass"],[1,"grey-text","mb-0"],[1,"font-monospace"],[1,"mt-2","mb-0"],[1,"btn","btn-primary","mb-0",3,"click"]],template:function(a,u){a&1&&(r(0,"div",0)(1,"h3",1),s(2),o(3,"translate"),n()(),r(4,"div",2)(5,"div",3),g(6,"i",4),n(),r(7,"div",5)(8,"h4",6),s(9),o(10,"translate"),n(),f(11,A,2,1,"div",7)(12,M,14,20),f(13,W,10,8,"div",8),n()()),a&2&&(i(2),p(l(3,4,"menu.restart.title")),i(7),p(l(10,6,"restart.title_restart")),i(2),h(u.error?11:12),i(2),h(u.timeout?13:-1))},dependencies:[T,I],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{Y as RestartComponent};
@@ -1 +1 @@
1
- import{g as r}from"./chunk-MDV2S56W.js";import{Xa as o,fa as e}from"./chunk-3LEW5FOJ.js";var m=[{path:"",loadComponent:()=>import("./chunk-MIOXSBCB.js").then(t=>t.TerminalComponent),canDeactivate:[t=>t.canDeactivate?t.canDeactivate():!0]}],n=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=o({type:t});static \u0275inj=e({imports:[r.forChild(m),r]})}return t})();var s=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=o({type:t});static \u0275inj=e({imports:[n]})}return t})();export{s as TerminalModule};
1
+ import{g as r}from"./chunk-MDV2S56W.js";import{Xa as o,fa as e}from"./chunk-3LEW5FOJ.js";var m=[{path:"",loadComponent:()=>import("./chunk-3XEBXTDX.js").then(t=>t.TerminalComponent),canDeactivate:[t=>t.canDeactivate?t.canDeactivate():!0]}],n=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=o({type:t});static \u0275inj=e({imports:[r.forChild(m),r]})}return t})();var s=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=o({type:t});static \u0275inj=e({imports:[n]})}return t})();export{s as TerminalModule};
@@ -1 +1 @@
1
- import{a as _,b as D}from"./chunk-5RI5TLFW.js";import{p as c,q as S}from"./chunk-FB6OF4XR.js";import{$c as x,C as v,Xa as I,ea as h,fa as E,g as O,h as a,ha as y,ia as l,ja as f,r as p,ta as j,w as d,x as T,z as w}from"./chunk-3LEW5FOJ.js";var g=new y("JWT_OPTIONS"),m=(()=>{class r{constructor(e=null){this.tokenGetter=e&&e.tokenGetter||function(){}}urlBase64Decode(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:{t+="==";break}case 3:{t+="=";break}default:throw new Error("Illegal base64url string!")}return this.b64DecodeUnicode(t)}b64decode(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o="";if(e=String(e).replace(/=+$/,""),e.length%4===1)throw new Error("'atob' failed: The string to be decoded is not correctly encoded.");for(let i=0,s,n,b=0;n=e.charAt(b++);~n&&(s=i%4?s*64+n:n,i++%4)?o+=String.fromCharCode(255&s>>(-2*i&6)):0)n=t.indexOf(n);return o}b64DecodeUnicode(e){return decodeURIComponent(Array.prototype.map.call(this.b64decode(e),t=>"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)).join(""))}decodeToken(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._decodeToken(t)):this._decodeToken(e)}_decodeToken(e){if(!e||e==="")return null;let t=e.split(".");if(t.length!==3)throw new Error("The inspected token doesn't appear to be a JWT. Check to make sure it has three parts and see https://jwt.io for more.");let o=this.urlBase64Decode(t[1]);if(!o)throw new Error("Cannot decode the token.");return JSON.parse(o)}getTokenExpirationDate(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._getTokenExpirationDate(t)):this._getTokenExpirationDate(e)}_getTokenExpirationDate(e){let t;if(t=this.decodeToken(e),!t||!t.hasOwnProperty("exp"))return null;let o=new Date(0);return o.setUTCSeconds(t.exp),o}isTokenExpired(e=this.tokenGetter(),t){return e instanceof Promise?e.then(o=>this._isTokenExpired(o,t)):this._isTokenExpired(e,t)}_isTokenExpired(e,t){if(!e||e==="")return!0;let o=this.getTokenExpirationDate(e);return t=t||0,o===null?!1:!(o.valueOf()>new Date().valueOf()+t*1e3)}getAuthScheme(e,t){return typeof e=="function"?e(t):e}}return r.\u0275fac=function(e){return new(e||r)(l(g))},r.\u0275prov=h({token:r,factory:r.\u0275fac}),r})(),$=r=>r instanceof Promise?v(()=>r):p(r),R=(()=>{class r{constructor(e,t,o){this.jwtHelper=t,this.document=o,this.standardPorts=["80","443"],this.tokenGetter=e.tokenGetter,this.headerName=e.headerName||"Authorization",this.authScheme=e.authScheme||e.authScheme===""?e.authScheme:"Bearer ",this.allowedDomains=e.allowedDomains||[],this.disallowedRoutes=e.disallowedRoutes||[],this.throwNoTokenError=e.throwNoTokenError||!1,this.skipWhenExpired=e.skipWhenExpired}isAllowedDomain(e){let t=new URL(e.url,this.document.location.origin);if(t.host===this.document.location.host)return!0;let o=`${t.hostname}${t.port&&!this.standardPorts.includes(t.port)?":"+t.port:""}`;return this.allowedDomains.findIndex(i=>typeof i=="string"?i===o:i instanceof RegExp?i.test(o):!1)>-1}isDisallowedRoute(e){let t=new URL(e.url,this.document.location.origin);return this.disallowedRoutes.findIndex(o=>{if(typeof o=="string"){let i=new URL(o,this.document.location.origin);return i.hostname===t.hostname&&i.pathname===t.pathname}return o instanceof RegExp?o.test(e.url):!1})>-1}handleInterception(e,t,o){let i=this.jwtHelper.getAuthScheme(this.authScheme,t);if(!e&&this.throwNoTokenError)throw new Error("Could not get token from tokenGetter function.");let s=p(!1);return this.skipWhenExpired&&(s=e?$(this.jwtHelper.isTokenExpired(e)):p(!0)),e?s.pipe(T(n=>n&&this.skipWhenExpired?t.clone():t.clone({setHeaders:{[this.headerName]:`${i}${e}`}})),w(n=>o.handle(n))):o.handle(t)}intercept(e,t){if(!this.isAllowedDomain(e)||this.isDisallowedRoute(e))return t.handle(e);let o=this.tokenGetter(e);return $(o).pipe(w(i=>this.handleInterception(i,e,t)))}}return r.\u0275fac=function(e){return new(e||r)(l(g),l(m),l(j))},r.\u0275prov=h({token:r,factory:r.\u0275fac}),r})(),F=(()=>{class r{constructor(e){if(e)throw new Error("JwtModule is already loaded. It should only be imported in your application's main module.")}static forRoot(e){return{ngModule:r,providers:[{provide:x,useClass:R,multi:!0},e.jwtOptionsProvider||{provide:g,useValue:e.config},m]}}}return r.\u0275fac=function(e){return new(e||r)(l(r,12))},r.\u0275mod=I({type:r}),r.\u0275inj=E({}),r})();var k=O(_(),1);var q=(()=>{class r{$api=f(S);$jwtHelper=f(m);$settings=f(D);token;user={};logoutTimer;constructor(){this.loadToken()}login(e){return a(this,null,function*(){let t=yield d(this.$api.post("/auth/login",e));if(!this.validateToken(t.access_token))throw new Error("Invalid username or password.");window.localStorage.setItem(c.jwt.tokenKey,t.access_token),yield this.$settings.getAppSettings()})}noauth(){return a(this,null,function*(){let e=yield d(this.$api.post("/auth/noauth",{}));if(this.validateToken(e.access_token))window.localStorage.setItem(c.jwt.tokenKey,e.access_token),yield this.$settings.getAppSettings();else throw new Error("Invalid username or password.")})}logout(){this.user=null,this.token=null,window.localStorage.removeItem(c.jwt.tokenKey),window.location.reload()}loadToken(){return a(this,null,function*(){this.$settings.settingsLoaded||(yield d(this.$settings.onSettingsLoaded));let e=window.localStorage.getItem(c.jwt.tokenKey);e&&this.validateToken(e)})}checkToken(){return a(this,null,function*(){try{return yield d(this.$api.get("/auth/check"))}catch(e){e.status===401&&(console.error("Current token is not valid"),this.logout())}})}isLoggedIn(){return this.$settings.env.instanceId!==this.user.instanceId?(console.error("Token does not match instance"),!1):this.user&&this.token&&!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)}validateToken(e){try{return this.$jwtHelper.isTokenExpired(e,this.$settings.serverTimeOffset)&&this.logout(),this.user=this.$jwtHelper.decodeToken(e),this.token=e,this.setLogoutTimer(),!0}catch{return window.localStorage.removeItem(c.jwt.tokenKey),this.token=null,!1}}setLogoutTimer(){if(clearTimeout(this.logoutTimer),!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)){let t=(0,k.default)(this.$jwtHelper.getTokenExpirationDate(this.token)).diff((0,k.default)().add(this.$settings.serverTimeOffset,"s"),"millisecond");t<=2147483647&&(this.logoutTimer=setTimeout(()=>a(this,null,function*(){this.$settings.formAuth===!1?(yield this.noauth(),window.location.reload()):this.logout()}),t))}}static \u0275fac=function(t){return new(t||r)};static \u0275prov=h({token:r,factory:r.\u0275fac})}return r})();export{F as a,q as b};
1
+ import{a as _,b as D}from"./chunk-EAHLR6RC.js";import{p as c,q as S}from"./chunk-5ZJL4HUY.js";import{$c as x,C as v,Xa as I,ea as h,fa as E,g as O,h as a,ha as y,ia as l,ja as f,r as p,ta as j,w as d,x as T,z as w}from"./chunk-3LEW5FOJ.js";var g=new y("JWT_OPTIONS"),m=(()=>{class r{constructor(e=null){this.tokenGetter=e&&e.tokenGetter||function(){}}urlBase64Decode(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:{t+="==";break}case 3:{t+="=";break}default:throw new Error("Illegal base64url string!")}return this.b64DecodeUnicode(t)}b64decode(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",o="";if(e=String(e).replace(/=+$/,""),e.length%4===1)throw new Error("'atob' failed: The string to be decoded is not correctly encoded.");for(let i=0,s,n,b=0;n=e.charAt(b++);~n&&(s=i%4?s*64+n:n,i++%4)?o+=String.fromCharCode(255&s>>(-2*i&6)):0)n=t.indexOf(n);return o}b64DecodeUnicode(e){return decodeURIComponent(Array.prototype.map.call(this.b64decode(e),t=>"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)).join(""))}decodeToken(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._decodeToken(t)):this._decodeToken(e)}_decodeToken(e){if(!e||e==="")return null;let t=e.split(".");if(t.length!==3)throw new Error("The inspected token doesn't appear to be a JWT. Check to make sure it has three parts and see https://jwt.io for more.");let o=this.urlBase64Decode(t[1]);if(!o)throw new Error("Cannot decode the token.");return JSON.parse(o)}getTokenExpirationDate(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._getTokenExpirationDate(t)):this._getTokenExpirationDate(e)}_getTokenExpirationDate(e){let t;if(t=this.decodeToken(e),!t||!t.hasOwnProperty("exp"))return null;let o=new Date(0);return o.setUTCSeconds(t.exp),o}isTokenExpired(e=this.tokenGetter(),t){return e instanceof Promise?e.then(o=>this._isTokenExpired(o,t)):this._isTokenExpired(e,t)}_isTokenExpired(e,t){if(!e||e==="")return!0;let o=this.getTokenExpirationDate(e);return t=t||0,o===null?!1:!(o.valueOf()>new Date().valueOf()+t*1e3)}getAuthScheme(e,t){return typeof e=="function"?e(t):e}}return r.\u0275fac=function(e){return new(e||r)(l(g))},r.\u0275prov=h({token:r,factory:r.\u0275fac}),r})(),$=r=>r instanceof Promise?v(()=>r):p(r),R=(()=>{class r{constructor(e,t,o){this.jwtHelper=t,this.document=o,this.standardPorts=["80","443"],this.tokenGetter=e.tokenGetter,this.headerName=e.headerName||"Authorization",this.authScheme=e.authScheme||e.authScheme===""?e.authScheme:"Bearer ",this.allowedDomains=e.allowedDomains||[],this.disallowedRoutes=e.disallowedRoutes||[],this.throwNoTokenError=e.throwNoTokenError||!1,this.skipWhenExpired=e.skipWhenExpired}isAllowedDomain(e){let t=new URL(e.url,this.document.location.origin);if(t.host===this.document.location.host)return!0;let o=`${t.hostname}${t.port&&!this.standardPorts.includes(t.port)?":"+t.port:""}`;return this.allowedDomains.findIndex(i=>typeof i=="string"?i===o:i instanceof RegExp?i.test(o):!1)>-1}isDisallowedRoute(e){let t=new URL(e.url,this.document.location.origin);return this.disallowedRoutes.findIndex(o=>{if(typeof o=="string"){let i=new URL(o,this.document.location.origin);return i.hostname===t.hostname&&i.pathname===t.pathname}return o instanceof RegExp?o.test(e.url):!1})>-1}handleInterception(e,t,o){let i=this.jwtHelper.getAuthScheme(this.authScheme,t);if(!e&&this.throwNoTokenError)throw new Error("Could not get token from tokenGetter function.");let s=p(!1);return this.skipWhenExpired&&(s=e?$(this.jwtHelper.isTokenExpired(e)):p(!0)),e?s.pipe(T(n=>n&&this.skipWhenExpired?t.clone():t.clone({setHeaders:{[this.headerName]:`${i}${e}`}})),w(n=>o.handle(n))):o.handle(t)}intercept(e,t){if(!this.isAllowedDomain(e)||this.isDisallowedRoute(e))return t.handle(e);let o=this.tokenGetter(e);return $(o).pipe(w(i=>this.handleInterception(i,e,t)))}}return r.\u0275fac=function(e){return new(e||r)(l(g),l(m),l(j))},r.\u0275prov=h({token:r,factory:r.\u0275fac}),r})(),F=(()=>{class r{constructor(e){if(e)throw new Error("JwtModule is already loaded. It should only be imported in your application's main module.")}static forRoot(e){return{ngModule:r,providers:[{provide:x,useClass:R,multi:!0},e.jwtOptionsProvider||{provide:g,useValue:e.config},m]}}}return r.\u0275fac=function(e){return new(e||r)(l(r,12))},r.\u0275mod=I({type:r}),r.\u0275inj=E({}),r})();var k=O(_(),1);var q=(()=>{class r{$api=f(S);$jwtHelper=f(m);$settings=f(D);token;user={};logoutTimer;constructor(){this.loadToken()}login(e){return a(this,null,function*(){let t=yield d(this.$api.post("/auth/login",e));if(!this.validateToken(t.access_token))throw new Error("Invalid username or password.");window.localStorage.setItem(c.jwt.tokenKey,t.access_token),yield this.$settings.getAppSettings()})}noauth(){return a(this,null,function*(){let e=yield d(this.$api.post("/auth/noauth",{}));if(this.validateToken(e.access_token))window.localStorage.setItem(c.jwt.tokenKey,e.access_token),yield this.$settings.getAppSettings();else throw new Error("Invalid username or password.")})}logout(){this.user=null,this.token=null,window.localStorage.removeItem(c.jwt.tokenKey),window.location.reload()}loadToken(){return a(this,null,function*(){this.$settings.settingsLoaded||(yield d(this.$settings.onSettingsLoaded));let e=window.localStorage.getItem(c.jwt.tokenKey);e&&this.validateToken(e)})}checkToken(){return a(this,null,function*(){try{return yield d(this.$api.get("/auth/check"))}catch(e){e.status===401&&(console.error("Current token is not valid"),this.logout())}})}isLoggedIn(){return this.$settings.env.instanceId!==this.user.instanceId?(console.error("Token does not match instance"),!1):this.user&&this.token&&!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)}validateToken(e){try{return this.$jwtHelper.isTokenExpired(e,this.$settings.serverTimeOffset)&&this.logout(),this.user=this.$jwtHelper.decodeToken(e),this.token=e,this.setLogoutTimer(),!0}catch{return window.localStorage.removeItem(c.jwt.tokenKey),this.token=null,!1}}setLogoutTimer(){if(clearTimeout(this.logoutTimer),!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)){let t=(0,k.default)(this.$jwtHelper.getTokenExpirationDate(this.token)).diff((0,k.default)().add(this.$settings.serverTimeOffset,"s"),"millisecond");t<=2147483647&&(this.logoutTimer=setTimeout(()=>a(this,null,function*(){this.$settings.formAuth===!1?(yield this.noauth(),window.location.reload()):this.logout()}),t))}}static \u0275fac=function(t){return new(t||r)};static \u0275prov=h({token:r,factory:r.\u0275fac})}return r})();export{F as a,q as b};