@opentrons/shared-data 0.1.7-alpha.1 → 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 (258) 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 +3 -1
  9. package/command/schemas/13.json +147 -315
  10. package/command/schemas/14.json +7254 -0
  11. package/command/types/index.ts +15 -4
  12. package/command/types/module.ts +24 -4
  13. package/command/types/setup.ts +5 -5
  14. package/command/types/support.ts +1 -0
  15. package/deck/definitions/5/ot2_short_trash.json +37 -0
  16. package/deck/definitions/5/ot2_standard.json +37 -0
  17. package/deck/definitions/5/ot3_standard.json +152 -51
  18. package/deck/schemas/5.json +46 -1
  19. package/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/3.json +4737 -0
  20. package/labware/definitions/2/axygen_96_wellplate_500ul/1.json +1036 -0
  21. package/labware/definitions/2/axygen_96_wellplate_500ul/2.json +1159 -0
  22. package/labware/definitions/2/biorad_384_wellplate_50ul/4.json +4748 -0
  23. package/labware/definitions/2/biorad_96_wellplate_200ul_pcr/4.json +1187 -0
  24. package/labware/definitions/2/corning_12_wellplate_6.9ml_flat/4.json +210 -0
  25. package/labware/definitions/2/corning_24_wellplate_3.4ml_flat/4.json +342 -0
  26. package/labware/definitions/2/corning_48_wellplate_1.6ml_flat/5.json +610 -0
  27. package/labware/definitions/2/corning_6_wellplate_16.8ml_flat/4.json +134 -0
  28. package/labware/definitions/2/corning_96_wellplate_360ul_flat/4.json +1177 -0
  29. package/labware/definitions/2/corning_96_wellplate_360ul_lid/1.json +111 -0
  30. package/labware/definitions/2/ev_resin_tips_flex_96_labware/1.json +1 -1
  31. package/labware/definitions/2/ibidi_96_square_well_plate_300ul/1.json +1105 -0
  32. package/labware/definitions/2/ibidi_96_square_well_plate_300ul/2.json +1216 -0
  33. package/labware/definitions/2/ibidi_96_square_well_plate_300ul_lid/1.json +110 -0
  34. package/labware/definitions/2/nest_12_reservoir_22ml/1.json +232 -0
  35. package/labware/definitions/2/nest_24_wellplate_10.4ml/1.json +386 -0
  36. package/labware/definitions/2/nest_8_reservoir_22ml/1.json +162 -0
  37. package/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/4.json +1166 -0
  38. package/labware/definitions/2/nest_96_wellplate_200ul_flat/4.json +1145 -0
  39. package/labware/definitions/2/nest_96_wellplate_2ml_deep/4.json +1261 -0
  40. package/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/4.json +1174 -0
  41. package/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +5 -0
  42. package/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +5 -0
  43. package/labware/definitions/2/opentrons_flex_96_filtertiprack_20ul/1.json +5 -0
  44. package/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +5 -0
  45. package/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +5 -0
  46. package/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +5 -0
  47. package/labware/definitions/2/opentrons_flex_96_tiprack_20ul/1.json +5 -0
  48. package/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +5 -0
  49. package/labware/definitions/2/opentrons_flex_tiprack_lid/1.json +8 -8
  50. package/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +8 -0
  51. package/labware/definitions/2/opentrons_tough_universal_lid/1.json +16 -1
  52. package/labware/definitions/2/smc_384_read_plate/1.json +4701 -0
  53. package/labware/definitions/2/smc_384_read_plate/2.json +5100 -0
  54. package/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/3.json +1141 -0
  55. package/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/3.json +1141 -0
  56. package/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/3.json +1243 -0
  57. package/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +5 -2
  58. package/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +15 -2
  59. package/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
  60. package/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +5 -9
  61. package/labware/definitions/3/schema3test_flex_96_tiprack_adapter/999.json +70 -0
  62. package/labware/definitions/3/schema3test_flex_tiprack_lid/999.json +146 -0
  63. package/labware/definitions/3/schema3test_tough_pcr_auto_sealing_lid/999.json +162 -0
  64. package/labware/definitions/3/schema3test_universal_flat_adapter/999.json +157 -0
  65. package/labware/fixtures/2/fixture_user_volumes_prototype.json +1137 -0
  66. package/labware/fixtures/3/fixture_2_plate.json +5 -2
  67. package/labware/fixtures/3/fixture_corning_24_plate.json +6 -3
  68. package/labware/fixtures/3/index.ts +4 -0
  69. package/labware/schemas/2.json +36 -1
  70. package/labware/schemas/3.json +57 -5
  71. package/lib/command/index.d.ts +39 -1
  72. package/lib/command/schemas/13.json +147 -315
  73. package/lib/command/schemas/14.json +7254 -0
  74. package/lib/command/types/index.d.ts +11 -3
  75. package/lib/command/types/module.d.ts +19 -6
  76. package/lib/command/types/setup.d.ts +5 -5
  77. package/lib/deck/definitions/5/ot2_short_trash.json +37 -0
  78. package/lib/deck/definitions/5/ot2_standard.json +37 -0
  79. package/lib/deck/definitions/5/ot3_standard.json +152 -51
  80. package/lib/deck/schemas/5.json +46 -1
  81. package/lib/index.mjs +240842 -193770
  82. package/lib/js/constants.d.ts +30 -9
  83. package/lib/js/fixtures.d.ts +77 -2
  84. package/lib/js/getLabware.d.ts +3 -3
  85. package/lib/js/helpers/__tests__/getMaxPushOutVolume.test.d.ts +1 -0
  86. package/lib/js/helpers/__tests__/getStackedItemsOnStartingDeck.test.d.ts +1 -0
  87. package/lib/js/helpers/__tests__/labwareSchemaShims.test.d.ts +1 -0
  88. package/lib/js/helpers/__tests__/pairsFromArray.test.d.ts +1 -0
  89. package/lib/js/helpers/__tests__/vectorMath.test.d.ts +1 -0
  90. package/lib/js/helpers/getFixedTrashLabwareDefinition.d.ts +2 -2
  91. package/lib/js/helpers/getLabwareDefURI.d.ts +3 -0
  92. package/lib/js/helpers/getLabwareDefinitionsByURIForProtocol.d.ts +6 -0
  93. package/lib/js/helpers/getLabwareInfoByLiquidId.d.ts +10 -0
  94. package/lib/js/helpers/getLiquidsByIdForLabware.d.ts +2 -0
  95. package/lib/js/helpers/getLoadedLabwareDefinitionsByUri.d.ts +2 -2
  96. package/lib/js/helpers/getMaxPushOutVolume.d.ts +2 -0
  97. package/lib/js/helpers/getStackedItemsOnStartingDeck.d.ts +50 -0
  98. package/lib/js/helpers/getStandardDeckViewLayerBlockList.d.ts +2 -0
  99. package/lib/js/helpers/getTipTypeFromTipRackDefinition.d.ts +2 -2
  100. package/lib/js/helpers/getWellFillFromLabwareId.d.ts +4 -0
  101. package/lib/js/helpers/getWellNamePerMultiTip.d.ts +3 -3
  102. package/lib/js/helpers/getWellTotalVolume.d.ts +2 -2
  103. package/lib/js/helpers/index.d.ts +22 -14
  104. package/lib/js/helpers/labwareInference.d.ts +3 -3
  105. package/lib/js/helpers/liquidClasses.d.ts +4 -2
  106. package/lib/js/helpers/matrixMath.d.ts +3 -0
  107. package/lib/js/helpers/pairsFromArray.d.ts +8 -0
  108. package/lib/js/helpers/parseProtocolCommands.d.ts +4 -4
  109. package/lib/js/helpers/positionMath.d.ts +127 -0
  110. package/lib/js/helpers/validateCustomLabwareHelper.d.ts +2 -2
  111. package/lib/js/helpers/vectorMath.d.ts +14 -0
  112. package/lib/js/helpers/wellSets.d.ts +4 -4
  113. package/lib/js/labware.d.ts +4 -3
  114. package/lib/js/liquidClasses.d.ts +4 -0
  115. package/lib/js/modules.d.ts +1 -1
  116. package/lib/js/types.d.ts +62 -13
  117. package/lib/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/3.json +4737 -0
  118. package/lib/labware/definitions/2/axygen_96_wellplate_500ul/1.json +1036 -0
  119. package/lib/labware/definitions/2/axygen_96_wellplate_500ul/2.json +1159 -0
  120. package/lib/labware/definitions/2/biorad_384_wellplate_50ul/4.json +4748 -0
  121. package/lib/labware/definitions/2/biorad_96_wellplate_200ul_pcr/4.json +1187 -0
  122. package/lib/labware/definitions/2/corning_12_wellplate_6.9ml_flat/4.json +210 -0
  123. package/lib/labware/definitions/2/corning_24_wellplate_3.4ml_flat/4.json +342 -0
  124. package/lib/labware/definitions/2/corning_48_wellplate_1.6ml_flat/5.json +610 -0
  125. package/lib/labware/definitions/2/corning_6_wellplate_16.8ml_flat/4.json +134 -0
  126. package/lib/labware/definitions/2/corning_96_wellplate_360ul_flat/4.json +1177 -0
  127. package/lib/labware/definitions/2/corning_96_wellplate_360ul_lid/1.json +111 -0
  128. package/lib/labware/definitions/2/ev_resin_tips_flex_96_labware/1.json +1 -1
  129. package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul/1.json +1105 -0
  130. package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul/2.json +1216 -0
  131. package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul_lid/1.json +110 -0
  132. package/lib/labware/definitions/2/nest_12_reservoir_22ml/1.json +232 -0
  133. package/lib/labware/definitions/2/nest_24_wellplate_10.4ml/1.json +386 -0
  134. package/lib/labware/definitions/2/nest_8_reservoir_22ml/1.json +162 -0
  135. package/lib/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/4.json +1166 -0
  136. package/lib/labware/definitions/2/nest_96_wellplate_200ul_flat/4.json +1145 -0
  137. package/lib/labware/definitions/2/nest_96_wellplate_2ml_deep/4.json +1261 -0
  138. package/lib/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/4.json +1174 -0
  139. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +5 -0
  140. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +5 -0
  141. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_20ul/1.json +5 -0
  142. package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +5 -0
  143. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +5 -0
  144. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +5 -0
  145. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_20ul/1.json +5 -0
  146. package/lib/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +5 -0
  147. package/lib/labware/definitions/2/opentrons_flex_tiprack_lid/1.json +8 -8
  148. package/lib/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +8 -0
  149. package/lib/labware/definitions/2/opentrons_tough_universal_lid/1.json +16 -1
  150. package/lib/labware/definitions/2/smc_384_read_plate/1.json +4701 -0
  151. package/lib/labware/definitions/2/smc_384_read_plate/2.json +5100 -0
  152. package/lib/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/3.json +1141 -0
  153. package/lib/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/3.json +1141 -0
  154. package/lib/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/3.json +1243 -0
  155. package/lib/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +5 -2
  156. package/lib/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +15 -2
  157. package/lib/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
  158. package/lib/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +5 -9
  159. package/lib/labware/definitions/3/schema3test_flex_96_tiprack_adapter/999.json +70 -0
  160. package/lib/labware/definitions/3/schema3test_flex_tiprack_lid/999.json +146 -0
  161. package/lib/labware/definitions/3/schema3test_tough_pcr_auto_sealing_lid/999.json +162 -0
  162. package/lib/labware/definitions/3/schema3test_universal_flat_adapter/999.json +157 -0
  163. package/lib/labware/fixtures/2/fixture_user_volumes_prototype.json +1137 -0
  164. package/lib/labware/fixtures/3/fixture_2_plate.json +5 -2
  165. package/lib/labware/fixtures/3/fixture_corning_24_plate.json +6 -3
  166. package/lib/labware/fixtures/3/index.d.ts +3 -0
  167. package/lib/labware/schemas/2.json +36 -1
  168. package/lib/labware/schemas/3.json +57 -5
  169. package/lib/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +545 -390
  170. package/lib/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +370 -215
  171. package/lib/liquid-class/definitions/1/{water.json → water/1.json} +151 -62
  172. package/lib/liquid-class/fixtures/1/fixture_glycerol50.json +1 -0
  173. package/lib/liquid-class/schemas/1.json +6 -0
  174. package/lib/module/definitions/3/absorbanceReaderV1.json +20 -151
  175. package/lib/module/definitions/3/flexStackerModuleV1.json +29 -389
  176. package/lib/module/definitions/3/heaterShakerModuleV1.json +16 -357
  177. package/lib/module/definitions/3/magneticBlockV1.json +18 -149
  178. package/lib/module/definitions/3/magneticModuleV1.json +16 -399
  179. package/lib/module/definitions/3/magneticModuleV2.json +16 -399
  180. package/lib/module/definitions/3/temperatureModuleV1.json +16 -153
  181. package/lib/module/definitions/3/temperatureModuleV2.json +16 -153
  182. package/lib/module/definitions/3/thermocyclerModuleV1.json +16 -1340
  183. package/lib/module/definitions/3/thermocyclerModuleV2.json +18 -3617
  184. package/lib/module/schemas/3.json +109 -12
  185. package/lib/pipette/definitions/1/pipetteModelSpecs.json +336 -0
  186. package/lib/pipette/definitions/2/general/ninety_six_channel/p200/3_2.json +660 -0
  187. package/lib/pipette/definitions/2/geometry/ninety_six_channel/p200/3_2.json +309 -0
  188. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_1.json +28 -18
  189. package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_2.json +192 -0
  190. package/lib/protocol/types/schemaV8/index.d.ts +17 -1
  191. package/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +545 -390
  192. package/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +370 -215
  193. package/liquid-class/definitions/1/{water.json → water/1.json} +151 -62
  194. package/liquid-class/fixtures/1/fixture_glycerol50.json +1 -0
  195. package/liquid-class/schemas/1.json +6 -0
  196. package/module/definitions/3/absorbanceReaderV1.json +20 -151
  197. package/module/definitions/3/flexStackerModuleV1.json +29 -389
  198. package/module/definitions/3/heaterShakerModuleV1.json +16 -357
  199. package/module/definitions/3/magneticBlockV1.json +18 -149
  200. package/module/definitions/3/magneticModuleV1.json +16 -399
  201. package/module/definitions/3/magneticModuleV2.json +16 -399
  202. package/module/definitions/3/temperatureModuleV1.json +16 -153
  203. package/module/definitions/3/temperatureModuleV2.json +16 -153
  204. package/module/definitions/3/thermocyclerModuleV1.json +16 -1340
  205. package/module/definitions/3/thermocyclerModuleV2.json +18 -3617
  206. package/module/schemas/3.json +109 -12
  207. package/mypy.ini +22 -0
  208. package/package.json +1 -1
  209. package/pipette/definitions/1/pipetteModelSpecs.json +336 -0
  210. package/pipette/definitions/2/general/ninety_six_channel/p200/3_2.json +660 -0
  211. package/pipette/definitions/2/geometry/ninety_six_channel/p200/3_2.json +309 -0
  212. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_1.json +28 -18
  213. package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_2.json +192 -0
  214. package/protocol/types/schemaV8/index.ts +29 -1
  215. package/pyproject.toml +119 -0
  216. package/pytest.ini +8 -0
  217. package/python_tests/__init__.py +1 -0
  218. package/python_tests/command/test_known_schema_ids.py +9 -0
  219. package/python_tests/conftest.py +108 -0
  220. package/python_tests/deck/__init__.py +0 -0
  221. package/python_tests/deck/test_list_names.py +12 -0
  222. package/python_tests/deck/test_position.py +101 -0
  223. package/python_tests/deck/test_typechecks.py +23 -0
  224. package/python_tests/errors/__init__.py +1 -0
  225. package/python_tests/errors/test_error_completeness.py +19 -0
  226. package/python_tests/errors/test_exceptions.py +74 -0
  227. package/python_tests/gripper/__init__.py +0 -0
  228. package/python_tests/gripper/test_definition.py +30 -0
  229. package/python_tests/gripper/test_load.py +19 -0
  230. package/python_tests/labware/__init__.py +13 -0
  231. package/python_tests/labware/test_typechecks.py +80 -0
  232. package/python_tests/liquid_classes/__init__.py +0 -0
  233. package/python_tests/liquid_classes/test_liquid_class_values.py +59 -0
  234. package/python_tests/liquid_classes/test_load.py +45 -0
  235. package/python_tests/liquid_classes/test_validations.py +192 -0
  236. package/python_tests/module/__init__.py +20 -0
  237. package/python_tests/module/test_load.py +49 -0
  238. package/python_tests/module/test_typechecks.py +26 -0
  239. package/python_tests/pipette/__init__.py +0 -0
  240. package/python_tests/pipette/test_load_data.py +109 -0
  241. package/python_tests/pipette/test_max_flow_rates_per_volume.py +112 -0
  242. package/python_tests/pipette/test_mutable_configurations.py +467 -0
  243. package/python_tests/pipette/test_pipette_definition.py +183 -0
  244. package/python_tests/pipette/test_pipette_load_name_conversions.py +244 -0
  245. package/python_tests/pipette/test_typechecks.py +47 -0
  246. package/python_tests/pipette/test_validate_schema.py +198 -0
  247. package/python_tests/protocol/__init__.py +7 -0
  248. package/python_tests/protocol/test_protocol_schema_v6.py +108 -0
  249. package/python_tests/protocol/test_protocol_schema_v7.py +35 -0
  250. package/python_tests/protocol/test_protocol_schema_v8.py +17 -0
  251. package/python_tests/protocol/test_typechecks.py +30 -0
  252. package/python_tests/robot/__init__.py +0 -0
  253. package/python_tests/robot/test_typechecks.py +13 -0
  254. package/lib/js/cypressUtils.d.ts +0 -1
  255. package/lib/js/helpers/getVectorDifference.d.ts +0 -2
  256. package/lib/js/helpers/getVectorSum.d.ts +0 -2
  257. /package/lib/js/{helpers/__tests__/getVectorDifference.test.d.ts → __tests__/fixtures.test.d.ts} +0 -0
  258. /package/lib/js/helpers/__tests__/{getVectorSum.test.d.ts → getLabwareInfoByLiquidId.test.d.ts} +0 -0
