homebridge-config-ui-x 5.0.0-beta.26 → 5.0.0-beta.27

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 (182) hide show
  1. package/CHANGELOG.md +62 -17
  2. package/LICENSE +1 -1
  3. package/config.schema.json +38 -18
  4. package/dist/bin/hb-service.js +48 -47
  5. package/dist/bin/hb-service.js.map +1 -1
  6. package/dist/bin/platforms/win32.js +4 -2
  7. package/dist/bin/platforms/win32.js.map +1 -1
  8. package/dist/bin/standalone.js +1 -0
  9. package/dist/bin/standalone.js.map +1 -1
  10. package/dist/core/auth/auth.controller.d.ts +2 -0
  11. package/dist/core/auth/auth.service.js +10 -10
  12. package/dist/core/auth/auth.service.js.map +1 -1
  13. package/dist/core/config/config.service.d.ts +3 -0
  14. package/dist/core/config/config.service.js +1 -0
  15. package/dist/core/config/config.service.js.map +1 -1
  16. package/dist/core/config/config.startup.js +2 -2
  17. package/dist/core/config/config.startup.js.map +1 -1
  18. package/dist/core/homebridge-ipc/homebridge-ipc.service.js +3 -3
  19. package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
  20. package/dist/index.js +8 -7
  21. package/dist/index.js.map +1 -1
  22. package/dist/main.js +1 -1
  23. package/dist/main.js.map +1 -1
  24. package/dist/modules/accessories/accessories.controller.js +4 -4
  25. package/dist/modules/accessories/accessories.controller.js.map +1 -1
  26. package/dist/modules/accessories/accessories.service.js +7 -6
  27. package/dist/modules/accessories/accessories.service.js.map +1 -1
  28. package/dist/modules/backup/backup.controller.js +7 -7
  29. package/dist/modules/backup/backup.controller.js.map +1 -1
  30. package/dist/modules/backup/backup.service.js +14 -14
  31. package/dist/modules/backup/backup.service.js.map +1 -1
  32. package/dist/modules/child-bridges/child-bridges.service.js +3 -3
  33. package/dist/modules/child-bridges/child-bridges.service.js.map +1 -1
  34. package/dist/modules/config-editor/config-editor.controller.js +7 -7
  35. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  36. package/dist/modules/config-editor/config-editor.service.js +6 -6
  37. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  38. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +11 -9
  39. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  40. package/dist/modules/log/log.service.js +3 -3
  41. package/dist/modules/log/log.service.js.map +1 -1
  42. package/dist/modules/platform-tools/docker/docker.controller.js +3 -3
  43. package/dist/modules/platform-tools/docker/docker.controller.js.map +1 -1
  44. package/dist/modules/platform-tools/docker/docker.service.js +1 -1
  45. package/dist/modules/platform-tools/docker/docker.service.js.map +1 -1
  46. package/dist/modules/platform-tools/hb-service/hb-service.controller.js +1 -1
  47. package/dist/modules/platform-tools/hb-service/hb-service.controller.js.map +1 -1
  48. package/dist/modules/platform-tools/hb-service/hb-service.service.js +6 -6
  49. package/dist/modules/platform-tools/hb-service/hb-service.service.js.map +1 -1
  50. package/dist/modules/platform-tools/linux/linux.controller.js +2 -2
  51. package/dist/modules/platform-tools/linux/linux.controller.js.map +1 -1
  52. package/dist/modules/platform-tools/linux/linux.service.js +2 -2
  53. package/dist/modules/platform-tools/linux/linux.service.js.map +1 -1
  54. package/dist/modules/platform-tools/terminal/terminal.service.js +2 -2
  55. package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
  56. package/dist/modules/plugins/plugins.controller.js +4 -4
  57. package/dist/modules/plugins/plugins.controller.js.map +1 -1
  58. package/dist/modules/plugins/plugins.service.d.ts +1 -0
  59. package/dist/modules/plugins/plugins.service.js +61 -35
  60. package/dist/modules/plugins/plugins.service.js.map +1 -1
  61. package/dist/modules/server/server.controller.d.ts +19 -2
  62. package/dist/modules/server/server.controller.js +84 -18
  63. package/dist/modules/server/server.controller.js.map +1 -1
  64. package/dist/modules/server/server.service.d.ts +23 -6
  65. package/dist/modules/server/server.service.js +171 -56
  66. package/dist/modules/server/server.service.js.map +1 -1
  67. package/dist/modules/status/status.controller.js +3 -3
  68. package/dist/modules/status/status.controller.js.map +1 -1
  69. package/dist/modules/status/status.service.js +4 -4
  70. package/dist/modules/status/status.service.js.map +1 -1
  71. package/dist/modules/users/users.controller.js +1 -1
  72. package/dist/modules/users/users.controller.js.map +1 -1
  73. package/dist/self-check.js +6 -6
  74. package/dist/self-check.js.map +1 -1
  75. package/package.json +6 -6
  76. package/public/3rdpartylicenses.txt +95 -25
  77. package/public/chunk-2Q5FI6IR.js +1 -0
  78. package/public/{chunk-2OJNON6V.js → chunk-33J5OGSW.js} +1 -1
  79. package/public/chunk-3PAKBBVC.js +6 -0
  80. package/public/chunk-42DXCU3S.js +1 -0
  81. package/public/chunk-4CPT55G3.js +1 -0
  82. package/public/chunk-4FB3WCN2.js +32 -0
  83. package/public/{chunk-BBIB7OOE.js → chunk-4XWMSIG2.js} +1 -1
  84. package/public/chunk-57CGFXCE.js +1 -0
  85. package/public/{chunk-UIOHAIYB.js → chunk-5RQMP6U3.js} +1 -1
  86. package/public/{chunk-NF2LWORY.js → chunk-6C45K6XL.js} +1 -1
  87. package/public/chunk-6PQZOFUF.js +1 -0
  88. package/public/{chunk-V7MSRFYG.js → chunk-6UA5NAK2.js} +1 -1
  89. package/public/{chunk-2VNUUJGQ.js → chunk-7F3U7UN5.js} +1 -1
  90. package/public/{chunk-P6NTJCU3.js → chunk-7RYQ4P2V.js} +1 -1
  91. package/public/chunk-7TXQ4HPF.js +1 -0
  92. package/public/chunk-A3PLL7HY.js +1 -0
  93. package/public/{chunk-WJ3IINUA.js → chunk-AQQPDAYK.js} +1 -1
  94. package/public/chunk-ARDA4VUA.js +1 -0
  95. package/public/{chunk-TQEO2WY5.js → chunk-B2XXYKX6.js} +1 -1
  96. package/public/{chunk-EMNTAE5G.js → chunk-B5DDMTPM.js} +1 -1
  97. package/public/chunk-BXMI42VZ.js +1 -0
  98. package/public/chunk-BZ3NBZHK.js +1 -0
  99. package/public/chunk-BZRV6BXO.js +1 -0
  100. package/public/chunk-CRAE5G37.js +1 -0
  101. package/public/chunk-CVZVUG3F.js +1 -0
  102. package/public/chunk-D5XAG52V.js +1 -0
  103. package/public/chunk-DBTDEK7M.js +1 -0
  104. package/public/chunk-DDHUQN74.js +1 -0
  105. package/public/{chunk-B46KABOE.js → chunk-DOZODCWI.js} +1 -1
  106. package/public/chunk-EA35SPHA.js +1 -0
  107. package/public/chunk-F47SGYXR.js +1 -0
  108. package/public/{chunk-JXNMTC4S.js → chunk-G5PNMJOK.js} +1 -1
  109. package/public/chunk-HEZRLEEO.js +1 -0
  110. package/public/chunk-HGKZMDT3.js +1 -0
  111. package/public/chunk-IBR2WR6D.js +1 -0
  112. package/public/{chunk-N4GLNFOT.js → chunk-IKIROKEH.js} +1 -1
  113. package/public/{chunk-IPIDD3HC.js → chunk-IR2CNG6H.js} +1 -1
  114. package/public/chunk-JVVXANEP.js +1 -0
  115. package/public/chunk-KIEYXY3R.js +1 -0
  116. package/public/chunk-L3R7ISGL.js +1 -0
  117. package/public/chunk-LHNJS6LH.js +1 -0
  118. package/public/{chunk-E4B7DNVE.js → chunk-LHYSDNVA.js} +4 -4
  119. package/public/chunk-LQFUYJ3D.js +1 -0
  120. package/public/chunk-M7XDEYWJ.js +20 -0
  121. package/public/{chunk-KFOQEXZZ.js → chunk-MNFKN6ND.js} +1 -1
  122. package/public/chunk-MNZAQKX2.js +1 -0
  123. package/public/chunk-MRZO52P6.js +1 -0
  124. package/public/{chunk-OQEKVBVC.js → chunk-MWTPDX4I.js} +1 -1
  125. package/public/{chunk-4HJ4QRHU.js → chunk-NPWYJEQV.js} +1 -1
  126. package/public/{chunk-35ZEUC3N.js → chunk-OWUZFDY7.js} +1 -1
  127. package/public/chunk-P5DU5TFO.js +1 -0
  128. package/public/{chunk-H3RI2X3J.js → chunk-PCHQSKGR.js} +2 -2
  129. package/public/chunk-QEUXNWXU.js +1 -0
  130. package/public/{chunk-T7Y7UGKU.js → chunk-QHMOPP5U.js} +1 -1
  131. package/public/chunk-QWXFQEHM.js +1 -0
  132. package/public/{chunk-OJ45QGCH.js → chunk-S3QOD75N.js} +1 -1
  133. package/public/chunk-S4K7PTWR.js +1 -0
  134. package/public/chunk-U5JWOMOQ.js +1 -0
  135. package/public/{chunk-U7623GKH.js → chunk-UPNNSCHV.js} +1 -1
  136. package/public/{chunk-OC7KX4QS.js → chunk-V4ULI4QR.js} +1 -1
  137. package/public/{chunk-N4F42HDL.js → chunk-WFTXQQES.js} +5 -5
  138. package/public/chunk-WNVKV3X3.js +1 -0
  139. package/public/{chunk-L2733SOJ.js → chunk-X2EVYG7Q.js} +1 -1
  140. package/public/{chunk-B753ANRE.js → chunk-ZUTUDD7K.js} +1 -1
  141. package/public/chunk-ZXMADTZK.js +1 -0
  142. package/public/index.html +2 -2
  143. package/public/main-6BI5PLHV.js +1 -0
  144. package/public/{styles-LM2DJG4C.css → styles-LO2KB5IY.css} +1 -1
  145. package/public/chunk-2N2FIQZE.js +0 -1
  146. package/public/chunk-35GQ3F7V.js +0 -1
  147. package/public/chunk-36GSB6KM.js +0 -1
  148. package/public/chunk-3G2INPN4.js +0 -6
  149. package/public/chunk-3VNR3PA7.js +0 -1
  150. package/public/chunk-56Z7AYJ5.js +0 -1
  151. package/public/chunk-6J7CM2LU.js +0 -1
  152. package/public/chunk-7ZMNAUG3.js +0 -1
  153. package/public/chunk-AHQEC5XD.js +0 -1
  154. package/public/chunk-BO2Q6JEC.js +0 -1
  155. package/public/chunk-BVU3XBKZ.js +0 -1
  156. package/public/chunk-D73G6FHU.js +0 -1
  157. package/public/chunk-EFJQDZWX.js +0 -1
  158. package/public/chunk-F6IIUWOY.js +0 -1
  159. package/public/chunk-FAWZXXFU.js +0 -1
  160. package/public/chunk-H4TSN4GX.js +0 -20
  161. package/public/chunk-J5YJPEOP.js +0 -1
  162. package/public/chunk-MA2NAED5.js +0 -1
  163. package/public/chunk-NEHFSTZG.js +0 -1
  164. package/public/chunk-OD3LAPR5.js +0 -1
  165. package/public/chunk-ONUDLIEE.js +0 -1
  166. package/public/chunk-QXIVYED3.js +0 -1
  167. package/public/chunk-SNISLJD4.js +0 -1
  168. package/public/chunk-SRN6APE2.js +0 -1
  169. package/public/chunk-SWSVESSY.js +0 -1
  170. package/public/chunk-T5M25JEJ.js +0 -1
  171. package/public/chunk-TILEZFVJ.js +0 -1
  172. package/public/chunk-TLJ5IZVT.js +0 -32
  173. package/public/chunk-UPOTR3TI.js +0 -1
  174. package/public/chunk-VM7WUBIT.js +0 -1
  175. package/public/chunk-W5T6GB3H.js +0 -1
  176. package/public/chunk-WRDAYUQ7.js +0 -1
  177. package/public/chunk-XLT7LNOY.js +0 -1
  178. package/public/chunk-XROHACBE.js +0 -1
  179. package/public/chunk-XSAIQ7YY.js +0 -1
  180. package/public/chunk-YIXOCUUM.js +0 -1
  181. package/public/chunk-YMEQWVLZ.js +0 -1
  182. package/public/main-HHNIKZ37.js +0 -1
