(typeChecker)
| 12629 | } |
| 12630 | |
| 12631 | function createArrayOfTypeChecker(typeChecker) { |
| 12632 | function validate(props, propName, componentName, location, propFullName) { |
| 12633 | if (typeof typeChecker !== 'function') { |
| 12634 | return new Error('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.'); |
| 12635 | } |
| 12636 | var propValue = props[propName]; |
| 12637 | if (!Array.isArray(propValue)) { |
| 12638 | var locationName = ReactPropTypeLocationNames[location]; |
| 12639 | var propType = getPropType(propValue); |
| 12640 | return new Error('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.')); |
| 12641 | } |
| 12642 | for (var i = 0; i < propValue.length; i++) { |
| 12643 | var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']'); |
| 12644 | if (error instanceof Error) { |
| 12645 | return error; |
| 12646 | } |
| 12647 | } |
| 12648 | return null; |
| 12649 | } |
| 12650 | return createChainableTypeChecker(validate); |
| 12651 | } |
| 12652 | |
| 12653 | function createElementTypeChecker() { |
| 12654 | function validate(props, propName, componentName, location, propFullName) { |
nothing calls this directly
no test coverage detected
searching dependent graphs…