function* explainInvalid(values, predicates, via) { if (values.length !== predicates.length) return; const pairs = _.zip(predicates, values); const isInvalid = _.negate(_.spread(isValid)); const index = _.findIndex(pairs, isInvalid); if (index !== -1) { const [spec, val] = pairs[index]; yield* firstProblem(spec, val, {path: [index], via, _in: [index]}); } }
return BluebirdPromise.all(modelPromisesArray) .then(function(list) { return _.filter(list, _.negate(_.isUndefined)); });
help: '', context: false, isAvailable: _.negate(_.noop), options: {} };
result[key] = _.flow([ fp.map((a) => recursionFn(a, subpaths)), fp.filter(_.negate(_.isEmpty)), ])(value); } else if (_.isObject(value)) {