title: Warning: Received true for a non-boolean attribute primary
body: <p>I have made custom component for button as below</p>
  
  <pre><code>import React, { Component } from 'react';
  import PropTypes from 'prop-types';
  import classNames from 'classnames';
  
  export default class Button extends Component {
    static propTypes = {
      primary: PropTypes.bool,
      block: PropTypes.bool,
      onClick: PropTypes.func.isRequired,
      children: PropTypes.string.isRequired,
      type: PropTypes.oneOf(['button', 'reset', 'submit', null]),
    };
  
    render() {
      const { onClick, type, children, primary, block } = this.props;
      const classes = ['common-button'];
  
      if (primary) {
        classes.push('primary');
      }
  
      if (block) {
        classes.push('block');
      }
  
      return (
        &lt;button className={classNames(classes)} onClick={onClick} type={type} {...this.props}&gt;
          {children}
        &lt;/button&gt;
      );
    }
  }
  </code></pre>
  
  <p>And I am using this component as:</p>
  
  <p><code>&lt;Button primary onClick={() =&gt; {}}&gt;</code></p>
  
  <p>After running the code I am getting a below console warning:
  Warning: Received <code>true</code> for a non-boolean attribute <code>primary</code>.</p>