@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/stubObject.js ADDED
@@ -0,0 +1,23 @@
1
+ /**
2
+ * This method returns a new empty object.
3
+ *
4
+ * @static
5
+ * @memberOf _
6
+ * @since 4.13.0
7
+ * @category Util
8
+ * @returns {Object} Returns the new empty object.
9
+ * @example
10
+ *
11
+ * var objects = _.times(2, _.stubObject);
12
+ *
13
+ * console.log(objects);
14
+ * // => [{}, {}]
15
+ *
16
+ * console.log(objects[0] === objects[1]);
17
+ * // => false
18
+ */
19
+ function stubObject() {
20
+ return {};
21
+ }
22
+
23
+ module.exports = stubObject;
package/stubString.js ADDED
@@ -0,0 +1,18 @@
1
+ /**
2
+ * This method returns an empty string.
3
+ *
4
+ * @static
5
+ * @memberOf _
6
+ * @since 4.13.0
7
+ * @category Util
8
+ * @returns {string} Returns the empty string.
9
+ * @example
10
+ *
11
+ * _.times(2, _.stubString);
12
+ * // => ['', '']
13
+ */
14
+ function stubString() {
15
+ return '';
16
+ }
17
+
18
+ module.exports = stubString;
package/stubTrue.js ADDED
@@ -0,0 +1,18 @@
1
+ /**
2
+ * This method returns `true`.
3
+ *
4
+ * @static
5
+ * @memberOf _
6
+ * @since 4.13.0
7
+ * @category Util
8
+ * @returns {boolean} Returns `true`.
9
+ * @example
10
+ *
11
+ * _.times(2, _.stubTrue);
12
+ * // => [true, true]
13
+ */
14
+ function stubTrue() {
15
+ return true;
16
+ }
17
+
18
+ module.exports = stubTrue;
package/subtract.js ADDED
@@ -0,0 +1,22 @@
1
+ var createMathOperation = require('./_createMathOperation');
2
+
3
+ /**
4
+ * Subtract two numbers.
5
+ *
6
+ * @static
7
+ * @memberOf _
8
+ * @since 4.0.0
9
+ * @category Math
10
+ * @param {number} minuend The first number in a subtraction.
11
+ * @param {number} subtrahend The second number in a subtraction.
12
+ * @returns {number} Returns the difference.
13
+ * @example
14
+ *
15
+ * _.subtract(6, 4);
16
+ * // => 2
17
+ */
18
+ var subtract = createMathOperation(function(minuend, subtrahend) {
19
+ return minuend - subtrahend;
20
+ }, 0);
21
+
22
+ module.exports = subtract;
package/sum.js ADDED
@@ -0,0 +1,24 @@
1
+ var baseSum = require('./_baseSum'),
2
+ identity = require('./identity');
3
+
4
+ /**
5
+ * Computes the sum of the values in `array`.
6
+ *
7
+ * @static
8
+ * @memberOf _
9
+ * @since 3.4.0
10
+ * @category Math
11
+ * @param {Array} array The array to iterate over.
12
+ * @returns {number} Returns the sum.
13
+ * @example
14
+ *
15
+ * _.sum([4, 2, 8, 6]);
16
+ * // => 20
17
+ */
18
+ function sum(array) {
19
+ return (array && array.length)
20
+ ? baseSum(array, identity)
21
+ : 0;
22
+ }
23
+
24
+ module.exports = sum;
package/sumBy.js ADDED
@@ -0,0 +1,33 @@
1
+ var baseIteratee = require('./_baseIteratee'),
2
+ baseSum = require('./_baseSum');
3
+
4
+ /**
5
+ * This method is like `_.sum` except that it accepts `iteratee` which is
6
+ * invoked for each element in `array` to generate the value to be summed.
7
+ * The iteratee is invoked with one argument: (value).
8
+ *
9
+ * @static
10
+ * @memberOf _
11
+ * @since 4.0.0
12
+ * @category Math
13
+ * @param {Array} array The array to iterate over.
14
+ * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
15
+ * @returns {number} Returns the sum.
16
+ * @example
17
+ *
18
+ * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];
19
+ *
20
+ * _.sumBy(objects, function(o) { return o.n; });
21
+ * // => 20
22
+ *
23
+ * // The `_.property` iteratee shorthand.
24
+ * _.sumBy(objects, 'n');
25
+ * // => 20
26
+ */
27
+ function sumBy(array, iteratee) {
28
+ return (array && array.length)
29
+ ? baseSum(array, baseIteratee(iteratee, 2))
30
+ : 0;
31
+ }
32
+
33
+ module.exports = sumBy;
package/tail.js ADDED
@@ -0,0 +1,22 @@
1
+ var baseSlice = require('./_baseSlice');
2
+
3
+ /**
4
+ * Gets all but the first element of `array`.
5
+ *
6
+ * @static
7
+ * @memberOf _
8
+ * @since 4.0.0
9
+ * @category Array
10
+ * @param {Array} array The array to query.
11
+ * @returns {Array} Returns the slice of `array`.
12
+ * @example
13
+ *
14
+ * _.tail([1, 2, 3]);
15
+ * // => [2, 3]
16
+ */
17
+ function tail(array) {
18
+ var length = array == null ? 0 : array.length;
19
+ return length ? baseSlice(array, 1, length) : [];
20
+ }
21
+
22
+ module.exports = tail;
package/take.js ADDED
@@ -0,0 +1,37 @@
1
+ var baseSlice = require('./_baseSlice'),
2
+ toInteger = require('./toInteger');
3
+
4
+ /**
5
+ * Creates a slice of `array` with `n` elements taken from the beginning.
6
+ *
7
+ * @static
8
+ * @memberOf _
9
+ * @since 0.1.0
10
+ * @category Array
11
+ * @param {Array} array The array to query.
12
+ * @param {number} [n=1] The number of elements to take.
13
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
14
+ * @returns {Array} Returns the slice of `array`.
15
+ * @example
16
+ *
17
+ * _.take([1, 2, 3]);
18
+ * // => [1]
19
+ *
20
+ * _.take([1, 2, 3], 2);
21
+ * // => [1, 2]
22
+ *
23
+ * _.take([1, 2, 3], 5);
24
+ * // => [1, 2, 3]
25
+ *
26
+ * _.take([1, 2, 3], 0);
27
+ * // => []
28
+ */
29
+ function take(array, n, guard) {
30
+ if (!(array && array.length)) {
31
+ return [];
32
+ }
33
+ n = (guard || n === undefined) ? 1 : toInteger(n);
34
+ return baseSlice(array, 0, n < 0 ? 0 : n);
35
+ }
36
+
37
+ module.exports = take;
package/takeRight.js ADDED
@@ -0,0 +1,39 @@
1
+ var baseSlice = require('./_baseSlice'),
2
+ toInteger = require('./toInteger');
3
+
4
+ /**
5
+ * Creates a slice of `array` with `n` elements taken from the end.
6
+ *
7
+ * @static
8
+ * @memberOf _
9
+ * @since 3.0.0
10
+ * @category Array
11
+ * @param {Array} array The array to query.
12
+ * @param {number} [n=1] The number of elements to take.
13
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
14
+ * @returns {Array} Returns the slice of `array`.
15
+ * @example
16
+ *
17
+ * _.takeRight([1, 2, 3]);
18
+ * // => [3]
19
+ *
20
+ * _.takeRight([1, 2, 3], 2);
21
+ * // => [2, 3]
22
+ *
23
+ * _.takeRight([1, 2, 3], 5);
24
+ * // => [1, 2, 3]
25
+ *
26
+ * _.takeRight([1, 2, 3], 0);
27
+ * // => []
28
+ */
29
+ function takeRight(array, n, guard) {
30
+ var length = array == null ? 0 : array.length;
31
+ if (!length) {
32
+ return [];
33
+ }
34
+ n = (guard || n === undefined) ? 1 : toInteger(n);
35
+ n = length - n;
36
+ return baseSlice(array, n < 0 ? 0 : n, length);
37
+ }
38
+
39
+ module.exports = takeRight;
@@ -0,0 +1,45 @@
1
+ var baseIteratee = require('./_baseIteratee'),
2
+ baseWhile = require('./_baseWhile');
3
+
4
+ /**
5
+ * Creates a slice of `array` with elements taken from the end. Elements are
6
+ * taken until `predicate` returns falsey. The predicate is invoked with
7
+ * three arguments: (value, index, array).
8
+ *
9
+ * @static
10
+ * @memberOf _
11
+ * @since 3.0.0
12
+ * @category Array
13
+ * @param {Array} array The array to query.
14
+ * @param {Function} [predicate=_.identity] The function invoked per iteration.
15
+ * @returns {Array} Returns the slice of `array`.
16
+ * @example
17
+ *
18
+ * var users = [
19
+ * { 'user': 'barney', 'active': true },
20
+ * { 'user': 'fred', 'active': false },
21
+ * { 'user': 'pebbles', 'active': false }
22
+ * ];
23
+ *
24
+ * _.takeRightWhile(users, function(o) { return !o.active; });
25
+ * // => objects for ['fred', 'pebbles']
26
+ *
27
+ * // The `_.matches` iteratee shorthand.
28
+ * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });
29
+ * // => objects for ['pebbles']
30
+ *
31
+ * // The `_.matchesProperty` iteratee shorthand.
32
+ * _.takeRightWhile(users, ['active', false]);
33
+ * // => objects for ['fred', 'pebbles']
34
+ *
35
+ * // The `_.property` iteratee shorthand.
36
+ * _.takeRightWhile(users, 'active');
37
+ * // => []
38
+ */
39
+ function takeRightWhile(array, predicate) {
40
+ return (array && array.length)
41
+ ? baseWhile(array, baseIteratee(predicate, 3), false, true)
42
+ : [];
43
+ }
44
+
45
+ module.exports = takeRightWhile;
package/takeWhile.js ADDED
@@ -0,0 +1,45 @@
1
+ var baseIteratee = require('./_baseIteratee'),
2
+ baseWhile = require('./_baseWhile');
3
+
4
+ /**
5
+ * Creates a slice of `array` with elements taken from the beginning. Elements
6
+ * are taken until `predicate` returns falsey. The predicate is invoked with
7
+ * three arguments: (value, index, array).
8
+ *
9
+ * @static
10
+ * @memberOf _
11
+ * @since 3.0.0
12
+ * @category Array
13
+ * @param {Array} array The array to query.
14
+ * @param {Function} [predicate=_.identity] The function invoked per iteration.
15
+ * @returns {Array} Returns the slice of `array`.
16
+ * @example
17
+ *
18
+ * var users = [
19
+ * { 'user': 'barney', 'active': false },
20
+ * { 'user': 'fred', 'active': false },
21
+ * { 'user': 'pebbles', 'active': true }
22
+ * ];
23
+ *
24
+ * _.takeWhile(users, function(o) { return !o.active; });
25
+ * // => objects for ['barney', 'fred']
26
+ *
27
+ * // The `_.matches` iteratee shorthand.
28
+ * _.takeWhile(users, { 'user': 'barney', 'active': false });
29
+ * // => objects for ['barney']
30
+ *
31
+ * // The `_.matchesProperty` iteratee shorthand.
32
+ * _.takeWhile(users, ['active', false]);
33
+ * // => objects for ['barney', 'fred']
34
+ *
35
+ * // The `_.property` iteratee shorthand.
36
+ * _.takeWhile(users, 'active');
37
+ * // => []
38
+ */
39
+ function takeWhile(array, predicate) {
40
+ return (array && array.length)
41
+ ? baseWhile(array, baseIteratee(predicate, 3))
42
+ : [];
43
+ }
44
+
45
+ module.exports = takeWhile;
package/tap.js ADDED
@@ -0,0 +1,29 @@
1
+ /**
2
+ * This method invokes `interceptor` and returns `value`. The interceptor
3
+ * is invoked with one argument; (value). The purpose of this method is to
4
+ * "tap into" a method chain sequence in order to modify intermediate results.
5
+ *
6
+ * @static
7
+ * @memberOf _
8
+ * @since 0.1.0
9
+ * @category Seq
10
+ * @param {*} value The value to provide to `interceptor`.
11
+ * @param {Function} interceptor The function to invoke.
12
+ * @returns {*} Returns `value`.
13
+ * @example
14
+ *
15
+ * _([1, 2, 3])
16
+ * .tap(function(array) {
17
+ * // Mutate input array.
18
+ * array.pop();
19
+ * })
20
+ * .reverse()
21
+ * .value();
22
+ * // => [2, 1]
23
+ */
24
+ function tap(value, interceptor) {
25
+ interceptor(value);
26
+ return value;
27
+ }
28
+
29
+ module.exports = tap;
package/template.js ADDED
@@ -0,0 +1,272 @@
1
+ var assignInWith = require('./assignInWith'),
2
+ attempt = require('./attempt'),
3
+ baseValues = require('./_baseValues'),
4
+ customDefaultsAssignIn = require('./_customDefaultsAssignIn'),
5
+ escapeStringChar = require('./_escapeStringChar'),
6
+ isError = require('./isError'),
7
+ isIterateeCall = require('./_isIterateeCall'),
8
+ keys = require('./keys'),
9
+ reInterpolate = require('./_reInterpolate'),
10
+ templateSettings = require('./templateSettings'),
11
+ toString = require('./toString');
12
+
13
+ /** Error message constants. */
14
+ var INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';
15
+
16
+ /** Used to match empty string literals in compiled template source. */
17
+ var reEmptyStringLeading = /\b__p \+= '';/g,
18
+ reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
19
+ reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
20
+
21
+ /**
22
+ * Used to validate the `validate` option in `_.template` variable.
23
+ *
24
+ * Forbids characters which could potentially change the meaning of the function argument definition:
25
+ * - "()," (modification of function parameters)
26
+ * - "=" (default value)
27
+ * - "[]{}" (destructuring of function parameters)
28
+ * - "/" (beginning of a comment)
29
+ * - whitespace
30
+ */
31
+ var reForbiddenIdentifierChars = /[()=,{}\[\]\/\s]/;
32
+
33
+ /**
34
+ * Used to match
35
+ * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).
36
+ */
37
+ var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
38
+
39
+ /** Used to ensure capturing order of template delimiters. */
40
+ var reNoMatch = /($^)/;
41
+
42
+ /** Used to match unescaped characters in compiled string literals. */
43
+ var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
44
+
45
+ /** Used for built-in method references. */
46
+ var objectProto = Object.prototype;
47
+
48
+ /** Used to check objects for own properties. */
49
+ var hasOwnProperty = objectProto.hasOwnProperty;
50
+
51
+ /**
52
+ * Creates a compiled template function that can interpolate data properties
53
+ * in "interpolate" delimiters, HTML-escape interpolated data properties in
54
+ * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
55
+ * properties may be accessed as free variables in the template. If a setting
56
+ * object is given, it takes precedence over `_.templateSettings` values.
57
+ *
58
+ * **Note:** In the development build `_.template` utilizes
59
+ * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
60
+ * for easier debugging.
61
+ *
62
+ * For more information on precompiling templates see
63
+ * [lodash's custom builds documentation](https://lodash.com/custom-builds).
64
+ *
65
+ * For more information on Chrome extension sandboxes see
66
+ * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).
67
+ *
68
+ * @static
69
+ * @since 0.1.0
70
+ * @memberOf _
71
+ * @category String
72
+ * @param {string} [string=''] The template string.
73
+ * @param {Object} [options={}] The options object.
74
+ * @param {RegExp} [options.escape=_.templateSettings.escape]
75
+ * The HTML "escape" delimiter.
76
+ * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]
77
+ * The "evaluate" delimiter.
78
+ * @param {Object} [options.imports=_.templateSettings.imports]
79
+ * An object to import into the template as free variables.
80
+ * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]
81
+ * The "interpolate" delimiter.
82
+ * @param {string} [options.sourceURL='templateSources[n]']
83
+ * The sourceURL of the compiled template.
84
+ * @param {string} [options.variable='obj']
85
+ * The data object variable name.
86
+ * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
87
+ * @returns {Function} Returns the compiled template function.
88
+ * @example
89
+ *
90
+ * // Use the "interpolate" delimiter to create a compiled template.
91
+ * var compiled = _.template('hello <%= user %>!');
92
+ * compiled({ 'user': 'fred' });
93
+ * // => 'hello fred!'
94
+ *
95
+ * // Use the HTML "escape" delimiter to escape data property values.
96
+ * var compiled = _.template('<b><%- value %></b>');
97
+ * compiled({ 'value': '<script>' });
98
+ * // => '<b>&lt;script&gt;</b>'
99
+ *
100
+ * // Use the "evaluate" delimiter to execute JavaScript and generate HTML.
101
+ * var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');
102
+ * compiled({ 'users': ['fred', 'barney'] });
103
+ * // => '<li>fred</li><li>barney</li>'
104
+ *
105
+ * // Use the internal `print` function in "evaluate" delimiters.
106
+ * var compiled = _.template('<% print("hello " + user); %>!');
107
+ * compiled({ 'user': 'barney' });
108
+ * // => 'hello barney!'
109
+ *
110
+ * // Use the ES template literal delimiter as an "interpolate" delimiter.
111
+ * // Disable support by replacing the "interpolate" delimiter.
112
+ * var compiled = _.template('hello ${ user }!');
113
+ * compiled({ 'user': 'pebbles' });
114
+ * // => 'hello pebbles!'
115
+ *
116
+ * // Use backslashes to treat delimiters as plain text.
117
+ * var compiled = _.template('<%= "\\<%- value %\\>" %>');
118
+ * compiled({ 'value': 'ignored' });
119
+ * // => '<%- value %>'
120
+ *
121
+ * // Use the `imports` option to import `jQuery` as `jq`.
122
+ * var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';
123
+ * var compiled = _.template(text, { 'imports': { 'jq': jQuery } });
124
+ * compiled({ 'users': ['fred', 'barney'] });
125
+ * // => '<li>fred</li><li>barney</li>'
126
+ *
127
+ * // Use the `sourceURL` option to specify a custom sourceURL for the template.
128
+ * var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });
129
+ * compiled(data);
130
+ * // => Find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector.
131
+ *
132
+ * // Use the `variable` option to ensure a with-statement isn't used in the compiled template.
133
+ * var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });
134
+ * compiled.source;
135
+ * // => function(data) {
136
+ * // var __t, __p = '';
137
+ * // __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';
138
+ * // return __p;
139
+ * // }
140
+ *
141
+ * // Use custom template delimiters.
142
+ * _.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
143
+ * var compiled = _.template('hello {{ user }}!');
144
+ * compiled({ 'user': 'mustache' });
145
+ * // => 'hello mustache!'
146
+ *
147
+ * // Use the `source` property to inline compiled templates for meaningful
148
+ * // line numbers in error messages and stack traces.
149
+ * fs.writeFileSync(path.join(process.cwd(), 'jst.js'), '\
150
+ * var JST = {\
151
+ * "main": ' + _.template(mainText).source + '\
152
+ * };\
153
+ * ');
154
+ */
155
+ function template(string, options, guard) {
156
+ // Based on John Resig's `tmpl` implementation
157
+ // (http://ejohn.org/blog/javascript-micro-templating/)
158
+ // and Laura Doktorova's doT.js (https://github.com/olado/doT).
159
+ var settings = templateSettings.imports._.templateSettings || templateSettings;
160
+
161
+ if (guard && isIterateeCall(string, options, guard)) {
162
+ options = undefined;
163
+ }
164
+ string = toString(string);
165
+ options = assignInWith({}, options, settings, customDefaultsAssignIn);
166
+
167
+ var imports = assignInWith({}, options.imports, settings.imports, customDefaultsAssignIn),
168
+ importsKeys = keys(imports),
169
+ importsValues = baseValues(imports, importsKeys);
170
+
171
+ var isEscaping,
172
+ isEvaluating,
173
+ index = 0,
174
+ interpolate = options.interpolate || reNoMatch,
175
+ source = "__p += '";
176
+
177
+ // Compile the regexp to match each delimiter.
178
+ var reDelimiters = RegExp(
179
+ (options.escape || reNoMatch).source + '|' +
180
+ interpolate.source + '|' +
181
+ (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
182
+ (options.evaluate || reNoMatch).source + '|$'
183
+ , 'g');
184
+
185
+ // Use a sourceURL for easier debugging.
186
+ // The sourceURL gets injected into the source that's eval-ed, so be careful
187
+ // to normalize all kinds of whitespace, so e.g. newlines (and unicode versions of it) can't sneak in
188
+ // and escape the comment, thus injecting code that gets evaled.
189
+ var sourceURL = hasOwnProperty.call(options, 'sourceURL')
190
+ ? ('//# sourceURL=' +
191
+ (options.sourceURL + '').replace(/\s/g, ' ') +
192
+ '\n')
193
+ : '';
194
+
195
+ string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
196
+ interpolateValue || (interpolateValue = esTemplateValue);
197
+
198
+ // Escape characters that can't be included in string literals.
199
+ source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);
200
+
201
+ // Replace delimiters with snippets.
202
+ if (escapeValue) {
203
+ isEscaping = true;
204
+ source += "' +\n__e(" + escapeValue + ") +\n'";
205
+ }
206
+ if (evaluateValue) {
207
+ isEvaluating = true;
208
+ source += "';\n" + evaluateValue + ";\n__p += '";
209
+ }
210
+ if (interpolateValue) {
211
+ source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
212
+ }
213
+ index = offset + match.length;
214
+
215
+ // The JS engine embedded in Adobe products needs `match` returned in
216
+ // order to produce the correct `offset` value.
217
+ return match;
218
+ });
219
+
220
+ source += "';\n";
221
+
222
+ // If `variable` is not specified wrap a with-statement around the generated
223
+ // code to add the data object to the top of the scope chain.
224
+ var variable = hasOwnProperty.call(options, 'variable') && options.variable;
225
+ if (!variable) {
226
+ source = 'with (obj) {\n' + source + '\n}\n';
227
+ }
228
+ // Throw an error if a forbidden character was found in `variable`, to prevent
229
+ // potential command injection attacks.
230
+ else if (reForbiddenIdentifierChars.test(variable)) {
231
+ throw new Error(INVALID_TEMPL_VAR_ERROR_TEXT);
232
+ }
233
+
234
+ // Cleanup code by stripping empty strings.
235
+ source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
236
+ .replace(reEmptyStringMiddle, '$1')
237
+ .replace(reEmptyStringTrailing, '$1;');
238
+
239
+ // Frame code as the function body.
240
+ source = 'function(' + (variable || 'obj') + ') {\n' +
241
+ (variable
242
+ ? ''
243
+ : 'obj || (obj = {});\n'
244
+ ) +
245
+ "var __t, __p = ''" +
246
+ (isEscaping
247
+ ? ', __e = _.escape'
248
+ : ''
249
+ ) +
250
+ (isEvaluating
251
+ ? ', __j = Array.prototype.join;\n' +
252
+ "function print() { __p += __j.call(arguments, '') }\n"
253
+ : ';\n'
254
+ ) +
255
+ source +
256
+ 'return __p\n}';
257
+
258
+ var result = attempt(function() {
259
+ return Function(importsKeys, sourceURL + 'return ' + source)
260
+ .apply(undefined, importsValues);
261
+ });
262
+
263
+ // Provide the compiled function's source by its `toString` method or
264
+ // the `source` property as a convenience for inlining compiled templates.
265
+ result.source = source;
266
+ if (isError(result)) {
267
+ throw result;
268
+ }
269
+ return result;
270
+ }
271
+
272
+ module.exports = template;