homebridge-config-ui-x 5.5.1-beta.7 → 5.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/CHANGELOG.md +1 -7
  2. package/dist/core/auth/auth.controller.d.ts +0 -2
  3. package/dist/core/config/config.service.d.ts +74 -6
  4. package/dist/core/config/config.service.js +0 -5
  5. package/dist/core/config/config.service.js.map +1 -1
  6. package/dist/core/config/config.startup.d.ts +12 -2
  7. package/dist/core/config/config.startup.js +0 -12
  8. package/dist/core/config/config.startup.js.map +1 -1
  9. package/dist/core/spa/spa.filter.d.ts +0 -3
  10. package/dist/core/spa/spa.filter.js +2 -22
  11. package/dist/core/spa/spa.filter.js.map +1 -1
  12. package/dist/globalDefaults.js +0 -3
  13. package/dist/globalDefaults.js.map +1 -1
  14. package/dist/main.js +3 -18
  15. package/dist/main.js.map +1 -1
  16. package/dist/modules/backup/backup.service.js +1 -4
  17. package/dist/modules/backup/backup.service.js.map +1 -1
  18. package/dist/modules/config-editor/config-editor.controller.d.ts +3 -3
  19. package/dist/modules/config-editor/config-editor.service.d.ts +2 -3
  20. package/dist/modules/config-editor/config-editor.service.js +13 -36
  21. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  22. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.d.ts +1 -1
  23. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +1 -2
  24. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  25. package/dist/modules/log/log.gateway.d.ts +1 -1
  26. package/dist/modules/log/log.service.d.ts +4 -1
  27. package/dist/modules/log/log.service.js.map +1 -1
  28. package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +1 -1
  29. package/dist/modules/platform-tools/terminal/terminal.service.d.ts +8 -1
  30. package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
  31. package/dist/modules/plugins/plugins.controller.d.ts +5 -5
  32. package/dist/modules/plugins/plugins.service.d.ts +1 -1
  33. package/dist/modules/plugins/plugins.service.js +0 -6
  34. package/dist/modules/plugins/plugins.service.js.map +1 -1
  35. package/dist/modules/server/server.controller.d.ts +0 -3
  36. package/dist/modules/server/server.controller.js +0 -13
  37. package/dist/modules/server/server.controller.js.map +1 -1
  38. package/dist/modules/server/server.service.js +3 -5
  39. package/dist/modules/server/server.service.js.map +1 -1
  40. package/dist/modules/status/status.controller.d.ts +2 -2
  41. package/dist/modules/status/status.gateway.d.ts +5 -5
  42. package/dist/modules/status/status.service.d.ts +29 -2
  43. package/dist/modules/status/status.service.js +9 -4
  44. package/dist/modules/status/status.service.js.map +1 -1
  45. package/package.json +2 -2
  46. package/public/3rdpartylicenses.txt +13 -13
  47. package/public/{chunk-Y4JYARXO.js → chunk-22PVDFCE.js} +1 -1
  48. package/public/{chunk-YRDGMK4T.js → chunk-26EI4TMU.js} +1 -1
  49. package/public/chunk-2GCOJOK2.js +1 -0
  50. package/public/{chunk-PFIRHRM5.js → chunk-2JOEE6TH.js} +1 -1
  51. package/public/{chunk-56NCRSXK.js → chunk-2KX534PL.js} +2 -2
  52. package/public/chunk-3GLEK5PO.js +1 -0
  53. package/public/chunk-3ZPDIOJP.js +1 -0
  54. package/public/{chunk-BWVMSIO4.js → chunk-45O7A76J.js} +1 -1
  55. package/public/chunk-4GCXGGZP.js +1 -0
  56. package/public/{chunk-D2RHA7X2.js → chunk-4HV5VBUX.js} +1 -1
  57. package/public/{chunk-5N45B6R7.js → chunk-4MEUIWY4.js} +1 -1
  58. package/public/{chunk-HPWK6TSC.js → chunk-5DLJ5232.js} +1 -1
  59. package/public/{chunk-OQM4FTFW.js → chunk-5SA6BZRC.js} +1 -1
  60. package/public/chunk-5UJGNWVZ.js +1 -0
  61. package/public/chunk-5Y3BIPLQ.js +1 -0
  62. package/public/{chunk-S4J6DBU3.js → chunk-6HYJYHLY.js} +1 -1
  63. package/public/chunk-6WXBZOVI.js +1 -0
  64. package/public/{chunk-DZUAVWLP.js → chunk-6YLT7NDE.js} +1 -1
  65. package/public/chunk-72ATQTM5.js +1 -0
  66. package/public/{chunk-MD7IQ7EC.js → chunk-732ZZPJC.js} +1 -1
  67. package/public/chunk-76EY53FS.js +1 -0
  68. package/public/{chunk-4S5TRRTM.js → chunk-A2HWJ2G5.js} +1 -1
  69. package/public/{chunk-QHDPBN4J.js → chunk-AJTGODYF.js} +1 -1
  70. package/public/{chunk-K2EZIL6H.js → chunk-AXPU54UR.js} +1 -1
  71. package/public/chunk-AZL6ANIU.js +1 -0
  72. package/public/{chunk-LHQCUFCP.js → chunk-B7ACJ247.js} +1 -1
  73. package/public/chunk-BE6EVQ43.js +1 -0
  74. package/public/{chunk-UERLDONE.js → chunk-CWBLLOU5.js} +1 -1
  75. package/public/chunk-E6EWEG2S.js +19 -0
  76. package/public/chunk-EPPQKARO.js +1 -0
  77. package/public/chunk-FGRA3MLA.js +1 -0
  78. package/public/{chunk-WJOFCHDT.js → chunk-FXRCC47A.js} +1 -1
  79. package/public/{chunk-CGPMZGNR.js → chunk-GCUB4KBA.js} +1 -1
  80. package/public/chunk-HDYZCMHI.js +1 -0
  81. package/public/chunk-HI24UXUI.js +1 -0
  82. package/public/{chunk-XJFWSI2A.js → chunk-I4PCV2JL.js} +1 -1
  83. package/public/{chunk-PRQPJEFJ.js → chunk-IJKIT7A3.js} +1 -1
  84. package/public/chunk-IZEKCAEE.js +1 -0
  85. package/public/chunk-JQ3FUL2I.js +2 -0
  86. package/public/chunk-K2Y72XZA.js +1 -0
  87. package/public/chunk-LONAPMLE.js +1 -0
  88. package/public/chunk-N6G4A6CB.js +1 -0
  89. package/public/chunk-NDJSUPAE.js +1 -0
  90. package/public/chunk-O3XTJPLY.js +2 -0
  91. package/public/chunk-OROL2MAP.js +1 -0
  92. package/public/chunk-PHI3ALNA.js +1 -0
  93. package/public/chunk-QPGZQSFV.js +1 -0
  94. package/public/chunk-R3FDPMAX.js +1 -0
  95. package/public/{chunk-3IUIBZIG.js → chunk-R6UTID3Z.js} +1 -1
  96. package/public/chunk-RN4HC5ZG.js +1 -0
  97. package/public/chunk-RQLIZDI7.js +1 -0
  98. package/public/chunk-TEITZMYK.js +1 -0
  99. package/public/chunk-TGFJLZZI.js +1 -0
  100. package/public/chunk-UAPZPQGY.js +49 -0
  101. package/public/chunk-UF5PIS5O.js +1 -0
  102. package/public/chunk-ULG3QICO.js +1 -0
  103. package/public/chunk-UPC5PDCF.js +40 -0
  104. package/public/chunk-UXOQX4NL.js +1 -0
  105. package/public/chunk-VT4775CA.js +4 -0
  106. package/public/chunk-WI7OEFPB.js +1 -0
  107. package/public/{chunk-V4K2YYFC.js → chunk-WIM4XI75.js} +1 -1
  108. package/public/{chunk-5TSHBP5C.js → chunk-WVUXQTE4.js} +1 -1
  109. package/public/chunk-XV3GV4GK.js +1 -0
  110. package/public/{chunk-XKBUDGTP.js → chunk-YBEY6H6T.js} +1 -1
  111. package/public/{chunk-NN57LKI4.js → chunk-YCD2MWRV.js} +1 -1
  112. package/public/{chunk-IHGRCBAQ.js → chunk-YIC5UWBJ.js} +1 -1
  113. package/public/chunk-YQ4ML5HX.js +1 -0
  114. package/public/chunk-Z2RK3DTY.js +1 -0
  115. package/public/chunk-Z6T4OYIT.js +1 -0
  116. package/public/index.html +2 -2
  117. package/public/main-JE3N6ZQT.js +1 -0
  118. package/public/{styles-5R4ZLUK4.css → styles-KAER7B5R.css} +1 -1
  119. package/dist/core/config/config.interfaces.d.ts +0 -118
  120. package/dist/core/config/config.interfaces.js +0 -3
  121. package/dist/core/config/config.interfaces.js.map +0 -1
  122. package/dist/core/spa/spa-html.service.d.ts +0 -5
  123. package/dist/core/spa/spa-html.service.js +0 -38
  124. package/dist/core/spa/spa-html.service.js.map +0 -1
  125. package/dist/modules/log/log.interfaces.d.ts +0 -4
  126. package/dist/modules/log/log.interfaces.js +0 -3
  127. package/dist/modules/log/log.interfaces.js.map +0 -1
  128. package/dist/modules/platform-tools/terminal/terminal.interfaces.d.ts +0 -8
  129. package/dist/modules/platform-tools/terminal/terminal.interfaces.js +0 -3
  130. package/dist/modules/platform-tools/terminal/terminal.interfaces.js.map +0 -1
  131. package/dist/modules/plugins/plugins.interfaces.d.ts +0 -211
  132. package/dist/modules/plugins/plugins.interfaces.js +0 -3
  133. package/dist/modules/plugins/plugins.interfaces.js.map +0 -1
  134. package/dist/modules/status/status.interfaces.d.ts +0 -27
  135. package/dist/modules/status/status.interfaces.js +0 -10
  136. package/dist/modules/status/status.interfaces.js.map +0 -1
  137. package/public/chunk-2FNOKD4V.js +0 -1
  138. package/public/chunk-2URLJNXS.js +0 -1
  139. package/public/chunk-4QX2JFQ3.js +0 -1
  140. package/public/chunk-5HRGBRFW.js +0 -1
  141. package/public/chunk-5P5PDPUV.js +0 -1
  142. package/public/chunk-6M46B4P2.js +0 -40
  143. package/public/chunk-7YH7QGSU.js +0 -1
  144. package/public/chunk-C2BJ6TMI.js +0 -1
  145. package/public/chunk-C3GIULAB.js +0 -1
  146. package/public/chunk-CMOTM56W.js +0 -1
  147. package/public/chunk-DS6QJJ67.js +0 -1
  148. package/public/chunk-EQDMW6AW.js +0 -1
  149. package/public/chunk-HUHI7UBZ.js +0 -1
  150. package/public/chunk-JFOMKOP4.js +0 -1
  151. package/public/chunk-L5TY36XZ.js +0 -1
  152. package/public/chunk-LPRP6UFT.js +0 -1
  153. package/public/chunk-LV5TYHZ7.js +0 -1
  154. package/public/chunk-M5SPFGD5.js +0 -1
  155. package/public/chunk-NLUWGNJN.js +0 -1
  156. package/public/chunk-NS7FNJX4.js +0 -1
  157. package/public/chunk-OBKKI254.js +0 -1
  158. package/public/chunk-P2O3U4B2.js +0 -1
  159. package/public/chunk-QKIZT7YY.js +0 -1
  160. package/public/chunk-QQMSIIDU.js +0 -1
  161. package/public/chunk-QXFI56AN.js +0 -2
  162. package/public/chunk-QYDIL6OE.js +0 -49
  163. package/public/chunk-RM72VE72.js +0 -1
  164. package/public/chunk-SIIVYDOU.js +0 -1
  165. package/public/chunk-SJODT5UV.js +0 -1
  166. package/public/chunk-T5DOWV7T.js +0 -1
  167. package/public/chunk-TUN7H57E.js +0 -1
  168. package/public/chunk-UY2KM7QI.js +0 -19
  169. package/public/chunk-UYPJZGAK.js +0 -1
  170. package/public/chunk-W5CPGK2R.js +0 -1
  171. package/public/chunk-WAOYNYGN.js +0 -1
  172. package/public/chunk-WFEKJT5W.js +0 -1
  173. package/public/chunk-WH4DTGEJ.js +0 -1
  174. package/public/chunk-WYUJZ326.js +0 -1
  175. package/public/chunk-Y7SL5IWD.js +0 -1
  176. package/public/chunk-ZHRPBG7M.js +0 -5
  177. package/public/chunk-ZT6IXE6R.js +0 -1
  178. package/public/main-5MJHMVKI.js +0 -1
