@ya-modbus/driver-loader 0.6.0 → 0.7.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 (66) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/config-validator.d.ts.map +1 -0
  3. package/dist/cjs/config-validator.js.map +1 -0
  4. package/dist/cjs/errors.d.ts.map +1 -0
  5. package/dist/{errors.js → cjs/errors.js} +0 -2
  6. package/dist/cjs/errors.js.map +1 -0
  7. package/dist/cjs/index.d.ts.map +1 -0
  8. package/dist/cjs/index.js.map +1 -0
  9. package/dist/cjs/loader.d.ts.map +1 -0
  10. package/dist/cjs/loader.js.map +1 -0
  11. package/dist/cjs/package.json +1 -0
  12. package/dist/cjs/testing/index.d.ts.map +1 -0
  13. package/dist/cjs/testing/index.js.map +1 -0
  14. package/dist/cjs/testing.d.ts.map +1 -0
  15. package/dist/cjs/testing.js.map +1 -0
  16. package/dist/esm/config-validator.d.ts +53 -0
  17. package/dist/esm/config-validator.d.ts.map +1 -0
  18. package/dist/esm/config-validator.js +308 -0
  19. package/dist/esm/config-validator.js.map +1 -0
  20. package/dist/esm/errors.d.ts +69 -0
  21. package/dist/esm/errors.d.ts.map +1 -0
  22. package/dist/esm/errors.js +81 -0
  23. package/dist/esm/errors.js.map +1 -0
  24. package/dist/esm/index.d.ts +5 -0
  25. package/dist/esm/index.d.ts.map +1 -0
  26. package/dist/esm/index.js +4 -0
  27. package/dist/esm/index.js.map +1 -0
  28. package/dist/esm/loader.d.ts +122 -0
  29. package/dist/esm/loader.d.ts.map +1 -0
  30. package/dist/esm/loader.js +204 -0
  31. package/dist/esm/loader.js.map +1 -0
  32. package/dist/esm/package.json +1 -0
  33. package/dist/esm/testing/index.d.ts +21 -0
  34. package/dist/esm/testing/index.d.ts.map +1 -0
  35. package/dist/esm/testing/index.js +20 -0
  36. package/dist/esm/testing/index.js.map +1 -0
  37. package/dist/esm/testing.d.ts +64 -0
  38. package/dist/esm/testing.d.ts.map +1 -0
  39. package/dist/esm/testing.js +70 -0
  40. package/dist/esm/testing.js.map +1 -0
  41. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  42. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  43. package/package.json +27 -10
  44. package/dist/config-validator.d.ts.map +0 -1
  45. package/dist/config-validator.js.map +0 -1
  46. package/dist/errors.d.ts.map +0 -1
  47. package/dist/errors.js.map +0 -1
  48. package/dist/index.d.ts.map +0 -1
  49. package/dist/index.js.map +0 -1
  50. package/dist/loader.d.ts.map +0 -1
  51. package/dist/loader.js.map +0 -1
  52. package/dist/testing/index.d.ts.map +0 -1
  53. package/dist/testing/index.js.map +0 -1
  54. package/dist/testing.d.ts.map +0 -1
  55. package/dist/testing.js.map +0 -1
  56. /package/dist/{config-validator.d.ts → cjs/config-validator.d.ts} +0 -0
  57. /package/dist/{config-validator.js → cjs/config-validator.js} +0 -0
  58. /package/dist/{errors.d.ts → cjs/errors.d.ts} +0 -0
  59. /package/dist/{index.d.ts → cjs/index.d.ts} +0 -0
  60. /package/dist/{index.js → cjs/index.js} +0 -0
  61. /package/dist/{loader.d.ts → cjs/loader.d.ts} +0 -0
  62. /package/dist/{loader.js → cjs/loader.js} +0 -0
  63. /package/dist/{testing → cjs/testing}/index.d.ts +0 -0
  64. /package/dist/{testing → cjs/testing}/index.js +0 -0
  65. /package/dist/{testing.d.ts → cjs/testing.d.ts} +0 -0
  66. /package/dist/{testing.js → cjs/testing.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [0.7.0](https://github.com/groupsky/ya-modbus/compare/@ya-modbus/driver-loader@0.6.0...@ya-modbus/driver-loader@0.7.0) (2026-01-11)
7
+
8
+ ### Features
9
+
10
+ - **build:** add dual CommonJS/ESM package support ([#187](https://github.com/groupsky/ya-modbus/issues/187)) ([3d78130](https://github.com/groupsky/ya-modbus/commit/3d781304d42edba335cdc320ba25275f3b4ea6c9))
11
+
6
12
  # 0.6.0 (2026-01-04)
7
13
 
8
14
  ### Bug Fixes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.d.ts","sourceRoot":"","sources":["../../src/config-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAG7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,MAAM,GAAE,MAAgB,GACvB,IAAI,CAON;AA6BD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa,CAyBpE;AAoED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe,CAuExE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAE,MAAgB,GAAG,cAAc,CAsG1F;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,GAC/B,MAAM,EAAE,CA2GV"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../src/config-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,KAAK,CAAC,EAAE,MAAM;gBAD9B,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,EAAE,MAAM,YAAA;CAMjC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,WAAW,EAAE,MAAM;gBADnC,OAAO,EAAE,MAAM,EACC,WAAW,EAAE,MAAM;CAMtC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAK5B"}
@@ -25,7 +25,6 @@ exports.PackageJsonError = exports.DriverNotFoundError = exports.ValidationError
25
25
  * ```
26
26
  */
27
27
  class ValidationError extends Error {
28
- field;
29
28
  constructor(message, field) {
30
29
  super(message);
31
30
  this.field = field;
@@ -52,7 +51,6 @@ exports.ValidationError = ValidationError;
52
51
  * ```
53
52
  */
54
53
  class DriverNotFoundError extends Error {
55
- packageName;
56
54
  constructor(message, packageName) {
57
55
  super(message);
58
56
  this.packageName = packageName;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,eAAgB,SAAQ,KAAK;IACxC,YACE,OAAe,EACC,KAAc;QAE9B,KAAK,CAAC,OAAO,CAAC,CAAA;QAFE,UAAK,GAAL,KAAK,CAAS;QAG9B,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;QAC7B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAA;IACxD,CAAC;CACF;AATD,0CASC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,mBAAoB,SAAQ,KAAK;IAC5C,YACE,OAAe,EACC,WAAmB;QAEnC,KAAK,CAAC,OAAO,CAAC,CAAA;QAFE,gBAAW,GAAX,WAAW,CAAQ;QAGnC,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAA;QACjC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAC5D,CAAC;CACF;AATD,kDASC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,gBAAiB,SAAQ,KAAK;IACzC,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAA;QAC9B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAA;IACzD,CAAC;CACF;AAND,4CAMC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC/E,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,GACP,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,eAAe,EACf,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,yCAA+E;AAAtE,uGAAA,UAAU,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAQ1D,6DAK8B;AAJ5B,4HAAA,qBAAqB,OAAA;AACrB,8HAAA,uBAAuB,OAAA;AACvB,sHAAA,eAAe,OAAA;AACf,2HAAA,oBAAoB,OAAA;AAEtB,yCAAoF;AAA3E,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAAE,6GAAA,gBAAgB,OAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,eAAe,EAChB,MAAM,yBAAyB,CAAA;AAWhC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,8BAA8B;IAC9B,YAAY,EAAE,oBAAoB,CAAA;IAElC,+DAA+D;IAC/D,OAAO,CAAC,EAAE,cAAc,CAAA;IAExB,mEAAmE;IACnE,aAAa,CAAC,EAAE,aAAa,CAAA;IAE7B,kEAAkE;IAClE,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,MAAM;IACrB,2BAA2B;IAC3B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC/B,oCAAoC;IACpC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAClC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC9D,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;IACtD,MAAM,EAAE,MAAM,MAAM,CAAA;CACrB;AAeD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAA;IACd,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAA;CACb;AAeD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,gBAAgB,CAMtD;AAwED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,UAAU,CAC9B,OAAO,GAAE,iBAAsB,EAC/B,IAAI,GAAE,kBAAgC,GACrC,OAAO,CAAC,YAAY,CAAC,CAsHvB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAChE,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/testing/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAEH,4CAAgE;AAAvD,8GAAA,gBAAgB,OAAA;AAAE,4GAAA,cAAc,OAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,cAAc,EACd,eAAe,EAChB,MAAM,yBAAyB,CAAA;AAEhC,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAEnE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,YAAY,CAAC,EAAE,oBAAoB,CAAA;IACnC,iCAAiC;IACjC,aAAa,CAAC,EAAE,aAAa,CAAA;IAC7B,mCAAmC;IACnC,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,2BAA2B;IAC3B,OAAO,CAAC,EAAE,cAAc,CAAA;CACzB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,YAAY,CAyB9E;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,qCAAqC;IACrC,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACzC,yCAAyC;IACzC,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAAA;IACjD,mCAAmC;IACnC,MAAM,CAAC,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAA;CACtC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,kBAAkB,CAoBtF"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testing.js","sourceRoot":"","sources":["../../src/testing.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAwCH,4CAyBC;AA6BD,wCAoBC;AAhHD,2CAAoC;AAwBpC;;;;;;;;;;;;;GAaG;AACH,SAAgB,gBAAgB,CAAC,UAA6B,EAAE;IAC9D,MAAM,EACJ,YAAY,GAAG,cAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAoC,EAC/E,aAAa,EACb,eAAe,EACf,OAAO,GACR,GAAG,OAAO,CAAA;IAEX,MAAM,MAAM,GAAiB;QAC3B,YAAY;KACb,CAAA;IAED,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,aAAa,GAAG,aAAa,CAAA;IACtC,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,CAAC,eAAe,GAAG,eAAe,CAAA;IAC1C,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAcD;;;;;;;;;;;;;;GAcG;AACH,SAAgB,cAAc,CAAC,UAAiC,EAAE;IAChE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAElD,OAAO;QACL,QAAQ,EACN,QAAQ;YACP,cAAI;iBACF,EAAE,EAAkC;iBACpC,iBAAiB,CAAC,IAAI,CAAoC;QAC/D,YAAY,EACV,YAAY;YACX,cAAI;iBACF,EAAE,EAAsC;iBACxC,iBAAiB,CAAC,gBAAgB,EAAE,CAAwC;QACjF,MAAM,EACJ,MAAM;YACL,cAAI;iBACF,EAAE,EAAgC;iBAClC,eAAe,CAAC,WAAW,CAAkC;KACnE,CAAA;AACH,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Runtime validation for driver configuration exports
3
+ *
4
+ * Validates DEFAULT_CONFIG, SUPPORTED_CONFIG, and DEVICES from third-party drivers
5
+ * to ensure type safety at runtime.
6
+ */
7
+ import type { DefaultConfig, DeviceRegistry, SupportedConfig } from '@ya-modbus/driver-types';
8
+ import type { Logger } from './loader.js';
9
+ /**
10
+ * Output configuration warnings to logger
11
+ *
12
+ * @param context - Context description (e.g., "Driver DEFAULT_CONFIG")
13
+ * @param warnings - Array of warning messages
14
+ * @param logger - Logger to output warnings to
15
+ */
16
+ export declare function outputConfigWarnings(context: string, warnings: string[], logger?: Logger): void;
17
+ /**
18
+ * Validate DEFAULT_CONFIG export from a driver module
19
+ *
20
+ * @param config - The DEFAULT_CONFIG value to validate
21
+ * @returns Validated config
22
+ * @throws Error with helpful message if validation fails
23
+ */
24
+ export declare function validateDefaultConfig(config: unknown): DefaultConfig;
25
+ /**
26
+ * Validate SUPPORTED_CONFIG export from a driver module
27
+ *
28
+ * @param config - The SUPPORTED_CONFIG value to validate
29
+ * @returns Validated config
30
+ * @throws Error with helpful message if validation fails
31
+ */
32
+ export declare function validateSupportedConfig(config: unknown): SupportedConfig;
33
+ /**
34
+ * Validate DEVICES export from a driver module
35
+ *
36
+ * @param devices - The DEVICES value to validate
37
+ * @param logger - Optional logger for warnings (defaults to console)
38
+ * @returns Validated devices registry
39
+ * @throws Error with helpful message if validation fails
40
+ */
41
+ export declare function validateDevices(devices: unknown, logger?: Logger): DeviceRegistry;
42
+ /**
43
+ * Cross-validate DEFAULT_CONFIG against SUPPORTED_CONFIG constraints
44
+ *
45
+ * Checks that all DEFAULT_CONFIG values are within SUPPORTED_CONFIG constraints.
46
+ * This helps catch driver authoring errors where defaults don't match declared support.
47
+ *
48
+ * @param defaultConfig - The validated DEFAULT_CONFIG
49
+ * @param supportedConfig - The validated SUPPORTED_CONFIG
50
+ * @returns Array of warning messages for any inconsistencies found (empty if all valid)
51
+ */
52
+ export declare function crossValidateConfigs(defaultConfig: DefaultConfig, supportedConfig: SupportedConfig): string[];
53
+ //# sourceMappingURL=config-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.d.ts","sourceRoot":"","sources":["../../src/config-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAG7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,EAClB,MAAM,GAAE,MAAgB,GACvB,IAAI,CAON;AA6BD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa,CAyBpE;AAoED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe,CAuExE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,GAAE,MAAgB,GAAG,cAAc,CAsG1F;AAiBD;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,GAC/B,MAAM,EAAE,CA2GV"}
@@ -0,0 +1,308 @@
1
+ /**
2
+ * Runtime validation for driver configuration exports
3
+ *
4
+ * Validates DEFAULT_CONFIG, SUPPORTED_CONFIG, and DEVICES from third-party drivers
5
+ * to ensure type safety at runtime.
6
+ */
7
+ import { ValidationError } from './errors.js';
8
+ /**
9
+ * Output configuration warnings to logger
10
+ *
11
+ * @param context - Context description (e.g., "Driver DEFAULT_CONFIG")
12
+ * @param warnings - Array of warning messages
13
+ * @param logger - Logger to output warnings to
14
+ */
15
+ export function outputConfigWarnings(context, warnings, logger = console) {
16
+ logger.warn(`\nWarning: ${context} has configuration inconsistencies:`);
17
+ for (const warning of warnings) {
18
+ logger.warn(` - ${warning}`);
19
+ }
20
+ logger.warn(' This may indicate a driver authoring error\n');
21
+ logger.warn('Run: ya-modbus show-defaults --driver <package> to inspect configuration\n');
22
+ }
23
+ /**
24
+ * Validate that a value is in an array constraint
25
+ *
26
+ * @param value - Value to validate
27
+ * @param validValues - Array of valid values
28
+ * @param fieldName - Field name for error message
29
+ * @param constraintName - Constraint array name for error message
30
+ * @returns Warning message if validation fails, undefined otherwise
31
+ */
32
+ function validateArrayConstraint(value, validValues, fieldName, constraintName) {
33
+ if (!validValues.includes(value)) {
34
+ // TypeScript narrows the type in each branch, so no need for String() conversions
35
+ const formattedValues = typeof value === 'string'
36
+ ? validValues.map((v) => `"${v}"`).join(', ')
37
+ : validValues.join(', ');
38
+ const formattedValue = typeof value === 'string' ? `"${value}"` : value;
39
+ return `${fieldName}: ${formattedValue} is not in ${constraintName}: [${formattedValues}]`;
40
+ }
41
+ return undefined;
42
+ }
43
+ /**
44
+ * Validate DEFAULT_CONFIG export from a driver module
45
+ *
46
+ * @param config - The DEFAULT_CONFIG value to validate
47
+ * @returns Validated config
48
+ * @throws Error with helpful message if validation fails
49
+ */
50
+ export function validateDefaultConfig(config) {
51
+ if (config === null || config === undefined || typeof config !== 'object') {
52
+ throw new ValidationError('Invalid DEFAULT_CONFIG: must be an object.\n' +
53
+ 'Fix: export const DEFAULT_CONFIG = { baudRate: 9600, ... }', 'DEFAULT_CONFIG');
54
+ }
55
+ const configObj = config;
56
+ if ('baudRate' in configObj) {
57
+ validateSerialDefaultConfig(configObj);
58
+ }
59
+ else if ('defaultPort' in configObj) {
60
+ validateTcpDefaultConfig(configObj);
61
+ }
62
+ else {
63
+ throw new ValidationError('Invalid DEFAULT_CONFIG: must have either "baudRate" (serial) or "defaultPort" (TCP).\n' +
64
+ 'Fix: export const DEFAULT_CONFIG = { baudRate: 9600, ... } // for serial\n' +
65
+ 'Or: export const DEFAULT_CONFIG = { defaultPort: 502, ... } // for TCP', 'DEFAULT_CONFIG');
66
+ }
67
+ return config;
68
+ }
69
+ /**
70
+ * Validate serial DEFAULT_CONFIG properties
71
+ */
72
+ function validateSerialDefaultConfig(config) {
73
+ if (typeof config['baudRate'] !== 'number') {
74
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: baudRate must be a number, got ${typeof config['baudRate']}.\n` +
75
+ 'Fix: export const DEFAULT_CONFIG = { baudRate: 9600, ... } // number, not string', 'baudRate');
76
+ }
77
+ if ('parity' in config && typeof config['parity'] !== 'string') {
78
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: parity must be a string, got ${typeof config['parity']}.\n` +
79
+ 'Fix: export const DEFAULT_CONFIG = { parity: "even", ... } // string: "none", "even", or "odd"', 'parity');
80
+ }
81
+ if ('dataBits' in config && typeof config['dataBits'] !== 'number') {
82
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: dataBits must be a number, got ${typeof config['dataBits']}.\n` +
83
+ 'Fix: export const DEFAULT_CONFIG = { dataBits: 8, ... } // number: 7 or 8', 'dataBits');
84
+ }
85
+ if ('stopBits' in config && typeof config['stopBits'] !== 'number') {
86
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: stopBits must be a number, got ${typeof config['stopBits']}.\n` +
87
+ 'Fix: export const DEFAULT_CONFIG = { stopBits: 1, ... } // number: 1 or 2', 'stopBits');
88
+ }
89
+ if ('defaultAddress' in config && typeof config['defaultAddress'] !== 'number') {
90
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: defaultAddress must be a number, got ${typeof config['defaultAddress']}.\n` +
91
+ 'Fix: export const DEFAULT_CONFIG = { defaultAddress: 1, ... } // number: 1-247', 'defaultAddress');
92
+ }
93
+ }
94
+ /**
95
+ * Validate TCP DEFAULT_CONFIG properties
96
+ */
97
+ function validateTcpDefaultConfig(config) {
98
+ if (typeof config['defaultPort'] !== 'number') {
99
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: defaultPort must be a number, got ${typeof config['defaultPort']}.\n` +
100
+ 'Fix: export const DEFAULT_CONFIG = { defaultPort: 502, ... } // number', 'defaultPort');
101
+ }
102
+ if ('defaultAddress' in config && typeof config['defaultAddress'] !== 'number') {
103
+ throw new ValidationError(`Invalid DEFAULT_CONFIG: defaultAddress must be a number, got ${typeof config['defaultAddress']}.\n` +
104
+ 'Fix: export const DEFAULT_CONFIG = { defaultAddress: 1, ... } // number: 1-247', 'defaultAddress');
105
+ }
106
+ }
107
+ /**
108
+ * Validate SUPPORTED_CONFIG export from a driver module
109
+ *
110
+ * @param config - The SUPPORTED_CONFIG value to validate
111
+ * @returns Validated config
112
+ * @throws Error with helpful message if validation fails
113
+ */
114
+ export function validateSupportedConfig(config) {
115
+ if (config === null || config === undefined || typeof config !== 'object') {
116
+ throw new ValidationError('Invalid SUPPORTED_CONFIG: must be an object.\n' +
117
+ 'Fix: export const SUPPORTED_CONFIG = { validBaudRates: [9600, 19200], ... }', 'SUPPORTED_CONFIG');
118
+ }
119
+ const configObj = config;
120
+ if ('validBaudRates' in configObj && !Array.isArray(configObj['validBaudRates'])) {
121
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validBaudRates must be an array, got ${typeof configObj['validBaudRates']}.\n` +
122
+ 'Fix: export const SUPPORTED_CONFIG = { validBaudRates: [9600, 19200], ... }', 'validBaudRates');
123
+ }
124
+ if ('validParity' in configObj && !Array.isArray(configObj['validParity'])) {
125
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validParity must be an array, got ${typeof configObj['validParity']}.\n` +
126
+ 'Fix: export const SUPPORTED_CONFIG = { validParity: ["none", "even", "odd"], ... }', 'validParity');
127
+ }
128
+ if ('validDataBits' in configObj && !Array.isArray(configObj['validDataBits'])) {
129
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validDataBits must be an array, got ${typeof configObj['validDataBits']}.\n` +
130
+ 'Fix: export const SUPPORTED_CONFIG = { validDataBits: [7, 8], ... }', 'validDataBits');
131
+ }
132
+ if ('validStopBits' in configObj && !Array.isArray(configObj['validStopBits'])) {
133
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validStopBits must be an array, got ${typeof configObj['validStopBits']}.\n` +
134
+ 'Fix: export const SUPPORTED_CONFIG = { validStopBits: [1, 2], ... }', 'validStopBits');
135
+ }
136
+ if ('validAddressRange' in configObj) {
137
+ if (!Array.isArray(configObj['validAddressRange'])) {
138
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validAddressRange must be an array, got ${typeof configObj['validAddressRange']}.\n` +
139
+ 'Fix: export const SUPPORTED_CONFIG = { validAddressRange: [1, 247], ... }', 'validAddressRange');
140
+ }
141
+ const range = configObj['validAddressRange'];
142
+ if (range.length !== 2) {
143
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validAddressRange must be a 2-element array [min, max], got ${range.length} elements.\n` +
144
+ 'Fix: export const SUPPORTED_CONFIG = { validAddressRange: [1, 247], ... }', 'validAddressRange');
145
+ }
146
+ }
147
+ if ('validPorts' in configObj && !Array.isArray(configObj['validPorts'])) {
148
+ throw new ValidationError(`Invalid SUPPORTED_CONFIG: validPorts must be an array, got ${typeof configObj['validPorts']}.\n` +
149
+ 'Fix: export const SUPPORTED_CONFIG = { validPorts: [502], ... }', 'validPorts');
150
+ }
151
+ return config;
152
+ }
153
+ /**
154
+ * Validate DEVICES export from a driver module
155
+ *
156
+ * @param devices - The DEVICES value to validate
157
+ * @param logger - Optional logger for warnings (defaults to console)
158
+ * @returns Validated devices registry
159
+ * @throws Error with helpful message if validation fails
160
+ */
161
+ export function validateDevices(devices, logger = console) {
162
+ if (devices === null || devices === undefined || typeof devices !== 'object') {
163
+ throw new ValidationError('Invalid DEVICES: must be an object.\n' +
164
+ "Fix: export const DEVICES = { 'device-key': { manufacturer: 'Acme', model: 'X1' } }", 'DEVICES');
165
+ }
166
+ if (Array.isArray(devices)) {
167
+ throw new ValidationError('Invalid DEVICES: must be an object, not an array.\n' +
168
+ "Fix: export const DEVICES = { 'device-key': { manufacturer: 'Acme', model: 'X1' } }", 'DEVICES');
169
+ }
170
+ const devicesObj = devices;
171
+ const entries = Object.entries(devicesObj);
172
+ if (entries.length === 0) {
173
+ throw new ValidationError('Invalid DEVICES: must contain at least one device.\n' +
174
+ "Fix: export const DEVICES = { 'device-key': { manufacturer: 'Acme', model: 'X1' } }", 'DEVICES');
175
+ }
176
+ for (const [key, device] of entries) {
177
+ if (device === null || device === undefined || typeof device !== 'object') {
178
+ throw new ValidationError(`Invalid DEVICES["${key}"]: must be an object.\n` +
179
+ `Fix: DEVICES["${key}"] = { manufacturer: 'Acme', model: 'X1' }`, `DEVICES["${key}"]`);
180
+ }
181
+ const deviceObj = device;
182
+ if (typeof deviceObj['manufacturer'] !== 'string') {
183
+ throw new ValidationError(`Invalid DEVICES["${key}"]: manufacturer must be a string.\n` +
184
+ `Fix: DEVICES["${key}"] = { manufacturer: 'Acme', ... }`, `DEVICES["${key}"].manufacturer`);
185
+ }
186
+ if (typeof deviceObj['model'] !== 'string') {
187
+ throw new ValidationError(`Invalid DEVICES["${key}"]: model must be a string.\n` +
188
+ `Fix: DEVICES["${key}"] = { model: 'X1', ... }`, `DEVICES["${key}"].model`);
189
+ }
190
+ if ('description' in deviceObj && typeof deviceObj['description'] !== 'string') {
191
+ throw new ValidationError(`Invalid DEVICES["${key}"]: description must be a string.\n` +
192
+ `Fix: DEVICES["${key}"] = { description: 'A device', ... }`, `DEVICES["${key}"].description`);
193
+ }
194
+ let validatedDefaultConfig;
195
+ if ('defaultConfig' in deviceObj && deviceObj['defaultConfig'] !== undefined) {
196
+ try {
197
+ validatedDefaultConfig = validateDefaultConfig(deviceObj['defaultConfig']);
198
+ }
199
+ catch (error) {
200
+ if (error instanceof ValidationError) {
201
+ throw new ValidationError(`Invalid DEVICES["${key}"].defaultConfig: ${error.message}`, `DEVICES["${key}"].defaultConfig${error.field ? `.${error.field}` : ''}`);
202
+ }
203
+ throw error;
204
+ }
205
+ }
206
+ let validatedSupportedConfig;
207
+ if ('supportedConfig' in deviceObj && deviceObj['supportedConfig'] !== undefined) {
208
+ try {
209
+ validatedSupportedConfig = validateSupportedConfig(deviceObj['supportedConfig']);
210
+ }
211
+ catch (error) {
212
+ if (error instanceof ValidationError) {
213
+ throw new ValidationError(`Invalid DEVICES["${key}"].supportedConfig: ${error.message}`, `DEVICES["${key}"].supportedConfig${error.field ? `.${error.field}` : ''}`);
214
+ }
215
+ throw error;
216
+ }
217
+ }
218
+ if (validatedDefaultConfig && validatedSupportedConfig) {
219
+ const warnings = crossValidateConfigs(validatedDefaultConfig, validatedSupportedConfig);
220
+ if (warnings.length > 0) {
221
+ outputConfigWarnings(`DEVICES["${key}"]`, warnings, logger);
222
+ }
223
+ }
224
+ }
225
+ return devices;
226
+ }
227
+ /**
228
+ * Helper function to validate if a value is within a numeric range
229
+ */
230
+ function validateAddressRange(value, range, fieldName) {
231
+ const [min, max] = range;
232
+ if (value < min || value > max) {
233
+ return `${fieldName}: ${value} is not in validAddressRange: [${min}, ${max}]`;
234
+ }
235
+ return undefined;
236
+ }
237
+ /**
238
+ * Cross-validate DEFAULT_CONFIG against SUPPORTED_CONFIG constraints
239
+ *
240
+ * Checks that all DEFAULT_CONFIG values are within SUPPORTED_CONFIG constraints.
241
+ * This helps catch driver authoring errors where defaults don't match declared support.
242
+ *
243
+ * @param defaultConfig - The validated DEFAULT_CONFIG
244
+ * @param supportedConfig - The validated SUPPORTED_CONFIG
245
+ * @returns Array of warning messages for any inconsistencies found (empty if all valid)
246
+ */
247
+ export function crossValidateConfigs(defaultConfig, supportedConfig) {
248
+ const warnings = [];
249
+ const isSerial = 'baudRate' in defaultConfig;
250
+ const isTCP = 'defaultPort' in defaultConfig;
251
+ if (isSerial) {
252
+ const serialDefault = defaultConfig;
253
+ const serialSupported = supportedConfig;
254
+ if ('validBaudRates' in serialSupported && Array.isArray(serialSupported['validBaudRates'])) {
255
+ const warning = validateArrayConstraint(serialDefault.baudRate, serialSupported['validBaudRates'], 'baudRate', 'validBaudRates');
256
+ if (warning)
257
+ warnings.push(warning);
258
+ }
259
+ if ('parity' in serialDefault &&
260
+ 'validParity' in serialSupported &&
261
+ Array.isArray(serialSupported['validParity'])) {
262
+ const warning = validateArrayConstraint(serialDefault.parity, serialSupported['validParity'], 'parity', 'validParity');
263
+ if (warning)
264
+ warnings.push(warning);
265
+ }
266
+ if ('dataBits' in serialDefault &&
267
+ 'validDataBits' in serialSupported &&
268
+ Array.isArray(serialSupported['validDataBits'])) {
269
+ const warning = validateArrayConstraint(serialDefault.dataBits, serialSupported['validDataBits'], 'dataBits', 'validDataBits');
270
+ if (warning)
271
+ warnings.push(warning);
272
+ }
273
+ if ('stopBits' in serialDefault &&
274
+ 'validStopBits' in serialSupported &&
275
+ Array.isArray(serialSupported['validStopBits'])) {
276
+ const warning = validateArrayConstraint(serialDefault.stopBits, serialSupported['validStopBits'], 'stopBits', 'validStopBits');
277
+ if (warning)
278
+ warnings.push(warning);
279
+ }
280
+ if ('defaultAddress' in serialDefault &&
281
+ 'validAddressRange' in serialSupported &&
282
+ Array.isArray(serialSupported['validAddressRange'])) {
283
+ const warning = validateAddressRange(serialDefault.defaultAddress, serialSupported['validAddressRange'], 'defaultAddress');
284
+ if (warning) {
285
+ warnings.push(warning);
286
+ }
287
+ }
288
+ }
289
+ else if (isTCP) {
290
+ const tcpDefault = defaultConfig;
291
+ const tcpSupported = supportedConfig;
292
+ if ('validPorts' in tcpSupported && Array.isArray(tcpSupported['validPorts'])) {
293
+ const warning = validateArrayConstraint(tcpDefault.defaultPort, tcpSupported['validPorts'], 'defaultPort', 'validPorts');
294
+ if (warning)
295
+ warnings.push(warning);
296
+ }
297
+ if ('defaultAddress' in tcpDefault &&
298
+ 'validAddressRange' in tcpSupported &&
299
+ Array.isArray(tcpSupported['validAddressRange'])) {
300
+ const warning = validateAddressRange(tcpDefault.defaultAddress, tcpSupported['validAddressRange'], 'defaultAddress');
301
+ if (warning) {
302
+ warnings.push(warning);
303
+ }
304
+ }
305
+ }
306
+ return warnings;
307
+ }
308
+ //# sourceMappingURL=config-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-validator.js","sourceRoot":"","sources":["../../src/config-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Custom error classes for driver-loader
3
+ *
4
+ * These error classes provide better error handling and type safety
5
+ * compared to string-based error detection.
6
+ */
7
+ /**
8
+ * Error thrown when driver configuration validation fails
9
+ *
10
+ * @example
11
+ * ```typescript
12
+ * import { loadDriver, ValidationError } from '@ya-modbus/driver-loader'
13
+ *
14
+ * try {
15
+ * await loadDriver({ driverPackage: 'my-driver' })
16
+ * } catch (error) {
17
+ * if (error instanceof ValidationError) {
18
+ * console.error(`Validation failed for field: ${error.field}`)
19
+ * console.error(`Message: ${error.message}`)
20
+ * }
21
+ * }
22
+ * ```
23
+ */
24
+ export declare class ValidationError extends Error {
25
+ readonly field?: string | undefined;
26
+ constructor(message: string, field?: string | undefined);
27
+ }
28
+ /**
29
+ * Error thrown when a driver package cannot be found or loaded
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * import { loadDriver, DriverNotFoundError } from '@ya-modbus/driver-loader'
34
+ *
35
+ * try {
36
+ * await loadDriver({ driverPackage: 'missing-driver' })
37
+ * } catch (error) {
38
+ * if (error instanceof DriverNotFoundError) {
39
+ * console.error(`Package not found: ${error.packageName}`)
40
+ * console.error(`Install with: npm install ${error.packageName}`)
41
+ * }
42
+ * }
43
+ * ```
44
+ */
45
+ export declare class DriverNotFoundError extends Error {
46
+ readonly packageName: string;
47
+ constructor(message: string, packageName: string);
48
+ }
49
+ /**
50
+ * Error thrown when package.json is not found or invalid
51
+ *
52
+ * @example
53
+ * ```typescript
54
+ * import { loadDriver, PackageJsonError } from '@ya-modbus/driver-loader'
55
+ *
56
+ * try {
57
+ * await loadDriver({}) // Auto-detect from current directory
58
+ * } catch (error) {
59
+ * if (error instanceof PackageJsonError) {
60
+ * console.error('package.json issue:', error.message)
61
+ * // Examples: missing file, invalid JSON, missing keywords
62
+ * }
63
+ * }
64
+ * ```
65
+ */
66
+ export declare class PackageJsonError extends Error {
67
+ constructor(message: string);
68
+ }
69
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,KAAK,CAAC,EAAE,MAAM;gBAD9B,OAAO,EAAE,MAAM,EACC,KAAK,CAAC,EAAE,MAAM,YAAA;CAMjC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;aAG1B,WAAW,EAAE,MAAM;gBADnC,OAAO,EAAE,MAAM,EACC,WAAW,EAAE,MAAM;CAMtC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAK5B"}