ut2 1.7.1 → 1.8.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 (115) hide show
  1. package/README.md +138 -134
  2. package/dist/ut2.js +121 -65
  3. package/dist/ut2.js.map +1 -1
  4. package/dist/ut2.min.js +1 -1
  5. package/dist/ut2.min.js.map +1 -1
  6. package/es/clamp.js +4 -3
  7. package/es/conforms.js +4 -3
  8. package/es/conformsTo.js +4 -3
  9. package/es/countBy.js +4 -3
  10. package/es/curry.js +32 -0
  11. package/es/defaultTo.js +4 -3
  12. package/es/every.js +4 -3
  13. package/es/filter.js +4 -3
  14. package/es/find.js +4 -3
  15. package/es/fromPairs.js +4 -3
  16. package/es/groupBy.js +4 -3
  17. package/es/index.js +4 -0
  18. package/es/internals/baseDebounce.js +2 -8
  19. package/es/internals/createForEach.js +2 -2
  20. package/es/internals/createReduce.js +2 -2
  21. package/es/internals/helpers.js +3 -2
  22. package/es/internals/native.js +2 -1
  23. package/es/invert.js +22 -0
  24. package/es/isBigInt.js +8 -0
  25. package/es/keyBy.js +4 -3
  26. package/es/map.js +4 -3
  27. package/es/omit.js +4 -3
  28. package/es/orderBy.js +4 -3
  29. package/es/partial.js +16 -11
  30. package/es/partition.js +4 -3
  31. package/es/pascalCase.js +11 -0
  32. package/es/pick.js +4 -3
  33. package/es/range.js +4 -3
  34. package/es/some.js +4 -3
  35. package/es/times.js +4 -3
  36. package/lib/clamp.js +4 -3
  37. package/lib/conforms.js +4 -3
  38. package/lib/conformsTo.js +4 -3
  39. package/lib/countBy.js +4 -3
  40. package/lib/curry.js +34 -0
  41. package/lib/defaultTo.js +4 -3
  42. package/lib/every.js +4 -3
  43. package/lib/filter.js +4 -3
  44. package/lib/find.js +4 -3
  45. package/lib/fromPairs.js +4 -3
  46. package/lib/groupBy.js +4 -3
  47. package/lib/index.js +12 -4
  48. package/lib/internals/baseDebounce.js +2 -8
  49. package/lib/internals/createForEach.js +2 -2
  50. package/lib/internals/createReduce.js +2 -2
  51. package/lib/internals/helpers.js +2 -1
  52. package/lib/internals/native.js +1 -0
  53. package/lib/invert.js +24 -0
  54. package/lib/isBigInt.js +10 -0
  55. package/lib/keyBy.js +4 -3
  56. package/lib/map.js +4 -3
  57. package/lib/omit.js +4 -3
  58. package/lib/orderBy.js +4 -3
  59. package/lib/partial.js +16 -11
  60. package/lib/partition.js +4 -3
  61. package/lib/pascalCase.js +13 -0
  62. package/lib/pick.js +4 -3
  63. package/lib/range.js +4 -3
  64. package/lib/some.js +4 -3
  65. package/lib/times.js +4 -3
  66. package/package.json +26 -24
  67. package/types/after.d.ts +2 -1
  68. package/types/allKeys.d.ts +1 -1
  69. package/types/allKeysIn.d.ts +1 -1
  70. package/types/before.d.ts +2 -1
  71. package/types/clamp.d.ts +29 -2
  72. package/types/conforms.d.ts +7 -2
  73. package/types/conformsTo.d.ts +24 -3
  74. package/types/countBy.d.ts +28 -2
  75. package/types/curry.d.ts +123 -0
  76. package/types/debounce.d.ts +2 -1
  77. package/types/defaultTo.d.ts +6 -3
  78. package/types/delay.d.ts +2 -1
  79. package/types/every.d.ts +28 -4
  80. package/types/filter.d.ts +26 -4
  81. package/types/find.d.ts +26 -4
  82. package/types/forEach.d.ts +1 -6
  83. package/types/forEachRight.d.ts +1 -6
  84. package/types/fromPairs.d.ts +20 -2
  85. package/types/groupBy.d.ts +28 -2
  86. package/types/index.d.ts +4 -0
  87. package/types/internals/baseDebounce.d.ts +2 -1
  88. package/types/internals/createForEach.d.ts +7 -6
  89. package/types/internals/createReduce.d.ts +11 -10
  90. package/types/internals/helpers.d.ts +1 -0
  91. package/types/internals/native.d.ts +1 -0
  92. package/types/internals/types.d.ts +3 -0
  93. package/types/invert.d.ts +19 -0
  94. package/types/isBigInt.d.ts +22 -0
  95. package/types/isFunction.d.ts +2 -1
  96. package/types/keyBy.d.ts +28 -2
  97. package/types/keys.d.ts +1 -1
  98. package/types/keysIn.d.ts +1 -1
  99. package/types/map.d.ts +28 -4
  100. package/types/negate.d.ts +2 -1
  101. package/types/omit.d.ts +6 -1
  102. package/types/omitBy.d.ts +3 -2
  103. package/types/once.d.ts +2 -1
  104. package/types/orderBy.d.ts +43 -2
  105. package/types/partial.d.ts +63 -11
  106. package/types/partition.d.ts +38 -2
  107. package/types/pascalCase.d.ts +27 -0
  108. package/types/pick.d.ts +6 -1
  109. package/types/pickBy.d.ts +3 -2
  110. package/types/range.d.ts +28 -3
  111. package/types/reduce.d.ts +1 -10
  112. package/types/reduceRight.d.ts +1 -10
  113. package/types/some.d.ts +26 -4
  114. package/types/throttle.d.ts +2 -1
  115. package/types/times.d.ts +25 -2
