@switchbot/homebridge-switchbot 0.1.2-beta.7 → 0.2.0-alpha.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 (106) hide show
  1. package/.github/ISSUE_TEMPLATE/feature-request.yml +1 -1
  2. package/.github/dependabot.yml +2 -0
  3. package/.github/workflows/codeql-analysis.yml +71 -0
  4. package/CHANGELOG.md +5 -1
  5. package/README.md +2 -1
  6. package/config.schema.json +420 -471
  7. package/dist/devices/bots.d.ts +19 -5
  8. package/dist/devices/bots.d.ts.map +1 -1
  9. package/dist/devices/bots.js +172 -148
  10. package/dist/devices/bots.js.map +1 -1
  11. package/dist/devices/bulb.d.ts +8 -6
  12. package/dist/devices/bulb.d.ts.map +1 -1
  13. package/dist/devices/bulb.js +45 -28
  14. package/dist/devices/bulb.js.map +1 -1
  15. package/dist/devices/contact.d.ts +10 -5
  16. package/dist/devices/contact.d.ts.map +1 -1
  17. package/dist/devices/contact.js +94 -63
  18. package/dist/devices/contact.js.map +1 -1
  19. package/dist/devices/curtains.d.ts +14 -5
  20. package/dist/devices/curtains.d.ts.map +1 -1
  21. package/dist/devices/curtains.js +174 -120
  22. package/dist/devices/curtains.js.map +1 -1
  23. package/dist/devices/humidifiers.d.ts +6 -6
  24. package/dist/devices/humidifiers.d.ts.map +1 -1
  25. package/dist/devices/humidifiers.js +78 -94
  26. package/dist/devices/humidifiers.js.map +1 -1
  27. package/dist/devices/indoorcam.d.ts +43 -0
  28. package/dist/devices/indoorcam.d.ts.map +1 -0
  29. package/dist/devices/indoorcam.js +241 -0
  30. package/dist/devices/indoorcam.js.map +1 -0
  31. package/dist/devices/meters.d.ts +8 -5
  32. package/dist/devices/meters.d.ts.map +1 -1
  33. package/dist/devices/meters.js +126 -92
  34. package/dist/devices/meters.js.map +1 -1
  35. package/dist/devices/motion.d.ts +9 -5
  36. package/dist/devices/motion.d.ts.map +1 -1
  37. package/dist/devices/motion.js +74 -59
  38. package/dist/devices/motion.js.map +1 -1
  39. package/dist/devices/plugs.d.ts +5 -4
  40. package/dist/devices/plugs.d.ts.map +1 -1
  41. package/dist/devices/plugs.js +65 -56
  42. package/dist/devices/plugs.js.map +1 -1
  43. package/dist/irdevices/airconditioners.d.ts +3 -3
  44. package/dist/irdevices/airconditioners.d.ts.map +1 -1
  45. package/dist/irdevices/airconditioners.js +12 -7
  46. package/dist/irdevices/airconditioners.js.map +1 -1
  47. package/dist/irdevices/airpurifiers.d.ts +3 -3
  48. package/dist/irdevices/airpurifiers.d.ts.map +1 -1
  49. package/dist/irdevices/airpurifiers.js +1 -1
  50. package/dist/irdevices/airpurifiers.js.map +1 -1
  51. package/dist/irdevices/cameras.d.ts +3 -3
  52. package/dist/irdevices/cameras.d.ts.map +1 -1
  53. package/dist/irdevices/cameras.js +1 -1
  54. package/dist/irdevices/cameras.js.map +1 -1
  55. package/dist/irdevices/fans.d.ts +3 -3
  56. package/dist/irdevices/fans.d.ts.map +1 -1
  57. package/dist/irdevices/fans.js +11 -12
  58. package/dist/irdevices/fans.js.map +1 -1
  59. package/dist/irdevices/lights.d.ts +3 -3
  60. package/dist/irdevices/lights.d.ts.map +1 -1
  61. package/dist/irdevices/lights.js +1 -1
  62. package/dist/irdevices/lights.js.map +1 -1
  63. package/dist/irdevices/others.d.ts +3 -3
  64. package/dist/irdevices/others.d.ts.map +1 -1
  65. package/dist/irdevices/others.js +8 -8
  66. package/dist/irdevices/others.js.map +1 -1
  67. package/dist/irdevices/tvs.d.ts +3 -3
  68. package/dist/irdevices/tvs.d.ts.map +1 -1
  69. package/dist/irdevices/tvs.js +16 -6
  70. package/dist/irdevices/tvs.js.map +1 -1
  71. package/dist/irdevices/vacuumcleaners.d.ts +3 -3
  72. package/dist/irdevices/vacuumcleaners.d.ts.map +1 -1
  73. package/dist/irdevices/vacuumcleaners.js +2 -3
  74. package/dist/irdevices/vacuumcleaners.js.map +1 -1
  75. package/dist/irdevices/waterheaters.d.ts +3 -3
  76. package/dist/irdevices/waterheaters.d.ts.map +1 -1
  77. package/dist/irdevices/waterheaters.js +2 -2
  78. package/dist/irdevices/waterheaters.js.map +1 -1
  79. package/dist/platform.d.ts +14 -5
  80. package/dist/platform.d.ts.map +1 -1
  81. package/dist/platform.js +420 -418
  82. package/dist/platform.js.map +1 -1
  83. package/dist/settings.d.ts +18 -15
  84. package/dist/settings.d.ts.map +1 -1
  85. package/package.json +65 -65
  86. package/src/devices/bots.ts +188 -165
  87. package/src/devices/bulb.ts +48 -40
  88. package/src/devices/contact.ts +100 -73
  89. package/src/devices/curtains.ts +192 -140
  90. package/src/devices/humidifiers.ts +82 -124
  91. package/src/devices/indoorcam.ts +303 -0
  92. package/src/devices/meters.ts +130 -110
  93. package/src/devices/motion.ts +80 -69
  94. package/src/devices/plugs.ts +67 -65
  95. package/src/irdevices/airconditioners.ts +14 -10
  96. package/src/irdevices/airpurifiers.ts +4 -4
  97. package/src/irdevices/cameras.ts +4 -4
  98. package/src/irdevices/fans.ts +14 -18
  99. package/src/irdevices/lights.ts +4 -4
  100. package/src/irdevices/others.ts +12 -14
  101. package/src/irdevices/tvs.ts +21 -10
  102. package/src/irdevices/vacuumcleaners.ts +5 -9
  103. package/src/irdevices/waterheaters.ts +5 -5
  104. package/src/platform.ts +455 -619
  105. package/src/settings.ts +19 -15
  106. package/.github/workflows/issue-validate.yml +0 -18
