lodash._createwrapper
Advanced tools
Comparing version 2.4.1 to 3.0.0
431
index.js
/** | ||
* Lo-Dash 2.4.1 (Custom Build) <http://lodash.com/> | ||
* Build: `lodash modularize modern exports="npm" -o ./npm/` | ||
* Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/> | ||
* Based on Underscore.js 1.5.2 <http://underscorejs.org/LICENSE> | ||
* Copyright 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors | ||
* Available under MIT license <http://lodash.com/license> | ||
* lodash 3.0.0 (Custom Build) <https://lodash.com/> | ||
* Build: `lodash modern modularize exports="npm" -o ./` | ||
* Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> | ||
* Based on Underscore.js 1.7.0 <http://underscorejs.org/LICENSE> | ||
* Copyright 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors | ||
* Available under MIT license <https://lodash.com/license> | ||
*/ | ||
var baseBind = require('lodash._basebind'), | ||
baseCreateWrapper = require('lodash._basecreatewrapper'), | ||
isFunction = require('lodash.isfunction'), | ||
slice = require('lodash._slice'); | ||
var arrayCopy = require('lodash._arraycopy'), | ||
baseCreate = require('lodash._basecreate'), | ||
replaceHolders = require('lodash._replaceholders'), | ||
isFunction = require('lodash.isfunction'); | ||
/** Used to compose bitmasks for wrapper metadata. */ | ||
var BIND_FLAG = 1, | ||
BIND_KEY_FLAG = 2, | ||
CURRY_BOUND_FLAG = 4, | ||
CURRY_FLAG = 8, | ||
CURRY_RIGHT_FLAG = 16, | ||
PARTIAL_FLAG = 32, | ||
PARTIAL_RIGHT_FLAG = 64, | ||
ARY_FLAG = 256; | ||
/** Used as the `TypeError` message for "Functions" methods. */ | ||
var FUNC_ERROR_TEXT = 'Expected a function'; | ||
/* Native method references for those with the same name as other `lodash` methods. */ | ||
var nativeMax = Math.max, | ||
nativeMin = Math.min; | ||
/** | ||
* Used for `Array` method references. | ||
* Used as the maximum length of an array-like value. | ||
* See the [ES spec](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength) | ||
* for more details. | ||
*/ | ||
var MAX_SAFE_INTEGER = Math.pow(2, 53) - 1; | ||
/** | ||
* Creates an array that is the composition of partially applied arguments, | ||
* placeholders, and provided arguments into a single array of arguments. | ||
* | ||
* Normally `Array.prototype` would suffice, however, using an array literal | ||
* avoids issues in Narwhal. | ||
* @private | ||
* @param {Array|Object} args The provided arguments. | ||
* @param {Array} partials The arguments to prepend to those provided. | ||
* @param {Array} holders The `partials` placeholder indexes. | ||
* @returns {Array} Returns the new array of composed arguments. | ||
*/ | ||
var arrayRef = []; | ||
function composeArgs(args, partials, holders) { | ||
var holdersLength = holders.length, | ||
argsIndex = -1, | ||
argsLength = nativeMax(args.length - holdersLength, 0), | ||
leftIndex = -1, | ||
leftLength = partials.length, | ||
result = Array(argsLength + leftLength); | ||
/** Native method shortcuts */ | ||
var push = arrayRef.push, | ||
unshift = arrayRef.unshift; | ||
while (++leftIndex < leftLength) { | ||
result[leftIndex] = partials[leftIndex]; | ||
} | ||
while (++argsIndex < holdersLength) { | ||
result[holders[argsIndex]] = args[argsIndex]; | ||
} | ||
while (argsLength--) { | ||
result[leftIndex++] = args[argsIndex++]; | ||
} | ||
return result; | ||
} | ||
/** | ||
* Creates a function that, when called, either curries or invokes `func` | ||
* with an optional `this` binding and partially applied arguments. | ||
* This function is like `composeArgs` except that the arguments composition | ||
* is tailored for `_.partialRight`. | ||
* | ||
* @private | ||
* @param {Array|Object} args The provided arguments. | ||
* @param {Array} partials The arguments to append to those provided. | ||
* @param {Array} holders The `partials` placeholder indexes. | ||
* @returns {Array} Returns the new array of composed arguments. | ||
*/ | ||
function composeArgsRight(args, partials, holders) { | ||
var holdersIndex = -1, | ||
holdersLength = holders.length, | ||
argsIndex = -1, | ||
argsLength = nativeMax(args.length - holdersLength, 0), | ||
rightIndex = -1, | ||
rightLength = partials.length, | ||
result = Array(argsLength + rightLength); | ||
while (++argsIndex < argsLength) { | ||
result[argsIndex] = args[argsIndex]; | ||
} | ||
var pad = argsIndex; | ||
while (++rightIndex < rightLength) { | ||
result[pad + rightIndex] = partials[rightIndex]; | ||
} | ||
while (++holdersIndex < holdersLength) { | ||
result[pad + holders[holdersIndex]] = args[argsIndex++]; | ||
} | ||
return result; | ||
} | ||
/** | ||
* Creates a function that wraps `func` and invokes it with the `this` | ||
* binding of `thisArg`. | ||
* | ||
* @private | ||
* @param {Function} func The function to bind. | ||
* @param {*} [thisArg] The `this` binding of `func`. | ||
* @returns {Function} Returns the new bound function. | ||
*/ | ||
function createBindWrapper(func, thisArg) { | ||
var Ctor = createCtorWrapper(func); | ||
function wrapper() { | ||
return (this instanceof wrapper ? Ctor : func).apply(thisArg, arguments); | ||
} | ||
return wrapper; | ||
} | ||
/** | ||
* Creates a function that produces an instance of `Ctor` regardless of | ||
* whether it was invoked as part of a `new` expression or by `call` or `apply`. | ||
* | ||
* @private | ||
* @param {Function} Ctor The constructor to wrap. | ||
* @returns {Function} Returns the new wrapped function. | ||
*/ | ||
function createCtorWrapper(Ctor) { | ||
return function() { | ||
var thisBinding = baseCreate(Ctor.prototype), | ||
result = Ctor.apply(thisBinding, arguments); | ||
// Mimic the constructor's `return` behavior. | ||
// See https://es5.github.io/#x13.2.2 for more details. | ||
return isObject(result) ? result : thisBinding; | ||
}; | ||
} | ||
/** | ||
* Creates a function that wraps `func` and invokes it with optional `this` | ||
* binding of, partial application, and currying. | ||
* | ||
* @private | ||
* @param {Function|string} func The function or method name to reference. | ||
* @param {number} bitmask The bitmask of method flags to compose. | ||
* The bitmask may be composed of the following flags: | ||
* 1 - `_.bind` | ||
* 2 - `_.bindKey` | ||
* 4 - `_.curry` | ||
* 8 - `_.curry` (bound) | ||
* 16 - `_.partial` | ||
* 32 - `_.partialRight` | ||
* @param {Array} [partialArgs] An array of arguments to prepend to those | ||
* provided to the new function. | ||
* @param {Array} [partialRightArgs] An array of arguments to append to those | ||
* provided to the new function. | ||
* @param {number} bitmask The bitmask of flags. See `createWrapper` for more details. | ||
* @param {*} [thisArg] The `this` binding of `func`. | ||
* @param {Array} [partials] The arguments to prepend to those provided to the new function. | ||
* @param {Array} [holders] The `partials` placeholder indexes. | ||
* @param {Array} [partialsRight] The arguments to append to those provided to the new function. | ||
* @param {Array} [holdersRight] The `partialsRight` placeholder indexes. | ||
* @param {Array} [argPos] The argument positions of the new function. | ||
* @param {number} [ary] The arity cap of `func`. | ||
* @param {number} [arity] The arity of `func`. | ||
* @returns {Function} Returns the new function. | ||
* @returns {Function} Returns the new wrapped function. | ||
*/ | ||
function createWrapper(func, bitmask, partialArgs, partialRightArgs, thisArg, arity) { | ||
var isBind = bitmask & 1, | ||
isBindKey = bitmask & 2, | ||
isCurry = bitmask & 4, | ||
isCurryBound = bitmask & 8, | ||
isPartial = bitmask & 16, | ||
isPartialRight = bitmask & 32; | ||
function createHybridWrapper(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) { | ||
var isAry = bitmask & ARY_FLAG, | ||
isBind = bitmask & BIND_FLAG, | ||
isBindKey = bitmask & BIND_KEY_FLAG, | ||
isCurry = bitmask & CURRY_FLAG, | ||
isCurryBound = bitmask & CURRY_BOUND_FLAG, | ||
isCurryRight = bitmask & CURRY_RIGHT_FLAG; | ||
if (!isBindKey && !isFunction(func)) { | ||
throw new TypeError; | ||
} | ||
if (isPartial && !partialArgs.length) { | ||
bitmask &= ~16; | ||
isPartial = partialArgs = false; | ||
} | ||
if (isPartialRight && !partialRightArgs.length) { | ||
bitmask &= ~32; | ||
isPartialRight = partialRightArgs = false; | ||
} | ||
var bindData = func && func.__bindData__; | ||
if (bindData && bindData !== true) { | ||
// clone `bindData` | ||
bindData = slice(bindData); | ||
if (bindData[2]) { | ||
bindData[2] = slice(bindData[2]); | ||
var Ctor = !isBindKey && createCtorWrapper(func), | ||
key = func; | ||
function wrapper() { | ||
// Avoid `arguments` object use disqualifying optimizations by | ||
// converting it to an array before providing it to other functions. | ||
var length = arguments.length, | ||
index = length, | ||
args = Array(length); | ||
while (index--) { | ||
args[index] = arguments[index]; | ||
} | ||
if (bindData[3]) { | ||
bindData[3] = slice(bindData[3]); | ||
if (partials) { | ||
args = composeArgs(args, partials, holders); | ||
} | ||
// set `thisBinding` is not previously bound | ||
if (isBind && !(bindData[1] & 1)) { | ||
bindData[4] = thisArg; | ||
if (partialsRight) { | ||
args = composeArgsRight(args, partialsRight, holdersRight); | ||
} | ||
// set if previously bound but not currently (subsequent curried functions) | ||
if (!isBind && bindData[1] & 1) { | ||
bitmask |= 8; | ||
if (isCurry || isCurryRight) { | ||
var placeholder = wrapper.placeholder, | ||
argsHolders = replaceHolders(args, placeholder); | ||
length -= argsHolders.length; | ||
if (length < arity) { | ||
var newArgPos = argPos ? arrayCopy(argPos) : null, | ||
newArity = nativeMax(arity - length, 0), | ||
newsHolders = isCurry ? argsHolders : null, | ||
newHoldersRight = isCurry ? null : argsHolders, | ||
newPartials = isCurry ? args : null, | ||
newPartialsRight = isCurry ? null : args; | ||
bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG); | ||
bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG); | ||
if (!isCurryBound) { | ||
bitmask &= ~(BIND_FLAG | BIND_KEY_FLAG); | ||
} | ||
var result = createHybridWrapper(func, bitmask, thisArg, newPartials, newsHolders, newPartialsRight, newHoldersRight, newArgPos, ary, newArity); | ||
result.placeholder = placeholder; | ||
return result; | ||
} | ||
} | ||
// set curried arity if not yet set | ||
if (isCurry && !(bindData[1] & 4)) { | ||
bindData[5] = arity; | ||
var thisBinding = isBind ? thisArg : this; | ||
if (isBindKey) { | ||
func = thisBinding[key]; | ||
} | ||
// append partial left arguments | ||
if (isPartial) { | ||
push.apply(bindData[2] || (bindData[2] = []), partialArgs); | ||
if (argPos) { | ||
args = reorder(args, argPos); | ||
} | ||
// append partial right arguments | ||
if (isPartialRight) { | ||
unshift.apply(bindData[3] || (bindData[3] = []), partialRightArgs); | ||
if (isAry && ary < args.length) { | ||
args.length = ary; | ||
} | ||
// merge flags | ||
bindData[1] |= bitmask; | ||
return createWrapper.apply(null, bindData); | ||
return (this instanceof wrapper ? (Ctor || createCtorWrapper(func)) : func).apply(thisBinding, args); | ||
} | ||
// fast path for `_.bind` | ||
var creater = (bitmask == 1 || bitmask === 17) ? baseBind : baseCreateWrapper; | ||
return creater([func, bitmask, partialArgs, partialRightArgs, thisArg, arity]); | ||
return wrapper; | ||
} | ||
/** | ||
* Creates a function that wraps `func` and invokes it with the optional `this` | ||
* binding of `thisArg` and the `partials` prepended to those provided to | ||
* the wrapper. | ||
* | ||
* @private | ||
* @param {Function} func The function to partially apply arguments to. | ||
* @param {number} bitmask The bitmask of flags. See `createWrapper` for more details. | ||
* @param {*} thisArg The `this` binding of `func`. | ||
* @param {Array} partials The arguments to prepend to those provided to the new function. | ||
* @returns {Function} Returns the new bound function. | ||
*/ | ||
function createPartialWrapper(func, bitmask, thisArg, partials) { | ||
var isBind = bitmask & BIND_FLAG, | ||
Ctor = createCtorWrapper(func); | ||
function wrapper() { | ||
// Avoid `arguments` object use disqualifying optimizations by | ||
// converting it to an array before providing it `func`. | ||
var argsIndex = -1, | ||
argsLength = arguments.length, | ||
leftIndex = -1, | ||
leftLength = partials.length, | ||
args = Array(argsLength + leftLength); | ||
while (++leftIndex < leftLength) { | ||
args[leftIndex] = partials[leftIndex]; | ||
} | ||
while (argsLength--) { | ||
args[leftIndex++] = arguments[++argsIndex]; | ||
} | ||
return (this instanceof wrapper ? Ctor : func).apply(isBind ? thisArg : this, args); | ||
} | ||
return wrapper; | ||
} | ||
/** | ||
* Creates a function that either curries or invokes `func` with optional | ||
* `this` binding and partially applied arguments. | ||
* | ||
* @private | ||
* @param {Function|string} func The function or method name to reference. | ||
* @param {number} bitmask The bitmask of flags. | ||
* The bitmask may be composed of the following flags: | ||
* 1 - `_.bind` | ||
* 2 - `_.bindKey` | ||
* 4 - `_.curry` or `_.curryRight` of a bound function | ||
* 8 - `_.curry` | ||
* 16 - `_.curryRight` | ||
* 32 - `_.partial` | ||
* 64 - `_.partialRight` | ||
* 128 - `_.rearg` | ||
* 256 - `_.ary` | ||
* @param {*} [thisArg] The `this` binding of `func`. | ||
* @param {Array} [partials] The arguments to be partially applied. | ||
* @param {Array} [holders] The `partials` placeholder indexes. | ||
* @param {Array} [argPos] The argument positions of the new function. | ||
* @param {number} [ary] The arity cap of `func`. | ||
* @param {number} [arity] The arity of `func`. | ||
* @returns {Function} Returns the new wrapped function. | ||
*/ | ||
function createWrapper(func, bitmask, thisArg, partials, holders, argPos, ary, arity) { | ||
var isBindKey = bitmask & BIND_KEY_FLAG; | ||
if (!isBindKey && !isFunction(func)) { | ||
throw new TypeError(FUNC_ERROR_TEXT); | ||
} | ||
var length = partials ? partials.length : 0; | ||
if (!length) { | ||
bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG); | ||
partials = holders = null; | ||
} | ||
length -= (holders ? holders.length : 0); | ||
if (bitmask & PARTIAL_RIGHT_FLAG) { | ||
var partialsRight = partials, | ||
holdersRight = holders; | ||
partials = holders = null; | ||
} | ||
var newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity]; | ||
newData[9] = arity == null | ||
? (isBindKey ? 0 : func.length) | ||
: (nativeMax(arity - length, 0) || 0); | ||
if (bitmask == BIND_FLAG) { | ||
var result = createBindWrapper(newData[0], newData[2]); | ||
} else if ((bitmask == PARTIAL_FLAG || bitmask == (BIND_FLAG | PARTIAL_FLAG)) && !newData[4].length) { | ||
result = createPartialWrapper.apply(null, newData); | ||
} else { | ||
result = createHybridWrapper.apply(null, newData); | ||
} | ||
return result; | ||
} | ||
/** | ||
* Checks if `value` is a valid array-like index. | ||
* | ||
* @private | ||
* @param {*} value The value to check. | ||
* @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index. | ||
* @returns {boolean} Returns `true` if `value` is a valid index, else `false`. | ||
*/ | ||
function isIndex(value, length) { | ||
value = +value; | ||
length = length == null ? MAX_SAFE_INTEGER : length; | ||
return value > -1 && value % 1 == 0 && value < length; | ||
} | ||
/** | ||
* Reorder `array` according to the specified indexes where the element at | ||
* the first index is assigned as the first element, the element at | ||
* the second index is assigned as the second element, and so on. | ||
* | ||
* @private | ||
* @param {Array} array The array to reorder. | ||
* @param {Array} indexes The arranged array indexes. | ||
* @returns {Array} Returns `array`. | ||
*/ | ||
function reorder(array, indexes) { | ||
var arrLength = array.length, | ||
length = nativeMin(indexes.length, arrLength), | ||
oldArray = arrayCopy(array); | ||
while (length--) { | ||
var index = indexes[length]; | ||
array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined; | ||
} | ||
return array; | ||
} | ||
/** | ||
* Checks if `value` is the language type of `Object`. | ||
* (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`) | ||
* | ||
* **Note:** See the [ES5 spec](https://es5.github.io/#x8) for more details. | ||
* | ||
* @static | ||
* @memberOf _ | ||
* @category Lang | ||
* @param {*} value The value to check. | ||
* @returns {boolean} Returns `true` if `value` is an object, else `false`. | ||
* @example | ||
* | ||
* _.isObject({}); | ||
* // => true | ||
* | ||
* _.isObject([1, 2, 3]); | ||
* // => true | ||
* | ||
* _.isObject(1); | ||
* // => false | ||
*/ | ||
function isObject(value) { | ||
// Avoid a V8 JIT bug in Chrome 19-20. | ||
// See https://code.google.com/p/v8/issues/detail?id=2291 for more details. | ||
var type = typeof value; | ||
return type == 'function' || (value && type == 'object') || false; | ||
} | ||
module.exports = createWrapper; |
@@ -1,3 +0,3 @@ | ||
Copyright 2012-2013 The Dojo Foundation <http://dojofoundation.org/> | ||
Based on Underscore.js 1.5.2, copyright 2009-2013 Jeremy Ashkenas, | ||
Copyright 2012-2015 The Dojo Foundation <http://dojofoundation.org/> | ||
Based on Underscore.js 1.7.0, copyright 2009-2015 Jeremy Ashkenas, | ||
DocumentCloud and Investigative Reporters & Editors <http://underscorejs.org/> | ||
@@ -22,2 +22,2 @@ | ||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | ||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
{ | ||
"name": "lodash._createwrapper", | ||
"version": "2.4.1", | ||
"description": "The internal Lo-Dash function `createWrapper` as a Node.js module generated by lodash-cli.", | ||
"homepage": "http://lodash.com/custom-builds", | ||
"version": "3.0.0", | ||
"description": "The modern build of lodash’s internal `createWrapper` as a module.", | ||
"homepage": "https://lodash.com/", | ||
"icon": "https://lodash.com/icon.svg", | ||
"license": "MIT", | ||
@@ -10,14 +11,15 @@ "author": "John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)", | ||
"John-David Dalton <john.david.dalton@gmail.com> (http://allyoucanleet.com/)", | ||
"Benjamin Tan <demoneaux@gmail.com> (https://d10.github.io/)", | ||
"Blaine Bublitz <blaine@iceddev.com> (http://www.iceddev.com/)", | ||
"Kit Cambridge <github@kitcambridge.be> (http://kitcambridge.be/)", | ||
"Mathias Bynens <mathias@qiwi.be> (http://mathiasbynens.be/)" | ||
"Mathias Bynens <mathias@qiwi.be> (https://mathiasbynens.be/)" | ||
], | ||
"bugs": "https://github.com/lodash/lodash-cli/issues", | ||
"repository": { "type": "git", "url": "https://github.com/lodash/lodash-cli.git" }, | ||
"repository": "lodash/lodash", | ||
"scripts": { "test": "echo \"See https://travis-ci.org/lodash/lodash-cli for testing details.\"" }, | ||
"dependencies": { | ||
"lodash._basebind": "~2.4.1", | ||
"lodash._basecreatewrapper": "~2.4.1", | ||
"lodash.isfunction": "~2.4.1", | ||
"lodash._slice": "~2.4.1" | ||
"lodash._arraycopy": "^3.0.0", | ||
"lodash._basecreate": "^3.0.0", | ||
"lodash._replaceholders": "^3.0.0", | ||
"lodash.isfunction": "^3.0.0" | ||
} | ||
} |
@@ -1,15 +0,20 @@ | ||
# lodash._createwrapper v2.4.1 | ||
# lodash._createwrapper v3.0.0 | ||
The internal [Lo-Dash](http://lodash.com/) function `createWrapper` as a [Node.js](http://nodejs.org/) module generated by [lodash-cli](https://npmjs.org/package/lodash-cli). | ||
The [modern build](https://github.com/lodash/lodash/wiki/Build-Differences) of [lodash’s](https://lodash.com/) internal `createWrapper` exported as a [Node.js](http://nodejs.org/)/[io.js](https://iojs.org/) module. | ||
## Author | ||
## Installation | ||
| [![twitter/jdalton](http://gravatar.com/avatar/299a3d891ff1920b69c364d061007043?s=70)](https://twitter.com/jdalton "Follow @jdalton on Twitter") | | ||
|---| | ||
| [John-David Dalton](http://allyoucanleet.com/) | | ||
Using npm: | ||
## Contributors | ||
```bash | ||
$ {sudo -H} npm i -g npm | ||
$ npm i --save lodash._createwrapper | ||
``` | ||
| [![twitter/blainebublitz](http://gravatar.com/avatar/ac1c67fd906c9fecd823ce302283b4c1?s=70)](https://twitter.com/blainebublitz "Follow @BlaineBublitz on Twitter") | [![twitter/kitcambridge](http://gravatar.com/avatar/6662a1d02f351b5ef2f8b4d815804661?s=70)](https://twitter.com/kitcambridge "Follow @kitcambridge on Twitter") | [![twitter/mathias](http://gravatar.com/avatar/24e08a9ea84deb17ae121074d0f17125?s=70)](https://twitter.com/mathias "Follow @mathias on Twitter") | | ||
|---|---|---| | ||
| [Blaine Bublitz](http://www.iceddev.com/) | [Kit Cambridge](http://kitcambridge.be/) | [Mathias Bynens](http://mathiasbynens.be/) | | ||
In Node.js/io.js: | ||
```js | ||
var createWrapper = require('lodash._createwrapper'); | ||
``` | ||
See the [package source](https://github.com/lodash/lodash/blob/3.0.0-npm-packages/lodash._createwrapper) for more details. |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
No repository
Supply chain riskPackage does not have a linked source code repository. Without this field, a package will have no reference to the location of the source code use to generate the package.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
15766
348
21
1
1
+ Addedlodash._arraycopy@^3.0.0
+ Addedlodash._basecreate@^3.0.0
+ Addedlodash._arraycopy@3.0.0(transitive)
+ Addedlodash._basecreate@3.0.3(transitive)
+ Addedlodash._replaceholders@3.0.0(transitive)
+ Addedlodash.isfunction@3.0.9(transitive)
- Removedlodash._basebind@~2.4.1
- Removedlodash._basecreatewrapper@~2.4.1
- Removedlodash._slice@~2.4.1
- Removedlodash._basebind@2.4.1(transitive)
- Removedlodash._basecreate@2.4.1(transitive)
- Removedlodash._basecreatewrapper@2.4.1(transitive)
- Removedlodash._isnative@2.4.1(transitive)
- Removedlodash._objecttypes@2.4.1(transitive)
- Removedlodash._setbinddata@2.4.1(transitive)
- Removedlodash._slice@2.4.1(transitive)
- Removedlodash.isfunction@2.4.1(transitive)
- Removedlodash.isobject@2.4.1(transitive)
- Removedlodash.noop@2.4.1(transitive)
Updatedlodash.isfunction@^3.0.0