@switchbot/homebridge-switchbot 2.9.1-beta.3 → 2.9.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 (135) hide show
  1. package/.eslintrc +47 -14
  2. package/.vscode/settings.json +7 -1
  3. package/CHANGELOG.md +79 -70
  4. package/SECURITY.md +2 -2
  5. package/config.schema.json +348 -114
  6. package/dist/device/blindtilt.d.ts +0 -3
  7. package/dist/device/blindtilt.d.ts.map +1 -1
  8. package/dist/device/blindtilt.js +13 -62
  9. package/dist/device/blindtilt.js.map +1 -1
  10. package/dist/device/bot.d.ts +0 -3
  11. package/dist/device/bot.d.ts.map +1 -1
  12. package/dist/device/bot.js +49 -116
  13. package/dist/device/bot.js.map +1 -1
  14. package/dist/device/ceilinglight.d.ts +0 -3
  15. package/dist/device/ceilinglight.d.ts.map +1 -1
  16. package/dist/device/ceilinglight.js +17 -60
  17. package/dist/device/ceilinglight.js.map +1 -1
  18. package/dist/device/colorbulb.d.ts +0 -3
  19. package/dist/device/colorbulb.d.ts.map +1 -1
  20. package/dist/device/colorbulb.js +13 -56
  21. package/dist/device/colorbulb.js.map +1 -1
  22. package/dist/device/contact.d.ts +0 -3
  23. package/dist/device/contact.d.ts.map +1 -1
  24. package/dist/device/contact.js +19 -69
  25. package/dist/device/contact.js.map +1 -1
  26. package/dist/device/curtain.d.ts +0 -3
  27. package/dist/device/curtain.d.ts.map +1 -1
  28. package/dist/device/curtain.js +16 -66
  29. package/dist/device/curtain.js.map +1 -1
  30. package/dist/device/hub.d.ts +1 -4
  31. package/dist/device/hub.d.ts.map +1 -1
  32. package/dist/device/hub.js +16 -69
  33. package/dist/device/hub.js.map +1 -1
  34. package/dist/device/humidifier.d.ts +0 -3
  35. package/dist/device/humidifier.d.ts.map +1 -1
  36. package/dist/device/humidifier.js +16 -63
  37. package/dist/device/humidifier.js.map +1 -1
  38. package/dist/device/iosensor.d.ts +0 -3
  39. package/dist/device/iosensor.d.ts.map +1 -1
  40. package/dist/device/iosensor.js +16 -65
  41. package/dist/device/iosensor.js.map +1 -1
  42. package/dist/device/lightstrip.d.ts +0 -3
  43. package/dist/device/lightstrip.d.ts.map +1 -1
  44. package/dist/device/lightstrip.js +13 -56
  45. package/dist/device/lightstrip.js.map +1 -1
  46. package/dist/device/lock.d.ts +0 -3
  47. package/dist/device/lock.d.ts.map +1 -1
  48. package/dist/device/lock.js +22 -68
  49. package/dist/device/lock.js.map +1 -1
  50. package/dist/device/meter.d.ts +0 -3
  51. package/dist/device/meter.d.ts.map +1 -1
  52. package/dist/device/meter.js +16 -68
  53. package/dist/device/meter.js.map +1 -1
  54. package/dist/device/meterplus.d.ts +1 -4
  55. package/dist/device/meterplus.d.ts.map +1 -1
  56. package/dist/device/meterplus.js +16 -69
  57. package/dist/device/meterplus.js.map +1 -1
  58. package/dist/device/motion.d.ts +0 -3
  59. package/dist/device/motion.d.ts.map +1 -1
  60. package/dist/device/motion.js +12 -62
  61. package/dist/device/motion.js.map +1 -1
  62. package/dist/device/plug.d.ts +0 -3
  63. package/dist/device/plug.d.ts.map +1 -1
  64. package/dist/device/plug.js +6 -53
  65. package/dist/device/plug.js.map +1 -1
  66. package/dist/device/robotvacuumcleaner.d.ts +0 -3
  67. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  68. package/dist/device/robotvacuumcleaner.js +18 -65
  69. package/dist/device/robotvacuumcleaner.js.map +1 -1
  70. package/dist/irdevice/airconditioner.d.ts +0 -1
  71. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  72. package/dist/irdevice/airconditioner.js +9 -47
  73. package/dist/irdevice/airconditioner.js.map +1 -1
  74. package/dist/irdevice/airpurifier.d.ts +0 -1
  75. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  76. package/dist/irdevice/airpurifier.js +9 -47
  77. package/dist/irdevice/airpurifier.js.map +1 -1
  78. package/dist/irdevice/camera.d.ts +0 -1
  79. package/dist/irdevice/camera.d.ts.map +1 -1
  80. package/dist/irdevice/camera.js +9 -47
  81. package/dist/irdevice/camera.js.map +1 -1
  82. package/dist/irdevice/fan.d.ts +0 -1
  83. package/dist/irdevice/fan.d.ts.map +1 -1
  84. package/dist/irdevice/fan.js +9 -47
  85. package/dist/irdevice/fan.js.map +1 -1
  86. package/dist/irdevice/light.d.ts +0 -1
  87. package/dist/irdevice/light.d.ts.map +1 -1
  88. package/dist/irdevice/light.js +9 -47
  89. package/dist/irdevice/light.js.map +1 -1
  90. package/dist/irdevice/other.d.ts +0 -1
  91. package/dist/irdevice/other.d.ts.map +1 -1
  92. package/dist/irdevice/other.js +44 -77
  93. package/dist/irdevice/other.js.map +1 -1
  94. package/dist/irdevice/tv.d.ts +0 -1
  95. package/dist/irdevice/tv.d.ts.map +1 -1
  96. package/dist/irdevice/tv.js +18 -56
  97. package/dist/irdevice/tv.js.map +1 -1
  98. package/dist/irdevice/vacuumcleaner.d.ts +0 -1
  99. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  100. package/dist/irdevice/vacuumcleaner.js +9 -47
  101. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  102. package/dist/irdevice/waterheater.d.ts +0 -1
  103. package/dist/irdevice/waterheater.d.ts.map +1 -1
  104. package/dist/irdevice/waterheater.js +9 -47
  105. package/dist/irdevice/waterheater.js.map +1 -1
  106. package/nodemon.json +4 -2
  107. package/package.json +9 -14
  108. package/src/device/blindtilt.ts +14 -62
  109. package/src/device/bot.ts +51 -108
  110. package/src/device/ceilinglight.ts +17 -61
  111. package/src/device/colorbulb.ts +13 -56
  112. package/src/device/contact.ts +20 -69
  113. package/src/device/curtain.ts +17 -66
  114. package/src/device/hub.ts +16 -70
  115. package/src/device/humidifier.ts +16 -64
  116. package/src/device/iosensor.ts +17 -66
  117. package/src/device/lightstrip.ts +13 -56
  118. package/src/device/lock.ts +22 -69
  119. package/src/device/meter.ts +18 -69
  120. package/src/device/meterplus.ts +17 -70
  121. package/src/device/motion.ts +13 -62
  122. package/src/device/plug.ts +6 -52
  123. package/src/device/robotvacuumcleaner.ts +18 -65
  124. package/src/irdevice/airconditioner.ts +9 -46
  125. package/src/irdevice/airpurifier.ts +9 -48
  126. package/src/irdevice/camera.ts +9 -48
  127. package/src/irdevice/fan.ts +9 -48
  128. package/src/irdevice/light.ts +9 -48
  129. package/src/irdevice/other.ts +44 -78
  130. package/src/irdevice/tv.ts +18 -57
  131. package/src/irdevice/vacuumcleaner.ts +9 -48
  132. package/src/irdevice/waterheater.ts +9 -48
  133. package/tsconfig.json +16 -4
  134. package/.github/npm-version-script.js +0 -81
  135. package/.prettierrc +0 -9
