homebridge-config-ui-x 5.4.2-beta.35 → 5.4.2-beta.36
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 +3 -0
- package/dist/bin/hb-service.js +1 -1
- package/dist/bin/hb-service.js.map +1 -1
- package/dist/core/config/config.interfaces.d.ts +64 -0
- package/dist/core/config/config.interfaces.js +3 -0
- package/dist/core/config/config.interfaces.js.map +1 -0
- package/dist/core/config/config.service.d.ts +1 -21
- package/dist/core/config/config.service.js.map +1 -1
- package/dist/core/config/config.startup.d.ts +2 -13
- package/dist/core/config/config.startup.js.map +1 -1
- package/dist/main.js.map +1 -1
- package/dist/modules/backup/backup.service.js +4 -1
- package/dist/modules/backup/backup.service.js.map +1 -1
- package/dist/modules/config-editor/config-editor.controller.d.ts +3 -3
- package/dist/modules/config-editor/config-editor.service.d.ts +3 -2
- package/dist/modules/config-editor/config-editor.service.js +38 -15
- package/dist/modules/config-editor/config-editor.service.js.map +1 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.d.ts +1 -1
- package/dist/modules/log/log.gateway.d.ts +1 -1
- package/dist/modules/log/log.interfaces.d.ts +4 -0
- package/dist/modules/log/log.interfaces.js +3 -0
- package/dist/modules/log/log.interfaces.js.map +1 -0
- package/dist/modules/log/log.service.d.ts +1 -4
- package/dist/modules/log/log.service.js.map +1 -1
- package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +1 -1
- package/dist/modules/platform-tools/terminal/terminal.interfaces.d.ts +8 -0
- package/dist/modules/platform-tools/terminal/terminal.interfaces.js +3 -0
- package/dist/modules/platform-tools/terminal/terminal.interfaces.js.map +1 -0
- package/dist/modules/platform-tools/terminal/terminal.service.d.ts +1 -8
- package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
- package/dist/modules/plugins/plugins.controller.d.ts +5 -5
- package/dist/modules/plugins/plugins.interfaces.d.ts +211 -0
- package/dist/modules/plugins/plugins.interfaces.js +3 -0
- package/dist/modules/plugins/plugins.interfaces.js.map +1 -0
- package/dist/modules/plugins/plugins.service.d.ts +1 -1
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/dist/modules/server/server.service.js +6 -4
- package/dist/modules/server/server.service.js.map +1 -1
- package/dist/modules/status/status.controller.d.ts +2 -2
- package/dist/modules/status/status.gateway.d.ts +5 -5
- package/dist/modules/status/status.interfaces.d.ts +27 -0
- package/dist/modules/status/status.interfaces.js +10 -0
- package/dist/modules/status/status.interfaces.js.map +1 -0
- package/dist/modules/status/status.service.d.ts +2 -29
- package/dist/modules/status/status.service.js +4 -9
- package/dist/modules/status/status.service.js.map +1 -1
- package/package.json +2 -2
- package/public/3rdpartylicenses.txt +3 -1
- package/public/{chunk-L3NPKDCF.js → chunk-22UVENNJ.js} +1 -1
- package/public/chunk-26GMIPRJ.js +19 -0
- package/public/{chunk-OQAPK7HS.js → chunk-33RLTKP7.js} +1 -1
- package/public/{chunk-2USV3SF6.js → chunk-37M3WNYK.js} +1 -1
- package/public/{chunk-N6AWO56M.js → chunk-3Y22MKX5.js} +1 -1
- package/public/{chunk-J2ZQWWTU.js → chunk-54LW2EIT.js} +1 -1
- package/public/{chunk-A3P6S7DN.js → chunk-6A65Q45W.js} +1 -1
- package/public/{chunk-MOCLWTQ4.js → chunk-6FDD5CCJ.js} +1 -1
- package/public/{chunk-BVHB737K.js → chunk-AKRQOBH5.js} +1 -1
- package/public/{chunk-HTSNH3BM.js → chunk-AOF6N6LI.js} +1 -1
- package/public/{chunk-JK77CV6J.js → chunk-ATWZNPLH.js} +1 -1
- package/public/{chunk-AOM2KJT6.js → chunk-AZKNOMJL.js} +1 -1
- package/public/{chunk-72OE3TUJ.js → chunk-BYYHHD35.js} +1 -1
- package/public/{chunk-CB7LSOPZ.js → chunk-CEJ47ACH.js} +1 -1
- package/public/{chunk-AZY6WBUV.js → chunk-DF6AC7BX.js} +1 -1
- package/public/{chunk-CKFGKMG2.js → chunk-E4H6ESG4.js} +1 -1
- package/public/{chunk-UXOBPE6L.js → chunk-E6FL6SQ2.js} +1 -1
- package/public/{chunk-DG3RA4KL.js → chunk-GGG55BFS.js} +1 -1
- package/public/{chunk-UJIWLXTG.js → chunk-IOMKPASZ.js} +1 -1
- package/public/{chunk-PHC425DX.js → chunk-ITLWDLYI.js} +1 -1
- package/public/{chunk-7Y7Y24GT.js → chunk-JDULYXIE.js} +1 -1
- package/public/{chunk-K74MXRPR.js → chunk-JOPEEASP.js} +1 -1
- package/public/{chunk-ZJMJZYDM.js → chunk-JTIFGXIK.js} +1 -1
- package/public/{chunk-Z7W3KPEH.js → chunk-KWHMJ4TN.js} +1 -1
- package/public/chunk-L2BZEZMS.js +49 -0
- package/public/{chunk-VSZET6ZU.js → chunk-LIAR6SEI.js} +1 -1
- package/public/chunk-LRP4UK2C.js +1 -0
- package/public/{chunk-VHZYKJH6.js → chunk-LRUNOWMY.js} +11 -9
- package/public/{chunk-RMJCBNQK.js → chunk-LWVHPBRV.js} +1 -1
- package/public/{chunk-TQ6YXD2O.js → chunk-LZRP7D6M.js} +1 -1
- package/public/{chunk-B5DGZSXS.js → chunk-N3CMGFGQ.js} +1 -1
- package/public/{chunk-WH6I5RJ5.js → chunk-NVVXFX5K.js} +1 -1
- package/public/{chunk-5D3IZR56.js → chunk-O5Z6RUN6.js} +1 -1
- package/public/{chunk-L7FTT44T.js → chunk-OXQK4UWV.js} +1 -1
- package/public/{chunk-OKFQPXIS.js → chunk-PNUGTSUC.js} +1 -1
- package/public/{chunk-JC3KVXQK.js → chunk-QISDIMSQ.js} +1 -1
- package/public/{chunk-ONTS6QVF.js → chunk-QXPVXXPG.js} +1 -1
- package/public/{chunk-JWR2KYCI.js → chunk-R5NMQ5HW.js} +1 -1
- package/public/{chunk-V5C3Q57C.js → chunk-RL2DXT2X.js} +1 -1
- package/public/{chunk-POHST5BT.js → chunk-SVBCVHA6.js} +1 -1
- package/public/{chunk-H5PNLIZA.js → chunk-SWXXH4T2.js} +1 -1
- package/public/{chunk-E4D5IOQG.js → chunk-T3AZK3NW.js} +1 -1
- package/public/{chunk-CA7M2FWT.js → chunk-T6QH6SOM.js} +1 -1
- package/public/{chunk-DDWSEYU7.js → chunk-UAXFFECE.js} +1 -1
- package/public/{chunk-RLWWQI2X.js → chunk-UK6SMZQH.js} +1 -1
- package/public/{chunk-T3GQHQSJ.js → chunk-UY7WTZES.js} +1 -1
- package/public/{chunk-QNTPPYHT.js → chunk-XJLJFGGS.js} +1 -1
- package/public/{chunk-LDDNKTBJ.js → chunk-XPIOM6KJ.js} +1 -1
- package/public/{chunk-STXMOKFM.js → chunk-XS7PL6OK.js} +1 -1
- package/public/{chunk-7FEXN47D.js → chunk-XZWJ6UIN.js} +1 -1
- package/public/{chunk-2CNLKODC.js → chunk-YBIXKSXT.js} +1 -1
- package/public/{chunk-S7I3HH6I.js → chunk-YVQQ2QBB.js} +1 -1
- package/public/index.html +1 -1
- package/public/{main-QJUMHP4T.js → main-SRK6IBZL.js} +1 -1
- package/config.schema.json +0 -596
- package/public/chunk-FQJE7EDP.js +0 -20
- package/public/chunk-QBBCY5XK.js +0 -49
- package/public/chunk-U73FXBSH.js +0 -1
package/config.schema.json
DELETED
|
@@ -1,596 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"pluginAlias": "config",
|
|
3
|
-
"pluginType": "platform",
|
|
4
|
-
"singular": true,
|
|
5
|
-
"strictValidation": true,
|
|
6
|
-
"schema": {
|
|
7
|
-
"type": "object",
|
|
8
|
-
"properties": {
|
|
9
|
-
"name": {
|
|
10
|
-
"title": "Name",
|
|
11
|
-
"type": "string",
|
|
12
|
-
"default": "Homebridge UI",
|
|
13
|
-
"minLength": 1,
|
|
14
|
-
"required": true,
|
|
15
|
-
"description": "The name of the Homebridge instance."
|
|
16
|
-
},
|
|
17
|
-
"port": {
|
|
18
|
-
"title": "Port",
|
|
19
|
-
"type": "integer",
|
|
20
|
-
"default": 8080,
|
|
21
|
-
"maximum": 65535,
|
|
22
|
-
"required": true,
|
|
23
|
-
"description": "The port number to run the Homebridge UI on."
|
|
24
|
-
},
|
|
25
|
-
"auth": {
|
|
26
|
-
"title": "Homebridge UI Authentication",
|
|
27
|
-
"type": "string",
|
|
28
|
-
"default": "form",
|
|
29
|
-
"description": "Whether to enable authentication for the Homebridge UI with a username and password.",
|
|
30
|
-
"oneOf": [
|
|
31
|
-
{
|
|
32
|
-
"title": "Require Authentication",
|
|
33
|
-
"enum": [
|
|
34
|
-
"form"
|
|
35
|
-
]
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"title": "None",
|
|
39
|
-
"enum": [
|
|
40
|
-
"none"
|
|
41
|
-
]
|
|
42
|
-
}
|
|
43
|
-
],
|
|
44
|
-
"required": true
|
|
45
|
-
},
|
|
46
|
-
"theme": {
|
|
47
|
-
"title": "UI Theme",
|
|
48
|
-
"description": "The theme used for the UI.",
|
|
49
|
-
"type": "string",
|
|
50
|
-
"default": "orange",
|
|
51
|
-
"oneOf": [
|
|
52
|
-
{
|
|
53
|
-
"title": "Orange",
|
|
54
|
-
"enum": [
|
|
55
|
-
"orange"
|
|
56
|
-
]
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
"title": "Red",
|
|
60
|
-
"enum": [
|
|
61
|
-
"red"
|
|
62
|
-
]
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
"title": "Pink",
|
|
66
|
-
"enum": [
|
|
67
|
-
"pink"
|
|
68
|
-
]
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
"title": "Purple",
|
|
72
|
-
"enum": [
|
|
73
|
-
"purple"
|
|
74
|
-
]
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
"title": "Deep Purple",
|
|
78
|
-
"enum": [
|
|
79
|
-
"deep-purple"
|
|
80
|
-
]
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
"title": "Indigo",
|
|
84
|
-
"enum": [
|
|
85
|
-
"indigo"
|
|
86
|
-
]
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
"title": "Blue",
|
|
90
|
-
"enum": [
|
|
91
|
-
"blue"
|
|
92
|
-
]
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
"title": "Blue Grey",
|
|
96
|
-
"enum": [
|
|
97
|
-
"blue-grey"
|
|
98
|
-
]
|
|
99
|
-
},
|
|
100
|
-
{
|
|
101
|
-
"title": "Cyan",
|
|
102
|
-
"enum": [
|
|
103
|
-
"cyan"
|
|
104
|
-
]
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
"title": "Green",
|
|
108
|
-
"enum": [
|
|
109
|
-
"green"
|
|
110
|
-
]
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
"title": "Teal",
|
|
114
|
-
"enum": [
|
|
115
|
-
"teal"
|
|
116
|
-
]
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
"title": "Grey",
|
|
120
|
-
"enum": [
|
|
121
|
-
"grey"
|
|
122
|
-
]
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
"title": "Brown",
|
|
126
|
-
"enum": [
|
|
127
|
-
"brown"
|
|
128
|
-
]
|
|
129
|
-
}
|
|
130
|
-
],
|
|
131
|
-
"required": true
|
|
132
|
-
},
|
|
133
|
-
"lightingMode": {
|
|
134
|
-
"title": "UI Lighting Mode",
|
|
135
|
-
"description": "The lighting mode used for the UI.",
|
|
136
|
-
"type": "string",
|
|
137
|
-
"default": "auto",
|
|
138
|
-
"oneOf": [
|
|
139
|
-
{
|
|
140
|
-
"title": "Auto",
|
|
141
|
-
"enum": [
|
|
142
|
-
"auto"
|
|
143
|
-
]
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
"title": "Light",
|
|
147
|
-
"enum": [
|
|
148
|
-
"light"
|
|
149
|
-
]
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
"title": "Dark",
|
|
153
|
-
"enum": [
|
|
154
|
-
"dark"
|
|
155
|
-
]
|
|
156
|
-
}
|
|
157
|
-
]
|
|
158
|
-
},
|
|
159
|
-
"menuMode": {
|
|
160
|
-
"title": "Menu Mode",
|
|
161
|
-
"description": "Modes for the UI side menu.",
|
|
162
|
-
"type": "string",
|
|
163
|
-
"default": "default",
|
|
164
|
-
"oneOf": [
|
|
165
|
-
{
|
|
166
|
-
"title": "Default",
|
|
167
|
-
"enum": [
|
|
168
|
-
"default"
|
|
169
|
-
]
|
|
170
|
-
},
|
|
171
|
-
{
|
|
172
|
-
"title": "Freeze",
|
|
173
|
-
"enum": [
|
|
174
|
-
"freeze"
|
|
175
|
-
]
|
|
176
|
-
}
|
|
177
|
-
]
|
|
178
|
-
},
|
|
179
|
-
"temp": {
|
|
180
|
-
"title": "OS Temp File Path",
|
|
181
|
-
"type": "string",
|
|
182
|
-
"placeholder": "e.g. /sys/class/thermal/thermal_zone0/temp",
|
|
183
|
-
"description": "If you are running Homebridge on a Raspberry Pi, you can enter the path to the OS temp file here. This will display the current temperature on the Homebridge status page."
|
|
184
|
-
},
|
|
185
|
-
"tempUnits": {
|
|
186
|
-
"title": "Temperature Display Units",
|
|
187
|
-
"description": "The units used to display the temperature.",
|
|
188
|
-
"type": "string",
|
|
189
|
-
"required": true,
|
|
190
|
-
"default": "c",
|
|
191
|
-
"oneOf": [
|
|
192
|
-
{
|
|
193
|
-
"title": "Celsius",
|
|
194
|
-
"enum": [
|
|
195
|
-
"c"
|
|
196
|
-
]
|
|
197
|
-
},
|
|
198
|
-
{
|
|
199
|
-
"title": "Fahrenheit",
|
|
200
|
-
"enum": [
|
|
201
|
-
"f"
|
|
202
|
-
]
|
|
203
|
-
}
|
|
204
|
-
]
|
|
205
|
-
},
|
|
206
|
-
"lang": {
|
|
207
|
-
"title": "Language",
|
|
208
|
-
"type": "string",
|
|
209
|
-
"default": "auto",
|
|
210
|
-
"description": "The language used for the UI.",
|
|
211
|
-
"required": true,
|
|
212
|
-
"oneOf": [
|
|
213
|
-
{
|
|
214
|
-
"title": "Automatic (Use Browser Settings)",
|
|
215
|
-
"enum": [
|
|
216
|
-
"auto"
|
|
217
|
-
]
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
"title": "Bulgarian (bg)",
|
|
221
|
-
"enum": [
|
|
222
|
-
"bg"
|
|
223
|
-
]
|
|
224
|
-
},
|
|
225
|
-
{
|
|
226
|
-
"title": "Catalan (ca)",
|
|
227
|
-
"enum": [
|
|
228
|
-
"ca"
|
|
229
|
-
]
|
|
230
|
-
},
|
|
231
|
-
{
|
|
232
|
-
"title": "Chinese - Simplified (zh-CN)",
|
|
233
|
-
"enum": [
|
|
234
|
-
"zh-CN"
|
|
235
|
-
]
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
"title": "Chinese - Traditional (zh-TW)",
|
|
239
|
-
"enum": [
|
|
240
|
-
"zh-TW"
|
|
241
|
-
]
|
|
242
|
-
},
|
|
243
|
-
{
|
|
244
|
-
"title": "Czech (cs)",
|
|
245
|
-
"enum": [
|
|
246
|
-
"cs"
|
|
247
|
-
]
|
|
248
|
-
},
|
|
249
|
-
{
|
|
250
|
-
"title": "Dutch (nl)",
|
|
251
|
-
"enum": [
|
|
252
|
-
"nl"
|
|
253
|
-
]
|
|
254
|
-
},
|
|
255
|
-
{
|
|
256
|
-
"title": "English (en)",
|
|
257
|
-
"enum": [
|
|
258
|
-
"en"
|
|
259
|
-
]
|
|
260
|
-
},
|
|
261
|
-
{
|
|
262
|
-
"title": "Finnish (fi)",
|
|
263
|
-
"enum": [
|
|
264
|
-
"fi"
|
|
265
|
-
]
|
|
266
|
-
},
|
|
267
|
-
{
|
|
268
|
-
"title": "French (fr)",
|
|
269
|
-
"enum": [
|
|
270
|
-
"fr"
|
|
271
|
-
]
|
|
272
|
-
},
|
|
273
|
-
{
|
|
274
|
-
"title": "German (de)",
|
|
275
|
-
"enum": [
|
|
276
|
-
"de"
|
|
277
|
-
]
|
|
278
|
-
},
|
|
279
|
-
{
|
|
280
|
-
"title": "Hebrew (he)",
|
|
281
|
-
"enum": [
|
|
282
|
-
"he"
|
|
283
|
-
]
|
|
284
|
-
},
|
|
285
|
-
{
|
|
286
|
-
"title": "Hungarian (hu)",
|
|
287
|
-
"enum": [
|
|
288
|
-
"hu"
|
|
289
|
-
]
|
|
290
|
-
},
|
|
291
|
-
{
|
|
292
|
-
"title": "Indonesian (id)",
|
|
293
|
-
"enum": [
|
|
294
|
-
"id"
|
|
295
|
-
]
|
|
296
|
-
},
|
|
297
|
-
{
|
|
298
|
-
"title": "Italian (it)",
|
|
299
|
-
"enum": [
|
|
300
|
-
"it"
|
|
301
|
-
]
|
|
302
|
-
},
|
|
303
|
-
{
|
|
304
|
-
"title": "Japanese (ja)",
|
|
305
|
-
"enum": [
|
|
306
|
-
"ja"
|
|
307
|
-
]
|
|
308
|
-
},
|
|
309
|
-
{
|
|
310
|
-
"title": "Korean (ko)",
|
|
311
|
-
"enum": [
|
|
312
|
-
"ko"
|
|
313
|
-
]
|
|
314
|
-
},
|
|
315
|
-
{
|
|
316
|
-
"title": "Macedonian (mk)",
|
|
317
|
-
"enum": [
|
|
318
|
-
"mk"
|
|
319
|
-
]
|
|
320
|
-
},
|
|
321
|
-
{
|
|
322
|
-
"title": "Norwegian (no)",
|
|
323
|
-
"enum": [
|
|
324
|
-
"no"
|
|
325
|
-
]
|
|
326
|
-
},
|
|
327
|
-
{
|
|
328
|
-
"title": "Polish (pl)",
|
|
329
|
-
"enum": [
|
|
330
|
-
"pl"
|
|
331
|
-
]
|
|
332
|
-
},
|
|
333
|
-
{
|
|
334
|
-
"title": "Portuguese (Brazil)",
|
|
335
|
-
"enum": [
|
|
336
|
-
"pt-BR"
|
|
337
|
-
]
|
|
338
|
-
},
|
|
339
|
-
{
|
|
340
|
-
"title": "Portuguese (Portugal)",
|
|
341
|
-
"enum": [
|
|
342
|
-
"pt"
|
|
343
|
-
]
|
|
344
|
-
},
|
|
345
|
-
{
|
|
346
|
-
"title": "Russian (ru)",
|
|
347
|
-
"enum": [
|
|
348
|
-
"ru"
|
|
349
|
-
]
|
|
350
|
-
},
|
|
351
|
-
{
|
|
352
|
-
"title": "Slovenian (sl)",
|
|
353
|
-
"enum": [
|
|
354
|
-
"sl"
|
|
355
|
-
]
|
|
356
|
-
},
|
|
357
|
-
{
|
|
358
|
-
"title": "Spanish (es)",
|
|
359
|
-
"enum": [
|
|
360
|
-
"es"
|
|
361
|
-
]
|
|
362
|
-
},
|
|
363
|
-
{
|
|
364
|
-
"title": "Swedish (sv)",
|
|
365
|
-
"enum": [
|
|
366
|
-
"sv"
|
|
367
|
-
]
|
|
368
|
-
},
|
|
369
|
-
{
|
|
370
|
-
"title": "Thai (th)",
|
|
371
|
-
"enum": [
|
|
372
|
-
"th"
|
|
373
|
-
]
|
|
374
|
-
},
|
|
375
|
-
{
|
|
376
|
-
"title": "Turkish (tr)",
|
|
377
|
-
"enum": [
|
|
378
|
-
"tr"
|
|
379
|
-
]
|
|
380
|
-
},
|
|
381
|
-
{
|
|
382
|
-
"title": "Ukrainian (uk)",
|
|
383
|
-
"enum": [
|
|
384
|
-
"uk"
|
|
385
|
-
]
|
|
386
|
-
}
|
|
387
|
-
]
|
|
388
|
-
},
|
|
389
|
-
"wallpaper": {
|
|
390
|
-
"title": "Login Wallpaper Path",
|
|
391
|
-
"description": "The full path to the .jpg file.",
|
|
392
|
-
"type": "string",
|
|
393
|
-
"placeholder": "e.g. /home/pi/mywallpaper.jpg"
|
|
394
|
-
},
|
|
395
|
-
"homebridgePackagePath": {
|
|
396
|
-
"title": "Path To Homebridge Module",
|
|
397
|
-
"type": "string",
|
|
398
|
-
"description": "If you have multiple versions of Homebridge installed, you can specify the path to the version you want to use here.",
|
|
399
|
-
"placeholder": "e.g. /usr/local/lib/node_modules/homebridge"
|
|
400
|
-
},
|
|
401
|
-
"host": {
|
|
402
|
-
"title": "Host IP Address",
|
|
403
|
-
"type": "string",
|
|
404
|
-
"pattern": "^[^{}/ :\\\\]+(?::\\d+)?$",
|
|
405
|
-
"description": "The host IP address to listen on. In most cases this will be '::' or '0.0.0.0'.",
|
|
406
|
-
"placeholder": "e.g. 0.0.0.0"
|
|
407
|
-
},
|
|
408
|
-
"sessionTimeout": {
|
|
409
|
-
"title": "Session Timeout (Seconds)",
|
|
410
|
-
"type": "integer",
|
|
411
|
-
"placeholder": 28800,
|
|
412
|
-
"minimum": 600,
|
|
413
|
-
"maximum": 86400000,
|
|
414
|
-
"description": "The number of seconds before a user will be logged out of the UI. Defaults to 8 hours.",
|
|
415
|
-
"condition": {
|
|
416
|
-
"functionBody": "return model.auth === 'form'"
|
|
417
|
-
}
|
|
418
|
-
},
|
|
419
|
-
"log": {
|
|
420
|
-
"type": "object",
|
|
421
|
-
"title": "Log Settings",
|
|
422
|
-
"description": "The log settings for the Homebridge UI.",
|
|
423
|
-
"properties": {
|
|
424
|
-
"maxSize": {
|
|
425
|
-
"type": "integer",
|
|
426
|
-
"description": "The max log size (bytes). Set to -1 to disable log truncation.",
|
|
427
|
-
"minimum": -1
|
|
428
|
-
},
|
|
429
|
-
"truncateSize": {
|
|
430
|
-
"type": "integer",
|
|
431
|
-
"description": "The size (bytes) to truncate the log to once it goes over the max size specified above.",
|
|
432
|
-
"minimum": 0,
|
|
433
|
-
"condition": {
|
|
434
|
-
"functionBody": "return (model.log && model.log.maxSize > 0)"
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
}
|
|
438
|
-
},
|
|
439
|
-
"ssl": {
|
|
440
|
-
"title": "SSL Setup",
|
|
441
|
-
"type": "object",
|
|
442
|
-
"description": "The SSL settings for the Homebridge UI.",
|
|
443
|
-
"properties": {
|
|
444
|
-
"key": {
|
|
445
|
-
"title": "Private Key Path",
|
|
446
|
-
"type": "string",
|
|
447
|
-
"description": "The full path to the private key file.",
|
|
448
|
-
"placeholder": "e.g. /Users/homebridge/.homebridge/certs/server.key"
|
|
449
|
-
},
|
|
450
|
-
"cert": {
|
|
451
|
-
"title": "Certificate Path",
|
|
452
|
-
"type": "string",
|
|
453
|
-
"description": "The full path to the certificate file.",
|
|
454
|
-
"placeholder": "e.g. /Users/homebridge/.homebridge/certs/server.crt"
|
|
455
|
-
},
|
|
456
|
-
"pfx": {
|
|
457
|
-
"title": "PKCS#12 Certificate Path",
|
|
458
|
-
"type": "string",
|
|
459
|
-
"description": "The full path to the PKCS#12 certificate file.",
|
|
460
|
-
"placeholder": "e.g. /Users/homebridge/.homebridge/certs/server.pfx"
|
|
461
|
-
},
|
|
462
|
-
"passphrase": {
|
|
463
|
-
"title": "PKCS#12 Certificate Passphrase",
|
|
464
|
-
"type": "string",
|
|
465
|
-
"description": "The passphrase for the PKCS#12 certificate file.",
|
|
466
|
-
"placeholder": "e.g. mypassphrase"
|
|
467
|
-
}
|
|
468
|
-
}
|
|
469
|
-
},
|
|
470
|
-
"accessoryControl": {
|
|
471
|
-
"title": "Accessory Control Setup",
|
|
472
|
-
"type": "object",
|
|
473
|
-
"description": "The accessory control settings for the Homebridge UI.",
|
|
474
|
-
"properties": {
|
|
475
|
-
"debug": {
|
|
476
|
-
"title": "Enable Accessory Control Debug Logging",
|
|
477
|
-
"type": "boolean",
|
|
478
|
-
"description": "If enabled, the Homebridge UI will log debug level messages to the console."
|
|
479
|
-
},
|
|
480
|
-
"instanceBlacklist": {
|
|
481
|
-
"title": "Blacklisted Bridges/Instances",
|
|
482
|
-
"type": "array",
|
|
483
|
-
"description": "A list of instances (or bridge usernames) that should not be controlled via the web UI.",
|
|
484
|
-
"placeholder": "e.g. 00:00:00:00:00:00",
|
|
485
|
-
"items": {
|
|
486
|
-
"title": "Instance Username",
|
|
487
|
-
"type": "string",
|
|
488
|
-
"pattern": "^([A-Fa-f0-9]{2}:){5}[A-Fa-f0-9]{2}$"
|
|
489
|
-
}
|
|
490
|
-
}
|
|
491
|
-
}
|
|
492
|
-
},
|
|
493
|
-
"linux": {
|
|
494
|
-
"title": "Linux Server Commands",
|
|
495
|
-
"type": "object",
|
|
496
|
-
"description": "The Linux server commands for the Homebridge UI.",
|
|
497
|
-
"properties": {
|
|
498
|
-
"shutdown": {
|
|
499
|
-
"title": "Shutdown Command",
|
|
500
|
-
"type": "string",
|
|
501
|
-
"placeholder": "e.g. shutdown",
|
|
502
|
-
"description": "If no shutdown command is set the process will terminate with a non-zero exit code."
|
|
503
|
-
},
|
|
504
|
-
"restart": {
|
|
505
|
-
"title": "Restart Command",
|
|
506
|
-
"type": "string",
|
|
507
|
-
"placeholder": "e.g. reboot",
|
|
508
|
-
"description": "If no restart command is set the process will terminate with a non-zero exit code."
|
|
509
|
-
}
|
|
510
|
-
}
|
|
511
|
-
},
|
|
512
|
-
"webroot": {
|
|
513
|
-
"title": "Webroot Path",
|
|
514
|
-
"type": "string",
|
|
515
|
-
"description": "This can be configured if you want to access the Homebridge UI under a specific URL path.",
|
|
516
|
-
"placeholder": "e.g. /ui"
|
|
517
|
-
},
|
|
518
|
-
"proxyHost": {
|
|
519
|
-
"title": "Reverse Proxy Hostname",
|
|
520
|
-
"type": "string",
|
|
521
|
-
"pattern": "^[^{}/ :\\\\]+(?::\\d+)?$",
|
|
522
|
-
"placeholder": "e.g. example.com:8443",
|
|
523
|
-
"description": "When running behind a reverse proxy you may need to enter the hostname you use to access the UI."
|
|
524
|
-
},
|
|
525
|
-
"scheduledBackupPath": {
|
|
526
|
-
"title": "Scheduled Backup Destination",
|
|
527
|
-
"description": "The full path to where the service should save daily scheduled backups archives.",
|
|
528
|
-
"type": "string",
|
|
529
|
-
"placeholder": "e.g. /home/pi/homebridge-backups",
|
|
530
|
-
"condition": {
|
|
531
|
-
"functionBody": "return !model.scheduledBackupDisable"
|
|
532
|
-
}
|
|
533
|
-
},
|
|
534
|
-
"scheduledBackupDisable": {
|
|
535
|
-
"title": "Disable Scheduled Backups",
|
|
536
|
-
"type": "boolean",
|
|
537
|
-
"description": "When enabled, the Homebridge UI will not create daily scheduled backups."
|
|
538
|
-
},
|
|
539
|
-
"disableServerMetricsMonitoring": {
|
|
540
|
-
"title": "Disable Server Metrics Monitoring",
|
|
541
|
-
"type": "boolean",
|
|
542
|
-
"description": "When enabled, the Homebridge UI will not collect or report CPU or memory stats."
|
|
543
|
-
},
|
|
544
|
-
"plugins": {
|
|
545
|
-
"title": "Plugins",
|
|
546
|
-
"type": "object",
|
|
547
|
-
"description": "Settings surrounding plugins used by the Homebridge UI.",
|
|
548
|
-
"properties": {
|
|
549
|
-
"hideUpdatesFor": {
|
|
550
|
-
"type": "array",
|
|
551
|
-
"title": "Hide Plugin Updates For",
|
|
552
|
-
"description": "A list of plugin names for which frontend update notifications will be hidden.",
|
|
553
|
-
"items": {
|
|
554
|
-
"type": "string",
|
|
555
|
-
"title": "Plugin Name",
|
|
556
|
-
"pattern": "^(?:@[\\w-]+(?:\\.[\\w-]+)*/)?homebridge-[\\w-]+$"
|
|
557
|
-
}
|
|
558
|
-
}
|
|
559
|
-
}
|
|
560
|
-
},
|
|
561
|
-
"terminal": {
|
|
562
|
-
"type": "object",
|
|
563
|
-
"title": "Terminal Settings",
|
|
564
|
-
"description": "The terminal settings for the Homebridge UI.",
|
|
565
|
-
"properties": {
|
|
566
|
-
"persistence": {
|
|
567
|
-
"title": "Terminal Session Persistence",
|
|
568
|
-
"type": "boolean",
|
|
569
|
-
"description": "When enabled, terminal sessions will persist when navigating away and can be resumed when returning to the terminal page (or status page widget). Terminal sessions are shared across Homebridge UI admin users.",
|
|
570
|
-
"default": false
|
|
571
|
-
},
|
|
572
|
-
"hideWarning": {
|
|
573
|
-
"title": "Hide Terminal Termination Warning",
|
|
574
|
-
"type": "boolean",
|
|
575
|
-
"description": "When enabled, the warning dialog will not be shown before terminating non-persistent terminal sessions.",
|
|
576
|
-
"default": false,
|
|
577
|
-
"condition": {
|
|
578
|
-
"functionBody": "return !model.terminal?.persistence"
|
|
579
|
-
}
|
|
580
|
-
},
|
|
581
|
-
"bufferSize": {
|
|
582
|
-
"title": "Terminal Buffer Character Size",
|
|
583
|
-
"type": "integer",
|
|
584
|
-
"description": "Amount of terminal output to preserve for persistent sessions. Larger values use more memory.",
|
|
585
|
-
"default": 50000,
|
|
586
|
-
"minimum": 0,
|
|
587
|
-
"condition": {
|
|
588
|
-
"functionBody": "return model.terminal?.persistence"
|
|
589
|
-
}
|
|
590
|
-
}
|
|
591
|
-
}
|
|
592
|
-
}
|
|
593
|
-
}
|
|
594
|
-
},
|
|
595
|
-
"layout": []
|
|
596
|
-
}
|