text: "use strict";
  
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
  
  exports.__esModule = true;
  exports.default = void 0;
  
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
  
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
  
  var _react = _interopRequireDefault(require("react"));
  
  var _propTypes = _interopRequireDefault(require("prop-types"));
  
  var _classnames = _interopRequireDefault(require("classnames"));
  
  var _utils = require("./utils");
  
  var propTypes = {
    children: _propTypes.default.node,
    row: _propTypes.default.bool,
    check: _propTypes.default.bool,
    inline: _propTypes.default.bool,
    disabled: _propTypes.default.bool,
    tag: _utils.tagPropType,
    className: _propTypes.default.string,
    cssModule: _propTypes.default.object
  };
  var defaultProps = {
    tag: 'div'
  };
  
  var FormGroup = function FormGroup(props) {
    var className = props.className,
        cssModule = props.cssModule,
        row = props.row,
        disabled = props.disabled,
        check = props.check,
        inline = props.inline,
        Tag = props.tag,
        attributes = (0, _objectWithoutPropertiesLoose2.default)(props, ["className", "cssModule", "row", "disabled", "check", "inline", "tag"]);
    var classes = (0, _utils.mapToCssModules)((0, _classnames.default)(className, row ? 'row' : false, check ? 'form-check' : 'form-group', check && inline ? 'form-check-inline' : false, check && disabled ? 'disabled' : false), cssModule);
  
    if (Tag === 'fieldset') {
      attributes.disabled = disabled;
    }
  
    return _react.default.createElement(Tag, (0, _extends2.default)({}, attributes, {
      className: classes
    }));
  };
  
  FormGroup.propTypes = propTypes;
  FormGroup.defaultProps = defaultProps;
  var _default = FormGroup;
  exports.default = _default;