es-toolkit 1.36.0 → 1.37.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.
Files changed (45) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/_chunk/isPlainObject-Xaozpc.js +93 -0
  3. package/dist/_chunk/{isPromise-CxqI1v.js → isWeakSet-C2NpfO.js} +91 -177
  4. package/dist/_chunk/snakeCase-BwvoPi.js +30 -0
  5. package/dist/_chunk/toSnakeCaseKeys-kqZCyq.js +379 -0
  6. package/dist/_chunk/{reverseString-BixeGz.js → upperFirst-DbrFSz.js} +19 -45
  7. package/dist/_chunk/{zip-BJSrRi.js → zip-DDfXXG.js} +0 -24
  8. package/dist/array/index.js +25 -4
  9. package/dist/browser.global.js +1 -1
  10. package/dist/browser.global.js.map +1 -1
  11. package/dist/compat/_internal/compareValues.mjs +0 -3
  12. package/dist/compat/array/sampleSize.d.mts +38 -0
  13. package/dist/compat/array/sampleSize.d.ts +38 -0
  14. package/dist/compat/array/sampleSize.mjs +18 -0
  15. package/dist/compat/array/unzipWith.d.mts +78 -0
  16. package/dist/compat/array/unzipWith.d.ts +78 -0
  17. package/dist/compat/array/unzipWith.mjs +21 -0
  18. package/dist/compat/array/xor.d.mts +23 -0
  19. package/dist/compat/array/xor.d.ts +23 -0
  20. package/dist/compat/array/xor.mjs +30 -0
  21. package/dist/compat/compat.d.mts +6 -4
  22. package/dist/compat/compat.d.ts +6 -4
  23. package/dist/compat/compat.mjs +7 -5
  24. package/dist/compat/index.d.mts +6 -4
  25. package/dist/compat/index.d.ts +6 -4
  26. package/dist/compat/index.js +4678 -309
  27. package/dist/compat/index.mjs +7 -5
  28. package/dist/compat/object/omitBy.d.mts +22 -0
  29. package/dist/compat/object/omitBy.d.ts +22 -0
  30. package/dist/compat/object/omitBy.mjs +26 -0
  31. package/dist/compat/object/result.d.mts +33 -0
  32. package/dist/compat/object/result.d.ts +33 -0
  33. package/dist/compat/object/result.mjs +24 -0
  34. package/dist/compat/object/transform.d.mts +59 -0
  35. package/dist/compat/object/transform.d.ts +59 -0
  36. package/dist/compat/object/transform.mjs +30 -0
  37. package/dist/compat/util/toString.mjs +3 -0
  38. package/dist/index.js +71 -69
  39. package/dist/object/index.js +28 -15
  40. package/dist/object/toCamelCaseKeys.mjs +2 -12
  41. package/dist/object/toSnakeCaseKeys.mjs +1 -11
  42. package/dist/predicate/index.js +31 -30
  43. package/dist/string/index.js +23 -22
  44. package/package.json +1 -1
  45. package/dist/_chunk/toSnakeCaseKeys-DZO2eB.js +0 -4901
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const compat_index = require('../_chunk/toSnakeCaseKeys-DZO2eB.js');
5
+ const toSnakeCaseKeys = require('../_chunk/toSnakeCaseKeys-kqZCyq.js');
6
6
 
