@zaber/motion 7.10.0 → 7.12.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/LICENSE +14 -218
- package/dist/binding/wasm/zaber-motion-core.wasm +0 -0
- package/dist/lib/ascii/axis_settings.js +2 -2
- package/dist/lib/ascii/axis_settings.js.map +1 -1
- package/dist/lib/ascii/pvt_buffer.d.ts +6 -0
- package/dist/lib/ascii/pvt_buffer.d.ts.map +1 -1
- package/dist/lib/ascii/pvt_buffer.js +18 -0
- package/dist/lib/ascii/pvt_buffer.js.map +1 -1
- package/dist/lib/ascii/pvt_sequence.d.ts +37 -1
- package/dist/lib/ascii/pvt_sequence.d.ts.map +1 -1
- package/dist/lib/ascii/pvt_sequence.js +65 -1
- package/dist/lib/ascii/pvt_sequence.js.map +1 -1
- package/dist/lib/device_db_source.d.ts +23 -0
- package/dist/lib/device_db_source.d.ts.map +1 -0
- package/dist/lib/device_db_source.js +32 -0
- package/dist/lib/device_db_source.js.map +1 -0
- package/dist/lib/exceptions/device_db_failed_exception_data.d.ts +5 -0
- package/dist/lib/exceptions/device_db_failed_exception_data.d.ts.map +1 -1
- package/dist/lib/exceptions/device_db_failed_exception_data.js +4 -0
- package/dist/lib/exceptions/device_db_failed_exception_data.js.map +1 -1
- package/dist/lib/exceptions/device_db_inner_error.d.ts +26 -0
- package/dist/lib/exceptions/device_db_inner_error.d.ts.map +1 -0
- package/dist/lib/exceptions/device_db_inner_error.js +34 -0
- package/dist/lib/exceptions/device_db_inner_error.js.map +1 -0
- package/dist/lib/exceptions/index.d.ts +1 -0
- package/dist/lib/exceptions/index.d.ts.map +1 -1
- package/dist/lib/exceptions/index.js +1 -0
- package/dist/lib/exceptions/index.js.map +1 -1
- package/dist/lib/gateway/wasm-exec.d.ts +1 -1
- package/dist/lib/gateway/wasm-exec.d.ts.map +1 -1
- package/dist/lib/gateway/wasm-exec.js +1 -1
- package/dist/lib/gateway/wasm-exec.js.map +1 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/library.d.ts +7 -0
- package/dist/lib/library.d.ts.map +1 -1
- package/dist/lib/library.js +16 -1
- package/dist/lib/library.js.map +1 -1
- package/dist/lib/microscopy/microscope.d.ts +4 -0
- package/dist/lib/microscopy/microscope.d.ts.map +1 -1
- package/dist/lib/microscopy/microscope.js +33 -9
- package/dist/lib/microscopy/microscope.js.map +1 -1
- package/dist/lib/requests/index.d.ts +4 -0
- package/dist/lib/requests/index.d.ts.map +1 -1
- package/dist/lib/requests/index.js +4 -0
- package/dist/lib/requests/index.js.map +1 -1
- package/dist/lib/requests/pvt_buffer_get_sequence_data_request.d.ts +14 -0
- package/dist/lib/requests/pvt_buffer_get_sequence_data_request.d.ts.map +1 -0
- package/dist/lib/requests/pvt_buffer_get_sequence_data_request.js +34 -0
- package/dist/lib/requests/pvt_buffer_get_sequence_data_request.js.map +1 -0
- package/dist/lib/requests/pvt_generate_velocities_and_times_request.d.ts +17 -0
- package/dist/lib/requests/pvt_generate_velocities_and_times_request.d.ts.map +1 -0
- package/dist/lib/requests/pvt_generate_velocities_and_times_request.js +39 -0
- package/dist/lib/requests/pvt_generate_velocities_and_times_request.js.map +1 -0
- package/dist/lib/requests/pvt_submit_sequence_data_request.d.ts +16 -0
- package/dist/lib/requests/pvt_submit_sequence_data_request.d.ts.map +1 -0
- package/dist/lib/requests/pvt_submit_sequence_data_request.js +38 -0
- package/dist/lib/requests/pvt_submit_sequence_data_request.js.map +1 -0
- package/dist/lib/requests/set_device_db_layered_sources_request.d.ts +13 -0
- package/dist/lib/requests/set_device_db_layered_sources_request.d.ts.map +1 -0
- package/dist/lib/requests/set_device_db_layered_sources_request.js +28 -0
- package/dist/lib/requests/set_device_db_layered_sources_request.js.map +1 -0
- package/dist/lib/requests/set_device_db_source_request.d.ts +6 -0
- package/dist/lib/requests/set_device_db_source_request.d.ts.map +1 -1
- package/dist/lib/requests/set_device_db_source_request.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pvt_sequence.d.ts","sourceRoot":"","sources":["../../../src/ascii/pvt_sequence.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D;;;;;;GAMG;AACH,qBAAa,WAAW;IACtB;;OAEG;IACH,IAAW,MAAM,IAAI,MAAM,CAE1B;IACD,OAAO,CAAC,OAAO,CAAS;IAExB;;OAEG;IACH,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,OAAO,CAAC,MAAM,CAAS;IAEvB;;OAEG;IACH,IAAW,IAAI,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,IAAW,IAAI,IAAI,iBAAiB,EAAE,CAErC;IAED;;OAEG;IACH,IAAW,EAAE,IAAI,KAAK,CAErB;IACD,OAAO,CAAC,GAAG,CAAQ;gBAEP,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAMzC;;;;OAIG;IACU,kBAAkB,CAC7B,GAAG,OAAO,EAAE,iBAAiB,EAAE,GAC9B,OAAO,CAAC,IAAI,CAAC;IAgBhB;;;OAGG;IACU,SAAS,CACpB,GAAG,IAAI,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,IAAI,CAAC;IAgBhB;;;;;OAKG;IACU,mBAAmB,CAC9B,SAAS,EAAE,SAAS,EACpB,GAAG,OAAO,EAAE,iBAAiB,EAAE,GAC9B,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;OAIG;IACU,UAAU,CACrB,SAAS,EAAE,SAAS,EACpB,GAAG,IAAI,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;OAGG;IACU,IAAI,CACf,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,IAAI,CAAC;IAgBhB;;;;;;;;;OASG;IACU,KAAK,CAChB,SAAS,EAAE,WAAW,EAAE,EACxB,UAAU,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,EAClC,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;;;;;;OAOG;IACU,MAAM,CACjB,SAAS,EAAE,mBAAmB,EAAE,EAChC,UAAU,EAAE,mBAAmB,EAAE,EACjC,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;;;;;;;;OASG;IACU,aAAa,CACxB,SAAS,EAAE,WAAW,EAAE,EACxB,UAAU,EAAE,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,EAClC,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,IAAI,CAAC;IAmBhB;;;;;;;OAOG;IACU,cAAc,CACzB,SAAS,EAAE,mBAAmB,EAAE,EAChC,UAAU,EAAE,mBAAmB,EAAE,EACjC,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,IAAI,CAAC;IAmBhB
|
|
1
|
+
{"version":3,"file":"pvt_sequence.d.ts","sourceRoot":"","sources":["../../../src/ascii/pvt_sequence.ts"],"names":[],"mappings":"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"}
|
|
@@ -283,6 +283,8 @@ class PvtSequence {
|
|
|
283
283
|
* Also note that if generating a path for multiple axes, the user must provide a position measurement sequence
|
|
284
284
|
* per axis, And the values arrays for each sequence must be equal in length to each other and also to the
|
|
285
285
|
* times sequence.
|
|
286
|
+
*
|
|
287
|
+
* Does not support native units.
|
|
286
288
|
* @param positions Positions for the axes to move through, relative to their home positions.
|
|
287
289
|
* Each MeasurementSequence represents a sequence of positions along a particular dimension.
|
|
288
290
|
* For example, a 2D path sequence would contain two MeasurementSequence objects,
|
|
@@ -316,6 +318,8 @@ class PvtSequence {
|
|
|
316
318
|
* Note that if generating a path for multiple axes, the user must provide a
|
|
317
319
|
* velocity measurement sequence per axis, and the values arrays for each sequence
|
|
318
320
|
* must be equal in length to each other and also to the times sequence.
|
|
321
|
+
*
|
|
322
|
+
* Does not support native units.
|
|
319
323
|
* @param velocities The sequence of velocities for each axis.
|
|
320
324
|
* Each MeasurementSequence represents a sequence of velocities along particular dimension.
|
|
321
325
|
* @param times The relative or absolute time of each position in the PVT sequence.
|
|
@@ -338,6 +342,48 @@ class PvtSequence {
|
|
|
338
342
|
const response = await gateway.callAsync('device/pvt_generate_positions', request, pvt_sequence_data_1.PvtSequenceData.fromBinary);
|
|
339
343
|
return response;
|
|
340
344
|
}
|
|
345
|
+
/**
|
|
346
|
+
* Generates sequences of velocities and times for a sequence of positions.
|
|
347
|
+
* This function fits a geometric spline (not-a-knot cubic for sequences of >3 points,
|
|
348
|
+
* natural cubic for 3, and a straight line for 2) over the position sequence
|
|
349
|
+
* and then calculates the velocity and time information by traversing it using a
|
|
350
|
+
* trapezoidal motion profile.
|
|
351
|
+
*
|
|
352
|
+
* This generation scheme attempts to keep speed and acceleration less than the
|
|
353
|
+
* specified target values, but does not guarantee it. Generally speaking, a higher
|
|
354
|
+
* resample number will bring the generated trajectory closer to respecting these
|
|
355
|
+
* limits.
|
|
356
|
+
*
|
|
357
|
+
* Note that consecutive duplicate points will be automatically removed as they
|
|
358
|
+
* have no geometric significance without additional time information. Also note that
|
|
359
|
+
* for multi-dimensional paths this function expects axes to be linear and orthogonal,
|
|
360
|
+
* however for paths of a single dimension rotary units are accepted.
|
|
361
|
+
*
|
|
362
|
+
* Does not support native units.
|
|
363
|
+
* @param positions Positions for the axes to move through, relative to their home positions.
|
|
364
|
+
* @param targetSpeed The target speed used to generate positions and times.
|
|
365
|
+
* @param targetAcceleration The target acceleration used to generate positions and times.
|
|
366
|
+
* @param resampleNumber The number of points to resample the sequence by.
|
|
367
|
+
* Leave undefined to use the specified points.
|
|
368
|
+
* @returns Object containing the generated PVT sequence. Note that returned time sequence is always relative.
|
|
369
|
+
*/
|
|
370
|
+
static async generateVelocitiesAndTimes(positions, targetSpeed, targetAcceleration, resampleNumber) {
|
|
371
|
+
if (targetSpeed.value <= 0 || targetAcceleration.value <= 0) {
|
|
372
|
+
throw new TypeError('Target speed and acceleration values must be greater than zero.');
|
|
373
|
+
}
|
|
374
|
+
const request = {
|
|
375
|
+
...requests.PvtGenerateVelocitiesAndTimesRequest.DEFAULT,
|
|
376
|
+
positions: positions,
|
|
377
|
+
targetSpeed: targetSpeed,
|
|
378
|
+
targetAcceleration: targetAcceleration,
|
|
379
|
+
resampleNumber: resampleNumber,
|
|
380
|
+
toBinary() {
|
|
381
|
+
return requests.PvtGenerateVelocitiesAndTimesRequest.toBinary(this);
|
|
382
|
+
},
|
|
383
|
+
};
|
|
384
|
+
const response = await gateway.callAsync('device/pvt_generate_velocities_and_times', request, pvt_sequence_data_1.PvtSequenceData.fromBinary);
|
|
385
|
+
return response;
|
|
386
|
+
}
|
|
341
387
|
/**
|
|
342
388
|
* Waits until the live PVT sequence executes all queued actions.
|
|
343
389
|
* @param [options.throwErrorOnFault=true] Determines whether to throw error when fault is observed.
|
|
@@ -617,9 +663,10 @@ class PvtSequence {
|
|
|
617
663
|
*
|
|
618
664
|
* Units must be wrapped in parens or square braces: ie. (µm/s), [µm/s].
|
|
619
665
|
* Additionally, native units are the default if no units are specified.
|
|
666
|
+
* Time values default to milliseconds if no units are provided.
|
|
620
667
|
* If no header is included, then column order is assumed to be "T,P1,V1,P2,V2,...".
|
|
621
668
|
* In this case the number of columns must be odd.
|
|
622
|
-
* @param path The path
|
|
669
|
+
* @param path The path to the csv file to load.
|
|
623
670
|
* @returns The PVT csv data loaded from the file.
|
|
624
671
|
*/
|
|
625
672
|
static async loadSequenceData(path) {
|
|
@@ -633,6 +680,23 @@ class PvtSequence {
|
|
|
633
680
|
const response = await gateway.callAsync('device/stream_pvt_load_csv', request, pvt_csv_data_1.PvtCsvData.fromBinary);
|
|
634
681
|
return response;
|
|
635
682
|
}
|
|
683
|
+
/**
|
|
684
|
+
* Writes the contents of a PvtSequenceData object to the sequence.
|
|
685
|
+
* @param sequenceData The PVT sequence data to submit.
|
|
686
|
+
*/
|
|
687
|
+
async submitSequenceData(sequenceData) {
|
|
688
|
+
const request = {
|
|
689
|
+
...requests.PvtSubmitSequenceDataRequest.DEFAULT,
|
|
690
|
+
interfaceId: this.device.connection.interfaceId,
|
|
691
|
+
device: this.device.deviceAddress,
|
|
692
|
+
streamId: this.pvtId,
|
|
693
|
+
sequenceData: sequenceData,
|
|
694
|
+
toBinary() {
|
|
695
|
+
return requests.PvtSubmitSequenceDataRequest.toBinary(this);
|
|
696
|
+
},
|
|
697
|
+
};
|
|
698
|
+
await gateway.callAsync('device/stream_pvt_submit_data', request);
|
|
699
|
+
}
|
|
636
700
|
/**
|
|
637
701
|
* @deprecated Use PvtSequence.Io.SetDigitalOutput instead.
|
|
638
702
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pvt_sequence.js","sourceRoot":"","sources":["../../../src/ascii/pvt_sequence.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from './device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Measurement } from '../measurement';\nimport { PvtBuffer } from './pvt_buffer';\nimport { PvtMode } from './pvt_mode';\nimport { PvtAxisDefinition } from './pvt_axis_definition';\nimport { MeasurementSequence } from './measurement_sequence';\nimport { OptionalMeasurementSequence } from './optional_measurement_sequence';\nimport { PvtSequenceData } from './pvt_sequence_data';\nimport { PvtCsvData } from './pvt_csv_data';\nimport { PvtIo } from './pvt_io';\nimport { DigitalOutputAction } from './digital_output_action';\n\n/**\n * A handle for a PVT sequence with this number on the device.\n * PVT sequences provide a way execute or store trajectory\n * consisting of points with defined position, velocity, and time.\n * PVT sequence methods append actions to a queue which executes\n * or stores actions in a first in, first out order.\n */\nexport class PvtSequence {\n /**\n * Device that controls this PVT sequence.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The number that identifies the PVT sequence on the device.\n */\n public get pvtId(): number {\n return this._pvtId;\n }\n private _pvtId: number;\n\n /**\n * Current mode of the PVT sequence.\n */\n public get mode(): PvtMode {\n return this._retrieveMode();\n }\n\n /**\n * An array of axes definitions the PVT sequence is set up to control.\n */\n public get axes(): PvtAxisDefinition[] {\n return this._retrieveAxes();\n }\n\n /**\n * Gets an object that provides access to I/O for this sequence.\n */\n public get io(): PvtIo {\n return this._io;\n }\n private _io: PvtIo;\n\n constructor(device: Device, pvtId: number) {\n this._device = device;\n this._pvtId = pvtId;\n this._io = new PvtIo(device, pvtId);\n }\n\n /**\n * Setup the PVT sequence to control the specified axes and to queue actions on the device.\n * Allows use of lockstep axes in a PVT sequence.\n * @param pvtAxes Definition of the PVT sequence axes.\n */\n public async setupLiveComposite(\n ...pvtAxes: PvtAxisDefinition[]\n ): Promise<void> {\n const request: requests.StreamSetupLiveCompositeRequest & gateway.Message = {\n ...requests.StreamSetupLiveCompositeRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtAxes: pvtAxes,\n toBinary() {\n return requests.StreamSetupLiveCompositeRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_live_composite', request);\n }\n\n /**\n * Setup the PVT sequence to control the specified axes and to queue actions on the device.\n * @param axes Numbers of physical axes to setup the PVT sequence on.\n */\n public async setupLive(\n ...axes: number[]\n ): Promise<void> {\n const request: requests.StreamSetupLiveRequest & gateway.Message = {\n ...requests.StreamSetupLiveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n axes: axes,\n toBinary() {\n return requests.StreamSetupLiveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_live', request);\n }\n\n /**\n * Setup the PVT sequence to use the specified axes and queue actions into a PVT buffer.\n * Allows use of lockstep axes in a PVT sequence.\n * @param pvtBuffer The PVT buffer to queue actions in.\n * @param pvtAxes Definition of the PVT sequence axes.\n */\n public async setupStoreComposite(\n pvtBuffer: PvtBuffer,\n ...pvtAxes: PvtAxisDefinition[]\n ): Promise<void> {\n const request: requests.StreamSetupStoreCompositeRequest & gateway.Message = {\n ...requests.StreamSetupStoreCompositeRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtBuffer: pvtBuffer.bufferId,\n pvtAxes: pvtAxes,\n toBinary() {\n return requests.StreamSetupStoreCompositeRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_store_composite', request);\n }\n\n /**\n * Setup the PVT sequence to use the specified axes and queue actions into a PVT buffer.\n * @param pvtBuffer The PVT buffer to queue actions in.\n * @param axes Numbers of physical axes to setup the PVT sequence on.\n */\n public async setupStore(\n pvtBuffer: PvtBuffer,\n ...axes: number[]\n ): Promise<void> {\n const request: requests.StreamSetupStoreRequest & gateway.Message = {\n ...requests.StreamSetupStoreRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtBuffer: pvtBuffer.bufferId,\n axes: axes,\n toBinary() {\n return requests.StreamSetupStoreRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_store', request);\n }\n\n /**\n * Append the actions in a PVT buffer to the sequence's queue.\n * @param pvtBuffer The PVT buffer to call.\n */\n public async call(\n pvtBuffer: PvtBuffer\n ): Promise<void> {\n const request: requests.StreamCallRequest & gateway.Message = {\n ...requests.StreamCallRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtBuffer: pvtBuffer.bufferId,\n toBinary() {\n return requests.StreamCallRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_call', request);\n }\n\n /**\n * Queues a point with absolute coordinates in the PVT sequence.\n * If some or all velocities are not provided, the sequence calculates the velocities\n * from surrounding points using finite difference.\n * The last point of the sequence must have defined velocity (likely zero).\n * @param positions Positions for the axes to move through, relative to their home positions.\n * @param velocities The axes velocities at the given point.\n * Specify an empty array or null for specific axes to make the sequence calculate the velocity.\n * @param time The duration between the previous point in the sequence and this one.\n */\n public async point(\n positions: Measurement[],\n velocities: (Measurement | null)[],\n time: Measurement\n ): Promise<void> {\n const request: requests.PvtPointRequest & gateway.Message = {\n ...requests.PvtPointRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.ABS,\n positions: positions,\n velocities: velocities,\n time: time,\n toBinary() {\n return requests.PvtPointRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_point', request);\n }\n\n /**\n * Queues points with absolute coordinates in the PVT sequence.\n * @param positions Per-axis sequences of positions.\n * @param velocities Per-axis sequences of velocities.\n * For velocities [v0, v1, ...] and positions [p0, p1, ...], v1 is the target velocity at point p1.\n * @param times Segment times from one point to another.\n * For times [t0, t1, ...] and positions [p0, p1, ...], t1 is the time it takes to move from p0 to p1.\n */\n public async points(\n positions: MeasurementSequence[],\n velocities: MeasurementSequence[],\n times: MeasurementSequence\n ): Promise<void> {\n const request: requests.PvtPointsRequest & gateway.Message = {\n ...requests.PvtPointsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.ABS,\n positions: positions,\n velocities: velocities,\n times: times,\n toBinary() {\n return requests.PvtPointsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_points', request);\n }\n\n /**\n * Queues a point with coordinates relative to the previous point in the PVT sequence.\n * If some or all velocities are not provided, the sequence calculates the velocities\n * from surrounding points using finite difference.\n * The last point of the sequence must have defined velocity (likely zero).\n * @param positions Positions for the axes to move through, relative to the previous point.\n * @param velocities The axes velocities at the given point.\n * Specify an empty array or null for specific axes to make the sequence calculate the velocity.\n * @param time The duration between the previous point in the sequence and this one.\n */\n public async pointRelative(\n positions: Measurement[],\n velocities: (Measurement | null)[],\n time: Measurement\n ): Promise<void> {\n const request: requests.PvtPointRequest & gateway.Message = {\n ...requests.PvtPointRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.REL,\n positions: positions,\n velocities: velocities,\n time: time,\n toBinary() {\n return requests.PvtPointRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_point', request);\n }\n\n /**\n * Queues points with coordinates relative to the previous point in the PVT sequence.\n * @param positions Per-axis sequences of positions.\n * @param velocities Per-axis sequences of velocities.\n * For velocities [v0, v1, ...] and positions [p0, p1, ...], v1 is the target velocity at point p1.\n * @param times Segment times from one point to another.\n * For times [t0, t1, ...] and positions [p0, p1, ...], t1 is the time it takes to move from p0 to p1.\n */\n public async pointsRelative(\n positions: MeasurementSequence[],\n velocities: MeasurementSequence[],\n times: MeasurementSequence\n ): Promise<void> {\n const request: requests.PvtPointsRequest & gateway.Message = {\n ...requests.PvtPointsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.REL,\n positions: positions,\n velocities: velocities,\n times: times,\n toBinary() {\n return requests.PvtPointsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_points', request);\n }\n\n /**\n * Generates velocities for a sequence of positions and times, and (optionally) a partially defined sequence\n * of velocities. Note that if some velocities are defined, the solver will NOT modify them in any way.\n * If all velocities are defined, the solver will simply return the same velocities.\n * This function calculates velocities by enforcing that acceleration be continuous at each segment transition.\n *\n * Also note that if generating a path for multiple axes, the user must provide a position measurement sequence\n * per axis, And the values arrays for each sequence must be equal in length to each other and also to the\n * times sequence.\n * @param positions Positions for the axes to move through, relative to their home positions.\n * Each MeasurementSequence represents a sequence of positions along a particular dimension.\n * For example, a 2D path sequence would contain two MeasurementSequence objects,\n * one representing positions along X and one for those along Y.\n * @param times The relative or absolute time of each position in the PVT sequence.\n * @param velocities Optional velocities corresponding to each point in the position sequences.\n * @param [timesRelative=true] If true, the times sequence values are interpreted as relative. Otherwise,\n * they are interpreted as absolute. Note that the values of the returned time\n * sequence are ALWAYS relative. This is because the PVT sequence API expects\n * points to have relative times.\n * @returns Object containing the generated PVT sequence. Note that returned time sequence is always relative.\n */\n public static async generateVelocities(\n positions: MeasurementSequence[],\n times: MeasurementSequence,\n velocities?: OptionalMeasurementSequence[],\n timesRelative: boolean = true\n ): Promise<PvtSequenceData> {\n const request: requests.PvtGenerateVelocitiesRequest & gateway.Message = {\n ...requests.PvtGenerateVelocitiesRequest.DEFAULT,\n positions: positions,\n times: times,\n velocities: velocities,\n timesRelative: timesRelative,\n toBinary() {\n return requests.PvtGenerateVelocitiesRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtSequenceData>(\n 'device/pvt_generate_velocities',\n request,\n PvtSequenceData.fromBinary);\n return response;\n }\n\n /**\n * Generates positions for a sequence of velocities and times. This function calculates\n * positions by enforcing that acceleration be continuous at each segment transition.\n *\n * Note that if generating a path for multiple axes, the user must provide a\n * velocity measurement sequence per axis, and the values arrays for each sequence\n * must be equal in length to each other and also to the times sequence.\n * @param velocities The sequence of velocities for each axis.\n * Each MeasurementSequence represents a sequence of velocities along particular dimension.\n * @param times The relative or absolute time of each position in the PVT sequence.\n * @param [timesRelative=true] If true, the times sequence values are interpreted as relative. Otherwise,\n * they are interpreted as absolute. Note that the values of the returned time\n * sequence are ALWAYS relative. This is because the PVT sequence API expects\n * points to have relative times.\n * @returns Object containing the generated PVT sequence. Note that returned time sequence is always relative.\n */\n public static async generatePositions(\n velocities: MeasurementSequence[],\n times: MeasurementSequence,\n timesRelative: boolean = true\n ): Promise<PvtSequenceData> {\n const request: requests.PvtGeneratePositionsRequest & gateway.Message = {\n ...requests.PvtGeneratePositionsRequest.DEFAULT,\n velocities: velocities,\n times: times,\n timesRelative: timesRelative,\n toBinary() {\n return requests.PvtGeneratePositionsRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtSequenceData>(\n 'device/pvt_generate_positions',\n request,\n PvtSequenceData.fromBinary);\n return response;\n }\n\n /**\n * Waits until the live PVT sequence executes all queued actions.\n * @param [options.throwErrorOnFault=true] Determines whether to throw error when fault is observed.\n */\n public async waitUntilIdle(\n options: PvtSequence.WaitUntilIdleOptions = {}\n ): Promise<void> {\n const {\n throwErrorOnFault = true,\n } = options;\n const request: requests.StreamWaitUntilIdleRequest & gateway.Message = {\n ...requests.StreamWaitUntilIdleRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n throwErrorOnFault: throwErrorOnFault,\n toBinary() {\n return requests.StreamWaitUntilIdleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_wait_until_idle', request);\n }\n\n /**\n * Cork the front of the PVT sequences's action queue, blocking execution.\n * Execution resumes upon uncorking the queue, or when the number of queued actions reaches its limit.\n * Corking eliminates discontinuities in motion due to subsequent PVT commands reaching the device late.\n * You can only cork an idle live PVT sequence.\n */\n public async cork(): Promise<void> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_cork', request);\n }\n\n /**\n * Uncork the front of the queue, unblocking command execution.\n * You can only uncork an idle live PVT sequence that is corked.\n */\n public async uncork(): Promise<void> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_uncork', request);\n }\n\n /**\n * Returns a boolean value indicating whether the live PVT sequence is executing a queued action.\n * @returns True if the PVT sequence is executing a queued action.\n */\n public async isBusy(): Promise<boolean> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/stream_is_busy',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string which represents the PVT sequence.\n * @returns String which represents the PVT sequence.\n */\n public toString(): string {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/stream_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Disables the PVT sequence.\n * If the PVT sequence is not setup, this command does nothing.\n * Once disabled, the PVT sequence will no longer accept PVT commands.\n * The PVT sequence will process the rest of the commands in the queue until it is empty.\n */\n public async disable(): Promise<void> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_disable', request);\n }\n\n /**\n * Sends a generic ASCII command to the PVT sequence.\n * Keeps resending the command while the device rejects with AGAIN reason.\n * @param command Command and its parameters.\n */\n public async genericCommand(\n command: string\n ): Promise<void> {\n const request: requests.StreamGenericCommandRequest & gateway.Message = {\n ...requests.StreamGenericCommandRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n command: command,\n toBinary() {\n return requests.StreamGenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_generic_command', request);\n }\n\n /**\n * Sends a batch of generic ASCII commands to the PVT sequence.\n * Keeps resending command while the device rejects with AGAIN reason.\n * The batch is atomic in terms of thread safety.\n * @param batch Array of commands.\n */\n public async genericCommandBatch(\n batch: string[]\n ): Promise<void> {\n const request: requests.StreamGenericCommandBatchRequest & gateway.Message = {\n ...requests.StreamGenericCommandBatchRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n batch: batch,\n toBinary() {\n return requests.StreamGenericCommandBatchRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_generic_command_batch', request);\n }\n\n /**\n * Queries the PVT sequence status from the device\n * and returns boolean indicating whether the PVT sequence is disabled.\n * Useful to determine if execution was interrupted by other movements.\n * @returns True if the PVT sequence is disabled.\n */\n public async checkDisabled(): Promise<boolean> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/stream_check_disabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Makes the PVT sequence throw PvtDiscontinuityException when it encounters discontinuities (ND warning flag).\n */\n public treatDiscontinuitiesAsError(): void {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/stream_treat_discontinuities', request);\n }\n\n /**\n * Prevents PvtDiscontinuityException as a result of expected discontinuity when resuming the sequence.\n */\n public ignoreCurrentDiscontinuity(): void {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/stream_ignore_discontinuity', request);\n }\n\n /**\n * Gets the axes of the PVT sequence.\n * @returns An array of axis numbers of the axes the PVT sequence is set up to control.\n */\n private _retrieveAxes(): PvtAxisDefinition[] {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StreamGetAxesResponse>(\n 'device/stream_get_axes',\n request,\n requests.StreamGetAxesResponse.fromBinary);\n return response.pvtAxes;\n }\n\n /**\n * Get the mode of the PVT sequence.\n * @returns Mode of the PVT sequence.\n */\n private _retrieveMode(): PvtMode {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StreamModeResponse>(\n 'device/stream_get_mode',\n request,\n requests.StreamModeResponse.fromBinary);\n return response.pvtMode;\n }\n\n /**\n * Saves PvtSequenceData object as csv file.\n * Save format is compatible with Zaber Launcher PVT Editor App.\n *\n * Throws InvalidArgumentException if fields are undefined or inconsistent.\n * For example, position and velocity arrays must have the same dimensions.\n * Sequence lengths must be consistent for positions, velocities and times.\n * @param sequenceData The PVT sequence data to save.\n * @param path The path to save the file to.\n * @param dimensionNames Optional csv column names for each series.\n * If not provided, the default names will be used: Series 1, Series 2, etc..\n * Length of this array must be equal to number of dimensions in sequence data.\n */\n public static async saveSequenceData(\n sequenceData: PvtSequenceData,\n path: string,\n dimensionNames?: string[]\n ): Promise<void> {\n const request: requests.PvtSaveCsvRequest & gateway.Message = {\n ...requests.PvtSaveCsvRequest.DEFAULT,\n sequenceData: sequenceData,\n path: path,\n dimensionNames: dimensionNames,\n toBinary() {\n return requests.PvtSaveCsvRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_pvt_save_csv', request);\n }\n\n /**\n * Load PVT Sequence data from CSV file.\n * The CSV data can include a header (recommended).\n * There are two possible header formats:\n *\n * 1. A time column with named position and velocity columns.\n * For example, \"Time (ms),X Position (cm),X Velocity (cm/s),...\".\n * In this case, position, velocity and time columns are all optional.\n * Also, order does not matter, but position and velocity names must be consistent.\n * This is our recommended CSV format.\n *\n * 2. A time column with alternating position and velocity columns.\n * For example, \"Time (ms),Position (cm),Velocity (cm/s),...\".\n * In this case, only the time column is optional and order does matter.\n *\n * Units must be wrapped in parens or square braces: ie. (µm/s), [µm/s].\n * Additionally, native units are the default if no units are specified.\n * If no header is included, then column order is assumed to be \"T,P1,V1,P2,V2,...\".\n * In this case the number of columns must be odd.\n * @param path The path from which the csv file will be loaded.\n * @returns The PVT csv data loaded from the file.\n */\n public static async loadSequenceData(\n path: string\n ): Promise<PvtCsvData> {\n const request: requests.PvtLoadCsvRequest & gateway.Message = {\n ...requests.PvtLoadCsvRequest.DEFAULT,\n path: path,\n toBinary() {\n return requests.PvtLoadCsvRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtCsvData>(\n 'device/stream_pvt_load_csv',\n request,\n PvtCsvData.fromBinary);\n return response;\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetDigitalOutput instead.\n *\n * Sets value for the specified digital output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value The type of action to perform on the channel.\n */\n public async setDigitalOutput(\n channelNumber: number,\n value: DigitalOutputAction\n ): Promise<void> {\n const request: requests.StreamSetDigitalOutputRequest & gateway.Message = {\n ...requests.StreamSetDigitalOutputRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.StreamSetDigitalOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_digital_output', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetAllDigitalOutputs instead.\n *\n * Sets values for all digital output channels.\n * @param values The type of action to perform on the channel.\n */\n public async setAllDigitalOutputs(\n values: DigitalOutputAction[]\n ): Promise<void> {\n const request: requests.StreamSetAllDigitalOutputsRequest & gateway.Message = {\n ...requests.StreamSetAllDigitalOutputsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n values: values,\n toBinary() {\n return requests.StreamSetAllDigitalOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_all_digital_outputs', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetAnalogOutput instead.\n *\n * Sets value for the specified analog output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value Value to set the output channel voltage to.\n */\n public async setAnalogOutput(\n channelNumber: number,\n value: number\n ): Promise<void> {\n const request: requests.StreamSetAnalogOutputRequest & gateway.Message = {\n ...requests.StreamSetAnalogOutputRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.StreamSetAnalogOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_analog_output', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetAllAnalogOutputs instead.\n *\n * Sets values for all analog output channels.\n * @param values Voltage values to set the output channels to.\n */\n public async setAllAnalogOutputs(\n values: number[]\n ): Promise<void> {\n const request: requests.StreamSetAllAnalogOutputsRequest & gateway.Message = {\n ...requests.StreamSetAllAnalogOutputsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n values: values,\n toBinary() {\n return requests.StreamSetAllAnalogOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_all_analog_outputs', request);\n }\n}\n\nnamespace PvtSequence {\n export interface WaitUntilIdleOptions {\n /**\n * Determines whether to throw error when fault is observed.\n */\n throwErrorOnFault?: boolean;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"pvt_sequence.js","sourceRoot":"","sources":["../../../src/ascii/pvt_sequence.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAGtD,oDAAsC;AACtC,sDAAwC;AAOxC,2DAAsD;AACtD,iDAA4C;AAC5C,qCAAiC;AAGjC;;;;;;GAMG;AACH,MAAa,WAAW;IACtB;;OAEG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAGD;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAGD;;OAEG;IACH,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAGD,YAAY,MAAc,EAAE,KAAa;QACvC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,GAAG,GAAG,IAAI,cAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,kBAAkB,CAC7B,GAAG,OAA4B;QAE/B,MAAM,OAAO,GAA+D;YAC1E,GAAG,QAAQ,CAAC,+BAA+B,CAAC,OAAO;YACnD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,OAAO,EAAE,OAAO;YAChB,QAAQ;gBACN,OAAO,QAAQ,CAAC,+BAA+B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,oCAAoC,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,SAAS,CACpB,GAAG,IAAc;QAEjB,MAAM,OAAO,GAAsD;YACjE,GAAG,QAAQ,CAAC,sBAAsB,CAAC,OAAO;YAC1C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACxD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAC9B,SAAoB,EACpB,GAAG,OAA4B;QAE/B,MAAM,OAAO,GAAgE;YAC3E,GAAG,QAAQ,CAAC,gCAAgC,CAAC,OAAO;YACpD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,SAAS,EAAE,SAAS,CAAC,QAAQ;YAC7B,OAAO,EAAE,OAAO;YAChB,QAAQ;gBACN,OAAO,QAAQ,CAAC,gCAAgC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,UAAU,CACrB,SAAoB,EACpB,GAAG,IAAc;QAEjB,MAAM,OAAO,GAAuD;YAClE,GAAG,QAAQ,CAAC,uBAAuB,CAAC,OAAO;YAC3C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,SAAS,EAAE,SAAS,CAAC,QAAQ;YAC7B,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,IAAI,CACf,SAAoB;QAEpB,MAAM,OAAO,GAAiD;YAC5D,GAAG,QAAQ,CAAC,iBAAiB,CAAC,OAAO;YACrC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,SAAS,EAAE,SAAS,CAAC,QAAQ;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,KAAK,CAChB,SAAwB,EACxB,UAAkC,EAClC,IAAiB;QAEjB,MAAM,OAAO,GAA+C;YAC1D,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO;YACnC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GAAG;YACpC,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,MAAM,CACjB,SAAgC,EAChC,UAAiC,EACjC,KAA0B;QAE1B,MAAM,OAAO,GAAgD;YAC3D,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO;YACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GAAG;YACpC,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,KAAK;YACZ,QAAQ;gBACN,OAAO,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;OASG;IACI,KAAK,CAAC,aAAa,CACxB,SAAwB,EACxB,UAAkC,EAClC,IAAiB;QAEjB,MAAM,OAAO,GAA+C;YAC1D,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO;YACnC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GAAG;YACpC,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,UAAU;YACtB,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,cAAc,CACzB,SAAgC,EAChC,UAAiC,EACjC,KAA0B;QAE1B,MAAM,OAAO,GAAgD;YAC3D,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO;YACpC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,QAAQ,CAAC,iBAAiB,CAAC,GAAG;YACpC,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,KAAK;YACZ,QAAQ;gBACN,OAAO,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,MAAM,CAAC,KAAK,CAAC,kBAAkB,CACpC,SAAgC,EAChC,KAA0B,EAC1B,UAA0C,EAC1C,gBAAyB,IAAI;QAE7B,MAAM,OAAO,GAA4D;YACvE,GAAG,QAAQ,CAAC,4BAA4B,CAAC,OAAO;YAChD,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,UAAU;YACtB,aAAa,EAAE,aAAa;YAC5B,QAAQ;gBACN,OAAO,QAAQ,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,gCAAgC,EAChC,OAAO,EACP,mCAAe,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACI,MAAM,CAAC,KAAK,CAAC,iBAAiB,CACnC,UAAiC,EACjC,KAA0B,EAC1B,gBAAyB,IAAI;QAE7B,MAAM,OAAO,GAA2D;YACtE,GAAG,QAAQ,CAAC,2BAA2B,CAAC,OAAO;YAC/C,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,KAAK;YACZ,aAAa,EAAE,aAAa;YAC5B,QAAQ;gBACN,OAAO,QAAQ,CAAC,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,+BAA+B,EAC/B,OAAO,EACP,mCAAe,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACI,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAC5C,SAAgC,EAChC,WAAwB,EACxB,kBAA+B,EAC/B,cAAuB;QAEvB,IAAI,WAAW,CAAC,KAAK,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,SAAS,CAAC,iEAAiE,CAAC,CAAC;QACzF,CAAC;QACD,MAAM,OAAO,GAAoE;YAC/E,GAAG,QAAQ,CAAC,oCAAoC,CAAC,OAAO;YACxD,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,WAAW;YACxB,kBAAkB,EAAE,kBAAkB;YACtC,cAAc,EAAE,cAAc;YAC9B,QAAQ;gBACN,OAAO,QAAQ,CAAC,oCAAoC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtE,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,0CAA0C,EAC1C,OAAO,EACP,mCAAe,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,aAAa,CACxB,UAA4C,EAAE;QAE9C,MAAM,EACJ,iBAAiB,GAAG,IAAI,GACzB,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAA0D;YACrE,GAAG,QAAQ,CAAC,0BAA0B,CAAC,OAAO;YAC9C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,iBAAiB,EAAE,iBAAiB;YACpC,QAAQ;gBACN,OAAO,QAAQ,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5D,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,IAAI;QACf,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM;QACjB,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,MAAM;QACjB,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,uBAAuB,EACvB,OAAO,EACP,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;OAGG;IACI,QAAQ;QACb,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,yBAAyB,EACzB,OAAO,EACP,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO;QAClB,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,cAAc,CACzB,OAAe;QAEf,MAAM,OAAO,GAA2D;YACtE,GAAG,QAAQ,CAAC,2BAA2B,CAAC,OAAO;YAC/C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,OAAO,EAAE,OAAO;YAChB,QAAQ;gBACN,OAAO,QAAQ,CAAC,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC7D,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAC9B,KAAe;QAEf,MAAM,OAAO,GAAgE;YAC3E,GAAG,QAAQ,CAAC,gCAAgC,CAAC,OAAO;YACpD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,KAAK;YACZ,QAAQ;gBACN,OAAO,QAAQ,CAAC,gCAAgC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,aAAa;QACxB,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,8BAA8B,EAC9B,OAAO,EACP,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;OAEG;IACI,2BAA2B;QAChC,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,0BAA0B;QAC/B,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,oCAAoC,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;;OAGG;IACK,aAAa;QACnB,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,wBAAwB,EACxB,OAAO,EACP,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACK,aAAa;QACnB,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,QAAQ;gBACN,OAAO,QAAQ,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,wBAAwB,EACxB,OAAO,EACP,QAAQ,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAC1C,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAClC,YAA6B,EAC7B,IAAY,EACZ,cAAyB;QAEzB,MAAM,OAAO,GAAiD;YAC5D,GAAG,QAAQ,CAAC,iBAAiB,CAAC,OAAO;YACrC,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,IAAI;YACV,cAAc,EAAE,cAAc;YAC9B,QAAQ;gBACN,OAAO,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACI,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAClC,IAAY;QAEZ,MAAM,OAAO,GAAiD;YAC5D,GAAG,QAAQ,CAAC,iBAAiB,CAAC,OAAO;YACrC,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,4BAA4B,EAC5B,OAAO,EACP,yBAAU,CAAC,UAAU,CAAC,CAAC;QACzB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,kBAAkB,CAC7B,YAA6B;QAE7B,MAAM,OAAO,GAA4D;YACvE,GAAG,QAAQ,CAAC,4BAA4B,CAAC,OAAO;YAChD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,YAAY,EAAE,YAAY;YAC1B,QAAQ;gBACN,OAAO,QAAQ,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,+BAA+B,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,gBAAgB,CAC3B,aAAqB,EACrB,KAA0B;QAE1B,MAAM,OAAO,GAA6D;YACxE,GAAG,QAAQ,CAAC,6BAA6B,CAAC,OAAO;YACjD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,aAAa,EAAE,aAAa;YAC5B,KAAK,EAAE,KAAK;YACZ,QAAQ;gBACN,OAAO,QAAQ,CAAC,6BAA6B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,kCAAkC,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,oBAAoB,CAC/B,MAA6B;QAE7B,MAAM,OAAO,GAAiE;YAC5E,GAAG,QAAQ,CAAC,iCAAiC,CAAC,OAAO;YACrD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,MAAM;YACd,QAAQ;gBACN,OAAO,QAAQ,CAAC,iCAAiC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACnE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,eAAe,CAC1B,aAAqB,EACrB,KAAa;QAEb,MAAM,OAAO,GAA4D;YACvE,GAAG,QAAQ,CAAC,4BAA4B,CAAC,OAAO;YAChD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,aAAa,EAAE,aAAa;YAC5B,KAAK,EAAE,KAAK;YACZ,QAAQ;gBACN,OAAO,QAAQ,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC9D,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,iCAAiC,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,mBAAmB,CAC9B,MAAgB;QAEhB,MAAM,OAAO,GAAgE;YAC3E,GAAG,QAAQ,CAAC,gCAAgC,CAAC,OAAO;YACpD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK;YACpB,GAAG,EAAE,IAAI;YACT,MAAM,EAAE,MAAM;YACd,QAAQ;gBACN,OAAO,QAAQ,CAAC,gCAAgC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClE,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;CACF;AA94BD,kCA84BC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Device } from './device';\nimport * as gateway from '../gateway';\nimport * as requests from '../requests';\nimport { Measurement } from '../measurement';\nimport { PvtBuffer } from './pvt_buffer';\nimport { PvtMode } from './pvt_mode';\nimport { PvtAxisDefinition } from './pvt_axis_definition';\nimport { MeasurementSequence } from './measurement_sequence';\nimport { OptionalMeasurementSequence } from './optional_measurement_sequence';\nimport { PvtSequenceData } from './pvt_sequence_data';\nimport { PvtCsvData } from './pvt_csv_data';\nimport { PvtIo } from './pvt_io';\nimport { DigitalOutputAction } from './digital_output_action';\n\n/**\n * A handle for a PVT sequence with this number on the device.\n * PVT sequences provide a way execute or store trajectory\n * consisting of points with defined position, velocity, and time.\n * PVT sequence methods append actions to a queue which executes\n * or stores actions in a first in, first out order.\n */\nexport class PvtSequence {\n /**\n * Device that controls this PVT sequence.\n */\n public get device(): Device {\n return this._device;\n }\n private _device: Device;\n\n /**\n * The number that identifies the PVT sequence on the device.\n */\n public get pvtId(): number {\n return this._pvtId;\n }\n private _pvtId: number;\n\n /**\n * Current mode of the PVT sequence.\n */\n public get mode(): PvtMode {\n return this._retrieveMode();\n }\n\n /**\n * An array of axes definitions the PVT sequence is set up to control.\n */\n public get axes(): PvtAxisDefinition[] {\n return this._retrieveAxes();\n }\n\n /**\n * Gets an object that provides access to I/O for this sequence.\n */\n public get io(): PvtIo {\n return this._io;\n }\n private _io: PvtIo;\n\n constructor(device: Device, pvtId: number) {\n this._device = device;\n this._pvtId = pvtId;\n this._io = new PvtIo(device, pvtId);\n }\n\n /**\n * Setup the PVT sequence to control the specified axes and to queue actions on the device.\n * Allows use of lockstep axes in a PVT sequence.\n * @param pvtAxes Definition of the PVT sequence axes.\n */\n public async setupLiveComposite(\n ...pvtAxes: PvtAxisDefinition[]\n ): Promise<void> {\n const request: requests.StreamSetupLiveCompositeRequest & gateway.Message = {\n ...requests.StreamSetupLiveCompositeRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtAxes: pvtAxes,\n toBinary() {\n return requests.StreamSetupLiveCompositeRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_live_composite', request);\n }\n\n /**\n * Setup the PVT sequence to control the specified axes and to queue actions on the device.\n * @param axes Numbers of physical axes to setup the PVT sequence on.\n */\n public async setupLive(\n ...axes: number[]\n ): Promise<void> {\n const request: requests.StreamSetupLiveRequest & gateway.Message = {\n ...requests.StreamSetupLiveRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n axes: axes,\n toBinary() {\n return requests.StreamSetupLiveRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_live', request);\n }\n\n /**\n * Setup the PVT sequence to use the specified axes and queue actions into a PVT buffer.\n * Allows use of lockstep axes in a PVT sequence.\n * @param pvtBuffer The PVT buffer to queue actions in.\n * @param pvtAxes Definition of the PVT sequence axes.\n */\n public async setupStoreComposite(\n pvtBuffer: PvtBuffer,\n ...pvtAxes: PvtAxisDefinition[]\n ): Promise<void> {\n const request: requests.StreamSetupStoreCompositeRequest & gateway.Message = {\n ...requests.StreamSetupStoreCompositeRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtBuffer: pvtBuffer.bufferId,\n pvtAxes: pvtAxes,\n toBinary() {\n return requests.StreamSetupStoreCompositeRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_store_composite', request);\n }\n\n /**\n * Setup the PVT sequence to use the specified axes and queue actions into a PVT buffer.\n * @param pvtBuffer The PVT buffer to queue actions in.\n * @param axes Numbers of physical axes to setup the PVT sequence on.\n */\n public async setupStore(\n pvtBuffer: PvtBuffer,\n ...axes: number[]\n ): Promise<void> {\n const request: requests.StreamSetupStoreRequest & gateway.Message = {\n ...requests.StreamSetupStoreRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtBuffer: pvtBuffer.bufferId,\n axes: axes,\n toBinary() {\n return requests.StreamSetupStoreRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_setup_store', request);\n }\n\n /**\n * Append the actions in a PVT buffer to the sequence's queue.\n * @param pvtBuffer The PVT buffer to call.\n */\n public async call(\n pvtBuffer: PvtBuffer\n ): Promise<void> {\n const request: requests.StreamCallRequest & gateway.Message = {\n ...requests.StreamCallRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n pvtBuffer: pvtBuffer.bufferId,\n toBinary() {\n return requests.StreamCallRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_call', request);\n }\n\n /**\n * Queues a point with absolute coordinates in the PVT sequence.\n * If some or all velocities are not provided, the sequence calculates the velocities\n * from surrounding points using finite difference.\n * The last point of the sequence must have defined velocity (likely zero).\n * @param positions Positions for the axes to move through, relative to their home positions.\n * @param velocities The axes velocities at the given point.\n * Specify an empty array or null for specific axes to make the sequence calculate the velocity.\n * @param time The duration between the previous point in the sequence and this one.\n */\n public async point(\n positions: Measurement[],\n velocities: (Measurement | null)[],\n time: Measurement\n ): Promise<void> {\n const request: requests.PvtPointRequest & gateway.Message = {\n ...requests.PvtPointRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.ABS,\n positions: positions,\n velocities: velocities,\n time: time,\n toBinary() {\n return requests.PvtPointRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_point', request);\n }\n\n /**\n * Queues points with absolute coordinates in the PVT sequence.\n * @param positions Per-axis sequences of positions.\n * @param velocities Per-axis sequences of velocities.\n * For velocities [v0, v1, ...] and positions [p0, p1, ...], v1 is the target velocity at point p1.\n * @param times Segment times from one point to another.\n * For times [t0, t1, ...] and positions [p0, p1, ...], t1 is the time it takes to move from p0 to p1.\n */\n public async points(\n positions: MeasurementSequence[],\n velocities: MeasurementSequence[],\n times: MeasurementSequence\n ): Promise<void> {\n const request: requests.PvtPointsRequest & gateway.Message = {\n ...requests.PvtPointsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.ABS,\n positions: positions,\n velocities: velocities,\n times: times,\n toBinary() {\n return requests.PvtPointsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_points', request);\n }\n\n /**\n * Queues a point with coordinates relative to the previous point in the PVT sequence.\n * If some or all velocities are not provided, the sequence calculates the velocities\n * from surrounding points using finite difference.\n * The last point of the sequence must have defined velocity (likely zero).\n * @param positions Positions for the axes to move through, relative to the previous point.\n * @param velocities The axes velocities at the given point.\n * Specify an empty array or null for specific axes to make the sequence calculate the velocity.\n * @param time The duration between the previous point in the sequence and this one.\n */\n public async pointRelative(\n positions: Measurement[],\n velocities: (Measurement | null)[],\n time: Measurement\n ): Promise<void> {\n const request: requests.PvtPointRequest & gateway.Message = {\n ...requests.PvtPointRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.REL,\n positions: positions,\n velocities: velocities,\n time: time,\n toBinary() {\n return requests.PvtPointRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_point', request);\n }\n\n /**\n * Queues points with coordinates relative to the previous point in the PVT sequence.\n * @param positions Per-axis sequences of positions.\n * @param velocities Per-axis sequences of velocities.\n * For velocities [v0, v1, ...] and positions [p0, p1, ...], v1 is the target velocity at point p1.\n * @param times Segment times from one point to another.\n * For times [t0, t1, ...] and positions [p0, p1, ...], t1 is the time it takes to move from p0 to p1.\n */\n public async pointsRelative(\n positions: MeasurementSequence[],\n velocities: MeasurementSequence[],\n times: MeasurementSequence\n ): Promise<void> {\n const request: requests.PvtPointsRequest & gateway.Message = {\n ...requests.PvtPointsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n type: requests.StreamSegmentType.REL,\n positions: positions,\n velocities: velocities,\n times: times,\n toBinary() {\n return requests.PvtPointsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_points', request);\n }\n\n /**\n * Generates velocities for a sequence of positions and times, and (optionally) a partially defined sequence\n * of velocities. Note that if some velocities are defined, the solver will NOT modify them in any way.\n * If all velocities are defined, the solver will simply return the same velocities.\n * This function calculates velocities by enforcing that acceleration be continuous at each segment transition.\n *\n * Also note that if generating a path for multiple axes, the user must provide a position measurement sequence\n * per axis, And the values arrays for each sequence must be equal in length to each other and also to the\n * times sequence.\n *\n * Does not support native units.\n * @param positions Positions for the axes to move through, relative to their home positions.\n * Each MeasurementSequence represents a sequence of positions along a particular dimension.\n * For example, a 2D path sequence would contain two MeasurementSequence objects,\n * one representing positions along X and one for those along Y.\n * @param times The relative or absolute time of each position in the PVT sequence.\n * @param velocities Optional velocities corresponding to each point in the position sequences.\n * @param [timesRelative=true] If true, the times sequence values are interpreted as relative. Otherwise,\n * they are interpreted as absolute. Note that the values of the returned time\n * sequence are ALWAYS relative. This is because the PVT sequence API expects\n * points to have relative times.\n * @returns Object containing the generated PVT sequence. Note that returned time sequence is always relative.\n */\n public static async generateVelocities(\n positions: MeasurementSequence[],\n times: MeasurementSequence,\n velocities?: OptionalMeasurementSequence[],\n timesRelative: boolean = true\n ): Promise<PvtSequenceData> {\n const request: requests.PvtGenerateVelocitiesRequest & gateway.Message = {\n ...requests.PvtGenerateVelocitiesRequest.DEFAULT,\n positions: positions,\n times: times,\n velocities: velocities,\n timesRelative: timesRelative,\n toBinary() {\n return requests.PvtGenerateVelocitiesRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtSequenceData>(\n 'device/pvt_generate_velocities',\n request,\n PvtSequenceData.fromBinary);\n return response;\n }\n\n /**\n * Generates positions for a sequence of velocities and times. This function calculates\n * positions by enforcing that acceleration be continuous at each segment transition.\n *\n * Note that if generating a path for multiple axes, the user must provide a\n * velocity measurement sequence per axis, and the values arrays for each sequence\n * must be equal in length to each other and also to the times sequence.\n *\n * Does not support native units.\n * @param velocities The sequence of velocities for each axis.\n * Each MeasurementSequence represents a sequence of velocities along particular dimension.\n * @param times The relative or absolute time of each position in the PVT sequence.\n * @param [timesRelative=true] If true, the times sequence values are interpreted as relative. Otherwise,\n * they are interpreted as absolute. Note that the values of the returned time\n * sequence are ALWAYS relative. This is because the PVT sequence API expects\n * points to have relative times.\n * @returns Object containing the generated PVT sequence. Note that returned time sequence is always relative.\n */\n public static async generatePositions(\n velocities: MeasurementSequence[],\n times: MeasurementSequence,\n timesRelative: boolean = true\n ): Promise<PvtSequenceData> {\n const request: requests.PvtGeneratePositionsRequest & gateway.Message = {\n ...requests.PvtGeneratePositionsRequest.DEFAULT,\n velocities: velocities,\n times: times,\n timesRelative: timesRelative,\n toBinary() {\n return requests.PvtGeneratePositionsRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtSequenceData>(\n 'device/pvt_generate_positions',\n request,\n PvtSequenceData.fromBinary);\n return response;\n }\n\n /**\n * Generates sequences of velocities and times for a sequence of positions.\n * This function fits a geometric spline (not-a-knot cubic for sequences of >3 points,\n * natural cubic for 3, and a straight line for 2) over the position sequence\n * and then calculates the velocity and time information by traversing it using a\n * trapezoidal motion profile.\n *\n * This generation scheme attempts to keep speed and acceleration less than the\n * specified target values, but does not guarantee it. Generally speaking, a higher\n * resample number will bring the generated trajectory closer to respecting these\n * limits.\n *\n * Note that consecutive duplicate points will be automatically removed as they\n * have no geometric significance without additional time information. Also note that\n * for multi-dimensional paths this function expects axes to be linear and orthogonal,\n * however for paths of a single dimension rotary units are accepted.\n *\n * Does not support native units.\n * @param positions Positions for the axes to move through, relative to their home positions.\n * @param targetSpeed The target speed used to generate positions and times.\n * @param targetAcceleration The target acceleration used to generate positions and times.\n * @param resampleNumber The number of points to resample the sequence by.\n * Leave undefined to use the specified points.\n * @returns Object containing the generated PVT sequence. Note that returned time sequence is always relative.\n */\n public static async generateVelocitiesAndTimes(\n positions: MeasurementSequence[],\n targetSpeed: Measurement,\n targetAcceleration: Measurement,\n resampleNumber?: number\n ): Promise<PvtSequenceData> {\n if (targetSpeed.value <= 0 || targetAcceleration.value <= 0) {\n throw new TypeError('Target speed and acceleration values must be greater than zero.');\n }\n const request: requests.PvtGenerateVelocitiesAndTimesRequest & gateway.Message = {\n ...requests.PvtGenerateVelocitiesAndTimesRequest.DEFAULT,\n positions: positions,\n targetSpeed: targetSpeed,\n targetAcceleration: targetAcceleration,\n resampleNumber: resampleNumber,\n toBinary() {\n return requests.PvtGenerateVelocitiesAndTimesRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtSequenceData>(\n 'device/pvt_generate_velocities_and_times',\n request,\n PvtSequenceData.fromBinary);\n return response;\n }\n\n /**\n * Waits until the live PVT sequence executes all queued actions.\n * @param [options.throwErrorOnFault=true] Determines whether to throw error when fault is observed.\n */\n public async waitUntilIdle(\n options: PvtSequence.WaitUntilIdleOptions = {}\n ): Promise<void> {\n const {\n throwErrorOnFault = true,\n } = options;\n const request: requests.StreamWaitUntilIdleRequest & gateway.Message = {\n ...requests.StreamWaitUntilIdleRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n throwErrorOnFault: throwErrorOnFault,\n toBinary() {\n return requests.StreamWaitUntilIdleRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_wait_until_idle', request);\n }\n\n /**\n * Cork the front of the PVT sequences's action queue, blocking execution.\n * Execution resumes upon uncorking the queue, or when the number of queued actions reaches its limit.\n * Corking eliminates discontinuities in motion due to subsequent PVT commands reaching the device late.\n * You can only cork an idle live PVT sequence.\n */\n public async cork(): Promise<void> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_cork', request);\n }\n\n /**\n * Uncork the front of the queue, unblocking command execution.\n * You can only uncork an idle live PVT sequence that is corked.\n */\n public async uncork(): Promise<void> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_uncork', request);\n }\n\n /**\n * Returns a boolean value indicating whether the live PVT sequence is executing a queued action.\n * @returns True if the PVT sequence is executing a queued action.\n */\n public async isBusy(): Promise<boolean> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/stream_is_busy',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns a string which represents the PVT sequence.\n * @returns String which represents the PVT sequence.\n */\n public toString(): string {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'device/stream_to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Disables the PVT sequence.\n * If the PVT sequence is not setup, this command does nothing.\n * Once disabled, the PVT sequence will no longer accept PVT commands.\n * The PVT sequence will process the rest of the commands in the queue until it is empty.\n */\n public async disable(): Promise<void> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_disable', request);\n }\n\n /**\n * Sends a generic ASCII command to the PVT sequence.\n * Keeps resending the command while the device rejects with AGAIN reason.\n * @param command Command and its parameters.\n */\n public async genericCommand(\n command: string\n ): Promise<void> {\n const request: requests.StreamGenericCommandRequest & gateway.Message = {\n ...requests.StreamGenericCommandRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n command: command,\n toBinary() {\n return requests.StreamGenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_generic_command', request);\n }\n\n /**\n * Sends a batch of generic ASCII commands to the PVT sequence.\n * Keeps resending command while the device rejects with AGAIN reason.\n * The batch is atomic in terms of thread safety.\n * @param batch Array of commands.\n */\n public async genericCommandBatch(\n batch: string[]\n ): Promise<void> {\n const request: requests.StreamGenericCommandBatchRequest & gateway.Message = {\n ...requests.StreamGenericCommandBatchRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n batch: batch,\n toBinary() {\n return requests.StreamGenericCommandBatchRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_generic_command_batch', request);\n }\n\n /**\n * Queries the PVT sequence status from the device\n * and returns boolean indicating whether the PVT sequence is disabled.\n * Useful to determine if execution was interrupted by other movements.\n * @returns True if the PVT sequence is disabled.\n */\n public async checkDisabled(): Promise<boolean> {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.BoolResponse>(\n 'device/stream_check_disabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Makes the PVT sequence throw PvtDiscontinuityException when it encounters discontinuities (ND warning flag).\n */\n public treatDiscontinuitiesAsError(): void {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/stream_treat_discontinuities', request);\n }\n\n /**\n * Prevents PvtDiscontinuityException as a result of expected discontinuity when resuming the sequence.\n */\n public ignoreCurrentDiscontinuity(): void {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/stream_ignore_discontinuity', request);\n }\n\n /**\n * Gets the axes of the PVT sequence.\n * @returns An array of axis numbers of the axes the PVT sequence is set up to control.\n */\n private _retrieveAxes(): PvtAxisDefinition[] {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StreamGetAxesResponse>(\n 'device/stream_get_axes',\n request,\n requests.StreamGetAxesResponse.fromBinary);\n return response.pvtAxes;\n }\n\n /**\n * Get the mode of the PVT sequence.\n * @returns Mode of the PVT sequence.\n */\n private _retrieveMode(): PvtMode {\n const request: requests.StreamEmptyRequest & gateway.Message = {\n ...requests.StreamEmptyRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n toBinary() {\n return requests.StreamEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StreamModeResponse>(\n 'device/stream_get_mode',\n request,\n requests.StreamModeResponse.fromBinary);\n return response.pvtMode;\n }\n\n /**\n * Saves PvtSequenceData object as csv file.\n * Save format is compatible with Zaber Launcher PVT Editor App.\n *\n * Throws InvalidArgumentException if fields are undefined or inconsistent.\n * For example, position and velocity arrays must have the same dimensions.\n * Sequence lengths must be consistent for positions, velocities and times.\n * @param sequenceData The PVT sequence data to save.\n * @param path The path to save the file to.\n * @param dimensionNames Optional csv column names for each series.\n * If not provided, the default names will be used: Series 1, Series 2, etc..\n * Length of this array must be equal to number of dimensions in sequence data.\n */\n public static async saveSequenceData(\n sequenceData: PvtSequenceData,\n path: string,\n dimensionNames?: string[]\n ): Promise<void> {\n const request: requests.PvtSaveCsvRequest & gateway.Message = {\n ...requests.PvtSaveCsvRequest.DEFAULT,\n sequenceData: sequenceData,\n path: path,\n dimensionNames: dimensionNames,\n toBinary() {\n return requests.PvtSaveCsvRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_pvt_save_csv', request);\n }\n\n /**\n * Load PVT Sequence data from CSV file.\n * The CSV data can include a header (recommended).\n * There are two possible header formats:\n *\n * 1. A time column with named position and velocity columns.\n * For example, \"Time (ms),X Position (cm),X Velocity (cm/s),...\".\n * In this case, position, velocity and time columns are all optional.\n * Also, order does not matter, but position and velocity names must be consistent.\n * This is our recommended CSV format.\n *\n * 2. A time column with alternating position and velocity columns.\n * For example, \"Time (ms),Position (cm),Velocity (cm/s),...\".\n * In this case, only the time column is optional and order does matter.\n *\n * Units must be wrapped in parens or square braces: ie. (µm/s), [µm/s].\n * Additionally, native units are the default if no units are specified.\n * Time values default to milliseconds if no units are provided.\n * If no header is included, then column order is assumed to be \"T,P1,V1,P2,V2,...\".\n * In this case the number of columns must be odd.\n * @param path The path to the csv file to load.\n * @returns The PVT csv data loaded from the file.\n */\n public static async loadSequenceData(\n path: string\n ): Promise<PvtCsvData> {\n const request: requests.PvtLoadCsvRequest & gateway.Message = {\n ...requests.PvtLoadCsvRequest.DEFAULT,\n path: path,\n toBinary() {\n return requests.PvtLoadCsvRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<PvtCsvData>(\n 'device/stream_pvt_load_csv',\n request,\n PvtCsvData.fromBinary);\n return response;\n }\n\n /**\n * Writes the contents of a PvtSequenceData object to the sequence.\n * @param sequenceData The PVT sequence data to submit.\n */\n public async submitSequenceData(\n sequenceData: PvtSequenceData\n ): Promise<void> {\n const request: requests.PvtSubmitSequenceDataRequest & gateway.Message = {\n ...requests.PvtSubmitSequenceDataRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n sequenceData: sequenceData,\n toBinary() {\n return requests.PvtSubmitSequenceDataRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_pvt_submit_data', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetDigitalOutput instead.\n *\n * Sets value for the specified digital output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value The type of action to perform on the channel.\n */\n public async setDigitalOutput(\n channelNumber: number,\n value: DigitalOutputAction\n ): Promise<void> {\n const request: requests.StreamSetDigitalOutputRequest & gateway.Message = {\n ...requests.StreamSetDigitalOutputRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.StreamSetDigitalOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_digital_output', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetAllDigitalOutputs instead.\n *\n * Sets values for all digital output channels.\n * @param values The type of action to perform on the channel.\n */\n public async setAllDigitalOutputs(\n values: DigitalOutputAction[]\n ): Promise<void> {\n const request: requests.StreamSetAllDigitalOutputsRequest & gateway.Message = {\n ...requests.StreamSetAllDigitalOutputsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n values: values,\n toBinary() {\n return requests.StreamSetAllDigitalOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_all_digital_outputs', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetAnalogOutput instead.\n *\n * Sets value for the specified analog output channel.\n * @param channelNumber Channel number starting at 1.\n * @param value Value to set the output channel voltage to.\n */\n public async setAnalogOutput(\n channelNumber: number,\n value: number\n ): Promise<void> {\n const request: requests.StreamSetAnalogOutputRequest & gateway.Message = {\n ...requests.StreamSetAnalogOutputRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n channelNumber: channelNumber,\n value: value,\n toBinary() {\n return requests.StreamSetAnalogOutputRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_analog_output', request);\n }\n\n /**\n * @deprecated Use PvtSequence.Io.SetAllAnalogOutputs instead.\n *\n * Sets values for all analog output channels.\n * @param values Voltage values to set the output channels to.\n */\n public async setAllAnalogOutputs(\n values: number[]\n ): Promise<void> {\n const request: requests.StreamSetAllAnalogOutputsRequest & gateway.Message = {\n ...requests.StreamSetAllAnalogOutputsRequest.DEFAULT,\n interfaceId: this.device.connection.interfaceId,\n device: this.device.deviceAddress,\n streamId: this.pvtId,\n pvt: true,\n values: values,\n toBinary() {\n return requests.StreamSetAllAnalogOutputsRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('device/stream_set_all_analog_outputs', request);\n }\n}\n\nnamespace PvtSequence {\n export interface WaitUntilIdleOptions {\n /**\n * Determines whether to throw error when fault is observed.\n */\n throwErrorOnFault?: boolean;\n }\n}\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { BSON } from 'bson';
|
|
2
|
+
import { DeviceDbSourceType } from './device_db_source_type';
|
|
3
|
+
/**
|
|
4
|
+
* A source that device information can be retrieved from.
|
|
5
|
+
*/
|
|
6
|
+
export interface DeviceDbSource {
|
|
7
|
+
/**
|
|
8
|
+
* Whether the source is a web service or a local DB file.
|
|
9
|
+
*/
|
|
10
|
+
sourceType: DeviceDbSourceType;
|
|
11
|
+
/**
|
|
12
|
+
* The URL of the web service or path to the local DB file.
|
|
13
|
+
*/
|
|
14
|
+
urlOrFilePath?: (string | null);
|
|
15
|
+
}
|
|
16
|
+
export declare const DeviceDbSource: {
|
|
17
|
+
fromBinary: (buffer: Uint8Array) => DeviceDbSource;
|
|
18
|
+
toBinary: (value: DeviceDbSource) => Uint8Array;
|
|
19
|
+
DEFAULT: Readonly<DeviceDbSource>;
|
|
20
|
+
sanitize: (value: DeviceDbSource) => DeviceDbSource;
|
|
21
|
+
convert: (value: BSON.Document) => DeviceDbSource;
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=device_db_source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device_db_source.d.ts","sourceRoot":"","sources":["../../src/device_db_source.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,UAAU,EAAE,kBAAkB,CAAC;IAE/B;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CAEjC;AAED,eAAO,MAAM,cAAc;yBACJ,UAAU,KAAG,cAAc;sBAC9B,cAAc,KAAG,UAAU;;sBAK3B,cAAc,KAAG,cAAc;qBAQhC,KAAK,QAAQ,KAAG,cAAc;CAIhD,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DeviceDbSource = void 0;
|
|
4
|
+
/* This file is generated. Do not modify by hand. */
|
|
5
|
+
const bson_1 = require("bson");
|
|
6
|
+
const sanitizer_1 = require("./gateway/sanitizer");
|
|
7
|
+
const device_db_source_type_1 = require("./device_db_source_type");
|
|
8
|
+
exports.DeviceDbSource = {
|
|
9
|
+
fromBinary: (buffer) => exports.DeviceDbSource.convert(bson_1.BSON.deserialize(buffer, { useBigInt64: true })),
|
|
10
|
+
toBinary: (value) => bson_1.BSON.serialize(exports.DeviceDbSource.sanitize(value)),
|
|
11
|
+
DEFAULT: Object.freeze({
|
|
12
|
+
sourceType: 0,
|
|
13
|
+
urlOrFilePath: null,
|
|
14
|
+
}),
|
|
15
|
+
sanitize: (value) => {
|
|
16
|
+
if (value == null) {
|
|
17
|
+
throw new TypeError('Expected DeviceDbSource object but got null or undefined.');
|
|
18
|
+
}
|
|
19
|
+
if (typeof value !== 'object') {
|
|
20
|
+
throw new TypeError(`Expected DeviceDbSource object but got ${typeof value}.`);
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
sourceType: sanitizer_1.sanitizer.sanitizeEnum(value.sourceType, 'DeviceDbSourceType', device_db_source_type_1.DeviceDbSourceType, 'sourceType'),
|
|
24
|
+
urlOrFilePath: value.urlOrFilePath != null ? sanitizer_1.sanitizer.sanitizeString(value.urlOrFilePath, 'urlOrFilePath') : null,
|
|
25
|
+
};
|
|
26
|
+
},
|
|
27
|
+
convert: (value) => ({
|
|
28
|
+
sourceType: value.sourceType,
|
|
29
|
+
urlOrFilePath: value.urlOrFilePath,
|
|
30
|
+
})
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=device_db_source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device_db_source.js","sourceRoot":"","sources":["../../src/device_db_source.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,mDAAgD;AAChD,mEAA6D;AAkBhD,QAAA,cAAc,GAAG;IAC5B,UAAU,EAAE,CAAC,MAAkB,EAAkB,EAAE,CAAC,sBAAc,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3H,QAAQ,EAAE,CAAC,KAAqB,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,sBAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/F,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,UAAU,EAAE,CAAuB;QACnC,aAAa,EAAE,IAAI;KACpB,CAA6B;IAC9B,QAAQ,EAAE,CAAC,KAAqB,EAAkB,EAAE;QAClD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAA;QAAC,CAAC;QACvG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,0CAA0C,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QACjH,OAAO;YACL,UAAU,EAAE,qBAAS,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,EAAE,oBAAoB,EAAE,0CAAkB,EAAE,YAAY,CAAC;YAC5G,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI;SACnH,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC,KAAoB,EAAkB,EAAE,CAAC,CAAC;QAClD,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC;CACH,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from './gateway/sanitizer';\nimport { DeviceDbSourceType } from './device_db_source_type';\n\n/**\n * A source that device information can be retrieved from.\n */\nexport interface DeviceDbSource {\n /**\n * Whether the source is a web service or a local DB file.\n */\n sourceType: DeviceDbSourceType;\n\n /**\n * The URL of the web service or path to the local DB file.\n */\n urlOrFilePath?: (string | null);\n\n}\n\nexport const DeviceDbSource = {\n fromBinary: (buffer: Uint8Array): DeviceDbSource => DeviceDbSource.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n toBinary: (value: DeviceDbSource): Uint8Array => BSON.serialize(DeviceDbSource.sanitize(value)),\n DEFAULT: Object.freeze({\n sourceType: 0 as DeviceDbSourceType,\n urlOrFilePath: null,\n }) as Readonly<DeviceDbSource>,\n sanitize: (value: DeviceDbSource): DeviceDbSource => {\n if (value == null) { throw new TypeError('Expected DeviceDbSource object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceDbSource object but got ${typeof value}.`) }\n return {\n sourceType: sanitizer.sanitizeEnum(value.sourceType, 'DeviceDbSourceType', DeviceDbSourceType, 'sourceType'),\n urlOrFilePath: value.urlOrFilePath != null ? sanitizer.sanitizeString(value.urlOrFilePath, 'urlOrFilePath') : null,\n };\n },\n convert: (value: BSON.Document): DeviceDbSource => ({\n sourceType: value.sourceType,\n urlOrFilePath: value.urlOrFilePath,\n })\n};\n"]}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { BSON } from 'bson';
|
|
2
|
+
import { DeviceDbInnerError } from '../exceptions/device_db_inner_error';
|
|
2
3
|
/**
|
|
3
4
|
* Contains additional data for a DeviceDbFailedException.
|
|
4
5
|
*/
|
|
@@ -7,6 +8,10 @@ export interface DeviceDbFailedExceptionData {
|
|
|
7
8
|
* Code describing type of the error.
|
|
8
9
|
*/
|
|
9
10
|
code: string;
|
|
11
|
+
/**
|
|
12
|
+
* A list of errors that occurred while trying to access information from the device database.
|
|
13
|
+
*/
|
|
14
|
+
innerErrors: DeviceDbInnerError[];
|
|
10
15
|
}
|
|
11
16
|
export declare const DeviceDbFailedExceptionData: {
|
|
12
17
|
fromBinary: (buffer: Uint8Array) => DeviceDbFailedExceptionData;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device_db_failed_exception_data.d.ts","sourceRoot":"","sources":["../../../src/exceptions/device_db_failed_exception_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"device_db_failed_exception_data.d.ts","sourceRoot":"","sources":["../../../src/exceptions/device_db_failed_exception_data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,kBAAkB,EAAE,CAAC;CAEnC;AAED,eAAO,MAAM,2BAA2B;yBACjB,UAAU,KAAG,2BAA2B;sBAC3C,2BAA2B,KAAG,UAAU;;sBAKxC,2BAA2B,KAAG,2BAA2B;qBAQ1D,KAAK,QAAQ,KAAG,2BAA2B;CAI7D,CAAC"}
|
|
@@ -4,11 +4,13 @@ exports.DeviceDbFailedExceptionData = void 0;
|
|
|
4
4
|
/* This file is generated. Do not modify by hand. */
|
|
5
5
|
const bson_1 = require("bson");
|
|
6
6
|
const sanitizer_1 = require("../gateway/sanitizer");
|
|
7
|
+
const device_db_inner_error_1 = require("../exceptions/device_db_inner_error");
|
|
7
8
|
exports.DeviceDbFailedExceptionData = {
|
|
8
9
|
fromBinary: (buffer) => exports.DeviceDbFailedExceptionData.convert(bson_1.BSON.deserialize(buffer, { useBigInt64: true })),
|
|
9
10
|
toBinary: (value) => bson_1.BSON.serialize(exports.DeviceDbFailedExceptionData.sanitize(value)),
|
|
10
11
|
DEFAULT: Object.freeze({
|
|
11
12
|
code: '',
|
|
13
|
+
innerErrors: [],
|
|
12
14
|
}),
|
|
13
15
|
sanitize: (value) => {
|
|
14
16
|
if (value == null) {
|
|
@@ -19,10 +21,12 @@ exports.DeviceDbFailedExceptionData = {
|
|
|
19
21
|
}
|
|
20
22
|
return {
|
|
21
23
|
code: sanitizer_1.sanitizer.sanitizeString(value.code, 'code'),
|
|
24
|
+
innerErrors: Array.from(value.innerErrors ?? [], item => device_db_inner_error_1.DeviceDbInnerError.sanitize(item)),
|
|
22
25
|
};
|
|
23
26
|
},
|
|
24
27
|
convert: (value) => ({
|
|
25
28
|
code: value.code,
|
|
29
|
+
innerErrors: value.innerErrors,
|
|
26
30
|
})
|
|
27
31
|
};
|
|
28
32
|
//# sourceMappingURL=device_db_failed_exception_data.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device_db_failed_exception_data.js","sourceRoot":"","sources":["../../../src/exceptions/device_db_failed_exception_data.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;
|
|
1
|
+
{"version":3,"file":"device_db_failed_exception_data.js","sourceRoot":"","sources":["../../../src/exceptions/device_db_failed_exception_data.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AACjD,+EAAyE;AAkB5D,QAAA,2BAA2B,GAAG;IACzC,UAAU,EAAE,CAAC,MAAkB,EAA+B,EAAE,CAAC,mCAA2B,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IACrJ,QAAQ,EAAE,CAAC,KAAkC,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,mCAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,EAAE;QACR,WAAW,EAAE,EAAE;KAChB,CAA0C;IAC3C,QAAQ,EAAE,CAAC,KAAkC,EAA+B,EAAE;QAC5E,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,wEAAwE,CAAC,CAAA;QAAC,CAAC;QACpH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,uDAAuD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC9H,OAAO;YACL,IAAI,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;YAClD,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,0CAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC5F,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC,KAAoB,EAA+B,EAAE,CAAC,CAAC;QAC/D,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;CACH,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { DeviceDbInnerError } from '../exceptions/device_db_inner_error';\n\n/**\n * Contains additional data for a DeviceDbFailedException.\n */\nexport interface DeviceDbFailedExceptionData {\n /**\n * Code describing type of the error.\n */\n code: string;\n\n /**\n * A list of errors that occurred while trying to access information from the device database.\n */\n innerErrors: DeviceDbInnerError[];\n\n}\n\nexport const DeviceDbFailedExceptionData = {\n fromBinary: (buffer: Uint8Array): DeviceDbFailedExceptionData => DeviceDbFailedExceptionData.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n toBinary: (value: DeviceDbFailedExceptionData): Uint8Array => BSON.serialize(DeviceDbFailedExceptionData.sanitize(value)),\n DEFAULT: Object.freeze({\n code: '',\n innerErrors: [],\n }) as Readonly<DeviceDbFailedExceptionData>,\n sanitize: (value: DeviceDbFailedExceptionData): DeviceDbFailedExceptionData => {\n if (value == null) { throw new TypeError('Expected DeviceDbFailedExceptionData object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceDbFailedExceptionData object but got ${typeof value}.`) }\n return {\n code: sanitizer.sanitizeString(value.code, 'code'),\n innerErrors: Array.from(value.innerErrors ?? [], item => DeviceDbInnerError.sanitize(item)),\n };\n },\n convert: (value: BSON.Document): DeviceDbFailedExceptionData => ({\n code: value.code,\n innerErrors: value.innerErrors,\n })\n};\n"]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { BSON } from 'bson';
|
|
2
|
+
/**
|
|
3
|
+
* One of the errors that occurred while trying to access information from the device database.
|
|
4
|
+
*/
|
|
5
|
+
export interface DeviceDbInnerError {
|
|
6
|
+
/**
|
|
7
|
+
* Code describing type of the error.
|
|
8
|
+
*/
|
|
9
|
+
code: string;
|
|
10
|
+
/**
|
|
11
|
+
* Description of the error.
|
|
12
|
+
*/
|
|
13
|
+
message: string;
|
|
14
|
+
/**
|
|
15
|
+
* A list of errors that occurred while trying to access information from the device database.
|
|
16
|
+
*/
|
|
17
|
+
innerErrors: DeviceDbInnerError[];
|
|
18
|
+
}
|
|
19
|
+
export declare const DeviceDbInnerError: {
|
|
20
|
+
fromBinary: (buffer: Uint8Array) => DeviceDbInnerError;
|
|
21
|
+
toBinary: (value: DeviceDbInnerError) => Uint8Array;
|
|
22
|
+
DEFAULT: Readonly<DeviceDbInnerError>;
|
|
23
|
+
sanitize: (value: DeviceDbInnerError) => DeviceDbInnerError;
|
|
24
|
+
convert: (value: BSON.Document) => DeviceDbInnerError;
|
|
25
|
+
};
|
|
26
|
+
//# sourceMappingURL=device_db_inner_error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device_db_inner_error.d.ts","sourceRoot":"","sources":["../../../src/exceptions/device_db_inner_error.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,WAAW,EAAE,kBAAkB,EAAE,CAAC;CAEnC;AAED,eAAO,MAAM,kBAAkB;yBACR,UAAU,KAAG,kBAAkB;sBAClC,kBAAkB,KAAG,UAAU;;sBAM/B,kBAAkB,KAAG,kBAAkB;qBASxC,KAAK,QAAQ,KAAG,kBAAkB;CAKpD,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DeviceDbInnerError = void 0;
|
|
4
|
+
/* This file is generated. Do not modify by hand. */
|
|
5
|
+
const bson_1 = require("bson");
|
|
6
|
+
const sanitizer_1 = require("../gateway/sanitizer");
|
|
7
|
+
exports.DeviceDbInnerError = {
|
|
8
|
+
fromBinary: (buffer) => exports.DeviceDbInnerError.convert(bson_1.BSON.deserialize(buffer, { useBigInt64: true })),
|
|
9
|
+
toBinary: (value) => bson_1.BSON.serialize(exports.DeviceDbInnerError.sanitize(value)),
|
|
10
|
+
DEFAULT: Object.freeze({
|
|
11
|
+
code: '',
|
|
12
|
+
message: '',
|
|
13
|
+
innerErrors: [],
|
|
14
|
+
}),
|
|
15
|
+
sanitize: (value) => {
|
|
16
|
+
if (value == null) {
|
|
17
|
+
throw new TypeError('Expected DeviceDbInnerError object but got null or undefined.');
|
|
18
|
+
}
|
|
19
|
+
if (typeof value !== 'object') {
|
|
20
|
+
throw new TypeError(`Expected DeviceDbInnerError object but got ${typeof value}.`);
|
|
21
|
+
}
|
|
22
|
+
return {
|
|
23
|
+
code: sanitizer_1.sanitizer.sanitizeString(value.code, 'code'),
|
|
24
|
+
message: sanitizer_1.sanitizer.sanitizeString(value.message, 'message'),
|
|
25
|
+
innerErrors: Array.from(value.innerErrors ?? [], item => exports.DeviceDbInnerError.sanitize(item)),
|
|
26
|
+
};
|
|
27
|
+
},
|
|
28
|
+
convert: (value) => ({
|
|
29
|
+
code: value.code,
|
|
30
|
+
message: value.message,
|
|
31
|
+
innerErrors: value.innerErrors,
|
|
32
|
+
})
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=device_db_inner_error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device_db_inner_error.js","sourceRoot":"","sources":["../../../src/exceptions/device_db_inner_error.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AAuBpC,QAAA,kBAAkB,GAAG;IAChC,UAAU,EAAE,CAAC,MAAkB,EAAsB,EAAE,CAAC,0BAAkB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IACnI,QAAQ,EAAE,CAAC,KAAyB,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,0BAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvG,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,EAAE;QACR,OAAO,EAAE,EAAE;QACX,WAAW,EAAE,EAAE;KAChB,CAAiC;IAClC,QAAQ,EAAE,CAAC,KAAyB,EAAsB,EAAE;QAC1D,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAA;QAAC,CAAC;QAC3G,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,8CAA8C,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QACrH,OAAO;YACL,IAAI,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;YAClD,OAAO,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC;YAC3D,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,0BAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAC5F,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC,KAAoB,EAAsB,EAAE,CAAC,CAAC;QACtD,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;CACH,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\n\n/**\n * One of the errors that occurred while trying to access information from the device database.\n */\nexport interface DeviceDbInnerError {\n /**\n * Code describing type of the error.\n */\n code: string;\n\n /**\n * Description of the error.\n */\n message: string;\n\n /**\n * A list of errors that occurred while trying to access information from the device database.\n */\n innerErrors: DeviceDbInnerError[];\n\n}\n\nexport const DeviceDbInnerError = {\n fromBinary: (buffer: Uint8Array): DeviceDbInnerError => DeviceDbInnerError.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n toBinary: (value: DeviceDbInnerError): Uint8Array => BSON.serialize(DeviceDbInnerError.sanitize(value)),\n DEFAULT: Object.freeze({\n code: '',\n message: '',\n innerErrors: [],\n }) as Readonly<DeviceDbInnerError>,\n sanitize: (value: DeviceDbInnerError): DeviceDbInnerError => {\n if (value == null) { throw new TypeError('Expected DeviceDbInnerError object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceDbInnerError object but got ${typeof value}.`) }\n return {\n code: sanitizer.sanitizeString(value.code, 'code'),\n message: sanitizer.sanitizeString(value.message, 'message'),\n innerErrors: Array.from(value.innerErrors ?? [], item => DeviceDbInnerError.sanitize(item)),\n };\n },\n convert: (value: BSON.Document): DeviceDbInnerError => ({\n code: value.code,\n message: value.message,\n innerErrors: value.innerErrors,\n })\n};\n"]}
|
|
@@ -15,6 +15,7 @@ export * from './device_address_conflict_exception_data';
|
|
|
15
15
|
export * from './device_busy_exception';
|
|
16
16
|
export * from './device_db_failed_exception';
|
|
17
17
|
export * from './device_db_failed_exception_data';
|
|
18
|
+
export * from './device_db_inner_error';
|
|
18
19
|
export * from './device_detection_failed_exception';
|
|
19
20
|
export * from './device_failed_exception';
|
|
20
21
|
export * from './device_not_identified_exception';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exceptions/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,yBAAyB,CAAC;AACxC,cAAc,oCAAoC,CAAC;AACnD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/exceptions/index.ts"],"names":[],"mappings":"AACA,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qCAAqC,CAAC;AACpD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,yBAAyB,CAAC;AACxC,cAAc,qCAAqC,CAAC;AACpD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yCAAyC,CAAC;AACxD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,uBAAuB,CAAC;AACtC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uCAAuC,CAAC;AACtD,cAAc,yCAAyC,CAAC;AACxD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,yBAAyB,CAAC;AACxC,cAAc,oCAAoC,CAAC;AACnD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,oCAAoC,CAAC;AACnD,cAAc,6BAA6B,CAAC"}
|
|
@@ -32,6 +32,7 @@ __exportStar(require("./device_address_conflict_exception_data"), exports);
|
|
|
32
32
|
__exportStar(require("./device_busy_exception"), exports);
|
|
33
33
|
__exportStar(require("./device_db_failed_exception"), exports);
|
|
34
34
|
__exportStar(require("./device_db_failed_exception_data"), exports);
|
|
35
|
+
__exportStar(require("./device_db_inner_error"), exports);
|
|
35
36
|
__exportStar(require("./device_detection_failed_exception"), exports);
|
|
36
37
|
__exportStar(require("./device_failed_exception"), exports);
|
|
37
38
|
__exportStar(require("./device_not_identified_exception"), exports);
|