@zwave-js/config 15.18.0 → 15.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/build/cjs/ConfigManager.d.ts +2 -1
  2. package/build/cjs/ConfigManager.js +5 -3
  3. package/build/cjs/ConfigManager.js.map +2 -2
  4. package/build/cjs/_version.d.ts +1 -1
  5. package/build/cjs/_version.js +1 -1
  6. package/build/cjs/_version.js.map +1 -1
  7. package/build/cjs/devices/DeviceConfig.d.ts +3 -2
  8. package/build/cjs/devices/DeviceConfig.js +16 -2
  9. package/build/cjs/devices/DeviceConfig.js.map +2 -2
  10. package/build/cjs/devices/ParamInformation.d.ts +4 -1
  11. package/build/cjs/devices/ParamInformation.js +94 -3
  12. package/build/cjs/devices/ParamInformation.js.map +2 -2
  13. package/build/cjs/devices/shared.d.ts +1 -0
  14. package/build/esm/ConfigManager.d.ts +2 -1
  15. package/build/esm/ConfigManager.d.ts.map +1 -1
  16. package/build/esm/ConfigManager.js +4 -2
  17. package/build/esm/ConfigManager.js.map +1 -1
  18. package/build/esm/_version.d.ts +1 -1
  19. package/build/esm/_version.js +1 -1
  20. package/build/esm/devices/DeviceConfig.d.ts +3 -2
  21. package/build/esm/devices/DeviceConfig.d.ts.map +1 -1
  22. package/build/esm/devices/DeviceConfig.js +23 -2
  23. package/build/esm/devices/DeviceConfig.js.map +1 -1
  24. package/build/esm/devices/ParamInformation.d.ts +4 -1
  25. package/build/esm/devices/ParamInformation.d.ts.map +1 -1
  26. package/build/esm/devices/ParamInformation.js +109 -5
  27. package/build/esm/devices/ParamInformation.js.map +1 -1
  28. package/build/esm/devices/shared.d.ts +1 -0
  29. package/build/esm/devices/shared.d.ts.map +1 -1
  30. package/config/README.md +1 -1
  31. package/config/devices/0x0039/39357_39464_zw3011.json +1 -1
  32. package/config/devices/0x0060/an145.json +10 -1
  33. package/config/devices/0x008b/trane_xr524.json +1 -1
  34. package/config/devices/0x008b/xl624.json +1 -1
  35. package/config/devices/0x0090/hc620.json +4 -0
  36. package/config/devices/0x013c/pad15.json +11 -1
  37. package/config/devices/0x013c/pan30.json +12 -1
  38. package/config/devices/0x013c/pan34.json +12 -1
  39. package/config/devices/0x013c/pse04.json +12 -1
  40. package/config/devices/0x015f/mh-dt311_411.json +16 -4
  41. package/config/devices/0x016a/ft116.json +6 -4
  42. package/config/devices/0x0190/adc-s2000-t-ra.json +3 -2
  43. package/config/devices/0x019a/11_02_022.json +1 -1
  44. package/config/devices/0x0214/dp-32_ix-30_ix-32_6.0_255.255.json +6 -3
  45. package/config/devices/0x0214/es-61_0.0_5.255.json +6 -3
  46. package/config/devices/0x027a/templates/zooz_template.json +82 -0
  47. package/config/devices/0x027a/zen16.json +27 -3
  48. package/config/devices/0x027a/zen35.json +0 -1
  49. package/config/devices/0x027a/zen58.json +96 -0
  50. package/config/devices/0x031e/vzw31-sn.json +8 -1
  51. package/config/devices/0x031e/vzw32-sn.json +13 -13
  52. package/config/devices/0x0344/he-hls01.json +19 -5
  53. package/config/devices/0x0346/contact_sensor_gen2.json +11 -3
  54. package/config/devices/0x0371/zwa050.json +101 -0
  55. package/config/devices/0x037b/gkw-2000.json +11 -1
  56. package/config/devices/0x0438/4512757.json +4 -3
  57. package/config/devices/0x0438/dimmer2-400w.json +16 -4
  58. package/config/devices/0x0460/qlsh-001P10.json +9 -0
  59. package/config/eslint.config.mjs +3 -0
  60. package/package.json +6 -6
  61. package/config/.dprint.jsonc +0 -13
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/devices/ParamInformation.ts"],
4
- "sourcesContent": ["import { tryParseParamNumber } from \"@zwave-js/core\";\nimport {\n\ttype JSONObject,\n\tObjectKeyMap,\n\ttype ReadonlyObjectKeyMap,\n\tpick,\n} from \"@zwave-js/shared\";\nimport { isArray, isObject } from \"alcalzone-shared/typeguards\";\nimport { throwInvalidConfig } from \"../utils_safe.js\";\nimport {\n\ttype ConditionalItem,\n\tconditionApplies,\n\tevaluateDeep,\n\tvalidateCondition,\n} from \"./ConditionalItem.js\";\nimport type { ConditionalDeviceConfig } from \"./DeviceConfig.js\";\nimport type { DeviceID } from \"./shared.js\";\n\nexport class ConditionalParamInformation\n\timplements ConditionalItem<ParamInformation>\n{\n\tpublic constructor(\n\t\tparent: ConditionalDeviceConfig,\n\t\tparameterNumber: number,\n\t\tvalueBitMask: number | undefined,\n\t\tdefinition: JSONObject,\n\t) {\n\t\tthis.parent = parent;\n\t\tthis.parameterNumber = parameterNumber;\n\t\tthis.valueBitMask = valueBitMask;\n\t\t// No need to validate here, this should be done one level higher\n\t\tthis.condition = definition.$if;\n\n\t\tif (typeof definition.label !== \"string\") {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-string label`,\n\t\t\t);\n\t\t}\n\t\tthis.label = definition.label;\n\n\t\tif (\n\t\t\tdefinition.description != undefined\n\t\t\t&& typeof definition.description !== \"string\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-string description`,\n\t\t\t);\n\t\t}\n\t\tthis.description = definition.description;\n\n\t\tif (\n\t\t\ttypeof definition.valueSize !== \"number\"\n\t\t\t|| definition.valueSize <= 0\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has an invalid value size`,\n\t\t\t);\n\t\t}\n\t\tthis.valueSize = definition.valueSize;\n\n\t\tif (\n\t\t\tdefinition.minValue != undefined\n\t\t\t&& typeof definition.minValue !== \"number\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property minValue`,\n\t\t\t);\n\t\t}\n\t\tthis.minValue = definition.minValue;\n\n\t\tif (\n\t\t\tdefinition.maxValue != undefined\n\t\t\t&& typeof definition.maxValue !== \"number\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property maxValue`,\n\t\t\t);\n\t\t}\n\t\tthis.maxValue = definition.maxValue;\n\n\t\tif (\n\t\t\tdefinition.unsigned != undefined\n\t\t\t&& typeof definition.unsigned !== \"boolean\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-boolean property unsigned`,\n\t\t\t);\n\t\t}\n\t\tthis.unsigned = definition.unsigned === true;\n\n\t\tif (\n\t\t\tdefinition.unit != undefined\n\t\t\t&& typeof definition.unit !== \"string\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-string unit`,\n\t\t\t);\n\t\t}\n\t\tthis.unit = definition.unit;\n\n\t\tif (definition.readOnly != undefined && definition.readOnly !== true) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\n\t\tParameter #${parameterNumber}: readOnly must true or omitted!`,\n\t\t\t);\n\t\t}\n\t\tthis.readOnly = definition.readOnly;\n\n\t\tif (\n\t\t\tdefinition.writeOnly != undefined\n\t\t\t&& definition.writeOnly !== true\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\n\t\tParameter #${parameterNumber}: writeOnly must be true or omitted!`,\n\t\t\t);\n\t\t}\n\t\tthis.writeOnly = definition.writeOnly;\n\n\t\tif (definition.defaultValue == undefined) {\n\t\t\tif (!this.readOnly) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} is missing defaultValue, which is required unless the parameter is readOnly`,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (typeof definition.defaultValue !== \"number\") {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property defaultValue`,\n\t\t\t);\n\t\t}\n\t\tthis.defaultValue = definition.defaultValue;\n\n\t\tif (\n\t\t\tdefinition.recommendedValue != undefined\n\t\t\t&& typeof definition.recommendedValue !== \"number\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property recommendedValue`,\n\t\t\t);\n\t\t}\n\t\tthis.recommendedValue = definition.recommendedValue;\n\n\t\tif (\n\t\t\tdefinition.allowManualEntry != undefined\n\t\t\t&& definition.allowManualEntry !== false\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowManualEntry must be false or omitted!`,\n\t\t\t);\n\t\t}\n\t\t// Default to allowing manual entry, except if the param is readonly\n\t\tthis.allowManualEntry = definition.allowManualEntry ?? !this.readOnly;\n\n\t\tif (\n\t\t\tdefinition.destructive != undefined\n\t\t\t&& typeof definition.destructive !== \"boolean\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-boolean property destructive`,\n\t\t\t);\n\t\t}\n\t\tthis.destructive = definition.destructive;\n\n\t\tif (\n\t\t\tisArray(definition.options)\n\t\t\t&& !definition.options.every(\n\t\t\t\t(opt: unknown) =>\n\t\t\t\t\tisObject(opt)\n\t\t\t\t\t&& typeof opt.label === \"string\"\n\t\t\t\t\t&& typeof opt.value === \"number\",\n\t\t\t)\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: options is malformed!`,\n\t\t\t);\n\t\t}\n\n\t\tthis.options = definition.options?.map(\n\t\t\t(opt: any) =>\n\t\t\t\tnew ConditionalConfigOption(opt.value, opt.label, opt.$if),\n\t\t) ?? [];\n\n\t\tif (\n\t\t\tdefinition.hidden != undefined\n\t\t\t&& typeof definition.hidden !== \"boolean\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-boolean property hidden`,\n\t\t\t);\n\t\t}\n\t\tthis.hidden = definition.hidden === true;\n\t}\n\n\tprivate parent: ConditionalDeviceConfig;\n\tpublic readonly parameterNumber: number;\n\tpublic readonly valueBitMask?: number;\n\tpublic readonly label: string;\n\tpublic readonly description?: string;\n\tpublic readonly valueSize: number;\n\tpublic readonly minValue?: number;\n\tpublic readonly maxValue?: number;\n\tpublic readonly unsigned?: boolean;\n\tpublic readonly defaultValue: number;\n\tpublic readonly recommendedValue?: number;\n\tpublic readonly unit?: string;\n\tpublic readonly readOnly?: true;\n\tpublic readonly writeOnly?: true;\n\tpublic readonly allowManualEntry: boolean;\n\tpublic readonly destructive?: boolean;\n\tpublic readonly options: readonly ConditionalConfigOption[];\n\tpublic readonly hidden?: boolean;\n\n\tpublic readonly condition?: string;\n\n\tpublic evaluateCondition(\n\t\tdeviceId?: DeviceID,\n\t): ParamInformation | undefined {\n\t\tif (!conditionApplies(this, deviceId)) return;\n\n\t\tconst ret = {\n\t\t\t...pick(this, [\n\t\t\t\t\"parameterNumber\",\n\t\t\t\t\"valueBitMask\",\n\t\t\t\t\"label\",\n\t\t\t\t\"description\",\n\t\t\t\t\"valueSize\",\n\t\t\t\t\"minValue\",\n\t\t\t\t\"maxValue\",\n\t\t\t\t\"unsigned\",\n\t\t\t\t\"defaultValue\",\n\t\t\t\t\"recommendedValue\",\n\t\t\t\t\"unit\",\n\t\t\t\t\"readOnly\",\n\t\t\t\t\"writeOnly\",\n\t\t\t\t\"allowManualEntry\",\n\t\t\t\t\"destructive\",\n\t\t\t\t\"hidden\",\n\t\t\t]),\n\t\t\toptions: evaluateDeep(this.options, deviceId, true),\n\t\t};\n\t\t// Infer minValue from options if possible\n\t\tif (ret.minValue == undefined) {\n\t\t\tif (ret.allowManualEntry === false && ret.options.length > 0) {\n\t\t\t\tret.minValue = Math.min(...ret.options.map((o) => o.value));\n\t\t\t} else {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${this.parent.filename}:\nParameter #${this.parameterNumber} is missing required property \"minValue\"!`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tif (ret.maxValue == undefined) {\n\t\t\tif (ret.allowManualEntry === false && ret.options.length > 0) {\n\t\t\t\tret.maxValue = Math.max(...ret.options.map((o) => o.value));\n\t\t\t} else {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${this.parent.filename}:\nParameter #${this.parameterNumber} is missing required property \"maxValue\"!`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// @ts-expect-error TS doesn't seem to understand that we do set min/maxValue\n\t\treturn ret;\n\t}\n}\n\nexport type ParamInformation =\n\t& Omit<\n\t\tConditionalParamInformation,\n\t\t\"condition\" | \"evaluateCondition\" | \"options\" | \"minValue\" | \"maxValue\"\n\t>\n\t& {\n\t\toptions: readonly ConfigOption[];\n\t\tminValue: NonNullable<ConditionalParamInformation[\"minValue\"]>;\n\t\tmaxValue: NonNullable<ConditionalParamInformation[\"maxValue\"]>;\n\t};\n\nexport class ConditionalConfigOption implements ConditionalItem<ConfigOption> {\n\tpublic constructor(\n\t\tpublic readonly value: number,\n\t\tpublic readonly label: string,\n\t\tpublic readonly condition?: string,\n\t) {}\n\n\tpublic evaluateCondition(deviceId?: DeviceID): ConfigOption | undefined {\n\t\tif (!conditionApplies(this, deviceId)) return;\n\n\t\treturn pick(this, [\"value\", \"label\"]);\n\t}\n}\n\nexport interface ConfigOption {\n\tvalue: number;\n\tlabel: string;\n}\n\nexport type ConditionalParamInfoMap = ReadonlyObjectKeyMap<\n\t{ parameter: number; valueBitMask?: number },\n\tConditionalParamInformation[]\n>;\n\nexport type ParamInfoMap = ReadonlyObjectKeyMap<\n\t{ parameter: number; valueBitMask?: number },\n\tParamInformation\n>;\n\nexport function parseConditionalParamInformationMap(\n\tdefinition: JSONObject,\n\tparent: ConditionalDeviceConfig,\n\terrorPrefix: string = \"\",\n): ConditionalParamInfoMap {\n\tconst paramInformation = new ObjectKeyMap<\n\t\t{ parameter: number; valueBitMask?: number },\n\t\tConditionalParamInformation[]\n\t>();\n\n\tconst filename = parent.filename;\n\n\tif (isArray(definition.paramInformation)) {\n\t\t// Check that every param has a param number\n\t\tif (!definition.paramInformation.every((entry: any) => \"#\" in entry)) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t`device`,\n\t\t\t\t`packages/config/config/devices/${filename}: \n${errorPrefix}required property \"#\" missing in at least one entry of paramInformation`,\n\t\t\t);\n\t\t}\n\n\t\t// And a valid $if condition\n\t\tfor (const entry of definition.paramInformation) {\n\t\t\tvalidateCondition(\n\t\t\t\tfilename,\n\t\t\t\tentry,\n\t\t\t\t`${errorPrefix}At least one entry of paramInformation contains an`,\n\t\t\t);\n\t\t}\n\n\t\tfor (const paramDefinition of definition.paramInformation) {\n\t\t\tconst { [\"#\"]: paramNo, ...defn } = paramDefinition;\n\t\t\tconst key = tryParseParamNumber(paramNo);\n\t\t\tif (!key) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t`device`,\n\t\t\t\t\t`packages/config/config/devices/${filename}: \n${errorPrefix}found invalid param number \"${paramNo}\" in paramInformation`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (!paramInformation.has(key)) paramInformation.set(key, []);\n\t\t\tparamInformation\n\t\t\t\t.get(key)!\n\t\t\t\t.push(\n\t\t\t\t\tnew ConditionalParamInformation(\n\t\t\t\t\t\tparent,\n\t\t\t\t\t\tkey.parameter,\n\t\t\t\t\t\tkey.valueBitMask,\n\t\t\t\t\t\tdefn,\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t}\n\t} else if (isObject(definition.paramInformation)) {\n\t\t// Silently ignore this old format\n\t} else {\n\t\tthrowInvalidConfig(\n\t\t\t`device`,\n\t\t\t`packages/config/config/devices/${filename}:\n${errorPrefix}paramInformation must be an array!`,\n\t\t);\n\t}\n\n\treturn paramInformation;\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* oxlint-disable typescript/no-unnecessary-type-assertion */\nimport { type AllowedConfigValue, tryParseParamNumber } from \"@zwave-js/core\";\nimport {\n\ttype JSONObject,\n\tObjectKeyMap,\n\ttype ReadonlyObjectKeyMap,\n\tpick,\n} from \"@zwave-js/shared\";\nimport { isArray, isObject } from \"alcalzone-shared/typeguards\";\nimport { throwInvalidConfig } from \"../utils_safe.js\";\nimport {\n\ttype ConditionalItem,\n\tconditionApplies,\n\tevaluateDeep,\n\tvalidateCondition,\n} from \"./ConditionalItem.js\";\nimport type { ConditionalDeviceConfig } from \"./DeviceConfig.js\";\nimport type { DeviceID } from \"./shared.js\";\n\nexport class ConditionalParamInformation\n\timplements ConditionalItem<ParamInformation>\n{\n\tpublic constructor(\n\t\tparent: ConditionalDeviceConfig,\n\t\tparameterNumber: number,\n\t\tvalueBitMask: number | undefined,\n\t\tdefinition: JSONObject,\n\t) {\n\t\tthis.parent = parent;\n\t\tthis.parameterNumber = parameterNumber;\n\t\tthis.valueBitMask = valueBitMask;\n\t\t// No need to validate here, this should be done one level higher\n\t\tthis.condition = definition.$if;\n\n\t\tif (typeof definition.label !== \"string\") {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-string label`,\n\t\t\t);\n\t\t}\n\t\tthis.label = definition.label;\n\n\t\tif (\n\t\t\tdefinition.description != undefined\n\t\t\t&& typeof definition.description !== \"string\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-string description`,\n\t\t\t);\n\t\t}\n\t\tthis.description = definition.description;\n\n\t\tif (\n\t\t\ttypeof definition.valueSize !== \"number\"\n\t\t\t|| definition.valueSize <= 0\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has an invalid value size`,\n\t\t\t);\n\t\t}\n\t\tthis.valueSize = definition.valueSize;\n\n\t\tif (\n\t\t\tdefinition.minValue != undefined\n\t\t\t&& typeof definition.minValue !== \"number\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property minValue`,\n\t\t\t);\n\t\t}\n\t\tthis.minValue = definition.minValue;\n\n\t\tif (\n\t\t\tdefinition.maxValue != undefined\n\t\t\t&& typeof definition.maxValue !== \"number\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property maxValue`,\n\t\t\t);\n\t\t}\n\t\tthis.maxValue = definition.maxValue;\n\n\t\tif (\n\t\t\tdefinition.unsigned != undefined\n\t\t\t&& typeof definition.unsigned !== \"boolean\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-boolean property unsigned`,\n\t\t\t);\n\t\t}\n\t\tthis.unsigned = definition.unsigned === true;\n\n\t\tif (\n\t\t\tdefinition.unit != undefined\n\t\t\t&& typeof definition.unit !== \"string\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-string unit`,\n\t\t\t);\n\t\t}\n\t\tthis.unit = definition.unit;\n\n\t\tif (definition.readOnly != undefined && definition.readOnly !== true) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\n\t\tParameter #${parameterNumber}: readOnly must true or omitted!`,\n\t\t\t);\n\t\t}\n\t\tthis.readOnly = definition.readOnly;\n\n\t\tif (\n\t\t\tdefinition.writeOnly != undefined\n\t\t\t&& definition.writeOnly !== true\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\n\t\tParameter #${parameterNumber}: writeOnly must be true or omitted!`,\n\t\t\t);\n\t\t}\n\t\tthis.writeOnly = definition.writeOnly;\n\n\t\tif (definition.defaultValue == undefined) {\n\t\t\tif (!this.readOnly) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} is missing defaultValue, which is required unless the parameter is readOnly`,\n\t\t\t\t);\n\t\t\t}\n\t\t} else if (typeof definition.defaultValue !== \"number\") {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property defaultValue`,\n\t\t\t);\n\t\t}\n\t\tthis.defaultValue = definition.defaultValue;\n\n\t\tif (\n\t\t\tdefinition.recommendedValue != undefined\n\t\t\t&& typeof definition.recommendedValue !== \"number\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-numeric property recommendedValue`,\n\t\t\t);\n\t\t}\n\t\tthis.recommendedValue = definition.recommendedValue;\n\n\t\tif (\n\t\t\tdefinition.allowManualEntry != undefined\n\t\t\t&& definition.allowManualEntry !== false\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowManualEntry must be false or omitted!`,\n\t\t\t);\n\t\t}\n\t\t// Default to allowing manual entry, except if the param is readonly\n\t\tthis.allowManualEntry = definition.allowManualEntry ?? !this.readOnly;\n\n\t\tif (\n\t\t\tdefinition.destructive != undefined\n\t\t\t&& typeof definition.destructive !== \"boolean\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-boolean property destructive`,\n\t\t\t);\n\t\t}\n\t\tthis.destructive = definition.destructive;\n\n\t\tif (\n\t\t\tisArray(definition.options)\n\t\t\t&& !definition.options.every(\n\t\t\t\t(opt: unknown) =>\n\t\t\t\t\tisObject(opt)\n\t\t\t\t\t&& typeof opt.label === \"string\"\n\t\t\t\t\t&& typeof opt.value === \"number\",\n\t\t\t)\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: options is malformed!`,\n\t\t\t);\n\t\t}\n\n\t\tthis.options = definition.options?.map(\n\t\t\t(opt: any) =>\n\t\t\t\tnew ConditionalConfigOption(opt.value, opt.label, opt.$if),\n\t\t) ?? [];\n\n\t\tif (\n\t\t\tdefinition.hidden != undefined\n\t\t\t&& typeof definition.hidden !== \"boolean\"\n\t\t) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t\"devices\",\n\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber} has a non-boolean property hidden`,\n\t\t\t);\n\t\t}\n\t\tthis.hidden = definition.hidden;\n\n\t\t// Parse and validate the allowed field\n\t\tif (definition.allowed != undefined) {\n\t\t\t// Validate mutual exclusivity with minValue/maxValue\n\t\t\tif (this.minValue != undefined || this.maxValue != undefined) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: \"allowed\" cannot be used together with \"minValue\" or \"maxValue\"!`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Validate mutual exclusivity with allowManualEntry: false\n\t\t\tif (this.allowManualEntry === false) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: \"allowed\" cannot be used with \"allowManualEntry: false\"!`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Validate it's an array\n\t\t\tif (!isArray(definition.allowed)) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: \"allowed\" must be an array!`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Validate array is not empty\n\t\t\tif (definition.allowed.length === 0) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: \"allowed\" array must contain at least one entry!`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\t// Parse each value definition\n\t\t\tconst parsedValues: AllowedConfigValue[] = [];\n\t\t\tfor (let i = 0; i < definition.allowed.length; i++) {\n\t\t\t\tconst def = definition.allowed[i];\n\n\t\t\t\tif (!isObject(def)) {\n\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}] must be an object!`,\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// Check for single value\n\t\t\t\tif (\"value\" in def) {\n\t\t\t\t\tif (typeof def.value !== \"number\") {\n\t\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}].value must be a number!`,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tparsedValues.push({ value: def.value });\n\t\t\t\t} // Check for range\n\t\t\t\telse if (\"range\" in def) {\n\t\t\t\t\tif (!isArray(def.range)) {\n\t\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}].range must be an array!`,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (def.range.length !== 2) {\n\t\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}].range must have exactly 2 elements [from, to]!`,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst [from, to] = def.range;\n\t\t\t\t\tconst step = def.step;\n\n\t\t\t\t\tif (typeof from !== \"number\" || typeof to !== \"number\") {\n\t\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}].range elements must be numbers!`,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (step !== undefined && typeof step !== \"number\") {\n\t\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}].step must be a number if provided!`,\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tparsedValues.push({\n\t\t\t\t\t\tfrom,\n\t\t\t\t\t\tto,\n\t\t\t\t\t\t...(step !== undefined && { step }),\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\t\"devices\",\n\t\t\t\t\t\t`packages/config/config/devices/${parent.filename}:\nParameter #${parameterNumber}: allowed[${i}] must have either \"value\" or \"range\" property!`,\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.allowed = parsedValues;\n\t\t}\n\t}\n\n\t// IMPORTANT: Changes to these properties can affect the device config hash,\n\t// which may prompt users to re-interview their devices.\n\t//\n\t// Whenever adding, removing or changing properties of this class,\n\t// make sure that these changes do not cause the hash to change unintentionally.\n\t// For example, adding a new optional property with a default value of `undefined`\n\t// is fine, unless the constructor always sets it to a concrete value.\n\t//\n\t// In all other case, make sure to increase the `maxHashVersion` in DeviceConfig.ts\n\t// and add appropriate, backwards-compatible handling for the new version\n\t// in `areHashesEqual`\n\n\tprivate parent: ConditionalDeviceConfig;\n\tpublic readonly parameterNumber: number;\n\tpublic readonly valueBitMask?: number;\n\tpublic readonly label: string;\n\tpublic readonly description?: string;\n\tpublic readonly valueSize: number;\n\tpublic readonly allowed?: readonly AllowedConfigValue[];\n\tpublic readonly minValue?: number;\n\tpublic readonly maxValue?: number;\n\tpublic readonly unsigned?: boolean;\n\tpublic readonly defaultValue: number;\n\tpublic readonly recommendedValue?: number;\n\tpublic readonly unit?: string;\n\tpublic readonly readOnly?: true;\n\tpublic readonly writeOnly?: true;\n\tpublic readonly allowManualEntry: boolean;\n\tpublic readonly destructive?: boolean;\n\tpublic readonly options: readonly ConditionalConfigOption[];\n\tpublic readonly hidden?: boolean;\n\n\tpublic readonly condition?: string;\n\n\tpublic evaluateCondition(\n\t\tdeviceId?: DeviceID,\n\t): ParamInformation | undefined {\n\t\tif (!conditionApplies(this, deviceId)) return;\n\n\t\tconst ret = {\n\t\t\t...pick(this, [\n\t\t\t\t\"parameterNumber\",\n\t\t\t\t\"valueBitMask\",\n\t\t\t\t\"label\",\n\t\t\t\t\"description\",\n\t\t\t\t\"valueSize\",\n\t\t\t\t\"allowed\",\n\t\t\t\t\"minValue\",\n\t\t\t\t\"maxValue\",\n\t\t\t\t\"unsigned\",\n\t\t\t\t\"defaultValue\",\n\t\t\t\t\"recommendedValue\",\n\t\t\t\t\"unit\",\n\t\t\t\t\"readOnly\",\n\t\t\t\t\"writeOnly\",\n\t\t\t\t\"allowManualEntry\",\n\t\t\t\t\"destructive\",\n\t\t\t\t\"hidden\",\n\t\t\t]),\n\t\t\toptions: evaluateDeep(this.options, deviceId, true),\n\t\t};\n\n\t\t// If allowed is defined, compute the envelope (minValue/maxValue) for backwards compatibility\n\t\tif (ret.allowed && ret.allowed.length > 0) {\n\t\t\tlet globalMin = Infinity;\n\t\t\tlet globalMax = -Infinity;\n\n\t\t\tfor (const def of ret.allowed) {\n\t\t\t\tif (\"value\" in def) {\n\t\t\t\t\tglobalMin = Math.min(globalMin, def.value);\n\t\t\t\t\tglobalMax = Math.max(globalMax, def.value);\n\t\t\t\t} else {\n\t\t\t\t\tglobalMin = Math.min(globalMin, def.from);\n\t\t\t\t\tglobalMax = Math.max(globalMax, def.to);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tret.minValue = globalMin;\n\t\t\tret.maxValue = globalMax;\n\t\t} // Infer minValue from options if possible\n\t\telse if (ret.minValue == undefined) {\n\t\t\tif (ret.allowManualEntry === false && ret.options.length > 0) {\n\t\t\t\tret.minValue = Math.min(...ret.options.map((o) => o.value));\n\t\t\t} else {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${this.parent.filename}:\nParameter #${this.parameterNumber} is missing required property \"minValue\"!`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t\tif (ret.allowed == undefined && ret.maxValue == undefined) {\n\t\t\tif (ret.allowManualEntry === false && ret.options.length > 0) {\n\t\t\t\tret.maxValue = Math.max(...ret.options.map((o) => o.value));\n\t\t\t} else {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t\"devices\",\n\t\t\t\t\t`packages/config/config/devices/${this.parent.filename}:\nParameter #${this.parameterNumber} is missing required property \"maxValue\"!`,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\t// After inferring minValue/maxValue, create the allowed array if not already set\n\t\tif (ret.allowed == undefined) {\n\t\t\tret.allowed = [{ from: ret.minValue!, to: ret.maxValue! }];\n\t\t}\n\n\t\t// @ts-expect-error TS doesn't understand that we set min/maxValue and allowed\n\t\treturn ret;\n\t}\n}\n\nexport type ParamInformation =\n\t& Omit<\n\t\tConditionalParamInformation,\n\t\t| \"condition\"\n\t\t| \"evaluateCondition\"\n\t\t| \"options\"\n\t\t| \"minValue\"\n\t\t| \"maxValue\"\n\t\t| \"allowed\"\n\t>\n\t& {\n\t\toptions: readonly ConfigOption[];\n\t\tminValue: NonNullable<ConditionalParamInformation[\"minValue\"]>;\n\t\tmaxValue: NonNullable<ConditionalParamInformation[\"maxValue\"]>;\n\t\tallowed: NonNullable<ConditionalParamInformation[\"allowed\"]>;\n\t};\n\nexport class ConditionalConfigOption implements ConditionalItem<ConfigOption> {\n\tpublic constructor(\n\t\tpublic readonly value: number,\n\t\tpublic readonly label: string,\n\t\tpublic readonly condition?: string,\n\t) {}\n\n\tpublic evaluateCondition(deviceId?: DeviceID): ConfigOption | undefined {\n\t\tif (!conditionApplies(this, deviceId)) return;\n\n\t\treturn pick(this, [\"value\", \"label\"]);\n\t}\n}\n\nexport interface ConfigOption {\n\tvalue: number;\n\tlabel: string;\n}\n\nexport type ConditionalParamInfoMap = ReadonlyObjectKeyMap<\n\t{ parameter: number; valueBitMask?: number },\n\tConditionalParamInformation[]\n>;\n\nexport type ParamInfoMap = ReadonlyObjectKeyMap<\n\t{ parameter: number; valueBitMask?: number },\n\tParamInformation\n>;\n\nexport function parseConditionalParamInformationMap(\n\tdefinition: JSONObject,\n\tparent: ConditionalDeviceConfig,\n\terrorPrefix: string = \"\",\n): ConditionalParamInfoMap {\n\tconst paramInformation = new ObjectKeyMap<\n\t\t{ parameter: number; valueBitMask?: number },\n\t\tConditionalParamInformation[]\n\t>();\n\n\tconst filename = parent.filename;\n\n\tif (isArray(definition.paramInformation)) {\n\t\t// Check that every param has a param number\n\t\tif (!definition.paramInformation.every((entry: any) => \"#\" in entry)) {\n\t\t\tthrowInvalidConfig(\n\t\t\t\t`device`,\n\t\t\t\t`packages/config/config/devices/${filename}: \n${errorPrefix}required property \"#\" missing in at least one entry of paramInformation`,\n\t\t\t);\n\t\t}\n\n\t\t// And a valid $if condition\n\t\tfor (const entry of definition.paramInformation) {\n\t\t\tvalidateCondition(\n\t\t\t\tfilename,\n\t\t\t\tentry,\n\t\t\t\t`${errorPrefix}At least one entry of paramInformation contains an`,\n\t\t\t);\n\t\t}\n\n\t\tfor (const paramDefinition of definition.paramInformation) {\n\t\t\tconst { [\"#\"]: paramNo, ...defn } = paramDefinition;\n\t\t\tconst key = tryParseParamNumber(paramNo);\n\t\t\tif (!key) {\n\t\t\t\tthrowInvalidConfig(\n\t\t\t\t\t`device`,\n\t\t\t\t\t`packages/config/config/devices/${filename}: \n${errorPrefix}found invalid param number \"${paramNo}\" in paramInformation`,\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (!paramInformation.has(key)) paramInformation.set(key, []);\n\t\t\tparamInformation\n\t\t\t\t.get(key)!\n\t\t\t\t.push(\n\t\t\t\t\tnew ConditionalParamInformation(\n\t\t\t\t\t\tparent,\n\t\t\t\t\t\tkey.parameter,\n\t\t\t\t\t\tkey.valueBitMask,\n\t\t\t\t\t\tdefn,\n\t\t\t\t\t),\n\t\t\t\t);\n\t\t}\n\t} else if (isObject(definition.paramInformation)) {\n\t\t// Silently ignore this old format\n\t} else {\n\t\tthrowInvalidConfig(\n\t\t\t`device`,\n\t\t\t`packages/config/config/devices/${filename}:\n${errorPrefix}paramInformation must be an array!`,\n\t\t);\n\t}\n\n\treturn paramInformation;\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -7,5 +7,6 @@ export interface DeviceID {
7
7
  productType: number;
8
8
  productId: number;
9
9
  firmwareVersion?: string;
10
+ sdkVersion?: string;
10
11
  }
