@opentrons/shared-data 0.0.1-alpha.1 → 0.0.1-alpha.17

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 (667) hide show
  1. package/lib/bundle.673284981fd97184260c.js +3 -0
  2. package/lib/bundle.673284981fd97184260c.js.map +1 -0
  3. package/package.json +1 -1
  4. package/LICENSE +0 -202
  5. package/lib/build/labware.json +0 -1
  6. package/lib/command/schemas/.json +0 -0
  7. package/lib/js/helpers/__tests__/getRobotTypeFromLoadedLabware.test.d.ts +0 -1
  8. package/lib/js/helpers/__tests__/schemaV6Adapter.test.d.ts +0 -0
  9. package/lib/js/helpers/getAddressableAreasInProtocol.d.ts +0 -3
  10. package/lib/js/helpers/schemaV6Adapter.d.ts +0 -10
  11. package/lib/labware/definitions/2/opentrons_calibration_adapter_magnetic_module/1.json +0 -62
  12. package/lib/labware/definitions/2/opentrons_ot3_96_tiprack_1000ul/1.json +0 -1017
  13. package/lib/labware/definitions/2/opentrons_ot3_96_tiprack_200ul/1.json +0 -1017
  14. package/lib/labware/definitions/2/opentrons_ot3_96_tiprack_50ul/1.json +0 -1017
  15. package/lib/opentrons-shared-data.js +0 -3
  16. package/lib/opentrons-shared-data.js.map +0 -1
  17. package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_0.json +0 -58
  18. package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_3.json +0 -58
  19. package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_4.json +0 -58
  20. package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_5.json +0 -49
  21. package/lib/pipette/definitions/2/liquid/eight_channel/p10/1_6.json +0 -57
  22. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/1_0.json +0 -374
  23. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_0.json +0 -374
  24. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_3.json +0 -374
  25. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_4.json +0 -374
  26. package/lib/pipette/definitions/2/liquid/eight_channel/p1000/3_5.json +0 -374
  27. package/lib/pipette/definitions/2/liquid/eight_channel/p20/2_0.json +0 -323
  28. package/lib/pipette/definitions/2/liquid/eight_channel/p20/2_1.json +0 -203
  29. package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_0.json +0 -75
  30. package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_3.json +0 -75
  31. package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_4.json +0 -75
  32. package/lib/pipette/definitions/2/liquid/eight_channel/p300/1_5.json +0 -75
  33. package/lib/pipette/definitions/2/liquid/eight_channel/p300/2_0.json +0 -202
  34. package/lib/pipette/definitions/2/liquid/eight_channel/p300/2_1.json +0 -202
  35. package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_0.json +0 -128
  36. package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_3.json +0 -128
  37. package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_4.json +0 -128
  38. package/lib/pipette/definitions/2/liquid/eight_channel/p50/1_5.json +0 -118
  39. package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_0.json +0 -98
  40. package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_3.json +0 -98
  41. package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_4.json +0 -98
  42. package/lib/pipette/definitions/2/liquid/eight_channel/p50/3_5.json +0 -98
  43. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/1_0.json +0 -374
  44. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_0.json +0 -374
  45. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_3.json +0 -374
  46. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_4.json +0 -374
  47. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_5.json +0 -374
  48. package/lib/pipette/definitions/2/liquid/single_channel/p10/1_0.json +0 -59
  49. package/lib/pipette/definitions/2/liquid/single_channel/p10/1_3.json +0 -59
  50. package/lib/pipette/definitions/2/liquid/single_channel/p10/1_4.json +0 -59
  51. package/lib/pipette/definitions/2/liquid/single_channel/p10/1_5.json +0 -58
  52. package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_0.json +0 -50
  53. package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_3.json +0 -52
  54. package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_4.json +0 -52
  55. package/lib/pipette/definitions/2/liquid/single_channel/p1000/1_5.json +0 -50
  56. package/lib/pipette/definitions/2/liquid/single_channel/p1000/2_0.json +0 -114
  57. package/lib/pipette/definitions/2/liquid/single_channel/p1000/2_1.json +0 -116
  58. package/lib/pipette/definitions/2/liquid/single_channel/p1000/2_2.json +0 -116
  59. package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_0.json +0 -374
  60. package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_3.json +0 -374
  61. package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_4.json +0 -300
  62. package/lib/pipette/definitions/2/liquid/single_channel/p1000/3_5.json +0 -300
  63. package/lib/pipette/definitions/2/liquid/single_channel/p20/2_0.json +0 -449
  64. package/lib/pipette/definitions/2/liquid/single_channel/p20/2_1.json +0 -269
  65. package/lib/pipette/definitions/2/liquid/single_channel/p20/2_2.json +0 -329
  66. package/lib/pipette/definitions/2/liquid/single_channel/p300/1_0.json +0 -99
  67. package/lib/pipette/definitions/2/liquid/single_channel/p300/1_3.json +0 -99
  68. package/lib/pipette/definitions/2/liquid/single_channel/p300/1_4.json +0 -99
  69. package/lib/pipette/definitions/2/liquid/single_channel/p300/1_5.json +0 -83
  70. package/lib/pipette/definitions/2/liquid/single_channel/p300/2_0.json +0 -206
  71. package/lib/pipette/definitions/2/liquid/single_channel/p300/2_1.json +0 -206
  72. package/lib/pipette/definitions/2/liquid/single_channel/p50/1_0.json +0 -128
  73. package/lib/pipette/definitions/2/liquid/single_channel/p50/1_3.json +0 -128
  74. package/lib/pipette/definitions/2/liquid/single_channel/p50/1_4.json +0 -128
  75. package/lib/pipette/definitions/2/liquid/single_channel/p50/1_5.json +0 -116
  76. package/lib/pipette/definitions/2/liquid/single_channel/p50/3_0.json +0 -98
  77. package/lib/pipette/definitions/2/liquid/single_channel/p50/3_3.json +0 -98
  78. package/lib/pipette/definitions/2/liquid/single_channel/p50/3_4.json +0 -100
  79. package/lib/pipette/definitions/2/liquid/single_channel/p50/3_5.json +0 -100
  80. package/lib/pipette/definitions/pipetteModelSpecs.json +0 -8073
  81. package/lib/pipette/definitions/pipetteNameSpecs.json +0 -665
  82. package/lib/pipette/schemas/pipetteModelSpecsSchema.json +0 -153
  83. package/lib/pipette/schemas/pipetteNameSpecsSchema.json +0 -89
  84. package/python/.coverage +0 -0
  85. package/python/build/lib/opentrons_shared_data/__init__.py +0 -17
  86. package/python/build/lib/opentrons_shared_data/_version.py +0 -20
  87. package/python/build/lib/opentrons_shared_data/command/__init__.py +0 -26
  88. package/python/build/lib/opentrons_shared_data/data/deck/definitions/3/ot2_short_trash.json +0 -477
  89. package/python/build/lib/opentrons_shared_data/data/deck/definitions/3/ot2_standard.json +0 -477
  90. package/python/build/lib/opentrons_shared_data/data/deck/definitions/3/ot3_standard.json +0 -989
  91. package/python/build/lib/opentrons_shared_data/data/deck/schemas/1.json +0 -240
  92. package/python/build/lib/opentrons_shared_data/data/deck/schemas/2.json +0 -249
  93. package/python/build/lib/opentrons_shared_data/data/deck/schemas/3.json +0 -296
  94. package/python/build/lib/opentrons_shared_data/data/errors/definitions/1/errors.json +0 -198
  95. package/python/build/lib/opentrons_shared_data/data/errors/schemas/1.json +0 -50
  96. package/python/build/lib/opentrons_shared_data/data/gripper/definitions/1/gripperV1.1.json +0 -28
  97. package/python/build/lib/opentrons_shared_data/data/gripper/definitions/1/gripperV1.2.json +0 -28
  98. package/python/build/lib/opentrons_shared_data/data/gripper/definitions/1/gripperV1.json +0 -27
  99. package/python/build/lib/opentrons_shared_data/data/gripper/schemas/1.json +0 -181
  100. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/12-well-plate.json +0 -147
  101. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/24-vial-rack.json +0 -281
  102. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/24-well-plate.json +0 -281
  103. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/384-plate.json +0 -4667
  104. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/48-vial-plate.json +0 -547
  105. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/48-well-plate.json +0 -547
  106. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/5ml-3x4.json +0 -147
  107. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/6-well-plate.json +0 -80
  108. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-PCR-flat.json +0 -1079
  109. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-PCR-tall.json +0 -1079
  110. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-deep-well.json +0 -1079
  111. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-flat.json +0 -1079
  112. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/96-well-plate-20mm.json +0 -1079
  113. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/MALDI-plate.json +0 -4282
  114. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/PCR-strip-tall.json +0 -1079
  115. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/T25-flask.json +0 -20
  116. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/T75-flask.json +0 -20
  117. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/alum-block-pcr-strips.json +0 -188
  118. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/biorad-hardshell-96-PCR.json +0 -1079
  119. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/e-gelgol.json +0 -1078
  120. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/fixed-trash.json +0 -19
  121. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/hampton-1ml-deep-block.json +0 -1078
  122. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-2ml-eppendorf.json +0 -281
  123. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-2ml-screwcap.json +0 -281
  124. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-96-PCR-plate.json +0 -1079
  125. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-aluminum-block-PCR-strips-200ul.json +0 -1079
  126. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tiprack-10ul.json +0 -986
  127. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tiprack-300ul.json +0 -986
  128. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-1.5ml-eppendorf.json +0 -281
  129. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-15_50ml.json +0 -125
  130. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-15ml.json +0 -181
  131. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-2ml-eppendorf.json +0 -281
  132. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-2ml-screwcap.json +0 -281
  133. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/opentrons-tuberack-50ml.json +0 -80
  134. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/point.json +0 -18
  135. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/rigaku-compact-crystallization-plate.json +0 -2146
  136. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/small_vial_rack_16x45.json +0 -280
  137. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tall-fixed-trash.json +0 -19
  138. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-1000ul-H.json +0 -503
  139. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-1000ul-chem.json +0 -1034
  140. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-1000ul.json +0 -986
  141. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-10ul-H.json +0 -503
  142. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-10ul.json +0 -986
  143. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tiprack-200ul.json +0 -986
  144. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trash-box.json +0 -20
  145. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trough-12row-short.json +0 -143
  146. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trough-12row.json +0 -143
  147. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/trough-1row-25ml.json +0 -21
  148. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-.75ml.json +0 -281
  149. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-15_50ml.json +0 -125
  150. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-2ml-9x9.json +0 -911
  151. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-2ml.json +0 -281
  152. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-5ml-96.json +0 -1079
  153. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/tube-rack-80well.json +0 -907
  154. package/python/build/lib/opentrons_shared_data/data/labware/definitions/1/wheaton_vial_rack.json +0 -565
  155. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/agilent_1_reservoir_290ml/1.json +0 -54
  156. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/1.json +0 -4320
  157. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/1.json +0 -1019
  158. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/armadillo_96_wellplate_200ul_pcr_full_skirt/2.json +0 -1045
  159. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/axygen_1_reservoir_90ml/1.json +0 -56
  160. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_384_wellplate_50ul/1.json +0 -4329
  161. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_384_wellplate_50ul/2.json +0 -4331
  162. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_96_wellplate_200ul_pcr/1.json +0 -1020
  163. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/biorad_96_wellplate_200ul_pcr/2.json +0 -1036
  164. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_12_wellplate_6.9ml_flat/1.json +0 -171
  165. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_12_wellplate_6.9ml_flat/2.json +0 -180
  166. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_24_wellplate_3.4ml_flat/1.json +0 -293
  167. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_24_wellplate_3.4ml_flat/2.json +0 -300
  168. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_384_wellplate_112ul_flat/1.json +0 -4703
  169. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_384_wellplate_112ul_flat/2.json +0 -4717
  170. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_48_wellplate_1.6ml_flat/1.json +0 -535
  171. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_48_wellplate_1.6ml_flat/2.json +0 -544
  172. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_6_wellplate_16.8ml_flat/1.json +0 -103
  173. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_6_wellplate_16.8ml_flat/2.json +0 -110
  174. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_96_wellplate_360ul_flat/1.json +0 -1049
  175. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/corning_96_wellplate_360ul_flat/2.json +0 -1063
  176. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/eppendorf_96_tiprack_1000ul_eptips/1.json +0 -1019
  177. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/eppendorf_96_tiprack_10ul_eptips/1.json +0 -1019
  178. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/geb_96_tiprack_1000ul/1.json +0 -1017
  179. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/geb_96_tiprack_10ul/1.json +0 -1017
  180. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_12_reservoir_15ml/1.json +0 -190
  181. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_1_reservoir_195ml/1.json +0 -54
  182. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_1_reservoir_195ml/2.json +0 -56
  183. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_1_reservoir_290ml/1.json +0 -54
  184. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/1.json +0 -1018
  185. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/2.json +0 -1039
  186. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_200ul_flat/1.json +0 -1017
  187. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_200ul_flat/2.json +0 -1031
  188. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_2ml_deep/1.json +0 -1121
  189. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/nest_96_wellplate_2ml_deep/2.json +0 -1137
  190. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical/1.json +0 -164
  191. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical_acrylic/1.json +0 -162
  192. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_10_tuberack_nest_4x50ml_6x15ml_conical/1.json +0 -160
  193. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_15_tuberack_falcon_15ml_conical/1.json +0 -211
  194. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_15_tuberack_nest_15ml_conical/1.json +0 -209
  195. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_1_trash_1100ml_fixed/1.json +0 -50
  196. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_1_trash_3200ml_fixed/1.json +0 -50
  197. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_1_trash_850ml_fixed/1.json +0 -50
  198. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_generic_2ml_screwcap/1.json +0 -300
  199. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_generic_2ml_screwcap/2.json +0 -301
  200. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_0.5ml_screwcap/1.json +0 -299
  201. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_1.5ml_screwcap/1.json +0 -299
  202. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_1.5ml_snapcap/1.json +0 -301
  203. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_2ml_screwcap/1.json +0 -299
  204. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_aluminumblock_nest_2ml_snapcap/1.json +0 -301
  205. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_eppendorf_1.5ml_safelock_snapcap/1.json +0 -312
  206. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap/1.json +0 -311
  207. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap_acrylic/1.json +0 -309
  208. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_generic_0.75ml_snapcap_acrylic/1.json +0 -298
  209. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_generic_2ml_screwcap/1.json +0 -300
  210. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_0.5ml_screwcap/1.json +0 -300
  211. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_1.5ml_screwcap/1.json +0 -300
  212. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_1.5ml_snapcap/1.json +0 -302
  213. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_2ml_screwcap/1.json +0 -300
  214. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_24_tuberack_nest_2ml_snapcap/1.json +0 -302
  215. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_40_aluminumblock_eppendorf_24x2ml_safelock_snapcap_generic_16x0.2ml_pcr_strip/1.json +0 -481
  216. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_6_tuberack_falcon_50ml_conical/1.json +0 -112
  217. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_6_tuberack_nest_50ml_conical/1.json +0 -110
  218. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_biorad_wellplate_200ul/1.json +0 -1029
  219. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/1.json +0 -1026
  220. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/2.json +0 -1027
  221. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_aluminumblock_nest_wellplate_100ul/1.json +0 -1027
  222. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_deep_well_adapter/1.json +0 -41
  223. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_deep_well_adapter_nest_wellplate_2ml_deep/1.json +0 -1121
  224. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_1000ul/1.json +0 -1017
  225. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_10ul/1.json +0 -1017
  226. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_200ul/1.json +0 -1017
  227. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_filtertiprack_20ul/1.json +0 -1017
  228. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_flat_bottom_adapter/1.json +0 -41
  229. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_flat_bottom_adapter_nest_wellplate_200ul_flat/1.json +0 -1027
  230. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_pcr_adapter/1.json +0 -1018
  231. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_pcr_adapter_armadillo_wellplate_200ul/1.json +0 -1027
  232. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_pcr_adapter_nest_wellplate_100ul_pcr_full_skirt/1.json +0 -1025
  233. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_1000ul/1.json +0 -1019
  234. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_10ul/1.json +0 -1019
  235. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_20ul/1.json +0 -1019
  236. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_tiprack_300ul/1.json +0 -1019
  237. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_well_aluminum_block/1.json +0 -1018
  238. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/1.json +0 -1019
  239. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/2.json +0 -1045
  240. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_aluminum_flat_bottom_plate/1.json +0 -41
  241. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_heatershaker_module/1.json +0 -62
  242. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_magnetic_module/1.json +0 -62
  243. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_temperature_module/1.json +0 -62
  244. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibration_adapter_thermocycler_module/1.json +0 -69
  245. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibrationblock_short_side_left/1.json +0 -71
  246. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_calibrationblock_short_side_right/1.json +0 -71
  247. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +0 -1026
  248. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +0 -1026
  249. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +0 -1026
  250. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +0 -1026
  251. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +0 -1026
  252. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +0 -1026
  253. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_flex_96_tiprack_adapter/1.json +0 -41
  254. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_ot3_96_tiprack_1000ul/1.json +0 -1017
  255. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_ot3_96_tiprack_200ul/1.json +0 -1017
  256. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_ot3_96_tiprack_50ul/1.json +0 -1017
  257. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_universal_flat_adapter/1.json +0 -151
  258. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/opentrons_universal_flat_adapter_corning_384_wellplate_112ul_flat/1.json +0 -4710
  259. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/1.json +0 -1019
  260. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/1.json +0 -1019
  261. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/tipone_96_tiprack_200ul/1.json +0 -1017
  262. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/usascientific_12_reservoir_22ml/1.json +0 -192
  263. package/python/build/lib/opentrons_shared_data/data/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/1.json +0 -1116
  264. package/python/build/lib/opentrons_shared_data/data/labware/schemas/2.json +0 -372
  265. package/python/build/lib/opentrons_shared_data/data/module/definitions/1.json +0 -57
  266. package/python/build/lib/opentrons_shared_data/data/module/definitions/2/magneticModuleV1.json +0 -22
  267. package/python/build/lib/opentrons_shared_data/data/module/definitions/2/magneticModuleV2.json +0 -69
  268. package/python/build/lib/opentrons_shared_data/data/module/definitions/2/temperatureModuleV1.json +0 -22
  269. package/python/build/lib/opentrons_shared_data/data/module/definitions/2/temperatureModuleV2.json +0 -69
  270. package/python/build/lib/opentrons_shared_data/data/module/definitions/2/thermocyclerModuleV1.json +0 -23
  271. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/heaterShakerModuleV1.json +0 -521
  272. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/magneticBlockV1.json +0 -199
  273. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/magneticModuleV1.json +0 -435
  274. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/magneticModuleV2.json +0 -488
  275. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/temperatureModuleV1.json +0 -190
  276. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/temperatureModuleV2.json +0 -315
  277. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/thermocyclerModuleV1.json +0 -1380
  278. package/python/build/lib/opentrons_shared_data/data/module/definitions/3/thermocyclerModuleV2.json +0 -3686
  279. package/python/build/lib/opentrons_shared_data/data/module/schemas/1.json +0 -55
  280. package/python/build/lib/opentrons_shared_data/data/module/schemas/2.json +0 -112
  281. package/python/build/lib/opentrons_shared_data/data/module/schemas/3.json +0 -206
  282. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/1/pipetteModelSpecs.json +0 -10214
  283. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/1/pipetteNameSpecs.json +0 -679
  284. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_0.json +0 -40
  285. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_3.json +0 -40
  286. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_4.json +0 -40
  287. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_5.json +0 -40
  288. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p10/1_6.json +0 -40
  289. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/1_0.json +0 -39
  290. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_0.json +0 -39
  291. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_3.json +0 -39
  292. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_4.json +0 -39
  293. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p1000/3_5.json +0 -39
  294. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p20/2_0.json +0 -40
  295. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p20/2_1.json +0 -40
  296. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_0.json +0 -40
  297. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_3.json +0 -40
  298. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_4.json +0 -40
  299. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/1_5.json +0 -40
  300. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/2_0.json +0 -40
  301. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p300/2_1.json +0 -40
  302. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_0.json +0 -40
  303. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_3.json +0 -40
  304. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_4.json +0 -40
  305. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/1_5.json +0 -40
  306. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_0.json +0 -45
  307. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_3.json +0 -45
  308. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_4.json +0 -45
  309. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/eight_channel/p50/3_5.json +0 -45
  310. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/1_0.json +0 -39
  311. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_0.json +0 -39
  312. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_3.json +0 -39
  313. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_4.json +0 -46
  314. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/ninety_six_channel/p1000/3_5.json +0 -46
  315. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_0.json +0 -40
  316. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_3.json +0 -40
  317. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_4.json +0 -40
  318. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p10/1_5.json +0 -40
  319. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_0.json +0 -40
  320. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_3.json +0 -40
  321. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_4.json +0 -40
  322. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/1_5.json +0 -40
  323. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/2_0.json +0 -40
  324. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/2_1.json +0 -40
  325. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/2_2.json +0 -40
  326. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_0.json +0 -36
  327. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_3.json +0 -36
  328. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_4.json +0 -36
  329. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p1000/3_5.json +0 -36
  330. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p20/2_0.json +0 -40
  331. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p20/2_1.json +0 -40
  332. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p20/2_2.json +0 -40
  333. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_0.json +0 -40
  334. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_3.json +0 -40
  335. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_4.json +0 -40
  336. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/1_5.json +0 -40
  337. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/2_0.json +0 -40
  338. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p300/2_1.json +0 -40
  339. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_0.json +0 -40
  340. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_3.json +0 -40
  341. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_4.json +0 -40
  342. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/1_5.json +0 -42
  343. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_0.json +0 -42
  344. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_3.json +0 -42
  345. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_4.json +0 -42
  346. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/general/single_channel/p50/3_5.json +0 -42
  347. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_0.json +0 -15
  348. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_3.json +0 -15
  349. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_4.json +0 -15
  350. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_5.json +0 -15
  351. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p10/1_6.json +0 -15
  352. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/1_0.json +0 -15
  353. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_0.json +0 -15
  354. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_3.json +0 -15
  355. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_4.json +0 -15
  356. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p1000/3_5.json +0 -15
  357. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p20/2_0.json +0 -15
  358. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p20/2_1.json +0 -15
  359. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_0.json +0 -15
  360. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_3.json +0 -15
  361. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_4.json +0 -15
  362. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/1_5.json +0 -15
  363. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/2_0.json +0 -15
  364. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p300/2_1.json +0 -15
  365. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_0.json +0 -15
  366. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_3.json +0 -15
  367. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_4.json +0 -15
  368. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/1_5.json +0 -15
  369. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_0.json +0 -15
  370. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_3.json +0 -15
  371. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_4.json +0 -15
  372. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +0 -15
  373. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/1_0.json +0 -103
  374. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_0.json +0 -103
  375. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_3.json +0 -103
  376. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_4.json +0 -103
  377. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/ninety_six_channel/p1000/3_5.json +0 -103
  378. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_0.json +0 -8
  379. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_3.json +0 -8
  380. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_4.json +0 -8
  381. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p10/1_5.json +0 -8
  382. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_0.json +0 -8
  383. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_3.json +0 -8
  384. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_4.json +0 -8
  385. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/1_5.json +0 -8
  386. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/2_0.json +0 -8
  387. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/2_1.json +0 -8
  388. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/2_2.json +0 -8
  389. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_0.json +0 -8
  390. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_3.json +0 -8
  391. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_4.json +0 -8
  392. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p1000/3_5.json +0 -8
  393. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p20/2_0.json +0 -8
  394. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p20/2_1.json +0 -8
  395. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p20/2_2.json +0 -8
  396. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_0.json +0 -8
  397. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_3.json +0 -8
  398. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_4.json +0 -8
  399. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/1_5.json +0 -8
  400. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/2_0.json +0 -8
  401. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p300/2_1.json +0 -8
  402. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_0.json +0 -8
  403. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_3.json +0 -8
  404. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_4.json +0 -8
  405. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/1_5.json +0 -8
  406. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_0.json +0 -8
  407. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_3.json +0 -8
  408. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_4.json +0 -8
  409. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/geometry/single_channel/p50/3_5.json +0 -8
  410. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_0.json +0 -72
  411. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_3.json +0 -72
  412. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_4.json +0 -72
  413. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_5.json +0 -77
  414. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/1_6.json +0 -117
  415. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_0.json +0 -58
  416. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_3.json +0 -58
  417. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_4.json +0 -58
  418. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_5.json +0 -47
  419. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p10/default/1_6.json +0 -55
  420. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/1_0.json +0 -311
  421. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/3_0.json +0 -311
  422. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/3_3.json +0 -311
  423. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/3_4.json +0 -311
  424. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/1_0.json +0 -356
  425. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_0.json +0 -359
  426. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_3.json +0 -359
  427. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_4.json +0 -359
  428. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_5.json +0 -239
  429. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/2_0.json +0 -440
  430. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/2_1.json +0 -530
  431. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/default/2_0.json +0 -311
  432. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p20/default/2_1.json +0 -191
  433. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_0.json +0 -70
  434. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_3.json +0 -75
  435. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_4.json +0 -75
  436. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/1_5.json +0 -75
  437. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/2_0.json +0 -260
  438. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/2_1.json +0 -291
  439. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_0.json +0 -67
  440. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_3.json +0 -67
  441. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_4.json +0 -67
  442. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/1_5.json +0 -67
  443. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/2_0.json +0 -190
  444. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p300/default/2_1.json +0 -190
  445. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_0.json +0 -71
  446. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_3.json +0 -66
  447. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_4.json +0 -67
  448. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/1_5.json +0 -86
  449. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/3_0.json +0 -81
  450. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/3_3.json +0 -81
  451. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/3_4.json +0 -81
  452. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_0.json +0 -128
  453. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_3.json +0 -128
  454. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_4.json +0 -128
  455. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/1_5.json +0 -110
  456. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_0.json +0 -99
  457. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_3.json +0 -99
  458. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_4.json +0 -99
  459. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/default/3_5.json +0 -91
  460. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_0.json +0 -94
  461. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_3.json +0 -89
  462. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_4.json +0 -89
  463. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/eight_channel/p50/lowVolumeDefault/3_5.json +0 -89
  464. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/1_0.json +0 -311
  465. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_0.json +0 -311
  466. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_3.json +0 -311
  467. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/3_4.json +0 -311
  468. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/1_0.json +0 -356
  469. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_0.json +0 -356
  470. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_3.json +0 -356
  471. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_4.json +0 -356
  472. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/ninety_six_channel/p1000/default/3_5.json +0 -356
  473. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_0.json +0 -73
  474. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_3.json +0 -73
  475. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_4.json +0 -70
  476. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/1_5.json +0 -73
  477. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_0.json +0 -59
  478. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_3.json +0 -59
  479. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_4.json +0 -56
  480. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p10/default/1_5.json +0 -54
  481. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_0.json +0 -80
  482. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_3.json +0 -80
  483. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_4.json +0 -80
  484. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/1_5.json +0 -80
  485. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/2_0.json +0 -278
  486. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/2_1.json +0 -286
  487. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/2_2.json +0 -286
  488. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/3_0.json +0 -311
  489. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/3_3.json +0 -311
  490. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/3_4.json +0 -237
  491. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_0.json +0 -48
  492. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_3.json +0 -48
  493. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_4.json +0 -48
  494. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/1_5.json +0 -48
  495. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/2_0.json +0 -105
  496. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/2_1.json +0 -107
  497. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/2_2.json +0 -107
  498. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_0.json +0 -356
  499. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_3.json +0 -356
  500. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_4.json +0 -282
  501. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p1000/default/3_5.json +0 -204
  502. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/2_0.json +0 -530
  503. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/2_1.json +0 -469
  504. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/2_2.json +0 -469
  505. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/default/2_0.json +0 -431
  506. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/default/2_1.json +0 -251
  507. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p20/default/2_2.json +0 -311
  508. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_0.json +0 -90
  509. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_3.json +0 -90
  510. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_4.json +0 -90
  511. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/1_5.json +0 -95
  512. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/2_0.json +0 -291
  513. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/2_1.json +0 -291
  514. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_0.json +0 -99
  515. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_3.json +0 -99
  516. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_4.json +0 -99
  517. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/1_5.json +0 -75
  518. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/2_0.json +0 -188
  519. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p300/default/2_1.json +0 -188
  520. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_0.json +0 -74
  521. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_3.json +0 -66
  522. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_4.json +0 -71
  523. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/1_5.json +0 -91
  524. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/3_0.json +0 -81
  525. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/3_3.json +0 -81
  526. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/3_4.json +0 -83
  527. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_0.json +0 -119
  528. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_3.json +0 -128
  529. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_4.json +0 -128
  530. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/1_5.json +0 -104
  531. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_0.json +0 -98
  532. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_3.json +0 -98
  533. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_4.json +0 -100
  534. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/default/3_5.json +0 -80
  535. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_0.json +0 -78
  536. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_3.json +0 -78
  537. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_4.json +0 -78
  538. package/python/build/lib/opentrons_shared_data/data/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_5.json +0 -76
  539. package/python/build/lib/opentrons_shared_data/data/pipette/schemas/1/pipetteModelSpecsSchema.json +0 -155
  540. package/python/build/lib/opentrons_shared_data/data/pipette/schemas/1/pipetteNameSpecsSchema.json +0 -91
  541. package/python/build/lib/opentrons_shared_data/data/pipette/schemas/2/pipetteGeometrySchema.json +0 -35
  542. package/python/build/lib/opentrons_shared_data/data/pipette/schemas/2/pipetteLiquidPropertiesSchema.json +0 -120
  543. package/python/build/lib/opentrons_shared_data/data/pipette/schemas/2/pipettePropertiesSchema.json +0 -189
  544. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/1.json +0 -389
  545. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/2.json +0 -416
  546. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/3.json +0 -360
  547. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/4.json +0 -662
  548. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/5.json +0 -701
  549. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/6.json +0 -1225
  550. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/7-draft.json +0 -285
  551. package/python/build/lib/opentrons_shared_data/data/protocol/schemas/7.json +0 -290
  552. package/python/build/lib/opentrons_shared_data/data/robot/definitions/1/ot2.json +0 -5
  553. package/python/build/lib/opentrons_shared_data/data/robot/definitions/1/ot3.json +0 -5
  554. package/python/build/lib/opentrons_shared_data/data/robot/schemas/1.json +0 -30
  555. package/python/build/lib/opentrons_shared_data/deck/__init__.py +0 -84
  556. package/python/build/lib/opentrons_shared_data/deck/dev_types.py +0 -127
  557. package/python/build/lib/opentrons_shared_data/errors/__init__.py +0 -30
  558. package/python/build/lib/opentrons_shared_data/errors/categories.py +0 -60
  559. package/python/build/lib/opentrons_shared_data/errors/codes.py +0 -102
  560. package/python/build/lib/opentrons_shared_data/errors/exceptions.py +0 -799
  561. package/python/build/lib/opentrons_shared_data/gripper/__init__.py +0 -63
  562. package/python/build/lib/opentrons_shared_data/gripper/constants.py +0 -5
  563. package/python/build/lib/opentrons_shared_data/gripper/gripper_definition.py +0 -101
  564. package/python/build/lib/opentrons_shared_data/labware/__init__.py +0 -22
  565. package/python/build/lib/opentrons_shared_data/labware/constants.py +0 -7
  566. package/python/build/lib/opentrons_shared_data/labware/dev_types.py +0 -140
  567. package/python/build/lib/opentrons_shared_data/labware/labware_definition.py +0 -328
  568. package/python/build/lib/opentrons_shared_data/load.py +0 -57
  569. package/python/build/lib/opentrons_shared_data/module/__init__.py +0 -74
  570. package/python/build/lib/opentrons_shared_data/module/dev_types.py +0 -141
  571. package/python/build/lib/opentrons_shared_data/pipette/__init__.py +0 -107
  572. package/python/build/lib/opentrons_shared_data/pipette/dev_types.py +0 -177
  573. package/python/build/lib/opentrons_shared_data/pipette/file_operation_helpers.py +0 -37
  574. package/python/build/lib/opentrons_shared_data/pipette/load_data.py +0 -256
  575. package/python/build/lib/opentrons_shared_data/pipette/model_constants.py +0 -151
  576. package/python/build/lib/opentrons_shared_data/pipette/mutable_configurations.py +0 -402
  577. package/python/build/lib/opentrons_shared_data/pipette/pipette_definition.py +0 -389
  578. package/python/build/lib/opentrons_shared_data/pipette/pipette_load_name_conversions.py +0 -236
  579. package/python/build/lib/opentrons_shared_data/pipette/scripts/__init__.py +0 -0
  580. package/python/build/lib/opentrons_shared_data/pipette/scripts/build_json_script.py +0 -454
  581. package/python/build/lib/opentrons_shared_data/pipette/scripts/update_configuration_files.py +0 -453
  582. package/python/build/lib/opentrons_shared_data/pipette/types.py +0 -193
  583. package/python/build/lib/opentrons_shared_data/protocol/__init__.py +0 -13
  584. package/python/build/lib/opentrons_shared_data/protocol/constants.py +0 -98
  585. package/python/build/lib/opentrons_shared_data/protocol/dev_types.py +0 -436
  586. package/python/build/lib/opentrons_shared_data/protocol/models/__init__.py +0 -45
  587. package/python/build/lib/opentrons_shared_data/protocol/models/protocol_schema_v6.py +0 -145
  588. package/python/build/lib/opentrons_shared_data/protocol/models/protocol_schema_v7.py +0 -93
  589. package/python/build/lib/opentrons_shared_data/protocol/models/shared_models.py +0 -104
  590. package/python/build/lib/opentrons_shared_data/py.typed +0 -0
  591. package/python/build/lib/opentrons_shared_data/robot/__init__.py +0 -25
  592. package/python/build/lib/opentrons_shared_data/robot/dev_types.py +0 -37
  593. package/python/build/lib/tests/deck/__init__.py +0 -18
  594. package/python/build/lib/tests/deck/test_typechecks.py +0 -21
  595. package/python/build/lib/tests/errors/__init__.py +0 -1
  596. package/python/build/lib/tests/errors/test_error_completeness.py +0 -19
  597. package/python/build/lib/tests/errors/test_exceptions.py +0 -74
  598. package/python/build/lib/tests/gripper/__init__.py +0 -0
  599. package/python/build/lib/tests/gripper/test_definition.py +0 -30
  600. package/python/build/lib/tests/gripper/test_load.py +0 -16
  601. package/python/build/lib/tests/labware/__init__.py +0 -13
  602. package/python/build/lib/tests/labware/test_typechecks.py +0 -21
  603. package/python/build/lib/tests/module/__init__.py +0 -20
  604. package/python/build/lib/tests/module/test_load.py +0 -49
  605. package/python/build/lib/tests/module/test_typechecks.py +0 -34
  606. package/python/build/lib/tests/pipette/__init__.py +0 -0
  607. package/python/build/lib/tests/pipette/test_load_data.py +0 -102
  608. package/python/build/lib/tests/pipette/test_mutable_configurations.py +0 -266
  609. package/python/build/lib/tests/pipette/test_pipette_definition.py +0 -183
  610. package/python/build/lib/tests/pipette/test_pipette_load_name_conversions.py +0 -222
  611. package/python/build/lib/tests/pipette/test_typechecks.py +0 -50
  612. package/python/build/lib/tests/pipette/test_validate_schema.py +0 -36
  613. package/python/build/lib/tests/protocol/__init__.py +0 -15
  614. package/python/build/lib/tests/protocol/test_protocol_schema_v6.py +0 -107
  615. package/python/build/lib/tests/protocol/test_protocol_schema_v7.py +0 -34
  616. package/python/build/lib/tests/protocol/test_typechecks.py +0 -36
  617. package/python/build/lib/tests/robot/__init__.py +0 -0
  618. package/python/build/lib/tests/robot/test_typechecks.py +0 -20
  619. package/python/coverage.xml +0 -1549
  620. package/python/opentrons_shared_data/__pycache__/__init__.cpython-37.pyc +0 -0
  621. package/python/opentrons_shared_data/__pycache__/_version.cpython-37.pyc +0 -0
  622. package/python/opentrons_shared_data/__pycache__/load.cpython-37.pyc +0 -0
  623. package/python/opentrons_shared_data/command/__pycache__/__init__.cpython-37.pyc +0 -0
  624. package/python/opentrons_shared_data/deck/__pycache__/__init__.cpython-37.pyc +0 -0
  625. package/python/opentrons_shared_data/deck/__pycache__/deck_definitions.cpython-37.pyc +0 -0
  626. package/python/opentrons_shared_data/deck/__pycache__/dev_types.cpython-37.pyc +0 -0
  627. package/python/opentrons_shared_data/errors/__pycache__/__init__.cpython-37.pyc +0 -0
  628. package/python/opentrons_shared_data/errors/__pycache__/categories.cpython-37.pyc +0 -0
  629. package/python/opentrons_shared_data/errors/__pycache__/codes.cpython-37.pyc +0 -0
  630. package/python/opentrons_shared_data/errors/__pycache__/exceptions.cpython-37.pyc +0 -0
  631. package/python/opentrons_shared_data/gripper/__pycache__/__init__.cpython-37.pyc +0 -0
  632. package/python/opentrons_shared_data/gripper/__pycache__/constants.cpython-37.pyc +0 -0
  633. package/python/opentrons_shared_data/gripper/__pycache__/dev_types.cpython-37.pyc +0 -0
  634. package/python/opentrons_shared_data/gripper/__pycache__/gripper_definition.cpython-37.pyc +0 -0
  635. package/python/opentrons_shared_data/labware/__pycache__/__init__.cpython-37.pyc +0 -0
  636. package/python/opentrons_shared_data/labware/__pycache__/constants.cpython-37.pyc +0 -0
  637. package/python/opentrons_shared_data/labware/__pycache__/dev_types.cpython-37.pyc +0 -0
  638. package/python/opentrons_shared_data/labware/__pycache__/labware_definition.cpython-37.pyc +0 -0
  639. package/python/opentrons_shared_data/module/__pycache__/__init__.cpython-37.pyc +0 -0
  640. package/python/opentrons_shared_data/module/__pycache__/dev_types.cpython-37.pyc +0 -0
  641. package/python/opentrons_shared_data/pipette/__pycache__/__init__.cpython-37.pyc +0 -0
  642. package/python/opentrons_shared_data/pipette/__pycache__/dev_types.cpython-37.pyc +0 -0
  643. package/python/opentrons_shared_data/pipette/__pycache__/file_operation_helpers.cpython-37.pyc +0 -0
  644. package/python/opentrons_shared_data/pipette/__pycache__/load_data.cpython-37.pyc +0 -0
  645. package/python/opentrons_shared_data/pipette/__pycache__/model_constants.cpython-37.pyc +0 -0
  646. package/python/opentrons_shared_data/pipette/__pycache__/mutable_configurations.cpython-37.pyc +0 -0
  647. package/python/opentrons_shared_data/pipette/__pycache__/pipette_definition.cpython-37.pyc +0 -0
  648. package/python/opentrons_shared_data/pipette/__pycache__/pipette_load_name_conversions.cpython-37.pyc +0 -0
  649. package/python/opentrons_shared_data/pipette/__pycache__/types.cpython-37.pyc +0 -0
  650. package/python/opentrons_shared_data/protocol/__pycache__/__init__.cpython-37.pyc +0 -0
  651. package/python/opentrons_shared_data/protocol/__pycache__/constants.cpython-37.pyc +0 -0
  652. package/python/opentrons_shared_data/protocol/__pycache__/dev_types.cpython-37.pyc +0 -0
  653. package/python/opentrons_shared_data/protocol/models/__pycache__/__init__.cpython-37.pyc +0 -0
  654. package/python/opentrons_shared_data/protocol/models/__pycache__/protocol_schema_v6.cpython-37.pyc +0 -0
  655. package/python/opentrons_shared_data/protocol/models/__pycache__/protocol_schema_v7.cpython-37.pyc +0 -0
  656. package/python/opentrons_shared_data/protocol/models/__pycache__/protocol_schema_v8.cpython-37.pyc +0 -0
  657. package/python/opentrons_shared_data/protocol/models/__pycache__/shared_models.cpython-37.pyc +0 -0
  658. package/python/opentrons_shared_data/robot/__pycache__/__init__.cpython-37.pyc +0 -0
  659. package/python/opentrons_shared_data/robot/__pycache__/dev_types.cpython-37.pyc +0 -0
  660. package/python/opentrons_shared_data.egg-info/PKG-INFO +0 -26
  661. package/python/opentrons_shared_data.egg-info/SOURCES.txt +0 -81
  662. package/python/opentrons_shared_data.egg-info/dependency_links.txt +0 -1
  663. package/python/opentrons_shared_data.egg-info/not-zip-safe +0 -1
  664. package/python/opentrons_shared_data.egg-info/requires.txt +0 -3
  665. package/python/opentrons_shared_data.egg-info/top_level.txt +0 -2
  666. package/python/pyproject.toml +0 -3
  667. /package/lib/{opentrons-shared-data.js.LICENSE.txt → bundle.673284981fd97184260c.js.LICENSE.txt} +0 -0
