homebridge-blueair-purifier 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +3 -0
- package/.gitattributes +3 -0
- package/.prettierrc +19 -0
- package/config.schema.json +41 -27
- package/dist/accessory/AirPurifierAccessory.d.ts +24 -5
- package/dist/accessory/AirPurifierAccessory.d.ts.map +1 -1
- package/dist/accessory/AirPurifierAccessory.js +236 -54
- package/dist/accessory/AirPurifierAccessory.js.map +1 -1
- package/dist/api/BlueAirAwsApi.d.ts +5 -2
- package/dist/api/BlueAirAwsApi.d.ts.map +1 -1
- package/dist/api/BlueAirAwsApi.js +54 -34
- package/dist/api/BlueAirAwsApi.js.map +1 -1
- package/dist/api/Consts.d.ts.map +1 -1
- package/dist/api/Consts.js +9 -9
- package/dist/api/Consts.js.map +1 -1
- package/dist/api/GigyaApi.d.ts +1 -1
- package/dist/api/GigyaApi.d.ts.map +1 -1
- package/dist/api/GigyaApi.js +24 -22
- package/dist/api/GigyaApi.js.map +1 -1
- package/dist/device/BlueAirDevice.d.ts +17 -5
- package/dist/device/BlueAirDevice.d.ts.map +1 -1
- package/dist/device/BlueAirDevice.js +112 -14
- package/dist/device/BlueAirDevice.js.map +1 -1
- package/dist/platform.d.ts +5 -1
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +54 -18
- package/dist/platform.js.map +1 -1
- package/dist/platformUtils.d.ts +5 -3
- package/dist/platformUtils.d.ts.map +1 -1
- package/dist/platformUtils.js +2 -0
- package/dist/platformUtils.js.map +1 -1
- package/homebridge-ui/public/index.html +5 -4
- package/homebridge-ui/server.js +3 -1
- package/package.json +30 -7
package/.eslintignore
ADDED
package/.gitattributes
ADDED
package/.prettierrc
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"useTabs": false,
|
|
3
|
+
"printWidth": 140,
|
|
4
|
+
"tabWidth": 2,
|
|
5
|
+
"semi": true,
|
|
6
|
+
"singleQuote": true,
|
|
7
|
+
"trailingComma": "all",
|
|
8
|
+
"bracketSpacing": true,
|
|
9
|
+
"bracketSameLine": false,
|
|
10
|
+
"endOfLine": "lf",
|
|
11
|
+
"overrides": [
|
|
12
|
+
{
|
|
13
|
+
"files": "*.{json,babelrc,eslintrc,remarkrc,prettierrc}",
|
|
14
|
+
"options": {
|
|
15
|
+
"useTabs": false
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
}
|
package/config.schema.json
CHANGED
|
@@ -1,47 +1,69 @@
|
|
|
1
1
|
{
|
|
2
2
|
"pluginAlias": "blueair-purifier",
|
|
3
3
|
"pluginType": "platform",
|
|
4
|
+
"customUi": true,
|
|
4
5
|
"singular": true,
|
|
5
6
|
"schema": {
|
|
6
7
|
"type": "object",
|
|
7
8
|
"properties": {
|
|
8
9
|
"username": {
|
|
9
10
|
"title": "Username",
|
|
10
|
-
"description": "Username for BlueAir account",
|
|
11
|
-
"type": "string"
|
|
12
|
-
"required": true
|
|
11
|
+
"description": "Username for BlueAir account. This should be filled in automatically in the discovery process.",
|
|
12
|
+
"type": "string"
|
|
13
13
|
},
|
|
14
14
|
"password": {
|
|
15
15
|
"title": "Password",
|
|
16
|
-
"description": "Password for BlueAir account",
|
|
16
|
+
"description": "Password for BlueAir account. This should be filled in automatically in the discovery process.",
|
|
17
|
+
"type": "string"
|
|
18
|
+
},
|
|
19
|
+
"region": {
|
|
20
|
+
"title": "Region",
|
|
21
|
+
"description": "Region for BlueAir account. This should be filled in automatically in the discovery process.",
|
|
17
22
|
"type": "string",
|
|
23
|
+
"enum": ["Default (all other regions)", "Australia", "China", "Russia", "USA"],
|
|
24
|
+
"default": "Default (all other regions)",
|
|
18
25
|
"required": true
|
|
19
26
|
},
|
|
27
|
+
"accountUuid": {
|
|
28
|
+
"title": "Account UUID",
|
|
29
|
+
"description": "Account UUID for BlueAir account. This should be filled in automatically in the discovery process.",
|
|
30
|
+
"type": "string"
|
|
31
|
+
},
|
|
20
32
|
"verboseLogging": {
|
|
21
33
|
"title": "Verbose Logging",
|
|
22
34
|
"description": "Enable to receive detailed log messages. Useful for troubleshooting.",
|
|
23
35
|
"type": "boolean"
|
|
24
36
|
},
|
|
37
|
+
"uiDebug": {
|
|
38
|
+
"title": "UI Debug",
|
|
39
|
+
"description": "Enable to show debug information in the Homebridge UI.",
|
|
40
|
+
"type": "boolean"
|
|
41
|
+
},
|
|
42
|
+
"pollingInterval": {
|
|
43
|
+
"title": "Polling Interval",
|
|
44
|
+
"description": "Interval in miliseconds to poll the BlueAir API for updates. It's recommended to keep this at least 5 seconds (5000 miliseconds).",
|
|
45
|
+
"type": "number"
|
|
46
|
+
},
|
|
25
47
|
"devices": {
|
|
26
48
|
"title": "Devices",
|
|
27
49
|
"type": "array",
|
|
28
50
|
"items": {
|
|
29
51
|
"type": "object",
|
|
30
52
|
"properties": {
|
|
31
|
-
"
|
|
32
|
-
"title": "
|
|
53
|
+
"id": {
|
|
54
|
+
"title": "ID",
|
|
33
55
|
"type": "string",
|
|
34
56
|
"required": true
|
|
35
57
|
},
|
|
36
|
-
"
|
|
37
|
-
"title": "
|
|
58
|
+
"name": {
|
|
59
|
+
"title": "Name",
|
|
38
60
|
"type": "string",
|
|
39
61
|
"required": true
|
|
40
62
|
},
|
|
41
|
-
"
|
|
42
|
-
"title": "
|
|
43
|
-
"description": "
|
|
44
|
-
"type": "
|
|
63
|
+
"filterChangeLevel": {
|
|
64
|
+
"title": "Filter Change Level",
|
|
65
|
+
"description": "Percentage of filter life remaining to trigger a filter change alert.",
|
|
66
|
+
"type": "number"
|
|
45
67
|
},
|
|
46
68
|
"led": {
|
|
47
69
|
"title": "LED",
|
|
@@ -53,21 +75,11 @@
|
|
|
53
75
|
"description": "Toggles if the air quality sensor service is created with the accessory.",
|
|
54
76
|
"type": "boolean"
|
|
55
77
|
},
|
|
56
|
-
"co2Sensor": {
|
|
57
|
-
"title": "CO2 Sensor",
|
|
58
|
-
"description": "Toggles if the CO2 sensor service is created with the accessory.",
|
|
59
|
-
"type": "boolean"
|
|
60
|
-
},
|
|
61
78
|
"temperatureSensor": {
|
|
62
79
|
"title": "Temperature Sensor",
|
|
63
80
|
"description": "Toggles if the temperature sensor service is created with the accessory.",
|
|
64
81
|
"type": "boolean"
|
|
65
82
|
},
|
|
66
|
-
"humiditySensor": {
|
|
67
|
-
"title": "Humidity Sensor",
|
|
68
|
-
"description": "Toggles if the humidity sensor service is created with the accessory.",
|
|
69
|
-
"type": "boolean"
|
|
70
|
-
},
|
|
71
83
|
"germShield": {
|
|
72
84
|
"title": "Germ Shield",
|
|
73
85
|
"description": "Toggles if the germ shield switch service is created with the accessory.",
|
|
@@ -95,7 +107,11 @@
|
|
|
95
107
|
"items": [
|
|
96
108
|
"username",
|
|
97
109
|
"password",
|
|
98
|
-
"
|
|
110
|
+
"region",
|
|
111
|
+
"accountUuid",
|
|
112
|
+
"verboseLogging",
|
|
113
|
+
"uiDebug",
|
|
114
|
+
"pollingInterval"
|
|
99
115
|
]
|
|
100
116
|
},
|
|
101
117
|
{
|
|
@@ -103,14 +119,12 @@
|
|
|
103
119
|
"type": "tabarray",
|
|
104
120
|
"title": "{{ value.name || 'new device' }}",
|
|
105
121
|
"items": [
|
|
106
|
-
"devices[].name",
|
|
107
122
|
"devices[].id",
|
|
108
|
-
"devices[].
|
|
123
|
+
"devices[].name",
|
|
124
|
+
"devices[].filterChangeLevel",
|
|
109
125
|
"devices[].led",
|
|
110
126
|
"devices[].airQualitySensor",
|
|
111
|
-
"devices[].co2Sensor",
|
|
112
127
|
"devices[].temperatureSensor",
|
|
113
|
-
"devices[].humiditySensor",
|
|
114
128
|
"devices[].germShield",
|
|
115
129
|
"devices[].nightMode"
|
|
116
130
|
]
|
|
@@ -2,25 +2,44 @@ import { CharacteristicValue, PlatformAccessory } from 'homebridge';
|
|
|
2
2
|
import { BlueAirPlatform } from '../platform';
|
|
3
3
|
import { BlueAirDevice } from '../device/BlueAirDevice';
|
|
4
4
|
import { DeviceConfig } from '../platformUtils';
|
|
5
|
+
import { FullBlueAirDeviceState } from '../api/BlueAirAwsApi';
|
|
5
6
|
export declare class AirPurifierAccessory {
|
|
6
7
|
protected readonly platform: BlueAirPlatform;
|
|
7
8
|
protected readonly accessory: PlatformAccessory;
|
|
8
9
|
protected readonly device: BlueAirDevice;
|
|
9
10
|
protected readonly configDev: DeviceConfig;
|
|
10
11
|
private service;
|
|
12
|
+
private filterMaintenanceService?;
|
|
13
|
+
private ledService?;
|
|
14
|
+
private airQualityService?;
|
|
15
|
+
private temperatureService?;
|
|
16
|
+
private germShieldService?;
|
|
17
|
+
private nightModeService?;
|
|
11
18
|
constructor(platform: BlueAirPlatform, accessory: PlatformAccessory, device: BlueAirDevice, configDev: DeviceConfig);
|
|
19
|
+
updateCharacteristics(changedStates: Partial<FullBlueAirDeviceState>): void;
|
|
12
20
|
getActive(): CharacteristicValue;
|
|
13
|
-
setActive(value: CharacteristicValue): void
|
|
21
|
+
setActive(value: CharacteristicValue): Promise<void>;
|
|
14
22
|
getCurrentAirPurifierState(): CharacteristicValue;
|
|
15
23
|
getTargetAirPurifierState(): CharacteristicValue;
|
|
16
|
-
setTargetAirPurifierState(value: CharacteristicValue): void
|
|
24
|
+
setTargetAirPurifierState(value: CharacteristicValue): Promise<void>;
|
|
17
25
|
getLockPhysicalControls(): CharacteristicValue;
|
|
18
|
-
setLockPhysicalControls(value: CharacteristicValue): void
|
|
26
|
+
setLockPhysicalControls(value: CharacteristicValue): Promise<void>;
|
|
19
27
|
getRotationSpeed(): CharacteristicValue;
|
|
20
|
-
setRotationSpeed(value: CharacteristicValue): void
|
|
28
|
+
setRotationSpeed(value: CharacteristicValue): Promise<void>;
|
|
21
29
|
getFilterChangeIndication(): CharacteristicValue;
|
|
22
30
|
getFilterLifeLevel(): CharacteristicValue;
|
|
23
31
|
getCurrentTemperature(): CharacteristicValue;
|
|
24
|
-
|
|
32
|
+
getLedOn(): CharacteristicValue;
|
|
33
|
+
setLedOn(value: CharacteristicValue): Promise<void>;
|
|
34
|
+
getLedBrightness(): CharacteristicValue;
|
|
35
|
+
setLedBrightness(value: CharacteristicValue): Promise<void>;
|
|
36
|
+
getPM2_5Density(): CharacteristicValue;
|
|
37
|
+
getPM10Density(): CharacteristicValue;
|
|
38
|
+
getVOCDensity(): CharacteristicValue;
|
|
39
|
+
getAirQuality(): CharacteristicValue;
|
|
40
|
+
getGermShield(): CharacteristicValue;
|
|
41
|
+
setGermShield(value: CharacteristicValue): Promise<void>;
|
|
42
|
+
getNightMode(): CharacteristicValue;
|
|
43
|
+
setNightMode(value: CharacteristicValue): Promise<void>;
|
|
25
44
|
}
|
|
26
45
|
//# sourceMappingURL=AirPurifierAccessory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AirPurifierAccessory.d.ts","sourceRoot":"","sources":["../../src/accessory/AirPurifierAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"AirPurifierAccessory.d.ts","sourceRoot":"","sources":["../../src/accessory/AirPurifierAccessory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAW,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,qBAAa,oBAAoB;IAU7B,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAC5C,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB;IAC/C,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa;IACxC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY;IAZ5C,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,wBAAwB,CAAC,CAAU;IAC3C,OAAO,CAAC,UAAU,CAAC,CAAU;IAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAU;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAU;IACrC,OAAO,CAAC,iBAAiB,CAAC,CAAU;IACpC,OAAO,CAAC,gBAAgB,CAAC,CAAU;gBAGd,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,aAAa,EACrB,SAAS,EAAE,YAAY;IA+G5C,qBAAqB,CAAC,aAAa,EAAE,OAAO,CAAC,sBAAsB,CAAC;IAiEpE,SAAS,IAAI,mBAAmB;IAI1B,SAAS,CAAC,KAAK,EAAE,mBAAmB;IAK1C,0BAA0B,IAAI,mBAAmB;IAUjD,yBAAyB,IAAI,mBAAmB;IAM1C,yBAAyB,CAAC,KAAK,EAAE,mBAAmB;IAK1D,uBAAuB,IAAI,mBAAmB;IAMxC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;IAKxD,gBAAgB,IAAI,mBAAmB;IAIjC,gBAAgB,CAAC,KAAK,EAAE,mBAAmB;IAKjD,yBAAyB,IAAI,mBAAmB;IAMhD,kBAAkB,IAAI,mBAAmB;IAIzC,qBAAqB,IAAI,mBAAmB;IAI5C,QAAQ,IAAI,mBAAmB;IAIzB,QAAQ,CAAC,KAAK,EAAE,mBAAmB;IAKzC,gBAAgB,IAAI,mBAAmB;IAIjC,gBAAgB,CAAC,KAAK,EAAE,mBAAmB;IAKjD,eAAe,IAAI,mBAAmB;IAItC,cAAc,IAAI,mBAAmB;IAIrC,aAAa,IAAI,mBAAmB;IAIpC,aAAa,IAAI,mBAAmB;IAkBpC,aAAa,IAAI,mBAAmB;IAI9B,aAAa,CAAC,KAAK,EAAE,mBAAmB;IAK9C,YAAY,IAAI,mBAAmB;IAI7B,YAAY,CAAC,KAAK,EAAE,mBAAmB;CAI9C"}
|
|
@@ -3,89 +3,271 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AirPurifierAccessory = void 0;
|
|
4
4
|
class AirPurifierAccessory {
|
|
5
5
|
constructor(platform, accessory, device, configDev) {
|
|
6
|
+
var _a, _b, _c, _d, _e;
|
|
6
7
|
this.platform = platform;
|
|
7
8
|
this.accessory = accessory;
|
|
8
9
|
this.device = device;
|
|
9
10
|
this.configDev = configDev;
|
|
10
11
|
this.accessory
|
|
11
12
|
.getService(this.platform.Service.AccessoryInformation)
|
|
12
|
-
.setCharacteristic(this.platform.Characteristic.Manufacturer, 'BlueAir')
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
this.accessory.addService(this.platform.Service.AirPurifier);
|
|
13
|
+
.setCharacteristic(this.platform.Characteristic.Manufacturer, 'BlueAir');
|
|
14
|
+
this.service =
|
|
15
|
+
this.accessory.getService(this.platform.Service.AirPurifier) || this.accessory.addService(this.platform.Service.AirPurifier);
|
|
16
16
|
this.service.setCharacteristic(this.platform.Characteristic.Name, this.configDev.name);
|
|
17
|
-
this.service.getCharacteristic(this.platform.Characteristic.Active)
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
.
|
|
25
|
-
|
|
26
|
-
.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
.
|
|
30
|
-
.
|
|
31
|
-
this.
|
|
32
|
-
.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
.
|
|
37
|
-
this.
|
|
38
|
-
|
|
17
|
+
this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
|
|
18
|
+
this.service.getCharacteristic(this.platform.Characteristic.CurrentAirPurifierState).onGet(this.getCurrentAirPurifierState.bind(this));
|
|
19
|
+
this.service
|
|
20
|
+
.getCharacteristic(this.platform.Characteristic.TargetAirPurifierState)
|
|
21
|
+
.onGet(this.getTargetAirPurifierState.bind(this))
|
|
22
|
+
.onSet(this.setTargetAirPurifierState.bind(this));
|
|
23
|
+
this.service
|
|
24
|
+
.getCharacteristic(this.platform.Characteristic.LockPhysicalControls)
|
|
25
|
+
.onGet(this.getLockPhysicalControls.bind(this))
|
|
26
|
+
.onSet(this.setLockPhysicalControls.bind(this));
|
|
27
|
+
this.service
|
|
28
|
+
.getCharacteristic(this.platform.Characteristic.RotationSpeed)
|
|
29
|
+
.onGet(this.getRotationSpeed.bind(this))
|
|
30
|
+
.onSet(this.setRotationSpeed.bind(this));
|
|
31
|
+
this.filterMaintenanceService =
|
|
32
|
+
this.accessory.getService(this.platform.Service.FilterMaintenance) ||
|
|
33
|
+
this.accessory.addService(this.platform.Service.FilterMaintenance);
|
|
34
|
+
this.filterMaintenanceService
|
|
35
|
+
.getCharacteristic(this.platform.Characteristic.FilterChangeIndication)
|
|
36
|
+
.onGet(this.getFilterChangeIndication.bind(this));
|
|
37
|
+
this.filterMaintenanceService.getCharacteristic(this.platform.Characteristic.FilterLifeLevel).onGet(this.getFilterLifeLevel.bind(this));
|
|
38
|
+
this.ledService = this.accessory.getServiceById(this.platform.Service.Lightbulb, 'Led');
|
|
39
|
+
if (this.configDev.led) {
|
|
40
|
+
(_a = this.ledService) !== null && _a !== void 0 ? _a : (this.ledService = this.accessory.addService(this.platform.Service.Lightbulb, `${this.device.name} Led`, 'Led'));
|
|
41
|
+
this.ledService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Led`);
|
|
42
|
+
this.ledService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Led`);
|
|
43
|
+
this.ledService.getCharacteristic(this.platform.Characteristic.On).onGet(this.getLedOn.bind(this)).onSet(this.setLedOn.bind(this));
|
|
44
|
+
this.ledService
|
|
45
|
+
.getCharacteristic(this.platform.Characteristic.Brightness)
|
|
46
|
+
.onGet(this.getLedBrightness.bind(this))
|
|
47
|
+
.onSet(this.setLedBrightness.bind(this));
|
|
48
|
+
}
|
|
49
|
+
else if (this.ledService) {
|
|
50
|
+
this.accessory.removeService(this.ledService);
|
|
51
|
+
}
|
|
52
|
+
this.airQualityService = this.accessory.getServiceById(this.platform.Service.AirQualitySensor, 'AirQuality');
|
|
53
|
+
if (this.configDev.airQualitySensor) {
|
|
54
|
+
(_b = this.airQualityService) !== null && _b !== void 0 ? _b : (this.airQualityService = this.accessory.addService(this.platform.Service.AirQualitySensor, `${this.device.name} Air Quality`, 'AirQuality'));
|
|
55
|
+
this.airQualityService.getCharacteristic(this.platform.Characteristic.AirQuality).onGet(this.getAirQuality.bind(this));
|
|
56
|
+
this.airQualityService.getCharacteristic(this.platform.Characteristic.PM2_5Density).onGet(this.getPM2_5Density.bind(this));
|
|
57
|
+
this.airQualityService.getCharacteristic(this.platform.Characteristic.PM10Density).onGet(this.getPM10Density.bind(this));
|
|
58
|
+
this.airQualityService.getCharacteristic(this.platform.Characteristic.VOCDensity).onGet(this.getVOCDensity.bind(this));
|
|
59
|
+
}
|
|
60
|
+
else if (this.airQualityService) {
|
|
61
|
+
this.accessory.removeService(this.airQualityService);
|
|
62
|
+
}
|
|
63
|
+
this.temperatureService = this.accessory.getServiceById(this.platform.Service.TemperatureSensor, 'Temperature');
|
|
64
|
+
if (this.configDev.temperatureSensor) {
|
|
65
|
+
(_c = this.temperatureService) !== null && _c !== void 0 ? _c : (this.temperatureService = this.accessory.addService(this.platform.Service.TemperatureSensor, `${this.device.name} Temperature`, 'Temperature'));
|
|
66
|
+
this.temperatureService
|
|
67
|
+
.getCharacteristic(this.platform.Characteristic.CurrentTemperature)
|
|
68
|
+
.onGet(this.getCurrentTemperature.bind(this));
|
|
69
|
+
}
|
|
70
|
+
else if (this.temperatureService) {
|
|
71
|
+
this.accessory.removeService(this.temperatureService);
|
|
72
|
+
}
|
|
73
|
+
this.germShieldService = this.accessory.getServiceById(this.platform.Service.Switch, 'GermShield');
|
|
74
|
+
if (this.configDev.germShield) {
|
|
75
|
+
(_d = this.germShieldService) !== null && _d !== void 0 ? _d : (this.germShieldService = this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Germ Shield`, 'GermShield'));
|
|
76
|
+
this.germShieldService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Germ Shield`);
|
|
77
|
+
this.germShieldService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Germ Shield`);
|
|
78
|
+
this.germShieldService
|
|
79
|
+
.getCharacteristic(this.platform.Characteristic.On)
|
|
80
|
+
.onGet(this.getGermShield.bind(this))
|
|
81
|
+
.onSet(this.setGermShield.bind(this));
|
|
82
|
+
}
|
|
83
|
+
else if (this.germShieldService) {
|
|
84
|
+
this.accessory.removeService(this.germShieldService);
|
|
85
|
+
}
|
|
86
|
+
this.nightModeService = this.accessory.getServiceById(this.platform.Service.Switch, 'NightMode');
|
|
87
|
+
if (this.configDev.nightMode) {
|
|
88
|
+
(_e = this.nightModeService) !== null && _e !== void 0 ? _e : (this.nightModeService = this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Night Mode`, 'NightMode'));
|
|
89
|
+
this.nightModeService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Night Mode`);
|
|
90
|
+
this.nightModeService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Night Mode`);
|
|
91
|
+
this.nightModeService
|
|
92
|
+
.getCharacteristic(this.platform.Characteristic.On)
|
|
93
|
+
.onGet(this.getNightMode.bind(this))
|
|
94
|
+
.onSet(this.setNightMode.bind(this));
|
|
95
|
+
}
|
|
96
|
+
else if (this.nightModeService) {
|
|
97
|
+
this.accessory.removeService(this.nightModeService);
|
|
98
|
+
}
|
|
99
|
+
this.device.on('stateUpdated', this.updateCharacteristics.bind(this));
|
|
100
|
+
}
|
|
101
|
+
updateCharacteristics(changedStates) {
|
|
102
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
103
|
+
for (const [k, v] of Object.entries(changedStates)) {
|
|
104
|
+
this.platform.log.debug(`[${this.device.name}] ${k} changed to ${v}`);
|
|
105
|
+
let updateState = false;
|
|
106
|
+
let updateAirQuality = false;
|
|
107
|
+
switch (k) {
|
|
108
|
+
case 'standby':
|
|
109
|
+
updateState = true;
|
|
110
|
+
break;
|
|
111
|
+
case 'automode':
|
|
112
|
+
this.service.updateCharacteristic(this.platform.Characteristic.TargetAirPurifierState, this.getTargetAirPurifierState());
|
|
113
|
+
break;
|
|
114
|
+
case 'childlock':
|
|
115
|
+
this.service.updateCharacteristic(this.platform.Characteristic.LockPhysicalControls, this.getLockPhysicalControls());
|
|
116
|
+
break;
|
|
117
|
+
case 'fanspeed':
|
|
118
|
+
this.service.updateCharacteristic(this.platform.Characteristic.RotationSpeed, this.getRotationSpeed());
|
|
119
|
+
this.service.updateCharacteristic(this.platform.Characteristic.Active, this.getActive());
|
|
120
|
+
this.service.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, this.getCurrentAirPurifierState());
|
|
121
|
+
break;
|
|
122
|
+
case 'filterusage':
|
|
123
|
+
this.service.updateCharacteristic(this.platform.Characteristic.FilterChangeIndication, this.getFilterChangeIndication());
|
|
124
|
+
this.service.updateCharacteristic(this.platform.Characteristic.FilterLifeLevel, this.getFilterLifeLevel());
|
|
125
|
+
break;
|
|
126
|
+
case 'temperature':
|
|
127
|
+
this.service.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, this.getCurrentTemperature());
|
|
128
|
+
break;
|
|
129
|
+
case 'brightness':
|
|
130
|
+
(_a = this.ledService) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.platform.Characteristic.On, this.getLedOn());
|
|
131
|
+
(_b = this.ledService) === null || _b === void 0 ? void 0 : _b.updateCharacteristic(this.platform.Characteristic.Brightness, this.getLedBrightness());
|
|
132
|
+
break;
|
|
133
|
+
case 'pm25':
|
|
134
|
+
(_c = this.airQualityService) === null || _c === void 0 ? void 0 : _c.updateCharacteristic(this.platform.Characteristic.PM2_5Density, this.getPM2_5Density());
|
|
135
|
+
updateAirQuality = true;
|
|
136
|
+
break;
|
|
137
|
+
case 'pm10':
|
|
138
|
+
(_d = this.airQualityService) === null || _d === void 0 ? void 0 : _d.updateCharacteristic(this.platform.Characteristic.PM10Density, this.getPM10Density());
|
|
139
|
+
updateAirQuality = true;
|
|
140
|
+
break;
|
|
141
|
+
case 'voc':
|
|
142
|
+
(_e = this.airQualityService) === null || _e === void 0 ? void 0 : _e.updateCharacteristic(this.platform.Characteristic.VOCDensity, this.getVOCDensity());
|
|
143
|
+
updateAirQuality = true;
|
|
144
|
+
break;
|
|
145
|
+
case 'germshield':
|
|
146
|
+
(_f = this.germShieldService) === null || _f === void 0 ? void 0 : _f.updateCharacteristic(this.platform.Characteristic.On, this.getGermShield());
|
|
147
|
+
break;
|
|
148
|
+
case 'nightmode':
|
|
149
|
+
(_g = this.nightModeService) === null || _g === void 0 ? void 0 : _g.updateCharacteristic(this.platform.Characteristic.On, this.getNightMode());
|
|
150
|
+
break;
|
|
151
|
+
}
|
|
152
|
+
if (updateState) {
|
|
153
|
+
this.service.updateCharacteristic(this.platform.Characteristic.Active, this.getActive());
|
|
154
|
+
this.service.updateCharacteristic(this.platform.Characteristic.CurrentAirPurifierState, this.getCurrentAirPurifierState());
|
|
155
|
+
(_h = this.ledService) === null || _h === void 0 ? void 0 : _h.updateCharacteristic(this.platform.Characteristic.On, this.getLedOn());
|
|
156
|
+
(_j = this.germShieldService) === null || _j === void 0 ? void 0 : _j.updateCharacteristic(this.platform.Characteristic.On, this.getGermShield());
|
|
157
|
+
(_k = this.nightModeService) === null || _k === void 0 ? void 0 : _k.updateCharacteristic(this.platform.Characteristic.On, this.getNightMode());
|
|
158
|
+
}
|
|
159
|
+
if (updateAirQuality) {
|
|
160
|
+
(_l = this.airQualityService) === null || _l === void 0 ? void 0 : _l.updateCharacteristic(this.platform.Characteristic.AirQuality, this.getAirQuality());
|
|
161
|
+
}
|
|
162
|
+
}
|
|
39
163
|
}
|
|
40
164
|
getActive() {
|
|
41
|
-
return this.device.state.standby ? this.platform.Characteristic.Active.
|
|
165
|
+
return this.device.state.standby === false ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE;
|
|
42
166
|
}
|
|
43
|
-
setActive(value) {
|
|
44
|
-
this.device.
|
|
167
|
+
async setActive(value) {
|
|
168
|
+
this.platform.log.debug(`[${this.device.name}] Setting active to ${value}`);
|
|
169
|
+
await this.device.setState('standby', value === this.platform.Characteristic.Active.INACTIVE);
|
|
45
170
|
}
|
|
46
171
|
getCurrentAirPurifierState() {
|
|
47
|
-
|
|
48
|
-
this.
|
|
49
|
-
|
|
172
|
+
if (this.device.state.standby === false) {
|
|
173
|
+
return this.device.state.automode && this.device.state.fanspeed === 0
|
|
174
|
+
? this.platform.Characteristic.CurrentAirPurifierState.IDLE
|
|
175
|
+
: this.platform.Characteristic.CurrentAirPurifierState.PURIFYING_AIR;
|
|
176
|
+
}
|
|
177
|
+
return this.platform.Characteristic.CurrentAirPurifierState.INACTIVE;
|
|
50
178
|
}
|
|
51
179
|
getTargetAirPurifierState() {
|
|
52
|
-
return this.device.state.automode
|
|
53
|
-
this.platform.Characteristic.TargetAirPurifierState.AUTO
|
|
54
|
-
this.platform.Characteristic.TargetAirPurifierState.MANUAL;
|
|
180
|
+
return this.device.state.automode
|
|
181
|
+
? this.platform.Characteristic.TargetAirPurifierState.AUTO
|
|
182
|
+
: this.platform.Characteristic.TargetAirPurifierState.MANUAL;
|
|
55
183
|
}
|
|
56
|
-
setTargetAirPurifierState(value) {
|
|
57
|
-
this.device.
|
|
184
|
+
async setTargetAirPurifierState(value) {
|
|
185
|
+
this.platform.log.debug(`[${this.device.name}] Setting target air purifier state to ${value}`);
|
|
186
|
+
await this.device.setState('automode', value === this.platform.Characteristic.TargetAirPurifierState.AUTO);
|
|
58
187
|
}
|
|
59
188
|
getLockPhysicalControls() {
|
|
60
|
-
return this.device.state.childlock
|
|
61
|
-
this.platform.Characteristic.LockPhysicalControls.CONTROL_LOCK_ENABLED
|
|
62
|
-
this.platform.Characteristic.LockPhysicalControls.CONTROL_LOCK_DISABLED;
|
|
189
|
+
return this.device.state.childlock
|
|
190
|
+
? this.platform.Characteristic.LockPhysicalControls.CONTROL_LOCK_ENABLED
|
|
191
|
+
: this.platform.Characteristic.LockPhysicalControls.CONTROL_LOCK_DISABLED;
|
|
63
192
|
}
|
|
64
|
-
setLockPhysicalControls(value) {
|
|
65
|
-
this.device.
|
|
193
|
+
async setLockPhysicalControls(value) {
|
|
194
|
+
this.platform.log.debug(`[${this.device.name}] Setting lock physical controls to ${value}`);
|
|
195
|
+
await this.device.setState('childlock', value === this.platform.Characteristic.LockPhysicalControls.CONTROL_LOCK_ENABLED);
|
|
66
196
|
}
|
|
67
197
|
getRotationSpeed() {
|
|
68
|
-
return this.device.state.fanspeed || 0;
|
|
198
|
+
return this.device.state.standby === false ? this.device.state.fanspeed || 0 : 0;
|
|
69
199
|
}
|
|
70
|
-
setRotationSpeed(value) {
|
|
71
|
-
this.device.
|
|
200
|
+
async setRotationSpeed(value) {
|
|
201
|
+
this.platform.log.debug(`[${this.device.name}] Setting rotation speed to ${value}`);
|
|
202
|
+
await this.device.setState('fanspeed', value);
|
|
72
203
|
}
|
|
73
204
|
getFilterChangeIndication() {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
return this.device.state.filterusage < 95 ?
|
|
78
|
-
this.platform.Characteristic.FilterChangeIndication.FILTER_OK :
|
|
79
|
-
this.platform.Characteristic.FilterChangeIndication.CHANGE_FILTER;
|
|
205
|
+
return this.device.state.filterusage !== undefined && this.device.state.filterusage >= this.configDev.filterChangeLevel
|
|
206
|
+
? this.platform.Characteristic.FilterChangeIndication.CHANGE_FILTER
|
|
207
|
+
: this.platform.Characteristic.FilterChangeIndication.FILTER_OK;
|
|
80
208
|
}
|
|
81
209
|
getFilterLifeLevel() {
|
|
82
|
-
return this.device.state.filterusage || 0;
|
|
210
|
+
return 100 - (this.device.state.filterusage || 0);
|
|
83
211
|
}
|
|
84
212
|
getCurrentTemperature() {
|
|
85
213
|
return this.device.sensorData.temperature || 0;
|
|
86
214
|
}
|
|
87
|
-
|
|
88
|
-
return this.device.
|
|
215
|
+
getLedOn() {
|
|
216
|
+
return this.device.state.brightness !== undefined && this.device.state.brightness > 0 && this.device.state.nightmode !== true;
|
|
217
|
+
}
|
|
218
|
+
async setLedOn(value) {
|
|
219
|
+
this.platform.log.debug(`[${this.device.name}] Setting LED on to ${value}`);
|
|
220
|
+
await this.device.setLedOn(value);
|
|
221
|
+
}
|
|
222
|
+
getLedBrightness() {
|
|
223
|
+
return this.device.state.brightness || 0;
|
|
224
|
+
}
|
|
225
|
+
async setLedBrightness(value) {
|
|
226
|
+
this.platform.log.debug(`[${this.device.name}] Setting LED brightness to ${value}`);
|
|
227
|
+
await this.device.setState('brightness', value);
|
|
228
|
+
}
|
|
229
|
+
getPM2_5Density() {
|
|
230
|
+
return this.device.sensorData.pm2_5 || 0;
|
|
231
|
+
}
|
|
232
|
+
getPM10Density() {
|
|
233
|
+
return this.device.sensorData.pm10 || 0;
|
|
234
|
+
}
|
|
235
|
+
getVOCDensity() {
|
|
236
|
+
return this.device.sensorData.voc || 0;
|
|
237
|
+
}
|
|
238
|
+
getAirQuality() {
|
|
239
|
+
if (this.device.sensorData.aqi === undefined) {
|
|
240
|
+
return this.platform.Characteristic.AirQuality.UNKNOWN;
|
|
241
|
+
}
|
|
242
|
+
if (this.device.sensorData.aqi <= 50) {
|
|
243
|
+
return this.platform.Characteristic.AirQuality.EXCELLENT;
|
|
244
|
+
}
|
|
245
|
+
else if (this.device.sensorData.aqi <= 100) {
|
|
246
|
+
return this.platform.Characteristic.AirQuality.GOOD;
|
|
247
|
+
}
|
|
248
|
+
else if (this.device.sensorData.aqi <= 150) {
|
|
249
|
+
return this.platform.Characteristic.AirQuality.FAIR;
|
|
250
|
+
}
|
|
251
|
+
else if (this.device.sensorData.aqi <= 200) {
|
|
252
|
+
return this.platform.Characteristic.AirQuality.INFERIOR;
|
|
253
|
+
}
|
|
254
|
+
else {
|
|
255
|
+
return this.platform.Characteristic.AirQuality.POOR;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
getGermShield() {
|
|
259
|
+
return this.device.state.germshield === true;
|
|
260
|
+
}
|
|
261
|
+
async setGermShield(value) {
|
|
262
|
+
this.platform.log.debug(`[${this.device.name}] Setting germ shield to ${value}`);
|
|
263
|
+
await this.device.setState('germshield', value);
|
|
264
|
+
}
|
|
265
|
+
getNightMode() {
|
|
266
|
+
return this.device.state.nightmode === true;
|
|
267
|
+
}
|
|
268
|
+
async setNightMode(value) {
|
|
269
|
+
this.platform.log.debug(`[${this.device.name}] Setting night mode to ${value}`);
|
|
270
|
+
await this.device.setState('nightmode', value);
|
|
89
271
|
}
|
|
90
272
|
}
|
|
91
273
|
exports.AirPurifierAccessory = AirPurifierAccessory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AirPurifierAccessory.js","sourceRoot":"","sources":["../../src/accessory/AirPurifierAccessory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AirPurifierAccessory.js","sourceRoot":"","sources":["../../src/accessory/AirPurifierAccessory.ts"],"names":[],"mappings":";;;AAMA,MAAa,oBAAoB;IAS/B,YACqB,QAAyB,EACzB,SAA4B,EAC5B,MAAqB,EACrB,SAAuB;;QAHvB,aAAQ,GAAR,QAAQ,CAAiB;QACzB,cAAS,GAAT,SAAS,CAAmB;QAC5B,WAAM,GAAN,MAAM,CAAe;QACrB,cAAS,GAAT,SAAS,CAAc;QAE1C,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,SAAS,CAAC,CAAC;QAE3E,IAAI,CAAC,OAAO;YACV,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE/H,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACvF,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,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEvI,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC;aACtE,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAChD,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpD,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAC;aACpE,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC9C,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAElD,IAAI,CAAC,OAAO;aACT,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC;aAC7D,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACvC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3C,IAAI,CAAC,wBAAwB;YAC3B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC;gBAClE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAErE,IAAI,CAAC,wBAAwB;aAC1B,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC;aACtE,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEpD,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAExI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACxF,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YACvB,MAAA,IAAI,CAAC,UAAU,oCAAf,IAAI,CAAC,UAAU,GAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,EAAE,KAAK,CAAC,EAAC;YACjH,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,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACnI,IAAI,CAAC,UAAU;iBACZ,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC;iBAC1D,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,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;QAC7G,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;YACpC,MAAA,IAAI,CAAC,iBAAiB,oCAAtB,IAAI,CAAC,iBAAiB,GAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAClD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,EACtC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,cAAc,EACjC,YAAY,CACb,EAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACvH,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC3H,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACzH,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzH,CAAC;aAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACvD,CAAC;QAED,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,iBAAiB,EAAE,CAAC;YACrC,MAAA,IAAI,CAAC,kBAAkB,oCAAvB,IAAI,CAAC,kBAAkB,GAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CACnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,iBAAiB,EACvC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,cAAc,EACjC,aAAa,CACd,EAAC;YACF,IAAI,CAAC,kBAAkB;iBACpB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC;iBAClE,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClD,CAAC;aAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACnG,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC9B,MAAA,IAAI,CAAC,iBAAiB,oCAAtB,IAAI,CAAC,iBAAiB,GAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,cAAc,EAAE,YAAY,CAAC,EAAC;YACpI,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,CAAC;YAC/G,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,CAAC;YACzH,IAAI,CAAC,iBAAiB;iBACnB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBAClD,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACpC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAClC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACjG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;YAC7B,MAAA,IAAI,CAAC,gBAAgB,oCAArB,IAAI,CAAC,gBAAgB,GAAK,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,aAAa,EAAE,WAAW,CAAC,EAAC;YACjI,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,CAAC;YAC7G,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,CAAC;YACvH,IAAI,CAAC,gBAAgB;iBAClB,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBAClD,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACnC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,qBAAqB,CAAC,aAA8C;;QAClE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YACtE,IAAI,WAAW,GAAG,KAAK,CAAC;YACxB,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAC7B,QAAQ,CAAC,EAAE,CAAC;gBACV,KAAK,SAAS;oBACZ,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM;gBACR,KAAK,UAAU;oBACb,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;oBACzH,MAAM;gBACR,KAAK,WAAW;oBACd,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,oBAAoB,EAAE,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;oBACrH,MAAM;gBACR,KAAK,UAAU;oBACb,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;oBACvG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;oBACzF,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,CAAC;oBAC3H,MAAM;gBACR,KAAK,aAAa;oBAChB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,EAAE,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC;oBACzH,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;oBAC3G,MAAM;gBACR,KAAK,aAAa;oBAChB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,qBAAqB,EAAE,CAAC,CAAC;oBACjH,MAAM;gBACR,KAAK,YAAY;oBACf,MAAA,IAAI,CAAC,UAAU,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACxF,MAAA,IAAI,CAAC,UAAU,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;oBACxG,MAAM;gBACR,KAAK,MAAM;oBACT,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;oBAChH,gBAAgB,GAAG,IAAI,CAAC;oBACxB,MAAM;gBACR,KAAK,MAAM;oBACT,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;oBAC9G,gBAAgB,GAAG,IAAI,CAAC;oBACxB,MAAM;gBACR,KAAK,KAAK;oBACR,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBAC5G,gBAAgB,GAAG,IAAI,CAAC;oBACxB,MAAM;gBACR,KAAK,YAAY;oBACf,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBACpG,MAAM;gBACR,KAAK,WAAW;oBACd,MAAA,IAAI,CAAC,gBAAgB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;oBAClG,MAAM;YACV,CAAC;YAED,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,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,CAAC,0BAA0B,EAAE,CAAC,CAAC;gBAC3H,MAAA,IAAI,CAAC,UAAU,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACxF,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;gBACpG,MAAA,IAAI,CAAC,gBAAgB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;YACpG,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAA,IAAI,CAAC,iBAAiB,0CAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;YAC9G,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,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;IACzI,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAA0B;QACxC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,uBAAuB,KAAK,EAAE,CAAC,CAAC;QAC5E,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,0BAA0B;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,CAAC;gBACnE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI;gBAC3D,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,aAAa,CAAC;QACzE,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,QAAQ,CAAC;IACvE,CAAC;IAED,yBAAyB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ;YAC/B,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC,IAAI;YAC1D,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC,MAAM,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,KAA0B;QACxD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,0CAA0C,KAAK,EAAE,CAAC,CAAC;QAC/F,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC7G,CAAC;IAED,uBAAuB;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS;YAChC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAC,oBAAoB;YACxE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAC,qBAAqB,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,KAA0B;QACtD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,uCAAuC,KAAK,EAAE,CAAC,CAAC;QAC5F,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAAC;IAC5H,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAA0B;QAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,+BAA+B,KAAK,EAAE,CAAC,CAAC;QACpF,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAe,CAAC,CAAC;IAC1D,CAAC;IAED,yBAAyB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,iBAAiB;YACrH,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC,aAAa;YACnE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,sBAAsB,CAAC,SAAS,CAAC;IACpE,CAAC;IAED,kBAAkB;QAChB,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,qBAAqB;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAChI,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAA0B;QACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,uBAAuB,KAAK,EAAE,CAAC,CAAC;QAC5E,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAgB,CAAC,CAAC;IAC/C,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAA0B;QAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,+BAA+B,KAAK,EAAE,CAAC,CAAC;QACpF,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAe,CAAC,CAAC;IAC5D,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,aAAa;QACX,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC;QAC3D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;QACtD,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;QACtD,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC;QACtD,CAAC;IACH,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,KAA0B;QAC5C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,4BAA4B,KAAK,EAAE,CAAC,CAAC;QACjF,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAgB,CAAC,CAAC;IAC7D,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,KAA0B;QAC3C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,2BAA2B,KAAK,EAAE,CAAC,CAAC;QAChF,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAgB,CAAC,CAAC;IAC5D,CAAC;CACF;AA9TD,oDA8TC"}
|
|
@@ -8,6 +8,7 @@ type BlueAirDeviceDiscovery = {
|
|
|
8
8
|
uuid: string;
|
|
9
9
|
'wifi-firmware': string;
|
|
10
10
|
};
|
|
11
|
+
export type FullBlueAirDeviceState = BlueAirDeviceState & BlueAirDeviceSensorData;
|
|
11
12
|
export type BlueAirDeviceState = {
|
|
12
13
|
cfv?: string;
|
|
13
14
|
germshield?: boolean;
|
|
@@ -31,7 +32,7 @@ export type BlueAirDeviceSensorData = {
|
|
|
31
32
|
humidity?: number;
|
|
32
33
|
pm1?: number;
|
|
33
34
|
pm10?: number;
|
|
34
|
-
|
|
35
|
+
pm2_5?: number;
|
|
35
36
|
temperature?: number;
|
|
36
37
|
voc?: number;
|
|
37
38
|
};
|
|
@@ -54,8 +55,10 @@ export declare const BlueAirDeviceSensorDataMap: {
|
|
|
54
55
|
export default class BlueAirAwsApi {
|
|
55
56
|
private readonly logger;
|
|
56
57
|
private readonly gigyaApi;
|
|
57
|
-
private readonly blueairAxios;
|
|
58
58
|
private last_login;
|
|
59
|
+
private semaphore;
|
|
60
|
+
private accessToken;
|
|
61
|
+
private blueAirApiUrl;
|
|
59
62
|
constructor(username: string, password: string, region: string, logger: Logger);
|
|
60
63
|
login(): Promise<void>;
|
|
61
64
|
checkTokenExpiration(): Promise<void>;
|