@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
package/_baseIsDate.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var baseGetTag = require('./_baseGetTag'),
|
|
2
|
+
isObjectLike = require('./isObjectLike');
|
|
3
|
+
|
|
4
|
+
/** `Object#toString` result references. */
|
|
5
|
+
var dateTag = '[object Date]';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The base implementation of `_.isDate` without Node.js optimizations.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {*} value The value to check.
|
|
12
|
+
* @returns {boolean} Returns `true` if `value` is a date object, else `false`.
|
|
13
|
+
*/
|
|
14
|
+
function baseIsDate(value) {
|
|
15
|
+
return isObjectLike(value) && baseGetTag(value) == dateTag;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = baseIsDate;
|
package/_baseIsEqual.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var baseIsEqualDeep = require('./_baseIsEqualDeep'),
|
|
2
|
+
isObjectLike = require('./isObjectLike');
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The base implementation of `_.isEqual` which supports partial comparisons
|
|
6
|
+
* and tracks traversed objects.
|
|
7
|
+
*
|
|
8
|
+
* @private
|
|
9
|
+
* @param {*} value The value to compare.
|
|
10
|
+
* @param {*} other The other value to compare.
|
|
11
|
+
* @param {boolean} bitmask The bitmask flags.
|
|
12
|
+
* 1 - Unordered comparison
|
|
13
|
+
* 2 - Partial comparison
|
|
14
|
+
* @param {Function} [customizer] The function to customize comparisons.
|
|
15
|
+
* @param {Object} [stack] Tracks traversed `value` and `other` objects.
|
|
16
|
+
* @returns {boolean} Returns `true` if the values are equivalent, else `false`.
|
|
17
|
+
*/
|
|
18
|
+
function baseIsEqual(value, other, bitmask, customizer, stack) {
|
|
19
|
+
if (value === other) {
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
|
|
23
|
+
return value !== value && other !== other;
|
|
24
|
+
}
|
|
25
|
+
return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
module.exports = baseIsEqual;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
var Stack = require('./_Stack'),
|
|
2
|
+
equalArrays = require('./_equalArrays'),
|
|
3
|
+
equalByTag = require('./_equalByTag'),
|
|
4
|
+
equalObjects = require('./_equalObjects'),
|
|
5
|
+
getTag = require('./_getTag'),
|
|
6
|
+
isArray = require('./isArray'),
|
|
7
|
+
isBuffer = require('./isBuffer'),
|
|
8
|
+
isTypedArray = require('./isTypedArray');
|
|
9
|
+
|
|
10
|
+
/** Used to compose bitmasks for value comparisons. */
|
|
11
|
+
var COMPARE_PARTIAL_FLAG = 1;
|
|
12
|
+
|
|
13
|
+
/** `Object#toString` result references. */
|
|
14
|
+
var argsTag = '[object Arguments]',
|
|
15
|
+
arrayTag = '[object Array]',
|
|
16
|
+
objectTag = '[object Object]';
|
|
17
|
+
|
|
18
|
+
/** Used for built-in method references. */
|
|
19
|
+
var objectProto = Object.prototype;
|
|
20
|
+
|
|
21
|
+
/** Used to check objects for own properties. */
|
|
22
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* A specialized version of `baseIsEqual` for arrays and objects which performs
|
|
26
|
+
* deep comparisons and tracks traversed objects enabling objects with circular
|
|
27
|
+
* references to be compared.
|
|
28
|
+
*
|
|
29
|
+
* @private
|
|
30
|
+
* @param {Object} object The object to compare.
|
|
31
|
+
* @param {Object} other The other object to compare.
|
|
32
|
+
* @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
|
|
33
|
+
* @param {Function} customizer The function to customize comparisons.
|
|
34
|
+
* @param {Function} equalFunc The function to determine equivalents of values.
|
|
35
|
+
* @param {Object} [stack] Tracks traversed `object` and `other` objects.
|
|
36
|
+
* @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
|
|
37
|
+
*/
|
|
38
|
+
function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
|
|
39
|
+
var objIsArr = isArray(object),
|
|
40
|
+
othIsArr = isArray(other),
|
|
41
|
+
objTag = objIsArr ? arrayTag : getTag(object),
|
|
42
|
+
othTag = othIsArr ? arrayTag : getTag(other);
|
|
43
|
+
|
|
44
|
+
objTag = objTag == argsTag ? objectTag : objTag;
|
|
45
|
+
othTag = othTag == argsTag ? objectTag : othTag;
|
|
46
|
+
|
|
47
|
+
var objIsObj = objTag == objectTag,
|
|
48
|
+
othIsObj = othTag == objectTag,
|
|
49
|
+
isSameTag = objTag == othTag;
|
|
50
|
+
|
|
51
|
+
if (isSameTag && isBuffer(object)) {
|
|
52
|
+
if (!isBuffer(other)) {
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
objIsArr = true;
|
|
56
|
+
objIsObj = false;
|
|
57
|
+
}
|
|
58
|
+
if (isSameTag && !objIsObj) {
|
|
59
|
+
stack || (stack = new Stack);
|
|
60
|
+
return (objIsArr || isTypedArray(object))
|
|
61
|
+
? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
|
|
62
|
+
: equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
|
|
63
|
+
}
|
|
64
|
+
if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
|
|
65
|
+
var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
|
|
66
|
+
othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
|
|
67
|
+
|
|
68
|
+
if (objIsWrapped || othIsWrapped) {
|
|
69
|
+
var objUnwrapped = objIsWrapped ? object.value() : object,
|
|
70
|
+
othUnwrapped = othIsWrapped ? other.value() : other;
|
|
71
|
+
|
|
72
|
+
stack || (stack = new Stack);
|
|
73
|
+
return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (!isSameTag) {
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
stack || (stack = new Stack);
|
|
80
|
+
return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
module.exports = baseIsEqualDeep;
|
package/_baseIsMap.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var getTag = require('./_getTag'),
|
|
2
|
+
isObjectLike = require('./isObjectLike');
|
|
3
|
+
|
|
4
|
+
/** `Object#toString` result references. */
|
|
5
|
+
var mapTag = '[object Map]';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The base implementation of `_.isMap` without Node.js optimizations.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {*} value The value to check.
|
|
12
|
+
* @returns {boolean} Returns `true` if `value` is a map, else `false`.
|
|
13
|
+
*/
|
|
14
|
+
function baseIsMap(value) {
|
|
15
|
+
return isObjectLike(value) && getTag(value) == mapTag;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = baseIsMap;
|
package/_baseIsMatch.js
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
var Stack = require('./_Stack'),
|
|
2
|
+
baseIsEqual = require('./_baseIsEqual');
|
|
3
|
+
|
|
4
|
+
/** Used to compose bitmasks for value comparisons. */
|
|
5
|
+
var COMPARE_PARTIAL_FLAG = 1,
|
|
6
|
+
COMPARE_UNORDERED_FLAG = 2;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* The base implementation of `_.isMatch` without support for iteratee shorthands.
|
|
10
|
+
*
|
|
11
|
+
* @private
|
|
12
|
+
* @param {Object} object The object to inspect.
|
|
13
|
+
* @param {Object} source The object of property values to match.
|
|
14
|
+
* @param {Array} matchData The property names, values, and compare flags to match.
|
|
15
|
+
* @param {Function} [customizer] The function to customize comparisons.
|
|
16
|
+
* @returns {boolean} Returns `true` if `object` is a match, else `false`.
|
|
17
|
+
*/
|
|
18
|
+
function baseIsMatch(object, source, matchData, customizer) {
|
|
19
|
+
var index = matchData.length,
|
|
20
|
+
length = index,
|
|
21
|
+
noCustomizer = !customizer;
|
|
22
|
+
|
|
23
|
+
if (object == null) {
|
|
24
|
+
return !length;
|
|
25
|
+
}
|
|
26
|
+
object = Object(object);
|
|
27
|
+
while (index--) {
|
|
28
|
+
var data = matchData[index];
|
|
29
|
+
if ((noCustomizer && data[2])
|
|
30
|
+
? data[1] !== object[data[0]]
|
|
31
|
+
: !(data[0] in object)
|
|
32
|
+
) {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
while (++index < length) {
|
|
37
|
+
data = matchData[index];
|
|
38
|
+
var key = data[0],
|
|
39
|
+
objValue = object[key],
|
|
40
|
+
srcValue = data[1];
|
|
41
|
+
|
|
42
|
+
if (noCustomizer && data[2]) {
|
|
43
|
+
if (objValue === undefined && !(key in object)) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
} else {
|
|
47
|
+
var stack = new Stack;
|
|
48
|
+
if (customizer) {
|
|
49
|
+
var result = customizer(objValue, srcValue, key, object, source, stack);
|
|
50
|
+
}
|
|
51
|
+
if (!(result === undefined
|
|
52
|
+
? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
|
|
53
|
+
: result
|
|
54
|
+
)) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return true;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
module.exports = baseIsMatch;
|
package/_baseIsNaN.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The base implementation of `_.isNaN` without support for number objects.
|
|
3
|
+
*
|
|
4
|
+
* @private
|
|
5
|
+
* @param {*} value The value to check.
|
|
6
|
+
* @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
|
|
7
|
+
*/
|
|
8
|
+
function baseIsNaN(value) {
|
|
9
|
+
return value !== value;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
module.exports = baseIsNaN;
|
package/_baseIsNative.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
var isFunction = require('./isFunction'),
|
|
2
|
+
isMasked = require('./_isMasked'),
|
|
3
|
+
isObject = require('./isObject'),
|
|
4
|
+
toSource = require('./_toSource');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Used to match `RegExp`
|
|
8
|
+
* [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
|
|
9
|
+
*/
|
|
10
|
+
var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
|
|
11
|
+
|
|
12
|
+
/** Used to detect host constructors (Safari). */
|
|
13
|
+
var reIsHostCtor = /^\[object .+?Constructor\]$/;
|
|
14
|
+
|
|
15
|
+
/** Used for built-in method references. */
|
|
16
|
+
var funcProto = Function.prototype,
|
|
17
|
+
objectProto = Object.prototype;
|
|
18
|
+
|
|
19
|
+
/** Used to resolve the decompiled source of functions. */
|
|
20
|
+
var funcToString = funcProto.toString;
|
|
21
|
+
|
|
22
|
+
/** Used to check objects for own properties. */
|
|
23
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
|
24
|
+
|
|
25
|
+
/** Used to detect if a method is native. */
|
|
26
|
+
var reIsNative = RegExp('^' +
|
|
27
|
+
funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
|
|
28
|
+
.replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
|
|
29
|
+
);
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* The base implementation of `_.isNative` without bad shim checks.
|
|
33
|
+
*
|
|
34
|
+
* @private
|
|
35
|
+
* @param {*} value The value to check.
|
|
36
|
+
* @returns {boolean} Returns `true` if `value` is a native function,
|
|
37
|
+
* else `false`.
|
|
38
|
+
*/
|
|
39
|
+
function baseIsNative(value) {
|
|
40
|
+
if (!isObject(value) || isMasked(value)) {
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
|
|
44
|
+
return pattern.test(toSource(value));
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
module.exports = baseIsNative;
|
package/_baseIsRegExp.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var baseGetTag = require('./_baseGetTag'),
|
|
2
|
+
isObjectLike = require('./isObjectLike');
|
|
3
|
+
|
|
4
|
+
/** `Object#toString` result references. */
|
|
5
|
+
var regexpTag = '[object RegExp]';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The base implementation of `_.isRegExp` without Node.js optimizations.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {*} value The value to check.
|
|
12
|
+
* @returns {boolean} Returns `true` if `value` is a regexp, else `false`.
|
|
13
|
+
*/
|
|
14
|
+
function baseIsRegExp(value) {
|
|
15
|
+
return isObjectLike(value) && baseGetTag(value) == regexpTag;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = baseIsRegExp;
|
package/_baseIsSet.js
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
var getTag = require('./_getTag'),
|
|
2
|
+
isObjectLike = require('./isObjectLike');
|
|
3
|
+
|
|
4
|
+
/** `Object#toString` result references. */
|
|
5
|
+
var setTag = '[object Set]';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The base implementation of `_.isSet` without Node.js optimizations.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {*} value The value to check.
|
|
12
|
+
* @returns {boolean} Returns `true` if `value` is a set, else `false`.
|
|
13
|
+
*/
|
|
14
|
+
function baseIsSet(value) {
|
|
15
|
+
return isObjectLike(value) && getTag(value) == setTag;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
module.exports = baseIsSet;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
var baseGetTag = require('./_baseGetTag'),
|
|
2
|
+
isLength = require('./isLength'),
|
|
3
|
+
isObjectLike = require('./isObjectLike');
|
|
4
|
+
|
|
5
|
+
/** `Object#toString` result references. */
|
|
6
|
+
var argsTag = '[object Arguments]',
|
|
7
|
+
arrayTag = '[object Array]',
|
|
8
|
+
boolTag = '[object Boolean]',
|
|
9
|
+
dateTag = '[object Date]',
|
|
10
|
+
errorTag = '[object Error]',
|
|
11
|
+
funcTag = '[object Function]',
|
|
12
|
+
mapTag = '[object Map]',
|
|
13
|
+
numberTag = '[object Number]',
|
|
14
|
+
objectTag = '[object Object]',
|
|
15
|
+
regexpTag = '[object RegExp]',
|
|
16
|
+
setTag = '[object Set]',
|
|
17
|
+
stringTag = '[object String]',
|
|
18
|
+
weakMapTag = '[object WeakMap]';
|
|
19
|
+
|
|
20
|
+
var arrayBufferTag = '[object ArrayBuffer]',
|
|
21
|
+
dataViewTag = '[object DataView]',
|
|
22
|
+
float32Tag = '[object Float32Array]',
|
|
23
|
+
float64Tag = '[object Float64Array]',
|
|
24
|
+
int8Tag = '[object Int8Array]',
|
|
25
|
+
int16Tag = '[object Int16Array]',
|
|
26
|
+
int32Tag = '[object Int32Array]',
|
|
27
|
+
uint8Tag = '[object Uint8Array]',
|
|
28
|
+
uint8ClampedTag = '[object Uint8ClampedArray]',
|
|
29
|
+
uint16Tag = '[object Uint16Array]',
|
|
30
|
+
uint32Tag = '[object Uint32Array]';
|
|
31
|
+
|
|
32
|
+
/** Used to identify `toStringTag` values of typed arrays. */
|
|
33
|
+
var typedArrayTags = {};
|
|
34
|
+
typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
|
|
35
|
+
typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
|
|
36
|
+
typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
|
|
37
|
+
typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
|
|
38
|
+
typedArrayTags[uint32Tag] = true;
|
|
39
|
+
typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
|
|
40
|
+
typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
|
|
41
|
+
typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
|
|
42
|
+
typedArrayTags[errorTag] = typedArrayTags[funcTag] =
|
|
43
|
+
typedArrayTags[mapTag] = typedArrayTags[numberTag] =
|
|
44
|
+
typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
|
|
45
|
+
typedArrayTags[setTag] = typedArrayTags[stringTag] =
|
|
46
|
+
typedArrayTags[weakMapTag] = false;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* The base implementation of `_.isTypedArray` without Node.js optimizations.
|
|
50
|
+
*
|
|
51
|
+
* @private
|
|
52
|
+
* @param {*} value The value to check.
|
|
53
|
+
* @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
|
|
54
|
+
*/
|
|
55
|
+
function baseIsTypedArray(value) {
|
|
56
|
+
return isObjectLike(value) &&
|
|
57
|
+
isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
module.exports = baseIsTypedArray;
|
package/_baseIteratee.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
var baseMatches = require('./_baseMatches'),
|
|
2
|
+
baseMatchesProperty = require('./_baseMatchesProperty'),
|
|
3
|
+
identity = require('./identity'),
|
|
4
|
+
isArray = require('./isArray'),
|
|
5
|
+
property = require('./property');
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The base implementation of `_.iteratee`.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {*} [value=_.identity] The value to convert to an iteratee.
|
|
12
|
+
* @returns {Function} Returns the iteratee.
|
|
13
|
+
*/
|
|
14
|
+
function baseIteratee(value) {
|
|
15
|
+
// Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
|
|
16
|
+
// See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
|
|
17
|
+
if (typeof value == 'function') {
|
|
18
|
+
return value;
|
|
19
|
+
}
|
|
20
|
+
if (value == null) {
|
|
21
|
+
return identity;
|
|
22
|
+
}
|
|
23
|
+
if (typeof value == 'object') {
|
|
24
|
+
return isArray(value)
|
|
25
|
+
? baseMatchesProperty(value[0], value[1])
|
|
26
|
+
: baseMatches(value);
|
|
27
|
+
}
|
|
28
|
+
return property(value);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
module.exports = baseIteratee;
|
package/_baseKeys.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
var isPrototype = require('./_isPrototype'),
|
|
2
|
+
nativeKeys = require('./_nativeKeys');
|
|
3
|
+
|
|
4
|
+
/** Used for built-in method references. */
|
|
5
|
+
var objectProto = Object.prototype;
|
|
6
|
+
|
|
7
|
+
/** Used to check objects for own properties. */
|
|
8
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
|
|
12
|
+
*
|
|
13
|
+
* @private
|
|
14
|
+
* @param {Object} object The object to query.
|
|
15
|
+
* @returns {Array} Returns the array of property names.
|
|
16
|
+
*/
|
|
17
|
+
function baseKeys(object) {
|
|
18
|
+
if (!isPrototype(object)) {
|
|
19
|
+
return nativeKeys(object);
|
|
20
|
+
}
|
|
21
|
+
var result = [];
|
|
22
|
+
for (var key in Object(object)) {
|
|
23
|
+
if (hasOwnProperty.call(object, key) && key != 'constructor') {
|
|
24
|
+
result.push(key);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return result;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
module.exports = baseKeys;
|
package/_baseKeysIn.js
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
var isObject = require('./isObject'),
|
|
2
|
+
isPrototype = require('./_isPrototype'),
|
|
3
|
+
nativeKeysIn = require('./_nativeKeysIn');
|
|
4
|
+
|
|
5
|
+
/** Used for built-in method references. */
|
|
6
|
+
var objectProto = Object.prototype;
|
|
7
|
+
|
|
8
|
+
/** Used to check objects for own properties. */
|
|
9
|
+
var hasOwnProperty = objectProto.hasOwnProperty;
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
|
|
13
|
+
*
|
|
14
|
+
* @private
|
|
15
|
+
* @param {Object} object The object to query.
|
|
16
|
+
* @returns {Array} Returns the array of property names.
|
|
17
|
+
*/
|
|
18
|
+
function baseKeysIn(object) {
|
|
19
|
+
if (!isObject(object)) {
|
|
20
|
+
return nativeKeysIn(object);
|
|
21
|
+
}
|
|
22
|
+
var isProto = isPrototype(object),
|
|
23
|
+
result = [];
|
|
24
|
+
|
|
25
|
+
for (var key in object) {
|
|
26
|
+
if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
|
|
27
|
+
result.push(key);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return result;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
module.exports = baseKeysIn;
|
package/_baseLodash.js
ADDED
package/_baseLt.js
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The base implementation of `_.lt` which doesn't coerce arguments.
|
|
3
|
+
*
|
|
4
|
+
* @private
|
|
5
|
+
* @param {*} value The value to compare.
|
|
6
|
+
* @param {*} other The other value to compare.
|
|
7
|
+
* @returns {boolean} Returns `true` if `value` is less than `other`,
|
|
8
|
+
* else `false`.
|
|
9
|
+
*/
|
|
10
|
+
function baseLt(value, other) {
|
|
11
|
+
return value < other;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
module.exports = baseLt;
|
package/_baseMap.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var baseEach = require('./_baseEach'),
|
|
2
|
+
isArrayLike = require('./isArrayLike');
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The base implementation of `_.map` without support for iteratee shorthands.
|
|
6
|
+
*
|
|
7
|
+
* @private
|
|
8
|
+
* @param {Array|Object} collection The collection to iterate over.
|
|
9
|
+
* @param {Function} iteratee The function invoked per iteration.
|
|
10
|
+
* @returns {Array} Returns the new mapped array.
|
|
11
|
+
*/
|
|
12
|
+
function baseMap(collection, iteratee) {
|
|
13
|
+
var index = -1,
|
|
14
|
+
result = isArrayLike(collection) ? Array(collection.length) : [];
|
|
15
|
+
|
|
16
|
+
baseEach(collection, function(value, key, collection) {
|
|
17
|
+
result[++index] = iteratee(value, key, collection);
|
|
18
|
+
});
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
module.exports = baseMap;
|
package/_baseMatches.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
var baseIsMatch = require('./_baseIsMatch'),
|
|
2
|
+
getMatchData = require('./_getMatchData'),
|
|
3
|
+
matchesStrictComparable = require('./_matchesStrictComparable');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* The base implementation of `_.matches` which doesn't clone `source`.
|
|
7
|
+
*
|
|
8
|
+
* @private
|
|
9
|
+
* @param {Object} source The object of property values to match.
|
|
10
|
+
* @returns {Function} Returns the new spec function.
|
|
11
|
+
*/
|
|
12
|
+
function baseMatches(source) {
|
|
13
|
+
var matchData = getMatchData(source);
|
|
14
|
+
if (matchData.length == 1 && matchData[0][2]) {
|
|
15
|
+
return matchesStrictComparable(matchData[0][0], matchData[0][1]);
|
|
16
|
+
}
|
|
17
|
+
return function(object) {
|
|
18
|
+
return object === source || baseIsMatch(object, source, matchData);
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
module.exports = baseMatches;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
var baseIsEqual = require('./_baseIsEqual'),
|
|
2
|
+
get = require('./get'),
|
|
3
|
+
hasIn = require('./hasIn'),
|
|
4
|
+
isKey = require('./_isKey'),
|
|
5
|
+
isStrictComparable = require('./_isStrictComparable'),
|
|
6
|
+
matchesStrictComparable = require('./_matchesStrictComparable'),
|
|
7
|
+
toKey = require('./_toKey');
|
|
8
|
+
|
|
9
|
+
/** Used to compose bitmasks for value comparisons. */
|
|
10
|
+
var COMPARE_PARTIAL_FLAG = 1,
|
|
11
|
+
COMPARE_UNORDERED_FLAG = 2;
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
|
|
15
|
+
*
|
|
16
|
+
* @private
|
|
17
|
+
* @param {string} path The path of the property to get.
|
|
18
|
+
* @param {*} srcValue The value to match.
|
|
19
|
+
* @returns {Function} Returns the new spec function.
|
|
20
|
+
*/
|
|
21
|
+
function baseMatchesProperty(path, srcValue) {
|
|
22
|
+
if (isKey(path) && isStrictComparable(srcValue)) {
|
|
23
|
+
return matchesStrictComparable(toKey(path), srcValue);
|
|
24
|
+
}
|
|
25
|
+
return function(object) {
|
|
26
|
+
var objValue = get(object, path);
|
|
27
|
+
return (objValue === undefined && objValue === srcValue)
|
|
28
|
+
? hasIn(object, path)
|
|
29
|
+
: baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
module.exports = baseMatchesProperty;
|
package/_baseMean.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
var baseSum = require('./_baseSum');
|
|
2
|
+
|
|
3
|
+
/** Used as references for various `Number` constants. */
|
|
4
|
+
var NAN = 0 / 0;
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* The base implementation of `_.mean` and `_.meanBy` without support for
|
|
8
|
+
* iteratee shorthands.
|
|
9
|
+
*
|
|
10
|
+
* @private
|
|
11
|
+
* @param {Array} array The array to iterate over.
|
|
12
|
+
* @param {Function} iteratee The function invoked per iteration.
|
|
13
|
+
* @returns {number} Returns the mean.
|
|
14
|
+
*/
|
|
15
|
+
function baseMean(array, iteratee) {
|
|
16
|
+
var length = array == null ? 0 : array.length;
|
|
17
|
+
return length ? (baseSum(array, iteratee) / length) : NAN;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = baseMean;
|
package/_baseMerge.js
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var Stack = require('./_Stack'),
|
|
2
|
+
assignMergeValue = require('./_assignMergeValue'),
|
|
3
|
+
baseFor = require('./_baseFor'),
|
|
4
|
+
baseMergeDeep = require('./_baseMergeDeep'),
|
|
5
|
+
isObject = require('./isObject'),
|
|
6
|
+
keysIn = require('./keysIn'),
|
|
7
|
+
safeGet = require('./_safeGet');
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* The base implementation of `_.merge` without support for multiple sources.
|
|
11
|
+
*
|
|
12
|
+
* @private
|
|
13
|
+
* @param {Object} object The destination object.
|
|
14
|
+
* @param {Object} source The source object.
|
|
15
|
+
* @param {number} srcIndex The index of `source`.
|
|
16
|
+
* @param {Function} [customizer] The function to customize merged values.
|
|
17
|
+
* @param {Object} [stack] Tracks traversed source values and their merged
|
|
18
|
+
* counterparts.
|
|
19
|
+
*/
|
|
20
|
+
function baseMerge(object, source, srcIndex, customizer, stack) {
|
|
21
|
+
if (object === source) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
baseFor(source, function(srcValue, key) {
|
|
25
|
+
stack || (stack = new Stack);
|
|
26
|
+
if (isObject(srcValue)) {
|
|
27
|
+
baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
var newValue = customizer
|
|
31
|
+
? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)
|
|
32
|
+
: undefined;
|
|
33
|
+
|
|
34
|
+
if (newValue === undefined) {
|
|
35
|
+
newValue = srcValue;
|
|
36
|
+
}
|
|
37
|
+
assignMergeValue(object, key, newValue);
|
|
38
|
+
}
|
|
39
|
+
}, keysIn);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
module.exports = baseMerge;
|