homebridge-config-ui-x 5.0.0-beta.3 → 5.0.0-beta.31
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.
- package/CHANGELOG.md +182 -8
- package/LICENSE +1 -1
- package/README.md +6 -8
- package/config.schema.json +38 -18
- package/dist/bin/fork.js +17 -7
- package/dist/bin/fork.js.map +1 -1
- package/dist/bin/hb-service.d.ts +2 -2
- package/dist/bin/hb-service.js +67 -56
- package/dist/bin/hb-service.js.map +1 -1
- package/dist/bin/platforms/win32.js +4 -2
- package/dist/bin/platforms/win32.js.map +1 -1
- package/dist/bin/standalone.js +18 -7
- package/dist/bin/standalone.js.map +1 -1
- package/dist/core/auth/auth.controller.d.ts +2 -0
- package/dist/core/auth/auth.controller.js.map +1 -1
- package/dist/core/auth/auth.module.js +1 -1
- package/dist/core/auth/auth.module.js.map +1 -1
- package/dist/core/auth/auth.service.js +10 -10
- package/dist/core/auth/auth.service.js.map +1 -1
- package/dist/core/config/config.service.d.ts +3 -0
- package/dist/core/config/config.service.js +1 -0
- package/dist/core/config/config.service.js.map +1 -1
- package/dist/core/config/config.startup.js +2 -2
- package/dist/core/config/config.startup.js.map +1 -1
- package/dist/core/homebridge-ipc/homebridge-ipc.service.js +3 -3
- package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
- package/dist/index.js +25 -14
- package/dist/index.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/modules/accessories/accessories.controller.js +4 -4
- package/dist/modules/accessories/accessories.controller.js.map +1 -1
- package/dist/modules/accessories/accessories.service.js +7 -6
- package/dist/modules/accessories/accessories.service.js.map +1 -1
- package/dist/modules/backup/backup.controller.js +7 -7
- package/dist/modules/backup/backup.controller.js.map +1 -1
- package/dist/modules/backup/backup.service.js +17 -17
- package/dist/modules/backup/backup.service.js.map +1 -1
- package/dist/modules/child-bridges/child-bridges.service.js +3 -3
- package/dist/modules/child-bridges/child-bridges.service.js.map +1 -1
- package/dist/modules/config-editor/config-editor.controller.d.ts +1 -1
- package/dist/modules/config-editor/config-editor.controller.js +7 -7
- package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
- package/dist/modules/config-editor/config-editor.service.d.ts +1 -1
- package/dist/modules/config-editor/config-editor.service.js +6 -6
- package/dist/modules/config-editor/config-editor.service.js.map +1 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +11 -9
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
- package/dist/modules/log/log.service.js +3 -3
- package/dist/modules/log/log.service.js.map +1 -1
- package/dist/modules/platform-tools/docker/docker.controller.js +3 -3
- package/dist/modules/platform-tools/docker/docker.controller.js.map +1 -1
- package/dist/modules/platform-tools/docker/docker.service.js +1 -1
- package/dist/modules/platform-tools/docker/docker.service.js.map +1 -1
- package/dist/modules/platform-tools/hb-service/hb-service.controller.js +1 -1
- package/dist/modules/platform-tools/hb-service/hb-service.controller.js.map +1 -1
- package/dist/modules/platform-tools/hb-service/hb-service.service.js +6 -6
- package/dist/modules/platform-tools/hb-service/hb-service.service.js.map +1 -1
- package/dist/modules/platform-tools/linux/linux.controller.js +2 -2
- package/dist/modules/platform-tools/linux/linux.controller.js.map +1 -1
- package/dist/modules/platform-tools/linux/linux.service.js +2 -2
- package/dist/modules/platform-tools/linux/linux.service.js.map +1 -1
- package/dist/modules/platform-tools/terminal/terminal.service.js +2 -2
- package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
- package/dist/modules/plugins/plugins.controller.js +4 -4
- package/dist/modules/plugins/plugins.controller.js.map +1 -1
- package/dist/modules/plugins/plugins.service.d.ts +1 -0
- package/dist/modules/plugins/plugins.service.js +74 -35
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/dist/modules/server/server.controller.d.ts +19 -2
- package/dist/modules/server/server.controller.js +84 -18
- package/dist/modules/server/server.controller.js.map +1 -1
- package/dist/modules/server/server.service.d.ts +23 -6
- package/dist/modules/server/server.service.js +171 -56
- package/dist/modules/server/server.service.js.map +1 -1
- package/dist/modules/status/status.controller.js +3 -3
- package/dist/modules/status/status.controller.js.map +1 -1
- package/dist/modules/status/status.service.js +4 -4
- package/dist/modules/status/status.service.js.map +1 -1
- package/dist/modules/users/users.controller.js +1 -1
- package/dist/modules/users/users.controller.js.map +1 -1
- package/dist/self-check.js +6 -6
- package/dist/self-check.js.map +1 -1
- package/package.json +31 -27
- package/public/3rdpartylicenses.txt +70 -44
- package/public/assets/hap-icons/airpurifier.svg +49 -16
- package/public/assets/hap-icons/airquality.svg +24 -13
- package/public/assets/hap-icons/contactsensor-closed.svg +35 -2
- package/public/assets/hap-icons/contactsensor-open.svg +80 -2
- package/public/assets/hap-icons/door-closed.svg +32 -2
- package/public/assets/hap-icons/door-open.svg +48 -2
- package/public/assets/hap-icons/fan-off.svg +24 -13
- package/public/assets/hap-icons/fan-on.svg +24 -13
- package/public/assets/hap-icons/garagedoor.svg +24 -13
- package/public/assets/hap-icons/humidity.svg +24 -13
- package/public/assets/hap-icons/irrigation-system.svg +47 -18
- package/public/assets/hap-icons/leaksensor.svg +52 -2
- package/public/assets/hap-icons/light.svg +47 -28
- package/public/assets/hap-icons/lightbulb.svg +24 -13
- package/public/assets/hap-icons/lock-locked.svg +24 -13
- package/public/assets/hap-icons/lock-unlocked.svg +24 -13
- package/public/assets/hap-icons/motionsensor.svg +100 -2
- package/public/assets/hap-icons/occupancysensor.svg +97 -2
- package/public/assets/hap-icons/outlet.svg +24 -13
- package/public/assets/hap-icons/securitysystem-active.svg +102 -2
- package/public/assets/hap-icons/securitysystem-off.svg +68 -2
- package/public/assets/hap-icons/smokesensor.svg +42 -9
- package/public/assets/hap-icons/speaker.svg +29 -13
- package/public/assets/hap-icons/statelessprogrammableswitch.svg +51 -2
- package/public/assets/hap-icons/switch.svg +24 -13
- package/public/assets/hap-icons/television.svg +15 -4
- package/public/assets/hap-icons/temperature.svg +24 -13
- package/public/assets/hap-icons/unknown.svg +24 -13
- package/public/assets/hap-icons/valve-generic.svg +27 -16
- package/public/assets/hap-icons/valve-irrigation.svg +37 -21
- package/public/assets/hap-icons/valve-showerhead.svg +52 -0
- package/public/assets/hap-icons/valve-waterfaucet.svg +21 -0
- package/public/assets/hap-icons/window-closed.svg +85 -2
- package/public/assets/hap-icons/window-open.svg +136 -2
- package/public/assets/hap-icons/windowcovering-closed.svg +45 -49
- package/public/assets/hap-icons/windowcovering-open.svg +40 -44
- package/public/assets/homebridge-color-round.svg +36 -1
- package/public/assets/homebridge-logo.svg +11 -1
- package/public/assets/mask-icon.svg +5 -1
- package/public/assets/plugin-ui-utils/ui.js +38 -19
- package/public/assets/plugin-ui-utils/ui.js.map +1 -1
- package/public/{chunk-6TCHCTXZ.js → chunk-23M23WV2.js} +1 -1
- package/public/chunk-27Y2SMZQ.js +1 -0
- package/public/{chunk-QE7DO6J3.js → chunk-474BOAR2.js} +2 -2
- package/public/{chunk-VOBHY2IH.js → chunk-5FGGDMPF.js} +2 -2
- package/public/{chunk-WNWWUCCZ.js → chunk-5KLZWFYX.js} +1 -1
- package/public/{chunk-ASX35H47.js → chunk-5YQD6SFF.js} +1 -1
- package/public/chunk-675OFXLW.js +1 -0
- package/public/chunk-6LLC6ASY.js +1 -0
- package/public/chunk-6SQJWZJ3.js +1 -0
- package/public/chunk-6VKXZGBQ.js +1 -0
- package/public/{chunk-BKUGARB4.js → chunk-7BCHGXO4.js} +1 -1
- package/public/chunk-7ZWVTY7M.js +1 -0
- package/public/chunk-A4UEYJ65.js +1 -0
- package/public/chunk-BMWLHPL2.js +1 -0
- package/public/chunk-BUJGF5XS.js +1 -0
- package/public/{chunk-CCUID66K.js → chunk-C2XBPNOQ.js} +1 -1
- package/public/chunk-CBZQXGMM.js +1 -0
- package/public/chunk-CKNHTRCL.js +7 -0
- package/public/{chunk-BFDVOBTQ.js → chunk-DI7XQKGK.js} +1 -1
- package/public/chunk-DMNEGPYI.js +1 -0
- package/public/chunk-DPQL3CFN.js +1 -0
- package/public/chunk-DZK7ET6B.js +1 -0
- package/public/chunk-E4JGXDDX.js +1 -0
- package/public/chunk-EEDUUZ6J.js +1 -0
- package/public/chunk-EIDRJ2MZ.js +1 -0
- package/public/chunk-EPUIY43R.js +1 -0
- package/public/chunk-FFAK3S6H.js +1 -0
- package/public/chunk-FYBGDBHS.js +5 -0
- package/public/chunk-G6DEXV26.js +1 -0
- package/public/chunk-GAOJPT7Q.js +32 -0
- package/public/{chunk-6PHMBMFU.js → chunk-GH44GF33.js} +1 -1
- package/public/chunk-GMDD67DK.js +1 -0
- package/public/chunk-GT23NQ6X.js +1 -0
- package/public/chunk-GZ6LPTUZ.js +1 -0
- package/public/{chunk-UG5DK2RQ.js → chunk-HA6CO5NZ.js} +2 -2
- package/public/chunk-HZMFFGGL.js +1 -0
- package/public/chunk-IBVQ5XHN.js +1 -0
- package/public/chunk-IFT3CY2Y.js +1 -0
- package/public/chunk-IN2KYSF4.js +1 -0
- package/public/chunk-JA6D57G2.js +1 -0
- package/public/{chunk-JZZQRLNW.js → chunk-JF5AT3NK.js} +1 -1
- package/public/chunk-JIBSE7F4.js +1 -0
- package/public/chunk-JN3CZQ6V.js +1 -0
- package/public/chunk-KKXQOKX2.js +1 -0
- package/public/{chunk-IW3EPSTZ.js → chunk-KTZO3WBP.js} +4 -4
- package/public/chunk-L2ORBCR2.js +1 -0
- package/public/chunk-LEBQDAR4.js +1 -0
- package/public/chunk-LEFLOPGL.js +1 -0
- package/public/chunk-LXXOSKLU.js +1 -0
- package/public/chunk-N4F42HDL.js +5 -0
- package/public/{chunk-NW6AFAD7.js → chunk-NFG4Y4PX.js} +1 -1
- package/public/chunk-NN4AKVX5.js +1 -0
- package/public/{chunk-7EUQWCP5.js → chunk-NSCP3SOQ.js} +1 -1
- package/public/{chunk-7L7RZCFC.js → chunk-OE2GYWRJ.js} +1 -1
- package/public/chunk-OOXD7YEJ.js +1 -0
- package/public/chunk-OURKTFZU.js +1 -0
- package/public/{chunk-VMXGERJT.js → chunk-PIKLHZDA.js} +8 -8
- package/public/chunk-QAHKBWOC.js +20 -0
- package/public/chunk-QRKW54YY.js +1 -0
- package/public/chunk-R5E5WAV5.js +1 -0
- package/public/chunk-REMR6QVW.js +1 -0
- package/public/chunk-RGOOY4ED.js +1 -0
- package/public/chunk-SRBTIWVO.js +1 -0
- package/public/{chunk-NZNNTHFQ.js → chunk-T3GI7KUT.js} +1 -1
- package/public/chunk-TRQOR36U.js +1 -0
- package/public/chunk-V6L2K2WY.js +1 -0
- package/public/chunk-VB5BRR2U.js +1 -0
- package/public/chunk-WAHQ6FKA.js +1 -0
- package/public/chunk-WJ3IINUA.js +1 -0
- package/public/chunk-WZWCA2UY.js +1 -0
- package/public/chunk-X5YRTZFZ.js +1 -0
- package/public/chunk-X6VYPTSJ.js +1 -0
- package/public/chunk-XADFYKJR.js +1 -0
- package/public/chunk-XASV7YHW.js +6 -0
- package/public/{chunk-WHJOLAED.js → chunk-XFK2EZ3K.js} +1 -1
- package/public/{chunk-EA5J2VEJ.js → chunk-XP7D2PRA.js} +1 -1
- package/public/{chunk-WHJSVGC7.js → chunk-XQNHUDX7.js} +1 -1
- package/public/chunk-YLAFYHGY.js +1 -0
- package/public/{chunk-QHPDGSZ6.js → chunk-YLEC7AUG.js} +1 -1
- package/public/chunk-YLOLF5VJ.js +1 -0
- package/public/chunk-Z2FKNCT7.js +1 -0
- package/public/chunk-Z4NHF7RI.js +1 -0
- package/public/index.html +2 -2
- package/public/main-422LQ5TU.js +1 -0
- package/public/media/fa-brands-400-Q3XCMWHQ.woff2 +0 -0
- package/public/media/{fa-brands-400-MVB2B5XM.ttf → fa-brands-400-R2XQZCET.ttf} +0 -0
- package/public/media/fa-regular-400-QSNYFYRT.woff2 +0 -0
- package/public/media/{fa-regular-400-EGQOOADX.ttf → fa-regular-400-XUOPSR7E.ttf} +0 -0
- package/public/media/fa-solid-900-5ZUYHGA7.woff2 +0 -0
- package/public/media/{fa-solid-900-ZUDIWQL5.ttf → fa-solid-900-PJNKLK6W.ttf} +0 -0
- package/public/styles-7Q7QNSR3.css +1 -0
- package/public/chunk-2OBHR63W.js +0 -1
- package/public/chunk-3C6WVST7.js +0 -1
- package/public/chunk-3IX3CLER.js +0 -1
- package/public/chunk-5ALXJOLQ.js +0 -1
- package/public/chunk-5LVGHH2N.js +0 -1
- package/public/chunk-7456RB3C.js +0 -1
- package/public/chunk-76S7LYCL.js +0 -1
- package/public/chunk-77A3OZ74.js +0 -1
- package/public/chunk-7EANS226.js +0 -1
- package/public/chunk-AVJ6EUEE.js +0 -1
- package/public/chunk-AX23H5TL.js +0 -1
- package/public/chunk-AZXQ73I5.js +0 -1
- package/public/chunk-BMXAHMY6.js +0 -1
- package/public/chunk-BPMSJ2VF.js +0 -1
- package/public/chunk-CW7Q7WEJ.js +0 -1
- package/public/chunk-DDXIRKVB.js +0 -1
- package/public/chunk-DNOJWLVY.js +0 -1
- package/public/chunk-DZY2Q3FG.js +0 -1
- package/public/chunk-FX4GQIE4.js +0 -32
- package/public/chunk-GVDR7ZRB.js +0 -1
- package/public/chunk-HSJSWZHD.js +0 -1
- package/public/chunk-I7ZKPCIW.js +0 -1
- package/public/chunk-IPZ4P5DE.js +0 -1
- package/public/chunk-IWYEH4T6.js +0 -1
- package/public/chunk-JL6S5IIU.js +0 -1
- package/public/chunk-KIJWUGXX.js +0 -1
- package/public/chunk-KO3WJGGG.js +0 -1
- package/public/chunk-KQJ7ONUG.js +0 -1
- package/public/chunk-KTDJZCFW.js +0 -1
- package/public/chunk-LDPCT3YF.js +0 -5
- package/public/chunk-MHYIZZN4.js +0 -1
- package/public/chunk-MOV2HTCQ.js +0 -1
- package/public/chunk-NF4NIS42.js +0 -1
- package/public/chunk-O75YP3SB.js +0 -1
- package/public/chunk-ODPTCLGS.js +0 -1
- package/public/chunk-ORPWYWCL.js +0 -5
- package/public/chunk-Q5URFHBE.js +0 -1
- package/public/chunk-QLWY5NWN.js +0 -1
- package/public/chunk-QRZNMAFL.js +0 -1
- package/public/chunk-RHB2T3FE.js +0 -1
- package/public/chunk-RMI35HIS.js +0 -1
- package/public/chunk-RO4QXVDE.js +0 -1
- package/public/chunk-RWZRB2OY.js +0 -1
- package/public/chunk-S62KH3FN.js +0 -6
- package/public/chunk-S6EMLS5Q.js +0 -1
- package/public/chunk-SVFFEV36.js +0 -1
- package/public/chunk-T2YVB4SI.js +0 -1
- package/public/chunk-TCSXGQNF.js +0 -1
- package/public/chunk-TXOB7R5K.js +0 -7
- package/public/chunk-U6ORTLYL.js +0 -1
- package/public/chunk-UJU3NPS7.js +0 -1
- package/public/chunk-UYZI56PX.js +0 -1
- package/public/chunk-UZU6PLTW.js +0 -1
- package/public/chunk-UZW3DWH4.js +0 -1
- package/public/chunk-WMB35VCS.js +0 -1
- package/public/chunk-WT2GX4NS.js +0 -1
- package/public/chunk-XH6GEPB6.js +0 -1
- package/public/chunk-ZLPCX4R4.js +0 -1
- package/public/chunk-ZT23DWNL.js +0 -1
- package/public/chunk-ZY7HKZ4P.js +0 -20
- package/public/main-ILTX7GFO.js +0 -1
- package/public/media/fa-brands-400-6U3GU5Y7.woff2 +0 -0
- package/public/media/fa-regular-400-R5EOMW4H.woff2 +0 -0
- package/public/media/fa-solid-900-W65KEJAS.woff2 +0 -0
- package/public/styles-GDLSHXGD.css +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
|
|
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
|
|
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();
|
|
@@ -146,14 +152,17 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
146
152
|
if (!this.installedPlugins) {
|
|
147
153
|
await this.getInstalledPlugins();
|
|
148
154
|
}
|
|
149
|
-
|
|
155
|
+
if ((query.indexOf('homebridge-') === 0 || this.isScopedPlugin(query)) && !this.hiddenPlugins.includes(query.toLowerCase())) {
|
|
156
|
+
return await this.searchNpmRegistrySingle(query.toLowerCase());
|
|
157
|
+
}
|
|
158
|
+
const q = `${(!query || !query.length) ? '' : `${query.substring(0, 15)}+`}keywords:homebridge-plugin+not:deprecated&size=99`;
|
|
150
159
|
let searchResults;
|
|
151
160
|
try {
|
|
152
161
|
searchResults = (await (0, rxjs_1.firstValueFrom)(this.httpService.get(`https://registry.npmjs.org/-/v1/search?text=${q}`))).data;
|
|
153
162
|
}
|
|
154
163
|
catch (e) {
|
|
155
|
-
this.logger.error(`Failed to search the npm registry
|
|
156
|
-
throw new common_1.InternalServerErrorException(`Failed to search the npm registry
|
|
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.`);
|
|
157
166
|
}
|
|
158
167
|
const result = searchResults.objects
|
|
159
168
|
.filter(x => x.package.name.indexOf('homebridge-') === 0 || this.isScopedPlugin(x.package.name))
|
|
@@ -167,6 +176,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
167
176
|
if (isInstalled) {
|
|
168
177
|
plugin = isInstalled;
|
|
169
178
|
plugin.lastUpdated = pkg.package.date;
|
|
179
|
+
plugin.keywords = pkg.package.keywords;
|
|
170
180
|
return plugin;
|
|
171
181
|
}
|
|
172
182
|
plugin.publicPackage = true;
|
|
@@ -176,6 +186,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
176
186
|
plugin.description = (pkg.package.description)
|
|
177
187
|
? pkg.package.description.replace(/\(?(?:https?|ftp):\/\/[\n\S]+/g, '').trim()
|
|
178
188
|
: pkg.package.name;
|
|
189
|
+
plugin.keywords = pkg.package.keywords;
|
|
179
190
|
plugin.links = pkg.package.links;
|
|
180
191
|
plugin.author = this.scopedPlugins[pkg.package.name] || ((pkg.package.publisher) ? pkg.package.publisher.username : null);
|
|
181
192
|
plugin.verifiedPlugin = this.verifiedPlugins.includes(pkg.package.name);
|
|
@@ -188,12 +199,33 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
188
199
|
plugin.isHbMaintained = this.maintainedPlugins.includes(pkg.package.name);
|
|
189
200
|
return plugin;
|
|
190
201
|
});
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
202
|
+
const searchTerm = query
|
|
203
|
+
.replace(/[.,/#!$%^&*;:{}=\-_`~()]/g, '')
|
|
204
|
+
.toLowerCase();
|
|
205
|
+
const searchTerms = searchTerm
|
|
206
|
+
.split(/\s+/)
|
|
207
|
+
.filter(term => term.length > 0);
|
|
208
|
+
const exactMatchPlugins = [];
|
|
209
|
+
const partialMatchPlugins = [];
|
|
210
|
+
result.forEach((plugin) => {
|
|
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();
|
|
218
|
+
const pluginDescription = plugin.description.toLowerCase();
|
|
219
|
+
const isPartialMatch = searchTerms.some(term => pluginName.includes(term))
|
|
220
|
+
|| searchTerms.some(term => pluginKeywords.some(keyword => keyword.includes(term)))
|
|
221
|
+
|| searchTerms.some(term => pluginDescription.includes(term));
|
|
222
|
+
if (isPartialMatch) {
|
|
223
|
+
partialMatchPlugins.push(plugin);
|
|
224
|
+
}
|
|
225
|
+
});
|
|
226
|
+
return (0, lodash_1.orderBy)([...exactMatchPlugins, ...partialMatchPlugins], ['verifiedPlusPlugin', 'verifiedPlugin'], ['desc', 'desc'])
|
|
227
|
+
.slice(0, 30)
|
|
228
|
+
.map(plugin => this.fixDisplayName(plugin));
|
|
197
229
|
}
|
|
198
230
|
async searchNpmRegistrySingle(query) {
|
|
199
231
|
try {
|
|
@@ -252,7 +284,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
252
284
|
}
|
|
253
285
|
catch (e) {
|
|
254
286
|
if (e.response?.status !== 404) {
|
|
255
|
-
this.logger.error(`Failed to search the npm registry
|
|
287
|
+
this.logger.error(`Failed to search the npm registry (see https://homebridge.io/w/JJSz6 for help) as ${e.message}.`);
|
|
256
288
|
}
|
|
257
289
|
return [];
|
|
258
290
|
}
|
|
@@ -269,6 +301,14 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
269
301
|
if (action === 'install' && pluginAction.version === 'latest') {
|
|
270
302
|
pluginAction.version = await this.getNpmModuleLatestVersion(pluginAction.name);
|
|
271
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
|
+
}
|
|
272
312
|
let installPath = (this.configService.customPluginPath)
|
|
273
313
|
? this.configService.customPluginPath
|
|
274
314
|
: this.installedPlugins.find(x => x.name === this.configService.name).installPath;
|
|
@@ -309,7 +349,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
309
349
|
installOptions.push('--save');
|
|
310
350
|
}
|
|
311
351
|
installPath = (0, node_path_1.resolve)(installPath, '../');
|
|
312
|
-
if (!this.configService.customPluginPath ||
|
|
352
|
+
if (!this.configService.customPluginPath || userPlatform === 'win32' || existingPlugin?.globalInstall === true) {
|
|
313
353
|
installOptions.push('-g');
|
|
314
354
|
}
|
|
315
355
|
const npmPluginLabel = action === 'uninstall' ? pluginAction.name : `${pluginAction.name}@${pluginAction.version}`;
|
|
@@ -334,21 +374,21 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
334
374
|
return await this.parsePackageJson(await (0, fs_extra_1.readJson)(pkgJsonPath), this.configService.ui.homebridgePackagePath);
|
|
335
375
|
}
|
|
336
376
|
else {
|
|
337
|
-
this.logger.error(`
|
|
377
|
+
this.logger.error(`The Homebridge path ${this.configService.ui.homebridgePackagePath} does not exist.`);
|
|
338
378
|
}
|
|
339
379
|
}
|
|
340
380
|
const modules = await this.getInstalledModules();
|
|
341
381
|
const homebridgeInstalls = modules.filter(x => x.name === 'homebridge');
|
|
342
382
|
if (homebridgeInstalls.length > 1) {
|
|
343
|
-
this.logger.warn('Multiple
|
|
383
|
+
this.logger.warn('Multiple instances of Homebridge were found, see https://homebridge.io/w/JJSgm for help.');
|
|
344
384
|
homebridgeInstalls.forEach((instance) => {
|
|
345
385
|
this.logger.warn(instance.installPath);
|
|
346
386
|
});
|
|
347
387
|
}
|
|
348
388
|
if (!homebridgeInstalls.length) {
|
|
349
389
|
this.configService.hbServiceUiRestartRequired = true;
|
|
350
|
-
this.logger.error('Unable
|
|
351
|
-
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.');
|
|
352
392
|
}
|
|
353
393
|
const homebridgeModule = homebridgeInstalls[0];
|
|
354
394
|
const pkgJson = await (0, fs_extra_1.readJson)((0, node_path_1.join)(homebridgeModule.installPath, 'package.json'));
|
|
@@ -454,7 +494,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
454
494
|
}
|
|
455
495
|
}
|
|
456
496
|
catch (e) {
|
|
457
|
-
this.logger.error(`Failed to check for bundled update
|
|
497
|
+
this.logger.error(`Failed to check for bundled update as ${e.message}.`);
|
|
458
498
|
return '';
|
|
459
499
|
}
|
|
460
500
|
}
|
|
@@ -494,14 +534,14 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
494
534
|
let configSchema = await (0, fs_extra_1.readJson)(schemaPath);
|
|
495
535
|
if (configSchema.dynamicSchemaVersion) {
|
|
496
536
|
const dynamicSchemaPath = (0, node_path_1.resolve)(this.configService.storagePath, `.${pluginName}-v${configSchema.dynamicSchemaVersion}.schema.json`);
|
|
497
|
-
this.logger.log(`[${pluginName}] dynamic schema path: ${dynamicSchemaPath}
|
|
537
|
+
this.logger.log(`[${pluginName}] dynamic schema path: ${dynamicSchemaPath}.`);
|
|
498
538
|
if ((0, fs_extra_1.existsSync)(dynamicSchemaPath)) {
|
|
499
539
|
try {
|
|
500
540
|
configSchema = await (0, fs_extra_1.readJson)(dynamicSchemaPath);
|
|
501
|
-
this.logger.log(`[${pluginName}] dynamic schema loaded from
|
|
541
|
+
this.logger.log(`[${pluginName}] dynamic schema loaded from ${dynamicSchemaPath}.`);
|
|
502
542
|
}
|
|
503
543
|
catch (e) {
|
|
504
|
-
this.logger.error(`[${pluginName}]
|
|
544
|
+
this.logger.error(`[${pluginName}] failed to load dynamic schema from ${dynamicSchemaPath} as ${e.message}.`);
|
|
505
545
|
}
|
|
506
546
|
}
|
|
507
547
|
}
|
|
@@ -626,7 +666,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
626
666
|
?.name;
|
|
627
667
|
}
|
|
628
668
|
catch (e) {
|
|
629
|
-
this.logger.error(`Failed to get list of branches from GitHub
|
|
669
|
+
this.logger.error(`Failed to get list of branches from GitHub as ${e.message}.`);
|
|
630
670
|
}
|
|
631
671
|
}
|
|
632
672
|
return {
|
|
@@ -696,7 +736,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
696
736
|
});
|
|
697
737
|
}
|
|
698
738
|
catch (e) {
|
|
699
|
-
this.logger.debug(
|
|
739
|
+
this.logger.debug(`Failed to extract ${pluginName} plugin alias as ${e.message}.`);
|
|
700
740
|
if (this.pluginAliasHints[pluginName]) {
|
|
701
741
|
output.pluginAlias = this.pluginAliasHints[pluginName].pluginAlias;
|
|
702
742
|
output.pluginType = this.pluginAliasHints[pluginName].pluginType;
|
|
@@ -788,7 +828,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
788
828
|
}
|
|
789
829
|
}
|
|
790
830
|
catch (e) {
|
|
791
|
-
this.logger.log(`Failed to parse
|
|
831
|
+
this.logger.log(`Failed to parse ${module} in ${requiredPath} as ${e.message}.`);
|
|
792
832
|
}
|
|
793
833
|
}
|
|
794
834
|
}
|
|
@@ -824,8 +864,8 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
824
864
|
return [windowsNpmPath[0]];
|
|
825
865
|
}
|
|
826
866
|
else {
|
|
827
|
-
this.logger.error('
|
|
828
|
-
this.logger.error('
|
|
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');
|
|
829
869
|
}
|
|
830
870
|
}
|
|
831
871
|
return ['npm'];
|
|
@@ -943,7 +983,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
943
983
|
}
|
|
944
984
|
catch (e) {
|
|
945
985
|
if (e.response?.status !== 404) {
|
|
946
|
-
this.logger.log(`[${plugin.name}]
|
|
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}.`);
|
|
947
987
|
}
|
|
948
988
|
plugin.publicPackage = false;
|
|
949
989
|
plugin.latestVersion = null;
|
|
@@ -981,7 +1021,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
981
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'));
|
|
982
1022
|
}
|
|
983
1023
|
}
|
|
984
|
-
this.logger.log(`Running
|
|
1024
|
+
this.logger.log(`Running command ${command.join(' ')}.`);
|
|
985
1025
|
if (!(0, semver_1.satisfies)(node_process_1.default.version, `>=${this.configService.minimumNodeVersion}`)) {
|
|
986
1026
|
client.emit('stdout', (0, bash_color_1.yellow)(`Node.js v${this.configService.minimumNodeVersion} higher is required for ${this.configService.name}.\n\r`));
|
|
987
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`));
|
|
@@ -1042,13 +1082,12 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
1042
1082
|
return;
|
|
1043
1083
|
}
|
|
1044
1084
|
if (!await (0, fs_extra_1.pathExists)(this.configService.customPluginPath)) {
|
|
1045
|
-
this.logger.warn(`Custom plugin directory was removed
|
|
1085
|
+
this.logger.warn(`Custom plugin directory was removed, re-creating ${this.configService.customPluginPath}.`);
|
|
1046
1086
|
try {
|
|
1047
1087
|
await (0, fs_extra_1.ensureDir)(this.configService.customPluginPath);
|
|
1048
1088
|
}
|
|
1049
1089
|
catch (e) {
|
|
1050
|
-
this.logger.error(
|
|
1051
|
-
this.logger.error(e.message);
|
|
1090
|
+
this.logger.error(`Failed to re-create custom plugin directory as ${e.message}.`);
|
|
1052
1091
|
}
|
|
1053
1092
|
}
|
|
1054
1093
|
}
|
|
@@ -1063,7 +1102,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
1063
1102
|
}
|
|
1064
1103
|
}
|
|
1065
1104
|
catch (e) {
|
|
1066
|
-
this.logger.error(`Failed to remove ${offendingPath}
|
|
1105
|
+
this.logger.error(`Failed to remove ${offendingPath} as ${e.message}.`);
|
|
1067
1106
|
}
|
|
1068
1107
|
}
|
|
1069
1108
|
async cleanNpmCache() {
|
|
@@ -1074,7 +1113,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
1074
1113
|
return new Promise((res) => {
|
|
1075
1114
|
const child = (0, node_child_process_1.spawn)(command.shift(), command);
|
|
1076
1115
|
child.on('exit', (code) => {
|
|
1077
|
-
this.logger.log(
|
|
1116
|
+
this.logger.log(`Executed npm cache clear command with exit code ${code}.`);
|
|
1078
1117
|
res(null);
|
|
1079
1118
|
});
|
|
1080
1119
|
child.on('error', () => {
|
|
@@ -1122,7 +1161,7 @@ let PluginsService = PluginsService_1 = class PluginsService {
|
|
|
1122
1161
|
}
|
|
1123
1162
|
catch (e) {
|
|
1124
1163
|
this.pluginListRetryTimeout = setTimeout(() => this.loadPluginList(), 60000);
|
|
1125
|
-
this.logger.debug(
|
|
1164
|
+
this.logger.debug(`Could not obtain plugin list from plugins repo as ${e.message}.`);
|
|
1126
1165
|
}
|
|
1127
1166
|
}
|
|
1128
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
|
-
|
|
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<
|
|
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
|
}>;
|