@zwave-js/config 12.12.0 → 13.0.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/build/ConfigManager.d.ts +0 -69
  2. package/build/ConfigManager.d.ts.map +1 -1
  3. package/build/ConfigManager.js +1 -542
  4. package/build/ConfigManager.js.map +1 -1
  5. package/build/JsonTemplate.js +2 -3
  6. package/build/JsonTemplate.js.map +1 -1
  7. package/build/Logic.js +2 -3
  8. package/build/Logic.js.map +1 -1
  9. package/build/Manufacturers.js +2 -3
  10. package/build/Manufacturers.js.map +1 -1
  11. package/build/devices/ConditionalItem.js +4 -5
  12. package/build/devices/ConditionalItem.js.map +1 -1
  13. package/build/devices/ConditionalPrimitive.d.ts.map +1 -1
  14. package/build/devices/ConditionalPrimitive.js +2 -2
  15. package/build/devices/ConditionalPrimitive.js.map +1 -1
  16. package/build/devices/DeviceConfig.d.ts +0 -1
  17. package/build/devices/DeviceConfig.d.ts.map +1 -1
  18. package/build/devices/DeviceConfig.js +5 -5
  19. package/build/devices/DeviceConfig.js.map +1 -1
  20. package/build/devices/DeviceMetadata.d.ts.map +1 -1
  21. package/build/devices/ParamInformation.d.ts.map +1 -1
  22. package/build/devices/ParamInformation.js +2 -2
  23. package/build/devices/ParamInformation.js.map +1 -1
  24. package/build/index.d.ts +0 -6
  25. package/build/index.d.ts.map +1 -1
  26. package/build/index.js +0 -6
  27. package/build/index.js.map +1 -1
  28. package/build/index_safe.d.ts +0 -6
  29. package/build/index_safe.d.ts.map +1 -1
  30. package/build/index_safe.js +0 -6
  31. package/build/index_safe.js.map +1 -1
  32. package/build/utils.js +6 -6
  33. package/build/utils.js.map +1 -1
  34. package/build/utils_safe.js +3 -3
  35. package/build/utils_safe.js.map +1 -1
  36. package/config/devices/0x0060/an158.json +14 -20
  37. package/config/devices/0x0063/59350_59372_59373_zwa3016.json +92 -0
  38. package/config/devices/0x010f/fgrm222_0_24.23.json +18 -1
  39. package/config/devices/0x0129/ntb612-zw2.json +1 -1
  40. package/config/devices/0x0129/ntb622-zw2.json +1 -1
  41. package/config/devices/0x0129/ntb632-zw2.json +1 -1
  42. package/config/devices/0x0129/ntb642-zw2.json +1 -1
  43. package/config/devices/0x0129/ntm612-zw2.json +1 -1
  44. package/config/devices/0x0129/ntm617-zw2.json +1 -1
  45. package/config/devices/0x0129/ntm622-zw2.json +1 -1
  46. package/config/devices/0x0129/ntm627-zw2.json +1 -1
  47. package/config/devices/0x0129/ntm632-zw2.json +1 -1
  48. package/config/devices/0x0129/ntm637-zw2.json +1 -1
  49. package/config/devices/0x0129/ntm642-zw2.json +1 -1
  50. package/config/devices/0x0129/ntm647-zw2.json +1 -1
  51. package/config/devices/0x0129/ntt610.json +1 -2
  52. package/config/devices/0x0129/ntt612-zw2.json +1 -1
  53. package/config/devices/0x0129/ntt622-zw2.json +1 -1
  54. package/config/devices/0x0129/templates/yale_template.json +22 -7
  55. package/config/devices/0x0129/yrc_yrd_226_246_256_446-zw2.json +11 -1
  56. package/config/devices/0x0129/yrd4x0-f-zw3.json +109 -0
  57. package/config/devices/0x0148/cometz_700.json +49 -0
  58. package/config/devices/0x014a/gdzw7-eco.json +78 -0
  59. package/config/devices/0x014f/{gd00z-7.json → gd00z-6-7-8.json} +1 -1
  60. package/config/devices/0x015f/mh-s412-5102.json +213 -59
  61. package/config/devices/0x027a/templates/zooz_template.json +32 -0
  62. package/config/devices/0x027a/zen30.json +67 -15
  63. package/config/devices/0x027a/zen32.json +1 -2
  64. package/config/devices/0x027a/zse11.json +10 -0
  65. package/config/devices/0x0346/flood_freeze_sensor.json +77 -0
  66. package/config/devices/0x0458/61303_zw3010.json +73 -0
  67. package/config/manufacturers.json +1 -0
  68. package/package.json +11 -10
  69. package/build/DeviceClasses.d.ts +0 -26
  70. package/build/DeviceClasses.d.ts.map +0 -1
  71. package/build/DeviceClasses.js +0 -127
  72. package/build/DeviceClasses.js.map +0 -1
  73. package/build/Indicators.d.ts +0 -15
  74. package/build/Indicators.d.ts.map +0 -1
  75. package/build/Indicators.js +0 -47
  76. package/build/Indicators.js.map +0 -1
  77. package/build/Meters.d.ts +0 -15
  78. package/build/Meters.d.ts.map +0 -1
  79. package/build/Meters.js +0 -44
  80. package/build/Meters.js.map +0 -1
  81. package/build/Notifications.d.ts +0 -71
  82. package/build/Notifications.d.ts.map +0 -1
  83. package/build/Notifications.js +0 -223
  84. package/build/Notifications.js.map +0 -1
  85. package/build/Scales.d.ts +0 -15
  86. package/build/Scales.d.ts.map +0 -1
  87. package/build/Scales.js +0 -37
  88. package/build/Scales.js.map +0 -1
  89. package/build/SensorTypes.d.ts +0 -11
  90. package/build/SensorTypes.d.ts.map +0 -1
  91. package/build/SensorTypes.js +0 -48
  92. package/build/SensorTypes.js.map +0 -1
  93. package/config/deviceClasses.json +0 -447
  94. package/config/indicators.json +0 -166
  95. package/config/meters.json +0 -47
  96. package/config/scales.json +0 -85
  97. package/config/sensorTypes.json +0 -707
