UNPKG

eris-keys

Version:

a JavaScript client library for eris-keys

27 lines (24 loc) 694 B
var _curry3 = require('./internal/_curry3'); var path = require('./path'); /** * Returns `true` if the specified object property at given path satisfies the * given predicate; `false` otherwise. * * @func * @memberOf R * @since v0.19.0 * @category Logic * @typedefn Idx = String | Int * @sig (a -> Boolean) -> [Idx] -> {a} -> Boolean * @param {Function} pred * @param {Array} propPath * @param {*} obj * @return {Boolean} * @see R.propSatisfies, R.path * @example * * R.pathSatisfies(y => y > 0, ['x', 'y'], {x: {y: 2}}); //=> true */ module.exports = _curry3(function pathSatisfies(pred, propPath, obj) { return propPath.length > 0 && pred(path(propPath, obj)); });