@zaber/motion 8.1.0 → 8.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (843) hide show
  1. package/LICENSE +86 -0
  2. package/dist/binding/wasm/zaber-motion-core.wasm +0 -0
  3. package/dist/lib/ascii/alert_event.js +5 -5
  4. package/dist/lib/ascii/alert_event.js.map +1 -1
  5. package/dist/lib/ascii/axis.d.ts +1 -1
  6. package/dist/lib/ascii/axis.d.ts.map +1 -1
  7. package/dist/lib/ascii/axis.js.map +1 -1
  8. package/dist/lib/ascii/axis_identity.d.ts.map +1 -1
  9. package/dist/lib/ascii/axis_identity.js +7 -7
  10. package/dist/lib/ascii/axis_identity.js.map +1 -1
  11. package/dist/lib/ascii/axis_type.d.ts +5 -5
  12. package/dist/lib/ascii/axis_type.d.ts.map +1 -1
  13. package/dist/lib/ascii/axis_type.js +5 -5
  14. package/dist/lib/ascii/axis_type.js.map +1 -1
  15. package/dist/lib/ascii/can_set_state_axis_response.js +2 -2
  16. package/dist/lib/ascii/can_set_state_axis_response.js.map +1 -1
  17. package/dist/lib/ascii/can_set_state_device_response.js +2 -2
  18. package/dist/lib/ascii/can_set_state_device_response.js.map +1 -1
  19. package/dist/lib/ascii/connection.d.ts +15 -0
  20. package/dist/lib/ascii/connection.d.ts.map +1 -1
  21. package/dist/lib/ascii/connection.js +22 -1
  22. package/dist/lib/ascii/connection.js.map +1 -1
  23. package/dist/lib/ascii/conversion_factor.js +3 -3
  24. package/dist/lib/ascii/conversion_factor.js.map +1 -1
  25. package/dist/lib/ascii/device_identity.js +6 -6
  26. package/dist/lib/ascii/device_identity.js.map +1 -1
  27. package/dist/lib/ascii/device_io_info.js +4 -4
  28. package/dist/lib/ascii/device_io_info.js.map +1 -1
  29. package/dist/lib/ascii/digital_output_action.d.ts +4 -4
  30. package/dist/lib/ascii/digital_output_action.d.ts.map +1 -1
  31. package/dist/lib/ascii/digital_output_action.js +4 -4
  32. package/dist/lib/ascii/digital_output_action.js.map +1 -1
  33. package/dist/lib/ascii/get_axis_setting.js +2 -2
  34. package/dist/lib/ascii/get_axis_setting.js.map +1 -1
  35. package/dist/lib/ascii/get_axis_setting_result.js +3 -3
  36. package/dist/lib/ascii/get_axis_setting_result.js.map +1 -1
  37. package/dist/lib/ascii/get_setting.js +3 -3
  38. package/dist/lib/ascii/get_setting.js.map +1 -1
  39. package/dist/lib/ascii/get_setting_result.js +3 -3
  40. package/dist/lib/ascii/get_setting_result.js.map +1 -1
  41. package/dist/lib/ascii/index.d.ts +2 -1
  42. package/dist/lib/ascii/index.d.ts.map +1 -1
  43. package/dist/lib/ascii/index.js +2 -1
  44. package/dist/lib/ascii/index.js.map +1 -1
  45. package/dist/lib/ascii/io_port_label.d.ts.map +1 -1
  46. package/dist/lib/ascii/io_port_label.js +3 -3
  47. package/dist/lib/ascii/io_port_label.js.map +1 -1
  48. package/dist/lib/ascii/io_port_type.d.ts +5 -5
  49. package/dist/lib/ascii/io_port_type.d.ts.map +1 -1
  50. package/dist/lib/ascii/io_port_type.js +5 -5
  51. package/dist/lib/ascii/io_port_type.js.map +1 -1
  52. package/dist/lib/ascii/measurement_sequence.js +2 -2
  53. package/dist/lib/ascii/measurement_sequence.js.map +1 -1
  54. package/dist/lib/ascii/message_type.d.ts +3 -3
  55. package/dist/lib/ascii/message_type.d.ts.map +1 -1
  56. package/dist/lib/ascii/message_type.js +3 -3
  57. package/dist/lib/ascii/message_type.js.map +1 -1
  58. package/dist/lib/ascii/mock_device.d.ts +37 -0
  59. package/dist/lib/ascii/mock_device.d.ts.map +1 -0
  60. package/dist/lib/ascii/mock_device.js +52 -0
  61. package/dist/lib/ascii/mock_device.js.map +1 -0
  62. package/dist/lib/ascii/mock_peripheral.d.ts +27 -0
  63. package/dist/lib/ascii/mock_peripheral.d.ts.map +1 -0
  64. package/dist/lib/ascii/mock_peripheral.js +42 -0
  65. package/dist/lib/ascii/mock_peripheral.js.map +1 -0
  66. package/dist/lib/ascii/optional_measurement_sequence.js +2 -2
  67. package/dist/lib/ascii/optional_measurement_sequence.js.map +1 -1
  68. package/dist/lib/ascii/oscilloscope_capture_properties.d.ts.map +1 -1
  69. package/dist/lib/ascii/oscilloscope_capture_properties.js +5 -5
  70. package/dist/lib/ascii/oscilloscope_capture_properties.js.map +1 -1
  71. package/dist/lib/ascii/oscilloscope_data_source.d.ts +2 -2
  72. package/dist/lib/ascii/oscilloscope_data_source.d.ts.map +1 -1
  73. package/dist/lib/ascii/oscilloscope_data_source.js +2 -2
  74. package/dist/lib/ascii/oscilloscope_data_source.js.map +1 -1
  75. package/dist/lib/ascii/paramset_info.js +3 -3
  76. package/dist/lib/ascii/paramset_info.js.map +1 -1
  77. package/dist/lib/ascii/pid_tuning.js +6 -6
  78. package/dist/lib/ascii/pid_tuning.js.map +1 -1
  79. package/dist/lib/ascii/pvt_axis_definition.d.ts.map +1 -1
  80. package/dist/lib/ascii/pvt_axis_definition.js +2 -2
  81. package/dist/lib/ascii/pvt_axis_definition.js.map +1 -1
  82. package/dist/lib/ascii/pvt_axis_type.d.ts +2 -2
  83. package/dist/lib/ascii/pvt_axis_type.d.ts.map +1 -1
  84. package/dist/lib/ascii/pvt_axis_type.js +2 -2
  85. package/dist/lib/ascii/pvt_axis_type.js.map +1 -1
  86. package/dist/lib/ascii/pvt_csv_data.js +1 -1
  87. package/dist/lib/ascii/pvt_csv_data.js.map +1 -1
  88. package/dist/lib/ascii/pvt_mode.d.ts +3 -3
  89. package/dist/lib/ascii/pvt_mode.d.ts.map +1 -1
  90. package/dist/lib/ascii/pvt_mode.js +3 -3
  91. package/dist/lib/ascii/pvt_mode.js.map +1 -1
  92. package/dist/lib/ascii/pvt_sequence_data.js +2 -2
  93. package/dist/lib/ascii/pvt_sequence_data.js.map +1 -1
  94. package/dist/lib/ascii/response.d.ts.map +1 -1
  95. package/dist/lib/ascii/response.js +7 -7
  96. package/dist/lib/ascii/response.js.map +1 -1
  97. package/dist/lib/ascii/servo_tuning_param.js +2 -2
  98. package/dist/lib/ascii/servo_tuning_param.js.map +1 -1
  99. package/dist/lib/ascii/servo_tuning_paramset.d.ts +12 -12
  100. package/dist/lib/ascii/servo_tuning_paramset.d.ts.map +1 -1
  101. package/dist/lib/ascii/servo_tuning_paramset.js +12 -12
  102. package/dist/lib/ascii/servo_tuning_paramset.js.map +1 -1
  103. package/dist/lib/ascii/set_state_axis_response.js +2 -2
  104. package/dist/lib/ascii/set_state_axis_response.js.map +1 -1
  105. package/dist/lib/ascii/set_state_device_response.js +2 -2
  106. package/dist/lib/ascii/set_state_device_response.js.map +1 -1
  107. package/dist/lib/ascii/simple_tuning.js +6 -6
  108. package/dist/lib/ascii/simple_tuning.js.map +1 -1
  109. package/dist/lib/ascii/simple_tuning_param_definition.js +5 -5
  110. package/dist/lib/ascii/simple_tuning_param_definition.js.map +1 -1
  111. package/dist/lib/ascii/stream_axis_definition.d.ts.map +1 -1
  112. package/dist/lib/ascii/stream_axis_definition.js +2 -2
  113. package/dist/lib/ascii/stream_axis_definition.js.map +1 -1
  114. package/dist/lib/ascii/stream_axis_type.d.ts +2 -2
  115. package/dist/lib/ascii/stream_axis_type.d.ts.map +1 -1
  116. package/dist/lib/ascii/stream_axis_type.js +2 -2
  117. package/dist/lib/ascii/stream_axis_type.js.map +1 -1
  118. package/dist/lib/ascii/stream_mode.d.ts +4 -4
  119. package/dist/lib/ascii/stream_mode.d.ts.map +1 -1
  120. package/dist/lib/ascii/stream_mode.js +4 -4
  121. package/dist/lib/ascii/stream_mode.js.map +1 -1
  122. package/dist/lib/ascii/trigger_action.d.ts +3 -3
  123. package/dist/lib/ascii/trigger_action.d.ts.map +1 -1
  124. package/dist/lib/ascii/trigger_action.js +3 -3
  125. package/dist/lib/ascii/trigger_action.js.map +1 -1
  126. package/dist/lib/ascii/trigger_enabled_state.js +2 -2
  127. package/dist/lib/ascii/trigger_enabled_state.js.map +1 -1
  128. package/dist/lib/ascii/trigger_operation.d.ts +3 -3
  129. package/dist/lib/ascii/trigger_operation.d.ts.map +1 -1
  130. package/dist/lib/ascii/trigger_operation.js +3 -3
  131. package/dist/lib/ascii/trigger_operation.js.map +1 -1
  132. package/dist/lib/ascii/trigger_state.js +5 -5
  133. package/dist/lib/ascii/trigger_state.js.map +1 -1
  134. package/dist/lib/ascii/unknown_response_event.d.ts.map +1 -1
  135. package/dist/lib/ascii/unknown_response_event.js +7 -7
  136. package/dist/lib/ascii/unknown_response_event.js.map +1 -1
  137. package/dist/lib/axis_address.js +2 -2
  138. package/dist/lib/axis_address.js.map +1 -1
  139. package/dist/lib/binary/device_identity.d.ts.map +1 -1
  140. package/dist/lib/binary/device_identity.js +7 -7
  141. package/dist/lib/binary/device_identity.js.map +1 -1
  142. package/dist/lib/binary/device_type.d.ts +3 -3
  143. package/dist/lib/binary/device_type.d.ts.map +1 -1
  144. package/dist/lib/binary/device_type.js +3 -3
  145. package/dist/lib/binary/device_type.js.map +1 -1
  146. package/dist/lib/binary/message.js +3 -3
  147. package/dist/lib/binary/message.js.map +1 -1
  148. package/dist/lib/binary/reply_only_event.js +3 -3
  149. package/dist/lib/binary/reply_only_event.js.map +1 -1
  150. package/dist/lib/binary/unknown_response_event.js +3 -3
  151. package/dist/lib/binary/unknown_response_event.js.map +1 -1
  152. package/dist/lib/channel_address.js +2 -2
  153. package/dist/lib/channel_address.js.map +1 -1
  154. package/dist/lib/cyclic_direction.d.ts.map +1 -0
  155. package/dist/lib/cyclic_direction.js.map +1 -0
  156. package/dist/lib/device_db_source.d.ts.map +1 -1
  157. package/dist/lib/device_db_source.js +2 -2
  158. package/dist/lib/device_db_source.js.map +1 -1
  159. package/dist/lib/device_db_source_type.d.ts +2 -2
  160. package/dist/lib/device_db_source_type.d.ts.map +1 -1
  161. package/dist/lib/device_db_source_type.js +2 -2
  162. package/dist/lib/device_db_source_type.js.map +1 -1
  163. package/dist/lib/device_discovery_result.d.ts +40 -0
  164. package/dist/lib/device_discovery_result.d.ts.map +1 -0
  165. package/dist/lib/device_discovery_result.js +55 -0
  166. package/dist/lib/device_discovery_result.js.map +1 -0
  167. package/dist/lib/device_port_type.d.ts +15 -0
  168. package/dist/lib/device_port_type.d.ts.map +1 -0
  169. package/dist/lib/device_port_type.js +23 -0
  170. package/dist/lib/device_port_type.js.map +1 -0
  171. package/dist/lib/exceptions/binary_command_failed_exception_data.js +1 -1
  172. package/dist/lib/exceptions/binary_command_failed_exception_data.js.map +1 -1
  173. package/dist/lib/exceptions/command_failed_exception_data.js +8 -8
  174. package/dist/lib/exceptions/command_failed_exception_data.js.map +1 -1
  175. package/dist/lib/exceptions/command_too_long_exception_data.js +4 -4
  176. package/dist/lib/exceptions/command_too_long_exception_data.js.map +1 -1
  177. package/dist/lib/exceptions/device_address_conflict_exception_data.js +1 -1
  178. package/dist/lib/exceptions/device_address_conflict_exception_data.js.map +1 -1
  179. package/dist/lib/exceptions/device_db_failed_exception_data.js +2 -2
  180. package/dist/lib/exceptions/device_db_failed_exception_data.js.map +1 -1
  181. package/dist/lib/exceptions/device_db_inner_error.d.ts.map +1 -1
  182. package/dist/lib/exceptions/device_db_inner_error.js +4 -4
  183. package/dist/lib/exceptions/device_db_inner_error.js.map +1 -1
  184. package/dist/lib/exceptions/g_code_execution_exception_data.js +2 -2
  185. package/dist/lib/exceptions/g_code_execution_exception_data.js.map +1 -1
  186. package/dist/lib/exceptions/g_code_syntax_exception_data.js +2 -2
  187. package/dist/lib/exceptions/g_code_syntax_exception_data.js.map +1 -1
  188. package/dist/lib/exceptions/invalid_packet_exception_data.js +2 -2
  189. package/dist/lib/exceptions/invalid_packet_exception_data.js.map +1 -1
  190. package/dist/lib/exceptions/invalid_pvt_point.js +2 -2
  191. package/dist/lib/exceptions/invalid_pvt_point.js.map +1 -1
  192. package/dist/lib/exceptions/invalid_response_exception_data.js +1 -1
  193. package/dist/lib/exceptions/invalid_response_exception_data.js.map +1 -1
  194. package/dist/lib/exceptions/movement_failed_exception_data.js +4 -4
  195. package/dist/lib/exceptions/movement_failed_exception_data.js.map +1 -1
  196. package/dist/lib/exceptions/movement_interrupted_exception_data.js +4 -4
  197. package/dist/lib/exceptions/movement_interrupted_exception_data.js.map +1 -1
  198. package/dist/lib/exceptions/operation_failed_exception_data.js +4 -4
  199. package/dist/lib/exceptions/operation_failed_exception_data.js.map +1 -1
  200. package/dist/lib/exceptions/pvt_execution_exception_data.js +3 -3
  201. package/dist/lib/exceptions/pvt_execution_exception_data.js.map +1 -1
  202. package/dist/lib/exceptions/pvt_movement_failed_exception_data.js +2 -2
  203. package/dist/lib/exceptions/pvt_movement_failed_exception_data.js.map +1 -1
  204. package/dist/lib/exceptions/pvt_movement_interrupted_exception_data.js +2 -2
  205. package/dist/lib/exceptions/pvt_movement_interrupted_exception_data.js.map +1 -1
  206. package/dist/lib/exceptions/set_device_state_exception_data.js +8 -8
  207. package/dist/lib/exceptions/set_device_state_exception_data.js.map +1 -1
  208. package/dist/lib/exceptions/set_peripheral_state_exception_data.js +5 -5
  209. package/dist/lib/exceptions/set_peripheral_state_exception_data.js.map +1 -1
  210. package/dist/lib/exceptions/stream_execution_exception_data.js +2 -2
  211. package/dist/lib/exceptions/stream_execution_exception_data.js.map +1 -1
  212. package/dist/lib/exceptions/stream_movement_failed_exception_data.js +2 -2
  213. package/dist/lib/exceptions/stream_movement_failed_exception_data.js.map +1 -1
  214. package/dist/lib/exceptions/stream_movement_interrupted_exception_data.js +2 -2
  215. package/dist/lib/exceptions/stream_movement_interrupted_exception_data.js.map +1 -1
  216. package/dist/lib/firmware_version.js +3 -3
  217. package/dist/lib/firmware_version.js.map +1 -1
  218. package/dist/lib/gateway/sanitizer.d.ts +7 -0
  219. package/dist/lib/gateway/sanitizer.d.ts.map +1 -1
  220. package/dist/lib/gateway/sanitizer.js +23 -0
  221. package/dist/lib/gateway/sanitizer.js.map +1 -1
  222. package/dist/lib/gcode/axis_definition.js +2 -2
  223. package/dist/lib/gcode/axis_definition.js.map +1 -1
  224. package/dist/lib/gcode/axis_mapping.js +2 -2
  225. package/dist/lib/gcode/axis_mapping.js.map +1 -1
  226. package/dist/lib/gcode/axis_transformation.js +3 -3
  227. package/dist/lib/gcode/axis_transformation.js.map +1 -1
  228. package/dist/lib/gcode/device_definition.js +2 -2
  229. package/dist/lib/gcode/device_definition.js.map +1 -1
  230. package/dist/lib/gcode/translate_message.js +3 -3
  231. package/dist/lib/gcode/translate_message.js.map +1 -1
  232. package/dist/lib/gcode/translate_result.js +2 -2
  233. package/dist/lib/gcode/translate_result.js.map +1 -1
  234. package/dist/lib/gcode/translator_config.js +2 -2
  235. package/dist/lib/gcode/translator_config.js.map +1 -1
  236. package/dist/lib/index.d.ts +3 -0
  237. package/dist/lib/index.d.ts.map +1 -1
  238. package/dist/lib/index.js +3 -0
  239. package/dist/lib/index.js.map +1 -1
  240. package/dist/lib/library.d.ts +5 -0
  241. package/dist/lib/library.d.ts.map +1 -1
  242. package/dist/lib/library.js +15 -1
  243. package/dist/lib/library.js.map +1 -1
  244. package/dist/lib/log_output_mode.d.ts +4 -4
  245. package/dist/lib/log_output_mode.d.ts.map +1 -1
  246. package/dist/lib/log_output_mode.js +4 -4
  247. package/dist/lib/log_output_mode.js.map +1 -1
  248. package/dist/lib/measurement.js +2 -2
  249. package/dist/lib/measurement.js.map +1 -1
  250. package/dist/lib/microscopy/autofocus_status.js +2 -2
  251. package/dist/lib/microscopy/autofocus_status.js.map +1 -1
  252. package/dist/lib/microscopy/microscope_config.js +8 -8
  253. package/dist/lib/microscopy/microscope_config.js.map +1 -1
  254. package/dist/lib/microscopy/third_party_components.js +1 -1
  255. package/dist/lib/microscopy/third_party_components.js.map +1 -1
  256. package/dist/lib/microscopy/wdi_autofocus_provider_status.js +2 -2
  257. package/dist/lib/microscopy/wdi_autofocus_provider_status.js.map +1 -1
  258. package/dist/lib/named_parameter.js +2 -2
  259. package/dist/lib/named_parameter.js.map +1 -1
  260. package/dist/lib/product/process_controller_mode.d.ts +5 -5
  261. package/dist/lib/product/process_controller_mode.d.ts.map +1 -1
  262. package/dist/lib/product/process_controller_mode.js +5 -5
  263. package/dist/lib/product/process_controller_mode.js.map +1 -1
  264. package/dist/lib/product/process_controller_source.d.ts.map +1 -1
  265. package/dist/lib/product/process_controller_source.js +2 -2
  266. package/dist/lib/product/process_controller_source.js.map +1 -1
  267. package/dist/lib/product/process_controller_source_sensor.d.ts +3 -3
  268. package/dist/lib/product/process_controller_source_sensor.d.ts.map +1 -1
  269. package/dist/lib/product/process_controller_source_sensor.js +3 -3
  270. package/dist/lib/product/process_controller_source_sensor.js.map +1 -1
  271. package/dist/lib/requests/alert_event_wrapper.js +2 -2
  272. package/dist/lib/requests/alert_event_wrapper.js.map +1 -1
  273. package/dist/lib/requests/autofocus_focus_request.js +8 -8
  274. package/dist/lib/requests/autofocus_focus_request.js.map +1 -1
  275. package/dist/lib/requests/autofocus_get_objective_params_request.js +6 -6
  276. package/dist/lib/requests/autofocus_get_objective_params_request.js.map +1 -1
  277. package/dist/lib/requests/autofocus_get_objective_params_response.js +1 -1
  278. package/dist/lib/requests/autofocus_get_objective_params_response.js.map +1 -1
  279. package/dist/lib/requests/autofocus_set_objective_params_request.js +7 -7
  280. package/dist/lib/requests/autofocus_set_objective_params_request.js.map +1 -1
  281. package/dist/lib/requests/axes_empty_request.js +3 -3
  282. package/dist/lib/requests/axes_empty_request.js.map +1 -1
  283. package/dist/lib/requests/axes_get_setting_request.js +5 -5
  284. package/dist/lib/requests/axes_get_setting_request.js.map +1 -1
  285. package/dist/lib/requests/axes_move_request.js +4 -4
  286. package/dist/lib/requests/axes_move_request.js.map +1 -1
  287. package/dist/lib/requests/axis_empty_request.js +3 -3
  288. package/dist/lib/requests/axis_empty_request.js.map +1 -1
  289. package/dist/lib/requests/axis_to_string_request.js +4 -4
  290. package/dist/lib/requests/axis_to_string_request.js.map +1 -1
  291. package/dist/lib/requests/binary_device_detect_request.js +2 -2
  292. package/dist/lib/requests/binary_device_detect_request.js.map +1 -1
  293. package/dist/lib/requests/binary_device_detect_response.js +1 -1
  294. package/dist/lib/requests/binary_device_detect_response.js.map +1 -1
  295. package/dist/lib/requests/binary_device_get_setting_request.d.ts.map +1 -1
  296. package/dist/lib/requests/binary_device_get_setting_request.js +4 -4
  297. package/dist/lib/requests/binary_device_get_setting_request.js.map +1 -1
  298. package/dist/lib/requests/binary_device_home_request.js +4 -4
  299. package/dist/lib/requests/binary_device_home_request.js.map +1 -1
  300. package/dist/lib/requests/binary_device_move_request.d.ts.map +1 -1
  301. package/dist/lib/requests/binary_device_move_request.js +6 -6
  302. package/dist/lib/requests/binary_device_move_request.js.map +1 -1
  303. package/dist/lib/requests/binary_device_set_setting_request.d.ts.map +1 -1
  304. package/dist/lib/requests/binary_device_set_setting_request.js +5 -5
  305. package/dist/lib/requests/binary_device_set_setting_request.js.map +1 -1
  306. package/dist/lib/requests/binary_device_stop_request.js +4 -4
  307. package/dist/lib/requests/binary_device_stop_request.js.map +1 -1
  308. package/dist/lib/requests/binary_generic_with_units_request.d.ts.map +1 -1
  309. package/dist/lib/requests/binary_generic_with_units_request.js +7 -7
  310. package/dist/lib/requests/binary_generic_with_units_request.js.map +1 -1
  311. package/dist/lib/requests/binary_message_collection.js +1 -1
  312. package/dist/lib/requests/binary_message_collection.js.map +1 -1
  313. package/dist/lib/requests/binary_reply_only_event_wrapper.js +2 -2
  314. package/dist/lib/requests/binary_reply_only_event_wrapper.js.map +1 -1
  315. package/dist/lib/requests/bool_response.js +1 -1
  316. package/dist/lib/requests/bool_response.js.map +1 -1
  317. package/dist/lib/requests/can_set_state_axis_response.js +2 -2
  318. package/dist/lib/requests/can_set_state_axis_response.js.map +1 -1
  319. package/dist/lib/requests/can_set_state_request.js +5 -5
  320. package/dist/lib/requests/can_set_state_request.js.map +1 -1
  321. package/dist/lib/requests/channel_on.js +5 -5
  322. package/dist/lib/requests/channel_on.js.map +1 -1
  323. package/dist/lib/requests/channel_set_intensity.js +4 -4
  324. package/dist/lib/requests/channel_set_intensity.js.map +1 -1
  325. package/dist/lib/requests/check_version_request.js +2 -2
  326. package/dist/lib/requests/check_version_request.js.map +1 -1
  327. package/dist/lib/requests/custom_interface_close_request.js +2 -2
  328. package/dist/lib/requests/custom_interface_close_request.js.map +1 -1
  329. package/dist/lib/requests/custom_interface_open_response.js +1 -1
  330. package/dist/lib/requests/custom_interface_open_response.js.map +1 -1
  331. package/dist/lib/requests/custom_interface_read_request.js +1 -1
  332. package/dist/lib/requests/custom_interface_read_request.js.map +1 -1
  333. package/dist/lib/requests/custom_interface_write_request.js +2 -2
  334. package/dist/lib/requests/custom_interface_write_request.js.map +1 -1
  335. package/dist/lib/requests/device_cancel_all_outputs_schedule_request.js +4 -4
  336. package/dist/lib/requests/device_cancel_all_outputs_schedule_request.js.map +1 -1
  337. package/dist/lib/requests/device_cancel_output_schedule_request.js +4 -4
  338. package/dist/lib/requests/device_cancel_output_schedule_request.js.map +1 -1
  339. package/dist/lib/requests/device_convert_setting_request.js +7 -7
  340. package/dist/lib/requests/device_convert_setting_request.js.map +1 -1
  341. package/dist/lib/requests/device_detect_request.d.ts.map +1 -1
  342. package/dist/lib/requests/device_detect_request.js +3 -3
  343. package/dist/lib/requests/device_detect_request.js.map +1 -1
  344. package/dist/lib/requests/device_detect_response.js +1 -1
  345. package/dist/lib/requests/device_detect_response.js.map +1 -1
  346. package/dist/lib/requests/device_empty_request.js +2 -2
  347. package/dist/lib/requests/device_empty_request.js.map +1 -1
  348. package/dist/lib/requests/device_get_all_analog_io_request.js +3 -3
  349. package/dist/lib/requests/device_get_all_analog_io_request.js.map +1 -1
  350. package/dist/lib/requests/device_get_all_analog_io_response.js +1 -1
  351. package/dist/lib/requests/device_get_all_analog_io_response.js.map +1 -1
  352. package/dist/lib/requests/device_get_all_digital_io_request.js +3 -3
  353. package/dist/lib/requests/device_get_all_digital_io_request.js.map +1 -1
  354. package/dist/lib/requests/device_get_all_digital_io_response.js +1 -1
  355. package/dist/lib/requests/device_get_all_digital_io_response.js.map +1 -1
  356. package/dist/lib/requests/device_get_analog_io_request.js +4 -4
  357. package/dist/lib/requests/device_get_analog_io_request.js.map +1 -1
  358. package/dist/lib/requests/device_get_digital_io_request.js +4 -4
  359. package/dist/lib/requests/device_get_digital_io_request.js.map +1 -1
  360. package/dist/lib/requests/device_get_setting_request.js +5 -5
  361. package/dist/lib/requests/device_get_setting_request.js.map +1 -1
  362. package/dist/lib/requests/device_get_storage_request.js +5 -5
  363. package/dist/lib/requests/device_get_storage_request.js.map +1 -1
  364. package/dist/lib/requests/device_get_warnings_request.js +4 -4
  365. package/dist/lib/requests/device_get_warnings_request.js.map +1 -1
  366. package/dist/lib/requests/device_get_warnings_response.js +1 -1
  367. package/dist/lib/requests/device_get_warnings_response.js.map +1 -1
  368. package/dist/lib/requests/device_home_request.js +4 -4
  369. package/dist/lib/requests/device_home_request.js.map +1 -1
  370. package/dist/lib/requests/device_identify_request.js +3 -3
  371. package/dist/lib/requests/device_identify_request.js.map +1 -1
  372. package/dist/lib/requests/device_move_request.d.ts +1 -1
  373. package/dist/lib/requests/device_move_request.d.ts.map +1 -1
  374. package/dist/lib/requests/device_move_request.js +15 -15
  375. package/dist/lib/requests/device_move_request.js.map +1 -1
  376. package/dist/lib/requests/device_move_sin_request.js +9 -9
  377. package/dist/lib/requests/device_move_sin_request.js.map +1 -1
  378. package/dist/lib/requests/device_multi_get_setting_request.js +5 -5
  379. package/dist/lib/requests/device_multi_get_setting_request.js.map +1 -1
  380. package/dist/lib/requests/device_on_all_request.js +2 -2
  381. package/dist/lib/requests/device_on_all_request.js.map +1 -1
  382. package/dist/lib/requests/device_on_all_response.js +1 -1
  383. package/dist/lib/requests/device_on_all_response.js.map +1 -1
  384. package/dist/lib/requests/device_restore_request.js +4 -4
  385. package/dist/lib/requests/device_restore_request.js.map +1 -1
  386. package/dist/lib/requests/device_set_all_analog_outputs_request.js +3 -3
  387. package/dist/lib/requests/device_set_all_analog_outputs_request.js.map +1 -1
  388. package/dist/lib/requests/device_set_all_analog_outputs_schedule_request.js +6 -6
  389. package/dist/lib/requests/device_set_all_analog_outputs_schedule_request.js.map +1 -1
  390. package/dist/lib/requests/device_set_all_digital_outputs_request.d.ts.map +1 -1
  391. package/dist/lib/requests/device_set_all_digital_outputs_request.js +3 -3
  392. package/dist/lib/requests/device_set_all_digital_outputs_request.js.map +1 -1
  393. package/dist/lib/requests/device_set_all_digital_outputs_schedule_request.d.ts.map +1 -1
  394. package/dist/lib/requests/device_set_all_digital_outputs_schedule_request.js +6 -6
  395. package/dist/lib/requests/device_set_all_digital_outputs_schedule_request.js.map +1 -1
  396. package/dist/lib/requests/device_set_analog_output_request.js +4 -4
  397. package/dist/lib/requests/device_set_analog_output_request.js.map +1 -1
  398. package/dist/lib/requests/device_set_analog_output_schedule_request.js +7 -7
  399. package/dist/lib/requests/device_set_analog_output_schedule_request.js.map +1 -1
  400. package/dist/lib/requests/device_set_digital_output_request.d.ts.map +1 -1
  401. package/dist/lib/requests/device_set_digital_output_request.js +4 -4
  402. package/dist/lib/requests/device_set_digital_output_request.js.map +1 -1
  403. package/dist/lib/requests/device_set_digital_output_schedule_request.d.ts.map +1 -1
  404. package/dist/lib/requests/device_set_digital_output_schedule_request.js +7 -7
  405. package/dist/lib/requests/device_set_digital_output_schedule_request.js.map +1 -1
  406. package/dist/lib/requests/device_set_lowpass_filter_request.js +5 -5
  407. package/dist/lib/requests/device_set_lowpass_filter_request.js.map +1 -1
  408. package/dist/lib/requests/device_set_setting_bool_request.js +5 -5
  409. package/dist/lib/requests/device_set_setting_bool_request.js.map +1 -1
  410. package/dist/lib/requests/device_set_setting_int_request.js +5 -5
  411. package/dist/lib/requests/device_set_setting_int_request.js.map +1 -1
  412. package/dist/lib/requests/device_set_setting_request.js +6 -6
  413. package/dist/lib/requests/device_set_setting_request.js.map +1 -1
  414. package/dist/lib/requests/device_set_setting_str_request.js +5 -5
  415. package/dist/lib/requests/device_set_setting_str_request.js.map +1 -1
  416. package/dist/lib/requests/device_set_storage_bool_request.js +5 -5
  417. package/dist/lib/requests/device_set_storage_bool_request.js.map +1 -1
  418. package/dist/lib/requests/device_set_storage_number_request.js +5 -5
  419. package/dist/lib/requests/device_set_storage_number_request.js.map +1 -1
  420. package/dist/lib/requests/device_set_storage_request.js +6 -6
  421. package/dist/lib/requests/device_set_storage_request.js.map +1 -1
  422. package/dist/lib/requests/device_set_unit_conversions_request.js +5 -5
  423. package/dist/lib/requests/device_set_unit_conversions_request.js.map +1 -1
  424. package/dist/lib/requests/device_stop_request.js +4 -4
  425. package/dist/lib/requests/device_stop_request.js.map +1 -1
  426. package/dist/lib/requests/device_storage_list_keys_request.js +4 -4
  427. package/dist/lib/requests/device_storage_list_keys_request.js.map +1 -1
  428. package/dist/lib/requests/device_storage_request.js +4 -4
  429. package/dist/lib/requests/device_storage_request.js.map +1 -1
  430. package/dist/lib/requests/device_wait_until_idle_request.js +4 -4
  431. package/dist/lib/requests/device_wait_until_idle_request.js.map +1 -1
  432. package/dist/lib/requests/disconnected_event.d.ts.map +1 -1
  433. package/dist/lib/requests/disconnected_event.js +4 -4
  434. package/dist/lib/requests/disconnected_event.js.map +1 -1
  435. package/dist/lib/requests/discover_mdns_request.d.ts +14 -0
  436. package/dist/lib/requests/discover_mdns_request.d.ts.map +1 -0
  437. package/dist/lib/requests/discover_mdns_request.js +38 -0
  438. package/dist/lib/requests/discover_mdns_request.js.map +1 -0
  439. package/dist/lib/requests/discover_tcp_devices_response.d.ts +14 -0
  440. package/dist/lib/requests/discover_tcp_devices_response.d.ts.map +1 -0
  441. package/dist/lib/requests/discover_tcp_devices_response.js +34 -0
  442. package/dist/lib/requests/discover_tcp_devices_response.js.map +1 -0
  443. package/dist/lib/requests/double_array_response.js +1 -1
  444. package/dist/lib/requests/double_array_response.js.map +1 -1
  445. package/dist/lib/requests/double_response.js +1 -1
  446. package/dist/lib/requests/double_response.js.map +1 -1
  447. package/dist/lib/requests/driver_enable_request.js +4 -4
  448. package/dist/lib/requests/driver_enable_request.js.map +1 -1
  449. package/dist/lib/requests/empty_autofocus_request.js +5 -5
  450. package/dist/lib/requests/empty_autofocus_request.js.map +1 -1
  451. package/dist/lib/requests/find_device_request.js +2 -2
  452. package/dist/lib/requests/find_device_request.js.map +1 -1
  453. package/dist/lib/requests/find_device_response.js +1 -1
  454. package/dist/lib/requests/find_device_response.js.map +1 -1
  455. package/dist/lib/requests/forget_devices_request.js +2 -2
  456. package/dist/lib/requests/forget_devices_request.js.map +1 -1
  457. package/dist/lib/requests/gateway_event.js +1 -1
  458. package/dist/lib/requests/gateway_event.js.map +1 -1
  459. package/dist/lib/requests/gateway_request.js +1 -1
  460. package/dist/lib/requests/gateway_request.js.map +1 -1
  461. package/dist/lib/requests/gateway_response.d.ts.map +1 -1
  462. package/dist/lib/requests/gateway_response.js +3 -3
  463. package/dist/lib/requests/gateway_response.js.map +1 -1
  464. package/dist/lib/requests/generic_binary_request.d.ts.map +1 -1
  465. package/dist/lib/requests/generic_binary_request.js +6 -6
  466. package/dist/lib/requests/generic_binary_request.js.map +1 -1
  467. package/dist/lib/requests/generic_command_request.js +6 -6
  468. package/dist/lib/requests/generic_command_request.js.map +1 -1
  469. package/dist/lib/requests/generic_command_response_collection.js +1 -1
  470. package/dist/lib/requests/generic_command_response_collection.js.map +1 -1
  471. package/dist/lib/requests/get_all_io_port_labels_response.js +1 -1
  472. package/dist/lib/requests/get_all_io_port_labels_response.js.map +1 -1
  473. package/dist/lib/requests/get_axis_setting_results.js +1 -1
  474. package/dist/lib/requests/get_axis_setting_results.js.map +1 -1
  475. package/dist/lib/requests/get_command_unit_conversion_response.js +1 -1
  476. package/dist/lib/requests/get_command_unit_conversion_response.js.map +1 -1
  477. package/dist/lib/requests/get_io_port_label_request.d.ts.map +1 -1
  478. package/dist/lib/requests/get_io_port_label_request.js +4 -4
  479. package/dist/lib/requests/get_io_port_label_request.js.map +1 -1
  480. package/dist/lib/requests/get_setting_results.js +1 -1
  481. package/dist/lib/requests/get_setting_results.js.map +1 -1
  482. package/dist/lib/requests/get_simple_tuning_param_definition_response.js +1 -1
  483. package/dist/lib/requests/get_simple_tuning_param_definition_response.js.map +1 -1
  484. package/dist/lib/requests/index.d.ts +2 -0
  485. package/dist/lib/requests/index.d.ts.map +1 -1
  486. package/dist/lib/requests/index.js +2 -0
  487. package/dist/lib/requests/index.js.map +1 -1
  488. package/dist/lib/requests/int_64_response.js +1 -1
  489. package/dist/lib/requests/int_64_response.js.map +1 -1
  490. package/dist/lib/requests/int_array_response.js +1 -1
  491. package/dist/lib/requests/int_array_response.js.map +1 -1
  492. package/dist/lib/requests/int_request.js +1 -1
  493. package/dist/lib/requests/int_request.js.map +1 -1
  494. package/dist/lib/requests/int_response.js +1 -1
  495. package/dist/lib/requests/int_response.js.map +1 -1
  496. package/dist/lib/requests/interface_empty_request.js +1 -1
  497. package/dist/lib/requests/interface_empty_request.js.map +1 -1
  498. package/dist/lib/requests/interface_type.d.ts +3 -1
  499. package/dist/lib/requests/interface_type.d.ts.map +1 -1
  500. package/dist/lib/requests/interface_type.js +2 -0
  501. package/dist/lib/requests/interface_type.js.map +1 -1
  502. package/dist/lib/requests/load_paramset.d.ts.map +1 -1
  503. package/dist/lib/requests/load_paramset.js +5 -5
  504. package/dist/lib/requests/load_paramset.js.map +1 -1
  505. package/dist/lib/requests/lockstep_disable_request.js +4 -4
  506. package/dist/lib/requests/lockstep_disable_request.js.map +1 -1
  507. package/dist/lib/requests/lockstep_empty_request.js +3 -3
  508. package/dist/lib/requests/lockstep_empty_request.js.map +1 -1
  509. package/dist/lib/requests/lockstep_enable_request.js +4 -4
  510. package/dist/lib/requests/lockstep_enable_request.js.map +1 -1
  511. package/dist/lib/requests/lockstep_get_axis_numbers_response.js +1 -1
  512. package/dist/lib/requests/lockstep_get_axis_numbers_response.js.map +1 -1
  513. package/dist/lib/requests/lockstep_get_request.js +4 -4
  514. package/dist/lib/requests/lockstep_get_request.js.map +1 -1
  515. package/dist/lib/requests/lockstep_home_request.js +4 -4
  516. package/dist/lib/requests/lockstep_home_request.js.map +1 -1
  517. package/dist/lib/requests/lockstep_move_request.d.ts.map +1 -1
  518. package/dist/lib/requests/lockstep_move_request.js +11 -11
  519. package/dist/lib/requests/lockstep_move_request.js.map +1 -1
  520. package/dist/lib/requests/lockstep_move_sin_request.js +9 -9
  521. package/dist/lib/requests/lockstep_move_sin_request.js.map +1 -1
  522. package/dist/lib/requests/lockstep_set_request.js +6 -6
  523. package/dist/lib/requests/lockstep_set_request.js.map +1 -1
  524. package/dist/lib/requests/lockstep_stop_request.js +4 -4
  525. package/dist/lib/requests/lockstep_stop_request.js.map +1 -1
  526. package/dist/lib/requests/lockstep_wait_until_idle_request.js +4 -4
  527. package/dist/lib/requests/lockstep_wait_until_idle_request.js.map +1 -1
  528. package/dist/lib/requests/microscope_empty_request.js +1 -1
  529. package/dist/lib/requests/microscope_empty_request.js.map +1 -1
  530. package/dist/lib/requests/microscope_find_request.js +2 -2
  531. package/dist/lib/requests/microscope_find_request.js.map +1 -1
  532. package/dist/lib/requests/microscope_init_request.js +2 -2
  533. package/dist/lib/requests/microscope_init_request.js.map +1 -1
  534. package/dist/lib/requests/microscope_trigger_camera_request.js +6 -6
  535. package/dist/lib/requests/microscope_trigger_camera_request.js.map +1 -1
  536. package/dist/lib/requests/objective_changer_change_request.js +6 -6
  537. package/dist/lib/requests/objective_changer_change_request.js.map +1 -1
  538. package/dist/lib/requests/objective_changer_create_response.js +3 -3
  539. package/dist/lib/requests/objective_changer_create_response.js.map +1 -1
  540. package/dist/lib/requests/objective_changer_get_current_response.js +1 -1
  541. package/dist/lib/requests/objective_changer_get_current_response.js.map +1 -1
  542. package/dist/lib/requests/objective_changer_request.js +4 -4
  543. package/dist/lib/requests/objective_changer_request.js.map +1 -1
  544. package/dist/lib/requests/objective_changer_set_request.js +6 -6
  545. package/dist/lib/requests/objective_changer_set_request.js.map +1 -1
  546. package/dist/lib/requests/open_binary_interface_request.d.ts.map +1 -1
  547. package/dist/lib/requests/open_binary_interface_request.js +6 -6
  548. package/dist/lib/requests/open_binary_interface_request.js.map +1 -1
  549. package/dist/lib/requests/open_interface_request.d.ts +3 -0
  550. package/dist/lib/requests/open_interface_request.d.ts.map +1 -1
  551. package/dist/lib/requests/open_interface_request.js +21 -12
  552. package/dist/lib/requests/open_interface_request.js.map +1 -1
  553. package/dist/lib/requests/open_interface_response.js +1 -1
  554. package/dist/lib/requests/open_interface_response.js.map +1 -1
  555. package/dist/lib/requests/oscilloscope_add_io_channel_request.d.ts.map +1 -1
  556. package/dist/lib/requests/oscilloscope_add_io_channel_request.js +4 -4
  557. package/dist/lib/requests/oscilloscope_add_io_channel_request.js.map +1 -1
  558. package/dist/lib/requests/oscilloscope_add_setting_channel_request.js +4 -4
  559. package/dist/lib/requests/oscilloscope_add_setting_channel_request.js.map +1 -1
  560. package/dist/lib/requests/oscilloscope_data_get_request.js +2 -2
  561. package/dist/lib/requests/oscilloscope_data_get_request.js.map +1 -1
  562. package/dist/lib/requests/oscilloscope_data_get_sample_time_request.js +3 -3
  563. package/dist/lib/requests/oscilloscope_data_get_sample_time_request.js.map +1 -1
  564. package/dist/lib/requests/oscilloscope_data_get_samples_response.js +1 -1
  565. package/dist/lib/requests/oscilloscope_data_get_samples_response.js.map +1 -1
  566. package/dist/lib/requests/oscilloscope_data_identifier.js +1 -1
  567. package/dist/lib/requests/oscilloscope_data_identifier.js.map +1 -1
  568. package/dist/lib/requests/oscilloscope_read_response.js +1 -1
  569. package/dist/lib/requests/oscilloscope_read_response.js.map +1 -1
  570. package/dist/lib/requests/oscilloscope_request.js +2 -2
  571. package/dist/lib/requests/oscilloscope_request.js.map +1 -1
  572. package/dist/lib/requests/oscilloscope_start_request.js +3 -3
  573. package/dist/lib/requests/oscilloscope_start_request.js.map +1 -1
  574. package/dist/lib/requests/prepare_command_request.js +5 -5
  575. package/dist/lib/requests/prepare_command_request.js.map +1 -1
  576. package/dist/lib/requests/process_on.js +6 -6
  577. package/dist/lib/requests/process_on.js.map +1 -1
  578. package/dist/lib/requests/pvt_buffer_get_sequence_data_request.js +3 -3
  579. package/dist/lib/requests/pvt_buffer_get_sequence_data_request.js.map +1 -1
  580. package/dist/lib/requests/pvt_generate_positions_request.js +2 -2
  581. package/dist/lib/requests/pvt_generate_positions_request.js.map +1 -1
  582. package/dist/lib/requests/pvt_generate_velocities_and_times_request.js +2 -2
  583. package/dist/lib/requests/pvt_generate_velocities_and_times_request.js.map +1 -1
  584. package/dist/lib/requests/pvt_generate_velocities_request.js +3 -3
  585. package/dist/lib/requests/pvt_generate_velocities_request.js.map +1 -1
  586. package/dist/lib/requests/pvt_load_csv_request.js +1 -1
  587. package/dist/lib/requests/pvt_load_csv_request.js.map +1 -1
  588. package/dist/lib/requests/pvt_point_request.d.ts.map +1 -1
  589. package/dist/lib/requests/pvt_point_request.js +7 -7
  590. package/dist/lib/requests/pvt_point_request.js.map +1 -1
  591. package/dist/lib/requests/pvt_points_request.d.ts.map +1 -1
  592. package/dist/lib/requests/pvt_points_request.js +7 -7
  593. package/dist/lib/requests/pvt_points_request.js.map +1 -1
  594. package/dist/lib/requests/pvt_save_csv_request.js +2 -2
  595. package/dist/lib/requests/pvt_save_csv_request.js.map +1 -1
  596. package/dist/lib/requests/pvt_submit_sequence_data_request.js +3 -3
  597. package/dist/lib/requests/pvt_submit_sequence_data_request.js.map +1 -1
  598. package/dist/lib/requests/renumber_request.js +3 -3
  599. package/dist/lib/requests/renumber_request.js.map +1 -1
  600. package/dist/lib/requests/servo_tuning_paramset_response.d.ts.map +1 -1
  601. package/dist/lib/requests/servo_tuning_paramset_response.js +1 -1
  602. package/dist/lib/requests/servo_tuning_paramset_response.js.map +1 -1
  603. package/dist/lib/requests/servo_tuning_request.d.ts.map +1 -1
  604. package/dist/lib/requests/servo_tuning_request.js +4 -4
  605. package/dist/lib/requests/servo_tuning_request.js.map +1 -1
  606. package/dist/lib/requests/set_device_db_layered_sources_request.js +1 -1
  607. package/dist/lib/requests/set_device_db_layered_sources_request.js.map +1 -1
  608. package/dist/lib/requests/set_device_db_source_request.d.ts.map +1 -1
  609. package/dist/lib/requests/set_device_db_source_request.js +2 -2
  610. package/dist/lib/requests/set_device_db_source_request.js.map +1 -1
  611. package/dist/lib/requests/set_interface_checksum_enabled_request.js +2 -2
  612. package/dist/lib/requests/set_interface_checksum_enabled_request.js.map +1 -1
  613. package/dist/lib/requests/set_interface_timeout_request.js +2 -2
  614. package/dist/lib/requests/set_interface_timeout_request.js.map +1 -1
  615. package/dist/lib/requests/set_internal_mode_request.js +1 -1
  616. package/dist/lib/requests/set_internal_mode_request.js.map +1 -1
  617. package/dist/lib/requests/set_io_port_label_request.d.ts.map +1 -1
  618. package/dist/lib/requests/set_io_port_label_request.js +5 -5
  619. package/dist/lib/requests/set_io_port_label_request.js.map +1 -1
  620. package/dist/lib/requests/set_log_output_request.d.ts.map +1 -1
  621. package/dist/lib/requests/set_log_output_request.js +2 -2
  622. package/dist/lib/requests/set_log_output_request.js.map +1 -1
  623. package/dist/lib/requests/set_process_controller_source.js +3 -3
  624. package/dist/lib/requests/set_process_controller_source.js.map +1 -1
  625. package/dist/lib/requests/set_servo_tuning_pid_request.d.ts.map +1 -1
  626. package/dist/lib/requests/set_servo_tuning_pid_request.js +8 -8
  627. package/dist/lib/requests/set_servo_tuning_pid_request.js.map +1 -1
  628. package/dist/lib/requests/set_servo_tuning_request.d.ts.map +1 -1
  629. package/dist/lib/requests/set_servo_tuning_request.js +6 -6
  630. package/dist/lib/requests/set_servo_tuning_request.js.map +1 -1
  631. package/dist/lib/requests/set_simple_tuning.d.ts.map +1 -1
  632. package/dist/lib/requests/set_simple_tuning.js +11 -11
  633. package/dist/lib/requests/set_simple_tuning.js.map +1 -1
  634. package/dist/lib/requests/set_state_request.js +5 -5
  635. package/dist/lib/requests/set_state_request.js.map +1 -1
  636. package/dist/lib/requests/stream_arc_request.d.ts.map +1 -1
  637. package/dist/lib/requests/stream_arc_request.js +8 -8
  638. package/dist/lib/requests/stream_arc_request.js.map +1 -1
  639. package/dist/lib/requests/stream_buffer_erase_request.js +4 -4
  640. package/dist/lib/requests/stream_buffer_erase_request.js.map +1 -1
  641. package/dist/lib/requests/stream_buffer_get_content_request.js +4 -4
  642. package/dist/lib/requests/stream_buffer_get_content_request.js.map +1 -1
  643. package/dist/lib/requests/stream_buffer_get_content_response.js +1 -1
  644. package/dist/lib/requests/stream_buffer_get_content_response.js.map +1 -1
  645. package/dist/lib/requests/stream_buffer_list.js +3 -3
  646. package/dist/lib/requests/stream_buffer_list.js.map +1 -1
  647. package/dist/lib/requests/stream_call_request.js +6 -6
  648. package/dist/lib/requests/stream_call_request.js.map +1 -1
  649. package/dist/lib/requests/stream_cancel_all_outputs_schedule_request.js +6 -6
  650. package/dist/lib/requests/stream_cancel_all_outputs_schedule_request.js.map +1 -1
  651. package/dist/lib/requests/stream_cancel_output_schedule_request.js +6 -6
  652. package/dist/lib/requests/stream_cancel_output_schedule_request.js.map +1 -1
  653. package/dist/lib/requests/stream_circle_request.d.ts.map +1 -1
  654. package/dist/lib/requests/stream_circle_request.js +7 -7
  655. package/dist/lib/requests/stream_circle_request.js.map +1 -1
  656. package/dist/lib/requests/stream_empty_request.js +4 -4
  657. package/dist/lib/requests/stream_empty_request.js.map +1 -1
  658. package/dist/lib/requests/stream_generic_command_batch_request.js +5 -5
  659. package/dist/lib/requests/stream_generic_command_batch_request.js.map +1 -1
  660. package/dist/lib/requests/stream_generic_command_request.js +5 -5
  661. package/dist/lib/requests/stream_generic_command_request.js.map +1 -1
  662. package/dist/lib/requests/stream_get_axes_response.js +2 -2
  663. package/dist/lib/requests/stream_get_axes_response.js.map +1 -1
  664. package/dist/lib/requests/stream_get_max_centripetal_acceleration_request.js +5 -5
  665. package/dist/lib/requests/stream_get_max_centripetal_acceleration_request.js.map +1 -1
  666. package/dist/lib/requests/stream_get_max_speed_request.js +5 -5
  667. package/dist/lib/requests/stream_get_max_speed_request.js.map +1 -1
  668. package/dist/lib/requests/stream_get_max_tangential_acceleration_request.js +5 -5
  669. package/dist/lib/requests/stream_get_max_tangential_acceleration_request.js.map +1 -1
  670. package/dist/lib/requests/stream_line_request.d.ts.map +1 -1
  671. package/dist/lib/requests/stream_line_request.js +7 -7
  672. package/dist/lib/requests/stream_line_request.js.map +1 -1
  673. package/dist/lib/requests/stream_mode_response.d.ts.map +1 -1
  674. package/dist/lib/requests/stream_mode_response.js +2 -2
  675. package/dist/lib/requests/stream_mode_response.js.map +1 -1
  676. package/dist/lib/requests/stream_set_all_analog_outputs_request.js +5 -5
  677. package/dist/lib/requests/stream_set_all_analog_outputs_request.js.map +1 -1
  678. package/dist/lib/requests/stream_set_all_analog_outputs_schedule_request.js +8 -8
  679. package/dist/lib/requests/stream_set_all_analog_outputs_schedule_request.js.map +1 -1
  680. package/dist/lib/requests/stream_set_all_digital_outputs_request.d.ts.map +1 -1
  681. package/dist/lib/requests/stream_set_all_digital_outputs_request.js +5 -5
  682. package/dist/lib/requests/stream_set_all_digital_outputs_request.js.map +1 -1
  683. package/dist/lib/requests/stream_set_all_digital_outputs_schedule_request.d.ts.map +1 -1
  684. package/dist/lib/requests/stream_set_all_digital_outputs_schedule_request.js +8 -8
  685. package/dist/lib/requests/stream_set_all_digital_outputs_schedule_request.js.map +1 -1
  686. package/dist/lib/requests/stream_set_analog_output_request.js +6 -6
  687. package/dist/lib/requests/stream_set_analog_output_request.js.map +1 -1
  688. package/dist/lib/requests/stream_set_analog_output_schedule_request.js +9 -9
  689. package/dist/lib/requests/stream_set_analog_output_schedule_request.js.map +1 -1
  690. package/dist/lib/requests/stream_set_digital_output_request.d.ts.map +1 -1
  691. package/dist/lib/requests/stream_set_digital_output_request.js +6 -6
  692. package/dist/lib/requests/stream_set_digital_output_request.js.map +1 -1
  693. package/dist/lib/requests/stream_set_digital_output_schedule_request.d.ts.map +1 -1
  694. package/dist/lib/requests/stream_set_digital_output_schedule_request.js +9 -9
  695. package/dist/lib/requests/stream_set_digital_output_schedule_request.js.map +1 -1
  696. package/dist/lib/requests/stream_set_hold_request.js +5 -5
  697. package/dist/lib/requests/stream_set_hold_request.js.map +1 -1
  698. package/dist/lib/requests/stream_set_max_centripetal_acceleration_request.js +6 -6
  699. package/dist/lib/requests/stream_set_max_centripetal_acceleration_request.js.map +1 -1
  700. package/dist/lib/requests/stream_set_max_speed_request.js +6 -6
  701. package/dist/lib/requests/stream_set_max_speed_request.js.map +1 -1
  702. package/dist/lib/requests/stream_set_max_tangential_acceleration_request.js +6 -6
  703. package/dist/lib/requests/stream_set_max_tangential_acceleration_request.js.map +1 -1
  704. package/dist/lib/requests/stream_setup_live_composite_request.js +6 -6
  705. package/dist/lib/requests/stream_setup_live_composite_request.js.map +1 -1
  706. package/dist/lib/requests/stream_setup_live_request.js +5 -5
  707. package/dist/lib/requests/stream_setup_live_request.js.map +1 -1
  708. package/dist/lib/requests/stream_setup_store_arbitrary_axes_request.js +7 -7
  709. package/dist/lib/requests/stream_setup_store_arbitrary_axes_request.js.map +1 -1
  710. package/dist/lib/requests/stream_setup_store_composite_request.js +8 -8
  711. package/dist/lib/requests/stream_setup_store_composite_request.js.map +1 -1
  712. package/dist/lib/requests/stream_setup_store_request.js +7 -7
  713. package/dist/lib/requests/stream_setup_store_request.js.map +1 -1
  714. package/dist/lib/requests/stream_wait_analog_input_request.js +7 -7
  715. package/dist/lib/requests/stream_wait_analog_input_request.js.map +1 -1
  716. package/dist/lib/requests/stream_wait_digital_input_request.js +6 -6
  717. package/dist/lib/requests/stream_wait_digital_input_request.js.map +1 -1
  718. package/dist/lib/requests/stream_wait_request.js +6 -6
  719. package/dist/lib/requests/stream_wait_request.js.map +1 -1
  720. package/dist/lib/requests/stream_wait_until_idle_request.js +5 -5
  721. package/dist/lib/requests/stream_wait_until_idle_request.js.map +1 -1
  722. package/dist/lib/requests/string_array_response.js +1 -1
  723. package/dist/lib/requests/string_array_response.js.map +1 -1
  724. package/dist/lib/requests/string_response.js +1 -1
  725. package/dist/lib/requests/string_response.js.map +1 -1
  726. package/dist/lib/requests/test_dto_with_variants.js +2 -2
  727. package/dist/lib/requests/test_dto_with_variants.js.map +1 -1
  728. package/dist/lib/requests/test_event.js +1 -1
  729. package/dist/lib/requests/test_event.js.map +1 -1
  730. package/dist/lib/requests/test_request.js +3 -3
  731. package/dist/lib/requests/test_request.js.map +1 -1
  732. package/dist/lib/requests/test_request_complex.js +1 -1
  733. package/dist/lib/requests/test_request_complex.js.map +1 -1
  734. package/dist/lib/requests/test_response.js +1 -1
  735. package/dist/lib/requests/test_response.js.map +1 -1
  736. package/dist/lib/requests/test_response_long.js +1 -1
  737. package/dist/lib/requests/test_response_long.js.map +1 -1
  738. package/dist/lib/requests/test_variant.d.ts.map +1 -1
  739. package/dist/lib/requests/test_variant.js +1 -1
  740. package/dist/lib/requests/test_variant.js.map +1 -1
  741. package/dist/lib/requests/toggle_device_db_store_request.js +2 -2
  742. package/dist/lib/requests/toggle_device_db_store_request.js.map +1 -1
  743. package/dist/lib/requests/tools_list_serial_ports_response.js +1 -1
  744. package/dist/lib/requests/tools_list_serial_ports_response.js.map +1 -1
  745. package/dist/lib/requests/translator_create_from_device_request.js +4 -4
  746. package/dist/lib/requests/translator_create_from_device_request.js.map +1 -1
  747. package/dist/lib/requests/translator_create_live_request.js +4 -4
  748. package/dist/lib/requests/translator_create_live_request.js.map +1 -1
  749. package/dist/lib/requests/translator_create_request.js +1 -1
  750. package/dist/lib/requests/translator_create_request.js.map +1 -1
  751. package/dist/lib/requests/translator_create_response.js +1 -1
  752. package/dist/lib/requests/translator_create_response.js.map +1 -1
  753. package/dist/lib/requests/translator_empty_request.js +1 -1
  754. package/dist/lib/requests/translator_empty_request.js.map +1 -1
  755. package/dist/lib/requests/translator_flush_live_request.js +2 -2
  756. package/dist/lib/requests/translator_flush_live_request.js.map +1 -1
  757. package/dist/lib/requests/translator_flush_response.js +1 -1
  758. package/dist/lib/requests/translator_flush_response.js.map +1 -1
  759. package/dist/lib/requests/translator_get_axis_offset_request.js +4 -4
  760. package/dist/lib/requests/translator_get_axis_offset_request.js.map +1 -1
  761. package/dist/lib/requests/translator_get_axis_position_request.js +3 -3
  762. package/dist/lib/requests/translator_get_axis_position_request.js.map +1 -1
  763. package/dist/lib/requests/translator_set_axis_position_request.js +4 -4
  764. package/dist/lib/requests/translator_set_axis_position_request.js.map +1 -1
  765. package/dist/lib/requests/translator_set_feed_rate_override_request.js +2 -2
  766. package/dist/lib/requests/translator_set_feed_rate_override_request.js.map +1 -1
  767. package/dist/lib/requests/translator_set_traverse_rate_request.js +3 -3
  768. package/dist/lib/requests/translator_set_traverse_rate_request.js.map +1 -1
  769. package/dist/lib/requests/translator_translate_request.js +2 -2
  770. package/dist/lib/requests/translator_translate_request.js.map +1 -1
  771. package/dist/lib/requests/trigger_clear_action_request.d.ts.map +1 -1
  772. package/dist/lib/requests/trigger_clear_action_request.js +4 -4
  773. package/dist/lib/requests/trigger_clear_action_request.js.map +1 -1
  774. package/dist/lib/requests/trigger_empty_request.js +3 -3
  775. package/dist/lib/requests/trigger_empty_request.js.map +1 -1
  776. package/dist/lib/requests/trigger_enable_request.js +4 -4
  777. package/dist/lib/requests/trigger_enable_request.js.map +1 -1
  778. package/dist/lib/requests/trigger_enabled_states.js +1 -1
  779. package/dist/lib/requests/trigger_enabled_states.js.map +1 -1
  780. package/dist/lib/requests/trigger_fire_at_interval_request.js +5 -5
  781. package/dist/lib/requests/trigger_fire_at_interval_request.js.map +1 -1
  782. package/dist/lib/requests/trigger_fire_when_distance_travelled_request.js +6 -6
  783. package/dist/lib/requests/trigger_fire_when_distance_travelled_request.js.map +1 -1
  784. package/dist/lib/requests/trigger_fire_when_io_request.d.ts.map +1 -1
  785. package/dist/lib/requests/trigger_fire_when_io_request.js +7 -7
  786. package/dist/lib/requests/trigger_fire_when_io_request.js.map +1 -1
  787. package/dist/lib/requests/trigger_fire_when_request.js +4 -4
  788. package/dist/lib/requests/trigger_fire_when_request.js.map +1 -1
  789. package/dist/lib/requests/trigger_fire_when_setting_request.d.ts.map +1 -1
  790. package/dist/lib/requests/trigger_fire_when_setting_request.js +8 -8
  791. package/dist/lib/requests/trigger_fire_when_setting_request.js.map +1 -1
  792. package/dist/lib/requests/trigger_on_fire_request.d.ts.map +1 -1
  793. package/dist/lib/requests/trigger_on_fire_request.js +6 -6
  794. package/dist/lib/requests/trigger_on_fire_request.js.map +1 -1
  795. package/dist/lib/requests/trigger_on_fire_set_request.d.ts.map +1 -1
  796. package/dist/lib/requests/trigger_on_fire_set_request.js +9 -9
  797. package/dist/lib/requests/trigger_on_fire_set_request.js.map +1 -1
  798. package/dist/lib/requests/trigger_on_fire_set_to_setting_request.d.ts.map +1 -1
  799. package/dist/lib/requests/trigger_on_fire_set_to_setting_request.js +9 -9
  800. package/dist/lib/requests/trigger_on_fire_set_to_setting_request.js.map +1 -1
  801. package/dist/lib/requests/trigger_set_label_request.js +4 -4
  802. package/dist/lib/requests/trigger_set_label_request.js.map +1 -1
  803. package/dist/lib/requests/trigger_states.js +1 -1
  804. package/dist/lib/requests/trigger_states.js.map +1 -1
  805. package/dist/lib/requests/unit_convert_native_request.js +3 -3
  806. package/dist/lib/requests/unit_convert_native_request.js.map +1 -1
  807. package/dist/lib/requests/unit_convert_unit_request.js +3 -3
  808. package/dist/lib/requests/unit_convert_unit_request.js.map +1 -1
  809. package/dist/lib/requests/unit_get_enum_request.js +1 -1
  810. package/dist/lib/requests/unit_get_enum_request.js.map +1 -1
  811. package/dist/lib/requests/unit_get_enum_response.js +1 -1
  812. package/dist/lib/requests/unit_get_enum_response.js.map +1 -1
  813. package/dist/lib/requests/unit_get_symbol_request.js +1 -1
  814. package/dist/lib/requests/unit_get_symbol_request.js.map +1 -1
  815. package/dist/lib/requests/unit_get_symbol_response.js +1 -1
  816. package/dist/lib/requests/unit_get_symbol_response.js.map +1 -1
  817. package/dist/lib/requests/unknown_binary_response_event_wrapper.js +2 -2
  818. package/dist/lib/requests/unknown_binary_response_event_wrapper.js.map +1 -1
  819. package/dist/lib/requests/unknown_response_event_wrapper.js +2 -2
  820. package/dist/lib/requests/unknown_response_event_wrapper.js.map +1 -1
  821. package/dist/lib/requests/wait_to_clear_warnings_request.js +5 -5
  822. package/dist/lib/requests/wait_to_clear_warnings_request.js.map +1 -1
  823. package/dist/lib/requests/wait_to_respond_request.js +3 -3
  824. package/dist/lib/requests/wait_to_respond_request.js.map +1 -1
  825. package/dist/lib/requests/wdi_generic_float_request.js +6 -6
  826. package/dist/lib/requests/wdi_generic_float_request.js.map +1 -1
  827. package/dist/lib/requests/wdi_generic_request.js +7 -7
  828. package/dist/lib/requests/wdi_generic_request.js.map +1 -1
  829. package/dist/lib/rotation_direction.d.ts +4 -4
  830. package/dist/lib/rotation_direction.d.ts.map +1 -1
  831. package/dist/lib/rotation_direction.js +4 -4
  832. package/dist/lib/rotation_direction.js.map +1 -1
  833. package/dist/lib/tools.d.ts +23 -0
  834. package/dist/lib/tools.d.ts.map +1 -1
  835. package/dist/lib/tools.js +20 -0
  836. package/dist/lib/tools.js.map +1 -1
  837. package/dist/lib/unit_conversion_descriptor.js +4 -4
  838. package/dist/lib/unit_conversion_descriptor.js.map +1 -1
  839. package/package.json +2 -3
  840. package/dist/lib/ascii/cyclic_direction.d.ts.map +0 -1
  841. package/dist/lib/ascii/cyclic_direction.js.map +0 -1
  842. /package/dist/lib/{ascii/cyclic_direction.d.ts → cyclic_direction.d.ts} +0 -0
  843. /package/dist/lib/{ascii/cyclic_direction.js → cyclic_direction.js} +0 -0
