UNPKG

chayns-components

Version:

A set of beautiful React components for developing chayns® applications.

52 lines (51 loc) 1.4 kB
import PropTypes from 'prop-types'; import React, { PureComponent } from 'react'; import Icon from '../../react-chayns-icon/component/Icon'; export default class Tag extends PureComponent { constructor() { super(...arguments); this.handleDelete = ev => { const { value, onDelete } = this.props; if (onDelete) { onDelete(value, ev); } }; } render() { const { children, selected, disableRemove } = this.props; return /*#__PURE__*/React.createElement("div", { className: 'cc__tag' + (selected ? " cc__tag--selected" : ""), style: disableRemove ? { paddingRight: 10 } : undefined }, /*#__PURE__*/React.createElement("div", { className: "cc__tag__children" }, children), !disableRemove && /*#__PURE__*/React.createElement(Icon, { className: "icon", icon: "fa fa-times", onClick: this.handleDelete })); } } Tag.propTypes = { // eslint-disable-next-line react/forbid-prop-types value: PropTypes.object.isRequired, children: PropTypes.oneOfType([PropTypes.node, PropTypes.arrayOf(PropTypes.node)]).isRequired, onDelete: PropTypes.func, selected: PropTypes.bool, disableRemove: PropTypes.bool }; Tag.defaultProps = { onDelete: null, selected: false, disableRemove: false }; Tag.displayName = 'Tag'; //# sourceMappingURL=Tag.js.map