@zwave-js/config 11.12.0 → 11.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/ConfigManager.d.ts +4 -4
- package/build/ConfigManager.d.ts.map +1 -1
- package/build/ConfigManager.js +23 -16
- package/build/ConfigManager.js.map +1 -1
- package/build/DeviceClasses.d.ts.map +1 -1
- package/build/DeviceClasses.js +12 -10
- package/build/DeviceClasses.js.map +1 -1
- package/build/Indicators.d.ts.map +1 -1
- package/build/Indicators.js +6 -6
- package/build/Indicators.js.map +1 -1
- package/build/JsonTemplate.js +2 -1
- package/build/JsonTemplate.js.map +1 -1
- package/build/Logger.d.ts +1 -1
- package/build/Logger.d.ts.map +1 -1
- package/build/Logic.d.ts.map +1 -1
- package/build/LogicParser.d.ts.map +1 -1
- package/build/LogicParser.js +81 -139
- package/build/LogicParser.js.map +1 -1
- package/build/Meters.d.ts.map +1 -1
- package/build/Meters.js.map +1 -1
- package/build/Notifications.d.ts.map +1 -1
- package/build/Notifications.js +6 -5
- package/build/Notifications.js.map +1 -1
- package/build/Scales.d.ts.map +1 -1
- package/build/Scales.js +4 -4
- package/build/Scales.js.map +1 -1
- package/build/SensorTypes.d.ts.map +1 -1
- package/build/SensorTypes.js +8 -5
- package/build/SensorTypes.js.map +1 -1
- package/build/devices/AssociationConfig.d.ts.map +1 -1
- package/build/devices/AssociationConfig.js +6 -6
- package/build/devices/AssociationConfig.js.map +1 -1
- package/build/devices/CompatConfig.d.ts.map +1 -1
- package/build/devices/CompatConfig.js +50 -49
- package/build/devices/CompatConfig.js.map +1 -1
- package/build/devices/ConditionalItem.d.ts.map +1 -1
- package/build/devices/ConditionalItem.js +2 -2
- package/build/devices/ConditionalItem.js.map +1 -1
- package/build/devices/ConditionalPrimitive.d.ts.map +1 -1
- package/build/devices/ConditionalPrimitive.js +4 -4
- package/build/devices/ConditionalPrimitive.js.map +1 -1
- package/build/devices/DeviceConfig.d.ts +2 -2
- package/build/devices/DeviceConfig.d.ts.map +1 -1
- package/build/devices/DeviceConfig.js +29 -26
- package/build/devices/DeviceConfig.js.map +1 -1
- package/build/devices/DeviceMetadata.d.ts.map +1 -1
- package/build/devices/DeviceMetadata.js +3 -3
- package/build/devices/DeviceMetadata.js.map +1 -1
- package/build/devices/EndpointConfig.d.ts +1 -1
- package/build/devices/EndpointConfig.d.ts.map +1 -1
- package/build/devices/EndpointConfig.js.map +1 -1
- package/build/devices/ParamInformation.d.ts.map +1 -1
- package/build/devices/ParamInformation.js +26 -25
- package/build/devices/ParamInformation.js.map +1 -1
- package/build/utils.d.ts.map +1 -1
- package/build/utils.js +4 -4
- package/build/utils.js.map +1 -1
- package/build/utils_safe.js +2 -2
- package/build/utils_safe.js.map +1 -1
- package/config/.dprint.jsonc +13 -0
- package/config/devices/0x0098/ct100.json +36 -5
- package/config/devices/0x016a/ft100.json +2 -2
- package/config/devices/0x016a/ft111.json +2 -2
- package/config/devices/0x0190/adc-swm150.json +0 -1
- package/config/devices/0x0234/templates/logic_group_template.json +1 -1
- package/config/devices/0x0345/templates/swidget_template.json +3 -3
- package/package.json +5 -8
|
@@ -11,23 +11,23 @@ class ConditionalCompatConfig {
|
|
|
11
11
|
this.valueIdRegex = /^\$value\$\[.+\]$/;
|
|
12
12
|
this.condition = definition.$if;
|
|
13
13
|
if (definition.queryOnWakeup != undefined) {
|
|
14
|
-
if (!(0, typeguards_1.isArray)(definition.queryOnWakeup)
|
|
15
|
-
!definition.queryOnWakeup.every((cmd) => (0, typeguards_1.isArray)(cmd)
|
|
16
|
-
cmd.length >= 2
|
|
17
|
-
typeof cmd[0] === "string"
|
|
18
|
-
typeof cmd[1] === "string"
|
|
19
|
-
cmd
|
|
14
|
+
if (!(0, typeguards_1.isArray)(definition.queryOnWakeup)
|
|
15
|
+
|| !definition.queryOnWakeup.every((cmd) => (0, typeguards_1.isArray)(cmd)
|
|
16
|
+
&& cmd.length >= 2
|
|
17
|
+
&& typeof cmd[0] === "string"
|
|
18
|
+
&& typeof cmd[1] === "string"
|
|
19
|
+
&& cmd
|
|
20
20
|
.slice(2)
|
|
21
|
-
.every((arg) => typeof arg === "string"
|
|
22
|
-
typeof arg === "number"
|
|
23
|
-
typeof arg === "boolean"))) {
|
|
21
|
+
.every((arg) => typeof arg === "string"
|
|
22
|
+
|| typeof arg === "number"
|
|
23
|
+
|| typeof arg === "boolean"))) {
|
|
24
24
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
25
25
|
error in compat option queryOnWakeup`);
|
|
26
26
|
}
|
|
27
27
|
// Parse "smart" values into partial Value IDs
|
|
28
28
|
this.queryOnWakeup = definition.queryOnWakeup.map((cmd) => cmd.map((arg) => {
|
|
29
|
-
if (typeof arg === "string"
|
|
30
|
-
this.valueIdRegex.test(arg)) {
|
|
29
|
+
if (typeof arg === "string"
|
|
30
|
+
&& this.valueIdRegex.test(arg)) {
|
|
31
31
|
const tuple = JSON.parse(arg.slice("$value$".length));
|
|
32
32
|
return {
|
|
33
33
|
property: tuple[0],
|
|
@@ -87,8 +87,8 @@ compat option forceNotificationIdleReset must be true or omitted`);
|
|
|
87
87
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
88
88
|
compat option forceSceneControllerGroupCount must be a number!`);
|
|
89
89
|
}
|
|
90
|
-
if (definition.forceSceneControllerGroupCount < 0
|
|
91
|
-
definition.forceSceneControllerGroupCount > 255) {
|
|
90
|
+
if (definition.forceSceneControllerGroupCount < 0
|
|
91
|
+
|| definition.forceSceneControllerGroupCount > 255) {
|
|
92
92
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
93
93
|
compat option forceSceneControllerGroupCount must be between 0 and 255!`);
|
|
94
94
|
}
|
|
@@ -104,18 +104,18 @@ error in compat option preserveRootApplicationCCValueIDs`);
|
|
|
104
104
|
definition.preserveRootApplicationCCValueIDs;
|
|
105
105
|
}
|
|
106
106
|
if (definition.preserveEndpoints != undefined) {
|
|
107
|
-
if (definition.preserveEndpoints !== "*"
|
|
108
|
-
!((0, typeguards_1.isArray)(definition.preserveEndpoints)
|
|
109
|
-
definition.preserveEndpoints.every((d) => typeof d === "number" && d % 1 === 0 && d > 0))) {
|
|
107
|
+
if (definition.preserveEndpoints !== "*"
|
|
108
|
+
&& !((0, typeguards_1.isArray)(definition.preserveEndpoints)
|
|
109
|
+
&& definition.preserveEndpoints.every((d) => typeof d === "number" && d % 1 === 0 && d > 0))) {
|
|
110
110
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
111
111
|
compat option preserveEndpoints must be "*" or an array of positive integers`);
|
|
112
112
|
}
|
|
113
113
|
this.preserveEndpoints = definition.preserveEndpoints;
|
|
114
114
|
}
|
|
115
115
|
if (definition.removeEndpoints != undefined) {
|
|
116
|
-
if (definition.removeEndpoints !== "*"
|
|
117
|
-
!((0, typeguards_1.isArray)(definition.removeEndpoints)
|
|
118
|
-
definition.removeEndpoints.every((d) => typeof d === "number" && d % 1 === 0 && d > 0))) {
|
|
116
|
+
if (definition.removeEndpoints !== "*"
|
|
117
|
+
&& !((0, typeguards_1.isArray)(definition.removeEndpoints)
|
|
118
|
+
&& definition.removeEndpoints.every((d) => typeof d === "number" && d % 1 === 0 && d > 0))) {
|
|
119
119
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
120
120
|
compat option removeEndpoints must be "*" or an array of positive integers`);
|
|
121
121
|
}
|
|
@@ -165,8 +165,8 @@ error in compat option treatDestinationEndpointAsSource`);
|
|
|
165
165
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
166
166
|
compat option manualValueRefreshDelayMs must be a number!`);
|
|
167
167
|
}
|
|
168
|
-
if (definition.manualValueRefreshDelayMs % 1 !== 0
|
|
169
|
-
definition.manualValueRefreshDelayMs < 0) {
|
|
168
|
+
if (definition.manualValueRefreshDelayMs % 1 !== 0
|
|
169
|
+
|| definition.manualValueRefreshDelayMs < 0) {
|
|
170
170
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
171
171
|
compat option manualValueRefreshDelayMs must be a non-negative integer!`);
|
|
172
172
|
}
|
|
@@ -178,9 +178,9 @@ compat option manualValueRefreshDelayMs must be a non-negative integer!`);
|
|
|
178
178
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
179
179
|
compat option reportTimeout must be a number!`);
|
|
180
180
|
}
|
|
181
|
-
if (definition.reportTimeout % 1 !== 0
|
|
182
|
-
definition.reportTimeout < 1000
|
|
183
|
-
definition.reportTimeout > 10000) {
|
|
181
|
+
if (definition.reportTimeout % 1 !== 0
|
|
182
|
+
|| definition.reportTimeout < 1000
|
|
183
|
+
|| definition.reportTimeout > 10000) {
|
|
184
184
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
185
185
|
compat option reportTimeout must be an integer between 1000 and 10000!`);
|
|
186
186
|
}
|
|
@@ -191,8 +191,8 @@ compat option reportTimeout must be an integer between 1000 and 10000!`);
|
|
|
191
191
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
192
192
|
compat option mapRootReportsToEndpoint must be a number!`);
|
|
193
193
|
}
|
|
194
|
-
if (definition.mapRootReportsToEndpoint % 1 !== 0
|
|
195
|
-
definition.mapRootReportsToEndpoint < 1) {
|
|
194
|
+
if (definition.mapRootReportsToEndpoint % 1 !== 0
|
|
195
|
+
|| definition.mapRootReportsToEndpoint < 1) {
|
|
196
196
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
197
197
|
compat option mapRootReportsToEndpoint must be a positive integer!`);
|
|
198
198
|
}
|
|
@@ -205,13 +205,13 @@ error in compat option overrideFloatEncoding`);
|
|
|
205
205
|
}
|
|
206
206
|
this.overrideFloatEncoding = {};
|
|
207
207
|
if ("precision" in definition.overrideFloatEncoding) {
|
|
208
|
-
if (typeof definition.overrideFloatEncoding.precision
|
|
209
|
-
"number") {
|
|
208
|
+
if (typeof definition.overrideFloatEncoding.precision
|
|
209
|
+
!= "number") {
|
|
210
210
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
211
211
|
compat option overrideFloatEncoding.precision must be a number!`);
|
|
212
212
|
}
|
|
213
|
-
if (definition.overrideFloatEncoding.precision % 1 !== 0
|
|
214
|
-
definition.overrideFloatEncoding.precision < 0) {
|
|
213
|
+
if (definition.overrideFloatEncoding.precision % 1 !== 0
|
|
214
|
+
|| definition.overrideFloatEncoding.precision < 0) {
|
|
215
215
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
216
216
|
compat option overrideFloatEncoding.precision must be a positive integer!`);
|
|
217
217
|
}
|
|
@@ -223,9 +223,9 @@ compat option overrideFloatEncoding.precision must be a positive integer!`);
|
|
|
223
223
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
224
224
|
compat option overrideFloatEncoding.size must be a number!`);
|
|
225
225
|
}
|
|
226
|
-
if (definition.overrideFloatEncoding.size % 1 !== 0
|
|
227
|
-
definition.overrideFloatEncoding.size < 1
|
|
228
|
-
definition.overrideFloatEncoding.size > 4) {
|
|
226
|
+
if (definition.overrideFloatEncoding.size % 1 !== 0
|
|
227
|
+
|| definition.overrideFloatEncoding.size < 1
|
|
228
|
+
|| definition.overrideFloatEncoding.size > 4) {
|
|
229
229
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
230
230
|
compat option overrideFloatEncoding.size must be an integer between 1 and 4!`);
|
|
231
231
|
}
|
|
@@ -277,9 +277,9 @@ error in compat option commandClasses.remove`);
|
|
|
277
277
|
Invalid Command Class "${key}" specified in compat option commandClasses.remove!`);
|
|
278
278
|
}
|
|
279
279
|
if ((0, typeguards_1.isObject)(info) && "endpoints" in info) {
|
|
280
|
-
if (info.endpoints === "*"
|
|
281
|
-
((0, typeguards_1.isArray)(info.endpoints)
|
|
282
|
-
info.endpoints.every((i) => typeof i === "number"))) {
|
|
280
|
+
if (info.endpoints === "*"
|
|
281
|
+
|| ((0, typeguards_1.isArray)(info.endpoints)
|
|
282
|
+
&& info.endpoints.every((i) => typeof i === "number"))) {
|
|
283
283
|
removeCCs.set(cc, info.endpoints);
|
|
284
284
|
}
|
|
285
285
|
else {
|
|
@@ -296,8 +296,8 @@ All values in compat option commandClasses.remove must be objects with an "endpo
|
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
298
|
if (definition.alarmMapping != undefined) {
|
|
299
|
-
if (!(0, typeguards_1.isArray)(definition.alarmMapping)
|
|
300
|
-
!definition.alarmMapping.every((m) => (0, typeguards_1.isObject)(m))) {
|
|
299
|
+
if (!(0, typeguards_1.isArray)(definition.alarmMapping)
|
|
300
|
+
|| !definition.alarmMapping.every((m) => (0, typeguards_1.isObject)(m))) {
|
|
301
301
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
302
302
|
compat option alarmMapping must be an array where all items are objects!`);
|
|
303
303
|
}
|
|
@@ -387,10 +387,10 @@ Property version in compat option commandClasses.add, endpoint ${endpoint} must
|
|
|
387
387
|
endpoints.set(endpoint, parsed);
|
|
388
388
|
};
|
|
389
389
|
// Parse root endpoint info if given
|
|
390
|
-
if (definition.isSupported != undefined
|
|
391
|
-
definition.isControlled != undefined
|
|
392
|
-
definition.version != undefined
|
|
393
|
-
definition.secure != undefined) {
|
|
390
|
+
if (definition.isSupported != undefined
|
|
391
|
+
|| definition.isControlled != undefined
|
|
392
|
+
|| definition.version != undefined
|
|
393
|
+
|| definition.secure != undefined) {
|
|
394
394
|
// We have info for the root endpoint
|
|
395
395
|
parseEndpointInfo(0, definition);
|
|
396
396
|
}
|
|
@@ -421,8 +421,8 @@ error in compat option alarmMapping, mapping #${index}: property "from" must be
|
|
|
421
421
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
422
422
|
error in compat option alarmMapping, mapping #${index}: property "from.alarmType" must be a number!`);
|
|
423
423
|
}
|
|
424
|
-
if (definition.from.alarmLevel != undefined
|
|
425
|
-
typeof definition.from.alarmLevel !== "number") {
|
|
424
|
+
if (definition.from.alarmLevel != undefined
|
|
425
|
+
&& typeof definition.from.alarmLevel !== "number") {
|
|
426
426
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
427
427
|
error in compat option alarmMapping, mapping #${index}: if property "from.alarmLevel" is given, it must be a number!`);
|
|
428
428
|
}
|
|
@@ -472,8 +472,8 @@ class CompatOverrideQueries {
|
|
|
472
472
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
473
473
|
Property "method" in compat option overrideQueries, CC ${(0, safe_1.getCCName)(cc)} must be a string!`);
|
|
474
474
|
}
|
|
475
|
-
else if (info.matchArgs != undefined
|
|
476
|
-
!(0, typeguards_1.isArray)(info.matchArgs)) {
|
|
475
|
+
else if (info.matchArgs != undefined
|
|
476
|
+
&& !(0, typeguards_1.isArray)(info.matchArgs)) {
|
|
477
477
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
478
478
|
Property "matchArgs" in compat option overrideQueries, CC ${(0, safe_1.getCCName)(cc)} must be an array!`);
|
|
479
479
|
}
|
|
@@ -481,8 +481,8 @@ Property "matchArgs" in compat option overrideQueries, CC ${(0, safe_1.getCCName
|
|
|
481
481
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
482
482
|
Property "result" is missing in in compat option overrideQueries, CC ${(0, safe_1.getCCName)(cc)}!`);
|
|
483
483
|
}
|
|
484
|
-
else if (info.endpoint != undefined
|
|
485
|
-
typeof info.endpoint !== "number") {
|
|
484
|
+
else if (info.endpoint != undefined
|
|
485
|
+
&& typeof info.endpoint !== "number") {
|
|
486
486
|
(0, utils_safe_1.throwInvalidConfig)("devices", `config/devices/${filename}:
|
|
487
487
|
Property "endpoint" in compat option overrideQueries, CC ${(0, safe_1.getCCName)(cc)} must be a number!`);
|
|
488
488
|
}
|
|
@@ -540,8 +540,9 @@ Property "${key}" in compat option overrideQueries must be a single override obj
|
|
|
540
540
|
if (query.matchArgs) {
|
|
541
541
|
if (query.matchArgs.length !== args.length)
|
|
542
542
|
continue;
|
|
543
|
-
if (!query.matchArgs.every((arg, i) => arg === args[i]))
|
|
543
|
+
if (!query.matchArgs.every((arg, i) => arg === args[i])) {
|
|
544
544
|
continue;
|
|
545
|
+
}
|
|
545
546
|
}
|
|
546
547
|
return (0, safe_2.pick)(query, ["result", "persistValues", "extendMetadata"]);
|
|
547
548
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompatConfig.js","sourceRoot":"","sources":["../../src/devices/CompatConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CompatConfig.js","sourceRoot":"","sources":["../../src/devices/CompatConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionalItem.d.ts","sourceRoot":"","sources":["../../src/devices/ConditionalItem.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAIrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,gCAAgC;AAChC,MAAM,WAAW,eAAe,CAAC,CAAC;IACjC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;CACtD;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,eAAe,CAAC,CAAC,CAAC,CAaxE;AAED,kEAAkE;AAClE,wBAAgB,gBAAgB,CAAC,CAAC,EACjC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC,EACxB,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAC5B,OAAO,CAcT;AAED,wBAAgB,iBAAiB,CAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,WAAW,EAAE,MAAM,GACjB,IAAI,CAQN;AAED,MAAM,MAAM,sBAAsB,CACjC,CAAC,SACE,eAAe,CAAC,OAAO,CAAC,GACxB,eAAe,CAAC,OAAO,CAAC,EAAE,GAC1B,YAAY,
|
|
1
|
+
{"version":3,"file":"ConditionalItem.d.ts","sourceRoot":"","sources":["../../src/devices/ConditionalItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,8 +11,8 @@ function isConditionalItem(val) {
|
|
|
11
11
|
if (typeof val !== "object" || val == undefined)
|
|
12
12
|
return false;
|
|
13
13
|
// Conditional items may have a string-valued condition
|
|
14
|
-
if (typeof val.condition !== "string"
|
|
15
|
-
typeof val.condition !== "undefined") {
|
|
14
|
+
if (typeof val.condition !== "string"
|
|
15
|
+
&& typeof val.condition !== "undefined") {
|
|
16
16
|
return false;
|
|
17
17
|
}
|
|
18
18
|
// Conditional items must have an evaluateCondition method
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionalItem.js","sourceRoot":"","sources":["../../src/devices/ConditionalItem.ts"],"names":[],"mappings":";;;AAAA,8CAAkE;AAClE,gDAAqD;AACrD,4DAAsD;AACtD,oCAAoC;AACpC,8CAAmD;AASnD,SAAgB,iBAAiB,CAAI,GAAQ;IAC5C,+CAA+C;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,IAAI,SAAS;QAAE,OAAO,KAAK,CAAC;IAC9D,uDAAuD;IACvD,IACC,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;
|
|
1
|
+
{"version":3,"file":"ConditionalItem.js","sourceRoot":"","sources":["../../src/devices/ConditionalItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionalPrimitive.d.ts","sourceRoot":"","sources":["../../src/devices/ConditionalPrimitive.ts"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"ConditionalPrimitive.d.ts","sourceRoot":"","sources":["../../src/devices/ConditionalPrimitive.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,eAAe,EAAoB,MAAM,mBAAmB,CAAC;AAC3E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,KAAK,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,QAAQ,GAAG,MAAM,GAC7D,CAAC,SAAS,QAAQ,GAAG,MAAM,GAC3B,CAAC,SAAS,SAAS,GAAG,OAAO,GAC7B,KAAK,CAAC;AAET,wBAAgB,yBAAyB,CACxC,CAAC,SAAS,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAEzC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,CAAC,EACZ,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,GAAG,EACf,kBAAkB,GAAE,MAAW,GAC7B,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CA2BtC;AAED,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,IACjE,CAAC,GACD,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;AAEpC,qBAAa,2BAA2B,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,CAC3E,YAAW,eAAe,CAAC,CAAC,CAAC;aAGZ,KAAK,EAAE,CAAC;aACR,SAAS,CAAC;gBADV,KAAK,EAAE,CAAC,EACR,SAAS,CAAC,oBAAQ;IAG5B,iBAAiB,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,CAAC,GAAG,SAAS;CAI5D"}
|
|
@@ -5,11 +5,11 @@ const typeguards_1 = require("alcalzone-shared/typeguards");
|
|
|
5
5
|
const utils_safe_1 = require("../utils_safe");
|
|
6
6
|
const ConditionalItem_1 = require("./ConditionalItem");
|
|
7
7
|
function parseConditionalPrimitive(filename, valueType, propertyName, definition, errorMessagePrefix = "") {
|
|
8
|
-
if ((0, typeguards_1.isArray)(definition)
|
|
9
|
-
definition.every((i, index, dfn) =>
|
|
8
|
+
if ((0, typeguards_1.isArray)(definition)
|
|
9
|
+
&& definition.every((i, index, dfn) =>
|
|
10
10
|
// In arrays, only the last item may be non-conditional
|
|
11
|
-
((0, typeguards_1.isObject)(i) && typeof i.value === valueType)
|
|
12
|
-
(index === dfn.length - 1 && typeof i === valueType))) {
|
|
11
|
+
((0, typeguards_1.isObject)(i) && typeof i.value === valueType)
|
|
12
|
+
|| (index === dfn.length - 1 && typeof i === valueType))) {
|
|
13
13
|
return definition.map((d) => typeof d === valueType
|
|
14
14
|
? new ConditionalPrimitiveVariant(d)
|
|
15
15
|
: new ConditionalPrimitiveVariant(d.value, typeof d.$if === "string" ? d.$if : undefined));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConditionalPrimitive.js","sourceRoot":"","sources":["../../src/devices/ConditionalPrimitive.ts"],"names":[],"mappings":";;;AAAA,4DAAgE;AAChE,8CAAmD;AACnD,uDAA2E;
|
|
1
|
+
{"version":3,"file":"ConditionalPrimitive.js","sourceRoot":"","sources":["../../src/devices/ConditionalPrimitive.ts"],"names":[],"mappings":";;;AAAA,4DAAgE;AAChE,8CAAmD;AACnD,uDAA2E;AAQ3E,SAAgB,yBAAyB,CAGxC,QAAgB,EAChB,SAAY,EACZ,YAAoB,EACpB,UAAe,EACf,qBAA6B,EAAE;IAE/B,IACC,IAAA,oBAAO,EAAC,UAAU,CAAC;WACf,UAAoB,CAAC,KAAK,CAC7B,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QACjB,uDAAuD;QACvD,CAAC,IAAA,qBAAQ,EAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;eAC1C,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,SAAS,CAAC,CACxD,EACA;QACD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAChC,OAAO,CAAC,KAAK,SAAS;YACrB,CAAC,CAAC,IAAI,2BAA2B,CAAiB,CAAC,CAAC;YACpD,CAAC,CAAC,IAAI,2BAA2B,CAChC,CAAC,CAAC,KAAK,EACP,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAC7C,CACF,CAAC;KACF;SAAM,IAAI,OAAO,UAAU,KAAK,SAAS,EAAE;QAC3C,OAAO,UAAU,CAAC;KAClB;SAAM;QACN,IAAA,+BAAkB,EACjB,QAAQ,EACR,kCAAkC,QAAQ;EAC3C,kBAAkB,GAAG,YAAY,cAAc,SAAS,+BAA+B,SAAS,UAAU,CACzG,CAAC;KACF;AACF,CAAC;AAnCD,8DAmCC;AAMD,MAAa,2BAA2B;IAGvC,YACiB,KAAQ,EACR,SAAkB;QADlB,UAAK,GAAL,KAAK,CAAG;QACR,cAAS,GAAT,SAAS,CAAS;IAChC,CAAC;IAEG,iBAAiB,CAAC,QAAmB;QAC3C,IAAI,CAAC,IAAA,kCAAgB,EAAC,IAAI,EAAE,QAAQ,CAAC;YAAE,OAAO;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;CACD;AAZD,kEAYC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { type JSONObject } from "@zwave-js/shared";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { type AssociationConfig, ConditionalAssociationConfig } from "./AssociationConfig";
|
|
4
|
+
import { type CompatConfig, ConditionalCompatConfig } from "./CompatConfig";
|
|
5
5
|
import { type ConditionalPrimitive } from "./ConditionalPrimitive";
|
|
6
6
|
import { ConditionalDeviceMetadata, type DeviceMetadata } from "./DeviceMetadata";
|
|
7
7
|
import { ConditionalEndpointConfig, type EndpointConfig } from "./EndpointConfig";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceConfig.d.ts","sourceRoot":"","sources":["../../src/devices/DeviceConfig.ts"],"names":[],"mappings":";AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"DeviceConfig.d.ts","sourceRoot":"","sources":["../../src/devices/DeviceConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,15 +61,16 @@ async function hasChangedDeviceFiles(devicesRoot, dir, lastChange) {
|
|
|
61
61
|
for (const f of filesAndDirs) {
|
|
62
62
|
const fullPath = path_1.default.join(dir, f);
|
|
63
63
|
const stat = await fs.stat(fullPath);
|
|
64
|
-
if ((dir !== devicesRoot || f !== "index.json")
|
|
65
|
-
(stat.isFile() || stat.isDirectory())
|
|
66
|
-
stat.mtime > lastChange) {
|
|
64
|
+
if ((dir !== devicesRoot || f !== "index.json")
|
|
65
|
+
&& (stat.isFile() || stat.isDirectory())
|
|
66
|
+
&& stat.mtime > lastChange) {
|
|
67
67
|
return true;
|
|
68
68
|
}
|
|
69
69
|
else if (stat.isDirectory()) {
|
|
70
70
|
// we need to go deeper!
|
|
71
|
-
if (await hasChangedDeviceFiles(devicesRoot, fullPath, lastChange))
|
|
71
|
+
if (await hasChangedDeviceFiles(devicesRoot, fullPath, lastChange)) {
|
|
72
72
|
return true;
|
|
73
|
+
}
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
return false;
|
|
@@ -81,12 +82,14 @@ async function hasChangedDeviceFiles(devicesRoot, dir, lastChange) {
|
|
|
81
82
|
async function generateIndex(devicesDir, isEmbedded, extractIndexEntries, logger) {
|
|
82
83
|
const index = [];
|
|
83
84
|
(0, JsonTemplate_1.clearTemplateCache)();
|
|
84
|
-
const configFiles = await (0, shared_1.enumFilesRecursive)(devicesDir, (file) => file.endsWith(".json")
|
|
85
|
-
!file.endsWith("index.json")
|
|
86
|
-
!file.includes("/templates/")
|
|
87
|
-
!file.includes("\\templates\\"));
|
|
85
|
+
const configFiles = await (0, shared_1.enumFilesRecursive)(devicesDir, (file) => file.endsWith(".json")
|
|
86
|
+
&& !file.endsWith("index.json")
|
|
87
|
+
&& !file.includes("/templates/")
|
|
88
|
+
&& !file.includes("\\templates\\"));
|
|
88
89
|
// Add the embedded devices dir as a fallback if necessary
|
|
89
|
-
const fallbackDirs = devicesDir !== exports.embeddedDevicesDir
|
|
90
|
+
const fallbackDirs = devicesDir !== exports.embeddedDevicesDir
|
|
91
|
+
? [exports.embeddedDevicesDir]
|
|
92
|
+
: undefined;
|
|
90
93
|
for (const file of configFiles) {
|
|
91
94
|
const relativePath = path_1.default
|
|
92
95
|
.relative(devicesDir, file)
|
|
@@ -237,9 +240,9 @@ function isHexKeyWith4Digits(val) {
|
|
|
237
240
|
}
|
|
238
241
|
const firmwareVersionRegex = /^\d{1,3}\.\d{1,3}(\.\d{1,3})?$/;
|
|
239
242
|
function isFirmwareVersion(val) {
|
|
240
|
-
return (typeof val === "string"
|
|
241
|
-
firmwareVersionRegex.test(val)
|
|
242
|
-
val
|
|
243
|
+
return (typeof val === "string"
|
|
244
|
+
&& firmwareVersionRegex.test(val)
|
|
245
|
+
&& val
|
|
243
246
|
.split(".")
|
|
244
247
|
.map((str) => parseInt(str, 10))
|
|
245
248
|
.every((num) => num >= 0 && num <= 255));
|
|
@@ -268,10 +271,10 @@ manufacturer id must be a lowercase hexadecimal number with 4 digits`);
|
|
|
268
271
|
for (const prop of ["manufacturer", "label", "description"]) {
|
|
269
272
|
this[prop] = (0, ConditionalPrimitive_1.parseConditionalPrimitive)(filename, "string", prop, definition[prop]);
|
|
270
273
|
}
|
|
271
|
-
if (!(0, typeguards_1.isArray)(definition.devices)
|
|
272
|
-
!definition.devices.every((dev) => (0, typeguards_1.isObject)(dev)
|
|
273
|
-
isHexKeyWith4Digits(dev.productType)
|
|
274
|
-
isHexKeyWith4Digits(dev.productId))) {
|
|
274
|
+
if (!(0, typeguards_1.isArray)(definition.devices)
|
|
275
|
+
|| !definition.devices.every((dev) => (0, typeguards_1.isObject)(dev)
|
|
276
|
+
&& isHexKeyWith4Digits(dev.productType)
|
|
277
|
+
&& isHexKeyWith4Digits(dev.productId))) {
|
|
275
278
|
(0, utils_safe_1.throwInvalidConfig)(`device`, `packages/config/config/devices/${filename}:
|
|
276
279
|
devices is malformed (not an object or type/id that is not a lowercase 4-digit hex key)`);
|
|
277
280
|
}
|
|
@@ -279,9 +282,9 @@ devices is malformed (not an object or type/id that is not a lowercase 4-digit h
|
|
|
279
282
|
productType: parseInt(productType, 16),
|
|
280
283
|
productId: parseInt(productId, 16),
|
|
281
284
|
}));
|
|
282
|
-
if (!(0, typeguards_1.isObject)(definition.firmwareVersion)
|
|
283
|
-
!isFirmwareVersion(definition.firmwareVersion.min)
|
|
284
|
-
!isFirmwareVersion(definition.firmwareVersion.max)) {
|
|
285
|
+
if (!(0, typeguards_1.isObject)(definition.firmwareVersion)
|
|
286
|
+
|| !isFirmwareVersion(definition.firmwareVersion.min)
|
|
287
|
+
|| !isFirmwareVersion(definition.firmwareVersion.max)) {
|
|
285
288
|
(0, utils_safe_1.throwInvalidConfig)(`device`, `packages/config/config/devices/${filename}:
|
|
286
289
|
firmwareVersion is malformed or invalid. Must be x.y or x.y.z where x, y, and z are integers between 0 and 255`);
|
|
287
290
|
}
|
|
@@ -293,8 +296,8 @@ firmwareVersion.min ${min} must not be greater than firmwareVersion.max ${max}`)
|
|
|
293
296
|
}
|
|
294
297
|
this.firmwareVersion = { min, max };
|
|
295
298
|
}
|
|
296
|
-
if (definition.preferred != undefined
|
|
297
|
-
definition.preferred !== true) {
|
|
299
|
+
if (definition.preferred != undefined
|
|
300
|
+
&& definition.preferred !== true) {
|
|
298
301
|
(0, utils_safe_1.throwInvalidConfig)(`device`, `packages/config/config/devices/${filename}:
|
|
299
302
|
preferred must be true or omitted`);
|
|
300
303
|
}
|
|
@@ -342,8 +345,8 @@ proprietary is not an object`);
|
|
|
342
345
|
this.proprietary = definition.proprietary;
|
|
343
346
|
}
|
|
344
347
|
if (definition.compat != undefined) {
|
|
345
|
-
if ((0, typeguards_1.isArray)(definition.compat)
|
|
346
|
-
definition.compat.every((item) => (0, typeguards_1.isObject)(item))) {
|
|
348
|
+
if ((0, typeguards_1.isArray)(definition.compat)
|
|
349
|
+
&& definition.compat.every((item) => (0, typeguards_1.isObject)(item))) {
|
|
347
350
|
// Make sure all conditions are valid
|
|
348
351
|
for (const entry of definition.compat) {
|
|
349
352
|
(0, ConditionalItem_1.validateCondition)(filename, entry, `At least one entry of compat contains an`);
|
|
@@ -410,8 +413,8 @@ class DeviceConfig {
|
|
|
410
413
|
getAssociationConfigForEndpoint(endpointIndex, group) {
|
|
411
414
|
if (endpointIndex === 0) {
|
|
412
415
|
// The root endpoint's associations may be configured separately or as part of "endpoints"
|
|
413
|
-
return (this.associations?.get(group)
|
|
414
|
-
this.endpoints?.get(0)?.associations?.get(group));
|
|
416
|
+
return (this.associations?.get(group)
|
|
417
|
+
?? this.endpoints?.get(0)?.associations?.get(group));
|
|
415
418
|
}
|
|
416
419
|
else {
|
|
417
420
|
// The other endpoints can only have a configuration as part of "endpoints"
|
|
@@ -483,7 +486,7 @@ class DeviceConfig {
|
|
|
483
486
|
}
|
|
484
487
|
}
|
|
485
488
|
// Clone proprietary config
|
|
486
|
-
if (this.proprietary && Object.keys(
|
|
489
|
+
if (this.proprietary && Object.keys(this.proprietary).length > 0) {
|
|
487
490
|
hashable.proprietary = sortObject({ ...this.proprietary });
|
|
488
491
|
}
|
|
489
492
|
// Clone relevant compat flags
|