@@ -20,8 +20,11 @@
20
20
  "y": -85.8,
21
21
  "z": 44.45
22
22
  }
23
- },
24
- "footprint": {
23
+ }
24
+ },
25
+ "features": {
26
+ "slotFootprintAsChild": {
27
+ "z": 0,
25
28
  "backLeft": {
26
29
  "x": 0,
27
30
  "y": 0
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "schemaVersion": 3,
18
18
  "version": 3,
19
- "namespace": "opentrons",
19
+ "namespace": "fixture",
20
20
  "metadata": {
21
21
  "displayName": "Corning 24 Well Plate 3.4 mL Flat",
22
22
  "displayVolumeUnits": "mL",
@@ -35,8 +35,11 @@
35
35
  "y": -85.47,
36
36
  "z": 20.27
37
37
  }
38
- },
39
- "footprint": {
38
+ }
39
+ },
40
+ "features": {
41
+ "slotFootprintAsChild": {
42
+ "z": 0,
40
43
  "backLeft": {
41
44
  "x": 0,
42
45
  "y": 0
@@ -0,0 +1,4 @@
1
+ import fixture_2_plate from './fixture_2_plate.json'
2
+ import fixture_corning_24_plate from './fixture_corning_24_plate.json'
3
+
4
+ export { fixture_2_plate, fixture_corning_24_plate }
@@ -438,6 +438,34 @@
438
438
  }
439
439
  }
440
440
  }
441
+ },
442
+ "HeightVolumePair": {
443
+ "type": "object",
444
+ "required": ["height", "volume"],
445
+ "properties": {
446
+ "height": {
447
+ "description": "The height within a well at a user-defined volume.",
448
+ "type": "number"
449
+ },
450
+ "volume": {
451
+ "description": "A user-defined volume at a known height within a well.",
452
+ "type": "number"
453
+ }
454
+ }
455
+ },
456
+ "UserDefinedVolumes": {
457
+ "type": "object",
458
+ "required": ["heightToVolumeMap"],
459
+ "properties": {
460
+ "heightToVolumeMap": {
461
+ "description": "A list mapping heights to volumes [height, volume]. Must be ordered from top (highest z) to bottom (lowest z).",
462
+ "type": "array",
463
+ "minItems": 2,
464
+ "items": {
465
+ "$ref": "#/definitions/HeightVolumePair"
466
+ }
467
+ }
468
+ }
441
469
  }