@@ -7,15 +7,15 @@ exports.isAxisType = exports.AxisType = void 0;
7
7
  */
8
8
  var AxisType;
9
9
  (function (AxisType) {
10
- /** Unknown */
10
+ /** Axis type could not be determined. */
11
11
  AxisType[AxisType["UNKNOWN"] = 0] = "UNKNOWN";
12
- /** Linear */
12
+ /** A linear axis that accepts length units for position. */
13
13
  AxisType[AxisType["LINEAR"] = 1] = "LINEAR";
14
- /** Rotary */
14
+ /** A rotary axis that accepts angle units for position. */
15
15
  AxisType[AxisType["ROTARY"] = 2] = "ROTARY";
16
- /** Process */
16
+ /** A process on a process controller. */
17
17
  AxisType[AxisType["PROCESS"] = 3] = "PROCESS";
18
- /** Lamp */
18
+ /** A lamp on a light source controller. */
19
19
  AxisType[AxisType["LAMP"] = 4] = "LAMP";
20
20
  })(AxisType || (exports.AxisType = AxisType = {}));
21
21
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"axis_type.js","sourceRoot":"","sources":["../../../src/ascii/axis_type.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD;;GAEG;AACH,IAAY,QAWX;AAXD,WAAY,QAAQ;IAClB,cAAc;IACd,6CAAW,CAAA;IACX,aAAa;IACb,2CAAU,CAAA;IACV,aAAa;IACb,2CAAU,CAAA;IACV,cAAc;IACd,6CAAW,CAAA;IACX,WAAW;IACX,uCAAQ,CAAA;AACV,CAAC,EAXW,QAAQ,wBAAR,QAAQ,QAWnB;AAED;;;GAGG;AACH,SAAgB,UAAU,CAAC,KAAU;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAiB,CAAC,CAAC;AAC7D,CAAC;AAFD,gCAEC","sourcesContent":["/* This file is generated. Do not modify by hand. */\n/**\n * Denotes type of an axis and units it accepts.\n */\nexport enum AxisType {\n /** Unknown */\n UNKNOWN = 0,\n /** Linear */\n LINEAR = 1,\n /** Rotary */\n ROTARY = 2,\n /** Process */\n PROCESS = 3,\n /** Lamp */\n LAMP = 4,\n}\n\n/**\n * Type guard for AxisType.\n * This only checks if the value is one of the enum keys; it could create a false positive if two enums have the same key.\n */\nexport function isAxisType(value: any): value is AxisType {\n return Object.values(AxisType).includes(value as AxisType);\n}\n"]}
1
+ {"version":3,"file":"axis_type.js","sourceRoot":"","sources":["../../../src/ascii/axis_type.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD;;GAEG;AACH,IAAY,QAWX;AAXD,WAAY,QAAQ;IAClB,yCAAyC;IACzC,6CAAW,CAAA;IACX,4DAA4D;IAC5D,2CAAU,CAAA;IACV,2DAA2D;IAC3D,2CAAU,CAAA;IACV,yCAAyC;IACzC,6CAAW,CAAA;IACX,2CAA2C;IAC3C,uCAAQ,CAAA;AACV,CAAC,EAXW,QAAQ,wBAAR,QAAQ,QAWnB;AAED;;;GAGG;AACH,SAAgB,UAAU,CAAC,KAAU;IACnC,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,KAAiB,CAAC,CAAC;AAC7D,CAAC;AAFD,gCAEC","sourcesContent":["/* This file is generated. Do not modify by hand. */\n/**\n * Denotes type of an axis and units it accepts.\n */\nexport enum AxisType {\n /** Axis type could not be determined. */\n UNKNOWN = 0,\n /** A linear axis that accepts length units for position. */\n LINEAR = 1,\n /** A rotary axis that accepts angle units for position. */\n ROTARY = 2,\n /** A process on a process controller. */\n PROCESS = 3,\n /** A lamp on a light source controller. */\n LAMP = 4,\n}\n\n/**\n * Type guard for AxisType.\n * This only checks if the value is one of the enum keys; it could create a false positive if two enums have the same key.\n */\nexport function isAxisType(value: any): value is AxisType {\n return Object.values(AxisType).includes(value as AxisType);\n}\n"]}
@@ -31,8 +31,8 @@ exports.CanSetStateAxisResponse = {
31
31
  const castValue = value;
32
32
  return (value != null &&
33
33
  typeof value === 'object' &&
34
- castValue.error == null || typeof castValue.error === typeof exports.CanSetStateAxisResponse.DEFAULT.error &&
35
- typeof castValue.axisNumber === typeof exports.CanSetStateAxisResponse.DEFAULT.axisNumber);
34
+ (castValue.error == null || sanitizer_1.sanitizer.isString(castValue.error)) &&
35
+ sanitizer_1.sanitizer.isInt(castValue.axisNumber));
36
36
  },
