jsx-eslint/eslint-plugin-react

Object composition in propTypes causes 'default-props-match-prop-types' error

Open

#1,674 opened on Feb 2, 2018

View on GitHub
 (13 comments) (15 reactions) (0 assignees)JavaScript (8,630 stars) (2,797 forks)batch import
bugenhancementhelp wanted

Description

Consider the following functioning example:

elementEventCardBaseShape = {
  calendarLink: mediaFileShape,
  mapLink: PropTypes.string,
  startDate: PropTypes.string,
  locationName: PropTypes.string,
  street: PropTypes.string,
  city: PropTypes.string,
  region: PropTypes.string
};

ElementEventCard.propTypes = {
  ...elementEventCardBaseShape,
  lang: PropTypes.string
};

ElementEventCard.defaultProps = {
  lang: 'en',
  calendarLink: {},
  mapLink: '',
  startDate: '',
  locationName: '',
  street: '',
  city: '',
  region: ''
};

Where all but 'lang' throw an error for said prop supposedly having no matching propType. Am I missing something?

Contributor guide