@@ -1,118 +0,0 @@
1
- import type { Buffer } from 'node:buffer';
2
- export interface StartupConfig {
3
- host?: '::' | '0.0.0.0' | string;
4
- httpsOptions?: {
5
- key?: Buffer;
6
- cert?: Buffer;
7
- pfx?: Buffer;
8
- passphrase?: string;
9
- };
10
- cspWsOverride?: string;
11
- debug?: boolean;
12
- webroot?: string;
13
- }
14
- interface PluginChildBridge {
15
- username: string;
16
- port?: number;
17
- pin?: string;
18
- name?: string;
19
- manufacturer?: string;
20
- model?: string;
21
- firmwareRevision?: string;
22
- env?: {
23
- DEBUG?: string;
24
- NODE_OPTIONS?: string;
25
- };
26
- }
27
- export interface PlatformConfig {
28
- platform: string;
29
- name?: string;
30
- _bridge?: PluginChildBridge;
31
- [key: string]: any;
32
- }
33
- export interface AccessoryConfig {
34
- accessory: string;
35
- name: string;
36
- _bridge?: PluginChildBridge;
37
- [key: string]: any;
38
- }
39
- export interface HomebridgeConfig {
40
- bridge: {
41
- username: string;
42
- pin: string;
43
- name: string;
44
- port: number;
45
- advertiser?: 'avahi' | 'resolved' | 'ciao' | 'bonjour-hap';
46
- bind?: string | string[];
47
- manufacturer?: string;
48
- model?: string;
49
- firmwareRevision?: string;
50
- };
51
- mdns?: {
52
- interface?: string | string[];
53
- legacyAdvertiser?: boolean;
54
- };
55
- ports?: {
56
- start?: number;
57
- end?: number;
58
- };
59
- platforms?: PlatformConfig[];
60
- accessories?: AccessoryConfig[];
61
- plugins?: string[];
62
- disabledPlugins?: string[];
63
- }
64
- export interface HomebridgeUiConfig {
65
- name: string;
66
- port: number;
67
- host?: '::' | '0.0.0.0' | string;
68
- webroot?: string;
69
- proxyHost?: string;
70
- auth: 'form' | 'none';
71
- theme: string;
72
- lightingMode: 'auto' | 'light' | 'dark';
73
- menuMode?: 'default' | 'freeze';
74
- sudo?: boolean;
75
- restart?: string;
76
- lang?: string;
77
- log?: {
78
- method?: 'file' | 'custom' | 'systemd' | 'native';
79
- command?: string;
80
- path?: string;
81
- service?: string;
82
- maxSize?: number;
83
- truncateSize?: number;
84
- };
85
- ssl?: {
86
- key?: string;
87
- cert?: string;
88
- pfx?: string;
89
- passphrase?: string;
90
- };
91
- accessoryControl?: {
92
- debug?: boolean;
93
- instanceBlacklist?: string[];
94
- };
95
- plugins?: {
96
- hideUpdatesFor?: string[];
97
- alwaysShowBetas?: boolean;
98
- };
99
- temp?: string;
100
- tempUnits?: string;
101
- wallpaper?: string;
102
- linux?: {
103
- shutdown?: string;
104
- restart?: string;
105
- };
106
- debug?: boolean;
107
- sessionTimeout?: number;
108
- homebridgePackagePath?: string;
109
- scheduledBackupPath?: string;
110
- scheduledBackupDisable?: boolean;
111
- disableServerMetricsMonitoring?: boolean;
112
- terminal?: {
113
- persistence?: boolean;
114
- hideWarning?: boolean;
115
- bufferSize?: number;
116
- };
117
- }
118
- export {};
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=config.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.interfaces.js","sourceRoot":"","sources":["../../../src/core/config/config.interfaces.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- export declare class SpaHtmlService {
2
- static updateIndexHtml(webroot: string): Promise<void>;
3
- private static normalizeWebroot;
4
- private static transformHtmlForWebroot;
5
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SpaHtmlService = void 0;
7
- const node_path_1 = require("node:path");
8
- const node_process_1 = __importDefault(require("node:process"));
9
- const fs_extra_1 = require("fs-extra");
10
- class SpaHtmlService {
11
- static async updateIndexHtml(webroot) {
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
- }
16
- const originalHtml = await (0, fs_extra_1.readFile)(indexPath, 'utf-8');
17
- const normalizedWebroot = this.normalizeWebroot(webroot);
18
- const modifiedHtml = this.transformHtmlForWebroot(originalHtml, normalizedWebroot);
19
- await (0, fs_extra_1.writeFile)(indexPath, modifiedHtml);
20
- }
21
- static normalizeWebroot(webroot) {
22
- if (!webroot || webroot === '/') {
23
- return '';
24
- }
25
- return webroot.replace(/\/+/g, '/').replace(/^\/+|\/+$/g, '');
26
- }
27
- static transformHtmlForWebroot(html, webroot) {
28
- const baseHref = webroot ? `/${webroot}/` : '/';
29
- return html
30
- .replace(/<base href="[^"]*"(\s*)\/?>/g, `<base href="${baseHref}"$1/>`)
31
- .replace(/href="\/(?:.*?\/)?assets\//g, 'href="assets/')
32
- .replace(/href="\/(?:.*?\/)?favicon\.ico"/g, 'href="favicon.ico"')
33
- .replace(/href="\/(?:.*?\/)?([^"/]+\.(png|svg|webmanifest))"/g, 'href="$1"')
34
- .replace(/src="\/(?:.*?\/)?assets\//g, 'src="assets/');
35
- }
36
- }
37
- exports.SpaHtmlService = SpaHtmlService;
38
- //# sourceMappingURL=spa-html.service.js.map
@@ -1 +0,0 @@
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,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;IAC/D,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,6BAA6B,EAAE,eAAe,CAAC;aACvD,OAAO,CAAC,kCAAkC,EAAE,oBAAoB,CAAC;aACjE,OAAO,CAAC,qDAAqD,EAAE,WAAW,CAAC;aAC3E,OAAO,CAAC,4BAA4B,EAAE,cAAc,CAAC,CAAA;IAC1D,CAAC;CACF;AA7CD,wCA6CC"}
@@ -1,4 +0,0 @@
1
- export interface LogTermSize {
2
- cols: number;
3
- rows: number;
4
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=log.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"log.interfaces.js","sourceRoot":"","sources":["../../../src/modules/log/log.interfaces.ts"],"names":[],"mappings":""}
@@ -1,8 +0,0 @@
1
- import type { EventEmitter } from 'node:events';
2
- export interface TermSize {
3
- cols: number;
4
- rows: number;
5
- }
6
- export interface WsEventEmitter extends EventEmitter {
7
- disconnect: () => void;
8
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=terminal.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terminal.interfaces.js","sourceRoot":"","sources":["../../../../src/modules/platform-tools/terminal/terminal.interfaces.ts"],"names":[],"mappings":""}
@@ -1,211 +0,0 @@
1
- export interface HomebridgePlugin {
2
- name: string;
3
- private: boolean;
4
- displayName?: string;
5
- description?: string;
6
- keywords?: string[];
7
- verifiedPlugin?: boolean;
8
- verifiedPlusPlugin?: boolean;
9
- icon?: string;
10
- publicPackage?: boolean;
11
- installedVersion?: string;
12
- latestVersion?: string;
13
- lastUpdated?: string;
14
- updateAvailable?: boolean;
15
- updateEngines?: {
16
- homebridge?: string;
17
- node?: string;
18
- };
19
- updateTag?: string;
20
- installPath?: string;
21
- globalInstall?: boolean;
22
- settingsSchema?: boolean;
23
- disabled?: boolean;
24
- links?: {
25
- npm?: string;
26
- homepage?: string;
27
- bugs?: string;
28
- };
29
- author?: string;
30
- engines?: {
31
- homebridge?: string;
32
- node?: string;
33
- };
34
- funding?: NpmFunding;
35
- isHbScoped?: boolean;
36
- isHbMaintained?: boolean;
37
- newHbScope?: {
38
- from: string;
39
- to: string;
40
- switch: string;
41
- };
42
- }
43
- export interface HomebridgePluginUiMetadata {
44
- devServer: null | string;
45
- publicPath: string;
46
- serverPath: string;
47
- plugin: HomebridgePlugin;
48
- }
49
- export interface HomebridgePluginVersions {
50
- tags: Record<string, string>;
51
- versions: {
52
- [key: string]: IPackageJson;
53
- };
54
- }
55
- export interface INpmPerson {
56
- name?: string;
57
- email?: string;
58
- homepage?: string;
59
- username?: string;
60
- url?: string;
61
- }
62
- export interface INpmRegistryModule {
63
- '_id': string;
64
- '_rev': string;
65
- 'name': string;
66
- 'dist-tags': {
67
- latest: string;
68
- [key: string]: string;
69
- };
70
- 'versions': {
71
- [key: string]: IPackageJson;
72
- };
73
- 'time': {
74
- created: string;
75
- modified: string;
76
- [key: string]: string;
77
- };
78
- 'maintainers': INpmPerson[];
79
- 'description': string;
80
- 'homepage': string;
81
- 'keywords': string[];
82
- 'repository': {
83
- type: string;
84
- url: string;
85
- };
86
- 'author': INpmPerson;
87
- 'bugs': {
88
- email?: string;
89
- url?: string;
90
- };
91
- 'license': string;
92
- 'readme': string;
93
- 'readmeFilename': string;
94
- }
95
- export interface INpmSearchResultItem {
96
- package: {
97
- name: string;
98
- scope: string;
99
- version: string;
100
- description: string;
101
- keywords: string[];
102
- date: string;
103
- links: {
104
- npm: string;
105
- homebridge?: string;
106
- repository?: string;
107
- bugs?: string;
108
- };
109
- author: INpmPerson;
110
- publisher: INpmPerson;
111
- maintainers: INpmPerson[];
112
- };
113
- flags: {
114
- unstable: boolean;
115
- };
116
- score: {
117
- final: number;
118
- detail: {
119
- quality: number;
120
- popularity: number;
121
- maintenance: number;
122
- };
123
- };
124
- searchScore: number;
125
- }
126
- export interface INpmSearchResults {
127
- objects: INpmSearchResultItem[];
128
- }
129
- export interface IPackageJson {
130
- name: string;
131
- displayName?: string;
132
- version?: string;
133
- description?: string;
134
- keywords?: string[];
135
- homepage?: string;
136
- bugs?: string | {
137
- email?: string;
138
- url?: string;
139
- };
140
- license?: string;
141
- author?: string | INpmPerson;
142
- maintainers?: INpmPerson[];
143
- contributors?: string[] | INpmPerson[];
144
- funding?: NpmFunding;
145
- files?: string[];
146
- main?: string;
147
- bin?: string | {
148
- [key: string]: string;
149
- };
150
- repository?: string | {
151
- type: string;
152
- url: string;
153
- };
154
- scripts?: {
155
- [key: string]: string;
156
- };
157
- dependencies?: {
158
- [key: string]: string;
159
- };
160
- devDependencies?: {
161
- [key: string]: string;
162
- };
163
- peerDependencies?: {
164
- [key: string]: string;
165
- };
166
- optionalDependencies?: {
167
- [key: string]: string;
168
- };
169
- bundledDependencies?: string[];
170
- engines?: {
171
- [key: string]: string;
172
- };
173
- os?: string[];
174
- cpu?: string[];
175
- preferGlobal?: boolean;
176
- private?: boolean;
177
- publishConfig?: {
178
- registry?: string;
179
- };
180
- deprecated?: string;
181
- }
182
- export type NpmFunding = {
183
- type: string;
184
- url: string;
185
- } | string | Array<{
186
- type: string;
187
- url: string;
188
- } | string>;
189
- export interface PluginAlias {
190
- pluginAlias: null | string;
191
- pluginType: null | 'platform' | 'accessory';
192
- }
193
- export interface PluginListNewScopeItem {
194
- from: string;
195
- to: string;
196
- switch: string;
197
- }
198
- export interface PluginListItem {
199
- c?: string;
200
- h?: 1;
201
- i?: string;
202
- m?: 1;
203
- a?: string;
204
- n?: string;
205
- s?: PluginListNewScopeItem;
206
- v?: 1;
207
- p?: 1;
208
- }
209
- export interface PluginListData {
210
- data: Record<string, PluginListItem>;
211
- }
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=plugins.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugins.interfaces.js","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.interfaces.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- export declare enum HomebridgeStatus {
2
- OK = "ok",
3
- UP = "up",
4
- DOWN = "down"
5
- }
6
- export interface HomebridgeStatusUpdate {
7
- status: HomebridgeStatus;
8
- paired?: null | boolean;
9
- setupUri?: null | string;
10
- name?: string;
11
- username?: string;
12
- pin?: string;
13
- }
14
- export interface DockerRelease {
15
- tag_name: string;
16
- published_at: string;
17
- prerelease: boolean;
18
- body: string;
19
- }
20
- export interface DockerReleaseInfo {
21
- version: string;
22
- publishedAt: string;
23
- isPrerelease: boolean;
24
- isTest: boolean;
25
- testTag: 'beta' | 'test' | null;
26
- isLatestStable: boolean;
27
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HomebridgeStatus = void 0;
4
- var HomebridgeStatus;
5
- (function (HomebridgeStatus) {
6
- HomebridgeStatus["OK"] = "ok";
7
- HomebridgeStatus["UP"] = "up";
8
- HomebridgeStatus["DOWN"] = "down";
9
- })(HomebridgeStatus || (exports.HomebridgeStatus = HomebridgeStatus = {}));
10
- //# sourceMappingURL=status.interfaces.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.interfaces.js","sourceRoot":"","sources":["../../../src/modules/status/status.interfaces.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,6BAAS,CAAA;IACT,6BAAS,CAAA;IACT,iCAAa,CAAA;AACf,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B"}
@@ -1 +0,0 @@
1
- import{d as u,g as s}from"./chunk-LV5TYHZ7.js";import{k as p,n as l,q as d}from"./chunk-M5SPFGD5.js";import{Xa as n,ea as c,fa as i,h as f,ja as e,w as m}from"./chunk-ZHRPBG7M.js";var a=(()=>{class t{$api=e(d);$router=e(u);$toastr=e(l);$translate=e(p);resolve(){return f(this,null,function*(){try{let o=yield m(this.$api.get("/config-editor"));return JSON.stringify(o,null,4)}catch(o){console.error(o),this.$toastr.error(o.message,this.$translate.instant("toast.title_error")),this.$router.navigate(["/"])}})}static \u0275fac=function(r){return new(r||t)};static \u0275prov=c({token:t,factory:t.\u0275fac})}return t})();var y=[{path:"",loadComponent:()=>import("./chunk-UY2KM7QI.js").then(t=>t.ConfigEditorComponent),resolve:{config:a}}],v=(()=>{class t{static \u0275fac=function(r){return new(r||t)};static \u0275mod=n({type:t});static \u0275inj=i({imports:[s.forChild(y),s]})}return t})();var T=(()=>{class t{static \u0275fac=function(r){return new(r||t)};static \u0275mod=n({type:t});static \u0275inj=i({providers:[a],imports:[v]})}return t})();export{T as ConfigEditorModule};
@@ -1 +0,0 @@
1
- import{g as r}from"./chunk-LV5TYHZ7.js";import{Xa as e,fa as t}from"./chunk-ZHRPBG7M.js";var m=[{path:"",loadComponent:()=>import("./chunk-4QX2JFQ3.js").then(o=>o.PowerOptionsComponent)}],n=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[r.forChild(m),r]})}return o})();var d=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[n]})}return o})();export{d as PowerOptionsModule};
@@ -1 +0,0 @@
1
- import{a as B}from"./chunk-3IUIBZIG.js";import{n as k,t as $}from"./chunk-QHDPBN4J.js";import"./chunk-D2RHA7X2.js";import{d as P}from"./chunk-LV5TYHZ7.js";import{b as V}from"./chunk-SJODT5UV.js";import{k as y,l as T,n as I,q as O}from"./chunk-M5SPFGD5.js";import{Db as b,Gb as m,Ib as w,La as i,Vb as c,Wa as h,Wb as S,Xb as d,ja as p,lb as f,mb as v,mc as a,nc as s,oa as u,pa as _,rb as g,sb as o,tb as r,ub as C}from"./chunk-ZHRPBG7M.js";function H(e,x){if(e&1){let t=b();o(0,"p",5)(1,"button",6),m("click",function(){u(t);let n=w();return _(n.restartServer())}),c(2),a(3,"translate"),r()()}e&2&&(i(2),d(" ",s(3,1,"menu.linux.label_restart_server")," "))}function D(e,x){if(e&1){let t=b();o(0,"p",5)(1,"button",6),m("click",function(){u(t);let n=w();return _(n.shutdownServer())}),c(2),a(3,"translate"),r()()}e&2&&(i(2),d(" ",s(3,1,"menu.linux.label_shutdown_server")," "))}function R(e,x){if(e&1){let t=b();o(0,"p",5)(1,"button",6),m("click",function(){u(t);let n=w();return _(n.dockerRestartContainer())}),c(2),a(3,"translate"),r()()}e&2&&(i(2),d(" ",s(3,1,"menu.docker.restart_container")," "))}var K=(()=>{class e{$api=p(O);$modal=p(k);$router=p(P);$settings=p(V);$toastr=p(I);$translate=p(y);canShutdownRestartHost=this.$settings.env.canShutdownRestartHost;runningInDocker=this.$settings.env.runningInDocker;restartHomebridge(){this.$router.navigate(["/restart"])}restartHomebridgeService(){this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{this.$router.navigate(["/restart"])},error:t=>{console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}restartServer(){this.$router.navigate(["/platform-tools/linux/restart-server"])}shutdownServer(){let t=this.$modal.open(B,{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-power-off primary-text",t.result.then(()=>{this.$router.navigate(["/platform-tools/linux/shutdown-server"])}).catch(()=>{})}dockerRestartContainer(){this.$router.navigate(["/platform-tools/docker/restart-container"])}static \u0275fac=function(l){return new(l||e)};static \u0275cmp=h({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-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(l,n){l&1&&(o(0,"div",0)(1,"h3",1),c(2),a(3,"translate"),r()(),o(4,"div",2)(5,"div",3),C(6,"i",4),r(),o(7,"p",5)(8,"button",6),m("click",function(){return n.restartHomebridge()}),c(9),a(10,"translate"),r()(),o(11,"p",5)(12,"button",7),a(13,"translate"),m("click",function(){return n.restartHomebridgeService()}),c(14),a(15,"translate"),r()(),f(16,H,4,3,"p",5),f(17,D,4,3,"p",5),f(18,R,4,3,"p",5),r()),l&2&&(i(2),S(s(3,8,"menu.restart.title")),i(7),d(" ",s(10,10,"menu.hbrestart.confirm_hb")," "),i(3),g("openDelay",150)("ngbTooltip",s(13,12,"reset.force_restart_hb_help_text")),i(2),d(" ",s(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:[$,T],encapsulation:2})}return e})();export{K as PowerOptionsComponent};
@@ -1 +0,0 @@
1
- import{k as v,l as E,n as _,q as h}from"./chunk-M5SPFGD5.js";import{Ib as u,La as n,Vb as o,Wa as d,Wb as a,ja as l,lb as c,mb as x,mc as p,nc as s,vb as i,wb as e,xb as f}from"./chunk-ZHRPBG7M.js";function y(t,w){if(t&1&&(i(0,"div",7),o(1),e()),t&2){let r=u();n(),a(r.error)}}function C(t,w){t&1&&(i(0,"p",8),o(1),p(2,"translate"),e()),t&2&&(n(),a(s(2,1,"platform.linux.server_will_power_down")))}var B=(()=>{class t{$api=l(h);$toastr=l(_);$translate=l(v);error=!1;ngOnInit(){this.$api.put("/platform-tools/linux/shutdown-host",{}).subscribe({error:r=>{console.error(r),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"))}})}static \u0275fac=function(m){return new(m||t)};static \u0275cmp=d({type:t,selectors:[["ng-component"]],decls:13,vars:7,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-power-off",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"alert","alert-error","my-4"],[1,"grey-text"]],template:function(m,S){m&1&&(i(0,"div",0)(1,"h3",1),o(2),p(3,"translate"),e()(),i(4,"div",2)(5,"div",3),f(6,"i",4),e(),i(7,"div",5)(8,"h4",6),o(9),p(10,"translate"),e(),c(11,y,2,1,"div",7)(12,C,3,3,"p",8),e()()),m&2&&(n(2),a(s(3,3,"menu.restart.title")),n(7),a(s(10,5,"platform.linux.shutting_down_server")),n(2),x(S.error?11:12))},dependencies:[E],encapsulation:2})}return t})();export{B as ShutdownLinuxComponent};
@@ -1 +0,0 @@
1
- import{a as n}from"./chunk-K2EZIL6H.js";import{g as i}from"./chunk-LV5TYHZ7.js";import"./chunk-SJODT5UV.js";import"./chunk-M5SPFGD5.js";import{Xa as r,fa as o}from"./chunk-ZHRPBG7M.js";var a=[{path:"",loadComponent:()=>import("./chunk-QXFI56AN.js").then(t=>t.SetupWizardComponent)}],u=(()=>{class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=r({type:t});static \u0275inj=o({imports:[i.forChild(a),i]})}return t})();var l=(()=>{class t{static \u0275fac=function(e){return new(e||t)};static \u0275mod=r({type:t});static \u0275inj=o({providers:[n],imports:[u]})}return t})();export{l as SetupWizardModule};