@@ -67,6 +67,12 @@ let PluginsService = PluginsService_1 = class PluginsService {
67
67
  this.loadPluginList();
68
68
  setInterval(this.loadPluginList.bind(this), 60000 * 60 * 12);
69
69
  }
70
+ fixDisplayName(plugin) {
71
+ plugin.displayName = plugin.displayName || (plugin.name.charAt(0) === '@' ? plugin.name.split('/')[1] : plugin.name)
72
+ .replace(/-/g, ' ')
73
+ .replace(/\w\S*/g, (txt) => txt.charAt(0).toUpperCase() + txt.substring(1).toLowerCase());
74
+ return plugin;
75
+ }
70
76
  async getInstalledPlugins() {
71
77
  const plugins = [];
72
78
  const modules = await this.getInstalledModules();
@@ -92,12 +98,12 @@ let PluginsService = PluginsService_1 = class PluginsService {
92
98
  }
93
99
  }
94
100
  catch (e) {
95
- this.logger.error(`Failed to parse plugin "${pkg.name}": ${e.message}`);
101
+ this.logger.error(`Failed to parse plugin ${pkg.name} as ${e.message}.`);
96
102
  }
97
103
  });
98
104
  }));
99
- this.installedPlugins = plugins;
100
- return plugins;
105
+ this.installedPlugins = plugins.map(plugin => this.fixDisplayName(plugin));
106
+ return this.installedPlugins;
101
107
  }
