homebridge-config-ui-x 5.9.0 → 5.9.1-beta.1

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 (138) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/core/auth/auth.controller.d.ts +5 -0
  3. package/dist/core/config/config.interfaces.d.ts +13 -0
  4. package/dist/core/config/config.service.d.ts +9 -0
  5. package/dist/core/config/config.service.js +18 -0
  6. package/dist/core/config/config.service.js.map +1 -1
  7. package/dist/core/config/config.startup.js +48 -17
  8. package/dist/core/config/config.startup.js.map +1 -1
  9. package/dist/core/feature-flags/feature-flags.registry.js +5 -0
  10. package/dist/core/feature-flags/feature-flags.registry.js.map +1 -1
  11. package/dist/core/spa/spa-html.service.d.ts +5 -0
  12. package/dist/core/spa/spa-html.service.js +38 -0
  13. package/dist/core/spa/spa-html.service.js.map +1 -0
  14. package/dist/core/spa/spa.filter.d.ts +3 -0
  15. package/dist/core/spa/spa.filter.js +21 -2
  16. package/dist/core/spa/spa.filter.js.map +1 -1
  17. package/dist/core/ssl/ssl-cert-generator.service.d.ts +15 -0
  18. package/dist/core/ssl/ssl-cert-generator.service.js +127 -0
  19. package/dist/core/ssl/ssl-cert-generator.service.js.map +1 -0
  20. package/dist/globalDefaults.js +3 -0
  21. package/dist/globalDefaults.js.map +1 -1
  22. package/dist/main.js +18 -4
  23. package/dist/main.js.map +1 -1
  24. package/dist/modules/child-bridges/child-bridges.interfaces.d.ts +9 -0
  25. package/dist/modules/config-editor/config-editor.controller.d.ts +3 -0
  26. package/dist/modules/config-editor/config-editor.controller.js +45 -1
  27. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  28. package/dist/modules/config-editor/config-editor.module.js +2 -0
  29. package/dist/modules/config-editor/config-editor.module.js.map +1 -1
  30. package/dist/modules/config-editor/config-editor.service.d.ts +8 -2
  31. package/dist/modules/config-editor/config-editor.service.js +46 -3
  32. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  33. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +1 -1
  34. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  35. package/dist/modules/plugins/plugins.service.js +17 -1
  36. package/dist/modules/plugins/plugins.service.js.map +1 -1
  37. package/dist/modules/server/server.controller.d.ts +50 -0
  38. package/dist/modules/server/server.controller.js +200 -1
  39. package/dist/modules/server/server.controller.js.map +1 -1
  40. package/dist/modules/server/server.service.d.ts +48 -0
  41. package/dist/modules/server/server.service.js +536 -15
  42. package/dist/modules/server/server.service.js.map +1 -1
  43. package/dist/modules/status/status.gateway.d.ts +2 -0
  44. package/dist/modules/status/status.interfaces.d.ts +11 -0
  45. package/dist/modules/status/status.service.d.ts +4 -1
  46. package/dist/modules/status/status.service.js +21 -2
  47. package/dist/modules/status/status.service.js.map +1 -1
  48. package/docs/ssl-upload-pr.md +103 -0
  49. package/package.json +3 -1
  50. package/public/assets/matter.svg +8 -0
  51. package/public/assets/plugin-ui-utils/ui.js +3 -0
  52. package/public/assets/plugin-ui-utils/ui.js.map +1 -1
  53. package/public/{chunk-PK7EWRSF.js → chunk-2CNQY2E7.js} +1 -1
  54. package/public/{chunk-FJCVFWLW.js → chunk-2FNQEOXF.js} +1 -1
  55. package/public/{chunk-7F2HVPC5.js → chunk-2KEG7SYT.js} +1 -1
  56. package/public/{chunk-LRD25TWX.js → chunk-2LXNPXT5.js} +1 -1
  57. package/public/{chunk-U3JDCGCU.js → chunk-2UOYBCTN.js} +1 -1
  58. package/public/{chunk-5PCQVX7H.js → chunk-325LPX6W.js} +1 -1
  59. package/public/{chunk-EUGVBS4N.js → chunk-3E2NZ5JW.js} +1 -1
  60. package/public/{chunk-X3DENUZZ.js → chunk-3IJXQMYZ.js} +1 -1
  61. package/public/{chunk-UHOVCHON.js → chunk-3IZSIVEA.js} +1 -1
  62. package/public/{chunk-WHIRPY75.js → chunk-3XDYZNNE.js} +1 -1
  63. package/public/{chunk-75E7S6CO.js → chunk-4QXLJX7D.js} +1 -1
  64. package/public/{chunk-KW266TAV.js → chunk-57DUDNZJ.js} +1 -1
  65. package/public/{chunk-LWOAR6BY.js → chunk-5ETJWAIW.js} +1 -1
  66. package/public/{chunk-OQ5J7Z5A.js → chunk-5T4JHJYL.js} +1 -1
  67. package/public/{chunk-KX4SDDFZ.js → chunk-6KT3BYU6.js} +1 -1
  68. package/public/chunk-732XLY23.js +16 -0
  69. package/public/{chunk-3HKQMTY5.js → chunk-73TX7DHV.js} +1 -1
  70. package/public/{chunk-2JSU6A57.js → chunk-7IYTG6GP.js} +1 -1
  71. package/public/{chunk-IESBL4DA.js → chunk-7UDDRMZZ.js} +1 -1
  72. package/public/{chunk-YZT252N4.js → chunk-ADW6BF5G.js} +1 -1
  73. package/public/{chunk-MFEME63Q.js → chunk-AI6E5JVH.js} +1 -1
  74. package/public/{chunk-M4T2RO3I.js → chunk-ASKB5DLO.js} +1 -1
  75. package/public/{chunk-VB3KKHCI.js → chunk-BLT2YCDN.js} +1 -1
  76. package/public/chunk-BTBGWLKK.js +1 -0
  77. package/public/{chunk-N5GOQDTB.js → chunk-CYBDQV2B.js} +1 -1
  78. package/public/{chunk-DT6ICOAZ.js → chunk-D5RKKI2A.js} +1 -1
  79. package/public/{chunk-57P3RXT7.js → chunk-EAGKQ5OJ.js} +1 -1
  80. package/public/{chunk-CDA3O4BZ.js → chunk-EVND2DL5.js} +1 -1
  81. package/public/chunk-FM6ZYPKR.js +4 -0
  82. package/public/{chunk-MMLBIEDP.js → chunk-JJ7TVAIH.js} +4 -4
  83. package/public/{chunk-AYMJQ6UO.js → chunk-L43N56JA.js} +1 -1
  84. package/public/{chunk-3PJWBNGU.js → chunk-L5I3DZ23.js} +1 -1
  85. package/public/chunk-LH2LMHIZ.js +1 -0
  86. package/public/{chunk-CFEDPWK5.js → chunk-LWAL5JUG.js} +1 -1
  87. package/public/chunk-LZOHFRHN.js +1 -0
  88. package/public/{chunk-BJ7NEXKS.js → chunk-N2TWGDNX.js} +1 -1
  89. package/public/{chunk-WGFPD4J2.js → chunk-NKNWXFAK.js} +1 -1
  90. package/public/{chunk-7PXKC75G.js → chunk-O4SS7KVP.js} +1 -1
  91. package/public/{chunk-XYVHCMEV.js → chunk-OAHDGV32.js} +1 -1
  92. package/public/{chunk-DWKQU3C2.js → chunk-OK5EJ7US.js} +1 -1
  93. package/public/chunk-ONTEIYY3.js +19 -0
  94. package/public/{chunk-MYSGML5C.js → chunk-OS2SEJZU.js} +1 -1
  95. package/public/chunk-P7TZIGJS.js +50 -0
  96. package/public/{chunk-PYFU3YSX.js → chunk-Q2IS3QQY.js} +1 -1
  97. package/public/{chunk-QTJ3CQHI.js → chunk-QK4V5DVW.js} +1 -1
  98. package/public/chunk-QQ5VZZQG.js +1 -0
  99. package/public/{chunk-DRO3CNQN.js → chunk-RMZRXORR.js} +1 -1
  100. package/public/chunk-RYTGW6B7.js +1 -0
  101. package/public/chunk-SOT54YHI.js +1 -0
  102. package/public/{chunk-EV5RCPGM.js → chunk-SY4VNLXW.js} +1 -1
  103. package/public/chunk-TGZNYEGN.js +1 -0
  104. package/public/{chunk-TCYDYM5A.js → chunk-TOYVIOBH.js} +1 -1
  105. package/public/{chunk-CUP4YO7L.js → chunk-TSFGO3MA.js} +1 -1
  106. package/public/chunk-U5JF2ZOK.js +1 -0
  107. package/public/{chunk-IDDSROZF.js → chunk-UF2IM5BE.js} +1 -1
  108. package/public/{chunk-5R3NYRBJ.js → chunk-UNGEHXRN.js} +1 -1
  109. package/public/chunk-VEGMNMLG.js +1 -0
  110. package/public/{chunk-LTQGLD2K.js → chunk-VYC5JLE6.js} +1 -1
  111. package/public/{chunk-UGSDROFZ.js → chunk-W3SNJ7TC.js} +1 -1
  112. package/public/{chunk-5WH5JZQ5.js → chunk-WLGXJQPD.js} +1 -1
  113. package/public/{chunk-4FV7QIK7.js → chunk-WWSLIQVD.js} +1 -1
  114. package/public/{chunk-WZ6CFZR4.js → chunk-X5AKILHJ.js} +1 -1
  115. package/public/{chunk-6W43YCZG.js → chunk-Y5FP6C55.js} +1 -1
  116. package/public/{chunk-AOCOR5BO.js → chunk-YH6MRXGX.js} +1 -1
  117. package/public/{chunk-F2E7FMEJ.js → chunk-YNONXMOG.js} +1 -1
  118. package/public/{chunk-FW6YLROT.js → chunk-YYJG2ENF.js} +1 -1
  119. package/public/{chunk-X2HK2VP5.js → chunk-ZEI3HZ6P.js} +1 -1
  120. package/public/{chunk-ICEM4QHU.js → chunk-ZJJ3EOBP.js} +1 -1
  121. package/public/index.html +2 -2
  122. package/public/{main-OQMKHLDX.js → main-27RPBS22.js} +1 -1
  123. package/public/media/matter-P563JGDL.svg +8 -0
  124. package/public/{styles-7EFV5QBG.css → styles-CSF457UW.css} +1 -1
  125. package/scripts/extract-plugin-alias.js +53 -2
  126. package/public/chunk-3DANXKYW.js +0 -1
  127. package/public/chunk-4E3QJA2Q.js +0 -1
  128. package/public/chunk-BJ4JCAZT.js +0 -1
  129. package/public/chunk-BQ2T2C4E.js +0 -1
  130. package/public/chunk-CLRVHL2M.js +0 -1
  131. package/public/chunk-F72JFLBX.js +0 -1
  132. package/public/chunk-J7EVJFYY.js +0 -16
  133. package/public/chunk-MY3FPHNS.js +0 -1
  134. package/public/chunk-RSNBQILW.js +0 -4
  135. package/public/chunk-UBFASDE7.js +0 -1
  136. package/public/chunk-VLG3LTSC.js +0 -50
  137. package/public/chunk-X7FSVUGO.js +0 -19
  138. package/public/chunk-XYUTAICH.js +0 -1