@@ -36,7 +36,11 @@
36
36
  "default": "Keep your Token & Secret a secret!"
37
37
  }
38
38
  },
39
- "required": ["token", "secret", "notice"]
39
+ "required": [
40
+ "token",
41
+ "secret",
42
+ "notice"
43
+ ]
40
44
  },
41
45
  "options": {
42
46
  "type": "object",
@@ -74,92 +78,135 @@
74
78
  "oneOf": [
75
79
  {
76
80
  "title": "Bot",
77
- "enum": ["Bot"]
81
+ "enum": [
82
+ "Bot"
83
+ ]
78
84
  },
79
85
  {
80
86
  "title": "Curtain",
81
- "enum": ["Curtain"]
87
+ "enum": [
88
+ "Curtain"
89
+ ]
82
90
  },
83
91
  {
84
92
  "title": "Blind Tilt",
85
- "enum": ["Blind Tilt"]
93
+ "enum": [
94
+ "Blind Tilt"
95
+ ]
86
96
  },
87
97
  {
88
98
  "title": "Plug",
89
- "enum": ["Plug"]
99
+ "enum": [
100
+ "Plug"
101
+ ]
90
102
  },
91
103
  {
92
104
  "title": "Meter",
93
- "enum": ["Meter"]
105
+ "enum": [
106
+ "Meter"
107
+ ]
94
108
  },
95
109
  {
96
110
  "title": "Motion Sensor",
97
- "enum": ["Motion Sensor"]
111
+ "enum": [
112
+ "Motion Sensor"
113
+ ]
98
114
  },
99
-
100
115
  {
101
116
  "title": "Hub 2",
102
- "enum": ["Hub 2"]
117
+ "enum": [
118
+ "Hub 2"
119
+ ]
103
120
  },
104
121
  {
105
122
  "title": "Contact Sensor",
106
- "enum": ["Contact Sensor"]
123
+ "enum": [
124
+ "Contact Sensor"
125
+ ]
107
126
  },
108
127
  {
109
128
  "title": "Color Bulb",
110
- "enum": ["Color Bulb"]
129
+ "enum": [
130
+ "Color Bulb"
131
+ ]
111
132
  },
112
133
  {
113
134
  "title": "Ceiling Light",
114
- "enum": ["Ceiling Light"]
135
+ "enum": [
136
+ "Ceiling Light"
137
+ ]
115
138
  },
116
139
  {
117
140
  "title": "Ceiling Light Pro",
118
- "enum": ["Ceiling Light Pro"]
141
+ "enum": [
142
+ "Ceiling Light Pro"
143
+ ]
119
144
  },
120
145
  {
121
146
  "title": "Humidifier",
122
- "enum": ["Humidifier"]
147
+ "enum": [
148
+ "Humidifier"
149
+ ]
123
150
  },
124
151
  {
125
152
  "title": "Smart Fan",
126
- "enum": ["Smart Fan"]
153
+ "enum": [
154
+ "Smart Fan"
155
+ ]
127
156
  },
128
157
  {
129
158
  "title": "Smart Lock",
130
- "enum": ["Smart Lock"]
159
+ "enum": [
160
+ "Smart Lock"
161
+ ]
131
162
  },
132
163
  {
133
164
  "title": "Strip Light",
134
- "enum": ["Strip Light"]
165
+ "enum": [
166
+ "Strip Light"
167
+ ]
135
168
  },
136
169
  {
137
170
  "title": "Meter Plus (US)",
138
- "enum": ["MeterPlus"]
171
+ "enum": [
172
+ "MeterPlus"
173
+ ]
139
174
  },
140
175
  {
141
176
  "title": "Meter Plus (JP)",
142
- "enum": ["Meter Plus (JP)"]
177
+ "enum": [
178
+ "Meter Plus (JP)"
179
+ ]
143
180
  },
144
181
  {
145
182
  "title": "Indoor/Outdoor Sensor",
146
- "enum": ["WoIOSensor"]
183
+ "enum": [
184
+ "WoIOSensor"
185
+ ]
147
186
  },
148
187
  {
149
188
  "title": "Plug Mini (US)",
150
- "enum": ["Plug Mini (US)"]
189
+ "enum": [
190
+ "Plug Mini (US)"
191
+ ]
151
192
  },
152
193
  {
153
194
  "title": "Plug Mini (JP)",
154
- "enum": ["Plug Mini (JP)"]
195
+ "enum": [
196
+ "Plug Mini (JP)"
197
+ ]
155
198
  },
156
199
  {
157
200
  "title": "Robot Vacuum Cleaner S1",
158
- "enum": ["Robot Vacuum Cleaner S1"]
201
+ "enum": [
202
+ "Robot Vacuum Cleaner S1"
203
+ ]
159
204
  },
160
205
  {
161
206
  "title": "Robot Vacuum Cleaner S1 Plus",
162
- "enum": ["Robot Vacuum Cleaner S1 Plus"]
207
+ "enum": [
208
+ "Robot Vacuum Cleaner S1 Plus"
209
+ ]
163
210
  }
164
211
  ],
165
212
  "condition": {
@@ -172,19 +219,27 @@
172
219
  "oneOf": [
173
220
  {
174
221
  "title": "BLE/OpenAPI",
175
- "enum": ["BLE/OpenAPI"]
222
+ "enum": [
223
+ "BLE/OpenAPI"
224
+ ]
176
225
  },
177
226
  {
178
227
  "title": "OpenAPI",
179
- "enum": ["OpenAPI"]
228
+ "enum": [
229
+ "OpenAPI"
230
+ ]
180
231
  },
181
232
  {
182
233
  "title": "BLE",
183
- "enum": ["BLE"]
234
+ "enum": [
235
+ "BLE"
236
+ ]
184
237
  },
185
238
  {
186
239
  "title": "Disable",
187
- "enum": ["Disabled"]
240
+ "enum": [
241
+ "Disabled"
242
+ ]
188
243
  }
189
244
  ],
190
245
  "description": "Bluetooth (BLE) API is only available for the following Device Types: Humidifier, Meter, MeterPlus, Curtain, Bot, Motion Sensor, Contact Sensor, Plug Mini (US), Plug Mini (JP), & Color Bulb",
@@ -245,19 +300,27 @@
245
300
  "oneOf": [
246
301
  {
247
302
  "title": "Default",
248
- "enum": [""]
303
+ "enum": [
304
+ ""
305
+ ]
249
306
  },
250
307
  {
251
308
  "title": "Press",
252
- "enum": ["press"]
309
+ "enum": [
310
+ "press"
311
+ ]
253
312
  },
254
313
  {
255
314
  "title": "Switch",
256
- "enum": ["switch"]
315
+ "enum": [
316
+ "switch"
317
+ ]
257
318
  },
258
319
  {
259
320
  "title": "Multi-Press",
260
- "enum": ["multipress"]
321
+ "enum": [
322
+ "multipress"
323
+ ]
261
324
  }
262
325
  ],
263
326
  "description": "Press Mode presses one time per 'On' state in the Home App/API. Switch Mode allows you to set how many presses occur when the device is set to 'On'. Multi-Press allows you to queue up multiple button presses. It creates a queue by counting each time the device is set to 'On'. It is most useful for scripting with cURL requests or other API calls. Multi-Press only works when using OpenAPI.",
@@ -273,47 +336,69 @@
273
336
  "oneOf": [
274
337
  {
275
338
  "title": "Default",
276
- "enum": [""]
339
+ "enum": [
340
+ ""
341
+ ]
277
342
  },
278
343
  {
279
344
  "title": "Outlet",
280
- "enum": ["outlet"]
345
+ "enum": [
346
+ "outlet"
347
+ ]
281
348
  },
282
349
  {
283
350
  "title": "Garage Door",
284
- "enum": ["garagedoor"]
351
+ "enum": [
352
+ "garagedoor"
353
+ ]
285
354
  },
286
355
  {
287
356
  "title": "Door",
288
- "enum": ["door"]
357
+ "enum": [
358
+ "door"
359
+ ]
289
360
  },
290
361
  {
291
362
  "title": "Lock",
292
- "enum": ["lock"]
363
+ "enum": [
364
+ "lock"
365
+ ]
293
366
  },
294
367
  {
295
368
  "title": "Faucet",
296
- "enum": ["faucet"]
369
+ "enum": [
370
+ "faucet"
371
+ ]
297
372
  },
298
373
  {
299
374
  "title": "Fan",
300
- "enum": ["fan"]
375
+ "enum": [
376
+ "fan"
377
+ ]
301
378
  },
302
379
  {
303
380
  "title": "Window",
304
- "enum": ["window"]
381
+ "enum": [
382
+ "window"
383
+ ]
305
384
  },
306
385
  {
307
386
  "title": "Window Covering",
308
- "enum": ["windowcovering"]
387
+ "enum": [
388
+ "windowcovering"
389
+ ]
309
390
  },
310
391
  {
311
392
  "title": "Stateful Programmable Switch (Only Works in 3rd Party Home Apps)",
312
- "enum": ["stateful"]
393
+ "enum": [
394
+ "stateful"
395
+ ]
313
396
  },
314
397
  {
315
398
  "title": "Switch",
316
- "enum": ["switch"]
399
+ "enum": [
400
+ "switch"
401
+ ]
317
402
  }
318
403
  ],
319
404
  "placeholder": "outlet",
@@ -440,11 +525,15 @@
440
525
  "oneOf": [
441
526
  {
442
527
  "title": "Performance Mode",
443
- "enum": ["0"]
528
+ "enum": [
529
+ "0"
530
+ ]
444
531
  },
445
532
  {
446
533
  "title": "Silent Mode",
447
- "enum": ["1"]
534
+ "enum": [
535
+ "1"
536
+ ]
448
537
  }
449
538
  ],
450
539
  "condition": {
@@ -457,11 +546,15 @@
457
546
  "oneOf": [
458
547
  {
459
548
  "title": "Performance Mode",
460
- "enum": ["0"]
549
+ "enum": [
550
+ "0"
551
+ ]
461
552
  },
462
553
  {
463
554
  "title": "Silent Mode",
464
- "enum": ["1"]
555
+ "enum": [
556
+ "1"
557
+ ]
465
558
  }
466
559
  ],
467
560
  "condition": {
@@ -502,23 +595,33 @@
502
595
  "oneOf": [
503
596
  {
504
597
  "title": "Middle to Up",
505
- "enum": ["only_up"]
598
+ "enum": [
599
+ "only_up"
600
+ ]
506
601
  },
507
602
  {
508
603
  "title": "Middle to Down",
509
- "enum": ["only_down"]
604
+ "enum": [
605
+ "only_down"
606
+ ]
510
607
  },
511
608
  {
512
609
  "title": "Down-to-Up",
513
- "enum": ["down_and_up"]
610
+ "enum": [
611
+ "down_and_up"
612
+ ]
514
613
  },
515
614
  {
516
615
  "title": "Up-to-Down",
517
- "enum": ["up_and_down"]
616
+ "enum": [
617
+ "up_and_down"
618
+ ]
518
619
  },
519
620
  {
520
621
  "title": "Tilt Direction",
521
- "enum": ["use_tilt_for_direction"]
622
+ "enum": [
623
+ "use_tilt_for_direction"
624
+ ]
522
625
  }
523
626
  ],
524
627
  "description": "Defines how the Home app sliders control the blind tilt.",
@@ -774,19 +877,27 @@
774
877
  "oneOf": [
775
878
  {
776
879
  "title": "Default Logging",
777
- "enum": [""]
880
+ "enum": [
881
+ ""
882
+ ]
778
883
  },
779
884
  {
780
885
  "title": "Standard Logging",
781
- "enum": ["standard"]
886
+ "enum": [
887
+ "standard"
888
+ ]
782
889
  },
783
890
  {
784
891
  "title": "No Logging",
785
- "enum": ["none"]
892
+ "enum": [
893
+ "none"
894
+ ]
786
895
  },
787
896
  {
788
897
  "title": "Debug Logging",
789
- "enum": ["debug"]
898
+ "enum": [
899
+ "debug"
900
+ ]
790
901
  }
791
902
  ],
792
903
  "condition": {
@@ -794,7 +905,13 @@
794
905
  }
795
906
  }
796
907
  },
797
- "required": ["deviceId", "configDeviceType", "configDeviceName", "connectionType", "logging"]
908
+ "required": [
909
+ "deviceId",
910
+ "configDeviceType",
911
+ "configDeviceName",
912
+ "connectionType",
913
+ "logging"
914
+ ]
798
915
  },
799
916
  "uniqueItems": true
800
917
  },
