| var _curry2 = |
| /*#__PURE__*/ |
| require("./internal/_curry2"); |
| |
| var equals = |
| /*#__PURE__*/ |
| require("./equals"); |
| |
| var map = |
| /*#__PURE__*/ |
| require("./map"); |
| |
| var where = |
| /*#__PURE__*/ |
| require("./where"); |
| /** |
| * Takes a spec object and a test object; returns true if the test satisfies |
| * the spec, false otherwise. An object satisfies the spec if, for each of the |
| * spec's own properties, accessing that property of the object gives the same |
| * value (in [`R.equals`](#equals) terms) as accessing that property of the |
| * spec. |
| * |
| * `whereEq` is a specialization of [`where`](#where). |
| * |
| * @func |
| * @memberOf R |
| * @since v0.14.0 |
| * @category Object |
| * @sig {String: *} -> {String: *} -> Boolean |
| * @param {Object} spec |
| * @param {Object} testObj |
| * @return {Boolean} |
| * @see R.propEq, R.where |
| * @example |
| * |
| * // pred :: Object -> Boolean |
| * const pred = R.whereEq({a: 1, b: 2}); |
| * |
| * pred({a: 1}); //=> false |
| * pred({a: 1, b: 2}); //=> true |
| * pred({a: 1, b: 2, c: 3}); //=> true |
| * pred({a: 1, b: 1}); //=> false |
| */ |
| |
| |
| var whereEq = |
| /*#__PURE__*/ |
| _curry2(function whereEq(spec, testObj) { |
| return where(map(equals, spec), testObj); |
| }); |
| |
| module.exports = whereEq; |