23 lines
457 B
JavaScript
23 lines
457 B
JavaScript
import createChainableTypeChecker from './utils/createChainableTypeChecker';
|
|
|
|
export default function all(...validators) {
|
|
function allPropTypes(...args) {
|
|
let error = null;
|
|
|
|
validators.forEach(validator => {
|
|
if (error != null) {
|
|
return;
|
|
}
|
|
|
|
const result = validator(...args);
|
|
if (result != null) {
|
|
error = result;
|
|
}
|
|
});
|
|
|
|
return error;
|
|
}
|
|
|
|
return createChainableTypeChecker(allPropTypes);
|
|
}
|