diff --git a/README.md b/README.md
index b303d1ce87..fe1bc91c3a 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-# lodash v4.17.1
+# lodash v4.17.2
[Site](https://lodash.com/) |
[Docs](https://lodash.com/docs) |
@@ -20,11 +20,11 @@ $ lodash core -o ./dist/lodash.core.js
## Download
- * [Core build](https://raw.githubusercontent.com/lodash/lodash/4.17.1/dist/lodash.core.js) ([~4 kB gzipped](https://raw.githubusercontent.com/lodash/lodash/4.17.1/dist/lodash.core.min.js))
- * [Full build](https://raw.githubusercontent.com/lodash/lodash/4.17.1/dist/lodash.js) ([~23 kB gzipped](https://raw.githubusercontent.com/lodash/lodash/4.17.1/dist/lodash.min.js))
+ * [Core build](https://raw.githubusercontent.com/lodash/lodash/4.17.2/dist/lodash.core.js) ([~4 kB gzipped](https://raw.githubusercontent.com/lodash/lodash/4.17.2/dist/lodash.core.min.js))
+ * [Full build](https://raw.githubusercontent.com/lodash/lodash/4.17.2/dist/lodash.js) ([~23 kB gzipped](https://raw.githubusercontent.com/lodash/lodash/4.17.2/dist/lodash.min.js))
* [CDN copies](https://www.jsdelivr.com/projects/lodash)
-Lodash is released under the [MIT license](https://raw.githubusercontent.com/lodash/lodash/4.17.1/LICENSE) & supports [modern environments](#support).
+Lodash is released under the [MIT license](https://raw.githubusercontent.com/lodash/lodash/4.17.2/LICENSE) & supports [modern environments](#support).
Review the [build differences](https://github.com/lodash/lodash/wiki/build-differences) & pick one that’s right for you.
## Installation
diff --git a/dist/lodash.core.js b/dist/lodash.core.js
index ffe0b0543b..59cdc7be37 100644
--- a/dist/lodash.core.js
+++ b/dist/lodash.core.js
@@ -13,7 +13,7 @@
var undefined;
/** Used as the semantic version number. */
- var VERSION = '4.17.1';
+ var VERSION = '4.17.2';
/** Error message constants. */
var FUNC_ERROR_TEXT = 'Expected a function';
diff --git a/dist/lodash.core.min.js b/dist/lodash.core.min.js
index edbacfb5b1..ee223b2326 100644
--- a/dist/lodash.core.min.js
+++ b/dist/lodash.core.min.js
@@ -24,6 +24,6 @@ return(null==n?0:n.length)?s(n,tn):[]},o.iteratee=_,o.keys=In,o.map=function(n,t
value:n,index:e++,criteria:t(n,r,u)}}).sort(function(n,t){var r;n:{r=n.criteria;var e=t.criteria;if(r!==e){var u=r!==nn,o=null===r,i=r===r,c=e!==nn,f=null===e,a=e===e;if(!f&&r>e||o&&c&&a||!u&&a||!i){r=1;break n}if(!o&&r1?D(e,r):e}function h(t,e,r){if(k.fixed&&(E||!u.skipFixed[t])){var n=u.methodSpread[t],i=n&&n.start;return void 0===i?S(e,r):_(e,i)}return e}function g(t,e,r){return k.rearg&&r>1&&(F||!u.skipRearg[t])?K(e,u.methodRearg[t]||u.aryRearg[r]):e}function y(t,e){e=V(e);for(var r=-1,n=e.length,i=n-1,a=M(Object(t)),o=a;null!=o&&++r2?r-2:1,
-a&&a<=r?n:i(n,r)):n}},mixin:function(t){return function(e){var r=this;if(!P(r))return t(r,Object(e));var n=[];return z(T(e),function(t){P(e[t])&&n.push([t,r.prototype[t]])}),t(r,Object(e)),z(n,function(t){var e=t[1];P(e)?r.prototype[t[0]]=e:delete r.prototype[t[0]]}),r}},nthArg:function(t){return function(e){var r=e<0?1:N(e)+1;return D(t(e),r)}},rearg:function(t){return function(e,r){var n=r?r.length:0;return D(t(e,r),n)}},runInContext:function(e){return function(r){return l(t,e(r),f)}}};if(!b)return I(e,r);
-var H=r,J=[];return z(U,function(t){z(u.aryMethod[t],function(t){var e=H[u.remap[t]||t];e&&J.push([t,I(t,e)])})}),z(T(H),function(t){var e=H[t];if("function"==typeof e){for(var r=J.length;r--;)if(J[r][0]==t)return;e.convert=v(t,e),J.push([t,e])}}),z(J,function(t){H[t[0]]=t[1]}),H.convert=m,R&&(H.placeholder=j),z(T(H),function(t){z(u.realToAlias[t]||[],function(e){H[e]=H[t]})}),H}var u=r(2),p=r(3);t.exports=l},function(t,e){e.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",
-extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",
-indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},
-e.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],
+t.exports=n},function(t,e,r){function n(t,e){return 2==e?function(e,r){return t.apply(void 0,arguments)}:function(e){return t.apply(void 0,arguments)}}function i(t,e){return 2==e?function(e,r){return t(e,r)}:function(e){return t(e)}}function a(t){for(var e=t?t.length:0,r=Array(e);e--;)r[e]=t[e];return r}function o(t){return function(e){return t({},e)}}function s(t,e){return function(){for(var r=arguments.length,n=Array(r);r--;)n[r]=arguments[r];var i=n[e],a=n.length-1,o=n.slice(0,e);return i&&d.apply(o,i),
+e!=a&&d.apply(o,n.slice(e+1)),t.apply(this,o)}}function l(t,e){return function(){var r=arguments.length;if(r){for(var n=Array(r);r--;)n[r]=arguments[r];var i=n[0]=e.apply(void 0,n);return t.apply(void 0,n),i}}}function u(t,e,r,d){function c(t,e){if(B.cap){var r=p.iterateeRearg[t];if(r)return x(e,r);var n=!b&&p.iterateeAry[t];if(n)return W(e,n)}return e}function h(t,e,r){return E||B.curry&&r>1?z(e,r):e}function g(t,e,r){if(B.fixed&&(F||!p.skipFixed[t])){var n=p.methodSpread[t],i=n&&n.start;return void 0===i?w(e,r):s(e,i);
+}return e}function y(t,e,r){return B.rearg&&r>1&&(j||!p.skipRearg[t])?_(e,p.methodRearg[t]||p.aryRearg[r]):e}function m(t,e){e=V(e);for(var r=-1,n=e.length,i=n-1,a=D(Object(t)),o=a;null!=o&&++r2?r-2:1,a&&a<=r?n:i(n,r)):n}},mixin:function(t){return function(e){var r=this;if(!T(r))return t(r,Object(e));var n=[];return q(K(e),function(t){T(e[t])&&n.push([t,r.prototype[t]])}),t(r,Object(e)),q(n,function(t){var e=t[1];T(e)?r.prototype[t[0]]=e:delete r.prototype[t[0]]}),r}},nthArg:function(t){return function(e){var r=e<0?1:N(e)+1;
+return z(t(e),r)}},rearg:function(t){return function(e,r){var n=r?r.length:0;return z(t(e,r),n)}},runInContext:function(e){return function(r){return u(t,e(r),d)}}};if(!k)return R(e,r);var H=r,J=[];return q(U,function(t){q(p.aryMethod[t],function(t){var e=H[p.remap[t]||t];e&&J.push([t,R(t,e)])})}),q(K(H),function(t){var e=H[t];if("function"==typeof e){for(var r=J.length;r--;)if(J[r][0]==t)return;e.convert=A(t,e),J.push([t,e])}}),q(J,function(t){H[t[0]]=t[1]}),H.convert=v,O&&(H.placeholder=C),q(K(H),function(t){
+q(p.realToAlias[t]||[],function(e){H[e]=H[t]})}),H}var p=r(2),f=r(3),d=Array.prototype.push;t.exports=u},function(t,e){e.aliasToReal={each:"forEach",eachRight:"forEachRight",entries:"toPairs",entriesIn:"toPairsIn",extend:"assignIn",extendAll:"assignInAll",extendAllWith:"assignInAllWith",extendWith:"assignInWith",first:"head",conforms:"conformsTo",matches:"isMatch",property:"get",__:"placeholder",F:"stubFalse",T:"stubTrue",all:"every",allPass:"overEvery",always:"constant",any:"some",anyPass:"overSome",
+apply:"spread",assoc:"set",assocPath:"set",complement:"negate",compose:"flowRight",contains:"includes",dissoc:"unset",dissocPath:"unset",dropLast:"dropRight",dropLastWhile:"dropRightWhile",equals:"isEqual",identical:"eq",indexBy:"keyBy",init:"initial",invertObj:"invert",juxt:"over",omitAll:"omit",nAry:"ary",path:"get",pathEq:"matchesProperty",pathOr:"getOr",paths:"at",pickAll:"pick",pipe:"flow",pluck:"map",prop:"get",propEq:"matchesProperty",propOr:"getOr",props:"at",symmetricDifference:"xor",symmetricDifferenceBy:"xorBy",
+symmetricDifferenceWith:"xorWith",takeLast:"takeRight",takeLastWhile:"takeRightWhile",unapply:"rest",unnest:"flatten",useWith:"overArgs",where:"conformsTo",whereEq:"isMatch",zipObj:"zipObject"},e.aryMethod={1:["assignAll","assignInAll","attempt","castArray","ceil","create","curry","curryRight","defaultsAll","defaultsDeepAll","floor","flow","flowRight","fromPairs","invert","iteratee","memoize","method","mergeAll","methodOf","mixin","nthArg","over","overEvery","overSome","rest","reverse","round","runInContext","spread","template","trim","trimEnd","trimStart","uniqueId","words","zipAll"],
+2:["add","after","ary","assign","assignAllWith","assignIn","assignInAllWith","at","before","bind","bindAll","bindKey","chunk","cloneDeepWith","cloneWith","concat","conformsTo","countBy","curryN","curryRightN","debounce","defaults","defaultsDeep","defaultTo","delay","difference","divide","drop","dropRight","dropRightWhile","dropWhile","endsWith","eq","every","filter","find","findIndex","findKey","findLast","findLastIndex","findLastKey","flatMap","flatMapDeep","flattenDepth","forEach","forEachRight","forIn","forInRight","forOwn","forOwnRight","get","groupBy","gt","gte","has","hasIn","includes","indexOf","intersection","invertBy","invoke","invokeMap","isEqual","isMatch","join","keyBy","lastIndexOf","lt","lte","map","mapKeys","mapValues","matchesProperty","maxBy","meanBy","merge","mergeAllWith","minBy","multiply","nth","omit","omitBy","overArgs","pad","padEnd","padStart","parseInt","partial","partialRight","partition","pick","pickBy","propertyOf","pull","pullAll","pullAt","random","range","rangeRight","rearg","reject","remove","repeat","restFrom","result","sampleSize","some","sortBy","sortedIndex","sortedIndexOf","sortedLastIndex","sortedLastIndexOf","sortedUniqBy","split","spreadFrom","startsWith","subtract","sumBy","take","takeRight","takeRightWhile","takeWhile","tap","throttle","thru","times","trimChars","trimCharsEnd","trimCharsStart","truncate","union","uniqBy","uniqWith","unset","unzipWith","without","wrap","xor","zip","zipObject","zipObjectDeep"],
3:["assignInWith","assignWith","clamp","differenceBy","differenceWith","findFrom","findIndexFrom","findLastFrom","findLastIndexFrom","getOr","includesFrom","indexOfFrom","inRange","intersectionBy","intersectionWith","invokeArgs","invokeArgsMap","isEqualWith","isMatchWith","flatMapDepth","lastIndexOfFrom","mergeWith","orderBy","padChars","padCharsEnd","padCharsStart","pullAllBy","pullAllWith","rangeStep","rangeStepRight","reduce","reduceRight","replace","set","slice","sortedIndexBy","sortedLastIndexBy","transform","unionBy","unionWith","update","xorBy","xorWith","zipWith"],
4:["fill","setWith","updateWith"]},e.aryRearg={2:[1,0],3:[2,0,1],4:[3,2,0,1]},e.iterateeAry={dropRightWhile:1,dropWhile:1,every:1,filter:1,find:1,findFrom:1,findIndex:1,findIndexFrom:1,findKey:1,findLast:1,findLastFrom:1,findLastIndex:1,findLastIndexFrom:1,findLastKey:1,flatMap:1,flatMapDeep:1,flatMapDepth:1,forEach:1,forEachRight:1,forIn:1,forInRight:1,forOwn:1,forOwnRight:1,map:1,mapKeys:1,mapValues:1,partition:1,reduce:2,reduceRight:2,reject:1,remove:1,some:1,takeRightWhile:1,takeWhile:1,times:1,
transform:2},e.iterateeRearg={mapKeys:[1]},e.methodRearg={assignInAllWith:[1,0],assignInWith:[1,2,0],assignAllWith:[1,0],assignWith:[1,2,0],differenceBy:[1,2,0],differenceWith:[1,2,0],getOr:[2,1,0],intersectionBy:[1,2,0],intersectionWith:[1,2,0],isEqualWith:[1,2,0],isMatchWith:[2,1,0],mergeAllWith:[1,0],mergeWith:[1,2,0],padChars:[2,1,0],padCharsEnd:[2,1,0],padCharsStart:[2,1,0],pullAllBy:[2,1,0],pullAllWith:[2,1,0],rangeStep:[1,2,0],rangeStepRight:[1,2,0],setWith:[3,1,2,0],sortedIndexBy:[2,1,0],
diff --git a/dist/lodash.js b/dist/lodash.js
index e64b0af327..ebd96718f0 100644
--- a/dist/lodash.js
+++ b/dist/lodash.js
@@ -12,7 +12,7 @@
var undefined;
/** Used as the semantic version number. */
- var VERSION = '4.17.1';
+ var VERSION = '4.17.2';
/** Used as the size to enable large array optimizations. */
var LARGE_ARRAY_SIZE = 200;
@@ -3805,7 +3805,7 @@
value = baseGet(object, path);
if (predicate(value, path)) {
- baseSet(result, path, value);
+ baseSet(result, castPath(path, object), value);
}
}
return result;
@@ -3881,14 +3881,8 @@
var previous = index;
if (isIndex(index)) {
splice.call(array, index, 1);
- }
- else {
- var path = castPath(index, array),
- object = parent(array, path);
-
- if (object != null) {
- delete object[toKey(last(path))];
- }
+ } else {
+ baseUnset(array, index);
}
}
}
@@ -4352,8 +4346,7 @@
function baseUnset(object, path) {
path = castPath(path, object);
object = parent(object, path);
- var key = toKey(last(path));
- return !(object != null && hasOwnProperty.call(object, key)) || delete object[key];
+ return object == null || delete object[toKey(last(path))];
}
/**
@@ -10847,15 +10840,11 @@
start = start === undefined ? 0 : nativeMax(toInteger(start), 0);
return baseRest(function(args) {
var array = args[start],
- lastIndex = args.length - 1,
otherArgs = castSlice(args, 0, start);
if (array) {
arrayPush(otherArgs, array);
}
- if (start != lastIndex) {
- arrayPush(otherArgs, castSlice(args, start + 1));
- }
return apply(func, this, otherArgs);
});
}
@@ -13470,16 +13459,16 @@
if (object == null) {
return result;
}
- var bitmask = CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG;
+ var isDeep = false;
paths = arrayMap(paths, function(path) {
path = castPath(path, object);
- bitmask |= (path.length > 1 ? CLONE_DEEP_FLAG : 0);
+ isDeep || (isDeep = path.length > 1);
return path;
});
-
copyObject(object, getAllKeysIn(object), result);
- result = baseClone(result, bitmask);
-
+ if (isDeep) {
+ result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG);
+ }
var length = paths.length;
while (length--) {
baseUnset(result, paths[length]);
@@ -13600,8 +13589,8 @@
// Ensure the loop is entered when path is empty.
if (!length) {
- object = undefined;
length = 1;
+ object = undefined;
}
while (++index < length) {
var value = object == null ? undefined : object[toKey(path[index])];
diff --git a/dist/lodash.min.js b/dist/lodash.min.js
index d02d5085f0..cf2fd3ded8 100644
--- a/dist/lodash.min.js
+++ b/dist/lodash.min.js
@@ -17,120 +17,120 @@ n:{try{Mn=Gn&&Gn.binding&&Gn.binding("util");break n}catch(n){}Mn=void 0}var Hn=
"\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i",
"\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S",
"\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe",
-"\u0149":"'n","\u017f":"s"}),et=w({"&":"&","<":"<",">":">",'"':""","'":"'"}),ut=w({"&":"&","<":"<",">":">",""":'"',"'":"'"}),it=function w(En){function On(n){if(xu(n)&&!af(n)&&!(n instanceof Mn)){if(n instanceof zn)return n;if(ci.call(n,"__wrapped__"))return Pe(n)}return new zn(n)}function Sn(){}function zn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=F}function Mn(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,
+"\u0149":"'n","\u017f":"s"}),et=w({"&":"&","<":"<",">":">",'"':""","'":"'"}),ut=w({"&":"&","<":"<",">":">",""":'"',"'":"'"}),it=function w(En){function On(n){if(bu(n)&&!cf(n)&&!(n instanceof Mn)){if(n instanceof zn)return n;if(fi.call(n,"__wrapped__"))return Ne(n)}return new zn(n)}function Sn(){}function zn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=F}function Mn(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,
this.__filtered__=false,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Tn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t=t?n:t)),n}function yt(n,t,r,e,i,o){var f,c=1&t,a=2&t,l=4&t;if(r&&(f=i?r(n,e,i,o):r(n)),f!==F)return f;if(!bu(n))return n;if(e=af(n)){if(f=Ae(n),!c)return Tr(n,f)}else{var s=yo(n),h="[object Function]"==s||"[object GeneratorFunction]"==s;if(sf(n))return Br(n,c);if("[object Object]"==s||"[object Arguments]"==s||h&&!i){if(f=a||h?{}:ke(n),!c)return a?Nr(n,_t(f,n)):Fr(n,pt(f,n))}else{if(!Dn[s])return i?n:{};f=Ee(n,s,yt,c)}}if(o||(o=new Vn),
-i=o.get(n))return i;o.set(n,f);var a=l?a?ge:ve:a?Uu:Lu,p=e?F:a(n);return u(p||n,function(e,u){p&&(u=e,e=n[u]),lt(f,u,yt(e,t,r,u,n,o))}),f}function bt(n){var t=Lu(n);return function(r){return xt(r,n,t)}}function xt(n,t,r){var e=r.length;if(null==n)return!e;for(n=ni(n);e--;){var u=r[e],i=t[u],o=n[u];if(o===F&&!(u in n)||!i(o))return false}return true}function jt(n,t,r){if(typeof n!="function")throw new ei("Expected a function");return jo(function(){n.apply(F,r)},t)}function wt(n,t,r,e){var u=-1,i=c,o=true,f=n.length,s=[],h=t.length;
-if(!f)return s;r&&(t=l(t,S(r))),e?(i=a,o=false):200<=t.length&&(i=R,o=false,t=new qn(t));n:for(;++ut}function Lt(n,t){return null!=n&&ci.call(n,t)}function Ut(n,t){return null!=n&&t in ni(n)}function Ct(n,t,r){for(var e=r?a:c,u=n[0].length,i=n.length,o=i,f=Hu(i),s=1/0,h=[];o--;){var p=n[o];o&&t&&(p=l(p,S(t))),s=Mi(p.length,s),f[o]=!r&&(t||120<=u&&120<=p.length)?new qn(o&&p):F}var p=n[0],_=-1,v=f[0];n:for(;++_t?r:0,Se(t,r)?n[t]:F}function er(n,t,r){var e=-1;return t=l(t.length?t:[Nu],S(be())),n=Qt(n,function(n){return{a:l(t,function(t){return t(n)}),b:++e,c:n}}),A(n,function(n,t){var e;n:{e=-1;for(var u=n.a,i=t.a,o=u.length,f=r.length;++e=f?c:c*("desc"==r[e]?-1:1);
-break n}}e=n.b-t.b}return e})}function ur(n,t){return n=ni(n),ir(n,t,function(t,r){return Bu(n,r)})}function ir(n,t,r){for(var e=-1,u=t.length,i={};++et||9007199254740991t&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Hu(u);++e=u){for(;e>>1,o=n[i];null!==o&&!Au(o)&&(r?o<=t:oe)return e?mr(n[0]):[];for(var u=-1,i=Hu(e);++u=e?n:gr(n,t,r)}function Br(n,t){if(t)return n.slice();var r=n.length,r=yi?yi(r):new n.constructor(r);return n.copy(r),r}function Lr(n){var t=new n.constructor(n.byteLength);return new di(t).set(new di(n)),t}function Ur(n,t){return new n.constructor(t?Lr(n.buffer):n.buffer,n.byteOffset,n.length);
-}function Cr(n,t){if(n!==t){var r=n!==F,e=null===n,u=n===n,i=Au(n),o=t!==F,f=null===t,c=t===t,a=Au(t);if(!f&&!a&&!i&&n>t||i&&o&&c&&!f&&!a||e&&o&&c||!r&&c||!u)return 1;if(!e&&!i&&!a&&nu?F:i,u=1),t=ni(t);++eo&&f[0]!==a&&f[o-1]!==a?[]:C(f,a),o-=c.length,or?r?lr(t,n):t:(r=lr(t,Ri(n/T(t))),Bn.test(t)?Wr($(r),0,n).join(""):r.slice(0,n))}function ie(n,t,e,u){function i(){for(var t=-1,c=arguments.length,a=-1,l=u.length,s=Hu(l+c),h=this&&this!==Zn&&this instanceof i?f:n;++at||e)&&(1&n&&(i[2]=h[2],t|=1&r?0:4),(r=h[3])&&(e=i[3],i[3]=e?Dr(e,r,h[4]):r,i[4]=e?C(i[3],"__lodash_placeholder__"):h[4]),(r=h[5])&&(e=i[5],i[5]=e?Mr(e,r,h[6]):r,i[6]=e?C(i[5],"__lodash_placeholder__"):h[6]),(r=h[7])&&(i[7]=r),128&n&&(i[8]=null==i[8]?h[8]:Mi(i[8],h[8])),null==i[9]&&(i[9]=h[9]),i[0]=h[0],
-i[1]=t),n=i[0],t=i[1],r=i[2],e=i[3],u=i[4],f=i[9]=null==i[9]?c?0:n.length:Di(i[9]-a,0),!f&&24&t&&(t&=-25),De((h?lo:xo)(t&&1!=t?8==t||16==t?Yr(n,t,f):32!=t&&33!=t||u.length?ne.apply(F,i):ie(n,t,r,e):Kr(n,t,r),i),n,t)}function he(n,t,r,e,u,i){var o=1&r,f=n.length,c=t.length;if(f!=c&&!(o&&c>f))return false;if((c=i.get(n))&&i.get(t))return c==t;var c=-1,a=true,l=2&r?new qn:F;for(i.set(n,t),i.set(t,n);++c=t?n:t)),n}function yt(n,t,r,e,i,o){var f,c=1&t,a=2&t,l=4&t;if(r&&(f=i?r(n,e,i,o):r(n)),f!==F)return f;if(!yu(n))return n;if(e=cf(n)){if(f=Ae(n),!c)return Tr(n,f)}else{var s=go(n),h="[object Function]"==s||"[object GeneratorFunction]"==s;if(lf(n))return Br(n,c);if("[object Object]"==s||"[object Arguments]"==s||h&&!i){if(f=a||h?{}:ke(n),!c)return a?Nr(n,_t(f,n)):Fr(n,pt(f,n))}else{if(!Dn[s])return i?n:{};f=Ee(n,s,yt,c)}}if(o||(o=new Vn),
+i=o.get(n))return i;o.set(n,f);var a=l?a?ge:ve:a?Lu:Bu,p=e?F:a(n);return u(p||n,function(e,u){p&&(u=e,e=n[u]),lt(f,u,yt(e,t,r,u,n,o))}),f}function bt(n){var t=Bu(n);return function(r){return xt(r,n,t)}}function xt(n,t,r){var e=r.length;if(null==n)return!e;for(n=Xu(n);e--;){var u=r[e],i=t[u],o=n[u];if(o===F&&!(u in n)||!i(o))return false}return true}function jt(n,t,r){if(typeof n!="function")throw new ri("Expected a function");return xo(function(){n.apply(F,r)},t)}function wt(n,t,r,e){var u=-1,i=c,o=true,f=n.length,s=[],h=t.length;
+if(!f)return s;r&&(t=l(t,S(r))),e?(i=a,o=false):200<=t.length&&(i=R,o=false,t=new qn(t));n:for(;++ut}function Lt(n,t){return null!=n&&fi.call(n,t)}function Ut(n,t){return null!=n&&t in Xu(n)}function Ct(n,t,r){for(var e=r?a:c,u=n[0].length,i=n.length,o=i,f=Gu(i),s=1/0,h=[];o--;){var p=n[o];o&&t&&(p=l(p,S(t))),s=Di(p.length,s),f[o]=!r&&(t||120<=u&&120<=p.length)?new qn(o&&p):F}var p=n[0],_=-1,v=f[0];n:for(;++_t.length?n:Rt(n,gr(t,0,-1)),t=null==n?n:n[Te(Ke(t))],null==t?F:r(t,n,e)}function Tt(n){return bu(n)&&"[object Arguments]"==Wt(n)}function $t(n){return bu(n)&&"[object ArrayBuffer]"==Wt(n)}function Ft(n){return bu(n)&&"[object Date]"==Wt(n);
+}function Nt(n,t,r,e,u){if(n===t)t=true;else if(null==n||null==t||!yu(n)&&!bu(t))t=n!==n&&t!==t;else n:{var i=cf(n),o=cf(t),f="[object Array]",c="[object Array]";i||(f=go(n),f="[object Arguments]"==f?"[object Object]":f),o||(c=go(t),c="[object Arguments]"==c?"[object Object]":c);var a="[object Object]"==f,o="[object Object]"==c;if((c=f==c)&&lf(n)){if(!lf(t)){t=false;break n}i=true,a=false}if(c&&!a)u||(u=new Vn),t=i||vf(n)?he(n,t,r,e,Nt,u):pe(n,t,f,r,e,Nt,u);else{if(!(1&r)&&(i=a&&fi.call(n,"__wrapped__"),f=o&&fi.call(t,"__wrapped__"),
+i||f)){n=i?n.value():n,t=f?t.value():t,u||(u=new Vn),t=Nt(n,t,r,e,u);break n}if(c)t:if(u||(u=new Vn),i=1&r,f=Bu(n),o=f.length,c=Bu(t).length,o==c||i){for(a=o;a--;){var l=f[a];if(!(i?l in t:fi.call(t,l))){t=false;break t}}if((c=u.get(n))&&u.get(t))t=c==t;else{c=true,u.set(n,t),u.set(t,n);for(var s=i;++at?r:0,Se(t,r)?n[t]:F}function er(n,t,r){var e=-1;return t=l(t.length?t:[Fu],S(be())),n=Qt(n,function(n){return{a:l(t,function(t){return t(n)}),b:++e,c:n}}),A(n,function(n,t){var e;n:{e=-1;for(var u=n.a,i=t.a,o=u.length,f=r.length;++e=f?c:c*("desc"==r[e]?-1:1);
+break n}}e=n.b-t.b}return e})}function ur(n,t){return n=Xu(n),ir(n,t,function(t,r){return Wu(n,r)})}function ir(n,t,r){for(var e=-1,u=t.length,i={};++et||9007199254740991t&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Gu(u);++e=u){for(;e>>1,o=n[i];null!==o&&!mu(o)&&(r?o<=t:ot.length?n:Rt(n,gr(t,0,-1)),
+null==n||delete n[Te(Ke(t))]}function kr(n,t,r,e){for(var u=n.length,i=e?u:-1;(e?i--:++ie)return e?mr(n[0]):[];for(var u=-1,i=Gu(e);++u=e?n:gr(n,t,r)}function Br(n,t){if(t)return n.slice();var r=n.length,r=di?di(r):new n.constructor(r);return n.copy(r),r}function Lr(n){var t=new n.constructor(n.byteLength);return new gi(t).set(new gi(n)),t}function Ur(n,t){return new n.constructor(t?Lr(n.buffer):n.buffer,n.byteOffset,n.length)}function Cr(n,t){
+if(n!==t){var r=n!==F,e=null===n,u=n===n,i=mu(n),o=t!==F,f=null===t,c=t===t,a=mu(t);if(!f&&!a&&!i&&n>t||i&&o&&c&&!f&&!a||e&&o&&c||!r&&c||!u)return 1;if(!e&&!i&&!a&&nu?F:i,u=1),t=Xu(t);++eo&&f[0]!==a&&f[o-1]!==a?[]:C(f,a),o-=c.length,or?r?lr(t,n):t:(r=lr(t,Ii(n/T(t))),Bn.test(t)?Wr($(r),0,n).join(""):r.slice(0,n))}function ie(n,t,e,u){function i(){for(var t=-1,c=arguments.length,a=-1,l=u.length,s=Gu(l+c),h=this&&this!==Zn&&this instanceof i?f:n;++at||e)&&(1&n&&(i[2]=h[2],t|=1&r?0:4),(r=h[3])&&(e=i[3],i[3]=e?Dr(e,r,h[4]):r,i[4]=e?C(i[3],"__lodash_placeholder__"):h[4]),(r=h[5])&&(e=i[5],i[5]=e?Mr(e,r,h[6]):r,i[6]=e?C(i[5],"__lodash_placeholder__"):h[6]),(r=h[7])&&(i[7]=r),128&n&&(i[8]=null==i[8]?h[8]:Di(i[8],h[8])),null==i[9]&&(i[9]=h[9]),i[0]=h[0],
+i[1]=t),n=i[0],t=i[1],r=i[2],e=i[3],u=i[4],f=i[9]=null==i[9]?c?0:n.length:Ci(i[9]-a,0),!f&&24&t&&(t&=-25),Ce((h?ao:bo)(t&&1!=t?8==t||16==t?Yr(n,t,f):32!=t&&33!=t||u.length?ne.apply(F,i):ie(n,t,r,e):Kr(n,t,r),i),n,t)}function he(n,t,r,e,u,i){var o=1&r,f=n.length,c=t.length;if(f!=c&&!(o&&c>f))return false;if((c=i.get(n))&&i.get(t))return c==t;var c=-1,a=true,l=2&r?new qn:F;for(i.set(n,t),i.set(t,n);++ct.length?n:Rt(n,gr(t,0,-1))}function De(n,t,r){var e=t+"";t=wo;var u,i=Ne;return u=(u=e.match(hn))?u[1].split(pn):[],r=i(u,r),(i=r.length)&&(u=i-1,r[u]=(1r&&(r=Di(e+r,0)),g(n,be(t,3),r)):-1}function qe(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e-1;return r!==F&&(u=Ou(r),u=0>r?Di(e+u,0):Mi(u,e-1)),
-g(n,be(t,3),u,true)}function Ve(n){return(null==n?0:n.length)?Et(n,1):[]}function Ke(n){return n&&n.length?n[0]:F}function Ge(n){var t=null==n?0:n.length;return t?n[t-1]:F}function He(n,t){return n&&n.length&&t&&t.length?fr(n,t):n}function Je(n){return null==n?n:Ni.call(n)}function Ye(n){if(!n||!n.length)return[];var t=0;return n=f(n,function(n){if(_u(n))return t=Di(n.length,t),true}),E(t,function(t){return l(n,j(t))})}function Qe(n,t){if(!n||!n.length)return[];var e=Ye(n);return null==t?e:l(e,function(n){
-return r(t,F,n)})}function Xe(n){return n=On(n),n.__chain__=true,n}function nu(n,t){return t(n)}function tu(){return this}function ru(n,t){return(af(n)?u:oo)(n,be(t,3))}function eu(n,t){return(af(n)?i:fo)(n,be(t,3))}function uu(n,t){return(af(n)?l:Qt)(n,be(t,3))}function iu(n,t,r){return t=r?F:t,t=n&&null==t?n.length:t,se(n,128,F,F,F,F,t)}function ou(n,t){var r;if(typeof t!="function")throw new ei("Expected a function");return n=Ou(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=F),
-r}}function fu(n,t,r){return t=r?F:t,n=se(n,8,F,F,F,F,F,t),n.placeholder=fu.placeholder,n}function cu(n,t,r){return t=r?F:t,n=se(n,16,F,F,F,F,F,t),n.placeholder=cu.placeholder,n}function au(n,t,r){function e(t){var r=c,e=a;return c=a=F,_=t,s=n.apply(e,r)}function u(n){var r=n-p;return n-=_,p===F||r>=t||0>r||g&&n>=l}function i(){var n=Jo();if(u(n))return o(n);var r,e=jo;r=n-_,n=t-(n-p),r=g?Mi(n,l-r):n,h=e(i,r)}function o(n){return h=F,d&&c?e(n):(c=a=F,s)}function f(){var n=Jo(),r=u(n);if(c=arguments,
-a=this,p=n,r){if(h===F)return _=n=p,h=jo(i,t),v?e(n):s;if(g)return h=jo(i,t),e(p)}return h===F&&(h=jo(i,t)),s}var c,a,l,s,h,p,_=0,v=false,g=false,d=true;if(typeof n!="function")throw new ei("Expected a function");return t=Iu(t)||0,bu(r)&&(v=!!r.leading,l=(g="maxWait"in r)?Di(Iu(r.maxWait)||0,t):l,d="trailing"in r?!!r.trailing:d),f.cancel=function(){h!==F&&ho(h),_=0,c=p=a=h=F},f.flush=function(){return h===F?s:o(Jo())},f}function lu(n,t){function r(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;return i.has(u)?i.get(u):(e=n.apply(this,e),
-r.cache=i.set(u,e)||i,e)}if(typeof n!="function"||null!=t&&typeof t!="function")throw new ei("Expected a function");return r.cache=new(lu.Cache||Pn),r}function su(n){if(typeof n!="function")throw new ei("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function hu(n,t){return n===t||n!==n&&t!==t}function pu(n){return null!=n&&yu(n.length)&&!gu(n);
-}function _u(n){return xu(n)&&pu(n)}function vu(n){if(!xu(n))return false;var t=Wt(n);return"[object Error]"==t||"[object DOMException]"==t||typeof n.message=="string"&&typeof n.name=="string"&&!wu(n)}function gu(n){return!!bu(n)&&(n=Wt(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function du(n){return typeof n=="number"&&n==Ou(n)}function yu(n){return typeof n=="number"&&-1=n}function bu(n){var t=typeof n;return null!=n&&("object"==t||"function"==t);
-}function xu(n){return null!=n&&typeof n=="object"}function ju(n){return typeof n=="number"||xu(n)&&"[object Number]"==Wt(n)}function wu(n){return!(!xu(n)||"[object Object]"!=Wt(n))&&(n=bi(n),null===n||(n=ci.call(n,"constructor")&&n.constructor,typeof n=="function"&&n instanceof n&&fi.call(n)==hi))}function mu(n){return typeof n=="string"||!af(n)&&xu(n)&&"[object String]"==Wt(n)}function Au(n){return typeof n=="symbol"||xu(n)&&"[object Symbol]"==Wt(n)}function ku(n){if(!n)return[];if(pu(n))return mu(n)?$(n):Tr(n);
-if(Ai&&n[Ai]){n=n[Ai]();for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}return t=yo(n),("[object Map]"==t?L:"[object Set]"==t?D:Du)(n)}function Eu(n){return n?(n=Iu(n),n===N||n===-N?1.7976931348623157e308*(0>n?-1:1):n===n?n:0):0===n?n:0}function Ou(n){n=Eu(n);var t=n%1;return n===n?t?n-t:n:0}function Su(n){return n?dt(Ou(n),0,4294967295):0}function Iu(n){if(typeof n=="number")return n;if(Au(n))return P;if(bu(n)&&(n=typeof n.valueOf=="function"?n.valueOf():n,n=bu(n)?n+"":n),typeof n!="string")return 0===n?n:+n;
-n=n.replace(cn,"");var t=bn.test(n);return t||jn.test(n)?Fn(n.slice(2),t?2:8):yn.test(n)?P:+n}function Ru(n){return $r(n,Uu(n))}function zu(n){return null==n?"":wr(n)}function Wu(n,t,r){return n=null==n?F:Rt(n,t),n===F?r:n}function Bu(n,t){return null!=n&&me(n,t,Ut)}function Lu(n){return pu(n)?Gn(n):Jt(n)}function Uu(n){if(pu(n))n=Gn(n,true);else if(bu(n)){var t,r=We(n),e=[];for(t in n)("constructor"!=t||!r&&ci.call(n,t))&&e.push(t);n=e}else{if(t=[],null!=n)for(r in ni(n))t.push(r);n=t}return n}function Cu(n,t){
-if(null==n)return{};var r=l(ge(n),function(n){return[n]});return t=be(t),ir(n,r,function(n,r){return t(n,r[0])})}function Du(n){return null==n?[]:I(n,Lu(n))}function Mu(n){return Nf(zu(n).toLowerCase())}function Tu(n){return(n=zu(n))&&n.replace(mn,rt).replace(Rn,"")}function $u(n,t,r){return n=zu(n),t=r?F:t,t===F?Ln.test(n)?n.match(Wn)||[]:n.match(_n)||[]:n.match(t)||[]}function Fu(n){return function(){return n}}function Nu(n){return n}function Pu(n){return Ht(typeof n=="function"?n:yt(n,1))}function Zu(n,t,r){
-var e=Lu(t),i=It(t,e);null!=r||bu(t)&&(i.length||!e.length)||(r=t,t=n,n=this,i=It(t,Lu(t)));var o=!(bu(r)&&"chain"in r&&!r.chain),f=gu(n);return u(i,function(r){var e=t[r];n[r]=e,f&&(n.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=n(this.__wrapped__);return(r.__actions__=Tr(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,s([this.value()],arguments))})}),n}function qu(){}function Vu(n){return Re(n)?j($e(n)):or(n)}function Ku(){return[]}function Gu(){
-return false}En=null==En?Zn:it.defaults(Zn.Object(),En,it.pick(Zn,Un));var Hu=En.Array,Ju=En.Date,Yu=En.Error,Qu=En.Function,Xu=En.Math,ni=En.Object,ti=En.RegExp,ri=En.String,ei=En.TypeError,ui=Hu.prototype,ii=ni.prototype,oi=En["__core-js_shared__"],fi=Qu.prototype.toString,ci=ii.hasOwnProperty,ai=0,li=function(){var n=/[^.]+$/.exec(oi&&oi.keys&&oi.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),si=ii.toString,hi=fi.call(ni),pi=Zn._,_i=ti("^"+fi.call(ci).replace(on,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),vi=Kn?En.Buffer:F,gi=En.Symbol,di=En.Uint8Array,yi=vi?vi.f:F,bi=U(ni.getPrototypeOf,ni),xi=ni.create,ji=ii.propertyIsEnumerable,wi=ui.splice,mi=gi?gi.isConcatSpreadable:F,Ai=gi?gi.iterator:F,ki=gi?gi.toStringTag:F,Ei=function(){
-try{var n=we(ni,"defineProperty");return n({},"",{}),n}catch(n){}}(),Oi=En.clearTimeout!==Zn.clearTimeout&&En.clearTimeout,Si=Ju&&Ju.now!==Zn.Date.now&&Ju.now,Ii=En.setTimeout!==Zn.setTimeout&&En.setTimeout,Ri=Xu.ceil,zi=Xu.floor,Wi=ni.getOwnPropertySymbols,Bi=vi?vi.isBuffer:F,Li=En.isFinite,Ui=ui.join,Ci=U(ni.keys,ni),Di=Xu.max,Mi=Xu.min,Ti=Ju.now,$i=En.parseInt,Fi=Xu.random,Ni=ui.reverse,Pi=we(En,"DataView"),Zi=we(En,"Map"),qi=we(En,"Promise"),Vi=we(En,"Set"),Ki=we(En,"WeakMap"),Gi=we(ni,"create"),Hi=Ki&&new Ki,Ji={},Yi=Fe(Pi),Qi=Fe(Zi),Xi=Fe(qi),no=Fe(Vi),to=Fe(Ki),ro=gi?gi.prototype:F,eo=ro?ro.valueOf:F,uo=ro?ro.toString:F,io=function(){
-function n(){}return function(t){return bu(t)?xi?xi(t):(n.prototype=t,t=new n,n.prototype=F,t):{}}}();On.templateSettings={escape:Q,evaluate:X,interpolate:nn,variable:"",imports:{_:On}},On.prototype=Sn.prototype,On.prototype.constructor=On,zn.prototype=io(Sn.prototype),zn.prototype.constructor=zn,Mn.prototype=io(Sn.prototype),Mn.prototype.constructor=Mn,Tn.prototype.clear=function(){this.__data__=Gi?Gi(null):{},this.size=0},Tn.prototype.delete=function(n){return n=this.has(n)&&delete this.__data__[n],
-this.size-=n?1:0,n},Tn.prototype.get=function(n){var t=this.__data__;return Gi?(n=t[n],"__lodash_hash_undefined__"===n?F:n):ci.call(t,n)?t[n]:F},Tn.prototype.has=function(n){var t=this.__data__;return Gi?t[n]!==F:ci.call(t,n)},Tn.prototype.set=function(n,t){var r=this.__data__;return this.size+=this.has(n)?0:1,r[n]=Gi&&t===F?"__lodash_hash_undefined__":t,this},Nn.prototype.clear=function(){this.__data__=[],this.size=0},Nn.prototype.delete=function(n){var t=this.__data__;return n=st(t,n),!(0>n)&&(n==t.length-1?t.pop():wi.call(t,n,1),
---this.size,true)},Nn.prototype.get=function(n){var t=this.__data__;return n=st(t,n),0>n?F:t[n][1]},Nn.prototype.has=function(n){return-1e?(++this.size,r.push([n,t])):r[e][1]=t,this},Pn.prototype.clear=function(){this.size=0,this.__data__={hash:new Tn,map:new(Zi||Nn),string:new Tn}},Pn.prototype.delete=function(n){return n=xe(this,n).delete(n),this.size-=n?1:0,n},Pn.prototype.get=function(n){return xe(this,n).get(n);
+h(e,n,new r.constructor);case"[object Number]":case"[object String]":return new o(r);case"[object RegExp]":return e=new r.constructor(r.source,dn.exec(r)),e.lastIndex=r.lastIndex,e;case"[object Set]":return e=i?u(D(r),1):D(r),h(e,t,new r.constructor);case"[object Symbol]":return ro?Xu(ro.call(r)):{}}}function Oe(n){return cf(n)||ff(n)||!!(wi&&n&&n[wi])}function Se(n,t){return t=null==t?9007199254740991:t,!!t&&(typeof n=="number"||wn.test(n))&&-1r&&(r=Ci(e+r,0)),g(n,be(t,3),r)):-1}function Ze(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e-1;return r!==F&&(u=Eu(r),u=0>r?Ci(e+u,0):Di(u,e-1)),g(n,be(t,3),u,true)}function qe(n){return(null==n?0:n.length)?Et(n,1):[];
+}function Ve(n){return n&&n.length?n[0]:F}function Ke(n){var t=null==n?0:n.length;return t?n[t-1]:F}function Ge(n,t){return n&&n.length&&t&&t.length?fr(n,t):n}function He(n){return null==n?n:Fi.call(n)}function Je(n){if(!n||!n.length)return[];var t=0;return n=f(n,function(n){if(pu(n))return t=Ci(n.length,t),true}),E(t,function(t){return l(n,j(t))})}function Ye(n,t){if(!n||!n.length)return[];var e=Je(n);return null==t?e:l(e,function(n){return r(t,F,n)})}function Qe(n){return n=On(n),n.__chain__=true,n;
+}function Xe(n,t){return t(n)}function nu(){return this}function tu(n,t){return(cf(n)?u:io)(n,be(t,3))}function ru(n,t){return(cf(n)?i:oo)(n,be(t,3))}function eu(n,t){return(cf(n)?l:Qt)(n,be(t,3))}function uu(n,t,r){return t=r?F:t,t=n&&null==t?n.length:t,se(n,128,F,F,F,F,t)}function iu(n,t){var r;if(typeof t!="function")throw new ri("Expected a function");return n=Eu(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=F),r}}function ou(n,t,r){return t=r?F:t,n=se(n,8,F,F,F,F,F,t),n.placeholder=ou.placeholder,
+n}function fu(n,t,r){return t=r?F:t,n=se(n,16,F,F,F,F,F,t),n.placeholder=fu.placeholder,n}function cu(n,t,r){function e(t){var r=c,e=a;return c=a=F,_=t,s=n.apply(e,r)}function u(n){var r=n-p;return n-=_,p===F||r>=t||0>r||g&&n>=l}function i(){var n=Ho();if(u(n))return o(n);var r,e=xo;r=n-_,n=t-(n-p),r=g?Di(n,l-r):n,h=e(i,r)}function o(n){return h=F,d&&c?e(n):(c=a=F,s)}function f(){var n=Ho(),r=u(n);if(c=arguments,a=this,p=n,r){if(h===F)return _=n=p,h=xo(i,t),v?e(n):s;if(g)return h=xo(i,t),e(p)}return h===F&&(h=xo(i,t)),
+s}var c,a,l,s,h,p,_=0,v=false,g=false,d=true;if(typeof n!="function")throw new ri("Expected a function");return t=Su(t)||0,yu(r)&&(v=!!r.leading,l=(g="maxWait"in r)?Ci(Su(r.maxWait)||0,t):l,d="trailing"in r?!!r.trailing:d),f.cancel=function(){h!==F&&so(h),_=0,c=p=a=h=F},f.flush=function(){return h===F?s:o(Ho())},f}function au(n,t){function r(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;return i.has(u)?i.get(u):(e=n.apply(this,e),r.cache=i.set(u,e)||i,e)}if(typeof n!="function"||null!=t&&typeof t!="function")throw new ri("Expected a function");
+return r.cache=new(au.Cache||Pn),r}function lu(n){if(typeof n!="function")throw new ri("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function su(n,t){return n===t||n!==n&&t!==t}function hu(n){return null!=n&&du(n.length)&&!vu(n)}function pu(n){return bu(n)&&hu(n)}function _u(n){if(!bu(n))return false;var t=Wt(n);return"[object Error]"==t||"[object DOMException]"==t||typeof n.message=="string"&&typeof n.name=="string"&&!ju(n);
+}function vu(n){return!!yu(n)&&(n=Wt(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function gu(n){return typeof n=="number"&&n==Eu(n)}function du(n){return typeof n=="number"&&-1=n}function yu(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}function bu(n){return null!=n&&typeof n=="object"}function xu(n){return typeof n=="number"||bu(n)&&"[object Number]"==Wt(n)}function ju(n){return!(!bu(n)||"[object Object]"!=Wt(n))&&(n=yi(n),
+null===n||(n=fi.call(n,"constructor")&&n.constructor,typeof n=="function"&&n instanceof n&&oi.call(n)==si))}function wu(n){return typeof n=="string"||!cf(n)&&bu(n)&&"[object String]"==Wt(n)}function mu(n){return typeof n=="symbol"||bu(n)&&"[object Symbol]"==Wt(n)}function Au(n){if(!n)return[];if(hu(n))return wu(n)?$(n):Tr(n);if(mi&&n[mi]){n=n[mi]();for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}return t=go(n),("[object Map]"==t?L:"[object Set]"==t?D:Cu)(n)}function ku(n){return n?(n=Su(n),
+n===N||n===-N?1.7976931348623157e308*(0>n?-1:1):n===n?n:0):0===n?n:0}function Eu(n){n=ku(n);var t=n%1;return n===n?t?n-t:n:0}function Ou(n){return n?dt(Eu(n),0,4294967295):0}function Su(n){if(typeof n=="number")return n;if(mu(n))return P;if(yu(n)&&(n=typeof n.valueOf=="function"?n.valueOf():n,n=yu(n)?n+"":n),typeof n!="string")return 0===n?n:+n;n=n.replace(cn,"");var t=bn.test(n);return t||jn.test(n)?Fn(n.slice(2),t?2:8):yn.test(n)?P:+n}function Iu(n){return $r(n,Lu(n))}function Ru(n){return null==n?"":wr(n);
+}function zu(n,t,r){return n=null==n?F:Rt(n,t),n===F?r:n}function Wu(n,t){return null!=n&&me(n,t,Ut)}function Bu(n){return hu(n)?Gn(n):Jt(n)}function Lu(n){if(hu(n))n=Gn(n,true);else if(yu(n)){var t,r=We(n),e=[];for(t in n)("constructor"!=t||!r&&fi.call(n,t))&&e.push(t);n=e}else{if(t=[],null!=n)for(r in Xu(n))t.push(r);n=t}return n}function Uu(n,t){if(null==n)return{};var r=l(ge(n),function(n){return[n]});return t=be(t),ir(n,r,function(n,r){return t(n,r[0])})}function Cu(n){return null==n?[]:I(n,Bu(n));
+}function Du(n){return Ff(Ru(n).toLowerCase())}function Mu(n){return(n=Ru(n))&&n.replace(mn,rt).replace(Rn,"")}function Tu(n,t,r){return n=Ru(n),t=r?F:t,t===F?Ln.test(n)?n.match(Wn)||[]:n.match(_n)||[]:n.match(t)||[]}function $u(n){return function(){return n}}function Fu(n){return n}function Nu(n){return Ht(typeof n=="function"?n:yt(n,1))}function Pu(n,t,r){var e=Bu(t),i=It(t,e);null!=r||yu(t)&&(i.length||!e.length)||(r=t,t=n,n=this,i=It(t,Bu(t)));var o=!(yu(r)&&"chain"in r&&!r.chain),f=vu(n);return u(i,function(r){
+var e=t[r];n[r]=e,f&&(n.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=n(this.__wrapped__);return(r.__actions__=Tr(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,s([this.value()],arguments))})}),n}function Zu(){}function qu(n){return Re(n)?j(Te(n)):or(n)}function Vu(){return[]}function Ku(){return false}En=null==En?Zn:it.defaults(Zn.Object(),En,it.pick(Zn,Un));var Gu=En.Array,Hu=En.Date,Ju=En.Error,Yu=En.Function,Qu=En.Math,Xu=En.Object,ni=En.RegExp,ti=En.String,ri=En.TypeError,ei=Gu.prototype,ui=Xu.prototype,ii=En["__core-js_shared__"],oi=Yu.prototype.toString,fi=ui.hasOwnProperty,ci=0,ai=function(){
+var n=/[^.]+$/.exec(ii&&ii.keys&&ii.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),li=ui.toString,si=oi.call(Xu),hi=Zn._,pi=ni("^"+oi.call(fi).replace(on,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),_i=Kn?En.Buffer:F,vi=En.Symbol,gi=En.Uint8Array,di=_i?_i.f:F,yi=U(Xu.getPrototypeOf,Xu),bi=Xu.create,xi=ui.propertyIsEnumerable,ji=ei.splice,wi=vi?vi.isConcatSpreadable:F,mi=vi?vi.iterator:F,Ai=vi?vi.toStringTag:F,ki=function(){try{var n=we(Xu,"defineProperty");
+return n({},"",{}),n}catch(n){}}(),Ei=En.clearTimeout!==Zn.clearTimeout&&En.clearTimeout,Oi=Hu&&Hu.now!==Zn.Date.now&&Hu.now,Si=En.setTimeout!==Zn.setTimeout&&En.setTimeout,Ii=Qu.ceil,Ri=Qu.floor,zi=Xu.getOwnPropertySymbols,Wi=_i?_i.isBuffer:F,Bi=En.isFinite,Li=ei.join,Ui=U(Xu.keys,Xu),Ci=Qu.max,Di=Qu.min,Mi=Hu.now,Ti=En.parseInt,$i=Qu.random,Fi=ei.reverse,Ni=we(En,"DataView"),Pi=we(En,"Map"),Zi=we(En,"Promise"),qi=we(En,"Set"),Vi=we(En,"WeakMap"),Ki=we(Xu,"create"),Gi=Vi&&new Vi,Hi={},Ji=$e(Ni),Yi=$e(Pi),Qi=$e(Zi),Xi=$e(qi),no=$e(Vi),to=vi?vi.prototype:F,ro=to?to.valueOf:F,eo=to?to.toString:F,uo=function(){
+function n(){}return function(t){return yu(t)?bi?bi(t):(n.prototype=t,t=new n,n.prototype=F,t):{}}}();On.templateSettings={escape:Q,evaluate:X,interpolate:nn,variable:"",imports:{_:On}},On.prototype=Sn.prototype,On.prototype.constructor=On,zn.prototype=uo(Sn.prototype),zn.prototype.constructor=zn,Mn.prototype=uo(Sn.prototype),Mn.prototype.constructor=Mn,Tn.prototype.clear=function(){this.__data__=Ki?Ki(null):{},this.size=0},Tn.prototype.delete=function(n){return n=this.has(n)&&delete this.__data__[n],
+this.size-=n?1:0,n},Tn.prototype.get=function(n){var t=this.__data__;return Ki?(n=t[n],"__lodash_hash_undefined__"===n?F:n):fi.call(t,n)?t[n]:F},Tn.prototype.has=function(n){var t=this.__data__;return Ki?t[n]!==F:fi.call(t,n)},Tn.prototype.set=function(n,t){var r=this.__data__;return this.size+=this.has(n)?0:1,r[n]=Ki&&t===F?"__lodash_hash_undefined__":t,this},Nn.prototype.clear=function(){this.__data__=[],this.size=0},Nn.prototype.delete=function(n){var t=this.__data__;return n=st(t,n),!(0>n)&&(n==t.length-1?t.pop():ji.call(t,n,1),
+--this.size,true)},Nn.prototype.get=function(n){var t=this.__data__;return n=st(t,n),0>n?F:t[n][1]},Nn.prototype.has=function(n){return-1e?(++this.size,r.push([n,t])):r[e][1]=t,this},Pn.prototype.clear=function(){this.size=0,this.__data__={hash:new Tn,map:new(Pi||Nn),string:new Tn}},Pn.prototype.delete=function(n){return n=xe(this,n).delete(n),this.size-=n?1:0,n},Pn.prototype.get=function(n){return xe(this,n).get(n);
},Pn.prototype.has=function(n){return xe(this,n).has(n)},Pn.prototype.set=function(n,t){var r=xe(this,n),e=r.size;return r.set(n,t),this.size+=r.size==e?0:1,this},qn.prototype.add=qn.prototype.push=function(n){return this.__data__.set(n,"__lodash_hash_undefined__"),this},qn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.clear=function(){this.__data__=new Nn,this.size=0},Vn.prototype.delete=function(n){var t=this.__data__;return n=t.delete(n),this.size=t.size,n},Vn.prototype.get=function(n){
-return this.__data__.get(n)},Vn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.set=function(n,t){var r=this.__data__;if(r instanceof Nn){var e=r.__data__;if(!Zi||199>e.length)return e.push([n,t]),this.size=++r.size,this;r=this.__data__=new Pn(e)}return r.set(n,t),this.size=r.size,this};var oo=qr(Ot),fo=qr(St,true),co=Vr(),ao=Vr(true),lo=Hi?function(n,t){return Hi.set(n,t),n}:Nu,so=Ei?function(n,t){return Ei(n,"toString",{configurable:true,enumerable:false,value:Fu(t),writable:true})}:Nu,ho=Oi||function(n){
-return Zn.clearTimeout(n)},po=Vi&&1/D(new Vi([,-0]))[1]==N?function(n){return new Vi(n)}:qu,_o=Hi?function(n){return Hi.get(n)}:qu,vo=Wi?U(Wi,ni):Ku,go=Wi?function(n){for(var t=[];n;)s(t,vo(n)),n=bi(n);return t}:Ku,yo=Wt;(Pi&&"[object DataView]"!=yo(new Pi(new ArrayBuffer(1)))||Zi&&"[object Map]"!=yo(new Zi)||qi&&"[object Promise]"!=yo(qi.resolve())||Vi&&"[object Set]"!=yo(new Vi)||Ki&&"[object WeakMap]"!=yo(new Ki))&&(yo=function(n){var t=Wt(n);if(n=(n="[object Object]"==t?n.constructor:F)?Fe(n):"")switch(n){
-case Yi:return"[object DataView]";case Qi:return"[object Map]";case Xi:return"[object Promise]";case no:return"[object Set]";case to:return"[object WeakMap]"}return t});var bo=oi?gu:Gu,xo=Me(lo),jo=Ii||function(n,t){return Zn.setTimeout(n,t)},wo=Me(so),mo=function(n){n=lu(n,function(n){return 500===t.size&&t.clear(),n});var t=n.cache;return n}(function(n){var t=[];return en.test(n)&&t.push(""),n.replace(un,function(n,r,e,u){t.push(e?u.replace(vn,"$1"):r||n)}),t}),Ao=sr(function(n,t){return _u(n)?wt(n,Et(t,1,_u,true)):[];
-}),ko=sr(function(n,t){var r=Ge(t);return _u(r)&&(r=F),_u(n)?wt(n,Et(t,1,_u,true),be(r,2)):[]}),Eo=sr(function(n,t){var r=Ge(t);return _u(r)&&(r=F),_u(n)?wt(n,Et(t,1,_u,true),F,r):[]}),Oo=sr(function(n){var t=l(n,Ir);return t.length&&t[0]===n[0]?Ct(t):[]}),So=sr(function(n){var t=Ge(n),r=l(n,Ir);return t===Ge(r)?t=F:r.pop(),r.length&&r[0]===n[0]?Ct(r,be(t,2)):[]}),Io=sr(function(n){var t=Ge(n),r=l(n,Ir);return(t=typeof t=="function"?t:F)&&r.pop(),r.length&&r[0]===n[0]?Ct(r,F,t):[]}),Ro=sr(He),zo=_e(function(n,t){
-var r=null==n?0:n.length,e=gt(n,t);return cr(n,l(t,function(n){return Se(n,r)?+n:n}).sort(Cr)),e}),Wo=sr(function(n){return mr(Et(n,1,_u,true))}),Bo=sr(function(n){var t=Ge(n);return _u(t)&&(t=F),mr(Et(n,1,_u,true),be(t,2))}),Lo=sr(function(n){var t=Ge(n),t=typeof t=="function"?t:F;return mr(Et(n,1,_u,true),F,t)}),Uo=sr(function(n,t){return _u(n)?wt(n,t):[]}),Co=sr(function(n){return Or(f(n,_u))}),Do=sr(function(n){var t=Ge(n);return _u(t)&&(t=F),Or(f(n,_u),be(t,2))}),Mo=sr(function(n){var t=Ge(n),t=typeof t=="function"?t:F;
-return Or(f(n,_u),F,t)}),To=sr(Ye),$o=sr(function(n){var t=n.length,t=1=t}),cf=Tt(function(){return arguments}())?Tt:function(n){return xu(n)&&ci.call(n,"callee")&&!ji.call(n,"callee")},af=Hu.isArray,lf=Hn?S(Hn):$t,sf=Bi||Gu,hf=Jn?S(Jn):Ft,pf=Yn?S(Yn):Pt,_f=Qn?S(Qn):Vt,vf=Xn?S(Xn):Kt,gf=nt?S(nt):Gt,df=fe(Yt),yf=fe(function(n,t){return n<=t}),bf=Zr(function(n,t){if(We(t)||pu(t))$r(t,Lu(t),n);else for(var r in t)ci.call(t,r)&<(n,r,t[r]);
-}),xf=Zr(function(n,t){$r(t,Uu(t),n)}),jf=Zr(function(n,t,r,e){$r(t,Uu(t),n,e)}),wf=Zr(function(n,t,r,e){$r(t,Lu(t),n,e)}),mf=_e(gt),Af=sr(function(n){return n.push(F,ct),r(jf,F,n)}),kf=sr(function(n){return n.push(F,Le),r(Rf,F,n)}),Ef=te(function(n,t,r){n[t]=r},Fu(Nu)),Of=te(function(n,t,r){ci.call(n,t)?n[t].push(r):n[t]=[r]},be),Sf=sr(Mt),If=Zr(function(n,t,r){tr(n,t,r)}),Rf=Zr(function(n,t,r,e){tr(n,t,r,e)}),zf=_e(function(n,t){var r={};if(null==n)return r;var e=6;t=l(t,function(t){return t=zr(t,n),
-e|=1--n)return t.apply(this,arguments)}},On.ary=iu,On.assign=bf,On.assignIn=xf,On.assignInWith=jf,On.assignWith=wf,On.at=mf,On.before=ou,On.bind=Yo,On.bindAll=Zf,On.bindKey=Qo,On.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return af(n)?n:[n]},On.chain=Xe,On.chunk=function(n,t,r){if(t=(r?Ie(n,t,r):t===F)?1:Di(Ou(t),0),r=null==n?0:n.length,!r||1>t)return[];
-for(var e=0,u=0,i=Hu(Ri(r/t));et?0:t,e)):[]},On.dropRight=function(n,t,r){var e=null==n?0:n.length;
-return e?(t=r||t===F?1:Ou(t),t=e-t,gr(n,0,0>t?0:t)):[]},On.dropRightWhile=function(n,t){return n&&n.length?kr(n,be(t,3),true,true):[]},On.dropWhile=function(n,t){return n&&n.length?kr(n,be(t,3),true):[]},On.fill=function(n,t,r,e){var u=null==n?0:n.length;if(!u)return[];for(r&&typeof r!="number"&&Ie(n,t,r)&&(r=0,e=u),u=n.length,r=Ou(r),0>r&&(r=-r>u?0:u+r),e=e===F||e>u?u:Ou(e),0>e&&(e+=u),e=r>e?0:Su(e);r>>0,r?(n=zu(n))&&(typeof t=="string"||null!=t&&!_f(t))&&(t=wr(t),!t&&Bn.test(n))?Wr($(n),0,r):n.split(t,r):[];
-},On.spread=function(n,t){if(typeof n!="function")throw new ei("Expected a function");return t=t===F?0:Di(Ou(t),0),sr(function(e){var u=e[t],i=e.length-1,o=Wr(e,0,t);return u&&s(o,u),t!=i&&s(o,Wr(e,t+1)),r(n,this,o)})},On.tail=function(n){var t=null==n?0:n.length;return t?gr(n,1,t):[]},On.take=function(n,t,r){return n&&n.length?(t=r||t===F?1:Ou(t),gr(n,0,0>t?0:t)):[]},On.takeRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Ou(t),t=e-t,gr(n,0>t?0:t,e)):[]},On.takeRightWhile=function(n,t){
-return n&&n.length?kr(n,be(t,3),false,true):[]},On.takeWhile=function(n,t){return n&&n.length?kr(n,be(t,3)):[]},On.tap=function(n,t){return t(n),n},On.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new ei("Expected a function");return bu(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),au(n,t,{leading:e,maxWait:t,trailing:u})},On.thru=nu,On.toArray=ku,On.toPairs=Bf,On.toPairsIn=Lf,On.toPath=function(n){return af(n)?l(n,$e):Au(n)?[n]:Tr(mo(zu(n)))},On.toPlainObject=Ru,
-On.transform=function(n,t,r){var e=af(n),i=e||sf(n)||gf(n);if(t=be(t,4),null==r){var o=n&&n.constructor;r=i?e?new o:[]:bu(n)&&gu(o)?io(bi(n)):{}}return(i?u:Ot)(n,function(n,e,u){return t(r,n,e,u)}),r},On.unary=function(n){return iu(n,1)},On.union=Wo,On.unionBy=Bo,On.unionWith=Lo,On.uniq=function(n){return n&&n.length?mr(n):[]},On.uniqBy=function(n,t){return n&&n.length?mr(n,be(t,2)):[]},On.uniqWith=function(n,t){return t=typeof t=="function"?t:F,n&&n.length?mr(n,F,t):[]},On.unset=function(n,t){return null==n||Ar(n,t);
-},On.unzip=Ye,On.unzipWith=Qe,On.update=function(n,t,r){return null==n?n:_r(n,t,Rr(r)(Rt(n,t)),void 0)},On.updateWith=function(n,t,r,e){return e=typeof e=="function"?e:F,null!=n&&(n=_r(n,t,Rr(r)(Rt(n,t)),e)),n},On.values=Du,On.valuesIn=function(n){return null==n?[]:I(n,Uu(n))},On.without=Uo,On.words=$u,On.wrap=function(n,t){return rf(Rr(t),n)},On.xor=Co,On.xorBy=Do,On.xorWith=Mo,On.zip=To,On.zipObject=function(n,t){return Sr(n||[],t||[],lt)},On.zipObjectDeep=function(n,t){return Sr(n||[],t||[],_r);
-},On.zipWith=$o,On.entries=Bf,On.entriesIn=Lf,On.extend=xf,On.extendWith=jf,Zu(On,On),On.add=nc,On.attempt=Pf,On.camelCase=Uf,On.capitalize=Mu,On.ceil=tc,On.clamp=function(n,t,r){return r===F&&(r=t,t=F),r!==F&&(r=Iu(r),r=r===r?r:0),t!==F&&(t=Iu(t),t=t===t?t:0),dt(Iu(n),t,r)},On.clone=function(n){return yt(n,4)},On.cloneDeep=function(n){return yt(n,5)},On.cloneDeepWith=function(n,t){return t=typeof t=="function"?t:F,yt(n,5,t)},On.cloneWith=function(n,t){return t=typeof t=="function"?t:F,yt(n,4,t)},
-On.conformsTo=function(n,t){return null==t||xt(n,t,Lu(t))},On.deburr=Tu,On.defaultTo=function(n,t){return null==n||n!==n?t:n},On.divide=rc,On.endsWith=function(n,t,r){n=zu(n),t=wr(t);var e=n.length,e=r=r===F?e:dt(Ou(r),0,e);return r-=t.length,0<=r&&n.slice(r,e)==t},On.eq=hu,On.escape=function(n){return(n=zu(n))&&Y.test(n)?n.replace(H,et):n},On.escapeRegExp=function(n){return(n=zu(n))&&fn.test(n)?n.replace(on,"\\$&"):n},On.every=function(n,t,r){var e=af(n)?o:mt;return r&&Ie(n,t,r)&&(t=F),e(n,be(t,3));
-},On.find=Po,On.findIndex=Ze,On.findKey=function(n,t){return v(n,be(t,3),Ot)},On.findLast=Zo,On.findLastIndex=qe,On.findLastKey=function(n,t){return v(n,be(t,3),St)},On.floor=ec,On.forEach=ru,On.forEachRight=eu,On.forIn=function(n,t){return null==n?n:co(n,be(t,3),Uu)},On.forInRight=function(n,t){return null==n?n:ao(n,be(t,3),Uu)},On.forOwn=function(n,t){return n&&Ot(n,be(t,3))},On.forOwnRight=function(n,t){return n&&St(n,be(t,3))},On.get=Wu,On.gt=of,On.gte=ff,On.has=function(n,t){return null!=n&&me(n,t,Lt);
-},On.hasIn=Bu,On.head=Ke,On.identity=Nu,On.includes=function(n,t,r,e){return n=pu(n)?n:Du(n),r=r&&!e?Ou(r):0,e=n.length,0>r&&(r=Di(e+r,0)),mu(n)?r<=e&&-1r&&(r=Di(e+r,0)),d(n,t,r)):-1},On.inRange=function(n,t,r){return t=Eu(t),r===F?(r=t,t=0):r=Eu(r),n=Iu(n),n>=Mi(t,r)&&n=n},On.isSet=vf,On.isString=mu,On.isSymbol=Au,On.isTypedArray=gf,On.isUndefined=function(n){return n===F},On.isWeakMap=function(n){return xu(n)&&"[object WeakMap]"==yo(n)},On.isWeakSet=function(n){return xu(n)&&"[object WeakSet]"==Wt(n)},On.join=function(n,t){
-return null==n?"":Ui.call(n,t)},On.kebabCase=Cf,On.last=Ge,On.lastIndexOf=function(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e;if(r!==F&&(u=Ou(r),u=0>u?Di(e+u,0):Mi(u,e-1)),t===t){for(r=u+1;r--&&n[r]!==t;);n=r}else n=g(n,b,u,true);return n},On.lowerCase=Df,On.lowerFirst=Mf,On.lt=df,On.lte=yf,On.max=function(n){return n&&n.length?At(n,Nu,Bt):F},On.maxBy=function(n,t){return n&&n.length?At(n,be(t,2),Bt):F},On.mean=function(n){return x(n,Nu)},On.meanBy=function(n,t){return x(n,be(t,2))},On.min=function(n){
-return n&&n.length?At(n,Nu,Yt):F},On.minBy=function(n,t){return n&&n.length?At(n,be(t,2),Yt):F},On.stubArray=Ku,On.stubFalse=Gu,On.stubObject=function(){return{}},On.stubString=function(){return""},On.stubTrue=function(){return true},On.multiply=uc,On.nth=function(n,t){return n&&n.length?rr(n,Ou(t)):F},On.noConflict=function(){return Zn._===this&&(Zn._=pi),this},On.noop=qu,On.now=Jo,On.pad=function(n,t,r){n=zu(n);var e=(t=Ou(t))?T(n):0;return!t||e>=t?n:(t=(t-e)/2,ue(zi(t),r)+n+ue(Ri(t),r))},On.padEnd=function(n,t,r){
-n=zu(n);var e=(t=Ou(t))?T(n):0;return t&&et){var e=n;n=t,t=e}return r||n%1||t%1?(r=Fi(),Mi(n+r*(t-n+$n("1e-"+((r+"").length-1))),t)):ar(n,t);
-},On.reduce=function(n,t,r){var e=af(n)?h:m,u=3>arguments.length;return e(n,be(t,4),r,u,oo)},On.reduceRight=function(n,t,r){var e=af(n)?p:m,u=3>arguments.length;return e(n,be(t,4),r,u,fo)},On.repeat=function(n,t,r){return t=(r?Ie(n,t,r):t===F)?1:Ou(t),lr(zu(n),t)},On.replace=function(){var n=arguments,t=zu(n[0]);return 3>n.length?t:t.replace(n[1],n[2])},On.result=function(n,t,r){t=zr(t,n);var e=-1,u=t.length;for(u||(n=F,u=1);++en||9007199254740991=i)return n;if(i=r-T(e),1>i)return e;if(r=o?Wr(o,0,i).join(""):n.slice(0,i),
-u===F)return r+e;if(o&&(i+=r.length-i),_f(u)){if(n.slice(i).search(u)){var f=r;for(u.global||(u=ti(u.source,zu(dn.exec(u))+"g")),u.lastIndex=0;o=u.exec(f);)var c=o.index;r=r.slice(0,c===F?i:c)}}else n.indexOf(wr(u),i)!=i&&(u=r.lastIndexOf(u),-1u.__dir__?"Right":"")}),u},Mn.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse();
+return this.__data__.get(n)},Vn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.set=function(n,t){var r=this.__data__;if(r instanceof Nn){var e=r.__data__;if(!Pi||199>e.length)return e.push([n,t]),this.size=++r.size,this;r=this.__data__=new Pn(e)}return r.set(n,t),this.size=r.size,this};var io=qr(Ot),oo=qr(St,true),fo=Vr(),co=Vr(true),ao=Gi?function(n,t){return Gi.set(n,t),n}:Fu,lo=ki?function(n,t){return ki(n,"toString",{configurable:true,enumerable:false,value:$u(t),writable:true})}:Fu,so=Ei||function(n){
+return Zn.clearTimeout(n)},ho=qi&&1/D(new qi([,-0]))[1]==N?function(n){return new qi(n)}:Zu,po=Gi?function(n){return Gi.get(n)}:Zu,_o=zi?U(zi,Xu):Vu,vo=zi?function(n){for(var t=[];n;)s(t,_o(n)),n=yi(n);return t}:Vu,go=Wt;(Ni&&"[object DataView]"!=go(new Ni(new ArrayBuffer(1)))||Pi&&"[object Map]"!=go(new Pi)||Zi&&"[object Promise]"!=go(Zi.resolve())||qi&&"[object Set]"!=go(new qi)||Vi&&"[object WeakMap]"!=go(new Vi))&&(go=function(n){var t=Wt(n);if(n=(n="[object Object]"==t?n.constructor:F)?$e(n):"")switch(n){
+case Ji:return"[object DataView]";case Yi:return"[object Map]";case Qi:return"[object Promise]";case Xi:return"[object Set]";case no:return"[object WeakMap]"}return t});var yo=ii?vu:Ku,bo=De(ao),xo=Si||function(n,t){return Zn.setTimeout(n,t)},jo=De(lo),wo=function(n){n=au(n,function(n){return 500===t.size&&t.clear(),n});var t=n.cache;return n}(function(n){var t=[];return en.test(n)&&t.push(""),n.replace(un,function(n,r,e,u){t.push(e?u.replace(vn,"$1"):r||n)}),t}),mo=sr(function(n,t){return pu(n)?wt(n,Et(t,1,pu,true)):[];
+}),Ao=sr(function(n,t){var r=Ke(t);return pu(r)&&(r=F),pu(n)?wt(n,Et(t,1,pu,true),be(r,2)):[]}),ko=sr(function(n,t){var r=Ke(t);return pu(r)&&(r=F),pu(n)?wt(n,Et(t,1,pu,true),F,r):[]}),Eo=sr(function(n){var t=l(n,Ir);return t.length&&t[0]===n[0]?Ct(t):[]}),Oo=sr(function(n){var t=Ke(n),r=l(n,Ir);return t===Ke(r)?t=F:r.pop(),r.length&&r[0]===n[0]?Ct(r,be(t,2)):[]}),So=sr(function(n){var t=Ke(n),r=l(n,Ir);return(t=typeof t=="function"?t:F)&&r.pop(),r.length&&r[0]===n[0]?Ct(r,F,t):[]}),Io=sr(Ge),Ro=_e(function(n,t){
+var r=null==n?0:n.length,e=gt(n,t);return cr(n,l(t,function(n){return Se(n,r)?+n:n}).sort(Cr)),e}),zo=sr(function(n){return mr(Et(n,1,pu,true))}),Wo=sr(function(n){var t=Ke(n);return pu(t)&&(t=F),mr(Et(n,1,pu,true),be(t,2))}),Bo=sr(function(n){var t=Ke(n),t=typeof t=="function"?t:F;return mr(Et(n,1,pu,true),F,t)}),Lo=sr(function(n,t){return pu(n)?wt(n,t):[]}),Uo=sr(function(n){return Or(f(n,pu))}),Co=sr(function(n){var t=Ke(n);return pu(t)&&(t=F),Or(f(n,pu),be(t,2))}),Do=sr(function(n){var t=Ke(n),t=typeof t=="function"?t:F;
+return Or(f(n,pu),F,t)}),Mo=sr(Je),To=sr(function(n){var t=n.length,t=1=t}),ff=Tt(function(){return arguments}())?Tt:function(n){return bu(n)&&fi.call(n,"callee")&&!xi.call(n,"callee")},cf=Gu.isArray,af=Hn?S(Hn):$t,lf=Wi||Ku,sf=Jn?S(Jn):Ft,hf=Yn?S(Yn):Pt,pf=Qn?S(Qn):Vt,_f=Xn?S(Xn):Kt,vf=nt?S(nt):Gt,gf=fe(Yt),df=fe(function(n,t){return n<=t}),yf=Zr(function(n,t){if(We(t)||hu(t))$r(t,Bu(t),n);else for(var r in t)fi.call(t,r)&<(n,r,t[r]);
+}),bf=Zr(function(n,t){$r(t,Lu(t),n)}),xf=Zr(function(n,t,r,e){$r(t,Lu(t),n,e)}),jf=Zr(function(n,t,r,e){$r(t,Bu(t),n,e)}),wf=_e(gt),mf=sr(function(n){return n.push(F,ct),r(xf,F,n)}),Af=sr(function(n){return n.push(F,Le),r(If,F,n)}),kf=te(function(n,t,r){n[t]=r},$u(Fu)),Ef=te(function(n,t,r){fi.call(n,t)?n[t].push(r):n[t]=[r]},be),Of=sr(Mt),Sf=Zr(function(n,t,r){tr(n,t,r)}),If=Zr(function(n,t,r,e){tr(n,t,r,e)}),Rf=_e(function(n,t){var r={};if(null==n)return r;var e=false;t=l(t,function(t){return t=zr(t,n),
+e||(e=1--n)return t.apply(this,arguments)}},On.ary=uu,On.assign=yf,On.assignIn=bf,On.assignInWith=xf,On.assignWith=jf,On.at=wf,On.before=iu,On.bind=Jo,On.bindAll=Pf,On.bindKey=Yo,On.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return cf(n)?n:[n]},On.chain=Qe,On.chunk=function(n,t,r){if(t=(r?Ie(n,t,r):t===F)?1:Ci(Eu(t),0),
+r=null==n?0:n.length,!r||1>t)return[];for(var e=0,u=0,i=Gu(Ii(r/t));et?0:t,e)):[];
+},On.dropRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Eu(t),t=e-t,gr(n,0,0>t?0:t)):[]},On.dropRightWhile=function(n,t){return n&&n.length?kr(n,be(t,3),true,true):[]},On.dropWhile=function(n,t){return n&&n.length?kr(n,be(t,3),true):[]},On.fill=function(n,t,r,e){var u=null==n?0:n.length;if(!u)return[];for(r&&typeof r!="number"&&Ie(n,t,r)&&(r=0,e=u),u=n.length,r=Eu(r),0>r&&(r=-r>u?0:u+r),e=e===F||e>u?u:Eu(e),0>e&&(e+=u),e=r>e?0:Ou(e);r>>0,r?(n=Ru(n))&&(typeof t=="string"||null!=t&&!pf(t))&&(t=wr(t),
+!t&&Bn.test(n))?Wr($(n),0,r):n.split(t,r):[]},On.spread=function(n,t){if(typeof n!="function")throw new ri("Expected a function");return t=t===F?0:Ci(Eu(t),0),sr(function(e){var u=e[t];return e=Wr(e,0,t),u&&s(e,u),r(n,this,e)})},On.tail=function(n){var t=null==n?0:n.length;return t?gr(n,1,t):[]},On.take=function(n,t,r){return n&&n.length?(t=r||t===F?1:Eu(t),gr(n,0,0>t?0:t)):[]},On.takeRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Eu(t),t=e-t,gr(n,0>t?0:t,e)):[]},On.takeRightWhile=function(n,t){
+return n&&n.length?kr(n,be(t,3),false,true):[]},On.takeWhile=function(n,t){return n&&n.length?kr(n,be(t,3)):[]},On.tap=function(n,t){return t(n),n},On.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new ri("Expected a function");return yu(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),cu(n,t,{leading:e,maxWait:t,trailing:u})},On.thru=Xe,On.toArray=Au,On.toPairs=Wf,On.toPairsIn=Bf,On.toPath=function(n){return cf(n)?l(n,Te):mu(n)?[n]:Tr(wo(Ru(n)))},On.toPlainObject=Iu,
+On.transform=function(n,t,r){var e=cf(n),i=e||lf(n)||vf(n);if(t=be(t,4),null==r){var o=n&&n.constructor;r=i?e?new o:[]:yu(n)&&vu(o)?uo(yi(n)):{}}return(i?u:Ot)(n,function(n,e,u){return t(r,n,e,u)}),r},On.unary=function(n){return uu(n,1)},On.union=zo,On.unionBy=Wo,On.unionWith=Bo,On.uniq=function(n){return n&&n.length?mr(n):[]},On.uniqBy=function(n,t){return n&&n.length?mr(n,be(t,2)):[]},On.uniqWith=function(n,t){return t=typeof t=="function"?t:F,n&&n.length?mr(n,F,t):[]},On.unset=function(n,t){return null==n||Ar(n,t);
+},On.unzip=Je,On.unzipWith=Ye,On.update=function(n,t,r){return null==n?n:_r(n,t,Rr(r)(Rt(n,t)),void 0)},On.updateWith=function(n,t,r,e){return e=typeof e=="function"?e:F,null!=n&&(n=_r(n,t,Rr(r)(Rt(n,t)),e)),n},On.values=Cu,On.valuesIn=function(n){return null==n?[]:I(n,Lu(n))},On.without=Lo,On.words=Tu,On.wrap=function(n,t){return tf(Rr(t),n)},On.xor=Uo,On.xorBy=Co,On.xorWith=Do,On.zip=Mo,On.zipObject=function(n,t){return Sr(n||[],t||[],lt)},On.zipObjectDeep=function(n,t){return Sr(n||[],t||[],_r);
+},On.zipWith=To,On.entries=Wf,On.entriesIn=Bf,On.extend=bf,On.extendWith=xf,Pu(On,On),On.add=Xf,On.attempt=Nf,On.camelCase=Lf,On.capitalize=Du,On.ceil=nc,On.clamp=function(n,t,r){return r===F&&(r=t,t=F),r!==F&&(r=Su(r),r=r===r?r:0),t!==F&&(t=Su(t),t=t===t?t:0),dt(Su(n),t,r)},On.clone=function(n){return yt(n,4)},On.cloneDeep=function(n){return yt(n,5)},On.cloneDeepWith=function(n,t){return t=typeof t=="function"?t:F,yt(n,5,t)},On.cloneWith=function(n,t){return t=typeof t=="function"?t:F,yt(n,4,t)},
+On.conformsTo=function(n,t){return null==t||xt(n,t,Bu(t))},On.deburr=Mu,On.defaultTo=function(n,t){return null==n||n!==n?t:n},On.divide=tc,On.endsWith=function(n,t,r){n=Ru(n),t=wr(t);var e=n.length,e=r=r===F?e:dt(Eu(r),0,e);return r-=t.length,0<=r&&n.slice(r,e)==t},On.eq=su,On.escape=function(n){return(n=Ru(n))&&Y.test(n)?n.replace(H,et):n},On.escapeRegExp=function(n){return(n=Ru(n))&&fn.test(n)?n.replace(on,"\\$&"):n},On.every=function(n,t,r){var e=cf(n)?o:mt;return r&&Ie(n,t,r)&&(t=F),e(n,be(t,3));
+},On.find=No,On.findIndex=Pe,On.findKey=function(n,t){return v(n,be(t,3),Ot)},On.findLast=Po,On.findLastIndex=Ze,On.findLastKey=function(n,t){return v(n,be(t,3),St)},On.floor=rc,On.forEach=tu,On.forEachRight=ru,On.forIn=function(n,t){return null==n?n:fo(n,be(t,3),Lu)},On.forInRight=function(n,t){return null==n?n:co(n,be(t,3),Lu)},On.forOwn=function(n,t){return n&&Ot(n,be(t,3))},On.forOwnRight=function(n,t){return n&&St(n,be(t,3))},On.get=zu,On.gt=uf,On.gte=of,On.has=function(n,t){return null!=n&&me(n,t,Lt);
+},On.hasIn=Wu,On.head=Ve,On.identity=Fu,On.includes=function(n,t,r,e){return n=hu(n)?n:Cu(n),r=r&&!e?Eu(r):0,e=n.length,0>r&&(r=Ci(e+r,0)),wu(n)?r<=e&&-1r&&(r=Ci(e+r,0)),d(n,t,r)):-1},On.inRange=function(n,t,r){return t=ku(t),r===F?(r=t,t=0):r=ku(r),n=Su(n),n>=Di(t,r)&&n=n},On.isSet=_f,On.isString=wu,On.isSymbol=mu,On.isTypedArray=vf,On.isUndefined=function(n){return n===F},On.isWeakMap=function(n){return bu(n)&&"[object WeakMap]"==go(n)},On.isWeakSet=function(n){return bu(n)&&"[object WeakSet]"==Wt(n)},On.join=function(n,t){
+return null==n?"":Li.call(n,t)},On.kebabCase=Uf,On.last=Ke,On.lastIndexOf=function(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e;if(r!==F&&(u=Eu(r),u=0>u?Ci(e+u,0):Di(u,e-1)),t===t){for(r=u+1;r--&&n[r]!==t;);n=r}else n=g(n,b,u,true);return n},On.lowerCase=Cf,On.lowerFirst=Df,On.lt=gf,On.lte=df,On.max=function(n){return n&&n.length?At(n,Fu,Bt):F},On.maxBy=function(n,t){return n&&n.length?At(n,be(t,2),Bt):F},On.mean=function(n){return x(n,Fu)},On.meanBy=function(n,t){return x(n,be(t,2))},On.min=function(n){
+return n&&n.length?At(n,Fu,Yt):F},On.minBy=function(n,t){return n&&n.length?At(n,be(t,2),Yt):F},On.stubArray=Vu,On.stubFalse=Ku,On.stubObject=function(){return{}},On.stubString=function(){return""},On.stubTrue=function(){return true},On.multiply=ec,On.nth=function(n,t){return n&&n.length?rr(n,Eu(t)):F},On.noConflict=function(){return Zn._===this&&(Zn._=hi),this},On.noop=Zu,On.now=Ho,On.pad=function(n,t,r){n=Ru(n);var e=(t=Eu(t))?T(n):0;return!t||e>=t?n:(t=(t-e)/2,ue(Ri(t),r)+n+ue(Ii(t),r))},On.padEnd=function(n,t,r){
+n=Ru(n);var e=(t=Eu(t))?T(n):0;return t&&et){var e=n;n=t,t=e}return r||n%1||t%1?(r=$i(),Di(n+r*(t-n+$n("1e-"+((r+"").length-1))),t)):ar(n,t);
+},On.reduce=function(n,t,r){var e=cf(n)?h:m,u=3>arguments.length;return e(n,be(t,4),r,u,io)},On.reduceRight=function(n,t,r){var e=cf(n)?p:m,u=3>arguments.length;return e(n,be(t,4),r,u,oo)},On.repeat=function(n,t,r){return t=(r?Ie(n,t,r):t===F)?1:Eu(t),lr(Ru(n),t)},On.replace=function(){var n=arguments,t=Ru(n[0]);return 3>n.length?t:t.replace(n[1],n[2])},On.result=function(n,t,r){t=zr(t,n);var e=-1,u=t.length;for(u||(u=1,n=F);++en||9007199254740991=i)return n;if(i=r-T(e),1>i)return e;if(r=o?Wr(o,0,i).join(""):n.slice(0,i),
+u===F)return r+e;if(o&&(i+=r.length-i),pf(u)){if(n.slice(i).search(u)){var f=r;for(u.global||(u=ni(u.source,Ru(dn.exec(u))+"g")),u.lastIndex=0;o=u.exec(f);)var c=o.index;r=r.slice(0,c===F?i:c)}}else n.indexOf(wr(u),i)!=i&&(u=r.lastIndexOf(u),-1u.__dir__?"Right":"")}),u},Mn.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse();
}}),u(["filter","map","takeWhile"],function(n,t){var r=t+1,e=1==r||3==r;Mn.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:be(n,3),type:r}),t.__filtered__=t.__filtered__||e,t}}),u(["head","last"],function(n,t){var r="take"+(t?"Right":"");Mn.prototype[n]=function(){return this[r](1).value()[0]}}),u(["initial","tail"],function(n,t){var r="drop"+(t?"":"Right");Mn.prototype[n]=function(){return this.__filtered__?new Mn(this):this[r](1)}}),Mn.prototype.compact=function(){
-return this.filter(Nu)},Mn.prototype.find=function(n){return this.filter(n).head()},Mn.prototype.findLast=function(n){return this.reverse().find(n)},Mn.prototype.invokeMap=sr(function(n,t){return typeof n=="function"?new Mn(this):this.map(function(r){return Mt(r,n,t)})}),Mn.prototype.reject=function(n){return this.filter(su(be(n)))},Mn.prototype.slice=function(n,t){n=Ou(n);var r=this;return r.__filtered__&&(0t)?new Mn(r):(0>n?r=r.takeRight(-n):n&&(r=r.drop(n)),t!==F&&(t=Ou(t),r=0>t?r.dropRight(-t):r.take(t-n)),
-r)},Mn.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Mn.prototype.toArray=function(){return this.take(4294967295)},Ot(Mn.prototype,function(n,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),e=/^(?:head|last)$/.test(t),u=On[e?"take"+("last"==t?"Right":""):t],i=e||/^find/.test(t);u&&(On.prototype[t]=function(){function t(n){return n=u.apply(On,s([n],f)),e&&h?n[0]:n}var o=this.__wrapped__,f=e?[1]:arguments,c=o instanceof Mn,a=f[0],l=c||af(o);l&&r&&typeof a=="function"&&1!=a.length&&(c=l=false);
-var h=this.__chain__,p=!!this.__actions__.length,a=i&&!h,c=c&&!p;return!i&&l?(o=c?o:new Mn(this),o=n.apply(o,f),o.__actions__.push({func:nu,args:[t],thisArg:F}),new zn(o,h)):a&&c?n.apply(this,f):(o=this.thru(t),a?e?o.value()[0]:o.value():o)})}),u("pop push shift sort splice unshift".split(" "),function(n){var t=ui[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:pop|shift)$/.test(n);On.prototype[n]=function(){var n=arguments;if(e&&!this.__chain__){var u=this.value();return t.apply(af(u)?u:[],n);
-}return this[r](function(r){return t.apply(af(r)?r:[],n)})}}),Ot(Mn.prototype,function(n,t){var r=On[t];if(r){var e=r.name+"";(Ji[e]||(Ji[e]=[])).push({name:t,func:r})}}),Ji[ne(F,2).name]=[{name:"wrapper",func:F}],Mn.prototype.clone=function(){var n=new Mn(this.__wrapped__);return n.__actions__=Tr(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Tr(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Tr(this.__views__),n},Mn.prototype.reverse=function(){
-if(this.__filtered__){var n=new Mn(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Mn.prototype.value=function(){var n,t=this.__wrapped__.value(),r=this.__dir__,e=af(t),u=0>r,i=e?t.length:0;n=i;for(var o=this.__views__,f=0,c=-1,a=o.length;++ci||i==n&&a==n)return Er(t,this.__actions__);e=[];n:for(;n--&&c=this.__values__.length;
-return{done:n,value:n?F:this.__values__[this.__index__++]}},On.prototype.plant=function(n){for(var t,r=this;r instanceof Sn;){var e=Pe(r);e.__index__=0,e.__values__=F,t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},On.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Mn?(this.__actions__.length&&(n=new Mn(this)),n=n.reverse(),n.__actions__.push({func:nu,args:[Je],thisArg:F}),new zn(n,this.__chain__)):this.thru(Je)},On.prototype.toJSON=On.prototype.valueOf=On.prototype.value=function(){
-return Er(this.__wrapped__,this.__actions__)},On.prototype.first=On.prototype.head,Ai&&(On.prototype[Ai]=tu),On}();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Zn._=it, define(function(){return it})):Vn?((Vn.exports=it)._=it,qn._=it):Zn._=it}).call(this);
\ No newline at end of file
+return this.filter(Fu)},Mn.prototype.find=function(n){return this.filter(n).head()},Mn.prototype.findLast=function(n){return this.reverse().find(n)},Mn.prototype.invokeMap=sr(function(n,t){return typeof n=="function"?new Mn(this):this.map(function(r){return Mt(r,n,t)})}),Mn.prototype.reject=function(n){return this.filter(lu(be(n)))},Mn.prototype.slice=function(n,t){n=Eu(n);var r=this;return r.__filtered__&&(0t)?new Mn(r):(0>n?r=r.takeRight(-n):n&&(r=r.drop(n)),t!==F&&(t=Eu(t),r=0>t?r.dropRight(-t):r.take(t-n)),
+r)},Mn.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Mn.prototype.toArray=function(){return this.take(4294967295)},Ot(Mn.prototype,function(n,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),e=/^(?:head|last)$/.test(t),u=On[e?"take"+("last"==t?"Right":""):t],i=e||/^find/.test(t);u&&(On.prototype[t]=function(){function t(n){return n=u.apply(On,s([n],f)),e&&h?n[0]:n}var o=this.__wrapped__,f=e?[1]:arguments,c=o instanceof Mn,a=f[0],l=c||cf(o);l&&r&&typeof a=="function"&&1!=a.length&&(c=l=false);
+var h=this.__chain__,p=!!this.__actions__.length,a=i&&!h,c=c&&!p;return!i&&l?(o=c?o:new Mn(this),o=n.apply(o,f),o.__actions__.push({func:Xe,args:[t],thisArg:F}),new zn(o,h)):a&&c?n.apply(this,f):(o=this.thru(t),a?e?o.value()[0]:o.value():o)})}),u("pop push shift sort splice unshift".split(" "),function(n){var t=ei[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:pop|shift)$/.test(n);On.prototype[n]=function(){var n=arguments;if(e&&!this.__chain__){var u=this.value();return t.apply(cf(u)?u:[],n);
+}return this[r](function(r){return t.apply(cf(r)?r:[],n)})}}),Ot(Mn.prototype,function(n,t){var r=On[t];if(r){var e=r.name+"";(Hi[e]||(Hi[e]=[])).push({name:t,func:r})}}),Hi[ne(F,2).name]=[{name:"wrapper",func:F}],Mn.prototype.clone=function(){var n=new Mn(this.__wrapped__);return n.__actions__=Tr(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Tr(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Tr(this.__views__),n},Mn.prototype.reverse=function(){
+if(this.__filtered__){var n=new Mn(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Mn.prototype.value=function(){var n,t=this.__wrapped__.value(),r=this.__dir__,e=cf(t),u=0>r,i=e?t.length:0;n=i;for(var o=this.__views__,f=0,c=-1,a=o.length;++ci||i==n&&a==n)return Er(t,this.__actions__);e=[];n:for(;n--&&c=this.__values__.length;
+return{done:n,value:n?F:this.__values__[this.__index__++]}},On.prototype.plant=function(n){for(var t,r=this;r instanceof Sn;){var e=Ne(r);e.__index__=0,e.__values__=F,t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},On.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Mn?(this.__actions__.length&&(n=new Mn(this)),n=n.reverse(),n.__actions__.push({func:Xe,args:[He],thisArg:F}),new zn(n,this.__chain__)):this.thru(He)},On.prototype.toJSON=On.prototype.valueOf=On.prototype.value=function(){
+return Er(this.__wrapped__,this.__actions__)},On.prototype.first=On.prototype.head,mi&&(On.prototype[mi]=nu),On}();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Zn._=it, define(function(){return it})):Vn?((Vn.exports=it)._=it,qn._=it):Zn._=it}).call(this);
\ No newline at end of file
diff --git a/doc/README.md b/doc/README.md
index 02762e8e28..b5f8664849 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -1,4 +1,4 @@
-# lodash v4.17.1
+# lodash v4.17.2
@@ -415,7 +415,7 @@
_.chunk(array, [size=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L6848 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.chunk "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L6841 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.chunk "See the npm package") [Ⓣ][1]
Creates an array of elements split into groups the length of `size`.
If `array` can't be split evenly, the final chunk will be the remaining
@@ -423,6 +423,7 @@ elements.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to process.
2. `[size=1]` *(number)*: The length of each chunk
@@ -445,13 +446,14 @@ _.chunk(['a', 'b', 'c', 'd'], 3);
_.compact(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L6883 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.compact "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L6876 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.compact "See the npm package") [Ⓣ][1]
Creates an array with all falsey values removed. The values `false`, `null`,
`0`, `""`, `undefined`, and `NaN` are falsey.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to compact.
@@ -470,13 +472,14 @@ _.compact([0, 1, false, 2, '', 3]);
_.concat(array, [values])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L6920 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.concat "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L6913 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.concat "See the npm package") [Ⓣ][1]
Creates a new array concatenating `array` with any additional arrays
and/or values.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to concatenate.
2. `[values]` *(...*)*: The values to concatenate.
@@ -502,7 +505,7 @@ console.log(array);
_.difference(array, [values])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L6956 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.difference "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L6949 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.difference "See the npm package") [Ⓣ][1]
Creates an array of `array` values not included in the other given arrays
using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -514,6 +517,7 @@ determined by the first array.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[values]` *(...Array)*: The values to exclude.
@@ -533,7 +537,7 @@ _.difference([2, 1], [2, 3]);
_.differenceBy(array, [values], [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L6988 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.differenceby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L6981 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.differenceby "See the npm package") [Ⓣ][1]
This method is like `_.difference` except that it accepts `iteratee` which
is invoked for each element of `array` and `values` to generate the criterion
@@ -546,6 +550,7 @@ determined by the first array. The iteratee is invoked with one argument:
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[values]` *(...Array)*: The values to exclude.
@@ -570,7 +575,7 @@ _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');
_.differenceWith(array, [values], [comparator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7021 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.differencewith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7014 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.differencewith "See the npm package") [Ⓣ][1]
This method is like `_.difference` except that it accepts `comparator`
which is invoked to compare elements of `array` to `values`. The order and
@@ -582,6 +587,7 @@ is invoked with two arguments: *(arrVal, othVal)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[values]` *(...Array)*: The values to exclude.
@@ -604,12 +610,13 @@ _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);
_.drop(array, [n=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7056 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.drop "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7049 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.drop "See the npm package") [Ⓣ][1]
Creates a slice of `array` with `n` elements dropped from the beginning.
#### Since
0.5.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[n=1]` *(number)*: The number of elements to drop.
@@ -638,12 +645,13 @@ _.drop([1, 2, 3], 0);
_.dropRight(array, [n=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7090 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.dropright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7083 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.dropright "See the npm package") [Ⓣ][1]
Creates a slice of `array` with `n` elements dropped from the end.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[n=1]` *(number)*: The number of elements to drop.
@@ -672,7 +680,7 @@ _.dropRight([1, 2, 3], 0);
_.dropRightWhile(array, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7135 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.droprightwhile "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7128 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.droprightwhile "See the npm package") [Ⓣ][1]
Creates a slice of `array` excluding elements dropped from the end.
Elements are dropped until `predicate` returns falsey. The predicate is
@@ -680,6 +688,7 @@ invoked with three arguments: *(value, index, array)*.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -717,7 +726,7 @@ _.dropRightWhile(users, 'active');
_.dropWhile(array, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7176 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.dropwhile "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7169 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.dropwhile "See the npm package") [Ⓣ][1]
Creates a slice of `array` excluding elements dropped from the beginning.
Elements are dropped until `predicate` returns falsey. The predicate is
@@ -725,6 +734,7 @@ invoked with three arguments: *(value, index, array)*.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -762,7 +772,7 @@ _.dropWhile(users, 'active');
_.fill(array, value, [start=0], [end=array.length])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7211 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.fill "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7204 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.fill "See the npm package") [Ⓣ][1]
Fills elements of `array` with `value` from `start` up to, but not
including, `end`.
@@ -772,6 +782,7 @@ including, `end`.
#### Since
3.2.0
+
#### Arguments
1. `array` *(Array)*: The array to fill.
2. `value` *(*)*: The value to fill `array` with.
@@ -802,13 +813,14 @@ _.fill([4, 6, 8, 10], '*', 1, 3);
_.findIndex(array, [predicate=_.identity], [fromIndex=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7258 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findindex "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7251 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findindex "See the npm package") [Ⓣ][1]
This method is like `_.find` except that it returns the index of the first
element `predicate` returns truthy for instead of the element itself.
#### Since
1.1.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -847,13 +859,14 @@ _.findIndex(users, 'active');
_.findLastIndex(array, [predicate=_.identity], [fromIndex=array.length-1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7305 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findlastindex "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7298 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findlastindex "See the npm package") [Ⓣ][1]
This method is like `_.findIndex` except that it iterates over elements
of `collection` from right to left.
#### Since
2.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -892,12 +905,13 @@ _.findLastIndex(users, 'active');
_.flatten(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7334 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatten "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7327 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatten "See the npm package") [Ⓣ][1]
Flattens `array` a single level deep.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to flatten.
@@ -916,12 +930,13 @@ _.flatten([1, [2, [3, [4]], 5]]);
_.flattenDeep(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7353 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flattendeep "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7346 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flattendeep "See the npm package") [Ⓣ][1]
Recursively flattens `array`.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to flatten.
@@ -940,12 +955,13 @@ _.flattenDeep([1, [2, [3, [4]], 5]]);
_.flattenDepth(array, [depth=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7378 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flattendepth "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7371 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flattendepth "See the npm package") [Ⓣ][1]
Recursively flatten `array` up to `depth` times.
#### Since
4.4.0
+
#### Arguments
1. `array` *(Array)*: The array to flatten.
2. `[depth=1]` *(number)*: The maximum recursion depth.
@@ -970,13 +986,14 @@ _.flattenDepth(array, 2);
_.fromPairs(pairs)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7402 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.frompairs "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7395 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.frompairs "See the npm package") [Ⓣ][1]
The inverse of `_.toPairs`; this method returns an object composed
from key-value `pairs`.
#### Since
4.0.0
+
#### Arguments
1. `pairs` *(Array)*: The key-value pairs.
@@ -995,12 +1012,13 @@ _.fromPairs([['a', 1], ['b', 2]]);
_.head(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7432 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.head "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7425 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.head "See the npm package") [Ⓣ][1]
Gets the first element of `array`.
#### Since
0.1.0
+
#### Aliases
*_.first*
@@ -1025,7 +1043,7 @@ _.head([]);
_.indexOf(array, value, [fromIndex=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7459 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.indexof "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7452 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.indexof "See the npm package") [Ⓣ][1]
Gets the index at which the first occurrence of `value` is found in `array`
using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -1034,6 +1052,7 @@ offset from the end of `array`.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `value` *(*)*: The value to search for.
@@ -1058,12 +1077,13 @@ _.indexOf([1, 2, 1, 2], 2, 2);
_.initial(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7485 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.initial "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7478 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.initial "See the npm package") [Ⓣ][1]
Gets all but the last element of `array`.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
@@ -1082,7 +1102,7 @@ _.initial([1, 2, 3]);
_.intersection([arrays])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7507 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.intersection "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7500 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.intersection "See the npm package") [Ⓣ][1]
Creates an array of unique values that are included in all given arrays
using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -1091,6 +1111,7 @@ determined by the first array.
#### Since
0.1.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
@@ -1109,7 +1130,7 @@ _.intersection([2, 1], [2, 3]);
_.intersectionBy([arrays], [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7537 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.intersectionby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7530 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.intersectionby "See the npm package") [Ⓣ][1]
This method is like `_.intersection` except that it accepts `iteratee`
which is invoked for each element of each `arrays` to generate the criterion
@@ -1119,6 +1140,7 @@ determined by the first array. The iteratee is invoked with one argument:
#### Since
4.0.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -1142,7 +1164,7 @@ _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');
_.intersectionWith([arrays], [comparator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7572 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.intersectionwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7565 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.intersectionwith "See the npm package") [Ⓣ][1]
This method is like `_.intersection` except that it accepts `comparator`
which is invoked to compare elements of `arrays`. The order and references
@@ -1151,6 +1173,7 @@ invoked with two arguments: *(arrVal, othVal)*.
#### Since
4.0.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
2. `[comparator]` *(Function)*: The comparator invoked per element.
@@ -1173,12 +1196,13 @@ _.intersectionWith(objects, others, _.isEqual);
_.join(array, [separator=','])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7600 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.join "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7593 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.join "See the npm package") [Ⓣ][1]
Converts all elements in `array` into a string separated by `separator`.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to convert.
2. `[separator=',']` *(string)*: The element separator.
@@ -1198,12 +1222,13 @@ _.join(['a', 'b', 'c'], '~');
_.last(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7618 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.last "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7611 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.last "See the npm package") [Ⓣ][1]
Gets the last element of `array`.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
@@ -1222,13 +1247,14 @@ _.last([1, 2, 3]);
_.lastIndexOf(array, value, [fromIndex=array.length-1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7644 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lastindexof "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7637 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lastindexof "See the npm package") [Ⓣ][1]
This method is like `_.indexOf` except that it iterates over elements of
`array` from right to left.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `value` *(*)*: The value to search for.
@@ -1253,13 +1279,14 @@ _.lastIndexOf([1, 2, 1, 2], 2, 2);
_.nth(array, [n=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7680 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.nth "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7673 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.nth "See the npm package") [Ⓣ][1]
Gets the element at index `n` of `array`. If `n` is negative, the nth
element from the end is returned.
#### Since
4.11.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[n=0]` *(number)*: The index of the element to return.
@@ -1284,7 +1311,7 @@ _.nth(array, -2);
_.pull(array, [values])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7707 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pull "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7700 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pull "See the npm package") [Ⓣ][1]
Removes all given values from `array` using
[`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -1296,6 +1323,7 @@ to remove elements from an array by predicate.
#### Since
2.0.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
2. `[values]` *(...*)*: The values to remove.
@@ -1318,7 +1346,7 @@ console.log(array);
_.pullAll(array, values)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7729 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullall "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7722 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullall "See the npm package") [Ⓣ][1]
This method is like `_.pull` except that it accepts an array of values to remove.
@@ -1327,6 +1355,7 @@ This method is like `_.pull` except that it accepts an array of values to remove
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
2. `values` *(Array)*: The values to remove.
@@ -1349,7 +1378,7 @@ console.log(array);
_.pullAllBy(array, values, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7758 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullallby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7751 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullallby "See the npm package") [Ⓣ][1]
This method is like `_.pullAll` except that it accepts `iteratee` which is
invoked for each element of `array` and `values` to generate the criterion
@@ -1360,6 +1389,7 @@ by which they're compared. The iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
2. `values` *(Array)*: The values to remove.
@@ -1383,7 +1413,7 @@ console.log(array);
_.pullAllWith(array, values, [comparator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7787 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullallwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7780 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullallwith "See the npm package") [Ⓣ][1]
This method is like `_.pullAll` except that it accepts `comparator` which
is invoked to compare elements of `array` to `values`. The comparator is
@@ -1394,6 +1424,7 @@ invoked with two arguments: *(arrVal, othVal)*.
#### Since
4.6.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
2. `values` *(Array)*: The values to remove.
@@ -1417,7 +1448,7 @@ console.log(array);
_.pullAt(array, [indexes])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7817 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullat "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7810 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pullat "See the npm package") [Ⓣ][1]
Removes elements from `array` corresponding to `indexes` and returns an
array of removed elements.
@@ -1427,6 +1458,7 @@ array of removed elements.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
2. `[indexes]` *(...(number|number[]))*: The indexes of elements to remove.
@@ -1452,7 +1484,7 @@ console.log(pulled);
_.remove(array, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7856 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.remove "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7849 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.remove "See the npm package") [Ⓣ][1]
Removes all elements from `array` that `predicate` returns truthy for
and returns an array of the removed elements. The predicate is invoked
@@ -1464,6 +1496,7 @@ to pull elements from an array by value.
#### Since
2.0.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -1491,7 +1524,7 @@ console.log(evens);
_.reverse(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7900 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reverse "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7893 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reverse "See the npm package") [Ⓣ][1]
Reverses `array` so that the first element becomes the last, the second
element becomes the second to last, and so on.
@@ -1502,6 +1535,7 @@ element becomes the second to last, and so on.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to modify.
@@ -1525,7 +1559,7 @@ console.log(array);
_.slice(array, [start=0], [end=array.length])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7920 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.slice "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7913 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.slice "See the npm package") [Ⓣ][1]
Creates a slice of `array` from `start` up to, but not including, `end`.
@@ -1536,6 +1570,7 @@ returned.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to slice.
2. `[start=0]` *(number)*: The start position.
@@ -1551,13 +1586,14 @@ returned.
_.sortedIndex(array, value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7953 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedindex "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7946 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedindex "See the npm package") [Ⓣ][1]
Uses a binary search to determine the lowest index at which `value`
should be inserted into `array` in order to maintain its sort order.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The sorted array to inspect.
2. `value` *(*)*: The value to evaluate.
@@ -1577,7 +1613,7 @@ _.sortedIndex([30, 50], 40);
_.sortedIndexBy(array, value, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L7982 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedindexby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7975 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedindexby "See the npm package") [Ⓣ][1]
This method is like `_.sortedIndex` except that it accepts `iteratee`
which is invoked for `value` and each element of `array` to compute their
@@ -1585,6 +1621,7 @@ sort ranking. The iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The sorted array to inspect.
2. `value` *(*)*: The value to evaluate.
@@ -1611,13 +1648,14 @@ _.sortedIndexBy(objects, { 'x': 4 }, 'x');
_.sortedIndexOf(array, value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8002 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedindexof "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L7995 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedindexof "See the npm package") [Ⓣ][1]
This method is like `_.indexOf` except that it performs a binary
search on a sorted `array`.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `value` *(*)*: The value to search for.
@@ -1637,7 +1675,7 @@ _.sortedIndexOf([4, 5, 5, 5, 6], 5);
_.sortedLastIndex(array, value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8031 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindex "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8024 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindex "See the npm package") [Ⓣ][1]
This method is like `_.sortedIndex` except that it returns the highest
index at which `value` should be inserted into `array` in order to
@@ -1645,6 +1683,7 @@ maintain its sort order.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The sorted array to inspect.
2. `value` *(*)*: The value to evaluate.
@@ -1664,7 +1703,7 @@ _.sortedLastIndex([4, 5, 5, 5, 6], 5);
_.sortedLastIndexBy(array, value, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8060 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindexby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8053 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindexby "See the npm package") [Ⓣ][1]
This method is like `_.sortedLastIndex` except that it accepts `iteratee`
which is invoked for `value` and each element of `array` to compute their
@@ -1672,6 +1711,7 @@ sort ranking. The iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The sorted array to inspect.
2. `value` *(*)*: The value to evaluate.
@@ -1698,13 +1738,14 @@ _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');
_.sortedLastIndexOf(array, value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8080 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindexof "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8073 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortedlastindexof "See the npm package") [Ⓣ][1]
This method is like `_.lastIndexOf` except that it performs a binary
search on a sorted `array`.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `value` *(*)*: The value to search for.
@@ -1724,13 +1765,14 @@ _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);
_.sortedUniq(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8106 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sorteduniq "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8099 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sorteduniq "See the npm package") [Ⓣ][1]
This method is like `_.uniq` except that it's designed and optimized
for sorted arrays.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
@@ -1749,13 +1791,14 @@ _.sortedUniq([1, 1, 2]);
_.sortedUniqBy(array, [iteratee])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8128 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sorteduniqby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8121 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sorteduniqby "See the npm package") [Ⓣ][1]
This method is like `_.uniqBy` except that it's designed and optimized
for sorted arrays.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[iteratee]` *(Function)*: The iteratee invoked per element.
@@ -1775,12 +1818,13 @@ _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);
_.tail(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8148 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tail "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8141 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tail "See the npm package") [Ⓣ][1]
Gets all but the first element of `array`.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
@@ -1799,12 +1843,13 @@ _.tail([1, 2, 3]);
_.take(array, [n=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8178 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.take "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8171 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.take "See the npm package") [Ⓣ][1]
Creates a slice of `array` with `n` elements taken from the beginning.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[n=1]` *(number)*: The number of elements to take.
@@ -1833,12 +1878,13 @@ _.take([1, 2, 3], 0);
_.takeRight(array, [n=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8211 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.takeright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8204 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.takeright "See the npm package") [Ⓣ][1]
Creates a slice of `array` with `n` elements taken from the end.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[n=1]` *(number)*: The number of elements to take.
@@ -1867,7 +1913,7 @@ _.takeRight([1, 2, 3], 0);
_.takeRightWhile(array, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8256 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.takerightwhile "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8249 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.takerightwhile "See the npm package") [Ⓣ][1]
Creates a slice of `array` with elements taken from the end. Elements are
taken until `predicate` returns falsey. The predicate is invoked with
@@ -1875,6 +1921,7 @@ three arguments: *(value, index, array)*.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -1912,7 +1959,7 @@ _.takeRightWhile(users, 'active');
_.takeWhile(array, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8297 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.takewhile "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8290 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.takewhile "See the npm package") [Ⓣ][1]
Creates a slice of `array` with elements taken from the beginning. Elements
are taken until `predicate` returns falsey. The predicate is invoked with
@@ -1920,6 +1967,7 @@ three arguments: *(value, index, array)*.
#### Since
3.0.0
+
#### Arguments
1. `array` *(Array)*: The array to query.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -1957,7 +2005,7 @@ _.takeWhile(users, 'active');
_.union([arrays])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8319 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.union "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8312 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.union "See the npm package") [Ⓣ][1]
Creates an array of unique values, in order, from all given arrays using
[`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -1965,6 +2013,7 @@ for equality comparisons.
#### Since
0.1.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
@@ -1983,7 +2032,7 @@ _.union([2], [1, 2]);
_.unionBy([arrays], [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8346 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unionby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8339 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unionby "See the npm package") [Ⓣ][1]
This method is like `_.union` except that it accepts `iteratee` which is
invoked for each element of each `arrays` to generate the criterion by
@@ -1993,6 +2042,7 @@ array in which the value occurs. The iteratee is invoked with one argument:
#### Since
4.0.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -2016,7 +2066,7 @@ _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');
_.unionWith([arrays], [comparator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8375 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unionwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8368 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unionwith "See the npm package") [Ⓣ][1]
This method is like `_.union` except that it accepts `comparator` which
is invoked to compare elements of `arrays`. Result values are chosen from
@@ -2025,6 +2075,7 @@ with two arguments: *(arrVal, othVal)*.
#### Since
4.0.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
2. `[comparator]` *(Function)*: The comparator invoked per element.
@@ -2047,7 +2098,7 @@ _.unionWith(objects, others, _.isEqual);
_.uniq(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8399 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniq "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8392 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniq "See the npm package") [Ⓣ][1]
Creates a duplicate-free version of an array, using
[`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -2057,6 +2108,7 @@ in the array.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
@@ -2075,7 +2127,7 @@ _.uniq([2, 1, 2]);
_.uniqBy(array, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8426 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniqby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8419 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniqby "See the npm package") [Ⓣ][1]
This method is like `_.uniq` except that it accepts `iteratee` which is
invoked for each element in `array` to generate the criterion by which
@@ -2085,6 +2137,7 @@ order they occur in the array. The iteratee is invoked with one argument:
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -2108,7 +2161,7 @@ _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');
_.uniqWith(array, [comparator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8450 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniqwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8443 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniqwith "See the npm package") [Ⓣ][1]
This method is like `_.uniq` except that it accepts `comparator` which
is invoked to compare elements of `array`. The order of result values is
@@ -2117,6 +2170,7 @@ with two arguments: *(arrVal, othVal)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[comparator]` *(Function)*: The comparator invoked per element.
@@ -2138,7 +2192,7 @@ _.uniqWith(objects, _.isEqual);
_.unzip(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8474 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unzip "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8467 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unzip "See the npm package") [Ⓣ][1]
This method is like `_.zip` except that it accepts an array of grouped
elements and creates an array regrouping the elements to their pre-zip
@@ -2146,6 +2200,7 @@ configuration.
#### Since
1.2.0
+
#### Arguments
1. `array` *(Array)*: The array of grouped elements to process.
@@ -2167,7 +2222,7 @@ _.unzip(zipped);
_.unzipWith(array, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8511 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unzipwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8504 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unzipwith "See the npm package") [Ⓣ][1]
This method is like `_.unzip` except that it accepts `iteratee` to specify
how regrouped values should be combined. The iteratee is invoked with the
@@ -2175,6 +2230,7 @@ elements of each group: *(...group)*.
#### Since
3.8.0
+
#### Arguments
1. `array` *(Array)*: The array of grouped elements to process.
2. `[iteratee=_.identity]` *(Function)*: The function to combine regrouped values.
@@ -2197,7 +2253,7 @@ _.unzipWith(zipped, _.add);
_.without(array, [values])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8544 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.without "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8537 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.without "See the npm package") [Ⓣ][1]
Creates an array excluding all given values using
[`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -2208,6 +2264,7 @@ for equality comparisons.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to inspect.
2. `[values]` *(...*)*: The values to exclude.
@@ -2227,7 +2284,7 @@ _.without([2, 1, 2, 3], 1, 2);
_.xor([arrays])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8568 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.xor "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8561 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.xor "See the npm package") [Ⓣ][1]
Creates an array of unique values that is the
[symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)
@@ -2236,6 +2293,7 @@ they occur in the arrays.
#### Since
2.4.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
@@ -2254,7 +2312,7 @@ _.xor([2, 1], [2, 3]);
_.xorBy([arrays], [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8595 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.xorby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8588 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.xorby "See the npm package") [Ⓣ][1]
This method is like `_.xor` except that it accepts `iteratee` which is
invoked for each element of each `arrays` to generate the criterion by
@@ -2264,6 +2322,7 @@ argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -2287,7 +2346,7 @@ _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');
_.xorWith([arrays], [comparator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8624 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.xorwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8617 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.xorwith "See the npm package") [Ⓣ][1]
This method is like `_.xor` except that it accepts `comparator` which is
invoked to compare elements of `arrays`. The order of result values is
@@ -2296,6 +2355,7 @@ with two arguments: *(arrVal, othVal)*.
#### Since
4.0.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to inspect.
2. `[comparator]` *(Function)*: The comparator invoked per element.
@@ -2318,7 +2378,7 @@ _.xorWith(objects, others, _.isEqual);
_.zip([arrays])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8646 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zip "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8639 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zip "See the npm package") [Ⓣ][1]
Creates an array of grouped elements, the first of which contains the
first elements of the given arrays, the second of which contains the
@@ -2326,6 +2386,7 @@ second elements of the given arrays, and so on.
#### Since
0.1.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to process.
@@ -2344,13 +2405,14 @@ _.zip(['a', 'b'], [1, 2], [true, false]);
_.zipObject([props=[]], [values=[]])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8664 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zipobject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8657 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zipobject "See the npm package") [Ⓣ][1]
This method is like `_.fromPairs` except that it accepts two arrays,
one of property identifiers and one of corresponding values.
#### Since
0.4.0
+
#### Arguments
1. `[props=[]]` *(Array)*: The property identifiers.
2. `[values=[]]` *(Array)*: The property values.
@@ -2370,12 +2432,13 @@ _.zipObject(['a', 'b'], [1, 2]);
_.zipObjectDeep([props=[]], [values=[]])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8683 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zipobjectdeep "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8676 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zipobjectdeep "See the npm package") [Ⓣ][1]
This method is like `_.zipObject` except that it supports property paths.
#### Since
4.1.0
+
#### Arguments
1. `[props=[]]` *(Array)*: The property identifiers.
2. `[values=[]]` *(Array)*: The property values.
@@ -2395,7 +2458,7 @@ _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);
_.zipWith([arrays], [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8707 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zipwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8700 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.zipwith "See the npm package") [Ⓣ][1]
This method is like `_.zip` except that it accepts `iteratee` to specify
how grouped values should be combined. The iteratee is invoked with the
@@ -2403,6 +2466,7 @@ elements of each group: *(...group)*.
#### Since
3.8.0
+
#### Arguments
1. `[arrays]` *(...Array)*: The arrays to process.
2. `[iteratee=_.identity]` *(Function)*: The function to combine grouped values.
@@ -2430,7 +2494,7 @@ _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {
_.countBy(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9086 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.countby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9079 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.countby "See the npm package") [Ⓣ][1]
Creates an object composed of keys generated from the results of running
each element of `collection` thru `iteratee`. The corresponding value of
@@ -2439,6 +2503,7 @@ iteratee is invoked with one argument: *(value)*.
#### Since
0.5.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee to transform keys.
@@ -2462,7 +2527,7 @@ _.countBy(['one', 'two', 'three'], 'length');
_.every(collection, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9135 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.every "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9128 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.every "See the npm package") [Ⓣ][1]
Checks if `predicate` returns truthy for **all** elements of `collection`.
Iteration is stopped once `predicate` returns falsey. The predicate is
@@ -2476,6 +2541,7 @@ elements of empty collections.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2512,7 +2578,7 @@ _.every(users, 'active');
_.filter(collection, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9180 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.filter "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9173 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.filter "See the npm package") [Ⓣ][1]
Iterates over elements of `collection`, returning an array of all elements
`predicate` returns truthy for. The predicate is invoked with three
@@ -2523,6 +2589,7 @@ arguments: *(value, index|key, collection)*.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2559,7 +2626,7 @@ _.filter(users, 'active');
_.find(collection, [predicate=_.identity], [fromIndex=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9221 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.find "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9214 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.find "See the npm package") [Ⓣ][1]
Iterates over elements of `collection`, returning the first element
`predicate` returns truthy for. The predicate is invoked with three
@@ -2567,6 +2634,7 @@ arguments: *(value, index|key, collection)*.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to inspect.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2605,13 +2673,14 @@ _.find(users, 'active');
_.findLast(collection, [predicate=_.identity], [fromIndex=collection.length-1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9242 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findlast "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9235 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findlast "See the npm package") [Ⓣ][1]
This method is like `_.find` except that it iterates over elements of
`collection` from right to left.
#### Since
2.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to inspect.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2634,7 +2703,7 @@ _.findLast([1, 2, 3, 4], function(n) {
_.flatMap(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9265 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatmap "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9258 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatmap "See the npm package") [Ⓣ][1]
Creates a flattened array of values by running each element in `collection`
thru `iteratee` and flattening the mapped results. The iteratee is invoked
@@ -2642,6 +2711,7 @@ with three arguments: *(value, index|key, collection)*.
#### Since
4.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2665,13 +2735,14 @@ _.flatMap([1, 2], duplicate);
_.flatMapDeep(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9289 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatmapdeep "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9282 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatmapdeep "See the npm package") [Ⓣ][1]
This method is like `_.flatMap` except that it recursively flattens the
mapped results.
#### Since
4.7.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2695,13 +2766,14 @@ _.flatMapDeep([1, 2], duplicate);
_.flatMapDepth(collection, [iteratee=_.identity], [depth=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9314 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatmapdepth "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9307 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flatmapdepth "See the npm package") [Ⓣ][1]
This method is like `_.flatMap` except that it recursively flattens the
mapped results up to `depth` times.
#### Since
4.7.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2726,7 +2798,7 @@ _.flatMapDepth([1, 2], duplicate, 2);
_.forEach(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9349 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.foreach "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9342 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.foreach "See the npm package") [Ⓣ][1]
Iterates over elements of `collection` and invokes `iteratee` for each element.
The iteratee is invoked with three arguments: *(value, index|key, collection)*.
@@ -2739,6 +2811,7 @@ or `_.forOwn` for object iteration.
#### Since
0.1.0
+
#### Aliases
*_.each*
@@ -2768,13 +2841,14 @@ _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {
_.forEachRight(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9374 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.foreachright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9367 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.foreachright "See the npm package") [Ⓣ][1]
This method is like `_.forEach` except that it iterates over elements of
`collection` from right to left.
#### Since
2.0.0
+
#### Aliases
*_.eachRight*
@@ -2799,7 +2873,7 @@ _.forEachRight([1, 2], function(value) {
_.groupBy(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9402 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.groupby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9395 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.groupby "See the npm package") [Ⓣ][1]
Creates an object composed of keys generated from the results of running
each element of `collection` thru `iteratee`. The order of grouped values
@@ -2809,6 +2883,7 @@ key. The iteratee is invoked with one argument: *(value)*.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee to transform keys.
@@ -2832,7 +2907,7 @@ _.groupBy(['one', 'two', 'three'], 'length');
_.includes(collection, value, [fromIndex=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9440 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.includes "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9433 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.includes "See the npm package") [Ⓣ][1]
Checks if `value` is in `collection`. If `collection` is a string, it's
checked for a substring of `value`, otherwise
@@ -2842,6 +2917,7 @@ the offset from the end of `collection`.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object|string)*: The collection to inspect.
2. `value` *(*)*: The value to search for.
@@ -2871,7 +2947,7 @@ _.includes('abcd', 'bc');
_.invokeMap(collection, path, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9476 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invokemap "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9469 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invokemap "See the npm package") [Ⓣ][1]
Invokes the method at `path` of each element in `collection`, returning
an array of the results of each invoked method. Any additional arguments
@@ -2880,6 +2956,7 @@ for, and `this` bound to, each element in `collection`.
#### Since
4.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `path` *(Array|Function|string)*: The path of the method to invoke or the function invoked per iteration.
@@ -2903,7 +2980,7 @@ _.invokeMap([123, 456], String.prototype.split, '');
_.keyBy(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9515 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.keyby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9508 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.keyby "See the npm package") [Ⓣ][1]
Creates an object composed of keys generated from the results of running
each element of `collection` thru `iteratee`. The corresponding value of
@@ -2912,6 +2989,7 @@ iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee to transform keys.
@@ -2941,7 +3019,7 @@ _.keyBy(array, 'dir');
_.map(collection, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9561 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.map "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9554 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.map "See the npm package") [Ⓣ][1]
Creates an array of values by running each element in `collection` thru
`iteratee`. The iteratee is invoked with three arguments:
@@ -2960,6 +3038,7 @@ The guarded methods are:
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -2995,7 +3074,7 @@ _.map(users, 'user');
_.orderBy(collection, [iteratees=[_.identity]], [orders])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9595 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.orderby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9588 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.orderby "See the npm package") [Ⓣ][1]
This method is like `_.sortBy` except that it allows specifying the sort
orders of the iteratees to sort by. If `orders` is unspecified, all values
@@ -3004,6 +3083,7 @@ descending or "asc" for ascending sort order of corresponding values.
#### Since
4.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratees=[_.identity]]` *(Array[]|Function[]|Object[]|string[])*: The iteratees to sort by.
@@ -3032,7 +3112,7 @@ _.orderBy(users, ['user', 'age'], ['asc', 'desc']);
_.partition(collection, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9645 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.partition "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9638 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.partition "See the npm package") [Ⓣ][1]
Creates an array of elements split into two groups, the first of which
contains elements `predicate` returns truthy for, the second of which
@@ -3041,6 +3121,7 @@ invoked with one argument: *(value)*.
#### Since
3.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -3078,7 +3159,7 @@ _.partition(users, 'active');
_.reduce(collection, [iteratee=_.identity], [accumulator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9686 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reduce "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9679 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reduce "See the npm package") [Ⓣ][1]
Reduces `collection` to a value which is the accumulated result of running
each element in `collection` thru `iteratee`, where each successive
@@ -3098,6 +3179,7 @@ and `sortBy`
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -3126,13 +3208,14 @@ _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {
_.reduceRight(collection, [iteratee=_.identity], [accumulator])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9715 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reduceright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9708 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reduceright "See the npm package") [Ⓣ][1]
This method is like `_.reduce` except that it iterates over elements of
`collection` from right to left.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -3157,13 +3240,14 @@ _.reduceRight(array, function(flattened, other) {
_.reject(collection, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9756 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9749 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.reject "See the npm package") [Ⓣ][1]
The opposite of `_.filter`; this method returns the elements of `collection`
that `predicate` does **not** return truthy for.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -3200,12 +3284,13 @@ _.reject(users, 'active');
_.sample(collection)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9775 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sample "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9768 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sample "See the npm package") [Ⓣ][1]
Gets a random element from `collection`.
#### Since
2.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to sample.
@@ -3224,13 +3309,14 @@ _.sample([1, 2, 3, 4]);
_.sampleSize(collection, [n=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9800 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.samplesize "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9793 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.samplesize "See the npm package") [Ⓣ][1]
Gets `n` random elements at unique keys from `collection` up to the
size of `collection`.
#### Since
4.0.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to sample.
2. `[n=1]` *(number)*: The number of elements to sample.
@@ -3253,13 +3339,14 @@ _.sampleSize([1, 2, 3], 4);
_.shuffle(collection)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9825 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.shuffle "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9818 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.shuffle "See the npm package") [Ⓣ][1]
Creates an array of shuffled values, using a version of the
[Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to shuffle.
@@ -3278,13 +3365,14 @@ _.shuffle([1, 2, 3, 4]);
_.size(collection)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9851 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.size "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9844 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.size "See the npm package") [Ⓣ][1]
Gets the size of `collection` by returning its length for array-like
values or the number of own enumerable string keyed properties for objects.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object|string)*: The collection to inspect.
@@ -3309,7 +3397,7 @@ _.size('pebbles');
_.some(collection, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9901 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.some "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9894 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.some "See the npm package") [Ⓣ][1]
Checks if `predicate` returns truthy for **any** element of `collection`.
Iteration is stopped once `predicate` returns truthy. The predicate is
@@ -3317,6 +3405,7 @@ invoked with three arguments: *(value, index|key, collection)*.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -3353,7 +3442,7 @@ _.some(users, 'active');
_.sortBy(collection, [iteratees=[_.identity]])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9938 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9931 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sortby "See the npm package") [Ⓣ][1]
Creates an array of elements, sorted in ascending order by the results of
running each element in a collection thru each iteratee. This method
@@ -3362,6 +3451,7 @@ equal elements. The iteratees are invoked with one argument: *(value)*.
#### Since
0.1.0
+
#### Arguments
1. `collection` *(Array|Object)*: The collection to iterate over.
2. `[iteratees=[_.identity]]` *(...(Function|Function[]))*: The iteratees to sort by.
@@ -3397,13 +3487,14 @@ _.sortBy(users, ['user', 'age']);
_.now()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9969 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.now "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9962 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.now "See the npm package") [Ⓣ][1]
Gets the timestamp of the number of milliseconds that have elapsed since
the Unix epoch *(1 January `1970 00`:00:00 UTC)*.
#### Since
2.4.0
+
#### Returns
*(number)*: Returns the timestamp.
@@ -3427,13 +3518,14 @@ _.defer(function(stamp) {
_.after(n, func)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9999 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.after "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9992 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.after "See the npm package") [Ⓣ][1]
The opposite of `_.before`; this method creates a function that invokes
`func` once it's called `n` or more times.
#### Since
0.1.0
+
#### Arguments
1. `n` *(number)*: The number of calls before `func` is invoked.
2. `func` *(Function)*: The function to restrict.
@@ -3461,13 +3553,14 @@ _.forEach(saves, function(type) {
_.ary(func, [n=func.length])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10028 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ary "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10021 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ary "See the npm package") [Ⓣ][1]
Creates a function that invokes `func`, with up to `n` arguments,
ignoring any additional arguments.
#### Since
3.0.0
+
#### Arguments
1. `func` *(Function)*: The function to cap arguments for.
2. `[n=func.length]` *(number)*: The arity cap.
@@ -3487,7 +3580,7 @@ _.map(['6', '8', '10'], _.ary(parseInt, 1));
_.before(n, func)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10051 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.before "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10044 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.before "See the npm package") [Ⓣ][1]
Creates a function that invokes `func`, with the `this` binding and arguments
of the created function, while it's called less than `n` times. Subsequent
@@ -3495,6 +3588,7 @@ calls to the created function return the result of the last `func` invocation.
#### Since
3.0.0
+
#### Arguments
1. `n` *(number)*: The number of calls at which `func` is no longer invoked.
2. `func` *(Function)*: The function to restrict.
@@ -3514,7 +3608,7 @@ jQuery(element).on('click', _.before(5, addContactToList));
_.bind(func, thisArg, [partials])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10103 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.bind "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10096 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.bind "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with the `this` binding of `thisArg`
and `partials` prepended to the arguments it receives.
@@ -3529,6 +3623,7 @@ property of bound functions.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to bind.
2. `thisArg` *(*)*: The `this` binding of `func`.
@@ -3561,7 +3656,7 @@ bound('hi');
_.bindKey(object, key, [partials])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10157 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.bindkey "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10150 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.bindkey "See the npm package") [Ⓣ][1]
Creates a function that invokes the method at `object[key]` with `partials`
prepended to the arguments it receives.
@@ -3578,6 +3673,7 @@ builds, may be used as a placeholder for partially applied arguments.
#### Since
0.10.0
+
#### Arguments
1. `object` *(Object)*: The object to invoke the method on.
2. `key` *(string)*: The key of the method.
@@ -3618,7 +3714,7 @@ bound('hi');
_.curry(func, [arity=func.length])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10207 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.curry "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10200 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.curry "See the npm package") [Ⓣ][1]
Creates a function that accepts arguments of `func` and either invokes
`func` returning its result, if at least `arity` number of arguments have
@@ -3635,6 +3731,7 @@ may be used as a placeholder for provided arguments.
#### Since
2.0.0
+
#### Arguments
1. `func` *(Function)*: The function to curry.
2. `[arity=func.length]` *(number)*: The arity of `func`.
@@ -3670,7 +3767,7 @@ curried(1)(_, 3)(2);
_.curryRight(func, [arity=func.length])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10252 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.curryright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10245 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.curryright "See the npm package") [Ⓣ][1]
This method is like `_.curry` except that arguments are applied to `func`
in the manner of `_.partialRight` instead of `_.partial`.
@@ -3684,6 +3781,7 @@ builds, may be used as a placeholder for provided arguments.
#### Since
3.0.0
+
#### Arguments
1. `func` *(Function)*: The function to curry.
2. `[arity=func.length]` *(number)*: The arity of `func`.
@@ -3719,7 +3817,7 @@ curried(3)(1, _)(2);
_.debounce(func, [wait=0], [options={}])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10313 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.debounce "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10306 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.debounce "See the npm package") [Ⓣ][1]
Creates a debounced function that delays invoking `func` until after `wait`
milliseconds have elapsed since the last time the debounced function was
@@ -3746,6 +3844,7 @@ for details over the differences between `_.debounce` and `_.throttle`.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to debounce.
2. `[wait=0]` *(number)*: The number of milliseconds to delay.
@@ -3783,13 +3882,14 @@ jQuery(window).on('popstate', debounced.cancel);
_.defer(func, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10453 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defer "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10446 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defer "See the npm package") [Ⓣ][1]
Defers invoking the `func` until the current call stack has cleared. Any
additional arguments are provided to `func` when it's invoked.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to defer.
2. `[args]` *(...*)*: The arguments to invoke `func` with.
@@ -3811,13 +3911,14 @@ _.defer(function(text) {
_.delay(func, wait, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10476 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.delay "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10469 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.delay "See the npm package") [Ⓣ][1]
Invokes `func` after `wait` milliseconds. Any additional arguments are
provided to `func` when it's invoked.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to delay.
2. `wait` *(number)*: The number of milliseconds to delay invocation.
@@ -3840,12 +3941,13 @@ _.delay(function(text) {
_.flip(func)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10498 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flip "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10491 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flip "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with arguments reversed.
#### Since
4.0.0
+
#### Arguments
1. `func` *(Function)*: The function to flip arguments for.
@@ -3868,7 +3970,7 @@ flipped('a', 'b', 'c', 'd');
_.memoize(func, [resolver])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10546 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.memoize "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10539 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.memoize "See the npm package") [Ⓣ][1]
Creates a function that memoizes the result of `func`. If `resolver` is
provided, it determines the cache key for storing the result based on the
@@ -3885,6 +3987,7 @@ method interface of `clear`, `delete`, `get`, `has`, and `set`.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to have its output memoized.
2. `[resolver]` *(Function)*: The function to resolve the cache key.
@@ -3923,7 +4026,7 @@ _.memoize.Cache = WeakMap;
_.negate(predicate)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10589 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.negate "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10582 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.negate "See the npm package") [Ⓣ][1]
Creates a function that negates the result of the predicate `func`. The
`func` predicate is invoked with the `this` binding and arguments of the
@@ -3931,6 +4034,7 @@ created function.
#### Since
3.0.0
+
#### Arguments
1. `predicate` *(Function)*: The predicate to negate.
@@ -3953,7 +4057,7 @@ _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
_.once(func)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10623 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.once "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10616 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.once "See the npm package") [Ⓣ][1]
Creates a function that is restricted to invoking `func` once. Repeat calls
to the function return the value of the first invocation. The `func` is
@@ -3961,6 +4065,7 @@ invoked with the `this` binding and arguments of the created function.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to restrict.
@@ -3981,12 +4086,13 @@ initialize();
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10658 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.overargs "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10651 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.overargs "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with its arguments transformed.
#### Since
4.0.0
+
#### Arguments
1. `func` *(Function)*: The function to wrap.
2. `[transforms=[_.identity]]` *(...(Function|Function[]))*: The argument transforms.
@@ -4021,7 +4127,7 @@ func(10, 5);
_.partial(func, [partials])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10708 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.partial "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10701 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.partial "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with `partials` prepended to the
arguments it receives. This method is like `_.bind` except it does **not**
@@ -4037,6 +4143,7 @@ applied functions.
#### Since
0.2.0
+
#### Arguments
1. `func` *(Function)*: The function to partially apply arguments to.
2. `[partials]` *(...*)*: The arguments to be partially applied.
@@ -4066,7 +4173,7 @@ greetFred('hi');
_.partialRight(func, [partials])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10745 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.partialright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10738 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.partialright "See the npm package") [Ⓣ][1]
This method is like `_.partial` except that partially applied arguments
are appended to the arguments it receives.
@@ -4081,6 +4188,7 @@ applied functions.
#### Since
1.0.0
+
#### Arguments
1. `func` *(Function)*: The function to partially apply arguments to.
2. `[partials]` *(...*)*: The arguments to be partially applied.
@@ -4110,7 +4218,7 @@ sayHelloTo('fred');
_.rearg(func, indexes)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10772 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.rearg "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10765 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.rearg "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with arguments arranged according
to the specified `indexes` where the argument value at the first index is
@@ -4119,6 +4227,7 @@ provided as the second argument, and so on.
#### Since
3.0.0
+
#### Arguments
1. `func` *(Function)*: The function to rearrange arguments for.
2. `indexes` *(...(number|number[]))*: The arranged argument indexes.
@@ -4142,7 +4251,7 @@ rearged('b', 'c', 'a')
_.rest(func, [start=func.length-1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10801 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.rest "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10794 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.rest "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with the `this` binding of the
created function and arguments from `start` and beyond provided as
@@ -4154,6 +4263,7 @@ an array.
#### Since
4.0.0
+
#### Arguments
1. `func` *(Function)*: The function to apply a rest parameter to.
2. `[start=func.length-1]` *(number)*: The start position of the rest parameter.
@@ -4178,7 +4288,7 @@ say('hello', 'fred', 'barney', 'pebbles');
_.spread(func, [start=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10843 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.spread "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10836 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.spread "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with the `this` binding of the
create function and an array of arguments much like
@@ -4190,6 +4300,7 @@ create function and an array of arguments much like
#### Since
3.2.0
+
#### Arguments
1. `func` *(Function)*: The function to spread arguments over.
2. `[start=0]` *(number)*: The start position of the spread.
@@ -4223,7 +4334,7 @@ numbers.then(_.spread(function(x, y) {
_.throttle(func, [wait=0], [options={}])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10907 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.throttle "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10896 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.throttle "See the npm package") [Ⓣ][1]
Creates a throttled function that only invokes `func` at most once per
every `wait` milliseconds. The throttled function comes with a `cancel`
@@ -4249,6 +4360,7 @@ for details over the differences between `_.throttle` and `_.debounce`.
#### Since
0.1.0
+
#### Arguments
1. `func` *(Function)*: The function to throttle.
2. `[wait=0]` *(number)*: The number of milliseconds to throttle invocations to.
@@ -4278,13 +4390,14 @@ jQuery(window).on('popstate', throttled.cancel);
_.unary(func)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10940 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unary "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10929 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unary "See the npm package") [Ⓣ][1]
Creates a function that accepts up to one argument, ignoring any
additional arguments.
#### Since
4.0.0
+
#### Arguments
1. `func` *(Function)*: The function to cap arguments for.
@@ -4303,7 +4416,7 @@ _.map(['6', '8', '10'], _.unary(parseInt));
_.wrap(value, [wrapper=identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L10966 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.wrap "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10955 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.wrap "See the npm package") [Ⓣ][1]
Creates a function that provides `value` to `wrapper` as its first
argument. Any additional arguments provided to the function are appended
@@ -4312,6 +4425,7 @@ binding of the created function.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to wrap.
2. `[wrapper=identity]` *(Function)*: The wrapper function.
@@ -4341,12 +4455,13 @@ p('fred, barney, & pebbles');
_.castArray(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11005 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.castarray "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L10994 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.castarray "See the npm package") [Ⓣ][1]
Casts `value` as an array if it's not one.
#### Since
4.4.0
+
#### Arguments
1. `value` *(*)*: The value to inspect.
@@ -4384,7 +4499,7 @@ console.log(_.castArray(array) === array);
_.clone(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11039 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clone "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11028 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clone "See the npm package") [Ⓣ][1]
Creates a shallow clone of `value`.
@@ -4399,6 +4514,7 @@ as error objects, functions, DOM nodes, and WeakMaps.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to clone.
@@ -4420,12 +4536,13 @@ console.log(shallow[0] === objects[0]);
_.cloneDeep(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11097 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clonedeep "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11086 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clonedeep "See the npm package") [Ⓣ][1]
This method is like `_.clone` except that it recursively clones `value`.
#### Since
1.0.0
+
#### Arguments
1. `value` *(*)*: The value to recursively clone.
@@ -4447,12 +4564,13 @@ console.log(deep[0] === objects[0]);
_.cloneDeepWith(value, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11129 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clonedeepwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11118 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clonedeepwith "See the npm package") [Ⓣ][1]
This method is like `_.cloneWith` except that it recursively clones `value`.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to recursively clone.
2. `[customizer]` *(Function)*: The function to customize cloning.
@@ -4484,7 +4602,7 @@ console.log(el.childNodes.length);
_.cloneWith(value, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11074 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clonewith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11063 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clonewith "See the npm package") [Ⓣ][1]
This method is like `_.clone` except that it accepts `customizer` which
is invoked to produce the cloned value. If `customizer` returns `undefined`,
@@ -4493,6 +4611,7 @@ up to four arguments; *(value [, index|key, object, stack])*.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to clone.
2. `[customizer]` *(Function)*: The function to customize cloning.
@@ -4524,7 +4643,7 @@ console.log(el.childNodes.length);
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11158 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.conformsto "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11147 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.conformsto "See the npm package") [Ⓣ][1]
Checks if `object` conforms to `source` by invoking the predicate
properties of `source` with the corresponding property values of `object`.
@@ -4535,6 +4654,7 @@ partially applied.
#### Since
4.14.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
2. `source` *(Object)*: The object of property predicates to conform to.
@@ -4559,7 +4679,7 @@ _.conformsTo(object, { 'b': function(n) { return n > 2; } });
_.eq(value, other)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11194 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.eq "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11183 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.eq "See the npm package") [Ⓣ][1]
Performs a
[`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
@@ -4567,6 +4687,7 @@ comparison between two values to determine if they are equivalent.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -4601,12 +4722,13 @@ _.eq(NaN, NaN);
_.gt(value, other)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11221 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.gt "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11210 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.gt "See the npm package") [Ⓣ][1]
Checks if `value` is greater than `other`.
#### Since
3.9.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -4632,12 +4754,13 @@ _.gt(1, 3);
_.gte(value, other)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11246 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.gte "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11235 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.gte "See the npm package") [Ⓣ][1]
Checks if `value` is greater than or equal to `other`.
#### Since
3.9.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -4663,12 +4786,13 @@ _.gte(1, 3);
_.isArguments(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11268 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarguments "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11257 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarguments "See the npm package") [Ⓣ][1]
Checks if `value` is likely an `arguments` object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4690,12 +4814,13 @@ _.isArguments([1, 2, 3]);
_.isArray(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11296 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarray "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11285 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarray "See the npm package") [Ⓣ][1]
Checks if `value` is classified as an `Array` object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4723,12 +4848,13 @@ _.isArray(_.noop);
_.isArrayBuffer(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11315 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarraybuffer "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11304 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarraybuffer "See the npm package") [Ⓣ][1]
Checks if `value` is classified as an `ArrayBuffer` object.
#### Since
4.3.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4750,7 +4876,7 @@ _.isArrayBuffer(new Array(2));
_.isArrayLike(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11342 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarraylike "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11331 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarraylike "See the npm package") [Ⓣ][1]
Checks if `value` is array-like. A value is considered array-like if it's
not a function and has a `value.length` that's an integer greater than or
@@ -4758,6 +4884,7 @@ equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4785,13 +4912,14 @@ _.isArrayLike(_.noop);
_.isArrayLikeObject(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11371 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarraylikeobject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11360 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isarraylikeobject "See the npm package") [Ⓣ][1]
This method is like `_.isArrayLike` except that it also checks if `value`
is an object.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4819,12 +4947,13 @@ _.isArrayLikeObject(_.noop);
_.isBoolean(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11392 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isboolean "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11381 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isboolean "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a boolean primitive or object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4846,12 +4975,13 @@ _.isBoolean(null);
_.isBuffer(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11414 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isbuffer "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11403 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isbuffer "See the npm package") [Ⓣ][1]
Checks if `value` is a buffer.
#### Since
4.3.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4873,12 +5003,13 @@ _.isBuffer(new Uint8Array(2));
_.isDate(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11433 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isdate "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11422 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isdate "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `Date` object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4900,12 +5031,13 @@ _.isDate('Mon April 23 2012');
_.isElement(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11452 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.iselement "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11441 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.iselement "See the npm package") [Ⓣ][1]
Checks if `value` is likely a DOM element.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4927,7 +5059,7 @@ _.isElement('');
_.isEmpty(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11489 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isempty "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11478 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isempty "See the npm package") [Ⓣ][1]
Checks if `value` is an empty object, collection, map, or set.
@@ -4942,6 +5074,7 @@ Similarly, maps and sets are considered empty if they have a `size` of `0`.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -4972,7 +5105,7 @@ _.isEmpty({ 'a': 1 });
_.isEqual(value, other)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11541 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isequal "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11530 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isequal "See the npm package") [Ⓣ][1]
Performs a deep comparison between two values to determine if they are
equivalent.
@@ -4986,6 +5119,7 @@ nodes are **not** supported.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -5011,7 +5145,7 @@ object === other;
_.isEqualWith(value, other, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11577 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isequalwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11566 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isequalwith "See the npm package") [Ⓣ][1]
This method is like `_.isEqual` except that it accepts `customizer` which
is invoked to compare values. If `customizer` returns `undefined`, comparisons
@@ -5020,6 +5154,7 @@ six arguments: *(objValue, othValue [, index|key, object, other, stack])*.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -5053,13 +5188,14 @@ _.isEqualWith(array, other, customizer);
_.isError(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11601 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.iserror "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11590 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.iserror "See the npm package") [Ⓣ][1]
Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,
`SyntaxError`, `TypeError`, or `URIError` object.
#### Since
3.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5081,7 +5217,7 @@ _.isError(Error);
_.isFinite(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11636 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isfinite "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11625 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isfinite "See the npm package") [Ⓣ][1]
Checks if `value` is a finite primitive number.
@@ -5091,6 +5227,7 @@ Checks if `value` is a finite primitive number.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5118,12 +5255,13 @@ _.isFinite('3');
_.isFunction(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11657 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isfunction "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11646 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isfunction "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `Function` object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5145,7 +5283,7 @@ _.isFunction(/abc/);
_.isInteger(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11693 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isinteger "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11682 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isinteger "See the npm package") [Ⓣ][1]
Checks if `value` is an integer.
@@ -5155,6 +5293,7 @@ Checks if `value` is an integer.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5182,7 +5321,7 @@ _.isInteger('3');
_.isLength(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11723 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.islength "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11712 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.islength "See the npm package") [Ⓣ][1]
Checks if `value` is a valid array-like length.
@@ -5192,6 +5331,7 @@ Checks if `value` is a valid array-like length.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5219,12 +5359,13 @@ _.isLength('3');
_.isMap(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11803 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ismap "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11792 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ismap "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `Map` object.
#### Since
4.3.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5246,7 +5387,7 @@ _.isMap(new WeakMap);
_.isMatch(object, source)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11833 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ismatch "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11822 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ismatch "See the npm package") [Ⓣ][1]
Performs a partial deep comparison between `object` and `source` to
determine if `object` contains equivalent property values.
@@ -5262,6 +5403,7 @@ for a list of supported value comparisons.
#### Since
3.0.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
2. `source` *(Object)*: The object of property values to match.
@@ -5286,7 +5428,7 @@ _.isMatch(object, { 'b': 1 });
_.isMatchWith(object, source, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11869 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ismatchwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11858 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ismatchwith "See the npm package") [Ⓣ][1]
This method is like `_.isMatch` except that it accepts `customizer` which
is invoked to compare values. If `customizer` returns `undefined`, comparisons
@@ -5295,6 +5437,7 @@ arguments: *(objValue, srcValue, index|key, object, source)*.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
2. `source` *(Object)*: The object of property values to match.
@@ -5328,7 +5471,7 @@ _.isMatchWith(object, source, customizer);
_.isNaN(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11902 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnan "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11891 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnan "See the npm package") [Ⓣ][1]
Checks if `value` is `NaN`.
@@ -5340,6 +5483,7 @@ global [`isNaN`](https://mdn.io/isNaN) which returns `true` for
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5367,7 +5511,7 @@ _.isNaN(undefined);
_.isNative(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11935 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnative "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11924 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnative "See the npm package") [Ⓣ][1]
Checks if `value` is a pristine native function.
@@ -5382,6 +5526,7 @@ which rely on core-js.
#### Since
3.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5403,12 +5548,13 @@ _.isNative(_);
_.isNil(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11983 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnil "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11972 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnil "See the npm package") [Ⓣ][1]
Checks if `value` is `null` or `undefined`.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5433,12 +5579,13 @@ _.isNil(NaN);
_.isNull(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11959 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnull "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11948 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnull "See the npm package") [Ⓣ][1]
Checks if `value` is `null`.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5460,7 +5607,7 @@ _.isNull(void 0);
_.isNumber(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12013 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnumber "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12002 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isnumber "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `Number` primitive or object.
@@ -5470,6 +5617,7 @@ classified as numbers, use the `_.isFinite` method.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5497,7 +5645,7 @@ _.isNumber('3');
_.isObject(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11753 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isobject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11742 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isobject "See the npm package") [Ⓣ][1]
Checks if `value` is the
[language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
@@ -5505,6 +5653,7 @@ of `Object`. *(e.g. arrays, functions, objects, regexes, `new Number(0)`, and `n
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5532,13 +5681,14 @@ _.isObject(null);
_.isObjectLike(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L11782 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isobjectlike "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L11771 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isobjectlike "See the npm package") [Ⓣ][1]
Checks if `value` is object-like. A value is object-like if it's not `null`
and has a `typeof` result of "object".
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5566,13 +5716,14 @@ _.isObjectLike(null);
_.isPlainObject(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12046 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isplainobject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12035 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isplainobject "See the npm package") [Ⓣ][1]
Checks if `value` is a plain object, that is, an object created by the
`Object` constructor or one with a `[[Prototype]]` of `null`.
#### Since
0.8.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5604,12 +5755,13 @@ _.isPlainObject(Object.create(null));
_.isRegExp(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12076 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isregexp "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12065 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isregexp "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `RegExp` object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5631,7 +5783,7 @@ _.isRegExp('/abc/');
_.isSafeInteger(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12105 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.issafeinteger "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12094 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.issafeinteger "See the npm package") [Ⓣ][1]
Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754
double precision number which isn't the result of a rounded unsafe integer.
@@ -5642,6 +5794,7 @@ double precision number which isn't the result of a rounded unsafe integer.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5669,12 +5822,13 @@ _.isSafeInteger('3');
_.isSet(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12126 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isset "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12115 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isset "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `Set` object.
#### Since
4.3.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5696,12 +5850,13 @@ _.isSet(new WeakSet);
_.isString(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12145 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isstring "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12134 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isstring "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `String` primitive or object.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5723,12 +5878,13 @@ _.isString(1);
_.isSymbol(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12167 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.issymbol "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12156 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.issymbol "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `Symbol` primitive or object.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5750,12 +5906,13 @@ _.isSymbol('abc');
_.isTypedArray(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12189 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.istypedarray "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12178 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.istypedarray "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a typed array.
#### Since
3.0.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5777,12 +5934,13 @@ _.isTypedArray([]);
_.isUndefined(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12208 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isundefined "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12197 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isundefined "See the npm package") [Ⓣ][1]
Checks if `value` is `undefined`.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5804,12 +5962,13 @@ _.isUndefined(null);
_.isWeakMap(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12229 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isweakmap "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12218 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isweakmap "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `WeakMap` object.
#### Since
4.3.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5831,12 +5990,13 @@ _.isWeakMap(new Map);
_.isWeakSet(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12250 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isweakset "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12239 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.isweakset "See the npm package") [Ⓣ][1]
Checks if `value` is classified as a `WeakSet` object.
#### Since
4.3.0
+
#### Arguments
1. `value` *(*)*: The value to check.
@@ -5858,12 +6018,13 @@ _.isWeakSet(new Set);
_.lt(value, other)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12277 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lt "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12266 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lt "See the npm package") [Ⓣ][1]
Checks if `value` is less than `other`.
#### Since
3.9.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -5889,12 +6050,13 @@ _.lt(3, 1);
_.lte(value, other)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12302 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lte "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12291 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lte "See the npm package") [Ⓣ][1]
Checks if `value` is less than or equal to `other`.
#### Since
3.9.0
+
#### Arguments
1. `value` *(*)*: The value to compare.
2. `other` *(*)*: The other value to compare.
@@ -5920,12 +6082,13 @@ _.lte(3, 1);
_.toArray(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12329 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.toarray "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12318 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.toarray "See the npm package") [Ⓣ][1]
Converts `value` to an array.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -5953,12 +6116,13 @@ _.toArray(null);
_.toFinite(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12368 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tofinite "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12357 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tofinite "See the npm package") [Ⓣ][1]
Converts `value` to a finite number.
#### Since
4.12.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -5986,7 +6150,7 @@ _.toFinite('3.2');
_.toInteger(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12406 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tointeger "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12395 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tointeger "See the npm package") [Ⓣ][1]
Converts `value` to an integer.
@@ -5996,6 +6160,7 @@ Converts `value` to an integer.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -6023,7 +6188,7 @@ _.toInteger('3.2');
_.toLength(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12440 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tolength "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12429 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tolength "See the npm package") [Ⓣ][1]
Converts `value` to an integer suitable for use as the length of an
array-like object.
@@ -6034,6 +6199,7 @@ array-like object.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -6061,12 +6227,13 @@ _.toLength('3.2');
_.toNumber(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12467 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tonumber "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12456 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tonumber "See the npm package") [Ⓣ][1]
Converts `value` to a number.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to process.
@@ -6094,13 +6261,14 @@ _.toNumber('3.2');
_.toPlainObject(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12512 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.toplainobject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12501 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.toplainobject "See the npm package") [Ⓣ][1]
Converts `value` to a plain object flattening inherited enumerable string
keyed properties of `value` to own properties of the plain object.
#### Since
3.0.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -6128,13 +6296,14 @@ _.assign({ 'a': 1 }, _.toPlainObject(new Foo));
_.toSafeInteger(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12540 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tosafeinteger "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12529 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tosafeinteger "See the npm package") [Ⓣ][1]
Converts `value` to a safe integer. A safe integer can be compared and
represented correctly.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -6162,13 +6331,14 @@ _.toSafeInteger('3.2');
_.toString(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12565 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tostring "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12554 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tostring "See the npm package") [Ⓣ][1]
Converts `value` to a string. An empty string is returned for `null`
and `undefined` values. The sign of `-0` is preserved.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -6199,12 +6369,13 @@ _.toString([1, 2, 3]);
_.add(augend, addend)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16156 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.add "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16145 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.add "See the npm package") [Ⓣ][1]
Adds two numbers.
#### Since
3.4.0
+
#### Arguments
1. `augend` *(number)*: The first number in an addition.
2. `addend` *(number)*: The second number in an addition.
@@ -6224,12 +6395,13 @@ _.add(6, 4);
_.ceil(number, [precision=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16181 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ceil "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16170 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ceil "See the npm package") [Ⓣ][1]
Computes `number` rounded up to `precision`.
#### Since
3.10.0
+
#### Arguments
1. `number` *(number)*: The number to round up.
2. `[precision=0]` *(number)*: The precision to round up to.
@@ -6255,12 +6427,13 @@ _.ceil(6040, -2);
_.divide(dividend, divisor)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16198 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.divide "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16187 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.divide "See the npm package") [Ⓣ][1]
Divide two numbers.
#### Since
4.7.0
+
#### Arguments
1. `dividend` *(number)*: The first number in a division.
2. `divisor` *(number)*: The second number in a division.
@@ -6280,12 +6453,13 @@ _.divide(6, 4);
_.floor(number, [precision=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16223 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.floor "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16212 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.floor "See the npm package") [Ⓣ][1]
Computes `number` rounded down to `precision`.
#### Since
3.10.0
+
#### Arguments
1. `number` *(number)*: The number to round down.
2. `[precision=0]` *(number)*: The precision to round down to.
@@ -6311,13 +6485,14 @@ _.floor(4060, -2);
_.max(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16243 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.max "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16232 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.max "See the npm package") [Ⓣ][1]
Computes the maximum value of `array`. If `array` is empty or falsey,
`undefined` is returned.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
@@ -6339,7 +6514,7 @@ _.max([]);
_.maxBy(array, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16272 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.maxby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16261 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.maxby "See the npm package") [Ⓣ][1]
This method is like `_.max` except that it accepts `iteratee` which is
invoked for each element in `array` to generate the criterion by which
@@ -6347,6 +6522,7 @@ the value is ranked. The iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -6372,12 +6548,13 @@ _.maxBy(objects, 'n');
_.mean(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16292 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mean "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16281 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mean "See the npm package") [Ⓣ][1]
Computes the mean of the values in `array`.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
@@ -6396,7 +6573,7 @@ _.mean([4, 2, 8, 6]);
_.meanBy(array, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16319 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.meanby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16308 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.meanby "See the npm package") [Ⓣ][1]
This method is like `_.mean` except that it accepts `iteratee` which is
invoked for each element in `array` to generate the value to be averaged.
@@ -6404,6 +6581,7 @@ The iteratee is invoked with one argument: *(value)*.
#### Since
4.7.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -6429,13 +6607,14 @@ _.meanBy(objects, 'n');
_.min(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16341 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.min "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16330 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.min "See the npm package") [Ⓣ][1]
Computes the minimum value of `array`. If `array` is empty or falsey,
`undefined` is returned.
#### Since
0.1.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
@@ -6457,7 +6636,7 @@ _.min([]);
_.minBy(array, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16370 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.minby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16359 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.minby "See the npm package") [Ⓣ][1]
This method is like `_.min` except that it accepts `iteratee` which is
invoked for each element in `array` to generate the criterion by which
@@ -6465,6 +6644,7 @@ the value is ranked. The iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -6490,12 +6670,13 @@ _.minBy(objects, 'n');
_.multiply(multiplier, multiplicand)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16391 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.multiply "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16380 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.multiply "See the npm package") [Ⓣ][1]
Multiply two numbers.
#### Since
4.7.0
+
#### Arguments
1. `multiplier` *(number)*: The first number in a multiplication.
2. `multiplicand` *(number)*: The second number in a multiplication.
@@ -6515,12 +6696,13 @@ _.multiply(6, 4);
_.round(number, [precision=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16416 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.round "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16405 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.round "See the npm package") [Ⓣ][1]
Computes `number` rounded to `precision`.
#### Since
3.10.0
+
#### Arguments
1. `number` *(number)*: The number to round.
2. `[precision=0]` *(number)*: The precision to round to.
@@ -6546,12 +6728,13 @@ _.round(4060, -2);
_.subtract(minuend, subtrahend)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16433 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.subtract "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16422 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.subtract "See the npm package") [Ⓣ][1]
Subtract two numbers.
#### Since
4.0.0
+
#### Arguments
1. `minuend` *(number)*: The first number in a subtraction.
2. `subtrahend` *(number)*: The second number in a subtraction.
@@ -6571,12 +6754,13 @@ _.subtract(6, 4);
_.sum(array)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16451 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sum "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16440 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sum "See the npm package") [Ⓣ][1]
Computes the sum of the values in `array`.
#### Since
3.4.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
@@ -6595,7 +6779,7 @@ _.sum([4, 2, 8, 6]);
_.sumBy(array, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16480 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sumby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16469 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.sumby "See the npm package") [Ⓣ][1]
This method is like `_.sum` except that it accepts `iteratee` which is
invoked for each element in `array` to generate the value to be summed.
@@ -6603,6 +6787,7 @@ The iteratee is invoked with one argument: *(value)*.
#### Since
4.0.0
+
#### Arguments
1. `array` *(Array)*: The array to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -6634,12 +6819,13 @@ _.sumBy(objects, 'n');
_.clamp(number, [lower], upper)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13953 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clamp "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13942 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.clamp "See the npm package") [Ⓣ][1]
Clamps `number` within the inclusive `lower` and `upper` bounds.
#### Since
4.0.0
+
#### Arguments
1. `number` *(number)*: The number to clamp.
2. `[lower]` *(number)*: The lower bound.
@@ -6663,7 +6849,7 @@ _.clamp(10, -5, 5);
_.inRange(number, [start=0], end)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14007 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.inrange "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13996 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.inrange "See the npm package") [Ⓣ][1]
Checks if `n` is between `start` and up to, but not including, `end`. If
`end` is not specified, it's set to `start` with `start` then set to `0`.
@@ -6672,6 +6858,7 @@ negative ranges.
#### Since
3.3.0
+
#### Arguments
1. `number` *(number)*: The number to check.
2. `[start=0]` *(number)*: The start of the range.
@@ -6710,7 +6897,7 @@ _.inRange(-3, -2, -6);
_.random([lower=0], [upper=1], [floating])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14050 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.random "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14039 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.random "See the npm package") [Ⓣ][1]
Produces a random number between the inclusive `lower` and `upper` bounds.
If only one argument is provided a number between `0` and the given number
@@ -6723,6 +6910,7 @@ floating-point values which can produce unexpected results.
#### Since
0.7.0
+
#### Arguments
1. `[lower=0]` *(number)*: The lower bound.
2. `[upper=1]` *(number)*: The upper bound.
@@ -6758,7 +6946,7 @@ _.random(1.2, 5.2);
_.assign(object, [sources])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12603 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assign "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12592 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assign "See the npm package") [Ⓣ][1]
Assigns own enumerable string keyed properties of source objects to the
destination object. Source objects are applied from left to right.
@@ -6770,6 +6958,7 @@ Subsequent sources overwrite property assignments of previous sources.
#### Since
0.10.0
+
#### Arguments
1. `object` *(Object)*: The destination object.
2. `[sources]` *(...Object)*: The source objects.
@@ -6800,7 +6989,7 @@ _.assign({ 'a': 0 }, new Foo, new Bar);
_.assignIn(object, [sources])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12646 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assignin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12635 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assignin "See the npm package") [Ⓣ][1]
This method is like `_.assign` except that it iterates over own and
inherited source properties.
@@ -6810,6 +6999,7 @@ inherited source properties.
#### Since
4.0.0
+
#### Aliases
*_.extend*
@@ -6843,7 +7033,7 @@ _.assignIn({ 'a': 0 }, new Foo, new Bar);
_.assignInWith(object, sources, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12679 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assigninwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12668 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assigninwith "See the npm package") [Ⓣ][1]
This method is like `_.assignIn` except that it accepts `customizer`
which is invoked to produce the assigned values. If `customizer` returns
@@ -6855,6 +7045,7 @@ is invoked with five arguments: *(objValue, srcValue, key, object, source)*.
#### Since
4.0.0
+
#### Aliases
*_.extendWith*
@@ -6884,7 +7075,7 @@ defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
_.assignWith(object, sources, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12711 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assignwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12700 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.assignwith "See the npm package") [Ⓣ][1]
This method is like `_.assign` except that it accepts `customizer`
which is invoked to produce the assigned values. If `customizer` returns
@@ -6896,6 +7087,7 @@ is invoked with five arguments: *(objValue, srcValue, key, object, source)*.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The destination object.
2. `sources` *(...Object)*: The source objects.
@@ -6922,12 +7114,13 @@ defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
_.at(object, [paths])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12732 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.at "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12721 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.at "See the npm package") [Ⓣ][1]
Creates an array of values corresponding to `paths` of `object`.
#### Since
1.0.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[paths]` *(...(string|string[]))*: The property paths to pick.
@@ -6949,7 +7142,7 @@ _.at(object, ['a[0].b.c', 'a[1]']);
_.create(prototype, [properties])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12768 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.create "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12757 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.create "See the npm package") [Ⓣ][1]
Creates an object that inherits from the `prototype` object. If a
`properties` object is given, its own enumerable string keyed properties
@@ -6957,6 +7150,7 @@ are assigned to the created object.
#### Since
2.3.0
+
#### Arguments
1. `prototype` *(Object)*: The object to inherit from.
2. `[properties]` *(Object)*: The properties to assign to the object.
@@ -6993,7 +7187,7 @@ circle instanceof Shape;
_.defaults(object, [sources])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12794 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defaults "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12783 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defaults "See the npm package") [Ⓣ][1]
Assigns own and inherited enumerable string keyed properties of source
objects to the destination object for all destination properties that
@@ -7005,6 +7199,7 @@ Once a property is set, additional values of the same property are ignored.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The destination object.
2. `[sources]` *(...Object)*: The source objects.
@@ -7024,7 +7219,7 @@ _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
_.defaultsDeep(object, [sources])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12818 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defaultsdeep "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12807 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defaultsdeep "See the npm package") [Ⓣ][1]
This method is like `_.defaults` except that it recursively assigns
default properties.
@@ -7034,6 +7229,7 @@ default properties.
#### Since
3.10.0
+
#### Arguments
1. `object` *(Object)*: The destination object.
2. `[sources]` *(...Object)*: The source objects.
@@ -7053,13 +7249,14 @@ _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });
_.findKey(object, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12858 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findkey "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12847 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findkey "See the npm package") [Ⓣ][1]
This method is like `_.find` except that it returns the key of the first
element `predicate` returns truthy for instead of the element itself.
#### Since
1.1.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7097,13 +7294,14 @@ _.findKey(users, 'active');
_.findLastKey(object, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12897 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findlastkey "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12886 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.findlastkey "See the npm package") [Ⓣ][1]
This method is like `_.findKey` except that it iterates over elements of
a collection in the opposite order.
#### Since
2.0.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
2. `[predicate=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7141,7 +7339,7 @@ _.findLastKey(users, 'active');
_.forIn(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12929 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12918 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forin "See the npm package") [Ⓣ][1]
Iterates over own and inherited enumerable string keyed properties of an
object and invokes `iteratee` for each property. The iteratee is invoked
@@ -7150,6 +7348,7 @@ iteration early by explicitly returning `false`.
#### Since
0.3.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7178,13 +7377,14 @@ _.forIn(new Foo, function(value, key) {
_.forInRight(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12961 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forinright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12950 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forinright "See the npm package") [Ⓣ][1]
This method is like `_.forIn` except that it iterates over properties of
`object` in the opposite order.
#### Since
2.0.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7213,7 +7413,7 @@ _.forInRight(new Foo, function(value, key) {
_.forOwn(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L12995 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forown "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L12984 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forown "See the npm package") [Ⓣ][1]
Iterates over own enumerable string keyed properties of an object and
invokes `iteratee` for each property. The iteratee is invoked with three
@@ -7222,6 +7422,7 @@ early by explicitly returning `false`.
#### Since
0.3.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7250,13 +7451,14 @@ _.forOwn(new Foo, function(value, key) {
_.forOwnRight(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13025 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forownright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13014 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.forownright "See the npm package") [Ⓣ][1]
This method is like `_.forOwn` except that it iterates over properties of
`object` in the opposite order.
#### Since
2.0.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7285,13 +7487,14 @@ _.forOwnRight(new Foo, function(value, key) {
_.functions(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13052 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.functions "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13041 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.functions "See the npm package") [Ⓣ][1]
Creates an array of function property names from own enumerable properties
of `object`.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
@@ -7317,13 +7520,14 @@ _.functions(new Foo);
_.functionsIn(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13079 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.functionsin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13068 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.functionsin "See the npm package") [Ⓣ][1]
Creates an array of function property names from own and inherited
enumerable properties of `object`.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The object to inspect.
@@ -7349,13 +7553,14 @@ _.functionsIn(new Foo);
_.get(object, path, [defaultValue])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13108 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.get "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13097 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.get "See the npm package") [Ⓣ][1]
Gets the value at `path` of `object`. If the resolved value is
`undefined`, the `defaultValue` is returned in its place.
#### Since
3.7.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
2. `path` *(Array|string)*: The path of the property to get.
@@ -7384,12 +7589,13 @@ _.get(object, 'a.b.c', 'default');
_.has(object, path)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13140 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.has "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13129 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.has "See the npm package") [Ⓣ][1]
Checks if `path` is a direct property of `object`.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
2. `path` *(Array|string)*: The path to check.
@@ -7421,12 +7627,13 @@ _.has(other, 'a');
_.hasIn(object, path)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13170 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.hasin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13159 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.hasin "See the npm package") [Ⓣ][1]
Checks if `path` is a direct or inherited property of `object`.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
2. `path` *(Array|string)*: The path to check.
@@ -7457,7 +7664,7 @@ _.hasIn(object, 'b');
_.invert(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13192 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invert "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13181 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invert "See the npm package") [Ⓣ][1]
Creates an object composed of the inverted keys and values of `object`.
If `object` contains duplicate values, subsequent values overwrite
@@ -7465,6 +7672,7 @@ property assignments of previous values.
#### Since
0.7.0
+
#### Arguments
1. `object` *(Object)*: The object to invert.
@@ -7485,7 +7693,7 @@ _.invert(object);
_.invertBy(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13222 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invertby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13211 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invertby "See the npm package") [Ⓣ][1]
This method is like `_.invert` except that the inverted object is generated
from the results of running each element of `object` thru `iteratee`. The
@@ -7495,6 +7703,7 @@ with one argument: *(value)*.
#### Since
4.1.0
+
#### Arguments
1. `object` *(Object)*: The object to invert.
2. `[iteratee=_.identity]` *(Function)*: The iteratee invoked per element.
@@ -7521,12 +7730,13 @@ _.invertBy(object, function(value) {
_.invoke(object, path, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13248 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invoke "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13237 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.invoke "See the npm package") [Ⓣ][1]
Invokes the method at `path` of `object`.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
2. `path` *(Array|string)*: The path of the method to invoke.
@@ -7549,7 +7759,7 @@ _.invoke(object, 'a[0].b.c.slice', 1, 3);
_.keys(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13278 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.keys "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13267 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.keys "See the npm package") [Ⓣ][1]
Creates an array of the own enumerable property names of `object`.
@@ -7560,6 +7770,7 @@ for more details.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
@@ -7588,7 +7799,7 @@ _.keys('hi');
_.keysIn(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13305 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.keysin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13294 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.keysin "See the npm package") [Ⓣ][1]
Creates an array of the own and inherited enumerable property names of `object`.
@@ -7597,6 +7808,7 @@ Creates an array of the own and inherited enumerable property names of `object`.
#### Since
3.0.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
@@ -7622,7 +7834,7 @@ _.keysIn(new Foo);
_.mapKeys(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13330 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mapkeys "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13319 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mapkeys "See the npm package") [Ⓣ][1]
The opposite of `_.mapValues`; this method creates an object with the
same values as `object` and keys generated by running each own enumerable
@@ -7631,6 +7843,7 @@ with three arguments: *(value, key, object)*.
#### Since
3.8.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7652,7 +7865,7 @@ _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {
_.mapValues(object, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13368 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mapvalues "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13357 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mapvalues "See the npm package") [Ⓣ][1]
Creates an object with the same keys as `object` and values generated
by running each own enumerable string keyed property of `object` thru
@@ -7661,6 +7874,7 @@ by running each own enumerable string keyed property of `object` thru
#### Since
2.4.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -7689,7 +7903,7 @@ _.mapValues(users, 'age');
_.merge(object, [sources])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13409 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.merge "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13398 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.merge "See the npm package") [Ⓣ][1]
This method is like `_.assign` except that it recursively merges own and
inherited enumerable string keyed properties of source objects into the
@@ -7704,6 +7918,7 @@ sources overwrite property assignments of previous sources.
#### Since
0.5.0
+
#### Arguments
1. `object` *(Object)*: The destination object.
2. `[sources]` *(...Object)*: The source objects.
@@ -7731,7 +7946,7 @@ _.merge(object, other);
_.mergeWith(object, sources, customizer)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13444 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mergewith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13433 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mergewith "See the npm package") [Ⓣ][1]
This method is like `_.merge` except that it accepts `customizer` which
is invoked to produce the merged values of the destination and source
@@ -7744,6 +7959,7 @@ method instead. The `customizer` is invoked with six arguments:
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The destination object.
2. `sources` *(...Object)*: The source objects.
@@ -7773,7 +7989,7 @@ _.mergeWith(object, other, customizer);
_.omit(object, [paths])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13468 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.omit "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13457 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.omit "See the npm package") [Ⓣ][1]
The opposite of `_.pick`; this method creates an object composed of the
own and inherited enumerable property paths of `object` that are not omitted.
@@ -7783,6 +7999,7 @@ own and inherited enumerable property paths of `object` that are not omitted.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The source object.
2. `[paths]` *(...(string|string[]))*: The property paths to omit.
@@ -7804,7 +8021,7 @@ _.omit(object, ['a', 'c']);
_.omitBy(object, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13510 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.omitby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13499 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.omitby "See the npm package") [Ⓣ][1]
The opposite of `_.pickBy`; this method creates an object composed of
the own and inherited enumerable string keyed properties of `object` that
@@ -7813,6 +8030,7 @@ arguments: *(value, key)*.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The source object.
2. `[predicate=_.identity]` *(Function)*: The function invoked per property.
@@ -7834,12 +8052,13 @@ _.omitBy(object, _.isNumber);
_.pick(object, [paths])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13531 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pick "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13520 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pick "See the npm package") [Ⓣ][1]
Creates an object composed of the picked `object` properties.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The source object.
2. `[paths]` *(...(string|string[]))*: The property paths to pick.
@@ -7861,13 +8080,14 @@ _.pick(object, ['a', 'c']);
_.pickBy(object, [predicate=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13553 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pickby "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13542 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pickby "See the npm package") [Ⓣ][1]
Creates an object composed of the `object` properties `predicate` returns
truthy for. The predicate is invoked with two arguments: *(value, key)*.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The source object.
2. `[predicate=_.identity]` *(Function)*: The function invoked per property.
@@ -7889,7 +8109,7 @@ _.pickBy(object, _.isNumber);
_.result(object, path, [defaultValue])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13595 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.result "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13584 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.result "See the npm package") [Ⓣ][1]
This method is like `_.get` except that if the resolved value is a
function it's invoked with the `this` binding of its parent object and
@@ -7897,6 +8117,7 @@ its result is returned.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
2. `path` *(Array|string)*: The path of the property to resolve.
@@ -7928,7 +8149,7 @@ _.result(object, 'a[0].b.c3', _.constant('default'));
_.set(object, path, value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13645 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.set "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13634 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.set "See the npm package") [Ⓣ][1]
Sets the value at `path` of `object`. If a portion of `path` doesn't exist,
it's created. Arrays are created for missing index properties while objects
@@ -7940,6 +8161,7 @@ are created for all other missing properties. Use `_.setWith` to customize
#### Since
3.7.0
+
#### Arguments
1. `object` *(Object)*: The object to modify.
2. `path` *(Array|string)*: The path of the property to set.
@@ -7967,7 +8189,7 @@ console.log(object.x[0].y.z);
_.setWith(object, path, value, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13673 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.setwith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13662 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.setwith "See the npm package") [Ⓣ][1]
This method is like `_.set` except that it accepts `customizer` which is
invoked to produce the objects of `path`. If `customizer` returns `undefined`
@@ -7979,6 +8201,7 @@ with three arguments: *(nsValue, key, nsObject)*.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The object to modify.
2. `path` *(Array|string)*: The path of the property to set.
@@ -8002,7 +8225,7 @@ _.setWith(object, '[0][1]', 'a', Object);
_.toPairs(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13702 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.topairs "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13691 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.topairs "See the npm package") [Ⓣ][1]
Creates an array of own enumerable string keyed-value pairs for `object`
which can be consumed by `_.fromPairs`. If `object` is a map or set, its
@@ -8010,6 +8233,7 @@ entries are returned.
#### Since
4.0.0
+
#### Aliases
*_.entries*
@@ -8038,7 +8262,7 @@ _.toPairs(new Foo);
_.toPairsIn(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13728 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.topairsin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13717 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.topairsin "See the npm package") [Ⓣ][1]
Creates an array of own and inherited enumerable string keyed-value pairs
for `object` which can be consumed by `_.fromPairs`. If `object` is a map
@@ -8046,6 +8270,7 @@ or set, its entries are returned.
#### Since
4.0.0
+
#### Aliases
*_.entriesIn*
@@ -8074,7 +8299,7 @@ _.toPairsIn(new Foo);
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13760 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.transform "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13749 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.transform "See the npm package") [Ⓣ][1]
An alternative to `_.reduce`; this method transforms `object` to a new
`accumulator` object which is the result of running each of its own
@@ -8086,6 +8311,7 @@ Iteratee functions may exit iteration early by explicitly returning `false`.
#### Since
1.3.0
+
#### Arguments
1. `object` *(Object)*: The object to iterate over.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -8114,7 +8340,7 @@ _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {
_.unset(object, path)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13810 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unset "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13799 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unset "See the npm package") [Ⓣ][1]
Removes the property at `path` of `object`.
@@ -8123,6 +8349,7 @@ Removes the property at `path` of `object`.
#### Since
4.0.0
+
#### Arguments
1. `object` *(Object)*: The object to modify.
2. `path` *(Array|string)*: The path of the property to unset.
@@ -8152,7 +8379,7 @@ console.log(object);
_.update(object, path, updater)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13841 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.update "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13830 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.update "See the npm package") [Ⓣ][1]
This method is like `_.set` except that accepts `updater` to produce the
value to set. Use `_.updateWith` to customize `path` creation. The `updater`
@@ -8163,6 +8390,7 @@ is invoked with one argument: *(value)*.
#### Since
4.6.0
+
#### Arguments
1. `object` *(Object)*: The object to modify.
2. `path` *(Array|string)*: The path of the property to set.
@@ -8190,7 +8418,7 @@ console.log(object.x[0].y.z);
_.updateWith(object, path, updater, [customizer])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13869 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.updatewith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13858 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.updatewith "See the npm package") [Ⓣ][1]
This method is like `_.update` except that it accepts `customizer` which is
invoked to produce the objects of `path`. If `customizer` returns `undefined`
@@ -8202,6 +8430,7 @@ with three arguments: *(nsValue, key, nsObject)*.
#### Since
4.6.0
+
#### Arguments
1. `object` *(Object)*: The object to modify.
2. `path` *(Array|string)*: The path of the property to set.
@@ -8225,7 +8454,7 @@ _.updateWith(object, '[0][1]', _.constant('a'), Object);
_.values(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13900 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.values "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13889 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.values "See the npm package") [Ⓣ][1]
Creates an array of the own enumerable string keyed property values of `object`.
@@ -8234,6 +8463,7 @@ Creates an array of the own enumerable string keyed property values of `object`.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
@@ -8262,7 +8492,7 @@ _.values('hi');
_.valuesIn(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L13928 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.valuesin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L13917 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.valuesin "See the npm package") [Ⓣ][1]
Creates an array of the own and inherited enumerable string keyed property
values of `object`.
@@ -8272,6 +8502,7 @@ values of `object`.
#### Since
3.0.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
@@ -8303,7 +8534,7 @@ _.valuesIn(new Foo);
_(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1669 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1669 "View in source") [Ⓣ][1]
Creates a `lodash` object which wraps `value` to enable implicit method
chain sequences. Methods that operate on and return arrays, collections,
@@ -8439,7 +8670,7 @@ _.isArray(squares.value());
_.chain(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8746 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8739 "View in source") [Ⓣ][1]
Creates a `lodash` wrapper instance that wraps `value` with explicit method
chain sequences enabled. The result of such sequences must be unwrapped
@@ -8447,6 +8678,7 @@ with `_#value`.
#### Since
1.3.0
+
#### Arguments
1. `value` *(*)*: The value to wrap.
@@ -8478,7 +8710,7 @@ var youngest = _
_.tap(value, interceptor)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8775 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8768 "View in source") [Ⓣ][1]
This method invokes `interceptor` and returns `value`. The interceptor
is invoked with one argument; *(value)*. The purpose of this method is to
@@ -8486,6 +8718,7 @@ is invoked with one argument; *(value)*. The purpose of this method is to
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: The value to provide to `interceptor`.
2. `interceptor` *(Function)*: The function to invoke.
@@ -8511,7 +8744,7 @@ _([1, 2, 3])
_.thru(value, interceptor)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8803 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8796 "View in source") [Ⓣ][1]
This method is like `_.tap` except that it returns the result of `interceptor`.
The purpose of this method is to "pass thru" values replacing intermediate
@@ -8519,6 +8752,7 @@ results in a method chain sequence.
#### Since
3.0.0
+
#### Arguments
1. `value` *(*)*: The value to provide to `interceptor`.
2. `interceptor` *(Function)*: The function to invoke.
@@ -8544,12 +8778,13 @@ _(' abc ')
_.prototype[Symbol.iterator]()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8958 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8951 "View in source") [Ⓣ][1]
Enables the wrapper to be iterable.
#### Since
4.0.0
+
#### Returns
*(Object)*: Returns the wrapper object.
@@ -8570,12 +8805,13 @@ Array.from(wrapped);
_.prototype.at([paths])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8823 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8816 "View in source") [Ⓣ][1]
This method is the wrapper version of `_.at`.
#### Since
1.0.0
+
#### Arguments
1. `[paths]` *(...(string|string[]))*: The property paths to pick.
@@ -8596,12 +8832,13 @@ _(object).at(['a[0].b.c', 'a[1]']).value();
_.prototype.chain()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8874 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8867 "View in source") [Ⓣ][1]
Creates a `lodash` wrapper instance with explicit method chain sequences enabled.
#### Since
0.1.0
+
#### Returns
*(Object)*: Returns the new `lodash` wrapper instance.
@@ -8631,12 +8868,13 @@ _(users)
_.prototype.commit()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8904 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8897 "View in source") [Ⓣ][1]
Executes the chain sequence and returns the wrapped result.
#### Since
3.2.0
+
#### Returns
*(Object)*: Returns the new `lodash` wrapper instance.
@@ -8665,13 +8903,14 @@ console.log(array);
_.prototype.next()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8930 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8923 "View in source") [Ⓣ][1]
Gets the next value on a wrapped object following the
[iterator protocol](https://mdn.io/iteration_protocols#iterator).
#### Since
4.0.0
+
#### Returns
*(Object)*: Returns the next iterator value.
@@ -8695,12 +8934,13 @@ wrapped.next();
_.prototype.plant(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L8986 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L8979 "View in source") [Ⓣ][1]
Creates a clone of the chain sequence planting `value` as the wrapped value.
#### Since
3.2.0
+
#### Arguments
1. `value` *(*)*: The value to plant.
@@ -8729,7 +8969,7 @@ wrapped.value();
_.prototype.reverse()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9026 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9019 "View in source") [Ⓣ][1]
This method is the wrapper version of `_.reverse`.
@@ -8738,6 +8978,7 @@ This method is the wrapper version of `_.reverse`.
#### Since
0.1.0
+
#### Returns
*(Object)*: Returns the new `lodash` wrapper instance.
@@ -8758,12 +8999,13 @@ console.log(array);
_.prototype.value()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L9058 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L9051 "View in source") [Ⓣ][1]
Executes the chain sequence to resolve the unwrapped value.
#### Since
0.1.0
+
#### Aliases
*_.prototype.toJSON, _.prototype.valueOf*
@@ -8788,12 +9030,13 @@ _([1, 2, 3]).value();
_.camelCase([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14111 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.camelcase "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14100 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.camelcase "See the npm package") [Ⓣ][1]
Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -8818,13 +9061,14 @@ _.camelCase('__FOO_BAR__');
_.capitalize([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14131 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.capitalize "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14120 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.capitalize "See the npm package") [Ⓣ][1]
Converts the first character of `string` to upper case and the remaining
to lower case.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to capitalize.
@@ -8843,7 +9087,7 @@ _.capitalize('FRED');
_.deburr([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14153 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.deburr "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14142 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.deburr "See the npm package") [Ⓣ][1]
Deburrs `string` by converting
[Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
@@ -8853,6 +9097,7 @@ letters to basic Latin letters and removing
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to deburr.
@@ -8871,12 +9116,13 @@ _.deburr('déjà vu');
_.endsWith([string=''], [target], [position=string.length])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14181 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.endswith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14170 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.endswith "See the npm package") [Ⓣ][1]
Checks if `string` ends with the given target string.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to inspect.
2. `[target]` *(string)*: The string to search for.
@@ -8903,7 +9149,7 @@ _.endsWith('abc', 'b', 2);
_.escape([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14223 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.escape "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14212 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.escape "See the npm package") [Ⓣ][1]
Converts the characters "&", "<", ">", '"', and "'" in `string` to their
corresponding HTML entities.
@@ -8926,6 +9172,7 @@ XSS vectors.
#### Since
0.1.0
+
#### Arguments
1. `[string='']` *(string)*: The string to escape.
@@ -8944,13 +9191,14 @@ _.escape('fred, barney, & pebbles');
_.escapeRegExp([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14245 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.escaperegexp "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14234 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.escaperegexp "See the npm package") [Ⓣ][1]
Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+",
"?", "(", ")", "[", "]", "{", "}", and "|" in `string`.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to escape.
@@ -8969,13 +9217,14 @@ _.escapeRegExp('[lodash](https://lodash.com/)');
_.kebabCase([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14273 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.kebabcase "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14262 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.kebabcase "See the npm package") [Ⓣ][1]
Converts `string` to
[kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9000,12 +9249,13 @@ _.kebabCase('__FOO_BAR__');
_.lowerCase([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14297 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lowercase "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14286 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lowercase "See the npm package") [Ⓣ][1]
Converts `string`, as space separated words, to lower case.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9030,12 +9280,13 @@ _.lowerCase('__FOO_BAR__');
_.lowerFirst([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14318 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lowerfirst "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14307 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.lowerfirst "See the npm package") [Ⓣ][1]
Converts the first character of `string` to lower case.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9057,13 +9308,14 @@ _.lowerFirst('FRED');
_.pad([string=''], [length=0], [chars=' '])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14343 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pad "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14332 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.pad "See the npm package") [Ⓣ][1]
Pads `string` on the left and right sides if it's shorter than `length`.
Padding characters are truncated if they can't be evenly divided by `length`.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to pad.
2. `[length=0]` *(number)*: The padding length.
@@ -9090,13 +9342,14 @@ _.pad('abc', 3);
_.padEnd([string=''], [length=0], [chars=' '])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14382 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.padend "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14371 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.padend "See the npm package") [Ⓣ][1]
Pads `string` on the right side if it's shorter than `length`. Padding
characters are truncated if they exceed `length`.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to pad.
2. `[length=0]` *(number)*: The padding length.
@@ -9123,13 +9376,14 @@ _.padEnd('abc', 3);
_.padStart([string=''], [length=0], [chars=' '])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14415 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.padstart "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14404 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.padstart "See the npm package") [Ⓣ][1]
Pads `string` on the left side if it's shorter than `length`. Padding
characters are truncated if they exceed `length`.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to pad.
2. `[length=0]` *(number)*: The padding length.
@@ -9156,7 +9410,7 @@ _.padStart('abc', 3);
_.parseInt(string, [radix=10])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14449 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.parseint "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14438 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.parseint "See the npm package") [Ⓣ][1]
Converts `string` to an integer of the specified radix. If `radix` is
`undefined` or `0`, a `radix` of `10` is used unless `value` is a
@@ -9168,6 +9422,7 @@ hexadecimal, in which case a `radix` of `16` is used.
#### Since
1.1.0
+
#### Arguments
1. `string` *(string)*: The string to convert.
2. `[radix=10]` *(number)*: The radix to interpret `value` by.
@@ -9190,12 +9445,13 @@ _.map(['6', '08', '10'], _.parseInt);
_.repeat([string=''], [n=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14480 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.repeat "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14469 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.repeat "See the npm package") [Ⓣ][1]
Repeats the given string `n` times.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to repeat.
2. `[n=1]` *(number)*: The number of times to repeat the string.
@@ -9221,7 +9477,7 @@ _.repeat('abc', 0);
_.replace([string=''], pattern, replacement)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14508 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.replace "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14497 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.replace "See the npm package") [Ⓣ][1]
Replaces matches for `pattern` in `string` with `replacement`.
@@ -9231,6 +9487,7 @@ Replaces matches for `pattern` in `string` with `replacement`.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to modify.
2. `pattern` *(RegExp|string)*: The pattern to replace.
@@ -9251,13 +9508,14 @@ _.replace('Hi Fred', 'Fred', 'Barney');
_.snakeCase([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14536 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.snakecase "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14525 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.snakecase "See the npm package") [Ⓣ][1]
Converts `string` to
[snake case](https://en.wikipedia.org/wiki/Snake_case).
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9282,7 +9540,7 @@ _.snakeCase('--FOO-BAR--');
_.split([string=''], separator, [limit])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14559 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.split "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14548 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.split "See the npm package") [Ⓣ][1]
Splits `string` by `separator`.
@@ -9292,6 +9550,7 @@ Splits `string` by `separator`.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to split.
2. `separator` *(RegExp|string)*: The separator pattern to split by.
@@ -9312,13 +9571,14 @@ _.split('a-b-c', '-', 2);
_.startCase([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14601 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.startcase "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14590 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.startcase "See the npm package") [Ⓣ][1]
Converts `string` to
[start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).
#### Since
3.1.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9343,12 +9603,13 @@ _.startCase('__FOO_BAR__');
_.startsWith([string=''], [target], [position=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14628 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.startswith "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14617 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.startswith "See the npm package") [Ⓣ][1]
Checks if `string` starts with the given target string.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to inspect.
2. `[target]` *(string)*: The string to search for.
@@ -9375,7 +9636,7 @@ _.startsWith('abc', 'b', 1);
_.template([string=''], [options={}])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14739 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.template "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14728 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.template "See the npm package") [Ⓣ][1]
Creates a compiled template function that can interpolate data properties
in "interpolate" delimiters, HTML-escape interpolated data properties in
@@ -9398,6 +9659,7 @@ For more information on Chrome extension sandboxes see
#### Since
0.1.0
+
#### Arguments
1. `[string='']` *(string)*: The template string.
2. `[options={}]` *(Object)*: The options object.
@@ -9485,13 +9747,14 @@ fs.writeFileSync(path.join(process.cwd(), 'jst.js'), '\
_.toLower([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14868 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tolower "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14857 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.tolower "See the npm package") [Ⓣ][1]
Converts `string`, as a whole, to lower case just like
[String#toLowerCase](https://mdn.io/toLowerCase).
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9516,13 +9779,14 @@ _.toLower('__FOO_BAR__');
_.toUpper([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14893 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.toupper "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14882 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.toupper "See the npm package") [Ⓣ][1]
Converts `string`, as a whole, to upper case just like
[String#toUpperCase](https://mdn.io/toUpperCase).
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9547,12 +9811,13 @@ _.toUpper('__foo_bar__');
_.trim([string=''], [chars=whitespace])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14919 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.trim "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14908 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.trim "See the npm package") [Ⓣ][1]
Removes leading and trailing whitespace or specified characters from `string`.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to trim.
2. `[chars=whitespace]` *(string)*: The characters to trim.
@@ -9578,12 +9843,13 @@ _.map([' foo ', ' bar '], _.trim);
_.trimEnd([string=''], [chars=whitespace])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14954 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.trimend "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14943 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.trimend "See the npm package") [Ⓣ][1]
Removes trailing whitespace or specified characters from `string`.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to trim.
2. `[chars=whitespace]` *(string)*: The characters to trim.
@@ -9606,12 +9872,13 @@ _.trimEnd('-_-abc-_-', '_-');
_.trimStart([string=''], [chars=whitespace])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L14987 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.trimstart "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L14976 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.trimstart "See the npm package") [Ⓣ][1]
Removes leading whitespace or specified characters from `string`.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to trim.
2. `[chars=whitespace]` *(string)*: The characters to trim.
@@ -9634,7 +9901,7 @@ _.trimStart('-_-abc-_-', '_-');
_.truncate([string=''], [options={}])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15038 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.truncate "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15027 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.truncate "See the npm package") [Ⓣ][1]
Truncates `string` if it's longer than the given maximum string length.
The last characters of the truncated string are replaced with the omission
@@ -9642,6 +9909,7 @@ string which defaults to "...".
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to truncate.
2. `[options={}]` *(Object)*: The options object.
@@ -9681,7 +9949,7 @@ _.truncate('hi-diddly-ho there, neighborino', {
_.unescape([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15113 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unescape "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15102 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.unescape "See the npm package") [Ⓣ][1]
The inverse of `_.escape`; this method converts the HTML entities
`&`, `<`, `>`, `"`, and `'` in `string` to
@@ -9693,6 +9961,7 @@ HTML entities use a third-party library like [_he_](https://mths.be/he).
#### Since
0.6.0
+
#### Arguments
1. `[string='']` *(string)*: The string to unescape.
@@ -9711,12 +9980,13 @@ _.unescape('fred, barney, & pebbles');
_.upperCase([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15140 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uppercase "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15129 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uppercase "See the npm package") [Ⓣ][1]
Converts `string`, as space separated words, to upper case.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9741,12 +10011,13 @@ _.upperCase('__foo_bar__');
_.upperFirst([string=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15161 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.upperfirst "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15150 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.upperfirst "See the npm package") [Ⓣ][1]
Converts the first character of `string` to upper case.
#### Since
4.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to convert.
@@ -9768,12 +10039,13 @@ _.upperFirst('FRED');
_.words([string=''], [pattern])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15182 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.words "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15171 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.words "See the npm package") [Ⓣ][1]
Splits `string` into an array of its words.
#### Since
3.0.0
+
#### Arguments
1. `[string='']` *(string)*: The string to inspect.
2. `[pattern]` *(RegExp|string)*: The pattern to match words.
@@ -9802,13 +10074,14 @@ _.words('fred, barney, & pebbles', /[^, ]+/g);
_.attempt(func, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15216 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.attempt "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15205 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.attempt "See the npm package") [Ⓣ][1]
Attempts to invoke `func`, returning either the result or the caught error
object. Any additional arguments are provided to `func` when it's invoked.
#### Since
3.0.0
+
#### Arguments
1. `func` *(Function)*: The function to attempt.
2. `[args]` *(...*)*: The arguments to invoke `func` with.
@@ -9834,7 +10107,7 @@ if (_.isError(elements)) {
_.bindAll(object, methodNames)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15250 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.bindall "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15239 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.bindall "See the npm package") [Ⓣ][1]
Binds methods of an object to the object itself, overwriting the existing
method.
@@ -9844,6 +10117,7 @@ method.
#### Since
0.1.0
+
#### Arguments
1. `object` *(Object)*: The object to bind and assign the bound methods to.
2. `methodNames` *(...(string|string[]))*: The object method names to bind.
@@ -9871,7 +10145,7 @@ jQuery(element).on('click', view.click);
_.cond(pairs)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15287 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.cond "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15276 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.cond "See the npm package") [Ⓣ][1]
Creates a function that iterates over `pairs` and invokes the corresponding
function of the first predicate to return truthy. The predicate-function
@@ -9880,6 +10154,7 @@ function.
#### Since
4.0.0
+
#### Arguments
1. `pairs` *(Array)*: The predicate-function pairs.
@@ -9910,7 +10185,7 @@ func({ 'a': '1', 'b': '2' });
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15333 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.conforms "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15322 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.conforms "See the npm package") [Ⓣ][1]
Creates a function that invokes the predicate properties of `source` with
the corresponding property values of a given object, returning `true` if
@@ -9922,6 +10197,7 @@ all predicates return truthy, else `false`.
#### Since
4.0.0
+
#### Arguments
1. `source` *(Object)*: The object of property predicates to conform to.
@@ -9945,12 +10221,13 @@ _.filter(objects, _.conforms({ 'b': function(n) { return n > 1; } }));
_.constant(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15356 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.constant "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15345 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.constant "See the npm package") [Ⓣ][1]
Creates a function that returns `value`.
#### Since
2.4.0
+
#### Arguments
1. `value` *(*)*: The value to return from the new function.
@@ -9974,7 +10251,7 @@ console.log(objects[0] === objects[1]);
_.defaultTo(value, defaultValue)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15382 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defaultto "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15371 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.defaultto "See the npm package") [Ⓣ][1]
Checks `value` to determine whether a default value should be returned in
its place. The `defaultValue` is returned if `value` is `NaN`, `null`,
@@ -9982,6 +10259,7 @@ or `undefined`.
#### Since
4.14.0
+
#### Arguments
1. `value` *(*)*: The value to check.
2. `defaultValue` *(*)*: The default value.
@@ -10004,7 +10282,7 @@ _.defaultTo(undefined, 10);
_.flow([funcs])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15408 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flow "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15397 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flow "See the npm package") [Ⓣ][1]
Creates a function that returns the result of invoking the given functions
with the `this` binding of the created function, where each successive
@@ -10012,6 +10290,7 @@ invocation is supplied the return value of the previous.
#### Since
3.0.0
+
#### Arguments
1. `[funcs]` *(...(Function|Function[]))*: The functions to invoke.
@@ -10035,13 +10314,14 @@ addSquare(1, 2);
_.flowRight([funcs])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15431 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flowright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15420 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.flowright "See the npm package") [Ⓣ][1]
This method is like `_.flow` except that it creates a function that
invokes the given functions from right to left.
#### Since
3.0.0
+
#### Arguments
1. `[funcs]` *(...(Function|Function[]))*: The functions to invoke.
@@ -10065,12 +10345,13 @@ addSquare(1, 2);
_.identity(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15449 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.identity "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15438 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.identity "See the npm package") [Ⓣ][1]
This method returns the first argument it receives.
#### Since
0.1.0
+
#### Arguments
1. `value` *(*)*: Any value.
@@ -10091,7 +10372,7 @@ console.log(_.identity(object) === object);
_.iteratee([func=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15495 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.iteratee "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15484 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.iteratee "See the npm package") [Ⓣ][1]
Creates a function that invokes `func` with the arguments of the created
function. If `func` is a property name, the created function returns the
@@ -10101,6 +10382,7 @@ source properties, otherwise it returns `false`.
#### Since
4.0.0
+
#### Arguments
1. `[func=_.identity]` *(*)*: The value to convert to a callback.
@@ -10143,7 +10425,7 @@ _.filter(['abc', 'def'], /ef/);
_.matches(source)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15527 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.matches "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15516 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.matches "See the npm package") [Ⓣ][1]
Creates a function that performs a partial deep comparison between a given
object and `source`, returning `true` if the given object has equivalent
@@ -10160,6 +10442,7 @@ for a list of supported value comparisons.
#### Since
3.0.0
+
#### Arguments
1. `source` *(Object)*: The object of property values to match.
@@ -10183,7 +10466,7 @@ _.filter(objects, _.matches({ 'a': 4, 'c': 6 }));
_.matchesProperty(path, srcValue)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15557 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.matchesproperty "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15546 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.matchesproperty "See the npm package") [Ⓣ][1]
Creates a function that performs a partial deep comparison between the
value at `path` of a given object to `srcValue`, returning `true` if the
@@ -10196,6 +10479,7 @@ object value is equivalent, else `false`.
#### Since
3.2.0
+
#### Arguments
1. `path` *(Array|string)*: The path of the property to get.
2. `srcValue` *(*)*: The value to match.
@@ -10220,13 +10504,14 @@ _.find(objects, _.matchesProperty('a', 4));
_.method(path, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15585 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.method "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15574 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.method "See the npm package") [Ⓣ][1]
Creates a function that invokes the method at `path` of a given object.
Any additional arguments are provided to the invoked method.
#### Since
3.7.0
+
#### Arguments
1. `path` *(Array|string)*: The path of the method to invoke.
2. `[args]` *(...*)*: The arguments to invoke the method with.
@@ -10254,7 +10539,7 @@ _.map(objects, _.method(['a', 'b']));
_.methodOf(object, [args])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15614 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.methodof "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15603 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.methodof "See the npm package") [Ⓣ][1]
The opposite of `_.method`; this method creates a function that invokes
the method at a given path of `object`. Any additional arguments are
@@ -10262,6 +10547,7 @@ provided to the invoked method.
#### Since
3.7.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
2. `[args]` *(...*)*: The arguments to invoke the method with.
@@ -10287,7 +10573,7 @@ _.map([['a', '2'], ['c', '0']], _.methodOf(object));
_.mixin([object=lodash], source, [options={}])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15656 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mixin "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15645 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.mixin "See the npm package") [Ⓣ][1]
Adds all own enumerable string keyed function properties of a source
object to the destination object. If `object` is a function, then methods
@@ -10299,6 +10585,7 @@ avoid conflicts caused by modifying the original.
#### Since
0.1.0
+
#### Arguments
1. `[object=lodash]` *(Function|Object)*: The destination object.
2. `source` *(Object)*: The object of functions to add.
@@ -10334,13 +10621,14 @@ _('fred').vowels();
_.noConflict()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15705 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.noconflict "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15694 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.noconflict "See the npm package") [Ⓣ][1]
Reverts the `_` variable to its previous value and returns a reference to
the `lodash` function.
#### Since
0.1.0
+
#### Returns
*(Function)*: Returns the `lodash` function.
@@ -10355,12 +10643,13 @@ var lodash = _.noConflict();
_.noop()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15724 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.noop "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15713 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.noop "See the npm package") [Ⓣ][1]
This method returns `undefined`.
#### Since
2.3.0
+
#### Example
```js
_.times(2, _.noop);
@@ -10373,13 +10662,14 @@ _.times(2, _.noop);
_.nthArg([n=0])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15748 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ntharg "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15737 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.ntharg "See the npm package") [Ⓣ][1]
Creates a function that gets the argument at index `n`. If `n` is negative,
the nth argument from the end is returned.
#### Since
4.0.0
+
#### Arguments
1. `[n=0]` *(number)*: The index of the argument to return.
@@ -10403,13 +10693,14 @@ func('a', 'b', 'c', 'd');
_.over([iteratees=[_.identity]])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15773 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.over "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15762 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.over "See the npm package") [Ⓣ][1]
Creates a function that invokes `iteratees` with the arguments it receives
and returns their results.
#### Since
4.0.0
+
#### Arguments
1. `[iteratees=[_.identity]]` *(...(Function|Function[]))*: The iteratees to invoke.
@@ -10430,13 +10721,14 @@ func(1, 2, 3, 4);
_.overEvery([predicates=[_.identity]])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15799 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.overevery "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15788 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.overevery "See the npm package") [Ⓣ][1]
Creates a function that checks if **all** of the `predicates` return
truthy when invoked with the arguments it receives.
#### Since
4.0.0
+
#### Arguments
1. `[predicates=[_.identity]]` *(...(Function|Function[]))*: The predicates to check.
@@ -10463,13 +10755,14 @@ func(NaN);
_.overSome([predicates=[_.identity]])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15825 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.oversome "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15814 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.oversome "See the npm package") [Ⓣ][1]
Creates a function that checks if **any** of the `predicates` return
truthy when invoked with the arguments it receives.
#### Since
4.0.0
+
#### Arguments
1. `[predicates=[_.identity]]` *(...(Function|Function[]))*: The predicates to check.
@@ -10496,12 +10789,13 @@ func(NaN);
_.property(path)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15849 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.property "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15838 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.property "See the npm package") [Ⓣ][1]
Creates a function that returns the value at `path` of a given object.
#### Since
2.4.0
+
#### Arguments
1. `path` *(Array|string)*: The path of the property to get.
@@ -10528,13 +10822,14 @@ _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
_.propertyOf(object)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15874 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.propertyof "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15863 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.propertyof "See the npm package") [Ⓣ][1]
The opposite of `_.property`; this method creates a function that returns
the value at a given path of `object`.
#### Since
3.0.0
+
#### Arguments
1. `object` *(Object)*: The object to query.
@@ -10559,7 +10854,7 @@ _.map([['a', '2'], ['c', '0']], _.propertyOf(object));
_.range([start=0], end, [step=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15921 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.range "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15910 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.range "See the npm package") [Ⓣ][1]
Creates an array of numbers *(positive and/or negative)* progressing from
`start` up to, but not including, `end`. A step of `-1` is used if a negative
@@ -10572,6 +10867,7 @@ floating-point values which can produce unexpected results.
#### Since
0.1.0
+
#### Arguments
1. `[start=0]` *(number)*: The start of the range.
2. `end` *(number)*: The end of the range.
@@ -10610,13 +10906,14 @@ _.range(0);
_.rangeRight([start=0], end, [step=1])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15959 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.rangeright "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15948 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.rangeright "See the npm package") [Ⓣ][1]
This method is like `_.range` except that it populates values in
descending order.
#### Since
4.0.0
+
#### Arguments
1. `[start=0]` *(number)*: The start of the range.
2. `end` *(number)*: The end of the range.
@@ -10655,12 +10952,13 @@ _.rangeRight(0);
_.runInContext([context=root])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1427 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.runincontext "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1427 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.runincontext "See the npm package") [Ⓣ][1]
Create a new pristine `lodash` function using the `context` object.
#### Since
1.1.0
+
#### Arguments
1. `[context=root]` *(Object)*: The context object.
@@ -10694,12 +10992,13 @@ var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;
_.stubArray()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15979 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubarray "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15968 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubarray "See the npm package") [Ⓣ][1]
This method returns a new empty array.
#### Since
4.13.0
+
#### Returns
*(Array)*: Returns the new empty array.
@@ -10720,12 +11019,13 @@ console.log(arrays[0] === arrays[1]);
_.stubFalse()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L15996 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubfalse "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L15985 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubfalse "See the npm package") [Ⓣ][1]
This method returns `false`.
#### Since
4.13.0
+
#### Returns
*(boolean)*: Returns `false`.
@@ -10741,12 +11041,13 @@ _.times(2, _.stubFalse);
_.stubObject()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16018 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubobject "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16007 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubobject "See the npm package") [Ⓣ][1]
This method returns a new empty object.
#### Since
4.13.0
+
#### Returns
*(Object)*: Returns the new empty object.
@@ -10767,12 +11068,13 @@ console.log(objects[0] === objects[1]);
_.stubString()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16035 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubstring "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16024 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubstring "See the npm package") [Ⓣ][1]
This method returns an empty string.
#### Since
4.13.0
+
#### Returns
*(string)*: Returns the empty string.
@@ -10788,12 +11090,13 @@ _.times(2, _.stubString);
_.stubTrue()
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16052 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubtrue "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16041 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.stubtrue "See the npm package") [Ⓣ][1]
This method returns `true`.
#### Since
4.13.0
+
#### Returns
*(boolean)*: Returns `true`.
@@ -10809,13 +11112,14 @@ _.times(2, _.stubTrue);
_.times(n, [iteratee=_.identity])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16075 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.times "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16064 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.times "See the npm package") [Ⓣ][1]
Invokes the iteratee `n` times, returning an array of the results of
each invocation. The iteratee is invoked with one argument; *(index)*.
#### Since
0.1.0
+
#### Arguments
1. `n` *(number)*: The number of times to invoke `iteratee`.
2. `[iteratee=_.identity]` *(Function)*: The function invoked per iteration.
@@ -10838,12 +11142,13 @@ _.times(3, String);
_.toPath(value)
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16110 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.topath "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16099 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.topath "See the npm package") [Ⓣ][1]
Converts `value` to a property path array.
#### Since
4.0.0
+
#### Arguments
1. `value` *(*)*: The value to convert.
@@ -10865,12 +11170,13 @@ _.toPath('a[0].b.c');
_.uniqueId([prefix=''])
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16134 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniqueid "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16123 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.uniqueid "See the npm package") [Ⓣ][1]
Generates a unique ID. If `prefix` is given, the ID is appended to it.
#### Since
0.1.0
+
#### Arguments
1. `[prefix='']` *(string)*: The value to prefix the ID with.
@@ -10898,7 +11204,7 @@ _.uniqueId();
_.VERSION
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L16825 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L16814 "View in source") [Ⓣ][1]
(string): The semantic version number.
@@ -10909,7 +11215,7 @@ _.uniqueId();
_.templateSettings
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1738 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.templatesettings "See the npm package") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1738 "View in source") [Ⓝ](https://www.npmjs.com/package/lodash.templatesettings "See the npm package") [Ⓣ][1]
(Object): By default, the template delimiters used by lodash are like those in
embedded Ruby *(ERB)*. Change the following template settings to use
@@ -10922,7 +11228,7 @@ alternative delimiters.
_.templateSettings.escape
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1746 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1746 "View in source") [Ⓣ][1]
(RegExp): Used to detect `data` property values to be HTML-escaped.
@@ -10933,7 +11239,7 @@ alternative delimiters.
_.templateSettings.evaluate
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1754 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1754 "View in source") [Ⓣ][1]
(RegExp): Used to detect code to be evaluated.
@@ -10944,7 +11250,7 @@ alternative delimiters.
_.templateSettings.imports
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1778 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1778 "View in source") [Ⓣ][1]
(Object): Used to import variables into the compiled template.
@@ -10955,7 +11261,7 @@ alternative delimiters.
_.templateSettings.interpolate
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1762 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1762 "View in source") [Ⓣ][1]
(RegExp): Used to detect `data` property values to inject.
@@ -10966,7 +11272,7 @@ alternative delimiters.
_.templateSettings.variable
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1770 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1770 "View in source") [Ⓣ][1]
(string): Used to reference the data object in the template text.
@@ -10983,7 +11289,7 @@ alternative delimiters.
_.templateSettings.imports._
-[Ⓢ](https://github.com/lodash/lodash/blob/4.17.1/lodash.js#L1786 "View in source") [Ⓣ][1]
+[Ⓢ](https://github.com/lodash/lodash/blob/4.17.2/lodash.js#L1786 "View in source") [Ⓣ][1]
A reference to the `lodash` function.
diff --git a/fp/_baseConvert.js b/fp/_baseConvert.js
index 5244985266..c9d3247471 100644
--- a/fp/_baseConvert.js
+++ b/fp/_baseConvert.js
@@ -1,6 +1,9 @@
var mapping = require('./_mapping'),
fallbackHolder = require('./placeholder');
+/** Built-in value reference. */
+var push = Array.prototype.push;
+
/**
* Creates a function, with an arity of `n`, that invokes `func` with the
* arguments it receives.
@@ -61,6 +64,36 @@ function createCloner(func) {
};
}
+/**
+ * This function is like `_.spread` except that it includes arguments after those spread.
+ *
+ * @private
+ * @param {Function} func The function to spread arguments over.
+ * @param {number} start The start position of the spread.
+ * @returns {Function} Returns the new function.
+ */
+function spread(func, start) {
+ return function() {
+ var length = arguments.length,
+ args = Array(length);
+
+ while (length--) {
+ args[length] = arguments[length];
+ }
+ var array = args[start],
+ lastIndex = args.length - 1,
+ otherArgs = args.slice(0, start);
+
+ if (array) {
+ push.apply(otherArgs, array);
+ }
+ if (start != lastIndex) {
+ push.apply(otherArgs, args.slice(start + 1));
+ }
+ return func.apply(this, otherArgs);
+ };
+}
+
/**
* Creates a function that wraps `func` and uses `cloner` to clone the first
* argument it receives.
@@ -141,7 +174,6 @@ function baseConvert(util, name, func, options) {
'iteratee': util.iteratee,
'keys': util.keys,
'rearg': util.rearg,
- 'spread': util.spread,
'toInteger': util.toInteger,
'toPath': util.toPath
};
@@ -155,7 +187,6 @@ function baseConvert(util, name, func, options) {
isFunction = helpers.isFunction,
keys = helpers.keys,
rearg = helpers.rearg,
- spread = helpers.spread,
toInteger = helpers.toInteger,
toPath = helpers.toPath;
diff --git a/lib/fp/template/modules/_util.jst b/lib/fp/template/modules/_util.jst
index f8148129eb..7084463026 100644
--- a/lib/fp/template/modules/_util.jst
+++ b/lib/fp/template/modules/_util.jst
@@ -9,7 +9,6 @@ module.exports = {
'iteratee': require('../iteratee'),
'keys': require('../_baseKeys'),
'rearg': require('../rearg'),
- 'spread': require('../spread'),
'toInteger': require('../toInteger'),
'toPath': require('../toPath')
};
diff --git a/lodash.js b/lodash.js
index e64b0af327..ebd96718f0 100644
--- a/lodash.js
+++ b/lodash.js
@@ -12,7 +12,7 @@
var undefined;
/** Used as the semantic version number. */
- var VERSION = '4.17.1';
+ var VERSION = '4.17.2';
/** Used as the size to enable large array optimizations. */
var LARGE_ARRAY_SIZE = 200;
@@ -3805,7 +3805,7 @@
value = baseGet(object, path);
if (predicate(value, path)) {
- baseSet(result, path, value);
+ baseSet(result, castPath(path, object), value);
}
}
return result;
@@ -3881,14 +3881,8 @@
var previous = index;
if (isIndex(index)) {
splice.call(array, index, 1);
- }
- else {
- var path = castPath(index, array),
- object = parent(array, path);
-
- if (object != null) {
- delete object[toKey(last(path))];
- }
+ } else {
+ baseUnset(array, index);
}
}
}
@@ -4352,8 +4346,7 @@
function baseUnset(object, path) {
path = castPath(path, object);
object = parent(object, path);
- var key = toKey(last(path));
- return !(object != null && hasOwnProperty.call(object, key)) || delete object[key];
+ return object == null || delete object[toKey(last(path))];
}
/**
@@ -10847,15 +10840,11 @@
start = start === undefined ? 0 : nativeMax(toInteger(start), 0);
return baseRest(function(args) {
var array = args[start],
- lastIndex = args.length - 1,
otherArgs = castSlice(args, 0, start);
if (array) {
arrayPush(otherArgs, array);
}
- if (start != lastIndex) {
- arrayPush(otherArgs, castSlice(args, start + 1));
- }
return apply(func, this, otherArgs);
});
}
@@ -13470,16 +13459,16 @@
if (object == null) {
return result;
}
- var bitmask = CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG;
+ var isDeep = false;
paths = arrayMap(paths, function(path) {
path = castPath(path, object);
- bitmask |= (path.length > 1 ? CLONE_DEEP_FLAG : 0);
+ isDeep || (isDeep = path.length > 1);
return path;
});
-
copyObject(object, getAllKeysIn(object), result);
- result = baseClone(result, bitmask);
-
+ if (isDeep) {
+ result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG);
+ }
var length = paths.length;
while (length--) {
baseUnset(result, paths[length]);
@@ -13600,8 +13589,8 @@
// Ensure the loop is entered when path is empty.
if (!length) {
- object = undefined;
length = 1;
+ object = undefined;
}
while (++index < length) {
var value = object == null ? undefined : object[toKey(path[index])];
diff --git a/package.json b/package.json
index 6c638d508d..b9defa1213 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "lodash",
- "version": "4.17.1",
+ "version": "4.17.2",
"license": "MIT",
"private": true,
"main": "lodash.js",
@@ -43,7 +43,7 @@
"istanbul": "0.4.5",
"jquery": "^3.1.1",
"jscs": "^3.0.7",
- "lodash": "4.17.0",
+ "lodash": "4.17.1",
"lodash-doc-globals": "^0.1.1",
"markdown-doctest": "^0.9.0",
"optional-dev-dependency": "^2.0.0",
diff --git a/test/test.js b/test/test.js
index e7753db2d7..fac2701e77 100644
--- a/test/test.js
+++ b/test/test.js
@@ -7775,7 +7775,7 @@
});
});
- QUnit.test('`_.' + methodName + '` should not use the `hasOwnProperty` method of the object', function(assert) {
+ QUnit.test('`_.' + methodName + '` should not use the `hasOwnProperty` method of `object`', function(assert) {
assert.expect(1);
var object = { 'hasOwnProperty': null, 'a': 1 };
@@ -7797,24 +7797,22 @@
});
QUnit.test('`_.' + methodName + '` should coerce `path` to a string', function(assert) {
- assert.expect(1);
+ assert.expect(2);
function fn() {}
fn.toString = lodashStable.constant('fn');
- var expected = [1, 1, 2, 2, 3, 3, 4, 4],
- objects = [{ 'null': 1 }, { 'undefined': 2 }, { 'fn': 3 }, { '[object Object]': 4 }],
- values = [null, undefined, fn, {}];
+ var object = { 'null': 1 , 'undefined': 2, 'fn': 3, '[object Object]': 4 },
+ paths = [null, undefined, fn, {}],
+ expected = lodashStable.map(paths, stubTrue);
- var actual = lodashStable.transform(objects, function(result, object, index) {
- var key = values[index];
- lodashStable.each([key, [key]], function(path) {
- var prop = _.property(key);
- result.push(prop(object));
+ lodashStable.times(2, function(index) {
+ var actual = lodashStable.map(paths, function(path) {
+ return func(object, index ? [path] : path);
});
- });
- assert.deepEqual(actual, expected);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('`_.' + methodName + '` should work with `arguments` objects', function(assert) {
@@ -7876,28 +7874,6 @@
});
});
- QUnit.test('`_.' + methodName + '` should return `' + (isHas ? 'false' : 'true') + '` for inherited properties', function(assert) {
- assert.expect(2);
-
- function Foo() {}
- Foo.prototype.a = 1;
-
- lodashStable.each(['a', ['a']], function(path) {
- assert.strictEqual(func(new Foo, path), !isHas);
- });
- });
-
- QUnit.test('`_.' + methodName + '` should return `' + (isHas ? 'false' : 'true') + '` for nested inherited properties', function(assert) {
- assert.expect(2);
-
- function Foo() {}
- Foo.prototype.a = { 'b': 1 };
-
- lodashStable.each(['a.b', ['a', 'b']], function(path) {
- assert.strictEqual(func(new Foo, path), !isHas);
- });
- });
-
QUnit.test('`_.' + methodName + '` should return `true` for indexes of sparse values', function(assert) {
assert.expect(1);
@@ -7926,6 +7902,28 @@
assert.deepEqual(actual, expected);
});
+ QUnit.test('`_.' + methodName + '` should return `' + (isHas ? 'false' : 'true') + '` for inherited properties', function(assert) {
+ assert.expect(2);
+
+ function Foo() {}
+ Foo.prototype.a = 1;
+
+ lodashStable.each(['a', ['a']], function(path) {
+ assert.strictEqual(func(new Foo, path), !isHas);
+ });
+ });
+
+ QUnit.test('`_.' + methodName + '` should return `' + (isHas ? 'false' : 'true') + '` for nested inherited properties', function(assert) {
+ assert.expect(2);
+
+ function Foo() {}
+ Foo.prototype.a = { 'b': 1 };
+
+ lodashStable.each(['a.b', ['a', 'b']], function(path) {
+ assert.strictEqual(func(new Foo, path), !isHas);
+ });
+ });
+
QUnit.test('`_.' + methodName + '` should return `false` when `object` is nullish', function(assert) {
assert.expect(2);
@@ -14090,28 +14088,24 @@
assert.deepEqual(actual, expected);
});
- QUnit.test('should coerce key to a string', function(assert) {
- assert.expect(1);
+ QUnit.test('should coerce `path` to a string', function(assert) {
+ assert.expect(2);
function fn() {}
fn.toString = lodashStable.constant('fn');
- var objects = [{ 'null': 1 }, { 'undefined': 2 }, { 'fn': 3 }, { '[object Object]': 4 }],
- values = [null, undefined, fn, {}];
+ var object = { 'null': 1, 'undefined': 2, 'fn': 3, '[object Object]': 4 },
+ paths = [null, undefined, fn, {}],
+ expected = lodashStable.map(paths, stubTrue);
- var expected = lodashStable.transform(values, function(result) {
- result.push(true, true);
- });
-
- var actual = lodashStable.transform(objects, function(result, object, index) {
- var key = values[index];
- lodashStable.each([key, [key]], function(path) {
- var matches = _.matchesProperty(path, object[key]);
- result.push(matches(object));
+ lodashStable.times(2, function(index) {
+ var actual = lodashStable.map(paths, function(path) {
+ var matches = _.matchesProperty(index ? [path] : path, object[path]);
+ return matches(object);
});
- });
- assert.deepEqual(actual, expected);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('should match a key over a path', function(assert) {
@@ -15254,25 +15248,24 @@
});
});
- QUnit.test('should coerce key to a string', function(assert) {
- assert.expect(1);
+ QUnit.test('should coerce `path` to a string', function(assert) {
+ assert.expect(2);
function fn() {}
fn.toString = lodashStable.constant('fn');
- var expected = [1, 1, 2, 2, 3, 3, 4, 4],
- objects = [{ 'null': stubOne }, { 'undefined': stubTwo }, { 'fn': stubThree }, { '[object Object]': stubFour }],
- values = [null, undefined, fn, {}];
+ var expected = [1, 2, 3, 4],
+ object = { 'null': stubOne, 'undefined': stubTwo, 'fn': stubThree, '[object Object]': stubFour },
+ paths = [null, undefined, fn, {}];
- var actual = lodashStable.transform(objects, function(result, object, index) {
- var key = values[index];
- lodashStable.each([key, [key]], function(path) {
- var method = _.method(key);
- result.push(method(object));
+ lodashStable.times(2, function(index) {
+ var actual = lodashStable.map(paths, function(path) {
+ var method = _.method(index ? [path] : path);
+ return method(object);
});
- });
- assert.deepEqual(actual, expected);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('should work with inherited property values', function(assert) {
@@ -15409,25 +15402,24 @@
});
});
- QUnit.test('should coerce key to a string', function(assert) {
- assert.expect(1);
+ QUnit.test('should coerce `path` to a string', function(assert) {
+ assert.expect(2);
function fn() {}
fn.toString = lodashStable.constant('fn');
- var expected = [1, 1, 2, 2, 3, 3, 4, 4],
- objects = [{ 'null': stubOne }, { 'undefined': stubTwo }, { 'fn': stubThree }, { '[object Object]': stubFour }],
- values = [null, undefined, fn, {}];
+ var expected = [1, 2, 3, 4],
+ object = { 'null': stubOne, 'undefined': stubTwo, 'fn': stubThree, '[object Object]': stubFour },
+ paths = [null, undefined, fn, {}];
- var actual = lodashStable.transform(objects, function(result, object, index) {
- var key = values[index];
- lodashStable.each([key, [key]], function(path) {
+ lodashStable.times(2, function(index) {
+ var actual = lodashStable.map(paths, function(path) {
var methodOf = _.methodOf(object);
- result.push(methodOf(key));
+ return methodOf(index ? [path] : path);
});
- });
- assert.deepEqual(actual, expected);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('should work with inherited property values', function(assert) {
@@ -16359,16 +16351,40 @@
assert.deepEqual(_.omit(nested, 'b.c'), { 'a': 1, 'b': { 'd': 3} });
});
- QUnit.test('should coerce property names to strings', function(assert) {
+ QUnit.test('should support path arrays', function(assert) {
assert.expect(1);
- assert.deepEqual(_.omit({ '0': 'a' }, 0), {});
+ var object = { 'a.b': 1, 'a': { 'b': 2 } },
+ actual = _.omit(object, [['a.b']]);
+
+ assert.deepEqual(actual, { 'a': { 'b': 2 } });
});
- QUnit.test('should work with `arguments` objects as secondary arguments', function(assert) {
+ QUnit.test('should omit a key over a path', function(assert) {
+ assert.expect(2);
+
+ var object = { 'a.b': 1, 'a': { 'b': 2 } };
+
+ lodashStable.each(['a.b', ['a.b']], function(path) {
+ assert.deepEqual(_.omit(object, path), { 'a': { 'b': 2 } });
+ });
+ });
+
+ QUnit.test('should coerce `paths` to strings', function(assert) {
assert.expect(1);
- assert.deepEqual(_.omit(object, args), { 'b': 2, 'd': 4 });
+ assert.deepEqual(_.omit({ '0': 'a' }, 0), {});
+ });
+
+ QUnit.test('should return an empty object when `object` is nullish', function(assert) {
+ assert.expect(2);
+
+ lodashStable.each([null, undefined], function(value) {
+ objectProto.a = 1;
+ var actual = _.omit(value, 'valueOf');
+ delete objectProto.a;
+ assert.deepEqual(actual, {});
+ });
});
QUnit.test('should work with a primitive `object`', function(assert) {
@@ -16383,15 +16399,10 @@
delete stringProto.b;
});
- QUnit.test('should return an empty object when `object` is nullish', function(assert) {
- assert.expect(2);
+ QUnit.test('should work with `arguments` object `paths`', function(assert) {
+ assert.expect(1);
- lodashStable.each([null, undefined], function(value) {
- objectProto.a = 1;
- var actual = _.omit(value, 'valueOf');
- delete objectProto.a;
- assert.deepEqual(actual, {});
- });
+ assert.deepEqual(_.omit(object, args), { 'b': 2, 'd': 4 });
});
}());
@@ -17600,22 +17611,34 @@
QUnit.test('should support path arrays', function(assert) {
assert.expect(1);
- var object = { 'a.b.c': 1 },
- actual = _.pick(object, [['a.b.c']]);
+ var object = { 'a.b': 1, 'a': { 'b': 2 } },
+ actual = _.pick(object, [['a.b']]);
- assert.deepEqual(actual, { 'a.b.c': 1 });
+ assert.deepEqual(actual, { 'a.b': 1 });
+ });
+
+ QUnit.test('should pick a key over a path', function(assert) {
+ assert.expect(2);
+
+ var object = { 'a.b': 1, 'a': { 'b': 2 } };
+
+ lodashStable.each(['a.b', ['a.b']], function(path) {
+ assert.deepEqual(_.pick(object, path), { 'a.b': 1 });
+ });
});
- QUnit.test('should coerce property names to strings', function(assert) {
+ QUnit.test('should coerce `paths` to strings', function(assert) {
assert.expect(1);
assert.deepEqual(_.pick({ '0': 'a', '1': 'b' }, 0), { '0': 'a' });
});
- QUnit.test('should work with `arguments` objects as secondary arguments', function(assert) {
- assert.expect(1);
+ QUnit.test('should return an empty object when `object` is nullish', function(assert) {
+ assert.expect(2);
- assert.deepEqual(_.pick(object, args), { 'a': 1, 'c': 3 });
+ lodashStable.each([null, undefined], function(value) {
+ assert.deepEqual(_.pick(value, 'valueOf'), {});
+ });
});
QUnit.test('should work with a primitive `object`', function(assert) {
@@ -17624,12 +17647,10 @@
assert.deepEqual(_.pick('', 'slice'), { 'slice': ''.slice });
});
- QUnit.test('should return an empty object when `object` is nullish', function(assert) {
- assert.expect(2);
+ QUnit.test('should work with `arguments` object `paths`', function(assert) {
+ assert.expect(1);
- lodashStable.each([null, undefined], function(value) {
- assert.deepEqual(_.pick(value, 'valueOf'), {});
- });
+ assert.deepEqual(_.pick(object, args), { 'a': 1, 'c': 3 });
});
}());
@@ -17807,24 +17828,24 @@
assert.deepEqual(actual, ['a', 'a', 'b', 'b']);
});
- QUnit.test('should coerce key to a string', function(assert) {
- assert.expect(1);
+ QUnit.test('should coerce `path` to a string', function(assert) {
+ assert.expect(2);
function fn() {}
fn.toString = lodashStable.constant('fn');
- var objects = [{ 'null': 1 }, { 'undefined': 2 }, { 'fn': 3 }, { '[object Object]': 4 }],
- values = [null, undefined, fn, {}];
+ var expected = [1, 2, 3, 4],
+ object = { 'null': 1, 'undefined': 2, 'fn': 3, '[object Object]': 4 },
+ paths = [null, undefined, fn, {}];
- var actual = lodashStable.transform(objects, function(result, object, index) {
- var key = values[index];
- lodashStable.each([key, [key]], function(path) {
- var prop = _.property(key);
- result.push(prop(object));
+ lodashStable.times(2, function(index) {
+ var actual = lodashStable.map(paths, function(path) {
+ var prop = _.property(index ? [path] : path);
+ return prop(object);
});
- });
- assert.deepEqual(actual, [1, 1, 2, 2, 3, 3, 4, 4]);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('should pluck a key over a path', function(assert) {
@@ -17952,24 +17973,24 @@
assert.deepEqual(actual, ['a', 'a', 'b', 'b']);
});
- QUnit.test('should coerce key to a string', function(assert) {
- assert.expect(1);
+ QUnit.test('should coerce `path` to a string', function(assert) {
+ assert.expect(2);
function fn() {}
fn.toString = lodashStable.constant('fn');
- var objects = [{ 'null': 1 }, { 'undefined': 2 }, { 'fn': 3 }, { '[object Object]': 4 }],
- values = [null, undefined, fn, {}];
+ var expected = [1, 2, 3, 4],
+ object = { 'null': 1, 'undefined': 2, 'fn': 3, '[object Object]': 4 },
+ paths = [null, undefined, fn, {}];
- var actual = lodashStable.transform(objects, function(result, object, index) {
- var key = values[index];
- lodashStable.each([key, [key]], function(path) {
+ lodashStable.times(2, function(index) {
+ var actual = lodashStable.map(paths, function(path) {
var propOf = _.propertyOf(object);
- result.push(propOf(key));
+ return propOf(index ? [path] : path);
});
- });
- assert.deepEqual(actual, [1, 1, 2, 2, 3, 3, 4, 4]);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('should pluck a key over a path', function(assert) {
@@ -18232,7 +18253,7 @@
assert.deepEqual(actual, expected);
- expected = lodashStable.map(values, noop),
+ expected = lodashStable.map(values, noop);
actual = lodashStable.at(array, values);
assert.deepEqual(actual, expected);
@@ -19325,25 +19346,19 @@
});
QUnit.test('`_.' + methodName + '` should return the default value for `undefined` values', function(assert) {
- assert.expect(1);
+ assert.expect(2);
var object = { 'a': {} },
- values = empties.concat(true, new Date, 1, /x/, 'a');
+ values = empties.concat(true, new Date, 1, /x/, 'a'),
+ expected = lodashStable.map(values, function(value) { return [value, value]; });
- var expected = lodashStable.transform(values, function(result, value) {
- result.push(value, value, value, value);
- });
-
- var actual = lodashStable.transform(values, function(result, value) {
- lodashStable.each(['a.b', ['a', 'b']], function(path) {
- result.push(
- func(object, path, value),
- func(null, path, value)
- );
+ lodashStable.each(['a.b', ['a', 'b']], function(path) {
+ var actual = lodashStable.map(values, function(value) {
+ return [func(object, path, value), func(null, path, value)];
});
- });
- assert.deepEqual(actual, expected);
+ assert.deepEqual(actual, expected);
+ });
});
QUnit.test('`_.' + methodName + '` should return the default value when `path` is empty', function(assert) {
@@ -20870,10 +20885,11 @@
QUnit.test('should spread arguments to `func`', function(assert) {
assert.expect(2);
- var spread = _.spread(fn);
+ var spread = _.spread(fn),
+ expected = [1, 2];
- assert.deepEqual(spread([1, 2]), [1, 2]);
- assert.deepEqual(spread([1, 2], 3), [1, 2, 3]);
+ assert.deepEqual(spread([1, 2]), expected);
+ assert.deepEqual(spread([1, 2], 3), expected);
});
QUnit.test('should accept a falsey `array`', function(assert) {
@@ -20894,10 +20910,11 @@
QUnit.test('should work with `start`', function(assert) {
assert.expect(2);
- var spread = _.spread(fn, 1);
+ var spread = _.spread(fn, 1),
+ expected = [1, 2, 3];
- assert.deepEqual(spread(1, [2, 3]), [1, 2, 3]);
- assert.deepEqual(spread(1, [2, 3], 4), [1, 2, 3, 4]);
+ assert.deepEqual(spread(1, [2, 3]), expected);
+ assert.deepEqual(spread(1, [2, 3], 4), expected);
});
QUnit.test('should treat `start` as `0` for negative or `NaN` values', function(assert) {
@@ -20917,10 +20934,11 @@
QUnit.test('should coerce `start` to an integer', function(assert) {
assert.expect(2);
- var spread = _.spread(fn, 1.6);
+ var spread = _.spread(fn, 1.6),
+ expected = [1, 2, 3];
- assert.deepEqual(spread(1, [2, 3]), [1, 2, 3]);
- assert.deepEqual(spread(1, [2, 3], 4), [1, 2, 3, 4]);
+ assert.deepEqual(spread(1, [2, 3]), expected);
+ assert.deepEqual(spread(1, [2, 3], 4), expected);
});
}());
diff --git a/yarn.lock b/yarn.lock
index c76af3eb55..c6098aea04 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2076,9 +2076,9 @@ lodash@^4.14.0, lodash@^4.14.1, lodash@^4.16.0, lodash@^4.16.4, lodash@^4.2.0:
version "4.16.4"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.16.4.tgz#01ce306b9bad1319f2a5528674f88297aeb70127"
-lodash@4.17.0:
- version "4.17.0"
- resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.0.tgz#93f4466e5ab73e5a1f1216c34eea11535f0a8df5"
+lodash@4.17.1:
+ version "4.17.1"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.1.tgz#e75eaf17a34730c6491d9956f4d81f3a044f01bf"
log-driver@1.2.5:
version "1.2.5"