homebridge-midea-platform 1.2.3 → 1.2.4-beta.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.
- package/.zed/settings.json +12 -0
- package/CHANGELOG.md +4 -0
- package/README.md +1 -0
- package/biome.json +31 -0
- package/config.schema.json +16 -1
- package/dist/accessory/AccessoryFactory.d.ts +5 -4
- package/dist/accessory/AccessoryFactory.js +4 -1
- package/dist/accessory/AccessoryFactory.js.map +1 -1
- package/dist/accessory/AirConditionerAccessory.d.ts +6 -5
- package/dist/accessory/AirConditionerAccessory.js +31 -94
- package/dist/accessory/AirConditionerAccessory.js.map +1 -1
- package/dist/accessory/BaseAccessory.d.ts +6 -3
- package/dist/accessory/BaseAccessory.js +4 -0
- package/dist/accessory/BaseAccessory.js.map +1 -1
- package/dist/accessory/DehumidifierAccessory.d.ts +17 -4
- package/dist/accessory/DehumidifierAccessory.js +16 -32
- package/dist/accessory/DehumidifierAccessory.js.map +1 -1
- package/dist/accessory/DishwasherAccessory.d.ts +6 -5
- package/dist/accessory/DishwasherAccessory.js +1 -3
- package/dist/accessory/DishwasherAccessory.js.map +1 -1
- package/dist/accessory/ElectricWaterHeaterAccessory.d.ts +6 -5
- package/dist/accessory/ElectricWaterHeaterAccessory.js +5 -11
- package/dist/accessory/ElectricWaterHeaterAccessory.js.map +1 -1
- package/dist/accessory/FanAccessory.d.ts +6 -5
- package/dist/accessory/FanAccessory.js +2 -7
- package/dist/accessory/FanAccessory.js.map +1 -1
- package/dist/accessory/FrontLoadWasherAccessory.d.ts +6 -5
- package/dist/accessory/FrontLoadWasherAccessory.js +1 -3
- package/dist/accessory/FrontLoadWasherAccessory.js.map +1 -1
- package/dist/accessory/GasWaterHeaterAccessory.d.ts +6 -5
- package/dist/accessory/GasWaterHeaterAccessory.js +6 -15
- package/dist/accessory/GasWaterHeaterAccessory.js.map +1 -1
- package/dist/accessory/HeatPumpWiFiControllerAccessory.d.ts +16 -3
- package/dist/accessory/HeatPumpWiFiControllerAccessory.js +2 -0
- package/dist/accessory/HeatPumpWiFiControllerAccessory.js.map +1 -1
- package/dist/accessory/HumidifierAccessory.d.ts +29 -0
- package/dist/accessory/HumidifierAccessory.js +57 -0
- package/dist/accessory/HumidifierAccessory.js.map +1 -0
- package/dist/core/MideaCloud.d.ts +1 -1
- package/dist/core/MideaCloud.js +40 -27
- package/dist/core/MideaCloud.js.map +1 -1
- package/dist/core/MideaConstants.d.ts +2 -1
- package/dist/core/MideaConstants.js +7 -7
- package/dist/core/MideaConstants.js.map +1 -1
- package/dist/core/MideaDevice.d.ts +7 -7
- package/dist/core/MideaDevice.js +18 -9
- package/dist/core/MideaDevice.js.map +1 -1
- package/dist/core/MideaDiscover.d.ts +2 -2
- package/dist/core/MideaDiscover.js +43 -47
- package/dist/core/MideaDiscover.js.map +1 -1
- package/dist/core/MideaMessage.d.ts +1 -1
- package/dist/core/MideaMessage.js +4 -6
- package/dist/core/MideaMessage.js.map +1 -1
- package/dist/core/MideaPacketBuilder.js +1 -1
- package/dist/core/MideaPacketBuilder.js.map +1 -1
- package/dist/core/MideaSecurity.d.ts +2 -3
- package/dist/core/MideaSecurity.js +10 -12
- package/dist/core/MideaSecurity.js.map +1 -1
- package/dist/core/MideaUtils.d.ts +2 -11
- package/dist/core/MideaUtils.js +22 -14
- package/dist/core/MideaUtils.js.map +1 -1
- package/dist/devices/DeviceFactory.d.ts +9 -8
- package/dist/devices/DeviceFactory.js +8 -5
- package/dist/devices/DeviceFactory.js.map +1 -1
- package/dist/devices/a1/MideaA1Device.d.ts +4 -4
- package/dist/devices/a1/MideaA1Device.js.map +1 -1
- package/dist/devices/a1/MideaA1Message.js +14 -13
- package/dist/devices/a1/MideaA1Message.js.map +1 -1
- package/dist/devices/ac/MideaACDevice.d.ts +4 -4
- package/dist/devices/ac/MideaACDevice.js +2 -4
- package/dist/devices/ac/MideaACDevice.js.map +1 -1
- package/dist/devices/ac/MideaACMessage.js +61 -88
- package/dist/devices/ac/MideaACMessage.js.map +1 -1
- package/dist/devices/c3/MideaC3Device.d.ts +5 -5
- package/dist/devices/c3/MideaC3Device.js +1 -11
- package/dist/devices/c3/MideaC3Device.js.map +1 -1
- package/dist/devices/c3/MideaC3Message.js +12 -2
- package/dist/devices/c3/MideaC3Message.js.map +1 -1
- package/dist/devices/db/MideaDBDevice.d.ts +5 -5
- package/dist/devices/db/MideaDBDevice.js +1 -1
- package/dist/devices/db/MideaDBDevice.js.map +1 -1
- package/dist/devices/db/MideaDBMessage.js +13 -26
- package/dist/devices/db/MideaDBMessage.js.map +1 -1
- package/dist/devices/e1/MideaE1Device.d.ts +4 -4
- package/dist/devices/e1/MideaE1Device.js.map +1 -1
- package/dist/devices/e1/MideaE1Message.js +16 -3
- package/dist/devices/e1/MideaE1Message.js.map +1 -1
- package/dist/devices/e2/MideaE2Device.d.ts +4 -4
- package/dist/devices/e2/MideaE2Device.js.map +1 -1
- package/dist/devices/e2/MideaE2Message.js +5 -12
- package/dist/devices/e2/MideaE2Message.js.map +1 -1
- package/dist/devices/e3/MideaE3Device.d.ts +5 -5
- package/dist/devices/e3/MideaE3Device.js.map +1 -1
- package/dist/devices/e3/MideaE3Message.js +12 -9
- package/dist/devices/e3/MideaE3Message.js.map +1 -1
- package/dist/devices/fa/MideaFADevice.d.ts +5 -5
- package/dist/devices/fa/MideaFADevice.js.map +1 -1
- package/dist/devices/fa/MideaFAMessage.js +28 -4
- package/dist/devices/fa/MideaFAMessage.js.map +1 -1
- package/dist/devices/fd/MideaFDDevice.d.ts +35 -0
- package/dist/devices/fd/MideaFDDevice.js +101 -0
- package/dist/devices/fd/MideaFDDevice.js.map +1 -0
- package/dist/devices/fd/MideaFDMessage.d.ts +48 -0
- package/dist/devices/fd/MideaFDMessage.js +135 -0
- package/dist/devices/fd/MideaFDMessage.js.map +1 -0
- package/dist/platform.d.ts +1 -1
- package/dist/platform.js +9 -9
- package/dist/platform.js.map +1 -1
- package/dist/platformUtils.d.ts +2 -0
- package/dist/platformUtils.js +1 -0
- package/dist/platformUtils.js.map +1 -1
- package/docs/fd.md +3 -0
- package/homebridge-ui/server.js +3 -0
- package/mise.toml +2 -0
- package/package.json +5 -6
- package/eslint.config.js +0 -43
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import MideaDevice
|
|
3
|
-
import {
|
|
1
|
+
import type { Service } from 'homebridge';
|
|
2
|
+
import type MideaDevice from '../core/MideaDevice.js';
|
|
3
|
+
import type { DeviceAttributeBase } from '../core/MideaDevice.js';
|
|
4
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
5
|
+
import type { DeviceConfig } from '../platformUtils.js';
|
|
4
6
|
export default abstract class BaseAccessory<T extends MideaDevice> {
|
|
5
7
|
protected readonly platform: MideaPlatform;
|
|
6
8
|
protected readonly accessory: MideaAccessory;
|
|
7
9
|
protected readonly device: T;
|
|
8
10
|
protected readonly configDev: DeviceConfig;
|
|
11
|
+
protected abstract service: Service;
|
|
9
12
|
constructor(platform: MideaPlatform, accessory: MideaAccessory, device: T, configDev: DeviceConfig);
|
|
10
13
|
protected abstract updateCharacteristics(attributes: DeviceAttributeBase): Promise<void>;
|
|
11
14
|
}
|
|
@@ -8,6 +8,7 @@ export default class BaseAccessory {
|
|
|
8
8
|
this.accessory = accessory;
|
|
9
9
|
this.device = device;
|
|
10
10
|
this.configDev = configDev;
|
|
11
|
+
// biome-ignore lint/style/noNonNullAssertion: by design, AccessoryInformation service is always present
|
|
11
12
|
this.accessory
|
|
12
13
|
.getService(this.platform.Service.AccessoryInformation)
|
|
13
14
|
.setCharacteristic(this.platform.Characteristic.Manufacturer, 'Midea')
|
|
@@ -17,6 +18,9 @@ export default class BaseAccessory {
|
|
|
17
18
|
// Register a callback function with MideaDevice and then refresh device status. The callback
|
|
18
19
|
// is called whenever there is a change in any attribute value from the device.
|
|
19
20
|
this.device.on('update', this.updateCharacteristics.bind(this));
|
|
21
|
+
this.device.on('error_refresh', () => {
|
|
22
|
+
this.service.updateCharacteristic(this.platform.Characteristic.Active, new Error('Error refreshing device status'));
|
|
23
|
+
});
|
|
20
24
|
}
|
|
21
25
|
}
|
|
22
26
|
//# sourceMappingURL=BaseAccessory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseAccessory.js","sourceRoot":"","sources":["../../src/accessory/BaseAccessory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseAccessory.js","sourceRoot":"","sources":["../../src/accessory/BaseAccessory.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,OAAgB,aAAa;IAKpB;IACA;IACA;IACA;IAJrB,YACqB,QAAuB,EACvB,SAAyB,EACzB,MAAS,EACT,SAAuB;QAHvB,aAAQ,GAAR,QAAQ,CAAe;QACvB,cAAS,GAAT,SAAS,CAAgB;QACzB,WAAM,GAAN,MAAM,CAAG;QACT,cAAS,GAAT,SAAS,CAAc;QAE1C,wGAAwG;QACxG,IAAI,CAAC,SAAS;aACX,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAE;aACvD,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC;aACrE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;aACxG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;aACzG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,aAAa,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAEtI,8FAA8F;QAC9F,+EAA+E;QAC/E,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YACnC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;QACtH,CAAC,CAAC,CAAC;IACL,CAAC;CAIF"}
|
|
@@ -1,11 +1,24 @@
|
|
|
1
|
-
|
|
1
|
+
/***********************************************************************
|
|
2
|
+
* Midea Platform Dehumidifier Accessory class
|
|
3
|
+
*
|
|
4
|
+
* Copyright (c) 2023 David Kerr, https://github.com/dkerr64
|
|
5
|
+
*
|
|
6
|
+
* Based on https://github.com/homebridge/homebridge-plugin-template
|
|
7
|
+
* With thanks to https://github.com/kovapatrik/homebridge-midea-platform
|
|
8
|
+
*
|
|
9
|
+
* An instance of this class is created for each accessory the platform registers.
|
|
10
|
+
*
|
|
11
|
+
*/
|
|
12
|
+
import type { Service } from 'homebridge';
|
|
13
|
+
import type MideaA1Device from '../devices/a1/MideaA1Device.js';
|
|
14
|
+
import type { A1Attributes } from '../devices/a1/MideaA1Device.js';
|
|
15
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
16
|
+
import { type DeviceConfig } from '../platformUtils.js';
|
|
2
17
|
import BaseAccessory from './BaseAccessory.js';
|
|
3
|
-
import { DeviceConfig } from '../platformUtils.js';
|
|
4
|
-
import MideaA1Device, { A1Attributes } from '../devices/a1/MideaA1Device.js';
|
|
5
18
|
export default class DehumidifierAccessory extends BaseAccessory<MideaA1Device> {
|
|
6
19
|
protected readonly device: MideaA1Device;
|
|
7
20
|
protected readonly configDev: DeviceConfig;
|
|
8
|
-
|
|
21
|
+
protected service: Service;
|
|
9
22
|
private temperatureService?;
|
|
10
23
|
private fanService?;
|
|
11
24
|
private humiditySensorService?;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import BaseAccessory from './BaseAccessory.js';
|
|
2
1
|
import { WaterTankSensor } from '../platformUtils.js';
|
|
2
|
+
import BaseAccessory from './BaseAccessory.js';
|
|
3
3
|
export default class DehumidifierAccessory extends BaseAccessory {
|
|
4
4
|
device;
|
|
5
5
|
configDev;
|
|
@@ -53,10 +53,7 @@ export default class DehumidifierAccessory extends BaseAccessory {
|
|
|
53
53
|
.setProps({
|
|
54
54
|
validValues: [this.platform.Characteristic.TargetHumidifierDehumidifierState.DEHUMIDIFIER],
|
|
55
55
|
});
|
|
56
|
-
this.service
|
|
57
|
-
.getCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity)
|
|
58
|
-
.onGet(this.getCurrentRelativeHumidity.bind(this))
|
|
59
|
-
.setProps({
|
|
56
|
+
this.service.getCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity).onGet(this.getCurrentRelativeHumidity.bind(this)).setProps({
|
|
60
57
|
minValue: 0,
|
|
61
58
|
maxValue: 100,
|
|
62
59
|
minStep: 1,
|
|
@@ -70,10 +67,7 @@ export default class DehumidifierAccessory extends BaseAccessory {
|
|
|
70
67
|
maxValue: 100, // what we set to the himdifier. If we have this as 35..85 then Apple Home UI will not match.
|
|
71
68
|
minStep: 5,
|
|
72
69
|
});
|
|
73
|
-
this.service
|
|
74
|
-
.getCharacteristic(this.platform.Characteristic.RotationSpeed)
|
|
75
|
-
.onGet(this.getRotationSpeed.bind(this))
|
|
76
|
-
.onSet(this.setRotationSpeed.bind(this));
|
|
70
|
+
this.service.getCharacteristic(this.platform.Characteristic.RotationSpeed).onGet(this.getRotationSpeed.bind(this)).onSet(this.setRotationSpeed.bind(this));
|
|
77
71
|
this.service.getCharacteristic(this.platform.Characteristic.WaterLevel).onGet(this.getWaterLevel.bind(this));
|
|
78
72
|
// Temperature sensor
|
|
79
73
|
this.temperatureService = this.accessory.getServiceById(this.platform.Service.TemperatureSensor, 'Temperature');
|
|
@@ -90,10 +84,7 @@ export default class DehumidifierAccessory extends BaseAccessory {
|
|
|
90
84
|
this.fanService ??= this.accessory.addService(this.platform.Service.Fanv2, 'Fan', 'Fan');
|
|
91
85
|
this.fanService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Fan`);
|
|
92
86
|
this.fanService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Fan`);
|
|
93
|
-
this.fanService
|
|
94
|
-
.getCharacteristic(this.platform.Characteristic.Active)
|
|
95
|
-
.onGet(this.getActive.bind(this))
|
|
96
|
-
.onSet(this.setActive.bind(this));
|
|
87
|
+
this.fanService.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
|
|
97
88
|
this.fanService
|
|
98
89
|
.getCharacteristic(this.platform.Characteristic.RotationSpeed)
|
|
99
90
|
.onGet(this.getRotationSpeed.bind(this))
|
|
@@ -106,9 +97,7 @@ export default class DehumidifierAccessory extends BaseAccessory {
|
|
|
106
97
|
this.humiditySensorService = this.accessory.getServiceById(this.platform.Service.HumiditySensor, 'Humidity');
|
|
107
98
|
if (this.configDev.A1_options.humiditySensor) {
|
|
108
99
|
this.humiditySensorService ??= this.accessory.addService(this.platform.Service.HumiditySensor, 'Humidity', 'Humidity');
|
|
109
|
-
this.humiditySensorService
|
|
110
|
-
.getCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity)
|
|
111
|
-
.onGet(this.getCurrentRelativeHumidity.bind(this));
|
|
100
|
+
this.humiditySensorService.getCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity).onGet(this.getCurrentRelativeHumidity.bind(this));
|
|
112
101
|
}
|
|
113
102
|
else if (this.humiditySensorService) {
|
|
114
103
|
this.accessory.removeService(this.humiditySensorService);
|
|
@@ -231,24 +220,19 @@ export default class DehumidifierAccessory extends BaseAccessory {
|
|
|
231
220
|
// Powered off, must be inactive
|
|
232
221
|
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.INACTIVE;
|
|
233
222
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
if (this.device.attributes.CURRENT_HUMIDITY < this.device.attributes.TARGET_HUMIDITY) {
|
|
244
|
-
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.IDLE;
|
|
245
|
-
}
|
|
246
|
-
else {
|
|
247
|
-
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.DEHUMIDIFYING;
|
|
248
|
-
}
|
|
223
|
+
// Powered on, check mode
|
|
224
|
+
if (this.device.attributes.MODE >= 2) {
|
|
225
|
+
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.DEHUMIDIFYING;
|
|
226
|
+
}
|
|
227
|
+
if (this.device.attributes.MODE === 1) {
|
|
228
|
+
// Whether dehumidifying depends on whether we have reached target. This is not
|
|
229
|
+
// always accurate, but is best we can do to signal whether actively dehumidifing or not.
|
|
230
|
+
if (this.device.attributes.CURRENT_HUMIDITY < this.device.attributes.TARGET_HUMIDITY) {
|
|
231
|
+
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.IDLE;
|
|
249
232
|
}
|
|
250
|
-
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.
|
|
233
|
+
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.DEHUMIDIFYING;
|
|
251
234
|
}
|
|
235
|
+
return this.platform.Characteristic.CurrentHumidifierDehumidifierState.IDLE;
|
|
252
236
|
}
|
|
253
237
|
// Handle requests to get the target value of the "HumidifierDehumidifierState" characteristic
|
|
254
238
|
getTargetHumidifierDehumidifierState() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DehumidifierAccessory.js","sourceRoot":"","sources":["../../src/accessory/DehumidifierAccessory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DehumidifierAccessory.js","sourceRoot":"","sources":["../../src/accessory/DehumidifierAccessory.ts"],"names":[],"mappings":"AAeA,OAAO,EAAqB,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,aAA4B;IAmBxD;IACA;IAnBX,OAAO,CAAU;IAEnB,kBAAkB,CAAW;IAC7B,UAAU,CAAW;IACrB,qBAAqB,CAAW;IAChC,WAAW,CAAW;IACtB,gBAAgB,CAAW;IACnC,wEAAwE;IACxE,+DAA+D;IACvD,cAAc,GAAG,CAAC,CAAC;IAE3B;;;OAGG;IACH,YACE,QAAuB,EACvB,SAAyB,EACN,MAAqB,EACrB,SAAuB;QAE1C,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAH3B,WAAM,GAAN,MAAM,CAAe;QACrB,cAAS,GAAT,SAAS,CAAc;QAI1C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,kCAAkC,IAAI,CAAC,cAAc,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;QAE1J,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAExF,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,KAAK,IAAI,CAAC,cAAc,EAAE,CAAC;YAC7E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CACpB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI;0BACF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,QAAQ,IAAI,CAAC,cAAc,GAAG,CACtF,CAAC;YACF,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YACvF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC9D,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,0CAA0C,CAAC,CAAC;YACxF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,sCAAsC,CAAC,CAAC;YACpF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YACvF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEpF,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtI,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC;aAClF,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEhE,6EAA6E;QAC7E,uEAAuE;QACvE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAC/B,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,EAC9D,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC,YAAY,CAC5E,CAAC;QACF,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC;aACjF,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC3D,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC3D,QAAQ,CAAC;YACR,WAAW,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC,YAAY,CAAC;SAC3F,CAAC,CAAC;QAEL,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC9I,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,GAAG;YACb,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,qCAAqC,CAAC;aACrF,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC/D,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC/D,QAAQ,CAAC;YACR,QAAQ,EAAE,CAAC,EAAE,mFAAmF;YAChG,QAAQ,EAAE,GAAG,EAAE,8FAA8F;YAC7G,OAAO,EAAE,CAAC;SACX,CAAC,CAAC;QAEL,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3J,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7G,qBAAqB;QACrB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;QAChH,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;YAChD,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;YAC7H,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnI,CAAC;aAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxD,CAAC;QAED,MAAM;QACN,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpF,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAC3C,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;YACzF,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC;YAChG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,CAAC;YAC1G,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACzI,IAAI,CAAC,UAAU;iBACZ,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC;iBAC7D,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACvC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;QAED,kBAAkB;QAClB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;QAC7G,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;YAC7C,IAAI,CAAC,qBAAqB,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YACvH,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACvJ,CAAC;aAAM,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACtC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC3D,CAAC;QAED,cAAc;QACd,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvF,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YACzC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC7F,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC;YAClG,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC;YAC5G,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpI,CAAC;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,gBAAgB;YACnB,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,kBAAkB,CAAC;gBACtF,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QACnF,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,KAAK,eAAe,CAAC,IAAI,EAAE,CAAC;YACvE,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,KAAK,eAAe,CAAC,cAAc,EAAE,CAAC;gBACjF,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;gBACtJ,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACnI,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,oBAAoB,EAAE,eAAe,CAAC,CAAC;gBAChJ,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7H,CAAC;YACD,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;YACpH,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,oBAAoB,CAAC,CAAC;QAChI,CAAC;aAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;;OAGG;IACO,KAAK,CAAC,qBAAqB,CAAC,UAAiC;QACrE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC7E,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,KAAK,OAAO;oBACV,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM;gBACR,KAAK,iBAAiB;oBACpB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,qCAAqC,EAAE,CAAwB,CAAC,CAAC;oBAChI,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,CAAwB,CAAC,CAAC;oBACxG,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,CAAwB,CAAC,CAAC;oBAC5G,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM;gBACR,KAAK,kBAAkB;oBACrB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAwB,CAAC,CAAC;oBAClH,IAAI,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,CAAwB,CAAC,CAAC;oBACjI,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM;gBACR,KAAK,MAAM;oBACT,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM;gBACR,KAAK,qBAAqB;oBACxB,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAwB,CAAC,CAAC;oBACzH,MAAM;gBACR,KAAK,YAAY;oBACf,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,CAAwB,CAAC,CAAC;oBACrG,MAAM;gBACR,KAAK,MAAM;oBACT,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,CAAwB,CAAC,CAAC;oBAClG,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,KAAK,eAAe,CAAC,WAAW,EAAE,CAAC;wBAC9E,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,CAAwB,CAAC,CAAC;oBACnH,CAAC;yBAAM,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,KAAK,eAAe,CAAC,cAAc,EAAE,CAAC;wBACxF,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAwB,CAAC,CAAC;oBACzH,CAAC;oBACD,MAAM;gBACR,KAAK,iBAAiB;oBACpB,4BAA4B;oBAC5B,MAAM;gBACR,KAAK,OAAO;oBACV,4BAA4B;oBAC5B,MAAM;gBACR,KAAK,YAAY;oBACf,4BAA4B;oBAC5B,MAAM;gBACR;oBACE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,0CAA0C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACvG,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;gBACzF,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAC/B,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,EAC9D,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC,YAAY,CAC5E,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,EAAE,IAAI,CAAC,kCAAkC,EAAE,CAAC,CAAC;gBAC9I,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,SAAS;QACf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,wBAAwB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QACpG,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;IAClI,CAAC;IAEO,KAAK,CAAC,SAAS,CAAC,KAA0B;QAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,oBAAoB,KAAK,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,+FAA+F;IACvF,qCAAqC;QAC3C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CACrB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,oDAAoD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CACtI,CAAC;QACF,OAAO,IAAI,CAAC,kCAAkC,EAAE,CAAC;IACnD,CAAC;IAEO,kCAAkC;QACxC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAClC,gCAAgC;YAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,QAAQ,CAAC;QAClF,CAAC;QAED,yBAAyB;QACzB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,aAAa,CAAC;QACvF,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtC,gFAAgF;YAChF,yFAAyF;YACzF,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;gBACrF,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,IAAI,CAAC;YAC9E,CAAC;YACD,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,aAAa,CAAC;QACvF,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kCAAkC,CAAC,IAAI,CAAC;IAC9E,CAAC;IAED,8FAA8F;IACtF,oCAAoC;QAC1C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CACrB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,mDAAmD,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC,YAAY,EAAE,CACrJ,CAAC;QACF,wEAAwE;QACxE,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC,YAAY,CAAC;IACrF,CAAC;IAED,8FAA8F;IACtF,KAAK,CAAC,oCAAoC,CAAC,KAA0B;QAC3E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,+CAA+C,KAAK,EAAE,CAAC,CAAC;QACpG,IAAI,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,iCAAiC,CAAC,YAAY,EAAE,CAAC;YAC1F,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,EAAE,gDAAgD,KAAK,EAAE,CAAC,CAAC;QACxH,CAAC;IACH,CAAC;IAED,oFAAoF;IAC5E,0BAA0B;QAChC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CACrB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,yCAAyC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB;oFACtB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,EAAE,CACzH,CAAC;QACF,6CAA6C;QAC7C,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC;IAC5F,CAAC;IAED,kGAAkG;IAC1F,wCAAwC;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,uDAAuD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;QAC7I,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC;IAChD,CAAC;IAED,kGAAkG;IAC1F,KAAK,CAAC,wCAAwC,CAAC,KAA0B;QAC/E,IAAI,iBAAiB,GAAG,KAAe,CAAC;QACxC,sDAAsD;QACtD,iBAAiB;YACf,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY;gBAC1C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY;gBAC1B,CAAC,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY;oBAC5C,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY;oBAC1B,CAAC,CAAC,iBAAiB,CAAC;QAE1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,mDAAmD,iBAAiB,KAAK,KAAe,GAAG,CAAC,CAAC;QACzI,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACxE,6EAA6E;QAC7E,IAAI,iBAAiB,KAAM,KAAgB,EAAE,CAAC;YAC5C,yGAAyG;YACzG,2GAA2G;YAC3G,8GAA8G;YAC9G,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,qCAAqC,EAAE,iBAAiB,CAAC,CAAC;YAC3H,CAAC,EAAE,EAAE,CAAC,CAAC;QACT,CAAC;IACH,CAAC;IAED,iFAAiF;IACzE,gBAAgB;QACtB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,+BAA+B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/G,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;IAC1C,CAAC;IAED,4DAA4D;IACpD,KAAK,CAAC,gBAAgB,CAAC,KAA0B;QACvD,IAAI,KAAK,GAAG,KAAe,CAAC;QAC5B,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,2BAA2B,KAAK,KAAK,KAAe,GAAG,CAAC,CAAC;QACrG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,IAAI,KAAK,KAAM,KAAgB,EAAE,CAAC;YAChC,yGAAyG;YACzG,2GAA2G;YAC3G,8GAA8G;YAC9G,UAAU,CAAC,GAAG,EAAE;gBACd,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YACvF,CAAC,EAAE,EAAE,CAAC,CAAC;QACT,CAAC;IACH,CAAC;IAED,8EAA8E;IACtE,aAAa;QACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,4BAA4B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7G,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;IAC3C,CAAC;IAED,wEAAwE;IAChE,cAAc;QACpB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,6BAA6B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC;QACvH,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC;IACpD,CAAC;IAED,wEAAwE;IAChE,OAAO;QACb,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,sBAAsB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QACjG,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;IAC9E,CAAC;IAED,mDAAmD;IAC3C,KAAK,CAAC,OAAO,CAAC,KAA0B;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,kBAAkB,KAAK,EAAE,CAAC,CAAC;QACvE,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,iFAAiF;IACzE,gBAAgB;QACtB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,+BAA+B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/G,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;IAC1C,CAAC;CACF"}
|
|
@@ -8,15 +8,16 @@
|
|
|
8
8
|
* An instance of this class is created for each accessory the platform registers.
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
import { CharacteristicValue } from 'homebridge';
|
|
12
|
-
import
|
|
11
|
+
import type { CharacteristicValue, Service } from 'homebridge';
|
|
12
|
+
import type MideaE1Device from '../devices/e1/MideaE1Device.js';
|
|
13
|
+
import type { E1Attributes } from '../devices/e1/MideaE1Device.js';
|
|
14
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
+
import type { DeviceConfig } from '../platformUtils.js';
|
|
13
16
|
import BaseAccessory from './BaseAccessory.js';
|
|
14
|
-
import { DeviceConfig } from '../platformUtils.js';
|
|
15
|
-
import MideaE1Device, { E1Attributes } from '../devices/e1/MideaE1Device.js';
|
|
16
17
|
export default class DishwasherAccessory extends BaseAccessory<MideaE1Device> {
|
|
17
18
|
protected readonly device: MideaE1Device;
|
|
18
19
|
protected readonly configDev: DeviceConfig;
|
|
19
|
-
|
|
20
|
+
protected service: Service;
|
|
20
21
|
/*********************************************************************
|
|
21
22
|
* Constructor registers all the service types with Homebridge, registers
|
|
22
23
|
* a callback function with the MideaDevice class, and requests device status.
|
|
@@ -14,9 +14,7 @@ export default class DishwasherAccessory extends BaseAccessory {
|
|
|
14
14
|
this.service = this.accessory.getService(this.platform.Service.Valve) || this.accessory.addService(this.platform.Service.Valve);
|
|
15
15
|
this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
|
|
16
16
|
this.service.getCharacteristic(this.platform.Characteristic.InUse).onGet(this.getInUse.bind(this));
|
|
17
|
-
this.service
|
|
18
|
-
.getCharacteristic(this.platform.Characteristic.ValveType)
|
|
19
|
-
.onGet(() => this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
17
|
+
this.service.getCharacteristic(this.platform.Characteristic.ValveType).onGet(() => this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
20
18
|
this.service
|
|
21
19
|
.getCharacteristic(this.platform.Characteristic.RemainingDuration)
|
|
22
20
|
.setProps({ minValue: 0, maxValue: 60 * 60 * 8, minStep: 1 })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DishwasherAccessory.js","sourceRoot":"","sources":["../../src/accessory/DishwasherAccessory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DishwasherAccessory.js","sourceRoot":"","sources":["../../src/accessory/DishwasherAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,16 @@
|
|
|
8
8
|
* An instance of this class is created for each accessory the platform registers.
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
import { CharacteristicValue } from 'homebridge';
|
|
12
|
-
import MideaE2Device
|
|
11
|
+
import type { CharacteristicValue, Service } from 'homebridge';
|
|
12
|
+
import type MideaE2Device from '../devices/e2/MideaE2Device.js';
|
|
13
|
+
import type { E2Attributes } from '../devices/e2/MideaE2Device.js';
|
|
14
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
+
import type { DeviceConfig } from '../platformUtils.js';
|
|
13
16
|
import BaseAccessory from './BaseAccessory.js';
|
|
14
|
-
import { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
-
import { DeviceConfig } from '../platformUtils.js';
|
|
16
17
|
export default class ElectricWaterHeaterAccessory extends BaseAccessory<MideaE2Device> {
|
|
17
18
|
protected readonly device: MideaE2Device;
|
|
18
19
|
protected readonly configDev: DeviceConfig;
|
|
19
|
-
|
|
20
|
+
protected service: Service;
|
|
20
21
|
private variableHeatingService?;
|
|
21
22
|
private wholeTankHeatingService?;
|
|
22
23
|
constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaE2Device, configDev: DeviceConfig);
|
|
@@ -9,22 +9,16 @@ export default class ElectricWaterHeaterAccessory extends BaseAccessory {
|
|
|
9
9
|
super(platform, accessory, device, configDev);
|
|
10
10
|
this.device = device;
|
|
11
11
|
this.configDev = configDev;
|
|
12
|
-
this.service =
|
|
13
|
-
this.accessory.getService(this.platform.Service.HeaterCooler) || this.accessory.addService(this.platform.Service.HeaterCooler);
|
|
12
|
+
this.service = this.accessory.getService(this.platform.Service.HeaterCooler) || this.accessory.addService(this.platform.Service.HeaterCooler);
|
|
14
13
|
this.service.setCharacteristic(this.platform.Characteristic.Name, this.device.name);
|
|
15
14
|
this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
|
|
16
|
-
this.service
|
|
17
|
-
.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState)
|
|
18
|
-
.onGet(this.getCurrentHeaterCoolerState.bind(this));
|
|
15
|
+
this.service.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState).onGet(this.getCurrentHeaterCoolerState.bind(this));
|
|
19
16
|
this.service
|
|
20
17
|
.getCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState)
|
|
21
18
|
.onGet(this.getTargetHeaterCoolerState.bind(this))
|
|
22
19
|
.onSet(this.setTargetHeaterCoolerState.bind(this))
|
|
23
20
|
.setProps({
|
|
24
|
-
validValues: [
|
|
25
|
-
this.platform.Characteristic.TargetHeatingCoolingState.OFF,
|
|
26
|
-
this.platform.Characteristic.TargetHeaterCoolerState.HEAT,
|
|
27
|
-
],
|
|
21
|
+
validValues: [this.platform.Characteristic.TargetHeatingCoolingState.OFF, this.platform.Characteristic.TargetHeaterCoolerState.HEAT],
|
|
28
22
|
});
|
|
29
23
|
this.service.getCharacteristic(this.platform.Characteristic.CurrentTemperature).onGet(this.getCurrentTemperature.bind(this));
|
|
30
24
|
this.service
|
|
@@ -154,8 +148,8 @@ export default class ElectricWaterHeaterAccessory extends BaseAccessory {
|
|
|
154
148
|
return Math.max(this.configDev.E2_options.minTemp, Math.min(this.configDev.E2_options.maxTemp, this.device.attributes.TARGET_TEMPERATURE));
|
|
155
149
|
}
|
|
156
150
|
async setTargetTemperature(value) {
|
|
157
|
-
|
|
158
|
-
await this.device.set_attribute({ TARGET_TEMPERATURE:
|
|
151
|
+
const limitedValue = Math.max(this.configDev.E2_options.minTemp, Math.min(this.configDev.E2_options.maxTemp, value));
|
|
152
|
+
await this.device.set_attribute({ TARGET_TEMPERATURE: limitedValue });
|
|
159
153
|
}
|
|
160
154
|
getVariableHeating() {
|
|
161
155
|
return this.device.attributes.VARIABLE_HEATING;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElectricWaterHeaterAccessory.js","sourceRoot":"","sources":["../../src/accessory/ElectricWaterHeaterAccessory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ElectricWaterHeaterAccessory.js","sourceRoot":"","sources":["../../src/accessory/ElectricWaterHeaterAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,16 @@
|
|
|
8
8
|
* An instance of this class is created for each accessory the platform registers.
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
import { CharacteristicValue } from 'homebridge';
|
|
12
|
-
import
|
|
11
|
+
import type { CharacteristicValue, Service } from 'homebridge';
|
|
12
|
+
import type MideaFADevice from '../devices/fa/MideaFADevice.js';
|
|
13
|
+
import type { FAAttributes } from '../devices/fa/MideaFADevice.js';
|
|
14
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
+
import type { DeviceConfig } from '../platformUtils.js';
|
|
13
16
|
import BaseAccessory from './BaseAccessory.js';
|
|
14
|
-
import { DeviceConfig } from '../platformUtils.js';
|
|
15
|
-
import MideaFADevice, { FAAttributes } from '../devices/fa/MideaFADevice.js';
|
|
16
17
|
export default class FanAccessory extends BaseAccessory<MideaFADevice> {
|
|
17
18
|
protected readonly device: MideaFADevice;
|
|
18
19
|
protected readonly configDev: DeviceConfig;
|
|
19
|
-
|
|
20
|
+
protected service: Service;
|
|
20
21
|
/*********************************************************************
|
|
21
22
|
* Constructor registers all the service types with Homebridge, registers
|
|
22
23
|
* a callback function with the MideaDevice class, and requests device status.
|
|
@@ -18,10 +18,7 @@ export default class FanAccessory extends BaseAccessory {
|
|
|
18
18
|
// .onGet(this.getTargetFanState.bind(this))
|
|
19
19
|
// .onSet(this.setTargetFanState.bind(this));
|
|
20
20
|
this.service.getCharacteristic(this.platform.Characteristic.CurrentFanState).onGet(this.getCurrentFanState.bind(this));
|
|
21
|
-
this.service
|
|
22
|
-
.getCharacteristic(this.platform.Characteristic.RotationSpeed)
|
|
23
|
-
.onGet(this.getRotationSpeed.bind(this))
|
|
24
|
-
.onSet(this.setRotationSpeed.bind(this));
|
|
21
|
+
this.service.getCharacteristic(this.platform.Characteristic.RotationSpeed).onGet(this.getRotationSpeed.bind(this)).onSet(this.setRotationSpeed.bind(this));
|
|
25
22
|
// this.service
|
|
26
23
|
// .getCharacteristic(this.platform.Characteristic.RotationDirection)
|
|
27
24
|
// .onGet(this.getRotationDirection.bind(this))
|
|
@@ -99,9 +96,7 @@ export default class FanAccessory extends BaseAccessory {
|
|
|
99
96
|
throw new Error('Method not implemented.');
|
|
100
97
|
}
|
|
101
98
|
getSwingMode() {
|
|
102
|
-
return this.device.attributes.OSCILLATE
|
|
103
|
-
? this.platform.Characteristic.SwingMode.SWING_ENABLED
|
|
104
|
-
: this.platform.Characteristic.SwingMode.SWING_DISABLED;
|
|
99
|
+
return this.device.attributes.OSCILLATE ? this.platform.Characteristic.SwingMode.SWING_ENABLED : this.platform.Characteristic.SwingMode.SWING_DISABLED;
|
|
105
100
|
}
|
|
106
101
|
async setSwingMode(value) {
|
|
107
102
|
await this.device.set_attribute({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FanAccessory.js","sourceRoot":"","sources":["../../src/accessory/FanAccessory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FanAccessory.js","sourceRoot":"","sources":["../../src/accessory/FanAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,16 @@
|
|
|
8
8
|
* An instance of this class is created for each accessory the platform registers.
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
import { CharacteristicValue } from 'homebridge';
|
|
12
|
-
import
|
|
11
|
+
import type { CharacteristicValue, Service } from 'homebridge';
|
|
12
|
+
import type MideaDBDevice from '../devices/db/MideaDBDevice.js';
|
|
13
|
+
import type { DBAttributes } from '../devices/db/MideaDBDevice.js';
|
|
14
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
+
import type { DeviceConfig } from '../platformUtils.js';
|
|
13
16
|
import BaseAccessory from './BaseAccessory.js';
|
|
14
|
-
import { DeviceConfig } from '../platformUtils.js';
|
|
15
|
-
import MideaDBDevice, { DBAttributes } from '../devices/db/MideaDBDevice.js';
|
|
16
17
|
export default class FanAccessory extends BaseAccessory<MideaDBDevice> {
|
|
17
18
|
protected readonly device: MideaDBDevice;
|
|
18
19
|
protected readonly configDev: DeviceConfig;
|
|
19
|
-
|
|
20
|
+
protected service: Service;
|
|
20
21
|
/*********************************************************************
|
|
21
22
|
* Constructor registers all the service types with Homebridge, registers
|
|
22
23
|
* a callback function with the MideaDevice class, and requests device status.
|
|
@@ -14,9 +14,7 @@ export default class FanAccessory extends BaseAccessory {
|
|
|
14
14
|
this.service = this.accessory.getService(this.platform.Service.Valve) || this.accessory.addService(this.platform.Service.Valve);
|
|
15
15
|
this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
|
|
16
16
|
this.service.getCharacteristic(this.platform.Characteristic.InUse).onGet(this.getInUse.bind(this));
|
|
17
|
-
this.service
|
|
18
|
-
.getCharacteristic(this.platform.Characteristic.ValveType)
|
|
19
|
-
.onGet(() => this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
17
|
+
this.service.getCharacteristic(this.platform.Characteristic.ValveType).onGet(() => this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
20
18
|
this.service
|
|
21
19
|
.getCharacteristic(this.platform.Characteristic.RemainingDuration)
|
|
22
20
|
.setProps({ minValue: 0, maxValue: 60 * 60 * 8, minStep: 1 })
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontLoadWasherAccessory.js","sourceRoot":"","sources":["../../src/accessory/FrontLoadWasherAccessory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FrontLoadWasherAccessory.js","sourceRoot":"","sources":["../../src/accessory/FrontLoadWasherAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,15 +8,16 @@
|
|
|
8
8
|
* An instance of this class is created for each accessory the platform registers.
|
|
9
9
|
*
|
|
10
10
|
*/
|
|
11
|
-
import { CharacteristicValue } from 'homebridge';
|
|
12
|
-
import MideaE3Device
|
|
11
|
+
import type { CharacteristicValue, Service } from 'homebridge';
|
|
12
|
+
import type MideaE3Device from '../devices/e3/MideaE3Device.js';
|
|
13
|
+
import type { E3Attributes } from '../devices/e3/MideaE3Device.js';
|
|
14
|
+
import type { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
+
import type { DeviceConfig } from '../platformUtils.js';
|
|
13
16
|
import BaseAccessory from './BaseAccessory.js';
|
|
14
|
-
import { MideaAccessory, MideaPlatform } from '../platform.js';
|
|
15
|
-
import { DeviceConfig } from '../platformUtils.js';
|
|
16
17
|
export default class GasWaterHeaterAccessory extends BaseAccessory<MideaE3Device> {
|
|
17
18
|
protected readonly device: MideaE3Device;
|
|
18
19
|
protected readonly configDev: DeviceConfig;
|
|
19
|
-
|
|
20
|
+
protected service: Service;
|
|
20
21
|
private burningStateService?;
|
|
21
22
|
private protectionService?;
|
|
22
23
|
private zeroColdWaterService?;
|
|
@@ -14,22 +14,16 @@ export default class GasWaterHeaterAccessory extends BaseAccessory {
|
|
|
14
14
|
super(platform, accessory, device, configDev);
|
|
15
15
|
this.device = device;
|
|
16
16
|
this.configDev = configDev;
|
|
17
|
-
this.service =
|
|
18
|
-
this.accessory.getService(this.platform.Service.HeaterCooler) || this.accessory.addService(this.platform.Service.HeaterCooler);
|
|
17
|
+
this.service = this.accessory.getService(this.platform.Service.HeaterCooler) || this.accessory.addService(this.platform.Service.HeaterCooler);
|
|
19
18
|
this.service.setCharacteristic(this.platform.Characteristic.Name, this.device.name);
|
|
20
19
|
this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
|
|
21
|
-
this.service
|
|
22
|
-
.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState)
|
|
23
|
-
.onGet(this.getCurrentHeaterCoolerState.bind(this));
|
|
20
|
+
this.service.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState).onGet(this.getCurrentHeaterCoolerState.bind(this));
|
|
24
21
|
this.service
|
|
25
22
|
.getCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState)
|
|
26
23
|
.onGet(this.getTargetHeaterCoolerState.bind(this))
|
|
27
24
|
.onSet(this.setTargetHeaterCoolerState.bind(this))
|
|
28
25
|
.setProps({
|
|
29
|
-
validValues: [
|
|
30
|
-
this.platform.Characteristic.TargetHeatingCoolingState.OFF,
|
|
31
|
-
this.platform.Characteristic.TargetHeaterCoolerState.HEAT,
|
|
32
|
-
],
|
|
26
|
+
validValues: [this.platform.Characteristic.TargetHeatingCoolingState.OFF, this.platform.Characteristic.TargetHeaterCoolerState.HEAT],
|
|
33
27
|
});
|
|
34
28
|
this.service.getCharacteristic(this.platform.Characteristic.CurrentTemperature).onGet(this.getCurrentTemperature.bind(this));
|
|
35
29
|
this.service
|
|
@@ -97,10 +91,7 @@ export default class GasWaterHeaterAccessory extends BaseAccessory {
|
|
|
97
91
|
this.smartVolumeService ??= this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Smart Volume`, 'SmartVolume');
|
|
98
92
|
this.smartVolumeService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Smart Volume`);
|
|
99
93
|
this.smartVolumeService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Smart Volume`);
|
|
100
|
-
this.smartVolumeService
|
|
101
|
-
.getCharacteristic(this.platform.Characteristic.On)
|
|
102
|
-
.onGet(this.getSmartVolume.bind(this))
|
|
103
|
-
.onSet(this.setSmartVolume.bind(this));
|
|
94
|
+
this.smartVolumeService.getCharacteristic(this.platform.Characteristic.On).onGet(this.getSmartVolume.bind(this)).onSet(this.setSmartVolume.bind(this));
|
|
104
95
|
}
|
|
105
96
|
else if (this.smartVolumeService) {
|
|
106
97
|
this.accessory.removeService(this.smartVolumeService);
|
|
@@ -187,8 +178,8 @@ export default class GasWaterHeaterAccessory extends BaseAccessory {
|
|
|
187
178
|
return Math.max(this.configDev.E3_options.minTemp, Math.min(this.configDev.E3_options.maxTemp, this.device.attributes.TARGET_TEMPERATURE));
|
|
188
179
|
}
|
|
189
180
|
async setTargetTemperature(value) {
|
|
190
|
-
|
|
191
|
-
await this.device.set_attribute({ TARGET_TEMPERATURE:
|
|
181
|
+
const limitedValue = Math.max(this.configDev.E3_options.minTemp, Math.min(this.configDev.E3_options.maxTemp, value));
|
|
182
|
+
await this.device.set_attribute({ TARGET_TEMPERATURE: limitedValue });
|
|
192
183
|
}
|
|
193
184
|
getBurningState() {
|
|
194
185
|
return this.device.attributes.BURNING_STATE;
|