package/lib/countBy.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var forEach = require('./forEach.js');
4
4
  var createIteratee = require('./internals/createIteratee.js');
5
5
 
6
- function countBy(collection, iteratee) {
6
+ var countBy = function (collection, iteratee) {
7
7
  var result = {};
8
8
  var internalIteratee = createIteratee(iteratee);
9
9
  forEach(collection, function (item) {
@@ -16,6 +16,7 @@ function countBy(collection, iteratee) {
16
16
  }
17
17
  });
18
18
  return result;
19
- }
19
+ };
20
+ var countBy$1 = countBy;
20
21
 
21
- module.exports = countBy;
22
+ module.exports = countBy$1;
package/lib/curry.js ADDED
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ var native = require('./internals/native.js');
4
+ var isUndefined = require('./isUndefined.js');
5
+ var toInteger = require('./toInteger.js');
6
+
7
+ var PLACEHOLDER = {
8
+ __ut2_curry_ph__: null
9
+ };
10
+ var curry = function (func, arity) {
11
+ arity = isUndefined(arity) ? func.length : native.mathMax(toInteger(arity), 0);
12
+ function wrap() {
13
+ var args = native.arrayProtoSlice.call(arguments);
14
+ var context = this;
15
+ function inner() {
16
+ var argsInner = native.arrayProtoSlice.call(arguments);
17
+ for (var i = 0; i < args.length; i++) {
18
+ args[i] = args[i] === PLACEHOLDER && argsInner.length > 0 ? argsInner.shift() : args[i];
19
+ }
20
+ args = args.concat(argsInner);
21
+ var realArgsLength = args.filter(function (arg) { return arg !== PLACEHOLDER; }).length;
22
+ if (realArgsLength >= arity) {
23
+ return func.apply(context, args);
24
+ }
25
+ return inner;
26
+ }
27
+ return inner();
28
+ }
29
+ return wrap;
30
+ };
31
+ curry.placeholder = curry._ = PLACEHOLDER;
32
+ var curry$1 = curry;
33
+
34
+ module.exports = curry$1;
package/lib/defaultTo.js CHANGED
@@ -1,7 +1,8 @@
1
1
  'use strict';
2
2
 
3
- function defaultTo(value, defaultValue) {
3
+ var defaultTo = function (value, defaultValue) {
4
4
  return value == null || value !== value ? defaultValue : value;
5
- }
5
+ };
6
+ var defaultTo$1 = defaultTo;
6
7
 
7
- module.exports = defaultTo;
8
+ module.exports = defaultTo$1;
package/lib/every.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
 
