# Prevent casing typos when declaring static propTypes, contextType and defaultProps

Ensure no casing typos were made declaring static class properties

## Rule Details

This rule checks whether the declared static class properties related to React components
do not contain any typos. It currently makes sure that the following class properties have
no casing typos:

* propTypes
* contextTypes
* defaultProps

The following patterns are considered warnings:

```js
class MyComponent extends React.Component {
  static PropTypes = {}
}

class MyComponent extends React.Component {
  static proptypes = {}
}

class MyComponent extends React.Component {
  static ContextTypes = {}
}

class MyComponent extends React.Component {
  static contexttypes = {}
}

class MyComponent extends React.Component {
  static DefaultProps = {}
}

class MyComponent extends React.Component {
  static defaultprops = {}
}
```

The following patterns are not considered warnings:

```js
class MyComponent extends React.Component {
  static propTypes = {}
}

class MyComponent extends React.Component {
  static contextTypes = {}
}

class MyComponent extends React.Component {
  static defaultProps = {}
}
```

# Prevent casing typos when declaring static class properties (react/no-static-typos)

Ensure no casing typos were made declaring static class properties

## Rule Details

This rule checks whether the declared static class properties related to React components
do not contain any typos. It currently makes sure that the following class properties have
no casing typos:

* propTypes
* contextTypes
* defaultProps

The following patterns are considered warnings:

```js
class MyComponent extends React.Component {
  static PropTypes = {}
}

class MyComponent extends React.Component {
  static proptypes = {}
}

class MyComponent extends React.Component {
  static ContextTypes = {}
}

class MyComponent extends React.Component {
  static contexttypes = {}
}

class MyComponent extends React.Component {
  static DefaultProps = {}
}

class MyComponent extends React.Component {
  static defaultprops = {}
}
```

The following patterns are not considered warnings:

```js
class MyComponent extends React.Component {
  static propTypes = {}
}

class MyComponent extends React.Component {
  static contextTypes = {}
}

class MyComponent extends React.Component {
  static defaultProps = {}
}
```

Update the title for the readme for the file
Update the title for the readme for the file

Added the rule name

Decided to not mention all the possible properties that we check for in the title, as adding childContextTypes in the
next commit may end up making this title too long.
