@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.
- 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 +3 -1
- package/command/schemas/13.json +147 -315
- package/command/schemas/14.json +7254 -0
- package/command/types/index.ts +15 -4
- package/command/types/module.ts +24 -4
- package/command/types/setup.ts +5 -5
- package/command/types/support.ts +1 -0
- 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/schemas/5.json +46 -1
- 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_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_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_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 +8 -8
- 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_96_wellplate_2.4ml_deep/3.json +1243 -0
- package/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +5 -2
- package/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +15 -2
- package/labware/definitions/3/schema3test_aluminum_flat_bottom_plate/999.json +70 -0
- package/labware/definitions/3/schema3test_flex_96_tiprack_200ul/999.json +5 -9
- 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/3/fixture_2_plate.json +5 -2
- package/labware/fixtures/3/fixture_corning_24_plate.json +6 -3
- package/labware/fixtures/3/index.ts +4 -0
- package/labware/schemas/2.json +36 -1
- package/labware/schemas/3.json +57 -5
- package/lib/command/index.d.ts +39 -1
- package/lib/command/schemas/13.json +147 -315
- package/lib/command/schemas/14.json +7254 -0
- package/lib/command/types/index.d.ts +11 -3
- package/lib/command/types/module.d.ts +19 -6
- package/lib/command/types/setup.d.ts +5 -5
- 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/schemas/5.json +46 -1
- package/lib/index.mjs +240842 -193770
- package/lib/js/constants.d.ts +30 -9
- package/lib/js/fixtures.d.ts +77 -2
- package/lib/js/getLabware.d.ts +3 -3
- package/lib/js/helpers/__tests__/getMaxPushOutVolume.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__/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/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/getWellTotalVolume.d.ts +2 -2
- package/lib/js/helpers/index.d.ts +22 -14
- package/lib/js/helpers/labwareInference.d.ts +3 -3
- package/lib/js/helpers/liquidClasses.d.ts +4 -2
- package/lib/js/helpers/matrixMath.d.ts +3 -0
- package/lib/js/helpers/pairsFromArray.d.ts +8 -0
- package/lib/js/helpers/parseProtocolCommands.d.ts +4 -4
- 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 +4 -3
- package/lib/js/liquidClasses.d.ts +4 -0
- package/lib/js/modules.d.ts +1 -1
- package/lib/js/types.d.ts +62 -13
- 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_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_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_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 +8 -8
- 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_96_wellplate_2.4ml_deep/3.json +1243 -0
- package/lib/labware/definitions/3/schema3test_96_well_aluminum_block/999.json +5 -2
- package/lib/labware/definitions/3/schema3test_96_wellplate_200ul_pcr_full_skirt/999.json +15 -2
- 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 +5 -9
- 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/3/fixture_2_plate.json +5 -2
- package/lib/labware/fixtures/3/fixture_corning_24_plate.json +6 -3
- package/lib/labware/fixtures/3/index.d.ts +3 -0
- package/lib/labware/schemas/2.json +36 -1
- package/lib/labware/schemas/3.json +57 -5
- package/lib/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +545 -390
- package/lib/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +370 -215
- package/lib/liquid-class/definitions/1/{water.json → water/1.json} +151 -62
- package/lib/liquid-class/fixtures/1/fixture_glycerol50.json +1 -0
- package/lib/liquid-class/schemas/1.json +6 -0
- package/lib/module/definitions/3/absorbanceReaderV1.json +20 -151
- package/lib/module/definitions/3/flexStackerModuleV1.json +29 -389
- package/lib/module/definitions/3/heaterShakerModuleV1.json +16 -357
- package/lib/module/definitions/3/magneticBlockV1.json +18 -149
- package/lib/module/definitions/3/magneticModuleV1.json +16 -399
- package/lib/module/definitions/3/magneticModuleV2.json +16 -399
- package/lib/module/definitions/3/temperatureModuleV1.json +16 -153
- package/lib/module/definitions/3/temperatureModuleV2.json +16 -153
- package/lib/module/definitions/3/thermocyclerModuleV1.json +16 -1340
- package/lib/module/definitions/3/thermocyclerModuleV2.json +18 -3617
- package/lib/module/schemas/3.json +109 -12
- 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/ninety_six_channel/p200/3_2.json +309 -0
- 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/protocol/types/schemaV8/index.d.ts +17 -1
- package/liquid-class/definitions/1/{ethanol_80.json → ethanol_80/1.json} +545 -390
- package/liquid-class/definitions/1/{glycerol_50.json → glycerol_50/1.json} +370 -215
- package/liquid-class/definitions/1/{water.json → water/1.json} +151 -62
- package/liquid-class/fixtures/1/fixture_glycerol50.json +1 -0
- package/liquid-class/schemas/1.json +6 -0
- package/module/definitions/3/absorbanceReaderV1.json +20 -151
- package/module/definitions/3/flexStackerModuleV1.json +29 -389
- package/module/definitions/3/heaterShakerModuleV1.json +16 -357
- package/module/definitions/3/magneticBlockV1.json +18 -149
- package/module/definitions/3/magneticModuleV1.json +16 -399
- package/module/definitions/3/magneticModuleV2.json +16 -399
- package/module/definitions/3/temperatureModuleV1.json +16 -153
- package/module/definitions/3/temperatureModuleV2.json +16 -153
- package/module/definitions/3/thermocyclerModuleV1.json +16 -1340
- package/module/definitions/3/thermocyclerModuleV2.json +18 -3617
- package/module/schemas/3.json +109 -12
- 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/ninety_six_channel/p200/3_2.json +309 -0
- 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/protocol/types/schemaV8/index.ts +29 -1
- 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
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
"schemaVersion": 3,
|
|
18
18
|
"version": 3,
|
|
19
|
-
"namespace": "
|
|
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
|
-
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"features": {
|
|
41
|
+
"slotFootprintAsChild": {
|
|
42
|
+
"z": 0,
|
|
40
43
|
"backLeft": {
|
|
41
44
|
"x": 0,
|
|
42
45
|
"y": 0
|
|
@@ -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
|
-
"
|
|
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"
|
|
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
|
-
"
|
|
627
|
-
"description": "The
|
|
628
|
-
"
|
|
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
|
},
|