37
37
  };
38
38
  //# sourceMappingURL=can_set_state_axis_response.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"can_set_state_axis_response.js","sourceRoot":"","sources":["../../../src/ascii/can_set_state_axis_response.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AAkBpC,QAAA,uBAAuB,GAAG;IACrC,UAAU,EAAE,CAAC,MAAkB,EAA2B,EAAE,CAAC,+BAAuB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7I,QAAQ,EAAE,CAAC,KAA8B,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,+BAAuB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEjH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC;KACd,CAAsC;IAEvC,QAAQ,EAAE,CAAC,KAA8B,EAA2B,EAAE;QACpE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAA;QAAC,CAAC;QAChH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,mDAAmD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC1H,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YAClF,UAAU,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC;SAClE,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAA2B,EAAE,CAAC,CAAC;QAC3D,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAAoC,EAAE;QACpD,MAAM,SAAS,GAAG,KAAgC,CAAC;QACnD,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,KAAK,KAAK,OAAO,+BAAuB,CAAC,OAAO,CAAC,KAAK;YAClG,OAAO,SAAS,CAAC,UAAU,KAAK,OAAO,+BAAuB,CAAC,OAAO,CAAC,UAAU,CAClF,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\n\n/**\n * An object containing any setup issues that will prevent setting a state to a given axis.\n */\nexport interface CanSetStateAxisResponse {\n /**\n * The error blocking applying this state to the given axis, or null if there is no error.\n */\n error?: (string | null);\n\n /**\n * The number of the axis that cannot be set.\n */\n axisNumber: number;\n\n}\n\nexport const CanSetStateAxisResponse = {\n fromBinary: (buffer: Uint8Array): CanSetStateAxisResponse => CanSetStateAxisResponse.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: CanSetStateAxisResponse): Uint8Array => BSON.serialize(CanSetStateAxisResponse.sanitize(value)),\n\n DEFAULT: Object.freeze({\n error: null,\n axisNumber: 0,\n }) as Readonly<CanSetStateAxisResponse>,\n\n sanitize: (value: CanSetStateAxisResponse): CanSetStateAxisResponse => {\n if (value == null) { throw new TypeError('Expected CanSetStateAxisResponse object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected CanSetStateAxisResponse object but got ${typeof value}.`) }\n return {\n error: value.error != null ? sanitizer.sanitizeString(value.error, 'error') : null,\n axisNumber: sanitizer.sanitizeInt(value.axisNumber, 'axisNumber'),\n };\n },\n\n convert: (value: BSON.Document): CanSetStateAxisResponse => ({\n error: value.error,\n axisNumber: value.axisNumber,\n }),\n\n isA: (value: any): value is CanSetStateAxisResponse => {\n const castValue = value as CanSetStateAxisResponse;\n return (\n value != null &&\n typeof value === 'object' &&\n castValue.error == null || typeof castValue.error === typeof CanSetStateAxisResponse.DEFAULT.error &&\n typeof castValue.axisNumber === typeof CanSetStateAxisResponse.DEFAULT.axisNumber\n );\n },\n};\n"]}