@@ -18,6 +18,7 @@ const passport_1 = require("@nestjs/passport");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const admin_guard_1 = require("../../core/auth/guards/admin.guard");
20
20
  const logger_service_1 = require("../../core/logger/logger.service");
21
+ const spa_html_service_1 = require("../../core/spa/spa-html.service");
21
22
  const child_bridges_service_1 = require("../child-bridges/child-bridges.service");
22
23
  const server_dto_1 = require("./server.dto");
23
24
  const server_service_1 = require("./server.service");
@@ -57,6 +58,15 @@ let ServerController = class ServerController {
57
58
  deleteCachedAccessories(accessories) {
58
59
  return this.serverService.deleteCachedAccessories(accessories);
59
60
  }
61
+ getMatterAccessories() {
62
+ return this.serverService.getMatterAccessories();
63
+ }
64
+ deleteMatterAccessory(deviceId, uuid) {
65
+ return this.serverService.deleteMatterAccessory(deviceId, uuid);
66
+ }
67
+ deleteMatterAccessories(accessories) {
68
+ return this.serverService.deleteMatterAccessories(accessories);
69
+ }
60
70
  getDevicePairings() {
61
71
  return this.serverService.getDevicePairings();
62
72
  }
@@ -67,6 +77,9 @@ let ServerController = class ServerController {
67
77
  const resetPairingInfoBool = resetPairingInfo === 'true';
68
78
  return this.serverService.deleteDevicePairing(deviceId, resetPairingInfoBool);
69
79
  }
80
+ deleteDeviceMatterConfig(deviceId) {
81
+ return this.serverService.deleteDeviceMatterConfig(deviceId);
82
+ }
70
83
  deleteDevicesPairings(bridges) {
71
84
  return this.serverService.deleteDevicesPairing(bridges);
72
85
  }
@@ -79,6 +92,9 @@ let ServerController = class ServerController {
79
92
  lookupUnusedPort() {
80
93
  return this.serverService.lookupUnusedPort();
81
94
  }
95
+ lookupUnusedMatterPort() {
96
+ return this.serverService.lookupUnusedMatterPort();
97
+ }
82
98
  getSystemNetworkInterfaces() {
83
99
  return this.serverService.getSystemNetworkInterfaces();
84
100
  }
@@ -122,9 +138,60 @@ let ServerController = class ServerController {
122
138
  throw new common_1.InternalServerErrorException(err.message);
123
139
  }
124
140
  }
141
+ async uploadSslKeyCert(req) {
142
+ try {
143
+ return await this.serverService.uploadSslKeyCert(req);
144
+ }
145
+ catch (err) {
146
+ if (err instanceof common_1.HttpException) {
147
+ throw err;
148
+ }
149
+ this.logger.error(`SSL key/cert upload failed as ${err?.message}`);
150
+ throw new common_1.InternalServerErrorException(err?.message);
151
+ }
152
+ }
153
+ async uploadSslPfx(req) {
154
+ try {
155
+ return await this.serverService.uploadSslPfx(req);
156
+ }
157
+ catch (err) {
158
+ if (err instanceof common_1.HttpException) {
159
+ throw err;
160
+ }
161
+ this.logger.error(`SSL pfx upload failed as ${err?.message}`);
162
+ throw new common_1.InternalServerErrorException(err?.message);
163
+ }
164
+ }
165
+ async validateSsl() {
166
+ try {
167
+ return await this.serverService.validateCurrentSslConfig();
168
+ }
169
+ catch (err) {
170
+ if (err instanceof common_1.HttpException) {
171
+ throw err;
172
+ }
173
+ this.logger.error(`SSL validate failed as ${err?.message}`);
174
+ throw new common_1.InternalServerErrorException(err?.message);
175
+ }
176
+ }
177
+ async generateSelfSigned(body) {
178
+ try {
179
+ return await this.serverService.generateSelfSignedCertificate(body);
180
+ }
181
+ catch (err) {
182
+ if (err instanceof common_1.HttpException) {
183
+ throw err;
184
+ }
185
+ this.logger.error(`Generate self-signed certificate failed as ${err?.message}`);
186
+ throw new common_1.InternalServerErrorException(err?.message);
187
+ }
188
+ }
125
189
  async deleteWallpaper() {
126
190
  await this.serverService.deleteWallpaper();
127
191
  }
192
+ async updateWebroot(body) {
193
+ await spa_html_service_1.SpaHtmlService.updateIndexHtml(body.webroot);
194
+ }
128
195
  };
