ut2 1.8.0 → 1.9.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 (92) hide show
  1. package/dist/ut2.js +116 -143
  2. package/dist/ut2.js.map +1 -1
  3. package/dist/ut2.min.js +1 -1
  4. package/dist/ut2.min.js.map +1 -1
  5. package/es/before.js +2 -1
  6. package/es/clamp.js +7 -6
  7. package/es/conformsTo.js +2 -1
  8. package/es/countBy.js +2 -2
  9. package/es/groupBy.js +2 -2
  10. package/es/internals/baseDebounce.js +15 -14
  11. package/es/internals/compare.js +19 -26
  12. package/es/internals/createExtremum.js +4 -3
  13. package/es/internals/createForEach.js +2 -2
  14. package/es/internals/createReduce.js +2 -2
  15. package/es/internals/getTagWithBugfix.js +7 -7
  16. package/es/internals/helpers.js +1 -1
  17. package/es/internals/isEqualDeep.js +4 -4
  18. package/es/internals/native.js +9 -6
  19. package/es/internals/nodeUtil.js +4 -2
  20. package/es/invert.js +2 -2
  21. package/es/isBlob.js +2 -2
  22. package/es/isEmpty.js +2 -2
  23. package/es/isEqual.js +2 -1
  24. package/es/isMatch.js +5 -5
  25. package/es/isUndefined.js +3 -1
  26. package/es/keyBy.js +2 -2
  27. package/es/max.js +4 -3
  28. package/es/merge.js +6 -5
  29. package/es/min.js +4 -3
  30. package/es/nth.js +2 -1
  31. package/es/orderBy.js +5 -4
  32. package/es/partition.js +2 -2
  33. package/es/toString.js +2 -2
  34. package/lib/before.js +2 -1
  35. package/lib/clamp.js +7 -6
  36. package/lib/conformsTo.js +2 -1
  37. package/lib/countBy.js +2 -2
  38. package/lib/groupBy.js +2 -2
  39. package/lib/internals/baseDebounce.js +15 -14
  40. package/lib/internals/compare.js +18 -27
  41. package/lib/internals/createExtremum.js +4 -3
  42. package/lib/internals/createForEach.js +2 -2
  43. package/lib/internals/createReduce.js +2 -2
  44. package/lib/internals/getTagWithBugfix.js +6 -6
  45. package/lib/internals/helpers.js +1 -1
  46. package/lib/internals/isEqualDeep.js +3 -3
  47. package/lib/internals/native.js +8 -5
  48. package/lib/internals/nodeUtil.js +4 -2
  49. package/lib/invert.js +2 -2
  50. package/lib/isBlob.js +1 -1
  51. package/lib/isEmpty.js +2 -2
  52. package/lib/isEqual.js +2 -1
  53. package/lib/isMatch.js +4 -4
  54. package/lib/isUndefined.js +3 -1
  55. package/lib/keyBy.js +2 -2
  56. package/lib/max.js +4 -3
  57. package/lib/merge.js +6 -5
  58. package/lib/min.js +4 -3
  59. package/lib/nth.js +2 -1
  60. package/lib/orderBy.js +5 -4
  61. package/lib/partition.js +2 -2
  62. package/lib/toString.js +1 -1
  63. package/package.json +1 -1
  64. package/types/countBy.d.ts +7 -5
  65. package/types/difference.d.ts +2 -2
  66. package/types/groupBy.d.ts +7 -5
  67. package/types/internals/compare.d.ts +4 -6
  68. package/types/internals/createExtremum.d.ts +2 -2
  69. package/types/internals/native.d.ts +3 -0
  70. package/types/internals/types.d.ts +9 -2
  71. package/types/intersection.d.ts +3 -3
  72. package/types/invert.d.ts +1 -1
  73. package/types/keyBy.d.ts +7 -5
  74. package/types/max.d.ts +5 -5
  75. package/types/merge.d.ts +3 -3
  76. package/types/min.d.ts +4 -4
  77. package/types/omitBy.d.ts +1 -1
  78. package/types/orderBy.d.ts +8 -6
  79. package/types/partition.d.ts +7 -5
  80. package/types/pickBy.d.ts +1 -1
  81. package/types/reduce.d.ts +1 -1
  82. package/types/reduceRight.d.ts +1 -1
  83. package/types/times.d.ts +1 -1
  84. package/types/union.d.ts +2 -2
  85. package/types/uniq.d.ts +2 -2
  86. package/types/xor.d.ts +3 -3
  87. package/es/internals/isPrototype.js +0 -12
  88. package/es/internals/specialKeys.js +0 -17
  89. package/lib/internals/isPrototype.js +0 -14
  90. package/lib/internals/specialKeys.js +0 -19
  91. package/types/internals/isPrototype.d.ts +0 -9
  92. package/types/internals/specialKeys.d.ts +0 -9
