@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,1166 @@
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": "NEST",
18
+ "brandId": ["402501"],
19
+ "links": ["https://www.nest-biotech.com/pcr-plates/58773587.html"]
20
+ },
21
+ "metadata": {
22
+ "displayName": "NEST 96 Well Plate 100 µL PCR Full Skirt",
23
+ "displayCategory": "wellPlate",
24
+ "displayVolumeUnits": "µL",
25
+ "tags": []
26
+ },
27
+ "dimensions": {
28
+ "xDimension": 127.76,
29
+ "yDimension": 85.48,
30
+ "zDimension": 15.7
31
+ },
32
+ "gripForce": 15,
33
+ "gripHeightFromLabwareBottom": 10.65,
34
+ "wells": {
35
+ "A1": {
36
+ "depth": 14.7,
37
+ "shape": "circular",
38
+ "diameter": 5.34,
39
+ "totalLiquidVolume": 100,
40
+ "x": 14.38,
41
+ "y": 74.24,
42
+ "z": 0.92,
43
+ "geometryDefinitionId": "conicalWell"
44
+ },
45
+ "B1": {
46
+ "depth": 14.7,
47
+ "shape": "circular",
48
+ "diameter": 5.34,
49
+ "totalLiquidVolume": 100,
50
+ "x": 14.38,
51
+ "y": 65.24,
52
+ "z": 0.92,
53
+ "geometryDefinitionId": "conicalWell"
54
+ },
55
+ "C1": {
56
+ "depth": 14.7,
57
+ "shape": "circular",
58
+ "diameter": 5.34,
59
+ "totalLiquidVolume": 100,
60
+ "x": 14.38,
61
+ "y": 56.24,
62
+ "z": 0.92,
63
+ "geometryDefinitionId": "conicalWell"
64
+ },
65
+ "D1": {
66
+ "depth": 14.7,
67
+ "shape": "circular",
68
+ "diameter": 5.34,
69
+ "totalLiquidVolume": 100,
70
+ "x": 14.38,
71
+ "y": 47.24,
72
+ "z": 0.92,
73
+ "geometryDefinitionId": "conicalWell"
74
+ },
75
+ "E1": {
76
+ "depth": 14.7,
77
+ "shape": "circular",
78
+ "diameter": 5.34,
79
+ "totalLiquidVolume": 100,
80
+ "x": 14.38,
81
+ "y": 38.24,
82
+ "z": 0.92,
83
+ "geometryDefinitionId": "conicalWell"
84
+ },
85
+ "F1": {
86
+ "depth": 14.7,
87
+ "shape": "circular",
88
+ "diameter": 5.34,
89
+ "totalLiquidVolume": 100,
90
+ "x": 14.38,
91
+ "y": 29.24,
92
+ "z": 0.92,
93
+ "geometryDefinitionId": "conicalWell"
94
+ },
95
+ "G1": {
96
+ "depth": 14.7,
97
+ "shape": "circular",
98
+ "diameter": 5.34,
99
+ "totalLiquidVolume": 100,
100
+ "x": 14.38,
101
+ "y": 20.24,
102
+ "z": 0.92,
103
+ "geometryDefinitionId": "conicalWell"
104
+ },
105
+ "H1": {
106
+ "depth": 14.7,
107
+ "shape": "circular",
108
+ "diameter": 5.34,
109
+ "totalLiquidVolume": 100,
110
+ "x": 14.38,
111
+ "y": 11.24,
112
+ "z": 0.92,
113
+ "geometryDefinitionId": "conicalWell"
114
+ },
115
+ "A2": {
116
+ "depth": 14.7,
117
+ "shape": "circular",
118
+ "diameter": 5.34,
119
+ "totalLiquidVolume": 100,
120
+ "x": 23.38,
121
+ "y": 74.24,
122
+ "z": 0.92,
123
+ "geometryDefinitionId": "conicalWell"
124
+ },
125
+ "B2": {
126
+ "depth": 14.7,
127
+ "shape": "circular",
128
+ "diameter": 5.34,
129
+ "totalLiquidVolume": 100,
130
+ "x": 23.38,
131
+ "y": 65.24,
132
+ "z": 0.92,
133
+ "geometryDefinitionId": "conicalWell"
134
+ },
135
+ "C2": {
136
+ "depth": 14.7,
137
+ "shape": "circular",
138
+ "diameter": 5.34,
139
+ "totalLiquidVolume": 100,
140
+ "x": 23.38,
141
+ "y": 56.24,
142
+ "z": 0.92,
143
+ "geometryDefinitionId": "conicalWell"
144
+ },
145
+ "D2": {
146
+ "depth": 14.7,
147
+ "shape": "circular",
148
+ "diameter": 5.34,
149
+ "totalLiquidVolume": 100,
150
+ "x": 23.38,
151
+ "y": 47.24,
152
+ "z": 0.92,
153
+ "geometryDefinitionId": "conicalWell"
154
+ },
155
+ "E2": {
156
+ "depth": 14.7,
157
+ "shape": "circular",
158
+ "diameter": 5.34,
159
+ "totalLiquidVolume": 100,
160
+ "x": 23.38,
161
+ "y": 38.24,
162
+ "z": 0.92,
163
+ "geometryDefinitionId": "conicalWell"
164
+ },
165
+ "F2": {
166
+ "depth": 14.7,
167
+ "shape": "circular",
168
+ "diameter": 5.34,
169
+ "totalLiquidVolume": 100,
170
+ "x": 23.38,
171
+ "y": 29.24,
172
+ "z": 0.92,
173
+ "geometryDefinitionId": "conicalWell"
174
+ },
175
+ "G2": {
176
+ "depth": 14.7,
177
+ "shape": "circular",
178
+ "diameter": 5.34,
179
+ "totalLiquidVolume": 100,
180
+ "x": 23.38,
181
+ "y": 20.24,
182
+ "z": 0.92,
183
+ "geometryDefinitionId": "conicalWell"
184
+ },
185
+ "H2": {
186
+ "depth": 14.7,
187
+ "shape": "circular",
188
+ "diameter": 5.34,
189
+ "totalLiquidVolume": 100,
190
+ "x": 23.38,
191
+ "y": 11.24,
192
+ "z": 0.92,
193
+ "geometryDefinitionId": "conicalWell"
194
+ },
195
+ "A3": {
196
+ "depth": 14.7,
197
+ "shape": "circular",
198
+ "diameter": 5.34,
199
+ "totalLiquidVolume": 100,
200
+ "x": 32.38,
201
+ "y": 74.24,
202
+ "z": 0.92,
203
+ "geometryDefinitionId": "conicalWell"
204
+ },
205
+ "B3": {
206
+ "depth": 14.7,
207
+ "shape": "circular",
208
+ "diameter": 5.34,
209
+ "totalLiquidVolume": 100,
210
+ "x": 32.38,
211
+ "y": 65.24,
212
+ "z": 0.92,
213
+ "geometryDefinitionId": "conicalWell"
214
+ },
215
+ "C3": {
216
+ "depth": 14.7,
217
+ "shape": "circular",
218
+ "diameter": 5.34,
219
+ "totalLiquidVolume": 100,
220
+ "x": 32.38,
221
+ "y": 56.24,
222
+ "z": 0.92,
223
+ "geometryDefinitionId": "conicalWell"
224
+ },
225
+ "D3": {
226
+ "depth": 14.7,
227
+ "shape": "circular",
228
+ "diameter": 5.34,
229
+ "totalLiquidVolume": 100,
230
+ "x": 32.38,
231
+ "y": 47.24,
232
+ "z": 0.92,
233
+ "geometryDefinitionId": "conicalWell"
234
+ },
235
+ "E3": {
236
+ "depth": 14.7,
237
+ "shape": "circular",
238
+ "diameter": 5.34,
239
+ "totalLiquidVolume": 100,
240
+ "x": 32.38,
241
+ "y": 38.24,
242
+ "z": 0.92,
243
+ "geometryDefinitionId": "conicalWell"
244
+ },
245
+ "F3": {
246
+ "depth": 14.7,
247
+ "shape": "circular",
248
+ "diameter": 5.34,
249
+ "totalLiquidVolume": 100,
250
+ "x": 32.38,
251
+ "y": 29.24,
252
+ "z": 0.92,
253
+ "geometryDefinitionId": "conicalWell"
254
+ },
255
+ "G3": {
256
+ "depth": 14.7,
257
+ "shape": "circular",
258
+ "diameter": 5.34,
259
+ "totalLiquidVolume": 100,
260
+ "x": 32.38,
261
+ "y": 20.24,
262
+ "z": 0.92,
263
+ "geometryDefinitionId": "conicalWell"
264
+ },
265
+ "H3": {
266
+ "depth": 14.7,
267
+ "shape": "circular",
268
+ "diameter": 5.34,
269
+ "totalLiquidVolume": 100,
270
+ "x": 32.38,
271
+ "y": 11.24,
272
+ "z": 0.92,
273
+ "geometryDefinitionId": "conicalWell"
274
+ },
275
+ "A4": {
276
+ "depth": 14.7,
277
+ "shape": "circular",
278
+ "diameter": 5.34,
279
+ "totalLiquidVolume": 100,
280
+ "x": 41.38,
281
+ "y": 74.24,
282
+ "z": 0.92,
283
+ "geometryDefinitionId": "conicalWell"
284
+ },
285
+ "B4": {
286
+ "depth": 14.7,
287
+ "shape": "circular",
288
+ "diameter": 5.34,
289
+ "totalLiquidVolume": 100,
290
+ "x": 41.38,
291
+ "y": 65.24,
292
+ "z": 0.92,
293
+ "geometryDefinitionId": "conicalWell"
294
+ },
295
+ "C4": {
296
+ "depth": 14.7,
297
+ "shape": "circular",
298
+ "diameter": 5.34,
299
+ "totalLiquidVolume": 100,
300
+ "x": 41.38,
301
+ "y": 56.24,
302
+ "z": 0.92,
303
+ "geometryDefinitionId": "conicalWell"
304
+ },
305
+ "D4": {
306
+ "depth": 14.7,
307
+ "shape": "circular",
308
+ "diameter": 5.34,
309
+ "totalLiquidVolume": 100,
310
+ "x": 41.38,
311
+ "y": 47.24,
312
+ "z": 0.92,
313
+ "geometryDefinitionId": "conicalWell"
314
+ },
315
+ "E4": {
316
+ "depth": 14.7,
317
+ "shape": "circular",
318
+ "diameter": 5.34,
319
+ "totalLiquidVolume": 100,
320
+ "x": 41.38,
321
+ "y": 38.24,
322
+ "z": 0.92,
323
+ "geometryDefinitionId": "conicalWell"
324
+ },
325
+ "F4": {
326
+ "depth": 14.7,
327
+ "shape": "circular",
328
+ "diameter": 5.34,
329
+ "totalLiquidVolume": 100,
330
+ "x": 41.38,
331
+ "y": 29.24,
332
+ "z": 0.92,
333
+ "geometryDefinitionId": "conicalWell"
334
+ },
335
+ "G4": {
336
+ "depth": 14.7,
337
+ "shape": "circular",
338
+ "diameter": 5.34,
339
+ "totalLiquidVolume": 100,
340
+ "x": 41.38,
341
+ "y": 20.24,
342
+ "z": 0.92,
343
+ "geometryDefinitionId": "conicalWell"
344
+ },
345
+ "H4": {
346
+ "depth": 14.7,
347
+ "shape": "circular",
348
+ "diameter": 5.34,
349
+ "totalLiquidVolume": 100,
350
+ "x": 41.38,
351
+ "y": 11.24,
352
+ "z": 0.92,
353
+ "geometryDefinitionId": "conicalWell"
354
+ },
355
+ "A5": {
356
+ "depth": 14.7,
357
+ "shape": "circular",
358
+ "diameter": 5.34,
359
+ "totalLiquidVolume": 100,
360
+ "x": 50.38,
361
+ "y": 74.24,
362
+ "z": 0.92,
363
+ "geometryDefinitionId": "conicalWell"
364
+ },
365
+ "B5": {
366
+ "depth": 14.7,
367
+ "shape": "circular",
368
+ "diameter": 5.34,
369
+ "totalLiquidVolume": 100,
370
+ "x": 50.38,
371
+ "y": 65.24,
372
+ "z": 0.92,
373
+ "geometryDefinitionId": "conicalWell"
374
+ },
375
+ "C5": {
376
+ "depth": 14.7,
377
+ "shape": "circular",
378
+ "diameter": 5.34,
379
+ "totalLiquidVolume": 100,
380
+ "x": 50.38,
381
+ "y": 56.24,
382
+ "z": 0.92,
383
+ "geometryDefinitionId": "conicalWell"
384
+ },
385
+ "D5": {
386
+ "depth": 14.7,
387
+ "shape": "circular",
388
+ "diameter": 5.34,
389
+ "totalLiquidVolume": 100,
390
+ "x": 50.38,
391
+ "y": 47.24,
392
+ "z": 0.92,
393
+ "geometryDefinitionId": "conicalWell"
394
+ },
395
+ "E5": {
396
+ "depth": 14.7,
397
+ "shape": "circular",
398
+ "diameter": 5.34,
399
+ "totalLiquidVolume": 100,
400
+ "x": 50.38,
401
+ "y": 38.24,
402
+ "z": 0.92,
403
+ "geometryDefinitionId": "conicalWell"
404
+ },
405
+ "F5": {
406
+ "depth": 14.7,
407
+ "shape": "circular",
408
+ "diameter": 5.34,
409
+ "totalLiquidVolume": 100,
410
+ "x": 50.38,
411
+ "y": 29.24,
412
+ "z": 0.92,
413
+ "geometryDefinitionId": "conicalWell"
414
+ },
415
+ "G5": {
416
+ "depth": 14.7,
417
+ "shape": "circular",
418
+ "diameter": 5.34,
419
+ "totalLiquidVolume": 100,
420
+ "x": 50.38,
421
+ "y": 20.24,
422
+ "z": 0.92,
423
+ "geometryDefinitionId": "conicalWell"
424
+ },
425
+ "H5": {
426
+ "depth": 14.7,
427
+ "shape": "circular",
428
+ "diameter": 5.34,
429
+ "totalLiquidVolume": 100,
430
+ "x": 50.38,
431
+ "y": 11.24,
432
+ "z": 0.92,
433
+ "geometryDefinitionId": "conicalWell"
434
+ },
435
+ "A6": {
436
+ "depth": 14.7,
437
+ "shape": "circular",
438
+ "diameter": 5.34,
439
+ "totalLiquidVolume": 100,
440
+ "x": 59.38,
441
+ "y": 74.24,
442
+ "z": 0.92,
443
+ "geometryDefinitionId": "conicalWell"
444
+ },
445
+ "B6": {
446
+ "depth": 14.7,
447
+ "shape": "circular",
448
+ "diameter": 5.34,
449
+ "totalLiquidVolume": 100,
450
+ "x": 59.38,
451
+ "y": 65.24,
452
+ "z": 0.92,
453
+ "geometryDefinitionId": "conicalWell"
454
+ },
455
+ "C6": {
456
+ "depth": 14.7,
457
+ "shape": "circular",
458
+ "diameter": 5.34,
459
+ "totalLiquidVolume": 100,
460
+ "x": 59.38,
461
+ "y": 56.24,
462
+ "z": 0.92,
463
+ "geometryDefinitionId": "conicalWell"
464
+ },
465
+ "D6": {
466
+ "depth": 14.7,
467
+ "shape": "circular",
468
+ "diameter": 5.34,
469
+ "totalLiquidVolume": 100,
470
+ "x": 59.38,
471
+ "y": 47.24,
472
+ "z": 0.92,
473
+ "geometryDefinitionId": "conicalWell"
474
+ },
475
+ "E6": {
476
+ "depth": 14.7,
477
+ "shape": "circular",
478
+ "diameter": 5.34,
479
+ "totalLiquidVolume": 100,
480
+ "x": 59.38,
481
+ "y": 38.24,
482
+ "z": 0.92,
483
+ "geometryDefinitionId": "conicalWell"
484
+ },
485
+ "F6": {
486
+ "depth": 14.7,
487
+ "shape": "circular",
488
+ "diameter": 5.34,
489
+ "totalLiquidVolume": 100,
490
+ "x": 59.38,
491
+ "y": 29.24,
492
+ "z": 0.92,
493
+ "geometryDefinitionId": "conicalWell"
494
+ },
495
+ "G6": {
496
+ "depth": 14.7,
497
+ "shape": "circular",
498
+ "diameter": 5.34,
499
+ "totalLiquidVolume": 100,
500
+ "x": 59.38,
501
+ "y": 20.24,
502
+ "z": 0.92,
503
+ "geometryDefinitionId": "conicalWell"
504
+ },
505
+ "H6": {
506
+ "depth": 14.7,
507
+ "shape": "circular",
508
+ "diameter": 5.34,
509
+ "totalLiquidVolume": 100,
510
+ "x": 59.38,
511
+ "y": 11.24,
512
+ "z": 0.92,
513
+ "geometryDefinitionId": "conicalWell"
514
+ },
515
+ "A7": {
516
+ "depth": 14.7,
517
+ "shape": "circular",
518
+ "diameter": 5.34,
519
+ "totalLiquidVolume": 100,
520
+ "x": 68.38,
521
+ "y": 74.24,
522
+ "z": 0.92,
523
+ "geometryDefinitionId": "conicalWell"
524
+ },
525
+ "B7": {
526
+ "depth": 14.7,
527
+ "shape": "circular",
528
+ "diameter": 5.34,
529
+ "totalLiquidVolume": 100,
530
+ "x": 68.38,
531
+ "y": 65.24,
532
+ "z": 0.92,
533
+ "geometryDefinitionId": "conicalWell"
534
+ },
535
+ "C7": {
536
+ "depth": 14.7,
537
+ "shape": "circular",
538
+ "diameter": 5.34,
539
+ "totalLiquidVolume": 100,
540
+ "x": 68.38,
541
+ "y": 56.24,
542
+ "z": 0.92,
543
+ "geometryDefinitionId": "conicalWell"
544
+ },
545
+ "D7": {
546
+ "depth": 14.7,
547
+ "shape": "circular",
548
+ "diameter": 5.34,
549
+ "totalLiquidVolume": 100,
550
+ "x": 68.38,
551
+ "y": 47.24,
552
+ "z": 0.92,
553
+ "geometryDefinitionId": "conicalWell"
554
+ },
555
+ "E7": {
556
+ "depth": 14.7,
557
+ "shape": "circular",
558
+ "diameter": 5.34,
559
+ "totalLiquidVolume": 100,
560
+ "x": 68.38,
561
+ "y": 38.24,
562
+ "z": 0.92,
563
+ "geometryDefinitionId": "conicalWell"
564
+ },
565
+ "F7": {
566
+ "depth": 14.7,
567
+ "shape": "circular",
568
+ "diameter": 5.34,
569
+ "totalLiquidVolume": 100,
570
+ "x": 68.38,
571
+ "y": 29.24,
572
+ "z": 0.92,
573
+ "geometryDefinitionId": "conicalWell"
574
+ },
575
+ "G7": {
576
+ "depth": 14.7,
577
+ "shape": "circular",
578
+ "diameter": 5.34,
579
+ "totalLiquidVolume": 100,
580
+ "x": 68.38,
581
+ "y": 20.24,
582
+ "z": 0.92,
583
+ "geometryDefinitionId": "conicalWell"
584
+ },
585
+ "H7": {
586
+ "depth": 14.7,
587
+ "shape": "circular",
588
+ "diameter": 5.34,
589
+ "totalLiquidVolume": 100,
590
+ "x": 68.38,
591
+ "y": 11.24,
592
+ "z": 0.92,
593
+ "geometryDefinitionId": "conicalWell"
594
+ },
595
+ "A8": {
596
+ "depth": 14.7,
597
+ "shape": "circular",
598
+ "diameter": 5.34,
599
+ "totalLiquidVolume": 100,
600
+ "x": 77.38,
601
+ "y": 74.24,
602
+ "z": 0.92,
603
+ "geometryDefinitionId": "conicalWell"
604
+ },
605
+ "B8": {
606
+ "depth": 14.7,
607
+ "shape": "circular",
608
+ "diameter": 5.34,
609
+ "totalLiquidVolume": 100,
610
+ "x": 77.38,
611
+ "y": 65.24,
612
+ "z": 0.92,
613
+ "geometryDefinitionId": "conicalWell"
614
+ },
615
+ "C8": {
616
+ "depth": 14.7,
617
+ "shape": "circular",
618
+ "diameter": 5.34,
619
+ "totalLiquidVolume": 100,
620
+ "x": 77.38,
621
+ "y": 56.24,
622
+ "z": 0.92,
623
+ "geometryDefinitionId": "conicalWell"
624
+ },
625
+ "D8": {
626
+ "depth": 14.7,
627
+ "shape": "circular",
628
+ "diameter": 5.34,
629
+ "totalLiquidVolume": 100,
630
+ "x": 77.38,
631
+ "y": 47.24,
632
+ "z": 0.92,
633
+ "geometryDefinitionId": "conicalWell"
634
+ },
635
+ "E8": {
636
+ "depth": 14.7,
637
+ "shape": "circular",
638
+ "diameter": 5.34,
639
+ "totalLiquidVolume": 100,
640
+ "x": 77.38,
641
+ "y": 38.24,
642
+ "z": 0.92,
643
+ "geometryDefinitionId": "conicalWell"
644
+ },
645
+ "F8": {
646
+ "depth": 14.7,
647
+ "shape": "circular",
648
+ "diameter": 5.34,
649
+ "totalLiquidVolume": 100,
650
+ "x": 77.38,
651
+ "y": 29.24,
652
+ "z": 0.92,
653
+ "geometryDefinitionId": "conicalWell"
654
+ },
655
+ "G8": {
656
+ "depth": 14.7,
657
+ "shape": "circular",
658
+ "diameter": 5.34,
659
+ "totalLiquidVolume": 100,
660
+ "x": 77.38,
661
+ "y": 20.24,
662
+ "z": 0.92,
663
+ "geometryDefinitionId": "conicalWell"
664
+ },
665
+ "H8": {
666
+ "depth": 14.7,
667
+ "shape": "circular",
668
+ "diameter": 5.34,
669
+ "totalLiquidVolume": 100,
670
+ "x": 77.38,
671
+ "y": 11.24,
672
+ "z": 0.92,
673
+ "geometryDefinitionId": "conicalWell"
674
+ },
675
+ "A9": {
676
+ "depth": 14.7,
677
+ "shape": "circular",
678
+ "diameter": 5.34,
679
+ "totalLiquidVolume": 100,
680
+ "x": 86.38,
681
+ "y": 74.24,
682
+ "z": 0.92,
683
+ "geometryDefinitionId": "conicalWell"
684
+ },
685
+ "B9": {
686
+ "depth": 14.7,
687
+ "shape": "circular",
688
+ "diameter": 5.34,
689
+ "totalLiquidVolume": 100,
690
+ "x": 86.38,
691
+ "y": 65.24,
692
+ "z": 0.92,
693
+ "geometryDefinitionId": "conicalWell"
694
+ },
695
+ "C9": {
696
+ "depth": 14.7,
697
+ "shape": "circular",
698
+ "diameter": 5.34,
699
+ "totalLiquidVolume": 100,
700
+ "x": 86.38,
701
+ "y": 56.24,
702
+ "z": 0.92,
703
+ "geometryDefinitionId": "conicalWell"
704
+ },
705
+ "D9": {
706
+ "depth": 14.7,
707
+ "shape": "circular",
708
+ "diameter": 5.34,
709
+ "totalLiquidVolume": 100,
710
+ "x": 86.38,
711
+ "y": 47.24,
712
+ "z": 0.92,
713
+ "geometryDefinitionId": "conicalWell"
714
+ },
715
+ "E9": {
716
+ "depth": 14.7,
717
+ "shape": "circular",
718
+ "diameter": 5.34,
719
+ "totalLiquidVolume": 100,
720
+ "x": 86.38,
721
+ "y": 38.24,
722
+ "z": 0.92,
723
+ "geometryDefinitionId": "conicalWell"
724
+ },
725
+ "F9": {
726
+ "depth": 14.7,
727
+ "shape": "circular",
728
+ "diameter": 5.34,
729
+ "totalLiquidVolume": 100,
730
+ "x": 86.38,
731
+ "y": 29.24,
732
+ "z": 0.92,
733
+ "geometryDefinitionId": "conicalWell"
734
+ },
735
+ "G9": {
736
+ "depth": 14.7,
737
+ "shape": "circular",
738
+ "diameter": 5.34,
739
+ "totalLiquidVolume": 100,
740
+ "x": 86.38,
741
+ "y": 20.24,
742
+ "z": 0.92,
743
+ "geometryDefinitionId": "conicalWell"
744
+ },
745
+ "H9": {
746
+ "depth": 14.7,
747
+ "shape": "circular",
748
+ "diameter": 5.34,
749
+ "totalLiquidVolume": 100,
750
+ "x": 86.38,
751
+ "y": 11.24,
752
+ "z": 0.92,
753
+ "geometryDefinitionId": "conicalWell"
754
+ },
755
+ "A10": {
756
+ "depth": 14.7,
757
+ "shape": "circular",
758
+ "diameter": 5.34,
759
+ "totalLiquidVolume": 100,
760
+ "x": 95.38,
761
+ "y": 74.24,
762
+ "z": 0.92,
763
+ "geometryDefinitionId": "conicalWell"
764
+ },
765
+ "B10": {
766
+ "depth": 14.7,
767
+ "shape": "circular",
768
+ "diameter": 5.34,
769
+ "totalLiquidVolume": 100,
770
+ "x": 95.38,
771
+ "y": 65.24,
772
+ "z": 0.92,
773
+ "geometryDefinitionId": "conicalWell"
774
+ },
775
+ "C10": {
776
+ "depth": 14.7,
777
+ "shape": "circular",
778
+ "diameter": 5.34,
779
+ "totalLiquidVolume": 100,
780
+ "x": 95.38,
781
+ "y": 56.24,
782
+ "z": 0.92,
783
+ "geometryDefinitionId": "conicalWell"
784
+ },
785
+ "D10": {
786
+ "depth": 14.7,
787
+ "shape": "circular",
788
+ "diameter": 5.34,
789
+ "totalLiquidVolume": 100,
790
+ "x": 95.38,
791
+ "y": 47.24,
792
+ "z": 0.92,
793
+ "geometryDefinitionId": "conicalWell"
794
+ },
795
+ "E10": {
796
+ "depth": 14.7,
797
+ "shape": "circular",
798
+ "diameter": 5.34,
799
+ "totalLiquidVolume": 100,
800
+ "x": 95.38,
801
+ "y": 38.24,
802
+ "z": 0.92,
803
+ "geometryDefinitionId": "conicalWell"
804
+ },
805
+ "F10": {
806
+ "depth": 14.7,
807
+ "shape": "circular",
808
+ "diameter": 5.34,
809
+ "totalLiquidVolume": 100,
810
+ "x": 95.38,
811
+ "y": 29.24,
812
+ "z": 0.92,
813
+ "geometryDefinitionId": "conicalWell"
814
+ },
815
+ "G10": {
816
+ "depth": 14.7,
817
+ "shape": "circular",
818
+ "diameter": 5.34,
819
+ "totalLiquidVolume": 100,
820
+ "x": 95.38,
821
+ "y": 20.24,
822
+ "z": 0.92,
823
+ "geometryDefinitionId": "conicalWell"
824
+ },
825
+ "H10": {
826
+ "depth": 14.7,
827
+ "shape": "circular",
828
+ "diameter": 5.34,
829
+ "totalLiquidVolume": 100,
830
+ "x": 95.38,
831
+ "y": 11.24,
832
+ "z": 0.92,
833
+ "geometryDefinitionId": "conicalWell"
834
+ },
835
+ "A11": {
836
+ "depth": 14.7,
837
+ "shape": "circular",
838
+ "diameter": 5.34,
839
+ "totalLiquidVolume": 100,
840
+ "x": 104.38,
841
+ "y": 74.24,
842
+ "z": 0.92,
843
+ "geometryDefinitionId": "conicalWell"
844
+ },
845
+ "B11": {
846
+ "depth": 14.7,
847
+ "shape": "circular",
848
+ "diameter": 5.34,
849
+ "totalLiquidVolume": 100,
850
+ "x": 104.38,
851
+ "y": 65.24,
852
+ "z": 0.92,
853
+ "geometryDefinitionId": "conicalWell"
854
+ },
855
+ "C11": {
856
+ "depth": 14.7,
857
+ "shape": "circular",
858
+ "diameter": 5.34,
859
+ "totalLiquidVolume": 100,
860
+ "x": 104.38,
861
+ "y": 56.24,
862
+ "z": 0.92,
863
+ "geometryDefinitionId": "conicalWell"
864
+ },
865
+ "D11": {
866
+ "depth": 14.7,
867
+ "shape": "circular",
868
+ "diameter": 5.34,
869
+ "totalLiquidVolume": 100,
870
+ "x": 104.38,
871
+ "y": 47.24,
872
+ "z": 0.92,
873
+ "geometryDefinitionId": "conicalWell"
874
+ },
875
+ "E11": {
876
+ "depth": 14.7,
877
+ "shape": "circular",
878
+ "diameter": 5.34,
879
+ "totalLiquidVolume": 100,
880
+ "x": 104.38,
881
+ "y": 38.24,
882
+ "z": 0.92,
883
+ "geometryDefinitionId": "conicalWell"
884
+ },
885
+ "F11": {
886
+ "depth": 14.7,
887
+ "shape": "circular",
888
+ "diameter": 5.34,
889
+ "totalLiquidVolume": 100,
890
+ "x": 104.38,
891
+ "y": 29.24,
892
+ "z": 0.92,
893
+ "geometryDefinitionId": "conicalWell"
894
+ },
895
+ "G11": {
896
+ "depth": 14.7,
897
+ "shape": "circular",
898
+ "diameter": 5.34,
899
+ "totalLiquidVolume": 100,
900
+ "x": 104.38,
901
+ "y": 20.24,
902
+ "z": 0.92,
903
+ "geometryDefinitionId": "conicalWell"
904
+ },
905
+ "H11": {
906
+ "depth": 14.7,
907
+ "shape": "circular",
908
+ "diameter": 5.34,
909
+ "totalLiquidVolume": 100,
910
+ "x": 104.38,
911
+ "y": 11.24,
912
+ "z": 0.92,
913
+ "geometryDefinitionId": "conicalWell"
914
+ },
915
+ "A12": {
916
+ "depth": 14.7,
917
+ "shape": "circular",
918
+ "diameter": 5.34,
919
+ "totalLiquidVolume": 100,
920
+ "x": 113.38,
921
+ "y": 74.24,
922
+ "z": 0.92,
923
+ "geometryDefinitionId": "conicalWell"
924
+ },
925
+ "B12": {
926
+ "depth": 14.7,
927
+ "shape": "circular",
928
+ "diameter": 5.34,
929
+ "totalLiquidVolume": 100,
930
+ "x": 113.38,
931
+ "y": 65.24,
932
+ "z": 0.92,
933
+ "geometryDefinitionId": "conicalWell"
934
+ },
935
+ "C12": {
936
+ "depth": 14.7,
937
+ "shape": "circular",
938
+ "diameter": 5.34,
939
+ "totalLiquidVolume": 100,
940
+ "x": 113.38,
941
+ "y": 56.24,
942
+ "z": 0.92,
943
+ "geometryDefinitionId": "conicalWell"
944
+ },
945
+ "D12": {
946
+ "depth": 14.7,
947
+ "shape": "circular",
948
+ "diameter": 5.34,
949
+ "totalLiquidVolume": 100,
950
+ "x": 113.38,
951
+ "y": 47.24,
952
+ "z": 0.92,
953
+ "geometryDefinitionId": "conicalWell"
954
+ },
955
+ "E12": {
956
+ "depth": 14.7,
957
+ "shape": "circular",
958
+ "diameter": 5.34,
959
+ "totalLiquidVolume": 100,
960
+ "x": 113.38,
961
+ "y": 38.24,
962
+ "z": 0.92,
963
+ "geometryDefinitionId": "conicalWell"
964
+ },
965
+ "F12": {
966
+ "depth": 14.7,
967
+ "shape": "circular",
968
+ "diameter": 5.34,
969
+ "totalLiquidVolume": 100,
970
+ "x": 113.38,
971
+ "y": 29.24,
972
+ "z": 0.92,
973
+ "geometryDefinitionId": "conicalWell"
974
+ },
975
+ "G12": {
976
+ "depth": 14.7,
977
+ "shape": "circular",
978
+ "diameter": 5.34,
979
+ "totalLiquidVolume": 100,
980
+ "x": 113.38,
981
+ "y": 20.24,
982
+ "z": 0.92,
983
+ "geometryDefinitionId": "conicalWell"
984
+ },
985
+ "H12": {
986
+ "depth": 14.7,
987
+ "shape": "circular",
988
+ "diameter": 5.34,
989
+ "totalLiquidVolume": 100,
990
+ "x": 113.38,
991
+ "y": 11.24,
992
+ "z": 0.92,
993
+ "geometryDefinitionId": "conicalWell"
994
+ }
995
+ },
996
+ "groups": [
997
+ {
998
+ "metadata": {
999
+ "wellBottomShape": "v"
1000
+ },
1001
+ "wells": [
1002
+ "A1",
1003
+ "B1",
1004
+ "C1",
1005
+ "D1",
1006
+ "E1",
1007
+ "F1",
1008
+ "G1",
1009
+ "H1",
1010
+ "A2",
1011
+ "B2",
1012
+ "C2",
1013
+ "D2",
1014
+ "E2",
1015
+ "F2",
1016
+ "G2",
1017
+ "H2",
1018
+ "A3",
1019
+ "B3",
1020
+ "C3",
1021
+ "D3",
1022
+ "E3",
1023
+ "F3",
1024
+ "G3",
1025
+ "H3",
1026
+ "A4",
1027
+ "B4",
1028
+ "C4",
1029
+ "D4",
1030
+ "E4",
1031
+ "F4",
1032
+ "G4",
1033
+ "H4",
1034
+ "A5",
1035
+ "B5",
1036
+ "C5",
1037
+ "D5",
1038
+ "E5",
1039
+ "F5",
1040
+ "G5",
1041
+ "H5",
1042
+ "A6",
1043
+ "B6",
1044
+ "C6",
1045
+ "D6",
1046
+ "E6",
1047
+ "F6",
1048
+ "G6",
1049
+ "H6",
1050
+ "A7",
1051
+ "B7",
1052
+ "C7",
1053
+ "D7",
1054
+ "E7",
1055
+ "F7",
1056
+ "G7",
1057
+ "H7",
1058
+ "A8",
1059
+ "B8",
1060
+ "C8",
1061
+ "D8",
1062
+ "E8",
1063
+ "F8",
1064
+ "G8",
1065
+ "H8",
1066
+ "A9",
1067
+ "B9",
1068
+ "C9",
1069
+ "D9",
1070
+ "E9",
1071
+ "F9",
1072
+ "G9",
1073
+ "H9",
1074
+ "A10",
1075
+ "B10",
1076
+ "C10",
1077
+ "D10",
1078
+ "E10",
1079
+ "F10",
1080
+ "G10",
1081
+ "H10",
1082
+ "A11",
1083
+ "B11",
1084
+ "C11",
1085
+ "D11",
1086
+ "E11",
1087
+ "F11",
1088
+ "G11",
1089
+ "H11",
1090
+ "A12",
1091
+ "B12",
1092
+ "C12",
1093
+ "D12",
1094
+ "E12",
1095
+ "F12",
1096
+ "G12",
1097
+ "H12"
1098
+ ]
1099
+ }
1100
+ ],
1101
+ "parameters": {
1102
+ "format": "96Standard",
1103
+ "isTiprack": false,
1104
+ "isMagneticModuleCompatible": true,
1105
+ "magneticModuleEngageHeight": 20,
1106
+ "loadName": "nest_96_wellplate_100ul_pcr_full_skirt"
1107
+ },
1108
+ "namespace": "opentrons",
1109
+ "version": 4,
1110
+ "schemaVersion": 2,
1111
+ "cornerOffsetFromSlot": {
1112
+ "x": 0,
1113
+ "y": 0,
1114
+ "z": 0
1115
+ },
1116
+ "stackingOffsetWithLabware": {
1117
+ "opentrons_96_pcr_adapter": {
1118
+ "x": 0,
1119
+ "y": 0,
1120
+ "z": 10.2
1121
+ },
1122
+ "opentrons_96_well_aluminum_block": {
1123
+ "x": 0,
1124
+ "y": 0,
1125
+ "z": 12.66
1126
+ },
1127
+ "nest_96_wellplate_100ul_pcr_full_skirt": {
1128
+ "x": 0,
1129
+ "y": 0,
1130
+ "z": 3.7
1131
+ }
1132
+ },
1133
+ "stackingOffsetWithModule": {
1134
+ "thermocyclerModuleV2": {
1135
+ "x": 0,
1136
+ "y": 0,
1137
+ "z": 10.8
1138
+ }
1139
+ },
1140
+ "innerLabwareGeometry": {
1141
+ "conicalWell": {
1142
+ "sections": [
1143
+ {
1144
+ "shape": "conical",
1145
+ "bottomDiameter": 5.26,
1146
+ "topDiameter": 5.34,
1147
+ "topHeight": 14.7,
1148
+ "bottomHeight": 9.89
1149
+ },
1150
+ {
1151
+ "shape": "conical",
1152
+ "bottomDiameter": 2.16,
1153
+ "topDiameter": 5.26,
1154
+ "topHeight": 9.89,
1155
+ "bottomHeight": 0.2
1156
+ },
1157
+ {
1158
+ "shape": "spherical",
1159
+ "radiusOfCurvature": 3.015,
1160
+ "topHeight": 0.2,
1161
+ "bottomHeight": 0.0
1162
+ }
1163
+ ]
1164
+ }
1165
+ }
1166
+ }