@opentrons/shared-data 0.1.7-alpha.0 → 0.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/.coveragerc +4 -0
  2. package/.flake8 +31 -0
  3. package/Config.in +11 -0
  4. package/LICENSE +202 -0
  5. package/Makefile +13 -14
  6. package/Makefile-python.mk +134 -0
  7. package/buildroot.mk +35 -0
  8. package/command/index.ts +16 -2
  9. package/command/schemas/12.json +65 -0
  10. package/command/schemas/13.json +7039 -0
  11. package/command/schemas/14.json +7254 -0
  12. package/command/types/annotation.ts +1 -1
  13. package/command/types/calibration.ts +7 -6
  14. package/command/types/gantry.ts +7 -6
  15. package/command/types/incidental.ts +1 -1
  16. package/command/types/index.ts +79 -20
  17. package/command/types/module.ts +98 -11
  18. package/command/types/pipetting.ts +9 -3
  19. package/command/types/robot.ts +98 -0
  20. package/command/types/setup.ts +8 -8
  21. package/command/types/support.ts +14 -2
  22. package/command/types/timing.ts +1 -1
  23. package/command/types/unsafe.ts +63 -1
  24. package/deck/definitions/5/ot2_short_trash.json +37 -0
  25. package/deck/definitions/5/ot2_standard.json +37 -0
  26. package/deck/definitions/5/ot3_standard.json +152 -51
  27. package/deck/index.ts +3 -6
  28. package/deck/schemas/5.json +46 -1
  29. package/errors/definitions/1/errors.json +12 -0
  30. package/errors/index.ts +2 -1
  31. package/labware/definitions/2/agilent_1_reservoir_290ml/3.json +80 -0
  32. package/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/3.json +4737 -0
  33. package/labware/definitions/2/axygen_96_wellplate_500ul/1.json +1036 -0
  34. package/labware/definitions/2/axygen_96_wellplate_500ul/2.json +1159 -0
  35. package/labware/definitions/2/biorad_384_wellplate_50ul/4.json +4748 -0
  36. package/labware/definitions/2/biorad_96_wellplate_200ul_pcr/4.json +1187 -0
  37. package/labware/definitions/2/corning_12_wellplate_6.9ml_flat/4.json +210 -0
  38. package/labware/definitions/2/corning_24_wellplate_3.4ml_flat/4.json +342 -0
  39. package/labware/definitions/2/corning_384_wellplate_112ul_flat/4.json +5116 -0
  40. package/labware/definitions/2/corning_48_wellplate_1.6ml_flat/4.json +605 -0
  41. package/labware/definitions/2/corning_48_wellplate_1.6ml_flat/5.json +610 -0
  42. package/labware/definitions/2/corning_6_wellplate_16.8ml_flat/4.json +134 -0
  43. package/labware/definitions/2/corning_96_wellplate_360ul_flat/4.json +1177 -0
  44. package/labware/definitions/2/corning_96_wellplate_360ul_lid/1.json +111 -0
  45. package/labware/definitions/2/ev_resin_tips_flex_96_labware/1.json +1 -1
  46. package/labware/definitions/2/ibidi_96_square_well_plate_300ul/1.json +1105 -0
  47. package/labware/definitions/2/ibidi_96_square_well_plate_300ul/2.json +1216 -0
  48. package/labware/definitions/2/ibidi_96_square_well_plate_300ul_lid/1.json +110 -0
  49. package/labware/definitions/2/nest_12_reservoir_22ml/1.json +232 -0
  50. package/labware/definitions/2/nest_1_reservoir_290ml/3.json +80 -0
  51. package/labware/definitions/2/nest_24_wellplate_10.4ml/1.json +386 -0
  52. package/labware/definitions/2/nest_8_reservoir_22ml/1.json +162 -0
  53. package/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/4.json +1166 -0
  54. package/labware/definitions/2/nest_96_wellplate_200ul_flat/4.json +1145 -0
  55. package/labware/definitions/2/nest_96_wellplate_2ml_deep/4.json +1261 -0
  56. package/labware/definitions/2/opentrons_24_aluminumblock_nest_0.5ml_screwcap/3.json +370 -0
  57. package/labware/definitions/2/opentrons_24_tuberack_nest_0.5ml_screwcap/3.json +371 -0
  58. package/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/4.json +1149 -0
  59. package/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/4.json +1174 -0
  60. package/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +5 -0
  61. package/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +5 -0
  62. package/labware/definitions/2/opentrons_flex_96_filtertiprack_20ul/1.json +5 -0
  63. package/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +5 -0
  64. package/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +5 -0
  65. package/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +5 -0
  66. package/labware/definitions/2/opentrons_flex_96_tiprack_20ul/1.json +5 -0
  67. package/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +5 -0
  68. package/labware/definitions/2/opentrons_flex_tiprack_lid/1.json +15 -9
  69. package/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +8 -0
  70. package/labware/definitions/2/opentrons_tough_universal_lid/1.json +16 -1
  71. package/labware/definitions/2/smc_384_read_plate/1.json +4701 -0
  72. package/labware/definitions/2/smc_384_read_plate/2.json +5100 -0
  73. package/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/3.json +1141 -0
  74. package/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/3.json +1141 -0
  75. package/labware/definitions/2/usascientific_12_reservoir_22ml/3.json +237 -0
  76. package/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/3.json +1243 -0
  77. package/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +1050 -0
  78. package/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +1202 -0
  79. package/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
  80. package/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +1037 -0
  81. package/labware/definitions/3/schema3test_flex_96_tiprack_adapter/999.json +70 -0
  82. package/labware/definitions/3/schema3test_flex_tiprack_lid/999.json +146 -0
  83. package/labware/definitions/3/schema3test_tough_pcr_auto_sealing_lid/999.json +162 -0
  84. package/labware/definitions/3/schema3test_universal_flat_adapter/999.json +157 -0
  85. package/labware/fixtures/2/fixture_user_volumes_prototype.json +1137 -0
  86. package/labware/fixtures/2/index.ts +4 -4
  87. package/labware/fixtures/3/fixture_2_plate.json +28 -11
  88. package/labware/fixtures/3/fixture_corning_24_plate.json +51 -34
  89. package/labware/fixtures/3/index.ts +4 -0
  90. package/labware/schemas/2.json +36 -1
  91. package/labware/schemas/3.json +115 -25
  92. package/lib/command/index.d.ts +4211 -2095
  93. package/lib/command/schemas/12.json +65 -0
  94. package/lib/command/schemas/13.json +7039 -0
  95. package/lib/command/schemas/14.json +7254 -0
  96. package/lib/command/types/annotation.d.ts +1 -1
  97. package/lib/command/types/calibration.d.ts +5 -5
  98. package/lib/command/types/gantry.d.ts +5 -4
  99. package/lib/command/types/incidental.d.ts +1 -1
  100. package/lib/command/types/index.d.ts +60 -14
  101. package/lib/command/types/module.d.ts +75 -13
  102. package/lib/command/types/pipetting.d.ts +8 -3
  103. package/lib/command/types/robot.d.ts +71 -0
  104. package/lib/command/types/setup.d.ts +5 -5
  105. package/lib/command/types/support.d.ts +3 -2
  106. package/lib/command/types/timing.d.ts +1 -1
  107. package/lib/command/types/unsafe.d.ts +44 -3
  108. package/lib/deck/definitions/5/ot2_short_trash.json +37 -0
  109. package/lib/deck/definitions/5/ot2_standard.json +37 -0
  110. package/lib/deck/definitions/5/ot3_standard.json +152 -51
  111. package/lib/deck/index.d.ts +3 -3
  112. package/lib/deck/schemas/5.json +46 -1
  113. package/lib/errors/definitions/1/errors.json +12 -0
  114. package/lib/errors/index.d.ts +1 -1
  115. package/lib/index.mjs +380872 -297265
  116. package/lib/js/constants.d.ts +45 -17
  117. package/lib/js/deck/index.d.ts +2 -2
  118. package/lib/js/fixtures.d.ts +78 -3
  119. package/lib/js/getLabware.d.ts +3 -3
  120. package/lib/js/gripper.d.ts +1 -1
  121. package/lib/js/helpers/__tests__/getMaxPushOutVolume.test.d.ts +1 -0
  122. package/lib/js/helpers/__tests__/getMmFromBottom.test.d.ts +1 -0
  123. package/lib/js/helpers/__tests__/getStackedItemsOnStartingDeck.test.d.ts +1 -0
  124. package/lib/js/helpers/__tests__/labwareSchemaShims.test.d.ts +1 -0
  125. package/lib/js/helpers/__tests__/liquidClasses.test.d.ts +1 -0
  126. package/lib/js/helpers/__tests__/pairsFromArray.test.d.ts +1 -0
  127. package/lib/js/helpers/__tests__/vectorMath.test.d.ts +1 -0
  128. package/lib/js/helpers/getFixedTrashLabwareDefinition.d.ts +2 -2
  129. package/lib/js/helpers/getLabwareDefURI.d.ts +3 -0
  130. package/lib/js/helpers/getLabwareDefinitionsByURIForProtocol.d.ts +6 -0
  131. package/lib/js/helpers/getLabwareInfoByLiquidId.d.ts +10 -0
  132. package/lib/js/helpers/getLiquidsByIdForLabware.d.ts +2 -0
  133. package/lib/js/helpers/getLoadedLabwareDefinitionsByUri.d.ts +2 -2
  134. package/lib/js/helpers/getMaxPushOutVolume.d.ts +2 -0
  135. package/lib/js/helpers/getMmFromBottom.d.ts +2 -0
  136. package/lib/js/helpers/getSimplestFlexDeckConfig.d.ts +1 -1
  137. package/lib/js/helpers/getStackedItemsOnStartingDeck.d.ts +50 -0
  138. package/lib/js/helpers/getStandardDeckViewLayerBlockList.d.ts +2 -0
  139. package/lib/js/helpers/getTipTypeFromTipRackDefinition.d.ts +2 -2
  140. package/lib/js/helpers/getWellFillFromLabwareId.d.ts +4 -0
  141. package/lib/js/helpers/getWellNamePerMultiTip.d.ts +3 -3
  142. package/lib/js/helpers/getWellRangeForLiquidLabwarePair.d.ts +6 -0
  143. package/lib/js/helpers/getWellTotalVolume.d.ts +2 -2
  144. package/lib/js/helpers/index.d.ts +25 -14
  145. package/lib/js/helpers/labwareInference.d.ts +3 -3
  146. package/lib/js/helpers/liquidClasses.d.ts +10 -0
  147. package/lib/js/helpers/matrixMath.d.ts +3 -0
  148. package/lib/js/helpers/pairsFromArray.d.ts +8 -0
  149. package/lib/js/helpers/parseAddressableArea.d.ts +1 -1
  150. package/lib/js/helpers/parseProtocolCommands.d.ts +5 -5
  151. package/lib/js/helpers/positionMath.d.ts +127 -0
  152. package/lib/js/helpers/validateCustomLabwareHelper.d.ts +2 -2
  153. package/lib/js/helpers/vectorMath.d.ts +14 -0
  154. package/lib/js/helpers/wellSets.d.ts +4 -4
  155. package/lib/js/labware.d.ts +10 -9
  156. package/lib/js/labwareTools/index.d.ts +1 -1
  157. package/lib/js/liquidClasses.d.ts +4 -0
  158. package/lib/js/modules.d.ts +2 -2
  159. package/lib/js/pipettes.d.ts +3 -2
  160. package/lib/js/types.d.ts +105 -38
  161. package/lib/labware/definitions/2/agilent_1_reservoir_290ml/3.json +80 -0
  162. package/lib/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/3.json +4737 -0
  163. package/lib/labware/definitions/2/axygen_96_wellplate_500ul/1.json +1036 -0
  164. package/lib/labware/definitions/2/axygen_96_wellplate_500ul/2.json +1159 -0
  165. package/lib/labware/definitions/2/biorad_384_wellplate_50ul/4.json +4748 -0
  166. package/lib/labware/definitions/2/biorad_96_wellplate_200ul_pcr/4.json +1187 -0
  167. package/lib/labware/definitions/2/corning_12_wellplate_6.9ml_flat/4.json +210 -0
  168. package/lib/labware/definitions/2/corning_24_wellplate_3.4ml_flat/4.json +342 -0
  169. package/lib/labware/definitions/2/corning_384_wellplate_112ul_flat/4.json +5116 -0
  170. package/lib/labware/definitions/2/corning_48_wellplate_1.6ml_flat/4.json +605 -0
  171. package/lib/labware/definitions/2/corning_48_wellplate_1.6ml_flat/5.json +610 -0
  172. package/lib/labware/definitions/2/corning_6_wellplate_16.8ml_flat/4.json +134 -0
  173. package/lib/labware/definitions/2/corning_96_wellplate_360ul_flat/4.json +1177 -0
  174. package/lib/labware/definitions/2/corning_96_wellplate_360ul_lid/1.json +111 -0
  175. package/lib/labware/definitions/2/ev_resin_tips_flex_96_labware/1.json +1 -1
  176. package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul/1.json +1105 -0
  177. package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul/2.json +1216 -0
  178. package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul_lid/1.json +110 -0
  179. package/lib/labware/definitions/2/nest_12_reservoir_22ml/1.json +232 -0
  180. package/lib/labware/definitions/2/nest_1_reservoir_290ml/3.json +80 -0
  181. package/lib/labware/definitions/2/nest_24_wellplate_10.4ml/1.json +386 -0
  182. package/lib/labware/definitions/2/nest_8_reservoir_22ml/1.json +162 -0
  183. package/lib/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/4.json +1166 -0
  184. package/lib/labware/definitions/2/nest_96_wellplate_200ul_flat/4.json +1145 -0
  185. package/lib/labware/definitions/2/nest_96_wellplate_2ml_deep/4.json +1261 -0
  186. package/lib/labware/definitions/2/opentrons_24_aluminumblock_nest_0.5ml_screwcap/3.json +370 -0
  187. package/lib/labware/definitions/2/opentrons_24_tuberack_nest_0.5ml_screwcap/3.json +371 -0
  188. package/lib/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/4.json +1149 -0
  189. package/lib/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/4.json +1174 -0
  190. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +5 -0
  191. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +5 -0
  192. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_20ul/1.json +5 -0
  193. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +5 -0
  194. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +5 -0
  195. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +5 -0
  196. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_20ul/1.json +5 -0
  197. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +5 -0
  198. package/lib/labware/definitions/2/opentrons_flex_tiprack_lid/1.json +15 -9
  199. package/lib/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +8 -0
  200. package/lib/labware/definitions/2/opentrons_tough_universal_lid/1.json +16 -1
  201. package/lib/labware/definitions/2/smc_384_read_plate/1.json +4701 -0
  202. package/lib/labware/definitions/2/smc_384_read_plate/2.json +5100 -0
  203. package/lib/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/3.json +1141 -0
  204. package/lib/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/3.json +1141 -0
  205. package/lib/labware/definitions/2/usascientific_12_reservoir_22ml/3.json +237 -0
  206. package/lib/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/3.json +1243 -0
  207. package/lib/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +1050 -0
  208. package/lib/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +1202 -0
  209. package/lib/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
  210. package/lib/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +1037 -0
  211. package/lib/labware/definitions/3/schema3test_flex_96_tiprack_adapter/999.json +70 -0
  212. package/lib/labware/definitions/3/schema3test_flex_tiprack_lid/999.json +146 -0
  213. package/lib/labware/definitions/3/schema3test_tough_pcr_auto_sealing_lid/999.json +162 -0
  214. package/lib/labware/definitions/3/schema3test_universal_flat_adapter/999.json +157 -0
  215. package/lib/labware/fixtures/2/fixture_user_volumes_prototype.json +1137 -0
  216. package/lib/labware/fixtures/2/index.d.ts +4 -4
  217. package/lib/labware/fixtures/3/fixture_2_plate.json +28 -11
  218. package/lib/labware/fixtures/3/fixture_corning_24_plate.json +51 -34
  219. package/lib/labware/fixtures/3/index.d.ts +3 -0
  220. package/lib/labware/schemas/2.json +36 -1
  221. package/lib/labware/schemas/3.json +115 -25
  222. package/lib/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +1957 -1406
  223. package/lib/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +1781 -1230
  224. package/lib/liquid-class/definitions/1/{water.json → water/1.json} +1567 -1082
  225. package/lib/liquid-class/fixtures/1/fixture_glycerol50.json +67 -48
  226. package/lib/liquid-class/schemas/1.json +40 -48
  227. package/lib/module/definitions/3/absorbanceReaderV1.json +20 -150
  228. package/lib/module/definitions/3/flexStackerModuleV1.json +31 -385
  229. package/lib/module/definitions/3/heaterShakerModuleV1.json +16 -357
  230. package/lib/module/definitions/3/magneticBlockV1.json +18 -148
  231. package/lib/module/definitions/3/magneticModuleV1.json +16 -398
  232. package/lib/module/definitions/3/magneticModuleV2.json +16 -398
  233. package/lib/module/definitions/3/temperatureModuleV1.json +16 -152
  234. package/lib/module/definitions/3/temperatureModuleV2.json +16 -152
  235. package/lib/module/definitions/3/thermocyclerModuleV1.json +16 -1339
  236. package/lib/module/definitions/3/thermocyclerModuleV2.json +18 -3616
  237. package/lib/module/schemas/3.json +111 -10
  238. package/lib/pipette/definitions/1/pipetteModelSpecs.json +336 -0
  239. package/lib/pipette/definitions/2/general/ninety_six_channel/p200/3_2.json +660 -0
  240. package/lib/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +4 -0
  241. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p200/3_0.json +4 -0
  242. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p200/3_2.json +309 -0
  243. package/lib/pipette/definitions/2/geometry/single_channel/p50/3_6.json +4 -0
  244. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/1_0.json +11 -11
  245. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_0.json +12 -12
  246. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_1.json +28 -18
  247. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_2.json +192 -0
  248. package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_6.json +5 -5
  249. package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_6.json +5 -5
  250. package/lib/pipette/fixtures/name/index.d.ts +1 -1
  251. package/lib/protocol/fixtures/index.d.ts +2 -2
  252. package/lib/protocol/index.d.ts +7 -7
  253. package/lib/protocol/types/schemaV4.d.ts +1 -1
  254. package/lib/protocol/types/schemaV5.d.ts +1 -1
  255. package/lib/protocol/types/schemaV5Addendum.d.ts +1 -1
  256. package/lib/protocol/types/schemaV6/command/gantry.d.ts +4 -4
  257. package/lib/protocol/types/schemaV6/command/index.d.ts +5 -5
  258. package/lib/protocol/types/schemaV6/command/module.d.ts +1 -1
  259. package/lib/protocol/types/schemaV6/command/pipetting.d.ts +1 -1
  260. package/lib/protocol/types/schemaV6/command/setup.d.ts +1 -1
  261. package/lib/protocol/types/schemaV6/command/timing.d.ts +1 -1
  262. package/lib/protocol/types/schemaV6/index.d.ts +2 -2
  263. package/lib/protocol/types/schemaV7/command/annotation.d.ts +1 -1
  264. package/lib/protocol/types/schemaV7/command/calibration.d.ts +5 -5
  265. package/lib/protocol/types/schemaV7/command/gantry.d.ts +4 -4
  266. package/lib/protocol/types/schemaV7/command/incidental.d.ts +1 -1
  267. package/lib/protocol/types/schemaV7/command/index.d.ts +7 -7
  268. package/lib/protocol/types/schemaV7/command/module.d.ts +1 -1
  269. package/lib/protocol/types/schemaV7/command/pipetting.d.ts +1 -1
  270. package/lib/protocol/types/schemaV7/command/setup.d.ts +1 -1
  271. package/lib/protocol/types/schemaV7/command/timing.d.ts +1 -1
  272. package/lib/protocol/types/schemaV7/index.d.ts +2 -2
  273. package/lib/protocol/types/schemaV8/index.d.ts +18 -2
  274. package/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +1957 -1406
  275. package/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +1781 -1230
  276. package/liquid-class/definitions/1/{water.json → water/1.json} +1567 -1082
  277. package/liquid-class/fixtures/1/fixture_glycerol50.json +67 -48
  278. package/liquid-class/schemas/1.json +40 -48
  279. package/module/definitions/3/absorbanceReaderV1.json +20 -150
  280. package/module/definitions/3/flexStackerModuleV1.json +31 -385
  281. package/module/definitions/3/heaterShakerModuleV1.json +16 -357
  282. package/module/definitions/3/magneticBlockV1.json +18 -148
  283. package/module/definitions/3/magneticModuleV1.json +16 -398
  284. package/module/definitions/3/magneticModuleV2.json +16 -398
  285. package/module/definitions/3/temperatureModuleV1.json +16 -152
  286. package/module/definitions/3/temperatureModuleV2.json +16 -152
  287. package/module/definitions/3/thermocyclerModuleV1.json +16 -1339
  288. package/module/definitions/3/thermocyclerModuleV2.json +18 -3616
  289. package/module/schemas/3.json +111 -10
  290. package/mypy.ini +22 -0
  291. package/package.json +1 -1
  292. package/pipette/definitions/1/pipetteModelSpecs.json +336 -0
  293. package/pipette/definitions/2/general/ninety_six_channel/p200/3_2.json +660 -0
  294. package/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +4 -0
  295. package/pipette/definitions/2/geometry/ninety_six_channel/p200/3_0.json +4 -0
  296. package/pipette/definitions/2/geometry/ninety_six_channel/p200/3_2.json +309 -0
  297. package/pipette/definitions/2/geometry/single_channel/p50/3_6.json +4 -0
  298. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/1_0.json +11 -11
  299. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_0.json +12 -12
  300. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_1.json +28 -18
  301. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_2.json +192 -0
  302. package/pipette/definitions/2/liquid/single_channel/p50/default/3_6.json +5 -5
  303. package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_6.json +5 -5
  304. package/pipette/fixtures/index.ts +12 -12
  305. package/pipette/fixtures/name/index.ts +1 -0
  306. package/protocol/fixtures/index.ts +2 -3
  307. package/protocol/index.ts +9 -8
  308. package/protocol/types/schemaV4.ts +4 -4
  309. package/protocol/types/schemaV5.ts +1 -1
  310. package/protocol/types/schemaV5Addendum.ts +1 -1
  311. package/protocol/types/schemaV6/command/gantry.ts +4 -4
  312. package/protocol/types/schemaV6/command/index.ts +6 -6
  313. package/protocol/types/schemaV6/command/module.ts +1 -1
  314. package/protocol/types/schemaV6/command/pipetting.ts +2 -1
  315. package/protocol/types/schemaV6/command/setup.ts +2 -2
  316. package/protocol/types/schemaV6/command/timing.ts +1 -1
  317. package/protocol/types/schemaV6/index.ts +3 -3
  318. package/protocol/types/schemaV7/command/annotation.ts +1 -1
  319. package/protocol/types/schemaV7/command/calibration.ts +7 -6
  320. package/protocol/types/schemaV7/command/gantry.ts +5 -5
  321. package/protocol/types/schemaV7/command/incidental.ts +1 -1
  322. package/protocol/types/schemaV7/command/index.ts +14 -14
  323. package/protocol/types/schemaV7/command/module.ts +1 -1
  324. package/protocol/types/schemaV7/command/pipetting.ts +2 -1
  325. package/protocol/types/schemaV7/command/setup.ts +2 -2
  326. package/protocol/types/schemaV7/command/timing.ts +1 -1
  327. package/protocol/types/schemaV7/index.ts +3 -3
  328. package/protocol/types/schemaV8/index.ts +32 -4
  329. package/pyproject.toml +119 -0
  330. package/pytest.ini +8 -0
  331. package/python_tests/__init__.py +1 -0
  332. package/python_tests/command/test_known_schema_ids.py +9 -0
  333. package/python_tests/conftest.py +108 -0
  334. package/python_tests/deck/__init__.py +0 -0
  335. package/python_tests/deck/test_list_names.py +12 -0
  336. package/python_tests/deck/test_position.py +101 -0
  337. package/python_tests/deck/test_typechecks.py +23 -0
  338. package/python_tests/errors/__init__.py +1 -0
  339. package/python_tests/errors/test_error_completeness.py +19 -0
  340. package/python_tests/errors/test_exceptions.py +74 -0
  341. package/python_tests/gripper/__init__.py +0 -0
  342. package/python_tests/gripper/test_definition.py +30 -0
  343. package/python_tests/gripper/test_load.py +19 -0
  344. package/python_tests/labware/__init__.py +13 -0
  345. package/python_tests/labware/test_typechecks.py +80 -0
  346. package/python_tests/liquid_classes/__init__.py +0 -0
  347. package/python_tests/liquid_classes/test_liquid_class_values.py +59 -0
  348. package/python_tests/liquid_classes/test_load.py +45 -0
  349. package/python_tests/liquid_classes/test_validations.py +192 -0
  350. package/python_tests/module/__init__.py +20 -0
  351. package/python_tests/module/test_load.py +49 -0
  352. package/python_tests/module/test_typechecks.py +26 -0
  353. package/python_tests/pipette/__init__.py +0 -0
  354. package/python_tests/pipette/test_load_data.py +109 -0
  355. package/python_tests/pipette/test_max_flow_rates_per_volume.py +112 -0
  356. package/python_tests/pipette/test_mutable_configurations.py +467 -0
  357. package/python_tests/pipette/test_pipette_definition.py +183 -0
  358. package/python_tests/pipette/test_pipette_load_name_conversions.py +244 -0
  359. package/python_tests/pipette/test_typechecks.py +47 -0
  360. package/python_tests/pipette/test_validate_schema.py +198 -0
  361. package/python_tests/protocol/__init__.py +7 -0
  362. package/python_tests/protocol/test_protocol_schema_v6.py +108 -0
  363. package/python_tests/protocol/test_protocol_schema_v7.py +35 -0
  364. package/python_tests/protocol/test_protocol_schema_v8.py +17 -0
  365. package/python_tests/protocol/test_typechecks.py +30 -0
  366. package/python_tests/robot/__init__.py +0 -0
  367. package/python_tests/robot/test_typechecks.py +13 -0
  368. package/lib/js/cypressUtils.d.ts +0 -1
  369. package/lib/js/helpers/getVectorDifference.d.ts +0 -2
  370. package/lib/js/helpers/getVectorSum.d.ts +0 -2
  371. /package/lib/js/{helpers/__tests__/getVectorDifference.test.d.ts → __tests__/fixtures.test.d.ts} +0 -0
  372. /package/lib/js/helpers/__tests__/{getVectorSum.test.d.ts → getLabwareInfoByLiquidId.test.d.ts} +0 -0