11
12
  //# sourceMappingURL=shared.d.ts.map
@@ -60,7 +60,8 @@ export declare class ConfigManager {
60
60
  * @param productId The product id of the device
61
61
  * @param firmwareVersion If known, configuration for a specific firmware version can be loaded.
62
62
  * If this is `undefined` or not given, the first matching file with a defined firmware range will be returned.
63
+ * @param sdkVersion If known, the SDK version can be used in conditional settings.
63
64
  */
64
- lookupDevice(manufacturerId: number, productType: number, productId: number, firmwareVersion?: string): Promise<DeviceConfig | undefined>;
65
+ lookupDevice(manufacturerId: number, productType: number, productId: number, firmwareVersion?: string, sdkVersion?: string): Promise<DeviceConfig | undefined>;
65
66
  }
66
67
  //# sourceMappingURL=ConfigManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigManager.d.ts","sourceRoot":"","sources":["../../src/ConfigManager.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,YAAY,EAIjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EACN,KAAK,gBAAgB,EAGrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAK9B,MAAM,2BAA2B,CAAC;AAQnC,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,qBAAa,aAAa;gBACN,OAAO,GAAE,oBAAyB;IAUrD,OAAO,CAAC,GAAG,CAAyB;YACtB,KAAK;IAKnB,OAAO,CAAC,cAAc,CAAS;IAC/B,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,OAAO,CAA2B;YAC5B,SAAS;IAevB,OAAO,CAAC,cAAc,CAA+B;IACrD,IAAW,aAAa,IAAI,gBAAgB,CAQ3C;IAED,OAAO,CAAC,uBAAuB,CAAqB;IACpD,OAAO,CAAC,uBAAuB,CAAqB;IACpD,IAAW,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAGjD;IAED,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,aAAa,CAAwC;IAE7D,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BxB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBlC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/C;;;OAGG;IACI,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAWrE;;;;OAIG;IACI,eAAe,CACrB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,GACtB,IAAI;IAWM,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAqDtC,QAAQ,IAAI,iBAAiB,GAAG,SAAS;IAInC,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9C,gBAAgB,IAAI,yBAAyB,GAAG,SAAS;IAIhE;;;;;;;OAOG;IACU,8BAA8B,CAC1C,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC;IAgE/C;;;;;;;OAOG;IACU,YAAY,CACxB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CAcpC"}