@@ -3,24 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.loadSensorTypesInternal = exports.loadNamedScalesInternal = exports.loadNotificationsInternal = exports.loadMetersInternal = exports.loadIndicatorsInternal = exports.loadDeviceClassesInternal = exports.ConfigManager = void 0;
6
+ exports.ConfigManager = void 0;
7
7
  const core_1 = require("@zwave-js/core");
8
8
  const shared_1 = require("@zwave-js/shared");
9
- const typeguards_1 = require("alcalzone-shared/typeguards");
10
9
  const fs_extra_1 = require("fs-extra");
11
- const json5_1 = __importDefault(require("json5"));
12
10
  const node_path_1 = __importDefault(require("node:path"));
13
- const DeviceClasses_1 = require("./DeviceClasses");
14
- const Indicators_1 = require("./Indicators");
15
11
  const Logger_1 = require("./Logger");
16
12
  const Manufacturers_1 = require("./Manufacturers");
17
- const Meters_1 = require("./Meters");
18
- const Notifications_1 = require("./Notifications");
19
- const Scales_1 = require("./Scales");
20
- const SensorTypes_1 = require("./SensorTypes");
21
13
  const DeviceConfig_1 = require("./devices/DeviceConfig");
22
14
  const utils_1 = require("./utils");
23
- const utils_safe_1 = require("./utils_safe");
24
15
  class ConfigManager {
25
16
  constructor(options = {}) {
26
17
  this.logger = new Logger_1.ConfigLogger(options.logContainer ?? new core_1.ZWaveLogContainer({ enabled: false }));
@@ -34,20 +25,6 @@ class ConfigManager {
34
25
  return this._configVersion;
35
26
  }
36
27
  logger;
37
- _indicators;
38
- get indicators() {
39
- if (!this._indicators) {
40
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
41
- }
42
- return this._indicators;
43
- }
44
- _indicatorProperties;
45
- get indicatorProperties() {
46
- if (!this._indicatorProperties) {
47
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
48
- }
49
- return this._indicatorProperties;
50
- }
51
28
  _manufacturers;
52
29
  get manufacturers() {
53
30
  if (!this._manufacturers) {
@@ -55,51 +32,9 @@ class ConfigManager {
55
32
  }
56
33
  return this._manufacturers;
57
34
  }
58
- _namedScales;
59
- get namedScales() {
60
- if (!this._namedScales) {
61
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
62
- }
63
- return this._namedScales;
64
- }
65
- _sensorTypes;
66
- get sensorTypes() {
67
- if (!this._sensorTypes) {
68
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
69
- }
70
- return this._sensorTypes;
71
- }
72
- _meters;
73
- get meters() {
74
- if (!this._meters) {
75
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
76
- }
77
- return this._meters;
78
- }
79
- _basicDeviceClasses;
80
- get basicDeviceClasses() {
81
- if (!this._basicDeviceClasses) {
82
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
83
- }
84
- return this._basicDeviceClasses;
85
- }
86
- _genericDeviceClasses;
87
- get genericDeviceClasses() {
88
- if (!this._genericDeviceClasses) {
89
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
90
- }
91
- return this._genericDeviceClasses;
92
- }
93
35
  deviceConfigPriorityDir;
94
36
  index;
95
37
  fulltextIndex;
96
- _notifications;
97
- get notifications() {
98
- if (!this._notifications) {
99
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
100
- }
101
- return this._notifications;
102
- }
103
38
  _useExternalConfig = false;
104
39
  get useExternalConfig() {
105
40
  return this._useExternalConfig;
@@ -118,14 +53,8 @@ class ConfigManager {
118
53
  this._configVersion = await (0, utils_1.getEmbeddedConfigVersion)();
119
54
  }
120
55
  this.logger.print(`version ${this._configVersion}`, "info");
121
- await this.loadDeviceClasses();
122
56
  await this.loadManufacturers();
123
57
  await this.loadDeviceIndex();
124
- await this.loadNotifications();
125
- await this.loadNamedScales();
126
- await this.loadSensorTypes();
127
- await this.loadMeters();
128
- await this.loadIndicators();
129
58
  }
130
59
  async loadManufacturers() {
131
60
  try {
@@ -173,204 +102,6 @@ class ConfigManager {
173
102
  }
174
103
  this._manufacturers.set(manufacturerId, manufacturerName);
175
104
  }
176
- async loadIndicators() {
177
- try {
178
- const config = await loadIndicatorsInternal(this._useExternalConfig);
179
- this._indicators = config.indicators;
180
- this._indicatorProperties = config.properties;
181
- }
182
- catch (e) {
183
- // If the config file is missing or invalid, don't try to find it again
184
- if ((0, core_1.isZWaveError)(e) && e.code === core_1.ZWaveErrorCodes.Config_Invalid) {
185
- if (process.env.NODE_ENV !== "test") {
186
- this.logger.print(`Could not load indicators config: ${e.message}`, "error");
187
- }
188
- if (!this._indicators)
189
- this._indicators = new Map();
190
- if (!this._indicatorProperties) {
191
- this._indicatorProperties = new Map();
192
- }
193
- }
194
- else {
195
- // This is an unexpected error
196
- throw e;
197
- }
198
- }
199
- }
200
- /**
201
- * Looks up the label for a given indicator id
202
- */
203
- lookupIndicator(indicatorId) {
204
- if (!this._indicators) {
205
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
206
- }
207
- return this._indicators.get(indicatorId);
208
- }
209
- /**
210
- * Looks up the property definition for a given indicator property id
211
- */
212
- lookupProperty(propertyId) {
213
- if (!this._indicatorProperties) {
214
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
215
- }
216
- return this._indicatorProperties.get(propertyId);
217
- }
218
- async loadNamedScales() {
219
- try {
220
- this._namedScales = await loadNamedScalesInternal(this._useExternalConfig);
221
- }
222
- catch (e) {
223
- // If the config file is missing or invalid, don't try to find it again
224
- if ((0, core_1.isZWaveError)(e) && e.code === core_1.ZWaveErrorCodes.Config_Invalid) {
225
- if (process.env.NODE_ENV !== "test") {
226
- this.logger.print(`Could not load scales config: ${e.message}`, "error");
227
- }
228
- if (!this._namedScales)
229
- this._namedScales = new Map();
230
- }
231
- else {
232
- // This is an unexpected error
233
- throw e;
234
- }
235
- }
236
- }
237
- /**
238
- * Looks up all scales defined under a given name
239
- */
240
- lookupNamedScaleGroup(name) {
241
- if (!this._namedScales) {
242
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
243
- }
244
- return this._namedScales.get(name);
245
- }
246
- /** Looks up a scale definition for a given scale type */
247
- lookupNamedScale(name, scale) {
248
- const group = this.lookupNamedScaleGroup(name);
249
- return group?.get(scale) ?? (0, Scales_1.getDefaultScale)(scale);
250
- }
251
- async loadSensorTypes() {
252
- try {
253
- this._sensorTypes = await loadSensorTypesInternal(this, this._useExternalConfig);
254
- }
255
- catch (e) {
256
- // If the config file is missing or invalid, don't try to find it again
257
- if ((0, core_1.isZWaveError)(e) && e.code === core_1.ZWaveErrorCodes.Config_Invalid) {
258
- if (process.env.NODE_ENV !== "test") {
259
- this.logger.print(`Could not load sensor types config: ${e.message}`, "error");
260
- }
261
- if (!this._sensorTypes)
262
- this._sensorTypes = new Map();
263
- }
264
- else {
265
- // This is an unexpected error
266
- throw e;
267
- }
268
- }
269
- }
270
- /**
271
- * Looks up the configuration for a given sensor type
272
- */
273
- lookupSensorType(sensorType) {
274
- if (!this._sensorTypes) {
275
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
276
- }
277
- return this._sensorTypes.get(sensorType);
278
- }
279
- /** Looks up a scale definition for a given sensor type */
280
- lookupSensorScale(sensorType, scale) {
281
- const sensor = this.lookupSensorType(sensorType);
282
- return sensor?.scales.get(scale) ?? (0, Scales_1.getDefaultScale)(scale);
283
- }
284
- getSensorTypeName(sensorType) {
285
- const sensor = this.lookupSensorType(sensorType);
286
- if (sensor)
287
- return sensor.label;
288
- return `UNKNOWN (${(0, shared_1.num2hex)(sensorType)})`;
289
- }
290
- async loadMeters() {
291
- try {
292
- this._meters = await loadMetersInternal(this._useExternalConfig);
293
- }
294
- catch (e) {
295
- // If the config file is missing or invalid, don't try to find it again
296
- if ((0, core_1.isZWaveError)(e) && e.code === core_1.ZWaveErrorCodes.Config_Invalid) {
297
- if (process.env.NODE_ENV !== "test") {
298
- this.logger.print(`Could not meters config: ${e.message}`, "error");
299
- }
300
- if (!this._meters)
301
- this._meters = new Map();
302
- }
303
- else {
304
- // This is an unexpected error
305
- throw e;
306
- }
307
- }
308
- }
309
- /**
310
- * Looks up the notification configuration for a given notification type
311
- */
312
- lookupMeter(meterType) {
313
- if (!this._meters) {
314
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
315
- }
316
- return this._meters.get(meterType);
317
- }
318
- getMeterName(meterType) {
319
- const meter = this.lookupMeter(meterType);
320
- return meter?.name ?? `UNKNOWN (${(0, shared_1.num2hex)(meterType)})`;
321
- }
322
- /** Looks up a scale definition for a given meter type */
323
- lookupMeterScale(type, scale) {
324
- const meter = this.lookupMeter(type);
325
- return meter?.scales.get(scale) ?? (0, Meters_1.getDefaultMeterScale)(scale);
326
- }
327
- async loadDeviceClasses() {
328
- try {
329
- const config = await loadDeviceClassesInternal(this._useExternalConfig);
330
- this._basicDeviceClasses = config.basicDeviceClasses;
331
- this._genericDeviceClasses = config.genericDeviceClasses;
332
- }
333
- catch (e) {
334
- // If the config file is missing or invalid, don't try to find it again
335
- if ((0, core_1.isZWaveError)(e) && e.code === core_1.ZWaveErrorCodes.Config_Invalid) {
336
- if (process.env.NODE_ENV !== "test") {
337
- this.logger.print(`Could not load scales config: ${e.message}`, "error");
338
- }
339
- if (!this._basicDeviceClasses) {
340
- this._basicDeviceClasses = new Map();
341
- }
342
- if (!this._genericDeviceClasses) {
343
- this._genericDeviceClasses = new Map();
344
- }
345
- }
346
- else {
347
- // This is an unexpected error
348
- throw e;
349
- }
350
- }
351
- }
352
- lookupBasicDeviceClass(basic) {
353
- if (!this._basicDeviceClasses) {
354
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
355
- }
356
- return {
357
- key: basic,
358
- label: this._basicDeviceClasses.get(basic)
359
- ?? `UNKNOWN (${(0, shared_1.num2hex)(basic)})`,
360
- };
361
- }
362
- lookupGenericDeviceClass(generic) {
363
- if (!this._genericDeviceClasses) {
364
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
365
- }
366
- return (this._genericDeviceClasses.get(generic)
367
- ?? (0, DeviceClasses_1.getDefaultGenericDeviceClass)(generic));
368
- }
369
- lookupSpecificDeviceClass(generic, specific) {
370
- const genericClass = this.lookupGenericDeviceClass(generic);
371
- return (genericClass.specific.get(specific)
372
- ?? (0, DeviceClasses_1.getDefaultSpecificDeviceClass)(genericClass, specific));
373
- }
374
105
  async loadDeviceIndex() {
375
106
  try {
376
107
  // The index of config files included in this package
@@ -477,278 +208,6 @@ class ConfigManager {
477
208
  firmwareVersion,
478
209
  });
479
210
  }
480
- async loadNotifications() {
481
- try {
482
- this._notifications = await loadNotificationsInternal(this._useExternalConfig);
483
- }
484
- catch (e) {
485
- // If the config file is missing or invalid, don't try to find it again
486
- if ((0, core_1.isZWaveError)(e) && e.code === core_1.ZWaveErrorCodes.Config_Invalid) {
487
- if (process.env.NODE_ENV !== "test") {
488
- this.logger.print(`Could not load notifications config: ${e.message}`, "error");
489
- }
490
- this._notifications = new Map();
491
- }
492
- else {
493
- // This is an unexpected error
494
- throw e;
495
- }
496
- }
497
- }
498
- /**
499
- * Looks up the notification configuration for a given notification type
500
- */
501
- lookupNotification(notificationType) {
502
- if (!this._notifications) {
503
- throw new core_1.ZWaveError("The config has not been loaded yet!", core_1.ZWaveErrorCodes.Driver_NotReady);
504
- }
505
- return this._notifications.get(notificationType);
506
- }
507
- /**
508
- * Looks up the notification configuration for a given notification type.
509
- * If the config has not been loaded yet, this returns undefined.
510
- */
511
- lookupNotificationUnsafe(notificationType) {
512
- return this._notifications?.get(notificationType);
513
- }
514
- getNotificationName(notificationType) {
515
- return (this.lookupNotificationUnsafe(notificationType)?.name
516
- ?? `Unknown (${(0, shared_1.num2hex)(notificationType)})`);
517
- }
518
211
  }
519
212
  exports.ConfigManager = ConfigManager;
520
- /** @internal */
521
- async function loadDeviceClassesInternal(externalConfig) {
522
- const configPath = node_path_1.default.join((externalConfig && (0, utils_1.externalConfigDir)()) || utils_1.configDir, "deviceClasses.json");
523
- if (!(await (0, fs_extra_1.pathExists)(configPath))) {
524
- throw new core_1.ZWaveError("The device classes config file does not exist!", core_1.ZWaveErrorCodes.Config_Invalid);
525
- }
526
- try {
527
- const fileContents = await (0, fs_extra_1.readFile)(configPath, "utf8");
528
- const definition = json5_1.default.parse(fileContents);
529
- if (!(0, typeguards_1.isObject)(definition)) {
530
- (0, utils_safe_1.throwInvalidConfig)("device classes", `the dictionary is not an object`);
531
- }
532
- if (!(0, typeguards_1.isObject)(definition.basic)) {
533
- (0, utils_safe_1.throwInvalidConfig)("device classes", `The "basic" property is not an object`);
534
- }
535
- if (!(0, typeguards_1.isObject)(definition.generic)) {
536
- (0, utils_safe_1.throwInvalidConfig)("device classes", `The "generic" property is not an object`);
537
- }
538
- const basicDeviceClasses = new Map();
539
- for (const [key, basicClass] of Object.entries(definition.basic)) {
540
- if (!utils_safe_1.hexKeyRegexNDigits.test(key)) {
541
- (0, utils_safe_1.throwInvalidConfig)("device classes", `found invalid key "${key}" in the basic device class definition. Device classes must have lowercase hexadecimal IDs.`);
542
- }
543
- if (typeof basicClass !== "string") {
544
- (0, utils_safe_1.throwInvalidConfig)("device classes", `basic device class "${key}" must be a string`);
545
- }
546
- const keyNum = parseInt(key.slice(2), 16);
547
- basicDeviceClasses.set(keyNum, basicClass);
548
- }
549
- const genericDeviceClasses = new Map();
550
- for (const [key, genericDefinition] of Object.entries(definition.generic)) {
551
- if (!utils_safe_1.hexKeyRegexNDigits.test(key)) {
552
- (0, utils_safe_1.throwInvalidConfig)("device classes", `found invalid key "${key}" in the generic device class definition. Device classes must have lowercase hexadecimal IDs.`);
553
- }
554
- const keyNum = parseInt(key.slice(2), 16);
555
- genericDeviceClasses.set(keyNum, new DeviceClasses_1.GenericDeviceClass(keyNum, genericDefinition));
556
- }
557
- return { basicDeviceClasses, genericDeviceClasses };
558
- }
559
- catch (e) {
560
- if ((0, core_1.isZWaveError)(e)) {
561
- throw e;
562
- }
563
- else {
564
- (0, utils_safe_1.throwInvalidConfig)("device classes");
565
- }
566
- }
567
- }
568
- exports.loadDeviceClassesInternal = loadDeviceClassesInternal;
569
- /** @internal */
570
- async function loadIndicatorsInternal(externalConfig) {
571
- const indicatorsConfigPath = node_path_1.default.join((externalConfig && (0, utils_1.externalConfigDir)()) || utils_1.configDir, "indicators.json");
572
- if (!(await (0, fs_extra_1.pathExists)(indicatorsConfigPath))) {
573
- throw new core_1.ZWaveError("The config file does not exist!", core_1.ZWaveErrorCodes.Config_Invalid);
574
- }
575
- try {
576
- const fileContents = await (0, fs_extra_1.readFile)(indicatorsConfigPath, "utf8");
577
- const definition = json5_1.default.parse(fileContents);
578
- if (!(0, typeguards_1.isObject)(definition)) {
579
- (0, utils_safe_1.throwInvalidConfig)("indicators", "the database is not an object");
580
- }
581
- if (!("indicators" in definition)) {
582
- (0, utils_safe_1.throwInvalidConfig)("indicators", `the required key "indicators" is missing`);
583
- }
584
- if (!("properties" in definition)) {
585
- (0, utils_safe_1.throwInvalidConfig)("indicators", `the required key "properties" is missing`);
586
- }
587
- const indicators = new Map();
588
- for (const [id, label] of Object.entries(definition.indicators)) {
589
- if (!utils_safe_1.hexKeyRegexNDigits.test(id)) {
590
- (0, utils_safe_1.throwInvalidConfig)("indicators", `found invalid key "${id}" in "indicators". Indicators must have lowercase hexadecimal IDs.`);
591
- }
592
- if (typeof label !== "string") {
593
- (0, utils_safe_1.throwInvalidConfig)("indicators", `indicator "${id}" must be a string`);
594
- }
595
- const idNum = parseInt(id.slice(2), 16);
596
- indicators.set(idNum, label);
597
- }
598
- const properties = new Map();
599
- for (const [id, propDefinition] of Object.entries(definition.properties)) {
600
- if (!utils_safe_1.hexKeyRegexNDigits.test(id)) {
601
- (0, utils_safe_1.throwInvalidConfig)("indicators", `found invalid key "${id}" in "properties". Indicator properties must have lowercase hexadecimal IDs.`);
602
- }
603
- const idNum = parseInt(id.slice(2), 16);
604
- properties.set(idNum, new Indicators_1.IndicatorProperty(idNum, propDefinition));
605
- }
606
- return { indicators, properties };
607
- }
608
- catch (e) {
609
- if ((0, core_1.isZWaveError)(e)) {
610
- throw e;
611
- }
612
- else {
613
- (0, utils_safe_1.throwInvalidConfig)("indicators");
614
- }
615
- }
616
- }
617
- exports.loadIndicatorsInternal = loadIndicatorsInternal;
618
- /** @internal */
619
- async function loadMetersInternal(externalConfig) {
620
- const configPath = node_path_1.default.join((externalConfig && (0, utils_1.externalConfigDir)()) || utils_1.configDir, "meters.json");
621
- if (!(await (0, fs_extra_1.pathExists)(configPath))) {
622
- throw new core_1.ZWaveError("The config file does not exist!", core_1.ZWaveErrorCodes.Config_Invalid);
623
- }
624
- try {
625
- const fileContents = await (0, fs_extra_1.readFile)(configPath, "utf8");
626
- const definition = json5_1.default.parse(fileContents);
627
- if (!(0, typeguards_1.isObject)(definition)) {
628
- (0, utils_safe_1.throwInvalidConfig)("meters", "the database is not an object");
629
- }
630
- const meters = new Map();
631
- for (const [id, meterDefinition] of Object.entries(definition)) {
632
- if (!utils_safe_1.hexKeyRegexNDigits.test(id)) {
633
- (0, utils_safe_1.throwInvalidConfig)("meters", `found invalid key "${id}" at the root. Meters must have lowercase hexadecimal IDs.`);
634
- }
635
- const idNum = parseInt(id.slice(2), 16);
636
- meters.set(idNum, new Meters_1.Meter(idNum, meterDefinition));
637
- }
638
- return meters;
639
- }
640
- catch (e) {
641
- if ((0, core_1.isZWaveError)(e)) {
642
- throw e;
643
- }
644
- else {
645
- (0, utils_safe_1.throwInvalidConfig)("meters");
646
- }
647
- }
648
- }
649
- exports.loadMetersInternal = loadMetersInternal;
650
- /** @internal */
651
- async function loadNotificationsInternal(externalConfig) {
652
- const configPath = node_path_1.default.join((externalConfig && (0, utils_1.externalConfigDir)()) || utils_1.configDir, "notifications.json");
653
- if (!(await (0, fs_extra_1.pathExists)(configPath))) {
654
- throw new core_1.ZWaveError("The config file does not exist!", core_1.ZWaveErrorCodes.Config_Invalid);
655
- }
656
- try {
657
- const fileContents = await (0, fs_extra_1.readFile)(configPath, "utf8");
658
- const definition = json5_1.default.parse(fileContents);
659
- if (!(0, typeguards_1.isObject)(definition)) {
660
- (0, utils_safe_1.throwInvalidConfig)("notifications", "the database is not an object");
661
- }
662
- const notifications = new Map();
663
- for (const [id, ntfcnDefinition] of Object.entries(definition)) {
664
- if (!utils_safe_1.hexKeyRegexNDigits.test(id)) {
665
- (0, utils_safe_1.throwInvalidConfig)("notifications", `found invalid key "${id}" at the root. Notifications must have lowercase hexadecimal IDs.`);
666
- }
667
- const idNum = parseInt(id.slice(2), 16);
668
- notifications.set(idNum, new Notifications_1.Notification(idNum, ntfcnDefinition));
669
- }
670
- return notifications;
671
- }
672
- catch (e) {
673
- if ((0, core_1.isZWaveError)(e)) {
674
- throw e;
675
- }
676
- else {
677
- (0, utils_safe_1.throwInvalidConfig)("notifications");
678
- }
679
- }
680
- }
681
- exports.loadNotificationsInternal = loadNotificationsInternal;
682
- /** @internal */
683
- async function loadNamedScalesInternal(externalConfig) {
684
- const configPath = node_path_1.default.join((externalConfig && (0, utils_1.externalConfigDir)()) || utils_1.configDir, "scales.json");
685
- if (!(await (0, fs_extra_1.pathExists)(configPath))) {
686
- throw new core_1.ZWaveError("The named scales config file does not exist!", core_1.ZWaveErrorCodes.Config_Invalid);
687
- }
688
- try {
689
- const fileContents = await (0, fs_extra_1.readFile)(configPath, "utf8");
690
- const definition = json5_1.default.parse(fileContents);
691
- if (!(0, typeguards_1.isObject)(definition)) {
692
- (0, utils_safe_1.throwInvalidConfig)("named scales", `the dictionary is not an object`);
693
- }
694
- const namedScales = new Map();
695
- for (const [name, scales] of Object.entries(definition)) {
696
- if (!/[\w\d]+/.test(name)) {
697
- (0, utils_safe_1.throwInvalidConfig)("named scales", `Name ${name} contains other characters than letters and numbers`);
698
- }
699
- const named = new Map();
700
- named.name = name;
701
- for (const [key, scaleDefinition] of Object.entries(scales)) {
702
- if (!utils_safe_1.hexKeyRegexNDigits.test(key)) {
703
- (0, utils_safe_1.throwInvalidConfig)("named scales", `found invalid key "${key}" in the definition for "${name}". Scales must have lowercase hexadecimal IDs.`);
704
- }
705
- const keyNum = parseInt(key.slice(2), 16);
706
- named.set(keyNum, new Scales_1.Scale(keyNum, scaleDefinition));
707
- }
708
- namedScales.set(name, named);
709
- }
710
- return namedScales;
711
- }
712
- catch (e) {
713
- if ((0, core_1.isZWaveError)(e)) {
714
- throw e;
715
- }
716
- else {
717
- (0, utils_safe_1.throwInvalidConfig)("named scales");
718
- }
719
- }
720
- }
721
- exports.loadNamedScalesInternal = loadNamedScalesInternal;
722
- /** @internal */
723
- async function loadSensorTypesInternal(manager, externalConfig) {
724
- const configPath = node_path_1.default.join((externalConfig && (0, utils_1.externalConfigDir)()) || utils_1.configDir, "sensorTypes.json");
725
- if (!(await (0, fs_extra_1.pathExists)(configPath))) {
726
- throw new core_1.ZWaveError("The sensor types config file does not exist!", core_1.ZWaveErrorCodes.Config_Invalid);
727
- }
728
- try {
729
- const fileContents = await (0, fs_extra_1.readFile)(configPath, "utf8");
730
- const definition = json5_1.default.parse(fileContents);
731
- if (!(0, typeguards_1.isObject)(definition)) {
732
- (0, utils_safe_1.throwInvalidConfig)("sensor types", `the dictionary is not an object`);
733
- }
734
- const sensorTypes = new Map();
735
- for (const [key, sensorDefinition] of Object.entries(definition)) {
736
- if (!utils_safe_1.hexKeyRegexNDigits.test(key)) {
737
- (0, utils_safe_1.throwInvalidConfig)("sensor types", `found invalid key "${key}" at the root. Sensor types must have lowercase hexadecimal IDs.`);
738
- }
739
- const keyNum = parseInt(key.slice(2), 16);
740
- sensorTypes.set(keyNum, new SensorTypes_1.SensorType(manager, keyNum, sensorDefinition));
741
- }
742
- return sensorTypes;
743
- }
744
- catch (e) {
745
- if ((0, core_1.isZWaveError)(e)) {
746
- throw e;
747
- }
748
- else {
749
- (0, utils_safe_1.throwInvalidConfig)("sensor types");
750
- }
751
- }
752
- }
753
- exports.loadSensorTypesInternal = loadSensorTypesInternal;
754
213
  //# sourceMappingURL=ConfigManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigManager.js","sourceRoot":"","sources":["../src/ConfigManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfigManager.js","sourceRoot":"","sources":["../src/ConfigManager.ts"],"names":[],"mappings":"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"}