zwave-js 8.7.8 → 8.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/CommandClass.js +1 -0
- package/build/CommandClass.js.map +1 -1
- package/build/Controller.d.ts +1 -0
- package/build/Controller.d.ts.map +1 -1
- package/build/Controller.js +4 -1
- package/build/Controller.js.map +1 -1
- package/build/Node.d.ts +1 -1
- package/build/Node.d.ts.map +1 -1
- package/build/Node.js.map +1 -1
- package/build/Utils.d.ts +1 -0
- package/build/Utils.d.ts.map +1 -1
- package/build/Utils.js +7 -1
- package/build/Utils.js.map +1 -1
- package/build/lib/commandclass/API.d.ts +15 -3
- package/build/lib/commandclass/API.d.ts.map +1 -1
- package/build/lib/commandclass/API.js +50 -0
- package/build/lib/commandclass/API.js.map +1 -1
- package/build/lib/commandclass/CommandClass.d.ts +0 -6
- package/build/lib/commandclass/CommandClass.d.ts.map +1 -1
- package/build/lib/commandclass/CommandClass.js +0 -12
- package/build/lib/commandclass/CommandClass.js.map +1 -1
- package/build/lib/commandclass/Security2CC.d.ts +1 -10
- package/build/lib/commandclass/Security2CC.d.ts.map +1 -1
- package/build/lib/commandclass/Security2CC.js +16 -48
- package/build/lib/commandclass/Security2CC.js.map +1 -1
- package/build/lib/commandclass/SecurityCC.d.ts +2 -9
- package/build/lib/commandclass/SecurityCC.d.ts.map +1 -1
- package/build/lib/commandclass/SecurityCC.js +9 -53
- package/build/lib/commandclass/SecurityCC.js.map +1 -1
- package/build/lib/commandclass/WakeUpCC.d.ts.map +1 -1
- package/build/lib/commandclass/WakeUpCC.js +1 -0
- package/build/lib/commandclass/WakeUpCC.js.map +1 -1
- package/build/lib/controller/BridgeApplicationCommandRequest.d.ts +2 -6
- package/build/lib/controller/BridgeApplicationCommandRequest.d.ts.map +1 -1
- package/build/lib/controller/BridgeApplicationCommandRequest.js +9 -19
- package/build/lib/controller/BridgeApplicationCommandRequest.js.map +1 -1
- package/build/lib/controller/Controller.d.ts +12 -2
- package/build/lib/controller/Controller.d.ts.map +1 -1
- package/build/lib/controller/Controller.js +14 -6
- package/build/lib/controller/Controller.js.map +1 -1
- package/build/lib/controller/Inclusion.d.ts +1 -1
- package/build/lib/controller/SendDataBridgeMessages.d.ts +5 -3
- package/build/lib/controller/SendDataBridgeMessages.d.ts.map +1 -1
- package/build/lib/controller/SendDataBridgeMessages.js +21 -8
- package/build/lib/controller/SendDataBridgeMessages.js.map +1 -1
- package/build/lib/controller/SendDataMessages.d.ts +5 -3
- package/build/lib/controller/SendDataMessages.d.ts.map +1 -1
- package/build/lib/controller/SendDataMessages.js +21 -9
- package/build/lib/controller/SendDataMessages.js.map +1 -1
- package/build/lib/controller/SendDataShared.d.ts +72 -2
- package/build/lib/controller/SendDataShared.d.ts.map +1 -1
- package/build/lib/controller/SendDataShared.js +195 -1
- package/build/lib/controller/SendDataShared.js.map +1 -1
- package/build/lib/driver/CommandQueueMachine.d.ts +7 -3
- package/build/lib/driver/CommandQueueMachine.d.ts.map +1 -1
- package/build/lib/driver/CommandQueueMachine.js +66 -29
- package/build/lib/driver/CommandQueueMachine.js.map +1 -1
- package/build/lib/driver/Driver.d.ts +16 -12
- package/build/lib/driver/Driver.d.ts.map +1 -1
- package/build/lib/driver/Driver.js +179 -164
- package/build/lib/driver/Driver.js.map +1 -1
- package/build/lib/driver/MessageGenerators.d.ts +26 -0
- package/build/lib/driver/MessageGenerators.d.ts.map +1 -0
- package/build/lib/driver/MessageGenerators.js +246 -0
- package/build/lib/driver/MessageGenerators.js.map +1 -0
- package/build/lib/driver/SendThreadMachine.d.ts +24 -53
- package/build/lib/driver/SendThreadMachine.d.ts.map +1 -1
- package/build/lib/driver/SendThreadMachine.js +160 -618
- package/build/lib/driver/SendThreadMachine.js.map +1 -1
- package/build/lib/driver/StateMachineShared.d.ts +2 -0
- package/build/lib/driver/StateMachineShared.d.ts.map +1 -1
- package/build/lib/driver/StateMachineShared.js +21 -10
- package/build/lib/driver/StateMachineShared.js.map +1 -1
- package/build/lib/driver/Transaction.d.ts +35 -3
- package/build/lib/driver/Transaction.d.ts.map +1 -1
- package/build/lib/driver/Transaction.js +20 -15
- package/build/lib/driver/Transaction.js.map +1 -1
- package/build/lib/driver/TransactionMachine.d.ts +30 -0
- package/build/lib/driver/TransactionMachine.d.ts.map +1 -0
- package/build/lib/driver/TransactionMachine.js +247 -0
- package/build/lib/driver/TransactionMachine.js.map +1 -0
- package/build/lib/driver/ZWaveOptions.d.ts +0 -2
- package/build/lib/driver/ZWaveOptions.d.ts.map +1 -1
- package/build/lib/message/Constants.d.ts +8 -9
- package/build/lib/message/Constants.d.ts.map +1 -1
- package/build/lib/message/Constants.js +9 -12
- package/build/lib/message/Constants.js.map +1 -1
- package/build/lib/message/Message.d.ts +5 -1
- package/build/lib/message/Message.d.ts.map +1 -1
- package/build/lib/message/Message.js +11 -0
- package/build/lib/message/Message.js.map +1 -1
- package/build/lib/node/HealthCheck.d.ts +8 -0
- package/build/lib/node/HealthCheck.d.ts.map +1 -0
- package/build/lib/node/HealthCheck.js +83 -0
- package/build/lib/node/HealthCheck.js.map +1 -0
- package/build/lib/node/Node.d.ts +11 -3
- package/build/lib/node/Node.d.ts.map +1 -1
- package/build/lib/node/Node.js +283 -7
- package/build/lib/node/Node.js.map +1 -1
- package/build/lib/node/Types.d.ts +132 -1
- package/build/lib/node/Types.d.ts.map +1 -1
- package/build/lib/node/Types.js.map +1 -1
- package/build/lib/serialapi/misc/GetBackgroundRSSIMessages.d.ts +14 -0
- package/build/lib/serialapi/misc/GetBackgroundRSSIMessages.d.ts.map +1 -0
- package/build/lib/serialapi/misc/GetBackgroundRSSIMessages.js +46 -0
- package/build/lib/serialapi/misc/GetBackgroundRSSIMessages.js.map +1 -0
- package/package.json +14 -14
|
@@ -12,19 +12,42 @@ const setCurrentTransaction = (0, xstate_1.assign)((ctx) => ({
|
|
|
12
12
|
...ctx,
|
|
13
13
|
currentTransaction: ctx.queue.shift(),
|
|
14
14
|
}));
|
|
15
|
-
const deleteCurrentTransaction = (0, xstate_1.assign)((ctx) =>
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
const deleteCurrentTransaction = (0, xstate_1.assign)((ctx) => {
|
|
16
|
+
ctx.callbackIDs.delete(ctx.currentTransaction);
|
|
17
|
+
return {
|
|
18
|
+
...ctx,
|
|
19
|
+
currentTransaction: undefined,
|
|
20
|
+
};
|
|
21
|
+
});
|
|
22
|
+
const stopTransaction = (0, actions_1.sendParent)((ctx, evt) => ({
|
|
23
|
+
type: "forward",
|
|
24
|
+
from: "QUEUE",
|
|
25
|
+
to: ctx.callbackIDs.get(evt.transaction),
|
|
26
|
+
payload: {
|
|
27
|
+
type: "stop",
|
|
28
|
+
},
|
|
18
29
|
}));
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
return
|
|
30
|
+
const removeFromQueue = (0, xstate_1.assign)((ctx, evt) => {
|
|
31
|
+
ctx.queue.remove(evt.transaction);
|
|
32
|
+
ctx.callbackIDs.delete(evt.transaction);
|
|
33
|
+
return ctx;
|
|
34
|
+
});
|
|
35
|
+
const stopAbortMachine = (0, actions_1.pure)((ctx) => {
|
|
36
|
+
const ret = [];
|
|
37
|
+
if (ctx.abortActor) {
|
|
38
|
+
ret.push((0, actions_1.stop)(ctx.abortActor.id));
|
|
39
|
+
}
|
|
40
|
+
ret.push((0, xstate_1.assign)({ abortActor: (_) => undefined }));
|
|
41
|
+
return ret;
|
|
23
42
|
});
|
|
24
43
|
const notifyResult = (0, actions_1.sendParent)((ctx, evt) => ({
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
44
|
+
type: "forward",
|
|
45
|
+
from: "QUEUE",
|
|
46
|
+
to: ctx.callbackIDs.get(ctx.currentTransaction),
|
|
47
|
+
payload: {
|
|
48
|
+
...evt.data,
|
|
49
|
+
type: evt.data.type === "success" ? "command_success" : "command_failure",
|
|
50
|
+
},
|
|
28
51
|
}));
|
|
29
52
|
const notifyError = (0, actions_1.sendParent)((ctx, evt) => ({
|
|
30
53
|
type: "command_error",
|
|
@@ -32,53 +55,63 @@ const notifyError = (0, actions_1.sendParent)((ctx, evt) => ({
|
|
|
32
55
|
transaction: ctx.currentTransaction,
|
|
33
56
|
}));
|
|
34
57
|
function createCommandQueueMachine(implementations, params) {
|
|
58
|
+
const spawnAbortMachine = (0, xstate_1.assign)({
|
|
59
|
+
abortActor: (_) => (0, xstate_1.spawn)((0, SerialAPICommandMachine_1.createSerialAPICommandMachine)(implementations.createSendDataAbort(), implementations, params)),
|
|
60
|
+
});
|
|
35
61
|
return (0, xstate_1.Machine)({
|
|
62
|
+
preserveActionOrder: true,
|
|
36
63
|
id: "CommandQueue",
|
|
37
64
|
initial: "idle",
|
|
38
65
|
context: {
|
|
39
66
|
queue: new sorted_list_1.SortedList(),
|
|
67
|
+
callbackIDs: new WeakMap(),
|
|
40
68
|
// currentTransaction: undefined,
|
|
41
69
|
},
|
|
42
70
|
on: {
|
|
43
71
|
add: {
|
|
44
72
|
actions: [
|
|
45
|
-
(0, xstate_1.assign)({
|
|
46
|
-
queue
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
},
|
|
73
|
+
(0, xstate_1.assign)((ctx, evt) => {
|
|
74
|
+
ctx.queue.add(evt.transaction);
|
|
75
|
+
ctx.callbackIDs.set(evt.transaction, evt.from);
|
|
76
|
+
return ctx;
|
|
50
77
|
}),
|
|
51
78
|
(0, actions_1.raise)("trigger"),
|
|
52
79
|
],
|
|
53
80
|
},
|
|
54
81
|
// By default, return all messages as unsolicited. The only exception is an active serial API machine
|
|
55
82
|
message: { actions: StateMachineShared_1.respondUnsolicited },
|
|
83
|
+
// What to do when removing transactions depends on their state
|
|
84
|
+
remove: [
|
|
85
|
+
// Abort ongoing SendData commands when the transaction is removed. The transaction machine will
|
|
86
|
+
// stop on its own
|
|
87
|
+
{
|
|
88
|
+
cond: "isCurrentTransactionAndSendData",
|
|
89
|
+
actions: spawnAbortMachine,
|
|
90
|
+
},
|
|
91
|
+
// If the transaction to remove is the current transaction, but not SendData
|
|
92
|
+
// we can't just end it because it would risk putting the driver and stick out of sync
|
|
93
|
+
{
|
|
94
|
+
cond: "isNotCurrentTransaction",
|
|
95
|
+
actions: [stopTransaction, removeFromQueue],
|
|
96
|
+
},
|
|
97
|
+
],
|
|
56
98
|
},
|
|
57
99
|
states: {
|
|
58
100
|
idle: {
|
|
59
101
|
entry: deleteCurrentTransaction,
|
|
60
102
|
on: {
|
|
61
|
-
trigger: "
|
|
103
|
+
trigger: "idle",
|
|
62
104
|
},
|
|
63
105
|
always: {
|
|
64
106
|
target: "execute",
|
|
107
|
+
actions: setCurrentTransaction,
|
|
65
108
|
cond: "queueNotEmpty",
|
|
66
109
|
},
|
|
67
110
|
},
|
|
68
111
|
execute: {
|
|
69
|
-
entry: setCurrentTransaction,
|
|
70
112
|
on: {
|
|
71
113
|
// Now the message event gets auto-forwarded to the serial API machine
|
|
72
114
|
message: undefined,
|
|
73
|
-
// Clear the queue and abort ongoing send data commands when a reset event is received
|
|
74
|
-
reset: [
|
|
75
|
-
{
|
|
76
|
-
cond: "currentTransactionIsSendData",
|
|
77
|
-
actions: clearQueue,
|
|
78
|
-
target: "abortSendData",
|
|
79
|
-
},
|
|
80
|
-
{ actions: clearQueue, target: "executeDone" },
|
|
81
|
-
],
|
|
82
115
|
},
|
|
83
116
|
invoke: {
|
|
84
117
|
id: "execute",
|
|
@@ -123,6 +156,7 @@ function createCommandQueueMachine(implementations, params) {
|
|
|
123
156
|
actions: [
|
|
124
157
|
// Delete the current transaction after we're done
|
|
125
158
|
deleteCurrentTransaction,
|
|
159
|
+
stopAbortMachine,
|
|
126
160
|
],
|
|
127
161
|
},
|
|
128
162
|
},
|
|
@@ -133,7 +167,7 @@ function createCommandQueueMachine(implementations, params) {
|
|
|
133
167
|
// If there is an error while creating the command machine (e.g. during message serialization)
|
|
134
168
|
// wrap it in a rejected promise, so xstate can handle it
|
|
135
169
|
try {
|
|
136
|
-
return (0, SerialAPICommandMachine_1.createSerialAPICommandMachine)(ctx.currentTransaction.
|
|
170
|
+
return (0, SerialAPICommandMachine_1.createSerialAPICommandMachine)(ctx.currentTransaction.parts.current, implementations, params);
|
|
137
171
|
}
|
|
138
172
|
catch (e) {
|
|
139
173
|
implementations.log(`Unexpected error during SerialAPI command: ${(0, shared_1.getErrorMessage)(e, true)}`, "error");
|
|
@@ -145,10 +179,13 @@ function createCommandQueueMachine(implementations, params) {
|
|
|
145
179
|
guards: {
|
|
146
180
|
executeSuccessful: (_, evt) => { var _a; return ((_a = evt.data) === null || _a === void 0 ? void 0 : _a.type) === "success"; },
|
|
147
181
|
queueNotEmpty: (ctx) => ctx.queue.length > 0,
|
|
148
|
-
|
|
182
|
+
isNotCurrentTransaction: (ctx, evt) => ctx.currentTransaction !== evt.transaction,
|
|
183
|
+
isCurrentTransactionAndSendData: (ctx, evt) => ctx.currentTransaction === evt.transaction &&
|
|
184
|
+
(0, SendDataShared_1.isSendData)(evt.transaction.message),
|
|
185
|
+
currentTransactionIsSendData: (ctx) => { var _a; return (0, SendDataShared_1.isSendData)((_a = ctx.currentTransaction) === null || _a === void 0 ? void 0 : _a.parts.current); },
|
|
149
186
|
isSendDataWithCallbackTimeout: (ctx, evt) => {
|
|
150
187
|
var _a, _b, _c;
|
|
151
|
-
return ((0, SendDataShared_1.isSendData)((_a = ctx.currentTransaction) === null || _a === void 0 ? void 0 : _a.
|
|
188
|
+
return ((0, SendDataShared_1.isSendData)((_a = ctx.currentTransaction) === null || _a === void 0 ? void 0 : _a.parts.current) &&
|
|
152
189
|
((_b = evt.data) === null || _b === void 0 ? void 0 : _b.type) === "failure" &&
|
|
153
190
|
((_c = evt.data) === null || _c === void 0 ? void 0 : _c.reason) === "callback timeout");
|
|
154
191
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandQueueMachine.js","sourceRoot":"","sources":["../../../src/lib/driver/CommandQueueMachine.ts"],"names":[],"mappings":";;;AAAA,6CAAmD;AACnD,8DAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"CommandQueueMachine.js","sourceRoot":"","sources":["../../../src/lib/driver/CommandQueueMachine.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,11 +4,12 @@ import { CommandClasses, Duration, LogConfig } from "@zwave-js/core";
|
|
|
4
4
|
import { DeepPartial, TypedEventEmitter } from "@zwave-js/shared";
|
|
5
5
|
import * as util from "util";
|
|
6
6
|
import { CommandClass } from "../commandclass/CommandClass";
|
|
7
|
+
import { ICommandClassContainer } from "../commandclass/ICommandClassContainer";
|
|
7
8
|
import { SupervisionResult, SupervisionStatus } from "../commandclass/SupervisionCC";
|
|
8
9
|
import { ZWaveController } from "../controller/Controller";
|
|
9
10
|
import { SendDataBridgeRequest, SendDataMulticastBridgeRequest } from "../controller/SendDataBridgeMessages";
|
|
10
11
|
import { SendDataMulticastRequest, SendDataRequest } from "../controller/SendDataMessages";
|
|
11
|
-
import { TransmitOptions } from "../controller/SendDataShared";
|
|
12
|
+
import { SendDataMessage, TransmitOptions, TXReport } from "../controller/SendDataShared";
|
|
12
13
|
import { FunctionType, MessagePriority } from "../message/Constants";
|
|
13
14
|
import { Message } from "../message/Message";
|
|
14
15
|
import { AppInfo } from "../telemetry/statistics";
|
|
@@ -34,6 +35,11 @@ export interface SendMessageOptions {
|
|
|
34
35
|
expire?: number;
|
|
35
36
|
/** If a Wake Up On Demand should be requested for the target node. */
|
|
36
37
|
requestWakeUpOnDemand?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* When a message sent to a node results in a TX report to be received, this callback will be called.
|
|
40
|
+
* For multi-stage messages, the callback may be called multiple times.
|
|
41
|
+
*/
|
|
42
|
+
onTXReport?: (report: TXReport) => void;
|
|
37
43
|
}
|
|
38
44
|
export interface SendCommandOptions extends SendMessageOptions {
|
|
39
45
|
/** How many times the driver should try to send the message. Defaults to the configured Driver option */
|
|
@@ -106,7 +112,7 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> {
|
|
|
106
112
|
private _controllerInterviewed;
|
|
107
113
|
private _nodesReady;
|
|
108
114
|
private _nodesReadyEventEmitted;
|
|
109
|
-
private
|
|
115
|
+
private openSerialport;
|
|
110
116
|
/** Indicates whether all nodes are ready, i.e. the "all nodes ready" event has been emitted */
|
|
111
117
|
get allNodesReady(): boolean;
|
|
112
118
|
private initValueDBs;
|
|
@@ -212,7 +218,6 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> {
|
|
|
212
218
|
private ensureReady;
|
|
213
219
|
/** Indicates whether the driver is ready, i.e. the "driver ready" event was emitted */
|
|
214
220
|
get ready(): boolean;
|
|
215
|
-
private _cleanupHandler;
|
|
216
221
|
/**
|
|
217
222
|
* Terminates the driver instance and closes the underlying serial connection.
|
|
218
223
|
* Must be called under any circumstances.
|
|
@@ -227,11 +232,6 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> {
|
|
|
227
232
|
private handleSecurityS2DecodeError;
|
|
228
233
|
/** Checks if a transaction failed because a node didn't respond in time */
|
|
229
234
|
private isMissingNodeACK;
|
|
230
|
-
/**
|
|
231
|
-
* Handles the case that a node failed to respond in time.
|
|
232
|
-
* Returns `true` if the transaction failure was handled, `false` if it needs to be rejected.
|
|
233
|
-
*/
|
|
234
|
-
private handleMissingNodeACK;
|
|
235
235
|
private partialCCSessions;
|
|
236
236
|
private getPartialCCSession;
|
|
237
237
|
/**
|
|
@@ -278,13 +278,19 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> {
|
|
|
278
278
|
*/
|
|
279
279
|
getNextCallbackId(): number;
|
|
280
280
|
private encapsulateCommands;
|
|
281
|
-
|
|
281
|
+
unwrapCommands(msg: Message & ICommandClassContainer): void;
|
|
282
|
+
/**
|
|
283
|
+
* Gets called whenever any Serial API command succeeded or a SendData command had a negative callback.
|
|
284
|
+
*/
|
|
285
|
+
private handleSerialAPICommandResult;
|
|
282
286
|
/**
|
|
283
287
|
* Sends a message to the Z-Wave stick.
|
|
284
288
|
* @param msg The message to send
|
|
285
289
|
* @param options (optional) Options regarding the message transmission
|
|
286
290
|
*/
|
|
287
291
|
sendMessage<TResponse extends Message = Message>(msg: Message, options?: SendMessageOptions): Promise<TResponse>;
|
|
292
|
+
/** Wraps a CC in the correct SendData message to use for sending */
|
|
293
|
+
createSendDataMessage(command: CommandClass, options?: Pick<SendCommandOptions, "autoEncapsulate" | "maxSendAttempts" | "transmitOptions">): SendDataMessage;
|
|
288
294
|
/**
|
|
289
295
|
* Sends a command to a Z-Wave node. If the node returns a command in response, that command will be the return value.
|
|
290
296
|
* If the command expects no response **or** the response times out, nothing will be returned
|
|
@@ -316,7 +322,7 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> {
|
|
|
316
322
|
/**
|
|
317
323
|
* Waits until an unsolicited serial message is received or a timeout has elapsed. Returns the received message.
|
|
318
324
|
*
|
|
319
|
-
* **Note:**
|
|
325
|
+
* **Note:** To wait for a certain CommandClass, better use {@link waitForCommand}.
|
|
320
326
|
* @param timeout The number of milliseconds to wait. If the timeout elapses, the returned promise will be rejected
|
|
321
327
|
* @param predicate A predicate function to test all incoming messages
|
|
322
328
|
*/
|
|
@@ -333,8 +339,6 @@ export declare class Driver extends TypedEventEmitter<DriverEventCallbacks> {
|
|
|
333
339
|
private moveMessagesToWakeupQueue;
|
|
334
340
|
/** Re-sorts the send queue */
|
|
335
341
|
private sortSendQueue;
|
|
336
|
-
/** Re-sends the current command if it is S2 encapsulated */
|
|
337
|
-
resendS2EncapsulatedCommand(): void;
|
|
338
342
|
private lastSaveToCache;
|
|
339
343
|
private readonly saveToCacheInterval;
|
|
340
344
|
private saveToCacheTimer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../../src/lib/driver/Driver.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAqB,MAAM,kBAAkB,CAAC;AACpE,OAAO,EACN,cAAc,EAGd,QAAQ,EAGR,SAAS,EAaT,MAAM,gBAAgB,CAAC;AAOxB,OAAO,EACN,WAAW,EAOX,iBAAiB,EACjB,MAAM,kBAAkB,CAAC;AAa1B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"Driver.d.ts","sourceRoot":"","sources":["../../../src/lib/driver/Driver.ts"],"names":[],"mappings":"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"}
|