1
+ {"version":3,"file":"ConfigManager.d.ts","sourceRoot":"","sources":["../../src/ConfigManager.ts"],"names":[],"mappings":"AACA,OAAO,EACN,KAAK,YAAY,EAIjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAG5D,OAAO,EACN,KAAK,gBAAgB,EAGrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACN,uBAAuB,EACvB,KAAK,YAAY,EACjB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAK9B,MAAM,2BAA2B,CAAC;AAQnC,MAAM,WAAW,oBAAoB;IACpC,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,qBAAa,aAAa;gBACN,OAAO,GAAE,oBAAyB;IAUrD,OAAO,CAAC,GAAG,CAAyB;YACtB,KAAK;IAKnB,OAAO,CAAC,cAAc,CAAS;IAC/B,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,OAAO,CAA2B;YAC5B,SAAS;IAevB,OAAO,CAAC,cAAc,CAA+B;IACrD,IAAW,aAAa,IAAI,gBAAgB,CAQ3C;IAED,OAAO,CAAC,uBAAuB,CAAqB;IACpD,OAAO,CAAC,uBAAuB,CAAqB;IACpD,IAAW,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAGjD;IAED,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,aAAa,CAAwC;IAE7D,OAAO,CAAC,kBAAkB,CAAkB;IAC5C,IAAW,iBAAiB,IAAI,OAAO,CAEtC;IAEY,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA8BxB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBlC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IAc/C;;;OAGG;IACI,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAWrE;;;;OAIG;IACI,eAAe,CACrB,cAAc,EAAE,MAAM,EACtB,gBAAgB,EAAE,MAAM,GACtB,IAAI;IAWM,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAqDtC,QAAQ,IAAI,iBAAiB,GAAG,SAAS;IAInC,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9C,gBAAgB,IAAI,yBAAyB,GAAG,SAAS;IAIhE;;;;;;;OAOG;IACU,8BAA8B,CAC1C,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,uBAAuB,GAAG,SAAS,CAAC;IAgE/C;;;;;;;;OAQG;IACU,YAAY,CACxB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,EACxB,UAAU,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;CAepC"}
@@ -29,7 +29,7 @@ export class ConfigManager {
29
29
  async getLogger() {
30
30
  if (!this._logContainer) {
31
31
  this._logContainer =
32
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
32
+ // oxlint-disable-next-line typescript/ban-ts-comment
33
33
  // @ts-ignore - For some reason, VSCode does not like this import, although tsc is fine with it
34
34
  (await import("#default_bindings/log")).log({
35
35
  enabled: false,
@@ -226,14 +226,16 @@ export class ConfigManager {
226
226
  * @param productId The product id of the device
227
227
  * @param firmwareVersion If known, configuration for a specific firmware version can be loaded.
228
228
  * If this is `undefined` or not given, the first matching file with a defined firmware range will be returned.
229
+ * @param sdkVersion If known, the SDK version can be used in conditional settings.
229
230
  */
230
- async lookupDevice(manufacturerId, productType, productId, firmwareVersion) {
231
+ async lookupDevice(manufacturerId, productType, productId, firmwareVersion, sdkVersion) {
231
232
  const ret = await this.lookupDevicePreserveConditions(manufacturerId, productType, productId, firmwareVersion);
232
233
  return ret?.evaluate({
233
234
  manufacturerId,
234
235
  productType,
235
236
  productId,
236
237
  firmwareVersion,
238
+ sdkVersion,
237
239
  });
238
240
  }
239
241
  }
@@ -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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"}
@@ -1,2 +1,2 @@
1
- export declare const PACKAGE_VERSION = "15.18.0";
1
+ export declare const PACKAGE_VERSION = "15.20.0";
2
2
  //# sourceMappingURL=_version.d.ts.map
@@ -1,3 +1,3 @@
1
1
  // This file is auto-generated by the codegen maintenance script
2
- export const PACKAGE_VERSION = "15.18.0";
2
+ export const PACKAGE_VERSION = "15.20.0";
3
3
  //# sourceMappingURL=_version.js.map
@@ -73,6 +73,7 @@ export declare class ConditionalDeviceConfig {
73
73
  readonly isEmbedded: boolean;
74
74
  evaluate(deviceId?: DeviceID): DeviceConfig;
75
75
  }
76
+ export type DeviceConfigHashVersion = 0 | 1 | 2 | 3;
76
77
  export declare class DeviceConfig {
77
78
  static from(fs: ReadFileSystemInfo & ReadFile, filename: string, isEmbedded: boolean, options: {
78
79
  rootDir: string;
@@ -117,8 +118,8 @@ export declare class DeviceConfig {
117
118
  /**
118
119
  * Returns a hash code that can be used to check whether a device config has changed enough to require a re-interview.
119
120
  */
120
- getHash(version?: 0 | 1 | 2): Promise<BytesView>;
121
- static get maxHashVersion(): 2;
121
+ getHash(version?: DeviceConfigHashVersion): Promise<BytesView>;
122
+ static get maxHashVersion(): 3;
122
123
  static areHashesEqual(hash: BytesView, other: BytesView): boolean;
123
124
  }
124
125
  //# sourceMappingURL=DeviceConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceConfig.d.ts","sourceRoot":"","sources":["../../../src/devices/DeviceConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceConfig.d.ts","sourceRoot":"","sources":["../../../src/devices/DeviceConfig.ts"],"names":[],"mappings":"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"}
@@ -580,7 +580,7 @@ export class DeviceConfig {
580
580
  hashable.compat = c;
581
581
  }
582
582
  }
583
- if (version > 1) {
583
+ if (version >= 2) {
584
584
  // From version 2 and on, we ignore labels and descriptions, and load them dynamically
585
585
  for (const ep of Object.values(hashable.endpoints ?? {})) {
586
586
  for (const param of ep.paramInformation ?? []) {
@@ -592,6 +592,27 @@ export class DeviceConfig {
592
592
  }
593
593
  }
594
594
  }
595
+ if (version < 3) {
596
+ // Version 3 added the `allowed` field. When targeting older versions
597
+ // and the allowed field only has a single range, replace it with
598
+ // minValue/maxValue for compatibility
599
+ for (const ep of Object.values(hashable.endpoints ?? {})) {
600
+ for (const param of ep.paramInformation ?? []) {
601
+ if (isArray(param.allowed)
602
+ && param.allowed.length === 1
603
+ && isObject(param.allowed[0])) {
604
+ const allowed = param.allowed[0];
605
+ if (typeof allowed.from === "number"
606
+ && typeof allowed.to === "number"
607
+ && (allowed.step == undefined || allowed.step === 1)) {
608
+ param.minValue = allowed.from;
609
+ param.maxValue = allowed.to;
610
+ delete param.allowed;
611
+ }
612
+ }
613
+ }
614
+ }
615
+ }
595
616
  hashable = sortObject(hashable);
596
617
  return hashable;
597
618
  }
@@ -622,7 +643,7 @@ export class DeviceConfig {
622
643
  return Bytes.concat([prefixBytes, hash]);
623
644
  }
624
645
  static get maxHashVersion() {
625
- return 2;
646
+ return 3;
626
647
  }
627
648
  static areHashesEqual(hash, other) {
628
649
  const parsedHash = parseHash(hash);
@@ -1 +1 @@
1
- {"version":3,"file":"DeviceConfig.js","sourceRoot":"","sources":["../../../src/devices/DeviceConfig.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DeviceConfig.js","sourceRoot":"","sources":["../../../src/devices/DeviceConfig.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type AllowedConfigValue } from "@zwave-js/core";
1
2
  import { type JSONObject, type ReadonlyObjectKeyMap } from "@zwave-js/shared";
2
3
  import { type ConditionalItem } from "./ConditionalItem.js";
3
4
  import type { ConditionalDeviceConfig } from "./DeviceConfig.js";
@@ -10,6 +11,7 @@ export declare class ConditionalParamInformation implements ConditionalItem<Para
10
11
  readonly label: string;
11
12
  readonly description?: string;
12
13
  readonly valueSize: number;
14
+ readonly allowed?: readonly AllowedConfigValue[];
13
15
  readonly minValue?: number;
14
16
  readonly maxValue?: number;
15
17
  readonly unsigned?: boolean;
@@ -25,10 +27,11 @@ export declare class ConditionalParamInformation implements ConditionalItem<Para
25
27
  readonly condition?: string;
26
28
  evaluateCondition(deviceId?: DeviceID): ParamInformation | undefined;
27
29
  }
28
- export type ParamInformation = Omit<ConditionalParamInformation, "condition" | "evaluateCondition" | "options" | "minValue" | "maxValue"> & {
30
+ export type ParamInformation = Omit<ConditionalParamInformation, "condition" | "evaluateCondition" | "options" | "minValue" | "maxValue" | "allowed"> & {
29
31
  options: readonly ConfigOption[];
30
32
  minValue: NonNullable<ConditionalParamInformation["minValue"]>;
31
33
  maxValue: NonNullable<ConditionalParamInformation["maxValue"]>;
34
+ allowed: NonNullable<ConditionalParamInformation["allowed"]>;
32
35
  };
33
36
  export declare class ConditionalConfigOption implements ConditionalItem<ConfigOption> {
34
37
  readonly value: number;
@@ -1 +1 @@
1
- {"version":3,"file":"ParamInformation.d.ts","sourceRoot":"","sources":["../../../src/devices/ParamInformation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ParamInformation.d.ts","sourceRoot":"","sources":["../../../src/devices/ParamInformation.ts"],"names":[],"mappings":"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"}