diff options
Diffstat (limited to 'tools/eslint/node_modules/lodash/uniqBy.js')
-rw-r--r-- | tools/eslint/node_modules/lodash/uniqBy.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/tools/eslint/node_modules/lodash/uniqBy.js b/tools/eslint/node_modules/lodash/uniqBy.js new file mode 100644 index 0000000000..4fc843b8a4 --- /dev/null +++ b/tools/eslint/node_modules/lodash/uniqBy.js @@ -0,0 +1,30 @@ +var baseIteratee = require('./_baseIteratee'), + baseUniq = require('./_baseUniq'); + +/** + * This method is like `_.uniq` except that it accepts `iteratee` which is + * invoked for each element in `array` to generate the criterion by which + * uniqueness is computed. The iteratee is invoked with one argument: (value). + * + * @static + * @memberOf _ + * @category Array + * @param {Array} array The array to inspect. + * @param {Function|Object|string} [iteratee=_.identity] The iteratee invoked per element. + * @returns {Array} Returns the new duplicate free array. + * @example + * + * _.uniqBy([2.1, 1.2, 2.3], Math.floor); + * // => [2.1, 1.2] + * + * // The `_.property` iteratee shorthand. + * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x'); + * // => [{ 'x': 1 }, { 'x': 2 }] + */ +function uniqBy(array, iteratee) { + return (array && array.length) + ? baseUniq(array, baseIteratee(iteratee)) + : []; +} + +module.exports = uniqBy; |