@ya-modbus/cli 0.6.1 → 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.
- package/CHANGELOG.md +4 -2
- package/dist/cjs/bin/ya-modbus.d.ts.map +1 -0
- package/dist/cjs/bin/ya-modbus.js +12 -0
- package/dist/cjs/bin/ya-modbus.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/src/commands/discover.d.ts.map +1 -0
- package/dist/cjs/src/commands/discover.js +196 -0
- package/dist/cjs/src/commands/discover.js.map +1 -0
- package/dist/cjs/src/commands/list-devices.d.ts.map +1 -0
- package/dist/cjs/src/commands/list-devices.js +79 -0
- package/dist/cjs/src/commands/list-devices.js.map +1 -0
- package/dist/cjs/src/commands/read.d.ts.map +1 -0
- package/dist/cjs/src/commands/read.js +79 -0
- package/dist/cjs/src/commands/read.js.map +1 -0
- package/dist/cjs/src/commands/show-defaults.d.ts.map +1 -0
- package/dist/cjs/src/commands/show-defaults.js +51 -0
- package/dist/cjs/src/commands/show-defaults.js.map +1 -0
- package/dist/cjs/src/commands/write.d.ts.map +1 -0
- package/dist/cjs/src/commands/write.js +65 -0
- package/dist/cjs/src/commands/write.js.map +1 -0
- package/dist/cjs/src/discovery/constants.d.ts.map +1 -0
- package/dist/cjs/src/discovery/constants.js +48 -0
- package/dist/cjs/src/discovery/constants.js.map +1 -0
- package/dist/cjs/src/discovery/device-identifier.d.ts.map +1 -0
- package/dist/cjs/src/discovery/device-identifier.js +196 -0
- package/dist/cjs/src/discovery/device-identifier.js.map +1 -0
- package/dist/cjs/src/discovery/parameter-generator-utils.d.ts.map +1 -0
- package/dist/cjs/src/discovery/parameter-generator-utils.js +63 -0
- package/dist/cjs/src/discovery/parameter-generator-utils.js.map +1 -0
- package/dist/cjs/src/discovery/parameter-generator.d.ts.map +1 -0
- package/dist/cjs/src/discovery/parameter-generator.js +188 -0
- package/dist/cjs/src/discovery/parameter-generator.js.map +1 -0
- package/dist/cjs/src/discovery/progress.d.ts.map +1 -0
- package/dist/cjs/src/discovery/progress.js +59 -0
- package/dist/cjs/src/discovery/progress.js.map +1 -0
- package/dist/cjs/src/discovery/scanner.d.ts.map +1 -0
- package/dist/cjs/src/discovery/scanner.js +147 -0
- package/dist/cjs/src/discovery/scanner.js.map +1 -0
- package/dist/cjs/src/formatters/discovery-results.d.ts.map +1 -0
- package/dist/cjs/src/formatters/discovery-results.js +62 -0
- package/dist/cjs/src/formatters/discovery-results.js.map +1 -0
- package/dist/cjs/src/formatters/json.d.ts.map +1 -0
- package/dist/cjs/src/formatters/json.js +36 -0
- package/dist/cjs/src/formatters/json.js.map +1 -0
- package/dist/cjs/src/formatters/performance.d.ts.map +1 -0
- package/dist/cjs/src/formatters/performance.js +28 -0
- package/dist/cjs/src/formatters/performance.js.map +1 -0
- package/dist/cjs/src/formatters/table.d.ts.map +1 -0
- package/dist/cjs/src/formatters/table.js +95 -0
- package/dist/cjs/src/formatters/table.js.map +1 -0
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/cjs/src/index.js +157 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/cjs/src/utils/commands.d.ts.map +1 -0
- package/dist/cjs/src/utils/commands.js +421 -0
- package/dist/cjs/src/utils/commands.js.map +1 -0
- package/dist/cjs/src/utils/object-utils.d.ts.map +1 -0
- package/dist/cjs/src/utils/object-utils.js +31 -0
- package/dist/cjs/src/utils/object-utils.js.map +1 -0
- package/dist/cjs/src/utils/validation.d.ts.map +1 -0
- package/dist/cjs/src/utils/validation.js +165 -0
- package/dist/cjs/src/utils/validation.js.map +1 -0
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
- package/dist/esm/bin/ya-modbus.d.ts +9 -0
- package/dist/esm/bin/ya-modbus.d.ts.map +1 -0
- package/dist/esm/bin/ya-modbus.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/src/commands/discover.d.ts +25 -0
- package/dist/esm/src/commands/discover.d.ts.map +1 -0
- package/dist/esm/src/commands/discover.js.map +1 -0
- package/dist/esm/src/commands/list-devices.d.ts +21 -0
- package/dist/esm/src/commands/list-devices.d.ts.map +1 -0
- package/dist/esm/src/commands/list-devices.js.map +1 -0
- package/dist/esm/src/commands/read.d.ts +25 -0
- package/dist/esm/src/commands/read.d.ts.map +1 -0
- package/dist/esm/src/commands/read.js.map +1 -0
- package/dist/esm/src/commands/show-defaults.d.ts +21 -0
- package/dist/esm/src/commands/show-defaults.d.ts.map +1 -0
- package/dist/esm/src/commands/show-defaults.js.map +1 -0
- package/dist/esm/src/commands/write.d.ts +26 -0
- package/dist/esm/src/commands/write.d.ts.map +1 -0
- package/dist/esm/src/commands/write.js.map +1 -0
- package/dist/esm/src/discovery/constants.d.ts +37 -0
- package/dist/esm/src/discovery/constants.d.ts.map +1 -0
- package/dist/esm/src/discovery/constants.js.map +1 -0
- package/dist/esm/src/discovery/device-identifier.d.ts +52 -0
- package/dist/esm/src/discovery/device-identifier.d.ts.map +1 -0
- package/dist/esm/src/discovery/device-identifier.js.map +1 -0
- package/dist/esm/src/discovery/parameter-generator-utils.d.ts +29 -0
- package/dist/esm/src/discovery/parameter-generator-utils.d.ts.map +1 -0
- package/dist/esm/src/discovery/parameter-generator-utils.js.map +1 -0
- package/dist/esm/src/discovery/parameter-generator.d.ts +97 -0
- package/dist/esm/src/discovery/parameter-generator.d.ts.map +1 -0
- package/dist/esm/src/discovery/parameter-generator.js.map +1 -0
- package/dist/esm/src/discovery/progress.d.ts +24 -0
- package/dist/esm/src/discovery/progress.d.ts.map +1 -0
- package/dist/{src → esm/src}/discovery/progress.js +2 -4
- package/dist/esm/src/discovery/progress.js.map +1 -0
- package/dist/esm/src/discovery/scanner.d.ts +46 -0
- package/dist/esm/src/discovery/scanner.d.ts.map +1 -0
- package/dist/esm/src/discovery/scanner.js.map +1 -0
- package/dist/esm/src/formatters/discovery-results.d.ts +10 -0
- package/dist/esm/src/formatters/discovery-results.d.ts.map +1 -0
- package/dist/esm/src/formatters/discovery-results.js.map +1 -0
- package/dist/esm/src/formatters/json.d.ts +30 -0
- package/dist/esm/src/formatters/json.d.ts.map +1 -0
- package/dist/esm/src/formatters/json.js.map +1 -0
- package/dist/esm/src/formatters/performance.d.ts +19 -0
- package/dist/esm/src/formatters/performance.d.ts.map +1 -0
- package/dist/esm/src/formatters/performance.js.map +1 -0
- package/dist/esm/src/formatters/table.d.ts +10 -0
- package/dist/esm/src/formatters/table.d.ts.map +1 -0
- package/dist/esm/src/formatters/table.js.map +1 -0
- package/dist/esm/src/index.d.ts +5 -0
- package/dist/esm/src/index.d.ts.map +1 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/esm/src/utils/commands.d.ts +191 -0
- package/dist/esm/src/utils/commands.d.ts.map +1 -0
- package/dist/esm/src/utils/commands.js.map +1 -0
- package/dist/esm/src/utils/object-utils.d.ts +20 -0
- package/dist/esm/src/utils/object-utils.d.ts.map +1 -0
- package/dist/esm/src/utils/object-utils.js.map +1 -0
- package/dist/esm/src/utils/validation.d.ts +70 -0
- package/dist/esm/src/utils/validation.d.ts.map +1 -0
- package/dist/{src → esm/src}/utils/validation.js +0 -3
- package/dist/esm/src/utils/validation.js.map +1 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
- package/package.json +26 -9
- package/dist/bin/ya-modbus.d.ts.map +0 -1
- package/dist/bin/ya-modbus.js.map +0 -1
- package/dist/src/commands/discover.d.ts.map +0 -1
- package/dist/src/commands/discover.js.map +0 -1
- package/dist/src/commands/list-devices.d.ts.map +0 -1
- package/dist/src/commands/list-devices.js.map +0 -1
- package/dist/src/commands/read.d.ts.map +0 -1
- package/dist/src/commands/read.js.map +0 -1
- package/dist/src/commands/show-defaults.d.ts.map +0 -1
- package/dist/src/commands/show-defaults.js.map +0 -1
- package/dist/src/commands/write.d.ts.map +0 -1
- package/dist/src/commands/write.js.map +0 -1
- package/dist/src/discovery/constants.d.ts.map +0 -1
- package/dist/src/discovery/constants.js.map +0 -1
- package/dist/src/discovery/device-identifier.d.ts.map +0 -1
- package/dist/src/discovery/device-identifier.js.map +0 -1
- package/dist/src/discovery/parameter-generator-utils.d.ts.map +0 -1
- package/dist/src/discovery/parameter-generator-utils.js.map +0 -1
- package/dist/src/discovery/parameter-generator.d.ts.map +0 -1
- package/dist/src/discovery/parameter-generator.js.map +0 -1
- package/dist/src/discovery/progress.d.ts.map +0 -1
- package/dist/src/discovery/progress.js.map +0 -1
- package/dist/src/discovery/scanner.d.ts.map +0 -1
- package/dist/src/discovery/scanner.js.map +0 -1
- package/dist/src/formatters/discovery-results.d.ts.map +0 -1
- package/dist/src/formatters/discovery-results.js.map +0 -1
- package/dist/src/formatters/json.d.ts.map +0 -1
- package/dist/src/formatters/json.js.map +0 -1
- package/dist/src/formatters/performance.d.ts.map +0 -1
- package/dist/src/formatters/performance.js.map +0 -1
- package/dist/src/formatters/table.d.ts.map +0 -1
- package/dist/src/formatters/table.js.map +0 -1
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js.map +0 -1
- package/dist/src/utils/commands.d.ts.map +0 -1
- package/dist/src/utils/commands.js.map +0 -1
- package/dist/src/utils/object-utils.d.ts.map +0 -1
- package/dist/src/utils/object-utils.js.map +0 -1
- package/dist/src/utils/validation.d.ts.map +0 -1
- package/dist/src/utils/validation.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{bin → cjs/bin}/ya-modbus.d.ts +0 -0
- /package/dist/{src → cjs/src}/commands/discover.d.ts +0 -0
- /package/dist/{src → cjs/src}/commands/list-devices.d.ts +0 -0
- /package/dist/{src → cjs/src}/commands/read.d.ts +0 -0
- /package/dist/{src → cjs/src}/commands/show-defaults.d.ts +0 -0
- /package/dist/{src → cjs/src}/commands/write.d.ts +0 -0
- /package/dist/{src → cjs/src}/discovery/constants.d.ts +0 -0
- /package/dist/{src → cjs/src}/discovery/device-identifier.d.ts +0 -0
- /package/dist/{src → cjs/src}/discovery/parameter-generator-utils.d.ts +0 -0
- /package/dist/{src → cjs/src}/discovery/parameter-generator.d.ts +0 -0
- /package/dist/{src → cjs/src}/discovery/progress.d.ts +0 -0
- /package/dist/{src → cjs/src}/discovery/scanner.d.ts +0 -0
- /package/dist/{src → cjs/src}/formatters/discovery-results.d.ts +0 -0
- /package/dist/{src → cjs/src}/formatters/json.d.ts +0 -0
- /package/dist/{src → cjs/src}/formatters/performance.d.ts +0 -0
- /package/dist/{src → cjs/src}/formatters/table.d.ts +0 -0
- /package/dist/{src → cjs/src}/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/utils/commands.d.ts +0 -0
- /package/dist/{src → cjs/src}/utils/object-utils.d.ts +0 -0
- /package/dist/{src → cjs/src}/utils/validation.d.ts +0 -0
- /package/dist/{bin → esm/bin}/ya-modbus.js +0 -0
- /package/dist/{src → esm/src}/commands/discover.js +0 -0
- /package/dist/{src → esm/src}/commands/list-devices.js +0 -0
- /package/dist/{src → esm/src}/commands/read.js +0 -0
- /package/dist/{src → esm/src}/commands/show-defaults.js +0 -0
- /package/dist/{src → esm/src}/commands/write.js +0 -0
- /package/dist/{src → esm/src}/discovery/constants.js +0 -0
- /package/dist/{src → esm/src}/discovery/device-identifier.js +0 -0
- /package/dist/{src → esm/src}/discovery/parameter-generator-utils.js +0 -0
- /package/dist/{src → esm/src}/discovery/parameter-generator.js +0 -0
- /package/dist/{src → esm/src}/discovery/scanner.js +0 -0
- /package/dist/{src → esm/src}/formatters/discovery-results.js +0 -0
- /package/dist/{src → esm/src}/formatters/json.js +0 -0
- /package/dist/{src → esm/src}/formatters/performance.js +0 -0
- /package/dist/{src → esm/src}/formatters/table.js +0 -0
- /package/dist/{src → esm/src}/index.js +0 -0
- /package/dist/{src → esm/src}/utils/commands.js +0 -0
- /package/dist/{src → esm/src}/utils/object-utils.js +0 -0
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { type LoadedDriver } from '@ya-modbus/driver-loader';
|
|
2
|
+
import type { BaudRate, DataBits, DataPoint, DefaultSerialConfig, DeviceDriver, Parity, StopBits, Transport } from '@ya-modbus/driver-types';
|
|
3
|
+
/**
|
|
4
|
+
* Default RTU transport configuration values
|
|
5
|
+
*/
|
|
6
|
+
export declare const DEFAULT_RTU_CONFIG: {
|
|
7
|
+
readonly port: "/dev/ttyUSB0";
|
|
8
|
+
readonly baudRate: BaudRate;
|
|
9
|
+
readonly dataBits: DataBits;
|
|
10
|
+
readonly parity: Parity;
|
|
11
|
+
readonly stopBits: StopBits;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Default TCP port for Modbus TCP
|
|
15
|
+
*/
|
|
16
|
+
export declare const DEFAULT_TCP_PORT = 502;
|
|
17
|
+
/**
|
|
18
|
+
* Check if a data point is readable
|
|
19
|
+
*/
|
|
20
|
+
export declare function isReadable(dataPoint: DataPoint): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Check if a data point is writable
|
|
23
|
+
*/
|
|
24
|
+
export declare function isWritable(dataPoint: DataPoint): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Find a data point by ID
|
|
27
|
+
*
|
|
28
|
+
* @param driver - Device driver instance
|
|
29
|
+
* @param id - Data point ID
|
|
30
|
+
* @returns Data point definition
|
|
31
|
+
* @throws Error if data point not found
|
|
32
|
+
*/
|
|
33
|
+
export declare function findDataPoint(driver: DeviceDriver, id: string): DataPoint;
|
|
34
|
+
/**
|
|
35
|
+
* Find and validate a readable data point
|
|
36
|
+
*
|
|
37
|
+
* @param driver - Device driver instance
|
|
38
|
+
* @param id - Data point ID
|
|
39
|
+
* @returns Data point definition
|
|
40
|
+
* @throws Error if data point not found or not readable
|
|
41
|
+
*/
|
|
42
|
+
export declare function findReadableDataPoint(driver: DeviceDriver, id: string): DataPoint;
|
|
43
|
+
/**
|
|
44
|
+
* Find and validate a writable data point
|
|
45
|
+
*
|
|
46
|
+
* @param driver - Device driver instance
|
|
47
|
+
* @param id - Data point ID
|
|
48
|
+
* @returns Data point definition
|
|
49
|
+
* @throws Error if data point not found or not writable
|
|
50
|
+
*/
|
|
51
|
+
export declare function findWritableDataPoint(driver: DeviceDriver, id: string): DataPoint;
|
|
52
|
+
/**
|
|
53
|
+
* Compare two floating point numbers for approximate equality
|
|
54
|
+
*
|
|
55
|
+
* Uses relative error to handle both very small and very large values correctly.
|
|
56
|
+
* Also checks absolute error to handle values near zero.
|
|
57
|
+
*
|
|
58
|
+
* @param a - First value
|
|
59
|
+
* @param b - Second value
|
|
60
|
+
* @param relativeEpsilon - Relative error tolerance (default: 1e-6, or 0.0001%)
|
|
61
|
+
* @param absoluteEpsilon - Absolute error tolerance for values near zero (default: 1e-9)
|
|
62
|
+
* @returns True if values are approximately equal
|
|
63
|
+
*/
|
|
64
|
+
export declare function floatsEqual(a: number, b: number, relativeEpsilon?: number, absoluteEpsilon?: number): boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Parse value string based on data point type
|
|
67
|
+
*/
|
|
68
|
+
export declare function parseValue(valueStr: string, dataPoint: DataPoint): unknown;
|
|
69
|
+
/**
|
|
70
|
+
* Validate value against data point constraints
|
|
71
|
+
*/
|
|
72
|
+
export declare function validateValue(value: unknown, dataPoint: DataPoint): void;
|
|
73
|
+
/**
|
|
74
|
+
* Prompt user for confirmation
|
|
75
|
+
*/
|
|
76
|
+
export declare function confirm(message: string): Promise<boolean>;
|
|
77
|
+
/**
|
|
78
|
+
* Options for creating a transport
|
|
79
|
+
*/
|
|
80
|
+
export interface TransportOptions {
|
|
81
|
+
host?: string;
|
|
82
|
+
port?: string | number;
|
|
83
|
+
baudRate?: number;
|
|
84
|
+
dataBits?: number;
|
|
85
|
+
parity?: string;
|
|
86
|
+
stopBits?: number;
|
|
87
|
+
slaveId: number;
|
|
88
|
+
timeout?: number;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Options for loading a driver
|
|
92
|
+
*/
|
|
93
|
+
export interface DriverOptions {
|
|
94
|
+
driver?: string;
|
|
95
|
+
device?: string;
|
|
96
|
+
slaveId: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Execute a function with a transport, ensuring cleanup
|
|
100
|
+
*
|
|
101
|
+
* @param options - Transport configuration options
|
|
102
|
+
* @param fn - Function to execute with the transport
|
|
103
|
+
* @returns Result of the function
|
|
104
|
+
*/
|
|
105
|
+
export declare function withTransport<T>(options: TransportOptions, fn: (transport: Transport) => Promise<T>): Promise<T>;
|
|
106
|
+
/**
|
|
107
|
+
* Load driver metadata without creating an instance
|
|
108
|
+
*
|
|
109
|
+
* When no driver name is provided, auto-detects from current working directory.
|
|
110
|
+
*
|
|
111
|
+
* @param driverName - Optional driver package name (auto-detects from cwd if not specified)
|
|
112
|
+
* @returns Loaded driver metadata
|
|
113
|
+
*/
|
|
114
|
+
export declare function loadDriverMetadata(driverName?: string): Promise<LoadedDriver>;
|
|
115
|
+
/**
|
|
116
|
+
* Get the effective default config for a device
|
|
117
|
+
*
|
|
118
|
+
* Returns device-specific config if available, otherwise driver-level config.
|
|
119
|
+
*
|
|
120
|
+
* @param driverMetadata - Loaded driver metadata
|
|
121
|
+
* @param device - Optional device key
|
|
122
|
+
* @returns Effective default config or undefined
|
|
123
|
+
*/
|
|
124
|
+
export declare function getEffectiveDefaultConfig(driverMetadata: LoadedDriver | undefined, device: string | undefined): DefaultSerialConfig | undefined;
|
|
125
|
+
/**
|
|
126
|
+
* Get the effective supported config for a device
|
|
127
|
+
*
|
|
128
|
+
* Returns device-specific constraints if available, otherwise driver-level constraints.
|
|
129
|
+
*
|
|
130
|
+
* @param driverMetadata - Loaded driver metadata
|
|
131
|
+
* @param device - Optional device key
|
|
132
|
+
* @returns Effective supported config or undefined
|
|
133
|
+
*/
|
|
134
|
+
export declare function getEffectiveSupportedConfig(driverMetadata: LoadedDriver | undefined, device: string | undefined): LoadedDriver['supportedConfig'] | undefined;
|
|
135
|
+
/**
|
|
136
|
+
* Create an effective driver metadata with device-specific configs resolved
|
|
137
|
+
*
|
|
138
|
+
* This creates a view of the driver metadata where defaultConfig and supportedConfig
|
|
139
|
+
* are resolved based on the selected device. This allows validation and other
|
|
140
|
+
* functions to work with device-specific settings transparently.
|
|
141
|
+
*
|
|
142
|
+
* @param driverMetadata - Loaded driver metadata
|
|
143
|
+
* @param device - Optional device key
|
|
144
|
+
* @returns Driver metadata with effective configs for the selected device
|
|
145
|
+
*/
|
|
146
|
+
export declare function getEffectiveDriverMetadata(driverMetadata: LoadedDriver, device: string | undefined): LoadedDriver;
|
|
147
|
+
/**
|
|
148
|
+
* Apply driver defaults to transport options
|
|
149
|
+
*
|
|
150
|
+
* Uses device-specific defaults if a device is selected, otherwise driver-level defaults.
|
|
151
|
+
*
|
|
152
|
+
* @param options - Transport options (may be incomplete)
|
|
153
|
+
* @param driverMetadata - Loaded driver metadata with defaults
|
|
154
|
+
* @param device - Optional device key for multi-device drivers
|
|
155
|
+
* @returns Transport options with defaults applied
|
|
156
|
+
*/
|
|
157
|
+
export declare function applyDriverDefaults(options: TransportOptions, driverMetadata?: LoadedDriver, device?: string): TransportOptions;
|
|
158
|
+
/**
|
|
159
|
+
* Execute a function with a driver instance, ensuring cleanup
|
|
160
|
+
*
|
|
161
|
+
* @param transport - Transport to use for driver communication
|
|
162
|
+
* @param driverMetadata - Loaded driver metadata
|
|
163
|
+
* @param slaveId - Modbus slave ID
|
|
164
|
+
* @param device - Optional device key for multi-device drivers
|
|
165
|
+
* @param fn - Function to execute with the driver
|
|
166
|
+
* @returns Result of the function
|
|
167
|
+
*/
|
|
168
|
+
export declare function withDriverInstance<T>(transport: Transport, driverMetadata: LoadedDriver, slaveId: number, device: string | undefined, fn: (driver: DeviceDriver) => Promise<T>): Promise<T>;
|
|
169
|
+
/**
|
|
170
|
+
* Execute a function with a driver instance, handling the complete workflow
|
|
171
|
+
*
|
|
172
|
+
* This is a convenience function that:
|
|
173
|
+
* 1. Loads driver metadata (DEFAULT_CONFIG, SUPPORTED_CONFIG)
|
|
174
|
+
* 2. Validates user options against driver constraints (SUPPORTED_CONFIG)
|
|
175
|
+
* 3. Applies driver defaults to user options
|
|
176
|
+
* 4. Validates merged options (catches invalid third-party driver defaults)
|
|
177
|
+
* 5. Creates transport with merged configuration
|
|
178
|
+
* 6. Creates driver instance
|
|
179
|
+
* 7. Executes callback with driver and merged options
|
|
180
|
+
* 8. Ensures cleanup (closes transport)
|
|
181
|
+
*
|
|
182
|
+
* @param options - Combined transport and driver options
|
|
183
|
+
* @param fn - Function to execute with the driver (and optionally merged config)
|
|
184
|
+
* @returns Result of the function
|
|
185
|
+
* @throws ValidationError if user options or driver defaults violate constraints
|
|
186
|
+
*/
|
|
187
|
+
export declare function withDriver<T>(options: TransportOptions & {
|
|
188
|
+
driver?: string;
|
|
189
|
+
device?: string;
|
|
190
|
+
}, fn: (driver: DeviceDriver, mergedOptions: TransportOptions) => Promise<T>): Promise<T>;
|
|
191
|
+
//# sourceMappingURL=commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../../src/utils/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../../src/utils/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Object utility functions
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Remove undefined properties from an object
|
|
6
|
+
*
|
|
7
|
+
* Creates a new object with all properties that are not undefined.
|
|
8
|
+
* Preserves null, false, 0, empty string, and other falsy values.
|
|
9
|
+
*
|
|
10
|
+
* @param obj - Source object
|
|
11
|
+
* @returns New object without undefined properties
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```typescript
|
|
15
|
+
* omitUndefined({ a: 1, b: undefined, c: 'hello' })
|
|
16
|
+
* // Returns: { a: 1, c: 'hello' }
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare function omitUndefined<T extends Record<string, unknown>>(obj: T): Partial<T>;
|
|
20
|
+
//# sourceMappingURL=object-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-utils.d.ts","sourceRoot":"","sources":["../../../../src/utils/object-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAUnF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-utils.js","sourceRoot":"","sources":["../../../../src/utils/object-utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,aAAa,CAAoC,GAAM;IACrE,MAAM,MAAM,GAAe,EAAE,CAAA;IAE7B,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAA;QACxB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validation utilities for CLI options using driver SUPPORTED_CONFIG
|
|
3
|
+
*/
|
|
4
|
+
import type { LoadedDriver } from '@ya-modbus/driver-loader';
|
|
5
|
+
/**
|
|
6
|
+
* Validation error with helpful context
|
|
7
|
+
*/
|
|
8
|
+
export declare class ValidationError extends Error {
|
|
9
|
+
readonly field: string;
|
|
10
|
+
readonly value: unknown;
|
|
11
|
+
readonly validValues?: readonly unknown[] | undefined;
|
|
12
|
+
constructor(message: string, field: string, value: unknown, validValues?: readonly unknown[] | undefined);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Validate baud rate against driver constraints
|
|
16
|
+
*
|
|
17
|
+
* @param baudRate - User-specified baud rate
|
|
18
|
+
* @param driverMetadata - Loaded driver metadata
|
|
19
|
+
* @throws ValidationError if invalid
|
|
20
|
+
*/
|
|
21
|
+
export declare function validateBaudRate(baudRate: number | undefined, driverMetadata?: LoadedDriver): void;
|
|
22
|
+
/**
|
|
23
|
+
* Validate parity against driver constraints
|
|
24
|
+
*
|
|
25
|
+
* @param parity - User-specified parity
|
|
26
|
+
* @param driverMetadata - Loaded driver metadata
|
|
27
|
+
* @throws ValidationError if invalid
|
|
28
|
+
*/
|
|
29
|
+
export declare function validateParity(parity: string | undefined, driverMetadata?: LoadedDriver): void;
|
|
30
|
+
/**
|
|
31
|
+
* Validate data bits against driver constraints
|
|
32
|
+
*
|
|
33
|
+
* @param dataBits - User-specified data bits
|
|
34
|
+
* @param driverMetadata - Loaded driver metadata
|
|
35
|
+
* @throws ValidationError if invalid
|
|
36
|
+
*/
|
|
37
|
+
export declare function validateDataBits(dataBits: number | undefined, driverMetadata?: LoadedDriver): void;
|
|
38
|
+
/**
|
|
39
|
+
* Validate stop bits against driver constraints
|
|
40
|
+
*
|
|
41
|
+
* @param stopBits - User-specified stop bits
|
|
42
|
+
* @param driverMetadata - Loaded driver metadata
|
|
43
|
+
* @throws ValidationError if invalid
|
|
44
|
+
*/
|
|
45
|
+
export declare function validateStopBits(stopBits: number | undefined, driverMetadata?: LoadedDriver): void;
|
|
46
|
+
/**
|
|
47
|
+
* Validate slave ID/address against driver constraints
|
|
48
|
+
*
|
|
49
|
+
* @param slaveId - User-specified slave ID
|
|
50
|
+
* @param driverMetadata - Loaded driver metadata
|
|
51
|
+
* @throws ValidationError if invalid
|
|
52
|
+
*/
|
|
53
|
+
export declare function validateSlaveId(slaveId: number | undefined, driverMetadata?: LoadedDriver): void;
|
|
54
|
+
/**
|
|
55
|
+
* Validate all serial connection parameters
|
|
56
|
+
*
|
|
57
|
+
* Validates baudRate, parity, dataBits, stopBits, and slaveId against driver constraints.
|
|
58
|
+
*
|
|
59
|
+
* @param options - Connection options to validate
|
|
60
|
+
* @param driverMetadata - Loaded driver metadata
|
|
61
|
+
* @throws ValidationError if any parameter is invalid
|
|
62
|
+
*/
|
|
63
|
+
export declare function validateSerialOptions(options: {
|
|
64
|
+
baudRate?: number;
|
|
65
|
+
parity?: string;
|
|
66
|
+
dataBits?: number;
|
|
67
|
+
stopBits?: number;
|
|
68
|
+
slaveId?: number;
|
|
69
|
+
}, driverMetadata?: LoadedDriver): void;
|
|
70
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../../src/utils/validation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAG5D;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,KAAK,EAAE,MAAM;aACb,KAAK,EAAE,OAAO;aACd,WAAW,CAAC,EAAE,SAAS,OAAO,EAAE;gBAHhD,OAAO,EAAE,MAAM,EACC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,WAAW,CAAC,EAAE,SAAS,OAAO,EAAE,YAAA;CAKnD;AAcD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,cAAc,CAAC,EAAE,YAAY,GAC5B,IAAI,CAwBN;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE,cAAc,CAAC,EAAE,YAAY,GAAG,IAAI,CAwB9F;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,cAAc,CAAC,EAAE,YAAY,GAC5B,IAAI,CAwBN;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,cAAc,CAAC,EAAE,YAAY,GAC5B,IAAI,CAwBN;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,cAAc,CAAC,EAAE,YAAY,GAAG,IAAI,CAuBhG;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE;IACP,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,EACD,cAAc,CAAC,EAAE,YAAY,GAC5B,IAAI,CAMN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../../src/utils/validation.ts"],"names":[],"mappings":"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"}
|