homebridge-dummy 1.2.0-beta.0 → 1.3.0-beta.0

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 (62) hide show
  1. package/CHANGELOG.md +19 -7
  2. package/README.md +61 -24
  3. package/config.schema.json +92 -0
  4. package/dist/accessory/base.d.ts +2 -2
  5. package/dist/accessory/base.js +9 -3
  6. package/dist/accessory/base.js.map +1 -1
  7. package/dist/accessory/group.d.ts +1 -1
  8. package/dist/accessory/group.js +2 -2
  9. package/dist/accessory/group.js.map +1 -1
  10. package/dist/accessory/helpers.d.ts +1 -1
  11. package/dist/accessory/helpers.js +9 -9
  12. package/dist/accessory/helpers.js.map +1 -1
  13. package/dist/accessory/lock.d.ts +1 -1
  14. package/dist/accessory/lock.js +12 -11
  15. package/dist/accessory/lock.js.map +1 -1
  16. package/dist/accessory/onoff/lightbulb.d.ts +1 -1
  17. package/dist/accessory/onoff/lightbulb.js +4 -4
  18. package/dist/accessory/onoff/lightbulb.js.map +1 -1
  19. package/dist/accessory/onoff/onoff.d.ts +1 -1
  20. package/dist/accessory/onoff/onoff.js +8 -10
  21. package/dist/accessory/onoff/onoff.js.map +1 -1
  22. package/dist/accessory/position/position.d.ts +1 -1
  23. package/dist/accessory/position/position.js +12 -11
  24. package/dist/accessory/position/position.js.map +1 -1
  25. package/dist/accessory/sensor.d.ts +0 -1
  26. package/dist/accessory/sensor.js +6 -4
  27. package/dist/accessory/sensor.js.map +1 -1
  28. package/dist/accessory/thermostat.d.ts +1 -1
  29. package/dist/accessory/thermostat.js +13 -7
  30. package/dist/accessory/thermostat.js.map +1 -1
  31. package/dist/homebridge/platform.js +4 -3
  32. package/dist/homebridge/platform.js.map +1 -1
  33. package/dist/homebridge-ui/public/index.html +1 -1
  34. package/dist/homebridge-ui/public/ui.js +1 -1
  35. package/dist/i18n/en.d.ts +28 -1
  36. package/dist/i18n/en.js +28 -1
  37. package/dist/i18n/en.js.map +1 -1
  38. package/dist/i18n/i18n.d.ts +28 -1
  39. package/dist/i18n/template.d.ts +28 -1
  40. package/dist/i18n/zz.d.ts +28 -1
  41. package/dist/model/enums.d.ts +17 -2
  42. package/dist/model/enums.js +30 -2
  43. package/dist/model/enums.js.map +1 -1
  44. package/dist/model/types.d.ts +8 -1
  45. package/dist/model/webhook.js +6 -1
  46. package/dist/model/webhook.js.map +1 -1
  47. package/dist/timeout/limiter.d.ts +17 -0
  48. package/dist/timeout/limiter.js +137 -0
  49. package/dist/timeout/limiter.js.map +1 -0
  50. package/dist/timeout/schedule.d.ts +0 -1
  51. package/dist/timeout/schedule.js +9 -4
  52. package/dist/timeout/schedule.js.map +1 -1
  53. package/dist/timeout/timeout.d.ts +6 -2
  54. package/dist/timeout/timeout.js +62 -58
  55. package/dist/timeout/timeout.js.map +1 -1
  56. package/dist/timeout/timer.d.ts +1 -1
  57. package/dist/timeout/timer.js +12 -4
  58. package/dist/timeout/timer.js.map +1 -1
  59. package/dist/tools/storage.d.ts +4 -2
  60. package/dist/tools/storage.js +5 -6
  61. package/dist/tools/storage.js.map +1 -1
  62. package/package.json +4 -8