129
196
  exports.ServerController = ServerController;
130
197
  __decorate([
@@ -228,6 +295,42 @@ __decorate([
228
295
  __metadata("design:paramtypes", [Array]),
229
296
  __metadata("design:returntype", void 0)
230
297
  ], ServerController.prototype, "deleteCachedAccessories", null);
298
+ __decorate([
299
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
300
+ (0, swagger_1.ApiOperation)({ summary: 'List cached Matter accessories.' }),
301
+ (0, common_1.Get)('/matter-accessories'),
302
+ __metadata("design:type", Function),
303
+ __metadata("design:paramtypes", []),
304
+ __metadata("design:returntype", void 0)
305
+ ], ServerController.prototype, "getMatterAccessories", null);
306
+ __decorate([
307
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
308
+ (0, swagger_1.ApiOperation)({
309
+ summary: 'Remove a single Matter cached accessory.',
310
+ }),
311
+ (0, swagger_1.ApiParam)({ name: 'deviceId' }),
312
+ (0, swagger_1.ApiParam)({ name: 'uuid' }),
313
+ (0, common_1.Delete)('/matter-accessories/:deviceId/:uuid'),
314
+ (0, common_1.HttpCode)(204),
315
+ __param(0, (0, common_1.Param)('deviceId')),
316
+ __param(1, (0, common_1.Param)('uuid')),
317
+ __metadata("design:type", Function),
318
+ __metadata("design:paramtypes", [String, String]),
319
+ __metadata("design:returntype", void 0)
320
+ ], ServerController.prototype, "deleteMatterAccessory", null);
321
+ __decorate([
322
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
323
+ (0, swagger_1.ApiOperation)({
324
+ summary: 'Remove multiple Matter cached accessories.',
325
+ }),
326
+ (0, swagger_1.ApiBody)({ description: 'Array of Matter accessories (deviceId and uuid) to remove from the cache', type: 'json', isArray: true }),
327
+ (0, common_1.Delete)('/matter-accessories'),
328
+ (0, common_1.HttpCode)(204),
329
+ __param(0, (0, common_1.Body)()),
330
+ __metadata("design:type", Function),
331
+ __metadata("design:paramtypes", [Array]),
332
+ __metadata("design:returntype", void 0)
333
+ ], ServerController.prototype, "deleteMatterAccessories", null);
231
334
  __decorate([
232
335
  (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
233
336
  (0, swagger_1.ApiOperation)({ summary: 'List all paired accessories (main bridge, external cameras, TVs etc).' }),
@@ -260,6 +363,19 @@ __decorate([
260
363
  __metadata("design:paramtypes", [String, String]),
261
364
  __metadata("design:returntype", void 0)
262
365
  ], ServerController.prototype, "deleteDevicePairing", null);
366
+ __decorate([
367
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
368
+ (0, swagger_1.ApiOperation)({
369
+ summary: 'Remove Matter configuration from a child bridge.',
370
+ }),
371
+ (0, swagger_1.ApiParam)({ name: 'deviceId' }),
372
+ (0, common_1.Delete)('/pairings/:deviceId/matter'),
373
+ (0, common_1.HttpCode)(204),
374
+ __param(0, (0, common_1.Param)('deviceId')),
375
+ __metadata("design:type", Function),
376
+ __metadata("design:paramtypes", [String]),
377
+ __metadata("design:returntype", void 0)
378
+ ], ServerController.prototype, "deleteDeviceMatterConfig", null);
263
379
  __decorate([
264
380
  (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
265
381
  (0, swagger_1.ApiOperation)({
@@ -291,7 +407,7 @@ __decorate([
291
407
  (0, swagger_1.ApiOperation)({
292
408
  summary: 'Remove multiple paired bridges\'s cached accessories.',
293
409
  }),
294
- (0, swagger_1.ApiBody)({ description: 'Array of bridges (id) for which to remove accessories.', type: 'json', isArray: true }),
410
+ (0, swagger_1.ApiBody)({ description: 'Array of bridges (id and optional protocol) for which to remove accessories.', type: 'json', isArray: true }),
295
411
  (0, common_1.Delete)('/pairings/accessories'),
296
412
  (0, common_1.HttpCode)(204),
297
413
  __param(0, (0, common_1.Body)()),
@@ -307,6 +423,14 @@ __decorate([
307
423
  __metadata("design:paramtypes", []),
308
424
  __metadata("design:returntype", void 0)
309
425
  ], ServerController.prototype, "lookupUnusedPort", null);
426
+ __decorate([
427
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
428
+ (0, swagger_1.ApiOperation)({ summary: 'Return a random, unused port from the Matter port range (5530-5541).' }),
429
+ (0, common_1.Get)('/port/new/matter'),
430
+ __metadata("design:type", Function),
431
+ __metadata("design:paramtypes", []),
432
+ __metadata("design:returntype", void 0)
433
+ ], ServerController.prototype, "lookupUnusedMatterPort", null);
310
434
  __decorate([
311
435
  (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
312
436
  (0, swagger_1.ApiOperation)({ summary: 'Return a list of available network interfaces on the server.' }),
@@ -414,6 +538,72 @@ __decorate([
414
538
  __metadata("design:paramtypes", [Object]),
415
539
  __metadata("design:returntype", Promise)
416
540
  ], ServerController.prototype, "uploadWallpaper", null);
541
+ __decorate([
542
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
543
+ (0, common_1.Post)('/ssl/keycert'),
544
+ (0, swagger_1.ApiOperation)({ summary: 'Upload a PEM private key and certificate, validate, and save to storage, updating config.' }),
545
+ (0, swagger_1.ApiConsumes)('multipart/form-data'),
546
+ (0, swagger_1.ApiBody)({
547
+ schema: {
548
+ type: 'object',
549
+ properties: {
550
+ key: { type: 'string', format: 'binary' },
551
+ cert: { type: 'string', format: 'binary' },
552
+ files: { type: 'string', format: 'binary', description: 'Alternatively, submit both files as multiple parts with field name "files"' },
553
+ },
554
+ },
555
+ }),
556
+ __param(0, (0, common_1.Req)()),
557
+ __metadata("design:type", Function),
558
+ __metadata("design:paramtypes", [Object]),
559
+ __metadata("design:returntype", Promise)
560
+ ], ServerController.prototype, "uploadSslKeyCert", null);
561
+ __decorate([
562
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
563
+ (0, common_1.Post)('/ssl/pfx'),
564
+ (0, swagger_1.ApiOperation)({ summary: 'Upload a PKCS#12 (PFX/P12) file with passphrase, validate, and save to storage, updating config.' }),
565
+ (0, swagger_1.ApiConsumes)('multipart/form-data'),
566
+ (0, swagger_1.ApiBody)({
567
+ schema: {
568
+ type: 'object',
569
+ properties: {
570
+ pfx: { type: 'string', format: 'binary' },
571
+ passphrase: { type: 'string' },
572
+ },
573
+ required: ['pfx'],
574
+ },
575
+ }),
576
+ __param(0, (0, common_1.Req)()),
577
+ __metadata("design:type", Function),
578
+ __metadata("design:paramtypes", [Object]),
579
+ __metadata("design:returntype", Promise)
580
+ ], ServerController.prototype, "uploadSslPfx", null);
581
+ __decorate([
582
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
583
+ (0, common_1.Post)('/ssl/validate'),
584
+ (0, swagger_1.ApiOperation)({ summary: 'Validate the currently configured SSL settings (key+cert or pfx+passphrase).' }),
585
+ __metadata("design:type", Function),
586
+ __metadata("design:paramtypes", []),
587
+ __metadata("design:returntype", Promise)
588
+ ], ServerController.prototype, "validateSsl", null);
589
+ __decorate([
590
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
591
+ (0, common_1.Post)('/ssl/selfsigned/generate'),
592
+ (0, swagger_1.ApiOperation)({ summary: 'Generate a self-signed certificate and optionally set it as active key/cert in config.' }),
593
+ (0, swagger_1.ApiBody)({
594
+ schema: {
595
+ type: 'object',
596
+ properties: {
597
+ hostnames: { type: 'array', items: { type: 'string' } },
598
+ mode: { type: 'string', enum: ['selfsigned', 'keycert'], default: 'keycert' },
599
+ },
600
+ },
601
+ }),
602
+ __param(0, (0, common_1.Body)()),
603
+ __metadata("design:type", Function),
604
+ __metadata("design:paramtypes", [Object]),
605
+ __metadata("design:returntype", Promise)
606
+ ], ServerController.prototype, "generateSelfSigned", null);
417
607
  __decorate([
418
608
  (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
419
609
  (0, swagger_1.ApiOperation)({ summary: 'Delete the current wallpaper file and remove the reference from the config file.' }),
@@ -423,6 +613,15 @@ __decorate([
423
613
  __metadata("design:paramtypes", []),
424
614
  __metadata("design:returntype", Promise)
425
615
  ], ServerController.prototype, "deleteWallpaper", null);
616
+ __decorate([
617
+ (0, common_1.UseGuards)(admin_guard_1.AdminGuard),
618
+ (0, swagger_1.ApiOperation)({ summary: 'Update the index.html file to use the specified webroot.' }),
619
+ (0, common_1.Put)('/webroot'),
620
+ __param(0, (0, common_1.Body)()),
621
+ __metadata("design:type", Function),
622
+ __metadata("design:paramtypes", [Object]),
623
+ __metadata("design:returntype", Promise)
624
+ ], ServerController.prototype, "updateWebroot", null);
426
625
  exports.ServerController = ServerController = __decorate([
427
626
  (0, swagger_1.ApiTags)('Homebridge'),
428
627
  (0, swagger_1.ApiBearerAuth)(),
@@ -1 +1 @@
1
- {"version":3,"file":"server.controller.js","sourceRoot":"","sources":["../../../src/modules/server/server.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.controller.js","sourceRoot":"","sources":["../../../src/modules/server/server.controller.ts"],"names":[],"mappings":"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"}
@@ -28,10 +28,14 @@ export declare class ServerService {
28
28
  }>;
29
29
  resetHomebridgeAccessory(): Promise<void>;
30
30
  getDevicePairings(): Promise<any[]>;
31
+ private getMatterExternalAccessories;
31
32
  getDevicePairingById(deviceId: string, configFile?: any): Promise<any>;
32
33
  deleteDevicePairing(id: string, resetPairingInfo: boolean): Promise<{
33
34
  ok: boolean;
34
35
  }>;
36
+ deleteDeviceMatterConfig(id: string): Promise<{
37
+ ok: boolean;
38
+ }>;
35
39
  deleteDevicesPairing(bridges: {
36
40
  id: string;
37
41
  resetPairingInfo: boolean;
@@ -41,6 +45,7 @@ export declare class ServerService {
41
45
  deleteDeviceAccessories(id: string): Promise<void>;
42
46
  deleteDevicesAccessories(bridges: {
43
47
  id: string;
48
+ protocol?: 'hap' | 'matter' | 'both';
44
49
  }[]): Promise<void>;
45
50
  getCachedAccessories(): Promise<any[]>;
46
51
  deleteCachedAccessory(uuid: string, cacheFile: string): Promise<{
@@ -55,6 +60,16 @@ export declare class ServerService {
55
60
  deleteAllCachedAccessories(): Promise<{
56
61
  ok: boolean;
57
62
  }>;
63
+ getMatterAccessories(): Promise<any[]>;
64
+ deleteMatterAccessory(deviceId: string, uuid: string): Promise<{
65
+ ok: boolean;
66
+ }>;
67
+ deleteMatterAccessories(accessories: {
68
+ deviceId: string;
69
+ uuid: string;
70
+ }[]): Promise<{
71
+ ok: boolean;
72
+ }>;
58
73
  getSetupCode(): Promise<string | null>;
59
74
  private generateSetupCode;
60
75
  getBridgePairingInformation(): Promise<ServiceUnavailableException | {
@@ -71,6 +86,9 @@ export declare class ServerService {
71
86
  lookupUnusedPort(): Promise<{
72
87
  port: number;
73
88
  }>;
89
+ lookupUnusedMatterPort(): Promise<{
90
+ port: number;
91
+ }>;
74
92
  getHomebridgePort(): Promise<{
75
93
  port: number;
76
94
  }>;
@@ -87,4 +105,34 @@ export declare class ServerService {
87
105
  uploadWallpaper(data: MultipartFile): Promise<void>;
88
106
  deleteWallpaper(): Promise<void>;
89
107
  private nodeVersionChanged;
108
+ uploadSslKeyCert(req: any): Promise<{
109
+ ok: boolean;
110
+ type: 'keycert';
111
+ keyPath: string;
112
+ certPath: string;
113
+ details?: string;
114
+ }>;
115
+ uploadSslPfx(req: any): Promise<{
116
+ ok: boolean;
117
+ type: 'pfx';
118
+ pfxPath: string;
119
+ details?: string;
120
+ }>;
121
+ validateCurrentSslConfig(): Promise<{
122
+ ok: boolean;
123
+ valid: boolean;
124
+ type: 'off' | 'selfsigned' | 'keycert' | 'pfx';
125
+ details?: string;
126
+ }>;
127
+ generateSelfSignedCertificate(options?: {
128
+ hostnames?: string[];
129
+ mode?: 'keycert' | 'selfsigned';
130
+ }): Promise<{
131
+ ok: boolean;
132
+ type: 'generated';
133
+ mode: 'keycert' | 'selfsigned';
134
+ keyPath?: string;
135
+ certPath?: string;
136
+ details?: string;
137
+ }>;
90
138
  }