1
+ {"version":3,"file":"can_set_state_axis_response.js","sourceRoot":"","sources":["../../../src/ascii/can_set_state_axis_response.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AAkBpC,QAAA,uBAAuB,GAAG;IACrC,UAAU,EAAE,CAAC,MAAkB,EAA2B,EAAE,CAAC,+BAAuB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7I,QAAQ,EAAE,CAAC,KAA8B,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,+BAAuB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEjH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,KAAK,EAAE,IAAI;QACX,UAAU,EAAE,CAAC;KACd,CAAsC;IAEvC,QAAQ,EAAE,CAAC,KAA8B,EAA2B,EAAE;QACpE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,oEAAoE,CAAC,CAAA;QAAC,CAAC;QAChH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,mDAAmD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC1H,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YAClF,UAAU,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC;SAClE,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAA2B,EAAE,CAAC,CAAC;QAC3D,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAAoC,EAAE;QACpD,MAAM,SAAS,GAAG,KAAgC,CAAC;QACnD,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,qBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAChE,qBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CACtC,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\n\n/**\n * An object containing any setup issues that will prevent setting a state to a given axis.\n */\nexport interface CanSetStateAxisResponse {\n /**\n * The error blocking applying this state to the given axis, or null if there is no error.\n */\n error?: (string | null);\n\n /**\n * The number of the axis that cannot be set.\n */\n axisNumber: number;\n\n}\n\nexport const CanSetStateAxisResponse = {\n fromBinary: (buffer: Uint8Array): CanSetStateAxisResponse => CanSetStateAxisResponse.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: CanSetStateAxisResponse): Uint8Array => BSON.serialize(CanSetStateAxisResponse.sanitize(value)),\n\n DEFAULT: Object.freeze({\n error: null,\n axisNumber: 0,\n }) as Readonly<CanSetStateAxisResponse>,\n\n sanitize: (value: CanSetStateAxisResponse): CanSetStateAxisResponse => {\n if (value == null) { throw new TypeError('Expected CanSetStateAxisResponse object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected CanSetStateAxisResponse object but got ${typeof value}.`) }\n return {\n error: value.error != null ? sanitizer.sanitizeString(value.error, 'error') : null,\n axisNumber: sanitizer.sanitizeInt(value.axisNumber, 'axisNumber'),\n };\n },\n\n convert: (value: BSON.Document): CanSetStateAxisResponse => ({\n error: value.error,\n axisNumber: value.axisNumber,\n }),\n\n isA: (value: any): value is CanSetStateAxisResponse => {\n const castValue = value as CanSetStateAxisResponse;\n return (\n value != null &&\n typeof value === 'object' &&\n (castValue.error == null || sanitizer.isString(castValue.error)) &&\n sanitizer.isInt(castValue.axisNumber)\n );\n },\n};\n"]}
@@ -32,8 +32,8 @@ exports.CanSetStateDeviceResponse = {
32
32
  const castValue = value;
33
33
  return (value != null &&
34
34
  typeof value === 'object' &&
35
- castValue.error == null || typeof castValue.error === typeof exports.CanSetStateDeviceResponse.DEFAULT.error &&
36
- castValue.axisResponses.every(val => can_set_state_axis_response_1.CanSetStateAxisResponse.isA(val)));
35
+ (castValue.error == null || sanitizer_1.sanitizer.isString(castValue.error)) &&
36
+ castValue.axisResponses.every(item => can_set_state_axis_response_1.CanSetStateAxisResponse.isA(item)));
37
37
  },
38
38
  };
39
39
  //# sourceMappingURL=can_set_state_device_response.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"can_set_state_device_response.js","sourceRoot":"","sources":["../../../src/ascii/can_set_state_device_response.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AACjD,sFAA+E;AAmBlE,QAAA,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,MAAkB,EAA6B,EAAE,CAAC,iCAAyB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjJ,QAAQ,EAAE,CAAC,KAAgC,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,iCAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAErH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,KAAK,EAAE,IAAI;QACX,aAAa,EAAE,EAAE;KAClB,CAAwC;IAEzC,QAAQ,EAAE,CAAC,KAAgC,EAA6B,EAAE;QACxE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,sEAAsE,CAAC,CAAA;QAAC,CAAC;QAClH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,qDAAqD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC5H,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YAClF,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,qDAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SACrG,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAA6B,EAAE,CAAC,CAAC;QAC7D,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAAsC,EAAE;QACtD,MAAM,SAAS,GAAG,KAAkC,CAAC;QACrD,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,OAAO,SAAS,CAAC,KAAK,KAAK,OAAO,iCAAyB,CAAC,OAAO,CAAC,KAAK;YACpG,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,qDAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CACvE,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { CanSetStateAxisResponse } from '../ascii/can_set_state_axis_response';\n\n/**\n * An object containing any setup issues that will prevent setting a state to a given device.\n */\nexport interface CanSetStateDeviceResponse {\n /**\n * The error blocking applying this state to the given device, or null if there is no error.\n */\n error?: (string | null);\n\n /**\n * A list of axis responses, potentially with messages for errors\n * which would block setting the state of the device's axes.\n */\n axisResponses: CanSetStateAxisResponse[];\n\n}\n\nexport const CanSetStateDeviceResponse = {\n fromBinary: (buffer: Uint8Array): CanSetStateDeviceResponse => CanSetStateDeviceResponse.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: CanSetStateDeviceResponse): Uint8Array => BSON.serialize(CanSetStateDeviceResponse.sanitize(value)),\n\n DEFAULT: Object.freeze({\n error: null,\n axisResponses: [],\n }) as Readonly<CanSetStateDeviceResponse>,\n\n sanitize: (value: CanSetStateDeviceResponse): CanSetStateDeviceResponse => {\n if (value == null) { throw new TypeError('Expected CanSetStateDeviceResponse object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected CanSetStateDeviceResponse object but got ${typeof value}.`) }\n return {\n error: value.error != null ? sanitizer.sanitizeString(value.error, 'error') : null,\n axisResponses: Array.from(value.axisResponses ?? [], item => CanSetStateAxisResponse.sanitize(item)),\n };\n },\n\n convert: (value: BSON.Document): CanSetStateDeviceResponse => ({\n error: value.error,\n axisResponses: value.axisResponses,\n }),\n\n isA: (value: any): value is CanSetStateDeviceResponse => {\n const castValue = value as CanSetStateDeviceResponse;\n return (\n value != null &&\n typeof value === 'object' &&\n castValue.error == null || typeof castValue.error === typeof CanSetStateDeviceResponse.DEFAULT.error &&\n castValue.axisResponses.every(val => CanSetStateAxisResponse.isA(val))\n );\n },\n};\n"]}
