title: How to define alternative required property in a React component PropTypes?
body: <p>This is the use case: A component <code>TableGroup</code> should require a user to specify <code>data</code> property which is an array of objects to be rendered in the table <strong>or</strong> <code>requestDataUrl</code> property from where the component will get that array of objects. In short, one of these two properties is required but not both. How could I achieve that in the following <code>component.propTypes</code> object?</p>
  
  <pre><code>TableGroup.propTypes = {
    fieldNames: React.PropTypes.array.isRequired,
    dataFields: React.PropTypes.array.isRequired,
    uniqueField: React.PropTypes.string.isRequired,
    data: React.PropTypes.array,
    requestUrlSource: http://someurl/api/resource
  }
  </code></pre>