@kineviz/lodash 4.17.21

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 (1052) hide show
  1. package/LICENSE +47 -0
  2. package/README.md +39 -0
  3. package/_.log +3 -0
  4. package/_DataView.js +7 -0
  5. package/_Hash.js +32 -0
  6. package/_LazyWrapper.js +28 -0
  7. package/_ListCache.js +32 -0
  8. package/_LodashWrapper.js +22 -0
  9. package/_Map.js +7 -0
  10. package/_MapCache.js +32 -0
  11. package/_Promise.js +7 -0
  12. package/_Set.js +7 -0
  13. package/_SetCache.js +27 -0
  14. package/_Stack.js +27 -0
  15. package/_Symbol.js +6 -0
  16. package/_Uint8Array.js +6 -0
  17. package/_WeakMap.js +7 -0
  18. package/_apply.js +21 -0
  19. package/_arrayAggregator.js +22 -0
  20. package/_arrayEach.js +22 -0
  21. package/_arrayEachRight.js +21 -0
  22. package/_arrayEvery.js +23 -0
  23. package/_arrayFilter.js +25 -0
  24. package/_arrayIncludes.js +17 -0
  25. package/_arrayIncludesWith.js +22 -0
  26. package/_arrayLikeKeys.js +49 -0
  27. package/_arrayMap.js +21 -0
  28. package/_arrayPush.js +20 -0
  29. package/_arrayReduce.js +26 -0
  30. package/_arrayReduceRight.js +24 -0
  31. package/_arraySample.js +15 -0
  32. package/_arraySampleSize.js +17 -0
  33. package/_arrayShuffle.js +15 -0
  34. package/_arraySome.js +23 -0
  35. package/_asciiSize.js +12 -0
  36. package/_asciiToArray.js +12 -0
  37. package/_asciiWords.js +15 -0
  38. package/_assignMergeValue.js +20 -0
  39. package/_assignValue.js +28 -0
  40. package/_assocIndexOf.js +21 -0
  41. package/_baseAggregator.js +21 -0
  42. package/_baseAssign.js +17 -0
  43. package/_baseAssignIn.js +17 -0
  44. package/_baseAssignValue.js +25 -0
  45. package/_baseAt.js +23 -0
  46. package/_baseClamp.js +22 -0
  47. package/_baseClone.js +166 -0
  48. package/_baseConforms.js +18 -0
  49. package/_baseConformsTo.js +27 -0
  50. package/_baseCreate.js +30 -0
  51. package/_baseDelay.js +21 -0
  52. package/_baseDifference.js +67 -0
  53. package/_baseEach.js +14 -0
  54. package/_baseEachRight.js +14 -0
  55. package/_baseEvery.js +21 -0
  56. package/_baseExtremum.js +32 -0
  57. package/_baseFill.js +32 -0
  58. package/_baseFilter.js +21 -0
  59. package/_baseFindIndex.js +24 -0
  60. package/_baseFindKey.js +23 -0
  61. package/_baseFlatten.js +38 -0
  62. package/_baseFor.js +16 -0
  63. package/_baseForOwn.js +16 -0
  64. package/_baseForOwnRight.js +16 -0
  65. package/_baseForRight.js +15 -0
  66. package/_baseFunctions.js +19 -0
  67. package/_baseGet.js +24 -0
  68. package/_baseGetAllKeys.js +20 -0
  69. package/_baseGetTag.js +28 -0
  70. package/_baseGt.js +14 -0
  71. package/_baseHas.js +19 -0
  72. package/_baseHasIn.js +13 -0
  73. package/_baseInRange.js +18 -0
  74. package/_baseIndexOf.js +20 -0
  75. package/_baseIndexOfWith.js +23 -0
  76. package/_baseIntersection.js +74 -0
  77. package/_baseInverter.js +21 -0
  78. package/_baseInvoke.js +24 -0
  79. package/_baseIsArguments.js +18 -0
  80. package/_baseIsArrayBuffer.js +17 -0
  81. package/_baseIsDate.js +18 -0
  82. package/_baseIsEqual.js +28 -0
  83. package/_baseIsEqualDeep.js +83 -0
  84. package/_baseIsMap.js +18 -0
  85. package/_baseIsMatch.js +62 -0
  86. package/_baseIsNaN.js +12 -0
  87. package/_baseIsNative.js +47 -0
  88. package/_baseIsRegExp.js +18 -0
  89. package/_baseIsSet.js +18 -0
  90. package/_baseIsTypedArray.js +60 -0
  91. package/_baseIteratee.js +31 -0
  92. package/_baseKeys.js +30 -0
  93. package/_baseKeysIn.js +33 -0
  94. package/_baseLodash.js +10 -0
  95. package/_baseLt.js +14 -0
  96. package/_baseMap.js +22 -0
  97. package/_baseMatches.js +22 -0
  98. package/_baseMatchesProperty.js +33 -0
  99. package/_baseMean.js +20 -0
  100. package/_baseMerge.js +42 -0
  101. package/_baseMergeDeep.js +94 -0
  102. package/_baseNth.js +20 -0
  103. package/_baseOrderBy.js +49 -0
  104. package/_basePick.js +19 -0
  105. package/_basePickBy.js +30 -0
  106. package/_baseProperty.js +14 -0
  107. package/_basePropertyDeep.js +16 -0
  108. package/_basePropertyOf.js +14 -0
  109. package/_basePullAll.js +51 -0
  110. package/_basePullAt.js +37 -0
  111. package/_baseRandom.js +18 -0
  112. package/_baseRange.js +28 -0
  113. package/_baseReduce.js +23 -0
  114. package/_baseRepeat.js +35 -0
  115. package/_baseRest.js +17 -0
  116. package/_baseSample.js +15 -0
  117. package/_baseSampleSize.js +18 -0
  118. package/_baseSet.js +51 -0
  119. package/_baseSetData.js +17 -0
  120. package/_baseSetToString.js +22 -0
  121. package/_baseShuffle.js +15 -0
  122. package/_baseSlice.js +31 -0
  123. package/_baseSome.js +22 -0
  124. package/_baseSortBy.js +21 -0
  125. package/_baseSortedIndex.js +42 -0
  126. package/_baseSortedIndexBy.js +67 -0
  127. package/_baseSortedUniq.js +30 -0
  128. package/_baseSum.js +24 -0
  129. package/_baseTimes.js +20 -0
  130. package/_baseToNumber.js +24 -0
  131. package/_baseToPairs.js +18 -0
  132. package/_baseToString.js +37 -0
  133. package/_baseTrim.js +19 -0
  134. package/_baseUnary.js +14 -0
  135. package/_baseUniq.js +72 -0
  136. package/_baseUnset.js +20 -0
  137. package/_baseUpdate.js +18 -0
  138. package/_baseValues.js +19 -0
  139. package/_baseWhile.js +26 -0
  140. package/_baseWrapperValue.js +25 -0
  141. package/_baseXor.js +36 -0
  142. package/_baseZipObject.js +23 -0
  143. package/_cacheHas.js +13 -0
  144. package/_castArrayLikeObject.js +14 -0
  145. package/_castFunction.js +14 -0
  146. package/_castPath.js +21 -0
  147. package/_castRest.js +14 -0
  148. package/_castSlice.js +18 -0
  149. package/_charsEndIndex.js +19 -0
  150. package/_charsStartIndex.js +20 -0
  151. package/_cloneArrayBuffer.js +16 -0
  152. package/_cloneBuffer.js +35 -0
  153. package/_cloneDataView.js +16 -0
  154. package/_cloneRegExp.js +17 -0
  155. package/_cloneSymbol.js +18 -0
  156. package/_cloneTypedArray.js +16 -0
  157. package/_compareAscending.js +41 -0
  158. package/_compareMultiple.js +44 -0
  159. package/_composeArgs.js +39 -0
  160. package/_composeArgsRight.js +41 -0
  161. package/_copyArray.js +20 -0
  162. package/_copyObject.js +40 -0
  163. package/_copySymbols.js +16 -0
  164. package/_copySymbolsIn.js +16 -0
  165. package/_coreJsData.js +6 -0
  166. package/_countHolders.js +21 -0
  167. package/_createAggregator.js +23 -0
  168. package/_createAssigner.js +37 -0
  169. package/_createBaseEach.js +32 -0
  170. package/_createBaseFor.js +25 -0
  171. package/_createBind.js +28 -0
  172. package/_createCaseFirst.js +33 -0
  173. package/_createCompounder.js +24 -0
  174. package/_createCtor.js +37 -0
  175. package/_createCurry.js +46 -0
  176. package/_createFind.js +25 -0
  177. package/_createFlow.js +78 -0
  178. package/_createHybrid.js +92 -0
  179. package/_createInverter.js +17 -0
  180. package/_createMathOperation.js +38 -0
  181. package/_createOver.js +27 -0
  182. package/_createPadding.js +33 -0
  183. package/_createPartial.js +43 -0
  184. package/_createRange.js +30 -0
  185. package/_createRecurry.js +56 -0
  186. package/_createRelationalOperation.js +20 -0
  187. package/_createRound.js +35 -0
  188. package/_createSet.js +19 -0
  189. package/_createToPairs.js +30 -0
  190. package/_createWrap.js +106 -0
  191. package/_customDefaultsAssignIn.js +29 -0
  192. package/_customDefaultsMerge.js +28 -0
  193. package/_customOmitClone.js +16 -0
  194. package/_deburrLetter.js +71 -0
  195. package/_defineProperty.js +11 -0
  196. package/_equalArrays.js +84 -0
  197. package/_equalByTag.js +112 -0
  198. package/_equalObjects.js +90 -0
  199. package/_escapeHtmlChar.js +21 -0
  200. package/_escapeStringChar.js +22 -0
  201. package/_flatRest.js +16 -0
  202. package/_freeGlobal.js +4 -0
  203. package/_getAllKeys.js +16 -0
  204. package/_getAllKeysIn.js +17 -0
  205. package/_getData.js +15 -0
  206. package/_getFuncName.js +31 -0
  207. package/_getHolder.js +13 -0
  208. package/_getMapData.js +18 -0
  209. package/_getMatchData.js +24 -0
  210. package/_getNative.js +17 -0
  211. package/_getPrototype.js +6 -0
  212. package/_getRawTag.js +46 -0
  213. package/_getSymbols.js +30 -0
  214. package/_getSymbolsIn.js +25 -0
  215. package/_getTag.js +58 -0
  216. package/_getValue.js +13 -0
  217. package/_getView.js +33 -0
  218. package/_getWrapDetails.js +17 -0
  219. package/_hasPath.js +39 -0
  220. package/_hasUnicode.js +26 -0
  221. package/_hasUnicodeWord.js +15 -0
  222. package/_hashClear.js +15 -0
  223. package/_hashDelete.js +17 -0
  224. package/_hashGet.js +30 -0
  225. package/_hashHas.js +23 -0
  226. package/_hashSet.js +23 -0
  227. package/_initCloneArray.js +26 -0
  228. package/_initCloneByTag.js +77 -0
  229. package/_initCloneObject.js +18 -0
  230. package/_insertWrapDetails.js +23 -0
  231. package/_isFlattenable.js +20 -0
  232. package/_isIndex.js +25 -0
  233. package/_isIterateeCall.js +30 -0
  234. package/_isKey.js +29 -0
  235. package/_isKeyable.js +15 -0
  236. package/_isLaziable.js +28 -0
  237. package/_isMaskable.js +14 -0
  238. package/_isMasked.js +20 -0
  239. package/_isPrototype.js +18 -0
  240. package/_isStrictComparable.js +15 -0
  241. package/_iteratorToArray.js +18 -0
  242. package/_lazyClone.js +23 -0
  243. package/_lazyReverse.js +23 -0
  244. package/_lazyValue.js +69 -0
  245. package/_listCacheClear.js +13 -0
  246. package/_listCacheDelete.js +35 -0
  247. package/_listCacheGet.js +19 -0
  248. package/_listCacheHas.js +16 -0
  249. package/_listCacheSet.js +26 -0
  250. package/_mapCacheClear.js +21 -0
  251. package/_mapCacheDelete.js +18 -0
  252. package/_mapCacheGet.js +16 -0
  253. package/_mapCacheHas.js +16 -0
  254. package/_mapCacheSet.js +22 -0
  255. package/_mapToArray.js +18 -0
  256. package/_matchesStrictComparable.js +20 -0
  257. package/_memoizeCapped.js +26 -0
  258. package/_mergeData.js +90 -0
  259. package/_metaMap.js +6 -0
  260. package/_nativeCreate.js +6 -0
  261. package/_nativeKeys.js +6 -0
  262. package/_nativeKeysIn.js +20 -0
  263. package/_nodeUtil.js +30 -0
  264. package/_objectToString.js +22 -0
  265. package/_overArg.js +15 -0
  266. package/_overRest.js +36 -0
  267. package/_parent.js +16 -0
  268. package/_reEscape.js +4 -0
  269. package/_reEvaluate.js +4 -0
  270. package/_reInterpolate.js +4 -0
  271. package/_realNames.js +4 -0
  272. package/_reorder.js +29 -0
  273. package/_replaceHolders.js +29 -0
  274. package/_root.js +9 -0
  275. package/_safeGet.js +21 -0
  276. package/_setCacheAdd.js +19 -0
  277. package/_setCacheHas.js +14 -0
  278. package/_setData.js +20 -0
  279. package/_setToArray.js +18 -0
  280. package/_setToPairs.js +18 -0
  281. package/_setToString.js +14 -0
  282. package/_setWrapToString.js +21 -0
  283. package/_shortOut.js +37 -0
  284. package/_shuffleSelf.js +28 -0
  285. package/_stackClear.js +15 -0
  286. package/_stackDelete.js +18 -0
  287. package/_stackGet.js +14 -0
  288. package/_stackHas.js +14 -0
  289. package/_stackSet.js +34 -0
  290. package/_strictIndexOf.js +23 -0
  291. package/_strictLastIndexOf.js +21 -0
  292. package/_stringSize.js +18 -0
  293. package/_stringToArray.js +18 -0
  294. package/_stringToPath.js +27 -0
  295. package/_toKey.js +21 -0
  296. package/_toSource.js +26 -0
  297. package/_trimmedEndIndex.js +19 -0
  298. package/_unescapeHtmlChar.js +21 -0
  299. package/_unicodeSize.js +44 -0
  300. package/_unicodeToArray.js +40 -0
  301. package/_unicodeWords.js +69 -0
  302. package/_updateWrapDetails.js +46 -0
  303. package/_wrapperClone.js +23 -0
  304. package/add.js +22 -0
  305. package/after.js +42 -0
  306. package/array.js +67 -0
  307. package/ary.js +29 -0
  308. package/assign.js +58 -0
  309. package/assignIn.js +40 -0
  310. package/assignInWith.js +38 -0
  311. package/assignWith.js +37 -0
  312. package/at.js +23 -0
  313. package/attempt.js +35 -0
  314. package/before.js +40 -0
  315. package/bind.js +57 -0
  316. package/bindAll.js +41 -0
  317. package/bindKey.js +68 -0
  318. package/camelCase.js +29 -0
  319. package/capitalize.js +23 -0
  320. package/castArray.js +44 -0
  321. package/ceil.js +26 -0
  322. package/chain.js +38 -0
  323. package/chunk.js +50 -0
  324. package/clamp.js +39 -0
  325. package/clone.js +36 -0
  326. package/cloneDeep.js +29 -0
  327. package/cloneDeepWith.js +40 -0
  328. package/cloneWith.js +42 -0
  329. package/collection.js +30 -0
  330. package/commit.js +33 -0
  331. package/compact.js +31 -0
  332. package/concat.js +43 -0
  333. package/cond.js +60 -0
  334. package/conforms.js +35 -0
  335. package/conformsTo.js +32 -0
  336. package/constant.js +26 -0
  337. package/core.js +3877 -0
  338. package/core.min.js +29 -0
  339. package/countBy.js +40 -0
  340. package/create.js +43 -0
  341. package/curry.js +57 -0
  342. package/curryRight.js +54 -0
  343. package/date.js +3 -0
  344. package/debounce.js +191 -0
  345. package/deburr.js +45 -0
  346. package/defaultTo.js +25 -0
  347. package/defaults.js +64 -0
  348. package/defaultsDeep.js +30 -0
  349. package/defer.js +26 -0
  350. package/delay.js +28 -0
  351. package/difference.js +33 -0
  352. package/differenceBy.js +44 -0
  353. package/differenceWith.js +40 -0
  354. package/divide.js +22 -0
  355. package/drop.js +38 -0
  356. package/dropRight.js +39 -0
  357. package/dropRightWhile.js +45 -0
  358. package/dropWhile.js +45 -0
  359. package/each.js +1 -0
  360. package/eachRight.js +1 -0
  361. package/endsWith.js +43 -0
  362. package/entries.js +1 -0
  363. package/entriesIn.js +1 -0
  364. package/eq.js +37 -0
  365. package/escape.js +43 -0
  366. package/escapeRegExp.js +32 -0
  367. package/every.js +56 -0
  368. package/extend.js +1 -0
  369. package/extendWith.js +1 -0
  370. package/fill.js +45 -0
  371. package/filter.js +52 -0
  372. package/find.js +42 -0
  373. package/findIndex.js +55 -0
  374. package/findKey.js +44 -0
  375. package/findLast.js +25 -0
  376. package/findLastIndex.js +59 -0
  377. package/findLastKey.js +44 -0
  378. package/first.js +1 -0
  379. package/flatMap.js +29 -0
  380. package/flatMapDeep.js +31 -0
  381. package/flatMapDepth.js +31 -0
  382. package/flatten.js +22 -0
  383. package/flattenDeep.js +25 -0
  384. package/flattenDepth.js +33 -0
  385. package/flip.js +28 -0
  386. package/floor.js +26 -0
  387. package/flow.js +27 -0
  388. package/flowRight.js +26 -0
  389. package/forEach.js +41 -0
  390. package/forEachRight.js +31 -0
  391. package/forIn.js +39 -0
  392. package/forInRight.js +37 -0
  393. package/forOwn.js +36 -0
  394. package/forOwnRight.js +34 -0
  395. package/fp/F.js +1 -0
  396. package/fp/T.js +1 -0
  397. package/fp/__.js +1 -0
  398. package/fp/_baseConvert.js +569 -0
  399. package/fp/_convertBrowser.js +18 -0
  400. package/fp/_falseOptions.js +7 -0
  401. package/fp/_mapping.js +358 -0
  402. package/fp/_util.js +16 -0
  403. package/fp/add.js +5 -0
  404. package/fp/after.js +5 -0
  405. package/fp/all.js +1 -0
  406. package/fp/allPass.js +1 -0
  407. package/fp/always.js +1 -0
  408. package/fp/any.js +1 -0
  409. package/fp/anyPass.js +1 -0
  410. package/fp/apply.js +1 -0
  411. package/fp/array.js +2 -0
  412. package/fp/ary.js +5 -0
  413. package/fp/assign.js +5 -0
  414. package/fp/assignAll.js +5 -0
  415. package/fp/assignAllWith.js +5 -0
  416. package/fp/assignIn.js +5 -0
  417. package/fp/assignInAll.js +5 -0
  418. package/fp/assignInAllWith.js +5 -0
  419. package/fp/assignInWith.js +5 -0
  420. package/fp/assignWith.js +5 -0
  421. package/fp/assoc.js +1 -0
  422. package/fp/assocPath.js +1 -0
  423. package/fp/at.js +5 -0
  424. package/fp/attempt.js +5 -0
  425. package/fp/before.js +5 -0
  426. package/fp/bind.js +5 -0
  427. package/fp/bindAll.js +5 -0
  428. package/fp/bindKey.js +5 -0
  429. package/fp/camelCase.js +5 -0
  430. package/fp/capitalize.js +5 -0
  431. package/fp/castArray.js +5 -0
  432. package/fp/ceil.js +5 -0
  433. package/fp/chain.js +5 -0
  434. package/fp/chunk.js +5 -0
  435. package/fp/clamp.js +5 -0
  436. package/fp/clone.js +5 -0
  437. package/fp/cloneDeep.js +5 -0
  438. package/fp/cloneDeepWith.js +5 -0
  439. package/fp/cloneWith.js +5 -0
  440. package/fp/collection.js +2 -0
  441. package/fp/commit.js +5 -0
  442. package/fp/compact.js +5 -0
  443. package/fp/complement.js +1 -0
  444. package/fp/compose.js +1 -0
  445. package/fp/concat.js +5 -0
  446. package/fp/cond.js +5 -0
  447. package/fp/conforms.js +1 -0
  448. package/fp/conformsTo.js +5 -0
  449. package/fp/constant.js +5 -0
  450. package/fp/contains.js +1 -0
  451. package/fp/convert.js +18 -0
  452. package/fp/countBy.js +5 -0
  453. package/fp/create.js +5 -0
  454. package/fp/curry.js +5 -0
  455. package/fp/curryN.js +5 -0
  456. package/fp/curryRight.js +5 -0
  457. package/fp/curryRightN.js +5 -0
  458. package/fp/date.js +2 -0
  459. package/fp/debounce.js +5 -0
  460. package/fp/deburr.js +5 -0
  461. package/fp/defaultTo.js +5 -0
  462. package/fp/defaults.js +5 -0
  463. package/fp/defaultsAll.js +5 -0
  464. package/fp/defaultsDeep.js +5 -0
  465. package/fp/defaultsDeepAll.js +5 -0
  466. package/fp/defer.js +5 -0
  467. package/fp/delay.js +5 -0
  468. package/fp/difference.js +5 -0
  469. package/fp/differenceBy.js +5 -0
  470. package/fp/differenceWith.js +5 -0
  471. package/fp/dissoc.js +1 -0
  472. package/fp/dissocPath.js +1 -0
  473. package/fp/divide.js +5 -0
  474. package/fp/drop.js +5 -0
  475. package/fp/dropLast.js +1 -0
  476. package/fp/dropLastWhile.js +1 -0
  477. package/fp/dropRight.js +5 -0
  478. package/fp/dropRightWhile.js +5 -0
  479. package/fp/dropWhile.js +5 -0
  480. package/fp/each.js +1 -0
  481. package/fp/eachRight.js +1 -0
  482. package/fp/endsWith.js +5 -0
  483. package/fp/entries.js +1 -0
  484. package/fp/entriesIn.js +1 -0
  485. package/fp/eq.js +5 -0
  486. package/fp/equals.js +1 -0
  487. package/fp/escape.js +5 -0
  488. package/fp/escapeRegExp.js +5 -0
  489. package/fp/every.js +5 -0
  490. package/fp/extend.js +1 -0
  491. package/fp/extendAll.js +1 -0
  492. package/fp/extendAllWith.js +1 -0
  493. package/fp/extendWith.js +1 -0
  494. package/fp/fill.js +5 -0
  495. package/fp/filter.js +5 -0
  496. package/fp/find.js +5 -0
  497. package/fp/findFrom.js +5 -0
  498. package/fp/findIndex.js +5 -0
  499. package/fp/findIndexFrom.js +5 -0
  500. package/fp/findKey.js +5 -0
  501. package/fp/findLast.js +5 -0
  502. package/fp/findLastFrom.js +5 -0
  503. package/fp/findLastIndex.js +5 -0
  504. package/fp/findLastIndexFrom.js +5 -0
  505. package/fp/findLastKey.js +5 -0
  506. package/fp/first.js +1 -0
  507. package/fp/flatMap.js +5 -0
  508. package/fp/flatMapDeep.js +5 -0
  509. package/fp/flatMapDepth.js +5 -0
  510. package/fp/flatten.js +5 -0
  511. package/fp/flattenDeep.js +5 -0
  512. package/fp/flattenDepth.js +5 -0
  513. package/fp/flip.js +5 -0
  514. package/fp/floor.js +5 -0
  515. package/fp/flow.js +5 -0
  516. package/fp/flowRight.js +5 -0
  517. package/fp/forEach.js +5 -0
  518. package/fp/forEachRight.js +5 -0
  519. package/fp/forIn.js +5 -0
  520. package/fp/forInRight.js +5 -0
  521. package/fp/forOwn.js +5 -0
  522. package/fp/forOwnRight.js +5 -0
  523. package/fp/fromPairs.js +5 -0
  524. package/fp/function.js +2 -0
  525. package/fp/functions.js +5 -0
  526. package/fp/functionsIn.js +5 -0
  527. package/fp/get.js +5 -0
  528. package/fp/getOr.js +5 -0
  529. package/fp/groupBy.js +5 -0
  530. package/fp/gt.js +5 -0
  531. package/fp/gte.js +5 -0
  532. package/fp/has.js +5 -0
  533. package/fp/hasIn.js +5 -0
  534. package/fp/head.js +5 -0
  535. package/fp/identical.js +1 -0
  536. package/fp/identity.js +5 -0
  537. package/fp/inRange.js +5 -0
  538. package/fp/includes.js +5 -0
  539. package/fp/includesFrom.js +5 -0
  540. package/fp/indexBy.js +1 -0
  541. package/fp/indexOf.js +5 -0
  542. package/fp/indexOfFrom.js +5 -0
  543. package/fp/init.js +1 -0
  544. package/fp/initial.js +5 -0
  545. package/fp/intersection.js +5 -0
  546. package/fp/intersectionBy.js +5 -0
  547. package/fp/intersectionWith.js +5 -0
  548. package/fp/invert.js +5 -0
  549. package/fp/invertBy.js +5 -0
  550. package/fp/invertObj.js +1 -0
  551. package/fp/invoke.js +5 -0
  552. package/fp/invokeArgs.js +5 -0
  553. package/fp/invokeArgsMap.js +5 -0
  554. package/fp/invokeMap.js +5 -0
  555. package/fp/isArguments.js +5 -0
  556. package/fp/isArray.js +5 -0
  557. package/fp/isArrayBuffer.js +5 -0
  558. package/fp/isArrayLike.js +5 -0
  559. package/fp/isArrayLikeObject.js +5 -0
  560. package/fp/isBoolean.js +5 -0
  561. package/fp/isBuffer.js +5 -0
  562. package/fp/isDate.js +5 -0
  563. package/fp/isElement.js +5 -0
  564. package/fp/isEmpty.js +5 -0
  565. package/fp/isEqual.js +5 -0
  566. package/fp/isEqualWith.js +5 -0
  567. package/fp/isError.js +5 -0
  568. package/fp/isFinite.js +5 -0
  569. package/fp/isFunction.js +5 -0
  570. package/fp/isInteger.js +5 -0
  571. package/fp/isLength.js +5 -0
  572. package/fp/isMap.js +5 -0
  573. package/fp/isMatch.js +5 -0
  574. package/fp/isMatchWith.js +5 -0
  575. package/fp/isNaN.js +5 -0
  576. package/fp/isNative.js +5 -0
  577. package/fp/isNil.js +5 -0
  578. package/fp/isNull.js +5 -0
  579. package/fp/isNumber.js +5 -0
  580. package/fp/isObject.js +5 -0
  581. package/fp/isObjectLike.js +5 -0
  582. package/fp/isPlainObject.js +5 -0
  583. package/fp/isRegExp.js +5 -0
  584. package/fp/isSafeInteger.js +5 -0
  585. package/fp/isSet.js +5 -0
  586. package/fp/isString.js +5 -0
  587. package/fp/isSymbol.js +5 -0
  588. package/fp/isTypedArray.js +5 -0
  589. package/fp/isUndefined.js +5 -0
  590. package/fp/isWeakMap.js +5 -0
  591. package/fp/isWeakSet.js +5 -0
  592. package/fp/iteratee.js +5 -0
  593. package/fp/join.js +5 -0
  594. package/fp/juxt.js +1 -0
  595. package/fp/kebabCase.js +5 -0
  596. package/fp/keyBy.js +5 -0
  597. package/fp/keys.js +5 -0
  598. package/fp/keysIn.js +5 -0
  599. package/fp/lang.js +2 -0
  600. package/fp/last.js +5 -0
  601. package/fp/lastIndexOf.js +5 -0
  602. package/fp/lastIndexOfFrom.js +5 -0
  603. package/fp/lowerCase.js +5 -0
  604. package/fp/lowerFirst.js +5 -0
  605. package/fp/lt.js +5 -0
  606. package/fp/lte.js +5 -0
  607. package/fp/map.js +5 -0
  608. package/fp/mapKeys.js +5 -0
  609. package/fp/mapValues.js +5 -0
  610. package/fp/matches.js +1 -0
  611. package/fp/matchesProperty.js +5 -0
  612. package/fp/math.js +2 -0
  613. package/fp/max.js +5 -0
  614. package/fp/maxBy.js +5 -0
  615. package/fp/mean.js +5 -0
  616. package/fp/meanBy.js +5 -0
  617. package/fp/memoize.js +5 -0
  618. package/fp/merge.js +5 -0
  619. package/fp/mergeAll.js +5 -0
  620. package/fp/mergeAllWith.js +5 -0
  621. package/fp/mergeWith.js +5 -0
  622. package/fp/method.js +5 -0
  623. package/fp/methodOf.js +5 -0
  624. package/fp/min.js +5 -0
  625. package/fp/minBy.js +5 -0
  626. package/fp/mixin.js +5 -0
  627. package/fp/multiply.js +5 -0
  628. package/fp/nAry.js +1 -0
  629. package/fp/negate.js +5 -0
  630. package/fp/next.js +5 -0
  631. package/fp/noop.js +5 -0
  632. package/fp/now.js +5 -0
  633. package/fp/nth.js +5 -0
  634. package/fp/nthArg.js +5 -0
  635. package/fp/number.js +2 -0
  636. package/fp/object.js +2 -0
  637. package/fp/omit.js +5 -0
  638. package/fp/omitAll.js +1 -0
  639. package/fp/omitBy.js +5 -0
  640. package/fp/once.js +5 -0
  641. package/fp/orderBy.js +5 -0
  642. package/fp/over.js +5 -0
  643. package/fp/overArgs.js +5 -0
  644. package/fp/overEvery.js +5 -0
  645. package/fp/overSome.js +5 -0
  646. package/fp/pad.js +5 -0
  647. package/fp/padChars.js +5 -0
  648. package/fp/padCharsEnd.js +5 -0
  649. package/fp/padCharsStart.js +5 -0
  650. package/fp/padEnd.js +5 -0
  651. package/fp/padStart.js +5 -0
  652. package/fp/parseInt.js +5 -0
  653. package/fp/partial.js +5 -0
  654. package/fp/partialRight.js +5 -0
  655. package/fp/partition.js +5 -0
  656. package/fp/path.js +1 -0
  657. package/fp/pathEq.js +1 -0
  658. package/fp/pathOr.js +1 -0
  659. package/fp/paths.js +1 -0
  660. package/fp/pick.js +5 -0
  661. package/fp/pickAll.js +1 -0
  662. package/fp/pickBy.js +5 -0
  663. package/fp/pipe.js +1 -0
  664. package/fp/placeholder.js +6 -0
  665. package/fp/plant.js +5 -0
  666. package/fp/pluck.js +1 -0
  667. package/fp/prop.js +1 -0
  668. package/fp/propEq.js +1 -0
  669. package/fp/propOr.js +1 -0
  670. package/fp/property.js +1 -0
  671. package/fp/propertyOf.js +5 -0
  672. package/fp/props.js +1 -0
  673. package/fp/pull.js +5 -0
  674. package/fp/pullAll.js +5 -0
  675. package/fp/pullAllBy.js +5 -0
  676. package/fp/pullAllWith.js +5 -0
  677. package/fp/pullAt.js +5 -0
  678. package/fp/random.js +5 -0
  679. package/fp/range.js +5 -0
  680. package/fp/rangeRight.js +5 -0
  681. package/fp/rangeStep.js +5 -0
  682. package/fp/rangeStepRight.js +5 -0
  683. package/fp/rearg.js +5 -0
  684. package/fp/reduce.js +5 -0
  685. package/fp/reduceRight.js +5 -0
  686. package/fp/reject.js +5 -0
  687. package/fp/remove.js +5 -0
  688. package/fp/repeat.js +5 -0
  689. package/fp/replace.js +5 -0
  690. package/fp/rest.js +5 -0
  691. package/fp/restFrom.js +5 -0
  692. package/fp/result.js +5 -0
  693. package/fp/reverse.js +5 -0
  694. package/fp/round.js +5 -0
  695. package/fp/sample.js +5 -0
  696. package/fp/sampleSize.js +5 -0
  697. package/fp/seq.js +2 -0
  698. package/fp/set.js +5 -0
  699. package/fp/setWith.js +5 -0
  700. package/fp/shuffle.js +5 -0
  701. package/fp/size.js +5 -0
  702. package/fp/slice.js +5 -0
  703. package/fp/snakeCase.js +5 -0
  704. package/fp/some.js +5 -0
  705. package/fp/sortBy.js +5 -0
  706. package/fp/sortedIndex.js +5 -0
  707. package/fp/sortedIndexBy.js +5 -0
  708. package/fp/sortedIndexOf.js +5 -0
  709. package/fp/sortedLastIndex.js +5 -0
  710. package/fp/sortedLastIndexBy.js +5 -0
  711. package/fp/sortedLastIndexOf.js +5 -0
  712. package/fp/sortedUniq.js +5 -0
  713. package/fp/sortedUniqBy.js +5 -0
  714. package/fp/split.js +5 -0
  715. package/fp/spread.js +5 -0
  716. package/fp/spreadFrom.js +5 -0
  717. package/fp/startCase.js +5 -0
  718. package/fp/startsWith.js +5 -0
  719. package/fp/string.js +2 -0
  720. package/fp/stubArray.js +5 -0
  721. package/fp/stubFalse.js +5 -0
  722. package/fp/stubObject.js +5 -0
  723. package/fp/stubString.js +5 -0
  724. package/fp/stubTrue.js +5 -0
  725. package/fp/subtract.js +5 -0
  726. package/fp/sum.js +5 -0
  727. package/fp/sumBy.js +5 -0
  728. package/fp/symmetricDifference.js +1 -0
  729. package/fp/symmetricDifferenceBy.js +1 -0
  730. package/fp/symmetricDifferenceWith.js +1 -0
  731. package/fp/tail.js +5 -0
  732. package/fp/take.js +5 -0
  733. package/fp/takeLast.js +1 -0
  734. package/fp/takeLastWhile.js +1 -0
  735. package/fp/takeRight.js +5 -0
  736. package/fp/takeRightWhile.js +5 -0
  737. package/fp/takeWhile.js +5 -0
  738. package/fp/tap.js +5 -0
  739. package/fp/template.js +5 -0
  740. package/fp/templateSettings.js +5 -0
  741. package/fp/throttle.js +5 -0
  742. package/fp/thru.js +5 -0
  743. package/fp/times.js +5 -0
  744. package/fp/toArray.js +5 -0
  745. package/fp/toFinite.js +5 -0
  746. package/fp/toInteger.js +5 -0
  747. package/fp/toIterator.js +5 -0
  748. package/fp/toJSON.js +5 -0
  749. package/fp/toLength.js +5 -0
  750. package/fp/toLower.js +5 -0
  751. package/fp/toNumber.js +5 -0
  752. package/fp/toPairs.js +5 -0
  753. package/fp/toPairsIn.js +5 -0
  754. package/fp/toPath.js +5 -0
  755. package/fp/toPlainObject.js +5 -0
  756. package/fp/toSafeInteger.js +5 -0
  757. package/fp/toString.js +5 -0
  758. package/fp/toUpper.js +5 -0
  759. package/fp/transform.js +5 -0
  760. package/fp/trim.js +5 -0
  761. package/fp/trimChars.js +5 -0
  762. package/fp/trimCharsEnd.js +5 -0
  763. package/fp/trimCharsStart.js +5 -0
  764. package/fp/trimEnd.js +5 -0
  765. package/fp/trimStart.js +5 -0
  766. package/fp/truncate.js +5 -0
  767. package/fp/unapply.js +1 -0
  768. package/fp/unary.js +5 -0
  769. package/fp/unescape.js +5 -0
  770. package/fp/union.js +5 -0
  771. package/fp/unionBy.js +5 -0
  772. package/fp/unionWith.js +5 -0
  773. package/fp/uniq.js +5 -0
  774. package/fp/uniqBy.js +5 -0
  775. package/fp/uniqWith.js +5 -0
  776. package/fp/uniqueId.js +5 -0
  777. package/fp/unnest.js +1 -0
  778. package/fp/unset.js +5 -0
  779. package/fp/unzip.js +5 -0
  780. package/fp/unzipWith.js +5 -0
  781. package/fp/update.js +5 -0
  782. package/fp/updateWith.js +5 -0
  783. package/fp/upperCase.js +5 -0
  784. package/fp/upperFirst.js +5 -0
  785. package/fp/useWith.js +1 -0
  786. package/fp/util.js +2 -0
  787. package/fp/value.js +5 -0
  788. package/fp/valueOf.js +5 -0
  789. package/fp/values.js +5 -0
  790. package/fp/valuesIn.js +5 -0
  791. package/fp/where.js +1 -0
  792. package/fp/whereEq.js +1 -0
  793. package/fp/without.js +5 -0
  794. package/fp/words.js +5 -0
  795. package/fp/wrap.js +5 -0
  796. package/fp/wrapperAt.js +5 -0
  797. package/fp/wrapperChain.js +5 -0
  798. package/fp/wrapperLodash.js +5 -0
  799. package/fp/wrapperReverse.js +5 -0
  800. package/fp/wrapperValue.js +5 -0
  801. package/fp/xor.js +5 -0
  802. package/fp/xorBy.js +5 -0
  803. package/fp/xorWith.js +5 -0
  804. package/fp/zip.js +5 -0
  805. package/fp/zipAll.js +5 -0
  806. package/fp/zipObj.js +1 -0
  807. package/fp/zipObject.js +5 -0
  808. package/fp/zipObjectDeep.js +5 -0
  809. package/fp/zipWith.js +5 -0
  810. package/fp.js +2 -0
  811. package/fromPairs.js +28 -0
  812. package/function.js +25 -0
  813. package/functions.js +31 -0
  814. package/functionsIn.js +31 -0
  815. package/get.js +33 -0
  816. package/groupBy.js +41 -0
  817. package/gt.js +29 -0
  818. package/gte.js +30 -0
  819. package/has.js +35 -0
  820. package/hasIn.js +34 -0
  821. package/head.js +23 -0
  822. package/identity.js +21 -0
  823. package/inRange.js +55 -0
  824. package/includes.js +53 -0
  825. package/index.js +1 -0
  826. package/indexOf.js +42 -0
  827. package/initial.js +22 -0
  828. package/intersection.js +30 -0
  829. package/intersectionBy.js +45 -0
  830. package/intersectionWith.js +41 -0
  831. package/invert.js +42 -0
  832. package/invertBy.js +56 -0
  833. package/invoke.js +24 -0
  834. package/invokeMap.js +41 -0
  835. package/isArguments.js +36 -0
  836. package/isArray.js +26 -0
  837. package/isArrayBuffer.js +27 -0
  838. package/isArrayLike.js +33 -0
  839. package/isArrayLikeObject.js +33 -0
  840. package/isBoolean.js +29 -0
  841. package/isBuffer.js +38 -0
  842. package/isDate.js +27 -0
  843. package/isElement.js +25 -0
  844. package/isEmpty.js +77 -0
  845. package/isEqual.js +35 -0
  846. package/isEqualWith.js +41 -0
  847. package/isError.js +36 -0
  848. package/isFinite.js +36 -0
  849. package/isFunction.js +37 -0
  850. package/isInteger.js +33 -0
  851. package/isLength.js +35 -0
  852. package/isMap.js +27 -0
  853. package/isMatch.js +36 -0
  854. package/isMatchWith.js +41 -0
  855. package/isNaN.js +38 -0
  856. package/isNative.js +40 -0
  857. package/isNil.js +25 -0
  858. package/isNull.js +22 -0
  859. package/isNumber.js +38 -0
  860. package/isObject.js +31 -0
  861. package/isObjectLike.js +29 -0
  862. package/isPlainObject.js +62 -0
  863. package/isRegExp.js +27 -0
  864. package/isSafeInteger.js +37 -0
  865. package/isSet.js +27 -0
  866. package/isString.js +30 -0
  867. package/isSymbol.js +29 -0
  868. package/isTypedArray.js +27 -0
  869. package/isUndefined.js +22 -0
  870. package/isWeakMap.js +28 -0
  871. package/isWeakSet.js +28 -0
  872. package/iteratee.js +53 -0
  873. package/join.js +26 -0
  874. package/kebabCase.js +28 -0
  875. package/keyBy.js +36 -0
  876. package/keys.js +37 -0
  877. package/keysIn.js +32 -0
  878. package/lang.js +58 -0
  879. package/last.js +20 -0
  880. package/lastIndexOf.js +46 -0
  881. package/lodash.js +17209 -0
  882. package/lodash.min.js +138 -0
  883. package/lowerCase.js +27 -0
  884. package/lowerFirst.js +22 -0
  885. package/lt.js +29 -0
  886. package/lte.js +30 -0
  887. package/map.js +53 -0
  888. package/mapKeys.js +36 -0
  889. package/mapValues.js +43 -0
  890. package/matches.js +46 -0
  891. package/matchesProperty.js +44 -0
  892. package/math.js +17 -0
  893. package/max.js +29 -0
  894. package/maxBy.js +34 -0
  895. package/mean.js +22 -0
  896. package/meanBy.js +31 -0
  897. package/memoize.js +73 -0
  898. package/merge.js +39 -0
  899. package/mergeWith.js +39 -0
  900. package/method.js +34 -0
  901. package/methodOf.js +33 -0
  902. package/min.js +29 -0
  903. package/minBy.js +34 -0
  904. package/mixin.js +74 -0
  905. package/multiply.js +22 -0
  906. package/negate.js +40 -0
  907. package/next.js +35 -0
  908. package/noop.js +17 -0
  909. package/now.js +23 -0
  910. package/nth.js +29 -0
  911. package/nthArg.js +32 -0
  912. package/number.js +5 -0
  913. package/object.js +49 -0
  914. package/omit.js +57 -0
  915. package/omitBy.js +29 -0
  916. package/once.js +25 -0
  917. package/orderBy.js +47 -0
  918. package/over.js +24 -0
  919. package/overArgs.js +61 -0
  920. package/overEvery.js +34 -0
  921. package/overSome.js +37 -0
  922. package/package.json +27 -0
  923. package/pad.js +49 -0
  924. package/padEnd.js +39 -0
  925. package/padStart.js +39 -0
  926. package/parseInt.js +43 -0
  927. package/partial.js +50 -0
  928. package/partialRight.js +49 -0
  929. package/partition.js +43 -0
  930. package/pick.js +25 -0
  931. package/pickBy.js +37 -0
  932. package/plant.js +48 -0
  933. package/property.js +32 -0
  934. package/propertyOf.js +30 -0
  935. package/pull.js +29 -0
  936. package/pullAll.js +29 -0
  937. package/pullAllBy.js +33 -0
  938. package/pullAllWith.js +32 -0
  939. package/pullAt.js +43 -0
  940. package/random.js +82 -0
  941. package/range.js +46 -0
  942. package/rangeRight.js +41 -0
  943. package/rearg.js +33 -0
  944. package/reduce.js +51 -0
  945. package/reduceRight.js +36 -0
  946. package/reject.js +46 -0
  947. package/remove.js +53 -0
  948. package/repeat.js +37 -0
  949. package/replace.js +29 -0
  950. package/rest.js +40 -0
  951. package/result.js +56 -0
  952. package/reverse.js +34 -0
  953. package/round.js +26 -0
  954. package/sample.js +24 -0
  955. package/sampleSize.js +37 -0
  956. package/seq.js +16 -0
  957. package/set.js +35 -0
  958. package/setWith.js +32 -0
  959. package/shuffle.js +25 -0
  960. package/size.js +46 -0
  961. package/slice.js +37 -0
  962. package/snakeCase.js +28 -0
  963. package/some.js +51 -0
  964. package/sortBy.js +48 -0
  965. package/sortedIndex.js +24 -0
  966. package/sortedIndexBy.js +33 -0
  967. package/sortedIndexOf.js +31 -0
  968. package/sortedLastIndex.js +25 -0
  969. package/sortedLastIndexBy.js +33 -0
  970. package/sortedLastIndexOf.js +31 -0
  971. package/sortedUniq.js +24 -0
  972. package/sortedUniqBy.js +26 -0
  973. package/split.js +52 -0
  974. package/spread.js +63 -0
  975. package/startCase.js +29 -0
  976. package/startsWith.js +39 -0
  977. package/string.js +33 -0
  978. package/stubArray.js +23 -0
  979. package/stubFalse.js +18 -0
  980. package/stubObject.js +23 -0
  981. package/stubString.js +18 -0
  982. package/stubTrue.js +18 -0
  983. package/subtract.js +22 -0
  984. package/sum.js +24 -0
  985. package/sumBy.js +33 -0
  986. package/tail.js +22 -0
  987. package/take.js +37 -0
  988. package/takeRight.js +39 -0
  989. package/takeRightWhile.js +45 -0
  990. package/takeWhile.js +45 -0
  991. package/tap.js +29 -0
  992. package/template.js +272 -0
  993. package/templateSettings.js +67 -0
  994. package/throttle.js +69 -0
  995. package/thru.js +28 -0
  996. package/times.js +51 -0
  997. package/toArray.js +58 -0
  998. package/toFinite.js +42 -0
  999. package/toInteger.js +36 -0
  1000. package/toIterator.js +23 -0
  1001. package/toJSON.js +1 -0
  1002. package/toLength.js +38 -0
  1003. package/toLower.js +28 -0
  1004. package/toNumber.js +64 -0
  1005. package/toPairs.js +30 -0
  1006. package/toPairsIn.js +30 -0
  1007. package/toPath.js +33 -0
  1008. package/toPlainObject.js +32 -0
  1009. package/toSafeInteger.js +37 -0
  1010. package/toString.js +28 -0
  1011. package/toUpper.js +28 -0
  1012. package/transform.js +65 -0
  1013. package/trim.js +47 -0
  1014. package/trimEnd.js +41 -0
  1015. package/trimStart.js +43 -0
  1016. package/truncate.js +111 -0
  1017. package/unary.js +22 -0
  1018. package/unescape.js +34 -0
  1019. package/union.js +26 -0
  1020. package/unionBy.js +39 -0
  1021. package/unionWith.js +34 -0
  1022. package/uniq.js +25 -0
  1023. package/uniqBy.js +31 -0
  1024. package/uniqWith.js +28 -0
  1025. package/uniqueId.js +28 -0
  1026. package/unset.js +34 -0
  1027. package/unzip.js +45 -0
  1028. package/unzipWith.js +39 -0
  1029. package/update.js +35 -0
  1030. package/updateWith.js +33 -0
  1031. package/upperCase.js +27 -0
  1032. package/upperFirst.js +22 -0
  1033. package/util.js +34 -0
  1034. package/value.js +1 -0
  1035. package/valueOf.js +1 -0
  1036. package/values.js +34 -0
  1037. package/valuesIn.js +32 -0
  1038. package/without.js +31 -0
  1039. package/words.js +35 -0
  1040. package/wrap.js +30 -0
  1041. package/wrapperAt.js +48 -0
  1042. package/wrapperChain.js +34 -0
  1043. package/wrapperLodash.js +147 -0
  1044. package/wrapperReverse.js +44 -0
  1045. package/wrapperValue.js +21 -0
  1046. package/xor.js +28 -0
  1047. package/xorBy.js +39 -0
  1048. package/xorWith.js +34 -0
  1049. package/zip.js +22 -0
  1050. package/zipObject.js +24 -0
  1051. package/zipObjectDeep.js +23 -0
  1052. package/zipWith.js +32 -0