6
- function every(collection, predicate) {
6
+ var every = function (collection, predicate) {
7
7
  if (predicate === void 0) { predicate = identity; }
8
8
  var result = true;
9
9
  forEach(collection, function (item, index, arr) {
@@ -13,6 +13,7 @@ function every(collection, predicate) {
13
13
  }
14
14
  });
15
15
  return result;
16
- }
16
+ };
17
+ var every$1 = every;
17
18
 
18
- module.exports = every;
19
+ module.exports = every$1;
package/lib/filter.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
 
6
- function filter(array, predicate) {
6
+ var filter = function (array, predicate) {
7
7
  if (predicate === void 0) { predicate = identity; }
8
8
  var results = [];
9
9
  forEach(array, function (item, index) {
@@ -12,6 +12,7 @@ function filter(array, predicate) {
12
12
  }
13
13
  });
14
14
  return results;
15
- }
15
+ };
16
+ var filter$1 = filter;
16
17
 
17
- module.exports = filter;
18
+ module.exports = filter$1;
package/lib/find.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
 
6
- function find(collection, predicate) {
6
+ var find = function (collection, predicate) {
7
7
  if (predicate === void 0) { predicate = identity; }
8
8
  var result;
9
9
  forEach(collection, function (item, index, arr) {
@@ -13,6 +13,7 @@ function find(collection, predicate) {
13
13
  }
14
14
  });
15
15
  return result;
16
- }
16
+ };
17
+ var find$1 = find;
17
18
 
18
- module.exports = find;
19
+ module.exports = find$1;
package/lib/fromPairs.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  var isArray = require('./isArray.js');
4
4
 
5
- function fromPairs(array) {
5
+ var fromPairs = function (array) {
6
6
  var result = {};
7
7
  if (!isArray(array)) {
8
8
  return result;
@@ -11,6 +11,7 @@ function fromPairs(array) {
11
11
  result[item[0]] = item[1];
12
12
  });
13
13
  return result;
14
- }
14
+ };
15
+ var fromPairs$1 = fromPairs;
15
16
 
16
- module.exports = fromPairs;
17
+ module.exports = fromPairs$1;
package/lib/groupBy.js CHANGED
@@ -4,7 +4,7 @@ var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
  var createIteratee = require('./internals/createIteratee.js');
6
6
 
7
- function groupBy(collection, iteratee) {
7
+ var groupBy = function (collection, iteratee) {
8
8
  if (iteratee === void 0) { iteratee = identity; }
9
9
  var result = {};
10
10
  var internalIteratee = createIteratee(iteratee);
@@ -18,6 +18,7 @@ function groupBy(collection, iteratee) {
18
18
  }
19
19
  });
20
20
  return result;
21
- }
21
+ };
22
+ var groupBy$1 = groupBy;
22
23
 
23
- module.exports = groupBy;
24
+ module.exports = groupBy$1;
package/lib/index.js CHANGED
@@ -28,6 +28,7 @@ var reduceRight = require('./reduceRight.js');
28
28
  var some = require('./some.js');
29
29
  var after = require('./after.js');
30
30
  var before = require('./before.js');
31
+ var curry = require('./curry.js');
31
32
  var debounce = require('./debounce.js');
32
33
  var delay = require('./delay.js');
33
34
  var negate = require('./negate.js');
@@ -39,6 +40,7 @@ var isArray = require('./isArray.js');
39
40
  var isArrayBuffer = require('./isArrayBuffer.js');
40
41
  var isArrayLike = require('./isArrayLike.js');
41
42
  var isArrayLikeObject = require('./isArrayLikeObject.js');
43
+ var isBigInt = require('./isBigInt.js');
42
44
  var isBlob = require('./isBlob.js');
43
45
  var isBoolean = require('./isBoolean.js');
44
46
  var isBuffer = require('./isBuffer.js');
@@ -82,6 +84,7 @@ var random = require('./random.js');
82
84
  var randomInt = require('./randomInt.js');
83
85
  var allKeys = require('./allKeys.js');
84
86
  var allKeysIn = require('./allKeysIn.js');
87
+ var invert = require('./invert.js');
85
88
  var keys = require('./keys.js');
86
89
  var keysIn = require('./keysIn.js');
87
90
  var merge = require('./merge.js');