package/es/before.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import defaultTo from './defaultTo.js';
2
2
  import { FUNC_ERROR_TEXT } from './internals/helpers.js';
3
+ import { nativeUndefined } from './internals/native.js';
3
4
  import toNumber from './toNumber.js';
4
5
 
5
6
  function before(n, func) {
@@ -13,7 +14,7 @@ function before(n, func) {
13
14
  result = func.apply(this, arguments);
14
15
  }
15
16
  if (n <= 1) {
16
- func = undefined;
17
+ func = nativeUndefined;
17
18
  }
18
19
  return result;
19
20
  };
package/es/clamp.js CHANGED
@@ -1,23 +1,24 @@
1
1
  import defaultTo from './defaultTo.js';
2
+ import { nativeUndefined } from './internals/native.js';
2
3
  import toNumber from './toNumber.js';
3
4
 
4
5
  var clamp = function (number, lower, upper) {
5
- if (upper === undefined) {
6
+ if (upper === nativeUndefined) {
6
7
  upper = lower;
7
- lower = undefined;
8
+ lower = nativeUndefined;
8
9
  }
9
- if (upper !== undefined) {
10
+ if (upper !== nativeUndefined) {
10
11
  upper = defaultTo(toNumber(upper), 0);
11
12
  }
12
- if (lower !== undefined) {
13
+ if (lower !== nativeUndefined) {
13
14
  lower = defaultTo(toNumber(lower), 0);
14
15
  }
15
16
  number = toNumber(number);
16
17
  if (number === number) {
17
- if (upper !== undefined) {
18
+ if (upper !== nativeUndefined) {
18
19
  number = number <= upper ? number : upper;
19
20
  }
20
- if (lower !== undefined) {
21
+ if (lower !== nativeUndefined) {
21
22
  number = number >= lower ? number : lower;
22
23
  }
23
24
  }
package/es/conformsTo.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import allKeys from './allKeys.js';
2
+ import { nativeUndefined } from './internals/native.js';
2
3
  import isNil from './isNil.js';
3
4
 
4
5
  var conformsTo = function (object, source) {
@@ -14,7 +15,7 @@ var conformsTo = function (object, source) {
14
15
  var key = props[i];
15
16
  var predicate = source[key];
16
17
  var value = object[key];
17
- if ((value === undefined && !(key in object)) || !predicate(value)) {
18
+ if ((value === nativeUndefined && !(key in object)) || !predicate(value)) {
18
19
  return false;
19
20
  }
20
21
  }
package/es/countBy.js CHANGED
@@ -4,8 +4,8 @@ import createIteratee from './internals/createIteratee.js';
4
4
  var countBy = function (collection, iteratee) {
5
5
  var result = {};
6
6
  var internalIteratee = createIteratee(iteratee);
7
- forEach(collection, function (item) {
8
- var key = internalIteratee(item);
7
+ forEach(collection, function (item, index, arr) {
8
+ var key = internalIteratee(item, index, arr);
9
9
  if (key in result) {
10
10
  ++result[key];
11
11
  }
package/es/groupBy.js CHANGED
@@ -6,8 +6,8 @@ var groupBy = function (collection, iteratee) {
6
6
  if (iteratee === void 0) { iteratee = identity; }
7
7
  var result = {};
8
8
  var internalIteratee = createIteratee(iteratee);
9
- forEach(collection, function (item) {
10
- var key = internalIteratee(item);
9
+ forEach(collection, function (item, index, arr) {
10
+ var key = internalIteratee(item, index, arr);
11
11
  if (key in result) {
12
12
  result[key].push(item);
13
13
  }
@@ -1,6 +1,7 @@
1
1
  import defaultTo from '../defaultTo.js';
2
2
  import toNumber from '../toNumber.js';
3
3
  import { FUNC_ERROR_TEXT } from './helpers.js';
4
+ import { nativeUndefined } from './native.js';
4
5
 
5
6
  function baseDebounce(func, wait, immediate, __throttle__) {
6
7
  if (__throttle__ === void 0) { __throttle__ = false; }
@@ -10,7 +11,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
10
11
  var timer, lastCallTime, lastInvokeTime, lastArgs, lastThis, result;
11
12
  wait = defaultTo(toNumber(wait), 0);
12
13
  function shouldInvoke(time) {
13
- if (lastCallTime === undefined) {
14
+ if (lastCallTime === nativeUndefined) {
14
15
  return true;
15
16
  }
16
17
  var timeSinceLastCall = time - lastCallTime;
@@ -20,7 +21,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
20
21
  function invokeFunc(time) {
21
22
  lastInvokeTime = time;
22
23
  result = func.apply(lastThis, lastArgs);
23
- lastThis = lastArgs = undefined;
24
+ lastThis = lastArgs = nativeUndefined;
24
25
  return result;
25
26
  }
26
27
  function debounced() {
@@ -32,36 +33,36 @@ function baseDebounce(func, wait, immediate, __throttle__) {
32
33
  lastArgs = args;
33
34
  var time = Date.now();
34
35
  var isInvoke = shouldInvoke(time);
35
- var waitTime = !__throttle__ ? wait : !isInvoke && lastCallTime !== undefined && timer === undefined ? wait - (time - lastCallTime) : wait;
36
+ var waitTime = !__throttle__ ? wait : !isInvoke && lastCallTime !== nativeUndefined && timer === nativeUndefined ? wait - (time - lastCallTime) : wait;
36
37
  lastCallTime = time;
37
38
  if (isInvoke) {
38
- if (immediate && timer === undefined) {
39
+ if (immediate && timer === nativeUndefined) {
39
40
  return invokeFunc(time);
40
41
  }
41
42
  }
42
- if (timer !== undefined && !__throttle__) {
43
+ if (timer !== nativeUndefined && !__throttle__) {
43
44
  clearTimeout(timer);
44
- timer = undefined;
45
+ timer = nativeUndefined;
45
46
  }
46
- if (timer === undefined) {
47
+ if (timer === nativeUndefined) {
47
48
  timer = setTimeout(function () {
48
- timer = undefined;
49
+ timer = nativeUndefined;
49
50
  invokeFunc(Date.now());
50
51
  }, waitTime);
51
52
  }
52
53
  return result;
53
54
  }
54
55
  function cancel() {
55
- if (timer !== undefined) {
56
+ if (timer !== nativeUndefined) {
56
57
  clearTimeout(timer);
57
- timer = undefined;
58
+ timer = nativeUndefined;
58
59
  }
59
- lastCallTime = timer = lastArgs = lastThis = undefined;
60
+ lastCallTime = timer = lastArgs = lastThis = nativeUndefined;
60
61
  }
61
62
  function flush() {
62
- if (timer !== undefined) {
63
+ if (timer !== nativeUndefined) {
63
64
  clearTimeout(timer);
64
- timer = undefined;
65
+ timer = nativeUndefined;
65
66
  if (lastArgs) {
66
67
  return invokeFunc(Date.now());
67
68
  }
@@ -69,7 +70,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
69
70
  return result;
70
71
  }
71
72
  function pending() {
72
- return timer !== undefined;
73
+ return timer !== nativeUndefined;
73
74
  }
74
75
  debounced.cancel = cancel;
75
76
  debounced.flush = flush;
@@ -1,31 +1,24 @@
1
+ import isNumber from '../isNumber.js';
1
2
  import isSymbol from '../isSymbol.js';
2
3
  import toString from '../toString.js';
3
4
 
4
- function compareAsc(value, other) {
5
- var valueIsSymbol = isSymbol(value);
6
- var otherIsSymbol = isSymbol(other);
7
- var valueStr = toString(value);
8
- var otherStr = toString(other);
9
- if (!otherIsSymbol && (valueIsSymbol || valueStr > otherStr)) {
10
- return 1;
11
- }
12
- if (!valueIsSymbol && (otherIsSymbol || valueStr < otherStr)) {
13
- return -1;
14
- }
15
- return 0;
16
- }
17
- function compareDesc(value, other) {
18
- var valueIsSymbol = isSymbol(value);
19
- var otherIsSymbol = isSymbol(other);
20
- var valueStr = toString(value);
21
- var otherStr = toString(other);
22
- if (!otherIsSymbol && (valueIsSymbol || valueStr > otherStr)) {
23
- return -1;
24
- }
25
- if (!valueIsSymbol && (otherIsSymbol || valueStr < otherStr)) {
26
- return 1;
5
+ function createCompare(dir) {
6
+ var asc = dir === 1;
7
+ function wrapper(value, other) {
8
+ var valueIsSymbol = isSymbol(value);
9
+ var otherIsSymbol = isSymbol(other);
10
+ var isNeedConvertString = !valueIsSymbol && !otherIsSymbol && !(isNumber(value) && isNumber(other));
11
+ var _value = isNeedConvertString ? toString(value) : value;
12
+ var _other = isNeedConvertString ? toString(other) : other;
13
+ if (!otherIsSymbol && (valueIsSymbol || _value > _other)) {
14
+ return asc ? 1 : -1;
15
+ }
16
+ if (!valueIsSymbol && (otherIsSymbol || _value < _other)) {
17
+ return asc ? -1 : 1;
18
+ }
19
+ return 0;
27
20
  }
28
- return 0;
21
+ return wrapper;
29
22
  }
30
23
  function compareMultiple(object, other, orders) {
31
24
  var objCriteria = object.criteria;
@@ -34,7 +27,7 @@ function compareMultiple(object, other, orders) {
34
27
  var index = -1;
35
28
  while (++index < length) {
36
29
  var order = orders[index];
37
- var cmpFn = typeof order === 'function' ? order : order === 'desc' ? compareDesc : compareAsc;
30
+ var cmpFn = typeof order === 'function' ? order : order === 'desc' ? createCompare(0) : createCompare(1);
38
31
  var result = cmpFn(objCriteria[index], othCriteria[index]);
39
32
  if (result) {
40
33
  return result;
@@ -43,4 +36,4 @@ function compareMultiple(object, other, orders) {
43
36
  return object.index - other.index;
44
37
  }
45
38
 
46
- export { compareAsc, compareDesc, compareMultiple };
39
+ export { compareMultiple };
@@ -1,6 +1,7 @@
1
1
  import isArray from '../isArray.js';
2
2
  import isSymbol from '../isSymbol.js';
3
3
  import createIteratee from './createIteratee.js';
4
+ import { nativeUndefined } from './native.js';
4
5
 
5
6
  function createExtremum(array, comparator, iteratee) {
6
7
  if (!isArray(array)) {
@@ -8,9 +9,9 @@ function createExtremum(array, comparator, iteratee) {
8
9
  }
9
10
  var result, computed;
10
11
  var internalIteratee = createIteratee(iteratee);
11
- array.forEach(function (value) {
12
- var current = internalIteratee(value);
13
- if (current != null && (computed === undefined ? current === current && !isSymbol(current) : comparator(current, computed))) {
12
+ array.forEach(function (value, index) {
13
+ var current = internalIteratee(value, index, array);
14
+ if (current != null && (computed === nativeUndefined ? current === current && !isSymbol(current) : comparator(current, computed))) {
14
15
  computed = current;
15
16
  result = value;
16
17
  }
@@ -1,11 +1,11 @@
1
+ import allKeys from '../allKeys.js';
1
2
  import identity from '../identity.js';
2
3
  import isArrayLike from '../isArrayLike.js';
3
- import keys from '../keys.js';
4
4
 
5
5
  function createForEach(dir) {
6
6
  var forEach = function (collection, iteratee) {
7
7
  if (iteratee === void 0) { iteratee = identity; }
8
- var _keys = !isArrayLike(collection) && keys(collection);
8
+ var _keys = !isArrayLike(collection) && allKeys(collection);
9
9
  var len = (_keys || collection).length;
10
10
  var i = dir > 0 ? 0 : len - 1;
11
11
  while (i >= 0 && i < len) {
@@ -1,10 +1,10 @@
1
+ import allKeys from '../allKeys.js';
1
2
  import identity from '../identity.js';
2
3
  import isArrayLike from '../isArrayLike.js';
3
- import keys from '../keys.js';
4
4
 
5
5
  function createReduce(dir) {
6
6
  function reducer(collection, iteratee, memo, initial) {
7
- var _keys = !isArrayLike(collection) && keys(collection);
7
+ var _keys = !isArrayLike(collection) && allKeys(collection);
8
8
  var len = (_keys || collection).length;
9
9
  var i = dir > 0 ? 0 : len - 1;
10
10
  if (!initial && len > 0) {
@@ -1,12 +1,12 @@
1
- import { dataViewTag, mapTag, promiseTag, setTag, weakMapTag, objectTag } from './native.js';
1
+ import { dataViewTag, mapTag, promiseTag, setTag, weakMapTag, stringUndefined, objectTag, nativeUndefined } from './native.js';
2
2
  import { toSource } from './helpers.js';
3
3
  import getTag from './getTag.js';
4
4
 
5
- var dataViewExisted = typeof DataView !== 'undefined';
6
- var mapExisted = typeof Map !== 'undefined';
7
- var promiseExisted = typeof Promise !== 'undefined';
8
- var setExisted = typeof Set !== 'undefined';
9
- var weakMapExisted = typeof WeakMap !== 'undefined';
5
+ var dataViewExisted = typeof DataView !== stringUndefined;
6
+ var mapExisted = typeof Map !== stringUndefined;
7
+ var promiseExisted = typeof Promise !== stringUndefined;
8
+ var setExisted = typeof Set !== stringUndefined;
9
+ var weakMapExisted = typeof WeakMap !== stringUndefined;
10
10
  var dataViewCtorString = toSource(DataView);
11
11
  var mapCtorString = toSource(Map);
12
12
  var promiseCtorString = toSource(Promise);
@@ -20,7 +20,7 @@ if ((dataViewExisted && getTag(new DataView(new ArrayBuffer(1))) !== dataViewTag
20
20
  (weakMapExisted && getTag(new WeakMap()) !== weakMapTag)) {
21
21
  getTagWithBugfix = function (value) {
22
22
  var result = getTag(value);
23
- var Ctor = result === objectTag ? value.constructor : undefined;
23
+ var Ctor = result === objectTag ? value.constructor : nativeUndefined;
24
24
  var ctorString = Ctor ? toSource(Ctor) : '';
25
25
  if (ctorString) {
26
26
  switch (ctorString) {
@@ -1,7 +1,7 @@
1
1
  import getTag from './getTag.js';
2
2
  import { argumentsTag, functionProtoToString } from './native.js';
3
3
 
4
- var VERSION = "1.8.0";
4
+ var VERSION = "1.9.0";
5
5
  var supportedArgumentsType = getTag((function () { return arguments; })()) === argumentsTag;
6
6
  var FUNC_ERROR_TEXT = 'Expected a function';
7
7
  function toSource(func) {
@@ -1,7 +1,7 @@
1
1
  import allKeys from '../allKeys.js';
2
2
  import eq from '../eq.js';
3
3
  import getTagWithBugfix from './getTagWithBugfix.js';
4
- import { symbolProto, arrayBufferTag, dataViewTag, errorTag, symbolTag, regExpTag, stringTag, dateTag, booleanTag, numberTag, objectTag, objectProtoHasOwnProperty, argumentsTag, setTag, mapTag, arrayTag, arrayProtoSlice } from './native.js';
4
+ import { symbolProto, nativeUndefined, arrayBufferTag, dataViewTag, errorTag, symbolTag, regExpTag, stringTag, dateTag, booleanTag, numberTag, objectTag, objectProtoHasOwnProperty, argumentsTag, setTag, mapTag, arrayTag, arrayProtoSlice } from './native.js';
5
5
  import isBuffer from '../isBuffer.js';
6
6
  import isFunction from '../isFunction.js';
7
7
  import isNil from '../isNil.js';
@@ -9,7 +9,7 @@ import isObjectLike from '../isObjectLike.js';
9
9
  import isTypedArray from '../isTypedArray.js';
10
10
  import orderBy from '../orderBy.js';
11
11
 
12
- var symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
12
+ var symbolValueOf = symbolProto ? symbolProto.valueOf : nativeUndefined;
13
13
  function mapToArray(map) {
14
14
  var result = [];
15
15
  map.forEach(function (value, key) {
@@ -122,7 +122,7 @@ function isEqualDeep(value, other, customizer, strictCheck, valueStack, otherSta
122
122
  while (length--) {
123
123
  if (hasCustomizer) {
124
124
  var compared = customizer(value[length], other[length], length, value, other, valueStack, otherStack);
125
- if (compared !== undefined) {
125
+ if (compared !== nativeUndefined) {
126
126
  if (!compared) {
127
127
  return false;
128
128
  }
@@ -145,7 +145,7 @@ function isEqualDeep(value, other, customizer, strictCheck, valueStack, otherSta
145
145
  var key = keys[length];
146
146
  if (hasCustomizer) {
147
147
  var compared = customizer(value[key], other[key], key, value, other, valueStack, otherStack);
148
- if (compared !== undefined) {
148
+ if (compared !== nativeUndefined) {
149
149
  if (!compared) {
150
150
  return false;
151
151
  }
@@ -1,3 +1,6 @@
1
+ var nativeUndefined = void 0;
2
+ var stringUndefined = 'undefined';
3
+ var stringObject = 'object';
1
4
  var objectProto = Object.prototype;
2
5
  var objectProtoToString = objectProto.toString;
3
6
  var objectProtoHasOwnProperty = objectProto.hasOwnProperty;
@@ -7,8 +10,8 @@ var objectGetPrototypeOf = Object.getPrototypeOf;
7
10
  var objectKeys = Object.keys;
8
11
  var functionProto = Function.prototype;
9
12
  var functionProtoToString = functionProto.toString;
10
- var symbolExisted = typeof Symbol !== 'undefined';
11
- var symbolProto = symbolExisted ? Symbol.prototype : undefined;
13
+ var symbolExisted = typeof Symbol !== stringUndefined;
14
+ var symbolProto = symbolExisted ? Symbol.prototype : nativeUndefined;
12
15
  var arrayProto = Array.prototype;
13
16
  var arrayProtoSlice = arrayProto.slice;
14
17
  var mathMin = Math.min;
@@ -20,9 +23,9 @@ var mathAbs = Math.abs;
20
23
  var numberIsFinite = Number.isFinite;
21
24
  var numberIsInteger = Number.isInteger;
22
25
  var numberIsSafeInteger = Number.isSafeInteger;
23
- var globalThisExisted = typeof globalThis === 'object' && globalThis;
24
- var globalExisted = typeof global === 'object' && global;
25
- var selfExisted = typeof self === 'object' && self;
26
+ var globalThisExisted = typeof globalThis === stringObject && globalThis;
27
+ var globalExisted = typeof global === stringObject && global;
28
+ var selfExisted = typeof self === stringObject && self;
26
29
  var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
27
30
  var MIN_SAFE_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991;
28
31
  var MAX_ARRAY_LENGTH = 4294967295;
@@ -49,4 +52,4 @@ var promiseTag = '[object Promise]';
49
52
  var setTag = '[object Set]';
50
53
  var weakMapTag = '[object WeakMap]';
51
54
 
52
- export { MAX_ARRAY_LENGTH, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, argumentsTag, arrayBufferTag, arrayProto, arrayProtoSlice, arrayTag, bigIntTag, blobTag, booleanTag, dataViewTag, dateTag, domExceptionTag, errorTag, functionProto, functionProtoToString, functionTags, globalExisted, globalThisExisted, mapTag, mathAbs, mathCeil, mathFloor, mathMax, mathMin, mathRandom, numberIsFinite, numberIsInteger, numberIsSafeInteger, numberTag, objectGetOwnPropertySymbols, objectGetPrototypeOf, objectKeys, objectProto, objectProtoHasOwnProperty, objectProtoPropertyIsEnumerable, objectProtoToString, objectTag, promiseTag, regExpTag, selfExisted, setTag, stringTag, symbolProto, symbolTag, typedArrayTags, weakMapTag, weakSetTag };
55
+ export { MAX_ARRAY_LENGTH, MAX_SAFE_INTEGER, MIN_SAFE_INTEGER, argumentsTag, arrayBufferTag, arrayProto, arrayProtoSlice, arrayTag, bigIntTag, blobTag, booleanTag, dataViewTag, dateTag, domExceptionTag, errorTag, functionProto, functionProtoToString, functionTags, globalExisted, globalThisExisted, mapTag, mathAbs, mathCeil, mathFloor, mathMax, mathMin, mathRandom, nativeUndefined, numberIsFinite, numberIsInteger, numberIsSafeInteger, numberTag, objectGetOwnPropertySymbols, objectGetPrototypeOf, objectKeys, objectProto, objectProtoHasOwnProperty, objectProtoPropertyIsEnumerable, objectProtoToString, objectTag, promiseTag, regExpTag, selfExisted, setTag, stringObject, stringTag, stringUndefined, symbolProto, symbolTag, typedArrayTags, weakMapTag, weakSetTag };
@@ -1,5 +1,7 @@
1
- var freeExports = typeof exports === 'object' && exports && !exports.nodeType && exports;
2
- var freeModule = freeExports && typeof module === 'object' && module && !module.nodeType && module;
1
+ import { stringObject } from './native.js';
2
+
3
+ var freeExports = typeof exports === stringObject && exports && !exports.nodeType && exports;
4
+ var freeModule = freeExports && typeof module === stringObject && module && !module.nodeType && module;
3
5
  var nodeUtil = (function () {
4
6
  try {
5
7
  var types = freeModule && freeModule.require && freeModule.require('util').types;
package/es/invert.js CHANGED
@@ -1,10 +1,10 @@
1
+ import allKeys from './allKeys.js';
1
2
  import { stubTrue } from './internals/helpers.js';
2
3
  import { objectProtoToString } from './internals/native.js';
3
- import keys from './keys.js';
4
4
 
5
5
  function invert(object, predicate) {
6
6
  if (predicate === void 0) { predicate = stubTrue; }
7
- var _keys = keys(object);
7
+ var _keys = allKeys(object);
8
8
  var result = {};
9
9
  _keys.forEach(function (key) {
10
10
  var value = object[key];
package/es/isBlob.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import getTag from './internals/getTag.js';
2
- import { blobTag } from './internals/native.js';
2
+ import { blobTag, stringUndefined } from './internals/native.js';
3
3
 
4
- var blobExisted = typeof Blob !== 'undefined';
4
+ var blobExisted = typeof Blob !== stringUndefined;
5
5
  function isBlob(value) {
6
6
  if (blobExisted && value instanceof Blob) {
7
7
  return true;
package/es/isEmpty.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import getTag from './internals/getTag.js';
2
- import keys from './internals/specialKeys.js';
3
2
  import { mapTag, setTag } from './internals/native.js';
4
3
  import isArrayLike from './isArrayLike.js';
5
4
  import isNil from './isNil.js';
6
5
  import isObjectLike from './isObjectLike.js';
6
+ import allKeys from './allKeys.js';
7
7
 
8
8
  function isEmpty(value) {
9
9
  if (isNil(value)) {
@@ -14,7 +14,7 @@ function isEmpty(value) {
14
14
  return !value.size;
15
15
  }
16
16
  if (isObjectLike(value)) {
17
- return !keys(value).length;
17
+ return !allKeys(value).length;
18
18
  }
19
19
  if (isArrayLike(value)) {
20
20
  return !value.length;
package/es/isEqual.js CHANGED
@@ -1,10 +1,11 @@
1
1
  import isEqualDeep from './internals/isEqualDeep.js';
2
+ import { nativeUndefined } from './internals/native.js';
2
3
 
3
4
  function isEqual(value, other, customizer, strictCheck) {
4
5
  if (strictCheck === void 0) { strictCheck = false; }
5
6
  if (typeof customizer === 'function') {
6
7
  var result = customizer(value, other);
7
- if (result !== undefined) {
8
+ if (result !== nativeUndefined) {
8
9
  return !!result;
9
10
  }
10
11
  }
package/es/isMatch.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import allKeys from './allKeys.js';
2
2
  import getTag from './internals/getTag.js';
3
- import { objectTag } from './internals/native.js';
3
+ import { nativeUndefined, objectTag } from './internals/native.js';
4
4
  import isEqualDeep from './internals/isEqualDeep.js';
5
5
 
6
6
  function isDeepComparable(object, source) {
@@ -28,7 +28,7 @@ function baseIsMatch(object, source, customizer, strictCheck, objStack, srcStack
28
28
  }
29
29
  if (hasCustomizer) {
30
30
  var compared = customizer(object[key], source[key], key, object, source, objStack, srcStack);
31
- if (compared !== undefined) {
31
+ if (compared !== nativeUndefined) {
32
32
  if (!compared) {
33
33
  return false;
34
34
  }
@@ -46,7 +46,7 @@ function baseIsMatch(object, source, customizer, strictCheck, objStack, srcStack
46
46
  var result = isEqualDeep(object, source, function (objValue, srcValue, k, obj, src) {
47
47
  if (hasCustomizer) {
48
48
  var compared = customizer(objValue, srcValue, k, obj, src, objStack, srcStack);
49
- if (compared !== undefined) {
49
+ if (compared !== nativeUndefined) {
50
50
  return compared;
51
51
  }
52
52
  }
@@ -60,11 +60,11 @@ function isMatch(object, source, customizer, strictCheck) {
60
60
  if (strictCheck === void 0) { strictCheck = false; }
61
61
  if (typeof customizer === 'function') {
62
62
  var compared = customizer(object, source);
63
- if (compared !== undefined) {
63
+ if (compared !== nativeUndefined) {
64
64
  return !!compared;
65
65
  }
66
66
  }
67
- return baseIsMatch(object, source, customizer, strictCheck, undefined, undefined);
67
+ return baseIsMatch(object, source, customizer, strictCheck, nativeUndefined, nativeUndefined);
68
68
  }
69
69
 
70
70
  export { isMatch as default };
package/es/isUndefined.js CHANGED
@@ -1,5 +1,7 @@
1
+ import { nativeUndefined } from './internals/native.js';
2
+
1
3
  function isUndefined(value) {
2
- return value === void 0;
4
+ return value === nativeUndefined;
3
5
  }
4
6
 
5
7
  export { isUndefined as default };
package/es/keyBy.js CHANGED
@@ -6,8 +6,8 @@ var keyBy = function (collection, iteratee) {
6
6
  if (iteratee === void 0) { iteratee = identity; }
7
7
  var result = {};
8
8
  var internalIteratee = createIteratee(iteratee);
9
- forEach(collection, function (item) {
10
- var key = internalIteratee(item);
9
+ forEach(collection, function (item, index, arr) {
10
+ var key = internalIteratee(item, index, arr);
11
11
  result[key] = item;
12
12
  });
13
13
  return result;
package/es/max.js CHANGED
@@ -1,8 +1,9 @@
1
1
  import { baseGt } from './internals/comparator.js';
2
2
  import createExtremum from './internals/createExtremum.js';
3
3
 
4
- function max(array, iteratee) {
4
+ var max = function (array, iteratee) {
5
5
  return createExtremum(array, baseGt, iteratee);
6
- }
6
+ };
7
+ var max$1 = max;
7
8
 
8
- export { max as default };
9
+ export { max$1 as default };
package/es/merge.js CHANGED
@@ -1,8 +1,9 @@
1
- import keysIn from './keysIn.js';
2
1
  import isArray from './isArray.js';
3
2
  import isObject from './isObject.js';
4
3
  import isObjectLike from './isObjectLike.js';
5
4
  import isPlainObject from './isPlainObject.js';
5
+ import { nativeUndefined } from './internals/native.js';
6
+ import allKeys from './allKeys.js';
6
7
 
7
8
  function baseMerge(object, source, getKeys, customizer, stack) {
8
9
  if (stack === void 0) { stack = new WeakMap(); }
@@ -19,8 +20,8 @@ function baseMerge(object, source, getKeys, customizer, stack) {
19
20
  obj[key] = srcValue;
20
21
  }
21
22
  else {
22
- var newValue = hasCustomizer ? customizer(obj[key], srcValue, key, obj, source) : undefined;
23
- if (newValue !== undefined) {
23
+ var newValue = hasCustomizer ? customizer(obj[key], srcValue, key, obj, source) : nativeUndefined;
24
+ if (newValue !== nativeUndefined) {
24
25
  obj[key] = newValue;
25
26
  }
26
27
  else {
@@ -38,7 +39,7 @@ function baseMerge(object, source, getKeys, customizer, stack) {
38
39
  if (newObjValue) {
39
40
  obj[key] = baseMerge(newObjValue, srcValue, getKeys, customizer, stack);
40
41
  }
41
- else if (srcValue !== undefined || !(key in obj)) {
42
+ else if (srcValue !== nativeUndefined || !(key in obj)) {
42
43
  obj[key] = srcValue;
43
44
  }
44
45
  }
@@ -47,7 +48,7 @@ function baseMerge(object, source, getKeys, customizer, stack) {
47
48
  return obj;
48
49
  }
49
50
  function merge(object, source, customizer, getKeys) {
50
- if (getKeys === void 0) { getKeys = keysIn; }
51
+ if (getKeys === void 0) { getKeys = allKeys; }
51
52
  return baseMerge(object, source, getKeys, customizer);
52
53
  }
53
54
 
package/es/min.js CHANGED
@@ -1,8 +1,9 @@
1
1
  import { baseLt } from './internals/comparator.js';
2
2
  import createExtremum from './internals/createExtremum.js';
3
3
 
4
- function min(array, iteratee) {
4
+ var min = function (array, iteratee) {
5
5
  return createExtremum(array, baseLt, iteratee);
6
- }
6
+ };
7
+ var min$1 = min;
7
8
 
8
- export { min as default };
9
+ export { min$1 as default };
package/es/nth.js CHANGED
@@ -1,9 +1,10 @@
1
+ import { nativeUndefined } from './internals/native.js';
1
2
  import isArrayLike from './isArrayLike.js';
2
3
 
3
4
  function nth(array, n) {
4
5
  if (n === void 0) { n = 0; }
5
6
  if (!isArrayLike(array)) {
6
- return undefined;
7
+ return nativeUndefined;
7
8
  }
8
9
  n += n < 0 ? array.length : 0;
9
10
  return array[n];
package/es/orderBy.js CHANGED
@@ -3,14 +3,15 @@ import createIteratee from './internals/createIteratee.js';
3
3
  import { compareMultiple } from './internals/compare.js';
4
4
  import isArray from './isArray.js';
5
5
  import forEach from './forEach.js';
6
+ import { nativeUndefined } from './internals/native.js';
6
7
 
7
8
  var orderBy = function (collection, iteratees, orders) {
8
9
  var result = [];
9
- iteratees = (isArray(iteratees) ? iteratees : iteratees !== undefined ? [iteratees] : [identity]);
10
- orders = (isArray(orders) ? orders : orders !== undefined ? [orders] : []);
10
+ iteratees = (isArray(iteratees) ? iteratees : iteratees !== nativeUndefined ? [iteratees] : [identity]);
11
+ orders = (isArray(orders) ? orders : orders !== nativeUndefined ? [orders] : []);
11
12
  var index = -1;
12
- forEach(collection, function (item) {
13
- var criteria = iteratees.map(function (iteratee) { return createIteratee(iteratee)(item); });
13
+ forEach(collection, function (item, key, arr) {
14
+ var criteria = iteratees.map(function (iteratee) { return createIteratee(iteratee)(item, key, arr); });
14
15
  result.push({
15
16
  criteria: criteria,
16
17
  index: ++index,
package/es/partition.js CHANGED
@@ -6,8 +6,8 @@ var partition = function (collection, predicate) {
6
6
  if (predicate === void 0) { predicate = identity; }
7
7
  var result = [[], []];
8
8
  var internalIteratee = createIteratee(predicate);
9
- forEach(collection, function (item) {
10
- result[internalIteratee(item) ? 0 : 1].push(item);
9
+ forEach(collection, function (item, index, arr) {
10
+ result[internalIteratee(item, index, arr) ? 0 : 1].push(item);
11
11
  });
12
12
  return result;
13
13
  };