442
470
  },
443
471
  "type": "object",
@@ -713,7 +741,14 @@
713
741
  "type": ["object", "null"],
714
742
  "description": "A dictionary holding all unique inner well geometries in a labware.",
715
743
  "additionalProperties": {
716
- "$ref": "#/definitions/InnerWellGeometry"
744
+ "oneOf": [
745
+ {
746
+ "$ref": "#/definitions/InnerWellGeometry"
747
+ },
748
+ {
749
+ "$ref": "#/definitions/UserDefinedVolumes"
750
+ }
751
+ ]
717
752
  }
718
753
  }
719
754
  }
@@ -496,6 +496,7 @@
496
496
  "parameters",
497
497
  "ordering",
498
498
  "extents",
499
+ "features",
499
500
  "wells",
500
501
  "groups"
501
502
  ],
@@ -614,18 +615,69 @@
614
615
  }
615
616
  },
616
617
  "extents": {
617
- "description": "The outer dimensions of the labware.",
618
+ "description": "The outer dimensions of the labware. Includes offsets from `cornerOffsetFromSlot`.",
618
619
  "type": "object",
619
- "required": ["total", "footprint"],
620
+ "required": ["total"],
620
621
  "additionalProperties": false,
621
622
  "properties": {
622
623
  "total": {
623
624
  "description": "The all-encompassing outer dimensions of the labware.",
624
625
  "$ref": "#/definitions/axisAlignedBoundingBox3D"
626
+ }
627
+ }
628
+ },
629
+ "features": {
630
+ "type": "object",
631
+ "description": "Locating features when this labware is a part of a stackup.",
632
+ "required": [],
633
+ "properties": {
634
+ "slotFootprintAsChild": {
635
+ "description": "The 3D plane of the labware that makes physical contact with a parent entity. Constrained by the dimensions of a slot.",
636
+ "type": "object",
637
+ "required": ["backLeft", "frontRight", "z"],
638
+ "properties": {
639
+ "backLeft": {
640
+ "description": "(-x, +y) relative to the labware origin.",
641
+ "$ref": "#/definitions/vector2D"
642
+ },
643
+ "frontRight": {
644
+ "description": "(+x, -y) relative to the labware origin.",
645
+ "$ref": "#/definitions/vector2D"
646
+ },
647
+ "z": {
648
+ "description": "Always zero by convention. Z-coordinate of the footprint plane.",
649
+ "type": "number"
650
+ },
651
+ "springDirectionalForce": {
652
+ "description": "Applicable when the labware contains a spring that influences its position when placed on a parent deck item.",
653
+ "type": "string",
654
+ "enum": ["backLeftBottom"]
655
+ }
656
+ }
625
657
  },
626
- "footprint": {
627
- "description": "The outer dimensions of the labware where it meets the deck.",
628
- "$ref": "#/definitions/axisAlignedBoundingBox2D"
658
+ "slotFootprintAsParent": {
659
+ "description": "The 2D plane on which a child deck item resides.",
660
+ "type": "object",
661
+ "required": ["backLeft", "frontRight", "z"],
662
+ "properties": {
663
+ "backLeft": {
664
+ "description": "(-x, +y), the back left corner of a labware's mating plane.",
665
+ "$ref": "#/definitions/vector2D"
666
+ },
667
+ "frontRight": {
668
+ "description": "(+x, -y), the back left corner of a labware's module plane.",
669
+ "$ref": "#/definitions/vector2D"
670
+ },
671
+ "z": {
672
+ "description": "The z-offset from this labware's origin to the plane on which a child deck item resides.",
673
+ "type": "number"
674
+ },
675
+ "springDirectionalForce": {
676
+ "description": "Applicable when the labware contains a spring that influences the positioning of a child deck item.",
677
+ "type": "string",
678
+ "enum": ["backLeftBottom"]
679
+ }
680
+ }
629
681
  }
630
682
  }
631
683
  },
@@ -5,6 +5,7 @@ import commandSchemaV10 from './schemas/10.json';
5
5
  import commandSchemaV11 from './schemas/11.json';
6
6
  import commandSchemaV12 from './schemas/12.json';
7
7
  import commandSchemaV13 from './schemas/13.json';
8
+ import commandSchemaV14 from './schemas/14.json';
8
9
  export * from './types/index';
9
10
  export declare const commandSchemaLatest: {
10
11
  $defs: {
@@ -253,6 +254,7 @@ export declare const commandSchemaLatest: {
253
254
  type: string;
254
255
  };
255
256
  AspirateProperties: {
257
+ additionalProperties: boolean;
256
258
  description: string;
257
259
  properties: {
258
260
  aspiratePosition: {
@@ -511,6 +513,7 @@ export declare const commandSchemaLatest: {
511
513
  type: string;
512
514
  };
513
515
  BlowoutParams: {
516
+ additionalProperties: boolean;
514
517
  description: string;
515
518
  properties: {
516
519
  flowRate: {
@@ -531,6 +534,7 @@ export declare const commandSchemaLatest: {
531
534
  type: string;
532
535
  };
533
536
  BlowoutProperties: {
537
+ additionalProperties: boolean;
534
538
  description: string;
535
539
  properties: {
536
540
  enable: {
@@ -1241,6 +1245,7 @@ export declare const commandSchemaLatest: {
1241
1245
  type: string;
1242
1246
  };
1243
1247
  DelayParams: {
1248
+ additionalProperties: boolean;
1244
1249
  description: string;
1245
1250
  properties: {
1246
1251
  duration: {
@@ -1257,6 +1262,7 @@ export declare const commandSchemaLatest: {
1257
1262
  type: string;
1258
1263
  };
1259
1264
  DelayProperties: {
1265
+ additionalProperties: boolean;
1260
1266
  description: string;
1261
1267
  properties: {
1262
1268
  enable: {
@@ -2037,6 +2043,14 @@ export declare const commandSchemaLatest: {
2037
2043
  IdentifyModuleParams: {
2038
2044
  description: string;
2039
2045
  properties: {
2046
+ color: {
2047
+ anyOf: {
2048
+ type: string;
2049
+ }[];
2050
+ default: null;
2051
+ description: string;
2052
+ title: string;
2053
+ };
2040
2054
  model: {
2041
2055
  $ref: string;
2042
2056
  description: string;
@@ -2046,6 +2060,11 @@ export declare const commandSchemaLatest: {
2046
2060
  title: string;
2047
2061
  type: string;
2048
2062
  };
2063
+ start: {
2064
+ description: string;
2065
+ title: string;
2066
+ type: string;
2067
+ };
2049
2068
  };
2050
2069
  required: string[];
2051
2070
  title: string;
@@ -2144,6 +2163,7 @@ export declare const commandSchemaLatest: {
2144
2163
  type: string;
2145
2164
  };
2146
2165
  LiquidClassRecord: {
2166
+ additionalProperties: boolean;
2147
2167
  description: string;
2148
2168
  properties: {
2149
2169
  aspirate: {
@@ -2180,6 +2200,7 @@ export declare const commandSchemaLatest: {
2180
2200
  type: string;
2181
2201
  };
2182
2202
  LiquidClassTouchTipParams: {
2203
+ additionalProperties: boolean;
2183
2204
  description: string;
2184
2205
  properties: {
2185
2206
  mmFromEdge: {
@@ -2740,6 +2761,7 @@ export declare const commandSchemaLatest: {
2740
2761
  type: string;
2741
2762
  };
2742
2763
  MixParams: {
2764
+ additionalProperties: boolean;
2743
2765
  description: string;
2744
2766
  properties: {
2745
2767
  repetitions: {
@@ -2762,6 +2784,7 @@ export declare const commandSchemaLatest: {
2762
2784
  type: string;
2763
2785
  };
2764
2786
  MixProperties: {
2787
+ additionalProperties: boolean;
2765
2788
  description: string;
2766
2789
  properties: {
2767
2790
  enable: {
@@ -3426,6 +3449,7 @@ export declare const commandSchemaLatest: {
3426
3449
  type: string;
3427
3450
  };
3428
3451
  MultiDispenseProperties: {
3452
+ additionalProperties: boolean;
3429
3453
  description: string;
3430
3454
  properties: {
3431
3455
  conditioningByVolume: {
@@ -3968,6 +3992,7 @@ export declare const commandSchemaLatest: {
3968
3992
  type: string;
3969
3993
  };
3970
3994
  RetractAspirate: {
3995
+ additionalProperties: boolean;
3971
3996
  description: string;
3972
3997
  properties: {
3973
3998
  airGapByVolume: {
@@ -4052,6 +4077,7 @@ export declare const commandSchemaLatest: {
4052
4077
  type: string;
4053
4078
  };
4054
4079
  RetractDispense: {
4080
+ additionalProperties: boolean;
4055
4081
  description: string;
4056
4082
  properties: {
4057
4083
  airGapByVolume: {
@@ -4627,6 +4653,14 @@ export declare const commandSchemaLatest: {
4627
4653
  title: string;
4628
4654
  type: string;
4629
4655
  };
4656
+ poolOverlapOverride: {
4657
+ anyOf: {
4658
+ type: string;
4659
+ }[];
4660
+ default: null;
4661
+ description: string;
4662
+ title: string;
4663
+ };
4630
4664
  primaryLabware: {
4631
4665
  $ref: string;
4632
4666
  description: string;
@@ -4739,6 +4773,7 @@ export declare const commandSchemaLatest: {
4739
4773
  type: string;
4740
4774
  };
4741
4775
  SingleDispenseProperties: {
4776
+ additionalProperties: boolean;
4742
4777
  description: string;
4743
4778
  properties: {
4744
4779
  correctionByVolume: {
@@ -4938,6 +4973,7 @@ export declare const commandSchemaLatest: {
4938
4973
  type: string;
4939
4974
  };
4940
4975
  Submerge: {
4976
+ additionalProperties: boolean;
4941
4977
  description: string;
4942
4978
  properties: {
4943
4979
  delay: {
@@ -4987,6 +5023,7 @@ export declare const commandSchemaLatest: {
4987
5023
  type: string;
4988
5024
  };
4989
5025
  TipPosition: {
5026
+ additionalProperties: boolean;
4990
5027
  description: string;
4991
5028
  properties: {
4992
5029
  offset: {
@@ -5080,6 +5117,7 @@ export declare const commandSchemaLatest: {
5080
5117
  type: string;
5081
5118
  };
5082
5119
  TouchTipProperties: {
5120
+ additionalProperties: boolean;
5083
5121
  description: string;
5084
5122
  properties: {
5085
5123
  enable: {
@@ -6404,4 +6442,4 @@ export declare const commandSchemaLatest: {
6404
6442
  $ref: string;
6405
6443
  }[];
6406
6444
  };
6407
- export { commandSchemaV7, commandSchemaV8, commandSchemaV9, commandSchemaV10, commandSchemaV11, commandSchemaV12, commandSchemaV13, };
6445
+ export { commandSchemaV7, commandSchemaV8, commandSchemaV9, commandSchemaV10, commandSchemaV11, commandSchemaV12, commandSchemaV13, commandSchemaV14, };