ut2 1.8.0 → 1.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ut2.js +116 -143
- package/dist/ut2.js.map +1 -1
- package/dist/ut2.min.js +1 -1
- package/dist/ut2.min.js.map +1 -1
- package/es/before.js +2 -1
- package/es/clamp.js +7 -6
- package/es/conformsTo.js +2 -1
- package/es/countBy.js +2 -2
- package/es/groupBy.js +2 -2
- package/es/internals/baseDebounce.js +15 -14
- package/es/internals/compare.js +19 -26
- package/es/internals/createExtremum.js +4 -3
- package/es/internals/createForEach.js +2 -2
- package/es/internals/createReduce.js +2 -2
- package/es/internals/getTagWithBugfix.js +7 -7
- package/es/internals/helpers.js +1 -1
- package/es/internals/isEqualDeep.js +4 -4
- package/es/internals/native.js +9 -6
- package/es/internals/nodeUtil.js +4 -2
- package/es/invert.js +2 -2
- package/es/isBlob.js +2 -2
- package/es/isEmpty.js +2 -2
- package/es/isEqual.js +2 -1
- package/es/isMatch.js +5 -5
- package/es/isUndefined.js +3 -1
- package/es/keyBy.js +2 -2
- package/es/max.js +4 -3
- package/es/merge.js +6 -5
- package/es/min.js +4 -3
- package/es/nth.js +2 -1
- package/es/orderBy.js +5 -4
- package/es/partition.js +2 -2
- package/es/toString.js +2 -2
- package/lib/before.js +2 -1
- package/lib/clamp.js +7 -6
- package/lib/conformsTo.js +2 -1
- package/lib/countBy.js +2 -2
- package/lib/groupBy.js +2 -2
- package/lib/internals/baseDebounce.js +15 -14
- package/lib/internals/compare.js +18 -27
- package/lib/internals/createExtremum.js +4 -3
- package/lib/internals/createForEach.js +2 -2
- package/lib/internals/createReduce.js +2 -2
- package/lib/internals/getTagWithBugfix.js +6 -6
- package/lib/internals/helpers.js +1 -1
- package/lib/internals/isEqualDeep.js +3 -3
- package/lib/internals/native.js +8 -5
- package/lib/internals/nodeUtil.js +4 -2
- package/lib/invert.js +2 -2
- package/lib/isBlob.js +1 -1
- package/lib/isEmpty.js +2 -2
- package/lib/isEqual.js +2 -1
- package/lib/isMatch.js +4 -4
- package/lib/isUndefined.js +3 -1
- package/lib/keyBy.js +2 -2
- package/lib/max.js +4 -3
- package/lib/merge.js +6 -5
- package/lib/min.js +4 -3
- package/lib/nth.js +2 -1
- package/lib/orderBy.js +5 -4
- package/lib/partition.js +2 -2
- package/lib/toString.js +1 -1
- package/package.json +1 -1
- package/types/countBy.d.ts +7 -5
- package/types/difference.d.ts +2 -2
- package/types/groupBy.d.ts +7 -5
- package/types/internals/compare.d.ts +4 -6
- package/types/internals/createExtremum.d.ts +2 -2
- package/types/internals/native.d.ts +3 -0
- package/types/internals/types.d.ts +9 -2
- package/types/intersection.d.ts +3 -3
- package/types/invert.d.ts +1 -1
- package/types/keyBy.d.ts +7 -5
- package/types/max.d.ts +5 -5
- package/types/merge.d.ts +3 -3
- package/types/min.d.ts +4 -4
- package/types/omitBy.d.ts +1 -1
- package/types/orderBy.d.ts +8 -6
- package/types/partition.d.ts +7 -5
- package/types/pickBy.d.ts +1 -1
- package/types/reduce.d.ts +1 -1
- package/types/reduceRight.d.ts +1 -1
- package/types/times.d.ts +1 -1
- package/types/union.d.ts +2 -2
- package/types/uniq.d.ts +2 -2
- package/types/xor.d.ts +3 -3
- package/es/internals/isPrototype.js +0 -12
- package/es/internals/specialKeys.js +0 -17
- package/lib/internals/isPrototype.js +0 -14
- package/lib/internals/specialKeys.js +0 -19
- package/types/internals/isPrototype.d.ts +0 -9
- package/types/internals/specialKeys.d.ts +0 -9
package/es/before.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import defaultTo from './defaultTo.js';
|
|
2
2
|
import { FUNC_ERROR_TEXT } from './internals/helpers.js';
|
|
3
|
+
import { nativeUndefined } from './internals/native.js';
|
|
3
4
|
import toNumber from './toNumber.js';
|
|
4
5
|
|
|
5
6
|
function before(n, func) {
|
|
@@ -13,7 +14,7 @@ function before(n, func) {
|
|
|
13
14
|
result = func.apply(this, arguments);
|
|
14
15
|
}
|
|
15
16
|
if (n <= 1) {
|
|
16
|
-
func =
|
|
17
|
+
func = nativeUndefined;
|
|
17
18
|
}
|
|
18
19
|
return result;
|
|
19
20
|
};
|
package/es/clamp.js
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import defaultTo from './defaultTo.js';
|
|
2
|
+
import { nativeUndefined } from './internals/native.js';
|
|
2
3
|
import toNumber from './toNumber.js';
|
|
3
4
|
|
|
4
5
|
var clamp = function (number, lower, upper) {
|
|
5
|
-
if (upper ===
|
|
6
|
+
if (upper === nativeUndefined) {
|
|
6
7
|
upper = lower;
|
|
7
|
-
lower =
|
|
8
|
+
lower = nativeUndefined;
|
|
8
9
|
}
|
|
9
|
-
if (upper !==
|
|
10
|
+
if (upper !== nativeUndefined) {
|
|
10
11
|
upper = defaultTo(toNumber(upper), 0);
|
|
11
12
|
}
|
|
12
|
-
if (lower !==
|
|
13
|
+
if (lower !== nativeUndefined) {
|
|
13
14
|
lower = defaultTo(toNumber(lower), 0);
|
|
14
15
|
}
|
|
15
16
|
number = toNumber(number);
|
|
16
17
|
if (number === number) {
|
|
17
|
-
if (upper !==
|
|
18
|
+
if (upper !== nativeUndefined) {
|
|
18
19
|
number = number <= upper ? number : upper;
|
|
19
20
|
}
|
|
20
|
-
if (lower !==
|
|
21
|
+
if (lower !== nativeUndefined) {
|
|
21
22
|
number = number >= lower ? number : lower;
|
|
22
23
|
}
|
|
23
24
|
}
|
package/es/conformsTo.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import allKeys from './allKeys.js';
|
|
2
|
+
import { nativeUndefined } from './internals/native.js';
|
|
2
3
|
import isNil from './isNil.js';
|
|
3
4
|
|
|
4
5
|
var conformsTo = function (object, source) {
|
|
@@ -14,7 +15,7 @@ var conformsTo = function (object, source) {
|
|
|
14
15
|
var key = props[i];
|
|
15
16
|
var predicate = source[key];
|
|
16
17
|
var value = object[key];
|
|
17
|
-
if ((value ===
|
|
18
|
+
if ((value === nativeUndefined && !(key in object)) || !predicate(value)) {
|
|
18
19
|
return false;
|
|
19
20
|
}
|
|
20
21
|
}
|
package/es/countBy.js
CHANGED
|
@@ -4,8 +4,8 @@ import createIteratee from './internals/createIteratee.js';
|
|
|
4
4
|
var countBy = function (collection, iteratee) {
|
|
5
5
|
var result = {};
|
|
6
6
|
var internalIteratee = createIteratee(iteratee);
|
|
7
|
-
forEach(collection, function (item) {
|
|
8
|
-
var key = internalIteratee(item);
|
|
7
|
+
forEach(collection, function (item, index, arr) {
|
|
8
|
+
var key = internalIteratee(item, index, arr);
|
|
9
9
|
if (key in result) {
|
|
10
10
|
++result[key];
|
|
11
11
|
}
|
package/es/groupBy.js
CHANGED
|
@@ -6,8 +6,8 @@ var groupBy = function (collection, iteratee) {
|
|
|
6
6
|
if (iteratee === void 0) { iteratee = identity; }
|
|
7
7
|
var result = {};
|
|
8
8
|
var internalIteratee = createIteratee(iteratee);
|
|
9
|
-
forEach(collection, function (item) {
|
|
10
|
-
var key = internalIteratee(item);
|
|
9
|
+
forEach(collection, function (item, index, arr) {
|
|
10
|
+
var key = internalIteratee(item, index, arr);
|
|
11
11
|
if (key in result) {
|
|
12
12
|
result[key].push(item);
|
|
13
13
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import defaultTo from '../defaultTo.js';
|
|
2
2
|
import toNumber from '../toNumber.js';
|
|
3
3
|
import { FUNC_ERROR_TEXT } from './helpers.js';
|
|
4
|
+
import { nativeUndefined } from './native.js';
|
|
4
5
|
|
|
5
6
|
function baseDebounce(func, wait, immediate, __throttle__) {
|
|
6
7
|
if (__throttle__ === void 0) { __throttle__ = false; }
|
|
@@ -10,7 +11,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
|
|
|
10
11
|
var timer, lastCallTime, lastInvokeTime, lastArgs, lastThis, result;
|
|
11
12
|
wait = defaultTo(toNumber(wait), 0);
|
|
12
13
|
function shouldInvoke(time) {
|
|
13
|
-
if (lastCallTime ===
|
|
14
|
+
if (lastCallTime === nativeUndefined) {
|
|
14
15
|
return true;
|
|
15
16
|
}
|
|
16
17
|
var timeSinceLastCall = time - lastCallTime;
|
|
@@ -20,7 +21,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
|
|
|
20
21
|
function invokeFunc(time) {
|
|
21
22
|
lastInvokeTime = time;
|
|
22
23
|
result = func.apply(lastThis, lastArgs);
|
|
23
|
-
lastThis = lastArgs =
|
|
24
|
+
lastThis = lastArgs = nativeUndefined;
|
|
24
25
|
return result;
|
|
25
26
|
}
|
|
26
27
|
function debounced() {
|
|
@@ -32,36 +33,36 @@ function baseDebounce(func, wait, immediate, __throttle__) {
|
|
|
32
33
|
lastArgs = args;
|
|
33
34
|
var time = Date.now();
|
|
34
35
|
var isInvoke = shouldInvoke(time);
|
|
35
|
-
var waitTime = !__throttle__ ? wait : !isInvoke && lastCallTime !==
|
|
36
|
+
var waitTime = !__throttle__ ? wait : !isInvoke && lastCallTime !== nativeUndefined && timer === nativeUndefined ? wait - (time - lastCallTime) : wait;
|
|
36
37
|
lastCallTime = time;
|
|
37
38
|
if (isInvoke) {
|
|
38
|
-
if (immediate && timer ===
|
|
39
|
+
if (immediate && timer === nativeUndefined) {
|
|
39
40
|
return invokeFunc(time);
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
|
-
if (timer !==
|
|
43
|
+
if (timer !== nativeUndefined && !__throttle__) {
|
|
43
44
|
clearTimeout(timer);
|
|
44
|
-
timer =
|
|
45
|
+
timer = nativeUndefined;
|
|
45
46
|
}
|
|
46
|
-
if (timer ===
|
|
47
|
+
if (timer === nativeUndefined) {
|
|
47
48
|
timer = setTimeout(function () {
|
|
48
|
-
timer =
|
|
49
|
+
timer = nativeUndefined;
|
|
49
50
|
invokeFunc(Date.now());
|
|
50
51
|
}, waitTime);
|
|
51
52
|
}
|
|
52
53
|
return result;
|
|
53
54
|
}
|
|
54
55
|
function cancel() {
|
|
55
|
-
if (timer !==
|
|
56
|
+
if (timer !== nativeUndefined) {
|
|
56
57
|
clearTimeout(timer);
|
|
57
|
-
timer =
|
|
58
|
+
timer = nativeUndefined;
|
|
58
59
|
}
|
|
59
|
-
lastCallTime = timer = lastArgs = lastThis =
|
|
60
|
+
lastCallTime = timer = lastArgs = lastThis = nativeUndefined;
|
|
60
61
|
}
|
|
61
62
|
function flush() {
|
|
62
|
-
if (timer !==
|
|
63
|
+
if (timer !== nativeUndefined) {
|
|
63
64
|
clearTimeout(timer);
|
|
64
|
-
timer =
|
|
65
|
+
timer = nativeUndefined;
|
|
65
66
|
if (lastArgs) {
|
|
66
67
|
return invokeFunc(Date.now());
|
|
67
68
|
}
|
|
@@ -69,7 +70,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
|
|
|
69
70
|
return result;
|
|
70
71
|
}
|
|
71
72
|
function pending() {
|
|
72
|
-
return timer !==
|
|
73
|
+
return timer !== nativeUndefined;
|
|
73
74
|
}
|
|
74
75
|
debounced.cancel = cancel;
|
|
75
76
|
debounced.flush = flush;
|
package/es/internals/compare.js
CHANGED
|
@@ -1,31 +1,24 @@
|
|
|
1
|
+
import isNumber from '../isNumber.js';
|
|
1
2
|
import isSymbol from '../isSymbol.js';
|
|
2
3
|
import toString from '../toString.js';
|
|
3
4
|
|
|
4
|
-
function
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var otherIsSymbol = isSymbol(other);
|
|
20
|
-
var valueStr = toString(value);
|
|
21
|
-
var otherStr = toString(other);
|
|
22
|
-
if (!otherIsSymbol && (valueIsSymbol || valueStr > otherStr)) {
|
|
23
|
-
return -1;
|
|
24
|
-
}
|
|
25
|
-
if (!valueIsSymbol && (otherIsSymbol || valueStr < otherStr)) {
|
|
26
|
-
return 1;
|
|
5
|
+
function createCompare(dir) {
|
|
6
|
+
var asc = dir === 1;
|
|
7
|
+
function wrapper(value, other) {
|
|
8
|
+
var valueIsSymbol = isSymbol(value);
|
|
9
|
+
var otherIsSymbol = isSymbol(other);
|
|
10
|
+
var isNeedConvertString = !valueIsSymbol && !otherIsSymbol && !(isNumber(value) && isNumber(other));
|
|
11
|
+
var _value = isNeedConvertString ? toString(value) : value;
|
|
12
|
+
var _other = isNeedConvertString ? toString(other) : other;
|
|
13
|
+
if (!otherIsSymbol && (valueIsSymbol || _value > _other)) {
|
|
14
|
+
return asc ? 1 : -1;
|
|
15
|
+
}
|
|
16
|
+
if (!valueIsSymbol && (otherIsSymbol || _value < _other)) {
|
|
17
|
+
return asc ? -1 : 1;
|
|
18
|
+
}
|
|
19
|
+
return 0;
|
|
27
20
|
}
|
|
28
|
-
return
|
|
21
|
+
return wrapper;
|
|
29
22
|
}
|
|
30
23
|
function compareMultiple(object, other, orders) {
|
|
31
24
|
var objCriteria = object.criteria;
|
|
@@ -34,7 +27,7 @@ function compareMultiple(object, other, orders) {
|
|
|
34
27
|
var index = -1;
|
|
35
28
|
while (++index < length) {
|
|
36
29
|
var order = orders[index];
|
|
37
|
-
var cmpFn = typeof order === 'function' ? order : order === 'desc' ?
|
|
30
|
+
var cmpFn = typeof order === 'function' ? order : order === 'desc' ? createCompare(0) : createCompare(1);
|
|
38
31
|
var result = cmpFn(objCriteria[index], othCriteria[index]);
|
|
39
32
|
if (result) {
|
|
40
33
|
return result;
|
|
@@ -43,4 +36,4 @@ function compareMultiple(object, other, orders) {
|
|
|
43
36
|
return object.index - other.index;
|
|
44
37
|
}
|
|
45
38
|
|
|
46
|
-
export {
|
|
39
|
+
export { compareMultiple };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import isArray from '../isArray.js';
|
|
2
2
|
import isSymbol from '../isSymbol.js';
|
|
3
3
|
import createIteratee from './createIteratee.js';
|
|
4
|
+
import { nativeUndefined } from './native.js';
|
|
4
5
|
|
|
5
6
|
function createExtremum(array, comparator, iteratee) {
|
|
6
7
|
if (!isArray(array)) {
|
|
@@ -8,9 +9,9 @@ function createExtremum(array, comparator, iteratee) {
|
|
|
8
9
|
}
|
|
9
10
|
var result, computed;
|
|
10
11
|
var internalIteratee = createIteratee(iteratee);
|
|
11
|
-
array.forEach(function (value) {
|
|
12
|
-
var current = internalIteratee(value);
|
|
13
|
-
if (current != null && (computed ===
|
|
12
|
+
array.forEach(function (value, index) {
|
|
13
|
+
var current = internalIteratee(value, index, array);
|
|
14
|
+
if (current != null && (computed === nativeUndefined ? current === current && !isSymbol(current) : comparator(current, computed))) {
|
|
14
15
|
computed = current;
|
|
15
16
|
result = value;
|
|
16
17
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import allKeys from '../allKeys.js';
|
|
1
2
|
import identity from '../identity.js';
|
|
2
3
|
import isArrayLike from '../isArrayLike.js';
|
|
3
|
-
import keys from '../keys.js';
|
|
4
4
|
|
|
5
5
|
function createForEach(dir) {
|
|
6
6
|
var forEach = function (collection, iteratee) {
|
|
7
7
|
if (iteratee === void 0) { iteratee = identity; }
|
|
8
|
-
var _keys = !isArrayLike(collection) &&
|
|
8
|
+
var _keys = !isArrayLike(collection) && allKeys(collection);
|
|
9
9
|
var len = (_keys || collection).length;
|
|
10
10
|
var i = dir > 0 ? 0 : len - 1;
|
|
11
11
|
while (i >= 0 && i < len) {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import allKeys from '../allKeys.js';
|
|
1
2
|
import identity from '../identity.js';
|
|
2
3
|
import isArrayLike from '../isArrayLike.js';
|
|
3
|
-
import keys from '../keys.js';
|
|
4
4
|
|
|
5
5
|
function createReduce(dir) {
|
|
6
6
|
function reducer(collection, iteratee, memo, initial) {
|
|
7
|
-
var _keys = !isArrayLike(collection) &&
|
|
7
|
+
var _keys = !isArrayLike(collection) && allKeys(collection);
|
|
8
8
|
var len = (_keys || collection).length;
|
|
9
9
|
var i = dir > 0 ? 0 : len - 1;
|
|
10
10
|
if (!initial && len > 0) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { dataViewTag, mapTag, promiseTag, setTag, weakMapTag, objectTag } from './native.js';
|
|
1
|
+
import { dataViewTag, mapTag, promiseTag, setTag, weakMapTag, stringUndefined, objectTag, nativeUndefined } from './native.js';
|
|
2
2
|
import { toSource } from './helpers.js';
|
|
3
3
|
import getTag from './getTag.js';
|
|
4
4
|
|
|
5
|
-
var dataViewExisted = typeof DataView !==
|
|
6
|
-
var mapExisted = typeof Map !==
|
|
7
|
-
var promiseExisted = typeof Promise !==
|
|
8
|
-
var setExisted = typeof Set !==
|
|
9
|
-
var weakMapExisted = typeof WeakMap !==
|
|
5
|
+
var dataViewExisted = typeof DataView !== stringUndefined;
|
|
6
|
+
var mapExisted = typeof Map !== stringUndefined;
|
|
7
|
+
var promiseExisted = typeof Promise !== stringUndefined;
|
|
8
|
+
var setExisted = typeof Set !== stringUndefined;
|
|
9
|
+
var weakMapExisted = typeof WeakMap !== stringUndefined;
|
|
10
10
|
var dataViewCtorString = toSource(DataView);
|
|
11
11
|
var mapCtorString = toSource(Map);
|
|
12
12
|
var promiseCtorString = toSource(Promise);
|
|
@@ -20,7 +20,7 @@ if ((dataViewExisted && getTag(new DataView(new ArrayBuffer(1))) !== dataViewTag
|
|
|
20
20
|
(weakMapExisted && getTag(new WeakMap()) !== weakMapTag)) {
|
|
21
21
|
getTagWithBugfix = function (value) {
|
|
22
22
|
var result = getTag(value);
|
|
23
|
-
var Ctor = result === objectTag ? value.constructor :
|
|
23
|
+
var Ctor = result === objectTag ? value.constructor : nativeUndefined;
|
|
24
24
|
var ctorString = Ctor ? toSource(Ctor) : '';
|
|
25
25
|
if (ctorString) {
|
|
26
26
|
switch (ctorString) {
|
package/es/internals/helpers.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import getTag from './getTag.js';
|
|
2
2
|
import { argumentsTag, functionProtoToString } from './native.js';
|
|
3
3
|
|
|
4
|
-
var VERSION = "1.
|
|
4
|
+
var VERSION = "1.9.0";
|
|
5
5
|
var supportedArgumentsType = getTag((function () { return arguments; })()) === argumentsTag;
|
|
6
6
|
var FUNC_ERROR_TEXT = 'Expected a function';
|
|
7
7
|
function toSource(func) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import allKeys from '../allKeys.js';
|
|
2
2
|
import eq from '../eq.js';
|
|
3
3
|
import getTagWithBugfix from './getTagWithBugfix.js';
|
|
4
|
-
import { symbolProto, arrayBufferTag, dataViewTag, errorTag, symbolTag, regExpTag, stringTag, dateTag, booleanTag, numberTag, objectTag, objectProtoHasOwnProperty, argumentsTag, setTag, mapTag, arrayTag, arrayProtoSlice } from './native.js';
|
|
4
|
+
import { symbolProto, nativeUndefined, arrayBufferTag, dataViewTag, errorTag, symbolTag, regExpTag, stringTag, dateTag, booleanTag, numberTag, objectTag, objectProtoHasOwnProperty, argumentsTag, setTag, mapTag, arrayTag, arrayProtoSlice } from './native.js';
|
|
5
5
|
import isBuffer from '../isBuffer.js';
|
|
6
6
|
import isFunction from '../isFunction.js';
|
|
7
7
|
import isNil from '../isNil.js';
|
|
@@ -9,7 +9,7 @@ import isObjectLike from '../isObjectLike.js';
|
|
|
9
9
|
import isTypedArray from '../isTypedArray.js';
|
|
10
10
|
import orderBy from '../orderBy.js';
|
|
11
11
|
|
|
12
|
-
var symbolValueOf = symbolProto ? symbolProto.valueOf :
|
|
12
|
+
var symbolValueOf = symbolProto ? symbolProto.valueOf : nativeUndefined;
|
|
13
13
|
function mapToArray(map) {
|
|
14
14
|
var result = [];
|
|
15
15
|
map.forEach(function (value, key) {
|
|
@@ -122,7 +122,7 @@ function isEqualDeep(value, other, customizer, strictCheck, valueStack, otherSta
|
|
|
122
122
|
while (length--) {
|
|
123
123
|
if (hasCustomizer) {
|
|
124
124
|
var compared = customizer(value[length], other[length], length, value, other, valueStack, otherStack);
|
|
125
|
-
if (compared !==
|
|
125
|
+
if (compared !== nativeUndefined) {
|
|
126
126
|
if (!compared) {
|
|
127
127
|
return false;
|
|
128
128
|
}
|
|
@@ -145,7 +145,7 @@ function isEqualDeep(value, other, customizer, strictCheck, valueStack, otherSta
|
|
|
145
145
|
var key = keys[length];
|
|
146
146
|
if (hasCustomizer) {
|
|
147
147
|
var compared = customizer(value[key], other[key], key, value, other, valueStack, otherStack);
|
|
148
|
-
if (compared !==
|
|
148
|
+
if (compared !== nativeUndefined) {
|
|
149
149
|
if (!compared) {
|
|
150
150
|
return false;
|
|
151
151
|
}
|
package/es/internals/native.js
CHANGED
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
var nativeUndefined = void 0;
|
|
2
|
+
var stringUndefined = 'undefined';
|
|
3
|
+
var stringObject = 'object';
|
|
1
4
|
var objectProto = Object.prototype;
|
|
2
5
|
var objectProtoToString = objectProto.toString;
|
|
3
6
|
var objectProtoHasOwnProperty = objectProto.hasOwnProperty;
|
|
@@ -7,8 +10,8 @@ var objectGetPrototypeOf = Object.getPrototypeOf;
|
|
|
7
10
|
var objectKeys = Object.keys;
|
|
8
11
|
var functionProto = Function.prototype;
|
|
9
12
|
var functionProtoToString = functionProto.toString;
|
|
10
|
-
var symbolExisted = typeof Symbol !==
|
|
11
|
-
var symbolProto = symbolExisted ? Symbol.prototype :
|
|
13
|
+
var symbolExisted = typeof Symbol !== stringUndefined;
|
|
14
|
+
var symbolProto = symbolExisted ? Symbol.prototype : nativeUndefined;
|
|
12
15
|
var arrayProto = Array.prototype;
|
|
13
16
|
var arrayProtoSlice = arrayProto.slice;
|
|
14
17
|
var mathMin = Math.min;
|
|
@@ -20,9 +23,9 @@ var mathAbs = Math.abs;
|
|
|
20
23
|
var numberIsFinite = Number.isFinite;
|
|
21
24
|
var numberIsInteger = Number.isInteger;
|
|
22
25
|
var numberIsSafeInteger = Number.isSafeInteger;
|
|
23
|
-
var globalThisExisted = typeof globalThis ===
|
|
24
|
-
var globalExisted = typeof global ===
|
|
25
|
-
var selfExisted = typeof self ===
|
|
26
|
+
var globalThisExisted = typeof globalThis === stringObject && globalThis;
|
|
27
|
+
var globalExisted = typeof global === stringObject && global;
|
|
28
|
+
var selfExisted = typeof self === stringObject && self;
|
|
26
29
|
var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
|
|
27
30
|
var MIN_SAFE_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991;
|
|
28
31
|
var MAX_ARRAY_LENGTH = 4294967295;
|
|
@@ -49,4 +52,4 @@ var promiseTag = '[object Promise]';
|
|
|
49
52
|
var setTag = '[object Set]';
|
|
50
53
|
var weakMapTag = '[object WeakMap]';
|
|
51
54
|
|
|
52
|
-
export { MAX_ARRAY_LENGTH, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, argumentsTag, arrayBufferTag, arrayProto, arrayProtoSlice, arrayTag, bigIntTag, blobTag, booleanTag, dataViewTag, dateTag, domExceptionTag, errorTag, functionProto, functionProtoToString, functionTags, globalExisted, globalThisExisted, mapTag, mathAbs, mathCeil, mathFloor, mathMax, mathMin, mathRandom, numberIsFinite, numberIsInteger, numberIsSafeInteger, numberTag, objectGetOwnPropertySymbols, objectGetPrototypeOf, objectKeys, objectProto, objectProtoHasOwnProperty, objectProtoPropertyIsEnumerable, objectProtoToString, objectTag, promiseTag, regExpTag, selfExisted, setTag, stringTag, symbolProto, symbolTag, typedArrayTags, weakMapTag, weakSetTag };
|
|
55
|
+
export { MAX_ARRAY_LENGTH, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, argumentsTag, arrayBufferTag, arrayProto, arrayProtoSlice, arrayTag, bigIntTag, blobTag, booleanTag, dataViewTag, dateTag, domExceptionTag, errorTag, functionProto, functionProtoToString, functionTags, globalExisted, globalThisExisted, mapTag, mathAbs, mathCeil, mathFloor, mathMax, mathMin, mathRandom, nativeUndefined, numberIsFinite, numberIsInteger, numberIsSafeInteger, numberTag, objectGetOwnPropertySymbols, objectGetPrototypeOf, objectKeys, objectProto, objectProtoHasOwnProperty, objectProtoPropertyIsEnumerable, objectProtoToString, objectTag, promiseTag, regExpTag, selfExisted, setTag, stringObject, stringTag, stringUndefined, symbolProto, symbolTag, typedArrayTags, weakMapTag, weakSetTag };
|
package/es/internals/nodeUtil.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
import { stringObject } from './native.js';
|
|
2
|
+
|
|
3
|
+
var freeExports = typeof exports === stringObject && exports && !exports.nodeType && exports;
|
|
4
|
+
var freeModule = freeExports && typeof module === stringObject && module && !module.nodeType && module;
|
|
3
5
|
var nodeUtil = (function () {
|
|
4
6
|
try {
|
|
5
7
|
var types = freeModule && freeModule.require && freeModule.require('util').types;
|
package/es/invert.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
import allKeys from './allKeys.js';
|
|
1
2
|
import { stubTrue } from './internals/helpers.js';
|
|
2
3
|
import { objectProtoToString } from './internals/native.js';
|
|
3
|
-
import keys from './keys.js';
|
|
4
4
|
|
|
5
5
|
function invert(object, predicate) {
|
|
6
6
|
if (predicate === void 0) { predicate = stubTrue; }
|
|
7
|
-
var _keys =
|
|
7
|
+
var _keys = allKeys(object);
|
|
8
8
|
var result = {};
|
|
9
9
|
_keys.forEach(function (key) {
|
|
10
10
|
var value = object[key];
|
package/es/isBlob.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import getTag from './internals/getTag.js';
|
|
2
|
-
import { blobTag } from './internals/native.js';
|
|
2
|
+
import { blobTag, stringUndefined } from './internals/native.js';
|
|
3
3
|
|
|
4
|
-
var blobExisted = typeof Blob !==
|
|
4
|
+
var blobExisted = typeof Blob !== stringUndefined;
|
|
5
5
|
function isBlob(value) {
|
|
6
6
|
if (blobExisted && value instanceof Blob) {
|
|
7
7
|
return true;
|
package/es/isEmpty.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import getTag from './internals/getTag.js';
|
|
2
|
-
import keys from './internals/specialKeys.js';
|
|
3
2
|
import { mapTag, setTag } from './internals/native.js';
|
|
4
3
|
import isArrayLike from './isArrayLike.js';
|
|
5
4
|
import isNil from './isNil.js';
|
|
6
5
|
import isObjectLike from './isObjectLike.js';
|
|
6
|
+
import allKeys from './allKeys.js';
|
|
7
7
|
|
|
8
8
|
function isEmpty(value) {
|
|
9
9
|
if (isNil(value)) {
|
|
@@ -14,7 +14,7 @@ function isEmpty(value) {
|
|
|
14
14
|
return !value.size;
|
|
15
15
|
}
|
|
16
16
|
if (isObjectLike(value)) {
|
|
17
|
-
return !
|
|
17
|
+
return !allKeys(value).length;
|
|
18
18
|
}
|
|
19
19
|
if (isArrayLike(value)) {
|
|
20
20
|
return !value.length;
|
package/es/isEqual.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import isEqualDeep from './internals/isEqualDeep.js';
|
|
2
|
+
import { nativeUndefined } from './internals/native.js';
|
|
2
3
|
|
|
3
4
|
function isEqual(value, other, customizer, strictCheck) {
|
|
4
5
|
if (strictCheck === void 0) { strictCheck = false; }
|
|
5
6
|
if (typeof customizer === 'function') {
|
|
6
7
|
var result = customizer(value, other);
|
|
7
|
-
if (result !==
|
|
8
|
+
if (result !== nativeUndefined) {
|
|
8
9
|
return !!result;
|
|
9
10
|
}
|
|
10
11
|
}
|
package/es/isMatch.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import allKeys from './allKeys.js';
|
|
2
2
|
import getTag from './internals/getTag.js';
|
|
3
|
-
import { objectTag } from './internals/native.js';
|
|
3
|
+
import { nativeUndefined, objectTag } from './internals/native.js';
|
|
4
4
|
import isEqualDeep from './internals/isEqualDeep.js';
|
|
5
5
|
|
|
6
6
|
function isDeepComparable(object, source) {
|
|
@@ -28,7 +28,7 @@ function baseIsMatch(object, source, customizer, strictCheck, objStack, srcStack
|
|
|
28
28
|
}
|
|
29
29
|
if (hasCustomizer) {
|
|
30
30
|
var compared = customizer(object[key], source[key], key, object, source, objStack, srcStack);
|
|
31
|
-
if (compared !==
|
|
31
|
+
if (compared !== nativeUndefined) {
|
|
32
32
|
if (!compared) {
|
|
33
33
|
return false;
|
|
34
34
|
}
|
|
@@ -46,7 +46,7 @@ function baseIsMatch(object, source, customizer, strictCheck, objStack, srcStack
|
|
|
46
46
|
var result = isEqualDeep(object, source, function (objValue, srcValue, k, obj, src) {
|
|
47
47
|
if (hasCustomizer) {
|
|
48
48
|
var compared = customizer(objValue, srcValue, k, obj, src, objStack, srcStack);
|
|
49
|
-
if (compared !==
|
|
49
|
+
if (compared !== nativeUndefined) {
|
|
50
50
|
return compared;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
@@ -60,11 +60,11 @@ function isMatch(object, source, customizer, strictCheck) {
|
|
|
60
60
|
if (strictCheck === void 0) { strictCheck = false; }
|
|
61
61
|
if (typeof customizer === 'function') {
|
|
62
62
|
var compared = customizer(object, source);
|
|
63
|
-
if (compared !==
|
|
63
|
+
if (compared !== nativeUndefined) {
|
|
64
64
|
return !!compared;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
|
-
return baseIsMatch(object, source, customizer, strictCheck,
|
|
67
|
+
return baseIsMatch(object, source, customizer, strictCheck, nativeUndefined, nativeUndefined);
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
export { isMatch as default };
|
package/es/isUndefined.js
CHANGED
package/es/keyBy.js
CHANGED
|
@@ -6,8 +6,8 @@ var keyBy = function (collection, iteratee) {
|
|
|
6
6
|
if (iteratee === void 0) { iteratee = identity; }
|
|
7
7
|
var result = {};
|
|
8
8
|
var internalIteratee = createIteratee(iteratee);
|
|
9
|
-
forEach(collection, function (item) {
|
|
10
|
-
var key = internalIteratee(item);
|
|
9
|
+
forEach(collection, function (item, index, arr) {
|
|
10
|
+
var key = internalIteratee(item, index, arr);
|
|
11
11
|
result[key] = item;
|
|
12
12
|
});
|
|
13
13
|
return result;
|
package/es/max.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { baseGt } from './internals/comparator.js';
|
|
2
2
|
import createExtremum from './internals/createExtremum.js';
|
|
3
3
|
|
|
4
|
-
function
|
|
4
|
+
var max = function (array, iteratee) {
|
|
5
5
|
return createExtremum(array, baseGt, iteratee);
|
|
6
|
-
}
|
|
6
|
+
};
|
|
7
|
+
var max$1 = max;
|
|
7
8
|
|
|
8
|
-
export { max as default };
|
|
9
|
+
export { max$1 as default };
|
package/es/merge.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import keysIn from './keysIn.js';
|
|
2
1
|
import isArray from './isArray.js';
|
|
3
2
|
import isObject from './isObject.js';
|
|
4
3
|
import isObjectLike from './isObjectLike.js';
|
|
5
4
|
import isPlainObject from './isPlainObject.js';
|
|
5
|
+
import { nativeUndefined } from './internals/native.js';
|
|
6
|
+
import allKeys from './allKeys.js';
|
|
6
7
|
|
|
7
8
|
function baseMerge(object, source, getKeys, customizer, stack) {
|
|
8
9
|
if (stack === void 0) { stack = new WeakMap(); }
|
|
@@ -19,8 +20,8 @@ function baseMerge(object, source, getKeys, customizer, stack) {
|
|
|
19
20
|
obj[key] = srcValue;
|
|
20
21
|
}
|
|
21
22
|
else {
|
|
22
|
-
var newValue = hasCustomizer ? customizer(obj[key], srcValue, key, obj, source) :
|
|
23
|
-
if (newValue !==
|
|
23
|
+
var newValue = hasCustomizer ? customizer(obj[key], srcValue, key, obj, source) : nativeUndefined;
|
|
24
|
+
if (newValue !== nativeUndefined) {
|
|
24
25
|
obj[key] = newValue;
|
|
25
26
|
}
|
|
26
27
|
else {
|
|
@@ -38,7 +39,7 @@ function baseMerge(object, source, getKeys, customizer, stack) {
|
|
|
38
39
|
if (newObjValue) {
|
|
39
40
|
obj[key] = baseMerge(newObjValue, srcValue, getKeys, customizer, stack);
|
|
40
41
|
}
|
|
41
|
-
else if (srcValue !==
|
|
42
|
+
else if (srcValue !== nativeUndefined || !(key in obj)) {
|
|
42
43
|
obj[key] = srcValue;
|
|
43
44
|
}
|
|
44
45
|
}
|
|
@@ -47,7 +48,7 @@ function baseMerge(object, source, getKeys, customizer, stack) {
|
|
|
47
48
|
return obj;
|
|
48
49
|
}
|
|
49
50
|
function merge(object, source, customizer, getKeys) {
|
|
50
|
-
if (getKeys === void 0) { getKeys =
|
|
51
|
+
if (getKeys === void 0) { getKeys = allKeys; }
|
|
51
52
|
return baseMerge(object, source, getKeys, customizer);
|
|
52
53
|
}
|
|
53
54
|
|
package/es/min.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { baseLt } from './internals/comparator.js';
|
|
2
2
|
import createExtremum from './internals/createExtremum.js';
|
|
3
3
|
|
|
4
|
-
function
|
|
4
|
+
var min = function (array, iteratee) {
|
|
5
5
|
return createExtremum(array, baseLt, iteratee);
|
|
6
|
-
}
|
|
6
|
+
};
|
|
7
|
+
var min$1 = min;
|
|
7
8
|
|
|
8
|
-
export { min as default };
|
|
9
|
+
export { min$1 as default };
|
package/es/nth.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { nativeUndefined } from './internals/native.js';
|
|
1
2
|
import isArrayLike from './isArrayLike.js';
|
|
2
3
|
|
|
3
4
|
function nth(array, n) {
|
|
4
5
|
if (n === void 0) { n = 0; }
|
|
5
6
|
if (!isArrayLike(array)) {
|
|
6
|
-
return
|
|
7
|
+
return nativeUndefined;
|
|
7
8
|
}
|
|
8
9
|
n += n < 0 ? array.length : 0;
|
|
9
10
|
return array[n];
|
package/es/orderBy.js
CHANGED
|
@@ -3,14 +3,15 @@ import createIteratee from './internals/createIteratee.js';
|
|
|
3
3
|
import { compareMultiple } from './internals/compare.js';
|
|
4
4
|
import isArray from './isArray.js';
|
|
5
5
|
import forEach from './forEach.js';
|
|
6
|
+
import { nativeUndefined } from './internals/native.js';
|
|
6
7
|
|
|
7
8
|
var orderBy = function (collection, iteratees, orders) {
|
|
8
9
|
var result = [];
|
|
9
|
-
iteratees = (isArray(iteratees) ? iteratees : iteratees !==
|
|
10
|
-
orders = (isArray(orders) ? orders : orders !==
|
|
10
|
+
iteratees = (isArray(iteratees) ? iteratees : iteratees !== nativeUndefined ? [iteratees] : [identity]);
|
|
11
|
+
orders = (isArray(orders) ? orders : orders !== nativeUndefined ? [orders] : []);
|
|
11
12
|
var index = -1;
|
|
12
|
-
forEach(collection, function (item) {
|
|
13
|
-
var criteria = iteratees.map(function (iteratee) { return createIteratee(iteratee)(item); });
|
|
13
|
+
forEach(collection, function (item, key, arr) {
|
|
14
|
+
var criteria = iteratees.map(function (iteratee) { return createIteratee(iteratee)(item, key, arr); });
|
|
14
15
|
result.push({
|
|
15
16
|
criteria: criteria,
|
|
16
17
|
index: ++index,
|
package/es/partition.js
CHANGED
|
@@ -6,8 +6,8 @@ var partition = function (collection, predicate) {
|
|
|
6
6
|
if (predicate === void 0) { predicate = identity; }
|
|
7
7
|
var result = [[], []];
|
|
8
8
|
var internalIteratee = createIteratee(predicate);
|
|
9
|
-
forEach(collection, function (item) {
|
|
10
|
-
result[internalIteratee(item) ? 0 : 1].push(item);
|
|
9
|
+
forEach(collection, function (item, index, arr) {
|
|
10
|
+
result[internalIteratee(item, index, arr) ? 0 : 1].push(item);
|
|
11
11
|
});
|
|
12
12
|
return result;
|
|
13
13
|
};
|