@@ -96,6 +99,7 @@ var escapeRegExp = require('./escapeRegExp.js');
96
99
  var kebabCase = require('./kebabCase.js');
97
100
  var lowerCase = require('./lowerCase.js');
98
101
  var lowerFirst = require('./lowerFirst.js');
102
+ var pascalCase = require('./pascalCase.js');
99
103
  var snakeCase = require('./snakeCase.js');
100
104
  var unescape = require('./unescape.js');
101
105
  var upperCase = require('./upperCase.js');
@@ -157,6 +161,7 @@ exports.reduceRight = reduceRight;
157
161
  exports.some = some;
158
162
  exports.after = after;
159
163
  exports.before = before;
164
+ exports.curry = curry;
160
165
  exports.debounce = debounce;
161
166
  exports.delay = delay;
162
167
  exports.negate = negate;
@@ -168,6 +173,7 @@ exports.isArray = isArray;
168
173
  exports.isArrayBuffer = isArrayBuffer;
169
174
  exports.isArrayLike = isArrayLike;
170
175
  exports.isArrayLikeObject = isArrayLikeObject;
176
+ exports.isBigInt = isBigInt;
171
177
  exports.isBlob = isBlob;
172
178
  exports.isBoolean = isBoolean;
173
179
  exports.isBuffer = isBuffer;
@@ -211,6 +217,7 @@ exports.random = random;
211
217
  exports.randomInt = randomInt;
212
218
  exports.allKeys = allKeys;
213
219
  exports.allKeysIn = allKeysIn;
220
+ exports.invert = invert;
214
221
  exports.keys = keys;
215
222
  exports.keysIn = keysIn;
216
223
  exports.merge = merge;
@@ -225,6 +232,7 @@ exports.escapeRegExp = escapeRegExp;
225
232
  exports.kebabCase = kebabCase;
226
233
  exports.lowerCase = lowerCase;
227
234
  exports.lowerFirst = lowerFirst;
235
+ exports.pascalCase = pascalCase;
228
236
  exports.snakeCase = snakeCase;
229
237
  exports.unescape = unescape;
230
238
  exports.upperCase = upperCase;
@@ -253,19 +261,19 @@ exports.toNumber = toNumber;
253
261
  exports.toSafeInteger = toSafeInteger;
254
262
  exports.toString = toString;
255
263
  exports.uniqueId = uniqueId;
