@opentrons/shared-data 0.1.6-alpha.7 → 0.1.6-alpha.9

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 (718) hide show
  1. package/Makefile +29 -2
  2. package/command/index.ts +4 -1
  3. package/command/schemas/10.json +4879 -0
  4. package/command/schemas/11.json +5062 -0
  5. package/command/schemas/8.json +364 -12
  6. package/command/schemas/9.json +4430 -0
  7. package/command/types/gantry.ts +2 -8
  8. package/command/types/incidental.ts +21 -2
  9. package/command/types/index.ts +31 -4
  10. package/command/types/module.ts +77 -2
  11. package/command/types/pipetting.ts +53 -25
  12. package/command/types/setup.ts +26 -3
  13. package/command/types/support.ts +18 -0
  14. package/command/types/unsafe.ts +107 -0
  15. package/deck/definitions/4/ot2_standard.json +6 -1
  16. package/deck/definitions/5/ot3_standard.json +126 -0
  17. package/deck/schemas/5.json +3 -2
  18. package/deck/types/schemaV5.ts +9 -0
  19. package/errors/definitions/1/errors.json +20 -0
  20. package/errors/index.ts +4 -0
  21. package/errors/types/index.ts +15 -0
  22. package/gripper/definitions/1/gripperV1.3.json +29 -0
  23. package/labware/definitions/2/nest_96_wellplate_2ml_deep/2.json +5 -0
  24. package/labware/definitions/2/opentrons_96_deep_well_adapter_nest_wellplate_2ml_deep/1.json +1 -1
  25. package/labware/definitions/2/opentrons_96_deep_well_temp_mod_adapter/1.json +41 -0
  26. package/labware/definitions/2/opentrons_96_flat_bottom_adapter_nest_wellplate_200ul_flat/1.json +1 -1
  27. package/labware/definitions/2/opentrons_96_pcr_adapter_nest_wellplate_100ul_pcr_full_skirt/1.json +1 -1
  28. package/labware/definitions/2/opentrons_96_well_aluminum_block/1.json +1 -1
  29. package/labware/definitions/2/opentrons_aluminum_flat_bottom_plate/1.json +1 -1
  30. package/labware/definitions/2/opentrons_flex_deck_riser/1.json +41 -0
  31. package/labware/definitions/2/opentrons_flex_lid_absorbance_plate_reader_module/1.json +57 -0
  32. package/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +103 -0
  33. package/labware/definitions/2/opentrons_universal_flat_adapter_corning_384_wellplate_112ul_flat/1.json +1 -1
  34. package/labware/definitions/3/agilent_1_reservoir_290ml/2.json +80 -0
  35. package/labware/definitions/3/appliedbiosystemsmicroamp_384_wellplate_40ul/2.json +4730 -0
  36. package/labware/definitions/3/armadillo_96_wellplate_200ul_pcr_full_skirt/3.json +1167 -0
  37. package/labware/definitions/3/axygen_1_reservoir_90ml/2.json +72 -0
  38. package/labware/definitions/3/biorad_384_wellplate_50ul/3.json +4741 -0
  39. package/labware/definitions/3/biorad_96_wellplate_200ul_pcr/3.json +1182 -0
  40. package/labware/definitions/3/corning_12_wellplate_6.9ml_flat/3.json +205 -0
  41. package/labware/definitions/3/corning_24_wellplate_3.4ml_flat/3.json +337 -0
  42. package/labware/definitions/3/corning_384_wellplate_112ul_flat/3.json +5114 -0
  43. package/labware/definitions/3/corning_48_wellplate_1.6ml_flat/3.json +605 -0
  44. package/labware/definitions/3/corning_6_wellplate_16.8ml_flat/3.json +129 -0
  45. package/labware/definitions/3/corning_96_wellplate_360ul_flat/3.json +1172 -0
  46. package/labware/definitions/3/nest_12_reservoir_15ml/2.json +226 -0
  47. package/labware/definitions/3/nest_1_reservoir_195ml/3.json +83 -0
  48. package/labware/definitions/3/nest_1_reservoir_290ml/2.json +70 -0
  49. package/labware/definitions/3/nest_96_wellplate_100ul_pcr_full_skirt/3.json +1161 -0
  50. package/labware/definitions/3/nest_96_wellplate_200ul_flat/3.json +1140 -0
  51. package/labware/definitions/3/nest_96_wellplate_2ml_deep/3.json +1262 -0
  52. package/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/2.json +232 -0
  53. package/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical_acrylic/2.json +230 -0
  54. package/labware/definitions/3/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/2.json +222 -0
  55. package/labware/definitions/3/opentrons_15_tuberack_falcon_15ml_conical/2.json +259 -0
  56. package/labware/definitions/3/opentrons_15_tuberack_nest_15ml_conical/2.json +251 -0
  57. package/labware/definitions/3/opentrons_24_aluminumblock_generic_2ml_screwcap/3.json +330 -0
  58. package/labware/definitions/3/opentrons_24_aluminumblock_nest_0.5ml_screwcap/2.json +370 -0
  59. package/labware/definitions/3/opentrons_24_aluminumblock_nest_1.5ml_screwcap/2.json +356 -0
  60. package/labware/definitions/3/opentrons_24_aluminumblock_nest_1.5ml_snapcap/2.json +351 -0
  61. package/labware/definitions/3/opentrons_24_aluminumblock_nest_2ml_screwcap/2.json +350 -0
  62. package/labware/definitions/3/opentrons_24_aluminumblock_nest_2ml_snapcap/2.json +379 -0
  63. package/labware/definitions/3/opentrons_24_tuberack_eppendorf_1.5ml_safelock_snapcap/2.json +418 -0
  64. package/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/2.json +340 -0
  65. package/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap_acrylic/2.json +338 -0
  66. package/labware/definitions/3/opentrons_24_tuberack_generic_0.75ml_snapcap_acrylic/2.json +327 -0
  67. package/labware/definitions/3/opentrons_24_tuberack_generic_2ml_screwcap/2.json +329 -0
  68. package/labware/definitions/3/opentrons_24_tuberack_nest_0.5ml_screwcap/2.json +371 -0
  69. package/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_screwcap/2.json +357 -0
  70. package/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_snapcap/2.json +352 -0
  71. package/labware/definitions/3/opentrons_24_tuberack_nest_2ml_screwcap/2.json +351 -0
  72. package/labware/definitions/3/opentrons_24_tuberack_nest_2ml_snapcap/2.json +380 -0
  73. package/labware/definitions/3/opentrons_40_aluminumblock_eppendorf_24x2ml_safelock_snapcap_generic_16x0.2ml_pcr_strip/2.json +526 -0
  74. package/labware/definitions/3/opentrons_6_tuberack_falcon_50ml_conical/2.json +145 -0
  75. package/labware/definitions/3/opentrons_6_tuberack_nest_50ml_conical/2.json +143 -0
  76. package/labware/definitions/3/opentrons_96_aluminumblock_biorad_wellplate_200ul/2.json +1165 -0
  77. package/labware/definitions/3/opentrons_96_aluminumblock_generic_pcr_strip_200ul/3.json +1128 -0
  78. package/labware/definitions/3/opentrons_96_aluminumblock_nest_wellplate_100ul/2.json +1149 -0
  79. package/labware/definitions/3/opentrons_96_deep_well_adapter_nest_wellplate_2ml_deep/2.json +1241 -0
  80. package/labware/definitions/3/opentrons_96_flat_bottom_adapter_nest_wellplate_200ul_flat/2.json +1136 -0
  81. package/labware/definitions/3/opentrons_96_pcr_adapter_armadillo_wellplate_200ul/2.json +1149 -0
  82. package/labware/definitions/3/opentrons_96_pcr_adapter_nest_wellplate_100ul_pcr_full_skirt/2.json +1147 -0
  83. package/labware/definitions/3/opentrons_96_wellplate_200ul_pcr_full_skirt/3.json +1167 -0
  84. package/labware/definitions/3/opentrons_universal_flat_adapter_corning_384_wellplate_112ul_flat/2.json +5107 -0
  85. package/labware/definitions/3/thermoscientificnunc_96_wellplate_1300ul/2.json +1134 -0
  86. package/labware/definitions/3/thermoscientificnunc_96_wellplate_2000ul/2.json +1134 -0
  87. package/labware/definitions/3/usascientific_12_reservoir_22ml/2.json +229 -0
  88. package/labware/definitions/3/usascientific_96_wellplate_2.4ml_deep/2.json +1217 -0
  89. package/labware/fixtures/2/fixture_corning_96_wellplate_360_flat.json +1058 -0
  90. package/labware/fixtures/2/fixture_universal_flat_bottom_adapter.json +151 -0
  91. package/labware/fixtures/2/index.ts +11 -7
  92. package/labware/fixtures/3/fixture_2_plate.json +95 -0
  93. package/labware/fixtures/3/fixture_corning_24_plate.json +337 -0
  94. package/labware/repository/fixtures/1/exampleLabwareRepository.json +43 -0
  95. package/labware/repository/schemas/1.json +81 -0
  96. package/labware/schemas/2.json +3 -2
  97. package/labware/schemas/3.json +605 -0
  98. package/lib/command/index.d.ts +4326 -1
  99. package/lib/command/schemas/10.json +4879 -0
  100. package/lib/command/schemas/11.json +5062 -0
  101. package/lib/command/schemas/8.json +364 -12
  102. package/lib/command/schemas/9.json +4430 -0
  103. package/lib/command/types/gantry.d.ts +2 -8
  104. package/lib/command/types/incidental.d.ts +12 -2
  105. package/lib/command/types/index.d.ts +27 -6
  106. package/lib/command/types/module.d.ts +52 -2
  107. package/lib/command/types/pipetting.d.ts +30 -20
  108. package/lib/command/types/setup.d.ts +27 -5
  109. package/lib/command/types/support.d.ts +17 -0
  110. package/lib/command/types/unsafe.d.ts +63 -0
  111. package/lib/deck/definitions/4/ot2_standard.json +6 -1
  112. package/lib/deck/definitions/5/ot3_standard.json +126 -0
  113. package/lib/deck/schemas/5.json +3 -2
  114. package/lib/deck/types/schemaV5.d.ts +2 -2
  115. package/lib/errors/definitions/1/errors.json +20 -0
  116. package/lib/errors/index.d.ts +4 -0
  117. package/lib/errors/types/index.d.ts +13 -0
  118. package/lib/gripper/definitions/1/gripperV1.3.json +29 -0
  119. package/lib/index.mjs +56416 -28182
  120. package/lib/js/__tests__/labwareDefSchemaV3.test.d.ts +1 -0
  121. package/lib/js/constants.d.ts +19 -3
  122. package/lib/js/helpers/__fixtures__/index.d.ts +2 -0
  123. package/lib/js/helpers/__tests__/getAreFlexSlotsAdjacent.test.d.ts +1 -0
  124. package/lib/js/helpers/__tests__/getFixedTrashLabwareDefinition.test.d.ts +1 -0
  125. package/lib/js/helpers/__tests__/parseProtocolCommands.test.d.ts +1 -0
  126. package/lib/js/helpers/__tests__/sortRunTimeParameters.test.d.ts +1 -0
  127. package/lib/js/helpers/formatRunTimeParameterDefaultValue.d.ts +2 -2
  128. package/lib/js/helpers/formatRunTimeParameterValue.d.ts +1 -1
  129. package/lib/js/helpers/getAreFlexSlotsAdjacent.d.ts +2 -0
  130. package/lib/js/helpers/getFixedTrashLabwareDefinition.d.ts +2 -0
  131. package/lib/js/helpers/getFlexSurroundingSlots.d.ts +1 -0
  132. package/lib/js/helpers/getModuleVizDims.d.ts +1 -2
  133. package/lib/js/helpers/getTipTypeFromTipRackDefinition.d.ts +2 -0
  134. package/lib/js/helpers/index.d.ts +6 -0
  135. package/lib/js/helpers/parseProtocolCommands.d.ts +61 -0
  136. package/lib/js/helpers/sortRunTimeParameters.d.ts +9 -0
  137. package/lib/js/helpers/wellSets.d.ts +20 -2
  138. package/lib/js/labware.d.ts +4 -0
  139. package/lib/js/labwareTools/index.d.ts +3 -1
  140. package/lib/js/pipettes.d.ts +1 -1
  141. package/lib/js/protocols.d.ts +1 -1
  142. package/lib/js/types.d.ts +144 -24
  143. package/lib/labware/definitions/2/nest_96_wellplate_2ml_deep/2.json +5 -0
  144. package/lib/labware/definitions/2/opentrons_96_deep_well_adapter_nest_wellplate_2ml_deep/1.json +1 -1
  145. package/lib/labware/definitions/2/opentrons_96_deep_well_temp_mod_adapter/1.json +41 -0
  146. package/lib/labware/definitions/2/opentrons_96_flat_bottom_adapter_nest_wellplate_200ul_flat/1.json +1 -1
  147. package/lib/labware/definitions/2/opentrons_96_pcr_adapter_nest_wellplate_100ul_pcr_full_skirt/1.json +1 -1
  148. package/lib/labware/definitions/2/opentrons_96_well_aluminum_block/1.json +1 -1
  149. package/lib/labware/definitions/2/opentrons_aluminum_flat_bottom_plate/1.json +1 -1
  150. package/lib/labware/definitions/2/opentrons_flex_deck_riser/1.json +41 -0
  151. package/lib/labware/definitions/2/opentrons_flex_lid_absorbance_plate_reader_module/1.json +57 -0
  152. package/lib/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +103 -0
  153. package/lib/labware/definitions/2/opentrons_universal_flat_adapter_corning_384_wellplate_112ul_flat/1.json +1 -1
  154. package/lib/labware/definitions/3/agilent_1_reservoir_290ml/2.json +80 -0
  155. package/lib/labware/definitions/3/appliedbiosystemsmicroamp_384_wellplate_40ul/2.json +4730 -0
  156. package/lib/labware/definitions/3/armadillo_96_wellplate_200ul_pcr_full_skirt/3.json +1167 -0
  157. package/lib/labware/definitions/3/axygen_1_reservoir_90ml/2.json +72 -0
  158. package/lib/labware/definitions/3/biorad_384_wellplate_50ul/3.json +4741 -0
  159. package/lib/labware/definitions/3/biorad_96_wellplate_200ul_pcr/3.json +1182 -0
  160. package/lib/labware/definitions/3/corning_12_wellplate_6.9ml_flat/3.json +205 -0
  161. package/lib/labware/definitions/3/corning_24_wellplate_3.4ml_flat/3.json +337 -0
  162. package/lib/labware/definitions/3/corning_384_wellplate_112ul_flat/3.json +5114 -0
  163. package/lib/labware/definitions/3/corning_48_wellplate_1.6ml_flat/3.json +605 -0
  164. package/lib/labware/definitions/3/corning_6_wellplate_16.8ml_flat/3.json +129 -0
  165. package/lib/labware/definitions/3/corning_96_wellplate_360ul_flat/3.json +1172 -0
  166. package/lib/labware/definitions/3/nest_12_reservoir_15ml/2.json +226 -0
  167. package/lib/labware/definitions/3/nest_1_reservoir_195ml/3.json +83 -0
  168. package/lib/labware/definitions/3/nest_1_reservoir_290ml/2.json +70 -0
  169. package/lib/labware/definitions/3/nest_96_wellplate_100ul_pcr_full_skirt/3.json +1161 -0
  170. package/lib/labware/definitions/3/nest_96_wellplate_200ul_flat/3.json +1140 -0
  171. package/lib/labware/definitions/3/nest_96_wellplate_2ml_deep/3.json +1262 -0
  172. package/lib/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/2.json +232 -0
  173. package/lib/labware/definitions/3/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical_acrylic/2.json +230 -0
  174. package/lib/labware/definitions/3/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/2.json +222 -0
  175. package/lib/labware/definitions/3/opentrons_15_tuberack_falcon_15ml_conical/2.json +259 -0
  176. package/lib/labware/definitions/3/opentrons_15_tuberack_nest_15ml_conical/2.json +251 -0
  177. package/lib/labware/definitions/3/opentrons_24_aluminumblock_generic_2ml_screwcap/3.json +330 -0
  178. package/lib/labware/definitions/3/opentrons_24_aluminumblock_nest_0.5ml_screwcap/2.json +370 -0
  179. package/lib/labware/definitions/3/opentrons_24_aluminumblock_nest_1.5ml_screwcap/2.json +356 -0
  180. package/lib/labware/definitions/3/opentrons_24_aluminumblock_nest_1.5ml_snapcap/2.json +351 -0
  181. package/lib/labware/definitions/3/opentrons_24_aluminumblock_nest_2ml_screwcap/2.json +350 -0
  182. package/lib/labware/definitions/3/opentrons_24_aluminumblock_nest_2ml_snapcap/2.json +379 -0
  183. package/lib/labware/definitions/3/opentrons_24_tuberack_eppendorf_1.5ml_safelock_snapcap/2.json +418 -0
  184. package/lib/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/2.json +340 -0
  185. package/lib/labware/definitions/3/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap_acrylic/2.json +338 -0
  186. package/lib/labware/definitions/3/opentrons_24_tuberack_generic_0.75ml_snapcap_acrylic/2.json +327 -0
  187. package/lib/labware/definitions/3/opentrons_24_tuberack_generic_2ml_screwcap/2.json +329 -0
  188. package/lib/labware/definitions/3/opentrons_24_tuberack_nest_0.5ml_screwcap/2.json +371 -0
  189. package/lib/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_screwcap/2.json +357 -0
  190. package/lib/labware/definitions/3/opentrons_24_tuberack_nest_1.5ml_snapcap/2.json +352 -0
  191. package/lib/labware/definitions/3/opentrons_24_tuberack_nest_2ml_screwcap/2.json +351 -0
  192. package/lib/labware/definitions/3/opentrons_24_tuberack_nest_2ml_snapcap/2.json +380 -0
  193. package/lib/labware/definitions/3/opentrons_40_aluminumblock_eppendorf_24x2ml_safelock_snapcap_generic_16x0.2ml_pcr_strip/2.json +526 -0
  194. package/lib/labware/definitions/3/opentrons_6_tuberack_falcon_50ml_conical/2.json +145 -0
  195. package/lib/labware/definitions/3/opentrons_6_tuberack_nest_50ml_conical/2.json +143 -0
  196. package/lib/labware/definitions/3/opentrons_96_aluminumblock_biorad_wellplate_200ul/2.json +1165 -0
  197. package/lib/labware/definitions/3/opentrons_96_aluminumblock_generic_pcr_strip_200ul/3.json +1128 -0
  198. package/lib/labware/definitions/3/opentrons_96_aluminumblock_nest_wellplate_100ul/2.json +1149 -0
  199. package/lib/labware/definitions/3/opentrons_96_deep_well_adapter_nest_wellplate_2ml_deep/2.json +1241 -0
  200. package/lib/labware/definitions/3/opentrons_96_flat_bottom_adapter_nest_wellplate_200ul_flat/2.json +1136 -0
  201. package/lib/labware/definitions/3/opentrons_96_pcr_adapter_armadillo_wellplate_200ul/2.json +1149 -0
  202. package/lib/labware/definitions/3/opentrons_96_pcr_adapter_nest_wellplate_100ul_pcr_full_skirt/2.json +1147 -0
  203. package/lib/labware/definitions/3/opentrons_96_wellplate_200ul_pcr_full_skirt/3.json +1167 -0
  204. package/lib/labware/definitions/3/opentrons_universal_flat_adapter_corning_384_wellplate_112ul_flat/2.json +5107 -0
  205. package/lib/labware/definitions/3/thermoscientificnunc_96_wellplate_1300ul/2.json +1134 -0
  206. package/lib/labware/definitions/3/thermoscientificnunc_96_wellplate_2000ul/2.json +1134 -0
  207. package/lib/labware/definitions/3/usascientific_12_reservoir_22ml/2.json +229 -0
  208. package/lib/labware/definitions/3/usascientific_96_wellplate_2.4ml_deep/2.json +1217 -0
  209. package/lib/labware/fixtures/2/fixture_corning_96_wellplate_360_flat.json +1058 -0
  210. package/lib/labware/fixtures/2/fixture_universal_flat_bottom_adapter.json +151 -0
  211. package/lib/labware/fixtures/2/index.d.ts +7 -5
  212. package/lib/labware/fixtures/3/fixture_2_plate.json +95 -0
  213. package/lib/labware/fixtures/3/fixture_corning_24_plate.json +337 -0
  214. package/lib/labware/repository/fixtures/1/exampleLabwareRepository.json +43 -0
  215. package/lib/labware/repository/schemas/1.json +81 -0
  216. package/lib/labware/schemas/2.json +3 -2
  217. package/lib/labware/schemas/3.json +605 -0
  218. package/lib/module/definitions/3/absorbanceReaderV1.json +184 -0
  219. package/lib/module/definitions/3/heaterShakerModuleV1.json +1 -0
  220. package/lib/module/definitions/3/magneticBlockV1.json +1 -0
  221. package/lib/module/definitions/3/magneticModuleV1.json +1 -0
  222. package/lib/module/definitions/3/magneticModuleV2.json +1 -0
  223. package/lib/module/definitions/3/temperatureModuleV1.json +1 -0
  224. package/lib/module/definitions/3/temperatureModuleV2.json +1 -0
  225. package/lib/module/definitions/3/thermocyclerModuleV1.json +1 -0
  226. package/lib/module/definitions/3/thermocyclerModuleV2.json +1 -0
  227. package/lib/module/schemas/3.json +12 -3
  228. package/lib/pipette/definitions/2/general/eight_channel/p10/1_0.json +158 -29
  229. package/lib/pipette/definitions/2/general/eight_channel/p10/1_3.json +158 -29
  230. package/lib/pipette/definitions/2/general/eight_channel/p10/1_4.json +158 -29
  231. package/lib/pipette/definitions/2/general/eight_channel/p10/1_5.json +158 -29
  232. package/lib/pipette/definitions/2/general/eight_channel/p10/1_6.json +158 -29
  233. package/lib/pipette/definitions/2/general/eight_channel/p1000/1_0.json +149 -29
  234. package/lib/pipette/definitions/2/general/eight_channel/p1000/3_0.json +176 -29
  235. package/lib/pipette/definitions/2/general/eight_channel/p1000/3_3.json +176 -29
  236. package/lib/pipette/definitions/2/general/eight_channel/p1000/3_4.json +266 -29
  237. package/lib/pipette/definitions/2/general/eight_channel/p1000/3_5.json +266 -29
  238. package/lib/pipette/definitions/2/general/eight_channel/p20/2_0.json +176 -29
  239. package/lib/pipette/definitions/2/general/eight_channel/p20/2_1.json +176 -29
  240. package/lib/pipette/definitions/2/general/eight_channel/p300/1_0.json +149 -29
  241. package/lib/pipette/definitions/2/general/eight_channel/p300/1_3.json +149 -29
  242. package/lib/pipette/definitions/2/general/eight_channel/p300/1_4.json +149 -29
  243. package/lib/pipette/definitions/2/general/eight_channel/p300/1_5.json +149 -29
  244. package/lib/pipette/definitions/2/general/eight_channel/p300/2_0.json +140 -29
  245. package/lib/pipette/definitions/2/general/eight_channel/p300/2_1.json +140 -29
  246. package/lib/pipette/definitions/2/general/eight_channel/p50/1_0.json +149 -29
  247. package/lib/pipette/definitions/2/general/eight_channel/p50/1_3.json +149 -29
  248. package/lib/pipette/definitions/2/general/eight_channel/p50/1_4.json +149 -29
  249. package/lib/pipette/definitions/2/general/eight_channel/p50/1_5.json +149 -29
  250. package/lib/pipette/definitions/2/general/eight_channel/p50/3_0.json +140 -29
  251. package/lib/pipette/definitions/2/general/eight_channel/p50/3_3.json +140 -29
  252. package/lib/pipette/definitions/2/general/eight_channel/p50/3_4.json +190 -29
  253. package/lib/pipette/definitions/2/general/eight_channel/p50/3_5.json +190 -29
  254. package/lib/pipette/definitions/2/general/ninety_six_channel/p1000/1_0.json +488 -45
  255. package/lib/pipette/definitions/2/general/ninety_six_channel/p1000/3_0.json +488 -45
  256. package/lib/pipette/definitions/2/general/ninety_six_channel/p1000/3_3.json +488 -45
  257. package/lib/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json +656 -45
  258. package/lib/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json +790 -45
  259. package/lib/pipette/definitions/2/general/ninety_six_channel/p1000/3_6.json +750 -45
  260. package/lib/pipette/definitions/2/general/ninety_six_channel/p200/3_0.json +660 -0
  261. package/lib/pipette/definitions/2/general/single_channel/p10/1_0.json +22 -8
  262. package/lib/pipette/definitions/2/general/single_channel/p10/1_3.json +22 -8
  263. package/lib/pipette/definitions/2/general/single_channel/p10/1_4.json +22 -8
  264. package/lib/pipette/definitions/2/general/single_channel/p10/1_5.json +22 -8
  265. package/lib/pipette/definitions/2/general/single_channel/p1000/1_0.json +22 -8
  266. package/lib/pipette/definitions/2/general/single_channel/p1000/1_3.json +22 -8
  267. package/lib/pipette/definitions/2/general/single_channel/p1000/1_4.json +22 -8
  268. package/lib/pipette/definitions/2/general/single_channel/p1000/1_5.json +22 -8
  269. package/lib/pipette/definitions/2/general/single_channel/p1000/2_0.json +21 -8
  270. package/lib/pipette/definitions/2/general/single_channel/p1000/2_1.json +21 -8
  271. package/lib/pipette/definitions/2/general/single_channel/p1000/2_2.json +21 -8
  272. package/lib/pipette/definitions/2/general/single_channel/p1000/3_0.json +24 -8
  273. package/lib/pipette/definitions/2/general/single_channel/p1000/3_3.json +24 -8
  274. package/lib/pipette/definitions/2/general/single_channel/p1000/3_4.json +33 -8
  275. package/lib/pipette/definitions/2/general/single_channel/p1000/3_5.json +33 -8
  276. package/lib/pipette/definitions/2/general/single_channel/p1000/3_6.json +33 -8
  277. package/lib/pipette/definitions/2/general/single_channel/p1000/3_7.json +81 -0
  278. package/lib/pipette/definitions/2/general/single_channel/p20/2_0.json +24 -8
  279. package/lib/pipette/definitions/2/general/single_channel/p20/2_1.json +24 -8
  280. package/lib/pipette/definitions/2/general/single_channel/p20/2_2.json +24 -8
  281. package/lib/pipette/definitions/2/general/single_channel/p300/1_0.json +21 -8
  282. package/lib/pipette/definitions/2/general/single_channel/p300/1_3.json +21 -8
  283. package/lib/pipette/definitions/2/general/single_channel/p300/1_4.json +21 -8
  284. package/lib/pipette/definitions/2/general/single_channel/p300/1_5.json +21 -8
  285. package/lib/pipette/definitions/2/general/single_channel/p300/2_0.json +20 -8
  286. package/lib/pipette/definitions/2/general/single_channel/p300/2_1.json +20 -8
  287. package/lib/pipette/definitions/2/general/single_channel/p50/1_0.json +21 -8
  288. package/lib/pipette/definitions/2/general/single_channel/p50/1_3.json +21 -8
  289. package/lib/pipette/definitions/2/general/single_channel/p50/1_4.json +21 -8
  290. package/lib/pipette/definitions/2/general/single_channel/p50/1_5.json +21 -8
  291. package/lib/pipette/definitions/2/general/single_channel/p50/3_0.json +20 -8
  292. package/lib/pipette/definitions/2/general/single_channel/p50/3_3.json +20 -8
  293. package/lib/pipette/definitions/2/general/single_channel/p50/3_4.json +25 -8
  294. package/lib/pipette/definitions/2/general/single_channel/p50/3_5.json +25 -8
  295. package/lib/pipette/definitions/2/general/single_channel/p50/3_6.json +25 -8
  296. package/lib/pipette/definitions/2/geometry/eight_channel/p10/1_0.json +2 -1
  297. package/lib/pipette/definitions/2/geometry/eight_channel/p10/1_3.json +2 -1
  298. package/lib/pipette/definitions/2/geometry/eight_channel/p10/1_4.json +2 -1
  299. package/lib/pipette/definitions/2/geometry/eight_channel/p10/1_5.json +2 -1
  300. package/lib/pipette/definitions/2/geometry/eight_channel/p10/1_6.json +2 -1
  301. package/lib/pipette/definitions/2/geometry/eight_channel/p1000/1_0.json +2 -1
  302. package/lib/pipette/definitions/2/geometry/eight_channel/p1000/3_0.json +14 -0
  303. package/lib/pipette/definitions/2/geometry/eight_channel/p1000/3_3.json +14 -0
  304. package/lib/pipette/definitions/2/geometry/eight_channel/p1000/3_4.json +14 -0
  305. package/lib/pipette/definitions/2/geometry/eight_channel/p1000/3_5.json +14 -0
  306. package/lib/pipette/definitions/2/geometry/eight_channel/p20/2_0.json +2 -1
  307. package/lib/pipette/definitions/2/geometry/eight_channel/p20/2_1.json +2 -1
  308. package/lib/pipette/definitions/2/geometry/eight_channel/p300/1_0.json +2 -1
  309. package/lib/pipette/definitions/2/geometry/eight_channel/p300/1_3.json +2 -1
  310. package/lib/pipette/definitions/2/geometry/eight_channel/p300/1_4.json +2 -1
  311. package/lib/pipette/definitions/2/geometry/eight_channel/p300/1_5.json +2 -1
  312. package/lib/pipette/definitions/2/geometry/eight_channel/p300/2_0.json +2 -1
  313. package/lib/pipette/definitions/2/geometry/eight_channel/p300/2_1.json +2 -1
  314. package/lib/pipette/definitions/2/geometry/eight_channel/p50/1_0.json +2 -1
  315. package/lib/pipette/definitions/2/geometry/eight_channel/p50/1_3.json +2 -1
  316. package/lib/pipette/definitions/2/geometry/eight_channel/p50/1_4.json +2 -1
  317. package/lib/pipette/definitions/2/geometry/eight_channel/p50/1_5.json +2 -1
  318. package/lib/pipette/definitions/2/geometry/eight_channel/p50/3_0.json +6 -0
  319. package/lib/pipette/definitions/2/geometry/eight_channel/p50/3_3.json +6 -0
  320. package/lib/pipette/definitions/2/geometry/eight_channel/p50/3_4.json +6 -0
  321. package/lib/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +6 -0
  322. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p1000/1_0.json +2 -1
  323. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_0.json +14 -0
  324. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_3.json +14 -0
  325. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_4.json +14 -0
  326. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_5.json +14 -0
  327. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_6.json +14 -0
  328. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p200/3_0.json +305 -0
  329. package/lib/pipette/definitions/2/geometry/single_channel/p10/1_0.json +2 -1
  330. package/lib/pipette/definitions/2/geometry/single_channel/p10/1_3.json +2 -1
  331. package/lib/pipette/definitions/2/geometry/single_channel/p10/1_4.json +2 -1
  332. package/lib/pipette/definitions/2/geometry/single_channel/p10/1_5.json +2 -1
  333. package/lib/pipette/definitions/2/geometry/single_channel/p1000/1_0.json +2 -1
  334. package/lib/pipette/definitions/2/geometry/single_channel/p1000/1_3.json +2 -1
  335. package/lib/pipette/definitions/2/geometry/single_channel/p1000/1_4.json +2 -1
  336. package/lib/pipette/definitions/2/geometry/single_channel/p1000/1_5.json +2 -1
  337. package/lib/pipette/definitions/2/geometry/single_channel/p1000/2_0.json +2 -1
  338. package/lib/pipette/definitions/2/geometry/single_channel/p1000/2_1.json +2 -1
  339. package/lib/pipette/definitions/2/geometry/single_channel/p1000/2_2.json +2 -1
  340. package/lib/pipette/definitions/2/geometry/single_channel/p1000/3_0.json +14 -0
  341. package/lib/pipette/definitions/2/geometry/single_channel/p1000/3_3.json +14 -0
  342. package/lib/pipette/definitions/2/geometry/single_channel/p1000/3_4.json +14 -0
  343. package/lib/pipette/definitions/2/geometry/single_channel/p1000/3_5.json +14 -0
  344. package/lib/pipette/definitions/2/geometry/single_channel/p1000/3_6.json +14 -0
  345. package/lib/pipette/definitions/2/geometry/single_channel/p1000/3_7.json +28 -0
  346. package/lib/pipette/definitions/2/geometry/single_channel/p20/2_0.json +2 -1
  347. package/lib/pipette/definitions/2/geometry/single_channel/p20/2_1.json +2 -1
  348. package/lib/pipette/definitions/2/geometry/single_channel/p20/2_2.json +2 -1
  349. package/lib/pipette/definitions/2/geometry/single_channel/p300/1_0.json +2 -1
  350. package/lib/pipette/definitions/2/geometry/single_channel/p300/1_3.json +2 -1
  351. package/lib/pipette/definitions/2/geometry/single_channel/p300/1_4.json +2 -1
  352. package/lib/pipette/definitions/2/geometry/single_channel/p300/1_5.json +2 -1
  353. package/lib/pipette/definitions/2/geometry/single_channel/p300/2_0.json +2 -1
  354. package/lib/pipette/definitions/2/geometry/single_channel/p300/2_1.json +2 -1
  355. package/lib/pipette/definitions/2/geometry/single_channel/p50/1_0.json +2 -1
  356. package/lib/pipette/definitions/2/geometry/single_channel/p50/1_3.json +2 -1
  357. package/lib/pipette/definitions/2/geometry/single_channel/p50/1_4.json +2 -1
  358. package/lib/pipette/definitions/2/geometry/single_channel/p50/1_5.json +2 -1
  359. package/lib/pipette/definitions/2/geometry/single_channel/p50/3_0.json +6 -0
  360. package/lib/pipette/definitions/2/geometry/single_channel/p50/3_3.json +6 -0
  361. package/lib/pipette/definitions/2/geometry/single_channel/p50/3_4.json +6 -0
  362. package/lib/pipette/definitions/2/geometry/single_channel/p50/3_5.json +6 -0
  363. package/lib/pipette/definitions/2/geometry/single_channel/p50/3_6.json +6 -0
  364. package/lib/pipette/definitions/2/liquid/eight_channel/p10/default/1_0.json +0 -7
  365. package/lib/pipette/definitions/2/liquid/eight_channel/p10/default/1_3.json +0 -7
  366. package/lib/pipette/definitions/2/liquid/eight_channel/p10/default/1_4.json +0 -7
  367. package/lib/pipette/definitions/2/liquid/eight_channel/p10/default/1_5.json +0 -7
  368. package/lib/pipette/definitions/2/liquid/eight_channel/p10/default/1_6.json +0 -7
  369. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/default/1_0.json +0 -6
  370. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/default/3_0.json +0 -9
  371. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/default/3_3.json +0 -9
  372. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/default/3_4.json +0 -9
  373. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/default/3_5.json +0 -9
  374. package/lib/pipette/definitions/2/liquid/eight_channel/p20/default/2_0.json +0 -9
  375. package/lib/pipette/definitions/2/liquid/eight_channel/p20/default/2_1.json +0 -9
  376. package/lib/pipette/definitions/2/liquid/eight_channel/p300/default/1_0.json +0 -6
  377. package/lib/pipette/definitions/2/liquid/eight_channel/p300/default/1_3.json +0 -6
  378. package/lib/pipette/definitions/2/liquid/eight_channel/p300/default/1_4.json +0 -6
  379. package/lib/pipette/definitions/2/liquid/eight_channel/p300/default/1_5.json +0 -6
  380. package/lib/pipette/definitions/2/liquid/eight_channel/p300/default/2_0.json +0 -5
  381. package/lib/pipette/definitions/2/liquid/eight_channel/p300/default/2_1.json +0 -5
  382. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/1_0.json +0 -6
  383. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/1_3.json +0 -6
  384. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/1_4.json +0 -6
  385. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/1_5.json +0 -6
  386. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/3_0.json +0 -5
  387. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/3_3.json +0 -5
  388. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/3_4.json +1 -6
  389. package/lib/pipette/definitions/2/liquid/eight_channel/p50/default/3_5.json +1 -6
  390. package/lib/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_0.json +0 -5
  391. package/lib/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_3.json +0 -5
  392. package/lib/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_4.json +0 -5
  393. package/lib/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_5.json +0 -5
  394. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/1_0.json +8 -17
  395. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_0.json +8 -17
  396. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_3.json +8 -17
  397. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_4.json +8 -17
  398. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_5.json +8 -17
  399. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_6.json +4 -7
  400. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_0.json +121 -0
  401. package/lib/pipette/definitions/2/liquid/single_channel/p10/default/1_0.json +0 -7
  402. package/lib/pipette/definitions/2/liquid/single_channel/p10/default/1_3.json +0 -7
  403. package/lib/pipette/definitions/2/liquid/single_channel/p10/default/1_4.json +0 -7
  404. package/lib/pipette/definitions/2/liquid/single_channel/p10/default/1_5.json +0 -7
  405. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/1_0.json +0 -7
  406. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/1_3.json +0 -7
  407. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/1_4.json +0 -7
  408. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/1_5.json +0 -7
  409. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/2_0.json +0 -6
  410. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/2_1.json +0 -6
  411. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/2_2.json +0 -6
  412. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/3_0.json +0 -9
  413. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/3_3.json +0 -9
  414. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/3_4.json +0 -9
  415. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/3_5.json +0 -9
  416. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/3_6.json +0 -9
  417. package/lib/pipette/definitions/2/liquid/single_channel/p1000/default/3_7.json +204 -0
  418. package/lib/pipette/definitions/2/liquid/single_channel/p20/default/2_0.json +0 -9
  419. package/lib/pipette/definitions/2/liquid/single_channel/p20/default/2_1.json +0 -9
  420. package/lib/pipette/definitions/2/liquid/single_channel/p20/default/2_2.json +0 -9
  421. package/lib/pipette/definitions/2/liquid/single_channel/p300/default/1_0.json +0 -6
  422. package/lib/pipette/definitions/2/liquid/single_channel/p300/default/1_3.json +0 -6
  423. package/lib/pipette/definitions/2/liquid/single_channel/p300/default/1_4.json +0 -6
  424. package/lib/pipette/definitions/2/liquid/single_channel/p300/default/1_5.json +0 -6
  425. package/lib/pipette/definitions/2/liquid/single_channel/p300/default/2_0.json +0 -5
  426. package/lib/pipette/definitions/2/liquid/single_channel/p300/default/2_1.json +0 -5
  427. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/1_0.json +0 -6
  428. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/1_3.json +0 -6
  429. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/1_4.json +0 -6
  430. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/1_5.json +0 -6
  431. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_0.json +0 -5
  432. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_3.json +0 -5
  433. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_4.json +1 -6
  434. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_5.json +1 -6
  435. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_6.json +39 -44
  436. package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_0.json +0 -5
  437. package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_3.json +0 -5
  438. package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_4.json +0 -5
  439. package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_5.json +0 -5
  440. package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_6.json +39 -42
  441. package/lib/pipette/schemas/2/pipetteGeometrySchema.json +28 -0
  442. package/lib/pipette/schemas/2/pipetteLiquidPropertiesSchema.json +1 -12
  443. package/lib/pipette/schemas/2/pipettePropertiesSchema.json +47 -35
  444. package/lib/protocol/fixtures/6/heaterShakerCommands.json +18 -18
  445. package/lib/protocol/fixtures/6/heaterShakerCommandsWithResultsKey.json +7 -7
  446. package/lib/protocol/fixtures/6/multipleTempModules.json +58 -58
  447. package/lib/protocol/fixtures/6/multipleTipracks.json +60 -60
  448. package/lib/protocol/fixtures/6/multipleTipracksWithTC.json +65 -65
  449. package/lib/protocol/fixtures/6/oneTiprack.json +14 -14
  450. package/lib/protocol/fixtures/6/simpleV6.json +24 -24
  451. package/lib/protocol/fixtures/6/tempAndMagModuleCommands.json +17 -17
  452. package/lib/protocol/fixtures/6/transferSettings.json +58 -58
  453. package/lib/protocol/fixtures/7/simpleV7.json +26 -26
  454. package/lib/protocol/fixtures/8/simpleFlexV10CommandsV8.json +1475 -0
  455. package/lib/protocol/fixtures/8/simpleFlexV9CommandsV8.json +1475 -0
  456. package/lib/protocol/fixtures/8/simpleV10CommandsV8.json +1473 -0
  457. package/lib/protocol/fixtures/8/simpleV9CommandsV8.json +1473 -0
  458. package/lib/protocol/types/schemaV3.d.ts +1 -1
  459. package/lib/protocol/types/schemaV6/command/index.d.ts +2 -1
  460. package/lib/protocol/types/schemaV6/index.d.ts +1 -1
  461. package/lib/protocol/types/schemaV7/index.d.ts +1 -1
  462. package/lib/protocol/types/schemaV8/index.d.ts +6 -1
  463. package/liquid-class/fixtures/fixture_glycerol50.json +240 -0
  464. package/liquid-class/schemas/1.json +486 -0
  465. package/module/definitions/3/absorbanceReaderV1.json +184 -0
  466. package/module/definitions/3/heaterShakerModuleV1.json +1 -0
  467. package/module/definitions/3/magneticBlockV1.json +1 -0
  468. package/module/definitions/3/magneticModuleV1.json +1 -0
  469. package/module/definitions/3/magneticModuleV2.json +1 -0
  470. package/module/definitions/3/temperatureModuleV1.json +1 -0
  471. package/module/definitions/3/temperatureModuleV2.json +1 -0
  472. package/module/definitions/3/thermocyclerModuleV1.json +1 -0
  473. package/module/definitions/3/thermocyclerModuleV2.json +1 -0
  474. package/module/schemas/3.json +12 -3
  475. package/package.json +1 -1
  476. package/pipette/definitions/2/general/eight_channel/p10/1_0.json +158 -29
  477. package/pipette/definitions/2/general/eight_channel/p10/1_3.json +158 -29
  478. package/pipette/definitions/2/general/eight_channel/p10/1_4.json +158 -29
  479. package/pipette/definitions/2/general/eight_channel/p10/1_5.json +158 -29
  480. package/pipette/definitions/2/general/eight_channel/p10/1_6.json +158 -29
  481. package/pipette/definitions/2/general/eight_channel/p1000/1_0.json +149 -29
  482. package/pipette/definitions/2/general/eight_channel/p1000/3_0.json +176 -29
  483. package/pipette/definitions/2/general/eight_channel/p1000/3_3.json +176 -29
  484. package/pipette/definitions/2/general/eight_channel/p1000/3_4.json +266 -29
  485. package/pipette/definitions/2/general/eight_channel/p1000/3_5.json +266 -29
  486. package/pipette/definitions/2/general/eight_channel/p20/2_0.json +176 -29
  487. package/pipette/definitions/2/general/eight_channel/p20/2_1.json +176 -29
  488. package/pipette/definitions/2/general/eight_channel/p300/1_0.json +149 -29
  489. package/pipette/definitions/2/general/eight_channel/p300/1_3.json +149 -29
  490. package/pipette/definitions/2/general/eight_channel/p300/1_4.json +149 -29
  491. package/pipette/definitions/2/general/eight_channel/p300/1_5.json +149 -29
  492. package/pipette/definitions/2/general/eight_channel/p300/2_0.json +140 -29
  493. package/pipette/definitions/2/general/eight_channel/p300/2_1.json +140 -29
  494. package/pipette/definitions/2/general/eight_channel/p50/1_0.json +149 -29
  495. package/pipette/definitions/2/general/eight_channel/p50/1_3.json +149 -29
  496. package/pipette/definitions/2/general/eight_channel/p50/1_4.json +149 -29
  497. package/pipette/definitions/2/general/eight_channel/p50/1_5.json +149 -29
  498. package/pipette/definitions/2/general/eight_channel/p50/3_0.json +140 -29
  499. package/pipette/definitions/2/general/eight_channel/p50/3_3.json +140 -29
  500. package/pipette/definitions/2/general/eight_channel/p50/3_4.json +190 -29
  501. package/pipette/definitions/2/general/eight_channel/p50/3_5.json +190 -29
  502. package/pipette/definitions/2/general/ninety_six_channel/p1000/1_0.json +488 -45
  503. package/pipette/definitions/2/general/ninety_six_channel/p1000/3_0.json +488 -45
  504. package/pipette/definitions/2/general/ninety_six_channel/p1000/3_3.json +488 -45
  505. package/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json +656 -46
  506. package/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json +790 -45
  507. package/pipette/definitions/2/general/ninety_six_channel/p1000/3_6.json +750 -46
  508. package/pipette/definitions/2/general/ninety_six_channel/p200/3_0.json +660 -0
  509. package/pipette/definitions/2/general/single_channel/p10/1_0.json +22 -8
  510. package/pipette/definitions/2/general/single_channel/p10/1_3.json +22 -8
  511. package/pipette/definitions/2/general/single_channel/p10/1_4.json +22 -8
  512. package/pipette/definitions/2/general/single_channel/p10/1_5.json +22 -8
  513. package/pipette/definitions/2/general/single_channel/p1000/1_0.json +22 -8
  514. package/pipette/definitions/2/general/single_channel/p1000/1_3.json +22 -8
  515. package/pipette/definitions/2/general/single_channel/p1000/1_4.json +22 -8
  516. package/pipette/definitions/2/general/single_channel/p1000/1_5.json +22 -8
  517. package/pipette/definitions/2/general/single_channel/p1000/2_0.json +21 -8
  518. package/pipette/definitions/2/general/single_channel/p1000/2_1.json +21 -8
  519. package/pipette/definitions/2/general/single_channel/p1000/2_2.json +21 -8
  520. package/pipette/definitions/2/general/single_channel/p1000/3_0.json +24 -8
  521. package/pipette/definitions/2/general/single_channel/p1000/3_3.json +24 -8
  522. package/pipette/definitions/2/general/single_channel/p1000/3_4.json +33 -8
  523. package/pipette/definitions/2/general/single_channel/p1000/3_5.json +33 -8
  524. package/pipette/definitions/2/general/single_channel/p1000/3_6.json +33 -8
  525. package/pipette/definitions/2/general/single_channel/p1000/3_7.json +81 -0
  526. package/pipette/definitions/2/general/single_channel/p20/2_0.json +24 -8
  527. package/pipette/definitions/2/general/single_channel/p20/2_1.json +24 -8
  528. package/pipette/definitions/2/general/single_channel/p20/2_2.json +24 -8
  529. package/pipette/definitions/2/general/single_channel/p300/1_0.json +21 -8
  530. package/pipette/definitions/2/general/single_channel/p300/1_3.json +21 -8
  531. package/pipette/definitions/2/general/single_channel/p300/1_4.json +21 -8
  532. package/pipette/definitions/2/general/single_channel/p300/1_5.json +21 -8
  533. package/pipette/definitions/2/general/single_channel/p300/2_0.json +20 -8
  534. package/pipette/definitions/2/general/single_channel/p300/2_1.json +20 -8
  535. package/pipette/definitions/2/general/single_channel/p50/1_0.json +21 -8
  536. package/pipette/definitions/2/general/single_channel/p50/1_3.json +21 -8
  537. package/pipette/definitions/2/general/single_channel/p50/1_4.json +21 -8
  538. package/pipette/definitions/2/general/single_channel/p50/1_5.json +21 -8
  539. package/pipette/definitions/2/general/single_channel/p50/3_0.json +20 -8
  540. package/pipette/definitions/2/general/single_channel/p50/3_3.json +20 -8
  541. package/pipette/definitions/2/general/single_channel/p50/3_4.json +25 -8
  542. package/pipette/definitions/2/general/single_channel/p50/3_5.json +25 -8
  543. package/pipette/definitions/2/general/single_channel/p50/3_6.json +25 -8
  544. package/pipette/definitions/2/geometry/eight_channel/p10/1_0.json +2 -1
  545. package/pipette/definitions/2/geometry/eight_channel/p10/1_3.json +2 -1
  546. package/pipette/definitions/2/geometry/eight_channel/p10/1_4.json +2 -1
  547. package/pipette/definitions/2/geometry/eight_channel/p10/1_5.json +2 -1
  548. package/pipette/definitions/2/geometry/eight_channel/p10/1_6.json +2 -1
  549. package/pipette/definitions/2/geometry/eight_channel/p1000/1_0.json +2 -1
  550. package/pipette/definitions/2/geometry/eight_channel/p1000/3_0.json +14 -0
  551. package/pipette/definitions/2/geometry/eight_channel/p1000/3_3.json +14 -0
  552. package/pipette/definitions/2/geometry/eight_channel/p1000/3_4.json +14 -0
  553. package/pipette/definitions/2/geometry/eight_channel/p1000/3_5.json +14 -0
  554. package/pipette/definitions/2/geometry/eight_channel/p20/2_0.json +2 -1
  555. package/pipette/definitions/2/geometry/eight_channel/p20/2_1.json +2 -1
  556. package/pipette/definitions/2/geometry/eight_channel/p300/1_0.json +2 -1
  557. package/pipette/definitions/2/geometry/eight_channel/p300/1_3.json +2 -1
  558. package/pipette/definitions/2/geometry/eight_channel/p300/1_4.json +2 -1
  559. package/pipette/definitions/2/geometry/eight_channel/p300/1_5.json +2 -1
  560. package/pipette/definitions/2/geometry/eight_channel/p300/2_0.json +2 -1
  561. package/pipette/definitions/2/geometry/eight_channel/p300/2_1.json +2 -1
  562. package/pipette/definitions/2/geometry/eight_channel/p50/1_0.json +2 -1
  563. package/pipette/definitions/2/geometry/eight_channel/p50/1_3.json +2 -1
  564. package/pipette/definitions/2/geometry/eight_channel/p50/1_4.json +2 -1
  565. package/pipette/definitions/2/geometry/eight_channel/p50/1_5.json +2 -1
  566. package/pipette/definitions/2/geometry/eight_channel/p50/3_0.json +6 -0
  567. package/pipette/definitions/2/geometry/eight_channel/p50/3_3.json +6 -0
  568. package/pipette/definitions/2/geometry/eight_channel/p50/3_4.json +6 -0
  569. package/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +6 -0
  570. package/pipette/definitions/2/geometry/ninety_six_channel/p1000/1_0.json +2 -1
  571. package/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_0.json +14 -0
  572. package/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_3.json +14 -0
  573. package/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_4.json +14 -0
  574. package/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_5.json +14 -0
  575. package/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_6.json +14 -0
  576. package/pipette/definitions/2/geometry/ninety_six_channel/p200/3_0.json +305 -0
  577. package/pipette/definitions/2/geometry/ninety_six_channel/p200/placeholder.gltf +0 -0
  578. package/pipette/definitions/2/geometry/single_channel/p10/1_0.json +2 -1
  579. package/pipette/definitions/2/geometry/single_channel/p10/1_3.json +2 -1
  580. package/pipette/definitions/2/geometry/single_channel/p10/1_4.json +2 -1
  581. package/pipette/definitions/2/geometry/single_channel/p10/1_5.json +2 -1
  582. package/pipette/definitions/2/geometry/single_channel/p1000/1_0.json +2 -1
  583. package/pipette/definitions/2/geometry/single_channel/p1000/1_3.json +2 -1
  584. package/pipette/definitions/2/geometry/single_channel/p1000/1_4.json +2 -1
  585. package/pipette/definitions/2/geometry/single_channel/p1000/1_5.json +2 -1
  586. package/pipette/definitions/2/geometry/single_channel/p1000/2_0.json +2 -1
  587. package/pipette/definitions/2/geometry/single_channel/p1000/2_1.json +2 -1
  588. package/pipette/definitions/2/geometry/single_channel/p1000/2_2.json +2 -1
  589. package/pipette/definitions/2/geometry/single_channel/p1000/3_0.json +14 -0
  590. package/pipette/definitions/2/geometry/single_channel/p1000/3_3.json +14 -0
  591. package/pipette/definitions/2/geometry/single_channel/p1000/3_4.json +14 -0
  592. package/pipette/definitions/2/geometry/single_channel/p1000/3_5.json +14 -0
  593. package/pipette/definitions/2/geometry/single_channel/p1000/3_6.json +14 -0
  594. package/pipette/definitions/2/geometry/single_channel/p1000/3_7.json +28 -0
  595. package/pipette/definitions/2/geometry/single_channel/p20/2_0.json +2 -1
  596. package/pipette/definitions/2/geometry/single_channel/p20/2_1.json +2 -1
  597. package/pipette/definitions/2/geometry/single_channel/p20/2_2.json +2 -1
  598. package/pipette/definitions/2/geometry/single_channel/p300/1_0.json +2 -1
  599. package/pipette/definitions/2/geometry/single_channel/p300/1_3.json +2 -1
  600. package/pipette/definitions/2/geometry/single_channel/p300/1_4.json +2 -1
  601. package/pipette/definitions/2/geometry/single_channel/p300/1_5.json +2 -1
  602. package/pipette/definitions/2/geometry/single_channel/p300/2_0.json +2 -1
  603. package/pipette/definitions/2/geometry/single_channel/p300/2_1.json +2 -1
  604. package/pipette/definitions/2/geometry/single_channel/p50/1_0.json +2 -1
  605. package/pipette/definitions/2/geometry/single_channel/p50/1_3.json +2 -1
  606. package/pipette/definitions/2/geometry/single_channel/p50/1_4.json +2 -1
  607. package/pipette/definitions/2/geometry/single_channel/p50/1_5.json +2 -1
  608. package/pipette/definitions/2/geometry/single_channel/p50/3_0.json +6 -0
  609. package/pipette/definitions/2/geometry/single_channel/p50/3_3.json +6 -0
  610. package/pipette/definitions/2/geometry/single_channel/p50/3_4.json +6 -0
  611. package/pipette/definitions/2/geometry/single_channel/p50/3_5.json +6 -0
  612. package/pipette/definitions/2/geometry/single_channel/p50/3_6.json +6 -0
  613. package/pipette/definitions/2/liquid/eight_channel/p10/default/1_0.json +0 -7
  614. package/pipette/definitions/2/liquid/eight_channel/p10/default/1_3.json +0 -7
  615. package/pipette/definitions/2/liquid/eight_channel/p10/default/1_4.json +0 -7
  616. package/pipette/definitions/2/liquid/eight_channel/p10/default/1_5.json +0 -7
  617. package/pipette/definitions/2/liquid/eight_channel/p10/default/1_6.json +0 -7
  618. package/pipette/definitions/2/liquid/eight_channel/p1000/default/1_0.json +0 -6
  619. package/pipette/definitions/2/liquid/eight_channel/p1000/default/3_0.json +0 -9
  620. package/pipette/definitions/2/liquid/eight_channel/p1000/default/3_3.json +0 -9
  621. package/pipette/definitions/2/liquid/eight_channel/p1000/default/3_4.json +0 -9
  622. package/pipette/definitions/2/liquid/eight_channel/p1000/default/3_5.json +0 -9
  623. package/pipette/definitions/2/liquid/eight_channel/p20/default/2_0.json +0 -9
  624. package/pipette/definitions/2/liquid/eight_channel/p20/default/2_1.json +0 -9
  625. package/pipette/definitions/2/liquid/eight_channel/p300/default/1_0.json +0 -6
  626. package/pipette/definitions/2/liquid/eight_channel/p300/default/1_3.json +0 -6
  627. package/pipette/definitions/2/liquid/eight_channel/p300/default/1_4.json +0 -6
  628. package/pipette/definitions/2/liquid/eight_channel/p300/default/1_5.json +0 -6
  629. package/pipette/definitions/2/liquid/eight_channel/p300/default/2_0.json +0 -5
  630. package/pipette/definitions/2/liquid/eight_channel/p300/default/2_1.json +0 -5
  631. package/pipette/definitions/2/liquid/eight_channel/p50/default/1_0.json +0 -6
  632. package/pipette/definitions/2/liquid/eight_channel/p50/default/1_3.json +0 -6
  633. package/pipette/definitions/2/liquid/eight_channel/p50/default/1_4.json +0 -6
  634. package/pipette/definitions/2/liquid/eight_channel/p50/default/1_5.json +0 -6
  635. package/pipette/definitions/2/liquid/eight_channel/p50/default/3_0.json +0 -5
  636. package/pipette/definitions/2/liquid/eight_channel/p50/default/3_3.json +0 -5
  637. package/pipette/definitions/2/liquid/eight_channel/p50/default/3_4.json +1 -6
  638. package/pipette/definitions/2/liquid/eight_channel/p50/default/3_5.json +1 -6
  639. package/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_0.json +0 -5
  640. package/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_3.json +0 -5
  641. package/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_4.json +0 -5
  642. package/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_5.json +0 -5
  643. package/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/1_0.json +8 -17
  644. package/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_0.json +8 -17
  645. package/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_3.json +8 -17
  646. package/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_4.json +8 -17
  647. package/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_5.json +8 -17
  648. package/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_6.json +4 -7
  649. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_0.json +121 -0
  650. package/pipette/definitions/2/liquid/single_channel/p10/default/1_0.json +0 -7
  651. package/pipette/definitions/2/liquid/single_channel/p10/default/1_3.json +0 -7
  652. package/pipette/definitions/2/liquid/single_channel/p10/default/1_4.json +0 -7
  653. package/pipette/definitions/2/liquid/single_channel/p10/default/1_5.json +0 -7
  654. package/pipette/definitions/2/liquid/single_channel/p1000/default/1_0.json +0 -7
  655. package/pipette/definitions/2/liquid/single_channel/p1000/default/1_3.json +0 -7
  656. package/pipette/definitions/2/liquid/single_channel/p1000/default/1_4.json +0 -7
  657. package/pipette/definitions/2/liquid/single_channel/p1000/default/1_5.json +0 -7
  658. package/pipette/definitions/2/liquid/single_channel/p1000/default/2_0.json +0 -6
  659. package/pipette/definitions/2/liquid/single_channel/p1000/default/2_1.json +0 -6
  660. package/pipette/definitions/2/liquid/single_channel/p1000/default/2_2.json +0 -6
  661. package/pipette/definitions/2/liquid/single_channel/p1000/default/3_0.json +0 -9
  662. package/pipette/definitions/2/liquid/single_channel/p1000/default/3_3.json +0 -9
  663. package/pipette/definitions/2/liquid/single_channel/p1000/default/3_4.json +0 -9
  664. package/pipette/definitions/2/liquid/single_channel/p1000/default/3_5.json +0 -9
  665. package/pipette/definitions/2/liquid/single_channel/p1000/default/3_6.json +0 -9
  666. package/pipette/definitions/2/liquid/single_channel/p1000/default/3_7.json +204 -0
  667. package/pipette/definitions/2/liquid/single_channel/p20/default/2_0.json +0 -9
  668. package/pipette/definitions/2/liquid/single_channel/p20/default/2_1.json +0 -9
  669. package/pipette/definitions/2/liquid/single_channel/p20/default/2_2.json +0 -9
  670. package/pipette/definitions/2/liquid/single_channel/p300/default/1_0.json +0 -6
  671. package/pipette/definitions/2/liquid/single_channel/p300/default/1_3.json +0 -6
  672. package/pipette/definitions/2/liquid/single_channel/p300/default/1_4.json +0 -6
  673. package/pipette/definitions/2/liquid/single_channel/p300/default/1_5.json +0 -6
  674. package/pipette/definitions/2/liquid/single_channel/p300/default/2_0.json +0 -5
  675. package/pipette/definitions/2/liquid/single_channel/p300/default/2_1.json +0 -5
  676. package/pipette/definitions/2/liquid/single_channel/p50/default/1_0.json +0 -6
  677. package/pipette/definitions/2/liquid/single_channel/p50/default/1_3.json +0 -6
  678. package/pipette/definitions/2/liquid/single_channel/p50/default/1_4.json +0 -6
  679. package/pipette/definitions/2/liquid/single_channel/p50/default/1_5.json +0 -6
  680. package/pipette/definitions/2/liquid/single_channel/p50/default/3_0.json +0 -5
  681. package/pipette/definitions/2/liquid/single_channel/p50/default/3_3.json +0 -5
  682. package/pipette/definitions/2/liquid/single_channel/p50/default/3_4.json +1 -6
  683. package/pipette/definitions/2/liquid/single_channel/p50/default/3_5.json +1 -6
  684. package/pipette/definitions/2/liquid/single_channel/p50/default/3_6.json +39 -44
  685. package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_0.json +0 -5
  686. package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_3.json +0 -5
  687. package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_4.json +0 -5
  688. package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_5.json +0 -5
  689. package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_6.json +39 -42
  690. package/pipette/schemas/2/pipetteGeometrySchema.json +28 -0
  691. package/pipette/schemas/2/pipetteLiquidPropertiesSchema.json +1 -12
  692. package/pipette/schemas/2/pipettePropertiesSchema.json +47 -35
  693. package/protocol/README.md +1 -1
  694. package/protocol/fixtures/6/heaterShakerCommands.json +18 -18
  695. package/protocol/fixtures/6/heaterShakerCommandsWithResultsKey.json +7 -7
  696. package/protocol/fixtures/6/multipleTempModules.json +58 -58
  697. package/protocol/fixtures/6/multipleTipracks.json +60 -60
  698. package/protocol/fixtures/6/multipleTipracksWithTC.json +65 -65
  699. package/protocol/fixtures/6/oneTiprack.json +14 -14
  700. package/protocol/fixtures/6/simpleV6.json +24 -24
  701. package/protocol/fixtures/6/tempAndMagModuleCommands.json +17 -17
  702. package/protocol/fixtures/6/transferSettings.json +58 -58
  703. package/protocol/fixtures/7/simpleV7.json +26 -26
  704. package/protocol/fixtures/8/simpleFlexV10CommandsV8.json +1475 -0
  705. package/protocol/fixtures/8/simpleFlexV9CommandsV8.json +1475 -0
  706. package/protocol/fixtures/8/simpleV10CommandsV8.json +1473 -0
  707. package/protocol/fixtures/8/simpleV9CommandsV8.json +1473 -0
  708. package/protocol/types/schemaV3.ts +1 -1
  709. package/protocol/types/schemaV6/command/index.ts +2 -1
  710. package/protocol/types/schemaV6/index.ts +1 -1
  711. package/protocol/types/schemaV7/index.ts +6 -1
  712. package/protocol/types/schemaV8/index.ts +7 -1
  713. package/robot/definitions/1/ot2.json +12 -1
  714. package/robot/definitions/1/ot3.json +13 -1
  715. package/robot/schemas/1.json +54 -1
  716. package/tsconfig.json +4 -2
  717. /package/lib/{vite.config.d.ts → vite.config.d.mts} +0 -0
  718. /package/{vite.config.ts → vite.config.mts} +0 -0
