ut2 1.19.1 → 1.20.1

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/ut2.js CHANGED
@@ -607,7 +607,7 @@
607
607
  return value == null || value !== value ? defaultValue : value;
608
608
  };
609
609
 
610
- var VERSION = "1.19.1";
610
+ var VERSION = "1.20.1";
611
611
  var isBrowser = typeof window !== stringUndefined && isObjectLike(window) && typeof document !== stringUndefined && isObjectLike(document) && window.document === document;
612
612
  var supportedArgumentsType = getTag((function () { return arguments; })()) === argumentsTag;
613
613
  var FUNC_ERROR_TEXT = 'Expected a function';
@@ -616,12 +616,12 @@
616
616
  try {
617
617
  return functionProtoToString.call(func);
618
618
  }
619
- catch (e) {
619
+ catch (err) {
620
620
  }
621
621
  try {
622
622
  return func + '';
623
623
  }
624
- catch (e) {
624
+ catch (err) {
625
625
  }
626
626
  }
627
627
  return '';
@@ -748,9 +748,7 @@
748
748
  if (timer !== nativeUndefined) {
749
749
  clearTimeout(timer);
750
750
  timer = nativeUndefined;
751
- if (lastArgs) {
752
- return invokeFunc(Date.now());
753
- }
751
+ return invokeFunc(Date.now());
754
752
  }
755
753
  return result;
756
754
  }
@@ -1004,7 +1002,7 @@
1004
1002
  return types;
1005
1003
  }
1006
1004
  }
1007
- catch (e) {
1005
+ catch (err) {
1008
1006
  }
1009
1007
  })();
1010
1008
  var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer;
@@ -1651,7 +1649,7 @@
1651
1649
  }
1652
1650
 
1653
1651
  function toKey(value) {
1654
- return isSymbol(value) ? value : toString(value);
1652
+ return isSymbol(value) ? value : isNil(value) ? value + '' : toString(value);
1655
1653
  }
1656
1654
  function toPath(value, object) {
1657
1655
  if (isArray(value)) {
@@ -1752,6 +1750,37 @@
1752
1750
  return getKeysIn(object);
1753
1751
  }
1754
1752
 
1753
+ function hasPath(object, key, hasFunc) {
1754
+ var paths = toPath(key, object);
1755
+ var length = paths.length;
1756
+ var index = 0;
1757
+ var result = true;
1758
+ while (!isNil(object) && index < length) {
1759
+ var key_1 = paths[index];
1760
+ result = hasFunc(object, key_1);
1761
+ if (!result) {
1762
+ break;
1763
+ }
1764
+ object = object[key_1];
1765
+ index++;
1766
+ }
1767
+ return !!index && index === length && result;
1768
+ }
1769
+
1770
+ function baseHas(object, key) {
1771
+ return objectProtoHasOwnProperty.call(object, key);
1772
+ }
1773
+ function has(object, key) {
1774
+ return !isNil(object) && hasPath(object, key, baseHas);
1775
+ }
1776
+
1777
+ function baseHasIn(object, key) {
1778
+ return key in Object(object);
1779
+ }
1780
+ function hasIn(object, key) {
1781
+ return !isNil(object) && hasPath(object, key, baseHasIn);
1782
+ }
1783
+
1755
1784
  function baseMerge(object, source, getKeys, customizer, stack) {
1756
1785
  if (stack === void 0) { stack = new WeakMap(); }
1757
1786
  var obj = Object(object);
@@ -1894,7 +1923,7 @@
1894
1923
  return isNil(parent) ? true : delete parent[nth(paths, -1)];
1895
1924
  }
1896
1925
 
1897
- var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
1926
+ var reAsciiWord = /[^\x20-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
1898
1927
  function words(string, pattern) {
1899
1928
  if (pattern === void 0) { pattern = reAsciiWord; }
1900
1929
  return string.match(pattern) || [];
@@ -2237,6 +2266,8 @@
2237
2266
  exports.gt = gt;
2238
2267
  exports.gte = gte;
2239
2268
  exports.guard = guard;
2269
+ exports.has = has;
2270
+ exports.hasIn = hasIn;
2240
2271
  exports.identity = identity;
2241
2272
  exports.inRange = inRange;
2242
2273
  exports.intersection = intersection;