diff --git a/app/src/pages/ProtocolDetails/Hardware.tsx b/app/src/pages/ProtocolDetails/Hardware.tsx index c59c24e7118..a481fd9dfa8 100644 --- a/app/src/pages/ProtocolDetails/Hardware.tsx +++ b/app/src/pages/ProtocolDetails/Hardware.tsx @@ -19,6 +19,8 @@ import { getModuleType, getFixtureDisplayName, GRIPPER_V1_2, + MAGNETIC_BLOCK_FIXTURES, + MAGNETIC_BLOCK_TYPE, } from '@opentrons/shared-data' import { @@ -119,6 +121,16 @@ function HardwareItem({ ) } + const isMagneticBlockFixture = + hardware.hardwareType === 'fixture' && + hardware.cutoutFixtureId != null && + MAGNETIC_BLOCK_FIXTURES.includes(hardware.cutoutFixtureId) + let iconModuleType = null + if (hardware.hardwareType === 'module') { + iconModuleType = getModuleType(hardware.moduleModel) + } else if (isMagneticBlockFixture) { + iconModuleType = MAGNETIC_BLOCK_TYPE + } return ( @@ -126,19 +138,16 @@ function HardwareItem({ - {hardware.hardwareType === 'module' && ( + {iconModuleType != null ? ( - + - )} + ) : null} {hardwareName} diff --git a/app/src/pages/Protocols/hooks/index.ts b/app/src/pages/Protocols/hooks/index.ts index a4d4923dec7..e28f80e805c 100644 --- a/app/src/pages/Protocols/hooks/index.ts +++ b/app/src/pages/Protocols/hooks/index.ts @@ -14,8 +14,8 @@ import { getCutoutFixturesForModuleModel, FLEX_MODULE_ADDRESSABLE_AREAS, getModuleType, - MAGNETIC_MODULE_TYPE, FLEX_USB_MODULE_ADDRESSABLE_AREAS, + MAGNETIC_BLOCK_TYPE, } from '@opentrons/shared-data' import { getLabwareSetupItemGroups } from '../utils' import { getProtocolUsesGripper } from '../../../organisms/ProtocolSetupInstruments/utils' @@ -111,7 +111,8 @@ export const useRequiredProtocolHardwareFromAnalysis = ( : [] const requiredModules: ProtocolModule[] = analysis.modules - .filter(m => getModuleType(m.model) !== MAGNETIC_MODULE_TYPE) + // remove magnetic blocks, they're handled by required fixtures + .filter(m => getModuleType(m.model) !== MAGNETIC_BLOCK_TYPE) .map(({ location, model }) => { const cutoutIdForSlotName = getCutoutIdForSlotName( location.slotName,