fleet/frontend/components/forms/fields/SelectTargetsDropdown/TargetOption/TargetIcon.jsx

33 lines
791 B
React
Raw Normal View History

import React from "react";
import classnames from "classnames";
2021-06-07 01:56:30 +00:00
import FleetIcon from "components/icons/FleetIcon";
import targetInterface from "interfaces/target";
const baseClass = "target-option";
const TargetIcon = ({ target }) => {
const iconName = () => {
const { name, platform, target_type: targetType } = target;
if (targetType === "labels") {
return name === "All Hosts" ? "all-hosts" : "label";
}
return platform === "darwin" ? "apple" : platform;
};
2017-02-24 19:11:33 +00:00
const { status } = target;
const targetClasses = classnames(
`${baseClass}__icon`,
`${baseClass}__icon--${status}`
);
2017-02-24 19:11:33 +00:00
2021-06-07 01:56:30 +00:00
return <FleetIcon name={iconName()} className={targetClasses} />;
};
TargetIcon.propTypes = { target: targetInterface.isRequired };
export default TargetIcon;