UNPKG

@nomios/web-uikit

Version:
30 lines (28 loc) 759 B
import React, { cloneElement } from 'react'; import PropTypes from 'prop-types'; import classNames from 'classnames'; import styles from './TypeGroup.css'; const TypeGroup = ({ children, className, name, onSelect, selectedId }) => { const clonedChildren = React.Children.map(children, child => cloneElement(child, { groupName: name, onSelect, selected: child.props.id === selectedId })); return React.createElement("div", { className: classNames(styles.group, className) }, clonedChildren); }; TypeGroup.propTypes = { children: PropTypes.node.isRequired, onSelect: PropTypes.func.isRequired, name: PropTypes.string.isRequired, selectedId: PropTypes.string, className: PropTypes.string }; export default TypeGroup;