From bfe6e06b5a3b36f3d43f103913c73745e5d4e6e7 Mon Sep 17 00:00:00 2001 From: John-David Dalton Date: Mon, 11 Apr 2016 17:38:03 -0700 Subject: [PATCH] Ensure `_.sortBy` works with the `matchesProperty` shorthand. --- lodash.js | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/lodash.js b/lodash.js index fd2667dac..f6633fbd5 100644 --- a/lodash.js +++ b/lodash.js @@ -4607,7 +4607,10 @@ */ function createOver(arrayFunc) { return rest(function(iteratees) { - iteratees = arrayMap(baseFlatten(iteratees, 1, isFlattenableIteratee), getIteratee()); + iteratees = (iteratees.length == 1 && isArray(iteratees[0])) + ? arrayMap(iteratees[0], getIteratee()) + : arrayMap(baseFlatten(iteratees, 1, isFlattenableIteratee), getIteratee()); + return rest(function(args) { var thisArg = this; return arrayFunc(iteratees, function(iteratee) { @@ -8954,7 +8957,11 @@ } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) { iteratees = [iteratees[0]]; } - return baseOrderBy(collection, baseFlatten(iteratees, 1), []); + iteratees = (length == 1 && isArray(iteratees[0])) + ? iteratees[0] + : baseFlatten(iteratees, 1, isFlattenableIteratee); + + return baseOrderBy(collection, iteratees, []); }); /*------------------------------------------------------------------------*/ @@ -9652,7 +9659,10 @@ * // => [100, 10] */ var overArgs = rest(function(func, transforms) { - transforms = arrayMap(baseFlatten(transforms, 1, isFlattenableIteratee), getIteratee()); + transforms = (transforms.length == 1 && isArray(transforms[0])) + ? arrayMap(transforms[0], getIteratee()) + : arrayMap(baseFlatten(transforms, 1, isFlattenableIteratee), getIteratee()); + var funcsLength = transforms.length; return rest(function(args) { var index = -1,