ut2 1.5.4 → 1.5.6
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 +13 -13
- package/dist/ut2.js.map +1 -1
- package/dist/ut2.min.js +1 -1
- package/dist/ut2.min.js.map +1 -1
- package/es/conformsTo.js +2 -1
- package/es/internals/helpers.js +1 -1
- package/es/isEmpty.js +2 -1
- package/es/merge.js +5 -4
- package/es/pickBy.js +2 -1
- package/es/toString.js +2 -1
- package/lib/conformsTo.js +2 -1
- package/lib/internals/helpers.js +1 -1
- package/lib/isEmpty.js +2 -1
- package/lib/merge.js +5 -4
- package/lib/pickBy.js +2 -1
- package/lib/toString.js +2 -1
- package/package.json +1 -1
- package/types/internals/isEqualDeep.d.ts +3 -5
- package/types/lowerFirst.d.ts +4 -0
- package/types/upperFirst.d.ts +4 -0
package/es/merge.js
CHANGED
|
@@ -2,6 +2,7 @@ import allKeysIn from './allKeysIn.js';
|
|
|
2
2
|
import isArray from './isArray.js';
|
|
3
3
|
import isObject from './isObject.js';
|
|
4
4
|
import isObjectLike from './isObjectLike.js';
|
|
5
|
+
import isPlainObject from './isPlainObject.js';
|
|
5
6
|
|
|
6
7
|
function baseMerge(object, source, customizer, storage) {
|
|
7
8
|
if (storage === void 0) { storage = new WeakMap(); }
|
|
@@ -16,17 +17,17 @@ function baseMerge(object, source, customizer, storage) {
|
|
|
16
17
|
if (newValue === undefined) {
|
|
17
18
|
newValue = srcValue;
|
|
18
19
|
}
|
|
19
|
-
if (isObjectLike(newValue) &&
|
|
20
|
+
if (isObjectLike(newValue) && !storage.has(newValue)) {
|
|
20
21
|
storage.set(newValue, true);
|
|
21
22
|
var objValue = obj[key];
|
|
22
23
|
var newObjValue = void 0;
|
|
23
24
|
if (isArray(newValue)) {
|
|
24
25
|
newObjValue = isArray(objValue) ? objValue : [];
|
|
25
26
|
}
|
|
26
|
-
else {
|
|
27
|
-
newObjValue =
|
|
27
|
+
else if (isPlainObject(newValue)) {
|
|
28
|
+
newObjValue = isPlainObject(objValue) ? objValue : {};
|
|
28
29
|
}
|
|
29
|
-
obj[key] = baseMerge(newObjValue, newValue, customizer, storage);
|
|
30
|
+
obj[key] = newObjValue ? baseMerge(newObjValue, newValue, customizer, storage) : newValue;
|
|
30
31
|
}
|
|
31
32
|
else {
|
|
32
33
|
if (newValue !== undefined || (newValue === undefined && !(key in obj))) {
|
package/es/pickBy.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import allKeysIn from './allKeysIn.js';
|
|
2
2
|
import { stubFlase } from './internals/helpers.js';
|
|
3
|
+
import isNil from './isNil.js';
|
|
3
4
|
|
|
4
5
|
function pickBy(object, predicate) {
|
|
5
6
|
if (predicate === void 0) { predicate = stubFlase; }
|
|
6
7
|
var result = {};
|
|
7
|
-
if (object
|
|
8
|
+
if (isNil(object)) {
|
|
8
9
|
return result;
|
|
9
10
|
}
|
|
10
11
|
var keys = allKeysIn(object);
|
package/es/toString.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { symbolProto } from './internals/native.js';
|
|
2
2
|
import isArray from './isArray.js';
|
|
3
|
+
import isNil from './isNil.js';
|
|
3
4
|
import isSymbol from './isSymbol.js';
|
|
4
5
|
|
|
5
6
|
var symbolToString = symbolProto ? symbolProto.toString : undefined;
|
|
@@ -17,7 +18,7 @@ function baseToString(value) {
|
|
|
17
18
|
return result === '0' && 1 / value === -Infinity ? '-0' : result;
|
|
18
19
|
}
|
|
19
20
|
function toString(value) {
|
|
20
|
-
return value
|
|
21
|
+
return isNil(value) ? '' : baseToString(value);
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
export { toString as default };
|
package/lib/conformsTo.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var allKeys = require('./allKeys.js');
|
|
4
|
+
var isNil = require('./isNil.js');
|
|
4
5
|
|
|
5
6
|
function conformsTo(object, source) {
|
|
6
7
|
var props = allKeys(source);
|
|
7
8
|
var length = props.length;
|
|
8
|
-
if (object
|
|
9
|
+
if (isNil(object)) {
|
|
9
10
|
return !length;
|
|
10
11
|
}
|
|
11
12
|
if (length === 0) {
|
package/lib/internals/helpers.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var getTag = require('./getTag.js');
|
|
4
4
|
var native = require('./native.js');
|
|
5
5
|
|
|
6
|
-
exports.VERSION = "1.5.
|
|
6
|
+
exports.VERSION = "1.5.6";
|
|
7
7
|
exports.supportedArgumentsType = getTag((function () { return arguments; })()) === native.argumentsTag;
|
|
8
8
|
exports.FUNC_ERROR_TEXT = 'Expected a function';
|
|
9
9
|
function toSource(func) {
|
package/lib/isEmpty.js
CHANGED
|
@@ -4,10 +4,11 @@ var getTag = require('./internals/getTag.js');
|
|
|
4
4
|
var keys = require('./internals/keys.js');
|
|
5
5
|
var native = require('./internals/native.js');
|
|
6
6
|
var isArrayLike = require('./isArrayLike.js');
|
|
7
|
+
var isNil = require('./isNil.js');
|
|
7
8
|
var isObjectLike = require('./isObjectLike.js');
|
|
8
9
|
|
|
9
10
|
function isEmpty(value) {
|
|
10
|
-
if (value
|
|
11
|
+
if (isNil(value)) {
|
|
11
12
|
return true;
|
|
12
13
|
}
|
|
13
14
|
var tag = getTag(value);
|
package/lib/merge.js
CHANGED
|
@@ -4,6 +4,7 @@ var allKeysIn = require('./allKeysIn.js');
|
|
|
4
4
|
var isArray = require('./isArray.js');
|
|
5
5
|
var isObject = require('./isObject.js');
|
|
6
6
|
var isObjectLike = require('./isObjectLike.js');
|
|
7
|
+
var isPlainObject = require('./isPlainObject.js');
|
|
7
8
|
|
|
8
9
|
function baseMerge(object, source, customizer, storage) {
|
|
9
10
|
if (storage === void 0) { storage = new WeakMap(); }
|
|
@@ -18,17 +19,17 @@ function baseMerge(object, source, customizer, storage) {
|
|
|
18
19
|
if (newValue === undefined) {
|
|
19
20
|
newValue = srcValue;
|
|
20
21
|
}
|
|
21
|
-
if (isObjectLike(newValue) &&
|
|
22
|
+
if (isObjectLike(newValue) && !storage.has(newValue)) {
|
|
22
23
|
storage.set(newValue, true);
|
|
23
24
|
var objValue = obj[key];
|
|
24
25
|
var newObjValue = void 0;
|
|
25
26
|
if (isArray(newValue)) {
|
|
26
27
|
newObjValue = isArray(objValue) ? objValue : [];
|
|
27
28
|
}
|
|
28
|
-
else {
|
|
29
|
-
newObjValue =
|
|
29
|
+
else if (isPlainObject(newValue)) {
|
|
30
|
+
newObjValue = isPlainObject(objValue) ? objValue : {};
|
|
30
31
|
}
|
|
31
|
-
obj[key] = baseMerge(newObjValue, newValue, customizer, storage);
|
|
32
|
+
obj[key] = newObjValue ? baseMerge(newObjValue, newValue, customizer, storage) : newValue;
|
|
32
33
|
}
|
|
33
34
|
else {
|
|
34
35
|
if (newValue !== undefined || (newValue === undefined && !(key in obj))) {
|
package/lib/pickBy.js
CHANGED
|
@@ -2,11 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
var allKeysIn = require('./allKeysIn.js');
|
|
4
4
|
var helpers = require('./internals/helpers.js');
|
|
5
|
+
var isNil = require('./isNil.js');
|
|
5
6
|
|
|
6
7
|
function pickBy(object, predicate) {
|
|
7
8
|
if (predicate === void 0) { predicate = helpers.stubFlase; }
|
|
8
9
|
var result = {};
|
|
9
|
-
if (object
|
|
10
|
+
if (isNil(object)) {
|
|
10
11
|
return result;
|
|
11
12
|
}
|
|
12
13
|
var keys = allKeysIn(object);
|
package/lib/toString.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var native = require('./internals/native.js');
|
|
4
4
|
var isArray = require('./isArray.js');
|
|
5
|
+
var isNil = require('./isNil.js');
|
|
5
6
|
var isSymbol = require('./isSymbol.js');
|
|
6
7
|
|
|
7
8
|
var symbolToString = native.symbolProto ? native.symbolProto.toString : undefined;
|
|
@@ -19,7 +20,7 @@ function baseToString(value) {
|
|
|
19
20
|
return result === '0' && 1 / value === -Infinity ? '-0' : result;
|
|
20
21
|
}
|
|
21
22
|
function toString(value) {
|
|
22
|
-
return value
|
|
23
|
+
return isNil(value) ? '' : baseToString(value);
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
module.exports = toString;
|
package/package.json
CHANGED
|
@@ -11,15 +11,13 @@ type Customizer = (objValue: any, othValue: any, key?: number | string | symbol,
|
|
|
11
11
|
* 2. `typeof` 不同类型,如 `1` `Object(1)`
|
|
12
12
|
* 3. 无效日期对象,如 `new Date('')` `new Date('abc')`
|
|
13
13
|
*
|
|
14
|
-
* @
|
|
15
|
-
* @alias module:Language.isEqual
|
|
16
|
-
* @since 1.3.0
|
|
14
|
+
* @private
|
|
17
15
|
* @param {*} value 要比较的值。
|
|
18
16
|
* @param {*} other 另一个要比较的值。
|
|
19
17
|
* @param {Function} [customizer] 自定义比较。
|
|
20
18
|
* @param {boolean} [strictCheck=false] 严格比较,默认 `false` 。
|
|
21
|
-
* @param {
|
|
22
|
-
* @param {
|
|
19
|
+
* @param {Array} [valueStack] 值的堆栈。
|
|
20
|
+
* @param {Array} [otherStack] 另一个值的堆栈。
|
|
23
21
|
* @returns {boolean} 如果两个值相等,返回 `true` ,否则返回 `false` 。
|
|
24
22
|
*/
|
|
25
23
|
declare function isEqualDeep(value: any, other: any, customizer?: Customizer, strictCheck?: boolean, valueStack?: any[], otherStack?: any[]): boolean;
|
package/types/lowerFirst.d.ts
CHANGED
package/types/upperFirst.d.ts
CHANGED