@@ -0,0 +1,486 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "opentronsLiquidClassSchemaV1",
4
+ "title": "Liquid Class Schema",
5
+ "description": "Schema for defining a single liquid class's properties for liquid handling functions.",
6
+ "type": "object",
7
+ "definitions": {
8
+ "positiveNumber": {
9
+ "type": "number",
10
+ "minimum": 0
11
+ },
12
+ "safeString": {
13
+ "description": "A string safe to use for namespace. Lowercase-only.",
14
+ "type": "string",
15
+ "pattern": "^[a-z0-9._]+$"
16
+ },
17
+ "delay": {
18
+ "type": "object",
19
+ "properties": {
20
+ "enable": {
21
+ "type": "boolean",
22
+ "description": "Whether delay is enabled."
23
+ },
24
+ "params": {
25
+ "type": "object",
26
+ "properties": {
27
+ "duration": {
28
+ "#ref": "#/definitions/positiveNumber",
29
+ "description": "Duration of delay, in seconds."
30
+ }
31
+ },
32
+ "required": ["duration"],
33
+ "additionalProperties": false
34
+ }
35
+ },
36
+ "required": ["enable"],
37
+ "additionalProperties": false
38
+ },
39
+ "positionReference": {
40
+ "type": "string",
41
+ "description": "Reference point for positioning.",
42
+ "enum": ["well-bottom", "well-top", "well-center", "liquid-meniscus"]
43
+ },
44
+ "coordinate": {
45
+ "type": "object",
46
+ "description": "3-dimensional coordinate.",
47
+ "properties": {
48
+ "x": {
49
+ "type": "number"
50
+ },
51
+ "y": {
52
+ "type": "number"
53
+ },
54
+ "z": {
55
+ "type": "number"
56
+ }
57
+ },
58
+ "required": ["x", "y", "z"],
59
+ "additionalProperties": false
60
+ },
61
+ "touchTip": {
62
+ "type": "object",
63
+ "description": "Shared properties for the touch-tip function.",
64
+ "properties": {
65
+ "enable": {
66
+ "type": "boolean",
67
+ "description": "Whether touch-tip is enabled."
68
+ },
69
+ "params": {
70
+ "type": "object",
71
+ "properties": {
72
+ "zOffset": {
73
+ "type": "number",
74
+ "description": "Offset from the top of the well for touch-tip, in millimeters."
75
+ },
76
+ "mmToEdge": {
77
+ "type": "number",
78
+ "description": "Offset away from the the well edge, in millimeters."
79
+ },
80
+ "speed": {
81
+ "$ref": "#/definitions/positiveNumber",
82
+ "description": "Touch-tip speed, in millimeters per second."
83
+ }
84
+ },
85
+ "required": ["zOffset", "mmToEdge", "speed"],
86
+ "additionalProperties": false
87
+ }
88
+ },
89
+ "required": ["enable"],
90
+ "additionalProperties": false
91
+ },
92
+ "airGapByVolume": {
93
+ "type": "object",
94
+ "description": "Settings for air gap keyed by target aspiration volume.",
95
+ "properties": {
96
+ "default": { "$ref": "#/definitions/positiveNumber" }
97
+ },
98
+ "patternProperties": {
99
+ "d+": { "$ref": "#/definitions/positiveNumber" }
100
+ },
101
+ "required": ["default"]
102
+ },
103
+ "flowRateByVolume": {
104
+ "type": "object",
105
+ "description": "Settings for flow rate keyed by target aspiration/dispense volume.",
106
+ "properties": {
107
+ "default": { "$ref": "#/definitions/positiveNumber" }
108
+ },
109
+ "patternProperties": {
110
+ "d+": { "$ref": "#/definitions/positiveNumber" }
111
+ },
112
+ "required": ["default"]
113
+ },
114
+ "pushOutByVolume": {
115
+ "type": "object",
116
+ "description": "Settings for pushout keyed by target aspiration volume.",
117
+ "properties": {
118
+ "default": { "$ref": "#/definitions/positiveNumber" }
119
+ },
120
+ "patternProperties": {
121
+ "d+": { "$ref": "#/definitions/positiveNumber" }
122
+ },
123
+ "required": ["default"]
124
+ },
125
+ "disposalByVolume": {
126
+ "type": "object",
127
+ "description": "Settings for disposal volume keyed by target dispense volume.",
128
+ "properties": {
129
+ "default": { "$ref": "#/definitions/positiveNumber" }
130
+ },
131
+ "patternProperties": {
132
+ "d+": { "$ref": "#/definitions/positiveNumber" }
133
+ },
134
+ "required": ["default"]
135
+ },
136
+ "conditioningByVolume": {
137
+ "type": "object",
138
+ "description": "Settings for conditioning volume keyed by target dispense volume.",
139
+ "properties": {
140
+ "default": { "$ref": "#/definitions/positiveNumber" }
141
+ },
142
+ "patternProperties": {
143
+ "d+": { "$ref": "#/definitions/positiveNumber" }
144
+ },
145
+ "required": ["default"]
146
+ },
147
+ "mix": {
148
+ "type": "object",
149
+ "description": "Mixing properties.",
150
+ "properties": {
151
+ "enable": {
152
+ "type": "boolean",
153
+ "description": "Whether mix is enabled."
154
+ },
155
+ "params": {
156
+ "type": "object",
157
+ "properties": {
158
+ "repetitions": {
159
+ "type": "integer",
160
+ "description": "Number of mixing repetitions.",
161
+ "minimum": 0
162
+ },
163
+ "volume": {
164
+ "$ref": "#/definitions/positiveNumber",
165
+ "description": "Volume used for mixing, in microliters."
166
+ }
167
+ },
168
+ "required": ["repetitions", "volume"],
169
+ "additionalProperties": false
170
+ }
171
+ },
172
+ "required": ["enable"],
173
+ "additionalProperties": false
174
+ },
175
+ "blowout": {
176
+ "type": "object",
177
+ "description": "Blowout properties.",
178
+ "properties": {
179
+ "enable": {
180
+ "type": "boolean",
181
+ "description": "Whether blow-out is enabled."
182
+ },
183
+ "params": {
184
+ "type": "object",
185
+ "properties": {
186
+ "location": {
187
+ "type": "string",
188
+ "enum": ["source", "destination", "trash"],
189
+ "description": "Location well or trash entity for blow out."
190
+ },
191
+ "flowRate": {
192
+ "$ref": "#/definitions/positiveNumber",
193
+ "description": "Flow rate for blow out, in microliters per second."
194
+ }
195
+ },
196
+ "required": ["location", "flowRate"]
197
+ }
198
+ },
199
+ "required": ["enable"],
200
+ "additionalProperties": false
201
+ },
202
+ "submerge": {
203
+ "type": "object",
204
+ "description": "Shared properties for the submerge function before aspiration or dispense.",
205
+ "properties": {
206
+ "positionReference": {
207
+ "$ref": "#/definitions/positionReference"
208
+ },
209
+ "offset": {
210
+ "$ref": "#/definitions/coordinate"
211
+ },
212
+ "speed": {
213
+ "$ref": "#/definitions/positiveNumber",
214
+ "description": "Speed of submerging, in millimeters per second."
215
+ },
216
+ "delay": {
217
+ "$ref": "#/definitions/delay"
218
+ }
219
+ },
220
+ "required": ["positionReference", "offset", "speed", "delay"],
221
+ "additionalProperties": false
222
+ },
223
+ "retractAspirate": {
224
+ "type": "object",
225
+ "description": "Shared properties for the retract function after aspiration or dispense.",
226
+ "properties": {
227
+ "positionReference": {
228
+ "$ref": "#/definitions/positionReference"
229
+ },
230
+ "offset": {
231
+ "$ref": "#/definitions/coordinate"
232
+ },
233
+ "speed": {
234
+ "$ref": "#/definitions/positiveNumber",
235
+ "description": "Speed of retraction, in millimeters per second."
236
+ },
237
+ "airGapByVolume": {
238
+ "$ref": "#/definitions/airGapByVolume"
239
+ },
240
+ "touchTip": {
241
+ "$ref": "#/definitions/touchTip"
242
+ },
243
+ "delay": {
244
+ "$ref": "#/definitions/delay"
245
+ }
246
+ },
247
+ "required": [
248
+ "positionReference",
249
+ "offset",
250
+ "speed",
251
+ "airGapByVolume",
252
+ "delay"
253
+ ],
254
+ "additionalProperties": false
255
+ },
256
+ "retractDispense": {
257
+ "type": "object",
258
+ "description": "Shared properties for the retract function after aspiration or dispense.",
259
+ "properties": {
260
+ "positionReference": {
261
+ "$ref": "#/definitions/positionReference"
262
+ },
263
+ "offset": {
264
+ "$ref": "#/definitions/coordinate"
265
+ },
266
+ "speed": {
267
+ "$ref": "#/definitions/positiveNumber",
268
+ "description": "Speed of retraction, in millimeters per second."
269
+ },
270
+ "airGapByVolume": {
271
+ "$ref": "#/definitions/airGapByVolume"
272
+ },
273
+ "blowout": {
274
+ "$ref": "#/definitions/blowout"
275
+ },
276
+ "touchTip": {
277
+ "$ref": "#/definitions/touchTip"
278
+ },
279
+ "delay": {
280
+ "$ref": "#/definitions/delay"
281
+ }
282
+ },
283
+ "required": [
284
+ "positionReference",
285
+ "offset",
286
+ "speed",
287
+ "airGapByVolume",
288
+ "blowout",
289
+ "touchTip",
290
+ "delay"
291
+ ],
292
+ "additionalProperties": false
293
+ },
294
+ "aspirateParams": {
295
+ "type": "object",
296
+ "description": "Parameters specific to the aspirate function.",
297
+ "properties": {
298
+ "submerge": {
299
+ "$ref": "#/definitions/submerge"
300
+ },
301
+ "retract": {
302
+ "$ref": "#/definitions/retractAspirate"
303
+ },
304
+ "positionReference": {
305
+ "$ref": "#/definitions/positionReference"
306
+ },
307
+ "offset": {
308
+ "$ref": "#/definitions/coordinate"
309
+ },
310
+ "flowRateByVolume": {
311
+ "$ref": "#/definitions/flowRateByVolume"
312
+ },
313
+ "preWet": {
314
+ "type": "boolean",
315
+ "description": "Whether to perform a pre-wet action."
316
+ },
317
+ "mix": {
318
+ "$ref": "#/definitions/mix"
319
+ },
320
+ "delay": {
321
+ "$ref": "#/definitions/delay"
322
+ }
323
+ },
324
+ "required": [
325
+ "submerge",
326
+ "retract",
327
+ "positionReference",
328
+ "offset",
329
+ "flowRateByVolume",
330
+ "preWet",
331
+ "mix",
332
+ "delay"
333
+ ],
334
+ "additionalProperties": false
335
+ },
336
+ "singleDispenseParams": {
337
+ "type": "object",
338
+ "description": "Parameters specific to the single-dispense function.",
339
+ "properties": {
340
+ "submerge": {
341
+ "$ref": "#/definitions/submerge"
342
+ },
343
+ "retract": {
344
+ "$ref": "#/definitions/retractDispense"
345
+ },
346
+ "positionReference": {
347
+ "$ref": "#/definitions/positionReference"
348
+ },
349
+ "offset": {
350
+ "$ref": "#/definitions/coordinate"
351
+ },
352
+ "flowRateByVolume": {
353
+ "$ref": "#/definitions/flowRateByVolume"
354
+ },
355
+ "mix": {
356
+ "$ref": "#/definitions/mix"
357
+ },
358
+ "pushOutByVolume": {
359
+ "$ref": "#/definitions/pushOutByVolume"
360
+ },
361
+ "delay": {
362
+ "$ref": "#/definitions/delay"
363
+ }
364
+ },
365
+ "required": [
366
+ "submerge",
367
+ "retract",
368
+ "positionReference",
369
+ "offset",
370
+ "flowRateByVolume",
371
+ "mix",
372
+ "pushOutByVolume",
373
+ "delay"
374
+ ],
375
+ "additionalProperties": false
376
+ },
377
+ "multiDispenseParams": {
378
+ "type": "object",
379
+ "description": "Parameters specific to the multi-dispense function.",
380
+ "properties": {
381
+ "submerge": {
382
+ "$ref": "#/definitions/submerge"
383
+ },
384
+ "retract": {
385
+ "$ref": "#/definitions/retractDispense"
386
+ },
387
+ "positionReference": {
388
+ "$ref": "#/definitions/positionReference"
389
+ },
390
+ "offset": {
391
+ "$ref": "#/definitions/coordinate"
392
+ },
393
+ "flowRateByVolume": {
394
+ "$ref": "#/definitions/flowRateByVolume"
395
+ },
396
+ "conditioningByVolume": {
397
+ "$ref": "#/definitions/conditioningByVolume"
398
+ },
399
+ "disposalByVolume": {
400
+ "$ref": "#/definitions/disposalByVolume"
401
+ },
402
+ "delay": {
403
+ "$ref": "#/definitions/delay"
404
+ }
405
+ },
406
+ "required": [
407
+ "submerge",
408
+ "retract",
409
+ "positionReference",
410
+ "offset",
411
+ "flowRateByVolume",
412
+ "mix",
413
+ "conditioningByVolume",
414
+ "disposalByVolume",
415
+ "delay"
416
+ ],
417
+ "additionalProperties": false
418
+ }
419
+ },
420
+ "properties": {
421
+ "liquidClassName": {
422
+ "$ref": "#/definitions/safeString",
423
+ "description": "The name of the liquid class specified when loading into protocol (e.g., water, ethanol, serum). Should be the same as file name."
424
+ },
425
+ "displayName": {
426
+ "type": "string",
427
+ "description": "User-readable name of the liquid class."
428
+ },
429
+ "schemaVersion": {
430
+ "description": "Which schema version a liquid class is using",
431
+ "type": "number",
432
+ "enum": [1]
433
+ },
434
+ "namespace": {
435
+ "$ref": "#/definitions/safeString"
436
+ },
437
+ "byPipette": {
438
+ "type": "array",
439
+ "description": "Liquid class settings by each pipette compatible with this liquid class.",
440
+ "items": {
441
+ "type": "object",
442
+ "description": "The settings for a specific kind of pipette when interacting with this liquid class",
443
+ "properties": {
444
+ "pipetteModel": {
445
+ "type": "string",
446
+ "description": "The pipette model this applies to"
447
+ },
448
+ "byTipType": {
449
+ "type": "array",
450
+ "description": "Settings for each kind of tip this pipette can use",
451
+ "items": {
452
+ "type": "object",
453
+ "properties": {
454
+ "tiprack": {
455
+ "type": "string",
456
+ "description": "The tiprack name whose tip will be used when handling this specific liquid class with this pipette"
457
+ },
458
+ "aspirate": {
459
+ "$ref": "#/definitions/aspirateParams"
460
+ },
461
+ "singleDispense": {
462
+ "$ref": "#/definitions/singleDispenseParams"
463
+ },
464
+ "multiDispense": {
465
+ "$ref": "#/definitions/multiDispenseParams"
466
+ }
467
+ },
468
+ "required": ["tiprack", "aspirate", "singleDispense"],
469
+ "additionalProperties": false
470
+ }
471
+ }
472
+ },
473
+ "required": ["pipetteModel", "byTipType"],
474
+ "additionalProperties": false
475
+ }
476
+ }
477
+ },
478
+ "required": [
479
+ "liquidClassName",
480
+ "displayName",
481
+ "schemaVersion",
482
+ "namespace",
483
+ "byPipette"
484
+ ],
485
+ "additionalProperties": false
486
+ }