102
108
  async getOutOfDatePlugins() {
103
109
  const plugins = await this.getInstalledPlugins();
@@ -155,8 +161,8 @@ let PluginsService = PluginsService_1 = class PluginsService {
155
161
  searchResults = (await (0, rxjs_1.firstValueFrom)(this.httpService.get(`https://registry.npmjs.org/-/v1/search?text=${q}`))).data;
156
162
  }
157
163
  catch (e) {
158
- this.logger.error(`Failed to search the npm registry - "${e.message}" - see https://homebridge.io/w/JJSz6 for help.`);
159
- throw new common_1.InternalServerErrorException(`Failed to search the npm registry - "${e.message}" - see logs.`);
164
+ this.logger.error(`Failed to search the npm registry (see https://homebridge.io/w/JJSz6 for help) as ${e.message}.`);
165
+ throw new common_1.InternalServerErrorException(`Failed to search the npm registry as ${e.message}, see logs.`);
160
166
  }
161
167
  const result = searchResults.objects
162
168
  .filter(x => x.package.name.indexOf('homebridge-') === 0 || this.isScopedPlugin(x.package.name))
@@ -193,20 +199,33 @@ let PluginsService = PluginsService_1 = class PluginsService {
193
199
  plugin.isHbMaintained = this.maintainedPlugins.includes(pkg.package.name);
194
200
  return plugin;
195
201
  });