@@ -0,0 +1,1141 @@
1
+ {
2
+ "ordering": [
3
+ ["A1", "B1", "C1", "D1", "E1", "F1", "G1", "H1"],
4
+ ["A2", "B2", "C2", "D2", "E2", "F2", "G2", "H2"],
5
+ ["A3", "B3", "C3", "D3", "E3", "F3", "G3", "H3"],
6
+ ["A4", "B4", "C4", "D4", "E4", "F4", "G4", "H4"],
7
+ ["A5", "B5", "C5", "D5", "E5", "F5", "G5", "H5"],
8
+ ["A6", "B6", "C6", "D6", "E6", "F6", "G6", "H6"],
9
+ ["A7", "B7", "C7", "D7", "E7", "F7", "G7", "H7"],
10
+ ["A8", "B8", "C8", "D8", "E8", "F8", "G8", "H8"],
11
+ ["A9", "B9", "C9", "D9", "E9", "F9", "G9", "H9"],
12
+ ["A10", "B10", "C10", "D10", "E10", "F10", "G10", "H10"],
13
+ ["A11", "B11", "C11", "D11", "E11", "F11", "G11", "H11"],
14
+ ["A12", "B12", "C12", "D12", "E12", "F12", "G12", "H12"]
15
+ ],
16
+ "brand": {
17
+ "brand": "Thermo Scientific",
18
+ "brandId": ["278743", "278752"],
19
+ "links": ["https://www.thermofisher.com/order/catalog/product/278743"]
20
+ },
21
+ "metadata": {
22
+ "displayName": "Thermo Scientific Nunc 96 Well Plate 2000 µL",
23
+ "displayCategory": "wellPlate",
24
+ "displayVolumeUnits": "µL",
25
+ "tags": []
26
+ },
27
+ "dimensions": {
28
+ "xDimension": 127.8,
29
+ "yDimension": 85.5,
30
+ "zDimension": 43.6
31
+ },
32
+ "wells": {
33
+ "A1": {
34
+ "depth": 41.5,
35
+ "totalLiquidVolume": 2000,
36
+ "shape": "circular",
37
+ "diameter": 8.5,
38
+ "x": 14.3,
39
+ "y": 74.2,
40
+ "z": 2.1,
41
+ "geometryDefinitionId": "conicalWell"
42
+ },
43
+ "B1": {
44
+ "depth": 41.5,
45
+ "totalLiquidVolume": 2000,
46
+ "shape": "circular",
47
+ "diameter": 8.5,
48
+ "x": 14.3,
49
+ "y": 65.2,
50
+ "z": 2.1,
51
+ "geometryDefinitionId": "conicalWell"
52
+ },
53
+ "C1": {
54
+ "depth": 41.5,
55
+ "totalLiquidVolume": 2000,
56
+ "shape": "circular",
57
+ "diameter": 8.5,
58
+ "x": 14.3,
59
+ "y": 56.2,
60
+ "z": 2.1,
61
+ "geometryDefinitionId": "conicalWell"
62
+ },
63
+ "D1": {
64
+ "depth": 41.5,
65
+ "totalLiquidVolume": 2000,
66
+ "shape": "circular",
67
+ "diameter": 8.5,
68
+ "x": 14.3,
69
+ "y": 47.2,
70
+ "z": 2.1,
71
+ "geometryDefinitionId": "conicalWell"
72
+ },
73
+ "E1": {
74
+ "depth": 41.5,
75
+ "totalLiquidVolume": 2000,
76
+ "shape": "circular",
77
+ "diameter": 8.5,
78
+ "x": 14.3,
79
+ "y": 38.2,
80
+ "z": 2.1,
81
+ "geometryDefinitionId": "conicalWell"
82
+ },
83
+ "F1": {
84
+ "depth": 41.5,
85
+ "totalLiquidVolume": 2000,
86
+ "shape": "circular",
87
+ "diameter": 8.5,
88
+ "x": 14.3,
89
+ "y": 29.2,
90
+ "z": 2.1,
91
+ "geometryDefinitionId": "conicalWell"
92
+ },
93
+ "G1": {
94
+ "depth": 41.5,
95
+ "totalLiquidVolume": 2000,
96
+ "shape": "circular",
97
+ "diameter": 8.5,
98
+ "x": 14.3,
99
+ "y": 20.2,
100
+ "z": 2.1,
101
+ "geometryDefinitionId": "conicalWell"
102
+ },
103
+ "H1": {
104
+ "depth": 41.5,
105
+ "totalLiquidVolume": 2000,
106
+ "shape": "circular",
107
+ "diameter": 8.5,
108
+ "x": 14.3,
109
+ "y": 11.2,
110
+ "z": 2.1,
111
+ "geometryDefinitionId": "conicalWell"
112
+ },
113
+ "A2": {
114
+ "depth": 41.5,
115
+ "totalLiquidVolume": 2000,
116
+ "shape": "circular",
117
+ "diameter": 8.5,
118
+ "x": 23.3,
119
+ "y": 74.2,
120
+ "z": 2.1,
121
+ "geometryDefinitionId": "conicalWell"
122
+ },
123
+ "B2": {
124
+ "depth": 41.5,
125
+ "totalLiquidVolume": 2000,
126
+ "shape": "circular",
127
+ "diameter": 8.5,
128
+ "x": 23.3,
129
+ "y": 65.2,
130
+ "z": 2.1,
131
+ "geometryDefinitionId": "conicalWell"
132
+ },
133
+ "C2": {
134
+ "depth": 41.5,
135
+ "totalLiquidVolume": 2000,
136
+ "shape": "circular",
137
+ "diameter": 8.5,
138
+ "x": 23.3,
139
+ "y": 56.2,
140
+ "z": 2.1,
141
+ "geometryDefinitionId": "conicalWell"
142
+ },
143
+ "D2": {
144
+ "depth": 41.5,
145
+ "totalLiquidVolume": 2000,
146
+ "shape": "circular",
147
+ "diameter": 8.5,
148
+ "x": 23.3,
149
+ "y": 47.2,
150
+ "z": 2.1,
151
+ "geometryDefinitionId": "conicalWell"
152
+ },
153
+ "E2": {
154
+ "depth": 41.5,
155
+ "totalLiquidVolume": 2000,
156
+ "shape": "circular",
157
+ "diameter": 8.5,
158
+ "x": 23.3,
159
+ "y": 38.2,
160
+ "z": 2.1,
161
+ "geometryDefinitionId": "conicalWell"
162
+ },
163
+ "F2": {
164
+ "depth": 41.5,
165
+ "totalLiquidVolume": 2000,
166
+ "shape": "circular",
167
+ "diameter": 8.5,
168
+ "x": 23.3,
169
+ "y": 29.2,
170
+ "z": 2.1,
171
+ "geometryDefinitionId": "conicalWell"
172
+ },
173
+ "G2": {
174
+ "depth": 41.5,
175
+ "totalLiquidVolume": 2000,
176
+ "shape": "circular",
177
+ "diameter": 8.5,
178
+ "x": 23.3,
179
+ "y": 20.2,
180
+ "z": 2.1,
181
+ "geometryDefinitionId": "conicalWell"
182
+ },
183
+ "H2": {
184
+ "depth": 41.5,
185
+ "totalLiquidVolume": 2000,
186
+ "shape": "circular",
187
+ "diameter": 8.5,
188
+ "x": 23.3,
189
+ "y": 11.2,
190
+ "z": 2.1,
191
+ "geometryDefinitionId": "conicalWell"
192
+ },
193
+ "A3": {
194
+ "depth": 41.5,
195
+ "totalLiquidVolume": 2000,
196
+ "shape": "circular",
197
+ "diameter": 8.5,
198
+ "x": 32.3,
199
+ "y": 74.2,
200
+ "z": 2.1,
201
+ "geometryDefinitionId": "conicalWell"
202
+ },
203
+ "B3": {
204
+ "depth": 41.5,
205
+ "totalLiquidVolume": 2000,
206
+ "shape": "circular",
207
+ "diameter": 8.5,
208
+ "x": 32.3,
209
+ "y": 65.2,
210
+ "z": 2.1,
211
+ "geometryDefinitionId": "conicalWell"
212
+ },
213
+ "C3": {
214
+ "depth": 41.5,
215
+ "totalLiquidVolume": 2000,
216
+ "shape": "circular",
217
+ "diameter": 8.5,
218
+ "x": 32.3,
219
+ "y": 56.2,
220
+ "z": 2.1,
221
+ "geometryDefinitionId": "conicalWell"
222
+ },
223
+ "D3": {
224
+ "depth": 41.5,
225
+ "totalLiquidVolume": 2000,
226
+ "shape": "circular",
227
+ "diameter": 8.5,
228
+ "x": 32.3,
229
+ "y": 47.2,
230
+ "z": 2.1,
231
+ "geometryDefinitionId": "conicalWell"
232
+ },
233
+ "E3": {
234
+ "depth": 41.5,
235
+ "totalLiquidVolume": 2000,
236
+ "shape": "circular",
237
+ "diameter": 8.5,
238
+ "x": 32.3,
239
+ "y": 38.2,
240
+ "z": 2.1,
241
+ "geometryDefinitionId": "conicalWell"
242
+ },
243
+ "F3": {
244
+ "depth": 41.5,
245
+ "totalLiquidVolume": 2000,
246
+ "shape": "circular",
247
+ "diameter": 8.5,
248
+ "x": 32.3,
249
+ "y": 29.2,
250
+ "z": 2.1,
251
+ "geometryDefinitionId": "conicalWell"
252
+ },
253
+ "G3": {
254
+ "depth": 41.5,
255
+ "totalLiquidVolume": 2000,
256
+ "shape": "circular",
257
+ "diameter": 8.5,
258
+ "x": 32.3,
259
+ "y": 20.2,
260
+ "z": 2.1,
261
+ "geometryDefinitionId": "conicalWell"
262
+ },
263
+ "H3": {
264
+ "depth": 41.5,
265
+ "totalLiquidVolume": 2000,
266
+ "shape": "circular",
267
+ "diameter": 8.5,
268
+ "x": 32.3,
269
+ "y": 11.2,
270
+ "z": 2.1,
271
+ "geometryDefinitionId": "conicalWell"
272
+ },
273
+ "A4": {
274
+ "depth": 41.5,
275
+ "totalLiquidVolume": 2000,
276
+ "shape": "circular",
277
+ "diameter": 8.5,
278
+ "x": 41.3,
279
+ "y": 74.2,
280
+ "z": 2.1,
281
+ "geometryDefinitionId": "conicalWell"
282
+ },
283
+ "B4": {
284
+ "depth": 41.5,
285
+ "totalLiquidVolume": 2000,
286
+ "shape": "circular",
287
+ "diameter": 8.5,
288
+ "x": 41.3,
289
+ "y": 65.2,
290
+ "z": 2.1,
291
+ "geometryDefinitionId": "conicalWell"
292
+ },
293
+ "C4": {
294
+ "depth": 41.5,
295
+ "totalLiquidVolume": 2000,
296
+ "shape": "circular",
297
+ "diameter": 8.5,
298
+ "x": 41.3,
299
+ "y": 56.2,
300
+ "z": 2.1,
301
+ "geometryDefinitionId": "conicalWell"
302
+ },
303
+ "D4": {
304
+ "depth": 41.5,
305
+ "totalLiquidVolume": 2000,
306
+ "shape": "circular",
307
+ "diameter": 8.5,
308
+ "x": 41.3,
309
+ "y": 47.2,
310
+ "z": 2.1,
311
+ "geometryDefinitionId": "conicalWell"
312
+ },
313
+ "E4": {
314
+ "depth": 41.5,
315
+ "totalLiquidVolume": 2000,
316
+ "shape": "circular",
317
+ "diameter": 8.5,
318
+ "x": 41.3,
319
+ "y": 38.2,
320
+ "z": 2.1,
321
+ "geometryDefinitionId": "conicalWell"
322
+ },
323
+ "F4": {
324
+ "depth": 41.5,
325
+ "totalLiquidVolume": 2000,
326
+ "shape": "circular",
327
+ "diameter": 8.5,
328
+ "x": 41.3,
329
+ "y": 29.2,
330
+ "z": 2.1,
331
+ "geometryDefinitionId": "conicalWell"
332
+ },
333
+ "G4": {
334
+ "depth": 41.5,
335
+ "totalLiquidVolume": 2000,
336
+ "shape": "circular",
337
+ "diameter": 8.5,
338
+ "x": 41.3,
339
+ "y": 20.2,
340
+ "z": 2.1,
341
+ "geometryDefinitionId": "conicalWell"
342
+ },
343
+ "H4": {
344
+ "depth": 41.5,
345
+ "totalLiquidVolume": 2000,
346
+ "shape": "circular",
347
+ "diameter": 8.5,
348
+ "x": 41.3,
349
+ "y": 11.2,
350
+ "z": 2.1,
351
+ "geometryDefinitionId": "conicalWell"
352
+ },
353
+ "A5": {
354
+ "depth": 41.5,
355
+ "totalLiquidVolume": 2000,
356
+ "shape": "circular",
357
+ "diameter": 8.5,
358
+ "x": 50.3,
359
+ "y": 74.2,
360
+ "z": 2.1,
361
+ "geometryDefinitionId": "conicalWell"
362
+ },
363
+ "B5": {
364
+ "depth": 41.5,
365
+ "totalLiquidVolume": 2000,
366
+ "shape": "circular",
367
+ "diameter": 8.5,
368
+ "x": 50.3,
369
+ "y": 65.2,
370
+ "z": 2.1,
371
+ "geometryDefinitionId": "conicalWell"
372
+ },
373
+ "C5": {
374
+ "depth": 41.5,
375
+ "totalLiquidVolume": 2000,
376
+ "shape": "circular",
377
+ "diameter": 8.5,
378
+ "x": 50.3,
379
+ "y": 56.2,
380
+ "z": 2.1,
381
+ "geometryDefinitionId": "conicalWell"
382
+ },
383
+ "D5": {
384
+ "depth": 41.5,
385
+ "totalLiquidVolume": 2000,
386
+ "shape": "circular",
387
+ "diameter": 8.5,
388
+ "x": 50.3,
389
+ "y": 47.2,
390
+ "z": 2.1,
391
+ "geometryDefinitionId": "conicalWell"
392
+ },
393
+ "E5": {
394
+ "depth": 41.5,
395
+ "totalLiquidVolume": 2000,
396
+ "shape": "circular",
397
+ "diameter": 8.5,
398
+ "x": 50.3,
399
+ "y": 38.2,
400
+ "z": 2.1,
401
+ "geometryDefinitionId": "conicalWell"
402
+ },
403
+ "F5": {
404
+ "depth": 41.5,
405
+ "totalLiquidVolume": 2000,
406
+ "shape": "circular",
407
+ "diameter": 8.5,
408
+ "x": 50.3,
409
+ "y": 29.2,
410
+ "z": 2.1,
411
+ "geometryDefinitionId": "conicalWell"
412
+ },
413
+ "G5": {
414
+ "depth": 41.5,
415
+ "totalLiquidVolume": 2000,
416
+ "shape": "circular",
417
+ "diameter": 8.5,
418
+ "x": 50.3,
419
+ "y": 20.2,
420
+ "z": 2.1,
421
+ "geometryDefinitionId": "conicalWell"
422
+ },
423
+ "H5": {
424
+ "depth": 41.5,
425
+ "totalLiquidVolume": 2000,
426
+ "shape": "circular",
427
+ "diameter": 8.5,
428
+ "x": 50.3,
429
+ "y": 11.2,
430
+ "z": 2.1,
431
+ "geometryDefinitionId": "conicalWell"
432
+ },
433
+ "A6": {
434
+ "depth": 41.5,
435
+ "totalLiquidVolume": 2000,
436
+ "shape": "circular",
437
+ "diameter": 8.5,
438
+ "x": 59.3,
439
+ "y": 74.2,
440
+ "z": 2.1,
441
+ "geometryDefinitionId": "conicalWell"
442
+ },
443
+ "B6": {
444
+ "depth": 41.5,
445
+ "totalLiquidVolume": 2000,
446
+ "shape": "circular",
447
+ "diameter": 8.5,
448
+ "x": 59.3,
449
+ "y": 65.2,
450
+ "z": 2.1,
451
+ "geometryDefinitionId": "conicalWell"
452
+ },
453
+ "C6": {
454
+ "depth": 41.5,
455
+ "totalLiquidVolume": 2000,
456
+ "shape": "circular",
457
+ "diameter": 8.5,
458
+ "x": 59.3,
459
+ "y": 56.2,
460
+ "z": 2.1,
461
+ "geometryDefinitionId": "conicalWell"
462
+ },
463
+ "D6": {
464
+ "depth": 41.5,
465
+ "totalLiquidVolume": 2000,
466
+ "shape": "circular",
467
+ "diameter": 8.5,
468
+ "x": 59.3,
469
+ "y": 47.2,
470
+ "z": 2.1,
471
+ "geometryDefinitionId": "conicalWell"
472
+ },
473
+ "E6": {
474
+ "depth": 41.5,
475
+ "totalLiquidVolume": 2000,
476
+ "shape": "circular",
477
+ "diameter": 8.5,
478
+ "x": 59.3,
479
+ "y": 38.2,
480
+ "z": 2.1,
481
+ "geometryDefinitionId": "conicalWell"
482
+ },
483
+ "F6": {
484
+ "depth": 41.5,
485
+ "totalLiquidVolume": 2000,
486
+ "shape": "circular",
487
+ "diameter": 8.5,
488
+ "x": 59.3,
489
+ "y": 29.2,
490
+ "z": 2.1,
491
+ "geometryDefinitionId": "conicalWell"
492
+ },
493
+ "G6": {
494
+ "depth": 41.5,
495
+ "totalLiquidVolume": 2000,
496
+ "shape": "circular",
497
+ "diameter": 8.5,
498
+ "x": 59.3,
499
+ "y": 20.2,
500
+ "z": 2.1,
501
+ "geometryDefinitionId": "conicalWell"
502
+ },
503
+ "H6": {
504
+ "depth": 41.5,
505
+ "totalLiquidVolume": 2000,
506
+ "shape": "circular",
507
+ "diameter": 8.5,
508
+ "x": 59.3,
509
+ "y": 11.2,
510
+ "z": 2.1,
511
+ "geometryDefinitionId": "conicalWell"
512
+ },
513
+ "A7": {
514
+ "depth": 41.5,
515
+ "totalLiquidVolume": 2000,
516
+ "shape": "circular",
517
+ "diameter": 8.5,
518
+ "x": 68.3,
519
+ "y": 74.2,
520
+ "z": 2.1,
521
+ "geometryDefinitionId": "conicalWell"
522
+ },
523
+ "B7": {
524
+ "depth": 41.5,
525
+ "totalLiquidVolume": 2000,
526
+ "shape": "circular",
527
+ "diameter": 8.5,
528
+ "x": 68.3,
529
+ "y": 65.2,
530
+ "z": 2.1,
531
+ "geometryDefinitionId": "conicalWell"
532
+ },
533
+ "C7": {
534
+ "depth": 41.5,
535
+ "totalLiquidVolume": 2000,
536
+ "shape": "circular",
537
+ "diameter": 8.5,
538
+ "x": 68.3,
539
+ "y": 56.2,
540
+ "z": 2.1,
541
+ "geometryDefinitionId": "conicalWell"
542
+ },
543
+ "D7": {
544
+ "depth": 41.5,
545
+ "totalLiquidVolume": 2000,
546
+ "shape": "circular",
547
+ "diameter": 8.5,
548
+ "x": 68.3,
549
+ "y": 47.2,
550
+ "z": 2.1,
551
+ "geometryDefinitionId": "conicalWell"
552
+ },
553
+ "E7": {
554
+ "depth": 41.5,
555
+ "totalLiquidVolume": 2000,
556
+ "shape": "circular",
557
+ "diameter": 8.5,
558
+ "x": 68.3,
559
+ "y": 38.2,
560
+ "z": 2.1,
561
+ "geometryDefinitionId": "conicalWell"
562
+ },
563
+ "F7": {
564
+ "depth": 41.5,
565
+ "totalLiquidVolume": 2000,
566
+ "shape": "circular",
567
+ "diameter": 8.5,
568
+ "x": 68.3,
569
+ "y": 29.2,
570
+ "z": 2.1,
571
+ "geometryDefinitionId": "conicalWell"
572
+ },
573
+ "G7": {
574
+ "depth": 41.5,
575
+ "totalLiquidVolume": 2000,
576
+ "shape": "circular",
577
+ "diameter": 8.5,
578
+ "x": 68.3,
579
+ "y": 20.2,
580
+ "z": 2.1,
581
+ "geometryDefinitionId": "conicalWell"
582
+ },
583
+ "H7": {
584
+ "depth": 41.5,
585
+ "totalLiquidVolume": 2000,
586
+ "shape": "circular",
587
+ "diameter": 8.5,
588
+ "x": 68.3,
589
+ "y": 11.2,
590
+ "z": 2.1,
591
+ "geometryDefinitionId": "conicalWell"
592
+ },
593
+ "A8": {
594
+ "depth": 41.5,
595
+ "totalLiquidVolume": 2000,
596
+ "shape": "circular",
597
+ "diameter": 8.5,
598
+ "x": 77.3,
599
+ "y": 74.2,
600
+ "z": 2.1,
601
+ "geometryDefinitionId": "conicalWell"
602
+ },
603
+ "B8": {
604
+ "depth": 41.5,
605
+ "totalLiquidVolume": 2000,
606
+ "shape": "circular",
607
+ "diameter": 8.5,
608
+ "x": 77.3,
609
+ "y": 65.2,
610
+ "z": 2.1,
611
+ "geometryDefinitionId": "conicalWell"
612
+ },
613
+ "C8": {
614
+ "depth": 41.5,
615
+ "totalLiquidVolume": 2000,
616
+ "shape": "circular",
617
+ "diameter": 8.5,
618
+ "x": 77.3,
619
+ "y": 56.2,
620
+ "z": 2.1,
621
+ "geometryDefinitionId": "conicalWell"
622
+ },
623
+ "D8": {
624
+ "depth": 41.5,
625
+ "totalLiquidVolume": 2000,
626
+ "shape": "circular",
627
+ "diameter": 8.5,
628
+ "x": 77.3,
629
+ "y": 47.2,
630
+ "z": 2.1,
631
+ "geometryDefinitionId": "conicalWell"
632
+ },
633
+ "E8": {
634
+ "depth": 41.5,
635
+ "totalLiquidVolume": 2000,
636
+ "shape": "circular",
637
+ "diameter": 8.5,
638
+ "x": 77.3,
639
+ "y": 38.2,
640
+ "z": 2.1,
641
+ "geometryDefinitionId": "conicalWell"
642
+ },
643
+ "F8": {
644
+ "depth": 41.5,
645
+ "totalLiquidVolume": 2000,
646
+ "shape": "circular",
647
+ "diameter": 8.5,
648
+ "x": 77.3,
649
+ "y": 29.2,
650
+ "z": 2.1,
651
+ "geometryDefinitionId": "conicalWell"
652
+ },
653
+ "G8": {
654
+ "depth": 41.5,
655
+ "totalLiquidVolume": 2000,
656
+ "shape": "circular",
657
+ "diameter": 8.5,
658
+ "x": 77.3,
659
+ "y": 20.2,
660
+ "z": 2.1,
661
+ "geometryDefinitionId": "conicalWell"
662
+ },
663
+ "H8": {
664
+ "depth": 41.5,
665
+ "totalLiquidVolume": 2000,
666
+ "shape": "circular",
667
+ "diameter": 8.5,
668
+ "x": 77.3,
669
+ "y": 11.2,
670
+ "z": 2.1,
671
+ "geometryDefinitionId": "conicalWell"
672
+ },
673
+ "A9": {
674
+ "depth": 41.5,
675
+ "totalLiquidVolume": 2000,
676
+ "shape": "circular",
677
+ "diameter": 8.5,
678
+ "x": 86.3,
679
+ "y": 74.2,
680
+ "z": 2.1,
681
+ "geometryDefinitionId": "conicalWell"
682
+ },
683
+ "B9": {
684
+ "depth": 41.5,
685
+ "totalLiquidVolume": 2000,
686
+ "shape": "circular",
687
+ "diameter": 8.5,
688
+ "x": 86.3,
689
+ "y": 65.2,
690
+ "z": 2.1,
691
+ "geometryDefinitionId": "conicalWell"
692
+ },
693
+ "C9": {
694
+ "depth": 41.5,
695
+ "totalLiquidVolume": 2000,
696
+ "shape": "circular",
697
+ "diameter": 8.5,
698
+ "x": 86.3,
699
+ "y": 56.2,
700
+ "z": 2.1,
701
+ "geometryDefinitionId": "conicalWell"
702
+ },
703
+ "D9": {
704
+ "depth": 41.5,
705
+ "totalLiquidVolume": 2000,
706
+ "shape": "circular",
707
+ "diameter": 8.5,
708
+ "x": 86.3,
709
+ "y": 47.2,
710
+ "z": 2.1,
711
+ "geometryDefinitionId": "conicalWell"
712
+ },
713
+ "E9": {
714
+ "depth": 41.5,
715
+ "totalLiquidVolume": 2000,
716
+ "shape": "circular",
717
+ "diameter": 8.5,
718
+ "x": 86.3,
719
+ "y": 38.2,
720
+ "z": 2.1,
721
+ "geometryDefinitionId": "conicalWell"
722
+ },
723
+ "F9": {
724
+ "depth": 41.5,
725
+ "totalLiquidVolume": 2000,
726
+ "shape": "circular",
727
+ "diameter": 8.5,
728
+ "x": 86.3,
729
+ "y": 29.2,
730
+ "z": 2.1,
731
+ "geometryDefinitionId": "conicalWell"
732
+ },
733
+ "G9": {
734
+ "depth": 41.5,
735
+ "totalLiquidVolume": 2000,
736
+ "shape": "circular",
737
+ "diameter": 8.5,
738
+ "x": 86.3,
739
+ "y": 20.2,
740
+ "z": 2.1,
741
+ "geometryDefinitionId": "conicalWell"
742
+ },
743
+ "H9": {
744
+ "depth": 41.5,
745
+ "totalLiquidVolume": 2000,
746
+ "shape": "circular",
747
+ "diameter": 8.5,
748
+ "x": 86.3,
749
+ "y": 11.2,
750
+ "z": 2.1,
751
+ "geometryDefinitionId": "conicalWell"
752
+ },
753
+ "A10": {
754
+ "depth": 41.5,
755
+ "totalLiquidVolume": 2000,
756
+ "shape": "circular",
757
+ "diameter": 8.5,
758
+ "x": 95.3,
759
+ "y": 74.2,
760
+ "z": 2.1,
761
+ "geometryDefinitionId": "conicalWell"
762
+ },
763
+ "B10": {
764
+ "depth": 41.5,
765
+ "totalLiquidVolume": 2000,
766
+ "shape": "circular",
767
+ "diameter": 8.5,
768
+ "x": 95.3,
769
+ "y": 65.2,
770
+ "z": 2.1,
771
+ "geometryDefinitionId": "conicalWell"
772
+ },
773
+ "C10": {
774
+ "depth": 41.5,
775
+ "totalLiquidVolume": 2000,
776
+ "shape": "circular",
777
+ "diameter": 8.5,
778
+ "x": 95.3,
779
+ "y": 56.2,
780
+ "z": 2.1,
781
+ "geometryDefinitionId": "conicalWell"
782
+ },
783
+ "D10": {
784
+ "depth": 41.5,
785
+ "totalLiquidVolume": 2000,
786
+ "shape": "circular",
787
+ "diameter": 8.5,
788
+ "x": 95.3,
789
+ "y": 47.2,
790
+ "z": 2.1,
791
+ "geometryDefinitionId": "conicalWell"
792
+ },
793
+ "E10": {
794
+ "depth": 41.5,
795
+ "totalLiquidVolume": 2000,
796
+ "shape": "circular",
797
+ "diameter": 8.5,
798
+ "x": 95.3,
799
+ "y": 38.2,
800
+ "z": 2.1,
801
+ "geometryDefinitionId": "conicalWell"
802
+ },
803
+ "F10": {
804
+ "depth": 41.5,
805
+ "totalLiquidVolume": 2000,
806
+ "shape": "circular",
807
+ "diameter": 8.5,
808
+ "x": 95.3,
809
+ "y": 29.2,
810
+ "z": 2.1,
811
+ "geometryDefinitionId": "conicalWell"
812
+ },
813
+ "G10": {
814
+ "depth": 41.5,
815
+ "totalLiquidVolume": 2000,
816
+ "shape": "circular",
817
+ "diameter": 8.5,
818
+ "x": 95.3,
819
+ "y": 20.2,
820
+ "z": 2.1,
821
+ "geometryDefinitionId": "conicalWell"
822
+ },
823
+ "H10": {
824
+ "depth": 41.5,
825
+ "totalLiquidVolume": 2000,
826
+ "shape": "circular",
827
+ "diameter": 8.5,
828
+ "x": 95.3,
829
+ "y": 11.2,
830
+ "z": 2.1,
831
+ "geometryDefinitionId": "conicalWell"
832
+ },
833
+ "A11": {
834
+ "depth": 41.5,
835
+ "totalLiquidVolume": 2000,
836
+ "shape": "circular",
837
+ "diameter": 8.5,
838
+ "x": 104.3,
839
+ "y": 74.2,
840
+ "z": 2.1,
841
+ "geometryDefinitionId": "conicalWell"
842
+ },
843
+ "B11": {
844
+ "depth": 41.5,
845
+ "totalLiquidVolume": 2000,
846
+ "shape": "circular",
847
+ "diameter": 8.5,
848
+ "x": 104.3,
849
+ "y": 65.2,
850
+ "z": 2.1,
851
+ "geometryDefinitionId": "conicalWell"
852
+ },
853
+ "C11": {
854
+ "depth": 41.5,
855
+ "totalLiquidVolume": 2000,
856
+ "shape": "circular",
857
+ "diameter": 8.5,
858
+ "x": 104.3,
859
+ "y": 56.2,
860
+ "z": 2.1,
861
+ "geometryDefinitionId": "conicalWell"
862
+ },
863
+ "D11": {
864
+ "depth": 41.5,
865
+ "totalLiquidVolume": 2000,
866
+ "shape": "circular",
867
+ "diameter": 8.5,
868
+ "x": 104.3,
869
+ "y": 47.2,
870
+ "z": 2.1,
871
+ "geometryDefinitionId": "conicalWell"
872
+ },
873
+ "E11": {
874
+ "depth": 41.5,
875
+ "totalLiquidVolume": 2000,
876
+ "shape": "circular",
877
+ "diameter": 8.5,
878
+ "x": 104.3,
879
+ "y": 38.2,
880
+ "z": 2.1,
881
+ "geometryDefinitionId": "conicalWell"
882
+ },
883
+ "F11": {
884
+ "depth": 41.5,
885
+ "totalLiquidVolume": 2000,
886
+ "shape": "circular",
887
+ "diameter": 8.5,
888
+ "x": 104.3,
889
+ "y": 29.2,
890
+ "z": 2.1,
891
+ "geometryDefinitionId": "conicalWell"
892
+ },
893
+ "G11": {
894
+ "depth": 41.5,
895
+ "totalLiquidVolume": 2000,
896
+ "shape": "circular",
897
+ "diameter": 8.5,
898
+ "x": 104.3,
899
+ "y": 20.2,
900
+ "z": 2.1,
901
+ "geometryDefinitionId": "conicalWell"
902
+ },
903
+ "H11": {
904
+ "depth": 41.5,
905
+ "totalLiquidVolume": 2000,
906
+ "shape": "circular",
907
+ "diameter": 8.5,
908
+ "x": 104.3,
909
+ "y": 11.2,
910
+ "z": 2.1,
911
+ "geometryDefinitionId": "conicalWell"
912
+ },
913
+ "A12": {
914
+ "depth": 41.5,
915
+ "totalLiquidVolume": 2000,
916
+ "shape": "circular",
917
+ "diameter": 8.5,
918
+ "x": 113.3,
919
+ "y": 74.2,
920
+ "z": 2.1,
921
+ "geometryDefinitionId": "conicalWell"
922
+ },
923
+ "B12": {
924
+ "depth": 41.5,
925
+ "totalLiquidVolume": 2000,
926
+ "shape": "circular",
927
+ "diameter": 8.5,
928
+ "x": 113.3,
929
+ "y": 65.2,
930
+ "z": 2.1,
931
+ "geometryDefinitionId": "conicalWell"
932
+ },
933
+ "C12": {
934
+ "depth": 41.5,
935
+ "totalLiquidVolume": 2000,
936
+ "shape": "circular",
937
+ "diameter": 8.5,
938
+ "x": 113.3,
939
+ "y": 56.2,
940
+ "z": 2.1,
941
+ "geometryDefinitionId": "conicalWell"
942
+ },
943
+ "D12": {
944
+ "depth": 41.5,
945
+ "totalLiquidVolume": 2000,
946
+ "shape": "circular",
947
+ "diameter": 8.5,
948
+ "x": 113.3,
949
+ "y": 47.2,
950
+ "z": 2.1,
951
+ "geometryDefinitionId": "conicalWell"
952
+ },
953
+ "E12": {
954
+ "depth": 41.5,
955
+ "totalLiquidVolume": 2000,
956
+ "shape": "circular",
957
+ "diameter": 8.5,
958
+ "x": 113.3,
959
+ "y": 38.2,
960
+ "z": 2.1,
961
+ "geometryDefinitionId": "conicalWell"
962
+ },
963
+ "F12": {
964
+ "depth": 41.5,
965
+ "totalLiquidVolume": 2000,
966
+ "shape": "circular",
967
+ "diameter": 8.5,
968
+ "x": 113.3,
969
+ "y": 29.2,
970
+ "z": 2.1,
971
+ "geometryDefinitionId": "conicalWell"
972
+ },
973
+ "G12": {
974
+ "depth": 41.5,
975
+ "totalLiquidVolume": 2000,
976
+ "shape": "circular",
977
+ "diameter": 8.5,
978
+ "x": 113.3,
979
+ "y": 20.2,
980
+ "z": 2.1,
981
+ "geometryDefinitionId": "conicalWell"
982
+ },
983
+ "H12": {
984
+ "depth": 41.5,
985
+ "totalLiquidVolume": 2000,
986
+ "shape": "circular",
987
+ "diameter": 8.5,
988
+ "x": 113.3,
989
+ "y": 11.2,
990
+ "z": 2.1,
991
+ "geometryDefinitionId": "conicalWell"
992
+ }
993
+ },
994
+ "groups": [
995
+ {
996
+ "metadata": {
997
+ "wellBottomShape": "u"
998
+ },
999
+ "wells": [
1000
+ "A1",
1001
+ "B1",
1002
+ "C1",
1003
+ "D1",
1004
+ "E1",
1005
+ "F1",
1006
+ "G1",
1007
+ "H1",
1008
+ "A2",
1009
+ "B2",
1010
+ "C2",
1011
+ "D2",
1012
+ "E2",
1013
+ "F2",
1014
+ "G2",
1015
+ "H2",
1016
+ "A3",
1017
+ "B3",
1018
+ "C3",
1019
+ "D3",
1020
+ "E3",
1021
+ "F3",
1022
+ "G3",
1023
+ "H3",
1024
+ "A4",
1025
+ "B4",
1026
+ "C4",
1027
+ "D4",
1028
+ "E4",
1029
+ "F4",
1030
+ "G4",
1031
+ "H4",
1032
+ "A5",
1033
+ "B5",
1034
+ "C5",
1035
+ "D5",
1036
+ "E5",
1037
+ "F5",
1038
+ "G5",
1039
+ "H5",
1040
+ "A6",
1041
+ "B6",
1042
+ "C6",
1043
+ "D6",
1044
+ "E6",
1045
+ "F6",
1046
+ "G6",
1047
+ "H6",
1048
+ "A7",
1049
+ "B7",
1050
+ "C7",
1051
+ "D7",
1052
+ "E7",
1053
+ "F7",
1054
+ "G7",
1055
+ "H7",
1056
+ "A8",
1057
+ "B8",
1058
+ "C8",
1059
+ "D8",
1060
+ "E8",
1061
+ "F8",
1062
+ "G8",
1063
+ "H8",
1064
+ "A9",
1065
+ "B9",
1066
+ "C9",
1067
+ "D9",
1068
+ "E9",
1069
+ "F9",
1070
+ "G9",
1071
+ "H9",
1072
+ "A10",
1073
+ "B10",
1074
+ "C10",
1075
+ "D10",
1076
+ "E10",
1077
+ "F10",
1078
+ "G10",
1079
+ "H10",
1080
+ "A11",
1081
+ "B11",
1082
+ "C11",
1083
+ "D11",
1084
+ "E11",
1085
+ "F11",
1086
+ "G11",
1087
+ "H11",
1088
+ "A12",
1089
+ "B12",
1090
+ "C12",
1091
+ "D12",
1092
+ "E12",
1093
+ "F12",
1094
+ "G12",
1095
+ "H12"
1096
+ ]
1097
+ }
1098
+ ],
1099
+ "parameters": {
1100
+ "format": "96Standard",
1101
+ "quirks": [],
1102
+ "isTiprack": false,
1103
+ "isMagneticModuleCompatible": true,
1104
+ "magneticModuleEngageHeight": 6,
1105
+ "loadName": "thermoscientificnunc_96_wellplate_2000ul"
1106
+ },
1107
+ "namespace": "opentrons",
1108
+ "version": 3,
1109
+ "schemaVersion": 2,
1110
+ "cornerOffsetFromSlot": {
1111
+ "x": 0,
1112
+ "y": 0,
1113
+ "z": 0
1114
+ },
1115
+ "stackingOffsetWithLabware": {
1116
+ "thermoscientificnunc_96_wellplate_2000ul": {
1117
+ "x": 0,
1118
+ "y": 0,
1119
+ "z": 1.55
1120
+ }
1121
+ },
1122
+ "innerLabwareGeometry": {
1123
+ "conicalWell": {
1124
+ "sections": [
1125
+ {
1126
+ "shape": "conical",
1127
+ "bottomDiameter": 7.2,
1128
+ "topDiameter": 8.5,
1129
+ "topHeight": 41.5,
1130
+ "bottomHeight": 3.6
1131
+ },
1132
+ {
1133
+ "shape": "spherical",
1134
+ "radiusOfCurvature": 3.6,
1135
+ "topHeight": 3.6,
1136
+ "bottomHeight": 0.0
1137
+ }
1138
+ ]
1139
+ }
1140
+ }
1141
+ }