UNPKG

foop

Version:

interfaces that describe their intentions.

49 lines (46 loc) 3.58 kB
var curry = require('../fp/curry') /** * map all values in an array to see if all match * Returns `true` if all elements of the list match the predicate, `false` if there are any that don't. * * @alias every * @name all * @memberOf conditional * @since 4.0.1 * * @TODO `not(some)` ? * * @curried * @param {Function} predicate match the value * @param {Array} list to match against predicate * @return {boolean} all match predicate * * {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/every mozilla-every} * {@link https://github.com/jashkenas/underscore/blob/master/underscore.js#L262 underscore-all} * {@link https://github.com/ramda/ramda/blob/master/src/all.js ramda-all} * @see {@link ramda-all} * @see {@link underscore-all} * @see {@link mozilla-every} * @see fp/curry * * @sig (a -> Boolean) -> [a] -> Boolean * * @example * * const allBoolean = all(x => typeof x === 'boolean'q) * * allBoolean([true]) * //=> true * * allBoolean([1]) * //=> false * */ var all = curry(2, function (predicate, list) { for (var i in list) { if (!predicate(list[i])) { return false } } return true }) module.exports = all //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsLmpzIiwic291cmNlcyI6WyJhbGwuanMiXSwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgY3VycnkgPSByZXF1aXJlKCcuLi9mcC9jdXJyeScpXG5cbi8qKlxuICogbWFwIGFsbCB2YWx1ZXMgaW4gYW4gYXJyYXkgdG8gc2VlIGlmIGFsbCBtYXRjaFxuICogUmV0dXJucyBgdHJ1ZWAgaWYgYWxsIGVsZW1lbnRzIG9mIHRoZSBsaXN0IG1hdGNoIHRoZSBwcmVkaWNhdGUsIGBmYWxzZWAgaWYgdGhlcmUgYXJlIGFueSB0aGF0IGRvbid0LlxuICpcbiAqIEBhbGlhcyBldmVyeVxuICogQG5hbWUgYWxsXG4gKiBAbWVtYmVyT2YgY29uZGl0aW9uYWxcbiAqIEBzaW5jZSA0LjAuMVxuICpcbiAqIEBUT0RPIGBub3Qoc29tZSlgID9cbiAqXG4gKiBAY3VycmllZFxuICogQHBhcmFtICB7RnVuY3Rpb259IHByZWRpY2F0ZSBtYXRjaCB0aGUgdmFsdWVcbiAqIEBwYXJhbSAge0FycmF5fSBsaXN0IHRvIG1hdGNoIGFnYWluc3QgcHJlZGljYXRlXG4gKiBAcmV0dXJuIHtib29sZWFufSBhbGwgbWF0Y2ggcHJlZGljYXRlXG4gKlxuICoge0BsaW5rIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0FycmF5L2V2ZXJ5IG1vemlsbGEtZXZlcnl9XG4gKiB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2phc2hrZW5hcy91bmRlcnNjb3JlL2Jsb2IvbWFzdGVyL3VuZGVyc2NvcmUuanMjTDI2MiB1bmRlcnNjb3JlLWFsbH1cbiAqIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vcmFtZGEvcmFtZGEvYmxvYi9tYXN0ZXIvc3JjL2FsbC5qcyByYW1kYS1hbGx9XG4gKiBAc2VlIHtAbGluayByYW1kYS1hbGx9XG4gKiBAc2VlIHtAbGluayB1bmRlcnNjb3JlLWFsbH1cbiAqIEBzZWUge0BsaW5rIG1vemlsbGEtZXZlcnl9XG4gKiBAc2VlIGZwL2N1cnJ5XG4gKlxuICogQHNpZyAoYSAtPiBCb29sZWFuKSAtPiBbYV0gLT4gQm9vbGVhblxuICpcbiAqIEBleGFtcGxlXG4gKlxuICogICAgY29uc3QgYWxsQm9vbGVhbiA9IGFsbCh4ID0+IHR5cGVvZiB4ID09PSAnYm9vbGVhbidxKVxuICpcbiAqICAgIGFsbEJvb2xlYW4oW3RydWVdKVxuICogICAgLy89PiB0cnVlXG4gKlxuICogICAgYWxsQm9vbGVhbihbMV0pXG4gKiAgICAvLz0+IGZhbHNlXG4gKlxuICovXG5jb25zdCBhbGwgPSBjdXJyeSgyLCAocHJlZGljYXRlLCBsaXN0KSA9PiB7XG4gIGZvciAobGV0IGkgaW4gbGlzdCkge1xuICAgIGlmICghcHJlZGljYXRlKGxpc3RbaV0pKSByZXR1cm4gZmFsc2VcbiAgfVxuICByZXR1cm4gdHJ1ZVxufSlcblxubW9kdWxlLmV4cG9ydHMgPSBhbGxcbiJdLCJuYW1lcyI6WyJjb25zdCIsImxldCJdLCJtYXBwaW5ncyI6IkFBQUFBLEdBQUssQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBdUNwQ0EsR0FBSyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxFQUFFLFNBQUEsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLEFBQUc7RUFDeEMsS0FBS0MsR0FBRyxDQUFDLENBQUMsSUFBSSxJQUFJLEVBQUU7SUFDbEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFBLE9BQU8sS0FBSyxFQUFBO0dBQ3RDO0VBQ0QsT0FBTyxJQUFJO0NBQ1osQ0FBQzs7QUFFRixNQUFNLENBQUMsT0FBTyxHQUFHLEdBQUc7In0=