196
- const searchTerms = query
202
+ const searchTerm = query
197
203
  .replace(/[.,/#!$%^&*;:{}=\-_`~()]/g, '')
198
- .toLowerCase()
204
+ .toLowerCase();
205
+ const searchTerms = searchTerm
199
206
  .split(/\s+/)
200
207
  .filter(term => term.length > 0);
201
- const matchPlugins = result.filter((plugin) => {
202
- const pluginName = plugin.name.toLowerCase();
208
+ const exactMatchPlugins = [];
209
+ const partialMatchPlugins = [];
210
+ result.forEach((plugin) => {
203
211
  const pluginKeywords = plugin.keywords.map(keyword => keyword.toLowerCase());
212
+ const isExactMatch = pluginKeywords.includes(searchTerm);
213
+ if (isExactMatch) {
214
+ exactMatchPlugins.push(plugin);
215
+ return;
216
+ }
217
+ const pluginName = plugin.name.toLowerCase();
204
218
  const pluginDescription = plugin.description.toLowerCase();
205
- return searchTerms.some(term => pluginName.includes(term))
206
- || searchTerms.some(term => pluginKeywords.includes(term))
219
+ const isPartialMatch = searchTerms.some(term => pluginName.includes(term))
220
+ || searchTerms.some(term => pluginKeywords.some(keyword => keyword.includes(term)))
207
221
  || searchTerms.some(term => pluginDescription.includes(term));
222
+ if (isPartialMatch) {
223
+ partialMatchPlugins.push(plugin);
224
+ }
208
225
  });
209
- return (0, lodash_1.orderBy)(matchPlugins, ['verifiedPlusPlugin', 'verifiedPlugin'], ['desc', 'desc']).slice(0, 30);
226
+ return (0, lodash_1.orderBy)([...exactMatchPlugins, ...partialMatchPlugins], ['verifiedPlusPlugin', 'verifiedPlugin'], ['desc', 'desc'])
227
+ .slice(0, 30)
228
+ .map(plugin => this.fixDisplayName(plugin));
210
229
  }
211
230
  async searchNpmRegistrySingle(query) {
212
231
  try {
@@ -265,7 +284,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
265
284
  }
266
285
  catch (e) {
267
286
  if (e.response?.status !== 404) {
268
- this.logger.error(`Failed to search the npm registry - "${e.message}" - see https://homebridge.io/w/JJSz6 for help.`);
287
+ this.logger.error(`Failed to search the npm registry (see https://homebridge.io/w/JJSz6 for help) as ${e.message}.`);
269
288
  }
270
289
  return [];
271
290
  }
@@ -282,6 +301,14 @@ let PluginsService = PluginsService_1 = class PluginsService {
282
301
  if (action === 'install' && pluginAction.version === 'latest') {
283
302
  pluginAction.version = await this.getNpmModuleLatestVersion(pluginAction.name);
284
303
  }
304
+ const userPlatform = (0, node_os_1.platform)();
305
+ if (pluginAction.name === this.configService.name && userPlatform === 'linux') {
306
+ const uname = (0, node_child_process_1.execSync)('uname -m').toString().trim();
307
+ const majorVersion = +pluginAction.version.split('.')[0];
308
+ if (uname === 'armv6l' && majorVersion > 4) {
309
+ throw new Error('Versions 5 and above of the Homebridge UI are not compatible with your armv6l device.');
310
+ }
311
+ }
285
312
  let installPath = (this.configService.customPluginPath)
286
313
  ? this.configService.customPluginPath
287
314
  : this.installedPlugins.find(x => x.name === this.configService.name).installPath;
@@ -322,7 +349,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
322
349
  installOptions.push('--save');
323
350
  }
324
351
  installPath = (0, node_path_1.resolve)(installPath, '../');
325
- if (!this.configService.customPluginPath || (0, node_os_1.platform)() === 'win32' || existingPlugin?.globalInstall === true) {
352
+ if (!this.configService.customPluginPath || userPlatform === 'win32' || existingPlugin?.globalInstall === true) {
326
353
  installOptions.push('-g');
327
354
  }
328
355
  const npmPluginLabel = action === 'uninstall' ? pluginAction.name : `${pluginAction.name}@${pluginAction.version}`;
@@ -347,21 +374,21 @@ let PluginsService = PluginsService_1 = class PluginsService {
347
374
  return await this.parsePackageJson(await (0, fs_extra_1.readJson)(pkgJsonPath), this.configService.ui.homebridgePackagePath);
348
375
  }
349
376
  else {
350
- this.logger.error(`"homebridgePath" (${this.configService.ui.homebridgePackagePath}) does not exist`);
377
+ this.logger.error(`The Homebridge path ${this.configService.ui.homebridgePackagePath} does not exist.`);
351
378
  }
352
379
  }
353
380
  const modules = await this.getInstalledModules();
354
381
  const homebridgeInstalls = modules.filter(x => x.name === 'homebridge');
355
382
  if (homebridgeInstalls.length > 1) {
356
- this.logger.warn('Multiple Instances Of Homebridge Found Installed - see https://homebridge.io/w/JJSgm for help.');
383
+ this.logger.warn('Multiple instances of Homebridge were found, see https://homebridge.io/w/JJSgm for help.');
357
384
  homebridgeInstalls.forEach((instance) => {
358
385
  this.logger.warn(instance.installPath);
359
386
  });
360
387
  }
361
388
  if (!homebridgeInstalls.length) {
362
389
  this.configService.hbServiceUiRestartRequired = true;
363
- this.logger.error('Unable To Find Homebridge Installation - see https://homebridge.io/w/JJSgZ for help.');
364
- throw new Error('Unable To Find Homebridge Installation');
390
+ this.logger.error('Unable to find Homebridge installation, see https://homebridge.io/w/JJSgZ for help.');
391
+ throw new Error('Unable To Find Homebridge Installation.');
365
392
  }
366
393
  const homebridgeModule = homebridgeInstalls[0];
367
394
  const pkgJson = await (0, fs_extra_1.readJson)((0, node_path_1.join)(homebridgeModule.installPath, 'package.json'));
@@ -467,7 +494,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
467
494
  }
468
495
  }
469
496
  catch (e) {
470
- this.logger.error(`Failed to check for bundled update: ${e.message}`);
497
+ this.logger.error(`Failed to check for bundled update as ${e.message}.`);
471
498
  return '';
472
499
  }
473
500
  }
@@ -507,14 +534,14 @@ let PluginsService = PluginsService_1 = class PluginsService {
507
534
  let configSchema = await (0, fs_extra_1.readJson)(schemaPath);
508
535
  if (configSchema.dynamicSchemaVersion) {
509
536
  const dynamicSchemaPath = (0, node_path_1.resolve)(this.configService.storagePath, `.${pluginName}-v${configSchema.dynamicSchemaVersion}.schema.json`);
510
- this.logger.log(`[${pluginName}] dynamic schema path: ${dynamicSchemaPath}`);
537
+ this.logger.log(`[${pluginName}] dynamic schema path: ${dynamicSchemaPath}.`);
511
538
  if ((0, fs_extra_1.existsSync)(dynamicSchemaPath)) {
512
539
  try {
513
540
  configSchema = await (0, fs_extra_1.readJson)(dynamicSchemaPath);
514
- this.logger.log(`[${pluginName}] dynamic schema loaded from: ${dynamicSchemaPath}`);
541
+ this.logger.log(`[${pluginName}] dynamic schema loaded from ${dynamicSchemaPath}.`);
515
542
  }
516
543
  catch (e) {
517
- this.logger.error(`[${pluginName}] Failed to load dynamic schema at ${dynamicSchemaPath}: ${e.message}`);
544
+ this.logger.error(`[${pluginName}] failed to load dynamic schema from ${dynamicSchemaPath} as ${e.message}.`);
518
545
  }
519
546
  }
520
547
  }
@@ -639,7 +666,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
639
666
  ?.name;
640
667
  }
641
668
  catch (e) {
642
- this.logger.error(`Failed to get list of branches from GitHub: ${e.message}`);
669
+ this.logger.error(`Failed to get list of branches from GitHub as ${e.message}.`);
643
670
  }
644
671
  }