@@ -1,389 +0,0 @@
1
- import re
2
- from typing import List, Dict, Tuple
3
- from pydantic import BaseModel, Field, validator
4
- from typing_extensions import Literal
5
- from dataclasses import dataclass
6
-
7
- from . import types as pip_types, dev_types
8
-
9
- PLUNGER_CURRENT_MINIMUM = 0.1
10
- PLUNGER_CURRENT_MAXIMUM = 1.5
11
-
12
- NOZZLE_MAP_NAMES = re.compile(r"[A-Z]{1}[0-9]{1,2}")
13
-
14
-
15
- # TODO (lc 12-5-2022) Ideally we can deprecate this
16
- # at somepoint once we load pipettes by channels and type
17
- @dataclass
18
- class PipetteNameType:
19
- pipette_type: pip_types.PipetteModelType
20
- pipette_channels: pip_types.PipetteChannelType
21
- pipette_generation: pip_types.PipetteGenerationType
22
-
23
- def __repr__(self) -> str:
24
- base_name = f"{self.pipette_type.name}_{str(self.pipette_channels)}"
25
- if self.pipette_generation == pip_types.PipetteGenerationType.GEN1:
26
- return base_name
27
- elif self.pipette_channels == pip_types.PipetteChannelType.NINETY_SIX_CHANNEL:
28
- return base_name
29
- else:
30
- return f"{base_name}_{self.pipette_generation.name.lower()}"
31
-
32
- def get_version(self) -> pip_types.PipetteVersionType:
33
- if self.pipette_generation == pip_types.PipetteGenerationType.FLEX:
34
- return pip_types.PipetteVersionType(3, 0)
35
- elif self.pipette_generation == pip_types.PipetteGenerationType.GEN2:
36
- return pip_types.PipetteVersionType(2, 0)
37
- else:
38
- return pip_types.PipetteVersionType(1, 0)
39
-
40
-
41
- @dataclass
42
- class PipetteModelVersionType:
43
- pipette_type: pip_types.PipetteModelType
44
- pipette_channels: pip_types.PipetteChannelType
45
- pipette_version: pip_types.PipetteVersionType
46
-
47
- def __repr__(self) -> str:
48
- base_name = f"{self.pipette_type.name}_{str(self.pipette_channels)}"
49
-
50
- return f"{base_name}_v{self.pipette_version}"
51
-
52
-
53
- class FlowRateDefinition(BaseModel):
54
- default: float = Field(..., description="Highest API level default fallback.")
55
- values_by_api_level: Dict[str, float] = Field(
56
- ..., description="flow rates keyed by API level.", alias="valuesByApiLevel"
57
- )
58
-
59
-
60
- PipetteFunctionKeyType = Literal["1", "2", "3"]
61
- ulPerMMType = Dict[PipetteFunctionKeyType, List[Tuple[float, float, float]]]
62
-
63
-
64
- class ulPerMMDefinition(BaseModel):
65
- default: ulPerMMType
66
-
67
-
68
- class SupportedTipsDefinition(BaseModel):
69
- """Tip parameters available for every tip size."""
70
-
71
- default_aspirate_flowrate: FlowRateDefinition = Field(
72
- ...,
73
- description="The flowrate used in aspirations by default.",
74
- alias="defaultAspirateFlowRate",
75
- )
76
- default_dispense_flowrate: FlowRateDefinition = Field(
77
- ...,
78
- description="The flowrate used in dispenses by default.",
79
- alias="defaultDispenseFlowRate",
80
- )
81
- default_blowout_flowrate: FlowRateDefinition = Field(
82
- ...,
83
- description="The flowrate used in blowouts by default.",
84
- alias="defaultBlowOutFlowRate",
85
- )
86
- default_flow_acceleration: float = Field(
87
- float("inf"), # no default works for all pipettes
88
- description="The acceleration used during aspirate/dispense/blowout in ul/s^2.",
89
- alias="defaultFlowAcceleration",
90
- )
91
- default_tip_length: float = Field(
92
- ...,
93
- description="The default tip length associated with this tip type.",
94
- alias="defaultTipLength",
95
- )
96
- default_return_tip_height: float = Field(
97
- default=0.5,
98
- description="The height to return a tip to its tiprack.",
99
- alias="defaultReturnTipHeight",
100
- )
101
- aspirate: ulPerMMDefinition = Field(
102
- ..., description="The default pipetting functions list for aspirate."
103
- )
104
- dispense: ulPerMMDefinition = Field(
105
- ..., description="The default pipetting functions list for dispensing."
106
- )
107
- default_push_out_volume: float = Field(
108
- ...,
109
- description="The default volume for a push-out during dispense.",
110
- alias="defaultPushOutVolume",
111
- )
112
-
113
-
114
- class MotorConfigurations(BaseModel):
115
- idle: float = Field(
116
- ..., description="The plunger motor current to use during idle states."
117
- )
118
- run: float = Field(
119
- ..., description="The plunger motor current to use during active states."
120
- )
121
-
122
-
123
- class PlungerPositions(BaseModel):
124
- top: float = Field(
125
- ...,
126
- description="The plunger position that describes max available volume of a pipette in mm.",
127
- )
128
- bottom: float = Field(
129
- ...,
130
- description="The plunger position that describes min available volume of a pipette in mm.",
131
- )
132
- blow_out: float = Field(
133
- ...,
134
- description="The plunger position past 0 volume to blow out liquid.",
135
- alias="blowout",
136
- )
137
- drop_tip: float = Field(
138
- ..., description="The plunger position used to drop tips.", alias="drop"
139
- )
140
-
141
-
142
- class TipHandlingConfigurations(BaseModel):
143
- current: float = Field(
144
- ...,
145
- description="Either the z motor current needed for picking up tip or the plunger motor current for dropping tip off the nozzle.",
146
- )
147
- speed: float = Field(
148
- ...,
149
- description="The speed to move the z or plunger axis for tip pickup or drop off.",
150
- )
151
- presses: int = Field(
152
- default=0.0, description="The number of tries required to force pick up a tip."
153
- )
154
- increment: float = Field(
155
- default=0.0,
156
- description="The increment to move the pipette down for force tip pickup retries.",
157
- )
158
- distance: float = Field(
159
- default=0.0, description="The distance to begin a pick up tip from."
160
- )
161
-
162
-
163
- class AvailableSensorDefinition(BaseModel):
164
- """The number and type of sensors available in the pipette."""
165
-
166
- sensors: List[str] = Field(..., description="")
167
-
168
-
169
- class PartialTipDefinition(BaseModel):
170
- partial_tip_supported: bool = Field(
171
- ...,
172
- description="Whether partial tip pick up is supported.",
173
- alias="partialTipSupported",
174
- )
175
- available_configurations: List[int] = Field(
176
- default=None,
177
- description="A list of the types of partial tip configurations supported, listed by channel ints",
178
- alias="availableConfigurations",
179
- )
180
- per_tip_pickup_current: float = Field(
181
- default=0.5,
182
- description="A current scale for pick up tip in a partial tip configuration",
183
- alias="perTipPickupCurrent",
184
- )
185
-
186
-
187
- class PipettePhysicalPropertiesDefinition(BaseModel):
188
- """The physical properties definition of a pipette."""
189
-
190
- display_name: str = Field(
191
- ...,
192
- description="The display or full product name of the pipette.",
193
- alias="displayName",
194
- )
195
- pipette_backcompat_names: List[dev_types.PipetteName] = Field(
196
- ...,
197
- description="A list of pipette names that are compatible with this pipette.",
198
- alias="backCompatNames",
199
- )
200
- pipette_type: pip_types.PipetteModelType = Field(
201
- ...,
202
- description="The pipette model type (related to number of channels).",
203
- alias="model",
204
- )
205
- display_category: pip_types.PipetteGenerationType = Field(
206
- ..., description="The product model of the pipette.", alias="displayCategory"
207
- )
208
- pick_up_tip_configurations: TipHandlingConfigurations = Field(
209
- ..., alias="pickUpTipConfigurations"
210
- )
211
- drop_tip_configurations: TipHandlingConfigurations = Field(
212
- ..., alias="dropTipConfigurations"
213
- )
214
- plunger_motor_configurations: MotorConfigurations = Field(
215
- ..., alias="plungerMotorConfigurations"
216
- )
217
- plunger_positions_configurations: Dict[
218
- pip_types.LiquidClasses, PlungerPositions
219
- ] = Field(..., alias="plungerPositionsConfigurations")
220
- available_sensors: AvailableSensorDefinition = Field(..., alias="availableSensors")
221
- partial_tip_configurations: PartialTipDefinition = Field(
222
- ..., alias="partialTipConfigurations"
223
- )
224
- channels: pip_types.PipetteChannelType = Field(
225
- ..., description="The maximum number of channels on the pipette."
226
- )
227
- shaft_diameter: float = Field(
228
- ..., description="The diameter of the pipette shaft.", alias="shaftDiameter"
229
- )
230
- shaft_ul_per_mm: float = Field(
231
- ...,
232
- description="The conversion rate between uL dispensed and mm of motor movement.",
233
- alias="shaftULperMM",
234
- )
235
- backlash_distance: float = Field(
236
- ...,
237
- description="The distance of backlash on the plunger motor.",
238
- alias="backlashDistance",
239
- )
240
- quirks: List[pip_types.Quirks] = Field(
241
- ..., description="The list of quirks available for the loaded configuration"
242
- )
243
-
244
- @validator("pipette_type", pre=True)
245
- def convert_pipette_model_string(cls, v: str) -> pip_types.PipetteModelType:
246
- return pip_types.PipetteModelType(v)
247
-
248
- @validator("channels", pre=True)
249
- def convert_channels(cls, v: int) -> pip_types.PipetteChannelType:
250
- return pip_types.PipetteChannelType(v)
251
-
252
- @validator("display_category", pre=True)
253
- def convert_display_category(cls, v: str) -> pip_types.PipetteGenerationType:
254
- if not v:
255
- return pip_types.PipetteGenerationType.GEN1
256
- return pip_types.PipetteGenerationType(v)
257
-
258
- @validator("quirks", pre=True)
259
- def convert_quirks(cls, v: List[str]) -> List[pip_types.Quirks]:
260
- return [pip_types.Quirks(q) for q in v]
261
-
262
- @validator("plunger_positions_configurations", pre=True)
263
- def convert_plunger_positions(
264
- cls, v: Dict[str, PlungerPositions]
265
- ) -> Dict[pip_types.LiquidClasses, PlungerPositions]:
266
- return {pip_types.LiquidClasses[key]: value for key, value in v.items()}
267
-
268
- class Config:
269
- json_encoders = {
270
- pip_types.PipetteChannelType: lambda v: v.value,
271
- pip_types.PipetteModelType: lambda v: v.value,
272
- pip_types.PipetteGenerationType: lambda v: v.value,
273
- pip_types.Quirks: lambda v: v.value,
274
- }
275
-
276
-
277
- class PipetteGeometryDefinition(BaseModel):
278
- """The geometry properties definition of a pipette."""
279
-
280
- nozzle_offset: List[float] = Field(..., alias="nozzleOffset")
281
- path_to_3D: str = Field(
282
- ...,
283
- description="The shared data relative path to the 3D representation of the pipette model.",
284
- alias="pathTo3D",
285
- )
286
- nozzle_map: Dict[str, List[float]] = Field(..., alias="nozzleMap")
287
-
288
- @validator("nozzle_map", pre=True)
289
- def check_nonempty_strings(
290
- cls, v: Dict[str, List[float]]
291
- ) -> Dict[str, List[float]]:
292
- # Note, the key should be able to be a regex but I think
293
- # we're not on a pydantic version that supports that.
294
- for k in v.keys():
295
- if not NOZZLE_MAP_NAMES.match(k):
296
- raise ValueError("{k} is not a valid key entry for nozzle map.")
297
- return v
298
-
299
-
300
- class PipetteLiquidPropertiesDefinition(BaseModel):
301
- """The liquid properties definition of a pipette."""
302
-
303
- supported_tips: Dict[pip_types.PipetteTipType, SupportedTipsDefinition] = Field(
304
- ..., alias="supportedTips"
305
- )
306
- tip_overlap_dictionary: Dict[str, float] = Field(
307
- ...,
308
- description="The default tip overlap associated with this tip type.",
309
- alias="defaultTipOverlapDictionary",
310
- )
311
- max_volume: int = Field(
312
- ...,
313
- description="The maximum supported volume of the pipette.",
314
- alias="maxVolume",
315
- )
316
- min_volume: float = Field(
317
- ...,
318
- description="The minimum supported volume of the pipette.",
319
- alias="minVolume",
320
- )
321
- default_tipracks: List[str] = Field(
322
- ...,
323
- description="A list of default tiprack paths.",
324
- regex="opentrons/[a-z0-9._]+/[0-9]",
325
- alias="defaultTipracks",
326
- )
327
-
328
- @validator("supported_tips", pre=True)
329
- def convert_aspirate_key_to_channel_type(
330
- cls, v: Dict[str, SupportedTipsDefinition]
331
- ) -> Dict[pip_types.PipetteTipType, SupportedTipsDefinition]:
332
- return {pip_types.PipetteTipType[key]: value for key, value in v.items()}
333
-
334
-
335
- class PipetteConfigurations(
336
- PipetteGeometryDefinition,
337
- PipettePhysicalPropertiesDefinition,
338
- ):
339
- """The full pipette configurations of a given model and version."""
340
-
341
- version: pip_types.PipetteVersionType = Field(
342
- ..., description="The version of the configuration loaded."
343
- )
344
- mount_configurations: pip_types.RobotMountConfigs = Field(
345
- ...,
346
- )
347
- liquid_properties: Dict[
348
- pip_types.LiquidClasses, PipetteLiquidPropertiesDefinition
349
- ] = Field(
350
- ..., description="A dictionary of liquid properties keyed by liquid classes."
351
- )
352
-
353
- @validator("liquid_properties", pre=True)
354
- def convert_liquid_properties_key(
355
- cls, v: Dict[str, PipetteLiquidPropertiesDefinition]
356
- ) -> Dict[pip_types.LiquidClasses, PipetteLiquidPropertiesDefinition]:
357
- return {pip_types.LiquidClasses[key]: value for key, value in v.items()}
358
-
359
-
360
- def liquid_class_for_volume_between_default_and_defaultlowvolume(
361
- volume: float,
362
- current_liquid_class_name: pip_types.LiquidClasses,
363
- available_liquid_classes: Dict[
364
- pip_types.LiquidClasses, PipetteLiquidPropertiesDefinition
365
- ],
366
- ) -> pip_types.LiquidClasses:
367
- """Determine the appropriate liquid class to use for a volume.
368
-
369
- This function has such a weird name because it is hardcoded to only use the liquid
370
- classes default and defaultLowVolume. It should no longer be used when those liquid
371
- classes change.
372
- """
373
- # For now, until we add more liquid classes, we're going to hardcode the default
374
- # and lowVolumeDefault liquid classes as the ones to switch between.
375
- has_lvd = pip_types.LiquidClasses.lowVolumeDefault in available_liquid_classes
376
-
377
- if not has_lvd:
378
- return pip_types.LiquidClasses.default
379
- if volume >= available_liquid_classes[pip_types.LiquidClasses.default].min_volume:
380
- return pip_types.LiquidClasses.default
381
- return pip_types.LiquidClasses.lowVolumeDefault
382
-
383
-
384
- def default_tip_for_liquid_class(
385
- liquid_class_config: PipetteLiquidPropertiesDefinition,
386
- ) -> pip_types.PipetteTipType:
387
- """Provide a "default tip", the one with the largest volume."""
388
- tip_names = liquid_class_config.supported_tips.keys()
389
- return sorted(tip_names, key=lambda tip: tip.value)[-1]
@@ -1,236 +0,0 @@
1
- import re
2
- from typing import List, Optional, Union, cast
3
- from .dev_types import PipetteModel, PipetteName
4
- from .types import (
5
- PipetteChannelType,
6
- PipetteModelType,
7
- PipetteVersionType,
8
- PipetteGenerationType,
9
- PipetteModelMajorVersionType,
10
- PipetteModelMinorVersionType,
11
- )
12
- from .pipette_definition import (
13
- PipetteNameType,
14
- PipetteModelVersionType,
15
- )
16
-
17
- DEFAULT_CALIBRATION_OFFSET = [0.0, 0.0, 0.0]
18
- DEFAULT_MODEL = PipetteModelType.p1000
19
- DEFAULT_CHANNELS = PipetteChannelType.SINGLE_CHANNEL
20
- DEFAULT_MODEL_VERSION = PipetteVersionType(major=1, minor=0)
21
-
22
- PIPETTE_AVAILABLE_TYPES = [m.name for m in PipetteModelType]
23
- PIPETTE_CHANNELS_INTS = [c.value for c in PipetteChannelType]
24
-
25
-
26
- def is_model(model_or_name: Union[PipetteName, PipetteModel, None]) -> bool:
27
- """Determine if we have a real model or just a PipetteName.
28
-
29
- Args:
30
- model_or_name (Union[PipetteName, PipetteModel, None]): The pipette we want to check.
31
-
32
- Returns:
33
- bool: Whether or not the given string is a PipetteModel
34
- """
35
- if not model_or_name:
36
- return False
37
- return "v" in model_or_name
38
-
39
-
40
- def supported_pipette(model_or_name: Union[PipetteName, PipetteModel, None]) -> bool:
41
- """Determine if a pipette type is supported.
42
-
43
- Args:
44
- model_or_name (Union[PipetteName, PipetteModel, None]): The pipette we want to check.
45
-
46
- Returns:
47
- bool: Whether or not the given pipette name or model is supported.
48
- """
49
- if not model_or_name:
50
- return False
51
- split_model_or_name = model_or_name.split("_")
52
- try:
53
- channels_as_int = int(channels_from_string(split_model_or_name[1]))
54
- except ValueError:
55
- channels_as_int = 0
56
- if (
57
- split_model_or_name[0] in PIPETTE_AVAILABLE_TYPES
58
- and channels_as_int in PIPETTE_CHANNELS_INTS
59
- ):
60
- return True
61
- return False
62
-
63
-
64
- def channels_from_string(channels: str) -> PipetteChannelType:
65
- """Convert channels from a string.
66
-
67
- With both `py:data:PipetteName` and `py:data:PipetteObject`, we refer to channel types
68
- as `single`, `multi` or `96`.
69
-
70
- Args:
71
- channels (str): The channel string we wish to convert.
72
-
73
- Returns:
74
- PipetteChannelType: A `py:obj:PipetteChannelType`
75
- representing the number of channels on a pipette.
76
-
77
- """
78
- if channels == "96":
79
- return PipetteChannelType.NINETY_SIX_CHANNEL
80
- elif channels == "multi":
81
- return PipetteChannelType.EIGHT_CHANNEL
82
- elif channels == "single":
83
- return PipetteChannelType.SINGLE_CHANNEL
84
- else:
85
- raise ValueError("Invalid number of channels")
86
-
87
-
88
- def version_from_string(version: str) -> PipetteVersionType:
89
- """Convert a version string to a py:obj:PipetteVersionType.
90
-
91
- The version string will either be in the format of `int.int` or `vint.int`.
92
-
93
- Args:
94
- version (str): The string version we wish to convert.
95
-
96
- Returns:
97
- PipetteVersionType: A pipette version object.
98
-
99
- """
100
- version_list = [v for v in re.split("\\.|[v]", version) if v]
101
- major = cast(PipetteModelMajorVersionType, int(version_list[0]))
102
- if len(version_list) > 1:
103
- minor = cast(PipetteModelMinorVersionType, int(version_list[1]))
104
- else:
105
- minor = 0
106
- return PipetteVersionType(major, minor)
107
-
108
-
109
- def version_from_generation(pipette_name_list: List[str]) -> PipetteVersionType:
110
- """Convert a string generation name to a py:obj:PipetteVersionType.
111
-
112
- Pipette generations are strings in the format of "gen1" or "gen2", and
113
- usually associated withe :py:data:PipetteName.
114
-
115
- Args:
116
- pipette_name_list (List[str]): A list of strings from the separated by `_`
117
- py:data:PipetteName.
118
-
119
- Returns:
120
- PipetteVersionType: A pipette version object.
121
-
122
- """
123
- if "flex" in pipette_name_list or "gen3" in pipette_name_list:
124
- return PipetteVersionType(3, 0)
125
- elif "gen2" in pipette_name_list:
126
- return PipetteVersionType(2, 0)
127
- else:
128
- return PipetteVersionType(1, 0)
129
-
130
-
131
- def generation_from_string(pipette_name_list: List[str]) -> PipetteGenerationType:
132
- """Convert a string generation name to a py:obj:PipetteGenerationType.
133
-
134
- Args:
135
- pipette_name_list (List[str]): A list of strings from the separated by `_`
136
- py:data:PipetteName or py:data:PipetteModel.
137
-
138
- Returns:
139
- PipetteGenerationType: A pipette version object.
140
-
141
- """
142
- if "flex" in pipette_name_list or "3." in pipette_name_list[-1]:
143
- return PipetteGenerationType.FLEX
144
- elif "gen2" in pipette_name_list or "2." in pipette_name_list[-1]:
145
- return PipetteGenerationType.GEN2
146
- else:
147
- return PipetteGenerationType.GEN1
148
-
149
-
150
- def convert_to_pipette_name_type(
151
- model_or_name: Union[PipetteName, PipetteModel]
152
- ) -> PipetteNameType:
153
- """Convert the py:data:PipetteName to a py:obj:PipetteModelVersionType.
154
-
155
- `PipetteNames` are in the format of "p300_single" or "p300_single_gen1".
156
-
157
- Args:
158
- name (PipetteName): The pipette name we want to convert.
159
-
160
- Returns:
161
- PipetteNameType: An object representing a broken out PipetteName
162
- string.
163
-
164
- """
165
- split_pipette_model_or_name = model_or_name.split("_")
166
- channels = channels_from_string(split_pipette_model_or_name[1])
167
- generation = generation_from_string(split_pipette_model_or_name)
168
- pipette_type = PipetteModelType[split_pipette_model_or_name[0]]
169
-
170
- return PipetteNameType(pipette_type, channels, generation)
171
-
172
-
173
- def convert_pipette_name(
174
- name: PipetteName, provided_version: Optional[str] = None
175
- ) -> PipetteModelVersionType:
176
- """Convert the py:data:PipetteName to a py:obj:PipetteModelVersionType.
177
-
178
- `PipetteNames` are in the format of "p300_single" or "p300_single_gen1".
179
-
180
- Args:
181
- name (PipetteName): The pipette name we want to convert.
182
-
183
- Returns:
184
- PipetteModelVersionType: An object representing a broken out PipetteName
185
- string.
186
-
187
- """
188
- split_pipette_name = name.split("_")
189
- channels = channels_from_string(split_pipette_name[1])
190
- if provided_version:
191
- version = version_from_string(provided_version)
192
- else:
193
- version = version_from_generation(split_pipette_name)
194
-
195
- pipette_type = PipetteModelType[split_pipette_name[0]]
196
-
197
- return PipetteModelVersionType(pipette_type, channels, version)
198
-
199
-
200
- def convert_pipette_model(
201
- model: Optional[PipetteModel], provided_version: Optional[str] = ""
202
- ) -> PipetteModelVersionType:
203
- """Convert the py:data:PipetteModel to a py:obj:PipetteModelVersionType.
204
-
205
- `PipetteModel` are in the format of "p300_single_v1.0" or "p300_single_v3.3".
206
-
207
- Sometimes, models may not have a version, in which case the `provided_version` arg
208
- allows you to specify a version to search for.
209
-
210
- Args:
211
- model (PipetteModel): The pipette model we want to convert.
212
- provided_version (str, Optional): The provided version we'd like to look for.
213
-
214
- Returns:
215
- PipetteModelVersionType: An object representing a broken out PipetteName
216
- string.
217
-
218
- """
219
- # TODO (lc 12-5-2022) This helper function is needed
220
- # until we stop using "name" and "model" to refer
221
- # to attached pipettes.
222
- # We need to figure out how to default the pipette model as well
223
- # rather than returning a p1000
224
- if model and not provided_version:
225
- pipette_type, parsed_channels, parsed_version = model.split("_")
226
- channels = channels_from_string(parsed_channels)
227
- version = version_from_string(parsed_version)
228
- elif model and provided_version:
229
- pipette_type, parsed_channels = model.split("_")
230
- channels = channels_from_string(parsed_channels)
231
- version = version_from_string(provided_version)
232
- else:
233
- pipette_type = DEFAULT_MODEL.value
234
- channels = DEFAULT_CHANNELS
235
- version = DEFAULT_MODEL_VERSION
236
- return PipetteModelVersionType(PipetteModelType[pipette_type], channels, version)