1
+ {"version":3,"file":"can_set_state_device_response.js","sourceRoot":"","sources":["../../../src/ascii/can_set_state_device_response.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AACjD,sFAA+E;AAmBlE,QAAA,yBAAyB,GAAG;IACvC,UAAU,EAAE,CAAC,MAAkB,EAA6B,EAAE,CAAC,iCAAyB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjJ,QAAQ,EAAE,CAAC,KAAgC,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,iCAAyB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAErH,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,KAAK,EAAE,IAAI;QACX,aAAa,EAAE,EAAE;KAClB,CAAwC;IAEzC,QAAQ,EAAE,CAAC,KAAgC,EAA6B,EAAE;QACxE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,sEAAsE,CAAC,CAAA;QAAC,CAAC;QAClH,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,qDAAqD,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC5H,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YAClF,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,qDAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SACrG,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAA6B,EAAE,CAAC,CAAC;QAC7D,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAAsC,EAAE;QACtD,MAAM,SAAS,GAAG,KAAkC,CAAC;QACrD,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,CAAC,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,qBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAChE,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,qDAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CACzE,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { CanSetStateAxisResponse } from '../ascii/can_set_state_axis_response';\n\n/**\n * An object containing any setup issues that will prevent setting a state to a given device.\n */\nexport interface CanSetStateDeviceResponse {\n /**\n * The error blocking applying this state to the given device, or null if there is no error.\n */\n error?: (string | null);\n\n /**\n * A list of axis responses, potentially with messages for errors\n * which would block setting the state of the device's axes.\n */\n axisResponses: CanSetStateAxisResponse[];\n\n}\n\nexport const CanSetStateDeviceResponse = {\n fromBinary: (buffer: Uint8Array): CanSetStateDeviceResponse => CanSetStateDeviceResponse.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: CanSetStateDeviceResponse): Uint8Array => BSON.serialize(CanSetStateDeviceResponse.sanitize(value)),\n\n DEFAULT: Object.freeze({\n error: null,\n axisResponses: [],\n }) as Readonly<CanSetStateDeviceResponse>,\n\n sanitize: (value: CanSetStateDeviceResponse): CanSetStateDeviceResponse => {\n if (value == null) { throw new TypeError('Expected CanSetStateDeviceResponse object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected CanSetStateDeviceResponse object but got ${typeof value}.`) }\n return {\n error: value.error != null ? sanitizer.sanitizeString(value.error, 'error') : null,\n axisResponses: Array.from(value.axisResponses ?? [], item => CanSetStateAxisResponse.sanitize(item)),\n };\n },\n\n convert: (value: BSON.Document): CanSetStateDeviceResponse => ({\n error: value.error,\n axisResponses: value.axisResponses,\n }),\n\n isA: (value: any): value is CanSetStateDeviceResponse => {\n const castValue = value as CanSetStateDeviceResponse;\n return (\n value != null &&\n typeof value === 'object' &&\n (castValue.error == null || sanitizer.isString(castValue.error)) &&\n castValue.axisResponses.every(item => CanSetStateAxisResponse.isA(item))\n );\n },\n};\n"]}
@@ -5,6 +5,7 @@ import { Response } from './response';
5
5
  import { UnknownResponseEvent } from './unknown_response_event';
6
6
  import { AlertEvent } from './alert_event';
7
7
  import { MotionLibException } from '../exceptions';
8
+ import { MockDevice } from './mock_device';
8
9
  /**
9
10
  * Class representing access to particular connection (serial port, TCP connection).
10
11
  */