@@ -831,111 +948,165 @@
831
948
  "oneOf": [
832
949
  {
833
950
  "title": "Air Conditioner (IR)",
834
- "enum": ["Air Conditioner"]
951
+ "enum": [
952
+ "Air Conditioner"
953
+ ]
835
954
  },
836
955
  {
837
956
  "title": "DIY Air Conditioner (IR)",
838
- "enum": ["DIY Air Conditioner"]
957
+ "enum": [
958
+ "DIY Air Conditioner"
959
+ ]
839
960
  },
840
961
  {
841
962
  "title": "TV (IR)",
842
- "enum": ["TV"]
963
+ "enum": [
964
+ "TV"
965
+ ]
843
966
  },
844
967
  {
845
968
  "title": "DIY TV (IR)",
846
- "enum": ["DIY TV"]
969
+ "enum": [
970
+ "DIY TV"
971
+ ]
847
972
  },
848
973
  {
849
974
  "title": "Light (IR)",
850
- "enum": ["Light"]
975
+ "enum": [
976
+ "Light"
977
+ ]
851
978
  },
852
979
  {
853
980
  "title": "DIY Light (IR)",
854
- "enum": ["DIY Light"]
981
+ "enum": [
982
+ "DIY Light"
983
+ ]
855
984
  },
856
985
  {
857
986
  "title": "IPTV (IR)",
858
- "enum": ["IPTV"]
987
+ "enum": [
988
+ "IPTV"
989
+ ]
859
990
  },
860
991
  {
861
992
  "title": "DIY IPTV (IR)",
862
- "enum": ["DIY IPTV"]
993
+ "enum": [
994
+ "DIY IPTV"
995
+ ]
863
996
  },
864
997
  {
865
998
  "title": "Set Top Box (IR)",
866
- "enum": ["Set Top Box"]
999
+ "enum": [
1000
+ "Set Top Box"
1001
+ ]
867
1002
  },
868
1003
  {
869
1004
  "title": "DIY Set Top Box (IR)",
870
- "enum": ["DIY Set Top Box"]
1005
+ "enum": [
1006
+ "DIY Set Top Box"
1007
+ ]
871
1008
  },
872
1009
  {
873
1010
  "title": "DVD (IR)",
874
- "enum": ["DVD"]
1011
+ "enum": [
1012
+ "DVD"
1013
+ ]
875
1014
  },
876
1015
  {
877
1016
  "title": "DIY DVD (IR)",
878
- "enum": ["DIY DVD"]
1017
+ "enum": [
1018
+ "DIY DVD"
1019
+ ]
879
1020
  },
880
1021
  {
881
1022
  "title": "Fan (IR)",
882
- "enum": ["Fan"]
1023
+ "enum": [
1024
+ "Fan"
1025
+ ]
883
1026
  },
884
1027
  {
885
1028
  "title": "DIY Fan (IR)",
886
- "enum": ["DIY Fan"]
1029
+ "enum": [
1030
+ "DIY Fan"
1031
+ ]
887
1032
  },
888
1033
  {
889
1034
  "title": "Projector (IR)",
890
- "enum": ["Projector"]
1035
+ "enum": [
1036
+ "Projector"
1037
+ ]
891
1038
  },
892
1039
  {
893
1040
  "title": "DIY Projector (IR)",
894
- "enum": ["DIY Projector"]
1041
+ "enum": [
1042
+ "DIY Projector"
1043
+ ]
895
1044
  },
896
1045
  {
897
1046
  "title": "Camera (IR)",
898
- "enum": ["Camera"]
1047
+ "enum": [
1048
+ "Camera"
1049
+ ]
899
1050
  },
900
1051
  {
901
1052
  "title": "DIY Camera (IR)",
902
- "enum": ["DIY Camera"]
1053
+ "enum": [
1054
+ "DIY Camera"
1055
+ ]
903
1056
  },
904
1057
  {
905
1058
  "title": "Air Purifier (IR)",
906
- "enum": ["Air Purifier"]
1059
+ "enum": [
1060
+ "Air Purifier"
1061
+ ]
907
1062
  },
908
1063
  {
909
1064
  "title": "DIY Air Purifier (IR)",
910
- "enum": ["DIY Air Purifier"]
1065
+ "enum": [
1066
+ "DIY Air Purifier"
1067
+ ]
911
1068
  },
912
1069
  {
913
1070
  "title": "Speaker (IR)",
914
- "enum": ["Speaker"]
1071
+ "enum": [
1072
+ "Speaker"
1073
+ ]
915
1074
  },
916
1075
  {
917
1076
  "title": "DIY Speaker (IR)",
918
- "enum": ["DIY Speaker"]
1077
+ "enum": [
1078
+ "DIY Speaker"
1079
+ ]
919
1080
  },
920
1081
  {
921
1082
  "title": "Water Heater (IR)",
922
- "enum": ["Water Heater"]
1083
+ "enum": [
1084
+ "Water Heater"
1085
+ ]
923
1086
  },
924
1087
  {
925
1088
  "title": "DIY Water Heater (IR)",
926
- "enum": ["DIY Water Heater"]
1089
+ "enum": [
1090
+ "DIY Water Heater"
1091
+ ]
927
1092
  },
928
1093
  {
929
1094
  "title": "Vacuum Cleaner (IR)",
930
- "enum": ["Vacuum Cleaner"]
1095
+ "enum": [
1096
+ "Vacuum Cleaner"
1097
+ ]
931
1098
  },
932
1099
  {
933
1100
  "title": "DIY Vacuum Cleaner (IR)",
934
- "enum": ["DIY Vacuum Cleaner"]
1101
+ "enum": [
1102
+ "DIY Vacuum Cleaner"
1103
+ ]
935
1104
  },
936
1105
  {
937
1106
  "title": "Others (IR)",
938
- "enum": ["Others"]
1107
+ "enum": [
1108
+ "Others"
1109
+ ]
939
1110
  }
940
1111
  ],
