es-toolkit 1.22.0-dev.704 → 1.22.0-dev.705
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/_chunk/{toMerged-QkD_NC.js → isObjectLike-BzGQPE.js} +17 -7
- package/dist/browser.global.js +1 -1
- package/dist/browser.global.js.map +1 -1
- package/dist/compat/index.js +22 -22
- package/dist/compat/index.mjs +1 -1
- package/dist/index.js +11 -11
- package/dist/object/index.js +12 -12
- package/dist/object/merge.mjs +14 -4
- package/package.json +1 -1
package/dist/compat/index.js
CHANGED
|
@@ -7,7 +7,7 @@ const promise_index = require('../_chunk/index-BGZDR9.js');
|
|
|
7
7
|
const flowRight$1 = require('../_chunk/flowRight-DD5Qyk.js');
|
|
8
8
|
const range = require('../_chunk/range-BXlMmn.js');
|
|
9
9
|
const randomInt = require('../_chunk/randomInt-CF7bZK.js');
|
|
10
|
-
const
|
|
10
|
+
const isObjectLike = require('../_chunk/isObjectLike-BzGQPE.js');
|
|
11
11
|
const isPlainObject$1 = require('../_chunk/isPlainObject-DgrsU7.js');
|
|
12
12
|
const isWeakSet$1 = require('../_chunk/isWeakSet-CsTXLi.js');
|
|
13
13
|
const pad$1 = require('../_chunk/pad-BWiShN.js');
|
|
@@ -271,7 +271,7 @@ function isSetMatch(target, source) {
|
|
|
271
271
|
}
|
|
272
272
|
|
|
273
273
|
function matches(source) {
|
|
274
|
-
source =
|
|
274
|
+
source = isObjectLike.cloneDeep(source);
|
|
275
275
|
return (target) => {
|
|
276
276
|
return isMatch(target, source);
|
|
277
277
|
};
|
|
@@ -279,25 +279,25 @@ function matches(source) {
|
|
|
279
279
|
|
|
280
280
|
function cloneDeep(obj) {
|
|
281
281
|
if (typeof obj !== 'object') {
|
|
282
|
-
return
|
|
282
|
+
return isObjectLike.cloneDeep(obj);
|
|
283
283
|
}
|
|
284
284
|
switch (Object.prototype.toString.call(obj)) {
|
|
285
285
|
case isWeakSet$1.numberTag:
|
|
286
286
|
case isWeakSet$1.stringTag:
|
|
287
287
|
case isWeakSet$1.booleanTag: {
|
|
288
288
|
const result = new obj.constructor(obj?.valueOf());
|
|
289
|
-
|
|
289
|
+
isObjectLike.copyProperties(result, obj);
|
|
290
290
|
return result;
|
|
291
291
|
}
|
|
292
292
|
case isWeakSet$1.argumentsTag: {
|
|
293
293
|
const result = {};
|
|
294
|
-
|
|
294
|
+
isObjectLike.copyProperties(result, obj);
|
|
295
295
|
result.length = obj.length;
|
|
296
296
|
result[Symbol.iterator] = obj[Symbol.iterator];
|
|
297
297
|
return result;
|
|
298
298
|
}
|
|
299
299
|
default: {
|
|
300
|
-
return
|
|
300
|
+
return isObjectLike.cloneDeep(obj);
|
|
301
301
|
}
|
|
302
302
|
}
|
|
303
303
|
}
|
|
@@ -1242,7 +1242,7 @@ function omit(obj, ...keysArr) {
|
|
|
1242
1242
|
if (obj == null) {
|
|
1243
1243
|
return {};
|
|
1244
1244
|
}
|
|
1245
|
-
const result =
|
|
1245
|
+
const result = isObjectLike.cloneDeep(obj);
|
|
1246
1246
|
for (let i = 0; i < keysArr.length; i++) {
|
|
1247
1247
|
let keys = keysArr[i];
|
|
1248
1248
|
switch (typeof keys) {
|
|
@@ -1274,10 +1274,10 @@ function mapKeys(object, getNewKey) {
|
|
|
1274
1274
|
case 'symbol':
|
|
1275
1275
|
case 'number':
|
|
1276
1276
|
case 'object': {
|
|
1277
|
-
return
|
|
1277
|
+
return isObjectLike.mapKeys(object, property(getNewKey));
|
|
1278
1278
|
}
|
|
1279
1279
|
case 'function': {
|
|
1280
|
-
return
|
|
1280
|
+
return isObjectLike.mapKeys(object, getNewKey);
|
|
1281
1281
|
}
|
|
1282
1282
|
}
|
|
1283
1283
|
}
|
|
@@ -1289,10 +1289,10 @@ function mapValues(object, getNewValue) {
|
|
|
1289
1289
|
case 'symbol':
|
|
1290
1290
|
case 'number':
|
|
1291
1291
|
case 'object': {
|
|
1292
|
-
return
|
|
1292
|
+
return isObjectLike.mapValues(object, property(getNewValue));
|
|
1293
1293
|
}
|
|
1294
1294
|
case 'function': {
|
|
1295
|
-
return
|
|
1295
|
+
return isObjectLike.mapValues(object, getNewValue);
|
|
1296
1296
|
}
|
|
1297
1297
|
}
|
|
1298
1298
|
}
|
|
@@ -1344,7 +1344,7 @@ function mergeWithDeep(target, source, merge, stack) {
|
|
|
1344
1344
|
return target;
|
|
1345
1345
|
}
|
|
1346
1346
|
if (stack.has(source)) {
|
|
1347
|
-
return
|
|
1347
|
+
return isObjectLike.clone(stack.get(source));
|
|
1348
1348
|
}
|
|
1349
1349
|
stack.set(source, target);
|
|
1350
1350
|
if (Array.isArray(source)) {
|
|
@@ -1388,7 +1388,7 @@ function mergeWithDeep(target, source, merge, stack) {
|
|
|
1388
1388
|
else if (Array.isArray(sourceValue)) {
|
|
1389
1389
|
target[key] = mergeWithDeep(targetValue, sourceValue, merge, stack);
|
|
1390
1390
|
}
|
|
1391
|
-
else if (
|
|
1391
|
+
else if (isObjectLike.isObjectLike(targetValue) && isObjectLike.isObjectLike(sourceValue)) {
|
|
1392
1392
|
target[key] = mergeWithDeep(targetValue, sourceValue, merge, stack);
|
|
1393
1393
|
}
|
|
1394
1394
|
else if (targetValue == null && isPlainObject(sourceValue)) {
|
|
@@ -1467,7 +1467,7 @@ function conformsTo(target, source) {
|
|
|
1467
1467
|
}
|
|
1468
1468
|
|
|
1469
1469
|
function conforms(source) {
|
|
1470
|
-
source =
|
|
1470
|
+
source = isObjectLike.cloneDeep(source);
|
|
1471
1471
|
return function (object) {
|
|
1472
1472
|
return conformsTo(object, source);
|
|
1473
1473
|
};
|
|
@@ -1490,7 +1490,7 @@ function isNaN(value) {
|
|
|
1490
1490
|
}
|
|
1491
1491
|
|
|
1492
1492
|
function isArrayLikeObject(value) {
|
|
1493
|
-
return
|
|
1493
|
+
return isObjectLike.isObjectLike(value) && isArrayLike(value);
|
|
1494
1494
|
}
|
|
1495
1495
|
|
|
1496
1496
|
function toString(value) {
|
|
@@ -1874,13 +1874,13 @@ exports.range = range.range;
|
|
|
1874
1874
|
exports.sum = range.sum;
|
|
1875
1875
|
exports.sumBy = range.sumBy;
|
|
1876
1876
|
exports.randomInt = randomInt.randomInt;
|
|
1877
|
-
exports.clone =
|
|
1878
|
-
exports.flattenObject =
|
|
1879
|
-
exports.invert =
|
|
1880
|
-
exports.isObjectLike =
|
|
1881
|
-
exports.omitBy =
|
|
1882
|
-
exports.pickBy =
|
|
1883
|
-
exports.toMerged =
|
|
1877
|
+
exports.clone = isObjectLike.clone;
|
|
1878
|
+
exports.flattenObject = isObjectLike.flattenObject;
|
|
1879
|
+
exports.invert = isObjectLike.invert;
|
|
1880
|
+
exports.isObjectLike = isObjectLike.isObjectLike;
|
|
1881
|
+
exports.omitBy = isObjectLike.omitBy;
|
|
1882
|
+
exports.pickBy = isObjectLike.pickBy;
|
|
1883
|
+
exports.toMerged = isObjectLike.toMerged;
|
|
1884
1884
|
exports.isPrimitive = isPlainObject$1.isPrimitive;
|
|
1885
1885
|
exports.isArrayBuffer = isWeakSet$1.isArrayBuffer;
|
|
1886
1886
|
exports.isDate = isWeakSet$1.isDate;
|
package/dist/compat/index.mjs
CHANGED
|
@@ -69,8 +69,8 @@ export { invert } from '../object/invert.mjs';
|
|
|
69
69
|
export { clone } from '../object/clone.mjs';
|
|
70
70
|
export { flattenObject } from '../object/flattenObject.mjs';
|
|
71
71
|
export { isPrimitive } from '../predicate/isPrimitive.mjs';
|
|
72
|
-
export { isObjectLike } from './predicate/isObjectLike.mjs';
|
|
73
72
|
export { toMerged } from '../object/toMerged.mjs';
|
|
73
|
+
export { isObjectLike } from './predicate/isObjectLike.mjs';
|
|
74
74
|
export { isArrayBuffer } from '../predicate/isArrayBuffer.mjs';
|
|
75
75
|
export { isDate } from '../predicate/isDate.mjs';
|
|
76
76
|
export { isEqual } from '../predicate/isEqual.mjs';
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,7 @@ const range = require('./_chunk/range-BXlMmn.js');
|
|
|
11
11
|
const randomInt = require('./_chunk/randomInt-CF7bZK.js');
|
|
12
12
|
const math_index = require('./math/index.js');
|
|
13
13
|
const object_index = require('./object/index.js');
|
|
14
|
-
const
|
|
14
|
+
const isObjectLike = require('./_chunk/isObjectLike-BzGQPE.js');
|
|
15
15
|
const isWeakSet = require('./_chunk/isWeakSet-CsTXLi.js');
|
|
16
16
|
const predicate_index = require('./predicate/index.js');
|
|
17
17
|
const isPlainObject = require('./_chunk/isPlainObject-DgrsU7.js');
|
|
@@ -112,16 +112,16 @@ exports.round = math_index.round;
|
|
|
112
112
|
exports.mergeWith = object_index.mergeWith;
|
|
113
113
|
exports.omit = object_index.omit;
|
|
114
114
|
exports.pick = object_index.pick;
|
|
115
|
-
exports.clone =
|
|
116
|
-
exports.cloneDeep =
|
|
117
|
-
exports.flattenObject =
|
|
118
|
-
exports.invert =
|
|
119
|
-
exports.mapKeys =
|
|
120
|
-
exports.mapValues =
|
|
121
|
-
exports.merge =
|
|
122
|
-
exports.omitBy =
|
|
123
|
-
exports.pickBy =
|
|
124
|
-
exports.toMerged =
|
|
115
|
+
exports.clone = isObjectLike.clone;
|
|
116
|
+
exports.cloneDeep = isObjectLike.cloneDeep;
|
|
117
|
+
exports.flattenObject = isObjectLike.flattenObject;
|
|
118
|
+
exports.invert = isObjectLike.invert;
|
|
119
|
+
exports.mapKeys = isObjectLike.mapKeys;
|
|
120
|
+
exports.mapValues = isObjectLike.mapValues;
|
|
121
|
+
exports.merge = isObjectLike.merge;
|
|
122
|
+
exports.omitBy = isObjectLike.omitBy;
|
|
123
|
+
exports.pickBy = isObjectLike.pickBy;
|
|
124
|
+
exports.toMerged = isObjectLike.toMerged;
|
|
125
125
|
exports.isArrayBuffer = isWeakSet.isArrayBuffer;
|
|
126
126
|
exports.isDate = isWeakSet.isDate;
|
|
127
127
|
exports.isEqual = isWeakSet.isEqual;
|
package/dist/object/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
|
|
5
|
-
const
|
|
5
|
+
const isObjectLike = require('../_chunk/isObjectLike-BzGQPE.js');
|
|
6
6
|
|
|
7
7
|
function omit(obj, keys) {
|
|
8
8
|
const result = { ...obj };
|
|
@@ -37,7 +37,7 @@ function mergeWith(target, source, merge) {
|
|
|
37
37
|
else if (Array.isArray(sourceValue)) {
|
|
38
38
|
target[key] = mergeWith(targetValue ?? [], sourceValue, merge);
|
|
39
39
|
}
|
|
40
|
-
else if (
|
|
40
|
+
else if (isObjectLike.isObjectLike(targetValue) && isObjectLike.isObjectLike(sourceValue)) {
|
|
41
41
|
target[key] = mergeWith(targetValue ?? {}, sourceValue, merge);
|
|
42
42
|
}
|
|
43
43
|
else if (targetValue === undefined || sourceValue !== undefined) {
|
|
@@ -47,16 +47,16 @@ function mergeWith(target, source, merge) {
|
|
|
47
47
|
return target;
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
exports.clone =
|
|
51
|
-
exports.cloneDeep =
|
|
52
|
-
exports.flattenObject =
|
|
53
|
-
exports.invert =
|
|
54
|
-
exports.mapKeys =
|
|
55
|
-
exports.mapValues =
|
|
56
|
-
exports.merge =
|
|
57
|
-
exports.omitBy =
|
|
58
|
-
exports.pickBy =
|
|
59
|
-
exports.toMerged =
|
|
50
|
+
exports.clone = isObjectLike.clone;
|
|
51
|
+
exports.cloneDeep = isObjectLike.cloneDeep;
|
|
52
|
+
exports.flattenObject = isObjectLike.flattenObject;
|
|
53
|
+
exports.invert = isObjectLike.invert;
|
|
54
|
+
exports.mapKeys = isObjectLike.mapKeys;
|
|
55
|
+
exports.mapValues = isObjectLike.mapValues;
|
|
56
|
+
exports.merge = isObjectLike.merge;
|
|
57
|
+
exports.omitBy = isObjectLike.omitBy;
|
|
58
|
+
exports.pickBy = isObjectLike.pickBy;
|
|
59
|
+
exports.toMerged = isObjectLike.toMerged;
|
|
60
60
|
exports.mergeWith = mergeWith;
|
|
61
61
|
exports.omit = omit;
|
|
62
62
|
exports.pick = pick;
|
package/dist/object/merge.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isPlainObject } from '../predicate/isPlainObject.mjs';
|
|
2
2
|
|
|
3
3
|
function merge(target, source) {
|
|
4
4
|
const sourceKeys = Object.keys(source);
|
|
@@ -7,10 +7,20 @@ function merge(target, source) {
|
|
|
7
7
|
const sourceValue = source[key];
|
|
8
8
|
const targetValue = target[key];
|
|
9
9
|
if (Array.isArray(sourceValue)) {
|
|
10
|
-
|
|
10
|
+
if (Array.isArray(targetValue)) {
|
|
11
|
+
target[key] = merge(targetValue, sourceValue);
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
target[key] = [...sourceValue];
|
|
15
|
+
}
|
|
11
16
|
}
|
|
12
|
-
else if (
|
|
13
|
-
|
|
17
|
+
else if (isPlainObject(sourceValue)) {
|
|
18
|
+
if (isPlainObject(targetValue)) {
|
|
19
|
+
target[key] = merge(targetValue, sourceValue);
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
target[key] = { ...sourceValue };
|
|
23
|
+
}
|
|
14
24
|
}
|
|
15
25
|
else if (targetValue === undefined || sourceValue !== undefined) {
|
|
16
26
|
target[key] = sourceValue;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "es-toolkit",
|
|
3
3
|
"description": "A state-of-the-art, high-performance JavaScript utility library with a small bundle size and strong type annotations.",
|
|
4
|
-
"version": "1.22.0-dev.
|
|
4
|
+
"version": "1.22.0-dev.705+63302ce0",
|
|
5
5
|
"homepage": "https://es-toolkit.slash.page",
|
|
6
6
|
"bugs": "https://github.com/toss/es-toolkit/issues",
|
|
7
7
|
"repository": {
|