homebridge-config-ui-x 5.1.1-beta.0 → 5.2.1-beta.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 (78) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/core/auth/auth.controller.d.ts +6 -0
  3. package/dist/core/config/config.service.d.ts +9 -0
  4. package/dist/core/config/config.service.js +3 -0
  5. package/dist/core/config/config.service.js.map +1 -1
  6. package/dist/globalDefaults.js +3 -0
  7. package/dist/globalDefaults.js.map +1 -1
  8. package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +1 -0
  9. package/dist/modules/platform-tools/terminal/terminal.gateway.js +9 -0
  10. package/dist/modules/platform-tools/terminal/terminal.gateway.js.map +1 -1
  11. package/dist/modules/platform-tools/terminal/terminal.service.d.ts +9 -0
  12. package/dist/modules/platform-tools/terminal/terminal.service.js +162 -6
  13. package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
  14. package/package.json +1 -1
  15. package/public/3rdpartylicenses.txt +8 -8
  16. package/public/{chunk-3BZJVOH5.js → chunk-3CGQAVTO.js} +1 -1
  17. package/public/{chunk-MCMZEYD7.js → chunk-3UMJ5CQA.js} +1 -1
  18. package/public/{chunk-QUG667FE.js → chunk-4FYMGP2C.js} +1 -1
  19. package/public/{chunk-PT3M6FNU.js → chunk-6DRTNFFG.js} +1 -1
  20. package/public/{chunk-TUP5UICZ.js → chunk-75PMKSPZ.js} +1 -1
  21. package/public/{chunk-DX22UB2F.js → chunk-7E7D44MP.js} +1 -1
  22. package/public/{chunk-SUSV2E74.js → chunk-7TDKXVER.js} +1 -1
  23. package/public/{chunk-CFKODE5L.js → chunk-B6M4NFK4.js} +1 -1
  24. package/public/{chunk-2AP56V3B.js → chunk-BKOT5UDH.js} +1 -1
  25. package/public/chunk-BSZ6MHFZ.js +9 -0
  26. package/public/{chunk-DNQY7FLD.js → chunk-BX4XVEO4.js} +1 -1
  27. package/public/{chunk-KXG3ZHGJ.js → chunk-C2CT4LY4.js} +1 -1
  28. package/public/chunk-CCLDXHX2.js +1 -0
  29. package/public/{chunk-QGK26M64.js → chunk-CO6QU5LV.js} +1 -1
  30. package/public/chunk-DZVND4LU.js +1 -0
  31. package/public/{chunk-JU56SZWJ.js → chunk-EZFYB24A.js} +1 -1
  32. package/public/{chunk-LGQUNDIB.js → chunk-FJEG263P.js} +1 -1
  33. package/public/{chunk-Z52D6ULR.js → chunk-FXWIHKO5.js} +1 -1
  34. package/public/{chunk-KUIQHKX2.js → chunk-H2DPQZX6.js} +1 -1
  35. package/public/{chunk-M3DIGVXU.js → chunk-H53QZMSO.js} +7 -7
  36. package/public/{chunk-FV7DLVE7.js → chunk-HR52CP7A.js} +1 -1
  37. package/public/{chunk-CDKYXLDF.js → chunk-HSXFYK52.js} +1 -1
  38. package/public/chunk-JNVQNXBV.js +1 -0
  39. package/public/{chunk-7DIMLH5D.js → chunk-JQU3VHOJ.js} +1 -1
  40. package/public/chunk-JY3CJSW4.js +5 -0
  41. package/public/{chunk-OIIOJTZ2.js → chunk-JZOVPGU2.js} +1 -1
  42. package/public/{chunk-XGGZ3VNS.js → chunk-LFHZLZ3Q.js} +1 -1
  43. package/public/{chunk-2QQJ65W4.js → chunk-LPHQ2HI2.js} +1 -1
  44. package/public/chunk-LVX54I6U.js +1 -0
  45. package/public/{chunk-YXEURO5W.js → chunk-MLIKNVBS.js} +1 -1
  46. package/public/{chunk-BUOH6KB3.js → chunk-MQ2DLA5C.js} +1 -1
  47. package/public/{chunk-P2XANLPJ.js → chunk-NM3SKATX.js} +1 -1
  48. package/public/{chunk-ICDIUS7C.js → chunk-NZH45CJ6.js} +1 -1
  49. package/public/{chunk-6NQHDYZC.js → chunk-OJKR2ACE.js} +1 -1
  50. package/public/{chunk-NGOR3O26.js → chunk-OLHWL3X3.js} +1 -1
  51. package/public/{chunk-TO6MXDZD.js → chunk-QPJDKZ4R.js} +1 -1
  52. package/public/{chunk-6CYOWXPC.js → chunk-TDEMBZYO.js} +1 -1
  53. package/public/chunk-TRHU67HN.js +1 -0
  54. package/public/{chunk-UZPETO2V.js → chunk-TWCCRPYZ.js} +1 -1
  55. package/public/{chunk-GXNH7FPR.js → chunk-VD2ASONF.js} +1 -1
  56. package/public/{chunk-JWYYEHVH.js → chunk-WJVKOYRQ.js} +1 -1
  57. package/public/{chunk-GHTOXALB.js → chunk-X3TTVDST.js} +1 -1
  58. package/public/chunk-XDKL4B5F.js +1 -0
  59. package/public/{chunk-B2CTYFTT.js → chunk-XNZTTVNJ.js} +1 -1
  60. package/public/{chunk-HRK2HEZJ.js → chunk-YQPMI4K7.js} +1 -1
  61. package/public/chunk-ZHCRWU3W.js +4 -0
  62. package/public/{chunk-PBG2UN64.js → chunk-ZZT64OP2.js} +1 -1
  63. package/public/index.html +2 -2
  64. package/public/main-WUS562GC.js +1 -0
  65. package/public/styles-7PPYP3N7.css +1 -0
  66. package/dist/bin/standalone.d.ts +0 -2
  67. package/dist/bin/standalone.js +0 -58
  68. package/dist/bin/standalone.js.map +0 -1
  69. package/public/chunk-3HUPMC4Y.js +0 -1
  70. package/public/chunk-K276A6ZR.js +0 -4
  71. package/public/chunk-LKAK7CZE.js +0 -1
  72. package/public/chunk-MDRD2YFG.js +0 -1
  73. package/public/chunk-NQDYN4CZ.js +0 -7
  74. package/public/chunk-QMWXORJ2.js +0 -1
  75. package/public/chunk-QOU7SWHO.js +0 -1
  76. package/public/chunk-W2E2NCVM.js +0 -5
  77. package/public/main-B76TOBEX.js +0 -1
  78. package/public/styles-ZKWHTEN5.css +0 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,22 @@