645
672
  return {
@@ -709,7 +736,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
709
736
  });
710
737
  }
711
738
  catch (e) {
712
- this.logger.debug('Failed to extract plugin alias:', e);
739
+ this.logger.debug(`Failed to extract ${pluginName} plugin alias as ${e.message}.`);
713
740
  if (this.pluginAliasHints[pluginName]) {
714
741
  output.pluginAlias = this.pluginAliasHints[pluginName].pluginAlias;
715
742
  output.pluginType = this.pluginAliasHints[pluginName].pluginType;
@@ -801,7 +828,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
801
828
  }
802
829
  }
803
830
  catch (e) {
804
- this.logger.log(`Failed to parse item "${module}" in ${requiredPath}: ${e.message}`);
831
+ this.logger.log(`Failed to parse ${module} in ${requiredPath} as ${e.message}.`);
805
832
  }
806
833
  }
807
834
  }
@@ -837,8 +864,8 @@ let PluginsService = PluginsService_1 = class PluginsService {
837
864
  return [windowsNpmPath[0]];
838
865
  }
839
866
  else {
840
- this.logger.error('ERROR: Cannot find npm binary. You will not be able to manage plugins or update homebridge.');
841
- this.logger.error('ERROR: You might be able to fix this problem by running: npm install -g npm');
867
+ this.logger.error('Cannot find npm binary, you will not be able to manage plugins or update Homebridge. You might be able to fix this problem by running:');
868
+ this.logger.error('npm install -g npm');
842
869
  }
