Make 'hidden' take a function as well as a boolean

This commit is contained in:
SachaG 2018-03-08 11:30:45 +09:00
parent 08016947db
commit 593330370c

View file

@ -274,7 +274,10 @@ class Form extends Component {
relevantFields = _.intersection(relevantFields, fields);
} else {
// else if fields is not specified, remove all hidden fields
relevantFields = _.reject(relevantFields, fieldName => schema[fieldName].hidden);
relevantFields = _.reject(relevantFields, fieldName => {
const hidden = schema[fieldName].hidden;
return typeof hidden === 'function' ? hidden(this.props) : hidden;
});
}
// if "hideFields" prop is specified, remove its fields