@@ -67,6 +68,8 @@ export declare class Connection {
67
68
  * @param [options.baudRate=Connection.DEFAULT_BAUD_RATE] Optional baud rate (defaults to 115200).
68
69
  * @param [options.direct=false] If true will connect to the serial port directly,
69
70
  * failing if the connection is already opened by a message router instance.
71
+ * @param [options.testPort=false] Some operating systems may allow opening a serial port that is not writable.
72
+ * Tests if the serial port is writable, and throws an exception if it is not.
70
73
  * @returns An object representing the port.
71
74
  */
72
75
  static openSerialPort(portName: string, options?: Connection.OpenSerialPortOptions): Promise<Connection>;
@@ -108,6 +111,13 @@ export declare class Connection {
108
111
  * @returns An object representing the connection.
109
112
  */
110
113
  static openNetworkShare(hostName: string, port?: number, connectionName?: string): Promise<Connection>;
114
+ /**
115
+ * Opens a mock connection with mock devices for testing purposes.
116
+ * The mock connection cannot be used for communication with mock devices.
117
+ * @param devices List of mock devices.
118
+ * @returns An object representing the mock connection.
119
+ */
120
+ static openMock(devices: MockDevice[]): Promise<Connection>;
111
121
  /**
112
122
  * Reopens the connection.
113
123
  * To continue using events on the connection, you must resubscribe to event observables.
@@ -267,6 +277,11 @@ declare namespace Connection {
267
277
  * failing if the connection is already opened by a message router instance.
268
278
  */
269
279
  direct?: boolean;
280
+ /**
281
+ * Some operating systems may allow opening a serial port that is not writable.
282
+ * Tests if the serial port is writable, and throws an exception if it is not.
283
+ */
284
+ testPort?: boolean;
270
285
  }
271
286
  interface OpenIotOptions {
272
287
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/ascii/connection.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAiB,MAAM,MAAM,CAAC;AAKjD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAGnD;;GAEG;AACH,qBAAa,UAAU;IACrB;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAE1D;;OAEG;IACI,KAAK,EAAG,UAAU,CAAC,UAAU,CAAC,CAAC;IAEtC;;OAEG;IACH,gBAAuB,iBAAiB,EAAE,MAAM,CAAU;IAE1D;;;OAGG;IACH,gBAAuB,cAAc,EAAE,MAAM,CAAS;IAEtD;;OAEG;IACH,gBAAuB,kBAAkB,EAAE,MAAM,CAAS;IAE1D;;;;OAIG;IACH,gBAAuB,oBAAoB,EAAE,MAAM,CAAS;IAE5D;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;IACD,OAAO,CAAC,YAAY,CAAS;IAE7B;;;;OAIG;IACH,IAAW,qBAAqB,IAAI,MAAM,CAEzC;IAED,IAAW,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAE7C;IAED;;OAEG;IACH,IAAW,eAAe,IAAI,OAAO,CAEpC;IAED,IAAW,eAAe,CAAC,KAAK,EAAE,OAAO,EAExC;IAED;;;OAGG;IACH,IAAW,MAAM,IAAI,OAAO,CAE3B;gBAEW,WAAW,EAAE,MAAM;IAM/B;;;;;;;;;OASG;WACiB,cAAc,CAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,UAAU,CAAC,qBAA0B,GAC7C,OAAO,CAAC,UAAU,CAAC;IAuBtB;;;;;OAKG;WACiB,OAAO,CACzB,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,MAAkC,GACvC,OAAO,CAAC,UAAU,CAAC;IAkBtB;;;;OAIG;WACiB,UAAU,CAC5B,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,UAAU,CAAC;IAiBtB;;;;;;;;;;;;OAYG;WACiB,OAAO,CACzB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,UAAU,CAAC,cAAmB,GACtC,OAAO,CAAC,UAAU,CAAC;IA2BtB;;;;;;;;;OASG;WACiB,gBAAgB,CAClC,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE,MAAsC,EAC5C,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,UAAU,CAAC;IAmBtB;;;;OAIG;IACU,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBpC;;;;;;;;;;OAUG;IACU,cAAc,CACzB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,UAAU,CAAC,qBAA0B,GAC7C,OAAO,CAAC,QAAQ,CAAC;IA2BpB;;;;;;;;OAQG;IACU,wBAAwB,CACnC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,UAAU,CAAC,+BAAoC,GACvD,OAAO,CAAC,IAAI,CAAC;IAmBhB;;;;;;;;;;;;OAYG;IACU,2BAA2B,CACtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,UAAU,CAAC,kCAAuC,GAC1D,OAAO,CAAC,QAAQ,EAAE,CAAC;IA2BtB;;;OAGG;IACU,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAa1C;;;OAGG;IACU,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAa3C;;OAEG;IACI,QAAQ,IAAI,IAAI;IAYvB;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYnC;;;;;OAKG;IACI,SAAS,CACd,aAAa,EAAE,MAAM,GACpB,MAAM;IAOT;;;;;OAKG;IACU,eAAe,CAC1B,OAAO,GAAE,UAAU,CAAC,sBAA2B,GAC9C,OAAO,CAAC,MAAM,CAAC;IAuBlB;;;;OAIG;IACU,aAAa,CACxB,OAAO,GAAE,UAAU,CAAC,oBAAyB,GAC5C,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBpB;;;;OAIG;IACI,aAAa,CAClB,aAAa,GAAE,MAAM,EAAO,GAC3B,IAAI;IAaP;;;;;OAKG;IACU,OAAO,CAClB,OAAO,GAAE,UAAU,CAAC,cAAmB,GACtC,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBpB;;;;;OAKG;IACU,OAAO,CAClB,OAAO,GAAE,UAAU,CAAC,cAAmB,GACtC,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBpB;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAgBzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgBxB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAetB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAgBhC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAe9B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAgBvB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,KAAK;IAcpB,OAAO,CAAC,aAAa,CAAqC;IAE1D;;OAEG;IACH,IAAW,YAAY,IAAI,UAAU,CAAC,kBAAkB,CAAC,CAExD;IAED,OAAO,CAAC,UAAU;IA4BlB;;;;OAIG;IACI,IAAI,IAAI,IAAI;CAGpB;AAED,kBAAU,UAAU,CAAC;IACnB,UAAiB,qBAAqB;QAClC;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB;;;WAGG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;KACpB;IACD,UAAiB,cAAc;QAC3B;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf;;;;WAIG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB;;;WAGG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QACf;;WAEG;QACH,GAAG,CAAC,EAAE,MAAM,CAAC;KAChB;IACD,UAAiB,qBAAqB;QAClC;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QACd;;WAEG;QACH,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB;IACD,UAAiB,+BAA+B;QAC5C;;;WAGG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;;WAGG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;KACjB;IACD,UAAiB,kCAAkC;QAC/C;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QACd;;WAEG;QACH,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB;IACD,UAAiB,sBAAsB;QACnC;;;WAGG;QACH,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB;IACD,UAAiB,oBAAoB;QACjC;;WAEG;QACH,eAAe,CAAC,EAAE,OAAO,CAAC;KAC7B;IACD,UAAiB,cAAc;QAC3B;;;WAGG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;KAC3B;IACD,UAAiB,cAAc;QAC3B;;;WAGG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;KAC3B;CACF"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../src/ascii/connection.ts"],"names":[],"mappings":"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"}
@@ -84,16 +84,19 @@ class Connection {
84
84
  * @param [options.baudRate=Connection.DEFAULT_BAUD_RATE] Optional baud rate (defaults to 115200).
85
85
  * @param [options.direct=false] If true will connect to the serial port directly,
86
86
  * failing if the connection is already opened by a message router instance.
87
+ * @param [options.testPort=false] Some operating systems may allow opening a serial port that is not writable.
88
+ * Tests if the serial port is writable, and throws an exception if it is not.
87
89
  * @returns An object representing the port.
88
90
  */
89
91
  static async openSerialPort(portName, options = {}) {
90
- const { baudRate = Connection.DEFAULT_BAUD_RATE, direct = false, } = options;
92
+ const { baudRate = Connection.DEFAULT_BAUD_RATE, direct = false, testPort = false, } = options;
91
93
  const request = {
92
94
  ...requests.OpenInterfaceRequest.DEFAULT,
93
95
  interfaceType: requests.InterfaceType.SERIAL_PORT,
94
96
  portName: portName,
95
97
  baudRate: baudRate,
96
98
  rejectRoutedConnection: direct,
99
+ testPort: testPort,
97
100
  toBinary() {
98
101
  return requests.OpenInterfaceRequest.toBinary(this);
99
102
  },
@@ -191,6 +194,24 @@ class Connection {
191
194
  const response = await gateway.callAsync('interface/open', request, requests.OpenInterfaceResponse.fromBinary);
192
195
  return new Connection(response.interfaceId);
193
196
  }
197
+ /**
198
+ * Opens a mock connection with mock devices for testing purposes.
199
+ * The mock connection cannot be used for communication with mock devices.
200
+ * @param devices List of mock devices.
201
+ * @returns An object representing the mock connection.
202
+ */
203
+ static async openMock(devices) {
204
+ const request = {
205
+ ...requests.OpenInterfaceRequest.DEFAULT,
206
+ interfaceType: requests.InterfaceType.MOCK,
207
+ mockDevices: devices,
208
+ toBinary() {
209
+ return requests.OpenInterfaceRequest.toBinary(this);
210
+ },
211
+ };
212
+ const response = await gateway.callAsync('interface/open', request, requests.OpenInterfaceResponse.fromBinary);
213
+ return new Connection(response.interfaceId);
214
+ }
194
215
  /**
195
216
  * Reopens the connection.
196
217
  * To continue using events on the connection, you must resubscribe to event observables.
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/ascii/connection.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtD,+BAAiD;AACjD,8CAA8D;AAC9D,oDAAsC;AACtC,wCAAiD;AACjD,sDAAwC;AAExC,qCAAkC;AAClC,yCAAsC;AAItC,4CAAuD;AAEvD;;GAEG;AACH,MAAa,UAAU;IAkCrB;;OAEG;IACH,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAGD;;;;OAIG;IACH,IAAW,qBAAqB;QAC9B,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACjC,CAAC;IAED,IAAW,qBAAqB,CAAC,KAAa;QAC5C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACzC,CAAC;IAED,IAAW,eAAe,CAAC,KAAc;QACvC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED;;;OAGG;IACH,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED,YAAY,WAAmB;QAC7B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAA,mCAAuB,EAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,cAAc,CAChC,QAAgB,EAChB,UAA4C,EAAE;QAE9C,MAAM,EACJ,QAAQ,GAAG,UAAU,CAAC,iBAAiB,EACvC,MAAM,GAAG,KAAK,GACf,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAoD;YAC/D,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO;YACxC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,WAAW;YACjD,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE,QAAQ;YAClB,sBAAsB,EAAE,MAAM;YAC9B,QAAQ;gBACN,OAAO,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,gBAAgB,EAChB,OAAO,EACP,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,OAAO,CACzB,QAAgB,EAChB,OAAe,UAAU,CAAC,cAAc;QAExC,MAAM,OAAO,GAAoD;YAC/D,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO;YACxC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG;YACzC,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,gBAAgB,EAChB,OAAO,EACP,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU,CAC5B,SAAoB;QAEpB,MAAM,OAAO,GAAoD;YAC/D,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO;YACxC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,MAAM;YAC5C,SAAS,EAAE,SAAS,CAAC,WAAW;YAChC,QAAQ;gBACN,OAAO,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,gBAAgB,EAChB,OAAO,EACP,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,KAAK,CAAC,OAAO,CACzB,OAAe,EACf,UAAqC,EAAE;QAEvC,MAAM,EACJ,KAAK,GAAG,iBAAiB,EACzB,cAAc,EACd,KAAK,EACL,GAAG,GAAG,sBAAsB,GAC7B,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAoD;YAC/D,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO;YACxC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,GAAG;YACzC,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;YACZ,cAAc,EAAE,cAAc;YAC9B,KAAK,EAAE,KAAK;YACZ,GAAG,EAAE,GAAG;YACR,QAAQ;gBACN,OAAO,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,gBAAgB,EAChB,OAAO,EACP,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;OASG;IACI,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAClC,QAAgB,EAChB,OAAe,UAAU,CAAC,kBAAkB,EAC5C,cAAuB;QAEvB,MAAM,OAAO,GAAoD;YAC/D,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO;YACxC,aAAa,EAAE,QAAQ,CAAC,aAAa,CAAC,aAAa;YACnD,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,IAAI;YACV,cAAc,EAAE,cAAc;YAC9B,QAAQ;gBACN,OAAO,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,gBAAgB,EAChB,OAAO,EACP,QAAQ,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,MAAM;QACjB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,kBAAkB,EAClB,OAAO,EACP,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,cAAc,CACzB,OAAe,EACf,UAA4C,EAAE;QAE9C,MAAM,EACJ,MAAM,GAAG,CAAC,EACV,IAAI,GAAG,CAAC,EACR,WAAW,GAAG,IAAI,EAClB,OAAO,GAAG,CAAC,GACZ,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,OAAO;YAChB,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,2BAA2B,EAC3B,OAAO,EACP,mBAAQ,CAAC,UAAU,CAAC,CAAC;QACvB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,wBAAwB,CACnC,OAAe,EACf,UAAsD,EAAE;QAExD,MAAM,EACJ,MAAM,GAAG,CAAC,EACV,IAAI,GAAG,CAAC,GACT,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,2BAA2B,CACtC,OAAe,EACf,UAAyD,EAAE;QAE3D,MAAM,EACJ,MAAM,GAAG,CAAC,EACV,IAAI,GAAG,CAAC,EACR,WAAW,GAAG,IAAI,EAClB,OAAO,GAAG,CAAC,GACZ,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,OAAO;YAChB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,WAAW;YACxB,OAAO,EAAE,OAAO;YAChB,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,0CAA0C,EAC1C,OAAO,EACP,QAAQ,CAAC,gCAAgC,CAAC,UAAU,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC,SAAS,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,YAAY;QACvB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,kBAAkB;YAC3B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,aAAa;QACxB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,kBAAkB;YAC3B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACI,QAAQ;QACb,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,KAAK;QAChB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,OAAO,CAAC,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED;;;;;OAKG;IACI,SAAS,CACd,aAAqB;QAErB,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC9E,CAAC;QACD,OAAO,IAAI,eAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,eAAe,CAC1B,UAA6C,EAAE;QAE/C,MAAM,EACJ,YAAY,GAAG,CAAC,GACjB,GAAG,OAAO,CAAC;QACZ,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,OAAO,GAA+C;YAC1D,GAAG,QAAQ,CAAC,eAAe,CAAC,OAAO;YACnC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,YAAY;YACrB,QAAQ;gBACN,OAAO,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACjD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,qBAAqB,EACrB,OAAO,EACP,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,aAAa,CACxB,UAA2C,EAAE;QAE7C,MAAM,EACJ,eAAe,GAAG,IAAI,GACvB,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAmD;YAC9D,GAAG,QAAQ,CAAC,mBAAmB,CAAC,OAAO;YACvC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,eAAe,EAAE,eAAe;YAChC,QAAQ;gBACN,OAAO,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CACtC,eAAe,EACf,OAAO,EACP,QAAQ,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC5C,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACI,aAAa,CAClB,gBAA0B,EAAE;QAE5B,MAAM,OAAO,GAAoD;YAC/D,GAAG,QAAQ,CAAC,oBAAoB,CAAC,OAAO;YACxC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,aAAa;YAC5B,QAAQ;gBACN,OAAO,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtD,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAClB,UAAqC,EAAE;QAEvC,MAAM,EACJ,aAAa,GAAG,IAAI,GACrB,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,aAAa;YAC5B,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,iBAAiB,EACjB,OAAO,EACP,QAAQ,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC,eAAe,CAAC;IAClC,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAClB,UAAqC,EAAE;QAEvC,MAAM,EACJ,aAAa,GAAG,IAAI,GACrB,GAAG,OAAO,CAAC;QACZ,MAAM,OAAO,GAAkD;YAC7D,GAAG,QAAQ,CAAC,kBAAkB,CAAC,OAAO;YACtC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,aAAa;YAC5B,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,iBAAiB,EACjB,OAAO,EACP,QAAQ,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC,eAAe,CAAC;IAClC,CAAC;IAED;;;OAGG;IACI,QAAQ;QACb,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,qBAAqB,EACrB,OAAO,EACP,QAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;OAGG;IACK,gBAAgB;QACtB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,uBAAuB,EACvB,OAAO,EACP,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;OAGG;IACK,cAAc,CACpB,OAAe;QAEf,MAAM,OAAO,GAA0D;YACrE,GAAG,QAAQ,CAAC,0BAA0B,CAAC,OAAO;YAC9C,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,OAAO;YAChB,QAAQ;gBACN,OAAO,QAAQ,CAAC,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5D,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACK,wBAAwB;QAC9B,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,gCAAgC,EAChC,OAAO,EACP,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;OAGG;IACK,sBAAsB,CAC5B,SAAkB;QAElB,MAAM,OAAO,GAAkE;YAC7E,GAAG,QAAQ,CAAC,kCAAkC,CAAC,OAAO;YACtD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,SAAS;YACpB,QAAQ;gBACN,OAAO,QAAQ,CAAC,kCAAkC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpE,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,gCAAgC,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACK,eAAe;QACrB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAC/B,uBAAuB,EACvB,OAAO,EACP,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACpC,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,KAAK,CAClB,WAAmB;QAEnB,MAAM,OAAO,GAAqD;YAChE,GAAG,QAAQ,CAAC,qBAAqB,CAAC,OAAO;YACzC,WAAW,EAAE,WAAW;YACxB,QAAQ;gBACN,OAAO,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvD,CAAC;SACF,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAID;;OAEG;IACH,IAAW,YAAY;QACrB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEO,UAAU,CAAC,SAAiB;QAClC,IAAI,CAAC,aAAa,GAAG,IAAI,oBAAa,EAAsB,CAAC;QAE7D,MAAM,gBAAgB,GAAG,CAA4D,KAAa,EAAW,EAAE,CAC7G,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC;QAE1E,IAAI,CAAC,eAAe,GAAG,gBAAM,CAAC,IAAI,CAChC,IAAA,qBAAS,EAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,IAAA,qBAAW,EAAuC,4BAA4B,CAAC,EAC/E,IAAA,kBAAM,EAAC,gBAAgB,CAAC,EACxB,IAAA,eAAG,EAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CACpC,CAAC;QAEF,IAAI,CAAC,KAAK,GAAG,gBAAM,CAAC,IAAI,CACtB,IAAA,qBAAS,EAAC,IAAI,CAAC,aAAa,CAAC,EAC7B,IAAA,qBAAW,EAA6B,iBAAiB,CAAC,EAC1D,IAAA,kBAAM,EAAC,gBAAgB,CAAC,EACxB,IAAA,eAAG,EAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAC1B,CAAC;QAEF,gBAAM,CAAC,IAAI,CACT,IAAA,qBAAW,EAA6B,wBAAwB,CAAC,EACjE,IAAA,kBAAM,EAAC,gBAAgB,CAAC,EACxB,IAAA,gBAAI,EAAC,CAAC,CAAC,EACP,IAAA,eAAG,EAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAC1F,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACI,IAAI;QACT,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;;AApwBH,gCAqwBC;AA1vBC;;GAEG;AACoB,4BAAiB,GAAW,MAAM,CAAC;AAE1D;;;GAGG;AACoB,yBAAc,GAAW,KAAK,CAAC;AAEtD;;GAEG;AACoB,6BAAkB,GAAW,KAAK,CAAC;AAE1D;;;;GAIG;AACoB,+BAAoB,GAAW,KAAK,CAAC","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map, filter, takeUntil, take } from 'rxjs/operators';\nimport * as gateway from '../gateway';\nimport { events, filterEvent } from '../gateway';\nimport * as requests from '../requests';\nimport { Transport } from './transport';\nimport { Device } from './device';\nimport { Response } from './response';\nimport { UnknownResponseEvent } from './unknown_response_event';\nimport { AlertEvent } from './alert_event';\nimport { MotionLibException } from '../exceptions';\nimport { registerForFinalization } from '../finalizer';\n\n/**\n * Class representing access to particular connection (serial port, TCP connection).\n */\nexport class Connection {\n /**\n * Event invoked when a response from a device cannot be matched to any known request.\n */\n public unknownResponse!: Observable<UnknownResponseEvent>;\n\n /**\n * Event invoked when an alert is received from a device.\n */\n public alert!: Observable<AlertEvent>;\n\n /**\n * Default baud rate for serial connections.\n */\n public static readonly DEFAULT_BAUD_RATE: number = 115200;\n\n /**\n * Commands sent over this port are forwarded to the device chain.\n * The bandwidth may be limited as the commands are forwarded over a serial connection.\n */\n public static readonly TCP_PORT_CHAIN: number = 55550;\n\n /**\n * Local area network share port.\n */\n public static readonly NETWORK_SHARE_PORT: number = 11421;\n\n /**\n * Commands send over this port are processed only by the device\n * and not forwarded to the rest of the chain.\n * Using this port typically makes the communication faster.\n */\n public static readonly TCP_PORT_DEVICE_ONLY: number = 55551;\n\n /**\n * The interface ID identifies this Connection instance with the underlying library.\n */\n public get interfaceId(): number {\n return this._interfaceId;\n }\n private _interfaceId: number;\n\n /**\n * The default timeout, in milliseconds, for a device to respond to a request.\n * Setting the timeout to a too low value may cause request timeout exceptions.\n * The initial value is 1000 (one second).\n */\n public get defaultRequestTimeout(): number {\n return this._retrieveTimeout();\n }\n\n public set defaultRequestTimeout(value: number) {\n this._changeTimeout(value);\n }\n\n /**\n * Controls whether outgoing messages contain checksum.\n */\n public get checksumEnabled(): boolean {\n return this._retrieveChecksumEnabled();\n }\n\n public set checksumEnabled(value: boolean) {\n this._changeChecksumEnabled(value);\n }\n\n /**\n * Returns whether the connection is open.\n * Does not guarantee that subsequent requests will succeed.\n */\n public get isOpen(): boolean {\n return this._retrieveIsOpen();\n }\n\n constructor(interfaceId: number) {\n this._interfaceId = interfaceId;\n registerForFinalization(this, Connection._free.bind(null, interfaceId));\n this._subscribe(0);\n }\n\n /**\n * Opens a serial port, if Zaber Launcher controls the port, the port will be opened through Zaber Launcher.\n * Zaber Launcher allows sharing of the port between multiple applications,\n * If port sharing is not desirable, use the `direct` parameter.\n * @param portName Name of the port to open.\n * @param [options.baudRate=Connection.DEFAULT_BAUD_RATE] Optional baud rate (defaults to 115200).\n * @param [options.direct=false] If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n * @returns An object representing the port.\n */\n public static async openSerialPort(\n portName: string,\n options: Connection.OpenSerialPortOptions = {}\n ): Promise<Connection> {\n const {\n baudRate = Connection.DEFAULT_BAUD_RATE,\n direct = false,\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.SERIAL_PORT,\n portName: portName,\n baudRate: baudRate,\n rejectRoutedConnection: direct,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a TCP connection.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.TCP_PORT_CHAIN] Optional port number (defaults to 55550).\n * @returns An object representing the connection.\n */\n public static async openTcp(\n hostName: string,\n port: number = Connection.TCP_PORT_CHAIN\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.TCP,\n hostName: hostName,\n port: port,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection using a custom transport.\n * @param transport The custom connection transport.\n * @returns An object representing the connection.\n */\n public static async openCustom(\n transport: Transport\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.CUSTOM,\n transport: transport.transportId,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a secured connection to a cloud connected device chain.\n * Use this method to connect to devices on your account.\n * @param cloudId The cloud ID to connect to.\n * @param [options.token='unauthenticated'] The token to authenticate with. By default the connection will be unauthenticated.\n * @param options.connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @param options.realm The realm to connect to.\n * Can be left empty for the default account realm.\n * @param [options.api='https://api.zaber.io'] The URL of the API to receive connection info from.\n * @returns An object representing the connection.\n */\n public static async openIot(\n cloudId: string,\n options: Connection.OpenIotOptions = {}\n ): Promise<Connection> {\n const {\n token = 'unauthenticated',\n connectionName,\n realm,\n api = 'https://api.zaber.io',\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.IOT,\n cloudId: cloudId,\n token: token,\n connectionName: connectionName,\n realm: realm,\n api: api,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection to Zaber Launcher in your Local Area Network.\n * The connection is not secured.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.NETWORK_SHARE_PORT] Port number.\n * @param connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @returns An object representing the connection.\n */\n public static async openNetworkShare(\n hostName: string,\n port: number = Connection.NETWORK_SHARE_PORT,\n connectionName?: string\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.NETWORK_SHARE,\n hostName: hostName,\n port: port,\n connectionName: connectionName,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Reopens the connection.\n * To continue using events on the connection, you must resubscribe to event observables.\n * Throws an exception if the connection is already open.\n */\n public async reopen(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'interface/reopen',\n request,\n requests.IntResponse.fromBinary);\n this._subscribe(response.value);\n }\n\n /**\n * Sends a generic ASCII command to this connection.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when the device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns A response to the command.\n */\n public async genericCommand(\n command: string,\n options: Connection.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<Response>(\n 'interface/generic_command',\n request,\n Response.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this connection without expecting a response and without adding a message ID.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n * @param [options.axis=0] Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n options: Connection.GenericCommandNoResponseOptions = {}\n ): Promise<void> {\n const {\n device = 0,\n axis = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Sends a generic ASCII command to this connection and expect multiple responses,\n * either from one device or from many devices.\n * Responses are returned in order of arrival.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when a device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n options: Connection.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n requests.GenericCommandResponseCollection.fromBinary);\n return response.responses;\n }\n\n /**\n * Enables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 1 on all supported devices.\n */\n public async enableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 1',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Disables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 0 on all supported devices.\n */\n public async disableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 0',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Resets ASCII protocol message IDs. Only for testing purposes.\n */\n public resetIds(): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/reset_ids', request);\n }\n\n /**\n * Close the connection.\n */\n public async close(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/close', request);\n }\n\n /**\n * Gets a Device class instance which allows you to control a particular device on this connection.\n * Devices are numbered from 1.\n * @param deviceAddress Address of device intended to control. Address is configured for each device.\n * @returns Device instance.\n */\n public getDevice(\n deviceAddress: number\n ): Device {\n if (deviceAddress <= 0) {\n throw new TypeError('Invalid value; physical devices are numbered from 1.');\n }\n return new Device(this, deviceAddress);\n }\n\n /**\n * Renumbers devices present on this connection. After renumbering, devices need to be identified again.\n * @param [options.firstAddress=1] This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n * @returns Total number of devices that responded to the renumber.\n */\n public async renumberDevices(\n options: Connection.RenumberDevicesOptions = {}\n ): Promise<number> {\n const {\n firstAddress = 1,\n } = options;\n if (firstAddress <= 0) {\n throw new TypeError('Invalid value; device addresses are numbered from 1.');\n }\n const request: requests.RenumberRequest & gateway.Message = {\n ...requests.RenumberRequest.DEFAULT,\n interfaceId: this.interfaceId,\n address: firstAddress,\n toBinary() {\n return requests.RenumberRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/renumber_all',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Attempts to detect any devices present on this connection.\n * @param [options.identifyDevices=true] Determines whether device identification should be performed as well.\n * @returns Array of detected devices.\n */\n public async detectDevices(\n options: Connection.DetectDevicesOptions = {}\n ): Promise<Device[]> {\n const {\n identifyDevices = true,\n } = options;\n const request: requests.DeviceDetectRequest & gateway.Message = {\n ...requests.DeviceDetectRequest.DEFAULT,\n interfaceId: this.interfaceId,\n identifyDevices: identifyDevices,\n toBinary() {\n return requests.DeviceDetectRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceDetectResponse>(\n 'device/detect',\n request,\n requests.DeviceDetectResponse.fromBinary);\n return response.devices.map(deviceAddress => this.getDevice(deviceAddress));\n }\n\n /**\n * Forgets all the information associated with devices on the connection.\n * Useful when devices are removed from the chain indefinitely.\n * @param [exceptDevices=[]] Addresses of devices that should not be forgotten.\n */\n public forgetDevices(\n exceptDevices: number[] = []\n ): void {\n const request: requests.ForgetDevicesRequest & gateway.Message = {\n ...requests.ForgetDevicesRequest.DEFAULT,\n interfaceId: this.interfaceId,\n exceptDevices: exceptDevices,\n toBinary() {\n return requests.ForgetDevicesRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/forget', request);\n }\n\n /**\n * Stops all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are stopped.\n * @returns The addresses of the devices that were stopped by this command.\n */\n public async stopAll(\n options: Connection.StopAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/stop_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Homes all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are homed.\n * @returns The addresses of the devices that were homed by this command.\n */\n public async homeAll(\n options: Connection.HomeAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/home_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Returns a string that represents the connection.\n * @returns A string that represents the connection.\n */\n public toString(): string {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'interface/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns default request timeout.\n * @returns Default request timeout.\n */\n private _retrieveTimeout(): number {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.IntResponse>(\n 'interface/get_timeout',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets default request timeout.\n * @param timeout Default request timeout.\n */\n private _changeTimeout(\n timeout: number\n ): void {\n const request: requests.SetInterfaceTimeoutRequest & gateway.Message = {\n ...requests.SetInterfaceTimeoutRequest.DEFAULT,\n interfaceId: this.interfaceId,\n timeout: timeout,\n toBinary() {\n return requests.SetInterfaceTimeoutRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_timeout', request);\n }\n\n /**\n * Returns checksum enabled.\n * @returns Checksum enabled.\n */\n private _retrieveChecksumEnabled(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_checksum_enabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets checksum enabled.\n * @param isEnabled Checksum enabled.\n */\n private _changeChecksumEnabled(\n isEnabled: boolean\n ): void {\n const request: requests.SetInterfaceChecksumEnabledRequest & gateway.Message = {\n ...requests.SetInterfaceChecksumEnabledRequest.DEFAULT,\n interfaceId: this.interfaceId,\n isEnabled: isEnabled,\n toBinary() {\n return requests.SetInterfaceChecksumEnabledRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_checksum_enabled', request);\n }\n\n /**\n * Returns is open.\n * @returns Is open.\n */\n private _retrieveIsOpen(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_is_open',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Releases native resources of the connection.\n * @param interfaceId The ID of the connection.\n */\n private static _free(\n interfaceId: number\n ): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/free', request);\n }\n\n private _disconnected!: ReplaySubject<MotionLibException>;\n\n /**\n * Event invoked when connection is interrupted or closed.\n */\n public get disconnected(): Observable<MotionLibException> {\n return this._disconnected;\n }\n\n private _subscribe(sessionId: number): void {\n this._disconnected = new ReplaySubject<MotionLibException>();\n\n const filterLocalEvent = <TEvent extends { interfaceId: number; sessionId: number }>(event: TEvent): boolean =>\n event.interfaceId === this.interfaceId && event.sessionId === sessionId;\n\n this.unknownResponse = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.UnknownResponseEventWrapper>('interface/unknown_response'),\n filter(filterLocalEvent),\n map(event => event.unknownResponse)\n );\n\n this.alert = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.AlertEventWrapper>('interface/alert'),\n filter(filterLocalEvent),\n map(event => event.alert)\n );\n\n events.pipe(\n filterEvent<requests.DisconnectedEvent>('interface/disconnected'),\n filter(filterLocalEvent),\n take(1),\n map(({ errorMessage, errorType }) => gateway.convertToException(errorType, errorMessage))\n ).subscribe(this._disconnected);\n }\n\n /**\n * Releases the native resources of the connection.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n Connection._free(this.interfaceId);\n }\n}\n\nnamespace Connection {\n export interface OpenSerialPortOptions {\n /**\n * Optional baud rate (defaults to 115200).\n */\n baudRate?: number;\n /**\n * If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n */\n direct?: boolean;\n }\n export interface OpenIotOptions {\n /**\n * The token to authenticate with. By default the connection will be unauthenticated.\n */\n token?: string;\n /**\n * The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n */\n connectionName?: string;\n /**\n * The realm to connect to.\n * Can be left empty for the default account realm.\n */\n realm?: string;\n /**\n * The URL of the API to receive connection info from.\n */\n api?: string;\n }\n export interface GenericCommandOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when the device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandNoResponseOptions {\n /**\n * Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n axis?: number;\n }\n export interface GenericCommandMultiResponseOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when a device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface RenumberDevicesOptions {\n /**\n * This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n */\n firstAddress?: number;\n }\n export interface DetectDevicesOptions {\n /**\n * Determines whether device identification should be performed as well.\n */\n identifyDevices?: boolean;\n }\n export interface StopAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are stopped.\n */\n waitUntilIdle?: boolean;\n }\n export interface HomeAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are homed.\n */\n waitUntilIdle?: boolean;\n }\n}\n"]}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/ascii/connection.ts"],"names":[],"mappings":"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","sourcesContent":["// ==== THIS FILE IS GENERATED FROM A TEMPLATE ==== //\n// ============= DO NOT EDIT DIRECTLY ============= //\n\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map, filter, takeUntil, take } from 'rxjs/operators';\nimport * as gateway from '../gateway';\nimport { events, filterEvent } from '../gateway';\nimport * as requests from '../requests';\nimport { Transport } from './transport';\nimport { Device } from './device';\nimport { Response } from './response';\nimport { UnknownResponseEvent } from './unknown_response_event';\nimport { AlertEvent } from './alert_event';\nimport { MotionLibException } from '../exceptions';\nimport { registerForFinalization } from '../finalizer';\nimport { MockDevice } from './mock_device';\n\n/**\n * Class representing access to particular connection (serial port, TCP connection).\n */\nexport class Connection {\n /**\n * Event invoked when a response from a device cannot be matched to any known request.\n */\n public unknownResponse!: Observable<UnknownResponseEvent>;\n\n /**\n * Event invoked when an alert is received from a device.\n */\n public alert!: Observable<AlertEvent>;\n\n /**\n * Default baud rate for serial connections.\n */\n public static readonly DEFAULT_BAUD_RATE: number = 115200;\n\n /**\n * Commands sent over this port are forwarded to the device chain.\n * The bandwidth may be limited as the commands are forwarded over a serial connection.\n */\n public static readonly TCP_PORT_CHAIN: number = 55550;\n\n /**\n * Local area network share port.\n */\n public static readonly NETWORK_SHARE_PORT: number = 11421;\n\n /**\n * Commands send over this port are processed only by the device\n * and not forwarded to the rest of the chain.\n * Using this port typically makes the communication faster.\n */\n public static readonly TCP_PORT_DEVICE_ONLY: number = 55551;\n\n /**\n * The interface ID identifies this Connection instance with the underlying library.\n */\n public get interfaceId(): number {\n return this._interfaceId;\n }\n private _interfaceId: number;\n\n /**\n * The default timeout, in milliseconds, for a device to respond to a request.\n * Setting the timeout to a too low value may cause request timeout exceptions.\n * The initial value is 1000 (one second).\n */\n public get defaultRequestTimeout(): number {\n return this._retrieveTimeout();\n }\n\n public set defaultRequestTimeout(value: number) {\n this._changeTimeout(value);\n }\n\n /**\n * Controls whether outgoing messages contain checksum.\n */\n public get checksumEnabled(): boolean {\n return this._retrieveChecksumEnabled();\n }\n\n public set checksumEnabled(value: boolean) {\n this._changeChecksumEnabled(value);\n }\n\n /**\n * Returns whether the connection is open.\n * Does not guarantee that subsequent requests will succeed.\n */\n public get isOpen(): boolean {\n return this._retrieveIsOpen();\n }\n\n constructor(interfaceId: number) {\n this._interfaceId = interfaceId;\n registerForFinalization(this, Connection._free.bind(null, interfaceId));\n this._subscribe(0);\n }\n\n /**\n * Opens a serial port, if Zaber Launcher controls the port, the port will be opened through Zaber Launcher.\n * Zaber Launcher allows sharing of the port between multiple applications,\n * If port sharing is not desirable, use the `direct` parameter.\n * @param portName Name of the port to open.\n * @param [options.baudRate=Connection.DEFAULT_BAUD_RATE] Optional baud rate (defaults to 115200).\n * @param [options.direct=false] If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n * @param [options.testPort=false] Some operating systems may allow opening a serial port that is not writable.\n * Tests if the serial port is writable, and throws an exception if it is not.\n * @returns An object representing the port.\n */\n public static async openSerialPort(\n portName: string,\n options: Connection.OpenSerialPortOptions = {}\n ): Promise<Connection> {\n const {\n baudRate = Connection.DEFAULT_BAUD_RATE,\n direct = false,\n testPort = false,\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.SERIAL_PORT,\n portName: portName,\n baudRate: baudRate,\n rejectRoutedConnection: direct,\n testPort: testPort,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a TCP connection.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.TCP_PORT_CHAIN] Optional port number (defaults to 55550).\n * @returns An object representing the connection.\n */\n public static async openTcp(\n hostName: string,\n port: number = Connection.TCP_PORT_CHAIN\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.TCP,\n hostName: hostName,\n port: port,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection using a custom transport.\n * @param transport The custom connection transport.\n * @returns An object representing the connection.\n */\n public static async openCustom(\n transport: Transport\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.CUSTOM,\n transport: transport.transportId,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a secured connection to a cloud connected device chain.\n * Use this method to connect to devices on your account.\n * @param cloudId The cloud ID to connect to.\n * @param [options.token='unauthenticated'] The token to authenticate with. By default the connection will be unauthenticated.\n * @param options.connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @param options.realm The realm to connect to.\n * Can be left empty for the default account realm.\n * @param [options.api='https://api.zaber.io'] The URL of the API to receive connection info from.\n * @returns An object representing the connection.\n */\n public static async openIot(\n cloudId: string,\n options: Connection.OpenIotOptions = {}\n ): Promise<Connection> {\n const {\n token = 'unauthenticated',\n connectionName,\n realm,\n api = 'https://api.zaber.io',\n } = options;\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.IOT,\n cloudId: cloudId,\n token: token,\n connectionName: connectionName,\n realm: realm,\n api: api,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a connection to Zaber Launcher in your Local Area Network.\n * The connection is not secured.\n * @param hostName Hostname or IP address.\n * @param [port=Connection.NETWORK_SHARE_PORT] Port number.\n * @param connectionName The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n * @returns An object representing the connection.\n */\n public static async openNetworkShare(\n hostName: string,\n port: number = Connection.NETWORK_SHARE_PORT,\n connectionName?: string\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.NETWORK_SHARE,\n hostName: hostName,\n port: port,\n connectionName: connectionName,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Opens a mock connection with mock devices for testing purposes.\n * The mock connection cannot be used for communication with mock devices.\n * @param devices List of mock devices.\n * @returns An object representing the mock connection.\n */\n public static async openMock(\n devices: MockDevice[]\n ): Promise<Connection> {\n const request: requests.OpenInterfaceRequest & gateway.Message = {\n ...requests.OpenInterfaceRequest.DEFAULT,\n interfaceType: requests.InterfaceType.MOCK,\n mockDevices: devices,\n toBinary() {\n return requests.OpenInterfaceRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.OpenInterfaceResponse>(\n 'interface/open',\n request,\n requests.OpenInterfaceResponse.fromBinary);\n return new Connection(response.interfaceId);\n }\n\n /**\n * Reopens the connection.\n * To continue using events on the connection, you must resubscribe to event observables.\n * Throws an exception if the connection is already open.\n */\n public async reopen(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'interface/reopen',\n request,\n requests.IntResponse.fromBinary);\n this._subscribe(response.value);\n }\n\n /**\n * Sends a generic ASCII command to this connection.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when the device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns A response to the command.\n */\n public async genericCommand(\n command: string,\n options: Connection.GenericCommandOptions = {}\n ): Promise<Response> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<Response>(\n 'interface/generic_command',\n request,\n Response.fromBinary);\n return response;\n }\n\n /**\n * Sends a generic ASCII command to this connection without expecting a response and without adding a message ID.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n * @param [options.axis=0] Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n public async genericCommandNoResponse(\n command: string,\n options: Connection.GenericCommandNoResponseOptions = {}\n ): Promise<void> {\n const {\n device = 0,\n axis = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Sends a generic ASCII command to this connection and expect multiple responses,\n * either from one device or from many devices.\n * Responses are returned in order of arrival.\n * For more information refer to the [ASCII Protocol Manual](https://www.zaber.com/protocol-manual#topic_commands).\n * @param command Command and its parameters.\n * @param [options.device=0] Optional device address to send the command to.\n * @param [options.axis=0] Optional axis number to send the command to.\n * @param [options.checkErrors=true] Controls whether to throw an exception when a device rejects the command.\n * @param [options.timeout=0] The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n * @returns All responses to the command.\n */\n public async genericCommandMultiResponse(\n command: string,\n options: Connection.GenericCommandMultiResponseOptions = {}\n ): Promise<Response[]> {\n const {\n device = 0,\n axis = 0,\n checkErrors = true,\n timeout = 0,\n } = options;\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: command,\n device: device,\n axis: axis,\n checkErrors: checkErrors,\n timeout: timeout,\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.GenericCommandResponseCollection>(\n 'interface/generic_command_multi_response',\n request,\n requests.GenericCommandResponseCollection.fromBinary);\n return response.responses;\n }\n\n /**\n * Enables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 1 on all supported devices.\n */\n public async enableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 1',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Disables alerts for all devices on the connection.\n * This will change the \"comm.alert\" setting to 0 on all supported devices.\n */\n public async disableAlerts(): Promise<void> {\n const request: requests.GenericCommandRequest & gateway.Message = {\n ...requests.GenericCommandRequest.DEFAULT,\n interfaceId: this.interfaceId,\n command: 'set comm.alert 0',\n toBinary() {\n return requests.GenericCommandRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/generic_command_no_response', request);\n }\n\n /**\n * Resets ASCII protocol message IDs. Only for testing purposes.\n */\n public resetIds(): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/reset_ids', request);\n }\n\n /**\n * Close the connection.\n */\n public async close(): Promise<void> {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n await gateway.callAsync('interface/close', request);\n }\n\n /**\n * Gets a Device class instance which allows you to control a particular device on this connection.\n * Devices are numbered from 1.\n * @param deviceAddress Address of device intended to control. Address is configured for each device.\n * @returns Device instance.\n */\n public getDevice(\n deviceAddress: number\n ): Device {\n if (deviceAddress <= 0) {\n throw new TypeError('Invalid value; physical devices are numbered from 1.');\n }\n return new Device(this, deviceAddress);\n }\n\n /**\n * Renumbers devices present on this connection. After renumbering, devices need to be identified again.\n * @param [options.firstAddress=1] This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n * @returns Total number of devices that responded to the renumber.\n */\n public async renumberDevices(\n options: Connection.RenumberDevicesOptions = {}\n ): Promise<number> {\n const {\n firstAddress = 1,\n } = options;\n if (firstAddress <= 0) {\n throw new TypeError('Invalid value; device addresses are numbered from 1.');\n }\n const request: requests.RenumberRequest & gateway.Message = {\n ...requests.RenumberRequest.DEFAULT,\n interfaceId: this.interfaceId,\n address: firstAddress,\n toBinary() {\n return requests.RenumberRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.IntResponse>(\n 'device/renumber_all',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Attempts to detect any devices present on this connection.\n * @param [options.identifyDevices=true] Determines whether device identification should be performed as well.\n * @returns Array of detected devices.\n */\n public async detectDevices(\n options: Connection.DetectDevicesOptions = {}\n ): Promise<Device[]> {\n const {\n identifyDevices = true,\n } = options;\n const request: requests.DeviceDetectRequest & gateway.Message = {\n ...requests.DeviceDetectRequest.DEFAULT,\n interfaceId: this.interfaceId,\n identifyDevices: identifyDevices,\n toBinary() {\n return requests.DeviceDetectRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceDetectResponse>(\n 'device/detect',\n request,\n requests.DeviceDetectResponse.fromBinary);\n return response.devices.map(deviceAddress => this.getDevice(deviceAddress));\n }\n\n /**\n * Forgets all the information associated with devices on the connection.\n * Useful when devices are removed from the chain indefinitely.\n * @param [exceptDevices=[]] Addresses of devices that should not be forgotten.\n */\n public forgetDevices(\n exceptDevices: number[] = []\n ): void {\n const request: requests.ForgetDevicesRequest & gateway.Message = {\n ...requests.ForgetDevicesRequest.DEFAULT,\n interfaceId: this.interfaceId,\n exceptDevices: exceptDevices,\n toBinary() {\n return requests.ForgetDevicesRequest.toBinary(this);\n },\n };\n\n gateway.callSync('device/forget', request);\n }\n\n /**\n * Stops all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are stopped.\n * @returns The addresses of the devices that were stopped by this command.\n */\n public async stopAll(\n options: Connection.StopAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/stop_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Homes all of the devices on this connection.\n * @param [options.waitUntilIdle=true] Determines whether the function should return immediately\n * or wait until the devices are homed.\n * @returns The addresses of the devices that were homed by this command.\n */\n public async homeAll(\n options: Connection.HomeAllOptions = {}\n ): Promise<number[]> {\n const {\n waitUntilIdle = true,\n } = options;\n const request: requests.DeviceOnAllRequest & gateway.Message = {\n ...requests.DeviceOnAllRequest.DEFAULT,\n interfaceId: this.interfaceId,\n waitUntilIdle: waitUntilIdle,\n toBinary() {\n return requests.DeviceOnAllRequest.toBinary(this);\n },\n };\n\n const response = await gateway.callAsync<requests.DeviceOnAllResponse>(\n 'device/home_all',\n request,\n requests.DeviceOnAllResponse.fromBinary);\n return response.deviceAddresses;\n }\n\n /**\n * Returns a string that represents the connection.\n * @returns A string that represents the connection.\n */\n public toString(): string {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.StringResponse>(\n 'interface/to_string',\n request,\n requests.StringResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Returns default request timeout.\n * @returns Default request timeout.\n */\n private _retrieveTimeout(): number {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.IntResponse>(\n 'interface/get_timeout',\n request,\n requests.IntResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets default request timeout.\n * @param timeout Default request timeout.\n */\n private _changeTimeout(\n timeout: number\n ): void {\n const request: requests.SetInterfaceTimeoutRequest & gateway.Message = {\n ...requests.SetInterfaceTimeoutRequest.DEFAULT,\n interfaceId: this.interfaceId,\n timeout: timeout,\n toBinary() {\n return requests.SetInterfaceTimeoutRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_timeout', request);\n }\n\n /**\n * Returns checksum enabled.\n * @returns Checksum enabled.\n */\n private _retrieveChecksumEnabled(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_checksum_enabled',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Sets checksum enabled.\n * @param isEnabled Checksum enabled.\n */\n private _changeChecksumEnabled(\n isEnabled: boolean\n ): void {\n const request: requests.SetInterfaceChecksumEnabledRequest & gateway.Message = {\n ...requests.SetInterfaceChecksumEnabledRequest.DEFAULT,\n interfaceId: this.interfaceId,\n isEnabled: isEnabled,\n toBinary() {\n return requests.SetInterfaceChecksumEnabledRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/set_checksum_enabled', request);\n }\n\n /**\n * Returns is open.\n * @returns Is open.\n */\n private _retrieveIsOpen(): boolean {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: this.interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n const response = gateway.callSync<requests.BoolResponse>(\n 'interface/get_is_open',\n request,\n requests.BoolResponse.fromBinary);\n return response.value;\n }\n\n /**\n * Releases native resources of the connection.\n * @param interfaceId The ID of the connection.\n */\n private static _free(\n interfaceId: number\n ): void {\n const request: requests.InterfaceEmptyRequest & gateway.Message = {\n ...requests.InterfaceEmptyRequest.DEFAULT,\n interfaceId: interfaceId,\n toBinary() {\n return requests.InterfaceEmptyRequest.toBinary(this);\n },\n };\n\n gateway.callSync('interface/free', request);\n }\n\n private _disconnected!: ReplaySubject<MotionLibException>;\n\n /**\n * Event invoked when connection is interrupted or closed.\n */\n public get disconnected(): Observable<MotionLibException> {\n return this._disconnected;\n }\n\n private _subscribe(sessionId: number): void {\n this._disconnected = new ReplaySubject<MotionLibException>();\n\n const filterLocalEvent = <TEvent extends { interfaceId: number; sessionId: number }>(event: TEvent): boolean =>\n event.interfaceId === this.interfaceId && event.sessionId === sessionId;\n\n this.unknownResponse = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.UnknownResponseEventWrapper>('interface/unknown_response'),\n filter(filterLocalEvent),\n map(event => event.unknownResponse)\n );\n\n this.alert = events.pipe(\n takeUntil(this._disconnected),\n filterEvent<requests.AlertEventWrapper>('interface/alert'),\n filter(filterLocalEvent),\n map(event => event.alert)\n );\n\n events.pipe(\n filterEvent<requests.DisconnectedEvent>('interface/disconnected'),\n filter(filterLocalEvent),\n take(1),\n map(({ errorMessage, errorType }) => gateway.convertToException(errorType, errorMessage))\n ).subscribe(this._disconnected);\n }\n\n /**\n * Releases the native resources of the connection.\n * Should only be called if your environment does not support FinalizationRegistry.\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n */\n public free(): void {\n Connection._free(this.interfaceId);\n }\n}\n\nnamespace Connection {\n export interface OpenSerialPortOptions {\n /**\n * Optional baud rate (defaults to 115200).\n */\n baudRate?: number;\n /**\n * If true will connect to the serial port directly,\n * failing if the connection is already opened by a message router instance.\n */\n direct?: boolean;\n /**\n * Some operating systems may allow opening a serial port that is not writable.\n * Tests if the serial port is writable, and throws an exception if it is not.\n */\n testPort?: boolean;\n }\n export interface OpenIotOptions {\n /**\n * The token to authenticate with. By default the connection will be unauthenticated.\n */\n token?: string;\n /**\n * The name of the connection to open.\n * Can be left empty to default to the only connection present.\n * Otherwise, use serial port name for serial port connection or hostname:port for TCP connection.\n */\n connectionName?: string;\n /**\n * The realm to connect to.\n * Can be left empty for the default account realm.\n */\n realm?: string;\n /**\n * The URL of the API to receive connection info from.\n */\n api?: string;\n }\n export interface GenericCommandOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when the device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface GenericCommandNoResponseOptions {\n /**\n * Optional device address to send the command to.\n * Specifying -1 omits the number completely.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n * Specifying -1 omits the number completely.\n */\n axis?: number;\n }\n export interface GenericCommandMultiResponseOptions {\n /**\n * Optional device address to send the command to.\n */\n device?: number;\n /**\n * Optional axis number to send the command to.\n */\n axis?: number;\n /**\n * Controls whether to throw an exception when a device rejects the command.\n */\n checkErrors?: boolean;\n /**\n * The timeout, in milliseconds, for a device to respond to the command.\n * Overrides the connection default request timeout.\n */\n timeout?: number;\n }\n export interface RenumberDevicesOptions {\n /**\n * This is the address that the device closest to the computer is given.\n * Remaining devices are numbered consecutively.\n */\n firstAddress?: number;\n }\n export interface DetectDevicesOptions {\n /**\n * Determines whether device identification should be performed as well.\n */\n identifyDevices?: boolean;\n }\n export interface StopAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are stopped.\n */\n waitUntilIdle?: boolean;\n }\n export interface HomeAllOptions {\n /**\n * Determines whether the function should return immediately\n * or wait until the devices are homed.\n */\n waitUntilIdle?: boolean;\n }\n}\n"]}
@@ -35,9 +35,9 @@ exports.ConversionFactor = {
35
35
  const castValue = value;
36
36
  return (value != null &&
37
37
  typeof value === 'object' &&
38
- typeof castValue.setting === typeof exports.ConversionFactor.DEFAULT.setting &&
39
- typeof castValue.value === typeof exports.ConversionFactor.DEFAULT.value &&
40
- typeof castValue.unit === typeof exports.ConversionFactor.DEFAULT.unit);
38
+ sanitizer_1.sanitizer.isString(castValue.setting) &&
39
+ sanitizer_1.sanitizer.isNumber(castValue.value) &&
40
+ sanitizer_1.sanitizer.isUnits(castValue.unit));
41
41
  },
42
42
  };
43
43
  //# sourceMappingURL=conversion_factor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"conversion_factor.js","sourceRoot":"","sources":["../../../src/ascii/conversion_factor.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AACjD,oCAAiC;AAuBpB,QAAA,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC,MAAkB,EAAoB,EAAE,CAAC,wBAAgB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/H,QAAQ,EAAE,CAAC,KAAuB,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,wBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEnG,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,aAAK,CAAC,MAAM;KACnB,CAA+B;IAEhC,QAAQ,EAAE,CAAC,KAAuB,EAAoB,EAAE;QACtD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAA;QAAC,CAAC;QACzG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,4CAA4C,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QACnH,OAAO;YACL,OAAO,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC;YAC3D,KAAK,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC;YACrD,IAAI,EAAE,qBAAS,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAAoB,EAAE,CAAC,CAAC;QACpD,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAA6B,EAAE;QAC7C,MAAM,SAAS,GAAG,KAAyB,CAAC;QAC5C,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,SAAS,CAAC,OAAO,KAAK,OAAO,wBAAgB,CAAC,OAAO,CAAC,OAAO;YACpE,OAAO,SAAS,CAAC,KAAK,KAAK,OAAO,wBAAgB,CAAC,OAAO,CAAC,KAAK;YAChE,OAAO,SAAS,CAAC,IAAI,KAAK,OAAO,wBAAgB,CAAC,OAAO,CAAC,IAAI,CAC/D,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { Units } from '../units';\n\n/**\n * Represents unit conversion factor for a single dimension.\n */\nexport interface ConversionFactor {\n /**\n * Setting representing the dimension.\n */\n setting: string;\n\n /**\n * Value representing 1 native device unit in specified real-word units.\n */\n value: number;\n\n /**\n * Units of the value.\n */\n unit: Units;\n\n}\n\nexport const ConversionFactor = {\n fromBinary: (buffer: Uint8Array): ConversionFactor => ConversionFactor.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: ConversionFactor): Uint8Array => BSON.serialize(ConversionFactor.sanitize(value)),\n\n DEFAULT: Object.freeze({\n setting: '',\n value: 0,\n unit: Units.NATIVE,\n }) as Readonly<ConversionFactor>,\n\n sanitize: (value: ConversionFactor): ConversionFactor => {\n if (value == null) { throw new TypeError('Expected ConversionFactor object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected ConversionFactor object but got ${typeof value}.`) }\n return {\n setting: sanitizer.sanitizeString(value.setting, 'setting'),\n value: sanitizer.sanitizeNumber(value.value, 'value'),\n unit: sanitizer.sanitizeUnits(value.unit, 'unit'),\n };\n },\n\n convert: (value: BSON.Document): ConversionFactor => ({\n setting: value.setting,\n value: value.value,\n unit: value.unit,\n }),\n\n isA: (value: any): value is ConversionFactor => {\n const castValue = value as ConversionFactor;\n return (\n value != null &&\n typeof value === 'object' &&\n typeof castValue.setting === typeof ConversionFactor.DEFAULT.setting &&\n typeof castValue.value === typeof ConversionFactor.DEFAULT.value &&\n typeof castValue.unit === typeof ConversionFactor.DEFAULT.unit\n );\n },\n};\n"]}
1
+ {"version":3,"file":"conversion_factor.js","sourceRoot":"","sources":["../../../src/ascii/conversion_factor.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AACjD,oCAAiC;AAuBpB,QAAA,gBAAgB,GAAG;IAC9B,UAAU,EAAE,CAAC,MAAkB,EAAoB,EAAE,CAAC,wBAAgB,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/H,QAAQ,EAAE,CAAC,KAAuB,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,wBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEnG,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,aAAK,CAAC,MAAM;KACnB,CAA+B;IAEhC,QAAQ,EAAE,CAAC,KAAuB,EAAoB,EAAE;QACtD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAA;QAAC,CAAC;QACzG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,4CAA4C,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QACnH,OAAO;YACL,OAAO,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC;YAC3D,KAAK,EAAE,qBAAS,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC;YACrD,IAAI,EAAE,qBAAS,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;SAClD,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAAoB,EAAE,CAAC,CAAC;QACpD,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAA6B,EAAE;QAC7C,MAAM,SAAS,GAAG,KAAyB,CAAC;QAC5C,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,qBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC;YACrC,qBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC;YACnC,qBAAS,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAClC,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { Units } from '../units';\n\n/**\n * Represents unit conversion factor for a single dimension.\n */\nexport interface ConversionFactor {\n /**\n * Setting representing the dimension.\n */\n setting: string;\n\n /**\n * Value representing 1 native device unit in specified real-word units.\n */\n value: number;\n\n /**\n * Units of the value.\n */\n unit: Units;\n\n}\n\nexport const ConversionFactor = {\n fromBinary: (buffer: Uint8Array): ConversionFactor => ConversionFactor.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: ConversionFactor): Uint8Array => BSON.serialize(ConversionFactor.sanitize(value)),\n\n DEFAULT: Object.freeze({\n setting: '',\n value: 0,\n unit: Units.NATIVE,\n }) as Readonly<ConversionFactor>,\n\n sanitize: (value: ConversionFactor): ConversionFactor => {\n if (value == null) { throw new TypeError('Expected ConversionFactor object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected ConversionFactor object but got ${typeof value}.`) }\n return {\n setting: sanitizer.sanitizeString(value.setting, 'setting'),\n value: sanitizer.sanitizeNumber(value.value, 'value'),\n unit: sanitizer.sanitizeUnits(value.unit, 'unit'),\n };\n },\n\n convert: (value: BSON.Document): ConversionFactor => ({\n setting: value.setting,\n value: value.value,\n unit: value.unit,\n }),\n\n isA: (value: any): value is ConversionFactor => {\n const castValue = value as ConversionFactor;\n return (\n value != null &&\n typeof value === 'object' &&\n sanitizer.isString(castValue.setting) &&\n sanitizer.isNumber(castValue.value) &&\n sanitizer.isUnits(castValue.unit)\n );\n },\n};\n"]}
@@ -47,13 +47,13 @@ exports.DeviceIdentity = {
47
47
  const castValue = value;
48
48
  return (value != null &&
49
49
  typeof value === 'object' &&
50
- typeof castValue.deviceId === typeof exports.DeviceIdentity.DEFAULT.deviceId &&
51
- typeof castValue.serialNumber === typeof exports.DeviceIdentity.DEFAULT.serialNumber &&
52
- typeof castValue.name === typeof exports.DeviceIdentity.DEFAULT.name &&
53
- typeof castValue.axisCount === typeof exports.DeviceIdentity.DEFAULT.axisCount &&
50
+ sanitizer_1.sanitizer.isInt(castValue.deviceId) &&
51
+ sanitizer_1.sanitizer.isInt(castValue.serialNumber) &&
52
+ sanitizer_1.sanitizer.isString(castValue.name) &&
53
+ sanitizer_1.sanitizer.isInt(castValue.axisCount) &&
54
54
  firmware_version_1.FirmwareVersion.isA(castValue.firmwareVersion) &&
55
- typeof castValue.isModified === typeof exports.DeviceIdentity.DEFAULT.isModified &&
56
- typeof castValue.isIntegrated === typeof exports.DeviceIdentity.DEFAULT.isIntegrated);
55
+ sanitizer_1.sanitizer.isBool(castValue.isModified) &&
56
+ sanitizer_1.sanitizer.isBool(castValue.isIntegrated));
57
57
  },
58
58
  };
59
59
  //# sourceMappingURL=device_identity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device_identity.js","sourceRoot":"","sources":["../../../src/ascii/device_identity.ts"],"names":[],"mappings":"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","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { FirmwareVersion } from '../firmware_version';\n\n/**\n * Representation of data gathered during device identification.\n */\nexport interface DeviceIdentity {\n /**\n * Unique ID of the device hardware.\n */\n deviceId: number;\n\n /**\n * Serial number of the device.\n */\n serialNumber: number;\n\n /**\n * Name of the product.\n */\n name: string;\n\n /**\n * Number of axes this device has.\n */\n axisCount: number;\n\n /**\n * Version of the firmware.\n */\n firmwareVersion: FirmwareVersion;\n\n /**\n * The device has hardware modifications.\n */\n isModified: boolean;\n\n /**\n * The device is an integrated product.\n */\n isIntegrated: boolean;\n\n}\n\nexport const DeviceIdentity = {\n fromBinary: (buffer: Uint8Array): DeviceIdentity => DeviceIdentity.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: DeviceIdentity): Uint8Array => BSON.serialize(DeviceIdentity.sanitize(value)),\n\n DEFAULT: Object.freeze({\n deviceId: 0,\n serialNumber: 0,\n name: '',\n axisCount: 0,\n firmwareVersion: FirmwareVersion.DEFAULT,\n isModified: false,\n isIntegrated: false,\n }) as Readonly<DeviceIdentity>,\n\n sanitize: (value: DeviceIdentity): DeviceIdentity => {\n if (value == null) { throw new TypeError('Expected DeviceIdentity object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceIdentity object but got ${typeof value}.`) }\n return {\n deviceId: sanitizer.sanitizeInt(value.deviceId, 'deviceId'),\n serialNumber: sanitizer.sanitizeInt(value.serialNumber, 'serialNumber'),\n name: sanitizer.sanitizeString(value.name, 'name'),\n axisCount: sanitizer.sanitizeInt(value.axisCount, 'axisCount'),\n firmwareVersion: FirmwareVersion.sanitize(value.firmwareVersion),\n isModified: sanitizer.sanitizeBool(value.isModified, 'isModified'),\n isIntegrated: sanitizer.sanitizeBool(value.isIntegrated, 'isIntegrated'),\n };\n },\n\n convert: (value: BSON.Document): DeviceIdentity => ({\n deviceId: value.deviceId,\n serialNumber: Number(value.serialNumber),\n name: value.name,\n axisCount: value.axisCount,\n firmwareVersion: value.firmwareVersion,\n isModified: value.isModified,\n isIntegrated: value.isIntegrated,\n }),\n\n isA: (value: any): value is DeviceIdentity => {\n const castValue = value as DeviceIdentity;\n return (\n value != null &&\n typeof value === 'object' &&\n typeof castValue.deviceId === typeof DeviceIdentity.DEFAULT.deviceId &&\n typeof castValue.serialNumber === typeof DeviceIdentity.DEFAULT.serialNumber &&\n typeof castValue.name === typeof DeviceIdentity.DEFAULT.name &&\n typeof castValue.axisCount === typeof DeviceIdentity.DEFAULT.axisCount &&\n FirmwareVersion.isA(castValue.firmwareVersion) &&\n typeof castValue.isModified === typeof DeviceIdentity.DEFAULT.isModified &&\n typeof castValue.isIntegrated === typeof DeviceIdentity.DEFAULT.isIntegrated\n );\n },\n};\n"]}
1
+ {"version":3,"file":"device_identity.js","sourceRoot":"","sources":["../../../src/ascii/device_identity.ts"],"names":[],"mappings":"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","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\nimport { FirmwareVersion } from '../firmware_version';\n\n/**\n * Representation of data gathered during device identification.\n */\nexport interface DeviceIdentity {\n /**\n * Unique ID of the device hardware.\n */\n deviceId: number;\n\n /**\n * Serial number of the device.\n */\n serialNumber: number;\n\n /**\n * Name of the product.\n */\n name: string;\n\n /**\n * Number of axes this device has.\n */\n axisCount: number;\n\n /**\n * Version of the firmware.\n */\n firmwareVersion: FirmwareVersion;\n\n /**\n * The device has hardware modifications.\n */\n isModified: boolean;\n\n /**\n * The device is an integrated product.\n */\n isIntegrated: boolean;\n\n}\n\nexport const DeviceIdentity = {\n fromBinary: (buffer: Uint8Array): DeviceIdentity => DeviceIdentity.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: DeviceIdentity): Uint8Array => BSON.serialize(DeviceIdentity.sanitize(value)),\n\n DEFAULT: Object.freeze({\n deviceId: 0,\n serialNumber: 0,\n name: '',\n axisCount: 0,\n firmwareVersion: FirmwareVersion.DEFAULT,\n isModified: false,\n isIntegrated: false,\n }) as Readonly<DeviceIdentity>,\n\n sanitize: (value: DeviceIdentity): DeviceIdentity => {\n if (value == null) { throw new TypeError('Expected DeviceIdentity object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceIdentity object but got ${typeof value}.`) }\n return {\n deviceId: sanitizer.sanitizeInt(value.deviceId, 'deviceId'),\n serialNumber: sanitizer.sanitizeInt(value.serialNumber, 'serialNumber'),\n name: sanitizer.sanitizeString(value.name, 'name'),\n axisCount: sanitizer.sanitizeInt(value.axisCount, 'axisCount'),\n firmwareVersion: FirmwareVersion.sanitize(value.firmwareVersion),\n isModified: sanitizer.sanitizeBool(value.isModified, 'isModified'),\n isIntegrated: sanitizer.sanitizeBool(value.isIntegrated, 'isIntegrated'),\n };\n },\n\n convert: (value: BSON.Document): DeviceIdentity => ({\n deviceId: value.deviceId,\n serialNumber: Number(value.serialNumber),\n name: value.name,\n axisCount: value.axisCount,\n firmwareVersion: value.firmwareVersion,\n isModified: value.isModified,\n isIntegrated: value.isIntegrated,\n }),\n\n isA: (value: any): value is DeviceIdentity => {\n const castValue = value as DeviceIdentity;\n return (\n value != null &&\n typeof value === 'object' &&\n sanitizer.isInt(castValue.deviceId) &&\n sanitizer.isInt(castValue.serialNumber) &&\n sanitizer.isString(castValue.name) &&\n sanitizer.isInt(castValue.axisCount) &&\n FirmwareVersion.isA(castValue.firmwareVersion) &&\n sanitizer.isBool(castValue.isModified) &&\n sanitizer.isBool(castValue.isIntegrated)\n );\n },\n};\n"]}
@@ -37,10 +37,10 @@ exports.DeviceIOInfo = {
37
37
  const castValue = value;
38
38
  return (value != null &&
39
39
  typeof value === 'object' &&
40
- typeof castValue.numberAnalogOutputs === typeof exports.DeviceIOInfo.DEFAULT.numberAnalogOutputs &&
41
- typeof castValue.numberAnalogInputs === typeof exports.DeviceIOInfo.DEFAULT.numberAnalogInputs &&
42
- typeof castValue.numberDigitalOutputs === typeof exports.DeviceIOInfo.DEFAULT.numberDigitalOutputs &&
43
- typeof castValue.numberDigitalInputs === typeof exports.DeviceIOInfo.DEFAULT.numberDigitalInputs);
40
+ sanitizer_1.sanitizer.isInt(castValue.numberAnalogOutputs) &&
41
+ sanitizer_1.sanitizer.isInt(castValue.numberAnalogInputs) &&
42
+ sanitizer_1.sanitizer.isInt(castValue.numberDigitalOutputs) &&
43
+ sanitizer_1.sanitizer.isInt(castValue.numberDigitalInputs));
44
44
  },
45
45
  };
46
46
  //# sourceMappingURL=device_io_info.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"device_io_info.js","sourceRoot":"","sources":["../../../src/ascii/device_io_info.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AA4BpC,QAAA,YAAY,GAAG;IAC1B,UAAU,EAAE,CAAC,MAAkB,EAAgB,EAAE,CAAC,oBAAY,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvH,QAAQ,EAAE,CAAC,KAAmB,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,oBAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE3F,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,mBAAmB,EAAE,CAAC;QACtB,kBAAkB,EAAE,CAAC;QACrB,oBAAoB,EAAE,CAAC;QACvB,mBAAmB,EAAE,CAAC;KACvB,CAA2B;IAE5B,QAAQ,EAAE,CAAC,KAAmB,EAAgB,EAAE;QAC9C,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,yDAAyD,CAAC,CAAA;QAAC,CAAC;QACrG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,wCAAwC,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC/G,OAAO;YACL,mBAAmB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;YAC5F,kBAAkB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;YACzF,oBAAoB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,oBAAoB,EAAE,sBAAsB,CAAC;YAC/F,mBAAmB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;SAC7F,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAAgB,EAAE,CAAC,CAAC;QAChD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;KAC/C,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAAyB,EAAE;QACzC,MAAM,SAAS,GAAG,KAAqB,CAAC;QACxC,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,OAAO,SAAS,CAAC,mBAAmB,KAAK,OAAO,oBAAY,CAAC,OAAO,CAAC,mBAAmB;YACxF,OAAO,SAAS,CAAC,kBAAkB,KAAK,OAAO,oBAAY,CAAC,OAAO,CAAC,kBAAkB;YACtF,OAAO,SAAS,CAAC,oBAAoB,KAAK,OAAO,oBAAY,CAAC,OAAO,CAAC,oBAAoB;YAC1F,OAAO,SAAS,CAAC,mBAAmB,KAAK,OAAO,oBAAY,CAAC,OAAO,CAAC,mBAAmB,CACzF,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\n\n/**\n * Class representing information on the I/O channels of the device.\n */\nexport interface DeviceIOInfo {\n /**\n * Number of analog output channels.\n */\n numberAnalogOutputs: number;\n\n /**\n * Number of analog input channels.\n */\n numberAnalogInputs: number;\n\n /**\n * Number of digital output channels.\n */\n numberDigitalOutputs: number;\n\n /**\n * Number of digital input channels.\n */\n numberDigitalInputs: number;\n\n}\n\nexport const DeviceIOInfo = {\n fromBinary: (buffer: Uint8Array): DeviceIOInfo => DeviceIOInfo.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: DeviceIOInfo): Uint8Array => BSON.serialize(DeviceIOInfo.sanitize(value)),\n\n DEFAULT: Object.freeze({\n numberAnalogOutputs: 0,\n numberAnalogInputs: 0,\n numberDigitalOutputs: 0,\n numberDigitalInputs: 0,\n }) as Readonly<DeviceIOInfo>,\n\n sanitize: (value: DeviceIOInfo): DeviceIOInfo => {\n if (value == null) { throw new TypeError('Expected DeviceIOInfo object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceIOInfo object but got ${typeof value}.`) }\n return {\n numberAnalogOutputs: sanitizer.sanitizeInt(value.numberAnalogOutputs, 'numberAnalogOutputs'),\n numberAnalogInputs: sanitizer.sanitizeInt(value.numberAnalogInputs, 'numberAnalogInputs'),\n numberDigitalOutputs: sanitizer.sanitizeInt(value.numberDigitalOutputs, 'numberDigitalOutputs'),\n numberDigitalInputs: sanitizer.sanitizeInt(value.numberDigitalInputs, 'numberDigitalInputs'),\n };\n },\n\n convert: (value: BSON.Document): DeviceIOInfo => ({\n numberAnalogOutputs: value.numberAnalogOutputs,\n numberAnalogInputs: value.numberAnalogInputs,\n numberDigitalOutputs: value.numberDigitalOutputs,\n numberDigitalInputs: value.numberDigitalInputs,\n }),\n\n isA: (value: any): value is DeviceIOInfo => {\n const castValue = value as DeviceIOInfo;\n return (\n value != null &&\n typeof value === 'object' &&\n typeof castValue.numberAnalogOutputs === typeof DeviceIOInfo.DEFAULT.numberAnalogOutputs &&\n typeof castValue.numberAnalogInputs === typeof DeviceIOInfo.DEFAULT.numberAnalogInputs &&\n typeof castValue.numberDigitalOutputs === typeof DeviceIOInfo.DEFAULT.numberDigitalOutputs &&\n typeof castValue.numberDigitalInputs === typeof DeviceIOInfo.DEFAULT.numberDigitalInputs\n );\n },\n};\n"]}
1
+ {"version":3,"file":"device_io_info.js","sourceRoot":"","sources":["../../../src/ascii/device_io_info.ts"],"names":[],"mappings":";;;AAAA,oDAAoD;AACpD,+BAA4B;AAC5B,oDAAiD;AA4BpC,QAAA,YAAY,GAAG;IAC1B,UAAU,EAAE,CAAC,MAAkB,EAAgB,EAAE,CAAC,oBAAY,CAAC,OAAO,CAAC,WAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IAEvH,QAAQ,EAAE,CAAC,KAAmB,EAAc,EAAE,CAAC,WAAI,CAAC,SAAS,CAAC,oBAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE3F,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;QACrB,mBAAmB,EAAE,CAAC;QACtB,kBAAkB,EAAE,CAAC;QACrB,oBAAoB,EAAE,CAAC;QACvB,mBAAmB,EAAE,CAAC;KACvB,CAA2B;IAE5B,QAAQ,EAAE,CAAC,KAAmB,EAAgB,EAAE;QAC9C,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,yDAAyD,CAAC,CAAA;QAAC,CAAC;QACrG,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAAC,MAAM,IAAI,SAAS,CAAC,wCAAwC,OAAO,KAAK,GAAG,CAAC,CAAA;QAAC,CAAC;QAC/G,OAAO;YACL,mBAAmB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;YAC5F,kBAAkB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;YACzF,oBAAoB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,oBAAoB,EAAE,sBAAsB,CAAC;YAC/F,mBAAmB,EAAE,qBAAS,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;SAC7F,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,CAAC,KAAoB,EAAgB,EAAE,CAAC,CAAC;QAChD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;KAC/C,CAAC;IAEF,GAAG,EAAE,CAAC,KAAU,EAAyB,EAAE;QACzC,MAAM,SAAS,GAAG,KAAqB,CAAC;QACxC,OAAO,CACL,KAAK,IAAI,IAAI;YACb,OAAO,KAAK,KAAK,QAAQ;YACzB,qBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,CAAC;YAC9C,qBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC;YAC7C,qBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC;YAC/C,qBAAS,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAC/C,CAAC;IACJ,CAAC;CACF,CAAC","sourcesContent":["/* This file is generated. Do not modify by hand. */\nimport { BSON } from 'bson';\nimport { sanitizer } from '../gateway/sanitizer';\n\n/**\n * Class representing information on the I/O channels of the device.\n */\nexport interface DeviceIOInfo {\n /**\n * Number of analog output channels.\n */\n numberAnalogOutputs: number;\n\n /**\n * Number of analog input channels.\n */\n numberAnalogInputs: number;\n\n /**\n * Number of digital output channels.\n */\n numberDigitalOutputs: number;\n\n /**\n * Number of digital input channels.\n */\n numberDigitalInputs: number;\n\n}\n\nexport const DeviceIOInfo = {\n fromBinary: (buffer: Uint8Array): DeviceIOInfo => DeviceIOInfo.convert(BSON.deserialize(buffer, { useBigInt64: true })),\n\n toBinary: (value: DeviceIOInfo): Uint8Array => BSON.serialize(DeviceIOInfo.sanitize(value)),\n\n DEFAULT: Object.freeze({\n numberAnalogOutputs: 0,\n numberAnalogInputs: 0,\n numberDigitalOutputs: 0,\n numberDigitalInputs: 0,\n }) as Readonly<DeviceIOInfo>,\n\n sanitize: (value: DeviceIOInfo): DeviceIOInfo => {\n if (value == null) { throw new TypeError('Expected DeviceIOInfo object but got null or undefined.') }\n if (typeof value !== 'object') { throw new TypeError(`Expected DeviceIOInfo object but got ${typeof value}.`) }\n return {\n numberAnalogOutputs: sanitizer.sanitizeInt(value.numberAnalogOutputs, 'numberAnalogOutputs'),\n numberAnalogInputs: sanitizer.sanitizeInt(value.numberAnalogInputs, 'numberAnalogInputs'),\n numberDigitalOutputs: sanitizer.sanitizeInt(value.numberDigitalOutputs, 'numberDigitalOutputs'),\n numberDigitalInputs: sanitizer.sanitizeInt(value.numberDigitalInputs, 'numberDigitalInputs'),\n };\n },\n\n convert: (value: BSON.Document): DeviceIOInfo => ({\n numberAnalogOutputs: value.numberAnalogOutputs,\n numberAnalogInputs: value.numberAnalogInputs,\n numberDigitalOutputs: value.numberDigitalOutputs,\n numberDigitalInputs: value.numberDigitalInputs,\n }),\n\n isA: (value: any): value is DeviceIOInfo => {\n const castValue = value as DeviceIOInfo;\n return (\n value != null &&\n typeof value === 'object' &&\n sanitizer.isInt(castValue.numberAnalogOutputs) &&\n sanitizer.isInt(castValue.numberAnalogInputs) &&\n sanitizer.isInt(castValue.numberDigitalOutputs) &&\n sanitizer.isInt(castValue.numberDigitalInputs)\n );\n },\n};\n"]}
@@ -2,13 +2,13 @@
2
2
  * Action type for digital output.
3
3
  */
4
4
  export declare enum DigitalOutputAction {
5
- /** Off */
5
+ /** Set the digital output low. */
6
6
  OFF = 0,
7
- /** On */
7
+ /** Set the digital output high. */
8
8
  ON = 1,
9
- /** Toggle */
9
+ /** Toggle the current state of the digital output. */
10
10
  TOGGLE = 2,
11
- /** Keep */
11
+ /** Leave the digital output in its current state. */
12
12
  KEEP = 3
13
13
  }
14
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"digital_output_action.d.ts","sourceRoot":"","sources":["../../../src/ascii/digital_output_action.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,UAAU;IACV,GAAG,IAAI;IACP,SAAS;IACT,EAAE,IAAI;IACN,aAAa;IACb,MAAM,IAAI;IACV,WAAW;IACX,IAAI,IAAI;CACT;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,mBAAmB,CAE9E"}
1
+ {"version":3,"file":"digital_output_action.d.ts","sourceRoot":"","sources":["../../../src/ascii/digital_output_action.ts"],"names":[],"mappings":"AACA;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,kCAAkC;IAClC,GAAG,IAAI;IACP,mCAAmC;IACnC,EAAE,IAAI;IACN,sDAAsD;IACtD,MAAM,IAAI;IACV,qDAAqD;IACrD,IAAI,IAAI;CACT;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,GAAG,GAAG,KAAK,IAAI,mBAAmB,CAE9E"}