843
870
  }
844
871
  return ['npm'];
@@ -956,7 +983,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
956
983
  }
957
984
  catch (e) {
958
985
  if (e.response?.status !== 404) {
959
- this.logger.log(`[${plugin.name}] Failed to check registry.npmjs.org for updates: "${e.message}" - see https://homebridge.io/w/JJSz6 for help.`);
986
+ this.logger.log(`[${plugin.name}] failed to check registry.npmjs.org for updates (see https://homebridge.io/w/JJSz6 for help) as ${e.message}.`);
960
987
  }
961
988
  plugin.publicPackage = false;
962
989
  plugin.latestVersion = null;
@@ -994,7 +1021,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
994
1021
  client.emit('stdout', (0, bash_color_1.yellow)('https://github.com/homebridge/homebridge-config-ui-x/wiki/Manual-Configuration#sudo-mode\n\r\n\r'));
995
1022
  }
996
1023
  }
997
- this.logger.log(`Running Command: ${command.join(' ')}`);
1024
+ this.logger.log(`Running command ${command.join(' ')}.`);
998
1025
  if (!(0, semver_1.satisfies)(node_process_1.default.version, `>=${this.configService.minimumNodeVersion}`)) {
999
1026
  client.emit('stdout', (0, bash_color_1.yellow)(`Node.js v${this.configService.minimumNodeVersion} higher is required for ${this.configService.name}.\n\r`));
1000
1027
  client.emit('stdout', (0, bash_color_1.yellow)(`You may experience issues while running on Node.js ${node_process_1.default.version}.\n\r\n\r`));
@@ -1055,13 +1082,12 @@ let PluginsService = PluginsService_1 = class PluginsService {
1055
1082
  return;
1056
1083
  }
1057
1084
  if (!await (0, fs_extra_1.pathExists)(this.configService.customPluginPath)) {
1058
- this.logger.warn(`Custom plugin directory was removed. Re-creating: ${this.configService.customPluginPath}`);
1085
+ this.logger.warn(`Custom plugin directory was removed, re-creating ${this.configService.customPluginPath}.`);
1059
1086
  try {
1060
1087
  await (0, fs_extra_1.ensureDir)(this.configService.customPluginPath);
1061
1088
  }
1062
1089
  catch (e) {
1063
- this.logger.error('Failed to recreate custom plugin directory');
1064
- this.logger.error(e.message);
1090
+ this.logger.error(`Failed to re-create custom plugin directory as ${e.message}.`);
1065
1091
  }
1066
1092
  }
1067
1093
  }