package/rearg.js ADDED
@@ -0,0 +1,33 @@
1
+ var createWrap = require('./_createWrap'),
2
+ flatRest = require('./_flatRest');
3
+
4
+ /** Used to compose bitmasks for function metadata. */
5
+ var WRAP_REARG_FLAG = 256;
6
+
7
+ /**
8
+ * Creates a function that invokes `func` with arguments arranged according
9
+ * to the specified `indexes` where the argument value at the first index is
10
+ * provided as the first argument, the argument value at the second index is
11
+ * provided as the second argument, and so on.
12
+ *
13
+ * @static
14
+ * @memberOf _
15
+ * @since 3.0.0
16
+ * @category Function
17
+ * @param {Function} func The function to rearrange arguments for.
18
+ * @param {...(number|number[])} indexes The arranged argument indexes.
19
+ * @returns {Function} Returns the new function.
20
+ * @example
21
+ *
22
+ * var rearged = _.rearg(function(a, b, c) {
23
+ * return [a, b, c];
24
+ * }, [2, 0, 1]);
25
+ *
26
+ * rearged('b', 'c', 'a')
27
+ * // => ['a', 'b', 'c']
28
+ */
29
+ var rearg = flatRest(function(func, indexes) {
30
+ return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);
31
+ });
32
+
33
+ module.exports = rearg;
package/reduce.js ADDED
@@ -0,0 +1,51 @@
1
+ var arrayReduce = require('./_arrayReduce'),
2
+ baseEach = require('./_baseEach'),
3
+ baseIteratee = require('./_baseIteratee'),
4
+ baseReduce = require('./_baseReduce'),
5
+ isArray = require('./isArray');
6
+
7
+ /**
8
+ * Reduces `collection` to a value which is the accumulated result of running
9
+ * each element in `collection` thru `iteratee`, where each successive
10
+ * invocation is supplied the return value of the previous. If `accumulator`
11
+ * is not given, the first element of `collection` is used as the initial
12
+ * value. The iteratee is invoked with four arguments:
13
+ * (accumulator, value, index|key, collection).
14
+ *
15
+ * Many lodash methods are guarded to work as iteratees for methods like
16
+ * `_.reduce`, `_.reduceRight`, and `_.transform`.
17
+ *
18
+ * The guarded methods are:
19
+ * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,
20
+ * and `sortBy`
21
+ *
22
+ * @static
23
+ * @memberOf _
24
+ * @since 0.1.0
25
+ * @category Collection
26
+ * @param {Array|Object} collection The collection to iterate over.
27
+ * @param {Function} [iteratee=_.identity] The function invoked per iteration.
28
+ * @param {*} [accumulator] The initial value.
29
+ * @returns {*} Returns the accumulated value.
30
+ * @see _.reduceRight
31
+ * @example
32
+ *
33
+ * _.reduce([1, 2], function(sum, n) {
34
+ * return sum + n;
35
+ * }, 0);
36
+ * // => 3
37
+ *
38
+ * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {
39
+ * (result[value] || (result[value] = [])).push(key);
40
+ * return result;
41
+ * }, {});
42
+ * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)
43
+ */
44
+ function reduce(collection, iteratee, accumulator) {
45
+ var func = isArray(collection) ? arrayReduce : baseReduce,
46
+ initAccum = arguments.length < 3;
47
+
48
+ return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach);
49
+ }
50
+
51
+ module.exports = reduce;
package/reduceRight.js ADDED
@@ -0,0 +1,36 @@
1
+ var arrayReduceRight = require('./_arrayReduceRight'),
2
+ baseEachRight = require('./_baseEachRight'),
3
+ baseIteratee = require('./_baseIteratee'),
4
+ baseReduce = require('./_baseReduce'),
5
+ isArray = require('./isArray');
6
+
7
+ /**
8
+ * This method is like `_.reduce` except that it iterates over elements of
9
+ * `collection` from right to left.
10
+ *
11
+ * @static
12
+ * @memberOf _
13
+ * @since 0.1.0
14
+ * @category Collection
15
+ * @param {Array|Object} collection The collection to iterate over.
16
+ * @param {Function} [iteratee=_.identity] The function invoked per iteration.
17
+ * @param {*} [accumulator] The initial value.
18
+ * @returns {*} Returns the accumulated value.
19
+ * @see _.reduce
20
+ * @example
21
+ *
22
+ * var array = [[0, 1], [2, 3], [4, 5]];
23
+ *
24
+ * _.reduceRight(array, function(flattened, other) {
25
+ * return flattened.concat(other);
26
+ * }, []);
27
+ * // => [4, 5, 2, 3, 0, 1]
28
+ */
29
+ function reduceRight(collection, iteratee, accumulator) {
30
+ var func = isArray(collection) ? arrayReduceRight : baseReduce,
31
+ initAccum = arguments.length < 3;
32
+
33
+ return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);
34
+ }
35
+
36
+ module.exports = reduceRight;
package/reject.js ADDED
@@ -0,0 +1,46 @@
1
+ var arrayFilter = require('./_arrayFilter'),
2
+ baseFilter = require('./_baseFilter'),
3
+ baseIteratee = require('./_baseIteratee'),
4
+ isArray = require('./isArray'),
5
+ negate = require('./negate');
6
+
7
+ /**
8
+ * The opposite of `_.filter`; this method returns the elements of `collection`
9
+ * that `predicate` does **not** return truthy for.
10
+ *
11
+ * @static
12
+ * @memberOf _
13
+ * @since 0.1.0
14
+ * @category Collection
15
+ * @param {Array|Object} collection The collection to iterate over.
16
+ * @param {Function} [predicate=_.identity] The function invoked per iteration.
17
+ * @returns {Array} Returns the new filtered array.
18
+ * @see _.filter
19
+ * @example
20
+ *
21
+ * var users = [
22
+ * { 'user': 'barney', 'age': 36, 'active': false },
23
+ * { 'user': 'fred', 'age': 40, 'active': true }
24
+ * ];
25
+ *
26
+ * _.reject(users, function(o) { return !o.active; });
27
+ * // => objects for ['fred']
28
+ *
29
+ * // The `_.matches` iteratee shorthand.
30
+ * _.reject(users, { 'age': 40, 'active': true });
31
+ * // => objects for ['barney']
32
+ *
33
+ * // The `_.matchesProperty` iteratee shorthand.
34
+ * _.reject(users, ['active', false]);
35
+ * // => objects for ['fred']
36
+ *
37
+ * // The `_.property` iteratee shorthand.
38
+ * _.reject(users, 'active');
39
+ * // => objects for ['barney']
40
+ */
41
+ function reject(collection, predicate) {
42
+ var func = isArray(collection) ? arrayFilter : baseFilter;
43
+ return func(collection, negate(baseIteratee(predicate, 3)));
44
+ }
45
+
46
+ module.exports = reject;
package/remove.js ADDED
@@ -0,0 +1,53 @@
1
+ var baseIteratee = require('./_baseIteratee'),
2
+ basePullAt = require('./_basePullAt');
3
+
4
+ /**
5
+ * Removes all elements from `array` that `predicate` returns truthy for
6
+ * and returns an array of the removed elements. The predicate is invoked
7
+ * with three arguments: (value, index, array).
8
+ *
9
+ * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`
10
+ * to pull elements from an array by value.
11
+ *
12
+ * @static
13
+ * @memberOf _
14
+ * @since 2.0.0
15
+ * @category Array
16
+ * @param {Array} array The array to modify.
17
+ * @param {Function} [predicate=_.identity] The function invoked per iteration.
18
+ * @returns {Array} Returns the new array of removed elements.
19
+ * @example
20
+ *
21
+ * var array = [1, 2, 3, 4];
22
+ * var evens = _.remove(array, function(n) {
23
+ * return n % 2 == 0;
24
+ * });
25
+ *
26
+ * console.log(array);
27
+ * // => [1, 3]
28
+ *
29
+ * console.log(evens);
30
+ * // => [2, 4]
31
+ */
32
+ function remove(array, predicate) {
33
+ var result = [];
34
+ if (!(array && array.length)) {
35
+ return result;
36
+ }
37
+ var index = -1,
38
+ indexes = [],
39
+ length = array.length;
40
+
41
+ predicate = baseIteratee(predicate, 3);
42
+ while (++index < length) {
43
+ var value = array[index];
44
+ if (predicate(value, index, array)) {
45
+ result.push(value);
46
+ indexes.push(index);
47
+ }
48
+ }
49
+ basePullAt(array, indexes);
50
+ return result;
51
+ }
52
+
53
+ module.exports = remove;
package/repeat.js ADDED
@@ -0,0 +1,37 @@
1
+ var baseRepeat = require('./_baseRepeat'),
2
+ isIterateeCall = require('./_isIterateeCall'),
3
+ toInteger = require('./toInteger'),
4
+ toString = require('./toString');
5
+
6
+ /**
7
+ * Repeats the given string `n` times.
8
+ *
9
+ * @static
10
+ * @memberOf _
11
+ * @since 3.0.0
12
+ * @category String
13
+ * @param {string} [string=''] The string to repeat.
14
+ * @param {number} [n=1] The number of times to repeat the string.
15
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
16
+ * @returns {string} Returns the repeated string.
17
+ * @example
18
+ *
19
+ * _.repeat('*', 3);
20
+ * // => '***'
21
+ *
22
+ * _.repeat('abc', 2);
23
+ * // => 'abcabc'
24
+ *
25
+ * _.repeat('abc', 0);
26
+ * // => ''
27
+ */
28
+ function repeat(string, n, guard) {
29
+ if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {
30
+ n = 1;
31
+ } else {
32
+ n = toInteger(n);
33
+ }
34
+ return baseRepeat(toString(string), n);
35
+ }
36
+
37
+ module.exports = repeat;
package/replace.js ADDED
@@ -0,0 +1,29 @@
1
+ var toString = require('./toString');
2
+
3
+ /**
4
+ * Replaces matches for `pattern` in `string` with `replacement`.
5
+ *
6
+ * **Note:** This method is based on
7
+ * [`String#replace`](https://mdn.io/String/replace).
8
+ *
9
+ * @static
10
+ * @memberOf _
11
+ * @since 4.0.0
12
+ * @category String
13
+ * @param {string} [string=''] The string to modify.
14
+ * @param {RegExp|string} pattern The pattern to replace.
15
+ * @param {Function|string} replacement The match replacement.
16
+ * @returns {string} Returns the modified string.
17
+ * @example
18
+ *
19
+ * _.replace('Hi Fred', 'Fred', 'Barney');
20
+ * // => 'Hi Barney'
21
+ */
22
+ function replace() {
23
+ var args = arguments,
24
+ string = toString(args[0]);
25
+
26
+ return args.length < 3 ? string : string.replace(args[1], args[2]);
27
+ }
28
+
29
+ module.exports = replace;
package/rest.js ADDED
@@ -0,0 +1,40 @@
1
+ var baseRest = require('./_baseRest'),
2
+ toInteger = require('./toInteger');
3
+
4
+ /** Error message constants. */
5
+ var FUNC_ERROR_TEXT = 'Expected a function';
6
+
7
+ /**
8
+ * Creates a function that invokes `func` with the `this` binding of the
9
+ * created function and arguments from `start` and beyond provided as
10
+ * an array.
11
+ *
12
+ * **Note:** This method is based on the
13
+ * [rest parameter](https://mdn.io/rest_parameters).
14
+ *
15
+ * @static
16
+ * @memberOf _
17
+ * @since 4.0.0
18
+ * @category Function
19
+ * @param {Function} func The function to apply a rest parameter to.
20
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
21
+ * @returns {Function} Returns the new function.
22
+ * @example
23
+ *
24
+ * var say = _.rest(function(what, names) {
25
+ * return what + ' ' + _.initial(names).join(', ') +
26
+ * (_.size(names) > 1 ? ', & ' : '') + _.last(names);
27
+ * });
28
+ *
29
+ * say('hello', 'fred', 'barney', 'pebbles');
30
+ * // => 'hello fred, barney, & pebbles'
31
+ */
32
+ function rest(func, start) {
33
+ if (typeof func != 'function') {
34
+ throw new TypeError(FUNC_ERROR_TEXT);
35
+ }
36
+ start = start === undefined ? start : toInteger(start);
37
+ return baseRest(func, start);
38
+ }
39
+
40
+ module.exports = rest;
package/result.js ADDED
@@ -0,0 +1,56 @@
1
+ var castPath = require('./_castPath'),
2
+ isFunction = require('./isFunction'),
3
+ toKey = require('./_toKey');
4
+
5
+ /**
6
+ * This method is like `_.get` except that if the resolved value is a
7
+ * function it's invoked with the `this` binding of its parent object and
8
+ * its result is returned.
9
+ *
10
+ * @static
11
+ * @since 0.1.0
12
+ * @memberOf _
13
+ * @category Object
14
+ * @param {Object} object The object to query.
15
+ * @param {Array|string} path The path of the property to resolve.
16
+ * @param {*} [defaultValue] The value returned for `undefined` resolved values.
17
+ * @returns {*} Returns the resolved value.
18
+ * @example
19
+ *
20
+ * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };
21
+ *
22
+ * _.result(object, 'a[0].b.c1');
23
+ * // => 3
24
+ *
25
+ * _.result(object, 'a[0].b.c2');
26
+ * // => 4
27
+ *
28
+ * _.result(object, 'a[0].b.c3', 'default');
29
+ * // => 'default'
30
+ *
31
+ * _.result(object, 'a[0].b.c3', _.constant('default'));
32
+ * // => 'default'
33
+ */
34
+ function result(object, path, defaultValue) {
35
+ path = castPath(path, object);
36
+
37
+ var index = -1,
38
+ length = path.length;
39
+
40
+ // Ensure the loop is entered when path is empty.
41
+ if (!length) {
42
+ length = 1;
43
+ object = undefined;
44
+ }
45
+ while (++index < length) {
46
+ var value = object == null ? undefined : object[toKey(path[index])];
47
+ if (value === undefined) {
48
+ index = length;
49
+ value = defaultValue;
50
+ }
51
+ object = isFunction(value) ? value.call(object) : value;
52
+ }
53
+ return object;
54
+ }
55
+
56
+ module.exports = result;
package/reverse.js ADDED
@@ -0,0 +1,34 @@
1
+ /** Used for built-in method references. */
2
+ var arrayProto = Array.prototype;
3
+
4
+ /* Built-in method references for those with the same name as other `lodash` methods. */
5
+ var nativeReverse = arrayProto.reverse;
6
+
7
+ /**
8
+ * Reverses `array` so that the first element becomes the last, the second
9
+ * element becomes the second to last, and so on.
10
+ *
11
+ * **Note:** This method mutates `array` and is based on
12
+ * [`Array#reverse`](https://mdn.io/Array/reverse).
13
+ *
14
+ * @static
15
+ * @memberOf _
16
+ * @since 4.0.0
17
+ * @category Array
18
+ * @param {Array} array The array to modify.
19
+ * @returns {Array} Returns `array`.
20
+ * @example
21
+ *
22
+ * var array = [1, 2, 3];
23
+ *
24
+ * _.reverse(array);
25
+ * // => [3, 2, 1]
26
+ *
27
+ * console.log(array);
28
+ * // => [3, 2, 1]
29
+ */
30
+ function reverse(array) {
31
+ return array == null ? array : nativeReverse.call(array);
32
+ }
33
+
34
+ module.exports = reverse;
package/round.js ADDED
@@ -0,0 +1,26 @@
1
+ var createRound = require('./_createRound');
2
+
3
+ /**
4
+ * Computes `number` rounded to `precision`.
5
+ *
6
+ * @static
7
+ * @memberOf _
8
+ * @since 3.10.0
9
+ * @category Math
10
+ * @param {number} number The number to round.
11
+ * @param {number} [precision=0] The precision to round to.
12
+ * @returns {number} Returns the rounded number.
13
+ * @example
14
+ *
15
+ * _.round(4.006);
16
+ * // => 4
17
+ *
18
+ * _.round(4.006, 2);
19
+ * // => 4.01
20
+ *
21
+ * _.round(4060, -2);
22
+ * // => 4100
23
+ */
24
+ var round = createRound('round');
25
+
26
+ module.exports = round;
package/sample.js ADDED
@@ -0,0 +1,24 @@
1
+ var arraySample = require('./_arraySample'),
2
+ baseSample = require('./_baseSample'),
3
+ isArray = require('./isArray');
4
+
5
+ /**
6
+ * Gets a random element from `collection`.
7
+ *
8
+ * @static
9
+ * @memberOf _
10
+ * @since 2.0.0
11
+ * @category Collection
12
+ * @param {Array|Object} collection The collection to sample.
13
+ * @returns {*} Returns the random element.
14
+ * @example
15
+ *
16
+ * _.sample([1, 2, 3, 4]);
17
+ * // => 2
18
+ */
19
+ function sample(collection) {
20
+ var func = isArray(collection) ? arraySample : baseSample;
21
+ return func(collection);
22
+ }
23
+
24
+ module.exports = sample;
package/sampleSize.js ADDED
@@ -0,0 +1,37 @@
1
+ var arraySampleSize = require('./_arraySampleSize'),
2
+ baseSampleSize = require('./_baseSampleSize'),
3
+ isArray = require('./isArray'),
4
+ isIterateeCall = require('./_isIterateeCall'),
5
+ toInteger = require('./toInteger');
6
+
7
+ /**
8
+ * Gets `n` random elements at unique keys from `collection` up to the
9
+ * size of `collection`.
10
+ *
11
+ * @static
12
+ * @memberOf _
13
+ * @since 4.0.0
14
+ * @category Collection
15
+ * @param {Array|Object} collection The collection to sample.
16
+ * @param {number} [n=1] The number of elements to sample.
17
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
18
+ * @returns {Array} Returns the random elements.
19
+ * @example
20
+ *
21
+ * _.sampleSize([1, 2, 3], 2);
22
+ * // => [3, 1]
23
+ *
24
+ * _.sampleSize([1, 2, 3], 4);
25
+ * // => [2, 3, 1]
26
+ */
27
+ function sampleSize(collection, n, guard) {
28
+ if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {
29
+ n = 1;
30
+ } else {
31
+ n = toInteger(n);
32
+ }
33
+ var func = isArray(collection) ? arraySampleSize : baseSampleSize;
34
+ return func(collection, n);
35
+ }
36
+
37
+ module.exports = sampleSize;
package/seq.js ADDED
@@ -0,0 +1,16 @@
1
+ module.exports = {
2
+ 'at': require('./wrapperAt'),
3
+ 'chain': require('./chain'),
4
+ 'commit': require('./commit'),
5
+ 'lodash': require('./wrapperLodash'),
6
+ 'next': require('./next'),
7
+ 'plant': require('./plant'),
8
+ 'reverse': require('./wrapperReverse'),
9
+ 'tap': require('./tap'),
10
+ 'thru': require('./thru'),
11
+ 'toIterator': require('./toIterator'),
12
+ 'toJSON': require('./toJSON'),
13
+ 'value': require('./wrapperValue'),
14
+ 'valueOf': require('./valueOf'),
15
+ 'wrapperChain': require('./wrapperChain')
16
+ };
package/set.js ADDED
@@ -0,0 +1,35 @@
1
+ var baseSet = require('./_baseSet');
2
+
3
+ /**
4
+ * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,
5
+ * it's created. Arrays are created for missing index properties while objects
6
+ * are created for all other missing properties. Use `_.setWith` to customize
7
+ * `path` creation.
8
+ *
9
+ * **Note:** This method mutates `object`.
10
+ *
11
+ * @static
12
+ * @memberOf _
13
+ * @since 3.7.0
14
+ * @category Object
15
+ * @param {Object} object The object to modify.
16
+ * @param {Array|string} path The path of the property to set.
17
+ * @param {*} value The value to set.
18
+ * @returns {Object} Returns `object`.
19
+ * @example
20
+ *
21
+ * var object = { 'a': [{ 'b': { 'c': 3 } }] };
22
+ *
23
+ * _.set(object, 'a[0].b.c', 4);
24
+ * console.log(object.a[0].b.c);
25
+ * // => 4
26
+ *
27
+ * _.set(object, ['x', '0', 'y', 'z'], 5);
28
+ * console.log(object.x[0].y.z);
29
+ * // => 5
30
+ */
31
+ function set(object, path, value) {
32
+ return object == null ? object : baseSet(object, path, value);
33
+ }
34
+
35
+ module.exports = set;
package/setWith.js ADDED
@@ -0,0 +1,32 @@
1
+ var baseSet = require('./_baseSet');
2
+
3
+ /**
4
+ * This method is like `_.set` except that it accepts `customizer` which is
5
+ * invoked to produce the objects of `path`. If `customizer` returns `undefined`
6
+ * path creation is handled by the method instead. The `customizer` is invoked
7
+ * with three arguments: (nsValue, key, nsObject).
8
+ *
9
+ * **Note:** This method mutates `object`.
10
+ *
11
+ * @static
12
+ * @memberOf _
13
+ * @since 4.0.0
14
+ * @category Object
15
+ * @param {Object} object The object to modify.
16
+ * @param {Array|string} path The path of the property to set.
17
+ * @param {*} value The value to set.
18
+ * @param {Function} [customizer] The function to customize assigned values.
19
+ * @returns {Object} Returns `object`.
20
+ * @example
21
+ *
22
+ * var object = {};
23
+ *
24
+ * _.setWith(object, '[0][1]', 'a', Object);
25
+ * // => { '0': { '1': 'a' } }
26
+ */
27
+ function setWith(object, path, value, customizer) {
28
+ customizer = typeof customizer == 'function' ? customizer : undefined;
29
+ return object == null ? object : baseSet(object, path, value, customizer);
30
+ }
31
+
32
+ module.exports = setWith;
package/shuffle.js ADDED
@@ -0,0 +1,25 @@
1
+ var arrayShuffle = require('./_arrayShuffle'),
2
+ baseShuffle = require('./_baseShuffle'),
3
+ isArray = require('./isArray');
4
+
5
+ /**
6
+ * Creates an array of shuffled values, using a version of the
7
+ * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
8
+ *
9
+ * @static
10
+ * @memberOf _
11
+ * @since 0.1.0
12
+ * @category Collection
13
+ * @param {Array|Object} collection The collection to shuffle.
14
+ * @returns {Array} Returns the new shuffled array.
15
+ * @example
16
+ *
17
+ * _.shuffle([1, 2, 3, 4]);
18
+ * // => [4, 1, 3, 2]
19
+ */
20
+ function shuffle(collection) {
21
+ var func = isArray(collection) ? arrayShuffle : baseShuffle;
22
+ return func(collection);
23
+ }
24
+
25
+ module.exports = shuffle;
package/size.js ADDED
@@ -0,0 +1,46 @@
1
+ var baseKeys = require('./_baseKeys'),
2
+ getTag = require('./_getTag'),
3
+ isArrayLike = require('./isArrayLike'),
4
+ isString = require('./isString'),
5
+ stringSize = require('./_stringSize');
6
+
7
+ /** `Object#toString` result references. */
8
+ var mapTag = '[object Map]',
9
+ setTag = '[object Set]';
10
+
11
+ /**
12
+ * Gets the size of `collection` by returning its length for array-like
13
+ * values or the number of own enumerable string keyed properties for objects.
14
+ *
15
+ * @static
16
+ * @memberOf _
17
+ * @since 0.1.0
18
+ * @category Collection
19
+ * @param {Array|Object|string} collection The collection to inspect.
20
+ * @returns {number} Returns the collection size.
21
+ * @example
22
+ *
23
+ * _.size([1, 2, 3]);
24
+ * // => 3
25
+ *
26
+ * _.size({ 'a': 1, 'b': 2 });
27
+ * // => 2
28
+ *
29
+ * _.size('pebbles');
30
+ * // => 7
31
+ */
32
+ function size(collection) {
33
+ if (collection == null) {
34
+ return 0;
35
+ }
36
+ if (isArrayLike(collection)) {
37
+ return isString(collection) ? stringSize(collection) : collection.length;
38
+ }
39
+ var tag = getTag(collection);
40
+ if (tag == mapTag || tag == setTag) {
41
+ return collection.size;
42
+ }
43
+ return baseKeys(collection).length;
44
+ }
45
+
46
+ module.exports = size;