941
1112
  "condition": {
@@ -948,11 +1119,15 @@
948
1119
  "oneOf": [
949
1120
  {
950
1121
  "title": "OpenAPI",
951
- "enum": ["OpenAPI"]
1122
+ "enum": [
1123
+ "OpenAPI"
1124
+ ]
952
1125
  },
953
1126
  {
954
1127
  "title": "Disable",
955
- "enum": ["Disabled"]
1128
+ "enum": [
1129
+ "Disabled"
1130
+ ]
956
1131
  }
957
1132
  ],
958
1133
  "description": "Enables OpenAPI, if disabled will leave device in HomeKit and commands will not be sent to OpenAPI.",
@@ -1031,23 +1206,33 @@
1031
1206
  "oneOf": [
1032
1207
  {
1033
1208
  "title": "Meter",
1034
- "enum": ["Meter"]
1209
+ "enum": [
1210
+ "Meter"
1211
+ ]
1035
1212
  },
1036
1213
  {
1037
1214
  "title": "MeterPlus",
1038
- "enum": ["MeterPlus"]
1215
+ "enum": [
1216
+ "MeterPlus"
1217
+ ]
1039
1218
  },
1040
1219
  {
1041
1220
  "title": "Meter Plus (JP)",
1042
- "enum": ["Meter Plus (JP)"]
1221
+ "enum": [
1222
+ "Meter Plus (JP)"
1223
+ ]
1043
1224
  },
1044
1225
  {
1045
1226
  "title": "Hub 2",
1046
- "enum": ["Hub 2"]
1227
+ "enum": [
1228
+ "Hub 2"
1229
+ ]
1047
1230
  },
1048
1231
  {
1049
1232
  "title": "WoIOSensor",
1050
- "enum": ["WoIOSensor"]
1233
+ "enum": [
1234
+ "WoIOSensor"
1235
+ ]
1051
1236
  }
1052
1237
  ],
1053
1238
  "condition": {
@@ -1117,47 +1302,69 @@
1117
1302
  "oneOf": [
1118
1303
  {
1119
1304
  "title": "Default",
1120
- "enum": [""]
1305
+ "enum": [
1306
+ ""
1307
+ ]
1121
1308
  },
1122
1309
  {
1123
1310
  "title": "Outlet",
1124
- "enum": ["outlet"]
1311
+ "enum": [
1312
+ "outlet"
1313
+ ]
1125
1314
  },
1126
1315
  {
1127
1316
  "title": "Garage Door",
1128
- "enum": ["garagedoor"]
1317
+ "enum": [
1318
+ "garagedoor"
1319
+ ]
1129
1320
  },
1130
1321
  {
1131
1322
  "title": "Door",
1132
- "enum": ["door"]
1323
+ "enum": [
1324
+ "door"
1325
+ ]
1133
1326
  },
1134
1327
  {
1135
1328
  "title": "Lock",
1136
- "enum": ["lock"]
1329
+ "enum": [
1330
+ "lock"
1331
+ ]
1137
1332
  },
1138
1333
  {
1139
1334
  "title": "Faucet",
1140
- "enum": ["faucet"]
1335
+ "enum": [
1336
+ "faucet"
1337
+ ]
1141
1338
  },
1142
1339
  {
1143
1340
  "title": "Fan",
1144
- "enum": ["fan"]
1341
+ "enum": [
1342
+ "fan"
1343
+ ]
1145
1344
  },
1146
1345
  {
1147
1346
  "title": "Window",
1148
- "enum": ["window"]
1347
+ "enum": [
1348
+ "window"
1349
+ ]
1149
1350
  },
1150
1351
  {
1151
1352
  "title": "Window Covering",
1152
- "enum": ["windowcovering"]
1353
+ "enum": [
1354
+ "windowcovering"
1355
+ ]
1153
1356
  },
1154
1357
  {
1155
1358
  "title": "Stateful Programmable Switch (Only Works in 3rd Party Home Apps)",
1156
- "enum": ["stateful"]
1359
+ "enum": [
1360
+ "stateful"
1361
+ ]
1157
1362
  },
1158
1363
  {
1159
1364
  "title": "Switch",
1160
- "enum": ["switch"]
1365
+ "enum": [
1366
+ "switch"
1367
+ ]
1161
1368
  }
1162
1369
  ],
1163
1370
  "condition": {
@@ -1189,19 +1396,27 @@
1189
1396
  "oneOf": [
1190
1397
  {
1191
1398
  "title": "Default Logging",
1192
- "enum": [""]
1399
+ "enum": [
1400
+ ""
1401
+ ]
1193
1402
  },
1194
1403
  {
1195
1404
  "title": "Standard Logging",
1196
- "enum": ["standard"]
1405
+ "enum": [
1406
+ "standard"
1407
+ ]
1197
1408
  },
1198
1409
  {
1199
1410
  "title": "No Logging",
1200
- "enum": ["none"]
1411
+ "enum": [
1412
+ "none"
1413
+ ]
1201
1414
  },
1202
1415
  {
1203
1416
  "title": "Debug Logging",
1204
- "enum": ["debug"]
1417
+ "enum": [
1418
+ "debug"
1419
+ ]
1205
1420
  }
1206
1421
  ],
1207
1422
  "condition": {
@@ -1209,7 +1424,12 @@
1209
1424
  }
1210
1425
  }
1211
1426
  },
1212
- "required": ["deviceId", "configRemoteType", "connectionType", "logging"]
1427
+ "required": [
1428
+ "deviceId",
1429
+ "configRemoteType",
1430
+ "connectionType",
1431
+ "logging"
1432
+ ]
1213
1433
  },
