import PropTypes from 'prop-types'
import React from 'react'
import {
Button,
DataList,
DataListAction,
DataListCell,
DataListItem,
DataListItemCells,
DataListItemRow,
DescriptionList,
DescriptionListDescription,
DescriptionListGroup,
DescriptionListTerm,
EmptyState,
EmptyStateBody,
EmptyStateIcon,
Popover,
Title,
} from '@patternfly/react-core'
import { CubesIcon, InfoIcon, TrashIcon } from '@patternfly/react-icons'
import { ProcessingUnit, StorageUnit } from '../../../../shapes'
import UnitType from './UnitType'
function UnitInfo({ unit, unitType }) {
if (unitType === 'cpus' || unitType === 'gpus') {
return (
Clock Frequency
{unit.clockRateMhz} MHz
Number of Cores
{unit.numberOfCores}
Energy Consumption
{unit.energyConsumptionW} W
)
}
return (
Speed
{unit.speedMbPerS} Mb/s
Capacity
{unit.sizeMb} MB
Energy Consumption
{unit.energyConsumptionW} W
)
}
UnitInfo.propTypes = {
unitType: UnitType.isRequired,
unit: PropTypes.oneOfType([ProcessingUnit, StorageUnit]).isRequired,
}
function UnitListComponent({ unitType, units, onDelete }) {
if (units.length === 0) {
return (
No units found
You have not configured any units yet. Add some with the menu above!
)
}
return (
)
}
UnitListComponent.propTypes = {
unitType: UnitType.isRequired,
units: PropTypes.arrayOf(PropTypes.oneOfType([ProcessingUnit, StorageUnit])).isRequired,
onDelete: PropTypes.func,
}
export default UnitListComponent