7
7
  function mergeWith(target, source, merge) {
8
8
  const sourceKeys = Object.keys(source);
@@ -17,7 +17,7 @@ function mergeWith(target, source, merge) {
17
17
  else if (Array.isArray(sourceValue)) {
18
18
  target[key] = mergeWith(targetValue ?? [], sourceValue, merge);
19
19
  }
20
- else if (compat_index.isObjectLike(targetValue) && compat_index.isObjectLike(sourceValue)) {
20
+ else if (toSnakeCaseKeys.isObjectLike(targetValue) && toSnakeCaseKeys.isObjectLike(sourceValue)) {
21
21
  target[key] = mergeWith(targetValue ?? {}, sourceValue, merge);
22
22
  }
23
23
  else if (targetValue === undefined || sourceValue !== undefined) {
@@ -36,6 +36,19 @@ function omit(obj, keys) {
36
36
  return result;
37
37
  }
38
38
 
39
+ function omitBy(obj, shouldOmit) {
40
+ const result = {};
41
+ const keys = Object.keys(obj);
42
+ for (let i = 0; i < keys.length; i++) {
43
+ const key = keys[i];
44
+ const value = obj[key];
45
+ if (!shouldOmit(value, key)) {
46
+ result[key] = value;
47
+ }
48
+ }
49
+ return result;
50
+ }
51
+
39
52
  function pick(obj, keys) {
40
53
  const result = {};
41
54
  for (let i = 0; i < keys.length; i++) {
@@ -60,20 +73,20 @@ function pickBy(obj, shouldPick) {
60
73
  return result;
61
74
  }
62
75
 
63
- exports.clone = compat_index.clone;
64
- exports.cloneDeep = compat_index.cloneDeep;
65
- exports.cloneDeepWith = compat_index.cloneDeepWith;
66
- exports.findKey = compat_index.findKey;
67
- exports.flattenObject = compat_index.flattenObject;
68
- exports.invert = compat_index.invert;
69
- exports.mapKeys = compat_index.mapKeys;
70
- exports.mapValues = compat_index.mapValues;
71
- exports.merge = compat_index.merge;
72
- exports.omitBy = compat_index.omitBy;
73
- exports.toCamelCaseKeys = compat_index.toCamelCaseKeys;
74
- exports.toMerged = compat_index.toMerged;
75
- exports.toSnakeCaseKeys = compat_index.toSnakeCaseKeys;
76
+ exports.clone = toSnakeCaseKeys.clone;
77
+ exports.cloneDeep = toSnakeCaseKeys.cloneDeep;
78
+ exports.cloneDeepWith = toSnakeCaseKeys.cloneDeepWith;
79
+ exports.findKey = toSnakeCaseKeys.findKey;
80
+ exports.flattenObject = toSnakeCaseKeys.flattenObject;
81
+ exports.invert = toSnakeCaseKeys.invert;
82
+ exports.mapKeys = toSnakeCaseKeys.mapKeys;
83
+ exports.mapValues = toSnakeCaseKeys.mapValues;
84
+ exports.merge = toSnakeCaseKeys.merge;
85
+ exports.toCamelCaseKeys = toSnakeCaseKeys.toCamelCaseKeys;
86
+ exports.toMerged = toSnakeCaseKeys.toMerged;
87
+ exports.toSnakeCaseKeys = toSnakeCaseKeys.toSnakeCaseKeys;
76
88
  exports.mergeWith = mergeWith;
77
89
  exports.omit = omit;
90
+ exports.omitBy = omitBy;
78
91
  exports.pick = pick;
79
92
  exports.pickBy = pickBy;
@@ -1,16 +1,6 @@
1
- import '../function/partial.mjs';
2
- import '../function/partialRight.mjs';
3
- import { camelCase } from '../string/camelCase.mjs';
4
- import '../string/deburr.mjs';
5
1
  import { isArray } from '../compat/predicate/isArray.mjs';
6
- import '../compat/function/bind.mjs';
7
- import '../compat/function/bindKey.mjs';
8
- import '../compat/function/curry.mjs';
9
- import '../compat/function/curryRight.mjs';
10
- import '../compat/function/partial.mjs';
11
- import '../compat/function/partialRight.mjs';
12
- import { isPlainObject } from '../compat/predicate/isPlainObject.mjs';
13
- import '../compat/toolkit.mjs';
2
+ import { isPlainObject } from '../predicate/isPlainObject.mjs';
3
+ import { camelCase } from '../string/camelCase.mjs';
14
4
 
15
5
  function toCamelCaseKeys(obj) {
16
6
  if (isArray(obj)) {
@@ -1,16 +1,6 @@
1
- import '../function/partial.mjs';
2
- import '../function/partialRight.mjs';
3
- import { snakeCase } from '../string/snakeCase.mjs';
4
- import '../string/deburr.mjs';
5
1
  import { isArray } from '../compat/predicate/isArray.mjs';
6
- import '../compat/function/bind.mjs';
7
- import '../compat/function/bindKey.mjs';
8
- import '../compat/function/curry.mjs';
9
- import '../compat/function/curryRight.mjs';
10
- import '../compat/function/partial.mjs';
11
- import '../compat/function/partialRight.mjs';
12
2
  import { isPlainObject } from '../compat/predicate/isPlainObject.mjs';
13
- import '../compat/toolkit.mjs';
3
+ import { snakeCase } from '../string/snakeCase.mjs';
14
4
 
15
5
  function toSnakeCaseKeys(obj) {
16
6
  if (isArray(obj)) {
@@ -2,7 +2,8 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const isPromise = require('../_chunk/isPromise-CxqI1v.js');
5
+ const isWeakSet = require('../_chunk/isWeakSet-C2NpfO.js');
6
+ const isPlainObject = require('../_chunk/isPlainObject-Xaozpc.js');
6
7
 
7
8
  function isBoolean(x) {
8
9
  return typeof x === 'boolean';
@@ -16,35 +17,35 @@ function isString(value) {
16
17
  return typeof value === 'string';
17
18
  }
18
19
 
19
- exports.isArrayBuffer = isPromise.isArrayBuffer;
20
- exports.isBlob = isPromise.isBlob;
21
- exports.isBrowser = isPromise.isBrowser;
22
- exports.isBuffer = isPromise.isBuffer;
23
- exports.isDate = isPromise.isDate;
24
- exports.isEqual = isPromise.isEqual;
25
- exports.isEqualWith = isPromise.isEqualWith;
26
- exports.isFile = isPromise.isFile;
27
- exports.isFunction = isPromise.isFunction;
28
- exports.isJSON = isPromise.isJSON;
29
- exports.isJSONArray = isPromise.isJSONArray;
30
- exports.isJSONObject = isPromise.isJSONObject;
31
- exports.isJSONValue = isPromise.isJSONValue;
32
- exports.isLength = isPromise.isLength;
33
- exports.isMap = isPromise.isMap;
34
- exports.isNil = isPromise.isNil;
35
- exports.isNode = isPromise.isNode;
36
- exports.isNotNil = isPromise.isNotNil;
37
- exports.isNull = isPromise.isNull;
38
- exports.isPlainObject = isPromise.isPlainObject;
39
- exports.isPrimitive = isPromise.isPrimitive;
40
- exports.isPromise = isPromise.isPromise;
41
- exports.isRegExp = isPromise.isRegExp;
42
- exports.isSet = isPromise.isSet;
43
- exports.isSymbol = isPromise.isSymbol;
44
- exports.isTypedArray = isPromise.isTypedArray;
45
- exports.isUndefined = isPromise.isUndefined;
46
- exports.isWeakMap = isPromise.isWeakMap;
47
- exports.isWeakSet = isPromise.isWeakSet;
20
+ exports.isArrayBuffer = isWeakSet.isArrayBuffer;
21
+ exports.isBlob = isWeakSet.isBlob;
22
+ exports.isBrowser = isWeakSet.isBrowser;
23
+ exports.isBuffer = isWeakSet.isBuffer;
24
+ exports.isDate = isWeakSet.isDate;
25
+ exports.isEqual = isWeakSet.isEqual;
26
+ exports.isEqualWith = isWeakSet.isEqualWith;
27
+ exports.isFile = isWeakSet.isFile;
28
+ exports.isFunction = isWeakSet.isFunction;
29
+ exports.isJSON = isWeakSet.isJSON;
30
+ exports.isJSONArray = isWeakSet.isJSONArray;
31
+ exports.isJSONObject = isWeakSet.isJSONObject;
32
+ exports.isJSONValue = isWeakSet.isJSONValue;
33
+ exports.isLength = isWeakSet.isLength;
34
+ exports.isMap = isWeakSet.isMap;
35
+ exports.isNil = isWeakSet.isNil;
36
+ exports.isNode = isWeakSet.isNode;
37
+ exports.isNotNil = isWeakSet.isNotNil;
38
+ exports.isNull = isWeakSet.isNull;
39
+ exports.isPromise = isWeakSet.isPromise;
40
+ exports.isRegExp = isWeakSet.isRegExp;
41
+ exports.isSet = isWeakSet.isSet;
42
+ exports.isSymbol = isWeakSet.isSymbol;
43
+ exports.isUndefined = isWeakSet.isUndefined;
44
+ exports.isWeakMap = isWeakSet.isWeakMap;
45
+ exports.isWeakSet = isWeakSet.isWeakSet;
46
+ exports.isPlainObject = isPlainObject.isPlainObject;
47
+ exports.isPrimitive = isPlainObject.isPrimitive;
48
+ exports.isTypedArray = isPlainObject.isTypedArray;
48
49
  exports.isBoolean = isBoolean;
49
50
  exports.isError = isError;
50
51
  exports.isString = isString;
@@ -2,10 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const reverseString = require('../_chunk/reverseString-BixeGz.js');
5
+ const snakeCase = require('../_chunk/snakeCase-BwvoPi.js');
6
+ const upperFirst = require('../_chunk/upperFirst-DbrFSz.js');
6
7
 
7
8
  function startCase(str) {
8
- const words = reverseString.words(str.trim());
9
+ const words = snakeCase.words(str.trim());
9
10
  let result = '';
10
11
  for (let i = 0; i < words.length; i++) {
11
12
  const word = words[i];
@@ -17,24 +18,24 @@ function startCase(str) {
17
18
  return result;
18
19
  }
19
20
 
20
- exports.camelCase = reverseString.camelCase;
21
- exports.capitalize = reverseString.capitalize;
22
- exports.constantCase = reverseString.constantCase;
23
- exports.deburr = reverseString.deburr;
24
- exports.escape = reverseString.escape;
25
- exports.escapeRegExp = reverseString.escapeRegExp;
26
- exports.kebabCase = reverseString.kebabCase;
27
- exports.lowerCase = reverseString.lowerCase;
28
- exports.lowerFirst = reverseString.lowerFirst;
29
- exports.pad = reverseString.pad;
30
- exports.pascalCase = reverseString.pascalCase;
31
- exports.reverseString = reverseString.reverseString;
32
- exports.snakeCase = reverseString.snakeCase;
33
- exports.trim = reverseString.trim;
34
- exports.trimEnd = reverseString.trimEnd;
35
- exports.trimStart = reverseString.trimStart;
36
- exports.unescape = reverseString.unescape;
37
- exports.upperCase = reverseString.upperCase;
38
- exports.upperFirst = reverseString.upperFirst;
39
- exports.words = reverseString.words;
21
+ exports.camelCase = snakeCase.camelCase;
22
+ exports.capitalize = snakeCase.capitalize;
23
+ exports.snakeCase = snakeCase.snakeCase;
24
+ exports.words = snakeCase.words;
25
+ exports.constantCase = upperFirst.constantCase;
26
+ exports.deburr = upperFirst.deburr;
27
+ exports.escape = upperFirst.escape;
28
+ exports.escapeRegExp = upperFirst.escapeRegExp;
29
+ exports.kebabCase = upperFirst.kebabCase;
30
+ exports.lowerCase = upperFirst.lowerCase;
31
+ exports.lowerFirst = upperFirst.lowerFirst;
32
+ exports.pad = upperFirst.pad;
33
+ exports.pascalCase = upperFirst.pascalCase;
34
+ exports.reverseString = upperFirst.reverseString;
35
+ exports.trim = upperFirst.trim;
36
+ exports.trimEnd = upperFirst.trimEnd;
37
+ exports.trimStart = upperFirst.trimStart;
38
+ exports.unescape = upperFirst.unescape;
39
+ exports.upperCase = upperFirst.upperCase;
40
+ exports.upperFirst = upperFirst.upperFirst;
40
41
  exports.startCase = startCase;
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.36.0",
4
+ "version": "1.37.0",
5
5
  "homepage": "https://es-toolkit.slash.page",
6
6
  "bugs": "https://github.com/toss/es-toolkit/issues",
7
7
  "repository": {