1214
1434
  "uniqueItems": true
1215
1435
  },
@@ -1233,24 +1453,35 @@
1233
1453
  "oneOf": [
1234
1454
  {
1235
1455
  "title": "Default Logging",
1236
- "enum": [""]
1456
+ "enum": [
1457
+ ""
1458
+ ]
1237
1459
  },
1238
1460
  {
1239
1461
  "title": "Standard Logging",
1240
- "enum": ["standard"]
1462
+ "enum": [
1463
+ "standard"
1464
+ ]
1241
1465
  },
1242
1466
  {
1243
1467
  "title": "No Logging",
1244
- "enum": ["none"]
1468
+ "enum": [
1469
+ "none"
1470
+ ]
1245
1471
  },
1246
1472
  {
1247
1473
  "title": "Debug Logging",
1248
- "enum": ["debug"]
1474
+ "enum": [
1475
+ "debug"
1476
+ ]
1249
1477
  }
1250
1478
  ]
1251
1479
  }
1252
1480
  },
1253
- "required": ["name", "logging"]
1481
+ "required": [
1482
+ "name",
1483
+ "logging"
1484
+ ]
1254
1485
  }
1255
1486
  }
1256
1487
  },
@@ -1260,7 +1491,10 @@
1260
1491
  "title": "SwitchBot Account Info",
1261
1492
  "expandable": true,
1262
1493
  "expanded": false,
1263
- "items": ["credentials.token", "credentials.secret"]
1494
+ "items": [
1495
+ "credentials.token",
1496
+ "credentials.secret"
1497
+ ]
1264
1498
  },
1265
1499
  {
1266
1500
  "type": "fieldset",
@@ -1407,4 +1641,4 @@
1407
1641
  ]
1408
1642
  }
1409
1643
  ]
1410
- }
1644
+ }