ut2 1.14.0 → 1.15.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/README.md +0 -1
- package/dist/ut2.js +15 -1
- package/dist/ut2.js.map +1 -1
- package/dist/ut2.min.js +1 -1
- package/dist/ut2.min.js.map +1 -1
- package/es/index.js +1 -0
- package/es/internals/helpers.js +1 -1
- package/es/mergeObject.js +17 -0
- package/lib/index.js +2 -0
- package/lib/internals/helpers.js +1 -1
- package/lib/mergeObject.js +19 -0
- package/package.json +1 -1
- package/types/fromPairs.d.ts +2 -0
- package/types/index.d.ts +1 -0
- package/types/mergeObject.d.ts +41 -0
package/es/index.js
CHANGED
|
@@ -90,6 +90,7 @@ export { default as invert } from './invert.js';
|
|
|
90
90
|
export { default as keys } from './keys.js';
|
|
91
91
|
export { default as keysIn } from './keysIn.js';
|
|
92
92
|
export { default as merge } from './merge.js';
|
|
93
|
+
export { default as mergeObject } from './mergeObject.js';
|
|
93
94
|
export { default as omit } from './omit.js';
|
|
94
95
|
export { default as omitBy } from './omitBy.js';
|
|
95
96
|
export { default as pick } from './pick.js';
|
package/es/internals/helpers.js
CHANGED
|
@@ -2,7 +2,7 @@ import isObjectLike from '../isObjectLike.js';
|
|
|
2
2
|
import getTag from './getTag.js';
|
|
3
3
|
import { argumentsTag, stringUndefined, functionProtoToString } from './native.js';
|
|
4
4
|
|
|
5
|
-
var VERSION = "1.
|
|
5
|
+
var VERSION = "1.15.0";
|
|
6
6
|
var isBrowser = typeof window !== stringUndefined && isObjectLike(window) && typeof document !== stringUndefined && isObjectLike(document) && window.document === document;
|
|
7
7
|
var supportedArgumentsType = getTag((function () { return arguments; })()) === argumentsTag;
|
|
8
8
|
var FUNC_ERROR_TEXT = 'Expected a function';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { __read, __spreadArray } from 'tslib';
|
|
2
|
+
import merge from './merge.js';
|
|
3
|
+
|
|
4
|
+
var mergeObject = function (object, source) {
|
|
5
|
+
var args = [];
|
|
6
|
+
for (var _i = 2; _i < arguments.length; _i++) {
|
|
7
|
+
args[_i - 2] = arguments[_i];
|
|
8
|
+
}
|
|
9
|
+
if (args.length > 0) {
|
|
10
|
+
var _a = __read(args), arg1 = _a[0], restArgs = _a.slice(1);
|
|
11
|
+
var obj = merge(object, source, merge.NOT_MERGE_ARRAYS);
|
|
12
|
+
return mergeObject.apply(void 0, __spreadArray([obj, arg1], __read(restArgs), false));
|
|
13
|
+
}
|
|
14
|
+
return merge(object, source, merge.NOT_MERGE_ARRAYS);
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { mergeObject as default };
|
package/lib/index.js
CHANGED
|
@@ -92,6 +92,7 @@ var invert = require('./invert.js');
|
|
|
92
92
|
var keys = require('./keys.js');
|
|
93
93
|
var keysIn = require('./keysIn.js');
|
|
94
94
|
var merge = require('./merge.js');
|
|
95
|
+
var mergeObject = require('./mergeObject.js');
|
|
95
96
|
var omit = require('./omit.js');
|
|
96
97
|
var omitBy = require('./omitBy.js');
|
|
97
98
|
var pick = require('./pick.js');
|
|
@@ -234,6 +235,7 @@ exports.invert = invert;
|
|
|
234
235
|
exports.keys = keys;
|
|
235
236
|
exports.keysIn = keysIn;
|
|
236
237
|
exports.merge = merge;
|
|
238
|
+
exports.mergeObject = mergeObject;
|
|
237
239
|
exports.omit = omit;
|
|
238
240
|
exports.omitBy = omitBy;
|
|
239
241
|
exports.pick = pick;
|
package/lib/internals/helpers.js
CHANGED
|
@@ -4,7 +4,7 @@ var isObjectLike = require('../isObjectLike.js');
|
|
|
4
4
|
var getTag = require('./getTag.js');
|
|
5
5
|
var native = require('./native.js');
|
|
6
6
|
|
|
7
|
-
var VERSION = "1.
|
|
7
|
+
var VERSION = "1.15.0";
|
|
8
8
|
var isBrowser = typeof window !== native.stringUndefined && isObjectLike(window) && typeof document !== native.stringUndefined && isObjectLike(document) && window.document === document;
|
|
9
9
|
var supportedArgumentsType = getTag((function () { return arguments; })()) === native.argumentsTag;
|
|
10
10
|
var FUNC_ERROR_TEXT = 'Expected a function';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var merge = require('./merge.js');
|
|
5
|
+
|
|
6
|
+
var mergeObject = function (object, source) {
|
|
7
|
+
var args = [];
|
|
8
|
+
for (var _i = 2; _i < arguments.length; _i++) {
|
|
9
|
+
args[_i - 2] = arguments[_i];
|
|
10
|
+
}
|
|
11
|
+
if (args.length > 0) {
|
|
12
|
+
var _a = tslib.__read(args), arg1 = _a[0], restArgs = _a.slice(1);
|
|
13
|
+
var obj = merge(object, source, merge.NOT_MERGE_ARRAYS);
|
|
14
|
+
return mergeObject.apply(void 0, tslib.__spreadArray([obj, arg1], tslib.__read(restArgs), false));
|
|
15
|
+
}
|
|
16
|
+
return merge(object, source, merge.NOT_MERGE_ARRAYS);
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
module.exports = mergeObject;
|
package/package.json
CHANGED
package/types/fromPairs.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ interface FromPairs {
|
|
|
7
7
|
*
|
|
8
8
|
* 与 [Object.entries](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/entries) 正好相反。
|
|
9
9
|
*
|
|
10
|
+
* @deprecated 即将废弃,请使用 `Object.fromEntries` 替代。
|
|
11
|
+
* @private
|
|
10
12
|
* @alias module:Array.fromPairs
|
|
11
13
|
* @since 1.0.0
|
|
12
14
|
* @param {Array} array 键值对数组。
|
package/types/index.d.ts
CHANGED
|
@@ -132,6 +132,7 @@ export { default as invert } from './invert';
|
|
|
132
132
|
export { default as keys } from './keys';
|
|
133
133
|
export { default as keysIn } from './keysIn';
|
|
134
134
|
export { default as merge } from './merge';
|
|
135
|
+
export { default as mergeObject } from './mergeObject';
|
|
135
136
|
export { default as omit } from './omit';
|
|
136
137
|
export { default as omitBy } from './omitBy';
|
|
137
138
|
export { default as pick } from './pick';
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
interface MergeObject {
|
|
2
|
+
<T1, T2>(t1: T1, t2: T2): T1 & T2;
|
|
3
|
+
<T1, T2, T3>(t1: T1, t2: T2, t3: T3): T1 & T2 & T3;
|
|
4
|
+
<T1, T2, T3, T4>(t1: T1, t2: T2, t3: T3, t4: T4): T1 & T2 & T3 & T4;
|
|
5
|
+
<T1, T2, T3, T4, T5>(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5): T1 & T2 & T3 & T4 & T5;
|
|
6
|
+
<T1, T2, T3, T4, T5, T6>(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5, t6: T6): T1 & T2 & T3 & T4 & T5 & T6;
|
|
7
|
+
<T1, T2, T3, T4, T5, T6, T7>(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5, t6: T6, t7: T7): T1 & T2 & T3 & T4 & T5 & T6 & T7;
|
|
8
|
+
<T1, T2, T3, T4, T5, T6, T7, T8>(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5, t6: T6, t7: T7, t8: T8): T1 & T2 & T3 & T4 & T5 & T6 & T7 & T8;
|
|
9
|
+
<T1, T2, T3, T4, T5, T6, T7, T8, T9>(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5, t6: T6, t7: T7, t8: T8, t9: T9): T1 & T2 & T3 & T4 & T5 & T6 & T7 & T8 & T9;
|
|
10
|
+
<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5, t6: T6, t7: T7, t8: T8, t9: T9, t10: T10): T1 & T2 & T3 & T4 & T5 & T6 & T7 & T8 & T9 & T10;
|
|
11
|
+
<T1, T2, T>(t1: T1, t2: T2, ...args: T[]): T1 & T2 & T;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* 递归合并 `source` 来源对象自身的可枚举属性(包含 `Symbol` 属性)到 `object` 目标对象。
|
|
15
|
+
*
|
|
16
|
+
* 与 `merge` 方法的区别:
|
|
17
|
+
*
|
|
18
|
+
* 1. 不合并数组,如果只传入 `2` 个参数,同 `merge(obj, src, merge.NOT_MERGE_ARRAYS)`
|
|
19
|
+
* 2. 不支持自定义赋值函数和获取对象键,但支持多个来源对象参数
|
|
20
|
+
*
|
|
21
|
+
* @alias module:Object.mergeObject
|
|
22
|
+
* @since 1.15.0
|
|
23
|
+
* @param {Object | Array} object 目标对象。
|
|
24
|
+
* @param {...object} args 展开的来源对象。
|
|
25
|
+
* @returns 目标对象。
|
|
26
|
+
* @example
|
|
27
|
+
*
|
|
28
|
+
* mergeObject({c: 3}, {e: 5}); // { c: 3, e: 5 }
|
|
29
|
+
* mergeObject({ a: 1 }, { a: undefined, b: undefined }); // { a: 1, b: undefined }
|
|
30
|
+
* mergeObject({ a: 1 }, { a: undefined, b: undefined }, {c:'x'}); // { a: 1, b: undefined, c: 'x' }
|
|
31
|
+
*
|
|
32
|
+
* const source = {
|
|
33
|
+
* a: [{b: 2}, {d: 4}]
|
|
34
|
+
* }
|
|
35
|
+
* const otherSource = {
|
|
36
|
+
* a: [{c: 3},{e: 5}]
|
|
37
|
+
* }
|
|
38
|
+
* mergeObject({}, source, otherSource); // { a: [{c: 3}, {e: 5}] }
|
|
39
|
+
*/
|
|
40
|
+
declare const mergeObject: MergeObject;
|
|
41
|
+
export default mergeObject;
|