@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.
- package/.coveragerc +4 -0
- package/.flake8 +31 -0
- package/Config.in +11 -0
- package/LICENSE +202 -0
- package/Makefile +13 -14
- package/Makefile-python.mk +134 -0
- package/buildroot.mk +35 -0
- package/command/index.ts +16 -2
- package/command/schemas/12.json +65 -0
- package/command/schemas/13.json +7039 -0
- package/command/schemas/14.json +7254 -0
- package/command/types/annotation.ts +1 -1
- package/command/types/calibration.ts +7 -6
- package/command/types/gantry.ts +7 -6
- package/command/types/incidental.ts +1 -1
- package/command/types/index.ts +79 -20
- package/command/types/module.ts +98 -11
- package/command/types/pipetting.ts +9 -3
- package/command/types/robot.ts +98 -0
- package/command/types/setup.ts +8 -8
- package/command/types/support.ts +14 -2
- package/command/types/timing.ts +1 -1
- package/command/types/unsafe.ts +63 -1
- package/deck/definitions/5/ot2_short_trash.json +37 -0
- package/deck/definitions/5/ot2_standard.json +37 -0
- package/deck/definitions/5/ot3_standard.json +152 -51
- package/deck/index.ts +3 -6
- package/deck/schemas/5.json +46 -1
- package/errors/definitions/1/errors.json +12 -0
- package/errors/index.ts +2 -1
- package/labware/definitions/2/agilent_1_reservoir_290ml/3.json +80 -0
- package/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/3.json +4737 -0
- package/labware/definitions/2/axygen_96_wellplate_500ul/1.json +1036 -0
- package/labware/definitions/2/axygen_96_wellplate_500ul/2.json +1159 -0
- package/labware/definitions/2/biorad_384_wellplate_50ul/4.json +4748 -0
- package/labware/definitions/2/biorad_96_wellplate_200ul_pcr/4.json +1187 -0
- package/labware/definitions/2/corning_12_wellplate_6.9ml_flat/4.json +210 -0
- package/labware/definitions/2/corning_24_wellplate_3.4ml_flat/4.json +342 -0
- package/labware/definitions/2/corning_384_wellplate_112ul_flat/4.json +5116 -0
- package/labware/definitions/2/corning_48_wellplate_1.6ml_flat/4.json +605 -0
- package/labware/definitions/2/corning_48_wellplate_1.6ml_flat/5.json +610 -0
- package/labware/definitions/2/corning_6_wellplate_16.8ml_flat/4.json +134 -0
- package/labware/definitions/2/corning_96_wellplate_360ul_flat/4.json +1177 -0
- package/labware/definitions/2/corning_96_wellplate_360ul_lid/1.json +111 -0
- package/labware/definitions/2/ev_resin_tips_flex_96_labware/1.json +1 -1
- package/labware/definitions/2/ibidi_96_square_well_plate_300ul/1.json +1105 -0
- package/labware/definitions/2/ibidi_96_square_well_plate_300ul/2.json +1216 -0
- package/labware/definitions/2/ibidi_96_square_well_plate_300ul_lid/1.json +110 -0
- package/labware/definitions/2/nest_12_reservoir_22ml/1.json +232 -0
- package/labware/definitions/2/nest_1_reservoir_290ml/3.json +80 -0
- package/labware/definitions/2/nest_24_wellplate_10.4ml/1.json +386 -0
- package/labware/definitions/2/nest_8_reservoir_22ml/1.json +162 -0
- package/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/4.json +1166 -0
- package/labware/definitions/2/nest_96_wellplate_200ul_flat/4.json +1145 -0
- package/labware/definitions/2/nest_96_wellplate_2ml_deep/4.json +1261 -0
- package/labware/definitions/2/opentrons_24_aluminumblock_nest_0.5ml_screwcap/3.json +370 -0
- package/labware/definitions/2/opentrons_24_tuberack_nest_0.5ml_screwcap/3.json +371 -0
- package/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/4.json +1149 -0
- package/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/4.json +1174 -0
- package/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_filtertiprack_20ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_tiprack_20ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +5 -0
- package/labware/definitions/2/opentrons_flex_tiprack_lid/1.json +15 -9
- package/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +8 -0
- package/labware/definitions/2/opentrons_tough_universal_lid/1.json +16 -1
- package/labware/definitions/2/smc_384_read_plate/1.json +4701 -0
- package/labware/definitions/2/smc_384_read_plate/2.json +5100 -0
- package/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/3.json +1141 -0
- package/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/3.json +1141 -0
- package/labware/definitions/2/usascientific_12_reservoir_22ml/3.json +237 -0
- package/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/3.json +1243 -0
- package/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +1050 -0
- package/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +1202 -0
- package/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
- package/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +1037 -0
- package/labware/definitions/3/schema3test_flex_96_tiprack_adapter/999.json +70 -0
- package/labware/definitions/3/schema3test_flex_tiprack_lid/999.json +146 -0
- package/labware/definitions/3/schema3test_tough_pcr_auto_sealing_lid/999.json +162 -0
- package/labware/definitions/3/schema3test_universal_flat_adapter/999.json +157 -0
- package/labware/fixtures/2/fixture_user_volumes_prototype.json +1137 -0
- package/labware/fixtures/2/index.ts +4 -4
- package/labware/fixtures/3/fixture_2_plate.json +28 -11
- package/labware/fixtures/3/fixture_corning_24_plate.json +51 -34
- package/labware/fixtures/3/index.ts +4 -0
- package/labware/schemas/2.json +36 -1
- package/labware/schemas/3.json +115 -25
- package/lib/command/index.d.ts +4211 -2095
- package/lib/command/schemas/12.json +65 -0
- package/lib/command/schemas/13.json +7039 -0
- package/lib/command/schemas/14.json +7254 -0
- package/lib/command/types/annotation.d.ts +1 -1
- package/lib/command/types/calibration.d.ts +5 -5
- package/lib/command/types/gantry.d.ts +5 -4
- package/lib/command/types/incidental.d.ts +1 -1
- package/lib/command/types/index.d.ts +60 -14
- package/lib/command/types/module.d.ts +75 -13
- package/lib/command/types/pipetting.d.ts +8 -3
- package/lib/command/types/robot.d.ts +71 -0
- package/lib/command/types/setup.d.ts +5 -5
- package/lib/command/types/support.d.ts +3 -2
- package/lib/command/types/timing.d.ts +1 -1
- package/lib/command/types/unsafe.d.ts +44 -3
- package/lib/deck/definitions/5/ot2_short_trash.json +37 -0
- package/lib/deck/definitions/5/ot2_standard.json +37 -0
- package/lib/deck/definitions/5/ot3_standard.json +152 -51
- package/lib/deck/index.d.ts +3 -3
- package/lib/deck/schemas/5.json +46 -1
- package/lib/errors/definitions/1/errors.json +12 -0
- package/lib/errors/index.d.ts +1 -1
- package/lib/index.mjs +380872 -297265
- package/lib/js/constants.d.ts +45 -17
- package/lib/js/deck/index.d.ts +2 -2
- package/lib/js/fixtures.d.ts +78 -3
- package/lib/js/getLabware.d.ts +3 -3
- package/lib/js/gripper.d.ts +1 -1
- package/lib/js/helpers/__tests__/getMaxPushOutVolume.test.d.ts +1 -0
- package/lib/js/helpers/__tests__/getMmFromBottom.test.d.ts +1 -0
- package/lib/js/helpers/__tests__/getStackedItemsOnStartingDeck.test.d.ts +1 -0
- package/lib/js/helpers/__tests__/labwareSchemaShims.test.d.ts +1 -0
- package/lib/js/helpers/__tests__/liquidClasses.test.d.ts +1 -0
- package/lib/js/helpers/__tests__/pairsFromArray.test.d.ts +1 -0
- package/lib/js/helpers/__tests__/vectorMath.test.d.ts +1 -0
- package/lib/js/helpers/getFixedTrashLabwareDefinition.d.ts +2 -2
- package/lib/js/helpers/getLabwareDefURI.d.ts +3 -0
- package/lib/js/helpers/getLabwareDefinitionsByURIForProtocol.d.ts +6 -0
- package/lib/js/helpers/getLabwareInfoByLiquidId.d.ts +10 -0
- package/lib/js/helpers/getLiquidsByIdForLabware.d.ts +2 -0
- package/lib/js/helpers/getLoadedLabwareDefinitionsByUri.d.ts +2 -2
- package/lib/js/helpers/getMaxPushOutVolume.d.ts +2 -0
- package/lib/js/helpers/getMmFromBottom.d.ts +2 -0
- package/lib/js/helpers/getSimplestFlexDeckConfig.d.ts +1 -1
- package/lib/js/helpers/getStackedItemsOnStartingDeck.d.ts +50 -0
- package/lib/js/helpers/getStandardDeckViewLayerBlockList.d.ts +2 -0
- package/lib/js/helpers/getTipTypeFromTipRackDefinition.d.ts +2 -2
- package/lib/js/helpers/getWellFillFromLabwareId.d.ts +4 -0
- package/lib/js/helpers/getWellNamePerMultiTip.d.ts +3 -3
- package/lib/js/helpers/getWellRangeForLiquidLabwarePair.d.ts +6 -0
- package/lib/js/helpers/getWellTotalVolume.d.ts +2 -2
- package/lib/js/helpers/index.d.ts +25 -14
- package/lib/js/helpers/labwareInference.d.ts +3 -3
- package/lib/js/helpers/liquidClasses.d.ts +10 -0
- package/lib/js/helpers/matrixMath.d.ts +3 -0
- package/lib/js/helpers/pairsFromArray.d.ts +8 -0
- package/lib/js/helpers/parseAddressableArea.d.ts +1 -1
- package/lib/js/helpers/parseProtocolCommands.d.ts +5 -5
- package/lib/js/helpers/positionMath.d.ts +127 -0
- package/lib/js/helpers/validateCustomLabwareHelper.d.ts +2 -2
- package/lib/js/helpers/vectorMath.d.ts +14 -0
- package/lib/js/helpers/wellSets.d.ts +4 -4
- package/lib/js/labware.d.ts +10 -9
- package/lib/js/labwareTools/index.d.ts +1 -1
- package/lib/js/liquidClasses.d.ts +4 -0
- package/lib/js/modules.d.ts +2 -2
- package/lib/js/pipettes.d.ts +3 -2
- package/lib/js/types.d.ts +105 -38
- package/lib/labware/definitions/2/agilent_1_reservoir_290ml/3.json +80 -0
- package/lib/labware/definitions/2/appliedbiosystemsmicroamp_384_wellplate_40ul/3.json +4737 -0
- package/lib/labware/definitions/2/axygen_96_wellplate_500ul/1.json +1036 -0
- package/lib/labware/definitions/2/axygen_96_wellplate_500ul/2.json +1159 -0
- package/lib/labware/definitions/2/biorad_384_wellplate_50ul/4.json +4748 -0
- package/lib/labware/definitions/2/biorad_96_wellplate_200ul_pcr/4.json +1187 -0
- package/lib/labware/definitions/2/corning_12_wellplate_6.9ml_flat/4.json +210 -0
- package/lib/labware/definitions/2/corning_24_wellplate_3.4ml_flat/4.json +342 -0
- package/lib/labware/definitions/2/corning_384_wellplate_112ul_flat/4.json +5116 -0
- package/lib/labware/definitions/2/corning_48_wellplate_1.6ml_flat/4.json +605 -0
- package/lib/labware/definitions/2/corning_48_wellplate_1.6ml_flat/5.json +610 -0
- package/lib/labware/definitions/2/corning_6_wellplate_16.8ml_flat/4.json +134 -0
- package/lib/labware/definitions/2/corning_96_wellplate_360ul_flat/4.json +1177 -0
- package/lib/labware/definitions/2/corning_96_wellplate_360ul_lid/1.json +111 -0
- package/lib/labware/definitions/2/ev_resin_tips_flex_96_labware/1.json +1 -1
- package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul/1.json +1105 -0
- package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul/2.json +1216 -0
- package/lib/labware/definitions/2/ibidi_96_square_well_plate_300ul_lid/1.json +110 -0
- package/lib/labware/definitions/2/nest_12_reservoir_22ml/1.json +232 -0
- package/lib/labware/definitions/2/nest_1_reservoir_290ml/3.json +80 -0
- package/lib/labware/definitions/2/nest_24_wellplate_10.4ml/1.json +386 -0
- package/lib/labware/definitions/2/nest_8_reservoir_22ml/1.json +162 -0
- package/lib/labware/definitions/2/nest_96_wellplate_100ul_pcr_full_skirt/4.json +1166 -0
- package/lib/labware/definitions/2/nest_96_wellplate_200ul_flat/4.json +1145 -0
- package/lib/labware/definitions/2/nest_96_wellplate_2ml_deep/4.json +1261 -0
- package/lib/labware/definitions/2/opentrons_24_aluminumblock_nest_0.5ml_screwcap/3.json +370 -0
- package/lib/labware/definitions/2/opentrons_24_tuberack_nest_0.5ml_screwcap/3.json +371 -0
- package/lib/labware/definitions/2/opentrons_96_aluminumblock_generic_pcr_strip_200ul/4.json +1149 -0
- package/lib/labware/definitions/2/opentrons_96_wellplate_200ul_pcr_full_skirt/4.json +1174 -0
- package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_1000ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_200ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_20ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_filtertiprack_50ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_tiprack_1000ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_tiprack_200ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_tiprack_20ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_96_tiprack_50ul/1.json +5 -0
- package/lib/labware/definitions/2/opentrons_flex_tiprack_lid/1.json +15 -9
- package/lib/labware/definitions/2/opentrons_tough_pcr_auto_sealing_lid/1.json +8 -0
- package/lib/labware/definitions/2/opentrons_tough_universal_lid/1.json +16 -1
- package/lib/labware/definitions/2/smc_384_read_plate/1.json +4701 -0
- package/lib/labware/definitions/2/smc_384_read_plate/2.json +5100 -0
- package/lib/labware/definitions/2/thermoscientificnunc_96_wellplate_1300ul/3.json +1141 -0
- package/lib/labware/definitions/2/thermoscientificnunc_96_wellplate_2000ul/3.json +1141 -0
- package/lib/labware/definitions/2/usascientific_12_reservoir_22ml/3.json +237 -0
- package/lib/labware/definitions/2/usascientific_96_wellplate_2.4ml_deep/3.json +1243 -0
- package/lib/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +1050 -0
- package/lib/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +1202 -0
- package/lib/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
- package/lib/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +1037 -0
- package/lib/labware/definitions/3/schema3test_flex_96_tiprack_adapter/999.json +70 -0
- package/lib/labware/definitions/3/schema3test_flex_tiprack_lid/999.json +146 -0
- package/lib/labware/definitions/3/schema3test_tough_pcr_auto_sealing_lid/999.json +162 -0
- package/lib/labware/definitions/3/schema3test_universal_flat_adapter/999.json +157 -0
- package/lib/labware/fixtures/2/fixture_user_volumes_prototype.json +1137 -0
- package/lib/labware/fixtures/2/index.d.ts +4 -4
- package/lib/labware/fixtures/3/fixture_2_plate.json +28 -11
- package/lib/labware/fixtures/3/fixture_corning_24_plate.json +51 -34
- package/lib/labware/fixtures/3/index.d.ts +3 -0
- package/lib/labware/schemas/2.json +36 -1
- package/lib/labware/schemas/3.json +115 -25
- package/lib/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +1957 -1406
- package/lib/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +1781 -1230
- package/lib/liquid-class/definitions/1/{water.json → water/1.json} +1567 -1082
- package/lib/liquid-class/fixtures/1/fixture_glycerol50.json +67 -48
- package/lib/liquid-class/schemas/1.json +40 -48
- package/lib/module/definitions/3/absorbanceReaderV1.json +20 -150
- package/lib/module/definitions/3/flexStackerModuleV1.json +31 -385
- package/lib/module/definitions/3/heaterShakerModuleV1.json +16 -357
- package/lib/module/definitions/3/magneticBlockV1.json +18 -148
- package/lib/module/definitions/3/magneticModuleV1.json +16 -398
- package/lib/module/definitions/3/magneticModuleV2.json +16 -398
- package/lib/module/definitions/3/temperatureModuleV1.json +16 -152
- package/lib/module/definitions/3/temperatureModuleV2.json +16 -152
- package/lib/module/definitions/3/thermocyclerModuleV1.json +16 -1339
- package/lib/module/definitions/3/thermocyclerModuleV2.json +18 -3616
- package/lib/module/schemas/3.json +111 -10
- package/lib/pipette/definitions/1/pipetteModelSpecs.json +336 -0
- package/lib/pipette/definitions/2/general/ninety_six_channel/p200/3_2.json +660 -0
- package/lib/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +4 -0
- package/lib/pipette/definitions/2/geometry/ninety_six_channel/p200/3_0.json +4 -0
- package/lib/pipette/definitions/2/geometry/ninety_six_channel/p200/3_2.json +309 -0
- package/lib/pipette/definitions/2/geometry/single_channel/p50/3_6.json +4 -0
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/1_0.json +11 -11
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_0.json +12 -12
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_1.json +28 -18
- package/lib/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_2.json +192 -0
- package/lib/pipette/definitions/2/liquid/single_channel/p50/default/3_6.json +5 -5
- package/lib/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_6.json +5 -5
- package/lib/pipette/fixtures/name/index.d.ts +1 -1
- package/lib/protocol/fixtures/index.d.ts +2 -2
- package/lib/protocol/index.d.ts +7 -7
- package/lib/protocol/types/schemaV4.d.ts +1 -1
- package/lib/protocol/types/schemaV5.d.ts +1 -1
- package/lib/protocol/types/schemaV5Addendum.d.ts +1 -1
- package/lib/protocol/types/schemaV6/command/gantry.d.ts +4 -4
- package/lib/protocol/types/schemaV6/command/index.d.ts +5 -5
- package/lib/protocol/types/schemaV6/command/module.d.ts +1 -1
- package/lib/protocol/types/schemaV6/command/pipetting.d.ts +1 -1
- package/lib/protocol/types/schemaV6/command/setup.d.ts +1 -1
- package/lib/protocol/types/schemaV6/command/timing.d.ts +1 -1
- package/lib/protocol/types/schemaV6/index.d.ts +2 -2
- package/lib/protocol/types/schemaV7/command/annotation.d.ts +1 -1
- package/lib/protocol/types/schemaV7/command/calibration.d.ts +5 -5
- package/lib/protocol/types/schemaV7/command/gantry.d.ts +4 -4
- package/lib/protocol/types/schemaV7/command/incidental.d.ts +1 -1
- package/lib/protocol/types/schemaV7/command/index.d.ts +7 -7
- package/lib/protocol/types/schemaV7/command/module.d.ts +1 -1
- package/lib/protocol/types/schemaV7/command/pipetting.d.ts +1 -1
- package/lib/protocol/types/schemaV7/command/setup.d.ts +1 -1
- package/lib/protocol/types/schemaV7/command/timing.d.ts +1 -1
- package/lib/protocol/types/schemaV7/index.d.ts +2 -2
- package/lib/protocol/types/schemaV8/index.d.ts +18 -2
- package/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +1957 -1406
- package/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +1781 -1230
- package/liquid-class/definitions/1/{water.json → water/1.json} +1567 -1082
- package/liquid-class/fixtures/1/fixture_glycerol50.json +67 -48
- package/liquid-class/schemas/1.json +40 -48
- package/module/definitions/3/absorbanceReaderV1.json +20 -150
- package/module/definitions/3/flexStackerModuleV1.json +31 -385
- package/module/definitions/3/heaterShakerModuleV1.json +16 -357
- package/module/definitions/3/magneticBlockV1.json +18 -148
- package/module/definitions/3/magneticModuleV1.json +16 -398
- package/module/definitions/3/magneticModuleV2.json +16 -398
- package/module/definitions/3/temperatureModuleV1.json +16 -152
- package/module/definitions/3/temperatureModuleV2.json +16 -152
- package/module/definitions/3/thermocyclerModuleV1.json +16 -1339
- package/module/definitions/3/thermocyclerModuleV2.json +18 -3616
- package/module/schemas/3.json +111 -10
- package/mypy.ini +22 -0
- package/package.json +1 -1
- package/pipette/definitions/1/pipetteModelSpecs.json +336 -0
- package/pipette/definitions/2/general/ninety_six_channel/p200/3_2.json +660 -0
- package/pipette/definitions/2/geometry/eight_channel/p50/3_5.json +4 -0
- package/pipette/definitions/2/geometry/ninety_six_channel/p200/3_0.json +4 -0
- package/pipette/definitions/2/geometry/ninety_six_channel/p200/3_2.json +309 -0
- package/pipette/definitions/2/geometry/single_channel/p50/3_6.json +4 -0
- package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/1_0.json +11 -11
- package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_0.json +12 -12
- package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_1.json +28 -18
- package/pipette/definitions/2/liquid/ninety_six_channel/p200/default/3_2.json +192 -0
- package/pipette/definitions/2/liquid/single_channel/p50/default/3_6.json +5 -5
- package/pipette/definitions/2/liquid/single_channel/p50/lowVolumeDefault/3_6.json +5 -5
- package/pipette/fixtures/index.ts +12 -12
- package/pipette/fixtures/name/index.ts +1 -0
- package/protocol/fixtures/index.ts +2 -3
- package/protocol/index.ts +9 -8
- package/protocol/types/schemaV4.ts +4 -4
- package/protocol/types/schemaV5.ts +1 -1
- package/protocol/types/schemaV5Addendum.ts +1 -1
- package/protocol/types/schemaV6/command/gantry.ts +4 -4
- package/protocol/types/schemaV6/command/index.ts +6 -6
- package/protocol/types/schemaV6/command/module.ts +1 -1
- package/protocol/types/schemaV6/command/pipetting.ts +2 -1
- package/protocol/types/schemaV6/command/setup.ts +2 -2
- package/protocol/types/schemaV6/command/timing.ts +1 -1
- package/protocol/types/schemaV6/index.ts +3 -3
- package/protocol/types/schemaV7/command/annotation.ts +1 -1
- package/protocol/types/schemaV7/command/calibration.ts +7 -6
- package/protocol/types/schemaV7/command/gantry.ts +5 -5
- package/protocol/types/schemaV7/command/incidental.ts +1 -1
- package/protocol/types/schemaV7/command/index.ts +14 -14
- package/protocol/types/schemaV7/command/module.ts +1 -1
- package/protocol/types/schemaV7/command/pipetting.ts +2 -1
- package/protocol/types/schemaV7/command/setup.ts +2 -2
- package/protocol/types/schemaV7/command/timing.ts +1 -1
- package/protocol/types/schemaV7/index.ts +3 -3
- package/protocol/types/schemaV8/index.ts +32 -4
- package/pyproject.toml +119 -0
- package/pytest.ini +8 -0
- package/python_tests/__init__.py +1 -0
- package/python_tests/command/test_known_schema_ids.py +9 -0
- package/python_tests/conftest.py +108 -0
- package/python_tests/deck/__init__.py +0 -0
- package/python_tests/deck/test_list_names.py +12 -0
- package/python_tests/deck/test_position.py +101 -0
- package/python_tests/deck/test_typechecks.py +23 -0
- package/python_tests/errors/__init__.py +1 -0
- package/python_tests/errors/test_error_completeness.py +19 -0
- package/python_tests/errors/test_exceptions.py +74 -0
- package/python_tests/gripper/__init__.py +0 -0
- package/python_tests/gripper/test_definition.py +30 -0
- package/python_tests/gripper/test_load.py +19 -0
- package/python_tests/labware/__init__.py +13 -0
- package/python_tests/labware/test_typechecks.py +80 -0
- package/python_tests/liquid_classes/__init__.py +0 -0
- package/python_tests/liquid_classes/test_liquid_class_values.py +59 -0
- package/python_tests/liquid_classes/test_load.py +45 -0
- package/python_tests/liquid_classes/test_validations.py +192 -0
- package/python_tests/module/__init__.py +20 -0
- package/python_tests/module/test_load.py +49 -0
- package/python_tests/module/test_typechecks.py +26 -0
- package/python_tests/pipette/__init__.py +0 -0
- package/python_tests/pipette/test_load_data.py +109 -0
- package/python_tests/pipette/test_max_flow_rates_per_volume.py +112 -0
- package/python_tests/pipette/test_mutable_configurations.py +467 -0
- package/python_tests/pipette/test_pipette_definition.py +183 -0
- package/python_tests/pipette/test_pipette_load_name_conversions.py +244 -0
- package/python_tests/pipette/test_typechecks.py +47 -0
- package/python_tests/pipette/test_validate_schema.py +198 -0
- package/python_tests/protocol/__init__.py +7 -0
- package/python_tests/protocol/test_protocol_schema_v6.py +108 -0
- package/python_tests/protocol/test_protocol_schema_v7.py +35 -0
- package/python_tests/protocol/test_protocol_schema_v8.py +17 -0
- package/python_tests/protocol/test_typechecks.py +30 -0
- package/python_tests/robot/__init__.py +0 -0
- package/python_tests/robot/test_typechecks.py +13 -0
- package/lib/js/cypressUtils.d.ts +0 -1
- package/lib/js/helpers/getVectorDifference.d.ts +0 -2
- package/lib/js/helpers/getVectorSum.d.ts +0 -2
- /package/lib/js/{helpers/__tests__/getVectorDifference.test.d.ts → __tests__/fixtures.test.d.ts} +0 -0
- /package/lib/js/helpers/__tests__/{getVectorSum.test.d.ts → getLabwareInfoByLiquidId.test.d.ts} +0 -0
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CommonCommandCreateInfo, CommonCommandRunTimeInfo } from '.'
|
|
2
2
|
import type {
|
|
3
|
-
PipetteMount,
|
|
4
3
|
GantryMount,
|
|
5
4
|
LabwareOffset,
|
|
6
|
-
|
|
5
|
+
PipetteMount,
|
|
6
|
+
Vector3D,
|
|
7
7
|
} from '../../js/types'
|
|
8
|
+
|
|
8
9
|
// TODO (sb 10/26/22): Separate out calibration commands from protocol schema in RAUT-272
|
|
9
10
|
export interface CalibratePipetteCreateCommand extends CommonCommandCreateInfo {
|
|
10
11
|
commandType: 'calibration/calibratePipette'
|
|
@@ -62,7 +63,7 @@ interface CalibratePipetteParams {
|
|
|
62
63
|
}
|
|
63
64
|
interface CalibrateGripperParams {
|
|
64
65
|
jaw: 'front' | 'rear'
|
|
65
|
-
otherJawOffset?:
|
|
66
|
+
otherJawOffset?: Vector3D
|
|
66
67
|
}
|
|
67
68
|
interface CalibrateModuleParams {
|
|
68
69
|
moduleId: string
|
|
@@ -73,12 +74,12 @@ interface CalibratePipetteResult {
|
|
|
73
74
|
pipetteOffset: LabwareOffset
|
|
74
75
|
}
|
|
75
76
|
interface CalibrateGripperResult {
|
|
76
|
-
jawOffset:
|
|
77
|
+
jawOffset: Vector3D
|
|
77
78
|
}
|
|
78
79
|
interface MoveToMaintenancePositionParams {
|
|
79
80
|
mount: GantryMount
|
|
80
81
|
maintenancePosition?: 'attachPlate' | 'attachInstrument'
|
|
81
82
|
}
|
|
82
83
|
interface CalibrateModuleResult {
|
|
83
|
-
moduleOffset:
|
|
84
|
+
moduleOffset: Vector3D
|
|
84
85
|
}
|
package/command/types/gantry.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CommonCommandCreateInfo, CommonCommandRunTimeInfo } from '.'
|
|
2
2
|
import type { AddressableAreaName } from '../../deck'
|
|
3
|
-
import type { WellLocation } from './support'
|
|
4
3
|
import type {
|
|
5
|
-
|
|
4
|
+
GantryMount,
|
|
6
5
|
MotorAxes,
|
|
7
6
|
MotorAxis,
|
|
8
|
-
|
|
7
|
+
Vector3D,
|
|
9
8
|
} from '../../js/types'
|
|
9
|
+
import type { WellLocation } from './support'
|
|
10
10
|
|
|
11
11
|
export interface MoveToSlotCreateCommand extends CommonCommandCreateInfo {
|
|
12
12
|
commandType: 'moveToSlot'
|
|
@@ -44,7 +44,7 @@ export interface MoveRelativeRunTimeCommand
|
|
|
44
44
|
extends CommonCommandRunTimeInfo,
|
|
45
45
|
MoveRelativeCreateCommand {
|
|
46
46
|
result?: {
|
|
47
|
-
position:
|
|
47
|
+
position: Vector3D
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
export interface SavePositionCreateCommand extends CommonCommandCreateInfo {
|
|
@@ -56,7 +56,7 @@ export interface SavePositionRunTimeCommand
|
|
|
56
56
|
SavePositionCreateCommand {
|
|
57
57
|
result?: {
|
|
58
58
|
positionId: string
|
|
59
|
-
position:
|
|
59
|
+
position: Vector3D
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
export interface HomeCreateCommand extends CommonCommandCreateInfo {
|
|
@@ -129,6 +129,7 @@ export interface MoveToWellParams {
|
|
|
129
129
|
wellLocation?: WellLocation
|
|
130
130
|
minimumZHeight?: number
|
|
131
131
|
forceDirect?: boolean
|
|
132
|
+
speed?: number
|
|
132
133
|
}
|
|
133
134
|
|
|
134
135
|
interface MoveToCoordinatesParams {
|
package/command/types/index.ts
CHANGED
|
@@ -1,25 +1,26 @@
|
|
|
1
1
|
import type { ErrorCodes } from '../../errors'
|
|
2
2
|
import type {
|
|
3
|
-
PipettingRunTimeCommand,
|
|
4
|
-
PipettingCreateCommand,
|
|
5
|
-
} from './pipetting'
|
|
6
|
-
import type { GantryRunTimeCommand, GantryCreateCommand } from './gantry'
|
|
7
|
-
import type { ModuleRunTimeCommand, ModuleCreateCommand } from './module'
|
|
8
|
-
import type { SetupRunTimeCommand, SetupCreateCommand } from './setup'
|
|
9
|
-
import type { TimingRunTimeCommand, TimingCreateCommand } from './timing'
|
|
10
|
-
import type {
|
|
11
|
-
IncidentalCreateCommand,
|
|
12
|
-
IncidentalRunTimeCommand,
|
|
13
|
-
} from './incidental'
|
|
14
|
-
import type {
|
|
15
|
-
AnnotationRunTimeCommand,
|
|
16
3
|
AnnotationCreateCommand,
|
|
4
|
+
AnnotationRunTimeCommand,
|
|
17
5
|
} from './annotation'
|
|
18
6
|
import type {
|
|
19
|
-
CalibrationRunTimeCommand,
|
|
20
7
|
CalibrationCreateCommand,
|
|
8
|
+
CalibrationRunTimeCommand,
|
|
21
9
|
} from './calibration'
|
|
22
|
-
import type {
|
|
10
|
+
import type { GantryCreateCommand, GantryRunTimeCommand } from './gantry'
|
|
11
|
+
import type {
|
|
12
|
+
IncidentalCreateCommand,
|
|
13
|
+
IncidentalRunTimeCommand,
|
|
14
|
+
} from './incidental'
|
|
15
|
+
import type { ModuleCreateCommand, ModuleRunTimeCommand } from './module'
|
|
16
|
+
import type {
|
|
17
|
+
PipettingCreateCommand,
|
|
18
|
+
PipettingRunTimeCommand,
|
|
19
|
+
} from './pipetting'
|
|
20
|
+
import type { RobotCreateCommand, RobotRunTimeCommand } from './robot'
|
|
21
|
+
import type { SetupCreateCommand, SetupRunTimeCommand } from './setup'
|
|
22
|
+
import type { TimingCreateCommand, TimingRunTimeCommand } from './timing'
|
|
23
|
+
import type { UnsafeCreateCommand, UnsafeRunTimeCommand } from './unsafe'
|
|
23
24
|
|
|
24
25
|
export * from './annotation'
|
|
25
26
|
export * from './calibration'
|
|
@@ -31,6 +32,7 @@ export * from './setup'
|
|
|
31
32
|
export * from './timing'
|
|
32
33
|
export * from './unsafe'
|
|
33
34
|
export * from './support'
|
|
35
|
+
export * from './robot'
|
|
34
36
|
// NOTE: these key/value pairs will only be present on commands at analysis/run time
|
|
35
37
|
// they pertain only to the actual execution status of a command on hardware, as opposed to
|
|
36
38
|
// the command's identity and parameters which can be known prior to runtime
|
|
@@ -42,11 +44,13 @@ export interface CommandNote {
|
|
|
42
44
|
}
|
|
43
45
|
export type CommandStatus = 'queued' | 'running' | 'succeeded' | 'failed'
|
|
44
46
|
export type CommandIntent = 'protocol' | 'setup' | 'fixit'
|
|
45
|
-
export interface CommonCommandRunTimeInfo
|
|
47
|
+
export interface CommonCommandRunTimeInfo<
|
|
48
|
+
DefinedErrorsT extends DefinedRunCommandError = DefinedRunCommandError
|
|
49
|
+
> {
|
|
46
50
|
key?: string
|
|
47
51
|
id: string
|
|
48
52
|
status: CommandStatus
|
|
49
|
-
error?:
|
|
53
|
+
error?: RunCommandErrorUndefined | DefinedErrorsT | null
|
|
50
54
|
createdAt: string
|
|
51
55
|
startedAt: string | null
|
|
52
56
|
completedAt: string | null
|
|
@@ -70,6 +74,7 @@ export type CreateCommand =
|
|
|
70
74
|
| AnnotationCreateCommand // annotating command execution
|
|
71
75
|
| IncidentalCreateCommand // command with only incidental effects (status bar animations)
|
|
72
76
|
| UnsafeCreateCommand // command providing capabilities that are not safe for scientific uses
|
|
77
|
+
| RobotCreateCommand // command providing underlying robot capabilities outside the normal model
|
|
73
78
|
|
|
74
79
|
// commands will be required to have a key, but will not be created with one
|
|
75
80
|
export type RunTimeCommand =
|
|
@@ -82,10 +87,19 @@ export type RunTimeCommand =
|
|
|
82
87
|
| AnnotationRunTimeCommand // annotating command execution
|
|
83
88
|
| IncidentalRunTimeCommand // command with only incidental effects (status bar animations)
|
|
84
89
|
| UnsafeRunTimeCommand // command providing capabilities that are not safe for scientific uses
|
|
90
|
+
| RobotRunTimeCommand // command providing underlying robot capabilities outside the normal model
|
|
85
91
|
|
|
86
|
-
export type RunCommandError =
|
|
87
|
-
|
|
92
|
+
export type RunCommandError = RunCommandErrorUndefined | DefinedRunCommandError
|
|
93
|
+
|
|
94
|
+
export type DefinedRunCommandError =
|
|
95
|
+
| RunCommandRobotActionError
|
|
96
|
+
| RunCommandFlexStackerError
|
|
97
|
+
|
|
98
|
+
export type RunCommandRobotActionError =
|
|
88
99
|
| RunCommandErrorOverpressure
|
|
100
|
+
| RunCommandErrorTipPhysicallyAttached
|
|
101
|
+
|
|
102
|
+
export type Failed<CommandT extends RunTimeCommand> = Omit<CommandT, 'result'>
|
|
89
103
|
|
|
90
104
|
// TODO(jh, 05-24-24): Update when some of these newer properties become more finalized.
|
|
91
105
|
export interface RunCommandErrorBase {
|
|
@@ -98,7 +112,7 @@ export interface RunCommandErrorBase {
|
|
|
98
112
|
export interface RunCommandErrorUndefined extends RunCommandErrorBase {
|
|
99
113
|
errorCode: ErrorCodes
|
|
100
114
|
errorType: string
|
|
101
|
-
isDefined:
|
|
115
|
+
isDefined: boolean
|
|
102
116
|
errorInfo?: Record<string, unknown>
|
|
103
117
|
}
|
|
104
118
|
|
|
@@ -108,3 +122,48 @@ export interface RunCommandErrorOverpressure extends RunCommandErrorBase {
|
|
|
108
122
|
isDefined: true
|
|
109
123
|
errorInfo: { retryLocation: [number, number, number] }
|
|
110
124
|
}
|
|
125
|
+
|
|
126
|
+
export interface RunCommandErrorTipPhysicallyAttached
|
|
127
|
+
extends RunCommandErrorBase {
|
|
128
|
+
errorCode: '3004'
|
|
129
|
+
errorType: 'tipPhysicallyAttached'
|
|
130
|
+
isDefined: true
|
|
131
|
+
errorInfo: { retryLocation: [number, number, number] }
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export interface RunCommandErrorFlexStackerStall extends RunCommandErrorBase {
|
|
135
|
+
errorCode: '2019'
|
|
136
|
+
errorType: 'flexStackerStallOrCollision'
|
|
137
|
+
isDefined: true
|
|
138
|
+
errorInfo: { labwareId?: string }
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
export interface RunCommandErrorFlexStackerShuttleMissing
|
|
142
|
+
extends RunCommandErrorBase {
|
|
143
|
+
errorCode: '3020'
|
|
144
|
+
errorType: 'flexStackerShuttleMissing'
|
|
145
|
+
isDefined: true
|
|
146
|
+
errorInfo: { labwareId?: string }
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
export interface RunCommandErrorFlexStackerShuttleLabware
|
|
150
|
+
extends RunCommandErrorBase {
|
|
151
|
+
errorCode: '3021'
|
|
152
|
+
errorType: 'flexStackerLabwareRetrieveFailed'
|
|
153
|
+
isDefined: true
|
|
154
|
+
errorInfo: { labwareId?: string }
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export interface RunCommandErrorFlexStackerHopperLabware
|
|
158
|
+
extends RunCommandErrorBase {
|
|
159
|
+
errorCode: '3022'
|
|
160
|
+
errorType: 'flexStackerHopperLabwareFailed'
|
|
161
|
+
isDefined: true
|
|
162
|
+
errorInfo: { labwareId?: string }
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
export type RunCommandFlexStackerError =
|
|
166
|
+
| RunCommandErrorFlexStackerStall
|
|
167
|
+
| RunCommandErrorFlexStackerShuttleMissing
|
|
168
|
+
| RunCommandErrorFlexStackerHopperLabware
|
|
169
|
+
| RunCommandErrorFlexStackerShuttleLabware
|
package/command/types/module.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type {
|
|
2
|
+
CommonCommandCreateInfo,
|
|
3
|
+
CommonCommandRunTimeInfo,
|
|
4
|
+
RunCommandFlexStackerError,
|
|
5
|
+
} from '.'
|
|
6
|
+
import type { LabwareDefinition } from '../../js'
|
|
2
7
|
import type { LabwareLocationSequence } from './setup'
|
|
3
|
-
import type { LabwareDefinition2 } from '../../js'
|
|
4
8
|
|
|
5
9
|
export type ModuleRunTimeCommand =
|
|
6
10
|
| MagneticModuleEngageMagnetRunTimeCommand
|
|
@@ -35,6 +39,7 @@ export type ModuleRunTimeCommand =
|
|
|
35
39
|
| FlexStackerStoreRunTimeCommand
|
|
36
40
|
| FlexStackerFillRunTimeCommand
|
|
37
41
|
| FlexStackerEmptyRunTimeCommand
|
|
42
|
+
| IdentifyModuleRunTimeCommand
|
|
38
43
|
|
|
39
44
|
export type ModuleCreateCommand =
|
|
40
45
|
| MagneticModuleEngageMagnetCreateCommand
|
|
@@ -69,6 +74,10 @@ export type ModuleCreateCommand =
|
|
|
69
74
|
| FlexStackerStoreCreateCommand
|
|
70
75
|
| FlexStackerFillCreateCommand
|
|
71
76
|
| FlexStackerEmptyCreateCommand
|
|
77
|
+
| FlexStackerPrepareShuttleCreateCommand
|
|
78
|
+
| FlexStackerOpenLatch
|
|
79
|
+
| FlexStackerCloseLatch
|
|
80
|
+
| IdentifyModuleCreateCommand
|
|
72
81
|
|
|
73
82
|
export interface MagneticModuleEngageMagnetCreateCommand
|
|
74
83
|
extends CommonCommandCreateInfo {
|
|
@@ -399,12 +408,34 @@ export interface FlexStackerStoredLabwareDetails {
|
|
|
399
408
|
version: number
|
|
400
409
|
}
|
|
401
410
|
|
|
411
|
+
export interface FlexStackerStoredLabwareGroup {
|
|
412
|
+
primaryLabwareId: string
|
|
413
|
+
adapterLabwareId: string | null
|
|
414
|
+
lidLabwareId: string | null
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
interface StackerStoredLabwareLocationSequences {
|
|
418
|
+
originalPrimaryLabwareLocationSequences?: LabwareLocationSequence[] | null
|
|
419
|
+
originalAdapterLabwareLocationSequences?: LabwareLocationSequence[] | null
|
|
420
|
+
originalLidLabwareLocationSequences?: LabwareLocationSequence[] | null
|
|
421
|
+
newPrimaryLabwareLocationSequences?: LabwareLocationSequence[] | null
|
|
422
|
+
newAdapterLabwareLocationSequences?: LabwareLocationSequence[] | null
|
|
423
|
+
newLidLabwareLocationSequences?: LabwareLocationSequence[] | null
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
interface StackerStoredLabwareDefinitionURIs {
|
|
427
|
+
primaryLabwareURI: string
|
|
428
|
+
adapterLabwareURI?: string | null
|
|
429
|
+
lidLabwareURI?: string | null
|
|
430
|
+
}
|
|
431
|
+
|
|
402
432
|
export interface FlexStackerSetStoredLabwareCreateCommand
|
|
403
433
|
extends CommonCommandCreateInfo {
|
|
404
434
|
commandType: 'flexStacker/setStoredLabware'
|
|
405
435
|
params: {
|
|
406
436
|
moduleId: string
|
|
407
|
-
initialCount
|
|
437
|
+
initialCount?: number | null
|
|
438
|
+
initialStoredLabware?: FlexStackerStoredLabwareGroup[] | null
|
|
408
439
|
primaryLabware: FlexStackerStoredLabwareDetails
|
|
409
440
|
lidLabware: FlexStackerStoredLabwareDetails | null
|
|
410
441
|
adapterLabware: FlexStackerStoredLabwareDetails | null
|
|
@@ -415,11 +446,12 @@ export interface FlexStackerSetStoredLabwareRunTimeCommand
|
|
|
415
446
|
extends FlexStackerSetStoredLabwareCreateCommand,
|
|
416
447
|
CommonCommandRunTimeInfo {
|
|
417
448
|
result?: {
|
|
418
|
-
primaryLabwareDefinition:
|
|
419
|
-
lidLabwareDefinition?:
|
|
420
|
-
adapterLabwareDefinition?:
|
|
449
|
+
primaryLabwareDefinition: LabwareDefinition
|
|
450
|
+
lidLabwareDefinition?: LabwareDefinition | null
|
|
451
|
+
adapterLabwareDefinition?: LabwareDefinition | null
|
|
421
452
|
count: number
|
|
422
|
-
|
|
453
|
+
storedLabware: FlexStackerStoredLabwareGroup[]
|
|
454
|
+
} & StackerStoredLabwareLocationSequences
|
|
423
455
|
}
|
|
424
456
|
|
|
425
457
|
export interface FlexStackerRetrieveCreateCommand
|
|
@@ -442,6 +474,7 @@ export interface FlexStackerFillCreateCommand extends CommonCommandCreateInfo {
|
|
|
442
474
|
strategy: 'manualWithPause' | 'logical'
|
|
443
475
|
message?: string
|
|
444
476
|
count?: number
|
|
477
|
+
labwareToStore?: FlexStackerStoredLabwareGroup[]
|
|
445
478
|
}
|
|
446
479
|
}
|
|
447
480
|
|
|
@@ -454,39 +487,69 @@ export interface FlexStackerEmptyCreateCommand extends CommonCommandCreateInfo {
|
|
|
454
487
|
count?: number
|
|
455
488
|
}
|
|
456
489
|
}
|
|
490
|
+
|
|
491
|
+
export interface FlexStackerPrepareShuttleCreateCommand
|
|
492
|
+
extends CommonCommandCreateInfo {
|
|
493
|
+
commandType: 'flexStacker/prepareShuttle'
|
|
494
|
+
params: {
|
|
495
|
+
moduleId: string
|
|
496
|
+
ignoreLatch?: boolean
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
// TODO(tz, 4-17-2025): move under unsafe domain when BE has moved as well
|
|
501
|
+
export interface FlexStackerOpenLatch extends CommonCommandCreateInfo {
|
|
502
|
+
commandType: 'flexStacker/openLatch'
|
|
503
|
+
params: {
|
|
504
|
+
moduleId: string
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
export interface FlexStackerCloseLatch extends CommonCommandCreateInfo {
|
|
509
|
+
commandType: 'flexStacker/closeLatch'
|
|
510
|
+
params: {
|
|
511
|
+
moduleId: string
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
|
|
457
515
|
interface RetrieveResultPrimary {
|
|
458
516
|
labwareId: string
|
|
459
517
|
primaryLocationSequence: LabwareLocationSequence
|
|
518
|
+
originalPrimaryLocationSequence: LabwareLocationSequence
|
|
460
519
|
primaryLabwareURI: string
|
|
461
520
|
}
|
|
462
521
|
|
|
463
522
|
interface RetrieveResultNoLid {
|
|
464
523
|
lidId?: null
|
|
465
524
|
lidLocationSequence?: null
|
|
525
|
+
originalLidLocationSequence?: null
|
|
466
526
|
lidLabwareURI?: null
|
|
467
527
|
}
|
|
468
528
|
|
|
469
529
|
interface RetrieveResultLid {
|
|
470
530
|
lidId: string
|
|
471
531
|
lidLocationSequence: LabwareLocationSequence
|
|
532
|
+
originalLidLocationSequence: LabwareLocationSequence
|
|
472
533
|
lidLabwareURI: string
|
|
473
534
|
}
|
|
474
535
|
|
|
475
536
|
interface RetrieveResultAdapter {
|
|
476
537
|
adapterId: string
|
|
477
538
|
adapterLocationSequence: LabwareLocationSequence
|
|
539
|
+
originalAdapterLocationSequence: LabwareLocationSequence
|
|
478
540
|
adapterLabwareURI: string
|
|
479
541
|
}
|
|
480
542
|
|
|
481
543
|
interface RetrieveResultNoAdapter {
|
|
482
544
|
adapterId?: null
|
|
483
545
|
adapterLocationSequence?: null
|
|
546
|
+
originalAdapterLocationSequence?: null
|
|
484
547
|
adapterLabwareURI?: null
|
|
485
548
|
}
|
|
486
549
|
|
|
487
550
|
export interface FlexStackerRetrieveRunTimeCommand
|
|
488
551
|
extends FlexStackerRetrieveCreateCommand,
|
|
489
|
-
CommonCommandRunTimeInfo {
|
|
552
|
+
CommonCommandRunTimeInfo<RunCommandFlexStackerError> {
|
|
490
553
|
result?:
|
|
491
554
|
| (RetrieveResultPrimary & RetrieveResultNoLid & RetrieveResultNoAdapter)
|
|
492
555
|
| (RetrieveResultPrimary & RetrieveResultLid & RetrieveResultNoAdapter)
|
|
@@ -496,7 +559,7 @@ export interface FlexStackerRetrieveRunTimeCommand
|
|
|
496
559
|
|
|
497
560
|
export interface FlexStackerStoreRunTimeCommand
|
|
498
561
|
extends FlexStackerStoreCreateCommand,
|
|
499
|
-
CommonCommandRunTimeInfo {
|
|
562
|
+
CommonCommandRunTimeInfo<RunCommandFlexStackerError> {
|
|
500
563
|
result?: {
|
|
501
564
|
eventualDestinationLocationSequence?: LabwareLocationSequence
|
|
502
565
|
primaryOriginLocationSequence?: LabwareLocationSequence
|
|
@@ -505,7 +568,7 @@ export interface FlexStackerStoreRunTimeCommand
|
|
|
505
568
|
adapterLabwareId?: string
|
|
506
569
|
lidOriginLocationSequence?: LabwareLocationSequence
|
|
507
570
|
lidLabwareId?: LabwareLocationSequence
|
|
508
|
-
}
|
|
571
|
+
} & StackerStoredLabwareDefinitionURIs
|
|
509
572
|
}
|
|
510
573
|
|
|
511
574
|
export interface FlexStackerFillRunTimeCommand
|
|
@@ -513,7 +576,10 @@ export interface FlexStackerFillRunTimeCommand
|
|
|
513
576
|
CommonCommandRunTimeInfo {
|
|
514
577
|
result?: {
|
|
515
578
|
count: number
|
|
516
|
-
|
|
579
|
+
storedLabware?: FlexStackerStoredLabwareGroup[] | null
|
|
580
|
+
addedLabware?: FlexStackerStoredLabwareGroup[] | null
|
|
581
|
+
} & StackerStoredLabwareLocationSequences &
|
|
582
|
+
StackerStoredLabwareDefinitionURIs
|
|
517
583
|
}
|
|
518
584
|
|
|
519
585
|
export interface FlexStackerEmptyRunTimeCommand
|
|
@@ -521,5 +587,26 @@ export interface FlexStackerEmptyRunTimeCommand
|
|
|
521
587
|
CommonCommandRunTimeInfo {
|
|
522
588
|
result?: {
|
|
523
589
|
count: number
|
|
590
|
+
storedLabware?: FlexStackerStoredLabwareGroup[] | null
|
|
591
|
+
removedLabware?: FlexStackerStoredLabwareGroup[] | null
|
|
592
|
+
} & StackerStoredLabwareLocationSequences &
|
|
593
|
+
StackerStoredLabwareDefinitionURIs
|
|
594
|
+
}
|
|
595
|
+
|
|
596
|
+
export type IdentifyColor = 'white' | 'red' | 'green' | 'blue' | 'yellow' | null
|
|
597
|
+
|
|
598
|
+
export interface IdentifyModuleCreateCommand extends CommonCommandCreateInfo {
|
|
599
|
+
commandType: 'identifyModule'
|
|
600
|
+
params: {
|
|
601
|
+
model: string
|
|
602
|
+
moduleId: string
|
|
603
|
+
start: boolean
|
|
604
|
+
color?: IdentifyColor
|
|
524
605
|
}
|
|
525
606
|
}
|
|
607
|
+
|
|
608
|
+
export interface IdentifyModuleRunTimeCommand
|
|
609
|
+
extends CommonCommandRunTimeInfo,
|
|
610
|
+
IdentifyModuleCreateCommand {
|
|
611
|
+
result?: any
|
|
612
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import type { CommonCommandCreateInfo, CommonCommandRunTimeInfo } from '.'
|
|
1
2
|
import type { AddressableAreaName } from '../../deck'
|
|
2
|
-
import type { CommonCommandRunTimeInfo, CommonCommandCreateInfo } from '.'
|
|
3
3
|
import type { DropTipWellLocation, WellLocation } from './support'
|
|
4
|
+
|
|
4
5
|
export type PipettingRunTimeCommand =
|
|
5
6
|
| AspirateInPlaceRunTimeCommand
|
|
6
7
|
| AspirateInPlaceRunTimeCommand
|
|
@@ -68,7 +69,9 @@ export interface ConfigureForVolumeRunTimeCommand
|
|
|
68
69
|
|
|
69
70
|
export type AirGapInPlaceParams = FlowRateParams &
|
|
70
71
|
PipetteIdentityParams &
|
|
71
|
-
VolumeParams
|
|
72
|
+
VolumeParams & {
|
|
73
|
+
correctionVolume?: number
|
|
74
|
+
}
|
|
72
75
|
|
|
73
76
|
export interface AirGapInPlaceCreateCommand extends CommonCommandCreateInfo {
|
|
74
77
|
commandType: 'airGapInPlace'
|
|
@@ -235,9 +238,10 @@ export interface VerifyTipPresenceRunTimeCommand
|
|
|
235
238
|
result?: any
|
|
236
239
|
}
|
|
237
240
|
|
|
241
|
+
export type LiquidProbeParams = WellLocationParam & PipetteAccessParams
|
|
238
242
|
export interface LiquidProbeCreateCommand extends CommonCommandCreateInfo {
|
|
239
243
|
commandType: 'liquidProbe'
|
|
240
|
-
params:
|
|
244
|
+
params: LiquidProbeParams
|
|
241
245
|
}
|
|
242
246
|
export interface LiquidProbeRunTimeCommand
|
|
243
247
|
extends CommonCommandRunTimeInfo,
|
|
@@ -342,12 +346,14 @@ export interface DispenseInPlaceParams {
|
|
|
342
346
|
volume: number
|
|
343
347
|
flowRate: number // µL/s
|
|
344
348
|
pushOut?: number
|
|
349
|
+
correctionVolume?: number
|
|
345
350
|
}
|
|
346
351
|
|
|
347
352
|
export interface AspirateInPlaceParams {
|
|
348
353
|
pipetteId: string
|
|
349
354
|
volume: number
|
|
350
355
|
flowRate: number // µL/s
|
|
356
|
+
correctionVolume?: number
|
|
351
357
|
}
|
|
352
358
|
interface FlowRateParams {
|
|
353
359
|
flowRate: number // µL/s
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { CommonCommandCreateInfo, CommonCommandRunTimeInfo } from '.'
|
|
2
|
+
import type { GantryMount, MotorAxis } from '../../js/types'
|
|
3
|
+
|
|
4
|
+
export type RobotRunTimeCommand =
|
|
5
|
+
| RobotMoveToRunTimeCommand
|
|
6
|
+
| RobotMoveAxesToRunTimeCommand
|
|
7
|
+
| RobotMoveAxesRelativeRunTimeCommand
|
|
8
|
+
| RobotOpenGripperJawRunTimeCommand
|
|
9
|
+
| RobotCloseGripperJawRunTimeCommand
|
|
10
|
+
export type RobotCreateCommand =
|
|
11
|
+
| RobotMoveToCreateCommand
|
|
12
|
+
| RobotMoveAxesToCreateCommand
|
|
13
|
+
| RobotMoveAxesRelativeCreateCommand
|
|
14
|
+
| RobotOpenGripperJawCreateCommand
|
|
15
|
+
| RobotCloseGripperJawCreateCommand
|
|
16
|
+
|
|
17
|
+
export type RobotMotorAxisMap = Record<MotorAxis, number>
|
|
18
|
+
export type GantryAxisMap =
|
|
19
|
+
| { x: number; y: number; leftZ: number }
|
|
20
|
+
| { x: number; y: number; rightZ: number }
|
|
21
|
+
|
|
22
|
+
export interface RobotMoveToParams {
|
|
23
|
+
mount: GantryMount
|
|
24
|
+
destination: { x: number; y: number; z: number }
|
|
25
|
+
speed?: number
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export interface RobotMoveToCreateCommand extends CommonCommandCreateInfo {
|
|
29
|
+
commandType: 'robot/moveTo'
|
|
30
|
+
params: RobotMoveToParams
|
|
31
|
+
}
|
|
32
|
+
export interface RobotMoveToRunTimeCommand
|
|
33
|
+
extends CommonCommandRunTimeInfo,
|
|
34
|
+
RobotMoveToCreateCommand {
|
|
35
|
+
result?: any
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export interface RobotMoveAxesToParams {
|
|
39
|
+
axis_map: RobotMotorAxisMap
|
|
40
|
+
critical_point?: GantryAxisMap
|
|
41
|
+
speed?: number
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface RobotMoveAxesToCreateCommand extends CommonCommandCreateInfo {
|
|
45
|
+
commandType: 'robot/moveAxesTo'
|
|
46
|
+
params: RobotMoveAxesToParams
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface RobotMoveAxesToRunTimeCommand
|
|
50
|
+
extends CommonCommandRunTimeInfo,
|
|
51
|
+
RobotMoveAxesToCreateCommand {
|
|
52
|
+
result?: {
|
|
53
|
+
position: RobotMotorAxisMap
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface RobotMoveAxesRelativeParams {
|
|
58
|
+
axis_map: RobotMotorAxisMap
|
|
59
|
+
speed?: number
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export interface RobotMoveAxesRelativeCreateCommand
|
|
63
|
+
extends CommonCommandCreateInfo {
|
|
64
|
+
commandType: 'robot/moveAxesRelative'
|
|
65
|
+
params: RobotMoveAxesRelativeParams
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface RobotMoveAxesRelativeRunTimeCommand
|
|
69
|
+
extends CommonCommandRunTimeInfo,
|
|
70
|
+
RobotMoveAxesRelativeCreateCommand {
|
|
71
|
+
result?: {
|
|
72
|
+
position: RobotMotorAxisMap
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export interface RobotOpenGripperJawCreateCommand
|
|
77
|
+
extends CommonCommandCreateInfo {
|
|
78
|
+
commandType: 'robot/openGripperJaw'
|
|
79
|
+
params: {}
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
export interface RobotOpenGripperJawRunTimeCommand
|
|
83
|
+
extends CommonCommandRunTimeInfo,
|
|
84
|
+
RobotOpenGripperJawCreateCommand {
|
|
85
|
+
result?: any
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export interface RobotCloseGripperJawCreateCommand
|
|
89
|
+
extends CommonCommandCreateInfo {
|
|
90
|
+
commandType: 'robot/closeGripperJaw'
|
|
91
|
+
params: {}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export interface RobotCloseGripperJawRunTimeCommand
|
|
95
|
+
extends CommonCommandRunTimeInfo,
|
|
96
|
+
RobotCloseGripperJawCreateCommand {
|
|
97
|
+
result?: any
|
|
98
|
+
}
|
package/command/types/setup.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type {
|
|
2
2
|
AddressableAreaName,
|
|
3
|
-
|
|
3
|
+
AspirateProperties,
|
|
4
4
|
CommonCommandCreateInfo,
|
|
5
|
-
|
|
5
|
+
CommonCommandRunTimeInfo,
|
|
6
|
+
LabwareDefinition,
|
|
6
7
|
LabwareOffset,
|
|
7
|
-
PipetteName,
|
|
8
8
|
ModuleModel,
|
|
9
|
-
AspirateProperties,
|
|
10
9
|
MultiDispenseProperties,
|
|
10
|
+
PipetteName,
|
|
11
11
|
SingleDispenseProperties,
|
|
12
12
|
} from '../../js'
|
|
13
13
|
|
|
@@ -222,7 +222,7 @@ interface LoadLabwareParams {
|
|
|
222
222
|
}
|
|
223
223
|
interface LoadLabwareResult {
|
|
224
224
|
labwareId: string
|
|
225
|
-
definition:
|
|
225
|
+
definition: LabwareDefinition
|
|
226
226
|
// todo(mm, 2024-08-19): This does not match the server-returned offsetId field.
|
|
227
227
|
// Confirm nothing client-side is trying to use this, then replace it with offsetId.
|
|
228
228
|
offset: LabwareOffset
|
|
@@ -318,8 +318,8 @@ interface LoadLidStackParams {
|
|
|
318
318
|
interface LoadLidStackResult {
|
|
319
319
|
stackLabwareId: string
|
|
320
320
|
labwareIds: string[]
|
|
321
|
-
definition?:
|
|
322
|
-
lidStackDefinition:
|
|
321
|
+
definition?: LabwareDefinition
|
|
322
|
+
lidStackDefinition: LabwareDefinition
|
|
323
323
|
location: LabwareLocation
|
|
324
324
|
stackLocationSequence?: LabwareLocationSequence
|
|
325
325
|
locationSequences?: LabwareLocationSequence[]
|
|
@@ -334,6 +334,6 @@ export interface LoadLidParams {
|
|
|
334
334
|
|
|
335
335
|
interface LoadLidResult {
|
|
336
336
|
labwareId: string
|
|
337
|
-
definition:
|
|
337
|
+
definition: LabwareDefinition
|
|
338
338
|
locationSequence?: LabwareLocationSequence
|
|
339
339
|
}
|
package/command/types/support.ts
CHANGED
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
type
|
|
2
|
-
|
|
1
|
+
import type {
|
|
2
|
+
WELL_ORIGIN_BOTTOM,
|
|
3
|
+
WELL_ORIGIN_CENTER,
|
|
4
|
+
WELL_ORIGIN_MENISCUS,
|
|
5
|
+
WELL_ORIGIN_TOP,
|
|
6
|
+
} from '../../js/constants'
|
|
7
|
+
|
|
8
|
+
type BaseWellOrigin =
|
|
9
|
+
| typeof WELL_ORIGIN_TOP
|
|
10
|
+
| typeof WELL_ORIGIN_BOTTOM
|
|
11
|
+
| typeof WELL_ORIGIN_CENTER
|
|
12
|
+
|
|
13
|
+
export type WellOrigin = BaseWellOrigin | typeof WELL_ORIGIN_MENISCUS
|
|
3
14
|
export interface WellOffset {
|
|
4
15
|
x?: number
|
|
5
16
|
y?: number
|
|
6
17
|
z?: number
|
|
7
18
|
}
|
|
19
|
+
// TODO(jh, 06-27-25): Origin and offset should be required. Mark them as so and fix all the type errors.
|
|
8
20
|
export interface WellLocation {
|
|
9
21
|
origin?: WellOrigin
|
|
10
22
|
offset?: WellOffset
|
package/command/types/timing.ts
CHANGED