2
2
 
3
3
  All notable changes to `homebridge-config-ui-x` will be documented in this file. This project tries to adhere to [Semantic Versioning](http://semver.org/).
4
4
 
5
+ ## v5.2.1 (Unreleased)
6
+
7
+ ### UI Changes
8
+
9
+ - terminal session persistence and macos shell optimization (@seidnerj)
10
+
11
+ ### Other Changes
12
+
13
+ - remove now unused `standalone.ts` file
14
+
15
+ ### Homebridge Dependencies
16
+
17
+ - `@homebridge/hap-client` @ `v3.0.0`
18
+ - `@homebridge/node-pty-prebuilt-multiarch` @ `v0.13.1`
19
+ - `@homebridge/plugin-ui-utils` @ `v2.1.0`
20
+
5
21
  ## v5.2.0 (2025-07-17)
6
22
 
7
23
  ### Node.js Version
@@ -29,6 +29,9 @@ export declare class AuthController {
29
29
  serverTimestamp: string;
30
30
  theme: string;
31
31
  menuMode: "default" | "freeze";
32
+ terminalPersistence: boolean;
33
+ terminalShowWarning: boolean;
34
+ terminalBufferSize: any;
32
35
  } | {
33
36
  env: {
34
37
  enableAccessories: boolean;
@@ -90,6 +93,9 @@ export declare class AuthController {
90
93
  lightingMode: "auto" | "light" | "dark";
91
94
  serverTimestamp: string;
92
95
  theme: string;
96
+ terminalPersistence: boolean;
97
+ terminalShowWarning: boolean;
98
+ terminalBufferSize: any;
93
99
  };
94
100
  getCustomWallpaper(): import("fs").ReadStream;
95
101
  getToken(): Promise<{
@@ -76,6 +76,9 @@ export declare class ConfigService {
76
76
  scheduledBackupPath?: string;
77
77
  scheduledBackupDisable?: boolean;
78
78
  disableServerMetricsMonitoring?: boolean;
79
+ terminalPersistence?: boolean;
80
+ terminalShowWarning?: boolean;
81
+ terminalBufferSize?: number;
79
82
  };
80
83
  private bridgeFreeze;
81
84
  private uiFreeze;
@@ -108,6 +111,9 @@ export declare class ConfigService {
108
111
  serverTimestamp: string;
109
112
  theme: string;
110
113
  menuMode: "default" | "freeze";
114
+ terminalPersistence: boolean;
115
+ terminalShowWarning: boolean;
116
+ terminalBufferSize: any;
111
117
  } | {
112
118
  env: {
113
119
  enableAccessories: boolean;
@@ -169,6 +175,9 @@ export declare class ConfigService {
169
175
  lightingMode: "auto" | "light" | "dark";
170
176
  serverTimestamp: string;
171
177
  theme: string;
178
+ terminalPersistence: boolean;
179
+ terminalShowWarning: boolean;
180
+ terminalBufferSize: any;
172
181
  };
173
182
  uiRestartRequired(): Promise<boolean>;
174
183
  private freezeUiSettings;
@@ -114,6 +114,9 @@ let ConfigService = class ConfigService {
114
114
  serverTimestamp: new Date().toISOString(),
115
115
  theme: this.ui.theme || 'deep-purple',
116
116
  menuMode: this.ui.menuMode || 'default',
117
+ terminalPersistence: Boolean(this.ui.terminalPersistence),
118
+ terminalShowWarning: Boolean(this.ui.terminalShowWarning),
119
+ terminalBufferSize: this.ui.terminalBufferSize || globalThis.terminal.bufferSize,
117
120
  };
118
121
  if (!authorized) {
119
122
  return toReturn;
@@ -1 +1 @@
1
- {"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../../src/core/config/config.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.service.js","sourceRoot":"","sources":["../../../src/core/config/config.service.ts"],"names":[],"mappings":"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"}
@@ -4,4 +4,7 @@ globalThis.backup = {
4
4
  maxBackupFileSize: 10 * 1024 * 1024,
5
5
  maxBackupFileSizeText: '10MB',
6
6
  };
7
+ globalThis.terminal = {
8
+ bufferSize: 50000,
9
+ };
7
10
  //# sourceMappingURL=globalDefaults.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"globalDefaults.js","sourceRoot":"","sources":["../src/globalDefaults.ts"],"names":[],"mappings":"AACA,UAAU,CAAC,MAAM,GAAG;IAElB,aAAa,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IAC/B,iBAAiB,EAAE,MAAM;IAEzB,iBAAiB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IACnC,qBAAqB,EAAE,MAAM;CAC9B,CAAA"}
1
+ {"version":3,"file":"globalDefaults.js","sourceRoot":"","sources":["../src/globalDefaults.ts"],"names":[],"mappings":"AACA,UAAU,CAAC,MAAM,GAAG;IAElB,aAAa,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IAC/B,iBAAiB,EAAE,MAAM;IAEzB,iBAAiB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IACnC,qBAAqB,EAAE,MAAM;CAC9B,CAAA;AAED,UAAU,CAAC,QAAQ,GAAG;IAEpB,UAAU,EAAE,KAAK;CAClB,CAAA"}
@@ -4,4 +4,5 @@ export declare class TerminalGateway {
4
4
  private readonly terminalService;
5
5
  constructor(terminalService: TerminalService);
6
6
  startTerminalSession(client: WsEventEmitter, payload: TermSize): Promise<void>;
7
+ destroyPersistentSession(): void;
7
8
  }
@@ -21,6 +21,9 @@ let TerminalGateway = class TerminalGateway {
21
21
  startTerminalSession(client, payload) {
22
22
  return this.terminalService.startSession(client, payload);
23
23
  }
24
+ destroyPersistentSession() {
25
+ return this.terminalService.destroyPersistentSession();
26
+ }
24
27
  };
25
28
  exports.TerminalGateway = TerminalGateway;
26
29
  __decorate([
@@ -29,6 +32,12 @@ __decorate([
29
32
  __metadata("design:paramtypes", [Object, Object]),
30
33
  __metadata("design:returntype", void 0)
31
34
  ], TerminalGateway.prototype, "startTerminalSession", null);
35
+ __decorate([
36
+ (0, websockets_1.SubscribeMessage)('destroy-persistent-session'),
37
+ __metadata("design:type", Function),
38
+ __metadata("design:paramtypes", []),
39
+ __metadata("design:returntype", void 0)
40
+ ], TerminalGateway.prototype, "destroyPersistentSession", null);
32
41
  exports.TerminalGateway = TerminalGateway = __decorate([
33
42
  (0, common_1.UseGuards)(ws_admin_guard_1.WsAdminGuard),
34
43
  (0, websockets_1.WebSocketGateway)({
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.gateway.js","sourceRoot":"","sources":["../../../../src/modules/platform-tools/terminal/terminal.gateway.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAA0C;AAC1C,mDAAuE;AAEvE,6EAAuE;AACvE,yDAAoD;AAW7C,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAChD,CAAC;IAGJ,oBAAoB,CAAC,MAAsB,EAAE,OAAiB;QAC5D,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;CACF,CAAA;AATY,0CAAe;AAM1B;IADC,IAAA,6BAAgB,EAAC,eAAe,CAAC;;;;2DAGjC;0BARU,eAAe;IAT3B,IAAA,kBAAS,EAAC,6BAAY,CAAC;IACvB,IAAA,6BAAgB,EAAC;QAChB,SAAS,EAAE,yBAAyB;QACpC,SAAS,EAAE,IAAI;QACf,IAAI,EAAE;YACJ,MAAM,EAAE,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;YAC1D,WAAW,EAAE,IAAI;SAClB;KACF,CAAC;qCAGoC,kCAAe;GAFxC,eAAe,CAS3B"}
1
+ {"version":3,"file":"terminal.gateway.js","sourceRoot":"","sources":["../../../../src/modules/platform-tools/terminal/terminal.gateway.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAA0C;AAC1C,mDAAuE;AAEvE,6EAAuE;AACvE,yDAAoD;AAW7C,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAChD,CAAC;IAGJ,oBAAoB,CAAC,MAAsB,EAAE,OAAiB;QAC5D,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3D,CAAC;IAGD,wBAAwB;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC,wBAAwB,EAAE,CAAA;IACxD,CAAC;CACF,CAAA;AAdY,0CAAe;AAM1B;IADC,IAAA,6BAAgB,EAAC,eAAe,CAAC;;;;2DAGjC;AAGD;IADC,IAAA,6BAAgB,EAAC,4BAA4B,CAAC;;;;+DAG9C;0BAbU,eAAe;IAT3B,IAAA,kBAAS,EAAC,6BAAY,CAAC;IACvB,IAAA,6BAAgB,EAAC;QAChB,SAAS,EAAE,yBAAyB;QACpC,SAAS,EAAE,IAAI;QACf,IAAI,EAAE;YACJ,MAAM,EAAE,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;YAC1D,WAAW,EAAE,IAAI;SAClB;KACF,CAAC;qCAGoC,kCAAe;GAFxC,eAAe,CAc3B"}
@@ -11,8 +11,17 @@ export declare class TerminalService {
11
11
  private logger;
12
12
  private nodePtyService;
13
13
  private ending;
14
+ private static persistentTerminal;
15
+ private static connectedClients;
16
+ private static dataListenerAttached;
17
+ private static terminalBuffer;
18
+ private instanceId;
14
19
  constructor(configService: ConfigService, logger: Logger, nodePtyService: NodePtyService);
20
+ private getPreferredShell;
15
21
  startSession(client: WsEventEmitter, size: TermSize): Promise<void>;
22
+ private createNewTerminal;
23
+ private attachToPersistentTerminal;
24
+ destroyPersistentSession(): void;
16
25
  }
17
26
  export interface WsEventEmitter extends EventEmitter {
18
27
  disconnect: () => void;
@@ -11,20 +11,30 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
+ var TerminalService_1;
14
15
  Object.defineProperty(exports, "__esModule", { value: true });
15
16
  exports.TerminalService = void 0;
17
+ const node_os_1 = __importDefault(require("node:os"));
16
18
  const node_process_1 = __importDefault(require("node:process"));
17
19
  const common_1 = require("@nestjs/common");
18
20
  const fs_extra_1 = require("fs-extra");
19
21
  const config_service_1 = require("../../../core/config/config.service");
20
22
  const logger_service_1 = require("../../../core/logger/logger.service");
21
23
  const node_pty_service_1 = require("../../../core/node-pty/node-pty.service");
22
- let TerminalService = class TerminalService {
24
+ let TerminalService = TerminalService_1 = class TerminalService {
23
25
  constructor(configService, logger, nodePtyService) {
24
26
  this.configService = configService;
25
27
  this.logger = logger;
26
28
  this.nodePtyService = nodePtyService;
27
29
  this.ending = false;
30
+ this.instanceId = Math.random().toString(36).substring(2, 11);
31
+ this.logger.log(`TerminalService instance created: ${this.instanceId}`);
32
+ }
33
+ async getPreferredShell() {
34
+ if (node_os_1.default.platform() === 'darwin' && await (0, fs_extra_1.pathExists)('/bin/zsh')) {
35
+ return '/bin/zsh';
36
+ }
37
+ return await (0, fs_extra_1.pathExists)('/bin/bash') ? '/bin/bash' : '/bin/sh';
28
38
  }
29
39
  async startSession(client, size) {
30
40
  this.ending = false;
@@ -33,8 +43,17 @@ let TerminalService = class TerminalService {
33
43
  client.disconnect();
34
44
  return;
35
45
  }
36
- this.logger.log('Starting terminal session.');
37
- const shell = await (0, fs_extra_1.pathExists)('/bin/bash') ? '/bin/bash' : '/bin/sh';
46
+ const terminalPersistence = Boolean(this.configService.ui.terminalPersistence);
47
+ if (terminalPersistence) {
48
+ return this.attachToPersistentTerminal(client, size);
49
+ }
50
+ else {
51
+ return this.createNewTerminal(client, size);
52
+ }
53
+ }
54
+ async createNewTerminal(client, size) {
55
+ this.logger.log('Starting new terminal session.');
56
+ const shell = await this.getPreferredShell();
38
57
  const term = this.nodePtyService.spawn(shell, [], {
39
58
  name: 'xterm-color',
40
59
  cols: size.cols,
@@ -45,10 +64,10 @@ let TerminalService = class TerminalService {
45
64
  term.onData((data) => {
46
65
  client.emit('stdout', data);
47
66
  });
48
- term.onExit((code) => {
67
+ term.onExit((exitInfo) => {
49
68
  try {
50
69
  if (!this.ending) {
51
- client.emit('process-exit', code);
70
+ client.emit('process-exit', exitInfo.exitCode);
52
71
  }
53
72
  }
54
73
  catch (e) {
@@ -78,9 +97,146 @@ let TerminalService = class TerminalService {
78
97
  client.on('end', onEnd.bind(this));
79
98
  client.on('disconnect', onEnd.bind(this));
80
99
  }
100
+ async attachToPersistentTerminal(client, size) {
101
+ this.logger.log(`[${this.instanceId}] attachToPersistentTerminal called`);
102
+ if (!TerminalService_1.persistentTerminal) {
103
+ this.logger.log(`[${this.instanceId}] Creating new persistent terminal session.`);
104
+ const shell = await this.getPreferredShell();
105
+ TerminalService_1.persistentTerminal = this.nodePtyService.spawn(shell, [], {
106
+ name: 'xterm-color',
107
+ cols: size.cols,
108
+ rows: size.rows,
109
+ cwd: this.configService.storagePath,
110
+ env: node_process_1.default.env,
111
+ });
112
+ if (!TerminalService_1.dataListenerAttached) {
113
+ this.logger.log(`[${this.instanceId}] Attaching data listener`);
114
+ TerminalService_1.persistentTerminal.onData((data) => {
115
+ try {
116
+ this.logger.debug(`[${this.instanceId}] Terminal output: ${data.length} characters`);
117
+ TerminalService_1.terminalBuffer += data;
118
+ const maxBufferSize = this.configService.ui.terminalBufferSize;
119
+ if (TerminalService_1.terminalBuffer.length > maxBufferSize) {
120
+ TerminalService_1.terminalBuffer = TerminalService_1.terminalBuffer.slice(-maxBufferSize);
121
+ }
122
+ if (TerminalService_1.connectedClients.size > 0) {
123
+ this.logger.log(`[${this.instanceId}] Sending output to ${TerminalService_1.connectedClients.size} connected clients`);
124
+ TerminalService_1.connectedClients.forEach((client) => {
125
+ try {
126
+ client.emit('stdout', data);
127
+ }
128
+ catch (e) {
129
+ this.logger.log(`[${this.instanceId}] Error sending output to a client: ${e}`);
130
+ TerminalService_1.connectedClients.delete(client);
131
+ }
132
+ });
133
+ }
134
+ }
135
+ catch (e) {
136
+ this.logger.log(`[${this.instanceId}] Error sending output to client: ${e}`);
137
+ }
138
+ });
139
+ TerminalService_1.dataListenerAttached = true;
140
+ }
141
+ TerminalService_1.persistentTerminal.onExit((exitInfo) => {
142
+ this.logger.log(`[${this.instanceId}] Persistent terminal exited.`);
143
+ TerminalService_1.connectedClients.forEach((client) => {
144
+ try {
145
+ client.emit('process-exit', exitInfo.exitCode);
146
+ }
147
+ catch (e) {
148
+ TerminalService_1.connectedClients.delete(client);
149
+ }
150
+ });
151
+ TerminalService_1.persistentTerminal = null;
152
+ TerminalService_1.connectedClients.clear();
153
+ TerminalService_1.dataListenerAttached = false;
154
+ TerminalService_1.terminalBuffer = '';
155
+ });
156
+ }
157
+ else {
158
+ this.logger.log(`[${this.instanceId}] Attaching to existing persistent terminal.`);
159
+ try {
160
+ TerminalService_1.persistentTerminal.resize(size.cols, size.rows);
161
+ }
162
+ catch (e) { }
163
+ }
164
+ this.logger.log(`[${this.instanceId}] Cleaning up existing client listeners`);
165
+ client.removeAllListeners('stdin');
166
+ client.removeAllListeners('resize');
167
+ this.logger.log(`[${this.instanceId}] Adding client to connected clients`);
168
+ TerminalService_1.connectedClients.add(client);
169
+ if (TerminalService_1.terminalBuffer && TerminalService_1.terminalBuffer.length > 0) {
170
+ this.logger.log(`[${this.instanceId}] Sending ${TerminalService_1.terminalBuffer.length} chars of buffer to new client`);
171
+ try {
172
+ client.emit('stdout', TerminalService_1.terminalBuffer);
173
+ }
174
+ catch (e) {
175
+ this.logger.log(`[${this.instanceId}] Error sending buffer to client: ${e}`);
176
+ }
177
+ }
178
+ else {
179
+ this.logger.log(`[${this.instanceId}] No buffer to send to new client`);
180
+ }
181
+ this.logger.log(`[${this.instanceId}] Adding stdin and resize listeners`);
182
+ client.on('stdin', (data) => {
183
+ this.logger.debug(`[${this.instanceId}] Received stdin from client: ${data.length} characters`);
184
+ if (TerminalService_1.persistentTerminal) {
185
+ this.logger.debug(`[${this.instanceId}] Writing to persistent terminal: ${data.length} characters`);
186
+ TerminalService_1.persistentTerminal.write(data);
187
+ }
188
+ else {
189
+ this.logger.log(`[${this.instanceId}] No persistent terminal to write to!`);
190
+ }
191
+ });
192
+ client.on('resize', (resize) => {
193
+ this.logger.log(`[${this.instanceId}] Received resize from client`);
194
+ try {
195
+ if (TerminalService_1.persistentTerminal) {
196
+ TerminalService_1.persistentTerminal.resize(resize.cols, resize.rows);
197
+ }
198
+ }
199
+ catch (e) { }
200
+ });
201
+ const onEnd = () => {
202
+ this.logger.log(`[${this.instanceId}] Client disconnecting`);
203
+ client.removeAllListeners('stdin');
204
+ client.removeAllListeners('resize');
205
+ client.removeAllListeners('end');
206
+ client.removeAllListeners('disconnect');
207
+ if (TerminalService_1.connectedClients.has(client)) {
208
+ TerminalService_1.connectedClients.delete(client);
209
+ this.logger.log(`[${this.instanceId}] Removed client from connected clients`);
210
+ }
211
+ this.logger.log(`[${this.instanceId}] Client cleanup complete`);
212
+ };
213
+ client.on('end', onEnd);
214
+ client.on('disconnect', onEnd);
215
+ }
216
+ destroyPersistentSession() {
217
+ this.logger.log(`[${this.instanceId}] Destroying persistent terminal session`);
218
+ if (TerminalService_1.persistentTerminal) {
219
+ try {
220
+ this.logger.log(`[${this.instanceId}] Killing persistent terminal process`);
221
+ TerminalService_1.persistentTerminal.kill();
222
+ }
223
+ catch (e) {
224
+ this.logger.log(`[${this.instanceId}] Error killing persistent terminal: ${e}`);
225
+ }
226
+ TerminalService_1.persistentTerminal = null;
227
+ }
228
+ TerminalService_1.terminalBuffer = '';
229
+ TerminalService_1.dataListenerAttached = false;
230
+ TerminalService_1.connectedClients.clear();
231
+ this.logger.log(`[${this.instanceId}] Persistent terminal session destroyed`);
232
+ }
81
233
  };
82
234
  exports.TerminalService = TerminalService;
83
- exports.TerminalService = TerminalService = __decorate([
235
+ TerminalService.persistentTerminal = null;
236
+ TerminalService.connectedClients = new Set();
237
+ TerminalService.dataListenerAttached = false;
238
+ TerminalService.terminalBuffer = '';
239
+ exports.TerminalService = TerminalService = TerminalService_1 = __decorate([
84
240
  (0, common_1.Injectable)(),
85
241
  __metadata("design:paramtypes", [config_service_1.ConfigService,
86
242
  logger_service_1.Logger,
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.service.js","sourceRoot":"","sources":["../../../../src/modules/platform-tools/terminal/terminal.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminal.service.js","sourceRoot":"","sources":["../../../../src/modules/platform-tools/terminal/terminal.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.1.1-beta.0",
4
+ "version": "5.2.1-beta.0",
5
5
  "description": "A web based management, configuration and control platform for Homebridge.",
6
6
  "author": "oznu <dev@oz.nu>",
7
7
  "license": "MIT",
@@ -825,12 +825,10 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
825
825
  [1]: http://eligrey.com
826
826
 
827
827
  --------------------------------------------------------------------------------
828
- Package: xterm
828
+ Package: @xterm/addon-fit
829
829
  License: "MIT"
830
830
 
831
- Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)
832
- Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)
833
- Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)
831
+ Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)
834
832
 
835
833
  Permission is hereby granted, free of charge, to any person obtaining a copy
836
834
  of this software and associated documentation files (the "Software"), to deal
@@ -851,10 +849,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
851
849
  THE SOFTWARE.
852
850
 
853
851
  --------------------------------------------------------------------------------
854
- Package: xterm-addon-fit
852
+ Package: @xterm/addon-web-links
855
853
  License: "MIT"
856
854
 
857
- Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)
855
+ Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)
858
856
 
859
857
  Permission is hereby granted, free of charge, to any person obtaining a copy
860
858
  of this software and associated documentation files (the "Software"), to deal
@@ -875,10 +873,12 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
875
873
  THE SOFTWARE.
876
874
 
877
875
  --------------------------------------------------------------------------------
878
- Package: xterm-addon-web-links
876
+ Package: @xterm/xterm
879
877
  License: "MIT"
880
878
 
881
- Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)
879
+ Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)
880
+ Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)
881
+ Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)
882
882
 
883
883
  Permission is hereby granted, free of charge, to any person obtaining a copy
884
884
  of this software and associated documentation files (the "Software"), to deal
@@ -1 +1 @@
1
- import{a as D}from"./chunk-MCMZEYD7.js";import"./chunk-FV7DLVE7.js";import{d as E}from"./chunk-QRQBCPWO.js";import{b as R}from"./chunk-QMWXORJ2.js";import{k as O,n as B}from"./chunk-Z52D6ULR.js";import{a as k,b as I}from"./chunk-ZG3HINDJ.js";import"./chunk-K7QEGT3E.js";import{Dc as b,Ec as g,Hc as o,Ib as f,Ic as l,Jb as _,Ob as x,Pb as r,Qb as n,Rb as v,_b as $,ab as i,bc as S,dc as d,id as T,la as m,mb as w,qc as a,ra as C,rc as c,sa as y,sc as h}from"./chunk-V7SOQAC5.js";var U=(t,p)=>({"fas fa-fw fa-spinner fa-spin":t,"far fa-fw fa-check-circle":p}),F=t=>({"grey-text":t}),P=(t,p)=>({"far fa-fw fa-circle":t,"fas fa-fw fa-spinner fa-spin":p});function j(t,p){if(t&1&&(r(0,"div",7),a(1),n()),t&2){let e=d();i(),c(e.error)}}function M(t,p){if(t&1&&(r(0,"p",9),a(1),o(2,"translate"),n(),r(3,"div",10)(4,"div",11)(5,"span"),v(6,"i",12),a(7),o(8,"translate"),n()(),r(9,"div",11)(10,"span",12),v(11,"i",12),a(12),o(13,"translate"),n()()()),t&2){let e=d();i(),c(l(2,6,"restart.please_wait_while_server_restarts")),i(5),x("ngClass",g(12,U,!e.uiOnline,e.uiOnline)),i(),h(" ",l(8,8,"restart.ui_online")," "),i(3),x("ngClass",b(15,F,!e.uiOnline)),i(),x("ngClass",g(17,P,!e.uiOnline,e.uiOnline)),i(),h(" ",l(13,10,"restart.service_ready")," ")}}function V(t,p){if(t&1){let e=$();r(0,"p",15)(1,"button",16),S("click",function(){C(e);let u=d(2);return y(u.viewLogs())}),a(2),o(3,"translate"),n()()}t&2&&(i(2),c(l(3,1,"menu.tooltip_view_logs")))}function z(t,p){if(t&1&&(r(0,"div",8)(1,"p"),a(2),o(3,"translate"),n(),r(4,"p",13),a(5),o(6,"translate"),r(7,"span",14),a(8),n()(),f(9,V,4,3,"p",15),n()),t&2){let e=d();i(2),c(l(3,4,"restart.server_is_taking_long_time_to_restart")),i(3),h(" ",l(6,6,"restart.label_restart_command_executed"),": "),i(3),c(e.resp.command||"End Process"),i(),_(e.uiOnline?9:-1)}}var X=(()=>{class t{$api=m(B);$router=m(E);$settings=m(R);$toastr=m(O);$translate=m(k);$ws=m(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:s=>{this.resp=s,this.checkIfServerUp(),s.restartingUI||(this.uiOnline=!0)},error:s=>{console.error(s),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.$router.navigate(["/logs"])}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.$router.navigate(["/"]))})},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(s){return new(s||t)};static \u0275cmp=w({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(s,u){s&1&&(r(0,"div",0)(1,"h3",1),a(2),o(3,"translate"),n()(),r(4,"div",2)(5,"div",3),v(6,"i",4),n(),r(7,"div",5)(8,"h4",6),a(9),o(10,"translate"),n(),f(11,j,2,1,"div",7)(12,M,14,20),f(13,z,10,8,"div",8),n()()),s&2&&(i(2),c(l(3,4,"menu.restart.title")),i(7),c(l(10,6,"restart.title_restart")),i(2),_(u.error?11:12),i(2),_(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{X as RestartComponent};
1
+ import{a as D}from"./chunk-3UMJ5CQA.js";import"./chunk-HR52CP7A.js";import{d as E}from"./chunk-QRQBCPWO.js";import{b as R}from"./chunk-CCLDXHX2.js";import{k as O,n as B}from"./chunk-FXWIHKO5.js";import{a as k,b as I}from"./chunk-ZG3HINDJ.js";import"./chunk-K7QEGT3E.js";import{Dc as b,Ec as g,Hc as o,Ib as f,Ic as l,Jb as _,Ob as x,Pb as r,Qb as n,Rb as v,_b as $,ab as i,bc as S,dc as d,id as T,la as m,mb as w,qc as a,ra as C,rc as c,sa as y,sc as h}from"./chunk-V7SOQAC5.js";var U=(t,p)=>({"fas fa-fw fa-spinner fa-spin":t,"far fa-fw fa-check-circle":p}),F=t=>({"grey-text":t}),P=(t,p)=>({"far fa-fw fa-circle":t,"fas fa-fw fa-spinner fa-spin":p});function j(t,p){if(t&1&&(r(0,"div",7),a(1),n()),t&2){let e=d();i(),c(e.error)}}function M(t,p){if(t&1&&(r(0,"p",9),a(1),o(2,"translate"),n(),r(3,"div",10)(4,"div",11)(5,"span"),v(6,"i",12),a(7),o(8,"translate"),n()(),r(9,"div",11)(10,"span",12),v(11,"i",12),a(12),o(13,"translate"),n()()()),t&2){let e=d();i(),c(l(2,6,"restart.please_wait_while_server_restarts")),i(5),x("ngClass",g(12,U,!e.uiOnline,e.uiOnline)),i(),h(" ",l(8,8,"restart.ui_online")," "),i(3),x("ngClass",b(15,F,!e.uiOnline)),i(),x("ngClass",g(17,P,!e.uiOnline,e.uiOnline)),i(),h(" ",l(13,10,"restart.service_ready")," ")}}function V(t,p){if(t&1){let e=$();r(0,"p",15)(1,"button",16),S("click",function(){C(e);let u=d(2);return y(u.viewLogs())}),a(2),o(3,"translate"),n()()}t&2&&(i(2),c(l(3,1,"menu.tooltip_view_logs")))}function z(t,p){if(t&1&&(r(0,"div",8)(1,"p"),a(2),o(3,"translate"),n(),r(4,"p",13),a(5),o(6,"translate"),r(7,"span",14),a(8),n()(),f(9,V,4,3,"p",15),n()),t&2){let e=d();i(2),c(l(3,4,"restart.server_is_taking_long_time_to_restart")),i(3),h(" ",l(6,6,"restart.label_restart_command_executed"),": "),i(3),c(e.resp.command||"End Process"),i(),_(e.uiOnline?9:-1)}}var X=(()=>{class t{$api=m(B);$router=m(E);$settings=m(R);$toastr=m(O);$translate=m(k);$ws=m(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:s=>{this.resp=s,this.checkIfServerUp(),s.restartingUI||(this.uiOnline=!0)},error:s=>{console.error(s),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.$router.navigate(["/logs"])}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.$router.navigate(["/"]))})},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(s){return new(s||t)};static \u0275cmp=w({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(s,u){s&1&&(r(0,"div",0)(1,"h3",1),a(2),o(3,"translate"),n()(),r(4,"div",2)(5,"div",3),v(6,"i",4),n(),r(7,"div",5)(8,"h4",6),a(9),o(10,"translate"),n(),f(11,j,2,1,"div",7)(12,M,14,20),f(13,z,10,8,"div",8),n()()),s&2&&(i(2),c(l(3,4,"menu.restart.title")),i(7),c(l(10,6,"restart.title_restart")),i(2),_(u.error?11:12),i(2),_(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{X as RestartComponent};