package/dist/i18n/en.js CHANGED
@@ -1,8 +1,8 @@
1
1
  const en = {
2
2
  accessory: {
3
+ badValueType: '%s expected type %s but was %s', // accessory name, variable type, variable type
3
4
  invalidCron: '%s has an invalid cron expression %s', // accessory name, cron string
4
5
  missingRequired: '%s is missing required field %s', // accessory name, variable name
5
- badValueType: '%s expected type %s but was %s', // accessory name, variable type, variable type
6
6
  command: {
7
7
  executed: '%s executed command', // accessory name
8
8
  error: '%s failed to execute command', // accessory name
@@ -12,6 +12,7 @@ const en = {
12
12
  stateOn: '%s is on, brightness is %d%', // accessory name, number
13
13
  },
14
14
  lock: {
15
+ badDefault: '%s has invalid default lock state %s. Must be one of: %s', // accessory name, input, list of state names
15
16
  secured: '%s is locked', // accessory name
16
17
  unsecured: '%s is unlocked', // accessory name
17
18
  },
@@ -20,11 +21,14 @@ const en = {
20
21
  stateOff: '%s is off', // accessory name
21
22
  },
22
23
  position: {
24
+ badDefault: '%s has invalid default position %s. Must be one of: %s', // accessory name, input, list of position names
23
25
  closed: '%s is closed', // accessory name
24
26
  open: '%s is open', // accessory name
25
27
  },
26
28
  thermostat: {
27
29
  auto: '%s set to Auto', // accessory name
30
+ badDefault: '%s has invalid default state %s. Must be one of: %s', // accessory name, input, list of state names
31
+ badUnits: '%s has invalid temperature units %s. Must be one of: %s', // accessory name, input, list of unit names
28
32
  cool: '%s set to Cool', // accessory name
29
33
  heat: '%s set to Heat', // accessory name
30
34
  off: '%s set to Off', // accessory name
@@ -32,7 +36,18 @@ const en = {
32
36
  temperatureF: '%s set to %d°F', // accessory name, number
33
37
  unsupportedFunction: '%s is unsupported for thermostats', // function name
34
38
  },
39
+ limiter: {
40
+ badPeriod: 'The time limit for %s has invalid period %s. Must be one of: %s', // accessory name, input, list of unit names
41
+ badUnits: 'The time limit for %s has invalid units %s. Must be one of: %s', // accessory name, input, list of unit names
42
+ expired: 'The time limit for %s has expired', // accessory name
43
+ limitExceedsPeriod: 'The time limit for %s exceeds period. Please reduce the limit or increase the period.', // accessory name
44
+ remainingDayPlus: 'The time limit for %s has more than a day remaining', // accessory name
45
+ remainingHours: 'The time limit for %s has %s hours remaining', // accessory name, number
46
+ remainingMinutes: 'The time limit for %s has %s minutes remaining', // accessory name, number
47
+ remainingSeconds: 'The time limit for %s has %s seconds remaining', // accessory name, number
48
+ },
35
49
  timer: {
50
+ badUnits: '%s timer has invalid time units %s. Must be one of: %s', // accessory name, input, list of unit names
36
51
  cancel: 'Cancelled the timer for %s', // accessory name
37
52
  setMilliseconds: '%s is waiting %s milliseconds', // accessory name, number
38
53
  setSeconds: '%s is waiting %s seconds', // accessory name, number
@@ -40,6 +55,8 @@ const en = {
40
55
  setHours: '%s is waiting %s hours', // accessory name, number
41
56
  },
42
57
  schedule: {
58
+ badType: '%s has invalid schedule type %s. Must be one of: %s', // accessory name, input, list of type names
59
+ badUnits: '%s schedule has invalid time units %s. Must be one of: %s', // accessory name, input, list of unit names
43
60
  cron: '%s starting schedule cronjob', // accessory name
44
61
  intervalMilliseconds: '%s scheduled for %s milliseconds', // accessory name, number
45
62
  intervalSeconds: '%s scheduled for %s seconds', // accessory name, number
@@ -63,6 +80,7 @@ const en = {
63
80
  description: {
64
81
  commands: 'Execute arbitrary commands (e.g. curl) when the accessory changes state',
65
82
  cron: 'Visit crontab.guru for help',
83
+ limiter: 'Restrict the total time this accessory can be set to its non-default value, for each specified period',
66
84
  random: 'Time will be randomized with the above value as a maximum',
67
85
  timerControlled: 'Instead of mirroring accessory, sensor will be activated when accessory auto-resets',
68
86
  timer: 'Return the accessory to its default value after the specified delay',
@@ -79,9 +97,11 @@ const en = {
79
97
  cron: 'Cron',
80
98
  custom: 'Custom',
81
99
  daily: 'Daily',
100
+ day: 'Day',
82
101
  door: 'Door',
83
102
  fahrenheit: '°F',
84
103
  heat: 'Heat',
104
+ hour: 'Hour',
85
105
  hourly: 'Hourly',
86
106
  hours: 'Hours',
87
107
  interval: 'Interval',
@@ -89,6 +109,7 @@ const en = {
89
109
  lightbulb: 'Lightbulb',
90
110
  lockMechanism: 'Lock',
91
111
  minutely: 'Every Minute',
112
+ month: 'Month',
92
113
  monthly: 'Monthly',
93
114
  off: 'Off',
94
115
  occupancySensor: 'Occupancy',
@@ -107,6 +128,7 @@ const en = {
107
128
  unsecured: 'Unlocked',
108
129
  weekdays: 'Weekdays',
109
130
  weekends: 'Weekends',
131
+ week: 'Week',
110
132
  weekly: 'Weekly',
111
133
  window: 'Window',
112
134
  windowCovering: 'Window Convering (Blinds)',
@@ -134,6 +156,9 @@ const en = {
134
156
  groupName: 'Group Name',
135
157
  interval: 'Interval',
136
158
  name: 'Name',
159
+ limit: 'Limit',
160
+ limiter: 'Time Limit',
161
+ period: 'Per',
137
162
  preset: 'Preset',
138
163
  resetOnRestart: 'Reset on Restart',
139
164
  timer: 'Auto-Reset Timer',
@@ -146,6 +171,7 @@ const en = {
146
171
  },
147
172
  },
148
173
  sensor: {
174
+ badType: '%s has invalid sensor type %s. Must be one of: %s', // accessory name, input, list of type names
149
175
  carbonDioxide: {
150
176
  active: '%s detected carbon dioxide', // accessory name
151
177
  inactive: '%s stopped detecting carbon dioxide', // accessory name
@@ -195,6 +221,7 @@ const en = {
195
221
  ],
196
222
  },
197
223
  webhook: {
224
+ badUnits: 'The %s webhook command has invalid temperature units %s. Must be one of:', // accessory name, input, list of unit names
198
225
  missing: 'Request is missing the following fields:',
199
226
  received: 'Webhook command received',
200
227
  register: 'Registering accessory with id %s for webhook command %s', // id, command
@@ -1 +1 @@
1
- {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"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"}
@@ -9,9 +9,9 @@ export declare function setLanguage(i18nLang: string): void;
9
9
  export declare function getAllTranslations(): Translation;
10
10
  declare const translations: {
11
11
  accessory: {
12
+ badValueType: string;
12
13
  invalidCron: string;
13
14
  missingRequired: string;
14
- badValueType: string;
15
15
  command: {
16
16
  executed: string;
17
17
  error: string;
@@ -21,6 +21,7 @@ declare const translations: {
21
21
  stateOn: string;
22
22
  };
23
23
  lock: {
24
+ badDefault: string;
24
25
  secured: string;
25
26
  unsecured: string;
26
27
  };
@@ -29,11 +30,14 @@ declare const translations: {
29
30
  stateOff: string;
30
31
  };
31
32
  position: {
33
+ badDefault: string;
32
34
  closed: string;
33
35
  open: string;
34
36
  };
35
37
  thermostat: {
36
38
  auto: string;
39
+ badDefault: string;
40
+ badUnits: string;
37
41
  cool: string;
38
42
  heat: string;
39
43
  off: string;
@@ -41,7 +45,18 @@ declare const translations: {
41
45
  temperatureF: string;
42
46
  unsupportedFunction: string;
43
47
  };
48
+ limiter: {
49
+ badPeriod: string;
50
+ badUnits: string;
51
+ expired: string;
52
+ limitExceedsPeriod: string;
53
+ remainingDayPlus: string;
54
+ remainingHours: string;
55
+ remainingMinutes: string;
56
+ remainingSeconds: string;
57
+ };
44
58
  timer: {
59
+ badUnits: string;
45
60
  cancel: string;
46
61
  setMilliseconds: string;
47
62
  setSeconds: string;
@@ -49,6 +64,8 @@ declare const translations: {
49
64
  setHours: string;
50
65
  };
51
66
  schedule: {
67
+ badType: string;
68
+ badUnits: string;
52
69
  cron: string;
53
70
  intervalMilliseconds: string;
54
71
  intervalSeconds: string;
@@ -72,6 +89,7 @@ declare const translations: {
72
89
  description: {
73
90
  commands: string;
74
91
  cron: string;
92
+ limiter: string;
75
93
  random: string;
76
94
  timerControlled: string;
77
95
  timer: string;
@@ -88,9 +106,11 @@ declare const translations: {
88
106
  cron: string;
89
107
  custom: string;
90
108
  daily: string;
109
+ day: string;
91
110
  door: string;
92
111
  fahrenheit: string;
93
112
  heat: string;
113
+ hour: string;
94
114
  hourly: string;
95
115
  hours: string;
96
116
  interval: string;
@@ -98,6 +118,7 @@ declare const translations: {
98
118
  lightbulb: string;
99
119
  lockMechanism: string;
100
120
  minutely: string;
121
+ month: string;
101
122
  monthly: string;
102
123
  off: string;
103
124
  occupancySensor: string;
@@ -116,6 +137,7 @@ declare const translations: {
116
137
  unsecured: string;
117
138
  weekdays: string;
118
139
  weekends: string;
140
+ week: string;
119
141
  weekly: string;
120
142
  window: string;
121
143
  windowCovering: string;
@@ -143,6 +165,9 @@ declare const translations: {
143
165
  groupName: string;
144
166
  interval: string;
145
167
  name: string;
168
+ limit: string;
169
+ limiter: string;
170
+ period: string;
146
171
  preset: string;
147
172
  resetOnRestart: string;
148
173
  timer: string;
@@ -155,6 +180,7 @@ declare const translations: {
155
180
  };
156
181
  };
157
182
  sensor: {
183
+ badType: string;
158
184
  carbonDioxide: {
159
185
  active: string;
160
186
  inactive: string;
@@ -199,6 +225,7 @@ declare const translations: {
199
225
  welcome: string[];
200
226
  };
201
227
  webhook: {
228
+ badUnits: string;
202
229
  missing: string;
203
230
  received: string;
204
231
  register: string;
@@ -1,8 +1,8 @@
1
1
  declare const REPLACE_THIS_WITH_ISO_CODE: {
2
2
  accessory: {
3
+ badValueType: string;
3
4
  invalidCron: string;
4
5
  missingRequired: string;
5
- badValueType: string;
6
6
  command: {
7
7
  executed: string;
8
8
  error: string;
@@ -12,6 +12,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
12
12
  stateOn: string;
13
13
  };
14
14
  lock: {
15
+ badDefault: string;
15
16
  secured: string;
16
17
  unsecured: string;
17
18
  };
@@ -20,11 +21,14 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
20
21
  stateOff: string;
21
22
  };
22
23
  position: {
24
+ badDefault: string;
23
25
  closed: string;
24
26
  open: string;
25
27
  };
26
28
  thermostat: {
27
29
  auto: string;
30
+ badDefault: string;
31
+ badUnits: string;
28
32
  cool: string;
29
33
  heat: string;
30
34
  off: string;
@@ -32,7 +36,18 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
32
36
  temperatureF: string;
33
37
  unsupportedFunction: string;
34
38
  };
39
+ limiter: {
40
+ badPeriod: string;
41
+ badUnits: string;
42
+ expired: string;
43
+ limitExceedsPeriod: string;
44
+ remainingDayPlus: string;
45
+ remainingHours: string;
46
+ remainingMinutes: string;
47
+ remainingSeconds: string;
48
+ };
35
49
  timer: {
50
+ badUnits: string;
36
51
  cancel: string;
37
52
  setMilliseconds: string;
38
53
  setSeconds: string;
@@ -40,6 +55,8 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
40
55
  setHours: string;
41
56
  };
42
57
  schedule: {
58
+ badType: string;
59
+ badUnits: string;
43
60
  cron: string;
44
61
  intervalMilliseconds: string;
45
62
  intervalSeconds: string;
@@ -63,6 +80,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
63
80
  description: {
64
81
  commands: string;
65
82
  cron: string;
83
+ limiter: string;
66
84
  random: string;
67
85
  timerControlled: string;
68
86
  timer: string;
@@ -79,9 +97,11 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
79
97
  cron: string;
80
98
  custom: string;
81
99
  daily: string;
100
+ day: string;
82
101
  door: string;
83
102
  fahrenheit: string;
84
103
  heat: string;
104
+ hour: string;
85
105
  hourly: string;
86
106
  hours: string;
87
107
  interval: string;
@@ -89,6 +109,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
89
109
  lightbulb: string;
90
110
  lockMechanism: string;
91
111
  minutely: string;
112
+ month: string;
92
113
  monthly: string;
93
114
  off: string;
94
115
  occupancySensor: string;
@@ -107,6 +128,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
107
128
  unsecured: string;
108
129
  weekdays: string;
109
130
  weekends: string;
131
+ week: string;
110
132
  weekly: string;
111
133
  window: string;
112
134
  windowCovering: string;
@@ -134,6 +156,9 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
134
156
  groupName: string;
135
157
  interval: string;
136
158
  name: string;
159
+ limit: string;
160
+ limiter: string;
161
+ period: string;
137
162
  preset: string;
138
163
  resetOnRestart: string;
139
164
  timer: string;
@@ -146,6 +171,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
146
171
  };
147
172
  };
148
173
  sensor: {
174
+ badType: string;
149
175
  carbonDioxide: {
150
176
  active: string;
151
177
  inactive: string;
@@ -190,6 +216,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
190
216
  welcome: string[];
191
217
  };
192
218
  webhook: {
219
+ badUnits: string;
193
220
  missing: string;
194
221
  received: string;
195
222
  register: string;
package/dist/i18n/zz.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  declare const zz: {
2
2
  accessory: {
3
+ badValueType: string;
3
4
  invalidCron: string;
4
5
  missingRequired: string;
5
- badValueType: string;
6
6
  command: {
7
7
  executed: string;
8
8
  error: string;
@@ -12,6 +12,7 @@ declare const zz: {
12
12
  stateOn: string;
13
13
  };
14
14
  lock: {
15
+ badDefault: string;
15
16
  secured: string;
16
17
  unsecured: string;
17
18
  };
@@ -20,11 +21,14 @@ declare const zz: {
20
21
  stateOff: string;
21
22
  };
22
23
  position: {
24
+ badDefault: string;
23
25
  closed: string;
24
26
  open: string;
25
27
  };
26
28
  thermostat: {
27
29
  auto: string;
30
+ badDefault: string;
31
+ badUnits: string;
28
32
  cool: string;
29
33
  heat: string;
30
34
  off: string;
@@ -32,7 +36,18 @@ declare const zz: {
32
36
  temperatureF: string;
33
37
  unsupportedFunction: string;
34
38
  };
39
+ limiter: {
40
+ badPeriod: string;
41
+ badUnits: string;
42
+ expired: string;
43
+ limitExceedsPeriod: string;
44
+ remainingDayPlus: string;
45
+ remainingHours: string;
46
+ remainingMinutes: string;
47
+ remainingSeconds: string;
48
+ };
35
49
  timer: {
50
+ badUnits: string;
36
51
  cancel: string;
37
52
  setMilliseconds: string;
38
53
  setSeconds: string;
@@ -40,6 +55,8 @@ declare const zz: {
40
55
  setHours: string;
41
56
  };
42
57
  schedule: {
58
+ badType: string;
59
+ badUnits: string;
43
60
  cron: string;
44
61
  intervalMilliseconds: string;
45
62
  intervalSeconds: string;
@@ -63,6 +80,7 @@ declare const zz: {
63
80
  description: {
64
81
  commands: string;
65
82
  cron: string;
83
+ limiter: string;
66
84
  random: string;
67
85
  timerControlled: string;
68
86
  timer: string;
@@ -79,9 +97,11 @@ declare const zz: {
79
97
  cron: string;
80
98
  custom: string;
81
99
  daily: string;
100
+ day: string;
82
101
  door: string;
83
102
  fahrenheit: string;
84
103
  heat: string;
104
+ hour: string;
85
105
  hourly: string;
86
106
  hours: string;
87
107
  interval: string;
@@ -89,6 +109,7 @@ declare const zz: {
89
109
  lightbulb: string;
90
110
  lockMechanism: string;
91
111
  minutely: string;
112
+ month: string;
92
113
  monthly: string;
93
114
  off: string;
94
115
  occupancySensor: string;
@@ -107,6 +128,7 @@ declare const zz: {
107
128
  unsecured: string;
108
129
  weekdays: string;
109
130
  weekends: string;
131
+ week: string;
110
132
  weekly: string;
111
133
  window: string;
112
134
  windowCovering: string;
@@ -134,6 +156,9 @@ declare const zz: {
134
156
  groupName: string;
135
157
  interval: string;
136
158
  name: string;
159
+ limit: string;
160
+ limiter: string;
161
+ period: string;
137
162
  preset: string;
138
163
  resetOnRestart: string;
139
164
  timer: string;
@@ -146,6 +171,7 @@ declare const zz: {
146
171
  };
147
172
  };
148
173
  sensor: {
174
+ badType: string;
149
175
  carbonDioxide: {
150
176
  active: string;
151
177
  inactive: string;
@@ -190,6 +216,7 @@ declare const zz: {
190
216
  welcome: string[];
191
217
  };
192
218
  webhook: {
219
+ badUnits: string;
193
220
  missing: string;
194
221
  received: string;
195
222
  register: string;
@@ -17,6 +17,7 @@ export declare enum SensorType {
17
17
  OccupancySensor = "OccupancySensor",
18
18
  SmokeSensor = "SmokeSensor"
19
19
  }
20
+ export declare function isValidSensorType(input: SensorType): boolean;
20
21
  export declare enum SensorCharacteristic {
21
22
  CarbonDioxideDetected = "CarbonDioxideDetected",
22
23
  CarbonMonoxideDetected = "CarbonMonoxideDetected",
@@ -30,15 +31,24 @@ export declare enum DefaultLockState {
30
31
  LOCKED = "locked",
31
32
  UNLOCKED = "unlocked"
32
33
  }
34
+ export declare function isValidLockState(input?: DefaultLockState): boolean;
33
35
  export declare enum DefaultPosition {
34
36
  OPEN = "open",
35
37
  CLOSED = "closed"
36
38
  }
39
+ export declare function isValidPosition(input?: DefaultPosition): boolean;
37
40
  export declare enum DefaultThermostatState {
38
- OFF = "off",
41
+ AUTO = "auto",
39
42
  COOL = "cool",
40
43
  HEAT = "heat",
41
- AUTO = "auto"
44
+ OFF = "off"
45
+ }
46
+ export declare function isValidThermostatState(input?: DefaultThermostatState): boolean;
47
+ export declare enum TimePeriod {
48
+ HOUR = "HOUR",
49
+ DAY = "DAY",
50
+ WEEK = "WEEK",
51
+ MONTH = "MONTH"
42
52
  }
43
53
  export declare enum TimeUnits {
44
54
  MILLISECONDS = "MILLISECONDS",
@@ -46,6 +56,7 @@ export declare enum TimeUnits {
46
56
  MINUTES = "MINUTES",
47
57
  HOURS = "HOURS"
48
58
  }
59
+ export declare function isValidTimeUnits(input: TimeUnits): boolean;
49
60
  export declare enum ScheduleType {
50
61
  INTERVAL = "INTERVAL",
51
62
  CRON = "CRON"
@@ -54,6 +65,7 @@ export declare enum TemperatureUnits {
54
65
  CELSIUS = "C",
55
66
  FAHRENHEIT = "F"
56
67
  }
68
+ export declare function isValidTemperatureUnits(input?: TemperatureUnits): boolean;
57
69
  export declare enum WebhookCommand {
58
70
  Brightness = "Brightness",
59
71
  LockTargetState = "LockTargetState",
@@ -62,3 +74,6 @@ export declare enum WebhookCommand {
62
74
  TargetPosition = "TargetPosition",
63
75
  TargetTemperature = "TargetTemperature"
64
76
  }
77
+ export declare function printableValues<T>(o: {
78
+ [s: string]: T;
79
+ } | ArrayLike<T>): string;
@@ -19,6 +19,9 @@ export var SensorType;
19
19
  SensorType["OccupancySensor"] = "OccupancySensor";
20
20
  SensorType["SmokeSensor"] = "SmokeSensor";
21
21
  })(SensorType || (SensorType = {}));
22
+ export function isValidSensorType(input) {
23
+ return Object.values(SensorType).includes(input);
24
+ }
22
25
  export var SensorCharacteristic;
23
26
  (function (SensorCharacteristic) {
24
27
  SensorCharacteristic["CarbonDioxideDetected"] = "CarbonDioxideDetected";
@@ -34,18 +37,34 @@ export var DefaultLockState;
34
37
  DefaultLockState["LOCKED"] = "locked";
35
38
  DefaultLockState["UNLOCKED"] = "unlocked";
36
39
  })(DefaultLockState || (DefaultLockState = {}));
40
+ export function isValidLockState(input) {
41
+ return input === undefined || Object.values(DefaultLockState).includes(input);
42
+ }
37
43
  export var DefaultPosition;
38
44
  (function (DefaultPosition) {
39
45
  DefaultPosition["OPEN"] = "open";
40
46
  DefaultPosition["CLOSED"] = "closed";
41
47
  })(DefaultPosition || (DefaultPosition = {}));
48
+ export function isValidPosition(input) {
49
+ return input === undefined || Object.values(DefaultPosition).includes(input);
50
+ }
42
51
  export var DefaultThermostatState;
43
52
  (function (DefaultThermostatState) {
44
- DefaultThermostatState["OFF"] = "off";
53
+ DefaultThermostatState["AUTO"] = "auto";
45
54
  DefaultThermostatState["COOL"] = "cool";
46
55
  DefaultThermostatState["HEAT"] = "heat";
47
- DefaultThermostatState["AUTO"] = "auto";
56
+ DefaultThermostatState["OFF"] = "off";
48
57
  })(DefaultThermostatState || (DefaultThermostatState = {}));
58
+ export function isValidThermostatState(input) {
59
+ return input === undefined || Object.values(DefaultThermostatState).includes(input);
60
+ }
61
+ export var TimePeriod;
62
+ (function (TimePeriod) {
63
+ TimePeriod["HOUR"] = "HOUR";
64
+ TimePeriod["DAY"] = "DAY";
65
+ TimePeriod["WEEK"] = "WEEK";
66
+ TimePeriod["MONTH"] = "MONTH";
67
+ })(TimePeriod || (TimePeriod = {}));
49
68
  export var TimeUnits;
50
69
  (function (TimeUnits) {
51
70
  TimeUnits["MILLISECONDS"] = "MILLISECONDS";
@@ -53,6 +72,9 @@ export var TimeUnits;
53
72
  TimeUnits["MINUTES"] = "MINUTES";
54
73
  TimeUnits["HOURS"] = "HOURS";
55
74
  })(TimeUnits || (TimeUnits = {}));
75
+ export function isValidTimeUnits(input) {
76
+ return Object.values(TimeUnits).includes(input);
77
+ }
56
78
  export var ScheduleType;
57
79
  (function (ScheduleType) {
58
80
  ScheduleType["INTERVAL"] = "INTERVAL";
@@ -63,6 +85,9 @@ export var TemperatureUnits;
63
85
  TemperatureUnits["CELSIUS"] = "C";
64
86
  TemperatureUnits["FAHRENHEIT"] = "F";
65
87
  })(TemperatureUnits || (TemperatureUnits = {}));
88
+ export function isValidTemperatureUnits(input) {
89
+ return input === undefined || Object.values(TemperatureUnits).includes(input);
90
+ }
66
91
  export var WebhookCommand;
67
92
  (function (WebhookCommand) {
68
93
  WebhookCommand["Brightness"] = "Brightness";
@@ -72,4 +97,7 @@ export var WebhookCommand;
72
97
  WebhookCommand["TargetPosition"] = "TargetPosition";
73
98
  WebhookCommand["TargetTemperature"] = "TargetTemperature";
74
99
  })(WebhookCommand || (WebhookCommand = {}));
100
+ export function printableValues(o) {
101
+ return Object.values(o).map(value => `'${value}'`).join(', ');
102
+ }
75
103
  //# sourceMappingURL=enums.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/model/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aASX;AATD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,wCAAuB,CAAA;IACvB,gDAA+B,CAAA;IAC/B,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,0CAAyB,CAAA;IACzB,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;AACnC,CAAC,EATW,aAAa,KAAb,aAAa,QASxB;AAED,MAAM,CAAN,IAAY,UAQX;AARD,WAAY,UAAU;IACpB,yDAA2C,CAAA;IAC3C,2DAA6C,CAAA;IAC7C,6CAA+B,CAAA;IAC/B,uCAAyB,CAAA;IACzB,2CAA6B,CAAA;IAC7B,iDAAmC,CAAA;IACnC,yCAA2B,CAAA;AAC7B,CAAC,EARW,UAAU,KAAV,UAAU,QAQrB;AAED,MAAM,CAAN,IAAY,oBAQX;AARD,WAAY,oBAAoB;IAC9B,uEAA+C,CAAA;IAC/C,yEAAiD,CAAA;IACjD,iEAAyC,CAAA;IACzC,qDAA6B,CAAA;IAC7B,yDAAiC,CAAA;IACjC,+DAAuC,CAAA;IACvC,uDAA+B,CAAA;AACjC,CAAC,EARW,oBAAoB,KAApB,oBAAoB,QAQ/B;AAED,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,qCAAiB,CAAA;IACjB,yCAAqB,CAAA;AACvB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B;AAED,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,oCAAiB,CAAA;AACnB,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAED,MAAM,CAAN,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,qCAAW,CAAA;IACX,uCAAa,CAAA;IACb,uCAAa,CAAA;IACb,uCAAa,CAAA;AACf,CAAC,EALW,sBAAsB,KAAtB,sBAAsB,QAKjC;AAED,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,0CAA6B,CAAA;IAC7B,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;IACnB,4BAAe,CAAA;AACjB,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB;AAED,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,qCAAqB,CAAA;IACrB,6BAAa,CAAA;AACf,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB;AAED,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,iCAAa,CAAA;IACb,oCAAgB,CAAA;AAClB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B;AAED,MAAM,CAAN,IAAY,cAOX;AAPD,WAAY,cAAc;IACxB,2CAAyB,CAAA;IACzB,qDAAmC,CAAA;IACnC,2BAAS,CAAA;IACT,yEAAuD,CAAA;IACvD,mDAAiC,CAAA;IACjC,yDAAuC,CAAA;AACzC,CAAC,EAPW,cAAc,KAAd,cAAc,QAOzB"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/model/enums.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { AccessoryConfig, CharacteristicValue, PlatformConfig } from 'homebridge';
2
2
  export type ServiceType = typeof import('homebridge').Service;
3
3
  export type CharacteristicType = typeof import('homebridge').Characteristic;
4
- import { AccessoryType, DefaultLockState, DefaultPosition, DefaultThermostatState, ScheduleType, SensorType, TemperatureUnits, TimeUnits } from './enums.js';
4
+ import { AccessoryType, DefaultLockState, DefaultPosition, DefaultThermostatState, ScheduleType, SensorType, TemperatureUnits, TimePeriod, TimeUnits } from './enums.js';
5
5
  export type LegacyAccessoryConfig = AccessoryConfig & {
6
6
  name: string;
7
7
  dimmer?: boolean;
@@ -36,6 +36,12 @@ export type SensorConfig = Assertable & {
36
36
  type: SensorType;
37
37
  timerControlled?: boolean;
38
38
  };
39
+ export type LimiterConfig = Assertable & {
40
+ id?: string;
41
+ limit: number;
42
+ units: TimeUnits;
43
+ period: TimePeriod;
44
+ };
39
45
  export type DummyConfig = {
40
46
  id: string;
41
47
  name: string;
@@ -44,6 +50,7 @@ export type DummyConfig = {
44
50
  sensor?: SensorType | SensorConfig;
45
51
  timer?: TimerConfig;
46
52
  schedule?: ScheduleConfig;
53
+ limiter?: LimiterConfig;
47
54
  resetOnRestart?: boolean;
48
55
  enableWebook?: boolean;
49
56
  disableLogging?: boolean;