import React from 'react';
import PropTypes from 'prop-types';
import styled from 'styled-components';
import {
Button,
CheckmarkIcon,
Text,
} from '@bufferapp/components';
import {
dropdownListItem,
} from '../../style.less';
const MetricContainer = styled.span`
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
position: relative;
width: 100%;
padding: 0.5rem 0.75rem;
`;
const MetricText = styled.span`
display: inline-block;
margin: 0 0 0 0.2rem;
`;
const MetricIcon = styled.span`
display: inline-block;
width: 1rem;
height: 1rem;
margin: 0 0.25rem 0 0;
`;
const DropdownItem = ({ metric, handleClick, selected }) => (
<li className={dropdownListItem}>
<Button noStyle onClick={handleClick} >
<MetricContainer>
<MetricText>
<Text size="small" color="outerSpace">{metric.label}</Text>
</MetricText>
<MetricIcon>
{selected && <CheckmarkIcon color={'curiousBlue'} />}
</MetricIcon>
</MetricContainer>
</Button>
</li>
);
DropdownItem.propTypes = {
metric: PropTypes.shape({
key: PropTypes.string.isRequired,
label: PropTypes.string.isRequired,
}).isRequired,
handleClick: PropTypes.func.isRequired,
selected: PropTypes.bool,
};
DropdownItem.defaultProps = {
selected: false,
};
export default DropdownItem;
|