256
- Object.defineProperty(exports, 'MAX_ARRAY_LENGTH', {
264
+ Object.defineProperty(exports, "MAX_ARRAY_LENGTH", {
257
265
  enumerable: true,
258
266
  get: function () { return native.MAX_ARRAY_LENGTH; }
259
267
  });
260
- Object.defineProperty(exports, 'MAX_SAFE_INTEGER', {
268
+ Object.defineProperty(exports, "MAX_SAFE_INTEGER", {
261
269
  enumerable: true,
262
270
  get: function () { return native.MAX_SAFE_INTEGER; }
263
271
  });
264
- Object.defineProperty(exports, 'MIN_SAFE_INTEGER', {
272
+ Object.defineProperty(exports, "MIN_SAFE_INTEGER", {
265
273
  enumerable: true,
266
274
  get: function () { return native.MIN_SAFE_INTEGER; }
267
275
  });
268
- Object.defineProperty(exports, 'VERSION', {
276
+ Object.defineProperty(exports, "VERSION", {
269
277
  enumerable: true,
270
278
  get: function () { return helpers.VERSION; }
271
279
  });
@@ -17,9 +17,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
17
17
  }
18
18
  var timeSinceLastCall = time - lastCallTime;
19
19
  var timeSinceLastInvoke = time - lastInvokeTime;
20
- return (timeSinceLastCall >= wait ||
21
- timeSinceLastCall < 0 ||
22
- (__throttle__ && timeSinceLastInvoke >= wait));
20
+ return timeSinceLastCall >= wait || timeSinceLastCall < 0 || (__throttle__ && timeSinceLastInvoke >= wait);
23
21
  }
24
22
  function invokeFunc(time) {
25
23
  lastInvokeTime = time;
@@ -36,11 +34,7 @@ function baseDebounce(func, wait, immediate, __throttle__) {
36
34
  lastArgs = args;
37
35
  var time = Date.now();
38
36
  var isInvoke = shouldInvoke(time);
39
- var waitTime = !__throttle__
40
- ? wait
41
- : !isInvoke && lastCallTime !== undefined && timer === undefined
42
- ? wait - (time - lastCallTime)
43
- : wait;
37
+ var waitTime = !__throttle__ ? wait : !isInvoke && lastCallTime !== undefined && timer === undefined ? wait - (time - lastCallTime) : wait;
44
38
  lastCallTime = time;
45
39
  if (isInvoke) {
46
40
  if (immediate && timer === undefined) {
@@ -5,7 +5,7 @@ var isArrayLike = require('../isArrayLike.js');
5
5
  var keys = require('../keys.js');
6
6
 
7
7
  function createForEach(dir) {
8
- function forEach(collection, iteratee) {
8
+ var forEach = function (collection, iteratee) {
9
9
  if (iteratee === void 0) { iteratee = identity; }
10
10
  var _keys = !isArrayLike(collection) && keys(collection);
11
11
  var len = (_keys || collection).length;
@@ -18,7 +18,7 @@ function createForEach(dir) {
18
18
  i += dir;
19
19
  }
20
20
  return collection;
21
- }
21
+ };
22
22
  return forEach;
23
23
  }
24
24
 
@@ -20,11 +20,11 @@ function createReduce(dir) {
20
20
  }
21
21
  return memo;
22
22
  }
23
- function reduce(collection, iteratee, initialValue) {
23
+ var reduce = function (collection, iteratee, initialValue) {
24
24
  if (iteratee === void 0) { iteratee = identity; }
25
25
  var initial = arguments.length >= 3;
26
26
  return reducer(collection, iteratee, initialValue, initial);
27
- }
27
+ };
28
28
  return reduce;
29
29
  }
30
30
 
@@ -3,7 +3,7 @@
3
3
  var getTag = require('./getTag.js');
4
4
  var native = require('./native.js');
5
5
 
6
- exports.VERSION = "1.7.1";
6
+ exports.VERSION = "1.8.0";
7
7
  exports.supportedArgumentsType = getTag((function () { return arguments; })()) === native.argumentsTag;
8
8
  exports.FUNC_ERROR_TEXT = 'Expected a function';
9
9
  function toSource(func) {
@@ -22,5 +22,6 @@ function toSource(func) {
22
22
  return '';
23
23
  }
24
24
  exports.stubFlase = function () { return false; };
25
+ exports.stubTrue = function () { return true; };
25
26
 
26
27
  exports.toSource = toSource;
@@ -28,6 +28,7 @@ exports.selfExisted = typeof self === 'object' && self;
28
28
  exports.MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || 9007199254740991;
29
29
  exports.MIN_SAFE_INTEGER = Number.MIN_SAFE_INTEGER || -9007199254740991;
30
30
  exports.MAX_ARRAY_LENGTH = 4294967295;
31
+ exports.bigIntTag = '[object BigInt]';
31
32
  exports.numberTag = '[object Number]';
32
33
  exports.booleanTag = '[object Boolean]';
33
34
  exports.stringTag = '[object String]';
package/lib/invert.js ADDED
@@ -0,0 +1,24 @@
1
+ 'use strict';
2
+
3
+ var helpers = require('./internals/helpers.js');
4
+ var native = require('./internals/native.js');
5
+ var keys = require('./keys.js');
6
+
7
+ function invert(object, predicate) {
8
+ if (predicate === void 0) { predicate = helpers.stubTrue; }
9
+ var _keys = keys(object);
10
+ var result = {};
11
+ _keys.forEach(function (key) {
12
+ var value = object[key];
13
+ if (predicate(value, key)) {
14
+ var valueStr = value != null && typeof value.toString != 'function' ? native.objectProtoToString.call(value) : value;
15
+ result[valueStr] = key;
16
+ }
17
+ else {
18
+ result[key] = value;
19
+ }
20
+ });
21
+ return result;
22
+ }
23
+
24
+ module.exports = invert;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var getTag = require('./internals/getTag.js');
4
+ var native = require('./internals/native.js');
5
+
6
+ function isBigInt(value) {
7
+ return typeof value === 'bigint' || getTag(value) === native.bigIntTag;
8
+ }
9
+
10
+ module.exports = isBigInt;
package/lib/keyBy.js CHANGED
@@ -4,7 +4,7 @@ var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
  var createIteratee = require('./internals/createIteratee.js');
6
6
 
7
- function keyBy(collection, iteratee) {
7
+ var keyBy = function (collection, iteratee) {
8
8
  if (iteratee === void 0) { iteratee = identity; }
9
9
  var result = {};
10
10
  var internalIteratee = createIteratee(iteratee);
@@ -13,6 +13,7 @@ function keyBy(collection, iteratee) {
13
13
  result[key] = item;
14
14
  });
15
15
  return result;
16
- }
16
+ };
17
+ var keyBy$1 = keyBy;
17
18
 
18
- module.exports = keyBy;
19
+ module.exports = keyBy$1;
package/lib/map.js CHANGED
@@ -3,13 +3,14 @@
3
3
  var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
 
6
- function map(collection, iteratee) {
6
+ var map = function (collection, iteratee) {
7
7
  if (iteratee === void 0) { iteratee = identity; }
8
8
  var result = [];
9
9
  forEach(collection, function (item, index, arr) {
10
10
  result.push(iteratee(item, index, arr));
11
11
  });
12
12
  return result;
13
- }
13
+ };
14
+ var map$1 = map;
14
15
 
15
- module.exports = map;
16
+ module.exports = map$1;
package/lib/omit.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var allKeysIn = require('./allKeysIn.js');
4
4
  var castArray = require('./castArray.js');
5
5
 
6
- function omit(object, fields) {
6
+ var omit = function (object, fields) {
7
7
  if (fields === void 0) { fields = []; }
8
8
  var keys = allKeysIn(object);
9
9
  var fieldArr = castArray(fields);
@@ -14,6 +14,7 @@ function omit(object, fields) {
14
14
  }
15
15
  });
16
16
  return result;
17
- }
17
+ };
18
+ var omit$1 = omit;
18
19
 
19
- module.exports = omit;
20
+ module.exports = omit$1;
package/lib/orderBy.js CHANGED
@@ -6,7 +6,7 @@ var compare = require('./internals/compare.js');
6
6
  var isArray = require('./isArray.js');
7
7
  var forEach = require('./forEach.js');
8
8
 
9
- function orderBy(collection, iteratees, orders) {
9
+ var orderBy = function (collection, iteratees, orders) {
10
10
  var result = [];
11
11
  iteratees = (isArray(iteratees) ? iteratees : iteratees !== undefined ? [iteratees] : [identity]);
12
12
  orders = (isArray(orders) ? orders : orders !== undefined ? [orders] : []);
@@ -20,6 +20,7 @@ function orderBy(collection, iteratees, orders) {
20
20
  });
21
21
  });
22
22
  return result.sort(function (a, b) { return compare.compareMultiple(a, b, orders); }).map(function (item) { return item.value; });
23
- }
23
+ };
24
+ var orderBy$1 = orderBy;
24
25
 
25
- module.exports = orderBy;
26
+ module.exports = orderBy$1;
package/lib/partial.js CHANGED
@@ -1,17 +1,22 @@
1
1
  'use strict';
2
2
 
3
- function partial(func) {
4
- var args = [];
5
- for (var _i = 1; _i < arguments.length; _i++) {
6
- args[_i - 1] = arguments[_i];
7
- }
3
+ var native = require('./internals/native.js');
4
+
5
+ var PLACEHOLDER = {
6
+ __ut2_partial_ph__: null
7
+ };
8
+ var partial = function (func) {
9
+ var argsOrig = native.arrayProtoSlice.call(arguments, 1);
8
10
  return function () {
9
- var remainingArgs = [];
10
- for (var _i = 0; _i < arguments.length; _i++) {
11
- remainingArgs[_i] = arguments[_i];
11
+ var args = [];
12
+ var argsPartial = native.arrayProtoSlice.call(arguments);
13
+ for (var i = 0; i < argsOrig.length; i++) {
14
+ args[i] = argsOrig[i] === PLACEHOLDER ? argsPartial.shift() : argsOrig[i];
12
15
  }
13
- return func.apply(this, args.concat(remainingArgs));
16
+ return func.apply(this, args.concat(argsPartial));
14
17
  };
15
- }
18
+ };
19
+ partial.placeholder = partial._ = PLACEHOLDER;
20
+ var partial$1 = partial;
16
21
 
17
- module.exports = partial;
22
+ module.exports = partial$1;
package/lib/partition.js CHANGED
@@ -4,7 +4,7 @@ var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
  var createIteratee = require('./internals/createIteratee.js');
6
6
 
7
- function partition(collection, predicate) {
7
+ var partition = function (collection, predicate) {
8
8
  if (predicate === void 0) { predicate = identity; }
9
9
  var result = [[], []];
10
10
  var internalIteratee = createIteratee(predicate);
@@ -12,6 +12,7 @@ function partition(collection, predicate) {
12
12
  result[internalIteratee(item) ? 0 : 1].push(item);
13
13
  });
14
14
  return result;
15
- }
15
+ };
16
+ var partition$1 = partition;
16
17
 
17
- module.exports = partition;
18
+ module.exports = partition$1;
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var splitCaseWords = require('./internals/splitCaseWords.js');
4
+ var upperFirst = require('./upperFirst.js');
5
+
6
+ function pascalCase(string, pattern) {
7
+ return splitCaseWords(string, pattern).reduce(function (prev, cur) {
8
+ cur = cur.toLowerCase();
9
+ return prev + upperFirst(cur);
10
+ }, '');
11
+ }
12
+
13
+ module.exports = pascalCase;
package/lib/pick.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  var castArray = require('./castArray.js');
4
4
 
5
- function pick(object, fields) {
5
+ var pick = function (object, fields) {
6
6
  if (fields === void 0) { fields = []; }
7
7
  var result = {};
8
8
  var fieldArr = castArray(fields);
@@ -12,6 +12,7 @@ function pick(object, fields) {
12
12
  }
13
13
  });
14
14
  return result;
15
- }
15
+ };
16
+ var pick$1 = pick;
16
17
 
17
- module.exports = pick;
18
+ module.exports = pick$1;
package/lib/range.js CHANGED
@@ -4,7 +4,7 @@ var native = require('./internals/native.js');
4
4
  var isNil = require('./isNil.js');
5
5
  var toFinite = require('./toFinite.js');
6
6
 
7
- function range(start, end, step) {
7
+ var range = function (start, end, step) {
8
8
  start = toFinite(start);
9
9
  if (isNil(end)) {
10
10
  end = start;
@@ -25,6 +25,7 @@ function range(start, end, step) {
25
25
  start += step;
26
26
  }
27
27
  return result;
28
- }
28
+ };
29
+ var range$1 = range;
29
30
 
30
- module.exports = range;
31
+ module.exports = range$1;
package/lib/some.js CHANGED
@@ -3,7 +3,7 @@
3
3
  var forEach = require('./forEach.js');
4
4
  var identity = require('./identity.js');
5
5
 
6
- function some(collection, predicate) {
6
+ var some = function (collection, predicate) {
7
7
  if (predicate === void 0) { predicate = identity; }
8
8
  var result = false;
9
9
  forEach(collection, function (item, index, arr) {
@@ -13,6 +13,7 @@ function some(collection, predicate) {
13
13
  }
14
14
  });
15
15
  return result;
16
- }
16
+ };
17
+ var some$1 = some;
17
18
 
18
- module.exports = some;
19
+ module.exports = some$1;
package/lib/times.js CHANGED
@@ -5,7 +5,7 @@ var native = require('./internals/native.js');
5
5
  var isInteger = require('./isInteger.js');
6
6
  var isFinite = require('./isFinite.js');
7
7
 
8
- function times(n, iteratee) {
8
+ var times = function (n, iteratee) {
9
9
  if (iteratee === void 0) { iteratee = identity; }
10
10
  if (n < 1 || n > native.MAX_SAFE_INTEGER) {
11
11
  return [];
@@ -19,6 +19,7 @@ function times(n, iteratee) {
19
19
  index++;
20
20
  }
21
21
  return result;
22
- }
22
+ };
23
+ var times$1 = times;
23
24
 
24
- module.exports = times;
25
+ module.exports = times$1;