ut2 1.5.2 → 1.5.3
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/README.md +1 -1
- package/dist/ut2.js +96 -121
- package/dist/ut2.js.map +1 -1
- package/dist/ut2.min.js +1 -1
- package/dist/ut2.min.js.map +1 -1
- package/es/gt.js +3 -4
- package/es/gte.js +3 -4
- package/es/internals/createExtremum.js +19 -12
- package/es/internals/createIteratee.js +2 -1
- package/es/internals/getTag.js +2 -23
- package/es/internals/getTagWithBugfix.js +6 -6
- package/es/internals/helpers.js +6 -4
- package/es/internals/native.js +1 -3
- package/es/isArguments.js +3 -2
- package/es/isArrayBuffer.js +3 -2
- package/es/isBlob.js +3 -2
- package/es/isBoolean.js +3 -2
- package/es/isDate.js +3 -2
- package/es/isEmpty.js +4 -3
- package/es/isEqual.js +1 -1
- package/es/isError.js +3 -2
- package/es/isFunction.js +3 -2
- package/es/isMatch.js +3 -2
- package/es/isNumber.js +3 -2
- package/es/isObject.js +1 -1
- package/es/isObjectLike.js +1 -1
- package/es/isRegExp.js +3 -2
- package/es/isString.js +3 -2
- package/es/isSymbol.js +3 -2
- package/es/isTypedArray.js +3 -2
- package/es/isWeakSet.js +3 -2
- package/es/lowerFirst.js +3 -4
- package/es/lt.js +3 -4
- package/es/lte.js +3 -4
- package/es/max.js +2 -4
- package/es/min.js +2 -4
- package/es/nth.js +2 -6
- package/es/omit.js +1 -1
- package/es/omitBy.js +2 -1
- package/es/pickBy.js +2 -1
- package/es/toString.js +1 -1
- package/es/uniq.js +13 -5
- package/es/upperFirst.js +3 -4
- package/lib/gt.js +3 -4
- package/lib/gte.js +3 -4
- package/lib/internals/createExtremum.js +19 -12
- package/lib/internals/createIteratee.js +2 -1
- package/lib/internals/getTag.js +1 -22
- package/lib/internals/getTagWithBugfix.js +5 -5
- package/lib/internals/helpers.js +4 -2
- package/lib/internals/native.js +0 -2
- package/lib/isArguments.js +2 -1
- package/lib/isArrayBuffer.js +2 -1
- package/lib/isBlob.js +2 -1
- package/lib/isBoolean.js +2 -1
- package/lib/isDate.js +2 -1
- package/lib/isEmpty.js +4 -3
- package/lib/isEqual.js +1 -1
- package/lib/isError.js +2 -1
- package/lib/isFunction.js +2 -1
- package/lib/isMatch.js +2 -1
- package/lib/isNumber.js +2 -1
- package/lib/isObject.js +1 -1
- package/lib/isObjectLike.js +1 -1
- package/lib/isRegExp.js +2 -1
- package/lib/isString.js +2 -1
- package/lib/isSymbol.js +2 -1
- package/lib/isTypedArray.js +2 -1
- package/lib/isWeakSet.js +2 -1
- package/lib/lowerFirst.js +3 -4
- package/lib/lt.js +3 -4
- package/lib/lte.js +3 -4
- package/lib/max.js +2 -4
- package/lib/min.js +2 -4
- package/lib/nth.js +2 -6
- package/lib/omit.js +1 -1
- package/lib/omitBy.js +2 -1
- package/lib/pickBy.js +2 -1
- package/lib/toString.js +1 -1
- package/lib/uniq.js +13 -5
- package/lib/upperFirst.js +3 -4
- package/package.json +7 -2
- package/types/gt.d.ts +2 -2
- package/types/gte.d.ts +2 -2
- package/types/identity.d.ts +1 -1
- package/types/internals/createExtremum.d.ts +1 -1
- package/types/internals/createIteratee.d.ts +2 -1
- package/types/internals/decimalAdjust.d.ts +1 -1
- package/types/internals/getTag.d.ts +1 -1
- package/types/internals/helpers.d.ts +1 -0
- package/types/internals/native.d.ts +0 -2
- package/types/lowerFirst.d.ts +2 -2
- package/types/lt.d.ts +2 -2
- package/types/lte.d.ts +2 -2
- package/types/upperFirst.d.ts +2 -2
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var identity = require('../identity.js');
|
|
3
4
|
var isSymbol = require('../isSymbol.js');
|
|
4
5
|
|
|
5
6
|
function createIteratee(iteratee) {
|
|
@@ -9,7 +10,7 @@ function createIteratee(iteratee) {
|
|
|
9
10
|
if (typeof iteratee === 'string' || typeof iteratee === 'number' || isSymbol(iteratee)) {
|
|
10
11
|
return function (value) { return value[iteratee]; };
|
|
11
12
|
}
|
|
12
|
-
return
|
|
13
|
+
return identity;
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
module.exports = createIteratee;
|
package/lib/internals/getTag.js
CHANGED
|
@@ -2,29 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
var native = require('./native.js');
|
|
4
4
|
|
|
5
|
-
function getRawTag(value) {
|
|
6
|
-
var isOwn = native.objectProtoHasOwnProperty.call(value, native.symbolToStringTag);
|
|
7
|
-
var tag = value[native.symbolToStringTag];
|
|
8
|
-
var unmasked = false;
|
|
9
|
-
try {
|
|
10
|
-
value[native.symbolToStringTag] = undefined;
|
|
11
|
-
unmasked = true;
|
|
12
|
-
}
|
|
13
|
-
catch (e) {
|
|
14
|
-
}
|
|
15
|
-
var result = native.objectProtoToString.call(value);
|
|
16
|
-
if (unmasked) {
|
|
17
|
-
if (isOwn) {
|
|
18
|
-
value[native.symbolToStringTag] = tag;
|
|
19
|
-
}
|
|
20
|
-
else {
|
|
21
|
-
delete value[native.symbolToStringTag];
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return result;
|
|
25
|
-
}
|
|
26
5
|
function getTag(value) {
|
|
27
|
-
return native.
|
|
6
|
+
return native.objectProtoToString.call(value);
|
|
28
7
|
}
|
|
29
8
|
|
|
30
9
|
module.exports = getTag;
|
|
@@ -15,11 +15,11 @@ var promiseCtorString = helpers.toSource(Promise);
|
|
|
15
15
|
var setCtorString = helpers.toSource(Set);
|
|
16
16
|
var weakMapCtorString = helpers.toSource(WeakMap);
|
|
17
17
|
var getTagWithBugfix = getTag;
|
|
18
|
-
if ((dataViewExisted &&
|
|
19
|
-
(mapExisted &&
|
|
20
|
-
(promiseExisted &&
|
|
21
|
-
(setExisted &&
|
|
22
|
-
(weakMapExisted &&
|
|
18
|
+
if ((dataViewExisted && getTag(new DataView(new ArrayBuffer(1))) !== native.dataViewTag) ||
|
|
19
|
+
(mapExisted && getTag(new Map()) !== native.mapTag) ||
|
|
20
|
+
(promiseExisted && getTag(Promise.resolve()) !== native.promiseTag) ||
|
|
21
|
+
(setExisted && getTag(new Set()) !== native.setTag) ||
|
|
22
|
+
(weakMapExisted && getTag(new WeakMap()) !== native.weakMapTag)) {
|
|
23
23
|
getTagWithBugfix = function (value) {
|
|
24
24
|
var result = getTag(value);
|
|
25
25
|
var Ctor = result === native.objectTag ? value.constructor : undefined;
|
package/lib/internals/helpers.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./getTag.js');
|
|
3
4
|
var native = require('./native.js');
|
|
4
5
|
|
|
5
|
-
exports.VERSION = "1.5.
|
|
6
|
-
exports.supportedArgumentsType =
|
|
6
|
+
exports.VERSION = "1.5.3";
|
|
7
|
+
exports.supportedArgumentsType = getTag((function () { return arguments; })()) === native.argumentsTag;
|
|
7
8
|
exports.FUNC_ERROR_TEXT = 'Expected a function';
|
|
8
9
|
function toSource(func) {
|
|
9
10
|
if (func !== null) {
|
|
@@ -20,5 +21,6 @@ function toSource(func) {
|
|
|
20
21
|
}
|
|
21
22
|
return '';
|
|
22
23
|
}
|
|
24
|
+
exports.stubFlase = function () { return false; };
|
|
23
25
|
|
|
24
26
|
exports.toSource = toSource;
|
package/lib/internals/native.js
CHANGED
|
@@ -11,10 +11,8 @@ exports.functionProto = Function.prototype;
|
|
|
11
11
|
exports.functionProtoToString = exports.functionProto.toString;
|
|
12
12
|
var symbolExisted = typeof Symbol !== 'undefined';
|
|
13
13
|
exports.symbolProto = symbolExisted ? Symbol.prototype : undefined;
|
|
14
|
-
exports.symbolToStringTag = symbolExisted ? Symbol.toStringTag : undefined;
|
|
15
14
|
exports.arrayProto = Array.prototype;
|
|
16
15
|
exports.arrayProtoSlice = exports.arrayProto.slice;
|
|
17
|
-
exports.arrayProtoAt = exports.arrayProto.at;
|
|
18
16
|
exports.mathMin = Math.min;
|
|
19
17
|
exports.mathMax = Math.max;
|
|
20
18
|
exports.mathRandom = Math.random;
|
package/lib/isArguments.js
CHANGED
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
var native = require('./internals/native.js');
|
|
4
4
|
var helpers = require('./internals/helpers.js');
|
|
5
5
|
var isObjectLike = require('./isObjectLike.js');
|
|
6
|
+
var getTag = require('./internals/getTag.js');
|
|
6
7
|
|
|
7
8
|
function isArguments(value) {
|
|
8
9
|
if (helpers.supportedArgumentsType) {
|
|
9
|
-
return
|
|
10
|
+
return getTag(value) === native.argumentsTag;
|
|
10
11
|
}
|
|
11
12
|
return isObjectLike(value) && native.objectProtoHasOwnProperty.call(value, 'callee') && !native.objectProtoPropertyIsEnumerable.call(value, 'callee');
|
|
12
13
|
}
|
package/lib/isArrayBuffer.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
var nodeUtil = require('./internals/nodeUtil.js');
|
|
5
6
|
|
|
6
7
|
function isArrayBuffer(value) {
|
|
7
|
-
return nodeUtil.nodeIsArrayBuffer ? nodeUtil.nodeIsArrayBuffer(value) :
|
|
8
|
+
return nodeUtil.nodeIsArrayBuffer ? nodeUtil.nodeIsArrayBuffer(value) : getTag(value) === native.arrayBufferTag;
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
module.exports = isArrayBuffer;
|
package/lib/isBlob.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
var blobExisted = typeof Blob !== 'undefined';
|
|
@@ -7,7 +8,7 @@ function isBlob(value) {
|
|
|
7
8
|
if (blobExisted && value instanceof Blob) {
|
|
8
9
|
return true;
|
|
9
10
|
}
|
|
10
|
-
return
|
|
11
|
+
return getTag(value) === native.blobTag;
|
|
11
12
|
}
|
|
12
13
|
|
|
13
14
|
module.exports = isBlob;
|
package/lib/isBoolean.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
function isBoolean(value) {
|
|
6
|
-
return value === true || value === false ||
|
|
7
|
+
return value === true || value === false || getTag(value) === native.booleanTag;
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
module.exports = isBoolean;
|
package/lib/isDate.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
var nodeUtil = require('./internals/nodeUtil.js');
|
|
5
6
|
|
|
6
7
|
function isDate(value) {
|
|
7
|
-
return nodeUtil.nodeIsDate ? nodeUtil.nodeIsDate(value) :
|
|
8
|
+
return nodeUtil.nodeIsDate ? nodeUtil.nodeIsDate(value) : getTag(value) === native.dateTag;
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
module.exports = isDate;
|
package/lib/isEmpty.js
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var keys = require('./internals/keys.js');
|
|
5
|
+
var native = require('./internals/native.js');
|
|
4
6
|
var isArrayLike = require('./isArrayLike.js');
|
|
5
|
-
var isMap = require('./isMap.js');
|
|
6
7
|
var isObjectLike = require('./isObjectLike.js');
|
|
7
|
-
var isSet = require('./isSet.js');
|
|
8
8
|
|
|
9
9
|
function isEmpty(value) {
|
|
10
10
|
if (value == null) {
|
|
11
11
|
return true;
|
|
12
12
|
}
|
|
13
|
-
|
|
13
|
+
var tag = getTag(value);
|
|
14
|
+
if (tag === native.mapTag || tag === native.setTag) {
|
|
14
15
|
return !value.size;
|
|
15
16
|
}
|
|
16
17
|
if (isObjectLike(value)) {
|
package/lib/isEqual.js
CHANGED
|
@@ -64,7 +64,7 @@ function isEqualDeep(value, other, customizer, strictCheck, valueStack, otherSta
|
|
|
64
64
|
case native.symbolTag:
|
|
65
65
|
return symbolValueOf ? symbolValueOf.call(value) === symbolValueOf.call(other) : false;
|
|
66
66
|
case native.errorTag:
|
|
67
|
-
return value.name
|
|
67
|
+
return value.name === other.name && value.message === other.message;
|
|
68
68
|
case native.dataViewTag:
|
|
69
69
|
case native.arrayBufferTag:
|
|
70
70
|
if (value.byteLength !== other.byteLength || (value.byteOffset && value.byteOffset !== other.byteOffset)) {
|
package/lib/isError.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
var isObjectLike = require('./isObjectLike.js');
|
|
5
6
|
|
|
@@ -10,7 +11,7 @@ function isError(value) {
|
|
|
10
11
|
if (value instanceof Error) {
|
|
11
12
|
return true;
|
|
12
13
|
}
|
|
13
|
-
var tag =
|
|
14
|
+
var tag = getTag(value);
|
|
14
15
|
return tag === native.errorTag || tag === native.domExceptionTag;
|
|
15
16
|
}
|
|
16
17
|
|
package/lib/isFunction.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
function isFunction(value) {
|
|
6
7
|
if (typeof value === 'function') {
|
|
7
8
|
return true;
|
|
8
9
|
}
|
|
9
|
-
var tag =
|
|
10
|
+
var tag = getTag(value);
|
|
10
11
|
return native.functionTags.some(function (item) { return item === tag; });
|
|
11
12
|
}
|
|
12
13
|
|
package/lib/isMatch.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var allKeys = require('./allKeys.js');
|
|
4
|
+
var getTag = require('./internals/getTag.js');
|
|
4
5
|
var native = require('./internals/native.js');
|
|
5
6
|
var isEqual = require('./isEqual.js');
|
|
6
7
|
|
|
7
8
|
function isDeepComparable(object, source) {
|
|
8
|
-
return
|
|
9
|
+
return getTag(object) === native.objectTag && getTag(source) === native.objectTag;
|
|
9
10
|
}
|
|
10
11
|
function baseIsMatch(object, source, customizer, strictCheck, objStack, srcStack, executedCustomizer) {
|
|
11
12
|
if (executedCustomizer === void 0) { executedCustomizer = false; }
|
package/lib/isNumber.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
function isNumber(value) {
|
|
6
|
-
return typeof value === 'number' ||
|
|
7
|
+
return typeof value === 'number' || getTag(value) === native.numberTag;
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
module.exports = isNumber;
|
package/lib/isObject.js
CHANGED
package/lib/isObjectLike.js
CHANGED
package/lib/isRegExp.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
var nodeUtil = require('./internals/nodeUtil.js');
|
|
5
6
|
|
|
6
7
|
function isRegExp(value) {
|
|
7
|
-
return nodeUtil.nodeIsRegExp ? nodeUtil.nodeIsRegExp(value) :
|
|
8
|
+
return nodeUtil.nodeIsRegExp ? nodeUtil.nodeIsRegExp(value) : getTag(value) === native.regExpTag;
|
|
8
9
|
}
|
|
9
10
|
|
|
10
11
|
module.exports = isRegExp;
|
package/lib/isString.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
function isString(value) {
|
|
6
|
-
return typeof value === 'string' ||
|
|
7
|
+
return typeof value === 'string' || getTag(value) === native.stringTag;
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
module.exports = isString;
|
package/lib/isSymbol.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
function isSymbol(value) {
|
|
6
|
-
return typeof value === 'symbol' ||
|
|
7
|
+
return typeof value === 'symbol' || getTag(value) === native.symbolTag;
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
module.exports = isSymbol;
|
package/lib/isTypedArray.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
var nodeUtil = require('./internals/nodeUtil.js');
|
|
5
6
|
var isLength = require('./isLength.js');
|
|
@@ -10,7 +11,7 @@ function isTypedArray(value) {
|
|
|
10
11
|
return nodeUtil.nodeIsTypedArray(value);
|
|
11
12
|
}
|
|
12
13
|
if (isObjectLike(value) && isLength(value.length)) {
|
|
13
|
-
var tag_1 =
|
|
14
|
+
var tag_1 = getTag(value);
|
|
14
15
|
return native.typedArrayTags.some(function (item) { return item === tag_1; });
|
|
15
16
|
}
|
|
16
17
|
return false;
|
package/lib/isWeakSet.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var getTag = require('./internals/getTag.js');
|
|
3
4
|
var native = require('./internals/native.js');
|
|
4
5
|
|
|
5
6
|
function isWeakSet(value) {
|
|
6
|
-
return
|
|
7
|
+
return getTag(value) === native.weakSetTag;
|
|
7
8
|
}
|
|
8
9
|
|
|
9
10
|
module.exports = isWeakSet;
|
package/lib/lowerFirst.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var createCaseFirst = require('./internals/createCaseFirst.js');
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
5
|
+
var lowerFirst = createCaseFirst('toLowerCase');
|
|
6
|
+
var lowerFirst$1 = lowerFirst;
|
|
8
7
|
|
|
9
|
-
module.exports = lowerFirst;
|
|
8
|
+
module.exports = lowerFirst$1;
|
package/lib/lt.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var comparator = require('./internals/comparator.js');
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
5
|
+
var lt = comparator.createOperation(comparator.baseLt);
|
|
6
|
+
var lt$1 = lt;
|
|
8
7
|
|
|
9
|
-
module.exports = lt;
|
|
8
|
+
module.exports = lt$1;
|
package/lib/lte.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var comparator = require('./internals/comparator.js');
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
5
|
+
var lte = comparator.createOperation(comparator.baseLte);
|
|
6
|
+
var lte$1 = lte;
|
|
8
7
|
|
|
9
|
-
module.exports = lte;
|
|
8
|
+
module.exports = lte$1;
|
package/lib/max.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var identity = require('./identity.js');
|
|
3
|
+
var comparator = require('./internals/comparator.js');
|
|
5
4
|
var createExtremum = require('./internals/createExtremum.js');
|
|
6
5
|
|
|
7
6
|
function max(array, iteratee) {
|
|
8
|
-
|
|
9
|
-
return createExtremum(array, iteratee, gt);
|
|
7
|
+
return createExtremum(array, comparator.baseGt, iteratee);
|
|
10
8
|
}
|
|
11
9
|
|
|
12
10
|
module.exports = max;
|
package/lib/min.js
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var comparator = require('./internals/comparator.js');
|
|
4
4
|
var createExtremum = require('./internals/createExtremum.js');
|
|
5
|
-
var lt = require('./lt.js');
|
|
6
5
|
|
|
7
6
|
function min(array, iteratee) {
|
|
8
|
-
|
|
9
|
-
return createExtremum(array, iteratee, lt);
|
|
7
|
+
return createExtremum(array, comparator.baseLt, iteratee);
|
|
10
8
|
}
|
|
11
9
|
|
|
12
10
|
module.exports = min;
|
package/lib/nth.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var native = require('./internals/native.js');
|
|
4
3
|
var isArrayLike = require('./isArrayLike.js');
|
|
5
4
|
|
|
6
5
|
function nth(array, n) {
|
|
@@ -8,11 +7,8 @@ function nth(array, n) {
|
|
|
8
7
|
if (!isArrayLike(array)) {
|
|
9
8
|
return undefined;
|
|
10
9
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
var index = n < 0 ? n + array.length : n;
|
|
15
|
-
return array[index];
|
|
10
|
+
n += n < 0 ? array.length : 0;
|
|
11
|
+
return array[n];
|
|
16
12
|
}
|
|
17
13
|
|
|
18
14
|
module.exports = nth;
|
package/lib/omit.js
CHANGED
package/lib/omitBy.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var helpers = require('./internals/helpers.js');
|
|
3
4
|
var negate = require('./negate.js');
|
|
4
5
|
var pickBy = require('./pickBy.js');
|
|
5
6
|
|
|
6
7
|
function omitBy(object, predicate) {
|
|
7
|
-
if (predicate === void 0) { predicate =
|
|
8
|
+
if (predicate === void 0) { predicate = helpers.stubFlase; }
|
|
8
9
|
return pickBy(object, negate(predicate));
|
|
9
10
|
}
|
|
10
11
|
|
package/lib/pickBy.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var allKeysIn = require('./allKeysIn.js');
|
|
4
|
+
var helpers = require('./internals/helpers.js');
|
|
4
5
|
|
|
5
6
|
function pickBy(object, predicate) {
|
|
6
|
-
if (predicate === void 0) { predicate =
|
|
7
|
+
if (predicate === void 0) { predicate = helpers.stubFlase; }
|
|
7
8
|
var result = {};
|
|
8
9
|
if (object === null) {
|
|
9
10
|
return result;
|
package/lib/toString.js
CHANGED
|
@@ -16,7 +16,7 @@ function baseToString(value) {
|
|
|
16
16
|
return symbolToString ? symbolToString.call(value) : '';
|
|
17
17
|
}
|
|
18
18
|
var result = '' + value;
|
|
19
|
-
return result
|
|
19
|
+
return result === '0' && 1 / value === -Infinity ? '-0' : result;
|
|
20
20
|
}
|
|
21
21
|
function toString(value) {
|
|
22
22
|
return value == null ? '' : baseToString(value);
|
package/lib/uniq.js
CHANGED
|
@@ -3,17 +3,25 @@
|
|
|
3
3
|
var eq = require('./eq.js');
|
|
4
4
|
var createIteratee = require('./internals/createIteratee.js');
|
|
5
5
|
var isArray = require('./isArray.js');
|
|
6
|
+
var isUndefined = require('./isUndefined.js');
|
|
6
7
|
|
|
7
8
|
function uniq(array, iteratee, strickCheck) {
|
|
8
9
|
if (strickCheck === void 0) { strickCheck = false; }
|
|
9
10
|
if (!isArray(array)) {
|
|
10
11
|
return [];
|
|
11
12
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
13
|
+
if (isUndefined(iteratee)) {
|
|
14
|
+
return array.filter(function (value, index, arr) {
|
|
15
|
+
return arr.findIndex(function (item) { return eq(item, value, strickCheck); }) === index;
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
var internalIteratee_1 = createIteratee(iteratee);
|
|
20
|
+
return array.filter(function (value, index, arr) {
|
|
21
|
+
var current = internalIteratee_1(value);
|
|
22
|
+
return arr.findIndex(function (item) { return eq(internalIteratee_1(item), current, strickCheck); }) === index;
|
|
23
|
+
});
|
|
24
|
+
}
|
|
17
25
|
}
|
|
18
26
|
|
|
19
27
|
module.exports = uniq;
|
package/lib/upperFirst.js
CHANGED
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var createCaseFirst = require('./internals/createCaseFirst.js');
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
5
|
+
var upperFirst = createCaseFirst('toUpperCase');
|
|
6
|
+
var upperFirst$1 = upperFirst;
|
|
8
7
|
|
|
9
|
-
module.exports = upperFirst;
|
|
8
|
+
module.exports = upperFirst$1;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ut2",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.3",
|
|
4
4
|
"author": "caijf",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
"test": "jest",
|
|
13
13
|
"test:coverage": "jest --coverage",
|
|
14
14
|
"test:coverage:local": "cross-env COVERAGE_LOCAL=1 jest --coverage --detectOpenHandles && open ./coverage/lcov-report/index.html",
|
|
15
|
+
"benchmark": "node benchmark/node.js",
|
|
15
16
|
"build": "npm run build:module && npm run build:umd && npm run build:types",
|
|
16
17
|
"build:module": "rm -rf es && rm -rf lib && rollup -c rollup.module.config.mjs",
|
|
17
18
|
"build:umd": "rm -rf dist && rollup -c rollup.umd.config.mjs",
|
|
@@ -71,20 +72,24 @@
|
|
|
71
72
|
"@types/node": "^20.6.2",
|
|
72
73
|
"@typescript-eslint/eslint-plugin": "^5.62.0",
|
|
73
74
|
"@typescript-eslint/parser": "^5.62.0",
|
|
75
|
+
"benchmark": "^2.1.4",
|
|
74
76
|
"cross-env": "^7.0.3",
|
|
75
77
|
"cz-conventional-changelog": "^3.3.0",
|
|
78
|
+
"dayjs": "^1.11.10",
|
|
76
79
|
"docdash": "^2.0.2",
|
|
77
80
|
"eslint": "^8.48.0",
|
|
81
|
+
"husky": "^8.0.0",
|
|
78
82
|
"jest": "^29.6.4",
|
|
79
83
|
"jest-environment-jsdom": "^29.6.4",
|
|
80
84
|
"jsdoc": "^4.0.2",
|
|
81
85
|
"lint-staged": "^13.3.0",
|
|
86
|
+
"lodash": "^4.17.21",
|
|
82
87
|
"prettier": "^2.8.8",
|
|
83
88
|
"rollup": "^3.28.1",
|
|
84
89
|
"ts-jest": "^29.1.1",
|
|
85
90
|
"tslib": "^2.6.2",
|
|
86
91
|
"typescript": "^5.2.2",
|
|
87
|
-
"
|
|
92
|
+
"underscore": "^1.13.6"
|
|
88
93
|
},
|
|
89
94
|
"engines": {
|
|
90
95
|
"node": ">=10"
|
package/types/gt.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 检查 `value` 是否大于 `other` 。
|
|
3
3
|
*
|
|
4
|
-
* @
|
|
4
|
+
* @function
|
|
5
5
|
* @alias module:Util.gt
|
|
6
6
|
* @since 1.0.0
|
|
7
7
|
* @param {*} value 要比较的值。
|
|
@@ -16,5 +16,5 @@
|
|
|
16
16
|
* gt(3, 1); // true
|
|
17
17
|
*
|
|
18
18
|
*/
|
|
19
|
-
declare
|
|
19
|
+
declare const gt: (value: any, other: any) => boolean;
|
|
20
20
|
export default gt;
|
package/types/gte.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* 检查 `value` 是否大于或等于 `other` 。
|
|
3
3
|
*
|
|
4
|
-
* @
|
|
4
|
+
* @function
|
|
5
5
|
* @alias module:Util.gte
|
|
6
6
|
* @since 1.0.0
|
|
7
7
|
* @param {*} value 要比较的值。
|
|
@@ -16,5 +16,5 @@
|
|
|
16
16
|
* gte(3, 1); // true
|
|
17
17
|
*
|
|
18
18
|
*/
|
|
19
|
-
declare
|
|
19
|
+
declare const gte: (value: any, other: any) => boolean;
|
|
20
20
|
export default gte;
|
package/types/identity.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare function createExtremum<T, F extends (item: T) => any, K extends keyof T>(array: T[],
|
|
1
|
+
declare function createExtremum<T, F extends (item: T) => any, K extends keyof T>(array: T[], comparator: (value: any, other: any) => boolean, iteratee?: F | K): T | undefined;
|
|
2
2
|
export default createExtremum;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import identity from '../identity';
|
|
1
2
|
/**
|
|
2
3
|
* 创建迭代函数。
|
|
3
4
|
*
|
|
@@ -5,5 +6,5 @@
|
|
|
5
6
|
* @param {Function} iteratee 迭代函数或对象属性。
|
|
6
7
|
* @returns {Function} 如果参数为函数,返回该函数,否则包装一个返回对象属性的函数。
|
|
7
8
|
*/
|
|
8
|
-
declare function createIteratee<T, F extends (value: T) => any, K extends keyof T>(iteratee?: F | K):
|
|
9
|
+
declare function createIteratee<T, F extends (value: T) => any, K extends keyof T>(iteratee?: F | K): typeof identity | F;
|
|
9
10
|
export default createIteratee;
|