@@ -1076,7 +1102,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
1076
1102
  }
1077
1103
  }
1078
1104
  catch (e) {
1079
- this.logger.error(`Failed to remove ${offendingPath}`, e.message);
1105
+ this.logger.error(`Failed to remove ${offendingPath} as ${e.message}.`);
1080
1106
  }
1081
1107
  }
1082
1108
  async cleanNpmCache() {
@@ -1087,7 +1113,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
1087
1113
  return new Promise((res) => {
1088
1114
  const child = (0, node_child_process_1.spawn)(command.shift(), command);
1089
1115
  child.on('exit', (code) => {
1090
- this.logger.log('npm cache clear command executed with exit code', code);
1116
+ this.logger.log(`Executed npm cache clear command with exit code ${code}.`);
1091
1117
  res(null);
1092
1118
  });
1093
1119
  child.on('error', () => {
@@ -1135,7 +1161,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
1135
1161
  }
1136
1162
  catch (e) {
1137
1163
  this.pluginListRetryTimeout = setTimeout(() => this.loadPluginList(), 60000);
1138
- this.logger.debug('Error when trying to get github plugin list:', e.message);
1164
+ this.logger.debug(`Could not obtain plugin list from plugins repo as ${e.message}.`);
1139
1165
  }
1140
1166
  }
1141
1167
  };
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.service.js","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugins.service.js","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.service.ts"],"names":[],"mappings":"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"}
@@ -26,17 +26,34 @@ export declare class ServerController {
26
26
  isPaired: boolean;
27
27
  }>;
28
28
  resetHomebridgeAccessory(): Promise<void>;
29
- resetCachedAccessories(): Promise<{
29
+ deleteAllCachedAccessories(): Promise<{
30
30
  ok: boolean;
31
31
  }>;
32
32
  getCachedAccessories(): Promise<any[]>;
33
33
  deleteCachedAccessory(uuid: string, cacheFile?: string): Promise<{
34
34
  ok: boolean;
35
35
  }>;
36
+ deleteCachedAccessories(accessories?: {
37
+ uuid: string;
38
+ cacheFile: string;
39
+ }[]): Promise<{
40
+ ok: boolean;
41
+ }>;
36
42
  getDevicePairings(): Promise<any[]>;
37
43
  getDevicePairingById(deviceId: string): Promise<any>;
38
- deleteDevicePairing(deviceId: string): Promise<void>;
44
+ deleteDevicePairing(deviceId: string, resetPairingInfo?: string): Promise<{
45
+ ok: boolean;
46
+ }>;
47
+ deleteDevicesPairings(bridges?: {
48
+ id: string;
49
+ resetPairingInfo: boolean;
50
+ }[]): Promise<{
51
+ ok: boolean;
52
+ }>;
39
53
  deleteDeviceAccessories(deviceId: string): Promise<void>;
54
+ deleteDevicesAccessories(bridges?: {
55
+ id: string;
56
+ }[]): Promise<void>;
40
57
  lookupUnusedPort(): Promise<{
41
58
  port: number;
42
59
  }>;