mirror of
https://github.com/whoisclebs/lodash.git
synced 2026-02-09 18:37:50 +00:00
Consolidate over modules.
This commit is contained in:
@@ -1,19 +0,0 @@
|
|||||||
import apply from './.internal/apply.js';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a function like `over`.
|
|
||||||
*
|
|
||||||
* @private
|
|
||||||
* @param {Function} arrayFunc The function to iterate over iteratees.
|
|
||||||
* @returns {Function} Returns the new over function.
|
|
||||||
*/
|
|
||||||
function createOver(arrayFunc) {
|
|
||||||
return (...iteratees) => {
|
|
||||||
return function(...args) {
|
|
||||||
const thisArg = this;
|
|
||||||
return arrayFunc(iteratees, iteratee => apply(iteratee, thisArg, args));
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
export default createOver;
|
|
||||||
11
over.js
11
over.js
@@ -1,5 +1,5 @@
|
|||||||
|
import apply from './.internal/apply.js';
|
||||||
import arrayMap from './.internal/arrayMap.js';
|
import arrayMap from './.internal/arrayMap.js';
|
||||||
import createOver from './.internal/createOver.js';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a function that invokes `iteratees` with the arguments it receives
|
* Creates a function that invokes `iteratees` with the arguments it receives
|
||||||
@@ -7,7 +7,7 @@ import createOver from './.internal/createOver.js';
|
|||||||
*
|
*
|
||||||
* @since 4.0.0
|
* @since 4.0.0
|
||||||
* @category Util
|
* @category Util
|
||||||
* @param {...(Function|Function[])} [iteratees=[identity]]
|
* @param {Function[]} [iteratees=[identity]]
|
||||||
* The iteratees to invoke.
|
* The iteratees to invoke.
|
||||||
* @returns {Function} Returns the new function.
|
* @returns {Function} Returns the new function.
|
||||||
* @example
|
* @example
|
||||||
@@ -17,6 +17,11 @@ import createOver from './.internal/createOver.js';
|
|||||||
* func(1, 2, 3, 4);
|
* func(1, 2, 3, 4);
|
||||||
* // => [4, 1]
|
* // => [4, 1]
|
||||||
*/
|
*/
|
||||||
const over = createOver(arrayMap);
|
function over(iteratees) {
|
||||||
|
return function(...args) {
|
||||||
|
const thisArg = this;
|
||||||
|
return arrayMap(iteratees, iteratee => apply(iteratee, thisArg, args));
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
export default over;
|
export default over;
|
||||||
|
|||||||
11
overArgs.js
11
overArgs.js
@@ -1,8 +1,4 @@
|
|||||||
import apply from './.internal/apply.js';
|
import apply from './.internal/apply.js';
|
||||||
import baseFlatten from './.internal/baseFlatten.js';
|
|
||||||
|
|
||||||
/* Built-in method references for those with the same name as other `lodash` methods. */
|
|
||||||
const nativeMin = Math.min;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a function that invokes `func` with its arguments transformed.
|
* Creates a function that invokes `func` with its arguments transformed.
|
||||||
@@ -10,7 +6,7 @@ const nativeMin = Math.min;
|
|||||||
* @since 4.0.0
|
* @since 4.0.0
|
||||||
* @category Function
|
* @category Function
|
||||||
* @param {Function} func The function to wrap.
|
* @param {Function} func The function to wrap.
|
||||||
* @param {...(Function|Function[])} [transforms=[identity]]
|
* @param {Function[]} [transforms=[identity]]
|
||||||
* The argument transforms.
|
* The argument transforms.
|
||||||
* @returns {Function} Returns the new function.
|
* @returns {Function} Returns the new function.
|
||||||
* @example
|
* @example
|
||||||
@@ -31,12 +27,11 @@ const nativeMin = Math.min;
|
|||||||
* func(10, 5);
|
* func(10, 5);
|
||||||
* // => [100, 10]
|
* // => [100, 10]
|
||||||
*/
|
*/
|
||||||
function overArgs(func, ...transforms) {
|
function overArgs(func, transforms) {
|
||||||
const funcsLength = transforms.length;
|
const funcsLength = transforms.length;
|
||||||
return function(...args) {
|
return function(...args) {
|
||||||
let index = -1;
|
let index = -1;
|
||||||
const length = nativeMin(args.length, funcsLength);
|
const length = Math.min(args.length, funcsLength);
|
||||||
|
|
||||||
while (++index < length) {
|
while (++index < length) {
|
||||||
args[index] = transforms[index].call(this, args[index]);
|
args[index] = transforms[index].call(this, args[index]);
|
||||||
}
|
}
|
||||||
|
|||||||
11
overEvery.js
11
overEvery.js
@@ -1,5 +1,5 @@
|
|||||||
|
import apply from './.internal/apply.js';
|
||||||
import arrayEvery from './.internal/arrayEvery.js';
|
import arrayEvery from './.internal/arrayEvery.js';
|
||||||
import createOver from './.internal/createOver.js';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a function that checks if **all** of the `predicates` return
|
* Creates a function that checks if **all** of the `predicates` return
|
||||||
@@ -7,7 +7,7 @@ import createOver from './.internal/createOver.js';
|
|||||||
*
|
*
|
||||||
* @since 4.0.0
|
* @since 4.0.0
|
||||||
* @category Util
|
* @category Util
|
||||||
* @param {...(Function|Function[])} [predicates=[identity]]
|
* @param {Function[]} [predicates=[identity]]
|
||||||
* The predicates to check.
|
* The predicates to check.
|
||||||
* @returns {Function} Returns the new function.
|
* @returns {Function} Returns the new function.
|
||||||
* @example
|
* @example
|
||||||
@@ -23,6 +23,11 @@ import createOver from './.internal/createOver.js';
|
|||||||
* func(NaN);
|
* func(NaN);
|
||||||
* // => false
|
* // => false
|
||||||
*/
|
*/
|
||||||
const overEvery = createOver(arrayEvery);
|
function overEvery(iteratees) {
|
||||||
|
return function(...args) {
|
||||||
|
const thisArg = this;
|
||||||
|
return arrayEvery(iteratees, iteratee => apply(iteratee, thisArg, args));
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
export default overEvery;
|
export default overEvery;
|
||||||
|
|||||||
11
overSome.js
11
overSome.js
@@ -1,5 +1,5 @@
|
|||||||
|
import apply from './.internal/apply.js';
|
||||||
import arraySome from './.internal/arraySome.js';
|
import arraySome from './.internal/arraySome.js';
|
||||||
import createOver from './.internal/createOver.js';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a function that checks if **any** of the `predicates` return
|
* Creates a function that checks if **any** of the `predicates` return
|
||||||
@@ -7,7 +7,7 @@ import createOver from './.internal/createOver.js';
|
|||||||
*
|
*
|
||||||
* @since 4.0.0
|
* @since 4.0.0
|
||||||
* @category Util
|
* @category Util
|
||||||
* @param {...(Function|Function[])} [predicates=[identity]]
|
* @param {Function[]} [predicates=[identity]]
|
||||||
* The predicates to check.
|
* The predicates to check.
|
||||||
* @returns {Function} Returns the new function.
|
* @returns {Function} Returns the new function.
|
||||||
* @example
|
* @example
|
||||||
@@ -23,6 +23,11 @@ import createOver from './.internal/createOver.js';
|
|||||||
* func(NaN);
|
* func(NaN);
|
||||||
* // => false
|
* // => false
|
||||||
*/
|
*/
|
||||||
const overSome = createOver(arraySome);
|
function overSome(iteratees) {
|
||||||
|
return function(...args) {
|
||||||
|
const thisArg = this;
|
||||||
|
return arraySome(iteratees, iteratee => apply(iteratee, thisArg, args));
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
export default overSome;
|
export default overSome;
|
||||||
|
|||||||
Reference in New Issue
Block a user