mdc-react
Version:
Material Components for the web implemented in React
39 lines (32 loc) • 883 B
JSX
import { forwardRef } from 'react';
import PropTypes from 'prop-types';
import classnames from 'classnames';
import { cssClasses } from './constants';
const Badge = forwardRef(({
value,
inset = false,
transparent = false,
element: Element = 'span',
className,
...props
}, ref) => {
const classNames = classnames(cssClasses.ROOT, {
[cssClasses.INSET]: inset,
[cssClasses.TRANSPARENT]: transparent
}, className);
return (
<Element
ref={ref}
className={classNames}
data-badge={value}
{...props}
/>
);
});
Badge.displayName = 'MDCBadge';
Badge.propTypes = {
value: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
inset: PropTypes.bool,
transparent: PropTypes.bool
};
export default Badge;