@@ -20,16 +20,15 @@ class Meter {
20
20
  this.StatusLowBattery = this.platform.Characteristic.StatusLowBattery.BATTERY_LEVEL_LOW;
21
21
  this.CurrentRelativeHumidity = 0;
22
22
  this.CurrentTemperature = 0;
23
- if (this.platform.config.options?.ble?.includes(this.device.deviceId)) {
23
+ // BLE Connection
24
+ if (device.ble) {
24
25
  // eslint-disable-next-line @typescript-eslint/no-var-requires
25
26
  const SwitchBot = require('node-switchbot');
26
27
  this.switchbot = new SwitchBot();
27
28
  const colon = device.deviceId.match(/.{1,2}/g);
28
29
  const bleMac = colon.join(':'); //returns 1A:23:B4:56:78:9A;
29
30
  this.device.bleMac = bleMac.toLowerCase();
30
- if (this.platform.config.options.debug) {
31
- this.platform.log.warn(this.device.bleMac.toLowerCase());
32
- }
31
+ this.platform.device(this.device.bleMac.toLowerCase());
33
32
  }
34
33
  // this is subject we use to track when we need to POST changes to the SwitchBot API
35
34
  this.doMeterUpdate = new rxjs_1.Subject();
@@ -46,7 +45,7 @@ class Meter {
46
45
  // you can create multiple services for each accessory
47
46
  (this.service =
48
47
  accessory.getService(this.platform.Service.Battery) ||
49
- accessory.addService(this.platform.Service.Battery)), `${device.deviceName} ${device.deviceType}`;
48
+ accessory.addService(this.platform.Service.Battery)), `${accessory.displayName} Battery`;
50
49
  // To avoid "Cannot add a Service with the same UUID another Service without also defining a unique 'subtype' property." error,
51
50
  // when creating multiple services of the same type, you need to use the following syntax to specify a name and subtype id:
52
51
  // accessory.getService('NAME') ?? accessory.addService(this.platform.Service.Battery, 'NAME', 'USER_DEFINED_SUBTYPE');
@@ -58,20 +57,17 @@ class Meter {
58
57
  // create handlers for required characteristics
59
58
  this.service.setCharacteristic(this.platform.Characteristic.ChargingState, 2);
60
59
  // Temperature Sensor Service
61
- if (this.platform.config.options?.meter?.hide_temperature) {
62
- if (this.platform.config.options.debug) {
63
- this.platform.log.error('Removing service');
64
- }
60
+ if (device.meter?.hide_temperature) {
61
+ this.platform.device('Removing Temperature Sensor Service');
65
62
  this.temperatureservice = this.accessory.getService(this.platform.Service.TemperatureSensor);
66
63
  accessory.removeService(this.temperatureservice);
67
64
  }
68
65
  else if (!this.temperatureservice) {
69
- if (this.platform.config.options?.debug) {
70
- this.platform.log.warn('Adding service');
71
- }
66
+ this.platform.device('Adding Temperature Sensor Service');
72
67
  (this.temperatureservice =
73
68
  this.accessory.getService(this.platform.Service.TemperatureSensor) ||
74
- this.accessory.addService(this.platform.Service.TemperatureSensor)), `${device.deviceName} ${device.deviceType} TemperatureSensor`;
69
+ this.accessory.addService(this.platform.Service.TemperatureSensor)), `${accessory.displayName} Temperature Sensor`;
70
+ this.service.setCharacteristic(this.platform.Characteristic.Name, `${accessory.displayName} Temperature Sensor`);
75
71
  this.temperatureservice
76
72
  .getCharacteristic(this.platform.Characteristic.CurrentTemperature)
77
73
  .setProps({
@@ -82,27 +78,24 @@ class Meter {
82
78
  minStep: 0.1,
83
79
  })
84
80
  .onGet(() => {
85
- return this.CurrentTemperature;
81
+ return Number.isNaN(this.CurrentTemperature);
86
82
  });
87
- this.platform.log.info(this.device.deviceName + ' current temperature: ' + this.CurrentTemperature + '\u2103');
88
83
  }
89
84
  else {
90
- if (this.platform.config.options?.debug) {
91
- this.platform.log.warn('TemperatureSensor not added.');
92
- }
85
+ this.platform.device('Temperature Sensor Not Added');
93
86
  }
94
87
  // Humidity Sensor Service
95
- if (this.platform.config.options?.meter?.hide_humidity) {
96
- if (this.platform.config.options.debug) {
97
- this.platform.log.error('Removing service');
98
- }
88
+ if (device.meter?.hide_humidity) {
89
+ this.platform.device('Removing Humidity Sensor Service');
99
90
  this.humidityservice = this.accessory.getService(this.platform.Service.HumiditySensor);
100
91
  accessory.removeService(this.humidityservice);
101
92
  }
102
93
  else if (!this.humidityservice) {
94
+ this.platform.device('Adding Humidity Sensor Service');
103
95
  (this.humidityservice =
104
96
  this.accessory.getService(this.platform.Service.HumiditySensor) ||
105
- this.accessory.addService(this.platform.Service.HumiditySensor)), `${device.deviceName} ${device.deviceType} HumiditySensor`;
97
+ this.accessory.addService(this.platform.Service.HumiditySensor)), `${accessory.displayName} Humidity Sensor`;
98
+ this.service.setCharacteristic(this.platform.Characteristic.Name, `${accessory.displayName} Humidity Sensor`);
106
99
  this.humidityservice
107
100
  .getCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity)
108
101
  .setProps({
@@ -111,12 +104,9 @@ class Meter {
111
104
  .onGet(() => {
112
105
  return this.CurrentRelativeHumidity;
113
106
  });
114
- this.platform.log.info(this.device.deviceName + ' current humidity: ' + this.CurrentRelativeHumidity + '%');
115
107
  }
116
108
  else {
117
- if (this.platform.config.options?.debug) {
118
- this.platform.log.warn('HumiditySensor not added.');
119
- }
109
+ this.platform.device('Adding Humidity Sensor Not Added');
120
110
  }
121
111
  // Retrieve initial values and updateHomekit
122
112
  this.updateHomeKitCharacteristics();
@@ -130,8 +120,33 @@ class Meter {
130
120
  /**
131
121
  * Parse the device status from the SwitchBot api
132
122
  */
133
- parseStatus() {
134
- // Set Room Sensor State
123
+ async parseStatus() {
124
+ if (this.device.ble) {
125
+ this.platform.device('BLE');
126
+ await this.BLEparseStatus();
127
+ }
128
+ else {
129
+ this.platform.device('OpenAPI');
130
+ await this.openAPIparseStatus();
131
+ }
132
+ }
133
+ async BLEparseStatus() {
134
+ if (this.deviceStatus.body) {
135
+ this.BatteryLevel = 100;
136
+ }
137
+ else {
138
+ this.BatteryLevel = 10;
139
+ }
140
+ if (this.BatteryLevel < 15) {
141
+ this.StatusLowBattery = 1;
142
+ }
143
+ else {
144
+ this.StatusLowBattery = 0;
145
+ }
146
+ this.platform.debug(`${this.accessory.displayName}
147
+ , BatteryLevel: ${this.BatteryLevel}, StatusLowBattery: ${this.StatusLowBattery}`);
148
+ }
149
+ async openAPIparseStatus() {
135
150
  if (this.deviceStatus.body) {
136
151
  this.BatteryLevel = 100;
137
152
  }
@@ -145,8 +160,8 @@ class Meter {
145
160
  this.StatusLowBattery = 0;
146
161
  }
147
162
  // Current Relative Humidity
148
- if (!this.platform.config.options?.meter?.hide_humidity) {
149
- if (this.platform.config.options?.ble?.includes(this.device.deviceId)) {
163
+ if (!this.device.meter?.hide_humidity) {
164
+ if (this.device.ble) {
150
165
  this.CurrentRelativeHumidity = this.BLEHumidity;
151
166
  }
152
167
  else {
@@ -155,15 +170,15 @@ class Meter {
155
170
  this.platform.debug(`Meter ${this.accessory.displayName} - Humidity: ${this.CurrentRelativeHumidity}%`);
156
171
  }
157
172
  // Current Temperature
158
- if (!this.platform.config.options?.meter?.hide_temperature) {
159
- if (this.platform.config.options?.ble?.includes(this.device.deviceId)) {
173
+ if (!this.device.meter?.hide_temperature) {
174
+ if (this.device.ble) {
160
175
  this.CurrentTemperature = this.BLEtemperature;
161
176
  }
162
177
  else {
163
- if (this.platform.config.options?.meter?.unit === 1) {
178
+ if (this.device.meter?.unit === 1) {
164
179
  this.CurrentTemperature = this.toFahrenheit(this.deviceStatus.body.temperature);
165
180
  }
166
- else if (this.platform.config.options?.meter?.unit === 0) {
181
+ else if (this.device.meter?.unit === 0) {
167
182
  this.CurrentTemperature = this.toCelsius(this.deviceStatus.body.temperature);
168
183
  }
169
184
  else {
@@ -177,75 +192,78 @@ class Meter {
177
192
  * Asks the SwitchBot API for the latest device information
178
193
  */
179
194
  async refreshStatus() {
180
- if (this.platform.config.options?.ble?.includes(this.device.deviceId)) {
181
- this.platform.log.warn('BLE DEVICE-REFRESH');
182
- // eslint-disable-next-line @typescript-eslint/no-var-requires
183
- const Switchbot = require('node-switchbot');
184
- const switchbot = new Switchbot();
185
- const colon = this.device.deviceId.match(/.{1,2}/g);
186
- const bleMac = colon.join(':'); //returns 1A:23:B4:56:78:9A;
187
- this.device.bleMac = bleMac.toLowerCase();
188
- if (this.platform.config.options.debug) {
189
- this.platform.log.warn(this.device.bleMac);
190
- }
191
- switchbot.onadvertisement = (ad) => {
192
- this.platform.log.info(JSON.stringify(ad, null, ' '));
193
- this.platform.log.warn('ad:', JSON.stringify(ad));
194
- this.platform.log.info('Temperature:', ad.serviceData.temperature.c);
195
- this.platform.log.info('Humidity:', ad.serviceData.humidity);
196
- this.BLEtemperature = ad.serviceData.temperature.c;
197
- this.BLEHumidity = ad.serviceData.humidity;
198
- };
195
+ if (this.device.ble) {
196
+ this.platform.device('BLE');
197
+ await this.BLErefreshStatus();
198
+ }
199
+ else {
200
+ this.platform.device('OpenAPI');
201
+ await this.openAPIRefreshStatus();
202
+ }
203
+ }
204
+ async BLErefreshStatus() {
205
+ this.platform.debug('Meter BLE Device RefreshStatus');
206
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
207
+ const Switchbot = require('node-switchbot');
208
+ const switchbot = new Switchbot();
209
+ const colon = this.device.deviceId.match(/.{1,2}/g);
210
+ const bleMac = colon.join(':'); //returns 1A:23:B4:56:78:9A;
211
+ this.device.bleMac = bleMac.toLowerCase();
212
+ this.platform.device(this.device.bleMac);
213
+ switchbot.onadvertisement = (ad) => {
214
+ this.platform.debug(JSON.stringify(ad, null, ' '));
215
+ this.platform.device('ad:', JSON.stringify(ad));
216
+ this.platform.device(`Temperature: ${ad.serviceData.temperature.c}`);
217
+ this.platform.device(`Humidity: ${ad.serviceData.humidity}`);
218
+ this.BLEtemperature = ad.serviceData.temperature.c;
219
+ this.BLEHumidity = ad.serviceData.humidity;
220
+ };
221
+ this.parseStatus();
222
+ this.updateHomeKitCharacteristics();
223
+ switchbot
224
+ .startScan({
225
+ id: this.device.bleMac,
226
+ })
227
+ .then(() => {
228
+ return switchbot.wait(this.platform.config.options.refreshRate * 1000);
229
+ })
230
+ .then(() => {
231
+ switchbot.stopScan();
232
+ })
233
+ .catch(async (error) => {
234
+ this.platform.log.error(error);
235
+ await this.openAPIRefreshStatus();
236
+ });
237
+ setInterval(() => {
238
+ this.platform.log.info('Start scan ' + this.device.deviceName + '(' + this.device.bleMac + ')');
199
239
  switchbot
200
240
  .startScan({
201
- id: this.device.bleMac,
241
+ mode: 'T',
242
+ id: bleMac,
202
243
  })
203
244
  .then(() => {
204
245
  return switchbot.wait(this.platform.config.options.refreshRate * 1000);
205
246
  })
206
247
  .then(() => {
207
248
  switchbot.stopScan();
249
+ this.platform.log.info('Stop scan ' + this.device.deviceName + '(' + this.device.bleMac + ')');
208
250
  })
209
251
  .catch(async (error) => {
210
252
  this.platform.log.error(error);
211
253
  await this.openAPIRefreshStatus();
212
254
  });
213
- setInterval(() => {
214
- this.platform.log.info('Start scan ' + this.device.deviceName + '(' + this.device.bleMac + ')');
215
- switchbot
216
- .startScan({
217
- mode: 'T',
218
- id: bleMac,
219
- })
220
- .then(() => {
221
- return switchbot.wait(this.platform.config.options.refreshRate * 1000);
222
- })
223
- .then(() => {
224
- switchbot.stopScan();
225
- this.platform.log.info('Stop scan ' + this.device.deviceName + '(' + this.device.bleMac + ')');
226
- })
227
- .catch(async (error) => {
228
- this.platform.log.error(error);
229
- await this.openAPIRefreshStatus();
230
- });
231
- }, this.platform.config.options.refreshRate * 60000);
232
- }
233
- else {
234
- await this.openAPIRefreshStatus();
235
- }
255
+ }, this.platform.config.options.refreshRate * 60000);
236
256
  }
237
257
  async openAPIRefreshStatus() {
238
258
  try {
239
- const deviceStatus = (await this.platform.axios.get(`${settings_1.DeviceURL}/${this.device.deviceId}/status`)).data;
240
- if (deviceStatus.message === 'success') {
241
- this.deviceStatus = deviceStatus;
242
- this.platform.debug(`Meter ${this.accessory.displayName} openAPIRefreshStatus - ${JSON.stringify(this.deviceStatus)}`);
243
- this.parseStatus();
244
- this.updateHomeKitCharacteristics();
245
- }
259
+ this.deviceStatus = (await this.platform.axios.get(`${settings_1.DeviceURL}/${this.device.deviceId}/status`)).data;
260
+ this.platform.debug(`Meter ${this.accessory.displayName} openAPIRefreshStatus: ${JSON.stringify(this.deviceStatus)}`);
261
+ this.parseStatus();
262
+ this.updateHomeKitCharacteristics();
246
263
  }
247
264
  catch (e) {
248
- this.platform.log.error('Meter - Failed to update status of', this.device.deviceName, JSON.stringify(e.message), this.platform.debug(`Meter ${this.accessory.displayName} - ${JSON.stringify(e)}`));
265
+ this.platform.log.error(`Meter ${this.accessory.displayName} failed to refresh status, Error Message: ${JSON.stringify(e.message)}`);
266
+ this.platform.debug(`Meter ${this.accessory.displayName}, Error: ${JSON.stringify(e)}`);
249
267
  this.apiError(e);
250
268
  }
251
269
  }
@@ -253,26 +271,42 @@ class Meter {
253
271
  * Updates the status for each of the HomeKit Characteristics
254
272
  */
255
273
  updateHomeKitCharacteristics() {
256
- if (this.StatusLowBattery !== undefined) {
274
+ if (this.StatusLowBattery === undefined) {
275
+ this.platform.debug(`Meter ${this.accessory.displayName} StatusLowBattery: ${this.StatusLowBattery}`);
276
+ }
277
+ else {
257
278
  this.service.updateCharacteristic(this.platform.Characteristic.StatusLowBattery, this.StatusLowBattery);
279
+ this.platform.device(`Meter ${this.accessory.displayName} updateCharacteristic StatusLowBattery: ${this.StatusLowBattery}`);
258
280
  }
259
- if (this.BatteryLevel !== undefined) {
281
+ if (this.BatteryLevel === undefined) {
282
+ this.platform.debug(`Meter ${this.accessory.displayName} BatteryLevel: ${this.BatteryLevel}`);
283
+ }
284
+ else {
260
285
  this.service.updateCharacteristic(this.platform.Characteristic.BatteryLevel, this.BatteryLevel);
286
+ this.platform.device(`Meter ${this.accessory.displayName} updateCharacteristic BatteryLevel: ${this.BatteryLevel}`);
287
+ }
288
+ if (this.device.meter?.hide_humidity && this.CurrentRelativeHumidity === undefined) {
289
+ this.platform.debug(`Meter ${this.accessory.displayName} CurrentRelativeHumidity: ${this.CurrentRelativeHumidity}`);
261
290
  }
262
- if (!this.platform.config.options?.meter?.hide_humidity && (this.CurrentRelativeHumidity !== undefined)) {
291
+ else {
263
292
  this.humidityservice?.updateCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity, this.CurrentRelativeHumidity);
293
+ this.platform.device(`Meter ${this.accessory.displayName} updateCharacteristic CurrentRelativeHumidity: ${this.CurrentRelativeHumidity}`);
294
+ }
295
+ if (this.device.meter?.hide_temperature || this.CurrentTemperature === undefined) {
296
+ this.platform.debug(`Meter ${this.accessory.displayName} CurrentTemperature: ${this.CurrentTemperature}`);
264
297
  }
265
- if (!this.platform.config.options?.meter?.hide_temperature && (this.CurrentTemperature !== undefined)) {
298
+ else {
266
299
  this.temperatureservice?.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, this.CurrentTemperature);
300
+ this.platform.device(`Meter ${this.accessory.displayName} updateCharacteristic CurrentTemperature: ${this.CurrentTemperature}`);
267
301
  }
268
302
  }
269
303
  apiError(e) {
270
304
  this.service.updateCharacteristic(this.platform.Characteristic.StatusLowBattery, e);
271
305
  this.service.updateCharacteristic(this.platform.Characteristic.BatteryLevel, e);
272
- if (!this.platform.config.options?.meter?.hide_humidity) {
306
+ if (!this.device.meter?.hide_humidity) {
273
307
  this.humidityservice?.updateCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity, e);
274
308
  }
275
- if (!this.platform.config.options?.meter?.hide_temperature) {
309
+ if (!this.device.meter?.hide_temperature) {
276
310
  this.temperatureservice?.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, e);
277
311
  }
278
312
  }
@@ -1 +1 @@
1
- {"version":3,"file":"meters.js","sourceRoot":"","sources":["../../src/devices/meters.ts"],"names":[],"mappings":";;;AAEA,+BAAyC;AACzC,8CAA2C;AAC3C,0CAAsE;AAEtE;;;;GAIG;AACH,MAAa,KAAK;IAsChB,YACmB,QAA2B,EACpC,SAA4B,EAC7B,MAAc;QAFJ,aAAQ,GAAR,QAAQ,CAAmB;QACpC,cAAS,GAAT,SAAS,CAAmB;QAC7B,WAAM,GAAN,MAAM,CAAQ;QAErB,uBAAuB;QACvB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;QACxF,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC5B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAS,CAAC,EAAE;YACtE,8DAA8D;YAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,KAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,4BAA4B;YAC7D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;aAC1D;SACF;QAED,oFAAoF;QACpF,IAAI,CAAC,aAAa,GAAG,IAAI,cAAO,EAAE,CAAC;QACnC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QAEnC,4CAA4C;QAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,4BAA4B;QAC5B,SAAS;aACN,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAE;aACvD,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,WAAW,CAAC;aACzE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,sBAAsB,CAAC;aAC7E,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,QAAS,CAAC,CAAC;QAElF,+EAA+E;QAC/E,sDAAsD;QACtD,CAAC,IAAI,CAAC,OAAO;YACX,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;gBACnD,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAEpG,+HAA+H;QAC/H,2HAA2H;QAC3H,uHAAuH;QAEvH,sFAAsF;QACtF,8GAA8G;QAC9G,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;QAEzF,mGAAmG;QACnG,yDAAyD;QAEzD,+CAA+C;QAC/C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QAE9E,6BAA6B;QAC7B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE;YACzD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;aAC7C;YACD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC7F,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAmB,CAAC,CAAC;SACnD;aAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE;gBACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAC1C;YACD,CAAC,IAAI,CAAC,kBAAkB;gBACtB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC;oBAClE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,oBAAoB,CAAC;YAErI,IAAI,CAAC,kBAAkB;iBACpB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC;iBAClE,QAAQ,CAAC;gBACR,IAAI,2BAAkB;gBACtB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC;gBAChC,QAAQ,EAAE,CAAC,MAAM;gBACjB,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE,GAAG;aACb,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE;gBACV,OAAO,IAAI,CAAC,kBAAkB,CAAC;YACjC,CAAC,CAAC,CAAC;YACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,wBAAwB,GAAG,IAAI,CAAC,kBAAkB,GAAG,QAAQ,CAAC,CAAC;SAChH;aAAM;YACL,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE;gBACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;aACxD;SACF;QAED,0BAA0B;QAC1B,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE;YACtD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;aAC7C;YACD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACvF,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,eAAgB,CAAC,CAAC;SAChD;aAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAChC,CAAC,IAAI,CAAC,eAAe;gBACnB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;oBAC/D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,iBAAiB,CAAC;YAE/H,IAAI,CAAC,eAAe;iBACjB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC;iBACvE,QAAQ,CAAC;gBACR,OAAO,EAAE,GAAG;aACb,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE;gBACV,OAAO,IAAI,CAAC,uBAAuB,CAAC;YACtC,CAAC,CAAC,CAAC;YACL,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,qBAAqB,GAAG,IAAI,CAAC,uBAAuB,GAAG,GAAG,CAAC,CAAC;SAC7G;aAAM;YACL,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE;gBACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;aACrD;SACF;QAED,4CAA4C;QAC5C,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAEpC,2BAA2B;QAC3B,IAAA,eAAQ,EAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,IAAI,CAAC;aACxD,IAAI,CAAC,IAAA,qBAAS,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aACjD,SAAS,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,WAAW;QACT,wBAAwB;QACxB,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAC1B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;SACzB;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,YAAY,GAAG,EAAE,EAAE;YAC1B,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;SAC3B;aAAM;YACL,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;SAC3B;QACD,4BAA4B;QAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE;YACvD,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAS,CAAC,EAAE;gBACtE,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,WAAW,CAAC;aACjD;iBAAM;gBACL,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAS,CAAC;aACjE;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,gBAAgB,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;SACzG;QAED,sBAAsB;QACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE;YAC1D,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAS,CAAC,EAAE;gBACtE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC;aAC/C;iBAAM;gBACL,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE;oBACnD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;iBAClF;qBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE;oBAC1D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;iBAC/E;qBAAM;oBACL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAY,CAAC;iBAC/D;aACF;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,mBAAmB,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;SACxG;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAS,CAAC,EAAE;YACtE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC7C,8DAA8D;YAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC5C,MAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,KAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,4BAA4B;YAC7D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,CAAC;aAC7C;YACD,SAAS,CAAC,eAAe,GAAG,CAAC,EAAO,EAAE,EAAE;gBACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;gBACvD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBACrE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAC7D,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnD,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC;YAC7C,CAAC,CAAC;YACF,SAAS;iBACN,SAAS,CAAC;gBACT,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;aACvB,CAAC;iBACD,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,IAAI,CAAC,CAAC;YAC3E,CAAC,CAAC;iBACD,IAAI,CAAC,GAAG,EAAE;gBACT,SAAS,CAAC,QAAQ,EAAE,CAAC;YACvB,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC/B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACpC,CAAC,CAAC,CAAC;YACL,WAAW,CAAC,GAAG,EAAE;gBACf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;gBAChG,SAAS;qBACN,SAAS,CAAC;oBACT,IAAI,EAAE,GAAG;oBACT,EAAE,EAAE,MAAM;iBACX,CAAC;qBACD,IAAI,CAAC,GAAG,EAAE;oBACT,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,IAAI,CAAC,CAAC;gBAC3E,CAAC,CAAC;qBACD,IAAI,CAAC,GAAG,EAAE;oBACT,SAAS,CAAC,QAAQ,EAAE,CAAC;oBACrB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;gBACjG,CAAC,CAAC;qBACD,KAAK,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;oBAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC/B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACpC,CAAC,CAAC,CAAC;YACP,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,KAAK,CAAC,CAAC;SACxD;aAAM;YACL,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;SACnC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,IAAI;YACF,MAAM,YAAY,GAAyB,CACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,oBAAS,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,SAAS,CAAC,CAC7E,CAAC,IAAI,CAAC;YACP,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE;gBACtC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,2BAA2B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;gBACvH,IAAI,CAAC,WAAW,EAAE,CAAC;gBACnB,IAAI,CAAC,4BAA4B,EAAE,CAAC;aACrC;SACF;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CACrB,oCAAoC,EACpC,IAAI,CAAC,MAAM,CAAC,UAAU,EACtB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EACzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAClF,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAClB;IACH,CAAC;IAED;;OAEG;IACH,4BAA4B;QAC1B,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE;YACvC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;SACzG;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;SACjG;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,IAAI,CAAC,IAAI,CAAC,uBAAuB,KAAK,SAAS,CAAC,EAAE;YACvG,IAAI,CAAC,eAAe,EAAE,oBAAoB,CACxC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EACpD,IAAI,CAAC,uBAAuB,CAC7B,CAAC;SACH;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,gBAAgB,IAAI,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS,CAAC,EAAE;YACrG,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAC3C,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAC/C,IAAI,CAAC,kBAAkB,CACxB,CAAC;SACH;IACH,CAAC;IAEM,QAAQ,CAAC,CAAM;QACpB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE;YACvD,IAAI,CAAC,eAAe,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;SACrG;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE;YAC1D,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;SACnG;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAa;QACrB,8CAA8C;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AArVD,sBAqVC"}
1
+ {"version":3,"file":"meters.js","sourceRoot":"","sources":["../../src/devices/meters.ts"],"names":[],"mappings":";;;AAEA,+BAAyC;AACzC,8CAA2C;AAC3C,0CAA+D;AAE/D;;;;GAIG;AACH,MAAa,KAAK;IAsChB,YACmB,QAA2B,EACpC,SAA4B,EAC7B,MAA8B;QAFpB,aAAQ,GAAR,QAAQ,CAAmB;QACpC,cAAS,GAAT,SAAS,CAAmB;QAC7B,WAAM,GAAN,MAAM,CAAwB;QAErC,uBAAuB;QACvB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;QACxF,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAE5B,iBAAiB;QACjB,IAAI,MAAM,CAAC,GAAG,EAAE;YACd,8DAA8D;YAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC5C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,KAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,4BAA4B;YAC7D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;YAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;SACxD;QAED,oFAAoF;QACpF,IAAI,CAAC,aAAa,GAAG,IAAI,cAAO,EAAE,CAAC;QACnC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QAEnC,4CAA4C;QAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,4BAA4B;QAC5B,SAAS;aACN,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAE;aACvD,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,WAAW,CAAC;aACzE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,sBAAsB,CAAC;aAC7E,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,CAAC,QAAS,CAAC,CAAC;QAElF,+EAA+E;QAC/E,sDAAsD;QACtD,CAAC,IAAI,CAAC,OAAO;YACX,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;gBACnD,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,WAAW,UAAU,CAAC;QAE3F,+HAA+H;QAC/H,2HAA2H;QAC3H,uHAAuH;QAEvH,sFAAsF;QACtF,8GAA8G;QAC9G,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC;QAEzF,mGAAmG;QACnG,yDAAyD;QAEzD,+CAA+C;QAC/C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QAE9E,6BAA6B;QAC7B,IAAI,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAAE;YAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC;YAC5D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC7F,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAmB,CAAC,CAAC;SACnD;aAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;YACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC;YAC1D,CAAC,IAAI,CAAC,kBAAkB;gBACtB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC;oBAClE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,WAAW,qBAAqB,CAAC;YAErH,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,SAAS,CAAC,WAAW,qBAAqB,CAAC,CAAC;YAEjH,IAAI,CAAC,kBAAkB;iBACpB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC;iBAClE,QAAQ,CAAC;gBACR,IAAI,2BAAkB;gBACtB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC;gBAChC,QAAQ,EAAE,CAAC,MAAM;gBACjB,QAAQ,EAAE,GAAG;gBACb,OAAO,EAAE,GAAG;aACb,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE;gBACV,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;SACN;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC;SACtD;QAED,0BAA0B;QAC1B,IAAI,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE;YAC/B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACvF,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,eAAgB,CAAC,CAAC;SAChD;aAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAChC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC;YACvD,CAAC,IAAI,CAAC,eAAe;gBACnB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;oBAC/D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,WAAW,kBAAkB,CAAC;YAE/G,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,SAAS,CAAC,WAAW,kBAAkB,CAAC,CAAC;YAE9G,IAAI,CAAC,eAAe;iBACjB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC;iBACvE,QAAQ,CAAC;gBACR,OAAO,EAAE,GAAG;aACb,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE;gBACV,OAAO,IAAI,CAAC,uBAAuB,CAAC;YACtC,CAAC,CAAC,CAAC;SACN;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC;SAC1D;QAED,4CAA4C;QAC5C,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAEpC,2BAA2B;QAC3B,IAAA,eAAQ,EAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,IAAI,CAAC;aACxD,IAAI,CAAC,IAAA,qBAAS,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aACjD,SAAS,CAAC,GAAG,EAAE;YACd,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;SAC7B;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;SACjC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAC1B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;SACzB;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,YAAY,GAAG,EAAE,EAAE;YAC1B,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;SAC3B;aAAM;YACL,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;SAC3B;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW;sBAC/B,IAAI,CAAC,YAAY,uBAAuB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrF,CAAC;IAEO,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;YAC1B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;SACzB;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,YAAY,GAAG,EAAE,EAAE;YAC1B,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;SAC3B;aAAM;YACL,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;SAC3B;QACD,4BAA4B;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE;YACrC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;gBACnB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,WAAW,CAAC;aACjD;iBAAM;gBACL,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAS,CAAC;aACjE;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,gBAAgB,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;SACzG;QAED,sBAAsB;QACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAAE;YACxC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;gBACnB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC;aAC/C;iBAAM;gBACL,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE;oBACjC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;iBAClF;qBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,EAAE;oBACxC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;iBAC/E;qBAAM;oBACL,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC;iBAC9D;aACF;YACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,mBAAmB,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;SACxG;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACnB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;SAC/B;aAAM;YACL,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;SACnC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB;QAC5B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtD,8DAA8D;QAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,IAAI,SAAS,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,QAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,KAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,4BAA4B;QAC7D,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,CAAC;QAC1C,SAAS,CAAC,eAAe,GAAG,CAAC,EAAO,EAAE,EAAE;YACtC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;YACrE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7D,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;YACnD,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC;QAC7C,CAAC,CAAC;QACF,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,4BAA4B,EAAE,CAAC;QACpC,SAAS;aACN,SAAS,CAAC;YACT,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;SACvB,CAAC;aACD,IAAI,CAAC,GAAG,EAAE;YACT,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,IAAI,CAAC,CAAC;QAC3E,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,EAAE;YACT,SAAS,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC,CAAC;aACD,KAAK,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;YAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QACL,WAAW,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YAChG,SAAS;iBACN,SAAS,CAAC;gBACT,IAAI,EAAE,GAAG;gBACT,EAAE,EAAE,MAAM;aACX,CAAC;iBACD,IAAI,CAAC,GAAG,EAAE;gBACT,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,IAAI,CAAC,CAAC;YAC3E,CAAC,CAAC;iBACD,IAAI,CAAC,GAAG,EAAE;gBACT,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACrB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YACjG,CAAC,CAAC;iBACD,KAAK,CAAC,KAAK,EAAE,KAAU,EAAE,EAAE;gBAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC/B,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACpC,CAAC,CAAC,CAAC;QACP,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAQ,CAAC,WAAY,GAAG,KAAK,CAAC,CAAC;IACzD,CAAC;IAEO,KAAK,CAAC,oBAAoB;QAChC,IAAI;YACF,IAAI,CAAC,YAAY,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,oBAAS,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;YACxG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACtH,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,4BAA4B,EAAE,CAAC;SACrC;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,6CAA6C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACrI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,YAAY,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxF,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;SAClB;IACH,CAAC;IAED;;OAEG;IACH,4BAA4B;QAC1B,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE;YACvC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,sBAAsB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;SACvG;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACxG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,2CAA2C,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;SAC7H;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,kBAAkB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;SAC/F;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,uCAAuC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;SACrH;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,IAAI,IAAI,CAAC,uBAAuB,KAAK,SAAS,EAAE;YAClF,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,6BAA6B,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;SACrH;aAAM;YACL,IAAI,CAAC,eAAe,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;YAC/H,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,kDAAkD,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;SAC3I;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE;YAChF,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,wBAAwB,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;SAC3G;aAAM;YACL,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACxH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,6CAA6C,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;SACjI;IACH,CAAC;IAEM,QAAQ,CAAC,CAAM;QACpB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE;YACrC,IAAI,CAAC,eAAe,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;SACrG;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,EAAE;YACxC,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;SACnG;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAa;QACrB,8CAA8C;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAzWD,sBAyWC"}
@@ -1,6 +1,6 @@
1
1
  import { PlatformAccessory, CharacteristicValue, MacAddress } from 'homebridge';
2
2
  import { SwitchBotPlatform } from '../platform';
3
- import { device, deviceStatusResponse } from '../settings';
3
+ import { device, devicesConfig } from '../settings';
4
4
  /**
5
5
  * Platform Accessory
6
6
  * An instance of this class is created for each accessory your platform registers
@@ -9,10 +9,11 @@ import { device, deviceStatusResponse } from '../settings';
9
9
  export declare class Motion {
10
10
  private readonly platform;
11
11
  private accessory;
12
- device: device;
12
+ device: device & devicesConfig;
13
13
  private service;
14
14
  MotionDetected: CharacteristicValue;
15
- deviceStatus: deviceStatusResponse;
15
+ deviceStatus: any;
16
+ BLEmotion: boolean;
16
17
  switchbot: {
17
18
  discover: (arg0: {
18
19
  duration: any;
@@ -24,15 +25,18 @@ export declare class Motion {
24
25
  };
25
26
  motionUbpdateInProgress: boolean;
26
27
  doMotionUpdate: any;
27
- constructor(platform: SwitchBotPlatform, accessory: PlatformAccessory, device: device);
28
+ constructor(platform: SwitchBotPlatform, accessory: PlatformAccessory, device: device & devicesConfig);
28
29
  /**
29
30
  * Parse the device status from the SwitchBot api
30
31
  */
31
- parseStatus(): void;
32
+ parseStatus(): Promise<void>;
33
+ private BLEparseStatus;
34
+ private openAPIparseStatus;
32
35
  /**
33
36
  * Asks the SwitchBot API for the latest device information
34
37
  */
35
38
  refreshStatus(): Promise<void>;
39
+ private BLErefreshStatus;
36
40
  private openAPIRefreshStatus;
37
41
  /**
38
42
  * Updates the status for each of the HomeKit Characteristics
@@ -1 +1 @@
1
- {"version":3,"file":"motion.d.ts","sourceRoot":"","sources":["../../src/devices/motion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAa,MAAM,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEtE;;;;GAIG;AACH,qBAAa,MAAM;IA6Bf,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,SAAS;IACV,MAAM,EAAE,MAAM;IA7BvB,OAAO,CAAC,OAAO,CAAU;IAGzB,cAAc,EAAG,mBAAmB,CAAC;IAGrC,YAAY,EAAG,oBAAoB,CAAC;IACpC,SAAS,EAAG;QACV,QAAQ,EAAE,CACR,IAAI,EACF;YACE,QAAQ,EAAE,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,OAAO,CAAC;YACf,EAAE,EAAE,UAAU,CAAC;SAChB,KACA,OAAO,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,KACT,GAAG,CAAC;KACV,CAAC;IAGF,uBAAuB,EAAG,OAAO,CAAC;IAClC,cAAc,MAAC;gBAGI,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM;IA+DvB;;OAEG;IACH,WAAW;IASX;;OAEG;IACG,aAAa;YAsDL,oBAAoB;IAsBlC;;OAEG;IACH,4BAA4B;IAMrB,QAAQ,CAAC,CAAC,EAAE,GAAG;CAGvB"}
1
+ {"version":3,"file":"motion.d.ts","sourceRoot":"","sources":["../../src/devices/motion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,iBAAiB,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,EAAa,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE/D;;;;GAIG;AACH,qBAAa,MAAM;IA8Bf,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,SAAS;IACV,MAAM,EAAE,MAAM,GAAG,aAAa;IA9BvC,OAAO,CAAC,OAAO,CAAU;IAGzB,cAAc,EAAG,mBAAmB,CAAC;IAGrC,YAAY,EAAG,GAAG,CAAC;IACnB,SAAS,EAAG,OAAO,CAAC;IACpB,SAAS,EAAG;QACV,QAAQ,EAAE,CACR,IAAI,EACF;YACE,QAAQ,EAAE,GAAG,CAAC;YACd,KAAK,EAAE,MAAM,CAAC;YACd,KAAK,EAAE,OAAO,CAAC;YACf,EAAE,EAAE,UAAU,CAAC;SAChB,KACA,OAAO,CAAC,GAAG,CAAC,CAAC;QAClB,IAAI,EAAE,CACJ,IAAI,EAAE,MAAM,KACT,GAAG,CAAC;KACV,CAAC;IAGF,uBAAuB,EAAG,OAAO,CAAC;IAClC,cAAc,MAAC;gBAGI,QAAQ,EAAE,iBAAiB,EACpC,SAAS,EAAE,iBAAiB,EAC7B,MAAM,EAAE,MAAM,GAAG,aAAa;IA6DvC;;OAEG;IACG,WAAW;YAUH,cAAc;YAKd,kBAAkB;IAKhC;;OAEG;IACG,aAAa;YAUL,gBAAgB;YAmDhB,oBAAoB;IAalC;;OAEG;IACH,4BAA4B;IASrB,QAAQ,CAAC,CAAC,EAAE,GAAG;CAGvB"}