@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.
- package/LICENSE +47 -0
- package/README.md +39 -0
- package/_.log +3 -0
- package/_DataView.js +7 -0
- package/_Hash.js +32 -0
- package/_LazyWrapper.js +28 -0
- package/_ListCache.js +32 -0
- package/_LodashWrapper.js +22 -0
- package/_Map.js +7 -0
- package/_MapCache.js +32 -0
- package/_Promise.js +7 -0
- package/_Set.js +7 -0
- package/_SetCache.js +27 -0
- package/_Stack.js +27 -0
- package/_Symbol.js +6 -0
- package/_Uint8Array.js +6 -0
- package/_WeakMap.js +7 -0
- package/_apply.js +21 -0
- package/_arrayAggregator.js +22 -0
- package/_arrayEach.js +22 -0
- package/_arrayEachRight.js +21 -0
- package/_arrayEvery.js +23 -0
- package/_arrayFilter.js +25 -0
- package/_arrayIncludes.js +17 -0
- package/_arrayIncludesWith.js +22 -0
- package/_arrayLikeKeys.js +49 -0
- package/_arrayMap.js +21 -0
- package/_arrayPush.js +20 -0
- package/_arrayReduce.js +26 -0
- package/_arrayReduceRight.js +24 -0
- package/_arraySample.js +15 -0
- package/_arraySampleSize.js +17 -0
- package/_arrayShuffle.js +15 -0
- package/_arraySome.js +23 -0
- package/_asciiSize.js +12 -0
- package/_asciiToArray.js +12 -0
- package/_asciiWords.js +15 -0
- package/_assignMergeValue.js +20 -0
- package/_assignValue.js +28 -0
- package/_assocIndexOf.js +21 -0
- package/_baseAggregator.js +21 -0
- package/_baseAssign.js +17 -0
- package/_baseAssignIn.js +17 -0
- package/_baseAssignValue.js +25 -0
- package/_baseAt.js +23 -0
- package/_baseClamp.js +22 -0
- package/_baseClone.js +166 -0
- package/_baseConforms.js +18 -0
- package/_baseConformsTo.js +27 -0
- package/_baseCreate.js +30 -0
- package/_baseDelay.js +21 -0
- package/_baseDifference.js +67 -0
- package/_baseEach.js +14 -0
- package/_baseEachRight.js +14 -0
- package/_baseEvery.js +21 -0
- package/_baseExtremum.js +32 -0
- package/_baseFill.js +32 -0
- package/_baseFilter.js +21 -0
- package/_baseFindIndex.js +24 -0
- package/_baseFindKey.js +23 -0
- package/_baseFlatten.js +38 -0
- package/_baseFor.js +16 -0
- package/_baseForOwn.js +16 -0
- package/_baseForOwnRight.js +16 -0
- package/_baseForRight.js +15 -0
- package/_baseFunctions.js +19 -0
- package/_baseGet.js +24 -0
- package/_baseGetAllKeys.js +20 -0
- package/_baseGetTag.js +28 -0
- package/_baseGt.js +14 -0
- package/_baseHas.js +19 -0
- package/_baseHasIn.js +13 -0
- package/_baseInRange.js +18 -0
- package/_baseIndexOf.js +20 -0
- package/_baseIndexOfWith.js +23 -0
- package/_baseIntersection.js +74 -0
- package/_baseInverter.js +21 -0
- package/_baseInvoke.js +24 -0
- package/_baseIsArguments.js +18 -0
- package/_baseIsArrayBuffer.js +17 -0
- package/_baseIsDate.js +18 -0
- package/_baseIsEqual.js +28 -0
- package/_baseIsEqualDeep.js +83 -0
- package/_baseIsMap.js +18 -0
- package/_baseIsMatch.js +62 -0
- package/_baseIsNaN.js +12 -0
- package/_baseIsNative.js +47 -0
- package/_baseIsRegExp.js +18 -0
- package/_baseIsSet.js +18 -0
- package/_baseIsTypedArray.js +60 -0
- package/_baseIteratee.js +31 -0
- package/_baseKeys.js +30 -0
- package/_baseKeysIn.js +33 -0
- package/_baseLodash.js +10 -0
- package/_baseLt.js +14 -0
- package/_baseMap.js +22 -0
- package/_baseMatches.js +22 -0
- package/_baseMatchesProperty.js +33 -0
- package/_baseMean.js +20 -0
- package/_baseMerge.js +42 -0
- package/_baseMergeDeep.js +94 -0
- package/_baseNth.js +20 -0
- package/_baseOrderBy.js +49 -0
- package/_basePick.js +19 -0
- package/_basePickBy.js +30 -0
- package/_baseProperty.js +14 -0
- package/_basePropertyDeep.js +16 -0
- package/_basePropertyOf.js +14 -0
- package/_basePullAll.js +51 -0
- package/_basePullAt.js +37 -0
- package/_baseRandom.js +18 -0
- package/_baseRange.js +28 -0
- package/_baseReduce.js +23 -0
- package/_baseRepeat.js +35 -0
- package/_baseRest.js +17 -0
- package/_baseSample.js +15 -0
- package/_baseSampleSize.js +18 -0
- package/_baseSet.js +51 -0
- package/_baseSetData.js +17 -0
- package/_baseSetToString.js +22 -0
- package/_baseShuffle.js +15 -0
- package/_baseSlice.js +31 -0
- package/_baseSome.js +22 -0
- package/_baseSortBy.js +21 -0
- package/_baseSortedIndex.js +42 -0
- package/_baseSortedIndexBy.js +67 -0
- package/_baseSortedUniq.js +30 -0
- package/_baseSum.js +24 -0
- package/_baseTimes.js +20 -0
- package/_baseToNumber.js +24 -0
- package/_baseToPairs.js +18 -0
- package/_baseToString.js +37 -0
- package/_baseTrim.js +19 -0
- package/_baseUnary.js +14 -0
- package/_baseUniq.js +72 -0
- package/_baseUnset.js +20 -0
- package/_baseUpdate.js +18 -0
- package/_baseValues.js +19 -0
- package/_baseWhile.js +26 -0
- package/_baseWrapperValue.js +25 -0
- package/_baseXor.js +36 -0
- package/_baseZipObject.js +23 -0
- package/_cacheHas.js +13 -0
- package/_castArrayLikeObject.js +14 -0
- package/_castFunction.js +14 -0
- package/_castPath.js +21 -0
- package/_castRest.js +14 -0
- package/_castSlice.js +18 -0
- package/_charsEndIndex.js +19 -0
- package/_charsStartIndex.js +20 -0
- package/_cloneArrayBuffer.js +16 -0
- package/_cloneBuffer.js +35 -0
- package/_cloneDataView.js +16 -0
- package/_cloneRegExp.js +17 -0
- package/_cloneSymbol.js +18 -0
- package/_cloneTypedArray.js +16 -0
- package/_compareAscending.js +41 -0
- package/_compareMultiple.js +44 -0
- package/_composeArgs.js +39 -0
- package/_composeArgsRight.js +41 -0
- package/_copyArray.js +20 -0
- package/_copyObject.js +40 -0
- package/_copySymbols.js +16 -0
- package/_copySymbolsIn.js +16 -0
- package/_coreJsData.js +6 -0
- package/_countHolders.js +21 -0
- package/_createAggregator.js +23 -0
- package/_createAssigner.js +37 -0
- package/_createBaseEach.js +32 -0
- package/_createBaseFor.js +25 -0
- package/_createBind.js +28 -0
- package/_createCaseFirst.js +33 -0
- package/_createCompounder.js +24 -0
- package/_createCtor.js +37 -0
- package/_createCurry.js +46 -0
- package/_createFind.js +25 -0
- package/_createFlow.js +78 -0
- package/_createHybrid.js +92 -0
- package/_createInverter.js +17 -0
- package/_createMathOperation.js +38 -0
- package/_createOver.js +27 -0
- package/_createPadding.js +33 -0
- package/_createPartial.js +43 -0
- package/_createRange.js +30 -0
- package/_createRecurry.js +56 -0
- package/_createRelationalOperation.js +20 -0
- package/_createRound.js +35 -0
- package/_createSet.js +19 -0
- package/_createToPairs.js +30 -0
- package/_createWrap.js +106 -0
- package/_customDefaultsAssignIn.js +29 -0
- package/_customDefaultsMerge.js +28 -0
- package/_customOmitClone.js +16 -0
- package/_deburrLetter.js +71 -0
- package/_defineProperty.js +11 -0
- package/_equalArrays.js +84 -0
- package/_equalByTag.js +112 -0
- package/_equalObjects.js +90 -0
- package/_escapeHtmlChar.js +21 -0
- package/_escapeStringChar.js +22 -0
- package/_flatRest.js +16 -0
- package/_freeGlobal.js +4 -0
- package/_getAllKeys.js +16 -0
- package/_getAllKeysIn.js +17 -0
- package/_getData.js +15 -0
- package/_getFuncName.js +31 -0
- package/_getHolder.js +13 -0
- package/_getMapData.js +18 -0
- package/_getMatchData.js +24 -0
- package/_getNative.js +17 -0
- package/_getPrototype.js +6 -0
- package/_getRawTag.js +46 -0
- package/_getSymbols.js +30 -0
- package/_getSymbolsIn.js +25 -0
- package/_getTag.js +58 -0
- package/_getValue.js +13 -0
- package/_getView.js +33 -0
- package/_getWrapDetails.js +17 -0
- package/_hasPath.js +39 -0
- package/_hasUnicode.js +26 -0
- package/_hasUnicodeWord.js +15 -0
- package/_hashClear.js +15 -0
- package/_hashDelete.js +17 -0
- package/_hashGet.js +30 -0
- package/_hashHas.js +23 -0
- package/_hashSet.js +23 -0
- package/_initCloneArray.js +26 -0
- package/_initCloneByTag.js +77 -0
- package/_initCloneObject.js +18 -0
- package/_insertWrapDetails.js +23 -0
- package/_isFlattenable.js +20 -0
- package/_isIndex.js +25 -0
- package/_isIterateeCall.js +30 -0
- package/_isKey.js +29 -0
- package/_isKeyable.js +15 -0
- package/_isLaziable.js +28 -0
- package/_isMaskable.js +14 -0
- package/_isMasked.js +20 -0
- package/_isPrototype.js +18 -0
- package/_isStrictComparable.js +15 -0
- package/_iteratorToArray.js +18 -0
- package/_lazyClone.js +23 -0
- package/_lazyReverse.js +23 -0
- package/_lazyValue.js +69 -0
- package/_listCacheClear.js +13 -0
- package/_listCacheDelete.js +35 -0
- package/_listCacheGet.js +19 -0
- package/_listCacheHas.js +16 -0
- package/_listCacheSet.js +26 -0
- package/_mapCacheClear.js +21 -0
- package/_mapCacheDelete.js +18 -0
- package/_mapCacheGet.js +16 -0
- package/_mapCacheHas.js +16 -0
- package/_mapCacheSet.js +22 -0
- package/_mapToArray.js +18 -0
- package/_matchesStrictComparable.js +20 -0
- package/_memoizeCapped.js +26 -0
- package/_mergeData.js +90 -0
- package/_metaMap.js +6 -0
- package/_nativeCreate.js +6 -0
- package/_nativeKeys.js +6 -0
- package/_nativeKeysIn.js +20 -0
- package/_nodeUtil.js +30 -0
- package/_objectToString.js +22 -0
- package/_overArg.js +15 -0
- package/_overRest.js +36 -0
- package/_parent.js +16 -0
- package/_reEscape.js +4 -0
- package/_reEvaluate.js +4 -0
- package/_reInterpolate.js +4 -0
- package/_realNames.js +4 -0
- package/_reorder.js +29 -0
- package/_replaceHolders.js +29 -0
- package/_root.js +9 -0
- package/_safeGet.js +21 -0
- package/_setCacheAdd.js +19 -0
- package/_setCacheHas.js +14 -0
- package/_setData.js +20 -0
- package/_setToArray.js +18 -0
- package/_setToPairs.js +18 -0
- package/_setToString.js +14 -0
- package/_setWrapToString.js +21 -0
- package/_shortOut.js +37 -0
- package/_shuffleSelf.js +28 -0
- package/_stackClear.js +15 -0
- package/_stackDelete.js +18 -0
- package/_stackGet.js +14 -0
- package/_stackHas.js +14 -0
- package/_stackSet.js +34 -0
- package/_strictIndexOf.js +23 -0
- package/_strictLastIndexOf.js +21 -0
- package/_stringSize.js +18 -0
- package/_stringToArray.js +18 -0
- package/_stringToPath.js +27 -0
- package/_toKey.js +21 -0
- package/_toSource.js +26 -0
- package/_trimmedEndIndex.js +19 -0
- package/_unescapeHtmlChar.js +21 -0
- package/_unicodeSize.js +44 -0
- package/_unicodeToArray.js +40 -0
- package/_unicodeWords.js +69 -0
- package/_updateWrapDetails.js +46 -0
- package/_wrapperClone.js +23 -0
- package/add.js +22 -0
- package/after.js +42 -0
- package/array.js +67 -0
- package/ary.js +29 -0
- package/assign.js +58 -0
- package/assignIn.js +40 -0
- package/assignInWith.js +38 -0
- package/assignWith.js +37 -0
- package/at.js +23 -0
- package/attempt.js +35 -0
- package/before.js +40 -0
- package/bind.js +57 -0
- package/bindAll.js +41 -0
- package/bindKey.js +68 -0
- package/camelCase.js +29 -0
- package/capitalize.js +23 -0
- package/castArray.js +44 -0
- package/ceil.js +26 -0
- package/chain.js +38 -0
- package/chunk.js +50 -0
- package/clamp.js +39 -0
- package/clone.js +36 -0
- package/cloneDeep.js +29 -0
- package/cloneDeepWith.js +40 -0
- package/cloneWith.js +42 -0
- package/collection.js +30 -0
- package/commit.js +33 -0
- package/compact.js +31 -0
- package/concat.js +43 -0
- package/cond.js +60 -0
- package/conforms.js +35 -0
- package/conformsTo.js +32 -0
- package/constant.js +26 -0
- package/core.js +3877 -0
- package/core.min.js +29 -0
- package/countBy.js +40 -0
- package/create.js +43 -0
- package/curry.js +57 -0
- package/curryRight.js +54 -0
- package/date.js +3 -0
- package/debounce.js +191 -0
- package/deburr.js +45 -0
- package/defaultTo.js +25 -0
- package/defaults.js +64 -0
- package/defaultsDeep.js +30 -0
- package/defer.js +26 -0
- package/delay.js +28 -0
- package/difference.js +33 -0
- package/differenceBy.js +44 -0
- package/differenceWith.js +40 -0
- package/divide.js +22 -0
- package/drop.js +38 -0
- package/dropRight.js +39 -0
- package/dropRightWhile.js +45 -0
- package/dropWhile.js +45 -0
- package/each.js +1 -0
- package/eachRight.js +1 -0
- package/endsWith.js +43 -0
- package/entries.js +1 -0
- package/entriesIn.js +1 -0
- package/eq.js +37 -0
- package/escape.js +43 -0
- package/escapeRegExp.js +32 -0
- package/every.js +56 -0
- package/extend.js +1 -0
- package/extendWith.js +1 -0
- package/fill.js +45 -0
- package/filter.js +52 -0
- package/find.js +42 -0
- package/findIndex.js +55 -0
- package/findKey.js +44 -0
- package/findLast.js +25 -0
- package/findLastIndex.js +59 -0
- package/findLastKey.js +44 -0
- package/first.js +1 -0
- package/flatMap.js +29 -0
- package/flatMapDeep.js +31 -0
- package/flatMapDepth.js +31 -0
- package/flatten.js +22 -0
- package/flattenDeep.js +25 -0
- package/flattenDepth.js +33 -0
- package/flip.js +28 -0
- package/floor.js +26 -0
- package/flow.js +27 -0
- package/flowRight.js +26 -0
- package/forEach.js +41 -0
- package/forEachRight.js +31 -0
- package/forIn.js +39 -0
- package/forInRight.js +37 -0
- package/forOwn.js +36 -0
- package/forOwnRight.js +34 -0
- package/fp/F.js +1 -0
- package/fp/T.js +1 -0
- package/fp/__.js +1 -0
- package/fp/_baseConvert.js +569 -0
- package/fp/_convertBrowser.js +18 -0
- package/fp/_falseOptions.js +7 -0
- package/fp/_mapping.js +358 -0
- package/fp/_util.js +16 -0
- package/fp/add.js +5 -0
- package/fp/after.js +5 -0
- package/fp/all.js +1 -0
- package/fp/allPass.js +1 -0
- package/fp/always.js +1 -0
- package/fp/any.js +1 -0
- package/fp/anyPass.js +1 -0
- package/fp/apply.js +1 -0
- package/fp/array.js +2 -0
- package/fp/ary.js +5 -0
- package/fp/assign.js +5 -0
- package/fp/assignAll.js +5 -0
- package/fp/assignAllWith.js +5 -0
- package/fp/assignIn.js +5 -0
- package/fp/assignInAll.js +5 -0
- package/fp/assignInAllWith.js +5 -0
- package/fp/assignInWith.js +5 -0
- package/fp/assignWith.js +5 -0
- package/fp/assoc.js +1 -0
- package/fp/assocPath.js +1 -0
- package/fp/at.js +5 -0
- package/fp/attempt.js +5 -0
- package/fp/before.js +5 -0
- package/fp/bind.js +5 -0
- package/fp/bindAll.js +5 -0
- package/fp/bindKey.js +5 -0
- package/fp/camelCase.js +5 -0
- package/fp/capitalize.js +5 -0
- package/fp/castArray.js +5 -0
- package/fp/ceil.js +5 -0
- package/fp/chain.js +5 -0
- package/fp/chunk.js +5 -0
- package/fp/clamp.js +5 -0
- package/fp/clone.js +5 -0
- package/fp/cloneDeep.js +5 -0
- package/fp/cloneDeepWith.js +5 -0
- package/fp/cloneWith.js +5 -0
- package/fp/collection.js +2 -0
- package/fp/commit.js +5 -0
- package/fp/compact.js +5 -0
- package/fp/complement.js +1 -0
- package/fp/compose.js +1 -0
- package/fp/concat.js +5 -0
- package/fp/cond.js +5 -0
- package/fp/conforms.js +1 -0
- package/fp/conformsTo.js +5 -0
- package/fp/constant.js +5 -0
- package/fp/contains.js +1 -0
- package/fp/convert.js +18 -0
- package/fp/countBy.js +5 -0
- package/fp/create.js +5 -0
- package/fp/curry.js +5 -0
- package/fp/curryN.js +5 -0
- package/fp/curryRight.js +5 -0
- package/fp/curryRightN.js +5 -0
- package/fp/date.js +2 -0
- package/fp/debounce.js +5 -0
- package/fp/deburr.js +5 -0
- package/fp/defaultTo.js +5 -0
- package/fp/defaults.js +5 -0
- package/fp/defaultsAll.js +5 -0
- package/fp/defaultsDeep.js +5 -0
- package/fp/defaultsDeepAll.js +5 -0
- package/fp/defer.js +5 -0
- package/fp/delay.js +5 -0
- package/fp/difference.js +5 -0
- package/fp/differenceBy.js +5 -0
- package/fp/differenceWith.js +5 -0
- package/fp/dissoc.js +1 -0
- package/fp/dissocPath.js +1 -0
- package/fp/divide.js +5 -0
- package/fp/drop.js +5 -0
- package/fp/dropLast.js +1 -0
- package/fp/dropLastWhile.js +1 -0
- package/fp/dropRight.js +5 -0
- package/fp/dropRightWhile.js +5 -0
- package/fp/dropWhile.js +5 -0
- package/fp/each.js +1 -0
- package/fp/eachRight.js +1 -0
- package/fp/endsWith.js +5 -0
- package/fp/entries.js +1 -0
- package/fp/entriesIn.js +1 -0
- package/fp/eq.js +5 -0
- package/fp/equals.js +1 -0
- package/fp/escape.js +5 -0
- package/fp/escapeRegExp.js +5 -0
- package/fp/every.js +5 -0
- package/fp/extend.js +1 -0
- package/fp/extendAll.js +1 -0
- package/fp/extendAllWith.js +1 -0
- package/fp/extendWith.js +1 -0
- package/fp/fill.js +5 -0
- package/fp/filter.js +5 -0
- package/fp/find.js +5 -0
- package/fp/findFrom.js +5 -0
- package/fp/findIndex.js +5 -0
- package/fp/findIndexFrom.js +5 -0
- package/fp/findKey.js +5 -0
- package/fp/findLast.js +5 -0
- package/fp/findLastFrom.js +5 -0
- package/fp/findLastIndex.js +5 -0
- package/fp/findLastIndexFrom.js +5 -0
- package/fp/findLastKey.js +5 -0
- package/fp/first.js +1 -0
- package/fp/flatMap.js +5 -0
- package/fp/flatMapDeep.js +5 -0
- package/fp/flatMapDepth.js +5 -0
- package/fp/flatten.js +5 -0
- package/fp/flattenDeep.js +5 -0
- package/fp/flattenDepth.js +5 -0
- package/fp/flip.js +5 -0
- package/fp/floor.js +5 -0
- package/fp/flow.js +5 -0
- package/fp/flowRight.js +5 -0
- package/fp/forEach.js +5 -0
- package/fp/forEachRight.js +5 -0
- package/fp/forIn.js +5 -0
- package/fp/forInRight.js +5 -0
- package/fp/forOwn.js +5 -0
- package/fp/forOwnRight.js +5 -0
- package/fp/fromPairs.js +5 -0
- package/fp/function.js +2 -0
- package/fp/functions.js +5 -0
- package/fp/functionsIn.js +5 -0
- package/fp/get.js +5 -0
- package/fp/getOr.js +5 -0
- package/fp/groupBy.js +5 -0
- package/fp/gt.js +5 -0
- package/fp/gte.js +5 -0
- package/fp/has.js +5 -0
- package/fp/hasIn.js +5 -0
- package/fp/head.js +5 -0
- package/fp/identical.js +1 -0
- package/fp/identity.js +5 -0
- package/fp/inRange.js +5 -0
- package/fp/includes.js +5 -0
- package/fp/includesFrom.js +5 -0
- package/fp/indexBy.js +1 -0
- package/fp/indexOf.js +5 -0
- package/fp/indexOfFrom.js +5 -0
- package/fp/init.js +1 -0
- package/fp/initial.js +5 -0
- package/fp/intersection.js +5 -0
- package/fp/intersectionBy.js +5 -0
- package/fp/intersectionWith.js +5 -0
- package/fp/invert.js +5 -0
- package/fp/invertBy.js +5 -0
- package/fp/invertObj.js +1 -0
- package/fp/invoke.js +5 -0
- package/fp/invokeArgs.js +5 -0
- package/fp/invokeArgsMap.js +5 -0
- package/fp/invokeMap.js +5 -0
- package/fp/isArguments.js +5 -0
- package/fp/isArray.js +5 -0
- package/fp/isArrayBuffer.js +5 -0
- package/fp/isArrayLike.js +5 -0
- package/fp/isArrayLikeObject.js +5 -0
- package/fp/isBoolean.js +5 -0
- package/fp/isBuffer.js +5 -0
- package/fp/isDate.js +5 -0
- package/fp/isElement.js +5 -0
- package/fp/isEmpty.js +5 -0
- package/fp/isEqual.js +5 -0
- package/fp/isEqualWith.js +5 -0
- package/fp/isError.js +5 -0
- package/fp/isFinite.js +5 -0
- package/fp/isFunction.js +5 -0
- package/fp/isInteger.js +5 -0
- package/fp/isLength.js +5 -0
- package/fp/isMap.js +5 -0
- package/fp/isMatch.js +5 -0
- package/fp/isMatchWith.js +5 -0
- package/fp/isNaN.js +5 -0
- package/fp/isNative.js +5 -0
- package/fp/isNil.js +5 -0
- package/fp/isNull.js +5 -0
- package/fp/isNumber.js +5 -0
- package/fp/isObject.js +5 -0
- package/fp/isObjectLike.js +5 -0
- package/fp/isPlainObject.js +5 -0
- package/fp/isRegExp.js +5 -0
- package/fp/isSafeInteger.js +5 -0
- package/fp/isSet.js +5 -0
- package/fp/isString.js +5 -0
- package/fp/isSymbol.js +5 -0
- package/fp/isTypedArray.js +5 -0
- package/fp/isUndefined.js +5 -0
- package/fp/isWeakMap.js +5 -0
- package/fp/isWeakSet.js +5 -0
- package/fp/iteratee.js +5 -0
- package/fp/join.js +5 -0
- package/fp/juxt.js +1 -0
- package/fp/kebabCase.js +5 -0
- package/fp/keyBy.js +5 -0
- package/fp/keys.js +5 -0
- package/fp/keysIn.js +5 -0
- package/fp/lang.js +2 -0
- package/fp/last.js +5 -0
- package/fp/lastIndexOf.js +5 -0
- package/fp/lastIndexOfFrom.js +5 -0
- package/fp/lowerCase.js +5 -0
- package/fp/lowerFirst.js +5 -0
- package/fp/lt.js +5 -0
- package/fp/lte.js +5 -0
- package/fp/map.js +5 -0
- package/fp/mapKeys.js +5 -0
- package/fp/mapValues.js +5 -0
- package/fp/matches.js +1 -0
- package/fp/matchesProperty.js +5 -0
- package/fp/math.js +2 -0
- package/fp/max.js +5 -0
- package/fp/maxBy.js +5 -0
- package/fp/mean.js +5 -0
- package/fp/meanBy.js +5 -0
- package/fp/memoize.js +5 -0
- package/fp/merge.js +5 -0
- package/fp/mergeAll.js +5 -0
- package/fp/mergeAllWith.js +5 -0
- package/fp/mergeWith.js +5 -0
- package/fp/method.js +5 -0
- package/fp/methodOf.js +5 -0
- package/fp/min.js +5 -0
- package/fp/minBy.js +5 -0
- package/fp/mixin.js +5 -0
- package/fp/multiply.js +5 -0
- package/fp/nAry.js +1 -0
- package/fp/negate.js +5 -0
- package/fp/next.js +5 -0
- package/fp/noop.js +5 -0
- package/fp/now.js +5 -0
- package/fp/nth.js +5 -0
- package/fp/nthArg.js +5 -0
- package/fp/number.js +2 -0
- package/fp/object.js +2 -0
- package/fp/omit.js +5 -0
- package/fp/omitAll.js +1 -0
- package/fp/omitBy.js +5 -0
- package/fp/once.js +5 -0
- package/fp/orderBy.js +5 -0
- package/fp/over.js +5 -0
- package/fp/overArgs.js +5 -0
- package/fp/overEvery.js +5 -0
- package/fp/overSome.js +5 -0
- package/fp/pad.js +5 -0
- package/fp/padChars.js +5 -0
- package/fp/padCharsEnd.js +5 -0
- package/fp/padCharsStart.js +5 -0
- package/fp/padEnd.js +5 -0
- package/fp/padStart.js +5 -0
- package/fp/parseInt.js +5 -0
- package/fp/partial.js +5 -0
- package/fp/partialRight.js +5 -0
- package/fp/partition.js +5 -0
- package/fp/path.js +1 -0
- package/fp/pathEq.js +1 -0
- package/fp/pathOr.js +1 -0
- package/fp/paths.js +1 -0
- package/fp/pick.js +5 -0
- package/fp/pickAll.js +1 -0
- package/fp/pickBy.js +5 -0
- package/fp/pipe.js +1 -0
- package/fp/placeholder.js +6 -0
- package/fp/plant.js +5 -0
- package/fp/pluck.js +1 -0
- package/fp/prop.js +1 -0
- package/fp/propEq.js +1 -0
- package/fp/propOr.js +1 -0
- package/fp/property.js +1 -0
- package/fp/propertyOf.js +5 -0
- package/fp/props.js +1 -0
- package/fp/pull.js +5 -0
- package/fp/pullAll.js +5 -0
- package/fp/pullAllBy.js +5 -0
- package/fp/pullAllWith.js +5 -0
- package/fp/pullAt.js +5 -0
- package/fp/random.js +5 -0
- package/fp/range.js +5 -0
- package/fp/rangeRight.js +5 -0
- package/fp/rangeStep.js +5 -0
- package/fp/rangeStepRight.js +5 -0
- package/fp/rearg.js +5 -0
- package/fp/reduce.js +5 -0
- package/fp/reduceRight.js +5 -0
- package/fp/reject.js +5 -0
- package/fp/remove.js +5 -0
- package/fp/repeat.js +5 -0
- package/fp/replace.js +5 -0
- package/fp/rest.js +5 -0
- package/fp/restFrom.js +5 -0
- package/fp/result.js +5 -0
- package/fp/reverse.js +5 -0
- package/fp/round.js +5 -0
- package/fp/sample.js +5 -0
- package/fp/sampleSize.js +5 -0
- package/fp/seq.js +2 -0
- package/fp/set.js +5 -0
- package/fp/setWith.js +5 -0
- package/fp/shuffle.js +5 -0
- package/fp/size.js +5 -0
- package/fp/slice.js +5 -0
- package/fp/snakeCase.js +5 -0
- package/fp/some.js +5 -0
- package/fp/sortBy.js +5 -0
- package/fp/sortedIndex.js +5 -0
- package/fp/sortedIndexBy.js +5 -0
- package/fp/sortedIndexOf.js +5 -0
- package/fp/sortedLastIndex.js +5 -0
- package/fp/sortedLastIndexBy.js +5 -0
- package/fp/sortedLastIndexOf.js +5 -0
- package/fp/sortedUniq.js +5 -0
- package/fp/sortedUniqBy.js +5 -0
- package/fp/split.js +5 -0
- package/fp/spread.js +5 -0
- package/fp/spreadFrom.js +5 -0
- package/fp/startCase.js +5 -0
- package/fp/startsWith.js +5 -0
- package/fp/string.js +2 -0
- package/fp/stubArray.js +5 -0
- package/fp/stubFalse.js +5 -0
- package/fp/stubObject.js +5 -0
- package/fp/stubString.js +5 -0
- package/fp/stubTrue.js +5 -0
- package/fp/subtract.js +5 -0
- package/fp/sum.js +5 -0
- package/fp/sumBy.js +5 -0
- package/fp/symmetricDifference.js +1 -0
- package/fp/symmetricDifferenceBy.js +1 -0
- package/fp/symmetricDifferenceWith.js +1 -0
- package/fp/tail.js +5 -0
- package/fp/take.js +5 -0
- package/fp/takeLast.js +1 -0
- package/fp/takeLastWhile.js +1 -0
- package/fp/takeRight.js +5 -0
- package/fp/takeRightWhile.js +5 -0
- package/fp/takeWhile.js +5 -0
- package/fp/tap.js +5 -0
- package/fp/template.js +5 -0
- package/fp/templateSettings.js +5 -0
- package/fp/throttle.js +5 -0
- package/fp/thru.js +5 -0
- package/fp/times.js +5 -0
- package/fp/toArray.js +5 -0
- package/fp/toFinite.js +5 -0
- package/fp/toInteger.js +5 -0
- package/fp/toIterator.js +5 -0
- package/fp/toJSON.js +5 -0
- package/fp/toLength.js +5 -0
- package/fp/toLower.js +5 -0
- package/fp/toNumber.js +5 -0
- package/fp/toPairs.js +5 -0
- package/fp/toPairsIn.js +5 -0
- package/fp/toPath.js +5 -0
- package/fp/toPlainObject.js +5 -0
- package/fp/toSafeInteger.js +5 -0
- package/fp/toString.js +5 -0
- package/fp/toUpper.js +5 -0
- package/fp/transform.js +5 -0
- package/fp/trim.js +5 -0
- package/fp/trimChars.js +5 -0
- package/fp/trimCharsEnd.js +5 -0
- package/fp/trimCharsStart.js +5 -0
- package/fp/trimEnd.js +5 -0
- package/fp/trimStart.js +5 -0
- package/fp/truncate.js +5 -0
- package/fp/unapply.js +1 -0
- package/fp/unary.js +5 -0
- package/fp/unescape.js +5 -0
- package/fp/union.js +5 -0
- package/fp/unionBy.js +5 -0
- package/fp/unionWith.js +5 -0
- package/fp/uniq.js +5 -0
- package/fp/uniqBy.js +5 -0
- package/fp/uniqWith.js +5 -0
- package/fp/uniqueId.js +5 -0
- package/fp/unnest.js +1 -0
- package/fp/unset.js +5 -0
- package/fp/unzip.js +5 -0
- package/fp/unzipWith.js +5 -0
- package/fp/update.js +5 -0
- package/fp/updateWith.js +5 -0
- package/fp/upperCase.js +5 -0
- package/fp/upperFirst.js +5 -0
- package/fp/useWith.js +1 -0
- package/fp/util.js +2 -0
- package/fp/value.js +5 -0
- package/fp/valueOf.js +5 -0
- package/fp/values.js +5 -0
- package/fp/valuesIn.js +5 -0
- package/fp/where.js +1 -0
- package/fp/whereEq.js +1 -0
- package/fp/without.js +5 -0
- package/fp/words.js +5 -0
- package/fp/wrap.js +5 -0
- package/fp/wrapperAt.js +5 -0
- package/fp/wrapperChain.js +5 -0
- package/fp/wrapperLodash.js +5 -0
- package/fp/wrapperReverse.js +5 -0
- package/fp/wrapperValue.js +5 -0
- package/fp/xor.js +5 -0
- package/fp/xorBy.js +5 -0
- package/fp/xorWith.js +5 -0
- package/fp/zip.js +5 -0
- package/fp/zipAll.js +5 -0
- package/fp/zipObj.js +1 -0
- package/fp/zipObject.js +5 -0
- package/fp/zipObjectDeep.js +5 -0
- package/fp/zipWith.js +5 -0
- package/fp.js +2 -0
- package/fromPairs.js +28 -0
- package/function.js +25 -0
- package/functions.js +31 -0
- package/functionsIn.js +31 -0
- package/get.js +33 -0
- package/groupBy.js +41 -0
- package/gt.js +29 -0
- package/gte.js +30 -0
- package/has.js +35 -0
- package/hasIn.js +34 -0
- package/head.js +23 -0
- package/identity.js +21 -0
- package/inRange.js +55 -0
- package/includes.js +53 -0
- package/index.js +1 -0
- package/indexOf.js +42 -0
- package/initial.js +22 -0
- package/intersection.js +30 -0
- package/intersectionBy.js +45 -0
- package/intersectionWith.js +41 -0
- package/invert.js +42 -0
- package/invertBy.js +56 -0
- package/invoke.js +24 -0
- package/invokeMap.js +41 -0
- package/isArguments.js +36 -0
- package/isArray.js +26 -0
- package/isArrayBuffer.js +27 -0
- package/isArrayLike.js +33 -0
- package/isArrayLikeObject.js +33 -0
- package/isBoolean.js +29 -0
- package/isBuffer.js +38 -0
- package/isDate.js +27 -0
- package/isElement.js +25 -0
- package/isEmpty.js +77 -0
- package/isEqual.js +35 -0
- package/isEqualWith.js +41 -0
- package/isError.js +36 -0
- package/isFinite.js +36 -0
- package/isFunction.js +37 -0
- package/isInteger.js +33 -0
- package/isLength.js +35 -0
- package/isMap.js +27 -0
- package/isMatch.js +36 -0
- package/isMatchWith.js +41 -0
- package/isNaN.js +38 -0
- package/isNative.js +40 -0
- package/isNil.js +25 -0
- package/isNull.js +22 -0
- package/isNumber.js +38 -0
- package/isObject.js +31 -0
- package/isObjectLike.js +29 -0
- package/isPlainObject.js +62 -0
- package/isRegExp.js +27 -0
- package/isSafeInteger.js +37 -0
- package/isSet.js +27 -0
- package/isString.js +30 -0
- package/isSymbol.js +29 -0
- package/isTypedArray.js +27 -0
- package/isUndefined.js +22 -0
- package/isWeakMap.js +28 -0
- package/isWeakSet.js +28 -0
- package/iteratee.js +53 -0
- package/join.js +26 -0
- package/kebabCase.js +28 -0
- package/keyBy.js +36 -0
- package/keys.js +37 -0
- package/keysIn.js +32 -0
- package/lang.js +58 -0
- package/last.js +20 -0
- package/lastIndexOf.js +46 -0
- package/lodash.js +17209 -0
- package/lodash.min.js +138 -0
- package/lowerCase.js +27 -0
- package/lowerFirst.js +22 -0
- package/lt.js +29 -0
- package/lte.js +30 -0
- package/map.js +53 -0
- package/mapKeys.js +36 -0
- package/mapValues.js +43 -0
- package/matches.js +46 -0
- package/matchesProperty.js +44 -0
- package/math.js +17 -0
- package/max.js +29 -0
- package/maxBy.js +34 -0
- package/mean.js +22 -0
- package/meanBy.js +31 -0
- package/memoize.js +73 -0
- package/merge.js +39 -0
- package/mergeWith.js +39 -0
- package/method.js +34 -0
- package/methodOf.js +33 -0
- package/min.js +29 -0
- package/minBy.js +34 -0
- package/mixin.js +74 -0
- package/multiply.js +22 -0
- package/negate.js +40 -0
- package/next.js +35 -0
- package/noop.js +17 -0
- package/now.js +23 -0
- package/nth.js +29 -0
- package/nthArg.js +32 -0
- package/number.js +5 -0
- package/object.js +49 -0
- package/omit.js +57 -0
- package/omitBy.js +29 -0
- package/once.js +25 -0
- package/orderBy.js +47 -0
- package/over.js +24 -0
- package/overArgs.js +61 -0
- package/overEvery.js +34 -0
- package/overSome.js +37 -0
- package/package.json +27 -0
- package/pad.js +49 -0
- package/padEnd.js +39 -0
- package/padStart.js +39 -0
- package/parseInt.js +43 -0
- package/partial.js +50 -0
- package/partialRight.js +49 -0
- package/partition.js +43 -0
- package/pick.js +25 -0
- package/pickBy.js +37 -0
- package/plant.js +48 -0
- package/property.js +32 -0
- package/propertyOf.js +30 -0
- package/pull.js +29 -0
- package/pullAll.js +29 -0
- package/pullAllBy.js +33 -0
- package/pullAllWith.js +32 -0
- package/pullAt.js +43 -0
- package/random.js +82 -0
- package/range.js +46 -0
- package/rangeRight.js +41 -0
- package/rearg.js +33 -0
- package/reduce.js +51 -0
- package/reduceRight.js +36 -0
- package/reject.js +46 -0
- package/remove.js +53 -0
- package/repeat.js +37 -0
- package/replace.js +29 -0
- package/rest.js +40 -0
- package/result.js +56 -0
- package/reverse.js +34 -0
- package/round.js +26 -0
- package/sample.js +24 -0
- package/sampleSize.js +37 -0
- package/seq.js +16 -0
- package/set.js +35 -0
- package/setWith.js +32 -0
- package/shuffle.js +25 -0
- package/size.js +46 -0
- package/slice.js +37 -0
- package/snakeCase.js +28 -0
- package/some.js +51 -0
- package/sortBy.js +48 -0
- package/sortedIndex.js +24 -0
- package/sortedIndexBy.js +33 -0
- package/sortedIndexOf.js +31 -0
- package/sortedLastIndex.js +25 -0
- package/sortedLastIndexBy.js +33 -0
- package/sortedLastIndexOf.js +31 -0
- package/sortedUniq.js +24 -0
- package/sortedUniqBy.js +26 -0
- package/split.js +52 -0
- package/spread.js +63 -0
- package/startCase.js +29 -0
- package/startsWith.js +39 -0
- package/string.js +33 -0
- package/stubArray.js +23 -0
- package/stubFalse.js +18 -0
- package/stubObject.js +23 -0
- package/stubString.js +18 -0
- package/stubTrue.js +18 -0
- package/subtract.js +22 -0
- package/sum.js +24 -0
- package/sumBy.js +33 -0
- package/tail.js +22 -0
- package/take.js +37 -0
- package/takeRight.js +39 -0
- package/takeRightWhile.js +45 -0
- package/takeWhile.js +45 -0
- package/tap.js +29 -0
- package/template.js +272 -0
- package/templateSettings.js +67 -0
- package/throttle.js +69 -0
- package/thru.js +28 -0
- package/times.js +51 -0
- package/toArray.js +58 -0
- package/toFinite.js +42 -0
- package/toInteger.js +36 -0
- package/toIterator.js +23 -0
- package/toJSON.js +1 -0
- package/toLength.js +38 -0
- package/toLower.js +28 -0
- package/toNumber.js +64 -0
- package/toPairs.js +30 -0
- package/toPairsIn.js +30 -0
- package/toPath.js +33 -0
- package/toPlainObject.js +32 -0
- package/toSafeInteger.js +37 -0
- package/toString.js +28 -0
- package/toUpper.js +28 -0
- package/transform.js +65 -0
- package/trim.js +47 -0
- package/trimEnd.js +41 -0
- package/trimStart.js +43 -0
- package/truncate.js +111 -0
- package/unary.js +22 -0
- package/unescape.js +34 -0
- package/union.js +26 -0
- package/unionBy.js +39 -0
- package/unionWith.js +34 -0
- package/uniq.js +25 -0
- package/uniqBy.js +31 -0
- package/uniqWith.js +28 -0
- package/uniqueId.js +28 -0
- package/unset.js +34 -0
- package/unzip.js +45 -0
- package/unzipWith.js +39 -0
- package/update.js +35 -0
- package/updateWith.js +33 -0
- package/upperCase.js +27 -0
- package/upperFirst.js +22 -0
- package/util.js +34 -0
- package/value.js +1 -0
- package/valueOf.js +1 -0
- package/values.js +34 -0
- package/valuesIn.js +32 -0
- package/without.js +31 -0
- package/words.js +35 -0
- package/wrap.js +30 -0
- package/wrapperAt.js +48 -0
- package/wrapperChain.js +34 -0
- package/wrapperLodash.js +147 -0
- package/wrapperReverse.js +44 -0
- package/wrapperValue.js +21 -0
- package/xor.js +28 -0
- package/xorBy.js +39 -0
- package/xorWith.js +34 -0
- package/zip.js +22 -0
- package/zipObject.js +24 -0
- package/zipObjectDeep.js +23 -0
- package/zipWith.js +32 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Used to match wrap detail comments. */
|
|
2
|
+
var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Inserts wrapper `details` in a comment at the top of the `source` body.
|
|
6
|
+
*
|
|
7
|
+
* @private
|
|
8
|
+
* @param {string} source The source to modify.
|
|
9
|
+
* @returns {Array} details The details to insert.
|
|
10
|
+
* @returns {string} Returns the modified source.
|
|
11
|
+
*/
|
|
12
|
+
function insertWrapDetails(source, details) {
|
|
13
|
+
var length = details.length;
|
|
14
|
+
if (!length) {
|
|
15
|
+
return source;
|
|
16
|
+
}
|
|
17
|
+
var lastIndex = length - 1;
|
|
18
|
+
details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];
|
|
19
|
+
details = details.join(length > 2 ? ', ' : ' ');
|
|
20
|
+
return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n');
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = insertWrapDetails;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
var Symbol = require('./_Symbol'),
|
|
2
|
+
isArguments = require('./isArguments'),
|
|
3
|
+
isArray = require('./isArray');
|
|
4
|
+
|
|
5
|
+
/** Built-in value references. */
|
|
6
|
+
var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Checks if `value` is a flattenable `arguments` object or array.
|
|
10
|
+
*
|
|
11
|
+
* @private
|
|
12
|
+
* @param {*} value The value to check.
|
|
13
|
+
* @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
|
|
14
|
+
*/
|
|
15
|
+
function isFlattenable(value) {
|
|
16
|
+
return isArray(value) || isArguments(value) ||
|
|
17
|
+
!!(spreadableSymbol && value && value[spreadableSymbol]);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = isFlattenable;
|
package/_isIndex.js
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/** Used as references for various `Number` constants. */
|
|
2
|
+
var MAX_SAFE_INTEGER = 9007199254740991;
|
|
3
|
+
|
|
4
|
+
/** Used to detect unsigned integer values. */
|
|
5
|
+
var reIsUint = /^(?:0|[1-9]\d*)$/;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Checks if `value` is a valid array-like index.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {*} value The value to check.
|
|
12
|
+
* @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
|
|
13
|
+
* @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
|
|
14
|
+
*/
|
|
15
|
+
function isIndex(value, length) {
|
|
16
|
+
var type = typeof value;
|
|
17
|
+
length = length == null ? MAX_SAFE_INTEGER : length;
|
|
18
|
+
|
|
19
|
+
return !!length &&
|
|
20
|
+
(type == 'number' ||
|
|
21
|
+
(type != 'symbol' && reIsUint.test(value))) &&
|
|
22
|
+
(value > -1 && value % 1 == 0 && value < length);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
module.exports = isIndex;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
var eq = require('./eq'),
|
|
2
|
+
isArrayLike = require('./isArrayLike'),
|
|
3
|
+
isIndex = require('./_isIndex'),
|
|
4
|
+
isObject = require('./isObject');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Checks if the given arguments are from an iteratee call.
|
|
8
|
+
*
|
|
9
|
+
* @private
|
|
10
|
+
* @param {*} value The potential iteratee value argument.
|
|
11
|
+
* @param {*} index The potential iteratee index or key argument.
|
|
12
|
+
* @param {*} object The potential iteratee object argument.
|
|
13
|
+
* @returns {boolean} Returns `true` if the arguments are from an iteratee call,
|
|
14
|
+
* else `false`.
|
|
15
|
+
*/
|
|
16
|
+
function isIterateeCall(value, index, object) {
|
|
17
|
+
if (!isObject(object)) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
var type = typeof index;
|
|
21
|
+
if (type == 'number'
|
|
22
|
+
? (isArrayLike(object) && isIndex(index, object.length))
|
|
23
|
+
: (type == 'string' && index in object)
|
|
24
|
+
) {
|
|
25
|
+
return eq(object[index], value);
|
|
26
|
+
}
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
module.exports = isIterateeCall;
|
package/_isKey.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
var isArray = require('./isArray'),
|
|
2
|
+
isSymbol = require('./isSymbol');
|
|
3
|
+
|
|
4
|
+
/** Used to match property names within property paths. */
|
|
5
|
+
var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
|
|
6
|
+
reIsPlainProp = /^\w*$/;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Checks if `value` is a property name and not a property path.
|
|
10
|
+
*
|
|
11
|
+
* @private
|
|
12
|
+
* @param {*} value The value to check.
|
|
13
|
+
* @param {Object} [object] The object to query keys on.
|
|
14
|
+
* @returns {boolean} Returns `true` if `value` is a property name, else `false`.
|
|
15
|
+
*/
|
|
16
|
+
function isKey(value, object) {
|
|
17
|
+
if (isArray(value)) {
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
var type = typeof value;
|
|
21
|
+
if (type == 'number' || type == 'symbol' || type == 'boolean' ||
|
|
22
|
+
value == null || isSymbol(value)) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
|
|
26
|
+
(object != null && value in Object(object));
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
module.exports = isKey;
|
package/_isKeyable.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if `value` is suitable for use as unique object key.
|
|
3
|
+
*
|
|
4
|
+
* @private
|
|
5
|
+
* @param {*} value The value to check.
|
|
6
|
+
* @returns {boolean} Returns `true` if `value` is suitable, else `false`.
|
|
7
|
+
*/
|
|
8
|
+
function isKeyable(value) {
|
|
9
|
+
var type = typeof value;
|
|
10
|
+
return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
|
|
11
|
+
? (value !== '__proto__')
|
|
12
|
+
: (value === null);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
module.exports = isKeyable;
|
package/_isLaziable.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var LazyWrapper = require('./_LazyWrapper'),
|
|
2
|
+
getData = require('./_getData'),
|
|
3
|
+
getFuncName = require('./_getFuncName'),
|
|
4
|
+
lodash = require('./wrapperLodash');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Checks if `func` has a lazy counterpart.
|
|
8
|
+
*
|
|
9
|
+
* @private
|
|
10
|
+
* @param {Function} func The function to check.
|
|
11
|
+
* @returns {boolean} Returns `true` if `func` has a lazy counterpart,
|
|
12
|
+
* else `false`.
|
|
13
|
+
*/
|
|
14
|
+
function isLaziable(func) {
|
|
15
|
+
var funcName = getFuncName(func),
|
|
16
|
+
other = lodash[funcName];
|
|
17
|
+
|
|
18
|
+
if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
if (func === other) {
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
var data = getData(other);
|
|
25
|
+
return !!data && func === data[0];
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
module.exports = isLaziable;
|
package/_isMaskable.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
var coreJsData = require('./_coreJsData'),
|
|
2
|
+
isFunction = require('./isFunction'),
|
|
3
|
+
stubFalse = require('./stubFalse');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Checks if `func` is capable of being masked.
|
|
7
|
+
*
|
|
8
|
+
* @private
|
|
9
|
+
* @param {*} value The value to check.
|
|
10
|
+
* @returns {boolean} Returns `true` if `func` is maskable, else `false`.
|
|
11
|
+
*/
|
|
12
|
+
var isMaskable = coreJsData ? isFunction : stubFalse;
|
|
13
|
+
|
|
14
|
+
module.exports = isMaskable;
|
package/_isMasked.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
var coreJsData = require('./_coreJsData');
|
|
2
|
+
|
|
3
|
+
/** Used to detect methods masquerading as native. */
|
|
4
|
+
var maskSrcKey = (function() {
|
|
5
|
+
var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
|
|
6
|
+
return uid ? ('Symbol(src)_1.' + uid) : '';
|
|
7
|
+
}());
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Checks if `func` has its source masked.
|
|
11
|
+
*
|
|
12
|
+
* @private
|
|
13
|
+
* @param {Function} func The function to check.
|
|
14
|
+
* @returns {boolean} Returns `true` if `func` is masked, else `false`.
|
|
15
|
+
*/
|
|
16
|
+
function isMasked(func) {
|
|
17
|
+
return !!maskSrcKey && (maskSrcKey in func);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = isMasked;
|
package/_isPrototype.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Used for built-in method references. */
|
|
2
|
+
var objectProto = Object.prototype;
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Checks if `value` is likely a prototype object.
|
|
6
|
+
*
|
|
7
|
+
* @private
|
|
8
|
+
* @param {*} value The value to check.
|
|
9
|
+
* @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
|
|
10
|
+
*/
|
|
11
|
+
function isPrototype(value) {
|
|
12
|
+
var Ctor = value && value.constructor,
|
|
13
|
+
proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
|
|
14
|
+
|
|
15
|
+
return value === proto;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = isPrototype;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
var isObject = require('./isObject');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @param {*} value The value to check.
|
|
8
|
+
* @returns {boolean} Returns `true` if `value` if suitable for strict
|
|
9
|
+
* equality comparisons, else `false`.
|
|
10
|
+
*/
|
|
11
|
+
function isStrictComparable(value) {
|
|
12
|
+
return value === value && !isObject(value);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
module.exports = isStrictComparable;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts `iterator` to an array.
|
|
3
|
+
*
|
|
4
|
+
* @private
|
|
5
|
+
* @param {Object} iterator The iterator to convert.
|
|
6
|
+
* @returns {Array} Returns the converted array.
|
|
7
|
+
*/
|
|
8
|
+
function iteratorToArray(iterator) {
|
|
9
|
+
var data,
|
|
10
|
+
result = [];
|
|
11
|
+
|
|
12
|
+
while (!(data = iterator.next()).done) {
|
|
13
|
+
result.push(data.value);
|
|
14
|
+
}
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = iteratorToArray;
|
package/_lazyClone.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
var LazyWrapper = require('./_LazyWrapper'),
|
|
2
|
+
copyArray = require('./_copyArray');
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Creates a clone of the lazy wrapper object.
|
|
6
|
+
*
|
|
7
|
+
* @private
|
|
8
|
+
* @name clone
|
|
9
|
+
* @memberOf LazyWrapper
|
|
10
|
+
* @returns {Object} Returns the cloned `LazyWrapper` object.
|
|
11
|
+
*/
|
|
12
|
+
function lazyClone() {
|
|
13
|
+
var result = new LazyWrapper(this.__wrapped__);
|
|
14
|
+
result.__actions__ = copyArray(this.__actions__);
|
|
15
|
+
result.__dir__ = this.__dir__;
|
|
16
|
+
result.__filtered__ = this.__filtered__;
|
|
17
|
+
result.__iteratees__ = copyArray(this.__iteratees__);
|
|
18
|
+
result.__takeCount__ = this.__takeCount__;
|
|
19
|
+
result.__views__ = copyArray(this.__views__);
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = lazyClone;
|
package/_lazyReverse.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
var LazyWrapper = require('./_LazyWrapper');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Reverses the direction of lazy iteration.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name reverse
|
|
8
|
+
* @memberOf LazyWrapper
|
|
9
|
+
* @returns {Object} Returns the new reversed `LazyWrapper` object.
|
|
10
|
+
*/
|
|
11
|
+
function lazyReverse() {
|
|
12
|
+
if (this.__filtered__) {
|
|
13
|
+
var result = new LazyWrapper(this);
|
|
14
|
+
result.__dir__ = -1;
|
|
15
|
+
result.__filtered__ = true;
|
|
16
|
+
} else {
|
|
17
|
+
result = this.clone();
|
|
18
|
+
result.__dir__ *= -1;
|
|
19
|
+
}
|
|
20
|
+
return result;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = lazyReverse;
|
package/_lazyValue.js
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
var baseWrapperValue = require('./_baseWrapperValue'),
|
|
2
|
+
getView = require('./_getView'),
|
|
3
|
+
isArray = require('./isArray');
|
|
4
|
+
|
|
5
|
+
/** Used to indicate the type of lazy iteratees. */
|
|
6
|
+
var LAZY_FILTER_FLAG = 1,
|
|
7
|
+
LAZY_MAP_FLAG = 2;
|
|
8
|
+
|
|
9
|
+
/* Built-in method references for those with the same name as other `lodash` methods. */
|
|
10
|
+
var nativeMin = Math.min;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Extracts the unwrapped value from its lazy wrapper.
|
|
14
|
+
*
|
|
15
|
+
* @private
|
|
16
|
+
* @name value
|
|
17
|
+
* @memberOf LazyWrapper
|
|
18
|
+
* @returns {*} Returns the unwrapped value.
|
|
19
|
+
*/
|
|
20
|
+
function lazyValue() {
|
|
21
|
+
var array = this.__wrapped__.value(),
|
|
22
|
+
dir = this.__dir__,
|
|
23
|
+
isArr = isArray(array),
|
|
24
|
+
isRight = dir < 0,
|
|
25
|
+
arrLength = isArr ? array.length : 0,
|
|
26
|
+
view = getView(0, arrLength, this.__views__),
|
|
27
|
+
start = view.start,
|
|
28
|
+
end = view.end,
|
|
29
|
+
length = end - start,
|
|
30
|
+
index = isRight ? end : (start - 1),
|
|
31
|
+
iteratees = this.__iteratees__,
|
|
32
|
+
iterLength = iteratees.length,
|
|
33
|
+
resIndex = 0,
|
|
34
|
+
takeCount = nativeMin(length, this.__takeCount__);
|
|
35
|
+
|
|
36
|
+
if (!isArr || (!isRight && arrLength == length && takeCount == length)) {
|
|
37
|
+
return baseWrapperValue(array, this.__actions__);
|
|
38
|
+
}
|
|
39
|
+
var result = [];
|
|
40
|
+
|
|
41
|
+
outer:
|
|
42
|
+
while (length-- && resIndex < takeCount) {
|
|
43
|
+
index += dir;
|
|
44
|
+
|
|
45
|
+
var iterIndex = -1,
|
|
46
|
+
value = array[index];
|
|
47
|
+
|
|
48
|
+
while (++iterIndex < iterLength) {
|
|
49
|
+
var data = iteratees[iterIndex],
|
|
50
|
+
iteratee = data.iteratee,
|
|
51
|
+
type = data.type,
|
|
52
|
+
computed = iteratee(value);
|
|
53
|
+
|
|
54
|
+
if (type == LAZY_MAP_FLAG) {
|
|
55
|
+
value = computed;
|
|
56
|
+
} else if (!computed) {
|
|
57
|
+
if (type == LAZY_FILTER_FLAG) {
|
|
58
|
+
continue outer;
|
|
59
|
+
} else {
|
|
60
|
+
break outer;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
result[resIndex++] = value;
|
|
65
|
+
}
|
|
66
|
+
return result;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
module.exports = lazyValue;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
var assocIndexOf = require('./_assocIndexOf');
|
|
2
|
+
|
|
3
|
+
/** Used for built-in method references. */
|
|
4
|
+
var arrayProto = Array.prototype;
|
|
5
|
+
|
|
6
|
+
/** Built-in value references. */
|
|
7
|
+
var splice = arrayProto.splice;
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Removes `key` and its value from the list cache.
|
|
11
|
+
*
|
|
12
|
+
* @private
|
|
13
|
+
* @name delete
|
|
14
|
+
* @memberOf ListCache
|
|
15
|
+
* @param {string} key The key of the value to remove.
|
|
16
|
+
* @returns {boolean} Returns `true` if the entry was removed, else `false`.
|
|
17
|
+
*/
|
|
18
|
+
function listCacheDelete(key) {
|
|
19
|
+
var data = this.__data__,
|
|
20
|
+
index = assocIndexOf(data, key);
|
|
21
|
+
|
|
22
|
+
if (index < 0) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
var lastIndex = data.length - 1;
|
|
26
|
+
if (index == lastIndex) {
|
|
27
|
+
data.pop();
|
|
28
|
+
} else {
|
|
29
|
+
splice.call(data, index, 1);
|
|
30
|
+
}
|
|
31
|
+
--this.size;
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
module.exports = listCacheDelete;
|
package/_listCacheGet.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
var assocIndexOf = require('./_assocIndexOf');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Gets the list cache value for `key`.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name get
|
|
8
|
+
* @memberOf ListCache
|
|
9
|
+
* @param {string} key The key of the value to get.
|
|
10
|
+
* @returns {*} Returns the entry value.
|
|
11
|
+
*/
|
|
12
|
+
function listCacheGet(key) {
|
|
13
|
+
var data = this.__data__,
|
|
14
|
+
index = assocIndexOf(data, key);
|
|
15
|
+
|
|
16
|
+
return index < 0 ? undefined : data[index][1];
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
module.exports = listCacheGet;
|
package/_listCacheHas.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
var assocIndexOf = require('./_assocIndexOf');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Checks if a list cache value for `key` exists.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name has
|
|
8
|
+
* @memberOf ListCache
|
|
9
|
+
* @param {string} key The key of the entry to check.
|
|
10
|
+
* @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
|
|
11
|
+
*/
|
|
12
|
+
function listCacheHas(key) {
|
|
13
|
+
return assocIndexOf(this.__data__, key) > -1;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
module.exports = listCacheHas;
|
package/_listCacheSet.js
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
var assocIndexOf = require('./_assocIndexOf');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Sets the list cache `key` to `value`.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name set
|
|
8
|
+
* @memberOf ListCache
|
|
9
|
+
* @param {string} key The key of the value to set.
|
|
10
|
+
* @param {*} value The value to set.
|
|
11
|
+
* @returns {Object} Returns the list cache instance.
|
|
12
|
+
*/
|
|
13
|
+
function listCacheSet(key, value) {
|
|
14
|
+
var data = this.__data__,
|
|
15
|
+
index = assocIndexOf(data, key);
|
|
16
|
+
|
|
17
|
+
if (index < 0) {
|
|
18
|
+
++this.size;
|
|
19
|
+
data.push([key, value]);
|
|
20
|
+
} else {
|
|
21
|
+
data[index][1] = value;
|
|
22
|
+
}
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
module.exports = listCacheSet;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
var Hash = require('./_Hash'),
|
|
2
|
+
ListCache = require('./_ListCache'),
|
|
3
|
+
Map = require('./_Map');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Removes all key-value entries from the map.
|
|
7
|
+
*
|
|
8
|
+
* @private
|
|
9
|
+
* @name clear
|
|
10
|
+
* @memberOf MapCache
|
|
11
|
+
*/
|
|
12
|
+
function mapCacheClear() {
|
|
13
|
+
this.size = 0;
|
|
14
|
+
this.__data__ = {
|
|
15
|
+
'hash': new Hash,
|
|
16
|
+
'map': new (Map || ListCache),
|
|
17
|
+
'string': new Hash
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
module.exports = mapCacheClear;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var getMapData = require('./_getMapData');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Removes `key` and its value from the map.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name delete
|
|
8
|
+
* @memberOf MapCache
|
|
9
|
+
* @param {string} key The key of the value to remove.
|
|
10
|
+
* @returns {boolean} Returns `true` if the entry was removed, else `false`.
|
|
11
|
+
*/
|
|
12
|
+
function mapCacheDelete(key) {
|
|
13
|
+
var result = getMapData(this, key)['delete'](key);
|
|
14
|
+
this.size -= result ? 1 : 0;
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = mapCacheDelete;
|
package/_mapCacheGet.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
var getMapData = require('./_getMapData');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Gets the map value for `key`.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name get
|
|
8
|
+
* @memberOf MapCache
|
|
9
|
+
* @param {string} key The key of the value to get.
|
|
10
|
+
* @returns {*} Returns the entry value.
|
|
11
|
+
*/
|
|
12
|
+
function mapCacheGet(key) {
|
|
13
|
+
return getMapData(this, key).get(key);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
module.exports = mapCacheGet;
|
package/_mapCacheHas.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
var getMapData = require('./_getMapData');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Checks if a map value for `key` exists.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name has
|
|
8
|
+
* @memberOf MapCache
|
|
9
|
+
* @param {string} key The key of the entry to check.
|
|
10
|
+
* @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
|
|
11
|
+
*/
|
|
12
|
+
function mapCacheHas(key) {
|
|
13
|
+
return getMapData(this, key).has(key);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
module.exports = mapCacheHas;
|
package/_mapCacheSet.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var getMapData = require('./_getMapData');
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Sets the map `key` to `value`.
|
|
5
|
+
*
|
|
6
|
+
* @private
|
|
7
|
+
* @name set
|
|
8
|
+
* @memberOf MapCache
|
|
9
|
+
* @param {string} key The key of the value to set.
|
|
10
|
+
* @param {*} value The value to set.
|
|
11
|
+
* @returns {Object} Returns the map cache instance.
|
|
12
|
+
*/
|
|
13
|
+
function mapCacheSet(key, value) {
|
|
14
|
+
var data = getMapData(this, key),
|
|
15
|
+
size = data.size;
|
|
16
|
+
|
|
17
|
+
data.set(key, value);
|
|
18
|
+
this.size += data.size == size ? 0 : 1;
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
module.exports = mapCacheSet;
|
package/_mapToArray.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts `map` to its key-value pairs.
|
|
3
|
+
*
|
|
4
|
+
* @private
|
|
5
|
+
* @param {Object} map The map to convert.
|
|
6
|
+
* @returns {Array} Returns the key-value pairs.
|
|
7
|
+
*/
|
|
8
|
+
function mapToArray(map) {
|
|
9
|
+
var index = -1,
|
|
10
|
+
result = Array(map.size);
|
|
11
|
+
|
|
12
|
+
map.forEach(function(value, key) {
|
|
13
|
+
result[++index] = [key, value];
|
|
14
|
+
});
|
|
15
|
+
return result;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = mapToArray;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A specialized version of `matchesProperty` for source values suitable
|
|
3
|
+
* for strict equality comparisons, i.e. `===`.
|
|
4
|
+
*
|
|
5
|
+
* @private
|
|
6
|
+
* @param {string} key The key of the property to get.
|
|
7
|
+
* @param {*} srcValue The value to match.
|
|
8
|
+
* @returns {Function} Returns the new spec function.
|
|
9
|
+
*/
|
|
10
|
+
function matchesStrictComparable(key, srcValue) {
|
|
11
|
+
return function(object) {
|
|
12
|
+
if (object == null) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
return object[key] === srcValue &&
|
|
16
|
+
(srcValue !== undefined || (key in Object(object)));
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = matchesStrictComparable;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
var memoize = require('./memoize');
|
|
2
|
+
|
|
3
|
+
/** Used as the maximum memoize cache size. */
|
|
4
|
+
var MAX_MEMOIZE_SIZE = 500;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A specialized version of `_.memoize` which clears the memoized function's
|
|
8
|
+
* cache when it exceeds `MAX_MEMOIZE_SIZE`.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {Function} func The function to have its output memoized.
|
|
12
|
+
* @returns {Function} Returns the new memoized function.
|
|
13
|
+
*/
|
|
14
|
+
function memoizeCapped(func) {
|
|
15
|
+
var result = memoize(func, function(key) {
|
|
16
|
+
if (cache.size === MAX_MEMOIZE_SIZE) {
|
|
17
|
+
cache.clear();
|
|
18
|
+
}
|
|
19
|
+
return key;
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
var cache = result.cache;
|
|
23
|
+
return result;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
module.exports = memoizeCapped;
|