UNPKG

1.25 kBJavaScriptView Raw
1import _extends from "@babel/runtime/helpers/esm/extends";
2import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3import React from 'react';
4import PropTypes from 'prop-types';
5import classNames from 'classnames';
6import { mapToCssModules, tagPropType } from './utils';
7var propTypes = {
8 tag: tagPropType,
9 'aria-label': PropTypes.string,
10 className: PropTypes.string,
11 cssModule: PropTypes.object,
12 role: PropTypes.string,
13 size: PropTypes.string,
14 vertical: PropTypes.bool
15};
16var defaultProps = {
17 tag: 'div',
18 role: 'group'
19};
20
21var ButtonGroup = function ButtonGroup(props) {
22 var className = props.className,
23 cssModule = props.cssModule,
24 size = props.size,
25 vertical = props.vertical,
26 Tag = props.tag,
27 attributes = _objectWithoutPropertiesLoose(props, ["className", "cssModule", "size", "vertical", "tag"]);
28
29 var classes = mapToCssModules(classNames(className, size ? 'btn-group-' + size : false, vertical ? 'btn-group-vertical' : 'btn-group'), cssModule);
30 return React.createElement(Tag, _extends({}, attributes, {
31 className: classes
32 }));
33};
34
35ButtonGroup.propTypes = propTypes;
36ButtonGroup.defaultProps = defaultProps;
37export default ButtonGroup;
\No newline at end of file