zigbee-herdsman-converters 14.0.321 → 14.0.325
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/converters/fromZigbee.js +2 -75
- package/converters/toZigbee.js +2 -67
- package/devices/gledopto.js +14 -0
- package/devices/ikea.js +170 -10
- package/devices/miboxer.js +1 -1
- package/devices/osram.js +8 -0
- package/devices/philips.js +106 -1
- package/devices/third_reality.js +12 -0
- package/devices/xiaomi.js +6 -8
- package/lib/exposes.js +1 -1
- package/lib/utils.js +1 -1
- package/npm-shrinkwrap.json +145 -145
- package/package.json +2 -2
package/converters/fromZigbee.js
CHANGED
|
@@ -1425,11 +1425,11 @@ const converters = {
|
|
|
1425
1425
|
const invert = model.meta && model.meta.coverInverted ? !options.invert_cover : options.invert_cover;
|
|
1426
1426
|
if (msg.data.hasOwnProperty('currentPositionLiftPercentage') && msg.data['currentPositionLiftPercentage'] <= 100) {
|
|
1427
1427
|
const value = msg.data['currentPositionLiftPercentage'];
|
|
1428
|
-
result
|
|
1428
|
+
result[postfixWithEndpointName('position', msg, model)] = invert ? value : 100 - value;
|
|
1429
1429
|
}
|
|
1430
1430
|
if (msg.data.hasOwnProperty('currentPositionTiltPercentage') && msg.data['currentPositionTiltPercentage'] <= 100) {
|
|
1431
1431
|
const value = msg.data['currentPositionTiltPercentage'];
|
|
1432
|
-
result
|
|
1432
|
+
result[postfixWithEndpointName('tilt', msg, model)] = invert ? value : 100 - value;
|
|
1433
1433
|
}
|
|
1434
1434
|
return result;
|
|
1435
1435
|
},
|
|
@@ -4293,79 +4293,6 @@ const converters = {
|
|
|
4293
4293
|
}
|
|
4294
4294
|
},
|
|
4295
4295
|
},
|
|
4296
|
-
ikea_air_purifier: {
|
|
4297
|
-
cluster: 'manuSpecificIkeaAirPurifier',
|
|
4298
|
-
type: ['attributeReport', 'readResponse'],
|
|
4299
|
-
options: [exposes.options.precision('pm25'), exposes.options.calibration('pm25')],
|
|
4300
|
-
convert: (model, msg, publish, options, meta) => {
|
|
4301
|
-
const state = {};
|
|
4302
|
-
|
|
4303
|
-
if (msg.data.hasOwnProperty('particulateMatter25Measurement')) {
|
|
4304
|
-
const pm25Property = postfixWithEndpointName('pm25', msg, model);
|
|
4305
|
-
let pm25 = parseFloat(msg.data['particulateMatter25Measurement']);
|
|
4306
|
-
|
|
4307
|
-
// Air Quality Scale (ikea app):
|
|
4308
|
-
// 0-35=Good, 35-80=OK, 80+=Not Good
|
|
4309
|
-
let airQuality;
|
|
4310
|
-
const airQualityProperty = postfixWithEndpointName('air_quality', msg, model);
|
|
4311
|
-
if (pm25 <= 35) {
|
|
4312
|
-
airQuality = 'good';
|
|
4313
|
-
} else if (pm25 <= 80) {
|
|
4314
|
-
airQuality = 'ok';
|
|
4315
|
-
} else if (pm25 < 65535) {
|
|
4316
|
-
airQuality = 'not_good';
|
|
4317
|
-
} else {
|
|
4318
|
-
airQuality = 'unknown';
|
|
4319
|
-
}
|
|
4320
|
-
|
|
4321
|
-
// calibrate and round pm25 unless invalid
|
|
4322
|
-
pm25 = (pm25 == 65535) ? -1 : calibrateAndPrecisionRoundOptions(pm25, options, 'pm25');
|
|
4323
|
-
|
|
4324
|
-
state[pm25Property] = calibrateAndPrecisionRoundOptions(pm25, options, 'pm25');
|
|
4325
|
-
state[airQualityProperty] = airQuality;
|
|
4326
|
-
}
|
|
4327
|
-
|
|
4328
|
-
if (msg.data.hasOwnProperty('filterRunTime')) {
|
|
4329
|
-
// Filter needs to be replaced after 6 months
|
|
4330
|
-
state['replace_filter'] = (parseInt(msg.data['filterRunTime']) >= 259200);
|
|
4331
|
-
}
|
|
4332
|
-
|
|
4333
|
-
if (msg.data.hasOwnProperty('controlPanelLight')) {
|
|
4334
|
-
state['led_enable'] = (msg.data['controlPanelLight'] == 0);
|
|
4335
|
-
}
|
|
4336
|
-
|
|
4337
|
-
if (msg.data.hasOwnProperty('childLock')) {
|
|
4338
|
-
state['child_lock'] = (msg.data['childLock'] > 0 ? 'LOCK' : 'UNLOCK');
|
|
4339
|
-
}
|
|
4340
|
-
|
|
4341
|
-
if (msg.data.hasOwnProperty('fanSpeed')) {
|
|
4342
|
-
let fanSpeed = msg.data['fanSpeed'];
|
|
4343
|
-
if (fanSpeed >= 10) {
|
|
4344
|
-
fanSpeed = (((fanSpeed - 5) * 2) / 10);
|
|
4345
|
-
} else {
|
|
4346
|
-
fanSpeed = 0;
|
|
4347
|
-
}
|
|
4348
|
-
|
|
4349
|
-
state['fan_speed'] = fanSpeed;
|
|
4350
|
-
}
|
|
4351
|
-
|
|
4352
|
-
if (msg.data.hasOwnProperty('fanMode')) {
|
|
4353
|
-
let fanMode = msg.data['fanMode'];
|
|
4354
|
-
if (fanMode >= 10) {
|
|
4355
|
-
fanMode = (((fanMode - 5) * 2) / 10).toString();
|
|
4356
|
-
} else if (fanMode == 1) {
|
|
4357
|
-
fanMode = 'auto';
|
|
4358
|
-
} else {
|
|
4359
|
-
fanMode = 'off';
|
|
4360
|
-
}
|
|
4361
|
-
|
|
4362
|
-
state['fan_mode'] = fanMode;
|
|
4363
|
-
state['fan_state'] = (fanMode === 'off' ? 'OFF' : 'ON');
|
|
4364
|
-
}
|
|
4365
|
-
|
|
4366
|
-
return state;
|
|
4367
|
-
},
|
|
4368
|
-
},
|
|
4369
4296
|
E1524_E1810_levelctrl: {
|
|
4370
4297
|
cluster: 'genLevelCtrl',
|
|
4371
4298
|
type: [
|
package/converters/toZigbee.js
CHANGED
|
@@ -1922,71 +1922,6 @@ const converters = {
|
|
|
1922
1922
|
await entity.read('genBasic', [0x0033], manufacturerOptions.hue);
|
|
1923
1923
|
},
|
|
1924
1924
|
},
|
|
1925
|
-
ikea_air_purifier_fan_mode: {
|
|
1926
|
-
key: ['fan_mode', 'fan_state'],
|
|
1927
|
-
convertSet: async (entity, key, value, meta) => {
|
|
1928
|
-
if (key == 'fan_state' && value.toLowerCase() == 'on') {
|
|
1929
|
-
value = utils.getMetaValue(entity, meta.mapped, 'fanStateOn', 'allEqual', 'on');
|
|
1930
|
-
}
|
|
1931
|
-
|
|
1932
|
-
let fanMode;
|
|
1933
|
-
switch (value.toLowerCase()) {
|
|
1934
|
-
case 'off':
|
|
1935
|
-
fanMode = 0;
|
|
1936
|
-
break;
|
|
1937
|
-
case 'auto':
|
|
1938
|
-
fanMode = 1;
|
|
1939
|
-
break;
|
|
1940
|
-
default:
|
|
1941
|
-
fanMode = parseInt(((parseInt(value) / 2.0) * 10) + 5);
|
|
1942
|
-
}
|
|
1943
|
-
|
|
1944
|
-
await entity.write('manuSpecificIkeaAirPurifier', {'fanMode': fanMode}, manufacturerOptions.ikea);
|
|
1945
|
-
return {state: {fan_mode: value.toLowerCase(), fan_state: value.toLowerCase() === 'off' ? 'OFF' : 'ON'}};
|
|
1946
|
-
},
|
|
1947
|
-
convertGet: async (entity, key, meta) => {
|
|
1948
|
-
await entity.read('manuSpecificIkeaAirPurifier', ['fanMode']);
|
|
1949
|
-
},
|
|
1950
|
-
},
|
|
1951
|
-
ikea_air_purifier_fan_speed: {
|
|
1952
|
-
key: ['fan_speed'],
|
|
1953
|
-
convertGet: async (entity, key, meta) => {
|
|
1954
|
-
await entity.read('manuSpecificIkeaAirPurifier', ['fanSpeed']);
|
|
1955
|
-
},
|
|
1956
|
-
},
|
|
1957
|
-
ikea_air_purifier_pm25: {
|
|
1958
|
-
key: ['pm25', 'air_quality'],
|
|
1959
|
-
convertGet: async (entity, key, meta) => {
|
|
1960
|
-
await entity.read('manuSpecificIkeaAirPurifier', ['particulateMatter25Measurement']);
|
|
1961
|
-
},
|
|
1962
|
-
},
|
|
1963
|
-
ikea_air_purifier_replace_filter: {
|
|
1964
|
-
key: ['replace_filter'],
|
|
1965
|
-
convertGet: async (entity, key, meta) => {
|
|
1966
|
-
await entity.read('manuSpecificIkeaAirPurifier', ['filterRunTime']);
|
|
1967
|
-
},
|
|
1968
|
-
},
|
|
1969
|
-
ikea_air_purifier_child_lock: {
|
|
1970
|
-
key: ['child_lock'],
|
|
1971
|
-
convertSet: async (entity, key, value, meta) => {
|
|
1972
|
-
await entity.write('manuSpecificIkeaAirPurifier', {'childLock': ((value.toLowerCase() === 'lock') ? 1 : 0)},
|
|
1973
|
-
manufacturerOptions.ikea);
|
|
1974
|
-
return {state: {child_lock: ((value.toLowerCase() === 'lock') ? 'LOCK' : 'UNLOCK')}};
|
|
1975
|
-
},
|
|
1976
|
-
convertGet: async (entity, key, meta) => {
|
|
1977
|
-
await entity.read('manuSpecificIkeaAirPurifier', ['childLock']);
|
|
1978
|
-
},
|
|
1979
|
-
},
|
|
1980
|
-
ikea_air_purifier_led_enable: {
|
|
1981
|
-
key: ['led_enable'],
|
|
1982
|
-
convertSet: async (entity, key, value, meta) => {
|
|
1983
|
-
await entity.write('manuSpecificIkeaAirPurifier', {'controlPanelLight': ((value) ? 0 : 1)}, manufacturerOptions.ikea);
|
|
1984
|
-
return {state: {led_enable: ((value) ? true : false)}};
|
|
1985
|
-
},
|
|
1986
|
-
convertGet: async (entity, key, meta) => {
|
|
1987
|
-
await entity.read('manuSpecificIkeaAirPurifier', ['controlPanelLight']);
|
|
1988
|
-
},
|
|
1989
|
-
},
|
|
1990
1925
|
RTCGQ13LM_motion_sensitivity: {
|
|
1991
1926
|
key: ['motion_sensitivity'],
|
|
1992
1927
|
convertSet: async (entity, key, value, meta) => {
|
|
@@ -2034,7 +1969,7 @@ const converters = {
|
|
|
2034
1969
|
convertSet: async (entity, key, value, meta) => {
|
|
2035
1970
|
if (['ZNCZ04LM', 'QBKG25LM', 'SSM-U01', 'SSM-U02', 'DLKZMK11LM', 'DLKZMK12LM', 'QBKG39LM', 'QBKG41LM', 'ZNCZ15LM',
|
|
2036
1971
|
'WS-EUK01', 'WS-EUK02', 'WS-EUK03', 'WS-EUK04', 'QBKG31LM', 'QBCZ15LM', 'QBKG20LM', 'QBKG38LM',
|
|
2037
|
-
'QBKG34LM', 'QBCZ14LM', 'QBKG19LM'].includes(meta.mapped.model)) {
|
|
1972
|
+
'QBKG34LM', 'QBCZ14LM', 'QBKG19LM', 'QBKG40LM', 'QBKG41LM'].includes(meta.mapped.model)) {
|
|
2038
1973
|
await entity.write('aqaraOpple', {0x0201: {value: value ? 1 : 0, type: 0x10}}, manufacturerOptions.xiaomi);
|
|
2039
1974
|
} else if (['ZNCZ02LM', 'QBCZ11LM'].includes(meta.mapped.model)) {
|
|
2040
1975
|
const payload = value ?
|
|
@@ -2057,7 +1992,7 @@ const converters = {
|
|
|
2057
1992
|
convertGet: async (entity, key, meta) => {
|
|
2058
1993
|
if (['ZNCZ04LM', 'QBKG25LM', 'SSM-U01', 'SSM-U02', 'DLKZMK11LM', 'DLKZMK12LM', 'QBKG39LM', 'QBKG41LM', 'ZNCZ15LM',
|
|
2059
1994
|
'WS-EUK02', 'WS-EUK01', 'QBKG31LM', 'QBCZ15LM', 'QBCZ14LM', 'QBKG20LM', 'QBKG34LM', 'QBKG19LM',
|
|
2060
|
-
'QBKG38LM'].includes(meta.mapped.model)) {
|
|
1995
|
+
'QBKG38LM', 'QBKG40LM', 'QBKG41LM'].includes(meta.mapped.model)) {
|
|
2061
1996
|
await entity.read('aqaraOpple', [0x0201]);
|
|
2062
1997
|
} else if (['ZNCZ02LM', 'QBCZ11LM', 'ZNCZ11LM'].includes(meta.mapped.model)) {
|
|
2063
1998
|
await entity.read('aqaraOpple', [0xFFF0]);
|
package/devices/gledopto.js
CHANGED
|
@@ -466,6 +466,20 @@ module.exports = [
|
|
|
466
466
|
description: 'Zigbee 12W Downlight RGB+CCT (pro)',
|
|
467
467
|
extend: gledoptoExtend.light_onoff_brightness_colortemp_color(),
|
|
468
468
|
},
|
|
469
|
+
{
|
|
470
|
+
zigbeeModel: ['GL-D-006P'],
|
|
471
|
+
model: 'GL-D-006P',
|
|
472
|
+
vendor: 'Gledopto',
|
|
473
|
+
description: 'Zigbee 6W anti-glare downlight RGB+CCT (pro)',
|
|
474
|
+
extend: gledoptoExtend.light_onoff_brightness_colortemp_color({colorTempRange: [158, 495]}),
|
|
475
|
+
},
|
|
476
|
+
{
|
|
477
|
+
zigbeeModel: ['GL-D-007P'],
|
|
478
|
+
model: 'GL-D-007P',
|
|
479
|
+
vendor: 'Gledopto',
|
|
480
|
+
description: 'Zigbee 12W anti-glare downlight RGB+CCT (pro)',
|
|
481
|
+
extend: gledoptoExtend.light_onoff_brightness_colortemp_color({colorTempRange: [158, 495]}),
|
|
482
|
+
},
|
|
469
483
|
{
|
|
470
484
|
zigbeeModel: ['GL-FL-004TZ'],
|
|
471
485
|
model: 'GL-FL-004TZ',
|
package/devices/ikea.js
CHANGED
|
@@ -8,6 +8,10 @@ const {repInterval} = require('../lib/constants');
|
|
|
8
8
|
const extend = require('../lib/extend');
|
|
9
9
|
const e = exposes.presets;
|
|
10
10
|
const ea = exposes.access;
|
|
11
|
+
const herdsman = require('zigbee-herdsman');
|
|
12
|
+
const {
|
|
13
|
+
calibrateAndPrecisionRoundOptions, postfixWithEndpointName, getMetaValue,
|
|
14
|
+
} = require('../lib/utils');
|
|
11
15
|
|
|
12
16
|
const bulbOnEvent = async (type, data, device) => {
|
|
13
17
|
/**
|
|
@@ -49,6 +53,161 @@ const tradfriExtend = {
|
|
|
49
53
|
}),
|
|
50
54
|
};
|
|
51
55
|
|
|
56
|
+
const manufacturerOptions = {manufacturerCode: herdsman.Zcl.ManufacturerCode.IKEA_OF_SWEDEN};
|
|
57
|
+
|
|
58
|
+
const ikea = {
|
|
59
|
+
fz: {
|
|
60
|
+
air_purifier: {
|
|
61
|
+
cluster: 'manuSpecificIkeaAirPurifier',
|
|
62
|
+
type: ['attributeReport', 'readResponse'],
|
|
63
|
+
options: [exposes.options.precision('pm25'), exposes.options.calibration('pm25')],
|
|
64
|
+
convert: (model, msg, publish, options, meta) => {
|
|
65
|
+
const state = {};
|
|
66
|
+
|
|
67
|
+
if (msg.data.hasOwnProperty('particulateMatter25Measurement')) {
|
|
68
|
+
const pm25Property = postfixWithEndpointName('pm25', msg, model);
|
|
69
|
+
let pm25 = parseFloat(msg.data['particulateMatter25Measurement']);
|
|
70
|
+
|
|
71
|
+
// Air Quality
|
|
72
|
+
// Scale based on EU AQI (https://www.eea.europa.eu/themes/air/air-quality-index)
|
|
73
|
+
// Using German IAQ labels to match the Develco Air Quality Sensor
|
|
74
|
+
let airQuality;
|
|
75
|
+
const airQualityProperty = postfixWithEndpointName('air_quality', msg, model);
|
|
76
|
+
if (pm25 <= 10) {
|
|
77
|
+
airQuality = 'excellent';
|
|
78
|
+
} else if (pm25 <= 20) {
|
|
79
|
+
airQuality = 'good';
|
|
80
|
+
} else if (pm25 <= 25) {
|
|
81
|
+
airQuality = 'moderate';
|
|
82
|
+
} else if (pm25 <= 50) {
|
|
83
|
+
airQuality = 'poor';
|
|
84
|
+
} else if (pm25 <= 75) {
|
|
85
|
+
airQuality = 'unhealthy';
|
|
86
|
+
} else if (pm25 <= 800) {
|
|
87
|
+
airQuality = 'hazardous';
|
|
88
|
+
} else if (pm25 < 65535) {
|
|
89
|
+
airQuality = 'out_of_range';
|
|
90
|
+
} else {
|
|
91
|
+
airQuality = 'unknown';
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
// calibrate and round pm25 unless invalid
|
|
95
|
+
pm25 = (pm25 == 65535) ? -1 : calibrateAndPrecisionRoundOptions(pm25, options, 'pm25');
|
|
96
|
+
|
|
97
|
+
state[pm25Property] = calibrateAndPrecisionRoundOptions(pm25, options, 'pm25');
|
|
98
|
+
state[airQualityProperty] = airQuality;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (msg.data.hasOwnProperty('filterRunTime')) {
|
|
102
|
+
// Filter needs to be replaced after 6 months
|
|
103
|
+
state['replace_filter'] = (parseInt(msg.data['filterRunTime']) >= 259200);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
if (msg.data.hasOwnProperty('controlPanelLight')) {
|
|
107
|
+
state['led_enable'] = (msg.data['controlPanelLight'] == 0);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
if (msg.data.hasOwnProperty('childLock')) {
|
|
111
|
+
state['child_lock'] = (msg.data['childLock'] > 0 ? 'LOCK' : 'UNLOCK');
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
if (msg.data.hasOwnProperty('fanSpeed')) {
|
|
115
|
+
let fanSpeed = msg.data['fanSpeed'];
|
|
116
|
+
if (fanSpeed >= 10) {
|
|
117
|
+
fanSpeed = (((fanSpeed - 5) * 2) / 10);
|
|
118
|
+
} else {
|
|
119
|
+
fanSpeed = 0;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
state['fan_speed'] = fanSpeed;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
if (msg.data.hasOwnProperty('fanMode')) {
|
|
126
|
+
let fanMode = msg.data['fanMode'];
|
|
127
|
+
if (fanMode >= 10) {
|
|
128
|
+
fanMode = (((fanMode - 5) * 2) / 10).toString();
|
|
129
|
+
} else if (fanMode == 1) {
|
|
130
|
+
fanMode = 'auto';
|
|
131
|
+
} else {
|
|
132
|
+
fanMode = 'off';
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
state['fan_mode'] = fanMode;
|
|
136
|
+
state['fan_state'] = (fanMode === 'off' ? 'OFF' : 'ON');
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
return state;
|
|
140
|
+
},
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
tz: {
|
|
144
|
+
air_purifier_fan_mode: {
|
|
145
|
+
key: ['fan_mode', 'fan_state'],
|
|
146
|
+
convertSet: async (entity, key, value, meta) => {
|
|
147
|
+
if (key == 'fan_state' && value.toLowerCase() == 'on') {
|
|
148
|
+
value = getMetaValue(entity, meta.mapped, 'fanStateOn', 'allEqual', 'on');
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
let fanMode;
|
|
152
|
+
switch (value.toLowerCase()) {
|
|
153
|
+
case 'off':
|
|
154
|
+
fanMode = 0;
|
|
155
|
+
break;
|
|
156
|
+
case 'auto':
|
|
157
|
+
fanMode = 1;
|
|
158
|
+
break;
|
|
159
|
+
default:
|
|
160
|
+
fanMode = parseInt(((parseInt(value) / 2.0) * 10) + 5);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
await entity.write('manuSpecificIkeaAirPurifier', {'fanMode': fanMode}, manufacturerOptions.ikea);
|
|
164
|
+
return {state: {fan_mode: value.toLowerCase(), fan_state: value.toLowerCase() === 'off' ? 'OFF' : 'ON'}};
|
|
165
|
+
},
|
|
166
|
+
convertGet: async (entity, key, meta) => {
|
|
167
|
+
await entity.read('manuSpecificIkeaAirPurifier', ['fanMode']);
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
air_purifier_fan_speed: {
|
|
171
|
+
key: ['fan_speed'],
|
|
172
|
+
convertGet: async (entity, key, meta) => {
|
|
173
|
+
await entity.read('manuSpecificIkeaAirPurifier', ['fanSpeed']);
|
|
174
|
+
},
|
|
175
|
+
},
|
|
176
|
+
air_purifier_pm25: {
|
|
177
|
+
key: ['pm25', 'air_quality'],
|
|
178
|
+
convertGet: async (entity, key, meta) => {
|
|
179
|
+
await entity.read('manuSpecificIkeaAirPurifier', ['particulateMatter25Measurement']);
|
|
180
|
+
},
|
|
181
|
+
},
|
|
182
|
+
air_purifier_replace_filter: {
|
|
183
|
+
key: ['replace_filter'],
|
|
184
|
+
convertGet: async (entity, key, meta) => {
|
|
185
|
+
await entity.read('manuSpecificIkeaAirPurifier', ['filterRunTime']);
|
|
186
|
+
},
|
|
187
|
+
},
|
|
188
|
+
air_purifier_child_lock: {
|
|
189
|
+
key: ['child_lock'],
|
|
190
|
+
convertSet: async (entity, key, value, meta) => {
|
|
191
|
+
await entity.write('manuSpecificIkeaAirPurifier', {'childLock': ((value.toLowerCase() === 'lock') ? 1 : 0)},
|
|
192
|
+
manufacturerOptions);
|
|
193
|
+
return {state: {child_lock: ((value.toLowerCase() === 'lock') ? 'LOCK' : 'UNLOCK')}};
|
|
194
|
+
},
|
|
195
|
+
convertGet: async (entity, key, meta) => {
|
|
196
|
+
await entity.read('manuSpecificIkeaAirPurifier', ['childLock']);
|
|
197
|
+
},
|
|
198
|
+
},
|
|
199
|
+
air_purifier_led_enable: {
|
|
200
|
+
key: ['led_enable'],
|
|
201
|
+
convertSet: async (entity, key, value, meta) => {
|
|
202
|
+
await entity.write('manuSpecificIkeaAirPurifier', {'controlPanelLight': ((value) ? 0 : 1)}, manufacturerOptions);
|
|
203
|
+
return {state: {led_enable: ((value) ? true : false)}};
|
|
204
|
+
},
|
|
205
|
+
convertGet: async (entity, key, meta) => {
|
|
206
|
+
await entity.read('manuSpecificIkeaAirPurifier', ['controlPanelLight']);
|
|
207
|
+
},
|
|
208
|
+
},
|
|
209
|
+
},
|
|
210
|
+
};
|
|
52
211
|
|
|
53
212
|
module.exports = [
|
|
54
213
|
{
|
|
@@ -632,7 +791,9 @@ module.exports = [
|
|
|
632
791
|
.withDescription('Current fan speed'),
|
|
633
792
|
e.pm25().withAccess(ea.STATE_GET),
|
|
634
793
|
exposes.enum('air_quality', ea.STATE_GET, [
|
|
635
|
-
'
|
|
794
|
+
'excellent', 'good', 'moderate', 'poor',
|
|
795
|
+
'unhealthy', 'hazardous', 'out_of_range',
|
|
796
|
+
'unknown',
|
|
636
797
|
]).withDescription('Measured air quality'),
|
|
637
798
|
exposes.binary('led_enable', ea.ALL, true, false).withDescription('Enabled LED'),
|
|
638
799
|
exposes.binary('child_lock', ea.ALL, 'LOCK', 'UNLOCK').withDescription('Enables/disables physical input on the device'),
|
|
@@ -640,29 +801,28 @@ module.exports = [
|
|
|
640
801
|
.withDescription('Filter is older than 6 months and needs replacing'),
|
|
641
802
|
],
|
|
642
803
|
meta: {fanStateOn: 'auto'},
|
|
643
|
-
fromZigbee: [fz.
|
|
804
|
+
fromZigbee: [ikea.fz.air_purifier],
|
|
644
805
|
toZigbee: [
|
|
645
|
-
tz.
|
|
646
|
-
tz.
|
|
647
|
-
tz.
|
|
806
|
+
ikea.tz.air_purifier_fan_mode, ikea.tz.air_purifier_fan_speed,
|
|
807
|
+
ikea.tz.air_purifier_pm25, ikea.tz.air_purifier_child_lock, ikea.tz.air_purifier_led_enable,
|
|
808
|
+
ikea.tz.air_purifier_replace_filter,
|
|
648
809
|
],
|
|
649
810
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
650
|
-
const options = {manufacturerCode: 0x117c};
|
|
651
811
|
const endpoint = device.getEndpoint(1);
|
|
652
812
|
|
|
653
813
|
await reporting.bind(endpoint, coordinatorEndpoint, ['manuSpecificIkeaAirPurifier']);
|
|
654
814
|
await endpoint.configureReporting('manuSpecificIkeaAirPurifier', [{attribute: 'particulateMatter25Measurement',
|
|
655
815
|
minimumReportInterval: repInterval.MINUTE, maximumReportInterval: repInterval.HOUR, reportableChange: 1}],
|
|
656
|
-
|
|
816
|
+
manufacturerOptions);
|
|
657
817
|
await endpoint.configureReporting('manuSpecificIkeaAirPurifier', [{attribute: 'filterRunTime',
|
|
658
818
|
minimumReportInterval: repInterval.HOUR, maximumReportInterval: repInterval.HOUR, reportableChange: 0}],
|
|
659
|
-
|
|
819
|
+
manufacturerOptions);
|
|
660
820
|
await endpoint.configureReporting('manuSpecificIkeaAirPurifier', [{attribute: 'fanMode',
|
|
661
821
|
minimumReportInterval: 0, maximumReportInterval: repInterval.HOUR, reportableChange: 1}],
|
|
662
|
-
|
|
822
|
+
manufacturerOptions);
|
|
663
823
|
await endpoint.configureReporting('manuSpecificIkeaAirPurifier', [{attribute: 'fanSpeed',
|
|
664
824
|
minimumReportInterval: 0, maximumReportInterval: repInterval.HOUR, reportableChange: 1}],
|
|
665
|
-
|
|
825
|
+
manufacturerOptions);
|
|
666
826
|
|
|
667
827
|
await endpoint.read('manuSpecificIkeaAirPurifier', ['controlPanelLight', 'childLock', 'filterRunTime']);
|
|
668
828
|
},
|
package/devices/miboxer.js
CHANGED
|
@@ -39,6 +39,6 @@ module.exports = [
|
|
|
39
39
|
model: 'FUT038Z',
|
|
40
40
|
description: 'RGBW LED controller',
|
|
41
41
|
vendor: 'Miboxer',
|
|
42
|
-
extend: extend.
|
|
42
|
+
extend: extend.light_onoff_brightness_colortemp_color({disableColorTempStartup: true, colorTempRange: [153, 500]}),
|
|
43
43
|
},
|
|
44
44
|
];
|
package/devices/osram.js
CHANGED
|
@@ -30,6 +30,14 @@ module.exports = [
|
|
|
30
30
|
extend: extend.ledvance.light_onoff_brightness_colortemp_color(),
|
|
31
31
|
ota: ota.ledvance,
|
|
32
32
|
},
|
|
33
|
+
{
|
|
34
|
+
zigbeeModel: ['LIGHTIFY RT RGBW'],
|
|
35
|
+
model: '73741_LIGHTIFY',
|
|
36
|
+
vendor: 'OSRAM',
|
|
37
|
+
description: 'LIGHTIFY RT5/6 LED',
|
|
38
|
+
extend: extend.ledvance.light_onoff_brightness_colortemp_color(),
|
|
39
|
+
ota: ota.ledvance,
|
|
40
|
+
},
|
|
33
41
|
{
|
|
34
42
|
zigbeeModel: ['Classic A60 RGBW'],
|
|
35
43
|
model: 'AA69697',
|
package/devices/philips.js
CHANGED
|
@@ -38,6 +38,15 @@ module.exports = [
|
|
|
38
38
|
extend: extend.light_onoff_brightness_colortemp({colorTempRange: [153, 500]}),
|
|
39
39
|
ota: ota.zigbeeOTA,
|
|
40
40
|
},
|
|
41
|
+
{
|
|
42
|
+
zigbeeModel: ['929003054301'],
|
|
43
|
+
model: '929003054301',
|
|
44
|
+
vendor: 'Philips',
|
|
45
|
+
description: 'Hue White Ambiance Cher Pendant',
|
|
46
|
+
meta: {turnsOffAtBrightness1: true},
|
|
47
|
+
extend: extend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
48
|
+
ota: ota.zigbeeOTA,
|
|
49
|
+
},
|
|
41
50
|
{
|
|
42
51
|
zigbeeModel: ['5063131P7'],
|
|
43
52
|
model: '5063131P7',
|
|
@@ -726,6 +735,15 @@ module.exports = [
|
|
|
726
735
|
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
727
736
|
ota: ota.zigbeeOTA,
|
|
728
737
|
},
|
|
738
|
+
{
|
|
739
|
+
zigbeeModel: ['LCA006'],
|
|
740
|
+
model: '9290024689',
|
|
741
|
+
vendor: 'Philips',
|
|
742
|
+
description: 'Hue white and color ambiance B22 1100lm',
|
|
743
|
+
meta: {turnsOffAtBrightness1: true},
|
|
744
|
+
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
745
|
+
ota: ota.zigbeeOTA,
|
|
746
|
+
},
|
|
729
747
|
{
|
|
730
748
|
zigbeeModel: ['LCA008'],
|
|
731
749
|
model: '929002471601',
|
|
@@ -735,6 +753,15 @@ module.exports = [
|
|
|
735
753
|
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
736
754
|
ota: ota.zigbeeOTA,
|
|
737
755
|
},
|
|
756
|
+
{
|
|
757
|
+
zigbeeModel: ['LCA009'],
|
|
758
|
+
model: '9290024717',
|
|
759
|
+
vendor: 'Philips',
|
|
760
|
+
description: 'Hue white and color ambiance E26/A19 1600lm',
|
|
761
|
+
meta: {turnsOffAtBrightness1: true},
|
|
762
|
+
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
763
|
+
ota: ota.zigbeeOTA,
|
|
764
|
+
},
|
|
738
765
|
{
|
|
739
766
|
zigbeeModel: ['LCT001', 'LCT007', 'LCT010', 'LCT012', 'LCT014', 'LCT015', 'LCT016', 'LCT021'],
|
|
740
767
|
model: '9290012573A',
|
|
@@ -1058,6 +1085,15 @@ module.exports = [
|
|
|
1058
1085
|
extend: hueExtend.light_onoff_brightness_colortemp_color(),
|
|
1059
1086
|
ota: ota.zigbeeOTA,
|
|
1060
1087
|
},
|
|
1088
|
+
{
|
|
1089
|
+
zigbeeModel: ['4090231P9'],
|
|
1090
|
+
model: '4090231P9',
|
|
1091
|
+
vendor: 'Philips',
|
|
1092
|
+
description: 'Hue Liane',
|
|
1093
|
+
meta: {turnsOffAtBrightness1: true},
|
|
1094
|
+
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
1095
|
+
ota: ota.zigbeeOTA,
|
|
1096
|
+
},
|
|
1061
1097
|
{
|
|
1062
1098
|
zigbeeModel: ['LTC001'],
|
|
1063
1099
|
model: '3261030P7',
|
|
@@ -1228,6 +1264,15 @@ module.exports = [
|
|
|
1228
1264
|
extend: hueExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
1229
1265
|
ota: ota.zigbeeOTA,
|
|
1230
1266
|
},
|
|
1267
|
+
{
|
|
1268
|
+
zigbeeModel: ['929003099101'],
|
|
1269
|
+
model: '929003099101',
|
|
1270
|
+
vendor: 'Philips',
|
|
1271
|
+
description: 'Hue white ambiance Aurelle rectangle panel light',
|
|
1272
|
+
meta: {turnsOffAtBrightness1: true},
|
|
1273
|
+
extend: hueExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 454]}),
|
|
1274
|
+
ota: ota.zigbeeOTA,
|
|
1275
|
+
},
|
|
1231
1276
|
{
|
|
1232
1277
|
zigbeeModel: ['LTC016'],
|
|
1233
1278
|
model: '3216431P5',
|
|
@@ -1306,7 +1351,7 @@ module.exports = [
|
|
|
1306
1351
|
vendor: 'Philips',
|
|
1307
1352
|
description: 'Hue Iris (generation 2, black)',
|
|
1308
1353
|
meta: {turnsOffAtBrightness1: true},
|
|
1309
|
-
extend: hueExtend.
|
|
1354
|
+
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
1310
1355
|
ota: ota.zigbeeOTA,
|
|
1311
1356
|
},
|
|
1312
1357
|
{
|
|
@@ -1408,6 +1453,15 @@ module.exports = [
|
|
|
1408
1453
|
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
1409
1454
|
ota: ota.zigbeeOTA,
|
|
1410
1455
|
},
|
|
1456
|
+
{
|
|
1457
|
+
zigbeeModel: ['LCT020'],
|
|
1458
|
+
model: '4080148P7',
|
|
1459
|
+
vendor: 'Philips',
|
|
1460
|
+
description: 'Hue Signe table light',
|
|
1461
|
+
meta: {turnsOffAtBrightness1: true},
|
|
1462
|
+
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
1463
|
+
ota: ota.zigbeeOTA,
|
|
1464
|
+
},
|
|
1411
1465
|
{
|
|
1412
1466
|
zigbeeModel: ['4080148P9'],
|
|
1413
1467
|
model: '4080148P9',
|
|
@@ -1771,6 +1825,39 @@ module.exports = [
|
|
|
1771
1825
|
},
|
|
1772
1826
|
ota: ota.zigbeeOTA,
|
|
1773
1827
|
},
|
|
1828
|
+
{
|
|
1829
|
+
zigbeeModel: ['SML003'],
|
|
1830
|
+
model: '9290030675',
|
|
1831
|
+
vendor: 'Philips',
|
|
1832
|
+
description: 'Hue motion sensor',
|
|
1833
|
+
fromZigbee: [fz.battery, fz.occupancy, fz.temperature, fz.occupancy_timeout, fz.illuminance,
|
|
1834
|
+
fz.hue_motion_sensitivity, fz.hue_motion_led_indication],
|
|
1835
|
+
exposes: [e.temperature(), e.occupancy(), e.battery(), e.illuminance_lux(), e.illuminance(),
|
|
1836
|
+
exposes.enum('motion_sensitivity', ea.ALL, ['low', 'medium', 'high']),
|
|
1837
|
+
exposes.binary('led_indication', ea.ALL, true, false).withDescription('Blink green LED on motion detection'),
|
|
1838
|
+
exposes.numeric('occupancy_timeout', ea.ALL).withUnit('second').withValueMin(0).withValueMax(65535)],
|
|
1839
|
+
toZigbee: [tz.occupancy_timeout, tz.hue_motion_sensitivity, tz.hue_motion_led_indication],
|
|
1840
|
+
endpoint: (device) => {
|
|
1841
|
+
return {
|
|
1842
|
+
'default': 2, // default
|
|
1843
|
+
'ep1': 1,
|
|
1844
|
+
'ep2': 2, // e.g. for write to msOccupancySensing
|
|
1845
|
+
};
|
|
1846
|
+
},
|
|
1847
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
1848
|
+
const endpoint = device.getEndpoint(2);
|
|
1849
|
+
const binds = ['genPowerCfg', 'msIlluminanceMeasurement', 'msTemperatureMeasurement', 'msOccupancySensing'];
|
|
1850
|
+
await reporting.bind(endpoint, coordinatorEndpoint, binds);
|
|
1851
|
+
await reporting.batteryPercentageRemaining(endpoint);
|
|
1852
|
+
await reporting.occupancy(endpoint);
|
|
1853
|
+
await reporting.temperature(endpoint);
|
|
1854
|
+
await reporting.illuminance(endpoint);
|
|
1855
|
+
// read occupancy_timeout and motion_sensitivity
|
|
1856
|
+
await endpoint.read('msOccupancySensing', ['pirOToUDelay']);
|
|
1857
|
+
await endpoint.read('msOccupancySensing', [48], {manufacturerCode: 4107});
|
|
1858
|
+
},
|
|
1859
|
+
ota: ota.zigbeeOTA,
|
|
1860
|
+
},
|
|
1774
1861
|
{
|
|
1775
1862
|
zigbeeModel: ['LOM001'],
|
|
1776
1863
|
model: '929002240401',
|
|
@@ -2314,4 +2401,22 @@ module.exports = [
|
|
|
2314
2401
|
extend: hueExtend.light_onoff_brightness_colortemp_color({colorTempRange: [153, 500]}),
|
|
2315
2402
|
ota: ota.zigbeeOTA,
|
|
2316
2403
|
},
|
|
2404
|
+
{
|
|
2405
|
+
zigbeeModel: ['LTA005'],
|
|
2406
|
+
model: '8719514392830',
|
|
2407
|
+
vendor: 'Philips',
|
|
2408
|
+
description: 'Hue White Ambiance E27 filament screw globe',
|
|
2409
|
+
meta: {turnsOffAtBrightness1: true},
|
|
2410
|
+
extend: hueExtend.light_onoff_brightness_colortemp({colorTempRange: [222, 454]}),
|
|
2411
|
+
ota: ota.zigbeeOTA,
|
|
2412
|
+
},
|
|
2413
|
+
{
|
|
2414
|
+
zigbeeModel: ['LWE007'],
|
|
2415
|
+
model: '9290030211',
|
|
2416
|
+
vendor: 'Philips',
|
|
2417
|
+
description: 'Hue white Candle bulb E14 bluetooth',
|
|
2418
|
+
meta: {turnsOffAtBrightness1: true},
|
|
2419
|
+
extend: hueExtend.light_onoff_brightness(),
|
|
2420
|
+
ota: ota.zigbeeOTA,
|
|
2421
|
+
},
|
|
2317
2422
|
];
|
package/devices/third_reality.js
CHANGED
|
@@ -85,4 +85,16 @@ module.exports = [
|
|
|
85
85
|
meta: {battery: {dontDividePercentage: true}},
|
|
86
86
|
exposes: [e.contact(), e.battery_low(), e.battery(), e.battery_voltage()],
|
|
87
87
|
},
|
|
88
|
+
{
|
|
89
|
+
zigbeeModel: ['3RSP019BZ'],
|
|
90
|
+
model: '3RSP019BZ',
|
|
91
|
+
vendor: 'Third Reality',
|
|
92
|
+
description: 'Zigbee / BLE smart plug',
|
|
93
|
+
extend: extend.switch(),
|
|
94
|
+
configure: async (device, coordinatorEndpoint, logger) => {
|
|
95
|
+
const endpoint = device.getEndpoint(1);
|
|
96
|
+
await reporting.bind(endpoint, coordinatorEndpoint, ['genOnOff']);
|
|
97
|
+
await reporting.onOff(endpoint);
|
|
98
|
+
},
|
|
99
|
+
},
|
|
88
100
|
];
|
package/devices/xiaomi.js
CHANGED
|
@@ -109,14 +109,14 @@ module.exports = [
|
|
|
109
109
|
model: 'JWSP001A',
|
|
110
110
|
vendor: 'Xiaomi',
|
|
111
111
|
description: 'Aqara embedded spot led light',
|
|
112
|
-
extend: xiaomiExtend.light_onoff_brightness_colortemp(),
|
|
112
|
+
extend: xiaomiExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 370]}),
|
|
113
113
|
},
|
|
114
114
|
{
|
|
115
115
|
zigbeeModel: ['lumi.light.cwjwcn02'],
|
|
116
116
|
model: 'JWDL001A',
|
|
117
117
|
vendor: 'Xiaomi',
|
|
118
118
|
description: 'Aqara embedded spot led light',
|
|
119
|
-
extend: xiaomiExtend.light_onoff_brightness_colortemp(),
|
|
119
|
+
extend: xiaomiExtend.light_onoff_brightness_colortemp({colorTempRange: [153, 370]}),
|
|
120
120
|
},
|
|
121
121
|
{
|
|
122
122
|
zigbeeModel: ['lumi.sensor_switch'],
|
|
@@ -1652,17 +1652,15 @@ module.exports = [
|
|
|
1652
1652
|
model: 'QBKG40LM',
|
|
1653
1653
|
vendor: 'Xiaomi',
|
|
1654
1654
|
description: 'Aqara E1 1 gang switch (with neutral)',
|
|
1655
|
-
fromZigbee: [fz.on_off, fz.
|
|
1656
|
-
toZigbee: [tz.on_off, tz.
|
|
1655
|
+
fromZigbee: [fz.on_off, fz.xiaomi_multistate_action, fz.xiaomi_switch_opple_basic],
|
|
1656
|
+
toZigbee: [tz.on_off, tz.xiaomi_switch_operation_mode_opple, tz.xiaomi_switch_power_outage_memory],
|
|
1657
1657
|
exposes: [e.switch(), e.action(['single', 'double']), e.power_outage_memory(),
|
|
1658
1658
|
exposes.enum('operation_mode', ea.ALL, ['control_relay', 'decoupled']).withDescription('Decoupled mode')],
|
|
1659
1659
|
onEvent: preventReset,
|
|
1660
1660
|
configure: async (device, coordinatorEndpoint, logger) => {
|
|
1661
|
-
|
|
1662
|
-
// set "event" mode
|
|
1663
|
-
await endpoint1.write('aqaraOpple', {'mode': 1}, {manufacturerCode: 0x115f,
|
|
1664
|
-
disableDefaultResponse: true, disableResponse: true});
|
|
1661
|
+
await device.getEndpoint(1).write('aqaraOpple', {'mode': 1}, {manufacturerCode: 0x115f, disableResponse: true});
|
|
1665
1662
|
},
|
|
1663
|
+
ota: ota.zigbeeOTA,
|
|
1666
1664
|
},
|
|
1667
1665
|
{
|
|
1668
1666
|
zigbeeModel: ['lumi.remote.b1acn02'],
|
package/lib/exposes.js
CHANGED
|
@@ -503,7 +503,7 @@ module.exports = {
|
|
|
503
503
|
battery: () => new Numeric('battery', access.STATE).withUnit('%').withDescription('Remaining battery in %').withValueMin(0).withValueMax(100),
|
|
504
504
|
battery_low: () => new Binary('battery_low', access.STATE, true, false).withDescription('Indicates if the battery of this device is almost empty'),
|
|
505
505
|
battery_voltage: () => new Numeric('voltage', access.STATE).withUnit('mV').withDescription('Voltage of the battery in millivolts'),
|
|
506
|
-
boost_time: () => new Numeric('boost_time', access.STATE_SET).withUnit('s').withDescription('Boost time'),
|
|
506
|
+
boost_time: () => new Numeric('boost_time', access.STATE_SET).withUnit('s').withDescription('Boost time').withValueMin(0).withValueMax(600),
|
|
507
507
|
button_lock: () => new Binary('button_lock', access.ALL, 'ON', 'OFF').withDescription('Disables the physical switch button'),
|
|
508
508
|
carbon_monoxide: () => new Binary('carbon_monoxide', access.STATE, true, false).withDescription('Indicates if CO (carbon monoxide) is detected'),
|
|
509
509
|
child_lock: () => new Lock().withState('child_lock', 'LOCK', 'UNLOCK', 'Enables/disables physical input on the device', access.STATE_SET),
|
package/lib/utils.js
CHANGED
|
@@ -72,7 +72,7 @@ function hasAlreadyProcessedMessage(msg, ID=null, key=null) {
|
|
|
72
72
|
return false;
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
const defaultPrecision = {temperature: 2, humidity: 2, pressure: 1, pm25:
|
|
75
|
+
const defaultPrecision = {temperature: 2, humidity: 2, pressure: 1, pm25: 0};
|
|
76
76
|
function calibrateAndPrecisionRoundOptions(number, options, type) {
|
|
77
77
|
// Calibrate
|
|
78
78
|
const calibrateKey = `${type}_calibration`;
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zigbee-herdsman-converters",
|
|
3
|
-
"version": "14.0.
|
|
3
|
+
"version": "14.0.325",
|
|
4
4
|
"lockfileVersion": 1,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"dependencies": {
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
}
|
|
15
15
|
},
|
|
16
16
|
"@babel/compat-data": {
|
|
17
|
-
"version": "7.16.
|
|
18
|
-
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.
|
|
19
|
-
"integrity": "sha512-
|
|
17
|
+
"version": "7.16.4",
|
|
18
|
+
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.16.4.tgz",
|
|
19
|
+
"integrity": "sha512-1o/jo7D+kC9ZjHX5v+EHrdjl3PhxMrLSOTGsOdHJ+KL8HCaEK6ehrVL2RS6oHDZp+L7xLirLrPmQtEng769J/Q==",
|
|
20
20
|
"dev": true
|
|
21
21
|
},
|
|
22
22
|
"@babel/core": {
|
|
@@ -296,9 +296,9 @@
|
|
|
296
296
|
}
|
|
297
297
|
},
|
|
298
298
|
"@babel/parser": {
|
|
299
|
-
"version": "7.16.
|
|
300
|
-
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.
|
|
301
|
-
"integrity": "sha512-
|
|
299
|
+
"version": "7.16.4",
|
|
300
|
+
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.4.tgz",
|
|
301
|
+
"integrity": "sha512-6V0qdPUaiVHH3RtZeLIsc+6pDhbYzHR8ogA8w+f+Wc77DuXto19g2QUwveINoS34Uw+W8/hQDGJCx+i4n7xcng==",
|
|
302
302
|
"dev": true
|
|
303
303
|
},
|
|
304
304
|
"@babel/plugin-syntax-async-generators": {
|
|
@@ -872,9 +872,9 @@
|
|
|
872
872
|
"dev": true
|
|
873
873
|
},
|
|
874
874
|
"@types/node": {
|
|
875
|
-
"version": "16.11.
|
|
876
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.
|
|
877
|
-
"integrity": "sha512-
|
|
875
|
+
"version": "16.11.9",
|
|
876
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.9.tgz",
|
|
877
|
+
"integrity": "sha512-MKmdASMf3LtPzwLyRrFjtFFZ48cMf8jmX5VRYrDQiJa8Ybu5VAmkqBWqKU8fdCwD8ysw4mQ9nrEHvzg6gunR7A==",
|
|
878
878
|
"dev": true
|
|
879
879
|
},
|
|
880
880
|
"@types/prettier": {
|
|
@@ -905,15 +905,15 @@
|
|
|
905
905
|
"dev": true
|
|
906
906
|
},
|
|
907
907
|
"@typescript-eslint/experimental-utils": {
|
|
908
|
-
"version": "5.
|
|
909
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.
|
|
910
|
-
"integrity": "sha512-
|
|
908
|
+
"version": "5.4.0",
|
|
909
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.4.0.tgz",
|
|
910
|
+
"integrity": "sha512-Nz2JDIQUdmIGd6p33A+naQmwfkU5KVTLb/5lTk+tLVTDacZKoGQisj8UCxk7onJcrgjIvr8xWqkYI+DbI3TfXg==",
|
|
911
911
|
"dev": true,
|
|
912
912
|
"requires": {
|
|
913
913
|
"@types/json-schema": "^7.0.9",
|
|
914
|
-
"@typescript-eslint/scope-manager": "5.
|
|
915
|
-
"@typescript-eslint/types": "5.
|
|
916
|
-
"@typescript-eslint/typescript-estree": "5.
|
|
914
|
+
"@typescript-eslint/scope-manager": "5.4.0",
|
|
915
|
+
"@typescript-eslint/types": "5.4.0",
|
|
916
|
+
"@typescript-eslint/typescript-estree": "5.4.0",
|
|
917
917
|
"eslint-scope": "^5.1.1",
|
|
918
918
|
"eslint-utils": "^3.0.0"
|
|
919
919
|
},
|
|
@@ -937,29 +937,29 @@
|
|
|
937
937
|
}
|
|
938
938
|
},
|
|
939
939
|
"@typescript-eslint/scope-manager": {
|
|
940
|
-
"version": "5.
|
|
941
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.
|
|
942
|
-
"integrity": "sha512-
|
|
940
|
+
"version": "5.4.0",
|
|
941
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.4.0.tgz",
|
|
942
|
+
"integrity": "sha512-pRxFjYwoi8R+n+sibjgF9iUiAELU9ihPBtHzocyW8v8D8G8KeQvXTsW7+CBYIyTYsmhtNk50QPGLE3vrvhM5KA==",
|
|
943
943
|
"dev": true,
|
|
944
944
|
"requires": {
|
|
945
|
-
"@typescript-eslint/types": "5.
|
|
946
|
-
"@typescript-eslint/visitor-keys": "5.
|
|
945
|
+
"@typescript-eslint/types": "5.4.0",
|
|
946
|
+
"@typescript-eslint/visitor-keys": "5.4.0"
|
|
947
947
|
}
|
|
948
948
|
},
|
|
949
949
|
"@typescript-eslint/types": {
|
|
950
|
-
"version": "5.
|
|
951
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.
|
|
952
|
-
"integrity": "sha512-
|
|
950
|
+
"version": "5.4.0",
|
|
951
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.4.0.tgz",
|
|
952
|
+
"integrity": "sha512-GjXNpmn+n1LvnttarX+sPD6+S7giO+9LxDIGlRl4wK3a7qMWALOHYuVSZpPTfEIklYjaWuMtfKdeByx0AcaThA==",
|
|
953
953
|
"dev": true
|
|
954
954
|
},
|
|
955
955
|
"@typescript-eslint/typescript-estree": {
|
|
956
|
-
"version": "5.
|
|
957
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.
|
|
958
|
-
"integrity": "sha512-
|
|
956
|
+
"version": "5.4.0",
|
|
957
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.4.0.tgz",
|
|
958
|
+
"integrity": "sha512-nhlNoBdhKuwiLMx6GrybPT3SFILm5Gij2YBdPEPFlYNFAXUJWX6QRgvi/lwVoadaQEFsizohs6aFRMqsXI2ewA==",
|
|
959
959
|
"dev": true,
|
|
960
960
|
"requires": {
|
|
961
|
-
"@typescript-eslint/types": "5.
|
|
962
|
-
"@typescript-eslint/visitor-keys": "5.
|
|
961
|
+
"@typescript-eslint/types": "5.4.0",
|
|
962
|
+
"@typescript-eslint/visitor-keys": "5.4.0",
|
|
963
963
|
"debug": "^4.3.2",
|
|
964
964
|
"globby": "^11.0.4",
|
|
965
965
|
"is-glob": "^4.0.3",
|
|
@@ -968,12 +968,12 @@
|
|
|
968
968
|
}
|
|
969
969
|
},
|
|
970
970
|
"@typescript-eslint/visitor-keys": {
|
|
971
|
-
"version": "5.
|
|
972
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.
|
|
973
|
-
"integrity": "sha512-
|
|
971
|
+
"version": "5.4.0",
|
|
972
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.4.0.tgz",
|
|
973
|
+
"integrity": "sha512-PVbax7MeE7tdLfW5SA0fs8NGVVr+buMPrcj+CWYWPXsZCH8qZ1THufDzbXm1xrZ2b2PA1iENJ0sRq5fuUtvsJg==",
|
|
974
974
|
"dev": true,
|
|
975
975
|
"requires": {
|
|
976
|
-
"@typescript-eslint/types": "5.
|
|
976
|
+
"@typescript-eslint/types": "5.4.0",
|
|
977
977
|
"eslint-visitor-keys": "^3.0.0"
|
|
978
978
|
}
|
|
979
979
|
},
|
|
@@ -984,9 +984,9 @@
|
|
|
984
984
|
"dev": true
|
|
985
985
|
},
|
|
986
986
|
"acorn": {
|
|
987
|
-
"version": "8.
|
|
988
|
-
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.
|
|
989
|
-
"integrity": "sha512-
|
|
987
|
+
"version": "8.6.0",
|
|
988
|
+
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.6.0.tgz",
|
|
989
|
+
"integrity": "sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw==",
|
|
990
990
|
"dev": true
|
|
991
991
|
},
|
|
992
992
|
"acorn-globals": {
|
|
@@ -1252,9 +1252,9 @@
|
|
|
1252
1252
|
"dev": true
|
|
1253
1253
|
},
|
|
1254
1254
|
"browserslist": {
|
|
1255
|
-
"version": "4.18.
|
|
1256
|
-
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.
|
|
1257
|
-
"integrity": "sha512-
|
|
1255
|
+
"version": "4.18.1",
|
|
1256
|
+
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.1.tgz",
|
|
1257
|
+
"integrity": "sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ==",
|
|
1258
1258
|
"dev": true,
|
|
1259
1259
|
"requires": {
|
|
1260
1260
|
"caniuse-lite": "^1.0.30001280",
|
|
@@ -1306,9 +1306,9 @@
|
|
|
1306
1306
|
"dev": true
|
|
1307
1307
|
},
|
|
1308
1308
|
"caniuse-lite": {
|
|
1309
|
-
"version": "1.0.
|
|
1310
|
-
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.
|
|
1311
|
-
"integrity": "sha512-
|
|
1309
|
+
"version": "1.0.30001282",
|
|
1310
|
+
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001282.tgz",
|
|
1311
|
+
"integrity": "sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg==",
|
|
1312
1312
|
"dev": true
|
|
1313
1313
|
},
|
|
1314
1314
|
"chalk": {
|
|
@@ -1540,9 +1540,9 @@
|
|
|
1540
1540
|
}
|
|
1541
1541
|
},
|
|
1542
1542
|
"electron-to-chromium": {
|
|
1543
|
-
"version": "1.3.
|
|
1544
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.
|
|
1545
|
-
"integrity": "sha512-
|
|
1543
|
+
"version": "1.3.904",
|
|
1544
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.904.tgz",
|
|
1545
|
+
"integrity": "sha512-x5uZWXcVNYkTh4JubD7KSC1VMKz0vZwJUqVwY3ihsW0bst1BXDe494Uqbg3Y0fDGVjJqA8vEeGuvO5foyH2+qw==",
|
|
1546
1546
|
"dev": true
|
|
1547
1547
|
},
|
|
1548
1548
|
"emittery": {
|
|
@@ -2742,9 +2742,9 @@
|
|
|
2742
2742
|
},
|
|
2743
2743
|
"dependencies": {
|
|
2744
2744
|
"camelcase": {
|
|
2745
|
-
"version": "6.2.
|
|
2746
|
-
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.
|
|
2747
|
-
"integrity": "sha512-
|
|
2745
|
+
"version": "6.2.1",
|
|
2746
|
+
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.1.tgz",
|
|
2747
|
+
"integrity": "sha512-tVI4q5jjFV5CavAU8DXfza/TJcZutVKo/5Foskmsqcm0MsL91moHvwiGNnqaa2o6PF/7yT5ikDRcVcl8Rj6LCA==",
|
|
2748
2748
|
"dev": true
|
|
2749
2749
|
}
|
|
2750
2750
|
}
|
|
@@ -3375,9 +3375,9 @@
|
|
|
3375
3375
|
"dev": true
|
|
3376
3376
|
},
|
|
3377
3377
|
"signal-exit": {
|
|
3378
|
-
"version": "3.0.
|
|
3379
|
-
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.
|
|
3380
|
-
"integrity": "sha512-
|
|
3378
|
+
"version": "3.0.6",
|
|
3379
|
+
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz",
|
|
3380
|
+
"integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==",
|
|
3381
3381
|
"dev": true
|
|
3382
3382
|
},
|
|
3383
3383
|
"sisteransi": {
|
|
@@ -3399,9 +3399,9 @@
|
|
|
3399
3399
|
"dev": true
|
|
3400
3400
|
},
|
|
3401
3401
|
"source-map-support": {
|
|
3402
|
-
"version": "0.5.
|
|
3403
|
-
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.
|
|
3404
|
-
"integrity": "sha512-
|
|
3402
|
+
"version": "0.5.21",
|
|
3403
|
+
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
|
|
3404
|
+
"integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
|
|
3405
3405
|
"dev": true,
|
|
3406
3406
|
"requires": {
|
|
3407
3407
|
"buffer-from": "^1.0.0",
|
|
@@ -3842,9 +3842,9 @@
|
|
|
3842
3842
|
"dev": true
|
|
3843
3843
|
},
|
|
3844
3844
|
"zigbee-herdsman": {
|
|
3845
|
-
"version": "0.13.
|
|
3846
|
-
"resolved": "https://registry.npmjs.org/zigbee-herdsman/-/zigbee-herdsman-0.13.
|
|
3847
|
-
"integrity": "sha512-
|
|
3845
|
+
"version": "0.13.172",
|
|
3846
|
+
"resolved": "https://registry.npmjs.org/zigbee-herdsman/-/zigbee-herdsman-0.13.172.tgz",
|
|
3847
|
+
"integrity": "sha512-J3q26SsJMkmXCq1pru2ugSE6nwjL5xLT/LuNUm8I00uhcPxpQseZh3n/dDhDN9NPgvAIF2n8VGvC6oYm6jLW3w==",
|
|
3848
3848
|
"requires": {
|
|
3849
3849
|
"debounce": "^1.2.1",
|
|
3850
3850
|
"debug": "^4.3.2",
|
|
@@ -3941,13 +3941,13 @@
|
|
|
3941
3941
|
}
|
|
3942
3942
|
},
|
|
3943
3943
|
"@babel/helper-compilation-targets": {
|
|
3944
|
-
"version": "7.16.
|
|
3945
|
-
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.
|
|
3946
|
-
"integrity": "sha512-
|
|
3944
|
+
"version": "7.16.3",
|
|
3945
|
+
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz",
|
|
3946
|
+
"integrity": "sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA==",
|
|
3947
3947
|
"requires": {
|
|
3948
3948
|
"@babel/compat-data": "^7.16.0",
|
|
3949
3949
|
"@babel/helper-validator-option": "^7.14.5",
|
|
3950
|
-
"browserslist": "^4.
|
|
3950
|
+
"browserslist": "^4.17.5",
|
|
3951
3951
|
"semver": "^6.3.0"
|
|
3952
3952
|
},
|
|
3953
3953
|
"dependencies": {
|
|
@@ -4147,12 +4147,12 @@
|
|
|
4147
4147
|
}
|
|
4148
4148
|
},
|
|
4149
4149
|
"@babel/helpers": {
|
|
4150
|
-
"version": "7.16.
|
|
4151
|
-
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.
|
|
4152
|
-
"integrity": "sha512-
|
|
4150
|
+
"version": "7.16.3",
|
|
4151
|
+
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.16.3.tgz",
|
|
4152
|
+
"integrity": "sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w==",
|
|
4153
4153
|
"requires": {
|
|
4154
4154
|
"@babel/template": "^7.16.0",
|
|
4155
|
-
"@babel/traverse": "^7.16.
|
|
4155
|
+
"@babel/traverse": "^7.16.3",
|
|
4156
4156
|
"@babel/types": "^7.16.0"
|
|
4157
4157
|
}
|
|
4158
4158
|
},
|
|
@@ -4167,9 +4167,9 @@
|
|
|
4167
4167
|
}
|
|
4168
4168
|
},
|
|
4169
4169
|
"@babel/parser": {
|
|
4170
|
-
"version": "7.16.
|
|
4171
|
-
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.
|
|
4172
|
-
"integrity": "sha512-
|
|
4170
|
+
"version": "7.16.3",
|
|
4171
|
+
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.16.3.tgz",
|
|
4172
|
+
"integrity": "sha512-dcNwU1O4sx57ClvLBVFbEgx0UZWfd0JQX5X6fxFRCLHelFBGXFfSz6Y0FAq2PEwUqlqLkdVjVr4VASEOuUnLJw=="
|
|
4173
4173
|
},
|
|
4174
4174
|
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
|
|
4175
4175
|
"version": "7.16.2",
|
|
@@ -4659,9 +4659,9 @@
|
|
|
4659
4659
|
}
|
|
4660
4660
|
},
|
|
4661
4661
|
"@babel/plugin-transform-parameters": {
|
|
4662
|
-
"version": "7.16.
|
|
4663
|
-
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.
|
|
4664
|
-
"integrity": "sha512-
|
|
4662
|
+
"version": "7.16.3",
|
|
4663
|
+
"resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.3.tgz",
|
|
4664
|
+
"integrity": "sha512-3MaDpJrOXT1MZ/WCmkOFo7EtmVVC8H4EUZVrHvFOsmwkk4lOjQj8rzv8JKUZV4YoQKeoIgk07GO+acPU9IMu/w==",
|
|
4665
4665
|
"requires": {
|
|
4666
4666
|
"@babel/helper-plugin-utils": "^7.14.5"
|
|
4667
4667
|
}
|
|
@@ -4869,9 +4869,9 @@
|
|
|
4869
4869
|
}
|
|
4870
4870
|
},
|
|
4871
4871
|
"@babel/runtime": {
|
|
4872
|
-
"version": "7.16.
|
|
4873
|
-
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.
|
|
4874
|
-
"integrity": "sha512-
|
|
4872
|
+
"version": "7.16.3",
|
|
4873
|
+
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.3.tgz",
|
|
4874
|
+
"integrity": "sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ==",
|
|
4875
4875
|
"requires": {
|
|
4876
4876
|
"regenerator-runtime": "^0.13.4"
|
|
4877
4877
|
}
|
|
@@ -4887,16 +4887,16 @@
|
|
|
4887
4887
|
}
|
|
4888
4888
|
},
|
|
4889
4889
|
"@babel/traverse": {
|
|
4890
|
-
"version": "7.16.
|
|
4891
|
-
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.
|
|
4892
|
-
"integrity": "sha512-
|
|
4890
|
+
"version": "7.16.3",
|
|
4891
|
+
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.16.3.tgz",
|
|
4892
|
+
"integrity": "sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag==",
|
|
4893
4893
|
"requires": {
|
|
4894
4894
|
"@babel/code-frame": "^7.16.0",
|
|
4895
4895
|
"@babel/generator": "^7.16.0",
|
|
4896
4896
|
"@babel/helper-function-name": "^7.16.0",
|
|
4897
4897
|
"@babel/helper-hoist-variables": "^7.16.0",
|
|
4898
4898
|
"@babel/helper-split-export-declaration": "^7.16.0",
|
|
4899
|
-
"@babel/parser": "^7.16.
|
|
4899
|
+
"@babel/parser": "^7.16.3",
|
|
4900
4900
|
"@babel/types": "^7.16.0",
|
|
4901
4901
|
"debug": "^4.1.0",
|
|
4902
4902
|
"globals": "^11.1.0"
|
|
@@ -5709,14 +5709,14 @@
|
|
|
5709
5709
|
}
|
|
5710
5710
|
},
|
|
5711
5711
|
"@types/node": {
|
|
5712
|
-
"version": "16.11.
|
|
5713
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.
|
|
5714
|
-
"integrity": "sha512-
|
|
5712
|
+
"version": "16.11.7",
|
|
5713
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.7.tgz",
|
|
5714
|
+
"integrity": "sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw=="
|
|
5715
5715
|
},
|
|
5716
5716
|
"@types/prettier": {
|
|
5717
|
-
"version": "2.4.
|
|
5718
|
-
"resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.
|
|
5719
|
-
"integrity": "sha512-
|
|
5717
|
+
"version": "2.4.2",
|
|
5718
|
+
"resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.4.2.tgz",
|
|
5719
|
+
"integrity": "sha512-ekoj4qOQYp7CvjX8ZDBgN86w3MqQhLE1hczEJbEIjgFEumDy+na/4AJAbLXfgEWFNB2pKadM5rPFtuSGMWK7xA=="
|
|
5720
5720
|
},
|
|
5721
5721
|
"@types/serialport": {
|
|
5722
5722
|
"version": "8.0.2",
|
|
@@ -5745,12 +5745,12 @@
|
|
|
5745
5745
|
"integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw=="
|
|
5746
5746
|
},
|
|
5747
5747
|
"@typescript-eslint/eslint-plugin": {
|
|
5748
|
-
"version": "5.3.
|
|
5749
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.3.
|
|
5750
|
-
"integrity": "sha512-
|
|
5748
|
+
"version": "5.3.1",
|
|
5749
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.3.1.tgz",
|
|
5750
|
+
"integrity": "sha512-cFImaoIr5Ojj358xI/SDhjog57OK2NqlpxwdcgyxDA3bJlZcJq5CPzUXtpD7CxI2Hm6ATU7w5fQnnkVnmwpHqw==",
|
|
5751
5751
|
"requires": {
|
|
5752
|
-
"@typescript-eslint/experimental-utils": "5.3.
|
|
5753
|
-
"@typescript-eslint/scope-manager": "5.3.
|
|
5752
|
+
"@typescript-eslint/experimental-utils": "5.3.1",
|
|
5753
|
+
"@typescript-eslint/scope-manager": "5.3.1",
|
|
5754
5754
|
"debug": "^4.3.2",
|
|
5755
5755
|
"functional-red-black-tree": "^1.0.1",
|
|
5756
5756
|
"ignore": "^5.1.8",
|
|
@@ -5770,50 +5770,50 @@
|
|
|
5770
5770
|
}
|
|
5771
5771
|
},
|
|
5772
5772
|
"@typescript-eslint/experimental-utils": {
|
|
5773
|
-
"version": "5.3.
|
|
5774
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.3.
|
|
5775
|
-
"integrity": "sha512-
|
|
5773
|
+
"version": "5.3.1",
|
|
5774
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.3.1.tgz",
|
|
5775
|
+
"integrity": "sha512-RgFn5asjZ5daUhbK5Sp0peq0SSMytqcrkNfU4pnDma2D8P3ElZ6JbYjY8IMSFfZAJ0f3x3tnO3vXHweYg0g59w==",
|
|
5776
5776
|
"requires": {
|
|
5777
5777
|
"@types/json-schema": "^7.0.9",
|
|
5778
|
-
"@typescript-eslint/scope-manager": "5.3.
|
|
5779
|
-
"@typescript-eslint/types": "5.3.
|
|
5780
|
-
"@typescript-eslint/typescript-estree": "5.3.
|
|
5778
|
+
"@typescript-eslint/scope-manager": "5.3.1",
|
|
5779
|
+
"@typescript-eslint/types": "5.3.1",
|
|
5780
|
+
"@typescript-eslint/typescript-estree": "5.3.1",
|
|
5781
5781
|
"eslint-scope": "^5.1.1",
|
|
5782
5782
|
"eslint-utils": "^3.0.0"
|
|
5783
5783
|
}
|
|
5784
5784
|
},
|
|
5785
5785
|
"@typescript-eslint/parser": {
|
|
5786
|
-
"version": "5.3.
|
|
5787
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.3.
|
|
5788
|
-
"integrity": "sha512-
|
|
5786
|
+
"version": "5.3.1",
|
|
5787
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.3.1.tgz",
|
|
5788
|
+
"integrity": "sha512-TD+ONlx5c+Qhk21x9gsJAMRohWAUMavSOmJgv3JGy9dgPhuBd5Wok0lmMClZDyJNLLZK1JRKiATzCKZNUmoyfw==",
|
|
5789
5789
|
"requires": {
|
|
5790
|
-
"@typescript-eslint/scope-manager": "5.3.
|
|
5791
|
-
"@typescript-eslint/types": "5.3.
|
|
5792
|
-
"@typescript-eslint/typescript-estree": "5.3.
|
|
5790
|
+
"@typescript-eslint/scope-manager": "5.3.1",
|
|
5791
|
+
"@typescript-eslint/types": "5.3.1",
|
|
5792
|
+
"@typescript-eslint/typescript-estree": "5.3.1",
|
|
5793
5793
|
"debug": "^4.3.2"
|
|
5794
5794
|
}
|
|
5795
5795
|
},
|
|
5796
5796
|
"@typescript-eslint/scope-manager": {
|
|
5797
|
-
"version": "5.3.
|
|
5798
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.3.
|
|
5799
|
-
"integrity": "sha512-
|
|
5797
|
+
"version": "5.3.1",
|
|
5798
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.3.1.tgz",
|
|
5799
|
+
"integrity": "sha512-XksFVBgAq0Y9H40BDbuPOTUIp7dn4u8oOuhcgGq7EoDP50eqcafkMVGrypyVGvDYHzjhdUCUwuwVUK4JhkMAMg==",
|
|
5800
5800
|
"requires": {
|
|
5801
|
-
"@typescript-eslint/types": "5.3.
|
|
5802
|
-
"@typescript-eslint/visitor-keys": "5.3.
|
|
5801
|
+
"@typescript-eslint/types": "5.3.1",
|
|
5802
|
+
"@typescript-eslint/visitor-keys": "5.3.1"
|
|
5803
5803
|
}
|
|
5804
5804
|
},
|
|
5805
5805
|
"@typescript-eslint/types": {
|
|
5806
|
-
"version": "5.3.
|
|
5807
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.3.
|
|
5808
|
-
"integrity": "sha512-
|
|
5806
|
+
"version": "5.3.1",
|
|
5807
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.3.1.tgz",
|
|
5808
|
+
"integrity": "sha512-bG7HeBLolxKHtdHG54Uac750eXuQQPpdJfCYuw4ZI3bZ7+GgKClMWM8jExBtp7NSP4m8PmLRM8+lhzkYnSmSxQ=="
|
|
5809
5809
|
},
|
|
5810
5810
|
"@typescript-eslint/typescript-estree": {
|
|
5811
|
-
"version": "5.3.
|
|
5812
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.3.
|
|
5813
|
-
"integrity": "sha512-
|
|
5811
|
+
"version": "5.3.1",
|
|
5812
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.3.1.tgz",
|
|
5813
|
+
"integrity": "sha512-PwFbh/PKDVo/Wct6N3w+E4rLZxUDgsoII/GrWM2A62ETOzJd4M6s0Mu7w4CWsZraTbaC5UQI+dLeyOIFF1PquQ==",
|
|
5814
5814
|
"requires": {
|
|
5815
|
-
"@typescript-eslint/types": "5.3.
|
|
5816
|
-
"@typescript-eslint/visitor-keys": "5.3.
|
|
5815
|
+
"@typescript-eslint/types": "5.3.1",
|
|
5816
|
+
"@typescript-eslint/visitor-keys": "5.3.1",
|
|
5817
5817
|
"debug": "^4.3.2",
|
|
5818
5818
|
"globby": "^11.0.4",
|
|
5819
5819
|
"is-glob": "^4.0.3",
|
|
@@ -5832,11 +5832,11 @@
|
|
|
5832
5832
|
}
|
|
5833
5833
|
},
|
|
5834
5834
|
"@typescript-eslint/visitor-keys": {
|
|
5835
|
-
"version": "5.3.
|
|
5836
|
-
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.3.
|
|
5837
|
-
"integrity": "sha512-
|
|
5835
|
+
"version": "5.3.1",
|
|
5836
|
+
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.3.1.tgz",
|
|
5837
|
+
"integrity": "sha512-3cHUzUuVTuNHx0Gjjt5pEHa87+lzyqOiHXy/Gz+SJOCW1mpw9xQHIIEwnKn+Thph1mgWyZ90nboOcSuZr/jTTQ==",
|
|
5838
5838
|
"requires": {
|
|
5839
|
-
"@typescript-eslint/types": "5.3.
|
|
5839
|
+
"@typescript-eslint/types": "5.3.1",
|
|
5840
5840
|
"eslint-visitor-keys": "^3.0.0"
|
|
5841
5841
|
}
|
|
5842
5842
|
},
|
|
@@ -6201,12 +6201,12 @@
|
|
|
6201
6201
|
"integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow=="
|
|
6202
6202
|
},
|
|
6203
6203
|
"browserslist": {
|
|
6204
|
-
"version": "4.
|
|
6205
|
-
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.
|
|
6206
|
-
"integrity": "sha512-
|
|
6204
|
+
"version": "4.18.0",
|
|
6205
|
+
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.18.0.tgz",
|
|
6206
|
+
"integrity": "sha512-ER2M0g5iAR84fS/zjBDqEgU6iO5fS9JI2EkHr5zxDxYEFk3LjhU9Vpp/INb6RMQphxko7PDV1FH38H/qVP5yCA==",
|
|
6207
6207
|
"requires": {
|
|
6208
|
-
"caniuse-lite": "^1.0.
|
|
6209
|
-
"electron-to-chromium": "^1.3.
|
|
6208
|
+
"caniuse-lite": "^1.0.30001280",
|
|
6209
|
+
"electron-to-chromium": "^1.3.896",
|
|
6210
6210
|
"escalade": "^3.1.1",
|
|
6211
6211
|
"node-releases": "^2.0.1",
|
|
6212
6212
|
"picocolors": "^1.0.0"
|
|
@@ -6254,9 +6254,9 @@
|
|
|
6254
6254
|
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg=="
|
|
6255
6255
|
},
|
|
6256
6256
|
"caniuse-lite": {
|
|
6257
|
-
"version": "1.0.
|
|
6258
|
-
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.
|
|
6259
|
-
"integrity": "sha512-
|
|
6257
|
+
"version": "1.0.30001280",
|
|
6258
|
+
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz",
|
|
6259
|
+
"integrity": "sha512-kFXwYvHe5rix25uwueBxC569o53J6TpnGu0BEEn+6Lhl2vsnAumRFWEBhDft1fwyo6m1r4i+RqA4+163FpeFcA=="
|
|
6260
6260
|
},
|
|
6261
6261
|
"chalk": {
|
|
6262
6262
|
"version": "2.4.2",
|
|
@@ -6575,9 +6575,9 @@
|
|
|
6575
6575
|
}
|
|
6576
6576
|
},
|
|
6577
6577
|
"electron-to-chromium": {
|
|
6578
|
-
"version": "1.3.
|
|
6579
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.
|
|
6580
|
-
"integrity": "sha512-
|
|
6578
|
+
"version": "1.3.896",
|
|
6579
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.896.tgz",
|
|
6580
|
+
"integrity": "sha512-NcGkBVXePiuUrPLV8IxP43n1EOtdg+dudVjrfVEUd/bOqpQUFZ2diL5PPYzbgEhZFEltdXV3AcyKwGnEQ5lhMA=="
|
|
6581
6581
|
},
|
|
6582
6582
|
"emittery": {
|
|
6583
6583
|
"version": "0.8.1",
|
|
@@ -6869,9 +6869,9 @@
|
|
|
6869
6869
|
}
|
|
6870
6870
|
},
|
|
6871
6871
|
"eslint-visitor-keys": {
|
|
6872
|
-
"version": "3.
|
|
6873
|
-
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.
|
|
6874
|
-
"integrity": "sha512-
|
|
6872
|
+
"version": "3.1.0",
|
|
6873
|
+
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.1.0.tgz",
|
|
6874
|
+
"integrity": "sha512-yWJFpu4DtjsWKkt5GeNBBuZMlNcYVs6vRCLoCVEJrTjaSB6LC98gFipNK/erM2Heg/E8mIK+hXG/pJMLK+eRZA=="
|
|
6875
6875
|
},
|
|
6876
6876
|
"espree": {
|
|
6877
6877
|
"version": "9.0.0",
|
|
@@ -7057,9 +7057,9 @@
|
|
|
7057
7057
|
}
|
|
7058
7058
|
},
|
|
7059
7059
|
"flatted": {
|
|
7060
|
-
"version": "3.2.
|
|
7061
|
-
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.
|
|
7062
|
-
"integrity": "sha512-
|
|
7060
|
+
"version": "3.2.4",
|
|
7061
|
+
"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.4.tgz",
|
|
7062
|
+
"integrity": "sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw=="
|
|
7063
7063
|
},
|
|
7064
7064
|
"form-data": {
|
|
7065
7065
|
"version": "3.0.1",
|
|
@@ -8841,16 +8841,16 @@
|
|
|
8841
8841
|
}
|
|
8842
8842
|
},
|
|
8843
8843
|
"mime-db": {
|
|
8844
|
-
"version": "1.
|
|
8845
|
-
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.
|
|
8846
|
-
"integrity": "sha512-
|
|
8844
|
+
"version": "1.51.0",
|
|
8845
|
+
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz",
|
|
8846
|
+
"integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g=="
|
|
8847
8847
|
},
|
|
8848
8848
|
"mime-types": {
|
|
8849
|
-
"version": "2.1.
|
|
8850
|
-
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.
|
|
8851
|
-
"integrity": "sha512-
|
|
8849
|
+
"version": "2.1.34",
|
|
8850
|
+
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz",
|
|
8851
|
+
"integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
|
|
8852
8852
|
"requires": {
|
|
8853
|
-
"mime-db": "1.
|
|
8853
|
+
"mime-db": "1.51.0"
|
|
8854
8854
|
}
|
|
8855
8855
|
},
|
|
8856
8856
|
"mimic-fn": {
|
|
@@ -9811,9 +9811,9 @@
|
|
|
9811
9811
|
}
|
|
9812
9812
|
},
|
|
9813
9813
|
"typedoc-plugin-markdown": {
|
|
9814
|
-
"version": "3.11.
|
|
9815
|
-
"resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.11.
|
|
9816
|
-
"integrity": "sha512-
|
|
9814
|
+
"version": "3.11.5",
|
|
9815
|
+
"resolved": "https://registry.npmjs.org/typedoc-plugin-markdown/-/typedoc-plugin-markdown-3.11.5.tgz",
|
|
9816
|
+
"integrity": "sha512-eofjcalj8FObwVqiH8EPwurxUBKYwfJDOlx2zF3Iege1mGgy0KdBquVikglKvnXuB1d60b5K8BRqkYsquiGReQ==",
|
|
9817
9817
|
"requires": {
|
|
9818
9818
|
"handlebars": "^4.7.7"
|
|
9819
9819
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zigbee-herdsman-converters",
|
|
3
|
-
"version": "14.0.
|
|
3
|
+
"version": "14.0.325",
|
|
4
4
|
"description": "Collection of device converters to be used with zigbee-herdsman",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"files": [
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"buffer-crc32": "^0.2.13",
|
|
39
39
|
"https-proxy-agent": "^5.0.0",
|
|
40
40
|
"tar-stream": "^2.2.0",
|
|
41
|
-
"zigbee-herdsman": "^0.13.
|
|
41
|
+
"zigbee-herdsman": "^0.13.172"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"eslint": "*",
|